Study guide
6.3 Configure Access to Flatpak Repositories
Red Hat Certified System Administrator RHCSA
Track your progress as you read
Finished sections get a check mark.
1 Introduction & Exam Overview
1.1 Current Exam Facts 1.2 Lab Setup & Performance-Based Study Strategy
2 Essential Tools: Shell, Redirection & Text Analysis
2.1 Shell Prompt and Command Syntax 2.2 Input-Output Redirection and Pipes 2.3 grep and Regular Expressions for Text Analysis
3 Essential Tools: Remote Access, Users & Text Editing
3.1 Access Remote Systems Using SSH 3.2 Log In and Switch Users in Multiuser Targets 3.3 Create and Edit Text Files
4 Essential Tools: Files, Links & Archives
4.1 Create, Delete, Copy, and Move Files and Directories 4.2 Hard and Soft Links 4.3 Archive and Compress with tar, gzip, and bzip2
5 Essential Tools: Permissions & System Documentation
5.1 List, Set, and Change Standard ugo/rwx Permissions 5.2 System Documentation: man, info, and /usr/share/doc
6 Manage Software: RPM and Flatpak
6.1 Configure Access to RPM Repositories 6.2 Install and Remove RPM Software Packages 6.3 Configure Access to Flatpak Repositories 6.4 Install and Remove Flatpak Software Packages
7 Create Simple Shell Scripts
7.1 Conditional Execution: if, test, and [] 7.2 Looping Constructs for Files and Input 7.3 Process Script Inputs ($1, $2, and Beyond) 7.4 Process Shell Command Output in Scripts
8 Operate Running Systems: Boot and Recovery
8.1 Boot, Reboot, and Shut Down a System Normally 8.2 Boot Systems into Different Targets Manually 8.3 Interrupt the Boot Process to Gain Access
9 Operate Running Systems: Processes and Tuning
9.1 Identify and Kill CPU/Memory Intensive Processes 9.2 Adjust Process Scheduling 9.3 Manage Tuning Profiles
10 Operate Running Systems: Logs, Services & File Transfer
10.1 Locate and Interpret System Log Files and Journals 10.2 Preserve System Journals 10.3 Start, Stop, and Check Status of Network Services 10.4 Securely Transfer Files Between Systems
11 Configure Local Storage: Partitions and LVM
11.1 List, Create, and Delete Partitions on GPT Disks 11.2 Create and Remove Physical Volumes 11.3 Assign Physical Volumes to Volume Groups 11.4 Create and Delete Logical Volumes
12 Configure Local Storage: Mounting and Expansion
12.1 Mount File Systems at Boot by UUID or Label 12.2 Add Partitions, Logical Volumes, and Swap Non-Destructively
13 Create and Configure File Systems: Local FS and Permissions
13.1 Create, Mount, and Use VFAT, ext4, and XFS File Systems 13.2 Extend Existing Logical Volumes 13.3 Diagnose and Correct File Permission Problems
14 Create and Configure File Systems: NFS and autofs
14.1 Mount and Unmount Network File Systems Using NFS 14.2 Configure autofs
15 Deploy and Maintain: Scheduling, Services & Targets
15.1 Schedule Tasks with at, cron, and systemd Timers 15.2 Start, Stop, and Enable Services at Boot 15.3 Configure Systems to Boot into a Specific Target
16 Deploy and Maintain: Time, Software Updates & Bootloader
16.1 Configure Time Service Clients 16.2 Install and Update Software from CDN, Remote Repos, and Local Files 16.3 Modify the System Bootloader
17 Manage Basic Networking
17.1 Configure IPv4 and IPv6 Addresses 17.2 Configure Hostname Resolution 17.3 Configure Network Services to Start Automatically at Boot 17.4 Restrict Network Access Using firewalld and firewall-cmd
18 Manage Users and Groups
18.1 Create, Delete, and Modify Local User Accounts 18.2 Change Passwords and Adjust Password Aging 18.3 Create, Delete, and Modify Local Groups and Memberships 18.4 Configure Privileged Access
19 Manage Security: Firewall, umask & SSH Keys
19.1 Configure Firewall Settings with firewall-cmd and firewalld 19.2 Manage Default File Permissions 19.3 Configure Key-Based Authentication for SSH
20 Manage Security: SELinux Modes and Contexts
20.1 Set Enforcing and Permissive Modes for SELinux 20.2 List and Identify SELinux File and Process Contexts 20.3 Restore Default File Contexts
21 Manage Security: SELinux Ports and Booleans
21.1 Manage SELinux Port Labels 21.2 Use Boolean Settings to Modify SELinux Settings
6.3 Configure Access to Flatpak Repositories
Key Takeaways Explain This Topic AI
Flatpak is a parallel app distribution system on RHEL 10; remotes (repositories) are configured separately from DNF .repo files.
Use flatpak remote-add, remote-list, remote-delete/modify, and flatpak update to manage remotes; system remotes typically need root.
Remotes can come from .flatpakrepo files, OCI/URL endpoints, or vendor-provided system configuration under /etc/flatpak/.
flathub is a common public remote in many labs; enterprise environments may use Red Hat or custom remotes instead—follow the task.
Remote configuration persists on disk; verify with flatpak remote-list after changes and after reboot in practice.
Last updated: August 2026
6.3 Configure Access to Flatpak Repositories
Quick Answer: Flatpak apps come from remotes (Flatpak repositories), not from /etc/yum.repos.d/ . On RHEL 10, add and verify remotes with flatpak remote-add , flatpak remote-list , and related commands (often with --system and root). Configuration lives under Flatpak’s config directories (including /etc/flatpak/ for system-wide setup) and persists after reboot .
Why Flatpak appears on EX200
Red Hat’s current EX200 study points under Manage software explicitly include configuring access to Flatpak repositories and installing/removing Flatpak software . This is not optional trivia. RHEL 10 environments use Flatpak for many desktop and sandboxed applications while RPM/DNF remains the system package source for OS components.
Mental model:
- System Manager Sources Typical content
- OS packages DNF + RPM /etc/yum.repos.d/*.repo kernel, httpd, firewalld, libraries
- Flatpak apps flatpak remotes (e.g. Flathub, vendor) sandboxed GUI/apps, runtimes
You cannot dnf install a Flatpak application id, and you cannot flatpak install an RPM name interchangeably. Match the tool to the packaging system the task specifies.
Core concepts: remotes, apps, runtimes
Remote: a named repository endpoint Flatpak can search and pull from (similar in spirit to a DNF repo).
Application: a Flatpak app with an ID like org.videolan.VLC .
Runtime: a shared base filesystem stack apps depend on (for example a GNOME or Freedesktop runtime). Installing an app often pulls a runtime automatically when the remote provides it.
Configuring access means the remote is defined, reachable, and listed— before you worry about which app to install (Section 6.4).
Prerequisites rpm -q flatpak
# if missing and repos work:
sudo dnf install flatpak
Flatpak itself is an RPM-delivered tool. If flatpak is absent, install it with DNF first—an easy two-step task pattern on performance exams.
- Listing remotes flatpak remote-list
- flatpak remote-list --show-details
- flatpak remotes # synonym-style listing on many versions
Output columns typically include remote name , options (such as system/user), and sometimes title/URL. Empty output means no remotes —installs will fail until you add one.
- Distinguish scopes: flatpak remote-list --system
- flatpak remote-list --user
System remotes apply machine-wide (usually require root to change).
User remotes apply to one account under that user’s Flatpak config.
EX200-style tasks that say “configure the system” almost always mean system remotes. Prefer: sudo flatpak remote-add --if-not-exists --system ...
- Adding a remote
- From a .flatpakrepo file (very common)
Vendors and Flathub distribute a small INI-style .flatpakrepo describing the remote: # Example: add Flathub as a system remote (URL used widely in docs/labs)
sudo flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo
- # From a local file the exam provides
- sudo flatpak remote-add --if-not-exists training /path/to/training.flatpakrepo
--if-not-exists prevents errors when the remote name is already defined—handy for idempotent scripts and re-runs.
From an explicit URL / OCI-style source
Depending on the remote type supported by your Flatpak build and the task instructions, you may add remotes pointing at specific repository URLs (including enterprise or OCI-distributed content). Always copy the exact URL and remote name from the exam task rather than inventing Flathub if the scenario provides a corporate remote. sudo flatpak remote-add --if-not-exists mycompany https://flatpaks.example.lab/repo/mycompany.flatpakrepo
Useful remote-add options
- Option Purpose
- -system System-wide remote (default often system when run as root—confirm with remote-list )
- -user Per-user remote
- -if-not-exists No failure if name exists
- -disabled Add but leave disabled until needed
- -title=NAME Human-readable title
--gpg-import=FILE Trust setup when the task provides a key sudo flatpak remote-add --if-not-exists --disabled staging https://example.lab/staging.flatpakrepo
- sudo flatpak remote-modify --enable staging
- Inspecting and modifying remotes flatpak remote-list --show-details
- flatpak remote-info flathub # when supported/needed
- sudo flatpak remote-modify --enable flathub
- sudo flatpak remote-modify --disable flathub
- sudo flatpak remote-delete flathub # remove remote definition
Deleting a remote does not always delete already-installed applications, but it prevents updates/searches from that source—know which the task wants.
Configuration locations (persistence)
Flatpak stores remote configuration on disk so it survives reboot :
- Location (typical) Role
- /etc/flatpak/remotes.d/ Drop-in .flatpakrepo files for system remotes (distribution/enterprise pattern)
- System Flatpak config/repo under /var/lib/flatpak/ System installations and remote metadata
- ~/.local/share/flatpak/ User-scope remotes and apps
You do not need to hand-edit these on every task—the CLI is preferred—but if a task drops a file into /etc/flatpak/remotes.d/ , understand that is a valid system configuration path . After adding files manually, run flatpak remote-list and, if needed, a repair/refresh workflow the man page describes for your version.
- Persistence check: flatpak remote-list
- # reboot in the lab
- flatpak remote-list # same remotes should appear
- Network and trust considerations
Remotes need network access unless the task uses a local/offline repo mirror.
Corporate exams may use internal HTTPS with custom CAs—follow provided instructions for trust.
Do not confuse RPM GPG keys ( rpm --import ) with Flatpak remote trust; they are separate ecosystems.
Firewall tasks elsewhere in the exam can block outbound access and make remote-add or update fail—if metadata download fails, verify network basics.
Verification workflow for “configure Flatpak repository access”
Ensure flatpak RPM is installed.
Add the remote with the exact name the task specifies (names matter for later flatpak install remote appid forms).
flatpak remote-list shows the remote (system scope if required).
Optionally refresh: flatpak update or search (Section 6.4) to prove metadata pulls.
- Confirm still present after reboot in practice labs. rpm -q flatpak
- sudo flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo
- flatpak remote-list --system
- Exam traps
Adding a user remote when the task requires system-wide availability — use sudo and --system , verify with remote-list --system .
Assuming DNF repos cover Flatpak apps — separate system.
Wrong remote name — later install lines like flatpak install flathub org.example.App fail if you named it Flathub vs flathub inconsistently (names are case-sensitive identifiers you chose).
No network / wrong URL — remote exists but cannot fetch; fix URL or connectivity.
Forgetting Flatpak is not installed — install the RPM first.
Disabling the remote and leaving it disabled when the task expects active access.
How this differs from Section 6.1 (RPM repos)
- Concern RPM/DNF Flatpak
- Config files /etc/yum.repos.d/*.repo remotes via CLI; /etc/flatpak/ & libflatpak dirs
- Enable flag enabled=0/1 in .repo remote-modify --enable/--disable
- List sources dnf repolist flatpak remote-list
- Primary consumer dnf install flatpak install
Master both; EX200 grades both.
Section checkpoint
You should install Flatpak if needed, add a system remote from a .flatpakrepo or task URL, list and optionally enable/disable remotes, know that configuration is on-disk and reboot-safe, and avoid confusing Flatpak remotes with DNF repositories. Next, install and remove applications from those remotes.