Flatpak
![]() | |
![]() Example of installing software with Flatpak | |
Original author(s) | Alexander Larsson |
---|---|
Developer(s) | Flatpak Team[1] |
Initial release | September 2015[2] |
Stable release | 1.14.10[3] ![]() |
Repository | |
Written in | C |
Operating system | Linux |
License | LGPL-2.1-or-later[4] |
Website | flatpak flathub |
Flatpak, formerly known as xdg-app,[5] is a utility for software deployment and package management for Linux. It is advertised as offering a sandbox environment in which users can run application software in isolation from the rest of the system.[6][7]
Features
Applications using Flatpak need permissions to have access to resources such as Bluetooth, sound (with PulseAudio), network, and files. These permissions are defined by the maintainer of the Flatpak and can be added or removed by users on their system.[8][9]
Another key feature of Flatpak is that it allows application developers to directly provide updates to users without going through distributions, and without having to package and test the application separately for each distribution.[10]
Flathub, a repository (or remote source in the Flatpak terminology) located at flathub.org
, has become the de facto standard for getting applications packaged with Flatpak.[11] Packages are added to it by both the Flathub administrators and the developers of the programs themselves (though the admins have stated their preference for developer-submitted apps).[12] Although Flathub is the de facto source for applications packaged with Flatpak, it is possible to host a Flatpak repository that is independent of Flathub.[13][14][15]
Flatpak runs in a sandbox (which provides a separate, ABI-stable version of all common system libraries), and that means that it will always use more space on the system than common native packages. However, this is not a concern as Flatpak uses OSTree as its backend which can deduplicate matching files. This means that the first install of a Flatpak application will always take up more space at first, but will be more efficient as the user installs more Flatpak packages.[16]
Support
Theoretically, Flatpak apps can be installed on any existing and future Linux distribution, including those installed with the Windows Subsystem for Linux compatibility layer, so long as bubblewrap and OSTree are available.
It can also be used on Linux kernel-based systems like ChromeOS.[17]
The Flatpak setup page hosts setup instructions to start using Flathub and Flatpak on a large number of Linux distributions.
See also
References
- ^ "About".
- ^ "Flatpak's History". GitHub.
- ^ "1.14.10". 14 August 2024. Retrieved 15 August 2024.
- ^ "COPYING". GitHub. 31 March 2015. Retrieved 2021-10-14.
- ^ Larsson, Alexander (9 May 2016). "Renamed to flatpak in git". freedesktop.org. Retrieved 1 June 2016.
- ^ Larsson, Alexander (29 April 2016). "Using bubblewrap in xdg-app". Alexander Larsson: Cool links and commentary. GNOME. Retrieved 8 January 2016.
- ^ Willis, Nathan (2015-01-21). "GNOME and application sandboxing revisited". LWN. Archived from the original on 2018-11-25. Retrieved 2016-01-03.
- ^ "Sandbox Permissions". Flatpak documentation. Retrieved 2019-06-24.
- ^ "flatpak-run". Flatpak documentation. Retrieved 2019-06-24.
- ^ Larsson, Alex. "Kick-starting the revolution 1.0". Retrieved 14 April 2020.
- ^ "7 Flatpak Apps You Can Install Right Now from Flathub". OMG! Ubuntu!. 2017-07-20. Retrieved 2019-05-29.
- ^ GitHub - flathub/flathub: Pull requests for new applications to be added., Flathub, 2019-05-24, retrieved 2019-05-29
- ^ "List remotes". Flatpak documentation. Retrieved 2019-06-24.
- ^ "Hosting a Repository". Retrieved 14 April 2020.
- ^ "Reasons to use Flatpak". Flatpak documentation. Retrieved 2019-06-24.
- ^ TheEvilSkeleton (2022-05-16). "Response to "Flatpak Is Not the Future"". TheEvilSkeleton. Retrieved 2023-02-11.
- ^ "Chrome OS Quick Setup".