Looking forward to it.
Seems like this feature could be pretty interesting for emulating cluster architectures: screenshots.
Updated to reflect comment
I ran across this page today after seeing it linked from an interesting comparison of bug resolution across OSS projects and distros. It’s very worth reading for everyone who uses Bugzilla, on either side of the picture.
BTW, a large proportion of Gentoo’s bugs are duplicates too. It’s not just GNOME. At a guess, I’d put it at 25%, although I may be skewed from just the X bugs I see.
I wish I had been at this. Anyone happen to take notes on it?
Interesting thought. This may be particularly relevant in the cases of projects that don’t discuss the vast majority of bugs on their mailing lists, such as Gentoo.
“Project Dolphin,” eh? Well, any good rescue CD clearly requires an ICQ client and an MP3 player, so you’re on the right track there.
I initially tried to make the node filesystems essentially embedded systems, using Gentoo’s baselayout-lite, busybox, dropbear for SSH, etc. But baselayout-lite is really in its infancy — it’s hard-masked to reflect that, but I was hoping to ignore that problem. Brian Jackson wrote a brief howto on this setup. It was working reasonably, after gratuitous use of MAKEDEV to create miscellaneous devices, but the dependency resolution of the init scripts is way off and they can’t really restart or stop, and I’d rather be working on the cluster.
I spent a couple of days tracking down the last problem: an NFS filesystem that was mounted read-only just before chrooting from the initrd into the node root turned into read-write later in the process. But this only happened when it was mentioned in /etc/fstab. It ended up being in a C-based version of /sbin/rc that remounted root without the ‘ro’ option, and remount apparently mounts rw by default rather than respecting /etc/fstab or something crazy like that.
After about a week of digging through problems with this setup, I’ve decided to (at least temporarily) drop it for a uclibc-based setup that’s otherwise standard Gentoo.
First, I decided to make the node root switchable by having multiple roots in /diskless/nfsroot/<subdir>, with a symlink called ‘current’ pointing to the one I’m using. This eliminates the need to change multiple files (linuxrc and /etc/fstab) when I change the root — just one symlink.
Here’s what I’ve done so far in creating the uclibc-based root. Note that this is installed from a uclibc chroot within the master node’s glibc-based installation. The uclibc chroot has /usr/portage, /usr/local/portage and /diskless bind-mounted.
ROOT=/diskless/nfsroot/uclibc emerge baselayout bash openssh \
coreutils syslog-ng vixie-cron debianutils udev tar procps kbd \
findutils grep sed net-tools psmisc shadow -vab
chroot /diskless/nfsroot/uclibc /bin/bash
rc-update add sshd default
rc-update add syslog-ng default
rc-update add vixie-cron default
tar jxvf /lib/udev-state/devices.tar.bz2
Things are working reasonably well, but an awk call in an early init script can’t find stdout, and an attempt to create a device tarball at /lib/udev-state/devices.tar.bz2 at shutdown obviously fails because / is read-only.
I’m not sure how to fix the first problem, but for the second one I’ll probably either prevent the tarball creation or mount /lib/udev-state as tmpfs.
It was so weird when I took a C programming class and everything was done on Code Warrior, a proprietary IDE, using Windows. I mean c’mon, a department that teaches you to develop can’t touch its own operating system? That’s hypocrisy if I’ve ever seen it.