nix/home-manager/default.nix
2024-12-21 22:33:52 -07:00

51 lines
1.7 KiB
Nix
Executable file

{ inputs, system, secrets, config, lib, ... }:
{
imports = [ ./meta.nix ];
config = {
home-manager = let
entrypoint = {
imports = [
# Import meta options for configuring the configuration
./meta.nix
# Import all of my config
./config
];
home.stateVersion = "24.05";
# Inherit my home manager config options
meta.home-manager = config.meta.home-manager;
};
in lib.mkMerge [
## General home-manager.* options
{
# Allow user installation of packages
useGlobalPkgs = true;
useUserPackages = true;
sharedModules = [
# Import plasma manager and all of my custom modules for use
inputs.plasma-manager.homeManagerModules.plasma-manager
inputs.flatpaks.homeManagerModules.declarative-flatpak
./modules
];
# Inherit all of my nixos config custom arguments
extraSpecialArgs = {
inherit inputs system secrets;
};
# Hopefully avoid file conflicts
backupFileExtension = "bak";
}
# The nixos home-manager module and the nix-on-droid compatibility have different options,
# so this handles both in the same file
(if (config.meta.home-manager.interface == "nixos") then {
users.ty = entrypoint;
} else {
config = entrypoint;
})
];
};
}