Tinderbox quirks
Edwin Groothuis
edwin at mavetju.org
Thu Nov 24 23:10:03 EST 2005
On Thu, Nov 24, 2005 at 09:24:36PM -0500, Joe Marcus Clarke wrote:
> On Fri, 2005-11-25 at 13:18 +1100, Edwin Groothuis wrote:
> > In the last weeks practising tinderboxing, I have written down some
> > of the quirks I've experienced. Of course they can be easily dismissed
> > as "this is how you do it" or as "patch local if required":
> >
> > - phase 2 build still goes on even if phase 1 has failed. Specially
> > for ports which takes seven days to compile, this is a waste of
> > time.
>
> This is by design. The phase 2 build is there to catch transient build
> problems that may have occurred in phase 1. A patch to conditionally
> disable phase 2 would be entertained.
What kind of transient build errors are you thinking about?
> > - /proc and /compat/linux/proc filesystem. One works, one doesn't.
>
> What do you mean? Which works and which does not? What does it mean to
> not work?
/proc - when trying to build a port which which required /proc
(can't remember which one, was commited in the last two days),
explicity checked for /proc/curproc and complained that it procfs
wasn't mounted.
> > - echo ^G required when the build is finished. Specially with long
> > builds and virtual desktops.
> That can be added.
Thank you.
> > - ports and dependencies which are IGNORED don't show up in the
> > current build page, hard to find reasons why builds fail.
>
> Yeah, this is a byproduct of the pointyhat stuff. I can probably fix
> this.
Would be very appreciated.
> > - with left-over files, it's hard to re-run because you have to
> > delete the file from /spaces/packets/xxx-freebsd/All/xxxx. Option
> > for buildport?
>
> Any change to the plist should include a PORTREVISION change. However,
> if your port is in the database, and you run a tinderbuild specifically
> for that port, it will force a rebuild.
Hmmm... I normally use:
tc addPort -b ${OSVERSION}-FreeBSD -r -d ${PORT}
tinderbuild -nullfs -b ${OSVERSION}-FreeBSD ${PORT}
That should be enough, not?
> > - enterjail script should be supported. nothing beats being able
> > to run a make configure yourself.
>
> I have integrated this support into HEAD, and I will merge it into the
> 2.x branch for 2.2.0.
Cool!
I have a remark about it:
Absence of a proper shell kills the usability. For example,
/work/a/usr/ports/foo/bar/work/bar-x.y.z is not a string you
want to have to enter three times. After the enterjail stops
sleeping, I have added a call to a script which copies a lot
of useful(YMMV) things to /opt, for example bash and friends
and my makediff script. Then calling /opt/bash and /opt/makediff
will give you the powers you need while not poluting /usr/local
and others.
> > - would be nice to have, in the webpage overview, the time it took
> > to build so you can more or less guestimate how long the next
> > build will take.
>
> Agreed.
>
> If you patch any of these things locally, please submit your patches.
I'll work on it.
Edwin
--
Edwin Groothuis | Personal website: http://www.mavetju.org
edwin at mavetju.org | Weblog: http://weblog.barnet.com.au/edwin/
More information about the tinderbox-list
mailing list