summaryrefslogtreecommitdiff
path: root/repo/system/utmps/utmps.xibuild
diff options
context:
space:
mode:
Diffstat (limited to 'repo/system/utmps/utmps.xibuild')
-rw-r--r--repo/system/utmps/utmps.xibuild75
1 files changed, 75 insertions, 0 deletions
diff --git a/repo/system/utmps/utmps.xibuild b/repo/system/utmps/utmps.xibuild
new file mode 100644
index 0000000..900aae8
--- /dev/null
+++ b/repo/system/utmps/utmps.xibuild
@@ -0,0 +1,75 @@
+#!/bin/sh
+
+MAKEDEPS=""
+DEPS="skalibs"
+
+PKG_VER=0.1.1.0
+SOURCE=https://skarnet.org/software/utmps/utmps-$PKG_VER.tar.gz
+
+ADDITIONAL="
+btmpd.initd
+btmpd.logrotate
+utmpd.initd
+utmp-init.initd
+utmp-prepare.initd
+wtmpd.initd
+wtmpd.logrotate
+"
+
+DESC="Library implementing utmpx.h family of functions"
+
+build () {
+ ./configure \
+ --enable-shared \
+ --libdir=/usr/lib \
+ --with-dynlib=/lib \
+ --libexecdir="/lib/utmps" \
+ --with=dynlib=/lib
+ make
+}
+
+package () {
+ make DESTDIR=$PKG_DEST install
+ ln -s utmps/utmpx.h $PKG_DEST/usr/include/utmpx.h
+ install -d $PKG_DEST/usr/lib/pkgconfig
+ cat > $PKG_DEST/usr/lib/pkgconfig/utmps.pc << EOF
+Name: utmps
+Description: A secure implementation of the utmp mechanism.
+URL: https://skarnet.org/software/utmps/
+Version: $PKG_VER
+Requires.private: skalibs
+Libs: -lutmps
+Cflags: -I/usr/include/utmps
+EOF
+ install -D -m755 utmp-prepare.initd "$PKG_DEST/etc/init.d/utmp-prepare"
+ install -D -m755 utmpd.initd "$PKG_DEST/etc/init.d/utmpd"
+ install -D -m755 wtmpd.initd "$PKG_DEST/etc/init.d/wtmpd"
+ install -D -m755 btmpd.initd "$PKG_DEST/etc/init.d/btmpd"
+ install -D -m755 utmp-init.initd "$PKG_DEST/etc/init.d/utmp-init"
+ install -D -m644 wtmpd.logrotate "$PKG_DEST/etc/logrotate.d/wtmpd"
+ install -D -m644 btmpd.logrotate "$PKG_DEST/etc/logrotate.d/btmpd"
+}
+
+postinstall () {
+ # check that shadow exists
+ command -v useradd || exit 1
+ command -v chown || exit 1
+
+ grep -q "utmps" /etc/passwd || useradd -c "utmps user" -d /run/utmps \
+ -u 984 -g utmp -s /bin/false utmp
+ [ -d /var/log/utmps ] || mkdir -p /var/log/utmps
+ [ -d /var/log/wtmp ] && mv /var/log/wtmp /var/log/utmps
+ chown -R utmp:utmp /var/log/utmps
+ [ -e /var/log/wtmp ] || ln -s utmps/wtmp /var/log/wtmp
+
+# utmps is broken, dont try to make services with it without s6 ipc
+# rc-update add utmp-prepare boot
+# rc-update add utmpd boot
+# rc-update add wtmpd boot
+# rc-update add btmpd boot
+# rc-update add utmp-init boot
+# rc-service utmp-prepare start
+# rc-service utmpd start
+# rc-service wtmpd start
+# rc-service btmpd start
+}