Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

emerge: add --quickpkg-direct option #479

Merged
merged 1 commit into from
Nov 27, 2019

Conversation

zmedico
Copy link
Member

@zmedico zmedico commented Nov 25, 2019

Enable use of installed packages directly as binary
packages. This is similar to using binary packages produced by
quickpkg(1), but installed packages are used directly as though
they are binary packages. This option only works in combination
with the --root=DIR option, and it comes with the caveat that
packages are only allowed to be installed into the root that
is specified by the --root=DIR option. The other root which
serves as a source of packages is assumed to be immutable
during the entire operation (similar to --buildpkgonly mode).

Default behavior for handling of protected configuration files
is controlled by the QUICKPKG_DEFAULT_OPTS variable. When a
configuration file is not included because it is protected, an
ewarn message is logged.

Suggested use cases:

  • Install packages from a buildtime container into an empty root,
    in order to create a minimal runtime container (which need not
    include a package manager). In a multi-stage Dockerfile, install
    runtime files to an empty directory in the build stage, and in
    the final stage use COPY to populate a container with the
    contents of that directory. For greater efficiency, use buildah
    to install directly into a mounted container, avoiding the COPY
    step. Use the emerge --usepkgonly and --ignore-soname-deps=n
    options to account for soname dependencies, allowing implicit
    system dependencies such as glibc to be automatically pulled
    into the runtime image.

  • Enable a live usb, iso, or pxe image to act as a binary
    installer that uses packages installed in the live image as a
    source of binary packages.

Bug: https://bugs.gentoo.org/699986
Signed-off-by: Zac Medico zmedico@gentoo.org

@zmedico zmedico force-pushed the bug_699986_quickpkg-direct branch 25 times, most recently from 29565ea to 506f373 Compare November 27, 2019 03:17
Enable use of installed packages directly as binary
packages. This is similar to using binary packages produced by
quickpkg(1), but installed packages are used directly as though
they are binary packages. This option only works in combination
with the --root=DIR option, and it comes with the caveat that
packages are only allowed to be installed into the root that
is specified by the --root=DIR option. The other root which
serves as a source of packages is assumed to be immutable
during the entire operation (similar to --buildpkgonly mode).

Default behavior for handling of protected configuration files
is controlled by the QUICKPKG_DEFAULT_OPTS variable. When a
configuration file is not included because it is protected, an
ewarn message is logged.

Suggested use cases:

* Install packages from a buildtime container into an empty root,
  in order to create a minimal runtime container (which need not
  include a package manager). In a multi-stage Dockerfile, install
  runtime files to an empty directory in the build stage, and in
  the final stage use COPY to populate a container with the
  contents of that directory. For greater efficiency, use buildah
  to install directly into a mounted container, avoiding the COPY
  step. Use the emerge --usepkgonly and --ignore-soname-deps=n
  options to account for soname dependencies, allowing implicit
  system dependencies such as glibc to be automatically pulled
  into the runtime image.

* Enable a live usb, iso, or pxe image to act as a binary
  installer that uses packages installed in the live image as a
  source of binary packages.

Bug: https://bugs.gentoo.org/699986
Signed-off-by: Zac Medico <zmedico@gentoo.org>
@gentoo-bot gentoo-bot merged commit 8faad11 into gentoo:master Nov 27, 2019
@zmedico zmedico deleted the bug_699986_quickpkg-direct branch November 27, 2019 03:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants