On this page
community.general.portage – Package manager for Gentoo
Note
This plugin is part of the community.general collection (version 3.8.1).
You might already have this collection installed if you are using the ansible
package. It is not included in ansible-core
. To check whether it is installed, run ansible-galaxy collection list
.
To install it, use: ansible-galaxy collection install community.general
.
To use it in a playbook, specify: community.general.portage
.
Synopsis
- Manages Gentoo packages
Requirements
The below requirements are needed on the host that executes this module.
- gentoolkit
Parameters
Parameter | Choices/Defaults | Comments |
---|---|---|
changed_use
boolean
|
|
Include installed packages where USE flags have changed, except when
flags that the user has not enabled are added or removed
(--changed-use)
|
deep
boolean
|
|
Consider the entire dependency tree of packages (--deep)
|
depclean
boolean
|
|
Remove packages not needed by explicitly merged packages (--depclean)
If no package is specified, clean up the world's dependencies
Otherwise, --depclean serves as a dependency aware version of --unmerge
|
getbinpkg
boolean
|
|
Prefer packages specified at PORTAGE_BINHOST in make.conf .
|
getbinpkgonly
boolean
added in 1.3.0 of community.general
|
|
Merge only packages specified at PORTAGE_BINHOST in make.conf .
|
jobs
integer
|
Specifies the number of packages to build simultaneously.
Since version 2.6: Value of 0 or False resets any previously added
--jobs setting values
|
|
keepgoing
boolean
|
|
Continue as much as possible after an error.
|
loadavg
float
|
Specifies that no new builds should be started if there are
other builds running and the load average is at least LOAD
Since version 2.6: Value of 0 or False resets any previously added
--load-average setting values
|
|
newuse
boolean
|
|
Include installed packages where USE flags have changed (--newuse)
|
nodeps
boolean
|
|
Only merge packages but not their dependencies (--nodeps)
|
noreplace
boolean
|
|
Do not re-emerge installed packages (--noreplace)
|
oneshot
boolean
|
|
Do not add the packages to the world file (--oneshot)
|
onlydeps
boolean
|
|
Only merge packages' dependencies but not the packages (--onlydeps)
|
package
list / elements=string
|
Package atom or set, e.g.
sys-apps/foo or >foo-2.13 or @world
aliases: name |
|
quiet
boolean
|
|
Run emerge in quiet mode (--quiet)
|
quietbuild
boolean
|
|
Redirect all build output to logs alone, and do not display it
on stdout (--quiet-build)
|
quietfail
boolean
|
|
Suppresses display of the build log on stdout (--quiet-fail)
Only the die message and the path of the build log will be
displayed on stdout.
|
state
string
|
|
State of the package atom
|
sync
string
|
|
Sync package repositories first
If yes, perform "emerge --sync"
If web, perform "emerge-webrsync"
|
update
boolean
|
|
Update packages to the best version available (--update)
|
usepkg
boolean
|
|
Tries to use the binary package(s) in the locally available packages directory.
|
usepkgonly
boolean
|
|
Merge only binaries (no compiling).
|
verbose
boolean
|
|
Run emerge in verbose mode (--verbose)
|
Examples
- name: Make sure package foo is installed
community.general.portage:
package: foo
state: present
- name: Make sure package foo is not installed
community.general.portage:
package: foo
state: absent
- name: Update package foo to the latest version (os specific alternative to latest)
community.general.portage:
package: foo
update: yes
- name: Install package foo using PORTAGE_BINHOST setup
community.general.portage:
package: foo
getbinpkg: yes
- name: Re-install world from binary packages only and do not allow any compiling
community.general.portage:
package: '@world'
usepkgonly: yes
- name: Sync repositories and update world
community.general.portage:
package: '@world'
update: yes
deep: yes
sync: yes
- name: Remove unneeded packages
community.general.portage:
depclean: yes
- name: Remove package foo if it is not explicitly needed
community.general.portage:
package: foo
state: absent
depclean: yes
Authors
- William L Thomson Jr (@wltjr)
- Yap Sok Ann (@sayap)
- Andrew Udvare (@Tatsh)
© 2012–2018 Michael DeHaan
© 2018–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/latest/collections/community/general/portage_module.html