Sync with portage [Sun Sep 23 09:55:15 MSK 2018].

mhiretskiy 1228
root 6 years ago
parent ceab5bc2d2
commit 02d8feb38e

Binary file not shown.

Binary file not shown.

@ -1,7 +1,3 @@
DIST puppet-agent_1.10.12-1stretch_amd64.deb 15443166 BLAKE2B 74c8465fd8cc98ca114acdc600c3f259072d64765cdd8308092b7177233d44656f429407520ead2e02494951f57f1c79b5dfe8c76b2dd7bba7c1316426746df8 SHA512 1391530be340ad0439260f7bd3df8ad251ffaa02fc2f358e4ff2189b8c64a0b2d0caab9f84b84b26ebe2176decef2a39d3114f6433ba6eacd962ff45e1e04c43
DIST puppet-agent_1.10.12-1stretch_i386.deb 16308082 BLAKE2B 6606c15aac51b28e9e8011168563dff9069b6b065f861c01f4fc768064fe266f83211fbc8fefebfe4bdf81c6220b5daa19f66a9214bd1f2ff53a3b1a2e87128a SHA512 fce0a3ac12afcc293fbdf3cc990407b82592228ed8ed609f4b98c17cea35c8e5ff5f47287880601fa80ac2f7fa608dfe00b3594a906d52bc2bd2e04117ccb856
DIST puppet-agent_5.5.3-1stretch_amd64.deb 17272112 BLAKE2B 5e052f837184b1d1dd5965ccb18e3a52dc88ea6ba85c0c3c5222ffe50e32e0a72a6f14274f5dd6c1bd63b3a160affa8a6b3399ac75e27d9cc2c267a1e1c0e89d SHA512 1629b3535b900081676647f64c17e3c0d23df38525d90d5f3993877d0749d18cf55f72fb20c47e20a63d18c2c7ad95cc0f179449c386ce3b8ec8a6d0f40243e7
DIST puppet-agent_5.5.3-1stretch_i386.deb 18189670 BLAKE2B a8791926a5ce08edad363670ab5269fcef208c3137db4126f33295fd7fdd447620578445eb0a9396e263fed8612981581cef0c5f6d3e51634722c01c79e2c9dc SHA512 83a1f472c4af97a48703ca61a00740fc7806155732bd488d3f9d757f969dca0a19cec014dad0bb5e6d8b5384d32c2d906ad0e8438efeeae5fdd39524cc11f6f8
DIST puppet-agent_5.5.4-1stretch_amd64.deb 17273314 BLAKE2B e296cda8219deafe9b36039298823edb6007f42047e90e120fc16e941bb91c8d660e1a7f1341aa9463c67d4a5e05fbd8bf9c072a7768b0e885536efe5956115c SHA512 599aef07bb39b8d209e806ea1539157419de96376113ba88de6160525e96d6fa28f9865d7a89aff96698a0ff4e85ec474dd43ff4ea512b06a64c491c252cd973
DIST puppet-agent_5.5.4-1stretch_i386.deb 18195740 BLAKE2B aa1e5b7030de4ec58a389a552c0d2c870875244f6a722c9b87d4aca28261f073b347476aaa313edd4f66fa07621a333c777a3a6b04228aa7d2f35391f4f84df8 SHA512 3e7346ccde7d3bc9e99bb38a2958c9ddda3dd4a5124ced21dc048df41566a0d9e6d9e5250f7c93433c02585fd83031292f8197a7c6537a1563dd6ebec464b979
DIST puppet-agent_5.5.6-1stretch_amd64.deb 17279588 BLAKE2B d9614ee1cbec786303ac72fc9b704c90056771c9e3c23a93d6b7cff11f27394fbd277d5ae0d8eca20d9801d31019e7ca381af0cb60b72fc109ce6b2a99ee1124 SHA512 1172d72a1054cf04ab8033ab319313b7da6fd76684738bdb4aa1bc6bd9fa9dc0f2b00d765382023e0e854efbee6adba5b66bd62e2e04a9f153da79bccad427f7

