diff options
-rw-r--r-- | Packages.txt | 52 | ||||
-rw-r--r-- | mk/bulk/do-sandbox-build | 15 |
2 files changed, 53 insertions, 14 deletions
diff --git a/Packages.txt b/Packages.txt index d4684c5b395..d85ef1fbeb1 100644 --- a/Packages.txt +++ b/Packages.txt @@ -1,4 +1,4 @@ -# $NetBSD: Packages.txt,v 1.236 2002/03/11 19:19:18 fredb Exp $ +# $NetBSD: Packages.txt,v 1.237 2002/03/13 06:30:12 hubertf Exp $ ########################################################################### ========================== @@ -248,6 +248,11 @@ If you don't have a permanent Internet connection and you want to know which files to download, "make fetch-list" will tell you what you'll need. Put these distfiles into /usr/pkgsrc/distfiles. +If you need to download from a dynamic URL you can set DYNAMIC_MASTER_SITES +and a 'make fetch' will call files/getsite.sh with the name of each file +to download as an argument, expecting it to output the URL of the directory +from which to download it. graphics/ns-cult3d is an example of this usage. + 2.4 How to build and install ============================ @@ -502,6 +507,51 @@ be installed via pkg_add instead of building again, so there are no cycles wasted by recompiling. + 3.2.6 Setting up a sandbox for chroot'ed builds + =============================================== + +If you don't want all the pkgs nuked from a machine (rendering it useless +for anything but pkg compiling), there the possibility of doing the pkg +bulk build inside a chroot environment. + +The first step to do so is setting up a chroot sandbox, e.g. /usr/sandbox. +After extracting all the sets from a NetBSD installation or doing a +"make distribution DESTDIR=/usr/sandbox" in src/etc, make sure the following +items are present and properly configures: + + * kernel (/netbsd) + * /dev/* (cd /usr/sandbox/dev ; sh MAKEDEV all) + * working(!) mail config (hostname, sendmail.cf) + * /etc/localtime (for security/snmpd) + * /etc/resolv.conf (for security/snmpd) + * /usr/src (system sources, for sysutils/aperture, net/ppp-mppe) + * create /var/db/pkg (not part of default install) + * checkout pkgsrc from cvs, into /usr/sandbox/usr/pkgsrc + * /usr/pkgsrc/packages & .../distfiles (point outside of sandbox) + * adjust .../mk/bulk/build.conf + +!!! Don't forget to install X !!! + +Next thing you will want to is make sure /usr/sandbox/usr/pkgsrc contains a +fresh checkout of pkgsrc (e.g. from anoncvs). Do not mount/link this to the +copy of your pkgsrc tree you do development in, as this will likely cause +problems! Adjust .../pkgsrc/packages and .../pkgsrc/distfiles to point to +some places outside the sandbox if you want to make the files public. + +Then, configure .../pkgsrc/mk/bulk/build.conf to fit your needs! + +When the chroot sandbox is setup, you can start the build with the following +steps: + + # cd /usr/sandbox/usr/pkgsrc + # sh mk/bulk/do-sandbox-build + +This will just jump inside the sandbox and start thrash^Wbuilding. +At the end of the build, mail will be sent with the results of the build. +Created binary pkgs will be in /usr/sandbox/usr/pkgsrc/packages (whereever +that points/mounts to/from). + + 3.3 Creating a multiple CD-ROM packages collection ================================================== diff --git a/mk/bulk/do-sandbox-build b/mk/bulk/do-sandbox-build index d827946d414..f3725bb7ac8 100644 --- a/mk/bulk/do-sandbox-build +++ b/mk/bulk/do-sandbox-build @@ -1,21 +1,10 @@ #!/bin/sh -# $NetBSD: do-sandbox-build,v 1.4 2001/06/27 11:53:03 hubertf Exp $ +# $NetBSD: do-sandbox-build,v 1.5 2002/03/13 06:30:13 hubertf Exp $ # # Script to start a sandbox build # - -# -# Important files in sandbox (after extracting sets or doing a -# "make distribution DESTDIR=/usr/sandbox" in src/etc): -# * kernel (/netbsd) -# * /dev/* -# * working(!) mail config (hostname, sendmail.cf) -# * /etc/localtime (security/snmpd) -# * /etc/resolv.conf (security/snmpd) -# * /usr/src (sysutils/aperture, net/ppp-mppe) -# -# !!! Don't forget to install X !!! +# See pkgsrc/Packages.txt for documentation! # chroot /usr/sandbox sh -c 'cd /usr/cvs.local/pkgsrc/ ; sh mk/bulk/build' |