Skip to main content

CLI tools to build Gentoo packages on a non-Gentoo Linux host

Project description

Build and smoke test

About

binary-gentoo is a collection of simple CLI tools to help build Gentoo packages on a non-Gentoo Linux host, primarily. A typical scenario is operation of an active Gentoo binary package host — an active "binhost".

Secondarily, binary-gentoo can also build Gentoo packages on a Gentoo host with Docker isolation and a full emerge perspective (while not affecting your host system).

There currently four CLI tools that follow the Unix philosophy and are meant to be combined using a glue language like Bash:

  • gentoo-local-queue – Manages simple file-based push/pop build task queues
  • gentoo-package-build – Builds a Gentoo package with Docker isolation
  • gentoo-tree-diff – Lists packages/versions/revisions that one portdir has over another
  • gentoo-tree-sync – Brings a given portdir directory up to date

binary-gentoo is software libre licensed under the GNU Affero GPL version 3 or later license.

Design Decisions

  • All code in binary-gentoo must work on a non-Gentoo Linux machine, provided that it has Docker installed and working internet access

  • If dependency problems block a package from being built, there should be a log showing that problem. Hence the dedicated round of emerge --pretend [..] before the actual build.

  • Big packages like Chromium need a pile of RAM and CPU time. Therefore, the build defaults to MAKETOPTS=-j1 the package of interest is emerged separate from it dependencies. That allows to build e.g. a package of Chromium in a VM with only 8 GB of RAM.

  • With regard to dependency constraints, some packages can be built without conflicts but not be installed without conflicts. Hence the default is to only install dependencies, but not the package of interest.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

binary-gentoo-1.0.0.tar.gz (9.3 kB view hashes)

Uploaded Source

Built Distribution

binary_gentoo-1.0.0-py3-none-any.whl (24.0 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page