alqueva/hosts/micronix/users.nix

152 lines
2.7 KiB
Nix

{pkgs, ...}: {
alqueva.users.xmm = {
shell = pkgs.zsh;
packages = builtins.attrValues {
inherit
(pkgs)
wget2
fastfetch
btop-rocm
emacs30-pgtk
kitty
firefox_nightly
ffmpeg-full
vesktop
spotify
fuzzel
fzf
cmake
gnumake
ninja
meson
python313
obs-studio
libtool
gnome-keyring
seahorse
pavucontrol
pulseaudio
man-pages
man-pages-posix
capitaine-cursors
xwayland-satellite
tinyxxd
furnace
adwaita-icon-theme
adwaita-icon-theme-legacy
morewaita-icon-theme
;
inherit
(pkgs.nodePackages_latest)
nodejs
pnpm
;
inherit
(pkgs.llvmPackages_19)
libcxxClang
clangUseLLVM
clang-tools
clang-manpages
openmp
;
inherit
(pkgs.emacsPackages)
tree-sitter
tsc
tree-sitter-langs
yasnippet
yasnippet-snippets
;
};
groups = [
"users"
"wheel"
"video"
"audio"
"networkmanager"
"input"
];
};
services.emacs = {
enable = true;
package = pkgs.emacs30-pgtk;
defaultEditor = true;
startWithGraphical = true;
};
services.flatpak.enable = true;
services.deluge = {
enable = true;
web = {
enable = true;
};
openFilesLimit = 16384;
};
documentation = {
enable = true;
dev = {
enable = true;
};
doc = {
enable = true;
};
info = {
enable = true;
};
nixos = {
enable = true;
};
man = {
enable = true;
generateCaches = true;
man-db = {
enable = true;
};
};
};
programs.zsh = {
enable = true;
enableCompletion = true;
autosuggestions = {
enable = true;
strategy = ["completion"];
};
zsh-autoenv = {
enable = true;
};
syntaxHighlighting = {
enable = true;
highlighters = ["main" "brackets" "pattern" "cursor" "regexp" "root" "line"];
};
shellAliases = {
ll = "ls -l";
ed = "emacsclient -r";
update = "sudo nixos-rebuild switch --upgrade --upgrade-all";
nixdev = "cd $HOME/.config/nixos";
};
ohMyZsh = {
enable = true;
plugins = ["git" "direnv" "fzf" "ssh-agent"];
preLoaded = "zstyle :omz:plugins:ssh-agent agent-forwarding yes";
theme = "half-life";
};
};
# DirEnv support
programs.direnv = {
enable = true;
enableZshIntegration = true;
nix-direnv = {
enable = true;
};
};
}