Subject: bug#68850: emacs: rgrep does not work over tramp

From: Simon Streit <[email-masked]>
Date: Tue, 10 Dec 2024 16:05:31 +0100

Hello Tomas,

Tomas Volf <[email-masked]> writes:

> when I try to execute rgrep over a tramp connection, I get the following error:
>
> /bin/sh: /gnu/store/sk8rxsrj3drr4arypicnhy899vgn3prr-findutils-4.9.0/bin/find: not found
>
> That is somewhat expected, since the remote machine is not a Guix one,
> but even if it were, it would require to have the find in exact same
> store path.

I am running into the same issue as well.  This is on a foreign system
using Emacs and Tramp trying to call find on remote hosts that are not
Guix.

> I understand the advantages of baking in the path to find into the
> configuration, but I wonder whether the trade-off is worth if for this
> particular case.  Setting it to just `find' seems to work fine, both
> locally and remotely (at the cost of a minuscule hit to
> reproducibility).

Is there maybe an easy way around this?  I tried:

--8<---------------cut here---------------start------------->8---
(connection-local-set-profile-variables
 'remote-system
 '((tramp-remote-path . ("/bin" "/usr/bin" "/sbin" "/usr/sbin" "/usr/local/bin" "/usr/local/sbin" "/local/bin"))))
(connection-local-set-profiles
 '(:application tramp :machine "host.example.com")
 'remote-system)
--8<---------------cut here---------------end--------------->8---

The connection will set the remote-path.  But rgrep will still invoke
find from a path in /gnu/store.

Cheers

-- 
Simon