From owner-freebsd-hackers@FreeBSD.ORG Sun Oct 14 20:03:19 2007 Return-Path: Delivered-To: freebsd-hackers@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 0A61B16A417 for ; Sun, 14 Oct 2007 20:03:19 +0000 (UTC) (envelope-from cliftonr@lava.net) Received: from malasada.lava.net (malasada.lava.net [64.65.64.17]) by mx1.freebsd.org (Postfix) with ESMTP id D85B213C47E for ; Sun, 14 Oct 2007 20:03:18 +0000 (UTC) (envelope-from cliftonr@lava.net) Received: by malasada.lava.net (Postfix, from userid 102) id 8F7AF153882; Sun, 14 Oct 2007 09:38:14 -1000 (HST) Date: Sun, 14 Oct 2007 09:38:14 -1000 From: Clifton Royston To: FreeBSD hackers list Message-ID: <20071014193813.GA2677@lava.net> Mail-Followup-To: FreeBSD hackers list Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.4.2.2i Subject: Creating install CD with custom ports - how to massage INDEX file? X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 14 Oct 2007 20:03:19 -0000 I've been building my own install CDs for a planned multi-server upgrade to 6.2Rp8 and ran into one last stumbling block this week. I understand the process a lot better now than I did a few years back when I was doing it for 4.8, but I'm still having trouble pieceing together how I get my own package set onto the CD in a usable form. I built the release with NO_PORTS=yes, because I'm building the ports from my own CVS tree, which is a tightly pared down subset of the /usr/ports CVS, plus locally written software in ports format. I've ensured that the tree is closed under the dependency operation (to use some math jargon) - essentially that means that my ports subset includes all the dependencies of every port I'm including and all of *its* run/build dependencies in the tree, even if not being built. That allows the dependency graph to be calculated and the INDEX-6 file to be built properly. However, copying the INDEX-6 file and my private packages hierarchy into the CD build area doesn't work; I can read them off the CD post-install but sysinstall doesn't see them. It's not a disaster because I can always put the CD back in after booting and install them then, but it would would be nice to get them all zapped in with the initial install. I think from reading the assorted documentation and people's notes on release-building that the problem is that the INDEX-6 file needs to be massaged into a slightly different format for sysinstall, and I am not clear on the right way to do that for an existing package set, if you're not doing it via the release "build everything" approach and not working off the vanilla ports CVS. To simplify matters further, it all fits on disc 1 - it's not a big file set, so it doesn't need to be split onto multiple disks. I've looked through the many fine manuals here, here, and here: (This last comes tantalizingly close but doesn't get me quite there because it doesn't clarify under what directories or hierarchies these scripts should be installed and run, especially if you have a complete package set built.) This probably boils down to just one "make release" subcommand I need to give at the right stage, after putting my copied ports tree and/or package tree in the right magic place, but I'm not getting it. I'd appreciate a hint from anybody who knows this step. -- Clifton -- Clifton Royston -- cliftonr@iandicomputing.com / cliftonr@lava.net President - I and I Computing * http://www.iandicomputing.com/ Custom programming, network design, systems and network consulting services