Managing Software
These are the commands you'll use most often, installing, removing, and keeping packages up to date.
install
Resolves and installs one or more packages. Aliases: in, pour. Use --dry-run to resolve and validate without actually installing anything. You can also install a whole comps group with @group-id syntax.
sudo rum install <package-name>
remove
Removes packages by name or glob. Aliases: rm, erase. Rum refuses to remove your currently running kernel, and won't remove anything listed in protected_packages. After removing, rum sweeps up any packages that were only installed as dependencies and are now orphaned, unless you pass --no-autoremove.
sudo rum remove <package-name>
upgrade
Upgrades installed packages to the newest available version. Aliases: up, update. In Split mode this always acts on overlay packages only, base image packages are reported rather than layered. You can filter by advisory with --advisory <id>, or by type with --security, --bugfix, --enhancement, or --advisory-severity <level>.
sudo rum upgrade
reinstall
Reinstalls a package at its exact current version, alias rei. You can also point it at a local .rpm file, which installs it directly without going through repo resolution.
downgrade
Downgrades a package to the newest available version older than what's installed, alias dg.
distro-sync
Forces installed packages to exactly match the best available repo version, moving them up or down as needed. Aliases: dsync, distrosync. Run it with no package names to sync everything.
autoremove
Removes overlay packages that were only pulled in as dependencies and are no longer needed by anything else. Supports --dry-run to preview what would be removed, which is the same list you'd see from rum list --autoremove.
swap
Removes one package and installs another as a pair, approximating an atomic replace.
sudo rum swap <remove-package> <install-package>
mark
Changes how a package is tracked for autoremove purposes, without installing or removing anything. rum mark install <pkgs> marks packages as explicitly user installed, so autoremove will never touch them. rum mark dependency <pkgs> marks them as dependency installed, making them eligible for autoremove.
check
Validates the installed package set for problems. --dependencies checks for unmet requirements and installed conflicts, --duplicates checks for multiple versions of the same package and architecture installed at once, and --obsoleted checks for packages obsoleted by something else. Run with no flags to check all three.
system-upgrade
Handles major version upgrades, and its behavior depends on your system. On a plain host, this is the classic offline upgrade flow, staging an upgrade with rum system-upgrade download --releasever=<version>, then applying it on the next boot with rum system-upgrade reboot. Other subcommands are clean, log, and status. On a RakuOS overlay system, running it plainly does a normal overlay upgrade and then checks whether a new base image is available, the download and reboot flow is specific to plain hosts.