Debian named Jessie 8

Debian is named Jessie 8

Universal Linux distribution is preparing to make the final bars of 7 Debian will soon arrive on the stable branch. Debian 7 should be released officially at the beginning of 2013, but the team of Debian is already looking toward the future, it was chosen the new code name for the future Debian 8 to be named Jessie as the famous cowgirl of the animated film Toy Story 2 as well as all releases of Debian.
At the release of Debian 7 as a stable release Debian 8 Jessie from unstable development branch called “Sid” takes place in the testing branch instead of Wheezy. 8 as the release of Debian stable release is planned for 2015. As for the exact dates of release of Debian 7 there is nothing official yet, the only thing certain is that since the feature freeze must pass at least 6 months to 7 Debian can be considered stable.

Also critical bugs found in the packages should be up to 300 against 600 recorded so there is still much work to do for the team of Debian and that’s why the release of Debian 7 will take place in early 2013 and not at the end of 2012 as had been previously announced.



Debian tricks

Note on these tips: the fact that these notes exist at all points to usability problems with Debian. These problems should be fixed, and hopefully that will happen. Meanwhile, Debian has a reputation as being a difficult distro for Linux newbies. Ironically, I find that Debian is actually the easiest Linux distro to use. The really big usability problems, IMO, are:


the installer, as of Debian 3.0, is still too hard to use


no central browsable GUI (console-based or otherwise) for all Debian configuration — the APT tools go a long way, but aside from software package management, all the miscellaneous config stuff needs to be integrated and smoothed out.

(My unsolicited advice is to make the APT management tools able to directly invoke “dpkg-reconfigure” on the installed packages, and shoehorn all necessary configuration into there somehow, maybe using pseudo-packages to help. Maybe that’s insane.)

Nevertheless, in my experience Debian is still miles ahead of OS’s I have used (including Windows) for general usability and maintainability, once you’ve inhaled the Kool Aid.

On to the tips. Don’t use dselect

For installing and removing software, dselect is hard to use. I recommend any or all of:


tasksel — use this to get started (normally the installer invokes this). It chooses the basic set of packages based on a few different usage categories (GUI desktop, C++ development, server, etc)


apt-get — pure command-line, when you know exactly what you want


aptitude — good console UI app; quick for browsing packages and examining dependencies, etc. I use this one most often.


synaptic — nice usable GUI, although not quite as snappy as aptitude IMO.

How to get back to Gnome when the Linux gremlins have somehow switched you to KDE

I think there are some lurking scripts that randomly mess with this setting on my laptop, just to test my sanity. There’s nothing more dismaying than typing “startx” and seeing the wrong desktop manager show up. Google is useless for finding the solution, which it turns out is very simple:

# update-alternatives –config x-session-manager

Then select gnome-session or kde2 or whatever floats your boat. “startx” should now do what you want it to.
Some important menu-driven configuration commands, in case you entered the wrong stuff during install

# modconf # install kernel modules, e.g. for your oddball network card
# base-config # timezone and some other stuff, followed by package config
# dpkg-reconfigure xserver-xfree86 # X Windows settings
# alsaconf # try to autodetect your sound card (if you installed ALSA)
DNS and such

For DHCP, make sure to install “dhcp-client”

My /etc/network/interfaces looks like this; this sets up the first Ethernet card to do DHCP:

# Used by ifup(8) and ifdown(8). See the interfaces(5) manpage or
# /usr/share/doc/ifupdown/examples for more information.
auto lo
iface lo inet loopback
# first network card
auto eth0
iface eth0 inet dhcp

Kick it into action using “ifup eth0”

As far as I can tell, DHCP is supposed to automatically put entries in resolv.conf (to set up your DNS servers) and possibly /etc/hostname as well. For some reason that didn’t work for me on my last install; it might be some deficiency with my DHCP server, which is a LinkSys broadband router. Anyway, I had to hack /etc/hosts to make it look like this: localhost sheep

I’m not sure if that’s 100% kosher; it seems wrong to use as the host address, instead of the IP address from eth0, but it seems to work for me.

Sound notes

These relate to ALSA. ALSA is the latest sound driver tech for Linux. You need to install these packages:

alsa-modules-XXXXX (where XXXXX is your kernel version)

Then, to detect your sound card and set up the kernel modules, you run


If you’re like me, alsaconf didn’t work quite right; you might have to do the following:

ln -s /etc/alsa/modutils/1.0 /etc/modutils/alsa

That’ll probably be fixed by the time you read this.

When everything is working, you should see “snd-pcm”, along with a bunch of other snd-* modules, in the output of “lsmod”. “snd-pcm” is the wave output driver, AFAIK.

Permissions: by default, normal users don’t have access to the audio devices. Pretty annoying, but oh so secure… I guess if you’re running a server this might marginally make some sense. Anyway, an easy solution is to add users to the audio group:

