On Tue, 20 Sep 2022 at 21:45:28 -0700, Russ Allbery wrote: > I just found https://bugs.debian.org/838777, which says packages that only > provide a window manager without a mechanism for launching programs should > not register as x-window-manager
See also https://bugs.debian.org/1004522 in which I proposed adding a wayland-session virtual package, and in the process, ended up also proposing x-session for /usr/share/xsessions/*.desktop. In particular https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1004522#30 has a brief survey of what display managers actually do, and in https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1004522#66 I tried to document existing practice (which contradicts #838777). > try to document what x-window-manager is really for in the new X world This is part of what I tried to do in #1004522, but I was trying to document what it is now (including literally-only-a-window-manager window managers like mutter, not just tiny-desktop-environment window managers like twm or openbox), rather than what it should be. If we redefine x-window-manager to mean something that is more strict than it is now, then we'll have a mixture of x-window-manager implementations that meet the new requirement, and (perhaps essentially unmaintained) x-window-manager implementations that don't; so I'm not sure that's such a good idea. That's why I proposed adding a new virtual package instead. I personally think the fully-integrated-system approach should be that packages that want to be considered to be a session that you can log into (potentially ranging from GNOME/KDE all the way down to twm) should register themselves in /usr/share/xsessions/*.desktop (or /usr/share/wayland-sessions/*.desktop), user-friendly display managers like gdm/lightdm/sddm should list those and only those, and people who want to construct their own tiny desktop environment out of a window manager and some xterms should enable it by installing something resembling https://salsa.debian.org/gnome-team/gdm/-/blob/debian/master/debian/custom-x11-session.desktop into /etc/X11/sessions. gdm3 installs that file into /usr/share/doc/gdm3/examples for sysadmin convenience, but intentionally does not install it in the search path. Rationale: people who want to piece together their own desktop environment programmatically are welcome to do so, but that setup inherently requires configuration. Trying to list ~/.xsession in UIs is confusing to novice users, because the display manager cannot know what it will result in, so its user-facing name has to be either very technical ("Xsession") or hopelessly vague (older gdm's "System X11 Default") or both; so we should not inflict that UX on users who have not done the necessary setup to get it to behave as they want it to. For a setup that already requires configuration before it will be usable, adding one more piece of configuration doesn't seem like an undue burden. gdm3 (>= bookworm), sddm, slim and lxdm already follow what I'm advocating here. smcv