diff options
author | pennae <github@quasiparticle.net> | 2022-12-30 21:04:52 +0100 |
---|---|---|
committer | pennae <82953136+pennae@users.noreply.github.com> | 2023-01-05 02:33:13 +0100 |
commit | 9da5f12ecffa60f7a4712516177ede318b608f0d (patch) | |
tree | d3fb619e32d3088515481304a9f8c08697b23534 /lib | |
parent | 4c1cfbdb844babe1054c7f365eac337396092d60 (diff) |
modules: add mkPackageOptionMD
another transitional option factory, like mkAliasOptionModuleMD.
Diffstat (limited to 'lib')
-rw-r--r-- | lib/default.nix | 2 | ||||
-rw-r--r-- | lib/options.nix | 7 |
2 files changed, 7 insertions, 2 deletions
diff --git a/lib/default.nix b/lib/default.nix index 40ed723017c6..5d003d472f43 100644 --- a/lib/default.nix +++ b/lib/default.nix @@ -139,7 +139,7 @@ let optionAttrSetToDocList optionAttrSetToDocList' scrubOptionValue literalExpression literalExample literalDocBook showOption showOptionWithDefLocs showFiles - unknownModule mkOption mkPackageOption + unknownModule mkOption mkPackageOption mkPackageOptionMD mdDoc literalMD; inherit (self.types) isType setType defaultTypeMerge defaultFunctor isOptionType mkOptionType; diff --git a/lib/options.nix b/lib/options.nix index 9425e803c056..ce66bfb9d5d9 100644 --- a/lib/options.nix +++ b/lib/options.nix @@ -136,7 +136,7 @@ rec { let default' = if !isList default then [ default ] else default; in mkOption { type = lib.types.package; - description = lib.mdDoc "The ${name} package to use."; + description = "The ${name} package to use."; default = attrByPath default' (throw "${concatStringsSep "." default'} cannot be found in pkgs") pkgs; defaultText = literalExpression ("pkgs." + concatStringsSep "." default'); @@ -144,6 +144,11 @@ rec { (if isList example then "pkgs." + concatStringsSep "." example else example); }; + /* Like mkPackageOption, but emit an mdDoc description instead of DocBook. */ + mkPackageOptionMD = args: name: extra: + let option = mkPackageOption args name extra; + in option // { description = lib.mdDoc option.description; }; + /* This option accepts anything, but it does not produce any result. This is useful for sharing a module across different module sets |