adduser audio

Your group settings won’t be updated for existing processes, so you may have to log out and back in to be able to play sounds.


The installer seemed to put the right entry in fstab for me. However, by default, the permissions on /dev/cdrom are set so that only root can access the CDROM; fix that with:

chmod 666 /dev/cdrom

On another machine, /dev/cdrom disappeared after I upgraded to kernel version 2.6.8. I eventually discovered, after much fruitless poking into the intricate world of udev, that I just needed to add the line “ide-cd” to the file /etc/modules . WTF?

NVIDIA video cards

The default drivers work fine, but the 3D isn’t fast. You need to install:

nvidia-glx-dev (if you’re going to do any OpenGL development)
nvidia-kernel-XXXXX (where XXXXX is your kernel version)

Then you probably need to do “dpkg-reconfigure xserver-xfree86” and choose “nvidia” instead of “nv” as your video driver.

If you’re wondering if it worked, try running “glxgears”; the animation should be smooth.

If your kernel version does not have an nvidia-kernel-XXXXX package, then you must build a version of the module from source. Scary? Actually it isn’t, due to the magic of “module-assistant”! Install:


Run “module-assistant”, and you will get a curses UI that handles all the details. Choose “SELECT”, then mark the nvidia-kernel module and press OK, then choose “BUILD”, and magic should happen.

Compiling kernel modules

In general, if you need to compile a kernel module from source, try module-assistant first. If you run a stock kernel, like me, then also install kernel-headers-XXX for your kernel. If the module sources have Debian packages, you may be able to do it entirely from the module-assistant UI. If they don’t have Debian packages, then download the sources to /usr/src/modules/…, run module-assistant and select “PREPARE” to set up all your symlinks, and then “cd /usr/src/modules/some_module_xxx” and then “make install”.

Hooking up your iPod

This can be done beautifully, so it’s all automated and works even better than on Windows. “gtkpod” is the name of the app that you will use to manage the iPod. The other magic words are: 2.6 kernel, udev, autofs, hotplug. There are some instructions out on the net to describe the autofs part, so that the iPod is mounted automatically when you plug it in and access /mnt/ipod, and is unmounted automatically after 2s of idle time.

Wireless G

I bought a Netgear WG311NA PCI card, which uses the Texas Instruments ACX111 chipset. Apparently this is a fairly common 802.11g chipset. I ran into various troubles getting it to work. The first problem I had is that I tried to install the wrong driver. Apparently there’s an earlier version of the Netgear WG311 that uses a different chipset supported by the madwifi driver. My googlings had convinced me I needed madwifi. I compiled and installed madwifi, only to belatedly discover, when it didn’t work, that my card does not use that driver. Lesson: pay attention to the output of “lspci”, to identify the chipset; don’t rely on Google and manufacturer model numbers.

Note: I discovered that if you’re running a 2.6 kernel, you don’t need “linux-wlan-ng”. Uninstall it, and don’t waste your time trying to compile the modules from source, like I did… Do install “wireless-tools” though; this gives you “iwconfig”, “iwlist”, etc.

So there’s an open-source driver for this card, at . I compiled and installed it, using Craig’s excellent HOWTO at . The good news is that installation went relatively smoothly, and that the driver works. The bad news is, no WEP (encryption) support! I must have WEP.

It turns out that there’s another way to get this card up, using ndiswrapper from ndiswrapper is an open-source wrapper that sits between the Linux kernel and the manufacturer’s Windows driver for the card. I have no philosophical problem with wrappers or emulators for drivers, especially if it saves me from having to go exchange a card. Compilation of the CVS sources and installation went very smoothly here as well, with one glitch: after doing “modprobe ndiswrapper”, “dmesg” showed the following error:

ndiswrapper (NdisMAllocateSharedMemory:990): Failed to allocate DMA
coherent memory. Windows driver requested 409600 bytes of un-cached memory
ndiswrapper (ndis_init_one_pci:1510): Windows driver couldn’t initialize
the device

Fortunately I found the solution here , which is to add these lines to /etc/sysctl.conf, and run “sysctl -p” to update the settings:

kernel.shmmax = 67108864
kernel.shmall = 67108864

Then “rmmod ndiswrapper” and “modprobe ndiswrapper” to re-load the driver; the dmesg errors are gone, and “iwconfig” shows my card under “wlan0”.

My /etc/network/interfaces has this in it:

iface wlan0 inet dhcp
wireless_mode managed
wireless_rate 54M auto
wireless_channel 6
wireless_essid XXXXX
wireless_key XXXXXXXXXX

(Replace the X’s with your values) Then, “ifup wlan0” brings the interface up, “ifdown eth0” to turn off the wired interface, and I’m on the net without a wire.