Alien allows you to convert packages between different Linux package formats. Here's the video if you prefer videos:
You found a package you want to install. It's not in your repository nor is it available as a flatpak, snap, etc.
In my situation, I'm on Nobara and want to install a package that is only available as a
I found two different ways to do this. The first is using an application named Alien, the second is using a tool called dpkg.
To solve this, we will install a package called Alien and convert the package using that.
Fedora and Norbara, Ubuntu based distros all seem to have Alien in the base repos. Arch, you'll need to use the AUR.
#Install on Fedora or Nobara sudo dnf install alien #Install on Ubuntu based distros sudo apt install alien #Install via the AUR in Arch, depending on your AUR helper yay -S alien #or paru -S alien
Converting packages with Alien
There are several flags that can be used while converting a package. They are:
Make debian packages. This is the default.
Make rpm packages.
Make tgz packages.
Make slp packages.
Make Solaris pkg packages.
Automatically install each generated package, and remove the package file after it has been installed.
The basic command is:
alien [options] filename
So in my case, I'll be running:
alien -r mixing-station-pc_1.8.1-1_amd64.deb
Alternately, you could run the command below to install the rpm after conversion
sudo alien -r -i mixing-station-pc.1.8.1-1_amd64.deb
Since I didn't use the
-i flag I then ran this command to install the newly created rpm file:
sudo rpm -i mixing-station-pc-1.8.1-2.x86_64.rpm
You can also simply run
sudo [package manager] [package name] in most cases a well. Ex. If I was installing on a distro with apt,
sudo apt install [package name]
The confusing part
It was not really obvious where this file installed so while looking for it, I found an alternate method to extract a .deb package. With this method, you could then put the extracted bin file in your /apps folder or whatever directory you like.
Ultimately though, my install showed up in
/opt/mixing-station/bin and I was able to run the application from there.
Extracting a .deb with dpkg
First, you need to install dpkg. I checked for this by running:
sudo dnf install dpkg
This revealed that dpkg was already installed for me. You will need to check your distro's packages to see if it's available in the repositories for your distro.
I then ran the following commands.
#cd to the directory with the .deb file #in my case cd ~/Downloads #make a directory to extract the .deb to #in my case mkdir mixing-dir #finally run the command below, format is: #dpkg-deb -xv deb-file extraction-folder #for me, it was this: dpkg-deb -xv mixing-station-pc_1.8.1-1_amd64.deb mixing-dirre
Creating a .desktop File
If you need to create a .desktop file for your new app. You can do so by adding
application-name.desktop to the following directory:
A template for the .desktop file is below. You may be able to remove
[Desktop Entry] Encoding=UTF-8 Version=1.0 Type=Application Terminal=False Categories=Multimedia Exec=/path/to/executable Icon=/path/to/icon Name=Application Name Comment=Application Comment
If the .desktop file is saved in the folder above, it should just appear in your application menu, though if not, a reboot or reloading of your desktop environment isn't a bad idea.
Alternately, you could also add the directory to your path depending on use case and requirements. This would allow you to run the app from your terminal. Another alternative would be to create an alias that would enter the full path for you easily. This could be added to your
Obviously, this is not the best option in most situations, now it's much more common to be able to install a flatpak or another universal package type or add an external repository. But there are some situations where this is a great option.
Questions? Feel free to comment below or in the Youtube video's comments.