Adventures in tinderbox

For those that don't know anything about FreeBSD it is an operating system that traces it's heritage back to the original unix development at AT&T starting in 1970. FreeBSD uses what is called ports to build a whole range of software that you can use. If you know linux and say well we just use yum to install binary programs, that's fine, ports is the structure holding up the FreeBSD equivalent, which is called packages. So you get two options, 1. use a port to compile the software yourself or 2. have a pre-built binary package installed. The port needs to be setup and working before you can get a binary package to install.

Being in the process of helping fix issues related to getting programs to compile within the FreeBSD ports system I have gone and setup tinderbox on my machine. Basically tinderbox allows you to setup virtual systems to test the build process of the port you are working on. This means you can test that the port builds on any number of FreeBSD versions, which is a good starting point to allowing others to use it. Yeah, I said a good starting point, someone will find that it won't work on their machine while program x is installed. But hey that's one of the joys of programming. ;-)

Anyway to the point of this post - setting up tinderbox. While there is some decent documentation it doesn't fully cover all features, maybe these are the newer features. Anyway this is the first of a series of posts that cover my exploration into setting up tinderbox my way.

Tinderbox uses some terms a little different than you may expect so lets start with the first building block - a tinderbox jail. Within tinderbox a jail is a copy of a FreeBSD install of a particular version, that is what you get when you run make buildworld installworld from /usr/src. The idea is you have a few of these jails setup, I will use 10-CURRENT and 9-STABLE as examples here. One area here that isn't covered in the docs is using subversion to get your source files, so that is what I will use. The main FreeBSD development changed to using svn several years ago now but with them keeping the cvs repo mirrored to the svn updates there doesn't appear to be much info on using svn yet. This wiki page seems to be the best info available.

So to get started install tinderbox - from ports of course.

cd /usr/ports/ports-mgmt/tinderbox make install clean

Before install you can run make config to change a few options - personally I swapped mysql with PostgreSQL and csup with cvsup, which I didn't end up using. Installing will put all the scripts in /usr/local/tinderbox/scripts and I will assume that is where your setup is. Beside the scripts dir you will also find several other empty dirs at this point, I'll mention them as we get to the relevant parts.

I won't go into the setup step here as what you need to know is in the docs (tinderbox/scripts/README) basically create the database to be used and save a few options into config files.

Then you stat by creating some jails, you obviously need to give it some info for that.

usage: tc createJail -j <jailname> -u CSUP|CVSUP|LFTP|SVN|USER|NONE [-t <tag>] [-d <description>] [-C] [-P <protocol>] [-H <updatehost>] [-D <updatehostdirectory>] [-m <mountsrc>] [-I] [-a <arch>]

