AntiDrift is an app that empowers you to utilize your computer mindfully.
You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
felixm d97a4885cb Reformat code and add option to add keywords 3 days ago
antidrift Reformat code and add option to add keywords 3 days ago
.gitignore Repurpose FocusFriend to get AntiDrift off the ground. 12 months ago
LICENSE Update license 10 months ago
README.md Add documentation for building antidrift into single executable. 11 months ago
antidrift.code-workspace FocusFriend is now AntiDrift. 12 months ago
antidrift.desktop Clean up spawn as root and CLI interface 3 weeks ago
main.py Reformat code and add option to add keywords 3 days ago

README.md

AntiDrift

Utilize your computer purposefully.

Make executable and install

pip install pyinstaller --user
pyinstaller --onefile antidrift.py
sudo cp dist/antidrift /usr/bin

Dependencies

  • dbus-python
  • glib

Create sudoers configuration

Create a file antidrift in /etc/sudoers.d. This allows antidrift to run itself with sudo ultimately making it unkillable from the regular user.

user hostname = (root) NOPASSWD: /usr/bin/antidrift

Autostart with systemd

  • Create ~/.config/systemd/user/antidrift.service
  • Add configuration below and save
  • Run systemctl --user enable antidrift.service
[Unit]
Description=AntiDrift

[Service]
ExecStart=antidrift

[Install]
WantedBy=default.target

Autostart via desktop file

Create a file antidrift.desktop in /etc/xdg/autostart.

Add the following content to the file.

[Desktop Entry]
Name=AntiDrift
Exec=antidrift
Terminal=false
Type=Application
StartupNotify=false

Your window manager will now start antidrift automatically.