You are not logged in.

#1 2012-03-04 18:28:56

lidavidm
Member
Registered: 2012-03-04
Posts: 4

[SOLVED] LightDM broke GTK theme/settings, existing fixes don't work

Hello, I recently switched to Arch Linux from Ubuntu and am trying to get LightDM to work. I successfully installed it from the AUR, however, after doing so, my GTK theme broke and none of the settings in Gnome Tweak Tool (with the exception of Gnome Shell settings) are applied. I've been Googling for a while now, and found these threads:

https://bbs.archlinux.org/viewtopic.php?id=134019
https://bbs.archlinux.org/viewtopic.php … 45#p982145

I created a session wrapper as described at those links, but it leads to no change. For reference, my problems are:

  • No wallpaper

  • GTK theme not applied/partially applied, but looks ugly (as if I were the root user, which I am not)

  • Icon theme not respected

  • Preferences (e.g. keyboard settings) set in Gnome Control Center and/or Gnome Tweak Tool not respected

Packages I used:

(The last two were needed to get the greeter to build, but they weren't listed in the dependencies)

For reference, this is what Evince looks like: j7ajxl.jpg

Is there any other information needed?

Last edited by lidavidm (2012-03-07 00:25:32)

Offline

#2 2012-03-04 22:18:11

Wey
Member
Registered: 2011-04-22
Posts: 217

Re: [SOLVED] LightDM broke GTK theme/settings, existing fixes don't work

Hello, since you linked to my post, i looked into it again. lightdm is actively developed, so I'm not sure if what i've said is still valid. From what you are describing, i would guess the gnome-session service are not launching as expected (e. g. gnome-settings-daemon is missing, like when just launching xinit /usr/bin/gnome-shell instead of xinit /usr/bin/gnome-session). To verify that, could you paste the output of something like

ps fax

while running gnome?

Also, could you show the session wrapper you created, ls -la on the said session wrapper to check permissions, your /etc/lightdm/lightdm.conf and the content of /var/log/lightdm/lightdm.log?

Offline

#3 2012-03-05 01:35:52

lidavidm
Member
Registered: 2012-03-04
Posts: 4

Re: [SOLVED] LightDM broke GTK theme/settings, existing fixes don't work

Thanks for helping!

Here is the information requested:

ps fax: http://pastebin.com/9GGMaSu7

There is one instance of gnome-settings-daemon, shouldn't there be two?

/var/log/lightdm/lightdm.log: http://pastebin.com/rtkEcE89

My session wrapper:

#!/bin/sh
userresources=$HOME/.Xresources
usermodmap=$HOME/.Xmodmap
sysresources=/etc/X11/xinit/.Xresources
sysmodmap=/etc/X11/xinit/.Xmodmap
# merge in defaults and keymaps
if [ -f $sysresources ]; then
    xrdb -merge $sysresources
fi
if [ -f $sysmodmap ]; then
    xmodmap $sysmodmap
fi
if [ -f "$userresources" ]; then
    xrdb -merge "$userresources"
fi
if [ -f "$usermodmap" ]; then
    xmodmap "$usermodmap"
fi
# start some nice programs
if [ -d /etc/X11/xinit/xinitrc.d ] ; then
	for f in /etc/X11/xinit/xinitrc.d/* ; do
		[ -x "$f" ] && . "$f"
	done
	unset f
fi

[[ -f /etc/profile ]] && . /etc/profile

exec ck-launch-session gnome-session

And the permissions:

$ ls -la xinitrc
-rwxr-xr-x 1 root root 847 Mar  4 12:33 xinitrc

And lightdm.conf:

$ cat /etc/lightdm/lightdm.conf 
#
# General configuration
#
# start-default-seat = True to always start one seat if none are defined in the configuration
# greeter-user = User to run greeter as
# minimum-display-number = Minimum display number to use for X servers
# minimum-vt = First VT to run displays on
# user-authority-in-system-dir = True if session authority should be in the system location
# guest-account-script = Script to be run to setup guest account
# log-directory = Directory to log information to
# run-directory = Directory to put running state in
# cache-directory = Directory to cache to
# xsessions-directory = Directory to find X sessions
# xgreeters-directory = Directory to find X greeters
#
[LightDM]
#start-default-seat=true
#greeter-user=lightdm
#minimum-display-number=0
#minimum-vt=7
#user-authority-in-system-dir=false
#guest-account-script=guest-account
#log-directory=/var/log/lightdm
#run-directory=/var/run/lightdm
#cache-directory=/var/cache/lightdm
#xsessions-directory=/usr/share/xsessions
#xgreeters-directory=/usr/share/xgreeters

#
# Seat defaults
#
# xserver-command = X server command to run
# xserver-layout = Layout to pass to X server
# xserver-config = Config file to pass to X server
# xserver-allow-tcp = True if TCP/IP connections are allowed to this X server
# xdmcp-manager = XDMCP manager to connect to (implies xserver-allow-tcp=true)
# xdmcp-port = XDMCP UDP/IP port to communicate on
# xdmcp-key = Authentication key to use for XDM-AUTHENTICATION-1 (stored in keys.conf)
# greeter-session = Session to load for greeter
# greeter-hide-users = True to hide the user list
# user-session = Session to load for users
# allow-guest = True if guest login is allowed
# guest-session = Session to load for guests (overrides user-session)
# session-wrapper = Wrapper script to run session with
# display-setup-script = Script to run when starting a greeter session (runs as root)
# greeter-setup-script = Script to run when starting a greeter (runs as root)
# session-setup-script = Script to run when starting a user session (runs as root)
# session-cleanup-script = Script to run when quitting a user session (runs as root)
# autologin-guest = True to log in as guest by default
# autologin-user = User to log in with by default (overrides autologin-guest)
# autologin-user-timeout = Number of seconds to wait before loading default user
# autologin-session = Session to load for automatic login (overrides user-session)
# exit-on-failure = True if the daemon should exit if this seat fails
#
[SeatDefaults]
#xserver-command=X
#xserver-layout=
#xserver-config=
#xserver-allow-tcp=false
#xdmcp-manager=
#xdmcp-port=177
#xdmcp-key=
greeter-session=unity-greeter
#greeter-hide-users=false
#user-session=default
#allow-guest=true
#guest-session=UNIMPLEMENTED
session-wrapper=/etc/X11/xinit/xinitrc
#session-wrapper=lightdm-session
#display-setup-script=
#greeter-setup-script=
#session-setup-script=
#session-cleanup-script=
#autologin-guest=false
#autologin-user=
#autologin-user-timeout=0
#autologin-session=UNIMPLEMENTED
#exit-on-failure=false

#
# Seat configuration
#
# Each seat must start with "Seat:".
# Uses settings from [SeatDefaults], any of these can be overriden by setting them in this section.
#
#[Seat:0]

#
# XDMCP Server configuration
#
# enabled = True if XDMCP connections should be allowed
# port = UDP/IP port to listen for connections on
# key = Authentication key to use for XDM-AUTHENTICATION-1 or blank to not use authentication (stored in keys.conf)
#
# The authentication key is a 56 bit DES key specified in hex as 0xnnnnnnnnnnnnnn.  Alternatively
# it can be a word and the first 7 characters are used as the key.
#
[XDMCPServer]
#enabled=false
#port=177
#key=

#
# VNC Server configuration
#
# enabled = True if VNC connections should be allowed
# port = TCP/IP port to listen for connections on
#
[VNCServer]
#enabled=false
#port=5900
#width=1024
#height=768
#depth=8

Actually, I can definitely say that it is a problem with gnome-settings-daemon. Running this fixes the look-and-feel, though I still can't get the settings to apply:

$ sudo /usr/lib/gnome-settings-daemon/gnome-settings-daemon 

For some reason it isn't on the PATH. I tried the first two fixes listed at http://askubuntu.com/questions/21305/de … gets-theme, however, that causes GNOME to fail with an error (and X says that the service failed to register itself before the timeout). However, GNOME still ignores my icon theme, GTK theme, and wallpaper, among other settings, instead reverting to the default Adwaita (though it does respect my Metacity/Mutter theme).

Last edited by lidavidm (2012-03-05 02:00:47)

Offline

#4 2012-03-06 19:53:51

Wey
Member
Registered: 2011-04-22
Posts: 217

Re: [SOLVED] LightDM broke GTK theme/settings, existing fixes don't work

Unfortunatly I can't reproduce this problem here. I've read through the links you posted, and somewhere it was suggested it's in fact not a configuration issue, but a race condition in lightdm or g-s-d, so i would not be of much help then.

Though, I wonder what your exact setup is, since you said you are using lightdm-bzr with lightdm-unity-greeter, but the latter actually depends on lightdm-ubuntu.

For some reason it isn't on the PATH

That's alright I guess, it seems to be a recent trend to move binaries out of /usr/bin/ if they are not supposed to be launched interactively.

P. s.:
-To eliminate the simple causes, the Gnome Settings Daemon is enabled in the gnome-session-properties, right?
-On some of the launchpad bug report it was suggested this issue might be related to proprietary video drivers. Though it sounds unlikely, are you by any chance using the nvidia driver? Does the problem persist using the nouveau ones?

Last edited by Wey (2012-03-06 19:59:43)

Offline

#5 2012-03-06 23:50:24

lidavidm
Member
Registered: 2012-03-04
Posts: 4

Re: [SOLVED] LightDM broke GTK theme/settings, existing fixes don't work

Yes, the AskUbuntu topic was about a possible race condition - it doesn't help, unfortunately.

I modified the PKGBUILD so that lightdm-bzr and lightdm-unity-greeter would work together, I hope that didn't cause any problems...

GSD is enabled in gnome-session-properties, and I am using the open Radeon drivers, so I don't believe those are the causes. I removed LightDM and reinstalled Gnome, etc. to see if that would resolve the issue, but unfortunately, it still doesn't work...

Last edited by lidavidm (2012-03-07 00:03:18)

Offline

#6 2012-03-07 00:25:17

lidavidm
Member
Registered: 2012-03-04
Posts: 4

Re: [SOLVED] LightDM broke GTK theme/settings, existing fixes don't work

Actually, I solved it. I removed all of my config files in my home directory. Some setting messed up GNOME along the way...

Thanks for helping!

Offline

Board footer

Powered by FluxBB