LOGBOOK

HELP

Quiz Entry - updated: 2026.07.14

What are Application Streams (Modules) in RHEL, and what problem do they solve?

Modules (Application Streams) let RHEL offer multiple versions of the same software in parallel — so you can install, say, Node.js 18 for one app and Node.js 20 for another from the same OS.

Traditional packaging gives you one version of a program per OS release. But real systems need different versions side by side — one app pinned to Python 3.9, another needing 3.11. Application Streams solve this by versioning software independently of the base OS. The vocabulary:

  • Module — a component as a set of RPMs (e.g. nodejs, python).
  • Stream — a specific version line of that module (e.g. nodejs:18, nodejs:20).
  • Profile — a preset package selection for a use case (minimal, common, devel).
Command Purpose
dnf module list List available modules
dnf module list nodejs Show that module's streams
dnf module enable nodejs:20 Choose a stream
dnf module install nodejs:20/common Install a stream with a profile
dnf module list nodejs       # nodejs 18 common; nodejs 20 common
dnf module install nodejs:20

The key constraint: only one stream per module can be enabled at a time on a given system. So Streams let different machines (or containers) standardize on different versions cleanly — you pick the version line per host, and the OS keeps it consistent.

Go deeper:

From Quiz: LIOS / Archiving and Software Packages | Updated: Jul 14, 2026