He configurado $ PATH personalizado en mi ~ / .bash_profile en una máquina remota (para programas instalados localmente por el usuario por nix
y cabal
).
Uso eshell y vagabundo para emitir comandos en la máquina remota ( cd /remotehost:somedir
; luego comandos). (Elegí este método en lugar de las sesiones SSH comunes en un terminal principalmente porque estoy usando una mala conexión y las sesiones SSH se interrumpen muy a menudo, por lo que no puedo contar con poder iniciar sesión, cd y emitir un comando antes de que se interrumpa la conexión.)
Desafortunadamente, mi PATH personalizado no se cumple en esta situación, y algunos de los programas no se encuentran.
¿Cuál sería la mejor manera de resolver este problema?
eshell
tramp
path
environment
imz - Ivan Zakharyaschev
fuente
fuente
Respuestas:
Esta pregunta ya ha sido respondida por rekado (¡gracias!) (Como respuesta a otra pregunta más general sobre eshell):
En cuanto a otras variables de entorno, no existe un enfoque especial en cuanto a
PATH
: uno puede configurarlastramp-remote-process-environment
(como se documenta en https://www.gnu.org/software/emacs/manual/html_node/tramp/Remote-processes.html ):y no sé de una manera que lea los que están en el control remoto
~/.bash_profile
. Por lo tanto, debe repetirlos en esta variable en el lado local en Emacs como solución alternativa, lo cual no es totalmente conveniente porque diferentes hosts remotos pueden necesitar diferentes valores.En cuanto a
EDITOR
específicamente, por supuesto, hacerlo conwith-editor
sería más conveniente y apropiado.fuente
~/.bash_profile
(contrario a~/.profile
) que he visto en algunos documentos sobre estostramp-*
vars ...'tramp-own-remote-path
atramp-remote-path
causas provoca que el vagabundo abra un shell de inicio de sesión (utilizando el-l
argumento), lo~/.profile
que significa que la personalización por host se puede hacer~/.profile
para otras cosas que no seanPATH
.