bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#62938: 30.0.50; Emacsclient -nc can fail with to many arguments unde


From: Björn Bidar
Subject: bug#62938: 30.0.50; Emacsclient -nc can fail with to many arguments under Wayland
Date: Thu, 20 Apr 2023 08:57:20 +0300
User-agent: Gnus/5.13 (Gnus v5.13)

Robert Pluim <rpluim@gmail.com> writes:

>>>>>> On Tue, 18 Apr 2023 19:08:19 +0300, Björn Bidar via "Bug reports
> for GNU Emacs, the Swiss army knife of text editors"
> <bug-gnu-emacs@gnu.org> said:
>
>     Björn> I start emacsclient -nc using a global shortcut in KDE (S-e in my 
> case)
>     Björn> start by the included Emacsclient desktop file.
>     Björn> (exec emacsclient --alternate-editor= --display="\$DISPLAY" "\$@"; 
> else exec emacsclient --alternate-editor= --create-frame; fi' sh %F)
>
>     Björn> The command fails silently visually but in the logs there's:
>     Björn> Apr 18 18:47:46 odin kwin_wayland_wrapper[22013]: *ERROR*: 
> Assertion failed: (eq (match-end 0)
>
>     Björn> The bug only happens on Wayland, on X11 the issue isn't present.
>     Björn> I believe the issue was present before Emacs 29 was branched off.
>
>     Björn> My WM/Compositor is Kwin.
>
>     Björn> Enabling toggle-debug-error shows this backtrace:
>     Björn> Debugger entered--Lisp error: (cl-assertion-failed ((eq (match-end 
> 0) (length string)) nil))
>     Björn>   cl--assertion-failed((eq (match-end 0) (length string)))
>     Björn>   server-process-filter(#<process server <121>> "-env 
> SHELL=/bin/zsh -env LESSHISTFILE=/home/bidar/.local/var/lib/lesshist -env 
> XDG_CONFIG_DIRS=/home/bidar/.local/etc/kdedefaults:/etc/xdg:/usr/local/etc/xdg:/usr/etc/xdg
>  -env KGLOBALACCELD_PLATFORM=org.kde.kwin -env LESS=-M&_-I&_-R -env 
> XDG_SESSION_PATH=/org/freedesktop/DisplayManager/Session5 -env 
> AZURE_CONFIG_DIR=/home/bidar/.local/var/lib/azure -env MACHTYPE=x86_64 -env 
> G_BROKEN_FILENAMES=1 -env HOSTNAME=odin -env HISTSIZE=1000 -env MOZ_X11_EGL=1 
> -env XDG_LOG_HOME=/home/bidar/.local/var/log -env LANGUAGE= -env FROM_HEADER= 
> -env MINICOM=-c&_on -env 
> PGSERVICEFILE=/home/bidar/.local/etc/pg/pg_service.conf -env 
> JAVA_ROOT=/usr/lib64/jvm/jre-openjdk -env 
> JAVA_HOME=/usr/lib64/jvm/jre-openjdk -env 
> PSQL_HISTORY=/home/bidar/.local/var/lib/psql_history -env 
> AUDIODRIVER=pulseaudio -env JRE_HOME=/usr/lib64/jvm/java-11-openjdk-11 -env 
> SSH_AUTH_SOCK=/run/user/1000/gnupg/d.n74fqagsknsej3pgum7zfpmo/S.gpg-agent.ssh 
> -env XDG_DATA_HOME=/home/bidar/.local/share -env CPU=x86_64 -env 
> XDG_CONFIG_HOME=/home/bidar/.local/etc -env 
> JAVA_BINDIR=/usr/lib64/jvm/jre-openjdk/bin -env 
> CHECKUPDATES_DB=/home/bidar/.local/var/lib/pacman/checkupdates -env 
> GNUPGHOME=/home/bidar/.local/share/gnupg -env 
> DESKTOP_SESSION=/usr/share/wayland-sessions/plasmawayland -env 
> LC_MONETARY=fi_FI.UTF-8 -env XCURSOR_SIZE=24 -env EDITOR=editor -env 
> XDG_SEAT=seat0 -env PWD=/home/bidar -env 
> PARALLEL_HOME=/home/bidar/.local/etc/parallel -env QEMU_AUDIO_DRV=pa -env 
> XDG_SESSION_DESKTOP=KDE -env LOGNAME=bidar -env XDG_SESSION_TYPE=wayland -env 
> CURLOPT_NETRC_FILE=/home/bidar/.local/etc/netrc -env 
> MANPATH=/home/bidar/.local/share/man:/usr/local/man:/usr/share/man -env 
> PGPASSFILE=/home/bidar/.local/etc/pg/pgpass -env SYSTEMD_EXEC_PID=19722 -env 
> PGPPATH=/home/bidar/.local/share/gnupg -env 
> XAUTHORITY=/run/user/1000/xauth_IgqpMR -env 
> XKEYSYMDB=/usr/X11R6/lib/X11/XKeysymDB -env QT_STYLE_OVERRIDE=kvantum -env 
> XKB_DEFAULT_MODEL=pc105+inet -env RANDFILE=/home/bidar/.local/var/cache/rnd 
> -env GTK2_RC_FILES=/home/bidar/.local/etc/gtk-2.0/gtkrc-2.0 -env 
> XNLSPATH=/usr/share/X11/nls -env HOME=/home/bidar -env LANG=en_GB.UTF-8 -env 
> TMUX_TMPDIR=/run/user/1000 -env 
> WINEPREFIX=/home/bidar/.local/share/wine/default -env XDG_CURRENT_DESKTOP=KDE 
> -env CARGO_HOME=/home/bidar/.local/var/lib/cargo -env 
> GIMP2_DIRECTORY=/home/bidar/.local/var/lib/gimp -env 
> PYTHONSTARTUP=/home/bidar/.local/lib/python/startup.py -env 
> WAYLAND_DISPLAY=wayland-0 -env TASKDATA=/home/bidar/.local/var/lib/task -env 
> OSTYPE=linux-gnu -env XDG_SEAT_PATH=/org/freedesktop/DisplayManager/Seat0 
> -env NLTK_DATA=/home/bidar/.local/var/lib/nltk -env 
> LESS_ADVANCED_PREPROCESSOR=no -env 
> INVOCATION_ID=81a32aad87d6475db7f7f33fd7d8c330 -env 
> XDG_LIB_HOME=/home/bidar/.local/lib -env WGETRC=/home/bidar/.local/etc/wgetrc 
> -env MANAGERPID=3889 -env KDE_SESSION_UID=1000 -env 
> XDG_CACHE_HOME=/home/bidar/.local/var/cache -env 
> MOZ_GMP_PATH=/usr/lib64/mozilla/plugins/gmp-gmpopenh264/system-installed -env 
> XKB_DEFAULT_LAYOUT=us -env GDBHISTFILE=/home/bidar/.local/share/gdb/history 
> -env XDG_ACTIVATION_TOKEN=kwin-15 -env WINEDLLOVERRIDES=winemenubuilder.exe=d 
> -env LESSCLOSE=lessclose.sh&_%s&_%s -env XDG_SESSION_CLASS=user -env 
> TERMINFO=/home/bidar/.local/share/terminfo -env 
> G_FILENAME_ENCODING=@locale,UTF-8,ISO-8859-15,CP1252 -env HOST=odin -env 
> XAUTHLOCALHOSTNAME=odin -env ZDOTDIR=/home/bidar/.local/etc/zsh -env 
> PSQLRC=/home/bidar/.local/etc/pg/psqlrc -env LESSOPEN=lessopen.sh&_%s -env 
> USER=bidar -env MYSQL_HISTFILE=/home/bidar/.local/var/lib/mysql_history -env 
> PLASMA_USE_QT_SCALING=1 -env TS3_CONFIG_DIR=/home/bidar/.local/etc/ts3client 
> -env KDE_SESSION_VERSION=5 -env 
> VAULT_CLIENT_CONFIG=/home/bidar/.local/var/lib/vault-client/vaultrc -env 
> MORE=-sl -env NPM_CONFIG_USERCONFIG=/home/bidar/.local/etc/npm/npmrc -env 
> XINITRC=/home/bidar/.local/etc/X11/xinitrc -env VISUAL=editor -env 
> QT_WAYLAND_FORCE_DPI=144 -env CSHEDIT=emacs -env DISPLAY=:1 -env SHLVL=0 -env 
> INPUTRC=/home/bidar/.local/etc/readline/inputrc -env 
> TASKRC=/home/bidar/.local/etc/task/taskrc -env 
> WINDOWMANAGER=/usr/bin/startplasma-x11 -env PAGER=/usr/bin/less -env 
> WINEPREFIX_PATH=/home/bidar/.local/share/wineprefixes -env 
> LC_MEASUREMENT=fi_FI.UTF-8 -env XDG_VTNR=2 -env XDG_SESSION_ID=11 -env 
> DVDCSS_CACHE=/home/bidar/.local/var/cache/dvdcss -env 
> XDG_STATE_HOME=/home/bidar/.local/var/lib -env XDG_RUNTIME_DIR=/run/user/1000 
> -env DEBUGINFOD_URLS=https://debuginfod.opensuse.org/ -env 
> QT_AUTO_SCREEN_SCALE_FACTOR=0 -env JOURNAL_STREAM=8:6822949 -env 
> MANPATHISSET=yes -env XCURSOR_THEME=neutral_ccc -env 
> XDG_DATA_DIRS=/home/bidar/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share:/usr/share
>  -env KDE_FULL_SESSION=true -env QSG_RENDER_LOOP=basic -env 
> SQLITE_HISTORY=/home/bidar/.local/var/lib/sqlite_history -env VENDOR=sony 
> -env CONFIG_SITE=/usr/share/site/x86_64-pc-linux-gnu -env BROWSER=firefox 
> -env 
> PATH=/home/bidar/.local/bin:/home/bidar/.local/bin:/home/bidar/.local/bin:/usr/local/bin:/usr/bin:/bin
>  -env NETHACKOPTIONS=@/home/bidar/.local/etc/nethack/nethackrc -env 
> DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/1000/bus -env PROFILEREAD=true 
> -env PASSWORD_STORE_DIR=/home/bidar/.local/share/password-stores/personal 
> -env KDE_APPLICATIONS_AS_SCOPE=1 -env MAIL=/var/mail/bidar -env 
> HOSTTYPE=x86_64 -env 
> _JAVA_OPTIONS=\"-Djava.util.prefs.userRoot=\\\"/home/bidar/.local/etc\\\"/java\"
>  -env XKB_DEFAULT_OPTIONS=terminate:ctrl_alt_bksp -env 
> LESSKEY=/usr/etc/lesskey.bin -env OLDPWD=/home/bidar -dir /home/bidar/ 
> -display :1 -window-system \nWaiting for Emacs...")
>
>     Björn> I assume the arguments passed to the daemon process are to long 
> because
>     Björn> of the amount of environment variables that I set.
>
> How are you starting the daemon emacs? Does this still happen if you
> start the daemon as 'emacs --fg-daemon' instead.

I'm starting it using systemd --user:

~/:systemctl --user cat emacs.service  
# /home/bidar/.local/etc/systemd/user/emacs.service

[Unit]
Description=Emacs: the extensible, self-documenting text editor
Wants=graphical.target
Wants=environment.target

[Service]
Type=forking
ExecStart=/usr/bin/emacs --daemon
ExecStop=/usr/bin/emacsclient --eval "(kill-emacs)"
Environment=SSH_AUTH_SOCK=%t/keyring/ssh
Restart=always
TimeoutStartSec=0
[Install]
WantedBy=default.target

# /home/bidar/.local/etc/systemd/user/emacs.service.d/gdkenv.conf
[Service]
Environment=GDK_DPI_SCALE=0.8
Environment=GDK_SCALE=2

# /home/bidar/.local/etc/systemd/user/emacs.service.d/override.conf
[Service]
TimeoutStopSec=600

I don't think using fg-daemon should make a difference.

> The issue is that emacsclient is sending 'Waiting for Emacs...' to the
> emacs server socket instead of stdout. Are you using the
> EMACS_SOCKET_NAME environment variable or the '--socket-name' option
> somehow?

No that's not set.

> Could you also check which emacsclient is being invoked (eg
> emacsclient -V) and ensure it corresponds to your version of Emacs?

There's only one Emacs installed.

> Robert





reply via email to

[Prev in Thread] Current Thread [Next in Thread]