community.general.flatpak – Manage flatpaks

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.flatpak.

Synopsis

Requirements

The below requirements are needed on the host that executes this module.

  • flatpak

Parameters

Parameter Choices/Defaults Comments
executable
path
Default:
"flatpak"
The path to the flatpak executable to use.
By default, this module looks for the flatpak executable on the path.
method
string
    Choices:
  • system
  • user
The installation method to use.
Defines if the flatpak is supposed to be installed globally for the whole system or only for the current user.
name
list / elements=string / required
The name of the flatpak to manage. To operate on several packages this can accept a list of packages.
When used with state=present, name can be specified as a URL to a flatpakref file or the unique reverse DNS name that identifies a flatpak.
Both https:// and http:// URLs are supported.
When supplying a reverse DNS name, you can use the remote option to specify on what remote to look for the flatpak. An example for a reverse DNS name is org.gnome.gedit.
When used with state=absent, it is recommended to specify the name in the reverse DNS format.
When supplying a URL with state=absent, the module will try to match the installed flatpak based on the name of the flatpakref to remove it. However, there is no guarantee that the names of the flatpakref file and the reverse DNS name of the installed flatpak do match.
no_dependencies
boolean
added in 3.2.0 of community.general
    Choices:
  • no
  • yes
If installing runtime dependencies should be omitted or not
This parameter is primarily implemented for integration testing this module. There might however be some use cases where you would want to have this, like when you are packaging your own flatpaks.
remote
string
Default:
"flathub"
The flatpak remote (repository) to install the flatpak from.
By default, flathub is assumed, but you do need to add the flathub flatpak_remote before you can use this.
See the community.general.flatpak_remote module for managing flatpak remotes.
state
string
    Choices:
  • absent
  • present
Indicates the desired package state.

Examples

- name: Install the spotify flatpak
  community.general.flatpak:
    name:  https://s3.amazonaws.com/alexlarsson/spotify-repo/spotify.flatpakref
    state: present

- name: Install the gedit flatpak package without dependencies (not recommended)
  community.general.flatpak:
    name: https://git.gnome.org/browse/gnome-apps-nightly/plain/gedit.flatpakref
    state: present
    no_dependencies: true

- name: Install the gedit package from flathub for current user
  community.general.flatpak:
    name: org.gnome.gedit
    state: present
    method: user

- name: Install the Gnome Calendar flatpak from the gnome remote system-wide
  community.general.flatpak:
    name: org.gnome.Calendar
    state: present
    remote: gnome

- name: Install multiple packages
  community.general.flatpak:
    name:
      - org.gimp.GIMP
      - org.inkscape.Inkscape
      - org.mozilla.firefox

- name: Remove the gedit flatpak
  community.general.flatpak:
    name: org.gnome.gedit
    state: absent

- name: Remove multiple packages
  community.general.flatpak:
    name:
      - org.gimp.GIMP
      - org.inkscape.Inkscape
      - org.mozilla.firefox
    state: absent

Return Values

Common return values are documented here, the following are the fields unique to this module:

Key Returned Description
command
string
When a flatpak command has been executed
The exact flatpak command that was executed

Sample:
/usr/bin/flatpak install --user --nontinteractive flathub org.gnome.Calculator
msg
string
failure
Module error message

Sample:
Executable '/usr/local/bin/flatpak' was not found on the system.
rc
integer
When a flatpak command has been executed
Return code from flatpak binary

stderr
string
When a flatpak command has been executed
Error output from flatpak binary

Sample:
error: Error searching remote flathub: Can't find ref org.gnome.KDE
stdout
string
When a flatpak command has been executed
Output from flatpak binary

Sample:
org.gnome.Calendar/x86_64/stable current org.gnome.gitg/x86_64/stable current


Authors

  • John Kwiatkoski (@JayKayy)
  • Alexander Bethke (@oolongbrothers)

© 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/flatpak_module.html