X-Git-Url: https://git.cyclocoop.org/?a=blobdiff_plain;f=etc%2Fsv%2Fgit-daemon%2Frun;h=9b627bf48ad39408af146aba3be876d6e5e3e5cc;hb=2e5bb0ff5df2b7a5d527a4f896b802df31d3c6bc;hp=05140d7b256df6e3b068d5bf0ee4074fa8d0d50d;hpb=2d48a198262604098443c6a90e58b0084600a4d7;p=lhc%2Fateliers.git diff --git a/etc/sv/git-daemon/run b/etc/sv/git-daemon/run index 05140d7..9b627bf 100755 --- a/etc/sv/git-daemon/run +++ b/etc/sv/git-daemon/run @@ -1,12 +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 \ - --interpolated-path=/home/git/srv/%H%D \ + -u "$sv":"$sv":git-data \ + /usr/lib/git-core/git-daemon \ + --interpolated-path="$home"/%H%D \ --reuseaddr \ --user-path=pub/git \ - --verbose \ - -- \ - /home/git/pub/git + --verbose