Arch Linux

Please read this before reporting a bug:
https://wiki.archlinux.org/title/Bug_reporting_guidelines

Do NOT report bugs when a package is just outdated, or it is in the AUR. Use the 'flag out of date' link on the package page, or the Mailing List.

REPEAT: Do NOT report bugs for outdated packages!
Tasklist

FS#8910 - Openbox does not start - "Unable to load a theme"

Attached to Project: Arch Linux
Opened by Michael (SiD) - Wednesday, 12 December 2007, 18:32 GMT
Last edited by Roman Kyrylych (Romashka) - Wednesday, 09 January 2008, 11:24 GMT
Task Type Bug Report
Category Packages: Extra
Status Closed
Assigned To Tobias Kieslich (tobias)
Architecture i686
Severity Medium
Priority Normal
Reported Version 2007.08-2
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No

Details

Description:
I'm not shure if this is an Openbox issue, but I get the error when I try to start it.

What I did:

1.
# pacman -Sy openbox

2.
$ mkdir -p ~/.config/openbox/
$ cp /etc/xdg/openbox/rc.xml ~/.config/openbox/rc.xml
$ cp /etc/xdg/openbox/menu.xml ~/.config/openbox/menu.xml

3.
edit ~/.xinitrc to

#!bin/sh
exec openbox

4.
$ startx

Openbox does not start and I get these errors:

ObRender-Message: Unable to load the theme 'Clearlooks'
ObRender-Message: Falling back to the default theme 'Clearlooks'
ObRender-Message: Unable to load the theme 'Clearlooks'
Openbox-Message: Unable to load a theme


I found out that /usr/share is missing in the $XDG_DATA_DIRS variable.

So, adding /usr/share to $XDG_DATA_DIRS solve the problem.

I do that in ~/.bashrc, e.g., by adding a line like this.

export XDG_DATA_DIRS=$XDG_DATA_DIRS:/usr/share


Steps to reproduce:
remove the export XDG_DATA_DIRS line from ~/.bashrc and run "startx"
This task depends upon

Closed by  Roman Kyrylych (Romashka)
Wednesday, 09 January 2008, 11:24 GMT
Reason for closing:  Not a bug
Comment by Tobias Kieslich (tobias) - Thursday, 13 December 2007, 18:01 GMT
CLearlooks is part of the gtk-engines and while openbox is not dependent on gtk, it is actully setting gtk themes for applications used within openbox. try installing gtk-engines please.
Comment by Michael (SiD) - Thursday, 13 December 2007, 20:21 GMT
gtk-engines was installed.
I reinstalled it but without adding "/usr/share" to $XDG_DATA_DIRS I get the "unable toload a theme" error!
Comment by Michael (SiD) - Thursday, 13 December 2007, 20:25 GMT
I think it's an Openbox theme.

It's stored in "/usr/share/themes/Clearlooks/openbox-3/"

And without "usr/share" in the $XDG_DATA_DIRS variable openbox does not find it.
Comment by Fredrik (vEX) - Saturday, 15 December 2007, 13:14 GMT
Snippet from /etc/profile.d/xorg.sh:

if [ -z $XDG_DATA_DIRS ]; then
export XDG_DATA_DIRS=/usr/share:/usr/local/share
else
export XDG_DATA_DIRS=/usr/share:/usr/local/share:$XDG_DATA_DIRS
fi

Though I don't think any shell does source /etc/profile (which sources all files in /etc/profile.d) by default. I have added it to my .bashrc like so:

if [ -f /etc/profile ]; then
. /etc/profile
fi

Perhaps add a notice to the Openbox install script about sourcing either /etc/profile or just setting the path manually?
Comment by Tobias Kieslich (tobias) - Monday, 07 January 2008, 23:44 GMT
I'm confused because that setinng should be done out of the box. So the reporters installation is broken.
Comment by Michael (SiD) - Tuesday, 08 January 2008, 07:39 GMT
I used KDE before. And I didn't remove it.
If I don't add /usr/share to $XDG_DATA_DIRS its value is /opt/kde/share.
Is it possible that KDE overwrites the default value of $XDG_DATA_DIRS during installation?
Comment by Tobias Kieslich (tobias) - Wednesday, 09 January 2008, 07:20 GMT
okay, the issue here is that XDG_DATA_DIRS does not get set and the issue is not openbox specific. xfce4 eg would give you trouble too. the question is, why is it not set on your system?

If you use bash, the layout in /etc/profile and etc/profile.d/xorg.sh takes care of the issue. If it does not work on your box, something has tempered with your files. Did you have trouble with http://www.archlinux.org/news/369/ ? maybe

or do you use a different shell?

PS, yes KDE takes care of that automatically
Comment by Michael (SiD) - Wednesday, 09 January 2008, 10:50 GMT
I use bash. I don't had the problem mentioned in your news link.
But the /etc/profile.d/xorg.sh is missing on my system. Which package contains that file?
Comment by Michael (SiD) - Wednesday, 09 January 2008, 11:17 GMT
Ok, I found out that the missing file is part of the libx11 package.
On my System libx11 was replaced with libx11-xcb.

pacman -Rd libx11-xcb
pacman -Sy libx11

solved the problem.

ps.
Some time ago I tried compiz.
I don't remember but I think I installed libx11-xcb from the compiz-fusion repo cause it was needed by compiz.
Comment by Roman Kyrylych (Romashka) - Wednesday, 09 January 2008, 11:23 GMT
back in time when libxcb was first released by FDo some software wanted libx11 compiled with libxcb while others don't - thus libx11-xcb existed
recent versions of official libx11 package are built with libxcb anyway, so that libx11-libxcb package must be pretty old.

Loading...