From 3b955f5f0a942f9f60cdc9cacb7844335d0f21c3 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) (cherry picked from commit 1d595a5b64fb887dd67dd98866af30b1a37b0f7a) --- 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 472fc169..41f0eeb2 100644 --- a/modules/programs/zed-editor.nix +++ b/modules/programs/zed-editor.nix @@ -31,7 +31,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; @@ -128,7 +128,7 @@ in }; config = mkIf cfg.enable { - home.packages = + home.packages = mkIf (cfg.package != null) ( if cfg.extraPackages != [ ] then [ (pkgs.symlinkJoin { @@ -143,7 +143,8 @@ in }) ] else - [ cfg.package ]; + [ cfg.package ] + ); home.file = mkIf (cfg.installRemoteServer && (cfg.package ? remote_server)) ( let @@ -184,5 +185,12 @@ in } ) cfg.themes ); + + assertions = [ + { + assertion = cfg.extraPackages != [ ] -> cfg.package != null; + message = "{option}programs.zed-editor.extraPackages requires non null {option}programs.zed-editor.package"; + } + ]; }; }