This commit is contained in:
Lennart J. Kurzweg (Nx2)
2025-12-03 01:59:12 +01:00
parent 5d65da4fca
commit edda49ee66
27 changed files with 235 additions and 267 deletions

View File

@@ -18,7 +18,6 @@
./system-modules/gpg.nix ./system-modules/gpg.nix
./system-modules/hardware-configuration.nix ./system-modules/hardware-configuration.nix
./system-modules/health_reminder.nix ./system-modules/health_reminder.nix
./system-modules/hsmw.nix
./system-modules/kanata.nix ./system-modules/kanata.nix
./system-modules/terminal.nix ./system-modules/terminal.nix
./system-modules/kodi.nix ./system-modules/kodi.nix
@@ -62,7 +61,6 @@
]); ]);
environment.systemPackages = import ./system-modules/base-packages.nix pkgs; environment.systemPackages = import ./system-modules/base-packages.nix pkgs;
systemd.extraConfig = "DefaultLimitNOFILE=2048";
system.stateVersion = hyper.pkgs-version; system.stateVersion = hyper.pkgs-version;
nix.settings.experimental-features = [ "nix-command" "flakes" ]; nix.settings.experimental-features = [ "nix-command" "flakes" ];
programs.bash.shellInit = '' programs.bash.shellInit = ''

View File

@@ -1,13 +1,13 @@
{ {
"base": { "base": {
"foreground": "#eddbef", "foreground": "#feccd2",
"background": "#100711" "background": "#190003"
}, },
"to_alter": { "to_alter": {
"accent": "#ba71c0", "accent": "#fd344d",
"secondary": "#3266ff", "secondary": "#ff32c6",
"tertiary": "#4bb6e6", "tertiary": "#b935fc",
"special": "#76c071", "special": "#33fde4",
"weird": "#c08571" "weird": "#d3fd33"
} }
} }

138
flake.lock generated
View File

