Sync with portage [Tue Feb 18 09:14:04 MSK 2020].

develop 1591
root 4 years ago
parent 560029e06f
commit bab808ff2a

Binary file not shown.

Binary file not shown.

@ -1,4 +1,3 @@
DIST ansible-2.9.2.tar.gz 14157188 BLAKE2B 4c1207bd43f7797d8d9cb1d4612e866eebbf8c19ee060cf1eb7daa68415be5d7718c79d756454648e66a13434eacba6a07c8de31c4ec4b12e0474563d8844e46 SHA512 522dd84af9493ceafd95ff0fc806a671f3d1f10d0ca074ef41875eb966d39e64b834e0b98a35d81d9d9d96efef8069db604c8080ce8cbb1ce2e8b13bf5c30a6a
DIST ansible-2.9.3.tar.gz 14170666 BLAKE2B bb27d249e2390888ee3c28fdb48c1ceff346d2903089c70b451f793742238498aed7c33be056cce9790f44f5cdb74b5020b6decf4f1242904bd9c8f7b5077ea0 SHA512 02cfa2c7c43506dc602e92aed66c920243222b82bc4852f1a4d786cd3ff26fe17eda18d35ac7301cd9bf26366df9b18776e2a27e8d54fc92c3128f52ec7f58e8
DIST ansible-2.9.4.tar.gz 14170264 BLAKE2B e230837360d29df460906d118b3c2ebb9a9dc1ac2a4427809a16716e67a79db8e737ed1beca757bd8a75b631c8cb6c26e58b1caeaaeb613731d63031f1e4e34e SHA512 21020548100fc31b59d4ee1b461f2a14359f2f18752d431cd041eb987c8c8b308f1aa1687461a9b3f5a086485b77b3a38c8f006b942cc24cb2157b45e6582822
DIST ansible-2.9.5.tar.gz 14186885 BLAKE2B c64fb384ab55c5b9cca753319fba911b8a40d634b59998f2e4c65ccafaa536788f3ac8c18a45a4b0d322ecca9b7fa2c580311a35a202ad70c2de2157ab04bfaf SHA512 cd2ce807b3136e2c02856339ea910b0a5cae8ca946da804ed7d3ec5725d3eff0fe5b4bd8527b2a17d6f3109e16859d52045b50f2ffd21169b30768e65b813407

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

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

@ -13,7 +13,7 @@ SRC_URI="https://github.com/hughsie/${MY_PN}/archive/v${PV}.tar.gz -> ${P}.tar.g
LICENSE="LGPL-2.1"
SLOT="0/1"
KEYWORDS="~amd64 ~arm ~ppc64 ~x86"
KEYWORDS="amd64 ~arm ~ppc64 x86"
IUSE=""
BDEPEND="

@ -1,4 +1,2 @@
DIST puppet-agent_6.11.1-1stretch_amd64.deb 19948710 BLAKE2B 256588922cfacb1d8146cd1142c43d893a55dfb67d7f70ca311df6178e7f9a82a0702d8306e0575d3f817e53c091fd3010027512cb4ce95956bdfa968372cc21 SHA512 90c39d55a8761185f82c9ac106d696ae48a170679e6043b6b3db32254e918b1b9c1b32c4e9721e5751189f84f002415f21a627daa22738a8c1ae3cb5df514eb3
DIST puppet-agent_6.11.1-1stretch_i386.deb 20327410 BLAKE2B c2a105139df97395f54bb54d7ac971d914dcd3b69614dca55fe443d9fe5360118b899610a6d2d85b96b8b45715864df608d0783a3aabad3a2ae5555a0d510a2e SHA512 5d1173534beb53325d3c7c2fd500a7bd82a389fa8cbc9e867f6acbb6c2647190339d3b096e8a054aff268f27c5bd7de65c371a474b9c8263e8fa36bab75452bd
DIST puppet-agent_6.12.0-1stretch_amd64.deb 20011636 BLAKE2B f83b795f07771d70220cac71d9b6d8ac7270a20fd5b78471ccef1c8ff802af3c035477f7741e775b10bc609d016a6e9fb79b199987e34b7d4f9a427c4adcd39f SHA512 dda8fa45b961d4a775da7eb128887eee3ceb9887d1062bc2fc748f6055811600162dfb2c4fbf87e401ad404813d2de0cc58ce7aade0aa23af637bb3707896126
DIST puppet-agent_6.12.0-1stretch_i386.deb 20369446 BLAKE2B f01e39a1b307657569084e2ade1d41f17eefaa2048035f635437159e4373386c6413fa71756594d4a8748ffa0bbbdc2c54c72e696a390380bc9c57721ef010b3 SHA512 fc58e5ea22bd3dd36278db37e46d20809e284db5645ab680fb2c461ee9e4f9e635550f924278905ec13a8f9a71fbf604959e8522e4c0da52709c42f309a04921

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

