X-Git-Url: http://xvm.mit.edu/gitweb/invirt/packages/invirt-dev.git/blobdiff_plain/c486f9800bbbec3a069ae1e96494e13774a18fcd..8b252d58974ec097b9b24e40aa7a1b57cfeda56c:/debian/invirt-dev.postinst diff --git a/debian/invirt-dev.postinst b/debian/invirt-dev.postinst index 96725c3..88ca3f6 100755 --- a/debian/invirt-dev.postinst +++ b/debian/invirt-dev.postinst @@ -5,26 +5,45 @@ set -e case "$1" in configure) - if [ -z "$2" ]; then + if ! getent passwd repository >/dev/null 2>&1; then adduser --system repository + fi + if ! getent group repo >/dev/null 2>&1; then addgroup --system repo - - # Clean up the old sudoers block, then add it back - perl -i.bak -ne 's%^### (BEGIN|END) invirt-dev\s*$%%m && ($skip = ($1 eq "BEGIN")); print unless $skip;' /etc/sudoers - - cat >>/etc/sudoers <<EOF + 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" + echo " adduser \$user repo" + echo " adduser \$user sbuild" + echo "to make individual users that will build packages." + echo "-----" + + invirt-configure-git-hooks || { echo "-----" - echo "invirt-dev: run" - echo " adduser --disabled-password \$user" - echo " adduser \$user repo" - echo " adduser \$user sbuild" - echo "to make individual users that will build packages." + echo "invirt-dev: Could not configure git hooks." + echo "Run 'invirt-configure-git-hooks'once you" + echo "have configured your repositories appropriately." echo "-----" - fi + } ;; abort-upgrade|abort-remove|abort-deconfigure) @@ -35,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