Download GrepFocus

Free to download and use. A premium license unlocks every premium feature: app blocking, schedules, tamper protection, unlimited blocks, stricter lock modes, usage stats, and pomodoro sessions.

Current version: GrepFocus 0.6.0 · x86_64

What's new in 0.6.0 →

Fedora / RHEL (.rpm)
Built on Fedora 44
sudo dnf install ./grepfocus-0.6.0-1.fc44.x86_64.rpm
Download

SHA-256: 3608eafcc922fccf6222fe3ef5a029cc9ad4d2116f81fd07f139b19a720b7e4a

Debian / Ubuntu (.deb)
Needs WebKitGTK 4.1 — Ubuntu 24.04+ or Debian 13
sudo apt install ./grepfocus_0.6.0-1_amd64.deb
Download

SHA-256: d3af4968aec14113e2fca7024ffd9a0db778c956d7b07ac09f94eb965d18307d

Other Linux (AppImage)
Runs on most distros from 2022 on — first launch offers to install the background service (password prompt)
chmod +x GrepFocus_0.6.0_amd64.AppImage && ./GrepFocus_0.6.0_amd64.AppImage
Download

SHA-256: 39beb54b0e226ed633b13d29ab38236984cc5e663e0b90a30df3979524aed23e

Arch Linux (AUR)
Coming soon
yay -S grepfocus
Coming soon

After installing

  1. The daemon installs as a systemd service and is enabled and started automatically — nothing to configure. (AppImage: the app offers to install the service the first time you launch it; approve the password prompt.)
  2. Add yourself to the grepfocus group so the app can talk to the daemon: sudo usermod -aG grepfocus $USER, then log out and back in. (AppImage: the installer does this for you — just log out and back in.)
  3. Restart your browser once after installing. Browsers pick up the DNS-over-HTTPS policy on restart; until then blocks may not apply in that browser.
  4. Launch GrepFocus from your app menu and create a block.
  5. Have a license? Paste it under the License tab. Need one? Get premium.
  6. Updating: package installs update through your package manager. AppImage: download the new file and run it — the Status tab offers Update system service; approve the password prompt. Blocks stay enforced throughout.

Common questions

Why does Firefox / Chromium say it's managed by your organization?

GrepFocus switches the browser's DNS-over-HTTPS off through a standard enterprise-policy file so blocks apply — DoH would bypass them. Firefox, Mullvad Browser, Chromium, Chrome and Brave show that notice whenever a policy file is present; it's a local file change, no network involved. DoH stays off while GrepFocus is installed; Mullvad Browser then uses the OS resolver instead of Mullvad DNS.

How do I undo that?

Run sudo grepfocusd cleanup — it removes the policy files and everything else GrepFocus set up — or uninstall the package.

How can I tell blocking is healthy?

The Status tab shows a banner whenever enforcement has a problem. The Settings tab has a diagnostics line with the app and service versions, and grepfocusd --version prints the service version on the command line.

Does GrepFocus phone home?

The license verifies offline. The only network request the app makes is one update check a day: a single GET of grepfocus.com/downloads/latest.json to learn the newest version. Only the version number is exchanged and nothing is downloaded — no identifier, license key, or block data. The app explains this on first launch, before its first check, and you can turn it off in Settings.