diff --git a/modules/misc/nix.nix b/modules/misc/nix.nix index 785a7c04..e98df2e0 100644 --- a/modules/misc/nix.nix +++ b/modules/misc/nix.nix @@ -30,7 +30,7 @@ let toString v else if isString v then v - else if isCoercibleToString v then + else if isConvertibleWithToString v then toString v else abort "The nix conf value: ${toPretty { } v} can not be encoded"; diff --git a/modules/misc/nixpkgs.nix b/modules/misc/nixpkgs.nix index 283fa348..42f6724c 100644 --- a/modules/misc/nixpkgs.nix +++ b/modules/misc/nixpkgs.nix @@ -129,7 +129,9 @@ in { config = { _module.args = { - pkgs = mkOverride modules.defaultPriority _pkgs; + # We use a no-op override to make sure that the option can be merged without evaluating + # `_pkgs`, see https://github.com/nix-community/home-manager/pull/993 + pkgs = mkOverride modules.defaultOverridePriority _pkgs; pkgs_i686 = if _pkgs.stdenv.isLinux && _pkgs.stdenv.hostPlatform.isx86 then _pkgs.pkgsi686Linux