{ pkgs, nixpkgs, system, }: let packageSet = (import ./quixos-package-helpers.nix).packageSet; shared = { marker = "shared"; }; environment = { inherit system; nixpkgsSource = toString nixpkgs; pkgs = shared; narHash = nixpkgs.narHash; }; standard = { inherit nixpkgs system; context.buildEnvironment = environment; }; fallback = packageSet { inherit nixpkgs system; }; in assert packageSet standard == shared; assert packageSet ( standard // { context.buildEnvironment = environment // { nixpkgsSource = "same-content-under-another-name"; }; } ) == shared; assert (packageSet ( standard // { context.buildEnvironment = environment // { system = "another-system"; }; } )).path == fallback.path; assert (packageSet ( standard // { context.buildEnvironment = environment // { nixpkgsSource = "another-source"; narHash = "another-hash"; }; } )).path == fallback.path; assert (packageSet (standard // { overlays = [ (_: _: { marker = "overlay"; }) ]; })).marker == "overlay"; assert (packageSet (standard // { config.allowBroken = true; })).config.allowBroken; pkgs.runCommand "camino-package-set-check" { } '' touch "$out" ''