Update Docs.

Signed-off-by: Hadi Chokr <hadichokr@icloud.com>
This commit is contained in:
Hadi Chokr 2025-07-28 16:56:46 +02:00
parent e0568a6919
commit fc77ef4240
1 changed files with 40 additions and 38 deletions

View File

@ -1,61 +1,63 @@
% toolbox-upgrade 1 % toolbox-upgrade(1)
## NAME ## NAME
toolbox\-upgrade - Upgrade packages in Toolbx containers toolbox-upgrade - Upgrade packages in Toolbx containers
## SYNOPSIS ## SYNOPSIS
**toolbox upgrade** [*--all* | *-a*] [*--container* | *-c* *CONTAINER*] **toolbox upgrade** [*--all* | *-a*] [*--container* | *-c* *CONTAINER*] [*CONTAINER*]
## DESCRIPTION ## DESCRIPTION
Upgrades packages inside one or more Toolbx containers by automatically detecting Upgrades packages inside one or more Toolbx containers. The container must have been created using `toolbox create` and must include a label specifying how to upgrade its packages.
the package manager (dnf, apt, pacman, etc.) and running the appropriate upgrade
command. The container should have been created using the `toolbox create` command.
This command will: This command will:
1. Detect the available package manager in the container 1. Read the container's metadata label `com.github.containers.toolbox.package-manager.update`
2. Run the appropriate update/upgrade commands 2. Run the specified upgrade command inside the container
3. Report any errors that occur during the process 3. Report any errors that occur during the process
## OPTIONS The `--container` flag is optional when a positional container name is given.
**--all, -a**
Upgrade all Toolbx containers. Cannot be used with *--container*.
**--container, -c** *CONTAINER* ## LABEL REQUIREMENT
Upgrade a specific Toolbx container. Cannot be used with *--all*. Each container **must** have the following OCI label set in its metadata:
`com.github.containers.toolbox.package-manager.update="COMMAND"`
This label defines the exact package upgrade command to run inside the container. For example:
`com.github.containers.toolbox.package-manager.update="sudo dnf --assumeyes update"`
This label is typically the responsibility of the **image publisher** and should be present at container creation.
## OPTIONS
**--all, -a**
Upgrade all Toolbx containers. Cannot be used with *--container* or a positional argument.
**--container, -c** *CONTAINER*
Upgrade a specific Toolbx container. Optional when a positional container name is provided.
## EXAMPLES ## EXAMPLES
**Upgrade packages in a specific container:**
``` **Upgrade a specific container (positional):**
$ toolbox upgrade fedora-toolbox-38
**Upgrade a specific container (flag):**
$ toolbox upgrade --container fedora-toolbox-38 $ toolbox upgrade --container fedora-toolbox-38
```
**Upgrade packages in all containers:**
``` **Upgrade all containers:**
$ toolbox upgrade --all $ toolbox upgrade --all
```
**Typical output:**
```
Detected package manager: dnf
Updating metadata...
Upgrading packages...
Complete!
```
## NOTES ## NOTES
Supported package managers:
- dnf (Fedora, RHEL) - This command doesn't perform package manager detection itself.
- microdnf (Minimal Fedora/RHEL) - It relies entirely on the container image to define the correct update mechanism.
- yum (Older RHEL/Fedora) - The `package-manager.update` label **must be set**; otherwise, the upgrade will fail.
- apt (Debian, Ubuntu)
- pacman (Arch Linux)
- xbps (Void Linux)
- zypper (openSUSE)
- apk (Alpine Linux)
- emerge (Gentoo)
- slackpkg (Slackware)
- swupd (Clear Linux)
## SEE ALSO ## SEE ALSO
`toolbox(1)`, `toolbox-create(1)`, `toolbox-list(1)` `toolbox(1)`, `toolbox-create(1)`, `toolbox-list(1)`