modules/nilla: flake compatibility module
This commit is contained in:
parent
cde0371741
commit
75ca1eb38f
3 changed files with 33 additions and 52 deletions
53
flake.nix
53
flake.nix
|
@ -1,34 +1,5 @@
|
||||||
{
|
{
|
||||||
outputs =
|
outputs = inputs: (import ./nilla.nix { inherit inputs; }).flake;
|
||||||
inputs:
|
|
||||||
let
|
|
||||||
nilla = import ./nilla.nix { inherit inputs; };
|
|
||||||
systems = [
|
|
||||||
"x86_64-linux"
|
|
||||||
"aarch64-linux"
|
|
||||||
"aarch64-darwin"
|
|
||||||
];
|
|
||||||
# NOTE: Assumes every package is available for every system.
|
|
||||||
# For now let's say this is always the case.
|
|
||||||
transpose =
|
|
||||||
attrs:
|
|
||||||
let
|
|
||||||
inherit (inputs.nixpkgs) lib;
|
|
||||||
mappedForSystem = system: builtins.mapAttrs (_: pkg: pkg.result.${system}) attrs;
|
|
||||||
in
|
|
||||||
lib.genAttrs systems mappedForSystem;
|
|
||||||
in
|
|
||||||
{
|
|
||||||
inherit (nilla) nixosModules;
|
|
||||||
inherit (nilla) darwinModules;
|
|
||||||
inherit (nilla) homeModules;
|
|
||||||
inherit (nilla) nixosConfigurations;
|
|
||||||
inherit (nilla) darwinConfigurations;
|
|
||||||
inherit (nilla) homeConfigurations;
|
|
||||||
devShells = transpose nilla.shells;
|
|
||||||
packages = transpose nilla.packages;
|
|
||||||
formatter = nilla.packages.formatter.result;
|
|
||||||
};
|
|
||||||
|
|
||||||
inputs = {
|
inputs = {
|
||||||
nixpkgs.url = "github:nixos/nixpkgs?ref=nixpkgs-unstable";
|
nixpkgs.url = "github:nixos/nixpkgs?ref=nixpkgs-unstable";
|
||||||
|
@ -128,26 +99,4 @@
|
||||||
flake = false;
|
flake = false;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
/*
|
|
||||||
TODO: Uncomment once (if ever?) nixConfig makes sense in flakes
|
|
||||||
nixConfig = {
|
|
||||||
extra-substituters = [
|
|
||||||
"https://hyprland.cachix.org"
|
|
||||||
"https://cache.garnix.io"
|
|
||||||
"https://nix-community.cachix.org"
|
|
||||||
"https://hercules-ci.cachix.org"
|
|
||||||
"https://nrabulinski.cachix.org"
|
|
||||||
"https://cache.nrab.lol"
|
|
||||||
];
|
|
||||||
extra-trusted-public-keys = [
|
|
||||||
"hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc="
|
|
||||||
"cache.garnix.io:CTFPyKSLcx5RMJKfLo5EEPUObbA78b0YQ2DTCJXqr9g="
|
|
||||||
"nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs="
|
|
||||||
"hercules-ci.cachix.org-1:ZZeDl9Va+xe9j+KqdzoBZMFJHVQ42Uu/c/1/KMC5Lw0="
|
|
||||||
"nrabulinski.cachix.org-1:Q5FD7+1c68uH74CQK66UWNzxhanZW8xcg1LFXxGK8ic="
|
|
||||||
"cache.nrab.lol-1:CJl1TouOyuJ1Xh4tZSXLwm3Upt06HzUNZmeyuEB9EZg="
|
|
||||||
];
|
|
||||||
};
|
|
||||||
*/
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -4,5 +4,6 @@
|
||||||
./services.nix
|
./services.nix
|
||||||
./configurations.nix
|
./configurations.nix
|
||||||
./modules.nix
|
./modules.nix
|
||||||
|
./flake.nix
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
31
modules/nilla/flake.nix
Normal file
31
modules/nilla/flake.nix
Normal file
|
@ -0,0 +1,31 @@
|
||||||
|
{ lib, config }:
|
||||||
|
let
|
||||||
|
systems = [
|
||||||
|
"x86_64-linux"
|
||||||
|
"aarch64-linux"
|
||||||
|
"aarch64-darwin"
|
||||||
|
];
|
||||||
|
transpose =
|
||||||
|
attrs: lib.attrs.generate systems (system: builtins.mapAttrs (_: pkg: pkg.result.${system}) attrs);
|
||||||
|
in
|
||||||
|
{
|
||||||
|
options.flake = lib.options.create {
|
||||||
|
type = lib.types.attrs.of lib.types.raw;
|
||||||
|
};
|
||||||
|
|
||||||
|
config.flake = {
|
||||||
|
inherit (config)
|
||||||
|
nixosModules
|
||||||
|
darwinModules
|
||||||
|
homeModules
|
||||||
|
nixosConfigurations
|
||||||
|
darwinConfigurations
|
||||||
|
homeConfigurations
|
||||||
|
;
|
||||||
|
|
||||||
|
devShells = transpose config.shells;
|
||||||
|
packages = transpose config.packages;
|
||||||
|
|
||||||
|
formatter = config.packages.formatter.result;
|
||||||
|
};
|
||||||
|
}
|
Loading…
Add table
Add a link
Reference in a new issue