From 9c5f55644faa926a3437ef0bcb9d167f2e861a9a Mon Sep 17 00:00:00 2001 From: Ahwx Date: Sun, 3 Aug 2025 12:18:40 +0200 Subject: [PATCH 01/21] chore: move `secrets.yaml` to host-specific folder --- secrets/{ => sakura}/secrets.yaml | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename secrets/{ => sakura}/secrets.yaml (100%) diff --git a/secrets/secrets.yaml b/secrets/sakura/secrets.yaml similarity index 100% rename from secrets/secrets.yaml rename to secrets/sakura/secrets.yaml From 69a7d717d68a4ce239e772db77418c32af82f83e Mon Sep 17 00:00:00 2001 From: Ahwx Date: Sun, 3 Aug 2025 12:18:51 +0200 Subject: [PATCH 02/21] flake: update (nixvim) --- flake.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/flake.lock b/flake.lock index 3be4fca..ea8e840 100644 --- a/flake.lock +++ b/flake.lock @@ -954,11 +954,11 @@ "nixvim": "nixvim_2" }, "locked": { - "lastModified": 1753605519, - "narHash": "sha256-RJTIXX9JMeUOA3sJuiqJRBXFzzQLM6GrOFrL8+Iy6hg=", + "lastModified": 1754172548, + "narHash": "sha256-8lWMN23VGQHTN5Kg5Kz1UMakt42brOlMz2IKxFBvKog=", "owner": "ahwxorg", "repo": "nixvim-config", - "rev": "20053a4d7a90b56cb7fe38d9557d71aeecd2cb47", + "rev": "fe2f1c27fa532489800b8f4d17f12c13299afa8d", "type": "github" }, "original": { From 1f06aba566244bfd0ea47d0984b215662d43fb71 Mon Sep 17 00:00:00 2001 From: Ahwx Date: Sun, 3 Aug 2025 12:20:32 +0200 Subject: [PATCH 03/21] feat: adds `nix-ld` and no longer hard-code timezone --- modules/core/system.nix | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/modules/core/system.nix b/modules/core/system.nix index cc2ab7c..71ecb33 100644 --- a/modules/core/system.nix +++ b/modules/core/system.nix @@ -14,6 +14,8 @@ "nix-command" "flakes" ]; + # substituters = [ "http://violet.booping.local" ]; + # trusted-public-keys = [ "violet.booping.local:2gshN3xfGSL7eKFc8tGkqSoIb3WQxuB2RJ8DuakLLqc=%" ]; }; gc = { automatic = true; @@ -22,6 +24,11 @@ }; }; + programs.nix-ld = { + enable = true; + libraries = with pkgs; [ ]; + }; + # nixpkgs = { # overlays = [ # self.overlays.default @@ -56,6 +63,6 @@ ipaexfont ]; - time.timeZone = "Europe/Amsterdam"; + time.timeZone = lib.mkDefault "Europe/Amsterdam"; system.stateVersion = "24.05"; } From ee59ff3f3b2fec0067fe600354558c37aa9003b7 Mon Sep 17 00:00:00 2001 From: Ahwx Date: Sun, 3 Aug 2025 12:20:57 +0200 Subject: [PATCH 04/21] feat: set new colorscheme for kitty; fix deprecation error for `theme` option --- modules/home/kitty.nix | 101 ++++++++++++++++++++++++++++++++++++++++- 1 file changed, 99 insertions(+), 2 deletions(-) diff --git a/modules/home/kitty.nix b/modules/home/kitty.nix index 3f20039..39371d6 100644 --- a/modules/home/kitty.nix +++ b/modules/home/kitty.nix @@ -3,7 +3,7 @@ programs.kitty = { enable = true; - theme = "3024 Night"; + # theme = "3024 Night"; font = { name = "GohuFont 14 Nerd Font Mono"; @@ -12,7 +12,7 @@ settings = { confirm_os_window_close = 0; - background_opacity = "0.25"; + background_opacity = "0.50"; window_padding_width = 10; scrollback_lines = 10000; enable_audio_bell = false; @@ -35,5 +35,102 @@ "ctrl+shift+left" = "no_op"; "ctrl+shift+right" = "no_op"; }; + extraConfig = '' + # vim:ft=kitty + + ## name: Base2Tone Suburb Dark + ## author: Bram de Haan (https://github.com/atelierbram) + ## license: MIT + ## upstream: https://github.com/atelierbram/Base2Tone-kitty/blob/main/themes/base2tone-suburb-dark.conf + ## blurb: duotone theme | warm blue - bright pink + + + #: The basic colors + + foreground #878ba6 + # background #1e202f + selection_foreground #878ba6 + selection_background #292c3d + + + #: Cursor colors + + cursor #d14781 + cursor_text_color #1e202f + + + #: URL underline color when hovering with mouse + + url_color #d2d8fe + + + #: kitty window border colors and terminal bell colors + + active_border_color #444864 + inactive_border_color #1e202f + bell_border_color #5165e6 + visual_bell_color none + + + #: OS Window titlebar colors + + wayland_titlebar_color #292c3d + macos_titlebar_color #292c3d + + + #: Tab bar colors + + active_tab_foreground #fbf9fa + active_tab_background #1e202f + inactive_tab_foreground #b0a6aa + inactive_tab_background #292c3d + tab_bar_background #292c3d + tab_bar_margin_color none + + + #: Colors for marks (marked text in the terminal) + + mark1_foreground #1e202f + mark1_background #6375ee + mark2_foreground #1e202f + mark2_background #8d8186 + mark3_foreground #1e202f + mark3_background #e44e8c + + + #: The basic 16 colors + + #: black + color0 #1e202f + color8 #4f5472 + + #: red + color1 #7586f5 + color9 #fe81b5 + + #: green + color2 #fb6fa9 + color10 #292c3d + + #: yellow + color3 #ffb3d2 + color11 #444864 + + #: blue + color4 #8696fd + color12 #5b6080 + + #: magenta + color5 #fb6fa9 + color13 #d2d8fe + + #: cyan + color6 #a0acfe + color14 #f764a1 + + #: white + color7 #878ba6 + color15 #ebedff + ''; }; } From 0fa2dd54dcfe50689eed1e25dc7e1e5994cb4580 Mon Sep 17 00:00:00 2001 From: Ahwx Date: Sun, 3 Aug 2025 12:21:14 +0200 Subject: [PATCH 05/21] feat: adds more `zsh` things --- modules/home/zsh.nix | 34 ++++++++++++++++++++++++---------- 1 file changed, 24 insertions(+), 10 deletions(-) diff --git a/modules/home/zsh.nix b/modules/home/zsh.nix index 28fde10..35d8bb5 100644 --- a/modules/home/zsh.nix +++ b/modules/home/zsh.nix @@ -11,6 +11,18 @@ enable = true; autocd = true; autosuggestion.enable = true; + syntaxHighlighting = { + enable = true; + highlighters = [ + "main" + "brackets" + "pattern" + "regexp" + "cursor" + "root" + "line" + ]; + }; enableCompletion = true; # enableGlobalCompInit = true; # Should be a thing according to NixOS options but is not a thing? @@ -137,6 +149,7 @@ enable = true; abbreviations = { mkdir = "mkdir -p"; + mv = "mv --interactive"; vim = "nvim"; v = "nvim"; vi = "nvim"; @@ -191,6 +204,7 @@ sxiv = "nsxiv"; enby = "man"; woman = "man"; + mkcd = "mkdir $1 && cd $1"; # NixOS ns = "nix-shell --run zsh"; @@ -202,16 +216,16 @@ }; plugins = with pkgs; [ - { - name = "zsh-syntax-highlighting"; - src = fetchFromGitHub { - owner = "zsh-users"; - repo = "zsh-syntax-highlighting"; - rev = "0.6.0"; - sha256 = "0zmq66dzasmr5pwribyh4kbkk23jxbpdw4rjxx0i7dx8jjp2lzl4"; - }; - file = "zsh-syntax-highlighting.zsh"; - } + #{ + # name = "zsh-syntax-highlighting"; + # src = fetchFromGitHub { + # owner = "zsh-users"; + # repo = "zsh-syntax-highlighting"; + # rev = "0.6.0"; + # sha256 = "0zmq66dzasmr5pwribyh4kbkk23jxbpdw4rjxx0i7dx8jjp2lzl4"; + # }; + # file = "zsh-syntax-highlighting.zsh"; + #} { name = "zsh-autopair"; src = fetchFromGitHub { From 62f1aa90c2410dbabd2db7e1091d8603cec42e2d Mon Sep 17 00:00:00 2001 From: Ahwx Date: Mon, 4 Aug 2025 14:27:34 +0200 Subject: [PATCH 06/21] chore: secrets --- secrets/dandelion/secrets.yaml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/secrets/dandelion/secrets.yaml b/secrets/dandelion/secrets.yaml index 110de11..250086e 100644 --- a/secrets/dandelion/secrets.yaml +++ b/secrets/dandelion/secrets.yaml @@ -1,4 +1,5 @@ systemMailerPassword: ENC[AES256_GCM,data:b9Mmxo3beDpo1pi1Y+5TZn64ZeKJzJXlJwYFs5BjVMngeej+Y0naWmwBdlTEwzPm6OiO/N1haNQUlwT4KdOTx7t8PsZwQ5dOQl1gjWp0T+0ImWLImvINyvDIg6uh9RsvqLIJBvgLAtiUHE3jq7vLwDPaZ69tvjmGACNfNKX8A0A=,iv:BvmZ7GtDsHFWSY+cL10P1e7I75ZwrzjFJ6e5J2IbEic=,tag:g9yqAQtJ9kD3o1cfng0gTA==,type:str] +dandelionSyncthingId: ENC[AES256_GCM,data:YgkjHxSD5mp44MMd7X46Rt5FqW89prMvhrkvHN5dxvPJ937cOGV9WYXf69A0+0XEbO97jlDAp7ph1GF0Q9UV,iv:45gaF2MZh1GbZmvKRnEtkQfNgx11r9xYaxvqAkU2ZkM=,tag:f9Iel/5029acJuzzTmyHXQ==,type:str] sops: age: - recipient: age1yzapmznelujajfyrpw5mxmy86ckg377494w5ap4yej39jatewursfxls9w @@ -19,7 +20,7 @@ sops: L1d2bW5tRDhjQ2VaU0xDWWlZYi94TEUKvjD1Pk8/Jq18nCJioeVBYbfaT3rSYr4l aZ+j21bb7tE3JbUQfGkYo2blJqZsxFxblZlvf6tK2DU39Tl64naUpQ== -----END AGE ENCRYPTED FILE----- - lastmodified: "2025-08-01T08:17:35Z" - mac: ENC[AES256_GCM,data:WrMLYUSjwh0MOPPAjGTzLip5I+4LxrQoSreKANsl6xwakMmDKzENgp3kzsZyAqWaX6OgLWh1YrpnN+9z6n3UDi+LGYj1WZwHeZnBCwnuyq9cyAhLdPxcvqp0bcNaZfI04IUPpMTk/8o14gpTsbCYy+eIUc/19golYN2NKr2B03Y=,iv:Np1OeYCWdnun3QlQ8MAPd2TRMFwdx1l3Ca0JffqCv64=,tag:jTLzww9TKQnmkla2PhCR1Q==,type:str] + lastmodified: "2025-08-04T12:19:27Z" + mac: ENC[AES256_GCM,data:5bbqvvcMj3t7quhjgZ5By2vRaz0pOdPSbZaGJ1p6QLEJvynm/9wOPt/8xs4dOYFlXbQ52PlouXVkdp6J8RPLeD/tpDFmMy7QIN1mHdcFQmsiulML43n4gSPV3ZAbJ1hlTjfBHNN5hyXKDzXxMXjTQL+jCeA/7493JVaC/Yv1psw=,iv:0RcZmJT72Ih4JyMby0F0ALkKsN0bXPy1E/7GtpUdgt4=,tag:s6MmfLhGDaIJr0Q0RucZQw==,type:str] unencrypted_suffix: _unencrypted version: 3.10.2 From 5adcaba8ecb34401838f83cb2e9d2ad4eb44872e Mon Sep 17 00:00:00 2001 From: Ahwx Date: Mon, 4 Aug 2025 14:27:38 +0200 Subject: [PATCH 07/21] chore: secrets --- secrets/sakura/secrets.yaml | 19 +++---------------- 1 file changed, 3 insertions(+), 16 deletions(-) diff --git a/secrets/sakura/secrets.yaml b/secrets/sakura/secrets.yaml index 0dab49b..f16d281 100644 --- a/secrets/sakura/secrets.yaml +++ b/secrets/sakura/secrets.yaml @@ -1,18 +1,5 @@ systemMailerPassword: ENC[AES256_GCM,data:fdCLxxQOPw00kSGrddcr/ZsYWJ9xYPkfxUeS52jA+MNM4dNNfeQ2rhvWKLYpH/6D3/J7CND0UNUVuRLtPdEnU8ct8jkAmYX5nGDm9HAnVScDvbn5dMvaNxg+0o34Fz7E0XbmRM3B6zpzL4T6Odmmd2iRh/cRiz7WBwmKUpcCV3Q=,iv:ddPxnK6f1wEH+xxQLLADO5SdG8YZkbSVlNfan+AA4vs=,tag:WLrQzVsok6dtxSSQH3HHsw==,type:str] -# -# -# -#ENC[AES256_GCM,data:WflW57V0HPZBinBmThQZxDjILXgY62hOrQLKjp2mElmaHt09pd0SS/qZvYZEyLQ=,iv:1GF427GJB8sZbD4cPYiX6vWXW+g7ITAyXz8dWPqpcvM=,tag:SewPaiwvOXfuYu1boXbEkg==,type:comment] -hello: ENC[AES256_GCM,data:ayluRTSd1xDWGf1K+rMibtj+9fCDy5GMwv0wTDdf1C2hIQeColi6gUdpYTwwZw==,iv:DfG10vFe0HAaCnN8e6ik3QixjhTj2KsDGiwg6XufpBQ=,tag:Y1q3uREa3CXSFZBJMYc6cQ==,type:str] -example_key: ENC[AES256_GCM,data:YdS40bL6x1LmRwg76Q==,iv:5FdtHG3iE50vktShWVdkv9oBrUQoqUesGSvPoaD0j2U=,tag:DDaJXIyozB6N2Cj6Bxk1nA==,type:str] -#ENC[AES256_GCM,data:VMGPI7MXiCSTO9QDlT5DUg==,iv:qkKFWGJKQswSdvetMrn3oD1o3c5nzk1UUDpjlbNnRgY=,tag:ZdP7az9j92eYzfQSqFF5gQ==,type:comment] -example_array: - - ENC[AES256_GCM,data:afMceLch3kcnHzf73Ic=,iv:CQbLPVQVo4QB696Z6J5tgF+1/ZL+9/rKOuGsY8xV1XI=,tag:8yG6JXG9C4KXhiA+AyeSGg==,type:str] - - ENC[AES256_GCM,data:QIa8LkkS1c3AW3T3hbs=,iv:8v20+UPaPnddw8WPJo1tTpf/o7Xi+3cFnwjNOM0UaqQ=,tag:FbWSFLwTcDwBtd+gGeONNg==,type:str] -example_number: ENC[AES256_GCM,data:7ok2x8uHYpAFoQ==,iv:S16WiwAx0OWtuDeuLINJH8xllMGWxzt/3+K5/RNlY5U=,tag:6ytIj66O8rRtTObpmIB/UQ==,type:float] -example_booleans: - - ENC[AES256_GCM,data:Npqj1Q==,iv:uPFu6d24WJVz4N0eOKRSgDgiHYxQoAhPqNRY0dk9rVQ=,tag:V9FEUgx8W707N+q+K63yoA==,type:bool] - - ENC[AES256_GCM,data:J1LcbM8=,iv:TLFH/WyteSCphbR4IlzUr12sUfmCj3mpIeBbBqfNnb4=,tag:YDEJvQB8c8xEeXOupNrYmQ==,type:bool] +dandelionSyncthingId: ENC[AES256_GCM,data:crzT7Ph2gDYm/LAyEM2yw/THzu+Dv5SBrw17NF42j2jCvGMLaDgdlMAhkJlr7bonnpjII+9/TLjEXtcEIhcd,iv:6e94tT8rCLFxwDWLNj2T/Fx+0yAuhfS2AdjAKJKt/k0=,tag:Ai44ZvRZps4lQ4gLBbfUDw==,type:str] sops: age: - recipient: age1yzapmznelujajfyrpw5mxmy86ckg377494w5ap4yej39jatewursfxls9w @@ -24,7 +11,7 @@ sops: bjBJd2RtdDhkSFlaUzVRTkQyTVpVSDgKoZ7S/izFqmPw3qHT37ws8m2Cmmb8prC/ JaVn8U57G4aRgp1BqXQvpnKA98HT3BwEsMce5LeNvX7kAtdqkU5eRQ== -----END AGE ENCRYPTED FILE----- - lastmodified: "2025-07-27T23:20:55Z" - mac: ENC[AES256_GCM,data:hKxGeDETPmOxbyXm2zd/wNKY8nmlUGjbBQorV2pmUgFSNGXxkZifwzT5b0E4ZWaxWyO0bqqEH/jRkIwrU46SDN+RAqZBm5iDwFfmV9QPOlUOgfPDFi2Ho8yDlouvjB6FkwJwooGF3uvGs1bM2in9WMCcI+GFiEi5+VOHBmKtx8U=,iv:1gKoMdKhujmvMyAi4cU4av5tkSPY2ykJShMTtK+2Dnk=,tag:AhuWcD9+Gi9UsQXJm/6qEQ==,type:str] + lastmodified: "2025-08-04T12:27:22Z" + mac: ENC[AES256_GCM,data:P5S1Rv3nViY/1L5Ne2eBt0LTkZc59Oz5r07WqitZfqUyW6n11VjRFCAbB4EODZUEemUVR5KgBh1LXoZuhMb16jjTHviFW/ODTliBD9JdddG9CMVTygly49Jr4zscoMGcqZi3zQD/iuKygVxJsBM7LlF8lumyT+wGO2G/3uyeO74=,iv:Q5NOgpkRtBcRJndRZbEFQCn4xoa7yvUNoJFDUTK3xxQ=,tag:sOL1Enx0Cc2tfvwXr1JMyA==,type:str] unencrypted_suffix: _unencrypted version: 3.10.2 From a21233bcdc9458b026dc81a77ae0e985404998af Mon Sep 17 00:00:00 2001 From: Ahwx Date: Mon, 4 Aug 2025 14:27:47 +0200 Subject: [PATCH 08/21] fix: allow sops to use new location --- .sops.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.sops.yaml b/.sops.yaml index ca78916..b08f268 100644 --- a/.sops.yaml +++ b/.sops.yaml @@ -3,7 +3,7 @@ keys: - &violet age1zegau3chyn53tqvkwud6tuyggpkazc88pdkqv8cknavaudu49enqm2f0h3 - &dandelion age1dpzajxcx7dcumda55qc3hncxqd43a7k85t2cdwtcvy5qsgp6k5tsugxqmd creation_rules: - - path_regex: secrets/secrets.yaml + - path_regex: secrets/sakura/secrets.yaml key_groups: - age: - *sakura From 32a29ebba0ffe662c40f34fadd464bbedf6526cf Mon Sep 17 00:00:00 2001 From: Ahwx Date: Mon, 4 Aug 2025 14:33:04 +0200 Subject: [PATCH 09/21] chore: secrets --- secrets/dandelion/secrets.yaml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/secrets/dandelion/secrets.yaml b/secrets/dandelion/secrets.yaml index 250086e..1d7791f 100644 --- a/secrets/dandelion/secrets.yaml +++ b/secrets/dandelion/secrets.yaml @@ -1,5 +1,6 @@ systemMailerPassword: ENC[AES256_GCM,data:b9Mmxo3beDpo1pi1Y+5TZn64ZeKJzJXlJwYFs5BjVMngeej+Y0naWmwBdlTEwzPm6OiO/N1haNQUlwT4KdOTx7t8PsZwQ5dOQl1gjWp0T+0ImWLImvINyvDIg6uh9RsvqLIJBvgLAtiUHE3jq7vLwDPaZ69tvjmGACNfNKX8A0A=,iv:BvmZ7GtDsHFWSY+cL10P1e7I75ZwrzjFJ6e5J2IbEic=,tag:g9yqAQtJ9kD3o1cfng0gTA==,type:str] dandelionSyncthingId: ENC[AES256_GCM,data:YgkjHxSD5mp44MMd7X46Rt5FqW89prMvhrkvHN5dxvPJ937cOGV9WYXf69A0+0XEbO97jlDAp7ph1GF0Q9UV,iv:45gaF2MZh1GbZmvKRnEtkQfNgx11r9xYaxvqAkU2ZkM=,tag:f9Iel/5029acJuzzTmyHXQ==,type:str] +sakuraSyncthingId: ENC[AES256_GCM,data:dzMpAy6wzlbGdnsesc7OUB25AkvdRwReT+o1UUqoz1VXXldy5esTpa3vGqM2B/Qa3lZq999VX4hejisSRBGd,iv:Eorc7tX4cnu2n2Kc1uPrfTdU5KQ8jjUsKDuByf1/mts=,tag:+ev+2RbN1v22N96zuQHV9w==,type:str] sops: age: - recipient: age1yzapmznelujajfyrpw5mxmy86ckg377494w5ap4yej39jatewursfxls9w @@ -20,7 +21,7 @@ sops: L1d2bW5tRDhjQ2VaU0xDWWlZYi94TEUKvjD1Pk8/Jq18nCJioeVBYbfaT3rSYr4l aZ+j21bb7tE3JbUQfGkYo2blJqZsxFxblZlvf6tK2DU39Tl64naUpQ== -----END AGE ENCRYPTED FILE----- - lastmodified: "2025-08-04T12:19:27Z" - mac: ENC[AES256_GCM,data:5bbqvvcMj3t7quhjgZ5By2vRaz0pOdPSbZaGJ1p6QLEJvynm/9wOPt/8xs4dOYFlXbQ52PlouXVkdp6J8RPLeD/tpDFmMy7QIN1mHdcFQmsiulML43n4gSPV3ZAbJ1hlTjfBHNN5hyXKDzXxMXjTQL+jCeA/7493JVaC/Yv1psw=,iv:0RcZmJT72Ih4JyMby0F0ALkKsN0bXPy1E/7GtpUdgt4=,tag:s6MmfLhGDaIJr0Q0RucZQw==,type:str] + lastmodified: "2025-08-04T12:32:42Z" + mac: ENC[AES256_GCM,data:JrU10DY9ih8eMtR3vNpuGppU4gZQyxAzDZ7R2+UFnv/g0zGVYnIKyVEQB9AfO2PEc+nBIYvruiO8XJrqx9O3osf7gvICXnWgEB8C4VPv7IvgniPz68O0hAgpBKkh7Lj0ZP/EGpjXjMr1yBTLtMWsFBXqJa16cD21qsHnlQjBp9Q=,iv:4LWlyE86dKDgwErqE/PmbquGFyQxUVfZw8bifjSB51I=,tag:95INrs/69ipBIutWb5ZbrA==,type:str] unencrypted_suffix: _unencrypted version: 3.10.2 From 48ca8a3495bfe9ff3932e9e0fbe1d4cb6684866b Mon Sep 17 00:00:00 2001 From: Ahwx Date: Mon, 4 Aug 2025 14:33:10 +0200 Subject: [PATCH 10/21] chore: secrets --- secrets/sakura/secrets.yaml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/secrets/sakura/secrets.yaml b/secrets/sakura/secrets.yaml index f16d281..b6ee715 100644 --- a/secrets/sakura/secrets.yaml +++ b/secrets/sakura/secrets.yaml @@ -1,5 +1,6 @@ systemMailerPassword: ENC[AES256_GCM,data:fdCLxxQOPw00kSGrddcr/ZsYWJ9xYPkfxUeS52jA+MNM4dNNfeQ2rhvWKLYpH/6D3/J7CND0UNUVuRLtPdEnU8ct8jkAmYX5nGDm9HAnVScDvbn5dMvaNxg+0o34Fz7E0XbmRM3B6zpzL4T6Odmmd2iRh/cRiz7WBwmKUpcCV3Q=,iv:ddPxnK6f1wEH+xxQLLADO5SdG8YZkbSVlNfan+AA4vs=,tag:WLrQzVsok6dtxSSQH3HHsw==,type:str] dandelionSyncthingId: ENC[AES256_GCM,data:crzT7Ph2gDYm/LAyEM2yw/THzu+Dv5SBrw17NF42j2jCvGMLaDgdlMAhkJlr7bonnpjII+9/TLjEXtcEIhcd,iv:6e94tT8rCLFxwDWLNj2T/Fx+0yAuhfS2AdjAKJKt/k0=,tag:Ai44ZvRZps4lQ4gLBbfUDw==,type:str] +sakuraSyncthingId: ENC[AES256_GCM,data:/4MQEcCYVsw2ad2WmUn8Y2f/9mUcyjU9l7Z7PorexQfwaIucmfNH1+Z/FF+0wRj4uaUQLqpR29bRl3EQr/ve,iv:FsiLQYuLZ9YvkfqyF3mAV6jW7csZ5+yXx0sN8f768BE=,tag:U/OTuSnjkOeVT6Vdz96bOw==,type:str] sops: age: - recipient: age1yzapmznelujajfyrpw5mxmy86ckg377494w5ap4yej39jatewursfxls9w @@ -11,7 +12,7 @@ sops: bjBJd2RtdDhkSFlaUzVRTkQyTVpVSDgKoZ7S/izFqmPw3qHT37ws8m2Cmmb8prC/ JaVn8U57G4aRgp1BqXQvpnKA98HT3BwEsMce5LeNvX7kAtdqkU5eRQ== -----END AGE ENCRYPTED FILE----- - lastmodified: "2025-08-04T12:27:22Z" - mac: ENC[AES256_GCM,data:P5S1Rv3nViY/1L5Ne2eBt0LTkZc59Oz5r07WqitZfqUyW6n11VjRFCAbB4EODZUEemUVR5KgBh1LXoZuhMb16jjTHviFW/ODTliBD9JdddG9CMVTygly49Jr4zscoMGcqZi3zQD/iuKygVxJsBM7LlF8lumyT+wGO2G/3uyeO74=,iv:Q5NOgpkRtBcRJndRZbEFQCn4xoa7yvUNoJFDUTK3xxQ=,tag:sOL1Enx0Cc2tfvwXr1JMyA==,type:str] + lastmodified: "2025-08-04T12:32:56Z" + mac: ENC[AES256_GCM,data:so7buQVx6nUTRYBfCPdITDccVWOjEmfPslkG8+Z0RKkDgIgwH4Aa/GnTkX0WxmB2bbI6/GQ1PhILE4UXTo8O7W0OO10+PWV2AWwngMcog+ggbH7qpd1395Tw0A8KiiXdPXwxFBEZqrYkKmYVyw314H02+h5+Qd3irH0bWqmpGOg=,iv:Sy4wR3GdSJCR1tlAxV2lau7cpLox/CoiGTC5eZoNVos=,tag:W2pv//unvIE0HBuJ0v35GA==,type:str] unencrypted_suffix: _unencrypted version: 3.10.2 From e9dd877b7782b9515a09b83aced6b37f2f29cbce Mon Sep 17 00:00:00 2001 From: Ahwx Date: Tue, 5 Aug 2025 20:56:02 +0200 Subject: [PATCH 11/21] fix: `zfs` volumes and allow ports for `iperf` --- hosts/dandelion/default.nix | 37 ++++++++++++++++++++++++++----------- 1 file changed, 26 insertions(+), 11 deletions(-) diff --git a/hosts/dandelion/default.nix b/hosts/dandelion/default.nix index afee27e..70aae74 100644 --- a/hosts/dandelion/default.nix +++ b/hosts/dandelion/default.nix @@ -40,6 +40,15 @@ ]; }; + networking.firewall = { + allowedTCPPorts = [ + 5201 + ]; + allowedUDPPorts = [ + 5201 + ]; + }; + environment.systemPackages = with pkgs; [ kitty.terminfo zfs @@ -60,16 +69,22 @@ trim.enable = true; }; - boot.zfs.extraPools = [ "spinners" ]; + boot.zfs.extraPools = [ + "spinners" + ]; - fileSystems = { - "/spinners/rootvol" = { - device = "terrabite/rootvol"; - fsType = "zfs"; - }; - "/spinners/ahwx" = { - device = "terrabite/ahwx"; - fsType = "zfs"; - }; - }; + # fileSystems = { + # "/spinners/rootvol" = { + # device = "spinners/rootvol"; + # fsType = "zfs"; + # }; + # "/spinners/ahwx" = { + # device = "spinners/ahwx"; + # fsType = "zfs"; + # }; + # "/spinners/violet" = { + # device = "spinners/violet"; + # fsType = "zfs"; + # }; + # }; } From 89c0f745f811ec17e7cb520df14dbc22866eaa5d Mon Sep 17 00:00:00 2001 From: Ahwx Date: Tue, 5 Aug 2025 20:58:50 +0200 Subject: [PATCH 12/21] fix: replace `pkgs.samba4Full` for `pkgs.samba` --- modules/services/nfs.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/services/nfs.nix b/modules/services/nfs.nix index f49ee2e..2f9d3c4 100644 --- a/modules/services/nfs.nix +++ b/modules/services/nfs.nix @@ -8,7 +8,7 @@ services = { # Network shares samba = { - package = pkgs.samba4Full; + package = pkgs.samba; # ^^ `samba4Full` is compiled with avahi, ldap, AD etc support (compared to the default package, `samba` # Required for samba to register mDNS records for auto discovery # See https://github.com/NixOS/nixpkgs/blob/592047fc9e4f7b74a4dc85d1b9f5243dfe4899e3/pkgs/top-level/all-packages.nix#L27268 From df4605bda6bf05fc05baa7d263f9dee64e8dd5f7 Mon Sep 17 00:00:00 2001 From: Ahwx Date: Tue, 5 Aug 2025 20:59:51 +0200 Subject: [PATCH 13/21] flake: update --- flake.lock | 105 +++++++++++++++++++++++++++++++---------------------- 1 file changed, 61 insertions(+), 44 deletions(-) diff --git a/flake.lock b/flake.lock index ea8e840..8a8da14 100644 --- a/flake.lock +++ b/flake.lock @@ -41,11 +41,11 @@ ] }, "locked": { - "lastModified": 1752743471, - "narHash": "sha256-4izhj1j7J4mE8LgljCXSIUDculqOsxxhdoC81VhqizM=", + "lastModified": 1753216019, + "narHash": "sha256-zik7WISrR1ks2l6T1MZqZHb/OqroHdJnSnAehkE0kCk=", "owner": "hyprwm", "repo": "aquamarine", - "rev": "e31b575d19e7cf8a8f4398e2f9cffe27a1332506", + "rev": "be166e11d86ba4186db93e10c54a141058bdce49", "type": "github" }, "original": { @@ -235,11 +235,11 @@ ] }, "locked": { - "lastModified": 1753470191, - "narHash": "sha256-hOUWU5L62G9sm8NxdiLWlLIJZz9H52VuFiDllHdwmVA=", + "lastModified": 1754263839, + "narHash": "sha256-ck7lILfCNuunsLvExPI4Pw9OOCJksxXwozum24W8b+8=", "owner": "nix-community", "repo": "home-manager", - "rev": "a1817d1c0e5eabe7dfdfe4caa46c94d9d8f3fdb6", + "rev": "1d7abbd5454db97e0af51416f4960b3fb64a4773", "type": "github" }, "original": { @@ -282,11 +282,11 @@ ] }, "locked": { - "lastModified": 1749155331, - "narHash": "sha256-XR9fsI0zwLiFWfqi/pdS/VD+YNorKb3XIykgTg4l1nA=", + "lastModified": 1753964049, + "narHash": "sha256-lIqabfBY7z/OANxHoPeIrDJrFyYy9jAM4GQLzZ2feCM=", "owner": "hyprwm", "repo": "hyprcursor", - "rev": "45fcc10b4c282746d93ec406a740c43b48b4ef80", + "rev": "44e91d467bdad8dcf8bbd2ac7cf49972540980a5", "type": "github" }, "original": { @@ -342,11 +342,11 @@ "xdph": "xdph" }, "locked": { - "lastModified": 1753523167, - "narHash": "sha256-DLVvtdF8zPmL+7dYubnMfK9IIITriecCg7ijLErUTg0=", + "lastModified": 1754254502, + "narHash": "sha256-uxfjGhR1BeD1lgPgPjIkcGxdWHOKA0+KoCTWfIsegLM=", "ref": "refs/heads/main", - "rev": "e1fff05d0db9c266679ec7ea1b5734c73d6b0a57", - "revCount": 6314, + "rev": "1b86d35f7ebc2c613f5ef6cba89dcd8d1ceedaa4", + "revCount": 6344, "submodules": true, "type": "git", "url": "https://github.com/hyprwm/Hyprland" @@ -462,11 +462,11 @@ ] }, "locked": { - "lastModified": 1750371812, - "narHash": "sha256-D868K1dVEACw17elVxRgXC6hOxY+54wIEjURztDWLk8=", + "lastModified": 1753819801, + "narHash": "sha256-tHe6XeNeVeKapkNM3tcjW4RuD+tB2iwwoogWJOtsqTI=", "owner": "hyprwm", "repo": "hyprland-qtutils", - "rev": "b13c7481e37856f322177010bdf75fccacd1adc8", + "rev": "b308a818b9dcaa7ab8ccab891c1b84ebde2152bc", "type": "github" }, "original": { @@ -491,11 +491,11 @@ ] }, "locked": { - "lastModified": 1750371198, - "narHash": "sha256-/iuJ1paQOBoSLqHflRNNGyroqfF/yvPNurxzcCT0cAE=", + "lastModified": 1753622892, + "narHash": "sha256-0K+A+gmOI8IklSg5It1nyRNv0kCNL51duwnhUO/B8JA=", "owner": "hyprwm", "repo": "hyprlang", - "rev": "cee01452bca58d6cadb3224e21e370de8bc20f0b", + "rev": "23f0debd2003f17bd65f851cd3f930cff8a8c809", "type": "github" }, "original": { @@ -564,11 +564,11 @@ "systems": "systems_3" }, "locked": { - "lastModified": 1753378338, - "narHash": "sha256-Ctk7zophp8obM/u9S2c8a6nOWV+VeIzq6ma+dI5BE3s=", + "lastModified": 1753819183, + "narHash": "sha256-KjuaXO9pdSHwpnsdj+TXqLDVZ8EhqfV5duSzIssBlzY=", "owner": "hyprwm", "repo": "hyprsunset", - "rev": "962f519df793ea804810b1ddebfc8a88b80a845c", + "rev": "233aaccdbdd20af848be3f30ab318342e28cd7e3", "type": "github" }, "original": { @@ -589,11 +589,11 @@ ] }, "locked": { - "lastModified": 1752252310, - "narHash": "sha256-06i1pIh6wb+sDeDmWlzuPwIdaFMxLlj1J9I5B9XqSeo=", + "lastModified": 1753800567, + "narHash": "sha256-W0xgXsaqGa/5/7IBzKNhf0+23MqGPymYYfqT7ECqeTE=", "owner": "hyprwm", "repo": "hyprutils", - "rev": "bcabcbada90ed2aacb435dc09b91001819a6dc82", + "rev": "c65d41d4f4e6ded6fdb9d508a73e2fe90e55cdf7", "type": "github" }, "original": { @@ -759,11 +759,11 @@ }, "nixos-hardware": { "locked": { - "lastModified": 1753122741, - "narHash": "sha256-nFxE8lk9JvGelxClCmwuJYftbHqwnc01dRN4DVLUroM=", + "lastModified": 1754316476, + "narHash": "sha256-Ry1gd1BQrNVJJfT11cpVP0FY8XFMx4DJV2IDp01CH9w=", "owner": "nixos", "repo": "nixos-hardware", - "rev": "cc66fddc6cb04ab479a1bb062f4d4da27c936a22", + "rev": "9368056b73efb46eb14fd4667b99e0f81b805f28", "type": "github" }, "original": { @@ -805,11 +805,11 @@ }, "nixpkgs_10": { "locked": { - "lastModified": 1753432016, - "narHash": "sha256-cnL5WWn/xkZoyH/03NNUS7QgW5vI7D1i74g48qplCvg=", + "lastModified": 1744868846, + "narHash": "sha256-5RJTdUHDmj12Qsv7XOhuospjAjATNiTMElplWnJE9Hs=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "6027c30c8e9810896b92429f0092f624f7b1aace", + "rev": "ebe4301cbd8f81c4f8d3244b3632338bbeb6d49c", "type": "github" }, "original": { @@ -885,11 +885,11 @@ }, "nixpkgs_6": { "locked": { - "lastModified": 1753429684, - "narHash": "sha256-9h7+4/53cSfQ/uA3pSvCaBepmZaz/dLlLVJnbQ+SJjk=", + "lastModified": 1754214453, + "narHash": "sha256-Q/I2xJn/j1wpkGhWkQnm20nShYnG7TI99foDBpXm1SY=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "7fd36ee82c0275fb545775cc5e4d30542899511d", + "rev": "5b09dc45f24cf32316283e62aec81ffee3c3e376", "type": "github" }, "original": { @@ -933,11 +933,11 @@ }, "nixpkgs_9": { "locked": { - "lastModified": 1753429684, - "narHash": "sha256-9h7+4/53cSfQ/uA3pSvCaBepmZaz/dLlLVJnbQ+SJjk=", + "lastModified": 1754214453, + "narHash": "sha256-Q/I2xJn/j1wpkGhWkQnm20nShYnG7TI99foDBpXm1SY=", "owner": "nixos", "repo": "nixpkgs", - "rev": "7fd36ee82c0275fb545775cc5e4d30542899511d", + "rev": "5b09dc45f24cf32316283e62aec81ffee3c3e376", "type": "github" }, "original": { @@ -993,11 +993,11 @@ "nixpkgs": "nixpkgs_9" }, "locked": { - "lastModified": 1753530457, - "narHash": "sha256-ElI7ya0YQ07RMDEaF94bQe7Rmz4tr2pKYa+KdRchrEY=", + "lastModified": 1754319480, + "narHash": "sha256-Q2sQCiGrQ80bPdD2b8xrjKXEr+frwDP7Oa5LtgRqiy8=", "owner": "nix-community", "repo": "NUR", - "rev": "8c37eaf318485018b37efa1006af881c5c7f5616", + "rev": "4de6ec34385c2fdd449989fc3751586caaf1dc12", "type": "github" }, "original": { @@ -1066,7 +1066,8 @@ "nixpkgs": "nixpkgs_6", "nixvim": "nixvim", "nur": "nur", - "sops-nix": "sops-nix" + "sops-nix": "sops-nix", + "stablepkgs": "stablepkgs" } }, "rust-analyzer-src": { @@ -1104,6 +1105,22 @@ "type": "github" } }, + "stablepkgs": { + "locked": { + "lastModified": 1754292888, + "narHash": "sha256-1ziydHSiDuSnaiPzCQh1mRFBsM2d2yRX9I+5OPGEmIE=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "ce01daebf8489ba97bd1609d185ea276efdeb121", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-25.05", + "repo": "nixpkgs", + "type": "github" + } + }, "systems": { "locked": { "lastModified": 1689347949, @@ -1192,11 +1209,11 @@ ] }, "locked": { - "lastModified": 1751300244, - "narHash": "sha256-PFuv1TZVYvQhha0ac53E3YgdtmLShrN0t4T6xqHl0jE=", + "lastModified": 1753633878, + "narHash": "sha256-js2sLRtsOUA/aT10OCDaTjO80yplqwOIaLUqEe0nMx0=", "owner": "hyprwm", "repo": "xdg-desktop-portal-hyprland", - "rev": "6115f3fdcb2c1a57b4a80a69f3c797e47607b90a", + "rev": "371b96bd11ad2006ed4f21229dbd1be69bed3e8a", "type": "github" }, "original": { From 5e49a17aa563a8ae1a05a0ca56752c0d3e8f03ca Mon Sep 17 00:00:00 2001 From: Ahwx Date: Tue, 5 Aug 2025 21:01:38 +0200 Subject: [PATCH 14/21] feat: adds syncthing ids --- modules/core/sops.nix | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/modules/core/sops.nix b/modules/core/sops.nix index 1ec50d1..0ef4b58 100644 --- a/modules/core/sops.nix +++ b/modules/core/sops.nix @@ -25,10 +25,14 @@ else if (host == "sakura") then { "systemMailerPassword" = { }; + "dandelionSyncthingId" = { }; + "sakuraSyncthingId" = { }; } else if (host == "dandelion") then { "systemMailerPassword" = { }; + "dandelionSyncthingId" = { }; + "sakuraSyncthingId" = { }; } else { }; From 29521f8994aa2b5669583c42bf5411f9ee808964 Mon Sep 17 00:00:00 2001 From: Ahwx Date: Tue, 5 Aug 2025 21:02:01 +0200 Subject: [PATCH 15/21] chore: import `syncthing` on `dandelion` --- modules/services/dandelion.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/modules/services/dandelion.nix b/modules/services/dandelion.nix index c11eff1..ec6d4a1 100644 --- a/modules/services/dandelion.nix +++ b/modules/services/dandelion.nix @@ -7,6 +7,7 @@ ++ [ (import ./home-assistant.nix) ] ++ [ (import ./monitoring.nix) ] ++ [ (import ./smart-monitoring.nix) ] + ++ [ (import ./syncthing.nix) ] ++ [ (import ./tailscale.nix) ] ++ [ (import ./nfs.nix) ] ++ [ (import ./hd-idle.nix) ]; From ac6f4b4fcd11366ed664450ef658779371996214 Mon Sep 17 00:00:00 2001 From: Ahwx Date: Tue, 5 Aug 2025 21:47:13 +0200 Subject: [PATCH 16/21] feat: add static ip for 40gbit nic --- hosts/yoshino/default.nix | 23 ++++++++++++++++++----- 1 file changed, 18 insertions(+), 5 deletions(-) diff --git a/hosts/yoshino/default.nix b/hosts/yoshino/default.nix index f61d5b5..da4ee92 100644 --- a/hosts/yoshino/default.nix +++ b/hosts/yoshino/default.nix @@ -20,6 +20,24 @@ cpuFreqGovernor = lib.mkDefault "performance"; }; + networking = { + hostName = "yoshino"; + networkmanager.enable = true; + }; + + systemd.network.networks."99-local" = { + matchConfig.name = "enp68s0"; + address = [ + "192.168.1.100/24" + ]; + routes = [ + { + Gateway = "172.16.10.1"; + GatewayOnLink = false; + } + ]; + }; + liv = { desktop.enable = true; creative.enable = true; @@ -28,11 +46,6 @@ gui.enable = true; }; - networking = { - hostName = "yoshino"; - networkmanager.enable = true; - }; - boot = { kernelParams = [ ]; kernelModules = [ "acpi_call" ]; From d35ded419e3d4aaed6e5c83468a6e25ebc84ff41 Mon Sep 17 00:00:00 2001 From: Ahwx Date: Tue, 5 Aug 2025 21:48:15 +0200 Subject: [PATCH 17/21] feat: open all ports on 40gbit nic as its a local link --- hosts/dandelion/default.nix | 39 +++++++++++++++++++++++++------------ 1 file changed, 27 insertions(+), 12 deletions(-) diff --git a/hosts/dandelion/default.nix b/hosts/dandelion/default.nix index 70aae74..511be93 100644 --- a/hosts/dandelion/default.nix +++ b/hosts/dandelion/default.nix @@ -16,8 +16,6 @@ "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOLdcB5JFWx6OK2BAr8J0wPHNhr2VP2/Ci6fv3a+DPfo liv@violet" # allow violet to log in over ssh to do back ups ]; - networking.hostName = "dandelion"; - liv.server.enable = true; nixpkgs.config.permittedInsecurePackages = [ @@ -27,8 +25,34 @@ time.timeZone = "Europe/Amsterdam"; + networking = { + hostName = "dandelion"; + firewall = { + allowedTCPPorts = [ + 5201 + ]; + allowedUDPPorts = [ + 5201 + ]; + interfaces."ens4s1".allowedTCPPorts = [ + # allow everything for local link + { + from = 1; + to = 65354; + } + ]; + interfaces."ens4s1".allowedUDPPorts = [ + # allow everything for local link + { + from = 1; + to = 65354; + } + ]; + }; + }; + systemd.network.networks."99-local" = { - matchConfig.name = "ens3s1"; + matchConfig.name = "ens4s1"; address = [ "192.168.1.100/24" ]; @@ -40,15 +64,6 @@ ]; }; - networking.firewall = { - allowedTCPPorts = [ - 5201 - ]; - allowedUDPPorts = [ - 5201 - ]; - }; - environment.systemPackages = with pkgs; [ kitty.terminfo zfs From d9380699ddf6ac5dd6854db87e742f911eca8e92 Mon Sep 17 00:00:00 2001 From: Ahwx Date: Tue, 5 Aug 2025 21:49:08 +0200 Subject: [PATCH 18/21] feat: adds `mpd` for `yoshino` --- hosts/yoshino/default.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/hosts/yoshino/default.nix b/hosts/yoshino/default.nix index da4ee92..94a9e67 100644 --- a/hosts/yoshino/default.nix +++ b/hosts/yoshino/default.nix @@ -12,6 +12,7 @@ # ./../../modules/home/nfs.nix ./../../modules/core/virtualization.nix ./../../modules/services/tailscale.nix + ./../../modules/services/mpd.nix ]; powerManagement = { From 5a3a3b0cd5a3d383121508428928893e051067b1 Mon Sep 17 00:00:00 2001 From: Ahwx Date: Tue, 5 Aug 2025 21:50:31 +0200 Subject: [PATCH 19/21] chore: remove old setting that no longer has any effect --- modules/core/services.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/core/services.nix b/modules/core/services.nix index 8ec1b02..0020bf2 100644 --- a/modules/core/services.nix +++ b/modules/core/services.nix @@ -9,5 +9,5 @@ ''; # To prevent getting stuck at shutdown. - systemd.extraConfig = "DefaultTimeoutStopSec=10s"; + # systemd.extraConfig = "DefaultTimeoutStopSec=10s"; # Deprecated now } From b68a9d133daff21777cbcfbf9285be9896ce5988 Mon Sep 17 00:00:00 2001 From: Ahwx Date: Wed, 6 Aug 2025 13:34:08 +0200 Subject: [PATCH 20/21] feat: adds macaddress and import `syncthing` --- hosts/sakura/default.nix | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/hosts/sakura/default.nix b/hosts/sakura/default.nix index 0d48a0b..1c150ac 100644 --- a/hosts/sakura/default.nix +++ b/hosts/sakura/default.nix @@ -12,6 +12,7 @@ ./../../modules/core/virtualization.nix ./../../modules/services/tailscale.nix ./../../modules/services/mpd.nix + ./../../modules/services/syncthing.nix ./../../modules/services/smart-monitoring.nix inputs.nixos-hardware.nixosModules.framework-13-7040-amd ]; @@ -46,7 +47,10 @@ # Disable light sensors and accelerometers as they are not used and consume extra battery hardware.sensor.iio.enable = lib.mkForce false; - networking.hostName = "sakura"; + networking = { + hostName = "sakura"; + networkmanager.ethernet.macAddress = "13:37:13:37:13:37"; + }; powerManagement = { enable = true; From e65fdd653763a48e524407af4791ab4dc977a29f Mon Sep 17 00:00:00 2001 From: Ahwx Date: Wed, 6 Aug 2025 13:34:29 +0200 Subject: [PATCH 21/21] flake: update --- flake.lock | 19 +------------------ 1 file changed, 1 insertion(+), 18 deletions(-) diff --git a/flake.lock b/flake.lock index 8a8da14..947571b 100644 --- a/flake.lock +++ b/flake.lock @@ -1066,8 +1066,7 @@ "nixpkgs": "nixpkgs_6", "nixvim": "nixvim", "nur": "nur", - "sops-nix": "sops-nix", - "stablepkgs": "stablepkgs" + "sops-nix": "sops-nix" } }, "rust-analyzer-src": { @@ -1105,22 +1104,6 @@ "type": "github" } }, - "stablepkgs": { - "locked": { - "lastModified": 1754292888, - "narHash": "sha256-1ziydHSiDuSnaiPzCQh1mRFBsM2d2yRX9I+5OPGEmIE=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "ce01daebf8489ba97bd1609d185ea276efdeb121", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixos-25.05", - "repo": "nixpkgs", - "type": "github" - } - }, "systems": { "locked": { "lastModified": 1689347949,