You may remember that DICE Linux is not getting the major upgrade this summer (DICE teaching platform upgrade – postponed) that we optimistically forecast in February (Upgrade of DICE desktops to Scientific Linux 7). This post explains what’s been going on.
DICE Linux is based on Scientific Linux, which is based on Red Hat Enterprise Linux. To make a Linux distro into DICE, we port our configuration technology LCFG to the new system so that we can configure it appropriately. We use LCFG to, for instance, add software; make the network, printers and mail behave appropriately; control who can do what and where; and defend our systems and data against (constant) attack.
So why isn’t the latest greatest DICE ready yet? There have been two main problems.
The first was the later than expected release of RHEL 7. We had hoped for it to appear by February at the latest. Judging by previous releases this would have given the Scientific Linux team enough time to produce the corresponding SL release by April, which would have given us just about enough time to get LCFG and DICE ported and tested in time for the next session. Unfortunately RHEL 7 wasn’t released until June, and SL 7 was released this month (October).
The second major problem has been the sheer amount of new technology in RHEL 7. In a word, systemd. This ambitious replacement for init has introduced major changes to Linux. It abandons the old approach of starting services one at a time in a predetermined order, in favour of a dependency-based system. In principle this is a great idea, and it’s the approach taken by launchd, which does the same job rather successfully on Apple Macs. Some great advantages come with this approach – better control of processes for instance, and faster booting – but the scale of the changes has meant a great deal of work for us.
To cope with the changes some of our core software has had to be redesigned or replaced (rather than just recompiled and tested, as we would hope on a new system), and the required effort has been substantial. Read the SL7 LCFG port diary to get some idea of what we’ve been up against (and to).
Another way to grasp the enormity of the change from init to systemd is to look at the opposition it’s stirred up. In Linux as in life, when wide-ranging revolutionary change is imposed, there will be rebellion. In the case of systemd the perceived preference of the design team for unrelenting major change over (say) consolidation and bug fixing, and the project’s absorption of more and more formerly independent Linux services, hasn’t helped. Searching the web for systemd controversy throws up some interesting responses – Systemd: Harbinger of the Linux apocalypse, Boycott systemd, Debian fork and uselessd among them.
We think we can now cope with systemd, at least to the extent of being able to configure it to produce a basically working DICE system. Along the way we have also been tackling a number of other challenges, such as the not much less controversial GNOME 3, and the replacement of the grub bootloader with a very different grub 2, but nevertheless we hope to have a DICE SL7 desktop option available for “early adopter” staff and researchers within a month or two. Thanks to careful redesign of our software infrastructure we also hope to be able in time to offer DICE variants based on related flavours of Linux such as CentOS 7, RHEL 7 itself and Oracle Linux, if the demand is there. Are we still too optimistic? Time will tell.