PACAUR(8)

NAME
pacaur - an AUR helper that minimizes user interaction

SYNOPSIS
Usage: pacaur <operation> [ options ] [ target(s) ]

DESCRIPTION
Pacaur is an Arch User Repository (AUR) helper aiming at speed and simplicity and is designed to minimize user prompt interaction. It uses an uncluttered interface and makes use of the full secured RPC interface to solve the dependency tree. It is built upon the well designed cower and expac C backends.

Invoking pacaur consists of supplying an operation, any applicable options, and usually one or more targets. A target is usually a package name or a search string.

USERBASE TARGET
Pacaur is targeted at advanced users who want some degree of automation for repetitive tasks. As such, the user is expected to be familiar with the AUR manual build process with makepkg and its configuration options, as well as being knowledgeable about sudo and gpg configuration.

Two sets of command line options are provided: commands which call the pacman binary and extend it with AUR functions (-S, -Ss, -Si, -Sw, -Su, -Qu, -Sc, -Scc), and commands which are AUR specific (-s, -i, -d, -m, -y, -k, -u). As such, pacaur can be used by users who prefer to have a single tool to manage the official and AUR repositories, or by users who prefer to keep their AUR frontend separated from pacman.

OPERATIONS

  Pacman extension operations

-S, -Ss, -Si, -Sw, -Su, -Qu, -Sc, -Scc
    Pacaur wraps all pacman operations and by default extends respectively its install, search, info, download only, update, check updates and clean functions to the AUR. This extension behavior is optional and can be disabled with the fallback variable in the config file. Pacaur will also pass any other pacman operations and their related options to the pacman binary.

  AUR specific operations

-s, --search
    Search for packages with the target(s) as the search term(s). Queries with multiple targets will return the result of the intersection of all query results. Extended regex patterns as defined by POSIX are allowed.

-i, --info
    Show info for target(s).

-d, --download
    Clone the target(s) build files. Pass this option twice to fetch dependencies (done recursively).

-m, --makepkg
    Clone build files and build target(s). Missing dependencies will be installed as required to ensure the build to succeed, before being automatically uninstalled.

-y, --sync
    Clone build files, build and install target(s). Missing dependencies will be automatically installed as required.

-k, --check
    Check foreign packages for updates in the AUR. Without any arguments, all manually installed packages will be checked. If target(s) are supplied, only those packages will be checked.

-u, --update
    Update foreign packages in the AUR. Without any arguments, all manually installed packages will be updated. If target(s) are supplied, only those packages will be updated.

  General operations

-v, --version
    Display version and quit.

-h, --help
    Display the help message and quit.

OPTIONS

  Pacman extension options

-a, --aur
    When used with pacman extended operations, only search, download, build, install or update target(s) from the AUR.

-r, --repo
    When used with pacman extended operations, only search, download, build, install or update target(s) from the repositories.

  General options

-e, --edit
    Edit build files when downloading or building target(s). Overrides the displaybuildfiles config option and always fully shows the build files. Can also be used as a standalone command.

-q, --quiet
    Show less information for search and query operations. Search will only show package names and not version, group, and description information.

--devel
    When used with update and check operations, also consider AUR development packages. Supported are cvs, svn, git, hg, bzr and darcs development packages, as well as nightly build packages.

--foreign
    When used with build, install and update operations, also consider already installed foreign dependencies.

--ignore target(s)
    Ignore a target upgrade. Can be used more than once. Also accepts a comma delimited list as a single argument. Packages listed in pacman and cower's IgnorePkg directive are honored.

--needed
    Do not reinstall target(s) that are already up-to-date. The build of development packages that are found up-to-date after the source checkout will be skipped. Supported are svn, git, hg and bzr development packages.

--noconfirm
    Perform commands without confirmation from the user.

--noedit
    Perform commands without editing any installation files. Overrides the --edit option.

--rebuild
    Always rebuild packages regardless of any existing file in $PKGDEST directory, and regardless of up-to-date status of development packages.

--silent
    Silence output. This will send the output of each packaging functions to text files in the clone directory named pkgname-pkgver-pkgrel-arch-function.log. Additional pacman output for providers and cached packages installation will also be hidden.

--ignore-ood
    When searching the AUR, ignore all results marked as out of date. Can be enabled by default with the IgnoreOOD option in the cower config file.

--no-ignore-ood
    When searching the AUR, show results marked as out of date. This is the default behavior. When the IgnoreOOD option in the cower config file is enabled, this takes precedence over it.

--asort
    When searching the AUR, sort the results by name in alphabetical order.

--vsort
    When searching the AUR, sort the results by decreasing number of votes.

--psort
    When searching the AUR, sort the results by decreasing popularity.

--domain <FQDN>
    Point at a domain other than the default aur.archlinux.org.

CONFIG FILE

system config
    Pacaur honors a system-wide config file which will be looked for first at

      $XDG_CONFIG_DIRS/pacaur/config

    and falling back to

      /etc/xdg/pacaur/config

user config
    User-defined configuration files overriding the general settings will be looked for first at

      $XDG_CONFIG_HOME/pacaur/config

    and falling back to

      $HOME/.config/pacaur/config

other config
    In addition, pacaur fully honors cower's config file. See cower(1).

CONFIG OPTIONS
The available options are:

clonedir
    Define the directory into which the packages build files (PKGBUILD, .SRCINFO and install script files) will be cloned. Default is $AURDEST, with a fallback on /tmp/pacaurtmp-$USER.

editor
    Define the editor. Default is $EDITOR, with a fallback on vi.

displaybuildfiles
    Display PKGBUILD and install script viewing prompt. Possible values are full to always display the full build files, diff to only display the difference since last build, and none to disable the viewing prompt. Default is full.

fallback
    Extend pacman commands to the AUR. Default is true.

silent
    Enable silent output. The makepkg output will be collected in the clone directory or the $LOGDEST directory should any error occur. Default is false.

sortby
    When searching the AUR, sort the results by name, number of votes or popularity. Default is popularity.

sudoloop
    Prevent sudo timeout. This option overrides the system-wide sudo configuration and refreshes the sudo timestamp automatically in a loop when building packages. Default is false.

ENVIRONMENT

AURDEST
    Determines where the packages build files (PKGBUILD, .SRCINFO and install script files) will be cloned. You might want to set the clone directory to a persistent location to make full use of cloned build files history.

In addition, makepkg environment variables are fully honored. See makepkg(8). In particular, the following variables are useful:

PKGDEST
    Determines where the built packages will be stored. The -Sc and -Scc clean operations allow to remove the non locally installed cached files and all cached files, respectively. If using the existing /var/cache/pacman/pkg pacman cache directory, ensure your user has proper write permissions.

SRCDEST
    Determines where the source of packages will be stored. This will speed up the update of development packages. The -Sc and -Scc clean operations allow to remove the non development packages source files and all source files, respectively.

LOGDEST
    Determines where the build logs will be stored. By default, the --silent option will write build logs in the clone directory if the build fails, but will remove them if the build succeeds.

BUILDDIR
    Determines where the packages will be built. By default, build will happen in the defined clone directory, but build speed can be improved by using /tmp located in volatile memory. This is however not recommended if big packages need to be built on a low-memory machine.

NOTES

sudo configuration
    To be used with minimal password prompting, sudo should be configured accordingly to allow sudo access. See sudoers(5). You might also want to disable the passwd_timeout sudo parameter to avoid password prompt timeout. Alternatively, enable the sudoloop config option.

pacman misc options
    Miscellaneous options enabled in pacman.conf are taken into account. Thus, colored output can be enabled with the Color option, while a detailed interface displaying name, version and size of packages formatted as a table is available through the VerbosePkgLists option.

build files comparison
    To be able to display build files comparison with diff value of the displaybuildfiles config option, the clone directory (set by default to /tmp on a temporary filesystem residing in volatile memory) or the alternative $AURDEST environment variable should also be changed to a persistent location.

fallback
    By default, any operation will be applied on the binary repositories, then the AUR if necessary. This behavior is optional and can be disabled with the fallback config option. When disabled, any operation will be restricted to the binary repositories similarly to pacman, while AUR operations can be applied explicitly with the --aur option.

interactive PKGBUILDs
    Packages requiring user input while building are not supported and might fail to install properly. There is currently no official directive about these interactive PKGBUILDs, but some of the official pacman developers expressed the opinion that PKGBUILDs should always provide default compilation options.

host name error
    If a lot of "Couldn't resolve host name" and "Timeout was reached" messages are displayed while checking for updates although the internet connection is working correctly, ensure your local DNS server is correctly configured to improve name lookups. Using Google's primary DNS (8.8.8.8 and 8.8.4.4) might also help.

alternative installation root
    The alternative installation root -r /path short option of pacman is not supported. Use the --root /path long option instead, or chroot to the new path and use pacaur from there instead.

SEE ALSO
cower(1), pacman(8), makepkg(8), sudoers(5)

AUTHOR
Remy Marquis <remy.marquis@gmail.com>

After many requests, it is now possible to send a donation via PayPal to the above email address. Although I would certainly appreciate the gesture, I would however suggest to donate instead to a charitable organization of your choice as your money could make a bigger difference, thank you!

All credits go to all direct or indirect contributors. Many thanks to all of you!

TRANSLATORS
[ca] - Català - Alex "alexhenrie" Henrie

[de] - Deutsch - Marco "BigBoot" Kirchner, "HerrNieschnell", "pszalanski", Stefan "rumpelsepp" Tatschner

[es] - Español - Germán "gosella" Osella Massa, Ismael "ChuckDaniels87" González

[fr] - Français - "spider-mario", "Neitsab"

[hu] - Magyar - "avelkei"

[it] - Italiano - Demenico "NoMore201" Lezzi

[ja] - 日本語 - Colin "fosskers" Woodbury, TSUYUSATO "MakeNowJust" Kitsune

[nl] - Nederlands - "Yoshi2889"

[pl] - Polski - Tomasz "Ludvick" Niedzielski

[pt] - Português - Thiago "thiagowfx" Barroso Perrotta

[ru] - Русский - "kyak"

[tr] - Türkçe - Volkan "wakeup" Gezer