Migrate from yay to OMG on Arch Linux

Map yay commands to OMG, understand the Bubblewrap build sandbox and security approval rules, and migrate safely while keeping pacman and yay installed.

Migrating from yay to OMG on Arch Linux

If you have been using yay as your primary pacman wrapper and AUR helper, OMG offers package commands alongside runtime management. On Arch, it uses `libalpm` and defaults to an unprivileged Bubblewrap build sandbox using Linux namespaces and mounts.

OMG is not a 1:1 clone of every yay flag. Its default AUR build method uses Bubblewrap, and exceptional package permissions require attended confirmation. An unsafe native build method requires an explicit configuration change. Keep `pacman` and `yay` installed while validating your workflows.

Command mapping reference

yay commands mapped to OMG equivalents

yay commandOMG equivalent and behavior
yay -Ss <query>omg search <query> (searches both official Arch repositories and the AUR; pass --no-aur for official only).
yay -Si <pkg>omg info <pkg> (displays comprehensive package and repository metadata).
yay -S <pkg>omg install <pkg> (resolves official packages and AUR recipes, presenting diff review and sandboxed build).
yay -S --noconfirmomg install -y (skips standard confirmation prompts, but preserves attended approval for privileged hooks).
yay -R <pkg>omg remove <pkg> (reviews removal plan and package reverse-dependencies before confirmation).
yay -Rns <pkg>omg remove --recursive <pkg> (removes target package and unneeded cascade dependencies).
yay -Syuomg update (synchronizes repositories and upgrades official packages and AUR software).
yay -Suaomg update --aur-only (upgrades installed AUR packages while leaving official packages untouched).
yay -Syomg sync (refreshes repository sync databases without triggering an upgrade).
yay -Quomg outdated (lists packages with newer versions available in repos or the AUR).
yay -Qeomg explicit (lists explicitly installed user packages without dependencies).
yay -Qtdomg clean --orphans --dry-run (previews orphan cleanup without removing packages). Use omg clean --orphans only when you intend to remove them.
yay -Scomg clean --cache (cleans cached package archives and build directories).

Previewing mutations safely with dry-run flags

Before changing packages, use OMG’s dry-run and check flags to preview the proposed operation. A preview cannot predict every build-script effect or package-manager decision:

Preview package mutations

omg install --dry-run <package>
omg remove --dry-run <package>
omg update --check
omg clean --dry-run --all

Key security and workflow differences

  1. Always run OMG as your regular unprivileged user account. sudo omg is deprecated; OMG elevates via sudo only for the validated package transaction.

  2. By default, AUR builds execute inside an isolated Bubblewrap sandbox with read-only system mounts and no access to your home directory or SSH keys. Unsafe native builds are an explicit opt-in.

  3. Packages containing install scripts (.INSTALL), setuid/setgid files, or Linux file capabilities trigger an attended confirmation gate that cannot be bypassed with -y.

  4. Interactive number menus from yay are replaced with OMG’s arrow-key interactive package picker (running bare omg install).

What you gain beyond yay

OMG also manages project runtimes and developer tools, runs supported project tasks, and captures package names and selected runtime versions in a file you can check for drift:

Unified development workflows

omg use node 22
omg tool install ripgrep
omg tool install starship
omg run test
omg env capture
omg env check

Sources and verification

Commands and behavior are based on the references below. Source review is not a claim that every workflow has been executed on every supported platform.

Read as Markdown