alqueva/hosts/micronix/users.nix
2024-12-14 15:15:09 -03:00

143 lines
2.5 KiB
Nix

{pkgs, ...}: {
alqueva.users.xmm = {
shell = pkgs.zsh;
packages = builtins.attrValues {
inherit
(pkgs)
wget2
fastfetch
btop-rocm
emacs30-pgtk
kitty
firefox
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
;
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"
"libvirtd"
];
};
services.emacs = {
enable = true;
package = pkgs.emacs30-pgtk;
defaultEditor = true;
startWithGraphical = true;
};
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";
update = "sudo nixos-rebuild switch --upgrade";
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;
};
};
programs.ssh = {
startAgent = true;
};
}