If you’re running Fedora or RedHat and you download the plugin required from Google to make voice calls from inside gmail, you’ll need to convert it to an RPM before you can use it. Alien will convert RPMs to Debian .deb packages and vice versa. Download and unpack. You don’t even need to compile or install to use it.
Start the spec file with %define statements at the top. Continue the spec file as you would normally, using the variables you just defined in place of the real name, version, build. Create an rpmbuild script that replaces the template variables with current information. Make an rpm target in your Makefile that calls the rpmbuild script.
You can list the contents of an rpm without installing it first. If you’re not going to build your own from source, you should at least check an rpm before installing it to see what it’s going to install.
With rpmbuild, you can make custom packages for any architecture, but what if there’s no difference between the architectures in what you’re building. If you’re copying around something like scripts, docs or other text files that have nothing to do with 32 vs 64 bit or endianness, it’s easier and more efficient to create a single noarch package and just keep one copy of it in a repository.
Rpmbuild’s RPATH feature is used to search libraries outside of standard paths. They are given to the linker at buildtime. If the developers of the code you’re trying to turn into an RPM did not take any of these considerations into account when they write their programs then you may be forced to skip check-rpath.
Install the prerequisites noted in the README file if you’re building swfdec and swfdec-mozilla from scratch. I found I only needed to install liboil-devel and gstreamer-plugins-base-devel in order for it to build without complaint. When installing from binary on my 64-bit os, I found I was missing a lot of 32-bit packages needed by the plugin, so my dependencies needed by swfdec-mozilla.i386 rpm was long.
LftpFS is a read-only network filesystem with caching for smart mirror of sites. Useful for mirroring of Linux repositories. It’s based on FUSE and LFTP client, which supports FTP, HTTP, FISH, SFTP, HTTPS, FTPS protocols and works over proxies.
Before I get to the problem, here’s the interesting part. If you list the files in /var/lib/rpm/ you will see the flat berkeley database files, but not all of them. And I didn’t notice there was one missing until I went to fix it. I’m not sure what caused/causes this, but I found a pretty simple solution.
I’ve found 3 ways to disable the strip binary option when building RPMs.
You might need to look at an RPM file and figure out what it needs, retrieve it by hand, and install the packages yourself.