Initialize nix-darwin config for darwinix
This commit is contained in:
@ -80,6 +80,74 @@
|
||||
];
|
||||
};
|
||||
|
||||
mkDarwinConfigWithHomeManagerModule = {
|
||||
system,
|
||||
mylib,
|
||||
hostname,
|
||||
username,
|
||||
publicKeys,
|
||||
extraModules ? [],
|
||||
}:
|
||||
inputs.nix-darwin.lib.darwinSystem {
|
||||
inherit system;
|
||||
|
||||
# Values in "specialArgs" are propagated to all system modules.
|
||||
specialArgs = {
|
||||
inherit inputs system hostname mylib username publicKeys;
|
||||
};
|
||||
|
||||
modules = builtins.concatLists [
|
||||
[
|
||||
# Replace the default "pkgs" with my configured version
|
||||
# to allow installation of unfree software and my own overlays.
|
||||
{nixpkgs.pkgs = pkgs;}
|
||||
|
||||
# Import the toplevel system configuration module.
|
||||
../system/cachix.nix
|
||||
|
||||
# Host specific configuration
|
||||
../system/${hostname}
|
||||
|
||||
# Import all of my custom system modules
|
||||
# ../system/systemmodules # TODO:
|
||||
]
|
||||
|
||||
extraModules
|
||||
|
||||
# HM is installed as a system module when using mkNixosConfigWithHomeManagerModule.
|
||||
[
|
||||
inputs.home-manager.darwinModules.home-manager
|
||||
{
|
||||
home-manager = {
|
||||
# Values in "extraSpecialArgs" are propagated to all HM modules.
|
||||
extraSpecialArgs = {
|
||||
inherit inputs system hostname mylib username publicKeys;
|
||||
};
|
||||
|
||||
# Use the "pkgs" from the system configuration.
|
||||
# This disables "nixpkgs.*" options in HM modules.
|
||||
useGlobalPkgs = true;
|
||||
|
||||
# Packages in "users.${username}.packages" will be installed
|
||||
# to /etc/profiles instead of ~/.nix-profile.
|
||||
useUserPackages = true;
|
||||
|
||||
users.${username}.imports = [
|
||||
# Host specific configuration
|
||||
../home/${username}/${hostname}
|
||||
];
|
||||
|
||||
sharedModules = [
|
||||
# Import all of my custom HM modules.
|
||||
# Putting them into sharedModules enables correct nixd completions.
|
||||
../home/homemodules/darwin.nix
|
||||
];
|
||||
};
|
||||
}
|
||||
]
|
||||
];
|
||||
};
|
||||
|
||||
mkNixosSystemConfig = {
|
||||
system,
|
||||
mylib,
|
||||
|
||||
Reference in New Issue
Block a user