4

I'm using Sabayon GNU/Linux with Mate-Desktop. I have my computer set up for multiple users so my girlfriend and the kids can use it too.

 ~ $ uname -a
Linux 3.9.0-sabayon #1 SMP Thu Jun 27 07:53:45 UTC 2013 x86_64 Intel(R) Core(TM) i7-3930K CPU @ 3.20GHz GenuineIntel GNU/Linux
 ~ $ equo search mate-desktop
>>      @@ Package: mate-base/mate-desktop-1.6.0 branch: 5, [sabayonlinux.org] 
>>         Available:     version: 1.6.0 ~ tag: NoTag ~ revision: 0
>>         Installed:     version: 1.6.0 ~ tag: NoTag ~ revision: 0

Each time i switch user, logging out and logging in as another user I end up in a completly messed up desktop environment.

  • The mate-panels are missing.
  • Errors pop up that no system tray is available.
  • Tens of caja instances pop up.

The only way to fix this is to switch to TTY and reboot the machine. After reboot everything works as desired. But switching users does not work at all.

In addition, both mate-panel and mate-settings-d use around 100% CPU.

  PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND
 8691 afri      20   0 6735900 5.384g  21176 R 100.3 17.2  70:03.75 mate-settings-d
 8716 afri      20   0 1789004 1.070g  21744 R  96.4  3.4  64:12.03 mate-panel

Someone on IRC of #mate told me this could be a dconf error. The .xsession-error log says dconf has some issues with permissions:

(mate-panel:8716): dconf-CRITICAL **: unable to create directory '/run/user/1001/dconf': Permission denied.  dconf will not work properly.

Checking out the directory /run/user/1001/dconf tells it's owned by another user. It's a mess.

How to avoid this permission conflict for the dconf directory?


Update

Finally, this thread suggests to play around with $XDG_RUNTIME_DIR:

 $ echo $XDG_RUNTIME_DIR
/run/user/1001

Now, the issue is obvious: all users are using the same directory for dconf which results in the described permission issues.

So I tried to adjust the $XDG_RUNTIME_DIR. I added the following line to my ~/.bash_profile settings:

export XDG_RUNTIME_DIR=/run/user/$(id -u username)

Now, dconf should be able to access the custom directory. But this still does not work. I'm still getting the same error as above:

(mate-panel:8716): dconf-CRITICAL **: unable to create directory '/run/user/1001/dconf': Permission denied.  dconf will not work properly.

But I double-checked the settings of the directory:

  1. it's existing.
  2. permissions are set correctly.
  3. environment variables are set correctly.

What else can I try to fix this? I'm really lost.

2 Answers 2

4

This happened to me too. I checked the .xsession-errors log on my home and it pointed to a permissions issue on $HOME/.cache/dconf/user, which I changed to be owned by my user and that fixed the problem.

1
-1

I fixed this by removing dconf-editor

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .