3face7eddd
This changes how the templates use nixpkgs. Before, we instantiated nixpkgs in the flake and passd it directly to the configs; this was good for consistency, but silently ignored `nixpkgs.*` options, generating confusion among users. We now use modules to configure nixpkgs. This should help avoid cases such as: https://discourse.nixos.org/t/allowunfree-doesnt-work-with-flake-managed-system/21798/17 The drawback is that we can no longer test overlayed packages like so: `nix build .#foo`, you can do it like so instead: `nix build .#nixosConfigurations.your-system.pkgs.foo`. Personally, I've been avoiding override packages globally in my own config.
15 lines
450 B
Nix
15 lines
450 B
Nix
# This file defines overlays
|
|
{
|
|
# This one brings our custom packages from the 'pkgs' directory
|
|
additions = final: _prev: import ../pkgs { pkgs = final; };
|
|
|
|
# This one contains whatever you want to overlay
|
|
# You can change versions, add patches, set compilation flags, anything really.
|
|
# https://nixos.wiki/wiki/Overlays
|
|
modifications = final: prev: {
|
|
# example = prev.example.overrideAttrs (oldAttrs: rec {
|
|
# ...
|
|
# });
|
|
};
|
|
}
|