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 32 33 34 35

FOSDEM was a blast!

13.02.2011 by tg@

I just need to work more on bilocality. While I did find two geocaches, one at the South/Noon Train Station (taalverwarringen…), one in the buurt of the University, I did manage to miss the AW building completely and utterly. Wow. Except, that Haiku guy came over to talk for a bit (nice). And I drew. An Atari logo with swirl, for that weird stuff I recently have been found doing.

More mksh-current news coming soon, stay tuned. In the meanwhile, I met bonsaikitten IRL (at FOSDEM, yes, too) who kindly made a “live ebuild”, i.e. a source package building -current.

Finally let’s say a big thank you to the person mostly manning our booth, gecko2, and to Benny for talking to people, getting That Other Packaging Thingy working, and pimping the website a bit.

On SecureAPT

25.01.2011 by tg@
Tags: debian rant

Dear Opera Software A.S.A.

It’s nice that you employ SecureAPT for your package repository, however, the effect is slightly lost by you replacing the key each year, never signing any of them, and putting them up on an http but not https site.

Update 18.08.2011 – please refrain from putting a file /etc/apt/sources.d/opera.list inside your binary DEB packages, as well. As a system administrator, we may very well have mirrored the binary packages, and do not want accesses to external APT repos, for a shitload of reasons. Honestly. (Lintian could warn about it…)

If you don’t get the message, please contact me. Or any of my fellow Debian Developers. Thank you very much.

I’ve just prepared an ISO for FOSDEM Ⅺ which we might export on BitTorrent soon. Benny has provided an upgraded desktop background image, thanks.