@@ -20,11 +20,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1762356719, "lastModified": 1764370710,
"narHash": "sha256-qwd/xdoOya1m8FENle+4hWnydCtlXUWLAW/Auk6WL7s=", "narHash": "sha256-7iZklFmziy6Vn5ZFy9mvTSuFopp3kJNuPxL5QAvtmFQ=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "aquamarine", "repo": "aquamarine",
"rev": "6d0b3567584691bf9d8fedb5d0093309e2f979c7", "rev": "561ae7fbe1ca15dfd908262ec815bf21a13eef63",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -39,11 +39,11 @@
"nixpkgs": "nixpkgs" "nixpkgs": "nixpkgs"
}, },
"locked": { "locked": {
"lastModified": 1763901903, "lastModified": 1764708670,
"narHash": "sha256-w7YsxTjldwhUBP5ypbcZvWyZgRQqp3NBfyk5BAfrFjQ=", "narHash": "sha256-Gdo9lD6JwXGMVFJ8ZHCENcxXg30SG72kwsHnxPDCscI=",
"owner": "9001", "owner": "9001",
"repo": "copyparty", "repo": "copyparty",
"rev": "fb9f0441c99833ab7bc035d76b9a89021270675a", "rev": "29925dc22b1f6810768d0af25d9c35ee35d88aa7",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -70,11 +70,11 @@
"flake-compat": { "flake-compat": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1747046372, "lastModified": 1761588595,
"narHash": "sha256-CIVLLkVgvHYbgI2UpXvIIBJ12HWgX+fjA8Xf8PUmqCY=", "narHash": "sha256-XKUZz9zewJNUj46b4AJdiRZJAvSZ0Dqj2BNfXvFlJC4=",
"owner": "edolstra", "owner": "edolstra",
"repo": "flake-compat", "repo": "flake-compat",
"rev": "9100a0f413b0c601e0533d1d94ffd501ce2e7885", "rev": "f387cd2afec9419c8ee37694406ca490c3f34ee5",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -220,16 +220,16 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1758463745, "lastModified": 1764613336,
"narHash": "sha256-uhzsV0Q0I9j2y/rfweWeGif5AWe0MGrgZ/3TjpDYdGA=", "narHash": "sha256-L979az28t/+SXvYw9qhOno5HLlDwkZOpz6LzCLnjmRM=",
"owner": "nix-community", "owner": "nix-community",
"repo": "home-manager", "repo": "home-manager",
"rev": "3b955f5f0a942f9f60cdc9cacb7844335d0f21c3", "rev": "f3902b5d8767985680875ad86d028371100faeb3",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "nix-community", "owner": "nix-community",
"ref": "release-25.05", "ref": "release-25.11",
"repo": "home-manager", "repo": "home-manager",
"type": "github" "type": "github"
} }
@@ -300,11 +300,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1762462052, "lastModified": 1763733840,
"narHash": "sha256-6roLYzcDf4V38RUMSqycsOwAnqfodL6BmhRkUtwIgdA=", "narHash": "sha256-JnET78yl5RvpGuDQy3rCycOCkiKoLr5DN1fPhRNNMco=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "hyprgraphics", "repo": "hyprgraphics",
"rev": "ffc999d980c7b3bca85d3ebd0a9fbadf984a8162", "rev": "8f1bec691b2d198c60cccabca7a94add2df4ed1a",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -329,11 +329,11 @@
"xdph": "xdph" "xdph": "xdph"
}, },
"locked": { "locked": {
"lastModified": 1763912895, "lastModified": 1764714403,
"narHash": "sha256-1mdM539nkqTWVHTHPCGHGrLu/UwsxeYWnrnHQaUh1qQ=", "narHash": "sha256-93TLkWcOvO8+YMS/Af7E+aDiWY1AAlkhH1I9oY6HpN4=",
"ref": "refs/heads/main", "ref": "refs/heads/main",
"rev": "2b0fd417d32278159d0ca1d23fb997588c37995b", "rev": "2cadc8ababb56331c110b7584e09fe0f9352672d",
"revCount": 6643, "revCount": 6666,
"submodules": true, "submodules": true,
"type": "git", "type": "git",
"url": "https://github.com/hyprwm/Hyprland" "url": "https://github.com/hyprwm/Hyprland"
@@ -377,11 +377,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1762755186, "lastModified": 1764616927,
"narHash": "sha256-ZjjETUHtoEhVN7JI1Cbt3p/KcXpK8ZQaPHx7UkG1OgA=", "narHash": "sha256-wRT0MKkpPo11ijSX3KeMN+EQWnpSeUlRtyF3pFLtlRU=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "hyprland-guiutils", "repo": "hyprland-guiutils",
"rev": "66356e20a8ed348aa49c1b9ceace786e224225b3", "rev": "25cedbfdc5b3ea391d8307c9a5bea315e5df3c52",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -431,11 +431,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1763254292, "lastModified": 1764612430,
"narHash": "sha256-JNgz3Fz2KMzkT7aR72wsgu/xNeJB//LSmdilh8Z/Zao=", "narHash": "sha256-54ltTSbI6W+qYGMchAgCR6QnC1kOdKXN6X6pJhOWxFg=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "hyprlang", "repo": "hyprlang",
"rev": "deea98d5b61d066bdc7a68163edd2c4bd28d3a6b", "rev": "0d00dc118981531aa731150b6ea551ef037acddd",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -483,11 +483,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1762463729, "lastModified": 1764592794,
"narHash": "sha256-2fYkU/mdz8WKY3dkDPlE/j6hTxIwqultsx4gMMsMns0=", "narHash": "sha256-7CcO+wbTJ1L1NBQHierHzheQGPWwkIQug/w+fhTAVuU=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "hyprtoolkit", "repo": "hyprtoolkit",
"rev": "88483bdee5329ec985f0c8f834c519cd18cfe532", "rev": "5cfe0743f0e608e1462972303778d8a0859ee63e",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -508,11 +508,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1763323331, "lastModified": 1764637132,
"narHash": "sha256-+Z0OfCo1MS8/aIutSAW5aJR9zTae1wz9kcJYMgpwN6M=", "narHash": "sha256-vSyiKCzSY48kA3v39GFu6qgRfigjKCU/9k1KTK475gg=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "hyprutils", "repo": "hyprutils",
"rev": "0c6411851cc779d551edc89b83966696201611aa", "rev": "2f2413801beee37303913fc3c964bbe92252a963",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -533,11 +533,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1755184602, "lastModified": 1763640274,
"narHash": "sha256-RCBQN8xuADB0LEgaKbfRqwm6CdyopE1xIEhNc67FAbw=", "narHash": "sha256-Uan1Nl9i4TF/kyFoHnTq1bd/rsWh4GAK/9/jDqLbY5A=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "hyprwayland-scanner", "repo": "hyprwayland-scanner",
"rev": "b3b0f1f40ae09d4447c20608e5a4faf8bf3c492d", "rev": "f6cf414ca0e16a4d30198fd670ec86df3c89f671",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -627,11 +627,11 @@
"nixpkgs": "nixpkgs_4" "nixpkgs": "nixpkgs_4"
}, },
"locked": { "locked": {
"lastModified": 1763738061, "lastModified": 1764591717,
"narHash": "sha256-VpNRcInaj1MOya8NmcqhFmdO7KGO7SSZelJQmPl6HoQ=", "narHash": "sha256-T/HMA0Bb/O6UnlGQ0Xt+wGe1j8m7eyyQ5+vVcCJslsM=",
"owner": "nix-community", "owner": "nix-community",
"repo": "NixOS-WSL", "repo": "NixOS-WSL",
"rev": "3bcc267c4e0efa023b98b9c5cfbe11b88ec2dc8f", "rev": "84d1dab290feb4865d0cfcffc7aa0cf9bc65c3b7",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -690,11 +690,11 @@
}, },
"nixpkgs-latest": { "nixpkgs-latest": {
"locked": { "locked": {
"lastModified": 1763929585, "lastModified": 1764721920,
"narHash": "sha256-uxJ8vJoupgc3oJYOK3UV/kbi1f4mXFsh1BuuozhZpfw=", "narHash": "sha256-dWPqUq4DMCfPSuIn+bHk5vjurDzbFv8ZxYRFw7aqtIc=",
"owner": "nixos", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "a5f13fe8d33e5dd3585980b288366665d35ed379", "rev": "9980b44a48544ae01409aa4bfaf8b3d45752838a",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -722,11 +722,11 @@
}, },
"nixpkgs-unstable": { "nixpkgs-unstable": {
"locked": { "locked": {
"lastModified": 1763678758, "lastModified": 1764517877,
"narHash": "sha256-+hBiJ+kG5IoffUOdlANKFflTT5nO3FrrR2CA3178Y5s=", "narHash": "sha256-pp3uT4hHijIC8JUK5MEqeAWmParJrgBVzHLNfJDZxg4=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "117cc7f94e8072499b0a7aa4c52084fa4e11cc9b", "rev": "2d293cbfa5a793b4c50d17c05ef9e385b90edf6c",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -753,11 +753,11 @@
}, },
"nixpkgs_2": { "nixpkgs_2": {
"locked": { "locked": {
"lastModified": 1763283776, "lastModified": 1764517877,
"narHash": "sha256-Y7TDFPK4GlqrKrivOcsHG8xSGqQx3A6c+i7novT85Uk=", "narHash": "sha256-pp3uT4hHijIC8JUK5MEqeAWmParJrgBVzHLNfJDZxg4=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "50a96edd8d0db6cc8db57dab6bb6d6ee1f3dc49a", "rev": "2d293cbfa5a793b4c50d17c05ef9e385b90edf6c",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -785,11 +785,11 @@
}, },
"nixpkgs_4": { "nixpkgs_4": {
"locked": { "locked": {
"lastModified": 1762977756, "lastModified": 1764517877,
"narHash": "sha256-4PqRErxfe+2toFJFgcRKZ0UI9NSIOJa+7RXVtBhy4KE=", "narHash": "sha256-pp3uT4hHijIC8JUK5MEqeAWmParJrgBVzHLNfJDZxg4=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "c5ae371f1a6a7fd27823bc500d9390b38c05fa55", "rev": "2d293cbfa5a793b4c50d17c05ef9e385b90edf6c",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -801,26 +801,26 @@
}, },
"nixpkgs_5": { "nixpkgs_5": {
"locked": { "locked": {
"lastModified": 1763622513, "lastModified": 1764522689,
"narHash": "sha256-1jQnuyu82FpiSxowrF/iFK6Toh9BYprfDqfs4BB+19M=", "narHash": "sha256-SqUuBFjhl/kpDiVaKLQBoD8TLD+/cTUzzgVFoaHrkqY=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "c58bc7f5459328e4afac201c5c4feb7c818d604b", "rev": "8bb5646e0bed5dbd3ab08c7a7cc15b75ab4e1d0f",
"type": "github" "type": "github"
}, },
"original": { "original": {
"id": "nixpkgs", "id": "nixpkgs",
"ref": "nixos-25.05", "ref": "nixos-25.11",
"type": "indirect" "type": "indirect"
} }
}, },
"nixpkgs_6": { "nixpkgs_6": {
"locked": { "locked": {
"lastModified": 1762286042, "lastModified": 1763806073,
"narHash": "sha256-OD5HsZ+sN7VvNucbrjiCz7CHF5zf9gP51YVJvPwYIH8=", "narHash": "sha256-FHsEKDvfWpzdADWj99z7vBk4D716Ujdyveo5+A048aI=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "12c1f0253aa9a54fdf8ec8aecaafada64a111e24", "rev": "878e468e02bfabeda08c79250f7ad583037f2227",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -894,11 +894,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1763319842, "lastModified": 1763988335,
"narHash": "sha256-YG19IyrTdnVn0l3DvcUYm85u3PaqBt6tI6VvolcuHnA=", "narHash": "sha256-QlcnByMc8KBjpU37rbq5iP7Cp97HvjRP0ucfdh+M4Qc=",
"owner": "cachix", "owner": "cachix",
"repo": "git-hooks.nix", "repo": "git-hooks.nix",
"rev": "7275fa67fbbb75891c16d9dee7d88e58aea2d761", "rev": "50b9238891e388c9fdc6a5c49e49c42533a1b5ce",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -980,11 +980,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1762396738, "lastModified": 1763952169,
"narHash": "sha256-BarSecuxtzp1boERdABLkkoxQTi6s/V33lJwUbWLrLY=", "narHash": "sha256-+PeDBD8P+NKauH+w7eO/QWCIp8Cx4mCfWnh9sJmy9CM=",
"owner": "oxalica", "owner": "oxalica",
"repo": "rust-overlay", "repo": "rust-overlay",
"rev": "c63598992afd54d215d54f2b764adc0484c2b159", "rev": "ab726555a9a72e6dc80649809147823a813fa95b",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -1016,11 +1016,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1763870012, "lastModified": 1764483358,
"narHash": "sha256-AHxFfIu73SpNLAOZbu/AvpLhZ/Szhx6gRPj9ufZtaZA=", "narHash": "sha256-EyyvCzXoHrbL467YSsQBTWWg4sR96MH1sPpKoSOelB4=",
"owner": "Mic92", "owner": "Mic92",
"repo": "sops-nix", "repo": "sops-nix",
"rev": "4e7d74d92398b933cc0e0e25af5b0836efcfdde3", "rev": "5aca6ff67264321d47856a2ed183729271107c9c",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -1107,11 +1107,11 @@
"rust-overlay": "rust-overlay_2" "rust-overlay": "rust-overlay_2"
}, },
"locked": { "locked": {
"lastModified": 1763600401, "lastModified": 1764675207,
"narHash": "sha256-druDd9HC3UxZSzCY+qaFp9QDCGfzrhv+Zrytia6lJUE=", "narHash": "sha256-zK0IjphY2ILHOmx8R2bPeW9/3jkvsxPJZBqOEW7FRgU=",
"owner": "sxyazi", "owner": "sxyazi",
"repo": "yazi", "repo": "yazi",
"rev": "a08b345a02c6b4c65239a0522f67e77a0132e88b", "rev": "c7739c5941ee93f6a3ffa55718fd98cec41da7cf",
"type": "github" "type": "github"
}, },
"original": { "original": {

View File

@@ -2,13 +2,13 @@
description = "Multisystem NixOS Flake of Lennart J. Kurzweg"; description = "Multisystem NixOS Flake of Lennart J. Kurzweg";
inputs = { inputs = {
nixpkgs.url = "nixpkgs/nixos-25.05"; nixpkgs.url = "nixpkgs/nixos-25.11";
nixpkgs-unstable.url = "nixpkgs/nixos-unstable"; nixpkgs-unstable.url = "nixpkgs/nixos-unstable";
nixpkgs-latest.url = "github:nixos/nixpkgs?ref=master"; nixpkgs-latest.url = "github:nixos/nixpkgs?ref=master";
nixpkgs24.url = "github:NixOS/nixpkgs/nixos-24.05"; nixpkgs24.url = "github:NixOS/nixpkgs/nixos-24.05";
home-manager = { home-manager = {
url = "github:nix-community/home-manager/release-25.05"; url = "github:nix-community/home-manager/release-25.11";
inputs.nixpkgs.follows = "nixpkgs"; inputs.nixpkgs.follows = "nixpkgs";
}; };
home-manager24 ={ home-manager24 ={
@@ -48,10 +48,10 @@
domain = "nx2.site"; domain = "nx2.site";
home = "/home/${user}"; home = "/home/${user}";
webroot = "/var/lib/hugo/nx2site/public"; webroot = "/var/lib/hugo/nx2site/public";
pkgs-version = "25.05"; pkgs-version = "25.11";
}; };
get-pkgs = let s = system; in { host, system?s, nixpkgs?inputs.nixpkgs, version?"25.05" }: import nixpkgs { get-pkgs = let s = system; in { host, system?s, nixpkgs?inputs.nixpkgs, version?"25.11" }: import nixpkgs {
inherit system config; inherit system config;
overlays = [(final: prev: { overlays = [(final: prev: {
unstable = import nixpkgs-unstable { inherit system config; }; unstable = import nixpkgs-unstable { inherit system config; };

View File

@@ -22,7 +22,7 @@
} // pkgs.lib.mkIf (pkgs.version != "24.05") { } // pkgs.lib.mkIf (pkgs.version != "24.05") {
shellInit = init; shellInit = init;
} // pkgs.lib.mkIf (pkgs.version != "25.05") { } // pkgs.lib.mkIf (pkgs.version != "25.11") {
profileExtra = init; profileExtra = init;
}; };
} }

View File

@@ -1,6 +1,6 @@
{ pkgs, ... }@all: with all; { pkgs, ... }@all: with all;
{ {
home.packages = with pkgs; [ home.packages = with pkgs; [
bitwarden bitwarden-desktop
]; ];
} }

View File

@@ -7,18 +7,19 @@ let
# "Caedrel" # "Caedrel"
# "EintrachtSpandau" # "EintrachtSpandau"
# "GamesDoneQuick" # "GamesDoneQuick"
"Odoamne" # "Odoamne"
"iwdominate" "iwdominate"
"imls" # "imls"
"gdolphn" "gdolphn"
"GRONKH" "GRONKH"
"handofblood" "handofblood"
"HisWattson" "HisWattson"
"Jankos" # "Jankos"
# "KuruHS" # "KuruHS"
"LEC" "LEC"
"lol_nemesis" "lol_nemesis"
# "NASA" # "NASA"
"nattynattlol"
"NoWay4u_Sir" "NoWay4u_Sir"
# "OfficialMikeShinoda" # "OfficialMikeShinoda"
"Rekkles" "Rekkles"

View File

@@ -4,7 +4,7 @@
# (gimp-with-plugins.override { # (gimp-with-plugins.override {
# plugins = with gimpPlugins; [ bimp ]; # plugins = with gimpPlugins; [ bimp ];
# }) # })
gimp unstable.gimp
]; ];
} }

View File

@@ -5,13 +5,27 @@
(writeShellScriptBin "gst" "awk -vOFS='' 'NR==FNR {all[i++] = $0; difffiles[$1] = $0; next;} ! ($2 in difffiles) {print; next;} {gsub($2, difffiles[$2]); print;} END {if (NR != FNR) {exit;} for (i in all) {print all[i];}}' <(git diff --color --stat=$(($(tput cols) - 3)) HEAD | sed '$d; s/^ //') <(git -c color.status=always status -sb)") (writeShellScriptBin "gst" "awk -vOFS='' 'NR==FNR {all[i++] = $0; difffiles[$1] = $0; next;} ! ($2 in difffiles) {print; next;} {gsub($2, difffiles[$2]); print;} END {if (NR != FNR) {exit;} for (i in all) {print all[i];}}' <(git diff --color --stat=$(($(tput cols) - 3)) HEAD | sed '$d; s/^ //') <(git -c color.status=always status -sb)")
]; ];
programs.git = { programs = {
enable = true; git = {
package = pkgs.gitFull; enable = true;
userName = ''Lennart J. Kurzweg (Nx2)''; package = pkgs.gitFull;
userEmail = "git@${hyper.domain}"; settings = {
user = {
Name = ''Lennart J. Kurzweg (Nx2)'';
Email = "git@${hyper.domain}";
};
credential = {
"https://git.da.dicos.de".username = lib.mkIf (hyper.host == "NxDCS") "lkurzweg";
"https://git.da.dicos.de".password = lib.mkIf (hyper.host == "NxDCS") "Test";
};
url."ssh://git@git.da.dicos.de/".insteadOf = lib.mkIf (hyper.host == "NxDCS") "https://git.da.dicos.de/";
url."ssh://git@github.com/".insteadOf = "https://github.com/";
pull.rebase = false; # true
};
};
delta = { delta = {
enable = true; enable = true;
enableGitIntegration = true;
options = { options = {
line-numbers = true; line-numbers = true;
side-by-side = false; side-by-side = false;
@@ -19,36 +33,27 @@
whitespace-error-style = "22 reverse"; whitespace-error-style = "22 reverse";
}; };
}; };
extraConfig = { lazygit = {
credential = { enable = true;
"https://git.da.dicos.de".username = lib.mkIf (hyper.host == "NxDCS") "lkurzweg"; package = pkgs.lazygit;
"https://git.da.dicos.de".password = lib.mkIf (hyper.host == "NxDCS") "Test"; settings = {
}; windowSize = "normal";
url."ssh://git@git.da.dicos.de/".insteadOf = lib.mkIf (hyper.host == "NxDCS") "https://git.da.dicos.de/"; gui.theme = with rice.color; {
url."ssh://git@github.com/".insteadOf = "https://github.com/"; lightTheme = false;
pull.rebase = false; # true activeBorderColor = [ foreground "bold" ];
}; inactiveBorderColor = [ border ];
}; optionsTextColor = [ tertiary.base ];
programs.lazygit = { selectedLineBgColor = [ secondary.base ];
enable = true; selectedRangeByColor = [ weird.bright ];
package = pkgs.lazygit; showRandomTip = true;
settings = { animateExplosion = true;
windowSize = "normal"; cherryPickedCommitFgColor = [ accent.base ]; # Foreground color of copied commit
gui.theme = with rice.color; { cherryPickedCommitBgColor = [ secondary.dark ]; # Background color of copied commit
lightTheme = false; markedBaseCommitFgColor = [ accent.base ]; # Foreground color of marked base commit (for rebase)
activeBorderColor = [ foreground "bold" ]; markedBaseCommitBgColor = [ secondary.dark ]; # Background color of marked base commit (for rebase)
inactiveBorderColor = [ border ]; unstagedChangesColor = [ negative.base ]; # Color for file with unstaged changes
optionsTextColor = [ tertiary.base ]; defaultFgColor = [ "default" ]; # Default text color
selectedLineBgColor = [ secondary.base ]; };
selectedRangeByColor = [ weird.bright ];
showRandomTip = true;
animateExplosion = true;
cherryPickedCommitFgColor = [ accent.base ]; # Foreground color of copied commit
cherryPickedCommitBgColor = [ secondary.dark ]; # Background color of copied commit
markedBaseCommitFgColor = [ accent.base ]; # Foreground color of marked base commit (for rebase)
markedBaseCommitBgColor = [ secondary.dark ]; # Background color of marked base commit (for rebase)
unstagedChangesColor = [ negative.base ]; # Color for file with unstaged changes
defaultFgColor = [ "default" ]; # Default text color
}; };
}; };
}; };

View File

@@ -307,7 +307,7 @@
"constructor" = weird.base; "constructor" = weird.base;
"debug" = yellow.base; "debug" = yellow.base;
"diagnostic.modifiers" = [ "underline" ]; "diagnostic.modifiers" = [ "underline" ];
"diff.delta" = blue.bright; "diff.delta" = subtle.bright;
"diff.minus" = negative.bright; "diff.minus" = negative.bright;
"diff.plus" = positive.bright; "diff.plus" = positive.bright;
"error" = red.base; "error" = red.base;
@@ -410,7 +410,7 @@
bg = black.bright; bg = black.bright;
}; };
"ui.statusline" = { "ui.statusline" = {
fg = blue.bright; fg = accent.bright;
bg = black.base; bg = black.base;
}; };
"ui.statusline.inactive" = { "ui.statusline.inactive" = {

View File

@@ -32,6 +32,7 @@
thumbfast # thumbnails on timeline hover thumbfast # thumbnails on timeline hover
# uosc # custom ui # uosc # custom ui
sponsorblock sponsorblock
# visualizer
]; ];
bindings = { bindings = {
"O" = ''no-osd cycle-values glsl-shaders "~~/shaders/invert.glsl" ""; show-text "Invert Shader"''; "O" = ''no-osd cycle-values glsl-shaders "~~/shaders/invert.glsl" ""; show-text "Invert Shader"'';

View File

@@ -1,29 +1,60 @@
{ pkgs, ... }@all: with all; { { pkgs, ... }@all: with all; {
home = { programs.opencode = {
packages = with pkgs; [ enable = true;
unstable.opencode package = pkgs.opencode;
]; themes.theme = with rice.color; let
# file.".config/opencode/opencode.json".text = let dl = color: { dark = color; light = color; };
# model = "qwen2.5-coder:7b"; in {
# in builtins.toJSON { accent = dl accent.base;
# "$schema" = "https://opencode.ai/config.json"; background = dl background;
# model = "ollama/${model}"; backgroundElement = dl subtle.dark;
# theme = "matrix"; backgroundPanel = dl subtle.darker;
# provider = { border = dl subtle.base;
# ollama = { borderActive = dl border;
# name = "Ollama (local)"; borderSubtle = dl subtle.dark;
# npm = "@ai-sdk/openai-compatible"; diffAdded = dl positive.base;
# options = { diffAddedBg = dl positive.darker;
# baseURL = "http://localhost:11434/v1"; diffAddedLineNumberBg = dl positive.dark;
# }; diffContext = dl foreground;
# models = { diffContextBg = dl subtle.dark;
# "${model}" = { diffHighlightAdded = dl positive.bright;
# tools = true; diffHighlightRemoved = dl negative.bright;
# }; diffHunkHeader = dl foreground;
# }; diffLineNumber = dl subtle.base;
# }; diffRemoved = dl negative.base;
# }; diffRemovedBg = dl negative.darker;
# }; diffRemovedLineNumberBg = dl negative.dark;
}; error = dl negative.dark;
info = dl special.base;
markdownBlockQuote = dl accent.base;
markdownCode = dl secondary.base;
markdownCodeBlock = dl secondary.base;
markdownEmph = dl accent.base;
markdownHeading = dl accent.base;
markdownHorizontalRule = dl border;
markdownImage = dl accent.base;
markdownImageText = dl accent.bright;
markdownLink = dl accent.base;
markdownLinkText = dl accent.bright;
markdownListEnumeration = dl foreground;
markdownListItem = dl foreground;
markdownStrong = dl accent.base;
markdownText = dl foreground;
primary = dl accent.base;
secondary = dl secondary.base;
success = dl positive.base;
syntaxComment = dl subtle.base;
syntaxFunction = dl accent.base;
syntaxKeyword = dl special.base;
syntaxNumber = dl tertiary.base;
syntaxOperator = dl accent.base;
syntaxPunctuation = dl foreground;
syntaxString = dl accent.base;
syntaxType = dl tertiary.base;
syntaxVariable = dl accent.base;
text = dl foreground;
textMuted = dl subtle.bright;
warning = dl weird.base;
};
};
} }

View File

@@ -14,5 +14,6 @@
wl-clipboard wl-clipboard
xclip xclip
wlr-randr wlr-randr
cava
]; ];
} }

View File

@@ -17,5 +17,6 @@
zoom-us zoom-us
inkscape inkscape
audacity audacity
gemini-cli
] else []); ] else []);
} }

