X-Git-Url: http://the.earth.li/gitweb/?a=blobdiff_plain;f=debian%2Fpostinst;h=40d0d5f9f28289d271a43b9dc9c2243a6bc370dd;hb=4127b47cd6603d328e540f4f69f66fad9b303fa7;hp=1252508da87606529c3608814fd66c2f280d6494;hpb=5ace83529b1fd3e46db32357c8716be51d921449;p=onak.git diff --git a/debian/postinst b/debian/postinst index 1252508..40d0d5f 100644 --- a/debian/postinst +++ b/debian/postinst @@ -7,8 +7,20 @@ if [ "$1" = "configure" ]; then # Add the onak user adduser --system --home /var/lib/onak --no-create-home --disabled-login onak - # Take ownership of the database directory + # + # If we're using a default config and there's no onak database, create it + # by adding my key. + # + if grep -q "^db_dir /var/lib/onak" /etc/onak.conf && + grep -q "^db_backend db4" /etc/onak.conf && + [ ! -e /var/lib/onak/num_keydb -a \ + -e /usr/share/doc/onak/noodles.key.gz ]; then + zcat /usr/share/doc/onak/noodles.key | onak -b add + fi + + # Take ownership of the database and spool directory chown -R onak /var/lib/onak + chown -R onak /var/spool/onak # Create our logfile touch /var/log/onak.log @@ -22,4 +34,30 @@ if [ "$1" = "configure" ]; then dpkg-statoverride --update --add onak root 4755 $i fi done + + # If we don't have a DB backend defined, then add appropriate config + if ! grep -q db_backend /etc/onak.conf; then + echo "# Auto added on package update" >> /etc/onak.conf + echo "backends_dir /usr/lib/onak/backends" >> /etc/onak.conf + echo "db_backend db4" >> /etc/onak.conf + fi + + # If we still have the old default mail_dir setting, fix it + if grep -q "mail_dir /community/pgp-keyserver/incoming" /etc/onak.conf; then + sed -i.bak "s/community\/pgp-keyserver\/incoming/var\/spool\/onak/" \ + /etc/onak.conf + fi + +fi + +#DEBHELPER# + +# +# With the move to systemd this will force systemd to start keyd even if it's +# disabled in the onak config file; the systemd service file can't check the +# way the init script does. Work around this by doing the check here and +# only calling invoke-rc.d if it's actually enabled. +# +if grep -q -E '^use_keyd *(true|yes|1)$' /etc/onak.conf; then + invoke-rc.d onak start || exit $? fi