summaryrefslogtreecommitdiff
path: root/mate-extra/mate-screensaver/mate-screensaver-1.28.0.ebuild
diff options
context:
space:
mode:
Diffstat (limited to 'mate-extra/mate-screensaver/mate-screensaver-1.28.0.ebuild')
-rw-r--r--mate-extra/mate-screensaver/mate-screensaver-1.28.0.ebuild121
1 files changed, 121 insertions, 0 deletions
diff --git a/mate-extra/mate-screensaver/mate-screensaver-1.28.0.ebuild b/mate-extra/mate-screensaver/mate-screensaver-1.28.0.ebuild
new file mode 100644
index 000000000000..b5a5f8ee9f49
--- /dev/null
+++ b/mate-extra/mate-screensaver/mate-screensaver-1.28.0.ebuild
@@ -0,0 +1,121 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit mate readme.gentoo-r1
+
+MINOR=$(($(ver_cut 2) % 2))
+if [[ ${MINOR} -eq 0 ]]; then
+ KEYWORDS="~amd64 ~arm ~arm64 ~loong ~riscv ~x86"
+fi
+
+DESCRIPTION="Replaces xscreensaver, integrating with the MATE desktop"
+
+LICENSE="GPL-2+ HPND LGPL-2+"
+SLOT="0"
+IUSE="X debug elogind libnotify opengl pam systemd"
+REQUIRED_USE="?? ( elogind systemd )"
+
+COMMON_DEPEND="
+ >=dev-libs/dbus-glib-0.71:0
+ >=dev-libs/glib-2.58:2
+ gnome-base/dconf
+ >=mate-base/libmatekbd-1.17.0
+ >=mate-base/mate-desktop-1.17.0
+ >=mate-base/mate-menus-1.21.0
+ >=sys-apps/dbus-0.30
+ >=x11-libs/gdk-pixbuf-2.14:2
+ >=x11-libs/libX11-1
+ x11-libs/cairo
+ >=x11-libs/gtk+-3.22:3
+ x11-libs/libXext
+ x11-libs/libXrandr
+ x11-libs/libXScrnSaver
+ x11-libs/libXxf86vm
+ x11-libs/libxklavier
+ x11-libs/pango
+ libnotify? ( >=x11-libs/libnotify-0.7:0 )
+ opengl? ( virtual/opengl )
+ pam? ( gnome-base/gnome-keyring sys-libs/pam )
+ !pam? ( kernel_linux? ( sys-apps/shadow ) )
+ elogind? ( sys-auth/elogind )
+ systemd? ( sys-apps/systemd:= )
+"
+
+RDEPEND="${COMMON_DEPEND}
+ >=mate-base/mate-session-manager-1.6
+ virtual/libintl
+ mate-base/mate-panel
+"
+
+DEPEND="${COMMON_DEPEND}
+ dev-libs/libxml2
+ >=sys-devel/gettext-0.19.8:*
+ x11-base/xorg-proto
+ virtual/pkgconfig:*
+"
+
+DOC_CONTENTS="
+ Information for converting screensavers is located in
+ /usr/share/doc/${PF}/xss-conversion.txt*
+"
+
+src_configure() {
+ local myconf=(
+ --enable-locking
+ --with-kbd-layout-indicator
+ --with-xf86gamma-ext
+ --with-xscreensaverdir=/usr/share/xscreensaver/config
+ --with-xscreensaverhackdir=/usr/$(get_libdir)/misc/xscreensaver
+ --without-console-kit
+ $(use_with X x)
+ $(use_with elogind)
+ $(use_with libnotify)
+ $(use_with opengl libgl)
+ $(use_with systemd)
+ $(use_enable debug)
+ $(use_enable pam)
+ )
+
+ mate_src_configure "${myconf[@]}"
+}
+
+src_install() {
+ mate_src_install
+
+ # Install the conversion script in the documentation.
+ dodoc "${S}"/data/migrate-xscreensaver-config.sh
+ dodoc "${S}"/data/xscreensaver-config.xsl
+ dodoc "${FILESDIR}"/xss-conversion.txt
+
+ # Non PAM users will need this suid to read the password hashes.
+ # OpenPAM users will probably need this too when
+ # https://bugzilla.gnome.org/show_bug.cgi?id=370847
+ # is fixed.
+ if ! use pam ; then
+ fperms u+s /usr/libexec/mate-screensaver-dialog
+ fi
+
+ readme.gentoo_create_doc
+}
+
+pkg_postinst() {
+ mate_pkg_postinst
+
+ if has_version "<x11-base/xorg-server-1.5.3-r4" ; then
+ ewarn "You have a too old xorg-server installation. This will cause"
+ ewarn "mate-screensaver to eat up your CPU. Please consider upgrading."
+ echo
+ fi
+
+ if has_version "<x11-misc/xscreensaver-4.22-r2" ; then
+ ewarn "You have xscreensaver installed, you probably want to disable it."
+ ewarn "To prevent a duplicate screensaver entry in the menu, you need to"
+ ewarn "build xscreensaver with -gnome in the USE flags."
+ ewarn "echo \"x11-misc/xscreensaver -gnome\" >> /etc/portage/package.use"
+ echo
+ fi
+
+ readme.gentoo_print_elog
+}