FFXIVQuickLauncher icon indicating copy to clipboard operation
FFXIVQuickLauncher copied to clipboard

[Linux] Flatpak version of XIVLauncher Core complains about missing secret provider

Open Maia-Everett opened this issue 2 years ago • 5 comments

Update disclaimer

  • [X] Yes, I have checked and my issue is not related to FFXIV updating and plugins not working correctly.

What did you do?

OS: Ubuntu 22.04

Desktop environment: KDE Plasma 5

Upon launching the Flatpak version of XIVLauncher Core, I see this message in red:

Because of this, my password is not saved.

libsecret and gnome-keyring are installed, and a version of XIVLauncher Core built from source and launched manually works correctly.

After some investigation, it seems like an issue with libsecret in Flatpak sandboxes specifically, and the workaround is to either downgrade libsecret to version 19.1 or set -Dgcrypt=false.

https://gitlab.gnome.org/GNOME/libsecret/-/issues/49

Platform

Linux (native)

Wine/Proton runner version

No response

Relevant log output

No response

Maia-Everett avatar Jun 12 '22 07:06 Maia-Everett

For readers who may be arriving from search engines: as noted in the Steam Deck FAQ, you can set the environment variable XL_SECRET_PROVIDER to FILE to persist your password to disk instead of relying on libsecret. Note, though, that the password will be saved in a file as plaintext, which is insecure.

To launch the app with the environment variable temporarily set, run:

flatpak run --branch=stable --arch=x86_64 --env=XL_SECRET_PROVIDER=FILE --command=xivlauncher dev.goats.xivlauncher

Or, to configure the app so that this environment variable will always be set whenever it's opened by your user:

flatpak override --user --env=XL_SECRET_PROVIDER=FILE dev.goats.xivlauncher

And, if you want to undo that configuration:

flatpak override --user --unset-env=XL_SECRET_PROVIDER dev.goats.xivlauncher

suchipi avatar Aug 31 '22 07:08 suchipi

If anyone else is having an issue getting the username/password textboxes to focus on Steam Deck, with XL_SECRET_PROVIDER=FILE the username/password is stored in ~/.xlcore/secrets.json with the format:

{
    "username": "password"
}

I enabled automatic login, closed the app and created secrets.json and the game starts without issues now! The relevant code is here: https://github.com/goatcorp/FFXIVQuickLauncher/blob/9a93fe405a5be906e006c8ebff9bd71fd0b96c21/src/XIVLauncher.Core/Program.cs#L293

mrexodia avatar Oct 17 '22 17:10 mrexodia

It would be excellent to see this fixed. The workaround provided is not something I would be comfortable doing on my machine.

noelmiller avatar Sep 29 '23 20:09 noelmiller

Would love to see this fixed as well. Auto-sign in would be a blessing

xzi avatar Feb 11 '24 22:02 xzi

Fixed by https://github.com/flathub/dev.goats.xivlauncher/pull/41

xzi avatar Feb 11 '24 23:02 xzi