@ -1,79 +0,0 @@
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit eutils systemd unpacker user
DESCRIPTION="general puppet client utils along with hiera and facter"
HOMEPAGE="https://puppetlabs.com/"
SRC_BASE="http://apt.puppetlabs.com/pool/stretch/puppet/${PN:0:1}/${PN}/${PN}_${PV}-1stretch"
SRC_URI="
amd64? ( ${SRC_BASE}_amd64.deb )
x86? ( ${SRC_BASE}_i386.deb )"
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="amd64 x86"
IUSE="puppetdb selinux"
RESTRICT="strip"
CDEPEND="!app-admin/augeas
!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/pxp-agent
# logrotate.d
insinto /etc/logrotate.d
doins etc/logrotate.d/pxp-agent
# puppet itself
insinto /etc/puppetlabs
doins -r etc/puppetlabs/*
# logdir for systemd
dodir var/log/puppetlabs/puppet/
fperms 0750 var/log/puppetlabs/puppet/
# the rest
insinto /opt
dodir opt/puppetlabs/puppet/cache
doins -r opt/*
fperms 0750 /opt/puppetlabs/puppet/cache
# init
newinitd "${FILESDIR}/puppet.initd" puppet
systemd_dounit lib/systemd/system/puppet.service
systemd_dounit lib/systemd/system/pxp-agent.service
systemd_newtmpfilesd "${FILESDIR}/puppet-agent.conf.tmpfilesd" puppet-agent.conf
# symlinks
chmod 0755 -R "${D}/opt/puppetlabs/puppet/bin/"
chmod 0755 "${D}//opt/puppetlabs/puppet/lib/virt-what/virt-what-cpuid-helper"
dosym ../../opt/puppetlabs/bin/facter /usr/bin/facter
dosym ../../opt/puppetlabs/bin/hiera /usr/bin/hiera
dosym ../../opt/puppetlabs/bin/puppet /usr/bin/puppet
dosym ../../opt/puppetlabs/puppet/bin/virt-what /usr/bin/virt-what
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,3 @@
DIST puppet-4.10.12.tar.gz 3022218 BLAKE2B 03757857868b1544078ae5e40d6e438631c788f1b01a3e62ba90e477b754601d2c085228e084363ff20ee39728b02ebe8ca83e17f7c79dddae1c3968aef4e320 SHA512 ff7accf70b1d4de7282cf3b41246151c49c4758a41ace56a470e4723749638027011cf170747e66fa5812280e1612e754e12d92dd35fa6c93171f7187bb9cfa2
DIST puppet-5.5.17.tar.gz 3090402 BLAKE2B 7722ec4196ee766c29eddd7dc73539a4a5a0e4cc781a84af25210488328b5ae01178ca64e8eef14152cbeca06dc8fe145b5e39ce6a120d7689fc32cbbbe16f9f SHA512 95c6cd836a9f732ccfe2d8b83096e79c32428c43390c0826663f896ca1388e1fe3b55d93a5a7548831e95de85247db717866c36786d591e207341c734d70168b
DIST puppet-5.5.18.tar.gz 2984835 BLAKE2B d5a1d023d3d26e04ccc81efa772131c06fc7ace8ec59c7efa97bddb775bb492d3256290824a87d54df5c28862cbba98c58cf41bb4a0c27a4128701652c06eee0 SHA512 86f210ee783ca36340b22463cd4ac237d8dc1c6a35526530af0696bb3f0373b0b22f690d3e3f8e31655ea182a33eb60b66b5826bd6c4d1b0059a8e46152416e6
DIST puppet-6.10.1.tar.gz 2809383 BLAKE2B 1589dcfa7d73b81ab7fbc3fca4b2fe956f5d240d11583c484262d5243e4713bb4aa9cd5c655e9566468050ab2e5c0ec0cc720e3ff9088add0744e02147b4e3bb SHA512 211c9837eb4a77a54bf09811a1a84709eef06f17e0c5c9c598d01bce2e183e69974709ad4dfb8f5fecd7433c1ff52757aa699c623155d1a0742f2e07eaf2ec56
DIST puppet-6.11.1.tar.gz 2816525 BLAKE2B c4b188d5bf76b70a2748b86df78f1ca6ab99951cbc3a16377d3f2d38e165bc78ef8e5648cb09264a25ae81ac4d379b9323b1f2bbdea6679292c2cf38cabee662 SHA512 f44196206331448651e0ff0e865b09c6ccbb19115edeba4c58c8a29aa35e7d76676d5a3cb35c51cd511a44115c9c9434f1f90d5cbb0a5551a4004741d305c879
DIST puppet-6.12.0.tar.gz 2825392 BLAKE2B fdb7007ca337654f5ee89cd6f3beae300c3eb952570eaf1aa9baad407b84b418916e42aed63855bbb250f1d367be12f98261df54253f6438d33950134ef01cce SHA512 bcb77699f4a4a058ea0fa47ee2b449f19053e3ae859e3e30c65a57ad65fc052a4f05d7a932b9cc4b9974b36dc343ac482258ad8d5a44a151362df474b82c11fe

@ -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/lib/puppet/provider/package/portage.rb
+++ b/lib/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

@ -1,18 +0,0 @@
--- spec/unit/network/http/api/indirected_routes_spec.rb 2016-10-11 13:24:09.500955469 -0500
+++ spec/unit/network/http/api/indirected_routes_spec.rb.new 2016-10-11 13:24:00.501700977 -0500
@@ -139,15 +139,6 @@
indirection, _, _, _ = handler.uri2indirection("GET", uri_escaped, params)
end
- it "should not pass through an environment to check_authorization and fail if the environment is unknown" do
- handler.expects(:check_authorization).with(anything,
- anything,
- Not(has_entry(:environment)))
- expect(lambda { handler.uri2indirection("GET",
- "#{master_url_prefix}/node/bar",
- {:environment => 'bogus'}) }).to raise_error(not_found_error)
- end
-
it "should not URI unescape the indirection key as passed through to a call to check_authorization" do
handler.expects(:check_authorization).with(anything,
anything,

@ -1,40 +0,0 @@
#!/sbin/openrc-run
# Copyright 1999-2010 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
depend() {
need localmount net
use dns logger puppetmaster netmount nfsmount
}
checkconfig() {
if [ ! -d "${PUPPET_PID_DIR}" ] ; then
eerror "Please make sure PUPPET_PID_DIR is defined and points to a existing directory"
return 1
fi
return 0
}
start() {
checkconfig || return $?
local options=""
[ -n "${PUPPET_EXTRA_OPTS}" ] && options="${options} ${PUPPET_EXTRA_OPTS}"
ebegin "Starting puppet"
start-stop-daemon --start --quiet \
--pidfile "${PUPPET_PID_DIR}/agent.pid" \
--exec /usr/bin/puppetd -- ${options}
eend $? "Failed to start puppet"
}
stop() {
ebegin "Stopping puppet"
start-stop-daemon --stop --quiet \
--pidfile "${PUPPET_PID_DIR}/agent.pid"
local ret=$?
eend ${ret} "Failed to stop puppet"
rm -f "${PUPPET_PID_DIR}/agent.pid"
return ${ret}
}

@ -1,37 +0,0 @@
#!/sbin/openrc-run
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
if [ "${SVCNAME}" = "puppetmaster" ] ; then
PUPPETMASTER_PID="master"
else
PUPPETMASTER_PID="${SVCNAME#*.}"
fi
PUPPETMASTER_PID_DIR="${PUPPETMASTER_PID_DIR:-/var/run/puppet}"
pidfile="${PUPPETMASTER_PID_DIR}/${PUPPETMASTER_PID}.pid"
PUPPET_LOG_DIR="/var/log/puppet"
command_args="master --pidfile ${pidfile} ${PUPPETMASTER_EXTRA_OPTS}"
if [ -n "${PUPPETMASTER_PORT}" ] ; then
command_args="${command_args} --masterport ${PUPPETMASTER_PORT}"
fi
command="/usr/bin/puppet"
extra_started_commands="reload"
depend() {
need localmount
use dns logger slapd netmount nfsmount
}
start_pre() {
checkpath --directory --owner puppet:puppet "${PUPPETMASTER_PID_DIR}"
checkpath --directory --owner puppet:puppet --mode 750 ${PUPPET_LOG_DIR}
checkpath --file --owner puppet:puppet --mode 640 "${PUPPET_LOG_DIR}/masterhttp.log"
}
reload() {
ebegin "Reloading ${SVCNAME}"
start-stop-daemon --signal HUP --pidfile "${pidfile}"
eend $? "Failed to stop ${SVCNAME}"
}

@ -35,6 +35,5 @@
<flag name="diff">Enable diff support</flag>
<flag name="rrdtool">Enable rrdtool support</flag>
<flag name="shadow">Enable shadow support</flag>
<flag name="experimental">Add patches for things in testing</flag>
</use>
</pkgmetadata>

@ -1,177 +0,0 @@
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="6"
USE_RUBY="ruby23 ruby24"
#RUBY_FAKEGEM_RECIPE_TEST="rspec3"
RUBY_FAKEGEM_EXTRAINSTALL="locales"
inherit eutils user ruby-fakegem versionator
DESCRIPTION="A system automation and configuration management software."
HOMEPAGE="https://puppet.com/"
SRC_URI="http://downloads.puppetlabs.com/puppet/${P}.tar.gz"
LICENSE="Apache-2.0 GPL-2"
SLOT="0"
KEYWORDS="amd64 ~arm ~hppa ~ppc ~ppc64 x86"
IUSE="augeas diff doc emacs experimental ldap rrdtool selinux shadow sqlite vim-syntax xemacs"
RESTRICT="test"
ruby_add_rdepend "
>=dev-ruby/gettext-setup-0.10:0
>=dev-ruby/hiera-2.0
>=dev-ruby/locale-2.1
>=dev-ruby/rgen-0.6.5
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"
# ruby_add_bdepend "
# test? (
# dev-ruby/mocha:0.14
# =dev-ruby/rack-1*
# dev-ruby/rspec-its
# dev-ruby/rspec-collection_matchers
# >=dev-ruby/vcr-2.9:2
# >=dev-ruby/webmock-1.24:0
# )"
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 )"
SITEFILE="50${PN}-mode-gentoo.el"
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"
if use experimental; then
epatch "${FILESDIR}/43e2c935252b995134ce353e5e6312cf77aea480.patch"
fi
# Use working version of mocha
sed -i -e '1igem "mocha", "~>0.14.0"; gem "rack", "~>1.0"' spec/spec_helper.rb || die
# 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 specs that need further investigation.
sed -i -e '/should resolve external facts/,/^ end/ s:^:#:' \
spec/integration/indirector/facts/facter_spec.rb || die
sed -i -e "/describe 'cfacter'/,/^ end/ s:^:#:" spec/unit/defaults_spec.rb || die
rm -f spec/unit/indirector/ldap_spec.rb \
spec/unit/parser/functions/create_resources_spec.rb || die
# Avoid specs that rely on tools from other OSs
rm -f spec/unit/provider/package/{dnf,tdnf,yum}_spec.rb \
spec/unit/provider/user/directoryservice_spec.rb || die
# Avoid specs that depend on hiera-eyaml to avoid circular
# dependencies
rm -f spec/unit/functions/lookup_spec.rb || die
# Avoid specs that fail due to an unpackaged file
sed -i -e '/when loading pp resource types using auto loading/,/^ end/ s:^:#:' spec/unit/pops/loaders/loaders_spec.rb || die
}
all_ruby_compile() {
:
}
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
local v
for v in ${REPLACING_VERSIONS}; do
if [ "$(get_major_version $v)" = "3" ]; then
elog
elog "If you're upgrading from 3.x then please move everything in /etc/puppet to"
elog "/etc/puppetlabs/puppet"
elog "Also, puppet now uses config directories for modules and manifests."
elog "See https://docs.puppetlabs.com/puppet/4.0/reference/upgrade_agent.html"
elog "and https://docs.puppetlabs.com/puppet/4.0/reference/upgrade_server.html"
elog "for more information."
elog
fi
done
}

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

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

@ -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,2 +1 @@
DIST puppetdb-6.7.2.tar.gz 43566885 BLAKE2B b90376330cb084c2c14154d647ce334673c526e6f9b9d4430e0be4b420132a0c4c518a0c8ed98b15cfacc6716044f78c384123f3ff87ea1463736a352744b840 SHA512 2e32f7a5a3daf37d74082aa3a66c26fa23643e456dbf80cd16815687f289093c96defc9bfa10c3502f9a9f9a7674cef83b838163f11339c13d4b12c82f8e0664
DIST puppetdb-6.8.0.tar.gz 44216021 BLAKE2B ac5641ee0bceef3948d108c725e2ff53d76e897cafd75c9bc6978462f4b157c3d30146ce2f57fd2aa7610b2defc4e074c168847d8aba5501cde16ee0ab7b5aaf SHA512 2dd01058edbd8a4bb3f4717dc518e58ac57139ccc0651e8e39c721a32651bd932fe4ec747c7da23561ab33d7d4d7ddc448fe9b05734d1562f799e183c5e236d5

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

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

@ -1,2 +1 @@
DIST puppetserver-6.7.2.tar.gz 59340246 BLAKE2B 635312cb2ea2f638617c10e05b9e1e8efa58caf3da8786155f44081f040a7b167d923e2266c57b43d855feb4bfd5280da85b5100a188e7f0f7dfde847f5abc45 SHA512 e2015554648dc861d513b5778c274e2b09c4ea2ebd53141d152a5bba1046ac6ef163083296c176008a7606581b8368df99aa72907e0edd59e687aa9991209fb5
DIST puppetserver-6.8.0.tar.gz 59370389 BLAKE2B 227512d3a054980867730882459bff32559f8baa5fb0c807a14fcc827b8f41fc1da2cceab6bdbd6162bb4e6e6e4312f5d47d478f6887a978c359c6a4225d663d SHA512 9e4d0ea1aad1209342151cfcfd304e4a296df0e95fefde46d4e4a28a9da62422194492d430c3492cc717a7c872ee0f448a89a40fe1e1cb565f865fc0aca7089b

@ -1,135 +0,0 @@
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit multilib systemd 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
insinto /etc/puppetlabs/puppetserver
doins ext/config/logback.xml
doins ext/config/request-logging.xml
insinto /etc/puppetlabs/puppetserver/services.d
doins ext/system-config/services.d/bootstrap.cfg
doins ext/config/services.d/ca.cfg
insinto /etc/puppetlabs/puppetserver/conf.d
doins ext/config/conf.d/puppetserver.conf
doins ext/config/conf.d/auth.conf
doins ext/config/conf.d/global.conf
doins ext/config/conf.d/web-routes.conf
doins ext/config/conf.d/metrics.conf
doins ext/config/conf.d/webserver.conf
insopts -m0755
insinto /opt/puppetlabs/server/apps/puppetserver/scripts
doins install.sh
insinto /opt/puppetlabs/server/apps/puppetserver/cli/apps
doins ext/cli/ca
doins ext/cli/irb
doins ext/cli/foreground
doins ext/cli/gem
doins ext/cli/ruby
doins ext/cli/reload
doins ext/cli/start
doins ext/cli/stop
insinto /opt/puppetlabs/server/apps/puppetserver/cli
doins ext/cli_defaults/cli-defaults.sh
insinto /opt/puppetlabs/server/apps/puppetserver/bin
doins ext/bin/puppetserver
insopts -m0644
dodir /opt/puppetlabs/server/bin
dosym ../apps/puppetserver/bin/puppetserver /opt/puppetlabs/server/bin/puppetserver
dodir /opt/puppetlabs/bin
dosym ../server/apps/puppetserver/bin/puppetserver /opt/puppetlabs/bin/puppetserver
dosym ../../opt/puppetlabs/server/apps/puppetserver/bin/puppetserver /usr/bin/puppetserver
dodir /opt/puppetlabs/server/apps/puppetserver/config/services.d
# other sys stuff
dodir /etc/puppetlabs/code
# needed for systemd
dodir /var/log/puppetlabs/puppetserver
dodir /etc/puppetlabs/puppet/ssl
fowners -R puppet:puppet /etc/puppetlabs/puppet/ssl
fperms -R 771 /etc/puppetlabs/puppet/ssl
# systemd type things
insinto /etc/systemd/system/puppetserver.service.d/
systemd_dounit ext/redhat/puppetserver.service
insinto /etc/default
newins ext/default puppetserver
# normal init type tasks
dosym ../default/puppetserver /etc/conf.d/puppetserver
newinitd "${FILESDIR}/puppetserver.init-r1" puppetserver
# misc
insinto /etc/logrotate.d
newins ext/puppetserver.logrotate.conf puppetserver
# cleanup
dodir /opt/puppetlabs/server/data/puppetserver/jruby-gems
fowners -R puppet:puppet /opt/puppetlabs/server/data
fperms -R 775 /opt/puppetlabs/server/data/puppetserver
fperms -R 700 /var/log/puppetlabs/puppetserver
insinto /opt/puppetlabs/server/data
doins ext/build-scripts/jruby-gem-list.txt
doins ext/build-scripts/mri-gem-list-no-dependencies.txt
insopts -m 0644
insinto /usr/lib/tmpfiles.d
newins ext/puppetserver.tmpfiles.conf puppetserver.conf
}
pkg_postinst() {
elog "to install you may want to run the following:"
elog
elog "puppet config set --section master vardir /opt/puppetlabs/server/data/puppetserver"
elog "puppet config set --section master logdir /var/log/puppetlabs/puppetserver"
elog "puppet config set --section master rundir /run/puppetlabs/puppetserver"
elog "puppet config set --section master pidfile /run/puppetlabs/puppetserver/puppetserver.pid"
elog "puppet config set --section master codedir /etc/puppetlabs/code"
elog
elog "# install puppetserver gems"
elog "cd /opt/puppetlabs/server/apps/puppetserver"
elog "echo \"jruby-puppet: { gem-home: ${DESTDIR}/opt/puppetlabs/server/data/puppetserver/vendored-jruby-gems }\" > jruby.conf"
elog "while read LINE; do"
elog " java -cp puppet-server-release.jar:jruby-9k.jar clojure.main -m puppetlabs.puppetserver.cli.gem --config jruby.conf -- install --no-ri --no-rdoc \$(echo \$LINE |awk '{print \$1}') --version \$(echo \$LINE |awk '{print \$2}')"
elog "done < /opt/puppetlabs/server/data/jruby-gem-list.txt"
elog "echo \"jruby-puppet: { gem-home: ${DESTDIR}/opt/puppetlabs/puppet/lib/ruby/vendor_gems }\" > jruby.conf"
elog "while read LINE; do"
elog " java -cp puppet-server-release.jar:jruby-9k.jar clojure.main -m puppetlabs.puppetserver.cli.gem --config jruby.conf -- install --no-ri --no-rdoc \$(echo \$LINE |awk '{print \$1}') --version \$(echo \$LINE |awk '{print \$2}')"
elog "done < /opt/puppetlabs/server/data/mri-gem-list-no-dependencies.txt"
}

@ -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.

@ -10,7 +10,7 @@ SRC_URI="https://github.com/google/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="BSD"
SLOT="0/${PV%%.*}"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc x86 ~amd64-linux ~x86-linux"
KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ia64 ~mips ppc ~ppc64 s390 ~sparc x86 ~amd64-linux ~x86-linux"
IUSE="test"
RESTRICT="!test? ( test )"

Binary file not shown.

@ -1,5 +1,2 @@
DIST certbot-0.39.0.tar.gz 1350312 BLAKE2B 5f21c45d25754cb1ed0ad92e8d03637928a274637de09903509c7e78c40fd197e95cfa1f3effecef938d6ab8369dc6811714ddb5a93a806048e0998d1032e4f9 SHA512 17ab17a5f74e3fba58b1a8b9afe0c3656c7b2a5ea3585edb05ad84e36250c6a8d4d28bd692bc97d033c95eb0bbeff4eb84981ae0006e36d55846cd38373b86a0
DIST certbot-0.40.1.tar.gz 1353347 BLAKE2B 86b3df4047101d00d5f17cf3a1a11e5800e850f5a9f736507ad373e552c27e9e4a3a17695f5a817d191cad383fc17336214fc1d8de7a99354ce4d2f5c6e728c1 SHA512 e5517a20cf26efba850728b3f81db5d6c3c5570b0a1c8eeeec9d4a4401ac04bcf44c6a2f1c248bf6e0b1be4a21b54f6168ccd11dc766304805f13b4cb16336b3
DIST certbot-1.0.0.tar.gz 1336032 BLAKE2B ca26cfd3d9f802b09eaf387225f24fbb01385f81dfa661dfb5acbd97982a6fc773c56abf6b3f99db7f2b0cdc8c5a7175d264714592858b38217e444d4e1d2b4b SHA512 649ddd3d9305e166ef36de4e4e48b1171d5f369d9d60c026ab37a03e7b221cd815e93e69460662e6436b56cec076005582457e9d45499114306ad808a2497912
DIST certbot-1.1.0.tar.gz 1346768 BLAKE2B 5c86edec3102ce0eb822465458ec86cbc98eb5e76c3c582d8a72ecab91e709f16e7a1576c684bc04bfd0c70918f34e84e0b3b264f949a1fb9bf9503fa9d6b179 SHA512 905b21a8a50b4df4eb92b464d10dec094ba4e7f5eaf3ad3dae1704a794952df6b51873ca919246a9b6698fd652a7c264efc742617ba0a25757ab99397759c343
DIST certbot-1.2.0.tar.gz 1354262 BLAKE2B 1abdf4cb99ecdac6b9b8d2ebdd6897a3182a147f0175e2db4c6b0feaa3f6c615ee3146dd63627a83266c223456c5aba44b018be4059574d0209aec89065d9925 SHA512 ed52a31a71b3762b8cd217ea2784d9cb01f7c1a50cef3b7e0d99483ca3ab623b90ab7d4896674e0d1c06e2e8370c02162418d934de7d3048b0471416616146fe

@ -1,69 +0,0 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=(python{3_6,3_7})
if [[ ${PV} == 9999* ]]; then
EGIT_REPO_URI="https://github.com/certbot/certbot.git"
inherit git-r3
S=${WORKDIR}/${P}/${PN}
else
SRC_URI="https://github.com/certbot/certbot/archive/v${PV}.tar.gz -> certbot-${PV}.tar.gz"
KEYWORDS="amd64 ~arm ~arm64 ~ppc64 x86"
S=${WORKDIR}/certbot-${PV}/acme
fi
inherit distutils-r1
DESCRIPTION="An implementation of the ACME protocol"
HOMEPAGE="https://github.com/certbot/certbot https://letsencrypt.org/"
LICENSE="Apache-2.0"
SLOT="0"
IUSE="doc test"
RESTRICT="!test? ( test )"
RDEPEND="
>=dev-python/cryptography-1.3.4[${PYTHON_USEDEP}]
>=dev-python/idna-2.0.0[${PYTHON_USEDEP}]
>=dev-python/josepy-1.1.0[${PYTHON_USEDEP}]
dev-python/mock[${PYTHON_USEDEP}]
>=dev-python/pyopenssl-0.13.1[${PYTHON_USEDEP}]
dev-python/pyrfc3339[${PYTHON_USEDEP}]
dev-python/pytz[${PYTHON_USEDEP}]
>=dev-python/requests-2.10[${PYTHON_USEDEP}]
>=dev-python/requests-toolbelt-0.3.0[${PYTHON_USEDEP}]
>=dev-python/six-1.9.0[${PYTHON_USEDEP}]
"
DEPEND="
doc? (
dev-python/sphinx[${PYTHON_USEDEP}]
dev-python/sphinx_rtd_theme[${PYTHON_USEDEP}]
)
test? (
${RDEPEND}
dev-python/nose[${PYTHON_USEDEP}]
dev-python/pytest[${PYTHON_USEDEP}]
dev-python/pytest-xdist[${PYTHON_USEDEP}]
)
>=dev-python/setuptools-1.0[${PYTHON_USEDEP}]
"
src_compile() {
python_foreach_impl run_in_build_dir default
if use doc ; then
cd docs || die
sphinx-build -b html -d _build/doctrees . _build/html
fi
}
python_test() {
nosetests -w ${PN} || die
}
python_install_all() {
use doc && local HTML_DOCS=( docs/_build/html/. )
distutils-r1_python_install_all
}

@ -1,69 +0,0 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=(python{3_6,3_7})
if [[ ${PV} == 9999* ]]; then
EGIT_REPO_URI="https://github.com/certbot/certbot.git"
inherit git-r3
S=${WORKDIR}/${P}/${PN}
else
SRC_URI="https://github.com/certbot/certbot/archive/v${PV}.tar.gz -> certbot-${PV}.tar.gz"
KEYWORDS="amd64 ~arm ~arm64 ~ppc64 x86"
S=${WORKDIR}/certbot-${PV}/acme
fi
inherit distutils-r1
DESCRIPTION="An implementation of the ACME protocol"
HOMEPAGE="https://github.com/certbot/certbot https://letsencrypt.org/"
LICENSE="Apache-2.0"
SLOT="0"
IUSE="doc test"
RESTRICT="!test? ( test )"
RDEPEND="
>=dev-python/cryptography-1.3.4[${PYTHON_USEDEP}]
>=dev-python/idna-2.0.0[${PYTHON_USEDEP}]
>=dev-python/josepy-1.1.0[${PYTHON_USEDEP}]
dev-python/mock[${PYTHON_USEDEP}]
>=dev-python/pyopenssl-0.13.1[${PYTHON_USEDEP}]
dev-python/pyrfc3339[${PYTHON_USEDEP}]
dev-python/pytz[${PYTHON_USEDEP}]
>=dev-python/requests-2.10[${PYTHON_USEDEP}]
>=dev-python/requests-toolbelt-0.3.0[${PYTHON_USEDEP}]
>=dev-python/six-1.9.0[${PYTHON_USEDEP}]
"
DEPEND="
doc? (
dev-python/sphinx[${PYTHON_USEDEP}]
dev-python/sphinx_rtd_theme[${PYTHON_USEDEP}]
)
test? (
${RDEPEND}
dev-python/nose[${PYTHON_USEDEP}]
dev-python/pytest[${PYTHON_USEDEP}]
dev-python/pytest-xdist[${PYTHON_USEDEP}]
)
>=dev-python/setuptools-1.0[${PYTHON_USEDEP}]
"
src_compile() {
python_foreach_impl run_in_build_dir default
if use doc ; then
cd docs || die
sphinx-build -b html -d _build/doctrees . _build/html
fi
}
python_test() {
nosetests -w ${PN} || die
}
python_install_all() {
use doc && local HTML_DOCS=( docs/_build/html/. )
distutils-r1_python_install_all
}

@ -1,69 +0,0 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=(python{3_6,3_7})
if [[ ${PV} == 9999* ]]; then
EGIT_REPO_URI="https://github.com/certbot/certbot.git"
inherit git-r3
S=${WORKDIR}/${P}/${PN}
else
SRC_URI="https://github.com/certbot/certbot/archive/v${PV}.tar.gz -> certbot-${PV}.tar.gz"
KEYWORDS="amd64 ~arm ~arm64 ~ppc64 x86"
S=${WORKDIR}/certbot-${PV}/acme
fi
inherit distutils-r1
DESCRIPTION="An implementation of the ACME protocol"
HOMEPAGE="https://github.com/certbot/certbot https://letsencrypt.org/"
LICENSE="Apache-2.0"
SLOT="0"
IUSE="doc test"
RESTRICT="!test? ( test )"
RDEPEND="
>=dev-python/cryptography-1.3.4[${PYTHON_USEDEP}]
>=dev-python/idna-2.0.0[${PYTHON_USEDEP}]
>=dev-python/josepy-1.1.0[${PYTHON_USEDEP}]
dev-python/mock[${PYTHON_USEDEP}]
>=dev-python/pyopenssl-0.13.1[${PYTHON_USEDEP}]
dev-python/pyrfc3339[${PYTHON_USEDEP}]
dev-python/pytz[${PYTHON_USEDEP}]
>=dev-python/requests-2.10[${PYTHON_USEDEP}]
>=dev-python/requests-toolbelt-0.3.0[${PYTHON_USEDEP}]
>=dev-python/six-1.9.0[${PYTHON_USEDEP}]
"
DEPEND="
doc? (
dev-python/sphinx[${PYTHON_USEDEP}]
dev-python/sphinx_rtd_theme[${PYTHON_USEDEP}]
)
test? (
${RDEPEND}
dev-python/nose[${PYTHON_USEDEP}]
dev-python/pytest[${PYTHON_USEDEP}]
dev-python/pytest-xdist[${PYTHON_USEDEP}]
)
>=dev-python/setuptools-1.0[${PYTHON_USEDEP}]
"
src_compile() {
python_foreach_impl run_in_build_dir default
if use doc ; then
cd docs || die
sphinx-build -b html -d _build/doctrees . _build/html
fi
}
python_test() {
nosetests -w ${PN} || die
}
python_install_all() {
use doc && local HTML_DOCS=( docs/_build/html/. )
distutils-r1_python_install_all
}

@ -10,7 +10,7 @@ if [[ ${PV} == 9999* ]]; then
S=${WORKDIR}/${P}/${PN}
else
SRC_URI="https://github.com/certbot/certbot/archive/v${PV}.tar.gz -> certbot-${PV}.tar.gz"
KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
KEYWORDS="amd64 ~arm ~arm64 ~ppc64 x86"
S=${WORKDIR}/certbot-${PV}/acme
fi

@ -1,3 +1,2 @@
DIST certbot-1.0.0.tar.gz 1336032 BLAKE2B ca26cfd3d9f802b09eaf387225f24fbb01385f81dfa661dfb5acbd97982a6fc773c56abf6b3f99db7f2b0cdc8c5a7175d264714592858b38217e444d4e1d2b4b SHA512 649ddd3d9305e166ef36de4e4e48b1171d5f369d9d60c026ab37a03e7b221cd815e93e69460662e6436b56cec076005582457e9d45499114306ad808a2497912
DIST certbot-1.1.0.tar.gz 1346768 BLAKE2B 5c86edec3102ce0eb822465458ec86cbc98eb5e76c3c582d8a72ecab91e709f16e7a1576c684bc04bfd0c70918f34e84e0b3b264f949a1fb9bf9503fa9d6b179 SHA512 905b21a8a50b4df4eb92b464d10dec094ba4e7f5eaf3ad3dae1704a794952df6b51873ca919246a9b6698fd652a7c264efc742617ba0a25757ab99397759c343
DIST certbot-1.2.0.tar.gz 1354262 BLAKE2B 1abdf4cb99ecdac6b9b8d2ebdd6897a3182a147f0175e2db4c6b0feaa3f6c615ee3146dd63627a83266c223456c5aba44b018be4059574d0209aec89065d9925 SHA512 ed52a31a71b3762b8cd217ea2784d9cb01f7c1a50cef3b7e0d99483ca3ab623b90ab7d4896674e0d1c06e2e8370c02162418d934de7d3048b0471416616146fe

@ -1,39 +0,0 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=(python{3_6,3_7})
if [[ ${PV} == 9999* ]]; then
EGIT_REPO_URI="https://github.com/certbot/certbot.git"
inherit git-r3
S=${WORKDIR}/${P}/${PN}
else
SRC_URI="https://github.com/${PN%-apache}/${PN%-apache}/archive/v${PV}.tar.gz -> ${PN%-apache}-${PV}.tar.gz"
KEYWORDS="amd64 ~arm64 x86"
S=${WORKDIR}/${PN%-apache}-${PV}/${PN}
fi
inherit distutils-r1
DESCRIPTION="Apache plugin for certbot (Let's Encrypt Client)"
HOMEPAGE="https://github.com/certbot/certbot https://letsencrypt.org/"
LICENSE="Apache-2.0"
SLOT="0"
IUSE="test"
RESTRICT="!test? ( test )"
RDEPEND=">=app-crypt/acme-0.29.0[${PYTHON_USEDEP}]
>=app-crypt/certbot-0.39.0[${PYTHON_USEDEP}]
dev-python/mock[${PYTHON_USEDEP}]
dev-python/python-augeas[${PYTHON_USEDEP}]
dev-python/zope-component[${PYTHON_USEDEP}]
dev-python/zope-interface[${PYTHON_USEDEP}]"
DEPEND="test? ( ${RDEPEND}
dev-python/nose[${PYTHON_USEDEP}] )
dev-python/setuptools[${PYTHON_USEDEP}]"
python_test() {
nosetests || die
}

@ -10,7 +10,7 @@ if [[ ${PV} == 9999* ]]; then
S=${WORKDIR}/${P}/${PN}
else
SRC_URI="https://github.com/${PN%-apache}/${PN%-apache}/archive/v${PV}.tar.gz -> ${PN%-apache}-${PV}.tar.gz"
KEYWORDS="~amd64 ~arm64 ~x86"
KEYWORDS="amd64 ~arm64 x86"
S=${WORKDIR}/${PN%-apache}-${PV}/${PN}
fi

@ -1,8 +1,8 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
PYTHON_COMPAT=(python3_6)
EAPI=7
PYTHON_COMPAT=(python3_6 python3_7)
if [[ ${PV} == 9999* ]]; then
EGIT_REPO_URI="https://github.com/certbot/certbot.git"
@ -25,9 +25,9 @@ IUSE=""
CDEPEND=">=dev-python/setuptools-1.0[${PYTHON_USEDEP}]"
RDEPEND="${CDEPEND}
=app-crypt/certbot-${PV%.*}*[${PYTHON_USEDEP}]
=app-crypt/acme-${PV%.*}*[${PYTHON_USEDEP}]
>=app-crypt/certbot-0.31.0[${PYTHON_USEDEP}]
>=app-crypt/acme-0.39.0[${PYTHON_USEDEP}]
dev-python/mock[${PYTHON_USEDEP}]
dev-python/zope-interface[${PYTHON_USEDEP}]
dev-python/dns-lexicon[${PYTHON_USEDEP}]"
>=dev-python/dns-lexicon-2.2.1[${PYTHON_USEDEP}]"
DEPEND="${CDEPEND}"

@ -1,3 +1,2 @@
DIST certbot-1.0.0.tar.gz 1336032 BLAKE2B ca26cfd3d9f802b09eaf387225f24fbb01385f81dfa661dfb5acbd97982a6fc773c56abf6b3f99db7f2b0cdc8c5a7175d264714592858b38217e444d4e1d2b4b SHA512 649ddd3d9305e166ef36de4e4e48b1171d5f369d9d60c026ab37a03e7b221cd815e93e69460662e6436b56cec076005582457e9d45499114306ad808a2497912
DIST certbot-1.1.0.tar.gz 1346768 BLAKE2B 5c86edec3102ce0eb822465458ec86cbc98eb5e76c3c582d8a72ecab91e709f16e7a1576c684bc04bfd0c70918f34e84e0b3b264f949a1fb9bf9503fa9d6b179 SHA512 905b21a8a50b4df4eb92b464d10dec094ba4e7f5eaf3ad3dae1704a794952df6b51873ca919246a9b6698fd652a7c264efc742617ba0a25757ab99397759c343
DIST certbot-1.2.0.tar.gz 1354262 BLAKE2B 1abdf4cb99ecdac6b9b8d2ebdd6897a3182a147f0175e2db4c6b0feaa3f6c615ee3146dd63627a83266c223456c5aba44b018be4059574d0209aec89065d9925 SHA512 ed52a31a71b3762b8cd217ea2784d9cb01f7c1a50cef3b7e0d99483ca3ab623b90ab7d4896674e0d1c06e2e8370c02162418d934de7d3048b0471416616146fe

@ -1,34 +0,0 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=(python{3_6,3_7})
if [[ ${PV} == 9999* ]]; then
EGIT_REPO_URI="https://github.com/certbot/certbot.git"
inherit git-r3
S=${WORKDIR}/${P}/${PN}
else
SRC_URI="https://github.com/${PN%-nginx}/${PN%-nginx}/archive/v${PV}.tar.gz -> ${PN%-nginx}-${PV}.tar.gz"
KEYWORDS="amd64 ~arm ~arm64 x86"
S=${WORKDIR}/${PN%-nginx}-${PV}/${PN}
fi
inherit distutils-r1
DESCRIPTION="Nginx plugin for certbot (Let's Encrypt Client)"
HOMEPAGE="https://github.com/certbot/certbot https://letsencrypt.org/"
LICENSE="Apache-2.0"
SLOT="0"
IUSE=""
CDEPEND="dev-python/setuptools[${PYTHON_USEDEP}]"
RDEPEND="${CDEPEND}
>=app-crypt/acme-1.0.0[${PYTHON_USEDEP}]
>=app-crypt/certbot-1.0.0[${PYTHON_USEDEP}]
dev-python/mock[${PYTHON_USEDEP}]
dev-python/pyopenssl[${PYTHON_USEDEP}]
>=dev-python/pyparsing-1.5.5[${PYTHON_USEDEP}]
dev-python/zope-interface[${PYTHON_USEDEP}]"
DEPEND="${CDEPEND}"

@ -10,7 +10,7 @@ if [[ ${PV} == 9999* ]]; then
S=${WORKDIR}/${P}/${PN}
else
SRC_URI="https://github.com/${PN%-nginx}/${PN%-nginx}/archive/v${PV}.tar.gz -> ${PN%-nginx}-${PV}.tar.gz"
KEYWORDS="~amd64 ~arm ~arm64 ~x86"
KEYWORDS="amd64 ~arm ~arm64 x86"
S=${WORKDIR}/${PN%-nginx}-${PV}/${PN}
fi

@ -1,5 +1,2 @@
DIST certbot-0.39.0.tar.gz 1350312 BLAKE2B 5f21c45d25754cb1ed0ad92e8d03637928a274637de09903509c7e78c40fd197e95cfa1f3effecef938d6ab8369dc6811714ddb5a93a806048e0998d1032e4f9 SHA512 17ab17a5f74e3fba58b1a8b9afe0c3656c7b2a5ea3585edb05ad84e36250c6a8d4d28bd692bc97d033c95eb0bbeff4eb84981ae0006e36d55846cd38373b86a0
DIST certbot-0.40.1.tar.gz 1353347 BLAKE2B 86b3df4047101d00d5f17cf3a1a11e5800e850f5a9f736507ad373e552c27e9e4a3a17695f5a817d191cad383fc17336214fc1d8de7a99354ce4d2f5c6e728c1 SHA512 e5517a20cf26efba850728b3f81db5d6c3c5570b0a1c8eeeec9d4a4401ac04bcf44c6a2f1c248bf6e0b1be4a21b54f6168ccd11dc766304805f13b4cb16336b3
DIST certbot-1.0.0.tar.gz 1336032 BLAKE2B ca26cfd3d9f802b09eaf387225f24fbb01385f81dfa661dfb5acbd97982a6fc773c56abf6b3f99db7f2b0cdc8c5a7175d264714592858b38217e444d4e1d2b4b SHA512 649ddd3d9305e166ef36de4e4e48b1171d5f369d9d60c026ab37a03e7b221cd815e93e69460662e6436b56cec076005582457e9d45499114306ad808a2497912
DIST certbot-1.1.0.tar.gz 1346768 BLAKE2B 5c86edec3102ce0eb822465458ec86cbc98eb5e76c3c582d8a72ecab91e709f16e7a1576c684bc04bfd0c70918f34e84e0b3b264f949a1fb9bf9503fa9d6b179 SHA512 905b21a8a50b4df4eb92b464d10dec094ba4e7f5eaf3ad3dae1704a794952df6b51873ca919246a9b6698fd652a7c264efc742617ba0a25757ab99397759c343
DIST certbot-1.2.0.tar.gz 1354262 BLAKE2B 1abdf4cb99ecdac6b9b8d2ebdd6897a3182a147f0175e2db4c6b0feaa3f6c615ee3146dd63627a83266c223456c5aba44b018be4059574d0209aec89065d9925 SHA512 ed52a31a71b3762b8cd217ea2784d9cb01f7c1a50cef3b7e0d99483ca3ab623b90ab7d4896674e0d1c06e2e8370c02162418d934de7d3048b0471416616146fe

@ -1,50 +0,0 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=(python{3_6,3_7})
if [[ ${PV} == 9999* ]]; then
EGIT_REPO_URI="https://github.com/certbot/certbot.git"
inherit git-r3
else
SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
KEYWORDS="amd64 ~arm ~arm64 ~ppc64 x86"
fi
inherit distutils-r1
DESCRIPTION="Let's encrypt client to automate deployment of X.509 certificates"
HOMEPAGE="https://github.com/certbot/certbot https://letsencrypt.org/"
LICENSE="Apache-2.0"
SLOT="0"
IUSE="test"
RESTRICT="!test? ( test )"
CDEPEND="dev-python/setuptools[${PYTHON_USEDEP}]"
RDEPEND="
${CDEPEND}
>=app-crypt/acme-0.29.0[${PYTHON_USEDEP}]
>=dev-python/configargparse-0.9.3[${PYTHON_USEDEP}]
dev-python/configobj[${PYTHON_USEDEP}]
>=dev-python/cryptography-1.2.3[${PYTHON_USEDEP}]
>=dev-python/distro-1.0.1[${PYTHON_USEDEP}]
>=dev-python/josepy-1.1.0[${PYTHON_USEDEP}]
dev-python/mock[${PYTHON_USEDEP}]
>=dev-python/parsedatetime-1.3[${PYTHON_USEDEP}]
dev-python/pyrfc3339[${PYTHON_USEDEP}]
dev-python/pytz[${PYTHON_USEDEP}]
dev-python/zope-component[${PYTHON_USEDEP}]
dev-python/zope-interface[${PYTHON_USEDEP}]"
DEPEND="
${CDEPEND}
test? (
dev-python/pytest[${PYTHON_USEDEP}]
)"
python_test() {
# acme is not installed, removing it here is fine, the dir just confuses tests
rm -R acme
pytest -vv ${PN} || die
}

@ -1,50 +0,0 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=(python{3_6,3_7})
if [[ ${PV} == 9999* ]]; then
EGIT_REPO_URI="https://github.com/certbot/certbot.git"
inherit git-r3
else
SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
KEYWORDS="amd64 ~arm ~arm64 ~ppc64 x86"
fi
inherit distutils-r1
DESCRIPTION="Let's encrypt client to automate deployment of X.509 certificates"
HOMEPAGE="https://github.com/certbot/certbot https://letsencrypt.org/"
LICENSE="Apache-2.0"
SLOT="0"
IUSE="test"
RESTRICT="!test? ( test )"
CDEPEND="dev-python/setuptools[${PYTHON_USEDEP}]"
RDEPEND="
${CDEPEND}
>=app-crypt/acme-0.40.0[${PYTHON_USEDEP}]
>=dev-python/configargparse-0.9.3[${PYTHON_USEDEP}]
dev-python/configobj[${PYTHON_USEDEP}]
>=dev-python/cryptography-1.2.3[${PYTHON_USEDEP}]
>=dev-python/distro-1.0.1[${PYTHON_USEDEP}]
>=dev-python/josepy-1.1.0[${PYTHON_USEDEP}]
dev-python/mock[${PYTHON_USEDEP}]
>=dev-python/parsedatetime-1.3[${PYTHON_USEDEP}]
dev-python/pyrfc3339[${PYTHON_USEDEP}]
dev-python/pytz[${PYTHON_USEDEP}]
dev-python/zope-component[${PYTHON_USEDEP}]
dev-python/zope-interface[${PYTHON_USEDEP}]"
DEPEND="
${CDEPEND}
test? (
dev-python/pytest[${PYTHON_USEDEP}]
)"
python_test() {
# acme is not installed, removing it here is fine, the dir just confuses tests
rm -R acme
pytest -vv ${PN} || die
}

@ -1,51 +0,0 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=(python{3_6,3_7})
if [[ ${PV} == 9999* ]]; then
EGIT_REPO_URI="https://github.com/certbot/certbot.git"
inherit git-r3
else
SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
KEYWORDS="amd64 ~arm ~arm64 ~ppc64 x86"
fi
S=${WORKDIR}/${P}/${PN}
inherit distutils-r1
DESCRIPTION="Let's encrypt client to automate deployment of X.509 certificates"
HOMEPAGE="https://github.com/certbot/certbot https://letsencrypt.org/"
LICENSE="Apache-2.0"
SLOT="0"
IUSE="test"
RESTRICT="!test? ( test )"
CDEPEND="dev-python/setuptools[${PYTHON_USEDEP}]"
RDEPEND="
${CDEPEND}
>=app-crypt/acme-0.40.0[${PYTHON_USEDEP}]
>=dev-python/configargparse-0.9.3[${PYTHON_USEDEP}]
dev-python/configobj[${PYTHON_USEDEP}]
>=dev-python/cryptography-1.2.3[${PYTHON_USEDEP}]
>=dev-python/distro-1.0.1[${PYTHON_USEDEP}]
>=dev-python/josepy-1.1.0[${PYTHON_USEDEP}]
dev-python/mock[${PYTHON_USEDEP}]
>=dev-python/parsedatetime-1.3[${PYTHON_USEDEP}]
dev-python/pyrfc3339[${PYTHON_USEDEP}]
dev-python/pytz[${PYTHON_USEDEP}]
dev-python/zope-component[${PYTHON_USEDEP}]
dev-python/zope-interface[${PYTHON_USEDEP}]"
DEPEND="
${CDEPEND}
test? (
dev-python/pytest[${PYTHON_USEDEP}]
)"
python_test() {
# acme is not installed, removing it here is fine, the dir just confuses tests
rm -R ../acme
pytest -vv ${PN} || die
}

@ -9,7 +9,7 @@ if [[ ${PV} == 9999* ]]; then
inherit git-r3
else
SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
KEYWORDS="amd64 ~arm ~arm64 ~ppc64 x86"
fi
S=${WORKDIR}/${P}/${PN}

Binary file not shown.

@ -4,7 +4,7 @@
EAPI=7
WANT_AUTOMAKE="none"
inherit autotools elisp-common flag-o-matic multilib readme.gentoo-r1 toolchain-funcs
inherit autotools elisp-common flag-o-matic readme.gentoo-r1 toolchain-funcs
DESCRIPTION="The extensible, customizable, self-documenting real-time display editor"
HOMEPAGE="https://www.gnu.org/software/emacs/"

@ -3,7 +3,7 @@
EAPI=7
inherit autotools elisp-common eutils flag-o-matic multilib readme.gentoo-r1
inherit autotools elisp-common eutils flag-o-matic readme.gentoo-r1
DESCRIPTION="The extensible, customizable, self-documenting real-time display editor"
HOMEPAGE="https://www.gnu.org/software/emacs/"

@ -3,7 +3,7 @@
EAPI=7
inherit autotools elisp-common flag-o-matic multilib readme.gentoo-r1
inherit autotools elisp-common flag-o-matic readme.gentoo-r1
DESCRIPTION="The extensible, customizable, self-documenting real-time display editor"
HOMEPAGE="https://www.gnu.org/software/emacs/"

@ -3,7 +3,7 @@
EAPI=7
inherit autotools elisp-common flag-o-matic multilib readme.gentoo-r1
inherit autotools elisp-common flag-o-matic readme.gentoo-r1
DESCRIPTION="The extensible, customizable, self-documenting real-time display editor"
HOMEPAGE="https://www.gnu.org/software/emacs/"

@ -3,7 +3,7 @@
EAPI=7
inherit autotools elisp-common flag-o-matic multilib readme.gentoo-r1
inherit autotools elisp-common flag-o-matic readme.gentoo-r1
DESCRIPTION="The extensible, customizable, self-documenting real-time display editor"
HOMEPAGE="https://www.gnu.org/software/emacs/"

@ -3,7 +3,7 @@
EAPI=7
inherit autotools elisp-common flag-o-matic multilib readme.gentoo-r1
inherit autotools elisp-common flag-o-matic readme.gentoo-r1
if [[ ${PV##*.} = 9999 ]]; then
inherit git-r3

@ -3,7 +3,7 @@
EAPI=7
inherit autotools elisp-common flag-o-matic multilib readme.gentoo-r1
inherit autotools elisp-common flag-o-matic readme.gentoo-r1
if [[ ${PV##*.} = 9999 ]]; then
inherit git-r3

@ -3,7 +3,7 @@
EAPI=7
inherit autotools elisp-common flag-o-matic multilib readme.gentoo-r1
inherit autotools elisp-common flag-o-matic readme.gentoo-r1
if [[ ${PV##*.} = 9999 ]]; then
inherit git-r3

Binary file not shown.

@ -5,8 +5,10 @@ DIST wine-4.20.tar.xz 22314856 BLAKE2B c3734029583bf17929a92475f4ad3ac97df632d96
DIST wine-4.21.tar.xz 22395844 BLAKE2B 1b9c1fd8f4a1ff0527b4d4a02b1dfffa4f6887f2f261b7d4b5afa12e65a8ea18f544c91397cfc71039db7736d33cd0219aaab82cc4564ecd0cb9c74a2e39d6e5 SHA512 f962e47577db2de4e74022b8d51e81e30a004f98b37d8eee5889334271f013123e3ff53e5ac1416c2dd93ec90bee8a2d300b3842c20124df99ef067ac5c72f53
DIST wine-5.0.tar.xz 22469428 BLAKE2B d26938e707545d31ed932c67eaaa9fd137e42daa6facadeaea2897797ec816658edc1b89c649e0cb5c453ca53ebea5d7156fdd188f1afe2a55ca7834e012e276 SHA512 681de951804c3dd3ae8c677a0ea52d172b04cac58594698b191cd972b25899cd2030d01a25fc2ad2eb6b99976a30319d2bd5ba8b7ff98b1a8b43832fa6514b83
DIST wine-5.1.tar.xz 22500180 BLAKE2B bf77f24e4be2402afd083c28624e41761d63c1248c314870e0c5a6879fb1393992fe9d99bcafcea0a91599500d745a3ad199e31e857590707f026f1cf740ad31 SHA512 b842b533884f15a8fb71373258671d74aee997d9ed9ee0fb36f945cd2006b494f6cc6c91a8ca47e0ea5b0b39b108f2c4f155918823a7ddf3cd44b4e26ede9171
DIST wine-5.2.tar.xz 22837712 BLAKE2B ee9d4d4dd6c0669d1585cc6988d933dbc7aa5277a0f13e965dd9eecb621e475d33a832b316e37f1372a965efe517efafa9f857a38d9bf081026d221db96b7a0d SHA512 57fa66885c3b5f43e51324e24b8524f663ad67ff15b464ac7d58096d5921f523a59ef5f1dc1ea7aa65fa10d64b7cd832f421c1b773c72bc312d8544a61c33f8f
DIST wine-staging-4.19.tar.gz 9908545 BLAKE2B 36674228de808ac9d1f3f66e9274fd9de68173a6a1acca405eb08836a8a787e4e78465442ef6769c02f8fd2e20c3f059d59a1408ed3a8add8a91a68efd07b7bc SHA512 a47ae16dd39797b54011f942fe7e722897af7ddc0bed2bf2e39c46aecf60a02769f7287609c63b4c0c3f1c8e40172e0cdf3bdb53562a07d7a2b7ac53e570dbdc
DIST wine-staging-4.20.tar.gz 9899451 BLAKE2B a90a71f8f68874822c7326eb13cd26e66dfce8afc6d8fc60f1cf86a20c1a8074178bbc618b540a4bac5168fb0242a0fe46c9167bab3e587462d78b706eaad15c SHA512 2ce4f6fa83fc275c83bc7f7bbd4b1a4ca65f7e55e16af40958635b8b2efc2b174baa79ed576ed09c4c13b572756fb6262f19281e5b72797c7e0f1f6c4dd1a4ee
DIST wine-staging-4.21.tar.gz 9904765 BLAKE2B 43f15cd96c7f5ca9cf5aad120c73a3aa534dce33797a4a4e707bea668cfc93e077ad112055dc428263775a30c6447620eed8650a9828ac487bf36c6490a7b73d SHA512 0c6c32f86d252f827ebb8d5df2b046c4f0a49aa7c0ca47939b33844786e561d5f676db1e199ec3cd9969757985f66b865099061f5e77234c3aabd4fd29d3a063
DIST wine-staging-5.0.tar.gz 9942644 BLAKE2B e5d040ae903c6e982c961db1c7c30cfbf7245f00cd0df7c10ceb182c5227f5a555f1a41b24eca982a12b4981edee937cfa5079e6c6fec378d475fca3057cbb7c SHA512 36849fc2c848db9949982619c4544b56468012a1f086cc92eb3e2027377c58c3c24daf508149e0e34a70e6b283edfd80833dc2f346c75f0be69f1fb2c5999cd6
DIST wine-staging-5.1.tar.gz 9924758 BLAKE2B 44a5710c126a1ea0a21dbac21826d2513191d79cb96f4a22adc5e6823d28b214d81af8f536914d4434402b5e2b70f89a25e2049cf12cbbde3f31ae2bc3bafab5 SHA512 ebb9bf0a0a3c7f108fff8b32ca79124d1da410fbfb320ad3298f3d92fabeb9ca81de6a4fefac344948a70c49771ffa3f0dc30de2ee6d6f61d158ed87a206a14e
DIST wine-staging-5.2.tar.gz 9898002 BLAKE2B f4dc43223cf89e6c76fc7898a98acdc9eb3d4a8e8279a38135f155d9a3fe6a2f7bbc52ece5c4a07cf801caa91c10e40f172271b442356e52a59c31a8a82db3c3 SHA512 dd2066db1eb4d424579bdf8d25f476eae0b86a6bea7b1f7ff2a21d7bf0209b4ef00d9c0ed29a7cab50c5dea4684acb5d342ebf02554b16fd0938a03e607f6270

@ -0,0 +1,617 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
PLOCALES="ar ast bg ca cs da de el en en_US eo es fa fi fr he hi hr hu it ja ko lt ml nb_NO nl or pa pl pt_BR pt_PT rm ro ru si sk sl sr_RS@cyrillic sr_RS@latin sv ta te th tr uk wa zh_CN zh_TW"
PLOCALE_BACKUP="en"
inherit autotools eapi7-ver estack eutils flag-o-matic gnome2-utils l10n multilib multilib-minimal pax-utils toolchain-funcs virtualx xdg-utils
MY_PN="${PN%%-*}"
MY_P="${MY_PN}-${PV}"
if [[ ${PV} == "9999" ]] ; then
EGIT_REPO_URI="https://source.winehq.org/git/wine.git"
EGIT_BRANCH="master"
inherit git-r3
SRC_URI=""
#KEYWORDS=""
else
MAJOR_V=$(ver_cut 1)
SRC_URI="https://dl.winehq.org/wine/source/${MAJOR_V}.x/${MY_P}.tar.xz"
KEYWORDS="-* ~amd64 ~x86"
fi
S="${WORKDIR}/${MY_P}"
STAGING_P="wine-staging-${PV}"
STAGING_DIR="${WORKDIR}/${STAGING_P}"
GWP_V="20191222"
PATCHDIR="${WORKDIR}/gentoo-wine-patches"
DESCRIPTION="Free implementation of Windows(tm) on Unix, with Wine-Staging patchset"
HOMEPAGE="https://www.winehq.org/"
SRC_URI="${SRC_URI}
https://dev.gentoo.org/~sarnex/distfiles/wine/gentoo-wine-patches-${GWP_V}.tar.xz
"
if [[ ${PV} == "9999" ]] ; then
STAGING_EGIT_REPO_URI="https://github.com/wine-staging/wine-staging.git"
else
SRC_URI="${SRC_URI}
staging? ( https://github.com/wine-staging/wine-staging/archive/v${PV}.tar.gz -> ${STAGING_P}.tar.gz )"
fi
LICENSE="LGPL-2.1"
SLOT="${PV}"
IUSE="+abi_x86_32 +abi_x86_64 +alsa capi cups custom-cflags dos elibc_glibc +faudio +fontconfig +gecko gphoto2 gsm gssapi gstreamer +jpeg kerberos kernel_FreeBSD +lcms ldap +mono mp3 ncurses netapi nls odbc openal opencl +opengl osmesa oss +perl pcap pipelight +png prelink pulseaudio +realtime +run-exes samba scanner sdl selinux +ssl staging test themes +threads +truetype udev +udisks v4l vaapi vkd3d vulkan +X +xcomposite xinerama +xml"
REQUIRED_USE="|| ( abi_x86_32 abi_x86_64 )
X? ( truetype )
elibc_glibc? ( threads )
osmesa? ( opengl )
pipelight? ( staging )
test? ( abi_x86_32 )
themes? ( staging )
vaapi? ( staging )
vkd3d? ( vulkan )" # osmesa-opengl #286560 # X-truetype #551124
# FIXME: the test suite is unsuitable for us; many tests require net access
# or fail due to Xvfb's opengl limitations.
RESTRICT="test"
COMMON_DEPEND="
X? (
x11-libs/libXcursor[${MULTILIB_USEDEP}]
x11-libs/libXext[${MULTILIB_USEDEP}]
x11-libs/libXfixes[${MULTILIB_USEDEP}]
x11-libs/libXrandr[${MULTILIB_USEDEP}]
x11-libs/libXi[${MULTILIB_USEDEP}]
x11-libs/libXxf86vm[${MULTILIB_USEDEP}]
)
alsa? ( media-libs/alsa-lib[${MULTILIB_USEDEP}] )
capi? ( net-libs/libcapi[${MULTILIB_USEDEP}] )
cups? ( net-print/cups:=[${MULTILIB_USEDEP}] )
faudio? ( app-emulation/faudio:=[${MULTILIB_USEDEP}] )
fontconfig? ( media-libs/fontconfig:=[${MULTILIB_USEDEP}] )
gphoto2? ( media-libs/libgphoto2:=[${MULTILIB_USEDEP}] )
gsm? ( media-sound/gsm:=[${MULTILIB_USEDEP}] )
gssapi? ( virtual/krb5[${MULTILIB_USEDEP}] )
gstreamer? (
media-libs/gstreamer:1.0[${MULTILIB_USEDEP}]
media-plugins/gst-plugins-meta:1.0[${MULTILIB_USEDEP}]
)
jpeg? ( virtual/jpeg:0=[${MULTILIB_USEDEP}] )
kerberos? ( virtual/krb5:0=[${MULTILIB_USEDEP}] )
lcms? ( media-libs/lcms:2=[${MULTILIB_USEDEP}] )
ldap? ( net-nds/openldap:=[${MULTILIB_USEDEP}] )
mp3? ( >=media-sound/mpg123-1.5.0[${MULTILIB_USEDEP}] )
ncurses? ( >=sys-libs/ncurses-5.2:0=[${MULTILIB_USEDEP}] )
netapi? ( net-fs/samba[netapi(+),${MULTILIB_USEDEP}] )
nls? ( sys-devel/gettext[${MULTILIB_USEDEP}] )
odbc? ( dev-db/unixODBC:=[${MULTILIB_USEDEP}] )
openal? ( media-libs/openal:=[${MULTILIB_USEDEP}] )
opencl? ( virtual/opencl[${MULTILIB_USEDEP}] )
opengl? (
virtual/glu[${MULTILIB_USEDEP}]
virtual/opengl[${MULTILIB_USEDEP}]
)
osmesa? ( >=media-libs/mesa-13[osmesa,${MULTILIB_USEDEP}] )
pcap? ( net-libs/libpcap[${MULTILIB_USEDEP}] )
png? ( media-libs/libpng:0=[${MULTILIB_USEDEP}] )
pulseaudio? ( media-sound/pulseaudio[${MULTILIB_USEDEP}] )
scanner? ( media-gfx/sane-backends:=[${MULTILIB_USEDEP}] )
sdl? ( media-libs/libsdl2:=[haptic,joystick,${MULTILIB_USEDEP}] )
ssl? ( net-libs/gnutls:=[${MULTILIB_USEDEP}] )
staging? ( sys-apps/attr[${MULTILIB_USEDEP}] )
themes? (
dev-libs/glib:2[${MULTILIB_USEDEP}]
x11-libs/cairo[${MULTILIB_USEDEP}]
x11-libs/gtk+:3[${MULTILIB_USEDEP}]
)
truetype? ( >=media-libs/freetype-2.0.0[${MULTILIB_USEDEP}] )
udev? ( virtual/libudev:=[${MULTILIB_USEDEP}] )
udisks? ( sys-apps/dbus[${MULTILIB_USEDEP}] )
v4l? ( media-libs/libv4l[${MULTILIB_USEDEP}] )
vaapi? ( x11-libs/libva[X,${MULTILIB_USEDEP}] )
vkd3d? ( app-emulation/vkd3d[${MULTILIB_USEDEP}] )
vulkan? ( media-libs/vulkan-loader[${MULTILIB_USEDEP}] )
xcomposite? ( x11-libs/libXcomposite[${MULTILIB_USEDEP}] )
xinerama? ( x11-libs/libXinerama[${MULTILIB_USEDEP}] )
xml? (
dev-libs/libxml2[${MULTILIB_USEDEP}]
dev-libs/libxslt[${MULTILIB_USEDEP}]
)"
RDEPEND="${COMMON_DEPEND}
app-emulation/wine-desktop-common
>app-eselect/eselect-wine-0.3
!app-emulation/wine:0
dos? ( >=games-emulation/dosbox-0.74_p20160629 )
gecko? ( app-emulation/wine-gecko:2.47.1[abi_x86_32?,abi_x86_64?] )
mono? ( app-emulation/wine-mono:4.9.4 )
perl? (
dev-lang/perl
dev-perl/XML-Simple
)
pulseaudio? (
realtime? ( sys-auth/rtkit )
)
samba? ( >=net-fs/samba-3.0.25[winbind] )
selinux? ( sec-policy/selinux-wine )
udisks? ( sys-fs/udisks:2 )"
# tools/make_requests requires perl
DEPEND="${COMMON_DEPEND}
sys-devel/flex
>=sys-kernel/linux-headers-2.6
virtual/pkgconfig
virtual/yacc
X? ( x11-base/xorg-proto )
prelink? ( sys-devel/prelink )
staging? (
dev-lang/perl
dev-perl/XML-Simple
)
xinerama? ( x11-base/xorg-proto )"
# These use a non-standard "Wine" category, which is provided by
# /etc/xdg/applications-merged/wine.menu
QA_DESKTOP_FILE="usr/share/applications/wine-browsedrive.desktop
usr/share/applications/wine-notepad.desktop
usr/share/applications/wine-uninstaller.desktop
usr/share/applications/wine-winecfg.desktop"
PATCHES=(
"${PATCHDIR}/patches/${MY_PN}-5.0-winegcc.patch" #260726
"${PATCHDIR}/patches/${MY_PN}-4.7-multilib-portage.patch" #395615
"${PATCHDIR}/patches/${MY_PN}-5.0-memset-O3.patch" #480508
"${PATCHDIR}/patches/${MY_PN}-2.0-multislot-apploader.patch" #310611
)
PATCHES_BIN=()
# https://bugs.gentoo.org/show_bug.cgi?id=635222
if [[ ${#PATCHES_BIN[@]} -ge 1 ]] || [[ ${PV} == 9999 ]]; then
DEPEND+=" dev-util/patchbin"
fi
wine_compiler_check() {
[[ ${MERGE_TYPE} = "binary" ]] && return 0
# GCC-specific bugs
if tc-is-gcc; then
# bug #549768
if use abi_x86_64 && [[ $(gcc-major-version) = 5 && $(gcc-minor-version) -le 2 ]]; then
ebegin "Checking for gcc-5 ms_abi compiler bug"
$(tc-getCC) -O2 "${PATCHDIR}/files/pr66838.c" -o "${T}"/pr66838 || die
# Run in subshell to prevent "Aborted" message
( "${T}"/pr66838 || false ) >/dev/null 2>&1
if ! eend $?; then
eerror "64-bit wine cannot be built with gcc-5.1 or initial patchset of 5.2.0"
eerror "due to compiler bugs; please re-emerge the latest gcc-5.2.x ebuild,"
eerror "or use gcc-config to select a different compiler version."
eerror "See https://bugs.gentoo.org/549768"
eerror
return 1
fi
fi
# bug #574044
if use abi_x86_64 && [[ $(gcc-major-version) = 5 && $(gcc-minor-version) = 3 ]]; then
ebegin "Checking for gcc-5-3 stack realignment compiler bug"
# Compile in subshell to prevent "Aborted" message
( $(tc-getCC) -O2 -mincoming-stack-boundary=3 "${PATCHDIR}/files/pr69140.c" -o "${T}"/pr69140 ) >/dev/null 2>&1
if ! eend $?; then
eerror "Wine cannot be built with this version of gcc-5.3"
eerror "due to compiler bugs; please re-emerge the latest gcc-5.3.x ebuild,"
eerror "or use gcc-config to select a different compiler version."
eerror "See https://bugs.gentoo.org/574044"
eerror
return 1
fi
fi
fi
# Ensure compiler support
if use abi_x86_64; then
ebegin "Checking for 64-bit compiler with builtin_ms_va_list support"
# Compile in subshell to prevent "Aborted" message
( $(tc-getCC) -O2 "${PATCHDIR}/files/builtin_ms_va_list.c" -o "${T}"/builtin_ms_va_list >/dev/null 2>&1)
if ! eend $?; then
eerror "This version of $(tc-getCC) does not support builtin_ms_va_list, can't enable 64-bit wine"
eerror
eerror "You need gcc-4.4+ or clang 3.8+ to build 64-bit wine"
eerror
return 1
fi
fi
}
wine_build_environment_check() {
[[ ${MERGE_TYPE} = "binary" ]] && return 0
if use abi_x86_64; then
if tc-is-gcc && [[ $(gcc-major-version) -lt 4 || ( $(gcc-major-version) -eq 4 && $(gcc-minor-version) -lt 4 ) ]]; then
eerror "You need gcc-4.4+ to compile 64-bit wine"
die
elif tc-is-clang && [[ $(clang-major-version) -lt 3 || ( $(clang-major-version) -eq 3 && $(clang-minor-version) -lt 8 ) ]]; then
eerror "You need clang-3.8+ to compile 64-bit wine"
die
fi
fi
if tc-is-gcc && [[ $(gcc-major-version) -eq 5 && $(gcc-minor-version) -le 3 ]]; then
ewarn "GCC-5.0-5.3 suffered from compiler bugs and are no longer supported by"
ewarn "Gentoo's Toolchain Team. If your ebuild fails the compiler checks in"
ewarn "the configure phase, either update your compiler or switch to <5.0 || >=5.4"
fi
if tc-is-gcc && [[ $(gcc-major-version) -eq 5 && $(gcc-minor-version) -eq 4 ]]; then
if has "-march=i686" ${CFLAGS} && ! has "-mtune=generic" ${CFLAGS}; then
ewarn "Compilation can hang with CFLAGS=\"-march=i686\". You can temporarily work"
ewarn "around this by adding \"-mtune=generic\" to your CFLAGS for wine."
ewarn "See package.env in man 5 portage for more information on how to do this."
ewarn "See https://bugs.gentoo.org/show_bug.cgi?id=613128 for more details"
fi
fi
if use abi_x86_32 && use opencl && [[ "$(eselect opencl show 2> /dev/null)" == "intel" ]]; then
eerror "You cannot build wine with USE=opencl because intel-ocl-sdk is 64-bit only."
eerror "See https://bugs.gentoo.org/487864 for more details."
eerror
return 1
fi
}
wine_env_vcs_vars() {
local pn_live_var="${PN//[-+]/_}_LIVE_COMMIT"
local pn_live_val="${pn_live_var}"
eval pn_live_val='$'${pn_live_val}
if [[ ! -z ${pn_live_val} ]]; then
if use staging; then
eerror "Because of the multi-repo nature of ${MY_PN}, ${pn_live_var}"
eerror "cannot be used to set the commit. Instead, you may use the"
eerror "environment variables:"
eerror " EGIT_OVERRIDE_COMMIT_WINE"
eerror " EGIT_OVERRIDE_COMMIT_WINE_STAGING_WINE_STAGING"
eerror
return 1
fi
fi
if [[ ! -z ${EGIT_COMMIT} ]]; then
eerror "Commits must now be specified using the environment variables:"
eerror " EGIT_OVERRIDE_COMMIT_WINE"
eerror " EGIT_OVERRIDE_COMMIT_WINE_STAGING_WINE_STAGING"
eerror
return 1
fi
}
pkg_pretend() {
wine_build_environment_check || die
# Verify OSS support
if use oss && ! use kernel_FreeBSD; then
if ! has_version ">=media-sound/oss-4"; then
eerror "You cannot build wine with USE=oss without having support from a"
eerror "FreeBSD kernel or >=media-sound/oss-4 (only available through external repos)"
eerror
die
fi
fi
}
pkg_setup() {
wine_build_environment_check || die
wine_env_vcs_vars || die
WINE_VARIANT="${PN#wine}-${PV}"
WINE_VARIANT="${WINE_VARIANT#-}"
MY_PREFIX="${EPREFIX}/usr/lib/wine-${WINE_VARIANT}"
MY_DATAROOTDIR="${EPREFIX}/usr/share/wine-${WINE_VARIANT}"
MY_DATADIR="${MY_DATAROOTDIR}"
MY_DOCDIR="${EPREFIX}/usr/share/doc/${PF}"
MY_INCLUDEDIR="${EPREFIX}/usr/include/wine-${WINE_VARIANT}"
MY_LIBEXECDIR="${EPREFIX}/usr/libexec/wine-${WINE_VARIANT}"
MY_LOCALSTATEDIR="${EPREFIX}/var/wine-${WINE_VARIANT}"
MY_MANDIR="${MY_DATADIR}/man"
}
src_unpack() {
if [[ ${PV} == "9999" ]] ; then
EGIT_CHECKOUT_DIR="${S}" git-r3_src_unpack
if use staging; then
local CURRENT_WINE_COMMIT=${EGIT_VERSION}
EGIT_CHECKOUT_DIR="${STAGING_DIR}" EGIT_REPO_URI="${STAGING_EGIT_REPO_URI}" git-r3_src_unpack
local COMPAT_WINE_COMMIT=$("${STAGING_DIR}/patches/patchinstall.sh" --upstream-commit) || die
if [[ "${CURRENT_WINE_COMMIT}" != "${COMPAT_WINE_COMMIT}" ]]; then
einfo "The current Staging patchset is not guaranteed to apply on this WINE commit."
einfo "If src_prepare fails, try emerging with the env var WINE_COMMIT."
einfo "Example: EGIT_OVERRIDE_COMMIT_WINE=${COMPAT_WINE_COMMIT} emerge -1 wine"
fi
fi
fi
default
l10n_find_plocales_changes "${S}/po" "" ".po"
}
src_prepare() {
eapply_bin(){
local patch
for patch in ${PATCHES_BIN[@]}; do
patchbin --nogit < "${patch}" || die
done
}
local md5="$(md5sum server/protocol.def)"
if use staging; then
ewarn "Applying the Wine-Staging patchset. Any bug reports to the"
ewarn "Wine bugzilla should explicitly state that staging was used."
local STAGING_EXCLUDE=""
use pipelight || STAGING_EXCLUDE="${STAGING_EXCLUDE} -W Pipelight"
# Launch wine-staging patcher in a subshell, using eapply as a backend, and gitapply.sh as a backend for binary patches
ebegin "Running Wine-Staging patch installer"
(
set -- DESTDIR="${S}" --backend=eapply --no-autoconf --all ${STAGING_EXCLUDE}
cd "${STAGING_DIR}/patches"
source "${STAGING_DIR}/patches/patchinstall.sh"
)
eend $? || die "Failed to apply Wine-Staging patches"
fi
default
eapply_bin
eautoreconf
# Modification of the server protocol requires regenerating the server requests
if [[ "$(md5sum server/protocol.def)" != "${md5}" ]]; then
einfo "server/protocol.def was patched; running tools/make_requests"
tools/make_requests || die #432348
fi
sed -i '/^UPDATE_DESKTOP_DATABASE/s:=.*:=true:' tools/Makefile.in || die
if ! use run-exes; then
sed -i '/^MimeType/d' loader/wine.desktop || die #117785
fi
# Edit wine.desktop to work for specific variant
sed -e "/^Exec=/s/wine /wine-${WINE_VARIANT} /" -i loader/wine.desktop || die
# hi-res default icon, #472990, https://bugs.winehq.org/show_bug.cgi?id=24652
cp "${PATCHDIR}/files/oic_winlogo.ico" dlls/user32/resources/ || die
l10n_get_locales > po/LINGUAS || die # otherwise wine doesn't respect LINGUAS
# Fix manpage generation for locales #469418 and abi_x86_64 #617864
# Duplicate manpages input files for wine64
local f
for f in loader/*.man.in; do
cp ${f} ${f/wine/wine64} || die
done
# Add wine64 manpages to Makefile
if use abi_x86_64; then
sed -i "/wine.man.in/i \
\\\twine64.man.in \\\\" loader/Makefile.in || die
sed -i -E 's/(.*wine)(.*\.UTF-8\.man\.in.*)/&\
\164\2/' loader/Makefile.in || die
fi
rm_man_file(){
local file="${1}"
loc=${2}
sed -i "/${loc}\.UTF-8\.man\.in/d" "${file}" || die
}
while read f; do
l10n_for_each_disabled_locale_do rm_man_file "${f}"
done < <(find -name "Makefile.in" -exec grep -q "UTF-8.man.in" "{}" \; -print)
}
src_configure() {
wine_compiler_check || die
export LDCONFIG=/bin/true
use custom-cflags || strip-flags
multilib-minimal_src_configure
}
multilib_src_configure() {
local myconf=(
--prefix="${MY_PREFIX}"
--datarootdir="${MY_DATAROOTDIR}"
--datadir="${MY_DATADIR}"
--docdir="${MY_DOCDIR}"
--includedir="${MY_INCLUDEDIR}"
--libdir="${EPREFIX}/usr/$(get_libdir)/wine-${WINE_VARIANT}"
--libexecdir="${MY_LIBEXECDIR}"
--localstatedir="${MY_LOCALSTATEDIR}"
--mandir="${MY_MANDIR}"
--sysconfdir="${EPREFIX}/etc/wine"
$(use_with alsa)
$(use_with capi)
$(use_with lcms cms)
$(use_with cups)
$(use_with ncurses curses)
$(use_with udisks dbus)
$(use_with faudio)
$(use_with fontconfig)
$(use_with ssl gnutls)
$(use_enable gecko mshtml)
$(use_with gphoto2 gphoto)
$(use_with gsm)
$(use_with gssapi)
$(use_with gstreamer)
--without-hal
$(use_with jpeg)
$(use_with kerberos krb5)
$(use_with ldap)
--without-mingw # linux LDFLAGS leak in mingw32: bug #685172
$(use_enable mono mscoree)
$(use_with mp3 mpg123)
$(use_with netapi)
$(use_with nls gettext)
$(use_with openal)
$(use_with opencl)
$(use_with opengl)
$(use_with osmesa)
$(use_with oss)
$(use_with pcap)
$(use_with png)
$(use_with pulseaudio pulse)
$(use_with threads pthread)
$(use_with scanner sane)
$(use_with sdl)
$(use_enable test tests)
$(use_with truetype freetype)
$(use_with udev)
$(use_with v4l v4l2)
$(use_with vkd3d)
$(use_with vulkan)
$(use_with X x)
$(use_with X xfixes)
$(use_with xcomposite)
$(use_with xinerama)
$(use_with xml)
$(use_with xml xslt)
)
use staging && myconf+=(
--with-xattr
$(use_with themes gtk3)
$(use_with vaapi va)
)
local PKG_CONFIG AR RANLIB
# Avoid crossdev's i686-pc-linux-gnu-pkg-config if building wine32 on amd64; #472038
# set AR and RANLIB to make QA scripts happy; #483342
tc-export PKG_CONFIG AR RANLIB
if use amd64; then
if [[ ${ABI} == amd64 ]]; then
myconf+=( --enable-win64 )
else
myconf+=( --disable-win64 )
fi
# Note: using --with-wine64 results in problems with multilib.eclass
# CC/LD hackery. We're using separate tools instead.
fi
ECONF_SOURCE=${S} \
econf "${myconf[@]}"
emake depend
}
multilib_src_test() {
# FIXME: win32-only; wine64 tests fail with "could not find the Wine loader"
if [[ ${ABI} == x86 ]]; then
if [[ $(id -u) == 0 ]]; then
ewarn "Skipping tests since they cannot be run under the root user."
ewarn "To run the test ${MY_PN} suite, add userpriv to FEATURES in make.conf"
return
fi
WINEPREFIX="${T}/.wine-${ABI}" \
Xemake test
fi
}
multilib_src_install_all() {
local DOCS=( ANNOUNCE AUTHORS README )
add_locale_docs() {
local locale_doc="documentation/README.$1"
[[ ! -e ${locale_doc} ]] || DOCS+=( ${locale_doc} )
}
l10n_for_each_locale_do add_locale_docs
einstalldocs
prune_libtool_files --all
if ! use perl ; then # winedump calls function_grep.pl, and winemaker is a perl script
rm "${D%/}${MY_PREFIX}"/bin/{wine{dump,maker},function_grep.pl} \
"${D%/}${MY_MANDIR}"/man1/wine{dump,maker}.1 || die
fi
# Remove wineconsole if neither backend is installed #551124
if ! use X && ! use ncurses; then
rm "${D%/}${MY_PREFIX}"/bin/wineconsole* || die
rm "${D%/}${MY_MANDIR}"/man1/wineconsole* || die
rm_wineconsole() {
rm "${D%/}${MY_PREFIX}/$(get_libdir)"/wine/{,fakedlls/}wineconsole.exe* || die
}
multilib_foreach_abi rm_wineconsole
fi
use abi_x86_32 && pax-mark psmr "${D%/}${MY_PREFIX}"/bin/wine{,-preloader} #255055
use abi_x86_64 && pax-mark psmr "${D%/}${MY_PREFIX}"/bin/wine64{,-preloader}
# Avoid double prefix from dosym and make_wrapper
MY_PREFIX=${MY_PREFIX#${EPREFIX}}
if use abi_x86_64 && ! use abi_x86_32; then
dosym wine64 "${MY_PREFIX}"/bin/wine # 404331
dosym wine64-preloader "${MY_PREFIX}"/bin/wine-preloader
fi
# Failglob for binloops, shouldn't be necessary, but including to stay safe
eshopts_push -s failglob #615218
# Make wrappers for binaries for handling multiple variants
# Note: wrappers instead of symlinks because some are shell which use basename
local b
for b in "${ED%/}${MY_PREFIX}"/bin/*; do
make_wrapper "${b##*/}-${WINE_VARIANT}" "${MY_PREFIX}/bin/${b##*/}"
done
eshopts_pop
}
pkg_postinst() {
eselect wine register ${P}
if [[ ${PN} == "wine-vanilla" ]]; then
eselect wine register --vanilla ${P} || die
else
if use staging; then
eselect wine register --staging ${P} || die
fi
fi
eselect wine update --all --if-unset || die
xdg_desktop_database_update
if ! use gecko; then
ewarn "Without Wine Gecko, wine prefixes will not have a default"
ewarn "implementation of iexplore. Many older windows applications"
ewarn "rely upon the existence of an iexplore implementation, so"
ewarn "you will likely need to install an external one, like via winetricks"
fi
if ! use mono; then
ewarn "Without Wine Mono, wine prefixes will not have a default"
ewarn "implementation of .NET. Many windows applications rely upon"
ewarn "the existence of a .NET implementation, so you will likely need"
ewarn "to install an external one, like via winetricks"
fi
}
pkg_prerm() {
eselect wine deregister ${P}
if [[ ${PN} == "wine-vanilla" ]]; then
eselect wine deregister --vanilla ${P} || die
else
if use staging; then
eselect wine deregister --staging ${P} || die
fi
fi
eselect wine update --all --if-unset || die
}
pkg_postrm() {
xdg_desktop_database_update
}

