Original author(s) | Alexander Larsson |
---|---|
Developer(s) | Flatpak Team [1] |
Initial release | September 2015 [2] |
Stable release | |
Repository | |
Written in | C |
Operating system | Linux |
License | LGPL-2.1-or-later [4] |
Website | flatpak |
Flatpak 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. [5] [6] Flatpak, in 2016, was known as xdg-app. [7]
Applications using Flatpak need permissions to have access to resources such as Bluetooth, sound (with PulseAudio), network, and files. These permissions are configured 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, Flatpak uses OSTree as its backend which can deduplicate matching files. This means that the first installation 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]
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]
Debian, also known as Debian GNU/Linux, is a Linux distribution composed of free and open-source software and optionally non-free firmware or software developed by the community-supported Debian Project, which was established by Ian Murdock on August 16, 1993. The first version of Debian (0.01) was released on September 15, 1993, and its first stable version (1.1) was released on June 17, 1996. The Debian Stable branch is the most popular edition for personal computers and servers. Debian is also the basis for many other distributions that have different purposes, like Proxmox for servers, Ubuntu or Linux Mint for desktops, Kali for penetration testing, and Pardus and Astra for government use.
A package manager or package-management system is a collection of software tools that automates the process of installing, upgrading, configuring, and removing computer programs for a computer in a consistent manner.
Gambas is the name of an object-oriented dialect of the BASIC programming language, as well as the integrated development environment that accompanies it. Designed to run on Linux and other Unix-like computer operating systems, its name is a recursive acronym for Gambas Almost Means Basic. Gambas is also the word for prawns in the Spanish, French, and Portuguese languages, from which the project's logos are derived.
Portage is a package management system originally created for and used by Gentoo Linux and also by ChromeOS, Calculate, Sabayon, and Funtoo Linux among others. Portage is based on the concept of ports collections. Gentoo is sometimes referred to as a meta-distribution due to the extreme flexibility of Portage, which makes it operating-system-independent. The Gentoo/Alt project was concerned with using Portage to manage other operating systems, such as BSDs, macOS and Solaris. The most notable of these implementations is the Gentoo/FreeBSD project.
freedesktop.org (fd.o), formerly X Desktop Group (XDG), is a project to work on interoperability and shared base technology for free-software desktop environments for the X Window System (X11) and Wayland on Linux and other Unix-like operating systems. Although freedesktop.org produces specifications for interoperability, it is not a formal standards body.
seccomp is a computer security facility in the Linux kernel. seccomp allows a process to make a one-way transition into a "secure" state where it cannot make any system calls except exit
, sigreturn
, read
and write
to already-open file descriptors. Should it attempt any other system calls, the kernel will either just log the event or terminate the process with SIGKILL or SIGSYS. In this sense, it does not virtualize the system's resources but isolates the process from them entirely.
AppImage is an open-source format for distributing portable software on Linux. It aims to allow the installation of binary software independently of specific Linux distributions, a concept often referred to as upstream packaging. As a result, one AppImage can be installed and run across Ubuntu, Arch Linux, and Red Hat Enterprise Linux without needing to use different files. It aims to be a format that's self-contained, rootless, and independent of the underlying Linux distribution.
Fedora Linux is a Linux distribution developed by the Fedora Project. It was originally developed in 2003 as a continuation of the Red Hat Enterprise Linux project. It contains software distributed under various free and open-source licenses and aims to be on the leading edge of open-source technologies. It is now the upstream source for CentOS Stream and Red Hat Enterprise Linux.
PackageKit is a free and open-source suite of software applications designed to provide a consistent and high-level front end for a number of different package management systems. PackageKit was created by Richard Hughes in 2007, and first introduced into an operating system as a default application in May 2008 with the release of Fedora 9.
GNOME Shell is the graphical shell of the GNOME desktop environment starting with version 3, which was released on April 6, 2011. It provides basic functions like launching applications and switching between windows, and is also a widget engine. GNOME Shell replaced GNOME Panel and some ancillary components of GNOME 2.
AppStream is an agreement between major Linux vendors to create an infrastructure for application installers on Linux and sharing of metadata.
Kiwix is a free and open-source offline web browser created by Emmanuel Engelhart and Renaud Gaudin in 2007. It was first launched to allow offline access to Wikipedia, but has since expanded to include other projects from the Wikimedia Foundation, public domain texts from Project Gutenberg, many of the Stack Exchange sites, and many other resources. Available in more than 100 languages, Kiwix has been included in several high-profile projects, from smuggling operations in North Korea to Google Impact Challenge's recipient Bibliothèques Sans Frontières.
GNOME Software is a utility for installing applications and updates on Linux. It is part of the GNOME Core Applications, and was introduced in GNOME 3.10.
Android Runtime for Chrome (ARC) is a compatibility layer and sandboxing technology for running Android applications on desktop and laptop computers in an isolated environment. It allows applications to be safely run from a web browser, independent of user operating system, at near-native speeds.
Void Linux is an independent Linux distribution that uses the X Binary Package System (XBPS) package manager, which was designed and implemented from scratch, and the runit init system. Excluding binary kernel blobs, a base install is composed entirely of free software.
Snap is a software packaging and deployment system developed by Canonical for operating systems that use the Linux kernel and the systemd init system. The packages, called snaps, and the tool for using them, snapd, work across a range of Linux distributions and allow upstream software developers to distribute their applications directly to users. Snaps are self-contained applications running in a sandbox with mediated access to the host system. Snap was originally released for cloud applications but was later ported to also work for Internet of Things devices and desktop applications.
libostree is a system for versioning updates of Linux-based operating systems. It can be considered as "Git for operating system binaries". It operates in userspace, and will work on top of any Linux file system. At its core is a Git-like content-addressed object store with branches to track meaningful file system trees within the store.
Pop!_OS is a free and open-source Linux distribution, based on Ubuntu, and featuring a customized GNOME desktop environment known as COSMIC. The distribution is developed by American Linux computer manufacturer System76. Pop!_OS is primarily built to be bundled with the computers built by System76, but can also be downloaded and installed on most computers.
Foliate is a free e-book reading application for desktop Linux systems. The name refers to leaves, meaning "(getting) leafy" or "…-leaved".