X-Git-Url: https://git.cyclocoop.org/?a=blobdiff_plain;f=etc%2Fsv%2Fgit-daemon%2Frun;h=9b627bf48ad39408af146aba3be876d6e5e3e5cc;hb=2e5bb0ff5df2b7a5d527a4f896b802df31d3c6bc;hp=c994c65b9fa9923bc4340bfab86fab224b73eabb;hpb=c66bfacc6bac1bcb030675983107e4b90b08029b;p=lhc%2Fateliers.git diff --git a/etc/sv/git-daemon/run b/etc/sv/git-daemon/run index c994c65..9b627bf 100755 --- a/etc/sv/git-daemon/run +++ b/etc/sv/git-daemon/run @@ -1,13 +1,38 @@ -#!/bin/sh -efux +#!/bin/sh -eux exec 2>&1 +sv=${PWD#/etc/sv/} +home=~git/daemon +domainname=$(domainname) +case ${domainname-} in + (""|"(none)") false;; + esac + +getent passwd "$sv" >/dev/null || +adduser "$sv"\ + --disabled-login \ + --disabled-password \ + --group \ + --home "$home" \ + --shell /bin/false \ + --system + +install -d -m 770 -o git -g "$sv" \ + "$home" + +adduser "$sv" git-data + +ln -fns \ + ../pub \ + "$home"/git.$domainname +ln -fns \ + ../pub \ + "$home"/burette.$domainname + # NOTE : rétro-compatibilité + exec /usr/bin/chpst \ - -u git-daemon:git-daemon \ - /usr/bin/git daemon \ - --base-path=/home/git/pub/git \ - --interpolated-path=/home/git/srv/git/%H%D \ + -u "$sv":"$sv":git-data \ + /usr/lib/git-core/git-daemon \ + --interpolated-path="$home"/%H%D \ --reuseaddr \ - --syslog \ --user-path=pub/git \ - --verbose \ - -- \ - /home/git/pub/git + --verbose