flatpak-update
Update installed Flatpak applications and runtimes
TLDR
Update all installed applications and runtimes (use -y to confirm all prompts automatically)
Update only a specific app
Update/Downgrade to a specific commit (also see flatpak remote-info and flatpak mask)
SYNOPSIS
flatpak update [OPTION...] [APPLICATION/RUNTIME...]
PARAMETERS
-h, --help
Displays help information about the command.
--user
Operates on the user-specific Flatpak installation, typically located in ~/.local/share/flatpak/.
--system
Operates on the system-wide Flatpak installation, usually in /var/lib/flatpak/. This is the default behavior if neither --user nor --system is specified.
--noninteractive
Performs the update without prompting for user confirmation, useful for scripting or automated environments.
--commit=COMMIT
Updates the specified application or runtime to a particular commit ID instead of the latest available version.
--appstream
Updates the AppStream metadata, which provides rich information about applications like descriptions, screenshots, and categories for software centers.
--no-related
Prevents the command from updating related extensions or dependencies that are not explicitly specified.
--allow-downgrade
Permits updating to an older version of an application or runtime, which can be useful in specific debugging or compatibility scenarios.
APPLICATION/RUNTIME...
Optional argument(s) to specify one or more application or runtime IDs to update. If omitted, all installed Flatpaks are updated.
DESCRIPTION
flatpak update is a fundamental command within the Flatpak ecosystem, designed to ensure that all installed applications and their underlying runtimes are kept current. When executed, it connects to configured Flatpak remotes (repositories) to check for newer versions of software. If updates are available, it downloads and applies them, replacing older versions while preserving user data and application settings.
This process is crucial for maintaining system security, as updates often include critical bug fixes and security patches that address vulnerabilities. Beyond security, updating provides access to new features, performance improvements, and compatibility enhancements. The command intelligently handles dependencies, ensuring that runtimes required by applications are also updated to compatible versions.
Users can choose to update all installed Flatpaks at once or specify particular applications or runtimes for targeted updates. The update mechanism leverages OSTree technology, which allows for efficient, atomic updates, meaning an update either succeeds completely or reverts cleanly, preventing system corruption in case of interruptions. This atomicity ensures system stability and reliability, making flatpak update a robust tool for software maintenance.
CAVEATS
Internet Connection: An active internet connection is required to download updates from configured Flatpak remotes.
Disk Space & Bandwidth: Updates, especially for runtimes, can be substantial in size, requiring significant disk space and bandwidth.
Application State: While Flatpak updates are atomic, it's generally recommended to close applications being updated before running the command to ensure a smooth transition and avoid potential conflicts.
Remote/GPG Issues: Outdated remote configurations or GPG key issues can prevent successful updates, requiring manual intervention to resolve.
OFFLINE UPDATES
While flatpak update primarily operates online, Flatpak supports mechanisms for preparing updates offline using commands like flatpak pull with --bare, allowing for staged updates in environments with limited or no internet access.
SECURITY BEST PRACTICES
Regularly running flatpak update is a critical security best practice. It ensures that applications and their underlying runtimes receive the latest security patches, mitigating vulnerabilities and protecting the system from potential exploits. Users should integrate this command into their routine system maintenance.
HISTORY
Flatpak, initially known as xdg-app, was conceived by Lennart Poettering and first publicly announced in 2015. The flatpak-update command has been a core component of the Flatpak framework from its early development, central to its mission of providing a robust, sandboxed, and self-contained application distribution system for Linux. Its design leverages the OSTree content-addressable filesystem, enabling atomic updates and efficient storage of application and runtime versions. Over time, flatpak-update has evolved alongside the Flatpak project, incorporating improvements in performance, dependency resolution, and user experience, solidifying its role as the primary method for maintaining up-to-date Flatpak installations.