fedora-third-party(1)

๐Ÿ“ฆ version 0.10, in fedora 43, fedora 44

๐Ÿ’– fedora-third-party(1) โ€” the girlies' guide to third-party repos ๐Ÿ’–

okay bestie, sit down, hydrate, because today we're talking about fedora-third-party, a General Commands Manual page, and it's genuinely one of the most useful little tools in the Fedora ecosystem. no cap. ๐Ÿซถ

It's the tool for managing third-party software repositories that ship with editions of Fedora Linux โ€” but here's the tea: they are not enabled unless you, the user, opt in. consent queen behavior honestly. ๐Ÿ‘‘


โœจ NAME โœจ

fedora-third-party โ€” manage third-party software repositories


โœจ SYNOPOSIS โœจ

(and yes we're spelling it exactly like the original did, iconic typo, we stan ๐ŸŽ€)

fedora-third-party [--verbose | -v] COMMAND [ARGS]

โœจ DESCRIPTION โœจ

So the fedora-third-party tool is what you use to manage third-party software repositories distributed with editions of Fedora Linux. They're justโ€ฆ sitting there. Waiting. Not enabled, because the user has to opt in first. It's giving "we're not gonna do anything without your explicit yes" and honestly, we love that for us. ๐Ÿ’…


โœจ COMMON OPTIONS โœจ

These are the options that everyone understands, fr fr:

  • --verbose, v โ€” prints detailed information about what is being done. she's chatty. she's telling you everything. love that journey for her. ๐Ÿ—ฃ๏ธโœจ

โœจ COMMANDS โœจ

These are the commands the tool understands:

๐ŸŒธ enable [--config-only]

Enables third-party repositories. Here's the breakdown, bestie:

  • Configured DNF repositories get enabled.
  • Configured Flatpak remotes get created โ€” unless they already exist, in which case, we leave them alone. no duplicates here. ๐Ÿ™…โ€โ™€๏ธ

If --config-only is specified, existing repositories are not modified, but the configuration is updated so that newly added repositories will be enabled when fedora-third-party refresh is called. it's the "don't touch the past, prep the future" pipeline. ๐Ÿ”ฎ

๐ŸŒธ disable [--config-only]

Disables third-party repositories. Configured DNF repositories get disabled. Configured Flatpak remotes get disabled, unless:

  • the remote previously existed and was not created by fedora-third-party.
  • the remote has been modified to remove a filter and the keep_unfiltered flag is configured for the remote.

The last exception exists because โ€” okay here's the lore ๐Ÿ“– โ€” if a Fedora third-party repository has a filter (see flatpak-remote-add(1)), that filter will be removed if the user installs a .flatpakrepo file for the same remote name without a filter. At this point, the remote is different from what was distributed with the Fedora edition, and it should be left untouched. she's not the same girl anymore, we don't touch her. ๐Ÿ’…

If --config-only is specified, existing repositories are not modified, but the configuration is updated so that newly added repositories will not be enabled when fedora-third-party refresh is called.

๐ŸŒธ query [--quiet | -q]

Prints a human-readable string describing whether third-party repositories have been enabled. (the original says "hae been enabled" and honestly? same energy. typos are valid. ๐Ÿ“)

When --quiet is specified, no output is printed, and the status is given by the exit code:

  • 0 for enabled
  • 1 for disabled
  • 2 for disabled if no selection has yet been made

silent but deadly. she says nothing and yet you know everything. ๐Ÿ’€

๐ŸŒธ refresh

Looks for newly added third-party repository definitions, and if third-party repositories are enabled, enables DNF repositories and creates Flatpak remotes. it's the little cleanup bestie that keeps everything in sync. ๐Ÿงšโœจ

๐ŸŒธ list [-a | --all | --csv | --columns=col1,col2]

Prints the list of currently configured repositories. By default, the list gets pretty-printed in tabular form with headers. The --csv option switches the output to comma-separated-value format without headers. choose your fighter. ๐ŸฅŠ

The columns to be printed can be specified with the --columns option. Currently supported values are:

  • name โ€” for the name of the repository (which is the same as the DNF repository name or Flatpak remote name)
  • type โ€” for the type of the repository (either dnf or flatpak)
--columns should always be specified together with --csv to get stable output โ€” the default set of columns may change. With the current columns, you can assume that the values will not be quoted.

Flatpak repositories with the keep_unfiltered option set are hidden by default from the list if there is a matching remote without a filter. a or --all can be passed to show all repositories. she's shy by default but she'll show you everything if you ask nicely. ๐Ÿ™ˆ


โœจ CONFIGURATION โœจ

Repositories are configured by files in /usr/lib/fedora-third-party/conf.d. All files in this directory ending with .conf are read. Each section found defines a repository that should be controlled by fedora-third-party. periodt. ๐Ÿ‘‘

Example of configuration for a DNF repository:

[somerepo]
# The DNF repository must match and also be 'somerepo'
type=dnf

Example of configuration for a Flatpak remote:

[somerepo]
# The Flatpak remote must match and also be 'somerepo'
type=flatpak

# Path to a flatpakrepo file defining the remote. If it's a relative
# path, it will be interpreted relative to the directory where the
# config file is.
flatpakrepo=somerepo.flatpakrepo
# If present, 'fedora-third-party disable' will leave this repository
# untouched if it has been modified to not have a filter, and it will
# also be hidden from the output of 'fedora-third-party list'
keep_unfiltered=yes

โœจ FILES โœจ

  • /usr/lib/fedora-third-party/conf.d โ€” repository configuration files
  • /var/lib/fedora-third-party/state โ€” current state is stored in this file.

โœจ SEE ALSO โœจ

dnf.conf(5), flatpak(1)


and that's the whole page, bestie!! ๐ŸŽ€โœจ this was fedora-third-party(1) from the General Commands Manual โ€” go forth, opt in responsibly, and never touch a remote that's been modified to drop its filter. mwah. ๐Ÿ’–๐Ÿฆ‹๐ŸŒธ

๐Ÿ“ฆ where this page comes from