lib/mkNixpkgs.nix: Add function to import nixpkgs with overlays
This commit is contained in:
12
flake.nix
12
flake.nix
@@ -70,7 +70,6 @@
|
||||
};
|
||||
outputs = { self, nixpkgs, nixos-hardware, chaosevents, fernglas, nixos-exporter, solid-xmpp-alarm, ssh-to-age, ... }@inputs: let
|
||||
lib = import ./lib inputs;
|
||||
localNixpkgs = import ./flake/nixpkgs.nix inputs;
|
||||
in {
|
||||
clerie.hosts = {
|
||||
aluminium = {
|
||||
@@ -140,14 +139,17 @@
|
||||
clerie-overrides = import ./pkgs/overrides/overlay.nix;
|
||||
};
|
||||
|
||||
nixpkgs = nixpkgs.lib.genAttrs [ "x86_64-linux" "aarch64-linux" ] (system:
|
||||
lib.mkNixpkgs {
|
||||
inherit system;
|
||||
}
|
||||
);
|
||||
|
||||
packages = nixpkgs.lib.genAttrs [ "x86_64-linux" "aarch64-linux" ] (system:
|
||||
let
|
||||
pkgs = localNixpkgs.${system};
|
||||
in
|
||||
nixpkgs.lib.genAttrs (
|
||||
(builtins.attrNames (self.overlays.clerie-pkgs null null))
|
||||
++ (builtins.attrNames (self.overlays.clerie-overrides null null))
|
||||
) (name: pkgs."${name}")
|
||||
) (name: self.nixpkgs."${system}"."${name}")
|
||||
);
|
||||
|
||||
inherit lib self;
|
||||
|
@@ -1,19 +0,0 @@
|
||||
{ self
|
||||
, nixpkgs
|
||||
, ...
|
||||
}@inputs:
|
||||
|
||||
let
|
||||
mkNixpkgs = { system, ... }@args:
|
||||
import nixpkgs {
|
||||
inherit system;
|
||||
overlays = [
|
||||
self.overlays.clerie-inputs
|
||||
self.overlays.clerie-pkgs
|
||||
self.overlays.clerie-build-support
|
||||
self.overlays.clerie-overrides
|
||||
];
|
||||
};
|
||||
|
||||
in
|
||||
nixpkgs.lib.genAttrs [ "x86_64-linux" "aarch64-linux" ] (system: mkNixpkgs { inherit system; })
|
@@ -8,6 +8,7 @@ let
|
||||
|
||||
lib = {
|
||||
clerie-monitoring-ids = callLibs ./clerie-monitoring-ids.nix;
|
||||
mkNixpkgs = callLibs ./mkNixpkgs.nix;
|
||||
nixosSystem = callLibs ./nixosSystem.nix;
|
||||
};
|
||||
|
||||
|
27
lib/mkNixpkgs.nix
Normal file
27
lib/mkNixpkgs.nix
Normal file
@@ -0,0 +1,27 @@
|
||||
{
|
||||
inputs,
|
||||
self,
|
||||
...
|
||||
}:
|
||||
|
||||
/*
|
||||
|
||||
Loads a version of nixpkgs with nixfiles overlays loaded
|
||||
|
||||
*/
|
||||
{
|
||||
system,
|
||||
nixpkgs ? inputs.nixpkgs,
|
||||
overlays ? [],
|
||||
...
|
||||
}@args:
|
||||
|
||||
import nixpkgs {
|
||||
inherit system;
|
||||
overlays = [
|
||||
self.overlays.clerie-inputs
|
||||
self.overlays.clerie-pkgs
|
||||
self.overlays.clerie-build-support
|
||||
self.overlays.clerie-overrides
|
||||
] ++ overlays;
|
||||
}
|
@@ -17,11 +17,9 @@
|
||||
...
|
||||
}@args:
|
||||
|
||||
let
|
||||
localNixpkgs = import ../flake/nixpkgs.nix inputs;
|
||||
in inputs.nixpkgs.lib.nixosSystem ({
|
||||
inputs.nixpkgs.lib.nixosSystem ({
|
||||
system = system;
|
||||
pkgs = if pkgs != null then pkgs else localNixpkgs.${system};
|
||||
pkgs = if pkgs != null then pkgs else self.nixpkgs.${system};
|
||||
modules = [
|
||||
self.nixosModules.nixfilesInputs
|
||||
self.nixosModules.clerie
|
||||
|
Reference in New Issue
Block a user