Archive for the 'Debian' Category

05
May
08

Tension in Debian changelogs

Holger Levsen wonders what tense people write their changelogs in. Andrew Pollock feels that his tendancy is past-tense.

Looking back over some of mine, FreeRADIUS from a long time ago, and openjpeg more recently, it appears that my preference is to actually write them as untensed fragments. I think I’m answering the question “What does this change do?” from the perspective of the change. This would make sense, mirroring somewhat the comments I put in dpatches (and the overly verbose names that have been known to occur) which are usually the patch talking about itself in the plural. Unless that’s the patch _and_ I talking about ourselves in the plural?

28
Jan
08

First rule of karma: You don't talk about karma

OK, so I made it to LCA08 in Melbourne, eventually.

However, I managed to have the following happen on the way:

  • Got the time of my flight to Melbourne wrong, arrived at 5:30pm for a flight that left at 5pm.
  • Caught the wrong tram from Melbourne CBD to uni accomodation, had to walk from Royal Melbourne Hospital back to the university. This was precipitated by me misreading the tram t
    imetable thingy.
  • Failed to wave at a traim outside the uni, meaning it sailed right on past me.
  • Locked myself out of my room, the third time I left it. (They’ve got those dumb swipe-card locks which are always locked except when you’ve just swiped from the outside, but are open from the inside.)
  • Asked on #linux.conf.au about the URL for Planet LCA 2008 while it was in the topic. (Unlike on #debian, not only was I not mocked for this, no one noticed before I did, a while later)

On the other hand, I caught up with Brad, Evelyn, Bek, Jason, Phil, Naoko, Geoff and Ange, all in the one day. That was fun, we had dinner, I stuck my sore feet in the ocean and felt better, and I manged to catch the right trams from the university _to_ the city. Well, lunch with Naoko, the rest with the others. (Actually, that’s in reverse chronological order)

The actual conference first day was interesting. I was at the Debian Mini-conf all day, seeing a neat thing about using git for managing packges sensibly, which is something I was trying to figure out when I was packaging Second Life last year, as well as some cool stuff coming into Debian over the next year or so.

After the Debian Mini-conf all went over to the keysigning (I didn’t go again this year, I wasn’t organised in time) I went to see a presentation about Ingex which is something the BBC have developed to try and take Digital Betamax out of the video production process (since Digital Betamax only works in real-time, as I understand it) with some success so far, and it’s pretty interesting.

Speaking of not being organised in time, I only thought today to look at the Tutorials, and both Wednesday’s tutorial about hooking up hardware to Second Life and Thursday’s tutorial about hacking on lguest require preperation. I was able to grab Jon Oxer at the Debian Mini-conf and get my name put on the one remaining spare development kit, and so now I’m down in the Junior Common Room of Trinity College (no wireless in the rooms yet) updating my blog instead of trying to get lguest running under qemu. I’ll have to go dig up Rusty’s and Robert Love’s instructions from LCA05 preparing for their kernel hacking tutorial that year. Wow. Archiving the old LCA websites kicks ass!

Edit: I actually was dumb on #linux.conf.au, not #debian. As an aside, I managed to lock myself out of my room again later that week.

24
Jan
08

It takes surprisingly little bad karma to get a good karma payout

Good news! Having worked for most of the traditional Christmas break, I’m now going to to linux.conf.au 08 in Melbourne next week, and Game Developers Conference 2008 in San Francisco in late February.

CAPSLOCK CANNOT EXPRESS MY GIRLY DELIGHT

For those of you who don’t already realise, my dream job since age six was to be a video games programmer. Having now achieved that, you’d figure I was now in for karmic mortgage payments for a while. And sure enough, having an umbilical hernia become quite painful on Friday night, 28th of December (I was working that day) would certainly seem to be within reach. I’d actually had the hernia for a couple of months, I reckon, but hadn’t known what it was or what to do with it. (I thought I was just getting fatter. -_-) Anyway, a mix of mentos, Coca-cola, lifting a heavy TV that week and who knows what else ended up with me spending the night in hospital on morphine. (Well, I dunno if I was on morphine all night. They gave me some) Thankfully, the surgeon registrar was able to push the bits of bowels sticking out back in (before the morphine. -_-) without problem, and no problems appeared overnight, so I’m now waiting for the letter to let me join the waiting list for surgery, and occasionally stopping to push bits of my bowel back through my belly-button.

This means I’m no longer a hospital virgin (not that I really was. I went to hospital when I was three years old or so, to get my forehead stitched up after falling off the wall above our driveway in Oyster Bay, Sydney) but it was a scare that I wouldn’t be able to go to LCA this year, having already booked and paid for it, and LCA being my main actual holiday each year.

Also, it was lucky my sister was in town, since when I told her where and how it hurt, her mind went straight to hernia, so she and my mother came over to check me out and took me to hospital, hours earlier than I would have gone myself.

