GNU bug report logs -
#77402
31.0.50; Tramp: file-writable-p broken
Previous Next
Reported by: Gerd Möllmann <gerd.moellmann <at> gmail.com>
Date: Mon, 31 Mar 2025 08:22:02 UTC
Severity: normal
Found in version 31.0.50
Fixed in version 30.2
Done: Michael Albinus <michael.albinus <at> gmx.de>
Bug is archived. No further changes may be made.
Full log
Message #23 received at 77402 <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
Gerd Möllmann <gerd.moellmann <at> gmail.com> writes:
Hi Gerd,
>>> Hmm, I cannot reproduce the problem. Recipe:
>>>
>>> (make-directory "/ssh:ford:/tmp/yyy")
>>> => nil
>>>
>>> (make-symbolic-link "/tmp/yyy" "/ssh:ford:/tmp/xxx")
>>> => t
>>>
>>> (let ((default-directory "/ssh:ford:/tmp/"))
>>> (shell-command-to-string "ls -al"))
>>> => "...
>>> lrwxrwxrwx 1 admin administrators 8 2025-03-31 11:03 xxx -> /tmp/yyy
>>> drwxr-xr-x 2 admin administrators 40 2025-03-31 11:02 yyy
>>> "
>>>
>>> (file-writable-p "/ssh:ford:/tmp/xxx")
>>> => t
>>>
>>> My local and the remote machine are running GNU/Linux.
>>>
>>> Could you, pls, send the whole Tramp debug buffer with tramp-verbose 6,
>>> after starting a new Emacs session?
>>>
>>> Best regards, Michael.
>>
>> This is with master 1ed1cc83491311517ba46dff73fdc4383ffd4102. I started
>> Emacs without -Q to get Magit, hope that doesn't matter. Settings
>> related to Tramp in my init.el:
>>
>> (use-package tramp
>> :defer t
>> :custom
>> (auto-revert-remote-files t)
>>
>> :config
>> ;; Define profile for a remote zsh connection.
>> (connection-local-set-profile-variables
>> 'remote-zsh-arm
>> '((explicit-shell-file-name . "/opt/homebrew/bin/zsh")
>> (explicit-zsh-args . ("-i"))))
>>
>> ;; Define which profile to use depending on a connection protocol
>> ;; and machine. No longer really used since the x86 machine died.
>> (connection-local-set-profiles '(:protocol "ssh" :machine "pro2") 'remote-zsh-arm)
>> (connection-local-set-profiles '(:protocol "ssh" :machine "mini") 'remote-zsh-arm)
>>
>> ;; Let me use my own PATH.
>> (add-to-list 'tramp-remote-path 'tramp-own-remote-path))
>>
>> Started a fresh Emacs, then
>>
>> (setq tramp-verbose 6)
>> M-x magit-status RET /ssh:mini:emacs/github/master RET
>>
>> Status buffer is displayed. Then pulled with "P p" which gives the error
>> "... /tmp.not accessible". Please find the debug buffer contents
>> attached.
>
> Perhaps let me add how it looks in the file system
>
> gerd <at> mini 2025-03-31 11:39
> ~ % ls -ld /tmp
> lrwxr-xr-x@ 1 root wheel 11 Mar 6 11:06 /tmp -> private/tmp
> gerd <at> mini 2025-03-31 11:39
> ~ % ls -ld /private/tmp
> drwxrwxrwt 6 root wheel 192 Mar 31 06:55 /private/tmp
> gerd <at> mini 2025-03-31 11:40
Thanks. I went through the debug buffer, and perhaps I found the guilty
place. Could you, please try the attached patch?
If that doesn't work, I need more traces. Higher debug level, and
everything from the beginning. So could you pls call a fresh Emacs like
--8<---------------cut here---------------start------------->8---
# emacs -l tramp --eval '(setq tramp-verbose 10)'
--8<---------------cut here---------------end--------------->8---
Then you can continue with your recipe.
Best regards, Michael.
[Message part 2 (text/x-patch, attachment)]
This bug report was last modified 92 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.