diff --git a/Manifest.files.gz b/Manifest.files.gz
index 5011a24a7dc7..46f793a176b5 100644
Binary files a/Manifest.files.gz and b/Manifest.files.gz differ
diff --git a/acct-group/Manifest.gz b/acct-group/Manifest.gz
index 01551e0da0d1..28c8466db5f0 100644
Binary files a/acct-group/Manifest.gz and b/acct-group/Manifest.gz differ
diff --git a/app-editors/emacs-vcs/Manifest b/acct-group/amule/Manifest
similarity index 100%
rename from app-editors/emacs-vcs/Manifest
rename to acct-group/amule/Manifest
diff --git a/acct-group/amule/amule-0.ebuild b/acct-group/amule/amule-0.ebuild
new file mode 100644
index 000000000000..354dc87a1194
--- /dev/null
+++ b/acct-group/amule/amule-0.ebuild
@@ -0,0 +1,9 @@
+# Copyright 2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit acct-group
+
+DESCRIPTION="Group for net-p2p/amule"
+ACCT_GROUP_ID=468
diff --git a/acct-group/amule/metadata.xml b/acct-group/amule/metadata.xml
new file mode 100644
index 000000000000..039cf44c7038
--- /dev/null
+++ b/acct-group/amule/metadata.xml
@@ -0,0 +1,12 @@
+
+
+
+
+ alexander@tsoy.me
+ Alexander Tsoy
+
+
+ proxy-maint@gentoo.org
+ Proxy Maintainers
+
+
diff --git a/acct-group/clamav/Manifest b/acct-group/clamav/Manifest
new file mode 100644
index 000000000000..e69de29bb2d1
diff --git a/acct-group/clamav/clamav-0.ebuild b/acct-group/clamav/clamav-0.ebuild
new file mode 100644
index 000000000000..30e86e6753f4
--- /dev/null
+++ b/acct-group/clamav/clamav-0.ebuild
@@ -0,0 +1,8 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit acct-group
+
+ACCT_GROUP_ID=435
diff --git a/acct-group/clamav/metadata.xml b/acct-group/clamav/metadata.xml
new file mode 100644
index 000000000000..45125b9b6e99
--- /dev/null
+++ b/acct-group/clamav/metadata.xml
@@ -0,0 +1,8 @@
+
+
+
+
+ mjo@gentoo.org
+ Michael Orlitzky
+
+
diff --git a/acct-group/nagios/Manifest b/acct-group/nagios/Manifest
new file mode 100644
index 000000000000..e69de29bb2d1
diff --git a/acct-group/nagios/metadata.xml b/acct-group/nagios/metadata.xml
new file mode 100644
index 000000000000..45125b9b6e99
--- /dev/null
+++ b/acct-group/nagios/metadata.xml
@@ -0,0 +1,8 @@
+
+
+
+
+ mjo@gentoo.org
+ Michael Orlitzky
+
+
diff --git a/acct-group/nagios/nagios-0.ebuild b/acct-group/nagios/nagios-0.ebuild
new file mode 100644
index 000000000000..4d2ee9d295ea
--- /dev/null
+++ b/acct-group/nagios/nagios-0.ebuild
@@ -0,0 +1,8 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit acct-group
+
+ACCT_GROUP_ID=436
diff --git a/acct-user/Manifest.gz b/acct-user/Manifest.gz
index b225855b0e6e..094626078692 100644
Binary files a/acct-user/Manifest.gz and b/acct-user/Manifest.gz differ
diff --git a/acct-user/amule/Manifest b/acct-user/amule/Manifest
new file mode 100644
index 000000000000..e69de29bb2d1
diff --git a/acct-user/amule/amule-0.ebuild b/acct-user/amule/amule-0.ebuild
new file mode 100644
index 000000000000..58d59281ccb4
--- /dev/null
+++ b/acct-user/amule/amule-0.ebuild
@@ -0,0 +1,12 @@
+# Copyright 2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit acct-user
+
+DESCRIPTION="User for net-p2p/amule"
+ACCT_USER_ID=468
+ACCT_USER_GROUPS=( amule )
+
+acct-user_add_deps
diff --git a/acct-user/amule/metadata.xml b/acct-user/amule/metadata.xml
new file mode 100644
index 000000000000..039cf44c7038
--- /dev/null
+++ b/acct-user/amule/metadata.xml
@@ -0,0 +1,12 @@
+
+
+
+
+ alexander@tsoy.me
+ Alexander Tsoy
+
+
+ proxy-maint@gentoo.org
+ Proxy Maintainers
+
+
diff --git a/acct-user/clamav/Manifest b/acct-user/clamav/Manifest
new file mode 100644
index 000000000000..e69de29bb2d1
diff --git a/acct-user/clamav/clamav-0.ebuild b/acct-user/clamav/clamav-0.ebuild
new file mode 100644
index 000000000000..98649dc699aa
--- /dev/null
+++ b/acct-user/clamav/clamav-0.ebuild
@@ -0,0 +1,11 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit acct-user
+
+ACCT_USER_ID=435
+ACCT_USER_GROUPS=( "${PN}" )
+
+acct-user_add_deps
diff --git a/acct-user/clamav/metadata.xml b/acct-user/clamav/metadata.xml
new file mode 100644
index 000000000000..45125b9b6e99
--- /dev/null
+++ b/acct-user/clamav/metadata.xml
@@ -0,0 +1,8 @@
+
+
+
+
+ mjo@gentoo.org
+ Michael Orlitzky
+
+
diff --git a/acct-user/ippl/Manifest b/acct-user/ippl/Manifest
new file mode 100644
index 000000000000..e69de29bb2d1
diff --git a/acct-user/ippl/ippl-0.ebuild b/acct-user/ippl/ippl-0.ebuild
new file mode 100644
index 000000000000..24bf022a7c8c
--- /dev/null
+++ b/acct-user/ippl/ippl-0.ebuild
@@ -0,0 +1,12 @@
+# Copyright 2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit acct-user
+
+DESCRIPTION="user for net-analyzer/ippl"
+ACCT_USER_ID=465
+ACCT_USER_GROUPS=( nofiles )
+
+acct-user_add_deps
diff --git a/acct-user/ippl/metadata.xml b/acct-user/ippl/metadata.xml
new file mode 100644
index 000000000000..2c2a7923cfc8
--- /dev/null
+++ b/acct-user/ippl/metadata.xml
@@ -0,0 +1,8 @@
+
+
+
+
+ netmon@gentoo.org
+ Gentoo network monitoring and analysis project
+
+
diff --git a/acct-user/nagios/Manifest b/acct-user/nagios/Manifest
new file mode 100644
index 000000000000..e69de29bb2d1
diff --git a/acct-user/nagios/metadata.xml b/acct-user/nagios/metadata.xml
new file mode 100644
index 000000000000..45125b9b6e99
--- /dev/null
+++ b/acct-user/nagios/metadata.xml
@@ -0,0 +1,8 @@
+
+
+
+
+ mjo@gentoo.org
+ Michael Orlitzky
+
+
diff --git a/acct-user/nagios/nagios-0.ebuild b/acct-user/nagios/nagios-0.ebuild
new file mode 100644
index 000000000000..c092b1d3ae8b
--- /dev/null
+++ b/acct-user/nagios/nagios-0.ebuild
@@ -0,0 +1,11 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit acct-user
+
+ACCT_USER_ID=436
+ACCT_USER_GROUPS=( "${PN}" )
+
+acct-user_add_deps
diff --git a/app-admin/Manifest.gz b/app-admin/Manifest.gz
index 50aa5ed3251e..e29ab638a061 100644
Binary files a/app-admin/Manifest.gz and b/app-admin/Manifest.gz differ
diff --git a/app-admin/docker-bench/Manifest b/app-admin/docker-bench/Manifest
index b123ad1eeab6..ff8a660b8100 100644
--- a/app-admin/docker-bench/Manifest
+++ b/app-admin/docker-bench/Manifest
@@ -1,3 +1,4 @@
+DIST docker-bench-0.2.2.tar.gz 64297 BLAKE2B 12e48e54759e0e71651056ce04f47b5983e65eed2758d07d46e1e709f6b5bf382a74966cd13fe29eb709f3838878e414882e5a103c3bd291d348118bd7f2dcdc SHA512 034951020d003fada3b5d7a0b2c59ea4f2f85ed1d3a4c0e2d054e35dd206ba3e18eaf576b17acaf3b0a3e85182371b6e89ec4c4d0f39122df19a0ec86428fea2
DIST docker-bench-0_p20190822.tar.gz 49441 BLAKE2B ea4d9056f0825c8adc0b87837fdb2087577ab68fbd53189310fd983f2a4155329789c30cd228b043d08e265457a90f0692210eddc87cbe63479f1c2ecf698401 SHA512 6157d9a473f10fc9e593c1cd87b153f1f34e8317bc31787085cca5a5be92efa1b00b386afa73f62a23ef45b39da70fe8345b61fd3955f5cdef82a085df854b27
DIST github.com-aquasecurity-bench-common-81f08528fa03.tar.gz 18981 BLAKE2B 6579a12622870e537a16f467bcfed71ed1c791641e1948caee10a69f8ff7fc28a3f73e48beb8d3b1d274428e498720f528237d07b28fe1319164ab1339852d0e SHA512 b01f88ddb7c119dc9d7e4f7f3e2d9c80b4046dcd65c6d5f2640d28c235c04fbe03b348032584350485f6323920f692cd96ff73e4140faaeb26d7d5b6eb24671f
DIST github.com-fatih-color-v1.7.0.tar.gz 816449 BLAKE2B f006f51cbd1a0288380b339d7d2b493e447aa1e6bd783f11de5670d4db6ff8c1463cbe957a04127c1f24186a9362be8c40ecdf4394cbbc0e2c6c2cb598c012ac SHA512 ee5668ce828ad3e5461c54d971aee4b10a578f697717010d60fdda641948430816e74580563dfea6a4c66a9840175ff5b63c2ca9cf1af213cfac5be7b8ddac36
diff --git a/app-admin/docker-bench/docker-bench-0.2.2.ebuild b/app-admin/docker-bench/docker-bench-0.2.2.ebuild
new file mode 100644
index 000000000000..48beec7a9114
--- /dev/null
+++ b/app-admin/docker-bench/docker-bench-0.2.2.ebuild
@@ -0,0 +1,47 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+inherit bash-completion-r1 go-module
+
+DESCRIPTION="Docker Bench for Security runs the CIS Docker Benchmark"
+HOMEPAGE="https://github.com/aquasecurity/docker-bench"
+
+EGO_VENDOR=(
+ "github.com/aquasecurity/bench-common 81f08528fa03"
+ "github.com/fatih/color v1.7.0"
+ "github.com/fsnotify/fsnotify v1.4.7"
+ "github.com/golang/glog 23def4e6c14b"
+ "github.com/hashicorp/hcl v1.0.0"
+ "github.com/inconshreveable/mousetrap v1.0.0"
+ "github.com/magiconair/properties v1.8.0"
+ "github.com/mattn/go-colorable v0.1.2"
+ "github.com/mattn/go-isatty v0.0.8"
+ "github.com/mitchellh/mapstructure v1.1.2"
+ "github.com/pelletier/go-toml v1.2.0"
+ "github.com/spf13/afero v1.1.2"
+ "github.com/spf13/cast v1.3.0"
+ "github.com/spf13/cobra v0.0.5"
+ "github.com/spf13/jwalterweatherman v1.0.0"
+ "github.com/spf13/pflag v1.0.3"
+ "github.com/spf13/viper v1.4.0"
+ "golang.org/x/sys a9d3bda3a223 github.com/golang/sys"
+ "golang.org/x/text v0.3.0 github.com/golang/text"
+ "gopkg.in/yaml.v2 v2.2.2 github.com/go-yaml/yaml"
+)
+SRC_URI="https://github.com/aquasecurity/docker-bench/archive/v${PV}.tar.gz -> ${P}.tar.gz
+ $(go-module_vendor_uris)"
+
+LICENSE="Apache-2.0 BSD BSD-2 MIT MPL-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+src_compile() {
+ go build -o ${PN} . || die
+}
+
+src_install() {
+ dobin ${PN}
+ insinto /etc/docker-bench/
+ doins -r cfg
+}
diff --git a/app-admin/qtpass/Manifest b/app-admin/qtpass/Manifest
index 671e5ebd0980..f8284027bcd5 100644
--- a/app-admin/qtpass/Manifest
+++ b/app-admin/qtpass/Manifest
@@ -1,2 +1 @@
-DIST qtpass-1.2.3.tar.gz 369412 BLAKE2B 55e8f5e7967b264b20aa044979620631f319e2ff38edcc4e1390ab5d9f35e1e90ff8ff00c94cd35a9b5c05a5ccd8d8fdfc97214e9bd9f564bae1bd80efe0f224 SHA512 d6c3af5b92042a38afecb40689d41c08105dd2a39555f78ebc585a6db6dd65cd8fd6dc637542dd3b5b4ce18f1a852768ffa298b5a461a2d0e4ef4950c58d1649
DIST qtpass-1.3.2.tar.gz 310316 BLAKE2B ac0f562fd263e9d46980a69183cfd556596750e1050dbc50748cd9be45bc4bf39e4de14cb59f778cfc54f5c32050d567d88d65ec039cba1e9c2e8ef24d7ae99a SHA512 9026f74f6ff75fcef2f6a0862484a2a1eaed1370edd0659e8b4d20039affe846e0da3a0a26a804563813bc678638ab67fa516441208e70c7e9de9b2eda876a10
diff --git a/app-admin/qtpass/qtpass-1.2.3.ebuild b/app-admin/qtpass/qtpass-1.2.3.ebuild
deleted file mode 100644
index 287f540e6f53..000000000000
--- a/app-admin/qtpass/qtpass-1.2.3.ebuild
+++ /dev/null
@@ -1,62 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-MY_P="QtPass-${PV}"
-
-inherit desktop qmake-utils virtualx
-
-DESCRIPTION="multi-platform GUI for pass, the standard unix password manager"
-HOMEPAGE="https://qtpass.org/"
-SRC_URI="https://github.com/IJHack/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-RDEPEND="app-admin/pass
- dev-qt/qtcore:5
- dev-qt/qtgui:5[xcb]
- dev-qt/qtnetwork:5
- dev-qt/qtwidgets:5
- net-misc/x11-ssh-askpass"
-DEPEND="${RDEPEND}
- dev-qt/linguist-tools:5
- dev-qt/qtsvg:5
- test? ( dev-qt/qttest:5 )"
-
-S="${WORKDIR}/${MY_P}"
-
-DOCS=( {CHANGELOG,CONTRIBUTING,FAQ,README}.md )
-
-src_prepare() {
- default
-
- if ! use test ; then
- sed -i '/SUBDIRS += src /s/tests //' \
- qtpass.pro || die "sed for qtpass.pro failed"
- fi
-}
-
-src_configure() {
- eqmake5 PREFIX="${D}"/usr
-}
-
-src_test() {
- virtx default
-}
-
-src_install() {
- default
-
- insinto /usr/share/"${PN}"/translations
- doins localization/*.qm
-
- doman "${PN}".1
- domenu "${PN}".desktop
- newicon artwork/icon.png "${PN}"-icon.png
- insinto /usr/share/appdata
- doins qtpass.appdata.xml
-}
diff --git a/app-admin/qtpass/qtpass-1.3.2.ebuild b/app-admin/qtpass/qtpass-1.3.2.ebuild
index dad3a4d82ee6..99fe7179cfbe 100644
--- a/app-admin/qtpass/qtpass-1.3.2.ebuild
+++ b/app-admin/qtpass/qtpass-1.3.2.ebuild
@@ -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://github.com/IJHack/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="GPL-3"
SLOT="0"
-KEYWORDS="~amd64 ~x86"
+KEYWORDS="~amd64 ~ppc64 ~x86"
IUSE="test"
RDEPEND="app-admin/pass
diff --git a/app-admin/rasdaemon/Manifest b/app-admin/rasdaemon/Manifest
index 7d14f3d50523..a1fcfc65ec65 100644
--- a/app-admin/rasdaemon/Manifest
+++ b/app-admin/rasdaemon/Manifest
@@ -1,2 +1,3 @@
DIST rasdaemon-0.6.1.tar.bz2 363201 BLAKE2B bdc7ec3c2e7e4b2fee02dddc55b5afd82df64717f45da15dbfd5fee87721b80ac425af5806ee7462cad29c6ab2953a2e649c4b1e455983d8821a1f633d76c85d SHA512 a221a7ea0e4555befbf8acb9d4ce22d5cc7861a0da458111a24905fa06be0e8f3b18d8de5334310a423657febc0532d2705236de89cb1788302bf487ede29f60
DIST rasdaemon-0.6.2.tar.bz2 375140 BLAKE2B fd22185172777865120fbd13b7bfb5db9b9b0348fe8575ca6b5f16fd662c1e847729e239342b1c9ece70a4e79ad00352bb69d9f80cfbc8da2c961e68874dd03b SHA512 d8c1ee2cc801124837b3a0739f3016a206165306e300ce51e6aac2cef56bb65479f96cdb019ba3a5cffeba94e7b67ca22686d4ac94bfa8a8a1145db6ba51096b
+DIST rasdaemon-0.6.5.tar.bz2 403435 BLAKE2B bc6fa1aea6a6f0190a4f26df936f0ceb4c9b2ae00183ad9239430a018d9c8178e54b016a0aa9d22d97d851b59321b4a27cad7196f1fc22790d15a19c9c06f6e6 SHA512 aa781f3148ae32c8bc7ff8007574912454180725b9b102e1c7c583101dd1fd96debbdc78f3f2a35db45df359c7547cad4d87b490af66f444341c0dc8429c1310
diff --git a/app-admin/rasdaemon/rasdaemon-0.6.5.ebuild b/app-admin/rasdaemon/rasdaemon-0.6.5.ebuild
new file mode 100644
index 000000000000..37e14a241e64
--- /dev/null
+++ b/app-admin/rasdaemon/rasdaemon-0.6.5.ebuild
@@ -0,0 +1,63 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit linux-info systemd
+
+DESCRIPTION="Reliability, Availability and Serviceability logging tool"
+HOMEPAGE="http://www.infradead.org/~mchehab/rasdaemon/"
+SRC_URI="http://www.infradead.org/~mchehab/${PN}/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="sqlite"
+
+DEPEND=""
+RDEPEND="
+ ${DEPEND}
+ sys-devel/gettext
+ sys-apps/dmidecode
+ sqlite? (
+ dev-db/sqlite
+ dev-perl/DBD-SQLite
+ )
+"
+
+pkg_setup() {
+ linux-info_pkg_setup
+ local CONFIG_CHECK="~ACPI_EXTLOG"
+ check_extra_config
+}
+
+src_configure() {
+ local myconf=(
+ $(use_enable sqlite sqlite3)
+ --enable-abrt-report
+ --enable-aer
+ --enable-arm
+ --enable-extlog
+ --enable-hisi-ns-decode
+ --enable-mce
+ --enable-non-standard
+ --enable-devlink
+ --enable-diskerror
+ --includedir="/usr/include/${PN}"
+ --localstatedir=/var
+ )
+
+ econf "${myconf[@]}"
+}
+
+src_install() {
+ default
+
+ keepdir "/var/lib/${PN}"
+
+ systemd_dounit misc/*.service
+
+ newinitd "${FILESDIR}/rasdaemon.openrc-r2" rasdaemon
+ newinitd "${FILESDIR}/ras-mc-ctl.openrc-r1" ras-mc-ctl
+ newconfd "${FILESDIR}"/rasdaemon.confd rasdaemon
+}
diff --git a/app-admin/rsyslog/Manifest b/app-admin/rsyslog/Manifest
index e2c8c0d408bb..d59643847fe2 100644
--- a/app-admin/rsyslog/Manifest
+++ b/app-admin/rsyslog/Manifest
@@ -1,4 +1,6 @@
DIST rsyslog-8.1910.0.tar.gz 2957635 BLAKE2B ea350d3fb923c2f7d2799942fec6a77ef893fa12bc95a5b1428b8e280d96b562cd864469ebf13ee57e9ea89787765a4bb13d155460defc73a3a85b17ad6a5ab1 SHA512 85f5df91a6357ecb38708b4d569d26804a50ca28c928a636ac7749595f1a7105c3450fbd521835a436ebdfdcac33a33986e09a09026745ea4d1a2897406770d5
DIST rsyslog-8.1911.0.tar.gz 2967162 BLAKE2B 6c15436cf6751267de38662b2c5d524dc7f90add4ed1aa7102811d197c2d86847316b58ed626fe0ab2b731c445fbcfb328464a2b1b7c4c3afedccb103267f772 SHA512 8414901a5072cb2cc28d35802c9e22d0f9c88f2ae15985a087a86b0e4053471b02d43bcc95d0c466719105e0a5ee683927af3842b9487f27ddddc1ca00ed713a
+DIST rsyslog-8.2001.0.tar.gz 2999701 BLAKE2B 8b0b0af6a9f8ea53540cd4869ad9ccc6f1adfea3349c4785222d72028101d8e095a7bb0c0496b5026b4144a64cd5d42f547294f03c75a205fa5724e67675ff6e SHA512 a68053630c43bea813cc3191ebff04473031df49899a6be2d5c331ac18882f373fc54fd7fb45c397fcbbcb269f246eeba5e9126911edd1bfe1c52f60921740d2
DIST rsyslog-doc-8.1910.0.tar.gz 8158007 BLAKE2B 7a05cf7070ba350d0fb939350868ff0dd9d03be46ebd1b1261e54add70ab680afe0b356f563ea9e10148aed17667fc0b729e2fa8f7ff7cff3e4cec9d0da209a8 SHA512 e46f14e40ae690efbe3114a859c1c94c8f9573ca5ebdb533ad4b5ed76c3a930c887cc205e7279fcc546fda3ce624eae507ce08d5d10ee1eb167a957edd742bf2
DIST rsyslog-doc-8.1911.0.tar.gz 8183360 BLAKE2B f5681945fb30ddf9c21a60ebafaf99698f10ef4790e76c9f6f329763215d5a1d47918008ade3e8ff8b7d4fb3ce1220cfc6f307ebc1dbf85697c3d92f7b855023 SHA512 2326550a0db108db407b701ff0b7b8545f94d06c1979bfbea3496a9a652de2a22bf49e9b95d4b2e6256bbf1f9db6a1c9822557c6ebd6a56bc00f096a642b19df
+DIST rsyslog-doc-8.2001.0.tar.gz 8200594 BLAKE2B ad0fda200749083a56fd4d731b03982e25ff32a7c6b4ff10f996ee42a46c6985f11fc8265e6992d1d5c86973541d0b0cf15c014460792a4658f45a1a310aee4f SHA512 6d58a67914f65d75eb77411e760b9e49be3723fb6e4ab8951ce28bf83372e3ec7805fac5aef49158fa47c6c4a9109e887bcc46ed3ca0cdc53de4e9b66472be14
diff --git a/app-admin/rsyslog/rsyslog-8.2001.0.ebuild b/app-admin/rsyslog/rsyslog-8.2001.0.ebuild
new file mode 100644
index 000000000000..e86dc3219381
--- /dev/null
+++ b/app-admin/rsyslog/rsyslog-8.2001.0.ebuild
@@ -0,0 +1,462 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="6"
+PYTHON_COMPAT=( python{2_7,3_6,3_7,3_8} )
+
+inherit autotools eutils linux-info python-any-r1 systemd
+
+DESCRIPTION="An enhanced multi-threaded syslogd with database support and more"
+HOMEPAGE="https://www.rsyslog.com/"
+
+if [[ ${PV} == "9999" ]]; then
+ EGIT_REPO_URI="https://github.com/rsyslog/${PN}.git"
+
+ DOC_REPO_URI="https://github.com/rsyslog/${PN}-doc.git"
+
+ inherit git-r3
+else
+ KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~x86"
+
+ SRC_URI="
+ https://www.rsyslog.com/files/download/${PN}/${P}.tar.gz
+ doc? ( https://www.rsyslog.com/files/download/${PN}/${PN}-doc-${PV}.tar.gz )
+ "
+fi
+
+LICENSE="GPL-3 LGPL-3 Apache-2.0"
+SLOT="0"
+IUSE="curl dbi debug doc elasticsearch +gcrypt gnutls jemalloc kafka kerberos kubernetes libressl mdblookup"
+IUSE+=" mongodb mysql normalize clickhouse omhttp omhttpfs omudpspoof openssl postgres"
+IUSE+=" rabbitmq redis relp rfc3195 rfc5424hmac snmp ssl systemd test usertools +uuid xxhash zeromq"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ >=dev-libs/libfastjson-0.99.8:=
+ >=dev-libs/libestr-0.1.9
+ >=sys-libs/zlib-1.2.5
+ curl? ( >=net-misc/curl-7.35.0 )
+ dbi? ( >=dev-db/libdbi-0.8.3 )
+ elasticsearch? ( >=net-misc/curl-7.35.0 )
+ gcrypt? ( >=dev-libs/libgcrypt-1.5.3:= )
+ jemalloc? ( >=dev-libs/jemalloc-3.3.1:= )
+ kafka? ( >=dev-libs/librdkafka-0.9.0.99:= )
+ kerberos? ( virtual/krb5 )
+ kubernetes? ( >=net-misc/curl-7.35.0 )
+ mdblookup? ( dev-libs/libmaxminddb:= )
+ mongodb? ( >=dev-libs/mongo-c-driver-1.1.10:= )
+ mysql? ( dev-db/mysql-connector-c:= )
+ normalize? (
+ >=dev-libs/liblognorm-2.0.3:=
+ )
+ clickhouse? ( >=net-misc/curl-7.35.0 )
+ omhttpfs? ( >=net-misc/curl-7.35.0 )
+ omudpspoof? ( >=net-libs/libnet-1.1.6 )
+ postgres? ( >=dev-db/postgresql-8.4.20:= )
+ rabbitmq? ( >=net-libs/rabbitmq-c-0.3.0:= )
+ redis? ( >=dev-libs/hiredis-0.11.0:= )
+ relp? ( >=dev-libs/librelp-1.2.17:= )
+ rfc3195? ( >=dev-libs/liblogging-1.0.1:=[rfc3195] )
+ rfc5424hmac? (
+ !libressl? ( >=dev-libs/openssl-0.9.8y:0= )
+ libressl? ( dev-libs/libressl:= )
+ )
+ snmp? ( >=net-analyzer/net-snmp-5.7.2 )
+ ssl? (
+ gnutls? ( >=net-libs/gnutls-2.12.23:0= )
+ openssl? (
+ !libressl? ( dev-libs/openssl:0= )
+ libressl? ( dev-libs/libressl:0= )
+ )
+ )
+ systemd? ( >=sys-apps/systemd-234 )
+ uuid? ( sys-apps/util-linux:0= )
+ xxhash? ( dev-libs/xxhash:= )
+ zeromq? (
+ >=net-libs/czmq-3.0.2
+ )"
+DEPEND="${RDEPEND}
+ >=sys-devel/autoconf-archive-2015.02.24
+ virtual/pkgconfig
+ elibc_musl? ( sys-libs/queue-standalone )
+ test? (
+ >=dev-libs/liblogging-1.0.1[stdlog]
+ jemalloc? ( =dev-python/sphinx-1.1.3-r7 )"
+ DEPEND+=" >=sys-devel/flex-2.5.39-r1"
+ DEPEND+=" >=sys-devel/bison-2.4.3"
+ DEPEND+=" >=dev-python/docutils-0.12"
+fi
+
+CONFIG_CHECK="~INOTIFY_USER"
+WARNING_INOTIFY_USER="CONFIG_INOTIFY_USER isn't set. Imfile module on this system will only support polling mode!"
+
+pkg_setup() {
+ use test && python-any-r1_pkg_setup
+}
+
+src_unpack() {
+ if [[ ${PV} == "9999" ]]; then
+ git-r3_fetch
+ git-r3_checkout
+ else
+ unpack ${P}.tar.gz
+ fi
+
+ if use doc; then
+ if [[ ${PV} == "9999" ]]; then
+ local _EGIT_BRANCH=
+ if [[ -n "${EGIT_BRANCH}" ]]; then
+ # Cannot use rsyslog commits/branches for documentation repository
+ _EGIT_BRANCH=${EGIT_BRANCH}
+ unset EGIT_BRANCH
+ fi
+
+ git-r3_fetch "${DOC_REPO_URI}"
+ git-r3_checkout "${DOC_REPO_URI}" "${S}"/docs
+
+ if [[ -n "${_EGIT_BRANCH}" ]]; then
+ # Restore previous EGIT_BRANCH information
+ EGIT_BRANCH=${_EGIT_BRANCH}
+ fi
+ else
+ cd "${S}" || die "Cannot change dir into '${S}'"
+ mkdir docs || die "Failed to create docs directory"
+ cd docs || die "Failed to change dir into '${S}/docs'"
+ unpack ${PN}-doc-${PV}.tar.gz
+ fi
+ fi
+}
+
+src_prepare() {
+ default
+
+ # https://github.com/rsyslog/rsyslog/issues/3626
+ sed -i \
+ -e '\|^#!/bin/bash$|a exit 77' \
+ tests/mmkubernetes-cache-expir*.sh \
+ || die "Failed to disabled known test failure mmkubernetes-cache-expir*.sh"
+
+ eautoreconf
+}
+
+src_configure() {
+ # Maintainer notes:
+ # * Guardtime support is missing because libgt isn't yet available
+ # in portage.
+ # * Hadoop's HDFS file system output module is currently not
+ # supported in Gentoo because nobody is able to test it
+ # (JAVA dependency).
+ # * dev-libs/hiredis doesn't provide pkg-config (see #504614,
+ # upstream PR 129 and 136) so we need to export HIREDIS_*
+ # variables because rsyslog's build system depends on pkg-config.
+
+ if use redis; then
+ export HIREDIS_LIBS="-L${EPREFIX}/usr/$(get_libdir) -lhiredis"
+ export HIREDIS_CFLAGS="-I${EPREFIX}/usr/include"
+ fi
+
+ local myeconfargs=(
+ --disable-debug-symbols
+ --disable-generate-man-pages
+ --without-valgrind-testbench
+ --disable-liblogging-stdlog
+ $(use_enable test testbench)
+ $(use_enable test libfaketime)
+ $(use_enable test extended-tests)
+ # Input Plugins without depedencies
+ --enable-imdiag
+ --enable-imfile
+ --enable-impstats
+ --enable-imptcp
+ # Message Modificiation Plugins without depedencies
+ --enable-mmanon
+ --enable-mmaudit
+ --enable-mmcount
+ --enable-mmfields
+ --enable-mmjsonparse
+ --enable-mmpstrucdata
+ --enable-mmrm1stspace
+ --enable-mmsequence
+ --enable-mmutf8fix
+ # Output Modification Plugins without dependencies
+ --enable-mail
+ --enable-omprog
+ --enable-omruleset
+ --enable-omstdout
+ --enable-omuxsock
+ # Misc
+ --enable-fmhash
+ $(use_enable xxhash fmhash-xxhash)
+ --enable-pmaixforwardedfrom
+ --enable-pmciscoios
+ --enable-pmcisconames
+ --enable-pmlastmsg
+ $(use_enable normalize pmnormalize)
+ --enable-pmnull
+ --enable-pmpanngfw
+ --enable-pmsnare
+ # DB
+ $(use_enable dbi libdbi)
+ $(use_enable mongodb ommongodb)
+ $(use_enable mysql)
+ $(use_enable postgres pgsql)
+ $(use_enable redis omhiredis)
+ # Debug
+ $(use_enable debug)
+ $(use_enable debug diagtools)
+ $(use_enable debug valgrind)
+ # Misc
+ $(use_enable clickhouse)
+ $(use_enable curl fmhttp)
+ $(use_enable elasticsearch)
+ $(use_enable gcrypt libgcrypt)
+ $(use_enable jemalloc)
+ $(use_enable kafka imkafka)
+ $(use_enable kafka omkafka)
+ $(use_enable kerberos gssapi-krb5)
+ $(use_enable kubernetes mmkubernetes)
+ $(use_enable normalize mmnormalize)
+ $(use_enable mdblookup mmdblookup)
+ $(use_enable omhttp)
+ $(use_enable omhttpfs)
+ $(use_enable omudpspoof)
+ $(use_enable rabbitmq omrabbitmq)
+ $(use_enable relp)
+ $(use_enable rfc3195)
+ $(use_enable rfc5424hmac mmrfc5424addhmac)
+ $(use_enable snmp)
+ $(use_enable snmp mmsnmptrapd)
+ $(use_enable gnutls)
+ $(use_enable openssl)
+ $(use_enable systemd imjournal)
+ $(use_enable systemd omjournal)
+ $(use_enable usertools)
+ $(use_enable uuid)
+ $(use_enable zeromq imczmq)
+ $(use_enable zeromq omczmq)
+ --with-systemdsystemunitdir="$(systemd_get_systemunitdir)"
+ )
+
+ econf "${myeconfargs[@]}"
+}
+
+src_compile() {
+ default
+
+ if use doc && [[ "${PV}" == "9999" ]]; then
+ einfo "Building documentation ..."
+ local doc_dir="${S}/docs"
+ cd "${doc_dir}" || die "Cannot chdir into \"${doc_dir}\"!"
+ sphinx-build -b html source build || die "Building documentation failed!"
+ fi
+}
+
+src_test() {
+ local _has_increased_ulimit=
+
+ # Sometimes tests aren't executable (i.e. when added via patch)
+ einfo "Adjusting permissions of test scripts ..."
+ find "${S}"/tests -type f -name '*.sh' \! -perm -111 -exec chmod a+x '{}' \; || \
+ die "Failed to adjust test scripts permission"
+
+ if ulimit -n 3072; then
+ _has_increased_ulimit="true"
+ fi
+
+ if ! emake --jobs 1 check; then
+ eerror "Test suite failed! :("
+
+ if [[ -z "${_has_increased_ulimit}" ]]; then
+ eerror "Probably because open file limit couldn't be set to 3072."
+ fi
+
+ if has userpriv ${FEATURES}; then
+ eerror "Please try to reproduce the test suite failure with FEATURES=-userpriv " \
+ "before you submit a bug report."
+ fi
+
+ fi
+}
+
+src_install() {
+ local DOCS=(
+ AUTHORS
+ ChangeLog
+ "${FILESDIR}"/README.gentoo
+ )
+
+ use doc && local HTML_DOCS=( "${S}/docs/build/." )
+
+ default
+
+ newconfd "${FILESDIR}/${PN}.confd-r1" ${PN}
+ newinitd "${FILESDIR}/${PN}.initd-r1" ${PN}
+
+ keepdir /var/empty/dev
+ keepdir /var/spool/${PN}
+ keepdir /etc/ssl/${PN}
+ keepdir /etc/${PN}.d
+
+ insinto /etc
+ newins "${FILESDIR}/${PN}.conf" ${PN}.conf
+
+ insinto /etc/rsyslog.d/
+ newins "${FILESDIR}/50-default-r1.conf" 50-default.conf
+
+ insinto /etc/logrotate.d/
+ newins "${FILESDIR}/${PN}-r1.logrotate" ${PN}
+
+ if use mysql; then
+ insinto /usr/share/${PN}/scripts/mysql
+ doins plugins/ommysql/createDB.sql
+ fi
+
+ if use postgres; then
+ insinto /usr/share/${PN}/scripts/pgsql
+ doins plugins/ompgsql/createDB.sql
+ fi
+
+ prune_libtool_files --modules
+}
+
+pkg_postinst() {
+ local advertise_readme=0
+
+ if [[ -z "${REPLACING_VERSIONS}" ]]; then
+ # This is a new installation
+
+ advertise_readme=1
+
+ if use mysql || use postgres; then
+ echo
+ elog "Sample SQL scripts for MySQL & PostgreSQL have been installed to:"
+ elog " /usr/share/doc/${PF}/scripts"
+ fi
+
+ if use ssl; then
+ echo
+ elog "To create a default CA and certificates for your server and clients, run:"
+ elog " emerge --config =${PF}"
+ elog "on your logging server. You can run it several times,"
+ elog "once for each logging client. The client certificates will be signed"
+ elog "using the CA certificate generated during the first run."
+ fi
+ fi
+
+ if [[ ${advertise_readme} -gt 0 ]]; then
+ # We need to show the README file location
+
+ echo ""
+ elog "Please read"
+ elog ""
+ elog " ${EPREFIX}/usr/share/doc/${PF}/README.gentoo*"
+ elog ""
+ elog "for more details."
+ fi
+}
+
+pkg_config() {
+ if ! use ssl ; then
+ einfo "There is nothing to configure for rsyslog unless you"
+ einfo "used USE=ssl to build it."
+ return 0
+ fi
+
+ # Make sure the certificates directory exists
+ local CERTDIR="${EROOT}/etc/ssl/${PN}"
+ if [[ ! -d "${CERTDIR}" ]]; then
+ mkdir "${CERTDIR}" || die
+ fi
+ einfo "Your certificates will be stored in ${CERTDIR}"
+
+ # Create a default CA if needed
+ if [[ ! -f "${CERTDIR}/${PN}_ca.cert.pem" ]]; then
+ einfo "No CA key and certificate found in ${CERTDIR}, creating them for you..."
+ certtool --generate-privkey \
+ --outfile "${CERTDIR}/${PN}_ca.privkey.pem" &>/dev/null
+ chmod 400 "${CERTDIR}/${PN}_ca.privkey.pem"
+
+ cat > "${T}/${PF}.$$" <<- _EOF
+ cn = Portage automated CA
+ ca
+ cert_signing_key
+ expiration_days = 3650
+ _EOF
+
+ certtool --generate-self-signed \
+ --load-privkey "${CERTDIR}/${PN}_ca.privkey.pem" \
+ --outfile "${CERTDIR}/${PN}_ca.cert.pem" \
+ --template "${T}/${PF}.$$" &>/dev/null
+ chmod 400 "${CERTDIR}/${PN}_ca.privkey.pem"
+
+ # Create the server certificate
+ echo
+ einfon "Please type the Common Name of the SERVER you wish to create a certificate for: "
+ read -r CN
+
+ einfo "Creating private key and certificate for server ${CN}..."
+ certtool --generate-privkey \
+ --outfile "${CERTDIR}/${PN}_${CN}.key.pem" &>/dev/null
+ chmod 400 "${CERTDIR}/${PN}_${CN}.key.pem"
+
+ cat > "${T}/${PF}.$$" <<- _EOF
+ cn = ${CN}
+ tls_www_server
+ dns_name = ${CN}
+ expiration_days = 3650
+ _EOF
+
+ certtool --generate-certificate \
+ --outfile "${CERTDIR}/${PN}_${CN}.cert.pem" \
+ --load-privkey "${CERTDIR}/${PN}_${CN}.key.pem" \
+ --load-ca-certificate "${CERTDIR}/${PN}_ca.cert.pem" \
+ --load-ca-privkey "${CERTDIR}/${PN}_ca.privkey.pem" \
+ --template "${T}/${PF}.$$" &>/dev/null
+ chmod 400 "${CERTDIR}/${PN}_${CN}.cert.pem"
+
+ else
+ einfo "Found existing ${CERTDIR}/${PN}_ca.cert.pem, skipping CA and SERVER creation."
+ fi
+
+ # Create a client certificate
+ echo
+ einfon "Please type the Common Name of the CLIENT you wish to create a certificate for: "
+ read -r CN
+
+ einfo "Creating private key and certificate for client ${CN}..."
+ certtool --generate-privkey \
+ --outfile "${CERTDIR}/${PN}_${CN}.key.pem" &>/dev/null
+ chmod 400 "${CERTDIR}/${PN}_${CN}.key.pem"
+
+ cat > "${T}/${PF}.$$" <<- _EOF
+ cn = ${CN}
+ tls_www_client
+ dns_name = ${CN}
+ expiration_days = 3650
+ _EOF
+
+ certtool --generate-certificate \
+ --outfile "${CERTDIR}/${PN}_${CN}.cert.pem" \
+ --load-privkey "${CERTDIR}/${PN}_${CN}.key.pem" \
+ --load-ca-certificate "${CERTDIR}/${PN}_ca.cert.pem" \
+ --load-ca-privkey "${CERTDIR}/${PN}_ca.privkey.pem" \
+ --template "${T}/${PF}.$$" &>/dev/null
+ chmod 400 "${CERTDIR}/${PN}_${CN}.cert.pem"
+
+ rm -f "${T}/${PF}.$$"
+
+ echo
+ einfo "Here is the documentation on how to encrypt your log traffic:"
+ einfo " https://www.rsyslog.com/doc/rsyslog_tls.html"
+}
diff --git a/app-admin/sysklogd/sysklogd-9999.ebuild b/app-admin/sysklogd/sysklogd-9999.ebuild
new file mode 100644
index 000000000000..bd1e8726ca4d
--- /dev/null
+++ b/app-admin/sysklogd/sysklogd-9999.ebuild
@@ -0,0 +1,82 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit flag-o-matic systemd toolchain-funcs
+
+DESCRIPTION="Standard log daemons"
+HOMEPAGE="https://troglobit.com/sysklogd.html https://github.com/troglobit/sysklogd"
+
+if [[ "${PV}" == *9999 ]] ; then
+ inherit autotools git-r3
+ EGIT_REPO_URI="https://github.com/troglobit/sysklogd.git"
+else
+ SRC_URI="https://github.com/troglobit/sysklogd/releases/download/v${PV}/${P}.tar.gz"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86"
+fi
+
+LICENSE="BSD"
+SLOT="0"
+IUSE="logger logrotate systemd"
+RESTRICT="test"
+
+DEPEND="
+ logger? (
+ !=sys-apps/util-linux-2.34-r3[logger]
+ )
+"
+RDEPEND="${DEPEND}"
+
+DOCS=( ChangeLog.md README.md )
+
+pkg_setup() {
+ append-lfs-flags
+ tc-export CC
+}
+
+src_prepare() {
+ default
+ [[ "${PV}" == *9999 ]] && eautoreconf
+}
+
+src_configure() {
+ local myeconfargs=(
+ --runstatedir="${EPREFIX}"/run
+ $(use_with logger)
+ $(use_with systemd systemd $(systemd_get_systemunitdir))
+ )
+ econf "${myeconfargs[@]}"
+}
+
+src_install() {
+ default
+
+ insinto /etc
+ doins syslog.conf
+ keepdir /etc/syslog.d
+
+ newinitd "${FILESDIR}"/sysklogd.rc10 sysklogd
+ newconfd "${FILESDIR}"/sysklogd.confd3 sysklogd
+
+ if use logrotate ; then
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}"/sysklogd.logrotate sysklogd
+ sed 's@ -r 10M:10@@' -i "${ED}"/etc/conf.d/sysklogd || die
+ fi
+
+ find "${ED}" -type f \( -name "*.a" -o -name "*.la" \) -delete || die
+}
+
+pkg_postinst() {
+ if ! use logrotate && [[ -n ${REPLACING_VERSIONS} ]] && ver_test ${REPLACING_VERSIONS} -lt 2.0 ; then
+ elog "Starting with version 2.0 syslogd has built in log rotation"
+ elog "functionality that does no longer require a running cron daemon."
+ elog "So we no longer install any log rotation cron files for sysklogd."
+ fi
+ if [[ -n ${REPLACING_VERSIONS} ]] && ver_test ${REPLACING_VERSIONS} -lt 2.1 ; then
+ elog "Starting with version 2.1 sysklogd no longer provides klogd."
+ elog "syslogd now also logs kernel messages."
+ fi
+}
diff --git a/app-admin/systemdgenie/systemdgenie-0.99.0.ebuild b/app-admin/systemdgenie/systemdgenie-0.99.0.ebuild
index 39e93608049b..269737db81ed 100644
--- a/app-admin/systemdgenie/systemdgenie-0.99.0.ebuild
+++ b/app-admin/systemdgenie/systemdgenie-0.99.0.ebuild
@@ -1,32 +1,35 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
-inherit kde5
+KFMIN=5.60.0
+QTMIN=5.12.3
+inherit ecm kde.org
if [[ ${KDE_BUILD_TYPE} = release ]]; then
SRC_URI="mirror://kde/unstable/${PN}/${P}.tar.xz"
KEYWORDS="~amd64"
fi
-DESCRIPTION="systemd managment utility"
+DESCRIPTION="Systemd managment utility"
HOMEPAGE="https://cgit.kde.org/systemdgenie.git"
+
LICENSE="GPL-2+"
-IUSE=""
+SLOT="5"
BDEPEND="sys-devel/gettext"
DEPEND="
- $(add_frameworks_dep kauth)
- $(add_frameworks_dep kconfigwidgets)
- $(add_frameworks_dep kcoreaddons)
- $(add_frameworks_dep kcrash)
- $(add_frameworks_dep ki18n)
- $(add_frameworks_dep kwidgetsaddons)
- $(add_frameworks_dep kxmlgui)
- $(add_qt_dep qtdbus)
- $(add_qt_dep qtgui)
- $(add_qt_dep qtwidgets)
+ >=dev-qt/qtdbus-${QTMIN}:5
+ >=dev-qt/qtgui-${QTMIN}:5
+ >=dev-qt/qtwidgets-${QTMIN}:5
+ >=kde-frameworks/kauth-${KFMIN}:5
+ >=kde-frameworks/kconfigwidgets-${KFMIN}:5
+ >=kde-frameworks/kcoreaddons-${KFMIN}:5
+ >=kde-frameworks/kcrash-${KFMIN}:5
+ >=kde-frameworks/ki18n-${KFMIN}:5
+ >=kde-frameworks/kwidgetsaddons-${KFMIN}:5
+ >=kde-frameworks/kxmlgui-${KFMIN}:5
sys-apps/systemd:=
"
RDEPEND="${DEPEND}"
diff --git a/app-admin/terraform/Manifest b/app-admin/terraform/Manifest
index 2fedad553b59..f1ff47e9b4d4 100644
--- a/app-admin/terraform/Manifest
+++ b/app-admin/terraform/Manifest
@@ -1,6 +1,2 @@
-DIST terraform-0.11.13.tar.gz 10906645 BLAKE2B dafdc1acddd4ea97b41cc5899a541701731fce7b13b914c0859fe148b10b5c8ac877d71b665e8d80a65f376bb09fb8ae6fd0e0263ff711a156ca48119522f89d SHA512 1c16f20d1a65c763f1091ff2d20e0752e62903e07a12d41dd722e5c4c989f477da7d64901336d7536ed1693d5c82f4548ae5a643edae85b4e83325fc8c81b245
-DIST terraform-0.12.11.tar.gz 10338506 BLAKE2B 62c33591d55345e8c3b9c61b6f9279a81f1df86f5942cee787e4b525eefdf7834f0e4a6a42835b4ae038591fd467941454be674a3c1c8b329ef52c7d5e39359b SHA512 2b9fc6157aea8e7159d7089135620433d75843f2b3dd48af18ecb7837a5ca3ea72d9dfb8b36a25a65f9b9cc29b11bc7910f124a359a6589bfb941a714e0b7b23
-DIST terraform-0.12.12.tar.gz 10441883 BLAKE2B c30366c46bc77b7b5c1a44766ce891db01a139e1fa9f936962341d2b9230f85c9137ffc3236e6baad5aad5bada845fd0327846ebfb0c93037ae7c9c46fd70f13 SHA512 58e15da1cc5345e7780573bfeda4a6f34dc281682a0e3f7bf6b129d0db42ff343b79575bb06472e1c994f8d3e3d7e3ab507a4a09f1cfd166690a611af221bd8e
-DIST terraform-0.12.15.tar.gz 10432372 BLAKE2B 9d8d70cf88ef56dbe891be266353fe2eb89b51740e22264f46e0b20785bbb8b6752e2465b02dba79bd9a30a6d0914ddfc7e9b7000f38fcbeb01580d1ac52eec3 SHA512 a63b0acd81e814b679a479ead8afe023d5fca0a925eef6b7ccbfa1916554e47a383dbe73f97d036c0c8ebe3e2289c9001ce24c50eef4e5d5eab3ca48d766150b
-DIST terraform-0.12.16.tar.gz 10435715 BLAKE2B 1f2f221130ebe8df45cdde5fece7773af16b4dfc0a1a336109c9ea3eafcc5f8382069e60b7efe702b9683ab3ed586e1c1fbdbd1582423642485274490df01255 SHA512 8f499843f53a27587b08beb25973fccd08ee84191a53407ee3aa2e9aad483e597791665485a7ed6d7c94f96b611956e83fd610e603a2e8e7732eaa78d3920ed5
DIST terraform-0.12.17.tar.gz 10508005 BLAKE2B facef6de57333586445ce8839c03ccd633fe9ac68619e384b71fff921afeaf260e01b8783d61e4cc04882aa644e8eb706b08c88216f093d85e0fd081363c4103 SHA512 6311fdbf6764e585126a1e177dc498634a799ba1a68ba98682e2be29d14b40c09d0a780555f10bbde0587445d31a1e0d9810226f9e6bd3fcb248428ceb864c87
+DIST terraform-0.12.19.tar.gz 10526213 BLAKE2B 89acdb2e099532a922d49ac3d0049c522b7936817afb7836ebf643ef21fd35f3be495cde5a92ea93add144dada0f54de55b4b42a668bff08c9db789a1d4a77d1 SHA512 3acf327bdbaeddf6f13fc1a2a2335675dd3910137ef685224e7c1eafddf18d0aaa8c24aa3b1b5027b21905d2d87fbe3d49904e196c9881063d01670c4de3db66
diff --git a/app-admin/terraform/terraform-0.11.13.ebuild b/app-admin/terraform/terraform-0.11.13.ebuild
deleted file mode 100644
index ae68474b0f4d..000000000000
--- a/app-admin/terraform/terraform-0.11.13.ebuild
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit golang-vcs-snapshot
-
-DESCRIPTION="A tool for building, changing, and combining infrastructure safely"
-HOMEPAGE="https://www.terraform.io/"
-
-EGO_PN="github.com/hashicorp/${PN}"
-SRC_URI="https://github.com/hashicorp/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MPL-2.0"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-DEPEND=">=dev-lang/go-1.11.0"
-
-DOCS=( README.md CHANGELOG.md )
-
-src_compile() {
- cd "src/${EGO_PN}" || die
- GOPATH="${S}" GOCACHE="${T}/go-cache" go build \
- -v -work -o "${S}/${PN}" ./ || die
-}
-
-src_install() {
- dobin terraform
-
- pushd "src/${EGO_PN}" >/dev/null || die
- einstalldocs
- popd >/dev/null || die
-}
-
-pkg_postinst() {
- elog "If you would like to install shell completions please run:"
- elog " terraform -install-autocomplete"
-}
diff --git a/app-admin/terraform/terraform-0.12.11.ebuild b/app-admin/terraform/terraform-0.12.11.ebuild
deleted file mode 100644
index effc18ec2234..000000000000
--- a/app-admin/terraform/terraform-0.12.11.ebuild
+++ /dev/null
@@ -1,36 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit golang-base go-module
-
-DESCRIPTION="A tool for building, changing, and combining infrastructure safely"
-HOMEPAGE="https://www.terraform.io/"
-
-EGO_PN="github.com/hashicorp/${PN}"
-SRC_URI="https://github.com/hashicorp/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="Apache-2.0 BSD-2 BSD-4 ECL-2.0 imagemagick ISC JSON MIT MIT-with-advertising MPL-2.0 unicode"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-DEPEND=""
-
-DOCS=( {README,CHANGELOG}.md )
-
-src_compile() {
- GOCACHE="${T}/go-cache" go build \
- -work -o "bin/${PN}" ./ || die
-}
-
-src_install() {
- dobin bin/terraform
-
- einstalldocs
-}
-
-pkg_postinst() {
- elog "If you would like to install shell completions please run:"
- elog " terraform -install-autocomplete"
-}
diff --git a/app-admin/terraform/terraform-0.12.12.ebuild b/app-admin/terraform/terraform-0.12.12.ebuild
deleted file mode 100644
index effc18ec2234..000000000000
--- a/app-admin/terraform/terraform-0.12.12.ebuild
+++ /dev/null
@@ -1,36 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit golang-base go-module
-
-DESCRIPTION="A tool for building, changing, and combining infrastructure safely"
-HOMEPAGE="https://www.terraform.io/"
-
-EGO_PN="github.com/hashicorp/${PN}"
-SRC_URI="https://github.com/hashicorp/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="Apache-2.0 BSD-2 BSD-4 ECL-2.0 imagemagick ISC JSON MIT MIT-with-advertising MPL-2.0 unicode"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-DEPEND=""
-
-DOCS=( {README,CHANGELOG}.md )
-
-src_compile() {
- GOCACHE="${T}/go-cache" go build \
- -work -o "bin/${PN}" ./ || die
-}
-
-src_install() {
- dobin bin/terraform
-
- einstalldocs
-}
-
-pkg_postinst() {
- elog "If you would like to install shell completions please run:"
- elog " terraform -install-autocomplete"
-}
diff --git a/app-admin/terraform/terraform-0.12.16.ebuild b/app-admin/terraform/terraform-0.12.16.ebuild
deleted file mode 100644
index 6183146d4a09..000000000000
--- a/app-admin/terraform/terraform-0.12.16.ebuild
+++ /dev/null
@@ -1,45 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit golang-base go-module
-
-DESCRIPTION="A tool for building, changing, and combining infrastructure safely"
-HOMEPAGE="https://www.terraform.io/"
-
-EGO_PN="github.com/hashicorp/${PN}"
-SRC_URI="https://github.com/hashicorp/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="Apache-2.0 BSD-2 BSD-4 ECL-2.0 imagemagick ISC JSON MIT MIT-with-advertising MPL-2.0 unicode"
-SLOT="0"
-KEYWORDS="~amd64"
-
-RESTRICT="test"
-
-DOCS=( {README,CHANGELOG}.md )
-
-src_prepare() {
- default
- # the sed command is necessary to generate tests outside of the
- # default git root of `terraform', in our case the working dir
- # is `work/$PN-$PV'
- # sed -i -e "s/!=\s\+\"terraform\"/!=\ \"${P}\"/" \
- # ./scripts/generate-plugins.go || die
-}
-
-src_compile() {
- GOCACHE="${T}/go-cache" go build \
- -work -o "bin/${PN}" ./ || die
-}
-
-src_install() {
- dobin bin/terraform
-
- einstalldocs
-}
-
-pkg_postinst() {
- elog "If you would like to install shell completions please run:"
- elog " terraform -install-autocomplete"
-}
diff --git a/app-admin/terraform/terraform-0.12.17.ebuild b/app-admin/terraform/terraform-0.12.17.ebuild
index 6183146d4a09..16e496f4ef87 100644
--- a/app-admin/terraform/terraform-0.12.17.ebuild
+++ b/app-admin/terraform/terraform-0.12.17.ebuild
@@ -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
@@ -13,7 +13,7 @@ SRC_URI="https://github.com/hashicorp/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz
LICENSE="Apache-2.0 BSD-2 BSD-4 ECL-2.0 imagemagick ISC JSON MIT MIT-with-advertising MPL-2.0 unicode"
SLOT="0"
-KEYWORDS="~amd64"
+KEYWORDS="amd64"
RESTRICT="test"
diff --git a/app-admin/terraform/terraform-0.12.15.ebuild b/app-admin/terraform/terraform-0.12.19.ebuild
similarity index 96%
rename from app-admin/terraform/terraform-0.12.15.ebuild
rename to app-admin/terraform/terraform-0.12.19.ebuild
index 6183146d4a09..4196f78931b6 100644
--- a/app-admin/terraform/terraform-0.12.15.ebuild
+++ b/app-admin/terraform/terraform-0.12.19.ebuild
@@ -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
diff --git a/app-antivirus/Manifest.gz b/app-antivirus/Manifest.gz
index ab421b27f70c..a1f841c7cf30 100644
Binary files a/app-antivirus/Manifest.gz and b/app-antivirus/Manifest.gz differ
diff --git a/app-antivirus/clamav-unofficial-sigs/clamav-unofficial-sigs-6.0.1-r2.ebuild b/app-antivirus/clamav-unofficial-sigs/clamav-unofficial-sigs-6.0.1-r3.ebuild
similarity index 75%
rename from app-antivirus/clamav-unofficial-sigs/clamav-unofficial-sigs-6.0.1-r2.ebuild
rename to app-antivirus/clamav-unofficial-sigs/clamav-unofficial-sigs-6.0.1-r3.ebuild
index 694d3dc7418e..88d2fd74ec5d 100644
--- a/app-antivirus/clamav-unofficial-sigs/clamav-unofficial-sigs-6.0.1-r2.ebuild
+++ b/app-antivirus/clamav-unofficial-sigs/clamav-unofficial-sigs-6.0.1-r3.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
-inherit user systemd
+inherit systemd
DESCRIPTION="Download and install third-party clamav signatures"
HOMEPAGE="https://github.com/extremeshok/clamav-unofficial-sigs"
@@ -14,6 +14,12 @@ SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE="cron"
+# Require acct-{user,group}/clamav at build time so that we can set
+# the permissions on /var/lib/${PN} in src_install rather than in
+# pkg_postinst; calling "chown" on the live filesystem scares me.
+DEPEND="acct-group/clamav
+ acct-user/clamav"
+
# The script relies on either net-misc/socat, or Perl's
# IO::Socket::UNIX. We already depend on Perl, and Gentoo's Perl ships
# with IO::Socket::UNIX, so we can leave out net-misc/socat here.
@@ -26,12 +32,6 @@ RDEPEND="${DEPEND}
src_install() {
dosbin "${PN}.sh"
- # The script's working directory (set in the conf file). By default,
- # it runs as clamav/clamav. We set the owner/group later, in
- # pkg_preinst, after the user/group is sure to exist (because we
- # create them otherwise).
- keepdir "/var/lib/${PN}"
-
insinto /etc/logrotate.d
doins "${FILESDIR}/${PN}.logrotate"
@@ -57,15 +57,12 @@ src_install() {
# the timer is disabled by default (and won't annoy people until
# after they've configured the script).
systemd_dounit "${FILESDIR}/${PN}".{service,timer}
-}
-pkg_preinst() {
- # Should agree with app-antivirus/clamav. We don't actually need
- # clamav to function, so it isn't one of our dependencies, and
- # that's why we might need to create its user ourselves.
- enewgroup clamav
- enewuser clamav -1 -1 /dev/null clamav
- fowners clamav:clamav "/var/lib/${PN}"
+ # The script's working directory, as set in the configuration
+ # file. By default, the script runs as clamav:clamav because
+ # it needs write access to the clamav databases.
+ diropts -o clamav -g clamav
+ keepdir "/var/lib/${PN}"
}
pkg_postinst() {
diff --git a/app-antivirus/clamav/clamav-0.102.1-r2.ebuild b/app-antivirus/clamav/clamav-0.102.1-r3.ebuild
similarity index 92%
rename from app-antivirus/clamav/clamav-0.102.1-r2.ebuild
rename to app-antivirus/clamav/clamav-0.102.1-r3.ebuild
index 8a85bf5c1129..ea67c867663a 100644
--- a/app-antivirus/clamav/clamav-0.102.1-r2.ebuild
+++ b/app-antivirus/clamav/clamav-0.102.1-r3.ebuild
@@ -3,7 +3,7 @@
EAPI=6
-inherit autotools eutils flag-o-matic user systemd
+inherit autotools eutils flag-o-matic systemd
DESCRIPTION="Clam Anti-Virus Scanner"
HOMEPAGE="https://www.clamav.net/"
@@ -15,7 +15,12 @@ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-l
IUSE="bzip2 doc clamdtop clamsubmit iconv ipv6 libclamav-only libressl milter metadata-analysis-api selinux static-libs test uclibc xml"
RESTRICT="!test? ( test )"
-CDEPEND="bzip2? ( app-arch/bzip2 )
+# Require acct-{user,group}/clamav at build time so that we can set
+# the permissions on /var/lib/clamav in src_install rather than in
+# pkg_postinst; calling "chown" on the live filesystem scares me.
+CDEPEND="acct-group/clamav
+ acct-user/clamav
+ bzip2? ( app-arch/bzip2 )
clamdtop? ( sys-libs/ncurses:0 )
iconv? ( virtual/libiconv )
metadata-analysis-api? ( dev-libs/json-c:= )
@@ -51,11 +56,6 @@ PATCHES=(
"${FILESDIR}/${PN}-0.102.1-libxml2_pkgconfig.patch" #661328
)
-pkg_setup() {
- enewgroup clamav
- enewuser clamav -1 -1 /dev/null clamav
-}
-
src_prepare() {
default
eautoconf
@@ -117,11 +117,6 @@ src_install() {
systemd_dounit "${FILESDIR}/clamd.service"
systemd_dounit "${FILESDIR}/freshclamd.service"
- keepdir /var/lib/clamav
- fowners clamav:clamav /var/lib/clamav
- keepdir /var/log/clamav
- fowners clamav:clamav /var/log/clamav
-
dodir /etc/logrotate.d
insinto /etc/logrotate.d
newins "${FILESDIR}"/clamav.logrotate clamav
@@ -177,6 +172,12 @@ src_install() {
done
prune_libtool_files --all
+
+ # These both need to be writable by the clamav user.
+ # TODO: use syslog by default; that's what it's for.
+ diropts -o clamav -g clamav
+ keepdir /var/lib/clamav
+ keepdir /var/log/clamav
}
src_test() {
diff --git a/app-arch/Manifest.gz b/app-arch/Manifest.gz
index 34d3055eb234..950fbc67ff02 100644
Binary files a/app-arch/Manifest.gz and b/app-arch/Manifest.gz differ
diff --git a/app-arch/innoextract/innoextract-1.8.ebuild b/app-arch/innoextract/innoextract-1.8.ebuild
index b5df9fba5b81..5c58d878b0ff 100644
--- a/app-arch/innoextract/innoextract-1.8.ebuild
+++ b/app-arch/innoextract/innoextract-1.8.ebuild
@@ -3,7 +3,7 @@
EAPI=7
-inherit cmake-utils
+inherit cmake
DESCRIPTION="A tool to unpack installers created by Inno Setup"
HOMEPAGE="https://constexpr.org/innoextract/"
@@ -29,5 +29,5 @@ src_configure() {
-DWITH_CONV=$(usex iconv iconv builtin)
)
- cmake-utils_src_configure
+ cmake_src_configure
}
diff --git a/app-arch/unzip/unzip-6.0_p25.ebuild b/app-arch/unzip/unzip-6.0_p25.ebuild
index 4bd9d56efc02..949b4d054989 100644
--- a/app-arch/unzip/unzip-6.0_p25.ebuild
+++ b/app-arch/unzip/unzip-6.0_p25.ebuild
@@ -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
@@ -16,7 +16,7 @@ SRC_URI="mirror://sourceforge/infozip/${MY_P}.tar.gz
LICENSE="Info-ZIP"
SLOT="0"
-KEYWORDS="alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ~ppc ppc64 ~riscv s390 ~sh sparc ~x86 ~x86-linux"
+KEYWORDS="alpha amd64 arm arm64 hppa ia64 ~m68k ~mips ~ppc ppc64 ~riscv s390 ~sh sparc ~x86 ~x86-linux"
IUSE="bzip2 natspec unicode"
DEPEND="bzip2? ( app-arch/bzip2 )
diff --git a/app-backup/Manifest.gz b/app-backup/Manifest.gz
index 3f7672f5e5d1..112e98794224 100644
Binary files a/app-backup/Manifest.gz and b/app-backup/Manifest.gz differ
diff --git a/app-backup/bacula/Manifest b/app-backup/bacula/Manifest
index ecbc84f770f2..12f451283698 100644
--- a/app-backup/bacula/Manifest
+++ b/app-backup/bacula/Manifest
@@ -1,4 +1,3 @@
-DIST bacula-5.2.13.tar.gz 4243395 BLAKE2B 5cad5d2675f8a2dd28a76c1a4e4c649d1bf9b031e5e4febfb537a72a0481c2f7c3e80d39b84657238bc147b58174ce544749aed70882f66678edfaa2fb51ac2f SHA512 dfdff353f5b6ed4d85013dc292526706bbd67066f7057a114012172926c819c8df1eb8779166d5a90db3a49a5584f0a8daf7566cc93cf4fa3f1bdda245b55cf0
DIST bacula-9.0.8.tar.gz 4475511 BLAKE2B be321a2a215cc2b127423cf8d103303957c7064ba4453f0da8b82b3c23a38d45df7ee0e434da8a010911976812b23886fcf366d0dee9f1880c0f14fa641c1937 SHA512 4041525f594e23bfb231ea182a680899020347dd26e1d7f6d05c9f97aac8000a1bbeb9acaf2f73b283616fe03caf38fbb335b0e65e6a18e0322ca64da6f98e64
DIST bacula-9.2.2.tar.gz 4115575 BLAKE2B affc6efa3543836690e3d89eb37faa2d5066344308dc29a22c491374f04a2fd00bedb57a869d0bcf8a0f58d806bc9f9b9381330c22984ddb4d5acd97b757d2c8 SHA512 390ac0ad205c3694fe02c6842740b188bde0be469d0a9b89388d3f75746c7cca6a536a2386e06a5069c84863f28dae3449250ff71e63b9ff14e8f7b074df1708
DIST bacula-9.4.1.tar.gz 4162956 BLAKE2B f3fdd2ab64dc4fe50210d83a80ce16f36996f6d23bb67326e8bcee97ae9fd83b2dc8a96eabcd86c522c5e1ca5b8923110e97c03be953427a5c5f59140fdea332 SHA512 5e05a939c5f457a121879a6108ce2ac6403dde556b415af4e5013e4f100cf4d878f3d468fd680fa1633a4c8d6ce3d7a6ed351a1600ef780166cd4be9b70191ee
diff --git a/app-backup/bacula/bacula-5.2.13-r7.ebuild b/app-backup/bacula/bacula-5.2.13-r7.ebuild
deleted file mode 100644
index 5f8d6be96216..000000000000
--- a/app-backup/bacula/bacula-5.2.13-r7.ebuild
+++ /dev/null
@@ -1,397 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-PYTHON_COMPAT=( python2_7 )
-PYTHON_REQ_USE="threads"
-
-inherit eutils multilib python-single-r1 systemd user libtool
-
-MY_PV=${PV/_beta/-b}
-MY_P=${PN}-${MY_PV}
-
-DESCRIPTION="Featureful client/server network backup suite"
-HOMEPAGE="https://www.bacula.org/"
-SRC_URI="mirror://sourceforge/bacula/${MY_P}.tar.gz"
-
-LICENSE="AGPL-3"
-SLOT="0"
-KEYWORDS="~amd64 ~ppc ~sparc ~x86"
-IUSE="acl bacula-clientonly bacula-nodir bacula-nosd examples ipv6 libressl logwatch mysql postgres python readline +sqlite ssl static tcpd vim-syntax X"
-
-DEPEND="
- dev-libs/gmp:0
- !bacula-clientonly? (
- postgres? ( dev-db/postgresql:=[threads] )
- mysql? ( dev-db/mysql-connector-c:= )
- sqlite? ( dev-db/sqlite:3 )
- !bacula-nodir? ( virtual/mta )
- )
- logwatch? ( sys-apps/logwatch )
- tcpd? ( >=sys-apps/tcp-wrappers-7.6 )
- readline? ( sys-libs/readline:0 )
- static? (
- acl? ( virtual/acl[static-libs] )
- sys-libs/zlib[static-libs]
- dev-libs/lzo[static-libs]
- sys-libs/ncurses:=[static-libs]
- ssl? (
- !libressl? ( dev-libs/openssl:0=[static-libs] )
- libressl? ( dev-libs/libressl:0=[static-libs] )
- )
- )
- !static? (
- acl? ( virtual/acl )
- sys-libs/zlib
- dev-libs/lzo
- sys-libs/ncurses:=
- ssl? (
- !libressl? ( dev-libs/openssl:0= )
- libressl? ( dev-libs/libressl:0= )
- )
- )
- python? ( ${PYTHON_DEPS} )
- "
-RDEPEND="${DEPEND}
- !bacula-clientonly? (
- !bacula-nosd? (
- sys-block/mtx
- app-arch/mt-st
- )
- )
- vim-syntax? ( || ( app-editors/vim app-editors/gvim ) )"
-
-REQUIRED_USE="!bacula-clientonly? ( ^^ ( mysql postgres sqlite ) )
- static? ( bacula-clientonly )
- python? ( ${PYTHON_REQUIRED_USE} )"
-
-S=${WORKDIR}/${MY_P}
-
-pkg_setup() {
- #XOR and !bacula-clientonly controlled by REQUIRED_USE
- use mysql && export mydbtype="mysql"
- use postgres && export mydbtype="postgresql"
- use sqlite && export mydbtype="sqlite3"
-
- # create the daemon group and user
- if [ -z "$(egetent group bacula 2>/dev/null)" ]; then
- enewgroup bacula
- einfo
- einfo "The group 'bacula' has been created. Any users you add to this"
- einfo "group have access to files created by the daemons."
- einfo
- fi
-
- if ! use bacula-clientonly; then
- if [ -z "$(egetent passwd bacula 2>/dev/null)" ]; then
- enewuser bacula -1 -1 /var/lib/bacula bacula,disk,tape,cdrom,cdrw
- einfo
- einfo "The user 'bacula' has been created. Please see the bacula manual"
- einfo "for information about running bacula as a non-root user."
- einfo
- fi
- fi
-
- use python && python-single-r1_pkg_setup
-}
-
-src_prepare() {
- # adjusts default configuration files for several binaries
- # to /etc/bacula/ instead of ./
- pushd src >&/dev/null || die
- for f in console/console.c dird/dird.c filed/filed.c \
- stored/bcopy.c stored/bextract.c stored/bls.c \
- stored/bscan.c stored/btape.c stored/stored.c \
- qt-console/main.cpp; do
- sed -i -e 's|^\(#define CONFIG_FILE "\)|\1/etc/bacula/|g' "${f}" \
- || die "sed on ${f} failed"
- done
- popd >&/dev/null || die
-
- # bug 466688 drop deprecated categories from Desktop file
- sed -i -e 's/Application;//' scripts/bat.desktop.in || die
-
- # bug 466690 Use CXXFLAGS instead of CFLAGS
- sed -i -e 's/@CFLAGS@/@CXXFLAGS@/' autoconf/Make.common.in || die
-
- # drop automatic install of unneeded documentation (for bug 356499)
- epatch "${FILESDIR}"/5.2.3/${PN}-5.2.3-doc.patch
-
- # bug #310087
- epatch "${FILESDIR}"/5.2.3/${PN}-5.2.3-as-needed.patch
-
- # bug #311161
- epatch "${FILESDIR}"/5.2.3/${PN}-5.2.3-lib-search-path.patch
-
- # stop build for errors in subdirs
- epatch "${FILESDIR}"/5.2.3/${PN}-5.2.3-Makefile.patch
-
- # bat needs to respect LDFLAGS
- epatch "${FILESDIR}"/5.2.3/${PN}-5.2.3-ldflags.patch
-
- # bug #328701
- epatch "${FILESDIR}"/5.2.3/${PN}-5.2.3-openssl-1.patch
-
- epatch "${FILESDIR}"/5.2.10/${PN}-5.2.10-fix-static.patch
-
- # do not strip binaries
- sed -i -e "s/strip /# strip /" src/filed/Makefile.in || die
- sed -i -e "s/strip /# strip /" src/console/Makefile.in || die
-
- # fix file not found error during make depend
- epatch "${FILESDIR}"/5.2.12/${PN}-5.2.12-depend.patch
-
- # Fix systemd unit files:
- # bug 497748
- sed -i -e '/Requires/d' platforms/systemd/*.service.in || die
- sed -i -e '/StandardOutput/d' platforms/systemd/*.service.in || die
- # bug 504370
- sed -i -e '/Alias=bacula-dir/d' platforms/systemd/bacula-dir.service.in || die
- # bug 584442 and 504368
- sed -i -e 's/@dir_user@/root/g' platforms/systemd/bacula-dir.service.in || die
-
- # Fix tmpfiles config for client-only (no bacula user) install
- # NOTE: Change only first occurance (user) not second (group)
- # bug 528398 and 577486
- if use bacula-clientonly; then
- sed -i -e 's/bacula/root/' platforms/systemd/bacula.conf.in || die
- fi
-
- # fix bundled libtool (bug 466696)
- # But first move directory with M4 macros out of the way.
- # It is only needed by autoconf and gives errors during elibtoolize.
- mv autoconf/libtool autoconf/libtool1 || die
- elibtoolize
-}
-
-src_configure() {
- local myconf=''
-
- if use bacula-clientonly; then
- myconf="${myconf} \
- $(use_enable bacula-clientonly client-only) \
- $(use_enable !static libtool) \
- $(use_enable static static-cons) \
- $(use_enable static static-fd)"
- else
- myconf="${myconf} \
- $(use_enable !bacula-nodir build-dird) \
- $(use_enable !bacula-nosd build-stored)"
- # bug #311099
- # database support needed by dir-only *and* sd-only
- # build as well (for building bscan, btape, etc.)
- myconf="${myconf} \
- --with-${mydbtype} \
- --enable-batch-insert"
- fi
-
- myconf="${myconf} \
- --disable-tray-monitor \
- $(use_with X x) \
- $(use_with python) \
- $(use_enable !readline conio) \
- $(use_enable readline) \
- $(use_with readline readline /usr) \
- $(use_with ssl openssl) \
- $(use_enable ipv6) \
- $(use_enable acl) \
- $(use_with tcpd tcp-wrappers)"
-
- econf \
- --libdir=/usr/$(get_libdir) \
- --docdir=/usr/share/doc/${PF} \
- --htmldir=/usr/share/doc/${PF}/html \
- --with-pid-dir=/var/run \
- --sysconfdir=/etc/bacula \
- --with-subsys-dir=/var/lock/subsys \
- --with-working-dir=/var/lib/bacula \
- --with-logdir=/var/lib/bacula \
- --with-scriptdir=/usr/libexec/bacula \
- --with-systemd=$(systemd_get_unitdir) \
- --with-dir-user=bacula \
- --with-dir-group=bacula \
- --with-sd-user=root \
- --with-sd-group=bacula \
- --with-fd-user=root \
- --with-fd-group=bacula \
- --enable-smartalloc \
- --disable-afs \
- --host=${CHOST} \
- ${myconf}
-}
-
-src_compile() {
- # Make build log verbose (bug #447806)
- emake NO_ECHO=""
-}
-
-src_install() {
- emake DESTDIR="${D}" install
- doicon scripts/bacula.png
-
- # remove some scripts we don't need at all
- rm -f "${D}"/usr/libexec/bacula/{bacula,bacula-ctl-dir,bacula-ctl-fd,bacula-ctl-sd,startmysql,stopmysql}
-
- # rename statically linked apps
- if use bacula-clientonly && use static ; then
- pushd "${D}"/usr/sbin || die
- mv static-bacula-fd bacula-fd || die
- mv static-bconsole bconsole || die
- popd || die
- fi
-
- # extra files which 'make install' doesn't cover
- if ! use bacula-clientonly; then
- # the database update scripts
- diropts -m0750
- insinto /usr/libexec/bacula/updatedb
- insopts -m0754
- doins "${S}"/updatedb/*
- fperms 0640 /usr/libexec/bacula/updatedb/README
-
- # the logrotate configuration
- # (now unconditional wrt bug #258187)
- diropts -m0755
- insinto /etc/logrotate.d
- insopts -m0644
- newins "${S}"/scripts/logrotate bacula
-
- # the logwatch scripts
- if use logwatch; then
- diropts -m0750
- dodir /etc/log.d/scripts/services
- dodir /etc/log.d/scripts/shared
- dodir /etc/log.d/conf/logfiles
- dodir /etc/log.d/conf/services
- pushd "${S}"/scripts/logwatch >&/dev/null || die
- emake DESTDIR="${D}" install
- popd >&/dev/null || die
- fi
- fi
-
- rm -vf "${D}"/usr/share/man/man1/bacula-bwxconsole.1*
- rm -vf "${D}"/usr/share/man/man1/bat.1*
- rm -vf "${D}"/usr/share/man/man1/bacula-tray-monitor.1*
- if use bacula-clientonly || use bacula-nodir; then
- rm -vf "${D}"/usr/share/man/man8/bacula-dir.8*
- rm -vf "${D}"/usr/share/man/man8/dbcheck.8*
- rm -vf "${D}"/usr/share/man/man1/bsmtp.1*
- rm -vf "${D}"/usr/libexec/bacula/create_*_database
- rm -vf "${D}"/usr/libexec/bacula/drop_*_database
- rm -vf "${D}"/usr/libexec/bacula/make_*_tables
- rm -vf "${D}"/usr/libexec/bacula/update_*_tables
- rm -vf "${D}"/usr/libexec/bacula/drop_*_tables
- rm -vf "${D}"/usr/libexec/bacula/grant_*_privileges
- rm -vf "${D}"/usr/libexec/bacula/*_catalog_backup
- fi
- if use bacula-clientonly || use bacula-nosd; then
- rm -vf "${D}"/usr/share/man/man8/bacula-sd.8*
- rm -vf "${D}"/usr/share/man/man8/bcopy.8*
- rm -vf "${D}"/usr/share/man/man8/bextract.8*
- rm -vf "${D}"/usr/share/man/man8/bls.8*
- rm -vf "${D}"/usr/share/man/man8/bscan.8*
- rm -vf "${D}"/usr/share/man/man8/btape.8*
- rm -vf "${D}"/usr/libexec/bacula/disk-changer
- rm -vf "${D}"/usr/libexec/bacula/mtx-changer
- rm -vf "${D}"/usr/libexec/bacula/dvd-handler
- fi
-
- # documentation
- dodoc ChangeLog ReleaseNotes SUPPORT technotes
-
- # install examples (bug #457504)
- if use examples; then
- docinto examples/
- dodoc -r examples/*
- fi
-
- # vim-files
- if use vim-syntax; then
- insinto /usr/share/vim/vimfiles/syntax
- doins scripts/bacula.vim
- insinto /usr/share/vim/vimfiles/ftdetect
- newins scripts/filetype.vim bacula_ft.vim
- fi
-
- # setup init scripts
- myscripts="bacula-fd"
- if ! use bacula-clientonly; then
- if ! use bacula-nodir; then
- myscripts="${myscripts} bacula-dir"
- fi
- if ! use bacula-nosd; then
- myscripts="${myscripts} bacula-sd"
- fi
- fi
- for script in ${myscripts}; do
- # copy over init script and config to a temporary location
- # so we can modify them as needed
- cp "${FILESDIR}/${script}".confd "${T}/${script}".confd || die "failed to copy ${script}.confd"
- cp "${FILESDIR}/${script}".initd "${T}/${script}".initd || die "failed to copy ${script}.initd"
-
- # now set the database dependancy for the director init script
- case "${script}" in
- bacula-dir)
- case "${mydbtype}" in
- sqlite3)
- # sqlite databases don't have a daemon
- sed -i -e 's/need "%database%"/:/g' "${T}/${script}".initd || die
- ;;
- *)
- # all other databases have daemons
- sed -i -e "s:%database%:${mydbtype}:" "${T}/${script}".initd || die
- ;;
- esac
- ;;
- *)
- ;;
- esac
-
- # install init script and config
- newinitd "${T}/${script}".initd "${script}"
- newconfd "${T}/${script}".confd "${script}"
- done
-
- systemd_dounit "${S}"/platforms/systemd/bacula-{dir,fd,sd}.service
- systemd_dotmpfilesd "${S}"/platforms/systemd/bacula.conf
-
- # make sure the working directory exists
- diropts -m0750
- keepdir /var/lib/bacula
-
- # make sure bacula group can execute bacula libexec scripts
- fowners -R root:bacula /usr/libexec/bacula
-}
-
-pkg_postinst() {
- if use bacula-clientonly; then
- fowners root:bacula /var/lib/bacula
- else
- fowners bacula:bacula /var/lib/bacula
- fi
-
- einfo
- einfo "This Revision 6 of bacula-5.2.13 dropped support for building 'bat' as"
- einfo "Qt4 is not longer supported by Gentoo. Please use it only for installations"
- einfo "requiring an old file demon."
- einfo
- if ! use bacula-clientonly && ! use bacula-nodir; then
- einfo
- einfo "If this is a new install, you must create the ${mydbtype} databases with:"
- einfo " /usr/libexec/bacula/create_${mydbtype}_database"
- einfo " /usr/libexec/bacula/make_${mydbtype}_tables"
- einfo " /usr/libexec/bacula/grant_${mydbtype}_privileges"
- einfo
- fi
-
- if use sqlite; then
- einfo
- einfo "Be aware that Bacula does not officially support SQLite database anymore."
- einfo "Best use it only for a client-only installation. See Bug #445540."
- einfo
- fi
-
- einfo "Please note that 'bconsole' will always be installed."
- einfo
-}
diff --git a/app-backup/bacula/files/5.2.10/bacula-5.2.10-fix-static.patch b/app-backup/bacula/files/5.2.10/bacula-5.2.10-fix-static.patch
deleted file mode 100644
index 458c188733a4..000000000000
--- a/app-backup/bacula/files/5.2.10/bacula-5.2.10-fix-static.patch
+++ /dev/null
@@ -1,56 +0,0 @@
---- src/console/Makefile.in.orig 2011-10-30 14:10:41.100802721 -0400
-+++ src/console/Makefile.in 2011-10-30 14:14:42.330488174 -0400
-@@ -29,10 +29,11 @@
- GETTEXT_LIBS = @LIBINTL@
-
- CONS_INC=@CONS_INC@
- CONS_LIBS=@CONS_LIBS@
- CONS_LDFLAGS=@CONS_LDFLAGS@
-+ZLIBS=@ZLIBS@
-
- .SUFFIXES: .c .o
- .PHONY:
- .DONTCARE:
-
-@@ -46,17 +47,17 @@
- @echo " "
-
-
- bconsole: Makefile $(CONSOBJS) ../lib/libbac$(DEFAULT_ARCHIVE_TYPE) ../lib/libbaccfg$(DEFAULT_ARCHIVE_TYPE)
- $(LIBTOOL_LINK) $(CXX) -L../lib -L../cats $(LDFLAGS) $(CONS_LDFLAGS) -o $@ $(CONSOBJS) \
-- $(DLIB) $(CONS_LIBS) -lbaccfg -lbac -lm $(LIBS) $(GETTEXT_LIBS) \
-- $(OPENSSL_LIBS)
-+ $(DLIB) $(CONS_LIBS) -lbaccfg -lbac -lm $(ZLIBS) $(GETTEXT_LIBS) \
-+ $(OPENSSL_LIBS) $(LIBS)
-
- static-bconsole: Makefile $(CONSOBJS) ../lib/libbac.a ../lib/libbaccfg$(DEFAULT_ARCHIVE_TYPE)
- $(LIBTOOL_LINK) $(CXX) -static $(LDFLAGS) $(CONS_LDFLAGS) -L../lib -L../cats -o $@ $(CONSOBJS) \
-- $(DLIB) $(CONS_LIBS) -lbaccfg -lbac -lm $(LIBS) $(GETTEXT_LIBS) \
-- $(OPENSSL_LIBS)
-+ $(DLIB) $(CONS_LIBS) -lbaccfg -lbac -lm $(ZLIBS) $(GETTEXT_LIBS) \
-+ $(OPENSSL_LIBS) $(LIBS) $(ZLIBS)
- strip $@
-
-
- Makefile: $(srcdir)/Makefile.in $(topdir)/config.status
- cd $(topdir) \
---- src/filed/Makefile.in.orig 2012-06-28 16:52:03.000000000 +0200
-+++ src/filed/Makefile.in 2012-08-16 11:08:09.000000000 +0200
-@@ -96,13 +96,13 @@
- bacula-fd: Makefile $(SVROBJS) ../findlib/libbacfind$(DEFAULT_ARCHIVE_TYPE) ../lib/libbacpy$(DEFAULT_ARCHIVE_TYPE) ../lib/libbaccfg$(DEFAULT_ARCHIVE_TYPE) ../lib/libbac$(DEFAULT_ARCHIVE_TYPE) @WIN32@
- @echo "Linking $@ ..."
- $(LIBTOOL_LINK) $(CXX) $(WLDFLAGS) $(LDFLAGS) -L../lib -L../findlib -o $@ $(SVROBJS) \
-- $(WIN32LIBS) $(FDLIBS) $(ZLIBS) -lbacfind -lbacpy -lbaccfg -lbac -lm $(PYTHON_LIBS) $(LIBS) \
-- $(DLIB) $(WRAPLIBS) $(GETTEXT_LIBS) $(OPENSSL_LIBS) $(CAP_LIBS) $(AFS_LIBS) $(LZOLIBS)
-+ $(WIN32LIBS) $(FDLIBS) $(ZLIBS) -lbacfind -lbacpy -lbaccfg -lbac -lm $(PYTHON_LIBS) \
-+ $(DLIB) $(WRAPLIBS) $(GETTEXT_LIBS) $(OPENSSL_LIBS) $(LIBS) $(CAP_LIBS) $(AFS_LIBS) $(LZOLIBS)
-
- static-bacula-fd: Makefile $(SVROBJS) ../findlib/libbacfind.a ../lib/libbacpy$(DEFAULT_ARCHIVE_TYPE) ../lib/libbaccfg$(DEFAULT_ARCHIVE_TYPE) ../lib/libbac$(DEFAULT_ARCHIVE_TYPE) @WIN32@
- $(LIBTOOL_LINK) $(CXX) $(WLDFLAGS) $(LDFLAGS) -static -L../lib -L../findlib -o $@ $(SVROBJS) \
-- $(WIN32LIBS) $(FDLIBS) $(ZLIBS) -lbacfind -lbacpy -lbaccfg -lbac -lm $(PYTHON_LIBS) $(LIBS) \
-- $(DLIB) $(WRAPLIBS) $(GETTEXT_LIBS) $(OPENSSL_LIBS) $(CAP_LIBS) $(AFS_LIBS) $(LZOLIBS)
-+ $(WIN32LIBS) $(FDLIBS) $(ZLIBS) -lbacfind -lbacpy -lbaccfg -lbac -lm $(PYTHON_LIBS) \
-+ $(DLIB) $(WRAPLIBS) $(GETTEXT_LIBS) $(OPENSSL_LIBS) $(LIBS) $(CAP_LIBS) $(AFS_LIBS) $(LZOLIBS)
- strip $@
-
- Makefile: $(srcdir)/Makefile.in $(topdir)/config.status
diff --git a/app-backup/bacula/files/5.2.12/bacula-5.2.12-depend.patch b/app-backup/bacula/files/5.2.12/bacula-5.2.12-depend.patch
deleted file mode 100644
index 8c419a3bdfac..000000000000
--- a/app-backup/bacula/files/5.2.12/bacula-5.2.12-depend.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-# fix file not found error during make depend
---- src/tools/Makefile.in.orig 2012-09-20 20:42:54.000000000 +0200
-+++ src/tools/Makefile.in 2012-09-20 20:35:46.000000000 +0200
-@@ -194,7 +194,7 @@
- @$(MV) Makefile Makefile.bak
- @$(SED) "/^# DO NOT DELETE:/,$$ d" Makefile.bak > Makefile
- @$(ECHO) "# DO NOT DELETE: nice dependency list follows" >> Makefile
-- @$(CXX) -S -M $(CPPFLAGS) $(PYTHON_INC) -I$(srcdir) -I$(basedir) *.c >> Makefile
-+ @$(CXX) -S -M $(CPPFLAGS) $(PYTHON_INC) -I$(srcdir) -I$(basedir) -I../filed -I../dird -I../stored *.c >> Makefile
- @if test -f Makefile ; then \
- $(RMF) Makefile.bak; \
- else \
diff --git a/app-backup/bacula/files/5.2.3/bacula-5.2.3-Makefile.patch b/app-backup/bacula/files/5.2.3/bacula-5.2.3-Makefile.patch
deleted file mode 100644
index 3cdee15d4db7..000000000000
--- a/app-backup/bacula/files/5.2.3/bacula-5.2.3-Makefile.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-# stop build if there are errors in subdirs
---- Makefile.in.orig 2010-07-20 16:53:44.000000000 +0000
-+++ Makefile.in 2010-07-20 16:55:50.000000000 +0000
-@@ -44,9 +44,8 @@
-
- all: Makefile
- @for I in ${all_subdirs}; \
-- do (cd $$I; echo "==>Entering directory `pwd`"; \
-- $(MAKE) DESTDIR=$(DESTDIR) $@ || (echo ""; echo ""; echo " ====== Error in `pwd` ======"; \
-- echo ""; echo ""; exit 1;)); \
-+ do \
-+ $(MAKE) DESTDIR=$(DESTDIR) -C $$I $@ || exit 1; \
- done
-
- depend:
-@@ -55,9 +54,8 @@
-
- bacula-fd: Makefile
- @for I in ${fd_subdirs}; \
-- do (cd $$I; echo "==>Entering directory `pwd`"; \
-- $(MAKE) DESTDIR=$(DESTDIR) all || (echo ""; echo ""; echo " ====== Error in `pwd` ======"; \
-- echo ""; echo ""; exit 1;)); \
-+ do \
-+ $(MAKE) DESTDIR=$(DESTDIR) -C $$I all || exit 1; \
- done
-
- #-------------------------------------------------------------------------
diff --git a/app-backup/bacula/files/5.2.3/bacula-5.2.3-doc.patch b/app-backup/bacula/files/5.2.3/bacula-5.2.3-doc.patch
deleted file mode 100644
index 98c6e6ce34be..000000000000
--- a/app-backup/bacula/files/5.2.3/bacula-5.2.3-doc.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-# drop automatic installation of doc files
---- Makefile.in.orig 2011-02-26 09:05:21.000000000 +0000
-+++ Makefile.in 2011-02-26 09:06:01.000000000 +0000
-@@ -34,8 +34,7 @@
- autoconf/config.h.in autoconf/acconfig.h autoconf/Make.common.in \
- autoconf/install-sh autoconf/mkinstalldirs
-
--doc_files = VERIFYING technotes ChangeLog README ReleaseNotes LICENSE \
-- INSTALL
-+doc_files =
-
- MKDIR = $(srcdir)/autoconf/mkinstalldirs
- LIBTOOL_DEPS = @LIBTOOL_DEPS@
diff --git a/app-backup/bacula/files/5.2.3/bacula-5.2.3-ldflags.patch b/app-backup/bacula/files/5.2.3/bacula-5.2.3-ldflags.patch
deleted file mode 100644
index 94d8fb60120e..000000000000
--- a/app-backup/bacula/files/5.2.3/bacula-5.2.3-ldflags.patch
+++ /dev/null
@@ -1,11 +0,0 @@
-# bat needs to respect LDFLAGS
---- src/qt-console/bat.pro.in.orig 2010-07-20 18:28:50.000000000 +0000
-+++ src/qt-console/bat.pro.in 2010-07-20 18:29:25.000000000 +0000
-@@ -26,6 +26,7 @@
- QMAKE_LINK = $${LIBTOOL_LINK} $(CXX)
- QMAKE_INSTALL_PROGRAM = $${LIBTOOL_INSTALL} install -m @SBINPERM@ -p
- QMAKE_CLEAN += .libs/* bat
-+QMAKE_LFLAGS += @LDFLAGS@
-
- qwt {
- INCLUDEPATH += @QWT_INC@
diff --git a/app-backup/bacula/files/5.2.3/bacula-5.2.3-lib-search-path.patch b/app-backup/bacula/files/5.2.3/bacula-5.2.3-lib-search-path.patch
deleted file mode 100644
index c3bded40ad03..000000000000
--- a/app-backup/bacula/files/5.2.3/bacula-5.2.3-lib-search-path.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-# If upgrading the old libraries gets linked first. So fix order of lib search path.
---- src/console/Makefile.in.orig 2010-03-29 11:35:00.000000000 +0000
-+++ src/console/Makefile.in 2010-03-29 11:45:14.000000000 +0000
-@@ -47,7 +47,7 @@
-
-
- bconsole: Makefile $(CONSOBJS) ../lib/libbac$(DEFAULT_ARCHIVE_TYPE) ../lib/libbaccfg$(DEFAULT_ARCHIVE_TYPE)
-- $(LIBTOOL_LINK) $(CXX) $(LDFLAGS) $(CONS_LDFLAGS) -L../lib -L../cats -o $@ $(CONSOBJS) \
-+ $(LIBTOOL_LINK) $(CXX) -L../lib -L../cats $(LDFLAGS) $(CONS_LDFLAGS) -o $@ $(CONSOBJS) \
- $(DLIB) $(CONS_LIBS) -lbaccfg -lbac -lm $(LIBS) $(GETTEXT_LIBS) \
- $(OPENSSL_LIBS)
-
diff --git a/app-crypt/Manifest.gz b/app-crypt/Manifest.gz
index dc8bfe6c99b2..685d2a7a02eb 100644
Binary files a/app-crypt/Manifest.gz and b/app-crypt/Manifest.gz differ
diff --git a/app-crypt/keybase/Manifest b/app-crypt/keybase/Manifest
index 3e0ca9975f9a..6979905ca94d 100644
--- a/app-crypt/keybase/Manifest
+++ b/app-crypt/keybase/Manifest
@@ -1,5 +1,5 @@
-DIST keybase-3.0.0.tar.gz 47018995 BLAKE2B 73aaa00a94af707dc7e0713c4e0a5b2d7d7ae8a6ebd6fecae6bfdaf7c011b0d6cbea472940f718316aff45da4c4eccde73c15df6a77229bd09be704ebb949ca1 SHA512 40ddbd6fc5201bbca087490022b021e6abc201dc428327e8974953d0e5cd403324cebf1ace29a22126eee0d1e36f84e85d443a236a7271ccdd79605abfe6fa72
DIST keybase-4.4.2.tar.gz 57819398 BLAKE2B 0852aa850ad4d66457a123e97449ae24081b695b2a6a70aa0b7ad928d59aa163b9a199e806090586579cc87ee77ebd5dcb18fb137b57aec7d61007be1cba51b5 SHA512 5eccfde7cfa35277fae71c4527c0d93bcedd0657311a9c055e50330a97a24e8c339aa3778e6e926f1230542c898e6a27c4fad18c4e2486c084c6b8d58eb2e125
DIST keybase-4.5.0.tar.gz 60207510 BLAKE2B 11acd22139fa33988a13cce3db62c7000aedb9d157de37d589a450910628a9325edd38a5dab150b7b053112e3f40930c0e569be6c990cff559bdc64dd0d34376 SHA512 5299d7eab28d487299200a97beb894a2254a2d6a525053b9acac8bd2088e581097bdb8515c9d37ed54ce3f27996e0dacd5ef943acef3c976646c85f00003bf52
DIST keybase-4.7.0.tar.gz 63827539 BLAKE2B 237a638b9b4e6dad9a0b0e0146d355f94ea87c459e64edca4253dd8f2eba4ba959a0d1e4ebd768b6572d0ab9c4f05abed539a3d8a778b23ae840a202e3fc6144 SHA512 4dc49b102f7d18345c960081a0a8cfa4d36f19159ec09ab468eb3c86e0ec2c259e9c4b2b769ea57c555c79f3cfb457c7896ca05bf185c9c5725f9458377e4048
DIST keybase-4.7.2.tar.gz 63834062 BLAKE2B e4d2977982d60e191e51ea54b64d52930524a71d1159da15fac8280a4be866d51804a928b2db60fee211a9ba499a6af63a7ae2698d7879ed2eaa3704cd7f49ab SHA512 4d43e2ab222b8c82fc97c15c52c718323ea19ffb2be35d19b5f631960d452f8cfe2ac48bd87e13f8e03587a7ed32ded233774a3230bafced7adb6c6f2818c891
+DIST keybase-5.1.1.tar.gz 65387553 BLAKE2B 8207fb1113a8585d562c19a9d886083b9bec57091f83dee52d4fbc735020be1dd9fc3194c29f4a736ee04fb1550cd03f3d9c4ef6b112aa1b6399e1200e3771ac SHA512 8a1bab428b3c41e7cdb45f5ea68a6c86067c9324c07ea71704bde8a5b5ae478a8468cb8d8638a41b7067b2ab5dc825d2aa28c4e7be4f33e3e3a41c942d852e09
diff --git a/app-crypt/keybase/keybase-3.0.0.ebuild b/app-crypt/keybase/keybase-5.1.1.ebuild
similarity index 90%
rename from app-crypt/keybase/keybase-3.0.0.ebuild
rename to app-crypt/keybase/keybase-5.1.1.ebuild
index f2abdbb420ff..243bc44f883b 100644
--- a/app-crypt/keybase/keybase-3.0.0.ebuild
+++ b/app-crypt/keybase/keybase-5.1.1.ebuild
@@ -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=6
@@ -9,15 +9,13 @@ DESCRIPTION="Client for keybase.io"
HOMEPAGE="https://keybase.io/"
SRC_URI="https://github.com/keybase/client/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-LICENSE="BSD"
+LICENSE="Apache-2.0 BSD BSD-2 LGPL-3 MIT MPL-2.0"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE=""
-DEPEND="
- ~app-crypt/kbfs-2.11.0"
-RDEPEND="
- app-crypt/gnupg"
+DEPEND=""
+RDEPEND="app-crypt/gnupg"
src_unpack() {
unpack "${P}.tar.gz"
diff --git a/app-doc/Manifest.gz b/app-doc/Manifest.gz
index b337fdafb53a..c25e8f77eb70 100644
Binary files a/app-doc/Manifest.gz and b/app-doc/Manifest.gz differ
diff --git a/app-doc/elisp-manual/Manifest b/app-doc/elisp-manual/Manifest
index 5867d1441643..7d3323abc281 100644
--- a/app-doc/elisp-manual/Manifest
+++ b/app-doc/elisp-manual/Manifest
@@ -11,3 +11,4 @@ DIST elisp-manual-23.4-patches-1.tar.xz 1140 BLAKE2B 9e2ef06022acde6a3022c51aec2
DIST elisp-manual-23.4.tar.xz 686868 BLAKE2B 8a46615227c0693568021a9f065c3546465c2f148c49ef2bd4ef0b47e71d122659203bd4a96c14fdd1f83cb7eb7b410656d593efc51e3743b229c6fd5dabeca5 SHA512 bf71dd18cdce1dce8880b9e67276d9cb71ef54023b5ef2f6555c85c1ffe9b9b8f0d7434227643564c9403fe484bfaeac10ea8911f9c53a9acb3d502eddc1d62d
DIST elisp-manual-24.5.tar.xz 766300 BLAKE2B a93293646a4ddf8d9f9d3b7e1179178427c5cbf50e1ecf164158a5a0c5332b6bc49b1b91b5b6d2064db973f71dc104a94d9c0389589382ca80e63edf7696d14d SHA512 205d48eff9a044883e433e86ec0add188727300582d82deb0b0507327098a8038fef8803457e88fd0c5c9523fc4b621704507bc463409ee30f7b046251363e65
DIST elisp-manual-25.3.tar.xz 806544 BLAKE2B 15d98b6dcc104dfeba66a3dd61489957a0339dfe43c7b09196814e48c7ff525930881805c0a6fb325ba66dc60fd5390b82d2c116ee08413b234e905c737bbe54 SHA512 85da76efef7645e13633a77fef8e775f42ebc8afad6eb5ab4bc839a12d1c1708430beaba8b89c152049700aa580abf1eaea539f2784a74486df380a59c3d6528
+DIST elisp-manual-26.3.tar.xz 872288 BLAKE2B b7860ea1b7745f28cd3b391d03109239c09aef09f334db485c62756af6907d93a3ba77a92f7a105e003053aac7dca398467239af76d9feb3291bb1dd42d17af2 SHA512 94779be36b9d0e10f75def88faead6cce934f95887e9310c27413bf89f7e61a081978d6164cfe781a5c8dbde9696ac1e08046a82e77420aa07b9ffca45ccc40c
diff --git a/app-doc/elisp-manual/elisp-manual-26.3.ebuild b/app-doc/elisp-manual/elisp-manual-26.3.ebuild
new file mode 100644
index 000000000000..d2a4ef6799ba
--- /dev/null
+++ b/app-doc/elisp-manual/elisp-manual-26.3.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+DESCRIPTION="The GNU Emacs Lisp Reference Manual"
+HOMEPAGE="https://www.gnu.org/software/emacs/manual/"
+# taken from doc/lispref/ (and some files from doc/emacs/) of emacs-${PV}
+SRC_URI="https://dev.gentoo.org/~ulm/emacs/${P}.tar.xz"
+
+LICENSE="FDL-1.3+"
+SLOT="26"
+KEYWORDS="~amd64 ~ppc ~x86"
+
+DEPEND="sys-apps/texinfo"
+
+S="${WORKDIR}/lispref"
+PATCHES=("${FILESDIR}/${P}-direntry.patch")
+
+src_compile() {
+ makeinfo -I "${WORKDIR}"/emacs elisp.texi || die
+}
+
+src_install() {
+ doinfo elisp${SLOT}.info*
+ dodoc README
+}
diff --git a/app-doc/elisp-manual/files/elisp-manual-26.3-direntry.patch b/app-doc/elisp-manual/files/elisp-manual-26.3-direntry.patch
new file mode 100644
index 000000000000..4ce926fc5c4d
--- /dev/null
+++ b/app-doc/elisp-manual/files/elisp-manual-26.3-direntry.patch
@@ -0,0 +1,22 @@
+--- lispref-orig/elisp.texi
++++ lispref/elisp.texi
+@@ -1,6 +1,6 @@
+ \input texinfo @c -*-texinfo-*-
+ @c %**start of header
+-@setfilename ../../info/elisp.info
++@setfilename elisp26.info
+
+ @ifset VOL1
+ @set volflag
+@@ -116,9 +116,9 @@
+ @end quotation
+ @end copying
+
+-@dircategory Emacs lisp
++@dircategory Emacs
+ @direntry
+-* Elisp: (elisp). The Emacs Lisp Reference Manual.
++* Elisp 26: (elisp26). The Emacs Lisp Reference Manual for Emacs 26.
+ @end direntry
+
+ @titlepage
diff --git a/app-editors/Manifest.gz b/app-editors/Manifest.gz
index 900498fedeb4..94347db8db39 100644
Binary files a/app-editors/Manifest.gz and b/app-editors/Manifest.gz differ
diff --git a/app-editors/emacs-vcs/emacs-vcs-27.0.9999.ebuild b/app-editors/emacs-vcs/emacs-vcs-27.0.9999.ebuild
deleted file mode 100644
index 8b8852bab94b..000000000000
--- a/app-editors/emacs-vcs/emacs-vcs-27.0.9999.ebuild
+++ /dev/null
@@ -1,414 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit autotools elisp-common flag-o-matic multilib readme.gentoo-r1
-
-if [[ ${PV##*.} = 9999 ]]; then
- inherit git-r3
- EGIT_REPO_URI="https://git.savannah.gnu.org/git/emacs.git"
- EGIT_BRANCH="master"
- EGIT_CHECKOUT_DIR="${WORKDIR}/emacs"
- S="${EGIT_CHECKOUT_DIR}"
-else
- SRC_URI="https://dev.gentoo.org/~ulm/distfiles/emacs-${PV}.tar.xz
- mirror://gnu-alpha/emacs/pretest/emacs-${PV}.tar.xz"
- KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~s390 ~sh ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
- # FULL_VERSION keeps the full version number, which is needed in
- # order to determine some path information correctly for copy/move
- # operations later on
- FULL_VERSION="${PV%%_*}"
- S="${WORKDIR}/emacs-${FULL_VERSION}"
- [[ ${FULL_VERSION} != ${PV} ]] && S="${WORKDIR}/emacs"
-fi
-
-DESCRIPTION="The extensible, customizable, self-documenting real-time display editor"
-HOMEPAGE="https://www.gnu.org/software/emacs/"
-
-LICENSE="GPL-3+ FDL-1.3+ BSD HPND MIT W3C unicode PSF-2"
-SLOT="27"
-IUSE="acl alsa aqua athena cairo dbus dynamic-loading games gconf gfile gif +gmp gpm gsettings gtk gtk2 gzip-el harfbuzz imagemagick +inotify jpeg json kerberos lcms libxml2 livecd m17n-lib mailutils motif png selinux sound source ssl svg systemd +threads tiff toolkit-scroll-bars wide-int X Xaw3d xft +xpm xwidgets zlib"
-REQUIRED_USE="?? ( aqua X )"
-RESTRICT="test"
-
-RDEPEND="sys-libs/ncurses:0=
- >=app-eselect/eselect-emacs-1.16
- >=app-emacs/emacs-common-gentoo-1.5[games?,X?]
- acl? ( virtual/acl )
- alsa? ( media-libs/alsa-lib )
- dbus? ( sys-apps/dbus )
- games? ( acct-group/gamestat )
- gmp? ( dev-libs/gmp:0= )
- gpm? ( sys-libs/gpm )
- !inotify? ( gfile? ( >=dev-libs/glib-2.28.6 ) )
- json? ( dev-libs/jansson )
- kerberos? ( virtual/krb5 )
- lcms? ( media-libs/lcms:2 )
- libxml2? ( >=dev-libs/libxml2-2.2.0 )
- mailutils? ( net-mail/mailutils[clients] )
- !mailutils? ( net-libs/liblockfile )
- selinux? ( sys-libs/libselinux )
- ssl? ( net-libs/gnutls:0= )
- systemd? ( sys-apps/systemd )
- zlib? ( sys-libs/zlib )
- X? (
- x11-libs/libICE
- x11-libs/libSM
- x11-libs/libX11
- x11-libs/libXext
- x11-libs/libXfixes
- x11-libs/libXinerama
- x11-libs/libXrandr
- x11-libs/libxcb
- x11-misc/xbitmaps
- gconf? ( >=gnome-base/gconf-2.26.2 )
- gsettings? ( >=dev-libs/glib-2.28.6 )
- gif? ( media-libs/giflib:0= )
- jpeg? ( virtual/jpeg:0= )
- png? ( >=media-libs/libpng-1.4:0= )
- svg? ( >=gnome-base/librsvg-2.0 )
- tiff? ( media-libs/tiff:0 )
- xpm? ( x11-libs/libXpm )
- imagemagick? ( >=media-gfx/imagemagick-6.6.2:0= )
- xft? (
- media-libs/fontconfig
- media-libs/freetype
- x11-libs/libXft
- x11-libs/libXrender
- cairo? ( >=x11-libs/cairo-1.12.18 )
- harfbuzz? ( media-libs/harfbuzz:0= )
- m17n-lib? (
- >=dev-libs/libotf-0.9.4
- >=dev-libs/m17n-lib-1.5.1
- )
- )
- gtk? (
- gtk2? ( x11-libs/gtk+:2 )
- !gtk2? (
- x11-libs/gtk+:3
- xwidgets? (
- net-libs/webkit-gtk:4=
- x11-libs/libXcomposite
- )
- )
- )
- !gtk? (
- motif? (
- >=x11-libs/motif-2.3:0
- x11-libs/libXpm
- x11-libs/libXmu
- x11-libs/libXt
- )
- !motif? (
- Xaw3d? (
- x11-libs/libXaw3d
- x11-libs/libXmu
- x11-libs/libXt
- )
- !Xaw3d? ( athena? (
- x11-libs/libXaw
- x11-libs/libXmu
- x11-libs/libXt
- ) )
- )
- )
- )"
-
-DEPEND="${RDEPEND}
- X? ( x11-base/xorg-proto )"
-
-BDEPEND="virtual/pkgconfig
- gzip-el? ( app-arch/gzip )"
-
-if [[ ${PV##*.} = 9999 ]]; then
- BDEPEND="${BDEPEND}
- sys-apps/texinfo"
-fi
-
-EMACS_SUFFIX="${PN/emacs/emacs-${SLOT}}"
-SITEFILE="20${PN}-${SLOT}-gentoo.el"
-
-src_prepare() {
- if [[ ${PV##*.} = 9999 ]]; then
- FULL_VERSION=$(sed -n 's/^AC_INIT([^,]*,[ \t]*\([^ \t,)]*\).*/\1/p' \
- configure.ac)
- [[ ${FULL_VERSION} ]] || die "Cannot determine current Emacs version"
- einfo "Emacs branch: ${EGIT_BRANCH}"
- einfo "Commit: ${EGIT_VERSION}"
- einfo "Emacs version number: ${FULL_VERSION}"
- [[ ${FULL_VERSION} =~ ^${PV%.*}(\..*)?$ ]] \
- || die "Upstream version number changed to ${FULL_VERSION}"
- fi
-
- eapply_user
-
- # Fix filename reference in redirected man page
- sed -i -e "/^\\.so/s/etags/&-${EMACS_SUFFIX}/" doc/man/ctags.1 || die
-
- AT_M4DIR=m4 eautoreconf
-}
-
-src_configure() {
- strip-flags
- filter-flags -pie #526948
-
- if use sh; then
- replace-flags "-O[1-9]" -O0 #262359
- elif use ia64; then
- replace-flags "-O[2-9]" -O1 #325373
- else
- replace-flags "-O[3-9]" -O2
- fi
-
- local myconf
-
- if use alsa; then
- use sound || ewarn \
- "USE flag \"alsa\" overrides \"-sound\"; enabling sound support."
- myconf+=" --with-sound=alsa"
- else
- myconf+=" --with-sound=$(usex sound oss)"
- fi
-
- if use X; then
- myconf+=" --with-x --without-ns"
- myconf+=" $(use_with gconf)"
- myconf+=" $(use_with gsettings)"
- myconf+=" $(use_with toolkit-scroll-bars)"
- myconf+=" $(use_with gif)"
- myconf+=" $(use_with jpeg)"
- myconf+=" $(use_with png)"
- myconf+=" $(use_with svg rsvg)"
- myconf+=" $(use_with tiff)"
- myconf+=" $(use_with xpm)"
- myconf+=" $(use_with imagemagick)"
-
- if use xft; then
- myconf+=" --with-xft"
- myconf+=" $(use_with cairo)"
- myconf+=" $(use_with harfbuzz)"
- myconf+=" $(use_with m17n-lib libotf)"
- myconf+=" $(use_with m17n-lib m17n-flt)"
- else
- myconf+=" --without-xft"
- myconf+=" --without-cairo"
- myconf+=" --without-libotf --without-m17n-flt"
- use cairo && ewarn \
- "USE flag \"cairo\" has no effect if \"xft\" is not set."
- use m17n-lib && ewarn \
- "USE flag \"m17n-lib\" has no effect if \"xft\" is not set."
- fi
-
- local f line
- if use gtk; then
- einfo "Configuring to build with GIMP Toolkit (GTK+)"
- while read line; do ewarn "${line}"; done <<-EOF
- Your version of GTK+ will have problems with closing open
- displays. This is no problem if you just use one display, but
- if you use more than one and close one of them Emacs may crash.
- See .
- If you intend to use more than one display, then it is strongly
- recommended that you compile Emacs with the Athena/Lucid or the
- Motif toolkit instead.
- EOF
- if use gtk2; then
- myconf+=" --with-x-toolkit=gtk2 --without-xwidgets"
- use xwidgets && ewarn \
- "USE flag \"xwidgets\" has no effect if \"gtk2\" is set."
- else
- myconf+=" --with-x-toolkit=gtk3 $(use_with xwidgets)"
- fi
- for f in motif Xaw3d athena; do
- use ${f} && ewarn \
- "USE flag \"${f}\" has no effect if \"gtk\" is set."
- done
- elif use motif; then
- einfo "Configuring to build with Motif toolkit"
- myconf+=" --with-x-toolkit=motif"
- for f in Xaw3d athena; do
- use ${f} && ewarn \
- "USE flag \"${f}\" has no effect if \"motif\" is set."
- done
- elif use athena || use Xaw3d; then
- einfo "Configuring to build with Athena/Lucid toolkit"
- myconf+=" --with-x-toolkit=lucid $(use_with Xaw3d xaw3d)"
- else
- einfo "Configuring to build with no toolkit"
- myconf+=" --with-x-toolkit=no"
- fi
- if ! use gtk; then
- use gtk2 && ewarn \
- "USE flag \"gtk2\" has no effect if \"gtk\" is not set."
- use xwidgets && ewarn \
- "USE flag \"xwidgets\" has no effect if \"gtk\" is not set."
- fi
- elif use aqua; then
- einfo "Configuring to build with Nextstep (Cocoa) support"
- myconf+=" --with-ns --disable-ns-self-contained"
- myconf+=" --without-x"
- else
- myconf+=" --without-x --without-ns"
- fi
-
- econf \
- --program-suffix="-${EMACS_SUFFIX}" \
- --includedir="${EPREFIX}"/usr/include/${EMACS_SUFFIX} \
- --infodir="${EPREFIX}"/usr/share/info/${EMACS_SUFFIX} \
- --localstatedir="${EPREFIX}"/var \
- --enable-locallisppath="${EPREFIX}/etc/emacs:${EPREFIX}${SITELISP}" \
- --without-compress-install \
- --without-hesiod \
- --without-pop \
- --with-dumping=pdumper \
- --with-file-notification=$(usev inotify || usev gfile || echo no) \
- $(use_enable acl) \
- $(use_with dbus) \
- $(use_with dynamic-loading modules) \
- $(use_with games gameuser ":gamestat") \
- $(use_with gmp libgmp) \
- $(use_with gpm) \
- $(use_with json) \
- $(use_with kerberos) $(use_with kerberos kerberos5) \
- $(use_with lcms lcms2) \
- $(use_with libxml2 xml2) \
- $(use_with mailutils) \
- $(use_with selinux) \
- $(use_with ssl gnutls) \
- $(use_with systemd libsystemd) \
- $(use_with threads) \
- $(use_with wide-int) \
- $(use_with zlib) \
- ${myconf}
-}
-
-#src_compile() {
-# # Disable sandbox when dumping. For the unbelievers, see bug #131505
-# emake RUN_TEMACS="SANDBOX_ON=0 LD_PRELOAD= env ./temacs"
-#}
-
-src_install () {
- emake DESTDIR="${D}" NO_BIN_LINK=t install
-
- mv "${ED}"/usr/bin/{emacs-${FULL_VERSION}-,}${EMACS_SUFFIX} || die
- mv "${ED}"/usr/share/man/man1/{emacs-,}${EMACS_SUFFIX}.1 || die
- mv "${ED}"/usr/share/metainfo/{emacs-,}${EMACS_SUFFIX}.appdata.xml || die
-
- # move info dir to avoid collisions with the dir file generated by portage
- mv "${ED}"/usr/share/info/${EMACS_SUFFIX}/dir{,.orig} || die
- touch "${ED}"/usr/share/info/${EMACS_SUFFIX}/.keepinfodir
- docompress -x /usr/share/info/${EMACS_SUFFIX}/dir.orig
-
- # avoid collision between slots, see bug #169033 e.g.
- rm "${ED}"/usr/share/emacs/site-lisp/subdirs.el
- rm -rf "${ED}"/usr/share/{appdata,applications,icons}
- rm -rf "${ED}/usr/$(get_libdir)"
- rm -rf "${ED}"/var
-
- # remove unused /site-lisp dir
- rm -rf "${ED}"/usr/share/emacs/${FULL_VERSION}/site-lisp
-
- # remove COPYING file (except for etc/COPYING used by describe-copying)
- rm "${ED}"/usr/share/emacs/${FULL_VERSION}/lisp/COPYING
-
- if use systemd; then
- insinto /usr/lib/systemd/user
- sed -e "/^##/d" \
- -e "/^ExecStart/s,emacs,${EPREFIX}/usr/bin/${EMACS_SUFFIX}," \
- -e "/^ExecStop/s,emacsclient,${EPREFIX}/usr/bin/&-${EMACS_SUFFIX}," \
- etc/emacs.service | newins - ${EMACS_SUFFIX}.service
- assert
- fi
-
- if use gzip-el; then
- # compress .el files when a corresponding .elc exists
- find "${ED}"/usr/share/emacs/${FULL_VERSION}/lisp -type f \
- -name "*.elc" -print | sed 's/\.elc$/.el/' | xargs gzip -9n
- assert "gzip .el failed"
- fi
-
- local cdir
- if use source; then
- cdir="/usr/share/emacs/${FULL_VERSION}/src"
- insinto "${cdir}"
- # This is not meant to install all the source -- just the
- # C source you might find via find-function
- doins src/*.{c,h,m}
- elif has installsources ${FEATURES}; then
- cdir="/usr/src/debug/${CATEGORY}/${PF}/${S#"${WORKDIR}/"}/src"
- fi
-
- sed -e "${cdir:+#}/^Y/d" -e "s/^[XY]//" >"${T}/${SITEFILE}" <<-EOF || die
- X
- ;;; ${PN}-${SLOT} site-lisp configuration
- X
- (when (string-match "\\\\\`${FULL_VERSION//./\\\\.}\\\\>" emacs-version)
- Y (setq find-function-C-source-directory
- Y "${EPREFIX}${cdir}")
- X (let ((path (getenv "INFOPATH"))
- X (dir "${EPREFIX}/usr/share/info/${EMACS_SUFFIX}")
- X (re "\\\\\`${EPREFIX}/usr/share\\\\>"))
- X (and path
- X ;; move Emacs Info dir before anything else in /usr/share
- X (let* ((p (cons nil (split-string path ":" t))) (q p))
- X (while (and (cdr q) (not (string-match re (cadr q))))
- X (setq q (cdr q)))
- X (setcdr q (cons dir (delete dir (cdr q))))
- X (setq Info-directory-list (prune-directory-list (cdr p)))))))
- EOF
- elisp-site-file-install "${T}/${SITEFILE}" || die
-
- dodoc README BUGS CONTRIBUTE
-
- if use aqua; then
- dodir /Applications/Gentoo
- rm -rf "${ED}"/Applications/Gentoo/Emacs${EMACS_SUFFIX#emacs}.app
- mv nextstep/Emacs.app \
- "${ED}"/Applications/Gentoo/Emacs${EMACS_SUFFIX#emacs}.app || die
- fi
-
- DOC_CONTENTS="You can set the version to be started by /usr/bin/emacs
- through the Emacs eselect module, which also redirects man and info
- pages. Therefore, several Emacs versions can be installed at the
- same time. \"man emacs.eselect\" for details.
- \\n\\nIf you upgrade from Emacs version 24.2 or earlier, then it is
- strongly recommended that you use app-admin/emacs-updater to rebuild
- all byte-compiled elisp files of the installed Emacs packages."
- use X && DOC_CONTENTS+="\\n\\nYou need to install some fonts for Emacs.
- Installing media-fonts/font-adobe-{75,100}dpi on the X server's
- machine would satisfy basic Emacs requirements under X11.
- See also https://wiki.gentoo.org/wiki/Xft_support_for_GNU_Emacs
- for how to enable anti-aliased fonts."
- use aqua && DOC_CONTENTS+="\\n\\nEmacs${EMACS_SUFFIX#emacs}.app is in
- \"${EPREFIX}/Applications/Gentoo\". You may want to copy or symlink
- it into /Applications by yourself."
- readme.gentoo_create_doc
-}
-
-pkg_preinst() {
- # move Info dir file to correct name
- if [[ -d ${ED}/usr/share/info ]]; then
- mv "${ED}"/usr/share/info/${EMACS_SUFFIX}/dir{.orig,} || die
- fi
-}
-
-pkg_postinst() {
- elisp-site-regen
- readme.gentoo_print_elog
-
- if use livecd; then
- # force an update of the emacs symlink for the livecd/dvd,
- # because some microemacs packages set it with USE=livecd
- eselect emacs update
- elif [[ $(readlink "${EROOT}"/usr/bin/emacs) = ${EMACS_SUFFIX} ]]; then
- # refresh symlinks in case any installed files have changed
- eselect emacs set ${EMACS_SUFFIX}
- else
- eselect emacs update ifunset
- fi
-}
-
-pkg_postrm() {
- elisp-site-regen
- eselect emacs update ifunset
-}
diff --git a/app-editors/emacs-vcs/metadata.xml b/app-editors/emacs-vcs/metadata.xml
deleted file mode 100644
index 0ae048b21bd4..000000000000
--- a/app-editors/emacs-vcs/metadata.xml
+++ /dev/null
@@ -1,58 +0,0 @@
-
-
-
-
- gnu-emacs@gentoo.org
- Gentoo GNU Emacs project
-
-
- GNU Emacs is an extensible, customizable text editor - and more. At its core
- is an interpreter for Emacs Lisp, a dialect of the Lisp programming language
- with extensions to support text editing. The features of GNU Emacs include:
- * Content-sensitive editing modes, including syntax coloring, for a variety
- of file types including plain text, source code, and HTML.
- * Complete built-in documentation, including a tutorial for new users.
- * Full Unicode support for nearly all human languages and their scripts.
- * Highly customizable, using Emacs Lisp code or a graphical interface.
- * A large number of extensions that add other functionality, including a
- project planner, mail and news reader, debugger interface, calendar, and
- more. Many of these extensions are distributed with GNU Emacs; others are
- available separately.
-
-
-
diff --git a/app-emacs/Manifest.gz b/app-emacs/Manifest.gz
index 09e73794e2e4..e51aabb4d9a1 100644
Binary files a/app-emacs/Manifest.gz and b/app-emacs/Manifest.gz differ
diff --git a/app-emacs/csv-mode/csv-mode-1.10.ebuild b/app-emacs/csv-mode/csv-mode-1.10.ebuild
index e5de26a88e1a..cacaedf1417a 100644
--- a/app-emacs/csv-mode/csv-mode-1.10.ebuild
+++ b/app-emacs/csv-mode/csv-mode-1.10.ebuild
@@ -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
@@ -13,6 +13,6 @@ SRC_URI="https://dev.gentoo.org/~ulm/distfiles/${P}.el.xz"
LICENSE="GPL-2+"
SLOT="0"
-KEYWORDS="~amd64 ~ppc ~sparc ~x86"
+KEYWORDS="amd64 ~ppc sparc x86"
SITEFILE="50${PN}-gentoo.el"
diff --git a/app-emacs/htmlize/htmlize-1.55.ebuild b/app-emacs/htmlize/htmlize-1.55.ebuild
index 98ded842db43..bfd72c3baee5 100644
--- a/app-emacs/htmlize/htmlize-1.55.ebuild
+++ b/app-emacs/htmlize/htmlize-1.55.ebuild
@@ -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
@@ -13,7 +13,7 @@ SRC_URI="https://github.com/hniksic/${MY_PN}/archive/release/${PV}.tar.gz -> ${P
LICENSE="GPL-2+"
SLOT="0"
-KEYWORDS="~amd64 ~ppc ~x86"
+KEYWORDS="amd64 ppc x86"
S="${WORKDIR}/${MY_PN}-release-${PV}"
SITEFILE="50${PN}-gentoo.el"
diff --git a/app-emacs/org-mode/org-mode-9.3.ebuild b/app-emacs/org-mode/org-mode-9.3.ebuild
index 427a0ee703aa..d8248f25435b 100644
--- a/app-emacs/org-mode/org-mode-9.3.ebuild
+++ b/app-emacs/org-mode/org-mode-9.3.ebuild
@@ -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
@@ -12,7 +12,7 @@ SRC_URI="http://orgmode.org/org-${PV}.tar.gz"
LICENSE="GPL-3+ FDL-1.3+ contrib? ( GPL-2+ MIT ) odt-schema? ( OASIS-Open )"
SLOT="0"
-KEYWORDS="~amd64 ~ppc ~x86 ~x86-macos"
+KEYWORDS="amd64 ppc x86 ~x86-macos"
IUSE="contrib doc odt-schema"
RESTRICT="test"
diff --git a/app-emacs/php-mode/php-mode-1.22.1.ebuild b/app-emacs/php-mode/php-mode-1.22.1.ebuild
index 5fda395b5bf7..2924a48fb04d 100644
--- a/app-emacs/php-mode/php-mode-1.22.1.ebuild
+++ b/app-emacs/php-mode/php-mode-1.22.1.ebuild
@@ -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
@@ -12,7 +12,7 @@ SRC_URI="https://github.com/ejmr/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="GPL-3+"
SLOT="0"
-KEYWORDS="~amd64 ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos"
+KEYWORDS="amd64 ppc ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos"
SITEFILE="50${PN}-gentoo.el"
DOCS="README*.md CHANGELOG.md CONTRIBUTING.md"
diff --git a/app-emulation/Manifest.gz b/app-emulation/Manifest.gz
index 2c0e2158eb6a..8a4465d84fd0 100644
Binary files a/app-emulation/Manifest.gz and b/app-emulation/Manifest.gz differ
diff --git a/app-emulation/conmon/Manifest b/app-emulation/conmon/Manifest
index 7f6f08d2af09..4308dc8eed5d 100644
--- a/app-emulation/conmon/Manifest
+++ b/app-emulation/conmon/Manifest
@@ -1,2 +1,4 @@
DIST conmon-2.0.1.tar.gz 52250 BLAKE2B 59d0786975d0332ce2eb68024bbfe4c3275388d1e12561a279918fb4d2fdc2c8fd24d5872b724ccbc32722b50debf2de5c9e904aa26e25c3363f0418f5f74f8d SHA512 ba7ccdb61b6092987a3fe0fbcf76c11edaf4e15e4af4d831a8e5fdd58202a81be4d9ddf5c1d71eba5824b284f3b4416a65864e19d65dec4dfd511210c75480b1
+DIST conmon-2.0.10.tar.gz 54124 BLAKE2B 0f7b3a3a488fdcf4978c9c69bbb1649b7bca2935c824d0169bb4b6ce5a97d788e2016ed3018beac98ad31723656cca3124c3014f115ce600a4ba4c3c9c02badc SHA512 50145a0e00a595213cf5db684bb51633d8129a770cbd2aca49207b3d6b8b97090b6e6eb52b3f4664978d48c6b404be369bb7d8d5e6ce26b362c377a30ddc0411
DIST conmon-2.0.2.tar.gz 52364 BLAKE2B 6acf8265c28da6fedf43ea585a773a213bf7405fcd0b53a1b91c6eca314dde19e59e5883994d1d90a68b5cdc267d97587b7461d3f71da65055e52896a444cfc0 SHA512 f325906b0a9d884e84cb899e4eb2843f1f6a08fa03d255c7ebd4c1c47f7192defc98698c09c5ef428c31d1ccf21dc813f86fd3213e73ceb4d4ee8b2cbc4e7e89
+DIST conmon-2.0.9.tar.gz 54056 BLAKE2B 8f27c13d23237d35576e037b8bd1654a019452af139f774e82a04c3272bd858cf806ac1288bc1bb7f313d6e071923103c37bfc5d911ab124e383622f8057197c SHA512 904275d6e116c15e1c373c7ee5d7d9f2cdb671f86c364bab24eb688cd618afacfd63ca5076fd5a67869b97cdbb226df8fac15f390a384e125d9007c0052ed847
diff --git a/app-emulation/conmon/conmon-2.0.10.ebuild b/app-emulation/conmon/conmon-2.0.10.ebuild
new file mode 100644
index 000000000000..094875d653de
--- /dev/null
+++ b/app-emulation/conmon/conmon-2.0.10.ebuild
@@ -0,0 +1,44 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+EGIT_COMMIT="7a830be343876ac381c965c7429a7fb9b3d7a609"
+DESCRIPTION="An OCI container runtime monitor"
+HOMEPAGE="https://github.com/containers/conmon"
+SRC_URI="https://github.com/containers/conmon/archive/${EGIT_COMMIT}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="systemd"
+
+RDEPEND="dev-libs/glib:=
+ systemd? ( sys-apps/systemd:= )"
+DEPEND="${RDEPEND}"
+
+S="${WORKDIR}/${PN}-${EGIT_COMMIT}"
+
+src_prepare() {
+ default
+
+ if ! use systemd; then
+ sed -e 's| $(PKG_CONFIG) --exists libsystemd-journal | false |' \
+ -e 's| $(PKG_CONFIG) --exists libsystemd | false |' \
+ -i Makefile || die
+ fi
+}
+
+src_compile() {
+ emake GIT_COMMIT="${EGIT_COMMIT}" \
+ all
+}
+
+src_install() {
+ emake DESTDIR="${D}" \
+ PREFIX="/usr" \
+ install
+ dodir /usr/libexec/podman
+ ln "${ED}/usr/"{bin,libexec/podman}/conmon || die
+ dodoc README.md
+}
diff --git a/app-emulation/conmon/conmon-2.0.9.ebuild b/app-emulation/conmon/conmon-2.0.9.ebuild
new file mode 100644
index 000000000000..94ebc62d9c17
--- /dev/null
+++ b/app-emulation/conmon/conmon-2.0.9.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+EGIT_COMMIT="60b42f20f222df9da07a01ee444327348b9f54ee"
+DESCRIPTION="An OCI container runtime monitor"
+HOMEPAGE="https://github.com/containers/conmon"
+SRC_URI="https://github.com/containers/conmon/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="systemd"
+
+RDEPEND="dev-libs/glib:=
+ systemd? ( sys-apps/systemd:= )"
+DEPEND="${RDEPEND}"
+
+src_prepare() {
+ default
+
+ if ! use systemd; then
+ sed -e 's| $(PKG_CONFIG) --exists libsystemd-journal | false |' \
+ -e 's| $(PKG_CONFIG) --exists libsystemd | false |' \
+ -i Makefile || die
+ fi
+}
+
+src_compile() {
+ emake GIT_COMMIT="${EGIT_COMMIT}" \
+ all
+}
+
+src_install() {
+ emake DESTDIR="${D}" \
+ PREFIX="/usr" \
+ install
+ dodir /usr/libexec/podman
+ ln "${ED}/usr/"{bin,libexec/podman}/conmon || die
+ dodoc README.md
+}
diff --git a/app-emulation/containerd/Manifest b/app-emulation/containerd/Manifest
index 7698ad6dbf2f..9ecae2deadf3 100644
--- a/app-emulation/containerd/Manifest
+++ b/app-emulation/containerd/Manifest
@@ -3,3 +3,4 @@ DIST containerd-1.2.6.tar.gz 4874159 BLAKE2B 202e19cffbe2b5335558dc1db28ea28a05d
DIST containerd-1.2.7.tar.gz 4877757 BLAKE2B 6cf98e370547d3ca5158f546e72e3ff5fdccc08c2e9f390988d080222195f95512dbf6f7dc042b7a966283a040000b7b8777b3fbeb4c5b861caae4f6209c59c5 SHA512 b96ca236d28933c1bf309fc7204af7d2c356e19af394d5c2274a178c8f15298faf6ca9bb8e7d04acb7c3c9c41035446643a8df0103017f7ed0320bfc37cb8ca9
DIST containerd-1.3.0.tar.gz 5697153 BLAKE2B c334cfd2aa11dd430c74bc9f3fe6f31d83faf752b9794da26021033bb6af492c48ed1665fc76ddfe5b858f04d45e9b77505f331e3c3da556af2d75e3cca3bb12 SHA512 cff9f0189b9fdc2b5492c92129af284aa8cd099e48de94cafd90aed191e2d20060c96008111b05fe081de0d4fc41d35f8cba5a3dc2d8cc0a5c37f695fd3cedc1
DIST containerd-1.3.1.tar.gz 5703741 BLAKE2B 6eae3fe9714128e7a5378484115378629baf6c4f7ef4b795e625cc1fbc05323a123c2337c5b203a2c3c3b34486c81f7e5b3ad200c000c961931fc99347ef4513 SHA512 4991286d1a8a221dad24121c5e6cd31a00685d91e652546d0d97745624486450bc05ff4f889f2975c178c4c175fedd7b15f89121a7ce4e6687919aabd04501b4
+DIST containerd-1.3.2.tar.gz 5704320 BLAKE2B 32ea22ff445cc66f4c8db8abdbaaa7fa0c8c620b294bda54f2319045af1925398057ba1a5cb5c265cfc73bcff5b49943013b517ecb3bd05f4504920c4a8d6f29 SHA512 768a19eb0829e196a61ddedaa11b0d6691caf8f9cc590a3e47ac77c1acad62e64b7a55017a1a6cccfcb87785a083d5ce131048b0e39e48c65e6cd5922382fc3c
diff --git a/app-emulation/containerd/containerd-1.3.2.ebuild b/app-emulation/containerd/containerd-1.3.2.ebuild
new file mode 100644
index 000000000000..f6200c865cc4
--- /dev/null
+++ b/app-emulation/containerd/containerd-1.3.2.ebuild
@@ -0,0 +1,55 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+EGO_PN="github.com/containerd/${PN}"
+inherit toolchain-funcs
+
+DESCRIPTION="A daemon to control runC"
+HOMEPAGE="https://containerd.io/"
+
+if [[ ${PV} == *9999 ]]; then
+ inherit golang-vcs
+else
+ MY_PV="${PV/_rc/-rc.}"
+ EGIT_COMMIT="v${MY_PV}"
+ CONTAINERD_COMMIT=ff48f57f
+ SRC_URI="https://${EGO_PN}/archive/${EGIT_COMMIT}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64 ~arm ~arm64 ~ppc64"
+ inherit golang-vcs-snapshot
+fi
+
+LICENSE="Apache-2.0"
+SLOT="0"
+IUSE="apparmor +btrfs +cri hardened +seccomp"
+
+DEPEND="btrfs? ( sys-fs/btrfs-progs )
+ seccomp? ( sys-libs/libseccomp )"
+RDEPEND=">=app-emulation/runc-1.0.0_rc9
+ seccomp? ( sys-libs/libseccomp )"
+
+S=${WORKDIR}/${P}/src/${EGO_PN}
+
+RESTRICT="strip test"
+
+src_prepare() {
+ default
+ if [[ ${PV} != *9999* ]]; then
+ sed -i -e "s/git describe --match.*$/echo ${PV})/"\
+ -e "s/git rev-parse HEAD.*$/echo $CONTAINERD_COMMIT)/"\
+ -e "s/-s -w//" \
+ Makefile || die
+ fi
+}
+
+src_compile() {
+ local options=( $(usex btrfs "" "no_btrfs") $(usex cri "" "no_cri") $(usex seccomp "seccomp" "") $(usex apparmor "apparmor" "") )
+ export GOPATH="${WORKDIR}/${P}" # ${PWD}/vendor
+ LDFLAGS=$(usex hardened '-extldflags -fno-PIC' '') BUILDTAGS="${options[@]}" emake
+}
+
+src_install() {
+ newinitd "${FILESDIR}"/${PN}.initd ${PN}
+ keepdir /var/lib/containerd
+ dobin bin/*
+}
diff --git a/app-emulation/containers-storage/Manifest b/app-emulation/containers-storage/Manifest
index c63a7e1b0b57..cf0e17399123 100644
--- a/app-emulation/containers-storage/Manifest
+++ b/app-emulation/containers-storage/Manifest
@@ -1,2 +1,3 @@
DIST containers-storage-1.15.1.tar.gz 6037975 BLAKE2B e6d0d9adae829fd3d8cb40aa124b7149ee56ed13650b0dc57ba316ab2f03e754bdbb3e566c199b7768c612b159fa3051db39cd90127f4676255e452863aa7e24 SHA512 ea017e7dec840e5794f0ae61ebfc0cbf55b8de2c237286371eef3fd1808809e2bb149f08ba62126c741e0811839bf0af8f97bbda32e715132e42905f2ebd3a6c
DIST containers-storage-1.15.2.tar.gz 6199303 BLAKE2B 76b950892d4a3016a6df2223c66d9720334205bb1c1b6d18f09b984df9c967391329a970d9d927206f37d4557fc6f4b6c366cb6f35711d2a7d8842f7e3bf7221 SHA512 b152e85e8ebdc5016955287c289390568865d60b2b034e5d32eaa3d11d775a12788465246ff7b75cd8a079758f5d2fd90bd1443191f6a089f54862951a26cdae
+DIST containers-storage-1.15.7.tar.gz 6202610 BLAKE2B 2eeeb124c0ce22b5f80aced4b0a9b8d541a00d532458c64e8a017b6d7e7364b90cf798db81b9dfe36af3a25e70383529f7e2ee649750ceaff753b9327a1713c8 SHA512 25317ec5a002274422cab7ab3928ac5e9776751bc2c7c17800def2f0f918f2356c074f1914056e24bd900fb4d951d6259461f9fe3fd7c6d669ca2e78b2c70d12
diff --git a/app-emulation/containers-storage/containers-storage-1.15.7.ebuild b/app-emulation/containers-storage/containers-storage-1.15.7.ebuild
new file mode 100644
index 000000000000..1c7bf5f6ff65
--- /dev/null
+++ b/app-emulation/containers-storage/containers-storage-1.15.7.ebuild
@@ -0,0 +1,60 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit go-module
+
+KEYWORDS="~amd64"
+DESCRIPTION="containers/storage library"
+HOMEPAGE="https://github.com/containers/storage"
+LICENSE="Apache-2.0 BSD BSD-2 CC-BY-SA-4.0 ISC MIT"
+SLOT="0"
+IUSE="btrfs +device-mapper test"
+EGO_PN="${HOMEPAGE#*//}"
+EGIT_COMMIT="v${PV}"
+SRC_URI="https://${EGO_PN}/archive/${EGIT_COMMIT}.tar.gz -> ${P}.tar.gz"
+RDEPEND="
+ btrfs? ( sys-fs/btrfs-progs )
+ device-mapper? ( sys-fs/lvm2:= )"
+DEPEND="${RDEPEND}
+ dev-go/go-md2man
+ test? (
+ sys-fs/btrfs-progs
+ sys-fs/lvm2
+ sys-apps/util-linux
+ )"
+RESTRICT="test"
+
+S=${WORKDIR}/${P#containers-}
+
+src_prepare() {
+ default
+
+ sed -e 's:GO111MODULE=off:GO111MODULE=on:' -i Makefile || die
+
+ [[ -f hack/btrfs_tag.sh ]] || die
+ use btrfs || { echo -e "#!/bin/sh\necho exclude_graphdriver_btrfs" > \
+ "hack/btrfs_tag.sh" || die; }
+
+ [[ -f hack/libdm_tag.sh ]] || die
+ use device-mapper || { echo -e "#!/bin/sh\necho btrfs_noversion exclude_graphdriver_devicemapper" > \
+ "hack/libdm_tag.sh" || die; }
+}
+
+src_compile() {
+ export -n GOCACHE GOPATH XDG_CACHE_HOME #678856
+ emake containers-storage docs
+}
+
+src_install() {
+ dobin "${PN}"
+ while read -r -d ''; do
+ mv "${REPLY}" "${REPLY%.1}" || die
+ done < <(find "${S}/docs" -name '*.[[:digit:]].1' -print0)
+ find "${S}/docs" -name '*.[[:digit:]]' -exec doman '{}' + || die
+}
+
+src_test() {
+ env -u GOFLAGS unshare -m emake local-test-unit || die
+}
diff --git a/app-emulation/docker/docker-19.03.5.ebuild b/app-emulation/docker/docker-19.03.5.ebuild
index 083a97987cf9..b38d5ab11efa 100644
--- a/app-emulation/docker/docker-19.03.5.ebuild
+++ b/app-emulation/docker/docker-19.03.5.ebuild
@@ -14,7 +14,7 @@ else
DOCKER_GITCOMMIT="633a0ea"
MY_PV=${PV/_/-}
SRC_URI="https://${EGO_PN}/archive/v${MY_PV}.tar.gz -> ${P}.tar.gz"
- KEYWORDS="amd64 ~arm ~arm64"
+ KEYWORDS="amd64 ~arm ~arm64 ~ppc64"
[ "$DOCKER_GITCOMMIT" ] || die "DOCKER_GITCOMMIT must be added manually for each bump!"
inherit golang-vcs-snapshot
fi
diff --git a/app-emulation/libpod/Manifest b/app-emulation/libpod/Manifest
index 894472752c31..b0d474451558 100644
--- a/app-emulation/libpod/Manifest
+++ b/app-emulation/libpod/Manifest
@@ -1,3 +1,3 @@
DIST containers-storage-1.14.0-vfs-user-xattrs.patch 14835 BLAKE2B 99c35933dcb25385ee83b80cf282c11c738d0e4d91216cc08a50522f6caa9bca5938299412908f16df404f99e80616a10b4c02c0ebc38240a987830ddaf15008 SHA512 62c7ed49728bd12b5706f59b0d4af3b18d90e8cfc2b06e681f84fe3f5d3e0cd5c0317147109c4e3ec4fec26f82c269af3c9813e47339ce102e4e97400b74627d
-DIST libpod-1.6.3.tar.gz 8340471 BLAKE2B b017a29ab034d8432b3abe2d920e0a71ad6542a5f088ed0de8fc67e846b409efbfd5be2e72908b52b5d21f05ce30c31db3bd55f8d8974711eb8f48cf8c3553a5 SHA512 a4d9f4c74db42fade86c36f4b2c27b8b3ff42db90af21bccab2eae8e9d710ae102c05e1fa926ac1d8e67613e11fa40163800077b61e49d90de521ab472e9c8dd
DIST libpod-1.6.4.tar.gz 8340370 BLAKE2B f68f0e846a442aa0717d4918f24260560ee77c8abdecd5af3dec06ee95ab899d623b8797962ac416bf498f22643d45de5c6d86049eead9d5c93073957c3fd9bf SHA512 69322551ab196cd3859e03988178c59a47df6f00ef0768a56e40d785f6b2130df03ff0ea76d101e21e748ea9260ede144d31f3ec21922ffd70eb2969a77d4194
+DIST libpod-1.7.0.tar.gz 8679022 BLAKE2B 8a8037b75deae9f94461ab697b2a7cf095254c68d8436655c37a40375e3dd1a2b621672643e430acc8a656fcd516fa5a542e7104d6cfdbee3d213aca6228d410 SHA512 986ec7123127d3ffb26cecc39a2ae3d8a6dd3d147327449fc4e9d17f6e6606bde278f13920d0aef59410262801251e7b4cfe099cb5caafe9773533e8476848fe
diff --git a/app-emulation/libpod/libpod-1.6.4.ebuild b/app-emulation/libpod/libpod-1.6.4.ebuild
index 45bd559b5243..c12fd7d1e1c6 100644
--- a/app-emulation/libpod/libpod-1.6.4.ebuild
+++ b/app-emulation/libpod/libpod-1.6.4.ebuild
@@ -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
@@ -16,8 +16,7 @@ LICENSE="Apache-2.0 BSD BSD-2 CC-BY-SA-4.0 ISC MIT MPL-2.0"
SLOT="0"
KEYWORDS="~amd64"
-IUSE="apparmor btrfs ostree +rootless selinux"
-REQUIRED_USE="!ostree"
+IUSE="apparmor btrfs +rootless selinux"
RESTRICT="test"
COMMON_DEPEND="
diff --git a/app-emulation/libpod/libpod-1.6.3-r2.ebuild b/app-emulation/libpod/libpod-1.7.0.ebuild
similarity index 86%
rename from app-emulation/libpod/libpod-1.6.3-r2.ebuild
rename to app-emulation/libpod/libpod-1.7.0.ebuild
index 345becae9294..329e1e7a7204 100644
--- a/app-emulation/libpod/libpod-1.6.3-r2.ebuild
+++ b/app-emulation/libpod/libpod-1.7.0.ebuild
@@ -1,23 +1,20 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
-EGIT_COMMIT="9d087f6a766259ba53b224944f1b7b778035c370"
+EGIT_COMMIT="b7ce1157b00af09f4a09e39b377aa3abff46ee05"
inherit bash-completion-r1 flag-o-matic go-module
DESCRIPTION="Library and podman tool for running OCI-based containers in Pods"
HOMEPAGE="https://github.com/containers/libpod/"
-CONTAINERS_STORAGE_PATCH="containers-storage-1.14.0-vfs-user-xattrs.patch"
-SRC_URI="https://github.com/containers/libpod/archive/v${PV}.tar.gz -> ${P}.tar.gz
- https://github.com/containers/storage/pull/466.patch -> ${CONTAINERS_STORAGE_PATCH}"
+SRC_URI="https://github.com/containers/libpod/archive/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="Apache-2.0 BSD BSD-2 CC-BY-SA-4.0 ISC MIT MPL-2.0"
SLOT="0"
KEYWORDS="~amd64"
-IUSE="apparmor btrfs ostree +rootless selinux"
-REQUIRED_USE="!ostree"
+IUSE="apparmor btrfs +rootless selinux"
RESTRICT="test"
COMMON_DEPEND="
@@ -41,14 +38,11 @@ RDEPEND="${COMMON_DEPEND}"
src_prepare() {
default
- sed -e 's| \([ab]\)/| \1/vendor/github.com/containers/storage/|' < \
- "${DISTDIR}/${CONTAINERS_STORAGE_PATCH}" > \
- "${WORKDIR}/${CONTAINERS_STORAGE_PATCH}" || die
- eapply "${WORKDIR}/${CONTAINERS_STORAGE_PATCH}"
# Disable installation of python modules here, since those are
# installed by separate ebuilds.
sed -e '/^GIT_.*/d' \
+ -e 's:GO111MODULE=off:GO111MODULE=on:' \
-e 's/$(GO) build/$(GO) build -v -work -x/' \
-e 's/^\(install:.*\) install\.python$/\1/' \
-i Makefile || die
diff --git a/app-emulation/libpod/metadata.xml b/app-emulation/libpod/metadata.xml
index b488c7d9282c..0ce2c6b92f8c 100644
--- a/app-emulation/libpod/metadata.xml
+++ b/app-emulation/libpod/metadata.xml
@@ -19,9 +19,6 @@
Enables dependencies for the "btrfs" graph driver, including
necessary kernel flags.
-
- Enables dependencies for handling of OSTree images.
-
Enables dependencies for running in rootless mode.
diff --git a/app-i18n/Manifest.gz b/app-i18n/Manifest.gz
index dcf121882f52..532f47c901a4 100644
Binary files a/app-i18n/Manifest.gz and b/app-i18n/Manifest.gz differ
diff --git a/app-i18n/ibus-handwrite/ibus-handwrite-3.0.0.ebuild b/app-i18n/ibus-handwrite/ibus-handwrite-3.0.0.ebuild
index 25419a692eb1..60037d4c45e9 100644
--- a/app-i18n/ibus-handwrite/ibus-handwrite-3.0.0.ebuild
+++ b/app-i18n/ibus-handwrite/ibus-handwrite-3.0.0.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2017 Gentoo Foundation
+# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="6"
@@ -14,7 +14,6 @@ IUSE="nls +zinnia"
RDEPEND="app-i18n/ibus
x11-libs/gtk+:3
- x11-libs/gtkglext
nls? ( virtual/libintl )
zinnia? (
app-i18n/zinnia
diff --git a/app-i18n/ibus-libpinyin/ibus-libpinyin-1.11.1.ebuild b/app-i18n/ibus-libpinyin/ibus-libpinyin-1.11.1.ebuild
index 5f64ebaf5818..510770469de5 100644
--- a/app-i18n/ibus-libpinyin/ibus-libpinyin-1.11.1.ebuild
+++ b/app-i18n/ibus-libpinyin/ibus-libpinyin-1.11.1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 2015-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="7"
@@ -18,15 +18,16 @@ KEYWORDS="~amd64 ~x86"
IUSE="boost lua opencc"
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
-BDEPEND="
+BDEPEND="dev-db/sqlite:3
virtual/pkgconfig"
DEPEND="${PYTHON_DEPS}
app-i18n/ibus[python(+),${PYTHON_USEDEP}]
>=app-i18n/libpinyin-2.1.0:=
+ dev-db/sqlite:3
+ dev-libs/glib:2
dev-python/pygobject:3[${PYTHON_USEDEP}]
virtual/libintl
- dev-db/sqlite:3
boost? ( dev-libs/boost:= )
lua? ( dev-lang/lua:0 )
opencc? ( app-i18n/opencc:= )"
diff --git a/app-i18n/libchewing/libchewing-0.5.1.ebuild b/app-i18n/libchewing/libchewing-0.5.1.ebuild
index 1c78e61d60e1..796538bfb4f3 100644
--- a/app-i18n/libchewing/libchewing-0.5.1.ebuild
+++ b/app-i18n/libchewing/libchewing-0.5.1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2004-2019 Gentoo Authors
+# Copyright 2004-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="7"
@@ -26,6 +26,8 @@ KEYWORDS="amd64 ~arm ~arm64 ppc ppc64 x86"
IUSE="static-libs test"
RESTRICT="!test? ( test )"
+# BDEPEND="test? ( virtual/pkgconfig )"
+BDEPEND="virtual/pkgconfig"
RDEPEND="dev-db/sqlite:3"
DEPEND="${RDEPEND}
test? ( sys-libs/ncurses[unicode] )"
diff --git a/app-i18n/libchewing/libchewing-9999.ebuild b/app-i18n/libchewing/libchewing-9999.ebuild
index e059c2147b15..041ef001addd 100644
--- a/app-i18n/libchewing/libchewing-9999.ebuild
+++ b/app-i18n/libchewing/libchewing-9999.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2004-2019 Gentoo Authors
+# Copyright 2004-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="7"
@@ -26,6 +26,8 @@ KEYWORDS=""
IUSE="static-libs test"
RESTRICT="!test? ( test )"
+# BDEPEND="test? ( virtual/pkgconfig )"
+BDEPEND="virtual/pkgconfig"
RDEPEND="dev-db/sqlite:3"
DEPEND="${RDEPEND}
test? ( sys-libs/ncurses[unicode] )"
diff --git a/app-i18n/librime/Manifest b/app-i18n/librime/Manifest
index 771ae28c8441..540a26bb8fe5 100644
--- a/app-i18n/librime/Manifest
+++ b/app-i18n/librime/Manifest
@@ -1,2 +1 @@
-DIST librime-1.4.0.tar.gz 8609316 BLAKE2B cce58c398057ac82f076e3b9e9a25cd6410e738460bd58277a9e3ed6cd11e80922bbb30e8b42828cdd5dd83f6058794b4b32fedb359315186b018ca88161794d SHA512 da68983638c6f25d994060a607f2ccab8917a71dbf10b9c6f1140c87c9ef4124e29a1d0ef16bbd0edc9a3a22bd5845aa894888d678607db372750f300638f562
DIST librime-1.5.3.tar.gz 2847083 BLAKE2B 4ffb2c5ddaf52f9c9227fa4ea019ef2965e61139f678798c08ef37dc52b863763651b63ed820caad0de1b06f48ab5c1a7a2682653340d2ae7f5f9eec3cec80b2 SHA512 4d7f6ec43bd5728f59f0b3581bcd8a46128651430b6873017d80659942b8f6aa1a2f25f439ba8fba461fe22acbf701c2da7a786104a2e4852a70a89cdc0452d3
diff --git a/app-i18n/librime/librime-1.4.0.ebuild b/app-i18n/librime/librime-1.4.0.ebuild
deleted file mode 100644
index 20b5459ab2cb..000000000000
--- a/app-i18n/librime/librime-1.4.0.ebuild
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright 2012-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit cmake-utils vcs-snapshot
-
-DESCRIPTION="Rime Input Method Engine, the core library"
-HOMEPAGE="https://rime.im/ https://github.com/rime/librime"
-SRC_URI="https://github.com/rime/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="BSD"
-SLOT="0/1"
-KEYWORDS="amd64 ppc ppc64 x86"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-RDEPEND="app-i18n/opencc:=
- dev-cpp/glog:=
- dev-cpp/yaml-cpp:=
- dev-libs/boost:=[nls,threads]
- dev-libs/leveldb:=
- dev-libs/marisa:="
-DEPEND="${RDEPEND}
- x11-base/xorg-proto
- test? ( dev-cpp/gtest )"
-
-DOCS=( {CHANGELOG,README}.md )
-
-src_configure() {
- local mycmakeargs=(
- -DBUILD_TEST=$(usex test)
- -DBOOST_USE_CXX11=ON
- -DLIB_INSTALL_DIR="${EPREFIX}"/usr/$(get_libdir)
- )
- cmake-utils_src_configure
-}
diff --git a/app-i18n/mozc/files/mozc-2.23.2815.102-python-3_1.patch b/app-i18n/mozc/files/mozc-2.23.2815.102-python-3_1.patch
new file mode 100644
index 000000000000..2b9bbd720cde
--- /dev/null
+++ b/app-i18n/mozc/files/mozc-2.23.2815.102-python-3_1.patch
@@ -0,0 +1,621 @@
+https://github.com/google/mozc/issues/462
+
+--- /src/base/gen_character_set.py
++++ /src/base/gen_character_set.py
+@@ -33,7 +33,6 @@
+ import itertools
+ import optparse
+ import re
+-import string
+ import sys
+
+
+@@ -89,7 +88,8 @@
+ @staticmethod
+ def _LoadTable(filename, column_index, pattern, validater):
+ result = set()
+- for line in open(filename):
++ fh = open(filename)
++ for line in fh:
+ if line.startswith('#'):
+ # Skip a comment line.
+ continue
+@@ -100,6 +100,7 @@
+ ucs = int(match.group(1), 16)
+ if validater(ucs):
+ result.add(ucs)
++ fh.close()
+
+ return result
+
+@@ -250,7 +251,7 @@
+ # (at most) four code points.
+ bit_list = []
+ for _, group in itertools.groupby(enumerate(category_list),
+- lambda (codepoint, _): codepoint / 4):
++ lambda x: x[0] // 4):
+ # Fill bits from LSB to MSB for each group.
+ bits = 0
+ for index, (_, category) in enumerate(group):
+@@ -263,7 +264,7 @@
+
+ # Output the content. Each line would have (at most) 16 bytes.
+ for _, group in itertools.groupby(enumerate(bit_list),
+- lambda (index, _): index / 16):
++ lambda x: x[0] // 16):
+ line = [' \"']
+ for _, bits in group:
+ line.append('\\x%02X' % bits)
+@@ -386,7 +387,7 @@
+ # Bitmap lookup.
+ # TODO(hidehiko): the bitmap has two huge 0-bits ranges. Reduce them.
+ category_map = [
+- (bits, category) for category, bits in CATEGORY_BITMAP.iteritems()]
++ (bits, category) for category, bits in CATEGORY_BITMAP.items()]
+ category_map.sort()
+
+ lines.extend([
+@@ -451,7 +452,7 @@
+ options.jisx0213file)
+ category_list = [
+ categorizer.GetCategory(codepoint)
+- for codepoint in xrange(categorizer.MaxCodePoint() + 1)]
++ for codepoint in range(categorizer.MaxCodePoint() + 1)]
+ generated_character_set_header = GenerateCharacterSetHeader(category_list)
+
+ # Write the result.
+--- /src/base/gen_config_file_stream_data.py
++++ /src/base/gen_config_file_stream_data.py
+@@ -58,7 +58,7 @@
+ result = []
+ result.append(' { "%s", "' % os.path.basename(path))
+ with open(path, 'rb') as stream:
+- result.extend(r'\x%02X' % ord(byte) for byte in stream.read())
++ result.extend(r'\x%02X' % byte for byte in stream.read())
+ result.append('", %d }' % os.path.getsize(path))
+
+ return ''.join(result)
+@@ -93,8 +93,8 @@
+ def main():
+ (options, args) = ParseOptions()
+ if not options.output:
+- print >>sys.stderr, (
+- 'usage: gen_config_file_stream_data.py --output=filepath input ...')
++ print('usage: gen_config_file_stream_data.py --output=filepath input ...',
++ file=sys.stderr)
+ sys.exit(2)
+
+ with open(options.output, 'w') as output:
+--- /src/build_mozc.py
++++ /src/build_mozc.py
+@@ -943,7 +943,7 @@
+ logging.info('running %s...', binary)
+ try:
+ test_function(binary, gtest_report_dir, options)
+- except RunOrDieError, e:
++ except RunOrDieError as e:
+ logging.error(e)
+ failed_tests.append(binary)
+ else:
+@@ -1082,7 +1082,7 @@
+ # and '-c' and 'Release' are build options.
+ targets = []
+ build_options = []
+- for i in xrange(len(args)):
++ for i in range(len(args)):
+ if args[i].startswith('-'):
+ # starting with build options
+ build_options = args[i:]
+@@ -1190,14 +1190,14 @@
+
+ def ShowHelpAndExit():
+ """Shows the help message."""
+- print 'Usage: build_mozc.py COMMAND [ARGS]'
+- print 'Commands: '
+- print ' gyp Generate project files.'
+- print ' build Build the specified target.'
+- print ' runtests Build all tests and run them.'
+- print ' clean Clean all the build files and directories.'
+- print ''
+- print 'See also the comment in the script for typical usage.'
++ print('Usage: build_mozc.py COMMAND [ARGS]')
++ print('Commands: ')
++ print(' gyp Generate project files.')
++ print(' build Build the specified target.')
++ print(' runtests Build all tests and run them.')
++ print(' clean Clean all the build files and directories.')
++ print('')
++ print('See also the comment in the script for typical usage.')
+ sys.exit(1)
+
+
+--- /src/build_tools/android_util.py
++++ /src/build_tools/android_util.py
+@@ -548,7 +548,7 @@
+ (devices_result, _) = process.communicate()
+ used_ports = set(int(port) for port
+ in re.findall(r'emulator-(\d+)', devices_result))
+- return [port for port in xrange(5554, 5586, 2) if port not in used_ports]
++ return [port for port in range(5554, 5586, 2) if port not in used_ports]
+
+
+ def SetUpTestingSdkHomeDirectory(dest_android_sdk_home,
+@@ -575,7 +575,7 @@
+ 'create', 'avd',
+ '--force',
+ '--sdcard', '512M',]
+- for key, value in options.iteritems():
++ for key, value in options.items():
+ args.extend([key, value])
+ env = {'ANDROID_SDK_HOME': os.path.abspath(dest_android_sdk_home)}
+ logging.info('Creating AVD: %s', args)
+@@ -615,7 +615,7 @@
+ def main():
+ for arg in sys.argv[1:]:
+ for item in sorted(GetApkProperties(arg).items()):
+- print '%s: %s' % item
++ print('%s: %s' % item)
+
+
+ if __name__ == '__main__':
+--- /src/build_tools/binary_size_checker.py
++++ /src/build_tools/binary_size_checker.py
+@@ -70,12 +70,12 @@
+ actual_size = os.stat(filename).st_size
+ expected_size = EXPECTED_MAXIMUM_SIZES[basename]
+ if actual_size < expected_size * 1024 * 1024:
+- print 'Pass: %s (size: %d) is smaller than expected (%d MB)' % (
+- filename, actual_size, expected_size)
++ print('Pass: %s (size: %d) is smaller than expected (%d MB)' % (
++ filename, actual_size, expected_size))
+ return True
+ else:
+- print 'WARNING: %s (size: %d) is larger than expected (%d MB)' % (
+- filename, actual_size, expected_size)
++ print('WARNING: %s (size: %d) is larger than expected (%d MB)' % (
++ filename, actual_size, expected_size))
+ return False
+
+
+--- /src/build_tools/build_and_sign_pkg_mac.py
++++ /src/build_tools/build_and_sign_pkg_mac.py
+@@ -44,8 +44,8 @@
+ import shutil
+ import sys
+
+-from util import PrintErrorAndExit
+-from util import RunOrDie
++from .util import PrintErrorAndExit
++from .util import RunOrDie
+
+
+ def ParseOption():
+--- /src/build_tools/build_breakpad.py
++++ /src/build_tools/build_breakpad.py
+@@ -54,9 +54,9 @@
+ try:
+ subprocess.check_output(command)
+ except subprocess.CalledProcessError as e:
+- print e.output
++ print(e.output)
+ sys.exit(e.returncode)
+- print 'Done: %s' % ' '.join(command)
++ print('Done: %s' % ' '.join(command))
+
+
+ def Xcodebuild(projdir, target, arch, sdk, outdir):
+--- /src/build_tools/build_diskimage_mac.py
++++ /src/build_tools/build_diskimage_mac.py
+@@ -90,7 +90,7 @@
+ # setup volume directory
+ temp_dir = tempfile.mkdtemp()
+ CopyFile(path.join(build_dir, ".keystone_install"), temp_dir)
+- os.chmod(path.join(temp_dir, ".keystone_install"), 0755) # rwxr-xr-x
++ os.chmod(path.join(temp_dir, ".keystone_install"), 0o755) # rwxr-xr-x
+ for a in args:
+ CopyFile(path.join(build_dir, a), temp_dir)
+
+--- /src/build_tools/change_reference_mac.py
++++ /src/build_tools/change_reference_mac.py
+@@ -41,8 +41,8 @@
+ import optparse
+ import os
+
+-from util import PrintErrorAndExit
+-from util import RunOrDie
++from .util import PrintErrorAndExit
++from .util import RunOrDie
+
+
+ def ParseOption():
+--- /src/build_tools/code_generator_util.py
++++ /src/build_tools/code_generator_util.py
+@@ -33,27 +33,26 @@
+ __author__ = "hidehiko"
+
+ import struct
+-import types
+
+
+ def ToCppStringLiteral(s):
+ """Returns C-style string literal, or NULL if given s is None."""
+ if s is None:
+- return 'NULL'
++ return b'NULL'
+
+- if all(0x20 <= ord(c) <= 0x7E for c in s):
++ if all(0x20 <= c <= 0x7E for c in s):
+ # All characters are in ascii code.
+- return '"%s"' % s.replace('\\', r'\\').replace('"', r'\"')
++ return b'"%b"' % s.replace(b'\\', br'\\').replace(b'"', br'\"')
+ else:
+ # One or more characters are non-ascii.
+- return '"%s"' % ''.join(r'\x%02X' % ord(c) for c in s)
++ return b'"%b"' % b''.join(br'\x%02X' % c for c in s)
+
+
+ def FormatWithCppEscape(format_text, *args):
+ """Returns a string filling format with args."""
+ literal_list = []
+ for arg in args:
+- if isinstance(arg, (types.StringType, types.NoneType)):
++ if isinstance(arg, (bytes, type(None))):
+ arg = ToCppStringLiteral(arg)
+ literal_list.append(arg)
+
+@@ -95,7 +94,7 @@
+ if target_compiler and target_compiler.startswith('msvs'):
+ stream.write('const uint64 k%s_data_wordtype[] = {\n' % variable_name)
+
+- for word_index in xrange(0, len(data), 8):
++ for word_index in range(0, len(data), 8):
+ word_chunk = data[word_index:word_index + 8].ljust(8, '\x00')
+ stream.write('0x%016X, ' % struct.unpack('> sys.stderr, "=========="
+- print >> sys.stderr, "COMMAND: " + command
+- print >> sys.stderr, output
++ print("==========", file=sys.stderr)
++ print("COMMAND: " + command, file=sys.stderr)
++ print(output, file=sys.stderr)
+ except subprocess.CalledProcessError as e:
+- print >> sys.stderr, "=========="
+- print >> sys.stderr, "ERROR: " + command
+- print >> sys.stderr, e.output
+- print >> sys.stderr, "=========="
++ print("==========", file=sys.stderr)
++ print("ERROR: " + command, file=sys.stderr)
++ print(e.output, file=sys.stderr)
++ print("==========", file=sys.stderr)
+ sys.exit(1)
+
+
+@@ -119,18 +119,18 @@
+ (options, unused_args) = parser.parse_args()
+
+ if not options.target:
+- print "Error: --target should be specified."
+- print parser.print_help()
++ print("Error: --target should be specified.")
++ print(parser.print_help())
+ sys.exit(1)
+
+ return options
+
+
+ def DumpEnviron():
+- print "=== os.environ ==="
++ print("=== os.environ ===")
+ for key in sorted(os.environ):
+- print "%s = %s" % (key, os.getenv(key))
+- print "=================="
++ print("%s = %s" % (key, os.getenv(key)))
++ print("==================")
+
+
+ def main():
+--- /src/build_tools/copy_dll_and_symbol.py
++++ /src/build_tools/copy_dll_and_symbol.py
+@@ -38,7 +38,7 @@
+ import os
+ import shutil
+
+-from util import PrintErrorAndExit
++from .util import PrintErrorAndExit
+
+ def ParseOption():
+ """Parse command line options."""
+@@ -98,7 +98,7 @@
+ if _GetLastModifiedTime(src) <= target_file_mtime:
+ # Older file found. Ignore.
+ continue
+- print 'Copying %s to %s' % (src, target_file_abspath)
++ print('Copying %s to %s' % (src, target_file_abspath))
+ shutil.copy2(src, target_file_abspath)
+ break
+
+--- /src/build_tools/copy_file.py
++++ /src/build_tools/copy_file.py
+@@ -52,7 +52,7 @@
+ Args:
+ message: The error message to be printed to stderr.
+ """
+- print >>sys.stderr, message
++ print(message, file=sys.stderr)
+ sys.exit(1)
+
+
+--- /src/build_tools/copy_qt_frameworks_mac.py
++++ /src/build_tools/copy_qt_frameworks_mac.py
+@@ -41,9 +41,9 @@
+ import optparse
+ import os
+
+-from copy_file import CopyFiles
+-from util import PrintErrorAndExit
+-from util import RunOrDie
++from .copy_file import CopyFiles
++from .util import PrintErrorAndExit
++from .util import RunOrDie
+
+
+ def ParseOption():
+--- /src/build_tools/embed_file.py
++++ /src/build_tools/embed_file.py
+@@ -46,10 +46,10 @@
+
+ def _FormatAsUint64LittleEndian(s):
+ """Formats a string as uint64 value in little endian order."""
+- for _ in xrange(len(s), 8):
+- s += '\0'
++ for _ in range(len(s), 8):
++ s += b'\0'
+ s = s[::-1] # Reverse the string
+- return '0x%s' % binascii.b2a_hex(s)
++ return b'0x%b' % binascii.b2a_hex(s)
+
+
+ def main():
+@@ -57,30 +57,30 @@
+ with open(opts.input, 'rb') as infile:
+ with open(opts.output, 'wb') as outfile:
+ outfile.write(
+- '#ifdef MOZC_EMBEDDED_FILE_%(name)s\n'
+- '#error "%(name)s was already included or defined elsewhere"\n'
+- '#else\n'
+- '#define MOZC_EMBEDDED_FILE_%(name)s\n'
+- 'const uint64 %(name)s_data[] = {\n'
+- % {'name': opts.name})
++ b'#ifdef MOZC_EMBEDDED_FILE_%(name)b\n'
++ b'#error "%(name)b was already included or defined elsewhere"\n'
++ b'#else\n'
++ b'#define MOZC_EMBEDDED_FILE_%(name)b\n'
++ b'const uint64 %(name)b_data[] = {\n'
++ % {b'name': opts.name.encode('utf-8')})
+
+ while True:
+ chunk = infile.read(8)
+ if not chunk:
+ break
+- outfile.write(' ')
++ outfile.write(b' ')
+ outfile.write(_FormatAsUint64LittleEndian(chunk))
+- outfile.write(',\n')
++ outfile.write(b',\n')
+
+ outfile.write(
+- '};\n'
+- 'const EmbeddedFile %(name)s = {\n'
+- ' %(name)s_data,\n'
+- ' %(size)d,\n'
+- '};\n'
+- '#endif // MOZC_EMBEDDED_FILE_%(name)s\n'
+- % {'name': opts.name,
+- 'size': os.stat(opts.input).st_size})
++ b'};\n'
++ b'const EmbeddedFile %(name)b = {\n'
++ b' %(name)b_data,\n'
++ b' %(size)d,\n'
++ b'};\n'
++ b'#endif // MOZC_EMBEDDED_FILE_%(name)b\n'
++ % {b'name': opts.name.encode('utf-8'),
++ b'size': os.stat(opts.input).st_size})
+
+
+ if __name__ == '__main__':
+--- /src/build_tools/embed_pathname.py
++++ /src/build_tools/embed_pathname.py
+@@ -28,7 +28,7 @@
+ # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+-"""A script to embed the given (relative) path name to C/C++ characters array.
++r"""A script to embed the given (relative) path name to C/C++ characters array.
+
+ Example:
+ ./embed_pathname.py --path_to_be_embedded=d:\data\mozc
+@@ -53,7 +53,7 @@
+
+ (options, unused_args) = parser.parse_args()
+ if not all(vars(options).values()):
+- print parser.print_help()
++ print(parser.print_help())
+ sys.exit(1)
+
+ return options
+@@ -63,7 +63,7 @@
+ opt = ParseOption()
+ path = os.path.abspath(opt.path_to_be_embedded)
+ # TODO(yukawa): Consider the case of non-ASCII characters.
+- escaped_path = path.encode('string-escape')
++ escaped_path = path.replace('\\', '\\\\')
+ with open(opt.output, 'w') as output_file:
+ output_file.write(
+ 'const char %s[] = "%s";\n' % (opt.constant_name, escaped_path))
+--- /src/build_tools/ensure_gyp_module_path.py
++++ /src/build_tools/ensure_gyp_module_path.py
+@@ -48,7 +48,7 @@
+
+ (options, _) = parser.parse_args()
+ if not options.expected:
+- print parser.print_help()
++ print(parser.print_help())
+ sys.exit(1)
+
+ return options
+@@ -59,20 +59,20 @@
+ opt = ParseOption()
+ expected_path = os.path.abspath(opt.expected)
+ if not os.path.exists(expected_path):
+- print '%s does not exist.' % expected_path
++ print('%s does not exist.' % expected_path)
+ sys.exit(1)
+
+ try:
+ import gyp # NOLINT
+ except ImportError as e:
+- print 'import gyp failed: %s' % e
++ print('import gyp failed: %s' % e)
+ sys.exit(1)
+
+ actual_path = os.path.abspath(gyp.__path__[0])
+ if expected_path != actual_path:
+- print 'Unexpected gyp module is loaded on this environment.'
+- print ' expected: %s' % expected_path
+- print ' actual : %s' % actual_path
++ print('Unexpected gyp module is loaded on this environment.')
++ print(' expected: %s' % expected_path)
++ print(' actual : %s' % actual_path)
+ sys.exit(1)
+
+ if __name__ == '__main__':
+--- /src/build_tools/gen_win32_resource_header.py
++++ /src/build_tools/gen_win32_resource_header.py
+@@ -39,7 +39,7 @@
+ __author__ = "yukawa"
+
+ import logging
+-import mozc_version
++from . import mozc_version
+ import optparse
+ import os
+ import sys
+--- /src/build_tools/mozc_version.py
++++ /src/build_tools/mozc_version.py
+@@ -94,7 +94,7 @@
+ last_digit = TARGET_PLATFORM_TO_DIGIT.get(target_platform, None)
+ if last_digit is None:
+ logging.critical('target_platform %s is invalid. Accetable ones are %s',
+- target_platform, TARGET_PLATFORM_TO_DIGIT.keys())
++ target_platform, list(TARGET_PLATFORM_TO_DIGIT.keys()))
+ sys.exit(1)
+
+ if not revision:
+@@ -314,13 +314,14 @@
+ self._properties = {}
+ if not os.path.isfile(path):
+ return
+- for line in open(path):
+- matchobj = re.match(r'(\w+)=(.*)', line.strip())
+- if matchobj:
+- var = matchobj.group(1)
+- val = matchobj.group(2)
+- if var not in self._properties:
+- self._properties[var] = val
++ with open(path) as file:
++ for line in file:
++ matchobj = re.match(r'(\w+)=(.*)', line.strip())
++ if matchobj:
++ var = matchobj.group(1)
++ val = matchobj.group(2)
++ if var not in self._properties:
++ self._properties[var] = val
+
+ # Check mandatory properties.
+ for key in VERSION_PROPERTIES:
diff --git a/app-i18n/mozc/files/mozc-2.23.2815.102-python-3_2.patch b/app-i18n/mozc/files/mozc-2.23.2815.102-python-3_2.patch
new file mode 100644
index 000000000000..456e8368049a
--- /dev/null
+++ b/app-i18n/mozc/files/mozc-2.23.2815.102-python-3_2.patch
@@ -0,0 +1,600 @@
+https://github.com/google/mozc/issues/462
+
+--- /src/build_tools/redirect.py
++++ /src/build_tools/redirect.py
+@@ -58,14 +58,15 @@
+ process = subprocess.Popen(sys.argv, stdout=subprocess.PIPE,
+ universal_newlines=True)
+ except:
+- print '=========='
+- print ' ERROR: %s' % ' '.join(sys.argv)
+- print '=========='
++ print('==========')
++ print(' ERROR: %s' % ' '.join(sys.argv))
++ print('==========')
+ raise
+ (stdout_content, _) = process.communicate()
+ # Write the stdout content to the output file.
+ output_file = open(output_file_name, 'w')
+ output_file.write(stdout_content)
++ output_file.close()
+ return process.wait()
+
+ if __name__ == '__main__':
+--- /src/build_tools/run_after_chdir.py
++++ /src/build_tools/run_after_chdir.py
+@@ -57,7 +57,7 @@
+ sys.argv.insert(0, sys.executable) # Inject the python interpreter path.
+ # We don't capture stdout and stderr from Popen. The output will just
+ # be emitted to a terminal or console.
+- print sys.argv
++ print(sys.argv)
+ sys.exit(subprocess.call(sys.argv))
+
+ if __name__ == '__main__':
+--- /src/build_tools/serialized_string_array_builder.py
++++ /src/build_tools/serialized_string_array_builder.py
+@@ -58,11 +58,11 @@
+ f.write(struct.pack('>output, '%s.%s:' % (self.name, testcase.name)
++ print('%s.%s:' % (self.name, testcase.name), file=output)
+ for failure in testcase.failures:
+- print >>output, failure.contents.encode('utf-8')
++ print(failure.contents.encode('utf-8'), file=output)
+ return output.getvalue()
+
+ @classmethod
+--- /src/build_tools/test_tools/test_launcher.py
++++ /src/build_tools/test_tools/test_launcher.py
+@@ -101,11 +101,11 @@
+ time.sleep(1)
+ try:
+ shutil.rmtree(self._path)
+- except OSError, e:
++ except OSError as e:
+ logging.error('Failed to remove %s. error: %s', self._path, e)
+
+
+-def _ExecuteTest((command, gtest_report_dir)):
++def _ExecuteTest(args):
+ """Executes tests with specified Test command.
+
+ Args:
+@@ -122,6 +122,7 @@
+ module, which is used in multiprocessing module.
+ (http://docs.python.org/library/pickle.html)
+ """
++ (command, gtest_report_dir) = args
+ binary = command[0]
+ binary_filename = os.path.basename(binary)
+ tmp_dir = tempfile.mkdtemp()
+--- /src/build_tools/tweak_data.py
++++ /src/build_tools/tweak_data.py
+@@ -55,7 +55,7 @@
+ The value for the variable if the variable is defined in the
+ environment. Otherwise original string is returned.
+ """
+- if environment.has_key(matchobj.group(1)):
++ if matchobj.group(1) in environment:
+ return environment[matchobj.group(1)]
+ return matchobj.group(0)
+
+--- /src/build_tools/tweak_info_plist.py
++++ /src/build_tools/tweak_info_plist.py
+@@ -42,8 +42,8 @@
+ import logging
+ import optparse
+ import sys
+-import mozc_version
+-import tweak_data
++from . import mozc_version
++from . import tweak_data
+
+ _COPYRIGHT_YEAR = datetime.date.today().year
+
+@@ -81,7 +81,7 @@
+
+ version = mozc_version.MozcVersion(options.version_file)
+
+- copyright_message = (u'© %d Google Inc.' % _COPYRIGHT_YEAR).encode('utf-8')
++ copyright_message = ('© %d Google Inc.' % _COPYRIGHT_YEAR).encode('utf-8')
+ long_version = version.GetVersionString()
+ short_version = version.GetVersionInFormat('@MAJOR@.@MINOR@.@BUILD@')
+
+--- /src/build_tools/tweak_info_plist_strings.py
++++ /src/build_tools/tweak_info_plist_strings.py
+@@ -40,7 +40,7 @@
+ import logging
+ import optparse
+ import sys
+-import tweak_data
++from . import tweak_data
+
+ _COPYRIGHT_YEAR = datetime.date.today().year
+
+@@ -77,7 +77,7 @@
+ if options.branding == 'GoogleJapaneseInput':
+ variables = {
+ 'CF_BUNDLE_NAME_EN': 'Google Japanese Input',
+- 'CF_BUNDLE_NAME_JA': u'Google 日本語入力'.encode('utf-8'),
++ 'CF_BUNDLE_NAME_JA': 'Google 日本語入力'.encode('utf-8'),
+ 'NS_HUMAN_READABLE_COPYRIGHT': copyright_message,
+ 'INPUT_MODE_ANNOTATION': 'Google',
+ }
+--- /src/build_tools/tweak_macinstaller_script.py
++++ /src/build_tools/tweak_macinstaller_script.py
+@@ -39,7 +39,7 @@
+ import logging
+ import optparse
+
+-import mozc_version
++from . import mozc_version
+
+
+ def _ReplaceVariables(data, environment):
+--- /src/build_tools/tweak_pkgproj.py
++++ /src/build_tools/tweak_pkgproj.py
+@@ -45,7 +45,7 @@
+ import os
+ import plistlib
+ import re
+-import mozc_version
++from . import mozc_version
+
+ from os import path
+
+@@ -71,7 +71,7 @@
+ The value for the variable if the variable is defined in the
+ environment. Otherwise original string is returned.
+ """
+- if environment.has_key(matchobj.group(1)):
++ if matchobj.group(1) in environment:
+ return environment[matchobj.group(1)]
+ return matchobj.group(0)
+
+--- /src/build_tools/util.py
++++ /src/build_tools/util.py
+@@ -73,11 +73,11 @@
+ return 1
+
+
+-class RunOrDieError(StandardError):
++class RunOrDieError(Exception):
+ """The exception class for RunOrDie."""
+
+ def __init__(self, message):
+- StandardError.__init__(self, message)
++ Exception.__init__(self, message)
+
+
+ def RunOrDie(argv):
+@@ -105,7 +105,7 @@
+ return # Do nothing if not exist.
+ if IsWindows():
+ # Read-only files cannot be deleted on Windows.
+- os.chmod(file_name, 0700)
++ os.chmod(file_name, 0o700)
+ logging.debug('Removing file: %s', file_name)
+ os.unlink(file_name)
+
+--- /src/build_tools/zlib_util.py
++++ /src/build_tools/zlib_util.py
+@@ -58,7 +58,7 @@
+
+ def main():
+ if len(sys.argv) != 4:
+- print >>sys.stderr, 'Invalid arguments'
++ print('Invalid arguments', file=sys.stderr)
+ return
+ if sys.argv[1] == 'compress':
+ Compress(sys.argv[2], sys.argv[3])
+@@ -66,7 +66,7 @@
+ if sys.argv[1] == 'decompress':
+ Decompress(sys.argv[2], sys.argv[3])
+ return
+- print >>sys.stderr, 'Unknown command:', sys.argv[1]
++ print('Unknown command:', sys.argv[1], file=sys.stderr)
+
+
+ if __name__ == '__main__':
+--- /src/composer/internal/gen_typing_model.py
++++ /src/composer/internal/gen_typing_model.py
+@@ -54,14 +54,13 @@
+ __author__ = "noriyukit"
+
+ import bisect
+-import codecs
+ import collections
+ import optparse
+ import struct
+
+ UNDEFINED_COST = -1
+-MAX_UINT16 = struct.unpack('H', '\xFF\xFF')[0]
+-MAX_UINT8 = struct.unpack('B', '\xFF')[0]
++MAX_UINT16 = struct.unpack('H', b'\xFF\xFF')[0]
++MAX_UINT8 = struct.unpack('B', b'\xFF')[0]
+
+
+ def ParseArgs():
+@@ -113,7 +112,7 @@
+ sorted_values = list(sorted(set(values)))
+ mapping_table = sorted_values[0]
+ mapping_table_size_without_special_value = mapping_table_size - 1
+- span = len(sorted_values) / (mapping_table_size_without_special_value - 1)
++ span = len(sorted_values) // (mapping_table_size_without_special_value - 1)
+ mapping_table = [sorted_values[i * span]
+ for i
+ in range(0, mapping_table_size_without_special_value - 1)]
+@@ -150,7 +149,7 @@
+
+ def GetValueTable(unique_characters, mapping_table, dictionary):
+ result = []
+- for key, value in dictionary.iteritems():
++ for key, value in dictionary.items():
+ index = GetIndexFromKey(unique_characters, key)
+ while len(result) <= index:
+ result.append(len(mapping_table) - 1)
+@@ -167,13 +166,13 @@
+ romaji_transition_cost)
+ with open(output_path, 'wb') as f:
+ f.write(struct.pack('= %s && %s <= %s)" % (name, r[0], name, r[1]))
+
+ if len(tmp) == 0:
+- print "FATAL: No rule fiind %s" % (pattern)
++ print("FATAL: No rule fiind %s" % (pattern))
+ sys.exit(-1)
+
+ return " || ".join(tmp)
+@@ -115,19 +118,21 @@
+ def main():
+ pos = ReadPOSID(sys.argv[1], sys.argv[2])
+
+- print HEADER % (len(pos.keys()), len(pos.keys()))
++ print(HEADER % (len(pos.keys()), len(pos.keys())))
+
+- for line in open(sys.argv[3], "r"):
++ fh = open(sys.argv[3], "r")
++ for line in fh:
+ if len(line) <= 1 or line[0] == '#':
+ continue
+ (l, r, result) = line.split()
+ result = result.lower()
+ lcond = GetRange(pos, l, "rid") or "true";
+ rcond = GetRange(pos, r, "lid") or "true";
+- print " // %s %s %s" % (l, r, result)
+- print " if ((%s) && (%s)) { return %s; }" % (lcond, rcond, result)
++ print(" // %s %s %s" % (l, r, result))
++ print(" if ((%s) && (%s)) { return %s; }" % (lcond, rcond, result))
++ fh.close()
+
+- print FOOTER
++ print(FOOTER)
+
+ if __name__ == "__main__":
+ main()
+--- /src/data_manager/gen_connection_data.py
++++ /src/data_manager/gen_connection_data.py
+@@ -32,8 +32,7 @@
+
+ __author__ = "hidehiko"
+
+-import cStringIO as StringIO
+-import itertools
++import io
+ import logging
+ import optparse
+ import os
+@@ -45,7 +44,7 @@
+ INVALID_COST = 30000
+ INVALID_1BYTE_COST = 255
+ RESOLUTION_FOR_1BYTE = 64
+-FILE_MAGIC = '\xAB\xCD'
++FILE_MAGIC = b'\xAB\xCD'
+
+ FALSE_VALUES = ['f', 'false', '0']
+ TRUE_VALUES = ['t', 'true', '1']
+@@ -79,28 +78,28 @@
+ # The result is a square matrix.
+ mat_size = pos_size + special_pos_size
+
+- matrix = [[0] * mat_size for _ in xrange(mat_size)]
++ matrix = [[0] * mat_size for _ in range(mat_size)]
+ with open(text_connection_file) as stream:
+ stream = code_generator_util.SkipLineComment(stream)
+ # The first line contains the matrix column/row size.
+- size = stream.next().rstrip()
++ size = next(stream).rstrip()
+ assert (int(size) == pos_size), '%s != %d' % (size, pos_size)
+
+ for array_index, cost in enumerate(stream):
+ cost = int(cost.rstrip())
+- rid = array_index / pos_size
++ rid = array_index // pos_size
+ lid = array_index % pos_size
+ if rid == 0 and lid == 0:
+ cost = 0
+ matrix[rid][lid] = cost
+
+ # Fill INVALID_COST in matrix elements for special POS.
+- for rid in xrange(pos_size, mat_size):
+- for lid in xrange(1, mat_size): # Skip EOS
++ for rid in range(pos_size, mat_size):
++ for lid in range(1, mat_size): # Skip EOS
+ matrix[rid][lid] = INVALID_COST
+
+- for lid in xrange(pos_size, mat_size):
+- for rid in xrange(1, mat_size): # Skip BOS
++ for lid in range(pos_size, mat_size):
++ for rid in range(1, mat_size): # Skip BOS
+ matrix[rid][lid] = INVALID_COST
+
+ return matrix
+@@ -116,7 +115,7 @@
+ # Heuristically, we do not compress INVALID_COST.
+ continue
+ m[cost] = m.get(cost, 0) + 1
+- mode_value = max(m.iteritems(), key=lambda (_, count): count)[0]
++ mode_value = max(m.items(), key=lambda x: x[1])[0]
+ result.append(mode_value)
+ return result
+
+@@ -126,8 +125,8 @@
+ # list, and fill None into the matrix if it equals to the corresponding
+ # mode value.
+ assert len(matrix) == len(mode_value_list)
+- for row, mode_value in itertools.izip(matrix, mode_value_list):
+- for index in xrange(len(row)):
++ for row, mode_value in zip(matrix, mode_value_list):
++ for index in range(len(row)):
+ if row[index] == mode_value:
+ row[index] = None
+
+@@ -179,7 +178,7 @@
+ resolution = RESOLUTION_FOR_1BYTE
+ else:
+ resolution = 1
+- stream = StringIO.StringIO()
++ stream = io.BytesIO()
+
+ # Output header.
+ stream.write(FILE_MAGIC)
+@@ -194,7 +193,7 @@
+
+ # 4 bytes alignment.
+ if len(mode_value_list) % 2:
+- stream.write('\x00\x00')
++ stream.write(b'\x00\x00')
+
+ # Process each row:
+ for row in matrix:
+@@ -218,7 +217,7 @@
+ if cost == INVALID_COST:
+ cost = INVALID_1BYTE_COST
+ else:
+- cost /= resolution
++ cost //= resolution
+ assert cost != INVALID_1BYTE_COST
+ values.append(cost)
+
+@@ -237,7 +236,7 @@
+ values_size = len(values) * 2
+
+ # Output the bits for a row.
+- stream.write(struct.pack('(-1)')
++ b'static_cast< ::mozc::user_dictionary::UserDictionary::PosType>(-1)')
+ else:
+- value = '::mozc::user_dictionary::UserDictionary::' + value
+- output.write(' { %s, %s },\n' % (key, value))
++ value = b'::mozc::user_dictionary::UserDictionary::' + value
++ output.write(b' { %s, %s },\n' % (key, value))
+ output.write(FOOTER)
+
+
+@@ -121,7 +121,7 @@
+ pos_map = GeneratePosMap(options.third_party_pos_map_file,
+ options.user_pos_file)
+
+- with open(options.output, 'w') as stream:
++ with open(options.output, 'wb') as stream:
+ OutputPosMap(pos_map, stream)
+
+
+--- /src/dictionary/gen_pos_rewrite_rule.py
++++ /src/dictionary/gen_pos_rewrite_rule.py
+@@ -46,29 +46,34 @@
+
+
+ def LoadRewriteMapRule(filename):
+- fh = open(filename)
++ fh = open(filename, 'rb')
+ rule = []
+ for line in fh:
+- line = line.rstrip('\n')
+- if not line or line.startswith('#'):
++ line = line.rstrip(b'\n')
++ if not line or line.startswith(b'#'):
+ continue
+ fields = line.split()
+ rule.append([fields[0], fields[1]])
++ fh.close()
+ return rule
+
+
+ def ReadPOSID(id_file, special_pos_file):
+ pos_list = []
+
+- for line in open(id_file, 'r'):
++ fh = open(id_file, 'rb')
++ for line in fh:
+ fields = line.split()
+ pos_list.append(fields[1])
++ fh.close()
+
+- for line in open(special_pos_file, 'r'):
+- if len(line) <= 1 or line[0] == '#':
++ fh = open(special_pos_file, 'rb')
++ for line in fh:
++ if len(line) <= 1 or line[0:1] == b'#':
+ continue
+ fields = line.split()
+ pos_list.append(fields[0])
++ fh.close()
+
+ return pos_list
+
+@@ -112,7 +117,7 @@
+ ids.append(id)
+
+ with open(opts.output, 'wb') as f:
+- f.write(''.join(chr(id) for id in ids))
++ f.write(''.join(chr(id) for id in ids).encode('utf-8'))
+
+
+ if __name__ == '__main__':
+--- /src/dictionary/gen_suffix_data.py
++++ /src/dictionary/gen_suffix_data.py
+@@ -52,10 +52,10 @@
+ opts = _ParseOptions()
+
+ result = []
+- with open(opts.input, 'r') as stream:
++ with open(opts.input, 'rb') as stream:
+ for line in stream:
+- line = line.rstrip('\r\n')
+- fields = line.split('\t')
++ line = line.rstrip(b'\r\n')
++ fields = line.split(b'\t')
+ key = fields[0]
+ lid = int(fields[1])
+ rid = int(fields[2])
+@@ -63,7 +63,7 @@
+ value = fields[4]
+
+ if key == value:
+- value = ''
++ value = b''
+
+ result.append((key, value, lid, rid, cost))
+
+--- /src/dictionary/gen_user_pos_data.py
++++ /src/dictionary/gen_user_pos_data.py
+@@ -64,7 +64,7 @@
+ f.write(struct.pack(' XX町YY and (XX町)ZZ
+ # YY、ZZ
+ # -> YY and ZZ
+- chou_match = re.match(u'(.*町)?(.*)', level3, re.U)
++ chou_match = re.match('(.*町)?(.*)', level3, re.U)
+ if chou_match:
+- chou = u''
++ chou = ''
+ if chou_match.group(1):
+ chou = chou_match.group(1)
+ rests = chou_match.group(2)
+- return [chou + rest for rest in rests.split(u'、')]
++ return [chou + rest for rest in rests.split('、')]
+
+ return [level3]
+
+
+ def CanParseAddress(address):
+ """Return true for valid address."""
+- return (address.find(u'(') == -1 or
+- address.find(u')') != -1)
++ return (address.find('(') == -1 or
++ address.find(')') != -1)
+
+
+ def ParseOptions():
+--- /src/dictionary/zip_code_util.py
++++ /src/dictionary/zip_code_util.py
+@@ -86,11 +86,11 @@
+
+
+ _SPECIAL_CASES = [
+- SpecialMergeZip(u'5900111', u'大阪府', u'堺市中区', [u'三原台']),
+- SpecialMergeZip(u'8710046', u'大分県', u'中津市',
+- [u'金谷', u'西堀端', u'東堀端', u'古金谷']),
+- SpecialMergeZip(u'9218046', u'石川県', u'金沢市',
+- [u'大桑町', u'三小牛町']),
++ SpecialMergeZip('5900111', '大阪府', '堺市中区', ['三原台']),
++ SpecialMergeZip('8710046', '大分県', '中津市',
++ ['金谷', '西堀端', '東堀端', '古金谷']),
++ SpecialMergeZip('9218046', '石川県', '金沢市',
++ ['大桑町', '三小牛町']),
+ ]
+
+
+--- /src/gui/character_pad/data/gen_cp932_map.py
++++ /src/gui/character_pad/data/gen_cp932_map.py
+@@ -32,7 +32,6 @@
+
+ import re
+ import sys
+-import string
+
+ kUnicodePat = re.compile(r'0x[0-9A-Fa-f]{2,4}')
+ def IsValidUnicode(n):
+@@ -42,28 +41,29 @@
+ fh = open(sys.argv[1])
+ result = {}
+ for line in fh.readlines():
+- if line[0] is '#':
++ if line[0] == '#':
+ continue
+- array = string.split(line)
++ array = line.split()
+ sjis = array[0]
+ ucs2 = array[1]
+ if eval(sjis) < 32 or not IsValidUnicode(ucs2):
+ continue
+ result.setdefault(ucs2, sjis)
++ fh.close()
+
+ keys = sorted(result.keys())
+
+- print "struct CP932MapData {"
+- print " unsigned int ucs4;"
+- print " unsigned short int sjis;"
+- print "};"
+- print ""
+- print "static const size_t kCP932MapDataSize = %d;" % (len(keys))
+- print "static const CP932MapData kCP932MapData[] = {"
++ print("struct CP932MapData {")
++ print(" unsigned int ucs4;")
++ print(" unsigned short int sjis;")
++ print("};")
++ print("")
++ print("static const size_t kCP932MapDataSize = %d;" % (len(keys)))
++ print("static const CP932MapData kCP932MapData[] = {")
+ for n in keys:
+- print " { %s, %s }," % (n ,result[n])
+- print " { 0, 0 }";
+- print "};"
++ print(" { %s, %s }," % (n ,result[n]))
++ print(" { 0, 0 }");
++ print("};")
+
+ if __name__ == "__main__":
+ main()
+--- /src/gui/character_pad/data/gen_local_character_map.py
++++ /src/gui/character_pad/data/gen_local_character_map.py
+@@ -30,7 +30,6 @@
+
+ __author__ = "taku"
+
+-import string
+ import re
+ import sys
+
+@@ -43,9 +42,9 @@
+ fh = open(filename)
+ result = []
+ for line in fh.readlines():
+- if line[0] is '#':
++ if line[0] == '#':
+ continue
+- array = string.split(line)
++ array = line.split()
+ jis = array[0].replace('0x', '')
+ ucs2 = array[1].replace('0x', '')
+ if len(jis) == 2:
+@@ -53,6 +52,7 @@
+
+ if IsValidUnicode(ucs2):
+ result.append([jis, ucs2])
++ fh.close()
+
+ return ["JISX0201", result]
+
+@@ -60,13 +60,14 @@
+ fh = open(filename)
+ result = []
+ for line in fh.readlines():
+- if line[0] is '#':
++ if line[0] == '#':
+ continue
+ array = line.split()
+ jis = array[1].replace('0x', '')
+ ucs2 = array[2].replace('0x', '')
+ if IsValidUnicode(ucs2):
+ result.append([jis, ucs2])
++ fh.close()
+
+ return ["JISX0208", result]
+
+@@ -74,13 +75,14 @@
+ fh = open(filename)
+ result = []
+ for line in fh.readlines():
+- if line[0] is '#':
++ if line[0] == '#':
+ continue
+ array = line.split()
+ jis = array[0].replace('0x', '')
+ ucs2 = array[1].replace('0x', '')
+ if IsValidUnicode(ucs2):
+ result.append([jis, ucs2])
++ fh.close()
+
+ return ["JISX0212", result]
+
+@@ -88,7 +90,7 @@
+ fh = open(filename)
+ result = []
+ for line in fh.readlines():
+- if line[0] is '#':
++ if line[0] == '#':
+ continue
+ array = line.split()
+ sjis = array[0].replace('0x', '')
+@@ -100,19 +102,20 @@
+
+ if IsValidUnicode(ucs2):
+ result.append([sjis, ucs2])
++ fh.close()
+
+ return ["CP932", result]
+
+ def Output(arg):
+ name = arg[0]
+ result = arg[1]
+- print "static const size_t k%sMapSize = %d;" % (name, len(result))
+- print "static const mozc::gui::CharacterPalette::LocalCharacterMap k%sMap[] = {" % (name)
++ print("static const size_t k%sMapSize = %d;" % (name, len(result)))
++ print("static const mozc::gui::CharacterPalette::LocalCharacterMap k%sMap[] = {" % (name))
+ for n in result:
+- print " { 0x%s, 0x%s }," % (n[0] ,n[1])
+- print " { 0, 0 }";
+- print "};"
+- print ""
++ print(" { 0x%s, 0x%s }," % (n[0] ,n[1]))
++ print(" { 0, 0 }");
++ print("};")
++ print("")
+
+ if __name__ == "__main__":
+ Output(LoadJISX0201(sys.argv[1]))
+--- /src/gui/character_pad/data/gen_unicode_blocks.py
++++ /src/gui/character_pad/data/gen_unicode_blocks.py
+@@ -33,13 +33,13 @@
+ import sys
+ import re
+
+-re = re.compile('^(.....?)\.\.(.....?); (.+)')
++re = re.compile(r'^(.....?)\.\.(.....?); (.+)')
+
+ def main():
+- print "static const mozc::gui::CharacterPalette::UnicodeBlock kUnicodeBlockTable[] = {"
++ print("static const mozc::gui::CharacterPalette::UnicodeBlock kUnicodeBlockTable[] = {")
+ fh = open(sys.argv[1])
+ for line in fh.readlines():
+- if line[0] is '#':
++ if line[0] == '#':
+ continue
+ m = re.match(line)
+ if m is not None:
+@@ -47,11 +47,12 @@
+ end = int(m.group(2), 16)
+ name = m.group(3)
+ if start <= 0x2FFFF and end <= 0x2FFFF:
+- print " { \"%s\", { %d, %d } }," % (name, start, end)
++ print(" { \"%s\", { %d, %d } }," % (name, start, end))
++ fh.close()
+
+- print " { NULL, { 0, 0 } }"
+- print "};"
+- print ""
++ print(" { NULL, { 0, 0 } }")
++ print("};")
++ print("")
+
+ if __name__ == "__main__":
+ main()
+--- /src/gui/character_pad/data/gen_unicode_data.py
++++ /src/gui/character_pad/data/gen_unicode_data.py
+@@ -46,18 +46,19 @@
+ code = int(code, 16)
+ if code < 0x2FFFF:
+ results.append(" { %d, \"%s\" }," % (code, desc))
++ fh.close()
+
+- print "struct UnicodeData {";
+- print " char32 ucs4;";
+- print " const char *description;";
+- print "};";
+- print ""
+- print "static const size_t kUnicodeDataSize = %d;" % (len(results))
+- print "static const UnicodeData kUnicodeData[] = {";
++ print("struct UnicodeData {");
++ print(" char32 ucs4;");
++ print(" const char *description;");
++ print("};");
++ print("")
++ print("static const size_t kUnicodeDataSize = %d;" % (len(results)))
++ print("static const UnicodeData kUnicodeData[] = {");
+ for line in results:
+- print line;
+- print " { 0, NULL }";
+- print "};";
++ print(line);
++ print(" { 0, NULL }");
++ print("};");
+
+ if __name__ == "__main__":
+ main()
+--- /src/gui/character_pad/data/gen_unihan_data.py
++++ /src/gui/character_pad/data/gen_unihan_data.py
+@@ -31,35 +31,34 @@
+ __author__ = "taku"
+
+ import re
+-import string
+ import sys
+ rs = {}
+
+ def Escape(n):
+- if n is not "NULL":
++ if n != "NULL":
+ return "\"%s\"" % (n)
+ else:
+ return "NULL"
+
+ def GetCode(n):
+- if n is not "NULL":
+- n = string.replace(n, '0-', 'JIS X 0208: 0x')
+- n = string.replace(n, '1-', 'JIS X 0212: 0x')
+- n = string.replace(n, '3-', 'JIS X 0213: 0x')
+- n = string.replace(n, '4-', 'JIS X 0213: 0x')
+- n = string.replace(n, 'A-', 'Vendors Ideographs: 0x')
+- n = string.replace(n, '3A', 'JIS X 0213 2000: 0x')
++ if n != "NULL":
++ n = n.replace('0-', 'JIS X 0208: 0x')
++ n = n.replace('1-', 'JIS X 0212: 0x')
++ n = n.replace('3-', 'JIS X 0213: 0x')
++ n = n.replace('4-', 'JIS X 0213: 0x')
++ n = n.replace('A-', 'Vendors Ideographs: 0x')
++ n = n.replace('3A', 'JIS X 0213 2000: 0x')
+ return "\"%s\"" % n
+ else:
+ return "NULL"
+
+ def GetRadical(n):
+ pat = re.compile(r'^(\d+)\.')
+- if n is not "NULL":
++ if n != "NULL":
+ m = pat.match(n)
+ if m:
+ result = rs[m.group(1)]
+- return "\"%s\"" % (result.encode('string_escape'))
++ return "\"%s\"" % result
+ else:
+ return "NULL"
+ else:
+@@ -73,6 +72,7 @@
+ id = array[1]
+ radical = array[2]
+ rs[id] = radical
++ fh.close()
+
+ dic = {}
+ pat = re.compile(r'^U\+(\S+)\s+(kTotalStrokes|kJapaneseKun|kJapaneseOn|kRSUnicode|kIRG_JSource)\t(.+)')
+@@ -86,23 +86,24 @@
+ n = int(m.group(1), 16)
+ if n <= 65536:
+ dic.setdefault(key, {}).setdefault(field, value)
++ fh.close()
+
+ keys = sorted(dic.keys())
+
+- print "struct UnihanData {";
+- print " unsigned int ucs4;";
++ print("struct UnihanData {");
++ print(" unsigned int ucs4;");
+ # Since the total strokes defined in Unihan data is Chinese-based
+ # number, we can't use it.
+ # print " unsigned char total_strokes;";
+- print " const char *japanese_kun;";
+- print " const char *japanese_on;";
++ print(" const char *japanese_kun;");
++ print(" const char *japanese_on;");
+ # Since the radical information defined in Unihan data is Chinese-based
+ # number, we can't use it.
+ # print " const char *radical;";
+- print " const char *IRG_jsource;";
+- print "};"
+- print "static const size_t kUnihanDataSize = %d;" % (len(keys))
+- print "static const UnihanData kUnihanData[] = {"
++ print(" const char *IRG_jsource;");
++ print("};")
++ print("static const size_t kUnihanDataSize = %d;" % (len(keys)))
++ print("static const UnihanData kUnihanData[] = {")
+
+ for key in keys:
+ total_strokes = dic[key].get("kTotalStrokes", "0")
+@@ -111,9 +112,9 @@
+ rad = GetRadical(dic[key].get("kRSUnicode", "NULL"))
+ code = GetCode(dic[key].get("kIRG_JSource", "NULL"))
+ # print " { 0x%s, %s, %s, %s, %s, %s }," % (key, total_strokes, kun, on, rad, code)
+- print " { 0x%s, %s, %s, %s }," % (key, kun, on, code)
++ print(" { 0x%s, %s, %s, %s }," % (key, kun, on, code))
+
+- print "};"
++ print("};")
+
+ if __name__ == "__main__":
+ main()
diff --git a/app-i18n/mozc/files/mozc-2.23.2815.102-python-3_4.patch b/app-i18n/mozc/files/mozc-2.23.2815.102-python-3_4.patch
new file mode 100644
index 000000000000..41d2bf9eeb90
--- /dev/null
+++ b/app-i18n/mozc/files/mozc-2.23.2815.102-python-3_4.patch
@@ -0,0 +1,537 @@
+https://github.com/google/mozc/issues/462
+
+--- /src/prediction/gen_zero_query_data.py
++++ /src/prediction/gen_zero_query_data.py
+@@ -59,20 +59,20 @@
+ Returns:
+ A integer indicating parsed pua.
+ """
+- if not s or s[0] == '>':
++ if not s or s[0:1] == b'>':
+ return 0
+ return int(s, 16)
+
+
+ def NormalizeString(string):
+ return unicodedata.normalize(
+- 'NFKC', string.decode('utf-8')).encode('utf-8').replace('~', '〜')
++ 'NFKC', string.decode('utf-8')).replace('~', '〜').encode('utf-8')
+
+
+ def RemoveTrailingNumber(string):
+ if not string:
+- return ''
+- return re.sub(r'^([^0-9]+)[0-9]+$', r'\1', string)
++ return b''
++ return re.sub(br'^([^0-9]+)[0-9]+$', r'\1', string)
+
+
+ def GetReadingsFromDescription(description):
+@@ -84,19 +84,19 @@
+ # - ビル・建物
+ # \xE3\x83\xBB : "・"
+ return [RemoveTrailingNumber(token) for token
+- in re.split(r'(?:\(|\)|/|\xE3\x83\xBB)+', normalized)]
++ in re.split(br'(?:\(|\)|/|\xE3\x83\xBB)+', normalized)]
+
+
+ def ReadEmojiTsv(stream):
+ """Reads emoji data from stream and returns zero query data."""
+ zero_query_dict = defaultdict(list)
+ stream = code_generator_util.SkipLineComment(stream)
+- for columns in code_generator_util.ParseColumnStream(stream, delimiter='\t'):
++ for columns in code_generator_util.ParseColumnStream(stream, delimiter=b'\t'):
+ if len(columns) != 13:
+- logging.critical('format error: %s', '\t'.join(columns))
++ logging.critical('format error: %s', b'\t'.join(columns))
+ sys.exit(1)
+
+- code_points = columns[0].split(' ')
++ code_points = columns[0].split(b' ')
+
+ # Emoji code point.
+ emoji = columns[1]
+@@ -114,12 +114,12 @@
+ # - Composite emoji which has multiple code point.
+ # NOTE: Some Unicode 6.0 emoji don't have PUA, and it is also omitted.
+ # TODO(hsumita): Check the availability of such emoji and enable it.
+- logging.info('Skip %s', ' '.join(code_points))
++ logging.info('Skip %s', b' '.join(code_points))
+ continue
+
+ reading_list = []
+ # \xe3\x80\x80 is a full-width space
+- for reading in re.split(r'(?: |\xe3\x80\x80)+', NormalizeString(readings)):
++ for reading in re.split(br'(?: |\xe3\x80\x80)+', NormalizeString(readings)):
+ if not reading:
+ continue
+ reading_list.append(reading)
+@@ -158,15 +158,15 @@
+ zero_query_dict = defaultdict(list)
+
+ for line in input_stream:
+- if line.startswith('#'):
++ if line.startswith(b'#'):
+ continue
+- line = line.rstrip('\r\n')
++ line = line.rstrip(b'\r\n')
+ if not line:
+ continue
+
+- tokens = line.split('\t')
++ tokens = line.split(b'\t')
+ key = tokens[0]
+- values = tokens[1].split(',')
++ values = tokens[1].split(b',')
+
+ for value in values:
+ zero_query_dict[key].append(
+@@ -179,16 +179,16 @@
+ """Reads emoticon data from stream and returns zero query data."""
+ zero_query_dict = defaultdict(list)
+ stream = code_generator_util.SkipLineComment(stream)
+- for columns in code_generator_util.ParseColumnStream(stream, delimiter='\t'):
++ for columns in code_generator_util.ParseColumnStream(stream, delimiter=b'\t'):
+ if len(columns) != 3:
+- logging.critical('format error: %s', '\t'.join(columns))
++ logging.critical('format error: %s', b'\t'.join(columns))
+ sys.exit(1)
+
+ emoticon = columns[0]
+ readings = columns[2]
+
+ # \xe3\x80\x80 is a full-width space
+- for reading in re.split(r'(?: |\xe3\x80\x80)+', readings.strip()):
++ for reading in re.split(br'(?: |\xe3\x80\x80)+', readings.strip()):
+ if not reading:
+ continue
+ zero_query_dict[reading].append(
+@@ -202,9 +202,9 @@
+ """Reads emoji data from stream and returns zero query data."""
+ zero_query_dict = defaultdict(list)
+ stream = code_generator_util.SkipLineComment(stream)
+- for columns in code_generator_util.ParseColumnStream(stream, delimiter='\t'):
++ for columns in code_generator_util.ParseColumnStream(stream, delimiter=b'\t'):
+ if len(columns) < 3:
+- logging.warning('format error: %s', '\t'.join(columns))
++ logging.warning('format error: %s', b'\t'.join(columns))
+ continue
+
+ symbol = columns[1]
+@@ -222,7 +222,7 @@
+ continue
+
+ # \xe3\x80\x80 is a full-width space
+- for reading in re.split(r'(?: |\xe3\x80\x80)+', readings.strip()):
++ for reading in re.split(br'(?: |\xe3\x80\x80)+', readings.strip()):
+ if not reading:
+ continue
+ zero_query_dict[reading].append(
+@@ -247,7 +247,7 @@
+
+ def IsValidKeyForZeroQuery(key):
+ """Returns if the key is valid for zero query trigger."""
+- is_ascii = all(ord(char) < 128 for char in key)
++ is_ascii = all(char < 128 for char in key)
+ return not is_ascii
+
+
+@@ -301,13 +301,13 @@
+
+ def main():
+ options = ParseOptions()
+- with open(options.input_rule, 'r') as input_stream:
++ with open(options.input_rule, 'rb') as input_stream:
+ zero_query_rule_dict = ReadZeroQueryRuleData(input_stream)
+- with open(options.input_symbol, 'r') as input_stream:
++ with open(options.input_symbol, 'rb') as input_stream:
+ zero_query_symbol_dict = ReadSymbolTsv(input_stream)
+- with open(options.input_emoji, 'r') as input_stream:
++ with open(options.input_emoji, 'rb') as input_stream:
+ zero_query_emoji_dict = ReadEmojiTsv(input_stream)
+- with open(options.input_emoticon, 'r') as input_stream:
++ with open(options.input_emoticon, 'rb') as input_stream:
+ zero_query_emoticon_dict = ReadEmoticonTsv(input_stream)
+
+ merged_zero_query_dict = MergeZeroQueryData(
+--- /src/prediction/gen_zero_query_number_data.py
++++ /src/prediction/gen_zero_query_number_data.py
+@@ -41,15 +41,15 @@
+ zero_query_dict = defaultdict(list)
+
+ for line in input_stream:
+- if line.startswith('#'):
++ if line.startswith(b'#'):
+ continue
+- line = line.rstrip('\r\n')
++ line = line.rstrip(b'\r\n')
+ if not line:
+ continue
+
+- tokens = line.split('\t')
++ tokens = line.split(b'\t')
+ key = tokens[0]
+- values = tokens[1].split(',')
++ values = tokens[1].split(b',')
+
+ for value in values:
+ zero_query_dict[key].append(
+@@ -71,7 +71,7 @@
+
+ def main():
+ options = ParseOption()
+- with open(options.input, 'r') as input_stream:
++ with open(options.input, 'rb') as input_stream:
+ zero_query_dict = ReadZeroQueryNumberData(input_stream)
+ util.WriteZeroQueryData(zero_query_dict,
+ options.output_token_array,
+--- /src/prediction/gen_zero_query_util.py
++++ /src/prediction/gen_zero_query_util.py
+@@ -69,7 +69,7 @@
+ output_string_array):
+ # Collect all the strings and assing index in ascending order
+ string_index = {}
+- for key, entry_list in zero_query_dict.iteritems():
++ for key, entry_list in zero_query_dict.items():
+ string_index[key] = 0
+ for entry in entry_list:
+ string_index[entry.value] = 0
+--- /src/rewriter/gen_counter_suffix_array.py
++++ /src/rewriter/gen_counter_suffix_array.py
+@@ -43,7 +43,7 @@
+ with codecs.open(id_file, 'r', encoding='utf-8') as stream:
+ stream = code_generator_util.ParseColumnStream(stream, num_column=2)
+ for pos_id, pos_name in stream:
+- if pos_name.startswith(u'名詞,接尾,助数詞'):
++ if pos_name.startswith('名詞,接尾,助数詞'):
+ pos_ids.add(pos_id)
+ return pos_ids
+
+--- /src/rewriter/gen_emoji_rewriter_data.py
++++ /src/rewriter/gen_emoji_rewriter_data.py
+@@ -74,19 +74,19 @@
+ the glyph (in other words, it has alternative (primary) code point, which
+ doesn't lead '>' and that's why we'll ignore it).
+ """
+- if not s or s[0] == '>':
++ if not s or s[0:1] == b'>':
+ return None
+ return int(s, 16)
+
+
+-_FULLWIDTH_RE = re.compile(ur'[!-~]') # U+FF01 - U+FF5E
++_FULLWIDTH_RE = re.compile(r'[!-~]') # U+FF01 - U+FF5E
+
+
+ def NormalizeString(string):
+ """Normalize full width ascii characters to half width characters."""
+- offset = ord(u'A') - ord(u'A')
+- return _FULLWIDTH_RE.sub(lambda x: unichr(ord(x.group(0)) - offset),
+- unicode(string, 'utf-8')).encode('utf-8')
++ offset = ord('A') - ord('A')
++ return _FULLWIDTH_RE.sub(lambda x: chr(ord(x.group(0)) - offset),
++ string.decode('utf-8')).encode('utf-8')
+
+
+ def ReadEmojiTsv(stream):
+@@ -96,14 +96,14 @@
+ token_dict = defaultdict(list)
+
+ stream = code_generator_util.SkipLineComment(stream)
+- for columns in code_generator_util.ParseColumnStream(stream, delimiter='\t'):
++ for columns in code_generator_util.ParseColumnStream(stream, delimiter=b'\t'):
+ if len(columns) != 13:
+- logging.critical('format error: %s', '\t'.join(columns))
++ logging.critical('format error: %s', b'\t'.join(columns))
+ sys.exit(1)
+
+- code_points = columns[0].split(' ')
++ code_points = columns[0].split(b' ')
+ # Emoji code point.
+- emoji = columns[1] if columns[1] else ''
++ emoji = columns[1] if columns[1] else b''
+ android_pua = ParseCodePoint(columns[2])
+ docomo_pua = ParseCodePoint(columns[3])
+ softbank_pua = ParseCodePoint(columns[4])
+@@ -112,10 +112,10 @@
+ readings = columns[6]
+
+ # [7]: Name defined in Unicode. It is ignored in current implementation.
+- utf8_description = columns[8] if columns[8] else ''
+- docomo_description = columns[9] if columns[9] else ''
+- softbank_description = columns[10] if columns[10] else ''
+- kddi_description = columns[11] if columns[11] else ''
++ utf8_description = columns[8] if columns[8] else b''
++ docomo_description = columns[9] if columns[9] else b''
++ softbank_description = columns[10] if columns[10] else b''
++ kddi_description = columns[11] if columns[11] else b''
+
+ if not android_pua or len(code_points) > 1:
+ # Skip some emoji, which is not supported on old devices.
+@@ -123,7 +123,7 @@
+ # - Composite emoji which has multiple code point.
+ # NOTE: Some Unicode 6.0 emoji don't have PUA, and it is also omitted.
+ # TODO(hsumita): Check the availability of such emoji and enable it.
+- logging.info('Skip %s', ' '.join(code_points))
++ logging.info('Skip %s', b' '.join(code_points))
+ continue
+
+ # Check consistency between carrier PUA codes and descriptions for Android
+@@ -132,7 +132,7 @@
+ (bool(softbank_pua) != bool(softbank_description)) or
+ (bool(kddi_pua) != bool(kddi_description))):
+ logging.warning('carrier PUA and description conflict: %s',
+- '\t'.join(columns))
++ b'\t'.join(columns))
+ continue
+
+ # Check if the character is usable on Android.
+@@ -140,7 +140,7 @@
+ android_pua = 0 # Replace None with 0.
+
+ if not emoji and not android_pua:
+- logging.info('Skip: %s', '\t'.join(columns))
++ logging.info('Skip: %s', b'\t'.join(columns))
+ continue
+
+ index = len(emoji_data_list)
+@@ -149,7 +149,7 @@
+ kddi_description))
+
+ # \xe3\x80\x80 is a full-width space
+- for reading in re.split(r'(?: |\xe3\x80\x80)+', readings.strip()):
++ for reading in re.split(br'(?: |\xe3\x80\x80)+', readings.strip()):
+ if reading:
+ token_dict[NormalizeString(reading)].append(index)
+
+@@ -159,7 +159,7 @@
+ def OutputData(emoji_data_list, token_dict,
+ token_array_file, string_array_file):
+ """Output token and string arrays to files."""
+- sorted_token_dict = sorted(token_dict.iteritems())
++ sorted_token_dict = sorted(token_dict.items())
+
+ strings = {}
+ for reading, _ in sorted_token_dict:
+@@ -171,7 +171,7 @@
+ strings[docomo_description] = 0
+ strings[softbank_description] = 0
+ strings[kddi_description] = 0
+- sorted_strings = sorted(strings.iterkeys())
++ sorted_strings = sorted(strings.keys())
+ for index, s in enumerate(sorted_strings):
+ strings[s] = index
+
+@@ -205,7 +205,7 @@
+
+ def main():
+ options = ParseOptions()
+- with open(options.input, 'r') as input_stream:
++ with open(options.input, 'rb') as input_stream:
+ (emoji_data_list, token_dict) = ReadEmojiTsv(input_stream)
+
+ OutputData(emoji_data_list, token_dict,
+--- /src/rewriter/gen_reading_correction_data.py
++++ /src/rewriter/gen_reading_correction_data.py
+@@ -63,7 +63,7 @@
+ def WriteData(input_path, output_value_array_path, output_error_array_path,
+ output_correction_array_path):
+ outputs = []
+- with open(input_path) as input_stream:
++ with open(input_path, 'rb') as input_stream:
+ input_stream = code_generator_util.SkipLineComment(input_stream)
+ input_stream = code_generator_util.ParseColumnStream(input_stream,
+ num_column=3)
+@@ -73,7 +73,7 @@
+
+ # In order to lookup the entries via |error| with binary search,
+ # sort outputs here.
+- outputs.sort(lambda x, y: cmp(x[1], y[1]) or cmp(x[0], y[0]))
++ outputs.sort(key=lambda x: (x[1], x[0]))
+
+ serialized_string_array_builder.SerializeToFile(
+ [value for (value, _, _) in outputs], output_value_array_path)
+--- /src/rewriter/gen_single_kanji_rewriter_data.py
++++ /src/rewriter/gen_single_kanji_rewriter_data.py
+@@ -52,7 +52,7 @@
+ stream = code_generator_util.ParseColumnStream(stream, num_column=2)
+ outputs = list(stream)
+ # For binary search by |key|, sort outputs here.
+- outputs.sort(lambda x, y: cmp(x[0], y[0]))
++ outputs.sort(key=lambda x: x[0])
+
+ return outputs
+
+@@ -72,7 +72,7 @@
+ variant_items.append([target, original, len(variant_types) - 1])
+
+ # For binary search by |target|, sort variant items here.
+- variant_items.sort(lambda x, y: cmp(x[0], y[0]))
++ variant_items.sort(key=lambda x: x[0])
+
+ return (variant_types, variant_items)
+
+@@ -151,10 +151,10 @@
+ def main():
+ options = _ParseOptions()
+
+- with open(options.single_kanji_file, 'r') as single_kanji_stream:
++ with open(options.single_kanji_file, 'rb') as single_kanji_stream:
+ single_kanji = ReadSingleKanji(single_kanji_stream)
+
+- with open(options.variant_file, 'r') as variant_stream:
++ with open(options.variant_file, 'rb') as variant_stream:
+ variant_info = ReadVariant(variant_stream)
+
+ WriteSingleKanji(single_kanji,
+--- /src/session/gen_session_stress_test_data.py
++++ /src/session/gen_session_stress_test_data.py
+@@ -50,24 +50,26 @@
+ """
+ result = ''
+ for c in s:
+- hexstr = hex(ord(c))
++ hexstr = hex(c)
+ # because hexstr contains '0x', remove the prefix and add our prefix
+ result += '\\x' + hexstr[2:]
+ return result
+
+ def GenerateHeader(file):
+ try:
+- print "const char *kTestSentences[] = {"
+- for line in open(file, "r"):
+- if line.startswith('#'):
++ print("const char *kTestSentences[] = {")
++ fh = open(file, "rb")
++ for line in fh:
++ if line.startswith(b'#'):
+ continue
+- line = line.rstrip('\r\n')
++ line = line.rstrip(b'\r\n')
+ if not line:
+ continue
+- print " \"%s\"," % escape_string(line)
+- print "};"
++ print(" \"%s\"," % escape_string(line))
++ fh.close()
++ print("};")
+ except:
+- print "cannot open %s" % (file)
++ print("cannot open %s" % (file))
+ sys.exit(1)
+
+ def main():
+--- /src/unix/ibus/gen_mozc_xml.py
++++ /src/unix/ibus/gen_mozc_xml.py
+@@ -74,7 +74,7 @@
+
+
+ def OutputXmlElement(param_dict, element_name, value):
+- print ' <%s>%s%s>' % (element_name, (value % param_dict), element_name)
++ print(' <%s>%s%s>' % (element_name, (value % param_dict), element_name))
+
+
+ def OutputXml(param_dict, component, engine_common, engines, setup_arg):
+@@ -90,26 +90,26 @@
+ engines: A dictionary from a property name to a list of property values of
+ engines. For example, {'name': ['mozc-jp', 'mozc', 'mozc-dv']}.
+ """
+- print ''
+- for key in component:
++ print('')
++ for key in sorted(component):
+ OutputXmlElement(param_dict, key, component[key])
+- print ''
++ print('')
+ for i in range(len(engines['name'])):
+- print ''
+- for key in engine_common:
++ print('')
++ for key in sorted(engine_common):
+ OutputXmlElement(param_dict, key, engine_common[key])
+ if setup_arg:
+ OutputXmlElement(param_dict, 'setup', ' '.join(setup_arg))
+- for key in engines:
++ for key in sorted(engines):
+ OutputXmlElement(param_dict, key, engines[key][i])
+- print ''
+- print ''
+- print ''
++ print('')
++ print('')
++ print('')
+
+
+ def OutputCppVariable(param_dict, prefix, variable_name, value):
+- print 'const char k%s%s[] = "%s";' % (prefix, variable_name.capitalize(),
+- (value % param_dict))
++ print('const char k%s%s[] = "%s";' % (prefix, variable_name.capitalize(),
++ (value % param_dict)))
+
+
+ def OutputCpp(param_dict, component, engine_common, engines):
+@@ -122,18 +122,18 @@
+ engines: ditto.
+ """
+ guard_name = 'MOZC_UNIX_IBUS_MAIN_H_'
+- print CPP_HEADER % (guard_name, guard_name)
+- for key in component:
++ print(CPP_HEADER % (guard_name, guard_name))
++ for key in sorted(component):
+ OutputCppVariable(param_dict, 'Component', key, component[key])
+- for key in engine_common:
++ for key in sorted(engine_common):
+ OutputCppVariable(param_dict, 'Engine', key, engine_common[key])
+- for key in engines:
+- print 'const char* kEngine%sArray[] = {' % key.capitalize()
++ for key in sorted(engines):
++ print('const char* kEngine%sArray[] = {' % key.capitalize())
+ for i in range(len(engines[key])):
+- print '"%s",' % (engines[key][i] % param_dict)
+- print '};'
+- print 'const size_t kEngineArrayLen = %s;' % len(engines['name'])
+- print CPP_FOOTER % guard_name
++ print('"%s",' % (engines[key][i] % param_dict))
++ print('};')
++ print('const size_t kEngineArrayLen = %s;' % len(engines['name']))
++ print(CPP_FOOTER % guard_name)
+
+
+ def CheckIBusVersion(options, minimum_version):
+--- /src/usage_stats/gen_stats_list.py
++++ /src/usage_stats/gen_stats_list.py
+@@ -37,23 +37,24 @@
+
+ def GetStatsNameList(filename):
+ stats = []
+- for line in open(filename, 'r'):
+- stat = line.strip()
+- if not stat or stat[0] == '#':
+- continue
+- stats.append(stat)
++ with open(filename, 'r') as file:
++ for line in file:
++ stat = line.strip()
++ if not stat or stat[0] == '#':
++ continue
++ stats.append(stat)
+ return stats
+
+
+ def main():
+ stats_list = GetStatsNameList(sys.argv[1])
+- print '// This header file is generated by gen_stats_list.py'
++ print('// This header file is generated by gen_stats_list.py')
+ for stats in stats_list:
+- print 'const char k%s[] = "%s";' % (stats, stats)
+- print 'const char *kStatsList[] = {'
++ print('const char k%s[] = "%s";' % (stats, stats))
++ print('const char *kStatsList[] = {')
+ for stats in stats_list:
+- print ' k%s,' % (stats)
+- print '};'
++ print(' k%s,' % (stats))
++ print('};')
+
+
+ if __name__ == '__main__':
diff --git a/app-i18n/mozc/mozc-2.23.2815.102.ebuild b/app-i18n/mozc/mozc-2.23.2815.102.ebuild
index 425b785cbfab..8a55204d5db9 100644
--- a/app-i18n/mozc/mozc-2.23.2815.102.ebuild
+++ b/app-i18n/mozc/mozc-2.23.2815.102.ebuild
@@ -1,8 +1,8 @@
-# Copyright 2010-2019 Gentoo Authors
+# Copyright 2010-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="7"
-PYTHON_COMPAT=(python2_7)
+PYTHON_COMPAT=(python{3_6,3_7,3_8})
inherit elisp-common multiprocessing python-any-r1 toolchain-funcs
@@ -105,6 +105,10 @@ src_unpack() {
}
src_prepare() {
+ eapply -p2 "${FILESDIR}/${PN}-2.23.2815.102-python-3_1.patch"
+ eapply -p2 "${FILESDIR}/${PN}-2.23.2815.102-python-3_2.patch"
+ eapply -p2 "${FILESDIR}/${PN}-2.23.2815.102-python-3_3.patch"
+ eapply -p2 "${FILESDIR}/${PN}-2.23.2815.102-python-3_4.patch"
eapply -p2 "${FILESDIR}/${PN}-2.23.2815.102-system_libraries.patch"
eapply -p2 "${FILESDIR}/${PN}-2.23.2815.102-gcc-8.patch"
eapply -p2 "${FILESDIR}/${PN}-2.23.2815.102-protobuf_generated_classes_no_inheritance.patch"
diff --git a/app-i18n/mozc/mozc-9999.ebuild b/app-i18n/mozc/mozc-9999.ebuild
index d7c66b558d92..e82d56df3360 100644
--- a/app-i18n/mozc/mozc-9999.ebuild
+++ b/app-i18n/mozc/mozc-9999.ebuild
@@ -1,8 +1,8 @@
-# Copyright 2010-2019 Gentoo Authors
+# Copyright 2010-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="7"
-PYTHON_COMPAT=(python2_7)
+PYTHON_COMPAT=(python{3_6,3_7,3_8})
inherit elisp-common multiprocessing python-any-r1 toolchain-funcs
@@ -105,6 +105,10 @@ src_unpack() {
}
src_prepare() {
+ eapply -p2 "${FILESDIR}/${PN}-2.23.2815.102-python-3_1.patch"
+ eapply -p2 "${FILESDIR}/${PN}-2.23.2815.102-python-3_2.patch"
+ eapply -p2 "${FILESDIR}/${PN}-2.23.2815.102-python-3_3.patch"
+ eapply -p2 "${FILESDIR}/${PN}-2.23.2815.102-python-3_4.patch"
eapply -p2 "${FILESDIR}/${PN}-2.23.2815.102-system_libraries.patch"
eapply -p2 "${FILESDIR}/${PN}-2.23.2815.102-gcc-8.patch"
eapply -p2 "${FILESDIR}/${PN}-2.23.2815.102-protobuf_generated_classes_no_inheritance.patch"
diff --git a/app-i18n/tagainijisho/Manifest b/app-i18n/tagainijisho/Manifest
index 57adfdc1b573..f19d2ff60373 100644
--- a/app-i18n/tagainijisho/Manifest
+++ b/app-i18n/tagainijisho/Manifest
@@ -1,10 +1,4 @@
-DIST JMdict-2018-06-12.gz 18306650 BLAKE2B 3ddb29bf631567717085912b1fa21c701e6183c94907f64121daedf358303df09a754bcdf51f24f0d7c95bf1bfe4ea13779f5e3532bd19a3f99a33751259a893 SHA512 cd8e0a737ccd1ccbe7c53ab0affb5d4ca068656966c75f0abbc184ffcdc69d8a1dbe0f096a16f0b59ecaed40371a29e566ee5076a7e80e3f51796e32798bed3e
-DIST JMdict-2019-10-01.gz 19418133 BLAKE2B a7f3fb45fafaa0d5fdaa7366d2d299cd872edfc6834743529604cb2803f60112daccf82b6c48db0e100b52fb31b1fe2705369fb8a1c2b83c0eba65176ef59d90 SHA512 033968dfc3504611db23269361d72564fbf81a59d7f1ed94f4303c51748f4f31a2b38b3c2a6d846941a886f357d5dd320bc0f043a151ac1c70e43df9c594a599
DIST JMdict-2020-01-01.gz 19493878 BLAKE2B a797cbabffaafdcc967078ebf91ba27280d9a2ba040021fa605e674246ad3837774b2f17a7f4386cec3a2f53afb742fcd9f0bb6784b2014659d8785d59e321cd SHA512 691077030421e909dc171c217e6951edd48b567bf0821c7b68da7a2fc410e3f55d73db1943a9b99128763655d03e175e431590d869032645ae32d69dae5acdc1
-DIST kanjidic2-2018-06-12.xml.gz 1482391 BLAKE2B c6f1d18f17b2107937fe07b77d6aa297d156d9c250cdc480000aeb7f8c9cd27a94e2cce1df80e4612d1bcadc94d92d5d013cfc8d923c5ceaba9ed5b0a692ae78 SHA512 700aba18e18ab271dbc583f1a1cc16dd7209e4aa48417201f0b51723d35f5aedcff299ed1503cb743151abce37c94c0facbab09dd0a46126131bb54f2004aa23
-DIST kanjidic2-2019-10-01.xml.gz 1482675 BLAKE2B faf2ce4367796b18c3e858ef05203610810e38e44cf3b6e06fceda4204809fd366f6c16604618bf8b668761c9ac2045ed18484a374f2648cc88ba43fa5e5eb7b SHA512 aff301e824a1c31ff4850f709ee6c4ee6a0a54aa4823a5fcb0c5419d7b96239c16bd091f5557f02e2b7c3d0ced8cb2ae19805723c46f9a3a906adecc20ec631c
DIST kanjidic2-2020-01-01.xml.gz 1482692 BLAKE2B f50f45e982842b1fc161551640aa7bb8bc13e858c64576af25101c0bbdcb5d5734ebba86be180434781ba62d37370eae9b53bad7a30eb06bcffb86233f85f3fe SHA512 df0d0827525ff0406b33811f9b0eb24f7ab99288879dc316af8125c24448b9919224d6cc7c20648791dbbe8f29d05d977e77c9316a9aeb69513e29cf2bc40e92
DIST kanjivg-20160426.xml.gz 3587660 BLAKE2B c85291f3671f0980186e8deb296cfa743322df438d6f09fd69a4f5a30c3db6f097d6ff0a817b88c5c9a2c8d4a40c90b31c0a54cb71d681849b557ee364707c48 SHA512 1d35a8cc5d4947f6bedfc71a2f08e2d1fda832d7a02588c00953e1746812b0e51d4d1c39dff49999b4f65ec850788359f6e0d1465f0e688b1bf753c4c67b3c54
-DIST tagainijisho-1.2.0_pre20180610092832.tar.gz 3634107 BLAKE2B f5cb75f45fced30c64f615147c3eb7e4d473e81dd734517710bcfdf390d1a34a1780196b6dbbb7a6d297df0bb8d73933d09a76eb6b8dd13d1c0759c562e81695 SHA512 3b17ff6972e3cfd35f4f9e8c575153a4c2021a66a238f631616452a16a151d604106586d438cdc574211bff54118d89e492f9460da4b25fef88a2354b0bd8555
-DIST tagainijisho-1.2.0_pre20190507124027.tar.gz 3634210 BLAKE2B ec11eba3e20f2a1d55b24c67b95bd98d9ec96a7476533bc42d56866c87f03fd8d58133b5f6aa4e6f37a7ca4dd8b447a0414f0b9651adaa6fb0141c6df4b61073 SHA512 ace6fd4ff46d1bea329f3c85ea6df63583f256d5a26b78e3d64d47be2a37f74b262c0b6254fad4b258b6bb1cb3eff3bb4a4ed712f9ee72f21810717ce1a8f3d8
DIST tagainijisho-1.2.0_pre20191230120610.tar.gz 3635034 BLAKE2B 4f86febae1dfe1de236668bd405294c1e11510b8a942abfcb378d0e46c38cc179d16f5365dbb8322c7ad47cc333a816ce883af5993e0be90f11a43f2710cd45d SHA512 4fa93b7a51415c57f1d81748f15f23e90e4d9a1f91c3f0d96447d08a5bf1bbfc6bc2dbd4083e0b9328e32795f01de94bae834b4e7ff1830cfbe0ec215f20d7f8
diff --git a/app-i18n/tagainijisho/tagainijisho-1.2.0_pre20180610092832.ebuild b/app-i18n/tagainijisho/tagainijisho-1.2.0_pre20180610092832.ebuild
deleted file mode 100644
index 41902e9a643c..000000000000
--- a/app-i18n/tagainijisho/tagainijisho-1.2.0_pre20180610092832.ebuild
+++ /dev/null
@@ -1,189 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-
-inherit cmake-utils gnome2-utils
-
-if [[ "${PV}" == 9999 ]]; then
- inherit git-r3
-
- EGIT_REPO_URI="https://github.com/Gnurou/tagainijisho"
-elif [[ "${PV}" == *_pre* ]]; then
- inherit vcs-snapshot
-
- TAGAINIJISHO_GIT_REVISION="dde2ad85dc6dc47ac7862e728878a7c8d9d4faf6"
-fi
-if [[ "${PV}" == 9999 || "${PV}" == *_pre* ]]; then
- JMDICT_DATE="2018-06-12"
- KANJIDIC2_DATE="2018-06-12"
- KANJIVG_VERSION="20160426"
-fi
-
-DESCRIPTION="Open-source Japanese dictionary and kanji lookup tool"
-HOMEPAGE="https://www.tagaini.net/ https://github.com/Gnurou/tagainijisho"
-if [[ "${PV}" == 9999 ]]; then
- SRC_URI=""
-elif [[ "${PV}" == *_pre* ]]; then
- SRC_URI="https://github.com/Gnurou/${PN}/archive/${TAGAINIJISHO_GIT_REVISION}.tar.gz -> ${P}.tar.gz"
-else
- SRC_URI="https://github.com/Gnurou/${PN}/releases/download/${PV}/${P}.tar.gz"
-fi
-if [[ "${PV}" == *_pre* ]]; then
- # Upstream: http://ftp.monash.edu.au/pub/nihongo/JMdict.gz
- SRC_URI+=" https://home.apache.org/~arfrever/distfiles/JMdict-${JMDICT_DATE}.gz"
-fi
-if [[ "${PV}" == *_pre* ]]; then
- # Upstream: http://www.edrdg.org/kanjidic/kanjidic2.xml.gz
- SRC_URI+=" https://home.apache.org/~arfrever/distfiles/kanjidic2-${KANJIDIC2_DATE}.xml.gz"
-fi
-if [[ "${PV}" == 9999 || "${PV}" == *_pre* ]]; then
- SRC_URI+=" https://github.com/KanjiVG/kanjivg/releases/download/r${KANJIVG_VERSION}/kanjivg-${KANJIVG_VERSION}.xml.gz"
-fi
-
-LICENSE="GPL-3+ public-domain"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-RDEPEND=">=dev-db/sqlite-3.12:3
- dev-qt/qtcore:5
- dev-qt/qtnetwork:5
- dev-qt/qtprintsupport:5
- dev-qt/qtwidgets:5"
-DEPEND="${RDEPEND}
- dev-qt/linguist-tools:5"
-
-pkg_langs=(ar cs de es fa fi fr hu id it nb nl pl pt ru sv th tr uk vi zh)
-IUSE+=" ${pkg_langs[@]/#/l10n_}"
-unset pkg_langs
-
-src_unpack() {
- if [[ "${PV}" == 9999 ]]; then
- git-r3_src_unpack
- elif [[ "${PV}" == *_pre* ]]; then
- unpack ${P}.tar.gz
- mv tagainijisho-${TAGAINIJISHO_GIT_REVISION} ${P} || die
- else
- unpack ${P}.tar.gz
- fi
-
- if [[ "${PV}" == 9999 ]]; then
- # JMdict.gz and kanjidic2.xml.gz are updated once per day.
-
- local distdir="${PORTAGE_ACTUAL_DISTDIR:-${DISTDIR}}"
- local today="$(TZ="UTC" date --date=today "+%Y-%m-%d")"
- local yesterday="$(TZ="UTC" date --date=yesterday "+%Y-%m-%d")"
-
- if [[ -f ${distdir}/JMdict-${today}.gz && -s ${distdir}/JMdict-${today}.gz ]]; then
- # Use previously downloaded file from today.
- JMDICT_DATE="${today}"
- elif [[ -f ${distdir}/JMdict-${yesterday}.gz && -s ${distdir}/JMdict-${yesterday}.gz ]]; then
- # Use previously downloaded file from yesterday. File from today may still be nonexistent.
- JMDICT_DATE="${yesterday}"
- else
- # Download file from today or yesterday.
- wget http://ftp.monash.edu.au/pub/nihongo/JMdict.gz -O JMdict.gz || die
- JMDICT_DATE="$(gzip -cd JMdict.gz | grep -E "^$" | sed -e "s/.*\([[:digit:]]\{4\}-[[:digit:]]\{2\}-[[:digit:]]\{2\}\).*/\1/")"
- if [[ ${JMDICT_DATE} != ${today} && ${JMDICT_DATE} != ${yesterday} ]]; then
- die "Unexpected date in JMdict.gz: '${JMDICT_DATE}'"
- fi
- (
- addwrite "${distdir}"
- mv JMdict.gz "${distdir}/JMdict-${JMDICT_DATE}.gz" || die
- )
- fi
- einfo "Date in JMdict.gz: '${JMDICT_DATE}'"
-
- if [[ -f ${distdir}/kanjidic2-${today}.xml.gz && -s ${distdir}/kanjidic2-${today}.xml.gz ]]; then
- # Use previously downloaded file from today.
- KANJIDIC2_DATE="${today}"
- elif [[ -f ${distdir}/kanjidic2-${yesterday}.xml.gz && -s ${distdir}/kanjidic2-${yesterday}.xml.gz ]]; then
- # Use previously downloaded file from yesterday. File from today may still be nonexistent.
- KANJIDIC2_DATE="${yesterday}"
- else
- # Download file from today or yesterday.
- wget http://www.edrdg.org/kanjidic/kanjidic2.xml.gz -O kanjidic2.xml.gz || die
- KANJIDIC2_DATE="$(gzip -cd kanjidic2.xml.gz | grep -E "^[[:digit:]]{4}-[[:digit:]]{2}-[[:digit:]]{2}$" | sed -e "s/.*\([[:digit:]]\{4\}-[[:digit:]]\{2\}-[[:digit:]]\{2\}\).*/\1/")"
- if [[ ${KANJIDIC2_DATE} != ${today} && ${KANJIDIC2_DATE} != ${yesterday} ]]; then
- die "Unexpected date in kanjidic2.xml.gz: '${KANJIDIC2_DATE}'"
- fi
- (
- addwrite "${distdir}"
- mv kanjidic2.xml.gz "${distdir}/kanjidic2-${KANJIDIC2_DATE}.xml.gz" || die
- )
- fi
- einfo "Date in kanjidic2.xml.gz: '${KANJIDIC2_DATE}'"
-
- mkdir "${S}/3rdparty" || die
- gzip -cd "${distdir}/JMdict-${JMDICT_DATE}.gz" > "${S}/3rdparty/JMdict" || die
- gzip -cd "${distdir}/kanjidic2-${KANJIDIC2_DATE}.xml.gz" > "${S}/3rdparty/kanjidic2.xml" || die
- elif [[ "${PV}" == *_pre* ]]; then
- mkdir "${S}/3rdparty" || die
- pushd "${S}/3rdparty" > /dev/null || die
-
- unpack JMdict-${JMDICT_DATE}.gz
- mv JMdict-${JMDICT_DATE} JMdict || die
-
- unpack kanjidic2-${KANJIDIC2_DATE}.xml.gz
- mv kanjidic2-${KANJIDIC2_DATE}.xml kanjidic2.xml || die
-
- popd > /dev/null || die
- fi
-
- if [[ "${PV}" == 9999 || "${PV}" == *_pre* ]]; then
- pushd "${S}/3rdparty" > /dev/null || die
-
- unpack kanjivg-${KANJIVG_VERSION}.xml.gz
- mv kanjivg-${KANJIVG_VERSION}.xml kanjivg.xml || die
-
- popd > /dev/null || die
- fi
-}
-
-src_configure() {
- # GUI linguae
- # en is not optional, and build fails if none other than en is set, so adding ja as non-optional too.
- local lang use_lang
- for lang in i18n/*.ts; do
- lang=${lang#i18n/tagainijisho_}
- lang=${lang%.ts}
- case ${lang} in
- fa_IR|fi_FI|pt_BR)
- # Use generic tags.
- use_lang=${lang%%_*}
- ;;
- *)
- use_lang=${lang}
- ;;
- esac
-
- if [[ ${lang} != en && ${lang} != ja ]] && ! use l10n_${use_lang}; then
- rm i18n/tagainijisho_${lang}.ts || die
- fi
- done
-
- # Dictionary linguae
- # en is not optional here either, but nothing special needs to be done.
- local dict_langs
- for lang in $(sed -e 's/;/ /g' -ne '/set(DICT_LANG ".*")/s/.*"\(.*\)".*/\1/p' CMakeLists.txt); do
- if use l10n_${lang}; then
- dict_langs+="${dict_langs:+;}${lang}"
- fi
- done
-
- local mycmakeargs=(
- -DDICT_LANG="${dict_langs:-;}"
- -DEMBED_SQLITE=OFF
- )
-
- cmake-utils_src_configure
-}
-
-pkg_postinst() {
- gnome2_icon_cache_update
-}
-
-pkg_postrm() {
- gnome2_icon_cache_update
-}
diff --git a/app-i18n/tagainijisho/tagainijisho-1.2.0_pre20190507124027_p20191001_p20191001.ebuild b/app-i18n/tagainijisho/tagainijisho-1.2.0_pre20190507124027_p20191001_p20191001.ebuild
deleted file mode 100644
index 9f4d2eb48253..000000000000
--- a/app-i18n/tagainijisho/tagainijisho-1.2.0_pre20190507124027_p20191001_p20191001.ebuild
+++ /dev/null
@@ -1,200 +0,0 @@
-# Copyright 2014-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-inherit cmake-utils xdg-utils
-
-if [[ "${PV}" == 9999 ]]; then
- inherit git-r3
-
- EGIT_REPO_URI="https://github.com/Gnurou/tagainijisho"
-elif [[ "${PV}" == *_pre* ]]; then
- inherit vcs-snapshot
-
- TAGAINIJISHO_GIT_REVISION="d189cfcb389b8b7f481ea452fcdf1987514d60d7"
-fi
-if [[ "${PV}" != 9999 ]]; then
- TAGAINIJISHO_VERSION="${PV%_p*_p*}"
- JMDICT_DATE="${PV#${TAGAINIJISHO_VERSION}_p}"
- JMDICT_DATE="${JMDICT_DATE%_p*}"
- JMDICT_DATE="${JMDICT_DATE:0:4}-${JMDICT_DATE:4:2}-${JMDICT_DATE:6}"
- KANJIDIC2_DATE="${PV#${TAGAINIJISHO_VERSION}_p*_p}"
- KANJIDIC2_DATE="${KANJIDIC2_DATE:0:4}-${KANJIDIC2_DATE:4:2}-${KANJIDIC2_DATE:6}"
-fi
-if [[ "${PV}" == 9999 || "${PV}" == *_pre* ]]; then
- KANJIVG_VERSION="20160426"
-fi
-
-DESCRIPTION="Open-source Japanese dictionary and kanji lookup tool"
-HOMEPAGE="https://www.tagaini.net/ https://github.com/Gnurou/tagainijisho"
-if [[ "${PV}" == 9999 ]]; then
- SRC_URI=""
-elif [[ "${PV}" == *_pre* ]]; then
- SRC_URI="https://github.com/Gnurou/${PN}/archive/${TAGAINIJISHO_GIT_REVISION}.tar.gz -> ${PN}-${TAGAINIJISHO_VERSION}.tar.gz"
-else
- SRC_URI="https://github.com/Gnurou/${PN}/releases/download/${PV}/${PN}-${TAGAINIJISHO_VERSION}.tar.gz"
-fi
-if [[ "${PV}" != 9999 ]]; then
- # Upstream: http://ftp.monash.edu.au/pub/nihongo/JMdict.gz
- SRC_URI+=" https://home.apache.org/~arfrever/distfiles/JMdict-${JMDICT_DATE}.gz"
- # Upstream: http://www.edrdg.org/kanjidic/kanjidic2.xml.gz
- SRC_URI+=" https://home.apache.org/~arfrever/distfiles/kanjidic2-${KANJIDIC2_DATE}.xml.gz"
-fi
-if [[ "${PV}" == 9999 || "${PV}" == *_pre* ]]; then
- SRC_URI+=" https://github.com/KanjiVG/kanjivg/releases/download/r${KANJIVG_VERSION}/kanjivg-${KANJIVG_VERSION}.xml.gz"
-fi
-
-LICENSE="GPL-3+ public-domain"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-if [[ "${PV}" == 9999 ]]; then
- PROPERTIES="live"
-fi
-
-BDEPEND="dev-qt/linguist-tools:5"
-DEPEND=">=dev-db/sqlite-3.12:3
- dev-qt/qtcore:5
- dev-qt/qtnetwork:5
- dev-qt/qtprintsupport:5
- dev-qt/qtwidgets:5"
-RDEPEND="${DEPEND}"
-
-pkg_langs=(ar cs de es fa fi fr hu id it nb nl pl pt ru sv th tr uk vi zh)
-IUSE+=" ${pkg_langs[@]/#/l10n_}"
-unset pkg_langs
-
-if [[ "${PV}" != 9999 ]]; then
- S="${WORKDIR}/${PN}-${TAGAINIJISHO_VERSION}"
-fi
-
-src_unpack() {
- if [[ "${PV}" == 9999 ]]; then
- git-r3_src_unpack
- elif [[ "${PV}" == *_pre* ]]; then
- unpack ${PN}-${TAGAINIJISHO_VERSION}.tar.gz
- mv ${PN}-${TAGAINIJISHO_GIT_REVISION} ${PN}-${TAGAINIJISHO_VERSION} || die
- else
- unpack ${PN}-${TAGAINIJISHO_VERSION}.tar.gz
- fi
-
- if [[ "${PV}" == 9999 ]]; then
- # JMdict.gz and kanjidic2.xml.gz are updated once per day.
-
- local distdir="${PORTAGE_ACTUAL_DISTDIR:-${DISTDIR}}"
- local today="$(TZ="UTC" date --date=today "+%Y-%m-%d")"
- local yesterday="$(TZ="UTC" date --date=yesterday "+%Y-%m-%d")"
-
- if [[ -f ${distdir}/JMdict-${today}.gz && -s ${distdir}/JMdict-${today}.gz ]]; then
- # Use previously downloaded file from today.
- JMDICT_DATE="${today}"
- elif [[ -f ${distdir}/JMdict-${yesterday}.gz && -s ${distdir}/JMdict-${yesterday}.gz ]]; then
- # Use previously downloaded file from yesterday. File from today may still be nonexistent.
- JMDICT_DATE="${yesterday}"
- else
- # Download file from today or yesterday.
- wget http://ftp.monash.edu.au/pub/nihongo/JMdict.gz -O JMdict.gz || die
- JMDICT_DATE="$(gzip -cd JMdict.gz | grep -E "^$" | sed -e "s/.*\([[:digit:]]\{4\}-[[:digit:]]\{2\}-[[:digit:]]\{2\}\).*/\1/")"
- if [[ ${JMDICT_DATE} != ${today} && ${JMDICT_DATE} != ${yesterday} ]]; then
- die "Unexpected date in JMdict.gz: '${JMDICT_DATE}'"
- fi
- (
- addwrite "${distdir}"
- mv JMdict.gz "${distdir}/JMdict-${JMDICT_DATE}.gz" || die
- )
- fi
- einfo "Date in JMdict.gz: '${JMDICT_DATE}'"
-
- if [[ -f ${distdir}/kanjidic2-${today}.xml.gz && -s ${distdir}/kanjidic2-${today}.xml.gz ]]; then
- # Use previously downloaded file from today.
- KANJIDIC2_DATE="${today}"
- elif [[ -f ${distdir}/kanjidic2-${yesterday}.xml.gz && -s ${distdir}/kanjidic2-${yesterday}.xml.gz ]]; then
- # Use previously downloaded file from yesterday. File from today may still be nonexistent.
- KANJIDIC2_DATE="${yesterday}"
- else
- # Download file from today or yesterday.
- wget http://www.edrdg.org/kanjidic/kanjidic2.xml.gz -O kanjidic2.xml.gz || die
- KANJIDIC2_DATE="$(gzip -cd kanjidic2.xml.gz | grep -E "^[[:digit:]]{4}-[[:digit:]]{2}-[[:digit:]]{2}$" | sed -e "s/.*\([[:digit:]]\{4\}-[[:digit:]]\{2\}-[[:digit:]]\{2\}\).*/\1/")"
- if [[ ${KANJIDIC2_DATE} != ${today} && ${KANJIDIC2_DATE} != ${yesterday} ]]; then
- die "Unexpected date in kanjidic2.xml.gz: '${KANJIDIC2_DATE}'"
- fi
- (
- addwrite "${distdir}"
- mv kanjidic2.xml.gz "${distdir}/kanjidic2-${KANJIDIC2_DATE}.xml.gz" || die
- )
- fi
- einfo "Date in kanjidic2.xml.gz: '${KANJIDIC2_DATE}'"
-
- mkdir "${S}/3rdparty" || die
- gzip -cd "${distdir}/JMdict-${JMDICT_DATE}.gz" > "${S}/3rdparty/JMdict" || die
- gzip -cd "${distdir}/kanjidic2-${KANJIDIC2_DATE}.xml.gz" > "${S}/3rdparty/kanjidic2.xml" || die
- else
- mkdir "${S}/3rdparty" || die
- pushd "${S}/3rdparty" > /dev/null || die
-
- unpack JMdict-${JMDICT_DATE}.gz
- mv JMdict-${JMDICT_DATE} JMdict || die
-
- unpack kanjidic2-${KANJIDIC2_DATE}.xml.gz
- mv kanjidic2-${KANJIDIC2_DATE}.xml kanjidic2.xml || die
-
- popd > /dev/null || die
- fi
-
- if [[ "${PV}" == 9999 || "${PV}" == *_pre* ]]; then
- pushd "${S}/3rdparty" > /dev/null || die
-
- unpack kanjivg-${KANJIVG_VERSION}.xml.gz
- mv kanjivg-${KANJIVG_VERSION}.xml kanjivg.xml || die
-
- popd > /dev/null || die
- fi
-}
-
-src_configure() {
- # GUI linguae
- # en is not optional, and build fails if none other than en is set, so adding ja as non-optional too.
- local lang use_lang
- for lang in i18n/*.ts; do
- lang=${lang#i18n/tagainijisho_}
- lang=${lang%.ts}
- case ${lang} in
- fa_IR|fi_FI|pt_BR)
- # Use generic tags.
- use_lang=${lang%%_*}
- ;;
- *)
- use_lang=${lang}
- ;;
- esac
-
- if [[ ${lang} != en && ${lang} != ja ]] && ! use l10n_${use_lang}; then
- rm i18n/tagainijisho_${lang}.ts || die
- fi
- done
-
- # Dictionary linguae
- # en is not optional here either, but nothing special needs to be done.
- local dict_langs
- for lang in $(sed -e 's/;/ /g' -ne '/set(DICT_LANG ".*")/s/.*"\(.*\)".*/\1/p' CMakeLists.txt); do
- if use l10n_${lang}; then
- dict_langs+="${dict_langs:+;}${lang}"
- fi
- done
-
- local mycmakeargs=(
- -DDICT_LANG="${dict_langs:-;}"
- -DEMBED_SQLITE=OFF
- )
-
- cmake-utils_src_configure
-}
-
-pkg_postinst() {
- xdg_icon_cache_update
-}
-
-pkg_postrm() {
- xdg_icon_cache_update
-}
diff --git a/app-misc/Manifest.gz b/app-misc/Manifest.gz
index 7b2a0534f7be..f226fc9679fe 100644
Binary files a/app-misc/Manifest.gz and b/app-misc/Manifest.gz differ
diff --git a/app-misc/mc/files/mc-4.8.23-gcc-10.patch b/app-misc/mc/files/mc-4.8.23-gcc-10.patch
new file mode 100644
index 000000000000..b7cc3ee71a99
--- /dev/null
+++ b/app-misc/mc/files/mc-4.8.23-gcc-10.patch
@@ -0,0 +1,79 @@
+From 093571938a6c31706f918b011335b8ab30602336 Mon Sep 17 00:00:00 2001
+From: Andrew Borodin
+Date: Sat, 23 Nov 2019 17:41:58 +0300
+Subject: [PATCH] Ticket #4035: fix compile failure on OS X 10.9.
+
+Fix duplication of menu_map definition.
+
+Move menu_map definition to lib/widget/menu.c.
+
+Signed-off-by: Andrew Borodin
+---
+ lib/widget/menu.c | 2 +-
+ lib/widget/menu.h | 2 ++
+ src/keybind-defaults.c | 3 +--
+ src/keybind-defaults.h | 1 -
+ 4 files changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/lib/widget/menu.c b/lib/widget/menu.c
+index b7476b62b..68ae6f6ce 100644
+--- a/lib/widget/menu.c
++++ b/lib/widget/menu.c
+@@ -46,7 +46,7 @@
+
+ /*** global variables ****************************************************************************/
+
+-const global_keymap_t *menu_map;
++const global_keymap_t *menu_map = NULL;
+
+ /*** file scope macro definitions ****************************************************************/
+
+diff --git a/lib/widget/menu.h b/lib/widget/menu.h
+index c522a16c8..fad6fa639 100644
+--- a/lib/widget/menu.h
++++ b/lib/widget/menu.h
+@@ -39,6 +39,8 @@ typedef struct WMenuBar
+
+ /*** global variables defined in .c file *********************************************************/
+
++extern const global_keymap_t *menu_map;
++
+ /*** declarations of public functions ************************************************************/
+
+ menu_entry_t *menu_entry_create (const char *name, long command);
+diff --git a/src/keybind-defaults.c b/src/keybind-defaults.c
+index 10ba341ee..0ba4840df 100644
+--- a/src/keybind-defaults.c
++++ b/src/keybind-defaults.c
+@@ -28,7 +28,7 @@
+ #include
+
+ #include "lib/global.h"
+-#include "lib/widget.h" /* dialog_map, input_map, listbox_map */
++#include "lib/widget.h" /* dialog_map, input_map, listbox_map, menu_map */
+
+ #include "keybind-defaults.h"
+
+@@ -56,7 +56,6 @@ GArray *diff_keymap = NULL;
+ const global_keymap_t *main_map = NULL;
+ const global_keymap_t *main_x_map = NULL;
+ const global_keymap_t *panel_map = NULL;
+-const global_keymap_t *menu_map = NULL;
+ const global_keymap_t *tree_map = NULL;
+ const global_keymap_t *help_map = NULL;
+
+diff --git a/src/keybind-defaults.h b/src/keybind-defaults.h
+index edb05c67f..6b7266589 100644
+--- a/src/keybind-defaults.h
++++ b/src/keybind-defaults.h
+@@ -35,7 +35,6 @@ extern GArray *diff_keymap;
+ extern const global_keymap_t *main_map;
+ extern const global_keymap_t *main_x_map;
+ extern const global_keymap_t *panel_map;
+-extern const global_keymap_t *menu_map;
+ extern const global_keymap_t *tree_map;
+ extern const global_keymap_t *help_map;
+
+--
+2.25.0
+
diff --git a/app-misc/mc/mc-4.8.23-r2.ebuild b/app-misc/mc/mc-4.8.23-r2.ebuild
index 856331ef9aa1..64112aaf67bd 100644
--- a/app-misc/mc/mc-4.8.23-r2.ebuild
+++ b/app-misc/mc/mc-4.8.23-r2.ebuild
@@ -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
@@ -48,6 +48,7 @@ PATCHES=(
"${FILESDIR}"/${PN}-4.8.23-gettext.patch
"${FILESDIR}"/${PN}-4.8.23-gettext-test.patch
"${FILESDIR}"/${PN}-4.8.23-vfs-gc-SEGV.patch
+ "${FILESDIR}"/${PN}-4.8.23-gcc-10.patch
)
pkg_pretend() {
diff --git a/app-misc/mosquitto/mosquitto-1.6.8.ebuild b/app-misc/mosquitto/mosquitto-1.6.8.ebuild
index 25f2cf6d4c5e..87e7f10973d4 100644
--- a/app-misc/mosquitto/mosquitto-1.6.8.ebuild
+++ b/app-misc/mosquitto/mosquitto-1.6.8.ebuild
@@ -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
@@ -12,7 +12,7 @@ SRC_URI="https://mosquitto.org/files/source/${P}.tar.gz"
LICENSE="EPL-1.0"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~x86"
+KEYWORDS="amd64 ~arm x86"
IUSE="bridge examples libressl +persistence +srv ssl tcpd test websockets"
RESTRICT="!test? ( test )"
diff --git a/app-misc/tmux/tmux-2.9a.ebuild b/app-misc/tmux/tmux-2.9a.ebuild
index 4aca6cd831b2..8845b92e22e2 100644
--- a/app-misc/tmux/tmux-2.9a.ebuild
+++ b/app-misc/tmux/tmux-2.9a.ebuild
@@ -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
@@ -14,7 +14,7 @@ if [[ "${PV}" == 9999 ]] ; then
else
SRC_URI="https://github.com/tmux/tmux/releases/download/${PV}/${P/_/-}.tar.gz"
[[ "${PV}" == *_rc* ]] || \
- KEYWORDS="alpha amd64 arm arm64 ~hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
+ KEYWORDS="alpha amd64 arm arm64 hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
S="${WORKDIR}/${P/_/-}"
fi
diff --git a/app-office/Manifest.gz b/app-office/Manifest.gz
index c38f0b99fd91..4b1b20ecce02 100644
Binary files a/app-office/Manifest.gz and b/app-office/Manifest.gz differ
diff --git a/app-office/auto-multiple-choice/auto-multiple-choice-1.3.0-r1.ebuild b/app-office/auto-multiple-choice/auto-multiple-choice-1.3.0-r1.ebuild
index a3734539e03f..5a147ebd06cc 100644
--- a/app-office/auto-multiple-choice/auto-multiple-choice-1.3.0-r1.ebuild
+++ b/app-office/auto-multiple-choice/auto-multiple-choice-1.3.0-r1.ebuild
@@ -1,7 +1,7 @@
-# Copyright 1999-2018 Gentoo Foundation
+# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=7
inherit toolchain-funcs perl-functions latex-package
@@ -21,7 +21,7 @@ for lala in ${LANGS}; do
IUSE="${IUSE} l10n_${lala}"
done
-CDEPEND="
+COMMON_DEPEND="
app-text/texlive[dvi2tty,extra,graphics,png,pstricks,science,truetype,xml,X,luatex,xetex,humanities,publishers]
app-text/poppler:=
dev-perl/XML-LibXML
@@ -30,12 +30,12 @@ CDEPEND="
l10n_fr? ( app-text/texlive[l10n_fr] )
l10n_ja? ( app-text/texlive[l10n_ja] )
"
-DEPEND="${CDEPEND}
+DEPEND="${COMMON_DEPEND}
app-text/dblatex
app-text/docbook-xml-simple-dtd:*
app-text/docbook-xsl-stylesheets
"
-RDEPEND="${CDEPEND}
+RDEPEND="${COMMON_DEPEND}
app-text/pdftk
dev-lang/perl:=
dev-perl/Glib-Object-Introspection
diff --git a/app-office/calligraplan/Manifest b/app-office/calligraplan/Manifest
index ebf3223442fd..68a14ae5c228 100644
--- a/app-office/calligraplan/Manifest
+++ b/app-office/calligraplan/Manifest
@@ -1,2 +1 @@
-DIST calligraplan-3.2.1.tar.xz 3417328 BLAKE2B dee2fe03a013abee0fab17495b98927eaf6ef3d2d4daaa344fccfcbd06dbaeb64717d4e844dc8659c61773a39a367fe3f93ba69b621a4dfaa9919835112e5ce9 SHA512 cd73a6ef0b9230f41d5edfeffb3664465643ca7dde8179eab0f7e4fc5e26d1331d110222256bbe18926feb39a2928abbaf0186af0376e7262df2f863941696c5
DIST calligraplan-3.2.2.tar.xz 3415816 BLAKE2B b02248ac51c4593434f234b574c23c68fe6777787451c5679985143ddd4845ed3b3eae246dc80ead9158ad98d1896e90ca298df443e9aafc536ee15ee9f2992d SHA512 9d4c32926bc4716d881a6c70ba3e53764cd578b7d31e8fde02d8feb70996e806561149d3f34a75deae7c408ad65f8de93f6afa1b00982bcf15c23db6e6992915
diff --git a/app-office/calligraplan/calligraplan-3.2.1.ebuild b/app-office/calligraplan/calligraplan-3.2.1.ebuild
deleted file mode 100644
index c610d97f9c28..000000000000
--- a/app-office/calligraplan/calligraplan-3.2.1.ebuild
+++ /dev/null
@@ -1,88 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-ECM_HANDBOOK="forceoptional"
-ECM_TEST="forceoptional"
-KFMIN=5.60.0
-QTMIN=5.12.3
-inherit ecm kde.org
-
-DESCRIPTION="Project management application"
-HOMEPAGE="https://www.calligra.org/"
-
-if [[ ${KDE_BUILD_TYPE} == release ]]; then
- SRC_URI="mirror://kde/stable/calligra/${PV}/${P}.tar.xz"
- KEYWORDS="amd64 x86"
-fi
-
-LICENSE="GPL-2"
-SLOT="5"
-IUSE="activities +holidays kwallet X"
-
-# FIXME: Disabled by upstream for good reason
-# Crashes (https://bugs.kde.org/show_bug.cgi?id=311940)
-# $(add_kdeapps_dep akonadi)
-# $(add_kdeapps_dep akonadi-contacts)
-# Currently upstream-disabled:
-# =dev-libs/kproperty-3.0*:5
-# =dev-libs/kreport-3.0*:5
-DEPEND="
- >=dev-qt/designer-${QTMIN}:5
- >=dev-qt/qtdbus-${QTMIN}:5
- >=dev-qt/qtgui-${QTMIN}:5
- >=dev-qt/qtprintsupport-${QTMIN}:5
- >=dev-qt/qtwidgets-${QTMIN}:5
- >=dev-qt/qtxml-${QTMIN}:5
- >=kde-frameworks/karchive-${KFMIN}:5
- >=kde-frameworks/kconfig-${KFMIN}:5
- >=kde-frameworks/kconfigwidgets-${KFMIN}:5
- >=kde-frameworks/kcoreaddons-${KFMIN}:5
- >=kde-frameworks/kdbusaddons-${KFMIN}:5
- >=kde-frameworks/kglobalaccel-${KFMIN}:5
- >=kde-frameworks/kguiaddons-${KFMIN}:5
- >=kde-frameworks/khtml-${KFMIN}:5
- >=kde-frameworks/ki18n-${KFMIN}:5
- >=kde-frameworks/kiconthemes-${KFMIN}:5
- >=kde-frameworks/kio-${KFMIN}:5
- >=kde-frameworks/kitemviews-${KFMIN}:5
- >=kde-frameworks/kjobwidgets-${KFMIN}:5
- >=kde-frameworks/knotifications-${KFMIN}:5
- >=kde-frameworks/kparts-${KFMIN}:5
- >=kde-frameworks/kservice-${KFMIN}:5
- >=kde-frameworks/ktextwidgets-${KFMIN}:5
- >=kde-frameworks/kwidgetsaddons-${KFMIN}:5
- >=kde-frameworks/kwindowsystem-${KFMIN}:5
- >=kde-frameworks/kxmlgui-${KFMIN}:5
- dev-lang/perl
- dev-libs/kdiagram:5
- activities? ( >=kde-frameworks/kactivities-${KFMIN}:5 )
- holidays? ( >=kde-frameworks/kholidays-${KFMIN}:5 )
- kwallet? (
- app-crypt/qca:2[qt5(+)]
- >=kde-frameworks/kwallet-${KFMIN}:5
- )
- X? (
- >=dev-qt/qtx11extras-${QTMIN}:5
- x11-libs/libX11
- )
-"
-RDEPEND="${DEPEND}
- !app-office/calligra[calligra_features_plan(-)]
- >=dev-qt/qtsvg-${QTMIN}:5
-"
-
-RESTRICT+=" test"
-
-src_configure() {
- local mycmakeargs=(
- $(cmake_use_find_package activities KF5Activities)
- $(cmake_use_find_package holidays KF5Holidays)
- $(cmake_use_find_package kwallet Qca-qt5)
- $(cmake_use_find_package kwallet KF5Wallet)
- )
- # Qt5DBus can't be disabled because of KF5DBusAddons dependency
-
- ecm_src_configure
-}
diff --git a/app-office/calligraplan/calligraplan-3.2.2.ebuild b/app-office/calligraplan/calligraplan-3.2.2.ebuild
index 45620a30fd04..a8dc309bb5c0 100644
--- a/app-office/calligraplan/calligraplan-3.2.2.ebuild
+++ b/app-office/calligraplan/calligraplan-3.2.2.ebuild
@@ -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
@@ -14,7 +14,7 @@ HOMEPAGE="https://www.calligra.org/"
if [[ ${KDE_BUILD_TYPE} == release ]]; then
SRC_URI="mirror://kde/stable/calligra/${PV}/${P}.tar.xz"
- KEYWORDS="~amd64 ~x86"
+ KEYWORDS="amd64 x86"
fi
LICENSE="GPL-2"
diff --git a/app-portage/Manifest.gz b/app-portage/Manifest.gz
index cadc0de46340..7aaee190e479 100644
Binary files a/app-portage/Manifest.gz and b/app-portage/Manifest.gz differ
diff --git a/app-portage/eix/Manifest b/app-portage/eix/Manifest
index 0d94d9b10246..b6b5891bbfb2 100644
--- a/app-portage/eix/Manifest
+++ b/app-portage/eix/Manifest
@@ -1,2 +1 @@
-DIST eix-0.33.8.tar.xz 627116 BLAKE2B b301b4218d60c13a8d6c4be484b65e9bc257e6c4d1989054cc844861cd6ec96194e60094e72833f82cfaf1b1d14a249045590dbfc91a39e5c92d5dae13b2c643 SHA512 014ce5b660430e117e8037d8043bdfe5e6e98b7cb889e88d93aeb87e650296a8db64871f3eb736842dbebde7eb1f23936f6df9f5f547f89565734b7874e6e907
DIST eix-0.33.9.tar.xz 627944 BLAKE2B cb4add12301a4f08b6ca052df92be34c8a448b386aa700e8ac7e1fbe8563cd76047994007ac94d8989747d843f70a5e1731b401510f58badd9811b30c2ce3be8 SHA512 7539a91d5b5343532ceab1f4aeb82a95413c39b1a57b9e7922032acc937cc8b839494fc40f3510218349561c6d50e89e1861d2fce5e60eabed2465316b28a756
diff --git a/app-portage/eix/eix-0.33.8.ebuild b/app-portage/eix/eix-0.33.8.ebuild
deleted file mode 100644
index 7f0fc3b1164e..000000000000
--- a/app-portage/eix/eix-0.33.8.ebuild
+++ /dev/null
@@ -1,107 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit autotools bash-completion-r1 flag-o-matic tmpfiles
-
-DESCRIPTION="Search and query ebuilds"
-HOMEPAGE="https://github.com/vaeth/eix/"
-SRC_URI="https://github.com/vaeth/eix/releases/download/v${PV}/${P}.tar.xz"
-
-LICENSE="GPL-2"
-SLOT="0"
-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 ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-IUSE="debug doc nls sqlite"
-
-BOTHDEPEND="nls? ( virtual/libintl )
- sqlite? ( >=dev-db/sqlite-3:= )"
-RDEPEND="${BOTHDEPEND}
- >=app-shells/push-2.0-r1
- >=app-shells/quoter-3.0_p2-r1"
-DEPEND="${BOTHDEPEND}
- app-arch/xz-utils
- nls? ( sys-devel/gettext )"
-
-pkg_setup() {
- # remove stale cache file to prevent collisions
- local old_cache=${EROOT%/}/var/cache/${PN}
- if [[ -f ${old_cache} ]]; then
- rm "${old_cache}" || die
- fi
-}
-
-src_prepare() {
- default
- sed -i -e "s:/:${EPREFIX}/:" tmpfiles.d/eix.conf || die
-
- sed -e "/eixf_source=/s:push.sh:cat \"${EROOT}usr/share/push/push.sh\":" \
- -e "/eixf_source=/s:quoter_pipe.sh:cat \"${EROOT}usr/share/quoter/quoter_pipe.sh\":" \
- -i src/eix-functions.sh.in || die
- sed -e "s:'\$(bindir)/eix-functions.sh':cat \\\\\"${EROOT}usr/share/eix/eix-functions\\\\\":" \
- -i src/Makefile.am || die
- eautoreconf
-}
-
-src_configure() {
- local myconf=(
- $(use_enable debug paranoic-asserts)
- $(use_enable nls)
- $(use_with doc extra-doc)
- $(use_with sqlite)
-
- # default configuration
- $(use_with prefix always-accept-keywords)
- --with-dep-default
- --with-required-use-default
-
- # paths
- --with-portage-rootpath="${ROOTPATH}"
- --with-eprefix-default="${EPREFIX}"
-
- # build a single executable with symlinks
- --disable-separate-binaries
- --disable-separate-tools
-
- # used purely to control/disrespect *FLAGS
- --disable-debugging
- --disable-new_dialect
- --disable-optimization
- --disable-strong-optimization
- --disable-security
- --disable-nopie-security
- --disable-strong-security
- )
-
- # https://github.com/vaeth/eix/issues/35
- append-cxxflags -std=c++14
-
- # work around https://github.com/vaeth/eix/issues/64, bug#687988
- local -x mv_fCXXFLAGS_cache='-mindirect-branch=thunk'
-
- econf "${myconf[@]}"
-}
-
-src_install() {
- default
- dobashcomp bash/eix
- dotmpfiles tmpfiles.d/eix.conf
-
- rm -r "${ED%/}"/usr/bin/eix-functions.sh || die
-
-}
-
-pkg_postinst() {
- tmpfiles_process eix.conf
-
- local obs=${EROOT%/}/var/cache/eix.previous
- if [[ -f ${obs} ]]; then
- ewarn "Found obsolete ${obs}, please remove it"
- fi
-}
-
-pkg_postrm() {
- if [[ ! -n ${REPLACED_BY_VERSION} ]]; then
- rm -rf "${EROOT%/}/var/cache/${PN}" || die
- fi
-}
diff --git a/app-portage/eix/eix-0.33.9-r1.ebuild b/app-portage/eix/eix-0.33.9-r1.ebuild
index 79b4f2b3dc89..a0b27e302f37 100644
--- a/app-portage/eix/eix-0.33.9-r1.ebuild
+++ b/app-portage/eix/eix-0.33.9-r1.ebuild
@@ -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://github.com/vaeth/eix/releases/download/v${PV}/${P}.tar.xz"
LICENSE="GPL-2"
SLOT="0"
-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 ~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 ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="debug doc nls sqlite"
BOTHDEPEND="nls? ( virtual/libintl )
diff --git a/app-portage/portage-utils/portage-utils-0.84.ebuild b/app-portage/portage-utils/portage-utils-0.84-r1.ebuild
similarity index 94%
rename from app-portage/portage-utils/portage-utils-0.84.ebuild
rename to app-portage/portage-utils/portage-utils-0.84-r1.ebuild
index d1e5d7ff75ff..f6aff824f7a9 100644
--- a/app-portage/portage-utils/portage-utils-0.84.ebuild
+++ b/app-portage/portage-utils/portage-utils-0.84-r1.ebuild
@@ -60,6 +60,13 @@ RDEPEND="
"
DEPEND="${RDEPEND}"
+src_prepare() {
+ default
+
+ # fix #705636, basically apply 2f917fee
+ sed -i -e '/free(name);/d' libq/tree.c || die
+}
+
src_configure() {
econf \
--disable-maintainer-mode \
diff --git a/app-shells/Manifest.gz b/app-shells/Manifest.gz
index ffc10b0c2287..6a5d286bf2a8 100644
Binary files a/app-shells/Manifest.gz and b/app-shells/Manifest.gz differ
diff --git a/app-shells/sash/sash-3.8.ebuild b/app-shells/sash/sash-3.8.ebuild
index e584cdbcd922..34f0ebd3d9cf 100644
--- a/app-shells/sash/sash-3.8.ebuild
+++ b/app-shells/sash/sash-3.8.ebuild
@@ -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 @@ DESCRIPTION="A small (static) UNIX Shell"
HOMEPAGE="https://www.canb.auug.org.au/~dbell/"
SRC_URI="https://www.canb.auug.org.au/~dbell/programs/${P}.tar.gz"
-LICENSE="freedist"
+LICENSE="sash"
SLOT="0"
KEYWORDS="alpha amd64 arm hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh sparc x86"
IUSE="static"
diff --git a/app-text/Manifest.gz b/app-text/Manifest.gz
index b0ec1932fc97..bba9e07e86c3 100644
Binary files a/app-text/Manifest.gz and b/app-text/Manifest.gz differ
diff --git a/app-text/iso-codes/iso-codes-4.4.ebuild b/app-text/iso-codes/iso-codes-4.4.ebuild
index bf3fa6ef3f25..e5bd27de5b9f 100644
--- a/app-text/iso-codes/iso-codes-4.4.ebuild
+++ b/app-text/iso-codes/iso-codes-4.4.ebuild
@@ -13,7 +13,7 @@ SRC_URI="https://salsa.debian.org/${PN}-team/${PN}/-/archive/${P}/${PN}-${P}.tar
LICENSE="LGPL-2.1+"
SLOT="0"
-KEYWORDS="~alpha amd64 ~arm ~arm64 hppa ia64 ~mips ppc ppc64 ~sh sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x86-solaris"
+KEYWORDS="~alpha amd64 ~arm ~arm64 hppa ia64 ~mips ppc ppc64 ~sh sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x86-solaris"
BDEPEND="${PYTHON_DEPS}
sys-devel/gettext
diff --git a/app-text/qpdfview/qpdfview-0.4.18.ebuild b/app-text/qpdfview/qpdfview-0.4.18.ebuild
index 0f096fb17dc3..4dea4622ef3b 100644
--- a/app-text/qpdfview/qpdfview-0.4.18.ebuild
+++ b/app-text/qpdfview/qpdfview-0.4.18.ebuild
@@ -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
@@ -12,7 +12,7 @@ SRC_URI="https://launchpad.net/${PN}/trunk/${PV}/+download/${P}.tar.gz"
LICENSE="GPL-2+"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~ppc64 ~x86 ~amd64-linux ~x86-linux"
+KEYWORDS="~amd64 ~arm ~ppc64 x86 ~amd64-linux ~x86-linux"
IUSE="cups +dbus djvu fitz +pdf postscript +sqlite +svg synctex"
REQUIRED_USE="?? ( fitz pdf )"
diff --git a/app-text/xapian-omega/xapian-omega-1.2.25.ebuild b/app-text/xapian-omega/xapian-omega-1.2.25.ebuild
index 75dbc3f2d608..d818655ee8de 100644
--- a/app-text/xapian-omega/xapian-omega-1.2.25.ebuild
+++ b/app-text/xapian-omega/xapian-omega-1.2.25.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2018 Gentoo Authors
+# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="5"
@@ -10,7 +10,7 @@ S="${WORKDIR}/xapian-omega-${PV}"
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="alpha amd64 arm ~ia64 ~mips ppc ppc64 ~sparc ~x86"
+KEYWORDS="alpha amd64 arm ia64 ~mips ppc ppc64 ~sparc ~x86"
IUSE=""
DEPEND="dev-libs/xapian:0/1.2.22
diff --git a/app-text/xapian-omega/xapian-omega-1.4.7.ebuild b/app-text/xapian-omega/xapian-omega-1.4.7.ebuild
index 7ebcd2a0435d..8b43090ddcad 100644
--- a/app-text/xapian-omega/xapian-omega-1.4.7.ebuild
+++ b/app-text/xapian-omega/xapian-omega-1.4.7.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2018 Gentoo Authors
+# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="6"
@@ -10,7 +10,7 @@ S="${WORKDIR}/xapian-omega-${PV}"
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="alpha amd64 arm ~ia64 ~mips ppc ppc64 ~sparc ~x86"
+KEYWORDS="alpha amd64 arm ia64 ~mips ppc ppc64 ~sparc ~x86"
IUSE=""
DEPEND="dev-libs/xapian:0/30
diff --git a/app-text/xpdf/files/xpdf.desktop b/app-text/xpdf/files/xpdf.desktop
new file mode 100644
index 000000000000..d22edbe76d9f
--- /dev/null
+++ b/app-text/xpdf/files/xpdf.desktop
@@ -0,0 +1,104 @@
+[Desktop Entry]
+Name=XPDF
+Name[bn]=এক্স পি-ডি-এফ
+Name[de]=X-PDF
+Name[eo]=XPDF
+Name[es]=PDF para X
+Name[fr]=XPDF
+Name[hi]=एक्स पीडीएफ
+Name[ko]=X용 PDF
+Name[mn]=X-PDF
+Name[nds]=X-PDF
+Name[te]=ఎక్స్ పిడిఎఫ్
+Comment=PDF Viewer
+Comment[af]=Pdf Aansig
+Comment[ar]=عارض الملفات PDF
+Comment[az]=PDF Nümayişçisi
+Comment[be]=Праглядальнік PDF
+Comment[bg]=Преглед на PDF документи
+Comment[bn]=পি-ডি-এফ প্রদর্শক
+Comment[br]=Gweler PDF
+Comment[bs]=Preglednik PDF dokumenata
+Comment[ca]=Visor PDF
+Comment[cs]=Prohlížeč PDF souborů
+Comment[csb]=Przezérnik PDF
+Comment[cy]=Gwelydd PDF
+Comment[da]=PDF-fremviser
+Comment[de]=PDF-Betrachter
+Comment[el]=Προβολέας PDF
+Comment[eo]=PDF-rigardilo
+Comment[es]=Visor de documentos PDF
+Comment[et]=PDF failide vaatamine
+Comment[eu]=PDF ikustailua
+Comment[fa]=مشاهدهگر PDF
+Comment[fi]=PDF-näytin
+Comment[fo]=PDF-vísari
+Comment[fr]=Afficheur PDF
+Comment[fy]=PDF-werjefteprogramma
+Comment[ga]=Amharcán PDF
+Comment[gl]=Visualizador de PDF
+Comment[he]=מציג קבצי PDF
+Comment[hi]=पीडीएफ प्रदर्शक
+Comment[hr]=Preglednik PDF dokumenata
+Comment[hu]=PDF-nézegető
+Comment[id]=Viewer PDF
+Comment[is]=PDF-sjá
+Comment[it]=Visualizzatore PDF
+Comment[ja]=PDF ビューア
+Comment[kk]=PDF қарау құралы
+Comment[km]=កម្មវិធីមើល PDF
+Comment[ko]=PDF 보기
+Comment[lo]=ສະແດງຜົນPDF
+Comment[lt]=PDF Žiūriklis
+Comment[lv]=PDF Skatītājs
+Comment[mk]=Прегледувач на PDF
+Comment[mn]=PDF-Харагч
+Comment[ms]=Pemapar PDF
+Comment[mt]=Werrej PDF
+Comment[nb]=PDF-leser
+Comment[nds]=Kieker för PDF-Dateien
+Comment[ne]=PDF दर्शक
+Comment[nl]=PDF-weergaveprogramma
+Comment[nn]=PDF-lesar
+Comment[nso]=Molebeledi wa PDF
+Comment[oc]=Visualisor PDF
+Comment[pa]=PDF ਦਰਸ਼ਕ
+Comment[pl]=Przeglądarka plików PDF
+Comment[pt]=Visualizador de PDFs
+Comment[pt_BR]=Visualizador de arquivos PDF
+Comment[ro]=Vizualizor de documente PDF
+Comment[ru]=Просмотр PDF
+Comment[rw]=Mugaragaza PDF
+Comment[se]=PDF-logan
+Comment[sk]=Prehliadač PDF súborov
+Comment[sl]=Pregledovalnik datotek PDF
+Comment[sr]=PDF приказивач
+Comment[sr@Latn]=PDF prikazivač
+Comment[ss]=Sibuki se PDF
+Comment[sv]=PDF-visare
+Comment[ta]=PDF காட்சி
+Comment[tg]=Намоишгари PDF
+Comment[th]=ตัวแสดงผล PDF
+Comment[tr]=PDF Görüntüleyici
+Comment[tt]=PDF Kürsätkeç
+Comment[uk]=Переглядач PDF
+Comment[uz]=PDF кўрувчи
+Comment[ven]=Tshivhoni tsha PDF
+Comment[vi]=Trình xem PDF
+Comment[wa]=Håyneu di documints PDF
+Comment[zh_CN]=PDF 查看器
+Comment[zh_TW]=PDF 檢視程式
+Comment[zu]=Umbukisi we-PDF
+Keywords=pdf;document;presentation;viewer;
+Keywords[de]=pdf;Dokument;Präsentation;Betrachter;
+Keywords[ru]=pdf;документ;презентация;просмотр;
+Keywords[uk]=pdf;документ;презентація;перегляд;
+Keywords[ja]=pdf;ドキュメント;プレゼンテーション;ビューアー;
+
+Exec=xpdf
+Icon=xpdf
+Type=Application
+Terminal=false
+StartupNotify=false
+MimeType=application/pdf;
+Categories=Office;Viewer;Graphics;2DGraphics;VectorGraphics;
diff --git a/app-text/xpdf/metadata.xml b/app-text/xpdf/metadata.xml
index aab31e840b14..89d3f9dff565 100644
--- a/app-text/xpdf/metadata.xml
+++ b/app-text/xpdf/metadata.xml
@@ -8,6 +8,7 @@