Xen-tools now correctly installs CentOS4 installations, complete with OpenSSH access.
I've not fiddled around with rpmstrap enough to cache intelligently, but otherwise it works. (What this means is that each new installation re-fetches each .rpm package from the network, rather than caching them locally.)
This new work does bring my "design decision" into focus though. Originally xen-create-image was a simple system which did two things:
- Install a clean version of sid/sarge/etch using debootstrap.
- Run a series of shell scripts aftwarwards to customize the new environment install networking, and install openssh. The "hook scripts".
Hooks were implemented as a directory of shell scripts run in order, much like you'd expect from run-parts.
Simple? Neat? Yes. And no.
Because each script was based around the idea of tweaking Debian they had a lot of Debian-specific knowlege in them, and so they didn't do the right thing for CentOS4.
There are two (or more!) solutions to this problem:
- Have per-distribution hooks: hook.d/debian, hook.d/centos4, etc.
- Have each script decide which environment it has and do the right thing.
The first has the advantage that it is simple to understand and adding additional distributions becomes simpler to approach.
The second avoids proliferation, and seems neater to me. Anyway the decision is made for the moment to use this approach. I could be swayed the other direction when it comes to time to setup SuSE, Mandriva, etc. However in all honesty I don't actually expect to do that work myself. If you need those distros you can help, capishe?
Now to backport rpmstrap to Sarge, and make a new release…
31 May 2006 21:50
I hope that I've built my last security update for Woody now. If so I'm going to metaphorically burn my Qemu image of Woody.
Talking of Qemu I have to say it rocks! Except under Xen. I've had a lot of problems recently using Qemus serial-port pass-through under Xen.
Using Qemu on a native kernel I can use "-serial /dev/ttyS0", and then get the Windows 2000 installation + communication software I have to talk to my mobile phone. Under Xen the communication only works one-way as far as I can see the software will talk to the phone, but the phone cannot respond.
I made a couple of Debian uploads last night to update the packages to the latest Standards Version, including fixing a trivial bug which was almost a year old which I'd completely failed to spot. I can't believe I missed it for so long.
All being well I'll make some more trivial-update uploads shortly to ensure that I don't have any suprises before the Etch freeze.