/run/shm/cache/php5/fpm \
/run/shm/tmp/php5
- ! getent passwd gitweb >/dev/null ||
- sudo install -d -m 770 -o gitweb -g gitweb \
- /run/tmp/gitweb
+ ! getent passwd fcgi-gitweb >/dev/null ||
+ sudo install -d -m 1771 -o fcgi-gitweb -g fcgi-gitweb \
+ /run/shm/tmp/gitweb
! getent passwd mysql >/dev/null ||
sudo install -d -m 1771 -o mysql -g mysql \
rule apt_get_install gitweb highlight
-sudo ln -fns /etc/gitweb /home/git/etc/gitweb
-sudo install -d -m 550 -o www-"$site" -g www-"$site" \
- /etc/gitweb \
- /etc/gitweb/cgi
-sudo install -m 740 -o git -g www-"$site" /dev/stdin \
- /home/git/etc/gitweb/gitweb.conf <<-EOF
- \$commit_oneline_message_width = 70;
- \$default_projects_order = 'age';
- \$default_text_plain_charset = 'UTF-8';
- @diff_opts = ();
- \$favicon = "img/git-favicon.png";
- \$git_temp = "/run/shm/tmp/gitweb";
- \$home_footer = "/etc/gitweb/cgi/home-footer.cgi.inc";
- \$home_header = "/etc/gitweb/cgi/home-header.cgi.inc";
- \$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 = "js/gitweb.js";
- \$logo = "img/git-logo.png";
- \$my_uri = "";
- \$projectroot = "../git";
- \$projects_list = "/etc/gitolite/projects.list";
- \$projects_list_description_width = 42;
- \$projects_list_owner_width = 15;
- \$search_str = "Filtre :";
- \$site_footer = "/etc/gitweb/cgi/site-footer.bin";
- \$site_header = undef;
- \$site_name = "git.$vm_domainname";
- \$space_to_nbsp = 0;
- @stylesheets = ("css/gitweb.css");#
- \$untabify_tabstop = 2;
- EOF
sudo adduser www-data git-data
sudo adduser www-"$site"-tls www-"$site"
client_body_buffer_size 8k;
client_max_body_size 10m;
-location / {
- index index.html;
+location ~* ^.+\.(css|png|js)$ {
root /usr/share/gitweb;
- }
-location ~* ^.+.(css|gif|html|ico|jpeg|js|jpg|png|txt|xml)$ {
access_log off;
expires 30d;
log_not_found off;
fastcgi_param SCRIPT_FILENAME /usr/lib/git-core/git-http-backend;
}
location @gitweb {
+ root /usr/share/gitweb;
+ fastcgi_param SCRIPT_FILENAME /usr/share/gitweb/gitweb.cgi;
include /etc/nginx/conf.d/fastcgi.conf;
set $no_cache "0";
if ($request_method !~ ^(GET|HEAD)$) {
fastcgi_no_cache $no_cache;
fastcgi_param GITWEB_CONFIG /etc/gitweb/gitweb.conf;
fastcgi_param PATH_INFO $uri;
- fastcgi_param REDIRECT_STATUS 200;
- # NOTE: PHP only, required if PHP was built with --enable-force-cgi-redirect
- fastcgi_param SCRIPT_FILENAME /usr/share/gitweb/gitweb.cgi;
fastcgi_pass_header Cookie;
fastcgi_pass_header Set-Cookie;
--shell /bin/false \
--system
sudo adduser fcgi-"$sv" www-"$sv"
-#sudo adduser fcgi-"$site" git-data
+sudo adduser fcgi-"$sv" git-data
sudo install -d -m 770 -o log-fcgi-"$sv" -g log-fcgi-"$sv" \
/home/www/log/"$sv"/spawn-fcgi
+sudo install -d -m 2750 -o git -g fcgi-"$sv" \
+ /etc/gitweb \
+ /etc/gitweb/cgi
+sudo ln -fns /etc/gitweb /home/git/etc/gitweb
+sudo install -m 400 -o fcgi-"$sv" -g fcgi-"$sv" /dev/stdin \
+ /home/git/etc/gitweb/gitweb.conf <<-EOF
+ \$commit_oneline_message_width = 70;
+ \$default_projects_order = 'age';
+ \$default_text_plain_charset = 'UTF-8';
+ @diff_opts = ();
+ \$favicon = "static/git-favicon.png";
+ \$git_temp = "/run/shm/tmp/gitweb";
+ \$home_footer = "/etc/gitweb/cgi/home-footer.cgi.inc";
+ \$home_header = "/etc/gitweb/cgi/home-header.cgi.inc";
+ \$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/cgi/site-footer.bin";
+ \$site_header = undef;
+ \$site_name = "git.$vm_domainname";
+ \$space_to_nbsp = 0;
+ @stylesheets = ("static/gitweb.css");#
+ \$untabify_tabstop = 2;
+ EOF
#\$GL_WILDREPOS_DEFPERMS = 'R @all';
\$GL_WILDREPOS_PERM_CATS = "READERS WRITERS";
\$HTPASSWD_FILE = "";
- \$PROJECTS_LIST = \$ENV{HOME} . "/projects.list";
+ \$PROJECTS_LIST = \$ENV{HOME} . "/etc/gitweb/projects.list";
\$REPO_BASE = "pub";
\$REPO_UMASK = 0007;
\$RSYNC_BASE = "";
IFS= read -r sv_status_$sv_hash <<-EOF
$(sudo sv status "$sv")
EOF
- rm -f /etc/service/"$sv"
+ sudo rm -f /etc/service/"$sv"
done
for sv in ${1-"$tool"/etc/sv/*}
# NOTE: configure et (re-)démarre les services
fi
test ! -r "$tool"/etc/sv/"$sv"/configure.sh ||
. "$tool"/etc/sv/"$sv"/configure.sh
- ln -fns ../sv/"$sv" /etc/service/"$sv"
+ sudo ln -fns ../sv/"$sv" /etc/service/"$sv"
eval local sv_status=\"\${sv_status_$sv_hash-}\"
case $sv_status in
("") true;;