Product SiteDocumentation Site

5.2.2. Finding Packages with Filters

You can view the list of all configured and unfiltered (see below) Yum repositories by opening Add/Remove Software and clicking SystemSoftware Sources. Once the software sources have been updated, it is often beneficial to apply some filters so that PackageKit retrieves the results of our Find queries faster. This is especially helpful when performing many package searches. Four of the filters in the Filters drop-down menu are used to split results by matching or not matching a single criterion. By default when PackageKit starts, these filters are all unapplied (No Filter), but once you do filter by one of them, that filter remains set until you either change it or close PackageKit.
Because you are usually searching for available packages that are not installed on the system, click FiltersInstalled and select the Only Available radio button.
Filtering out already-installed packages
filtering out packages which are already installed
Figure 5.5. Filtering out already-installed packages

Also, unless we require development files such as C header files, we can filter for Only End User Files and, in doing so, filter out all of the package_name-devel packages we are not interested in.
Filtering out development packages from the list of Find results
filtering out development packages from our results
Figure 5.6. Filtering out development packages from the list of Find results

The two remaining filters with submenus are:
Narrows the search to either applications which provide a GUI interface (Only Graphical) or those that do not. This filter is useful when browsing for GUI applications that perform a specific function.
Search for packages which are considered to be free software Refer to the Fedora Licensing List for details on approved licenses.
The remaining checkbox filters are always either checked or unchecked. They are:
Hide Subpackages
Checking the Hide Subpackages checkbox filters out generally-uninteresting packages that are typically only dependencies of other packages that we want. For example, checking Hide Subpackages and searching for package would cause the following related packages to be filtered out of the Find results (if it exists):
  • package-devel
  • package-libs
  • package-libs-devel
  • package-debuginfo
Only Newest Packages
Checking Only Newest Packages filters out all older versions of the same package from the list of results, which is generally what we want.

Using the Only Newest Packages filter

Checking Only Newest Packages filters out all but the most recent version of any package from the results list. This filter is often combined with the Only Available filter to search for the latest available versions of new (not installed) packages.
Only native packages
Checking the Only Native Packages box on a multilib system causes PackageKit to omit listing results for packages compiled for the architecture that runs in compatibility mode. For example, enabling this filter on a 64-bit system with an AMD64 CPU would cause all packages built for the 32-bit x86 CPU architecture not to be shown in the list of results, even though those packages are able to run on an AMD64 machine. Packages which are architecture-agnostic (i.e. noarch packages such as crontabs-1.10-32.1.el6.noarch.rpm) are never filtered out by checking Only Native Packages. This filter has no affect on non-multilib systems, such as x86 machines.