Configuration
Main config file
Rum reads its main configuration from /etc/rum/rum.conf, an INI style file with a [main] section, using the same option names as dnf's own dnf.conf. Any option rum doesn't recognize is silently ignored, so a config file shared with dnf tooling works fine.
Commonly used options include cachedir, reposdir, keepcache, assumeyes, gpgcheck, best, exclude, includepkgs, metadata_expire, retries, timeout, minrate, max_parallel_downloads, skip_if_unavailable, clean_requirements_on_remove, installroot, protected_packages, installonlypkgs, installonly_limit, install_weak_deps, skip_broken, multilib_policy, obsoletes, proxy, fastestmirror, and protect_running_kernel.
Settings apply in this order of priority, from highest to lowest: command line flags, then rum.conf, then rum's built in defaults. You can point rum at a different config file with --config <path>.
Repository files
Repositories are defined in /etc/yum.repos.d/*.repo, using the standard yum and dnf .repo format. You can change where rum looks for these with --repo-dir <path>.
Global flags
These flags work across almost every rum command:
-y, --assumeyes, answer yes to every prompt.--assumeno, answer no to every prompt.-q, --quiet, suppress non essential output.-x, --exclude <name>, exclude a package by name or glob, can be repeated.-C, --cacheonly, never touch the network, use cached metadata only.--refresh, force a metadata refresh, ignoringmetadata_expire.--repo, --repoid <id>, restrict to specific repos, can be repeated.--enablerepoand--disablerepo, enable or disable repos for this run only.--no-gpgchecks, skip GPG verification entirely.--setopt KEY=VALUE, dnf style config override, in practice onlytsflags=noscriptsis actually honored, everything else is accepted for compatibility and ignored.--allowerasing, allow removing conflicting or obsoleted packages to complete a transaction.--best, require the newest available version rather than silently falling back.--skip-unavailable, drop names that can't be matched instead of failing the whole install.--repofrompath name,baseurl, add an ad hoc repository for this run only, can be repeated.--no-autoremove, don't sweep orphaned dependencies after a remove.--installroot <path>, operate against an alternate root, used for image builds and testing.--no-recommends, skip weak dependencies for this run.--skip-broken, drop unresolvable names from an install set instead of failing entirely.--multilib-all, install every architecture build side by side.--forcearch <arch>, resolve and download for a different architecture than the host.--from-repo <id>and--from-vendor <vendor>, restrict candidate packages by repo or vendor.--downloadonly, resolve and download without applying the transaction.--destdir <path>, where to write RPMs when using--downloadonly.--allow-downgradeand--no-allow-downgrade, permit or forbid the resolver from downgrading packages.
Most commands that change your system need root, unless you're using --installroot or --dry-run.