From 2ff7be72e9c3eb30db0478d57b11681008aa0b2f Mon Sep 17 00:00:00 2001 From: n0099 Date: Thu, 18 Sep 2025 16:21:38 +0000 Subject: [PATCH] nixos/{vim,neovim,vscode,emacs}: prefer `environment.sessionVariables.EDITOR` over `environment.variables.EDITOR` This allows `sudo systemctl edit` that using PAM login can read the proper `$EDITOR`. --- nixos/modules/programs/neovim.nix | 2 +- nixos/modules/programs/vim.nix | 2 +- nixos/modules/programs/vscode.nix | 2 +- nixos/modules/services/editors/emacs.nix | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/nixos/modules/programs/neovim.nix b/nixos/modules/programs/neovim.nix index ce549b14ef7a..f1e3cfd4ea49 100644 --- a/nixos/modules/programs/neovim.nix +++ b/nixos/modules/programs/neovim.nix @@ -161,7 +161,7 @@ in environment.systemPackages = [ cfg.finalPackage ]; - environment.variables.EDITOR = lib.mkIf cfg.defaultEditor (lib.mkOverride 900 "nvim"); + environment.sessionVariables.EDITOR = lib.mkIf cfg.defaultEditor (lib.mkOverride 900 "nvim"); # On most NixOS configurations /share is already included, so it includes # this directory as well. But This makes sure that /share/nvim/site paths # from other packages will be used by neovim. diff --git a/nixos/modules/programs/vim.nix b/nixos/modules/programs/vim.nix index 6a6cd0a90966..0f27082b8614 100644 --- a/nixos/modules/programs/vim.nix +++ b/nixos/modules/programs/vim.nix @@ -26,7 +26,7 @@ in ]; environment = { systemPackages = [ cfg.package ]; - variables.EDITOR = lib.mkIf cfg.defaultEditor (lib.mkOverride 900 "vim"); + sessionVariables.EDITOR = lib.mkIf cfg.defaultEditor (lib.mkOverride 900 "vim"); pathsToLink = [ "/share/vim-plugins" ]; }; }; diff --git a/nixos/modules/programs/vscode.nix b/nixos/modules/programs/vscode.nix index f7d427eba14e..a20b6b055b10 100644 --- a/nixos/modules/programs/vscode.nix +++ b/nixos/modules/programs/vscode.nix @@ -49,7 +49,7 @@ in cfg.finalPackage ]; - environment.variables.EDITOR = lib.mkIf cfg.defaultEditor ( + environment.sessionVariables.EDITOR = lib.mkIf cfg.defaultEditor ( lib.mkOverride 900 cfg.finalPackage.meta.mainProgram ); diff --git a/nixos/modules/services/editors/emacs.nix b/nixos/modules/services/editors/emacs.nix index ff69a22f5447..2cf753484a80 100644 --- a/nixos/modules/services/editors/emacs.nix +++ b/nixos/modules/services/editors/emacs.nix @@ -90,7 +90,7 @@ in editorScript ]; - environment.variables.EDITOR = lib.mkIf cfg.defaultEditor (lib.mkOverride 900 "emacseditor"); + environment.sessionVariables.EDITOR = lib.mkIf cfg.defaultEditor (lib.mkOverride 900 "emacseditor"); }; meta.doc = ./emacs.md;