Anyway, early last week I saw the surgeon consultant, and he said I’d be fine to travel, since the surgery was fairly far off in the future anyway (“several months” I believe) and as long as I don’t put sustained lateral strain on my abdomen, I’ll be fine.

He also said to lose weight, of course.

So yeah, I reckon that the hernia prolly balances out LCA, GDC, my job, and maybe even my paying off of the ATO this year. I hope the universe agrees, ’cause if I’m still in the red for those good things, I’ll have to be sure to backup my new laptop before I travel.

01
Mar
07

Miam: It's French for leaving a bad taste in your mouth

(Side note: Due to 410549, some kind of PHP4/Apache2 bug in Debian/Stable that WordPress 2.1 has triggered, this site’s not loading fully. It’s apparently only happening on Debian, and upgrading PHP4 to the Dotdeb 4.4 build fixes it, apparently. >_<)

Anyway, here’s an entry in my “Why everything that isn’t apt sucks” category.

[root@bookcase ~]# yum info kernel-2.6.19-1.2911.fc6.i686 kernel-devel-2.6.19-1.2911.fc6.i686
Loading "installonlyn" plugin
Setting up repositories
Reading repository metadata in from local files
Available Packages
Name   : kernel
Arch   : i686
Version: 2.6.19
Release: 1.2911.fc6
Size   : 16 M
Repo   : updates
Summary: The Linux kernel (the core of the Linux operating system)
Description:
The kernel package contains the Linux kernel (vmlinuz), the core of any
Linux operating system.  The kernel handles the basic functions
of the operating system:  memory allocation, process allocation, device
input and output, etc.


Name   : kernel-devel
Arch   : i686
Version: 2.6.19
Release: 1.2911.fc6
Size   : 4.7 M
Repo   : updates
Summary: Development package for building kernel modules to match the kernel.
Description:
This package provides kernel headers and makefiles sufficient to build modules
against the kernel package.

[root@bookcase ~]# yum install kernel-2.6.19-1.2911.fc6.i686 kernel-devel-2.6.19-1.2911.fc6.i686
Loading "installonlyn" plugin
Setting up Install Process
Setting up repositories
Reading repository metadata in from local files
Parsing package install arguments
Resolving Dependencies
--> Populating transaction set with selected packages. Please wait.
---> Package kernel-devel.i686 0:2.6.19-1.2911.fc6 set to be installed
--> Running transaction check
--> Populating transaction set with selected packages. Please wait.
---> Package kernel-devel.i686 0:2.6.18-1.2798.fc6 set to be erased
--> Running transaction check

Dependencies Resolved

=============================================================================
 Package                 Arch       Version          Repository        Size
=============================================================================
Installing:
 kernel-devel            i686       2.6.19-1.2911.fc6  updates           4.7 M
Removing:
 kernel-devel            i686       2.6.18-1.2798.fc6  installed          14 M

Transaction Summary
=============================================================================
Install      1 Package(s)
Update       0 Package(s)
Remove       1 Package(s)

Total download size: 4.7 M
Is this ok [y/N]: Y
Downloading Packages:
(1/1): kernel-devel-2.6.1 100% |=========================| 4.7 MB    00:21
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
  Installing: kernel-devel                 ######################### [1/2]
  Cleanup   : kernel-devel                 ######################### [2/2]

