Lenny (aka “testing”) appears poised to displace Etch as the popular Linux distribution’s “stable” branch next month. To see how Lenny was coming along, I loaded the latest preview (beta 2) of its KDE system image onto an available Thinkpad, and took it for a spin.
Now, I’ve been a strong supporter of Debian on desktops, in servers, and in devices systems for the past several years, and only recently moved to Ubuntu in an effort to support the Black Tower‘s more leading-edge hardware.
Admittedly this test of Lenny is limited in its scope. After all, the Thinkpad testbed is an aging 2662-35U with a 600 MHz Pentium III CPU, 192 MB SDRAM, a 20 GB hard drive, and a CD-only optical drive. However, assuming Lenny continues to perform satisfactorily in further tests on the Thinkpad — and I am optimistic that it will — I will seriously consider substituting it for Kubuntu on the Black Tower.
What follows is a brief account of the steps I used to install Lenny KDE Beta 2 on the Thinkpad, along with a handful of hacks and fixes that helped it meet my minimum requirements. Bearing in mind that individual systems and personal preferences differ, you can be certain of one thing: your actual mileage will vary!
Installing from the KDE CD
Download the desired CD iso image from the LennyBeta2 area of Debian’s website, and burn it onto a CD (I use K3b to do this on my Linux systems). The image I grabbed a few days ago was “debian-LennyBeta2-i386-kde-CD-1.iso.”
Now, boot the system from the newly burned Debian Lenny KDE CD, and follow the relatively simple steps presented by the installer, to pre-configure and install the OS on the system. I recommend using the “graphical installer” option provided on the boot CD’s initial menu. When the screen for selecting categories of software appears, be sure to click “desktop environment” so that the KDE desktop environment gets installed.
When the installation of the OS is complete, the installer will prompt you to remove the CD and reboot. The system should boot up and present the KDM desktop manager screen, at which you enter your login name and password.
Booting up into the Lenny Beta2 KDE desktop for the first time produced a screen that looked like this:
Lenny’s pristine KDE desktop upon first-time boot
(Click each image to enlarge)
Adding basic software
NOTE: Unless otherwise stated, all of the commands below must be performed from a console window (KDE menu > System > Konsole), as root. To make it clear where each command line starts, the commands are listed with bullets; of course, the bullets are not part of the commands 😉
Open up /etc/apt/sources.list using pico (type “pico /etc/apt/sources.list” on the command line). Add “contrib non-free” at the end of each repository line. Also, add the following two repo lines to the file:
- deb http://www.debian-multimedia.org lenny main
- deb http://download.skype.com/linux/repos/debian/ stable non-free
Then close the editor, saving the revised file as sources.list.
Next, add the key required for accessing the Debian multimedia repository by performing the following command line steps:
- wget http://debian-multimedia.org/gpgkey.pub -O – | apt-key add –
- apt-get update
- apt-get install debian-multimedia-keyring
Now, it’s time to install a bunch of useful applications and plugins using Debian’s apt-get utility. Here’s the command line I used:
- apt-get install synaptic rsync bzip2 wvdial dmz-cursor-theme gtk-qt-engine cupsys foomatic-filters foomatic-db-engine kdebluetooth acroread d3lphin gaim skype bluefish dillo msttcorefonts ntfsprogs amarok lame libdvdcss xine-ui
Incidentally, the cursor theme package download was needed because the Lenny beta’s KDE system lacked any cursor theme options and the plain default was — well — awfully plain.
Standard Firefox and Thunderbird
Personally, I think it’s a mistake to use non-standard versions of Mozilla’s Firefox and Thunderbird browser and email apps, as they’re probably the most popular open-source software on the desktop. For example, Firefox’s desktop marketshare is currently estimated to have reached nearly 20 percent, whereas Linux remains at a paltry 4 percent.
Due to their high level of popularity on both Linux and Windows desktops, I think it’s important to keep them consistent — including their names and their desktop icons — as opposed to propagating multiple versions modified for (or tuned to) specific OS versions. Additionally, I like to be able to promptly obtain bug- and security-fixed versions directly from Mozilla.org via the two programs’ automatic update options.
For these reasons, I always get rid of modified versions of the “dynamic duo” and install “the real thing,” obtained directly from Mozilla.org.
Here’s the process I use:
- Remove Iceweasel, Debian’s version of Firefox, with the command:
- apt-get remove iceweasel
- Download Firefox and Thunderbird from mozilla.org, and put both files in /usr/lib/
- unzip/untar each of them, resulting in directories such as “/usr/lib/firefox/” and “/usr/lib/thunderbird”
- Standard Thunderbird requires a special library to run on Lenny; to satisfy this, do:
- apt-get install libstdc++5
- Create /usr/bin/ symlinks for each of the two programs, as follows:
- ln -s /usr/lib/firefox/firefox /usr/bin/firefox
- ln -s /usr/lib/thunderbird/thunderbird/ /usr/bin/thunderbird
- Create a directory for mozilla plugins in /usr/lib/, create a symlink to the firefox plugins directory, and install the Adobe Flash Player plugin:
- mkdir /usr/lib/mozilla
- ln -s /usr/lib/firefox/plugins /usr/lib/mozilla/plugins
- apt-get update
- apt-get install flashplayer-mozilla
- Now create KDE desktop icons for Firefox and Thunderbird. The icons needed are located in the icons directory within each program’s directories in /usr/lib/.
- Test both programs. Verify that a url can be emailed from Firefox using Thunderbird using the “Send Link” function, and that clicking on a link in a Thunderbird email will open up a page in Firefox. Both programs will prompt you to tell them to be the default for each of their functions when you run them for the first time — say “yes.”
Opera, Real Player, and Java
Next, we download, install, and test the Opera browser, Real Player multimedia player, and the browser plugin for Sun Java. They each install in a slightly different manner.
For Opera, the download brings you a .deb file. Use the following command to install it from that file (as root):
- dpkg -i opera-9.51.gcc4-shared-qt3.i86.deb
The version I used was designated “Debian 4.0 (Etch), Debian Testing (Lenny), Debian Unstable (Sid)” on the download page’s drop-down menu.
Start by downloading the Real Player installation file from Real‘s website. Using a console command line (as root), change the file’s permissions to be executable and then execute it, as follows:
- chmod 554 RealPlayer11GOLD.bin
Follow the straightforward prompts that follow to install it on the system.
Now comes the installation of Sun’s Java plug-in. From the KDE desktop (as user, not root), run Synaptic (KDE menu > System > Synaptic Package Menu); it will request your system’s root password as it loads. Once the program starts, use the program’s Search button (at the top of the screen) to locate packages with “java6.” From the results, market these two for installation: sun-java6-jre and sun-java6-plugin. Then, click the “Apply” button at the top, to install them. Exit the program when the installation is complete.
At this point, the total install occupied about 3.6 GB the system’s hard drive, and my KDE desktop looked like this:
My customized Debian Lenny KDE desktop
(Click to enlarge)
Testing key functions
In my experience there are a handful or so of key functions that don’t always come up right in Linux systems, so I test them each time I experiment with a new distribution or major version upgrade. The functions I tend check, and methods I use, and the results with this Lenny Beta2 KDE CD image install appear in the table below.
|Playing audio CDs and MP3s||Play a CD using Amarok; rip a CD to MP3s using KAaudioCreator; play the resulting files with Amarok||all worked fine|
|Playing movie DVDs||Play a DVD using Xine||n/a – the laptop doesn’t have a DVD drive :-/|
|Java plugin||go here, and verify that the Java plugin is working||worked fine|
|Flash plugin||go here and verify that Flash is working||worked fine|
|YouTube||visit YouTube.com and play a video||worked fine|
|Suspend/resume||Try suspend-to-RAM and suspend-to-disk, and resuming from each||Suspend-to-RAM works perfectly, by either right-clicking on the KPowersave icon in the taskbar tray (screenshot) or closing the lid of the laptop and then reopening it. Suspend-to-disk also seems to work OK, using the KPowersave icon to suspend and the power button to resume.|
|WiFi||insert WiFi PCMCIA card and connect to home WLAN using knetworkmanager||required installation of madwifi driver package (details below|
|Dialup||go online using kppp||required kppp hack (details below)|
|Printer||install and test printer using KDM’s printer management tool||required installation of foo2zjs driver package (details below)|
|Skype VoIP||make a test call using Skype||required audio driver kack (details below)|
|Bluetooth||read/write files from a Bluetooth-enabled cellphone||no luck so far|
All in all, I’m quite pleased with this current snapshot of Debian’s Lenny KDE implementation. Other than the need for a few hacks and fixes, my main complaint with it is its inclusion of way too many of KDE’s rich set of applications, such as games, tools, etc.
Yes, I realize I could have created a more customized KDE system by starting from the net-install CD image and adding just what I want (I’ve certainly done that before, with Etch). But, I wanted to test the pre-packaged Lenny KDE version — a sort of “known good” system — first, before going about building my own. Indeed, I plan to do just that in the next month or two. And as I mentioned at the start of this post, if that process goes well I might replace Kubuntu with Lenny/KDE on the Black Tower. Stay tuned!
Two appendices appear below: (1) fixes and hacks; (2) screenshots of the KDE desktop and a few key functions discussed above.
|Appendix 1: Fixes and Hacks|
I’ve found for years that kppp isn’t usable without making some minor adjustments to files in the /etc/ppp/ area. Here’s the process I needed to use to make my Lenny Beta2 KDE system dial out and connect to the Internet.
- Run “wvdialconf” from the command line (as root) to find out the device name that the system has assigned to your modem card. You’ll need this to set up the modem configuration in kppp.
- Edit the file, “/etc/ppp/options” as follows:
- change the line, “auth” to “noauth”
- comment out the line, “lock”
- Edit (or create) the files “/etc/ppp/peers/kppd-options” and “/etc/ppp/peers/kppp-options” and change their contents from “auth” to “noauth” or simply enter “noauth” if the files did not already exist.
- Place an icon on your desktop for kppp; configure it to run the command “kdesu kppp” (right-click icon > Properties > Application tab)
- Use kppp’s “manual” configuration (not “wizard”) to set up accounts; typical parameters are:
callback type: none
IP > dynamic
Gateway > Default, Assign the default route (X)
DNS > Automatic
Login Script, Execute, Accounting > all blank)
Note: On other KDE installs, it was not necessary to run kppp as root. I suspect permissions can be altered to eliminate that requirement, but I didn’t want to hack up the ppp area too much. (In case you’re wondering: yes, the user is a member of both the dialout and dip groups.)
Skype audio hack
My first Skype test is to go to the program’s Main Menu > Options > Sound Devices configuration tab, and then click the “Make a test sound” button. That should play a test sound. If it doesn’t there might be audio driver problems. If it plays sound ok, the next step is to click the “Make a test call” button.
With my Lenny Beta2 KDE install, neither sound function worked. After consulting the googacle, I settled on a somewhat crude hack, which consists of forcing the system to run the ALSA sound system and avoid OSS. So far, it works great and doesn’t seem to have caused any problems.
The hack appears below, but one note: before jump through hoops to get sound working, be sure you open up kmix and turn on the various audio channels and set them to reasonable volume levels.
Here’s the hack:
- Create a file called “.asoundrc” in your home directory (i.e. “~/.asoundrc”), containing the code that appears in the box below
- Select “Advanced Linux Sound Architecture” (ALSA) as the sound drive for your system via the KDE Menu > Control Center > Sound & Multimedia > Sound System > Hardware tab
- Run Skype and on its Main Menu > Options > Sound Devices configuration tab select “asymed” for Sound in, Sound Out, and Ringing
OK, did that work? It did for me. But please, don’t ask me what it does!
|Contents of ~/.asoundrc|
foo2zjs printer driver download/build/install
At first, I was unable to get my HP Laserjet 1020 printer to install using the default options in KDE's Printer Management tool. To solve this problem, I downloaded, built, and installed the foo2zjs printer driver package.
The first step was to download and unpack the required build package using the following commands, and then move into the package build directory using the following commands:
- wget -O foo2zjs.tar.gz http://foo2zjs.rkkda.com/foo2zjs.tar.gz
- tar -zxvf foo2zjs.tar.gz
- cd foo2zjs/
Now, carefully follow the procedure detailed in the INSTALL file contained within foo2zjs/. For my HP Laserjet 1020, the process I had to follow was (as root):
- make uninstall
- ./getweb 1020
- make install
- make install-hotplug
- make cups
Phew! Assuming all went well in the above process, open up the KDE printer management tool (KDE menu > Control Center > Peripherals > Printers) and add a printer. I selected the "Laserjet 1020 foo2zjs" driver. Note: For some reason, the system required me use the "Administrator Mode" option of the KDE printer configuration tool to select and configure the printer.
Finally, try printing a test page. Did it work? It did for me.
Installing the madwifi driver (for atheros-based cards)
To get my Atheros chipset-based PCMCIA WiFi card working, I had to install the madwifi driver package. This is the procedure I used:
From a console window, as root, issue the following commands:
- apt-get install madwifi-source madwifi-tools
- m-a prepare
- m-a a-i madwifi
- modprobe ath_pci
If all goes well in the above string of commands, run the command following command and look for indications that the wifi card has been recognized when you plug it in and remove it. also, it should show up in ifconfig.
- tail -f /var/log/syslog
Type Ctrl-C to exit the syslog monitoring command. The above procedure comes from the madwifi driver website.
To connect to a WLAN, use knetworkmanager (KDE Menu > Internet > KNetworkManager). It lets you view the signal strength of WLANs in your area, select one, and specify the network's security options and key.
Update: Getting rid of hundreds of MBs of KDE games
At the suggestion of a reader, I got rid of a large batch of automatically installed KDE games that I had no use for. It's easy to do, using these two console commands (as root):
- apt-get remove kdegames
- apt-get autoremove
Don't worry that it says it will remove kde -- that's just a "meta package" and won't remove any actual kde software (other than the requested games group). Removing any single package group from the KDE metapackage -- e.g. removing KDE PIM or KDE multimedia -- also would have removed the KDE meta package. Frankly, I think this situation is a bit weird, since, unless I'm mistaken, "apt-get install kde" has a very different effect (i.e. it installs the entire KDE KDEnchilada).
Following this step, the Debian Lenny KDE Beta2 install occupies about 2.8 GB of space on the Thinkpad's hard drive, not counting the contents of my /home/rick/ directory.
|Appendix 2: Screenshots|
That's it for my fixes and hacks. Below are various screenshots relating to the install and tests -- click each thumbnail for to enlarge: