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

(linux) Please provide static desktop files for OneClick URL scheme handlers #36

Open
Smona opened this issue Oct 4, 2024 · 0 comments

Comments

@Smona
Copy link

Smona commented Oct 4, 2024

On NixOS, OneClick installs do not work, because MimeType handlers are not allowed from ~/.local/share/applications, which is the LocalApplicationData directory there. In order for the scheme handlers to be registered, they have to be put into a particular place when the package is being built, and runtime modifications to the desktop files are not possible afaik. This restriction is beneficial to NixOS users, as it makes the behavior of their OS more predictable & reproducible.

I've been able to fix OneClick installs in NixOS/nixpkgs#345883 by recreating the desktop files normally created at runtime. However, this introduces a chance that the desktop files there will become out of sync if you make any changes to them here or add new protocols. Plus, it seems like if I toggle the options to enable OneClick installs in the app, the generated desktop file actually re-breaks OneClick installs.

Would it be possible to include static versions of these desktop files for linux, and stop generating them at runtime? This would give packagers the ability to handle the files differently between different linux distributions, and would reduce size and complexity of the binary itself.

As for the options to enable the oneclick installs, they could either:

  • be removed, since modern browsers generally require users to opt-in to allowing a site to open links with an x-scheme-handler anyways, or
  • change the way the --install flag is handled, aborting the OneClick install immediately if disabled.

Big thanks for writing a mod manager that works on Linux ❤️

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

1 participant