feat(editors): restore vscode alongside zed for build123d workflows

- linux: programs.vscode via pkgs-master with gnome-libsecret password store
- darwin: visual-studio-code cask + aerospace window rules
- idols-ai: persist .vscode and .config/Code (Settings Sync handles extensions)
- xdg: code.desktop editor association and vscode:// scheme handler
This commit is contained in:
Ryan Yin
2026-08-29 17:05:44 +08:00
parent 5fe43e3c12
commit f08b45d2bc
5 changed files with 35 additions and 0 deletions
+21
View File
@@ -0,0 +1,21 @@
{
lib,
pkgs-master,
...
}:
{
programs.vscode = {
# Extensions and settings are managed by VS Code's built-in Settings Sync,
# not declaratively here (persisted via `.config/Code`, see preservation).
enable = true;
package = pkgs-master.vscode.override {
commandLineArgs = [
# https://code.visualstudio.com/docs/configure/settings-sync#_recommended-configure-the-keyring-to-use-with-vs-code
# For use with any package that implements the Secret Service API
# (for example gnome-keyring, kwallet5, KeepassXC)
"--password-store=gnome-libsecret"
];
};
};
}
+3
View File
@@ -18,6 +18,7 @@
"firefox.desktop"
];
editor = [
"code.desktop"
"dev.zed.Zed.desktop"
"nvim.desktop"
"Helix.desktop"
@@ -47,6 +48,8 @@
"x-scheme-handler/ftp" = browser; # open `ftp:` url with `browser`
"x-scheme-handler/http" = browser;
"x-scheme-handler/https" = browser;
# https://github.com/microsoft/vscode/issues/146408
"x-scheme-handler/vscode" = [ "code-url-handler.desktop" ]; # open `vscode://` url with `code-url-handler.desktop`
"x-scheme-handler/zoommtg" = [ "Zoom.desktop" ];
# all other unknown schemes will be opened by this default application.