~/package-manager-comparison
$

Package Manager Comparison

Compare commands across apt, yum, dnf, pacman, and apk. Toggle managers, search operations, and translate commands between distributions.

Install / Remove

Install a package

aptsudo apt install <pkg>
yumsudo yum install <pkg>
dnfsudo dnf install <pkg>
pacmansudo pacman -S <pkg>
apksudo apk add <pkg>

Remove a package

aptsudo apt remove <pkg>
yumsudo yum remove <pkg>
dnfsudo dnf remove <pkg>
pacmansudo pacman -R <pkg>
apksudo apk del <pkg>

Remove with dependencies

aptsudo apt autoremove <pkg>
yumsudo yum autoremove <pkg>
dnfsudo dnf autoremove <pkg>
pacmansudo pacman -Rns <pkg>
apksudo apk del <pkg> && sudo apk fix

Install from local file

aptsudo dpkg -i <file.deb>
yumsudo yum localinstall <file.rpm>
dnfsudo dnf install <file.rpm>
pacmansudo pacman -U <file.pkg.tar.zst>
apksudo apk add --allow-untrusted <file.apk>

Downgrade a package

aptsudo apt install <pkg>=<version>
yumsudo yum downgrade <pkg>
dnfsudo dnf downgrade <pkg>
pacmansudo pacman -U <older-pkg-file>
apksudo apk add <pkg>=<version>

Update / Upgrade

Update package list

aptsudo apt update
yumsudo yum check-update
dnfsudo dnf check-update
pacmansudo pacman -Sy
apksudo apk update

Upgrade all packages

aptsudo apt upgrade
yumsudo yum update
dnfsudo dnf upgrade
pacmansudo pacman -Syu
apksudo apk upgrade

List available updates

aptapt list --upgradable
yumyum check-update
dnfdnf check-update
pacmanpacman -Qu
apkapk version -l '<'

Query / Info

Search for a package

aptapt search <keyword>
yumyum search <keyword>
dnfdnf search <keyword>
pacmanpacman -Ss <keyword>
apkapk search <keyword>

Show package info

aptapt show <pkg>
yumyum info <pkg>
dnfdnf info <pkg>
pacmanpacman -Si <pkg>
apkapk info -a <pkg>

List installed packages

aptapt list --installed
yumyum list installed
dnfdnf list installed
pacmanpacman -Q
apkapk list -I

Show package dependencies

aptapt depends <pkg>
yumyum deplist <pkg>
dnfdnf repoquery --requires <pkg>
pacmanpacman -Si <pkg> | grep Depends
apkapk info -R <pkg>

Show which package owns a file

aptdpkg -S <file>
yumyum provides <file>
dnfdnf provides <file>
pacmanpacman -Qo <file>
apkapk info --who-owns <file>

List files in a package

aptdpkg -L <pkg>
yumrpm -ql <pkg>
dnfdnf repoquery -l <pkg>
pacmanpacman -Ql <pkg>
apkapk info -L <pkg>

Download package without installing

aptapt download <pkg>
yumyumdownloader <pkg>
dnfdnf download <pkg>
pacmanpacman -Sw <pkg>
apkapk fetch <pkg>

Show package changelog

aptapt changelog <pkg>
yumyum changelog <pkg>
dnfdnf changelog <pkg>
pacmanpacman -Qc <pkg>
apkN/A

Maintenance

Clean cache

aptsudo apt clean
yumsudo yum clean all
dnfsudo dnf clean all
pacmansudo pacman -Sc
apksudo apk cache clean

Hold / pin a package version

aptsudo apt-mark hold <pkg>
yumecho "exclude=<pkg>" >> /etc/yum.conf
dnfsudo dnf versionlock add <pkg>
pacmanEdit IgnorePkg in /etc/pacman.conf
apkapk add <pkg>=<version>

Repository

Add a repository

aptsudo add-apt-repository <repo>
yumsudo yum-config-manager --add-repo <url>
dnfsudo dnf config-manager --add-repo <url>
pacmanEdit /etc/pacman.conf
apkecho "<url>" >> /etc/apk/repositories

Remove a repository

aptsudo add-apt-repository --remove <repo>
yumsudo rm /etc/yum.repos.d/<repo>.repo
dnfsudo rm /etc/yum.repos.d/<repo>.repo
pacmanEdit /etc/pacman.conf
apkEdit /etc/apk/repositories

List repositories

aptapt-cache policy
yumyum repolist
dnfdnf repolist
pacmancat /etc/pacman.d/mirrorlist
apkcat /etc/apk/repositories