Subject: Re: bug#64310: 29.0.92; pure-GTK warning under Wayland

From: Pankaj Jangid <[email-masked]>
Date: Thu, 27 Jul 2023 10:48:55 +0530

Po Lu <[email-masked]> writes:

>>> Nothing changes. When there is no default email handler configured
>>> i.e. when Firefox is set to ask each time. It shows two options for
>>> Emacs - (1) Emacs(Mail, Client) (2) Emacs (Mail). When I select the
>>> first one, it shows error that I reported. If I select option (2), Emacs
>>> launches without any warning (desired behaviour).
>
> I tried to reproduce this myself a few weeks ago, but I guess the line
> eater ate my reply.
>
> Unfortunately, the desktop file works as expected.  Are you sure the
> emacsclient you've installed corresponds to a PGTK build of Emacs?  If
> it's part of an Emacs installation built with another window system,
> PGTK-specific code within won't be present, demonstrating symptoms
> similar to what you are experiencing.

I have no other emacs installation. So I am pretty sure this is PGTK
build. Using following command to build,

--8<---------------cut here---------------start------------->8---
	    ./autogen.sh \
		&& ./configure --prefix=$HOME/.local \
			       --with-tree-sitter \
			       --with-pgtk \
			       CFLAGS='-O0 -g3' \
		&& make -j`nproc` \
		&& make install
--8<---------------cut here---------------end--------------->8---

The output of "ldd" against emacs and emacsclient from my path
are as follows,

