Bug 173602 - Location of "XScreenSaver" app-defaults file needs update for modular X
Summary: Location of "XScreenSaver" app-defaults file needs update for modular X
Keywords:
Status: CLOSED RAWHIDE
Alias: None
Product: Fedora
Classification: Fedora
Component: xscreensaver
Version: rawhide
Hardware: i386
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Ray Strode [halfline]
QA Contact:
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2005-11-18 15:57 UTC by Joachim Frieben
Modified: 2007-11-30 22:11 UTC (History)
2 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2006-01-23 16:35:07 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)
lock screen under modular X rpm (41.87 KB, image/jpeg)
2005-12-03 18:08 UTC, Mamoru TASAKA
no flags Details
lock screen with setting X environment (37.20 KB, image/jpeg)
2005-12-03 18:13 UTC, Mamoru TASAKA
no flags Details

Description Joachim Frieben 2005-11-18 15:57:22 UTC
From Bugzilla Helper:
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.12) Gecko/20051018 Epiphany/1.8.2

Description of problem:
The location of the "XScreenSaver" app-defaults file has not
yet been adapted to modular X. It can still be found in its
old place which was "/usr/X11R6/lib/X11/app-defaults".

Version-Release number of selected component (if applicable):
xscreensaver-base-4.22-19

How reproducible:
Always

Steps to Reproduce:
1. Check content of "/usr/X11R6/lib/X11/app-defaults".
 

Actual Results:  There is a a file! Its name: "XScreenSaver".

Expected Results:  File "XScreenSaver" should be in "/usr/lib/X11/app-defaults".

Additional info:

Comment 1 Mamoru TASAKA 2005-12-03 17:56:19 UTC
Actually, where must XScreenSaver.ad in xscreensaver-4.22/driver
directory of the source be installed?

When I switched to modular X by upgrading rpms repeatedly, xscreensaver came to
fail to load XScreensaver file in /usr/X11R6/lib/X11/app-defaults
directory (see the attached image files below). After some investigation, I 
found that XrmGetResource in get_string_resource() function in
utils/resources.c fails each time it is called.

After I moved XScreenSaver 
to /usr/lib/X11/app-defaults or /usr/share/X11/app-defaults (by libXt-0.99.2-2
changelog: now my XScreenSaver file is here, this problem remained.  
For now, I have to deal with the X environment ( I don't know well ) like 
"XAPPLRESDIR=/usr/share/X11/app-defaults xscreensaver -nosplash". I don't know
if this problem is whether by my dirty upgrading or by xscreensaver program
itself.

Comment 2 Mamoru TASAKA 2005-12-03 18:08:37 UTC
Created attachment 121798 [details]
lock screen under modular X rpm

xscreensaver lock screen with xscreensaver-4.22-19 and development
modular X rpm (I don't know what X rpm is really related to the
problem I commented above).
The lock panel title is set as "Screen Locked" by passwd.heading.label
in /usr/X11R6/lib/X11/app-defaults/XScreenSaver,
but in the real lock screen, its setting is ignored (unloaded) and
the title reads "XScreenSaver 4.22".

Comment 3 Mamoru TASAKA 2005-12-03 18:13:00 UTC
Created attachment 121799 [details]
lock screen with setting X environment

Lock screen with the same rpms but with setting X environment like
"XAPPLRESDIR=/usr/X11R6/lib/X11/app-defaults/ xscreensaver".

This lock screen is the expected one.

Comment 4 Mamoru TASAKA 2005-12-06 15:42:24 UTC
My comment 1 was a bit wrong.

I verified in xscreensaver-4.22-21 that putting XScreenSaver file in 
/usr/X11R6/lib/X11/app-defaults or /usr/lib/X11/app-defaults no longer works; 
xscreensaver command cannot load the XScreenSaver config file any more.
Putting XScreenSaver file in /usr/share/lib/app-defaults works well
( as expected like in libXt-0.99.2-2 changelog) ; xscreensaver correctly
load the XScreenSaver config file.

Please move XScreenSaver into /usr/share/X11/app-defaults.

Comment 5 Michal Jaegermann 2005-12-23 22:19:53 UTC
> Expected Results:  File "XScreenSaver" should be in "/usr/lib/X11/app-defaults".

It is like that in xscreensaver-base-4.22-21.2 from recent updates but this
location is architecture dependent and this really should go to
/usr/share/X11/app-defaults/ together with other default resource files.
"file /usr/lib/X11/app-defaults is not owned by any package" you will get
now if you will ask rpm for an owner.

Comment 6 Joachim Frieben 2006-01-13 09:40:17 UTC
Fixed in "xscreensaver-base-4.22-21.2" or earlier.

Comment 7 Mamoru TASAKA 2006-01-13 17:03:02 UTC
Determining where "XScreenSaver.ad" will be installed starts from
around the line 6800 of configure.

From reading configure file around there, "XScreenSaver.ad" will be
installed correctly in /usr/share/X11/app-defaults only when the command
"imake" exists (around the line 6817) (now in imake rpm, but imake command  
is thought to be deprecated...). Current rawhide sets XAPPLOADDIR as
/usr/share/X11/app-defaults (this is the reason XScreenSaver.ad should be
installed), so imake correctly points to this directory.

When I forcely changed the permission of /usr/bin/imake as 000, 
configure pointed to /usr/lib/X11/app-defaults (as the newest rawhide rpm),
which is now incorrect.

This problem is also discussed in the bug 176218. 

Comment 8 Mamoru TASAKA 2006-01-13 22:05:14 UTC
Sorry...
In my comment 7, "the command "imake" exists" was "the command "xmkmf" exists",
and "changed the permission of /usr/bin/imake" was "changed the permission
of /usr/bin/xmkmf". 

Comment 9 Mamoru TASAKA 2006-01-23 13:30:18 UTC
This is fixed in rawhide rpm 4.23-1.

Note: in xscreensaver-4.23-1 src rpm, the patch18
(xscreensaver-4.23-modularX-addoption.patch) and the added CFLAGS option
CONFIG_OPTS="$CONFIG_OPTS --with-x-app-defaults=%{_datadir}/X11/app-defaults"
removes the necessity of imake.


Note You need to log in before you can comment on or make changes to this bug.