# Role: apt_set

## Description

Wrapper for installing a set of packages with Apt.

Creates a metapackage, with the set of packages listed as dependencies.

https://wiki.debian.org/Apt

## Usage

Using in a playbook:

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

### Vars

`apt_set_name`:

Package set name.

`apt_set_name_prefix`:

Prefix to add to the package set name.

`apt_set_meta_package_section`:

Section for the metapackage.

`apt_set_meta_package_priority`:

Priority for the metapackage.

`apt_set_meta_package_standards_version`:

Standards version for the metapackage.

`apt_set_meta_package_version`:

Version for the metapackage.

`apt_set_keys`:

Keys required for the set.

Can either be a list of strings with the URL, or a list of objects with fields:

- 'url'
- 'id'
- 'nameserver'

`apt_set_deb822_repositories`:

Deb822 repositories required for the set.

`apt_set_repositories`:

Repositories required for the set.

`apt_set_archs`:

Archs required for the set.

`apt_set_packages`:

Packages included in the set.

`apt_set_remove_packages`:

Packages to remove along with installing the set.

`apt_set_tmp_control_file_dir`:

Path where to install the temporary control file, for building the metapackage.

`apt_set_preferences`:

List of preferences configurations to install.

List items are objects containing fields:

- 'name'
- 'config'

`apt_set_default_release`:

Set `default_release` for `ansible.builtin.apt` module.