--8<---------------cut here---------------start------------->8---
$ ldd /home/pankaj/.local/bin/emacs-29.1 
	linux-vdso.so.1 (0x00007ffe87159000)
	libgtk-3.so.0 => /lib/x86_64-linux-gnu/libgtk-3.so.0 (0x00007f7485800000)
	libgdk-3.so.0 => /lib/x86_64-linux-gnu/libgdk-3.so.0 (0x00007f7486a54000)
	libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 (0x00007f7486a35000)
	libpango-1.0.so.0 => /lib/x86_64-linux-gnu/libpango-1.0.so.0 (0x00007f7486197000)
	libharfbuzz.so.0 => /lib/x86_64-linux-gnu/libharfbuzz.so.0 (0x00007f7486093000)
	libcairo.so.2 => /lib/x86_64-linux-gnu/libcairo.so.2 (0x00007f74856dc000)
	libgdk_pixbuf-2.0.so.0 => /lib/x86_64-linux-gnu/libgdk_pixbuf-2.0.so.0 (0x00007f7486065000)
	libgio-2.0.so.0 => /lib/x86_64-linux-gnu/libgio-2.0.so.0 (0x00007f74854fe000)
	libgobject-2.0.so.0 => /lib/x86_64-linux-gnu/libgobject-2.0.so.0 (0x00007f748549f000)
	libglib-2.0.so.0 => /lib/x86_64-linux-gnu/libglib-2.0.so.0 (0x00007f7485367000)
	libtiff.so.6 => /lib/x86_64-linux-gnu/libtiff.so.6 (0x00007f74852db000)
	libjpeg.so.62 => /lib/x86_64-linux-gnu/libjpeg.so.62 (0x00007f7485248000)
	libpng16.so.16 => /lib/x86_64-linux-gnu/libpng16.so.16 (0x00007f748602f000)
	libgif.so.7 => /lib/x86_64-linux-gnu/libgif.so.7 (0x00007f7486a26000)
	libwebpdemux.so.2 => /lib/x86_64-linux-gnu/libwebpdemux.so.2 (0x00007f7486029000)
	libwebp.so.7 => /lib/x86_64-linux-gnu/libwebp.so.7 (0x00007f74851d6000)
	libasound.so.2 => /lib/x86_64-linux-gnu/libasound.so.2 (0x00007f74850cd000)
	librsvg-2.so.2 => /lib/x86_64-linux-gnu/librsvg-2.so.2 (0x00007f7484600000)
	libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f7484521000)
	libacl.so.1 => /lib/x86_64-linux-gnu/libacl.so.1 (0x00007f74850c2000)
	libdbus-1.so.3 => /lib/x86_64-linux-gnu/libdbus-1.so.3 (0x00007f74844cb000)
	libxml2.so.2 => /lib/x86_64-linux-gnu/libxml2.so.2 (0x00007f748431f000)
	libgpm.so.2 => /lib/x86_64-linux-gnu/libgpm.so.2 (0x00007f7486021000)
	libtinfo.so.6 => /lib/x86_64-linux-gnu/libtinfo.so.6 (0x00007f74842ec000)
	libselinux.so.1 => /lib/x86_64-linux-gnu/libselinux.so.1 (0x00007f7485094000)
	libfreetype.so.6 => /lib/x86_64-linux-gnu/libfreetype.so.6 (0x00007f7484221000)
	libfontconfig.so.1 => /lib/x86_64-linux-gnu/libfontconfig.so.1 (0x00007f74841d6000)
	libotf.so.1 => /lib/x86_64-linux-gnu/libotf.so.1 (0x00007f74841bd000)
	libgnutls.so.30 => /lib/x86_64-linux-gnu/libgnutls.so.30 (0x00007f7483e00000)
	liblcms2.so.2 => /lib/x86_64-linux-gnu/liblcms2.so.2 (0x00007f7484158000)
	libsystemd.so.0 => /lib/x86_64-linux-gnu/libsystemd.so.0 (0x00007f7484088000)
	libjansson.so.4 => /lib/x86_64-linux-gnu/libjansson.so.4 (0x00007f7484078000)
	libgmp.so.10 => /lib/x86_64-linux-gnu/libgmp.so.10 (0x00007f7483d7f000)
	libtree-sitter.so.0 => /usr/local/lib/libtree-sitter.so.0 (0x00007f7484047000)
	libsqlite3.so.0 => /lib/x86_64-linux-gnu/libsqlite3.so.0 (0x00007f7483c20000)
	libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f7483a3f000)
	libgmodule-2.0.so.0 => /lib/x86_64-linux-gnu/libgmodule-2.0.so.0 (0x00007f748403f000)
	libpangocairo-1.0.so.0 => /lib/x86_64-linux-gnu/libpangocairo-1.0.so.0 (0x00007f748402e000)
	libpangoft2-1.0.so.0 => /lib/x86_64-linux-gnu/libpangoft2-1.0.so.0 (0x00007f7483a26000)
	libfribidi.so.0 => /lib/x86_64-linux-gnu/libfribidi.so.0 (0x00007f7483a0a000)
	libcairo-gobject.so.2 => /lib/x86_64-linux-gnu/libcairo-gobject.so.2 (0x00007f7484023000)
	libatk-1.0.so.0 => /lib/x86_64-linux-gnu/libatk-1.0.so.0 (0x00007f74839e1000)
	libepoxy.so.0 => /lib/x86_64-linux-gnu/libepoxy.so.0 (0x00007f74838b2000)
	libXi.so.6 => /lib/x86_64-linux-gnu/libXi.so.6 (0x00007f748389e000)
	libX11.so.6 => /lib/x86_64-linux-gnu/libX11.so.6 (0x00007f748375c000)
	libatk-bridge-2.0.so.0 => /lib/x86_64-linux-gnu/libatk-bridge-2.0.so.0 (0x00007f7483720000)
	libXfixes.so.3 => /lib/x86_64-linux-gnu/libXfixes.so.3 (0x00007f7483718000)
	libxkbcommon.so.0 => /lib/x86_64-linux-gnu/libxkbcommon.so.0 (0x00007f74836d2000)
	libwayland-client.so.0 => /lib/x86_64-linux-gnu/libwayland-client.so.0 (0x00007f74836c0000)
	libwayland-cursor.so.0 => /lib/x86_64-linux-gnu/libwayland-cursor.so.0 (0x00007f74836b6000)
	libwayland-egl.so.1 => /lib/x86_64-linux-gnu/libwayland-egl.so.1 (0x00007f74836b1000)
	libXext.so.6 => /lib/x86_64-linux-gnu/libXext.so.6 (0x00007f748369c000)
	libXcursor.so.1 => /lib/x86_64-linux-gnu/libXcursor.so.1 (0x00007f748368f000)
	libXdamage.so.1 => /lib/x86_64-linux-gnu/libXdamage.so.1 (0x00007f748368a000)
	libXcomposite.so.1 => /lib/x86_64-linux-gnu/libXcomposite.so.1 (0x00007f7483685000)
	libXrandr.so.2 => /lib/x86_64-linux-gnu/libXrandr.so.2 (0x00007f7483678000)
	libXinerama.so.1 => /lib/x86_64-linux-gnu/libXinerama.so.1 (0x00007f7483673000)
	libthai.so.0 => /lib/x86_64-linux-gnu/libthai.so.0 (0x00007f7483666000)
	libgraphite2.so.3 => /lib/x86_64-linux-gnu/libgraphite2.so.3 (0x00007f748363a000)
	libpixman-1.so.0 => /lib/x86_64-linux-gnu/libpixman-1.so.0 (0x00007f748358f000)
	libxcb-shm.so.0 => /lib/x86_64-linux-gnu/libxcb-shm.so.0 (0x00007f748358a000)
	libxcb.so.1 => /lib/x86_64-linux-gnu/libxcb.so.1 (0x00007f7483560000)
	libxcb-render.so.0 => /lib/x86_64-linux-gnu/libxcb-render.so.0 (0x00007f7483550000)
	libXrender.so.1 => /lib/x86_64-linux-gnu/libXrender.so.1 (0x00007f7483543000)
	libmount.so.1 => /lib/x86_64-linux-gnu/libmount.so.1 (0x00007f74834e0000)
	libffi.so.8 => /lib/x86_64-linux-gnu/libffi.so.8 (0x00007f74834d4000)
	libpcre2-8.so.0 => /lib/x86_64-linux-gnu/libpcre2-8.so.0 (0x00007f748343a000)
	libzstd.so.1 => /lib/x86_64-linux-gnu/libzstd.so.1 (0x00007f748337e000)
	liblzma.so.5 => /lib/x86_64-linux-gnu/liblzma.so.5 (0x00007f748334d000)
	libLerc.so.4 => /lib/x86_64-linux-gnu/libLerc.so.4 (0x00007f74832b5000)
	libjbig.so.0 => /lib/x86_64-linux-gnu/libjbig.so.0 (0x00007f74832a4000)
	libdeflate.so.0 => /lib/x86_64-linux-gnu/libdeflate.so.0 (0x00007f748327e000)
	/lib64/ld-linux-x86-64.so.2 (0x00007f7486b86000)
	libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007f748325e000)
	libicuuc.so.72 => /lib/x86_64-linux-gnu/libicuuc.so.72 (0x00007f748305e000)
	libbrotlidec.so.1 => /lib/x86_64-linux-gnu/libbrotlidec.so.1 (0x00007f7483051000)
	libexpat.so.1 => /lib/x86_64-linux-gnu/libexpat.so.1 (0x00007f7483026000)
	libp11-kit.so.0 => /lib/x86_64-linux-gnu/libp11-kit.so.0 (0x00007f7482ef2000)
	libidn2.so.0 => /lib/x86_64-linux-gnu/libidn2.so.0 (0x00007f7482ec1000)
	libunistring.so.2 => /lib/x86_64-linux-gnu/libunistring.so.2 (0x00007f7482d09000)
	libtasn1.so.6 => /lib/x86_64-linux-gnu/libtasn1.so.6 (0x00007f7482cf4000)
	libnettle.so.8 => /lib/x86_64-linux-gnu/libnettle.so.8 (0x00007f7482ca6000)
	libhogweed.so.6 => /lib/x86_64-linux-gnu/libhogweed.so.6 (0x00007f7482c5d000)
	libcap.so.2 => /lib/x86_64-linux-gnu/libcap.so.2 (0x00007f7482c51000)
	libgcrypt.so.20 => /lib/x86_64-linux-gnu/libgcrypt.so.20 (0x00007f7482b0a000)
	liblz4.so.1 => /lib/x86_64-linux-gnu/liblz4.so.1 (0x00007f7482ae2000)
	libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f7482add000)
	libatspi.so.0 => /lib/x86_64-linux-gnu/libatspi.so.0 (0x00007f7482aa2000)
	libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f7482a9d000)
	libdatrie.so.1 => /lib/x86_64-linux-gnu/libdatrie.so.1 (0x00007f7482a91000)
	libXau.so.6 => /lib/x86_64-linux-gnu/libXau.so.6 (0x00007f7482a8c000)
	libXdmcp.so.6 => /lib/x86_64-linux-gnu/libXdmcp.so.6 (0x00007f7482800000)
	libblkid.so.1 => /lib/x86_64-linux-gnu/libblkid.so.1 (0x00007f7482a35000)
	libstdc++.so.6 => /lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007f7482400000)
	libicudata.so.72 => /lib/x86_64-linux-gnu/libicudata.so.72 (0x00007f7480600000)
	libbrotlicommon.so.1 => /lib/x86_64-linux-gnu/libbrotlicommon.so.1 (0x00007f7482a10000)
	libgpg-error.so.0 => /lib/x86_64-linux-gnu/libgpg-error.so.0 (0x00007f74827d8000)
	libbsd.so.0 => /lib/x86_64-linux-gnu/libbsd.so.0 (0x00007f74827c2000)
	libmd.so.0 => /lib/x86_64-linux-gnu/libmd.so.0 (0x00007f74827b5000)
$ ls -l /home/pankaj/.local/bin/emacsclient 
-rwxr-xr-x 1 pankaj pankaj 231496 Jul 27 10:36 /home/pankaj/.local/bin/emacsclient
$ ldd /home/pankaj/.local/bin/emacsclient 
	linux-vdso.so.1 (0x00007ffd5577b000)
	libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007fe4f2221000)
	/lib64/ld-linux-x86-64.so.2 (0x00007fe4f2434000)
$ which emacs
/home/pankaj/.local/bin/emacs
$ which emacsclient
/home/pankaj/.local/bin/emacsclient
$ ls -l `which emacs`
lrwxrwxrwx 1 pankaj pankaj 10 Jul 27 10:36 /home/pankaj/.local/bin/emacs -> emacs-29.1
--8<---------------cut here---------------end--------------->8---