Removed: kernel-devel.i686 0:2.6.18-1.2798.fc6
Installed: kernel-devel.i686 0:2.6.19-1.2911.fc6
Complete!
[root@bookcase ~]# yum install kernel-2.6.19-1.2911.fc6.i686
Loading "installonlyn" plugin
Setting up Install Process
Setting up repositories
Reading repository metadata in from local files
Parsing package install arguments
Nothing to do
[root@bookcase ~]# rpm -q kernel-2.6.19-1.2911.fc6.i686
package kernel-2.6.19-1.2911.fc6.i686 is not installed
[root@bookcase ~]# wget http://mirror.aarnet.edu.au/pub/fedora/linux/core/updates/6/i386/kernel-2.6.19-1.2911.fc6.i686.rpm
...
11:36:50 (141 KB/s) - `kernel-2.6.19-1.2911.fc6.i686.rpm' saved [17169362/17169362]
[root@bookcase ~]# rpm -i kernel-2.6.19-1.2911.fc6.i686.rpm
[root@bookcase ~]# rpm -q kernel-2.6.19-1.2911.fc6.i686
kernel-2.6.19-1.2911.fc6
[root@bookcase ~]# yum info kernel-2.6.19-1.2911.fc6.i686 kernel-devel-2.6.19-1.2911.fc6.i686
Loading "installonlyn" plugin
Setting up repositories
Reading repository metadata in from local files
Installed Packages
Name   : kernel
Arch   : i686
Version: 2.6.19
Release: 1.2911.fc6
Size   : 46 M
Repo   : installed
Summary: The Linux kernel (the core of the Linux operating system)

Description:
The kernel package contains the Linux kernel (vmlinuz), the core of any
Linux operating system.  The kernel handles the basic functions
of the operating system:  memory allocation, process allocation, device
input and output, etc.


Name   : kernel-devel
Arch   : i686
Version: 2.6.19
Release: 1.2911.fc6
Size   : 14 M
Repo   : installed
Summary: Development package for building kernel modules to match the kernel.

Description:
This package provides kernel headers and makefiles sufficient to build modules
against the kernel package.

This all started when I tried to build a kernel module for the default Fedora Core 6 kernel on a fileserver at MF, only to find that the version magic didn’t match, as I had an i586 kernel but i686 headers. No matter the cajoling, I couldn’t get it to install an i586 set of headers, or an i686 version of the running kernel. I gave in and figured that due to a security issue, the old 2.6.19 kernel had been retired and the new kernel (2911) was the only one in the repositories.

Which led me to try the above. Clearly, yum agrees there’s a kernel image RPM and kernel headers RPM available, both i686, but bizarrely is completely ignoring any requests to install it. And I mean ignoring, no error, no failure, it’s as if I haven’t listed the pacakge.

Sure enough, grabbing the RPM directly from the mirror and installing it with rpm worked fine.

And just to keep the hate flowing, the default setup of Yum is awful. There’s no Australian mirrors in the mirror rotation, so I was getting 20kB/s before thinking to take away its mirror list and force it to use mirror.aarnet and suddenly getting the full effect of our two-megabit-per-second link. And before I did that, if I changed my mind about an operation that was busy fetching things from the network, control-c would kill the fetcher, and yum would then proceed to try the next mirror in the list. The default installation contains a huge list of mirrors (fetched from the Fedora website) which now I look at it, does start with mirror.aarnet, although it also then tells me it couldn’t find any mirrors to match AU, despite having just given me one, and lists mirrors all over the shop. And it certainly never seemed to be using one when told to fetch something.

In Yum’s defense, I will say that it survived being backgrounded and kill -9d on several occations. ^_^

Speaking of changing mirrors, it doesn’t notice when you tell it to use a different mirror, and won’t invalidate its cached metadata, meaning it’ll reject the downloaded primary.xml.gz. When this happens, it still doesn’t clear its metadata, meaning if you try it again, it’ll fail again.

I feel better, having vented that. And I can hardly wait until we can whack this server and make it a nice Debian box, like all the rest of the systems in here (bar one FC4 box which only has one task, but happens to be in the DMZ…).

OK, one more thing. The Yum instructions say you can upgrade Fedora Core using Yum, but don’t. And it’ll only go one version at a time, and the box was an FC4 box in need of serious love. So I loved having to grab a four-gigabyte DVD to upgrade a server which is actually less than four gigabytes of system… It would have been quicker to image everything but our data, and FTP that to someone who already had the DVD. Except that it had to come back too. And it turned out to have, for a server, an incredible amount of crap on it. (I’ve this afternoon removed kde, gnome, metacity, cups, evolution, firefox…) This machine is Raided, backed up and was never ever going to be someone’s desktop machine. (I hope).

Although I now understand why there are people who want to upgrade Sarge to Etch, and start by downloading the 8-CD weekly Etch image. And in fact I had someone two weeks ago who was going to install Sarge, didn’t have a good Internet connection, and was asking if there was a better way than grabbing two DVD images.

In case you’re wondering, the kernel module I wanted to build was ppscsi, for a HP ScanJet 5100C. I wouldn’t have had this problem under Debian. ^_^

16
Jan
07

Reviewing Gnash

Just a quick note, Reviewing the Kanji uses a little flash applet for testing/reviewing flashcards. I’m pleased to announce that it works fine with Gnash 0.7.2 on my Debian/unstable PowerPC laptop. ^_^

16
Jan
07

Things to do in Sydney while the wireless is dead

Well, now that I’m back on the ‘net fairly reliably, I can post on what I’ve been doing for the past few days.

Firstly, I was off the Internet because I was flat-out busy on Saturday, in transit on Sunday, and wireless did not arrive at International House until about 11pm Monday night. That time I did spend on the ‘net today, at the conference, was spent in a combination of processing CBIT emails since Friday, and wrestling with my wireless network card.

My local build of the d80211 version of the bcm43xx driver got signal, would even get traffic through, but when it tried to reassociate to a different AP (all the APs here are running on channel 11… Although I was sitting next to someone who saw one on channel 1, which I’m guessing was rouge… I also saw some IBSS networks on the same SSID….) it would corrupt something nasty, kick the screen brightness up to full and oops with slab errors in short order.

The 2.6.18 (2.6.18-3-powerpc Debian build) bcm43xx softmac driver didn’t crash or anything, but generally performed worse, and when the Debian miniconf’s theatre (Mathews A) was full, my connection suffered or would completely fail to dhcp. >_<

On the plus side, the presentations were great. AJ gave us a rundown of debian-devel (ie 12 months of flamewars) and other significant Debian going-ons. Keith Packard produced a whole bunch of neat X things slated for X.org 7.3 (input hotplugging, dynamic output selection and modesetting, which is exactly what I need to get the projectors I keep plugging into to work better than 640×480…). Russell Coker talked about the various security gaps still remaining in Linux.

In non-conference goings on, I was talking to someone on IRC who’s gotten Second Life Viewer building under Linux/PowerPC (a previously unsupported platform) and I’m going to see if we can get a .deb built. I’ve already created an ELFIO package, and have the OpenJPEG source to try packaging tomorrow. I’ve also sent off an email to the person who ITP’d secondlife-client for Debian already, to see if he wants to co-operate, or if I’m just tooling about.

Speaking of tooling about, I decided it’d be a good idea to upgrade my bcm43xx-d80211 build to something more recent than mid December, but it seems the 2.6.20 workqueue changes mean I can’t compile it against 2.6.19 anymore. The rt2x00 d80211 stack has backwards compatibility macros for the workqueue stuff, but I don’t really feel like hacking those into bcm43xx, it’s already a large and unsteady beast.

BTW, cogito’s update could handle resuming better. Although it happily detected it was resuming a failed update, it had to keep refetching the packs. I eventually realised it would eventually time-out a fetch if I didn’t ^c it and happily try again, presuming I had in the meantime walked outside or reloaded the driver.

Anyway, so I’ve decided tonight (while I was still off the wireless) that I’d finally bite the bullet and build myself a custom dscape.git kernel, to see if the pain I keep suffering from the bcm43xx-d80211 driver is just my cheap-ass backport. That was still building when the wireless came up, and then barfed because KConfig happily let me include both the PCI and SoC versions of the OHCI USB host driver, which provide the same symbols. I must remember to file a bug report about that, or at least check linus’s git tree in case it’s already fixed. (Both drivers recommended yes, but are patently incompatible as they require different endianness of the host interface). I’ve restarted the make-kpkg, hopefully that’ll build overnight and I can try it in the morning.

I also put some time into my Remembering the Kanji book. I was going to do an hour, but after about a half-hour (with a break to configure and fire the kernel build off) I was yawning, and figured I’d prolly left the imaginative-memory zone. I was going to watch some Gokusen but thought I’d take a last wander over to the IH whiteboard to see if the wireless was up. Bizarrely, it was.

So I wandered onto the ‘net, checked email, volunteered myself to package Thousand Parsec for Debian, added the Kanji I studied to Reviewing the Kanji (a web site for reviewing the stuff you learn in Remembering the Kanji) and updated my blog.

Which funnily enough, is where we came in

ごくせん Vol.1ごくせん Vol.2ごくせん Vol.3

12
Jan
07

LCA 2007 Ho!

Well, it’s nearly LCA time again. This is just a quick post mainly to see if my syndication at Planet Linux.conf.au 2007 is working yet.

I’ve been working at MF (Milestones just seem to come at you faster than the calender would otherwise suggest) and particularly in the last couple of weeks getting a good vector-math workout.

I’ve also been working at picking off RC bugs to try and help Etch along a bit, since kind of hoped to be upgrading to it in the half of January that’s just passed.

I’ve also been looking for a CMS for the ANU Anime Society to try and resolve the fact that our web admins never seem to last as long as we’d like. At the moment, Joomla! is top of my list for trialling, as I’m familiar with PHP and looks to have the relevant modules (forum, calendar, eventing system that’ll need modification to work for screening scheduling). However, I’m open to other suggestions, and will see if anyone at LCA has any useful suggestions.

And of course, by adding Planet LCA 2007, I’ve had to read it. And I came across ThreatNet, which is a distributed compromised computer identification system. It’s actually really simple, you do something to identify a certain IP as a threat (the sample code scans postfix logs for “REJECT: noqueue” which usually comes from “no such user” although I noticed it also comes from greylister at CBIT) and sends that IP address to a nominated IRC channel. I dunno what’s next, actually. Presumably, sites can block that IP address as they see fit, and if the responsible parties for the machine become aware of it, they can take action. I’ll be adding this to my ever-growing list of things I need to consider implementation of at CBIT.

On the plus side, I recently installed Debian on a Slug with a 512MB USB flash stick, and I’m going to see how Nagios performs on it. If it’s up to scratch, I’ll prolly shoehorn in a wireless card and see if I can monitor two disparate networks effectively.