nix/home-manager/default.nix

52 lines
1.7 KiB
Nix
Raw Normal View History

2024-12-21 22:29:34 -07:00
{ inputs, system, secrets, config, lib, ... }:
2024-12-02 03:57:34 -07:00
{
2024-12-15 22:43:55 -07:00
imports = [ ./meta.nix ];
2024-12-02 03:57:34 -07:00
config = {
2024-12-21 22:29:34 -07:00
home-manager = let
entrypoint = {
imports = [
# Import meta options for configuring the configuration
./meta.nix
# Import all of my config
./config
];
home.stateVersion = "24.05";
2024-12-15 22:43:55 -07:00
2024-12-21 22:29:34 -07:00
# 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;
};
2024-12-21 22:29:34 -07:00
# Hopefully avoid file conflicts
backupFileExtension = "bak";
}
2024-12-15 22:43:55 -07:00
2024-12-21 22:29:34 -07:00
# The nixos home-manager module and the nix-on-droid compatibility have different options,
# so this handles both in the same file
2024-12-15 22:43:55 -07:00
2024-12-21 22:29:34 -07:00
(if (config.meta.home-manager.interface == "nixos") then {
users.ty = entrypoint;
} else {
config = entrypoint;
})
];
2024-12-02 03:57:34 -07:00
};
2024-12-21 22:29:34 -07:00
}