summaryrefslogtreecommitdiff
path: root/repo/system/utmps/utmps.xibuild
blob: f0112e6edb6295e7c7e10a6d6fc564a5a782eaf8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
#!/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" 
    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
}