ver. 0.90 2000-09-01 by Stan and Peter Klimas Distributed under the General Public License http://www.gnu.org/copyleft/gpl.html. Your feedback, comments, corrections, and improvements are appreciated. Send them to penguin@thepenguin.zzn.com Part 6: Some Essential Linux Applications (proprietary or not) Contents: 6.1. Word processing 6.1.1 Word Perfect 8 for Linux 6.1.2 Star Office Suite 6.1.3 Applixware 6.1.4 abiword 6.1.5 Ted 6.1.6 klyx, lyx and latex 6.2 Spreadsheet 6.3 Databases 6.4 CAD 6.5 Web browsers: Netscape and Lynx 6.6 Writing CD-Rs: cdrecord and cdparanoia Intro. This is not a complete coverage of Linux applications. Selection criteria were: (1) the application is not installed during the default RedHat installation--the user must take active steps to find / install it; and (2) we particularly like or use this application, or a reputable source led us to believe that it is a really worth recommendation. There are thousands of Linux programs. If you are unsatisfied with our lean choice, try: http://www.linuxapps.com/ or http://stommel.tamu.edu/~baum/linuxlist/linuxlist/linuxlist.html or http://www.boutell.com/lsm/ or http://www.linuxlinks.com/Software/ 6.1 Word processing6.1.1 Word Perfect 8 for LinuxThis is a very good, powerful and standard word processor. A free version is available for personal use. Try: http://linux.corel.com/linux8/download.htm (free registration of the program is required). The free version lacks the equation editor, built-in graphics editor, chart editor and the "art text", but it is otherwise a fully functional version of the best word processor in the world. The full version costs about $50. The file format of the Word Perfect 8 for Linux is the same as WordPerfect 6, 7 or 8 for MS Windows. Also, the file-level compatibility with MS Word is very good--I had instances in which WP8 was actually be more compatible with the different "sub-versions" of MS Word file format than MS Word itself. More complex MS Word documents, however, tend to look ugly after translation. On the down side, Word Perfect for Linux often feels very slow, particularly when scrolling larger documents--StarOffice beats WordPerfect easily on that (see the next section). WP8 is normally launched through an icon or from the K-menu but you have to add this yourself after the installation. The main executable is /usr/local/wp8/wpbin/xwp, but the location may vary, depending where you installed it. Use the command locate xwp or find / -name "xwp" if you cannot find it. To "manually" launch WP8, try in X-terminal: /usr/local/wp8/wpbin/xwp Corel just released (Nov. 1999) their own Linux distribution (based on Debian) , which apparently centers around their WordPerfect suite (WordPerfect word processor, Quattro Pro spreadsheet, etc.) different from their current offering on Linux in that it will be based on the GPLed "Wine" (=MS Windows-Application Programming Interface-Emulation) library. 6.1.2 Star Office SuiteStar Office is a very complete office suite: word processor, spreadsheet, presentation program, drawing program, html editor, all integrated with it's on "desktop" which some hate. Full version is available for free for both Linux and MS Windows--it can be downloaded over the Internet: try http://www.stardivision.com/freeoffice/ (large, 60-80 MB download, probably not practical with a modem). Star Office source code has recenently been released under GPL (August 2000) so it is sure to be soon vigorously developed. Star Office looks and acts very much like MS Office for Windows. This includes richness of features, large size, and being slow on startup. It may not be worth the trouble without at least 32 MB of physical memory. It has a very good file-level compatibility with MS Office: read and write MS Word, MS Excel and MS PowerPoint file formats. The StarOffice word processor is faster and feels better than WordPerfect for Linux. In short, we highly recommend StarOffice to cover your every-day office needs. The installation of StarOffice is confusing and it goes like this: - Make sure you have enough hard drive space. To check the space use the df (="disk free") command: df -h This displays a report on the used and available hard drive space in a human-legible form (option -h). At minimum, you need some 230 MB of free disk space (of which, 70 MB you can release after installation). - Decompress the downloaded file. I did is a root in the /usr/local directory for "local server" installation, but you may choose /home/your_login for "personal" installation: cd /usr/local tar -xvf - As root, run the setup program for a "local server" with the DOS-style /net switch: setup /net - After this "network" installation, each user has to perform her/his own "workstation" installation to put personal files into their "home" directories (run setup as a user, without the /net switch). 6.1.3 ApplixwareApplixware is another complete office suite. It contains a word processor, spreadsheet, graphics, presentation, mail, html authoring, and a few more applications. Some say it's the best--we cannot confirm because no free edition is available. See http://www.applix.com/appware/linux/index.htm for more information. If you are really desperate for Applixware, you can download the demo at: http://www.download.com/, but do you really want to? StarOffice or WordPerfect are probably a better choice. [Sorry, I have to say this: why do copyright lawyers keep killing perfectly good software?] 6.1.4 abiword(in X terminal) AbiWord (http://www.abisource.com). It is a good light-weight wordprocessor. Worth trying for simple word processing needs. Although still fairly incomplete, it is quite useful to me, e.g. it supports spelling-as-you-type without the overhead of WordPerfect or StarOffice. It is under heavy development and both version for Linux an MS Windows are available. Included on Mandrake distribution CD. 6.1.5 Ted(in X terminal). An excellent looking *.rtf text editor. The version I have like crashing though. Ted is not included on RH or Mandrake CDs that I know of. 6.1.6 klyx, lyx and latex(Type klyx or lyx in X windows terminal). Both klyx and lyx are front ends (WYSIWYG, running under X-Windows) of Latex. Klyx is a "K-desktop" variant of Lyx and is nicer to use. Latex has for years been the heavy-duty document preparation and typesetting program, particularly popular in academia (good with equations, etc.). The good news is that even if you do not know what Latex is, you may still be able to use Klyx. Think of Klyx as a word processor, although its philosophy is different from that of other popular word processors, and therefore it may require an adjustment of your mindset. Latex (and Klyx) philosophy is to type in the text, define the "styles" and leave the formatting to the typesetting program. This means you never adjust the spacing (between words, sentences, paragraphs, chapter, etc.) manually. When done with typing of your document, you "compile" your text to create a device independent file ("*.dvi"). The *.dvi file can be viewed using a dvi viewer and printed. The quality of the output is usually outstanding, but its creation process is typically somewhat more frustrating than using a regular word processor. The strength of Latex is the quality of the printouts, its capability to cope with long, complex documents (technical books, math, etc.), availability of all foreign characters and even rarely used symbols, its portability across many different platforms, and the popularity of the file format. Klyx is free and it is included on your Mandrake CD for you to try. As almost any piece of Linux software, you can also download it from Linuxberg: http://idirect.linuxberg.com/kdehtml/off_word.html or any other fine Linux software depository on the Internet. If instead of easier Klyx, you wanted to try straight, hard-core Latex, here is some intro to get you started: latex my_letex_file.tex * Print the "my_latex_file.dvi" file which was created by the previous command by invoking the dvi to postscript utility, that on default send the output to the lpr printer: dvips my_file.dvi You can also save the output to postscript file by typing: dvips -o output_file.ps my_file.dvi The option -o introduces the output file. Here is my sample Latex file: % Any line starting with "%" is a comment. \documentclass[10pt]{article} % Three commands are present in every Latex document. Two of them are This is a simple document to try \LaTeX. Use your favorite plain text Here starts the second paragraph (use one or more empty lines in your The document class of this sample is ``article'' and it is defined at the Please note that the double quote is hardly ever used, utilize opening and closing quotes nicely. Here are different typefaces: You can itemize things: You can also enumerate things: Try some foreign letters and symbols: Try some accents over the letter ``a'': \'{a} \`{a} \"{a} \^{a} \~{a} The pair of ``\$'' marks a math context. Many special characters are Small: $ \alpha \beta \gamma \delta \epsilon \varepsilon \zeta \eta Capital: $ A B \Gamma \Delta E Z H \Theta I K \Lambda M \Xi \Pi P Try some equations: $ x^{y+1} + \sqrt{p \times q}=z_{try_subscripts} $ \begin{center} \LaTeX math commands are very similar to those in the old ``Word Perfect'' Use the verbatim mode to print the 10 special symbols which normally have % This command ends the document (this is the third one that *must* be 6.2 SpreadsheetBesides the spreadsheet applications in the suites above (StarOffice and Applixware), you may want to have a look at "xess":http://www.ais.com/linux_corner.html . They have also a slightly scaled down shareware "xesslite" version which can be downloaded from their site. We love the general design of xess (simple and almost self-explanatory if you have technical inclinations, but it does not mean it is simple). It seems to have really good power for engineering applications and in our opinion it may be the best spreadsheet currently available on Linux (although StarOffice spreadsheet is far more "intuitive" if you come from Windows). 6.2.1 gnumeric(in X terminal) Nice spreadsheet, part of GNOME, included with standard RH distributions (RH6.0 or higher). Although still fairly incomplete and slugish, it is already quite usable Gnumeric is under heavy development and definitely has the potential to become really great in the near future--it already has a lot of built-in functions, but its printing is unreliable--major pain. 6.2.2 kspreadKspread is another highly promising spreadsheet. It is part of the KDE project to be integrated with the KDE2.0, most likely you don't have it on your system and I would not advice you to try to install it--it requires next-generation KDE libraries (on which KDE2.0 will be based) and you can screw up your KDE if you try to install these with your KDE1.x version). So far, kspread is not included with RH6.2 or Mandrake 7.0. Both gnumeric's and kspread's file format is xml (the already standard, next-generation, enhanced html). This file format is definitely good news if you ever experienced problems with MS-Windows-based spreadsheet file formats. 6.3 DatabasesIf you are a database person, you will be pleased to see that Linux is very well covered in this area. postgreSQL is a high-powered database available on Mandrake and RH CD (free,unrestrictive BSD license). mySQL http://www.MySQL.com/ GPLed database, simplier and easier than postrgreSQL. Sybase for Linux (edited for space): From: Rumy Driver <rdriver@sybase.com> Organization: Sybase Inc. Check: http://www.sybase.com:80/sqlserver/linux/aselinux_install.html for more information. Interbase for Linux can be downloaded free for personal use: http://www.interbase.com/downloads/products.html . There is also Oracle for Linux: http://platforms.oracle.com/linux/index_lin.htm. For an Oracle-Linux howto, see: http://jordan.fortwayne.com/oracle/index.html 6.4 CADQCAD (GPL): http://www.qcad.org (simple but very useful) 6.5 Web browsers: Netscape and LynxYou probably have installed a 4.xx version of Netscape during your RedHat installation. To run it, try (in X-terminal): netscape If you didn't install Netscape, you may want to put your RedHat CD into the CDROM, mount it using, for example (as root): mount -t auto /dev/cdrom /mnt/cdrom and then start, from X-terminal: glint (for RH5.2) or gnorpm (for RH6.0) or kpackage (for RH6.1) to browse the available packages and perhaps install netscape from your RedHat CD. If you prefer to do the installation from from the command line, try, after mounting the CDROM: cd /mnt/cdrom Netscape is a very good browser, with the same look, feel, and power as Netscape for MS Windows, so you will have no problems navigating it. On the dark side, Netscape sometimes crashes (just disappears from the screen, no damage done, you have to restart it). Also, in some configurations, Netscape does not like to be be run without a connection to the Internet (depending on your configuration, Netscape can take it up to a couple of minutes to figure out that there is no connection). Netscape version 4.72 seems to be much better then previous versions, so you if having problems you may consider upgrading. If your Netscape version lower than 4.72 is too buggy to you, you may want to disable Java ("Edit-Preferences-Advanced"). This improved the Netscape reliability tremendously on my system. Additionally, you may want to disable the automatic checkup for new mail (solved the "freezing" problem I used to experience when working off-line), empty your mail "trash" bin, compress the mail folders on regular basis, and disable Java scrip. After doing all of this, my previous versions of Netscape worked quite nicely. If your Netscape crashes and on a subsequent re-start complains about the presence of a lock file, it might have left a lock file in your home directory. Just quit any instance of Netscape that you might be running and delete the "lock" file from the directory /home/user_login_name/.netscape: cd ~ If your ISP connection is really slow, you may prefer a text-based browser: lynx which is a real piece of art and does not have any problems whatsoever. Don't expect it to look as fancy a GUI-based browser though--it is text-mode based. Another choice of a Internet browser is your KDE help utility (click on the "book with the lightbulb" button on you K-bar). This is a simple html browser so if you are connected to the Internet (e.g. using your kppp), you can browse almost anything using this utility. To compose html pages, I use Word Perfect, StarOffice or Netscape (WYSiWYG view) and WebMaker (code view). 6.6 Writing CD-Rs: cdrecord and cdparanoiaDisclaimer: Copying copyrighted material is illegal. Do NOT use the instructions below for anything illegal. INTRO Setting up a CD writer can be tricky. For good intro info see the page http://www.guug.de/~winni/linux/cdr/html/CD-Writing-3.html . I used the above document to set up a cheap, no-name IDE-ATAPI CD writer on a PC running RH6.0. It works great, and no changes to my setup were required after the recent upgrade to RH6.1 or RH6.2. My experience is that writing CDs under RedHat is much more reliable than under MS Windows (estimated 95% success rate!). I had problems achieving reliable results with Mandrake though. Here are the steps I followed (almost everything has to be done as root): SETUP o In the file /etc/lilo.conf , add a line at the end of the Linux "image" section: append="hdb=ide-scsi" Adjust the line above if your CD writer is not "hdb" (second drive on the first IDE interface). It makes your IDE-ATAPI CD-W(R) to be seen on your Linux system as a SCSI device. (It is not really a SCSI device, it is an IDE device, it just pretends to be SCSI.) Run lilo after making any changes to /etc/lilo.conf . The above change to /etc/lilo.conf appears to be necessary to be able to emulate SCSI on IDE-ATAPI CD-R(W) if you use Linux kernel 2.2.x. o Add the loop devices to the /dev/ directory. This is not a obligatory, but a nice feature if you plan creating your own data CDs. The loop device will let you mount a CD image file (as if it was a already a filesystem) to inspect its content. The loop devices don't exist on my hard drive after Linux RedHat installation, so I create them using: cd /dev/ o Add these two lines at the end of the file /etc/rc.d/rc.local so that the needed kernel modules are automatically loaded on system startup: /sbin/insmod ide-scsi These two kernel modules are needed for SCSI emulation of IDE drives and to support the loop devices, respectively. o Create or modify the device /dev/cdrom so it now points to the correct device , most likely: ln -s /dev/sr0 /dev/cdrom You need to do this because "/dev/cdrom" pointed to an IDE device (probably /dev/hdb) but now this changes since your CD-R is going to be in SCSI emulation mode. o Reboot so the changes to /etc/lilo.conf can take effect. Check if your CD-R(W) still works properly for normal reading. o Download the program "cdrecord" from your favorite Linux software repository (e.g., http://idirect.linuxberg.com/ ). Then install the source code, compile it, install the program, and make symbolic links so that the executable are easy to run (the installation would be much easier if you found a binary *.rpm file): cd /usr/local The program cdrecord is a spartan, command line utility for writing CD. There are several GUI front ends to it, but they will be useless if the underlying cdrecord does not work properly. My advice: use command line for some time--you get to understand how things work, get flexibility, and reliable results. Then you can install GUI front ends to make CD covers, and make things easier for Windows-educated users on your system. o See if your cdwriter is recognized. If it is, it should now show in the output from this command: cdrecord -scanbus CREATING DATA CDs o Create a CD image containing your data: mkisofs -r -o cd_image input_data_directory This makes an International Standard Organization (ISO) standard 9660-type filesystem containing the files from input_data_directory, but writes the filesystem to an ordinary file on the hard drive. This output file is an "image" of the new CD which I am creating. The option "-o" indicates that the parameter that follows is the output filename of this image. The option "-r" enables "Rock Ridge" extensions to the ISO protocol so that file attributes are saved, and it sets the file permissions so all the files on the CD are publicly readable (can be read by all user, not only the file owner). The filenames are abbreviated to the "8.3" DOS-type length but, since Linux supports so called "Rock Ridge" extensions to ISO9660, it also writes the full names and all the file permissions as well--this way the new filesystem is portable across all popular operating systems (DOS, MS Windows, Linux, UNIX, etc)--really convenient to the user. o You may want to inspect the CD image file by mounting it through the loop device: mount -t iso9660 /dev/loop0 cd_image /mnt/cdrom When done with inspection, change your working directory away from the mountpoint and unmount the file: cd o If everything worked, you may burn your data CD: cdrecord -v speed=2 dev=1,0,0 -data cd_image The numbers in "dev=" stand for the scsi bus number (the first one is 0, second bus is 1, ...), device id on the scsi bus (between 0 and 7), and the scsi lun number (always 0) respectively. You must customize them: the first two number can be read in the output from cdrecord -scanbus, the third number is 0. Make sure to use the correct numbers or you may write to a wrong drive and corrupt your data. The timing of writing to CD-Rs is very important, or an error may occur (the laser cannot be switched on and off at will). Therefore avoid doing intensive tasks during creating a CD, e.g. don't create or erase large files on the hard drive. My system will not permit me to start new tasks when using cdrecord . CREATING AUDIO CDs o Audio tracks have to be in files of *.cdr (I guess it is the same as *.cdda.raw), *.wav (wave), or *.au format before you can write them to a CD. o The utility sox converts between the various audio file formats (sox understands quite a few of them). For example, this will convert a .wav file to a .cdr file: sox my_file.wav my_file.cdr You don't need to do the conversions manually - cdrecord supports *.wav and *.au directly (it does a conversion from *.wav or *.au to *.cdr "on the fly"). This is very convenient because audio files tend to be large. o Audio CDs don't contain a filesystem, they store "raw data". This means that you cannot mount an audio CD. Also, each track is written separately, i.e., as if it was a different "partition" on the CD. o To read audio tracks from an audio CD and write them to a suitable file on your hard drive (typical format is *.raw or *.wav) , you need a "cd ripper". A popular CD ripper is "cdparanoia". After downloading the source for cdparanoia, install it (use the autocompletion <Tab> shortcut when typing the long filenames): cd /usr/local The installation program places a proper link to the executable (/usr/local/bin/cdparanoia) so I don't have to create the link manually. To rip the first track from an audio CD, I can use: cdparanoia 1 which will put the first track from the CD into the wave file "cdda.wav" in the current directory. To rip tracks 1 to 2 from an audio CD to a "raw" file format, I can use: cdparanoia -B -p "1-2" The option -B specifies to use a "batch" mode, so that each track is put into a separate file (this is probably what you want, otherwise all tracks would be placed in one output file). The "-p" option specifies output in raw format. The files are named track1.cdda.raw and track2.cdda.raw . To rip all tracks from an audio CD, each track to a separate *.wav file, while forcing reading speed 4x, I can use: cdparanoia -S 4 -B "1-" Make sure you have sufficient free space on your hard drive. You can use use the space on your DOS partition (if you have dual boot). o To write suitable audio files to a CD-R(W), I can use: cdrecord -v speed=2 dev=1,0,0 -audio track* o Older stereos often will not play burned CD-Rs (because of the size of the pits on the CDs). My home stereo cannot read re-writable CDs (CD-RW) at all, although it will read write-once disks (CD-Rs), so re-writables may be good to store data but are useless for audio (unless I plan to play them exclusively on my computer). CREATING MIXED-MODE CDs Mixed-mode CDs (meaning CDs which contain both data and audio, often game CDs) are not a problems, e.g.: mount -t iso9660 /dev/cdrom /mnt/cdrom (mount the data part of the mixed-mode CD) RE-WRITABLE CDs Re-writable CDs (CD-RW) are used the same way as regular write-once CDs (CD-R), but you have to blank re-writable disks before you will be able to re-use them, e.g.: cdrecord -v speed=2 dev=1,0,0 blank=fast To see other (more thorough and slower) options for blanking, use: cdrecord blank=help SIMPLIFYING LONG COMMANDS WITH AN ALIASES alias cdrecord="cdrecord -v speed=2 dev=1,0,0" Re-login for the changes in /etc/bashrc to take effect. After creating this alias, a I can record a CD using the following shortened command (no need to specify the CD writer speed and device name all the time): cdrecord -audio track* |