Sync with portage [Wed Mar 11 20:16:00 MSK 2020].

develop 1605
root 4 years ago
parent 5467bc8a87
commit 2c8770dde3

Binary file not shown.

Binary file not shown.

@ -0,0 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>gentoo@seichter.de</email>
<name>Ralph Seichter</name>
</maintainer>
<maintainer type="project">
<email>proxy-maint@gentoo.org</email>
<name>Proxy Maintainers</name>
</maintainer>
</pkgmetadata>

@ -0,0 +1,9 @@
# Copyright 2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit acct-group
ACCT_GROUP_ID=330
DESCRIPTION="Group for net-analyzer/ossec-hids"

@ -1,8 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>python@gentoo.org</email>
<name>Python</name>
<maintainer type="person">
<name>Sven Wegener</name>
<email>swegener@gentoo.org</email>
</maintainer>
</pkgmetadata>

@ -0,0 +1,8 @@
# Copyright 2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit acct-group
ACCT_GROUP_ID=423

@ -5,4 +5,4 @@ EAPI=7
inherit acct-group
ACCT_GROUP_ID=425
ACCT_GROUP_ID=424

Binary file not shown.

@ -0,0 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>gentoo@seichter.de</email>
<name>Ralph Seichter</name>
</maintainer>
<maintainer type="project">
<email>proxy-maint@gentoo.org</email>
<name>Proxy Maintainers</name>
</maintainer>
</pkgmetadata>

@ -0,0 +1,13 @@
# Copyright 2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit acct-user
ACCT_USER_ID=330
ACCT_USER_GROUPS=( ossec )
ACCT_USER_HOME=/var/ossec
DESCRIPTION="net-analyzer/ossec-hids (agentlessd, analysisd, monitord)"
acct-user_add_deps

@ -0,0 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>gentoo@seichter.de</email>
<name>Ralph Seichter</name>
</maintainer>
<maintainer type="project">
<email>proxy-maint@gentoo.org</email>
<name>Proxy Maintainers</name>
</maintainer>
</pkgmetadata>

@ -0,0 +1,12 @@
# Copyright 2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit acct-user
ACCT_USER_ID=331
ACCT_USER_GROUPS=( ossec )
DESCRIPTION="net-analyzer/ossec-hids (csyslogd, maild)"
acct-user_add_deps

@ -0,0 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>gentoo@seichter.de</email>
<name>Ralph Seichter</name>
</maintainer>
<maintainer type="project">
<email>proxy-maint@gentoo.org</email>
<name>Proxy Maintainers</name>
</maintainer>
</pkgmetadata>

@ -0,0 +1,12 @@
# Copyright 2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit acct-user
ACCT_USER_ID=332
ACCT_USER_GROUPS=( ossec )
DESCRIPTION="net-analyzer/ossec-hids (remoted)"
acct-user_add_deps

@ -1,8 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>kde@gentoo.org</email>
<name>Gentoo KDE Project</name>
<maintainer type="person">
<name>Sven Wegener</name>
<email>swegener@gentoo.org</email>
</maintainer>
</pkgmetadata>

@ -0,0 +1,11 @@
# Copyright 2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit acct-user
ACCT_USER_ID=423
ACCT_USER_GROUPS=( pdns )
acct-user_add_deps

@ -5,7 +5,7 @@ EAPI=7
inherit acct-user
ACCT_USER_ID=425
ACCT_USER_ID=424
ACCT_USER_GROUPS=( quagga )
acct-user_add_deps

Binary file not shown.

@ -1,3 +1,2 @@
DIST ansible-2.9.4.tar.gz 14170264 BLAKE2B e230837360d29df460906d118b3c2ebb9a9dc1ac2a4427809a16716e67a79db8e737ed1beca757bd8a75b631c8cb6c26e58b1caeaaeb613731d63031f1e4e34e SHA512 21020548100fc31b59d4ee1b461f2a14359f2f18752d431cd041eb987c8c8b308f1aa1687461a9b3f5a086485b77b3a38c8f006b942cc24cb2157b45e6582822
DIST ansible-2.9.5.tar.gz 14186885 BLAKE2B c64fb384ab55c5b9cca753319fba911b8a40d634b59998f2e4c65ccafaa536788f3ac8c18a45a4b0d322ecca9b7fa2c580311a35a202ad70c2de2157ab04bfaf SHA512 cd2ce807b3136e2c02856339ea910b0a5cae8ca946da804ed7d3ec5725d3eff0fe5b4bd8527b2a17d6f3109e16859d52045b50f2ffd21169b30768e65b813407
DIST ansible-2.9.6.tar.gz 14201258 BLAKE2B 29da78035291a252f215a49945e82d9f3598a91c9c8993c69623668e9f8a667882330d51c75e1ae27ee5242f4a6320ee947af338c4c38e23f4f9d04cf19364ca SHA512 7111fd72b4e029b2f661bfb849b4323b69ea796f8a069ad3120e8de390effa670180c69ca0fd5e0a1c2e444db6d574a52d530a2b0343c76cd81ba963b3c3a7cb

@ -1,68 +0,0 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=( python3_{6,7} )
inherit distutils-r1 eutils
DESCRIPTION="Model-driven deployment, config management, and command execution framework"
HOMEPAGE="https://ansible.com/"
SRC_URI="https://releases.ansible.com/${PN}/${P}.tar.gz"
LICENSE="GPL-3"
SLOT="0"
KEYWORDS="amd64 ~arm ~arm64 x86 ~x64-macos"
IUSE="doc test"
RESTRICT="test"
RDEPEND="
dev-python/paramiko[${PYTHON_USEDEP}]
dev-python/jinja[${PYTHON_USEDEP}]
dev-python/pyyaml[${PYTHON_USEDEP}]
dev-python/setuptools[${PYTHON_USEDEP}]
dev-python/cryptography[${PYTHON_USEDEP}]
dev-python/httplib2[${PYTHON_USEDEP}]
dev-python/six[${PYTHON_USEDEP}]
dev-python/netaddr[${PYTHON_USEDEP}]
dev-python/pexpect[${PYTHON_USEDEP}]
net-misc/sshpass
virtual/ssh
"
DEPEND="
dev-python/setuptools[${PYTHON_USEDEP}]
>=dev-python/packaging-16.6[${PYTHON_USEDEP}]
doc? (
dev-python/sphinx[${PYTHON_USEDEP}]
dev-python/sphinx-notfound-page[${PYTHON_USEDEP}]
>=dev-python/pygments-2.4.0[${PYTHON_USEDEP}]
)
test? (
${RDEPEND}
dev-python/nose[${PYTHON_USEDEP}]
>=dev-python/mock-1.0.1[${PYTHON_USEDEP}]
dev-python/passlib[${PYTHON_USEDEP}]
dev-python/coverage[${PYTHON_USEDEP}]
dev-python/unittest2[${PYTHON_USEDEP}]
dev-vcs/git
)"
python_compile_all() {
if use doc; then
cd docs/docsite || die
export CPUS=4
emake -f Makefile.sphinx html
fi
}
python_test() {
nosetests -d -w test/units -v --with-coverage --cover-package=ansible --cover-branches || die
}
python_install_all() {
use doc && local HTML_DOCS=( docs/docsite/_build/html/. )
distutils-r1_python_install_all
dodoc -r examples
}

@ -13,7 +13,7 @@ SRC_URI="https://releases.ansible.com/${PN}/${P}.tar.gz"
LICENSE="GPL-3"
SLOT="0"
KEYWORDS="~amd64 ~arm ~arm64 ~x86 ~x64-macos"
KEYWORDS="amd64 ~arm ~arm64 x86 ~x64-macos"
IUSE="doc test"
RESTRICT="test"

@ -1 +1,2 @@
DIST entr-4.3.tar.gz 23756 BLAKE2B 0272b0185932d7c388818df0cc615e991c9545473a823c478ad9f0b6a23c97c0f4b2727b109a7bb18e2b0792f18d94d188d4a5d3fc90c479628ea078b1288f96 SHA512 f65dfc3f106e25ec4ff39eaec94222d8a547eb35390c654f6a741f92541c1b86d7d303a795308fcbfced44ac8eca6ad67e70393802ac9d46153e037dc1eab902
DIST entr-4.4.tar.gz 24125 BLAKE2B c77b4a862c0b4a2861d7e2784fbaa3f60899a9934314a5cf3abb01d70df946e3786957cbaa9ed58cea7171390d115157f0d9a48093f6e7a8c05bcabf34da9792 SHA512 355bc19cfee9a9b5a460b136d8db014a1d129b6e4c95d905c1c4557cf7d845a076d260798ae8b84221563c049a9bd6d81974f00eea681abaf2eac2f2f5e6d087

@ -0,0 +1,31 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit toolchain-funcs
DESCRIPTION="Run arbitrary commands when files change"
HOMEPAGE="http://entrproject.org"
SRC_URI="http://entrproject.org/code/${P}.tar.gz"
LICENSE="ISC"
SLOT="0"
KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
IUSE="test"
RESTRICT="!test? ( test )"
src_configure() {
sh configure || die
sed -i -e 's#\(^PREFIX \).*#\1\?= /usr#' Makefile.bsd || die
}
src_compile() {
export CC=$(tc-getCC)
default
}
src_test() {
export CC=$(tc-getCC)
default
}

@ -700,17 +700,29 @@ RESTRICT+=" test"
src_prepare() {
default
mv ../vendor .
sed -i -e "s/git rev-parse HEAD/echo ${GIT_COMMIT}/"\
-e "s/git rev-parse --short HEAD/echo ${GIT_COMMIT:0:7}/"\
-e "s#git describe --tags --abbrev=0 --exact-match 2>/dev/null#echo v${PV}#"\
-e 's/test -n "`git status --porcelain`" && echo "dirty" || //' \
-e "/GOFLAGS :=/d" \
# Makefile:
# - change GIT & LDFLAGS variable assignments from immediate ":=" to
# deferred "=", to allow better overrides.
# - Remove GOFLAGS entirely
# - Remove -w & -s from LDFLAGS
# - Git spec will be passed later
sed -r -i \
-e '/^GIT_(COMMIT|SHA|TAG|DIRTY)/s,:?=.*,=,g' \
-e "/^GOFLAGS[[:space:]]+:?=/d" \
-e '/^LDFLAGS[[:space:]]+:?=/{s,-[ws],,g;s,:=,=,g}' \
Makefile || die
}
src_compile() {
emake GOFLAGS="-mod=vendor" LDFLAGS= build
# Do not pass LDFLAGS directly here, as the upstream Makefile adds some
# data to it via +=
emake \
GOFLAGS="${GOFLAGS}" \
GIT_SHA=${GIT_COMMIT} \
GIT_COMMIT=${GIT_COMMIT:0:7} \
GIT_TAG=v${PV} \
GIT_DIRTY=clean \
build
bin/${PN} completion bash > ${PN}.bash || die
bin/${PN} completion zsh > ${PN}.zsh || die
}

@ -1,3 +1 @@
DIST keepassxc-2.4.3-src.tar.xz 3301944 BLAKE2B ba95d5d48049367e7d3c39b5fdc9fc9816dfe2b257530068f229d1b5bd4eb9c137607f63bcce0aac4bc67ed41ee00c0385be800720acfdc3920c44444cade180 SHA512 893f1d18ab8051143d29c568ba87adcc42a13d28d0c3a7af04396cd91d6724f8a98d76d2e20ca15138c4642ec060d48b9e957857251f3a0df6066af08cd0765d
DIST keepassxc-2.5.2-src.tar.xz 6835848 BLAKE2B 4c536ec062295655c04a360ba3c94ff97078aa03b96e5bb29e246f6ad13cce16ba77bcf5e7232de4df669706bc612f6b157e3050f0d8b9eb4b1f47e4308af0d0 SHA512 f87408362e5fbba10e2e66ff1cead2f8495214197e142c16cd3c95ea47956570b6cfc561d7b593c9a962f476637b8bd6b5e21e2fc3e4f20224506bd97d16bb23
DIST keepassxc-2.5.3-src.tar.xz 6839148 BLAKE2B b3cc32f9abb42e662edec0c28967fca65a4f3c794f70bfe6c40c39375cad8cbc35eba95431b33119268230a324f83f2e5a53186ee8fc64cd366e20eac1341dc5 SHA512 8b1e3360b4ae5de170be6936291f7b309de09b2462fcd5a48f239c22f1c8b6ffe721aca8d1e9b6ae3881f7b16374850d7f4b809733244fd16d45eed6ad4f60c6

@ -1,100 +0,0 @@
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit cmake xdg
DESCRIPTION="KeePassXC - KeePass Cross-platform Community Edition"
HOMEPAGE="https://keepassxc.org"
if [[ "${PV}" != 9999 ]] ; then
if [[ "${PV}" == *_beta* ]] ; then
SRC_URI="https://github.com/keepassxreboot/keepassxc/archive/${PV/_/-}.tar.gz -> ${P}.tar.gz"
S="${WORKDIR}/${P/_/-}"
else
#SRC_URI="https://github.com/keepassxreboot/keepassxc/archive/${PV}.tar.gz -> ${P}.tar.gz"
SRC_URI="https://github.com/keepassxreboot/keepassxc/releases/download/${PV}/${P}-src.tar.xz"
KEYWORDS="amd64 x86"
fi
else
inherit git-r3
EGIT_REPO_URI="https://github.com/keepassxreboot/${PN}"
fi
LICENSE="LGPL-2.1 GPL-2 GPL-3"
SLOT="0"
IUSE="autotype browser debug keeshare +network test yubikey"
RESTRICT="!test? ( test )"
RDEPEND="
app-crypt/argon2:=
dev-libs/libgcrypt:=
>=dev-libs/libsodium-1.0.12:=
dev-qt/qtconcurrent:5
dev-qt/qtcore:5
dev-qt/qtdbus:5
dev-qt/qtgui:5
dev-qt/qtnetwork:5
dev-qt/qtsvg:5
dev-qt/qtwidgets:5
media-gfx/qrencode:=
sys-libs/zlib:=
autotype? (
dev-qt/qtx11extras:5
x11-libs/libX11
x11-libs/libXi
x11-libs/libXtst
)
browser? ( >=dev-libs/libsodium-1.0.12 )
keeshare? ( dev-libs/quazip )
yubikey? ( sys-auth/ykpers )
"
DEPEND="
${RDEPEND}
dev-qt/linguist-tools:5
dev-qt/qttest:5
"
# Not a runtime dependency but still needed (see bug #667092)
PDEPEND="
x11-misc/xsel
"
src_prepare() {
use test || \
sed -e "/^find_package(Qt5Test/d" -i CMakeLists.txt || die
cmake_src_prepare
}
src_configure() {
local mycmakeargs=(
-DWITH_GUI_TESTS=OFF
-DWITH_TESTS="$(usex test)"
-DWITH_XC_AUTOTYPE="$(usex autotype)"
-DWITH_XC_BROWSER="$(usex browser)"
-DWITH_XC_KEESHARE="$(usex keeshare)"
-DWITH_XC_NETWORKING="$(usex network)"
-DWITH_XC_SSHAGENT=ON
-DWITH_XC_UPDATECHECK=OFF
-DWITH_XC_YUBIKEY="$(usex yubikey)"
)
if [[ "${PV}" == *_beta* ]] ; then
mycmakeargs+=( -DOVERRIDE_VERSION="${PV/_/-}" )
fi
cmake_src_configure
}
pkg_preinst() {
xdg_pkg_preinst
}
pkg_postinst() {
xdg_pkg_postinst
}
pkg_postrm() {
xdg_pkg_postrm
}

@ -1,97 +0,0 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit cmake xdg
DESCRIPTION="KeePassXC - KeePass Cross-platform Community Edition"
HOMEPAGE="https://keepassxc.org"
if [[ "${PV}" != 9999 ]] ; then
if [[ "${PV}" == *_beta* ]] ; then
SRC_URI="https://github.com/keepassxreboot/keepassxc/archive/${PV/_/-}.tar.gz -> ${P}.tar.gz"
S="${WORKDIR}/${P/_/-}"
else
#SRC_URI="https://github.com/keepassxreboot/keepassxc/archive/${PV}.tar.gz -> ${P}.tar.gz"
SRC_URI="https://github.com/keepassxreboot/keepassxc/releases/download/${PV}/${P}-src.tar.xz"
KEYWORDS="~amd64 ~x86"
fi
else
inherit git-r3
EGIT_REPO_URI="https://github.com/keepassxreboot/${PN}"
fi
LICENSE="LGPL-2.1 GPL-2 GPL-3"
SLOT="0"
IUSE="autotype browser ccache debug keeshare +network test yubikey"
RDEPEND="
app-crypt/argon2:=
dev-libs/libgcrypt:=
>=dev-libs/libsodium-1.0.12:=
dev-qt/qtconcurrent:5
dev-qt/qtcore:5
dev-qt/qtdbus:5
dev-qt/qtgui:5
dev-qt/qtnetwork:5
dev-qt/qtsvg:5
dev-qt/qtwidgets:5
media-gfx/qrencode:=
sys-libs/readline:0=
sys-libs/zlib:=
autotype? (
dev-qt/qtx11extras:5
x11-libs/libX11
x11-libs/libXi
x11-libs/libXtst
)
keeshare? ( dev-libs/quazip )
yubikey? ( sys-auth/ykpers )
"
DEPEND="
${RDEPEND}
dev-qt/linguist-tools:5
dev-qt/qttest:5
"
BDEPEND="
ccache? ( dev-util/ccache )
"
# Not a runtime dependency but still needed (see bug #667092)
PDEPEND="
x11-misc/xsel
"
RESTRICT="!test? ( test )"
PATCHES=(
"${FILESDIR}/${PN}-2.5.2-ccache_switch.patch"
)
src_prepare() {
use test || \
sed -e "/^find_package(Qt5Test/d" -i CMakeLists.txt || die
cmake_src_prepare
}
src_configure() {
local mycmakeargs=(
-DWITH_CCACHE="$(usex ccache)"
-DWITH_GUI_TESTS=OFF
-DWITH_TESTS="$(usex test)"
-DWITH_XC_AUTOTYPE="$(usex autotype)"
-DWITH_XC_BROWSER="$(usex browser)"
-DWITH_XC_FDOSECRETS=ON
-DWITH_XC_KEESHARE="$(usex keeshare)"
-DWITH_XC_NETWORKING="$(usex network)"
-DWITH_XC_SSHAGENT=ON
-DWITH_XC_UPDATECHECK=OFF
-DWITH_XC_YUBIKEY="$(usex yubikey)"
)
if [[ "${PV}" == *_beta* ]] ; then
mycmakeargs+=( -DOVERRIDE_VERSION="${PV/_/-}" )
fi
cmake_src_configure
}

@ -15,7 +15,7 @@ if [[ "${PV}" != 9999 ]] ; then
else
#SRC_URI="https://github.com/keepassxreboot/keepassxc/archive/${PV}.tar.gz -> ${P}.tar.gz"
SRC_URI="https://github.com/keepassxreboot/keepassxc/releases/download/${PV}/${P}-src.tar.xz"
KEYWORDS="~amd64 ~x86"
KEYWORDS="amd64 x86"
fi
else
inherit git-r3

@ -1 +1,2 @@
DIST needrestart-3.3.tar.gz 59814 BLAKE2B bfba00dee7c0f225efcaaa80b301eb38d0ea82645f253c8bef9294102f9f4183433ed1b6efe71a9dc34c65f76364ff3fc2344e840b34f97361f3ddcd0dc9ab4b SHA512 ea2f3cbe228a6b879905bd3b3de8b5e0bb2362e8d3cd566817d2e7d519d54207ff5923eb8e49cbd8ffe8ed50729f4da04bf4d55268e806f49157860584058d50
DIST needrestart-3.4.tar.gz 63219 BLAKE2B 892bb610001575b7e653e06380ba39bb91608db6b5cc491d1e89543a72a17f69547f2610ebe7f3e51835dc1af5a32604fe54f79b6565c9f97df194a87f5f7bdf SHA512 3d63a9c32112b1d4f5d0c6d66430323761c9e7c17f01f52d0572b64ebf113fc9b52838dada363667632ae51894312d891ae8016e8eb5cbd4e0d06fa37c603f25

