Added git hooks to invirt-dev package
[invirt/packages/invirt-dev.git] / debian / invirt-dev.postinst
index b873ea2..88ca3f6 100755 (executable)
@@ -11,12 +11,24 @@ case "$1" in
        if ! getent group repo >/dev/null 2>&1; then
             addgroup --system repo
        fi
-            
+
+       if ! getent passwd git >/dev/null 2>&1; then
+           adduser --system --home /srv/git --shell /usr/bin/git-shell git
+       fi
+
+       if ! [ -d /srv/git ]; then
+           mkdir -p /srv/git
+       fi
+
         cat >>/etc/sudoers <<EOF
 ### BEGIN invirt-dev
 %repo   ALL=(repository)        ALWAYS_SET_HOME,NOPASSWD: /usr/bin/reprepro
 ### END invirt-dev
 EOF
+
+        update-inetd --add \
+            'git\tstream\ttcp\tnowait\tgit\t/usr/bin/git\tgit daemon --inetd --syslog --verbose --export-all --base-path=/srv/git /srv/git'
+
         echo "-----"
         echo "invirt-dev: run"
         echo "  adduser --disabled-password \$user"
@@ -24,6 +36,14 @@ EOF
         echo "  adduser \$user sbuild"
         echo "to make individual users that will build packages."
         echo "-----"
+
+       invirt-configure-git-hooks || {
+            echo "-----"
+            echo "invirt-dev: Could not configure git hooks."
+           echo "Run 'invirt-configure-git-hooks'once you"
+           echo "have configured your repositories appropriately."
+            echo "-----"
+       }
     ;;
 
     abort-upgrade|abort-remove|abort-deconfigure)
@@ -34,3 +54,11 @@ EOF
         exit 1
     ;;
 esac
+
+if [ -x /etc/init.d/invirtibuilder ]; then
+    if hash invoke-rc.d 2>/dev/null; then
+        invoke-rc.d invirtibuilder start
+    else
+        /etc/init.d/invirtibuilder start
+    fi
+fi