Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 26 Dec 2013 19:19:57 -0800
From:      Tim Kientzle <kientzle@freebsd.org>
To:        Glen Barber <gjb@freebsd.org>
Cc:        freebsd-arm ml <freebsd-arm@freebsd.org>, FreeBSD Release Engineering Team <re@freebsd.org>
Subject:   Re: FreeBSD 10.0-RC3 Now Available
Message-ID:  <22576EF1-B4AB-4174-81E7-CF2A77594FAC@freebsd.org>
In-Reply-To: <20131227025814.GQ13109@glenbarber.us>
References:  <20131226162521.GK2009@glenbarber.us> <2B79BF2A-1798-40F5-AD6E-D560E9C6C1E7@freebsd.org> <20131226194830.4f6e5b13@bender.Home> <AB7A24B9-A7FF-4364-8257-B8DF0E75A462@bsdimp.com> <7684A21C-4451-44ED-A11A-C03EF7850F01@freebsd.org> <20131227025814.GQ13109@glenbarber.us>

index | next in thread | previous in thread | raw e-mail


On Dec 26, 2013, at 6:58 PM, Glen Barber <gjb@FreeBSD.org> wrote:

> On Thu, Dec 26, 2013 at 06:51:11PM -0800, Tim Kientzle wrote:
>> On Dec 26, 2013, at 11:59 AM, Warner Losh <imp@bsdimp.com> wrote:
>> 
>>> Can crochet take this the userland tarball and make an image from it?
>> 
>> Easy-peasy.  There are hooks for this already in lib/board.sh that you
>> can override in config.sh.  Something like the following (untested)
>> should do the trick:
>> 
>> # (Optional) Don’t build world.
>> board_default_buildworld ( ) { }
>> 
>> # Replace default installworld with untar
>> board_default_installworld ( ) {
>> 	cd ${BOARD_FREEBSD_MOUNTPOINT}
>> 	tar xf ${WORLD_TARBALL}
>> }
> 
> So, in theory, re@ would need to produce arm userland (using TARGET=arm
> TARGET_ARCH=arm),

armv6, actually.

> run 'make packageworld' to create the base.txz and
> 'make packagekernel' to create kernel.txz, and that should dump the
> world/kernel bits onto a dd(1)-compatible image?

That’s the idea.

You’d have to also override board_default_buildkernel
and/or board_default_installkernel in like fashion if you
want to use a kernel.txz distribution.  There’s less 
point in that on arm, though, since we don’t yet have a
GENERIC kernel.

Caveat:  Overriding board_default_installkernel is straightforward
for boards like RPi and BeagleBone if you’re using the
U-Boot -> ubldr boot chain.  Beyond that, it can get a little
weird.

> Although, if we're already doing buildworld, installworld is inexpensive
> at this point.

I think Warner’s concern was whether there was a way to
ensure that the (release) tarball and the (release) RPi
image had exactly the same bits.

Of course, the really time-consuming part of building a
release image with Crochet is when you add:

  option UsrPorts
  option UsrSrc

;-)

Tim



home | help

Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?22576EF1-B4AB-4174-81E7-CF2A77594FAC>