Skip to content
A wrapper for all Linux package managers
Find file
Pull request Compare This branch is 42 commits behind icy:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.



  pacapt - An Arch's pacman-like package manager for some Unices.


  An Arch's pacman-like package manager for some Unices.  Actually this Bash
  script provides a wrapper for system's package manager.

  Instead of remembering various options/tools on different OSs, you only
  need a common way to manipulate packages. Not all options of the native
  package manager are ported; the tool only provides a very basic interface
  to search, install, remove packages, and/or update the system.

  Arch's pacman is chosen, as pacman is quite smart when it divides all
  packages-related operations into three major groups: Synchronize, Query
  and Remove/Clean up. It has a clean man page, and it is the only tool
  needed to manipulate official packages on system. (Debian, for example,
  requires you to use apt-get, dpkg, and/or aptitude.)

  The tool supports the following types of package manager:

    pacman        by Arch Linux, ArchBang
    dpkg/apt-get  by Debian, Ubuntu
    homebrew      by Mac OS X
    yum/rpm       by Redhat, CentOS, Fedora
    portage       by Gentoo
    zypper        by OpenSUSE


  This script shouldn't be installed on an Arch-based system.

  Download the script 'pacman' and install it into /usr/local/bin.

    $ wget \
        -O /usr/local/bin/pacman \

    $ chmod 755 /usr/local/bin/pacman

  If you have problem with Github's SSL certificate you may try

    $ wget \
        --no-check-certificate \
        -O /usr/local/bin/pacman \

  However this way isn't recommended unless you know what you're doing.


  $ pacman <operation> <option(s)> <packages>



    -Q              list all installed packages
    -Qc <package>   show package's changelog
    -Qi <package>   print package status
    -Ql <package>   list package's files
    -Qm             list installed packages that aren't available
                      in any installation source
    -Qo <file>      query package that provides <file>
    -Qp <file>      query a package file (don't use package database)


    -S <package>    install package(s)
    -Ss <package>   search for packages
    -Su             upgrade the system
    -Sy             update package database
    -Suy            update package database, then upgrade the system

  Remove / Clean up

    -R <packages>   remove some packages
    -Sc             delete old downloaded packages
    -Scc            delete all downloaded packages
    -Sccc           clean variant files.
                    (debian) See more at


    -f              force yes
    -v              be verbose
    -w              download packages but don't install them


  To install a package from backports repository on Debian system:
              $ pacman -S foobar -t lenny-backports

  Similarly, any further option which isn't recognized by getopts (1)
  can be passed to system tool.

  When being executed on Arch-based system, the tool simply invokes
  the system tool '/usr/bin/pacman'. So you would never install this tool
  as '/usr/bin/pacman', otherwise you may break your system!


  Special thanks to

    Châu An, Nguyễn   (told me about 'Pacman Rosetta' [1])
    Karol Blazewicz   (for comments about '-Sy')
    James Pearson     (for userful comments and patches.
                       See also
    Alexander Dupuy   (for userful comments and patches.
                       See also
    Hà Dương, Nguyễn  (for adding Gentoo support.
                       See also


  1. Pacman Rosetta,
Something went wrong with that request. Please try again.