- Bitcoin now accepted!
- Flattery will get you everything.
- Raising funds for Haiku through Goodsearch
- Debugger: Overview of New Features
- ASLR and DEP implemented
- Package Management: Building Things
- Package Management: The New Season Starts
- NFSv4 client finally merged
- Update 2: Contracts for Package Management
- Google Code-In 2012 Haiku Wrap Up Report
Obligatory BeGeistert Report
I'm in the TGV back to Valence on wednesday, which luckily has many power plugs, unlike the Thalys which has wifi but no plug for those battery-drained guys like me. It's 21:30 as I start writing this. Will take some more days to finish though...
Not there yet
But first things first, after attending a meeting on Friday in Grenoble, I headed back to Valence to leave some stuff there, then back to the train station, where my train got delayed by an hour or so. But the other frenchies I was to share a car with were also a bit late, so they didn't have to wait for me too much. We then took the road to Düsseldorf and started to talk about each others work, and GSoC since we had two of the students on board.
On a night like this...
After a long digression about the evilness of Flash™ and non-websites, we talked about the state of the localization project, its integration into all applications and the need to pair it with the layout API, and the progress of the Webkit port. Interestingly, Webkit itself has a plugin-based framework for image loading, quite like our Translation Kit, but possibly even more powerful, so there were concerns about either bypassing it to the Translation Kit, or making a Translation Kit plugin as fall-back, or just leave it alone. Probably we can take ideas out of it to improve our Translation Kit. Then the two at the back of the car snooze a bit (guess where I was), while the drivers hopefully didn't.
When we arrived at 6 am, we registered at the office and got some keys, but when we entered the room we disturbed some asleep girls, so we quietly backed up and gave the keys back. We tried other keys but also found long blond hair in the beds, so we decided to just have a sit until the sunrise. We talked about FTTH and geopolitical topics for a change.
We enjoyed a nice german breakfast and headed for the room. Most of the attendees arrived during the morning, and by noon all the seats of the room were taken. René (aka Deadyak) couldn't bring his BeBox this time, but he brought himself which was really nice cause I didn't see him in a while. So did some others who were enticed by the alpha release into getting back on the BeGeistert experience, like Jonas, or Daniel (DaaT) who likely missed watching the sheeps from the river shore! Frenchies were quite present, and Italians as well.
The French team started to look at an issue with the marvell_yukon driver which only worked for a few hundred kB before halting transfers. We tried to eliminate possible IRQ sharing bugs from other drivers, but the problems was still present without other drivers hooked up.
Santa Claus was here in disguise, and handed me a nice black and green box, containing a Neo FreeRunner as another incentive to the ARM port... He also had a new card for Rudolf to play with. Quite early he was this year ;-)
Then I took upon myself to fix the ARM and 68k builds, after Axel's breakage two days before. Others continued to commit fixes and other cleanups.
Despite being on the other side of earth, Christof Lutteroth managed to do a remote presentation of the Auckland Layout Model. I must admit I got lost near the end due to lack of sleep, but luckily the PDF of the presentation is available, and even some sample code.
Maxime detailed his GSoC work on the Webkit port and asked for more hands, and Adrien talked about what he did on the Locale Kit as part of GSoC which is already in svn. Both wore the blue t-shirt for this year's edition, while I left mine for Sunday and instead had the white shirt from the Thank You Award. I didn't talk about the ARM port, as I didn't have much more to show than what was already published, but likely next time I'll have more for your eyes.
Then Charlie required an update on the work done since the last BeGeistert, which of course included the alpha release, for which I brought a bottle of Clairette de Die to celebrate, so we opened it and filled some glasses, not everyone had one, but at least it made a nice picture.
Since I also brought a cold with me (it's starting to be a tradition, really), and I wanted to get some work done, I went downstairs with Marcus and ordered a pizza at the bar, which wasn't too bad. Most others went out for dinner. We pondered about watching a movie but as always work took over.
Nicholas had an extensive talk about the so-called "distro guidelines" which not everyone agreed on the definition and targets. Maybe the word "distro" should be avoided, as it actually implies we'd favor distros, while it's not the will of most developers.
Then Colin used rather unusual support for his talk on the wifi stack, which despite a dubious choice for implementation (Flash...) is an interesting concept. As he explained, he has ported wifi stack from BSD, but has to design an object oriented one as part of his master thesis, so it's not the definitive one yet. The current focus for development was to get more drivers integrated.
Stephan and Jan gave a C++ introduction tutorial, I didn't attend but it seems to have been very much appreciated as the proposed tutorial day for next edition is already fully booked. Meanwhile there were some more build breakage to fix.
We moved to a smaller room after everyone else left. Alexandre arrived just in time for the distro talk, which lasted several hours, some of us swapping in and out to do other stuff, and kinda reflected the profusion of thoughs that appeared on the mailing list. We wrote down the list of features we wanted from a package manager, to get the ball rolling.
Meanwhile I fixed the BeOS port of XEmacs with the current source tree from mercurial, and managed to build and run it from Haiku, which was a first since the BeOS binary doesn't run due to the brain dead "unexec/dump" thing of the build process, which involves starting a first binary to load a bunch of lisp files, and dump the resulting process to a cache file to speed up normal runs, which of course hardcodes pointers to stuff, which on Haiku ends up pointing into kernel space since the kernel/user split was reversed back from BeOS R5. It still has some issues, which are not present on ZETA, so likely shows bugs in the Haiku App and Interface Kits.
On Monday I started running svn cleanup on my laptop, because after deciding to svn switch my BFS-hosted source tree to the new server, and trying it from the recently installed Haiku R1/alpha, I spent 4 hours waiting for it do finish silently converting the working copy to the new format which of course isn't readable from ZETA anymore, and then an svn up crashed in the middle. So I spent some more hours running this to remove all locks in the local copy. Then I tried to svn up again, which crashes again. It seems the recent svn:keyword issues had put my local copy in a really strange state...
Oliver eventually put an end to the svn:keywords issue on the repository.
I continued my svn up loops, but also started checking out some stuff to port, like the pciutils (Linux' lspci) which isn't very useful to most of us since we have listdev but can still help driver writers by providing more informations. I extracted a test code from the XEmacs port to pinpoint a deadlock in BApplication::Quit() when the object is not Run() from the main thread.
Another project I worked on this week was IM Kit. After fixing the ZETA build, I still had issues trying to get newly created accounts for the various protocols to be saved and used, I decided to try and build from Haiku. Apart the yahoo add-on all built, with some help, and I even managed to get it to connect and talk to Bruno (BGA) via gtalk. It seems my commits cought attention of the other devs on the projects who committed new code as well.
Oliver who was sitting next to me worked on the BTextView display code to fix wrapping and other glitches. Stephan continued his Media Kit and MediaPlayer fixes and enhancements, trying to get 5.1 audio played, while Axel and Michael chased bugs without mercy.
I committed some new shortcuts to go along the Ctrl-Alt-arrows taken from the Gnome desktop, that is the same ones with Shift held would also move the window to the workspace it's switching to, and fixed some shortcut issues on VNCViewer but it would still need attention. Talking about windows, we also had to play with the automated blinds of the room that kept on rising or descending randomly, to keep it from cutting us from the outside light.
I also kept up on checking out new stuff to port, like fish or xpilot (which I did port to BONE long ago but it still required X11), though most missed some stuff from autofools, er hmm, autotools (like SDL aclocal macros). I also looked at the libusb port I never finished, and it seems the newer version was rewritten from scratch, hopefully more portable, but it seems it will require some more support from the usb_raw driver to handle asynchronous requests.
During the week we also got some screenshots of the upcoming Qt port, which seems quite advanced already.
I continued to svn up and svn cleanup intermittently, trying to update only parts to make the cleanup faster... hopefully I'll get a full checkout someday to build a newer version.
It was also discussed and unanimously voted that Brecht would be granted commit access, also because he was present at the sprint. His first commit raised some warnings from the coding style police, but well, who doesn't get some ?
Since I did many source checkouts those two days, I decided I would make it more user friendly, so I wrote a small application to do exactly this, which handles the git: and soon svn: urls in hyperlinks from your web browser, opens a file panel to ask where you want it, runs the SCM client in a Terminal, and opens the result in Tracker. Check it out ;-)
By the way, it was even my first commit from Haiku!
I had to leave after lunch to get my train, and despite Oliver lending me 20 cents I still missed 10 cents for the tram so had to walk a bit to the next cash dispenser. I eventually made it, and played with the FreeRunner which had more battery than my laptop, and I even managed to crash the session. ;-)
As I noticed, there were many commits from Germany the next days from the others, so I suppose they were still having fun.
This was a very exciting event as always, and even more because of all the known faces reappearing, and the new ones of course. I heard the next edition is nicknamed "The return of the Cola-Coder", who indeed was missed this time, likely it will be interesting too. I didn't do all I had on my list as always, but now I even have more to add to it! I also need to prepare for the upcoming Alchimie 2k9, where I will be showing up the R1/alpha features (but not the bugs hopefully). Also, the booth registration for FOSDEM are now open, so if you feel like helping in February don't hesitate to tell!