There may come a time when that package you want to install in RHEL 8 / CentOS 8 is simply not available as a RPM file. The alternative is to download the source and compile it yourself, or - alternatively - generate a RPM file from that source code later on.
But there is another way. Given the fact that Debian-based distributions have way more users than RPM-based ones, the number of available packages in their repositories is greater. Chances are you will be able to find a DEB file for that package you want. Here is how to install that DEB file in RedHat Linux with the help of a small utility called alien
.
- How to install alien in RHEL 8 / CentOS 8
- How to convert a DEB package to a RPM one
Software Requirements and Conventions Used
Category | Requirements, Conventions or Software Version Used |
---|---|
System | RHEL 8 / CentOS 8 |
Software | alien |
Other | Privileged access to your Linux system as root or via the sudo command. |
Conventions | # - requires given linux commands to be executed with root privileges either directly as a root user or by use of sudo command $ - requires given linux commands to be executed as a regular non-privileged user |
Installing alien
Alien is a tool for converting between various package formats. It currently supports conversion to and from RPM, DEB, Stampede SLP, LSB, Slackware TGZ packages and Solaris PKG files. Download alien
with
$ wget -c https://sourceforge.net/projects/alien-pkg-convert/files/release/alien_8.95.tar.xz
Subscribe to RSS and NEWSLETTER and receive latest Linux news, jobs, career advice and tutorials.
and unpack the archive:
$ tar xf alien_8.95.tar.xz
Alien
uses Perl
so you will need it to compile the source. Install Perl
with
# dnf install perl
if it isn't already installed. Then you can go on and compile the alien
source code in the freshly unpacked directory with
# perl Makefile.PL; make; make install
Converting DEB packages to RPM
Once alien is installed using it is simple. To convert a Debian package to RPM format use
# alien --to-rpm file.deb
where file.deb
is the DEB package you have downloaded. This will generate a RPM equivalent for that DEB file that you can install with
# rpm -ivh file.rpm