summaryrefslogtreecommitdiff
path: root/dev-perl/PortageXS
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
committerV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
commit4f2d7949f03e1c198bc888f2d05f421d35c57e21 (patch)
treeba5f07bf3f9d22d82e54a462313f5d244036c768 /dev-perl/PortageXS
reinit the tree, so we can have metadata
Diffstat (limited to 'dev-perl/PortageXS')
-rw-r--r--dev-perl/PortageXS/Manifest11
-rw-r--r--dev-perl/PortageXS/PortageXS-0.02.10-r4.ebuild54
-rw-r--r--dev-perl/PortageXS/PortageXS-0.2.10-r5.ebuild60
-rw-r--r--dev-perl/PortageXS/PortageXS-0.2.12-r1.ebuild63
-rw-r--r--dev-perl/PortageXS/files/0.02.12/PortageXS-0.02.12-prefix.patch198
-rw-r--r--dev-perl/PortageXS/files/PortageXS-0.02.10-portage_path_fix.patch86
-rw-r--r--dev-perl/PortageXS/files/PortageXS-0.02.10-prefix.patch137
-rw-r--r--dev-perl/PortageXS/metadata.xml22
8 files changed, 631 insertions, 0 deletions
diff --git a/dev-perl/PortageXS/Manifest b/dev-perl/PortageXS/Manifest
new file mode 100644
index 000000000000..e386c513f7ff
--- /dev/null
+++ b/dev-perl/PortageXS/Manifest
@@ -0,0 +1,11 @@
+AUX 0.02.12/PortageXS-0.02.12-prefix.patch 8739 SHA256 1fcdab3a01c89a80ee74b67291553cae87a1347dd229a4f1c65cf1e63274c1b3 SHA512 8c1626cd107963c287ed0f24e7508ec28effbdcf3cde4695c9c294c7924f9c987593ff73b5719bb59b8e4cf6f7e790209d2aee97038fba7080f3ccd296074197 WHIRLPOOL 6f688cebdfcdca0111439d364d560f41e6513e96e5fce2bffee7c0adb9dc7b16238610fd145c753ddbf6bd26005de6d97cfdd40af0f06b214dd042908bbeb80d
+AUX PortageXS-0.02.10-portage_path_fix.patch 4165 SHA256 760e70cd04ff0922d3d1bd4c492164e45aa618b25d225cf73063d4eaebe1d7e1 SHA512 4e99f0db05dae2ca0b08c1750ba7f3218eacdf2e6cf4a01c08de53f4f7c81cf261a902b8fc5429a8349effeb2f1c2f6e3a0a8bee07257c48cf6fc7010f971695 WHIRLPOOL 5a42aec0c4b72caa95d0e785dc9963000454eec099ea1db9cb306cd39c6df3534534c37da385dc317dfd2cd538fa92caba3854e5ed5ba4a8c72b16a65f2b34ae
+AUX PortageXS-0.02.10-prefix.patch 6463 SHA256 11b0aca23516f59362ffe56d12d4718d8843935502ed4df17463bff6d39b0d01 SHA512 1225da7ef7911f8a3ada93f2d23ffd23e78bec735152403b809db75cda99fc576bc34fbbcd8487af16b3fadd946bc4c48497db9a4e9f9bf27705b91793d5ea37 WHIRLPOOL 39b98d5f9587596447370ec7c523fbf3e64f41bff4ae416e8a7b38aa2b03a9f4d05164d3fdfbb2d8425a7f33ee844465448e0bf140828780e30d82647c4750d9
+DIST PortageXS-0.02.10.tar.gz 28890 SHA256 1d41222577243d8fa004ce3dfeb67dce95c10339218ee1097d972cb8f97862c2 SHA512 8f5a6cf8fa415e13401fd7901c81fef42e0cee81b7a9c1f276cce9582c705ac7e2004ec213033fce065f965445342ed0140d8b752d2e857dd40c620ed4af6b1b WHIRLPOOL 3c7d41f5d5647ba4f31ef8d07f5172bf76c1ccb443443df37e526a91f76e1353c6c04941077d45a89d8b08d68b0b263dab5a08b923d6fb0faad1572c8c292333
+DIST PortageXS-0.2.12.tar.gz 41772 SHA256 b140ff37c8e8aea72229281ab30e0f85b31834220544769e01720e896c535604 SHA512 e833c8dab25ed6fcfad999e4b0bb803d69523ff57fbcd86ea0c29c671889a66c81f0081d6242039788a73d090e3245776d12a8286114b77f72d39514dfe425bf WHIRLPOOL 7141fb44821acee28d32358f3ab1cce82675004811ef56af1128d1d002ca6adce58fca8cabdaeafa0dc1d975b3bde1f34f1e1dae2328a0caebf136424142a1e7
+EBUILD PortageXS-0.02.10-r4.ebuild 1489 SHA256 a9d1cc3ccf958fee34254709908b9e13ac52cd9cb45c8d674af38b2ad1655c03 SHA512 517e4e6d80854c49788ef67584336caf4226b1dd0f065cd7099e075a8d3c34841b157f59c0255bde5cc0ecaf20d92d528966be2aa646a122f3a5843b1c0965a1 WHIRLPOOL 5138c6e12140aebc05d4f59d49bf61d6532f40d2aa7762baa91a1770f1cdfec2b47ac328652c2fc0810e8d8fe02dd0f74e1be4dcc00c39b4b6ecb92690741160
+EBUILD PortageXS-0.2.10-r5.ebuild 1586 SHA256 ed559427ddc000ea23354cae9b29adf1c5b23f4ab008326344d11ea6545ad0cd SHA512 af1b467a6ecb5f3e4831d8b4541be3368aeb1672f10c80df12ba754e0a6e1a3da51bd10c934e6cbcd0a03377e1bb09ef857f83028341018699024e68f34a3fd4 WHIRLPOOL b09af9b22b4cd8c6ee311f0aceed0127bbaf3cc3db4d86d626b58e443631887eeefdc4602ed292a05bc6d679bbba76c21a8c6029be31f22b06f84fa3e2a38c2f
+EBUILD PortageXS-0.2.12-r1.ebuild 1553 SHA256 c1b594bba87468f5e069fca82d89a805caf3d82131ec755e042fa09b3d0b76b1 SHA512 2f06cccf35222dbd347d0e843efe913676c681045993509ce8afb990121b00533a205c0f08b7c0d15085523fda03ed0ff10f2493042b23fada736f12aa960776 WHIRLPOOL 043860b208d60d147227dab81e493a0460a31c82f12c01b34e768e88b8185142b5f5e4a183114070ea7eb4ae6142fe4722a2aa0ee6b9e86edfa40de0ae3bdf39
+MISC ChangeLog 3677 SHA256 f27cce07b28952afb63e85027cc7a56ba5919aac3a9a59fc12376123feb0814d SHA512 d8e826b1b921faa0f7e54f21d253a7a33bcd30f3d0c316dfcab8b06d222c7c8510edcba3ffc394d2240f6e47ab6efaf0fe0a8bcfb8fa585fe267a82dd53dea89 WHIRLPOOL abb278203185689979dc3c3282c8cd4ba0652903c3eb2fd64444ccedd32ec25faf38d730014f17c2cc58a4b447f60cacfe388e2c36b6f4f49f2668042f305b2d
+MISC ChangeLog-2015 8903 SHA256 6466a36f8a2e13a440212947c68fee87a926fc193184c776ffb6b7a39f7d331d SHA512 da281010873993c72b92fb298958f7ea268797851fc4ea1b84d2e4c44465cd7d80814ae1721275acae1d8387133253ae6896c1fc56ac0baf35027764b76a5e77 WHIRLPOOL 124e0b82035f348d5029926c2f9b7da2a8d9c89a587d91aa5d2f3a5ea322be40b091e8251dc5498ea76f08a56f1e0ed73a83e322ffe7581c38908b9cd2df78ad
+MISC metadata.xml 830 SHA256 86af2bc600fe8a911ee413b31a65db935db7b25cd0f41571e8270a53c2fe35da SHA512 48eb9291a34c41897006b1fcad1726357a00e797c57b62e4b7f5df494ee27c8ca1a2051fee09ba002816e11280d0aec16f3807e5a386f2389fa8106633d10f56 WHIRLPOOL 635777605322552fc011f80ed3ea1214e06c043735d8ace0b17bbda91bebe7d6d011a764493a39cbc19c4c7ea7b550df43563ed2ea556e305119314229d7bf29
diff --git a/dev-perl/PortageXS/PortageXS-0.02.10-r4.ebuild b/dev-perl/PortageXS/PortageXS-0.02.10-r4.ebuild
new file mode 100644
index 000000000000..e9fd0de774b4
--- /dev/null
+++ b/dev-perl/PortageXS/PortageXS-0.02.10-r4.ebuild
@@ -0,0 +1,54 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+inherit perl-module eutils prefix
+
+DESCRIPTION="Portage abstraction layer for perl"
+HOMEPAGE="http://download.mpsna.de/opensource/PortageXS/"
+SRC_URI="http://download.mpsna.de/opensource/PortageXS/${P}.tar.gz"
+
+SLOT="0"
+LICENSE="GPL-2"
+KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 ~sh sparc x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x86-solaris"
+IUSE="minimal"
+SRC_TEST="do"
+
+DEPEND="virtual/perl-Term-ANSIColor
+ dev-perl/Shell-EnvImporter
+ !minimal? ( dev-perl/IO-Socket-SSL
+ virtual/perl-Sys-Syslog )"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PN}-0.02.10-portage_path_fix.patch
+ epatch "${FILESDIR}"/${PN}-0.02.10-prefix.patch
+
+ eprefixify \
+ lib/PortageXS/Core.pm \
+ lib/PortageXS.pm \
+ usr/bin/portagexs_client \
+ usr/sbin/portagexsd
+
+ if use minimal ; then
+ rm -r "${S}"/usr || die
+ rm -r "${S}"/etc/init.d || die
+ rm -r "${S}"/etc/pxs/certs || die
+ rm "${S}"/etc/pxs/portagexsd.conf || die
+ rm -r "${S}"/lib/PortageXS/examples || die
+ fi
+}
+
+pkg_preinst() {
+ if use !minimal ; then
+ cp -r "${S}"/usr "${D}${EPREFIX}" || die
+ fi
+ cp -r "${S}"/etc "${D}${EPREFIX}" || die
+}
+
+pkg_postinst() {
+ if [ -d "${EPREFIX}"/etc/portagexs ]; then
+ elog "${EPREFIX}/etc/portagexs has been moved to ${EPREFIX}/etc/pxs for convenience. It is safe"
+ elog "to delete old ${EPREFIX}/etc/portagexs directories."
+ fi
+}
diff --git a/dev-perl/PortageXS/PortageXS-0.2.10-r5.ebuild b/dev-perl/PortageXS/PortageXS-0.2.10-r5.ebuild
new file mode 100644
index 000000000000..62f8a034944c
--- /dev/null
+++ b/dev-perl/PortageXS/PortageXS-0.2.10-r5.ebuild
@@ -0,0 +1,60 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+MODULE_VERSION=0.02.10
+inherit perl-module eutils prefix
+
+DESCRIPTION="Portage abstraction layer for perl"
+HOMEPAGE="http://download.mpsna.de/opensource/PortageXS/"
+SRC_URI="http://download.mpsna.de/opensource/PortageXS/${PN}-${MODULE_VERSION}.tar.gz"
+
+SLOT="0"
+LICENSE="GPL-2"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sh ~sparc ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x86-solaris"
+IUSE="minimal"
+SRC_TEST="do"
+
+DEPEND="
+ virtual/perl-Term-ANSIColor
+ dev-perl/Shell-EnvImporter
+ !minimal? (
+ dev-perl/IO-Socket-SSL
+ virtual/perl-Sys-Syslog
+ )
+"
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PN}-0.02.10-portage_path_fix.patch
+ epatch "${FILESDIR}"/${PN}-0.02.10-prefix.patch
+
+ eprefixify \
+ lib/PortageXS/Core.pm \
+ lib/PortageXS.pm \
+ usr/bin/portagexs_client \
+ usr/sbin/portagexsd
+
+ if use minimal ; then
+ rm -r "${S}"/usr || die
+ rm -r "${S}"/etc/init.d || die
+ rm -r "${S}"/etc/pxs/certs || die
+ rm "${S}"/etc/pxs/portagexsd.conf || die
+ rm -r "${S}"/lib/PortageXS/examples || die
+ fi
+}
+
+src_install() {
+ perl-module_src_install
+ if use !minimal ; then
+ cp -r "${S}"/usr "${D}${EPREFIX}" || die
+ fi
+ cp -r "${S}"/etc "${D}${EPREFIX}" || die
+}
+
+pkg_postinst() {
+ if [ -d "${EPREFIX}"/etc/portagexs ]; then
+ elog "${EPREFIX}/etc/portagexs has been moved to ${EPREFIX}/etc/pxs for convenience. It is safe"
+ elog "to delete old ${EPREFIX}/etc/portagexs directories."
+ fi
+}
diff --git a/dev-perl/PortageXS/PortageXS-0.2.12-r1.ebuild b/dev-perl/PortageXS/PortageXS-0.2.12-r1.ebuild
new file mode 100644
index 000000000000..38d358114897
--- /dev/null
+++ b/dev-perl/PortageXS/PortageXS-0.2.12-r1.ebuild
@@ -0,0 +1,63 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+MODULE_AUTHOR=KENTNL
+MODULE_VERSION=0.2.12
+inherit perl-module eutils prefix
+
+DESCRIPTION="Portage abstraction layer for perl"
+HOMEPAGE="http://search.cpan.org/~kentnl/PortageXS-0.2.12/"
+
+SLOT="0"
+LICENSE="GPL-2"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x86-solaris"
+IUSE="minimal"
+
+DEPEND="
+ dev-perl/Module-Build
+ virtual/perl-Term-ANSIColor
+ dev-perl/Shell-EnvImporter
+ !minimal? (
+ dev-perl/IO-Socket-SSL
+ virtual/perl-Sys-Syslog
+ )
+"
+
+src_prepare() {
+ epatch "${FILESDIR}"/0.02.12/${PN}-0.02.12-prefix.patch
+
+ eprefixify \
+ lib/PortageXS/examples/getParamFromFile.pl \
+ lib/PortageXS/Core.pm \
+ lib/PortageXS.pm \
+ usr/bin/portagexs_client \
+ usr/sbin/portagexsd \
+ t/01_Core.t
+
+ if use minimal ; then
+ rm -r "${S}"/usr || die
+ rm -r "${S}"/etc/init.d || die
+ rm -r "${S}"/etc/pxs/certs || die
+ rm "${S}"/etc/pxs/portagexsd.conf || die
+ rm -r "${S}"/lib/PortageXS/examples || die
+ fi
+}
+
+src_install() {
+ perl-module_src_install
+ if use !minimal ; then
+ cp -r "${S}"/usr "${D}${EPREFIX}" || die
+ fi
+ cp -r "${S}"/etc "${D}${EPREFIX}" || die
+}
+
+pkg_postinst() {
+ if [ -d "${EPREFIX}"/etc/portagexs ]; then
+ elog "${EPREFIX}/etc/portagexs has been moved to ${EPREFIX}/etc/pxs for convenience. It is safe"
+ elog "to delete old ${EPREFIX}/etc/portagexs directories."
+ fi
+}
+
+SRC_TEST="do parallel"
diff --git a/dev-perl/PortageXS/files/0.02.12/PortageXS-0.02.12-prefix.patch b/dev-perl/PortageXS/files/0.02.12/PortageXS-0.02.12-prefix.patch
new file mode 100644
index 000000000000..df1881118c9a
--- /dev/null
+++ b/dev-perl/PortageXS/files/0.02.12/PortageXS-0.02.12-prefix.patch
@@ -0,0 +1,198 @@
+ lib/PortageXS.pm | 16 ++++++++--------
+ lib/PortageXS/Core.pm | 8 ++++----
+ lib/PortageXS/examples/getParamFromFile.pl | 2 +-
+ t/01_Core.t | 12 ++++++------
+ usr/bin/portagexs_client | 8 ++++----
+ usr/sbin/portagexsd | 12 ++++++------
+ 6 files changed, 29 insertions(+), 29 deletions(-)
+
+diff --git a/lib/PortageXS.pm b/lib/PortageXS.pm
+index db57a25..6cec46e 100644
+--- a/lib/PortageXS.pm
++++ b/lib/PortageXS.pm
+@@ -71,8 +71,8 @@ sub new {
+ $pxs->{'VERSION'} = $PortageXS::VERSION;
+
+ $pxs->{'PORTDIR'} = $pxs->getPortdir();
+- $pxs->{'PKG_DB_DIR'} = '/var/db/pkg/';
+- $pxs->{'PATH_TO_WORLDFILE'} = '/var/lib/portage/world';
++ $pxs->{'PKG_DB_DIR'} = '@GENTOO_PORTAGE_EPREFIX@/var/db/pkg/';
++ $pxs->{'PATH_TO_WORLDFILE'} = '@GENTOO_PORTAGE_EPREFIX@/var/lib/portage/world';
+ $pxs->{'IS_INITIALIZED'} = 1;
+
+ $pxs->{'EXCLUDE_DIRS'}{'.'} = 1;
+@@ -85,17 +85,17 @@ sub new {
+ $pxs->{'EXCLUDE_DIRS'}{'CVS'} = 1;
+ $pxs->{'EXCLUDE_DIRS'}{'.cache'} = 1;
+
+- $pxs->{'PORTAGEXS_ETC_DIR'} = '/etc/pxs/';
+- $pxs->{'ETC_DIR'} = '/etc/';
++ $pxs->{'PORTAGEXS_ETC_DIR'} = '@GENTOO_PORTAGE_EPREFIX@/etc/pxs/';
++ $pxs->{'ETC_DIR'} = '@GENTOO_PORTAGE_EPREFIX@/etc/';
+
+ $pxs->{'MAKE_PROFILE_PATHS'} = [
+- '/etc/make.profile',
+- '/etc/portage/make.profile'
++ '@GENTOO_PORTAGE_EPREFIX@/etc/make.profile',
++ '@GENTOO_PORTAGE_EPREFIX@/etc/portage/make.profile'
+ ];
+
+ $pxs->{'MAKE_CONF_PATHS'} = [
+- '/etc/make.conf',
+- '/etc/portage/make.conf'
++ '@GENTOO_PORTAGE_EPREFIX@/etc/make.conf',
++ '@GENTOO_PORTAGE_EPREFIX@/etc/portage/make.conf'
+ ];
+
+ for my $path ( @{ $pxs->{'MAKE_PROFILE_PATHS'} } ) {
+diff --git a/lib/PortageXS/Core.pm b/lib/PortageXS/Core.pm
+index 5d51023..3dd0b84 100644
+--- a/lib/PortageXS/Core.pm
++++ b/lib/PortageXS/Core.pm
+@@ -122,7 +122,7 @@ sub getPortageMakeParam {
+ my $self = shift;
+ my $param = shift;
+ my @files = ();
+- my @etcfiles = qw(/usr/share/portage/config/make.globals /etc/make.conf);
++ my @etcfiles = qw(@GENTOO_PORTAGE_EPREFIX@/usr/share/portage/config/make.globals @GENTOO_PORTAGE_EPREFIX@/etc/make.conf);
+ my $v = '';
+ my $parent = '';
+ my $curPath;
+@@ -166,7 +166,7 @@ sub getPortageMakeParam {
+
+ # - Defaults >
+ if ($param eq 'PORTDIR' && !$v) {
+- $v='/usr/portage';
++ $v='@GENTOO_PORTAGE_EPREFIX@/usr/portage';
+ }
+
+ return $v;
+@@ -193,7 +193,7 @@ sub getPortdir {
+ return $self->{'PORTDIR'};
+ }
+ else {
+- $self->{'PORTDIR'}=$self->getParamFromFile($self->getFileContents('/usr/share/portage/config/make.globals').$self->getFileContents('/etc/portage/make.conf'),'PORTDIR','lastseen');
++ $self->{'PORTDIR'}=$self->getParamFromFile($self->getFileContents('@GENTOO_PORTAGE_EPREFIX@/usr/share/portage/config/make.globals').$self->getFileContents('@GENTOO_PORTAGE_EPREFIX@/etc/portage/make.conf'),'PORTDIR','lastseen');
+ return $self->{'PORTDIR'};
+ }
+ }
+@@ -210,7 +210,7 @@ sub getPortdirOverlay {
+ my $self = shift;
+ my $forcereload = shift;
+
+- return split(/ /,$self->getParamFromFile($self->getFileContents('/usr/share/portage/config/make.globals').$self->getFileContents('/etc/make.conf'),'PORTDIR_OVERLAY','lastseen'));
++ return split(/ /,$self->getParamFromFile($self->getFileContents('@GENTOO_PORTAGE_EPREFIX@/usr/share/portage/config/make.globals').$self->getFileContents('@GENTOO_PORTAGE_EPREFIX@/etc/make.conf'),'PORTDIR_OVERLAY','lastseen'));
+ }
+
+ # Description:
+diff --git a/lib/PortageXS/examples/getParamFromFile.pl b/lib/PortageXS/examples/getParamFromFile.pl
+index 416b1be..9ea88bb 100755
+--- a/lib/PortageXS/examples/getParamFromFile.pl
++++ b/lib/PortageXS/examples/getParamFromFile.pl
+@@ -8,4 +8,4 @@ use PortageXS;
+
+ my $pxs=PortageXS->new();
+ print "CFLAGS are set to: ";
+-print join(' ',$pxs->getParamFromFile($pxs->getFileContents('/etc/make.globals').$pxs->getFileContents('/etc/make.conf'),'CFLAGS','lastseen'))."\n";
++print join(' ',$pxs->getParamFromFile($pxs->getFileContents('@GENTOO_PORTAGE_EPREFIX@/etc/make.globals').$pxs->getFileContents('@GENTOO_PORTAGE_EPREFIX@/etc/make.conf'),'CFLAGS','lastseen'))."\n";
+diff --git a/t/01_Core.t b/t/01_Core.t
+index d01dc31..6daba99 100644
+--- a/t/01_Core.t
++++ b/t/01_Core.t
+@@ -14,8 +14,8 @@ ok(-d $pxs->getPortdir(),'getPortdir: '.$pxs->getPortdir());
+
+ # - getFileContents >
+ {
+- my $content = $pxs->getFileContents('/etc/portage/make.conf');
+- ok($content ne '','getFileContents of /etc/portage/make.conf');
++ my $content = $pxs->getFileContents('@GENTOO_PORTAGE_EPREFIX@/etc/portage/make.conf');
++ ok($content ne '','getFileContents of @GENTOO_PORTAGE_EPREFIX@/etc/portage/make.conf');
+ }
+
+ # - searchInstalledPackage >
+@@ -26,8 +26,8 @@ ok(-d $pxs->getPortdir(),'getPortdir: '.$pxs->getPortdir());
+
+ # - getParamFromFile >
+ {
+- my $param = $pxs->getParamFromFile($pxs->getFileContents('/etc/portage/make.conf'),'CFLAGS','lastseen');
+- ok($param ne '','getParamFromFile /etc/portage/make.conf - CFLAGS: '.$param);
++ my $param = $pxs->getParamFromFile($pxs->getFileContents('@GENTOO_PORTAGE_EPREFIX@/etc/portage/make.conf'),'CFLAGS','lastseen');
++ ok($param ne '','getParamFromFile @GENTOO_PORTAGE_EPREFIX@/etc/portage/make.conf - CFLAGS: '.$param);
+ }
+
+ # - getUseSettingsOfInstalledPackage >
+@@ -65,8 +65,8 @@ ok(-d $pxs->getPortdir(),'getPortdir: '.$pxs->getPortdir());
+
+ # - fileBelongsToPackage >
+ {
+- my @packages = $pxs->fileBelongsToPackage('/etc/gentoo-release');
+- ok($#packages==0,'fileBelongsToPackage - /etc/gentoo-release: '.$packages[0]);
++ my @packages = $pxs->fileBelongsToPackage('@GENTOO_PORTAGE_EPREFIX@/etc/gentoo-release');
++ ok($#packages==0,'fileBelongsToPackage - @GENTOO_PORTAGE_EPREFIX@/etc/gentoo-release: '.$packages[0]);
+ }
+ ok(!$pxs->fileBelongsToPackage('/this/path/most/likely/does/not/exist'),'fileBelongsToPackage bogus test');
+
+diff --git a/usr/bin/portagexs_client b/usr/bin/portagexs_client
+index 598d05a..688cb97 100755
+--- a/usr/bin/portagexs_client
++++ b/usr/bin/portagexs_client
+@@ -1,4 +1,4 @@
+-#!/usr/bin/perl
++#!@GENTOO_PORTAGE_EPREFIX@/usr/bin/perl
+
+ # -----------------------------------------------------------------------------
+ #
+@@ -54,9 +54,9 @@ if(!($sock = IO::Socket::SSL->new( PeerAddr => $remote_addr,
+ SSL_use_cert => 1,
+ SSL_verify_mode => 0x01,
+ SSL_passwd_cb => sub { return "" },
+- SSL_key_file => '/etc/pxs/certs/client-key.pem',
+- SSL_cert_file => '/etc/pxs/certs/client-cert.pem',
+- SSL_ca_file => '/etc/pxs/certs/my-ca.pem'
++ SSL_key_file => '@GENTOO_PORTAGE_EPREFIX@/etc/pxs/certs/client-key.pem',
++ SSL_cert_file => '@GENTOO_PORTAGE_EPREFIX@/etc/pxs/certs/client-cert.pem',
++ SSL_ca_file => '@GENTOO_PORTAGE_EPREFIX@/etc/pxs/certs/my-ca.pem'
+ ))) {
+ $pxs->print_err("unable to create socket: ".&IO::Socket::SSL::errstr."\n");
+ $pxs->print_err("Server down?\n");
+diff --git a/usr/sbin/portagexsd b/usr/sbin/portagexsd
+index 638f662..e93bdfa 100755
+--- a/usr/sbin/portagexsd
++++ b/usr/sbin/portagexsd
+@@ -1,4 +1,4 @@
+-#!/usr/bin/perl -t
++#!@GENTOO_PORTAGE_EPREFIX@/usr/bin/perl -t
+
+ # -----------------------------------------------------------------------------
+ #
+@@ -50,7 +50,7 @@ else {
+ sub main {
+ # - Parse config >
+ my %config = ();
+- $config{'cfgfiledata'} = $pxs->getFileContents("/etc/pxs/portagexsd.conf");
++ $config{'cfgfiledata'} = $pxs->getFileContents("@GENTOO_PORTAGE_EPREFIX@/etc/pxs/portagexsd.conf");
+ $config{'Port'} = $pxs->getParamFromFile($config{'cfgfiledata'},"Port","lastseen");
+ $config{'SSLpasswd'} = $pxs->getParamFromFile($config{'cfgfiledata'},"SSLpasswd","lastseen");
+ $config{'PidFile'} = $pxs->getParamFromFile($config{'cfgfiledata'},"PidFile","lastseen");
+@@ -60,7 +60,7 @@ sub main {
+ $config{'cfgfiledata'} = undef;
+
+ if (!$config{'I_AM_ROOT_AND_I_KNOW_WHAT_I_AM_DOING'}) {
+- syslog("info", 'Not starting server as it seems that you did not have a look at the configs yet! (/etc/pxs/portagexsd.conf)');
++ syslog("info", 'Not starting server as it seems that you did not have a look at the configs yet! (@GENTOO_PORTAGE_EPREFIX@/etc/pxs/portagexsd.conf)');
+ exit(0);
+ }
+
+@@ -70,9 +70,9 @@ sub main {
+ Reuse => 1,
+ SSL_verify_mode => 0x01,
+ SSL_passwd_cb => sub {return $config{'SSLpasswd'}},
+- SSL_key_file => '/etc/pxs/certs/server-key.pem',
+- SSL_cert_file => '/etc/pxs/certs/server-cert.pem',
+- SSL_ca_file => '/etc/pxs/certs/my-ca.pem'
++ SSL_key_file => '@GENTOO_PORTAGE_EPREFIX@/etc/pxs/certs/server-key.pem',
++ SSL_cert_file => '@GENTOO_PORTAGE_EPREFIX@/etc/pxs/certs/server-cert.pem',
++ SSL_ca_file => '@GENTOO_PORTAGE_EPREFIX@/etc/pxs/certs/my-ca.pem'
+ )) ) {
+ syslog("info", "Unable to create socket: ", &IO::Socket::SSL::errstr);
+ exit(0);
diff --git a/dev-perl/PortageXS/files/PortageXS-0.02.10-portage_path_fix.patch b/dev-perl/PortageXS/files/PortageXS-0.02.10-portage_path_fix.patch
new file mode 100644
index 000000000000..a9968cd7e79e
--- /dev/null
+++ b/dev-perl/PortageXS/files/PortageXS-0.02.10-portage_path_fix.patch
@@ -0,0 +1,86 @@
+diff -ur PortageXS-0.02.10.orig/lib/PortageXS/Core.pm PortageXS-0.02.10/lib/PortageXS/Core.pm
+--- PortageXS-0.02.10.orig/lib/PortageXS/Core.pm 2013-01-03 09:32:10.477597366 +0100
++++ PortageXS-0.02.10/lib/PortageXS/Core.pm 2013-01-03 09:32:12.707534858 +0100
+@@ -94,7 +94,7 @@
+ my $self = shift;
+ my $param = shift;
+ my @files = ();
+- my @etcfiles = qw(/etc/make.globals /etc/make.conf);
++ my @etcfiles = qw(/usr/share/portage/config/make.globals /etc/portage/make.conf);
+ my @profilefiles = ();
+ my $v = '';
+ my $parent = '';
+@@ -166,7 +166,7 @@
+ return $self->{'PORTDIR'};
+ }
+ else {
+- $self->{'PORTDIR'}=$self->getParamFromFile($self->getFileContents('/etc/make.globals').$self->getFileContents('/etc/make.conf'),'PORTDIR','lastseen');
++ $self->{'PORTDIR'}=$self->getParamFromFile($self->getFileContents('/usr/share/portage/config/make.globals').$self->getFileContents('/etc/portage/make.conf'),'PORTDIR','lastseen');
+ return $self->{'PORTDIR'};
+ }
+ }
+@@ -183,7 +183,7 @@
+ my $self = shift;
+ my $forcereload = shift;
+
+- return split(/ /,$self->getParamFromFile($self->getFileContents('/etc/make.globals').$self->getFileContents('/etc/make.conf'),'PORTDIR_OVERLAY','lastseen'));
++ return split(/ /,$self->getParamFromFile($self->getFileContents('/usr/share/portage/config/make.globals').$self->getFileContents('/etc/portage/make.conf'),'PORTDIR_OVERLAY','lastseen'));
+ }
+
+ # Description:
+diff -ur PortageXS-0.02.10.orig/lib/PortageXS/examples/getParamFromFile.pl PortageXS-0.02.10/lib/PortageXS/examples/getParamFromFile.pl
+--- PortageXS-0.02.10.orig/lib/PortageXS/examples/getParamFromFile.pl 2013-01-03 09:32:10.477597366 +0100
++++ PortageXS-0.02.10/lib/PortageXS/examples/getParamFromFile.pl 2013-01-03 09:32:12.707534858 +0100
+@@ -8,4 +8,5 @@
+
+ my $pxs=PortageXS->new();
+ print "CFLAGS are set to: ";
+-print join(' ',$pxs->getParamFromFile($pxs->getFileContents('/etc/make.globals').$pxs->getFileContents('/etc/make.conf'),'CFLAGS','lastseen'))."\n";
++print join('
++',$pxs->getParamFromFile($pxs->getFileContents('/usr/share/portage/config/make.globals').$pxs->getFileContents('/etc/portage/make.conf'),'CFLAGS','lastseen'))."\n";
+diff -ur PortageXS-0.02.10.orig/lib/PortageXS.pm PortageXS-0.02.10/lib/PortageXS.pm
+--- PortageXS-0.02.10.orig/lib/PortageXS.pm 2013-01-03 09:32:10.478597338 +0100
++++ PortageXS-0.02.10/lib/PortageXS.pm 2013-01-03 09:32:29.710057966 +0100
+@@ -77,7 +77,7 @@
+
+ $self->{'PORTAGEXS_ETC_DIR'} = '/etc/pxs/';
+ $self->{'ETC_DIR'} = '/etc/';
+- $self->{'MAKE_PROFILE_PATH'} = '/etc/make.profile';
++ $self->{'MAKE_PROFILE_PATH'} = '/etc/portage/make.profile';
+
+ # - init colors >
+ $self->{'COLORS'}{'YELLOW'} = color('bold yellow');
+@@ -89,7 +89,7 @@
+ $self->{'COLORS'}{'BLUE'} = color('bold blue');
+ $self->{'COLORS'}{'RESET'} = color('reset');
+
+- if (lc($self->getParamFromFile($self->getFileContents('/etc/make.conf'),'NOCOLOR','lastseen')) eq 'true') {
++ if (lc($self->getParamFromFile($self->getFileContents('/etc/portage/make.conf'),'NOCOLOR','lastseen')) eq 'true') {
+ $self->{'COLORS'}{'YELLOW'} = '';
+ $self->{'COLORS'}{'GREEN'} = '';
+ $self->{'COLORS'}{'LIGHTGREEN'} = '';
+diff -ur PortageXS-0.02.10.orig/t/01_Core.t PortageXS-0.02.10/t/01_Core.t
+--- PortageXS-0.02.10.orig/t/01_Core.t 2013-01-03 09:32:10.476597394 +0100
++++ PortageXS-0.02.10/t/01_Core.t 2013-01-03 09:32:12.707534858 +0100
+@@ -14,8 +14,8 @@
+
+ # - getFileContents >
+ {
+- my $content = $pxs->getFileContents('/etc/make.conf');
+- ok($content ne '','getFileContents of /etc/make.conf');
++ my $content = $pxs->getFileContents('/etc/portage/make.conf');
++ ok($content ne '','getFileContents of /etc/portage/make.conf');
+ }
+
+ # - searchInstalledPackage >
+@@ -26,8 +26,8 @@
+
+ # - getParamFromFile >
+ {
+- my $param = $pxs->getParamFromFile($pxs->getFileContents('/etc/make.conf'),'CFLAGS','lastseen');
+- ok($param ne '','getParamFromFile /etc/make.conf - CFLAGS: '.$param);
++ my $param = $pxs->getParamFromFile($pxs->getFileContents('/etc/portage/make.conf'),'CFLAGS','lastseen');
++ ok($param ne '','getParamFromFile /etc/portage/make.conf - CFLAGS: '.$param);
+ }
+
+ # - getUseSettingsOfInstalledPackage >
diff --git a/dev-perl/PortageXS/files/PortageXS-0.02.10-prefix.patch b/dev-perl/PortageXS/files/PortageXS-0.02.10-prefix.patch
new file mode 100644
index 000000000000..755bb13bb503
--- /dev/null
+++ b/dev-perl/PortageXS/files/PortageXS-0.02.10-prefix.patch
@@ -0,0 +1,137 @@
+diff -ur PortageXS-0.02.09.orig/lib/PortageXS/Core.pm PortageXS-0.02.09/lib/PortageXS/Core.pm
+--- PortageXS-0.02.09.orig/lib/PortageXS/Core.pm 2008-12-01 21:30:50 +0100
++++ PortageXS-0.02.09/lib/PortageXS/Core.pm 2009-03-18 20:56:20 +0100
+@@ -94,7 +94,7 @@
+ my $self = shift;
+ my $param = shift;
+ my @files = ();
+- my @etcfiles = qw(/usr/share/portage/config/make.globals /etc/portage/make.conf);
++ my @etcfiles = qw(@GENTOO_PORTAGE_EPREFIX@/usr/share/portage/config/make.globals @GENTOO_PORTAGE_EPREFIX@/etc/portage/make.conf);
+ my @profilefiles = ();
+ my $v = '';
+ my $parent = '';
+@@ -139,7 +139,7 @@
+
+ # - Defaults >
+ if ($param eq 'PORTDIR' && !$v) {
+- $v='/usr/portage';
++ $v='@GENTOO_PORTAGE_EPREFIX@/usr/portage';
+ }
+
+ return $v;
+@@ -166,7 +166,7 @@
+ return $self->{'PORTDIR'};
+ }
+ else {
+- $self->{'PORTDIR'}=$self->getParamFromFile($self->getFileContents('/usr/share/portage/config/make.globals').$self->getFileContents('/etc/portage/make.conf'),'PORTDIR','lastseen');
++ $self->{'PORTDIR'}=$self->getParamFromFile($self->getFileContents('@GENTOO_PORTAGE_EPREFIX@/usr/share/portage/config/make.globals').$self->getFileContents('@GENTOO_PORTAGE_EPREFIX@/etc/portage/make.conf'),'PORTDIR','lastseen');
+ return $self->{'PORTDIR'};
+ }
+ }
+@@ -183,7 +183,7 @@
+ my $self = shift;
+ my $forcereload = shift;
+
+- return split(/ /,$self->getParamFromFile($self->getFileContents('/usr/share/portage/config/make.globals').$self->getFileContents('/etc/portage/make.conf'),'PORTDIR_OVERLAY','lastseen'));
++ return split(/ /,$self->getParamFromFile($self->getFileContents('@GENTOO_PORTAGE_EPREFIX@/usr/share/portage/config/make.globals').$self->getFileContents('@GENTOO_PORTAGE_EPREFIX@/etc/portage/make.conf'),'PORTDIR_OVERLAY','lastseen'));
+ }
+
+ # Description:
+diff -ur PortageXS-0.02.09.orig/lib/PortageXS.pm PortageXS-0.02.09/lib/PortageXS.pm
+--- PortageXS-0.02.09.orig/lib/PortageXS.pm 2008-12-01 21:30:50 +0100
++++ PortageXS-0.02.09/lib/PortageXS.pm 2009-03-18 20:52:29 +0100
+@@ -61,8 +61,8 @@
+ $self->{'VERSION'} = $VERSION;
+
+ $self->{'PORTDIR'} = $self->getPortdir();
+- $self->{'PKG_DB_DIR'} = '/var/db/pkg/';
+- $self->{'PATH_TO_WORLDFILE'} = '/var/lib/portage/world';
++ $self->{'PKG_DB_DIR'} = '@GENTOO_PORTAGE_EPREFIX@/var/db/pkg/';
++ $self->{'PATH_TO_WORLDFILE'} = '@GENTOO_PORTAGE_EPREFIX@/var/lib/portage/world';
+ $self->{'IS_INITIALIZED'} = 1;
+
+ $self->{'EXCLUDE_DIRS'}{'.'} = 1;
+@@ -75,9 +75,9 @@
+ $self->{'EXCLUDE_DIRS'}{'CVS'} = 1;
+ $self->{'EXCLUDE_DIRS'}{'.cache'} = 1;
+
+- $self->{'PORTAGEXS_ETC_DIR'} = '/etc/pxs/';
+- $self->{'ETC_DIR'} = '/etc/';
+- $self->{'MAKE_PROFILE_PATH'} = '/etc/portage/make.profile';
++ $self->{'PORTAGEXS_ETC_DIR'} = '@GENTOO_PORTAGE_EPREFIX@/etc/pxs/';
++ $self->{'ETC_DIR'} = '@GENTOO_PORTAGE_EPREFIX@/etc/';
++ $self->{'MAKE_PROFILE_PATH'} = '@GENTOO_PORTAGE_EPREFIX@/etc/portage/make.profile';
+
+ # - init colors >
+ $self->{'COLORS'}{'YELLOW'} = color('bold yellow');
+@@ -89,7 +89,7 @@
+ $self->{'COLORS'}{'BLUE'} = color('bold blue');
+ $self->{'COLORS'}{'RESET'} = color('reset');
+
+- if (lc($self->getParamFromFile($self->getFileContents('/etc/portage/make.conf'),'NOCOLOR','lastseen')) eq 'true') {
++ if (lc($self->getParamFromFile($self->getFileContents('@GENTOO_PORTAGE_EPREFIX@/etc/portage/make.conf'),'NOCOLOR','lastseen')) eq 'true') {
+ $self->{'COLORS'}{'YELLOW'} = '';
+ $self->{'COLORS'}{'GREEN'} = '';
+ $self->{'COLORS'}{'LIGHTGREEN'} = '';
+diff -ur PortageXS-0.02.09.orig/usr/bin/portagexs_client PortageXS-0.02.09/usr/bin/portagexs_client
+--- PortageXS-0.02.09.orig/usr/bin/portagexs_client 2008-12-01 21:30:50 +0100
++++ PortageXS-0.02.09/usr/bin/portagexs_client 2009-03-18 20:52:29 +0100
+@@ -1,4 +1,4 @@
+-#!/usr/bin/perl
++#!@GENTOO_PORTAGE_EPREFIX@/usr/bin/perl
+
+ # -----------------------------------------------------------------------------
+ #
+@@ -54,9 +54,9 @@
+ SSL_use_cert => 1,
+ SSL_verify_mode => 0x01,
+ SSL_passwd_cb => sub { return "" },
+- SSL_key_file => '/etc/pxs/certs/client-key.pem',
+- SSL_cert_file => '/etc/pxs/certs/client-cert.pem',
+- SSL_ca_file => '/etc/pxs/certs/my-ca.pem'
++ SSL_key_file => '@GENTOO_PORTAGE_EPREFIX@/etc/pxs/certs/client-key.pem',
++ SSL_cert_file => '@GENTOO_PORTAGE_EPREFIX@/etc/pxs/certs/client-cert.pem',
++ SSL_ca_file => '@GENTOO_PORTAGE_EPREFIX@/etc/pxs/certs/my-ca.pem'
+ ))) {
+ $pxs->print_err("unable to create socket: ".&IO::Socket::SSL::errstr."\n");
+ $pxs->print_err("Server down?\n");
+diff -ur PortageXS-0.02.09.orig/usr/sbin/portagexsd PortageXS-0.02.09/usr/sbin/portagexsd
+--- PortageXS-0.02.09.orig/usr/sbin/portagexsd 2008-12-01 21:30:50 +0100
++++ PortageXS-0.02.09/usr/sbin/portagexsd 2009-03-18 20:52:29 +0100
+@@ -1,4 +1,4 @@
+-#!/usr/bin/perl -t
++#!@GENTOO_PORTAGE_EPREFIX@/usr/bin/perl -t
+
+ # -----------------------------------------------------------------------------
+ #
+@@ -50,7 +50,7 @@
+ sub main {
+ # - Parse config >
+ my %config = ();
+- $config{'cfgfiledata'} = $pxs->getFileContents("/etc/pxs/portagexsd.conf");
++ $config{'cfgfiledata'} = $pxs->getFileContents("@GENTOO_PORTAGE_EPREFIX@/etc/pxs/portagexsd.conf");
+ $config{'Port'} = $pxs->getParamFromFile($config{'cfgfiledata'},"Port","lastseen");
+ $config{'SSLpasswd'} = $pxs->getParamFromFile($config{'cfgfiledata'},"SSLpasswd","lastseen");
+ $config{'PidFile'} = $pxs->getParamFromFile($config{'cfgfiledata'},"PidFile","lastseen");
+@@ -60,7 +60,7 @@
+ $config{'cfgfiledata'} = undef;
+
+ if (!$config{'I_AM_ROOT_AND_I_KNOW_WHAT_I_AM_DOING'}) {
+- syslog("info", 'Not starting server as it seems that you did not have a look at the configs yet! (/etc/pxs/portagexsd.conf)');
++ syslog("info", 'Not starting server as it seems that you did not have a look at the configs yet! (@GENTOO_PORTAGE_EPREFIX@/etc/pxs/portagexsd.conf)');
+ exit(0);
+ }
+
+@@ -70,9 +71,9 @@
+ Reuse => 1,
+ SSL_verify_mode => 0x01,
+ SSL_passwd_cb => sub {return $config{'SSLpasswd'}},
+- SSL_key_file => '/etc/pxs/certs/server-key.pem',
+- SSL_cert_file => '/etc/pxs/certs/server-cert.pem',
+- SSL_ca_file => '/etc/pxs/certs/my-ca.pem'
++ SSL_key_file => '@GENTOO_PORTAGE_EPREFIX@/etc/pxs/certs/server-key.pem',
++ SSL_cert_file => '@GENTOO_PORTAGE_EPREFIX@/etc/pxs/certs/server-cert.pem',
++ SSL_ca_file => '@GENTOO_PORTAGE_EPREFIX@/etc/pxs/certs/my-ca.pem'
+ )) ) {
+ syslog("info", "Unable to create socket: ", &IO::Socket::SSL::errstr);
+ exit(0);
diff --git a/dev-perl/PortageXS/metadata.xml b/dev-perl/PortageXS/metadata.xml
new file mode 100644
index 000000000000..7b6605ae800d
--- /dev/null
+++ b/dev-perl/PortageXS/metadata.xml
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>kentnl@gentoo.org</email>
+ <name>Kent Fredric</name>
+ <description>Maintainer. Assign bugs to him</description>
+ </maintainer>
+ <maintainer type="project">
+ <email>perl@gentoo.org</email>
+ <name>Gentoo Perl Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="cpan">PortageXS</remote-id>
+ <remote-id type="cpan">PortageXS::Core</remote-id>
+ <remote-id type="cpan">PortageXS::System</remote-id>
+ <remote-id type="cpan">PortageXS::UI::Console</remote-id>
+ <remote-id type="cpan">PortageXS::UI::Spinner</remote-id>
+ <remote-id type="cpan">PortageXS::Useflags</remote-id>
+ <remote-id type="cpan">PortageXS::Version</remote-id>
+ </upstream>
+</pkgmetadata>