Chapter 3. Installing content from Application Stream

The following sections describe how to install content from Application Stream in Red Hat Enterprise Linux 8.

3.1. Installing a package

This section describes how to install packages from Application Stream.

Prerequisites

  • Name of the package must be known

Procedure

  • Install the package:

    # yum install package
    • If the package is not provided by any module, this procedure is identical to the procedure used on previous versions of Red Hat Enterprise Linux.
    • If the package is provided by a module stream marked as default, the yum tool automatically transparently enables that module stream before installing this package.
    • If the package is provided by a module stream not marked as default, it is not recognized until you manually enable the respective module stream.

3.2. Installing a module

This section describes using a module to install the recommended set of packages from that module.

Procedure

  • Install a module with a selected stream and in a chosen profile:

    # yum install @module-name:stream/profile

    This installs the recommended set of packages for a given stream (version) and profile (purpose) of the module.

    Omit /profile to use the default profiles. Additionally, omit :stream to use the default stream.

3.3. Running installed content

Usually, after you install content from the Application Stream, new commands will be enabled. If the commands originated from a RPM package or RPM packages enabled by a module the experience of using the command should be no different. To run the new commands use them directly:

$ command

3.4. Example: Installing a non-default stream of an application

This example shows how to install an application from a non-default stream (version).

More specifically, this example shows how to install the PostgreSQL server (package postgresql-server) in version 9.6, while the default stream provides version 10.

Procedure

  1. List modules that provide the postgresql-server package to see what streams are available:

    $ yum module list postgresql
    Name              Stream       Profiles                  Summary
    postgresql        10 [d]       client, default [d]       postgresql module
    postgresql        9.6          client, default [d]       postgresql module
    
    Hint: [d]efault, [e]nabled, [x]disabled, [i]nstalled

    The output shows that the postgresql module is available with streams 10 and 9.6. The default stream is 10.

  2. Install the packages provided by the postgresql module in stream 9.6:

    # yum install @postgresql:9.6
    Dependencies resolved.
    ================================================================================
     Package             Arch     Version                       Repository     Size
    ================================================================================
    Installing group/module packages:
     postgresql-server   x86_64   9.6.10-1.el8+1547+210b7007    appstream-8   5.0 M
    Installing dependencies:
     libpq               x86_64   10.5-1.el8                    appstream-8   188 k
     postgresql          x86_64   9.6.10-1.el8+1547+210b7007    appstream-8   1.4 M
    Installing module profiles:
     postgresql/default
    Enabling module streams:
     postgresql                   9.6
    
    Transaction Summary
    ================================================================================
    Install  3 Packages
    
    Total download size: 6.6 M
    Installed size: 27 M
    Is this ok [y/N]: y
    (...)
    Complete!

    Because the installation profile was not specified, the default profile was used.

  3. Verify the installed version of PostgreSQL:

    $ postgres --version
    postgres (PostgreSQL) 9.6.8

3.5. Commands for installing content from Application Stream

This section lists commonly used commands for installing content from Application Stream.

Command list

Install a package
# yum install package

If the package is provided by a module stream, yum resolves the required module stream, and enables it automatically while installing this package. This happens recursively for all package dependencies, too. If more module streams satisfy the requirement, the default ones are used.

Enable a module using its default stream
# yum module enable module-name

Enable the module when you wish to make the packages available to the system but do not, at this time, wish to install any of them.

Some modules may not define default streams. In such case, you must explicitly specify the stream.

Enable a module using a specific stream
# yum module enable module-name:stream

If the module defines a default stream, you can omit the stream and colon.

Install a module using the default stream and profiles
# yum install @module-name

Alternatively:

# yum module install module-name
Caution

Some modules do not define default streams.

Install a module using a specific stream and default profiles
# yum install @module-name:stream

Alternatively:

# yum module install module-name:stream
Install a module using a specific stream and profile
# yum install @module-name:stream/profile

Alternatively:

# yum module install module-name:stream/profile