You are not logged in.

#1 2024-11-02 15:26:48

tekstryder
Member
Registered: 2013-02-14
Posts: 299

[SOLVED] Pure Wayland Session Gnome packages

NOTE: This thread is not open to opinions regarding X11 or Wayland. Please refrain from such.

I'm curious if any fellow forum folk have yet built a pure Wayland Gnome DE without support for an X11 session nor Xwayland? This is now possible as of Gnome 47.

I don't see anything in the AUR, hence this thread topic. That's understandable tho given it could be a burden to maintain due to user issues.

Not to be outdone by our friends over at Fedora, I'm thinking of giving it a go (locally, not for the AUR).

I'm in no way advocating for this to be the de facto standard for Arch. Xwayland is under active development.

With Gnome 46 and 47 I've been building mutter with meson_options: xwayland=false. Dead simple and mostly functionally equivalent. But, it leaves all the X11-related dependency bits laying around.

Seems the goal of the thread title could be achieved by modifying just 4 packages (gdm, gnome-session, gnome-shell, mutter)?

Last edited by tekstryder (2024-11-25 17:14:34)

Offline

#2 2024-11-02 18:42:24

tekstryder
Member
Registered: 2013-02-14
Posts: 299

Re: [SOLVED] Pure Wayland Session Gnome packages

I'll edit this post with the various PKGBUILD diffs and a couple other changes required, but I've removed the dependency on Xwayland after logging into my rebuilt Gnome 47.1 environment:

$ sudo pacman -Rns xorg-xwayland 
checking dependencies...

Package (8)           Old Version  Net Change

libfontenc            1.1.8-1       -0.03 MiB
libxcvt               0.1.2-2       -0.04 MiB
libxfont2             2.0.7-1       -0.23 MiB
xorg-fonts-encodings  1.1.0-1       -0.61 MiB
xorg-server-common    21.1.14-1     -0.12 MiB
xorg-setxkbmap        1.3.4-2       -0.03 MiB
xorg-xkbcomp          1.4.7-1       -0.21 MiB
xorg-xwayland         24.1.4-1      -2.19 MiB

Total Removed Size:  3.47 MiB

