Radish alpha
r
rad:z254T5p17bdFPmzfDojsdjo4HjpoZ
Radicle Infrastructure as Code (NixOS, OpenTofu, …)
Radicle
Git
os: Move Radicle configuration to mixin
Lorenz Leutgeb committed 10 months ago
commit b3117ca615f077b13aaf7131e854a55c0ee19e97
parent 5f9b6e8
2 files changed +60 -39
modified os/host/seed/radicle.nix
@@ -3,6 +3,8 @@
  pkgs,
  ...
}: {
+
  imports = [../../mixin/radicle.nix];
+

  fileSystems."/var/lib/radicle" = {
    device = "/dev/disk/by-id/scsi-0HC_Volume_30473554";
    fsType = "ext4";
@@ -10,50 +12,11 @@
  };

  services.radicle = {
-
    enable = true;
-
    package = pkgs.radicle-node-1_2;
-
    privateKeyFile = "/etc/ssh/ssh_host_ed25519_key";
-
    publicKey = "/etc/ssh/ssh_host_ed25519_key.pub";
    settings = {
      node = {
-
        alias = config.networking.fqdn;
        externalAddresses = [
-
          "${config.networking.fqdn}:8776"
          "seedradanrg2oje34eyidx4z63gpuakgaedaetvt7xxw5whv6qnexmid.onion:8776"
        ];
-
        peers = {
-
          type = "dynamic";
-
          target = 8;
-
        };
-
        db.journalMode = "wal";
-
        workers = 32;
-
        relay = "always";
-
        onion = {
-
          mode = "proxy";
-
          address = "127.0.0.1:9050";
-
        };
-
      };
-
      web.pinned.repositories = [
-
        "rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5"
-
        "rad:z371PVmDHdjJucejRoRYJcDEvD5pp"
-
        "rad:z4V1sjrXqjvFdnCUbxPFqd5p4DtH5"
-
        "rad:z3TajuiHXifEDEX4qbJxe8nXr9ufi"
-
        "rad:z3trNYnLWS11cJWC6BbxDs5niGo82"
-
        "rad:z6cFWeWpnZNHh9rUW8phgA3b5yGt"
-
        "rad:z39mP9rQAaGmERfUMPULfPUi473tY"
-
        "rad:zwTxygwuz5LDGBq255RA2CbNGrz8"
-
        "rad:z3qg5TKmN83afz2fj9z3fQjU8vaYE"
-
        "rad:z4D5UCArafTzTQpDZNQRuqswh3ury"
-
      ];
-
    };
-

-
    httpd = {
-
      enable = true;
-
      package = pkgs.radicle-httpd-master;
-
      nginx = {
-
        addSSL = true;
-
        enableACME = true;
-
        serverName = config.networking.fqdn;
      };
    };
  };
added os/mixin/radicle.nix
@@ -0,0 +1,58 @@
+
{
+
  config,
+
  pkgs,
+
  lib,
+
  ...
+
}: {
+
  services.radicle = {
+
    enable = true;
+
    package = pkgs.radicle-node-1_2;
+
    privateKeyFile = "/etc/ssh/ssh_host_ed25519_key";
+
    publicKey = "/etc/ssh/ssh_host_ed25519_key.pub";
+
    settings = {
+
      node = {
+
        alias = config.networking.fqdn;
+
        externalAddresses = [
+
          "${config.networking.fqdn}:8776"
+
        ];
+
        peers = {
+
          type = "dynamic";
+
          target = 8;
+
        };
+
        db.journalMode = "wal";
+
        workers = 32;
+
        relay = "always";
+
        onion = lib.mkIf config.services.tor.enable {
+
          mode = "proxy";
+
          address = "127.0.0.1:9050";
+
        };
+
      };
+
      web = {
+
        name = config.networking.fqdn;
+
        imageUrl = "https://radicle.xyz/assets/images/radicle.svg";
+
        pinned.repositories = [
+
          "rad:z371PVmDHdjJucejRoRYJcDEvD5pp" # radicle-docs
+
          "rad:z39mP9rQAaGmERfUMPULfPUi473tY" # radicle-tui
+
          "rad:z3TajuiHXifEDEX4qbJxe8nXr9ufi" # radicle-team
+
          "rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5" # heartwood
+
          "rad:z3qg5TKmN83afz2fj9z3fQjU8vaYE" # radicle-native-ci
+
          "rad:z3trNYnLWS11cJWC6BbxDs5niGo82" # rips
+
          "rad:z4D5UCArafTzTQpDZNQRuqswh3ury" # radicle-desktop
+
          "rad:z4V1sjrXqjvFdnCUbxPFqd5p4DtH5" # radicle-explorer
+
          "rad:z6cFWeWpnZNHh9rUW8phgA3b5yGt" # radicle-git
+
          "rad:zwTxygwuz5LDGBq255RA2CbNGrz8" # radicle-ci-broker
+
        ];
+
      };
+
    };
+

+
    httpd = {
+
      enable = true;
+
      package = pkgs.radicle-httpd-master;
+
      nginx = {
+
        addSSL = true;
+
        enableACME = true;
+
        serverName = config.networking.fqdn;
+
      };
+
    };
+
  };
+
}