From: Stefan Monnier <monnier@IRO.UMontreal.CA>
To: Michael Albinus <michael.albinus@gmx.de>
Cc: Eli Zaretskii <eliz@gnu.org>, emacs-devel@gnu.org, dpittman@fb.com
Subject: Re: Environment variables for remote processes
Date: Tue, 18 Nov 2014 22:16:14 -0500 [thread overview]
Message-ID: <jwvzjbnga0r.fsf-monnier+emacsbugs@gnu.org> (raw)
In-Reply-To: <87h9xwdvxx.fsf@gmx.de> (Michael Albinus's message of "Tue, 18 Nov 2014 22:45:46 +0100")
> It's not so simple to decide what's appropriate settings. You do NOT
> want to propagate all your local environment variables to the remote
> process. Your local settings of DISPLAY or DBUS_SESSION_BUS_ADDRESS, to
> give prominent examples, would confuse your remote process heavily.
Check again: these will not be present in "the difference between
process-environment and (default-toplevel-value 'process-environment)".
>> In my naive mental model, Tramp's implementation of `process-file' will
>> run "env <ENVVARS> <COMMAND>" on the remote host, so we could use "-u"
>> to remove elements from the environment.
> No. With a sufficient amount of environment variables, you would exceed
> the maximum length of shell command lines. Tramp did it several times
> already, and I had to work-around that. Then "env ..." construct is
> applicable only, when you know in advance that there aren't too
> many settings.
But whichever other scheme we end up using, removing env-vars shouldn't
be any harder than adding some.
> Yes, but here we must speak about implementation. Tramp opens a
> connection (a shell) on the remote host, and sends all its internal
> commands via this shell. It sends also the command intended for
> process-file to that shell. It does *not* open a new (sub)process, which
> could inherit environment variables from Emacs, and alike. The
> environment is the same as when that shell has been started. That's why
> it is, at least as of today, "per connection".
I know that. That's why I suggested to send "env <ENV> <CMD>".
Another option might be:
(export VAR1=VAL1
unset VAR2
export VAR3=VAL3
...
<CMD>)
-- Stefan
next prev parent reply other threads:[~2014-11-19 3:16 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <030C5AEB-C009-4995-B153-6EECD44802C8@fb.com>
[not found] ` <87y4rkhdt6.fsf@gmx.de>
[not found] ` <87y4rf2jtx.fsf@gmx.de>
[not found] ` <jwv4mu3rniq.fsf-monnier+emacsbugs@gnu.org>
[not found] ` <87r3x6eq8w.fsf@gmx.de>
[not found] ` <jwvh9y23640.fsf-monnier+emacsbugs@gnu.org>
[not found] ` <87mw7rtnxg.fsf@gmx.de>
[not found] ` <83a93rduz4.fsf@gnu.org>
[not found] ` <jwv4mtyua90.fsf-monnier+emacsbugs@gnu.org>
2014-11-17 18:48 ` Environment variables for remote processes (was: bug#18940: 24.4; vc-hg does not disable pager, leading to hangs (at least with tramp)) Michael Albinus
2014-11-18 2:15 ` Environment variables for remote processes Stefan Monnier
2014-11-18 19:14 ` Michael Albinus
2014-11-18 21:24 ` Stefan Monnier
2014-11-18 21:45 ` Michael Albinus
2014-11-19 3:16 ` Stefan Monnier [this message]
2014-11-19 15:12 ` andres.ramirez
2014-11-23 10:22 ` Michael Albinus
2014-11-19 18:18 ` Michael Albinus
2014-11-19 18:31 ` Michael Albinus
2014-11-20 4:29 ` Stefan Monnier
2014-11-20 15:52 ` Michael Albinus
2014-11-21 2:46 ` Stefan Monnier
2014-11-22 11:43 ` Michael Albinus
2014-11-22 16:33 ` Stefan Monnier
2014-11-22 16:49 ` Michael Albinus
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://www.gnu.org/software/emacs/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=jwvzjbnga0r.fsf-monnier+emacsbugs@gnu.org \
--to=monnier@iro.umontreal.ca \
--cc=dpittman@fb.com \
--cc=eliz@gnu.org \
--cc=emacs-devel@gnu.org \
--cc=michael.albinus@gmx.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/emacs.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).