summaryrefslogtreecommitdiff
path: root/nixos/modules/system/users/default.nix
diff options
context:
space:
mode:
authorseraphim <18ycm9tx@anonaddy.me>2026-08-04 13:28:39 +0700
committerseraphim <18ycm9tx@anonaddy.me>2026-08-04 13:28:39 +0700
commitbe1db27940f3612a0b1a10ca17bfd5be670fd850 (patch)
tree4c179819d89a7d842cd9b78fd54c11e06922c3c8 /nixos/modules/system/users/default.nix
parent4eba57f4e787bf97fe7dcb0e1702723aa08de01d (diff)
,
Diffstat (limited to 'nixos/modules/system/users/default.nix')
-rw-r--r--nixos/modules/system/users/default.nix9
1 files changed, 9 insertions, 0 deletions
diff --git a/nixos/modules/system/users/default.nix b/nixos/modules/system/users/default.nix
index f43149d..6eafd7c 100644
--- a/nixos/modules/system/users/default.nix
+++ b/nixos/modules/system/users/default.nix
@@ -1,16 +1,20 @@
{ pkgs, ... }:
{
+ # Main desktop user.
users.users."seraphim" = {
isNormalUser = true;
description = "seraphim";
shell = pkgs.zsh;
+ # wheel for sudo/doas, networkmanager to manage connections itself.
extraGroups = [ "networkmanager" "wheel" ];
packages = with pkgs; [];
};
+ # doas (simpler sudo replacement)
security.doas = {
enable = true;
+ # Give seraphim persistent passwordless-ish privileges, keeping the env.
extraRules = [
{
users = [ "seraphim" ];
@@ -20,12 +24,15 @@
];
};
+ # ZSH + completion, oh-my-zsh, autosuggestions, and fzf key bindings.
programs.zsh = {
enable = true;
enableCompletion = true;
+ ohMyZsh.enable = true;
autosuggestions = {
enable = true;
highlightStyle = "fg=#6c7086";
+ strategy = [ "history" "completion" ];
};
interactiveShellInit = ''
source ${pkgs.fzf}/share/fzf/key-bindings.zsh
@@ -34,6 +41,8 @@
shellAliases = {
ls = "eza -al --icons=auto";
ll = "eza -al --icons=auto";
+ sudo = "doas";
+ open = "xdg-open";
};
};
}