portage – Package manager for Gentoo
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   |  
|   jobs    -    |    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    -    |    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    -    |    Package atom or set, e.g.   sys-apps/foo or >foo-2.13 or @world
 |  |
|   quiet    boolean    |   
  |    Run emerge in quiet mode (--quiet)   |  
|   quietbuild    boolean   added in 2.6   |   
  |    Redirect all build output to logs alone, and do not display it  on stdout (--quiet-build)   |  
|   quietfail    boolean   added in 2.6   |   
  |    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    -    |   
  |    State of the package atom   |  
|   sync    -    |   
  |    Sync package repositories first  If yes, perform "emerge --sync"  If web, perform "emerge-webrsync"   |  
|   update    boolean    |   
  |    Update packages to the best version available (--update)   |  
|   usepkgonly    boolean    |   
  |    Merge only binaries (no compiling). This sets getbinpkg=yes.   |  
|   verbose    boolean    |   
  |    Run emerge in verbose mode (--verbose)   |  
Examples
# Make sure package foo is installed
- portage:
    package: foo
    state: present
# Make sure package foo is not installed
- portage:
    package: foo
    state: absent
# Update package foo to the "latest" version ( os specific alternative to latest )
- portage:
    package: foo
    update: yes
# Install package foo using PORTAGE_BINHOST setup
- portage:
    package: foo
    getbinpkg: yes
# Re-install world from binary packages only and do not allow any compiling
- portage:
    package: '@world'
    usepkgonly: yes
# Sync repositories and update world
- portage:
    package: '@world'
    update: yes
    deep: yes
    sync: yes
# Remove unneeded packages
- portage:
    depclean: yes
# Remove package foo if it is not explicitly needed
- portage:
    package: foo
    state: absent
    depclean: yes
   Status
- This module is not guaranteed to have a backwards compatible interface. [preview]
 - This module is maintained by the Ansible Community. [community]
 
Authors
- William L Thomson Jr (@wltjr)
 - Yap Sok Ann (@sayap)
 - Andrew Udvare (@Tatsh)
 
Hint
If you notice any issues in this documentation, you can edit this document to improve it.
    © 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
    https://docs.ansible.com/ansible/2.9/modules/portage_module.html