Keyring problems using MATE. Seahorse has a communication problem with gnome-keyring (Evolution and other applications does not save user passwords).

slackjp
  12 years ago
  7

Intro: I suffered this issue both in Linux LMDE and Mint 12.0. I migrated to Linux Mint 12.0 in three systems having the same problem when using/upgrading to Mate desktop. It happened in new installations of Mint 12.0.

Several programs are hard-coded to rely on gnome-keyring in place of mate-keyring, among them Evolution Suite. This is very annoying, as I need to retype every single passwords of several e-mail accounts every time I stop/restart the program without closing the login session. 

The origin of the problem of the gnome-keyring vs. mate-keyring affair is that Mate (in fact in the XDG configuration directory of freedesktop ) does not start gnome-keyring services in Mate).

[Solved] The solution is quite simple: you only need to add the word 'MATE' to several files in order to start those services in Mate. It requires text editing several files in the '/etc/xdg/autostart/' directory.

Step 1. Install or verify that you have the package Gnome-keyring installed and running

Open a terminal and type or copy the code:

$ dpkg -l | grep keyring

You can verify if gnome-keyring and mate-keying are both in the list

Now, verify which keyrings are running: you will see one or several lines.

$ ps ax | grep keyring

Step 2. Using  Synaptic (or any Mint Package Manager), install gnome-keyring. Beware that gnome-parameters-daemon will be activated as default and is not desirable in Mate. You should correct it in step 3


Step 3 Enable Gnome-Keyring secrets  and disable Gnome parameters daemon

Selecting Mint Menu | Control Panel |  Start Programs, enable/disable checkboxes to: disable mate-keyring secrets, enable Gnome Keyring secrets, disable Gnome paremeters daemon, and enable Mate parameters daemon.

[ X] Gnome keyring secrets

[  ] Mate Keyring secrets

[  ] Gnome parameters daemon

[ X] Mate parameters daemon


Step 4 Add the word Mate to the startup links of freedesktop

By doing the next modification selected gnome-keyrings will be started in Mate.

Open a terminal

 # Change to the directory where are the files are located 
cd /etc/xdg/autostart/

# There are several files in the directory to look at

ls -l

# But those needing modification can be seen with this command

grep OnlyShowIn *

You will see the list of gnome-keyring and mate-keyring related files 

In these files look for the lines starting with the statement OnlyShowIn that should include the word of the desktop that call them. MATE. As you can see many services are only started in Gnome and Unity not in Mate and this is the problem

pe. in gnome-keyring-secrets.desktop before modification is:
...

OnlyShowIn=GNOME;Unity;

...
 
It should be after modification : (very simple !: add 'MATE;')
...

OnlyShowIn=GNOME;Unity;MATE;

...
You may edit this file with any text editor (gedit). It requires 'sudo' rights

My working computer example (it will work for you) 

slackjp@dell /etc/xdg/autostart $ sudo gedit gnome-keyring-secrets.desktop

[Desktop Entry]
Type=Application
Name=Secret Storage Service
Comment=GNOME Keyring: Secret Service
Exec=/usr/bin/gnome-keyring-daemon --start --components=secrets
OnlyShowIn=GNOME;Unity;MATE;
X-GNOME-Autostart-Phase=Initialization
X-GNOME-AutoRestart=false
X-GNOME-Autostart-Notify=true
X-GNOME-Bugzilla-Bugzilla=GNOME
X-GNOME-Bugzilla-Product=gnome-keyring
X-GNOME-Bugzilla-Component=general
X-GNOME-Bugzilla-Version=3.2.2
NoDisplay=true
X-Ubuntu-Gettext-Domain=gnome-keyring
 

... and doing so to every gnome-keyring-*.desktop file (besides, you should enable/disable these additional services as Startup applications as required following step 3.

Step 5. Do a reboot and a new login; maybe a logout/login is enough (?).


Step 7 It should work ! 

Try to add a keyring to Seahorse, or try to use any program asking for pasword your gnome-keyring will be started or created. Keyrings are saved at logout (they stay in /temp between logins). After the next login the passwords stored in the keyring will not requested again.

Quick Troubleshouting

Verify as in step 1 the running services, and if they are enabled/disabled as in step 3, as required by your applications.
 

PS: 30+ hours along 5 months invested in this issue, googleing in english, french, german and spanish. I love linux but these issues should be easier to solve (read my other tutorials...).

References/Links:

The best reference (in spanish) should be acknowledged:

http://ubuntu-cosillas.blogspot.com.es/2012/03/mate-problemas-y-soluciones-varias.html

And this may help for WIFI/network keyring issues:

http://forums.mate-desktop.org/viewtopic.php?f=2&t=100

Comments
Salva 11 years ago

Didn't work for me.
It never ask for a password to unlock the keyring. I double checked the options (enable and disable gnome or mate settings). One thing: I don't use wifi but in previous versions of mint (mint 9), gnome keyring asked for a password the very first time I opened a program that needs a password (like filezilla).

With mint 13 it never happens.


mincevv 11 years ago

Just noted that Synaptic won't open from menu (it does from terminal). Thing is it don't ask for password on start any more. Solved by changing line in /usr/share/applications/synaptic.desktop:

From: Exec=synaptic-pkexec
To: Exec=gksudo synaptic

This was only trouble (so far) I had since installing gnome-keyring.


mincevv 11 years ago

Finally found this post - solved me problem I had with SmartGit/Hg under LMDE with Mate.


slackjp 12 years ago

In Mint 12.0 even using MATE, the settings should be as using Gnome

Incorrect terms:
[ ] Gnome parameters daemon
[X] Mate parameters daemon

Correction:
[X] GNOME Settings Daemon
[ ] MATE Settings Daemon

This will fix the issue.
I'm just installing Mint 13.0 Maya in my work computer. I will add further comments if necessary.


Orang_Gila 12 years ago

Debian Wheezy 64bit
I did not have gnome-settings-daemon installed. The following are the selections created in "Startup Applications"

Incorrect terms:
[ ] Gnome parameters daemon

[ X] Mate parameters daemon

Correction:
[ ] GNOME Settings Daemon
/usr/bin/gnome-settings-daemon

[ X] MATE Settings Daemon
/usr/bin/mate-settings-daemon

Additional Notes:
If you are using MATE-desktop 1.2 under Debian Wheezy there is NO reminder functionality with Evolution.