Re: TRAMP hangs if remote login shell is fish

Michael Albinus <[email protected]> Fri, 09 May 2025 09:51:34 +0200
Newsgroups gmane.emacs.tramp
Message-ID <[email protected]>
ID <[email protected]> writes:

Hi,

>> However, I made an experiment: Could you pls apply the appended patch to
>> tramp-sh.el, recompile and start a new Emacs session. It should work
>> then also for the '/ssh:me308:' access with a remote fish shell.
>>
>> diff --git a/lisp/tramp-sh.el b/lisp/tramp-sh.el
>> index 9d74c2fd..aead88ce 100644
>> --- a/lisp/tramp-sh.el
>> +++ b/lisp/tramp-sh.el
>> @@ -251,7 +251,9 @@ The string is used in `tramp-methods'.")
>>                `("ssh"
>>                  (tramp-login-program        "ssh")
>>                  (tramp-login-args           (("-l" "%u") ("-p" "%p") ("%c")
>> -				             ("-e" "none") ("%h")))
>> +				             ("-e" "none")
>> +				             ("-o" "SetEnv=\"TERM=dumb\"")
>> +					     ("%h")))
>>                  (tramp-async-args           (("-q")))
>>  		(tramp-direct-async         ("-t" "-t"))
>>                  (tramp-remote-shell         ,tramp-default-remote-shell)
>
> Unfortunately the result is still the same with this modification.

Hmm, in my test I see a difference. Do you still keep the test for
$TERM = dumb in your config.fish?

Did you start a new Emacs session? Perhaps you should also set
tramp-use-ssh-controlmaster-options to nil, in order not to reuse the
other Emacs session?

In case it still fails, I'd like to see the Tramp debug buffer, as before.

Best regards, Michael.