diff --git a/flake.lock b/flake.lock index afde90a..eba3c62 100644 --- a/flake.lock +++ b/flake.lock @@ -20,11 +20,11 @@ ] }, "locked": { - "lastModified": 1750372185, - "narHash": "sha256-lVBKxd9dsZOH1fA6kSE5WNnt8e+09fN+NL/Q3BjTWHY=", + "lastModified": 1751740947, + "narHash": "sha256-35040CHH7P3JGmhGVfEb2oJHL/A5mI2IXumhkxrBnao=", "owner": "hyprwm", "repo": "aquamarine", - "rev": "7cef49d261cbbe537e8cb662485e76d29ac4cbca", + "rev": "dfc1db15a08c4cd234288f66e1199c653495301f", "type": "github" }, "original": { @@ -186,11 +186,11 @@ ] }, "locked": { - "lastModified": 1749154018, - "narHash": "sha256-gjN3j7joRvT3a8Zgcylnd4NFsnXeDBumqiu4HmY1RIg=", + "lastModified": 1752544374, + "narHash": "sha256-ReX0NG6nIAEtQQjLqeu1vUU2jjZuMlpymNtb4VQYeus=", "owner": "nix-community", "repo": "home-manager", - "rev": "7aae0ee71a17b19708b93b3ed448a1a0952bf111", + "rev": "2e00ed310c218127e02ffcf28ddd4e0f669fde3e", "type": "github" }, "original": { @@ -245,11 +245,11 @@ ] }, "locked": { - "lastModified": 1750371717, - "narHash": "sha256-cNP+bVq8m5x2Rl6MTjwfQLCdwbVmKvTH7yqVc1SpiJM=", + "lastModified": 1751808145, + "narHash": "sha256-OXgL0XaKMmfX2rRQkt9SkJw+QNfv0jExlySt1D6O72g=", "owner": "hyprwm", "repo": "hyprgraphics", - "rev": "15c6f8f3a567fec9a0f732cd310a7ff456deef88", + "rev": "b841473a0bd4a1a74a0b64f1ec2ab199035c349f", "type": "github" }, "original": { @@ -274,11 +274,11 @@ "xdph": "xdph" }, "locked": { - "lastModified": 1750589353, - "narHash": "sha256-ESfhPjQ6E/JUdFknr+HTHqZU5ZcwlTODemMTxApg1D0=", + "lastModified": 1752611080, + "narHash": "sha256-KSilz1CULyQlhEYIuGuEqSO9tbMxSsSAHEEWZxvF6jg=", "ref": "refs/heads/main", - "rev": "dd33128c2f127f39c30cca72addb1970b8936d07", - "revCount": 6213, + "rev": "8453fbf4eb0af2e3265fd34a693b7d0e9167f4d2", + "revCount": 6276, "submodules": true, "type": "git", "url": "https://github.com/hyprwm/Hyprland" @@ -306,11 +306,11 @@ ] }, "locked": { - "lastModified": 1750503578, - "narHash": "sha256-/qnR7/GvGP1cGtOOm4OGJRtkVejn75/jsvJpiqE1ZDk=", + "lastModified": 1752254688, + "narHash": "sha256-XJJ+frO4NOxVkoSGc1Mag8ESumzx2FmVRspOgFlMqF8=", "owner": "hyprwm", "repo": "hyprland-plugins", - "rev": "8b4405ab46cafc471d5b09ff7258676dc9aaca59", + "rev": "d723e5b153b7990d36e62a425bda3768c41dd9eb", "type": "github" }, "original": { @@ -449,11 +449,11 @@ "systems": "systems_2" }, "locked": { - "lastModified": 1747531250, - "narHash": "sha256-uDhXNURTJgQSpiaCgzqAizbblpcEWEB1WGWEqtCnLLM=", + "lastModified": 1751272032, + "narHash": "sha256-493llKN7yyLkKlz8uYVAyvXH261IpDzuVA+TnewFIAg=", "owner": "KZDKM", "repo": "Hyprspace", - "rev": "511d399120bdcafb43e57ca5ff35167c2bba6db8", + "rev": "847a770436e1ecebdbe5ed006a93db7666937ff2", "type": "github" }, "original": { @@ -474,11 +474,11 @@ ] }, "locked": { - "lastModified": 1750371096, - "narHash": "sha256-JB1IeJ41y7kWc/dPGV6RMcCUM0Xj2NEK26A2Ap7EM9c=", + "lastModified": 1751888065, + "narHash": "sha256-F2SV9WGqgtRsXIdUrl3sRe0wXlQD+kRRZcSfbepjPJY=", "owner": "hyprwm", "repo": "hyprutils", - "rev": "38f3a211657ce82a1123bf19402199b67a410f08", + "rev": "a8229739cf36d159001cfc203871917b83fdf917", "type": "github" }, "original": { @@ -499,11 +499,11 @@ ] }, "locked": { - "lastModified": 1750371869, - "narHash": "sha256-lGk4gLjgZQ/rndUkzmPYcgbHr8gKU5u71vyrjnwfpB4=", + "lastModified": 1751881472, + "narHash": "sha256-meB0SnXbwIe2trD041MLKEv6R7NZ759QwBcVIhlSBfE=", "owner": "hyprwm", "repo": "hyprwayland-scanner", - "rev": "aa38edd6e3e277ae6a97ea83a69261a5c3aab9fd", + "rev": "8fb426b3e5452fd9169453fd6c10f8c14ca37120", "type": "github" }, "original": { @@ -542,11 +542,11 @@ "nixpkgs": "nixpkgs_3" }, "locked": { - "lastModified": 1749574455, - "narHash": "sha256-fm2/8KPOYvvIAnNVtjDlTt/My00lIbZQ+LMrfQIWVzs=", + "lastModified": 1752199438, + "narHash": "sha256-xSBMmGtq8K4Qv80TMqREmESCAsRLJRHAbFH2T/2Bf1Y=", "owner": "nix-community", "repo": "NixOS-WSL", - "rev": "917af390377c573932d84b5e31dd9f2c1b5c0f09", + "rev": "d34d9412556d3a896e294534ccd25f53b6822e80", "type": "github" }, "original": { @@ -558,11 +558,11 @@ }, "nixpkgs": { "locked": { - "lastModified": 1750365781, - "narHash": "sha256-XE/lFNhz5lsriMm/yjXkvSZz5DfvKJLUjsS6pP8EC50=", + "lastModified": 1751792365, + "narHash": "sha256-J1kI6oAj25IG4EdVlg2hQz8NZTBNYvIS0l4wpr9KcUo=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "08f22084e6085d19bcfb4be30d1ca76ecb96fe54", + "rev": "1fd8bada0b6117e6c7eb54aad5813023eed37ccb", "type": "github" }, "original": { @@ -574,11 +574,11 @@ }, "nixpkgs-latest": { "locked": { - "lastModified": 1750591067, - "narHash": "sha256-E1cW8nG5JceZnbgd8mVAvIEa/PQpAEN7/FknHNUQBn0=", + "lastModified": 1752614774, + "narHash": "sha256-HD5CuswJyMHtnu3qfy+ZXL31UiUv1He/P3PkcCFKsGE=", "owner": "nixos", "repo": "nixpkgs", - "rev": "38e5187aeea047f16faa4f03a110c69e353b8396", + "rev": "bcf19e8298233816810cefc84c95b1616c531ade", "type": "github" }, "original": { @@ -606,11 +606,11 @@ }, "nixpkgs-unstable": { "locked": { - "lastModified": 1750365781, - "narHash": "sha256-XE/lFNhz5lsriMm/yjXkvSZz5DfvKJLUjsS6pP8EC50=", + "lastModified": 1752480373, + "narHash": "sha256-JHQbm+OcGp32wAsXTE/FLYGNpb+4GLi5oTvCxwSoBOA=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "08f22084e6085d19bcfb4be30d1ca76ecb96fe54", + "rev": "62e0f05ede1da0d54515d4ea8ce9c733f12d9f08", "type": "github" }, "original": { @@ -637,27 +637,27 @@ }, "nixpkgs_3": { "locked": { - "lastModified": 1749173751, - "narHash": "sha256-ENY3y3v6S9ZmLDDLI3LUT8MXmfXg/fSt2eA4GCnMVCE=", + "lastModified": 1751792365, + "narHash": "sha256-J1kI6oAj25IG4EdVlg2hQz8NZTBNYvIS0l4wpr9KcUo=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "ed29f002b6d6e5e7e32590deb065c34a31dc3e91", + "rev": "1fd8bada0b6117e6c7eb54aad5813023eed37ccb", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixos-24.11", + "ref": "nixos-unstable", "repo": "nixpkgs", "type": "github" } }, "nixpkgs_4": { "locked": { - "lastModified": 1750400657, - "narHash": "sha256-3vkjFnxCOP6vm5Pm13wC/Zy6/VYgei/I/2DWgW4RFeA=", + "lastModified": 1752436162, + "narHash": "sha256-Kt1UIPi7kZqkSc5HVj6UY5YLHHEzPBkgpNUByuyxtlw=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "b2485d56967598da068b5a6946dadda8bfcbcd37", + "rev": "dfcd5b901dbab46c9c6e80b265648481aafb01f8", "type": "github" }, "original": { @@ -692,11 +692,11 @@ ] }, "locked": { - "lastModified": 1749636823, - "narHash": "sha256-WUaIlOlPLyPgz9be7fqWJA5iG6rHcGRtLERSCfUDne4=", + "lastModified": 1750779888, + "narHash": "sha256-wibppH3g/E2lxU43ZQHC5yA/7kIKLGxVEnsnVK1BtRg=", "owner": "cachix", "repo": "git-hooks.nix", - "rev": "623c56286de5a3193aa38891a6991b28f9bab056", + "rev": "16ec914f6fb6f599ce988427d9d94efddf25fe6d", "type": "github" }, "original": { @@ -796,11 +796,11 @@ ] }, "locked": { - "lastModified": 1750119275, - "narHash": "sha256-Rr7Pooz9zQbhdVxux16h7URa6mA80Pb/G07T4lHvh0M=", + "lastModified": 1752544651, + "narHash": "sha256-GllP7cmQu7zLZTs9z0J2gIL42IZHa9CBEXwBY9szT0U=", "owner": "Mic92", "repo": "sops-nix", - "rev": "77c423a03b9b2b79709ea2cb63336312e78b72e2", + "rev": "2c8def626f54708a9c38a5861866660395bb3461", "type": "github" }, "original": { @@ -882,11 +882,11 @@ ] }, "locked": { - "lastModified": 1750372504, - "narHash": "sha256-VBeZb1oqZM1cqCAZnFz/WyYhO8aF/ImagI7WWg/Z3Og=", + "lastModified": 1751300244, + "narHash": "sha256-PFuv1TZVYvQhha0ac53E3YgdtmLShrN0t4T6xqHl0jE=", "owner": "hyprwm", "repo": "xdg-desktop-portal-hyprland", - "rev": "400308fc4f9d12e0a93e483c2e7a649e12af1a92", + "rev": "6115f3fdcb2c1a57b4a80a69f3c797e47607b90a", "type": "github" }, "original": { @@ -902,11 +902,11 @@ "rust-overlay": "rust-overlay_2" }, "locked": { - "lastModified": 1750515839, - "narHash": "sha256-I3FdBExb2eaLVD76Vkl9TFy/snKrE+od0x6vtTMcqXc=", + "lastModified": 1752505691, + "narHash": "sha256-kc52obJrTpkXIjT/r0f4Be78gy0QqbrzX7sTyrETirk=", "owner": "sxyazi", "repo": "yazi", - "rev": "3a9591a3d9d8f4c9fb990274e967bdef89177d14", + "rev": "60a2382087f2327e4e48f662b71a862886a06423", "type": "github" }, "original": { diff --git a/home-modules/calendar-campuszeit-fix.nix b/home-modules/calendar-campuszeit-fix.nix index 88fd4d6..fd7cd55 100644 --- a/home-modules/calendar-campuszeit-fix.nix +++ b/home-modules/calendar-campuszeit-fix.nix @@ -49,7 +49,7 @@ if __name__ == "__main__": text = /*bash*/ '' echo CHANGING OWNERSHIP OF "$(realpath "$1")" RECURSIVELY read -r -p "Continue?" - sudo chown -R ${user} "$1" + sudo chown -R ${hyper.user} "$1" ${u}/bin/nx_fix_campuszeit_python "$1" sudo chown -R radicale "$1" ''; diff --git a/home-modules/helix.nix b/home-modules/helix.nix index 6c97687..9bec5bc 100644 --- a/home-modules/helix.nix +++ b/home-modules/helix.nix @@ -184,7 +184,7 @@ supersend-menu = false; }; inline-diagnostics = { - cursor-line = "hint"; + cursor-line = "warning"; other-lines = "disable"; prefix-len = 1; # max-wrap = set above diff --git a/home-modules/opencode.nix b/home-modules/opencode.nix new file mode 100644 index 0000000..2d1655e --- /dev/null +++ b/home-modules/opencode.nix @@ -0,0 +1,30 @@ +{ pkgs, ... }@all: with all; { + home = { + packages = with pkgs; [ + unstable.opencode + ]; + file.".config/opencode/opencode.json".text = let + model = "qwen2.5-coder:7b"; + in builtins.toJSON { + "$schema" = "https://opencode.ai/config.json"; + model = "ollama/${model}"; + theme = "matrix"; + provider = { + ollama = { + apiKey = "KEY"; + disabled = false; + npm = "@ai-sdk/openai-compatible"; + options = { + baseURL = "http://localhost:11434/v1"; + }; + models = { + "${model}" = { + tools = true; + }; + }; + }; + }; + }; + }; +} + diff --git a/home-modules/pkgs-list/shell.nix b/home-modules/pkgs-list/shell.nix index 2e3bb5b..90a8f6b 100644 --- a/home-modules/pkgs-list/shell.nix +++ b/home-modules/pkgs-list/shell.nix @@ -10,6 +10,7 @@ ffmpeg figlet fzf + gh glib glow gnumake @@ -21,6 +22,7 @@ mediainfo mpv neofetch + pastel pdfgrep pipes pv diff --git a/home.nix b/home.nix index c02ce6e..f602ee6 100644 --- a/home.nix +++ b/home.nix @@ -34,6 +34,7 @@ ./home-modules/obs.nix ./home-modules/office.nix ./home-modules/ollama.nix + ./home-modules/opencode.nix ./home-modules/pandoc.nix ./home-modules/pkgs-list/desktop.nix ./home-modules/pkgs-list/programs.nix @@ -67,6 +68,7 @@ ] ++ (if (hyper.host == "NxACE") then [ ./home-modules/nx2site.nix ./home-modules/nx2site-backup.nix + ./home-modules/calendar-campuszeit-fix.nix ] else []); home.username = hyper.user; # home.homeDirectory = hyper.home; # for some reason you cant use hyper.home here diff --git a/nixos-wsl.nix b/nixos-wsl.nix index b0a9ade..dc484cd 100644 --- a/nixos-wsl.nix +++ b/nixos-wsl.nix @@ -18,5 +18,18 @@ defaultUser = hyper.user; enable = true; }; - nix.settings.experimental-features = [ "nix-command" "flakes" ]; + nix = { + settings = { + experimental-features = [ "nix-command" "flakes" ]; + substitute = true; + substituters = [ + "https://yazi.cachix.org" + ]; + trusted-public-keys = [ + "yazi.cachix.org-1:Dcdz63NZKfvUCbDGngQDAZq6kOroIrFoyO064uvLh8k=" + ]; + }; + }; + + nixpkgs.hostPlatform = hyper.system; } diff --git a/system-modules/nx2site/proxy.nix b/system-modules/nx2site/proxy.nix index f2678c7..0b636b9 100644 --- a/system-modules/nx2site/proxy.nix +++ b/system-modules/nx2site/proxy.nix @@ -90,11 +90,11 @@ "~^(/ba)$" = { return = "301 /BA.pdf"; }; "/.well-known/matrix/client" = { return = "502"; }; "/.well-known/matrix/server" = { return = "502"; }; - "/phone" = { return = "301 /en/cards/phone"; }; - "/about-me" = { return = "301 /en/slides/about-me"; }; - "/about-this-site" = { return = "301 /en/slides/about-this-site"; }; - "/gpg" = { return = "301 /en/cards/gpg"; }; - "/contact" = { return = "301 /en/cards/contact"; }; + "/phone" = { return = "301 /cards/phone"; }; + "/about-me" = { return = "301 /slides/about-me"; }; + "/about-this-site" = { return = "301 /slides/about-this-site"; }; + "/gpg" = { return = "301 /cards/gpg"; }; + "/contact" = { return = "301 /cards/contact"; }; }; }; "matrix.${hyper.domain}" = { diff --git a/system-modules/sshd.nix b/system-modules/sshd.nix index fbe42a1..6d54636 100644 --- a/system-modules/sshd.nix +++ b/system-modules/sshd.nix @@ -1,12 +1,11 @@ -{ hyper, secrets, ... }: - -{ +{ ... }@all: with all; { environment.etc."ssh/ssh_host_ed25519_key.pub".text = if (hyper.host == "NxNORTH") then "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIF1r5gUQPPS/dGB0SsvWtP6WdNWoxMwhhHRrqlO19cJt root@NxNORTH" else if ( hyper.host == "NxXPS" ) then "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIPf+08+t8a0lY2+nR1mhIU3vuksStiJOlojJjzCwFk7r root@NxXPS" - else - "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIBFfZpWVPlujsz3FklSVAM+tuYn4pzDSijhp5CeYNOZk root@NxACE"; + else if ( hyper.host == "NxACE" ) then + "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIBFfZpWVPlujsz3FklSVAM+tuYn4pzDSijhp5CeYNOZk root@NxACE" + else (assert 1==2; ""); sops.secrets."ssh/${hyper.host}-ssh_host_ed25519_key" = { mode = "0600"; path = "/etc/ssh/ssh_host_ed25519_key.shadow"; @@ -19,5 +18,6 @@ PrintLastLog = false; }; }; + # users authorized keys are set in users.nix }