@ -1,329 +0,0 @@
diff --git a/lib/puppet/provider/package/portage.rb b/lib/puppet/provider/package/portage.rb
index 374667c..12160c6 100644
--- a/opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/provider/package/portage.rb
+++ b/opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/provider/package/portage.rb
@@ -2,14 +2,19 @@
require 'fileutils'
Puppet::Type.type(:package).provide :portage, :parent => Puppet::Provider::Package do
- desc "Provides packaging support for Gentoo's portage system."
+ desc "Provides packaging support for Gentoo's portage system.
- has_features :versionable, :reinstallable
+ This provider supports the `install_options` and `uninstall_options` attributes, which allows command-line
+ flags to be passed to emerge. These options should be specified as a string (e.g. '--flag'), a hash
+ (e.g. {'--flag' => 'value'}), or an array where each element is either a string or a hash."
+
+ has_features :install_options, :purgeable, :reinstallable, :uninstall_options, :versionable, :virtual_packages
{
- :emerge => "/usr/bin/emerge",
- :eix => "/usr/bin/eix",
- :update_eix => "/usr/bin/eix-update",
+ :emerge => '/usr/bin/emerge',
+ :eix => '/usr/bin/eix',
+ :qatom_bin => '/usr/bin/qatom',
+ :update_eix => '/usr/bin/eix-update',
}.each_pair do |name, path|
has_command(name, path) do
environment :HOME => '/'
@@ -24,15 +29,18 @@ def self.instances
result_format = self.eix_result_format
result_fields = self.eix_result_fields
+ limit = self.eix_limit
version_format = self.eix_version_format
slot_versions_format = self.eix_slot_versions_format
+ installed_versions_format = self.eix_installed_versions_format
+ installable_versions_format = self.eix_install_versions_format
begin
- eix_file = File.directory?("/var/cache/eix") ? "/var/cache/eix/portage.eix" : "/var/cache/eix"
+ eix_file = File.directory?('/var/cache/eix') ? '/var/cache/eix/portage.eix' : '/var/cache/eix'
update_eix if !FileUtils.uptodate?(eix_file, %w{/usr/bin/eix /usr/portage/metadata/timestamp})
search_output = nil
- Puppet::Util.withenv :LASTVERSION => version_format, :LASTSLOTVERSIONS => slot_versions_format do
- search_output = eix *(self.eix_search_arguments + ["--installed"])
+ Puppet::Util.withenv :EIX_LIMIT => limit, :LASTVERSION => version_format, :LASTSLOTVERSIONS => slot_versions_format, :INSTALLEDVERSIONS => installed_versions_format, :STABLEVERSIONS => installable_versions_format do
+ search_output = eix *(self.eix_search_arguments + ['--installed'])
end
packages = []
@@ -57,65 +65,123 @@ def self.instances
def install
should = @resource.should(:ensure)
- name = package_name
- unless should == :present or should == :latest
- # We must install a specific version
- name = package_atom_with_version(should)
+ cmd = %w{}
+ name = qatom[:category] ? "#{qatom[:category]}/#{qatom[:pn]}" : qatom[:pn]
+ name = qatom[:pfx] + name if qatom[:pfx]
+ name = name + '-' + qatom[:pv] if qatom[:pv]
+ name = name + '-' + qatom[:pr] if qatom[:pr]
+ name = name + qatom[:slot] if qatom[:slot]
+ cmd << '--update' if [:latest].include?(should)
+ cmd += install_options if @resource[:install_options]
+ cmd << name
+ emerge *cmd
+ end
+
+ def uninstall
+ should = @resource.should(:ensure)
+ cmd = %w{--rage-clean}
+ name = qatom[:category] ? "#{qatom[:category]}/#{qatom[:pn]}" : qatom[:pn]
+ name = qatom[:pfx] + name if qatom[:pfx]
+ name = name + '-' + qatom[:pv] if qatom[:pv]
+ name = name + '-' + qatom[:pr] if qatom[:pr]
+ name = name + qatom[:slot] if qatom[:slot]
+ cmd += uninstall_options if @resource[:uninstall_options]
+ cmd << name
+ if [:purged].include?(should)
+ Puppet::Util.withenv :CONFIG_PROTECT => "-*" do
+ emerge *cmd
+ end
+ else
+ emerge *cmd
end
- emerge name
end
- # The common package name format.
- def package_name
- @resource[:category] ? "#{@resource[:category]}/#{@resource[:name]}" : @resource[:name]
+ def reinstall
+ self.install
end
- def package_name_without_slot
- package_name.sub(self.class.slot_pattern, '')
+ def update
+ self.install
end
- def package_slot
- if match = package_name.match(self.class.slot_pattern)
- match[1]
+ def qatom
+ output_format = self.qatom_output_format
+ result_format = self.qatom_result_format
+ result_fields = self.qatom_result_fields
+ @atom ||= begin
+ search_output = nil
+ package_info = {}
+ # do the search
+ search_output = qatom_bin *([@resource[:name], '--format', output_format])
+ # verify if the search found anything
+ match = result_format.match(search_output)
+ if match
+ result_fields.zip(match.captures) do |field, value|
+ # some fields can be empty or (null) (if we are not passed a category in the package name for instance)
+ if value == '(null)'
+ package_info[field] = nil
+ elsif !value or value.empty?
+ package_info[field] = nil
+ else
+ package_info[field] = value
+ end
+ end
+ end
+ @atom = package_info
+ rescue Puppet::ExecutionFailure => detail
+ raise Puppet::Error.new(detail)
end
end
- def package_atom_with_version(version)
- if slot = package_slot
- "=#{package_name_without_slot}-#{version}:#{package_slot}"
- else
- "=#{package_name}-#{version}"
- end
+ def qatom_output_format
+ '"[%{CATEGORY}] [%{PN}] [%{PV}] [%[PR]] [%[SLOT]] [%[pfx]] [%[sfx]]"'
end
- def uninstall
- emerge "--unmerge", package_name
+ def qatom_result_format
+ /^\"\[(\S*)\]\s+\[(\S*)\]\s+\[(\S*)\]\s+\[(\S*)\]\s+\[(\S*)\]\s+\[(\S*)\]\s+\[(\S*)\](.*)\"$/
end
- def reinstall
- self.install
+ def qatom_result_fields
+ [:category, :pn, :pv, :pr, :slot, :pfx, :sfx]
end
- def update
- self.install
+ def self.get_sets
+ @sets ||= begin
+ @sets = emerge *(['--list-sets'])
+ end
end
def query
+ limit = self.class.eix_limit
result_format = self.class.eix_result_format
result_fields = self.class.eix_result_fields
version_format = self.class.eix_version_format
slot_versions_format = self.class.eix_slot_versions_format
- search_field = package_name_without_slot.count('/') > 0 ? "--category-name" : "--name"
- search_value = package_name_without_slot
+ installed_versions_format = self.class.eix_installed_versions_format
+ installable_versions_format = self.class.eix_install_versions_format
+ search_field = qatom[:category] ? '--category-name' : '--name'
+ search_value = qatom[:category] ? "#{qatom[:category]}/#{qatom[:pn]}" : qatom[:pn]
+
+ @eix_result ||= begin
+ # package sets
+ package_sets = []
+ self.class.get_sets.each_line do |package_set|
+ package_sets << package_set.to_s.strip
+ end
- begin
- eix_file = File.directory?("/var/cache/eix") ? "/var/cache/eix/portage.eix" : "/var/cache/eix"
+ if @resource[:name].match(/^@/)
+ if package_sets.include?(@resource[:name][1..-1].to_s)
+ return({:name => "#{@resource[:name]}", :ensure => '9999', :version_available => nil, :installed_versions => nil, :installable_versions => "9999,"})
+ end
+ end
+
+ eix_file = File.directory?('/var/cache/eix') ? '/var/cache/eix/portage.eix' : '/var/cache/eix'
update_eix if !FileUtils.uptodate?(eix_file, %w{/usr/bin/eix /usr/portage/metadata/timestamp})
search_output = nil
- Puppet::Util.withenv :LASTVERSION => version_format, :LASTSLOTVERSIONS => slot_versions_format do
- search_output = eix *(self.class.eix_search_arguments + ["--exact",search_field,search_value])
+ Puppet::Util.withenv :EIX_LIMIT => limit, :LASTVERSION => version_format, :LASTSLOTVERSIONS => slot_versions_format, :INSTALLEDVERSIONS => installed_versions_format, :STABLEVERSIONS => installable_versions_format do
+ search_output = eix *(self.class.eix_search_arguments + ['--exact',search_field,search_value])
end
packages = []
@@ -127,10 +193,19 @@ def query
result_fields.zip(match.captures) do |field, value|
package[field] = value unless !value or value.empty?
end
- if package_slot
- package[:version_available] = eix_get_version_for_slot(package[:slot_versions_available], package_slot)
- package[:ensure] = eix_get_version_for_slot(package[:installed_slots], package_slot)
+ # dev-lang python [3.4.5] [3.5.2] [2.7.12:2.7,3.4.5:3.4] [2.7.12:2.7,3.4.5:3.4,3.5.2:3.5] https://www.python.org/ An interpreted, interactive, object-oriented programming language
+ # version_available is what we CAN install / update to
+ # ensure is what is currently installed
+ # This DOES NOT choose to install/upgrade or not, just provides current info
+ # prefer checking versions to slots as versions are finer grained
+ if qatom[:pv]
+ package[:version_available] = eix_get_version_for_versions(package[:installable_versions], qatom[:pv])
+ package[:ensure] = eix_get_version_for_versions(package[:installed_versions], qatom[:pv])
+ elsif qatom[:slot]
+ package[:version_available] = eix_get_version_for_slot(package[:slot_versions_available], qatom[:slot])
+ package[:ensure] = eix_get_version_for_slot(package[:installed_slots], qatom[:slot])
end
+
package[:ensure] = package[:ensure] ? package[:ensure] : :absent
packages << package
end
@@ -138,10 +213,9 @@ def query
case packages.size
when 0
- not_found_value = "#{@resource[:category] ? @resource[:category] : "<unspecified category>"}/#{@resource[:name]}"
- raise Puppet::Error.new("No package found with the specified name [#{not_found_value}]")
+ raise Puppet::Error.new("No package found with the specified name [#{@resource[:name]}]")
when 1
- return packages[0]
+ @eix_result = packages[0]
else
raise Puppet::Error.new("More than one package with the specified name [#{search_value}], please use the category parameter to disambiguate")
end
@@ -155,39 +229,73 @@ def latest
end
private
+ def eix_get_version_for_versions(versions, target)
+ # [2.7.10-r1,2.7.12,3.4.3-r1,3.4.5,3.5.2] 3.5.2
+ return nil if versions.nil?
+ versions = versions.split(',')
+ # [2.7.10-r1 2.7.12 3.4.3-r1 3.4.5 3.5.2]
+ versions.find { |version| version == target }
+ # 3.5.2
+ end
+
+ private
def eix_get_version_for_slot(versions_and_slots, slot)
+ # [2.7.12:2.7 3.4.5:3.4 3.5.2:3.5] 3.5
return nil if versions_and_slots.nil?
- versions_and_slots = versions_and_slots.split(",")
- versions_and_slots.map! { |version_and_slot| version_and_slot.split(":") }
- version_for_slot = versions_and_slots.find { |version_and_slot| version_and_slot.last == slot }
+ versions_and_slots = versions_and_slots.split(',')
+ # [2.7.12:2.7 3.4.5:3.4 3.5.2:3.5]
+ versions_and_slots.map! { |version_and_slot| version_and_slot.split(':') }
+ # [2.7.12: 2.7
+ # 3.4.5: 3.4
+ # 3.5.2: 3.5]
+ version_for_slot = versions_and_slots.find { |version_and_slot| version_and_slot.last == slot[1..-1] }
+ # [3.5.2: 3.5]
version_for_slot.first if version_for_slot
- end
-
- def self.slot_pattern
- /:([\w+.\/*=-]+)$/
+ # 3.5.2
end
def self.eix_search_format
- "'<category> <name> [<installedversions:LASTVERSION>] [<bestversion:LASTVERSION>] [<installedversions:LASTSLOTVERSIONS>] [<bestslotversions:LASTSLOTVERSIONS>] <homepage> <description>\n'"
+ "'<category> <name> [<installedversions:LASTVERSION>] [<bestversion:LASTVERSION>] [<installedversions:LASTSLOTVERSIONS>] [<installedversions:INSTALLEDVERSIONS>] [<availableversions:STABLEVERSIONS>] [<bestslotversions:LASTSLOTVERSIONS>] <homepage> <description>\n'"
end
def self.eix_result_format
- /^(\S+)\s+(\S+)\s+\[(\S*)\]\s+\[(\S*)\]\s+\[(\S*)\]\s+\[(\S*)\]\s+(\S+)\s+(.*)$/
+ /^(\S+)\s+(\S+)\s+\[(\S*)\]\s+\[(\S*)\]\s+\[(\S*)\]\s+\[(\S*)\]\s+\[(\S*)\]\s+\[(\S*)\]\s+(\S+)\s+(.*)$/
end
def self.eix_result_fields
- [:category, :name, :ensure, :version_available, :installed_slots, :slot_versions_available, :vendor, :description]
+ # ensure:[3.4.5], version_available:[3.5.2], installed_slots:[2.7.12:2.7,3.4.5:3.4], installable_versions:[2.7.10-r1,2.7.12,3.4.3-r1,3.4.5,3.5.2] slot_versions_available:[2.7.12:2.7,3.4.5:3.4,3.5.2:3.5]
+ [:category, :name, :ensure, :version_available, :installed_slots, :installed_versions, :installable_versions, :slot_versions_available, :vendor, :description]
end
def self.eix_version_format
- "{last}<version>{}"
+ '{last}<version>{}'
end
def self.eix_slot_versions_format
- "{!first},{}<version>:<slot>"
+ '{!first},{}<version>:<slot>'
+ end
+
+ def self.eix_installed_versions_format
+ '{!first},{}<version>'
+ end
+
+ def self.eix_install_versions_format
+ '{!first}{!last},{}{}{isstable}<version>{}'
+ end
+
+ def self.eix_limit
+ '0'
end
def self.eix_search_arguments
- ["--nocolor", "--pure-packages", "--format",self.eix_search_format]
+ ['--nocolor', '--pure-packages', '--format', self.eix_search_format]
+ end
+
+ def install_options
+ join_options(@resource[:install_options])
+ end
+
+ def uninstall_options
+ join_options(@resource[:uninstall_options])
end
end

@ -7,7 +7,6 @@
</maintainer>
<use>
<flag name="puppetdb">Adds puppetdb support</flag>
<flag name="experimental">Add patches for things in testing</flag>
</use>
<longdescription lang="en">
Collection of puppet utils, clients and batteries included.

@ -1,111 +0,0 @@
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
inherit eutils systemd unpacker user
DESCRIPTION="general puppet client utils along with mcollective hiera and facter"
HOMEPAGE="https://puppetlabs.com/"
SRC_BASE="http://apt.puppetlabs.com/pool/stretch/PC1/${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="experimental puppetdb selinux"
RESTRICT="strip"
CDEPEND="!app-admin/augeas
!app-admin/mcollective
!app-admin/puppet
!dev-ruby/hiera
!dev-ruby/facter
!app-emulation/virt-what"
DEPEND="
${CDEPEND}"
RDEPEND="${CDEPEND}
app-portage/eix
sys-apps/dmidecode
sys-libs/glibc
>=sys-libs/readline-6.0
<sys-libs/readline-7.0
selinux? (
sys-libs/libselinux[ruby]
sec-policy/selinux-puppet
)
puppetdb? ( >=dev-ruby/puppetdb-termini-3.1.0 )"
S=${WORKDIR}
QA_PREBUILT="
/opt/puppetlabs/puppet
/opt/puppetlabs/puppet/lib/ruby/vendor_ruby/2.1.0/x86_64-linux/*
/opt/puppetlabs/puppet/lib/ruby/2.1.0/x86_64-linux/mathn/*
/opt/puppetlabs/puppet/lib/ruby/2.1.0/x86_64-linux/io/*
/opt/puppetlabs/puppet/lib/ruby/2.1.0/x86_64-linux/dl/*
/opt/puppetlabs/puppet/lib/ruby/2.1.0/x86_64-linux/racc/*
/opt/puppetlabs/puppet/lib/ruby/2.1.0/x86_64-linux/enc/*
/opt/puppetlabs/puppet/lib/ruby/2.1.0/x86_64-linux/json/ext/*
/opt/puppetlabs/puppet/lib/ruby/2.1.0/x86_64-linux/rbconfig/*
/opt/puppetlabs/puppet/lib/ruby/2.1.0/x86_64-linux/digest/*
/opt/puppetlabs/puppet/lib/ruby/2.1.0/x86_64-linux/*
/opt/puppetlabs/puppet/lib/engines/*
/opt/puppetlabs/puppet/lib/virt-what/*
/opt/puppetlabs/puppet/lib/*
/opt/puppetlabs/puppet/bin/*"
pkg_setup() {
enewgroup puppet
enewuser puppet -1 -1 /var/run/puppet puppet
}
src_prepare() {
if use experimental; then
epatch "${FILESDIR}/43e2c935252b995134ce353e5e6312cf77aea480.patch"
fi
eapply_user
}
src_install() {
# conf.d
doconfd etc/default/puppet
doconfd etc/default/mcollective
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
newinitd "${FILESDIR}/mcollective.initd" mcollective
systemd_dounit lib/systemd/system/puppet.service
systemd_dounit lib/systemd/system/mcollective.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/mco /usr/bin/mco
dosym ../../opt/puppetlabs/bin/puppet /usr/bin/puppet
dosym ../../opt/puppetlabs/puppet/bin/mcollectived /usr/sbin/mcollectived
dosym ../../opt/puppetlabs/puppet/bin/virt-what /usr/bin/virt-what
dosym ../../opt/puppetlabs/puppet/bin/augparse /usr/bin/augparse
dosym ../../opt/puppetlabs/puppet/bin/augtool /usr/bin/augtool
dosym ../../opt/puppetlabs/puppet/bin/extlookup2hiera /usr/bin/extlookup2hiera
}

@ -1,85 +0,0 @@
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
inherit eutils systemd unpacker user
DESCRIPTION="general puppet client utils along with mcollective hiera and facter"
HOMEPAGE="https://puppetlabs.com/"
SRC_BASE="http://apt.puppetlabs.com/pool/stretch/puppet5/${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/augeas
!app-admin/mcollective
!app-admin/puppet
!dev-ruby/hiera
!dev-ruby/facter
!app-emulation/virt-what"
DEPEND="
${CDEPEND}"
RDEPEND="${CDEPEND}
app-portage/eix
sys-apps/dmidecode
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}
pkg_setup() {
enewgroup puppet
enewuser puppet -1 -1 /var/run/puppet puppet
}
src_install() {
# conf.d
doconfd etc/default/puppet
doconfd etc/default/mcollective
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
newinitd "${FILESDIR}/mcollective.initd" mcollective
systemd_dounit lib/systemd/system/puppet.service
systemd_dounit lib/systemd/system/mcollective.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/mco /usr/bin/mco
dosym ../../opt/puppetlabs/bin/puppet /usr/bin/puppet
dosym ../../opt/puppetlabs/puppet/bin/mcollectived /usr/sbin/mcollectived
dosym ../../opt/puppetlabs/puppet/bin/virt-what /usr/bin/virt-what
dosym ../../opt/puppetlabs/puppet/bin/augparse /usr/bin/augparse
dosym ../../opt/puppetlabs/puppet/bin/augtool /usr/bin/augtool
}

@ -13,7 +13,7 @@ SRC_URI="
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="~amd64 ~x86"
KEYWORDS="amd64 x86"
IUSE="puppetdb selinux"
RESTRICT="strip"

@ -1,6 +1,5 @@
DIST puppet-4.10.11.tar.gz 3022878 BLAKE2B d3eec840bb1c46e0dfbbc9dad598b362049a76c7ee60b4ff314e7ba2ce19613f834baced94afbbf499b513391107c4229be5f40c275d0724b200358722db0e96 SHA512 5eaac8bd973d0013e7774c9bda81524332f2b3b0177c04e78554bfb0815697b4b296d5dd11a04f7fad782ad975b350b149b1cd97fc5f06974952314f163f1b40
DIST puppet-4.10.12.tar.gz 3022218 BLAKE2B 03757857868b1544078ae5e40d6e438631c788f1b01a3e62ba90e477b754601d2c085228e084363ff20ee39728b02ebe8ca83e17f7c79dddae1c3968aef4e320 SHA512 ff7accf70b1d4de7282cf3b41246151c49c4758a41ace56a470e4723749638027011cf170747e66fa5812280e1612e754e12d92dd35fa6c93171f7187bb9cfa2
DIST puppet-5.5.2.tar.gz 3036714 BLAKE2B 8be2c2fa7b66a2fd8d413f01afad22f7e0724c31a0a92b777f1b61e2139f14f3284a11cfb52fea8833556208d8bb3e99f20b1ed4fa2816809eaa4b92fa730cd5 SHA512 4995b6b6d1b75d68dd4c8eba37585c0afa88f9c6b78857e837886ea72b373c884182adf8791e0c9f2a5079f22681a40073e512e6b727ecfcaff463c8024cf5db
DIST puppet-5.5.3.tar.gz 3040000 BLAKE2B d2534da5956806e5280c59e82332f1ffca79e72f73b1abb460f155aac936a5ba1719f18dc5742c85fca365ff6b03a602ca0ceaa04714091045ab2afac1b57823 SHA512 14a711002c64f0598930f64e9e2b81c03daddda750860acb349271c1cc9d04c0d149b14817b200dda26f0ca75c3f79593990ecf28a5cca83220a3f5a16eac34d
DIST puppet-5.5.6.tar.gz 3026301 BLAKE2B eb05a0c4eed99ce1ce7a77be76da069be1e4b4f8917206b3811a3a7378c2e39b9c84b560bbcce0bee180ddb502251efb48362dd1c2494c79e6f441cde41a2707 SHA512 53bccc4cf3d4dde3079d96cd28b4cf380d004fdf67da8eaeaf70706ca5e1fe611910042f1aa03453fb29419bb9888a0eeef9a9d64e8f0cfe5d8d7a73e5bf5850
DIST puppet-6.0.0.tar.gz 2790790 BLAKE2B 1f31839ca21a525ecfbfec2531e8a7570a7c9da5b0e2a8bf3b8641eba9637c61509fb00b3445d0b6ad6b9ef814b9a27850704c897b62ab660eb864f80d990bc8 SHA512 4443f76ec2c8cc23adf112573e5f4e5cef26973c058a70cdf00471b8bd5ac4bc01fb9aa5ba62cb20585266de917c809a439c88a430f051b127d99ef02547c677

@ -1,144 +0,0 @@
# Copyright 1999-2018 Gentoo Foundation
# 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 user ruby-fakegem versionator
DESCRIPTION="A system automation and configuration management software."
HOMEPAGE="http://puppetlabs.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
# can't be run within portage.
epatch "${FILESDIR}/puppet-fix-tests-4.7.0.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
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 [ "$(get_major_version $v)" = "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
}

@ -19,7 +19,7 @@ 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"
KEYWORDS="amd64 ~arm ~hppa ~ppc ~ppc64 x86"
IUSE="augeas diff doc emacs ldap rrdtool selinux shadow sqlite vim-syntax"
RESTRICT="test"

@ -1,4 +1,3 @@
DIST puppetserver-5.3.3.tar.gz 67238194 BLAKE2B 0a0b235f26ab15c8f461f6663c26531d3ae469c4467ae33caa98f70d94a02fb89eb0399405be6b1f65f65b2fe4add7a24129f367ae1ab028189d250b087d0915 SHA512 dced3a7b7b3acb8966e4eb6f35aa82c84d0bba81487fa0cffc60fa0751b5d5c633be925471145a3e21b8f74bcffaa74f02310644ecc8bf8ebef0222d967fa86a
DIST puppetserver-5.3.4.tar.gz 67238476 BLAKE2B a92bdf77ffefc7c65c5cfd39431aa6b485bd92c617c4e32a281bfa431fbb428209b8834ef464a521e00d07f3ce0a443fe8a187f3a235c3200531533a1efa242d SHA512 edfa121d64fdbca9a8eef201fe6744e2694141deb318bec64c942bb1ebe6ea61ba1aaa15aee4f4e59913f79247b1c833c6633d3ff121eee836a83ccbaaece900
DIST puppetserver-5.3.5.tar.gz 67238513 BLAKE2B 075d6101a29b57a1693a76ba557e4cff3b5689a7bd38cc9f0f116962081ec71a29c31dbd22be9bad49897f94fe0f309d87780d2edcdd6c02e9f403e4b0a631c2 SHA512 4d7546ed845cfc9b37e2db094cb0a7340bb344dbbf52eba9cac7e54b277302449e2c9c464243c0804c8d14c00d146e74725e0e46bde0297104c394ae19f2095c
DIST puppetserver-6.0.0.tar.gz 62345355 BLAKE2B 086337ef25b89699df07779676727a28f580f992b04ca8fb0d26c38121fef625798ebb064a8a19c87341fbf2c54362158b60b772b94ff6f2f77efe3acac266f9 SHA512 2ab477e381fcb853bb862065465a4a29388e94d01cda49d78d2149dd25636cf98b9f0501733028fe3c5e61c36fc8093bf0423e5df01401e1e8888c2c48f79a2d

@ -1,130 +0,0 @@
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
inherit multilib systemd tmpfiles user
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+=""
pkg_setup() {
enewgroup puppet
enewuser puppet -1 -1 /opt/puppetlabs/server/data/puppetserver "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
doins jruby-9k.jar
doins jruby-1_7.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/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" 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
newins ext/build-scripts/gem-list.txt puppetserver-gem-list.txt
newtmpfiles 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"
elog "do"
elog " java -cp puppet-server-release.jar:jruby-1_7.jar clojure.main -m puppetlabs.puppetserver.cli.gem --config jruby.conf -- install \$(echo \$LINE |awk '{print \$1}') --version \$(echo \$LINE |awk '{print \$2}')"
elog "done < /opt/puppetlabs/server/data/puppetserver-gem-list.txt"
}

@ -13,7 +13,7 @@ LICENSE="Apache-2.0"
SLOT="0"
IUSE="puppetdb"
# will need the same keywords as puppet
KEYWORDS="~amd64 ~x86"
KEYWORDS="amd64 x86"
RDEPEND+="
>=virtual/jdk-1.8.0

Binary file not shown.

@ -2,3 +2,4 @@ DIST evtest-1.30-mans.tar.gz 2112 BLAKE2B 63981baf8c69993850d974f9bc94a9b96a45c3
DIST evtest-1.30.tar.gz 25556 BLAKE2B c396940af72faeb27143472cd62c3ada3016fea67184bdac2708a6d6347b07e4cc5a994b5c585263faa00d82003ed4f4859f51ed53a374e985389dc8102f8dff SHA512 ea995c37c0cf8dd8a4c493895bd039e4adac5056a06e9e0275e879ca1e774e98b5cf42bc77f1ad34225b15282cc4edb6dc088cb6fb16f82250bc35fb3975c4bf
DIST evtest-1.31-mans.tar.gz 1661 BLAKE2B fc7763703299a7129e7332378df6190d42089776e9b2f88d1e9bd42592e2945313046e798862590869f7eb76e56136cec6d575ec9301d5cd9af44b810e13c676 SHA512 b3cd5cc8aaf6620a3243318ae42e807a8819a25082606707787ab8b1ac75f1f6dfc8b544d38a74b489d348981489153c33841ba0b0466ace3e3a83b031754321
DIST evtest-1.31.tar.gz 17968 BLAKE2B 09ca1cfbac40f84d6715625a932839d8095caeae26b2dcfab73f66651d7d315381ccb92c50aa5b9b68f9495a4e48f2ce6d0fe2b7243b7ec91e4e4acee530e49b SHA512 1657d880c531c6c8407bf7a66ab159a5992c9ab70b840e600e91ad3a7429a07ec2c2f3bca6848614ebbad01a4a5993e43e4388705455f9d31f8b60b06c04a7c4
DIST evtest-1.33.tar.gz 19736 BLAKE2B 1b36207f67fe7db12bbe8d8db119f1cd4a9adc34b839762b198c29044a36e6fe9e8275d68a27204de4d287d1f12bde43f3895003fba9403a443189fe289decb2 SHA512 e8d6b76a2256ca6085ec07a66af913873ec5bc196bea87bca4f9b3e8b3222b34fcf636572383df74940b9b5db4a07f3e0be3ffe1454c605520da0c56f38506c3

@ -0,0 +1,26 @@
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit autotools
DESCRIPTION="test program for capturing input device events"
HOMEPAGE="https://cgit.freedesktop.org/evtest/"
SRC_URI="https://cgit.freedesktop.org/evtest/snapshot/${PN}-${P}.tar.gz -> ${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86"
BDEPEND="virtual/pkgconfig"
DEPEND="app-text/asciidoc
app-text/xmlto"
S="${WORKDIR}/${PN}-${P}"
src_prepare() {
default
eautoreconf
}

@ -1,5 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
<maintainer type="person">
<email>zlogene@gentoo.org</email>
<name>Mikle Kolyada</name>
</maintainer>
</pkgmetadata>

Binary file not shown.

@ -1,2 +1,3 @@
DIST liberasurecode-1.1.1.tar.gz 202934 BLAKE2B 06048aaf304a8e00f1c74312558b00512a5473c6e24e64a03f832c1c1b74ae8c4f1b67efc78ae71d15ee43007e59d8a5151ab77e8a6808114cba7f3eebdee99c SHA512 651d9537f2f1152eecae777b02d4d877b3aabcc88c354fe977679ca5025c83635b165fdf12be6174944037822ad3e2b075a9c270cae81c8f4f15c4bfcdc569cf
DIST liberasurecode-1.5.0.tar.gz 209093 BLAKE2B 4c1911ee1884e0a47fd6665327aaed45b423d5c95ed33c01c7857636fcfe5ef56677a80a2c40de9ddcdc7363b54f9f86dce205cff445a3492afc1500ed5c51f1 SHA512 369b19cb3db90a459667f024949784780f53b409961180ed36dc2299f4bad0037dc44d36b09e198da8e9f8a129bd7d1d2c4648216356d86f0fdf96c4166def5f
DIST liberasurecode-1.6.0.tar.gz 209343 BLAKE2B 43dabdafac29972bb439fd81f37ac7fd562309e62b30c454326684ef58fecf4aa755193e69e194aa8db2d1b65ba421c7dbd571f1230996f0b405f6ce4ff3caed SHA512 168fb75f2e329e79d6cbbc5d97e7a60963f742d9cce6e492a3c845ef77acc204b00a34292e847ae0c165177fa38a8563de2428d01f8f47364af4fb1e8f4d9517

@ -0,0 +1,37 @@
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
inherit autotools eutils multilib toolchain-funcs
DESCRIPTION="Erasure Code API library written in C with pluggable Erasure Code backends."
HOMEPAGE="https://bitbucket.org/tsg-/liberasurecode/overview"
SRC_URI="https://github.com/openstack/liberasurecode/archive/${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="BSD"
SLOT="0"
KEYWORDS="~amd64 ~arm64 ~x86"
IUSE="doc static-libs"
RDEPEND=""
DEPEND="sys-devel/autoconf
doc? ( app-doc/doxygen )"
src_prepare() {
eapply_user
eautoreconf
}
src_configure() {
econf \
--htmldir=/usr/share/doc/${PF} \
--disable-werror \
$(use_enable doc doxygen) \
$(use_enable static-libs static)
}
src_install() {
default
prune_libtool_files
}

@ -1,35 +0,0 @@
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
DIST_AUTHOR=PHRED
DIST_VERSION=1.60
DIST_EXAMPLES=("examples/*")
inherit perl-module
DESCRIPTION="A wrapper that lets you read Zip archive members as if they were files"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
IUSE="test"
RDEPEND="
>=virtual/perl-Compress-Raw-Zlib-2.17.0
virtual/perl-File-Path
>=virtual/perl-File-Spec-0.800.0
virtual/perl-File-Temp
virtual/perl-IO
virtual/perl-Time-Local
"
DEPEND="${RDEPEND}
virtual/perl-ExtUtils-MakeMaker
test? (
dev-perl/Test-MockModule
>=virtual/perl-Test-Simple-0.880.0
)
"
PATCHES=(
"${FILESDIR}/${PN}-1.60-CVE-2018-10860.patch"
)

@ -1,395 +0,0 @@
From 4c200ada6595c0add0de2c450cc44cebd1dbb609 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <ppisar@redhat.com>
Date: Fri, 15 Jun 2018 14:49:47 +0200
Subject: Prevent from traversing symlinks and parent directories when
extracting
If an attacker-supplied archive contains symbolic links and files that
referes to the symbolic links in their path components, the user can
be tricked into overwriting any arbitrary file.
The same issue is with archives whose members refer to a parent
directory (..) in their path components.
This patch fixes it by aborting an extraction (extractTree(),
extractMember(), extractMemberWithoutPaths()) in those cases by not
traversing the dangerous paths and returning AZ_ERORR instead.
However, if a user supplies a local file name, the security checks are
not performed. This is based on the assumption that a user knows
what's on his local file system.
CVE-2018-10860
Bug: https://bugzilla.redhat.com/show_bug.cgi?id=1591449
Bug: https://bugs.gentoo.org/660466
Bug: https://github.com/redhotpenguin/perl-Archive-Zip/pull/33
---
MANIFEST | 3 +
lib/Archive/Zip.pm | 8 ++
lib/Archive/Zip/Archive.pm | 37 +++++
t/25_traversal.t | 189 +++++++++++++++++++++++++
t/data/dotdot-from-unexistant-path.zip | Bin 0 -> 245 bytes
t/data/link-dir.zip | Bin 0 -> 260 bytes
t/data/link-samename.zip | Bin 0 -> 257 bytes
7 files changed, 237 insertions(+)
create mode 100644 t/25_traversal.t
create mode 100644 t/data/dotdot-from-unexistant-path.zip
create mode 100644 t/data/link-dir.zip
create mode 100644 t/data/link-samename.zip
diff --git a/MANIFEST b/MANIFEST
index 37d8b8d..dd9675a 100644
--- a/MANIFEST
+++ b/MANIFEST
@@ -59,6 +59,7 @@ t/21_zip64.t
t/22_deflated_dir.t
t/23_closed_handle.t
t/24_unicode_win32.t
+t/25_traversal.t
t/badjpeg/expected.jpg
t/badjpeg/source.zip
t/common.pm
@@ -68,6 +69,7 @@ t/data/crypcomp.zip
t/data/crypt.zip
t/data/def.zip
t/data/defstr.zip
+t/data/dotdot-from-unexistant-path.zip
t/data/empty.zip
t/data/emptydef.zip
t/data/emptydefstr.zip
@@ -75,6 +77,7 @@ t/data/emptystore.zip
t/data/emptystorestr.zip
t/data/good_github11.zip
t/data/jar.zip
+t/data/link-dir.zip
t/data/linux.zip
t/data/mkzip.pl
t/data/perl.zip
diff --git a/lib/Archive/Zip.pm b/lib/Archive/Zip.pm
index ca82e31..907808b 100644
--- a/lib/Archive/Zip.pm
+++ b/lib/Archive/Zip.pm
@@ -1145,6 +1145,9 @@ member is used as the name of the extracted file or
directory.
If you pass C<$extractedName>, it should be in the local file
system's format.
+If you do not pass C<$extractedName> and the internal filename traverses
+a parent directory or a symbolic link, the extraction will be aborted with
+C<AC_ERROR> for security reason.
All necessary directories will be created. Returns C<AZ_OK>
on success.
@@ -1162,6 +1165,9 @@ extracted member (its paths will be deleted too). Otherwise,
the internal filename of the member (minus paths) is used as
the name of the extracted file or directory. Returns C<AZ_OK>
on success.
+If you do not pass C<$extractedName> and the internal filename is equalled
+to a local symbolic link, the extraction will be aborted with C<AC_ERROR> for
+security reason.
=item addMember( $member )
@@ -1609,6 +1615,8 @@ a/x to f:\d\e\x
a/b/c to f:\d\e\b\c and ignore ax/d/e and d/e
+If the path to the extracted file traverses a parent directory or a symbolic
+link, the extraction will be aborted with C<AC_ERROR> for security reason.
Returns an error code or AZ_OK if everything worked OK.
=back
diff --git a/lib/Archive/Zip/Archive.pm b/lib/Archive/Zip/Archive.pm
index 48f0d1a..b0d3e46 100644
--- a/lib/Archive/Zip/Archive.pm
+++ b/lib/Archive/Zip/Archive.pm
@@ -185,6 +185,8 @@ sub extractMember {
$dirName = File::Spec->catpath($volumeName, $dirName, '');
} else {
$name = $member->fileName();
+ if ((my $ret = _extractionNameIsSafe($name))
+ != AZ_OK) { return $ret; }
($dirName = $name) =~ s{[^/]*$}{};
$dirName = Archive::Zip::_asLocalName($dirName);
$name = Archive::Zip::_asLocalName($name);
@@ -218,6 +220,8 @@ sub extractMemberWithoutPaths {
unless ($name) {
$name = $member->fileName();
$name =~ s{.*/}{}; # strip off directories, if any
+ if ((my $ret = _extractionNameIsSafe($name))
+ != AZ_OK) { return $ret; }
$name = Archive::Zip::_asLocalName($name);
}
my $rc = $member->extractToFileNamed($name, @_);
@@ -827,6 +831,37 @@ sub addTreeMatching {
return $self->addTree($root, $dest, $matcher, $compressionLevel);
}
+# Check if one of the components of a path to the file or the file name
+# itself is an already existing symbolic link. If yes then return an
+# error. Continuing and writing to a file traversing a link posseses
+# a security threat, especially if the link was extracted from an
+# attacker-supplied archive. This would allow writing to an arbitrary
+# file. The same applies when using ".." to escape from a working
+# directory. <https://bugzilla.redhat.com/show_bug.cgi?id=1591449>
+sub _extractionNameIsSafe {
+ my $name = shift;
+ my ($volume, $directories) = File::Spec->splitpath($name, 1);
+ my @directories = File::Spec->splitdir($directories);
+ if (grep '..' eq $_, @directories) {
+ return _error(
+ "Could not extract $name safely: a parent directory is used");
+ }
+ my @path;
+ my $path;
+ for my $directory (@directories) {
+ push @path, $directory;
+ $path = File::Spec->catpath($volume, File::Spec->catdir(@path), '');
+ if (-l $path) {
+ return _error(
+ "Could not extract $name safely: $path is an existing symbolic link");
+ }
+ if (!-e $path) {
+ last;
+ }
+ }
+ return AZ_OK;
+}
+
# $zip->extractTree( $root, $dest [, $volume] );
#
# $root and $dest are Unix-style.
@@ -861,6 +896,8 @@ sub extractTree {
$fileName =~ s{$pattern}{$dest}; # in Unix format
# convert to platform format:
$fileName = Archive::Zip::_asLocalName($fileName, $volume);
+ if ((my $ret = _extractionNameIsSafe($fileName))
+ != AZ_OK) { return $ret; }
my $status = $member->extractToFileNamed($fileName);
return $status if $status != AZ_OK;
}
diff --git a/t/25_traversal.t b/t/25_traversal.t
new file mode 100644
index 0000000..d03dede
--- /dev/null
+++ b/t/25_traversal.t
@@ -0,0 +1,189 @@
+use strict;
+use warnings;
+
+use Archive::Zip qw( :ERROR_CODES );
+use File::Spec;
+use File::Path;
+use lib 't';
+use common;
+
+use Test::More tests => 41;
+
+# These tests check for CVE-2018-10860 vulnerabilities.
+# If an archive contains a symlink and then a file that traverses that symlink,
+# extracting the archive tree could write into an abitrary file selected by
+# the symlink value.
+# Another issue is if an archive contains a file whose path component refers
+# to a parent direcotory. Then extracting that file could write into a file
+# out of current working directory subtree.
+# These tests check extracting of these files is refuses and that they are
+# indeed not created.
+
+# Suppress croaking errors, the tests produce some.
+Archive::Zip::setErrorHandler(sub {});
+my ($existed, $ret, $zip, $allowed_file, $forbidden_file);
+
+# Change working directory to a temporary directory because some tested
+# functions operarates there and we need prepared symlinks there.
+my @data_path = (File::Spec->splitdir(File::Spec->rel2abs('.')), 't', 'data');
+ok(chdir TESTDIR, "Working directory changed");
+
+# Case 1:
+# link-dir -> /tmp
+# link-dir/gotcha-linkdir
+# writes into /tmp/gotcha-linkdir file.
+SKIP: {
+ # Symlink tests make sense only if a file system supports them.
+ my $link = 'trylink';
+ $ret = eval { symlink('.', $link)};
+ skip 'Symbolic links are not supported', 12 if $@;
+ unlink $link;
+
+ # Extracting an archive tree must fail
+ $zip = Archive::Zip->new();
+ isa_ok($zip, 'Archive::Zip');
+ is($zip->read(File::Spec->catfile(@data_path, 'link-dir.zip')), AZ_OK,
+ 'Archive read');
+ $existed = -e File::Spec->catfile('', 'tmp', 'gotcha-linkdir');
+ $ret = eval { $zip->extractTree() };
+ is($ret, AZ_ERROR, 'Tree extraction aborted');
+ SKIP: {
+ skip 'A canary file existed before the test', 1 if $existed;
+ ok(! -e File::Spec->catfile('link-dir', 'gotcha-linkdir'),
+ 'A file was not created in a symlinked directory');
+ }
+ ok(unlink(File::Spec->catfile('link-dir')), 'link-dir removed');
+
+ # The same applies to extracting an archive member without an explicit
+ # local file name. It must abort.
+ $link = 'link-dir';
+ ok(symlink('.', $link), 'A symlink to a directory created');
+ $forbidden_file = File::Spec->catfile($link, 'gotcha-linkdir');
+ $existed = -e $forbidden_file;
+ $ret = eval { $zip->extractMember('link-dir/gotcha-linkdir') };
+ is($ret, AZ_ERROR, 'Member extraction without a local name aborted');
+ SKIP: {
+ skip 'A canary file existed before the test', 1 if $existed;
+ ok(! -e $forbidden_file,
+ 'A file was not created in a symlinked directory');
+ }
+
+ # But allow extracting an archive member into a supplied file name
+ $allowed_file = File::Spec->catfile($link, 'file');
+ $ret = eval { $zip->extractMember('link-dir/gotcha-linkdir', $allowed_file) };
+ is($ret, AZ_OK, 'Member extraction passed');
+ ok(-e $allowed_file, 'File created');
+ ok(unlink($allowed_file), 'File removed');
+ ok(unlink($link), 'A symlink to a directory removed');
+}
+
+# Case 2:
+# unexisting/../../../../../tmp/gotcha-dotdot-unexistingpath
+# writes into ../../../../tmp/gotcha-dotdot-unexistingpath, that is
+# /tmp/gotcha-dotdot-unexistingpath file if CWD is not deeper than
+# 4 directories.
+$zip = Archive::Zip->new();
+isa_ok($zip, 'Archive::Zip');
+is($zip->read(File::Spec->catfile(@data_path,
+ 'dotdot-from-unexistant-path.zip')), AZ_OK, 'Archive read');
+$forbidden_file = File::Spec->catfile('..', '..', '..', '..', 'tmp',
+ 'gotcha-dotdot-unexistingpath');
+$existed = -e $forbidden_file;
+$ret = eval { $zip->extractTree() };
+is($ret, AZ_ERROR, 'Tree extraction aborted');
+SKIP: {
+ skip 'A canary file existed before the test', 1 if $existed;
+ ok(! -e $forbidden_file, 'A file was not created in a parent directory');
+}
+
+# The same applies to extracting an archive member without an explicit local
+# file name. It must abort.
+$existed = -e $forbidden_file;
+$ret = eval { $zip->extractMember(
+ 'unexisting/../../../../../tmp/gotcha-dotdot-unexistingpath',
+ ) };
+is($ret, AZ_ERROR, 'Member extraction without a local name aborted');
+SKIP: {
+ skip 'A canary file existed before the test', 1 if $existed;
+ ok(! -e $forbidden_file, 'A file was not created in a parent directory');
+}
+
+# But allow extracting an archive member into a supplied file name
+ok(mkdir('directory'), 'Directory created');
+$allowed_file = File::Spec->catfile('directory', '..', 'file');
+$ret = eval { $zip->extractMember(
+ 'unexisting/../../../../../tmp/gotcha-dotdot-unexistingpath',
+ $allowed_file
+ ) };
+is($ret, AZ_OK, 'Member extraction passed');
+ok(-e $allowed_file, 'File created');
+ok(unlink($allowed_file), 'File removed');
+
+# Case 3:
+# link-file -> /tmp/gotcha-samename
+# link-file
+# writes into /tmp/gotcha-samename. It must abort. (Or replace the symlink in
+# more relaxed mode in the future.)
+$zip = Archive::Zip->new();
+isa_ok($zip, 'Archive::Zip');
+is($zip->read(File::Spec->catfile(@data_path, 'link-samename.zip')), AZ_OK,
+ 'Archive read');
+$existed = -e File::Spec->catfile('', 'tmp', 'gotcha-samename');
+$ret = eval { $zip->extractTree() };
+is($ret, AZ_ERROR, 'Tree extraction aborted');
+SKIP: {
+ skip 'A canary file existed before the test', 1 if $existed;
+ ok(! -e File::Spec->catfile('', 'tmp', 'gotcha-samename'),
+ 'A file was not created through a symlinked file');
+}
+ok(unlink(File::Spec->catfile('link-file')), 'link-file removed');
+
+# The same applies to extracting an archive member using extractMember()
+# without an explicit local file name. It must abort.
+my $link = 'link-file';
+my $target = 'target';
+ok(symlink($target, $link), 'A symlink to a file created');
+$forbidden_file = File::Spec->catfile($target);
+$existed = -e $forbidden_file;
+# Select a member by order due to same file names.
+my $member = ${[$zip->members]}[1];
+ok($member, 'A member to extract selected');
+$ret = eval { $zip->extractMember($member) };
+is($ret, AZ_ERROR,
+ 'Member extraction using extractMember() without a local name aborted');
+SKIP: {
+ skip 'A canary file existed before the test', 1 if $existed;
+ ok(! -e $forbidden_file,
+ 'A symlinked target file was not created');
+}
+
+# But allow extracting an archive member using extractMember() into a supplied
+# file name.
+$allowed_file = $target;
+$ret = eval { $zip->extractMember($member, $allowed_file) };
+is($ret, AZ_OK, 'Member extraction using extractMember() passed');
+ok(-e $allowed_file, 'File created');
+ok(unlink($allowed_file), 'File removed');
+
+# The same applies to extracting an archive member using
+# extractMemberWithoutPaths() without an explicit local file name.
+# It must abort.
+$existed = -e $forbidden_file;
+# Select a member by order due to same file names.
+$ret = eval { $zip->extractMemberWithoutPaths($member) };
+is($ret, AZ_ERROR,
+ 'Member extraction using extractMemberWithoutPaths() without a local name aborted');
+SKIP: {
+ skip 'A canary file existed before the test', 1 if $existed;
+ ok(! -e $forbidden_file,
+ 'A symlinked target file was not created');
+}
+
+# But allow extracting an archive member using extractMemberWithoutPaths()
+# into a supplied file name.
+$allowed_file = $target;
+$ret = eval { $zip->extractMemberWithoutPaths($member, $allowed_file) };
+is($ret, AZ_OK, 'Member extraction using extractMemberWithoutPaths() passed');
+ok(-e $allowed_file, 'File created');
+ok(unlink($allowed_file), 'File removed');
+ok(unlink($link), 'A symlink to a file removed');
diff --git a/t/data/dotdot-from-unexistant-path.zip b/t/data/dotdot-from-unexistant-path.zip
new file mode 100644
index 0000000..faaa5bb
--- /dev/null
+++ b/t/data/dotdot-from-unexistant-path.zip
@@ -0,0 +1 @@
+PKÐNÔL<C394>½D:unexisting/../../../../../tmp/gotcha-dotdot-unexistingpathgotcha: .. with unexisting pathPKÐNÔL<C394>½D:<>unexisting/../../../../../tmp/gotcha-dotdot-unexistingpathPKhw
\ No newline at end of file
diff --git a/t/data/link-dir.zip b/t/data/link-dir.zip
new file mode 100644
index 0000000..99fbb43
--- /dev/null
+++ b/t/data/link-dir.zip
@@ -0,0 +1,4 @@
+PK·YÒL.Ä»
+link-dir/tmpPK·YÒLWõ.Šlink-dir/gotcha-linkdirgotcha via dir link
+PK·YÒL.Ä»
+ÿ¡link-dirPK·YÒLWõ.Š<>*link-dir/gotcha-linkdirPK{s
\ No newline at end of file
diff --git a/t/data/link-samename.zip b/t/data/link-samename.zip
new file mode 100644
index 0000000..e9036c0
--- /dev/null
+++ b/t/data/link-samename.zip
@@ -0,0 +1,2 @@
+PKYÒLvò« link-file/tmp/gotcha-samenamePKYÒLÈkŒÉ link-filegotcha via same-named link
+PKYÒLvò« ÿ¡link-filePKYÒLÈkŒÉ <>;link-filePKn}
\ No newline at end of file
--
2.17.1

