Merge branch 'master' of ssh://ssh.nx2.site:50022/nx2/dotfiles

This commit is contained in:
Lennart J. Kurzweg (Nx2)
2026-03-30 15:00:18 +02:00
18 changed files with 200 additions and 156 deletions

View File

@@ -42,6 +42,8 @@
./system-modules/users.nix ./system-modules/users.nix
./system-modules/virtualisation.nix ./system-modules/virtualisation.nix
./system-modules/ydotool.nix ./system-modules/ydotool.nix
./system-modules/simple-postgres.nix
] ++ (if hyper.isServer then [ ] ++ (if hyper.isServer then [
./system-modules/nx2site.nix ./system-modules/nx2site.nix
./system-modules/hugo.nix ./system-modules/hugo.nix
@@ -49,6 +51,7 @@
./system-modules/nx2site/proxy.nix ./system-modules/nx2site/proxy.nix
./system-modules/nx2site/audiobookshelf.nix ./system-modules/nx2site/audiobookshelf.nix
# ./system-modules/nx2site/baikal.nix # ./system-modules/nx2site/baikal.nix
# ./system-modules/nx2site/nxcaldav.nix
./system-modules/nx2site/copyparty.nix ./system-modules/nx2site/copyparty.nix
./system-modules/nx2site/gitea.nix ./system-modules/nx2site/gitea.nix
./system-modules/nx2site/open-web-calendar.nix ./system-modules/nx2site/open-web-calendar.nix
@@ -57,7 +60,7 @@
./system-modules/nx2site/paperless.nix ./system-modules/nx2site/paperless.nix
./system-modules/calendar/publish.nix ./system-modules/calendar/publish.nix
./system-modules/calendar/lec.nix ./system-modules/calendar/lec.nix
./system-modules/calendar/lr.nix # ./system-modules/calendar/lr.nix
./system-modules/calendar/dicos.nix ./system-modules/calendar/dicos.nix
] else [ ]); ] else [ ]);
environment.systemPackages = import ./system-modules/base-packages.nix pkgs; environment.systemPackages = import ./system-modules/base-packages.nix pkgs;

View File

