diff options
author | Sebastian Pipping <sping@gentoo.org> | 2023-01-01 16:59:48 +0100 |
---|---|---|
committer | Sebastian Pipping <sping@gentoo.org> | 2023-01-01 17:01:58 +0100 |
commit | ddf9074b3579b8587f3beb9f0817caa2d19c5ff8 (patch) | |
tree | 1a0f677d2b3a05c8b34a2a00926e0440716fcc92 | |
parent | x11-wm/metacity: Version bump to 3.46.1 (diff) | |
download | gentoo-ddf9074b.tar.gz gentoo-ddf9074b.tar.bz2 gentoo-ddf9074b.zip |
x11-misc/redshift: Fix AppArmor profile
Closes: https://bugs.gentoo.org/887979
Signed-off-by: Sebastian Pipping <sping@gentoo.org>
-rw-r--r-- | x11-misc/redshift/files/redshift-1.12-apparmor.patch | 35 | ||||
-rw-r--r-- | x11-misc/redshift/redshift-1.12-r9.ebuild | 91 |
2 files changed, 126 insertions, 0 deletions
diff --git a/x11-misc/redshift/files/redshift-1.12-apparmor.patch b/x11-misc/redshift/files/redshift-1.12-apparmor.patch new file mode 100644 index 000000000000..cb939994bf52 --- /dev/null +++ b/x11-misc/redshift/files/redshift-1.12-apparmor.patch @@ -0,0 +1,35 @@ +From c740a3a733a59782c26f2f90a073befec2e2324d Mon Sep 17 00:00:00 2001 +From: Sebastian Pipping <sebastian@pipping.org> +Date: Tue, 27 Dec 2022 01:27:35 +0100 +Subject: [PATCH] Fix AppArmor profile + +Inspired by: +- https://github.com/jonls/redshift/pull/864 +- https://gitlab.com/chinstrap/gammastep/-/blob/9db19f5ccfad20ab7b501daedcfd5ef137860dd2/data/apparmor/usr.bin.redshift.in +--- + data/apparmor/usr.bin.redshift.in | 9 +++++++-- + 1 file changed, 7 insertions(+), 2 deletions(-) + +diff --git a/data/apparmor/usr.bin.redshift.in b/data/apparmor/usr.bin.redshift.in +index d6696db..9b71f0d 100644 +--- a/data/apparmor/usr.bin.redshift.in ++++ b/data/apparmor/usr.bin.redshift.in +@@ -35,8 +35,13 @@ + # Allow but log any other dbus activity + audit dbus bus=system, + +- owner @{HOME}/.config/redshift.conf r, ++ owner @{HOME}/.config/{,redshift/}redshift.conf r, ++ owner @{HOME}/.config/redshift/hooks/ r, ++ owner @{HOME}/.config/redshift/hooks/* Ux, ++ ++ # Required by getpwuid() call in config-ini.c. ++ /etc/passwd* r, + + # Site-specific additions and overrides. See local/README for details. +- #include <local/usr.bin.redshift> ++ #include if exists <local/usr.bin.redshift> + } +-- +2.39.0 + diff --git a/x11-misc/redshift/redshift-1.12-r9.ebuild b/x11-misc/redshift/redshift-1.12-r9.ebuild new file mode 100644 index 000000000000..fd9f01b778a0 --- /dev/null +++ b/x11-misc/redshift/redshift-1.12-r9.ebuild @@ -0,0 +1,91 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{8..11} ) + +inherit flag-o-matic systemd xdg-utils python-r1 + +DESCRIPTION="A screen color temperature adjusting software" +HOMEPAGE="http://jonls.dk/redshift/" +SRC_URI="https://github.com/jonls/${PN}/releases/download/v${PV}/${P}.tar.xz" + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~x86" +IUSE="appindicator geoclue gtk nls" + +COMMON_DEPEND=">=x11-libs/libX11-1.4 + x11-libs/libXxf86vm + x11-libs/libxcb + x11-libs/libdrm + appindicator? ( dev-libs/libappindicator:3[introspection] ) + geoclue? ( app-misc/geoclue:2.0 dev-libs/glib:2 ) + gtk? ( ${PYTHON_DEPS} )" +RDEPEND="${COMMON_DEPEND} + gtk? ( dev-python/pygobject[${PYTHON_USEDEP}] + x11-libs/gtk+:3[introspection] + dev-python/pyxdg[${PYTHON_USEDEP}] )" +DEPEND="${COMMON_DEPEND} + >=dev-util/intltool-0.50 + nls? ( sys-devel/gettext ) +" +REQUIRED_USE="gtk? ( ${PYTHON_REQUIRED_USE} )" + +PATCHES=( + "${FILESDIR}"/${P}-apparmor.patch +) + +src_configure() { + use gtk && python_setup + + # Fix compile for Clang (bug #732438) + append-cflags -fPIE + + econf \ + $(use_enable nls) \ + --enable-drm \ + --enable-randr \ + --enable-vidmode \ + --disable-wingdi \ + \ + --disable-corelocation \ + $(use_enable geoclue geoclue2) \ + \ + $(use_enable gtk gui) \ + --with-systemduserunitdir="$(systemd_get_userunitdir)" \ + --enable-apparmor \ + --disable-quartz \ + --disable-ubuntu +} + +_impl_specific_src_install() { + emake DESTDIR="${D}" \ + PYTHON="${PYTHON}" \ + pythondir="$(python_get_sitedir)" \ + -C src/redshift-gtk install +} + +src_install() { + emake DESTDIR="${D}" UPDATE_ICON_CACHE=/bin/true install + + if use gtk; then + python_foreach_impl _impl_specific_src_install + python_replicate_script "${D}"/usr/bin/redshift-gtk + dosym redshift-gtk /usr/bin/gtk-redshift + + python_foreach_impl python_optimize + + # https://bugs.gentoo.org/784281 + mv "${D}"/usr/share/{appdata,metainfo}/ || die + fi +} + +pkg_postinst() { + use gtk && xdg_icon_cache_update +} + +pkg_postrm() { + use gtk && xdg_icon_cache_update +} |