Erik Auerswald

Email: <auerswal AT SPAMFREE unix-ag DOT uni-kl DOT de>

Skolelinux.de Wiki: http://wiki.skolelinux.de/ErikAuerswald

Ubuntu Launchpad: https://launchpad.net/~auerswal

My homepage at the Unix-AG Kaiserslautern: http://www.unix-ag.uni-kl.de/~auerswal/

Sourceforge: http://sourceforge.net/users/auerswald

Alioth: http://alioth.debian.org/users/auerswald-guest

Ohloh: https://www.ohloh.net/accounts/auerswald

apt Problems

apt-get update often fails to download all files correctly. It then leaves incomplete files in the /var/lib/apt/lists/partial/ directory. Those files will not be refreshed, and apt-get update will exit with a download error if it encounters a partial list in this directory. This may stop updates from working, because the system will never learn about new versions added to the accidentally blocked lists.

Using apt-get clean to remove temporary and/or cached files does not help. The only way to fix this is to manually delete the incomplete lists:

rm -v /var/lib/apt/lists/partial/*

If you wondered, this bug has been reported. Many times. And some more. They seem to be drowned by the immense list of open bugs in apt.

The error message looks as follows:

W: Failed to fetch http://http.debian.net/debian/dists/squeeze-lts/main/source/SourcesIndex MD5Sum mismatch
E: Some index files failed to download, they have been ignored, or old ones used instead.

This can result in the error message

WARNING: The following packages cannot be authenticated!

I have seen this on many versions of Debian and Ubuntu. :-(

NVIDIA Graphics Card

Back when I bought my current PC, one intended use was playing Doom 3. At that time, an NVIDIA graphics card was the only sensible choice for gaming under GNU/Linux, and I bought a GeForce 6600 GT. The proprietary driver was the only choice with Open GL support. I used to install it manually from the NVIDIA installer to use the latest version.

Later on I did not play that often and changed from using Fedora to Debian/Sid. The non-free NVIDIA driver quite often broke with the many kernel and X updates, so I changed to the free nv driver, which worked fine for 2D graphics. Later the nouveau project appeared, I am currently (October 2012) using this driver. It provides basic Open GL support, but is still not usable for gaming.

With the upcoming Steam for Linux I'll try the proprietary NVIDIA drivers again. Hopefully, DKMS will take care of recompiling the kernel module automatically. Let's see how well NVIDIA keeps up with X server development nowadays...

Update 2013-07-18: Until now DKMS worked fine, but the proprietary NVIDIA driver in Debian does not (yet) work with kernel 3.10. Switching back to nouveau.

Anyway, my next PC will have Intel graphics, because Intel provides free drivers with good quality, performance, and features. IMHO, the AMD GPU driver's quality is not up to par (neither free nor non-free) and NVIDIA does not provide free drivers or even documentation.

Installed the current proprietary drivers today (2012-10-26):

sudo aptitude install linux-headers-686-pae

sudo aptitude install nvidia-kernel-dkms

cat > xorg.conf <<EOF
Section "Module"
    Load        "glx"
EndSection

Section "Device"
    Identifier  "Video Card"
    Driver      "nvidia"
    Option      "UseEDIDDPI" "false"
    Option      "DPI" "96 x 96"
EndSection
EOF
sudo mv -i xorg.conf /etc/X11/

Rebooting now changes from nouveau to nvidia X driver.

The non-free NVIDIA driver still works and provides better performance than the free driver. It is more work to use the non-free driver than just keeping nouveau. The nice framebuffer console provided by nouveau is gone. :\

Removed proprietary drivers today (2013-07-18):

sudo mv -i /etc/x11/xorg.conf /etc/x11/xorg.conf.nvidia

sudo aptitude purge nvidia-alternative nvidia-driver nvidia-glx nvidia-kernel-common nvidia-kernel-dkms nvidia-settings nvidia-support nvidia-vdpau-driver:i386 libxvmcnvidia1 glx-alternative-nvidia libgl1-nvidia-glx:i386 xserver-xorg-video-nvidia

# save your work before rebooting
sudo reboot

I am not using Steam on my Debian GNU/Linux box anyway.

Steam

With the open Steam beta under way, I wanted to try it out on my Debian/Unstable box. The Steam .deb package for Ubuntu 12.04 does not install cleanly on Debian/Sid, but solutions can be found:

I looked at the three scripts from the first link, decided to manually implement the steps from debian_install.sh and roll my own version of debian_steam.sh to start Steam.

  1. Decide to install special dependencies and startscript in ${HOME}/games/Steam and ${HOME}/games/Steam/lib, respectively

  2. Install libc6 version Steam depends on from Ubuntu repository

    mkdir -pv "${HOME}/games/Steam/lib"
    cd /tmp
    wget http://security.ubuntu.com/ubuntu/pool/main/e/eglibc/libc6_2.15-0ubuntu10.2_i386.deb
    dpkg -x libc6_2.15-0ubuntu10.2_i386.deb /tmp/libc/
    mv /tmp/libc/lib/i386-linux-gnu/* "${HOME}/games/Steam/lib"
    rm -rfv /tmp/libc6_2.15-0ubuntu10.2_i386.deb /tmp/libc
  3. Install jockey-common and python-xkit from Ubuntu repository

    wget http://mirror.ovh.net/ubuntu/pool/main/j/jockey/jockey-common_0.9.7-0ubuntu7_all.deb http://mirror.ovh.net/ubuntu/pool/main/x/x-kit/python-xkit_0.4.2.3build1_all.deb
    sudo dpkg -i jockey-common_0.9.7-0ubuntu7_all.deb python-xkit_0.4.2.3build1_all.deb
    rm jockey-common_0.9.7-0ubuntu7_all.deb python-xkit_0.4.2.3build1_all.deb
  4. Repackage and Install steam_latest.deb

    wget http://repo.steampowered.com/steam/archive/precise/steam_latest.deb
    mkdir -v deb-package && cd deb-package
    ar -x ../steam_latest.deb
    rm debian-binary
    tar xvf data.tar.gz && rm data.tar.gz
    mkdir DEBIAN && cd DEBIAN
    tar xvf ../control.tar.gz && rm control.tar.gz
    sed -i 's/^Version:.*$/&-ea/;s/ multiarch-support[^,]*,//;s/ libc6[^,]*,//;s/ libpulse0[^,]*,//' control
    cd ../..
    fakeroot dpkg-deb -b deb-package steam_latest-ea.deb
    rm -rfv deb-package
    sudo dpkg -i steam_latest-ea.deb
    rm -v steam_latest{,-ea}.deb
  5. Remove multiarch-support Dependency from Steam -- DOES NOT HELP
    #sed -i /multiarch-support/d ${HOME}/.local/share/Steam/steamdeps.txt
  6. Create start script for Steam
    cat > "${HOME}/games/Steam/steam.sh" <<EOF
    #! /usr/bin/env sh
    
    export LD_LIBRARY_PATH="/home/auerswald/games/Steam/lib:$LD_LIBRARY_PATH"
    export LC_ALL=C
    exec /usr/bin/steam "$@"
    EOF
    chmod -v +x "${HOME}/games/Steam/steam.sh"
  7. If needed, install dependencies asked for during installation of steam_latest.deb. Everything needed was already installed on my box, except libjpeg-turbo, which is not strictly necessary.

  8. Run the start script
    ~/games/Steam/steam.sh
  9. When asked for the root password to install some missing dependency, use [CTRL]+C and then [RETURN] to skip.

  10. Play a game, e.g. Counter-Strike. :-)

Problems with Counter-Strike

I really like Counter-Strike and just had to try the Linux version. With my non-Ubuntu box (Debian/Sid, no desktop environment, ALSA sound) there are a few problems:

Valve concentrates on one distribution and its default install, which I can understand. Nevertheless, I would like ALSA support, e.g. by using OpenAL. Other commercial games, e.g. from id Software and Epic Games, did work without PulseAudio. It might not even have existed back then. ;-)


CategoryHomepage


My User Pages: Alioth Debian Launchpad Skolelinux.de Sourceforge Unix-AG