X-Git-Url: https://git.cyclocoop.org/?a=blobdiff_plain;f=etc%2Fsv%2Fgitweb%2Frun;fp=etc%2Fsv%2Fgitweb%2Frun;h=48f26ec75ec4c00c28977e20167a82e768be3237;hb=2e5bb0ff5df2b7a5d527a4f896b802df31d3c6bc;hp=150854df4537f31bab39acc64db64724966c0b6d;hpb=1b63122dd097c575896b4c4158ed5439eeca1563;p=lhc%2Fateliers.git diff --git a/etc/sv/gitweb/run b/etc/sv/gitweb/run index 150854d..48f26ec 100755 --- a/etc/sv/gitweb/run +++ b/etc/sv/gitweb/run @@ -1,10 +1,71 @@ #!/bin/sh -eux exec 2>&1 sv=${PWD#/etc/sv/} +home=~git-data +domainname=$(domainname) +case ${domainname-} in + (""|"(none)") false;; + esac + +getent passwd fcgi-"$sv" >/dev/null || +adduser fcgi-"$sv" \ + --disabled-login \ + --disabled-password \ + --group \ + --home "$home" \ + --shell /bin/false \ + --system + +adduser fcgi-"$sv" www-"$sv" +adduser fcgi-"$sv" git-data + +install -d -m 2750 -o git -g fcgi-"$sv" \ + /etc/gitweb +install -m 400 -o fcgi-"$sv" -g fcgi-"$sv" /dev/stdin \ + /etc/gitweb/gitweb.conf <<-EOF + \$commit_oneline_message_width = 70; + \$default_projects_order = 'project'; + \$default_text_plain_charset = 'UTF-8'; + @diff_opts = (); + \$favicon = "static/git-favicon.png"; + \$feature{'highlight'}{'default'} = [1]; + \$git_temp = "/run/shm/tmp/gitweb"; + \$home_text = "/etc/gitweb/home_text.html"; + \$home_link = "/"; + \$home_link_str = 'dépôts'; + \$home_th_age = 'activité'; + \$home_th_descr = 'description'; + \$home_th_owner = 'contact'; + \$home_th_project = 'dépôt'; + \$javascript = "static/gitweb.js"; + \$logo = "static/git-logo.png"; + \$my_uri = ""; + \$projectroot = "/home/git/pub"; + \$projects_list = "/etc/gitweb/projects.list"; + \$projects_list_description_width = 42; + \$projects_list_owner_width = 15; + \$search_str = "Filtre :"; + \$site_footer = "/etc/gitweb/site_footer.html"; + \$site_header = "/etc/gitweb/site_header.html"; + \$site_name = "git.$domainname"; + @stylesheets = ("static/gitweb.css");# + EOF +sudo install -m 400 -o fcgi-"$sv" -g fcgi-"$sv" /dev/stdin \ + /etc/gitweb/home_text.html <<-EOF +

Forge logicielle publique de l'Heureux Cyclage

+

Pour récupérer un dépôt public :

+
git clone git://git.heureux-cyclage.org/<projet>
+ EOF + +ln -fns \ + /etc/gitweb \ + ~git/etc/gitweb + install -d -m 1771 -o root -g root \ /run/spawn-fcgi install -d -m 1771 -o fcgi-gitweb -g fcgi-gitweb \ /run/shm/tmp/gitweb + exec /usr/bin/spawn-fcgi \ -u fcgi-"$sv" \ -g fcgi-"$sv" \