Skip to content

Failure after update of Emacs from 28.2 to 29.1 #126

@yalfg

Description

@yalfg

I've been using magit (and then with-editor) with a custom installation of Emacs 28.2 (and earlier from 27.1) without problem. After an update of Emacs to 29.1, I have a warning on opening the magit status:

 ■  Warning (with-editor): Cannot determine a suitable Emacsclient

Determining an Emacsclient executable suitable for the
current Emacs instance failed.  For more information
please see https://github.com/magit/magit/wiki/Emacsclient.

Running with-editor-debug gives:

with-editor: /home/user/.emacs.d/elpa/with-editor-3.3.0/with-editor.el
emacs: /usr/local/bin/emacs-fsf (29.1)
system:
  system-type: gnu/linux
  system-configuration: x86_64-pc-linux-gnu
  system-configuration-options: --prefix=/usr/local/stow/emacs-29.1 --program-suffix=-fsf --with-json --with-tree-sitter --with-native-compilation --with-file-notification=yes --with-xwidgets 'CFLAGS=-O2 -march=native'
server:
  server-running-p: t
  server-process: nil
  server-use-tcp: nil
  server-name: server
  server-socket-dir: /run/user/1000/emacs
    server
  server-auth-dir: ~/.emacs.d/server/
    WARNING: not an accessible directory
with-editor-emacsclient-executable:
 value:   nil (nil)
 default: nil (nil)
 funcall: nil (nil)
path:
  $PATH: "/home/user/bin:/home/user/.cargo/bin:/usr/local/sbin:/usr/local/bin:/snap/bin:/usr/sbin:/usr/bin:/usr/games:/usr/local/games:/home/user/.local/bin"
  exec-path: (/home/user/bin /home/user/.cargo/bin /usr/local/sbin /usr/local/bin /snap/bin /usr/sbin /usr/bin /usr/games /usr/local/games /home/user/.local/bin /usr/local/stow/emacs-29.1/libexec/emacs/29.1/x86_64-pc-linux-gnu)
  with-editor-emacsclient-path:
    /usr/local/stow/emacs-fsf/bin (t)
      /usr/local/stow/emacs-fsf/bin/emacsclient-fsf (29.1)
    /home/user/bin (t)
      /home/user/bin/myemacsclient (nil)
    /home/user/.cargo/bin (t)
    /usr/local/sbin (t)
    /usr/local/bin (t)
      /usr/local/bin/emacsclient-fsf (29.1)
    /snap/bin (nil)
    /usr/sbin (t)
    /usr/bin (t)
      /usr/bin/emacsclient (28.2)
      /usr/bin/emacsclient.emacs (28.2)
    /usr/games (t)
    /usr/local/games (t)
    /home/user/.local/bin (t)
    /usr/local/stow/emacs-29.1/libexec/emacs/29.1/x86_64-pc-linux-gnu (t)

I'm not using TCP (local to a machine) so the lack of ~/.emacs.d/server/ shouldn't be a problem.

The proper emacsclient-fsf executable is found: this upstream, self compiled Emacs 29.1 is installed under /usr/local/stow/emacs-29.1 and linked under /usr/local/bin using stow. So this looks good.

A specific thing of my setup (maybe?) is that I'm running an Emacs server using systemd, but the issue is from a different Emacs instance. I prefer using an Emacs instance per project, and the systemd server is only there to support automation like hooking Firefox/Thunderbird to TB. Could this be an issue?

When running manually the correctly found emacsclient, it works fine and connect to the systemd background instance (as expected).

Thanks

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions