mirror of
https://github.com/Gerg-L/nixos.git
synced 2025-12-10 08:53:56 -05:00
51 lines
1.3 KiB
Nix
51 lines
1.3 KiB
Nix
{
|
|
pkgs,
|
|
inputs,
|
|
lib,
|
|
self,
|
|
...
|
|
}: let
|
|
combined_flakes =
|
|
(
|
|
#filter non-flakes from inputs
|
|
lib.filterAttrs (
|
|
_: value: (
|
|
!(lib.hasAttrByPath ["flake"] value) || !value.flake
|
|
)
|
|
)
|
|
inputs
|
|
)
|
|
// {
|
|
#alias unstable
|
|
nixpkgs = inputs.unstable;
|
|
#add system flake
|
|
system = self;
|
|
};
|
|
in {
|
|
#create registry from input flakes
|
|
nix.registry = lib.mapAttrs (_: value: {flake = value;}) combined_flakes;
|
|
#add all inputs to etc
|
|
environment.etc = lib.mapAttrs' (name: value: lib.nameValuePair "/nixpath/${name}" {source = value;}) combined_flakes;
|
|
#source the etc paths to nixPath
|
|
nix.nixPath = lib.mapAttrsToList (name: _: name + "=/etc/nixpath/${name}") combined_flakes;
|
|
|
|
#other nix settings
|
|
nix = {
|
|
package = inputs.nix.packages.${pkgs.system}.default;
|
|
settings = {
|
|
experimental-features = ["nix-command" "flakes" "repl-flake"];
|
|
auto-optimise-store = true;
|
|
warn-dirty = false;
|
|
#ignore global registry
|
|
flake-registry = builtins.toFile "empty-flake-registry.json" ''{"flakes":[],"version":2}'';
|
|
#become stable faster stupid
|
|
use-xdg-base-directories = true;
|
|
trusted-users = [
|
|
"root"
|
|
"@wheel"
|
|
];
|
|
allowed-users = [
|
|
];
|
|
};
|
|
};
|
|
}
|