RED HAT ENTERPRISE LINUX

Desktop Software
with Flatpak

Install, Upgrade & Manage Apps from the Red Hat Ecosystem Catalog

CIS126RH | RHEL System Administration 1
Mesa Collunity College

Learning Objectives

1
Understand Flatpak architecture

Learn how Flatpak sandboxes and distributes applications

2
Configure Flatpak remotes

Set up the Red Hat Ecosystem Catalog and other repositories

3
Install and manage applications

Search, install, update, and remove Flatpak apps

4
Manage permissions and security

Control application access to system resources

What is Flatpak?

Flatpak is a framework for distributing desktop applications across Linux distributions in a sandboxed, distribution-agnostic format.

🔒 Sandboxed

Applications run isolated from the system with controlled access to resources

📦 Self-Contained

Includes dependencies, avoiding version conflicts with system libraries

🔄 Universal

Same package works across different Linux distributions

âš¡ Delta Updates

Only downloads changed portions, saving bandwidth

Flatpak Architecture

Flatpak Application
LibreOffice, Firefox, GIMP, etc.
↓ uses ↓
Runtime
org.freedesktop.Platform, org.gnome.Platform
↓ runs on ↓
Host System (RHEL)
Kernel, display server, audio, filesystem
Runtimes provide shared libraries (GTK, Qt, etc.) used by multiple apps, reducing disk usage and ensuring consistency.

Installing Flatpak on RHEL

# Install Flatpak (RHEL 8/9)
sudo dnf install flatpak

# Verify installation
flatpak --version
Flatpak 1.12.8

# Check current remotes
flatpak remotes
Name    Options
rhel    system
✓ RHEL 9: Flatpak is included by default in RHEL 9 workstation installations with the Red Hat remote pre-configured.
System vs User: Flatpak can install apps system-wide (requires sudo) or per-user (in ~/.local/share/flatpak).

Red Hat Ecosystem Catalog

The Red Hat Ecosystem Catalog provides curated, tested Flatpak applications that are supported for use on RHEL systems.

Benefits:

  • Applications tested with RHEL
  • Security updates from Red Hat
  • Enterprise support available
  • Signed packages for integrity

Available Apps Include:

  • LibreOffice productivity suite
  • Firefox web browser
  • GIMP image editor
  • And many more...
# The Red Hat remote is typically pre-configured
flatpak remotes
Name    Options
rhel    system,oci

Managing Remotes

# List configured remotes
flatpak remotes --show-details

# Add Flathub remote (largest third-party repo)
flatpak remote-add --if-not-exists flathub \
  https://dl.flathub.org/repo/flathub.flatpakrepo

# Add remote for current user only
flatpak remote-add --user --if-not-exists flathub \
  https://dl.flathub.org/repo/flathub.flatpakrepo

# Remove a remote
flatpak remote-delete flathub

# Disable a remote temporarily
flatpak remote-modify --disable flathub
âš  Enterprise Note: Third-party remotes like Flathub may not be approved for use in your organization. Always follow your security policies.

Searching for Applications

# Search all configured remotes
flatpak search firefox
Name       Description                        Application ID              
Firefox    Fast, Private & Safe Web Browser   org.mozilla.firefox

# Search with more details
flatpak search --columns=all libreoffice

# List all available apps from a specific remote
flatpak remote-ls rhel --app

# Show app info before installing
flatpak remote-info rhel org.mozilla.firefox
Application IDs: Flatpak uses reverse-DNS naming (e.g., org.mozilla.firefox). You'll need this ID for install/run commands.

Installing Applications

# Install from default remote
flatpak install org.mozilla.firefox

# Install from specific remote
flatpak install rhel org.libreoffice.LibreOffice

# Install without prompts (scripting)
flatpak install -y rhel org.gimp.GIMP

# Install for current user only
flatpak install --user flathub org.videolan.VLC

# Install a specific version/branch
flatpak install rhel org.mozilla.firefox//stable
First Install: The first app you install will also download the required runtime. Subsequent apps using the same runtime won't need to re-download it.

Running Applications

# Run an installed application
flatpak run org.mozilla.firefox

# Run with environment variable
flatpak run --env=GTK_THEME=Adwaita:dark org.gimp.GIMP

# Run specific version
flatpak run org.mozilla.firefox//stable

# Run with additional permissions
flatpak run --filesystem=/media org.videolan.VLC

Desktop Integration:

Flatpak apps appear in your application menu automatically and can be launched like any other app.

Command-Line Launch:

flatpak run is useful for troubleshooting, passing options, or running in scripts.

Updating Applications

# Update all installed applications
flatpak update

# Update a specific application
flatpak update org.mozilla.firefox

# Update without prompts
flatpak update -y

# Check what would be updated (dry run)
flatpak update --no-deploy

# Update user installations only
flatpak update --user
Automatic Updates: GNOME Software can automatically update Flatpak apps. Check Settings → Software Updates for options.
✓ Delta Updates: Flatpak only downloads changed data, making updates fast and bandwidth-efficient.

Managing Installed Apps

# List all installed applications
flatpak list --app
Name          Application ID              Version   Branch  Origin
Firefox       org.mozilla.firefox         120.0     stable  rhel
LibreOffice   org.libreoffice.LibreOffice 7.6.3     stable  rhel

# List installed runtimes too
flatpak list --runtime

# Show detailed info about installed app
flatpak info org.mozilla.firefox

# Show disk usage
flatpak list --app --columns=name,size

# Find unused runtimes
flatpak uninstall --unused

Removing Applications

# Remove an application
flatpak uninstall org.gimp.GIMP

# Remove and delete app data
flatpak uninstall --delete-data org.gimp.GIMP

# Remove without prompts
flatpak uninstall -y org.videolan.VLC

# Remove unused runtimes (cleanup)
flatpak uninstall --unused

# Remove all from a specific remote
flatpak uninstall --all --from=flathub
âš  Data Persistence: By default, uninstall keeps application data (~/.var/app/). Use --delete-data to remove everything.

Permissions & Security

# View app permissions
flatpak info --show-permissions org.mozilla.firefox

# Override permissions (grant filesystem access)
flatpak override --filesystem=/mnt/data org.videolan.VLC

# Override for user only
flatpak override --user --filesystem=home org.gimp.GIMP

# Remove an override
flatpak override --reset org.videolan.VLC

# List current overrides
flatpak override --show org.mozilla.firefox
Common Permissions: --filesystem, --device, --socket, --share=network

Flatpak vs RPM

Aspect Flatpak RPM (dnf)
Sandboxing Yes, by default No (full system access)
Dependencies Bundled in runtimes Shared system libraries
Updates Independent of OS Tied to OS version
Root required Optional (--user) Yes (system packages)
Best for Desktop applications System tools, servers, CLI
Recommendation: Use RPM for system software and CLI tools. Use Flatpak for desktop applications where sandboxing and latest versions are beneficial.

Key Takeaways

1

Flatpak provides sandboxed, distribution-agnostic desktop applications

2

The Red Hat Ecosystem Catalog offers tested, supported apps for RHEL

3

Key commands: search install update list uninstall

4

Use override to manage application permissions and access

Graded Lab

  • Install Firefox and LibreOffice from the Red Hat remote
  • Search for and compare applications across remotes
  • Practice updating and managing installed applications
  • Examine and modify permissions for an installed app
  • Clean up unused runtimes with flatpak uninstall --unused

Next: Accessing Removable Media