greetd: initial commit, version 0.8.0

This commit is contained in:
Tim Biermann 2022-10-30 10:00:29 +00:00
parent 6c5b89a42b
commit 5a9b9064f7
Signed by: tb
GPG Key ID: 42F8B4E30B673606
7 changed files with 115 additions and 0 deletions

11
greetd/.footprint Normal file
View File

@ -0,0 +1,11 @@
drwxr-xr-x root/root etc/
drwxr-xr-x root/root etc/greetd/
-rwxr-xr-x root/root etc/greetd/config.toml
drwxr-xr-x root/root etc/pam.d/
-rw-r--r-- root/root etc/pam.d/greetd
drwxr-xr-x root/root etc/rc.d/
-rwxr-xr-x root/root etc/rc.d/greetd
drwxr-xr-x root/root usr/
drwxr-xr-x root/root usr/bin/
-rwxr-xr-x root/root usr/bin/agreety
-rwxr-xr-x root/root usr/bin/greetd

7
greetd/.signature Normal file
View File

@ -0,0 +1,7 @@
untrusted comment: verify with /etc/ports/contrib.pub
RWSagIOpLGJF34t7C7NjB6TOo1nw5UyikgfVuKTHUCnMpGXWvUPzjs2P1guHOe75m2f+d0kzxuyMKW1KrF2SFBDFntsrVaIFqQk=
SHA256 (Pkgfile) = f2c9fc48553e3869fb3582861bc9eb958c2e51fd6ee4fa775b7cb96dfdddbf9b
SHA256 (.footprint) = b758cce14ac46104bc464b7a714c2d7d86b274f2bdce5730fdcb83ece42d0dbd
SHA256 (greetd-0.8.0.tar.gz) = 47a73709df60f04b63fc50cfc409e47a451a9620777638f527b9d9333256035f
SHA256 (greetd.pam) = 47288a182c28a0d3614e67210492b9b39a82131a16674575cca03f76ac80e686
SHA256 (greetd.service) = 60a9a348dc19d7cdc839e6aca552a105e13097b0efdb1839ce20e94c56add322

40
greetd/Pkgfile Normal file
View File

@ -0,0 +1,40 @@
# Description: greetd is a minimal and flexible login manager daemon
# URL: https://kl.wtf/projects/greetd/
# Maintainer: Tim Biermann, tbier at posteo dot de
# Depends on: rust
# Optional: scdoc
name=greetd
version=0.8.0
release=1
source=(https://git.sr.ht/~kennylevinsen/greetd/archive/$version.tar.gz
greetd.pam greetd.service)
renames=($name-$version.tar.gz SKIP SKIP)
build() {
prt-get isinst sccache && export RUSTC_WRAPPER=/usr/bin/sccache
mkdir "$PKGMK_SOURCE_DIR/rust" || true
export CARGO_HOME="$PKGMK_SOURCE_DIR/rust"
cargo build --release --manifest-path $name-$version/Cargo.toml
install -Dt $PKG/usr/bin $name-$version/target/release/greetd
install -Dt $PKG/usr/bin $name-$version/target/release/agreety
install -Dt $PKG/etc/greetd $name-$version/config.toml
## needs scdoc
prt-get isinst scdoc && (
cd $name-$version/man
for i in *scd; do
scdoc < "$i"> "$(basename "$i")".roff
done
install -Dm755 agreety-1.scd.roff $PKG/usr/share/man/man1/agreety.1
install -Dm755 greetd-1.scd.roff $PKG/usr/share/man/man1/greetd.1
install -Dm755 greetd-5.scd.roff $PKG/usr/share/man/man5/greetd.5
install -Dm755 greetd-ipc-7.scd.roff $PKG/usr/share/man/man7/greetd-ipc.7)
# install pam configuration
install -Dm644 $SRC/greetd.pam $PKG/etc/pam.d/greetd
# install service file
install -Dm755 $SRC/greetd.service $PKG/etc/rc.d/greetd
}

15
greetd/README Normal file
View File

@ -0,0 +1,15 @@
This branch can be started from a rooted tty shell.
Currently tested is the included agreety (minimal) greeter.
Can start a shell, X, or anything. This is my config.toml
############### /etc/greetd/config.toml
[terminal]
# The VT to run the greeter on. Can be "next", "current" or a number
vt = 2
[default_session]
#command = "sway --config /etc/greetd/sway-config"
command = "agreety --cmd start-sway"
user = "greeter"
############### End of file

7
greetd/greetd.pam Normal file
View File

@ -0,0 +1,7 @@
#%PAM-1.0
auth required pam_securetty.so
auth requisite pam_nologin.so
auth include common-auth
account include common-account
session include common-session

30
greetd/greetd.service Executable file
View File

@ -0,0 +1,30 @@
#!/bin/sh
#
# /etc/rc.d/greetd: start/stop greetd
#
SSD=/sbin/start-stop-daemon
PROG=/usr/bin/greetd
OPTS=""
RUNDIR=/var/run/greetd
PIDFILE=$RUNDIR/greetd.pid
case $1 in
start)
$SSD --start -b --exec $PROG -u greeter -- $OPTS ;;
stop)
$SSD --stop --retry 10 --exec $PROG ;;
restart)
$0 stop
$0 start ;;
status)
$SSD --status --exec $PROG
case $? in
0) echo "$PROG is running with pid $(pidof $PROG)" ;;
1) echo "$PROG is not running but the pid file $PID exists" ;;
3) echo "$PROG is not running" ;;
4) echo "Unable to determine the program status" ;;
esac ;;
*)
echo "usage: $0 [start|stop|restart|status]" ;;
esac

5
greetd/post-install Executable file
View File

@ -0,0 +1,5 @@
#!/bin/sh
getent group greeter || /usr/sbin/groupadd greeter
getent passwd greeter || /usr/sbin/useradd -M -g greeter -G video,tty -c "greed user" greeter
/usr/bin/passwd -l greeter