| [ Home | Screenshots | Documentation | Downloads | FAQ ] |
News
| 28 June 2010 | paco-2.0.9 released |
|---|
Description
After the installation of a source package with "./configure &&
make && make install", one is usually left with having no idea of
what it was installed and where it all went, making it difficult to
uninstall the package in the future.
Paco was written to solve this problem in a quite simple fashion.
When installing a package from sources, paco wraps the "make install" command (or whatever command or group of commands are needed to install the files into the system), and saves installation information into a text database.
How does it perform this magic? It is accomplished using the LD_PRELOAD method, which preloads a shared library before installation using the environment variable LD_PRELOAD. During installation, this library catches the system calls that cause filesystem alterations (such as open, link, rename, ...), and logs the created files.
This method is very simple to use and it does not require a "pre-install" phase because it monitors processes while they run.
Since the preloaded library is used by the specific installation process, the created logs are not contaminated with any file created by other processes making filesystem alteration calls. Thus you can even use paco to track parallel installations.
Paco has many usage options for removing packages, looking at package files, file counts, sorting, missing files, etc. Run "paco -h" on the command line, or "man paco" for more information.
There's also an online version of the man page available.
The system-wide configuration file for paco is /etc/pacorc. Type "man pacorc" for more details.
Usage
Typical usage of paco is as follows:
Become superuser and install the package with paco:
See the man page for more information.
GPaco
GPaco is the graphic interface of paco. GPaco uses and depends on the
GTKMM
library. It's not meant to be a replacement of paco, since it lacks some
important features like logging package installations, but it allows for
manipulating the installed packages in a more comfortable way.
GPaco requires GTKMM >= 2.12
Supported platforms
Paco has been successfully tested on the following platforms:
| OS | Version | Architecture |
|---|---|---|
| Linux | 2.2 | Alpha |
| 2.4 | x86 | |
| 2.6 | x86, AMD64, MIPS64, PPC64 | |
| Solaris | 9 | x86, SPARC-R220 |
| NetBSD | 1.6.1 | x86 |
| 2.0.2 | x86 |
Note:
Paco does not work on systems in which the executables involved in the
installation of the packages (mv, cp, install...)
are statically linked against libc, like
FreeBSD
and
OpenBSD.
Auxuliary scripts
The paco distribution provides the following auxiliary scripts. Except
paco_bash_completion, which has to be installed by hand, all scripts are
automatically installed, unless the option '--disable-scripts' is passed to
configure.
pacoball
Pacoball is a PERL script that creates binary tarballs (or "pacoballs") from packages that are logged in the paco database. It can be used also to reinstall packages by extracting the files from previously created pacoballs.
superpaco
Superpaco is a shell script that installs Debian, RPM or Slackware binary packages without requiring dpkg, rpm or pkgtool, and optionally logs their installation with paco. To install RPM packages, cpio and ( rpm2cpio or rpmunpack ) are required.
rpm2paco
A bourne shell script that converts RPM databases into paco ones. Either the whole local RPM database or only a given number of RPM packages may be converted.
ocap
Ocap is a PERL script that scans the system looking for all files that are not logged in the paco database. Ocap may be given one or more directories as arguments, thus limiting the search to those directories.
paco_bash_completion
This file, written by Christian Schneider, provides bash completion support for paco, in systems that have programmable bash completion enabled. Look at the header of the file for more information.
License
Copyright © 2004-2012 David Ricart, <icnelis@*>
(where * = gmail.com).
Paco is protected by the GNU General Public License.
Look at the COPYING file for more details.
Hosted by
|
|