Compare commits

...
19 Commits
Author SHA1 Message Date
Weckyy702 149877f31e Keith: Add NAPS2 for scanning 2026-08-03 21:38:28 +02:00
Weckyy702 b0a83e2ad5 Misc: Add nixfmt-tree and run nix fmt 2026-07-30 15:03:14 +02:00
Weckyy702 3831cc1540 Nixvim/lsp: Enable tinymist and typst 2026-07-30 15:01:27 +02:00
Weckyy702 3939a7c0cf Tux: Add Synchthing 2026-07-30 09:59:20 +02:00
Weckyy702 dc341b6644 Keith: remove spicetify 2026-07-26 12:55:10 +02:00
Weckyy702 8df7bf8925 SANE: Add sane for plug-and-play scanner support 2026-07-24 14:28:16 +02:00
Weckyy702 359526182e Add ZSA keyboard udev rules 2026-07-24 14:26:51 +02:00
Weckyy702 99cd12bbc6 Devtools: Add more default development tools for convenience 2026-07-11 13:20:36 +02:00
Weckyy702 1827e1e8d7 Audio: Use Pipewire for audio handling
this fixed some annyoing issues with multiple audio outputs
2026-07-11 13:15:27 +02:00
Weckyy702 82023d7721 Keith: Add Rust toolchain 2026-07-10 02:30:48 +02:00
Weckyy702 99966bc87f Keith/Weckyy702: Remove qbittorrent and add ashell 2026-06-24 23:23:25 +02:00
Weckyy702 ab75bec987 Hyprland: Add more keybinds for window and workspace handling 2026-06-24 23:23:03 +02:00
Weckyy702 5bb60f75e6 Keith: Update git config 2026-06-24 23:22:27 +02:00
Weckyy702 de577756a6 Services: Add sunshine for remote game streaming 2026-06-24 23:21:21 +02:00
Weckyy702 8712ea4baf Update .gitignore 2026-06-23 14:24:48 +02:00
Weckyy702 9c101ab211 Tux/Weckyy702: Clean up user specific modules
Generic modules should live in generic locations :^)
2026-06-23 14:24:22 +02:00
Weckyy702 7c83ca07de Git: Split git home-manager config into user-specific and machine-user specific parts 2026-06-23 14:16:36 +02:00
Weckyy702 46e85e815d Flake: Update dependencies 2026-06-20 04:14:30 +02:00
Weckyy702 3fa5ef2441 wpaperd+tux: Implement wallpaper switching by keybind
required using the unstable version of wpaperd
2026-06-20 04:13:28 +02:00
48 changed files with 345 additions and 165 deletions
+1
View File
@@ -0,0 +1 @@
result
Generated
+9 -9
View File
@@ -242,11 +242,11 @@
"systems": "systems_2"
},
"locked": {
"lastModified": 1781713927,
"narHash": "sha256-U18jyPH/pIx/YZlGv3FbcFw95NRFjQv4aDjlvxhUxNY=",
"lastModified": 1781915791,
"narHash": "sha256-LT1typkmETNVtWQncEByIR64ycmzZqxqtzZ5I9QkyTY=",
"owner": "nix-community",
"repo": "nixvim",
"rev": "110376ed06939ee0ccbcfce11e748064c00e666d",
"rev": "62019d53fd44f9fe20e3e20c891fbca567f3d331",
"type": "github"
},
"original": {
@@ -299,11 +299,11 @@
]
},
"locked": {
"lastModified": 1781752752,
"narHash": "sha256-kVG5tV9hddPviGAgqf9sGSuStvv+HAB9onfKqGptV0k=",
"lastModified": 1781850613,
"narHash": "sha256-UL/f++6fbg1MSC63NSynUVsww+DSay0N5TsbFzLZIsQ=",
"owner": "oxalica",
"repo": "rust-overlay",
"rev": "c06d86dabe5b92982b9d67acccb9990d58da3a0e",
"rev": "4baecb43a008cd004e5220a777e1724bd8d43e43",
"type": "github"
},
"original": {
@@ -397,11 +397,11 @@
]
},
"locked": {
"lastModified": 1781761091,
"narHash": "sha256-WfgNo6W1U7dwWZsdaAnoG62CXvvJDL+dXfUxnAS7WhU=",
"lastModified": 1781847955,
"narHash": "sha256-1OSYOGuJp/NoODmSHjsz+6TB/kSilJ+BsFihjY7TTnc=",
"owner": "youwen5",
"repo": "zen-browser-flake",
"rev": "e843542efbb7405141659d47bef211c9a8efbc54",
"rev": "4bca251cd556677f7b765ff324d1638ae215be13",
"type": "github"
},
"original": {
+9 -8
View File
@@ -1,13 +1,14 @@
{
config.flake.factory.mount-cifs =
{ host
, resource
, destination
, credentials_path
, UID
, GID
,
}: { pkgs, ... }: {
{
host,
resource,
destination,
credentials_path,
UID,
GID,
}:
{ pkgs, ... }: {
environment.systemPackages = with pkgs; [
cifs-utils
];
+6 -4
View File
@@ -1,10 +1,12 @@
{ self, ... }: {
config.flake.factory.user = username: isAdmin: {
nixos."${username}" =
{ lib
, pkgs
, ...
}: {
{
lib,
pkgs,
...
}:
{
users.users."${username}" = {
isNormalUser = true;
home = "/home/${username}";
+2 -1
View File
@@ -1,8 +1,9 @@
{
config.flake.factory.wpaperd = config: {
config.flake.factory.wpaperd = config: { pkgs, ... }: {
services.wpaperd = {
enable = true;
settings = config;
package = pkgs.unstable.wpaperd;
};
};
}
+6
View File
@@ -0,0 +1,6 @@
{
config.flake.factory.zsa-moonlander = user: { pkgs, ... }: {
users.users.${user}.extraGroups = [ "plugdev" ];
hardware.keyboard.zsa.enable = true;
};
}
+5
View File
@@ -0,0 +1,5 @@
{
perSystem = { pkgs, ... }: {
formatter = pkgs.nixfmt-tree;
};
}
+6 -2
View File
@@ -1,13 +1,17 @@
{ inputs, ... }: {
flake.modules.nixos.keith = {
imports = with inputs.self.modules.nixos;
with inputs.self.factory; [
imports =
with inputs.self.modules.nixos;
with inputs.self.factory;
[
system-desktop
(autologin "weckyy702")
(grub-boot "/dev/nvme0n1")
development-tools
i18n-de
mount-duke-smb
keith-devtools
# (sunshine "weckyy702")
#TODO: moar aspects
];
+11
View File
@@ -0,0 +1,11 @@
{ inputs, ... }: {
flake.modules.nixos.keith-devtools = {
imports =
with inputs.self.modules.nixos;
with inputs.self.factory;
[
development-tools
rust-dev
];
};
}
+8 -1
View File
@@ -5,7 +5,14 @@
amd-gpu
];
boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "ahci" "usbhid" "usb_storage" "sd_mod" ];
boot.initrd.availableKernelModules = [
"nvme"
"xhci_pci"
"ahci"
"usbhid"
"usb_storage"
"sd_mod"
];
nixpkgs.hostPlatform = "x86_64-linux";
hardware.cpu.amd.updateMicrocode = true;
+6 -4
View File
@@ -1,7 +1,9 @@
{ self
, inputs
, ...
}: {
{
self,
inputs,
...
}:
{
flake.modules.nixos.keith = { config, ... }: {
age.secrets.upsmon.file = "${inputs.secrets}/upsmon.age";
@@ -0,0 +1,5 @@
{
flake.modules.homeManager.keith-weckyy702-git = {
programs.git.signing.key = "/home/weckyy702/.ssh/id_ed25519";
};
}
@@ -4,22 +4,25 @@
weckyy702
steam
mullvad
naps2
];
home-manager.users.weckyy702 = { config, ... }: {
imports = with inputs.self.modules.homeManager;
with inputs.self.factory; [
imports =
with inputs.self.modules.homeManager;
with inputs.self.factory;
[
(wpaperd {
default = {
path = "${inputs.assets}/horizontal_16x9.png";
};
})
ashell
keith-weckyy702-git
vesktop
spicetify
borgmatic
qbittorrent
prusa-slicer
];
};
+4 -2
View File
@@ -1,7 +1,9 @@
{ inputs, ... }: {
flake.modules.nixos.tux-devtools = {
imports = with inputs.self.modules.nixos;
with inputs.self.factory; [
imports =
with inputs.self.modules.nixos;
with inputs.self.factory;
[
development-tools
rust-dev
+4 -1
View File
@@ -8,7 +8,10 @@
fileSystems."/boot" = {
device = "/dev/disk/by-uuid/15FA-55CF";
fsType = "vfat";
options = [ "fmask=0077" "dmask=0077" ];
options = [
"fmask=0077"
"dmask=0077"
];
};
swapDevices = [
+2 -2
View File
@@ -1,3 +1,3 @@
{ inputs, ...}: {
flake.nixosConfigurations = inputs.self.lib.mkNixos "x86_64-linux" "tux";
{ inputs, ... }: {
flake.nixosConfigurations = inputs.self.lib.mkNixos "x86_64-linux" "tux";
}
+11 -3
View File
@@ -4,9 +4,17 @@
intel-gpu
];
boot.initrd.availableKernelModules = [ "xhci_pci" "nvme" "usb_storage" "sd_mod" "sdhci_pci" ];
boot.initrd.luks.devices."luks-9d836ef1-a7f9-430f-8fb8-f202f6336e5a".device = "/dev/disk/by-uuid/9d836ef1-a7f9-430f-8fb8-f202f6336e5a";
boot.initrd.luks.devices."luks-46e78828-ab23-48b8-8e2a-de7a21adbe24".device = "/dev/disk/by-uuid/46e78828-ab23-48b8-8e2a-de7a21adbe24";
boot.initrd.availableKernelModules = [
"xhci_pci"
"nvme"
"usb_storage"
"sd_mod"
"sdhci_pci"
];
boot.initrd.luks.devices."luks-9d836ef1-a7f9-430f-8fb8-f202f6336e5a".device =
"/dev/disk/by-uuid/9d836ef1-a7f9-430f-8fb8-f202f6336e5a";
boot.initrd.luks.devices."luks-46e78828-ab23-48b8-8e2a-de7a21adbe24".device =
"/dev/disk/by-uuid/46e78828-ab23-48b8-8e2a-de7a21adbe24";
nixpkgs.hostPlatform = "x86_64-linux";
+4 -2
View File
@@ -1,7 +1,9 @@
{ inputs, ... }: {
flake.modules.nixos.tux = {
imports = with inputs.self.modules.nixos;
with inputs.self.factory; [
imports =
with inputs.self.modules.nixos;
with inputs.self.factory;
[
system-desktop
systemd-boot
bluetooth
@@ -0,0 +1,5 @@
{
flake.modules.homeManager.tux-weckyy702-git = {
programs.git.signing.key = "/home/weckyy702/.ssh/id_ed25519_github_sign";
};
}
@@ -7,8 +7,10 @@
];
home-manager.users.weckyy702 = {
imports = with inputs.self.modules.homeManager;
with inputs.self.factory; [
imports =
with inputs.self.modules.homeManager;
with inputs.self.factory;
[
borgmatic
obsidian
vesktop
@@ -18,6 +20,9 @@
blueman-applet
prusa-slicer
backlight
syncthing
tux-weckyy702-git
];
};
};
+6 -4
View File
@@ -1,7 +1,9 @@
{ inputs
, lib
, ...
}: {
{
inputs,
lib,
...
}:
{
# Helper functions for creating system / home-manager configurations
options.flake.lib = lib.mkOption {
+6 -4
View File
@@ -1,7 +1,9 @@
{ inputs
, config
, ...
}: {
{
inputs,
config,
...
}:
{
# Add home-manager input
flake-file.inputs = {
home-manager.url = "github:nix-community/home-manager/release-26.05";
+5 -5
View File
@@ -1,8 +1,8 @@
{
flake.modules.nixos.appimage = { pkgs, ...}: {
programs.appimage = {
enable = true;
binfmt = true;
};
flake.modules.nixos.appimage = { pkgs, ... }: {
programs.appimage = {
enable = true;
binfmt = true;
};
};
}
+25 -7
View File
@@ -1,9 +1,11 @@
{
flake.modules.homeManager.ashell =
{ config
, lib
, ...
}: {
{
config,
lib,
...
}:
{
programs.ashell = {
enable = true;
systemd.enable = true;
@@ -12,17 +14,33 @@
modules = {
left = [ "Workspaces" ];
center = [ "Clock" ];
right = [ "Tray" [ "SystemInfo" "Settings" ] ];
right = [
"Tray"
[
"SystemInfo"
"Settings"
]
];
};
system_info.indicators = [ "Cpu" "Memory" "Temperature" "DownloadSpeed" "UploadSpeed" ];
system_info.indicators = [
"Cpu"
"Memory"
"Temperature"
"DownloadSpeed"
"UploadSpeed"
];
settings.indicators = [ "Battery" ];
appearance = lib.mkIf config.catppuccin.enable {
success_color = "#a6e3a1";
text_color = "#cdd6f4";
workspace_colors = [ "#fab387" "#b4befe" "#cba6f7" ];
workspace_colors = [
"#fab387"
"#b4befe"
"#cba6f7"
];
primary_color = {
base = "#fab387";
+27 -32
View File
@@ -7,9 +7,10 @@
};
flake.modules.homeManager.browser =
{ pkgs
, lib
, ...
{
pkgs,
lib,
...
}:
let
mkExtension = shortId: guid: {
@@ -19,8 +20,7 @@
installation_mode = "normal_installed";
};
};
zen-pkg =
inputs.zen-browser.packages.${pkgs.stdenv.hostPlatform.system}.zen-browser-unwrapped;
zen-pkg = inputs.zen-browser.packages.${pkgs.stdenv.hostPlatform.system}.zen-browser-unwrapped;
prefs = {
"zen.tabs.vertical.right-side" = true;
@@ -55,35 +55,30 @@
in
{
home.packages = [
(
pkgs.wrapFirefox zen-pkg
{
extraPrefs = lib.concatLines (
lib.mapAttrsToList
(
name: value: ''lockPref(${lib.strings.toJSON name}, ${lib.strings.toJSON value});''
)
prefs
);
(pkgs.wrapFirefox zen-pkg {
extraPrefs = lib.concatLines (
lib.mapAttrsToList (
name: value: "lockPref(${lib.strings.toJSON name}, ${lib.strings.toJSON value});"
) prefs
);
extraPolicies = {
DisableTelemetry = true;
ExtensionSettings = builtins.listToAttrs extensions;
extraPolicies = {
DisableTelemetry = true;
ExtensionSettings = builtins.listToAttrs extensions;
SearchEngines = {
Default = "ddg";
Add = [
{
Name = "nixpkgs packages";
URLTemplate = "https://search.nixos.org/packages?query={searchTerms}";
IconURL = "https://wiki.nixos.org/favicon.ico";
Alias = "@np";
}
];
};
};
}
)
SearchEngines = {
Default = "ddg";
Add = [
{
Name = "nixpkgs packages";
URLTemplate = "https://search.nixos.org/packages?query={searchTerms}";
IconURL = "https://wiki.nixos.org/favicon.ico";
Alias = "@np";
}
];
};
};
})
];
};
}
+3 -3
View File
@@ -38,9 +38,9 @@
hyprcursor.size = size;
};
# wayland.windowManager.hyprland.settings.exec-once = [
# "hyprctl setcursor catppuccin-mocha-mauve-cursors 24"
# ];
# wayland.windowManager.hyprland.settings.exec-once = [
# "hyprctl setcursor catppuccin-mocha-mauve-cursors 24"
# ];
catppuccin.enable = true;
# Required for QT apps to use the catppuccin colors
@@ -5,6 +5,10 @@
gnumake
clang
gcc
gdb
perf
python3
libqalculate
man-pages
man-pages-posix
+3 -6
View File
@@ -4,11 +4,8 @@
enable = true;
autoPrune.enable = true;
};
users.users =
lib.genAttrs
users
(_: {
extraGroups = [ "docker" ];
});
users.users = lib.genAttrs users (_: {
extraGroups = [ "docker" ];
});
};
}
@@ -10,7 +10,8 @@
};
};
flake.modules.homeManager.randomized-aghpb-wallpaper = { pkgs, ... }:
flake.modules.homeManager.randomized-aghpb-wallpaper =
{ pkgs, ... }:
let
combined_wallpapers = pkgs.symlinkJoin {
name = "joined-wallpapers";
@@ -32,8 +33,9 @@
})
];
# wayland.windowManager.hyprland.settings.bind = {
# _args "$mod, i, exec, wpaperctl next"
# };
wayland.windowManager.hyprland.extraConfig = ''
hl.bind("SUPER + i", hl.dsp.exec_cmd("${pkgs.unstable.wpaperd}/bin/wpaperctl next"))
hl.bind("SUPER + o", hl.dsp.exec_cmd("${pkgs.unstable.wpaperd}/bin/wpaperctl set ${inputs.assets}/horizontal_16x9.png"))
'';
};
}
-17
View File
@@ -2,21 +2,4 @@
flake.modules.nixos.git = { pkgs, ... }: {
environment.systemPackages = [ pkgs.git ];
};
flake.modules.homeManager.git = {
programs.git = {
enable = true;
settings = {
user = {
email = "konstantin@veltko.de";
name = "Weckyy702";
};
init.defaultBranch = "main";
};
signing = {
format = "ssh";
signByDefault = true;
};
};
};
}
+7
View File
@@ -63,6 +63,10 @@ hl.bind(mod .. " + H", hl.dsp.focus({ direction = "left" }))
hl.bind(mod .. " + L", hl.dsp.focus({ direction = "right" }))
hl.bind(mod .. " + K", hl.dsp.focus({ direction = "up" }))
hl.bind(mod .. " + J", hl.dsp.focus({ direction = "down" }))
hl.bind(mod .. " + SHIFT + H", hl.dsp.window.move({ direction = "left", group_aware = true, }))
hl.bind(mod .. " + SHIFT + L", hl.dsp.window.move({ direction = "right", group_aware = true, }))
hl.bind(mod .. " + SHIFT + K", hl.dsp.window.move({ direction = "up", group_aware = true, }))
hl.bind(mod .. " + SHIFT + J", hl.dsp.window.move({ direction = "down", group_aware = true, }))
hl.bind(mod .. " + mouse:272", hl.dsp.window.drag(), { mouse = true })
hl.bind(mod .. " + mouse:273", hl.dsp.window.resize(), { mouse = true })
@@ -79,6 +83,9 @@ hl.gesture({
action = "workspace"
})
hl.bind(mod .. " + CTRL + H", hl.dsp.workspace.move({ monitor = "l" }))
hl.bind(mod .. " + CTRL + L", hl.dsp.workspace.move({ monitor = "r" }))
--- Media handling
hl.bind("XF86AudioRaiseVolume", hl.dsp.exec_cmd("wpctl set-volume -l 1 @DEFAULT_AUDIO_SINK@ 5%+"), { locked = true, repeating = true })
hl.bind("XF86AudioLowerVolume", hl.dsp.exec_cmd("wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-"), { locked = true, repeating = true })
+10
View File
@@ -0,0 +1,10 @@
{ self, ... }: {
flake.modules.nixos.naps2 = { pkgs, ... }: {
imports = with self.modules.nixos; [
sane
];
environment.systemPackages = with pkgs; [
naps2
];
};
}
@@ -23,6 +23,7 @@
basedpyright.enable = true;
emmet_ls.enable = true;
tinymist.enable = true;
};
keymaps = [
@@ -36,4 +37,7 @@
plugins.lspconfig.enable = true;
plugins.clangd-extensions.enable = true;
plugins.typst-vim = {
enable = true;
};
}
+2 -1
View File
@@ -1,5 +1,6 @@
{ inputs, ... }: {
flake.modules.homeManager.backlight = { pkgs, ... }:
flake.modules.homeManager.backlight =
{ pkgs, ... }:
let
brightnessctl = "${pkgs.brightnessctl}/bin/brightnessctl";
in
+6 -5
View File
@@ -1,10 +1,11 @@
{
flake.modules.homeManager.borgmatic =
{ config
, osConfig
, pkgs
, lib
, ...
{
config,
osConfig,
pkgs,
lib,
...
}:
let
hostname = osConfig.networking.hostName;
+5 -5
View File
@@ -1,7 +1,7 @@
{
flake.modules.nixos.networkmanager = {
networking.networkmanager = {
enable = true;
};
};
flake.modules.nixos.networkmanager = {
networking.networkmanager = {
enable = true;
};
};
}
+6 -1
View File
@@ -1,8 +1,13 @@
{
flake.modules.nixos.pipewire = {
# See https://nixos.wiki/wiki/NixOS_Wiki:Audio
hardware.alsa.enable = false;
services.pulseaudio.enable = false;
security.rtkit.enable = true;
services.pipewire = {
alsa.enable = true;
enable = true;
audio.enable = true;
alsa.enable = true;
wireplumber.enable = true;
};
};
+5
View File
@@ -0,0 +1,5 @@
{
flake.modules.nixos.sane = {
hardware.sane.enable = true;
};
}
+25
View File
@@ -0,0 +1,25 @@
{
config.flake.factory.sunshine = user: {
services.sunshine = {
enable = true;
autoStart = true;
capSysAdmin = true;
applications = {
apps = [
{
name = "Steam Big Picture";
detached = [
"sudo -u ${user} setsid steam steam://open/bigpicture"
];
prep-cmd = [
{
do = "";
undo = "sudo -u ${user} setsid steam steam://close/bigpicture";
}
];
}
];
};
};
};
}
+10
View File
@@ -0,0 +1,10 @@
{
flake.modules.homeManager.syncthing = {
services.syncthing = {
enable = true;
overrideDevices = false;
overrideFolders = false;
settings.options.localAnnounceEnabled = true;
};
};
}
+11 -11
View File
@@ -1,15 +1,15 @@
{
flake.modules.nixos.intel-gpu = {pkgs, ...}: {
boot.kernelModules = [ "kvm-intel" ];
flake.modules.nixos.intel-gpu = { pkgs, ... }: {
boot.kernelModules = [ "kvm-intel" ];
hardware.graphics = {
enable = true;
extraPackages = with pkgs; [
intel-media-driver
intel-compute-runtime
];
};
hardware.graphics = {
enable = true;
extraPackages = with pkgs; [
intel-media-driver
intel-compute-runtime
];
};
environment.sessionVariables.LIBVA_DRIVER_NAME = "iHD";
};
environment.sessionVariables.LIBVA_DRIVER_NAME = "iHD";
};
}
+4 -4
View File
@@ -1,6 +1,6 @@
{
flake.modules.nixos.systemd-boot = {
boot.loader.systemd-boot.enable = true;
boot.loader.efi.canTouchEfiVariables = true;
};
flake.modules.nixos.systemd-boot = {
boot.loader.systemd-boot.enable = true;
boot.loader.efi.canTouchEfiVariables = true;
};
}
+2
View File
@@ -3,6 +3,8 @@
imports = with inputs.self.modules.nixos; [
system-base
hyprland
pipewire
sane
#TODO: moar aspects
];
+19
View File
@@ -0,0 +1,19 @@
{
flake.modules.homeManager.weckyy702-git = {
programs.git = {
enable = true;
settings = {
user = {
email = "konstantin@veltko.de";
name = "Weckyy702";
};
init.defaultBranch = "main";
};
signing = {
# NOTE: The signing key needs to be set per machine, see hosts/<name>/users/weckyy702/git.nix
format = "ssh";
signByDefault = true;
};
};
};
}
+22 -10
View File
@@ -1,26 +1,38 @@
{ inputs
, self
, lib
, ...
}: {
{
inputs,
self,
lib,
...
}:
{
flake.homeConfigurations = inputs.self.lib.mkHomeManager "x86_64-linux" "weckyy702";
flake.modules = lib.mkMerge [
(self.factory.user "weckyy702" true)
{
nixos.weckyy702 = {
imports = with self.modules.nixos; [
kanata
catppuccin
];
imports =
with self.modules.nixos;
with self.factory;
[
kanata
catppuccin
(zsa-moonlander "weckyy702")
];
users.users.weckyy702.extraGroups = [ "networkmanager" "dialout" ];
users.users.weckyy702.extraGroups = [
"networkmanager"
"dialout"
"scanner"
];
};
homeManager.weckyy702 = { pkgs, ... }: {
imports = with self.modules.homeManager; [
nixvim
btop
weckyy702-git
#TODO: moar aspects
];
};
+4 -1
View File
@@ -4,7 +4,10 @@ let
keith = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIKrauXP79zUm2FlVj3HRm+C8ufYAABiIoe68OCGbIm+2";
tux = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIFB7bh6ioZrTSR0AkKvJ1qxVWX0kwcM8yeHghTYFGpqZ";
systems = [ keith tux ];
systems = [
keith
tux
];
in
{
"nas-creds.age" = {