]> Untitled Git - awful.systems.git/blob - git/default.nix
swap lemmy deployment from these to more
[awful.systems.git] / git / default.nix
1 { config, lib, pkgs, ... }:
2
3 let
4   new-repo = pkgs.writeShellScriptBin "new-repo" ''
5     mkdir -p ${config.users.extraUsers.git.home}/repos/''${1}.git
6     ${pkgs.git}/bin/git init --bare ${config.users.extraUsers.git.home}/repos/''${1}.git/
7     chown -R git:git ${config.users.extraUsers.git.home}/repos
8   '';
9 in {
10   imports = [ ../secrets/keys/git.nix ];
11
12   users.extraUsers.git = {
13     uid = 402;
14     isSystemUser = true;
15     home = "/home/git";
16     createHome = true;
17     group = "git";
18     homeMode = "770";
19     shell = "${pkgs.git}/bin/git-shell";
20   };
21
22   users.extraGroups.git = { gid = 402; };
23
24   services.nginx.gitweb = {
25     enable = true;
26     location = "/git";
27     group = "git";
28     #virtualHost = "awful.systems these.awful.systems these";
29   };
30
31   services.gitweb = {
32     gitwebTheme = true;
33     projectroot = "/home/git/repos";
34   };
35
36   environment.systemPackages = [ new-repo ];
37 }