summary refs log tree commit diff
path: root/nixos
diff options
context:
space:
mode:
authorNikolay Amiantov <ab@fmap.me>2014-11-02 02:24:41 +0300
committerNikolay Amiantov <ab@fmap.me>2014-11-02 02:24:41 +0300
commit5423f6237314c4e7b721a96d070a7ec0b09ab284 (patch)
tree641e177078754d35964da892df6d93a41feb0b5d /nixos
parent0bba805fa6817479bb0cc4a06d99d08ba98b25ce (diff)
downloadnixlib-5423f6237314c4e7b721a96d070a7ec0b09ab284.tar
nixlib-5423f6237314c4e7b721a96d070a7ec0b09ab284.tar.gz
nixlib-5423f6237314c4e7b721a96d070a7ec0b09ab284.tar.bz2
nixlib-5423f6237314c4e7b721a96d070a7ec0b09ab284.tar.lz
nixlib-5423f6237314c4e7b721a96d070a7ec0b09ab284.tar.xz
nixlib-5423f6237314c4e7b721a96d070a7ec0b09ab284.tar.zst
nixlib-5423f6237314c4e7b721a96d070a7ec0b09ab284.zip
gitolite: add dataDir
Diffstat (limited to 'nixos')
-rw-r--r--nixos/modules/services/misc/gitolite.nix15
1 files changed, 11 insertions, 4 deletions
diff --git a/nixos/modules/services/misc/gitolite.nix b/nixos/modules/services/misc/gitolite.nix
index 961af48e0f86..462b68aa0a1c 100644
--- a/nixos/modules/services/misc/gitolite.nix
+++ b/nixos/modules/services/misc/gitolite.nix
@@ -15,14 +15,21 @@ in
         default = false;
         description = ''
           Enable gitolite management under the
-          <literal>gitolite</literal> user. The Gitolite home
-          directory is <literal>/var/lib/gitolite</literal>. After
+          <literal>gitolite</literal> user. After
           switching to a configuration with Gitolite enabled, you can
           then run <literal>git clone
           gitolite@host:gitolite-admin.git</literal> to manage it further.
         '';
       };
 
+      dataDir = mkOption {
+        type = types.str;
+        default = "/var/lib/gitolite";
+        description = ''
+          Gitolite home directory (used to store all the repositories).
+        '';
+      };
+
       adminPubkey = mkOption {
         type = types.str;
         description = ''
@@ -45,7 +52,7 @@ in
   config = mkIf cfg.enable {
     users.extraUsers.gitolite = {
       description     = "Gitolite user";
-      home            = "/var/lib/gitolite";
+      home            = cfg.dataDir;
       createHome      = true;
       uid             = config.ids.uids.gitolite;
       useDefaultShell = true;
@@ -61,7 +68,7 @@ in
 
       path = [ pkgs.gitolite pkgs.git pkgs.perl pkgs.bash pkgs.openssh ];
       script = ''
-        cd /var/lib/gitolite
+        cd ${cfg.dataDir}
         mkdir -p .gitolite/logs
         if [ ! -d repositories ]; then
           gitolite setup -pk ${pubkeyFile}