{ config, lib, pkgs, ... }: with lib; let cfg = config.ashe.user; in { users.users.${cfg.username} = { uid = 1000; isNormalUser = true; home = "/home/${cfg.username}"; description = cfg.description; extraGroups = [ "wheel" ]; hashedPassword = cfg.password; packages = cfg.packages; }; home-manager.users.${cfg.username} = { home.stateVersion = "22.11"; programs.zsh = { enable = true; zplug = { enable = true; plugins = [ { name = "zsh-users/zsh-autosuggestions"; } { name = "romkatv/powerlevel10k"; tags = [ as:theme depth:1 ]; } ]; }; initExtraFirst = '' # Enable Powerlevel10k instant prompt. Should stay close to the top of ~/.zshrc. if [[ -r "''${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-''${(%):-%n}.zsh" ]]; then source "''${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-''${(%):-%n}.zsh" fi alias vim=nvim export EDITOR=nvim ''; initExtra = '' # To customize prompt, run `p10k configure` or edit ~/.p10k.zsh. [[ ! -f ~/.p10k.zsh ]] || source ~/.p10k.zsh ''; }; }; }