X-Git-Url: https://the.earth.li/gitweb/?a=blobdiff_plain;f=debian%2Fpostinst;h=40d0d5f9f28289d271a43b9dc9c2243a6bc370dd;hb=fade89320441112348c9be856215954b3b3e46b7;hp=b5215285c87acf832970271cbeb8d9d59e36d629;hpb=7e81c28455626dda2519fec5b976fd41bedad872;p=onak.git diff --git a/debian/postinst b/debian/postinst index b521528..40d0d5f 100644 --- a/debian/postinst +++ b/debian/postinst @@ -7,10 +7,14 @@ if [ "$1" = "configure" ]; then # Add the onak user adduser --system --home /var/lib/onak --no-create-home --disabled-login onak - # - # If there's no onak database, create it by adding my key. # - if [ ! -e /var/lib/onak/num_keydb ]; then + # 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 @@ -30,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