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

This commit is contained in:
Lennart J. Kurzweg (Nx2)
2026-01-04 14:24:59 +01:00
28 changed files with 290 additions and 316 deletions

View File

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

View File

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

138
flake.lock generated
View File

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

View File

@@ -2,13 +2,13 @@
description = "Multisystem NixOS Flake of Lennart J. Kurzweg";
inputs = {
nixpkgs.url = "nixpkgs/nixos-25.05";
nixpkgs.url = "nixpkgs/nixos-25.11";
nixpkgs-unstable.url = "nixpkgs/nixos-unstable";
nixpkgs-latest.url = "github:nixos/nixpkgs?ref=master";
nixpkgs24.url = "github:NixOS/nixpkgs/nixos-24.05";
home-manager = {
url = "github:nix-community/home-manager/release-25.05";
url = "github:nix-community/home-manager/release-25.11";
inputs.nixpkgs.follows = "nixpkgs";
};
home-manager24 ={
@@ -48,10 +48,10 @@
domain = "nx2.site";
home = "/home/${user}";
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;
overlays = [(final: prev: {
unstable = import nixpkgs-unstable { inherit system config; };

View File

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

View File

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

View File

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

View File

@@ -4,7 +4,7 @@
# (gimp-with-plugins.override {
# 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)")
];
programs.git = {
enable = true;
package = pkgs.gitFull;
userName = ''Lennart J. Kurzweg (Nx2)'';
userEmail = "git@${hyper.domain}";
programs = {
git = {
enable = true;
package = pkgs.gitFull;
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 = {
enable = true;
enableGitIntegration = true;
options = {
line-numbers = true;
side-by-side = false;
@@ -19,36 +33,27 @@
whitespace-error-style = "22 reverse";
};
};
extraConfig = {
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
};
};
programs.lazygit = {
enable = true;
package = pkgs.lazygit;
settings = {
windowSize = "normal";
gui.theme = with rice.color; {
lightTheme = false;
activeBorderColor = [ foreground "bold" ];
inactiveBorderColor = [ border ];
optionsTextColor = [ tertiary.base ];
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
lazygit = {
enable = true;
package = pkgs.lazygit;
settings = {
windowSize = "normal";
gui.theme = with rice.color; {
lightTheme = false;
activeBorderColor = [ foreground "bold" ];
inactiveBorderColor = [ border ];
optionsTextColor = [ tertiary.base ];
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;
"debug" = yellow.base;
"diagnostic.modifiers" = [ "underline" ];
"diff.delta" = blue.bright;
"diff.delta" = subtle.bright;
"diff.minus" = negative.bright;
"diff.plus" = positive.bright;
"error" = red.base;
@@ -410,7 +410,7 @@
bg = black.bright;
};
"ui.statusline" = {
fg = blue.bright;
fg = accent.bright;
bg = black.base;
};
"ui.statusline.inactive" = {

View File

@@ -185,19 +185,27 @@ in {
];
};
gestures = {
workspace_swipe = true;
workspace_swipe_fingers = "4";
workspace_swipe_distance = "300";
workspace_swipe_invert = true;
workspace_swipe_min_speed_to_force = "30";
workspace_swipe_cancel_ratio = "0.5";
workspace_swipe_create_new = false;
workspace_swipe_direction_lock = false;
workspace_swipe_direction_lock_threshold = "10";
workspace_swipe_forever = true;
workspace_swipe_use_r = false;
};
# gestures = {
# workspace_swipe = true;
# workspace_swipe_fingers = "4";
# workspace_swipe_distance = "300";
# workspace_swipe_invert = true;
# workspace_swipe_min_speed_to_force = "30";
# workspace_swipe_cancel_ratio = "0.5";
# workspace_swipe_create_new = false;
# workspace_swipe_direction_lock = false;
# workspace_swipe_direction_lock_threshold = "10";
# workspace_swipe_forever = true;
# workspace_swipe_use_r = false;
# };
gesture = [
"4, horizontal, workspace"
# "3, down, mod: ALT, close"
# "3, up, mod: SUPER, scale: 1.5, fullscreen"
# "3, left, scale: 1.5, float"
];
dwindle = {
preserve_split = true; # you probably want this
@@ -278,7 +286,7 @@ in {
"dimaround, title:^(terminal-file-picker)$"
"center, title:^(terminal-file-picker)$"
"size 80% 80%, title:^(terminal-file-picker)$"
"size: 30% 30%, initialTitle:^(Select Calendar)$"
"size 30% 30%, initialTitle:^(Select Calendar)$"
];

View File

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

View File

@@ -1,29 +1,60 @@
{ 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 = {
# name = "Ollama (local)";
# npm = "@ai-sdk/openai-compatible";
# options = {
# baseURL = "http://localhost:11434/v1";
# };
# models = {
# "${model}" = {
# tools = true;
# };
# };
# };
# };
# };
programs.opencode = {
enable = true;
package = pkgs.opencode;
themes.theme = with rice.color; let
dl = color: { dark = color; light = color; };
in {
accent = dl accent.base;
background = dl background;
backgroundElement = dl subtle.dark;
backgroundPanel = dl subtle.darker;
border = dl subtle.base;
borderActive = dl border;
borderSubtle = dl subtle.dark;
diffAdded = dl positive.base;
diffAddedBg = dl positive.darker;
diffAddedLineNumberBg = dl positive.dark;
diffContext = dl foreground;
diffContextBg = dl subtle.dark;
diffHighlightAdded = dl positive.bright;
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
xclip
wlr-randr
cava
];
}

View File

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

View File

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

View File

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

View File

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

View File

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

View File

@@ -3,31 +3,39 @@
programs.ssh = {
enable = true;
package = pkgs.openssh;
addKeysToAgent = "yes";
enableDefaultConfig = false;
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;
hostname = "ssh.${hyper.domain}";
user = "nx2";
port = 50022;
identityFile = "${hyper.home}/vault/ssh/nxace-nx2-${hyper.host}";
identityFile = [ "${hyper.home}/vault/ssh/nxace-nx2-${hyper.host}" ];
};
in {
"*".identityFile = [
"*" = default;
"ssh.nx2.site" = default // { identityFile = [
"${hyper.home}/vault/ssh/nxgit-nx2-${hyper.host}"
"${hyper.home}/vault/ssh/github-noggynoggy-${hyper.host}"
"${hyper.home}/vault/ssh/tg-dm-informatik-tuda"
(pkgs.lib.mkIf (hyper.host == "NxDCS") "${hyper.home}/vault/ssh/dcsgit-lkurzweg-${hyper.host}")
];
"github.com".identityFile = [ "${hyper.home}/vault/ssh/github-noggynoggy-${hyper.host}" ];
"nxace" = nxace "nxace";
"nxacel" = (nxace "nxacel") // { hostname = "10.0.1.1"; };
"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";
};
"${hyper.home}/vault/ssh/nxace-nx2-${hyper.host}"
]; };
"tg.dm.informatik.tu-darmstadt.de" = default // { identityFile = [ "${hyper.home}/vault/ssh/tg-dm-informatik-tuda" ]; };
"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}" ]; };
"nxace" = (nxace "nxace" );
"nxacel" = (nxace "nxacel") // { hostname = "10.0.1.1"; };
"nxrpli" = (nxace "nxrpil") // { hostname = "10.0.1.31"; port = 22; };
};
};
services.ssh-agent = {

View File

@@ -206,64 +206,62 @@ in {
};
opener = {
"edit" = [
{ run = ''hx "$0" "$@"''; desc = "Helix"; block = true; }
{ run = ''codium "$0" "$@"''; desc = "VS Code"; orphan = true; }
{ run = ''antigravity "$0" "$0"''; desc = "Antigravity"; orphan = true; }
{ run = ''cat "$0" "$@" | wl-copy''; desc = "Copy Contents"; }
{ run = ''hx "$@"''; desc = "Helix"; block = true; }
{ run = ''codium "$@"''; desc = "VS Code"; orphan = true; }
{ run = ''cat "$@" | wl-copy''; desc = "Copy Contents"; }
];
"play" = [
{ run = ''mpv "$0" "$@"''; desc = "mpv"; orphan = true; }
{ run = ''mpv --vf=negate "$0" "$@"''; desc = "mpv inverted"; orphan = true; }
{ run = ''mediainfo "$0"; echo "Press enter to return to yazi"; read''; block = true; desc = "Show mediainfo"; }
{ run = ''mpv "$@"''; desc = "MPV"; orphan = true; }
{ run = ''mpv --vf=negate "$@"''; desc = "MPV inverted"; orphan = true; }
{ run = ''mediainfo "$1"; echo "Press enter to return to yazi"; read''; block = true; desc = "Show mediainfo"; }
];
"archive" = [
{ run = ''unar "$0" "$@"''; desc = "Extract here"; }
{ run = ''tar -x "$0" "$@"''; desc = "tar -x"; }
{ run = ''unzip "$0" "$@"''; desc = "unzip"; }
{ run = ''unar "$@"''; desc = "Extract here"; }
{ run = ''tar -x "$@"''; desc = "tar -x"; }
{ run = ''unzip "$@"''; desc = "unzip"; }
];
"image" = [
{ run = ''imv "$0" "$@"''; desc = "imv"; 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 = ''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 = ''imv "$@"''; desc = "IMV"; orphan = true; }
{ run = ''gimp "$@"''; desc = "Gimp"; orphan = true; }
{ run = ''swww img --transition-type wipe --transition-angle 60 --transition-step 120 --transition-fps 120 "$1"''; desc = "swww wallpaper"; }
{ run = ''exiftool "$1"; echo "Press enter to return to yazi"; read''; desc = "View Exif Data"; }
{ run = ''for f in "$1"; do magick "$f" -auto-orient "''${f%.*}.pdf"; done''; desc = "Convert to PDF"; }
];
"svg" = [
{ run = ''inkscape "$0" "$@"''; desc = "inkscape"; orphan = true; }
{ run = ''firefox "$0" "$@"''; desc = "firefox"; orphan = true; }
{ run = ''inkscape "$@"''; desc = "Inkscape"; orphan = true; }
{ run = ''firefox "$@"''; desc = "Firefox"; orphan = true; }
];
"font" = [
{ run = ''fontpreview "$0" "$@"''; desc = "fontpreview"; orphan = true; }
{ run = ''fontforge "$0" "$@"''; desc = "fortforge"; orphan = true; }
{ run = ''fontpreview "$@"''; desc = "Fontpreview"; orphan = true; }
{ run = ''fontforge "$@"''; desc = "Fortforge"; orphan = true; }
];
"document" = [
{ run = ''zathura "$0" "$@"''; desc = "zathura"; orphan = true; }
{ run = ''xournal "$0" "$@"''; desc = "xournal"; orphan = true; }
{ run = ''firefox "$0" "$@"''; desc = "firefox"; orphan = true; }
{ run = ''nxgs flip "$0" "$@"''; desc = "nxgs flip"; }
{ run = ''nxgs rotate "$0" "$@"''; desc = "nxgs rotate"; }
{ run = ''nxgs interactive-merge "$0" "$@"''; block = true; desc = "nxgs merge"; }
{ run = ''zathura "$@"''; desc = "Zathura"; orphan = true; }
{ run = ''firefox "$@"''; desc = "Firefox"; orphan = true; }
{ run = ''nxgs flip "$@"''; desc = "nxgs flip"; }
{ run = ''nxgs rotate "$@"''; desc = "nxgs rotate"; }
{ run = ''nxgs interactive-merge "$@"''; block = true; desc = "nxgs merge"; }
];
"browser" = [
{ run = ''firefox "$0" "$@"''; desc = "firefox"; orphan = true; }
{ run = ''chromium --enable-features=UseOzonePlatform --ozone-platform=wayland "$0" "$@"''; desc = "chromium"; orphan = true; }
{ run = ''w3m "$0" "$@"''; desc = "w3m"; }
{ run = ''lynx "$0" "$@"''; desc = "lynx"; }
{ run = ''firefox "$@"''; desc = "Firefox"; orphan = true; }
{ run = ''chromium --enable-features=UseOzonePlatform --ozone-platform=wayland "$@"''; desc = "Chromium"; orphan = true; }
{ run = ''w3m "$@"''; desc = "w3m"; }
{ run = ''lynx "$@"''; desc = "Lynx"; }
];
"office" = [
{ run = ''libreoffice "$0" "$@"''; desc = "libreoffice"; orphan = true; }
{ run = ''libreoffice --view "$0" "$@"''; desc = "libreoffice read-only"; orphan = true; }
{ run = ''libreoffice "$@"''; desc = "LibreOffice"; orphan = true; }
{ run = ''libreoffice --view "$@"''; desc = "LibreOffice read-only"; orphan = true; }
];
"shell" = [
{ run = ''bash -c "$0"; echo "Press enter to return to yazi"; read''; desc = "bash -c"; }
{ run = ''fish -c "$0"; echo "Press enter to return to yazi"; read''; desc = "fish -c"; }
{ run = ''sh -c "$0"; echo "Press enter to return to yazi"; read''; desc = "sh -c"; }
{ run = ''bash -c "$1"; echo "Press enter to return to yazi"; read''; desc = "bash -c"; }
{ run = ''fish -c "$1"; echo "Press enter to return to yazi"; read''; desc = "fish -c"; }
{ run = ''sh -c "$1"; echo "Press enter to return to yazi"; read''; desc = "sh -c"; }
];
"python" = [
{ run = ''python "$@"; echo "Press enter to return to yazi"; read''; desc = "python"; block = true; }
{ run = ''python "$@"; echo "Press enter to return to yazi"; read''; desc = "Python"; block = true; }
];
"directory" = [
{ run = ''lazygit "$0"''; desc = "lazygit"; }
{ run = ''lazygit "$1"''; desc = "LazyGit"; }
];
};
open.rules = [

View File

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

View File

@@ -3,7 +3,7 @@
enable = true;
settings = rec {
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;
};
default_session = hyprland;

View File

@@ -1,88 +1,14 @@
{ 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
# ];
# };
{ pkgs, ... }@all: with all; {
i18n.inputMethod = {
enable = true;
type = "fcitx5";
fcitx5.waylandFrontend = true;
fcitx5.addons = with pkgs; [
fcitx5-gtk # alternatively, kdePackages.fcitx5-qt
fcitx5-chinese-addons # table input method support
fcitx5-nord # a color theme
];
fcitx5 = {
waylandFrontend = true;
addons = with pkgs; [
fcitx5-gtk
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-cjk-sans
noto-fonts-cjk-serif
noto-fonts-emoji
noto-fonts-color-emoji
newcomputermodern
atkinson-hyperlegible
nerd-fonts.jetbrains-mono

View File

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

View File

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

View File

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