Files
nixos-config/modules/darwin/home-manager.nix
2025-08-03 20:36:53 +02:00

81 lines
1.8 KiB
Nix

{
config,
pkgs,
lib,
home-manager,
...
}:
let
user = "cschmatzler";
sharedFiles = import ../shared/files.nix { inherit config pkgs; };
additionalFiles = import ./files.nix { inherit user config pkgs; };
in
{
imports = [
./dock
];
# It me
users.users.${user} = {
name = "${user}";
home = "/Users/${user}";
isHidden = false;
shell = pkgs.zsh;
};
homebrew = {
enable = true;
casks = pkgs.callPackage ./casks.nix { };
masApps = {
};
};
home-manager = {
useGlobalPkgs = true;
users.${user} =
{
pkgs,
config,
lib,
...
}:
{
home = {
enableNixpkgsReleaseCheck = false;
packages = pkgs.callPackage ./packages.nix { };
file = lib.mkMerge [
sharedFiles
additionalFiles
];
stateVersion = "23.11";
};
programs = { } // import ../shared/home-manager.nix { inherit config pkgs lib; };
};
};
# Fully declarative dock using the latest from Nix Store
local = {
dock = {
enable = true;
username = user;
entries = [
{ path = "/Applications/Safari.app/"; }
{ path = "/System/Applications/Messages.app/"; }
{ path = "/System/Applications/Notes.app/"; }
{ path = "${pkgs.alacritty}/Applications/Alacritty.app/"; }
{ path = "/System/Applications/Music.app/"; }
{ path = "/System/Applications/Photos.app/"; }
{ path = "/System/Applications/Photo Booth.app/"; }
{ path = "/System/Applications/System Settings.app/"; }
{
path = "${config.users.users.${user}.home}/Downloads";
section = "others";
options = "--sort name --view grid --display stack";
}
];
};
};
}