appman - install/manage/uninstall software packages.
WARNING: This is pre-alpha and might destroy wyour wholesystem. You have been warned!
appman [-qbhdC] command ... appman [-qbhdC] install <database> <program> [arguments...] appman [-qbhdC] info <database> appman [-qbhdC] swap <database>
This program 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 than undo and redo the changes.
Well, this is an alpha release, so there are not yet many commands.
Run the specified program with the specified arguments and trace all changes. Then check for differences in files and only save files that have changed.
Print some info about the files stored in the database.
Check out all the files in the database, and store the former files in it. If you do this twice no real change should be done (thats why its called "swap").
A trivial one, just install a single file with cp:
appman install test cp testfile /bin/appmantest
Print info about the files that were overwritten:
appman info test
APPMAN: opening db /var/appman/test database path: /var/appman/test creation time: 1999-06-14 14:14:05 modification time: 1999-06-14 14:14:05 1970-01-01 01:00:00 /bin/appmantest
This means that /bin/appmantest was overwritten. Since no such file existed before, the filetime and uid/gid information is not valid.
If you want to restore the file again (in this case just delete it), all you have to do is to enter:
appman swap test
Marc Lehmann <email@example.com>.