aboutsummaryrefslogtreecommitdiff
path: root/infra/libkookie/nixpkgs/pkgs/top-level/config.nix
diff options
context:
space:
mode:
Diffstat (limited to 'infra/libkookie/nixpkgs/pkgs/top-level/config.nix')
-rw-r--r--infra/libkookie/nixpkgs/pkgs/top-level/config.nix41
1 files changed, 41 insertions, 0 deletions
diff --git a/infra/libkookie/nixpkgs/pkgs/top-level/config.nix b/infra/libkookie/nixpkgs/pkgs/top-level/config.nix
new file mode 100644
index 000000000000..7a5b4bdd1798
--- /dev/null
+++ b/infra/libkookie/nixpkgs/pkgs/top-level/config.nix
@@ -0,0 +1,41 @@
+# This file defines the structure of the `config` nixpkgs option.
+
+{ lib, ... }:
+
+with lib;
+
+let
+
+ mkMassRebuild = args: mkOption (builtins.removeAttrs args [ "feature" ] // {
+ type = args.type or (types.uniq types.bool);
+ default = args.default or false;
+ description = (args.description or ''
+ Whether to ${args.feature} while building nixpkgs packages.
+ '') + ''
+ Changing the default may cause a mass rebuild.
+ '';
+ });
+
+ options = {
+
+ /* Internal stuff */
+
+ warnings = mkOption {
+ type = types.listOf types.str;
+ default = [];
+ internal = true;
+ };
+
+ /* Config options */
+
+ doCheckByDefault = mkMassRebuild {
+ feature = "run <literal>checkPhase</literal> by default";
+ };
+
+ };
+
+in {
+
+ inherit options;
+
+}