lokinet/debian/lokinet-router.postinst
2020-09-30 18:44:59 -03:00

62 lines
2.1 KiB
Bash

#!/bin/sh -e
set -e
if [ "$1" = configure ]; then
mkdir -p /etc/loki
datadir=/var/lib/lokinet/router
tn_datadir=/var/lib/lokinet/testnet-router
mkdir -p $datadir $tn_datadir /var/lib/lokinet/testnet
for d in $datadir $tn_datadir /var/lib/lokinet/testnet; do
su -s /bin/sh _lokinet -c "test -O $d && test -G $d" || \
chown _lokinet:_loki $d
done
if ! [ -e /var/lib/lokinet/bootstrap.signed ]; then
/usr/bin/lokinet-bootstrap lokinet /var/lib/lokinet/bootstrap.signed
chown _lokinet:_loki /var/lib/lokinet/bootstrap.signed
fi
if ! [ -e /var/lib/lokinet/testnet/bootstrap.signed ]; then
/usr/bin/lokinet-bootstrap testnet /var/lib/lokinet/testnet/bootstrap.signed
chown _lokinet:_loki /var/lib/lokinet/testnet/bootstrap.signed
fi
tmpdir=$(mktemp --tmpdir -d lokinet.XXXXXXXXXX)
/usr/bin/lokinet -r -g $tmpdir/lokinet.ini
perl -pi -e "
s#$tmpdir#$datadir#;
if (/^\[bootstrap/ ... /^\[/) {
s{^#?add-node=.*}{add-node=/var/lib/lokinet/bootstrap.signed};
}
if (/^\[lokid/ ... /^\[/) {
s{^#?enabled=.*}{enabled=1};
s{^#?rpc=.*}{rpc=ipc:///var/lib/loki/lokid.sock};
}" $tmpdir/lokinet.ini
chmod 640 $tmpdir/lokinet.ini
chgrp _loki $tmpdir/lokinet.ini
ucf $tmpdir/lokinet.ini /etc/loki/lokinet-router.ini
ucfr lokinet /etc/loki/lokinet-router.ini
tmpdir=$(mktemp --tmpdir -d lokinet.XXXXXXXXXX)
/usr/bin/lokinet -r -g $tmpdir/lokinet.ini
perl -pi -e "
s#$tmpdir#$tn_datadir#;
if (/^\[bootstrap/ ... /^\[/) {
s{^#?add-node=.*}{add-node=/var/lib/lokinet/testnet/bootstrap.signed};
}
if (/^\[router/ ... /^\[/) {
s{^#?netid=.*}{netid=gamma};
}
if (/^\[lokid/ ... /^\[/) {
s{^#?enabled=.*}{enabled=1};
s{^#?rpc=.*}{rpc=ipc:///var/lib/loki/testnet/lokid.sock};
}" $tmpdir/lokinet.ini
chmod 640 $tmpdir/lokinet.ini
chgrp _loki $tmpdir/lokinet.ini
ucf $tmpdir/lokinet.ini /etc/loki/lokinet-testnet-router.ini
ucfr lokinet /etc/loki/lokinet-testnet-router.ini
fi
#DEBHELPER#