From 95fa504dc8ed4dbe2a97b6bcd09b2d8347b9a152 Mon Sep 17 00:00:00 2001 From: Adrian G L Date: Mon, 2 Feb 2026 11:21:26 +0100 Subject: [PATCH] snapshot --- home/niri.nix | 9 +++++ home/noctalia.nix | 61 ++++++++++++++++--------------- hosts/galadriel/configuration.nix | 5 ++- modules/authelia.nix | 22 +++++++++++ modules/basePackages.nix | 3 ++ modules/ollama.nix | 4 +- modules/qbittorrent.nix | 6 +-- secrets/secrets.yaml | 7 +++- 8 files changed, 80 insertions(+), 37 deletions(-) create mode 100644 modules/authelia.nix diff --git a/home/niri.nix b/home/niri.nix index 167d044..ee8ef4c 100644 --- a/home/niri.nix +++ b/home/niri.nix @@ -241,6 +241,11 @@ in "--server" ]; } + { + argv = [ + "noctalia-shell" + ]; + } ]; # Prefer no CSD @@ -258,6 +263,10 @@ in matches = [ { namespace = "^notifications$"; } ]; block-out-from = "screencast"; } + { + matches = [ { namespace = "noctalia-overview*"; } ]; + place-within-backdrop = true; + } ]; # Window rules diff --git a/home/noctalia.nix b/home/noctalia.nix index 22f4af0..2bf56b7 100644 --- a/home/noctalia.nix +++ b/home/noctalia.nix @@ -18,7 +18,12 @@ widgets = { left = [ { id = "Launcher"; } - { id = "CustomButton"; icon = "keyboard"; tooltip = "Open Keyboard"; leftClickExec = "pkill wvkbd-mobintl || wvkbd-mobintl"; } + { + id = "CustomButton"; + icon = "keyboard"; + tooltip = "Open Keyboard"; + leftClickExec = "pkill wvkbd-mobintl || wvkbd-mobintl"; + } { id = "SystemMonitor"; } { id = "MediaMini"; } { id = "Workspace"; } @@ -50,9 +55,9 @@ darkMode = true; }; templates = { - activeTemplates = []; - enableUserTheming = false; - }; + activeTemplates = [ ]; + enableUserTheming = false; + }; wallpaper = { enabled = true; @@ -69,27 +74,17 @@ viewMode = "list"; showCategories = true; - - - - enableClipboardHistory=false; - pinnedApps = []; - useApp2Unit = false; - terminalCommand = "footclient "; - customLaunchPrefixEnabled = false; - customLaunchPrefix = ""; - iconMode = "tabler"; - showIconBackground = false; - enableSettingsSearch = true; - ignoreMouseInput = false; - screenshotAnnotationTool = ""; - - - - - - - + enableClipboardHistory = false; + pinnedApps = [ ]; + useApp2Unit = false; + terminalCommand = "footclient "; + customLaunchPrefixEnabled = false; + customLaunchPrefix = ""; + iconMode = "tabler"; + showIconBackground = false; + enableSettingsSearch = true; + ignoreMouseInput = false; + screenshotAnnotationTool = ""; }; @@ -102,12 +97,20 @@ criticalUrgencyDuration = 3; }; + osd = { + enabled = true; + location = "top_right"; + autoHideMs = 500; + overlayLayer = true; + backgroundOpacity = lib.mkForce 0.5; + }; + location = { - name = "Trondheim"; - showWeekNumberInCalendar = true; - firstDayOfWeek = -1; + name = "Trondheim"; + showWeekNumberInCalendar = true; + firstDayOfWeek = -1; }; }; }; - } +} diff --git a/hosts/galadriel/configuration.nix b/hosts/galadriel/configuration.nix index cb883c4..cff5ac0 100644 --- a/hosts/galadriel/configuration.nix +++ b/hosts/galadriel/configuration.nix @@ -42,7 +42,10 @@ ]; #Load zfs pool - boot.zfs.extraPools = [ "Main" "lorien" ]; + boot.zfs.extraPools = [ + "Main" + "lorien" + ]; # Use the systemd-boot EFI boot loader. boot.loader.systemd-boot.enable = true; diff --git a/modules/authelia.nix b/modules/authelia.nix new file mode 100644 index 0000000..b5db883 --- /dev/null +++ b/modules/authelia.nix @@ -0,0 +1,22 @@ +{ + config, + pkgs, + lib, + ... +}: +{ + sops.secrets."authelia/jwtSecretFile" = { }; + sops.secrets."authelia/storageEncryptionKeyFile" = { }; + services.authelia.instances.main = { + enable = true; + secrets.storageEncryptionKeyFile = config.sops.secrets."authelia/storageEncryptionKeyFile".path; + secrets.jwtSecretFile = config.sops.secrets."authelia/jwtSecretFile".path; + settings = { + theme = "dark"; + default_2fa_method = "totp"; + log.level = "warning"; + server.disable_healthcheck = false; + }; + + }; +} diff --git a/modules/basePackages.nix b/modules/basePackages.nix index 2bb85d3..e8522d4 100644 --- a/modules/basePackages.nix +++ b/modules/basePackages.nix @@ -23,6 +23,9 @@ eza fastfetch + rsync + screen + ]; } diff --git a/modules/ollama.nix b/modules/ollama.nix index b8ea239..da86c11 100644 --- a/modules/ollama.nix +++ b/modules/ollama.nix @@ -21,8 +21,8 @@ in openFirewall = true; port = 11434; home = "/var/lib/ollama"; - environmentVariables = { - OLLAMA_CONTEXT_LENGTH="32000"; + environmentVariables = { + OLLAMA_CONTEXT_LENGTH = "32000"; }; # Preloaded models loadModels = [ diff --git a/modules/qbittorrent.nix b/modules/qbittorrent.nix index 5901af5..a3d4f67 100644 --- a/modules/qbittorrent.nix +++ b/modules/qbittorrent.nix @@ -5,7 +5,7 @@ ... }: let -dataLocation = "/lorien/media/" + dataLocation = "/lorien/media/"; in { sops.secrets."qbittorrent/interfaceAddress" = { @@ -48,9 +48,9 @@ in AnonymousModeEnabled = false; BTProtocol = "Both"; BandwidthSchedulerEnabled = false; - DefaultSavePath = dataLocation+"Downloads"; + DefaultSavePath = dataLocation + "Downloads"; Encryption = 1; - FinishedTorrentExportDirectory =dataLocation+"Downloads/torrents-complete"; + FinishedTorrentExportDirectory = dataLocation + "Downloads/torrents-complete"; GlobalDLSpeedLimit = 0; GlobalMaxRatio = 1.5; GlobalUPSpeedLimit = 0; diff --git a/secrets/secrets.yaml b/secrets/secrets.yaml index a1ab42f..a9227f2 100644 --- a/secrets/secrets.yaml +++ b/secrets/secrets.yaml @@ -20,6 +20,9 @@ ai: groq: ENC[AES256_GCM,data:63HBVYQEXCqG/xN7zluZl3yledOlqxou09Lvgh585LnZAvIFUN+eSDn44mT5mgpqMsRL8Wbqjq8=,iv:taiWwphOVhbLuO5ygf5iDIvhEoAxncTEQ8CFNKOObP4=,tag:1j7wCg9tFuP36mBr5yN0dA==,type:str] mistral: ENC[AES256_GCM,data:z7qUyaJBaLF+fe3DFMRjkUEXiXGZwtFeC189fuEGjEo=,iv:r9QSqstFiR9QrLehHrQu09iaF0PYroz/p1ENChch/I0=,tag:XN7jcXv6TftbXaFBsZYVmw==,type:str] zai: ENC[AES256_GCM,data:rVzqXuEFvdAR+GgETgRFvbDzVjvQ3hVD0s8jDxMCjZ2ri+Tob8Fsp55qA4ZKe85Uhw==,iv:YpaTe+3ZGONoAHCkQCVcvassQqr2ReSyBgiEcwxJOlA=,tag:HFE4af3gVrp6FJnBiwGClg==,type:str] +authelia: + storageEncryptionKeyFile: ENC[AES256_GCM,data:zP2i8Ni6MqHpAJeVdcxr6V0eCXobcgbTyu6cDxsi4x4eG2HIFv7waxsCsa+erQgOf5g8+T5c7kIOa99Z5+Zq3kLAhGrIMqtZxn44oemw5Wl2U4ION2yZTdo/C8otpZMqu9rC9l+k4K3XiKN1Aqhyglx9TXNG6FgS8ygx5aBIBwUM,iv:spQdJ3otiZynCleiCG+u3mk/K3axKrfNtSOCzCGnnWQ=,tag:bMbjwOMCxi/+t+x0Xy0jnQ==,type:str] + jwtSecretFile: ENC[AES256_GCM,data:gVRyazB5RZ0fVrZ5/8eUuvJjdPBxjQg0vOrhXvgnv07sawti5Wj350UPBlBKthlvya8V6gZdBSl+Aj1nllP1Fl1tC8hDYb93ZmJdHo6CTicsu9lkMvWWfLe112Dhuptbg5AQAlWLu5TpjSGMT4UfXpLlKYdrzaDnIcWBAVn8k9lN,iv:hcHrAK/squwRyXQCx8pJXxVpq+KtcRwCqJ1NQpHpnL0=,tag:eQdM0gzYNw3/TfDBJYrkdg==,type:str] vaultwarden: environmentFile: ENC[AES256_GCM,data:HUFCO4di1hSEMitCSGy5wiDNPZ858NIlW/BnaxrFkE4Tws9RwvmhJ+l89/w7A0VGHAp3yNC+t1GUHgNadA15/Ymr7qL8Zby6o69CqZ3tFnMFmBJ9BL3ni0v1E/4iN5YFInMpmM+c8FjlGfTU2nRRu0WUOGR+5s7C8YSGILrDR+jr98YOKuTfiEKqvsGg8o0dc95CjhEtejeaVGimt9f+bWA54BPGkCT1HzD5boAoTwVbD4sxKDP5l5SnBC+mpzX3sECFkoE5E7SnQQEhKtrL+IffnMrcA3nG6AAyAGODuYZ7VNYQ3zNWBhR2nP0ospDelxaTu9aH6IMgMn4h4Y9LU+nCSHkJGykxGt4W6S8DnHxiaqJCpYwAeOaWFlItlsqlMSjYR2nB7OgUHIv5HLaC1Heyn9azZc/HQyHEjsDa0EsHX8HnmJ6kr2PkAXno+zCBZHnZvxKDWPfV9QqUPakZX9VwPg724zFFe+4OsFBzRiJLePA3hXdmnKJFJUr8cFj0QC/JXlkG3FbfogrnBE2BV6YH8PBmjLuZCII0St1LwB77YPcZDbNLnXUbbiM5/F+fGy04qg3/97sE7Sk/ZXh/Yv+SyvrqrizhXcnOlaciC0zY6DGirHzPuPAYraCkIpPmvTV+MGOICOg77sLSronoN7QohCw6SEZdPD9wSDpRMcbIs5PjfqlVu0rziyl8D1cbT6pmktrGcPKnzKeCpBJNgKE+EwwnB7Zymfj3xRxLZSl/x/1GPFuFtvDvwcWWBIU3IDEtI1zaH0PXbErtuvrttIYWx0+Il9VbxLpxjYl2NxEwfwdUmhU+O2Xw18h8leyu4hfX6a2BvLzLR7cLmSJdIeWiW7rU+qy+H9AMZ5TIZNgepXcN9TmVfTmoEm3HCzG+WJD66iMkdspkggpOxxyIMXia3ws80Eht+m0lrSM2eU6NFfVXxixEylQsxZJuiTqof7mQ71OlGlwWYyY11w2QZNeWmmZIOWwrH2L4u7Npj0qUxurafWOFr/022Y70BxpYO+CKysYppSjTKhiPLS5/8d0u4R3a30gnf/JigXisE06DiLYV6LYRxd003Q41A9UOUoZ7j+A115GUqwAuyD9mEHsH9e2zb3bF+a4QCQ2EaVTaWLHWN/pKnDTY4tSUnpr2HiBcF/dRYh9hMZ3S9khiG+7mj/8Wj1eHMB0dEkUMlU5HE/3Qgoga0oKmATekv6gFyRJ5FQxNNJH9RMN4h6ej6BxDbs5g2bdNScs3qPahpefJA/ITipe1y3qrsfHP4dgqGEn8oaiQxDnNvf5TwbHoX+kS5rlLi4x42cS9v8Ov9oZV92O3c+EuXwDVKW8FAoJh1wMNkJhHjjSCVmQWG1UQngkl3HPDjuPadhec0dWCxQh7/TIaS2JJXeHrURYSLmUV9RlzhGYJqmCZbw7oLU//EukfD9vjm591gX7U3rhu1aQNioZWdFtoGj88BJdHtSa2pxhJnwhruDrwpLOV7xXEK8FsV0SOXWP+MNAgCCWxL2KoLBqDvbr21x6rXS4a6M0+iYxIEIZRsODwTKW7hf+g7mLdKLTIv8ptJVX+zhCaFOR0JMAm/P+L48FPH9ccEUoNCwlSnl02wC9oxB+bTvIDnE7OB705ezwSi8Okh8V1fiQopRIKSutXVhMN7J+wda3Y39UzdEiVr/Qzf+pVkOY2RBp4pNQ2G4Umb31qbtamxOf5JoPqmXQhFopdFttC+iHNa0b13aj4kQITUX/lo7gzssSHyTABpkD5mBaA4HRGkVDTo2bAwsVttVH399NYXmSoGU8XKoLbtJ3caa38KrxN8czTl+oDMurds2xrWHIG+fU4nHIeRW3HxuTz+1zwuYoZD2L+813VEZ3+fcnH1AjdoZ21Ioi1P496s4v4huLC/NMq6A==,iv:n41XecN53vEw2xzCO+gS46TwH7Qy08Hra2NFJNHTEHg=,tag:4ypcVk6TvJbDoG11A5miCw==,type:str] openvpn: @@ -49,7 +52,7 @@ sops: TEhuRFBFQUppVjFKL3JKa0ozNmRLcTAKDrrS8mpHoQoZ54VkY+SYbjoE6AS0fLjc uHuFCrUWqQIwfqHXGlXn7EPUweTfwQ7Od+4JeVp1GbgNLIyH5xNN1g== -----END AGE ENCRYPTED FILE----- - lastmodified: "2026-01-24T18:45:44Z" - mac: ENC[AES256_GCM,data:MMLi9DX0EWFbde5rv6iALPYgHpbRRVcOWy4XI8Cs2SfuqKfYx0X9rEeKRs3xDEnFYNWopnqwKN5QLEd0QEXVjbvusl+XyN5Avh3I96zXNy0LD+zipv3nyXLFLvdfL8uxbSnFOcISeGf6d2Fl2Sw9x4HGRecZRDYGpFcMzHYLm3Y=,iv:PP4xr7ycKQMJYgDMbL5Ju6mYBYD/sy151MdPa+vEuNI=,tag:0IVF3jNv6K2AeaJXDaZ4/g==,type:str] + lastmodified: "2026-01-30T16:10:56Z" + mac: ENC[AES256_GCM,data:k4xzmrHO6k1kt4XJ/w4I0YuGP+xjRuwLXueXnSVdXMNoZMAUv+0n0U1bkPGaNi2iyAc8pW/8gwG6dP2CeDS7+9EPCTLa2/BETI85M2kQYonN2STLakUmFltOE6RuxAfxbokZxZOv9qZRwyIFXeIYZeQDtUg5s0ygEql5zQ/s3FI=,iv:Q4+4314QmjOgjCBIZ4cqPBLtQFm8XR6Vdexk6cwLUTg=,tag:mDiQ0nqmxvIq1uE/I1PRKA==,type:str] unencrypted_suffix: _unencrypted version: 3.11.0