@@ -27,15 +27,15 @@
}, },
"NxNORTH": { "NxNORTH": {
"base": { "base": {
"foreground": "#e5e5e5", "foreground": "#d2cefc",
"background": "#0c0c0c" "background": "#030118"
}, },
"to_alter": { "to_alter": {
"accent": "#999999", "accent": "#4b3cf5",
"secondary": "#dddddd", "secondary": "#ff3632",
"tertiary": "#999999", "tertiary": "#fffc32",
"special": "#999999", "special": "#e6f53b",
"weird": "#999999" "weird": "#f53ba8"
} }
}, },
"NxDCS": { "NxDCS": {

140
flake.lock generated
View File

@@ -20,11 +20,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1772292445, "lastModified": 1774211390,
"narHash": "sha256-4F1Q7U313TKUDDovCC96m/Za4wZcJ3yqtu4eSrj8lk8=", "narHash": "sha256-sTtAgCCaX8VNNZlQFACd3i1IQ+DB0Wf3COgiFS152ds=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "aquamarine", "repo": "aquamarine",
"rev": "1dbbba659c1cef0b0202ce92cadfe13bae550e8f", "rev": "f62a4dbfa4e5584f14ad4c62afedf6e4b433cf70",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -39,11 +39,11 @@
"nixpkgs": "nixpkgs" "nixpkgs": "nixpkgs"
}, },
"locked": { "locked": {
"lastModified": 1772039265, "lastModified": 1774236832,
"narHash": "sha256-3TR+B2DmkkkIi/b0CE8PuKkmb2jgzdKrOPsIwdWhsM0=", "narHash": "sha256-xvMAU9wDGBwAtpMLrzN8jiNk5z0j0oHji6UX3JHqvA0=",
"owner": "9001", "owner": "9001",
"repo": "copyparty", "repo": "copyparty",
"rev": "7c60adc69c977fb4b75e31c576131b1379498c3f", "rev": "6a9e6da864f95d0f7ca7893c6e9d8f6d6a5801da",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -220,11 +220,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1772380125, "lastModified": 1773963144,
"narHash": "sha256-8C+y46xA9bxcchj9GeDPJaRUDApaA3sy2fhJr1bTbUw=", "narHash": "sha256-WzBOBfSay3GYilUfKaUa1Mbf8/jtuAiJIedx7fWuIX4=",
"owner": "nix-community", "owner": "nix-community",
"repo": "home-manager", "repo": "home-manager",
"rev": "a07a44a839eb036e950bf397d9b782916f8dcab3", "rev": "a91b3ea73a765614d90360580b689c48102d1d33",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -271,11 +271,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1753964049, "lastModified": 1772461003,
"narHash": "sha256-lIqabfBY7z/OANxHoPeIrDJrFyYy9jAM4GQLzZ2feCM=", "narHash": "sha256-pVICsV7FtcEeVwg5y/LFh3XFUkVJninm/P1j/JHzEbM=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "hyprcursor", "repo": "hyprcursor",
"rev": "44e91d467bdad8dcf8bbd2ac7cf49972540980a5", "rev": "b62396457b9cfe2ebf24fe05404b09d2a40f8ed7",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -300,11 +300,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1770511807, "lastModified": 1772461523,
"narHash": "sha256-suKmSbSk34uPOJDTg/GbPrKEJutzK08vj0VoTvAFBCA=", "narHash": "sha256-mI6A51do+hEUzeJKk9YSWfVHdI/SEEIBi2tp5Whq5mI=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "hyprgraphics", "repo": "hyprgraphics",
"rev": "7c75487edd43a71b61adb01cae8326d277aab683", "rev": "7d63c04b4a2dd5e59ef943b4b143f46e713df804",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -330,11 +330,11 @@
"xdph": "xdph" "xdph": "xdph"
}, },
"locked": { "locked": {
"lastModified": 1772543027, "lastModified": 1774270522,
"narHash": "sha256-EAhpSHxxxJiN/Cv7iZMobJxgvUR6BDKZ7wTPLNVYO5Y=", "narHash": "sha256-oS5dB/AxMfoU2uR/7d/0MRR9Kr+L8+P/j57k9P/uqzQ=",
"ref": "refs/heads/main", "ref": "refs/heads/main",
"rev": "7299a3b0d5332da030e980e60b0ee35b93387cff", "rev": "64a2e4e26388f017fd9198a6d70424f1f251a5a0",
"revCount": 6976, "revCount": 7051,
"submodules": true, "submodules": true,
"type": "git", "type": "git",
"url": "https://github.com/hyprwm/Hyprland" "url": "https://github.com/hyprwm/Hyprland"
@@ -378,11 +378,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1767023960, "lastModified": 1772467975,
"narHash": "sha256-R2HgtVS1G3KSIKAQ77aOZ+Q0HituOmPgXW9nBNkpp3Q=", "narHash": "sha256-kipyuDBxrZq+beYpZqWzGvFWm4QbayW9agAvi94vDXY=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "hyprland-guiutils", "repo": "hyprland-guiutils",
"rev": "c2e906261142f5dd1ee0bfc44abba23e2754c660", "rev": "5e1c6b9025aaf4d578f3eff7c0eb1f0c197a9507",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -403,11 +403,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1765214753, "lastModified": 1772460177,
"narHash": "sha256-P9zdGXOzToJJgu5sVjv7oeOGPIIwrd9hAUAP3PsmBBs=", "narHash": "sha256-/6G/MsPvtn7bc4Y32pserBT/Z4SUUdBd4XYJpOEKVR4=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "hyprland-protocols", "repo": "hyprland-protocols",
"rev": "3f3860b869014c00e8b9e0528c7b4ddc335c21ab", "rev": "1cb6db5fd6bb8aee419f4457402fa18293ace917",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -432,11 +432,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1771866172, "lastModified": 1772459629,
"narHash": "sha256-fYFoXhQLrm1rD8vSFKQBOEX4OGCuJdLt1amKfHd5GAw=", "narHash": "sha256-/iwvNUYShmmnwmz/czEUh6+0eF5vCMv0xtDW0STPIuM=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "hyprlang", "repo": "hyprlang",
"rev": "0b219224910e7642eb0ed49f0db5ec3d008e3e41", "rev": "7615ee388de18239a4ab1400946f3d0e498a8186",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -484,11 +484,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1764592794, "lastModified": 1772462885,
"narHash": "sha256-7CcO+wbTJ1L1NBQHierHzheQGPWwkIQug/w+fhTAVuU=", "narHash": "sha256-5pHXrQK9zasMnIo6yME6EOXmWGFMSnCITcfKshhKJ9I=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "hyprtoolkit", "repo": "hyprtoolkit",
"rev": "5cfe0743f0e608e1462972303778d8a0859ee63e", "rev": "9af245a69fa6b286b88ddfc340afd288e00a6998",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -509,11 +509,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1771271487, "lastModified": 1774211405,
"narHash": "sha256-41gEiUS0Pyw3L/ge1l8MXn61cK14VAhgWB/JV8s/oNI=", "narHash": "sha256-6KNwP4ojUzv3YBlZU5BqCpTrWHcix1Jo01BISsTT0xk=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "hyprutils", "repo": "hyprutils",
"rev": "340a792e3b3d482c4ae5f66d27a9096bdee6d76d", "rev": "cb4e152dc72095a2af422956c6b689590572231a",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -534,11 +534,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1770501770, "lastModified": 1772459835,
"narHash": "sha256-NWRM6+YxTRv+bT9yvlhhJ2iLae1B1pNH3mAL5wi2rlQ=", "narHash": "sha256-978jRz/y/9TKmZb/qD4lEYHCQGHpEXGqy+8X2lFZsak=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "hyprwayland-scanner", "repo": "hyprwayland-scanner",
"rev": "0bd8b6cde9ec27d48aad9e5b4deefb3746909d40", "rev": "0a692d4a645165eebd65f109146b8861e3a925e7",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -563,11 +563,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1771606233, "lastModified": 1773074819,
"narHash": "sha256-F3PLUqQ/TwgR70U+UeOqJnihJZ2EuunzojYC4g5xHr0=", "narHash": "sha256-qRqYnXiKoJLRTcfaRukn7EifmST2IVBUMZOeZMAc5UA=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "hyprwire", "repo": "hyprwire",
"rev": "06c7f1f8c4194786c8400653c4efc49dc14c0f3a", "rev": "f68afd0e73687598cc2774804fedad76693046f0",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -657,11 +657,11 @@
"nixpkgs": "nixpkgs_4" "nixpkgs": "nixpkgs_4"
}, },
"locked": { "locked": {
"lastModified": 1772386632, "lastModified": 1773882647,
"narHash": "sha256-sm6OpWZuoDwR53KNlsY482YOoHFWlWYwt0wHmqLkRGE=", "narHash": "sha256-VzcOcE0LLpEnyoxLuMuptZ9ZWCkSBn99bTgEQoz5Viw=",
"owner": "nix-community", "owner": "nix-community",
"repo": "NixOS-WSL", "repo": "NixOS-WSL",
"rev": "be894604b2aa2184c0b3d3b44995acd0da14dc0c", "rev": "fd0eae98d1ecee31024271f8d64676250a386ee7",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -720,11 +720,11 @@
}, },
"nixpkgs-latest": { "nixpkgs-latest": {
"locked": { "locked": {
"lastModified": 1772551582, "lastModified": 1774271360,
"narHash": "sha256-oW85BDFXoF2aWesTe27jnMY8y65n87B6qmPDbneQdWo=", "narHash": "sha256-8aJvsLag7A7KOT6dtl2aVGaJ5lneptPbw9/XBofjBDc=",
"owner": "nixos", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "3aafe1dc5f7d4a8c1c4ae1e7e075fdc8fb283c34", "rev": "b4a1d471b037c49896bb8f5183919a1ace66a457",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -752,11 +752,11 @@
}, },
"nixpkgs-unstable": { "nixpkgs-unstable": {
"locked": { "locked": {
"lastModified": 1772433332, "lastModified": 1774106199,
"narHash": "sha256-izhTDFKsg6KeVBxJS9EblGeQ8y+O8eCa6RcW874vxEc=", "narHash": "sha256-US5Tda2sKmjrg2lNHQL3jRQ6p96cgfWh3J1QBliQ8Ws=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "cf59864ef8aa2e178cccedbe2c178185b0365705", "rev": "6c9a78c09ff4d6c21d0319114873508a6ec01655",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -783,11 +783,11 @@
}, },
"nixpkgs_2": { "nixpkgs_2": {
"locked": { "locked": {
"lastModified": 1772198003, "lastModified": 1774106199,
"narHash": "sha256-I45esRSssFtJ8p/gLHUZ1OUaaTaVLluNkABkk6arQwE=", "narHash": "sha256-US5Tda2sKmjrg2lNHQL3jRQ6p96cgfWh3J1QBliQ8Ws=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "dd9b079222d43e1943b6ebd802f04fd959dc8e61", "rev": "6c9a78c09ff4d6c21d0319114873508a6ec01655",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -815,11 +815,11 @@
}, },
"nixpkgs_4": { "nixpkgs_4": {
"locked": { "locked": {
"lastModified": 1770019141, "lastModified": 1773734432,
"narHash": "sha256-VKS4ZLNx4PNrABoB0L8KUpc1fE7CLpQXQs985tGfaCU=", "narHash": "sha256-IF5ppUWh6gHGHYDbtVUyhwy/i7D261P7fWD1bPefOsw=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "cb369ef2efd432b3cdf8622b0ffc0a97a02f3137", "rev": "cda48547b432e8d3b18b4180ba07473762ec8558",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -831,11 +831,11 @@
}, },
"nixpkgs_5": { "nixpkgs_5": {
"locked": { "locked": {
"lastModified": 1772465433, "lastModified": 1773964973,
"narHash": "sha256-ywy9troNEfpgh0Ee+zaV1UTgU8kYBVKtvPSxh6clYGU=", "narHash": "sha256-NV/J+tTER0P5iJhUDL/8HO5MDjDceLQPRUYgdmy5wXw=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "c581273b8d5bdf1c6ce7e0a54da9841e6a763913", "rev": "812b3986fd1568f7a858f97fcf425ad996ba7d25",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -924,11 +924,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1772024342, "lastModified": 1774104215,
"narHash": "sha256-+eXlIc4/7dE6EcPs9a2DaSY3fTA9AE526hGqkNID3Wg=", "narHash": "sha256-EAtviqz0sEAxdHS4crqu7JGR5oI3BwaqG0mw7CmXkO8=",
"owner": "cachix", "owner": "cachix",
"repo": "git-hooks.nix", "repo": "git-hooks.nix",
"rev": "6e34e97ed9788b17796ee43ccdbaf871a5c2b476", "rev": "f799ae951fde0627157f40aec28dec27b22076d0",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -1046,11 +1046,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1772495394, "lastModified": 1774154798,
"narHash": "sha256-hmIvE/slLKEFKNEJz27IZ8BKlAaZDcjIHmkZ7GCEjfw=", "narHash": "sha256-zsTuloDSdKf+PrI1MsWx5z/cyGEJ8P3eERtAfdP8Bmg=",
"owner": "Mic92", "owner": "Mic92",
"repo": "sops-nix", "repo": "sops-nix",
"rev": "1d9b98a29a45abe9c4d3174bd36de9f28755e3ff", "rev": "3e0d543e6ba6c0c48117a81614e90c6d8c425170",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -1117,11 +1117,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1761431178, "lastModified": 1773601989,
"narHash": "sha256-xzjC1CV3+wpUQKNF+GnadnkeGUCJX+vgaWIZsnz9tzI=", "narHash": "sha256-2tJf/CQoHApoIudxHeJye+0Ii7scR0Yyi7pNiWk0Hn8=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "xdg-desktop-portal-hyprland", "repo": "xdg-desktop-portal-hyprland",
"rev": "4b8801228ff958d028f588f0c2b911dbf32297f9", "rev": "a9b862d1aa000a676d310cc62d249f7ad726233d",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -1137,11 +1137,11 @@
"rust-overlay": "rust-overlay_2" "rust-overlay": "rust-overlay_2"
}, },
"locked": { "locked": {
"lastModified": 1772540335, "lastModified": 1774260364,
"narHash": "sha256-NCG394pzUEr7H4r2NTSwzpCsVu/GnDgX2aMmHRizdts=", "narHash": "sha256-YRLjv6RDUB+7MZNeEgSdxCR+S7z4O+6dANdOWaa9P8I=",
"owner": "sxyazi", "owner": "sxyazi",
"repo": "yazi", "repo": "yazi",
"rev": "b92b576ce17c6e475e2c231c2ae9cbaf70de41bd", "rev": "5c05350d52cbbb490a353e2df192f36dd9d73218",
"type": "github" "type": "github"
}, },
"original": { "original": {

Binary file not shown.

View File

@@ -51,7 +51,7 @@ in {
home = { home = {
packages = with pkgs; [ packages = with pkgs; [
chatterino2 unstable.chatterino2
streamlink streamlink
# mpv # mpv
]; ];

View File

@@ -98,7 +98,6 @@
cursor-shape = { cursor-shape = {
normal = "block"; normal = "block";
insert = "bar"; insert = "bar";
select = "underline";
}; };
file-picker = { file-picker = {
hidden = false; # Enables ignoring hidden files hidden = false; # Enables ignoring hidden files
@@ -190,7 +189,7 @@
keys = { keys = {
normal = { normal = {
"C-g" = [ ":new" ":insert-output lazygit" ":buffer-close!" ":redraw" ]; "C-g" = [ ":new" ":insert-output lazygit" ":buffer-close!" ":redraw" ];
"C-m" = [ ":pipe fgl" "toggle_comments" ]; "C-m" = [ ":pipe nxfgl" "toggle_comments" ];
"A-`" = [ "no_op" ]; "A-`" = [ "no_op" ];
"`" = [ "no_op" ]; "`" = [ "no_op" ];
"ö" = { "s" = [ "switch_case" ]; "u" = [ "switch_to_uppercase" ]; "l" = [ "switch_to_lowercase" ]; }; "ö" = { "s" = [ "switch_case" ]; "u" = [ "switch_to_uppercase" ]; "l" = [ "switch_to_lowercase" ]; };
@@ -325,7 +324,6 @@
"constant.numeric" = foreground; "constant.numeric" = foreground;
"constructor" = secondary.bright; "constructor" = secondary.bright;
"debug" = yellow.base; "debug" = yellow.base;
"diagnostic.modifiers" = [ "underline" ];
"diff.delta" = subtle.bright; "diff.delta" = subtle.bright;
"diff.minus" = negative.bright; "diff.minus" = negative.bright;
"diff.plus" = positive.bright; "diff.plus" = positive.bright;

View File

@@ -40,15 +40,15 @@ in {
hyprshade hyprshade
hyprshot hyprshot
slurp slurp
xdg-desktop-portal-hyprland # xdg-desktop-portal-hyprland
]; ];
wayland.windowManager.hyprland = { wayland.windowManager.hyprland = {
enable = true; enable = true;
# package = pkgs-unstable.hyprland; # package = pkgs-unstable.hyprland;
package = pkgs.hyprland; # package = pkgs.hyprland;
# package = inputs.hyprland.packages.${pkgs.system}.hyprland; package = inputs.hyprland.packages.${hyper.system}.hyprland;
xwayland.enable = true; xwayland.enable = true;
systemd.enable = true; systemd.enable = true;
plugins = [ plugins = [
@@ -248,74 +248,74 @@ in {
# "hyprswitch --daemon" # "hyprswitch --daemon"
]; ];
windowrulev2 = [ windowrule = [
"bordercolor rgba(${rice.lib.nohash rice.color.special.bright}ff), pinned:1" "border_color rgba(${rice.lib.nohash rice.color.special.bright}ff) rgba(${rice.lib.nohash rice.color.special.brighter}ff), match:pin 1"
"bordersize 0, floating:0, onworkspace:w[tv1]" "border_size 0, match:float 0, match:workspace w[tv1]"
"rounding 0, floating:0, onworkspace:w[tv1]" "rounding 0, match:float 0, match:workspace w[tv1]"
"bordersize 0, floating:0, onworkspace:f[1]" "border_size 0, match:float 0, match:workspace f[1]"
"rounding 0, floating:0, onworkspace:f[1]" "rounding 0, match:float 0, match:workspace f[1]"
] ++ [ ] ++ [
"center 1,class:^(gimp)$" "center 1,match:class ^(gimp)$"
"float, class:^(ibus-ui.*)$" "float on, match:class ^(ibus-ui.*)$"
"float, class:^(ibus-ui-gtk3)$" "float on, match:class ^(ibus-ui-gtk3)$"
"float, class:^(imv)$" "float on, match:class ^(imv)$"
"float, class:^(org.kde.polkit-kde-authentication-agent-1)$" "float on, match:class ^(org.kde.polkit-kde-authentication-agent-1)$"
"float, class:^(presenter)$" # sent "float on, match:class ^(presenter)$" # sent
"float, class:^(thunderbird)$" "float on, match:class ^(thunderbird)$"
"float, title:^(Compact folders)$" "float on, match:title ^(Compact folders)$"
"float, title:^(Ibus-ui.*)$" "float on, match:title ^(Ibus-ui.*)$"
"float, title:^(Ibus-ui-gtk3)$" "float on, match:title ^(Ibus-ui-gtk3)$"
"float, title:^(Page Info .*)$" "float on, match:title ^(Page Info .*)$"
"float, title:^(Picture-in-Picture)$" "float on, match:title ^(Picture-in-Picture)$"
"float, title:^(wlogout)$" "float on, match:title ^(wlogout)$"
"fullscreen, class:^(imv)$" "fullscreen on, match:class ^(imv)$"
"fullscreen, class:^(sent)$" "fullscreen on, match:class ^(sent)$"
"fullscreen, class:^(wlogout)$" "fullscreen on, match:class ^(wlogout)$"
"noanim, class:^(imv)$" "no_anim on, match:class ^(imv)$"
"noanim, class:^(presenter)$" # sent "no_anim on, match:class ^(presenter)$" # sent
"opacity ${transparency}, class:^(Code)$" "opacity ${transparency}, match:class ^(Code)$"
"opacity ${transparency}, class:^(code-oss)$" "opacity ${transparency}, match:class ^(code-oss)$"
"opacity ${transparency}, class:^(discord)$" "opacity ${transparency}, match:class ^(discord)$"
# "opacity ${transparency}, class:^(vesktop)$" # "opacity ${transparency}, match:class ^(vesktop)$"
# "opacity ${transparency}, class:^(Element)$" # "opacity ${transparency}, match:class ^(Element)$"
"opacity ${transparency}, class:^(lutris)$" "opacity ${transparency}, match:class ^(lutris)$"
"opacity ${transparency}, class:^(neovide)$" "opacity ${transparency}, match:class ^(neovide)$"
# "opacity ${transparency}, class:^(obsidian)$" # "opacity ${transparency}, match:class ^(obsidian)$"
"opacity ${transparency}, class:^(VSCodium)$" "opacity ${transparency}, match:class ^(VSCodium)$"
"opacity ${transparency}, title:^(wlogout)$" "opacity ${transparency}, match:title ^(wlogout)$"
"opaque, title:^(GNU Image Manipulation Program)$" "opaque on, match:title ^(GNU Image Manipulation Program)$"
"opaque, fullscreen:1" "opaque on, match:fullscreen 1"
"pin, title:^(Picture-in-Picture)$" "pin on, match:title ^(Picture-in-Picture)$"
"tile, class:^(sent)$" "tile on, match:class ^(sent)$"
"workspace 100, class:^(gamescope)$" "workspace 100, match:class ^(gamescope)$"
"float, title:^(terminal-file-picker)$" "float on, match:title ^(terminal-file-picker)$"
"dimaround, title:^(terminal-file-picker)$" "dim_around on, match:title ^(terminal-file-picker)$"
"center, title:^(terminal-file-picker)$" "center on, match:title ^(terminal-file-picker)$"
"size 80% 80%, title:^(terminal-file-picker)$" "size 80% 80%, match:title ^(terminal-file-picker)$"
# "size 30% 30%, initialTitle:^(Select Calendar)$" "float on, match:initial_title ^(Select Calendar)$"
]; "size 30% 30%, match:initial_title ^(Select Calendar)$"
];
layerrule = [ layerrule = [
"blur,waybar" "blur on, match:namespace waybar"
"blur,bar-0" # hyprpanel "blur on, match:namespace bar-0" # hyprpanel
"blur,bar-1" "blur on, match:namespace bar-1"
"blur,bar-2" "blur on, match:namespace bar-2"
"blur,bar-3" "blur on, match:namespace bar-3"
"blur,bar-4" "blur on, match:namespace bar-4"
"dimaround,rofi" "blur on, match:namespace rofi"
"blur,rofi" "dim_around on, match:namespace rofi"
"xray,rofi"
]; ];
@@ -389,6 +389,7 @@ in {
"SUPER, W, submap, browserSM " "SUPER, W, submap, browserSM "
# "SUPER, E, exec, element-desktop" # "SUPER, E, exec, element-desktop"
"SUPER, R, exec, rofi -show drun" "SUPER, R, exec, rofi -show drun"
"SUPER SHIFT, R, exec, rofi -show drun"
# "SUPER, T, exec, alacritty" # "SUPER, T, exec, alacritty"
# "SUPER SHIFT, T, exec, alacritty -e sh -c "ssh nxace"" # "SUPER SHIFT, T, exec, alacritty -e sh -c "ssh nxace""
"SUPER, T, exec, SESSION_FROM_DE=TRUE ${terminal}" "SUPER, T, exec, SESSION_FROM_DE=TRUE ${terminal}"
@@ -435,7 +436,7 @@ in {
"SUPER SHIFT, C, exec, hyprpicker -n -a" "SUPER SHIFT, C, exec, hyprpicker -n -a"
"SUPER, V, togglefloating, " "SUPER, V, togglefloating, "
# "SUPER, B, exec, bitwarden" # "SUPER, B, exec, bitwarden"
"SUPER, N, togglesplit" "SUPER, N, layoutmsg, togglesplit"
# "SUPER, M, exec, /home/nx2/scripts/meme-full-screen/meme-full-screen.sh " # "SUPER, M, exec, /home/nx2/scripts/meme-full-screen/meme-full-screen.sh "
''SUPER, M, exec, sh -c "hyprshade on $(find ${hyper.home}/.config/hypr/shaders -type f | sed -E 's-.*shaders/(.+)\.glsl-\1-g' | rofi -dmenu)"'' ''SUPER, M, exec, sh -c "hyprshade on $(find ${hyper.home}/.config/hypr/shaders -type f | sed -E 's-.*shaders/(.+)\.glsl-\1-g' | rofi -dmenu)"''
"SUPER Shift, M, exec, hyprshade off" "SUPER Shift, M, exec, hyprshade off"

View File

@@ -14,10 +14,11 @@
latest.antigravity latest.antigravity
element-desktop element-desktop
obsidian obsidian
fontforge-gtk
zoom-us zoom-us
inkscape inkscape
audacity audacity
gemini-cli unstable.gemini-cli
libreoffice libreoffice
]) else []); ]) else []);
} }

View File

@@ -492,11 +492,9 @@ in {
xdgOpenUsePortal = true; xdgOpenUsePortal = true;
config.common."org.freedesktop.impl.portal.FileChooser" = "termfilechooser"; config.common."org.freedesktop.impl.portal.FileChooser" = "termfilechooser";
extraPortals = [ tfc ] ++ (with pkgs; [ extraPortals = [ tfc ] ++ (with pkgs; [
xdg-desktop-portal-hyprland
xdg-desktop-portal xdg-desktop-portal
xdg-desktop-portal-gnome xdg-desktop-portal-gnome
xdg-desktop-portal-gtk xdg-desktop-portal-gtk
xdg-desktop-portal-hyprland
xdg-desktop-portal-wlr xdg-desktop-portal-wlr
]); ]);
}; };

View File

@@ -23,7 +23,8 @@ from ics import Calendar
import requests import requests
def filter_events(events): def filter_events(events):
return [event for event in events if ("LR" in event.name)] return [event for event in events if ("WT" in event.name)]
# return [event for event in events if ("LR" in event.name)]
# return [event for event in events if ("LR" in event.name) or ("TBD" in event.name)] # return [event for event in events if ("LR" in event.name) or ("TBD" in event.name)]
def fetch_and_save_ical_events(ical_urls, save_path): def fetch_and_save_ical_events(ical_urls, save_path):
@@ -62,7 +63,7 @@ def fetch_and_save_ical_events(ical_urls, save_path):
if __name__ == "__main__": if __name__ == "__main__":
# Replace with your iCal URL and target file path # Replace with your iCal URL and target file path
ICAL_URLS = [ ICAL_URLS = [
"https://zlypher.github.io/lol-events/cal/league-of-legends-nlc.ical", # "https://zlypher.github.io/lol-events/cal/league-of-legends-nlc.ical",
"https://zlypher.github.io/lol-events/cal/league-of-legends-emea-masters.ical" "https://zlypher.github.io/lol-events/cal/league-of-legends-emea-masters.ical"
] ]
SAVE_PATH = "${config.services.nginx.virtualHosts."${hyper.domain}".root}/lr.ics" SAVE_PATH = "${config.services.nginx.virtualHosts."${hyper.domain}".root}/lr.ics"

View File

@@ -11,13 +11,15 @@
# }; # };
# # useTextGreeter = true; # # useTextGreeter = true;
# }; # };
services.displayManager.ly = { services.xserver.displayManager.lightdm.enable = false;
services.displayManager.ly = pkgs.lib.mkIf (!hyper.isServer) {
# info and docs at https://codeberg.org/fairyglade/ly/src/branch/master/res/config.ini # info and docs at https://codeberg.org/fairyglade/ly/src/branch/master/res/config.ini
enable = true; enable = true;
package = pkgs.ly; package = pkgs.ly;
settings = with rice.color; let h = rice.lib.nohash; in { settings = with rice.color; let h = rice.lib.nohash; in {
allow_empty_password = false; allow_empty_password = false;
animation = "matrix"; # animation = "matrix";
animation = "gameoflife";
animation_timeout_sec = 0; # forever animation_timeout_sec = 0; # forever
asterisk = "*"; asterisk = "*";
auth_fails = 10; auth_fails = 10;

View File

@@ -1,6 +1,7 @@
{ ... }: { { pkgs, ... }@all: with all; {
programs.hyprland = { programs.hyprland = {
enable = true; enable = true;
package = inputs.hyprland.packages.${hyper.system}.hyprland;
xwayland.enable = true; xwayland.enable = true;
}; };
services.xserver.enable = true; services.xserver.enable = true;

View File

@@ -65,6 +65,8 @@ let git-user = "git"; in
SSH_PORT = secrets.ssh.port; SSH_PORT = secrets.ssh.port;
DOMAIN = "git.${hyper.domain}"; DOMAIN = "git.${hyper.domain}";
SSH_DOMAIN = "ssh.${hyper.domain}"; SSH_DOMAIN = "ssh.${hyper.domain}";
ENABLE_PUSH_CREATE_USER = true;
ENABLE_PUSH_CREATE_ORG = true;
# HTTP_ADDR = "${config.services.gitea.settings.server.DOMAIN}"; # HTTP_ADDR = "${config.services.gitea.settings.server.DOMAIN}";
# HTTP_PORT = 3000; # default # HTTP_PORT = 3000; # default
# PROTOCOL = "http"; # default # PROTOCOL = "http"; # default

View File

@@ -0,0 +1 @@
{ pkgs, ... }@all: with all; { }

View File

@@ -1,9 +1,8 @@
{ pkgs, ... }@all: with all; { pkgs, ... }@all: with all; {
{
services = { services = {
open-web-calendar = { open-web-calendar = {
enable = true; enable = true;
domain = "cal.${hyper.domain}"; domain = "owc.${hyper.domain}";
package = pkgs.open-web-calendar; package = pkgs.open-web-calendar;
settings = { settings = {
# PORT = 21342; # PORT = 21342;
@@ -11,4 +10,5 @@
calendarSettings = { }; calendarSettings = { };
}; };
}; };
# proxy endpoint is done is done automatically
} }

View File

@@ -156,6 +156,10 @@
listen = dl; listen = dl;
locations = { "/" = { proxyPass = "http://127.0.0.1:5232"; }; }; locations = { "/" = { proxyPass = "http://127.0.0.1:5232"; }; };
}); });
"nxc.${hyper.domain}" = lib.mkIf config.services.radicale.enable (vh // {
listen = dl;
locations = { "/" = { proxyPass = "http://127.0.0.1:14243"; }; };
});
# "nc.${hyper.domain}" = vh // { # "nc.${hyper.domain}" = vh // {
# # directly to nc # # directly to nc
# }; # };
@@ -185,17 +189,13 @@
}; };
}; };
# is done atomatically # is done atomatically
# "cal.${hyper.domain}" = vh // { # "owc.${hyper.domain}" = vh // {
# listen = dl; # listen = dl;
# locations = { "/" = { # locations = { "/" = {
# proxyPass = "http://unix:///run/open-web-calendar/socket"; # proxyPass = "http://unix:///run/open-web-calendar/socket";
# proxyWebsockets = true; # proxyWebsockets = true;
# }; }; # }; };
# }; # };
# "baikal.${hyper.domain}" = {
# forceSSL = true;
# enableACME = true;
# };
"file.${hyper.domain}" = { # copyparty "file.${hyper.domain}" = { # copyparty
listen = dl; listen = dl;
forceSSL = true; forceSSL = true;

View File

@@ -28,6 +28,7 @@
"vaultwarden" "vaultwarden"
"paperless" "paperless"
"nextcloud" "nextcloud"
"nxcaldav"
]; ];
settings = { settings = {
port = 5432; # default port = 5432; # default
@@ -54,6 +55,10 @@
name = "paperless"; name = "paperless";
ensureDBOwnership = true; ensureDBOwnership = true;
} }
{
name = "nxcaldav";
ensureDBOwnership = true;
}
]; ];
}; };
postgresqlBackup = { postgresqlBackup = {

View File

@@ -0,0 +1,31 @@
{ pkgs, ... }@all: with all; {
services.postgresql = {
enable = false;
ensureUsers = [{
name = "nxcaldav";
ensureDBOwnership = true;
}];
package = pkgs.postgresql_16; # https://stackoverflow.com/questions/51688193/how-to-upgrade-postgresql-in-nixos
dataDir = "/var/lib/postgresql/${config.services.postgresql.package.psqlSchema}"; # default
enableJIT = false; # default
initdbArgs = []; # default
checkConfig = true; # default
enableTCPIP = false;
# # extraPlugins =
initialScript = null; # default
authentication = lib.mkForce ''
# TYPE DATABASE USER ADDRESS METHOD
local all all trust
host all all 127.0.0.1/32 trust #scram-sha-256
host all all ::1/128 trust #scram-sha-256
'';
settings = {
port = 5432; # default
listen_addresses = lib.mkForce "127.0.0.1";
log_line_prefix = "[%p] "; # default
shared_preload_libraries = [ ]; # default
};
ensureDatabases = [ "nxcaldav" ];
};
}