There are a couple of points here:
-
The way
nix.nixis written is that it’s trying to set an option called “inputs.nixpkgs.config.allowUnfree”[*] rather than try to reference something coming in frominputs. This option does not exist. Change it to justnixpkgs.config, since it affects only the mainpkgsinstance that is used in the system, one that’s effectively created when you callnixpkgs.lib.nixosSystem.inputsis actually perfectly accessible in your code, but you are not reading from it (at least in the code snippets in the post). -
If you want to use unstable
nixpkgswhile using stablenixpkgsfor the majority of the system, you have a couple of optionsa. Use an overlay.
Or
b. Create isolated instances of
pkgs-unstablein individual modules:```nix # somefile.nix { inputs, pkgs, ... }: let pkgs-unstable = import inputs.nixpkgs { inherit (pkgs) system; }; in { environment.systemPackages = [ pkgs-unstable.hello ]; } ```
[*] not literally that, but an option with this path.