owncloud / client

🖥️ Desktop Syncing Client for ownCloud
GNU General Public License v2.0
1.4k stars 667 forks source link

[Gnome] password is not saved, but gnome-keyring-daemon is started #3726

Open fhennig opened 9 years ago

fhennig commented 9 years ago

Like in issue #1590 I cannot get owncloud to work together with the gnome-keyring-daemon in version 2.0.0. Here is what I did:

$ eval $(gnome-keyring-daemon)
$ export SSH_AUTH_SOCK
$ export GPG_AGENT_INFO
$ owncloud --logwindow

The login box then shows Reading from keychain failed with error: 'No keychain service available'

After I enter my password the following line is logged:

09-02 10:35:00:987 17975 OCC::HttpCredentials::slotWriteJobDone: Error while writing password "Could not open wallet: org.freedesktop.DBus.Error.ServiceUnknown; The name org.kde.kwalletd was not provided by any .service files"

I find this suspicious, because I do not use the KWallet, I use the gnome-keyring.

I am using Arch Linux and all required packages should be installed:

pacman -Q owncloud-client qtkeychain-qt5 qt5-webkit gnome-keyring
owncloud-client 2.0.0-1
qtkeychain-qt5 0.5-1
qt5-webkit 5.5.0-2
gnome-keyring 3.16.0-1

I'm going to look into qtkeychain, maybe the problem can be found there.

edit: I found an issue for qtkeychain with similar symptoms to what I am experiencing and want to try to build the test-client for qtkeychain to see if I get the same problem with qtkeychain itself, which would mean that the problem is not with the owncloud client.

--- Want to back this issue? **[Post a bounty on it!](https://www.bountysource.com/issues/26382568-gnome-password-is-not-saved-but-gnome-keyring-daemon-is-started?utm_campaign=plugin&utm_content=tracker%2F216457&utm_medium=issues&utm_source=github)** We accept bounties via [Bountysource](https://www.bountysource.com/?utm_campaign=plugin&utm_content=tracker%2F216457&utm_medium=issues&utm_source=github).
frankosterfeld commented 9 years ago

Which desktop environment/window manager are you using?

frankosterfeld commented 9 years ago

In the referenced owncloud issue I read "I am using Linux Mint 16 with MATE desktop.". Is that still the case?

fhennig commented 9 years ago

The other issue was not created by me, I am using Arch Linux with i3wm.

smu commented 9 years ago

Same problem on arch linux with i3 as window manager.

ogoffart commented 9 years ago

Does it work if you set the environmaent varialbe XDG_CURRENT_DESKTOP=GNOME before running owncloud?

fhennig commented 9 years ago

I just upgraded to the latest version. Now the log always reads:

OCC::HttpCredentials::slotWriteJobDone: Error while writing password "Cancelled"

the XDG_CURRENT_DESKTOP variable does not affect this, but if I set it to GNOME the font becomes really small, so small that I cannot read the text on the buttons.

guruz commented 9 years ago

@greenkeeper And if you totally unset XDG_CURRENT_DESKTOP?

guruz commented 9 years ago

Possible upstream issue: https://github.com/frankosterfeld/qtkeychain/issues/55

fhennig commented 9 years ago

@guruz The variable has no effect on what is written in the log, I always get the message mentioned above.

n-schwellnus commented 9 years ago

I just solved an issue similar to yours on archlinux with awesome wm. Symptoms were the same, but the underlying issue was not being able to create new keyrings in gnome-keyring. Same error message from owncloud client. My gnome-keychain did not correctly interface with dbus and crash. More info here: https://bbs.archlinux.org/viewtopic.php?id=202754

Fix was adding

dbus-update-activation-environment --systemd DISPLAY

to ~/.xinitrc

PS. I also experienced the kdewallet error, it twas related to not having libgnome-keyring installed on my machine.

fhennig commented 9 years ago

Wow, thanks a lot! I can confirm that it works, at least for me.

For reference, the thread linked above says one should configure .xinitrc properly and refers to the arch wiki page.

I guess this can be closed now.

guruz commented 9 years ago

@greenkeeper Let's keep it open as "Known issue" for now so people find it easier

bx commented 8 years ago

I've been running into this problem as well (running lxdm/i3), even after following all the advice here. It turns out that the current head of qtkeychain does not support libsecret, (when I checked the client's logs I could see that owncloud wanted to access a non-existent kwallet, which lead me to investigate further.) My workaround was to build and install this patched version of gtkeychain at frankosterfeld/qtkeychain#62 .

tvannahl commented 7 years ago

Had the same problem under arch linux. Turns out that libgnome-keyring hasn't been installed despite the fact that the gnome-keyring has been running and qtkeychain was installed.

Maybe that helps somebody.

guruz commented 7 years ago

@tvannahl Maybe submit this info also upstream at Arch Linux? They could fix packages

pyrrhichios commented 7 years ago

@tvannahl thank you! That was bugging me so much. For the info of any future searchers, I'm actually running Solus rather than Arch, and this solution works for Solus too.

amilopowers commented 7 years ago

@tvannahl This helped me as well! I use Antergos (Arch Linux).

ernesst commented 6 years ago

I figured out that on ubuntu 16.04 + gnome-shell, on the start up there is /usr/bin/gnome-keyring-daemon --start --components=ssh.

I figure out that removing --start --components=ssh was allowing to save the password, visible in the seahorse app.

ndrwnaguib commented 6 years ago

@lowbosch Thank you so much. It works!

djibux commented 6 years ago

Installing libgnome-keyring0 worked for me on Debian. The package is not available in testing at the moment, but can be installed from unstable.