diff options
Diffstat (limited to 'lass/2configs/red-host.nix')
-rw-r--r-- | lass/2configs/red-host.nix | 163 |
1 files changed, 0 insertions, 163 deletions
diff --git a/lass/2configs/red-host.nix b/lass/2configs/red-host.nix deleted file mode 100644 index ac7e529a3..000000000 --- a/lass/2configs/red-host.nix +++ /dev/null @@ -1,163 +0,0 @@ -{ config, lib, pkgs, ... }: -let - ctr.name = "red"; -in -{ - - krebs.sync-containers3.containers.red = { - sshKey = "${toString <secrets>}/containers/red/sync.key"; - ephemeral = true; - }; - - # containers.${ctr.name} = { - # config = { - # environment.systemPackages = [ - # pkgs.dhcpcd - # pkgs.git - # pkgs.jq - # ]; - # networking.useDHCP = lib.mkForce true; - # systemd.services.autoswitch = { - # environment = { - # NIX_REMOTE = "daemon"; - # }; - # wantedBy = [ "multi-user.target" ]; - # serviceConfig.ExecStart = pkgs.writers.writeDash "autoswitch" '' - # if test -e /var/src/nixos-config; then - # /run/current-system/sw/bin/nixos-rebuild -I /var/src switch || : - # fi - # ''; - # unitConfig.X-StopOnRemoval = false; - # }; - # }; - # autoStart = false; - # enableTun = true; - # privateNetwork = true; - # hostBridge = "ctr0"; - # bindMounts = { - # "/etc/resolv.conf".hostPath = "/etc/resolv.conf"; - # "/var/lib/self-state/disk-image" = { - # hostPath = "/var/lib/sync-containers3/${ctr.name}"; - # isReadOnly = true; - # }; - # }; - # }; - - # systemd.services."${ctr.name}_scheduler" = { - # wantedBy = [ "multi-user.target" ]; - # path = with pkgs; [ - # coreutils - # consul - # cryptsetup - # mount - # util-linux - # systemd - # untilport - # ]; - # serviceConfig = { - # Restart = "always"; - # RestartSec = "15s"; - # ExecStart = "${pkgs.consul}/bin/consul lock container_${ctr.name} ${pkgs.writers.writeDash "${ctr.name}-start" '' - # set -efux - # trap ${pkgs.writers.writeDash "stop-${ctr.name}" '' - # set -efux - # /run/current-system/sw/bin/nixos-container stop ${ctr.name} || : - # umount /var/lib/nixos-containers/${ctr.name}/var/state || : - # cryptsetup luksClose ${ctr.name} || : - # ''} INT TERM EXIT - # consul kv put containers/${ctr.name}/host ${config.networking.hostName} - # cryptsetup luksOpen --key-file /var/src/secrets/containers/${ctr.name}/luks /var/lib/sync-containers3/${ctr.name}/disk ${ctr.name} - # mkdir -p /var/lib/nixos-containers/${ctr.name}/var/state - # mount /dev/mapper/${ctr.name} /var/lib/nixos-containers/${ctr.name}/var/state - # ln -frs /var/lib/nixos-containers/${ctr.name}/var/state/var_src /var/lib/nixos-containers/${ctr.name}/var/src - # /run/current-system/sw/bin/nixos-container start ${ctr.name} - # set +x - # until /run/wrappers/bin/ping -q -c 1 ${ctr.name}.r > /dev/null; do sleep 5; done - # while /run/wrappers/bin/ping -q -c 1 ${ctr.name}.r > /dev/null; do sleep 5; done - # ''}"; - # }; - # }; - - # users.groups."container_${ctr.name}" = {}; - # users.users."container_${ctr.name}" = { - # group = "container_${ctr.name}"; - # isSystemUser = true; - # home = "/var/lib/sync-containers3/${ctr.name}"; - # createHome = true; - # homeMode = "705"; - # openssh.authorizedKeys.keys = [ - # config.krebs.users.lass.pubkey - # ]; - # }; - - # systemd.timers."${ctr.name}_syncer" = { - # timerConfig = { - # RandomizedDelaySec = 300; - # }; - # }; - # systemd.services."${ctr.name}_syncer" = { - # path = with pkgs; [ - # coreutils - # rsync - # openssh - # systemd - # ]; - # startAt = "*:0/1"; - # serviceConfig = { - # User = "container_${ctr.name}"; - # LoadCredential = [ - # "ssh_key:${toString <secrets>}/containers/${ctr.name}/sync.key" - # ]; - # ExecCondition = pkgs.writers.writeDash "${ctr.name}_checker" '' - # set -efu - # ! systemctl is-active --quiet container@${ctr.name}.service - # ''; - # ExecStart = pkgs.writers.writeDash "${ctr.name}_syncer" '' - # set -efu - # rsync -a -e "ssh -i $CREDENTIALS_DIRECTORY/ssh_key" --inplace container_sync@${ctr.name}.r:disk-image/disk $HOME/disk - # ''; - # }; - # }; - - # # networking - # networking.networkmanager.unmanaged = [ "ctr0" ]; - # networking.interfaces.dummy0.virtual = true; - # networking.bridges.ctr0.interfaces = [ "dummy0" ]; - # networking.interfaces.ctr0.ipv4.addresses = [{ - # address = "10.233.0.1"; - # prefixLength = 24; - # }]; - # systemd.services."dhcpd-ctr0" = { - # wantedBy = [ "multi-user.target" ]; - # after = [ "network.target" ]; - # serviceConfig = { - # Type = "forking"; - # Restart = "always"; - # DynamicUser = true; - # StateDirectory = "dhcpd-ctr0"; - # User = "dhcpd-ctr0"; - # Group = "dhcpd-ctr0"; - # AmbientCapabilities = [ - # "CAP_NET_RAW" # to send ICMP messages - # "CAP_NET_BIND_SERVICE" # to bind on DHCP port (67) - # ]; - # ExecStartPre = "${pkgs.coreutils}/bin/touch /var/lib/dhcpd-ctr0/dhcpd.leases"; - # ExecStart = "${pkgs.dhcp}/bin/dhcpd -4 -lf /var/lib/dhcpd-ctr0/dhcpd.leases -cf ${pkgs.writeText "dhpd.conf" '' - # default-lease-time 600; - # max-lease-time 7200; - # authoritative; - # ddns-update-style interim; - # log-facility local1; # see dhcpd.nix - - # option subnet-mask 255.255.255.0; - # option routers 10.233.0.1; - # # option domain-name-servers 8.8.8.8; # TODO configure dns server - # subnet 10.233.0.0 netmask 255.255.255.0 { - # range 10.233.0.10 10.233.0.250; - # } - # ''} ctr0"; - # }; - # }; - -} - |