@ -1,22 +0,0 @@
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=5
MODULE_AUTHOR=IROBERTS
MODULE_VERSION=0.04
inherit perl-module
DESCRIPTION="OpenSSL's multiprecision integer arithmetic"
SLOT="0"
KEYWORDS="alpha amd64 arm hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh sparc x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
IUSE="libressl"
RDEPEND="
!libressl? ( dev-libs/openssl:0= )
libressl? ( dev-libs/libressl:0= )
"
DEPEND="${RDEPEND}"
SRC_TEST="do"

@ -1,23 +0,0 @@
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
DIST_AUTHOR=KMX
DIST_VERSION=0.07
inherit perl-module
DESCRIPTION="OpenSSL's multiprecision integer arithmetic"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
IUSE="libressl"
RDEPEND="
!libressl? ( dev-libs/openssl:0= )
libressl? ( dev-libs/libressl:0= )
"
DEPEND="${RDEPEND}
virtual/perl-ExtUtils-MakeMaker
virtual/pkgconfig
"

@ -1,24 +0,0 @@
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
DIST_AUTHOR=KMX
DIST_VERSION=0.08
inherit perl-module
DESCRIPTION="OpenSSL's multiprecision integer arithmetic"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
IUSE="libressl"
RDEPEND="
!libressl? ( dev-libs/openssl:0= )
libressl? ( dev-libs/libressl:0= )
"
DEPEND="${RDEPEND}
virtual/perl-ExtUtils-MakeMaker
virtual/pkgconfig
"
PATCHES=( "${FILESDIR}/${P}-openssl1.1.patch" )

