File Explorer

/usr/share/doc/rpm

This explorer reads the filesystem of the server it runs on, so /workspace/user isn't present here. Browsing and the terminal still work against this server's own disk from /.

0 dirs
15 files
relocatable2.0 KB · 58 lines
/*! \page relocatable Relocatable packages Relocatable packages are a way to give the user a little controlover the installation location of a package.  For example, a vendormay distribute their software to install in "/opt" but you'd likeit to install in "/usr/opt".  If the vendor were distributing arelocatable RPM package, it would be easy. \section relocatable_building Building a Relocatable Package Not all software can be "relocatable".  Before continuing you shouldthink about how the program works, what files it accesses, what otherprograms access *it* (and expect it to be in a certain place), etc.If you determine that the location of the package doesn't matter,then it can probably be built as "relocatable". All you need to do to build a relocatable package is put one or more: \verbatim  Prefix: <dir>\endverbatim in your spec file.  The "<dir>" will usually be something like "/usr","/usr/local", or "/opt".  Every file in your %files list must startwith that prefix.  For example, if you have "Prefix: /usr" and your%files list contains "/etc/foo.conf", the build will fail. The fix forthis is to put \verbatim  Prefix: /usr  Prefix: /etc\endverbatim into the spec file so that the /usr and /etc directories may berelocated separately when this package is installed.  \section relocatable_installing Installing Relocatable Packages By default, RPM will install a relocatable package in the prefixdirectory listed in the spec file.  You can override this on theRPM install command line with "--prefix <dir>".  For example, ifthe package in question were going to be installed in "/opt" butyou don't have enough disk space there (and it is a relocatablepackage), you could install it "--prefix /usr/opt". If there is more then one Prefix you may relocate each prefixseparately by using syntax like: \verbatim  rpm ... --relocate /opt=/usr/opt --relocate /etc=/usr/etc ...\endverbatim If any of the Prefixes is not being relocated they can be skipped onthe command line */