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 details)

Uploaded Source

Built Distribution

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

Uploaded Python 3

File details

Details for the file binary-gentoo-1.0.0.tar.gz.

File metadata

  • Download URL: binary-gentoo-1.0.0.tar.gz
  • Upload date:
  • Size: 9.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/3.7.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.59.0 CPython/3.7.10

File hashes

Hashes for binary-gentoo-1.0.0.tar.gz
Algorithm Hash digest
SHA256 d791c1f8805630e5118072b95ec94a8c7be055d456c4554214f463f12bc723af
MD5 f142bfa21475983d4ee749be9be75a0a
BLAKE2b-256 cd7dafc2394cad8ffdab361ab85cb6ef35a5589d27a04c431eee7e81231c7873

See more details on using hashes here.

File details

Details for the file binary_gentoo-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: binary_gentoo-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 24.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/3.7.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.59.0 CPython/3.7.10

File hashes

Hashes for binary_gentoo-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 d89d37f640eeefd3a8b947070f09b1a4907d3fa5dc23c9de980a398af0dd0979
MD5 d07396b98a31fe27affb05a1f27cad4e
BLAKE2b-256 f00cc8e79b6f54fef65a7f07ccbd96cc00f67246741a1d4aa562e371b5fedc8d

See more details on using hashes here.

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