alqueva/hosts/micronix/users.nix
2024-12-12 21:59:41 -03:00

119 lines
2.1 KiB
Nix

{
pkgs,
lib,
...
}: {
alqueva.users.xmm = {
packages = builtins.attrValues {
inherit
(pkgs)
wget2
fastfetch
btop-rocm
emacs30-pgtk
kitty
firefox_nightly
ffmpeg-full
vesktop
spotify
noto-fonts
noto-fonts-lgc-plus
noto-fonts-cjk-sans
noto-fonts-cjk-serif
fuzzel
fzf
cmake
gnumake
ninja
meson
python313
libtool
gnome-keyring
pavucontrol
pulseaudio
;
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;
};
users.users.xmm.shell = lib.mkForce pkgs.zsh;
users.users.xmm.useDefaultShell = lib.mkForce 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";
};
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;
};
}