NAME App::Manager - installing/managing/uninstalling software packages. WHAT IT IS This module traces any dynamically linked program for filesystem-modifying calls such as rename, open64, unlink, remove etc. It will save all the files before they were modified. It can then undo and redo the changes as often as you want. At the moment, Linux is probably the only system that is supported. EXAMPLE Here is a short walk-through: Say, you've just compiled gimp (http://www.gimp.org) in /usr/src/gimp and want to install it. You are not sure wether you want to overwrite your old gimp installation (in case anything breaks), or maybe you want to be able to cleanly uninstall it later, in case you don't like it. Ok, so, instead of a plain "make install" you enter: appman install gimp make install I.e. you start appman with the install command for database "gimp" (database = the place where the diff is stored). The last two arguments are just the standard "make install" command. If you want to switch back to the old situation, all you need to do is: appman swap gimp And the contents of the database gimp are exchanged with the filesystem, i.e. the new gimp files are removed and are being replaced by their old versions (if any). If you call this command again, the installation is re-done (that why it is called "swap"). "perldoc appman" might be even more enlightening ;) INSTALLATION All databases are (currently) stored in one central directory which defaults to /var/appman. If you do not like this you can overwrite it at configuration time: perl Makefile.PL LIBDIR=/some/other/dir