@ -1,23 +0,0 @@
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
DIST_AUTHOR=KMX
DIST_VERSION=0.08
inherit perl-module
DESCRIPTION="OpenSSL's multiprecision integer arithmetic"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
IUSE="libressl"
RDEPEND="
!libressl? ( dev-libs/openssl:0= )
libressl? ( dev-libs/libressl:0= )
"
DEPEND="${RDEPEND}
virtual/perl-ExtUtils-MakeMaker
virtual/pkgconfig
"

@ -1,4 +1 @@
DIST Crypt-OpenSSL-Bignum-0.04.tar.gz 13520 BLAKE2B 1c8f3bc5337fcc03f44a9b3bbeb05de763c93397e733d8430cdaa2dce8da3c66c7d5b8db024295feab839b44141c7e1cdcfd4e4d939e00fad05c5695e930796a SHA512 ea95da0a71e7534595d721a0c4ad95f43d93407b3ed465aad88d8809a11646da15254341b5c36c6248b80be844b36276079b1b050ad5dacbdf71f2bb06621403
DIST Crypt-OpenSSL-Bignum-0.07.tar.gz 15996 BLAKE2B e31300ea30c07ec3d6f00bf7e73532650fe6df31a4ff1d281249d3f55908f2faf01cbfd391c0e7bb547dcb72adcc80aaaf9d33f6e0005f24c794abae953d00df SHA512 b41bcdc4e4b8410dd90f59c4c6f67fdf82340fe94a71854372c0eae2ed5bcf28bef56f5221c669c7d3aeb02e888b714584c1cd46d0b8e84e3379bb4a7169be65
DIST Crypt-OpenSSL-Bignum-0.08.tar.gz 16023 BLAKE2B 632d5c632b7224a7c180ab9e88a0eb759c6d68a51aa7083f6ba7897ed3e61e4962310b43a8861f31b23b5718e5be71d0316ece9be79cfbd760091ddfb4c9eadf SHA512 da36b377287037c46e905f25d491641a06113ea1157f00731c43fdc27762af6cbde0e55361d929712adf57fc3564197aadb54629498318c1eb9c1f3fd0c50e7d
DIST Crypt-OpenSSL-Bignum-0.09.tar.gz 16202 BLAKE2B 912329b37230d503e7928640b2861c05dbcdf64a5943b5b3d27dfd41ae2eb585b6c61811060c29952ab5f9c09a7160a4038656c7ed9046a27e3dc0c5361bcc63 SHA512 3480a64e35e158a7a7c75c0e57ac0f578ddcb901a14f80a58ffabd1f318a68a83b411a72c22c53650273507198907b1d62c88fddbf5587885f6fe1a75deff3ed

@ -1,49 +0,0 @@
From d9ddaa210a1b91deb6ea6fcea4cb274f634e482d Mon Sep 17 00:00:00 2001
From: Mark Wright <gienah@gentoo.org>
Date: Tue, 17 Oct 2017 16:50:01 +1100
Subject: Fix building with OpenSSL 1.1.0
Bug: https://bugs.gentoo.org/592532
Bug: https://rt.cpan.org/Ticket/Display.html?id=117482
Bug: https://github.com/kmx/perl-Crypt-OpenSSL-Bignum/pull/7
---
Bignum.xs | 8 ++++++--
1 file changed, 6 insertions(+), 2 deletions(-)
diff --git a/Bignum.xs b/Bignum.xs
index d39dcff..149fa52 100755
--- a/Bignum.xs
+++ b/Bignum.xs
@@ -29,7 +29,11 @@ BIGNUM* sv2bn( SV* sv )
MODULE = Crypt::OpenSSL::Bignum PACKAGE = Crypt::OpenSSL::Bignum PREFIX = BN_
BOOT:
+#if OPENSSL_VERSION_NUMBER >= 0x10100000L && !defined(LIBRESSL_VERSION_NUMBER)
+ OPENSSL_init_crypto(0, NULL);
+#else
ERR_load_crypto_strings();
+#endif
void
DESTROY(Crypt::OpenSSL::Bignum self)
@@ -92,7 +96,7 @@ BN_new(CLASS)
BIGNUM* bn;
CODE:
checkOpenSslCall( bn = BN_new() );
- checkOpenSslCall( BN_zero( bn ) );
+ checkOpenSslCall( BN_set_word( bn, 0 ) );
RETVAL = bn;
OUTPUT:
RETVAL
@@ -103,7 +107,7 @@ BN_zero(CLASS)
BIGNUM *bn;
CODE:
checkOpenSslCall( bn = BN_new() );
- checkOpenSslCall( BN_zero( bn ) );
+ checkOpenSslCall( BN_set_word( bn, 0 ) );
RETVAL = bn;
OUTPUT:
RETVAL
--
2.14.2

Binary file not shown.

Binary file not shown.

@ -1,2 +1,2 @@
DIST cached-property-1.3.1.tar.gz 9648 BLAKE2B 154208108cfbec914519f2a08ecc6ad025c284726d65a001eae84701b1eb8479e127473c124b08d3b0d969f59798f9dcef473cd8209c248b1d5b016a0bc8dac6 SHA512 3349751d442ca6e7d4e792c8b076735d5308d68244af9c03044f3d72d619a5c3d7d5dbef434caa954db4b983245bfe646d4a25c99aec39f32d99751edd9e233f
DIST cached-property-1.4.3.tar.gz 11252 BLAKE2B 53df63f94a730a59adec6b2960c93cbd73f7e3880c060dc55f981d16fe6082e8b796c77c8052ca8765b6738a3429de2daea322d7644465b1c6fedaddbce6ab8c SHA512 e36e61af8f68a253573efbac666abd4e897142b3cec2499c50ba932924f8dad786979e1a297df7f0898310ae1aec1116615dff6e39c0b203e262628b450ad91f
DIST cached-property-1.5.1.tar.gz 12791 BLAKE2B dcc75564d3b1dbb2f34ea433f4a477b2fe0454047f1fb4825cc6350458bf09509cf970b308744d79eb3b17f96c04c606ad36327c7e24f0b13f412880d9ad2ab7 SHA512 61bbedb48336af7c0b465421eb4d3b6b48155cfe4fd6270ff49caefe0d80e40b50c4801a68a5564931d316e374b69112ad14f72687a015ce81aaeade6fcf9ce3

@ -2,7 +2,7 @@
# Distributed under the terms of the GNU General Public License v2
EAPI=6
PYTHON_COMPAT=( python{2_7,3_4,3_5,3_6} )
PYTHON_COMPAT=( python{2_7,3_4,3_5,3_6,3_7} )
inherit distutils-r1

Binary file not shown.

@ -1 +1,2 @@
DIST shflags-1.0.3.tgz 43549 BLAKE2B 2f5376dc9589eb63133857dd48fde5bd9aae48b31d1f94a97c1d9d3f505d48ee1586a2e6a6f7b44ae85be26b4e7643beee2cdc47a5f3c3ff1a69379f174d98eb SHA512 993f5b274855d5dea5d01d3a799cfd5ff6c5ff2bf153461983052a78d8a96f9b0ee44124b4c51977baa4905c86a3293778c5d7e154305ee051fcac03f6fe70cc
DIST shflags-1.2.3.tgz 42253 BLAKE2B 4837d31762129790659b67d4025cf8627ca5db32225ac61b437a5ba6bf9f894c87976d06dd5e5039a5ad4b7a0b7b173cc7f96fc3a11dc3c2ac797de2c749a8ed SHA512 5bddebce14e516fe37b2b1631d5aec54651ee728e538dfb0fcc68d32b79d335c7b48f5ef5aab99dd730de3b8fd556a6640db9b9ae2a7753feb6aa1e0831b64af

