From 763960c0e611afb7f29181d83024893b1b4e5336 Mon Sep 17 00:00:00 2001 From: JuliusFreudenberger Date: Sat, 13 Jun 2026 23:44:14 +0200 Subject: [PATCH 01/12] Enable KSM on busch This hopefully reduces RAM usage when having multiple VMs with the same OS. --- hosts/busch/default.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/hosts/busch/default.nix b/hosts/busch/default.nix index 3c55b48..62a43a9 100644 --- a/hosts/busch/default.nix +++ b/hosts/busch/default.nix @@ -87,6 +87,8 @@ memoryPercent = 50; }; + hardware.ksm.enable = true; # Linux kernel Same-Page Merging, useful when having multiple VMs with same OS + networking.useDHCP = false; systemd.network = { From 7d45fe15349b2e700183ccbc7106c5c7383e7ee3 Mon Sep 17 00:00:00 2001 From: JuliusFreudenberger Date: Sun, 14 Jun 2026 01:08:20 +0200 Subject: [PATCH 02/12] nixos: 25.11 -> 26.05 --- flake.lock | 34 +++++++++++++++++----------------- flake.nix | 4 ++-- home/gtk/default.nix | 1 + home/neovim/default.nix | 2 ++ home/xdg/default.nix | 5 ++++- home/zsh/default.nix | 2 ++ modules/cli-essentials.nix | 2 +- modules/desktop-essentials.nix | 4 ++-- modules/i3.nix | 4 ++-- pkgs/nemo-engrampa/default.nix | 4 ++-- 10 files changed, 35 insertions(+), 27 deletions(-) diff --git a/flake.lock b/flake.lock index 1c1d638..88d0a3d 100644 --- a/flake.lock +++ b/flake.lock @@ -65,11 +65,11 @@ ] }, "locked": { - "lastModified": 1780290312, - "narHash": "sha256-eTAlX0CwgB84Ts3GaBd944A3DRXVMzgA0EqroZBISUo=", + "lastModified": 1781152676, + "narHash": "sha256-RxWs5ND31KzTG7wvMM+PMfUjyNpmIEr999lqNARaM5o=", "owner": "nix-community", "repo": "disko", - "rev": "115e5211780054d8a890b41f0b7734cafad54dfe", + "rev": "ff8702b4de27f72b4c78573dfb89ec74e36abdf1", "type": "github" }, "original": { @@ -197,16 +197,16 @@ ] }, "locked": { - "lastModified": 1779506708, - "narHash": "sha256-QOD/CNm196nCJRheux/URi4/HE66fthdOMqCJoPP1Y0=", + "lastModified": 1781319724, + "narHash": "sha256-ZGuxexEMo4Xv28KJ0dX/m/PHN4oZIOnxHZpNTyrvx4M=", "owner": "nix-community", "repo": "home-manager", - "rev": "3ee51fbdac8c8bdfe1e7e1fcaba6520a563f394f", + "rev": "8355f0a16b2dbb06a97959a918af5b239bbe05ae", "type": "github" }, "original": { "owner": "nix-community", - "ref": "release-25.11", + "ref": "release-26.05", "repo": "home-manager", "type": "github" } @@ -261,11 +261,11 @@ "nixpkgs": "nixpkgs" }, "locked": { - "lastModified": 1780310866, - "narHash": "sha256-fPBRVf6A5xlACYcOI59shGrjURuvwu0lRsDoSCEXt/I=", + "lastModified": 1781168557, + "narHash": "sha256-LOnLQ2tpYF9gqIDDr3+j3DbpJJr/QCH6zPRT2GzEUOE=", "owner": "NixOS", "repo": "nixos-hardware", - "rev": "4ed851c979641e28597a05086332d75cdc9e395f", + "rev": "6358ff76821101c178e3ab4919a62799bfe3652e", "type": "github" }, "original": { @@ -338,11 +338,11 @@ }, "nixpkgs-unstable": { "locked": { - "lastModified": 1780243769, - "narHash": "sha256-x5UQuRsH3MqI0U9afaXSNqzTPSeZlRLvFAav2Ux1pNw=", + "lastModified": 1781074563, + "narHash": "sha256-md8WlXOlfnIeHeOScMTTHFyf2d6iaTwPl2apR5EQ3P4=", "owner": "nixos", "repo": "nixpkgs", - "rev": "331800de5053fcebacf6813adb5db9c9dca22a0c", + "rev": "9ae611a455b90cf061d8f332b977e387bda8e1ca", "type": "github" }, "original": { @@ -354,16 +354,16 @@ }, "nixpkgs_2": { "locked": { - "lastModified": 1780511130, - "narHash": "sha256-2v9lT4ya59Lh1FqPeLnz1MoX9y/wz2huqfe9RtQZITk=", + "lastModified": 1781216227, + "narHash": "sha256-9mUW6gNwoN2SWc/l0fW4svPNOulXLl8ijqKyeSOGgJE=", "owner": "nixos", "repo": "nixpkgs", - "rev": "535f3e6942cb1cead3929c604320d3db54b542b9", + "rev": "a0374025a863d007d98e3297f6aa46cc3141c2f0", "type": "github" }, "original": { "owner": "nixos", - "ref": "nixos-25.11", + "ref": "nixos-26.05", "repo": "nixpkgs", "type": "github" } diff --git a/flake.nix b/flake.nix index fe2e6da..d929025 100644 --- a/flake.nix +++ b/flake.nix @@ -12,10 +12,10 @@ inputs = { nixpkgs-unstable.url = "github:nixos/nixpkgs/nixos-unstable"; - nixpkgs.url = "github:nixos/nixpkgs/nixos-25.11"; + nixpkgs.url = "github:nixos/nixpkgs/nixos-26.05"; nixos-hardware.url = "github:NixOS/nixos-hardware/master"; home-manager = { - url = "github:nix-community/home-manager/release-25.11"; + url = "github:nix-community/home-manager/release-26.05"; inputs.nixpkgs.follows = "nixpkgs"; }; auto-cpufreq = { diff --git a/home/gtk/default.nix b/home/gtk/default.nix index 626ebbe..17ce9c3 100644 --- a/home/gtk/default.nix +++ b/home/gtk/default.nix @@ -6,5 +6,6 @@ name = "Arc"; package = pkgs.arc-icon-theme; }; + gtk4.theme = null; }; } diff --git a/home/neovim/default.nix b/home/neovim/default.nix index 70a52ce..bfe616b 100644 --- a/home/neovim/default.nix +++ b/home/neovim/default.nix @@ -7,6 +7,8 @@ viAlias = true; vimdiffAlias = true; withNodeJs = true; + withRuby = false; + withPython3 = false; coc.enable = true; plugins = with pkgs.vimPlugins; [ vim-gitgutter diff --git a/home/xdg/default.nix b/home/xdg/default.nix index fbd1711..4570621 100644 --- a/home/xdg/default.nix +++ b/home/xdg/default.nix @@ -15,6 +15,9 @@ "text/calendar" = ["thunderbird.desktop"]; }; }; - userDirs.enable = true; + userDirs = { + enable = true; + setSessionVariables = false; + }; }; } diff --git a/home/zsh/default.nix b/home/zsh/default.nix index ece5c8e..01f522f 100644 --- a/home/zsh/default.nix +++ b/home/zsh/default.nix @@ -26,6 +26,8 @@ history.size = 10000; history.path = "$HOME/.zsh_history"; + dotDir = config.home.homeDirectory; + initContent = lib.mkMerge [ beforeCompInit defaultInit ]; }; } diff --git a/modules/cli-essentials.nix b/modules/cli-essentials.nix index faa63dc..2fb4dca 100644 --- a/modules/cli-essentials.nix +++ b/modules/cli-essentials.nix @@ -8,7 +8,7 @@ wget curl git - neofetch + fastfetch bat tealdeer diff --git a/modules/desktop-essentials.nix b/modules/desktop-essentials.nix index ea0d424..74452f8 100644 --- a/modules/desktop-essentials.nix +++ b/modules/desktop-essentials.nix @@ -15,10 +15,10 @@ pavucontrol xed-editor - mate.mate-calc + mate-calc xarchiver - mate.engrampa + engrampa nemo-with-nextcloud-extensions ]; diff --git a/modules/i3.nix b/modules/i3.nix index 9540221..7ba88ce 100644 --- a/modules/i3.nix +++ b/modules/i3.nix @@ -26,10 +26,10 @@ dex # autostart applications xbindkeys # bind keys to commands xclip - xorg.xbacklight # control screen brightness + xbacklight # control screen brightness brightnessctl numlockx - xorg.xdpyinfo # get screen information + xdpyinfo # get screen information sysstat # get system information scrot diff --git a/pkgs/nemo-engrampa/default.nix b/pkgs/nemo-engrampa/default.nix index 9dd6aaf..a576f21 100644 --- a/pkgs/nemo-engrampa/default.nix +++ b/pkgs/nemo-engrampa/default.nix @@ -8,7 +8,7 @@ glib, gtk3, nemo, - mate, + engrampa, cinnamon-translations, }: @@ -44,7 +44,7 @@ stdenv.mkDerivation rec { done popd substituteInPlace src/nemo-engrampa.c \ - --replace-fail "file-roller" "${lib.getExe mate.engrampa}" \ + --replace-fail "file-roller" "${lib.getExe engrampa}" \ --replace-fail "fileroller" "engrampa" \ --replace-fail "FileRoller" "Engrampa" \ --replace-quiet "GNOMELOCALEDIR" "${cinnamon-translations}/share/locale" From 87166601cd6057899c5b6d3953c10d66d4a97fbb Mon Sep 17 00:00:00 2001 From: JuliusFreudenberger Date: Sun, 14 Jun 2026 01:09:03 +0200 Subject: [PATCH 03/12] Enable lanzaboote on julius-framework --- flake.nix | 1 + hosts/julius-framework/default.nix | 7 +++++-- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/flake.nix b/flake.nix index d929025..2811507 100644 --- a/flake.nix +++ b/flake.nix @@ -96,6 +96,7 @@ modules = [ nixos-hardware.nixosModules.framework-11th-gen-intel auto-cpufreq.nixosModules.default + lanzaboote.nixosModules.lanzaboote ./hosts/julius-framework ./users/julius/nixos.nix diff --git a/hosts/julius-framework/default.nix b/hosts/julius-framework/default.nix index 1719e36..9292f2d 100644 --- a/hosts/julius-framework/default.nix +++ b/hosts/julius-framework/default.nix @@ -75,10 +75,13 @@ loader = { efi.canTouchEfiVariables = true; systemd-boot = { - enable = true; - editor = false; + enable = false; # Enabled by lanzaboote }; }; + lanzaboote = { + enable = true; + pkiBundle = "/var/lib/sbctl"; + }; initrd = { systemd.enable = true; luks.devices = { From 9c993f204e165165d676587a82010ba4f4057472 Mon Sep 17 00:00:00 2001 From: JuliusFreudenberger Date: Mon, 15 Jun 2026 08:05:53 +0200 Subject: [PATCH 04/12] Use netbird from nixpkgs stable again Version in 26.05 is recent enough, so including unstable into the closure is not necessary anymore. --- flake.nix | 3 --- hosts/busch-gpu-docker/default.nix | 2 +- hosts/busch-main-docker/default.nix | 2 +- hosts/julius-framework/default.nix | 3 +-- modules/netbird-client.nix | 2 -- 5 files changed, 3 insertions(+), 9 deletions(-) diff --git a/flake.nix b/flake.nix index 2811507..fa2dae3 100644 --- a/flake.nix +++ b/flake.nix @@ -88,9 +88,6 @@ specialArgs = { inherit inputs outputs username; - pkgs-unstable = import nixpkgs-unstable { - inherit system; - }; }; modules = [ diff --git a/hosts/busch-gpu-docker/default.nix b/hosts/busch-gpu-docker/default.nix index a31b2e3..b2dbb93 100644 --- a/hosts/busch-gpu-docker/default.nix +++ b/hosts/busch-gpu-docker/default.nix @@ -1,4 +1,4 @@ -{ inputs, outputs, config, lib, pkgs, pkgs-unstable, ... }: +{ inputs, outputs, config, lib, pkgs, ... }: { imports = diff --git a/hosts/busch-main-docker/default.nix b/hosts/busch-main-docker/default.nix index 6df1d21..efe3299 100644 --- a/hosts/busch-main-docker/default.nix +++ b/hosts/busch-main-docker/default.nix @@ -1,4 +1,4 @@ -{ inputs, outputs, config, lib, pkgs, pkgs-unstable, ... }: +{ inputs, outputs, config, lib, pkgs, ... }: { imports = diff --git a/hosts/julius-framework/default.nix b/hosts/julius-framework/default.nix index 9292f2d..b3c7505 100644 --- a/hosts/julius-framework/default.nix +++ b/hosts/julius-framework/default.nix @@ -2,7 +2,7 @@ # your system. Help is available in the configuration.nix(5) man page # and in the NixOS manual (accessible by running ‘nixos-help’). -{ inputs, outputs, config, pkgs, pkgs-unstable, ... }: +{ inputs, outputs, config, pkgs, ... }: { imports = @@ -51,7 +51,6 @@ services.resolved.enable = true; services.netbird = { - package = pkgs-unstable.netbird; useRoutingFeatures = "client"; clients.wt0 = { hardened = true; diff --git a/modules/netbird-client.nix b/modules/netbird-client.nix index 8477d00..897a192 100644 --- a/modules/netbird-client.nix +++ b/modules/netbird-client.nix @@ -1,6 +1,5 @@ { pkgs, - pkgs-unstable, utils, config, lib, @@ -46,7 +45,6 @@ in { config = lib.mkIf cfg.enable { services.netbird = { - package = pkgs-unstable.netbird; useRoutingFeatures = "both"; clients.wt0 = { hardened = false; From 102ab7f4190beaa52b444ab0ca071e99546549cb Mon Sep 17 00:00:00 2001 From: JuliusFreudenberger Date: Mon, 15 Jun 2026 08:08:33 +0200 Subject: [PATCH 05/12] Match hostname of busch vms to nixosConfiguration system name Different hostnames broke auto upgrade. --- hosts/busch-gpu-docker/default.nix | 2 +- hosts/busch-main-docker/default.nix | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/hosts/busch-gpu-docker/default.nix b/hosts/busch-gpu-docker/default.nix index b2dbb93..bfd65f6 100644 --- a/hosts/busch-gpu-docker/default.nix +++ b/hosts/busch-gpu-docker/default.nix @@ -40,7 +40,7 @@ nixpkgs.config.nvidia.acceptLicense = true; services.xserver.videoDrivers = [ "nvidia" ]; - networking.hostName = "docker-gpu"; # Define your hostname. + networking.hostName = "busch-gpu-docker"; # Define your hostname. services.netbird-client = { enable = true; diff --git a/hosts/busch-main-docker/default.nix b/hosts/busch-main-docker/default.nix index efe3299..32de2d4 100644 --- a/hosts/busch-main-docker/default.nix +++ b/hosts/busch-main-docker/default.nix @@ -28,7 +28,7 @@ }; tmp.useTmpfs = true; }; - networking.hostName = "docker-main"; # Define your hostname. + networking.hostName = "busch-main-docker"; # Define your hostname. services.netbird-client = { enable = true; From 0fe9fc4950ccc53f20aebe224674d9f083f5dfe1 Mon Sep 17 00:00:00 2001 From: JuliusFreudenberger Date: Thu, 18 Jun 2026 01:24:55 +0200 Subject: [PATCH 06/12] Add qemu-guest module to vms --- hosts/busch-gpu-docker/default.nix | 1 + hosts/busch-main-docker/default.nix | 1 + 2 files changed, 2 insertions(+) diff --git a/hosts/busch-gpu-docker/default.nix b/hosts/busch-gpu-docker/default.nix index bfd65f6..1a6b6c4 100644 --- a/hosts/busch-gpu-docker/default.nix +++ b/hosts/busch-gpu-docker/default.nix @@ -8,6 +8,7 @@ ../../users/julius/nixos-server.nix ../../modules/nix.nix + ../../modules/qemu-guest.nix ../../modules/auto-upgrade.nix ../../modules/locale.nix ../../modules/server-cli.nix diff --git a/hosts/busch-main-docker/default.nix b/hosts/busch-main-docker/default.nix index 32de2d4..cdb13bc 100644 --- a/hosts/busch-main-docker/default.nix +++ b/hosts/busch-main-docker/default.nix @@ -9,6 +9,7 @@ ../../users/julius/nixos-server.nix ../../modules/nix.nix ../../modules/auto-upgrade.nix + ../../modules/qemu-guest.nix ../../modules/locale.nix ../../modules/server-cli.nix ../../modules/sshd.nix From 8325d3d86a45461868bd48cd8ea5685f77c9c6c7 Mon Sep 17 00:00:00 2001 From: JuliusFreudenberger Date: Thu, 18 Jun 2026 01:25:19 +0200 Subject: [PATCH 07/12] Remove pkgs-unstable as specialArgs in flake.nix --- flake.nix | 6 ------ 1 file changed, 6 deletions(-) diff --git a/flake.nix b/flake.nix index fa2dae3..766bf60 100644 --- a/flake.nix +++ b/flake.nix @@ -150,9 +150,6 @@ specialArgs = { inherit inputs outputs; - pkgs-unstable = import nixpkgs-unstable { - inherit system; - }; }; modules = [ @@ -167,9 +164,6 @@ specialArgs = { inherit inputs outputs; - pkgs-unstable = import nixpkgs-unstable { - inherit system; - }; }; modules = [ From e5757374d265135eebc5fcfba2ae3efb02f79ce9 Mon Sep 17 00:00:00 2001 From: JuliusFreudenberger Date: Thu, 18 Jun 2026 01:26:44 +0200 Subject: [PATCH 08/12] Make host and docker setupKeys optional for netbird-client module --- modules/netbird-client.nix | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/modules/netbird-client.nix b/modules/netbird-client.nix index 897a192..05141e7 100644 --- a/modules/netbird-client.nix +++ b/modules/netbird-client.nix @@ -15,7 +15,8 @@ let options = { setupKey = lib.mkOption { description = "Setup Key for this client"; - type = lib.types.str; + type = lib.types.nullOr lib.types.str; + default = null; }; }; }; @@ -44,7 +45,7 @@ in { }; config = lib.mkIf cfg.enable { - services.netbird = { + services.netbird = lib.mkIf (cfg.host.setupKey != null) { useRoutingFeatures = "both"; clients.wt0 = { hardened = false; @@ -60,9 +61,9 @@ in { }; systemd.services.${config.services.netbird.clients.wt0.service.name}.path = [ pkgs.shadow ]; - services.resolved.enable = true; + services.resolved.enable = lib.mkIf (cfg.host.setupKey != null) true; - virtualisation.oci-containers.containers = { + virtualisation.oci-containers.containers = lib.mkIf (cfg.docker.setupKey != null) { netbird = { image = "netbirdio/netbird:${clientVersion}-rootless"; autoStart = true; @@ -81,7 +82,7 @@ in { }; }; - systemd.services."docker-netbird" = { + systemd.services."docker-netbird" = lib.mkIf (cfg.docker.setupKey != null) { after = [ "docker-network-webproxy.service" ]; @@ -91,7 +92,7 @@ in { }; - systemd.services."docker-network-webproxy" = { + systemd.services."docker-network-webproxy" = lib.mkIf (cfg.docker.setupKey != null) { path = [ pkgs.docker_29 ]; serviceConfig = { Type = "oneshot"; From f7a7a84e498a78062fc171114089fe324a6e556d Mon Sep 17 00:00:00 2001 From: JuliusFreudenberger Date: Thu, 18 Jun 2026 01:27:01 +0200 Subject: [PATCH 09/12] Remove pkgs.shadow for netbird client This was incorporated in release 26.05. --- modules/netbird-client.nix | 1 - 1 file changed, 1 deletion(-) diff --git a/modules/netbird-client.nix b/modules/netbird-client.nix index 05141e7..b7f6267 100644 --- a/modules/netbird-client.nix +++ b/modules/netbird-client.nix @@ -59,7 +59,6 @@ in { }; }; }; - systemd.services.${config.services.netbird.clients.wt0.service.name}.path = [ pkgs.shadow ]; services.resolved.enable = lib.mkIf (cfg.host.setupKey != null) true; From 2945488b18db84ebebc37a67fa95e4dbacb76f4d Mon Sep 17 00:00:00 2001 From: JuliusFreudenberger Date: Thu, 18 Jun 2026 01:27:50 +0200 Subject: [PATCH 10/12] netbird: 0.7{1,2}.2 -> 0.72.4 --- modules/netbird-client.nix | 2 +- modules/netbird-docker.nix | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/modules/netbird-client.nix b/modules/netbird-client.nix index b7f6267..200984f 100644 --- a/modules/netbird-client.nix +++ b/modules/netbird-client.nix @@ -9,7 +9,7 @@ let cfg = config.services.netbird-client; - clientVersion = "0.71.2"; + clientVersion = "0.72.4"; clientConfiguration = lib.types.submodule { options = { diff --git a/modules/netbird-docker.nix b/modules/netbird-docker.nix index 9792bb4..a8faeb3 100644 --- a/modules/netbird-docker.nix +++ b/modules/netbird-docker.nix @@ -10,7 +10,7 @@ let cfg = config.services.netbird-docker; netbirdCfg = config.services.netbird; - serverVersion = "0.72.2"; + serverVersion = "0.72.4"; dashboardVersion = "2.39.0"; in { From 4250c76fde19405be3e17c72189ba11d13698de0 Mon Sep 17 00:00:00 2001 From: JuliusFreudenberger Date: Thu, 18 Jun 2026 01:28:44 +0200 Subject: [PATCH 11/12] Add vm busch-nixos-native --- flake.lock | 8 +- flake.nix | 14 ++++ hosts/busch-nixos-native/default.nix | 73 +++++++++++++++++++ .../hardware-configuration.nix | 17 +++++ hosts/busch-nixos-native/secrets.nix | 8 ++ 5 files changed, 116 insertions(+), 4 deletions(-) create mode 100644 hosts/busch-nixos-native/default.nix create mode 100644 hosts/busch-nixos-native/hardware-configuration.nix create mode 100644 hosts/busch-nixos-native/secrets.nix diff --git a/flake.lock b/flake.lock index 88d0a3d..19a500d 100644 --- a/flake.lock +++ b/flake.lock @@ -476,11 +476,11 @@ "secrets": { "flake": false, "locked": { - "lastModified": 1781207988, - "narHash": "sha256-ZsPqHeeUXDR1fksT4EGlizv8RHPHp42kusVNhnenzxo=", + "lastModified": 1781738124, + "narHash": "sha256-fff++SWoSeZJk9wwns/XzCHGU5ZOTDie821At68gH9I=", "ref": "refs/heads/main", - "rev": "53c5bdca5f2ff22b4e950c38b4d8bb96ee03c80d", - "revCount": 40, + "rev": "fdf7619e52d6bea25224f19da87b6946a6f23cf7", + "revCount": 41, "type": "git", "url": "ssh://git@git.jfreudenberger.de/JuliusFreudenberger/nix-private.git" }, diff --git a/flake.nix b/flake.nix index 766bf60..3ff514b 100644 --- a/flake.nix +++ b/flake.nix @@ -173,6 +173,20 @@ ]; }; + busch-nixos-native = nixpkgs.lib.nixosSystem rec { + system = "x86_64-linux"; + + specialArgs = { + inherit inputs outputs; + }; + + modules = [ + ./hosts/busch-nixos-native + disko.nixosModules.disko + agenix.nixosModules.default + ]; + }; + srv01-hf = nixpkgs.lib.nixosSystem rec { system = "x86_64-linux"; diff --git a/hosts/busch-nixos-native/default.nix b/hosts/busch-nixos-native/default.nix new file mode 100644 index 0000000..e33ed9c --- /dev/null +++ b/hosts/busch-nixos-native/default.nix @@ -0,0 +1,73 @@ +{ inputs, outputs, config, lib, pkgs, ... }: + +{ + imports = + [ + ../../modules/disko/legacy-full-ext4.nix + ./secrets.nix + + ../../users/julius/nixos-server.nix + ../../modules/nix.nix + ../../modules/auto-upgrade.nix + ../../modules/qemu-guest.nix + ../../modules/locale.nix + ../../modules/server-cli.nix + ../../modules/sshd.nix + ../../modules/netbird-client.nix + "${inputs.secrets}/modules/opkssh.nix" + + # Include the results of the hardware scan. + ./hardware-configuration.nix + ]; + + # Use the GRUB 2 boot loader. + boot = { + loader.grub = { + enable = true; + }; + tmp.useTmpfs = true; + }; + networking.hostName = "busch-nixos-native"; # Define your hostname. + + services.netbird-client = { + enable = true; + managementUrl = "https://netbird.jfreudenberger.de"; + host.setupKey = "E182754A-F338-4DAE-8036-03404033D30E"; + }; + + services.beszel.agent = { + enable = true; + environment = { + HUB_URL = "https://beszel.jfreudenberger.de"; + DISABLE_SSH = "true"; + }; + environmentFile = config.age.secrets.beszel.path; + }; + + services.renovate = { + enable = true; + credentials = { + RENOVATE_TOKEN = config.age.secrets.renovate-token.path; + RENOVATE_GITHUB_COM_TOKEN = config.age.secrets.renovate-github-com-token.path; + }; + settings = { + gitAuthor = "Renovate Bot "; + platform = "forgejo"; + endpoint = "https://git.jfreudenberger.de"; + }; + }; + + # This option defines the first version of NixOS you have installed on this particular machine, + # and is used to maintain compatibility with application data (e.g. databases) created on older NixOS versions. + # Most users should NEVER change this value after the initial install, for any reason, + # even if you've upgraded your system to a new NixOS release. + # This value does NOT affect the Nixpkgs version your packages and OS are pulled from, + # so changing it will NOT upgrade your system - see https://nixos.org/manual/nixos/stable/#sec-upgrading for how + # to actually do that. + # This value being lower than the current NixOS release does NOT mean your system is + # out of date, out of support, or vulnerable. + # Do NOT change this value unless you have manually inspected all the changes it would make to your configuration, + # and migrated your data accordingly. + # For more information, see `man configuration.nix` or https://nixos.org/manual/nixos/stable/options#opt-system.stateVersion . + system.stateVersion = "25.05"; # Did you read the comment? +} diff --git a/hosts/busch-nixos-native/hardware-configuration.nix b/hosts/busch-nixos-native/hardware-configuration.nix new file mode 100644 index 0000000..54932ff --- /dev/null +++ b/hosts/busch-nixos-native/hardware-configuration.nix @@ -0,0 +1,17 @@ +# Do not modify this file! It was generated by ‘nixos-generate-config’ +# and may be overwritten by future invocations. Please make changes +# to /etc/nixos/configuration.nix instead. +{ config, lib, pkgs, modulesPath, ... }: + +{ + imports = + [ (modulesPath + "/profiles/qemu-guest.nix") + ]; + + boot.initrd.availableKernelModules = [ "ata_piix" "uhci_hcd" "virtio_pci" "virtio_scsi" "sd_mod" "sr_mod" ]; + boot.initrd.kernelModules = [ ]; + boot.kernelModules = [ "kvm-intel" ]; + boot.extraModulePackages = [ ]; + + nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; +} diff --git a/hosts/busch-nixos-native/secrets.nix b/hosts/busch-nixos-native/secrets.nix new file mode 100644 index 0000000..5aa64a4 --- /dev/null +++ b/hosts/busch-nixos-native/secrets.nix @@ -0,0 +1,8 @@ +{ inputs, ... }: +{ + age.secrets = { + beszel.file = "${inputs.secrets}/secrets/busch-nixos-native/beszel"; + renovate-token.file = "${inputs.secrets}/secrets/busch-nixos-native/renovate-token"; + renovate-github-com-token.file = "${inputs.secrets}/secrets/busch-nixos-native/renovate-github-com-token"; + }; +} From c96522fdfcf5cd0c0623a066b0b53bc203f6e4d7 Mon Sep 17 00:00:00 2001 From: JuliusFreudenberger Date: Thu, 18 Jun 2026 01:29:27 +0200 Subject: [PATCH 12/12] Add dig to cli essentials --- modules/cli-essentials.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/modules/cli-essentials.nix b/modules/cli-essentials.nix index 2fb4dca..d1ef5a6 100644 --- a/modules/cli-essentials.nix +++ b/modules/cli-essentials.nix @@ -7,6 +7,7 @@ environment.systemPackages = with pkgs; [ wget curl + dig git fastfetch bat