88 lines
2.1 KiB
Nix
88 lines
2.1 KiB
Nix
{ pkgs, config, ... }:
|
|
|
|
let
|
|
name = "root";
|
|
home = config.home-manager.users.${name};
|
|
user = config.users.users.${name};
|
|
in
|
|
{
|
|
users.users = {
|
|
${name} = {
|
|
shell = pkgs.nushell;
|
|
};
|
|
};
|
|
home-manager.users.${name} = {
|
|
home = {
|
|
username = user.name;
|
|
homeDirectory = user.home;
|
|
stateVersion = config.system.stateVersion;
|
|
};
|
|
|
|
programs = {
|
|
nushell = {
|
|
enable = true;
|
|
};
|
|
|
|
carapace.enable = true;
|
|
carapace.enableNushellIntegration = true;
|
|
|
|
starship = {
|
|
enable = true;
|
|
settings = {
|
|
add_newline = true;
|
|
character = {
|
|
success_symbol = "[➜](bold green)";
|
|
error_symbol = "[➜](bold red)";
|
|
};
|
|
};
|
|
};
|
|
|
|
direnv = {
|
|
enable = true;
|
|
nix-direnv.enable = true;
|
|
};
|
|
|
|
neovim = {
|
|
enable = true;
|
|
defaultEditor = true;
|
|
};
|
|
|
|
git = {
|
|
enable = true;
|
|
package = pkgs.git;
|
|
userEmail = "root@alisa";
|
|
userName = "root";
|
|
extraConfig = {
|
|
core = {
|
|
whitespace = [
|
|
"blank-at-eol"
|
|
"blank-at-eof"
|
|
"space-before-tab"
|
|
];
|
|
};
|
|
};
|
|
};
|
|
};
|
|
|
|
xdg = {
|
|
enable = true;
|
|
mime.enable = true;
|
|
cacheHome = "${home.home.homeDirectory}/.cache";
|
|
configHome = "${home.home.homeDirectory}/.config";
|
|
dataHome = "${home.home.homeDirectory}/.local/share";
|
|
stateHome = "${home.home.homeDirectory}/.local/state";
|
|
userDirs = {
|
|
enable = true;
|
|
createDirectories = true;
|
|
desktop = "${home.home.homeDirectory}/Desktop";
|
|
documents = "${home.home.homeDirectory}/Documents";
|
|
download = "${home.home.homeDirectory}/Downloads";
|
|
music = "${home.home.homeDirectory}/Music";
|
|
pictures = "${home.home.homeDirectory}/Pictures";
|
|
publicShare = "${home.home.homeDirectory}/Public";
|
|
templates = "${home.home.homeDirectory}/Templates";
|
|
videos = "${home.home.homeDirectory}/Videos";
|
|
};
|
|
};
|
|
};
|
|
}
|