I'm a long time windows user, short time linux user. I have a work project to build some RPMs and I'm trying to make sure I have the concepts down for how to use fpm.
My specific project involves making an rpm for a version of python which will live in it's own directory under /opt/ (CentOS so we don't want to muck up the system version of python).
As far as I can see I can only specify the output directory if I use something like this:
fpm -s dir -t deb -n example something.conf=/etc/example/ bin/=/usr/bin
but that means my source is a directory so I'd have to point at all the directories where the python install put any files (/usr/bin/, /usr/lib/ probably others). It'd be much easier if I could point it at the python tar file but then I can't control the ultimate install directory, right? Similarly with the various libraries we want to have (as separate RPMs) I can easily point fpm at the python module ala pip but then I can't specify the install location so I need to figure out all the directories a given module installs to and then have fpm grab those directories.
Problem with that is that in many cases the directories are going to include a lot of stuff I don't want in the rpm (usr/bin is not exactly empty even on a new linux install).
Am I missing something key here? I know it may be possible to handle the different install dir on the rpm side (
rpm --prefix=/home/chroot/ bind-chroot*.rpm) but that only works with some rpms (relocatable ones) and relies on the end user to get it right, instead of building the rpm right in the first place.