Subject: Preserving local configuration on X11 upgrade
To: None <tech-x11@NetBSD.org>
From: Luke Mewburn <lukem@NetBSD.org>
List: tech-x11
Date: 01/19/2004 14:17:18
--XaUbO9McV5wPQijU
Content-Type: multipart/mixed; boundary="3yNHWXBV/QO9xKNm"
Content-Disposition: inline


--3yNHWXBV/QO9xKNm
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline

An outstanding issue with our X11 sets is that extracting xbase.tgz
(or building to /usr/X11R6) clobbers local configuration in
/usr/X11R6/lib/X11/* .

We should improve this situation, as the "base" system installation
doesn't suffer from this problem.

I currently work around this problem for xdm & xfs by storing my
local configuration in /etc/X11/*, and using the following rc.conf
variables:
	xdm=YES
	  xdm_flags="-config /etc/X11/xdm/xdm-config"
	xfs=YES
	  xfs_flags="-config /etc/X11/fs/config"

Other systems (e.g., RedHat Linux) solve this by symlinking
/usr/X11R6/lib/X11/foo to /etc/X11/foo, and end-users modify
the latter.

There's a few possible solutions, including:

   1.	Move the files that are likely to be modified
	by the end user to a new set "xetc.tgz", and
	only install these files in with "make distribution"
	instead of "make install".
	Enhance postinstall and etcupdate to support upgrading
	changed files as necessary.
	I've attached a list of files that I've identified
	that are candidates for this.
	This is my preferred solution.

   2.	Symlink /usr/X11R6/lib/X11/foo to /etc/X11/foo.
	There's still an issue of when to populate /etc/X11/foo,
	unless we just ship examples in /usr/share/examples/foo.

   3.	Modify all the programs to use /etc/X11/foo instead of
	/usr/X11R6/lib/X11/foo.  This is more effort than I can
	be bothered with.

Thoughts?

Luke.

--3yNHWXBV/QO9xKNm
Content-Type: text/plain; charset=us-ascii
Content-Description: xetc.mi
Content-Disposition: attachment; filename=xetc

./etc/fonts/fonts.conf
./etc/fonts/fonts.dtd
./usr/X11R6/lib/X11/Cards
./usr/X11R6/lib/X11/Options
./usr/X11R6/lib/X11/X68kConfig
./usr/X11R6/lib/X11/XftConfig
./usr/X11R6/lib/X11/XftConfig-OBSOLETE
./usr/X11R6/lib/X11/config/host.def
./usr/X11R6/lib/X11/config/site.def
./usr/X11R6/lib/X11/fonts/100dpi/fonts.alias
./usr/X11R6/lib/X11/fonts/75dpi/fonts.alias
./usr/X11R6/lib/X11/fonts/cyrillic/fonts.alias
./usr/X11R6/lib/X11/fonts/misc/fonts.alias
./usr/X11R6/lib/X11/fs/config
./usr/X11R6/lib/X11/lbxproxy/AtomControl
./usr/X11R6/lib/X11/proxymngr/pmconfig
./usr/X11R6/lib/X11/rgb.txt
./usr/X11R6/lib/X11/rstart/commands/@List
./usr/X11R6/lib/X11/rstart/commands/ListContexts
./usr/X11R6/lib/X11/rstart/commands/ListGenericCommands
./usr/X11R6/lib/X11/rstart/commands/x
./usr/X11R6/lib/X11/rstart/commands/x11
./usr/X11R6/lib/X11/rstart/commands/x11r6/@List
./usr/X11R6/lib/X11/rstart/commands/x11r6/LoadMonitor
./usr/X11R6/lib/X11/rstart/commands/x11r6/Terminal
./usr/X11R6/lib/X11/rstart/config
./usr/X11R6/lib/X11/rstart/contexts/@List
./usr/X11R6/lib/X11/rstart/contexts/default
./usr/X11R6/lib/X11/rstart/contexts/x
./usr/X11R6/lib/X11/rstart/contexts/x11
./usr/X11R6/lib/X11/rstart/contexts/x11r6
./usr/X11R6/lib/X11/twm/system.twmrc
./usr/X11R6/lib/X11/xdm/GiveConsole
./usr/X11R6/lib/X11/xdm/TakeConsole
./usr/X11R6/lib/X11/xdm/Xaccess
./usr/X11R6/lib/X11/xdm/Xresources
./usr/X11R6/lib/X11/xdm/Xservers
./usr/X11R6/lib/X11/xdm/Xservers.fs
./usr/X11R6/lib/X11/xdm/Xservers.ws
./usr/X11R6/lib/X11/xdm/Xsession
./usr/X11R6/lib/X11/xdm/Xsetup_0
./usr/X11R6/lib/X11/xdm/Xwilling
./usr/X11R6/lib/X11/xdm/chooser
./usr/X11R6/lib/X11/xdm/xdm-config
./usr/X11R6/lib/X11/xinit/xinitrc
./usr/X11R6/lib/X11/xserver/SecurityPolicy
./usr/X11R6/lib/X11/xsm/system.xsm

--3yNHWXBV/QO9xKNm--

--XaUbO9McV5wPQijU
Content-Type: application/pgp-signature
Content-Disposition: inline

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.3 (NetBSD)

iD8DBQFAC0w+pBhtmn8zJHIRAj/XAKDHuWM+XvKmZAiYnVDzXfHGMe1b2QCfW6RJ
u+qmuOfx5coJabN5l12mL7E=
=WmZB
-----END PGP SIGNATURE-----

--XaUbO9McV5wPQijU--