# Role: portage

## Description

Configures Portage config directories, local profile, envs and bashrc.

https://wiki.gentoo.org/wiki/Portage

## Usage

Using in a playbook:

```yaml
- name: Play
  hosts:
    - all
  roles:
    - samuliy.ansible.portage
  vars:
    ...
```

### Vars

`portage_config_dir`:

Directory to install the config files to. Default is /etc/portage.

`portage_profile_name`:

Name of the local profile.

`portage_profile_parents`:

List of parents for the local profile.

`portage_features`:

Portage features to enable.

`portage_accept_keywords`:

List of global accept_keywords to use.

`portage_binrepos`:

List of binrepos.

`portage_confcache_dir`:

Config cache directory.

`portage_cpu_arch`:

CPU architecture.

`portage_distdir`:

Distdir path.

`portage_emerge_default_opts_jobs`:

Default opts for emerge.

`portage_goamd64`:

GOAMD64 value.

`portage_grub_platforms`:

GRUB_PLATFORMS value.

`portage_makeopts_jobs`:

Count of jobs to set into MAKEOPTS.

`portage_makeopts_load_average`:

Load avg value to set into MAKEOPTS.

`portage_mtune`:

Mtune value.

`portage_package_accept_keywords`:

List of package specific accept_keywords to install.

`portage_package_env`:

List of package specific env configs to install.

`portage_package_license`:

List of package specific licenses to accept.

`portage_package_mask`:

List of package masking configs.

`portage_package_unmask`:

List of package unmasking configs.

`portage_package_use`:

List of package specific USEs to install.

`portage_pkgdir_base`:

Pkgdir path.

`portage_portdir`:

Portdir path.

`portage_profile_version`:

Profile version.

`portage_repositories`:

Portage repositories to enable.

`portage_scheduling_policy`:

Portage scheduling policy.

`portage_ssh_opts`:

Portage SSH options.

`portage_tmpdir`:

Portage tmpdir. Should not be mounted on tmpfs. Enable for packages that don't fit on tmpfs.

`portage_tmpfs_tmpdir`:

Portage tmpdir mounted of tmpfs.

`portage_use`:

Portage global USEs.

`portage_video_cards`:

List of video cards for make.conf.

`portage_envs`:

Envs to install for packages. A list of items with fields:

- 'name'
- 'config'

`portage_secureboot_sign_key`:

Set secureboot signing key.

`portage_secureboot_sign_cert`:

Set secureboot signing cert.

`portage_perl_features`:

Perl features to enable.