:: Do you want to remove these packages? [Y/n] 
:: Processing package changes...
(1/8) removing xorg-xwayland                                                                                                                                                                     [########################################################################################################################] 100%
(2/8) removing xorg-server-common                                                                                                                                                                [########################################################################################################################] 100%
(3/8) removing xorg-xkbcomp                                                                                                                                                                      [########################################################################################################################] 100%
(4/8) removing xorg-setxkbmap                                                                                                                                                                    [########################################################################################################################] 100%
(5/8) removing libxfont2                                                                                                                                                                         [########################################################################################################################] 100%
(6/8) removing libfontenc                                                                                                                                                                        [########################################################################################################################] 100%
(7/8) removing xorg-fonts-encodings                                                                                                                                                              [########################################################################################################################] 100%
(8/8) removing libxcvt                                                                                                                                                                           [########################################################################################################################] 100%
:: Running post-transaction hooks...
(1/3) Arming ConditionNeedsUpdate...
(2/3) Updating fontconfig cache...
(3/3) Updating the desktop file MIME type cache...

EDIT #1: gdm

NOTE: I added a required patch that has since landed after gdm 47.0 was tagged

--- PKGBUILD-GDM-ARCH	2024-11-02 14:47:37.106557798 -0400
+++ PKGBUILD-GDM-MFM	2024-11-02 12:06:58.392470129 -0400
@@ -8,7 +8,7 @@
   libgdm
 )
 pkgver=47.0
-pkgrel=1
+pkgrel=1.1
 pkgdesc="Display manager and login screen"
 url="https://gitlab.gnome.org/GNOME/gdm"
 arch=(x86_64)
@@ -28,10 +28,6 @@
   keyutils
   libcanberra
   libgudev
-  libx11
-  libxau
-  libxcb
-  libxdmcp
   pam
   systemd
   systemd-libs
@@ -46,28 +42,22 @@
   meson
   plymouth
   yelp-tools
-  xorg-server
-  xorg-xhost
-  xorg-xrdb
-)
-optdepends=(
-  'xorg-server: X session support'
-  'xorg-xhost: X session support'
-  'xorg-xrdb: X session support'
 )
+
 checkdepends=(check)
 source=(
   "git+https://gitlab.gnome.org/GNOME/gdm.git#tag=${pkgver/[a-z]/.&}"
-  0001-Xsession-Don-t-start-ssh-agent-by-default.patch
+  088a2af5ffe8c817d64cea020698a58d1059e4ae.patch
 )
 b2sums=('68e4833abdeb0c1f6bf64ddf35b725b06d379e26e7c4f757e5a958786803605bc072e1a224d7249f00bdf752e7db91bb95f81ca792f5a71f428a906a09457d12'
-        'f7e868fdd7cc121433de1572583eb728f4d186cd4f52c6d6c8f2ccf4a3cf781144ff71f704f13571ddb97a1ff4ec55cfa3df25d38737ad19da21e84ddc2d3ee4')
+        'SKIP')
 
 prepare() {
   cd gdm
 
-  # Don't start ssh-agent by default
-  git apply -3 ../0001-Xsession-Don-t-start-ssh-agent-by-default.patch
+  # daemon: Don't check for installed XWayland if Wayland-only 
+  # https://gitlab.gnome.org/GNOME/gdm/-/commit/088a2af5ffe8c817d64cea020698a58d1059e4ae
+  git apply -3 ../088a2af5ffe8c817d64cea020698a58d1059e4ae.patch
 }
 
 build() {
@@ -75,7 +65,8 @@
     -D dbus-sys="/usr/share/dbus-1/system.d"
     -D default-pam-config=arch
     -D default-path="/usr/local/bin:/usr/local/sbin:/usr/bin"
-    -D gdm-xsession=true
+    -D gdm-xsession=false
+    -D x11-support=false
     -D ipv6=true
     -D run-dir=/run/gdm
     -D selinux=disabled
@@ -105,7 +96,6 @@
   backup=(
     etc/gdm/PostSession/Default
     etc/gdm/PreSession/Default
-    etc/gdm/Xsession
     etc/gdm/custom.conf
     etc/pam.d/gdm-autologin
     etc/pam.d/gdm-fingerprint

EDIT #2: gnome-session

NOTE: I pulled in a patch that has since landed after gnome-session 47.0.1 was tagged. Not required.

--- PKGBUILD-GNOME-SESSION-ARCH   2024-11-02 14:56:58.590490409 -0400
+++ PKGBUILD-GNOME-SESSION-MFM    2024-11-02 12:14:58.718977371 -0400
@@ -3,7 +3,7 @@
 
 pkgname=gnome-session
 pkgver=47.0.1
-pkgrel=1
+pkgrel=1.1
 pkgdesc="The GNOME Session Handler"
 url="https://gitlab.gnome.org/GNOME/gnome-session"
 arch=(x86_64)
@@ -23,9 +23,6 @@
   libgl
   libice
   libsm
-  libx11
-  libxcomposite
-  libxtst
   systemd
   systemd-libs
   xdg-desktop-portal-gnome
@@ -42,14 +39,25 @@
   xtrans
 )
 groups=(gnome)
-source=("git+https://gitlab.gnome.org/GNOME/gnome-session.git#tag=${pkgver/[a-z]/.&}")
-b2sums=('66034808c7c395c6c8fd9285dd6cc8602c0f1a65b4b0fd980b3bd4192420b25dc076d69e71a1be79247670504132734bc71e8b05ef5419294e4913d42bb1ff9e')
+source=(
+  "git+https://gitlab.gnome.org/GNOME/gnome-session.git#tag=${pkgver/[a-z]/.&}"
+  6452b8b4f8bb674726ffc547b018be5a4998c7f3.patch
+)
+b2sums=('66034808c7c395c6c8fd9285dd6cc8602c0f1a65b4b0fd980b3bd4192420b25dc076d69e71a1be79247670504132734bc71e8b05ef5419294e4913d42bb1ff9e'
+        'SKIP')
 
 prepare() {
   cd $pkgname
+  
+  # gnome-session wrapper: Avoid running as a subprocess 
+  # https://gitlab.gnome.org/GNOME/gnome-session/-/commit/6452b8b4f8bb674726ffc547b018be5a4998c7f3
+  git apply -3 ../6452b8b4f8bb674726ffc547b018be5a4998c7f3.patch
 }
 
 build() {
+  local meson_options=(
+    -D x11=false
+  )
   arch-meson $pkgname build
   meson compile -C build
 }

EDIT #3: mutter

NOTE: Added build-time dependency on (libxcvt). The cvt binary is used by src/backends/native/gen-default-modes.py at build time to generate a header file containing a list of display modes (drmModeModeInfo).

--- PKGBUILD-MUTTER-ARCH  2024-11-02 15:05:39.720280547 -0400
+++ PKGBUILD-MUTTER-MFM   2024-11-02 15:10:00.338501516 -0400
@@ -9,7 +9,7 @@
   mutter-docs
 )
 pkgver=47.1
-pkgrel=1
+pkgrel=1.1
 pkgdesc="Window manager and compositor for GNOME"
 url="https://gitlab.gnome.org/GNOME/mutter"
 arch=(x86_64)
@@ -46,21 +46,6 @@
   libsm
   libsysprof-capture
   libwacom
-  libx11
-  libxau
-  libxcb
-  libxcomposite
-  libxcursor
-  libxdamage
-  libxext
-  libxfixes
-  libxi
-  libxinerama
-  libxkbcommon
-  libxkbcommon-x11
-  libxkbfile
-  libxrandr
-  libxtst
   mesa
   pango
   pipewire
@@ -69,7 +54,6 @@
   startup-notification
   systemd-libs
   wayland
-  xorg-xwayland
 )
 makedepends=(
   egl-wayland
@@ -77,6 +61,7 @@
   git
   glib2-devel
   gobject-introspection
+  libxcvt
   meson
   sysprof
   wayland-protocols
@@ -101,6 +86,8 @@
     -D libdisplay_info=enabled
     -D tests=disabled
     -D wayland_eglstream=true
+    -D xwayland=false
+    -D x11=false
   )
 
   CFLAGS="${CFLAGS/-O2/-O3} -fno-semantic-interposition"

EDIT #4: gnome-shell

--- PKGBUILD-GNOME-SHELL-ARCH	2024-11-02 15:16:36.307269156 -0400
+++ PKGBUILD-GNOME-SHELL-MFM	2024-11-02 14:45:04.389595871 -0400
@@ -9,7 +9,7 @@
   gnome-shell-docs
 )
 pkgver=47.1
-pkgrel=1
+pkgrel=1.1
 epoch=1
 pkgdesc="Next generation desktop shell"
 url="https://gitlab.gnome.org/GNOME/gnome-shell"
@@ -50,8 +50,6 @@
   libpulse
   libsecret
   libsoup3
-  libx11
-  libxfixes
   mutter
   pango
   polkit

Please let me know if you spot any issues, or have suggestions for improvement!

I'll give it a few days for feedback before marking as solved.

Last edited by tekstryder (2024-11-02 22:24:55)

Offline

#3 2024-11-02 23:05:52

Lone_Wolf
Administrator
From: Netherlands, Europe
Registered: 2005-10-04
Posts: 13,639

Re: [SOLVED] Pure Wayland Session Gnome packages

$ pactree --sync --reverse --depth 1 libx11 | grep gnome
├─gnome-applets
├─gnome-control-center
├─gnome-flashback
├─gnome-mplayer
├─gnome-panel
├─gnome-session
├─gnome-settings-daemon
├─gnome-shell
├─gnome-terminal
├─xdg-desktop-portal-gnome
$ 

you covered gnome-shell, but not the other packages. Maybe settle for gnome without xwayland for now ?


Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.

clean chroot building not flexible enough ?
Try clean chroot manager by graysky

Offline

#4 2024-11-02 23:31:48

tekstryder
Member
Registered: 2013-02-14
Posts: 299

Re: [SOLVED] Pure Wayland Session Gnome packages

Lone_Wolf wrote:

you covered gnome-shell, but not the other packages. Maybe settle for gnome without xwayland for now ?

Remove that | grep gnome and you'll see why I did not pursue libx11 as a whole. smile

I'll adjust the phrasing of my OP/goal slightly. There is no longer an X11 session available with the packages I built. This is in parity with the current Fedora 41 release.

The other packages you listed I've either not got installed and/or have no requirement of an X11 or Xwayland session.

$ pactree --reverse --depth 1 libx11 | grep gnome
├─gnome-control-center
├─gnome-settings-daemon
├─xdg-desktop-portal-gnome

They're all happy in native Wayland. As mentioned in the OP I've been running an Xwayland-less native Wayland session for a couple years now (during Gnome 44 and 45 I used the --no-X11 startup option to block Xwayland in the session... then began building mutter myself for 46 and 47 with meson option).

Also note no more xorg-server*:

$ pacman -Qs xorg
local/xorg-xmessage 1.0.7-1
    Display a message or query in a window
local/xorg-xprop 1.2.7-1 (xorg-apps xorg)
    Property displayer for X
local/xorg-xrdb 1.2.2-2 (xorg-apps xorg)
    X server resource database utility
local/xorg-xset 1.2.5-2 (xorg-apps xorg)
    User preference utility for X
local/xorgproto 2024.1-2
    combined X.Org X11 Protocol headers

EDIT1: Clarified thread title and OP to better reflect goal. Thanks!
EDIT2: A few more snippets regarding package/dependency changes (kinda the whole point of the thread).

Last edited by tekstryder (2024-11-03 01:55:26)

Offline

#5 2024-11-25 17:14:17

tekstryder
Member
Registered: 2013-02-14
Posts: 299

Re: [SOLVED] Pure Wayland Session Gnome packages

As expected, using the pure Wayland packages for Gnome's session has been entirely uneventful.

I'll continue building these packages locally in perpetuity unless/until Arch ever defaults to dropping X11/Xwayland from Gnome packaging officially.


warning: gdm: local (47.0-99) is newer than extra (47.0-2)*
warning: gnome-session: local (47.0.1-1.1) is newer than extra (47.0.1-1)
warning: gnome-shell: local (1:47.2-1.1) is newer than extra (1:47.1-1)
warning: libgdm: local (47.0-99) is newer than extra (47.0-2)
warning: mutter: local (47.2-1.1) is newer than extra (47.1-1)

Now running Gnome 47.2.

* Note GDM has a few new X11-less-related MRs recently merged, so just building from git head for now until next 47 tag or if 47 is branched.

Marking this as [SOLVED].

Offline

#6 2025-03-22 15:32:33

tekstryder
Member
Registered: 2013-02-14
Posts: 299

Re: [SOLVED] Pure Wayland Session Gnome packages

Gnome 48.0 is now in [Extra].

For anyone interested in running Gnome 48 without X11/Xwayland, here are diffs for the required core packages.

Upstream didn't feel the need to tag a 48 release for gnome-session as there's been no affecting changes since the previous release.

I'll provide the changes required for a pure Wayland Gnome session environment each major release.

gdm:

--- a/PKGBUILD
+++ b/PKGBUILD
@@ -8,7 +8,7 @@
   libgdm
 )
 pkgver=48.0
-pkgrel=1
+pkgrel=1.1
 pkgdesc="Display manager and login screen"
 url="https://gitlab.gnome.org/GNOME/gdm"
 arch=(x86_64)
@@ -28,10 +28,6 @@
   keyutils
   libcanberra
   libgudev
-  libx11
-  libxau
-  libxcb
-  libxdmcp
   pam
   systemd
   systemd-libs
@@ -46,28 +42,16 @@
   meson
   plymouth
   yelp-tools
-  xorg-server
-  xorg-xhost
-  xorg-xrdb
-)
-optdepends=(
-  'xorg-server: X session support'
-  'xorg-xhost: X session support'
-  'xorg-xrdb: X session support'
 )
 checkdepends=(check)
 source=(
   "git+https://gitlab.gnome.org/GNOME/gdm.git#tag=${pkgver/[a-z]/.&}"
-  0001-Xsession-Don-t-start-ssh-agent-by-default.patch
 )
-b2sums=('d08d2137f630999b2f36bd8b798805e145fd7350fc4a092056cfdddd2170ae57b3b17a3a8f44f4c08a7e527a165fdce0dfa7a934188bc487d2a6d5bd848497b0'
-        'f7e868fdd7cc121433de1572583eb728f4d186cd4f52c6d6c8f2ccf4a3cf781144ff71f704f13571ddb97a1ff4ec55cfa3df25d38737ad19da21e84ddc2d3ee4')
+b2sums=('d08d2137f630999b2f36bd8b798805e145fd7350fc4a092056cfdddd2170ae57b3b17a3a8f44f4c08a7e527a165fdce0dfa7a934188bc487d2a6d5bd848497b0')
 
 prepare() {
   cd gdm
 
-  # Don't start ssh-agent by default
-  git apply -3 ../0001-Xsession-Don-t-start-ssh-agent-by-default.patch
 }
 
 build() {
@@ -75,7 +59,8 @@
     -D dbus-sys="/usr/share/dbus-1/system.d"
     -D default-pam-config=arch
     -D default-path="/usr/local/bin:/usr/local/sbin:/usr/bin"
-    -D gdm-xsession=true
+    -D gdm-xsession=false
+    -D x11-support=false
     -D ipv6=true
     -D run-dir=/run/gdm
     -D selinux=disabled
@@ -105,7 +90,6 @@
   backup=(
     etc/gdm/PostSession/Default
     etc/gdm/PreSession/Default
-    etc/gdm/Xsession
     etc/gdm/custom.conf
     etc/pam.d/gdm-autologin
     etc/pam.d/gdm-fingerprint

gnome-session:

--- a/PKGBUILD
+++ b/PKGBUILD
@@ -3,7 +3,7 @@
 
 pkgname=gnome-session
 pkgver=47.0.1
-pkgrel=1
+pkgrel=1.1
 pkgdesc="The GNOME Session Handler"
 url="https://gitlab.gnome.org/GNOME/gnome-session"
 arch=(x86_64)
@@ -23,9 +23,6 @@
   libgl
   libice
   libsm
-  libx11
-  libxcomposite
-  libxtst
   systemd
   systemd-libs
   xdg-desktop-portal-gnome
@@ -50,6 +47,9 @@
 }
 
 build() {
+  local meson_options=(
+    -D x11=false
+  )
   arch-meson $pkgname build
   meson compile -C build
 }

gnome-shell:

--- a/PKGBUILD
+++ b/PKGBUILD
@@ -9,7 +9,7 @@
   gnome-shell-docs
 )
 pkgver=48.0
-pkgrel=1
+pkgrel=1.1
 epoch=1
 pkgdesc="Next generation desktop shell"
 url="https://gitlab.gnome.org/GNOME/gnome-shell"
@@ -50,8 +50,6 @@
   libpulse
   libsecret
   libsoup3
-  libx11
-  libxfixes
   mutter
   pango
   polkit

mutter:

--- a/PKGBUILD
+++ b/PKGBUILD
@@ -9,7 +9,7 @@
   mutter-docs
 )
 pkgver=48.0
