{ lib, sources, pkgs, ... }: let inherit (lib.options) mkOption; inherit (lib.types) str; in { imports = [ # Going full schizo "${sources.nixpkgs}/nixos/modules/misc/nixpkgs/read-only.nix" ]; options.nixpkgs.system = mkOption { type = str; default = pkgs.system; readOnly = true; }; config.nixpkgs.pkgs = ( import sources.nixpkgs { hostPlatform = pkgs.stdenv.hostPlatform; overlays = [ ]; config = { # Configuration reference: # # Disallow broken packages to be built. allowBroken = false; allowUnsupportedSystem = true; # Warn when config contains an unrecognized attribute. # This might be useful for getting a better configuration. warnUndeclaredOptions = true; # Allow unfree packages allowUnfree = true; # Permitted insecure packages in a system. # Default to none, add more as necessary. # Matrix also likes using deprecated libraries, which tend to go into this list. # permittedInsecurePackages = []; # Whether to set enableParallelBuilding to true by default while # building nixpkgs packages. Changing the default causes a mass rebuild. enableParallelBuildingByDefault = false; # Whether to expose old attribute names for compatibility. # This improves backwards compatibility, # which I could not care less about in my configuration. allowAliases = false; # List of derivation warnings to display while rebuilding. # See: showDerivationWarnings = [ ]; }; } ); }