From 27fcf5c8bc0eb5422992cb481d441720ff93c03c Mon Sep 17 00:00:00 2001 From: Silvan Mosberger Date: Fri, 9 Jan 2026 20:16:19 +0100 Subject: [PATCH] meta-types.nix: Introduce enum type --- pkgs/stdenv/generic/meta-types.nix | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/pkgs/stdenv/generic/meta-types.nix b/pkgs/stdenv/generic/meta-types.nix index c43770cc2629..462aef57439e 100644 --- a/pkgs/stdenv/generic/meta-types.nix +++ b/pkgs/stdenv/generic/meta-types.nix @@ -141,6 +141,14 @@ lib.fix (self: { verify = v: any (func: func v) funcs; }; + enum = + values: + assert isList values && all isString values; + { + name = "enum<${concatStringsSep "," values}>"; + verify = v: isString v && elem v values; + }; + record = fields: assert isAttrs fields && all isTypeDef (attrValues fields);