fix: use the right nixpkgs when consuming overlays
This commit is contained in:
parent
13cd056669
commit
6ed0b9f668
4 changed files with 24 additions and 11 deletions
|
|
@ -79,15 +79,9 @@ rec {
|
||||||
overrides = (full-flake-options.modules or { });
|
overrides = (full-flake-options.modules or { });
|
||||||
};
|
};
|
||||||
overlays = core-inputs.flake-utils-plus.lib.exportOverlays ({
|
overlays = core-inputs.flake-utils-plus.lib.exportOverlays ({
|
||||||
inherit (user-inputs.self) pkgs;
|
inherit (user-inputs.self) pkgs inputs;
|
||||||
inputs = user-inputs;
|
|
||||||
});
|
});
|
||||||
|
|
||||||
overlay = (final: prev:
|
|
||||||
snowfall-lib.attrs.merge-deep
|
|
||||||
(builtins.map (overlay: overlay final prev) (builtins.attrValues overlays))
|
|
||||||
);
|
|
||||||
|
|
||||||
outputs-builder = channels:
|
outputs-builder = channels:
|
||||||
let
|
let
|
||||||
user-outputs-builder =
|
user-outputs-builder =
|
||||||
|
|
@ -113,7 +107,7 @@ rec {
|
||||||
snowfall-lib.attrs.merge-deep [ user-outputs outputs ];
|
snowfall-lib.attrs.merge-deep [ user-outputs outputs ];
|
||||||
|
|
||||||
flake-options = custom-flake-options // {
|
flake-options = custom-flake-options // {
|
||||||
inherit hosts templates overlays overlay;
|
inherit hosts templates overlays;
|
||||||
inherit (user-inputs) self;
|
inherit (user-inputs) self;
|
||||||
|
|
||||||
lib = snowfall-lib.internal.user-lib;
|
lib = snowfall-lib.internal.user-lib;
|
||||||
|
|
@ -130,6 +124,16 @@ rec {
|
||||||
|
|
||||||
outputsBuilder = outputs-builder;
|
outputsBuilder = outputs-builder;
|
||||||
};
|
};
|
||||||
in
|
|
||||||
|
flake-outputs =
|
||||||
core-inputs.flake-utils-plus.lib.mkFlake flake-options;
|
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;
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -25,6 +25,7 @@ in
|
||||||
user-packages-overlay = final: prev:
|
user-packages-overlay = final: prev:
|
||||||
let
|
let
|
||||||
user-packages = snowfall-lib.package.create-packages {
|
user-packages = snowfall-lib.package.create-packages {
|
||||||
|
pkgs = prev;
|
||||||
channels = channels;
|
channels = channels;
|
||||||
};
|
};
|
||||||
user-packages-without-default = builtins.removeAttrs
|
user-packages-without-default = builtins.removeAttrs
|
||||||
|
|
@ -32,6 +33,14 @@ in
|
||||||
in
|
in
|
||||||
if overlay-package-namespace == null then
|
if overlay-package-namespace == null then
|
||||||
user-packages-without-default
|
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
|
else
|
||||||
{
|
{
|
||||||
${overlay-package-namespace} = user-packages-without-default;
|
${overlay-package-namespace} = user-packages-without-default;
|
||||||
|
|
|
||||||
|
|
@ -17,13 +17,14 @@ in
|
||||||
create-packages =
|
create-packages =
|
||||||
{ channels
|
{ channels
|
||||||
, src ? user-packages-root
|
, src ? user-packages-root
|
||||||
|
, pkgs ? channels.nixpkgs
|
||||||
, overrides ? { }
|
, overrides ? { }
|
||||||
}:
|
}:
|
||||||
let
|
let
|
||||||
user-packages = snowfall-lib.fs.get-default-nix-files-recursive src;
|
user-packages = snowfall-lib.fs.get-default-nix-files-recursive src;
|
||||||
create-package-metadata = package: {
|
create-package-metadata = package: {
|
||||||
name = builtins.unsafeDiscardStringContext (snowfall-lib.path.get-parent-directory package);
|
name = builtins.unsafeDiscardStringContext (snowfall-lib.path.get-parent-directory package);
|
||||||
drv = channels.nixpkgs.callPackage package {
|
drv = pkgs.callPackage package {
|
||||||
inherit channels;
|
inherit channels;
|
||||||
lib = snowfall-lib.internal.system-lib;
|
lib = snowfall-lib.internal.system-lib;
|
||||||
};
|
};
|
||||||
|
|
|
||||||
|
|
@ -155,7 +155,6 @@ in
|
||||||
let
|
let
|
||||||
lib = snowfall-lib.internal.system-lib;
|
lib = snowfall-lib.internal.system-lib;
|
||||||
in
|
in
|
||||||
# (lib.traceSeqN 1 path)
|
|
||||||
{
|
{
|
||||||
inherit channelName system builder output;
|
inherit channelName system builder output;
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue