Alexander E. Patrakov wrote: > Greg Schafer wrote: > >> Pacman rules!!! :-) Oops, sorry, back on topic. I guess Slackware >> scripts could be adapted judging by the content at Jaguar Linux: >> >> http://www.jaguarlinux.com/ >> >> > > Thanks for the link. Indeed, it looks that a lot of work has been > already done for us. > > If anyone is interested and/or familiar with Solaris' package management system, I have written a set of scripts that implement that package manager on linux (*NIX really). You are more than welcome to them if you want them. There are 4 scripts to it and they are so generic that they will even work on older QNX systems.
One of the nice things about the Solaris package manager is that *every* file installed is registered in a database (just an CSV file so no DB software like SQL needed) so it's easy to find out what has been installed. Package removal references the database to remove files. Furthermore, more than one package or more than one instance of the same package can claim ownership of a file such that removal of a file will not occur until the last package claiming ownership of a file is removed. During removal, only registered files are removed so any user created files remain. Registered directories are only removed if they are empty so if the user adds files to a registered directory after installing a package, package removal will not delete them because they are not registered and the registered directory will then not be removed. This prevents loss of user generated configuration files and the like. The package manager can solicit information from the user if needed. This can be for things like agreeing to license agreements or allowing the user to select his desired installation directories, etc. The nice thing is it's really easy to use in terms of package installation or removal. Package installation is: ./pkgadd -d . Package removal is pkgrm <pkgname> Well, this got much more long winded than I intended. If interested or you want more info, let me know. Or, if you happen to have access to the Solaris package manager documentation, take a look at it. Everything in it is implemented in my script based version. Mike -- http://linuxfromscratch.org/mailman/listinfo/lfs-dev FAQ: http://www.linuxfromscratch.org/faq/ Unsubscribe: See the above information page