Package: caffeine-ng
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).HistoryCaffeing-ng (since 2014) started as a fork ofCaffeine 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 rathercontroversialdecision.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.System requirementsPython 3.6 to 3.9 is required.caffeine-ngworks with the following screensavers / screenlockers:Anything that implements theorg.freedesktop.ScreenSaverAPI (this
includes KDE, amongst others)gnome-screensaverXSSXorg + DPMSxautolockxidlehook.Seesetup.pyfor required python packagesInstallationGeneric installationTo manually install caffeine-ng, run:python setup.py build
sudo python setup.py install
sudo glib-compile-schemas /usr/share/glib-2.0/schemasDebian and derivativesFirst install all the required packages:apt install python-click python-ewmh python-setproctitle python-wheel python-xdgAnd mark them auto if you wish:apt-mark auto python-click python-ewmh python-setproctitle python-wheel python-xdgThen you need to build sources with:make clean
make buildCreate a package for your distribution:checkinstall --pkgname=caffeine-ng --pkgversion=3.4 --requires="python-click \(\>=0.6.2\),python-ewmh \(\>=0.1.4\),python-setproctitle \(\>=1.1.10\),python-wheel \(\>=0.29.0\),python-xdg \(\>=0.25\)" --conflicts="caffeine" --nodoc python ./setup.py install --install-layout=debReplace version string with correct version and append this command with--install=noshould you wish to inspect created package before installing
it Replacepythonwithpython3in package names above if you wish to
build caffeine-ng with python 3Replacepythonwithpython3incheckinstallinvocation to use
specific python version to build caffeine-ng.checkinstallis available for various distributions, so you may follow
these steps adapting them to your distributionArchLinuxOn ArchLinux, caffeine-ng is available at theAUR.GentooGentoo users may findcaffeine-ngin::pf4publicGentoo overlayInstructions for packagerGenerating a Python wheel for this will produce bogus results. Python wheels do
now allow for files outside python’s site-packages (and things in /bin).The Python ecosystem is deprecating the usage ofpipandsetuptoolsas
generic packaging tools. This project will likely migrate tomesonin future,
which should ease shipping all the non-Python bits of it (desktop entry, icon,
translations, service files, etc).Auto-startTo have Caffeine-ng run on startup, add it to your System Settings => Startup
Programs list.LicenseCopyright (C) 2009 The Caffeine Developers
Copyright (C) 2014-2022 Hugo Osvaldo Barrera <hugo@barrera.io>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.HackingTo run:./bin/caffeineTo compile translations:./update_translationsIf 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.