@ -10,3 +10,4 @@ DIST wine-4.20.tar.xz 22314856 BLAKE2B c3734029583bf17929a92475f4ad3ac97df632d96
DIST wine-4.21.tar.xz 22395844 BLAKE2B 1b9c1fd8f4a1ff0527b4d4a02b1dfffa4f6887f2f261b7d4b5afa12e65a8ea18f544c91397cfc71039db7736d33cd0219aaab82cc4564ecd0cb9c74a2e39d6e5 SHA512 f962e47577db2de4e74022b8d51e81e30a004f98b37d8eee5889334271f013123e3ff53e5ac1416c2dd93ec90bee8a2d300b3842c20124df99ef067ac5c72f53
DIST wine-5.0.tar.xz 22469428 BLAKE2B d26938e707545d31ed932c67eaaa9fd137e42daa6facadeaea2897797ec816658edc1b89c649e0cb5c453ca53ebea5d7156fdd188f1afe2a55ca7834e012e276 SHA512 681de951804c3dd3ae8c677a0ea52d172b04cac58594698b191cd972b25899cd2030d01a25fc2ad2eb6b99976a30319d2bd5ba8b7ff98b1a8b43832fa6514b83
DIST wine-5.1.tar.xz 22500180 BLAKE2B bf77f24e4be2402afd083c28624e41761d63c1248c314870e0c5a6879fb1393992fe9d99bcafcea0a91599500d745a3ad199e31e857590707f026f1cf740ad31 SHA512 b842b533884f15a8fb71373258671d74aee997d9ed9ee0fb36f945cd2006b494f6cc6c91a8ca47e0ea5b0b39b108f2c4f155918823a7ddf3cd44b4e26ede9171
DIST wine-5.2.tar.xz 22837712 BLAKE2B ee9d4d4dd6c0669d1585cc6988d933dbc7aa5277a0f13e965dd9eecb621e475d33a832b316e37f1372a965efe517efafa9f857a38d9bf081026d221db96b7a0d SHA512 57fa66885c3b5f43e51324e24b8524f663ad67ff15b464ac7d58096d5921f523a59ef5f1dc1ea7aa65fa10d64b7cd832f421c1b773c72bc312d8544a61c33f8f