The next mksh release… well I’ll bite the sour apple and will release it without associative arrays but hope I get around to hack a few things (especially the read and sleep builtins) before releasing. One lession learned, don’t brag with oh-so-big plans when you haven’t got a deliverable yet. Real Life will interfere. Oh, and Murphy, of course. (mksh R41 might have the associative arrays then. But mksh-current has ${foo@#} which is hash($foo).

tl;dr: New Evolvis release, scmgit plugin, bidirectional merge with FusionForge 5.1; committing tarent features back to Mediawiki and Mailman packaging in Debian; Fairtrade Software

tarent GmbH now offers both git and Subversion as Source Code Management systems in their Evolvis platform.

The scmsvn plugin of EvolvisForge was amended with the scmgit plugin, backported from a newer FusionForge release, while work to upgrade the main forge code to the soon-to-be-released FusionForge is ongoing in parallel. Of course, most features, such as commit mails (in git, they’re really sent out after a “git push” from the developer), are already available for both; others will follow after the code base upgrade for simplicity. Already, git repositories can be used for all regular tasks – although it’s currently not possible to have both git and svn repositories in a project.

During the migration (as well as regular development), many features of Evolvis will show up in regular FusionForge to benefit the broad community of Forge users, courtesy of the Open Source policy of tarent GmbH, who has contracted the FusionForge project leader to improve both projects, following the mantra of “Fairtrade Software”.

Among other changes, the SOAP WSDL has been corrected and is now versioned, and other areas (especially the Tasks and Tracker) have been improved.

There’s a release announcement of the new version at Evolvis, in case you want to know the details.

Finally, an Evolvis developer has set foot not only in the Mediawiki packaging team at Debian but also the Mailman packaging team. Expect many, if not all, improvements to show up there within some time.

Did you know that Hudson is now called Jenkins? This is a change in name only, due to trademark concerns, but rest assured the Evolvis platform will continue to offer Continuous Integration in a usable fashion, no matter the technology behind (there was Continuum, now Hudson, soon Jenkins).

In our evergoing quest to improve the Evolvis platform, we wish you a pleasant user and developer experience!
//The Evolvis team

FOSDEM, the Free and Open Source Software Developers' European Meeting

❧ Who’s not? ☺ Same procedure as every year.

(okay, lolando prefers skiïng but…)

Anyway. A cow‐orker told me that Belgium again/still has no gouvernment, and they have been asked to grow out their beards until they do. I found “evidence” on the ’net but won’t link it here, also it’s on German… anyway. Let’s all join in. (Besides, I now have an excuse to not shave, maybe even my grandmother will accept this one…)

RT said on IRC that mksh will probably work on MSYS.

My Debian/m68k stuff is coming around nicely, but I still haven’t gotten around to do everything planned, plus I need to grow a new kernel and eglibc, after the latest uploads, and the 2.6.37 based one panics. Also I’ve got to take care to not overwork myself. (And make a MirBSD ISO for FOSDEM.) But hey, it’s been not working for some time and better now. And slow anyway ☺ yet we’re progressing. Does anyone know how to debug that a C programme only calling res_init(3) segfaults?

Benny is apparently not just working on making NetBSD® pkgsrc® available on MirOS BSD (picking up my work from 4+ years ago) but also replacing The MirPorts Framework with it. Sad, as I got a request for a gajim MirPort over a cocktail just this evening…

27C3 brought significant advancements in pkgsrc support for MirOS BSD. I am in contact with a NetBSD developer, who is favourable to including the patch upstream in pkgsrc. For them, there are two parts for this: (a) the mere addition of a "MirBSD" stanza, which is unproblematic, and (b) other code changes, which need more review. Note that pkgsrc is currently frozen before the 2010Q4 release, so our patches will likely be deferred until after the freeze.

If you would like the current patches, which are still in a bit of a rough shape, here is how to use it:

  1. Make sure there are no mentions of MirPorts in your current environment. Most importantly, remove /usr/mpkg/bin and /usr/mpkg/sbin from your PATH. This is needed when building or installing packages; the reason is that the package tools from MirPorts and pkgsrc have the same name but are incompatible with each other.
  2. Check out pkgsrc, for example to /usr/pkgsrc:
    cvs -qd anoncvs@anoncvs.netbsd.org:/cvsroot co -P pkgsrc
  3. To be sure that the patches will apply, downgrade the patched directories:
    cd pkgsrc
    cvs -q up -Pd -D2010-12-27 bootstrap devel/{bmake,libtool*} lang/perl5 mk
  4. Apply pkgsrc-bootstrap.diff, then pkgsrc-libtool-miros.diff:
    cat pkgsrc-bootstrap.diff pkgsrc-libtool-miros.diff | patch -p0
  5. Check that there are no rejected patches:
    find . -name "*.rej"
    should give no results.
  6. Bootstrap pkgsrc. In this example, we install (using sudo) into /usr/pkg. The dbdir should be inside the prefix to avoid conflicts with MirPorts.
    cd bootstrap
    ./bootstrap --prefix /usr/pkg --pkgdbdir /usr/pkg/db
  7. Add /usr/pkg/bin and /usr/pkg/sbin to your path:
    export PATH=/usr/pkg/bin:${PATH}:/usr/pkg/sbin
  8. I recommend to install perl first because it is needed by many other packages and because it needs a workaround at the moment:
    cd ../lang/perl5
    bmake install && cd /usr/pkg/lib && ln perl5/5.12.0/*/CORE/libperl.so.* .

You can now use pkgsrc to build whatever you like. Please test this procedure and report whether it works for you.

pkgsrc on MirOS

11.12.2010 by bsiegert@

Like we decided on FrOSCon this august, I restarted work on getting pkgsrc working again and then, on adding support for MirOS BSD to pkgsrc upstream. The thing is, while our MirPorts infrastructure is, in my opinion, outstanding, many of the ports themselves are highly out of date. Having pkgsrc would free us from the burden of maintaining thousands of ports ourselves. Many of the technical arguments that had originally been brought up against pkgsrc (such as missing support for "faking") have been addressed in the last few years.

As a first step, I applied Thorsten's old diff against the pkgsrc-2006Q4 stable branch, which was created shortly after the diff had been made. Next, I am porting these changes to a current pkgsrc branch in order to get them integrated. However, this will involve porting libtool 2 to MirOS, as newer pkgsrc versions only use this version. Wish me luck :).

I will be on 27C3 in Berlin from December 27 to 30, even though tg@ will not.

When doing porter uploads, one must not forget to pass -m"My Name <my@email.addr>" to dpkg-buildpackage, e.g. with --debbuildopts for cowbuilder. Thanks Aurélien and sorry to everyone who got the upload mails.

(How are the rules for sponsored uploads? I get conflicting info on these, and indeed, the one I sponsored never showed up on my QA DDPO page…)

I’m almost finished with “sort of re-bootstrapping” Debian/m68k (I can use etch-m68k as well as what was in unstable at the moment as dependencies, so it was not that much, still, 305 binary packages build from 84 source packages, most for unstable (very few for unreleased, with very responsive maintainers, thanks all, who will include the patches in their next uploads) is a bit… including rebuilds with newer versions, more patches, more testing or newer dependencies installed. I’ll probably upload on Sunday evening, as I’ll be off for 2-4 days at least from then (see below). Ingo tried to test on real hardware, but as Murphy wants a hard disc failed… we’ll still try to get something done over the weekend. If you want to have a look, see my repository index (sources.txt contains a sample sources.list file, 0-NOTE.txt some hints, including the right debootstrap/cowbuilder magic and speed tricks). I’ll need to learn how to use LVM and set up a buildd now…

I’ve not been in much of a hacking mood recently – all these visits to the dentist leave me in unrest and disturb my equilibrium. Hence, not much activity even in mksh even if there was need, almost none in MirBSD. This is only temporary, but I won’t attend OpenRheinRuhr, or, if I come at all, it’ll be for socialising only and probably only one day. Benny’s done with his Doctor (in France, no idea whether it’s one in Germany as well) of Chemistry and has returned to hacking some (World of) Google-Go(o) code. I expect MirBSD activity to slowly raise once we can come back. Please accept our apologies.

I’m currently working on something which will eventually amount to a re-bootstrapping of sorts of the Debian/m68k (Linux) port – patches to the Linux kernel, gcc, etc. are prepared (some have been accepted into upstream or the packages already). I will probably have more, once the compile processes finish, anyway (even emulated, it’s slow).

I think that, once I get past that TLS (thread-local storage, needed by eglibc) migration, I will try to find out a list of packages needed for debootstrap (AFAICT: all packages marked Essential, or of priority important, and all marked Build-Essential (for the *-builder variant), and their dependencies (although I’ll substitute sysv-rc with file-rc, which is better and needs less deps)) and pull arch:all from sid, then build the rest myself using a consistent snapshot of sid possibly with patches going to unreleased. Then I can use cowbuilder to make cleaner packages, which can eventually be uploaded (once I get enough to get a buildd running – kernel, bootloader, etc) – binNMUs are way to go here I suppose. I will only upload once it’s self-hosted, installable (seen by edos-debcheck), clean, etc. (i.e. I’ll rebuild all binaries) and probably keep a bootstrap repo around (until m68k caught up) so that unstable (possibly amended by unreleased for a while) will not again become uninstallable, e.g. if arch:all packages change their dependencies (Python, gcc-defaults are some I’ve seen). That bootstrap repository is needed anyway because debootstrap can’t install from two separate repositories (unstable+unreleased for example).

Progress is slow because I try to keep as close to official packages as possible, refuse to cross-compile, and try to produce uploadable if possible packages all the time. Getting patches into packages, so that I can build from unstable, instead of debian-ports.org unreleased, has proven time-consuming and occasionally frustrating as well. Although I would like to thank the people who helped me on the way already. (I am not naming any in fear of forgetting some, but you know who you are ☺) They are among the Debian (gcc, kernel, m68k) and Linux-68k crowd.

(Why does genattrtab in gcc-4.4 take 3½ hours when it took less than half an hour in gcc-4.3 anyway?)

I’m also still working on mksh and some Python ISO hacks for mika and some minor stuff, and further cleaning up MirBSD.

Well, did I mention dentists are sadists?

Minor annoyances, BitTorrent trackers; construction work finished

26.09.2010 by tg@
Tags: news rant release security snapshot

openbittorrent.com has, apparently, bitten the dust as well. Oh the joy. DHT to the rescue, over the last few days, for those who could do it. I’m now running bttrack.py, yes the original, on eurynome and have (again) reannounced this project’s torrents. Please download the *.torrent files again. And don’t bother asking, I’m not running a public tracker. Clarification: The content is unchanged, only the torrent metafile has changed!

The updated CVS and new RNG code seem to behave well; I also fixed old bugs in the process. I will probably update our main server within some foreseeable future (this would be the ideal time to push out a snapshot again as well, even if it’s “just” netinstall).

People have shown interest in my djbdns patches. Consider forking, even putting it into the base system. I need to solve the problem of the remaining non-v4-transport-capable v6-transport binaries though, I think only dnscachet6 is remaining, so we’ll get only one set of binaries again. Also look for SRV RR patches. I wonder whether someone will code DNSSEC support…

The msdosfs LFN code is also still on my TODO, as are some other things. But hey, at least there’s movement; even Benny, despite being offline, unreachable by phone, etc. commits Google-Goo code. (Hi!)

mksh currently is being reviewed by the Android Security team, who like it on a first look. I’ve already addresses the first concerns even. I might release R39d soonish, also because I’d like a stable release before going on to associative, and since it’s easier to do than prohibit, multidimensional arrays – which have been welcomed in #ksh already…

You might want to update src/sys/net/netisr.h if running #10-stable, or upgrade to the latest kernel. I ran dieharder, and the results look good. The latest RNG subsystem pulls from many more sources and mixes better; I’ll summarise it later probably.

I’m currently working on two very important subsystems to MirBSD: the entropy subsystem arc4random(3), arandom(4), arc4random(9); the cvs(GNU) implementation. That’s why it’s extremely encouraged to not update to -rHEAD right now.

The entropy subsystem receives completely – except arc4random_uniform(3) – rewritten arcfour and arc4random* code (userspace already done) including quite a speedup, and a new structure of the kernel pools and how they interact (also for speedup, but better hashing as well).

Our GNU CVS implementation has received a number of patches from Debian’s, and not only did I synchronise the port with base again, but also created I an (unofficial) “WTF” *.deb package from it, since Debian’s has, as we discovered years ago, some broken (but hey, ISO compliant!) date format.

I’d suggest let me finish doing, unbreaking ;-) and testing it.

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 32 33 34 35

MirOS Logo