Skip to main content

Installing Deb Packages on RHEL8

Shenzhen, China

I noticed that a few applications I depend on are only available as Deb Packages (Debian, Ubuntu, Mint), e.g. the Synology Chat Client. So I was searching for a way to use those on a RHEL8 Workstation and found the Alien Package Converter.

Installing Alien Package Converter

Download Alien with the following command:

wget -c https://sourceforge.net/projects/alien-pkg-convert/files/release/alien_8.95.tar.xz
tar -xf alien_8.95.tar.xz
cd alien_8.95.tar

Install dependencies:

sudo dnf install perl
sudo yum install rpm-build -y

Then run the Alien Makefile:

sudo perl Makefile.PL; sudo make; sudo make install

Converting Deb to RPM

Installing the Synology Chat Client

I now download the Debian Package I want to convert - for example a Synology Application like the Chat Client. And run the following Alien command:

alien --to-rpm 'Synology Chat Client-1.2.0-0146.deb'

This attempt failed with an error message ERROR: Line 5: Empty Tag: Summary. So I unpacked the Deb package with:

alien -r -g -v 'Synology Chat Client-1.2.0-0146.deb'

and opened the chat-1.2.0-147.spec file inside the generated folder chat-1.2.0 - and yes the key for Summary did not have a value - So I just added the string Synology Chat Client and tried the rebuild by hand by making the BUILDROOT directory and copying the content of chat-1.2.0 into it:

mkdir /home/myuser/rpmbuild/BUILDROOT/chat-1.2.0-147.x86_64
cp -r ./chat-1.2.0/* /home/myuser/rpmbuild/BUILDROOT/chat-1.2.0-147.x86_64/

And running the RPM Build with

rpmbuild -bb chat-1.2.0/chat-1.2.0-147.spec

And this generated a chat-1.2.0-147.x86_64.rpm file inside my home directory! Unfortunately, the installation failed at first:

file / from install of chat-1.2.0-147.x86_64 conflicts with file from package filesystem-3.8-8.el8.x86_64

Which can be solved by forcing the install:

sudo rpm -ivh --force chat-1.2.0-147.x86_64.rpm