Yesterday morning, wbx@ prodded me to hunt that bsd.rd vs bootloader, bsd.rd.net working, bug, together. Turns out I had to fix an error in a check if the kernel is not too big, turns out bsd.rd was too big, so we decided to bump the RELOC value a little.
Forking is “in”: MirBSD, FreeWRT, Ewe, GForge… what’s next?
Things that suck: too small partitions for mirroring /cvs on a 2 GiB drive which also hosts a #7quater installation, with too big of a block and fragment size to fit all comma-v files.
I’m somehow not in a hacking mood right now, we basically just need a few more people testing #10RC6, then recompiling (from a clean install) it and releasing that. Or so I think.
The weekend is intended for relaxing, I think I have done so. I’m not even in the mood to bike to the city and have some big dinner, for me a couple of butterbread and some sinalco cola+cherry juice+beer will last that evening. The only thing which sucks is that I have to wash clothes because I’m going to Berlin this week (business trip). I really hope my laziness will allow me to get a set of clean clothes for THAT ☺
I wonder where Benny is, this weekend. Probably relaxing, too ☻☺
I had some feedback for my FrOSCon talk from Jörg—better known for MirOS users as J?rg—Schilling, who did not even attend it. Somebody told him I had been mocking his poor excuse for a build system. Since then, mails have been going back and forth. He accused me of spreading lies, being generally misinformed and (that is the part I like best) having made a bad talk. In fact, the latter is also the subject of his mail. Good to know that he can sense what I said from 500 km away.
It was impossible for me to get any kind of factual argument across to Jörg. For instance, every time I said something about his Makefiles, he kept on talking about smake. I am not the slightest bit interested in smake. The really interesting questions were not answered by him: Why are there 325 files in the RULES subdirectory in the cdrtools source (and 48 READMEs)? Why are there two Makefile fragments, i386-openbsd-cc.rul and i386-openbsd-gcc.rul, which are otherwise completely equal and choose to ignore the user's choice of C compiler? How do you want to achieve platform-independence if all you have is 325 platform-specific files?
The answer is that you should just install smake, and thanks to its magical capabilities (which J.S. calls "automake functions" to further confuse everyone), everything will work. I refuse to look at smake, but for me, this just shifts the problem further: How do the Makefiles of smake work? Should I install smake to build that too? Keep in mind that this is somehow better than automake, which works with the native make(1) or GNU make, and for which no additional software needs to be installed, at least a priori.
So, to conclude, I stand fully behind what I said, and I will not "correct" any statements I made. Regarding the licence issues behind the Schily Makefiles, different people have different opinions. And Jörg, you should be ashamed of yourself for saying:
"Schade, daß Du die Lügen der OpenSoure [sic!] Feinde bei Debian unreflektiert wiederholst."
I mean, really.
For its birthday, it got further improvements to the www source code as well as a merged page more; unity of mind, and consens between developers regarding how to handle the next events and J�rg Schilling, and nobody, I think, noticed. But how fitting that Theo de Raadt is now guilty of doing actual harm to his own project, by shouting at Linux® developers, so that they use GPL-only instead of BSD/GPL dual licencing for their fork of his ath(4) OpenHAL (after fixing a licence violation that they were correctly accused of). At least me and nbd from OpenWrt think so.
These are quiet times, and I worked long today (biking up a mountain to the server housing farm *sigh*, and hating Subversion even more), as did, or so I think, Benny. My SPARCstation (demo.mirbsd.org) finished creating a new snapshot, hereby dubbed MirOS #10 RC6, which will be uploaded soon, along with a recent one for the i386 architecture. I hope it works really well, so that we can release as soon as possible (and tested; XTaran took it okay and is currently backing up his stuff, thanks).
FrOSCon is over for me now as well, with the end of the two days I took off to replenish after the event. I used it to chill, rest, not do much – so far it worked, I feel okay going to work tomorrow, not strained.
Since yesterday, I’m officially a developer of Cachewolf, thar software Dr. Pfeffer and I use for geocacheing. And I fixed a bug. In Java™. Urgh. But it works now (for some low values of work). And they use svn. Yuck. I can’t use non-7bit chars in the commit messages, because J�rg Schilling’s fucking BerliOS setup wrecks the emails if I enable use of locales in the post-commit hook, which worked for FreeWRT. Line endings as well as character encodings (they use mostly windows-1252) are cruel too – but probably can be fixed. I need to start some discussion about that. To use gcj for compiling, I’ve prepared a comp-gcj.sh and even a simple Makefile, but I want to clean the mess up some more before committing the nuggets, because it’s easier (also for Ewe and Jewel) to have the classes from external libraries unpacked in the tree.
GNU ed sucks – it is less BSD ed(1) compatible in more recent versions… I bet they’ll be using GPLv3 next – and GFDL for the man er… texinfo pages (now what, GNU software doesn’t use manual pages any more, and almost no GNU/Linux distribution has texinfo).
I would have listened to the grml talk at MoeLUG tonight, but nobody of my mates with cars wanted to go. Too bad, I really liked the Altbier.
Along with this post, I am inserting a vim modeline into the source of this page. Finally.
As said in the title, FrOSCon 2007 is over. IMHO, it was one of the best conferences I have ever attended. I loved the relaxed atmosphere, the cool people, the catering, and the Free Beer—sponsored by O'Reilly, who really deserve more credit for that. There were many niceties and little things that made the conference truly great—like the Wii lounge, where I played some tennis against Marius from AllBSD.
I was not at all happy with the way our booth was handled though: It consisted of a row of tables, the showcase computer standing with the monitor to the front. Behind the tables, three to six persons were sitting crouched behind their laptops, only one of which (tg@) actually using MirOS. The others were not even familiar with the project, with its goals or with the content of the flyers. The showcase was almost only ever used for showing something when I was present, doing so myself. Flyers and CDs were not proactively handed out to visitors, they had to get these themselves. Note: I will not accept this behavior again from someone with an exhibitor's pass for MirOS.
On a more positive note, my talk automake, autoconf, libtool—an introduction to the GNU build system was a success. The lecture hall was almost full; the audience was interested and critical, asking many questions along the way and at the end. (Thank you for that.) I started 15 minutes late because the video team did not have a new cassette for recording. They called a helper over DECT, asking for a new one. The helper came five minutes later, asked if we were the ones that called and went off again to actually get the cassette. It was truly a WTF moment for all of us, the audience waiting. I made it through at an impressive speed: All my original slides as well as the demo were in, and even with questions, I made it in about 50 to 55 minutes.
In the abstract, I had made a bold statement about cmake being a flawed concept compared to the autotools, but I did not have any data points to actually back up my claim, and promptly I got some questions about this weak point of mine. Sorry for the unsatisfying answers.
The slides in PDF format as well as the code examples are downloadable from the FrOSCon program website. If you attended the talk, I would be happy to receive some feedback, remarks and criticism via the form on the same page.
Oh, and it is true that the website here is somewhat broken now because I did not commit all of my changes. The point is that commit windows, with a r/w CVS repository, are rare now for some reason. Halfway through my commits, I was distracted and could not finish. By and large, and contrary to popular belief, a conference and exhibition where you have a booth is not a good place or time for hacking.
Where’s my MirOS flag, I wonder? Anyway, we finally got ISOs, I am fully under strain, and the food is good and the net working.
ciruZ did me a mcabber port, now I need to learn how to use it. Dropping all non-Jabber connections was fun. (He tells me to write “js” as name, as he doesn’t use that nick any longer. I guess you call it “Richtigstellung” in German press law.)
Benny is constantly annoying me too… I’d better go and eat something.
… the grill is dimensioned much too low and it’s hard to get the grilled sausages. Luckily, users contributed some Altbier, and other visitors went to the barbecue queue for me. Thanks!
Something seems to be wrong with manpages on the sparc. Maybe that could be fixed during the next build. No idea. I guess it could be a caste-align issue. I do not even want to fix the bootloder, the code is so ugly.
This is day 0 of FrOSCon 2007, the event whose planning of a “LinuxTag Bonn” started out during some car ride to FOSDEM. I’m not yet there, because I am committed to committing all the local Ms from my various source trees first, as “herc” (or rather rant) is a little working right now (after rebuilding the RAID several times during last night, which made me sleepy…) and I’d rather get it done now.
Expect a wlog entry per day per developer (well, at least me), and these are constantly updated (maybe, we’re lazy slackers after all).
*sigh* Benny updated the index but didn't commit the other migrated HTML files. This website just became more broken in a sudden.
Interesting: geocacheing now works, but CacheWolf cannot handle 4800 bps – but cu -l /dev/cuaU0 -s 4800 <>/dev/ptyp5 >&0 plus using /dev/ttyp5 as “serial” device helped…
We just ate a little and now are going home. FrOSCon looks superb, but a Live CD Image is still not there. It's closing time...
This sucks: we apparently also got the wrong cable for the Zaurus spitz (SL-C3200) – one that does not support USB host mode. Add the Ewe runtime issues (now: segfault in GetLocale() or something like that) to it – plus the CacheWolf issues… damn I think it would’ve had some great educational impacts on our geocacheing newbie of the day. But odem was enough…
I finally got my GPS mouse, wbx@’s is an uslcom(4) at 9k6,8N1; and mine is an uplcom(4) at 4k8,8N1; no problems so far, this is actually the very baud rate specified by NMEA 0183, and its precision is better by one post comma digit (unsure how to call it in English). This means I’ve been outdoors again, with quite some success. I suppose I’ve got to fix the Zaurus issues with Ewe soon – but Cachewolf seems to have some trouble with my version of the GPS mouse which transmits the GPGSV lines only every second second (heh…). In short this means it didn’t work and we were left with wbx@’s less precise mouse which, interestingly, had fairly good precision this time but didn’t seem to actualise the position as we drove or walked. Weird. Or CacheWolf is a little bit more buggy than we thought.
Looks like I’ve got to work on nmeadecode(8) now for real. If only…
mksh(1) now got a “rename” builtin just calling rename(2). I fragged an embedded system (Mikrotik Routerboard 532 with FreeWRT) by trying to move the old directories aside and new directories in place during an upgrade, not remembering that /bin/mv was dynamically linked…
I could reproduce the “detached mksh busy loop” issue on the Zaurus but not track it down (of course). So far, it seems to only happen on Linux – I definitively need help from the community here.
We got MirOS #10 RC4 (i386) out as well as #10 RC2a (sparc), now with X but still not really tested. Both on the mirrors. After reïnstalling that SPARCstation and fixing some SIGBUS, I’m now trying to get a final candid for sparc out before actually releasing #10 into the wild.
*sighs* I guess I’ve got to add -Wcast-align to COPTS globally on my sparc, do a full build’n’fix round. Developers just aren’t aware of these issues, and gcc on i386 can’t even reproduce these warnings with an extra option (say -fstrict-align, that’d be great).
Benny (who seems to be much too lazy to do any wlogging) has to cut off way too much content from his talk. He said he needed 1:06 hrs and didn’t even mention everything… too bad, it really was great stuff.
My SPARC is building XFree86® for the umptieth time, but I still expect it to finish cleanly this time. We nuked all the cropped fonts, will only install the full Unicode fonts now (needs some more RAM, but less overall as you need some of them anyway, and reduces build time); on very low-mem systems you would want to build your own font subset anyway.
I invited the XFree86® developers to FrOSCon – all two of them – but it looks like they can’t come. Too bad.
I started writing “I’m” instead of “I'm” – typographically better, much better in fixed-misc font even, but drives people crazy (and away from OS without Unicode support such as OpenBSD and most Linuxes), funny. Oh, and swishy, our IRC Kiwi, is using my keyboard layout now too. Strike!
With MirOS BSD #10 we’ll release mksh R31, no big deal. It needs tests, just like the sparc port, so please check it out of CVS and test it.
We also spotted some bugs in the ports infrastructure again (better pre than post release ☺) and I fixed the problem that COPTS were passed twice in imake(1) build environments.
Finally weekend, I’m so happy. Benny today finished the slides for that autotools presentation he’s going to hold at FrOSCon, 42 in total (wonder why…) and is happy about the weekend too. Open source developers should – in my opinion – get two hours a day off work to hack. (But I can’t really complain, I’m off quite well with my company. Thanks to my bosses, if you should happen to read this.)
Benny is also trying to upgrade the www/firesomething (Iceweasel) port. Apparently with success. I still don’t like applications that use glib2 – even though I probably will need one, as I might be switching to mcabber, from centericq; I dropped all ICQ/Yahoo!/MSN contacts tonight.
Oh yeah. FreeWRT. Zaurus/Ångström. Kernel modules. Packages. Linux JUST SUCKS, get it. Things I take for granted just aren’t in there yet – worse is that most of them won’t make it in since it’s a bunch of packages from many authors, contributed with “here’s my code, please add it, have fun – and someone should write the docs”. Sometimes, Theo is right. He’s also a lot of right (can I say that?) regarding open source’d (what a word…) NIC drivers from vendors, compared with getting specs and hardware and coding one’s own drivers. Vendors suck. More than Theo, at least.
Compared to other operating systems out there, we still suck least.
There are days you just want to go back to bed. This is one of them and I’m beginning to hate my 42½ hour working weeks again.
Lynx is buggy, trying to convery my nicely working solutions to kludges around broken GnuTLS (with no reason to exist), since the latter does not support even some basic OpenSSL function calls, and they have to autofool for it. Guess who’s going to fix that? Okay, I already did, so…
Due to my recent ability to compile CacheWolf with gcj, it’s not in base again. Yeah, call me selfish, it is nothing new. Anyway, it won’t hurt since it’ll reside in the “ada” set which almost nobody installs, and isn’t selected by default either. Also, it’s i386 only (quelle surprise). Maybe someone can make use of it. gcj’s also enough for university students’ needs (except that gij is broken). I recall Benny telling me that boehm-gc with threads wo’t work; gcj uses it and seems to work relatively stable. Java™ still sucks, especially if you have two different line ending conventions in a windows-1252 encoded file and the docs are in the same charset except for some UTF-8+BOM…
Today was quite the nice day. After sleeping long I started my day with
style: chilly, having a coffee, and booting my cell phone, which I turned
off during the night because I phoned the battery empty last evening… wbx
called me, came over later (after some mksh(1) hackery: set -o arc4random
was added), and we went geocacheing again. And hacking. The SPARC build’s
complete, Ewe (that single-threaded embedded VM for Java™ which CacheWolf
uses, that’s the application Dr. Pfeffer likes to use for geocacheing and
I’d even use as a GPS navigator…) works natively on MirBSD – what more do
I want? (Ok, I could think of some things, but I’m happy nevertheless.) I
face bad future though: we infected wbx@ with the gc virus, so he’ll make
me port X11 to FreeWRT to use it on the OpenMoko with his nokernel target
I guess. *sigh*
Oh well, I can use his Zaurus in exchange then; that beast at least has longer-lasting batteries than my notebook.
I've uploaded the snapshot to /MirOS/current/sparc/ (the older one is archived at sparc9), but did not announce it yet, because we need to have some more persons actually test it and report success for especially the vt100 wscons change. The floppy image is probably going to die though, and installboot doesn’t like the miniroot (yet).
I didn't get to hack today, plus I slept too much (06:00 ‥ 18:00), thus missed some of the day (did not expect it to be sunny tho) and was tired. To add insult to injury, when having diner in the city some freak thought it would be nice to flatten my bike tyre. I had to walk back, and arrived home at about midnight. I guess it's reading idly for tonight, maybe that hacking mood will get back some other day. I've discussed nmeadecode – or rather the idea for it – with some friends now and like it more and more, as most of them do. Still have to discuss it with Pfeffer.
I just built gcj on odem (still works, yay), took much over an hour, at 1 GHz even, and will try to build CacheWolf with it (can become developer then) to create a jar (for sunjdk or so, just to verify) or compile a jar (official one, or one built myself if possible) to a native executable to use instead of ewe with compat_linux(8). If that works, I'll build gcj on wbx@'s Zaurus, even if it takes a week or so. Cross fingers for me.
Seems as if ciruZ likes the geocacheing concept. Oh wonder…