From ac6d333af881bd8eaee3db1c71f4c63c4b4e766b Mon Sep 17 00:00:00 2001 From: moons Date: Mon, 20 Jul 2026 06:50:11 +0900 Subject: [PATCH] zed --- modules/applications/default.nix | 1 + modules/applications/zed/default.nix | 21 +++++++++++++++++++++ modules/applications/zed/home.nix | 21 +++++++++++++++++++++ modules/features/gui/editor.nix | 7 +++++-- 4 files changed, 48 insertions(+), 2 deletions(-) create mode 100644 modules/applications/zed/default.nix create mode 100644 modules/applications/zed/home.nix diff --git a/modules/applications/default.nix b/modules/applications/default.nix index 020d24d..152f56b 100644 --- a/modules/applications/default.nix +++ b/modules/applications/default.nix @@ -38,6 +38,7 @@ ./vscode ./wayland.nix ./yazi.nix + ./zed ./zellij ./zoom.nix ./zoxide.nix diff --git a/modules/applications/zed/default.nix b/modules/applications/zed/default.nix new file mode 100644 index 0000000..113e1cc --- /dev/null +++ b/modules/applications/zed/default.nix @@ -0,0 +1,21 @@ +{ + lib, + config, + ... +}: +let + cfg = config.my.applications.zed; +in +{ + imports = [ + ./home.nix + ]; + + options.my.applications.zed = { + enable = lib.mkEnableOption "Zed code editor"; + }; + + config = lib.mkIf cfg.enable { + my.applications.zed.homeManager.enable = lib.mkDefault true; + }; +} diff --git a/modules/applications/zed/home.nix b/modules/applications/zed/home.nix new file mode 100644 index 0000000..56e8d81 --- /dev/null +++ b/modules/applications/zed/home.nix @@ -0,0 +1,21 @@ +{ + lib, + config, + ... +}: +let + cfg = config.my.applications.zed.homeManager; +in +{ + options.my.applications.zed.homeManager = { + enable = lib.mkEnableOption "Zed home-manager configuration"; + }; + + config.home-manager.sharedModules = [ + { + config = lib.mkIf cfg.enable { + programs.zed-editor.enable = true; + }; + } + ]; +} diff --git a/modules/features/gui/editor.nix b/modules/features/gui/editor.nix index e10c20d..8547bcb 100644 --- a/modules/features/gui/editor.nix +++ b/modules/features/gui/editor.nix @@ -4,10 +4,13 @@ let in { options.my.features.gui.editor = { - enable = lib.mkEnableOption "GUI code editor (VSCode)"; + enable = lib.mkEnableOption "GUI code editors (VSCode and Zed)"; }; config = lib.mkIf cfg.enable { - my.applications.vscode.enable = true; + my.applications = { + vscode.enable = true; + zed.enable = true; + }; }; }