refactor: explicitly allow unfree packages

This commit is contained in:
Oliver Davies 2025-07-28 23:36:48 +01:00
parent 4ac31540af
commit 5131641023
12 changed files with 64 additions and 7 deletions

View file

@ -0,0 +1,26 @@
{ config, lib, ... }:
{
options.nixpkgs.allowedUnfreePackages = lib.mkOption {
type = lib.types.listOf lib.types.str;
default = [ ];
};
config.flake = {
modules =
let
predicate = pkg: builtins.elem (lib.getName pkg) config.nixpkgs.allowedUnfreePackages;
in
{
nixos.pc.nixpkgs.config.allowUnfreePredicate = predicate;
homeManager.base = args: {
nixpkgs.config = lib.mkIf (!(args.hasGlobalPkgs or false)) {
allowUnfreePredicate = predicate;
};
};
};
meta.nixpkgs.allowedUnfreePackages = config.nixpkgs.allowedUnfreePackages;
};
}