Apt, Advanced Packaging Tool, is a powerful command line tool used to install, update, upgrade and remove packages in Debian and its derivatives like Ubuntu. There are several frontends available for Apt, such as Aptitude, Synaptic and Ubuntu software center to name a few. Today I am going to introduce yet another frontend for APT package manager called Deb-pacman.
What is Deb-pacman?
Deb-pacman is a Bash script that emulates the functionality of Pacman (the package manager for Arch Linux and its variants). Using Deb-pacman, you can use the pacman commands, as the way you use them under Arch Linux to install, update, upgrade and remove packages, in a Debian-based system.
You can simply invoke "pacman
" instead of "apt
" command in your Ubuntu system. Deb-pacman simply emulates the Archlinux's Pacman package manager feel for Debian users who may prefer the style of Pacman over Apt. This can be helpful for those who get used to pacman.
As you know already Apt itself was originally designed as a front-end for dpkg
, which was developed by Ian Murdock (founder of Debian project) for Debian OS to install, remove and provide information about .deb packages. So technically speaking Deb-pacman is a front end for APT which is a frontend for Dpkg. In other words, it is just a wrapper.
In this brief guide we will see how to install Deb-pacman in Ubuntu and its usage.
Install Deb-pacman, a Frontend For APT Package Manager
Download Deb-pacman.deb file from the releases page and then install it like below on any Debian-based systems.
$ wget https://gitlab.com/TriVoxel/deb-pacman/uploads/9f716f95c66cd90e65157773d6dea05b/deb-pacman_1.0-0.deb
$ sudo dpkg -i deb-pacman_1.0-0.deb
$ sudo apt-get -f install
To manually install Deb-pacman, simply download the Deb-pacman file and make it executable. Then, copy it to your PATH, for example /usr/bin/.
Usage
Deb-pacman supports all the major and most common commands so far. So, you can start using it right away. Let me show you a few examples.
To update a Debian-based system (E.g. Ubuntu), we use the following commands:
$ sudo apt update $ sudo apt upgrade
Right? Yes.
But, we don't need to use the apt commands in our Ubuntu system anymore.
From now on, you can simply use Pacman to update your Ubuntu system using the following command:
$ sudo pacman -Syu
Have a look at the following animated demonstration created from my Ubuntu 18.04 system:
See? When I run the "sudo pacman -Syu", Deb-pacman automatically calls "sudo apt update" and "sudo apt-get upgrade" commands.
Similarly, you can run most Pacman commands to install, remove, update your Ubuntu system.
For instance, to install Vim, just use:
$ sudo pacman -S vim
To remove a package, run:
$ sudo pacman -R vim
To remove orphaned packages, run:
$ sudo pacman -Rns <package(s)>
The above command is equivalent to "sudo apt autoremove" command.
Please note that Deb-pacman doesn't support all options of Pacman. As of now, It supports only most-commonly used operations such as install, sync, remove, update and upgrade.
To get help, run:
$ pacman -h usage: pacman <operation> [...] operations: pacman {-h --help} pacman {-V --version} pacman {-R --remove} [options] <package(s)> pacman {-S --sync} [options] [package(s)] pacman {-U --upgrade} [options] <file(s)> options: pacman <operation> {--noconfirm} [package(s)] Only one supported operation in this version of "Deb Pacman" Limited to eight (8) [packages] (seven (7) with <option>)
We have already written about two other frontends namely Sysget and Pacapt. Unlike Deb-pacman, sysget and pacapt are not just a frontend for APT but also for many popular package managers such as Yum, Pacman, Dnf, Nix, Pkg and Zypper etc. For more details, please take a look at the following links.
- Sysget – A Front-end For Popular Package Managers
- How To Use ArchLinux’s Pacman Package Manager In Other Unix-like OSs
Hope this was useful.
Resource:
4 comments
I think this functionality can also be achieved using alias
Yes, indeed! alias is more straight-forward method.
so, it just redirecting the command, we still can’t use the AUR
Take a look @ pacinstall, “The AUR for Ubuntu”… & implicitly, Debian:
If the package is strictly Ubuntu-only we prevent its install on Debian:
https://github.com/pacstall/pacstall/discussions/99#discussioncomment-2489832