@ -0,0 +1,41 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
if [[ ${PV} == "9999" ]] ; then
EGIT_REPO_URI="https://github.com/liske/${PN}.git"
inherit git-r3
SRC_URI=""
KEYWORDS="amd64 x86"
else
SRC_URI="https://github.com/liske/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
KEYWORDS="amd64 x86"
fi
DESCRIPTION="Restart daemons after library updates"
HOMEPAGE="https://fiasko-nw.net/~thomas/tag/needrestart.html https://github.com/liske/needrestart"
SLOT="0"
LICENSE="GPL-2+"
RDEPEND="
>=sys-apps/sed-4.2.2
dev-lang/perl:=
dev-perl/libintl-perl
dev-perl/Module-Find
dev-perl/Module-ScanDeps
dev-perl/Proc-ProcessTable
dev-perl/Sort-Naturally
dev-perl/TermReadKey
sys-apps/init-system-helpers
"
DEPEND="${RDEPEND}
sys-devel/gettext
"
src_install() {
default
doman man/*.1
dodoc -r ex
}

@ -1,2 +1,4 @@
DIST puppet-agent_6.13.0-1stretch_amd64.deb 22432484 BLAKE2B 231f8683afbf4d2c5ded7bfec323baecbfd52446bb3483c2c16764bc57b79a18d256ecf94b27d4db1bbe88038d7f3eef037c500a39e3b66d641e4effa94cd2d3 SHA512 6101e84e5dbfa64bd336bb23595fe559165e4a159fa5de739aa1617e6825ab11ad62d1abbee26ff94b9f68caa7a192c0339a0c721efcc534ae9ddbba161af907
DIST puppet-agent_6.13.0-1stretch_i386.deb 22787442 BLAKE2B 1bcea00b2da5c5b0db51fdd12d3828492a9a56af3a8c84919258ac7b90f7d135df708aba602a6d517364ac8b42f1ee3f1c11596cca0e89809a72d1d04c7ecc58 SHA512 55afd1ec6d331808a2a5adcd9c41803d932bcd7e2653da42c81c8ea1179649ae7ac642993813d527b2f365fb4f21d67015a0c2eb5379de2184585475521f8726
DIST puppet-agent_6.14.0-1stretch_amd64.deb 22450130 BLAKE2B fe6e30d99357328a884944e59d7cb1c66ad9fc36642ba377ed99e23551c5cbf06cffc4336b47440389fee7a9f1996b8325d18335768187f5d052fcecae041f5b SHA512 41d87f1ab4ead019eb5ef90ad21e557db686729151618e4ec642ea6636feda383874f7d457de7e9e323cf44d9d410e7fb650edd6e69b186c2fdff5657955ac5a
DIST puppet-agent_6.14.0-1stretch_i386.deb 22792198 BLAKE2B 7638fd1edfeb22377ab22484dd0fd5377bab6ee5e3e01c64ffd8eae29b08e0182204446db23d8cf68018a58c2419ce22c4dda4fd10a6dfac64356d68a5478bfa SHA512 dc787dfeb2565fde00da6e991fb94435c56e804657a38268ad49d72783b9857de4e359d6d9002525759684ddcb48a00e2fdb73f069cd79da74237bcb9530a116

@ -0,0 +1,75 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit eutils systemd unpacker
DESCRIPTION="general puppet client utils along with hiera and facter"
HOMEPAGE="https://puppetlabs.com/"
SRC_BASE="http://apt.puppetlabs.com/pool/stretch/puppet/${PN:0:1}/${PN}/${PN}_${PV}-1stretch"
SRC_URI="
amd64? ( ${SRC_BASE}_amd64.deb )
x86? ( ${SRC_BASE}_i386.deb )"
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE="puppetdb selinux"
RESTRICT="strip"
CDEPEND="!app-admin/puppet
!dev-ruby/hiera
!dev-ruby/facter
!app-emulation/virt-what
acct-user/puppet
acct-group/puppet"
DEPEND="
${CDEPEND}
app-admin/augeas"
RDEPEND="${CDEPEND}
app-portage/eix
sys-apps/dmidecode
sys-libs/libselinux
sys-libs/glibc
sys-libs/readline:0/7
sys-libs/ncurses:0[tinfo]
selinux? (
sys-libs/libselinux[ruby]
sec-policy/selinux-puppet
)
puppetdb? ( >=dev-ruby/puppetdb-termini-5.0.1 )"
S=${WORKDIR}
src_install() {
# conf.d
doconfd etc/default/puppet
doconfd etc/default/pxp-agent
# logrotate.d
insinto /etc/logrotate.d
doins etc/logrotate.d/pxp-agent
# puppet itself
insinto /etc/puppetlabs
doins -r etc/puppetlabs/*
# logdir for systemd
dodir var/log/puppetlabs/puppet/
fperms 0750 var/log/puppetlabs/puppet/
# the rest
insinto /opt
dodir opt/puppetlabs/puppet/cache
doins -r opt/*
fperms 0750 /opt/puppetlabs/puppet/cache
# init
newinitd "${FILESDIR}/puppet.initd" puppet
systemd_dounit lib/systemd/system/puppet.service
systemd_dounit lib/systemd/system/pxp-agent.service
systemd_newtmpfilesd "${FILESDIR}/puppet-agent.conf.tmpfilesd" puppet-agent.conf
# symlinks
chmod 0755 -R "${D}/opt/puppetlabs/puppet/bin/"
chmod 0755 "${D}//opt/puppetlabs/puppet/lib/virt-what/virt-what-cpuid-helper"
dosym ../../opt/puppetlabs/bin/facter /usr/bin/facter
dosym ../../opt/puppetlabs/bin/hiera /usr/bin/hiera
dosym ../../opt/puppetlabs/bin/puppet /usr/bin/puppet
dosym ../../opt/puppetlabs/puppet/bin/virt-what /usr/bin/virt-what
}

@ -1,3 +1,5 @@
DIST puppet-5.5.17.tar.gz 3090402 BLAKE2B 7722ec4196ee766c29eddd7dc73539a4a5a0e4cc781a84af25210488328b5ae01178ca64e8eef14152cbeca06dc8fe145b5e39ce6a120d7689fc32cbbbe16f9f SHA512 95c6cd836a9f732ccfe2d8b83096e79c32428c43390c0826663f896ca1388e1fe3b55d93a5a7548831e95de85247db717866c36786d591e207341c734d70168b
DIST puppet-5.5.18.tar.gz 2984835 BLAKE2B d5a1d023d3d26e04ccc81efa772131c06fc7ace8ec59c7efa97bddb775bb492d3256290824a87d54df5c28862cbba98c58cf41bb4a0c27a4128701652c06eee0 SHA512 86f210ee783ca36340b22463cd4ac237d8dc1c6a35526530af0696bb3f0373b0b22f690d3e3f8e31655ea182a33eb60b66b5826bd6c4d1b0059a8e46152416e6
DIST puppet-5.5.19.tar.gz 2993740 BLAKE2B aa6bde89489279769ee9a1ed5508fb223f7f0153b1b1991970018908eee70ff0816688c702b8dc779d01e1978ea7f9290c80523648730d5408a17674c11345fd SHA512 996fa155ca04c8c3c96c29cf65cd24eaf9e19e89fcf85345509dbd3673b28c263df5b62d6f016b8ac1c1da8ed86f0acf3100eae2656252bb10c542972db81de3
DIST puppet-6.13.0.tar.gz 2837171 BLAKE2B dc64b23fa2d5fcb978cfb03bf67f89ff0ae084883320f267bbb7fd613fd8948193658d717ecbf30f73e313c4530f872617a186675547509db9492589e4f226d6 SHA512 fb7abc9cf79a3de1daf597c0c1768ab4abcc11a236beb8294c5fc69d07ae23149216f7c8d33599365d3c10485f3fb3f8f5fe492e0e7312d19ffdaa0bc8b87d0c
DIST puppet-6.14.0.tar.gz 2842351 BLAKE2B db9a467d8e0f4f25d45c2f735ee9d11ac6ed4e47c16b95ded3ff9f1c5055ea866735bcda27c19c2988035d9592035e433ef0d79a19781c99f4e97388edf46b93 SHA512 066ad8de6393cb58b1f92fae450dc72dabcbe912cdbb3417848a66955fe17696a68abf67d86b107a2b1c54e7037d38da7264a9234a8833b56065c8e407ff57a4

@ -0,0 +1,141 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="6"
USE_RUBY="ruby24 ruby25 ruby26"
RUBY_FAKEGEM_RECIPE_TEST="rspec3"
RUBY_FAKEGEM_TASK_DOC="doc:all"
RUBY_FAKEGEM_EXTRAINSTALL="locales"
inherit eutils user ruby-fakegem eapi7-ver
DESCRIPTION="A system automation and configuration management software."
HOMEPAGE="https://puppet.com/"
SRC_URI="http://downloads.puppetlabs.com/puppet/${P}.tar.gz"
LICENSE="Apache-2.0 GPL-2"
SLOT="0"
KEYWORDS="~amd64 ~arm ~hppa ~ppc ~ppc64 ~x86"
IUSE="augeas diff doc emacs ldap rrdtool selinux shadow sqlite vim-syntax"
RESTRICT="test"
ruby_add_rdepend "
dev-ruby/hiera
dev-ruby/json:=
>=dev-ruby/facter-3.0.0
augeas? ( dev-ruby/ruby-augeas )
diff? ( dev-ruby/diff-lcs )
doc? ( dev-ruby/rdoc )
ldap? ( dev-ruby/ruby-ldap )
shadow? ( dev-ruby/ruby-shadow )
sqlite? ( dev-ruby/sqlite3 )
virtual/ruby-ssl
dev-ruby/hocon"
ruby_add_bdepend "
doc? ( dev-ruby/yard )
test? (
dev-ruby/mocha
dev-ruby/rack
dev-ruby/rspec-its
)"
# this should go in the above lists, but isn't because of test deps not being keyworded
# dev-ruby/rspec-collection_matchers
RDEPEND+=" ${RDEPEND}
rrdtool? ( >=net-analyzer/rrdtool-1.2.23[ruby] )
selinux? (
sys-libs/libselinux[ruby]
sec-policy/selinux-puppet
)
vim-syntax? ( >=app-vim/puppet-syntax-3.0.1 )
>=app-portage/eix-0.18.0"
PDEPEND="emacs? ( >=app-emacs/puppet-mode-0.3-r1 )"
pkg_setup() {
enewgroup puppet
enewuser puppet -1 -1 /var/lib/puppet puppet
}
all_ruby_prepare() {
# Avoid spec that require unpackaged json-schema.
rm spec/lib/matchers/json.rb $( grep -Rl matchers/json spec) || die
# fix systemd path
epatch "${FILESDIR}/puppet-systemd.patch"
# Avoid specs that can only run in the puppet.git repository. This
# should be narrowed down to the specific specs.
rm spec/integration/parser/compiler_spec.rb || die
# Avoid failing spec that need further investigation.
rm spec/unit/module_tool/metadata_spec.rb || die
}
each_ruby_install() {
each_fakegem_install
# dosym "/usr/$(get_libdir)/ruby/gems/$(ruby_get_version)/gems/${P}" "/usr/$(get_libdir)/ruby/gems/$(ruby_get_version)/gems/${PN}"
}
all_ruby_install() {
all_fakegem_install
# systemd stuffs
insinto /usr/lib/systemd/system
doins "${WORKDIR}/all/${P}/ext/systemd/puppet.service"
# tmpfiles stuff
insinto /usr/lib/tmpfiles.d
newins "${FILESDIR}/tmpfiles.d" "puppet.conf"
# openrc init stuff
newinitd "${FILESDIR}"/puppet.init-4.x puppet
newinitd "${FILESDIR}"/puppetmaster.init-4.x puppetmaster
newconfd "${FILESDIR}"/puppetmaster.confd puppetmaster
keepdir /etc/puppetlabs/puppet/ssl
keepdir /var/lib/puppet/facts
keepdir /var/lib/puppet/files
fowners -R puppet:puppet /var/lib/puppet
fperms 0750 /var/lib/puppet
fperms 0750 /etc/puppetlabs
fperms 0750 /etc/puppetlabs/puppet
fperms 0750 /etc/puppetlabs/puppet/ssl
fowners -R :puppet /etc/puppetlabs
fowners -R :puppet /var/lib/puppet
if use ldap ; then
insinto /etc/openldap/schema; doins ext/ldap/puppet.schema
fi
# ext and examples files
for f in $(find ext examples -type f) ; do
docinto "$(dirname ${f})"; dodoc "${f}"
done
}
pkg_postinst() {
elog
elog "Please, *don't* include the --ask option in EMERGE_EXTRA_OPTS as this could"
elog "cause puppet to hang while installing packages."
elog
elog "Portage Puppet module with Gentoo-specific resources:"
elog "http://forge.puppetlabs.com/gentoo/portage"
elog
for v in ${REPLACING_VERSIONS}; do
if [ "$(ver_cut 1 "$v")" -eq "4" ]; then
elog
elog "Please see the following url for the release notes for puppet-5"
elog "https://docs.puppet.com/puppet/5.0/release_notes.html#if-youre-upgrading-from-puppet-4x"
elog
fi
done
}

@ -0,0 +1,136 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="6"
USE_RUBY="ruby23 ruby24 ruby25"
RUBY_FAKEGEM_RECIPE_TEST="rspec3"
RUBY_FAKEGEM_TASK_DOC="doc:all"
RUBY_FAKEGEM_EXTRAINSTALL="locales"
inherit eutils ruby-fakegem eapi7-ver
DESCRIPTION="A system automation and configuration management software."
HOMEPAGE="https://puppet.com/"
SRC_URI="http://downloads.puppetlabs.com/puppet/${P}.tar.gz"
LICENSE="Apache-2.0 GPL-2"
SLOT="0"
KEYWORDS="~amd64 ~arm ~hppa ~ppc ~ppc64 ~x86"
IUSE="augeas diff doc emacs ldap rrdtool selinux shadow sqlite vim-syntax"
RESTRICT="test"
ruby_add_rdepend "
dev-ruby/hiera
dev-ruby/json:=
dev-ruby/semantic_puppet
>=dev-ruby/facter-3.0.0
dev-ruby/concurrent-ruby
augeas? ( dev-ruby/ruby-augeas )
diff? ( dev-ruby/diff-lcs )
doc? ( dev-ruby/rdoc )
ldap? ( dev-ruby/ruby-ldap )
shadow? ( dev-ruby/ruby-shadow )
sqlite? ( dev-ruby/sqlite3 )
virtual/ruby-ssl
dev-ruby/hocon"
ruby_add_bdepend "
doc? ( dev-ruby/yard )
test? (
dev-ruby/mocha
dev-ruby/rack
dev-ruby/rspec-its
)"
# this should go in the above lists, but isn't because of test deps not being keyworded
# dev-ruby/rspec-collection_matchers
RDEPEND+=" ${RDEPEND}
rrdtool? ( >=net-analyzer/rrdtool-1.2.23[ruby] )
selinux? (
sys-libs/libselinux[ruby]
sec-policy/selinux-puppet
)
vim-syntax? ( >=app-vim/puppet-syntax-3.0.1 )
>=app-portage/eix-0.18.0
acct-user/puppet
acct-group/puppet"
PDEPEND="emacs? ( >=app-emacs/puppet-mode-0.3-r1 )"
all_ruby_prepare() {
# Avoid spec that require unpackaged json-schema.
rm spec/lib/matchers/json.rb $( grep -Rl matchers/json spec) || die
# can't be run within portage.
epatch "${FILESDIR}/puppet-fix-tests-6.10.1.patch"
# fix systemd path
epatch "${FILESDIR}/puppet-systemd.patch"
# Avoid specs that can only run in the puppet.git repository. This
# should be narrowed down to the specific specs.
rm spec/integration/parser/compiler_spec.rb || die
# Avoid failing spec that need further investigation.
rm spec/unit/module_tool/metadata_spec.rb || die
}
each_ruby_install() {
each_fakegem_install
# dosym "/usr/$(get_libdir)/ruby/gems/$(ruby_get_version)/gems/${P}" "/usr/$(get_libdir)/ruby/gems/$(ruby_get_version)/gems/${PN}"
}
all_ruby_install() {
all_fakegem_install
# systemd stuffs
insinto /usr/lib/systemd/system
doins "${WORKDIR}/all/${P}/ext/systemd/puppet.service"
# tmpfiles stuff
insinto /usr/lib/tmpfiles.d
newins "${FILESDIR}/tmpfiles.d" "puppet.conf"
# openrc init stuff
newinitd "${FILESDIR}"/puppet.init-4.x puppet
keepdir /etc/puppetlabs/puppet/ssl
keepdir /var/lib/puppet/facts
keepdir /var/lib/puppet/files
fowners -R puppet:puppet /var/lib/puppet
fperms 0750 /var/lib/puppet
fperms 0750 /etc/puppetlabs
fperms 0750 /etc/puppetlabs/puppet
fperms 0750 /etc/puppetlabs/puppet/ssl
fowners -R :puppet /etc/puppetlabs
fowners -R :puppet /var/lib/puppet
if use ldap ; then
insinto /etc/openldap/schema; doins ext/ldap/puppet.schema
fi
# ext and examples files
for f in $(find ext examples -type f) ; do
docinto "$(dirname ${f})"; dodoc "${f}"
done
}
pkg_postinst() {
elog
elog "Please, *don't* include the --ask option in EMERGE_EXTRA_OPTS as this could"
elog "cause puppet to hang while installing packages."
elog
elog "Portage Puppet module with Gentoo-specific resources:"
elog "http://forge.puppetlabs.com/gentoo/portage"
elog
elog "If updating from puppet 5 to 6, keep in mind that webrick (server/master)"
elog "suppert was removed for >=6.x, please migrate to puppetserver if you have"
elog "not already done so."
elog
}

@ -1,2 +1,3 @@
DIST puppetdb-6.8.0.tar.gz 44216021 BLAKE2B ac5641ee0bceef3948d108c725e2ff53d76e897cafd75c9bc6978462f4b157c3d30146ce2f57fd2aa7610b2defc4e074c168847d8aba5501cde16ee0ab7b5aaf SHA512 2dd01058edbd8a4bb3f4717dc518e58ac57139ccc0651e8e39c721a32651bd932fe4ec747c7da23561ab33d7d4d7ddc448fe9b05734d1562f799e183c5e236d5
DIST puppetdb-6.9.0.tar.gz 44270700 BLAKE2B 2346bf8cf3c944b1a75d0ed9fc32678909f0a6615ea615b7d89316ce470eaaa9540b56550b655214711564c6f0f0e2931a0f037e0ffad983f5578a54b4b180ec SHA512 2450f82bcbcd84fd63f107ea69dc3890a77fc94a54b2c5601c5aa3ed80fcc12e26302f6150777fbcbc1fbedb3c9fb9dd60e6aea37101c0abb2cf19a1696be2e7
DIST puppetdb-6.9.1.tar.gz 44274016 BLAKE2B eaf1fe6ee88d2f4a1d147032db017eefd95a3edaba6fe5b114be6ac4ce37584ee58fa96c34fdac97b9b8b1aecd8abc982107024d2155bb78781d1c2c2f2112e1 SHA512 8db39c7571af597be2cff7e21ec5818d422f83f1c3188896e8eb9391e52d0f4bb1f85358a25998db599e9db2b93baec60415a43b519be3da600a9c1de0f073bc

@ -0,0 +1,87 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit multilib systemd
DESCRIPTION="PuppetDB collects data generated by Puppet."
HOMEPAGE="http://docs.puppetlabs.com/puppetdb/"
SRC_URI="https://downloads.puppetlabs.com/${PN}/${P}.tar.gz"
LICENSE="Apache-2.0"
SLOT="0"
IUSE=""
KEYWORDS="~amd64 ~x86"
RDEPEND+=">=virtual/jdk-1.8.0"
DEPEND+="acct-user/puppetdb
acct-group/puppetdb"
src_prepare() {
sed -i 's/sysconfig/conf\.d/g' ext/redhat/puppetdb.service || die
sed -i 's/sysconfig/conf\.d/g' ext/bin/puppetdb || die
sed -i 's/sysconfig/conf\.d/g' install.sh || die
sed -i 's/var\/run/run/g' ext/puppetdb.tmpfiles.conf || die
sed -i 's/var\/run/run/g' install.sh || die
default
}
src_compile() {
einfo "not compiling"
}
src_install() {
dodir /opt/puppetlabs/server/data/puppetdb
insinto /opt/puppetlabs/server/apps/puppetdb
insopts -m0744
doins ext/ezbake-functions.sh
insopts -m0644
doins ext/ezbake.manifest
doins puppetdb.jar
insinto /etc/puppetlabs/puppetdb
doins ext/config/logback.xml
doins ext/config/bootstrap.cfg
doins ext/config/request-logging.xml
insinto /etc/puppetlabs/puppetdb/conf.d
doins ext/config/conf.d/jetty.ini
doins ext/config/conf.d/repl.ini
doins ext/config/conf.d/database.ini
doins ext/config/conf.d/config.ini
insopts -m0755
insinto /opt/puppetlabs/server/apps/puppetdb/scripts
doins install.sh
insinto /opt/puppetlabs/server/apps/puppetdb/cli/apps
doins ext/cli/foreground
doins ext/cli/ssl-setup
doins ext/cli/config-migration
doins ext/cli/foreground
doins ext/cli/anonymize
doins ext/cli/reload
doins ext/cli/start
doins ext/cli/stop
insinto /opt/puppetlabs/server/apps/puppetdb/bin
doins ext/bin/puppetdb
insopts -m0644
dodir /opt/puppetlabs/server/bin
dosym ../apps/puppetdb/bin/puppetdb /opt/puppetlabs/server/bin/puppetdb
dodir /opt/puppetlabs/bin
dosym ../server/apps/puppetdb/bin/puppetdb /opt/puppetlabs/bin/puppetdb
dosym ../../opt/puppetlabs/server/apps/puppetdb/bin/puppetdb /usr/bin/puppetdb
# init type tasks
newconfd ext/default puppetdb
systemd_dounit ext/redhat/puppetdb.service
systemd_newtmpfilesd ext/puppetdb.tmpfiles.conf puppetdb.conf
newinitd "${FILESDIR}/puppetdb.initd-r2" puppetdb
# misc
insinto /etc/logrotate.d
newins ext/puppetdb.logrotate.conf puppetdb
fowners -R puppetdb:puppetdb /opt/puppetlabs/server/data/puppetdb
fperms -R 770 /opt/puppetlabs/server/data/puppetdb
}
pkg_postinst() {
elog "to install please run '/opt/puppetlabs/server/bin/puppetdb ssl-setup'"
elog
elog "to upgrade please run '/opt/puppetlabs/server/bin/puppetdb config-migration'"
}

@ -1,2 +1,3 @@
DIST puppetserver-6.8.0.tar.gz 59370389 BLAKE2B 227512d3a054980867730882459bff32559f8baa5fb0c807a14fcc827b8f41fc1da2cceab6bdbd6162bb4e6e6e4312f5d47d478f6887a978c359c6a4225d663d SHA512 9e4d0ea1aad1209342151cfcfd304e4a296df0e95fefde46d4e4a28a9da62422194492d430c3492cc717a7c872ee0f448a89a40fe1e1cb565f865fc0aca7089b
DIST puppetserver-6.9.0.tar.gz 59495229 BLAKE2B 17e02d201dd39a7c9a060c8898c76de3b85c5ffceb8dae128c032352e8f2959b6084558790c14979f95b7904bc70db0b3374d81f2b0c1f70bfb286084d6ba3a4 SHA512 b1446d407d50e3da502e2cd882647379fb51334bf5d4cc13d3654c8f7cbec2d6c4d7efd8acdfbdc1c70c6e30e3b420ed642cbdb97ee5f6a16b3b404dbd42bba7
DIST puppetserver-6.9.1.tar.gz 59496176 BLAKE2B 1599380ebf731fb4d67c04abc06303647d5d29c99f2b9721d049972eaaf3d4c2b108c6ac2f1a45efce3c52e9a57ebd362c874c36093027ebca77a2ae1d4c0323 SHA512 3a794adfa48c7bf9bd241c9da0578ea192b8551e75093e4d95c7c10fa659ef59d59ae72b33561d13ac31e839245d266301a6067d30b466138a95a6c4879bc58a

@ -0,0 +1,131 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit multilib systemd
DESCRIPTION="Puppet Server is the next-generation application for managing Puppet agents."
HOMEPAGE="http://docs.puppetlabs.com/puppetserver/"
SRC_URI="https://downloads.puppetlabs.com/puppet/${P}.tar.gz"
LICENSE="Apache-2.0"
SLOT="0"
IUSE="puppetdb"
# will need the same keywords as puppet
KEYWORDS="~amd64 ~x86"
RDEPEND+="
>=virtual/jdk-1.8.0
app-admin/puppet-agent[puppetdb?]"
DEPEND+="acct-user/puppet
acct-group/puppet"
src_prepare() {
sed -i 's/sysconfig\/puppetserver/default\/puppetserver/g' ext/redhat/puppetserver.service || die
sed -i 's/sysconfig\/puppetserver/default\/puppetserver/g' ext/bin/puppetserver || die
sed -i 's/sysconfig\/puppetserver/default\/puppetserver/g' install.sh || die
sed -i 's/var\/run/run/g' ext/config/conf.d/puppetserver.conf || die
sed -i 's/var\/run/run/g' ext/redhat/puppetserver.service || die
sed -i 's/var\/run/run/g' install.sh || die
default
}
src_compile() {
einfo "not compiling"
}
src_install() {
insinto /opt/puppetlabs/server/apps/puppetserver
insopts -m0774
doins ext/ezbake-functions.sh
insopts -m0644
doins ext/ezbake.manifest
doins puppet-server-release.jar
insinto /etc/puppetlabs/puppetserver
doins ext/config/logback.xml
doins ext/config/request-logging.xml
insinto /etc/puppetlabs/puppetserver/services.d
doins ext/system-config/services.d/bootstrap.cfg
doins ext/config/services.d/ca.cfg
insinto /etc/puppetlabs/puppetserver/conf.d
doins ext/config/conf.d/puppetserver.conf
doins ext/config/conf.d/auth.conf
doins ext/config/conf.d/global.conf
doins ext/config/conf.d/web-routes.conf
doins ext/config/conf.d/metrics.conf
doins ext/config/conf.d/webserver.conf
insopts -m0755
insinto /opt/puppetlabs/server/apps/puppetserver/scripts
doins install.sh
insinto /opt/puppetlabs/server/apps/puppetserver/cli/apps
doins ext/cli/ca
doins ext/cli/irb
doins ext/cli/foreground
doins ext/cli/gem
doins ext/cli/ruby
doins ext/cli/reload
doins ext/cli/start
doins ext/cli/stop
insinto /opt/puppetlabs/server/apps/puppetserver/cli
doins ext/cli_defaults/cli-defaults.sh
insinto /opt/puppetlabs/server/apps/puppetserver/bin
doins ext/bin/puppetserver
insopts -m0644
dodir /opt/puppetlabs/server/bin
dosym ../apps/puppetserver/bin/puppetserver /opt/puppetlabs/server/bin/puppetserver
dodir /opt/puppetlabs/bin
dosym ../server/apps/puppetserver/bin/puppetserver /opt/puppetlabs/bin/puppetserver
dosym ../../opt/puppetlabs/server/apps/puppetserver/bin/puppetserver /usr/bin/puppetserver
dodir /opt/puppetlabs/server/apps/puppetserver/config/services.d
# other sys stuff
dodir /etc/puppetlabs/code
# needed for systemd
dodir /var/log/puppetlabs/puppetserver
dodir /etc/puppetlabs/puppet/ssl
fowners -R puppet:puppet /etc/puppetlabs/puppet/ssl
fperms -R 771 /etc/puppetlabs/puppet/ssl
# systemd type things
insinto /etc/systemd/system/puppetserver.service.d/
systemd_dounit ext/redhat/puppetserver.service
insinto /etc/default
newins ext/default puppetserver
# normal init type tasks
dosym ../default/puppetserver /etc/conf.d/puppetserver
newinitd "${FILESDIR}/puppetserver.init-r1" puppetserver
# misc
insinto /etc/logrotate.d
newins ext/puppetserver.logrotate.conf puppetserver
# cleanup
dodir /opt/puppetlabs/server/data/puppetserver/jruby-gems
fowners -R puppet:puppet /opt/puppetlabs/server/data
fperms -R 775 /opt/puppetlabs/server/data/puppetserver
fperms -R 700 /var/log/puppetlabs/puppetserver
insinto /opt/puppetlabs/server/data
doins ext/build-scripts/jruby-gem-list.txt
doins ext/build-scripts/mri-gem-list-no-dependencies.txt
insopts -m 0644
insinto /usr/lib/tmpfiles.d
newins ext/puppetserver.tmpfiles.conf puppetserver.conf
}
pkg_postinst() {
elog "to install you may want to run the following:"
elog
elog "puppet config set --section master vardir /opt/puppetlabs/server/data/puppetserver"
elog "puppet config set --section master logdir /var/log/puppetlabs/puppetserver"
elog "puppet config set --section master rundir /run/puppetlabs/puppetserver"
elog "puppet config set --section master pidfile /run/puppetlabs/puppetserver/puppetserver.pid"
elog "puppet config set --section master codedir /etc/puppetlabs/code"
elog
elog "# install puppetserver gems"
elog "cd /opt/puppetlabs/server/apps/puppetserver"
elog "echo \"jruby-puppet: { gem-home: ${DESTDIR}/opt/puppetlabs/server/data/puppetserver/vendored-jruby-gems }\" > jruby.conf"
elog "while read LINE; do"
elog " java -cp puppet-server-release.jar:jruby-9k.jar clojure.main -m puppetlabs.puppetserver.cli.gem --config jruby.conf -- install --no-ri --no-rdoc \$(echo \$LINE |awk '{print \$1}') --version \$(echo \$LINE |awk '{print \$2}')"
elog "done < /opt/puppetlabs/server/data/jruby-gem-list.txt"
elog "echo \"jruby-puppet: { gem-home: ${DESTDIR}/opt/puppetlabs/puppet/lib/ruby/vendor_gems }\" > jruby.conf"
elog "while read LINE; do"
elog " java -cp puppet-server-release.jar:jruby-9k.jar clojure.main -m puppetlabs.puppetserver.cli.gem --config jruby.conf -- install --no-ri --no-rdoc \$(echo \$LINE |awk '{print \$1}') --version \$(echo \$LINE |awk '{print \$2}')"
elog "done < /opt/puppetlabs/server/data/mri-gem-list-no-dependencies.txt"
}

@ -1,3 +1,4 @@
DIST salt-2018.3.4.tar.gz 14404085 BLAKE2B 932b30b1ba60aefd3a6874a8ebe4cb6c469d82e31f6acdbe8a5641d09e3316796b5403ef803a355cec6255c1aede8bac3b66af179bd1bbaa5418c7076229cef9 SHA512 f17e06fdbf4741f231d9e769be57de4f6079e9283881b4bafa0d23928d7626a1f9c02b9f49c654b29c3e6ee8ed3d3ddf42c21baecef158ad63a97dc87895b21b
DIST salt-2019.2.0.tar.gz 14952746 BLAKE2B aa3bba4b7d9548a8d333c242fc0265a743f56ff1a259da7c8618d37b3b022e12f09ac594a09f0ceec80fd9d3a6b6b9ec35b33e879b7a124e6612f2ec2a63a01c SHA512 de5a976213d011c230e423a172952effddb87168367958b8657eaaaf8fd2a8bec8471f547b6ff9e896a17064a13d387dbc12e12c605c8a241062e3238bd19eca
DIST salt-2019.2.2.tar.gz 14420887 BLAKE2B 84e8a0aa72b88a66a1020b695849926669728ee02f8cb51a14853b5e9c2ab692fe65810367e5d53268f7b234c10911f16d063ce665b3761432ab1d9c0aa52d16 SHA512 2bbf9765384f1f6c2336a3f421298c8900cf459e6d1ebc7fb89284014ef8db9f5215a68de2bb06dfa3404983160a0c4c589ffa3dc046611dd5409bd502938677
DIST salt-2019.2.3.tar.gz 14572686 BLAKE2B 770b815f43ca8651408c1c057377b02c8037e673584c719e0a9b5c56c13c8db2db0e2c8641a17323f2b890d4a69d1508b0090624c7067869d9fa84303c2f8585 SHA512 cd694ca19696a84e3370e39c61da180e508592253713d99dd6dd5342b57c2814fee22e46bade30d7604f5730d9e1a736e59c3a512161f744d3f097f74a2836c5

@ -0,0 +1,151 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=( python3_6 )
inherit eutils systemd distutils-r1
DESCRIPTION="Salt is a remote execution and configuration manager"
HOMEPAGE="https://www.saltstack.com/resources/community/
https://github.com/saltstack"
if [[ ${PV} == 9999* ]]; then
inherit git-r3
EGIT_REPO_URI="git://github.com/${PN}stack/${PN}.git"
EGIT_BRANCH="develop"
SRC_URI=""
KEYWORDS=""
else
SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
KEYWORDS="~amd64 ~x86"
fi
LICENSE="Apache-2.0"
SLOT="0"
IUSE="cherrypy ldap libcloud libvirt gnupg keyring mako mongodb neutron nova"
IUSE+=" openssl portage profile redis selinux test raet +zeromq vim-syntax"
RDEPEND="sys-apps/pciutils
dev-python/jinja[${PYTHON_USEDEP}]
dev-python/libnacl[${PYTHON_USEDEP}]
>=dev-python/msgpack-0.3[${PYTHON_USEDEP}]
dev-python/pyyaml[${PYTHON_USEDEP}]
dev-python/markupsafe[${PYTHON_USEDEP}]
>=dev-python/requests-1.0.0[${PYTHON_USEDEP}]
dev-python/setuptools[${PYTHON_USEDEP}]
>=www-servers/tornado-4.2.1[${PYTHON_USEDEP}]
<www-servers/tornado-5.0[${PYTHON_USEDEP}]
virtual/python-futures[${PYTHON_USEDEP}]
libcloud? ( >=dev-python/libcloud-0.14.0[${PYTHON_USEDEP}] )
mako? ( dev-python/mako[${PYTHON_USEDEP}] )
ldap? ( dev-python/python-ldap[${PYTHON_USEDEP}] )
libvirt? ( dev-python/libvirt-python[${PYTHON_USEDEP}] )
openssl? (
dev-libs/openssl:0=[-bindist]
dev-python/pyopenssl[${PYTHON_USEDEP}]
)
raet? (
>=dev-python/libnacl-1.0.0[${PYTHON_USEDEP}]
>=dev-python/ioflo-1.1.7[${PYTHON_USEDEP}]
>=dev-python/raet-0.6.0[${PYTHON_USEDEP}]
)
zeromq? (
>=dev-python/pyzmq-2.2.0[${PYTHON_USEDEP}]
dev-python/pycryptodome[${PYTHON_USEDEP}]
)
cherrypy? ( >=dev-python/cherrypy-3.2.2[${PYTHON_USEDEP}] )
mongodb? ( dev-python/pymongo[${PYTHON_USEDEP}] )
portage? ( sys-apps/portage[${PYTHON_USEDEP}] )
keyring? ( dev-python/keyring[${PYTHON_USEDEP}] )
redis? ( dev-python/redis-py[${PYTHON_USEDEP}] )
selinux? ( sec-policy/selinux-salt )
nova? ( >=dev-python/python-novaclient-2.17.0[${PYTHON_USEDEP}] )
neutron? ( >=dev-python/python-neutronclient-2.3.6[${PYTHON_USEDEP}] )
gnupg? ( dev-python/python-gnupg[${PYTHON_USEDEP}] )
profile? ( dev-python/yappi[${PYTHON_USEDEP}] )
vim-syntax? ( app-vim/salt-vim )"
DEPEND="dev-python/setuptools[${PYTHON_USEDEP}]
test? (
>=dev-python/pytest-salt-2018.12.8[${PYTHON_USEDEP}]
>=dev-python/jsonschema-3.0[${PYTHON_USEDEP}]
dev-python/pytest-helpers-namespace[${PYTHON_USEDEP}]
dev-python/psutil[${PYTHON_USEDEP}]
dev-python/pytest[${PYTHON_USEDEP}]
dev-python/pytest-catchlog[${PYTHON_USEDEP}]
dev-python/pip[${PYTHON_USEDEP}]
dev-python/virtualenv[${PYTHON_USEDEP}]
>=dev-python/mock-2.0.0[${PYTHON_USEDEP}]
>=dev-python/boto-2.32.1[${PYTHON_USEDEP}]
!x86? ( >=dev-python/boto3-1.2.1[${PYTHON_USEDEP}] )
>=dev-python/moto-0.3.6[${PYTHON_USEDEP}]
>=dev-python/SaltTesting-2016.5.11[${PYTHON_USEDEP}]
>=dev-python/libcloud-0.14.0[${PYTHON_USEDEP}]
${RDEPEND}
)"
DOCS=( README.rst AUTHORS )
REQUIRED_USE="|| ( raet zeromq )"
RESTRICT="!test? ( test ) x86? ( test )"
PATCHES=(
"${FILESDIR}/salt-2017.7.0-dont-realpath-tmpdir.patch"
"${FILESDIR}/salt-2019.2.0-tests.patch"
"${FILESDIR}/salt-2019.2.0-skip-tests-that-oom-machine.patch"
"${FILESDIR}/salt-2019.2.2-newer-deps.patch"
"${FILESDIR}/salt-2019.2.2-workaround-broken-mock-on-py2.patch"
)
python_prepare() {
# remove tests with external dependencies that may not be available
rm tests/unit/{test_zypp_plugins.py,utils/test_extend.py} || die
rm tests/unit/modules/test_{file,boto_{vpc,secgroup,elb}}.py || die
rm tests/unit/states/test_boto_vpc.py || die
# allow the use of the renamed msgpack
sed -i '/^msgpack/d' requirements/base.txt || die
}
python_install_all() {
local svc
USE_SETUPTOOLS=1 distutils-r1_python_install_all
for svc in minion master syndic api; do
newinitd "${FILESDIR}"/${svc}-initd-4 salt-${svc}
newconfd "${FILESDIR}"/${svc}-confd-1 salt-${svc}
systemd_dounit "${FILESDIR}"/salt-${svc}.service
done
insinto /etc/${PN}
doins -r conf/*
}
python_test() {
local tempdir
# testsuite likes lots of files
ulimit -n 3072 || die
# ${T} is too long a path for the tests to work
tempdir="$(mktemp -du --tmpdir=/tmp salt-XXX)"
mkdir "${T}/$(basename "${tempdir}")"
mkdir "${BUILD_DIR}"/../{templates,conf/cloud.{providers,profiles,maps}.d} || die
(
cleanup() {
rm -f "${tempdir}"
rmdir "${BUILD_DIR}"/../{templates,conf/cloud.{providers,profiles,maps}.d} || die
}
trap cleanup EXIT
addwrite "${tempdir}"
ln -s "$(realpath --relative-to=/tmp "${T}/$(basename "${tempdir}")")" "${tempdir}"
USE_SETUPTOOLS=1 SHELL="/bin/bash" \
TMPDIR="${tempdir}" \
${EPYTHON} tests/runtests.py \
--unit-tests --no-report --verbose
) || die "testing failed"
}

Binary file not shown.

@ -1,2 +1 @@
DIST libarchive-3.4.0.tar.gz 6908093 BLAKE2B 6da5798ceabb542d8b877b3d672f6e6431ed7340ec0160a5d8cef28591b516b55d426002379eddc632a478bfd2f034a358f8552f55c9f066fd7f5c31c218b462 SHA512 2f9e2a551a6bcab56fb1a030b5d656df7299a3d151465aa02f0420d344d2fada49dee4755b3abff9095f62519e14dc9af8afa1695ecc6d5fdb4f0b28e6ede852
DIST libarchive-3.4.2.tar.gz 6979481 BLAKE2B eea90e4751ae487cd1a9b0eecd16598d1b81ffff665ae97a160e3858c8ffe60b82003f081af644f3f32260d0e1d3f3077240125e8279bf8111a79d93c68ac25d SHA512 a8922e54f2e985889d205ee8a0594c1d30dad950438b602a5be6bb1b274a735ad20a48ed484efd458013a0810d26ee4ae76e3a6c820823243d24ea0593ed7021

@ -1,160 +0,0 @@
From 64333cef68d7bcc67bef6ecf177fbeaa549b9139 Mon Sep 17 00:00:00 2001
From: Martin Matuska <martin@matuska.org>
Date: Sat, 29 Jun 2019 00:20:58 +0200
Subject: [PATCH] Unbreak compilation without zlib
Fixes #1214
---
libarchive/archive_read_support_filter_gzip.c | 54 ++++++++++++-------
libarchive/test/test_read_format_raw.c | 4 ++
2 files changed, 39 insertions(+), 19 deletions(-)
diff --git a/libarchive/archive_read_support_filter_gzip.c b/libarchive/archive_read_support_filter_gzip.c
index 458b6f729..9fa9e2b0d 100644
--- a/libarchive/archive_read_support_filter_gzip.c
+++ b/libarchive/archive_read_support_filter_gzip.c
@@ -131,12 +131,20 @@ archive_read_support_filter_gzip(struct archive *_a)
*/
static ssize_t
peek_at_header(struct archive_read_filter *filter, int *pbits,
- struct private_data *state)
+#ifdef HAVE_ZLIB_H
+ struct private_data *state
+#else
+ void *state
+#endif
+ )
{
const unsigned char *p;
ssize_t avail, len;
int bits = 0;
int header_flags;
+#ifndef HAVE_ZLIB_H
+ (void)state; /* UNUSED */
+#endif
/* Start by looking at the first ten bytes of the header, which
* is all fixed layout. */
@@ -153,8 +161,10 @@ peek_at_header(struct archive_read_filter *filter, int *pbits,
bits += 3;
header_flags = p[3];
/* Bytes 4-7 are mod time in little endian. */
+#ifdef HAVE_ZLIB_H
if (state)
state->mtime = archive_le32dec(p + 4);
+#endif
/* Byte 8 is deflate flags. */
/* XXXX TODO: return deflate flags back to consume_header for use
in initializing the decompressor. */
@@ -171,7 +181,9 @@ peek_at_header(struct archive_read_filter *filter, int *pbits,
/* Null-terminated optional filename. */
if (header_flags & 8) {
+#ifdef HAVE_ZLIB_H
ssize_t file_start = len;
+#endif
do {
++len;
if (avail < len)
@@ -181,11 +193,13 @@ peek_at_header(struct archive_read_filter *filter, int *pbits,
return (0);
} while (p[len - 1] != 0);
+#ifdef HAVE_ZLIB_H
if (state) {
/* Reset the name in case of repeat header reads. */
free(state->name);
state->name = strdup((const char *)&p[file_start]);
}
+#endif
}
/* Null-terminated optional comment. */
@@ -236,24 +250,6 @@ gzip_bidder_bid(struct archive_read_filter_bidder *self,
return (0);
}
-static int
-gzip_read_header(struct archive_read_filter *self, struct archive_entry *entry)
-{
- struct private_data *state;
-
- state = (struct private_data *)self->data;
-
- /* A mtime of 0 is considered invalid/missing. */
- if (state->mtime != 0)
- archive_entry_set_mtime(entry, state->mtime, 0);
-
- /* If the name is available, extract it. */
- if (state->name)
- archive_entry_set_pathname(entry, state->name);
-
- return (ARCHIVE_OK);
-}
-
#ifndef HAVE_ZLIB_H
/*
@@ -277,6 +273,24 @@ gzip_bidder_init(struct archive_read_filter *self)
#else
+static int
+gzip_read_header(struct archive_read_filter *self, struct archive_entry *entry)
+{
+ struct private_data *state;
+
+ state = (struct private_data *)self->data;
+
+ /* A mtime of 0 is considered invalid/missing. */
+ if (state->mtime != 0)
+ archive_entry_set_mtime(entry, state->mtime, 0);
+
+ /* If the name is available, extract it. */
+ if (state->name)
+ archive_entry_set_pathname(entry, state->name);
+
+ return (ARCHIVE_OK);
+}
+
/*
* Initialize the filter object.
*/
@@ -306,7 +320,9 @@ gzip_bidder_init(struct archive_read_filter *self)
self->read = gzip_filter_read;
self->skip = NULL; /* not supported */
self->close = gzip_filter_close;
+#ifdef HAVE_ZLIB_H
self->read_header = gzip_read_header;
+#endif
state->in_stream = 0; /* We're not actually within a stream yet. */
diff --git a/libarchive/test/test_read_format_raw.c b/libarchive/test/test_read_format_raw.c
index 0dac8bfba..3961723b4 100644
--- a/libarchive/test/test_read_format_raw.c
+++ b/libarchive/test/test_read_format_raw.c
@@ -36,7 +36,9 @@ DEFINE_TEST(test_read_format_raw)
const char *reffile1 = "test_read_format_raw.data";
const char *reffile2 = "test_read_format_raw.data.Z";
const char *reffile3 = "test_read_format_raw.bufr";
+#ifdef HAVE_ZLIB_H
const char *reffile4 = "test_read_format_raw.data.gz";
+#endif
/* First, try pulling data out of an uninterpretable file. */
extract_reference_file(reffile1);
@@ -119,6 +121,7 @@ DEFINE_TEST(test_read_format_raw)
assertEqualIntA(a, ARCHIVE_OK, archive_read_close(a));
assertEqualInt(ARCHIVE_OK, archive_read_free(a));
+#ifdef HAVE_ZLIB_H
/* Fourth, try with gzip which has metadata. */
extract_reference_file(reffile4);
assert((a = archive_read_new()) != NULL);
@@ -144,4 +147,5 @@ DEFINE_TEST(test_read_format_raw)
assertEqualIntA(a, ARCHIVE_EOF, archive_read_next_header(a, &ae));
assertEqualIntA(a, ARCHIVE_OK, archive_read_close(a));
assertEqualInt(ARCHIVE_OK, archive_read_free(a));
+#endif
}

@ -1,135 +0,0 @@
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit libtool multilib-minimal toolchain-funcs
DESCRIPTION="Multi-format archive and compression library"
HOMEPAGE="https://www.libarchive.org/"
SRC_URI="https://www.libarchive.org/downloads/${P}.tar.gz"
LICENSE="BSD BSD-2 BSD-4 public-domain"
SLOT="0/13"
KEYWORDS="~alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 ~riscv s390 sh sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="acl blake2 +bzip2 +e2fsprogs expat +iconv kernel_linux libressl lz4 +lzma lzo nettle static-libs +threads xattr +zlib zstd"
RDEPEND="
acl? ( virtual/acl[${MULTILIB_USEDEP}] )
blake2? ( app-crypt/libb2[${MULTILIB_USEDEP}] )
bzip2? ( app-arch/bzip2[${MULTILIB_USEDEP}] )
expat? ( dev-libs/expat[${MULTILIB_USEDEP}] )
!expat? ( dev-libs/libxml2[${MULTILIB_USEDEP}] )
iconv? ( virtual/libiconv[${MULTILIB_USEDEP}] )
kernel_linux? (
xattr? ( sys-apps/attr[${MULTILIB_USEDEP}] )
)
!libressl? ( dev-libs/openssl:0=[${MULTILIB_USEDEP}] )
libressl? ( dev-libs/libressl:0=[${MULTILIB_USEDEP}] )
lz4? ( >=app-arch/lz4-0_p131:0=[${MULTILIB_USEDEP}] )
lzma? ( app-arch/xz-utils[threads=,${MULTILIB_USEDEP}] )
lzo? ( >=dev-libs/lzo-2[${MULTILIB_USEDEP}] )
nettle? ( dev-libs/nettle:0=[${MULTILIB_USEDEP}] )
zlib? ( sys-libs/zlib[${MULTILIB_USEDEP}] )
zstd? ( app-arch/zstd[${MULTILIB_USEDEP}] )"
DEPEND="${RDEPEND}
kernel_linux? (
virtual/os-headers
e2fsprogs? ( sys-fs/e2fsprogs )
)"
PATCHES=(
"${FILESDIR}"/${PN}-3.3.3-libressl.patch
"${FILESDIR}"/${P}-without_zlib_build_fix.patch #693202
)
# Various test problems, starting with the fact that sandbox
# explodes on long paths. https://bugs.gentoo.org/598806
RESTRICT="test"
src_prepare() {
default
elibtoolize # is required for Solaris sol2_ld linker fix
}
multilib_src_configure() {
export ac_cv_header_ext2fs_ext2_fs_h=$(usex e2fsprogs) #354923
local myconf=(
$(use_enable acl)
$(use_enable static-libs static)
$(use_enable xattr)
$(use_with blake2 libb2)
$(use_with bzip2 bz2lib)
$(use_with expat)
$(use_with !expat xml2)
$(use_with iconv)
$(use_with lz4)
$(use_with lzma)
$(use_with lzo lzo2)
$(use_with nettle)
$(use_with zlib)
$(use_with zstd)
# Windows-specific
--without-cng
)
if multilib_is_native_abi ; then
myconf+=(
--enable-bsdcat=$(tc-is-static-only && echo static || echo shared)
--enable-bsdcpio=$(tc-is-static-only && echo static || echo shared)
--enable-bsdtar=$(tc-is-static-only && echo static || echo shared)
)
else
myconf+=(
--disable-bsdcat
--disable-bsdcpio
--disable-bsdtar
)
fi
ECONF_SOURCE="${S}" econf "${myconf[@]}"
}
multilib_src_compile() {
if multilib_is_native_abi ; then
emake
else
emake libarchive.la
fi
}
multilib_src_test() {
# Replace the default src_test so that it builds tests in parallel
multilib_is_native_abi && emake check
}
multilib_src_install() {
if multilib_is_native_abi ; then
emake DESTDIR="${D}" install
# Create symlinks for FreeBSD
if ! use prefix && [[ ${CHOST} == *-freebsd* ]]; then
# Exclude cat for the time being #589876
for bin in cpio tar; do
dosym bsd${bin} /usr/bin/${bin}
echo '.so bsd${bin}.1' > "${T}"/${bin}.1
doman "${T}"/${bin}.1
done
fi
else
local install_targets=(
install-includeHEADERS
install-libLTLIBRARIES
install-pkgconfigDATA
)
emake DESTDIR="${D}" "${install_targets[@]}"
fi
# Libs.private: should be used from libarchive.pc instead
find "${ED}" -type f -name "*.la" -delete || die
}
multilib_src_install_all() {
cd "${S}" || die
einstalldocs
}

@ -12,7 +12,7 @@ SRC_URI="mirror://sourceforge/sevenzip/${MY_P}.tar.bz2 -> ${P}.tar.bz2"
LICENSE="public-domain"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos"
KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ia64 ~mips ppc ppc64 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos"
IUSE="doc"
S=${WORKDIR}

@ -1,3 +1,3 @@
DIST XADMaster-1.10.6.tar.gz 2064628 BLAKE2B 34203e5280a8e450db616849a953eb9f5147c8fe2922fabdcfce8585fd4bbe2c3aad76921368818e546d60d64b9c59de942cb63008edec83efa29ce4f5caae7f SHA512 f6e51943fd3ced9d0a0a2189db0a7a45d7f59e8109e78406b8c434f568fb53d791613e51437996cb1debae7d4490cdfabc9fa1fdfcc621ad97a43770af6b13e8
DIST unar1.10.1_src.zip 2552535 BLAKE2B 678c90dae6572cf9de6f90d044de650d82293df3918eb298de27fe5a557efdda1c1da284c6829c667bb2812033627fcb1a31bf22318d277e9467ca965435f6b2 SHA512 2755f1e2dcca68912f748587f195887d785d5c30933ca0d7a7de1dd35c6c1c115571e49f462fe15722e1b34560f02503382727e1df19a1f23d4a3cc75750434e
DIST XADMaster-1.10.7.tar.gz 2064770 BLAKE2B f6119dfb46f3d617fafb5847f41d6c0f3e5e87c8cd0763cd8e5986fae1d5b1c6e6761e9e7e4fa84125003979151b2b34d35ff47dc9be3271107cf53f1be22644 SHA512 3447b6d8f3f4fa5eea93c6628a1633017da6ff09c580d5ce4fd422027b3b79acbf38d6e41a059806d1e60eb25a9d66889938b32599168dc2c0ca648e1c1976b1
DIST universal-detector-1.1.tar.gz 196274 BLAKE2B d84dc1f850031213d88c288341edcbb588197f23ae0d10632ed129e73e4cc2b7670c8c862bba2165fcc7421c265e4dc3e791ea188e3d2b647bd1ab9b428bb866 SHA512 e514670b3d37b2472ed3e9cb0fdc3298a8479772264b7573411f104be554222bec2e01f73e1f35db95620fe785bee2dcf9ddc9c2b1f4ff6b522fa64d14d020f5

@ -1,54 +0,0 @@
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
inherit toolchain-funcs
DESCRIPTION="unpacker for various archiving formats, e.g. rar v3"
HOMEPAGE="https://unarchiver.c3.cx/"
SRC_URI="https://unarchiver.c3.cx/downloads/${PN}${PV}_src.zip"
LICENSE="LGPL-2.1"
SLOT="0"
KEYWORDS="amd64"
IUSE=""
RDEPEND="
app-arch/bzip2:=
dev-libs/icu:=
gnustep-base/gnustep-base
sys-libs/zlib:=
"
DEPEND="${RDEPEND}
app-arch/unzip
>=gnustep-base/gnustep-make-2.6.0[native-exceptions]
sys-devel/gcc[objc]
"
S="${WORKDIR}/The Unarchiver/XADMaster"
src_prepare() {
default
# avoid jobserver warning, upstream bug:
# https://bitbucket.org/WAHa_06x36/theunarchiver/issues/918/dont-call-make-from-makefile
sed -i -e 's:make:$(MAKE):g' Makefile.linux || die
}
src_compile() {
emake -f Makefile.linux \
AR="$(tc-getAR)" \
CC="$(tc-getCC)" \
CXX="$(tc-getCXX)" \
OBJCC="$(tc-getCC)" \
CFLAGS="${CFLAGS}" \
CXXFLAGS="${CXXFLAGS}" \
OBJCFLAGS="${CFLAGS}" \
LD="$(tc-getCXX)" \
LDFLAGS="-Wl,--whole-archive -fexceptions -fgnu-runtime ${LDFLAGS}"
}
src_install() {
dobin {ls,un}ar
doman ../Extra/{ls,un}ar.1
}

@ -0,0 +1,60 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit bash-completion-r1 toolchain-funcs
DESCRIPTION="Unpacker for various archiving formats, e.g. rar v3"
HOMEPAGE="https://unarchiver.c3.cx/"
SRC_URI="
https://github.com/MacPaw/XADMaster/archive/v${PV}/XADMaster-${PV}.tar.gz
https://github.com/MacPaw/universal-detector/archive/1.1/universal-detector-1.1.tar.gz
"
LICENSE="LGPL-2.1"
SLOT="0"
KEYWORDS="~amd64"
BDEPEND="
sys-devel/gcc[objc]
"
RDEPEND="
app-arch/bzip2:=
dev-libs/icu:=
gnustep-base/gnustep-base
media-sound/wavpack
sys-libs/zlib
"
DEPEND="${RDEPEND}
${BDEPEND}
gnustep-base/gnustep-make[native-exceptions]
"
S="${WORKDIR}/XADMaster-${PV}"
src_prepare() {
default
# avoid jobserver warning "make[1]: warning: jobserver unavailable: using -j1"
sed -i -e 's:make:$(MAKE):g' Makefile.linux || die
mv "${WORKDIR}/universal-detector-1.1" "${WORKDIR}/UniversalDetector" || die
}
src_compile() {
emake -f Makefile.linux \
AR="$(tc-getAR)" \
CC="$(tc-getCC)" \
CXX="$(tc-getCXX)" \
OBJCC="$(tc-getCC)" \
CFLAGS="${CFLAGS}" \
CXXFLAGS="${CXXFLAGS}" \
OBJCFLAGS="${CFLAGS}" \
LD="$(tc-getCXX)" \
LDFLAGS="-Wl,--whole-archive -fexceptions -fgnu-runtime ${LDFLAGS}"
}
src_install() {
dobin {ls,un}ar
doman Extra/{ls,un}ar.1
dobashcomp Extra/{ls,un}ar.bash_completion
}

Binary file not shown.

@ -1 +1,2 @@
DIST borgbackup-1.1.10.tar.gz 3610011 BLAKE2B 9c13d89a0441b5403019ed24b2f36fd55f4d133219b68802b79c76f5086324f4a249124a89c67049fecbadb78d5dae64b007ed6c53a579c115ce248db3e83054 SHA512 9315335208f10427e3105e10819817d15fd05171479252903bd51eaacb016bc3ff792d505b9203ce0b9b41ec350472bdb9a23b0128e7fe156aaa47c1608451c0
DIST borgbackup-1.1.11.tar.gz 3718055 BLAKE2B ea03d538bd7936cc12705f73c3f8e63dc28167f1930e84bdd04fc13bcc34c2b9f35e7e6ed945ba20b647dbdefe12c66c04645414c7efc974e53a312e3dff6991 SHA512 cf629f31d38d27ce6350670ff27b4937f2f30eddf9e0cd9209cd9d57a4ffa653f5a291ea1e1c79614dd2c08bcf5c50bc3e4e0f222e0d3cd1bbfb2d756b4a4573

@ -0,0 +1,52 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=( python3_{6,7} )
inherit distutils-r1
if [[ ${PV} == "9999" ]] ; then
EGIT_REPO_URI="https://github.com/${PN}/borg.git"
inherit git-r3
else
SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
KEYWORDS="~amd64 ~x86"
fi
DESCRIPTION="Deduplicating backup program with compression and authenticated encryption"
HOMEPAGE="https://borgbackup.readthedocs.io/"
LICENSE="BSD"
SLOT="0"
IUSE="libressl"
# Unfortunately we have a file conflict with app-office/borg, bug #580402
RDEPEND="
!!app-office/borg
app-arch/lz4
virtual/acl
dev-python/llfuse[${PYTHON_USEDEP}]
~dev-python/msgpack-0.5.6[${PYTHON_USEDEP}]
dev-python/pyzmq[${PYTHON_USEDEP}]
!libressl? ( dev-libs/openssl:0= )
libressl? ( dev-libs/libressl:0= )
"
DEPEND="
dev-python/setuptools_scm[${PYTHON_USEDEP}]
dev-python/cython[${PYTHON_USEDEP}]
${RDEPEND}
"
python_prepare_all() {
rm -rf src/borg/algorithms/msgpack
eapply "${FILESDIR}"/${P}-unbundle-msgpack.patch
distutils-r1_python_prepare_all
}
src_install() {
distutils-r1_src_install
doman docs/man/*
}

@ -0,0 +1,110 @@
diff -Naur borgbackup-1.1.11.orig/setup.cfg borgbackup-1.1.11/setup.cfg
--- borgbackup-1.1.11.orig/setup.cfg 2020-03-07 18:44:15.000000000 -0500
+++ borgbackup-1.1.11/setup.cfg 2020-03-11 10:28:25.168481822 -0400
@@ -6,7 +6,7 @@
F401,F405,F811,
W504
max-line-length = 255
-exclude = build,dist,.git,.idea,.cache,.tox,docs/conf.py,src/borg/algorithms/msgpack
+exclude = build,dist,.git,.idea,.cache,.tox,docs/conf.py
[egg_info]
tag_build =
diff -Naur borgbackup-1.1.11.orig/setup.py borgbackup-1.1.11/setup.py
--- borgbackup-1.1.11.orig/setup.py 2020-03-07 18:32:06.000000000 -0500
+++ borgbackup-1.1.11/setup.py 2020-03-11 10:28:15.568759338 -0400
@@ -25,8 +25,6 @@
# True: use the shared libb2 from the system, False: use the bundled blake2 code
prefer_system_libb2 = True
-# prefer_system_msgpack is another option, but you need to set it in src/borg/helpers.py.
-
min_python = (3, 4)
my_python = sys.version_info
@@ -79,8 +77,6 @@
platform_syncfilerange_source = 'src/borg/platform/syncfilerange.pyx'
platform_darwin_source = 'src/borg/platform/darwin.pyx'
platform_freebsd_source = 'src/borg/platform/freebsd.pyx'
-msgpack_packer_source = 'src/borg/algorithms/msgpack/_packer.pyx'
-msgpack_unpacker_source = 'src/borg/algorithms/msgpack/_unpacker.pyx'
cython_c_sources = [
# these .pyx will get compiled to .c
@@ -98,12 +94,6 @@
platform_darwin_source,
]
-cython_cpp_sources = [
- # these .pyx will get compiled to .cpp
- msgpack_packer_source,
- msgpack_unpacker_source,
-]
-
try:
from Cython.Distutils import build_ext
import Cython.Compiler.Main as cython_compiler
@@ -133,8 +123,6 @@
'src/borg/platform/syncfilerange.c',
'src/borg/platform/freebsd.c',
'src/borg/platform/darwin.c',
- 'src/borg/algorithms/msgpack/_packer.cpp',
- 'src/borg/algorithms/msgpack/_unpacker.cpp',
])
super().make_distribution()
@@ -155,14 +143,12 @@
platform_freebsd_source = platform_freebsd_source.replace('.pyx', '.c')
platform_darwin_source = platform_darwin_source.replace('.pyx', '.c')
- msgpack_packer_source = msgpack_packer_source.replace('.pyx', '.cpp')
- msgpack_unpacker_source = msgpack_unpacker_source.replace('.pyx', '.cpp')
from distutils.command.build_ext import build_ext
if not on_rtd and not all(os.path.exists(path) for path in [
compress_source, crypto_ll_source, chunker_source, hashindex_source, item_source, checksums_source,
platform_posix_source, platform_linux_source, platform_syncfilerange_source, platform_freebsd_source, platform_darwin_source,
- msgpack_packer_source, msgpack_unpacker_source]):
+ ]):
raise ImportError('The GIT version of Borg needs Cython. Install Cython or use a released version.')
@@ -805,26 +791,7 @@
system_prefix=libb2_prefix, system=libb2_system,
**crypto_ext_kwargs)
- msgpack_endian = '__BIG_ENDIAN__' if (sys.byteorder == 'big') else '__LITTLE_ENDIAN__'
- msgpack_macros = [(msgpack_endian, '1')]
- msgpack_packer_ext_kwargs = dict(
- sources=[msgpack_packer_source],
- include_dirs=include_dirs,
- library_dirs=library_dirs,
- define_macros=msgpack_macros,
- language='c++',
- )
- msgpack_unpacker_ext_kwargs = dict(
- sources=[msgpack_unpacker_source],
- include_dirs=include_dirs,
- library_dirs=library_dirs,
- define_macros=msgpack_macros,
- language='c++',
- )
-
ext_modules += [
- Extension('borg.algorithms.msgpack._packer', **msgpack_packer_ext_kwargs),
- Extension('borg.algorithms.msgpack._unpacker', **msgpack_unpacker_ext_kwargs),
Extension('borg.compress', **compress_ext_kwargs),
Extension('borg.crypto.low_level', **crypto_ext_kwargs),
Extension('borg.hashindex', [hashindex_source]),
diff -Naur borgbackup-1.1.11.orig/src/borg/helpers.py borgbackup-1.1.11/src/borg/helpers.py
--- borgbackup-1.1.11.orig/src/borg/helpers.py 2020-03-07 18:32:06.000000000 -0500
+++ borgbackup-1.1.11/src/borg/helpers.py 2020-03-11 10:28:42.519980213 -0400
@@ -55,7 +55,7 @@
# any feedback related to issues caused by this will be ignored.
# - especially, it is known that msgpack 0.6.x does NOT work for borg 1.1.x.
-prefer_system_msgpack = False
+prefer_system_msgpack = True
try:
if prefer_system_msgpack:

@ -0,0 +1,50 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=( python2_7 python3_6 python3_7 )
inherit distutils-r1
DESCRIPTION="Secure backup system using gnupg to encrypt data"
HOMEPAGE="http://www.nongnu.org/duplicity/"
SRC_URI="https://code.launchpad.net/${PN}/$(ver_cut 1-2)-series/$(ver_cut 1-3)/+download/${P}.tar.gz"
LICENSE="GPL-3"
SLOT="0"
KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux ~x64-macos ~x86-macos"
IUSE="s3 test"
CDEPEND="
net-libs/librsync
app-crypt/gnupg
dev-python/fasteners[${PYTHON_USEDEP}]
"
DEPEND="${CDEPEND}
dev-python/setuptools[${PYTHON_USEDEP}]
test? (
app-arch/par2cmdline
dev-python/mock[${PYTHON_USEDEP}]
dev-python/pexpect[${PYTHON_USEDEP}]
)
"
RDEPEND="${CDEPEND}
dev-python/paramiko[${PYTHON_USEDEP}]
dev-python/future[${PYTHON_USEDEP}]
s3? ( dev-python/boto[${PYTHON_USEDEP}] )
"
RESTRICT="test"
PATCHES=(
"${FILESDIR}/${P}-fix-docs.patch"
)
python_test() {
esetup.py test
}
pkg_postinst() {
elog "Duplicity has many optional dependencies to support various backends."
elog "Currently it's up to you to install them as necessary."
}

Binary file not shown.

@ -15,23 +15,16 @@ SRC_URI="mirror://gnupg/gpgme/${P}.tar.bz2"
LICENSE="GPL-2 LGPL-2.1"
SLOT="1/11" # subslot = soname major version
KEYWORDS="~alpha amd64 arm ~arm64 hppa ia64 ~mips ppc ppc64 ~riscv s390 sh sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="common-lisp static-libs cxx python qt5"
IUSE="common-lisp static-libs +cxx python qt5"
COMMON_DEPEND=">=app-crypt/gnupg-2
RDEPEND=">=app-crypt/gnupg-2
>=dev-libs/libassuan-2.5.3:=
>=dev-libs/libgpg-error-1.29:=
python? ( ${PYTHON_DEPS} )
qt5? ( dev-qt/qtcore:5 )"
#doc? ( app-doc/doxygen[dot] )
DEPEND="${COMMON_DEPEND}
DEPEND="${RDEPEND}
qt5? ( dev-qt/qttest:5 )"
RDEPEND="${COMMON_DEPEND}
cxx? (
!<kde-apps/gpgmepp-4.14.11_pre20160611:4
!kde-apps/gpgmepp:5
!<kde-apps/kdepimlibs-4.14.10_p20160611:4
!=kde-apps/kdepimlibs-4.14.11_pre20160211*:4
)"
BDEPEND="python? ( dev-lang/swig )"
REQUIRED_USE="qt5? ( cxx ) python? ( ${PYTHON_REQUIRED_USE} )"

@ -15,23 +15,16 @@ SRC_URI="mirror://gnupg/gpgme/${P}.tar.bz2"
LICENSE="GPL-2 LGPL-2.1"
SLOT="1/11" # subslot = soname major version
KEYWORDS="~alpha amd64 arm arm64 hppa ia64 ~mips ppc ppc64 ~riscv sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="common-lisp static-libs cxx python qt5"
IUSE="common-lisp static-libs +cxx python qt5"
COMMON_DEPEND=">=app-crypt/gnupg-2
RDEPEND=">=app-crypt/gnupg-2
>=dev-libs/libassuan-2.0.2:=
>=dev-libs/libgpg-error-1.29:=
python? ( ${PYTHON_DEPS} )
qt5? ( dev-qt/qtcore:5 )"
#doc? ( app-doc/doxygen[dot] )
DEPEND="${COMMON_DEPEND}
DEPEND="${RDEPEND}
qt5? ( dev-qt/qttest:5 )"
RDEPEND="${COMMON_DEPEND}
cxx? (
!<kde-apps/gpgmepp-4.14.11_pre20160611:4
!kde-apps/gpgmepp:5
!<kde-apps/kdepimlibs-4.14.10_p20160611:4
!=kde-apps/kdepimlibs-4.14.11_pre20160211*:4
)"
BDEPEND="python? ( dev-lang/swig )"
REQUIRED_USE="qt5? ( cxx ) python? ( ${PYTHON_REQUIRED_USE} )"

@ -15,23 +15,16 @@ SRC_URI="mirror://gnupg/gpgme/${P}.tar.bz2"
LICENSE="GPL-2 LGPL-2.1"
SLOT="1/11" # subslot = soname major version
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="common-lisp static-libs cxx python qt5"
IUSE="common-lisp static-libs +cxx python qt5"
COMMON_DEPEND=">=app-crypt/gnupg-2
RDEPEND=">=app-crypt/gnupg-2
>=dev-libs/libassuan-2.5.3:=
>=dev-libs/libgpg-error-1.29:=
python? ( ${PYTHON_DEPS} )
qt5? ( dev-qt/qtcore:5 )"
#doc? ( app-doc/doxygen[dot] )
DEPEND="${COMMON_DEPEND}
DEPEND="${RDEPEND}
qt5? ( dev-qt/qttest:5 )"
RDEPEND="${COMMON_DEPEND}
cxx? (
!<kde-apps/gpgmepp-4.14.11_pre20160611:4
!kde-apps/gpgmepp:5
!<kde-apps/kdepimlibs-4.14.10_p20160611:4
!=kde-apps/kdepimlibs-4.14.11_pre20160211*:4
)"
BDEPEND="python? ( dev-lang/swig )"
REQUIRED_USE="qt5? ( cxx ) python? ( ${PYTHON_REQUIRED_USE} )"

Binary file not shown.

@ -6,7 +6,7 @@ PYTHON_COMPAT=( python3_6 )
CMAKE_MAKEFILE_GENERATOR="emake"
inherit cmake-utils eutils python-any-r1
inherit cmake-utils eutils llvm python-any-r1
if [[ ${PV} = *9999* ]]; then
inherit git-r3
EGIT_REPO_URI="https://github.com/doxygen/doxygen.git"
@ -27,7 +27,7 @@ RDEPEND="app-text/ghostscript-gpl
dev-lang/perl
media-libs/libpng:0=
virtual/libiconv
clang? ( >=sys-devel/clang-4.0.0:= )
clang? ( <sys-devel/clang-10:= )
dot? (
media-gfx/graphviz
media-libs/freetype
@ -67,7 +67,10 @@ PATCHES=(
DOCS=( LANGUAGE.HOWTO README.md )
LLVM_MAX_SLOT=9
pkg_setup() {
use clang && llvm_pkg_setup
use doc && python-any-r1_pkg_setup
}

@ -6,7 +6,7 @@ PYTHON_COMPAT=( python3_6 )
CMAKE_MAKEFILE_GENERATOR="emake"
inherit cmake-utils eutils python-any-r1
inherit cmake-utils eutils llvm python-any-r1
if [[ ${PV} = *9999* ]]; then
inherit git-r3
EGIT_REPO_URI="https://github.com/doxygen/doxygen.git"
@ -28,7 +28,7 @@ RDEPEND="app-text/ghostscript-gpl
dev-lang/perl
media-libs/libpng:0=
virtual/libiconv
clang? ( >=sys-devel/clang-4.0.0:= )
clang? ( <sys-devel/clang-10:= )
dot? (
media-gfx/graphviz
media-libs/freetype
@ -68,8 +68,10 @@ PATCHES=(
)
DOCS=( LANGUAGE.HOWTO README.md )
LLVM_MAX_SLOT=9
pkg_setup() {
use clang && llvm_pkg_setup
use doc && python-any-r1_pkg_setup
}

@ -6,7 +6,7 @@ PYTHON_COMPAT=( python3_{6,7,8} )
CMAKE_MAKEFILE_GENERATOR="emake"
inherit cmake-utils eutils python-any-r1
inherit cmake-utils eutils llvm python-any-r1
if [[ ${PV} = *9999* ]]; then
inherit git-r3
EGIT_REPO_URI="https://github.com/doxygen/doxygen.git"
@ -28,7 +28,7 @@ RDEPEND="app-text/ghostscript-gpl
dev-lang/perl
media-libs/libpng:0=
virtual/libiconv
clang? ( >=sys-devel/clang-4.0.0:= )
clang? ( <sys-devel/clang-10:= )
dot? (
media-gfx/graphviz
media-libs/freetype
@ -66,7 +66,10 @@ PATCHES=(
DOCS=( LANGUAGE.HOWTO README.md )
LLVM_MAX_SLOT=9
pkg_setup() {
use clang && llvm_pkg_setup
use doc && python-any-r1_pkg_setup
}

Binary file not shown.

@ -1 +1,2 @@
DIST diskimage-builder-2.33.0.tar.gz 434041 BLAKE2B 16d14c68e7a54b785426516ecced4adb53b4e84f36d36846732ef7c4823644375373249ceacd1371e39262ebc9050f2f86184718dc3fb17b44eaa20f561410c0 SHA512 125bdcc0a2d4249918485115c49482746e4f86cb7883d3689afd4288a0d18ca97bcb669b811034ccb159879520172ca37bd9f9d7ba4ea509f788be0f3cf2259b
DIST diskimage-builder-2.34.0.tar.gz 436267 BLAKE2B b234385fedb48ec32c7fb8b684bd5531e04e342b237cc2090bd69742774a58868a1021767fb281a06cff1507d7d0c109ecb26caea61d0075ddf1a0fff9b1b48b SHA512 ddad45d57fc59c64a07276492354a7ea6d6aea76e300f1fce202208159a285c51dfc851f6630287b19c9f5685315cdcab1125e37cea90a92c361ea38e82a5a33

@ -0,0 +1,39 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=( python3_{6,7} )
inherit distutils-r1
DESCRIPTION="Golden Disk Image builder."
HOMEPAGE="http://docs.openstack.org/developer/diskimage-builder/"
if [[ ${PV} == 9999* ]]; then
inherit git-r3
EGIT_REPO_URI="https://opendev.org/openstack/diskimage-builder.git"
else
SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
KEYWORDS="~amd64 ~arm64 ~x86 ~amd64-linux ~x86-linux"
fi
LICENSE="Apache-2.0"
SLOT="0"
IUSE=""
CDEPEND=">=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
!~dev-python/pbr-2.1.0[${PYTHON_USEDEP}]"
DEPEND="${CDEPEND}
dev-python/setuptools[${PYTHON_USEDEP}]"
RDEPEND="${CDEPEND}
>=dev-python/Babel-2.3.4[${PYTHON_USEDEP}]
!~dev-python/Babel-2.4.0[${PYTHON_USEDEP}]
>=dev-python/networkx-1.10[${PYTHON_USEDEP}]
>=dev-python/pyyaml-3.12[${PYTHON_USEDEP}]
>=dev-python/six-1.10.0[${PYTHON_USEDEP}]
>=dev-python/stevedore-1.20.0[${PYTHON_USEDEP}]
app-emulation/qemu
sys-block/parted
sys-fs/multipath-tools
sys-fs/dosfstools
sys-apps/gptfdisk
!dev-python/dib-utils[${PYTHON_USEDEP}]"

@ -41,11 +41,15 @@ src_prepare() {
# Disable installation of python modules here, since those are
# installed by separate ebuilds.
sed -e '/^GIT_.*/d' \
-e 's:GO111MODULE=off:GO111MODULE=on:' \
-e 's/$(GO) build/$(GO) build -v -work -x/' \
-e 's/^\(install:.*\) install\.python$/\1/' \
-i Makefile || die
local makefile_sed_args=(
-e '/^GIT_.*/d'
-e 's/$(GO) build/$(GO) build -v -work -x/'
-e 's/^\(install:.*\) install\.python$/\1/'
)
has_version -b '>=dev-lang/go-1.14' || makefile_sed_args+=(-e 's:GO111MODULE=off:GO111MODULE=on:')
sed "${makefile_sed_args[@]}" -i Makefile || die
sed -e 's|OUTPUT="${CIRRUS_TAG:.*|OUTPUT='v${PV}'|' \
-i hack/get_release_info.sh || die

@ -1,6 +1,6 @@
DIST xen-4.11.3-upstream-patches-1.tar.xz 30200 BLAKE2B c63fd2d15efda1ae9aab534c13cd1826a87a5fbd2757f3d82461b1ef2dada0ee23dbb814328e3f8695e0819094d80584fc388536c927c386f02201d4d26a8287 SHA512 e48c60f724fa0f2d5e2bbea3d71590d7c3be2973c35c4b73ff0737f03207dcbfd7f9e43b43783bb739f7059778862693a50354178ae2fd53b04e5d39429e59cf
DIST xen-4.11.3.tar.gz 25180826 BLAKE2B 56041bcef9adec754ee21032cf849745c6011224463f73b763ea186b37460f8456cb1f10614cb51ee4d2d77f03cba311f025e8999687888d15ac59cc122cd172 SHA512 2204e490e9fc357a05983a9bf4e7345e1d364fe00400ce473988dcb9ca7d4e2b921fe10f095cbbc64248130a92d22c6f0d154dcae250a57a7f915df32e3dc436
DIST xen-4.12.2-upstream-patches-0.tar.xz 3976 BLAKE2B 4527b5699b13e1b5bed9b82b67c7a3ddfbe39dc69f63b3bb1fda81cb315c6d78a34441219b8d4ae3d95ae2bc52ef0779410b65813212fa07867061fcb2b599ac SHA512 462de147b0474ca8e051219b41b088f25eb4be3962cde399403be5fbcfd4747054f84bf8c732ba8d86c1ba1980c518b67cd8e4f342e4120dd8bf6594d185a92e
DIST xen-4.12.2-upstream-patches-1.tar.xz 17016 BLAKE2B 5bd27f6187c13b1c4792aa81c0ca8cde0d687566e0fde322e7cb249e1c8665fca0def5a137493a04598b617c46f052cf69701257ea1b97823fd1534d94cabd8f SHA512 dab5e7a3ac1a82faff3069f07945dc0b9651f90e8e87b3c342bb98a06ac244d212dc0baf8c7f1997f285b06baca9dc57d4823bfb220ca34274bd3d6d31421b02
DIST xen-4.12.2.tar.gz 26985135 BLAKE2B 530821011a6dd0ac0a99fb135ff5311eb8e975c3791818093b5e250eed7854d153de6d4340197f9b949c0ad2c3d7b2b7180deb42bc71748ff70ff6fad195269d SHA512 7d9e7921271830c9eadf1bb8eca1aec20d343ad7475b0dc3165ef6d681759e7cb70739f8d9f85622a23aef960988820e822267fb198b12ee3dd657ad6164069f
DIST xen-4.13.0-upstream-patches-0.tar.xz 11156 BLAKE2B e704a3fc1a9213a79208cf60b9972f5480214c0f050fce15245e225b67a34f90ca46e77a74c286d7aef90718295ec6968c2671b72f1994a4372bc191681d38f8 SHA512 594194021d0786016e8e214d477892c1ea721e1964729a15ab6928c3cb14b986cbc628d1522ccbf9d53fe568f680acb056d2ff2a37e64261d183589accea4983
DIST xen-4.13.0-upstream-patches-1.tar.xz 26000 BLAKE2B 0ab884f4b64f318c256d1959fde34da85e85a1d6974f00001125e29838f3f7d9b06ff767dff437635648eed1449976ff88250cbe141e9175d4430135e8923667 SHA512 f37514bf7ad92f8d8be798129c446fe9ec0d409e904f6b4971f07dd8b899dd20f40424a72106d7c50da83fed1f7097c575fbdeee06e18f9f4255bf6b2a71f08a
DIST xen-4.13.0.tar.gz 39005191 BLAKE2B cd85bfe549e20447afb8ec6b2ab33ea1893f45392c08737730d7898706748ebb96b2e842b2ff3e4af8c5d8a705e6d25a2bfb8acf0d7cc771805d0cc97757a949 SHA512 5b2ded9a2fe3f7ddf40eed1fa9858baead06233a01eb6099cc45b3c78b6c3823acfe7b731910733e87125dfa49d08c53f74c215fb1b320a92b44b87a0a105225

@ -16,7 +16,7 @@ if [[ $PV == *9999 ]]; then
SRC_URI=""
else
KEYWORDS="~amd64 ~arm -x86"
UPSTREAM_VER=0
UPSTREAM_VER=1
SECURITY_VER=
GENTOO_VER=

@ -16,7 +16,7 @@ if [[ $PV == *9999 ]]; then
SRC_URI=""
else
KEYWORDS="~amd64 ~arm -x86"
UPSTREAM_VER=0
UPSTREAM_VER=1
SECURITY_VER=
GENTOO_VER=

Binary file not shown.

@ -3,9 +3,9 @@
EAPI="6"
PYTHON_COMPAT=( python2_7 )
USE_RUBY="ruby24"
USE_RUBY="ruby25 ruby26 ruby27"
inherit autotools python-single-r1 ruby-single
inherit autotools python-single-r1 ruby-utils
DESCRIPTION="Japanese handwriting recognition engine"
HOMEPAGE="http://tomoe.osdn.jp/"
@ -17,17 +17,7 @@ KEYWORDS="amd64 x86"
IUSE="hyperestraier mysql python ruby ${USE_RUBY//ruby/ruby_targets_ruby} static-libs subversion"
RESTRICT="test"
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )
ruby? ( || ( ${USE_RUBY//ruby/ruby_targets_ruby} ) )"
_ruby_set_globals() {
local ruby
for ruby in ${USE_RUBY}; do
RUBY_USEDEP="${RUBY_USEDEP}ruby_targets_${ruby}?,"
done
RUBY_USEDEP="${RUBY_USEDEP%,}"
}
_ruby_set_globals
unset -f _ruby_set_globals
ruby? ( ^^ ( ${USE_RUBY//ruby/ruby_targets_ruby} ) )"
RDEPEND="dev-libs/glib:2
hyperestraier? ( app-text/hyperestraier )
@ -40,8 +30,12 @@ RDEPEND="dev-libs/glib:2
')
)
ruby? (
${RUBY_DEPS}
dev-ruby/ruby-glib2[${RUBY_USEDEP}]
$(for ruby in ${USE_RUBY}; do
echo "ruby_targets_${ruby}? (
$(_ruby_implementation_depend "${ruby}")
dev-ruby/ruby-glib2[ruby_targets_${ruby}]
)"
done)
)
subversion? ( dev-vcs/subversion )"
DEPEND="${RDEPEND}
@ -75,7 +69,7 @@ src_prepare() {
src_configure() {
local ruby
for ruby in ${RUBY_TARGETS_PREFERENCE}; do
for ruby in ${USE_RUBY}; do
if use ruby_targets_${ruby}; then
break
fi
@ -85,7 +79,7 @@ src_configure() {
$(use_enable ruby dict-ruby) \
$(use_enable static-libs static) \
$(use_with python python "") \
$(use_with ruby ruby "$(type -p ${ruby})") \
$(use_with ruby ruby "$(type -P ${ruby})") \
--with-svn-include="${EPREFIX}"/usr/include \
--with-svn-lib="${EPREFIX}"/usr/$(get_libdir)
}

Binary file not shown.

@ -1 +1,2 @@
DIST todo-2.10.tar.gz 56509 BLAKE2B ec89d12506b5025bab8d05bab1122d48ef2e9edb811c4091c1ff96b4b18c2ced54026d3d908a565278804c15c6fbde8aef3ae5a0cb23d4b12bb36133fce5bb2c SHA512 b14d9d13948836d971f72b941770e8e2c59d171d35f074205900619c5c3efd7ca0a482887046c1865890afb6595fe27c69677c54ea5824163d291e16fa5329d3
DIST todo-2.11.0.tar.gz 712455 BLAKE2B f9d0fa53712a49c2f6ee94c02a62c16b8184734f7bb0c9354db9d640e2f619c75e3b3468065cb51204c7872f1f155bda51b9e3387f62f0f478f80f6a99f199b4 SHA512 5500ed1aa10eceaaa3e5116605eed4f4228337fdc0f2ceaa5b889753a60576918c0953adbfbf80c40008d6dfdf854e8a538103bfed4d1015aa1c5a9876c2e47c

@ -0,0 +1,15 @@
diff --git a/todo_completion b/todo_completion
index 644be6e..964383e 100755
--- a/todo_completion
+++ b/todo_completion
@@ -85,6 +85,10 @@ _todo()
}
complete -F _todo todo.sh
+# Gentoo bug 614400
+complete -F _todo todocli
+complete -F _todo todotxt
+
# If you define an alias (e.g. "t") to todo.sh, you need to explicitly enable
# completion for it, too:
#complete -F _todo t

@ -5,6 +5,14 @@
<email>monsieurp@gentoo.org</email>
<name>Patrice Clement</name>
</maintainer>
<maintainer type="person">
<email>erkiferenc@gmail.com</email>
<name>Ferenc Erki</name>
</maintainer>
<maintainer type="project">
<email>proxy-maint@gentoo.org</email>
<name>Proxy Maintainers</name>
</maintainer>
<upstream>
<remote-id type="github">ginatrapani/todo.txt-cli</remote-id>
</upstream>

@ -0,0 +1,68 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit bash-completion-r1
DESCRIPTION="A CLI-based TODO list manager"
HOMEPAGE="http://todotxt.org"
SRC_URI="https://github.com/todotxt/${PN}.txt-cli/archive/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="GPL-3"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE="test"
RESTRICT="!test? ( test )"
RDEPEND="app-shells/bash"
PATCHES=( "${FILESDIR}/${P}-fix-bash-completion.patch" )
DOCS=( README.md CONTRIBUTING.md LICENSE todo.cfg )
S="${WORKDIR}/${PN}.txt-cli-${PV}"
src_prepare() {
default
# fix version string
sed -i -e "s/@DEV_VERSION@/${PV}/" todo.sh || die
# TODO_DIR variable is bogus
sed -i -e '/export TODO_DIR/d' todo.cfg || die
sed -i -e '4i export TODO_DIR="$HOME/.todo"' todo.cfg || die
}
src_test() {
make test || die "tests failed"
}
src_install() {
dobin "${PN}.sh"
dosym "${PN}.sh" "/usr/bin/${PN}cli"
dosym "${PN}.sh" "/usr/bin/${PN}txt"
newbashcomp "${PN}_completion" "${PN}.sh"
bashcomp_alias "${PN}.sh" "${PN}cli" "${PN}txt"
einstalldocs
}
pkg_postinst() {
einfo
einfo 'Before starting todo, make sure to create'
einfo 'a .todo directory in your home directory:'
einfo ' $ mkdir -p $HOME/.todo'
einfo
einfo 'and make sure to copy the default todo'
einfo 'configuration file in the same location:'
einfo " $ bzcat /usr/share/doc/${PF}/todo.cfg.bz2 > \$HOME/.todo/config"
einfo
einfo 'Alternatively, you can use XDG directories instead:'
einfo ' $ mkdir -p $HOME/.local/share/todo'
einfo ' $ mkdir -p $HOME/.config/todo'
einfo " $ bzcat /usr/share/doc/${PF}/todo.cfg.bz2 > \$HOME/.config/todo/config"
einfo
einfo 'You can then edit this file as you see fit.'
einfo 'Enjoy!'
einfo
}

@ -0,0 +1,30 @@
diff --git a/ttyrec.c b/ttyrec.c
index 3392f70..86a59ee 100644
--- a/ttyrec.c
+++ b/ttyrec.c
@@ -57,7 +57,9 @@
#if defined(SVR4)
#include <fcntl.h>
+#if !(defined(__FreeBSD__) || defined(__NetBSD__) || defined(__APPLE__) || defined(__linux__))
#include <stropts.h>
+#endif
#endif /* SVR4 */
#include <sys/time.h>
@@ -449,6 +451,7 @@ getslave()
perror("open(fd, O_RDWR)");
fail();
}
+#ifndef __linux__
if (isastream(slave)) {
if (ioctl(slave, I_PUSH, "ptem") < 0) {
perror("ioctl(fd, I_PUSH, ptem)");
@@ -466,6 +469,7 @@ getslave()
#endif
(void) ioctl(0, TIOCGWINSZ, (char *)&win);
}
+#endif
#else /* !SVR4 */
#ifndef HAVE_openpty
line[strlen("/dev/")] = 't';

@ -12,7 +12,10 @@ SRC_URI="http://0xcc.net/ttyrec/${P}.tar.gz"
LICENSE="BSD"
SLOT="0"
KEYWORDS="~alpha amd64 ppc ppc64 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos"
PATCHES=( "${FILESDIR}/${P}-flags.patch" )
PATCHES=(
"${FILESDIR}/${P}-flags.patch"
"${FILESDIR}/${P}-glibc-2.30.patch"
)
src_compile() {
# Bug 106530

Binary file not shown.

@ -1,9 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>monsieurp@gentoo.org</email>
</maintainer>
<!-- maintainer-needed -->
<longdescription>Calcurse is a text-based personal organizer which helps keeping
track of events and everyday tasks. It contains a calendar, a 'todo' list, and
puts your appointments in order. The user interface is configurable, and one can

Binary file not shown.

@ -0,0 +1,685 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
DESCRIPTION="Utilities for users of Gentoo Prefix"
HOMEPAGE="https://prefix.gentoo.org/"
SRC_URI=""
LICENSE="GPL-3"
SLOT="0"
[[ ${PV} == 9999 ]] ||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris ~x86-winnt"
DEPEND="
!app-portage/prefix-chain-setup
!sys-apps/prefix-chain-utils
"
BDEPEND="${DEPEND}
>sys-apps/portage-2.3.62
"
# In prefix-stack, these dependencies actually are the @system set,
# as we rely on the base prefix anyway for package management,
# which should have a proper @system set.
# See als: pkg_preinst
RDEPEND="${DEPEND}
prefix-stack? (
>=sys-apps/baselayout-prefix-2.6
sys-apps/gentoo-functions
app-portage/elt-patches
sys-devel/gnuconfig
sys-devel/gcc-config
elibc_Winnt? (
dev-libs/pthreads4w
)
)
"
S="${WORKDIR}"
my_unpack() {
local infile=$1
local outfile=${2:-${infile}}
ebegin "extracting ${outfile}"
sed -ne "/^: ${infile} /,/EOIN/{/EOIN/d;p}" "${EBUILD}" \
> "${outfile}" || die "Failed to unpack ${outfile}"
eend $?
}
src_unpack() {
if use prefix-stack ; then
my_unpack prefix-stack.bash_login
my_unpack prefix-stack.bashrc
my_unpack prefix-stack.envd.99stack
my_unpack prefix-stack-ccwrap
local editor pager
for editor in "${EDITOR}" {"${EPREFIX}","${BROOT}"}/bin/nano
do
[[ -x ${editor} ]] || continue
done
for pager in "${PAGER}" {"${EPREFIX}","${BROOT}"}/usr/bin/less
do
[[ -x ${pager} ]] || continue
done
printf '%s\n' "EDITOR=\"${editor}\"" "PAGER=\"${pager}\"" > 000fallback
else
my_unpack prefix-stack-setup
fi
my_unpack startprefix
}
my_prefixify() {
local ebash eenv
if use prefix-stack ; then
ebash="${BROOT}/bin/bash"
eenv="${BROOT}/usr/bin/env"
else
ebash="${EPREFIX}/bin/bash"
eenv="${EPREFIX}/usr/bin/env"
fi
# the @=@ prevents repoman from believing we set readonly vars
sed -e "s,@GENTOO_PORTAGE_BPREFIX@,${BROOT},g" \
-e "s,@GENTOO_PORTAGE_EPREFIX@,${EPREFIX},g" \
-e "s,@GENTOO_PORTAGE_CHOST@,${CHOST},g" \
-e "s,@GENTOO_PORTAGE_EBASH@,${ebash},g" \
-e "s,@GENTOO_PORTAGE_EENV@,${eenv},g" \
-e "s,@=@,=,g" \
-i "$@" || die
}
src_configure() {
# do not eprefixify during unpack, to allow userpatches to apply
my_prefixify *
}
src_install-prefix-stack-ccwrap() {
# install toolchain wrapper.
local wrapperdir=/usr/${CHOST}/gcc-bin/${CHOST}-${PN}/${PV}
local wrappercfg=${CHOST}-${P}
exeinto $wrapperdir
doexe prefix-stack-ccwrap
local cc
for cc in \
gcc \
g++ \
cpp \
c++ \
windres \
; do
dosym prefix-stack-ccwrap $wrapperdir/${CHOST}-${cc}
dosym ${CHOST}-${cc} $wrapperdir/${cc}
done
# LDPATH is required to keep gcc-config happy :(
cat > ./${wrappercfg} <<-EOF
GCC_PATH="${EPREFIX}$wrapperdir"
LDPATH="${EPREFIX}$wrapperdir"
EOF
insinto /etc/env.d/gcc
doins ./${wrappercfg}
}
src_install() {
if use prefix-stack; then
src_install-prefix-stack-ccwrap
insinto /etc
doins prefix-stack.bash_login
insinto /etc/bash
newins prefix-stack.bashrc bashrc
newenvd prefix-stack.envd.99stack 99stack
doenvd 000fallback
else
dobin prefix-stack-setup
fi
exeinto /
doexe startprefix
}
pkg_preinst() {
use prefix-stack || return 0
ebegin "Purging @system package set for prefix stack"
# In prefix stack we empty out the @system set defined via make.profile,
# as we may be using some normal profile, but that @system set applies
# to the base prefix only.
# Instead, we only put ourselve into the @system set, and have additional
# @system packages in our RDEPEND.
my_lsprofile() {
(
cd -P "${1:-.}" || exit 1
[[ -r ./parent ]] &&
for p in $(<parent)
do
my_lsprofile "${p}" || exit 1
done
pwd -P
)
}
local systemset="/etc/portage/profile/packages"
dodir "${systemset%/*}"
[[ -s ${EROOT}${systemset} ]] &&
grep -v "# maintained by ${PN}" \
"${EROOT}${systemset}" \
> "${ED}${systemset}"
local p
for p in $(my_lsprofile "${EPREFIX}"/etc/portage/make.profile)
do
[[ -s ${p}/${systemset##*/} ]] || continue
awk '/^[ \t]*[^-#]/{print "-" $1 " # maintained by '"${PN}-${PVR}"'"}' \
< "${p}"/packages || die
done | sort -u >> "${ED}${systemset}"
[[ ${PIPESTATUS[@]} == "0 0" ]] || die "failed to collect for ${systemset}"
echo "*${CATEGORY}/${PN} # maintained by ${PN}-${PVR}" >> "${ED}${systemset}" || die
eend $?
}
return 0
: startprefix <<'EOIN'
#!@GENTOO_PORTAGE_EBASH@
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# Fabian Groffen <grobian@gentoo.org> -- 2007-03-10
# Enters the prefix environment by starting a login shell from the
# prefix. The SHELL environment variable is elevated in order to make
# applications that start login shells to work, such as `screen`.
# if you come from a substantially polluted environment (another
# Prefix), a cleanup as follows resolves most oddities I've ever seen:
# env -i HOME=$HOME TERM=$TERM USER=$USER $SHELL -l
# hence this script starts the Prefix shell like this
if [[ ${SHELL#@GENTOO_PORTAGE_EPREFIX@} != ${SHELL} ]]
then
echo "You appear to be in prefix already (SHELL=${SHELL})" > /dev/stderr
exit -1
elif [[ ${SHELL#@GENTOO_PORTAGE_BPREFIX@} != ${SHELL} ]] &&
[[ ${EPREFIX-unset} == '@GENTOO_PORTAGE_EPREFIX@' ]]
then
echo "You appear to be in stacked prefix already (EPREFIX=${EPREFIX})" > /dev/stderr
exit -1
fi
# What is our prefix?
EPREFIX@=@'@GENTOO_PORTAGE_EPREFIX@'
BPREFIX@=@'@GENTOO_PORTAGE_BPREFIX@'
# not all systems have the same location for shells, however what it
# boils down to, is that we need to know what the shell is, and then we
# can find it in the bin dir of our prefix
for SHELL in \
"${EPREFIX}/bin/${SHELL##*/}" \
"${BPREFIX}/bin/${SHELL##*/}" \
${SHELL##*/}
do
[[ ${SHELL} == */* && -x ${SHELL} ]] && break
done
# check if the shell exists
if [[ ${SHELL} != */* ]]
then
echo "Failed to find the Prefix shell, this is probably" > /dev/stderr
echo "because you didn't emerge the shell ${SHELL}" > /dev/stderr
exit 1
fi
# set the prefix shell in the environment
export SHELL
# give a small notice
echo "Entering Gentoo Prefix ${EPREFIX}"
# start the login shell, clean the entire environment but what's needed
RETAIN="HOME=$HOME TERM=$TERM USER=$USER SHELL=$SHELL"
# PROFILEREAD is necessary on SUSE not to wipe the env on shell start
[[ -n ${PROFILEREAD} ]] && RETAIN+=" PROFILEREAD=$PROFILEREAD"
# ssh-agent is handy to keep, of if set, inherit it
[[ -n ${SSH_AUTH_SOCK} ]] && RETAIN+=" SSH_AUTH_SOCK=$SSH_AUTH_SOCK"
# if we're on some X terminal, makes sense to inherit that too
[[ -n ${DISPLAY} ]] && RETAIN+=" DISPLAY=$DISPLAY"
if [[ -d /proc/registry ]]; then # we're on Cygwin
# crucial to Windows but cannot be restored, see
# https://cygwin.com/ml/cygwin/2019-08/msg00072.html
[[ -n ${SYSTEMDRIVE} ]] && RETAIN+=" SYSTEMDRIVE=$SYSTEMDRIVE"
# COMSPEC is to native Windows what SHELL is to *nix
[[ -n ${COMSPEC} ]] && RETAIN+=" COMSPEC=$COMSPEC"
# some Windows programs (e.g. devenv.exe) need TMP or TEMP
[[ -n ${TEMP} ]] && RETAIN+=" TEMP=$TEMP"
fi
# do it!
if [[ ${SHELL#${EPREFIX}} != ${SHELL} ]] ; then
'@GENTOO_PORTAGE_EENV@' -i $RETAIN $SHELL -l
elif [[ ' bash ' == *" ${SHELL##*/} "* ]] ; then
# shell coming from different prefix would load it's own
# etc/profile upon -l, so we have to override
'@GENTOO_PORTAGE_EENV@' -i ${RETAIN} "${SHELL}" --rcfile "${EPREFIX}"/etc/prefix-stack.bash_login -i
else
echo "Only bash is supported with stacked Prefix (you have ${SHELL##*/}), sorry!" > /dev/stderr
exit 1
fi
# and leave a message when we exit... the shell might return non-zero
# without having real problems, so don't send alarming messages about
# that
echo "Leaving Gentoo Prefix with exit status $?"
EOIN
: prefix-stack.bashrc <<'EOIN'
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
#
# In stacked Prefix there is no bash installed, yet
# etc/bash/bashrc from base Prefix still is useful.
#
if [[ $- != *i* ]] ; then
# Shell is non-interactive, bashrc does not apply
return
fi
if [[ -r @GENTOO_PORTAGE_BPREFIX@/etc/bash/bashrc ]] ; then
source '@GENTOO_PORTAGE_BPREFIX@/etc/bash/bashrc'
# only if base Prefix does have an etc/bash/bashrc, we also
# run bashrc snippets provided by packages in stacked Prefix
for sh in '@GENTOO_PORTAGE_EPREFIX@'/etc/bash/bashrc.d/* ; do
[[ -r ${sh} ]] && source "${sh}"
done
unset sh
else
# etc/profile does expect etc/bash/bashrc to set PS1
PS1='\u@\h \w \$ '
fi
EOIN
: prefix-stack.bash_login <<'EOIN'
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
#
# In stacked Prefix there is no bash installed, so there is
# no bash able to load this Prefix' profile as login shell.
# Instead, you can specify this one as bash rcfile to mimic
# a bash login shell using this stacked Prefix profile.
#
if [[ -s '@GENTOO_PORTAGE_EPREFIX@/etc/profile' ]] ; then
. '@GENTOO_PORTAGE_EPREFIX@/etc/profile'
fi
if [[ -s ~/.bash_profile ]] ; then
. ~/.bash_profile
elif [[ -s ~/.bash_login ]] ; then
. ~/.bash_login
elif [[ -s ~/.profile ]] ; then
. ~/.profile
fi
EOIN
: prefix-stack.envd.99stack <<'EOIN'
PKG_CONFIG_PATH@=@"@GENTOO_PORTAGE_EPREFIX@/usr/lib/pkgconfig:@GENTOO_PORTAGE_EPREFIX@/usr/share/pkgconfig"
PORTAGE_CONFIGROOT@=@"@GENTOO_PORTAGE_EPREFIX@"
EPREFIX@=@"@GENTOO_PORTAGE_EPREFIX@"
EOIN
: prefix-stack-setup <<'EOIN'
#!@GENTOO_PORTAGE_EPREFIX@/bin/bash
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
PARENT_EPREFIX="@GENTOO_PORTAGE_EPREFIX@"
PARENT_CHOST="@GENTOO_PORTAGE_CHOST@"
CHILD_EPREFIX=
CHILD_PROFILE=
CHILD_CHOST=
#
# get ourselfs the functions.sh script for ebegin/eend/etc.
#
for f in \
/lib/gentoo/functions.sh \
/etc/init.d/functions.sh \
/sbin/functions.sh \
; do
if [[ -r ${PARENT_EPREFIX}${f} ]] ; then
. "${PARENT_EPREFIX}${f}"
f=found
break
fi
done
if [[ ${f} != found ]] ; then
echo "Cannot find Gentoo functions, aborting." >&2
exit 1
fi
for arg in "$@"; do
case "${arg}" in
--eprefix=*) CHILD_EPREFIX="${arg#--eprefix=}" ;;
--profile=*) CHILD_PROFILE="${arg#--profile=}" ;;
--chost=*) CHILD_CHOST="${arg#--chost=}" ;;
--help)
einfo "$0 usage:"
einfo " --eprefix=[PATH] Path to new EPREFIX to create stacked to the prefix"
einfo " where this script is installed (${PARENT_EPREFIX})"
einfo " --profile=[PATH] The absolute path to the profile to use. This path"
einfo " must point to a directory within ${PARENT_EPREFIX}"
einfo " --chost=[CHOST] The CHOST to use for the new EPREFIX, required if"
einfo " the profile does not set CHOST, or to override."
exit 0
;;
esac
done
#
# sanity check of given values
#
test -n "${CHILD_EPREFIX}" || { eerror "no eprefix argument given"; exit 1; }
test -d "${CHILD_EPREFIX}" && { eerror "${CHILD_EPREFIX} already exists"; exit 1; }
test -n "${CHILD_PROFILE}" || { eerror "no profile argument given"; exit 1; }
test -d "${CHILD_PROFILE}" || { eerror "${CHILD_PROFILE} does not exist"; exit 1; }
if [[ -z ${CHILD_CHOST} ]]
then
my_lsprofile() {
(
cd -P "${1:-.}" || exit 1
[[ -r ./parent ]] &&
for p in $(<parent)
do
my_lsprofile "${p}" || exit 1
done
pwd -P
)
}
for profile in $(my_lsprofile "${CHILD_PROFILE}") missing
do
if [[ ${profile} == missing ]]
then
eerror "profile does not set CHOST, need --chost argument"
exit 1
fi
[[ -s "${profile}/make.defaults" ]] || continue
grep -q '^[ ]*CHOST@=@' "${profile}/make.defaults" && break
done
fi
einfo "creating stacked prefix ${CHILD_EPREFIX}"
#
# functions needed below.
#
eend_exit() {
eend $1
[[ $1 != 0 ]] && exit 1
}
#
# create the directories required to bootstrap the least.
#
ebegin "creating directory structure"
(
set -e
mkdir -p "${CHILD_EPREFIX}"/var/tmp/portage
mkdir -p "${CHILD_EPREFIX}"/etc/portage/profile/use.mask
mkdir -p "${CHILD_EPREFIX}"/etc/portage/profile/use.force
mkdir -p "${CHILD_EPREFIX}"/etc/portage/env
mkdir -p "${CHILD_EPREFIX}"/etc/portage/package.env
ln -s "${PARENT_EPREFIX}"/etc/portage/repos.conf "${CHILD_EPREFIX}"/etc/portage/repos.conf
)
eend_exit $?
#
# create a make.conf and set PORTDIR and PORTAGE_TMPDIR
#
ebegin "creating make.conf"
(
set -e
echo "#"
echo "# These are sane default compiler flags, feel free to adopt them as you like."
echo "# Extending the flags is done to respect flags probably set by some profile."
echo "#"
echo "CFLAGS=\"\${CFLAGS} -O2 -pipe\""
echo "CXXFLAGS=\"${CXXFLAGS} -O2 -pipe\""
echo "MAKEOPTS=\"$(portageq envvar MAKEOPTS)\""
niceness=$(portageq envvar PORTAGE_NICENESS || true)
[[ -n ${niceness} ]] &&
echo "PORTAGE_NICENESS=\"${niceness}\""
echo
echo "# Mirrors from parent prefix."
echo "GENTOO_MIRRORS=\"$(portageq envvar GENTOO_MIRRORS || true)\""
echo
echo "# Below comes the prefix-stack setup. Only change things"
echo "# if you know exactly what you are doing!"
echo "EPREFIX=\"${CHILD_EPREFIX}\""
echo "PORTAGE_OVERRIDE_EPREFIX=\"${PARENT_EPREFIX}\""
echo "BROOT=\"${PARENT_EPREFIX}\""
echo "PORTAGE_TMPDIR=\"\${EPREFIX}/var/tmp\""
# Since EAPI 7 there is BDEPEND, which is DEPEND in EAPI up to 6.
# We do not want to pull DEPEND from EAPI <= 6, but RDEPEND only.
echo "EMERGE_DEFAULT_OPTS=\"--root-deps=rdeps\""
if [[ -n ${CHILD_CHOST} ]] ; then
echo "CHOST=\"${CHILD_CHOST}\""
fi
) > "${CHILD_EPREFIX}"/etc/portage/make.conf
eend_exit $?
ebegin "creating use.mask/prefix-stack"
printf -- '-%s\n' prefix{,-guest,-stack} > "${CHILD_EPREFIX}"/etc/portage/profile/use.mask/prefix-stack
eend_exit $?
ebegin "creating use.force/prefix-stack"
printf -- '%s\n' prefix{,-guest,-stack} > "${CHILD_EPREFIX}"/etc/portage/profile/use.force/prefix-stack
eend_exit $?
ebegin "creating env/host-cc.conf"
cat > "${CHILD_EPREFIX}"/etc/portage/env/host-cc.conf <<-EOM
CC=${PARENT_CHOST}-gcc
CXX=${PARENT_CHOST}-g++
# Inherited compiler flags from parent prefix,
# as the child prefix may have a different compiler.
CFLAGS="$(portageq envvar CFLAGS)"
CXXFLAGS="$(portageq envvar CXXFLAGS)"
EOM
eend_exit $?
ebegin "creating package.env/prefix-stack"
cat > "${CHILD_EPREFIX}"/etc/portage/package.env/prefix-stack <<-'EOM'
# merge with the parent's chost. this forces the use of the parent
# compiler, which generally would be illegal - this is an exception.
# This is required for example on winnt, because the wrapper has to
# be able to use/resolve symlinks, etc. native winnt binaries miss
# that ability, but cygwin binaries don't.
sys-devel/gcc-config host-cc.conf
sys-apps/gentoo-functions host-cc.conf
EOM
eend_exit $?
#
# create the make.profile symlinks.
#
ebegin "creating make.profile"
(
ln -s "${CHILD_PROFILE}" "${CHILD_EPREFIX}/etc/portage/make.profile"
)
eend_exit $?
#
# adjust permissions of generated files.
#
ebegin "adjusting permissions"
(
set -e
chmod 644 "${CHILD_EPREFIX}"/etc/portage/make.conf
chmod 644 "${CHILD_EPREFIX}"/etc/portage/env/host-cc.conf
chmod 644 "${CHILD_EPREFIX}"/etc/portage/package.env/prefix-stack
)
eend_exit $?
#
# now merge some basics.
#
ebegin "installing required basic packages"
(
set -e
export PORTAGE_CONFIGROOT@=@"${CHILD_EPREFIX}"
export EPREFIX@=@"${CHILD_EPREFIX}"
export PORTAGE_OVERRIDE_EPREFIX@=@"${PARENT_EPREFIX}"
# let baselayout create the directories
USE@=@"${USE} build" \
emerge --verbose --nodeps --oneshot \
'>=baselayout-prefix-2.6'
# In prefix-stack, app-portage/prefix-toolkit does
# install/update an etc/portage/profile/packages file,
# removing all @system packages from current make.profile,
# and adding itself to @system set instead.
emerge --verbose --nodeps --oneshot \
app-portage/prefix-toolkit
# In prefix-stack, prefix-toolkit does have an RDEPEND on them,
# to hold them in the @system set.
emerge --verbose --nodeps --oneshot \
sys-apps/gentoo-functions \
app-portage/elt-patches \
sys-devel/gnuconfig \
sys-devel/gcc-config
# get eventual dependencies, add to world
emerge --verbose --update --deep \
app-portage/prefix-toolkit
# select the stack wrapper profile from gcc-config
env -i PORTAGE_CONFIGROOT="${CHILD_EPREFIX}" \
"$(type -P bash)" "${CHILD_EPREFIX}"/usr/bin/gcc-config 1
)
eend_exit $?
#
# wow, all ok :)
#
ewarn
ewarn "all done. don't forget to tune ${CHILD_EPREFIX}/etc/portage/make.conf."
ewarn "to enter the new prefix, run \"${CHILD_EPREFIX}/startprefix\"."
ewarn
EOIN
: prefix-stack-ccwrap <<'EOIN'
#!@GENTOO_PORTAGE_BPREFIX@/bin/bash
if [ -r /cygdrive/. ]; then
winpath2unix() { cygpath -u "$1"; }
unixpath2win() { cygpath -w "$1"; }
fi
myself=${0##*/} # basename $0
link_dirs=()
linkopts=()
opts=()
chost="@GENTOO_PORTAGE_CHOST@"
prefix="@GENTOO_PORTAGE_EPREFIX@"
absprefix=${prefix}
if [[ ${chost} == *"-winnt"* ]]; then
# we may get called from windows binary, like pkgdata in dev-libs/icu
# in this case, PATH elements get the "/dev/fs/C/WINDOWS/SUA" prefix
absprefix=$(winpath2unix "$(unixpath2win "${absprefix}")")
fi
[[ ${myself} == *windres* ]] && mode=compile || mode=link
orig_args=("$@")
for opt in "$@"
do
if [[ ${chost} == *"-winnt"* ]]; then
# We depend on dev-libs/pthreads4w, no?
case ${opt} in
-pthread | -lpthread)
case " ${linkopts[*]} " in
*" -lpthread "*) ;;
*) linkopts=( "${linkopts[@]}" "-lpthread" ) ;;
esac
continue
;;
esac
fi
case "$opt" in
-L)
link_dirs=("${link_dirs[@]}" "-L$1")
shift
;;
-L*)
link_dirs=("${link_dirs[@]}" "${opt}")
;;
*)
case "${opt}" in
-v)
# -v done right: only use mode version if -v is the _only_
# argument on the command line.
[[ ${#orig_args[@]} -gt 1 ]] || mode=version
;;
--version) mode=version ;;
-c|-E|-S) mode=compile ;;
-print-search-dirs) mode=dirs ;;
esac
opts=("${opts[@]}" "${opt}")
;;
esac
done
# remove any path to current prefix, need base prefix only
new_path=
save_ifs=$IFS
IFS=':'
for p in $PATH
do
IFS=$save_ifs
[[ ${p#${absprefix}} != "${p}" ]] && continue
if [[ -z "${new_path}" ]]; then
new_path="${p}"
else
new_path="${new_path}:${p}"
fi
done
IFS=$save_ifs
PATH=${new_path}
pfx_comp=("-I${prefix}/include" "-I${prefix}/usr/include")
pfx_link=("-L${prefix}/usr/lib" "-L${prefix}/lib")
# binutils-config's ldwrapper understands '-R' for aix and hpux too.
pfx_link_r=("-Wl,-R,${prefix}/lib" "-Wl,-R,${prefix}/usr/lib")
case "${chost}" in
*-winnt*)
# parity (winnt) understands -rpath only ...
pfx_link_r=("-Wl,-rpath,${prefix}/lib" "-Wl,-rpath,${prefix}/usr/lib")
;;
*-linux*)
# With gcc, -isystem would avoid warning messages in installed headers,
# but that breaks with AIX host headers.
pfx_comp=("-isystem" "${prefix}/include" "-isystem" "${prefix}/usr/include")
;;
esac
# ensure we run the right chost program in base prefix
[[ ${myself} == *-*-*-* ]] || myself=${chost}-${myself#${chost}-}
case "$mode" in
link) exec "${myself}" "${link_dirs[@]}" "${pfx_link[@]}" "${opts[@]}" "${pfx_comp[@]}" "${pfx_link_r[@]}" "${linkopts[@]}" ;;
compile) exec "${myself}" "${link_dirs[@]}" "${opts[@]}" "${pfx_comp[@]}" ;;
version) exec "${myself}" "${orig_args[@]}" ;;
dirs)
"${myself}" "${orig_args[@]}" | while read line; do
if [[ "${line}" == "libraries: ="* ]]; then
echo "libraries: =${prefix}/usr/lib:${prefix}/lib:${line#"libraries: ="}"
else
echo "${line}"
fi
done
;;
*) echo "cannot infer ${myself}'s mode from comamnd line arguments"; exit 1 ;;
esac
EOIN

@ -0,0 +1,692 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
DESCRIPTION="Utilities for users of Gentoo Prefix"
HOMEPAGE="https://prefix.gentoo.org/"
SRC_URI=""
LICENSE="GPL-3"
SLOT="0"
[[ ${PV} == 9999 ]] ||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris ~x86-winnt"
DEPEND="
!app-portage/prefix-chain-setup
!sys-apps/prefix-chain-utils
"
BDEPEND="${DEPEND}
>sys-apps/portage-2.3.62
"
# In prefix-stack, these dependencies actually are the @system set,
# as we rely on the base prefix anyway for package management,
# which should have a proper @system set.
# See als: pkg_preinst
RDEPEND="${DEPEND}
prefix-stack? (
>=sys-apps/baselayout-prefix-2.6
sys-apps/gentoo-functions
app-portage/elt-patches
sys-devel/gnuconfig
sys-devel/gcc-config
elibc_Winnt? (
dev-libs/pthreads4w
)
)
"
S="${WORKDIR}"
my_unpack() {
local infile=$1
local outfile=${2:-${infile}}
ebegin "extracting ${outfile}"
sed -ne "/^: ${infile} /,/EOIN/{/EOIN/d;p}" "${EBUILD}" \
> "${outfile}" || die "Failed to unpack ${outfile}"
eend $?
}
src_unpack() {
if use prefix-stack ; then
my_unpack prefix-stack.bash_login
my_unpack prefix-stack.bashrc
my_unpack prefix-stack.envd.99stack
my_unpack prefix-stack-ccwrap
local editor pager
for editor in "${EDITOR}" {"${EPREFIX}","${BROOT}"}/bin/nano
do
[[ -x ${editor} ]] || continue
done
for pager in "${PAGER}" {"${EPREFIX}","${BROOT}"}/usr/bin/less
do
[[ -x ${pager} ]] || continue
done
printf '%s\n' "EDITOR=\"${editor}\"" "PAGER=\"${pager}\"" > 000fallback
else
my_unpack prefix-stack-setup
fi
my_unpack startprefix
}
my_prefixify() {
local ebash eenv
if use prefix-stack ; then
ebash="${BROOT}/bin/bash"
eenv="${BROOT}/usr/bin/env"
else
ebash="${EPREFIX}/bin/bash"
eenv="${EPREFIX}/usr/bin/env"
fi
# the @=@ prevents repoman from believing we set readonly vars
sed -e "s,@GENTOO_PORTAGE_BPREFIX@,${BROOT},g" \
-e "s,@GENTOO_PORTAGE_EPREFIX@,${EPREFIX},g" \
-e "s,@GENTOO_PORTAGE_CHOST@,${CHOST},g" \
-e "s,@GENTOO_PORTAGE_EBASH@,${ebash},g" \
-e "s,@GENTOO_PORTAGE_EENV@,${eenv},g" \
-e "s,@=@,=,g" \
-i "$@" || die
}
src_configure() {
# do not eprefixify during unpack, to allow userpatches to apply
my_prefixify *
}
src_install-prefix-stack-ccwrap() {
# install toolchain wrapper.
local wrapperdir=/usr/${CHOST}/gcc-bin/${CHOST}-${PN}/${PV}
local wrappercfg=${CHOST}-${P}
exeinto $wrapperdir
doexe prefix-stack-ccwrap
local cc
for cc in \
gcc \
g++ \
cpp \
c++ \
windres \
; do
dosym prefix-stack-ccwrap $wrapperdir/${CHOST}-${cc}
dosym ${CHOST}-${cc} $wrapperdir/${cc}
done
# LDPATH is required to keep gcc-config happy :(
cat > ./${wrappercfg} <<-EOF
GCC_PATH="${EPREFIX}$wrapperdir"
LDPATH="${EPREFIX}$wrapperdir"
EOF
insinto /etc/env.d/gcc
doins ./${wrappercfg}
}
src_install() {
if use prefix-stack; then
src_install-prefix-stack-ccwrap
insinto /etc
doins prefix-stack.bash_login
insinto /etc/bash
newins prefix-stack.bashrc bashrc
newenvd prefix-stack.envd.99stack 99stack
doenvd 000fallback
else
dobin prefix-stack-setup
fi
exeinto /
doexe startprefix
}
pkg_preinst() {
use prefix-stack || return 0
ebegin "Purging @system package set for prefix stack"
# In prefix stack we empty out the @system set defined via make.profile,
# as we may be using some normal profile, but that @system set applies
# to the base prefix only.
# Instead, we only put ourselve into the @system set, and have additional
# @system packages in our RDEPEND.
my_lsprofile() {
(
cd -P "${1:-.}" || exit 1
[[ -r ./parent ]] &&
for p in $(<parent)
do
my_lsprofile "${p}" || exit 1
done
pwd -P
)
}
local systemset="/etc/portage/profile/packages"
dodir "${systemset%/*}"
[[ -s ${EROOT}${systemset} ]] &&
grep -v "# maintained by ${PN}" \
"${EROOT}${systemset}" \
> "${ED}${systemset}"
local p
for p in $(my_lsprofile "${EPREFIX}"/etc/portage/make.profile)
do
[[ -s ${p}/${systemset##*/} ]] || continue
awk '/^[ \t]*[^-#]/{print "-" $1 " # maintained by '"${PN}-${PVR}"'"}' \
< "${p}"/packages || die
done | sort -u >> "${ED}${systemset}"
[[ ${PIPESTATUS[@]} == "0 0" ]] || die "failed to collect for ${systemset}"
echo "*${CATEGORY}/${PN} # maintained by ${PN}-${PVR}" >> "${ED}${systemset}" || die
eend $?
}
pkg_postinst() {
use prefix-stack || return 0
[[ -x ${EROOT}/usr/bin/gcc-config ]] || return 0
"${EROOT}"/usr/bin/gcc-config ${CHOST}-${P}
}
return 0
: startprefix <<'EOIN'
#!@GENTOO_PORTAGE_EBASH@
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# Fabian Groffen <grobian@gentoo.org> -- 2007-03-10
# Enters the prefix environment by starting a login shell from the
# prefix. The SHELL environment variable is elevated in order to make
# applications that start login shells to work, such as `screen`.
# if you come from a substantially polluted environment (another
# Prefix), a cleanup as follows resolves most oddities I've ever seen:
# env -i HOME=$HOME TERM=$TERM USER=$USER $SHELL -l
# hence this script starts the Prefix shell like this
if [[ ${SHELL#@GENTOO_PORTAGE_EPREFIX@} != ${SHELL} ]]
then
echo "You appear to be in prefix already (SHELL=${SHELL})" > /dev/stderr
exit -1
elif [[ ${SHELL#@GENTOO_PORTAGE_BPREFIX@} != ${SHELL} ]] &&
[[ ${EPREFIX-unset} == '@GENTOO_PORTAGE_EPREFIX@' ]]
then
echo "You appear to be in stacked prefix already (EPREFIX=${EPREFIX})" > /dev/stderr
exit -1
fi
# What is our prefix?
EPREFIX@=@'@GENTOO_PORTAGE_EPREFIX@'
BPREFIX@=@'@GENTOO_PORTAGE_BPREFIX@'
# not all systems have the same location for shells, however what it
# boils down to, is that we need to know what the shell is, and then we
# can find it in the bin dir of our prefix
for SHELL in \
"${EPREFIX}/bin/${SHELL##*/}" \
"${BPREFIX}/bin/${SHELL##*/}" \
${SHELL##*/}
do
[[ ${SHELL} == */* && -x ${SHELL} ]] && break
done
# check if the shell exists
if [[ ${SHELL} != */* ]]
then
echo "Failed to find the Prefix shell, this is probably" > /dev/stderr
echo "because you didn't emerge the shell ${SHELL}" > /dev/stderr
exit 1
fi
# set the prefix shell in the environment
export SHELL
# give a small notice
echo "Entering Gentoo Prefix ${EPREFIX}"
# start the login shell, clean the entire environment but what's needed
RETAIN="HOME=$HOME TERM=$TERM USER=$USER SHELL=$SHELL"
# PROFILEREAD is necessary on SUSE not to wipe the env on shell start
[[ -n ${PROFILEREAD} ]] && RETAIN+=" PROFILEREAD=$PROFILEREAD"
# ssh-agent is handy to keep, of if set, inherit it
[[ -n ${SSH_AUTH_SOCK} ]] && RETAIN+=" SSH_AUTH_SOCK=$SSH_AUTH_SOCK"
# if we're on some X terminal, makes sense to inherit that too
[[ -n ${DISPLAY} ]] && RETAIN+=" DISPLAY=$DISPLAY"
if [[ -d /proc/registry ]]; then # we're on Cygwin
# crucial to Windows but cannot be restored, see
# https://cygwin.com/ml/cygwin/2019-08/msg00072.html
[[ -n ${SYSTEMDRIVE} ]] && RETAIN+=" SYSTEMDRIVE=$SYSTEMDRIVE"
# COMSPEC is to native Windows what SHELL is to *nix
[[ -n ${COMSPEC} ]] && RETAIN+=" COMSPEC=$COMSPEC"
# some Windows programs (e.g. devenv.exe) need TMP or TEMP
[[ -n ${TEMP} ]] && RETAIN+=" TEMP=$TEMP"
fi
# do it!
if [[ ${SHELL#${EPREFIX}} != ${SHELL} ]] ; then
'@GENTOO_PORTAGE_EENV@' -i $RETAIN $SHELL -l
elif [[ ' bash ' == *" ${SHELL##*/} "* ]] ; then
# shell coming from different prefix would load it's own
# etc/profile upon -l, so we have to override
'@GENTOO_PORTAGE_EENV@' -i ${RETAIN} "${SHELL}" --rcfile "${EPREFIX}"/etc/prefix-stack.bash_login -i
else
echo "Only bash is supported with stacked Prefix (you have ${SHELL##*/}), sorry!" > /dev/stderr
exit 1
fi
# and leave a message when we exit... the shell might return non-zero
# without having real problems, so don't send alarming messages about
# that
echo "Leaving Gentoo Prefix with exit status $?"
EOIN
: prefix-stack.bashrc <<'EOIN'
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
#
# In stacked Prefix there is no bash installed, yet
# etc/bash/bashrc from base Prefix still is useful.
#
if [[ $- != *i* ]] ; then
# Shell is non-interactive, bashrc does not apply
return
fi
if [[ -r @GENTOO_PORTAGE_BPREFIX@/etc/bash/bashrc ]] ; then
source '@GENTOO_PORTAGE_BPREFIX@/etc/bash/bashrc'
# only if base Prefix does have an etc/bash/bashrc, we also
# run bashrc snippets provided by packages in stacked Prefix
for sh in '@GENTOO_PORTAGE_EPREFIX@'/etc/bash/bashrc.d/* ; do
[[ -r ${sh} ]] && source "${sh}"
done
unset sh
else
# etc/profile does expect etc/bash/bashrc to set PS1
PS1='\u@\h \w \$ '
fi
EOIN
: prefix-stack.bash_login <<'EOIN'
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
#
# In stacked Prefix there is no bash installed, so there is
# no bash able to load this Prefix' profile as login shell.
# Instead, you can specify this one as bash rcfile to mimic
# a bash login shell using this stacked Prefix profile.
#
if [[ -s '@GENTOO_PORTAGE_EPREFIX@/etc/profile' ]] ; then
. '@GENTOO_PORTAGE_EPREFIX@/etc/profile'
fi
if [[ -s ~/.bash_profile ]] ; then
. ~/.bash_profile
elif [[ -s ~/.bash_login ]] ; then
. ~/.bash_login
elif [[ -s ~/.profile ]] ; then
. ~/.profile
fi
EOIN
: prefix-stack.envd.99stack <<'EOIN'
PKG_CONFIG_PATH@=@"@GENTOO_PORTAGE_EPREFIX@/usr/lib/pkgconfig:@GENTOO_PORTAGE_EPREFIX@/usr/share/pkgconfig"
AT_SYS_M4DIR@=@"@GENTOO_PORTAGE_EPREFIX@/usr/share/aclocal"
PORTAGE_CONFIGROOT@=@"@GENTOO_PORTAGE_EPREFIX@"
EPREFIX@=@"@GENTOO_PORTAGE_EPREFIX@"
EOIN
: prefix-stack-setup <<'EOIN'
#!@GENTOO_PORTAGE_EPREFIX@/bin/bash
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
PARENT_EPREFIX="@GENTOO_PORTAGE_EPREFIX@"
PARENT_CHOST="@GENTOO_PORTAGE_CHOST@"
CHILD_EPREFIX=
CHILD_PROFILE=
CHILD_CHOST=
#
# get ourselfs the functions.sh script for ebegin/eend/etc.
#
for f in \
/lib/gentoo/functions.sh \
/etc/init.d/functions.sh \
/sbin/functions.sh \
; do
if [[ -r ${PARENT_EPREFIX}${f} ]] ; then
. "${PARENT_EPREFIX}${f}"
f=found
break
fi
done
if [[ ${f} != found ]] ; then
echo "Cannot find Gentoo functions, aborting." >&2
exit 1
fi
for arg in "$@"; do
case "${arg}" in
--eprefix=*) CHILD_EPREFIX="${arg#--eprefix=}" ;;
--profile=*) CHILD_PROFILE="${arg#--profile=}" ;;
--chost=*) CHILD_CHOST="${arg#--chost=}" ;;
--help)
einfo "$0 usage:"
einfo " --eprefix=[PATH] Path to new EPREFIX to create stacked to the prefix"
einfo " where this script is installed (${PARENT_EPREFIX})"
einfo " --profile=[PATH] The absolute path to the profile to use. This path"
einfo " must point to a directory within ${PARENT_EPREFIX}"
einfo " --chost=[CHOST] The CHOST to use for the new EPREFIX, required if"
einfo " the profile does not set CHOST, or to override."
exit 0
;;
esac
done
#
# sanity check of given values
#
test -n "${CHILD_EPREFIX}" || { eerror "no eprefix argument given"; exit 1; }
test -d "${CHILD_EPREFIX}" && { eerror "${CHILD_EPREFIX} already exists"; exit 1; }
test -n "${CHILD_PROFILE}" || { eerror "no profile argument given"; exit 1; }
test -d "${CHILD_PROFILE}" || { eerror "${CHILD_PROFILE} does not exist"; exit 1; }
if [[ -z ${CHILD_CHOST} ]]
then
my_lsprofile() {
(
cd -P "${1:-.}" || exit 1
[[ -r ./parent ]] &&
for p in $(<parent)
do
my_lsprofile "${p}" || exit 1
done
pwd -P
)
}
for profile in $(my_lsprofile "${CHILD_PROFILE}") missing
do
if [[ ${profile} == missing ]]
then
eerror "profile does not set CHOST, need --chost argument"
exit 1
fi
[[ -s "${profile}/make.defaults" ]] || continue
grep -q '^[ ]*CHOST@=@' "${profile}/make.defaults" && break
done
fi
einfo "creating stacked prefix ${CHILD_EPREFIX}"
#
# functions needed below.
#
eend_exit() {
eend $1
[[ $1 != 0 ]] && exit 1
}
#
# create the directories required to bootstrap the least.
#
ebegin "creating directory structure"
(
set -e
mkdir -p "${CHILD_EPREFIX}"/var/tmp/portage
mkdir -p "${CHILD_EPREFIX}"/etc/portage/profile/use.mask
mkdir -p "${CHILD_EPREFIX}"/etc/portage/profile/use.force
mkdir -p "${CHILD_EPREFIX}"/etc/portage/env
mkdir -p "${CHILD_EPREFIX}"/etc/portage/package.env
ln -s "${PARENT_EPREFIX}"/etc/portage/repos.conf "${CHILD_EPREFIX}"/etc/portage/repos.conf
)
eend_exit $?
#
# create a make.conf and set PORTDIR and PORTAGE_TMPDIR
#
ebegin "creating make.conf"
(
set -e
echo "#"
echo "# These are sane default compiler flags, feel free to adopt them as you like."
echo "# Extending the flags is done to respect flags probably set by some profile."
echo "#"
echo "CFLAGS=\"\${CFLAGS} -O2 -pipe\""
echo "CXXFLAGS=\"${CXXFLAGS} -O2 -pipe\""
echo "MAKEOPTS=\"$(portageq envvar MAKEOPTS)\""
niceness=$(portageq envvar PORTAGE_NICENESS || true)
[[ -n ${niceness} ]] &&
echo "PORTAGE_NICENESS=\"${niceness}\""
echo
echo "# Mirrors from parent prefix."
echo "GENTOO_MIRRORS=\"$(portageq envvar GENTOO_MIRRORS || true)\""
echo
echo "# Below comes the prefix-stack setup. Only change things"
echo "# if you know exactly what you are doing!"
echo "EPREFIX=\"${CHILD_EPREFIX}\""
echo "PORTAGE_OVERRIDE_EPREFIX=\"${PARENT_EPREFIX}\""
echo "BROOT=\"${PARENT_EPREFIX}\""
echo "PORTAGE_TMPDIR=\"\${EPREFIX}/var/tmp\""
# Since EAPI 7 there is BDEPEND, which is DEPEND in EAPI up to 6.
# We do not want to pull DEPEND from EAPI <= 6, but RDEPEND only.
echo "EMERGE_DEFAULT_OPTS=\"--root-deps=rdeps\""
if [[ -n ${CHILD_CHOST} ]] ; then
echo "CHOST=\"${CHILD_CHOST}\""
fi
) > "${CHILD_EPREFIX}"/etc/portage/make.conf
eend_exit $?
ebegin "creating use.mask/prefix-stack"
printf -- '-%s\n' prefix{,-guest,-stack} > "${CHILD_EPREFIX}"/etc/portage/profile/use.mask/prefix-stack
eend_exit $?
ebegin "creating use.force/prefix-stack"
printf -- '%s\n' prefix{,-guest,-stack} > "${CHILD_EPREFIX}"/etc/portage/profile/use.force/prefix-stack
eend_exit $?
ebegin "creating env/host-cc.conf"
cat > "${CHILD_EPREFIX}"/etc/portage/env/host-cc.conf <<-EOM
CC=${PARENT_CHOST}-gcc
CXX=${PARENT_CHOST}-g++
# Inherited compiler flags from parent prefix,
# as the child prefix may have a different compiler.
CFLAGS="$(portageq envvar CFLAGS)"
CXXFLAGS="$(portageq envvar CXXFLAGS)"
EOM
eend_exit $?
ebegin "creating package.env/prefix-stack"
cat > "${CHILD_EPREFIX}"/etc/portage/package.env/prefix-stack <<-'EOM'
# merge with the parent's chost. this forces the use of the parent
# compiler, which generally would be illegal - this is an exception.
# This is required for example on winnt, because the wrapper has to
# be able to use/resolve symlinks, etc. native winnt binaries miss
# that ability, but cygwin binaries don't.
sys-devel/gcc-config host-cc.conf
sys-apps/gentoo-functions host-cc.conf
EOM
eend_exit $?
#
# create the make.profile symlinks.
#
ebegin "creating make.profile"
(
ln -s "${CHILD_PROFILE}" "${CHILD_EPREFIX}/etc/portage/make.profile"
)
eend_exit $?
#
# adjust permissions of generated files.
#
ebegin "adjusting permissions"
(
set -e
chmod 644 "${CHILD_EPREFIX}"/etc/portage/make.conf
chmod 644 "${CHILD_EPREFIX}"/etc/portage/env/host-cc.conf
chmod 644 "${CHILD_EPREFIX}"/etc/portage/package.env/prefix-stack
)
eend_exit $?
#
# now merge some basics.
#
ebegin "installing required basic packages"
(
set -e
export PORTAGE_CONFIGROOT@=@"${CHILD_EPREFIX}"
export EPREFIX@=@"${CHILD_EPREFIX}"
export PORTAGE_OVERRIDE_EPREFIX@=@"${PARENT_EPREFIX}"
# let baselayout create the directories
USE@=@"${USE} build" \
emerge --verbose --nodeps --oneshot \
'>=baselayout-prefix-2.6'
# In prefix-stack, app-portage/prefix-toolkit does
# install/update an etc/portage/profile/packages file,
# removing all @system packages from current make.profile,
# and adding itself to @system set instead.
emerge --verbose --nodeps --oneshot \
app-portage/prefix-toolkit
# In prefix-stack, prefix-toolkit does have an RDEPEND on them,
# to hold them in the @system set.
emerge --verbose --nodeps --oneshot \
sys-apps/gentoo-functions \
app-portage/elt-patches \
sys-devel/gnuconfig \
sys-devel/gcc-config
# get eventual dependencies, add to world
emerge --verbose --update --deep \
app-portage/prefix-toolkit
# select the stack wrapper profile from gcc-config
env -i PORTAGE_CONFIGROOT="${CHILD_EPREFIX}" \
"$(type -P bash)" "${CHILD_EPREFIX}"/usr/bin/gcc-config 1
)
eend_exit $?
#
# wow, all ok :)
#
ewarn
ewarn "all done. don't forget to tune ${CHILD_EPREFIX}/etc/portage/make.conf."
ewarn "to enter the new prefix, run \"${CHILD_EPREFIX}/startprefix\"."
ewarn
EOIN
: prefix-stack-ccwrap <<'EOIN'
#!@GENTOO_PORTAGE_BPREFIX@/bin/bash
if [ -r /cygdrive/. ]; then
winpath2unix() { cygpath -u "$1"; }
unixpath2win() { cygpath -w "$1"; }
fi
myself=${0##*/} # basename $0
link_dirs=()
linkopts=()
opts=()
chost="@GENTOO_PORTAGE_CHOST@"
prefix="@GENTOO_PORTAGE_EPREFIX@"
absprefix=${prefix}
if [[ ${chost} == *"-winnt"* ]]; then
# we may get called from windows binary, like pkgdata in dev-libs/icu
# in this case, PATH elements get the "/dev/fs/C/WINDOWS/SUA" prefix
absprefix=$(winpath2unix "$(unixpath2win "${absprefix}")")
fi
[[ ${myself} == *windres* ]] && mode=compile || mode=link
orig_args=("$@")
for opt in "$@"
do
if [[ ${chost} == *"-winnt"* ]]; then
# We depend on dev-libs/pthreads4w, no?
case ${opt} in
-pthread | -lpthread)
case " ${linkopts[*]} " in
*" -lpthread "*) ;;
*) linkopts=( "${linkopts[@]}" "-lpthread" ) ;;
esac
continue
;;
esac
fi
case "$opt" in
-L)
link_dirs=("${link_dirs[@]}" "-L$1")
shift
;;
-L*)
link_dirs=("${link_dirs[@]}" "${opt}")
;;
*)
case "${opt}" in
-v)
# -v done right: only use mode version if -v is the _only_
# argument on the command line.
[[ ${#orig_args[@]} -gt 1 ]] || mode=version
;;
--version) mode=version ;;
-c|-E|-S) mode=compile ;;
-print-search-dirs) mode=dirs ;;
esac
opts=("${opts[@]}" "${opt}")
;;
esac
done
# remove any path to current prefix, need base prefix only
new_path=
save_ifs=$IFS
IFS=':'
for p in $PATH
do
IFS=$save_ifs
[[ ${p#${absprefix}} != "${p}" ]] && continue
if [[ -z "${new_path}" ]]; then
new_path="${p}"
else
new_path="${new_path}:${p}"
fi
done
IFS=$save_ifs
PATH=${new_path}
pfx_comp=("-I${prefix}/include" "-I${prefix}/usr/include")
pfx_link=("-L${prefix}/usr/lib" "-L${prefix}/lib")
# binutils-config's ldwrapper understands '-R' for aix and hpux too.
pfx_link_r=("-Wl,-R,${prefix}/lib" "-Wl,-R,${prefix}/usr/lib")
case "${chost}" in
*-winnt*)
# parity (winnt) understands -rpath only ...
pfx_link_r=("-Wl,-rpath,${prefix}/lib" "-Wl,-rpath,${prefix}/usr/lib")
;;
*-linux*)
# With gcc, -isystem would avoid warning messages in installed headers,
# but that breaks with AIX host headers.
pfx_comp=("-isystem" "${prefix}/include" "-isystem" "${prefix}/usr/include")
;;
esac
# ensure we run the right chost program in base prefix
[[ ${myself} == *-*-*-* ]] || myself=${chost}-${myself#${chost}-}
case "$mode" in
link) exec "${myself}" "${link_dirs[@]}" "${pfx_link[@]}" "${opts[@]}" "${pfx_comp[@]}" "${pfx_link_r[@]}" "${linkopts[@]}" ;;
compile) exec "${myself}" "${link_dirs[@]}" "${opts[@]}" "${pfx_comp[@]}" ;;
version) exec "${myself}" "${orig_args[@]}" ;;
dirs)
"${myself}" "${orig_args[@]}" | while read line; do
if [[ "${line}" == "libraries: ="* ]]; then
echo "libraries: =${prefix}/usr/lib:${prefix}/lib:${line#"libraries: ="}"
else
echo "${line}"
fi
done
;;
*) echo "cannot infer ${myself}'s mode from comamnd line arguments"; exit 1 ;;
esac
EOIN

@ -0,0 +1,693 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
DESCRIPTION="Utilities for users of Gentoo Prefix"
HOMEPAGE="https://prefix.gentoo.org/"
SRC_URI=""
LICENSE="GPL-3"
SLOT="0"
[[ ${PV} == 9999 ]] ||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris ~x86-winnt"
DEPEND="
!app-portage/prefix-chain-setup
!sys-apps/prefix-chain-utils
"
BDEPEND="${DEPEND}
>sys-apps/portage-2.3.62
"
# In prefix-stack, these dependencies actually are the @system set,
# as we rely on the base prefix anyway for package management,
# which should have a proper @system set.
# See als: pkg_preinst
RDEPEND="${DEPEND}
prefix-stack? (
>=sys-apps/baselayout-prefix-2.6
sys-apps/gentoo-functions
app-portage/elt-patches
sys-devel/gnuconfig
sys-devel/gcc-config
elibc_Winnt? (
dev-libs/pthreads4w
)
)
"
S="${WORKDIR}"
my_unpack() {
local infile=$1
local outfile=${2:-${infile}}
ebegin "extracting ${outfile}"
sed -ne "/^: ${infile} /,/EOIN/{/EOIN/d;p}" "${EBUILD}" \
> "${outfile}" || die "Failed to unpack ${outfile}"
eend $?
}
src_unpack() {
if use prefix-stack ; then
my_unpack prefix-stack.bash_login
my_unpack prefix-stack.bashrc
my_unpack prefix-stack.envd.99stack
my_unpack prefix-stack-ccwrap
local editor pager
for editor in "${EDITOR}" {"${EPREFIX}","${BROOT}"}/bin/nano
do
[[ -x ${editor} ]] || continue
done
for pager in "${PAGER}" {"${EPREFIX}","${BROOT}"}/usr/bin/less
do
[[ -x ${pager} ]] || continue
done
printf '%s\n' "EDITOR=\"${editor}\"" "PAGER=\"${pager}\"" > 000fallback
else
my_unpack prefix-stack-setup
fi
my_unpack startprefix
}
my_prefixify() {
local ebash eenv
if use prefix-stack ; then
ebash="${BROOT}/bin/bash"
eenv="${BROOT}/usr/bin/env"
else
ebash="${EPREFIX}/bin/bash"
eenv="${EPREFIX}/usr/bin/env"
fi
# the @=@ prevents repoman from believing we set readonly vars
sed -e "s,@GENTOO_PORTAGE_BPREFIX@,${BROOT},g" \
-e "s,@GENTOO_PORTAGE_EPREFIX@,${EPREFIX},g" \
-e "s,@GENTOO_PORTAGE_CHOST@,${CHOST},g" \
-e "s,@GENTOO_PORTAGE_EBASH@,${ebash},g" \
-e "s,@GENTOO_PORTAGE_EENV@,${eenv},g" \
-e "s,@=@,=,g" \
-i "$@" || die
}
src_configure() {
# do not eprefixify during unpack, to allow userpatches to apply
my_prefixify *
}
src_install-prefix-stack-ccwrap() {
# install toolchain wrapper.
local wrapperdir=/usr/${CHOST}/gcc-bin/${CHOST}-${PN}/${PV}
local wrappercfg=${CHOST}-${P}
exeinto $wrapperdir
doexe prefix-stack-ccwrap
local cc
for cc in \
gcc \
g++ \
cpp \
c++ \
windres \
; do
dosym prefix-stack-ccwrap $wrapperdir/${CHOST}-${cc}
dosym ${CHOST}-${cc} $wrapperdir/${cc}
done
# LDPATH is required to keep gcc-config happy :(
cat > ./${wrappercfg} <<-EOF
GCC_PATH="${EPREFIX}$wrapperdir"
LDPATH="${EPREFIX}$wrapperdir"
EOF
insinto /etc/env.d/gcc
doins ./${wrappercfg}
}
src_install() {
if use prefix-stack; then
src_install-prefix-stack-ccwrap
insinto /etc
doins prefix-stack.bash_login
insinto /etc/bash
newins prefix-stack.bashrc bashrc
newenvd prefix-stack.envd.99stack 99stack
doenvd 000fallback
keepdir /usr/share/aclocal
else
dobin prefix-stack-setup
fi
exeinto /
doexe startprefix
}
pkg_preinst() {
use prefix-stack || return 0
ebegin "Purging @system package set for prefix stack"
# In prefix stack we empty out the @system set defined via make.profile,
# as we may be using some normal profile, but that @system set applies
# to the base prefix only.
# Instead, we only put ourselve into the @system set, and have additional
# @system packages in our RDEPEND.
my_lsprofile() {
(
cd -P "${1:-.}" || exit 1
[[ -r ./parent ]] &&
for p in $(<parent)
do
my_lsprofile "${p}" || exit 1
done
pwd -P
)
}
local systemset="/etc/portage/profile/packages"
dodir "${systemset%/*}"
[[ -s ${EROOT}${systemset} ]] &&
grep -v "# maintained by ${PN}" \
"${EROOT}${systemset}" \
> "${ED}${systemset}"
local p
for p in $(my_lsprofile "${EPREFIX}"/etc/portage/make.profile)
do
[[ -s ${p}/${systemset##*/} ]] || continue
awk '/^[ \t]*[^-#]/{print "-" $1 " # maintained by '"${PN}-${PVR}"'"}' \
< "${p}"/packages || die
done | sort -u >> "${ED}${systemset}"
[[ ${PIPESTATUS[@]} == "0 0" ]] || die "failed to collect for ${systemset}"
echo "*${CATEGORY}/${PN} # maintained by ${PN}-${PVR}" >> "${ED}${systemset}" || die
eend $?
}
pkg_postinst() {
use prefix-stack || return 0
[[ -x ${EROOT}/usr/bin/gcc-config ]] || return 0
"${EROOT}"/usr/bin/gcc-config ${CHOST}-${P}
}
return 0
: startprefix <<'EOIN'
#!@GENTOO_PORTAGE_EBASH@
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# Fabian Groffen <grobian@gentoo.org> -- 2007-03-10
# Enters the prefix environment by starting a login shell from the
# prefix. The SHELL environment variable is elevated in order to make
# applications that start login shells to work, such as `screen`.
# if you come from a substantially polluted environment (another
# Prefix), a cleanup as follows resolves most oddities I've ever seen:
# env -i HOME=$HOME TERM=$TERM USER=$USER $SHELL -l
# hence this script starts the Prefix shell like this
if [[ ${SHELL#@GENTOO_PORTAGE_EPREFIX@} != ${SHELL} ]]
then
echo "You appear to be in prefix already (SHELL=${SHELL})" > /dev/stderr
exit -1
elif [[ ${SHELL#@GENTOO_PORTAGE_BPREFIX@} != ${SHELL} ]] &&
[[ ${EPREFIX-unset} == '@GENTOO_PORTAGE_EPREFIX@' ]]
then
echo "You appear to be in stacked prefix already (EPREFIX=${EPREFIX})" > /dev/stderr
exit -1
fi
# What is our prefix?
EPREFIX@=@'@GENTOO_PORTAGE_EPREFIX@'
BPREFIX@=@'@GENTOO_PORTAGE_BPREFIX@'
# not all systems have the same location for shells, however what it
# boils down to, is that we need to know what the shell is, and then we
# can find it in the bin dir of our prefix
for SHELL in \
"${EPREFIX}/bin/${SHELL##*/}" \
"${BPREFIX}/bin/${SHELL##*/}" \
${SHELL##*/}
do
[[ ${SHELL} == */* && -x ${SHELL} ]] && break
done
# check if the shell exists
if [[ ${SHELL} != */* ]]
then
echo "Failed to find the Prefix shell, this is probably" > /dev/stderr
echo "because you didn't emerge the shell ${SHELL}" > /dev/stderr
exit 1
fi
# set the prefix shell in the environment
export SHELL
# give a small notice
echo "Entering Gentoo Prefix ${EPREFIX}"
# start the login shell, clean the entire environment but what's needed
RETAIN="HOME=$HOME TERM=$TERM USER=$USER SHELL=$SHELL"
# PROFILEREAD is necessary on SUSE not to wipe the env on shell start
[[ -n ${PROFILEREAD} ]] && RETAIN+=" PROFILEREAD=$PROFILEREAD"
# ssh-agent is handy to keep, of if set, inherit it
[[ -n ${SSH_AUTH_SOCK} ]] && RETAIN+=" SSH_AUTH_SOCK=$SSH_AUTH_SOCK"
# if we're on some X terminal, makes sense to inherit that too
[[ -n ${DISPLAY} ]] && RETAIN+=" DISPLAY=$DISPLAY"
if [[ -d /proc/registry ]]; then # we're on Cygwin
# crucial to Windows but cannot be restored, see
# https://cygwin.com/ml/cygwin/2019-08/msg00072.html
[[ -n ${SYSTEMDRIVE} ]] && RETAIN+=" SYSTEMDRIVE=$SYSTEMDRIVE"
# COMSPEC is to native Windows what SHELL is to *nix
[[ -n ${COMSPEC} ]] && RETAIN+=" COMSPEC=$COMSPEC"
# some Windows programs (e.g. devenv.exe) need TMP or TEMP
[[ -n ${TEMP} ]] && RETAIN+=" TEMP=$TEMP"
fi
# do it!
if [[ ${SHELL#${EPREFIX}} != ${SHELL} ]] ; then
'@GENTOO_PORTAGE_EENV@' -i $RETAIN $SHELL -l
elif [[ ' bash ' == *" ${SHELL##*/} "* ]] ; then
# shell coming from different prefix would load it's own
# etc/profile upon -l, so we have to override
'@GENTOO_PORTAGE_EENV@' -i ${RETAIN} "${SHELL}" --rcfile "${EPREFIX}"/etc/prefix-stack.bash_login -i
else
echo "Only bash is supported with stacked Prefix (you have ${SHELL##*/}), sorry!" > /dev/stderr
exit 1
fi
# and leave a message when we exit... the shell might return non-zero
# without having real problems, so don't send alarming messages about
# that
echo "Leaving Gentoo Prefix with exit status $?"
EOIN
: prefix-stack.bashrc <<'EOIN'
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
#
# In stacked Prefix there is no bash installed, yet
# etc/bash/bashrc from base Prefix still is useful.
#
if [[ $- != *i* ]] ; then
# Shell is non-interactive, bashrc does not apply
return
fi
if [[ -r @GENTOO_PORTAGE_BPREFIX@/etc/bash/bashrc ]] ; then
source '@GENTOO_PORTAGE_BPREFIX@/etc/bash/bashrc'
# only if base Prefix does have an etc/bash/bashrc, we also
# run bashrc snippets provided by packages in stacked Prefix
for sh in '@GENTOO_PORTAGE_EPREFIX@'/etc/bash/bashrc.d/* ; do
[[ -r ${sh} ]] && source "${sh}"
done
unset sh
else
# etc/profile does expect etc/bash/bashrc to set PS1
PS1='\u@\h \w \$ '
fi
EOIN
: prefix-stack.bash_login <<'EOIN'
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
#
# In stacked Prefix there is no bash installed, so there is
# no bash able to load this Prefix' profile as login shell.
# Instead, you can specify this one as bash rcfile to mimic
# a bash login shell using this stacked Prefix profile.
#
if [[ -s '@GENTOO_PORTAGE_EPREFIX@/etc/profile' ]] ; then
. '@GENTOO_PORTAGE_EPREFIX@/etc/profile'
fi
if [[ -s ~/.bash_profile ]] ; then
. ~/.bash_profile
elif [[ -s ~/.bash_login ]] ; then
. ~/.bash_login
elif [[ -s ~/.profile ]] ; then
. ~/.profile
fi
EOIN
: prefix-stack.envd.99stack <<'EOIN'
PKG_CONFIG_PATH@=@"@GENTOO_PORTAGE_EPREFIX@/usr/lib/pkgconfig:@GENTOO_PORTAGE_EPREFIX@/usr/share/pkgconfig"
AT_SYS_M4DIR@=@"@GENTOO_PORTAGE_EPREFIX@/usr/share/aclocal"
PORTAGE_CONFIGROOT@=@"@GENTOO_PORTAGE_EPREFIX@"
EPREFIX@=@"@GENTOO_PORTAGE_EPREFIX@"
EOIN
: prefix-stack-setup <<'EOIN'
#!@GENTOO_PORTAGE_EPREFIX@/bin/bash
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
PARENT_EPREFIX="@GENTOO_PORTAGE_EPREFIX@"
PARENT_CHOST="@GENTOO_PORTAGE_CHOST@"
CHILD_EPREFIX=
CHILD_PROFILE=
CHILD_CHOST=
#
# get ourselfs the functions.sh script for ebegin/eend/etc.
#
for f in \
/lib/gentoo/functions.sh \
/etc/init.d/functions.sh \
/sbin/functions.sh \
; do
if [[ -r ${PARENT_EPREFIX}${f} ]] ; then
. "${PARENT_EPREFIX}${f}"
f=found
break
fi
done
if [[ ${f} != found ]] ; then
echo "Cannot find Gentoo functions, aborting." >&2
exit 1
fi
for arg in "$@"; do
case "${arg}" in
--eprefix=*) CHILD_EPREFIX="${arg#--eprefix=}" ;;
--profile=*) CHILD_PROFILE="${arg#--profile=}" ;;
--chost=*) CHILD_CHOST="${arg#--chost=}" ;;
--help)
einfo "$0 usage:"
einfo " --eprefix=[PATH] Path to new EPREFIX to create stacked to the prefix"
einfo " where this script is installed (${PARENT_EPREFIX})"
einfo " --profile=[PATH] The absolute path to the profile to use. This path"
einfo " must point to a directory within ${PARENT_EPREFIX}"
einfo " --chost=[CHOST] The CHOST to use for the new EPREFIX, required if"
einfo " the profile does not set CHOST, or to override."
exit 0
;;
esac
done
#
# sanity check of given values
#
test -n "${CHILD_EPREFIX}" || { eerror "no eprefix argument given"; exit 1; }
test -d "${CHILD_EPREFIX}" && { eerror "${CHILD_EPREFIX} already exists"; exit 1; }
test -n "${CHILD_PROFILE}" || { eerror "no profile argument given"; exit 1; }
test -d "${CHILD_PROFILE}" || { eerror "${CHILD_PROFILE} does not exist"; exit 1; }
if [[ -z ${CHILD_CHOST} ]]
then
my_lsprofile() {
(
cd -P "${1:-.}" || exit 1
[[ -r ./parent ]] &&
for p in $(<parent)
do
my_lsprofile "${p}" || exit 1
done
pwd -P
)
}
for profile in $(my_lsprofile "${CHILD_PROFILE}") missing
do
if [[ ${profile} == missing ]]
then
eerror "profile does not set CHOST, need --chost argument"
exit 1
fi
[[ -s "${profile}/make.defaults" ]] || continue
grep -q '^[ ]*CHOST@=@' "${profile}/make.defaults" && break
done
fi
einfo "creating stacked prefix ${CHILD_EPREFIX}"
#
# functions needed below.
#
eend_exit() {
eend $1
[[ $1 != 0 ]] && exit 1
}
#
# create the directories required to bootstrap the least.
#
ebegin "creating directory structure"
(
set -e
mkdir -p "${CHILD_EPREFIX}"/var/tmp/portage
mkdir -p "${CHILD_EPREFIX}"/etc/portage/profile/use.mask
mkdir -p "${CHILD_EPREFIX}"/etc/portage/profile/use.force
mkdir -p "${CHILD_EPREFIX}"/etc/portage/env
mkdir -p "${CHILD_EPREFIX}"/etc/portage/package.env
ln -s "${PARENT_EPREFIX}"/etc/portage/repos.conf "${CHILD_EPREFIX}"/etc/portage/repos.conf
)
eend_exit $?
#
# create a make.conf and set PORTDIR and PORTAGE_TMPDIR
#
ebegin "creating make.conf"
(
set -e
echo "#"
echo "# These are sane default compiler flags, feel free to adopt them as you like."
echo "# Extending the flags is done to respect flags probably set by some profile."
echo "#"
echo "CFLAGS=\"\${CFLAGS} -O2 -pipe\""
echo "CXXFLAGS=\"${CXXFLAGS} -O2 -pipe\""
echo "MAKEOPTS=\"$(portageq envvar MAKEOPTS)\""
niceness=$(portageq envvar PORTAGE_NICENESS || true)
[[ -n ${niceness} ]] &&
echo "PORTAGE_NICENESS=\"${niceness}\""
echo
echo "# Mirrors from parent prefix."
echo "GENTOO_MIRRORS=\"$(portageq envvar GENTOO_MIRRORS || true)\""
echo
echo "# Below comes the prefix-stack setup. Only change things"
echo "# if you know exactly what you are doing!"
echo "EPREFIX=\"${CHILD_EPREFIX}\""
echo "PORTAGE_OVERRIDE_EPREFIX=\"${PARENT_EPREFIX}\""
echo "BROOT=\"${PARENT_EPREFIX}\""
echo "PORTAGE_TMPDIR=\"\${EPREFIX}/var/tmp\""
# Since EAPI 7 there is BDEPEND, which is DEPEND in EAPI up to 6.
# We do not want to pull DEPEND from EAPI <= 6, but RDEPEND only.
echo "EMERGE_DEFAULT_OPTS=\"--root-deps=rdeps\""
if [[ -n ${CHILD_CHOST} ]] ; then
echo "CHOST=\"${CHILD_CHOST}\""
fi
) > "${CHILD_EPREFIX}"/etc/portage/make.conf
eend_exit $?
ebegin "creating use.mask/prefix-stack"
printf -- '-%s\n' prefix{,-guest,-stack} > "${CHILD_EPREFIX}"/etc/portage/profile/use.mask/prefix-stack
eend_exit $?
ebegin "creating use.force/prefix-stack"
printf -- '%s\n' prefix{,-guest,-stack} > "${CHILD_EPREFIX}"/etc/portage/profile/use.force/prefix-stack
eend_exit $?
ebegin "creating env/host-cc.conf"
cat > "${CHILD_EPREFIX}"/etc/portage/env/host-cc.conf <<-EOM
CC=${PARENT_CHOST}-gcc
CXX=${PARENT_CHOST}-g++
# Inherited compiler flags from parent prefix,
# as the child prefix may have a different compiler.
CFLAGS="$(portageq envvar CFLAGS)"
CXXFLAGS="$(portageq envvar CXXFLAGS)"
EOM
eend_exit $?
ebegin "creating package.env/prefix-stack"
cat > "${CHILD_EPREFIX}"/etc/portage/package.env/prefix-stack <<-'EOM'
# merge with the parent's chost. this forces the use of the parent
# compiler, which generally would be illegal - this is an exception.
# This is required for example on winnt, because the wrapper has to
# be able to use/resolve symlinks, etc. native winnt binaries miss
# that ability, but cygwin binaries don't.
sys-devel/gcc-config host-cc.conf
sys-apps/gentoo-functions host-cc.conf
EOM
eend_exit $?
#
# create the make.profile symlinks.
#
ebegin "creating make.profile"
(
ln -s "${CHILD_PROFILE}" "${CHILD_EPREFIX}/etc/portage/make.profile"
)
eend_exit $?
#
# adjust permissions of generated files.
#
ebegin "adjusting permissions"
(
set -e
chmod 644 "${CHILD_EPREFIX}"/etc/portage/make.conf
chmod 644 "${CHILD_EPREFIX}"/etc/portage/env/host-cc.conf
chmod 644 "${CHILD_EPREFIX}"/etc/portage/package.env/prefix-stack
)
eend_exit $?
#
# now merge some basics.
#
ebegin "installing required basic packages"
(
set -e
export PORTAGE_CONFIGROOT@=@"${CHILD_EPREFIX}"
export EPREFIX@=@"${CHILD_EPREFIX}"
export PORTAGE_OVERRIDE_EPREFIX@=@"${PARENT_EPREFIX}"
# let baselayout create the directories
USE@=@"${USE} build" \
emerge --verbose --nodeps --oneshot \
'>=baselayout-prefix-2.6'
# In prefix-stack, app-portage/prefix-toolkit does
# install/update an etc/portage/profile/packages file,
# removing all @system packages from current make.profile,
# and adding itself to @system set instead.
emerge --verbose --nodeps --oneshot \
app-portage/prefix-toolkit
# In prefix-stack, prefix-toolkit does have an RDEPEND on them,
# to hold them in the @system set.
emerge --verbose --nodeps --oneshot \
sys-apps/gentoo-functions \
app-portage/elt-patches \
sys-devel/gnuconfig \
sys-devel/gcc-config
# get eventual dependencies, add to world
emerge --verbose --update --deep \
app-portage/prefix-toolkit
# select the stack wrapper profile from gcc-config
env -i PORTAGE_CONFIGROOT="${CHILD_EPREFIX}" \
"$(type -P bash)" "${CHILD_EPREFIX}"/usr/bin/gcc-config 1
)
eend_exit $?
#
# wow, all ok :)
#
ewarn
ewarn "all done. don't forget to tune ${CHILD_EPREFIX}/etc/portage/make.conf."
ewarn "to enter the new prefix, run \"${CHILD_EPREFIX}/startprefix\"."
ewarn
EOIN
: prefix-stack-ccwrap <<'EOIN'
#!@GENTOO_PORTAGE_BPREFIX@/bin/bash
if [ -r /cygdrive/. ]; then
winpath2unix() { cygpath -u "$1"; }
unixpath2win() { cygpath -w "$1"; }
fi
myself=${0##*/} # basename $0
link_dirs=()
linkopts=()
opts=()
chost="@GENTOO_PORTAGE_CHOST@"
prefix="@GENTOO_PORTAGE_EPREFIX@"
absprefix=${prefix}
if [[ ${chost} == *"-winnt"* ]]; then
# we may get called from windows binary, like pkgdata in dev-libs/icu
# in this case, PATH elements get the "/dev/fs/C/WINDOWS/SUA" prefix
absprefix=$(winpath2unix "$(unixpath2win "${absprefix}")")
fi
[[ ${myself} == *windres* ]] && mode=compile || mode=link
orig_args=("$@")
for opt in "$@"
do
if [[ ${chost} == *"-winnt"* ]]; then
# We depend on dev-libs/pthreads4w, no?
case ${opt} in
-pthread | -lpthread)
case " ${linkopts[*]} " in
*" -lpthread "*) ;;
*) linkopts=( "${linkopts[@]}" "-lpthread" ) ;;
esac
continue
;;
esac
fi
case "$opt" in
-L)
link_dirs=("${link_dirs[@]}" "-L$1")
shift
;;
-L*)
link_dirs=("${link_dirs[@]}" "${opt}")
;;
*)
case "${opt}" in
-v)
# -v done right: only use mode version if -v is the _only_
# argument on the command line.
[[ ${#orig_args[@]} -gt 1 ]] || mode=version
;;
--version) mode=version ;;
-c|-E|-S) mode=compile ;;
-print-search-dirs) mode=dirs ;;
esac
opts=("${opts[@]}" "${opt}")
;;
esac
done
# remove any path to current prefix, need base prefix only
new_path=
save_ifs=$IFS
IFS=':'
for p in $PATH
do
IFS=$save_ifs
[[ ${p#${absprefix}} != "${p}" ]] && continue
if [[ -z "${new_path}" ]]; then
new_path="${p}"
else
new_path="${new_path}:${p}"
fi
done
IFS=$save_ifs
PATH=${new_path}
pfx_comp=("-I${prefix}/include" "-I${prefix}/usr/include")
pfx_link=("-L${prefix}/usr/lib" "-L${prefix}/lib")
# binutils-config's ldwrapper understands '-R' for aix and hpux too.
pfx_link_r=("-Wl,-R,${prefix}/lib" "-Wl,-R,${prefix}/usr/lib")
case "${chost}" in
*-winnt*)
# parity (winnt) understands -rpath only ...
pfx_link_r=("-Wl,-rpath,${prefix}/lib" "-Wl,-rpath,${prefix}/usr/lib")
;;
*-linux*)
# With gcc, -isystem would avoid warning messages in installed headers,
# but that breaks with AIX host headers.
pfx_comp=("-isystem" "${prefix}/include" "-isystem" "${prefix}/usr/include")
;;
esac
# ensure we run the right chost program in base prefix
[[ ${myself} == *-*-*-* ]] || myself=${chost}-${myself#${chost}-}
case "$mode" in
link) exec "${myself}" "${link_dirs[@]}" "${pfx_link[@]}" "${opts[@]}" "${pfx_comp[@]}" "${pfx_link_r[@]}" "${linkopts[@]}" ;;
compile) exec "${myself}" "${link_dirs[@]}" "${opts[@]}" "${pfx_comp[@]}" ;;
version) exec "${myself}" "${orig_args[@]}" ;;
dirs)
"${myself}" "${orig_args[@]}" | while read line; do
if [[ "${line}" == "libraries: ="* ]]; then
echo "libraries: =${prefix}/usr/lib:${prefix}/lib:${line#"libraries: ="}"
else
echo "${line}"
fi
done
;;
*) echo "cannot infer ${myself}'s mode from comamnd line arguments"; exit 1 ;;
esac
EOIN

Binary file not shown.

@ -1 +1,2 @@
DIST hstr-2.0.tar.gz 1242802 BLAKE2B 24f1a870e6aa12b6544a38601c6bc654e01aa1a185c4f7735559aa3220ed8d9fb840e298526b9e4a177000f2ec5c08caee5da97e13783e4114bde5276ee1e85e SHA512 50d5e8e61aa853dab0093f4225d3329e98bc59609d8d59abf832cd4cb616d78a2fa091d1ad8d16f3543276c4ead95a419f33a13a96f423bf93dc648da32740b7
DIST hstr-2.1.tar.gz 1244067 BLAKE2B aa37f26a5ba8ee465a03212cc80e55b9581e59cbb535f17fda8e59bed062f0b0065d456d8566927c089595b92270b83235f0bf73f26ac88704bd933c1926cd5b SHA512 ea217ac2b6dcb7e283f83d15524b47f88c5c8cfb82e5728537750a2ec8526f03304503a5bb67970d893e10057aba087aa86a67548aa361c892b6ee3e81903122

@ -0,0 +1,81 @@
diff --git a/configure.ac b/configure.ac
index 1676ec8..73c8be5 100644
--- a/configure.ac
+++ b/configure.ac
@@ -47,39 +47,33 @@ then
fi
# PKG_CHECK_MODULES macro is NOT used to avoid confusing syntax errors in case that pkg-config is NOT installed
-AC_CHECK_LIB(ncursesw, killwchar, [],
-[
- AC_CHECK_LIB(ncurses, killwchar, [],
- [
- AC_SUBST([NCURSESW_CFLAGS])
- AC_SUBST([NCURSESW_LIBS])
- if pkg-config --exists ncursesw
- then
- AC_MSG_NOTICE([Module ncursesw found])
- NCURSESW_CFLAGS=`pkg-config --cflags ncursesw`
- NCURSESW_LIBS=`pkg-config --libs ncursesw`
- else
- if pkg-config --exists ncurses
- then
- AC_MSG_NOTICE([Module ncurses found])
- NCURSESW_CFLAGS=`pkg-config --cflags ncursesw`
- NCURSESW_LIBS=`pkg-config --libs ncurses`
- else
- AS_CASE([$host_os],
- [darwin*],
- [
- AC_CHECK_LIB(ncurses, killwchar, [], [AC_MSG_ERROR([Could not find ncurses library])])
- AC_CHECK_HEADER(curses.h)
- ],
- [
- AC_CHECK_LIB(ncursesw, killwchar, [], [AC_MSG_ERROR([Could not find ncursesw library])])
- AC_CHECK_HEADER(ncursesw/curses.h)
- ]
- )
- fi
- fi
- ]) # FAIL of ncurses
-]) # FAIL of ncursesw
+AC_SUBST([NCURSESW_CFLAGS])
+AC_SUBST([NCURSESW_LIBS])
+if pkg-config --exists ncursesw
+then
+ AC_MSG_NOTICE([Module ncursesw found])
+ NCURSESW_CFLAGS=`pkg-config --cflags ncursesw`
+ NCURSESW_LIBS=`pkg-config --libs ncursesw`
+else
+ if pkg-config --exists ncurses
+ then
+ AC_MSG_NOTICE([Module ncurses found])
+ NCURSESW_CFLAGS=`pkg-config --cflags ncursesw`
+ NCURSESW_LIBS=`pkg-config --libs ncurses`
+ else
+ AS_CASE([$host_os],
+ [darwin*],
+ [
+ AC_CHECK_LIB(ncurses, killwchar, [], [AC_MSG_ERROR([Could not find ncurses library])])
+ AC_CHECK_HEADER(curses.h)
+ ],
+ [
+ AC_CHECK_LIB(ncursesw, killwchar, [], [AC_MSG_ERROR([Could not find ncursesw library])])
+ AC_CHECK_HEADER(ncursesw/curses.h)
+ ]
+ )
+ fi
+fi
# Checks for libraries.
diff --git a/src/Makefile.am b/src/Makefile.am
index 7640d21..17a82b7 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -37,4 +37,4 @@ hstr_SOURCES = \
install-exec-hook:
ln $(DESTDIR)$(bindir)/hstr$(EXEEXT) $(DESTDIR)$(bindir)/hh$(EXEEXT)
-hstr_LDADD = $(NCURSES_LIBS)
+hstr_LDADD = $(NCURSESW_LIBS)

@ -0,0 +1,33 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
inherit autotools
DESCRIPTION="Shell history suggest box"
HOMEPAGE="https://github.com/dvorka/hstr http://www.mindforger.com"
SRC_URI="https://github.com/dvorka/hstr/archive/${PV}.tar.gz -> ${P}.tar.gz"
SLOT="0"
LICENSE="Apache-2.0"
KEYWORDS="~amd64 ~x86"
RDEPEND="
sys-libs/ncurses:0=[unicode]"
DEPEND="
${RDEPEND}
virtual/pkgconfig"
DOCS=( CONFIGURATION.md README.md )
PATCHES=( ${FILESDIR}/${P}-fix-ncurses-configure.patch )
src_prepare() {
default
sed \
-e 's:-O2::g' \
-i src/Makefile.am || die
eautoreconf
}

Binary file not shown.

@ -19,7 +19,7 @@ DESCRIPTION="PDF rendering library based on the xpdf-3.0 code base"
HOMEPAGE="https://poppler.freedesktop.org/"
LICENSE="GPL-2"
IUSE="cairo cjk curl cxx debug doc +introspection +jpeg +jpeg2k +lcms nss png qt5 tiff +utils"
IUSE="cairo cjk curl +cxx debug doc +introspection +jpeg +jpeg2k +lcms nss png qt5 tiff +utils"
# No test data provided
RESTRICT="test"

@ -19,7 +19,7 @@ DESCRIPTION="PDF rendering library based on the xpdf-3.0 code base"
HOMEPAGE="https://poppler.freedesktop.org/"
LICENSE="GPL-2"
IUSE="cairo cjk curl cxx debug doc +introspection +jpeg +jpeg2k +lcms nss png qt5 tiff +utils"
IUSE="cairo cjk curl +cxx debug doc +introspection +jpeg +jpeg2k +lcms nss png qt5 tiff +utils"
# No test data provided
RESTRICT="test"

@ -19,7 +19,7 @@ DESCRIPTION="PDF rendering library based on the xpdf-3.0 code base"
HOMEPAGE="https://poppler.freedesktop.org/"
LICENSE="GPL-2"
IUSE="cairo cjk curl cxx debug doc +introspection +jpeg +jpeg2k +lcms nss png qt5 tiff +utils"
IUSE="cairo cjk curl +cxx debug doc +introspection +jpeg +jpeg2k +lcms nss png qt5 tiff +utils"
# No test data provided
RESTRICT="test"

@ -19,7 +19,7 @@ DESCRIPTION="PDF rendering library based on the xpdf-3.0 code base"
HOMEPAGE="https://poppler.freedesktop.org/"
LICENSE="GPL-2"
IUSE="cairo cjk curl cxx debug doc +introspection +jpeg +jpeg2k +lcms nss png qt5 tiff +utils"
IUSE="cairo cjk curl +cxx debug doc +introspection +jpeg +jpeg2k +lcms nss png qt5 tiff +utils"
# No test data provided
RESTRICT="test"

@ -19,7 +19,7 @@ DESCRIPTION="PDF rendering library based on the xpdf-3.0 code base"
HOMEPAGE="https://poppler.freedesktop.org/"
LICENSE="GPL-2"
IUSE="cairo cjk curl cxx debug doc +introspection +jpeg +jpeg2k +lcms nss png qt5 tiff +utils"
IUSE="cairo cjk curl +cxx debug doc +introspection +jpeg +jpeg2k +lcms nss png qt5 tiff +utils"
# No test data provided
RESTRICT="test"

Some files were not shown because too many files have changed in this diff Show More

Loading…
Cancel
Save