Closed Bug 1717149 Opened 4 years ago Closed 11 months ago

Can't add credit card in Linux without Gnome Keyring

Categories

(Core :: Widget: Gtk, defect)

Firefox 89
defect

Tracking

()

RESOLVED FIXED

People

(Reporter: bugs, Unassigned)

References

Details

User Agent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:89.0) Gecko/20100101 Firefox/89.0

Steps to reproduce:

1.) Click on "Saved Credit Cards..." button in Firefox's settings.
2.) Click "Add..." to add a credit card.
3.) Input credit card information.
4.) Click "Save".

Actual results:

Nothing.

Expected results:

Credit card information is saved.

Note that there was no feedback: the Save button wasn't greyed out, so I had no idea what was wrong. (Also, my previously stored credit cards were there and could be summoned to fill in website forms, but clicking those didn't cause the information to be input.)

Eventually I found a Reddit thread noting that Gnome Keyring needs to be installed for the function to work. Installing it fixed the problem, though it seemed useless since I'm using KDE and didn't save a password in Gnome Keyring once I installed it anyways.

I'm not a designer, but at a minimum, some feedback should be given to the user telling them why the card information cannot be saved. While I get not wanting to support other keyring-like apps (e.g., KDE Wallet), forcing the use of Gnome Keyring doesn't actually help secure anything since the user can just ignore the password requirement. A simple warning would probably work.

The Bugbug bot thinks this bug should belong to the 'Core::Widget: Gtk' component, and is moving the bug to that component. Please revert this change in case you think the bot is wrong.

Component: Untriaged → Widget: Gtk
Product: Firefox → Core

I can confirm this is still a problem in 94.0.2.

Could we prioritize at least having this emit an error when you try to save a CC and Gnome Keyring is not installed? This is fairly awful.

Ben and Julien, isn't this something you ran into when updating / deploying new test workers ? Sounds like we would want to indeed at least report a correct error somewhere.

Flags: needinfo?(jcristau)
Flags: needinfo?(bchatterton)

I did have to write some code to unlock the keyring, but that was on an image/worker where keyring was installed and in the way:

#!/bin/bash

killall -q -u "$(whoami)" gnome-keyring-daemon
printf "<arbitrary_password>" | gnome-keyring-daemon --daemonize --unlock
Flags: needinfo?(bchatterton)

We're unlocking the gnome keyring for tests yes, but then we're testing in gnome not in kde.

Looking around, it seems kwallet added support for the secrets dbus api in 5.97 (https://invent.kde.org/frameworks/kwallet/-/merge_requests/11) a couple of years ago, so things might have changed since comment 2?

Flags: needinfo?(jcristau)

(In reply to Julien Cristau [:jcristau] from comment #6)

We're unlocking the gnome keyring for tests yes, but then we're testing in gnome not in kde.

Looking around, it seems kwallet added support for the secrets dbus api in 5.97 (https://invent.kde.org/frameworks/kwallet/-/merge_requests/11) a couple of years ago, so things might have changed since comment 2?

Looks like we're using the DBus via libsecret via https://searchfox.org/mozilla-central/rev/be3db2aef8d3916c891527794a2d5e2f2dc9fab1/security/manager/ssl/LibSecret.cpp#116-120 from OSKeyStore https://searchfox.org/mozilla-central/rev/be3db2aef8d3916c891527794a2d5e2f2dc9fab1/security/manager/ssl/OSKeyStore.cpp#20 via e.g., https://searchfox.org/mozilla-central/rev/be3db2aef8d3916c891527794a2d5e2f2dc9fab1/toolkit/components/formautofill/FormAutofillStorageBase.sys.mjs#1862-1864n, cf its API at https://gnome.pages.gitlab.gnome.org/libsecret/func.password_store_sync.html

We're not using anything specific to GNOME Keyring here and KWallet now has support for the standard Freedesktop API for years.

Status: UNCONFIRMED → RESOLVED
Closed: 11 months ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.