aurman-git (https://aur.archlinux.org/packages/aurman-git) - development version
aurman (https://aur.archlinux.org/packages/aurman) - release version
aurman < operation > [ options ] [ targets ] - see also https://www.archlinux.org/pacman/pacman.8.html
aurman is meant as a pacman wrapper.
All pacman operations are supported, but calling aurman with an operation besides --sync or -S will just pass the arguments to pacman.
-r,--root-v,--verbose--cachedir--color--debug--gpgdir--hookdir--logfile--noconfirm--confirm--force--asdeps--asexplicit--needed--ignore--ignoregroup-s,--search-u,--sysupgrade-y,--refresh-c,--clean
--noconfirm--needed--ignore--ignoregroup-s,--search-u,--sysupgrade-c,--clean
-
--noedit: Will not show changes of PKGBUILDs, .install and other relevant files. just assumes you are okay with the changes. -
--always_edit: Lets the user edit the files of packages, even if there are no new changes. -
--show_changes: Will show changes of PKGBUILDs, .install and other relevant files without asking -
--devel: Will fetch current development packages versions to decide whether a new version is available or not. -
--deep_search: Dependency solving will ignore currently fulfilled dependencies of your system and try to solve the problem for a system with zero packages installed. should almost never be needed, but if aurman is not able to find a solution to install packages, try rerunning aurman with this flag. but be warned, it could take a few seconds to find solutions. -
--pgp_fetch: Fetches needed pgp keys without asking the user -
--keyserver: You may specify a keyserver to fetch the pgp keys from -
--aur: Do things only for aur -
--repo: Do things only for regular repos -
--domain: Change the base url for aur requests (https://aur.archlinux.org is the default) -
--solution_way: Print what exactly will be done, order of installing/removing packages -
--holdpkg: Specify packages which are installed on your system but must not be removed. you may specify more than one package, space separated -
--holdpkg_conf: Append packages from the pacman.conf to--holdpkg -
--do_everything:-ufor repo packages will also be handled byaurman, not bypacman. may be useful if you are using theaurmanconfig to fetch repo packages from other repos than they would normally be installed from. this is in general not recommended! -
--optimistic_versioning: In case of an unknown version of a provider for a versioned dependency, assume that the dependency is fulfilled -
--rebuild: Always rebuild packages before installing them
You may use the file aurman_config under $XDG_CONFIG_HOME/aurman (fallback to ~/.config/aurman in case of no $XDG_CONFIG_HOME) as config for aurman.
By default aurman assumes the following priorities in case of multiple available packages with the same names (high to low):
- repository package as listed in the pacman.conf - see https://www.archlinux.org/pacman/pacman.conf.5.html#_repository_sections
The order of repositories in the configuration files matters; repositories listed first will take precedence over those listed later in the file when packages in two repositories have identical names, regardless of version number.
- aur packages
If one wants to override this priority, it has to be done via the aurman config.
For aur packages create a section [aur_packages] and list the names of the aur packages.
For repo packages create a section [repo_packages] and list the names of the repo packages followed by = and the name of the repo.
Notice: Those packages will be excluded from the
pacman --sysupgradeby--ignore. Otherwisepacmanwould replace those packages
Example:
[aur_packages]
aur_package_name
other_aur_package_name
[repo_packages]
repo_package_name=repo_one
other_repo_package_name=repo_twoyou may specify the keyserver for pgp fetching in the config instead of yielding it via command line.
Notice: command line overrides config
create a key called keyserver in the section [miscellaneous] to do that.
Example:
[miscellaneous]
keyserver=hkp://ipv4.pool.sks-keyservers.net:11371create a key called no_notification_unknown_packages in the section [miscellaneous] to do that.
Example:
[miscellaneous]
no_notification_unknown_packagesyou may also disable the notification for single packages only.
create a section [no_notification_unknown_packages] and list the names of the packages as values
Example:
[no_notification_unknown_packages]
package1_name
package2_namecreate a key called no_sudo_loop in the section [miscellaneous] to do that.
Example:
[miscellaneous]
no_sudo_loopcreate a key called default_show_changes in the section [miscellaneous] to do that.
Example:
[miscellaneous]
default_show_changesIgnore a missing or incomplete arch field in the build script, which means: pass -A to makepkg during building of packages
create a key called ignore_arch in the section [miscellaneous] to do that.
Example:
[miscellaneous]
ignore_archlist the names of the packages in the section [devel_packages] to do that
Example:
[devel_packages]
package_name1
package_name2- threaded sudo loop in the background so you only have to enter your password once
- reliable dependency resolving
- conflict detection
- split package support
- development package support
- distinction between explicitly and implicitly installed packages
- let the user see and edit all needed PKGBUILDs before any of the building of AUR packages starts
- fetching of needed pgp keys for package building
- pacman --search for repo and aur packages (aur results sorted by popularity)
- search function supports regex. for searching the aur the first span of at least two consecutive non-regex characters is being used. these results are being filtered by the regex expression afterwards.
- differentiate between the possible sources to install packages from in case of same names in different known repos and/or the aur
https://github.com/polygamma/aurman/wiki/Description-of-the-aurman-dependency-solving
https://github.com/polygamma/aurman/wiki/Using-aurman-as-dependency-solver
aurman wants to remove packages, which should not be removed, what's the matter?
Please check, if the problem arises, because aurman assumes .so dependencies to be unfulfilled.
E. g. libavcodec.so=57-64 which requires a specific version of the mentioned .so.
This may be the case, because a providing AUR package only lists libavcodec.so as being provided,
without specifying the version. Hence aurman cannot be sure, if the version will match,
since this can only be known after building the package, thus assumes that the dependency is not fulfilled.
You may change this behavior by yielding --optimistic_versioning via the command line,
in that case aurman assumes the dependency to be fulfilled.
You should make sure, that the version is going to be the needed one, otherwise
the behavior of installing the packages is undefined.
Notice:
aurmanwill never remove packages on its own,aurmanjust predicts what is going to happen
How do I change the editor used by aurman for editing PKGBUILDs etc.?
aurman uses the environment variables VISUAL and EDITOR, hence you have to change those variables.
If VISUAL is set, aurman uses that,
else if EDITOR is set, aurman uses that,
else aurman uses /usr/bin/nano
How to install packages whose names are saved in a file with aurman?
You may simply use something like: aurman -S $(cat ~/packages_names.txt | xargs)
How do I change the cache directory of aurman?
aurman uses $XDG_CACHE_HOME/aurman with fallback to ~/.cache/aurman, hence you have to change $XDG_CACHE_HOME.
If you don't want to change the variable globally, use something like: XDG_CACHE_HOME=/new/cache/dir aurman to call aurman
Notice: It's being asked quite frequently to introduce a config option to change the cache dir, that is not going to happen, unless you provide really, really good arguments.

