Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

I'm curious about the major difference/pros/cons between installing services and tools from source over using RPMs and from repositories.

From my understanding using a repo/rpm gives you the ability to easily install and uninstall all the files, but you lose the ability to specify advanced commands/flags or a specific version during an install.

So question is. Can you download the source file, configure it and then pack it into an RPM to give the ability to easily uninstall and upgrade later?

share|improve this question
    
Yes, see github.com/jordansissel/fpm - Effing Package Management to get started the easy way. –  Zoredache Jan 8 '13 at 23:59
add comment

1 Answer

up vote 3 down vote accepted

Yes you can. Check out this: checkinstall (I haven't used it for a while, but it should still work)

With it, you can configure the sources as needed (with ./configure --with-foo --without-bar), and compile (with make). Insted of running make install to install it, just run checkinstall, and it will create a .rpm (or .deb or .tgz) file from the package that would otherwise be installed via make install.

It doesnt work with all packes, but i've had good experience with it in my Slackware days.

share|improve this answer
    
Nice, I didn't know about that tool. That would speed up writing spec files by hand a bit. Can you remember anything about the exact circumstances where this will not work? –  Andrew B Jan 9 '13 at 0:40
    
Sometimes i had problems when scripts messed up with existing files on the filesystem. I think it was also a problem if "make install" created a new user. But mostly, i could solve the problem with "make install" and then "checkinstall", and manually removing the user after uninstall. –  mulaz Jan 9 '13 at 0:43
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.