apk-add - Man Page

add packages to world and commit changes


apk add [<options>...] packages...


apk add adds the requested packages to world and installs (or upgrades) them if not already present, ensuring all dependencies are met.

To upgrade individual packages without modifying world use apk-fix(8).

By default apk tries to select a set of packages so that all dependencies are satisfied. This means that some packages can be held back in an older version if there is direct or implicit dependencies to the older version.


apk add supports the commit options described in apk(8), as well as the following options:


Initialize a new package database.

-l,  --latest

Always choose the latest package by version. However, the versions considered are based on the package pinning. Primarily this overrides the default heuristic and will cause an error to displayed if all dependencies cannot be satisfied.

-u,  --upgrade

Upgrade packages and it's dependencies. Normally apk add will avoid changing installed package unless it is required by the newly added packages or their dependencies. This changes the default preference to upgrading the package to the latest installable version.

-t,  --virtual NAME

Create virtual package NAME with given dependencies. This new package will get the packages as dependencies instead of world. Finally the NAME is added to world.

One can use this to ensure that selected set of packages are installed, and later the temporary modification be undone with apk-del(8) NAME without removing packages that were installed earlier.


Do not change file owner or group. By default apk will manage the file ownership when running as root. However, this option is turned on when running as non-root user, as changing file ownership is not permitted by the system then.

Referenced By