nix-conf/system/modules/programs.nix
danny 6a71b601f5 update: system update & refactor
# Breaking Changes
- sops location movod to "system/dev/<dev-name>/sops/sops-conf.nix"
- flake devices declaration changes
- whole flake update
2025-10-14 16:49:03 +08:00

57 lines
1.2 KiB
Nix

{ pkgs, ... }:
{
environment.systemPackages = with pkgs; [
# neovim
luajitPackages.lua
lua51Packages.lua
luajitPackages.luarocks
luajitPackages.magick
imagemagick
];
programs = {
gnupg = {
agent = {
enable = true;
enableSSHSupport = true;
};
};
neovim = {
enable = true;
configure = {
customRC = ''
set number
set relativenumber
set tabstop=2
set shiftwidth=2
set expandtab
nnoremap <C-s> :w<CR>
'';
};
};
dconf.enable = true;
zsh.enable = true;
mtr.enable = true;
fish = {
enable = true;
shellAliases = {
"ns" = "nix-search-tv print | fzf --preview 'nix-search-tv preview {}' --scheme history";
};
};
# Set fish as default shell but not login shell
bash = {
interactiveShellInit = ''
if [[ $(${pkgs.procps}/bin/ps --no-header --pid=$PPID --format=comm) != "fish" && -z ''${BASH_EXECUTION_STRING} ]]
then
shopt -q login_shell && LOGIN_OPTION='--login' || LOGIN_OPTION=""
exec ${pkgs.fish}/bin/fish $LOGIN_OPTION
fi
'';
};
};
}