Skip to content

Latest commit

 

History

History
46 lines (36 loc) · 2.39 KB

README.md

File metadata and controls

46 lines (36 loc) · 2.39 KB

Portage Binpkg Support Overlay

NOTE: This overlay is not currently needed, since the relevant features have all been merged upstream. Support for FEATURES=binpkg-multi-instance is not yet released as of portage-2.2.18, but is available in portage-9999.

This overlay contains a version of sys-apps/portage-9999 with enhanced binary package support, which pulls from the binpkg-support-integration branch.

Usage

Add this repository to /etc/portage/repos.conf, using a configuration like this:

[portage-binpkg-support]
location = /var/portage/repos/portage-binpkg-support
sync-type = git
sync-uri = https://github.com/zmedico/portage-binpkg-support-overlay.git
auto-sync = true

Then run emerge --sync, followed by emerge =sys-apps/portage-9999::portage-binpkg-support.

In order to enable support for multiple binary package instances in PKGDIR per ebuild, set FEATURES="binpkg-multi-instance" in /etc/portage/make.conf or in make.defaults of your profile. In order to allow a dependency atom in your profiles to select a specific build, set "profile-formats = build-id" in metadata/layout.conf of the repository that contains your profiles. An atom like =sys-apps/portage-2.2.18-1 will select the binary package instance for sys-apps/portage-2.2.18 with build-id 1. The binary package can be fetched from a binhost via emerge --getbinpkg, or stored locally as ${PKGDIR}/sys-apps/portage/portage-2.2.18-1.xpak.

In order to enable soname dependency resolution, use emerge --ignore-soname-deps=n, and refer to the emerge(1) man page for more information about this option. Note that --usepkgonly or --getbinpkgonly must be enabled in order for soname dependency resolution to work for installation actions. I've put my PROVIDES_EXCLUDE and REQUIRES_EXCLUDE package.bashrc settings in a git repo, to provide some examples of how PROVIDES_EXCLUDE and REQUIRES_EXCLUDE are useful in practice. With these settings in /etc/portage/profile/package.bashrc, all soname dependencies on my desktop multilib system are resolvable (2283 packages, including KDE 4.14.3).

Included features not released upstream