Jailname sounds obvious - the catch is it must start with the main system version number so 10-CURRENT not FREEBSD-10, -u will be SVN and can be left out if you setup SVN as your default, protocol will be svn (this may also be http or svn+ssh but you'll need a login account for ssh access to the official repo), update host will be unless you get fancy and run your own mirror, updatehostdirectory is the svn path to get to what you want. So for a jail based on the current head development we get

cd /usr/local/tinderbox/scripts ./tc createJail -j 10-CURRENT -P svn -H -D base/head -d "FreeBSD 10-CURRENT tinderbox jail"

And for 9-STABLE we get

cd /usr/local/tinderbox/scripts ./tc createJail -j 9-STABLE -P svn -H -D base/stable/9 -d "FreeBSD 9-STABLE tinderbox jail"

So you may notice that the FreeBSD svn setup is a little different than you might expect - they don't use tags or branches the way you expect. Instead the path defines the release tag as such. So you can see that you get 9-stable from base/stable/9 you can also get 9.0-release from base/releng/9.0 or 5.2.1 from base/release/5.2.1 (yes 5.2.1 was the last minor release update) If you want to know the difference between RELEASE and RELENG then read this page. I would say current along with 8 and 9 stable would be sufficient but some may want to add other main releases to their testing list and may need them to find a regression between updates.

At this stage you will find that within /usr/local/tinderbox/jails a folder is created that contains the source and build files for each jail you create. When it is finished there will be a nice tarball of the jails world setup. If you mess around and want to start again then run ./tc rmJail -j my-messed-up-jail (from within tinderbox/scripts) and then remove it's folder within jails. rmJail removes the info from your database but leaves the jail files in place for you - I think there should probably be an option to delete all the files along with the jail definition, note for a suggestion or patch.

Some other options for -D that may interest you are -

base/head base/stable/9 base/releng/9.0 base/stable/8 base/releng/8.2 base/releng/8.1 base/releng/8.0 base/stable/7 base/releng/7.4 base/releng/7.3 base/releng/7.2 base/releng/7.1 base/releng/7.0

Well building the jails will take a few hours, so stay tuned for the next exciting episode.


beats solo hd on-ear headphone's picture

I'm really enjoying the design and layout of your blog.
It's a very easy on the eyes which makes it much more enjoyable for me to come here and
visit more often. Did you hire out a developer to create your
theme? Superb work!

minneapolis internet marketing's picture

hey there and thank you for your information - I
have definitely picked up something new from right here.

I did however expertise some technical points using this site, since I experienced to reload the site many times previous to I could get it
to load properly. I had been wondering if your web host is OK?
Not that I'm complaining, but sluggish loading instances times will sometimes
affect your placement in google and can damage your high-quality score
if advertising and marketing with Adwords.
Anyway I'm adding this RSS to my email and can look out for
much more of your respective fascinating content. Make sure you update this again very soon.

스토리텔링수학's picture

bookmarked!!, I love your site!

where to get ultrasound in columbia's picture

I truly love your site.. Great colors & theme. Did you create this site yourself?
Please reply back as I'm hoping to create my very own blog and want
to learn where you got this from or exactly what the theme is named.

paydays at home's picture

Genuinely no matter if someone doesn't know afterward its up to other visitors
that they will help, so here it happens.

terrebonne parish home elevation's picture

My brother recommended I might like this web site. He was entirely right.

This post truly made my day. You cann't imagine simply how much time I had spent
for this info! Thanks!

specialist offering diagnostics's picture

Hello to all, how is everything, I think every one is getting more from this web
site, and your views are fastidious for new visitors.

quotes on car insurance's picture

You made some good points there. I looked on the internet to learn more about the
issue and found most individuals will go along with your
views on this web site.

Lurlene's picture

If some one needs to be updated with hottest technologies then he
must be go to see this web site and be up to date everyday.

Nigel's picture

This page really has all the information I wanted concerning
this subject and didn't know who to ask.

sergey brin salary's picture

Although he shared few specifics, Brin mentioned remains as busy as he was during a decade-long stint as the company's
president of know-how.

Ageless Eye Cream Skin's picture

I was able to find good advice from your blog articles.

Neuracel's picture

Thank you, I have just been looking for info approximately this subject for ages and yours is
the greatest I've discovered till now. But, what concerning the bottom line?
Are you positive concerning the source?

Garcinia Cambogia's picture

You need to be a part of a contest for one of the finest
sites on the internet. I am going to highly recommend this blog!

Tonye Cole's picture

My partner and I absolutely love your blog and find almost all of your post's to be exactly what I'm looking for.
can you offer guest writers to write content availale for you?
I wouldn't mind creating a post or elablrating on many of the subjects
you write concerning here. Again, awesome web log!

derma c skin's picture

Wonderful goods from you, man. I've understand your stuff previous
to and you are just too great. I actually like what you've acquired here, really like what
you are saying and the way in which you say it.
You make it enjoyable and you still take care of to keep
it wise. I cant wait to read far more from you.
This is actually a great website.'s picture

Almuerza una sopa de vegetales con arroz, un canelon relleno de atun sin salsa,
una rebanada de pan de trigo integral y una

Phuket's picture

We're a group of volunteers and opening a new
scheme in our community. Your web site provided us with valuable info to
work on. You have done a formidable job and our entire community will be thankful to you.

Home For Life's picture

Howdy! This post couldn't be written any better! Reading this post reminds me of my previous room
mate! He always kept talking about this. I will forward this post to him.
Pretty sure he will have a good read. Many thanks for sharing!

more-3139's picture

I seriously love your website.. Very nice colors & theme.

Did you build this site yourself? Please reply back as
I'm hoping to create my very own site and would like
to find out where you got this from or just what the theme is called.
Thank you!

tickle's picture

I like what you guys are usually up too. This kind of clever work and coverage!
Keep up the good works guys I've added you guys to my own blogroll.

Namita Chittoria's picture

Magnificent website. Lots of useful information here. I am sending it to some
buddies ans additionally sharing in delicious.
And naturally, thank you for your effort!

Oro Lift Skincare's picture

Your style is really unique in comparison to other folks I've read stuff from.
Many thanks for posting when you have the opportunity,
Guess I'll just book mark this web site.

natural ceramide review's picture

When I originally commented I clicked the "Notify me when new comments are added"
checkbox and now each time a comment is added I get four e-mails with the
same comment. Is there any way you can remove me from that service?
Thank you!

nanoo's picture

nanoo (Krystle)
nanoo (Krystle)
nanoo (Krystle)
nanoo (Krystle)
nanoo - Krystle -
nanoo (Krystle)

casino's picture

You really make it seem so easy with your presentation but I find this topic to be really something
that I think I would never understand. It seems too complex and very broad for me.
I'm looking forward for your next post, I will try to get the hang of it!

paydays at home system's picture

What i do not realize is if truth be told how you are now not actually a lot more neatly-liked than you might be now.
You are so intelligent. You realize therefore considerably relating to this matter, made me individually imagine it
from numerous varied angles. Its like men and women don't seem to be involved until it's something to accomplish with Woman gaga!
Your own stuffs great. At all times maintain it up!

Namita Chittoria's picture

You could definitely see your enthusiasm within the article you write.
The arena hopes for even more passionate writers like you who aren't afraid to say
how they believe. At all times follow your heart.

superhero t shirts's picture

It's really very complicated in this full of activity life to listen news
on Television, therefore I just use world wide web for that
purpose, and take the latest information.

personalized tshirt's picture

Woah! I'm really loving the template/theme of this site.
It's simple, yet effective. A lot of times it's tough to get that
"perfect balance" between usability and appearance.

I must say that you've done a excellent job with this.

Additionally, the blog loads extremely quick for me on Safari.
Excellent Blog!

joint stimuflex's picture

I have been exploring for a little bit for any
high-quality articles or weblog posts on this kind of area .
Exploring in Yahoo I at last stumbled upon this website.
Studying this info So i am glad to exhibit that I have
an incredibly just right uncanny feeling
I came upon exactly what I needed. I such a lot for sure will make
certain to don?t fail to remember this web site and provides it a glance on a continuing

21 Step System's picture

Hello to every one, it's truly a fastidious for me to visit this
web site, it consists of helpful Information.

serum of youth skincare's picture

It's very effortless to find out any matter on web as compared to textbooks, as I
found this post at this site.

goji plus's picture

You've made some good points there. I checked on the net to learn more about the issue and found most
people will go along with your views on this web site.

path to earning scam's picture

An impressive share! I have just forwarded this onto a friend who has been conducting a little homework on this.
And he actually ordered me breakfast due to the fact that I stumbled upon it for him...

lol. So allow me to reword this.... Thanks for the meal!!
But yeah, thanks for spending time to talk
about this issue here on your site.

Garcinia XT Reviews's picture

Aw, this was an extremely nice post. Finding the time and actual effort to create
a superb article... but what can I say... I procrastinate a whole lot and never seem to get anything

dien dan rao vat nam dinh's picture

It's appropriate time to make some plans for the long run and it's time to be happy.
I've learn this post and if I could I desire to recommend you some fascinating things or advice.
Perhaps you could write next articles referring to this article.
I wish to learn even more things approximately it!

what is the crowdfunding platform's picture

I don't know if it's just me or if everybody else encountering problems
with your website. It seems like some of the written text on your posts are running off the screen. Can someone else please
comment and let me know if this is happening to them as well?
This could be a problem with my browser because I've had this happen previously.

Residential House Cleaning Portland's picture

Hi! I could have sworn I've been to this
site before but after browsing through some of the post I realized it's new to
me. Anyways, I'm definitely delighted I found it and I'll
be book-marking and checking back often!

Munchie's picture

A motivating discussion is definitely worth comment.
I do think that you should publish more about this subject matter, it may not be a taboo subject but
usually people do not speak about these subjects. To the next!
Kind regards!!

marketing's picture

Thanks for ones marvelous posting! I truly enjoyed reading it, you happen to be a great
author. I will be sure to bookmark your blog and may come back later in life.

I want to encourage you to continue your great work,
have a nice day!

Frin's picture

Asking questions are really fastidious thing if you
are not understanding something entirely, except
this piece of writing offers pleasant understanding even.

Createurs de Luxe's picture

My brother suggested I may like this website. He
used to be entirely right. This publish actually made my day.
You cann't imagine simply how much time I hhad spent for this information! Thanks!

Cleanse Body Pro's picture

My family always say that I am killing my time here at web, however I know
I am getting knowledge daily by reading such pleasant articles or reviews.

close baby carrier's picture

We stumbled over here coming from a different website and thought
I should check things out. I like what I see so now
i am following you. Look forward to looking at your web page
for a second time.

Xanogen Reviews's picture

This paragraph will help the internet people for setting
up new website or even a blog from start to end.

Joe Olujic's picture

You made some decent points there. I looked on the internet
to find out more about the issue and found most individuals will go
along with your views on this site.

Oz Vegan Serum's picture

Hi there would you mind stating which blog platform you're using?
I'm looking to start my own blog soon but I'm having a hard time selecting between BlogEngine/Wordpress/B2evolution and Drupal.

The reason I ask is because your design and style seems different then most blogs and I'm looking for something unique.
P.S Sorry for being off-topic but I had to ask!

aaa's picture

I don't know if it's just me or if perhaps everybody else
experiencing issues with your blog. It appears as though
some of the written text in your content are running off the screen. Can someone else please provide feedback
and let me know if this is happening to them too?
This may be a issue with my internet browser because I've had this happen before.


quick fix urine's picture

We absolutely love your blog and find most of your post's to be what
precisely I'm looking for. Would you offer guest writers to write content for you personally?
I wouldn't mind creating a post or elaborating on some of the subjects you write concerning here.

Again, awesome web site!


Add new comment