Although Workrave isn’t officially supported on macOS, it is possible to install this software on your Mac. Some features may not work as expected, but it is my understanding that developers are actively working to make Workrave Mac-compatible.
Workrave is a program that reminds you to take breaks while working at your computer. The program assists in the recovery and prevention of Repetitive Strain Injury (RSI). Workrave also has really cool statistics about your computer usage such as:
- How many minutes you use your computer
- How many breaks you take
- The total number of mouse clicks
- The total number of keystrokes
If you are on Windows or Linux, you can download an officially supported installer from Workrave’s download page. For you Mac users out there, you can follow this tutorial to install a semi-working version of this program.
Install Workrave on Mac

To install Workrave on Mac, open a Terminal window and execute the following commands. This assumes you have brew installed which is super easy to install.
brew install automake autoconf libtool gettext intltool gobject-introspection autoconf-archive gtk+ gtk-mac-integration gtkmm3 gnome-icon-theme hicolor-icon-theme
brew link --force gettext libffi
git clone https://github.com/palfrey/workrave/
cd workrave
git checkout os-x-fixes
autoreconf -if
intltoolize --automake --copy --force
./configure
make
make install
These commands may take a few minutes to complete. When finished, the Workrave program will be installed at /usr/local/bin/workrave.
Start Workrave on Boot
You can have Workrave automatically start when your computer turns on. To do this, create a /Library/LaunchAgents/com.workrave.plist file as the sudo user with the following content.
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "https://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict>< <key>Label</key> <string>com.workrave.app</string> <key>ProgramArguments</key> <array> <string>/usr/local/bin/workrave</string> </array> <key>RunAtLoad</key> <true/> <key>KeepAlive</key> <false/> </dict> </plist>
Now, every time you turn on your computer, the Workrave program will automatically start.
Issues with Workrave on Mac

Unfortunately there are issues with running Workrave on Mac. I had to turn on Quite Mode because the program crashed when it tried to display an alert to take a break. Also, keystrokes and mouse clicks are not being counted.
I will update this tutorial as more stable versions of Workrave are released. Until then, be sure to take breaks from your computer, and take them often!
Let me know in the comments below if you need help with any step of this tutorial.
I’ve been trying to work around the issue of it constantly crashing. Tricky stuff, seemed to do it consistently when taking a break – which largely defeats the point!
However, I noticed a few things:
* It usually worked the first time right after compiling.
* Errors were often spit out about gtk when running from terminal when it crashed/in logs
* When it worked, the break icons in the display weren’t loaded correctly and showed as placeholder triangles.
I seem to have got it working on restart now, and I’m not totally sure what to attribute it to. Same launchagent plist as you.
However, whenever it does stop working, this is how I fix it (uses gnu stow for easy removal/reinstallation – don’t need to touch bin etc). Basically, recompiles and restarts. Seems to function fine. If the icons for the rest break aren’t loaded, I know I’m good to go!
“`
#!/usr/bin/env bash
cd $HOME
rm -rf ~/Library/Preferences/com.workrave.plist
rm -rf ~/Library/Preferences/workrave.plist
rm -rf ~/Applications/workrave-package
rm -rf ~/.workrave
# brew install automake autoconf libtool gettext intltool gobject-introspection autoconf-archive gtk+ gtk-mac-integration gtkmm3 gnome-icon-theme hicolor-icon-theme
# brew link –force gettext libffi
# git clone https://github.com/palfrey/workrave/
cd workrave
# git checkout os-x-fixes
autoreconf -if
intltoolize –automake –copy –force
./configure –prefix=$HOME/Applications/workrave-package –config-cache
make
make install
stow -d ~/Applications/ workrave-package -t ~
$HOME/bin/workrave
“`
Hey!
Thanks for the tutorial! It’s super useful!
I got it up and running but I can’t seem to find the preferences menu… so I can’t change the duration of a work session. Did you have the same issue?
Yea, unfortunately the functionality is limited with this workaround. In reading through the discussions on GitHub, it seems that the authors are not interested in dedicating time to further improve functionality on Mac anytime soon.
Thanks! I just built workrave on my Mac and for me it does not crash when displaying the break alert.
Oh awesome, that’s great news. I guess a fix in the codebase allows it to work now.
I’m finding the same, but looking at the codebase I don’t see any commits since march 18. Maybe some OSX package changed, or one of the brew dependencies.
Needs python cheetah
cd /tmp
curl https://files.pythonhosted.org/packages/cd/b0/c2d700252fc251e91c08639ff41a8a5203b627f4e0a2ae18a6b662ab32ea/Cheetah-2.4.4.tar.gz -o cheetah.tar.gz
tar -zxvf cheetah.tar.gz
cd Cheetah-2.4.4
sudo python setup.py install
The tray icon is just a white square (dark mode – Mojave 10.14.6)
No access to preferences. It might be in this file but it is binary. I will try to get a file from a working Win installation /Users/myname/Library/Preferences/workrave.plist
Other stuff works fine, no crushing so far
I can no longer get Workrave working after upgrading to Catalina. Word of warning for anyone thinking about it.
I take it back, recompiling seems to have partially fixed it, although it took several attempts to start it without it crashing.