-# Configuration file for the userv git daemon.
-#
-# This was written by Tony Finch <dot@dotat.at>
-# You may do anything with it, at your own risk.
-# http://creativecommons.org/publicdomain/zero/1.0/
-#
-# This is a perl script which is expected to set a few variables
-# to locate the requested repository.
-#
-# REQUEST VARIABLES
-# $service - normally "git-upload-pack"
-# `git daemon --help` describes other possible services
-# $host
-# $path
-# $uri = git://$host/$path
-# $_ = $uri
+# Each line is one of:
+#
+# single-user <vhost>[/<vsubpath>] <user> [<directory>]
+# matching requests will be handled by <user>
+# and unless overridden by <user> handled by
+# serving subdirectories of <directory>
+#
+# multi-user <vhost>[/<vsubpath>] <directory>
+# matching requests are only those those next
+# path element starts with ~<user>. The
+# request will be handled by <user> and unless
+# overridden by <user> will be handled by
+# serving subdirectories of <directory>
+# (<directory> must be a relative path)
+#
+# repo-regexp <regexp>
+# For per-user service. Subrepos must match this
+# regexp, which must contain a single matching
+# group which is the filesystem pathname inside
+# the <directory>. The default is:
+# repo-regexp ^(w[-+._0-9A-Za-z]*/?\.git)$
+#
+# [no-]require-git-daemon-export-ok
+# For per-user service. Default is no-.
+#
+# Last match, or last setting, wins.
+# <vsubpath>s may start with ~
+
+# here is an example, taken from chiark:
#
-# CONNECTION VARIABLES
-# $client_addr
-# $client_port
-# $client = [$client_addr]:$client_port
-# $server_addr
-# $server_port
-# $server = [$server_addr]:$server_port
+# single-user dotat.at fanf dotat-git
+# single-user git.chiark.greenend.org.uk webmaster /u2/git-repos
#
-# OUTPUT VARIABLES
-# $user - who runs the service
-# $dir - may be:
-# * an absolute path
-# * a path relative to the user's home directory
-# * equivalently, a path starting ~/
-# $repo - if set, the repository's path is $dir/$repo
-# otherwise, the repository's path is just $dir
-# $check_export - whether to check for a git-daemon-export-ok file
-# (default false)
-# $check_repo - whether to restrict the syntax of $repo
-# (default true)
-# @opts - options for the service command
-
-if ($path =~ m{^~([^/]*)/(.*)}) {
- $user = $1;
- $dir = 'public-git';
- $repo = $2;
-}
-
-# end
+# multi-user cabal.greenend.org.uk cabal-git
+# multi-user git.chiark.greenend.org.uk public-git