blob: cba0bd3c1a6b5c19c7905b0d9e563148e7688784 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
|
# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{9..12} )
inherit autotools 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/libayatana-appindicator )
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
"${FILESDIR}"/${P}-libayatana-appindicator.patch
)
src_prepare() {
# we need to re-generate file py-compile with a version
# that supports Python >=3.12 to not fail with error:
# ModuleNotFoundError: No module named 'imp'
rm py-compile || die
eautoreconf
eapply_user
}
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
}
|