How to use Beagleboard image-builder?

I’m running a Beaglebone White with the latest Angstrom (and 3.8.13 kernel) and I want to move to the beta Debian distro that Jason talked about.

I have cloned the Git repo at https://github.com/beagleboard/image-builder on the Linux Mint virtual machine I use for ARM development, and I’ve run the script ./beagleboard.org_image.sh in the directory I use for development, just as I did for Angstrom. It “worked” and pulled down lots of files, as I expected.

Where do I go from here? What are my build options? I want to customize the build to a minimal system without X, just as I did for Angstrom.

Thanks!

It's still a little hackish as so far it's really just been written for me..

"base packages"
https://github.com/beagleboard/image-builder/blob/master/var/pkg_list.sh
AKA: everything needed for network access/debuging for a console
system.. They are split into discrete groups, just disable what you
don't need..

"chroot packages"
https://github.com/beagleboard/image-builder/blob/master/beagleboard.org_image.sh#L192
Without these the "chroot" will fail and you'll never get a final image...

"firmware packages"
https://github.com/beagleboard/image-builder/blob/master/beagleboard.org_image.sh#L276
not everyone needs them..

You can disable them globally via:
https://github.com/beagleboard/image-builder/blob/master/beagleboard.org_image.sh#L326

"bb.org/x11/lxde packages"
https://github.com/beagleboard/image-builder/blob/master/beagleboard.org_image.sh#L39
I'm still fine tunning these for the "final" image..

Finally the "bb.org" script
https://github.com/beagleboard/image-builder/blob/master/beagleboard.org_image.sh#L328

which runs, this sets up everything "custom" for the bb.org image..
(non generic stuff.)
https://github.com/beagleboard/image-builder/blob/master/chroot_script/beagleboard.org.sh

If you want "supper minimal" aka git in lessthen 64MB there's a couple
switches for that..

Regards,

That’s not a problem.

From what you say, it looks like I can prune the X11 packages. I’m not sure what my final image will be like; there are a lot of dev packages on my custom image since some packages (hi, NTPD!) do not cross-compile. What I do know is that I will not be running X in any sense, so I’ll start pruning there. Disk space on either end is not a consideration, but the smaller I make it, the easier it is to manage. I’m using native C so that simplifies some things.

If I may ask, did you base your build script on an existing project like buildroot? I want to figure out how it works but I think you’ve done enough for the Beagleboard community without my asking for a personal lesson.

It's still a little hackish as so far it's really just been written for
me..

That's not a problem.

From what you say, it looks like I can prune the X11 packages. I'm not sure
what my final image will be like; there are a lot of dev packages on my
custom image since some packages (hi, NTPD!) do not cross-compile. What I
do know is that I will not be running X in any sense, so I'll start pruning
there. Disk space on either end is not a consideration, but the smaller I
make it, the easier it is to manage. I'm using native C so that simplifies
some things.

btw, i just re-organized the list.. So if you disable xorg... also
disable everything after it..

https://github.com/beagleboard/image-builder/blob/master/beagleboard.org_image.sh#L49

If I may ask, did you base your build script on an existing project like
buildroot? I want to figure out how it works but I think you've done enough
for the Beagleboard community without my asking for a personal lesson.

It started out life as a maintenance shell 'wrapper' around
'project-rootstock' back in 2009 ish, just so i could easily push out
a new image once a month.. After 'project-rootstock' bit-rotted i
ended up just re-implementing what i actually used from the project..
It's been a franken-script ever since, but it works. :wink:

Regards,