From afcbee33c9ce3ca163cf19b41464cb86d7515a8f Mon Sep 17 00:00:00 2001 From: Kenichi Kamiya Date: Fri, 6 Sep 2024 16:27:43 +0900 Subject: [PATCH 1/4] Use zed for VISUAL editor in both NixOS and macOS --- home-manager/common.nix | 1 - home-manager/darwin.nix | 8 ++++++++ home-manager/packages.nix | 4 ++++ nixos/configuration.nix | 2 +- 4 files changed, 13 insertions(+), 2 deletions(-) diff --git a/home-manager/common.nix b/home-manager/common.nix index d84d9954..fca7ad55 100644 --- a/home-manager/common.nix +++ b/home-manager/common.nix @@ -46,7 +46,6 @@ # Do NOT set GIT_EDITOR, it overrides `core.editor` in git config # https://unix.stackexchange.com/questions/4859/visual-vs-editor-what-s-the-difference EDITOR = lib.getExe pkgs.helix; - VISUAL = lib.getExe pkgs.helix; # vscode is heavy even if in VISUAL use PAGER = "less"; # https://github.com/sharkdp/bat/blob/v0.24.0/README.md?plain=1#L201-L219 diff --git a/home-manager/darwin.nix b/home-manager/darwin.nix index afa21dbd..45549a7a 100644 --- a/home-manager/darwin.nix +++ b/home-manager/darwin.nix @@ -3,6 +3,14 @@ # https://github.com/nix-community/home-manager/issues/414#issuecomment-427163925 lib.mkMerge [ (lib.mkIf pkgs.stdenv.isDarwin { + home = { + sessionVariables = { + # Do not specify Nix store path for zed in macOS + # https://github.com/NixOS/nixpkgs/blob/bba8dffd3135f35810e9112c40ee621f4ede7cca/pkgs/by-name/ze/zed-editor/package.nix#L217-L219 + VISUAL = "zed"; + }; + }; + # https://github.com/NixOS/nixpkgs/issues/240819#issuecomment-1616760598 # https://github.com/midchildan/dotfiles/blob/fae87a3ef327c23031d8081333678f9472e4c0ed/nix/home/modules/gnupg/default.nix#L38 xdg.dataFile."gnupg/gpg-agent.conf".text = '' diff --git a/home-manager/packages.nix b/home-manager/packages.nix index 0cc4c74c..7f9a5f0c 100644 --- a/home-manager/packages.nix +++ b/home-manager/packages.nix @@ -162,4 +162,8 @@ with pkgs; source-han-code-jp # Includes many definitions, useful for fallback inconsolata + + # Don't add zed in macOS with nixpkgs + # https://github.com/NixOS/nixpkgs/blob/bba8dffd3135f35810e9112c40ee621f4ede7cca/pkgs/by-name/ze/zed-editor/package.nix#L217-L219 + # edge-pkgs.zed-editor ]) diff --git a/nixos/configuration.nix b/nixos/configuration.nix index 26d0c2bb..9458d7bb 100644 --- a/nixos/configuration.nix +++ b/nixos/configuration.nix @@ -126,7 +126,7 @@ EDITOR = lib.getExe pkgs.helix; SYSTEMD_EDITOR = lib.getExe pkgs.helix; - VISUAL = lib.getExe pkgs.helix; + VISUAL = lib.getExe edge-pkgs.zed-editor; }; # List packages installed in system profile. To search, run: From cab9901da914faf6f1f8c9d2bcaac0d46304421a Mon Sep 17 00:00:00 2001 From: Kenichi Kamiya Date: Fri, 6 Sep 2024 17:13:49 +0900 Subject: [PATCH 2/4] Fix to apply --wait for zed execution as I did in vscode --- home-manager/darwin.nix | 2 +- nixos/configuration.nix | 4 +++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/home-manager/darwin.nix b/home-manager/darwin.nix index 45549a7a..717d80ad 100644 --- a/home-manager/darwin.nix +++ b/home-manager/darwin.nix @@ -7,7 +7,7 @@ lib.mkMerge [ sessionVariables = { # Do not specify Nix store path for zed in macOS # https://github.com/NixOS/nixpkgs/blob/bba8dffd3135f35810e9112c40ee621f4ede7cca/pkgs/by-name/ze/zed-editor/package.nix#L217-L219 - VISUAL = "zed"; + VISUAL = "zed --wait"; }; }; diff --git a/nixos/configuration.nix b/nixos/configuration.nix index 9458d7bb..a4da7e7a 100644 --- a/nixos/configuration.nix +++ b/nixos/configuration.nix @@ -126,7 +126,7 @@ EDITOR = lib.getExe pkgs.helix; SYSTEMD_EDITOR = lib.getExe pkgs.helix; - VISUAL = lib.getExe edge-pkgs.zed-editor; + VISUAL = "${lib.getExe edge-pkgs.zed-editor} --wait"; }; # List packages installed in system profile. To search, run: @@ -204,6 +204,8 @@ ## Unfree packages + # TODO: Consider using vscodium again + # TODO: Consider to drop the unuseful vscode until fixed the Wayland problems (edge-pkgs.vscode.override (prev: { # https://wiki.archlinux.org/title/Wayland#Electron # https://github.com/NixOS/nixpkgs/blob/3f8b7310913d9e4805b7e20b2beabb27e333b31f/pkgs/applications/editors/vscode/generic.nix#L207-L214 From fa23206aae16a0907ed501870e0875e29acd05fc Mon Sep 17 00:00:00 2001 From: Kenichi Kamiya Date: Fri, 6 Sep 2024 17:17:17 +0900 Subject: [PATCH 3/4] Install iceberg without enabling --- config/zed/settings.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/config/zed/settings.json b/config/zed/settings.json index 95b2e9f2..c0aa8b41 100644 --- a/config/zed/settings.json +++ b/config/zed/settings.json @@ -22,6 +22,7 @@ "toml": true, "lua": true, "basher": true, - "base16": true + "base16": true, + "iceberg": true } } From 0bb671cfbcef73463d1bfd2de0697ff89c4776d4 Mon Sep 17 00:00:00 2001 From: Kenichi Kamiya Date: Fri, 6 Sep 2024 17:26:38 +0900 Subject: [PATCH 4/4] Fix zed path in darwin --- home-manager/darwin.nix | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/home-manager/darwin.nix b/home-manager/darwin.nix index 717d80ad..2706bd82 100644 --- a/home-manager/darwin.nix +++ b/home-manager/darwin.nix @@ -5,9 +5,10 @@ lib.mkMerge [ (lib.mkIf pkgs.stdenv.isDarwin { home = { sessionVariables = { - # Do not specify Nix store path for zed in macOS - # https://github.com/NixOS/nixpkgs/blob/bba8dffd3135f35810e9112c40ee621f4ede7cca/pkgs/by-name/ze/zed-editor/package.nix#L217-L219 - VISUAL = "zed --wait"; + # * Do not specify Nix store path for zed in macOS + # https://github.com/NixOS/nixpkgs/blob/bba8dffd3135f35810e9112c40ee621f4ede7cca/pkgs/by-name/ze/zed-editor/package.nix#L217-L219 + # * `cli: install` action installs into this path in macOS + VISUAL = "/usr/local/bin/zed --wait"; }; };