Getting Started with Quake
If you have Quake installed under Windows or DOS on a different machine, you can transfer the files in quake/id1/ to your Linux system via FTP or some other mechanism. Keep in mind that the file names on your Linux system must be in lower case for Quake to find them, so you may have to rename them after the transfer. Also note that it may be necessary to delete your DOS/Windows installation after you do this, to remain in compliance with the terms of id's software license.
If your DOS/Windows and Linux systems are on the same machine, you have two options: copy the files from your DOS/Windows partition to your Linux partition, or link to the necessary files from Linux. Both options work equally well. You save around 50MB of disk space when you link instead of copy.
Whatever you choose to do, start by changing to your Quake directory and creating a new subdirectory called /id1:
cd /usr/local/games/quake mkdir id1
To copy the files from your DOS/Windows partition, type:
cp /win95/games/quake/id1/*.pak id1To create links to your DOS/Windows Quake files, type this instead:
cd id1 ln -s /win95/games/quake/id1/*.pak .Of course, you should replace /win95/games/quake in the examples above with the correct path to your DOS/Windows partition and Quake directory.
Now it is time to decide which of the three Quake executables you would like to install.
X11 Quake allows you to run Quake in a window on your X desktop. It is the least exciting client, but is a great, safe way to test your installation.
Squake is the SVGAlib Quake client; it runs full screen on your console.
GLQuake is the OpenGL Quake client. If you have a 3Dfx card, this is a must-have.
Download the packages you want (see the “Necessary Files” section) and extract them to your Quake directory:
cd /usr/local/games/quake tar -xzf XXXX-i386-unknown-linux2.0.tar.gz
If you want sound from Quake, /dev/dsp needs to be readable and writable. Most distributions give it 662 (rw-rw—w-) permissions by default. The simplest solution is just to chmod 666 /dev/dsp. On most systems, the ability to read from the sound device will not pose a significant security threat. If this approach is unacceptable for your system, create a group that owns /dev/dsp and make your Quake players members of that group.
If you don't have a sound card installed or configured for your system, make sure to use the -nosound command-line option when starting Quake. Failure to use -nosound will cause Quake to exit with a segmentation fault when it tries to initialize your non-existent sound card.
If you installed the X11 client, your system may need further configuration for glquake and squake, but at this point quake.x11 should be ready to go.
cd /usr/local/games/quake ./quake.x11
If all is well, a small window running a Quake demo should appear. You should hear sound effects and possibly music, if the CD is mounted. You can use the -width and -height command-line options to create a bigger window.
Both squake and glquake require SVGAlib to be running (glquake uses SVGAlib for keyboard and mouse input, in case you were wondering). SVGAlib comes with most modern distributions and must be properly configured before squake or glquake will run correctly.
libvga.config is SVGAlib's configuration file. On most systems, you will find it in either /etc or /etc/vga. Make sure the mouse, monitor and video card settings in this file are correct for your system. See the SVGAlib documentation for more details.
If you don't already have SVGAlib on your system, it is available on Sunsite (see Resources).
If you have a Red Hat 5.x or other glibc-based Linux distribution, remember that since Quake was compiled with libc5, all the libraries it links to (such as SVGAlib) must also be libc5-based. If you are going to compile a newer version of SVGAlib yourself, make sure it links to libc5 (and friends) rather than glibc, or Quake won't run.
Once svgalib is properly installed, you are almost ready to run squake. squake needs to run with root privileges in order to access your sound and graphics cards. One (bad) way to deal with this is always to run it as root. Responsible system administrators will cringe at this filthy suggestion. Making the Quake binaries setuid root is a more acceptable solution. Quake can then be run by regular users and still have the privileges it needs to access the graphics and sound devices. Be warned that any setuid program represents a security risk. A clever user could exploit a bug or security hole in a setuid program to gain root access to your system. If you don't run a multi-user system, this will not be a big concern.
Make squake setuid root with the following commands:
chown root squake chmod 4755 squake
Note that you should run squake from a virtual console. It won't run from X unless you are root when you start it, and running a game as the root user is a situation to be avoided. If you are in X, do a ctrl+alt+f1, log in and then:
cd /usr/local/games/quake ./squake
Practical Task Scheduling Deployment
One of the best things about the UNIX environment (aside from being stable and efficient) is the vast array of software tools available to help you do your job. Traditionally, a UNIX tool does only one thing, but does that one thing very well. For example, grep is very easy to use and can search vast amounts of data quickly. The find tool can find a particular file or files based on all kinds of criteria. It's pretty easy to string these tools together to build even more powerful tools, such as a tool that finds all of the .log files in the /home directory and searches each one for a particular entry. This erector-set mentality allows UNIX system administrators to seem to always have the right tool for the job.
Cron traditionally has been considered another such a tool for job scheduling, but is it enough? This webinar considers that very question. The first part builds on a previous Geek Guide, Beyond Cron, and briefly describes how to know when it might be time to consider upgrading your job scheduling infrastructure. The second part presents an actual planning and implementation framework.
Join Linux Journal's Mike Diehl and Pat Cameron of Help Systems.
Free to Linux Journal readers.View Now!
|The Firebird Project's Firebird Relational Database||Jul 29, 2016|
|Stunnel Security for Oracle||Jul 28, 2016|
|SUSE LLC's SUSE Manager||Jul 21, 2016|
|My +1 Sword of Productivity||Jul 20, 2016|
|Non-Linux FOSS: Caffeine!||Jul 19, 2016|
|Murat Yener and Onur Dundar's Expert Android Studio (Wrox)||Jul 18, 2016|
- The Firebird Project's Firebird Relational Database
- Stunnel Security for Oracle
- My +1 Sword of Productivity
- Non-Linux FOSS: Caffeine!
- Managing Linux Using Puppet
- SUSE LLC's SUSE Manager
- Murat Yener and Onur Dundar's Expert Android Studio (Wrox)
- Doing for User Space What We Did for Kernel Space
- SuperTuxKart 0.9.2 Released
- Google's SwiftShader Released
With all the industry talk about the benefits of Linux on Power and all the performance advantages offered by its open architecture, you may be considering a move in that direction. If you are thinking about analytics, big data and cloud computing, you would be right to evaluate Power. The idea of using commodity x86 hardware and replacing it every three years is an outdated cost model. It doesn’t consider the total cost of ownership, and it doesn’t consider the advantage of real processing power, high-availability and multithreading like a demon.
This ebook takes a look at some of the practical applications of the Linux on Power platform and ways you might bring all the performance power of this open architecture to bear for your organization. There are no smoke and mirrors here—just hard, cold, empirical evidence provided by independent sources. I also consider some innovative ways Linux on Power will be used in the future.Get the Guide