@ -0,0 +1,24 @@
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=7
DESCRIPTION="Command-line flags module for Unix shell scripts"
HOMEPAGE="https://github.com/kward/shflags"
SRC_URI="https://github.com/kward/shflags/archive/v${PV}.tar.gz -> ${P}.tgz"
LICENSE="LGPL-2.1"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86"
IUSE="examples"
src_test() {
sh test_runner || die
}
src_install() {
dodoc README* doc/*.txt
insinto /usr/share/misc
doins "${PN}"
use examples && dodoc examples/*
}

Binary file not shown.

@ -13,28 +13,36 @@ LICENSE="MIT LGPL-2.1"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE="+pa-headers test"
IUSE="debug sdk test"
DEPEND="dev-libs/glib:2[${MULTILIB_USEDEP}]
media-libs/alsa-lib[${MULTILIB_USEDEP}]
pa-headers? ( !media-sound/pulseaudio ) "
sdk? ( !media-sound/pulseaudio ) "
RDEPEND="${DEPEND}
!!media-plugins/alsa-plugins[pulseaudio]"
MULTILIB_CHOST_TOOLS=( /usr/bin/apulse )
PATCHES=( "${FILESDIR}/sdk.patch" )
src_prepare() {
cmake-utils_src_prepare
# Ensure all relevant libdirs are added, to support all ABIs
DIRS=
_add_dir() { DIRS="${EPREFIX}/usr/$(get_libdir)/apulse${DIRS:+:${DIRS}}"; }
multilib_foreach_abi _add_dir
sed -e "s#@@DIRS@@#${DIRS}#g" "${FILESDIR}"/apulse > "${T}"/apulse || die
if ! use sdk; then
# Ensure all relevant libdirs are added, to support all ABIs
DIRS=
_add_dir() { DIRS="${EPREFIX}/usr/$(get_libdir)/apulse${DIRS:+:${DIRS}}"; }
multilib_foreach_abi _add_dir
sed -e "s#@@DIRS@@#${DIRS}#g" "${FILESDIR}"/apulse > "${T}"/apulse || die
fi
}
multilib_src_configure() {
local mycmakeargs=("-DAPULSEPATH=${EPREFIX}/usr/$(get_libdir)/apulse")
local mycmakeargs=(
"-DINSTALL_SDK=$(usex sdk)"
"-DLOG_TO_STDERR=$(usex debug)"
"-DWITH_TRACE=$(usex debug)"
)
cmake-utils_src_configure
}
@ -45,6 +53,5 @@ multilib_src_test() {
multilib_src_install_all() {
cmake-utils_src_install
einstalldocs
dobin "${T}"/apulse
use pa-headers && doheader -r 3rdparty/pulseaudio-headers/pulse
use sdk || dobin "${T}"/apulse
}

@ -0,0 +1,90 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 072f3b1..eff028d 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -28,6 +28,8 @@ else()
include_directories(${PA_INCLUDE_DIRECTORIES})
endif()
+set(INSTALL_SDK 0 CACHE BOOLEAN "Install SDK files to build applications with apulse (Pulse Audio headers and pkg-config files) instead of system ones")
+
link_directories(${REQ_LIBRARY_DIRS})
add_library(trace-helper STATIC
@@ -72,12 +74,30 @@ target_link_libraries(pulse-simple ${SYMBOLMAP} trace-helper ${REQ_LIBRARIES})
add_subdirectory(tests)
-set(APULSEPATH "${CMAKE_INSTALL_PREFIX}/lib/apulse" CACHE PATH "library installation directory")
+if (${INSTALL_SDK})
+ set(APULSEPATH "${CMAKE_INSTALL_LIBDIR}" CACHE PATH "library installation directory")
+else()
+ set(APULSEPATH "${CMAKE_INSTALL_LIBDIR}/apulse" CACHE PATH "library installation directory")
+endif()
+
set(APULSE_SEARCH_PATHS "${APULSEPATH}" CACHE PATH "directory list for LD_LIBRARY_PATH")
configure_file("${CMAKE_CURRENT_SOURCE_DIR}/src/apulse.template"
"${CMAKE_CURRENT_BINARY_DIR}/apulse" @ONLY)
+if (${INSTALL_SDK})
+ configure_file("${CMAKE_CURRENT_SOURCE_DIR}/pkgconfig/libpulse.pc.in"
+ "${CMAKE_CURRENT_BINARY_DIR}/pkgconfig/libpulse.pc" @ONLY)
+ configure_file("${CMAKE_CURRENT_SOURCE_DIR}/pkgconfig/libpulse-simple.pc.in"
+ "${CMAKE_CURRENT_BINARY_DIR}/pkgconfig/libpulse-simple.pc" @ONLY)
+ configure_file("${CMAKE_CURRENT_SOURCE_DIR}/pkgconfig/libpulse-mainloop-glib.pc.in"
+ "${CMAKE_CURRENT_BINARY_DIR}/pkgconfig/libpulse-mainloop-glib.pc" @ONLY)
+endif()
install(FILES "${CMAKE_CURRENT_BINARY_DIR}/apulse" DESTINATION bin
PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE)
install(TARGETS pulse-simple pulse pulse-mainloop-glib DESTINATION "${APULSEPATH}")
install(FILES "${CMAKE_SOURCE_DIR}/man/apulse.1" DESTINATION share/man/man1)
+
+if (${INSTALL_SDK})
+ install(DIRECTORY "${CMAKE_SOURCE_DIR}/3rdparty/pulseaudio-headers/pulse" DESTINATION include)
+ install(DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/pkgconfig" DESTINATION "${CMAKE_INSTALL_LIBDIR}")
+endif()
diff --git a/pkgconfig/libpulse-mainloop-glib.pc.in b/pkgconfig/libpulse-mainloop-glib.pc.in
new file mode 100644
index 0000000..957e3b2
--- /dev/null
+++ b/pkgconfig/libpulse-mainloop-glib.pc.in
@@ -0,0 +1,9 @@
+libdir=@CMAKE_INSTALL_FULL_LIBDIR@
+includedir=@CMAKE_INSTALL_FULL_INCLUDEDIR@
+
+Name: libpulse-mainloop-glib
+Description: PulseAudio GLib 2.0 Main Loop Wrapper (apulse)
+Version: 5.0
+Libs: -L${libdir} -lpulse-mainloop-glib -pthread
+Cflags: -I${includedir}
+Requires: glib-2.0
diff --git a/pkgconfig/libpulse-simple.pc.in b/pkgconfig/libpulse-simple.pc.in
new file mode 100644
index 0000000..3809d50
--- /dev/null
+++ b/pkgconfig/libpulse-simple.pc.in
@@ -0,0 +1,9 @@
+libdir=@CMAKE_INSTALL_FULL__LIBDIR@
+includedir=@CMAKE_INSTALL_FULL_INCLUDEDIR@
+
+Name: libpulse-simple
+Description: PulseAudio Simplified Synchronous Client Interface (apulse)
+Version: 5.0
+Libs: -L${libdir} -lpulse-simple -pthread
+Cflags: -I${includedir}
+Requires: glib-2.0
diff --git a/pkgconfig/libpulse.pc.in b/pkgconfig/libpulse.pc.in
new file mode 100644
index 0000000..edcbbd8
--- /dev/null
+++ b/pkgconfig/libpulse.pc.in
@@ -0,0 +1,9 @@
+libdir=@CMAKE_INSTALL_FULL_LIBDIR@
+includedir=@CMAKE_INSTALL_FULL_INCLUDEDIR@
+
+Name: libpulse
+Description: PulseAudio Client Interface (apulse)
+Version: 5.0
+Libs: -L${libdir} -lpulse -pthread
+Cflags: -I${includedir}
+Requires: glib-2.0 alsa

@ -6,7 +6,8 @@
<name>Andrew Savchenko</name>
</maintainer>
<use>
<flag name="pa-headers">Install PulseAudio headers</flag>
<flag name="sdk">Install PulseAudio headers and pkg-config files. Be aware apulse is not
a full PulseAudio replacement by design and some functionality may be missing.</flag>
</use>
<upstream>
<remote-id type="github">i-rinat/apulse</remote-id>

Binary file not shown.

@ -1 +1 @@
Sat, 22 Sep 2018 20:08:29 +0000
Sun, 23 Sep 2018 06:08:29 +0000

@ -1 +1 @@
Sat, 22 Sep 2018 20:08:29 +0000
Sun, 23 Sep 2018 06:08:29 +0000

Binary file not shown.

@ -1,16 +0,0 @@
DEFINED_PHASES=compile configure install postinst prepare setup test unpack
DEPEND=test? ( ruby_targets_ruby23? ( dev-ruby/hiera[ruby_targets_ruby23] dev-ruby/json:=[ruby_targets_ruby23] >=dev-ruby/facter-3.0.0[ruby_targets_ruby23] augeas? ( dev-ruby/ruby-augeas[ruby_targets_ruby23] ) diff? ( dev-ruby/diff-lcs[ruby_targets_ruby23] ) doc? ( dev-ruby/rdoc[ruby_targets_ruby23] ) ldap? ( dev-ruby/ruby-ldap[ruby_targets_ruby23] ) shadow? ( dev-ruby/ruby-shadow[ruby_targets_ruby23] ) sqlite? ( dev-ruby/sqlite3[ruby_targets_ruby23] ) virtual/ruby-ssl[ruby_targets_ruby23] dev-ruby/hocon[ruby_targets_ruby23] ) ruby_targets_ruby24? ( dev-ruby/hiera[ruby_targets_ruby24] dev-ruby/json:=[ruby_targets_ruby24] >=dev-ruby/facter-3.0.0[ruby_targets_ruby24] augeas? ( dev-ruby/ruby-augeas[ruby_targets_ruby24] ) diff? ( dev-ruby/diff-lcs[ruby_targets_ruby24] ) doc? ( dev-ruby/rdoc[ruby_targets_ruby24] ) ldap? ( dev-ruby/ruby-ldap[ruby_targets_ruby24] ) shadow? ( dev-ruby/ruby-shadow[ruby_targets_ruby24] ) sqlite? ( dev-ruby/sqlite3[ruby_targets_ruby24] ) virtual/ruby-ssl[ruby_targets_ruby24] dev-ruby/hocon[ruby_targets_ruby24] ) ruby_targets_ruby25? ( dev-ruby/hiera[ruby_targets_ruby25] dev-ruby/json:=[ruby_targets_ruby25] >=dev-ruby/facter-3.0.0[ruby_targets_ruby25] augeas? ( dev-ruby/ruby-augeas[ruby_targets_ruby25] ) diff? ( dev-ruby/diff-lcs[ruby_targets_ruby25] ) doc? ( dev-ruby/rdoc[ruby_targets_ruby25] ) ldap? ( dev-ruby/ruby-ldap[ruby_targets_ruby25] ) shadow? ( dev-ruby/ruby-shadow[ruby_targets_ruby25] ) sqlite? ( dev-ruby/sqlite3[ruby_targets_ruby25] ) virtual/ruby-ssl[ruby_targets_ruby25] dev-ruby/hocon[ruby_targets_ruby25] ) ) ruby_targets_ruby23? ( doc? ( dev-ruby/yard[ruby_targets_ruby23] ) test? ( dev-ruby/mocha[ruby_targets_ruby23] dev-ruby/rack[ruby_targets_ruby23] dev-ruby/rspec-its[ruby_targets_ruby23] ) ) ruby_targets_ruby24? ( doc? ( dev-ruby/yard[ruby_targets_ruby24] ) test? ( dev-ruby/mocha[ruby_targets_ruby24] dev-ruby/rack[ruby_targets_ruby24] dev-ruby/rspec-its[ruby_targets_ruby24] ) ) ruby_targets_ruby25? ( doc? ( dev-ruby/yard[ruby_targets_ruby25] ) test? ( dev-ruby/mocha[ruby_targets_ruby25] dev-ruby/rack[ruby_targets_ruby25] dev-ruby/rspec-its[ruby_targets_ruby25] ) ) ruby_targets_ruby23? ( dev-lang/ruby:2.3 ) ruby_targets_ruby24? ( dev-lang/ruby:2.4 ) ruby_targets_ruby25? ( dev-lang/ruby:2.5 ) ruby_targets_ruby23? ( doc? ( dev-ruby/rake[ruby_targets_ruby23] ) ) ruby_targets_ruby24? ( doc? ( dev-ruby/rake[ruby_targets_ruby24] ) ) ruby_targets_ruby25? ( doc? ( dev-ruby/rake[ruby_targets_ruby25] ) ) ruby_targets_ruby23? ( test? ( dev-ruby/rspec:3[ruby_targets_ruby23] ) ) ruby_targets_ruby24? ( test? ( dev-ruby/rspec:3[ruby_targets_ruby24] ) ) ruby_targets_ruby25? ( test? ( dev-ruby/rspec:3[ruby_targets_ruby25] ) ) ruby_targets_ruby23? ( virtual/rubygems[ruby_targets_ruby23] ) ruby_targets_ruby24? ( virtual/rubygems[ruby_targets_ruby24] ) ruby_targets_ruby25? ( virtual/rubygems[ruby_targets_ruby25] ) test? ( ruby_targets_ruby23? ( virtual/rubygems[ruby_targets_ruby23] ) ruby_targets_ruby24? ( virtual/rubygems[ruby_targets_ruby24] ) ruby_targets_ruby25? ( virtual/rubygems[ruby_targets_ruby25] ) )
DESCRIPTION=A system automation and configuration management software.
EAPI=6
HOMEPAGE=http://puppetlabs.com/
IUSE=augeas diff doc emacs ldap rrdtool selinux shadow sqlite vim-syntax test elibc_FreeBSD ruby_targets_ruby23 ruby_targets_ruby24 ruby_targets_ruby25 doc test test
KEYWORDS=amd64 ~arm ~hppa ~ppc ~ppc64 x86
LICENSE=Apache-2.0 GPL-2
PDEPEND=emacs? ( >=app-emacs/puppet-mode-0.3-r1 )
RDEPEND=ruby_targets_ruby23? ( dev-ruby/hiera[ruby_targets_ruby23] dev-ruby/json:=[ruby_targets_ruby23] >=dev-ruby/facter-3.0.0[ruby_targets_ruby23] augeas? ( dev-ruby/ruby-augeas[ruby_targets_ruby23] ) diff? ( dev-ruby/diff-lcs[ruby_targets_ruby23] ) doc? ( dev-ruby/rdoc[ruby_targets_ruby23] ) ldap? ( dev-ruby/ruby-ldap[ruby_targets_ruby23] ) shadow? ( dev-ruby/ruby-shadow[ruby_targets_ruby23] ) sqlite? ( dev-ruby/sqlite3[ruby_targets_ruby23] ) virtual/ruby-ssl[ruby_targets_ruby23] dev-ruby/hocon[ruby_targets_ruby23] ) ruby_targets_ruby24? ( dev-ruby/hiera[ruby_targets_ruby24] dev-ruby/json:=[ruby_targets_ruby24] >=dev-ruby/facter-3.0.0[ruby_targets_ruby24] augeas? ( dev-ruby/ruby-augeas[ruby_targets_ruby24] ) diff? ( dev-ruby/diff-lcs[ruby_targets_ruby24] ) doc? ( dev-ruby/rdoc[ruby_targets_ruby24] ) ldap? ( dev-ruby/ruby-ldap[ruby_targets_ruby24] ) shadow? ( dev-ruby/ruby-shadow[ruby_targets_ruby24] ) sqlite? ( dev-ruby/sqlite3[ruby_targets_ruby24] ) virtual/ruby-ssl[ruby_targets_ruby24] dev-ruby/hocon[ruby_targets_ruby24] ) ruby_targets_ruby25? ( dev-ruby/hiera[ruby_targets_ruby25] dev-ruby/json:=[ruby_targets_ruby25] >=dev-ruby/facter-3.0.0[ruby_targets_ruby25] augeas? ( dev-ruby/ruby-augeas[ruby_targets_ruby25] ) diff? ( dev-ruby/diff-lcs[ruby_targets_ruby25] ) doc? ( dev-ruby/rdoc[ruby_targets_ruby25] ) ldap? ( dev-ruby/ruby-ldap[ruby_targets_ruby25] ) shadow? ( dev-ruby/ruby-shadow[ruby_targets_ruby25] ) sqlite? ( dev-ruby/sqlite3[ruby_targets_ruby25] ) virtual/ruby-ssl[ruby_targets_ruby25] dev-ruby/hocon[ruby_targets_ruby25] ) ruby_targets_ruby23? ( dev-ruby/hiera[ruby_targets_ruby23] dev-ruby/json:=[ruby_targets_ruby23] >=dev-ruby/facter-3.0.0[ruby_targets_ruby23] augeas? ( dev-ruby/ruby-augeas[ruby_targets_ruby23] ) diff? ( dev-ruby/diff-lcs[ruby_targets_ruby23] ) doc? ( dev-ruby/rdoc[ruby_targets_ruby23] ) ldap? ( dev-ruby/ruby-ldap[ruby_targets_ruby23] ) shadow? ( dev-ruby/ruby-shadow[ruby_targets_ruby23] ) sqlite? ( dev-ruby/sqlite3[ruby_targets_ruby23] ) virtual/ruby-ssl[ruby_targets_ruby23] dev-ruby/hocon[ruby_targets_ruby23] ) ruby_targets_ruby24? ( dev-ruby/hiera[ruby_targets_ruby24] dev-ruby/json:=[ruby_targets_ruby24] >=dev-ruby/facter-3.0.0[ruby_targets_ruby24] augeas? ( dev-ruby/ruby-augeas[ruby_targets_ruby24] ) diff? ( dev-ruby/diff-lcs[ruby_targets_ruby24] ) doc? ( dev-ruby/rdoc[ruby_targets_ruby24] ) ldap? ( dev-ruby/ruby-ldap[ruby_targets_ruby24] ) shadow? ( dev-ruby/ruby-shadow[ruby_targets_ruby24] ) sqlite? ( dev-ruby/sqlite3[ruby_targets_ruby24] ) virtual/ruby-ssl[ruby_targets_ruby24] dev-ruby/hocon[ruby_targets_ruby24] ) ruby_targets_ruby25? ( dev-ruby/hiera[ruby_targets_ruby25] dev-ruby/json:=[ruby_targets_ruby25] >=dev-ruby/facter-3.0.0[ruby_targets_ruby25] augeas? ( dev-ruby/ruby-augeas[ruby_targets_ruby25] ) diff? ( dev-ruby/diff-lcs[ruby_targets_ruby25] ) doc? ( dev-ruby/rdoc[ruby_targets_ruby25] ) ldap? ( dev-ruby/ruby-ldap[ruby_targets_ruby25] ) shadow? ( dev-ruby/ruby-shadow[ruby_targets_ruby25] ) sqlite? ( dev-ruby/sqlite3[ruby_targets_ruby25] ) virtual/ruby-ssl[ruby_targets_ruby25] dev-ruby/hocon[ruby_targets_ruby25] ) 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 ruby_targets_ruby23? ( dev-lang/ruby:2.3 ) ruby_targets_ruby24? ( dev-lang/ruby:2.4 ) ruby_targets_ruby25? ( dev-lang/ruby:2.5 ) ruby_targets_ruby23? ( virtual/rubygems[ruby_targets_ruby23] ) ruby_targets_ruby24? ( virtual/rubygems[ruby_targets_ruby24] ) ruby_targets_ruby25? ( virtual/rubygems[ruby_targets_ruby25] )
REQUIRED_USE=|| ( ruby_targets_ruby23 ruby_targets_ruby24 ruby_targets_ruby25 )
RESTRICT=test
SLOT=0
SRC_URI=http://downloads.puppetlabs.com/puppet/puppet-5.5.2.tar.gz
_eclasses_=desktop b1d22ac8bdd4679ab79c71aca235009d epatch a1bf4756dba418a7238f3be0cb010c54 estack 43ddf5aaffa7a8d0482df54d25a66a1f eutils 6e6c2737b59a4b982de6fb3ecefd87f8 java-utils-2 0ee72667014428e01a01df2345244cf3 ltprune 08f9e1d9ee0af8f5d9a7854efbcd8c0e multilib 97f470f374f2e94ccab04a2fb21d811e preserve-libs ef207dc62baddfddfd39a164d9797648 ruby-fakegem b71c34d64e24dcf087f9d6a84bb32dbe ruby-ng 9ffc1c055a3294fcc48de781c94825f6 ruby-utils a43d6cd7f05b4d013e7e40104ddfd3c7 toolchain-funcs e4a9360924c5ce9f52e61342cde58512 user 8bc2845510e2109af75e3eeac607ec81 vcs-clean 2a0f74a496fa2b1552c4f3398258b7bf versionator 2352c3fc97241f6a02042773c8287748
_md5_=a999ff5a4fe9ee46f92c727a51b3214d

@ -4,7 +4,7 @@ DESCRIPTION=A system automation and configuration management software.
EAPI=6
HOMEPAGE=http://puppetlabs.com/
IUSE=augeas diff doc emacs ldap rrdtool selinux shadow sqlite vim-syntax test elibc_FreeBSD ruby_targets_ruby23 ruby_targets_ruby24 ruby_targets_ruby25 doc test test
KEYWORDS=~amd64 ~arm ~hppa ~ppc ~ppc64 ~x86
KEYWORDS=amd64 ~arm ~hppa ~ppc ~ppc64 x86
LICENSE=Apache-2.0 GPL-2
PDEPEND=emacs? ( >=app-emacs/puppet-mode-0.3-r1 )
RDEPEND=ruby_targets_ruby23? ( dev-ruby/hiera[ruby_targets_ruby23] dev-ruby/json:=[ruby_targets_ruby23] >=dev-ruby/facter-3.0.0[ruby_targets_ruby23] augeas? ( dev-ruby/ruby-augeas[ruby_targets_ruby23] ) diff? ( dev-ruby/diff-lcs[ruby_targets_ruby23] ) doc? ( dev-ruby/rdoc[ruby_targets_ruby23] ) ldap? ( dev-ruby/ruby-ldap[ruby_targets_ruby23] ) shadow? ( dev-ruby/ruby-shadow[ruby_targets_ruby23] ) sqlite? ( dev-ruby/sqlite3[ruby_targets_ruby23] ) virtual/ruby-ssl[ruby_targets_ruby23] dev-ruby/hocon[ruby_targets_ruby23] ) ruby_targets_ruby24? ( dev-ruby/hiera[ruby_targets_ruby24] dev-ruby/json:=[ruby_targets_ruby24] >=dev-ruby/facter-3.0.0[ruby_targets_ruby24] augeas? ( dev-ruby/ruby-augeas[ruby_targets_ruby24] ) diff? ( dev-ruby/diff-lcs[ruby_targets_ruby24] ) doc? ( dev-ruby/rdoc[ruby_targets_ruby24] ) ldap? ( dev-ruby/ruby-ldap[ruby_targets_ruby24] ) shadow? ( dev-ruby/ruby-shadow[ruby_targets_ruby24] ) sqlite? ( dev-ruby/sqlite3[ruby_targets_ruby24] ) virtual/ruby-ssl[ruby_targets_ruby24] dev-ruby/hocon[ruby_targets_ruby24] ) ruby_targets_ruby25? ( dev-ruby/hiera[ruby_targets_ruby25] dev-ruby/json:=[ruby_targets_ruby25] >=dev-ruby/facter-3.0.0[ruby_targets_ruby25] augeas? ( dev-ruby/ruby-augeas[ruby_targets_ruby25] ) diff? ( dev-ruby/diff-lcs[ruby_targets_ruby25] ) doc? ( dev-ruby/rdoc[ruby_targets_ruby25] ) ldap? ( dev-ruby/ruby-ldap[ruby_targets_ruby25] ) shadow? ( dev-ruby/ruby-shadow[ruby_targets_ruby25] ) sqlite? ( dev-ruby/sqlite3[ruby_targets_ruby25] ) virtual/ruby-ssl[ruby_targets_ruby25] dev-ruby/hocon[ruby_targets_ruby25] ) ruby_targets_ruby23? ( dev-ruby/hiera[ruby_targets_ruby23] dev-ruby/json:=[ruby_targets_ruby23] >=dev-ruby/facter-3.0.0[ruby_targets_ruby23] augeas? ( dev-ruby/ruby-augeas[ruby_targets_ruby23] ) diff? ( dev-ruby/diff-lcs[ruby_targets_ruby23] ) doc? ( dev-ruby/rdoc[ruby_targets_ruby23] ) ldap? ( dev-ruby/ruby-ldap[ruby_targets_ruby23] ) shadow? ( dev-ruby/ruby-shadow[ruby_targets_ruby23] ) sqlite? ( dev-ruby/sqlite3[ruby_targets_ruby23] ) virtual/ruby-ssl[ruby_targets_ruby23] dev-ruby/hocon[ruby_targets_ruby23] ) ruby_targets_ruby24? ( dev-ruby/hiera[ruby_targets_ruby24] dev-ruby/json:=[ruby_targets_ruby24] >=dev-ruby/facter-3.0.0[ruby_targets_ruby24] augeas? ( dev-ruby/ruby-augeas[ruby_targets_ruby24] ) diff? ( dev-ruby/diff-lcs[ruby_targets_ruby24] ) doc? ( dev-ruby/rdoc[ruby_targets_ruby24] ) ldap? ( dev-ruby/ruby-ldap[ruby_targets_ruby24] ) shadow? ( dev-ruby/ruby-shadow[ruby_targets_ruby24] ) sqlite? ( dev-ruby/sqlite3[ruby_targets_ruby24] ) virtual/ruby-ssl[ruby_targets_ruby24] dev-ruby/hocon[ruby_targets_ruby24] ) ruby_targets_ruby25? ( dev-ruby/hiera[ruby_targets_ruby25] dev-ruby/json:=[ruby_targets_ruby25] >=dev-ruby/facter-3.0.0[ruby_targets_ruby25] augeas? ( dev-ruby/ruby-augeas[ruby_targets_ruby25] ) diff? ( dev-ruby/diff-lcs[ruby_targets_ruby25] ) doc? ( dev-ruby/rdoc[ruby_targets_ruby25] ) ldap? ( dev-ruby/ruby-ldap[ruby_targets_ruby25] ) shadow? ( dev-ruby/ruby-shadow[ruby_targets_ruby25] ) sqlite? ( dev-ruby/sqlite3[ruby_targets_ruby25] ) virtual/ruby-ssl[ruby_targets_ruby25] dev-ruby/hocon[ruby_targets_ruby25] ) 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 ruby_targets_ruby23? ( dev-lang/ruby:2.3 ) ruby_targets_ruby24? ( dev-lang/ruby:2.4 ) ruby_targets_ruby25? ( dev-lang/ruby:2.5 ) ruby_targets_ruby23? ( virtual/rubygems[ruby_targets_ruby23] ) ruby_targets_ruby24? ( virtual/rubygems[ruby_targets_ruby24] ) ruby_targets_ruby25? ( virtual/rubygems[ruby_targets_ruby25] )
@ -13,4 +13,4 @@ RESTRICT=test
SLOT=0
SRC_URI=http://downloads.puppetlabs.com/puppet/puppet-5.5.6.tar.gz
_eclasses_=desktop b1d22ac8bdd4679ab79c71aca235009d epatch a1bf4756dba418a7238f3be0cb010c54 estack 43ddf5aaffa7a8d0482df54d25a66a1f eutils 6e6c2737b59a4b982de6fb3ecefd87f8 java-utils-2 0ee72667014428e01a01df2345244cf3 ltprune 08f9e1d9ee0af8f5d9a7854efbcd8c0e multilib 97f470f374f2e94ccab04a2fb21d811e preserve-libs ef207dc62baddfddfd39a164d9797648 ruby-fakegem b71c34d64e24dcf087f9d6a84bb32dbe ruby-ng 9ffc1c055a3294fcc48de781c94825f6 ruby-utils a43d6cd7f05b4d013e7e40104ddfd3c7 toolchain-funcs e4a9360924c5ce9f52e61342cde58512 user 8bc2845510e2109af75e3eeac607ec81 vcs-clean 2a0f74a496fa2b1552c4f3398258b7bf versionator 2352c3fc97241f6a02042773c8287748
_md5_=f2b3887c5bd23256fd921998c5f5f854
_md5_=a999ff5a4fe9ee46f92c727a51b3214d

@ -1,14 +0,0 @@
DEFINED_PHASES=install prepare setup unpack
DEPEND=!app-admin/augeas !app-admin/mcollective !app-admin/puppet !dev-ruby/hiera !dev-ruby/facter !app-emulation/virt-what virtual/pkgconfig
DESCRIPTION=general puppet client utils along with mcollective hiera and facter
EAPI=6
HOMEPAGE=https://puppetlabs.com/
IUSE=experimental puppetdb selinux
KEYWORDS=amd64 x86
LICENSE=Apache-2.0
RDEPEND=!app-admin/augeas !app-admin/mcollective !app-admin/puppet !dev-ruby/hiera !dev-ruby/facter !app-emulation/virt-what app-portage/eix sys-apps/dmidecode sys-libs/glibc >=sys-libs/readline-6.0 <sys-libs/readline-7.0 selinux? ( sys-libs/libselinux[ruby] sec-policy/selinux-puppet ) puppetdb? ( >=dev-ruby/puppetdb-termini-3.1.0 )
RESTRICT=strip
SLOT=0
SRC_URI=amd64? ( http://apt.puppetlabs.com/pool/stretch/PC1/p/puppet-agent/puppet-agent_1.10.12-1stretch_amd64.deb ) x86? ( http://apt.puppetlabs.com/pool/stretch/PC1/p/puppet-agent/puppet-agent_1.10.12-1stretch_i386.deb )
_eclasses_=desktop b1d22ac8bdd4679ab79c71aca235009d epatch a1bf4756dba418a7238f3be0cb010c54 estack 43ddf5aaffa7a8d0482df54d25a66a1f eutils 6e6c2737b59a4b982de6fb3ecefd87f8 ltprune 08f9e1d9ee0af8f5d9a7854efbcd8c0e multilib 97f470f374f2e94ccab04a2fb21d811e preserve-libs ef207dc62baddfddfd39a164d9797648 systemd 47c677ae1d7b69031f11f630ac09f0d1 toolchain-funcs e4a9360924c5ce9f52e61342cde58512 unpacker ee2f5086cd7e7b747b061f58db14d89e user 8bc2845510e2109af75e3eeac607ec81 vcs-clean 2a0f74a496fa2b1552c4f3398258b7bf
_md5_=7d4837a268069ee9fe0b662b3ae611b2

@ -1,14 +0,0 @@
DEFINED_PHASES=install setup unpack
DEPEND=!app-admin/augeas !app-admin/mcollective !app-admin/puppet !dev-ruby/hiera !dev-ruby/facter !app-emulation/virt-what virtual/pkgconfig
DESCRIPTION=general puppet client utils along with mcollective hiera and facter
EAPI=6
HOMEPAGE=https://puppetlabs.com/
IUSE=puppetdb selinux
KEYWORDS=amd64 x86
LICENSE=Apache-2.0
RDEPEND=!app-admin/augeas !app-admin/mcollective !app-admin/puppet !dev-ruby/hiera !dev-ruby/facter !app-emulation/virt-what app-portage/eix sys-apps/dmidecode 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 )
RESTRICT=strip
SLOT=0
SRC_URI=amd64? ( http://apt.puppetlabs.com/pool/stretch/puppet5/p/puppet-agent/puppet-agent_5.5.3-1stretch_amd64.deb ) x86? ( http://apt.puppetlabs.com/pool/stretch/puppet5/p/puppet-agent/puppet-agent_5.5.3-1stretch_i386.deb )
_eclasses_=desktop b1d22ac8bdd4679ab79c71aca235009d epatch a1bf4756dba418a7238f3be0cb010c54 estack 43ddf5aaffa7a8d0482df54d25a66a1f eutils 6e6c2737b59a4b982de6fb3ecefd87f8 ltprune 08f9e1d9ee0af8f5d9a7854efbcd8c0e multilib 97f470f374f2e94ccab04a2fb21d811e preserve-libs ef207dc62baddfddfd39a164d9797648 systemd 47c677ae1d7b69031f11f630ac09f0d1 toolchain-funcs e4a9360924c5ce9f52e61342cde58512 unpacker ee2f5086cd7e7b747b061f58db14d89e user 8bc2845510e2109af75e3eeac607ec81 vcs-clean 2a0f74a496fa2b1552c4f3398258b7bf
_md5_=07c048384fe5f8ef3d7e5b499c1dd6a6

@ -4,11 +4,11 @@ DESCRIPTION=general puppet client utils along with mcollective hiera and facter
EAPI=6
HOMEPAGE=https://puppetlabs.com/
IUSE=puppetdb selinux
KEYWORDS=~amd64 ~x86
KEYWORDS=amd64 x86
LICENSE=Apache-2.0
RDEPEND=!app-admin/augeas !app-admin/mcollective !app-admin/puppet !dev-ruby/hiera !dev-ruby/facter !app-emulation/virt-what app-portage/eix sys-apps/dmidecode 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 )
RESTRICT=strip
SLOT=0
SRC_URI=amd64? ( http://apt.puppetlabs.com/pool/stretch/puppet5/p/puppet-agent/puppet-agent_5.5.6-1stretch_amd64.deb ) x86? ( http://apt.puppetlabs.com/pool/stretch/puppet5/p/puppet-agent/puppet-agent_5.5.6-1stretch_i386.deb )
_eclasses_=desktop b1d22ac8bdd4679ab79c71aca235009d epatch a1bf4756dba418a7238f3be0cb010c54 estack 43ddf5aaffa7a8d0482df54d25a66a1f eutils 6e6c2737b59a4b982de6fb3ecefd87f8 ltprune 08f9e1d9ee0af8f5d9a7854efbcd8c0e multilib 97f470f374f2e94ccab04a2fb21d811e preserve-libs ef207dc62baddfddfd39a164d9797648 systemd 47c677ae1d7b69031f11f630ac09f0d1 toolchain-funcs e4a9360924c5ce9f52e61342cde58512 unpacker ee2f5086cd7e7b747b061f58db14d89e user 8bc2845510e2109af75e3eeac607ec81 vcs-clean 2a0f74a496fa2b1552c4f3398258b7bf
_md5_=a1aed7da6ca73fbe01a9ba267303f228
_md5_=07c048384fe5f8ef3d7e5b499c1dd6a6

@ -1,13 +0,0 @@
DEFINED_PHASES=compile install postinst prepare setup
DEPEND=virtual/pkgconfig
DESCRIPTION=Puppet Server is the next-generation application for managing Puppet agents.
EAPI=6
HOMEPAGE=http://docs.puppetlabs.com/puppetserver/
IUSE=puppetdb
KEYWORDS=amd64 x86
LICENSE=Apache-2.0
RDEPEND=>=virtual/jdk-1.8.0 app-admin/puppet-agent[puppetdb?] virtual/tmpfiles
SLOT=0
SRC_URI=https://downloads.puppetlabs.com/puppet/puppetserver-5.3.3.tar.gz
_eclasses_=multilib 97f470f374f2e94ccab04a2fb21d811e systemd 47c677ae1d7b69031f11f630ac09f0d1 tmpfiles c8f9ea76ade103890e42d0f339afb64c toolchain-funcs e4a9360924c5ce9f52e61342cde58512 user 8bc2845510e2109af75e3eeac607ec81
_md5_=b84af374ead41af6acd604c5cb319caa

@ -4,10 +4,10 @@ DESCRIPTION=Puppet Server is the next-generation application for managing Puppet
EAPI=6
HOMEPAGE=http://docs.puppetlabs.com/puppetserver/
IUSE=puppetdb
KEYWORDS=~amd64 ~x86
KEYWORDS=amd64 x86
LICENSE=Apache-2.0
RDEPEND=>=virtual/jdk-1.8.0 app-admin/puppet-agent[puppetdb?] virtual/tmpfiles
SLOT=0
SRC_URI=https://downloads.puppetlabs.com/puppet/puppetserver-5.3.5.tar.gz
_eclasses_=multilib 97f470f374f2e94ccab04a2fb21d811e systemd 47c677ae1d7b69031f11f630ac09f0d1 tmpfiles c8f9ea76ade103890e42d0f339afb64c toolchain-funcs e4a9360924c5ce9f52e61342cde58512 user 8bc2845510e2109af75e3eeac607ec81
_md5_=a68a22b3d5fb72c715d2b39bb907c04b
_md5_=0cd39c3a80f3b952786fc85dedcc25ba

@ -0,0 +1,12 @@
BDEPEND=virtual/pkgconfig >=app-portage/elt-patches-20170815 !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.16.1:1.16 >=sys-devel/automake-1.15.1:1.15 ) >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4
DEFINED_PHASES=prepare
DEPEND=app-text/asciidoc app-text/xmlto
DESCRIPTION=test program for capturing input device events
EAPI=7
HOMEPAGE=https://cgit.freedesktop.org/evtest/
KEYWORDS=~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86
LICENSE=GPL-2
SLOT=0
SRC_URI=https://cgit.freedesktop.org/evtest/snapshot/evtest-evtest-1.33.tar.gz -> evtest-1.33.tar.gz
_eclasses_=autotools 1bf086cdd7356f5c9a4acd9727bd2065 libtool f143db5a74ccd9ca28c1234deffede96 multilib 97f470f374f2e94ccab04a2fb21d811e toolchain-funcs e4a9360924c5ce9f52e61342cde58512
_md5_=a359d25b689ae6176acd6a5af07c253b

@ -0,0 +1,12 @@
DEFINED_PHASES=configure install prepare
DEPEND=sys-devel/autoconf doc? ( app-doc/doxygen ) >=app-portage/elt-patches-20170815 !<sys-devel/gettext-0.18.1.1-r3 || ( >=sys-devel/automake-1.16.1:1.16 >=sys-devel/automake-1.15.1:1.15 ) >=sys-devel/autoconf-2.69 >=sys-devel/libtool-2.4
DESCRIPTION=Erasure Code API library written in C with pluggable Erasure Code backends.
EAPI=6
HOMEPAGE=https://bitbucket.org/tsg-/liberasurecode/overview
IUSE=doc static-libs
KEYWORDS=~amd64 ~arm64 ~x86
LICENSE=BSD
SLOT=0
SRC_URI=https://github.com/openstack/liberasurecode/archive/1.6.0.tar.gz -> liberasurecode-1.6.0.tar.gz
_eclasses_=autotools 1bf086cdd7356f5c9a4acd9727bd2065 desktop b1d22ac8bdd4679ab79c71aca235009d epatch a1bf4756dba418a7238f3be0cb010c54 estack 43ddf5aaffa7a8d0482df54d25a66a1f eutils 6e6c2737b59a4b982de6fb3ecefd87f8 libtool f143db5a74ccd9ca28c1234deffede96 ltprune 08f9e1d9ee0af8f5d9a7854efbcd8c0e multilib 97f470f374f2e94ccab04a2fb21d811e preserve-libs ef207dc62baddfddfd39a164d9797648 toolchain-funcs e4a9360924c5ce9f52e61342cde58512 vcs-clean 2a0f74a496fa2b1552c4f3398258b7bf
_md5_=c78d930a9e896a48d16bca59a6942c17

@ -1,13 +0,0 @@
DEFINED_PHASES=compile configure install prepare test
DEPEND=>=virtual/perl-Compress-Raw-Zlib-2.17.0 virtual/perl-File-Path >=virtual/perl-File-Spec-0.800.0 virtual/perl-File-Temp virtual/perl-IO virtual/perl-Time-Local virtual/perl-ExtUtils-MakeMaker test? ( dev-perl/Test-MockModule >=virtual/perl-Test-Simple-0.880.0 ) dev-lang/perl:=
DESCRIPTION=A wrapper that lets you read Zip archive members as if they were files
EAPI=6
HOMEPAGE=http://search.cpan.org/dist/Archive-Zip/
IUSE=test examples
KEYWORDS=~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris
LICENSE=|| ( Artistic GPL-1+ )
RDEPEND=>=virtual/perl-Compress-Raw-Zlib-2.17.0 virtual/perl-File-Path >=virtual/perl-File-Spec-0.800.0 virtual/perl-File-Temp virtual/perl-IO virtual/perl-Time-Local dev-lang/perl:=
SLOT=0
SRC_URI=mirror://cpan/authors/id/P/PH/PHRED/Archive-Zip-1.60.tar.gz
_eclasses_=multiprocessing cac3169468f893670dac3e7cb940e045 perl-functions f2e3420aed32cf1abe33b4129b842636 perl-module ee5593d6e2d067fafac171106655b5ce
_md5_=d069c3fdd66b833a195b481a2ac62b35

@ -1,13 +0,0 @@
DEFINED_PHASES=compile configure install prepare test unpack
DEPEND=!libressl? ( dev-libs/openssl:0= ) libressl? ( dev-libs/libressl:0= ) dev-lang/perl:=[-build(-)]
DESCRIPTION=OpenSSL's multiprecision integer arithmetic
EAPI=5
HOMEPAGE=http://search.cpan.org/dist/Crypt-OpenSSL-Bignum/
IUSE=libressl
KEYWORDS=alpha amd64 arm hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh sparc x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos
LICENSE=|| ( Artistic GPL-1+ )
RDEPEND=!libressl? ( dev-libs/openssl:0= ) libressl? ( dev-libs/libressl:0= ) dev-lang/perl:=[-build(-)]
SLOT=0
SRC_URI=mirror://cpan/authors/id/I/IR/IROBERTS/Crypt-OpenSSL-Bignum-0.04.tar.gz
_eclasses_=desktop b1d22ac8bdd4679ab79c71aca235009d epatch a1bf4756dba418a7238f3be0cb010c54 estack 43ddf5aaffa7a8d0482df54d25a66a1f eutils 6e6c2737b59a4b982de6fb3ecefd87f8 ltprune 08f9e1d9ee0af8f5d9a7854efbcd8c0e multilib 97f470f374f2e94ccab04a2fb21d811e multiprocessing cac3169468f893670dac3e7cb940e045 perl-functions f2e3420aed32cf1abe33b4129b842636 perl-module ee5593d6e2d067fafac171106655b5ce preserve-libs ef207dc62baddfddfd39a164d9797648 toolchain-funcs e4a9360924c5ce9f52e61342cde58512 unpacker ee2f5086cd7e7b747b061f58db14d89e vcs-clean 2a0f74a496fa2b1552c4f3398258b7bf
_md5_=c6a7280436451f15e8cd571393871b7c

@ -1,13 +0,0 @@
DEFINED_PHASES=compile configure install prepare test
DEPEND=!libressl? ( dev-libs/openssl:0= ) libressl? ( dev-libs/libressl:0= ) virtual/perl-ExtUtils-MakeMaker virtual/pkgconfig dev-lang/perl:=
DESCRIPTION=OpenSSL's multiprecision integer arithmetic
EAPI=6
HOMEPAGE=http://search.cpan.org/dist/Crypt-OpenSSL-Bignum/
IUSE=libressl
KEYWORDS=~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos
LICENSE=|| ( Artistic GPL-1+ )
RDEPEND=!libressl? ( dev-libs/openssl:0= ) libressl? ( dev-libs/libressl:0= ) dev-lang/perl:=
SLOT=0
SRC_URI=mirror://cpan/authors/id/K/KM/KMX/Crypt-OpenSSL-Bignum-0.07.tar.gz
_eclasses_=multiprocessing cac3169468f893670dac3e7cb940e045 perl-functions f2e3420aed32cf1abe33b4129b842636 perl-module ee5593d6e2d067fafac171106655b5ce
_md5_=5a185735a611242c14c2b46dce2cbe30

@ -1,13 +0,0 @@
DEFINED_PHASES=compile configure install prepare test
DEPEND=!libressl? ( dev-libs/openssl:0= ) libressl? ( dev-libs/libressl:0= ) virtual/perl-ExtUtils-MakeMaker virtual/pkgconfig dev-lang/perl:=
DESCRIPTION=OpenSSL's multiprecision integer arithmetic
EAPI=6
HOMEPAGE=http://search.cpan.org/dist/Crypt-OpenSSL-Bignum/
IUSE=libressl
KEYWORDS=~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos
LICENSE=|| ( Artistic GPL-1+ )
RDEPEND=!libressl? ( dev-libs/openssl:0= ) libressl? ( dev-libs/libressl:0= ) dev-lang/perl:=
SLOT=0
SRC_URI=mirror://cpan/authors/id/K/KM/KMX/Crypt-OpenSSL-Bignum-0.08.tar.gz
_eclasses_=multiprocessing cac3169468f893670dac3e7cb940e045 perl-functions f2e3420aed32cf1abe33b4129b842636 perl-module ee5593d6e2d067fafac171106655b5ce
_md5_=3121895d7a30ce5733f7a81fd8990075

@ -1,13 +0,0 @@
DEFINED_PHASES=compile configure install prepare test
DEPEND=!libressl? ( dev-libs/openssl:0= ) libressl? ( dev-libs/libressl:0= ) virtual/perl-ExtUtils-MakeMaker virtual/pkgconfig dev-lang/perl:=
DESCRIPTION=OpenSSL's multiprecision integer arithmetic
EAPI=6
HOMEPAGE=http://search.cpan.org/dist/Crypt-OpenSSL-Bignum/
IUSE=libressl
KEYWORDS=~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos
LICENSE=|| ( Artistic GPL-1+ )
RDEPEND=!libressl? ( dev-libs/openssl:0= ) libressl? ( dev-libs/libressl:0= ) dev-lang/perl:=
SLOT=0
SRC_URI=mirror://cpan/authors/id/K/KM/KMX/Crypt-OpenSSL-Bignum-0.08.tar.gz
_eclasses_=multiprocessing cac3169468f893670dac3e7cb940e045 perl-functions f2e3420aed32cf1abe33b4129b842636 perl-module ee5593d6e2d067fafac171106655b5ce
_md5_=bd374d46e5e00009804a9d135213a739

@ -1,14 +1,14 @@
DEFINED_PHASES=compile configure install prepare test
DEPEND=test? ( dev-python/pytest dev-python/freezegun ) python_targets_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 ) python_targets_python3_4? ( dev-lang/python:3.4 ) python_targets_python3_5? ( dev-lang/python:3.5 ) python_targets_python3_6? ( dev-lang/python:3.6 ) >=dev-lang/python-exec-2:=[python_targets_python2_7(-)?,python_targets_python3_4(-)?,python_targets_python3_5(-)?,python_targets_python3_6(-)?,-python_single_target_python2_7(-),-python_single_target_python3_4(-),-python_single_target_python3_5(-),-python_single_target_python3_6(-)]
DEPEND=test? ( dev-python/pytest dev-python/freezegun ) python_targets_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 ) python_targets_python3_4? ( dev-lang/python:3.4 ) python_targets_python3_5? ( dev-lang/python:3.5 ) python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) >=dev-lang/python-exec-2:=[python_targets_python2_7(-)?,python_targets_python3_4(-)?,python_targets_python3_5(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_4(-),-python_single_target_python3_5(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)]
DESCRIPTION=A cached-property for decorating methods in classes
EAPI=6
HOMEPAGE=https://github.com/pydanny/cached-property
IUSE=test python_targets_python2_7 python_targets_python3_4 python_targets_python3_5 python_targets_python3_6
IUSE=test python_targets_python2_7 python_targets_python3_4 python_targets_python3_5 python_targets_python3_6 python_targets_python3_7
KEYWORDS=~amd64 ~x86
LICENSE=BSD
RDEPEND=python_targets_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 ) python_targets_python3_4? ( dev-lang/python:3.4 ) python_targets_python3_5? ( dev-lang/python:3.5 ) python_targets_python3_6? ( dev-lang/python:3.6 ) >=dev-lang/python-exec-2:=[python_targets_python2_7(-)?,python_targets_python3_4(-)?,python_targets_python3_5(-)?,python_targets_python3_6(-)?,-python_single_target_python2_7(-),-python_single_target_python3_4(-),-python_single_target_python3_5(-),-python_single_target_python3_6(-)]
REQUIRED_USE=|| ( python_targets_python2_7 python_targets_python3_4 python_targets_python3_5 python_targets_python3_6 )
RDEPEND=python_targets_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7 ) python_targets_python3_4? ( dev-lang/python:3.4 ) python_targets_python3_5? ( dev-lang/python:3.5 ) python_targets_python3_6? ( dev-lang/python:3.6 ) python_targets_python3_7? ( dev-lang/python:3.7 ) >=dev-lang/python-exec-2:=[python_targets_python2_7(-)?,python_targets_python3_4(-)?,python_targets_python3_5(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_python2_7(-),-python_single_target_python3_4(-),-python_single_target_python3_5(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-)]
REQUIRED_USE=|| ( python_targets_python2_7 python_targets_python3_4 python_targets_python3_5 python_targets_python3_6 python_targets_python3_7 )
SLOT=0
SRC_URI=mirror://pypi/c/cached-property/cached-property-1.4.3.tar.gz
SRC_URI=mirror://pypi/c/cached-property/cached-property-1.5.1.tar.gz
_eclasses_=distutils-r1 8595c9c7530ac3963f3aa0d77aa7e2d8 multibuild 40fe59465edacd730c644ec2bc197809 multilib 97f470f374f2e94ccab04a2fb21d811e multiprocessing cac3169468f893670dac3e7cb940e045 python-r1 ce1cd23cfdc1848e8e32743efe34f299 python-utils-r1 12114a2a9aab35b93efc037a196b3234 toolchain-funcs e4a9360924c5ce9f52e61342cde58512 xdg-utils 89bb9f083a2590d9b447fd0b78a96186
_md5_=7fe894c9640edb88e9c88dd502ad64e3
_md5_=6e496d78b66cae9e253f92b43c1aa942

@ -0,0 +1,10 @@
DEFINED_PHASES=install test
DESCRIPTION=Command-line flags module for Unix shell scripts
EAPI=7
HOMEPAGE=https://github.com/kward/shflags
IUSE=examples
KEYWORDS=~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86
LICENSE=LGPL-2.1
SLOT=0
SRC_URI=https://github.com/kward/shflags/archive/v1.2.3.tar.gz -> shflags-1.2.3.tgz
_md5_=412acb274e8ff3c3d6927a5200a061b5

@ -1,13 +1,13 @@
DEFINED_PHASES=compile configure install prepare test
DEPEND=dev-libs/glib:2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] media-libs/alsa-lib[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] pa-headers? ( !media-sound/pulseaudio ) sys-devel/make >=dev-util/cmake-3.9.6
DEPEND=dev-libs/glib:2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] media-libs/alsa-lib[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] sdk? ( !media-sound/pulseaudio ) sys-devel/make >=dev-util/cmake-3.9.6
DESCRIPTION=PulseAudio emulation for ALSA
EAPI=6
HOMEPAGE=https://github.com/i-rinat/apulse
IUSE=+pa-headers test abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64
IUSE=debug sdk test abi_x86_32 abi_x86_64 abi_x86_x32 abi_mips_n32 abi_mips_n64 abi_mips_o32 abi_ppc_32 abi_ppc_64 abi_s390_32 abi_s390_64
KEYWORDS=~amd64 ~x86
LICENSE=MIT LGPL-2.1
RDEPEND=dev-libs/glib:2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] media-libs/alsa-lib[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] pa-headers? ( !media-sound/pulseaudio ) !!media-plugins/alsa-plugins[pulseaudio]
RDEPEND=dev-libs/glib:2[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] media-libs/alsa-lib[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] sdk? ( !media-sound/pulseaudio ) !!media-plugins/alsa-plugins[pulseaudio]
SLOT=0
SRC_URI=https://github.com/i-rinat/apulse/archive/v0.1.12.tar.gz -> apulse-0.1.12.tar.gz
_eclasses_=cmake-multilib a2ef7e88c0043ca9dcbe33db04c84f23 cmake-utils f0bc1c175684130a76ab6c17f575d820 desktop b1d22ac8bdd4679ab79c71aca235009d epatch a1bf4756dba418a7238f3be0cb010c54 estack 43ddf5aaffa7a8d0482df54d25a66a1f eutils 6e6c2737b59a4b982de6fb3ecefd87f8 flag-o-matic 55aaa148741116aa54ad0d80e361818e ltprune 08f9e1d9ee0af8f5d9a7854efbcd8c0e multibuild 40fe59465edacd730c644ec2bc197809 multilib 97f470f374f2e94ccab04a2fb21d811e multilib-build b42436dc1260f475af229754c165cb6b multilib-minimal 8bddda43703ba94d8341f4e247f97566 multiprocessing cac3169468f893670dac3e7cb940e045 ninja-utils 132cbb376048d079b5a012f5467c4e7f preserve-libs ef207dc62baddfddfd39a164d9797648 toolchain-funcs e4a9360924c5ce9f52e61342cde58512 vcs-clean 2a0f74a496fa2b1552c4f3398258b7bf xdg-utils 89bb9f083a2590d9b447fd0b78a96186
_md5_=2f850295855ccd891f17c5e61ed37ed4
_md5_=81314c12e111434abb3d504646b4fabb

@ -0,0 +1,14 @@
DEFINED_PHASES=configure postinst preinst prepare
DEPEND=dev-lang/perl ldap? ( net-nds/openldap ) mysql? ( dev-db/mysql-connector-c ) postgres? ( dev-db/postgresql:* ) ssl? ( !libressl? ( dev-libs/openssl:0 ) libressl? ( dev-libs/libressl ) ) radius? ( net-dialup/freeradius-client ) nagios-dns? ( net-dns/bind-tools ) nagios-game? ( games-util/qstat ) nagios-ping? ( net-analyzer/fping ) samba? ( net-fs/samba ) ssh? ( net-misc/openssh ) snmp? ( dev-perl/Net-SNMP net-analyzer/net-snmp[-minimal] )
DESCRIPTION=Official plugins for Nagios
EAPI=6
HOMEPAGE=http://nagios-plugins.org/
IUSE=ipv6 ldap libressl mysql nagios-dns nagios-ping nagios-game postgres radius samba selinux snmp ssh +ssl
KEYWORDS=~alpha ~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~sparc ~x86
LICENSE=GPL-2
RDEPEND=dev-lang/perl ldap? ( net-nds/openldap ) mysql? ( dev-db/mysql-connector-c ) postgres? ( dev-db/postgresql:* ) ssl? ( !libressl? ( dev-libs/openssl:0 ) libressl? ( dev-libs/libressl ) ) radius? ( net-dialup/freeradius-client ) nagios-dns? ( net-dns/bind-tools ) nagios-game? ( games-util/qstat ) nagios-ping? ( net-analyzer/fping ) samba? ( net-fs/samba ) ssh? ( net-misc/openssh ) snmp? ( dev-perl/Net-SNMP net-analyzer/net-snmp[-minimal] ) !net-analyzer/monitoring-plugins selinux? ( sec-policy/selinux-nagios )
RESTRICT=test
SLOT=0
SRC_URI=http://nagios-plugins.org/download/nagios-plugins-2.2.1.tar.gz
_eclasses_=user 8bc2845510e2109af75e3eeac607ec81
_md5_=a9849488c460175423b2ac550d12aa20

@ -1,12 +1,12 @@
DEFINED_PHASES=compile configure install postinst
DEPEND=dev-perl/DBD-mysql dev-perl/DBI >=net-analyzer/nagios-core-4 virtual/mysql virtual/pkgconfig
DEPEND=dev-db/mysql-connector-c dev-perl/DBD-mysql dev-perl/DBI >=net-analyzer/nagios-core-4 virtual/pkgconfig
DESCRIPTION=Nagios addon to store Nagios data in a MySQL database
EAPI=6
HOMEPAGE=http://www.nagios.org/
KEYWORDS=~amd64 ~ppc ~x86
LICENSE=GPL-2
RDEPEND=dev-perl/DBD-mysql dev-perl/DBI >=net-analyzer/nagios-core-4 virtual/mysql
RDEPEND=dev-db/mysql-connector-c dev-perl/DBD-mysql dev-perl/DBI >=net-analyzer/nagios-core-4 virtual/mysql
SLOT=0
SRC_URI=https://github.com/NagiosEnterprises/ndoutils/archive/ndoutils-2.1.3.tar.gz
_eclasses_=multilib 97f470f374f2e94ccab04a2fb21d811e systemd 47c677ae1d7b69031f11f630ac09f0d1 toolchain-funcs e4a9360924c5ce9f52e61342cde58512
_md5_=0d9475d628130f5a80ea78ec465ffb46
_md5_=a22c4ded65f9244e1b772d0d9139659d

@ -0,0 +1,13 @@
DEFINED_PHASES=configure install postinst setup
DEPEND=crypt? ( >=app-crypt/gpgme-1.0.0 ) otr? ( >=net-libs/libotr-3.1.0 ) aspell? ( app-text/aspell ) vim-syntax? ( || ( app-editors/vim app-editors/gvim ) ) idn? ( net-dns/libidn:= ) spell? ( app-text/enchant ) dev-libs/glib:2 net-libs/libnsl:0= sys-libs/ncurses:0= >=net-libs/loudmouth-1.4.3-r1[ssl?] virtual/pkgconfig
DESCRIPTION=A small Jabber console client with various features, like MUC, SSL, PGP
EAPI=7
HOMEPAGE=http://mcabber.com/
IUSE=aspell crypt idn otr spell ssl vim-syntax l10n_cs l10n_de l10n_fr l10n_it l10n_nl l10n_pl l10n_ru l10n_uk
KEYWORDS=~alpha ~amd64 ~arm ~mips ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos
LICENSE=GPL-2
RDEPEND=crypt? ( >=app-crypt/gpgme-1.0.0 ) otr? ( >=net-libs/libotr-3.1.0 ) aspell? ( app-text/aspell ) vim-syntax? ( || ( app-editors/vim app-editors/gvim ) ) idn? ( net-dns/libidn:= ) spell? ( app-text/enchant ) dev-libs/glib:2 net-libs/libnsl:0= sys-libs/ncurses:0= >=net-libs/loudmouth-1.4.3-r1[ssl?]
SLOT=0
SRC_URI=http://mcabber.com/files/mcabber-1.1.0.tar.bz2
_eclasses_=eutils 6e6c2737b59a4b982de6fb3ecefd87f8 flag-o-matic 55aaa148741116aa54ad0d80e361818e multilib 97f470f374f2e94ccab04a2fb21d811e readme.gentoo-r1 22ae82e140bdd95d17a34fd5fd733190 toolchain-funcs e4a9360924c5ce9f52e61342cde58512
_md5_=61a2cb19f666ba29248a23a176085ffb

@ -1,11 +1,11 @@
DEFINED_PHASES=compile configure install postinst prepare setup test unpack
DEPEND=crypt? ( >=app-crypt/gpgme-1.0.0 ) otr? ( >=net-libs/libotr-3.1.0 ) aspell? ( app-text/aspell ) vim-syntax? ( || ( app-editors/vim app-editors/gvim ) ) idn? ( net-dns/libidn ) spell? ( app-text/enchant ) dev-libs/glib:2 net-libs/libnsl:0= sys-libs/ncurses:0= >=net-libs/loudmouth-1.4.3-r1[ssl?] virtual/pkgconfig >=app-portage/elt-patches-20170815 dev-vcs/mercurial
DEFINED_PHASES=configure install postinst setup unpack
DEPEND=crypt? ( >=app-crypt/gpgme-1.0.0 ) otr? ( >=net-libs/libotr-3.1.0 ) aspell? ( app-text/aspell ) vim-syntax? ( || ( app-editors/vim app-editors/gvim ) ) idn? ( net-dns/libidn:= ) spell? ( app-text/enchant ) dev-libs/glib:2 net-libs/libnsl:0= sys-libs/ncurses:0= >=net-libs/loudmouth-1.4.3-r1[ssl?] virtual/pkgconfig dev-vcs/mercurial
DESCRIPTION=A small Jabber console client with various features, like MUC, SSL, PGP
EAPI=5
EAPI=7
HOMEPAGE=http://mcabber.com/
IUSE=aspell crypt idn modules otr spell ssl vim-syntax l10n_cs l10n_de l10n_fr l10n_it l10n_nl l10n_pl l10n_ru l10n_uk
IUSE=aspell crypt idn otr spell ssl vim-syntax l10n_cs l10n_de l10n_fr l10n_it l10n_nl l10n_pl l10n_ru l10n_uk
LICENSE=GPL-2
RDEPEND=crypt? ( >=app-crypt/gpgme-1.0.0 ) otr? ( >=net-libs/libotr-3.1.0 ) aspell? ( app-text/aspell ) vim-syntax? ( || ( app-editors/vim app-editors/gvim ) ) idn? ( net-dns/libidn ) spell? ( app-text/enchant ) dev-libs/glib:2 net-libs/libnsl:0= sys-libs/ncurses:0= >=net-libs/loudmouth-1.4.3-r1[ssl?]
RDEPEND=crypt? ( >=app-crypt/gpgme-1.0.0 ) otr? ( >=net-libs/libotr-3.1.0 ) aspell? ( app-text/aspell ) vim-syntax? ( || ( app-editors/vim app-editors/gvim ) ) idn? ( net-dns/libidn:= ) spell? ( app-text/enchant ) dev-libs/glib:2 net-libs/libnsl:0= sys-libs/ncurses:0= >=net-libs/loudmouth-1.4.3-r1[ssl?]
SLOT=0
_eclasses_=autotools 1bf086cdd7356f5c9a4acd9727bd2065 autotools-utils 696393cddf6200db17a31641f597b403 desktop b1d22ac8bdd4679ab79c71aca235009d epatch a1bf4756dba418a7238f3be0cb010c54 estack 43ddf5aaffa7a8d0482df54d25a66a1f eutils 6e6c2737b59a4b982de6fb3ecefd87f8 flag-o-matic 55aaa148741116aa54ad0d80e361818e libtool f143db5a74ccd9ca28c1234deffede96 ltprune 08f9e1d9ee0af8f5d9a7854efbcd8c0e mercurial 9813bb616cb1bd0c943177ab52204409 multilib 97f470f374f2e94ccab04a2fb21d811e preserve-libs ef207dc62baddfddfd39a164d9797648 toolchain-funcs e4a9360924c5ce9f52e61342cde58512 vcs-clean 2a0f74a496fa2b1552c4f3398258b7bf
_md5_=6b503e74f408c7a22761b09bf0cdb866
_eclasses_=eutils 6e6c2737b59a4b982de6fb3ecefd87f8 flag-o-matic 55aaa148741116aa54ad0d80e361818e mercurial 9813bb616cb1bd0c943177ab52204409 multilib 97f470f374f2e94ccab04a2fb21d811e readme.gentoo-r1 22ae82e140bdd95d17a34fd5fd733190 toolchain-funcs e4a9360924c5ce9f52e61342cde58512
_md5_=61a2cb19f666ba29248a23a176085ffb

@ -1,14 +1,14 @@
DEFINED_PHASES=compile configure install postinst prepare pretend setup test
DEPEND=>=dev-libs/libuv-1.23.0:= >=net-libs/http-parser-2.8.0:= >=net-libs/nghttp2-1.33.0 sys-libs/zlib icu? ( >=dev-libs/icu-62.1:= ) ssl? ( >=dev-libs/openssl-1.1.0:0=[-bindist] ) python_targets_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7[threads] ) >=dev-lang/python-exec-2:=[python_targets_python2_7(-)?,-python_single_target_jython2_7(-),-python_single_target_pypy(-),-python_single_target_pypy3(-),-python_single_target_python3_4(-),-python_single_target_python3_5(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-),python_single_target_python2_7(+)] systemtap? ( dev-util/systemtap ) test? ( net-misc/curl )
DEPEND=>=dev-libs/libuv-1.23.0:= >=net-libs/http-parser-2.8.0:= >=net-libs/nghttp2-1.33.0 sys-libs/zlib icu? ( >=dev-libs/icu-62.1:= ) ssl? ( =dev-libs/openssl-1.1.0*:0=[-bindist] ) python_targets_python2_7? ( >=dev-lang/python-2.7.5-r2:2.7[threads] ) >=dev-lang/python-exec-2:=[python_targets_python2_7(-)?,-python_single_target_jython2_7(-),-python_single_target_pypy(-),-python_single_target_pypy3(-),-python_single_target_python3_4(-),-python_single_target_python3_5(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-),python_single_target_python2_7(+)] systemtap? ( dev-util/systemtap ) test? ( net-misc/curl )
DESCRIPTION=A JavaScript runtime built on Chrome's V8 JavaScript engine
EAPI=6
HOMEPAGE=https://nodejs.org/
IUSE=cpu_flags_x86_sse2 debug doc icu inspector +npm +snapshot +ssl systemtap test python_targets_python2_7
KEYWORDS=~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86 ~amd64-linux ~x64-macos
LICENSE=Apache-1.1 Apache-2.0 BSD BSD-2 MIT
RDEPEND=>=dev-libs/libuv-1.23.0:= >=net-libs/http-parser-2.8.0:= >=net-libs/nghttp2-1.33.0 sys-libs/zlib icu? ( >=dev-libs/icu-62.1:= ) ssl? ( >=dev-libs/openssl-1.1.0:0=[-bindist] )
RDEPEND=>=dev-libs/libuv-1.23.0:= >=net-libs/http-parser-2.8.0:= >=net-libs/nghttp2-1.33.0 sys-libs/zlib icu? ( >=dev-libs/icu-62.1:= ) ssl? ( =dev-libs/openssl-1.1.0*:0=[-bindist] )
REQUIRED_USE=python_targets_python2_7 inspector? ( icu ssl ) npm? ( ssl )
SLOT=0
SRC_URI=https://nodejs.org/dist/v10.11.0/node-v10.11.0.tar.xz
_eclasses_=bash-completion-r1 47a7402d95930413ce25ba8d857339bb desktop b1d22ac8bdd4679ab79c71aca235009d epatch a1bf4756dba418a7238f3be0cb010c54 estack 43ddf5aaffa7a8d0482df54d25a66a1f eutils 6e6c2737b59a4b982de6fb3ecefd87f8 flag-o-matic 55aaa148741116aa54ad0d80e361818e ltprune 08f9e1d9ee0af8f5d9a7854efbcd8c0e multilib 97f470f374f2e94ccab04a2fb21d811e pax-utils e85f015e815dd463b0c206d781ef45a5 preserve-libs ef207dc62baddfddfd39a164d9797648 python-single-r1 3a0fc81f484bfdbd9c2b7448015a36e4 python-utils-r1 12114a2a9aab35b93efc037a196b3234 toolchain-funcs e4a9360924c5ce9f52e61342cde58512 vcs-clean 2a0f74a496fa2b1552c4f3398258b7bf
_md5_=7a40b7f6d7c9f06fe1c0b0b184ee26f0
_md5_=fe92a43f6061b8768c7df1aea4bd3067

@ -1,13 +0,0 @@
DEFINED_PHASES=configure install prepare
DEPEND=!net-misc/arpd !minimal? ( net-libs/libmnl virtual/libelf ) iptables? ( >=net-firewall/iptables-1.4.20:= ) berkdb? ( sys-libs/db:= ) atm? ( net-dialup/linux-atm ) selinux? ( sys-libs/libselinux ) app-arch/xz-utils iptables? ( virtual/pkgconfig ) >=sys-devel/bison-2.4 sys-devel/flex >=sys-kernel/linux-headers-3.16 elibc_glibc? ( >=sys-libs/glibc-2.7 )
DESCRIPTION=kernel routing and traffic control utilities
EAPI=5
HOMEPAGE=https://wiki.linuxfoundation.org/networking/iproute2
IUSE=atm berkdb +iptables ipv6 minimal selinux
KEYWORDS=~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86
LICENSE=GPL-2
RDEPEND=!net-misc/arpd !minimal? ( net-libs/libmnl virtual/libelf ) iptables? ( >=net-firewall/iptables-1.4.20:= ) berkdb? ( sys-libs/db:= ) atm? ( net-dialup/linux-atm ) selinux? ( sys-libs/libselinux )
SLOT=0
SRC_URI=mirror://kernel/linux/utils/net/iproute2/iproute2-4.9.0.tar.xz
_eclasses_=desktop b1d22ac8bdd4679ab79c71aca235009d epatch a1bf4756dba418a7238f3be0cb010c54 estack 43ddf5aaffa7a8d0482df54d25a66a1f eutils 6e6c2737b59a4b982de6fb3ecefd87f8 flag-o-matic 55aaa148741116aa54ad0d80e361818e ltprune 08f9e1d9ee0af8f5d9a7854efbcd8c0e multilib 97f470f374f2e94ccab04a2fb21d811e preserve-libs ef207dc62baddfddfd39a164d9797648 toolchain-funcs e4a9360924c5ce9f52e61342cde58512 vcs-clean 2a0f74a496fa2b1552c4f3398258b7bf
_md5_=1fb1eeeec269a5c5ed3ba53ad6e98bbe

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

@ -1 +1 @@
Sat, 22 Sep 2018 20:08:29 +0000
Sun, 23 Sep 2018 06:08:29 +0000

@ -1 +1 @@
Sat Sep 22 20:08:29 UTC 2018
Sun Sep 23 06:08:29 UTC 2018

@ -1 +1 @@
Sat, 22 Sep 2018 20:30:01 +0000
Sun, 23 Sep 2018 06:30:01 +0000

@ -1 +1 @@
4138c5bd17d07f859fbf5dec6b1c338f510a463e 1537645609 2018-09-22T19:46:49+00:00
467e51993c34f0d1794baea5ecca4a298db3439d 1537682648 2018-09-23T06:04:08+00:00

@ -1 +1 @@
1537646701 Sat 22 Sep 2018 08:05:01 PM UTC
1537682701 Sun 23 Sep 2018 06:05:01 AM UTC

@ -1 +1 @@
Sat, 22 Sep 2018 20:08:29 +0000
Sun, 23 Sep 2018 06:08:29 +0000

Binary file not shown.

@ -0,0 +1,118 @@
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
inherit user
DESCRIPTION="Official plugins for Nagios"
HOMEPAGE="http://nagios-plugins.org/"
SRC_URI="http://nagios-plugins.org/download/${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~sparc ~x86"
IUSE="ipv6 ldap libressl mysql nagios-dns nagios-ping nagios-game postgres radius samba selinux snmp ssh +ssl"
# Most of the plugins use automagic dependencies, i.e. the plugin will
# get built if the binary it uses is installed. For example, check_snmp
# will be built only if snmpget from net-analyzer/net-snmp[-minimal] is
# installed. End result: most of our runtime dependencies are required
# at build time as well.
#
# REAL_DEPEND contains the dependencies that are actually needed to
# build. DEPEND contains those plus the automagic dependencies.
#
REAL_DEPEND="dev-lang/perl
ldap? ( net-nds/openldap )
mysql? ( dev-db/mysql-connector-c )
postgres? ( dev-db/postgresql:* )
ssl? (
!libressl? ( dev-libs/openssl:0 )
libressl? ( dev-libs/libressl )
)
radius? ( net-dialup/freeradius-client )"
DEPEND="${REAL_DEPEND}
nagios-dns? ( net-dns/bind-tools )
nagios-game? ( games-util/qstat )
nagios-ping? ( net-analyzer/fping )
samba? ( net-fs/samba )
ssh? ( net-misc/openssh )
snmp? ( dev-perl/Net-SNMP
net-analyzer/net-snmp[-minimal] )"
# Basically everything collides with nagios-plugins.
RDEPEND="${DEPEND}
!net-analyzer/monitoring-plugins
selinux? ( sec-policy/selinux-nagios )"
# At least one test is interactive.
RESTRICT="test"
DOCS=(
ACKNOWLEDGEMENTS
AUTHORS
CODING
ChangeLog
FAQ
NEWS
README
REQUIREMENTS
SUPPORT
THANKS
)
PATCHES=( "${FILESDIR}/define-own-mysql-port-constant.patch" )
src_prepare() {
default
# Fix the path to our perl interpreter
sed -i -e "1s:/usr/local/bin/perl:/usr/bin/perl:" \
"${S}"/plugins-scripts/*.pl \
|| die 'failed to fix perl interpreter path'
}
src_configure() {
# Use an array to prevent econf from mangling the ping args.
local myconf=()
if use ssl; then
myconf+=( $(use_with ssl openssl /usr) )
else
myconf+=( --without-openssl )
myconf+=( --without-gnutls )
fi
# The autodetection for these two commands can hang if localhost is
# down or ICMP traffic is filtered. Bug #468296.
myconf+=( --with-ping-command="/bin/ping -n -U -w %d -c %d %s" )
if use ipv6; then
myconf+=( --with-ping6-command="/bin/ping6 -n -U -w %d -c %d %s" )
fi
econf \
$(use_with mysql) \
$(use_with ipv6) \
$(use_with ldap) \
$(use_with postgres pgsql /usr) \
$(use_with radius) \
"${myconf[@]}" \
--libexecdir="/usr/$(get_libdir)/nagios/plugins" \
--sysconfdir="/etc/nagios"
}
pkg_preinst() {
enewgroup nagios
enewuser nagios -1 /bin/bash /var/nagios/home nagios
}
pkg_postinst() {
elog "This ebuild has a number of USE flags that determine what you"
elog "are able to monitor. Depending on what you want to monitor, some"
elog "or all of these USE flags need to be set."
elog
elog "The plugins are installed in ${ROOT}usr/$(get_libdir)/nagios/plugins"
}

@ -1,4 +1,4 @@
# Copyright 1999-2017 Gentoo Foundation
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
@ -14,11 +14,12 @@ KEYWORDS="~amd64 ~ppc ~x86"
# We require the "nagios" user from net-analyzer/nagios-core at build
# time.
DEPEND="dev-perl/DBD-mysql
DEPEND="dev-db/mysql-connector-c
dev-perl/DBD-mysql
dev-perl/DBI
>=net-analyzer/nagios-core-4
>=net-analyzer/nagios-core-4"
RDEPEND="${DEPEND}
virtual/mysql"
RDEPEND="${DEPEND}"
S="${WORKDIR}/${PN}-${P}"
@ -74,12 +75,17 @@ src_install() {
# The documentation isn't installed by the build system
dodoc -r docs/html
# Use symlinks because the installdb/upgradedb scripts use relative
# paths to the SQL queries.
insinto "/usr/share/${PN}"
doins -r db
dosym "/usr/share/${PN}/db/installdb" /usr/bin/ndoutils-installdb
dosym "/usr/share/${PN}/db/upgradedb" /usr/bin/ndoutils-upgradedb
# These need to be executable...
exeinto "/usr/share/${PN}/db"
doexe db/{installdb,prepsql,upgradedb}
# Use symlinks because the installdb/upgradedb scripts use relative
# paths to the SQL queries.
dosym "../share/${PN}/db/installdb" /usr/bin/ndoutils-installdb
dosym "../share/${PN}/db/upgradedb" /usr/bin/ndoutils-upgradedb
}
pkg_postinst() {

Binary file not shown.

@ -0,0 +1,17 @@
MCabber requires you to create a subdirectory .mcabber in your home
directory and to place a configuration file there.
An example mcabberrc was installed as part of the documentation.
To create a new mcabberrc based on the example mcabberrc, execute the
following commands:
mkdir -p ~/.mcabber
bzcat /usr/share/doc/mcabber*/mcabberrc.example.bz2 > ~/.mcabber/mcabberrc
Then edit ~/.mcabber/mcabberrc with your favorite editor.
See the CONFIGURATION FILE and FILES sections of the mcabber
manual page (section 1) for more information.
MCabber supports PGP encryption of messages. See README_PGP.txt for details.
Check out /usr/share/mcabber/ for contributed themes and event scripts.

@ -0,0 +1,99 @@
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit flag-o-matic readme.gentoo-r1
DESCRIPTION="A small Jabber console client with various features, like MUC, SSL, PGP"
HOMEPAGE="http://mcabber.com/"
if [[ "${PV}" == 9999 ]]; then
inherit mercurial
EHG_REPO_URI="https://bitbucket.org/McKael/mcabber"
EHG_CHECKOUT_DIR="${WORKDIR}"
EHG_BOOTSTRAP="autogen.sh"
S="${WORKDIR}/${PN}"
else
SRC_URI="http://mcabber.com/files/${P}.tar.bz2"
KEYWORDS="~alpha ~amd64 ~arm ~mips ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
fi
LICENSE="GPL-2"
SLOT="0"
IUSE="aspell crypt idn otr spell ssl vim-syntax"
LANGS="cs de fr it nl pl ru uk"
# localized help versions are installed only, when L10N var is set
for i in ${LANGS}; do
IUSE="${IUSE} l10n_${i}"
done;
RDEPEND="crypt? ( >=app-crypt/gpgme-1.0.0 )
otr? ( >=net-libs/libotr-3.1.0 )
aspell? ( app-text/aspell )
vim-syntax? ( || ( app-editors/vim app-editors/gvim ) )
idn? ( net-dns/libidn:= )
spell? ( app-text/enchant )
dev-libs/glib:2
net-libs/libnsl:0=
sys-libs/ncurses:0=
>=net-libs/loudmouth-1.4.3-r1[ssl?]"
DEPEND="${RDEPEND}
virtual/pkgconfig"
DOCS=( AUTHORS ChangeLog NEWS README TODO mcabberrc.example doc/README_PGP.txt )
pkg_setup() {
if use aspell && use spell; then
ewarn "NOTE: You have both USE flags 'aspell' and 'spell' enabled, enchant (USE flag 'spell') will be preferred."
fi
}
src_configure() {
econf \
--enable-modules \
$(use_enable crypt gpgme) \
$(use_enable otr) \
$(use_enable aspell) \
$(use_enable spell enchant) \
$(use_with idn libidn)
}
src_install() {
default
# clean unneeded language documentation
for i in ${LANGS}; do
use l10n_${i} || rm -rf "${ED}"/usr/share/${PN}/help/${i}
done
# contrib themes
insinto /usr/share/${PN}/themes
doins "${S}"/contrib/themes/*
# contrib generic scripts
exeinto /usr/share/${PN}/scripts
doexe "${S}"/contrib/*.{pl,py}
# contrib event scripts
exeinto /usr/share/${PN}/scripts/events
doexe "${S}"/contrib/events/*
if use vim-syntax; then
cd contrib/vim/ || die
insinto /usr/share/vim/vimfiles/syntax
doins mcabber_log-syntax.vim
insinto /usr/share/vim/vimfiles/ftdetect
doins mcabber_log-ftdetect.vim
fi
readme.gentoo_create_doc
}
pkg_postinst() {
readme.gentoo_print_elog
}

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

Loading…
Cancel
Save