-pkgrel=3
+pkgrel=3.1
 pkgdesc="Window manager and compositor for GNOME"
 url="https://gitlab.gnome.org/GNOME/mutter"
 arch=(x86_64)
@@ -49,21 +49,6 @@
   libsm
   libsysprof-capture
   libwacom
-  libx11
-  libxau
-  libxcb
-  libxcomposite
-  libxcursor
-  libxdamage
-  libxext
-  libxfixes
-  libxi
-  libxinerama
-  libxkbcommon
-  libxkbcommon-x11
-  libxkbfile
-  libxrandr
-  libxtst
   mesa
   pango
   pipewire
@@ -74,13 +59,13 @@
   startup-notification
   systemd-libs
   wayland
-  xorg-xwayland
 )
 makedepends=(
   gi-docgen
   git
   glib2-devel
   gobject-introspection
+  libxcvt
   meson
   python-docutils
   sysprof
@@ -122,6 +107,8 @@
     -D installed_tests=false
     -D tests=disabled
     -D wayland_eglstream=true
+    -D x11=false
+    -D xwayland=false
   )
 
   CFLAGS="${CFLAGS/-O2/-O3} -fno-semantic-interposition"

OCD EDIT: Removed blank extra newline from the GDM diff.

Last edited by tekstryder (2025-03-24 15:36:41)

