2bdaf4ae98
When using the NixOS module we cannot guarantee that the Nix store
will be writable during startup. Installing the user packages through
`nix-env -i` will fail in these cases.
This commit adds a NixOS option `home-manager.useUserPackages` that,
when enabled, installs user packages through the NixOS
users.users.<name?>.packages
option.
Note, when submodule support and external package install is enabled
then the installed packages are not available in `~/.nix-profile`. We
therefore set `home.profileDirectory` directly to the HM profile
packages.
(cherry picked from commit ef168979bf
)
33 lines
811 B
Nix
33 lines
811 B
Nix
{ lib, ... }:
|
|
|
|
with lib;
|
|
|
|
{
|
|
meta.maintainers = [ maintainers.rycee ];
|
|
|
|
options.submoduleSupport = {
|
|
enable = mkOption {
|
|
type = types.bool;
|
|
default = false;
|
|
internal = true;
|
|
description = ''
|
|
Whether the Home Manager module system is used as a submodule
|
|
in, for example, NixOS or nix-darwin.
|
|
'';
|
|
};
|
|
|
|
externalPackageInstall = mkOption {
|
|
type = types.bool;
|
|
default = false;
|
|
internal = true;
|
|
description = ''
|
|
Whether the packages of <option>home.packages</option> are
|
|
installed separately from the Home Manager activation script.
|
|
In NixOS, for example, this may be accomplished by installing
|
|
the packages through
|
|
<option>users.users.<name?>.packages</option>.
|
|
'';
|
|
};
|
|
};
|
|
}
|