summaryrefslogtreecommitdiff
path: root/Biz/Cloud/Git.nix
diff options
context:
space:
mode:
authorBen Sima <ben@bsima.me>2021-04-28 00:05:50 -0400
committerBen Sima <ben@bsima.me>2021-11-26 13:47:34 -0500
commit6729ea1439a3ec60afd84af7b94cb159a0f719b6 (patch)
tree3f2647824b815c13fa325a88ed66cbad8ff2e6d7 /Biz/Cloud/Git.nix
parentfc12097be426c1a87dd504c3694a0097b806bd7a (diff)
Publish self-hosted git repos with cgit
Also I need more repos...
Diffstat (limited to 'Biz/Cloud/Git.nix')
-rw-r--r--Biz/Cloud/Git.nix12
1 files changed, 6 insertions, 6 deletions
diff --git a/Biz/Cloud/Git.nix b/Biz/Cloud/Git.nix
index 4dde27f..fd7c8a2 100644
--- a/Biz/Cloud/Git.nix
+++ b/Biz/Cloud/Git.nix
@@ -10,8 +10,11 @@ in {
dataDir = root;
user = "git";
group = "git";
+ # the umask is necessary to give the git group read permissions, otherwise
+ # git-daemon et al can't access the repos
extraGitoliteRc = ''
$RC{SITE_INFO} = 'a computer is a bicycle for the mind.';
+ $RC{UMASK} = 0027;
'';
adminPubkey = lib.trivial.pipe ../Keys/Ben.pub [
builtins.readFile
@@ -24,22 +27,19 @@ in {
gitDaemon = {
enable = true;
basePath = "${root}/repositories";
- repositories = map (p: "${root}/repositories/${p}") [
- "nixpkgs.git"
- "ben/bin.git"
- "ben/cfg.git"
- ];
listenAddress = "simatime.com";
user = "gitDaemon";
group = "gitDaemon";
};
};
+ # need to specify that these users can access git files by being part of the
+ # git group
users.users = {
gitDaemon = {
- #uid = config.ids.uids.gitDaemon;
description = "Git daemon user";
extraGroups = [ "git" ];
};
+ "nginx".extraGroups = [ "git" ];
};
users.groups = {
gitDaemon = {};