|Hugo e4fa80a30e||1 week ago|
|bin||1 week ago|
|caffeine||1 week ago|
|share||1 week ago|
|translations||2 weeks ago|
|.gitignore||2 weeks ago|
|.pre-commit-config.yaml||1 month ago|
|.woodpecker.yml||4 weeks ago|
|CHANGELOG.rst||1 week ago|
|LGPL||8 years ago|
|LICENCE||6 years ago|
|README.rst||1 week ago|
|caffeine.1.scd||1 week ago|
|meson.build||1 week ago|
|setup.cfg||9 months ago|
Caffeine is a little daemon that sits in your systray, and prevents the screensaver from showing up, or the system from going to sleep. It does so when an application is fullscreened (eg: youtube), or when you click on the systray icon (which you can do, when, eg: reading).
Caffeing-ng (since 2014) started as a fork of Caffeine 2.4, since the original version dropped support for the systray icon in favour of only automatic detection of fullscreen apps only, which turned to be a rather controversial decision.
The intention of this fork is to also evolve on its own, not only fixing issues, but also implemented missing features, when relevant.
Caffeine-ng was shortly know as Taurine, a play on its successor's name, since taurine is a known stimulant, commonly found in energy drinks. However, this name did not last, since the artwork would not match adequately, and changing it was undesirable.
- Python 3.6 to 3.9 is required.
caffeine-ngworks with the following screensavers / screenlockers:
- Anything that implements the
org.freedesktop.ScreenSaverAPI (this includes KDE, amongst others)
- Xorg + DPMS
- Anything that implements the
setup.py for required python packages
On ArchLinux, caffeine-ng is available at the AUR.
Debian and derivatives
First install all the required packages:
apt install python3-click python3-ewmh python3-setproctitle python3-wheel python3-xdg scdoc
And mark them auto if you wish:
apt-mark auto python3-click python3-ewmh python3-setproctitle python3-wheel python3-xdg scdoc
Then you need to build sources with:
meson build ninja -C build
Create a package for your distribution:
checkinstall \ --pkgname=caffeine-ng \ --pkgversion=4.1 \ --requires="python3-click (>=0.6.2),python3-ewmh (>=0.1.4),python3-setproctitle (>=1.1.10),python3-wheel (>=0.29.0),python3-xdg (>=0.25)" \ --conflicts="caffeine" \ --nodoc meson install -C build
Replace version string with correct version and append this command with
--install=no should you wish to inspect created package before installing it.
checkinstall is available for various distributions, so you may follow these steps adapting them to your distribution
See https://codeberg.org/WhyNotHugo/caffeine-ng/issues/118 for additional details.
Others / from source
To manually install caffeine-ng, run:
meson build ninja -C build sudo meson install -C build sudo glib-compile-schemas /usr/share/glib-2.0/schemas
Note for packagers
Generally, package manager handle running
glib-compile-schemas themselves, so this doesn't need to be triggered explicitly.
To install into
/usr/ rather than
/usr/local/, instead of running
meson build run meson meson --prefix /usr build`.
See https://mesonbuild.com/Builtin-options.html for details.
To have Caffeine-ng run on startup, add it to your System Settings => Startup Programs list.
To generate the pot file use:
find . -iname "*.py" -o -iname "*.glade" | \ xargs xgettext --from-code utf-8 -o translations/caffeine.pot
Copyright (C) 2014-2022 Hugo Osvaldo Barrera <email@example.com> Copyright (C) 2009 The Caffeine Developers
Caffeine-ng is distributed under the GNU General Public License, either version 3, or (at your option) any later version. See LICENCE for details.
The Caffeine-ng status icons are Copyright (C) 2014 mildmojo (http://github.com/mildmojo), and distributed under the terms of the GNU Lesser General Public License, either version 3, or (at your option) any later version. See LGPL.
The Caffeien-ng SVG shortcut icons are Copyright (C) 2009 Tommy Brunn (http://www.blastfromthepast.se/blabbermouth), and distributed under the terms of the GNU Lesser General Public License, either version 3, or (at your option) any later version. See LGPL.
- To run:
- To compile translations:
If you want to test out a translation without changing the language for the whole session: "LANG=ru_RU.UTF-8 ./bin/caffeine" (Replace ru_RU.UTF-8 with whatever language you want to use. You will need to a language pack for the specific language) Be aware that some stock items will not be translated unless you log in with a given language.