Subject: XFree86, X.org, and pkgsrc
To: None <tech-pkg@NetBSD.org>
From: Johnny C. Lam <jlam@NetBSD.org>
List: tech-pkg
Date: 05/31/2005 03:36:46
I want to get our X11-handling cleaned up before the next branch.
I'm in the process of doing a fairly massive cleanup of the
buildlink/builtin code in pkgsrc and right now the X11-handling is
getting in the way.

To gain some perspective here, I want to point out that the code in
pkgsrc to deal with X11 distributions was inherited from FreeBSD Ports
and the tweaks we've made over the years have preserved the assumptions
in the original code.  Basically, we assume that ${X11BASE} is some
separate location from ${LOCALBASE} and are not nested in one another.
Nowadays, we have two different X11 distributions that can installed
from pkgsrc, but dependencies aren't really handled correctly because
the pkgsrc infrastructure really expects the X11 distribution to
already exist before packages that may use X11 are built.

What is the purpose of X11ROOT_PREFIX?  It seems to defeat the main
benefits of installing an X11 distribution from pkgsrc, which would
be that you wouldn't need xpkgwedge, and all packages automatically
install app-defaults files in a place that the X11 distribution would
find.  I don't see why we would want to have extra code in pkgsrc just
to allow the X11 distro packages to uniquely install into a different
location -- if we're going to do this, then we should generalize the
code to work for every package, not just for the X11 distro packages.
I don't see why you would want to be able to install both XFree86 and
xorg from pkgsrc, which is the only reason other packages in pkgsrc
install completely into subdirectories of ${LOCALBASE}.

I would like very much if there were no "special" packages in pkgsrc,
meaning that all packages are handled uniformly.  This makes pkgsrc
infrastructure code simpler, and also makes managing packages simpler,
which is a win for both developers and users.  Right now, the X11
distro packages don't adhere to this philosophy, and I would like to
know why this is needed/desirable/wanted.

	Thanks,

	-- Johnny Lam <jlam@NetBSD.org>