dotfiles/profiles/user1/default.nix

92 lines
2 KiB
Nix
Raw Normal View History

2025-03-29 23:08:26 -05:00
{
config,
flake,
pkgs,
2025-06-26 02:15:04 -05:00
lib,
2025-03-29 23:08:26 -05:00
...
}:
let
inherit (flake) self;
inherit (flake.config.people) user1;
inherit (flake.config.machines) devices;
2025-06-26 02:15:04 -05:00
inherit (flake.config.people.users.${user1}) name paths;
2025-03-29 23:08:26 -05:00
hostname = config.networking.hostName;
in
{
users = {
users.${user1} = {
description = name;
name = user1;
isNormalUser = true;
shell = pkgs.nushell;
extraGroups = [
2025-06-26 02:15:04 -05:00
"adbusers"
2025-03-29 23:08:26 -05:00
"disk"
2025-06-26 02:15:04 -05:00
"libvirtd"
"netdev"
2025-03-29 23:08:26 -05:00
"networkmanager"
2025-06-26 02:15:04 -05:00
"plugdev"
"samba"
2025-03-29 23:08:26 -05:00
"vboxusers"
"wheel"
];
};
};
home-manager.users = {
${user1} = {
home = {
username = user1;
homeDirectory = "/home/${user1}";
file = {
"./.config/scripts/get_weather.sh" = {
2025-06-26 02:15:04 -05:00
source = ./files/scripts/get_weather.sh;
2025-03-29 23:08:26 -05:00
executable = true;
};
".config/wallpaper" = {
source = ./files/wallpaper;
recursive = true;
};
2025-06-26 02:15:04 -05:00
"./.config/vesktop/themes/macchiato-theme.css" = {
source = ./files/themes/vesktop/macchiato-theme.css;
};
};
sessionVariables = {
VISUAL = lib.getExe pkgs.zed-editor;
GTK_THEME = "catppuccin-macchiato-mauve-compact";
2025-03-29 23:08:26 -05:00
};
};
imports = [
{
home.stateVersion = config.system.stateVersion;
}
{
imports = [
self.homeModules."${devices.${hostname}.name}-${user1}"
];
}
];
};
};
2025-06-26 02:15:04 -05:00
systemd.tmpfiles = {
rules =
[
"d ${paths.path0} 0755 ${user1} users -"
]
++ (map (path: "d /home/${user1}/${path} 0755 ${user1} users -") [
"Files"
"Files/Scripts"
"Files/Games"
"Files/Screenshots"
])
++ (map (path: "R /home/${user1}/${path} 0755 ${user1} users - -") [
"Desktop"
"Documents"
"Music"
"Pictures"
"Public"
"Templates"
"Videos"
]);
};
2025-03-29 23:08:26 -05:00
}