How to Convert a DEB file to an RPM

Ever see a company claiming to support Linux but then only mentions Ubuntu and only ships a .DEB file? Where's the .RPM? Where's the .tar.gz? When I see .deb files only, I unfortunately find it irritating. All sorts of silly negative biases come to mind. I become mired in my mind. "Grr", is really what you get. From a marketing perspective, "Grrr" is the exact the wrong emotional response. We should be happy that a company is supporting Linux. Ok, I'm happy. But I use Fedora / CentOS, not Ubuntu. Grr.

Dear Companies: Always support a .deb, .rpm and a .tar.gz

Sometimes you have to just take matters into your own hands to get through life. Here is what we non-deb users can do to make an RPM out of a DEB file.

Convert

First use alien and fakeroot to convert the .deb file to an .rpm like so:

$ fakeroot alien -r some-package.deb

You need fakeroot because alien wants admin privs. You can appease it with fakeroot

Install

At this point, you may be able to just install the .RPM. Often, it doesn't work, so give it a shot. If you don't trust it, then skip this step.

Do something like so:

$ sudo dnf install some-package.rpm

Extract

If it doesn't install for some reason (could happen) not to worry. You can extract the files from the .RPM and use it out of your home folders

$ rpm2cpio some-package.rpm | cpio -idmv

Now you should see a usr folder with things inside of it. Locate the binary and off you go.

To make your life a little easier, you may prefer to symlink the binary to a more convenient spot or create a shell alias for the comment.

If you don't like it in your home drive at all, then you can extract it into your system's /usr folder. This will leave files on your machine that your package manager will not be able to clean up. I don't think this is such a great move. Rethink your irritation. To do this, you can run the rpm2cpio command in your system root with sudo (somewhat dangerous to do this -- so think before you do this) or move the files manually yourself (less dangerous).

And then

And then take your frustration out on the company that made the .deb only by sending them a nicely worded email urging them to try a little harder to support Linux by making a .RPM and a .tar.gz file