Our engineers have done a great job bringing our distribution foreword and integrating releases done by the Open Source community and I’m looking forward to announce the release tomorrow.
The most interesting part of the release process was for our build guru to learn a new language. We had a chicken and egg problem with the update of X.org and the path changes: Previously we used some links and now those are directories, e.g. /usr/include/X11 was a link to /usr/X11R6/include/X11 and is now a directory. RPM is not able to change a symbolic link to a directory, so in case of an update RPM will not change the link. The directories are part of the filesystem packages which is installed as one of the first packages. The idea was to remove the symbolic link in a pre-install script and then RPM will create a directory. This works fine but needs a shell and that’s not available at this time (no problem in case of updates since then we have a shell but now new installation is broken – where we do not need pre-install script). Using sash as static shell did not work since it was not possible to call sash properly. We then considered a static program that would just remove the links – an ugly solution we did not really like.
Finally our RPM expert Michael rescued us and told us about LUA – a programming language that is embedded in rpm. We’re glad that Michael did not disable it since we now have a use for it – the only one so far in our openSUSE distribution. These three lines saved us:
%pre -p >lua< os.remove ("/usr/include/X11") os.remove ("/usr/lib/X11")
So, what else is new in openSUSE 10.2 Alpha3?
It’s the first time that we’re call our distribution “openSUSE” instead of “SUSE Linux”. The codename of openSUSE 10.2 is “Basilisk Lizard”. With the rename of the distribution, we renamed also the name in bugzilla.novell.com so that you have to report bugs against “openSUSE 10.2”.
Compared with Alpha2, we’ve made a number of significant changes:
- We switched to kernel 2.6.18rc4 – and not all kernel module packages(kmp) have been adopted for the new kernel. Especially Xen is not working yet.
- openSUSE 10.2 contains KDE 3.5.4
- We started the switch to GNOME 2.16 Beta and have now the base packages in, more to come later.
- The new branding “openSUSE” is shown in the first places but there’s still some existing SUSE Linux 10.1 branding.
- X11 R7.1 with different pathes (no more /usr/X11R6 for the xorg packages):
Users with a working X11 configuration will not see many real changes. First, the pathes have changed, so most applications that lived in /usr/X11R6/bin now exist in /usr/bin. So, hard coded paths need to be changed. The X11 Release 7 is fully modularized. This is reflected in our packaging as it enables us to provide updates for individual components like drivers and libraries once they become available independently of the release cycle of the X Window System.
As with every major update, a lot of bugs have been fixed in all areas.
The changed pathes broke building of packages, so developers might need to change their software.
- cups 1.2.2: This is a major update (from version 1.1.x), the highlights are IPv6 support, network printer discovery (CUPS can now find printers on the LAN using SNMP) and LDAP support. A cool feature are unique job ids: CUPS maintains a new job-uuid attribute which provides a unique identifier that can be used totrack a job on your network or anywhere in the world.
- Updated development tools like gettext 0.15, autoconf 2.60,
- We now have a gcc package and a gcc41 package in such a way that in the future a gcc42 package might be available as well, giving you the chance to use different gcc versions at the same time.
- Using patterns instead of selections in the package manager (think of patterns as package groups with some semantics). We currently have only a basic set of patterns and will enhance them.
All these changes needed changes by other packages, so a lot of other packages have been fixed to build again and some still need fixing. Other packages have also been upgraded since new major versions were released.
Both the cups and x.org changes have been requested by our users for some time already, I’m glad to have these in now.
This Alpha3 of openSUSE 10.2 is quite untested and more for the experimental folks. I do not suggest to use it in production. But I do consider it an important milestone for development and testing. A lot of integration has been done to give us a better product.
There’re also some bugs, the list of major known bugs is available at the openSUSE most annoying bug page.
openSUSE 10.2 Alpha3 will be announced tomorrow on the email@example.com mailing list. You’ll be able to download it from one of our mirrors – we’re currently distributing the ISOs to them.