Skip to content
Search RunEntLinux

Searches general documentation on RunEntLinux. Each distribution has its own documentation search.

    Browse this documentation

    EL 8: BaseOS and AppStream

    EL 8 redesigned the distribution’s repository layout: one “system” repository, BaseOS, plus one “application” repository, AppStream. The goal of the split is to keep the core system on its ten-year stability promise while letting application components update faster — even several major versions in parallel. Module streams were born inside AppStream, and retired in EL 10.

    • BaseOS: kernel, systemd, glibc, base tools — the operating system proper. Its lifecycle matches the release (10 years), with security and bug fixes only.
    • AppStream: language runtimes, databases, web servers, and other application components, offered in two forms:
      • plain RPM packages (most software);
      • module streams: several major versions of one piece of software in parallel (such as postgresql:10 / postgresql:13), selected with dnf module enable.

    User-visible changes: dnf repolist shows two main repositories; images and Kickstart files must enable both; and “before installing, think whether you need to enable a module” became daily life in the EL 8/9 era.

    ItemEL 7EL 8
    Repository layoutsingle main repositoryBaseOS + AppStream
    Multiple app versionsvia SCL (separate install)AppStream module streams (built in)
    Version-selection commandnonednf module list/enable
    Core-system update promisemixedBaseOS on its own long cycle
    • Images / Kickstart / offline mirrors: mirroring only BaseOS leads to “the OS installed fine but nginx will not”; offline repositories must sync both.
    • Multi-version needs: module streams on EL 8/9; after modularity retires on EL 10, versioned packages and third-party repositories take over (see EL 10: Module streams retired).
    • Lifecycle awareness: some AppStream components have lifecycles shorter than the release itself (certain runtimes are supported only up to some minor release); check the component lifecycle, not just the release’s.
    Inspect repositories and modules
    dnf repolist
    dnf module list
    dnf module list postgresql
    Enable a module stream and install (EL 8/9)
    sudo dnf module enable postgresql:13
    sudo dnf install postgresql-server