Pacapt: One package manger to rule them all
Posted: 09 Mar 2016, 09:14
I have to admit that it is the "Archefied" part of me that created the header. So what! I think Pacman is the best package manager - by far - and I have used them all, except Apple's Homebrew.
Normally you should know a bit what you are doing before "switching" managers but it does not require complex somersaults.
Pacapt is a project that transports the ArchLinux "pacman" to other distros. In fact it is only a set of scripts.
I have the update command pacman -Syu in my blood and can write it standing on my head while drinking coffee. On the other hand I am always annoyed with Debians complex update.
apt-get update - have a coup of and then apt-get upgrade...It takes to long.
Regarding the compatibility there is a nice list that tells us what commands we can run on which distro or rather replace the manager of the distro:
Let me explain: the Pacman command is in the header so in the first column we see "Q" which is the pacman Query command (pacman -Q) so to explore this further you can check here (comparison with all major distros). Urpmi is not there so we have a comparison here
Anyway... I want to use my beloved pacman (well... pacapt in this case)on Debian for some commands as you can see above Fedoras DNF (which is brand new) will not let you remove apps (pacman -R) in fact the only thing you can do there is installing (pacman -S).
One distro that is fully covered is Suse with it's zypper.
So we can use Pacman all over the place (or Pacapt) as in pacman -S and pacman -Q and so on.... in theory... so; time to test it
I went to my Debian 8 install and did a:
worked nicely...then I did a:
No problem there...and then:
That's it - finished setting up the script so here we go...Updating Debian 8
and it worked like a charm I did a reboot and then updated the Debian way with sudo apt-get update and sudo apt-get upgrade. And it did the work and found nothing to update/upgrade.
And the pacman update was verbose and informative - a no-brainer for me; I am going to use it for updates every time.
You can use pacman for everything in Debian except some Queries (pacman -Sl lists all files owned by a given package - we can't use it in Debian/dpkg).
So wow this thing just works in Debian - going for Centos/yum now....Just to see if it works - I have no complaints about yum....
Centos:
Some preparations:
A always turn off SE-linux before doing something like this to avoid the "why does it not work" pain:
then the exact same thing as above.
and setting SE-Linux back :
So I can query packages like yum with and get the nice info but did not work to update the system.
I had to do a
su
password
To get to root..
and then it worked like a charm!
Yum works with sudo though so the nice and easy works just fine.
I might use pacman for querying though.
That is the beauty of it I don't have to use it - but I can.
This might work in Mageia too but you have to install yum first and there will be just to many layers to make it sensible there.
Normally you should know a bit what you are doing before "switching" managers but it does not require complex somersaults.
Pacapt is a project that transports the ArchLinux "pacman" to other distros. In fact it is only a set of scripts.
I have the update command pacman -Syu in my blood and can write it standing on my head while drinking coffee. On the other hand I am always annoyed with Debians complex update.
apt-get update - have a coup of and then apt-get upgrade...It takes to long.
Regarding the compatibility there is a nice list that tells us what commands we can run on which distro or rather replace the manager of the distro:
Let me explain: the Pacman command is in the header so in the first column we see "Q" which is the pacman Query command (pacman -Q) so to explore this further you can check here (comparison with all major distros). Urpmi is not there so we have a comparison here
Anyway... I want to use my beloved pacman (well... pacapt in this case)on Debian for some commands as you can see above Fedoras DNF (which is brand new) will not let you remove apps (pacman -R) in fact the only thing you can do there is installing (pacman -S).
One distro that is fully covered is Suse with it's zypper.
So we can use Pacman all over the place (or Pacapt) as in pacman -S and pacman -Q and so on.... in theory... so; time to test it
I went to my Debian 8 install and did a:
Code: Select all
sudo wget -O /usr/local/bin/pacapt \
https://github.com/icy/pacapt/raw/ng/pacapt
worked nicely...then I did a:
Code: Select all
sudo chmod 755 /usr/local/bin/pacapt
No problem there...and then:
Code: Select all
sudo ln -sv /usr/local/bin/pacapt /usr/local/bin/pacman || true
That's it - finished setting up the script so here we go...Updating Debian 8
Code: Select all
pacman -Syu
and it worked like a charm I did a reboot and then updated the Debian way with sudo apt-get update and sudo apt-get upgrade. And it did the work and found nothing to update/upgrade.
And the pacman update was verbose and informative - a no-brainer for me; I am going to use it for updates every time.
You can use pacman for everything in Debian except some Queries (pacman -Sl lists all files owned by a given package - we can't use it in Debian/dpkg).
So wow this thing just works in Debian - going for Centos/yum now....Just to see if it works - I have no complaints about yum....
Centos:
Some preparations:
A always turn off SE-linux before doing something like this to avoid the "why does it not work" pain:
Code: Select all
setenforce permissive
then the exact same thing as above.
and setting SE-Linux back :
Code: Select all
setenforce enforcing
So I can query packages like yum with
Code: Select all
pacman -Qi yum
Code: Select all
sudo pacman -Syu
I had to do a
su
password
To get to root..
and then it worked like a charm!
Yum works with sudo though so the nice and easy
Code: Select all
sudo yum update
I might use pacman for querying though.
That is the beauty of it I don't have to use it - but I can.
This might work in Mageia too but you have to install yum first and there will be just to many layers to make it sensible there.