| 3 |
3 |
|
| 4 |
4 |
EAPI=8
|
| 5 |
5 |
|
| 6 |
|
inherit xdg-utils
|
|
6 |
inherit meson xdg-utils
|
| 7 |
7 |
|
| 8 |
8 |
DESCRIPTION="Screen saver and locker (port of MATE screensaver)"
|
| 9 |
9 |
HOMEPAGE="
|
| ... | ... | |
| 11 |
11 |
https://gitlab.xfce.org/apps/xfce4-screensaver/
|
| 12 |
12 |
"
|
| 13 |
13 |
SRC_URI="
|
| 14 |
|
https://archive.xfce.org/src/apps/${PN}/${PV%.*}/${P}.tar.bz2
|
|
14 |
https://archive.xfce.org/src/apps/${PN}/${PV%.*}/${P}.tar.xz
|
| 15 |
15 |
"
|
| 16 |
16 |
|
| 17 |
17 |
LICENSE="GPL-2+ LGPL-2+"
|
| 18 |
18 |
SLOT="0"
|
| 19 |
|
KEYWORDS="amd64 arm ~arm64 ~loong ppc ppc64 ~riscv x86"
|
| 20 |
|
IUSE="elogind +locking opengl pam systemd"
|
|
19 |
KEYWORDS="amd64 arm ~arm64 ~loong ~ppc ~ppc64 ~riscv x86"
|
|
20 |
IUSE="elogind +locking pam systemd wayland X"
|
|
21 |
REQUIRED_USE="
|
|
22 |
|| ( wayland X )
|
|
23 |
"
|
| 21 |
24 |
|
| 22 |
|
# Xrandr: optional but automagic
|
| 23 |
25 |
DEPEND="
|
| 24 |
26 |
>=dev-libs/dbus-glib-0.30
|
| 25 |
27 |
>=dev-libs/glib-2.50.0:2
|
| 26 |
|
>=x11-libs/gtk+-3.24.0:3
|
| 27 |
|
>=x11-libs/libwnck-3.20:3
|
| 28 |
|
x11-libs/libICE:=
|
| 29 |
|
x11-libs/libX11:=
|
| 30 |
|
x11-libs/libXScrnSaver:=
|
| 31 |
|
x11-libs/libXext:=
|
| 32 |
|
x11-libs/libXxf86vm:=
|
| 33 |
|
>=x11-libs/libXrandr-1.3:=
|
| 34 |
|
>=x11-libs/libxklavier-5.2:=
|
| 35 |
|
>=xfce-base/garcon-0.5.0:=
|
|
28 |
>=x11-libs/gtk+-3.24.0:3[wayland?,X?]
|
|
29 |
>=xfce-base/garcon-4.16.0:=
|
| 36 |
30 |
>=xfce-base/libxfce4ui-4.18.4:=
|
| 37 |
|
>=xfce-base/libxfce4util-4.12.1:=
|
| 38 |
|
>=xfce-base/xfconf-4.12.1:=
|
|
31 |
>=xfce-base/libxfce4util-4.16.0:=
|
|
32 |
>=xfce-base/xfconf-4.16.0:=
|
|
33 |
wayland? (
|
|
34 |
>=dev-libs/wayland-1.15
|
|
35 |
gui-libs/libwlembed:=[gtk]
|
|
36 |
>=xfce-base/libxfce4windowing-4.19.2:=
|
|
37 |
)
|
|
38 |
X? (
|
|
39 |
>=x11-libs/libwnck-3.20:3
|
|
40 |
>=x11-libs/libX11-1.6.7:=
|
|
41 |
>=x11-libs/libXScrnSaver-1.2.3:=
|
|
42 |
>=x11-libs/libXext-1.0.0:=
|
|
43 |
>=x11-libs/libxklavier-5.2:=
|
|
44 |
)
|
| 39 |
45 |
elogind? ( sys-auth/elogind )
|
| 40 |
46 |
locking? (
|
| 41 |
47 |
pam? ( sys-libs/pam )
|
| 42 |
48 |
)
|
| 43 |
|
opengl? ( virtual/opengl )
|
| 44 |
49 |
systemd? ( sys-apps/systemd:= )
|
| 45 |
50 |
"
|
| 46 |
51 |
RDEPEND="
|
| 47 |
52 |
${DEPEND}
|
| 48 |
53 |
"
|
|
54 |
DEPEND+="
|
|
55 |
wayland? (
|
|
56 |
>=dev-libs/wayland-protocols-1.20
|
|
57 |
)
|
|
58 |
"
|
| 49 |
59 |
BDEPEND="
|
| 50 |
60 |
dev-util/glib-utils
|
| 51 |
61 |
sys-apps/dbus
|
| ... | ... | |
| 54 |
64 |
"
|
| 55 |
65 |
|
| 56 |
66 |
src_configure() {
|
| 57 |
|
local myconf=(
|
| 58 |
|
# disable docbook for now
|
| 59 |
|
ac_cv_path_XMLTO=no
|
|
67 |
local auth_scheme session_manager
|
| 60 |
68 |
|
| 61 |
|
# xscreensaver dirs autodetection doesn't seem to work
|
| 62 |
|
--with-xscreensaverdir=/usr/share/xscreensaver/config
|
| 63 |
|
--with-xscreensaverhackdir=/usr/$(get_libdir)/misc/xscreensaver
|
| 64 |
|
--without-console-kit
|
| 65 |
|
|
| 66 |
|
$(use_with opengl libgl)
|
| 67 |
|
$(use_enable locking)
|
| 68 |
|
$(use_enable pam)
|
| 69 |
|
$(use_with elogind)
|
| 70 |
|
$(use_with systemd)
|
| 71 |
|
)
|
| 72 |
|
|
| 73 |
|
if use pam; then
|
| 74 |
|
myconf+=( --with-pam-auth-type=system )
|
|
69 |
if use locking; then
|
|
70 |
if use pam; then
|
|
71 |
auth_scheme=pam
|
|
72 |
else
|
|
73 |
auth_scheme=pwent
|
|
74 |
fi
|
|
75 |
else
|
|
76 |
auth_scheme=none
|
|
77 |
fi
|
|
78 |
if use systemd; then
|
|
79 |
session_manager=systemd
|
|
80 |
elif use elogind; then
|
|
81 |
session_manager=elogind
|
|
82 |
else
|
|
83 |
session_manager=none
|
| 75 |
84 |
fi
|
| 76 |
85 |
|
| 77 |
|
econf "${myconf[@]}"
|
| 78 |
|
}
|
| 79 |
|
|
| 80 |
|
src_install() {
|
| 81 |
|
default
|
|
86 |
local emesonargs=(
|
|
87 |
-Dauthentication-scheme=${auth_scheme}
|
|
88 |
-Dsession-manager=${session_manager}
|
|
89 |
$(meson_feature X x11)
|
|
90 |
$(meson_feature wayland)
|
|
91 |
-Dxscreensaverhackdir="${EPREFIX}/usr/$(get_libdir)/misc/xscreensaver"
|
|
92 |
-Dkbd-layout-indicator=true
|
|
93 |
# disable docbook for now
|
|
94 |
-Ddocs=disabled
|
|
95 |
-Ddocdir="${EPREFIX}/usr/share/doc/${PF}"
|
|
96 |
# used only with -Dauthentication-scheme=pam
|
|
97 |
-Dpam-auth-type=system
|
|
98 |
# used only with -Dauthentication-scheme=pwent
|
|
99 |
-Dshadow=true
|
|
100 |
)
|
| 82 |
101 |
|
| 83 |
|
find "${D}" -name '*.la' -delete || die
|
|
102 |
meson_src_configure
|
| 84 |
103 |
}
|
| 85 |
104 |
|
| 86 |
105 |
pkg_postinst() {
|