File caffeine-ng.spec of Package caffeine-ng

#
# spec file for package caffeine-ng
#
# Copyright (c) 2024 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.

# Please submit bugfixes or comments via https://bugs.opensuse.org/
#


Name:           caffeine-ng
Version:        4.2.0
Release:        0
License:        GPL-3.0-or-later
Summary:        Temporarily inhibit the screensaver and sleep mode
URL:            https://codeberg.org/WhyNotHugo/caffeine-ng
Source:         %{url}/archive/v%{version}.tar.gz#/%{name}-v%{version}.tar.gz
BuildArch:      noarch
BuildRequires:  python3
BuildRequires:  meson
BuildRequires:  scdoc
BuildRequires:  fdupes
BuildRequires:  pkgconfig(python3)
BuildRequires:  pkgconfig(pygobject-3.0)
BuildRequires:  pkgconfig(dbus-python)
BuildRequires:  pkgconfig(gtk+-3.0)
BuildRequires:  pkgconfig(libnotify)
BuildRequires:  pkgconfig(ayatana-appindicator3-0.1)
BuildRequires:  pkgconfig(appindicator3-0.1)
BuildRequires:  pkgconfig(libxfconf-0)
BuildRequires:  python3-click
BuildRequires:  python3-ewmh
BuildRequires:  python3-setproctitle
BuildRequires:  python3-pulsectl
Requires:       python3
Requires:       python3-gobject
Requires:       python3-xdg
Requires:       python3-dbus-python
Requires:       python3-click
Requires:       python3-ewmh
Requires:       python3-wheel
Requires:       python3-setproctitle
Requires:       python3-pulsectl
Requires:       gtk3
Requires:       libnotify
Requires:       libappindicator
Requires:       libayatana-appindicator3

%description
Status bar application able to temporarily inhibit the screensaver and sleep mode.
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).

%prep
%setup -q -n %{name}
echo "%{version}" | tee ./version

%build
meson build --prefix=/usr
ninja -C build

%install
meson install -C build --destdir "%{buildroot}"
# E: filelist-forbidden-locale (Badness: 10000) /usr/share/locale/no
# Please use nb or nb_NO (and nn for nynorsk), see https://bugzilla.opensuse.org/show_bug.cgi?id=42748.
mv -v %{buildroot}/%{_datadir}/locale/no/ %{buildroot}/%{_datadir}/locale/nb_NO/
mv -v %{buildroot}/%{_datadir}/man/man1/caffeine/caffeine.1 %{buildroot}/%{_datadir}/man/man1/
rmdir -v %{buildroot}/%{_datadir}/man/man1/caffeine
%fdupes %{buildroot}/%{_datadir}
%find_lang %{name}

%check
meson test --no-rebuild --print-errorlogs -C build

%post
glib-compile-schemas %{_datadir}/glib-2.0/schemas

%files -f %{name}.lang
%config /etc/xdg/autostart/caffeine.desktop
/usr/lib/python3.11/site-packages/caffeine/
%{_bindir}/caffeine
%{_datadir}/applications
%{_datadir}/caffeine
%{_datadir}/glib-2.0
%{_datadir}/icons/hicolor
%{_datadir}/icons/ubuntu-mono-dark
%{_datadir}/man
%{_datadir}/pixmaps
%dir %{_datadir}/locale
%dir %{_datadir}/locale/**
%dir %{_datadir}/locale/**/LC_MESSAGES

%changelog
openSUSE Build Service is sponsored by