Install Flatpak Package Manager on Debian 11: Best Utility
This guide is designed to walk you through the process of installing Flatpak Package Manager on Debian 11. Flatpak is a powerful package management tool that simplifies the distribution, installation, and management of software applications. Its key advantage lies in its ability to bundle applications with all their dependencies, ensuring that they run consistently across various Linux distributions, regardless of their underlying differences. This makes Flatpak a "universal package" solution, eliminating dependency conflicts and runtime issues that can plague traditional package management systems. Setting up Flatpak Package Manager on Debian 11 is relatively straightforward.
Follow the steps outlined below to successfully set up Flatpak and Flathub on your Debian 11 system. This guide assumes you are on the Orcacore website.
Before proceeding, ensure you are logged into your Debian 11 server as a non-root user with sudo privileges. If you haven’t already configured this, refer to the Orcacore guide on Initial Server Setup with Debian 11 for detailed instructions.
Installation Steps of Flatpak Package Manager on Debian 11
First, update your local package index using the following command:
sudo apt update
This command ensures that your system has the latest information about available packages from the Debian repositories.
Next, install the Flatpak package from the default Debian repository:
sudo apt install flatpak -y
The -y
flag automatically answers "yes" to any prompts during the installation process, streamlining the process.
Verify your Flatpak installation by checking the installed version:
flatpak --version
This command should output the installed Flatpak version, similar to the following:
**Output**
Flatpak 1.10.8
This confirms that Flatpak is installed correctly on your Debian 11 system.
Using Flatpak Package Manager on Debian 11
Now that Flatpak is installed, let’s explore how to use it to install and manage applications. The next step is to enable Flathub, a popular repository for Flatpak applications.
Enable Flathub (Flatpak Hub) on Debian 11
Flathub is a comprehensive and widely used platform for discovering and installing Flatpak applications. Enabling Flathub allows you to access a vast library of software.
Use the following command to add Flathub as a Flatpak remote:
flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
The --if-not-exists
flag ensures that Flathub is only added if it doesn’t already exist in your Flatpak configuration.
Search Apps with Flatpak
To search for a specific application within the Flathub repository, use the flatpak search
command followed by the application name. The general syntax is:
flatpak search <Application_name>
For example, to search for OpenJDK, use the following command:
flatpak search openjdk
This will display a list of applications matching the search term, along with their descriptions, application IDs, versions, branches, and remote sources. The output might look similar to this:
**Output**
Name Description Application ID Version Branch Remotes
OpenJDK ― The latest version of th― ―dk.Extension.openjdk 21.08 flathub
OpenJDK ― The latest version of th― ―dk.Extension.openjdk 20.08 flathub
OpenJDK ― The latest version of th― ―dk.Extension.openjdk 19.08 flathub
OpenJDK ― The latest version of th― ―dk.Extension.openjdk 18.08 flathub
OpenJdk ― OpenJdk 8 Sdk extension ―k.Extension.openjdk8 22.08 flathub
OpenJdk ― OpenJdk 8 Sdk extension ―k.Extension.openjdk8 21.08 flathub
OpenJdk ― OpenJdk 8 Sdk extension ―k.Extension.openjdk8 20.08 flathub
OpenJDK ― The LTS (long term suppo― ―.Extension.openjdk17 22.08 flathub
OpenJDK ― The LTS (long term suppo― ―.Extension.openjdk17 21.08 flathub
OpenJDK ― The LTS (long term suppo― ―.Extension.openjdk17 20.08 flathub
OpenJDK ― The LTS (long term suppo― ―.Extension.openjdk11 22.08 flathub
OpenJDK ― The LTS (long term suppo― ―.Extension.openjdk11 21.08 flathub
OpenJDK ― The LTS (long term suppo― ―.Extension.openjdk11 20.08 flathub
OpenJDK ― The LTS (long term suppo― ―.Extension.openjdk11 19.08 flathub
OpenJDK ― The LTS (long term suppo― ―.Extension.openjdk11 18.08 flathub
Install an App with Flatpak Package Manager
Once you’ve found the application you want to install, use the flatpak install
command followed by the application ID. The syntax is:
flatpak install <Application_name>
For example, to install OpenJDK, use the following command:
flatpak install openjdk
Flatpak will then present you with a list of available versions and ask you to choose which one to install.
Looking for matches…
Similar refs found for ‘openjdk’ in remote ‘flathub’ (system):
1) runtime/org.freedesktop.Sdk.Extension.openjdk8/x86_64/21.08
2) runtime/org.freedesktop.Sdk.Extension.openjdk10/x86_64/18.08
3) runtime/org.freedesktop.Sdk.Extension.openjdk/x86_64/18.08
4) runtime/org.freedesktop.Sdk.Extension.openjdk17/x86_64/20.08
5) runtime/org.freedesktop.Sdk.Extension.openjdk8/x86_64/22.08
6) runtime/org.freedesktop.Sdk.Extension.openjdk11/x86_64/18.08
7) runtime/org.freedesktop.Sdk.Extension.openjdk/x86_64/19.08
8) runtime/org.freedesktop.Sdk.Extension.openjdk17/x86_64/21.08
9) runtime/org.freedesktop.Sdk.Extension.openjdk11/x86_64/19.08
10) runtime/org.freedesktop.Sdk.Extension.openjdk/x86_64/20.08
11) runtime/org.freedesktop.Sdk.Extension.openjdk17/x86_64/22.08
12) runtime/org.freedesktop.Sdk.Extension.openjdk11/x86_64/20.08
13) runtime/org.freedesktop.Sdk.Extension.openjdk/x86_64/21.08
14) runtime/org.freedesktop.Sdk.Extension.openjdk8/x86_64/18.08
15) runtime/org.freedesktop.Sdk.Extension.openjdk11/x86_64/21.08
16) runtime/org.freedesktop.Sdk.Extension.openjdk9/x86_64/1.6
17) runtime/org.freedesktop.Sdk.Extension.openjdk8/x86_64/19.08
18) runtime/org.freedesktop.Sdk.Extension.openjdk11/x86_64/22.08
19) runtime/org.freedesktop.Sdk.Extension.openjdk10/x86_64/1.6
20) runtime/org.freedesktop.Sdk.Extension.openjdk8/x86_64/1.6
21) runtime/org.freedesktop.Sdk.Extension.openjdk9/x86_64/1.6
22) runtime/org.freedesktop.Sdk.Extension.openjdk8/x86_64/20.08
**Which do you want to use (0 to abort)? [0-22]:** 1
Enter the number corresponding to the version you wish to install. After the installation is complete, you’ll see output similar to this:
**Output**
ID Branch Op Remote Download
ID Branch Op Remote Download
1. [✓] org.freedesktop.Sdk.Extension.openjdk8 21.08 i flathub 121.1 MB / 115.2 MB
Installing… ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100% 15.1 MB/s 00:00
Uninstall Apps with Flatpak
To uninstall an application installed via Flatpak, use the flatpak uninstall
command followed by the application ID. The syntax is:
flatpak uninstall APP-ID
For example:
flatpak uninstall runtime/org.freedesktop.Sdk.Extension.openjdk8
For more detailed information and advanced usage, refer to the official Flatpak Docs.
Uninstall or Remove Flatpak Package Manager
If you decide you no longer need Flatpak, you can easily remove it from your system using the following command:
sudo apt autoremove flatpak -y
This command will remove Flatpak and any unused dependencies.
Alternative Solutions for Application Management on Debian 11
While Flatpak offers a robust solution for universal package management, alternative approaches exist for managing applications on Debian 11. Here are two different ways to solve the application management problem:
1. Using Snap Package Manager:
Snap is another popular package management system that, similar to Flatpak, aims to provide universal packages that work across different Linux distributions. Developed by Canonical (the company behind Ubuntu), Snap packages bundle applications with their dependencies, ensuring consistent behavior.
-
Explanation: Snap packages are self-contained and isolated from the base system, reducing the risk of dependency conflicts. The Snap Store provides a centralized repository for discovering and installing applications. Snap also offers automatic updates and rollback capabilities, enhancing system stability.
-
Installation: To install Snap on Debian 11, use the following commands:
sudo apt update sudo apt install snapd
After installation, start and enable the snapd service:
sudo systemctl start snapd sudo systemctl enable snapd
-
Usage: To install an application using Snap, use the
snap install
command followed by the application name. For example, to install the VLC media player:sudo snap install vlc
To remove an application, use the
snap remove
command:sudo snap remove vlc
2. Utilizing Docker Containers:
Docker is a containerization platform that allows you to package applications and their dependencies into isolated containers. These containers can then be easily deployed and run on any system with Docker installed.
-
Explanation: Docker provides a high degree of isolation, ensuring that applications run in a consistent environment, regardless of the underlying operating system. Docker containers are lightweight and efficient, making them suitable for running a wide range of applications. Docker Hub serves as a public registry for sharing and discovering Docker images.
-
Installation: To install Docker on Debian 11, follow these steps:
sudo apt update sudo apt install apt-transport-https ca-certificates curl gnupg lsb-release curl -fsSL https://download.docker.com/linux/debian/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/debian $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null sudo apt update sudo apt install docker-ce docker-ce-cli containerd.io
After installation, start and enable the Docker service:
sudo systemctl start docker sudo systemctl enable docker
-
Usage: To run an application in a Docker container, you’ll need to find or create a Docker image for that application. For example, to run a simple Nginx web server:
sudo docker run -d -p 80:80 nginx
This command will download the Nginx image from Docker Hub, create a container, and map port 80 on your host machine to port 80 in the container. To stop the container:
sudo docker stop <container_id>
Replace
<container_id>
with the actual container ID.
Conclusion
Flatpak Package Manager on Debian 11 offers a modern approach to software management, ensuring consistency and compatibility across different Linux systems. By following the steps outlined in this guide, you can easily install and use Flatpak to manage your applications on Debian 11. While Flatpak offers a robust solution, alternative options like Snap and Docker provide different approaches to application management, each with its own strengths and weaknesses. Choosing the right solution depends on your specific needs and preferences.
Hope you found this guide helpful. You may also be interested in the following articles: