community.general.flatpak – Manage flatpaks

Note

This plugin is part of the community.general collection (version 2.5.1).

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
string / required
The name of the flatpak to manage.
When used with state=present, name can be specified as an http(s) URL to a flatpakref file or the unique reverse DNS name that identifies a flatpak.
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 an http(s) 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.
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
  community.general.flatpak:
    name: https://git.gnome.org/browse/gnome-apps-nightly/plain/gedit.flatpakref
    state: present

- 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: Remove the gedit flatpak
  community.general.flatpak:
    name: org.gnome.gedit
    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)