FS#79720 - [cinnamon] xdg-desktop-portal-xapp dependency

Attached to Project: Arch Linux
Opened by Thomas Lübking (luebking) - Sunday, 17 September 2023, 14:30 GMT
Last edited by Buggy McBugFace (bugbot) - Saturday, 25 November 2023, 20:27 GMT
Task Type General Gripe
Category Packages: Extra
Status Closed
Assigned To Bruno Pagani (ArchangeGabriel)
Architecture All
Severity Low
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No

Details

More a heads-up than an immediate bug.

https://archlinux.org/packages/extra/x86_64/cinnamon/ hard-depends on https://archlinux.org/packages/extra/x86_64/xdg-desktop-portal-xapp/ after https://bugs.archlinux.org/task/78735 was handled and I suspect that to be a mistake.

1. I'm not sure that anything in cinnamon actually requires xdg-portal at all, xdg-desktop-portal-xapp is the cinnamon-specific xdg-desktop-portal-impl

2. I very much doubt that cinnamon depends on xdg-desktop-portal-xapp specifically, that's antithetical to the entire xdg-desktop-portal concept.

3. The referenced https://github.com/linuxmint/cinnamon/blob/5.8.0/debian/control#L113 is maybe not unbiased, https://packages.debian.org/experimental/cinnamon recommends the package (what makes sense) and does not depend on xdg-desktop-portal-impl at all.

4. The recent¹ and possibly ongoing² xdg-desktop-portal-gnome situation has illustrated that a single bogus xdg-desktop-portal-impl can throw a wrench into the system.

Status quo, should xdg-desktop-portal-xapp pull a gnome, the cinnamon users will face three undesirable options:
1. wait half a minute for every firefox (as most prominent client) start
2. replace the desktop environment / remove cinnamon
3. manually override the package dependencies

The suggestion would be to turn xdg-desktop-portal-xapp into an optional dependency of cinnamon (for cinnamon-flavored xdg-desktop-portal support), afaict the closest to the debian condition.



[1] https://bbs.archlinux.org/viewtopic.php?id=285590 (there're more threads, but that's the meetoo one)
[2] https://bbs.archlinux.org/viewtopic.php?pid=2119728#p2119728
This task depends upon

Closed by  Buggy McBugFace (bugbot)
Saturday, 25 November 2023, 20:27 GMT
Reason for closing:  Moved
Additional comments about closing:  https://gitlab.archlinux.org/archlinux/p ackaging/packages/cinnamon/issues/1
Comment by Toolybird (Toolybird) - Sunday, 17 September 2023, 22:30 GMT
> More a heads-up than an immediate bug

So a general gripe? Is the unwanted dep causing actual problems for cinnamon users in the wild?

> should xdg-desktop-portal-xapp pull a gnome

I have no idea what this means. The main problem I have seen is users blindly pressing enter when presented with the following because pacman simply offers the choice in alphabetical order and the user happens to be *not* running Gnome, and of course that's when the 30 second delays kick in:

$ sudo pacman -S xdg-desktop-portal
resolving dependencies...
:: There are 7 providers available for xdg-desktop-portal-impl:
:: Repository extra
1) xdg-desktop-portal-gnome 2) xdg-desktop-portal-gtk 3) xdg-desktop-portal-hyprland 4) xdg-desktop-portal-kde 5) xdg-desktop-portal-lxqt
6) xdg-desktop-portal-wlr 7) xdg-desktop-portal-xapp

Enter a number (default=1):
Comment by Thomas Lübking (luebking) - Monday, 18 September 2023, 06:39 GMT
Not a gripe, as mentioned a "heads up" since the present condition can needlessly confront regular users with a non-trivial problem.

xdg-desktop-portal-gnome broke and potentially still breaks xdg-desktop-portal-impl consumers outside of gnome sessions.
Next to mindlessly going w/ the first choice this might also because multiple environments are in use (it's still a multi-user system)


The report is however *not* about xdg-desktop-portal-gnome but

*** about xdg-desktop-portal-xapp being a non-optional dependency of cinnamon ***

ie. if cinnamon gets installed, so is xdg-desktop-portal-xapp. Without any user selection.

As pointed out, this hard dependency doesn't factually exist - so technically this is a packaging bug that has the potential to cause actual, non-trivially solvable problems besides merely wasting some disk space.


xdg-desktop-portal-gnome *only* served to demonstrate that those problems aren't just of theoretical "yeah, everything can have a bug" nature.
The purpose of the service - xdg-desktop-portal-gnome is the xdg-desktop-portal-impl for gnome, why would it care about other environments - makes it prone to almost naturally, but falsely, assume the specific context provision.

However, xdg-desktop-portal-gnome is, like every other xdg-desktop-portal-impl but xdg-desktop-portal-xapp fully optional and can easily be removed or substituted by eg. xdg-desktop-portal-gtk to avoid this kind of conflict, making the above a non-issue for it.
Comment by Antonio Rojas (arojas) - Monday, 18 September 2023, 06:46 GMT
The issue you are describing is a bug. Bugs need to be fixed in the component that causes them, not worked around or avoided in other parts of the system. xdg-desktop-portal now has a mechanism to only enable a particular implementation in certain desktops (which the KDE version is already using), all frontends should adhere to that.
Comment by Thomas Lübking (luebking) - Monday, 18 September 2023, 07:46 GMT
I'll stress once more that the xdg-desktop-portal-gnome situation is *not* the focus of this report.
xdg-desktop-portal-xapp is set as hard dependency of cinnamon for no actual reason, that's a packaging bug.

Everything else is just describing why I didn't ignore that as "I absolutely don't care that cinnamon got some bloat"

Loading...