LinuxCommandLibrary

distrobox-upgrade

Upgrade software packages within a Distrobox container

TLDR

Upgrade a container using the container's native package manager

$ distrobox-upgrade [container_name]
copy

Upgrade all containers using the container's native package managers
$ distrobox-upgrade [[-a|--all]]
copy

Upgrade specific containers via the container's native package manager
$ distrobox-upgrade [container1 container2 ...]
copy

SYNOPSIS

distrobox-upgrade [OPTIONS] CONTAINER

PARAMETERS

-h, --help
    Print help menu and exit

-q, --quiet
    Reduce output verbosity

-v, --verbose
    Increase output verbosity

-r, --root
    Use rootful container instead of user namespace

--dry-run
    Simulate upgrade without executing changes

-y, --assume-yes
    Automatically answer 'yes' to prompts

--prebuilt-file FILE
    Path to JSON file for prebuilt app exports post-upgrade

CONTAINER
    Name of the Distrobox container to upgrade (required)

DESCRIPTION

Distrobox is a tool for creating and managing lightweight, disposable containers running different Linux distributions on your host system, leveraging Podman or Docker under the hood.

The distrobox-upgrade command specifically updates the software packages inside a named Distrobox container. It automatically detects the container's distribution (e.g., Ubuntu, Fedora, Arch) and invokes the appropriate package manager: apt upgrade for Debian-based, dnf upgrade for RPM-based, pacman -Syu for Arch, and so on.

This keeps container apps current without altering the host OS, enabling seamless integration where container apps appear as native host applications via export features. The upgrade runs in the container's environment, preserving isolation. Users can upgrade interactively or non-interactively, with options for dry runs or rootful execution.

Ideal for developers testing software across distros or maintaining isolated environments for legacy apps. Requires a pre-existing container from distrobox-create. Supports user namespaces by default for rootless operation.

CAVEATS

Container must exist via distrobox-create; upgrade may require container to be stopped for some distros; large upgrades consume significant bandwidth/disk; rootful mode needs elevated privileges.

EXAMPLE

distrobox-upgrade ubuntu-22.04
Upgrades Ubuntu 22.04 container interactively.

distrobox-upgrade --dry-run -y fedora
Simulates non-interactive upgrade on 'fedora' container.

HISTORY

Distrobox launched in 2021 by Luca Wehrlin (89luca89) as an evolution of tools like toolbox and podman-desktop. The upgrade subcommand added in early versions (v1.2+) to streamline maintenance, gaining popularity in Fedora Silverblue/SteamOS/atomic distro communities for immutable OS workflows.

SEE ALSO

Copied to clipboard