20090529

busybox status on GNU/kFreeBSD

To build busybox on GNU/kFreeBSD you have to apply some patches and disable some config options.


Patches to apply:
-applied upstream
-to build with CONFIG_INIT enabled (a bit hackish and to test)
-to build free (waiting for "struct sysinfo" and "sysinfo(struct sysinfo*)")
-domainname workaround
-SO_BINDTODEVICE workaround
-to build with CONFIG_SWAPONOFF enabled
-part 1
-part 2 (waiting for "struct sysinfo" and "sysinfo(struct sysinfo*)")
-to build with CONFIG_MOUNT and CONFIG_UMOUNT enabled (a bit hackish)


Config options to disable:
-as commented text file
-as patch

Please tell me if you manage to build busybox on GNU/kFreeBSD with some of these config options enabled.



Update 20090529:
CONFIG_CTTYHACK builds without further patches needed.

Update 2 20090529:
CONFIG_SWAPONOFF builds with linked patch.

Update 20090604:
Link CONFIG_MOUNT and CONFIG_UMOUNT related patches.

Update 2 20090604:
Consider that (now) RB_HALT_SYSTEM and RB_POWER_OFF is defined on Debian GNU/kFreeBSD, and link an updated patch.
Split and comment some patches in the list.

Update 20090714:
I copied all these patches to d-i svn, and I'm cleaning them.
Please use those in d-i svn because in the next weeks I hope to fix syslog there.

20090527

busybox: failed test and other config options enabled on GNU/kFreeBSD

On Monday 24 I tried to test busybox init (with CONFIG_INIT and CONFIG_FEATURE_USE_INITTAB), without success.

I created a virtual machine with Debian GNU/kFreeBSD on it.
I installed the busybox deb I had built.
I substituted /sbin/init with a symlink to busybox.
I executed on the shell "init 6" (a.k.a. "reboot"), obtaining a usage message from busybox init; pressing Ctrl+C returns to normal shell.
This is because "BusyBox init doesn't support multiple runlevels" (from busybox man page).


On Wednesday 27 I tried to enable more applets.
Some of them built without patches needed; they are:
-CONFIG_FEATURE_INIT_SCTTY
-CONFIG_FEATURE_INIT_SYSLOG
-CONFIG_FEATURE_EXTRA_QUIET
-CONFIG_HALT
Instead CONFIG_MOUNT and CONFIG_PIVOT_ROOT seem to need a lot of work...

20090526

Big picture: "Community Bonding Period" end, coding period start

As you can see at [timeline], on May 23 the "Community Bonding Period" ended, and the coding period started.

During the "Community Bonding Period", I played a bit with the boot sequence on GNU/kFreeBSD by updating [ging]. I didn't manage to make it completing the boot sequence, but it was useful.
Then I evaluated the work to do on debian-installer (a.k.a. d-i); i.e. I
-tracked previous attempts to port d-i to GNU/kFreeBSD
-played a bit with the image creation process of d-i on GNU/Linux
-looked at which udebs were missing on GNU/kFreeBSD
Then I started to port busybox (one of the udebs), producing some patches and getting some of them merged upstream.

At the moment I'm trying to build busybox enabling all its applets useful to d-i(at least a dozen more), quickly testing what builds.

Finished the work on busybox, I'll have to port all othe useful udebs.


[timeline]
http://socghop.appspot.com/document/show/program/google/gsoc2009/timeline

[ging]
http://glibc-bsd.alioth.debian.org/ging/

20090521

busybox builds with "CONFIG_FEATURE_USE_INITTAB=y" on GNU/kFreeBSD (no patch needed)

busybox builds with "CONFIG_FEATURE_USE_INITTAB=y" on GNU/kFreeBSD without further patches needed :).

busybox builds with "CONFIG_INIT=y" on GNU/kFreeBSD

I managed to build busybox on GNU/kFreeBSD with "CONFIG_INIT=y".
I couldn't test the binary because I don't know how to test it...


Here is the patch:
http://slackydeb.altervista.org/files/debian_gnu_kfreebsd/busybox/config_init/20090521_1958_busybox.config_init.diff

(old version of the patch)

20090519

free in busybox working on GNU/kFreeBSD

I managed to get free in busybox working on GNU/kFreeBSD, but heavily copying and pasting code from the procps package. The resulting free implementation is not so tiny...
I quickly tested it (busybox free), and its output looks ok.

Get the patch at:
http://slackydeb.altervista.org/files/debian_gnu_kfreebsd/busybox/free/20090519_2342_busybox.diff

20090515

busybox splitted patches

I splitted (and modified) the previous busybox patch.

The patches not sent upstream are [0] and [1].

To build busybox on Debian GNU/kFreeBSD you need:
-applying the 2 patches linked in this post
-applying the 2 patches sent upstream
-copying the "udeb" config also to "deb" and "static" ones


[0] http://slackydeb.altervista.org/files/debian_gnu_kfreebsd/busybox/20090515/20090514_2011_busybox.debian.config.diff
[1] http://slackydeb.altervista.org/files/debian_gnu_kfreebsd/busybox/20090515/20090515_1739_busybox.debian.source.diff