@ -0,0 +1,538 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
PLOCALES="ar ast bg ca cs da de el en en_US eo es fa fi fr he hi hr hu it ja ko lt ml nb_NO nl or pa pl pt_BR pt_PT rm ro ru si sk sl sr_RS@cyrillic sr_RS@latin sv ta te th tr uk wa zh_CN zh_TW"
PLOCALE_BACKUP="en"
inherit autotools eapi7-ver estack eutils flag-o-matic gnome2-utils l10n multilib multilib-minimal pax-utils toolchain-funcs virtualx xdg-utils
MY_PN="${PN%%-*}"
MY_P="${MY_PN}-${PV}"
if [[ ${PV} == "9999" ]] ; then
EGIT_REPO_URI="https://source.winehq.org/git/wine.git"
EGIT_BRANCH="master"
inherit git-r3
SRC_URI=""
#KEYWORDS=""
else
MAJOR_V=$(ver_cut 1)
SRC_URI="https://dl.winehq.org/wine/source/${MAJOR_V}.x/${MY_P}.tar.xz"
KEYWORDS="-* ~amd64 ~x86"
fi
S="${WORKDIR}/${MY_P}"
GWP_V="20191222"
PATCHDIR="${WORKDIR}/gentoo-wine-patches"
DESCRIPTION="Free implementation of Windows(tm) on Unix, without external patchsets"
HOMEPAGE="https://www.winehq.org/"
SRC_URI="${SRC_URI}
https://dev.gentoo.org/~sarnex/distfiles/wine/gentoo-wine-patches-${GWP_V}.tar.xz
"
LICENSE="LGPL-2.1"
SLOT="${PV}"
IUSE="+abi_x86_32 +abi_x86_64 +alsa capi cups custom-cflags dos elibc_glibc +faudio +fontconfig +gecko gphoto2 gsm gssapi gstreamer +jpeg kerberos kernel_FreeBSD +lcms ldap +mono mp3 ncurses netapi nls odbc openal opencl +opengl osmesa oss +perl pcap +png prelink pulseaudio +realtime +run-exes samba scanner sdl selinux +ssl test +threads +truetype udev +udisks v4l vkd3d vulkan +X +xcomposite xinerama +xml"
REQUIRED_USE="|| ( abi_x86_32 abi_x86_64 )
X? ( truetype )
elibc_glibc? ( threads )
osmesa? ( opengl )
test? ( abi_x86_32 )
vkd3d? ( vulkan )" # osmesa-opengl #286560 # X-truetype #551124
# FIXME: the test suite is unsuitable for us; many tests require net access
# or fail due to Xvfb's opengl limitations.
RESTRICT="test"
COMMON_DEPEND="
X? (
x11-libs/libXcursor[${MULTILIB_USEDEP}]
x11-libs/libXext[${MULTILIB_USEDEP}]
x11-libs/libXfixes[${MULTILIB_USEDEP}]
x11-libs/libXrandr[${MULTILIB_USEDEP}]
x11-libs/libXi[${MULTILIB_USEDEP}]
x11-libs/libXxf86vm[${MULTILIB_USEDEP}]
)
alsa? ( media-libs/alsa-lib[${MULTILIB_USEDEP}] )
capi? ( net-libs/libcapi[${MULTILIB_USEDEP}] )
cups? ( net-print/cups:=[${MULTILIB_USEDEP}] )
faudio? ( app-emulation/faudio:=[${MULTILIB_USEDEP}] )
fontconfig? ( media-libs/fontconfig:=[${MULTILIB_USEDEP}] )
gphoto2? ( media-libs/libgphoto2:=[${MULTILIB_USEDEP}] )
gsm? ( media-sound/gsm:=[${MULTILIB_USEDEP}] )
gssapi? ( virtual/krb5[${MULTILIB_USEDEP}] )
gstreamer? (
media-libs/gstreamer:1.0[${MULTILIB_USEDEP}]
media-plugins/gst-plugins-meta:1.0[${MULTILIB_USEDEP}]
)
jpeg? ( virtual/jpeg:0=[${MULTILIB_USEDEP}] )
kerberos? ( virtual/krb5[${MULTILIB_USEDEP}] )
lcms? ( media-libs/lcms:2=[${MULTILIB_USEDEP}] )
ldap? ( net-nds/openldap:=[${MULTILIB_USEDEP}] )
mp3? ( >=media-sound/mpg123-1.5.0[${MULTILIB_USEDEP}] )
ncurses? ( >=sys-libs/ncurses-5.2:0=[${MULTILIB_USEDEP}] )
netapi? ( net-fs/samba[netapi(+),${MULTILIB_USEDEP}] )
nls? ( sys-devel/gettext[${MULTILIB_USEDEP}] )
odbc? ( dev-db/unixODBC:=[${MULTILIB_USEDEP}] )
openal? ( media-libs/openal:=[${MULTILIB_USEDEP}] )
opencl? ( virtual/opencl[${MULTILIB_USEDEP}] )
opengl? (
virtual/glu[${MULTILIB_USEDEP}]
virtual/opengl[${MULTILIB_USEDEP}]
)
osmesa? ( >=media-libs/mesa-13[osmesa,${MULTILIB_USEDEP}] )
pcap? ( net-libs/libpcap[${MULTILIB_USEDEP}] )
png? ( media-libs/libpng:0=[${MULTILIB_USEDEP}] )
pulseaudio? ( media-sound/pulseaudio[${MULTILIB_USEDEP}] )
scanner? ( media-gfx/sane-backends:=[${MULTILIB_USEDEP}] )
sdl? ( media-libs/libsdl2:=[haptic,joystick,${MULTILIB_USEDEP}] )
ssl? ( net-libs/gnutls:=[${MULTILIB_USEDEP}] )
truetype? ( >=media-libs/freetype-2.0.0[${MULTILIB_USEDEP}] )
udev? ( virtual/libudev:=[${MULTILIB_USEDEP}] )
udisks? ( sys-apps/dbus[${MULTILIB_USEDEP}] )
v4l? ( media-libs/libv4l[${MULTILIB_USEDEP}] )
vkd3d? ( app-emulation/vkd3d[${MULTILIB_USEDEP}] )
vulkan? ( media-libs/vulkan-loader[${MULTILIB_USEDEP}] )
xcomposite? ( x11-libs/libXcomposite[${MULTILIB_USEDEP}] )
xinerama? ( x11-libs/libXinerama[${MULTILIB_USEDEP}] )
xml? (
dev-libs/libxml2[${MULTILIB_USEDEP}]
dev-libs/libxslt[${MULTILIB_USEDEP}]
)"
RDEPEND="${COMMON_DEPEND}
app-emulation/wine-desktop-common
>app-eselect/eselect-wine-0.3
!app-emulation/wine:0
dos? ( >=games-emulation/dosbox-0.74_p20160629 )
gecko? ( app-emulation/wine-gecko:2.47.1[abi_x86_32?,abi_x86_64?] )
mono? ( app-emulation/wine-mono:4.9.4 )
perl? (
dev-lang/perl
dev-perl/XML-Simple
)
pulseaudio? (
realtime? ( sys-auth/rtkit )
)
samba? ( >=net-fs/samba-3.0.25[winbind] )
selinux? ( sec-policy/selinux-wine )
udisks? ( sys-fs/udisks:2 )"
# tools/make_requests requires perl
DEPEND="${COMMON_DEPEND}
sys-devel/flex
>=sys-kernel/linux-headers-2.6
virtual/pkgconfig
virtual/yacc
X? ( x11-base/xorg-proto )
prelink? ( sys-devel/prelink )
xinerama? ( x11-base/xorg-proto )"
# These use a non-standard "Wine" category, which is provided by
# /etc/xdg/applications-merged/wine.menu
QA_DESKTOP_FILE="usr/share/applications/wine-browsedrive.desktop
usr/share/applications/wine-notepad.desktop
usr/share/applications/wine-uninstaller.desktop
usr/share/applications/wine-winecfg.desktop"
PATCHES=(
"${PATCHDIR}/patches/${MY_PN}-5.0-winegcc.patch" #260726
"${PATCHDIR}/patches/${MY_PN}-4.7-multilib-portage.patch" #395615
"${PATCHDIR}/patches/${MY_PN}-5.0-memset-O3.patch" #480508
"${PATCHDIR}/patches/${MY_PN}-2.0-multislot-apploader.patch" #310611
)
PATCHES_BIN=()
# https://bugs.gentoo.org/show_bug.cgi?id=635222
if [[ ${#PATCHES_BIN[@]} -ge 1 ]] || [[ ${PV} == 9999 ]]; then
DEPEND+=" dev-util/patchbin"
fi
wine_compiler_check() {
[[ ${MERGE_TYPE} = "binary" ]] && return 0
# GCC-specific bugs
if tc-is-gcc; then
# bug #549768
if use abi_x86_64 && [[ $(gcc-major-version) = 5 && $(gcc-minor-version) -le 2 ]]; then
ebegin "Checking for gcc-5 ms_abi compiler bug"
$(tc-getCC) -O2 "${PATCHDIR}/files/pr66838.c" -o "${T}"/pr66838 || die
# Run in subshell to prevent "Aborted" message
( "${T}"/pr66838 || false ) >/dev/null 2>&1
if ! eend $?; then
eerror "64-bit wine cannot be built with gcc-5.1 or initial patchset of 5.2.0"
eerror "due to compiler bugs; please re-emerge the latest gcc-5.2.x ebuild,"
eerror "or use gcc-config to select a different compiler version."
eerror "See https://bugs.gentoo.org/549768"
eerror
return 1
fi
fi
# bug #574044
if use abi_x86_64 && [[ $(gcc-major-version) = 5 && $(gcc-minor-version) = 3 ]]; then
ebegin "Checking for gcc-5-3 stack realignment compiler bug"
# Compile in subshell to prevent "Aborted" message
( $(tc-getCC) -O2 -mincoming-stack-boundary=3 "${PATCHDIR}/files/pr69140.c" -o "${T}"/pr69140 ) >/dev/null 2>&1
if ! eend $?; then
eerror "Wine cannot be built with this version of gcc-5.3"
eerror "due to compiler bugs; please re-emerge the latest gcc-5.3.x ebuild,"
eerror "or use gcc-config to select a different compiler version."
eerror "See https://bugs.gentoo.org/574044"
eerror
return 1
fi
fi
fi
# Ensure compiler support
if use abi_x86_64; then
ebegin "Checking for 64-bit compiler with builtin_ms_va_list support"
# Compile in subshell to prevent "Aborted" message
( $(tc-getCC) -O2 "${PATCHDIR}/files/builtin_ms_va_list.c" -o "${T}"/builtin_ms_va_list >/dev/null 2>&1)
if ! eend $?; then
eerror "This version of $(tc-getCC) does not support builtin_ms_va_list, can't enable 64-bit wine"
eerror
eerror "You need gcc-4.4+ or clang 3.8+ to build 64-bit wine"
eerror
return 1
fi
fi
}
wine_build_environment_check() {
[[ ${MERGE_TYPE} = "binary" ]] && return 0
if use abi_x86_64; then
if tc-is-gcc && [[ $(gcc-major-version) -lt 4 || ( $(gcc-major-version) -eq 4 && $(gcc-minor-version) -lt 4 ) ]]; then
eerror "You need gcc-4.4+ to compile 64-bit wine"
die
elif tc-is-clang && [[ $(clang-major-version) -lt 3 || ( $(clang-major-version) -eq 3 && $(clang-minor-version) -lt 8 ) ]]; then
eerror "You need clang-3.8+ to compile 64-bit wine"
die
fi
fi
if tc-is-gcc && [[ $(gcc-major-version) -eq 5 && $(gcc-minor-version) -le 3 ]]; then
ewarn "GCC-5.0-5.3 suffered from compiler bugs and are no longer supported by"
ewarn "Gentoo's Toolchain Team. If your ebuild fails the compiler checks in"
ewarn "the configure phase, either update your compiler or switch to <5.0 || >=5.4"
fi
if tc-is-gcc && [[ $(gcc-major-version) -eq 5 && $(gcc-minor-version) -eq 4 ]]; then
if has "-march=i686" ${CFLAGS} && ! has "-mtune=generic" ${CFLAGS}; then
ewarn "Compilation can hang with CFLAGS=\"-march=i686\". You can temporarily work"
ewarn "around this by adding \"-mtune=generic\" to your CFLAGS for wine."
ewarn "See package.env in man 5 portage for more information on how to do this."
ewarn "See https://bugs.gentoo.org/show_bug.cgi?id=613128 for more details"
fi
fi
if use abi_x86_32 && use opencl && [[ "$(eselect opencl show 2> /dev/null)" == "intel" ]]; then
eerror "You cannot build wine with USE=opencl because intel-ocl-sdk is 64-bit only."
eerror "See https://bugs.gentoo.org/487864 for more details."
eerror
return 1
fi
}
wine_env_vcs_vars() {
local pn_live_var="${PN//[-+]/_}_LIVE_COMMIT"
local pn_live_val="${pn_live_var}"
eval pn_live_val='$'${pn_live_val}
if [[ ! -z ${EGIT_COMMIT} ]]; then
eerror "Commits must now be specified using the environmental variables"
eerror "EGIT_OVERRIDE_COMMIT_WINE"
eerror
return 1
fi
}
pkg_pretend() {
wine_build_environment_check || die
# Verify OSS support
if use oss && ! use kernel_FreeBSD; then
if ! has_version ">=media-sound/oss-4"; then
eerror "You cannot build wine with USE=oss without having support from a"
eerror "FreeBSD kernel or >=media-sound/oss-4 (only available through external repos)"
eerror
die
fi
fi
}
pkg_setup() {
wine_build_environment_check || die
wine_env_vcs_vars || die
WINE_VARIANT="${PN#wine}-${PV}"
WINE_VARIANT="${WINE_VARIANT#-}"
MY_PREFIX="${EPREFIX}/usr/lib/wine-${WINE_VARIANT}"
MY_DATAROOTDIR="${EPREFIX}/usr/share/wine-${WINE_VARIANT}"
MY_DATADIR="${MY_DATAROOTDIR}"
MY_DOCDIR="${EPREFIX}/usr/share/doc/${PF}"
MY_INCLUDEDIR="${EPREFIX}/usr/include/wine-${WINE_VARIANT}"
MY_LIBEXECDIR="${EPREFIX}/usr/libexec/wine-${WINE_VARIANT}"
MY_LOCALSTATEDIR="${EPREFIX}/var/wine-${WINE_VARIANT}"
MY_MANDIR="${MY_DATADIR}/man"
}
src_unpack() {
if [[ ${PV} == "9999" ]] ; then
EGIT_CHECKOUT_DIR="${S}" git-r3_src_unpack
fi
default
l10n_find_plocales_changes "${S}/po" "" ".po"
}
src_prepare() {
eapply_bin(){
local patch
for patch in ${PATCHES_BIN[@]}; do
patchbin --nogit < "${patch}" || die
done
}
local md5="$(md5sum server/protocol.def)"
default
eapply_bin
eautoreconf
# Modification of the server protocol requires regenerating the server requests
if [[ "$(md5sum server/protocol.def)" != "${md5}" ]]; then
einfo "server/protocol.def was patched; running tools/make_requests"
tools/make_requests || die #432348
fi
sed -i '/^UPDATE_DESKTOP_DATABASE/s:=.*:=true:' tools/Makefile.in || die
if ! use run-exes; then
sed -i '/^MimeType/d' loader/wine.desktop || die #117785
fi
# Edit wine.desktop to work for specific variant
sed -e "/^Exec=/s/wine /wine-${WINE_VARIANT} /" -i loader/wine.desktop || die
# hi-res default icon, #472990, https://bugs.winehq.org/show_bug.cgi?id=24652
cp "${PATCHDIR}/files/oic_winlogo.ico" dlls/user32/resources/ || die
l10n_get_locales > po/LINGUAS || die # otherwise wine doesn't respect LINGUAS
# Fix manpage generation for locales #469418 and abi_x86_64 #617864
# Duplicate manpages input files for wine64
local f
for f in loader/*.man.in; do
cp ${f} ${f/wine/wine64} || die
done
# Add wine64 manpages to Makefile
if use abi_x86_64; then
sed -i "/wine.man.in/i \
\\\twine64.man.in \\\\" loader/Makefile.in || die
sed -i -E 's/(.*wine)(.*\.UTF-8\.man\.in.*)/&\
\164\2/' loader/Makefile.in || die
fi
rm_man_file(){
local file="${1}"
loc=${2}
sed -i "/${loc}\.UTF-8\.man\.in/d" "${file}" || die
}
while read f; do
l10n_for_each_disabled_locale_do rm_man_file "${f}"
done < <(find -name "Makefile.in" -exec grep -q "UTF-8.man.in" "{}" \; -print)
}
src_configure() {
wine_compiler_check || die
export LDCONFIG=/bin/true
use custom-cflags || strip-flags
multilib-minimal_src_configure
}
multilib_src_configure() {
local myconf=(
--prefix="${MY_PREFIX}"
--datarootdir="${MY_DATAROOTDIR}"
--datadir="${MY_DATADIR}"
--docdir="${MY_DOCDIR}"
--includedir="${MY_INCLUDEDIR}"
--libdir="${EPREFIX}/usr/$(get_libdir)/wine-${WINE_VARIANT}"
--libexecdir="${MY_LIBEXECDIR}"
--localstatedir="${MY_LOCALSTATEDIR}"
--mandir="${MY_MANDIR}"
--sysconfdir="${EPREFIX}/etc/wine"
$(use_with alsa)
$(use_with capi)
$(use_with lcms cms)
$(use_with cups)
$(use_with ncurses curses)
$(use_with udisks dbus)
$(use_with faudio)
$(use_with fontconfig)
$(use_with ssl gnutls)
$(use_enable gecko mshtml)
$(use_with gphoto2 gphoto)
$(use_with gsm)
$(use_with gssapi)
$(use_with gstreamer)
--without-hal
$(use_with jpeg)
$(use_with kerberos krb5)
$(use_with ldap)
--without-mingw # linux LDFLAGS leak in mingw32: bug #685172
$(use_enable mono mscoree)
$(use_with mp3 mpg123)
$(use_with netapi)
$(use_with nls gettext)
$(use_with openal)
$(use_with opencl)
$(use_with opengl)
$(use_with osmesa)
$(use_with oss)
$(use_with pcap)
$(use_with png)
$(use_with pulseaudio pulse)
$(use_with threads pthread)
$(use_with scanner sane)
$(use_with sdl)
$(use_enable test tests)
$(use_with truetype freetype)
$(use_with udev)
$(use_with v4l v4l2)
$(use_with vkd3d)
$(use_with vulkan)
$(use_with X x)
$(use_with X xfixes)
$(use_with xcomposite)
$(use_with xinerama)
$(use_with xml)
$(use_with xml xslt)
)
local PKG_CONFIG AR RANLIB
# Avoid crossdev's i686-pc-linux-gnu-pkg-config if building wine32 on amd64; #472038
# set AR and RANLIB to make QA scripts happy; #483342
tc-export PKG_CONFIG AR RANLIB
if use amd64; then
if [[ ${ABI} == amd64 ]]; then
myconf+=( --enable-win64 )
else
myconf+=( --disable-win64 )
fi
# Note: using --with-wine64 results in problems with multilib.eclass
# CC/LD hackery. We're using separate tools instead.
fi
ECONF_SOURCE=${S} \
econf "${myconf[@]}"
emake depend
}
multilib_src_test() {
# FIXME: win32-only; wine64 tests fail with "could not find the Wine loader"
if [[ ${ABI} == x86 ]]; then
if [[ $(id -u) == 0 ]]; then
ewarn "Skipping tests since they cannot be run under the root user."
ewarn "To run the test ${MY_PN} suite, add userpriv to FEATURES in make.conf"
return
fi
WINEPREFIX="${T}/.wine-${ABI}" \
Xemake test
fi
}
multilib_src_install_all() {
local DOCS=( ANNOUNCE AUTHORS README )
add_locale_docs() {
local locale_doc="documentation/README.$1"
[[ ! -e ${locale_doc} ]] || DOCS+=( ${locale_doc} )
}
l10n_for_each_locale_do add_locale_docs
einstalldocs
prune_libtool_files --all
if ! use perl ; then # winedump calls function_grep.pl, and winemaker is a perl script
rm "${D%/}${MY_PREFIX}"/bin/{wine{dump,maker},function_grep.pl} \
"${D%/}${MY_MANDIR}"/man1/wine{dump,maker}.1 || die
fi
# Remove wineconsole if neither backend is installed #551124
if ! use X && ! use ncurses; then
rm "${D%/}${MY_PREFIX}"/bin/wineconsole* || die
rm "${D%/}${MY_MANDIR}"/man1/wineconsole* || die
rm_wineconsole() {
rm "${D%/}${MY_PREFIX}/$(get_libdir)"/wine/{,fakedlls/}wineconsole.exe* || die
}
multilib_foreach_abi rm_wineconsole
fi
use abi_x86_32 && pax-mark psmr "${D%/}${MY_PREFIX}"/bin/wine{,-preloader} #255055
use abi_x86_64 && pax-mark psmr "${D%/}${MY_PREFIX}"/bin/wine64{,-preloader}
# Avoid double prefix from dosym and make_wrapper
MY_PREFIX=${MY_PREFIX#${EPREFIX}}
if use abi_x86_64 && ! use abi_x86_32; then
dosym wine64 "${MY_PREFIX}"/bin/wine # 404331
dosym wine64-preloader "${MY_PREFIX}"/bin/wine-preloader
fi
# Failglob for binloops, shouldn't be necessary, but including to stay safe
eshopts_push -s failglob #615218
# Make wrappers for binaries for handling multiple variants
# Note: wrappers instead of symlinks because some are shell which use basename
local b
for b in "${ED%/}${MY_PREFIX}"/bin/*; do
make_wrapper "${b##*/}-${WINE_VARIANT}" "${MY_PREFIX}/bin/${b##*/}"
done
eshopts_pop
}
pkg_postinst() {
eselect wine register ${P}
if [[ ${PN} == "wine-vanilla" ]]; then
eselect wine register --vanilla ${P} || die
fi
eselect wine update --all --if-unset || die
xdg_desktop_database_update
if ! use gecko; then
ewarn "Without Wine Gecko, wine prefixes will not have a default"
ewarn "implementation of iexplore. Many older windows applications"
ewarn "rely upon the existence of an iexplore implementation, so"
ewarn "you will likely need to install an external one, like via winetricks"
fi
if ! use mono; then
ewarn "Without Wine Mono, wine prefixes will not have a default"
ewarn "implementation of .NET. Many windows applications rely upon"
ewarn "the existence of a .NET implementation, so you will likely need"
ewarn "to install an external one, like via winetricks"
fi
}
pkg_prerm() {
eselect wine deregister ${P}
if [[ ${PN} == "wine-vanilla" ]]; then
eselect wine deregister --vanilla ${P} || die
fi
eselect wine update --all --if-unset || die
}
pkg_postrm() {
xdg_desktop_database_update
}

Binary file not shown.

@ -8,7 +8,7 @@ if [[ ${PV} == "99999999" ]] ; then
EGIT_REPO_URI="git://anongit.gentoo.org/proj/${PN}.git"
else
SRC_URI="https://dev.gentoo.org/~mgorny/dist/${P}.tar.bz2"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sh ~sparc x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ia64 ~m68k ~mips ppc ~ppc64 ~riscv s390 ~sh sparc x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
fi
DESCRIPTION="Eselect module for management of multiple Python versions"

Binary file not shown.

@ -12,7 +12,7 @@ if [[ ${PV} == *9999 ]] ; then
EGIT_REPO_URI="https://github.com/KittyKatt/screenFetch.git"
inherit git-r3
else
KEYWORDS="~amd64 ~arm x86 ~x64-macos"
KEYWORDS="amd64 ~arm x86 ~x64-macos"
SRC_URI="https://github.com/KittyKatt/screenFetch/archive/v${PV}.tar.gz -> ${P}.tar.gz"
S="${WORKDIR}/${MY_PN}-${PV}"
fi

Binary file not shown.

@ -15,7 +15,7 @@ SRC_URI="
LICENSE="GPL-2+"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris"
KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ia64 ~mips ppc ~ppc64 ~s390 ~sh sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris"
IUSE="+eselect test"
RESTRICT="test"

@ -1,4 +1,4 @@
DIST zsh-5.6.2-doc.tar.xz 3198932 BLAKE2B 7e701bb12e0114b7d9847caad1146fa3d538f8f6d859a765037660fb18341f1c79002811a42ec795e41eb2bbe899e12d4bcd055ea5c66e7b73bd488bdf8bbb55 SHA512 5102314e2857b032c6e6b4b715c261970b2f0c28663aff99fb87f7bb6c3971f88f8e8892ed349793570beae3fb68ff7923c82e99a3c1bb485e4639f01caaad4a
DIST zsh-5.6.2.tar.xz 3077368 BLAKE2B 8c6ce22436f9f51eff809c779efad02f4a0730b4431630ab305abc9f1ef722698f7c565d0aa421b0d94c21f2c830f9d529709fd62a4205be1a20acf0f94a845a SHA512 f0a49e41b55eb478692ab5471d7c9828956b7e96bc82944202b0ef1c49a889b21a0e7682aa5f59fd0054ebfd866c2244c8a622e7aa46c13038af5c226c48a3a2
DIST zsh-5.7.1-doc.tar.xz 3062112 BLAKE2B cb67aada97d79b4b5b1116fb0737294785a2a510c2f4396cf77b671b62631e778ee9d57a32dcd257e079a9e4c35acaeeb68c0ec951b6ae8d8d8b647c05ef365c SHA512 e51bc8eb408bcb20bf8a4f0b8588f7803fdd433445efa282f598a3bec4575cba7feaad117cd2d5077f51150bf0ba41a673ffb925ade33c435db498f1d791cc8c
DIST zsh-5.7.1.tar.xz 3126308 BLAKE2B 4f1aa2d5aea0341ba7839cf05687020889b5ca6879654a376ce838986211af4bddb7ab521a8a35cc06701f730a75a9778c633726b447f31845f5c140ec1e8d80 SHA512 a6aa88e1955a80229a4784a128866e325f79a8b5f73c922ab480048411036f1835cbb31daa30ab38bd16ab2a50040eda8f4f1f64704b21b6acc3051b1dbf18d0
DIST zsh-5.8-doc.tar.xz 3088696 BLAKE2B f738bf15b137e84df91fff8500b6c309884d8a1777e3158807f6028a411ae3f345e6ccba49bdff04c6607c4eb06fc2913313e84e1f78be0a0f92d23e46ba87db SHA512 38cc549818eb9c6952051b714dd2008d99605aba4ca4f614e62b033c9b067dd2031fff766ac5c1efe5bb52eae32bd482dea5df2b2d46decb7ecdb458f3da9d52
DIST zsh-5.8.tar.xz 3193284 BLAKE2B b1186dd27aede3318763d7c42253e919e60d00a018d085b2de7e8d985c872e9756a3ce112f623a088ec0878abd7a38d04dfa5ec552ef0f0a72e623191a7ba5e3 SHA512 96198ecef498b7d7945fecebbe6bf14065fa8c5d81a7662164579eba8206b79575812d292adea1864bc7487ac0818ba900e25f9ab3802449340de80417c2c533

@ -1,211 +0,0 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit flag-o-matic prefix
if [[ ${PV} == 9999* ]] ; then
inherit git-r3 autotools
EGIT_REPO_URI="https://git.code.sf.net/p/zsh/code"
else
KEYWORDS="~alpha amd64 arm arm64 hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
SRC_URI="https://www.zsh.org/pub/${P}.tar.xz
https://www.zsh.org/pub/old/${P}.tar.xz
doc? ( https://www.zsh.org/pub/${P}-doc.tar.xz )"
fi
DESCRIPTION="UNIX Shell similar to the Korn shell"
HOMEPAGE="https://www.zsh.org/"
LICENSE="ZSH gdbm? ( GPL-2 )"
SLOT="0"
IUSE="caps debug doc examples gdbm maildir pcre static unicode"
RDEPEND="
>=sys-libs/ncurses-5.1:0=
static? ( >=sys-libs/ncurses-5.7-r4:0=[static-libs] )
caps? ( sys-libs/libcap )
pcre? (
>=dev-libs/libpcre-3.9
static? ( >=dev-libs/libpcre-3.9[static-libs] )
)
gdbm? ( sys-libs/gdbm:= )
!<sys-apps/baselayout-2.4.1
"
DEPEND="sys-apps/groff
${RDEPEND}"
PDEPEND="
examples? ( app-doc/zsh-lovers )
"
if [[ ${PV} == 9999* ]] ; then
DEPEND+=" app-text/yodl
doc? (
sys-apps/texinfo
app-text/texi2html
virtual/latex-base
)"
fi
src_prepare() {
if [[ ${PV} != 9999* ]]; then
# fix zshall problem with soelim
ln -s Doc man1 || die
mv Doc/zshall.1 Doc/zshall.1.soelim || die
soelim Doc/zshall.1.soelim > Doc/zshall.1 || die
# add openrc specific options for init.d completion
eapply "${FILESDIR}"/${PN}-5.3-init.d-gentoo.diff
fi
eapply_user
if [[ ${PV} == 9999* ]] ; then
sed -i "/^VERSION=/s/=.*/=${PV}/" Config/version.mk || die
eautoreconf
fi
}
src_configure() {
local myconf=(
--bindir="${EPREFIX}"/bin
--libdir="${EPREFIX}"/usr/$(get_libdir)
--enable-etcdir="${EPREFIX}"/etc/zsh
--enable-runhelpdir="${EPREFIX}"/usr/share/zsh/${PV%_*}/help
--enable-fndir="${EPREFIX}"/usr/share/zsh/${PV%_*}/functions
--enable-site-fndir="${EPREFIX}"/usr/share/zsh/site-functions
--enable-function-subdirs
--with-tcsetpgrp
$(use_enable maildir maildir-support)
$(use_enable pcre)
$(use_enable caps cap)
$(use_enable unicode multibyte)
$(use_enable gdbm)
)
if use static ; then
myconf+=( --disable-dynamic )
append-ldflags -static
fi
if use debug ; then
myconf+=(
--enable-zsh-debug
--enable-zsh-mem-debug
--enable-zsh-mem-warning
--enable-zsh-secure-free
--enable-zsh-hash-debug
)
fi
if [[ ${CHOST} == *-darwin* ]]; then
myconf+=( --enable-libs=-liconv )
append-ldflags -Wl,-x
fi
econf "${myconf[@]}"
if use static ; then
# compile all modules statically, see Bug #27392
# removed cap and curses because linking failes
sed -e "s,link=no,link=static,g" \
-e "/^name=zsh\/cap/s,link=static,link=no," \
-e "/^name=zsh\/curses/s,link=static,link=no," \
-i "${S}"/config.modules || die
if ! use gdbm ; then
sed -i '/^name=zsh\/db\/gdbm/s,link=static,link=no,' \
"${S}"/config.modules || die
fi
fi
}
src_compile() {
default
if [[ ${PV} == 9999* ]] && use doc ; then
emake -C Doc everything
fi
}
src_test() {
addpredict /dev/ptmx
local i
for i in C02cond.ztst V08zpty.ztst X02zlevi.ztst Y01completion.ztst Y02compmatch.ztst Y03arguments.ztst ; do
rm "${S}"/Test/${i} || die
done
emake check
}
src_install() {
emake DESTDIR="${D}" install $(usex doc "install.info" "")
insinto /etc/zsh
export PREFIX_QUOTE_CHAR='"' PREFIX_EXTRA_REGEX="/EUID/s,0,${EUID},"
newins "$(prefixify_ro "${FILESDIR}"/zprofile-4)" zprofile
keepdir /usr/share/zsh/site-functions
insinto /usr/share/zsh/${PV%_*}/functions/Prompts
newins "${FILESDIR}"/prompt_gentoo_setup-1 prompt_gentoo_setup
local i
# install miscellaneous scripts (bug #54520)
sed -e "s:/usr/local/bin/perl:${EPREFIX}/usr/bin/perl:g" \
-e "s:/usr/local/bin/zsh:${EPREFIX}/bin/zsh:g" \
-i {Util,Misc}/* || die
for i in Util Misc ; do
insinto /usr/share/zsh/${PV%_*}/${i}
doins ${i}/*
done
# install header files (bug #538684)
insinto /usr/include/zsh
doins config.h Src/*.epro
for i in Src/{zsh.mdh,*.h} ; do
sed -e 's@\.\./config\.h@config.h@' \
-e 's@#\(\s*\)include "\([^"]\+\)"@#\1include <zsh/\2>@' \
-i "${i}"
doins "${i}"
done
dodoc ChangeLog* META-FAQ NEWS README config.modules
if use doc ; then
pushd "${WORKDIR}/${PN}-${PV%_*}" >/dev/null
dodoc Doc/zsh.{dvi,pdf}
docinto html
dodoc Doc/*.html
popd >/dev/null
fi
docinto StartupFiles
dodoc StartupFiles/z*
}
pkg_postinst() {
if [[ -z ${REPLACING_VERSIONS} ]] ; then
echo
elog "If you want to enable Portage completions and Gentoo prompt,"
elog "emerge app-shells/gentoo-zsh-completions and add"
elog " autoload -U compinit promptinit"
elog " compinit"
elog " promptinit; prompt gentoo"
elog "to your ~/.zshrc"
echo
elog "Also, if you want to enable cache for the completions, add"
elog " zstyle ':completion::complete:*' use-cache 1"
elog "to your ~/.zshrc"
echo
elog "Note that a system zprofile startup file is installed. This will override"
elog "PATH and possibly other variables that a user may set in ~/.zshenv."
elog "Custom PATH settings and similar overridden variables can be moved to ~/.zprofile"
elog "or other user startup files that are sourced after the system zprofile."
echo
elog "If PATH must be set in ~/.zshenv to affect things like non-login ssh shells,"
elog "one method is to use a separate path-setting file that is conditionally sourced"
elog "in ~/.zshenv and also sourced from ~/.zprofile. For more information, see the"
elog "zshenv example in ${EROOT}/usr/share/doc/${PF}/StartupFiles/."
echo
elog "See https://wiki.gentoo.org/wiki/Zsh/HOWTO for more introduction documentation."
echo
fi
}

@ -1,4 +1,4 @@
# Copyright 1999-2019 Gentoo Authors
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@ -51,6 +51,10 @@ if [[ ${PV} == 9999* ]] ; then
)"
fi
PATCHES=(
"${FILESDIR}/${PN}-5.7.1-ncurses_colors.patch"
)
src_prepare() {
if [[ ${PV} != 9999* ]]; then
# fix zshall problem with soelim
@ -81,6 +85,7 @@ src_configure() {
--enable-site-fndir="${EPREFIX}"/usr/share/zsh/site-functions
--enable-function-subdirs
--with-tcsetpgrp
--with-term-lib="$(usex unicode 'tinfow ncursesw' 'tinfo ncurses')"
$(use_enable maildir maildir-support)
$(use_enable pcre)
$(use_enable caps cap)

Binary file not shown.

@ -109,7 +109,7 @@ DEPEND="${COMMON_DEPEND}
virtual/pkgconfig"
pkg_pretend() {
if [[ ${MERGE_TYPE} != binary && $(gcc-major-version) -lt 6 ]]; then
if [[ ${MERGE_TYPE} != binary ]] && tc-is-gcc && [[ $(gcc-major-version) -lt 6 ]]; then
eerror "Calibre cannot be built with this version of gcc."
eerror "You need at least gcc-6.0"
die "Your C compiler is too old for this package."

@ -109,7 +109,7 @@ DEPEND="${COMMON_DEPEND}
virtual/pkgconfig"
pkg_pretend() {
if [[ ${MERGE_TYPE} != binary && $(gcc-major-version) -lt 6 ]]; then
if [[ ${MERGE_TYPE} != binary ]] && tc-is-gcc && [[ $(gcc-major-version) -lt 6 ]]; then
eerror "Calibre cannot be built with this version of gcc."
eerror "You need at least gcc-6.0"
die "Your C compiler is too old for this package."

@ -1,4 +1,4 @@
# Copyright 1999-2019 Gentoo Authors
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@ -9,7 +9,7 @@ SRC_URI="http://ftp.wagner.pp.ru/pub/${PN}/${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~amd64 ~arm ~ppc ~x86 ~amd64-linux ~ppc-macos ~x86-macos ~x64-solaris ~x86-solaris"
KEYWORDS="amd64 ~arm ~ppc x86 ~amd64-linux ~ppc-macos ~x86-macos ~x64-solaris ~x86-solaris"
IUSE="tk"
DEPEND="tk? ( >=dev-lang/tk-8.1 )"

@ -1,4 +1,4 @@
# Copyright 1999-2019 Gentoo Authors
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@ -11,7 +11,7 @@ SRC_URI="https://www.molspaces.com/dl/progs/${P}.tar.gz"
LICENSE="GPL-3"
SLOT="0"
KEYWORDS="~amd64 ~x86"
KEYWORDS="amd64 ~x86"
IUSE="+lzo webengine +webkit"
REQUIRED_USE="?? ( webkit webengine )"

Binary file not shown.

@ -12,7 +12,7 @@ SRC_URI="https://github.com/luceneplusplus/LucenePlusPlus/archive/rel_${PV}.tar.
LICENSE="|| ( LGPL-3 Apache-2.0 )"
SLOT="0"
KEYWORDS="amd64 ~hppa ~ppc ~ppc64 sparc ~x86"
KEYWORDS="amd64 ~hppa ppc ~ppc64 sparc x86"
IUSE="debug"
DEPEND="dev-libs/boost:="

Binary file not shown.

@ -12,7 +12,7 @@ else
MY_PV=${PV/_b/-b}
SRC_URI="https://downloads.mariadb.org/f/${MY_PN}-${PV%_beta}/${PN}-${MY_PV}-src.tar.gz?serve -> ${P}-src.tar.gz"
S="${WORKDIR%/}/${PN}-${MY_PV}-src"
KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~s390 sparc x86"
KEYWORDS="amd64 arm ~arm64 ~hppa ia64 ~ppc ppc64 s390 sparc x86"
fi
inherit cmake-utils multilib-minimal toolchain-funcs ${VCS_INHERIT}

@ -13,7 +13,7 @@ SRC_URI="https://dev.mysql.com/get/Downloads/${URI_DIR}/${P}-src.tar.gz"
LICENSE="Artistic GPL-2"
SLOT="0"
KEYWORDS="amd64 ~arm ~arm64 ~ppc ~ppc64 ~sparc x86"
KEYWORDS="amd64 arm ~arm64 ~ppc ~ppc64 ~sparc x86"
IUSE="+legacy libressl"
RDEPEND="

@ -13,7 +13,7 @@ HOMEPAGE="https://dev.mysql.com/downloads/"
LICENSE="GPL-2"
SRC_URI="https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-boost-${PV}.tar.gz"
KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh sparc x86"
KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ppc ppc64 s390 ~sh sparc x86"
SLOT="0/21"
IUSE="ldap libressl static-libs"

@ -34,7 +34,7 @@ RESTRICT="!test? ( test ) libressl? ( test )"
REQUIRED_USE="?? ( tcmalloc jemalloc ) static? ( yassl )"
KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc x86 ~amd64-linux ~x86-linux ~x64-macos ~x86-macos ~x64-solaris ~x86-solaris"
KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ppc64 ~s390 ~sparc x86 ~amd64-linux ~x86-linux ~x64-macos ~x86-macos ~x64-solaris ~x86-solaris"
# Shorten the path because the socket path length must be shorter than 107 chars
# and we will run a mysql server during test phase

@ -43,7 +43,7 @@ REQUIRED_USE="?? ( tcmalloc jemalloc )
router? ( server )
tcmalloc? ( server )"
KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc x86 ~amd64-linux ~x86-linux ~x64-macos ~x86-macos ~x64-solaris ~x86-solaris"
KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ppc64 ~s390 ~sparc x86 ~amd64-linux ~x86-linux ~x64-macos ~x86-macos ~x64-solaris ~x86-solaris"
# Shorten the path because the socket path length must be shorter than 107 chars
# and we will run a mysql server during test phase

Binary file not shown.

@ -12,7 +12,7 @@ HOMEPAGE="https://cgit.kde.org/kpeoplevcard.git"
if [[ ${KDE_BUILD_TYPE} = release ]]; then
SRC_URI="mirror://kde/stable/${PN}/${PV}/${P}.tar.xz"
KEYWORDS="~amd64"
KEYWORDS="~amd64 ~x86"
fi
LICENSE="LGPL-2.1+"

@ -13,7 +13,7 @@ DESCRIPTION="Framework to collect user feedback for applications via telemetry a
if [[ ${KDE_BUILD_TYPE} = release ]]; then
SRC_URI="mirror://kde/stable/${PN}/${P}.tar.xz"
KEYWORDS="~amd64 ~ppc64"
KEYWORDS="~amd64 ~ppc64 ~x86"
fi
LICENSE="MIT"

@ -14,7 +14,7 @@ S=${WORKDIR}/${MY_P}
LICENSE="BSD-2"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ia64 ~m68k ~mips ppc ~ppc64 s390 ~sh sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
IUSE="static-libs"
RDEPEND=">=sys-libs/ncurses-5.9-r3[static-libs?,${MULTILIB_USEDEP}]"

@ -2,3 +2,4 @@ DIST libfilezilla-0.15.1.tar.bz2 404746 BLAKE2B 644f4b8949670d5b07f9e7b861d388ce
DIST libfilezilla-0.18.2.tar.bz2 526968 BLAKE2B 81b27c18e9c04e2277dbe7a2fa2bfe3c1fa7c1f9c27eaf5cc02f309a15e9b61e71e5a67aa359c7bb36b27335f008cfb58641adcb42745ac00b9ac9eb2c649cde SHA512 6f165a008ea8e3090554070685ef042b5304a8e7fdeb9f16c81a01c00b5fcb3d4acd356cfaf3fc1189c04db0b726dd005c592f6c7c6b06a527d8b82e7890257b
DIST libfilezilla-0.19.1.tar.bz2 539952 BLAKE2B a581964a34c9104543eb06579e1f1b816b0f47e6ef3af0de9aa0b7528665ca0ac17ddf3c5327a434b8e344bdde5602f1b7a71b7cc755367e750c88de06329335 SHA512 1342a199e4bdc211437deaa4ff34fe7f7de476a664b1ea4dc8df0482db98eb6c21e03f9c7b510bc00c81f6dacd7fdec2fa721554fe6e71c5bb2763618759b1a1
DIST libfilezilla-0.19.3.tar.bz2 541117 BLAKE2B c0015be2fa632cc4bfd44d5e02bdc9e14c5ac0598e4c83fabc95e00dd82669963d02a8e7b3db33e554d86f333eb5a7afdd6235acfa7b336dbd5bbfbf334f4381 SHA512 264a3a110dc4e99f6b993479be9f25cf831297899c699d73e5ad5a403e11ff09fa9ab062a420a0111e78f7d6e68e92fa461c161c8fd7c274cf227ef45f618849
DIST libfilezilla-0.20.0.tar.bz2 548447 BLAKE2B d85fb1a0c269603c83fe778d6bd081205f2f860b4af4605750f385a8c57c4be346c4ef09490f5a2e601c4fffbf43c692e0076cc89637202dadbc74f85f91d803 SHA512 3eae172aa84a0d30e0ad5da4cab828b1003226f7971ccc8823f7f59bd1783067d4cbd4e11be8ba5ce1376243876c8516db563e336cdba99c24cad85730e22d1a

@ -0,0 +1,39 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit flag-o-matic
DESCRIPTION="C++ library offering some basic functionality for platform-independent programs"
HOMEPAGE="https://lib.filezilla-project.org/"
SRC_URI="https://download.filezilla-project.org/${PN}/${P}.tar.bz2"
LICENSE="GPL-2+"
SLOT="0/4" # libfilezilla .so version
KEYWORDS="~amd64 ~arm ~ia64 ~ppc ~ppc64 ~x86"
IUSE="test"
RESTRICT="!test? ( test )"
RDEPEND="
dev-libs/nettle:0=
>=net-libs/gnutls-3.5.7:=
"
DEPEND="${RDEPEND}
test? ( dev-util/cppunit )"
pkg_pretend() {
if [[ ${MERGE_TYPE} != binary ]]; then
if ! test-flag-CXX -std=c++14; then
eerror "${P} requires C++14-capable C++ compiler. Your current compiler"
eerror "does not seem to support -std=c++14 option. Please upgrade your compiler"
eerror "to gcc-4.9 or an equivalent version supporting C++14."
die "Currently active compiler does not support -std=c++14"
fi
fi
}
src_install() {
default
find "${ED}" -type f \( -name "*.a" -o -name "*.la" \) -delete || die
}

@ -13,7 +13,7 @@ SRC_URI="mirror://sourceforge/natspec/${P}.tar.bz2"
LICENSE="LGPL-2.1"
SLOT="0"
KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh sparc x86"
KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ia64 ~m68k ~mips ppc ppc64 s390 ~sh sparc x86"
IUSE="doc python"
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"

@ -10,7 +10,7 @@ DESCRIPTION="Qt API for storing passwords securely"
if [[ ${PV} != *9999* ]]; then
SRC_URI="https://github.com/frankosterfeld/qtkeychain/archive/v${PV}.tar.gz -> ${P}.tar.gz"
KEYWORDS="~amd64 ~arm64 x86"
KEYWORDS="amd64 ~arm64 x86"
else
inherit git-r3
EGIT_REPO_URI="${HOMEPAGE}.git"

@ -13,7 +13,7 @@ if [[ ${PV} == *9999 ]]; then
EGIT_REPO_URI="https://github.com/gabime/${PN}"
else
SRC_URI="https://github.com/gabime/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
KEYWORDS="~amd64"
KEYWORDS="~amd64 ~x86"
fi
LICENSE="MIT"

Binary file not shown.

@ -1,6 +1 @@
DIST camlp5-6.17.tar.gz 718935 BLAKE2B b0a573e1110d6ce0654325a1a7310ebee8c815998df3f1a2bec514a4c4755dedfe68349a55dd227c97a667dbbf36c3d896bd17400e32b0f05e3e9801142aa204 SHA512 c4bf32eb79202d6127375b940fe77fc57c7dc5f8c6763b50ba23ab52ae9f3edb0ba15148109af2f6f4808619348d78e927cfdf29901bf1141b17de0d3fd8ff30
DIST camlp5-7.00.tar.gz 755750 BLAKE2B b047422ff34c4d15c21b65bd7473ccdad8bfc1f484a0075f1beeaa50fdca72b2f900b437333c847a4e4fd7bb8ae5c37aa4ed984e3a850c4dcba045d8678502c4 SHA512 2d63451229f86fffeb287735ed26901ad43bb964b6ede1716cb82737001a5c1e4b77479a969509606f6a4f14bb6dbff32275d82f4a9640e0c16bb6594779e849
DIST camlp5-7.01.tar.gz 757118 BLAKE2B 5d7c6f39f24bfee545552aae5c126305d2c767d06762aa516c21bcc5b327b312b7c38d742717eb507b92ae1e27de9c0fcde4d616754a7ce616b5f56689c8dc5a SHA512 9930957f707d9d2c8903f87f5f3444f71bad3d84c944436c7abc6de19209595c974098cd60a6a391f8ae87c4fb53b5122cba8e42e34fcf46d798dbdc28840008
DIST camlp5-7.03.tar.gz 758136 BLAKE2B 4e1169adf7e119f1f659fe684a8b06c4730db3bcd7807169552de0e3fc115f8d45bc11961f3aee0a9c2d86e1130ec776a1bb7753d7d4e95f661d65d1f841406c SHA512 0c76d469c5f8c727088f3136107b6690349b50791ef8baefffdaa90141230907f977a7a886a9e8d88d39d8fa315637d882d0205c57d752e16575c888a8a1f54d
DIST camlp5-7.10.tar.gz 849559 BLAKE2B b05624156e914c2657d76afbf3dfacd295fe5985ae3809959a40029a8052669be6ae8a6ff889fbf2c602d3f19c9995f013b388c140738f4bb4f4da9970911ed5 SHA512 faa9e88f56477162038fc80429d5839c93b3e38aec90366730babe737e2e6bb260dc39975947a6601212cc0c68f465bdbccb6337da23c07181909dfb11cf8640
DIST camlp5-7.11.tar.gz 878224 BLAKE2B f384764da43653a2f75664681a4f202ec84497720470a0a33f99fc61a1ce7b4a9d494ffe6b523c74906c122ee04ae25a08bf1fcd356145e85a11e3e3095bbf7d SHA512 109a43f0a3aaa7a3ba9bd51b1fc1273b054d32787e189b138d69b39c42642b480c13abb9e91f15e6b6e889eaf4dc422ad3ff51e4dee298fb9d8cd9a2db99c159

@ -1,72 +0,0 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="5"
inherit multilib findlib eutils versionator
MY_P=${P%_p*}
DESCRIPTION="A preprocessor-pretty-printer of ocaml"
HOMEPAGE="https://camlp5.github.io/"
SRC_URI="https://github.com/camlp5/camlp5/archive/rel$(replace_all_version_separators '').tar.gz -> ${P}.tar.gz"
S="${WORKDIR}/${PN}-rel$(replace_all_version_separators '')"
LICENSE="BSD"
SLOT="0/${PV}"
KEYWORDS="~alpha amd64 ppc x86"
IUSE="doc +ocamlopt"
DEPEND="
>=dev-lang/ocaml-3.10:=[ocamlopt?]
<=dev-lang/ocaml-4.4.2
"
RDEPEND="${DEPEND}"
PATCHLEVEL=${PV#*_p}
PATCHLIST=""
if [ "${PATCHLEVEL}" != "${PV}" ] ; then
for (( i=1; i<=PATCHLEVEL; i++ )) ; do
SRC_URI="${SRC_URI}
http://pauillac.inria.fr/~ddr/camlp5/distrib/src/patch-${PV%_p*}-${i} -> ${MY_P}-patch-${i}.patch"
PATCHLIST="${PATCHLIST} ${MY_P}-patch-${i}.patch"
done
fi
src_prepare() {
for i in ${PATCHLIST} ; do
epatch "${DISTDIR}/${i}"
done
# ocaml 4.04.2 support
cp -a ocaml_stuff/4.04.1 ocaml_stuff/4.04.2 || die
cp ocaml_src/lib/versdep/4.04.{1,2}.ml || die
sed -i -e 's/4.04.1/4.04.2/' ocaml_stuff/4.04.2/utils/pconfig.ml || die
}
src_configure() {
./configure \
--strict \
-prefix /usr \
-bindir /usr/bin \
-libdir /usr/$(get_libdir)/ocaml \
-mandir /usr/share/man || die "configure failed"
}
src_compile(){
emake out
if use ocamlopt; then
emake opt
emake opt.opt
fi
}
src_install() {
emake DESTDIR="${D}" install
# findlib support
insinto "$(ocamlfind printconf destdir)/${PN}"
doins etc/META
use doc && dohtml -r doc/*
dodoc CHANGES DEVEL ICHANGES README UPGRADING MODE
}

@ -1,68 +0,0 @@
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="5"
inherit multilib findlib eutils versionator
MY_P=${P%_p*}
DESCRIPTION="A preprocessor-pretty-printer of ocaml"
HOMEPAGE="https://camlp5.github.io/"
SRC_URI="https://github.com/camlp5/camlp5/archive/rel$(replace_all_version_separators '').tar.gz -> ${P}.tar.gz"
S="${WORKDIR}/${PN}-rel$(replace_all_version_separators '')"
LICENSE="BSD"
SLOT="0/${PV}"
KEYWORDS="~alpha ~amd64 ~ppc ~x86"
IUSE="doc +ocamlopt"
DEPEND="
>=dev-lang/ocaml-3.10:=[ocamlopt?]
<=dev-lang/ocaml-4.6.0
"
RDEPEND="${DEPEND}"
PATCHLEVEL=${PV#*_p}
PATCHLIST=""
if [ "${PATCHLEVEL}" != "${PV}" ] ; then
for (( i=1; i<=PATCHLEVEL; i++ )) ; do
SRC_URI="${SRC_URI}
http://pauillac.inria.fr/~ddr/camlp5/distrib/src/patch-${PV%_p*}-${i} -> ${MY_P}-patch-${i}.patch"
PATCHLIST="${PATCHLIST} ${MY_P}-patch-${i}.patch"
done
fi
src_prepare() {
for i in ${PATCHLIST} ; do
epatch "${DISTDIR}/${i}"
done
}
src_configure() {
./configure \
--strict \
-prefix /usr \
-bindir /usr/bin \
-libdir /usr/$(get_libdir)/ocaml \
-mandir /usr/share/man || die "configure failed"
}
src_compile(){
emake out
if use ocamlopt; then
emake opt
emake opt.opt
fi
}
src_install() {
emake DESTDIR="${D}" install
# findlib support
insinto "$(ocamlfind printconf destdir)/${PN}"
doins etc/META
use doc && dohtml -r doc/*
dodoc CHANGES DEVEL ICHANGES README UPGRADING MODE
}

@ -1,68 +0,0 @@
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="5"
inherit multilib findlib eutils versionator
MY_P=${P%_p*}
DESCRIPTION="A preprocessor-pretty-printer of ocaml"
HOMEPAGE="https://camlp5.github.io/"
SRC_URI="https://github.com/camlp5/camlp5/archive/rel$(replace_all_version_separators '').tar.gz -> ${P}.tar.gz"
S="${WORKDIR}/${PN}-rel$(replace_all_version_separators '')"
LICENSE="BSD"
SLOT="0/${PV}"
KEYWORDS="~alpha ~amd64 ~ppc ~x86"
IUSE="doc +ocamlopt"
DEPEND="
>=dev-lang/ocaml-3.10:=[ocamlopt?]
<=dev-lang/ocaml-4.6.0
"
RDEPEND="${DEPEND}"
PATCHLEVEL=${PV#*_p}
PATCHLIST=""
if [ "${PATCHLEVEL}" != "${PV}" ] ; then
for (( i=1; i<=PATCHLEVEL; i++ )) ; do
SRC_URI="${SRC_URI}
http://pauillac.inria.fr/~ddr/camlp5/distrib/src/patch-${PV%_p*}-${i} -> ${MY_P}-patch-${i}.patch"
PATCHLIST="${PATCHLIST} ${MY_P}-patch-${i}.patch"
done
fi
src_prepare() {
for i in ${PATCHLIST} ; do
epatch "${DISTDIR}/${i}"
done
}
src_configure() {
./configure \
--strict \
-prefix /usr \
-bindir /usr/bin \
-libdir /usr/$(get_libdir)/ocaml \
-mandir /usr/share/man || die "configure failed"
}
src_compile(){
emake out
if use ocamlopt; then
emake opt
emake opt.opt
fi
}
src_install() {
emake DESTDIR="${D}" install
# findlib support
insinto "$(ocamlfind printconf destdir)/${PN}"
doins etc/META
use doc && dohtml -r doc/*
dodoc CHANGES DEVEL ICHANGES README UPGRADING MODE
}

@ -1,68 +0,0 @@
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="5"
inherit multilib findlib eutils versionator
MY_P=${P%_p*}
DESCRIPTION="A preprocessor-pretty-printer of ocaml"
HOMEPAGE="https://camlp5.github.io/"
SRC_URI="https://github.com/camlp5/camlp5/archive/rel$(replace_all_version_separators '').tar.gz -> ${P}.tar.gz"
S="${WORKDIR}/${PN}-rel$(replace_all_version_separators '')"
LICENSE="BSD"
SLOT="0/${PV}"
KEYWORDS="~alpha ~amd64 ~ppc ~x86"
IUSE="doc +ocamlopt"
DEPEND="
>=dev-lang/ocaml-3.10:=[ocamlopt?]
<=dev-lang/ocaml-4.6.0
"
RDEPEND="${DEPEND}"
PATCHLEVEL=${PV#*_p}
PATCHLIST=""
if [ "${PATCHLEVEL}" != "${PV}" ] ; then
for (( i=1; i<=PATCHLEVEL; i++ )) ; do
SRC_URI="${SRC_URI}
http://pauillac.inria.fr/~ddr/camlp5/distrib/src/patch-${PV%_p*}-${i} -> ${MY_P}-patch-${i}.patch"
PATCHLIST="${PATCHLIST} ${MY_P}-patch-${i}.patch"
done
fi
src_prepare() {
for i in ${PATCHLIST} ; do
epatch "${DISTDIR}/${i}"
done
}
src_configure() {
./configure \
--strict \
-prefix /usr \
-bindir /usr/bin \
-libdir /usr/$(get_libdir)/ocaml \
-mandir /usr/share/man || die "configure failed"
}
src_compile(){
emake out
if use ocamlopt; then
emake opt
emake opt.opt
fi
}
src_install() {
emake DESTDIR="${D}" install
# findlib support
insinto "$(ocamlfind printconf destdir)/${PN}"
doins etc/META
use doc && dohtml -r doc/*
dodoc CHANGES DEVEL ICHANGES README UPGRADING MODE
}

@ -1,48 +0,0 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit findlib
DESCRIPTION="A preprocessor-pretty-printer of ocaml"
HOMEPAGE="https://camlp5.github.io/"
SRC_URI="https://github.com/camlp5/camlp5/archive/rel$(ver_rs 1- '').tar.gz -> ${P}.tar.gz"
S="${WORKDIR}/${PN}-rel$(ver_rs 1- '')"
LICENSE="BSD"
SLOT="0/${PV}"
KEYWORDS="~alpha ~amd64 ~ppc ~x86"
IUSE="doc +ocamlopt"
DEPEND="<dev-lang/ocaml-4.09"
RDEPEND="${DEPEND}"
DOCS="CHANGES DEVEL ICHANGES README.md UPGRADING MODE"
src_configure() {
./configure \
--strict \
-prefix /usr \
-bindir /usr/bin \
-libdir /usr/$(get_libdir)/ocaml \
-mandir /usr/share/man || die "configure failed"
}
src_compile(){
emake out
if use ocamlopt; then
emake opt
emake opt.opt
fi
}
src_install() {
use doc && HTML_DOCS="doc/*"
default
# findlib support
insinto "$(ocamlfind printconf destdir)/${PN}"
doins etc/META
}

@ -12,7 +12,7 @@ S="${WORKDIR}/${PN}-rel$(ver_rs 1- '')"
LICENSE="BSD"
SLOT="0/${PV}"
KEYWORDS="~alpha ~amd64 ~ppc ~x86"
KEYWORDS="~alpha amd64 ppc x86"
IUSE="doc +ocamlopt"
DEPEND="dev-lang/ocaml"

@ -1,2 +1,3 @@
DIST camlzip-1.06.tar.gz 26499 BLAKE2B a7a1dbe157c0dcb9847bcd6324bbb7cbaf39342d0fdbaed51d2c004ae7b03f8d655fb15da50dae6190b976675e405e28fa2d4fa35a2f4372c50519564d58f981 SHA512 5ef0172927106589620678897f12f054533503a5cf13df71bf4deda43f223d0cd6acce118977e87bce53afe289f367b851f192a8e693274c2bd13549121019dd
DIST camlzip-1.07.tar.gz 26652 BLAKE2B f373ac0427faa9b6a846e9db8f3e48c00ec6885b8a11cc09fae96b5a7656908f172fda73dbea8ddd1b3dbfd98bcfa3e2e67ce9faf2942d1e260fc0a804813a05 SHA512 b92e9db002b9b398fd132c6ecd8098fac4cc7ddb3f770cc412990dcdf4bd62ba358c762d31fb0b5cd6b32f20d3bf4b3410ca6e86c511a438b92ece940f9831bd
DIST camlzip-1.10.tar.gz 27335 BLAKE2B bbf24953634278589395dd9fcedf1e3becce8dad1f380393dc3ac59589143e1685dc14085ef566e12fb751c6f1a333dd368795a5083b94a43b71e058e86489f3 SHA512 5c42e0d808230e3820b2e7ef34b544ca51a7bf0a484ce4e1c8b1e4966133196bb3ff7c3ca85b9c50050aca389316eb52f0335f6e2ad60c000594a33171b9a9a9

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

Loading…
Cancel
Save