Most programmes I download are source tarballs (tar.gz format). They aren't actually much harder to handle than binary packages and the nice thing about a source package is that if you have some knowledge of programming you can tweak the package to run on your system if there's a compile error. I have had to do this with a few packages.
To install a typical source tarball, follow the following steps:
If a package has different install requirements they will be detailed in the README or INSTALL files. Slackware packages (distributed as *.tgz files) can of course be installed using installpkg. To install a non slackware package so that it can be removed or manipulated using the package tools try checkinstall (available in the slackware extras directory). Using checkinstall is easier than it sounds. Simply type checkinstall make install (or whatever the install command is) instead of just make install.
Binary packages are generally installed one of two ways: either by simply unpacking the archive wherever you want it, or by unpacking and running an install script. In addition to the official binaries from the Slackware mirrors, you can also find Slackware packages at Linux Packages.net.
When I first switched to Linux full time I was in the middle of an academic term and stuck with a useless Windows installation using up 1.2 Gig of my 2 Gig harddrive. With such limited space I couldn't install any of the more impressive Linux word processors (like OpenOffice or Abiword) so I had nothing that would read Microsoft Word or Word Perfect files. Two programmes came to the rescue. One was Antiword; the other a DOS based viewer which I run under Dosemu.
Antiword is a simple command line tool for converting an MS Word document to text or postscript format. Very useful for stripping the junk out of a document or converting it to a format usable on Unix based machines.
Installs like a normal tarball, but use make global_install to install for all users. If you do a global install, make sure to make a symbolic link in all users' home directories to /usr/share/antiword (ie ln -s /usr/share/antiword/ .antiword/). If installing for a single user the .antiword directory will be created automatically.
To install using checkinstall, stop after the make and add the following line to the Makefile: install: ; -cp -fp cdplay /usr/local/bin; chown root.root /usr/local/bin/cdplay Then type checkinstall make install.
This is a nice programme as it can be run in the background.
Multi protocol Instant Messaging client with an ncurses interface and no annoying dependencies on Gnome or KDE libraries; thus it runs nicely on the stripped down install of Slackware 9.0 on my laptop. Requires ncurses; openssl or gnutls are optional.
This package takes a while to compile on slow machines (200 MHz Pentium), but installation follows the standard for source tarballs and I have never had compile problems.
Initial setup is done when you first run the programme. Type 'centericq' at the command line and fill in the appropriate information. To end use the cursor keys to switch from change to done. To exit the programme type 'q'. The 'Esc'ape key will return you to the contact list screen.
Your existing server side contact lists for ICQ, Yahoo, MSN and AIM should be automatically picked up. New contacts can be synchronised within the account setup page. To upgrade I've always simply installed over the older version so my settings are retained in my .centericq/ directory. Comes with conversion utilities for importing contact lists from some of the other Linux/Unix based instant messaging programmes.
A DOS emulator which runs the included stripped down copy of freedos; works under X or at the console.
This package is meant to be installed for a single user, but I've modified things so it runs for all users. To keep the DOS and Windows programmes together, I've installed Dosemu into the "C:" (/c) drive of my WINE installation. To install change to /c and then simply untar the two dosemu files.
To make Dosemu usable for multiple users it's necessary to do some setup work. In a single user installation this is done by the Dosemu programme when it is first run.
Create a .dosemu directory in your home directory. Then create a file called bindist_path in .dosemu. This file should contain one line: the full path to your dosemu installation, for example /c/dosemu. Everything else should be created when you first run dosemu, which should initially be done from your dosemu directory (ie /c/dosemu). [Note: when running dosemu at the command line, you may need to hit return and then type "fg" to bring the dos emulator into the foreground so it can be used.]
This directory needs to be readable and writable for all users who will be running dosemu. Create a group for this using groupadd (groupadd dosemu), add users to this group using usermod (usermod -G [full list of groups including dosemu] userid), and give this group the appropriate permissions using chown (chown -R root.dosemu *) and chmod (chmod -R 770 *).
I installed a bunch of old dos games to run with dosemu (including 3-demon a 3-D packman like game) and some dos based utilities like pkzip and view (an excellent shareware dos based viewer for word processor files).
This is a port (still in beta) of my favourite Windows based text editor and one of the only programmes I missed when I switched to Linux. I had been working to get this running under WINE with some difficulty, but this port works beautifully and you would hardly think it's still beta software (apart from some clipboard issues). Editpad is a graphical text editor with all the ease of use of notepad/nedit and some part of the power of VI. One of its best features is the ability to search and replace across all open files.
Editpad is distributed as a binary package and requires a special version of QT. See the website for more details. The programme does not yet have an installer, it's simply a matter of untarring it wherever you want and running the editpad script to use it. I altered this a bit and copied the editpad programme and script into /usr/local/bin and then moved the QT libraries to /usr/local/lib. Then I edited the editpad script to look for the libraries in /usr/local/lib, which was just a matter of changing the library path in the script to /usr/local/lib.
Usually you need to edit, at minimum, the FROM line and the NAME line. You may also need to set the correct device name if you're using something other than /dev/modem and the full path to ghostscript if you want to fax postscript files. The fax script assumes you have xloadimage installed, if not you need to install it or change the value of VIEWCMD (eg: display -).
Now that efax is installed you should be able to send faxes using the command "fax send xxx-xxxx document" where xxx-xxxx is the number of the receiving fax. Problems with this may be due to inadequate permissions; the modem device must be usable by ordinary users. Try adding the users to the uucp group using usermod (ie usermod -G uucp userid, note that if the user belongs to any other groups you need to list those as well: usermod -G cdrom,audio,uucp userid).
Now when you want to fax you can select your new fax printer from the list of available printers in OpenOffice. A dialogue will pop up asking you for the phone number. The only problem with this approach is that you don't get any feedback about errors. You can try "fax send -v (PHONE) (TMP)" in that case.
An alternate method involves setting Efax up to run through the lpd daemon. See the efax enhanced page for more information.
freesweep is a console based minesweeper game. Installation follows the standard for source tarballs. If you're not interested in debug information, use ./configure --disable-debug-log instead of just ./configure.
gShield is an iptables firewall configuration script which is heavily commented and easy to setup. To install simply untar into /etc/firewall. Then, create a symbolic link in /etc/rc.d to gShield.rc (ie: ln -s /etc/firewall/gShield.rc /etc/rc.d/rc.firewall) so the firewall will be started on the next boot. To start the firewall manually type /etc/firewall/gShield.rc --start.
Edit gShield.conf. Set FW_ROOT to "/etc/firewall". If you have a home network set MULTI to yes and edit the value of eth1 as required if you have more than one network card. If you use DHCP (cable, etc) you'll need to add your DHCP server's address to DHCP_SERVERS and set ALLOW_DHCP_LEASES to yes. Read gShield.conf for more information.
Httrack is a website mirroring programme. It runs at the command line or via a GUI. It has more features than wget or curl. Installs like a standard tarball. The simplest way to run this programme is to type httrack and the url you want to mirror at the command line. This will retrieve that page and other pages or images linked to it which are on the same server.
Mp3blaster is an ncurses based music player with all the features of the fancy graphical players.
Installation follows the standard for source tarballs.
A file explaining the commands available in mp3blaster can be found at /usr/local/share/mp3blaster/commands.txt. The sample.mp3blasterrc file can be copied to your home directory as .mp3blasterrc if you want to change any of the commands used by the programme, for example, to stop conflicts with function keys under X.
OpenOffice is a complete office suite including a word processor, spreadsheet, presentation software, drawing programme, calculator and addressbook. This means that it is resource intensive and large for an open source application. OpenOffice requires 250 MB of disk space and 64 MB of RAM. However, it also provides excellent support for Microsoft Word, Excel and Powerpoint files. It can be run on older machines--I am running it on a 5 and a half year old laptop, 200 MHz pentium with 96 MB of RAM. On this machine it is slow, but fully functional. On newer, faster machines it is considerably faster.
There are two install modes: graphical and command line. I tend to use the command line installer on my laptop as the graphical installer is rather slow. Untarring OpenOffice creates an install directory. Change to this directory and type ./setup (or ./install if you prefer not to use the graphical installer).
For printer setup, see the printing section of Setting up Slackware Linux. See setting up Efax as a fax printer in OpenOffice for more information on faxing directly from OpenOffice to a faxmodem.
Template files for OpenOffice can be found in the documentation section of the OpenOffice.org site.
Support for Word Perfect files can be added with libwpd which is a Word Perfect document filter library for wordprocessors. This library comes with tools which can be used at the command line to convert a Word Perfect document to other formats. To convert to OpenOffice format also download the file called wpd2sxw. There is also a filter which can be added to OpenOffice so Word Perfect files can be opened within the programme.
Install libwpd like an ordinary source tarball. Run ldconfig to update the library paths if necessary. Install wpd2sxw like an ordinary source tarball, if ./configure complains about not being able to find libwpd-1 add the following to the PKG_CONFIG_PATH: /usr/local/lib/pkgconfig (ie export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig).
The Word Perfect filter for OpenOffice would not compile properly from source so I grabbed the static binary. Untar this and follow the instructions in the README file for installation. If an OpenOffice version is specified use the instructions for OpenOffice 1.0.1. The filter is not perfect, it has a tendency to fail to open files unless you specifically select "Word Perfect 6/7/8/9/10" from the file types menu, but it does open Word Perfect files in OpenOffice without the need to run a separate conversion programme first.
Samba allows Unix/Linux computers to share files and printers using the SMB protocol. A Samba package comes with Slackware and can be downloaded from any of the Slackware mirrors and installed using installpkg.
Like WINE and dosemu, Samba requires some setup before it can be used. The first step is to make sure that your windows machine(s) are setup for file and printer sharing. (Note: this section assumes that you already have a working network.)
Once Windows is setup for file and printer sharing you may also want to edit the lmhosts file so you can type in computer names into windows instead of IP addresses. This file is at C:\windows\system32\drivers\etc\lmhosts on Windows 2000. The file consists of two columns, the first containing IP addresses and the second computer names.
xxx.xxx.xxx.xxx computer1 xxx.xxx.xxx.xxx computer2 xxx.xxx.xxx.xxx computer3
hosts.allow describes the hosts which are allowed to connect to your computer. The file contains information about what service you allow access to and IP addresses or ranges separated by a colon. For example, the following file allows localhost to access all services, gives full access to another machine and access to samba to a third machine.
# allow localhost ALL : 127.0.0.1 # allow computer2 full access to services ALL : xxx.xxx.xxx.xxx # allow computer3 to access samba samba : xxx.xxx.xxx.xxx
hosts.deny lists the computers which are not allowed to connect to your computer. Your hosts.deny should contain something like the following line to prevent access by anyone you haven't specifically allowed.
ALL:ALL EXCEPT localhost:DENY
The hosts file contains lists of IP addresses and associated names (the windows lmhosts file has the same format as this one).
[global]
netbios name = computer1
server string = "description of the computer"
workgroup = MY_WORKGROUP
security = share
log file = /var/log/samba.log
socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192
encrypt passwords = yes
smb passwd file = /etc/samba/smbpasswd
hosts allow = xxx.xxx.xxx. 127.
# only add as much of the number as necessary to identify the computers, localhost can be
# identified using only 127. a private network may require the first three numbers in the IP
# address.
hosts deny = ALL
invalid users = root
message command = /bin/sh -c 'xmessage "%f" "%m" %s; rm %s' &
interfaces = eth0
[public]
path = /home/ftp
guest ok = yes
writeable = yes
[printers]
comment = All Printers
path = /var/spool/samba
printing = bsd
browseable = yes
read only = yes
printable = yes
guest ok = yes
[homes]
comment = Home Directories
browseable = Yes
writeable = Yes
cat /etc/passwd | mksmbpasswd.sh > /etc/samba/smbpasswdand the passwords can be modified by using smbpasswd -a userid. New users can be added using the useradd command. Ignore any initial errors about a missing password file since you are creating it.
To find out what shares are available on other hosts try smbclient -L //hostname -U username (if different from the one on your current computer). Samba will prompt you for the other computer's password. To connect use smbclient //hostname/share -U username or try connecting graphically in nautilus if you use gnome. It's a little unstable, but it does work. Note, if a file is listed as not being accessible, trying to select it anyway *will* cause nautilus to crash.
The following page http://hr.uoregon.edu/davidrl/samba/ contains information on setting up Samba including a list of diagnostics to follow if you are having problems with Samba setup. Note that firewalls can often be a source of problems when setting up Samba.
To make the linux machine accessible by the windows machines it was necessary to set NO_SMB to NO for other. When set to YES the other computers could access the linux machine but not "see" it in network neighbourhood because gShield blocks the netbios information for the SMB protocol. (If you're going to do this I highly recommend a good router with a hardware firewall so the netbios information is only leaked to the internal network.)
To print from a windows machine to a linux printer, simply go to the Add Printer wizard (Start -- Settings -- Printers) and add a network printer.
To print from a linux machine to a windows printer, use the smbspool command. Since the two printers I tested this with are both postscript printers it was necessary to convert files to postscript using a2ps before printing.
a2ps -o - filename | smbspool smb://userid:password@workgroup/computer/printer jobid user title copies options
(where jobid, copies and options can simply be set to 1, user to the username and title to the filename).
Swaret is a package updater for slackware. It will access a Slackware mirror site (and try others if the first ones don't respond) and compare your system to the current version (or specified version) checking for updated packages. Simply untar and run the install script as root.
Note, with more recent slackware updates version 1.2.1 needs to have the check for i386 platform edited, some slack packages are coming out as i486, or upgrade to version 1.2.2 or higher.
See the section on upgrading slackware for tips on how to avoid upgrade problems.
Ted is an RTF writer which handles reading and writing of RTF files. Ted writes RTF0 files, but can read and parse most RTF1 files as well. Ted also comes with scripts to convert RTF files to PDF or PS. It has minimal system requirements and no annoying dependencies on KDE or GNOME. To compile from source you need the openmotif or lesstif libraries installed.
Compiling from source generates errors on Slackware and the install script has never worked properly for me so I download the precompiled binaries and follow the manual install instructions included on the website. If installing manually, Ted assumes that it is being unpacked into /usr/local. Simply move the tarball to /usr/local/ and untar it. Follow the same step to install additional dictionary files.
"Don't leave $HOME without it!" (UnixTree's motto)
An Xtree clone for Unix (screen oriented file manager) formerly known as Xtree for Unix systems. I've tried some of the classic Unix file managers and often been unimpressed. XFM is a big improvement over Midnight Commander, but still not my favourite tool. In contrast, Xtree was always a favourite of mine and I continued to use it well after Windows/DOS came out with its own filemanager and then explorer. In terms of file management and ease of use, Konqueror might just be better, but I'm not sure I like the combination of a web browser and a file manager. (In the current computing world with viruses, trojans and hackers trying to crack a computer it seems like a bad idea to make the web seem like a simple extension of ones personal files.)
UnixTree was another binary install. I unzipped it into /usr/local/xt and added this to the path then copied the man file to /usr/local/man/man1. UnixTree comes with integrated help which needs to be in the same directory as the programme itself.
Unrtf is a command line RTF to text or html converter.
Follow the first 3 steps for a standard source tarball then type make all to compile and make install to install.
WINE is an implementation of the Windows environment for Linux/Unix based machines. It installs from a source tarball in standard fashion, but requires some setup before it can be used. (Note: if WINE complains about missing libraries run ldconfig to 'register' the libraries.)
Many people with a dual boot system use WINE to access their existing Windows setup. My laptop is a pure linux machine so a slightly different setup was required. At minimum (and this is an absolute minimum), you need a "C:" drive, a windows directory and a system directory beneath that (eg: /c, /c/windows, /c/windows/system). If a programme complains about a missing directory or file, create it and try again. You will probably want a "Program Files" directory as well as a "My Documents" directory since many windows programmes try to install to Program Files and write their documents to My Documents by default. (Note: the following script wine-base.sh will do this setup, plus some additional useful steps. Wine-base sets up useful directories and creates links to the WINE versions of standard windows programmes such as notepad.)
The WINE config file (/etc/wine.conf or $HOME/.wine/config) now needs to be edited to point to the "C:" drive and other drives/directories you want WINE to be able to use (eg: setting the cdrom path to /dev/cdrom). If you add additional drives or directories you may need to edit the WINE path as well.
Since WINE requires that the "C:" drive be readable/writable by all, I created a wine group and gave it read/write access to this and other drives. I also made sure my audio and device permissions allowed group read/write access to the audio devices and the cdrom and other peripherals. The winecheck script complained about /dev/mixer1, but I solved this for the moment by turning this into a symbolic link to /dev/mixer. Currently midi support is still missing from my setup.
Using this setup I can run Solitaire, Minesweeper, Notepad, Sim City Classic (Sim City 2000 won't install), Sim Farm and other Windows programmes. I was also able to get wineconsole to run a few DOS programmes (like view) by using the --backend=user parameter (eg: wineconsole -- --backend=user /c/programme.exe).
Dockapps are programmes that sit in the WindowMaker dock. Common examples include clocks, calculators, and programme launchers. Unless otherwise specified, these dockapps require WindowMaker.
Eliminates the need to type "mount /dev/whatever" whenever you want to access one of your drives. The mount applet sits in the WindowMaker dockapp (can be run under other window managers as well as a small floating window) and allows single click mounting and unmounting of drives.
wmCalClock is a clock applet which provides the date (in digital format) and the time. For some reason most clock applets default to analog settings whereas I prefer digital display.
Change to the Src directory then do a make and make install as usual. Type wmCalClock --help to find out how to change the background/foreground colours, switch from 24 to 12 hour mode, etc.
Nice drawer applet which provides the ability to add more programmes to an overcrowded dock without making the crowding much worse.
Follow the usual steps for installing from a source tarball. Copy the file wmdrawerrc.sample to your home directory as .wmdrawerrc (ie cp wmdrawerrc.sample ~/.wmdrawerrc) and edit this file to suit your system.
Applet for monitoring activity across an interface, for example your ethernet card. Provides various graphical representations of traffic to and from your computer. Follow the usual steps for a source tarball.
A graphical interface to apm which shows the amount of charge left in the laptop's battery. Follow the usual steps for installing a source tarball.
wmShutdown is a simple applet for making shutdown and reboot under Window Maker a point and click endeavour. As distributed it is a bit insecure as it relies on setting shutdown and reboot to allow anyone to run them as root. If you have a strong firewall and a single user system this is probably not a big deal. But, with a few modifications, you can make the programme use sudo instead. (Note that this requires that you have sudo set up to allow users of the system to run shutdown without a password.)
Unpack the archive, change to the wmShutdown directory and open the file shutdown.c. Where you find the command "/sbin/shutdown" change this to "sudo /sbin/shutdown". Save these changes and close. Now open the Makefile. Remove the following two lines:
chmod +s /sbin/shutdown chmod +s /usr/local/bin/Shutdownthen save and close.
To compile, type make dock && make shutdown then do a make install as usual. To run type wmShutdown & at the command line and then drag the icon over the the WindowMaker dock. Now the system can be shutdown or rebooted with two mouse clicks. (This is very convenient on a system which boots directly into the window manager. On a system that doesn't, it's just as easy to create a 'shutdown' alias.)
This package provides a graphical interface to PPP and effortlessly handles multiple ISPs, however, it was a bear to compile with gcc 2.9.5. I highly recommend compiling with gcc 3.2.2 and using yawmppp 2.0.2 or higher as this combination worked without errors.
Run yawmppp and drag it to the dock. To configure, right click on the yawmppp applet to add an ISP. To view the connection log left click. Though this application is designed for Window Maker it will run under other window managers/desktop environments (try typing yawmppp.thin instead if you're not using Window Maker, this version of yawmppp is a bar rather than a square).
[Viewable With Any Browser] [Lynx Friendly!]
Author: Margaret Kipp
Changelog:
30 May 2003 - created
08 June 2003 - dockapps, libwpd
12 July 2003 - word perfect filters for openoffice, samba, swaret
[Return to Table of Contents] [Setting up Slackware Linux] [HOME]