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

[Feature Request]: linux: switch to xdg-desktop-portal #1374

Open
2 of 7 tasks
emersion opened this issue Nov 12, 2023 · 4 comments
Open
2 of 7 tasks

[Feature Request]: linux: switch to xdg-desktop-portal #1374

emersion opened this issue Nov 12, 2023 · 4 comments
Assignees
Labels
P3 Issues that we currently consider unimportant. platform: linux Issue is related to the Linux platform. type: enhancement New feature or request

Comments

@emersion
Copy link
Contributor

Is there already an issue requesting this feature?

Please select affected platform(s)

  • Android
  • iOS
  • Linux
  • macOS
  • Web
  • Windows

Use case

Right now the Linux plugin uses either the GNOME-specific API, either Geoclue directly. However these interfaces shouldn't be used inside of a sandbox like Flatpak.

Instead, org.freedesktop.portal.Location should be used. It works both outside and inside sandboxes.

Proposal

Use org.freedesktop.portal.Location instead of other APIs.

Specific requirements or considerations

No response

Additional information or context

No response

@TimHoogstrate TimHoogstrate self-assigned this Nov 13, 2023
@TimHoogstrate
Copy link
Contributor

Dear @emersion,

Thanks for filing the feature request. Can you elaborate a bit on the subject? Why shouldn't these interfaces be used inside a sandbox? And what would be the advantages of using the free desktop.portal.Location for the user/developer? Can you point us to some relevant documentation?

Kind regards,

@TimHoogstrate TimHoogstrate added status: needs more info We need more information before we can continue work on this issue. platform: linux Issue is related to the Linux platform. labels Nov 13, 2023
@emersion
Copy link
Contributor Author

Why shouldn't these interfaces be used inside a sandbox?

The sandbox prevents the app from querying regular D-Bus services. Only a few standard D-Bus interfaces are available. See https://docs.flatpak.org/en/latest/basic-concepts.html.

what would be the advantages of using the free desktop.portal.Location for the user/developer?

For the user, increased control and security: the portal will display an authorization UI that the user will need to accept, just like on Android/iOS. The user can revoke the permission if they want to.

For the developer, being able to correctly work in a sandbox like Flatpak.

@github-actions github-actions bot removed the status: needs more info We need more information before we can continue work on this issue. label Nov 13, 2023
@TimHoogstrate
Copy link
Contributor

Dear @emersion,

Thanks for your input. It looks like something interesting to investigate. Unfortunately, currently the team lacks the relevant knowledge to the subject. We are not sure what impact it has on existing linux package. You could help us a lot us a lot if you could propose or file a PR containing the changes in a new package next to the "old" package.

Kind regards,

@TimHoogstrate TimHoogstrate added status: needs more info We need more information before we can continue work on this issue. P3 Issues that we currently consider unimportant. labels Nov 13, 2023
@emersion
Copy link
Contributor Author

Got it. I don't know when I'll have time to work on this, but will keep it in my TODO list.

@github-actions github-actions bot removed the status: needs more info We need more information before we can continue work on this issue. label Nov 13, 2023
@JeroenWeener JeroenWeener added the type: enhancement New feature or request label Nov 16, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
P3 Issues that we currently consider unimportant. platform: linux Issue is related to the Linux platform. type: enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

3 participants