about summary refs log tree commit diff
path: root/machines/srv3/cgit.nix
diff options
context:
space:
mode:
authorPatryk Niedźwiedziński <pniedzwiedzinski19@gmail.com>2024-10-30 20:16:45 +0100
committerPatryk Niedźwiedziński <pniedzwiedzinski19@gmail.com>2024-10-30 20:16:45 +0100
commit009a43799c28eca77752de4268c0e74700d13527 (patch)
tree5eb771177ef9ccde32ecdaa11149549b5e9ea19e /machines/srv3/cgit.nix
parent9c14b06fc484e4be8852c4f379cb1671ed367d6a (diff)
downloaddots-master.tar.gz
dots-master.zip
srv3: move services to folder HEAD master
Diffstat (limited to 'machines/srv3/cgit.nix')
-rw-r--r--machines/srv3/cgit.nix106
1 files changed, 0 insertions, 106 deletions
diff --git a/machines/srv3/cgit.nix b/machines/srv3/cgit.nix
deleted file mode 100644
index bcd63bb..0000000
--- a/machines/srv3/cgit.nix
+++ /dev/null
@@ -1,106 +0,0 @@
-{ pkgs, ...}:
-let
-  cgitHostname = "git.niedzwiedzinski.cyou";
-
-  mirror = pkgs.writeScriptBin "mirror" ''
-  #!/bin/sh
-
-  name=`echo "$1" | rev | cut -d'/' -f1 | rev`
-
-  cd /srv/git
-  sudo -u git ${pkgs.git}/bin/git clone --mirror $1 $name
-  sudo -u git /run/current-system/sw/bin/chmod -R g+w $name
-  '';
-
-  newrepo = pkgs.writeScriptBin "newrepo" ''
-  #!/bin/sh
-
-  [ -z $1 ] && echo "Pass repo name" && exit 1
-
-  sudo -u git git init --bare /srv/git/$1
-  sudo -u git /run/current-system/sw/bin/chmod -R g+w /srv/git/$1
-  '';
-
-in
-{
-  environment.systemPackages = [ newrepo mirror ];
-  systemd.services.git-fetch = {
-    script = ''
-      #!/bin/sh
-      cd /srv/git
-      for f in `find . -name HEAD`; do
-        cd ''${f%HEAD}
-        ${pkgs.git}/bin/git fetch
-        cd /srv/git
-      done
-    '';
-    serviceConfig = {
-      Type = "oneshot";
-      User = "git";
-    };
-  };
-  systemd.timers.git-fetch = {
-    partOf = [ "git-fetch.service" ];
-    wantedBy = ["timers.target" ];
-    timerConfig = {
-      OnCalendar = "hourly";
-      Unit = "git-fetch.service";
-    };
-  };
-  services.nginx.virtualHosts."${cgitHostname}" = {
-    locations."=/mylogo.png" = {
-      alias = "${./baby-yoda.png.comp}";
-    };
-    forceSSL = true;
-    enableACME = true;
-  };
-  services.cgit.gitN = {
-    enable = true;
-    user = "cgit";
-    package = pkgs.cgit-pink;
-    scanPath = "/srv/git";
-    nginx.virtualHost = cgitHostname;
-    settings = {
-      about-filter = let formatScript = pkgs.writeScriptBin "about-format.sh" ''
-          #!/bin/sh
-          ${pkgs.coreutils}/bin/cat << EOF
-          <style>
-          .md blockquote {
-            background: #eee;
-            font-style: italic;
-            padding: 0 1em;
-          }
-          </style>
-          <div class="md">
-          EOF
-          ${pkgs.coreutils}/bin/cat /dev/stdin | ${pkgs.lowdown}/bin/lowdown
-          echo '</div>'
-        '';
-      in "${formatScript}/bin/about-format.sh";
-      cache-size = "1000";
-      root-title = cgitHostname;
-      root-desc = "Personal git server, because I can";
-      readme = ":README.md";
-      snapshots = "tar.gz zip";
-      clone-prefix = "https://${cgitHostname}";
-      section-from-path = "1";
-      logo = "/mylogo.png";
-    };
-  };
-
-  users = {
-    groups = { git = {}; };
-    users = {
-      git = {
-        isSystemUser = true;
-        group = "git";
-        description = "git user";
-        home = "/srv/git";
-        shell = "${pkgs.git}/bin/git-shell";
-        openssh.authorizedKeys.keys = [
-          "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIIqlCe4ovKa/Gwl5xmgu9nvVPmFXMgwdeLRYW7Gg7RWx pniedzwiedzinski19@gmail.com"
-        ];
-      };
-    };
-  };
-}