Offline

#7 2025-05-10 13:15:01

tekstryder
Member
Registered: 2013-02-14
Posts: 299

Re: [SOLVED] Pure Wayland Session Gnome packages

A side-quest to this x11-less journey and lifestyle choice, I went on a rampage rebuilding most everything GTK-related.

Curious to see what apps would choke on x11-less gtk3/4 toolkits, and bored with the stability of mid-release-cycle Gnome, I got to building.

Mostly a smooth process, only needing to modify code in a couple apps and libraries.

My C skills be dusty (I'm an old K&R guy), so g-s-d, and its aged dep libcanberra, took some doing. wxwidgets-gtk3 was relatively easy to patch up.

Otherwise this proof-of-concept went swimmingly, tho I feel a bit like a gentooee and Greta messaged me, "How dare you?!".

Some notes:

*** GTK3-no-X11 rebuilds required ***
• gtk3
• gjs (rebuild not required)
• geany
• gimp
• xdg-desktop-portal-gtk
• webkit2gtk-4.1 (dep of evolution)
• gtk-vnc (dep of virt-manager (rebuild not required))
• spice-gtk (dep of virt-manager)
• libreoffice-fresh (required code changes)
• gtkmm3 (dep of gparted)
  • gparted (requires rebuild against rebuilt gtkmm3)
• wxwidgets-gtk3 (dep of veracrypt) (required code changes)
  • veracrypt (requires rebuild against patched/rebuilt wxwidgets-gtk3)
• libcanberra (dep of gnome-settings-daemon) (required code changes)
  • gnome-settings-daemon (required code changes + rebuild against patched/rebuilt libcanberra)
*** GTK4-no-X11 rebuilds required ***
• gtk4
• papers
• xdg-desktop-portal-gnome
• loupe (-Dx11=disabled)
• gst-plugin-gtk4 (dep of showtime (requires upstream patch or PKGBUILD mod))
• libreoffice-fresh (required code changes)
• libportal-gtk4 (dep of nautilus)
  • nautilus (requires rebuild against rebuilt libportal-gtk4)
• libnma-gtk4 (dep of g-c-c)
  • gnome-control-center (requires MR 3107 + git main + rebuilt libnma-gtk4)
warning: gdm: local (48.0-1.1) is newer than extra (48.0-1)
warning: gimp: local (3.0.4-1.1) is newer than extra (3.0.4-1)
warning: gjs: local (2:1.84.2-1.1) is newer than extra (2:1.84.2-1)
warning: gnome-control-center: local (48.1-2.1) is newer than extra (48.1-2)
warning: gnome-session: local (48.0-1.2) is newer than extra (48.0-1)
warning: gnome-settings-daemon: local (48.1-1.1) is newer than extra (48.1-1)
warning: gnome-shell: local (1:48.1-1.1) is newer than extra (1:48.1-1)
warning: gparted: local (1.7.0-1.1) is newer than extra (1.7.0-1)
warning: gst-plugin-gtk4: local (0.13.6-1.1) is newer than extra (0.13.6-1)
warning: gtk-update-icon-cache: local (1:4.18.5-2.1) is newer than extra (1:4.18.5-2)
warning: gtk-vnc: local (1.5.0-1.1) is newer than extra (1.5.0-1)
warning: gtk3: local (1:3.24.49-2.1) is newer than extra (1:3.24.49-2)
warning: gtk4: local (1:4.18.5-2.1) is newer than extra (1:4.18.5-2)
warning: gtk4-demos: local (1:4.18.5-2.1) is newer than extra (1:4.18.5-2)
warning: gtkmm3: local (3.24.10-1.1) is newer than extra (3.24.10-1)
warning: libcanberra: local (1:0.30+r2+gc0620e4-4.1) is newer than extra (1:0.30+r2+gc0620e4-4)
warning: libgdm: local (48.0-1.1) is newer than extra (48.0-1)
warning: libnautilus-extension: local (48.1-1.2) is newer than extra (48.1-1)
warning: libnma-common: local (1.10.6-3.1) is newer than extra (1.10.6-3)
warning: libnma-gtk4: local (1.10.6-3.1) is newer than extra (1.10.6-3)
warning: libportal: local (0.9.1-2.1) is newer than extra (0.9.1-2)
warning: libportal-gtk4: local (0.9.1-2.1) is newer than extra (0.9.1-2)
warning: libportal-qt6: local (0.9.1-2.1) is newer than extra (0.9.1-2)
warning: libreoffice-fresh: local (25.2.3-3.3) is newer than extra (25.2.3-3)
warning: loupe: local (48.1-1.1) is newer than extra (48.1-1)
warning: mutter: local (48.2-1.1) is newer than extra (48.2-1)
warning: nautilus: local (48.1-1.2) is newer than extra (48.1-1)
warning: papers: local (48.2-1.1) is newer than extra (48.2-1)
warning: spice-gtk: local (0.42-4.1) is newer than extra (0.42-4)
warning: veracrypt: local (1.26.20-1.1) is newer than extra (1.26.20-1)
warning: webkit2gtk-4.1: local (2.48.2-1.1) is newer than extra (2.48.2-1)
warning: webkitgtk-6.0: local (2.48.2-1.1) is newer than extra (2.48.2-1)
warning: wxwidgets-common: local (3.2.8-2.1) is newer than extra (3.2.8-2)
warning: wxwidgets-gtk3: local (3.2.8-2.1) is newer than extra (3.2.8-2)
warning: xdg-desktop-portal-gnome: local (48.0-2.1) is newer than extra (48.0-2)
warning: xdg-desktop-portal-gtk: local (1.15.3-1.1) is newer than extra (1.15.3-1)

EDIT: Installed packages dependent on GTK3/4:

gtk3
├─appstream-glib
├─bleachbit
├─brave-bin
├─chromium
├─dconf-editor
├─drawing
├─evolution
├─evolution-data-server
├─gcr
├─gdm
├─geany-git
├─gimp
├─gnome-autoar
├─gnome-color-manager
├─gnome-desktop
├─gnome-disk-utility
├─gnome-session
├─gnome-settings-daemon
├─gspell
├─gtk-vnc
├─gtkmm3
├─gtksourceview4
├─libhandy
├─meld
├─qemu-ui-gtk
├─quodlibet
├─spice-gtk
├─vte3
├─webkit2gtk-4.1
├─wxwidgets-gtk3
├─xdg-desktop-portal-gtk
└─xdg-user-dirs-gtk
gtk4
├─baobab
├─colord-gtk4
├─czkawka-gui
├─file-roller
├─foliate
├─glycin
├─gnome-bluetooth-3.0
├─gnome-calculator
├─gnome-characters
├─gnome-console
├─gnome-control-center
├─gnome-desktop-4
├─gnome-font-viewer
├─gnome-logs
├─gnome-online-accounts
├─gnome-shell
├─gnome-system-monitor
├─gnome-text-editor
├─gnome-weather
├─gnote
├─gst-plugin-gtk4
├─gtk4-demos
├─gtkmm-4.0
├─gtksourceview5
├─libadwaita
├─libadwaita-demos
├─libnma-gtk4
├─libportal-gtk4
├─libspelling
├─loupe
├─mutter
├─nautilus
├─papers
├─pavucontrol
├─resources
├─showtime
├─tecla
├─vte4
├─webkitgtk-6.0
└─xdg-desktop-portal-gnome

           


Lone_Wolf wrote:
$ pactree --sync --reverse --depth 1 libx11 | grep gnome

you covered gnome-shell, but not the other packages.
Maybe settle for gnome without xwayland for now ?

Never settle.

Ever-decreasing count!

$ pactree -r -d1 libx11 | wc -l
45
libx11
├─aalib
├─at-spi2-core
├─cairo
├─egl-x11
├─ffmpeg
├─freeglut
├─ghostscript
├─gst-plugins-bad-libs
├─gst-plugins-base-libs
├─gst-plugins-good
├─libcaca
├─libepoxy
├─libva
├─libxaw
├─libxcomposite
├─libxcursor
├─libxdamage
├─libxext
├─libxfixes
├─libxft
├─libxi
├─libxinerama
├─libxmu
├─libxpm
├─libxrandr
├─libxrender
├─libxss
├─libxt
├─libxtst
├─libxv
├─libxxf86vm
├─mame
├─mesa
├─mesa-utils
├─pango
├─qemu-ui-gtk
├─qemu-ui-sdl
├─qt6-base
├─sdl3
├─startup-notification
├─strawberry
├─vulkan-tools
├─xorg-xmessage
└─xorg-xprop
• Kernel 6.14.6
• gnome-shell 48.1 (Wayland)
• mutter 48.2 (-Dxwayland=false -Dx11=false)
• gtk3 3.24.49 (-Dx11-backend=false)
• gtk4 4.18.5 (-Dx11-backend=false)

     

Unlikely I'll maintain all these rebuilds (now carrying 36 local packages) moving forward, as it provides no functional benefit.

However...

1) Was able to get a couple gcc-15-compilation-related Arch packaging issues filed and addressed along the way, so not pointless.
2) Found a few areas for upstream improvement/deprecation and have/will files issues in any relevant projects.

EDIT 2025-03-14:

Added gst-plugin-gtk4 and libreoffice-fresh.
Had to whip up a pretty extensive patch for LO.
And those compile times...oof. But, I patched it against both GTK3 and GTK4, each compiled sans X11.

Last edited by tekstryder (Yesterday 15:31:34)

Offline

Board footer

Powered by FluxBB