This commit is contained in:
Lennart J. Kurzweg (Nx2)
2025-09-03 19:46:44 +02:00
parent 0f17b0c56e
commit d81aa406a4
14 changed files with 340 additions and 90 deletions

View File

@@ -1,6 +1,10 @@
{ ... }:
{ pkgs, ... }:
{
programs.bash = {
programs.bash = let
init = /* bash */ ''
source $HOME/.nix-profile/etc/profile.d/hm-session-vars.sh
'';
in {
enable = true;
shellAliases = {
ll = "ls -l";
@@ -15,5 +19,10 @@
"checkjobs"
];
enableCompletion = false;
};
} // pkgs.lib.mkIf (pkgs.version != "24.05") {
shellInit = init;
} // pkgs.lib.mkIf (pkgs.version != "25.05") {
profileExtra = init;
};
}

View File

@@ -1,7 +1,6 @@
{ pkgs, ... }@all: with all;
{
home.packages = with pkgs; [
fish
any-nix-shell
(writeShellScriptBin "nxfetch" ''
@@ -38,6 +37,7 @@
programs.fish = {
enable = true;
package = pkgs.fish;
shellAliases = let
base-eza = "eza --icons --git --smart-group --group-directories-first";
in {
@@ -112,7 +112,7 @@
'';
nx_backup = let
destination = if hyper.host == "NxNORTH" then "${hyper.home}/shared/" else "${hyper.home}/backups/";
in pkgs.lib.mkIf (hyper.host != "NxACE") ''
in pkgs.lib.mkIf (hyper.host == "NxXPS" || hyper.host == "NxNORTH") ''
set RPATH (curl -s https://${hyper.domain}/latest-backup)
rsync -avz --info=progress2 -e "ssh -p ${builtins.toString secrets.ssh.port}" ${hyper.user}@ssh.${hyper.domain}:"$RPATH" ${destination}
'';

View File

@@ -19,14 +19,15 @@
enableFishIntegration = true;
defaultCacheTtlSsh = min2sec 60;
defaultCacheTtl = min2sec 30;
extraConfig = ''
allow-loopback-pinentry
'';
} // (if (pkgs.version != "24.05") then {
pinentry = {
package = pkgs.pinentry;
program = "pinentry";
};
extraConfig = ''
allow-loopback-pinentry
'';
};
} else {});
home.file.".gnupg/gpg.conf".text = ''
personal-cipher-preferences AES256 AES192 AES

View File

@@ -33,6 +33,7 @@
systemctl-tui
tldr
w3m
which
yt-dlp
];
}

View File

@@ -5,8 +5,8 @@
];
sops = {
age.keyFile = lib.mkIf (hyper.host == "NxACE") "${hyper.home}.age_nx2_key_13.txt";
gnupg.home = lib.mkIf (hyper.host != "NxACE") "${hyper.home}.gnupg";
age.keyFile = lib.mkIf (hyper.host == "NxACE") "${hyper.home}/.age_nx2_key_13.txt";
gnupg.home = lib.mkIf (hyper.host != "NxACE") "${hyper.home}/.gnupg";
defaultSopsFile = ../sops-secrets.yaml;
# %r is $XDG_RUNTIME_DIR

View File

@@ -1,21 +1,21 @@
{ pkgs, ... }@all: with all;
{
home = {
packages = with pkgs; [ sshfs ];
packages = with pkgs; [ openssh sshfs ];
file.".ssh/config".text = ''
HOST nxace
HostName ssh.${hyper.domain}
User ${hyper.user}
User nx2
Port 50022
HOST nxacel
HostName 10.0.1.1
User ${hyper.user}
User nx2
Port 50022
HOST nxrpil
HostName 10.0.1.31
User ${hyper.user}
User nx2
Port 22
HOST nxgit

View File

@@ -1,10 +1,10 @@
{ pkgs, ... }@all: with all; {
xdg = {
enable = true;
configHome = "${hyper.home}.config";
cacheHome = "${hyper.home}.cache";
dataHome = "${hyper.home}.local/share";
stateHome = "${hyper.home}.local/state";
configHome = "${hyper.home}/.config";
cacheHome = "${hyper.home}/.cache";
dataHome = "${hyper.home}/.local/share";
stateHome = "${hyper.home}/.local/state";
mimeApps = {
enable = true;
defaultApplications = let

View File

@@ -1,5 +1,6 @@
{ pkgs, ... }@all: with all; let
tfc = pkgs.latest.xdg-desktop-portal-termfilechooser;
x = (pkgs.version != "24.05");
in {
home.packages = [
pkgs.unar
@@ -11,29 +12,7 @@ in {
# package = pkgs.yazi;
package = inputs.yazi.packages.${hyper.system}.default;
enableFishIntegration = true;
shellWrapperName = "ya";
initLua = /* lua */ ''
require("zoxide"):setup {
update_db = true,
}
Status:children_add(function()
local h = cx.active.current.hovered
if not h or ya.target_family() ~= "unix" then
return ""
end
return ui.Line {
ui.Span(ya.user_name(h.cha.uid) or tostring(h.cha.uid)):fg("magenta"),
":",
ui.Span(ya.group_name(h.cha.gid) or tostring(h.cha.gid)):fg("magenta"),
" ",
}
end, 500, Status.RIGHT)
'';
plugins = with pkgs; {
inherit glow git;
};
# initLua = /* lua */ '' '';
# initLua = /* lua */ '' ''; # down
keymap = {
mgr.keymap = [
{ on = "<Esc>"; run = "escape"; desc = "Exit visual mode, clear selected, or cancel search"; }
@@ -403,7 +382,31 @@ in {
];
};
};
};
} // (if x then {
shellWrapperName = "ya";
initLua = /* lua */ ''
require("zoxide"):setup {
update_db = true,
}
Status:children_add(function()
local h = cx.active.current.hovered
if not h or ya.target_family() ~= "unix" then
return ""
end
return ui.Line {
ui.Span(ya.user_name(h.cha.uid) or tostring(h.cha.uid)):fg("magenta"),
":",
ui.Span(ya.group_name(h.cha.gid) or tostring(h.cha.gid)):fg("magenta"),
" ",
}
end, 500, Status.RIGHT)
'';
plugins = with pkgs; {
inherit glow git;
};
} else {});
xdg = {
configFile."xdg-desktop-portal-termfilechooser/config" = {
force = true;