From 1d595a5b64fb887dd67dd98866af30b1a37b0f7a Mon Sep 17 00:00:00 2001 From: isabel Date: Fri, 6 Jun 2025 21:51:16 +0100 Subject: [PATCH] zed-editor: allow for nullable package (#7220) --- modules/programs/zed-editor.nix | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/modules/programs/zed-editor.nix b/modules/programs/zed-editor.nix index 9d0e407c8..04b4ebbf7 100644 --- a/modules/programs/zed-editor.nix +++ b/modules/programs/zed-editor.nix @@ -41,7 +41,7 @@ in programs.zed-editor = { enable = lib.mkEnableOption "Zed, the high performance, multiplayer code editor from the creators of Atom and Tree-sitter"; - package = lib.mkPackageOption pkgs "zed-editor" { }; + package = lib.mkPackageOption pkgs "zed-editor" { nullable = true; }; extraPackages = mkOption { type = with types; listOf package; @@ -138,7 +138,7 @@ in }; config = mkIf cfg.enable { - home.packages = + home.packages = mkIf (cfg.package != null) ( if cfg.extraPackages != [ ] then [ (pkgs.symlinkJoin { @@ -153,7 +153,8 @@ in }) ] else - [ cfg.package ]; + [ cfg.package ] + ); home.file = mkIf (cfg.installRemoteServer && (cfg.package ? remote_server)) ( let @@ -191,5 +192,12 @@ in jsonFormat.generate "zed-theme-${n}" v; } ) cfg.themes; + + assertions = [ + { + assertion = cfg.extraPackages != [ ] -> cfg.package != null; + message = "{option}programs.zed-editor.extraPackages requires non null {option}programs.zed-editor.package"; + } + ]; }; }