47 lines
1.3 KiB
Nix
47 lines
1.3 KiB
Nix
{ inputs, self, ... }: {
|
|
flake.nixosModules.user = { pkgs, ... }: {
|
|
imports = [
|
|
inputs.home-manager.nixosModules.home-manager
|
|
];
|
|
users.users."lucy" = {
|
|
shell = pkgs.zsh;
|
|
isNormalUser = true;
|
|
description = "lucy";
|
|
extraGroups = [
|
|
"networkmanager"
|
|
"wheel"
|
|
];
|
|
};
|
|
home-manager.useGlobalPkgs = true;
|
|
home-manager.useUserPackages = true;
|
|
home-manager.extraSpecialArgs = { inherit inputs; };
|
|
home-manager.users.lucy = { config, lib, ... }: {
|
|
home.username = "lucy";
|
|
home.homeDirectory = "/home/lucy";
|
|
home.stateVersion = "25.11";
|
|
home.activation.reloadQuickshell = lib.hm.dag.entryAfter [ "writeBoundary" ] ''
|
|
qs=${lib.getExe' config.programs.quickshell.package "qs"}
|
|
runtime_dir="''${XDG_RUNTIME_DIR:-/run/user/$(id -u)}"
|
|
if run --silence env XDG_RUNTIME_DIR="$runtime_dir" "$qs" ipc show; then
|
|
run --silence env XDG_RUNTIME_DIR="$runtime_dir" "$qs" ipc call config reload ||
|
|
warnEcho "Quickshell is running, but 'qs ipc call config reload' failed"
|
|
fi
|
|
'';
|
|
};
|
|
home-manager.sharedModules = with self.homeModules; [
|
|
btop
|
|
nixcord
|
|
ghostty
|
|
hermes
|
|
niri
|
|
emacs
|
|
git
|
|
stylix
|
|
fuzzel
|
|
quickshell
|
|
spotify
|
|
syncthing
|
|
];
|
|
};
|
|
|
|
}
|