LWN.net Logo

Slackware 13.0: now officially 64-bit

September 2, 2009

This article was contributed by Koen Vervloesem

Patrick Volkerding has announced the release of Slackware 13.0, which means that Slackware continues its record as the oldest Linux distribution to be actively maintained. Compared with release 12.2 from the end of last year, Slackware has undergone a major overhaul: X can be autoconfigured now, this is the first 64-bit release, and the desktop environment has taken the leap to the KDE 4 branch.

64-bit and multilib

In particular, the 64-bit release is a big change. While many other distributions have already had x86_64 releases for years, Slackware users were forced to wait for a x86_64 port or choose an unofficial 64-bit project such as Slamd64 or Sflack. Now they can officially join their peers in 64-bit world. This is largely due to Eric Hameleers, who changed the SlackBuild scripts to support the x86_64 architecture, re-compiled everything, tested the 64-bit packages, and stayed in-sync with the 32-bit Slackware repository. His improvements of the build scripts were even imported over to the 32-bit Slackware release. Now the only difference is whether $ARCH is set to i486 or x86_64. Hameleers's build scripts are used in other ports too, such as Armedslack, the official port of Slackware to the ARM architecture, as well as Slack/390, a port for IBM S/390 G2 class systems and above. Slackware developers are already dreaming about a unified source tree for different ports.

Users should know that the x86_64 port of Slackware is a pure 64-bit operating system, but it is "multilib-ready". Hameleers explains this on his website:

This means, that is it is possible to add a layer of software that will allow you to run 32bit software without changes to either Slackware64 or these 32bit packages. Furthermore, the multilib-enabled Slackware64 can compile 32bit binaries, if you add the right software to it.

Moreover, users don't have to compile all the 32-bit packages they need from scratch; they can simply take them from the 32-bit Slackware package tree. The only thing the user has to do to create a multilib Slackware64 install is to upgrade gcc and glibc to their multilib versions and install a 32-bit compatibility toolkit, compat32-tools. Detailed instructions can be found on Hameleers' website. The whole process is not as simple as it could be, but it's done "the Slack way": Slackware is multilib-ready and lets the user choose how to make use of it.

Slackware13 with KDE4

KDE 4

Another big change is the move from KDE 3 to KDE 4, which has been out for about a year and a half now. The always conservative Volkerding explains why the time is ripe now for the move:

The KDE 4.2.4 release included in Slackware 13.0 is a very fast and polished desktop. It looks great and achieves its goal of making the Linux operating system as nice a desktop OS as anything that is available at any price! With KDE3 pretty much winding down (probably there will not be further releases) and projects dropping KDE3 support in favor of KDE4, the time was right to make the move to KDE4 in Slackware. I'm using it on all of my own machines (including an Intel Atom with compositing enabled), and I've really fallen in love with it once I got used to it. The tools are integrated better with the desktop, Qt4 seems to be a faster and more stable platform, and nearly everything that was available for KDE3 has been ported to KDE4 and works great.

However, Volkerding notes KDE 4 has still some quirks. There are reports that the CD-burning tool K3b hasn't been working as well as the KDE 3 version, and other applications have less features in the KDE 4 versions. That's why Slackware keeps some KDE 3 compatibility packages in /extra/kde3-compat/, including a KDE 3 version of K3b.

By the way, GNOME users aren't completely left out. Although the GNOME desktop environment was removed from Slackware in 2005, several community-based projects have filled the gap. For example, GNOME SlackBuild has released an up-to-date GNOME 2.26.3 for Slackware 13.

Installation

The text-mode installer has remained largely unchanged. It lets the user choose a non-US keyboard map and try out the keyboard layout before committing to it. Then the user has to prepare the disk partitions (e.g. with fdisk or cfdisk) and type setup to begin the installation process. The installer makes use of virtual consoles: the first three consoles are login consoles, while the fourth console shows informational messages such as disk formatting status and kernel messages. The login consoles come in handy during the installation, e.g. to check how full the hard drive is with df or to use the commands on the Slackware CD-ROM that is mounted on /cdrom.

The installation is straightforward: the user selects the root partition, formats it, creates the filesystem of his choice (Ext4 is selected by default), selects the source medium, and chooses the packages to install. For a full-blown KDE 4 installation, the simplest way is to choose "Full" in the KDE list. Then all packages get installed, with each showing an information window while installing. A disadvantage of the installer is that it doesn't show a progress bar, letting the user guess how long he has to wait. After that, the user gets the option to create a USB boot stick for recovery purposes, and Slackware installs the LILO boot loader. After that, the user configures the system and chooses the desktop environment.

Under the hood, the Slackware installer has implemented some changes. For example, it now uses udev to populate /dev and manage devices, including network interface cards. This means that the user no longer has to run network scripts prior to running setup. If the installer finds a DHCP server on the local network, the setup program lets the user choose between using DHCP or specifying a static IP address. For those who don't want to use udev, it's still possible to use the old Slackware hardware configuration scripts by adding the parameter noudev to the installer command line.

Back on track

Slackware features Linux kernel 2.6.29.6, GNU libc 2.9, KDE 4.2.4, Xfce 4.6.1, Firefox 3.5.2, Thunderbird 2.0.0.23, Gimp 2.6.6, and a lot of other recent packages. Look at the complete list of packages or the list of changes and hints for detailed information. Slackware 13 uses X.Org X Server 1.6.3, which means that it doesn't require an /etc/X11/xorg.conf in most cases. Input devices are configured by HAL, while the X server autoconfigures the rest. With the move to HAL in Slackware 12 and the autoconfigurable X server in Slackware 13, more and more things are now working out-of-the-box.

Slackware is known for its conservative choices, and the move to KDE 4.2 signifies that even the conservative Volkerding deems the new KDE 4 branch to be good enough. However, while almost all Linux distributions are using GRUB now and some are even moving to GRUB 2, Slackware 13 is still lagging behind with its use of the LILO boot loader by default. The developers surely will have reasons for it (Slackware holds to the "tried and true" standard for what gets included in the distribution), but all in all, Slackware seems to be back on track with other recent distributions without belying its nature of a BSD-like Linux distribution.


(Log in to post comments)

Slackware 13.0: now officially 64-bit

Posted Sep 6, 2009 4:57 UTC (Sun) by eparis123 (guest, #59739) [Link]

Koen, you write very nice articles. Thanks for all your efforts.

Copyright © 2009, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds