wiki/structured/cli.pacman.org
Gabriel Arazas 3e5d089707 Add notes on various programs and Udacity program
Mainly on the SUSE cloud native fundamentals scholarship program from
Udacity along with various CLI programs I learnt to use over the days
trying to complete it piecewise...

Offhand comment, it is pretty nice so far.
2021-06-13 12:20:18 +08:00

1.9 KiB

Pacman

The built-in package manager of Arch Linux (among others). This note is based from pacman v6 and above.

Subcommands

Interestingly, pacman does not have subcommands with specific options. Instead, they go with specific flags denoting a subcommand. Practically, they're just subcommands except appearing as options.

# Rather than 'pacman install podman' or something similar.
pacman -S podman

Here's what you can do with the package manager:

  • -S are concerned with syncing the local database to the remote databases.
  • -F are mostly query-related operations with the database.
  • -R removes installed packages.

You can see more of them in the Operations section of the manual page (i.e., pacman.1).

Examples

Welp, this is what you came for so let's go ahead.

Quickstart

It's a package manager so it's supposed to do basic package manager stuff. All of the shown commands are in longform with the shortform just commented for practical purposes.

# Search for a pacakge
# pacman -Ss podman
pacman --sync --search podman

# Install a package
# pacman -S podman
pacman --sync podman

# Uninstall a package
# pacman -Rns podman
pacman --remove --no-save --recursive podman

# Upgrade the system
# pacman -Syu
pacman --sync --refresh --upgrade

Package search selection

With everybody's favorite fuzzy finder, fzf.

pacman --sync --quiet --search pkg | fzf --prompt "Package to install > " | xargs --replace='{}' doas pacman --sync {}

You can also create a search selection with all of the packages with the following one-liner.

pacman -S --list --quiet \
    | fzf --multi --prompt "Install package(s) > " \
    | xargs doas pacman -S --noconfirm