diff options
author | Olli Helenius <liff@iki.fi> | 2019-01-10 18:06:54 +0200 |
---|---|---|
committer | Olli Helenius <liff@iki.fi> | 2019-01-10 18:16:03 +0200 |
commit | 2f9b85855bff4a6a35edacc776336425f76eea64 (patch) | |
tree | 366fe86279057c66d59ff983fdfb8a6c2dc9089a /pkgs/applications/editors/emacs | |
parent | 9d08f32da6231b884483c5df016a27936cf08405 (diff) |
emacs: tramp: detect wrapped gvfsd-fuse daemon
Tramp checks for a running `gvfsd-fuse` process to figure out whether to enable
gvfs-based. Its `tramp-compat-process-running-p` function uses
`/proc/<pid>/comm` to check for the name of running process(es). In Nix, the
gvfsd processes are launched via wrappers and the name of `gvfsd-fuse` in
`comm` in Linux is `.gvfsd-fuse-wra` (truncated to 15 characters) which
means the process is not detected and `tramp-gvfs-enabled` ends up with
`nil` even when gvfs is available.
This patch adds `.gvfsd-fuse-wrapped` to the list of process names to check when
determining the value of `tramp-gvfs-enabled`.
Diffstat (limited to 'pkgs/applications/editors/emacs')
-rw-r--r-- | pkgs/applications/editors/emacs/default.nix | 1 | ||||
-rw-r--r-- | pkgs/applications/editors/emacs/tramp-detect-wrapped-gvfsd.patch | 14 |
2 files changed, 15 insertions, 0 deletions
diff --git a/pkgs/applications/editors/emacs/default.nix b/pkgs/applications/editors/emacs/default.nix index 948d8cb98672..4f268a3a104e 100644 --- a/pkgs/applications/editors/emacs/default.nix +++ b/pkgs/applications/editors/emacs/default.nix @@ -42,6 +42,7 @@ stdenv.mkDerivation rec { patches = [ ./clean-env.patch + ./tramp-detect-wrapped-gvfsd.patch ]; postPatch = lib.optionalString srcRepo '' diff --git a/pkgs/applications/editors/emacs/tramp-detect-wrapped-gvfsd.patch b/pkgs/applications/editors/emacs/tramp-detect-wrapped-gvfsd.patch new file mode 100644 index 000000000000..5d16194fd202 --- /dev/null +++ b/pkgs/applications/editors/emacs/tramp-detect-wrapped-gvfsd.patch @@ -0,0 +1,14 @@ +diff --git a/lisp/net/tramp-gvfs.el b/lisp/net/tramp-gvfs.el +index f370abba31..f2806263a9 100644 +--- a/lisp/net/tramp-gvfs.el ++++ b/lisp/net/tramp-gvfs.el +@@ -164,7 +164,8 @@ tramp-gvfs-enabled + (and (featurep 'dbusbind) + (tramp-compat-funcall 'dbus-get-unique-name :system) + (tramp-compat-funcall 'dbus-get-unique-name :session) +- (or (tramp-compat-process-running-p "gvfs-fuse-daemon") ++ (or (tramp-compat-process-running-p ".gvfsd-fuse-wrapped") ++ (tramp-compat-process-running-p "gvfs-fuse-daemon") + (tramp-compat-process-running-p "gvfsd-fuse")))) + "Non-nil when GVFS is available.") + |