Only seed database for Debian install if we're using default config
[onak.git] / debian / postinst
index 1252508da87606529c3608814fd66c2f280d6494..5b29801b130a755874bbcaee82ce2765d59ebe40 100644 (file)
@@ -7,8 +7,19 @@ 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 ]; 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 +33,20 @@ 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#