Q40/Linux Journal A Periodic Publication from Tim Swenson (swensont@lanset.com) Special First Issue Hard Copy Edition INTRODUCTION Welcome to the first issue of the Q40/Linux Journal. It is the intention of this journal to be an informal publication, documenting the differences of running Q40/Linux versus regular Linux. The aim of the Journal is to cover topics that apply directly to running Linux on the Q40. General questions about how to create user accounts, how to change file permissions, etc. are best left to the whole horde of Linux books available. The Journal will focus on topics such as; using the sound on the Q40 with Linux, support for ethernet cards, features of the newly ported kernals, what packages have been tested and work on the Q40, and so on. The audience of the Journal is from the experience Unix user (and know that there is still a lot to learn) and the relative newcomer to Unix this is trying Linux because it is available on the Q40. My first goal is to document the things that I want to know and adding other areas when readers have areas that they would like to see covered. I plan to use the ql-developers mailing list to distribute the Journal and to keep past issues on my web page. I doubt that I can keep the Journal on a set schedule, so I'll start off by not promising a schedule and that the Journal will come out occasionally. WINDOW MANAGERS A Window Manager is better known as a Desktop. It is the graphical front end to the system. Under Linux, there are a number of different window managers available, giving users an almost unlisted amount of choices on how to make the desktop look and feel. For some users, discussion of which window manager is better is a heated debate, similar to arguing which editor is better. Switching Between Window Managers The Q40/Linux CD comes with a number of Window Managers. The one started by default is FVWM95 and provides a Windows95 kind of look for the desktop. The other desktops are FVWM, FVWM2, AfterStep, WindowMaker, Lesstiff, and TWM. GNOME and KDE are popular window managers not included on the distribution CD. The way to start X windows and a desktop is this: % startx The startx script runs .xinitrc (first locally and then in /usr/bin/X11R6/xinit/). Then .Xclients is run (again locally or in the root X11 directory). This calls RunWm which then executes the window manager of choice. Which window manager to run is listed in the .wm_style file. To define which window manager is used, edit the .wm_style file with one of the following lines: AfterStep fvwm95 WindowMaker Lesstif fvwm tvm For more information on the window managers, how to use and configure them, see the following web pages: fvwm & fvwm2 - www.fvwm.org fvwm95 - ftp://mitac11.uia.ac.be/html- test/fvwm95.html Afterstep - www.afterstep.org WindowMaker - www.windowmaker.org For a web page that covers the different window managers, goto: www.plig.org/~xwinman/ RPM PACKAGES Red Hat Package Modules (RPM) is becoming a standard way of distributing applications in Linux. In the past, tar files were the standard, with each vendor (Sun, SGI, HP) developing thier own way of creating a package management facility. RPM packages come in either a binary or source form. A binary form means that it contains pre- compiled binaires for a specific architecture. A source form means that it contains the source code used to create the binary package. With Q40/Linux we can use three different RPM packages, source, no-arch, and m68k. A no-arch package is loadable on all architectures and is usually shell or perl scripts. An m68k package has pre-compiled binaries for the m68k architecture. Both the no-arch and m68k packages do not need any additional work to have then run on the Q40. A source package needs to be recompiled before it will work on the Q40. Each RPM package comes with a .spec file that defines some aspects of that package. Usually the .spec file is configured to know how to recreate a binary package from the source package. This means that if there is no m68k package for an application, but there is a source package, we can download the source package, run some RPM commands, and end up with a m68k package, ready to be installed. To recompile a source package do the following: rpm -ihv package.src.rpm rpm -ba /usr/src/redhat/SPECS/package.spec The binary package will then reside in the /usr/src/redhat/RPMS/ directory and can then be installed. In some cases, the .spec file is seriously lacking the information necessary to recompile the package. Some package has not been modified to work fully as an RPM and have other ways to install. With some you may need to do a 'configure' and then 'make'. 'configure' is a well used tool that determines what c compiler, c libraries, and such things, are available on a system and then creates the proper Makefile for the application. Then, once 'make' is run, the application is ready for use. Before installing any RPM's, you will need to add a line to the file /usr/lib/rpm/rpmrc: arch_compat: m68k : noarch Without this, the 'rpm' software will tell you that an m68k is not the right architecture for the Q40. This line defines what architectures can be installed on the Q40. TESTED RPM PACKAGES pente-2.2.0-1.src.rpm This is the board game called Pente. unzipped with gzip untarred it 'configure' 'make' xpinguin-1.0-1.src.rpm This displays Tux, the Linux penguin, on the screen for you to move about with the mouse. added 'touch xpinguin.c' to the spec file just before the 'make' SOURCE OF RPM PACKAGES RPM packages can come from two different sources, CD-ROM and the Net. For finding RPM packages on the Net, try www.rpmfind.net. This is the main online repository for most RPM packages. The difficulty in downloading RPM's off the Net is the time it takes to download a huge package over a relatively slow phone line. Getting packages off of CD-ROM can sometimes be easier. A good source of cheap source CD-ROMS is www.cheapbytes.com. A number of CD's are available for $2 each, and even some are free. I was able to pick up 8 CD's for under $20 (including shipping). Some of the better CD's I bought were: CheapBytes Linux Source CD containing Red Hat 6.1 CheapBytes Red Hat 6.2 Source CD CheapBytes Games Archive CD Edition 1 Packages Galoree Edition 3 CheapBytes Miscellaneous Archive CD Edition 1