Mercurial > vanilla
changeset 1193:56d78f8b7cf8
security/swaylock: initial import, closes #2424
author | David Demelier <markand@malikania.fr> |
---|---|
date | Mon, 28 Oct 2019 21:12:00 +0100 |
parents | efbe0fce6aae |
children | e4d19663ae34 |
files | security/swaylock/swaylock.sh security/swaylock/swaylock.sha1 |
diffstat | 2 files changed, 82 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/security/swaylock/swaylock.sh Mon Oct 28 21:12:00 2019 +0100 @@ -0,0 +1,81 @@ +#!/bin/sh +# +# Copyright (c) 2019 David Demelier <markand@malikania.fr> +# +# Permission to use, copy, modify, and/or distribute this software for any +# purpose with or without fee is hereby granted, provided that the above +# copyright notice and this permission notice appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF +# OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +# + +PKGNAME=swaylock +PKGVERSION=1.4 +PKGREVISION=1 +PKGLICENSE="MIT" +PKGSUMMARY="Screen locker for Wayland" +PKGWWW="https://github.com/swaywm/swaylock" +PKGDOWNLOAD="https://github.com/swaywm/swaylock/archive/1.4.tar.gz" +PKGDEPENDS="meson:build wayland wayland-protocols:build" +PKGOPTIONS="GDK_PIXBUF PAM" + +: ${CC:=clang} +: ${CFLAGS:=-O2} +: ${LDFLAGS:=} +: ${GDK_PIXBUF:=yes} +: ${PAM:=yes} + +if [ "$GDK_PIXBUF" = "yes" ]; then + PKGDEPENDS="gdk-pixbuf $PKGDEPENDS" + with_gdk_pixbuf="-D gdk-pixbuf=enabled" +else + with_gdk_pixbuf="-D gdk-pixbuf=disabled" +fi + +if [ "$PAM" = "yes" ]; then + PKGDEPENDS="linux-pam shadow $PKGDEPENDS" + PKGPROTECT="etc/pam.d/swaylock" + with_pam="-D pam=enabled" +else + with_pam="-D pam=disabled" +fi + +build() +{ + rm -rf $PKGNAME-$PKGVERSION + tar -xvf $PKGVERSION.tar.gz + cd $PKGNAME-$PKGVERSION + + CC="$CC" \ + CFLAGS="$CFLAGS" \ + LDFLAGS="$LDFLAGS" \ + meson . build \ + --prefix / \ + --buildtype release \ + $with_gdk_pixbuf \ + $with_pam + ninja -C build + DESTDIR=$DESTDIR ninja -C build install + + if [ "$PAM" = "yes" ]; then + cat > $DESTDIR/etc/pam.d/swaylock <<-EOF + # + # /etc/pam.d/swaylock -- PAM configuration file for swaylock + # + + auth include login + EOF + else + # Upstream documentation recommends setuid bit. + chmod 4755 $DESTDIR/bin/swaylock + fi + + cd .. + rm -rf $PKGNAME-$PKGVERSION +}