fix: use the right nixpkgs when consuming overlays

This commit is contained in:
Jake Hamilton 2022-09-09 01:41:20 -07:00
parent 13cd056669
commit 6ed0b9f668
No known key found for this signature in database
GPG key ID: 9762169A1B35EA68
4 changed files with 24 additions and 11 deletions

View file

@ -79,15 +79,9 @@ rec {
overrides = (full-flake-options.modules or { });
};
overlays = core-inputs.flake-utils-plus.lib.exportOverlays ({
inherit (user-inputs.self) pkgs;
inputs = user-inputs;
inherit (user-inputs.self) pkgs inputs;
});
overlay = (final: prev:
snowfall-lib.attrs.merge-deep
(builtins.map (overlay: overlay final prev) (builtins.attrValues overlays))
);
outputs-builder = channels:
let
user-outputs-builder =
@ -113,7 +107,7 @@ rec {
snowfall-lib.attrs.merge-deep [ user-outputs outputs ];
flake-options = custom-flake-options // {
inherit hosts templates overlays overlay;
inherit hosts templates overlays;
inherit (user-inputs) self;
lib = snowfall-lib.internal.user-lib;
@ -130,6 +124,16 @@ rec {
outputsBuilder = outputs-builder;
};
in
flake-outputs =
core-inputs.flake-utils-plus.lib.mkFlake flake-options;
overlay = (final: prev:
snowfall-lib.attrs.merge-deep
(builtins.map (overlay: overlay final prev) (builtins.attrValues flake-outputs.overlays))
);
in
flake-outputs // {
inherit overlay;
};
}

View file

@ -25,6 +25,7 @@ in
user-packages-overlay = final: prev:
let
user-packages = snowfall-lib.package.create-packages {
pkgs = prev;
channels = channels;
};
user-packages-without-default = builtins.removeAttrs
@ -32,6 +33,14 @@ in
in
if overlay-package-namespace == null then
user-packages-without-default
else if prev ? "${overlay-package-namespace}" then
{
${overlay-package-namespace} =
snowfall-lib.attrs.merge-deep [
prev.${overlay-package-namespace}
user-packages-without-default
];
}
else
{
${overlay-package-namespace} = user-packages-without-default;

View file

@ -17,13 +17,14 @@ in
create-packages =
{ channels
, src ? user-packages-root
, pkgs ? channels.nixpkgs
, overrides ? { }
}:
let
user-packages = snowfall-lib.fs.get-default-nix-files-recursive src;
create-package-metadata = package: {
name = builtins.unsafeDiscardStringContext (snowfall-lib.path.get-parent-directory package);
drv = channels.nixpkgs.callPackage package {
drv = pkgs.callPackage package {
inherit channels;
lib = snowfall-lib.internal.system-lib;
};

View file

@ -155,7 +155,6 @@ in
let
lib = snowfall-lib.internal.system-lib;
in
# (lib.traceSeqN 1 path)
{
inherit channelName system builder output;