Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Proposal: Add Read Only Access to UDev To This Flatpak's Default Permissions #214

Open
mindinsomnia opened this issue Oct 20, 2022 · 7 comments

Comments

@mindinsomnia
Copy link

mindinsomnia commented Oct 20, 2022

Hello,

If one uses Microsoft Edge on the Steam Deck right now and wishes to setup Xbox Game Pass on this gaming device, they will be lead to this instruction page on Microsoft's website:

https://support.microsoft.com/en-us/topic/xbox-cloud-gaming-in-microsoft-edge-with-steam-deck-43dd011b-0ce8-4810-8302-965be6d53296

Step 8 and 9 of the process requires the user to open a terminal window to enter a command to give Microsoft Edge access to UDev to receive controller input.

console

I understand the author of this Flatpak has described this as a workaround on the README.md for this repository, but as far as workarounds go, this one seems innocent enough to include it by default.

Having this available out of the box would reduce the steps in this process for new users.

For the Steam Deck particularly this would be a very nice UX improvement, as the Steam Deck's target demographic is not experienced Linux users, in many cases it includes people who have come straight from console gaming. Even if it's just 2 steps, helping those users avoid having to open a terminal to run a command would be nice.

As far as I can tell, this would only require only a one line change to com.microsoft.Edge.yaml, inserted after line 35:

- --filesystem=/run/udev:ro

If the maintainer of this Flatpak agrees I would be happy to make a push request myself to do the file modification.

@TheEvilSkeleton
Copy link
Collaborator

@rany2 @refi64 should we apply this change to all Chromium based browsers? I don't want to have this applied on one browser if others don't follow.

@refi64
Copy link
Contributor

refi64 commented Oct 28, 2022

My main hesitation here is that systemd's udev ABI is unstable and is prone to change at any time, and it's not really clear how unpleasant the UX from unexpected changes would be (e.g. does it just not work or straight-up).

I guess the Steam Deck could maybe get away with this in a bit more of a general case because the entire OS environment is controlled, but that doesn't exactly apply outside of there.

@TheEvilSkeleton
Copy link
Collaborator

and it's not really clear how unpleasant the UX from unexpected changes would be (e.g. does it just not work or straight-up).

To be fair it would be equally as unexpected if the user manually allows /run/udev:ro and this permission stops working eventually. There's no portal for this AFAIK, so IMO we should allow it by default and remove it once the necessary portal exists and gets on its way to distro repos. Whether Microsoft wants to support the portal (once available) or not is up to them.

@mindinsomnia
Copy link
Author

I think that's a fair compromise TheEvilSkeleton. Without a portal there is no way to do this 'properly' right now and even if the ABI is unstable, people are using it right now already, since there's no alternative to it. As TheEvilSkeleton said, could remove this hack and use the portal instead once one is available.

@TheEvilSkeleton
Copy link
Collaborator

TheEvilSkeleton commented Oct 30, 2022

@refi64 thoughts? I'm fine with enabling this permission, but I'd like to know if we can do the same for Brave, Chrome and other Chromium based browsers for consistency.

@tarmo888
Copy link

This is not just for Chromium based browsers, this makes the gamepad working on other flatpak apps (Firefox too). Can be tested with this website https://gamepad-tester.com/

@toojays
Copy link

toojays commented Jul 16, 2024

This also lets WebMIDI work on Steam Deck.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants