Skip to content

E5ten/pacaur

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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 will also automatically prompt for sudo access when needed. It is built upon the well designed auracle C++ 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 -a/--aur can be added to only apply these to the AUR. As such, pacaur can be used by users who prefer to have a single tool to manage the officialand 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 sync, search, info, download only, system upgrade, upgrades check, clean and clean all functions to the AUR. This extension behavior is optional and can be disabled with the -r/--repo flag, and used with the variable set with the -a/--aur flag. Pacaur will also pass any other pacman operations and their related options to the pacman binary.

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, build, install, upgrade or clean target(s) from the AUR.

-r, --repo

When used with pacman extended operations, only search, build, install, upgrade or clean target(s) from the repositories.

General options

-e, --edit

Edit build files when cloning 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 upgrade and check operations, also consider AUR development packages. Supported are cvs, svn, git, hg, bzr and darcs development packages, as well as daily and nightly build packages.

--foreign

When used with buildonly, sync and upgrade operations, also consider already installed foreign dependencies when solving the dependency tree.

--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'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, as well as daily and nightly build packages.

--noconfirm

Perform commands without confirmation from the user.

--noedit

Perform commands without editing any installation files. Overrides the --edit option. =item --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.

Search options

--by <FIELD>, --searchby <FIELD>

When searching the AUR, search by FIELD where FIELD is name, name-desc, or maintainer to search for packages by their name, name and description, or by the package maintainer, respectively. The default is to search by name-desc.

--literal

When searching the AUR, disable regex search and interpret target as a literal string.

--sort <KEY>, --rsort <KEY>

When searching the AUR, sort the results in ascending or descending order, respectively, by KEY where KEY is name, votes or popularity.

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

CONFIG OPTIONS

The available options are:

editor

Define the editor. Default is $VISUAL, with a fallback on $EDITOR and nano.

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 diff.

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.

sortorder

When searching the AUR, sort the results in ascending or descending order. Default is descending.

sudoloop

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

ENVIRONMENT

AURDEST

Determines where the packages build files (PKGBUILD, .SRCINFO and install script files) will be cloned. The -Sc and -Scc clean operations allow to remove the untracked cloned files and the non locally installed cloned files, and all cloned files, respectively.

If this environment variable is not defined, the clone directory will be set to

$XDG_CACHE_HOME/pacaur

with a fall back to

$HOME/.cache/pacaur
makeopts

Internally used variable for passing options to makepkg, can be set externally to add flags for pacaur to always pass to makepkg, such as -A, which ignores the arch field in a PKGBUILD to allow for building on other architectures regardless of if that architecture has been added to the arch field

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. If using the existing /var/cache/pacman/pkg pacman cache directory, ensure your user has proper write permissions. Additionally, if added to the CacheDir path option of pacman.conf, the -Sc and -Scc clean operations will enable removal of non locally installed cached files and all cached files, respectively.

SRCDEST

Determines where the source of packages will be stored. This will speed up the upgrade 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). If you disable the sudoloop config option, you might also want to disable the passwd_timeout sudo parameter to avoid password prompt timeout.

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 allow build files comparison, the displaybuildfiles default config option is set to diff. Although the clone directory (set by default to $XDG_CACHE_HOME/pacaur) can be changed through the alternative $AURDEST environment variable, it should always be set to a persistent location.

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 "Could not connect to the AUR" and "Timeout was reached" messages are displayed while searching or requesting info for packages despite the internet connection 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.

SEE ALSO

auracle(1), pacman(8), makepkg(8), sudoers(5)

CURRENT MAINTAINER

E5ten <[email protected]>

https://github.com/E5ten/pacaur

ORIGINAL AUTHOR

Remy Marquis <[email protected]>

If you feel great pity for the present maintainer that has to constantly cope with users that don't want to read man pages and refuse to take responsibility for their own system, you can send me funny cat pictures. Alternatively, you can send a donation via PayPal to the above email address.

I would also suggest to donate to a charitable organization of your choice should you believe that your money could make a bigger difference there. Thank you!

Absolutely no support is provided, unless you are ready to pay for it.

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

TRANSLATORS

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

[da] - Dansk - Filip "filipkemuel" Kemuel

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

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

[fi] - Suomi - "durazell"

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

[hu] - Magyar - "avelkei"

[it] - Italiano - Demenico "NoMore201" Lezzi, Giovanni "ItachiSan" Santini

[ja] - ��� - Colin "fosskers" Woodbury, TSUYUSATO "MakeNowJust" Kitsune

[nl] - Nederlands - "Yoshi2889", Willem "14mRh4X0r" Mulder

[pl] - Polski - Tomasz "Ludvick" Niedzielski

[pt] - Português - Thiago "thiagowfx" Barroso Perrotta, Rafael "rccavalcanti" Cavalcanti

[ru] - Р���кий - "kyak"

[sk] - Sloven�ina - Pavol "pakapusta" Kapusta, Juraj "DoctorJellyface" Fiala

[sl] - Slovenš�ina - Žan "tofiffe" Skamlji�

[sr] - С�п�ки / srpski - Slobodan "Faenriis" Terzi�

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

[zh_CN] - ��中� - "Victorique "victoriqueko" Ko, kizayoi"

Packages

No packages published

Languages

  • Shell 97.4%
  • Makefile 2.6%