diff options
Diffstat (limited to 'xscreensaver/PKGBUILD')
| -rw-r--r-- | xscreensaver/PKGBUILD | 101 |
1 files changed, 101 insertions, 0 deletions
diff --git a/xscreensaver/PKGBUILD b/xscreensaver/PKGBUILD new file mode 100644 index 0000000..cfa3afb --- /dev/null +++ b/xscreensaver/PKGBUILD @@ -0,0 +1,101 @@ +# Maintainer: Deposite Pirate <dpirate at metalpunks dot info> +# +# Upstream: https://git.metalpunks.info/arch-ports + +_pkgname='xscreensaver' +pkgname=("${_pkgname}" "${_pkgname}-hacks") +pkgver=6.12 +pkgrel=2 +pkgdesc="Screen saver and locker for the X Window System" +url="http://www.jwz.org/xscreensaver/" +arch=('i686' 'x86_64') +license=('BSD') +makedepends=('bc' 'intltool' 'libxpm' 'gdm' 'systemd' 'systemd-libs') +source=(https://www.jwz.org/xscreensaver/${_pkgname}-${pkgver}.tar.gz + license-from-upstream + migrate-xscreensaver-config.sh + xscreensaver-config.xsl) +noextract=("${_pkgname}-${pkgver}.tar.gz") +sha256sums=('4ff6798217e3bbbc3c7336beeda7e83eafbf03301ac29b2236da66a0f1317643' + 'c0247a0328f07656f6b7a5854f57fe735579f161b6f40df967cf9a5eab772d63' + '44afb1c918e61f63606175fcbb2fc25a45bca80e9341acc77d66a79809b05671' + 'a0c183a515c15b1a911c295e3ffbe96fa8a70444e2f1becc21c772e1608de7be') + +prepare() { + # xscreensaver-6.12 fails to extract with bsdtar because of some hard link + # nonsense. + tar zxvf "${srcdir}/${_pkgname}-${pkgver}.tar.gz" -C "${srcdir}" +} + +build() { + cd ${_pkgname}-${pkgver} + ./configure \ + --prefix=/usr \ + --sysconfdir=/etc \ + --localstatedir=/var \ + --libexecdir=/usr/lib \ + --without-setuid-hacks \ + --with-pam \ + --with-login-manager \ + --with-gtk \ + --with-gl \ + --without-gle \ + --with-pixbuf \ + --with-jpeg \ + --with-systemd \ + --enable-pam-check-account-type + make +} + +package_xscreensaver() { + pkgdesc="Screen saver and locker for the X Window System" + depends=('xscreensaver-hacks' 'gtk3' 'libsystemd.so' 'pam' 'libpam.so' + 'libxcrypt' 'libcrypt.so' 'libxmu' 'libxt') + optdepends=('gdm: for login manager support') + backup=('etc/pam.d/xscreensaver') + + cd "${srcdir}/${_pkgname}-${pkgver}" + install -d "${pkgdir}/etc/pam.d" + make install_prefix="${pkgdir}" install + + # Files that belong in xscreensaver-hacks + rm -rf "${pkgdir}/usr/share/fonts" + + find "${pkgdir}/usr/lib/xscreensaver" -maxdepth 1 -type f \ + ! -name "xscreensaver-auth" ! -name "xscreensaver-systemd" -delete + find "${pkgdir}/usr/share/man/man6" -maxdepth 1 -type f \ + ! -name "xscreensaver-auth.6" ! -name "xscreensaver-systemd.6" -delete +} + +package_xscreensaver-hacks() { + pkgdesc="Collection of XScreenSaver hacks" + depends=('glibc' 'glib2' 'gdk-pixbuf2' 'libglvnd' 'glu' 'libx11' 'libxext' + 'libxft' 'libxi' 'libxt' 'libxrandr' 'libxxf86vm' 'libxinerama' + 'libjpeg-turbo' 'libjpeg.so' 'perl-libwww' 'xorg-appres') + + cd "${srcdir}/${_pkgname}-${pkgver}" + make install_prefix="${pkgdir}" install + install -Dm644 "${srcdir}/license-from-upstream" -T \ + "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" + + # Create the .desktop files used by xfce4-screensaver + install -dm755 "${pkgdir}/usr/share/applications/screensavers" + ( + cd "${pkgdir}/usr/share/applications/screensavers" + sh "${srcdir}/migrate-xscreensaver-config.sh" \ + "${pkgdir}/usr/share/xscreensaver/config/*.xml" + ) + + # Files that belong in xscreensaver + # xfce4-screensaver already has popsquares + rm -rf \ + "${pkgdir}/etc" \ + "${pkgdir}/usr/bin" \ + ${pkgdir}/usr/share/{pixmaps,xscreensaver,man/man1} \ + ${pkgdir}/usr/share/applications/*.desktop \ + ${pkgdir}/usr/share/applications/screensavers/popsquares.desktop \ + ${pkgdir}/usr/share/man/man1/xscreensaver{,-{demo,settings,command}}.1 \ + ${pkgdir}/usr/share/man/man6/xscreensaver-{auth,systemd}.6 \ + "${pkgdir}/usr/lib/X11" \ + ${pkgdir}/usr/lib/xscreensaver/xscreensaver-{auth,systemd} +} |