View File

@@ -4,7 +4,7 @@
cmake cmake
cmatrix cmatrix
dig dig
du-dust dust
dysk dysk
exiftool exiftool
eza eza

View File

@@ -2,6 +2,6 @@
programs.go = { programs.go = {
enable = true; enable = true;
package = pkgs.go; package = pkgs.go;
goPath = "${config.xdg.dataHome}/go"; env.goPath = "${config.xdg.dataHome}/go";
}; };
} }

View File

@@ -1,6 +1,7 @@
{ pkgs, ... }@all: with all; { { pkgs, ... }@all: with all; {
home = { home = {
packages = with pkgs; [ packages = with pkgs; [
gdb
cargo cargo
clippy clippy
rustc rustc

View File

@@ -1,6 +1,6 @@
{ pkgs, ... }@all: with all; { { pkgs, ... }@all: with all; {
home = { home = {
packages = with pkgs; [ rofi-wayland ]; packages = with pkgs; [ rofi ];
file = let # the home-manager module sucks file = let # the home-manager module sucks
trdr = "${rice.lib.float-to-drune rice.transparency}"; trdr = "${rice.lib.float-to-drune rice.transparency}";
ts = builtins.toString; ts = builtins.toString;

View File

@@ -3,31 +3,39 @@
programs.ssh = { programs.ssh = {
enable = true; enable = true;
package = pkgs.openssh; package = pkgs.openssh;
addKeysToAgent = "yes"; enableDefaultConfig = false;
matchBlocks = let matchBlocks = let
nxace = name: { default = {
addKeysToAgent = "yes";
forwardAgent = false;
compression = false;
serverAliveInterval = 0;
serverAliveCountMax = 3;
hashKnownHosts = false;
userKnownHostsFile = "~/.ssh/known_hosts";
controlMaster = "no";
controlPath = "~/.ssh/master-%r@%n:%p";
controlPersist = "no";
};
nxace = name: default // {
host = name; host = name;
hostname = "ssh.${hyper.domain}"; hostname = "ssh.${hyper.domain}";
user = "nx2"; user = "nx2";
port = 50022; port = 50022;
identityFile = "${hyper.home}/vault/ssh/nxace-nx2-${hyper.host}"; identityFile = [ "${hyper.home}/vault/ssh/nxace-nx2-${hyper.host}" ];
}; };
in { in {
"*".identityFile = [ "*" = default;
"ssh.nx2.site" = default // { identityFile = [
"${hyper.home}/vault/ssh/nxace-nx2-${hyper.host}"
"${hyper.home}/vault/ssh/nxgit-nx2-${hyper.host}" "${hyper.home}/vault/ssh/nxgit-nx2-${hyper.host}"
"${hyper.home}/vault/ssh/github-noggynoggy-${hyper.host}" ]; };
"${hyper.home}/vault/ssh/tg-dm-informatik-tuda" "tg.dm.informatik.tu-darmstadt.de" = default // { identityFile = [ "${hyper.home}/vault/ssh/tg-dm-informatik-tuda" ]; };
(pkgs.lib.mkIf (hyper.host == "NxDCS") "${hyper.home}/vault/ssh/dcsgit-lkurzweg-${hyper.host}") "git.da.dicos.de" = default // { identityFile = [ "${hyper.home}/vault/ssh/dcsgit-lkurzweg-${hyper.host}" ]; };
]; "github.com" = default // { identityFile = [ "${hyper.home}/vault/ssh/github-noggynoggy-${hyper.host}" ]; };
"github.com".identityFile = [ "${hyper.home}/vault/ssh/github-noggynoggy-${hyper.host}" ]; "nxace" = (nxace "nxace" );
"nxace" = nxace "nxace"; "nxacel" = (nxace "nxacel") // { hostname = "10.0.1.1"; };
"nxacel" = (nxace "nxacel") // { hostname = "10.0.1.1"; }; "nxrpli" = (nxace "nxrpil") // { hostname = "10.0.1.31"; port = 22; };
"nxrpli" = (nxace "nxrpil") // { hostname = "10.0.1.31"; port = 22; };
"nxgit" = (nxace "nxgit") // {
user = "git";
identityFile = "${hyper.home}/vault/ssh/nxgit-nx2-${hyper.host}";
# addKeysToAgent = "1h";
};
}; };
}; };
services.ssh-agent = { services.ssh-agent = {

View File

@@ -224,7 +224,7 @@ in {
"image" = [ "image" = [
{ run = ''imv "$0" "$@"''; desc = "imv"; orphan = true; } { run = ''imv "$0" "$@"''; desc = "imv"; orphan = true; }
{ run = ''gimp "$0" "$@"''; desc = "gimp"; orphan = true; } { run = ''gimp "$0" "$@"''; desc = "gimp"; orphan = true; }
{ run = ''swww img --transition-type wipe --transition-angle 60 --transition-step 120 --transition-fps 120 "$@"''; desc = "swww wallpaper"; } { run = ''swww img --transition-type wipe --transition-angle 60 --transition-step 120 --transition-fps 120 "$0"''; desc = "swww wallpaper"; }
{ run = ''exiftool "$0"; echo "Press enter to return to yazi"; read''; desc = "View Exif Data"; } { run = ''exiftool "$0"; echo "Press enter to return to yazi"; read''; desc = "View Exif Data"; }
{ run = ''for f in "$0"; do magick "$f" -auto-orient "''${f%.*}.pdf"; done''; desc = "Convert to PDF"; } { run = ''for f in "$0"; do magick "$f" -auto-orient "''${f%.*}.pdf"; done''; desc = "Convert to PDF"; }
]; ];

View File

@@ -5,7 +5,7 @@ pkgs: with pkgs; [
git-crypt git-crypt
wget wget
curlHTTP3 curl
zip zip
unzip unzip
p7zip p7zip

View File

@@ -3,7 +3,7 @@
enable = true; enable = true;
settings = rec { settings = rec {
hyprland = { hyprland = {
command = "${pkgs.greetd.tuigreet}/bin/tuigreet --time --remember --cmd Hyprland --remember-user-session --window-padding 5"; command = "${pkgs.tuigreet}/bin/tuigreet --time --remember --cmd Hyprland --remember-user-session --window-padding 5";
user = hyper.user; user = hyper.user;
}; };
default_session = hyprland; default_session = hyprland;

View File

@@ -1,88 +1,14 @@
{ pkgs, ... }@all: with all; { pkgs, ... }@all: with all; {
{
# i18n.inputMethod = {
# type = "fcitx5";
# enable = true;
# fcitx5.addons = with pkgs; [
# fcitx5-gtk # alternatively, kdePackages.fcitx5-qt
# fcitx5-chinese-addons # table input method support
# fcitx5-nord # a color theme
# ];
# };
i18n.inputMethod = { i18n.inputMethod = {
enable = true; enable = true;
type = "fcitx5"; type = "fcitx5";
fcitx5.waylandFrontend = true; fcitx5 = {
fcitx5.addons = with pkgs; [ waylandFrontend = true;
fcitx5-gtk # alternatively, kdePackages.fcitx5-qt addons = with pkgs; [
fcitx5-chinese-addons # table input method support fcitx5-gtk
fcitx5-nord # a color theme qt6Packages.fcitx5-chinese-addons
]; fcitx5-nord
];
};
}; };
# i18n.inputMethod = {
# enabled = "fcitx5";
# ignoreUserConfig = true;
# waylandFrontend = true;
# fcitx5 = {
# addons = with pkgs-unstable; [
# rime-data
# fcitx5-rime
# # Chinese
# fcitx5-chinese-addons
# fcitx5-table-extra
# fcitx5-pinyin-moegirl
# fcitx5-pinyin-zhwiki
# # Japanese
# # fcitx5-mozc
# ];
# settings = {
# globalOptions = {
# Hotkey = {
# # Enumerate when press trigger key repeatedly
# EnumerateWithTriggerKeys = "True";
# # Skip first input method while enumerating
# EnumerateSkipFirst = "False";
# };
# "Hotkey/EnumerateForwardKeys" = { "0" = "Control+space"; };
# "Hotkey/EnumerateBackwardKeys" = { "0" = "Control+Shift+space"; };
# "Hotkey/PrevPage" = { "0" = "Up"; };
# "Hotkey/NextPage" = { "0" = "Down"; };
# "Hotkey/PrevCandidate" = { "0" = "Shift+Tab"; };
# "Hotkey/NextCandidate" = { "0" = "Tab"; };
# Behavior = {
# ActiveByDefault = "False"; # Active By Default
# ShareInputState = "No"; # Share Input State
# PreeditEnabledByDefault = "True"; # Show preedit in application
# ShowInputMethodInformation = "True"; # Show Input Method Information when switch input method
# showInputMethodInformationWhenFocusIn = "False"; # Show Input Method Information when changing focus
# CompactInputMethodInformation = "True"; # Show compact input method information
# ShowFirstInputMethodInformation = "True"; # Show first input method information
# DefaultPageSize = "5"; # Default page size
# OverrideXkbOption = "False"; # Override Xkb Option
# PreloadInputMethod = "True"; # Preload input method to be used by default
# };
# };
# inputMethod = {
# "Groups/0" = {
# "Name" = "Default";
# "Default Layout" = "us";
# "DefaultIM" = "mozc";
# };
# "Groups/0/Items/0" = {
# "Name" = "keyboard-us";
# "Layout" = null;
# };
# "Groups/0/Items/1" = {
# "Name" = "mozc";
# "Layout" = null;
# };
# "GroupOrder" = {
# "0" = "Default";
# };
# };
# };
# };
# };
} }

View File

@@ -4,7 +4,7 @@
noto-fonts noto-fonts
noto-fonts-cjk-sans noto-fonts-cjk-sans
noto-fonts-cjk-serif noto-fonts-cjk-serif
noto-fonts-emoji noto-fonts-color-emoji
newcomputermodern newcomputermodern
atkinson-hyperlegible atkinson-hyperlegible
nerd-fonts.jetbrains-mono nerd-fonts.jetbrains-mono

View File

@@ -27,8 +27,6 @@
"hsmw-vpn-secret" = { path = "/etc/ipsec.d/hsmw.secret"; mode = "600"; }; "hsmw-vpn-secret" = { path = "/etc/ipsec.d/hsmw.secret"; mode = "600"; };
}; };
networking.networkmanager.enableStrongSwan = true;
services.strongswan = { services.strongswan = {
enable = true; enable = true;
setup = { setup = {

View File

@@ -1,7 +1,7 @@
{ pkgs, ... }@all: with all; lib.mkIf hyper.nvidia.enable { { pkgs, ... }@all: with all; lib.mkIf hyper.nvidia.enable {
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
lshw lshw
glxinfo mesa-demos
(pkgs.writeShellScriptBin "nvidia-offload" '' (pkgs.writeShellScriptBin "nvidia-offload" ''
export __NV_PRIME_RENDER_OFFLOAD=1 export __NV_PRIME_RENDER_OFFLOAD=1
export __NV_PRIME_RENDER_OFFLOAD_PROVIDER=NVIDIA-G0 export __NV_PRIME_RENDER_OFFLOAD_PROVIDER=NVIDIA-G0

View File

@@ -2,12 +2,9 @@
{ {
hardware.keyboard.qmk.enable = true; hardware.keyboard.qmk.enable = true;
# home.packages = with pkgs; [
# via
# ];
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
via # via
qmk qmk
]; ];
services.udev.packages = [ pkgs.via ]; # services.udev.packages = [ pkgs.via ];
} }