Developers’ Weblog

Sponsored by
HostEurope Logo

Developers’ Weblog

All 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31

The “openbsd” option (bsd.mod) is unable to boot 4.4OpenBSD, MirOS #10, bsd4grml 2009.05rc1.

It appears that the kernel gets a page fault trying to access its own .bss – but I didn’t really look into it. Any takers?

This is bad, I wanted to add this…

menuentry "bsd4grml from harddisk (ISO = grml_2009.05-rc1.iso)" {
        loopback        loop (hd0,1)/grml/grml_2009.05-rc1.iso
        openbsd         (loop)/boot/addons/bsd4grml/bsd.rd

… to the solution using GRUB2 for ISO loopback boot, which Zugschlus brought into practical use.

grml GNU/Linux, our recently-partner project from Austria (not Australia), will gain ISO images bootable by dd(1)ing to a USB stick (or CF/SD card, hard disc, ...) via the MirOS manifold-boot technology, in use since 10/2007 and developed for the self-installing boot blocks. With only a couple of ifdefs, the MirOS BSD/i386 was made into a which runs fine on GNU/Linux (with mksh, of course!) and produces a first stage boot sector capable of loading a GNU GRUB2 core.img image the same as boot(8/i386) has been able to for a while. (GNU GRUB-legacy stage2 images cannot be loaded that way because bootxx is limited to 65280 bytes of second stage loader – mostly because the bootloader itself is, too, and this enabled me to squeeze out a few more bytes there.)

To say it with Mika Prokop himself:

23:22⎜«mikap:#grml» mirabilos: und dein bootloader ist geil :)
23:29⎜«mikap:#grml» und ich finds saugeil dass ich ein bsd zum booten mit
     ⎜  grml hab, das muss ich dann gleich mal auf usb-stick installieren

<mika:#grml> mirabilos: because: per default i still want to use isolinux
   (unless grub2 is working better, and: i'm missing the f2, f3,... splashes
   from isolunux)
<mirabilos:#grml> yep, nimm isolinux
<mirabilos:#grml> mkisofs -b hat damit gar nix zu tun
<mirabilos:#grml> das ISO bootet grub, wenns von USB gebootet wird, isolinux,
   wenns von CD gebootet wird
<mika:#grml> mirabilos: and the *same* ISO boots isolinux by default then but
   can be 'dd if=grml.iso of=/dev/sdb'-ed?!
<mirabilos:#grml> yep
<mirabilos:#grml> MirBSD doing that for a couple of years
<mika:#grml> mirabilos: awesome, i still don't get it but this sounds awfull
<mirabilos:#grml> mika: ours can even be booted on i386 via both methods *and*
   on a sparc
<mika:#grml> mirabilos: WTF?
<mirabilos:#grml> yep
<mirabilos:#grml> before MirGRML was added, our live CDs were already DuaLive?
<mika:#grml> awesome
<mirabilos:#grml> i386 boot (from cd, hdd, usb, compactflash, sd) into either
   live or install mode + sparc boot (voa OpenBOOT) into install mode
<mika:#grml> mirabilos: pfuh *verbeuge_again* :)

Ich glaube, Mika mag meinen Bootloader ;)

For simplicity, getextent_cd9660(1) will also be added to the grml-live ISO build process, as its output is easier to parse than J�rg's isoinfo. (I definitively should add subdir support there, just haven't gotten around to do it yet...) It uses a UCB and a TNF header file and otherwise available under the MirOS Licence (of course), as are the bootblocks.

Solución al reto del script

16.05.2009 by tg@
Tags: mksh

asarch ha escrito un artículo acerca de cómo se usa la función isatty(3) de para verificar si un script tiene datos en stdin, quizas en "$@", o para imprimir su uso.

Para el soporte oficial del mksh eres bienvenido en su canal (en inglés, ya que no todos hablan el castellano) en #!/bin/mksh (sí, sí es un nombre válido XD) del Freenode PDPC (

Update: asarch ha corregido mi español... ¡gracias!

As before, I amended my WTF *.deb repository (link to the WTF repository overview page), this time by emulated m68k packages.

The mirmake package definitively needs upstream work, but I don’t even know off-hand what MACHINE and MACHINE_ARCH are correct for the Atari Falcon on m68k… need to peek at the other BSDs for that.

Rant: the Debian sendmail package sucks, I wonder how anyone can use it… I’ll go by scp(1)ing the configuration from MirBSD again…

MirOS-current Triforce snapshot on BT

26.04.2009 by tg@
Tags: news snapshot

The Ostara 2009 snapshot of MirOS BSD #10-current (DuaLive™ technology and MirGRML 2009.01 making a Triforce™ CD) is available on a couple of BitTorrent trackers, our usual tracker and a few others for diversity (and so that they do have some legal content).

