Closed thecaralice closed 1 week ago
Thanks again, I just recently came across the bug with ~.
the lazy lock you added requires rustc 1.80.0 nixpkgs-24.05 has 1.77.2, nixpkgs-unstable has 1.80.1, so I'm going to switch which nixpkgs we track
the options that were changed conflict with the definitions for nixos because flake goes from an options to a submodule with two options, but the option is still defined on nixos. -programs.nh.flake +programs.nh.flake.os +programs.nh.flake.home
error: The option `programs.nh.flake' in module `/nix/store/5w3dp0m37794iffsbm9vd9f1xmmhda6i-source/nixos/modules/programs/nh.nix' would be a parent of the following options, but its type `null or path' does not support nested options.
- option(s) with prefix `programs.nh.flake.home' in module `/nix/store/qhpyvb6k5y1cgncdaf1876221rhsixiv-source/flake.nix#nixosModules.default'
- option(s) with prefix `programs.nh.flake.os' in module `/nix/store/qhpyvb6k5y1cgncdaf1876221rhsixiv-source/flake.nix#nixosModules.default'
I think the easy solution is to swap that, so os.flake and home.flake
@thecaralice unless you want to put in some effort to upstream that?
the options that were changed conflict with the definitions for nixos because flake goes from an options to a submodule with two options, but the option is still defined on nixos.
try something like
disabledModules = [ <nixpkgs/nixos/modules/programs/nh.nix> ];
Also fixes the issue with default nix-darwin and home-manager paths not working due to the default values having a
~
instead of the home directory path.Configuration (from least priority to most):
FLAKE
- still supportedNH_FLAKE
- same asFLAKE
but is namespaced so it does not cause issues with other tooling that might expect a variable namedFLAKE
NH_OS_FLAKE
andNH_HOME_FLAKE
- paths to nix-darwin/NixOS and home-manager flakes respectivelyNix module configuration:
programs.nh.flake
does not accept strings and null anymore (this could be changed but I'm not proficient enough to properly handle that)programs.nh.flake.os
andprograms.nh.flake.home
behave just like the oldprograms.nh.flake
did, but they are responsible for settingNH_OS_FLAKE
andNH_HOME_FLAKE
individually