The Mac has been prepared with xcode 1.5 and the November 2004 Developer Toolkit update, as well as User X11 and X11 development.
First, create the standard xhier tree: /fsys1/.software/{admin,arch,local,regional,share,spool}
, with links from /.software
and /software
.
I extracted a fairly recent (this week-ish) pkgsrc to /usr/pkgsrc
.
A decision point: where to put the pkgsrc tools? This will influence where we bootstrap to. We can try building right into the /software tree, or we can keep the pkg tools separate from xhier's infrastructure. The latter seems easier, both short-term (less complex environment) and long-term (easier to duplicate the work on other platforms without requiring an xhier package for pkgsrc). Either way will require the use of pkgviews. It seems that long-term maybe we'll want to look at building in a chrooted tree rather than risk messing up the xhier directories with a botched install or a package that doesn't honour pkgviews.
Well, all that's well and good, except it wants to bootstrap to the same PREFIX as packages go, I think. So try /etc/mk.conf
:
PKG_INSTALLATION_PREFS= pkgviews overwrite LOCALBASE=/software
Where to put sysconfdir? It wants to be PREFIX/etc
. We certainly don't want a /software/etc
directory. Let's try putting it somewhere radical: /pkgetc
. So try bootstrapping with:
[reasoner:/usr/pkgsrc/bootstrap] root# ./bootstrap --prefix=/software --sysconfdir=/pkgetc
That ought to be enough to get us started... hrm, it isn't quite what we wanted:
[reasoner:/software] root# pwd /fsys1/.software/share [reasoner:/software] root# ls -l total 10 drwxr-xr-x 2 root wheel 1024 5 Mar 19:02 bin drwxr-xr-x 2 root wheel 1024 5 Mar 18:59 lib drwxr-xr-x 7 root wheel 1024 5 Mar 19:03 man drwxr-xr-x 2 root wheel 1024 5 Mar 19:03 sbin drwxr-xr-x 3 root wheel 1024 5 Mar 18:59 share [reasoner:/software] root#
I'm not sure how we can put the pkgsrc stuff somewhere such that we can install packages to /software/packagename without having this goo. Try installing a package anyway, see what happens.
ld: warning -L: directory name (/software/packages/digest-20021220/lib) does not exist => Unwrapping files-to-be-installed. [reasoner:pkgsrc/pkgtools/digest] root# cd /software/ [reasoner:/software] root# ls -l total 10 drwxr-xr-x 2 root wheel 1024 5 Mar 19:02 bin drwxr-xr-x 2 root wheel 1024 5 Mar 18:59 lib drwxr-xr-x 7 root wheel 1024 5 Mar 19:03 man drwxr-xr-x 2 root wheel 1024 5 Mar 19:03 sbin drwxr-xr-x 3 root wheel 1024 5 Mar 18:59 share [reasoner:/software] root# cd bin [reasoner:/software/bin] root# ls bmake cpio digest ftp pax tar [reasoner:/software/bin] root#
Nope, not happy. :~(
-- MikePatterson - 05 Mar 2005