summaryrefslogtreecommitdiffstats
path: root/lass
diff options
context:
space:
mode:
Diffstat (limited to 'lass')
-rw-r--r--lass/1systems/blue/source.nix2
-rw-r--r--lass/1systems/coaxmetal/config.nix2
-rw-r--r--lass/1systems/coaxmetal/source.nix21
-rw-r--r--lass/1systems/echelon/config.nix3
-rw-r--r--lass/1systems/green/source.nix5
-rw-r--r--lass/1systems/morpheus/config.nix29
-rw-r--r--lass/1systems/morpheus/physical.nix44
-rw-r--r--lass/1systems/prism/config.nix11
-rw-r--r--lass/1systems/prism/physical.nix6
-rw-r--r--lass/1systems/red/config.nix28
-rw-r--r--lass/1systems/red/physical.nix7
-rw-r--r--lass/1systems/uriel/config.nix47
-rw-r--r--lass/1systems/uriel/physical.nix59
-rw-r--r--lass/2configs/bepasty.nix44
-rw-r--r--lass/2configs/default.nix2
-rw-r--r--lass/2configs/green-host.nix10
-rw-r--r--lass/2configs/mpv.nix7
-rw-r--r--lass/2configs/murmur.nix13
-rw-r--r--lass/2configs/pass.nix8
-rw-r--r--lass/2configs/prism-mounts/samba.nix15
-rw-r--r--lass/2configs/ts3.nix19
-rw-r--r--lass/2configs/vim.nix14
-rw-r--r--lass/2configs/websites/domsen.nix19
-rw-r--r--lass/3modules/klem.nix2
-rw-r--r--lass/krops.nix2
25 files changed, 94 insertions, 325 deletions
diff --git a/lass/1systems/blue/source.nix b/lass/1systems/blue/source.nix
index 2b415821..0b2bf5f5 100644
--- a/lass/1systems/blue/source.nix
+++ b/lass/1systems/blue/source.nix
@@ -1,5 +1,5 @@
{ lib, pkgs, test, ... }:
-{
+if test then {} else {
nixpkgs = lib.mkIf (! test) (lib.mkForce {
file = {
path = toString (pkgs.fetchFromGitHub {
diff --git a/lass/1systems/coaxmetal/config.nix b/lass/1systems/coaxmetal/config.nix
index 227c5e1e..0e6bddf5 100644
--- a/lass/1systems/coaxmetal/config.nix
+++ b/lass/1systems/coaxmetal/config.nix
@@ -16,7 +16,7 @@
<stockholm/lass/2configs/steam.nix>
<stockholm/lass/2configs/wine.nix>
<stockholm/lass/2configs/fetchWallpaper.nix>
- # <stockholm/lass/2configs/nfs-dl.nix>
+ <stockholm/lass/2configs/prism-mounts/samba.nix>
<stockholm/lass/2configs/pass.nix>
<stockholm/lass/2configs/mail.nix>
<stockholm/lass/2configs/bitcoin.nix>
diff --git a/lass/1systems/coaxmetal/source.nix b/lass/1systems/coaxmetal/source.nix
new file mode 100644
index 00000000..abbf26c7
--- /dev/null
+++ b/lass/1systems/coaxmetal/source.nix
@@ -0,0 +1,21 @@
+{ lib, pkgs, test, ... }: let
+ npkgs = lib.importJSON ../../../krebs/nixpkgs-unstable.json;
+in {
+ nixpkgs = (if test then lib.mkForce ({ derivation = let
+ rev = npkgs.rev;
+ sha256 = npkgs.sha256;
+ in ''
+ with import (builtins.fetchTarball {
+ url = "https://github.com/nixos/nixpkgs/archive/${rev}.tar.gz";
+ sha256 = "${sha256}";
+ }) {};
+ pkgs.fetchFromGitHub {
+ owner = "nixos";
+ repo = "nixpkgs";
+ rev = "${rev}";
+ sha256 = "${sha256}";
+ }
+ ''; }) else {
+ git.ref = lib.mkForce npkgs.rev;
+ });
+}
diff --git a/lass/1systems/echelon/config.nix b/lass/1systems/echelon/config.nix
index 9e72916b..eacdff78 100644
--- a/lass/1systems/echelon/config.nix
+++ b/lass/1systems/echelon/config.nix
@@ -5,10 +5,13 @@
<stockholm/lass/2configs/retiolum.nix>
<stockholm/lass/2configs/tor-initrd.nix>
+ <stockholm/lass/2configs/syncthing.nix>
+ <stockholm/lass/2configs/green-host.nix>
];
krebs.build.host = config.krebs.hosts.echelon;
boot.tmpOnTmpfs = true;
+
}
diff --git a/lass/1systems/green/source.nix b/lass/1systems/green/source.nix
index 48499c9d..da137e06 100644
--- a/lass/1systems/green/source.nix
+++ b/lass/1systems/green/source.nix
@@ -1,5 +1,4 @@
-{ lib, pkgs, ... }:
-{
+{ lib, pkgs, test, ... }:
+if test then {} else {
nixpkgs-unstable = lib.mkForce { file = "/var/empty"; };
- nixpkgs.git.shallow = true;
}
diff --git a/lass/1systems/morpheus/config.nix b/lass/1systems/morpheus/config.nix
deleted file mode 100644
index 79d4f528..00000000
--- a/lass/1systems/morpheus/config.nix
+++ /dev/null
@@ -1,29 +0,0 @@
-{ config, pkgs, ... }:
-with import <stockholm/lib>;
-{
- imports = [
- <stockholm/lass>
- <stockholm/lass/2configs/retiolum.nix>
-
- <stockholm/lass/2configs/syncthing.nix>
- <stockholm/lass/2configs/green-host.nix>
- ];
-
- krebs.build.host = config.krebs.hosts.morpheus;
-
- networking.wireless.enable = false;
- networking.networkmanager.enable = true;
-
- services.logind.lidSwitch = "ignore";
- services.logind.lidSwitchDocked = "ignore";
-
- environment.systemPackages = with pkgs; [
- gitAndTools.hub
- nix-review
- firefox
- ag
- ];
-
- services.openssh.forwardX11 = true;
- programs.x2goserver.enable = true;
-}
diff --git a/lass/1systems/morpheus/physical.nix b/lass/1systems/morpheus/physical.nix
deleted file mode 100644
index 6e59a227..00000000
--- a/lass/1systems/morpheus/physical.nix
+++ /dev/null
@@ -1,44 +0,0 @@
-{
- imports = [
- ./config.nix
- <nixpkgs/nixos/modules/installer/scan/not-detected.nix>
- ];
-
- boot.loader.grub.enable = true;
- boot.loader.grub.version = 2;
- boot.loader.grub.efiSupport = true;
- boot.loader.grub.efiInstallAsRemovable = true;
- boot.loader.grub.device = "nodev";
-
- networking.hostId = "06442b9a";
-
- fileSystems."/" = {
- device = "/dev/pool/root";
- fsType = "btrfs";
- };
-
- fileSystems."/boot" = {
- device = "/dev/disk/by-uuid/1F60-17C6";
- fsType = "vfat";
- };
-
- fileSystems."/home" = {
- device = "/dev/pool/home";
- fsType = "btrfs";
- };
-
- fileSystems."/tmp" = {
- device = "tmpfs";
- fsType = "tmpfs";
- options = ["nosuid" "nodev" "noatime"];
- };
- boot.initrd.luks = {
- cryptoModules = [ "aes" "sha512" "sha1" "xts" ];
- devices.luksroot.device = "/dev/nvme0n1p3";
- };
-
- services.udev.extraRules = ''
- SUBSYSTEM=="net", ATTR{address}=="f8:59:71:a9:05:65", NAME="wl0"
- SUBSYSTEM=="net", ATTR{address}=="54:e1:ad:4f:06:83", NAME="et0"
- '';
-}
diff --git a/lass/1systems/prism/config.nix b/lass/1systems/prism/config.nix
index d43fb804..45f9ae00 100644
--- a/lass/1systems/prism/config.nix
+++ b/lass/1systems/prism/config.nix
@@ -112,7 +112,6 @@ with import <stockholm/lib>;
};
}
<stockholm/lass/2configs/exim-smarthost.nix>
- <stockholm/lass/2configs/ts3.nix>
<stockholm/lass/2configs/privoxy-retiolum.nix>
<stockholm/lass/2configs/radio.nix>
<stockholm/lass/2configs/binary-cache/server.nix>
@@ -124,16 +123,6 @@ with import <stockholm/lib>;
<stockholm/lass/2configs/ciko.nix>
<stockholm/lass/2configs/container-networking.nix>
<stockholm/lass/2configs/jitsi.nix>
- { # quasi bepasty.nix
- imports = [
- <stockholm/lass/2configs/bepasty.nix>
- ];
- krebs.bepasty.servers."paste.r".nginx.extraConfig = ''
- if ( $server_addr = "${config.krebs.build.host.nets.internet.ip4.addr}" ) {
- return 403;
- }
- '';
- }
{
services.tor = {
enable = true;
diff --git a/lass/1systems/prism/physical.nix b/lass/1systems/prism/physical.nix
index 1a3bee85..26ecd1cd 100644
--- a/lass/1systems/prism/physical.nix
+++ b/lass/1systems/prism/physical.nix
@@ -65,6 +65,12 @@
fsType = "ext4";
};
+ # silence mdmonitor.service failures
+ # https://github.com/NixOS/nixpkgs/issues/72394
+ environment.etc."mdadm.conf".text = ''
+ MAILADDR root
+ '';
+
nix.maxJobs = lib.mkDefault 8;
powerManagement.cpuFreqGovernor = lib.mkDefault "powersave";
diff --git a/lass/1systems/red/config.nix b/lass/1systems/red/config.nix
deleted file mode 100644
index 3139e94a..00000000
--- a/lass/1systems/red/config.nix
+++ /dev/null
@@ -1,28 +0,0 @@
-with import <stockholm/lib>;
-{ config, lib, pkgs, ... }:
-let
- inherit (import <stockholm/lass/2configs/websites/util.nix> {inherit lib pkgs;})
- servephpBB
- ;
-in
-{
- imports = [
- <stockholm/lass>
- <stockholm/lass/2configs>
- <stockholm/lass/2configs/retiolum.nix>
- <stockholm/lass/2configs/websites>
- <stockholm/lass/2configs/websites/sqlBackup.nix>
- (servephpBB [ "rote-allez-fraktion.de" ])
- ];
-
- krebs.iptables.tables.filter.INPUT.rules = [
- { predicate = "-p tcp --dport 80"; target = "ACCEPT"; }
- ];
-
- krebs.build.host = config.krebs.hosts.red;
-
- services.nginx.enable = true;
- environment.systemPackages = [
- pkgs.mk_sql_pair
- ];
-}
diff --git a/lass/1systems/red/physical.nix b/lass/1systems/red/physical.nix
deleted file mode 100644
index b6aa3a89..00000000
--- a/lass/1systems/red/physical.nix
+++ /dev/null
@@ -1,7 +0,0 @@
-{
- imports = [
- ./config.nix
- ];
- boot.isContainer = true;
- networking.useDHCP = false;
-}
diff --git a/lass/1systems/uriel/config.nix b/lass/1systems/uriel/config.nix
deleted file mode 100644
index c3ce8fce..00000000
--- a/lass/1systems/uriel/config.nix
+++ /dev/null
@@ -1,47 +0,0 @@
-{ config, pkgs, ... }:
-
-with builtins;
-with import <stockholm/lib>;
-{
- imports = [
- <stockholm/lass>
- <stockholm/lass/2configs/retiolum.nix>
- <stockholm/lass/2configs/exim-retiolum.nix>
- {
- # locke config
- i18n.defaultLocale ="de_DE.UTF-8";
- time.timeZone = "Europe/Berlin";
- services.xserver.enable = true;
- services.xserver.libinput.enable = false;
- users.users.locke = {
- uid = genid "locke";
- home = "/home/locke";
- group = "users";
- createHome = true;
- extraGroups = [
- "audio"
- "networkmanager"
- ];
- useDefaultShell = true;
- isNormalUser = true;
- };
- networking.networkmanager.enable = true;
- hardware.pulseaudio = {
- enable = true;
- systemWide = true;
- };
- environment.systemPackages = with pkgs; [
- pavucontrol
- firefox
- hexchat
- networkmanagerapplet
- ];
- services.xserver.desktopManager.xfce = {
- enable = true;
- };
- }
- ];
-
- krebs.build.host = config.krebs.hosts.uriel;
- nixpkgs.config.allowUnfree = true;
-}
diff --git a/lass/1systems/uriel/physical.nix b/lass/1systems/uriel/physical.nix
deleted file mode 100644
index 82a08864..00000000
--- a/lass/1systems/uriel/physical.nix
+++ /dev/null
@@ -1,59 +0,0 @@
-{
- imports = [
- ./config.nix
- ];
-
- hardware.enableRedistributableFirmware = true;
- boot = {
- #kernelParams = [
- # "acpi.brightness_switch_enabled=0"
- #];
- #loader.grub.enable = true;
- #loader.grub.version = 2;
- #loader.grub.device = "/dev/sda";
-
- loader.systemd-boot.enable = true;
- loader.timeout = 5;
-
- initrd.luks.devices.luksroot.device = "/dev/sda2";
- initrd.luks.cryptoModules = [ "aes" "sha512" "sha1" "xts" ];
- initrd.availableKernelModules = [ "xhci_hcd" "ehci_pci" "ahci" "usb_storage" ];
- #kernelModules = [ "kvm-intel" "msr" ];
- kernelModules = [ "msr" ];
- };
- fileSystems = {
- "/" = {
- device = "/dev/pool/root";
- fsType = "ext4";
- };
-
- "/bku" = {
- device = "/dev/pool/bku";
- fsType = "ext4";
- };
-
- "/boot" = {
- device = "/dev/sda1";
- };
- "/tmp" = {
- device = "tmpfs";
- fsType = "tmpfs";
- options = ["nosuid" "nodev" "noatime"];
- };
- };
-
- services.udev.extraRules = ''
- SUBSYSTEM=="net", ATTR{address}=="64:27:37:7d:d8:ae", NAME="wl0"
- SUBSYSTEM=="net", ATTR{address}=="f0:de:f1:b8:c8:2e", NAME="et0"
- '';
-
- services.xserver.synaptics = {
- enable = true;
- twoFingerScroll = true;
- accelFactor = "0.035";
- additionalOptions = ''
- Option "FingerHigh" "60"
- Option "FingerLow" "60"
- '';
- };
-}
diff --git a/lass/2configs/bepasty.nix b/lass/2configs/bepasty.nix
deleted file mode 100644
index 9bd416c0..00000000
--- a/lass/2configs/bepasty.nix
+++ /dev/null
@@ -1,44 +0,0 @@
-{ config, pkgs, ... }:
-with import <stockholm/lib>;
-
-# secrets used:
-# wildcard.krebsco.de.crt
-# wildcard.krebsco.de.key
-# bepasty-secret.nix <- contains single string
-
-with import <stockholm/lib>;
-let
- secKey = import <secrets/bepasty-secret.nix>;
- ext-doms = [
- "paste.lassul.us"
- "paste.krebsco.de"
- ];
-in {
-
- services.nginx.enable = mkDefault true;
- krebs.bepasty = {
- enable = true;
- serveNginx= true;
-
- servers = {
- "paste.r" = {
- nginx = {
- serverAliases = [
- "paste.${config.krebs.build.host.name}"
- "paste.r"
- ];
- };
- defaultPermissions = "admin,list,create,read,delete";
- secretKey = secKey;
- };
- } //
- genAttrs ext-doms (ext-dom: {
- nginx = {
- forceSSL = true;
- enableACME = true;
- };
- defaultPermissions = "read,create";
- secretKey = secKey;
- });
- };
-}
diff --git a/lass/2configs/default.nix b/lass/2configs/default.nix
index eb38d0e9..1bcfb162 100644
--- a/lass/2configs/default.nix
+++ b/lass/2configs/default.nix
@@ -89,8 +89,6 @@ with import <stockholm/lib>;
services.timesyncd.enable = mkForce true;
- boot.tmpOnTmpfs = true;
-
# multiple-definition-problem when defining environment.variables.EDITOR
environment.extraInit = ''
EDITOR=vim
diff --git a/lass/2configs/green-host.nix b/lass/2configs/green-host.nix
index 355daba9..a83ed054 100644
--- a/lass/2configs/green-host.nix
+++ b/lass/2configs/green-host.nix
@@ -6,12 +6,12 @@
];
krebs.sync-containers.containers.green = {
peers = [
+ "echelon"
"icarus"
+ "littleT"
+ "mors"
"shodan"
"skynet"
- "mors"
- "morpheus"
- "littleT"
"styx"
];
hostIp = "10.233.2.15";
@@ -25,5 +25,9 @@
repo = "/var/lib/sync-containers/green/backup";
compression = "auto,lzma";
startAt = "daily";
+ prune.keep = {
+ daily = 7;
+ weekly = 4;
+ };
};
}
diff --git a/lass/2configs/mpv.nix b/lass/2configs/mpv.nix
index 210551a6..854af3eb 100644
--- a/lass/2configs/mpv.nix
+++ b/lass/2configs/mpv.nix
@@ -80,7 +80,12 @@ let
name = "mpv";
paths = [
(pkgs.writeDashBin "mpv" ''
- exec ${pkgs.mpv}/bin/mpv -vo=gpu --no-config --script=${autosub} "$@"
+ exec ${pkgs.mpv}/bin/mpv \
+ -vo=gpu \
+ --no-config \
+ --script=${autosub} \
+ --script-opts=ytdl_hook-ytdl_path=${pkgs.yt-dlp}/bin/yt-dlp \
+ "$@"
'')
pkgs.mpv
];
diff --git a/lass/2configs/murmur.nix b/lass/2configs/murmur.nix
index 9f325d0a..7cc4051a 100644
--- a/lass/2configs/murmur.nix
+++ b/lass/2configs/murmur.nix
@@ -16,7 +16,7 @@
StandardError = lib.mkForce "journal";
};
virtualisation.oci-containers.containers.mumble-web = {
- image = "rankenstein/mumble-web";
+ image = "rankenstein/mumble-web:0.5";
environment = {
MUMBLE_SERVER = "lassul.us:64738";
};
@@ -28,12 +28,9 @@
services.nginx.virtualHosts."mumble.lassul.us" = {
enableACME = true;
forceSSL = true;
- locations."/".extraConfig = ''
- proxy_pass http://localhost:64739/;
- proxy_set_header Accept-Encoding "";
- proxy_http_version 1.1;
- proxy_set_header Upgrade $http_upgrade;
- proxy_set_header Connection $connection_upgrade;
- '';
+ locations."/" = {
+ proxyPass = "http://localhost:64739";
+ proxyWebsockets = true;
+ };
};
}
diff --git a/lass/2configs/pass.nix b/lass/2configs/pass.nix
index 48070ea0..8ec3ac09 100644
--- a/lass/2configs/pass.nix
+++ b/lass/2configs/pass.nix
@@ -4,7 +4,15 @@
users.users.mainUser.packages = with pkgs; [
(pass.withExtensions (ext: [ ext.pass-otp ]))
gnupg
+ (pkgs.writers.writeDashBin "unlock" ''
+ set -efu
+ HOST=$1
+
+ pw=$(pass show "admin/$HOST/luks")
+ torify sshn root@$(pass "hosts/$HOST/initrd/hostname") "echo $pw > /crypt-ramfs/passphrase"
+ '')
];
programs.gnupg.agent.enable = true;
+
}
diff --git a/lass/2configs/prism-mounts/samba.nix b/lass/2configs/prism-mounts/samba.nix
new file mode 100644
index 00000000..4b1475ef
--- /dev/null
+++ b/lass/2configs/prism-mounts/samba.nix
@@ -0,0 +1,15 @@
+{
+ fileSystems."/mnt/prism" = {
+ device = "//prism.r/public";
+ fsType = "cifs";
+ options = [
+ "guest"
+ "nofail"
+ "noauto"
+ "ro"
+ "x-systemd.automount"
+ "x-systemd.device-timeout=1"
+ "x-systemd.idle-timeout=1min"
+ ];
+ };
+ }
diff --git a/lass/2configs/ts3.nix b/lass/2configs/ts3.nix
deleted file mode 100644
index d0cfdf47..00000000
--- a/lass/2configs/ts3.nix
+++ /dev/null
@@ -1,19 +0,0 @@
-{ config, ... }:
-
-{
- services.teamspeak3 = {
- enable = true;
- };
-
- krebs.iptables.tables.filter.INPUT.rules = [
- #voice port
- { predicate = "-p tcp --dport 9987"; target = "ACCEPT"; }
- { predicate = "-p udp --dport 9987"; target = "ACCEPT"; }
- ##file transfer port
- { predicate = "-p tcp --dport 30033"; target = "ACCEPT"; }
- { predicate = "-p udp --dport 30033"; target = "ACCEPT"; }
- ##query port
- #{ predicate = "-p tcp --dport 10011"; target = "ACCEPT"; }
- #{ predicate = "-p udp --dport 10011"; target = "ACCEPT"; }
- ];
-}
diff --git a/lass/2configs/vim.nix b/lass/2configs/vim.nix
index 0e4ac539..6c730efd 100644
--- a/lass/2configs/vim.nix
+++ b/lass/2configs/vim.nix
@@ -5,16 +5,6 @@ let
out = {
environment.systemPackages = [
(hiPrio vim)
- (pkgs.writeDashBin "govet" ''
- go vet "$@"
- '')
- (hiPrio (pkgs.python3.withPackages (ps: [
- ps.python-language-server
- ps.pyls-isort
- ps.pyflakes
- ps.flake8
- ps.yapf
- ])))
];
environment.etc.vimrc.source = vimrc;
@@ -126,11 +116,7 @@ let
'';
extra-runtimepath = concatMapStringsSep "," (pkg: "${pkg.rtp}") [
- pkgs.vimPlugins.ack-vim
pkgs.vimPlugins.undotree
- pkgs.vimPlugins.vim-go
- pkgs.vimPlugins.fzf-vim
- pkgs.vimPlugins.LanguageClient-neovim
(pkgs.vimUtils.buildVimPlugin {
name = "file-line-1.0";
src = pkgs.fetchFromGitHub {
diff --git a/lass/2configs/websites/domsen.nix b/lass/2configs/websites/domsen.nix
index 40f67537..3f055e37 100644
--- a/lass/2configs/websites/domsen.nix
+++ b/lass/2configs/websites/domsen.nix
@@ -82,7 +82,6 @@ in {
"o_ubikmedia_de"
];
- services.phpfpm.phpPackage = pkgs.php73;
services.phpfpm.phpOptions = ''
sendmail_path = ${sendmail} -t
upload_max_filesize = 100M
@@ -117,6 +116,13 @@ in {
# workaround for android 7
security.acme.certs."lassul.us".keyType = "rsa4096";
+ services.roundcube = {
+ enable = true;
+ hostName = "mail.lassul.us";
+ extraConfig = ''
+ $config['smtp_port'] = 25;
+ '';
+ };
services.dovecot2 = {
enable = true;
mailLocation = "maildir:~/Mail";
@@ -138,7 +144,7 @@ in {
driver = plaintext
public_name = LOGIN
server_prompts = "Username:: : Password::"
- server_condition = ''${run{${config.lass.usershadow.path}/bin/verify_arg ${config.lass.usershadow.pattern} $auth1 $auth2}{yes}{no}}
+ server_condition = ''${run{/run/wrappers/bin/shadow_verify_arg ${config.lass.usershadow.pattern} $auth1 $auth2}{yes}{no}}
'';
internet-aliases = [
{ from = "dma@ubikmedia.de"; to = "domsen"; }
@@ -317,6 +323,15 @@ in {
isNormalUser = true;
};
+ users.users.line = {
+ uid = genid_uint31 "line";
+ home = "/home/line";
+ useDefaultShell = true;
+ # extraGroups = [ "xanf" ];
+ createHome = true;
+ isNormalUser = true;
+ };
+
users.groups.xanf = {};
krebs.on-failure.plans.restic-backups-domsen = {
diff --git a/lass/3modules/klem.nix b/lass/3modules/klem.nix
index a297adcd..8536d967 100644
--- a/lass/3modules/klem.nix
+++ b/lass/3modules/klem.nix
@@ -38,7 +38,7 @@ in {
# match filetype against patterns
${concatMapStringsSep "\n" (script: ''
${pkgs.xclip}/bin/xclip -selection clipboard -target TARGETS -out \
- | grep -q '${script.target}'
+ | ${pkgs.gnugrep}/bin/grep -q '${script.target}'
if [ $? -eq 0 ]; then
labels="$labels:${script.label}"
fi
diff --git a/lass/krops.nix b/lass/krops.nix
index 128c9ee0..fe5c00f3 100644
--- a/lass/krops.nix
+++ b/lass/krops.nix
@@ -24,7 +24,7 @@
};
};
}
- (if (lib.pathExists (./. + "/1systems/${name}/source.nix")) && (! test) then
+ (if lib.pathExists (./. + "/1systems/${name}/source.nix") then
import (./. + "/1systems/${name}/source.nix") { inherit lib pkgs test; }
else
{}