should call xrdb with -nocpp

Bug #20507 reported by Daniel Stone
12
Affects Status Importance Assigned to Milestone
gnome-session
Fix Released
Wishlist
gnome-session (Ubuntu)
Fix Released
Medium
Sebastien Bacher

Bug Description

As documented above, GNOME should be calling xrdb with -nocpp to dramatically
increase startup time. I'll be doing this with all the xinit scripts tomorrow,
but gnome-session needs to be changed (as well as gnome-settings-daemon and gdm,
AFAICT) to call it with -nocpp also.

I think we can count the number of people with C preprocessor directives in
their resource files on one hand.

http://mail.gnome.org/archives/desktop-devel-list/2005-August/msg00245.html: http://mail.gnome.org/archives/desktop-devel-list/2005-August/msg00245.html

Revision history for this message
Rui Matos (tiagomatos) wrote :

This seems to have been added to /etc/X11/Xsession.d/30xorg-common_xresources
but that file contains a bug:

on lines 16 and 23 $(XRDBOPTS) should actually be ${XRDBOPTS}

Revision history for this message
Daniel Stone (daniels) wrote :

the issue described in comment #1 is fixed now.

Revision history for this message
Sebastien Bacher (seb128) wrote :

Daniel, gnome-session code has no mention of xrdb. It starts
gnome-settings-daemon which starts xrdb.

These upload fixes the issue:

 control-center (1:2.12.0-0ubuntu2) breezy; urgency=low
 .
   * debian/patches/03_xrdb_cpp.patch:
     - call xrdb with the "nocpp" option (Ubuntu: #14268).

 gdm (2.8.0.4-0ubuntu2) breezy; urgency=low
 .
   * debian/patches/01_xrdb_nocpp.patch:
     - call xrdb with the "nocpp" option (Ubuntu: #14268).

Revision history for this message
Daniel Stone (daniels) wrote :

thanks sebaroni

Revision history for this message
Klaus Stengel (proger2) wrote :

(In reply to comment #0)
> As documented above, GNOME should be calling xrdb with -nocpp to dramatically
> increase startup time. I'll be doing this with all the xinit scripts tomorrow,
> but gnome-session needs to be changed (as well as gnome-settings-daemon and gdm,
> AFAICT) to call it with -nocpp also.
>
> I think we can count the number of people with C preprocessor directives in
> their resource files on one hand.

Unfortunately no. The capplets-data package installs some resource files in
/etc/gnome/config which rely on the C preprocessor to expand some variables like
BACKGROUND, FOREGROUNT, FONT, etc. to their actual values. Those seem to be
merged automatically somewhere in the GNOME startup procedure by
gnome-settings-daemon. Removing the cpp causes many essential settings in the
xrdb to have an invalid value, so most programs that rely on those settings
malfunction (like xterm, only running with black text on black background, or
urxvt not starting at all). See also the forum thread from
http://www.ubuntuforums.org/showthread.php?t=64477 for some more examples.

Revision history for this message
furukama (eigenarbeit) wrote :
Revision history for this message
Sebastien Bacher (seb128) wrote :

This is already fixed: #15168

Changed in gnome-session:
status: Unknown → New
Changed in gnome-session:
importance: Unknown → Wishlist
status: New → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.