nix/lib/modules/nixos/shell-config.nix

79 lines
1.3 KiB
Nix
Raw Normal View History

2025-02-14 13:04:04 -06:00
{
lib,
pkgs,
config,
...
2025-02-14 13:31:18 -06:00
}:
let
2025-02-14 13:04:04 -06:00
cfg = config.lyte.shell;
2025-02-14 13:31:18 -06:00
in
{
2025-02-14 13:04:04 -06:00
options = {
lyte = {
shell = {
enable = lib.mkEnableOption "Enable my default shell configuration and applications";
};
};
};
2025-02-14 15:40:53 -06:00
2025-02-14 13:04:04 -06:00
config = lib.mkIf cfg.enable {
2025-02-14 15:40:53 -06:00
home-manager.users.daniel = { };
programs.nix-index.enable = true;
programs.command-not-found.enable = false;
2025-02-14 13:04:04 -06:00
users = {
defaultUserShell = pkgs.fish;
};
programs = {
fish.enable = true;
traceroute.enable = true;
git = {
enable = true;
package = pkgs.gitFull;
lfs.enable = true;
};
};
environment = {
variables = {
EDITOR = "hx";
SYSTEMD_EDITOR = "hx";
VISUAL = "hx";
PAGER = "bat --style=plain";
MANPAGER = "bat --style=plain";
};
systemPackages = with pkgs; [
aria2
bat
2025-02-14 15:40:53 -06:00
bottom
btop
comma
2025-02-14 13:04:04 -06:00
curl
2025-02-14 15:40:53 -06:00
dnsutils
dogdns
2025-02-14 13:04:04 -06:00
dua
eza
fd
file
2025-02-14 15:40:53 -06:00
helix
hexyl
htop
iftop
2025-02-14 13:04:04 -06:00
inetutils
iputils
killall
nettools
2025-02-14 15:40:53 -06:00
nmap
pciutils
unixtools.xxd
2025-02-14 13:04:04 -06:00
ripgrep
rsync
sd
2025-02-14 15:40:53 -06:00
usbutils
2025-02-14 13:04:04 -06:00
xh
2025-02-14 15:40:53 -06:00
zellij
2025-02-14 13:04:04 -06:00
];
};
2025-02-14 15:40:53 -06:00
2025-02-14 13:04:04 -06:00
};
}