Quaking on Linux
We’re finished with the preliminaries, and can now get down to installing Quake. Get the Quake 1 demo zip from ID. Unzip the files in a suitable location. We used /usr/local/games/quake1. If you have a Quake installation on your drive then you can just copy all the files from it.
cp -R /mnt/windows/C/quake1/ /usr/local/games
Untar the files in the Quake1 directory. All the files should be owned by root.
chown -R root.root /usr/local/games/quake1
Another thing to watch out for is whether all the files are in lower case. The Linux Quake howto provides a neat script that will convert all your filenames to lowercase. This script is given below.
for x in *; do
y=‘echo $x | tr ‘[A-Z]’ ‘[a-z]’‘
if [ $x != $y ]; then
mv $x $y
To run quake1 in console mode, login as root and use the binary squake. You can set the squake binary as setuid so that regular users also have access, but there are some backdoors in Quake 1/2 that can cause problems. Strangely enough, we got the old “svgalib: mmap ...” error here and Quake 1 refused to run, whereas we didn’t face any problems with Quake 2. X11 quake worked perfectly too.
To run X11 quake, use the other binary quake.x11. You do not have to be root to run this. Simply start X, change to the directory and run quake.x11. We really don’t recommend this because it opens up a really tiny window on your desktop. We tried higher resolutions using quake.x11 -width 640 -height 480 but performance degraded. Squake is a better option. Another alternative is GLQuake but that only runs under the Voodoo, which is a card we didn’t have access too.
Let’s move on to Quake II. The procedure for installation of Quake 2 is the same. Grab the files from a Windows installation, get the Linux Quake 2 binary.
You need to create a /etc/quake2.conf that points to the directory containing quake2.
# pwd > /etc/quake2.conf