It's also available for NetInstall on both architectures.

current snapshot delaying poll

23.04.2009 by tg@
Tags: snapshot

As I built a 2009-04-17 snapshot but haven't yet come to publish it, or especially create a DuaLive™ CD again, mostly due to real life jumping in or immense (more than usual) headaches, I wonder if I should build another one with the changes done afterwards in it. Comments?

perl and quoted-printable

22.04.2009 by tg@
Tags: snippet

While here anyway…

$ perl -pe 's/=(\n|[a-fA-F0-9]{2})/$1 eq "\n" ? "" : pack("C",hex($1))/eg'

Needed it once for SyGroup.

mksh $(…) evaluation bug

22.04.2009 by tg@
Tags: bug mksh

RedHat BZ#496791 is another example of a bug I documented better in the commitids 10049EF448F5F89A278 and 10049EF493039137B14 in mksh(1).

The gist is: $(…) are not parsed recursively but by a lexer hack, namely merely looking at matching parenthesēs; this needs to go away. Until then, this bug cannot be fixed.

And while at it, ((foo); bar) subshells need to be fixed so that they are not parsed as ((…)) arithmetic expression with a failure upon encountering a sole closing parenthesis.

The mksh plans list this.

HW RNG, Geocaching und so

22.04.2009 by tg@
Tags: geocache

Bei Natureshadow seinem Blog findet man bisweilen lustige Sachen, zum Beispiel den unten eingebetteten T5-Cacher (nicht im RSS).

Geocachen im Rheinland ist auch nett, hat öfters Tips und so. Schade ist, daß man die Coins nicht als Nichtmitglied in einem Klub bestellen kann. Bei Bertelsmann bin ich ja auch raus.

T5-Cacher ☺ geocaching, spontane Gedanken

Mehr über kaputte Compiler

22.04.2009 by tg@
Tags: bug rant

Als ich über Compiler fluchte hatte ich eigentlich nur im Sinn, festzustellen, daß wir wohl weiterhin mit gcc3 „stuck“ sind. Zugegeben, ich habe den Autor von nwcc als Idioten bezeichnet in einem „rant“, aber die Antwort, die ich per privater eMail erhielt – daher nicht hier wiedergegeben – überraschte mich doch etwas. Ich habe nichtmals alles von ihr gelesen, aber… naja. nwcc baut mksh nicht korrekt, selbst wenn er korrekt tut, weil er zum Beispiel 「void **」 mit 「void *」 verwechselt. Ich schrieb von Warnungen, aber der Autor von nwcc zieht es vor, nicht zwischen gcc-Warnungen beim Bauen von nwcc und nwcc-Warnungen beim Bauen von mksh zu unterscheiden. Weiterhin wagt er es, meinen rant-Idioten als ad-hominem-Attacke zu bezeichnen, selber jedoch erst recht eine derselben zu lancieren.

Nunja. Ich denke, ich habe durch das entfernen des ohnehin defekten nwcc-Ports seinem Wunsch genüge getan. Hiermit weise ich darauf hin, daß der erwähnte Idiot keinesfalls wider seine Person gerichtet war, sondern sich auf die Tätigkeit des Hartkodierens falscher bzw. nicht portabler Annahmen bezog. Damit ist das Kapitel für mich geschlossen. Achja: in einem Makefile eine Regel wie ein Verzeichnis nennen tut nicht – das mußte ich lernen (bei install(1) zum Beispiel), und selbst wenn es funktioniert tut sie nicht das, was Nils Weller gerne hätte, nämlich automatisch in das Verzeichnis hinabsteigen und dort weiter make(1)n.

Update 18:40 – Wir haben uns geëinigt, daß wir keine gegenseitigen Kriegserklärungen wollen, also halte ich mich jetzt an „shut up and hack“ und vergesse das Ganze.

perl and HTML entities

22.04.2009 by tg@
Tags: snippet

I don’t even know perl(1), I just can RTFM…

tg@bleu:~ $ echo 'xyzz�€y' | perl -C -pe \
tg@bleu:~ $ echo 'xyzz�€y' | perl -C -pe \
    's/([\x{7f}-\x{ffff}])/sprintf "&#x%X;",unpack("U",$1)/eg'

Just hacked it for Natureshadow.

I amended my WTF *.deb repository (link to the WTF repository overview page), which carried Debian packages I needed, and later packages for their derivates used at $workplace as well, by iPhoneOS 2.2 packages, after gecko2@ nagged me enough.

Let’s see if it makes. Requests for packaging welcome, but also if someone has already attempted to have dget, dpkg-source & al. on the jesusPhone. Oh, and I’d like to have swap over NFS (or something similarily useful), as I refuse to cross-build, other than exclusively for bootstrapping – a lession learned from OpenBSD (and myself).

All 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31

MirOS Logo