SourceFiles.org - Use the Source, Luke
Home | Register | News | Forums | Guide | MyLinks | Bookmark

Related Sites

Latest News
  General News
  Reviews
  Press Releases
  Software
  Hardware
  Security
  Tutorials
  Off Topic


Back to files
                              instool manual
                    The Linux Install/uninstall utility

instool is a simple tar.gz package installation tool that will install a package for you while creating an uninstall file. The uninstall file can be used at any time to delete all elements of the package as long as instool was used to do the installation.

instool is simple to use. It has very few options, and is fast. Below are the command line options that instool understands :

packagename Installs packagename (the name of a tar.gz package)

-l Lists all uninstall files available for the current user

-s filename Tells instool to search a makefile in the current directory

              to find all install targets used with the make install 
              command and create an uninstall file. the user must supply
              a filename to name the uninstall file (usually the name of the
              package).

-u filename Tells instool to uninstall a package based upon the

              information created during the installation. The package 
              must have been installed by instool. Uninstall files are 
              stored in the .uninst directory under the users home dir.

-i filename Installs a package. This is the same as using instool

packagename.

For users, instool creates a directory named .uninst in their home directory to store all .uninst files. For root, instool creates a directory named /usr/uninst/ to store all system wide uninstall files. instool records the base directory that each package is installed to as well as all files and paths created during the install.

Listing uninstall files

When used with the -l switch, instool will list all uninstall files for the current user, or for system packages if you are logged in as root. Those filenames must be used with the -u (uninstall) switch. The filenames are based upon the original name of the package installed.

Uninstalling files

Be aware that if you install more than one version of a package, instool will keep seperate files for each install based on the filename of the package. If different versions are installed to the same base path, any uninstall will delete files of the same name from a previous (or later) installation.

Uninstall filenames are stripped of their .tar.gz or .tar.bz2 extensions and stored as the base name with a .uninst extension appended. To uninstall a package, it is not necessary to include the .uninst extension. Just supplying the base package name is enough. use the -l switch to list packages that have been installed with instool.

Makefiles

When used with the -s switch, instool will look for a makefile in the current directory and find the install targets. From this information, instool will build an uninstall file based on the filename that you supply. the -s switch should be used after you have already successfully compiled and installed the package. instool does NOT do an actual installation in this mode. It simply finds what was installed, and where. As an example, if you use :

instool -s svgalib

instool will follow the install process specified in the Makefile and create an uninstall file named svgalib.uninst in the appropriate directory. It will not acually do any installation however. It is important that instool is run after the actual compile and install process because many packages require a configure script be run prior to running make and then make install. The options and variables created by the configure script are important to the function of instool.

If you are root, instool will allow you to change the base install directory before it begins the process. This can be useful for mutiple versions of a package.

instool does not currently delete empty directories during an uninstall. It may in the future, but for now, you have to do that manually if you wish.

This is not meant to be a package manager, or to replace system apps like rpm or apt. It is simply a tool to ease the process of installing a tar.gz package with the option to easily and quickly remove it later. You should always try to find packages specifically for your distributions package management system before resorting to a tar.gz package.

There are packages that are not available in rpm or deb format though, and that is why I wrote instool. The ability to read makefiles and undo a make install at any time without having to keep the source directory intact is a nice feature too. Many makefiles do not include an make uninstall target anymore, as some that do, don't do a terribly clean job of removing files they install.

You can put instool into any pathed directory you like. If you don't want users to have easy access to it, I would suggest /sbin or /usr/sbin since it is not in the default path for users. You can also simply change the file permissions for instool to 700.

instool was written by Jem Miller as it will remind you each time it is run. I am always interested in comments, suggestions, or questions about my software. If you have any, feel free to email me at: mlsoft@sbcglobal.net. I can also be found on the efnet IRC channels #linuxgeneration and #linuxhelp most evenings as the nickname IdiotStic.

Source code is in Pascal and is available be email request to me.

I hope this utility fills some need that you have.


Other Sites

Discussion Groups
  Beginners
  Distributions
  Networking / Security
  Software
  PDAs

About | FAQ | Privacy | Awards | Contact
Comments to the webmaster are welcome.
Copyright 2006 Sourcefiles.org All rights reserved.