diff --git a/app-emulation/conmon/Manifest b/app-emulation/conmon/Manifest
new file mode 100644
index 0000000..6176ef8
--- /dev/null
+++ b/app-emulation/conmon/Manifest
@@ -0,0 +1,3 @@
+DIST conmon-2.0.24.tar.gz 104680 BLAKE2B c2ca7197e6ba15eac948b292b34b8d6c4ebb4471c019ff5925f20c65f885c89093b8e6cc88a39acfac2950dbb9f4f1261aba365c86adc62450d887e77bda0317 SHA512 96e86ead995a4c18044ab1434e256126a2c58b4a1ce57ebf469b185571509ab9a5f01c25b379441d6a0e210743a63c72c5f7b1a8552289f4e720f76b2956723b
+EBUILD conmon-2.0.24.ebuild 950 BLAKE2B e3fa274988abe852ae7d1a08ee63c041dd1966d09bbb6f70f3b933a01f151593eec1136baf7a0f3753a2a45402cfbf680e56a9b1a3cea821fbd74958616472e6 SHA512 aa7e8a7441a29068a8ab97a681c927031b94caa111e01b34f2005e7e63c8ec40cea8a51fa8e074300b518900896a4ca554acbe2b964633fb7df8dc1a62d1b1ed
+MISC metadata.xml 326 BLAKE2B 88e40bbfd92c360f7ed559dc1f3ebe8d35a4905c413de8208a72e255e531d32f61dea3ad710b3a2743df01b29f3f5426440beff3ffcd59139d6f5ce118c17557 SHA512 0709bf7dd7300225974bbf974a3c90c27a368ae6862e080c95f0fb30f314b94c0502258773649fe2cdeba22ad9f5c0d29d000f95e8f7d961e9cdfbea108b4775
diff --git a/app-emulation/conmon/conmon-2.0.24.ebuild b/app-emulation/conmon/conmon-2.0.24.ebuild
new file mode 100644
index 0000000..0285fe8
--- /dev/null
+++ b/app-emulation/conmon/conmon-2.0.24.ebuild
@@ -0,0 +1,43 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+KEYWORDS="~amd64"
+DESCRIPTION="An OCI container runtime monitor"
+HOMEPAGE="https://github.com/containers/conmon"
+LICENSE="Apache-2.0"
+SLOT="0"
+IUSE="systemd crio +podman"
+EGIT_COMMIT="59952292a3b07ac125575024ae21956efe0ecdfb"
+SRC_URI="${HOMEPAGE}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+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() {
+ make
+}
+
+src_install() {
+ dobin bin/conmon
+ if use podman; then
+ dodir /usr/libexec/podman
+ ln /usr/bin/conmon /usr/libexec/podman/conmon
+ fi
+ if use crio; then
+ dodir /usr/libexec/crio
+ ln /usr/bin/conmon /usr/libexec/crio/conmon
+ fi
+ dodoc README.md
+}
diff --git a/app-emulation/conmon/metadata.xml b/app-emulation/conmon/metadata.xml
new file mode 100644
index 0000000..15f05ba
--- /dev/null
+++ b/app-emulation/conmon/metadata.xml
@@ -0,0 +1,11 @@
+
+
+
+
+ zmedico@gentoo.org
+ Zac Medico
+
+
+ containers/conmon
+
+
diff --git a/app-emulation/libvirt/Manifest b/app-emulation/libvirt/Manifest
new file mode 100644
index 0000000..ed5f17f
--- /dev/null
+++ b/app-emulation/libvirt/Manifest
@@ -0,0 +1,11 @@
+AUX README.gentoo-r3 1852 BLAKE2B f9525ddc3ab50958cb83dc9b9a64b29db526e7e9a7c06ac20224c0637f2425c96f0bdb5e484c744d0888cbb5a1dd518ab065e82655732fc8db5a2030d10f3346 SHA512 b56e41a895afdeee8ec690f9992ba2f0db285847337210a18102974558fa01a93c24ceaa1bab22390a0f0bbda0a5c837187098f2a7786afa86ac5b5c23614b0f
+AUX libvirt-guests.confd 2430 BLAKE2B 9d56477c9377e02503782e6d653579c6d149b292c43f37926f4646374e8aae05ca812b6a3a561811482861f8fe67dfdbe63851963326ddbbf2f4644c85411120 SHA512 78f419a89de7aabaad860903c24f1c070786fc1296d987e61dd537705b0e7f71a46c315888028f3826c3417e42861ca8471788be4ec5695e98427c5f18ae63fc
+AUX libvirt-guests.init-r4 5591 BLAKE2B e745692a7ea706c8367cdb7ee2114565770bda5be5675ba3a541555659d17875f7996ff7028bf415224d095b49b71205a3d77f420464d5579ccc189def5e434d SHA512 ec2bc46d72afa61513983b777e2d49da618a35a4687bc75674b3a49ababd4e2e387661010d342fee86c7a73d259644985a263a6c2976e29a436d88921bb040b0
+AUX libvirtd.confd-r5 740 BLAKE2B 74a069f4902dd1352f06029c886200615a35870ff88496c91956d23a3172db0789086622422f545498e92b7f8de41225022185fe291dd580cbacdeb783163f4b SHA512 98f935589dbc5f2a99329f77fdf84c563fa0dc99404b7476603679478d68ce8dbea2c88645251d3c28f59e7bcae124ae632972146e8a8c3e0e9fcbfb27296f91
+AUX libvirtd.init-r19 1114 BLAKE2B a69f5a07e0b946a3167ac4509611d08a8b848e7337677cce36f0eff8e2f646fb03d92279eb3c4427b25649210c8acf280cb9877e0c5c363f1f358b211b208d9d SHA512 6192888e5dbf384cfecab2c1e55fb9a2ceba83390aa71cd8c0be0526a7cc3f9c2a9d7a71d4fe6bbb528871e8e7bc5c73e385ef56eec2366bcc75eb361e7d1894
+AUX libvirtd.tmpfiles.conf 36 BLAKE2B fa0e1dac4117dcb2a2e826c82c4c63e20156db47abf4088167484f1f3149a4998840cf1aba745621851d7e2653df5c7f7268d8d61be3a3731ea053a88f35c13b SHA512 2b1c3c64dd6fa03d8c2ae24e7ce4aa7d754913214542a68a4e99f10fbc251fd23ee26e297a957d7b4b70eec8ef028c41fc915da3a85fbbd16143bb92d1de3aed
+AUX virtlockd.init-r2 573 BLAKE2B 83bbd228bd59fa29f1d974bc5eec8af0b701328a0a64bbb9e2d9cb918d5d0b3c0d5e791afa18f47ffa2c429082083912fda3f2401c3c5b3d8d85ea8b7cacf440 SHA512 11bf7208e8da8cf7b907049100d095f4d6b5d215a0955fa620e50d6d541d3ecd9d779a7903c64feb25d17545c45491d52441e14a04f2c793f3b03dee7784c482
+AUX virtlogd.init-r2 572 BLAKE2B e6a86e34eda78fc032df17e1bd94095e357770f4036e19fff895266b58df7e31774f6004fec56fad9e69bf7d1afa5d898bdebe018013877f8844d05b3a46d509 SHA512 d5d83edee8a4bdf0dac79abc129ff7ec11573aa580e32963d7c7d47133e276a4427d8653683fc8b0a6c1c2aba631e5875c73454d6fef3bcac6dcaca542e69f34
+DIST libvirt-7.5.0.tar.xz 8642788 BLAKE2B 467dbd2a337beee5d9f10de7bc37ca988e85fad17fb75e6ab73c13cf79eceab27c9ff51bbe2ac9f6c121feed4c67860fa263e601e10f6b1dd7b8a647b53228a7 SHA512 cf89800c8970b8b1373ee32cc49ea88b87e76b50fd134df5da354be83e0ef490e514f16425c1c16eb3989fbadd3ba7d9976972fbbae6cb40db3d2ae94863219d
+EBUILD libvirt-7.5.0.ebuild 8485 BLAKE2B 8c2c01de8d2ec29e2b26405eaec89f4ddbaf6816791f900854bbed93758804c64ae567d5a5c1d74d38af79f8603bace73864c416abf02d73b2982c5831b2e5af SHA512 c91e53751493902a5be3b676c157af45cf21241a768dbba90d27a6a5d812039a6d40ea3586e20f31f9402b194891043aeb952a714d44b3bac385169a0d41d73d
+MISC autogen.py 941 BLAKE2B e13858a41641f4519794781be66a19264f82788bf9c61246190ff2a5e52280c1b807bd6fed40492e90c6e961c76d87138701b699b7981863e094cb5397d1612b SHA512 fd24384f02535a23b5d61ca9a44d634209bb292b49345610718fd77d2cd659fbaa74b1f7edfa224d6aafecf70e38961a5fd2bfd03babe3b6581d3b8c720c811f
diff --git a/app-emulation/libvirt/autogen.py b/app-emulation/libvirt/autogen.py
new file mode 100644
index 0000000..2e3e1e4
--- /dev/null
+++ b/app-emulation/libvirt/autogen.py
@@ -0,0 +1,36 @@
+#!/usr/bin/env python3
+
+import json
+
+
+async def generate(hub, **pkginfo):
+
+ json_data = await hub.pkgtools.fetch.get_page("https://gitlab.com/api/v4/projects/192693/repository/tags")
+ json_list = json.loads(json_data)
+ for tag in json_list:
+ v = tag["name"].lstrip("v")
+ if "-rc" in v:
+ continue
+ version = v
+ break
+ url = f"https://libvirt.org/sources/libvirt-{version}.tar.xz"
+ urlpy = f"https://libvirt.org/sources/python/libvirt-python-{version}.tar.gz"
+ python_compat = "python3+"
+
+ ebuild = hub.pkgtools.ebuild.BreezyBuild(
+ **pkginfo, version=version, python_compat=python_compat, artifacts=[hub.pkgtools.ebuild.Artifact(url=url)]
+ )
+ ebuild.push()
+
+ ebuildpy = hub.pkgtools.ebuild.BreezyBuild(
+ template_path=ebuild.template_path,
+ cat="dev-python",
+ name="libvirt-python",
+ python_compat=python_compat,
+ version=version,
+ artifacts=[hub.pkgtools.ebuild.Artifact(url=urlpy)],
+ )
+ ebuildpy.push()
+
+
+# vim: ts=4 sw=4 noet
diff --git a/app-emulation/libvirt/files/README.gentoo-r3 b/app-emulation/libvirt/files/README.gentoo-r3
new file mode 100644
index 0000000..bdf4400
--- /dev/null
+++ b/app-emulation/libvirt/files/README.gentoo-r3
@@ -0,0 +1,49 @@
+Important: The openrc libvirtd init script is now broken up into two
+separate services: libvirtd, that solely handles the daemon, and
+libvirt-guests, that takes care of clients during shutdown/restart of the
+host. In order to reenable client handling, edit /etc/conf.d/libvirt-guests
+and enable the service and start it:
+
+ $ rc-update add libvirt-guests
+ $ service libvirt-guests start
+
+
+For the basic networking support (bridged and routed networks) you don't
+need any extra software. For more complex network modes including but not
+limited to NATed network, you can enable the 'virt-network' USE flag. It
+will pull in required runtime dependencies
+
+
+If you are using dnsmasq on your system, you will have to configure
+/etc/dnsmasq.conf to enable the following settings:
+
+ bind-interfaces
+ interface or except-interface
+
+Otherwise you might have issues with your existing DNS server.
+
+
+For openrc users:
+
+ Please use /etc/conf.d/libvirtd to control the '--listen' parameter for
+ libvirtd.
+
+ Use /etc/init.d/libvirt-guests to manage clients on restart/shutdown of
+ the host. The default configuration will suspend and resume running kvm
+ guests with 'managedsave'. This behavior can be changed under
+ /etc/conf.d/libvirt-guests
+
+
+If you have built libvirt with policykit support, a new group "libvirt" has
+been created. Simply add a user to the libvirt group in order to grant
+administrative access to libvirtd. Alternatively, drop a custom policykit
+rule into /etc/polkit-1/rules.d.
+
+If you have built libvirt without policykit support (USE=-policykit), you
+must change the unix sock group and/or perms in /etc/libvirt/libvirtd.conf
+in order to allow normal users to connect to libvirtd.
+
+
+If libvirt is built with USE=caps, libvirt will now start qemu/kvm VMs
+with non-root privileges. Ensure any resources your VMs use are accessible
+by qemu:qemu.
diff --git a/app-emulation/libvirt/files/libvirt-guests.confd b/app-emulation/libvirt/files/libvirt-guests.confd
new file mode 100644
index 0000000..ed2ce58
--- /dev/null
+++ b/app-emulation/libvirt/files/libvirt-guests.confd
@@ -0,0 +1,68 @@
+# /etc/conf.d/libvirtd
+
+# LIBVIRT_URIS
+# space separated list of libvirt URIs to communicate with to start/stop guests
+# Valid values are anything that can be passed to 'virsh connect'
+
+#LIBVIRT_URIS="qemu:///system"
+
+
+# LIBVIRT_SHUTDOWN
+# Valid options:
+# * managedsave - Performs a state save external to the VM (for hypervisors
+# supporting this operation). qemu-kvm will stop the CPU
+# and save off all state to a separate file. When the
+# machine is started again, it will resume like nothing
+# ever happened. This is guarenteed to always successfully
+# stop your machine and restart it.
+#
+# * shutdown - Sends an ACPI shutdown (think of this as a request to
+# your guest to shutdown). There is no way to distinguish
+# between guests that are ignoring the shutdown request or
+# are stuck or are taking a long time to shutdown. We will
+# wait LIBVIRT_MAXWAIT seconds before yanking the power
+# out.
+#
+# * destroy - Immediately stop all running guests. Use with caution as
+# this can leave the guest in a corrupted state and might
+# lead to data loss.
+#
+
+#LIBVIRT_SHUTDOWN="managedsave"
+
+
+# LIBVIRT_MAXWAIT
+# Timeout in seconds until stopping a guest and "pulling the plug" on the
+# guest
+# Valid values are any integer over 0
+
+#LIBVIRT_MAXWAIT="500"
+
+
+# LIBVIRT_START
+# If this value is set to 'no', then guests and networks that were shutdown
+# by this script when it was stopped will not be started when it is started
+# back up.
+# Valid values are yes or no
+
+#LIBVIRT_START="yes"
+
+
+# LIBVIRT_IGNORE_AUTOSTART
+# If the VM is marked for autostart in its XML configuration then we won't
+# save its start when the init script is stopped. The result is that when
+# the init script starts back up, no attempt will be made to start the VM or
+# confirm it is started.
+# Valid values are yes or no
+
+#LIBVIRT_IGNORE_AUTOSTART="no"
+
+
+# LIBVIRT_NET_SHUTDOWN
+# If libvirtd created networks for you (e.g. NATed networks) then this init
+# script will shut them down for you if this is set to 'yes'. Otherwise,
+# the networks will be left running. For this option to be useful you must
+# have enabled the 'virt-network' USE flag and have had libvirt create a
+# NATed network for you. Valid values: 'yes' or 'no'
+
+#LIBVIRT_NET_SHUTDOWN="yes"
diff --git a/app-emulation/libvirt/files/libvirt-guests.init-r4 b/app-emulation/libvirt/files/libvirt-guests.init-r4
new file mode 100644
index 0000000..b29f04c
--- /dev/null
+++ b/app-emulation/libvirt/files/libvirt-guests.init-r4
@@ -0,0 +1,237 @@
+#!/sbin/openrc-run
+
+description="Virtual Machine Management (libvirt) Guests"
+
+depend() {
+ use libvirtd
+}
+
+# set the default to QEMU
+[ -z "${LIBVIRT_URIS}" ] && LIBVIRT_URIS="qemu:///system"
+
+# default to suspending the VM via managedsave
+case "${LIBVIRT_SHUTDOWN}" in
+ managedsave|shutdown|destroy) ;;
+ *) LIBVIRT_SHUTDOWN="managedsave" ;;
+esac
+
+# default to 500 seconds
+[ -z ${LIBVIRT_MAXWAIT} ] && LIBVIRT_MAXWAIT=500
+
+gueststatefile="/var/lib/libvirt/libvirt-guests.state"
+netstatefile="/var/lib/libvirt/libvirt-net.state"
+
+do_virsh() {
+ local hvuri=$1
+ shift
+
+ # if unset, default to qemu
+ [ -z ${hvuri} ] && hvuri="qemu:///system"
+ # if only qemu was supplied then correct the value
+ [ "xqemu" = x${hvuri} ] && hvuri="qemu:///system"
+
+ # Silence errors because virsh always throws an error about
+ # not finding the hypervisor version when connecting to libvirtd
+ # lastly strip the blank line at the end
+ LC_ALL=C virsh -c ${hvuri} "$@" 2>/dev/null | head -n -1
+}
+
+libvirtd_dom_list() {
+ # Only work with domains by their UUIDs
+ local hvuri=$1
+ shift
+
+ # The grep is to remove dom0 for xen domains. Otherwise we never hit 0
+ do_virsh "${hvuri}" list --uuid $@ | grep -v 00000000-0000-0000-0000-000000000000
+}
+
+libvirtd_dom_count() {
+ local hvuri=$1
+ shift
+
+ libvirtd_dom_list "${hvuri}" $@ | wc -l
+}
+
+libvirtd_net_list() {
+ # Only work with networks by their UUIDs
+ local hvuri=$1
+ shift
+
+ do_virsh "${hvuri}" net-list --uuid $@
+}
+
+libvirtd_net_count() {
+ local hvuri=$1
+ shift
+
+ libvirtd_net_list "${hvuri}" $@ | wc -l
+}
+
+libvirtd_dom_stop() {
+ # stops all persistent or transient domains for a given URI
+ # $1 - uri
+ # $2 - persisent/transient
+
+ local uri=$1
+ local persist=$2
+ local shutdown_type=${LIBVIRT_SHUTDOWN}
+ local counter=${LIBVIRT_MAXWAIT}
+ local dom_name=
+ local dom_as=
+ local dom_ids=
+ local uuid=
+ local dom_count=
+
+ [ "${persist}" = "--transient" ] && shutdown_type="shutdown"
+ [ -n "${counter}" ] || counter=500
+
+ einfo " Shutting down domain(s) ..."
+
+ # grab all persistent or transient domains running
+ dom_ids=$(libvirtd_dom_list ${uri} ${persist})
+
+ for uuid in ${dom_ids}; do
+ # Get the name
+ dom_name=$(do_virsh ${uri} domname ${uuid})
+ einfo " ${dom_name}"
+ # Get autostart state
+ dom_as=$(do_virsh ${uri} dominfo ${uuid} | \
+ awk '$1 == "Autostart:" { print $2 }')
+
+ if [ "${persist}" = "--persistent" ]; then
+ # Save our running state only if LIBVIRT_IGNORE_AUTOSTART != yes
+ if [ "x${LIBVIRT_IGNORE_AUTOSTART}" = "xyes" ] && \
+ [ ${dom_as} = "enabled" ]; then
+ :
+ else
+ echo "${uri} ${uuid}" >> ${gueststatefile}
+ fi
+
+ fi
+
+ # Now let's stop it
+ do_virsh "${uri}" ${shutdown_type} ${uuid} > /dev/null
+
+ done
+
+ dom_count="$(libvirtd_dom_count ${uri} ${persist})"
+ while [ ${dom_count} -gt 0 ] && [ ${counter} -gt 0 ] ; do
+ dom_count="$(libvirtd_dom_count ${uri} ${persist})"
+ sleep 1
+ if [ "${shutdown_type}" = "shutdown" ]; then
+ counter=$((${counter} - 1))
+ fi
+ printf "."
+ done
+
+ if [ "${shutdown_type}" = "shutdown" ]; then
+ # grab all domains still running
+ dom_ids=$(libvirtd_dom_list ${uri} ${persist})
+ for uuid in ${dom_ids}; do
+ dom_name=$(do_virsh ${uri} domname ${uuid})
+ eerror " ${dom_name} forcibly stopped"
+ do_virsh "${uri}" destroy ${uuid} > /dev/null
+ done
+ fi
+}
+
+libvirtd_net_stop() {
+ # stops all persistent or transient domains for a given URI
+ # $1 - uri
+ # $2 - persisent/transient
+
+ local uri=$1
+ local persist=$2
+ local uuid=
+ local net_name=
+
+ if [ "${LIBVIRT_NET_SHUTDOWN}" != "no" ]; then
+
+ einfo " Shutting down network(s):"
+ for uuid in $(libvirtd_net_list ${uri} ${persist}); do
+ net_name=$(do_virsh ${uri} net-name ${uuid})
+ einfo " ${net_name}"
+
+ if [ "${persist}" = "--persistent" ]; then
+ # Save our running state
+ echo "${uri} ${uuid}" >> ${netstatefile}
+
+ fi
+
+ # Actually stop the network
+ do_virsh qemu net-destroy ${uuid} > /dev/null
+ done
+
+ fi
+}
+
+start() {
+ local uri=
+ local uuid=
+ local name=
+
+ for uri in ${LIBVIRT_URIS}; do
+ do_virsh "${uri}" connect
+ if [ $? -ne 0 ]; then
+ eerror "Failed to connect to '${uri}'. Domains may not start."
+ fi
+ done
+
+ [ ! -e "${netstatefile}" ] && touch "${netstatefile}"
+ [ ! -e "${gueststatefile}" ] && touch "${gueststatefile}"
+
+ # if the user didn't want to start any guests up then respect their wish
+ [ "x${LIBVIRT_START}" = "xno" ] && return 0
+
+ # start networks
+ ebegin "Starting libvirt networks"
+ while read -r uri uuid
+ do
+ # ignore trash
+ [ -z "${uri}" ] || [ -z "${uuid}" ] && continue
+
+ name=$(do_virsh "${uri}" net-name ${uuid})
+ einfo " ${name}"
+ do_virsh "${uri}" net-start ${uuid} > /dev/null
+ done <"${netstatefile}"
+ eend 0
+
+ # start domains
+ ebegin "Starting libvirt domains"
+ while read -r uri uuid
+ do
+ # ignore trash
+ [ -z "${uri}" ] || [ -z "${uuid}" ] && continue
+
+ name=$(do_virsh "${uri}" domname ${uuid})
+ einfo " ${name}"
+ do_virsh "${uri}" start ${uuid} > /dev/null
+ do_virsh "${uri}" domtime --sync ${uuid} > /dev/null
+ done <"${gueststatefile}"
+ eend 0
+}
+
+stop() {
+ local counter=
+ local dom_name=
+ local net_name=
+ local dom_ids=
+ local uuid=
+ local dom_count=
+
+ rm -f "${gueststatefile}"
+ [ $? -ne 0 ] && eerror "Unable to save domain state"
+ rm -f "${netstatefile}"
+ [ $? -ne 0 ] && eerror "Unable to save net state"
+
+ for uri in ${LIBVIRT_URIS}; do
+ einfo "Stopping libvirt domains and networks for ${uri}"
+
+ libvirtd_dom_stop "${uri}" "--persistent"
+ libvirtd_dom_stop "${uri}" "--transient"
+ libvirtd_net_stop "${uri}" "--persistent"
+ libvirtd_net_stop "${uri}" "--transient"
+
+ einfo "Done stopping domains and networks for ${uri}"
+ done
+}
diff --git a/app-emulation/libvirt/files/libvirtd.confd-r5 b/app-emulation/libvirt/files/libvirtd.confd-r5
new file mode 100644
index 0000000..c326531
--- /dev/null
+++ b/app-emulation/libvirt/files/libvirtd.confd-r5
@@ -0,0 +1,18 @@
+# /etc/conf.d/libvirtd
+
+# Startup dependency
+# libvirtd typically requires all networks to be up and settled which
+# is what rc_need="net" provides. However if you only use specific networks
+# for libvirtd, you may override this. Or if you only use libvirtd locally.
+rc_need="net"
+
+# The termination timeout (start-stop-daemon parameter "retry") ensures
+# that the service will be terminated within a given time (25 + 5 seconds
+# per default) when you are stopping the service.
+#LIBVIRTD_TERMTIMEOUT="TERM/25/KILL/5"
+
+# LIBVIRTD_OPTS
+# You may want to add '--listen' to have libvirtd listen for tcp/ip connections
+# if you want to use libvirt for remote control
+# Please consult 'libvirtd --help' for more options
+#LIBVIRTD_OPTS="--listen"
diff --git a/app-emulation/libvirt/files/libvirtd.init-r19 b/app-emulation/libvirt/files/libvirtd.init-r19
new file mode 100644
index 0000000..60dad6a
--- /dev/null
+++ b/app-emulation/libvirt/files/libvirtd.init-r19
@@ -0,0 +1,33 @@
+#!/sbin/openrc-run
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+description="Virtual Machine Management daemon (libvirt)"
+
+LIBVIRTD_OPTS=${LIBVIRTD_OPTS:-"${LIBVIRTD_OPTS}"}
+LIBVIRTD_TIMEOUT=${LIBVIRTD_TERMTIMEOUT:-"TERM/25/KILL/5"}
+
+command="/usr/sbin/libvirtd"
+command_args="${LIBVIRTD_OPTS}"
+start_stop_daemon_args="-b --env KRB5_KTNAME=/etc/libvirt/krb5.tab"
+pidfile="/run/libvirtd.pid"
+retry="${LIBVIRTD_TERMTIMEOUT}"
+
+depend() {
+ need virtlogd
+ use ceph dbus iscsid virtlockd
+ after cgconfig corosync ebtables iptables ip6tables nfs nfsmount ntp-client ntpdportmap rpc.statd sanlock xenconsoled
+ USE_FLAG_FIREWALLD
+}
+
+start_pre() {
+ # Test configuration directories in /etc/libvirt/ to be either not
+ # present or a directory, i.e. not a regular file, bug #532892
+
+ checkpath --directory /etc/libvirt/lxc || return 1
+ checkpath --directory /etc/libvirt/nwfilter || return 1
+ [ -L /etc/libvirt/qemu ] ||
+ checkpath --directory /etc/libvirt/qemu || return 1
+ [ -L /etc/libvirt/storage ] ||
+ checkpath --directory /etc/libvirt/storage || return 1
+}
diff --git a/app-emulation/libvirt/files/libvirtd.tmpfiles.conf b/app-emulation/libvirt/files/libvirtd.tmpfiles.conf
new file mode 100644
index 0000000..c22c23d
--- /dev/null
+++ b/app-emulation/libvirt/files/libvirtd.tmpfiles.conf
@@ -0,0 +1 @@
+d /run/libvirt/lxc 0755 root root -
diff --git a/app-emulation/libvirt/files/virtlockd.init-r2 b/app-emulation/libvirt/files/virtlockd.init-r2
new file mode 100644
index 0000000..385dc1e
--- /dev/null
+++ b/app-emulation/libvirt/files/virtlockd.init-r2
@@ -0,0 +1,23 @@
+#!/sbin/openrc-run
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+description="libvirt virtual machine lock manager"
+command="/usr/sbin/virtlockd"
+start_stop_daemon_args="-b"
+pidfile="/run/virtlockd.pid"
+
+extra_started_commands="reload"
+description_reload="re-exec the daemon, while maintaining locks and clients"
+
+
+depend() {
+ after ntp-client ntpd nfs nfsmount corosync
+}
+
+reload() {
+ ebegin "re-exec() virtlockd"
+
+ start-stop-daemon --signal SIGUSR1 \
+ --exec "${command}" --pidfile "${pidfile}"
+}
diff --git a/app-emulation/libvirt/files/virtlogd.init-r2 b/app-emulation/libvirt/files/virtlogd.init-r2
new file mode 100644
index 0000000..442dcb8
--- /dev/null
+++ b/app-emulation/libvirt/files/virtlogd.init-r2
@@ -0,0 +1,23 @@
+#!/sbin/openrc-run
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+description="libvirt virtual machine logging manager"
+command="/usr/sbin/virtlogd"
+start_stop_daemon_args="-b"
+pidfile="/run/virtlogd.pid"
+
+extra_started_commands="reload"
+description_reload="re-exec the daemon, while maintaining open connections"
+
+
+depend() {
+ after ntp-client ntpd nfs nfsmount corosync
+}
+
+reload() {
+ ebegin "re-exec() virtlogd"
+
+ start-stop-daemon --signal SIGUSR1 \
+ --exec "${command}" --pidfile "${pidfile}"
+}
diff --git a/app-emulation/libvirt/libvirt-7.5.0.ebuild b/app-emulation/libvirt/libvirt-7.5.0.ebuild
new file mode 100644
index 0000000..9f5c296
--- /dev/null
+++ b/app-emulation/libvirt/libvirt-7.5.0.ebuild
@@ -0,0 +1,333 @@
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3+ )
+
+inherit bash-completion-r1 linux-info meson python-any-r1 readme.gentoo-r1 user
+
+SRC_URI="https://libvirt.org/sources/${P}.tar.xz"
+
+DESCRIPTION="C toolkit to manipulate virtual machines"
+HOMEPAGE="https://www.libvirt.org/"
+SRC_URI="https://libvirt.org/sources/libvirt-7.5.0.tar.xz"
+
+SLOT="0/${PV}"
+LICENSE="LGPL-2.1"
+KEYWORDS="*"
+IUSE="
+ apparmor audit +caps +dbus dtrace firewalld fuse glusterfs iscsi
+ iscsi-direct +libvirtd lvm libssh lxc +macvtap nfs nls numa openvz
+ parted pcap policykit +qemu rbd sasl selinux +udev +vepa
+ virtualbox virt-network wireshark-plugins xen zfs
+"
+
+REQUIRED_USE="
+ firewalld? ( virt-network )
+ libvirtd? ( || ( lxc openvz qemu virtualbox xen ) )
+ lxc? ( caps libvirtd )
+ openvz? ( libvirtd )
+ policykit? ( dbus )
+ qemu? ( libvirtd )
+ vepa? ( macvtap )
+ virt-network? ( libvirtd )
+ virtualbox? ( libvirtd )
+ xen? ( libvirtd )"
+
+# gettext.sh command is used by the libvirt command wrappers, and it's
+# non-optional, so put it into RDEPEND.
+# We can use both libnl:1.1 and libnl:3, but if you have both installed, the
+# package will use 3 by default. Since we don't have slot pinning in an API,
+# we must go with the most recent
+MESON_DEPEND=">=dev-util/meson-0.54.0"
+RDEPEND="
+ app-misc/scrub
+ >=dev-libs/glib-2.48.0
+ dev-libs/libgcrypt:0
+ dev-libs/libnl:3
+ >=dev-libs/libxml2-2.7.6
+ >=net-analyzer/openbsd-netcat-1.105-r1
+ >=net-libs/gnutls-1.0.25:0=
+ net-libs/libssh2
+ net-libs/libtirpc
+ net-libs/rpcsvc-proto
+ >=net-misc/curl-7.18.0
+ sys-apps/dmidecode
+ >=sys-apps/util-linux-2.17
+ sys-devel/gettext
+ sys-libs/ncurses:0=
+ sys-libs/readline:=
+ apparmor? ( sys-libs/libapparmor )
+ audit? ( sys-process/audit )
+ caps? ( sys-libs/libcap-ng )
+ dbus? ( sys-apps/dbus )
+ dtrace? ( dev-util/systemtap )
+ firewalld? ( >=net-firewall/firewalld-0.6.3 )
+ fuse? ( sys-fs/fuse:0= )
+ glusterfs? ( >=sys-cluster/glusterfs-3.4.1 )
+ iscsi? ( sys-block/open-iscsi )
+ iscsi-direct? ( >=net-libs/libiscsi-1.18.0 )
+ libssh? ( net-libs/libssh )
+ lvm? ( >=sys-fs/lvm2-2.02.48-r2[-device-mapper-only(-)] )
+ nfs? ( net-fs/nfs-utils )
+ numa? (
+ >sys-process/numactl-2.0.2
+ sys-process/numad
+ )
+ parted? (
+ >=sys-block/parted-1.8[device-mapper]
+ sys-fs/lvm2[-device-mapper-only(-)]
+ )
+ pcap? ( >=net-libs/libpcap-1.0.0 )
+ policykit? ( >=sys-auth/polkit-0.9 )
+ qemu? (
+ >=app-emulation/qemu-1.5.0
+ dev-libs/yajl
+ )
+ rbd? ( sys-cluster/ceph )
+ sasl? ( dev-libs/cyrus-sasl )
+ selinux? ( >=sys-libs/libselinux-2.0.85 )
+ virt-network? (
+ net-dns/dnsmasq[script]
+ net-firewall/ebtables
+ >=net-firewall/iptables-1.4.10[ipv6]
+ net-misc/radvd
+ sys-apps/iproute2[-minimal]
+ )
+ virtualbox? ( || ( app-emulation/virtualbox >=app-emulation/virtualbox-bin-2.2.0 ) )
+ wireshark-plugins? ( net-analyzer/wireshark:= )
+ xen? (
+ >=app-emulation/xen-4.6.0
+ app-emulation/xen-tools:=
+ )
+ udev? (
+ virtual/udev
+ >=x11-libs/libpciaccess-0.10.9
+ )
+ zfs? ( sys-fs/zfs )"
+
+DEPEND="${RDEPEND}
+ ${PYTHON_DEPS}
+ app-text/xhtml1
+ dev-lang/perl
+ dev-libs/libxslt
+ dev-perl/XML-XPath
+ dev-python/docutils
+ virtual/pkgconfig"
+
+pkg_setup() {
+ if use qemu; then
+ enewgroup qemu 77
+ enewuser qemu 77 -1 -1 "qemu,kvm"
+ fi
+
+ use policykit && enewgroup libvirt
+
+ # Check kernel configuration:
+ CONFIG_CHECK=""
+ use fuse && CONFIG_CHECK+="
+ ~FUSE_FS"
+
+ use lvm && CONFIG_CHECK+="
+ ~BLK_DEV_DM
+ ~DM_MULTIPATH
+ ~DM_SNAPSHOT"
+
+ use lxc && CONFIG_CHECK+="
+ ~BLK_CGROUP
+ ~CGROUP_CPUACCT
+ ~CGROUP_DEVICE
+ ~CGROUP_FREEZER
+ ~CGROUP_NET_PRIO
+ ~CGROUP_PERF
+ ~CGROUPS
+ ~CGROUP_SCHED
+ ~CPUSETS
+ ~IPC_NS
+ ~MACVLAN
+ ~NAMESPACES
+ ~NET_CLS_CGROUP
+ ~NET_NS
+ ~PID_NS
+ ~POSIX_MQUEUE
+ ~SECURITYFS
+ ~USER_NS
+ ~UTS_NS
+ ~VETH
+ ~!GRKERNSEC_CHROOT_MOUNT
+ ~!GRKERNSEC_CHROOT_DOUBLE
+ ~!GRKERNSEC_CHROOT_PIVOT
+ ~!GRKERNSEC_CHROOT_CHMOD
+ ~!GRKERNSEC_CHROOT_CAPS"
+
+ kernel_is lt 4 7 && use lxc && CONFIG_CHECK+="
+ ~DEVPTS_MULTIPLE_INSTANCES"
+
+ use macvtap && CONFIG_CHECK+="
+ ~MACVTAP"
+
+ use virt-network && CONFIG_CHECK+="
+ ~BRIDGE_EBT_MARK_T
+ ~BRIDGE_NF_EBTABLES
+ ~NETFILTER_ADVANCED
+ ~NETFILTER_XT_CONNMARK
+ ~NETFILTER_XT_MARK
+ ~NETFILTER_XT_TARGET_CHECKSUM
+ ~IP_NF_FILTER
+ ~IP_NF_MANGLE
+ ~IP_NF_NAT
+ ~IP_NF_TARGET_MASQUERADE
+ ~IP6_NF_FILTER
+ ~IP6_NF_MANGLE
+ ~IP6_NF_NAT"
+ # Bandwidth Limiting Support
+ use virt-network && CONFIG_CHECK+="
+ ~BRIDGE_EBT_T_NAT
+ ~IP_NF_TARGET_REJECT
+ ~NET_ACT_POLICE
+ ~NET_CLS_FW
+ ~NET_CLS_U32
+ ~NET_SCH_HTB
+ ~NET_SCH_INGRESS
+ ~NET_SCH_SFQ"
+
+ # Handle specific kernel versions for different features
+ kernel_is lt 3 6 && CONFIG_CHECK+=" ~CGROUP_MEM_RES_CTLR"
+ if kernel_is ge 3 6; then
+ CONFIG_CHECK+=" ~MEMCG ~MEMCG_SWAP "
+ kernel_is lt 4 5 && CONFIG_CHECK+=" ~MEMCG_KMEM "
+ fi
+
+ ERROR_USER_NS="Optional depending on LXC configuration."
+
+ if [[ -n ${CONFIG_CHECK} ]]; then
+ linux-info_pkg_setup
+ fi
+}
+
+src_prepare() {
+ touch "${S}/.mailmap"
+
+ default
+
+ # Tweak the init script:
+ cp "${FILESDIR}/libvirtd.init-r19" "${S}/libvirtd.init" || die
+ sed -e "s/USE_FLAG_FIREWALLD/$(usex firewalld 'need firewalld' '')/" \
+ -i "${S}/libvirtd.init" || die "sed failed"
+
+ #Replacing recurrent patches with sed scripts
+ mv src/security/apparmor/usr.lib.libvirt.virt-aa-helper.in src/security/apparmor/usr.libexec.virt-aa-helper.in
+ for x in $(grep -rl usr.lib.libvirt.virt-aa-helper.in); do
+ sed -e "s/usr.lib.libvirt.virt-aa-helper.in/usr.libexec.virt-aa-helper.in/g" -i $x
+ done
+ sed -e "s#/sysconfig/libvirt-guests#/sysconfig/libvirt-guests.conf#g" \
+ -e "s#/lock/subsys/libvirt-guests#/lock/libvirt-guests#g" \
+ -i tools/libvirt-guests.sh.in
+}
+
+src_configure() {
+ local emesonargs=(
+ $(meson_feature apparmor)
+ $(meson_use apparmor apparmor_profiles)
+ $(meson_feature audit)
+ $(meson_feature caps capng)
+ $(meson_feature dbus)
+ $(meson_feature dtrace)
+ $(meson_feature firewalld)
+ $(meson_feature fuse)
+ $(meson_feature glusterfs)
+ $(meson_feature glusterfs storage_gluster)
+ $(meson_feature iscsi storage_iscsi)
+ $(meson_feature iscsi-direct storage_iscsi_direct)
+ $(meson_feature libvirtd driver_libvirtd)
+ $(meson_feature libssh)
+ $(meson_feature lvm storage_lvm)
+ $(meson_feature lvm storage_mpath)
+ $(meson_feature lxc driver_lxc)
+ $(meson_feature macvtap)
+ $(meson_feature nls)
+ $(meson_feature numa numactl)
+ $(meson_feature numa numad)
+ $(meson_feature openvz driver_openvz)
+ $(meson_feature parted storage_disk)
+ $(meson_feature pcap libpcap)
+ $(meson_feature policykit polkit)
+ $(meson_feature qemu driver_qemu)
+ $(meson_feature qemu yajl)
+ $(meson_feature rbd storage_rbd)
+ $(meson_feature sasl)
+ $(meson_feature selinux)
+ $(meson_feature udev)
+ $(meson_feature vepa virtualport)
+ $(meson_feature virt-network driver_network)
+ $(meson_feature virtualbox driver_vbox)
+ $(meson_feature wireshark-plugins wireshark_dissector)
+ $(meson_feature xen driver_libxl)
+ $(meson_feature zfs storage_zfs)
+
+ -Dhal=disabled
+ -Dnetcf=disabled
+ -Dsanlock=disabled
+
+ -Ddriver_esx=enabled
+ -Dqemu_group=$(usex caps qemu root)
+ -Dqemu_user=$(usex caps qemu root)
+ -Ddriver_remote=enabled
+ -Dstorage_fs=enabled
+ -Ddriver_vmware=enabled
+
+ --localstatedir=/var
+ -Drunstatedir=/run
+ )
+
+ meson_src_configure
+}
+
+src_test() {
+ # remove problematic tests, bug #591416
+ sed -i -e '/commandtest/d' tests/meson.build
+ meson_src_test
+}
+
+src_install() {
+ meson_src_install
+
+ # Remove bogus, empty directories. They are either not used, or
+ # libvirtd is able to create them on demand
+ rm -rf "${D}"/etc/sysconfig
+ rm -rf "${D}"/var
+ rm -rf "${D}"/run
+
+ use libvirtd || return 0
+ # From here, only libvirtd-related instructions, be warned!
+
+ newinitd "${S}/libvirtd.init" libvirtd
+ newinitd "${FILESDIR}/libvirt-guests.init-r4" libvirt-guests
+ newinitd "${FILESDIR}/virtlockd.init-r2" virtlockd
+ newinitd "${FILESDIR}/virtlogd.init-r2" virtlogd
+
+ newconfd "${FILESDIR}/libvirtd.confd-r5" libvirtd
+ newconfd "${FILESDIR}/libvirt-guests.confd" libvirt-guests
+
+ DOC_CONTENTS=$(<"${FILESDIR}/README.gentoo-r3")
+ DISABLE_AUTOFORMATTING=disabled
+ readme.gentoo_create_doc
+}
+
+pkg_preinst() {
+ # we only ever want to generate this once
+ if [[ -e "${ROOT}"/etc/libvirt/qemu/networks/default.xml ]]; then
+ rm -rf "${D}"/etc/libvirt/qemu/networks/default.xml
+ fi
+}
+
+pkg_postinst() {
+ if [[ -e "${ROOT}"/etc/libvirt/qemu/networks/default.xml ]]; then
+ touch "${ROOT}"/etc/libvirt/qemu/networks/default.xml
+ fi
+
+ use libvirtd || return 0
+ # From here, only libvirtd-related instructions, be warned!
+
+ readme.gentoo_print_elog
+}
diff --git a/app-emulation/libvirt/templates/libvirt-python.tmpl b/app-emulation/libvirt/templates/libvirt-python.tmpl
new file mode 100644
index 0000000..fb58daf
--- /dev/null
+++ b/app-emulation/libvirt/templates/libvirt-python.tmpl
@@ -0,0 +1,35 @@
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( {{python_compat}} )
+
+inherit distutils-r1
+
+
+DESCRIPTION="libvirt Python bindings"
+HOMEPAGE="https://www.libvirt.org"
+SRC_URI="{{artifacts[0].src_uri}}"
+
+LICENSE="LGPL-2"
+SLOT="0"
+KEYWORDS="*"
+IUSE="examples test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="app-emulation/libvirt:0/${PV}"
+DEPEND="virtual/pkgconfig"
+BDEPEND="test? (
+ dev-python/lxml[${PYTHON_USEDEP}]
+ dev-python/nose[${PYTHON_USEDEP}]
+)"
+
+distutils_enable_tests setup.py
+
+python_install_all() {
+ if use examples; then
+ dodoc -r examples
+ docompress -x /usr/share/doc/${PF}/examples
+ fi
+ distutils-r1_python_install_all
+}
diff --git a/app-emulation/libvirt/templates/libvirt.tmpl b/app-emulation/libvirt/templates/libvirt.tmpl
new file mode 100644
index 0000000..628a4f6
--- /dev/null
+++ b/app-emulation/libvirt/templates/libvirt.tmpl
@@ -0,0 +1,333 @@
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( {{python_compat}} )
+
+inherit bash-completion-r1 linux-info meson python-any-r1 readme.gentoo-r1 user
+
+SRC_URI="https://libvirt.org/sources/${P}.tar.xz"
+
+DESCRIPTION="C toolkit to manipulate virtual machines"
+HOMEPAGE="https://www.libvirt.org/"
+SRC_URI="{{artifacts[0].src_uri}}"
+
+SLOT="0/${PV}"
+LICENSE="LGPL-2.1"
+KEYWORDS="*"
+IUSE="
+ apparmor audit +caps +dbus dtrace firewalld fuse glusterfs iscsi
+ iscsi-direct +libvirtd lvm libssh lxc +macvtap nfs nls numa openvz
+ parted pcap policykit +qemu rbd sasl selinux +udev +vepa
+ virtualbox virt-network wireshark-plugins xen zfs
+"
+
+REQUIRED_USE="
+ firewalld? ( virt-network )
+ libvirtd? ( || ( lxc openvz qemu virtualbox xen ) )
+ lxc? ( caps libvirtd )
+ openvz? ( libvirtd )
+ policykit? ( dbus )
+ qemu? ( libvirtd )
+ vepa? ( macvtap )
+ virt-network? ( libvirtd )
+ virtualbox? ( libvirtd )
+ xen? ( libvirtd )"
+
+# gettext.sh command is used by the libvirt command wrappers, and it's
+# non-optional, so put it into RDEPEND.
+# We can use both libnl:1.1 and libnl:3, but if you have both installed, the
+# package will use 3 by default. Since we don't have slot pinning in an API,
+# we must go with the most recent
+MESON_DEPEND=">=dev-util/meson-0.54.0"
+RDEPEND="
+ app-misc/scrub
+ >=dev-libs/glib-2.48.0
+ dev-libs/libgcrypt:0
+ dev-libs/libnl:3
+ >=dev-libs/libxml2-2.7.6
+ >=net-analyzer/openbsd-netcat-1.105-r1
+ >=net-libs/gnutls-1.0.25:0=
+ net-libs/libssh2
+ net-libs/libtirpc
+ net-libs/rpcsvc-proto
+ >=net-misc/curl-7.18.0
+ sys-apps/dmidecode
+ >=sys-apps/util-linux-2.17
+ sys-devel/gettext
+ sys-libs/ncurses:0=
+ sys-libs/readline:=
+ apparmor? ( sys-libs/libapparmor )
+ audit? ( sys-process/audit )
+ caps? ( sys-libs/libcap-ng )
+ dbus? ( sys-apps/dbus )
+ dtrace? ( dev-util/systemtap )
+ firewalld? ( >=net-firewall/firewalld-0.6.3 )
+ fuse? ( sys-fs/fuse:0= )
+ glusterfs? ( >=sys-cluster/glusterfs-3.4.1 )
+ iscsi? ( sys-block/open-iscsi )
+ iscsi-direct? ( >=net-libs/libiscsi-1.18.0 )
+ libssh? ( net-libs/libssh )
+ lvm? ( >=sys-fs/lvm2-2.02.48-r2[-device-mapper-only(-)] )
+ nfs? ( net-fs/nfs-utils )
+ numa? (
+ >sys-process/numactl-2.0.2
+ sys-process/numad
+ )
+ parted? (
+ >=sys-block/parted-1.8[device-mapper]
+ sys-fs/lvm2[-device-mapper-only(-)]
+ )
+ pcap? ( >=net-libs/libpcap-1.0.0 )
+ policykit? ( >=sys-auth/polkit-0.9 )
+ qemu? (
+ >=app-emulation/qemu-1.5.0
+ dev-libs/yajl
+ )
+ rbd? ( sys-cluster/ceph )
+ sasl? ( dev-libs/cyrus-sasl )
+ selinux? ( >=sys-libs/libselinux-2.0.85 )
+ virt-network? (
+ net-dns/dnsmasq[script]
+ net-firewall/ebtables
+ >=net-firewall/iptables-1.4.10[ipv6]
+ net-misc/radvd
+ sys-apps/iproute2[-minimal]
+ )
+ virtualbox? ( || ( app-emulation/virtualbox >=app-emulation/virtualbox-bin-2.2.0 ) )
+ wireshark-plugins? ( net-analyzer/wireshark:= )
+ xen? (
+ >=app-emulation/xen-4.6.0
+ app-emulation/xen-tools:=
+ )
+ udev? (
+ virtual/udev
+ >=x11-libs/libpciaccess-0.10.9
+ )
+ zfs? ( sys-fs/zfs )"
+
+DEPEND="${RDEPEND}
+ ${PYTHON_DEPS}
+ app-text/xhtml1
+ dev-lang/perl
+ dev-libs/libxslt
+ dev-perl/XML-XPath
+ dev-python/docutils
+ virtual/pkgconfig"
+
+pkg_setup() {
+ if use qemu; then
+ enewgroup qemu 77
+ enewuser qemu 77 -1 -1 "qemu,kvm"
+ fi
+
+ use policykit && enewgroup libvirt
+
+ # Check kernel configuration:
+ CONFIG_CHECK=""
+ use fuse && CONFIG_CHECK+="
+ ~FUSE_FS"
+
+ use lvm && CONFIG_CHECK+="
+ ~BLK_DEV_DM
+ ~DM_MULTIPATH
+ ~DM_SNAPSHOT"
+
+ use lxc && CONFIG_CHECK+="
+ ~BLK_CGROUP
+ ~CGROUP_CPUACCT
+ ~CGROUP_DEVICE
+ ~CGROUP_FREEZER
+ ~CGROUP_NET_PRIO
+ ~CGROUP_PERF
+ ~CGROUPS
+ ~CGROUP_SCHED
+ ~CPUSETS
+ ~IPC_NS
+ ~MACVLAN
+ ~NAMESPACES
+ ~NET_CLS_CGROUP
+ ~NET_NS
+ ~PID_NS
+ ~POSIX_MQUEUE
+ ~SECURITYFS
+ ~USER_NS
+ ~UTS_NS
+ ~VETH
+ ~!GRKERNSEC_CHROOT_MOUNT
+ ~!GRKERNSEC_CHROOT_DOUBLE
+ ~!GRKERNSEC_CHROOT_PIVOT
+ ~!GRKERNSEC_CHROOT_CHMOD
+ ~!GRKERNSEC_CHROOT_CAPS"
+
+ kernel_is lt 4 7 && use lxc && CONFIG_CHECK+="
+ ~DEVPTS_MULTIPLE_INSTANCES"
+
+ use macvtap && CONFIG_CHECK+="
+ ~MACVTAP"
+
+ use virt-network && CONFIG_CHECK+="
+ ~BRIDGE_EBT_MARK_T
+ ~BRIDGE_NF_EBTABLES
+ ~NETFILTER_ADVANCED
+ ~NETFILTER_XT_CONNMARK
+ ~NETFILTER_XT_MARK
+ ~NETFILTER_XT_TARGET_CHECKSUM
+ ~IP_NF_FILTER
+ ~IP_NF_MANGLE
+ ~IP_NF_NAT
+ ~IP_NF_TARGET_MASQUERADE
+ ~IP6_NF_FILTER
+ ~IP6_NF_MANGLE
+ ~IP6_NF_NAT"
+ # Bandwidth Limiting Support
+ use virt-network && CONFIG_CHECK+="
+ ~BRIDGE_EBT_T_NAT
+ ~IP_NF_TARGET_REJECT
+ ~NET_ACT_POLICE
+ ~NET_CLS_FW
+ ~NET_CLS_U32
+ ~NET_SCH_HTB
+ ~NET_SCH_INGRESS
+ ~NET_SCH_SFQ"
+
+ # Handle specific kernel versions for different features
+ kernel_is lt 3 6 && CONFIG_CHECK+=" ~CGROUP_MEM_RES_CTLR"
+ if kernel_is ge 3 6; then
+ CONFIG_CHECK+=" ~MEMCG ~MEMCG_SWAP "
+ kernel_is lt 4 5 && CONFIG_CHECK+=" ~MEMCG_KMEM "
+ fi
+
+ ERROR_USER_NS="Optional depending on LXC configuration."
+
+ if [[ -n ${CONFIG_CHECK} ]]; then
+ linux-info_pkg_setup
+ fi
+}
+
+src_prepare() {
+ touch "${S}/.mailmap"
+
+ default
+
+ # Tweak the init script:
+ cp "${FILESDIR}/libvirtd.init-r19" "${S}/libvirtd.init" || die
+ sed -e "s/USE_FLAG_FIREWALLD/$(usex firewalld 'need firewalld' '')/" \
+ -i "${S}/libvirtd.init" || die "sed failed"
+
+ #Replacing recurrent patches with sed scripts
+ mv src/security/apparmor/usr.lib.libvirt.virt-aa-helper.in src/security/apparmor/usr.libexec.virt-aa-helper.in
+ for x in $(grep -rl usr.lib.libvirt.virt-aa-helper.in); do
+ sed -e "s/usr.lib.libvirt.virt-aa-helper.in/usr.libexec.virt-aa-helper.in/g" -i $x
+ done
+ sed -e "s#/sysconfig/libvirt-guests#/sysconfig/libvirt-guests.conf#g" \
+ -e "s#/lock/subsys/libvirt-guests#/lock/libvirt-guests#g" \
+ -i tools/libvirt-guests.sh.in
+}
+
+src_configure() {
+ local emesonargs=(
+ $(meson_feature apparmor)
+ $(meson_use apparmor apparmor_profiles)
+ $(meson_feature audit)
+ $(meson_feature caps capng)
+ $(meson_feature dbus)
+ $(meson_feature dtrace)
+ $(meson_feature firewalld)
+ $(meson_feature fuse)
+ $(meson_feature glusterfs)
+ $(meson_feature glusterfs storage_gluster)
+ $(meson_feature iscsi storage_iscsi)
+ $(meson_feature iscsi-direct storage_iscsi_direct)
+ $(meson_feature libvirtd driver_libvirtd)
+ $(meson_feature libssh)
+ $(meson_feature lvm storage_lvm)
+ $(meson_feature lvm storage_mpath)
+ $(meson_feature lxc driver_lxc)
+ $(meson_feature macvtap)
+ $(meson_feature nls)
+ $(meson_feature numa numactl)
+ $(meson_feature numa numad)
+ $(meson_feature openvz driver_openvz)
+ $(meson_feature parted storage_disk)
+ $(meson_feature pcap libpcap)
+ $(meson_feature policykit polkit)
+ $(meson_feature qemu driver_qemu)
+ $(meson_feature qemu yajl)
+ $(meson_feature rbd storage_rbd)
+ $(meson_feature sasl)
+ $(meson_feature selinux)
+ $(meson_feature udev)
+ $(meson_feature vepa virtualport)
+ $(meson_feature virt-network driver_network)
+ $(meson_feature virtualbox driver_vbox)
+ $(meson_feature wireshark-plugins wireshark_dissector)
+ $(meson_feature xen driver_libxl)
+ $(meson_feature zfs storage_zfs)
+
+ -Dhal=disabled
+ -Dnetcf=disabled
+ -Dsanlock=disabled
+
+ -Ddriver_esx=enabled
+ -Dqemu_group=$(usex caps qemu root)
+ -Dqemu_user=$(usex caps qemu root)
+ -Ddriver_remote=enabled
+ -Dstorage_fs=enabled
+ -Ddriver_vmware=enabled
+
+ --localstatedir=/var
+ -Drunstatedir=/run
+ )
+
+ meson_src_configure
+}
+
+src_test() {
+ # remove problematic tests, bug #591416
+ sed -i -e '/commandtest/d' tests/meson.build
+ meson_src_test
+}
+
+src_install() {
+ meson_src_install
+
+ # Remove bogus, empty directories. They are either not used, or
+ # libvirtd is able to create them on demand
+ rm -rf "${D}"/etc/sysconfig
+ rm -rf "${D}"/var
+ rm -rf "${D}"/run
+
+ use libvirtd || return 0
+ # From here, only libvirtd-related instructions, be warned!
+
+ newinitd "${S}/libvirtd.init" libvirtd
+ newinitd "${FILESDIR}/libvirt-guests.init-r4" libvirt-guests
+ newinitd "${FILESDIR}/virtlockd.init-r2" virtlockd
+ newinitd "${FILESDIR}/virtlogd.init-r2" virtlogd
+
+ newconfd "${FILESDIR}/libvirtd.confd-r5" libvirtd
+ newconfd "${FILESDIR}/libvirt-guests.confd" libvirt-guests
+
+ DOC_CONTENTS=$(<"${FILESDIR}/README.gentoo-r3")
+ DISABLE_AUTOFORMATTING=true
+ readme.gentoo_create_doc
+}
+
+pkg_preinst() {
+ # we only ever want to generate this once
+ if [[ -e "${ROOT}"/etc/libvirt/qemu/networks/default.xml ]]; then
+ rm -rf "${D}"/etc/libvirt/qemu/networks/default.xml
+ fi
+}
+
+pkg_postinst() {
+ if [[ -e "${ROOT}"/etc/libvirt/qemu/networks/default.xml ]]; then
+ touch "${ROOT}"/etc/libvirt/qemu/networks/default.xml
+ fi
+
+ use libvirtd || return 0
+ # From here, only libvirtd-related instructions, be warned!
+
+ readme.gentoo_print_elog
+}
diff --git a/app-emulation/podman/Manifest b/app-emulation/podman/Manifest
new file mode 100644
index 0000000..4cd89b7
--- /dev/null
+++ b/app-emulation/podman/Manifest
@@ -0,0 +1,3 @@
+DIST podman-4.0.2.tar.gz 11377152 BLAKE2B ab022c3e7ef40685301f08b2d939e936b07e08231d5b86a84fefa6ea7a60c8f20a5e15b79788d862c263336204a9cd8d7206748b4530f2f42ccdd31df370747f SHA512 f3c42b3b3c75ca451b4c22c2d6f9f1b9ab9437b118b16e19f17f92f28b5849f8e3de4ebc97d8d249f565a61ba187214928c25a031204163a59174e94ce300a59
+EBUILD podman-4.0.2.ebuild 798 BLAKE2B 672b4653bbb5fdd7b2fea96a3ce9077548022ce34faa5e712974ac6054bb4d5e66d0ac5ec3a022b9f849d71696f4b4073c7d9406f66cfc630d82e064b822fd1c SHA512 6dde73643ebbb28125853413fdf6bce9a31b3526d70ac0f90e40b40dbe99ba1d7e89ac2433c60619f08fc66a9de704abbbeadf6a397fd6438dc0bc530665a9ae
+MISC metadata.xml 549 BLAKE2B 3abe771305fac3d044ccc50d495dcbe54c1023870dd3047e83cf750a658303fda48d4944202785f37fa1b40cb568acdb92872b5f97358d2025ccb3a87c91df15 SHA512 be3fbad66b2d519eb71fb8d2902eed883a40f087d3d4b48d908ea250b55f59865d3f6f2554189f8d7372cd0b4310fdfa37f1202e7f2e781f70299fed0dad2c96
diff --git a/app-emulation/podman/metadata.xml b/app-emulation/podman/metadata.xml
new file mode 100644
index 0000000..6e7ba24
--- /dev/null
+++ b/app-emulation/podman/metadata.xml
@@ -0,0 +1,16 @@
+
+
+
+
+ runc is a CLI tool for spawning and running containers according
+ to the OCF (Open Container Format) specification.
+
+
+
+
+ docker/runc
+
+
diff --git a/app-emulation/podman/podman-4.0.2.ebuild b/app-emulation/podman/podman-4.0.2.ebuild
new file mode 100644
index 0000000..d001a58
--- /dev/null
+++ b/app-emulation/podman/podman-4.0.2.ebuild
@@ -0,0 +1,45 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+SRC_URI="https://github.com/containers/podman/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+KEYWORDS="amd64 ~arm ~ppc64"
+
+DESCRIPTION="A tool for managing OCI containers and pods"
+HOMEPAGE="https://podman.io"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+IUSE=""
+
+DEPEND="
+ ${COMMON_DEPEND}
+ >=dev-lang/go-1.12
+ dev-go/go-md2man
+"
+
+RDEPEND="
+ >=app-emulation/conmon-2.0.24
+ app-emulation/containerd
+"
+
+S=${WORKDIR}/${P}
+
+RESTRICT="test"
+
+src_prepare() {
+ default
+ # sed -i -e "s/git rev-parse.*\$/echo gentoo)/" -e "/COMMIT :=/d" -e "/COMMIT_NO :=/d" Makefile || die
+}
+
+src_compile() {
+ PREFIX="/usr" make
+}
+
+src_install() {
+ dobin bin/podman
+ dobin bin/podman-remote
+ dobin bin/rootlessport
+}
+
diff --git a/app-eselect/eselect-python/Manifest b/app-eselect/eselect-python/Manifest
new file mode 100644
index 0000000..6b37659
--- /dev/null
+++ b/app-eselect/eselect-python/Manifest
@@ -0,0 +1,8 @@
+DIST eselect-python-20160516.tar.bz2 46549 BLAKE2B f8703ed35d9607a940fca1bb1d9612de62a04dd1fb065fa31db7438ee08b766b5ef84a4ef10f3f58654acb7fda4bc5e32abceccd0ecec632b364e4a55834ba2d SHA512 0ac310e13bca9e3cdfdd55820cc2956cacf28ade99c1b5048edadd48c6a04c2ae1037207aaac74fcd75e809cf993f88b52e463979b68bd123fe925e491a7030a
+DIST eselect-python-20171204.tar.bz2 46655 BLAKE2B f0bc46c796a1b9e01f964994219b9c7831f99844a12e97429b40482e28a590a2d825f7b6fbca27b0ca1ce616e5cfb388272af686ea2de65fda69da0319fddeda SHA512 f89183ca992bc38f2308a3217602d5ce6ec4b3b5b614f2aec48fb5b3b7e50a2e44dd18af36a7cfbd4b45d05346f2be97605e35fd274558e9173c6974681c8fa9
+DIST eselect-python-20190417.tar.bz2 46698 BLAKE2B 6f0acad0abb21d8e4768cbeb12f7e871c316a940ebae4c02bdb1336095991cb6b6bf05661ab659115a67f29a09f2a9b57cfb0868019606ed550b5aa1863f6f71 SHA512 a461263a50a29f0493127ee4a027e49ca4d7631e9c8d16cffc8bdb98cc7e75b0796e45e70951d5559fb86f0db14141a3ea6a53bd4cf1e0cc83ed5c7f24173695
+EBUILD eselect-python-20160516.ebuild 1094 BLAKE2B ce9346d2a7d39a58c7636e9dcb7d9cf8be27222cba67a77107e97c2eeada29633e7c27f372c49344057a6a9f2a8b7f753ce0bfafbc3ee62c71c424b836132cd5 SHA512 cabd0db4ed3ab52f6c2e252876ad7ee0348b6785ab511e02034cdcae620e4d3be50e83c81c12a616ac609406f882fe30eb5cf5c04bb120984513a9d5698d35c3
+EBUILD eselect-python-20171204.ebuild 1102 BLAKE2B c72d96c5109db826a4de17c7a7713aadae06691e32a2662da697d1952b0480c653baea111a0036a38a1434278039420c313122954470f2a38fccfcb9ab196bbb SHA512 0b62697cf16cc33abe2f7a0273d1b68f930bacf5250af8766b578a44332e70011a34e9a9acc50afec980ff5d5c2e825f8dc5224f000360c610fdba0ecefebe67
+EBUILD eselect-python-20190417.ebuild 1119 BLAKE2B 1af635b1ede5854236eaa143dc31074c0156647fa07b8f8353bb49c268b25af32dcc20c73c9892c663e2c6dbf2c34a74191c882e92a29e071693cd0474445b96 SHA512 c01033f81e5237f063ba02f46566b02df89579d36f492f29f5bb71492e175b4b63635a057f0bd28b9de9d96133aa3c423e70b696cef64448bd1ce4c502c6c654
+EBUILD eselect-python-99999999.ebuild 1120 BLAKE2B 890794aa04c5f76f3719360d417f488d41feb763db26ba25f3b9001fcd8eea0e324ae263cbedd00ce2b10acd68a6eec21c310a53b5aaa600315103347cfabe80 SHA512 28ffbd03c8e71e06c88a6120997d154b109b39e8e7e1a3a95fdd16db05d06b96019375fd0807554053f9b1b6548f34bd4b07f42cab620180ecd1bfce2dc80623
+MISC metadata.xml 240 BLAKE2B 41e6a4d9da33dab2decc5ff419924f382a8f64d27a81fdb97576db8c6cf125be95911747946ec8be1b453f56617fef1084f5947f84b50a8db419d46df2ae8a0f SHA512 9c23321eaa853f851bf00195ea64ac2ba093e516f9b57855ee5aa58fbb1988130c9f0c17c2a9ce9fae4ee033e0a28a70c868e0f5acdfa1dd316ab533c5279d59
diff --git a/app-eselect/eselect-python/eselect-python-20160516.ebuild b/app-eselect/eselect-python/eselect-python-20160516.ebuild
new file mode 100644
index 0000000..f52c5f8
--- /dev/null
+++ b/app-eselect/eselect-python/eselect-python-20160516.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+if [[ ${PV} == "99999999" ]] ; then
+ inherit autotools git-r3
+ EGIT_REPO_URI="git://anongit.gentoo.org/proj/${PN}.git"
+else
+ SRC_URI="https://dev.gentoo.org/~floppym/dist/${P}.tar.bz2"
+ KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~ppc-aix ~x64-cygwin ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+fi
+
+DESCRIPTION="Eselect module for management of multiple Python versions"
+HOMEPAGE="https://wiki.gentoo.org/wiki/Project:Python"
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE=""
+
+# python-exec-2.4.2 for working -l option
+RDEPEND=">=app-admin/eselect-1.2.3
+ >=dev-lang/python-exec-2.4.2"
+
+src_prepare() {
+ [[ ${PV} == "99999999" ]] && eautoreconf
+}
+
+pkg_postinst() {
+ local py
+
+ if has_version 'dev-lang/python'; then
+ eselect python update --if-unset
+ fi
+
+ if has_version "=dev-lang/python-3*"; then
+ eselect python update "--python3" --if-unset
+ fi
+}
diff --git a/app-eselect/eselect-python/eselect-python-20171204.ebuild b/app-eselect/eselect-python/eselect-python-20171204.ebuild
new file mode 100644
index 0000000..724f099
--- /dev/null
+++ b/app-eselect/eselect-python/eselect-python-20171204.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+if [[ ${PV} == "99999999" ]] ; then
+ inherit autotools git-r3
+ EGIT_REPO_URI="git://anongit.gentoo.org/proj/${PN}.git"
+else
+ SRC_URI="https://dev.gentoo.org/~mgorny/dist/${P}.tar.bz2"
+ KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~ppc-aix ~x64-cygwin ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+fi
+
+DESCRIPTION="Eselect module for management of multiple Python versions"
+HOMEPAGE="https://wiki.gentoo.org/wiki/Project:Python"
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE=""
+
+# python-exec-2.4.2 for working -l option
+RDEPEND=">=app-admin/eselect-1.2.3
+ >=dev-lang/python-exec-2.4.2"
+
+src_prepare() {
+ default
+ [[ ${PV} == "99999999" ]] && eautoreconf
+}
+
+pkg_postinst() {
+ local py
+
+ if has_version 'dev-lang/python'; then
+ eselect python update --if-unset
+ fi
+
+ if has_version "=dev-lang/python-3*"; then
+ eselect python update "--python3" --if-unset
+ fi
+}
diff --git a/app-eselect/eselect-python/eselect-python-20190417.ebuild b/app-eselect/eselect-python/eselect-python-20190417.ebuild
new file mode 100644
index 0000000..ee2a8f3
--- /dev/null
+++ b/app-eselect/eselect-python/eselect-python-20190417.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+if [[ ${PV} == "99999999" ]] ; then
+ inherit autotools git-r3
+ EGIT_REPO_URI="git://anongit.gentoo.org/proj/${PN}.git"
+else
+ SRC_URI="https://dev.gentoo.org/~mgorny/dist/${P}.tar.bz2"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sh ~sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+fi
+
+DESCRIPTION="Eselect module for management of multiple Python versions"
+HOMEPAGE="https://wiki.gentoo.org/wiki/Project:Python"
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE=""
+
+# python-exec-2.4.2 for working -l option
+RDEPEND=">=app-admin/eselect-1.2.3
+ >=dev-lang/python-exec-2.4.2"
+
+src_prepare() {
+ default
+ [[ ${PV} == "99999999" ]] && eautoreconf
+}
+
+pkg_postinst() {
+ local py
+
+ if has_version 'dev-lang/python'; then
+ eselect python update --if-unset
+ fi
+
+ if has_version "=dev-lang/python-3*"; then
+ eselect python update "--python3" --if-unset
+ fi
+}
diff --git a/app-eselect/eselect-python/eselect-python-99999999.ebuild b/app-eselect/eselect-python/eselect-python-99999999.ebuild
new file mode 100644
index 0000000..4b486c2
--- /dev/null
+++ b/app-eselect/eselect-python/eselect-python-99999999.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+if [[ ${PV} == "99999999" ]] ; then
+ inherit autotools git-r3
+ EGIT_REPO_URI="git://anongit.gentoo.org/proj/${PN}.git"
+else
+ SRC_URI="https://dev.gentoo.org/~floppym/dist/${P}.tar.bz2"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sh ~sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+fi
+
+DESCRIPTION="Eselect module for management of multiple Python versions"
+HOMEPAGE="https://wiki.gentoo.org/wiki/Project:Python"
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE=""
+
+# python-exec-2.4.2 for working -l option
+RDEPEND=">=app-admin/eselect-1.2.3
+ >=dev-lang/python-exec-2.4.2"
+
+src_prepare() {
+ default
+ [[ ${PV} == "99999999" ]] && eautoreconf
+}
+
+pkg_postinst() {
+ local py
+
+ if has_version 'dev-lang/python'; then
+ eselect python update --if-unset
+ fi
+
+ if has_version "=dev-lang/python-3*"; then
+ eselect python update "--python3" --if-unset
+ fi
+}
diff --git a/app-eselect/eselect-python/metadata.xml b/app-eselect/eselect-python/metadata.xml
new file mode 100644
index 0000000..7f4f33c
--- /dev/null
+++ b/app-eselect/eselect-python/metadata.xml
@@ -0,0 +1,8 @@
+
+
+
+
+ python@gentoo.org
+ Python
+
+
diff --git a/app-office/libreoffice-l10n/Manifest b/app-office/libreoffice-l10n/Manifest
new file mode 100644
index 0000000..638b871
--- /dev/null
+++ b/app-office/libreoffice-l10n/Manifest
@@ -0,0 +1,366 @@
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_helppack_am.tar.gz 2661824 BLAKE2B 719782499f190fb1867e732b7b56241be9f86b8557810dee8ed378dc20da23d517e4e969b80ba6aa622ad0f06e63e6a7052f8d7e61f93190a9a57c58b2d0e6f8 SHA512 dfe8dc4fafbe7303375702a0d6f0a2bef8bbd90bcd075ca59d7871d5631318b6603ca3c9b08d4cb77da89fb09749f56c42cc6b7f7aff8950d5bfdc34cbf7090c
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_helppack_ar.tar.gz 2358338 BLAKE2B 4fbb538301dd883e806b745c33891214e9c06ae5b9f866a675212a446986f6802e2a59395d15a466660263ef260fd0ba9d06de69d9a078a496aa6bf1ab4303b9 SHA512 f1ae783037556ea19c4269851dba1eff46a0370da851d8f6a02ec29461f58b0b8d6b9353c30003581b7779d03c996c66c1da1ca60f50622a02503f3bffd616e9
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_helppack_ast.tar.gz 2538258 BLAKE2B 3777d9894c33710058e2ba3e6fc657bd02ea10d8713181db3fa637f8f858c7bab028b68ec5264c0fb36290469b628089800b170a137d26c3ca7b50975fd9593b SHA512 002d8ee38dd6ea77c7f080cea1d0f70e62873aced18c40db1ae812a7cf06eb52a59c94f3391527fe9e516faf539a46f5eb96459104771765109cbbcb7c621cc9
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_helppack_bg.tar.gz 2732152 BLAKE2B d969d1994ea29109816ab5b68fbd8b2b11e651f7e56f705cc15d5a241fa63224322206571809edc0d13b0707f1be2b940060d12d3ccaf467332eecdb9bcf58d2 SHA512 140c7d17ed070a200347ff6a1e60dd13942cf4b721cda55b21105a819dc61ec4f50418d7d075fe8d2c37107e0daea876cbf45f82e530317dbaf95da612cd9651
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_helppack_bn-IN.tar.gz 2725159 BLAKE2B f29f1bc5b4d387f3893f3b96ffbb63467c1dd8db1e0c1725894855670a8603dda243efcf476a4b23d9d8fcaea17c8c2e98bf1b65d4973112ba7250ecd5a03071 SHA512 1ad8b96cdaecd0cfb7461974cd0e7655c57f86963797376b440cb9bf5e7d92aa0245da9ec56c347bf9fffbbb3211a41ace98e3c8789ddad0d4c8304499163a39
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_helppack_bn.tar.gz 2707111 BLAKE2B 92aeb0dc1d0b537541de1aa907907ce580f264a8032a8c74dfd0d8f64fa0e44f3b01586da82395089fa3acbe41fcff133631c362d30fa97f59c09f183582f082 SHA512 71b9c7f8362b9d37fccc3df84c2ce1629722c4f265d9dd7bc445ffe7ae370c3d3ccee42a45ad4e325534ef67afa383af4642f890f89f42c3fe99b333e4aa8e06
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_helppack_bo.tar.gz 2727812 BLAKE2B fc04d9979f9d5117e228dd216e4e20b833f31a5f025ef1d3a2c720bdd8f4b568f283f35e71d2e4bb6db64d0b9979acf4a0a2c3839a8ae828bd229a63c93f3497 SHA512 d2d6f0ae9a68d0a70317ed791499aaf95c25fe895ac66a8c3f9f2b9de8cc8a6990e2103450a9eadb7b77b7597d291d928b2ff1f044f644af7bcd0d953a3787f0
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_helppack_bs.tar.gz 2446777 BLAKE2B 574dfce5547559dfa9e7f748534d672aa3a6029b6689f932d3a511441f13507258be6294094d6c033980e29b7aa93e4d2a8bb3fdd32408c721703e6f388cc3b8 SHA512 fa78d0f87c1b637698c5aa5a322fbb0fba0a3e00adcd300a980ef2a495836a22e4a8421609f3c2d4c79a33c481fbe0516e5822232cac919a87e67737c12531e3
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_helppack_ca-valencia.tar.gz 2529670 BLAKE2B 51a2b05716cb61e80867f111040bcb11bffb6539c264d94088c948a64d8cc139919511d55bd0a3775ae4489a199f68e47a96503abaa55365d97d1483fad28da9 SHA512 55ab9060f1dbeceed43b5fc78e9b3f561700b62e1f2d76b57ad558247ecaec44be4b334dfc91064d4871a869c75cf07343475c20eb4956a3c339017e197d04b3
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_helppack_ca.tar.gz 2521065 BLAKE2B 3bc121d41b4a1d4734b75ff4c77924240ec3d3c000eb73151f0d697ec1e518d84cb93a3b62fd4e4817e3c17511d3b64b4dcc07c1fc8e0b72055836cc2a10ee0f SHA512 01457d65d6d289bbb783d97e3c0bc33e4b749d8c616f1eb39e0814a360e176567dcf45d4e3b2157e7d6099174c0f6c908de322d9e8bc0e0b7a741fb3919dfda9
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_helppack_cs.tar.gz 2524081 BLAKE2B c3009dd657fda0a6ac784bc695233b662e13d2ada25b94df5da795717653a4106e465915a4714e2746552782abb1051e70cc9d03226c2fdb100b9998bd175b51 SHA512 c3666b5b748309c1022b719ab21de7d2700ac22172ff6216b37972ccccf269d1ae8752d58179f4e7ea2a1fb11ae7d64c0d4f4b3f4d768ad8b259ceebc332cecf
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_helppack_da.tar.gz 2493335 BLAKE2B d63a80f530be14b4ee89cc7dfc64118de681cc1f03214af598985bed06a5fe505828dbb6af7755eb7c79fd16d48ebb66c24d83d01cf55bbb20b8da2e266b1222 SHA512 63ef221ac78f5558c56ee793c61ae5ef832a403c6a6a5d0cd5f2fd77b2569d8ff4840a7c40f7146d60a5cebee1cdef22e19ab26cb1cf2ad4d0d6fd2681933dff
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_helppack_de.tar.gz 2584685 BLAKE2B 9c08ee7990d71e0bd84ca432acb4603ff64c03789c90a93908e8a99a52ddfabe9809bf29abe17bf1e02e7d87bd1789dc9030191b9a4dbb734d6bd43da6f39425 SHA512 c3feeef1460852b401b4918423e252cab307b55556a606a95a5b697ea7e934a2883170d413b1568d33b20ab2d74d2c0fc71d33f97c2193a239236eb978335dff
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_helppack_dz.tar.gz 2876742 BLAKE2B c97569c226261194e6b1ebb1cc95655d1e0f40eeddf274028ff5228502f006875f0a1b3c0e24c0728be3be89aae5d493a7ce6ee6fc45a882c2eaeb1900703b81 SHA512 831bccc1669c1b15827083bf40697fbb3e8d40c7b1945de4d36d4329121aee1c86b29997b498a5b0a2f1814966bd0816f5701c63a60fe77565dec8c27b561c41
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_helppack_el.tar.gz 2938050 BLAKE2B 5722b57717240086c68fdd6ba2fbc9deed3e81dd05e8e0d040b3811ad4933d6d1e79d4d4bf3361cf6e85de6ad3149b2ef93d31a06eeede4a53c9aab13607fd14 SHA512 96c7695b0e651e3d1acfb680670e7934e5f41ae6f07569c22c7e0b5bac425c2ddac898c11b47eb0e595191f50a7197ca76053e246a907d3b65739aa12069d45a
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_helppack_en-GB.tar.gz 2354973 BLAKE2B e7b92e9dc052f33765c1cd9208d32f6142c5ba8149c937299c4167ae004b4ffb324d8db6b5ba0f4845cfa7d712ad336a048fa547139ac807a2aaa0e7bb93f00c SHA512 2b90cf45e63db25f99291e57bcc6b16c9472db966a9126d6bdd9374530d15bab125b58104a38228fe68010a70fb99d955255920dce7f20656a69db14ef4744bf
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_helppack_en-US.tar.gz 2178389 BLAKE2B 0e50c01892b96d0c2763f398a6469ad9e5a244ab45790403c35894f6ff94e72d3f51f8a3140f1b58f81a5784964bed3b52d47cd0b668cc4bb9310dba5952b521 SHA512 081f920d091dff5e73e61233d7b0bba31b9eb10d9f876872d7d78b6182679a8c81e3b0c69fc374c88124a388425a2b03800a53b24ccb0b1289a5c1a5b5836346
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_helppack_en-ZA.tar.gz 2351464 BLAKE2B 253c426a87918e51e08c05d0cc7bce26c6599539cebcd27240736a145cafbbe8871bdc8f5bcf07e0a5a33fa119bad07a69bd73973fb6dcea426cdad68267501b SHA512 63a7d50a18651b26ea957ff8b2aea0de4c8e30c814687378be58c2f5f3171e3f3ce3c141aaaa8db9b1b632baccbc4ad754b9cc4744e767d5cf88a16503254373
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_helppack_eo.tar.gz 2432791 BLAKE2B 3d8a037e5480e71abfc47ad50685e334fa084b1a682e42ede1ec04b20adce55b72122a526f8a7c222c268b0c94d5c17324820c4d305978f518651c144e96d8be SHA512 137f56da61b6f6cdc207807e053c72c3783bf85aeaa9d2f8b3307485d44b6cc8cb089ee3cef36c6457a770ede7cb4ab2756d7b908a9b32f16890f9d60c0ae8d3
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_helppack_es.tar.gz 2563566 BLAKE2B fb5284e6b641f9838e32636336194b96b6dffb8fb0481acb46393739afa1cce264a05a305a34172df8b8710c78dd33ee98472620e82c7aa99a646cbbee06fbdf SHA512 d612def706e0af73c920a94aabe66accd9cc0a1f262ee51153db4b9cfcb4ffa861cddb8e3d4ef2a18636662abe8a37f36317e81cab2260052ec09f12257b5b5d
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_helppack_et.tar.gz 2479368 BLAKE2B 62fa9030757a4507e69dd303d427dc809af245b7dd0260fc709b0b11fd83c0a9070cbdbb4da283e029efa3a03405c235b998b979cb14c02861af4f0cccd33211 SHA512 20b9460fe000413849f1b6d78c8ee1b136075b63f359335596fcefff0c85aba94d9307e696c9bdedbd3f7ff45f6ff8ec5df5436f4a528cc1a443bbe9e0fc6cba
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_helppack_eu.tar.gz 2450475 BLAKE2B 413ca7e5ac559e21ac148baa83d9391b8f7e4a8068b02626e2ac999202bf8fcd380a72e2b1889694b8c5ade7c3b44e8cb190b9d7dad60ef61bf9495cf83cd8c5 SHA512 5aa9c4b347089546ac85ac925e80d6121267f4cbb22241ebc00db88f4c476a0dbf856590d40960aecfd80e6e307796341b3a6ee58037810672a8eb0188c3ee57
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_helppack_fi.tar.gz 2526395 BLAKE2B b597ade2d56853484627bdb1280041ff63b82974c7bbca0e61a952a0be379ee4839fde283eae54022184a6b9299bf758467dddd561ab513cdea109f0f9e0ecbf SHA512 3dd82c6f8bb8ff8d952e645f1fb9ce4aad0df21bf8604439c00bfa94a3ab0786eeb871f5daa58bd78d2f0793eafde409ed9d733e44a114dcf51f72fda92c1a0a
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_helppack_fr.tar.gz 2549365 BLAKE2B 58b053290f386f07ea6b9f7b90b564655be11da604d28f8f26c1c17f6005641e94ddf9fb098cb44d80e1dfba42a552b2bfb3006ea71b8e5a69252f8c1ba2f4e4 SHA512 a8e0efa3642f27d3a5986e1c08acfde1b8a4ab577332ee08b842fea2466afd9472e52dd2720771ec5c4a7961d1db1e2e3bfe9ed862104af18cdc6930ae27a693
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_helppack_gl.tar.gz 2513582 BLAKE2B 1da33ab204d8bc0317613c41a26a46e4ce65d7a082f5006e05bdc7940dfded1c024960eba2303de082e99598863dd28ac517f62bcf2a197e4cbfff134ec7fab2 SHA512 f7d4de2ab76f3d21f2ab034b76b462e67ffb971da9ffcb640f50da49c04b96da4a27a0e59fdafe0185f1f98f8cdadba460912a70fd8308384168d48b133e69ea
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_helppack_gu.tar.gz 2399044 BLAKE2B 0887912551b992154e140f4cf86e9ba378794c42e2e577fa74f2e7d0f0d42baefa6ae4cb0e4d50ab1d17dfc1fe1e808a1e62029a222bf53440826ccba8ba1bbf SHA512 f8ddfcd1b29ad01a70e1cbe845e73a242d7a47ae6733094d398e1c915856ad900b98852ab3450b69d575f3589c6ab81b6d4ca26b305c72bb9ae48d8991d58acb
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_helppack_he.tar.gz 2297065 BLAKE2B 53f7ced9c8bc6dab6f7d78cce53378511b99e544512044e7db00c3913ad8b9c58dcd67a7a28d825f7abad12310f922188e847523a70ef73c8ad63adcfd416d72 SHA512 0de09f19f8b131aa594853df28b9b05540d837f4b211434170342532ff1081ebeac9c95c8a85dac4e4400c33241217339c02def9a23203fe6eff025831696645
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_helppack_hi.tar.gz 2503141 BLAKE2B 24569cff6e4e8cc9fd54e7e5aaea815f92e0457eff3e39968d9912f948a856e560a529772b29f5407ed0939d908822eb3a342ffdfa0c5d21644045db5dd2f7d0 SHA512 7c888c3503a08bcf9011f0bf89c1e8511ea3c1637819f7e5ad9161bf2e6cbc58c224c5c736ffc20a0e2994cfe41b6f1e440ab8febbe19af69979a3fd83e19770
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_helppack_hr.tar.gz 2411724 BLAKE2B 3a1b325cb398f8f576d823a5b5c53595e7dc50c67e0bd61600d98d7544359d4f041f0ecc6557e5627a9b553362bd2d49404b797e88f1f2e19d787d8a4fc1a0d3 SHA512 54836921cbf37d7f961fc432a6d03254bb18c5d26677430131e5f535ff9461094d8417753659dd9a6b00e8ef8ed7150c6d10853205731dcff2aa16e1285b40fc
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_helppack_hu.tar.gz 2640610 BLAKE2B ca2cb731a2de28db6fc1ae23224ca998fcbfd90543be7eeb1948bfbbdfd83504fa71297e4d775131516b829d657916d024e0488c7b7feb96bf1ee2e81b144220 SHA512 c7f39b95d8ebc20bfb54ecd390cafb0090a7aa5847407db8910403a2e7ca5d03c231b804a9434353725726cfaeef4e8ae6d66afc5c2a6345363415289ae8d677
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_helppack_id.tar.gz 2428858 BLAKE2B a34f92e87e5270e4c6971734b85fbfb46d39ed83edefc2968112d1d405db76fec66be8f0f0ce0b938b2026f1887f9b35ea96d5411f3cf96a233101f66b525ec8 SHA512 e24a3c50ab978fd2778a8e5317d3f2d0b5815b20ebae7ed3a015c337737dd0487ecc396a513b68f301abc1b056861e6293c219963b5830a7d94f68649792b108
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_helppack_is.tar.gz 2430230 BLAKE2B b32683450ae8728d224881ed98bd19057b3eb8c6b47c77875c990fb78f079a4b28b93a0ec58a77abcfb652bfba33bce8676b8e038b05fa75607270b5f66e2321 SHA512 51a9eee25ac4c03c5dc708fef08a18a25e703e22be7ff33b8376e6a30fe047dca341170c7290d44f377ffe83621cc9865d24e11ed7167b0278a324e26caad944
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_helppack_it.tar.gz 2520082 BLAKE2B 7655674856863cec86258b0b7fceec7890967d88e6d11d2e44f9a7b10623ab6fdae8e19b7e0282718c96a1c233e8b6420fdd49c36488286b20323330b1eced21 SHA512 ed9db4f075adc771b1193ab9efa2e85a9f52c0d6f641fcedb2517d11644ce0bd4e87906bbfc7afd12bae4b2c99cef16f7b53c2d10eefe280f50a77da767c5daf
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_helppack_ja.tar.gz 2680359 BLAKE2B 9b6f38f30f9ebad1da183fda56022d2ec1da0bf1ed65002c0ca5afb1438e25354f22fc0ffe106f0187718a080d9969994511f37fcbf5682aa1027270bd04e707 SHA512 72f715814f367be2a51f8bf72e8f3d6b405cbccf451eae8178fc183797e7f9265bf965c6138fe5274d4093c676997c50011a6596d6afe7b9e9b4a0e3b3d5e533
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_helppack_ka.tar.gz 2534064 BLAKE2B cc16a72ff6ccbc313a0a531034779115fcf46c2439be390ad561189ccd24c950b015b947268e66e92c7a079ae6da734d844a085e82fcfe281fc9a4e9d5158d6a SHA512 20132e701203309caad25851c03a2f22d2ecd661c1107b0dd354385ff9fc1c7bfc5f4d21e56ace857232f63fb405d29ae7a7728f5a4508159359cb5ed73edf89
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_helppack_km.tar.gz 2825368 BLAKE2B 6a1e553f805971f76bc170c03610d698f15d6f056af1842b53b95f1a9c208f1c08e8d40fa8c0f3733f3ff9aea4d0906aa0fa8bbb2f83fc145ea6c552ac17b077 SHA512 cf6b980edce27644cca696de0c17ea8840654fc0eb2fad6399e28e59f10bc0a05c0c949e83fe20f39fc31e1b60d68646ccdf19e63bbe22ece340e205130fa2e3
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_helppack_ko.tar.gz 2560776 BLAKE2B 6737c21bb1a9a00c664a7331e2948ad6174b5487c95621a43e11171828de9372a2e9a22bb3d17f90de9be72990fe476ef648694cdd8cfc0302a63fa96e586e33 SHA512 b1b6a2db2f6ce5b83dc56ce857d2bf67650b1696761bd515dd8899baf18496221522bf4188eecb7ca286826c1fbd86c8ee30f51e9b8577661447877884f8cc47
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_helppack_lo.tar.gz 2359493 BLAKE2B b2e1494990c58790384b841a01640f65bdf4f6690798f8e45a60e7e7766b6c4e4fe9e534e7ba9710ee1c5751be186382597194427a6f22937336b259f1146bdb SHA512 3608cff0afca13c362cd7bffa0a314509f96c6bc2e7de0c7bebc2b4d3628876eb51b2d3d5b5ec581e9c24baf90a9659f26e1dfccc617a831f636b43e1ca07a0c
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_helppack_lt.tar.gz 2500433 BLAKE2B aabb990cc50e83e904a749670de982b72634c146f76faabe49ecd322afc09ace218568796e6054ace8fae3099585dc37c0e74f0eef239da5b1899a8f56115af8 SHA512 2932ecc6e3bafa1148c41f4ff162a1b7d1acce2a760d292e7a090bc3fadffb034cd52f510287e2b463c68330cfdd5ad1bdbad3d39de023aaa6cf27d730b8960f
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_helppack_lv.tar.gz 2438601 BLAKE2B 04f276ed83f337076e16d16214ca4a36f55a386e8cfd6742b6cf7075a1d3df976c28d7d5130cd9f0768492c81c6f5a39af3f8ef1bb082f5ba3d0e6d5ad623069 SHA512 4b3438b6dd7336b423b8d6bab71e3fc2345967a78a05cff08059fadc4c6cf09ebfe4d09015635c27c10f7061f1a43f8a6831e3179af2ab8205a2ba967c0a5d8e
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_helppack_mk.tar.gz 2521172 BLAKE2B 180a2f86046ab01533bfe4d5d3b21de45ee7f1c03cef360fe1f55ab9722b452e6ce5e72f62fadf265026d8e6fee2175c110014987224e6614900547e7ea3bd71 SHA512 9124a6f58e9208e5a88e9d8d6863323be3c4fc397ca501481c066f30636e3af37a246108ac5eac2843f6c92c8778b6e9570aca9c165f6e62a32b13db7ad2bbac
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_helppack_nb.tar.gz 2464693 BLAKE2B 1c2bfd4cc651342cd8dbcc77e57c4ec701aae44fd6e3da5c3b15ef320c76f2751860752167224342127a17865805f738705d58343cb46f0ae9399a9c287f9584 SHA512 9d8904451d6c651de12f93ba135e8db9bdf7bbafaab8fe2275a43c6b7a3c454dc6c6fa645795aa732fe895d300bf261d83219564c51375558509c9805f53421d
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_helppack_ne.tar.gz 2749181 BLAKE2B f866a4ce6ab9e29d16c1071cfd8d92b6dc69805525784dc69b1fa7ddc8f77cef5862cdd3e28def79a4f2fdb938328157b011512dcfa52abb329fa779641c1d3e SHA512 8640ddd99664b4f5e89e484aff2f2af03bf50210d8817177da47c096b6f507a140ec13025c7f2b126423c8bc00112e20d32e9ff1ede3ea173dc64c8f077b2ffb
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_helppack_nl.tar.gz 2516480 BLAKE2B 0674818fa5a8fe98267dc1e4b9c53cebd8e92ee3671a3108240989980a7153a396f342deace5a6d1539f4bcdf3b29b8fede3866cbe3d1121c4791517cdde7f86 SHA512 e2acafd83ee17cefe63deb4978bdb7dcc6bf618b80481998e06bd906b2893ed0d633acf834f8d568278f952e9e11730a2e9f908aff977859ab0973a50c66c1d4
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_helppack_nn.tar.gz 2464166 BLAKE2B fda0e72ae3555b7b753e02a8c729c28796a278e7b4f4ab5a49f3f38dac06867053dfe814888507cc0a55719e4f901766d133ba6e3eed5a70fedaf8fce3945a39 SHA512 1b8f3ac27aefc4ceabc2301d447dbb5273d2a448b30f52e78ea808cf45a25f3b2c78bdd68ebfd84ba8f44213e4d82334edeb3d088609c0987df19a98ca55a90b
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_helppack_om.tar.gz 2540729 BLAKE2B be80b83c87257b0aff4e06718e94bd658c9ebec29ee968a4028d21531e72b21cd0390ab9cd29614bc063b74d8fffa37dba866afec2b1b503f31468517fb88bd3 SHA512 f71a03281b1cde435985c27b1343745506f69804b680b8a5d9802b01974ef9aec90198233a28751c1db231124919820667c182fbd5195148e73b233893dd1fb1
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_helppack_pl.tar.gz 2613876 BLAKE2B 5654e8a9c87356e1646a6a3f5009fe1f61238a31bde0da60b9a7ddaf69b025c3503325494b7de6ceb0b28dd6cdc8ff72ca65fd6fafb74803aca4d9c22092f701 SHA512 7c818e42168f788f90e30d6a5a78caf7e1e2ae01523471d86e8f709832f96fd38410fc34ebcadc4817a4b56fe3b440d3ed0d439ea3ebb02a5c1e0fa0784c3070
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_helppack_pt-BR.tar.gz 2527714 BLAKE2B ddc8d7958fad06700d1dc831e8bbded840ef9ea46b8bb756e1fb825b02062329d24aad77d176817f9d963aba1c25d2943e9ff38bed20623733263faba75d7752 SHA512 df38ab9526b6448a1fffb3306f3d08f227d8ba7c2882b935d8b3d7e220c09b3237bb249bfacdf6ce27dab55734e4a1130f9df64a4822ceaec5a55a8178e32f48
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_helppack_pt.tar.gz 2496233 BLAKE2B 350bb244683b60e6f6d50ed88c0e345aa5da55a56d5cd01bb8e2269dcc5b06ce17d1001287cd0f584a2cca24f143291e1ee570974047113c69d4e122c1eeb6ea SHA512 effc40303fe6875ccf48cbaf7b41900fb11e15f98abe1ec7bc71ac2b62fc82e6a95318b377c8e2fa3d47081c24bf8a6e7e3e7265fe058a86f4244691426336ba
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_helppack_ro.tar.gz 2356132 BLAKE2B bd72496a5f17550cc39495471b5bbf625be0b4744bd9e2f318043e26c510202de11082381f70ce128db82e5c8eb622713ffafaeb99869e08fe8cbd5d2f15b1ee SHA512 070bb50ee9e89c8fec462b3d660ba073eff4b7c44e5b2a4cb5b48face57c7f30ad5726d9a6a18b32067cd257c4d12ac2eb128b7e326a4bc1d28ac94b66f8dfc3
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_helppack_ru.tar.gz 2788722 BLAKE2B acb8e848dc6654e5e6366a59e2849c1f052df38da22b7537604e32e1965ccc7e6149fa41196cd7a3a2c56edb83628dc6c1914e11e2f4c9235e89f7fcb70fd836 SHA512 4ba7f4ee2e9816fe3cf21052009824d0f9acb578ebddeeaacbe4bec5fb6ec8891957dccf16a1d693c877ef238fc4932cf959bf07a7faa7d4311ebda7f78bc22e
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_helppack_si.tar.gz 2483755 BLAKE2B cd299bfefd78dd52a3670888a36eec8e1090ced01f5804795424a73f0c99351c6ceced027cf529d0137dfaea00fe73455f9687fcc8a67434c67e1f8adc577835 SHA512 11c5daae3446b1b522c1d377fe298e0207574c26eb5fa2021fa7948b8f7a60a2303a5f69248076fc3a94cec799739a53fa2ada3f9b1681fe4a3d6127cdf2d79d
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_helppack_sid.tar.gz 2512101 BLAKE2B eb90316564a72d0d5fabdc069797f09e5ac5ea657223d336358c9d84215fcb09a4942fe840a855978cacc739704c5042a8307e033ccc2d815975a8d099958b88 SHA512 d3198fa083d553075b8bd288f8a811500a1b28d6a8e205a54eb1ee7ca1e6e5dd109b7248ed6574b21f50ad1430088b411e1c4932944e70bb0278398eab83e724
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_helppack_sk.tar.gz 2545660 BLAKE2B 172c326a1fcca6dde2962ab2b1cc8a130a3608819666ee6dc4b0f2c47a055e7122eb52452a63e0f57a549265a1d3f2b129cd5a4885cbc927626a5e6d6e03ab8c SHA512 423e41213a303005d552fe83372d1ddbbf0db15cd3c68890f4eaad742e0db64d3602ad6393984759237c8e1181d3f8f84300c769d71b1f25d26632ffba32c4cd
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_helppack_sl.tar.gz 2495847 BLAKE2B b0e05a07f8929c12e07742e6905f09bb06924a1402ab3fc76290260dc971f08f18522558357ebe53b3a1a8f85a2f235af727d18d631bc9df53f3b33094dd5aba SHA512 9e1fcbfc4faaf1958840637b462a4216281b23f0971534f1229fe84310bec2b9940d9f1142c854e96410e4ecfa80623fb35bacd4e819d9beb4057d8760e0f5d5
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_helppack_sq.tar.gz 2406989 BLAKE2B bf2d14aca367ca50cfd7beec171d8891a0b7529ddab05e2d9f178aff13b2406be5444079537939ff5bfe94e593e42e64e497a8b725a4048f5a148c09fd0a1913 SHA512 4f575602eb15787fcf4053af4bfe19018fe5f35d26edb61ba5c4f27bfaeb81f7dcdc45e591e41a25f10392da7b004ea77fcfb7a87532167eb9c81f6ce1241f29
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_helppack_sv.tar.gz 2495794 BLAKE2B 1d1be67577651611918f355e78b70ea87b1760d09ac02fe831c13f86b15595761243010b337410eef9bb9bee7f44425c153b301eafdefc8bcff1b44b08ebc0b5 SHA512 b9fc19b2cfc45302368dd25d298feafbf6a51d79e9d3688d31f9795dfa581f1e90db7b89eb9aa2408671eb7a91b92a68fb22dcc16c3419368d42000f35d1c188
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_helppack_ta.tar.gz 2602523 BLAKE2B 9447b1b04a44835bab9f55bd1b7e19d50bc214e153bc1e6e4772e8a05a107b03ae52eb28a59b44e85f1f14cc2b4b0c9808ce6c04839bb273cfc6253e151186c7 SHA512 588805fc0bf459dae41ee0da0db2af0799a9b5cf52ee609d60baf246febbae0c6d65f52627e9508e4a15a86d8957cd4fe801be878dde736ebd3619886245a579
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_helppack_tg.tar.gz 2491651 BLAKE2B 18f2e28a3e9d493f5cad797c2360556f0d1dd60eb69da3f0579c989ed870e922e316cf9b209d5fa39f649ce62453e90dc8f627359e04acada423dd53f16453bf SHA512 43821921388aa6eb889149b221cd433d2127b68e34cae1e936a73e61ad2fdddf1120e18832fc205fb2e153710e1a3a78e2c6832f09a42d89aad8d3c33b5b7513
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_helppack_tr.tar.gz 2572059 BLAKE2B c378f2f534b623d6f890418ca337d0a2fadf33037575de53cd3f2641799952e7c803ee0265bcdabda72adcb9477d13a68024336f46ed5415980ca7e85f232617 SHA512 dd26e72a907ece9b6a7bf221e67025286bf9214ee57c09d1634fbc3719f038973a3f80f7e8dbba6a70636a86ba10af2253e02d6e851a41f28f5b06998c0ff78c
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_helppack_ug.tar.gz 2457798 BLAKE2B 4a03279c2ceb6640dd1e4afe6bd3ac7ab93715ffe4d337cd6b37df51c6152e94dc4311157853d30256ccd1620df7a41c99d8f483a4e75cb1fe4e37300e9ad691 SHA512 bf62b9bccb70a325586a1f5d2aca103b43ab25c54ab8111e3771f706918574fa3d63aad1a8f64afa8b0655d9fb9505c37d8140c7d18a1e3ae4cea1878dfa3605
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_helppack_uk.tar.gz 2747867 BLAKE2B c3d797ed3aa8918bb349c8f5a2d0e38267f2c7ec2c710c98cb4da6cdc26ec9f5549628957cf59f337eb81195785471e41a340475b53c4d9e10db39902ef9c2c1 SHA512 e8ecfb30cf5bdd3eb928dc4f0f2129f98994200ea80cef356e932f3de851203d4f4ca4cf1939cb4ec1895d23fdf2aa795a80693d0fd154706d7f6b59dc5c2c9a
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_helppack_vi.tar.gz 2547373 BLAKE2B f65147cd4112762d00e4e5e628b8793295f737c1338bcb583d1cfdb60539058aaa8b5675b26c43ed35664f8f9b647663e6a5c3277eb0f909fb4c0518ce7e7840 SHA512 d011384bc59d912a6f592dbb62c9a5924f2d11f67947a5a2c1a2bfba099ab32aa45d1ef4b0a682c37a5f02575ac679e6b35b028d5c28fe42da51958b31ac85a4
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_helppack_zh-CN.tar.gz 2512830 BLAKE2B 025c21a59b2ff05840fa2278f88f31c96ee775d13be66b419f3cea9b07570c61949c6103365f890b108b2b96a2ca720a2910e7946529806a006dfca1cc3558c0 SHA512 42f87a01cd777d9798b220644087bbdefc24e3f8b97fe0affa60919fb700195196ba16c437616193f7a3b25218e7994d1314bcee0b78f3b982659f0dfe9be17f
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_helppack_zh-TW.tar.gz 2592543 BLAKE2B 2a90ee460e8455e80f0b5a20e7c936835cbf00a1e48babd1c10dc4838657ccebb333011ca613a0f97a68368e6c6ddde25abcc78707276878f8c7b12bdce6cc9a SHA512 9e445eacd69b9205536c9e38b6bf8a7a0d0aeedc6c45e9325fb8bfb651627ccda77fe00aadd4cfe8e4741a9b92546aa797bdca1525a6afc6981c80d876bc556f
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_af.tar.gz 1020758 BLAKE2B 583609b7dc68cc3d477c9d94855fcd39804ea0f2fd917d92c633c8079de326051c8bc485c2bfabff04be0db05947fa33caf3563d8090b0c642a7b3b96e59849d SHA512 264f0260032c31109837d9c90f8541add8ccb338562c71fb33606af6ef83862aec1bae654369728a114c31f517a6bfee6b9677ca16652371341487864f7b0141
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_am.tar.gz 769087 BLAKE2B 2225550ec34774f6a60256704ae99752e71f7fe28e68a890bc592d74dc509abd44bb1e06185975204b93cf25497561c957757038af274ac08f46daf430ba77c8 SHA512 434d26ebca940de3c72d44c1f975a7c8e576aaea0cbc0fd5d45a7791cc8018fe2f87e3786740fbe7f3d6d97fc9b4fb39b7f5811f13fb00e6fddde4ba5d56c095
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_ar.tar.gz 2409901 BLAKE2B aa24c9a349775343e57827fa61c0dd64c20d0d41fd25c5da084779b0600f53cec17b7a63929b417c60bc0be23a01edc0eab976df3b79473e5af861da20e77a15 SHA512 6e7aa2b1dab02ff4759856ce5c3ef016ef0cea373336b84792bbe030566ef77e2d453df123ee8efc5c3265f1d9aaf5af423a828ed02bc9061f7b8d7089d10f4d
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_as.tar.gz 529880 BLAKE2B 3d3e8492f2da9d96e6e40a814d5c92ac80084a9ade2892cd0fd111afe2e9aae2d1aa8d0ea90c5a1c165b6fae4b317270f6c86becacc7a4795ea07454b0d1bc2b SHA512 873a0105b7e1fe9eff6dfa349690d1cbd08c1abb6432a7a94931de6463cb7273dc5b14a26c6d8e9a04d7412c92dc144ceedce4edf3f70f09b8c728ac74466989
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_ast.tar.gz 458977 BLAKE2B 5e299cfad76d174bcc52a22d3e22c69464f5a2080d708eac45eb068f9d14b82263ea6f2ef09109e9a679b65bd0a774fc3cb87b7f3dfbb1afa9aaf9464565bfa9 SHA512 a5d1625cb69033fb27c7ccf83ffe91d00129d6c9d1cc3c1b3e729a53eee6dd1d17a587ea54063ebdc88979b349d0aa2a240291156b3a7b08e69c2eb2f7a0d246
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_be.tar.gz 1048824 BLAKE2B bf5129e2f75dafde592ba5359a1f82fea419180cfab3510cefeb6efce9ba35a3483ceb2e4bc38f72ce881b0adf837b129585327cb3e4e60e7394b1182c71b6bd SHA512 df5d2b102778f7de53fcb3f0f70f9271b02f4ad9cb06a7dad91675b483b98355b942759a6518d5a2ea5c9edacf206456949c721f35815504efe21989c71c73fb
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_bg.tar.gz 2486862 BLAKE2B 3d2a94e70936c87c33568fa9f3ff10edf8dc42935913bc0f34dd952cee8721389eff272c96f2d2cd24670f9f2a07d91d34277f56c49ad11176051b1565186487 SHA512 d48329900c27bbd2e391a9e79419b24a931cd6dac5ab39b14a6d0227d0b193e9e27a5a8a1950f47a87f55bb958077a74a3bc973a01814e6c53d5e679cac639a1
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_bn-IN.tar.gz 644041 BLAKE2B 30eda29a834933641ed2325ffe12ab9e0c19e7f46d2881788fd050d3ea796124a86a380183ca711966c8aa580625cc042e92342c4d7d0f6c9c861e070808470c SHA512 274fc674bc4cf3b3ae27c1c5b5eb066aef02dda5bc6966aec5c05f2290a1d0f979238466191e6fc6bcd8aa4411b6120a9bf1177d44001706bd74b2084af6d9c8
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_bn.tar.gz 790066 BLAKE2B 2d2f8d93bdd77851df7bd4a90d377ac8b08d0c413aba41b093abc536854e9a4e46cb490c22fcc70c0a13c5dbe1c8bb3d8bf5cf4e8bdca4294447991eba2f3def SHA512 a0957d64fa4c12aa0d630d036f1376a93cd9a0cf4ab3daf949f8af22eed2e3250a1778bbdad38225d83143fc951ee0c8f71dcb797aa65ee700589f44f6e06914
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_bo.tar.gz 382249 BLAKE2B 3df5284d5020bd26eb1cd535760a7b44a1d1b4c23a638d18457aa796fd33e65058e3faf836aba58c025b4c1995945b67b48b3cff5e1045f21692a1bd81012761 SHA512 6fea17ead59382b114011292803f906cf9a7443dc3f89056102e110a260241af573723fc736b0da8bd086e9b7f2f8c1f9cf3dd5f74edf7d274b5913ace970f7b
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_br.tar.gz 1533689 BLAKE2B 025d6830d74be104373d177b99818c2386ffe35781c4259ac713b68880de1bedd19d5ee68bd0895d4e2a78ea2c7d87f95433339d28f1173e99e9d366e1a088b5 SHA512 aa12c90c25d95a0b9c8f395ba5da24d00c2f1092a0f1c800aab4195c5740a64d12e06c67a87ac9c8ac537159c153773f27fb10309ece218316cf7744a60fd887
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_brx.tar.gz 340093 BLAKE2B 4452a5dc3739d270bb40f017cffa4f49719a533f94fe7df290a3324a1366f9183918255a5d47a7d4034db8d2165e61afd9e84e3decc34afda29651ce947c13fc SHA512 ee16f61594dc3b7e0a628170fc782a8fd1fe66d23d2ec2c1d6ed668a2b106d329a76918625e92eb1f8eefd1bbf30e91fe5f5aaec7f3782e2a3d364c6af37ae24
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_bs.tar.gz 635063 BLAKE2B 32e8b0b14f030ee0f34c36e1316351d98ef76c2450467df8f8bbc356237017191bebe0a92c180d6cb4167abd62170d9fff1e47f3d8ecad595eaabb7bfdce9fdd SHA512 a7d49917781858e3698e5bd731d29f5437a83c343e7a1a8b0c62729fc36f4621d04293f14fd4e06fd4edd85743c05c8b67b7d71d0897844a52aa46669d49db05
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_ca-valencia.tar.gz 1968022 BLAKE2B 74628705ae84e13b2086be50b6ca6c41f6adef54bd5cbae3f9b2b298ad170dec272d506b569ccae66482ff2c72bf4df598acfcb3a1ce73c5af4c93210a17194d SHA512 bf3565e4a658a630de3f1fd459ee34df1486f855a5a90d5c50e395e977d01e98300539edda4211d6668ce133f1e6fdbd4e579ffb245d74cc8715b370974b45f2
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_ca.tar.gz 2037000 BLAKE2B 934773ec40353d866dc9a1463fc9e0590d4defcb3064618cd4cfb308e6ec7d737a61b0bbdea373f65e564c97a420c9a000a22424f0e27122472ca27ee49e4166 SHA512 9592b6833f4252c81a304c90c7d5adae29a6f5303373bb687c061334050055f509cc509b1fdc9844299ebe35e3be6a072f13c6520301e9afb67b7a3a222459fa
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_cs.tar.gz 3227628 BLAKE2B eeb7da7f7c77ad6cefcf637c787894ab0845e653630f9a0190f1773a2c4132f9b49939301540260cae3a255951b066a5ddcaead432f4c319017fafcc3e483f2a SHA512 06c6d3eca9ddbf2a2ead0f28b550f8b6bd78043334b37519d522200ef83a93ddeaa4c10e0c127dd212ca7bbbb10c76e47219e82ab4d6b334d63b6e85e0a932a6
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_cy.tar.gz 766811 BLAKE2B cac63532c79d8d0b8c6937a018826057f829b654deaae14088a88674898ab305f6a6cffe2f5c8c155527f39e7e9a9712bd3fed6302e1a73a28aa270143229f84 SHA512 12e29fcdca5ce915c82b9f8b97964e8b67aed99bc9a82be0efe560dc7a683be70a231beae9390f403bc6bf6cf29377dda73cd73caf37b124323f52b5d85e138a
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_da.tar.gz 2858333 BLAKE2B 68826dcff03ff3c783d9fb4426cdf1b074b786bea051e156db3ea5efc8ac31a1e1324128213e1a669db710a304e6db177ec8675f0e1c9c21aec2f77b484bc551 SHA512 17f2b85c2cf9aeb423980b1bf44a8d83c2d1ede53c799eed777545b96bcb9eae4b5cd9d584f6d5a6a84671a3789789df39d0ba39f5ba4578f2412938971f5ec4
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_de.tar.gz 21795400 BLAKE2B dfb29534e220b112e4afbb401757452798f6c625685aa907bd39c0a26a234dd71b5263817ac66163af062618947558792feb43340009bc78503de10666ec5d1a SHA512 8d6cf8fd436dbc88d03edb76e3342796d9c8e0da1896b183ff4b006d50b7d05e4a47b64867a1dfaac2cb2e4cdd2c6b7c04c50c998631e86acfe58deca6975d22
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_dgo.tar.gz 441126 BLAKE2B b7d8f85c9f69fbb5816c168a1aea2b34bd0c6318e7d8ba203e483bdeb77796ff284cbc4a708d530653fcf754fda95b28ebbdbbaeb72410152e512cdb85633f02 SHA512 11dc067fda7a7c11bbfe8b36dc656f6ef9e846112adb724f5f9958e771f7e968d7dc15590f04bcc4d28f11119a30c290999a8bcdc8922e7789f8ab1bc58e5bc5
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_dsb.tar.gz 788912 BLAKE2B 2485a34d5e31d751638fc138325a3d777971051bf98965de9c75c5c5d1b2033fa8716d638f2b11099b624bf1dfcfdb3502131f5bb4ed99287bcbf8251fc4d895 SHA512 f4960ec81175b5e252f29676bc68bff02be42206a55004991561eceb49a47d508b2eeb2283832d568dff6a59be8da2ad5e86e3a6f47bc16b10ee5c1351508c3c
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_dz.tar.gz 369944 BLAKE2B 6125edd343f1529d897e6eebcd0b45ea5e7eafa6c38eae8a7f1a549a2484e15059b50ebecdf9e7014e6e03f4b8f46079b938db8eb42579ec20f8cfbd00c1844d SHA512 db4cde7aed55bf7fcfab754d5c508494654d3d98b65a120ebf8721d7391291e8c758499be619b8fa80b5e0ec6c5fee4805c973ef7a0649239db373d84d650f7d
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_el.tar.gz 2873409 BLAKE2B d3993cd2bc9082a454cfe274b1d6699dbe57f5d875b4d2badde4317455acc96fed7caa35acef9a3c037d72347ab0a798eeba4b98c26b1ce0bcc2bafc8a648100 SHA512 263465cdbed1f7208d5567c90cafccdfcc8df220aecde79d43bbd3fc8cea4ab51a97710625dce3ab495690432aeee03c0b89f88f566298f0f2d4019ee3ab75de
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_en-GB.tar.gz 7374914 BLAKE2B dbb006a32373d373719106c5019887522014ec423c505ae9d58e78dbd2f23c7abb15bb4436e587aba18a0a07b91a9fa9e8e555a1d3d22e310efffa3013c50cf1 SHA512 16e0fc76e177c0c75305a7b9d81b373238367d36a8e3477f7eeedc2b4ffc4cc62ca19ffb266f97db1042ebb7a664bc9a9bbb3b837f4698fb8b113b4b9a723a74
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_en-ZA.tar.gz 6929689 BLAKE2B 04ed008517b9fce979c4a7fc36201878b212eb99c66cc4ad4282cc02ffd8be1a9fbd4bc387b05635dce6324532e1f9904d60d8d926bd50fb0a1380133fd74f46 SHA512 b66c43884f997d1e6ef3f3f4941dc94b72ed991ac9c34b836ca059d9dd9960545920f696f4ad8dfb68ef4488a19829a0da4f001cbc668ac0889df54ca9720ee4
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_eo.tar.gz 744412 BLAKE2B c9b85b7e232d4b8e090d297c7efb3315bbf7e44d15bbf06711e9e07945162caf9ec31916fd8da1d08d3152809ffa8e52110c19efd9988e5557d45fdead7af2c8 SHA512 f91f000a3cbd27e205bf5b7108cf1f86ea7b00e32cd76b8bf0b80b0941afaf571dbdbdc93db5fbf21799a60103f4cc1f6fe7168a2c6ec64b13ede8f41a7777bb
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_es.tar.gz 2274583 BLAKE2B 80cf0487a8faf314f1596b3805da19be94edbfe5c88a0da5875a77b74a13872500ef72734e78a3c87a68915c006a3ac0e6fd1d80c5d05b12fcc868fe33bfea30 SHA512 051736facfe29aa7c629cee3600d19b3d59c6e5b6703b408871dd49bc71d0ce82a1a82d3137820f523e2acb68ae04a22040ba7764330c6a16b86a7b7b9160d01
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_et.tar.gz 1677049 BLAKE2B fe5523c330c307dbbbb97d7c55604bfc77abaeeb3eed15f631bfc34ed8ac477594a0de2643d91fdfcacb66b2e5f75d602568c0527527b91c56da1875e36b4d1d SHA512 49b5ceab0d701876c9187639cd07a75b20b92b6cb22ebff9681dde2c48350fb6353590f8ed1cd68be4c308849e703f75c7a9fb7b7cdf0fcfe854d48e17fabf65
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_eu.tar.gz 771580 BLAKE2B 07508af9fea5b36503fe8c2318962db6c02fe98189a02976cff963bbbf40a1dcb22b57498eb72a9bf765b675ecad146459418e8eb29c56b17b3c97efe383fcbe SHA512 6fb083b68ff990a764da5d78981eafa2cf70c7b510dd4e4abdbdc16c293dcebd903f550a321d06206940457599c1cce85c280c9e2c78abc2e32c9f70c1160af6
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_fa.tar.gz 329739 BLAKE2B 1c8ec4f11c792aeae3808b5ad211949912300dfab0b8b0e11d2e88f89c29db6270e08decc59f83a1ba59e952316cc25b567a781cf76520c5bd85da44a2f0f376 SHA512 3a317844c55a6351a6538d43bd77d99e2f50ad0c9d0cd0da8303a1f35c6b1dd56c66a5284bfd3ee1b70bae7840ba146cd8f5660a65ec15be9d8fec35b70e54e1
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_fi.tar.gz 739640 BLAKE2B f44e6c50cbe7d0d679e91ecc09ca188022d7cf58e6bd582b95df670e2d8670c8731a5e72f4f608d0d9016bc1229da9da8cae4ccca16306544f14ed08c490f40f SHA512 b86ae4c22e9629640b7f8b52442b2f5b370c4e89bcb11e34454e89e91fbf44172be8901515d88433e0f79ae56bc111459a4c38c0ca34167f91bf334b9089fe84
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_fr.tar.gz 3069891 BLAKE2B 7ffdcf4739e1c6cbeaf589e78bfffbe5b7cd85a96614b32ec3f30b527a271386df5505c024284e5f2c270d1eec1b1819156a10bb6eb21b904d469588620fdebe SHA512 52d1af8439e9f5223014194d428af8fc215d1226a626dfef6b5f3a787351ea5184d6cd59e1fab0ebec4713dc9ef14579d765cac49009d64890cdd512e7a8e31a
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_fy.tar.gz 772114 BLAKE2B 080f756f2b77b0d8eb7e2cb14cb0e0db4e95cea7d4f8a5011f0cdc8eec979d9fb8c334793da7f53e58154f1e1e7d503aad7fbd7cc3d91b010d6a92961e8c9248 SHA512 fffcda038f98720623f3773774752abc4c37d8709e4123d7289c9deb5a3b39b9cc9b4038c46286748e3796611553aeeaf5cff956bfa68874477acf2053406879
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_ga.tar.gz 737408 BLAKE2B 9880f05ddd06eba84dd3031b4ad537150597de76388632e2b57736e330d8354f0a0124b5c77d8626fdb0c5f5dfce98be8d260a146219835ecfadf095a7005899 SHA512 37e3d880678eed775ed58149b30341fed5066ee5b2039971f6369306ff9c711256af49fbd85571158e834c0c1de2cb4fef3844ca457e370d42ea1a033d9d861e
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_gd.tar.gz 1791969 BLAKE2B 1f79ece95b3057fe7583d0e040331db52ba5699aa4b16f1bf4e3fc1ce88b0b267774ad06f27aded5d900ffe0496b4e443c407b779b63aa581d4938a0f80c0232 SHA512 dceb7e7359fc4e046f4f349866c9bf1bf940c48b524e11f70d1671cecf0ee49bc5bac6c1c6ac0955d58cc3fb7c4690ed6b0a4b99bb40662a8e86aac1d051483f
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_gl.tar.gz 2658629 BLAKE2B eee93918c222885b70af75f879c19d8e2ca34ee4a83fa764770c4c7d688d6e6a29d67d608b7d16153c822e894e33611b4726d8eef5228058a65b878b965a6977 SHA512 51f24d5078a842fd445c9a2e94779ae12f6ace95889f0a151d7a5f2a002f0a44d62284cda3feba5065f4e5c75545eb9b65c7f2c3b6ee321c1091cafbcae20e36
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_gu.tar.gz 1227305 BLAKE2B 7501226a0b91f895b7fa314bc0fe505f188771dcb62b5bae60b60a80699d15174f8e080abf50cdf784c119a576cc52ce340ff1014430276be21c8d3101ada00a SHA512 5c41f6bf493cef5abaadcffb9dd7c160a9cb1b9ec532f6a28e33a5a41a5891259d55c1cf9511ede813d588cf6968417d782eb7dfb2918e7fbe4fd64223b4f4cb
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_gug.tar.gz 519936 BLAKE2B 8bb1abbd88634419a7dfd3524821d311971fb902723343ae185f937c1aea0fce418870fe5357274f2af08052ab5a525e791d8a353d0dc659307e76818b6fdf31 SHA512 32acb79ce1d95519403f41c08e9099449c92c9b10d0034b7d7488a38f4dda67992dfb8e1d56d83d1e3e02c9551f6478d914bcf39f6f9132dd6e163d241f5dc27
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_he.tar.gz 1622487 BLAKE2B 845cbb66c7d56ce46b168fc601a478ade7ac03a5929aa21141319fc9980ee4924c1a7447b54f0fc34ed29f0da8b55af7fe28bc4986e92a3ab1ba7005a75c714b SHA512 d9bb07c3c6f0b20a0186f93df5f5090187dec9fb56c79889137df5ce15c472dc559f4bc42e0d23f038f465214d70ca854093b03c39fae514594d6ad1307392cf
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_hi.tar.gz 569879 BLAKE2B 23883ac0a7451a8834729190902caa8a0b5e52e8a9fd4aee5ef4d97984ecea816f7ed2e07eb60a5ba6656f3bcb01ced7dca5a47d147c38eb5763537ef410083c SHA512 3c7e89a75178f6d25ed8cd914eab97d2fc90f2852f732e735922d60a8987b99a1899f229c7c562c78035555c6957b2c8bbac9ce80f136d17587f3a6d819b147a
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_hr.tar.gz 995375 BLAKE2B 881af08b2c5754e3d86abb2059f5c13e5505d3ef6f7bbbc5cb9a31e92305b50d96bc17922205748551bdacb467267799d13f1099a8554fa2302f3d5662ae302e SHA512 fa4aa2bf9a9e1cd720b870a0819d39128c652d29b1684487fac6037d7b5776fee09e34b7a60deae8eb13998ce0ec21526636c1e1b96322920bdd7d63d4fe55e6
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_hsb.tar.gz 787206 BLAKE2B 1263b4c687758417445eef8e33bc98d665d1fad34d7ae326d6f8aae1144c57133219f4c5b7c5892a55230b356a86285a408d3e3b8ee434f1869c468e712d2d5f SHA512 b651e7abeab87ab7048d18505e598c15880be5a6f87a744e762b647b2273bac8777f84e900a55369242387f1809d240e704ff7e19f16e2eb4426c40b63cd28e2
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_hu.tar.gz 3032299 BLAKE2B e141a479156e6d399921ceadace63b345a26dbdd52ead94d46f4b96df7e9c6602fbd66669efddf2d36cd24f1802711fadb94e1cc18c63da0a44f41d30c375e35 SHA512 cd1dc3b8fe433f094d44ff97bc45058138b1c820ab23735dd6c51655930945e4c07c545875452186b403d94bca9bcc71bc9245db9fc3ba1cc5db70386409f142
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_id.tar.gz 1600010 BLAKE2B 9424d23d7aa548611bbddb9de8073985e4c4b52a0d619ec241ec7bf4719557794292177ded4169fb93505cd471d7cdd9eed80bf4d1f32479ecd249ffcb0cd96d SHA512 adf04269aa747d6f467d299378b5a3dcb62d711c3b678cebd86fc81efbf62395157efbdfb7612391913458afdc600f96215b283721548e50d2731c114c43712d
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_is.tar.gz 1519818 BLAKE2B 2789c757da75666052a2a49171b5ec4de9a51aecddeca7d3d18e7cd98410b71e67430d12b6d1d6b5d96221bd0437f53964af2a5fc347dcf303d03ea70a2769e5 SHA512 4cd4b194ee648f09609873cb059b8014a6e8684dc262dcb3ebb1e1950bf51e065fff29d3fb200d38dabc408c72e95b1fbdd4fc0a4dddec54eb7a9b33b9c64ff9
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_it.tar.gz 2105720 BLAKE2B 0c60ac6a095f0618e9c35f2d6977e0cc4ae81a64f127b0c10a826275433ec46993f747b41e32537f1a8da5f6d5c422ef96c7b3a16b38f75376a5c74c56395a18 SHA512 7b269ff7a2a53aaf9d86351d58a8bfa81ce797c7b914e04e66e02c6e5fb8045366be152105fc73e7d67a3163f14aff1cedfcff4c93be3085a9c79719288b02c0
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_ja.tar.gz 818815 BLAKE2B 924d08c551eef909e0cb46c4c99737e524f910231432464af46710ac6cedbdabc3e2b420dfc7a18c365720d493efe6b89bbf199250d519ef9ac2d3becadb71fb SHA512 33999f7e973658f90259084ff713d7f5b4d36d54aa9331db6c6faebd0a5624b546c29d5995390ddb3dd792bef64c940ef29b8cab3effab23d0e069d79ce94c26
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_ka.tar.gz 362225 BLAKE2B 7636ad606cb4c856eb1214e7015fd52bd296558e7ac001fe41aca3791b24dc1b3a9d951de2d88dfa4fe13ef749d1c23549b15d35d674a83f42cfcaafebca985b SHA512 fbad5a312e56796dd228db374290c182929d0c63cb74979dd36ba0bdc33f218a0ef43778986f8fda8dd62852c9041d1bc0e84cbdc38a0e2a4c7901bd2050a1be
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_kab.tar.gz 642987 BLAKE2B eba0d7ca5c058a44037ffdef1f5fcd6715a70890994b6624487b769bad5403490210af332565c791b6d455d988d367702ede590694d552e4166b5c04437e3c30 SHA512 4a1e00d540469b8bcd1eae7d1797740298385945c403e57a3e981afe858bcffd80c584a06745999eb8dc9d46e1d4c4af7b96d54907b3cc54c84fef0983a317f8
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_kk.tar.gz 773831 BLAKE2B 0e8885924ce25548a05967c21a18c7e7be7f64625fae21b32555b5fb434785493c7bebfd08ec9908b8503bd96a4be63270e7ff120333ce5ebdf762159bb55f7b SHA512 31a6b326313c2ce830ef23f9471c15ce8c2fa92c773b20757b984f673ed36fbca99eacec741a56f1ffd4529021e6e801462b00dbc973b602a79394192d9fd50f
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_km.tar.gz 676745 BLAKE2B 0d96a38231234339921072e41391986b7ad09836f8fbef79a050b3bdb84a4683ee9ddada4e74bef11c775d30eacee7e000afef89331fd51a04caca7f54ca8f14 SHA512 14eaa768a10415b4845fb1da24304d1ed26716bac7abc271e3f5f9ebba6817a1e3d68da25e87b82a9681e363ddcdd7b77e6eee91a10172a15c9a0868fbfbe1e1
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_kmr-Latn.tar.gz 336121 BLAKE2B 18299c47a0f4eff1dee62eb9763a8d92fd0d1ef60905f5516e4b7b79fac2cf25952135d252395c4223b9f7ae3d352c73ab52421724f801c4ee89fa1118978cb5 SHA512 9a424e29fcab929020e606ccdb0e4f377a7c20a45f83bdcea3b413c43c8f6430ddba86e0c47d53c2ed64bbb6964b4767e8481ddfcd38b5fab3af4d16b138d8d5
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_kn.tar.gz 582575 BLAKE2B 27327511e0f40aee67e0196efa32be9a6b1b9c63a74d5cfd7fc5d6603b4b8ced35345da9a0a529b0211bfab4b1a800a7aabb17819b53f556f34dac59f4edb0a8 SHA512 235b694095c7cf2019b76a90de46259de4df71ee010e89b89f2cbdcaedef094b9e29e2a1fc6b93aaaf283a54e2e2322261d9255e80b8c05e1ceadede37e275db
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_ko.tar.gz 801635 BLAKE2B 522a546fed0bab24569bc6c6431159f1aaab58938b25c4841054c90e6d58ee056a27ed4c4c405db3824cd02a6ab5a70d65979aa64b02547b76b54fb6d5da6a7e SHA512 c80d0301acf6ba02c1c624fcfa79e4724712fdd2527211f6132af5135445078de340a5c2cc1396f4d5a8f5c8bad9a2babd1586eddc300e8815ac09825cc3f207
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_kok.tar.gz 413588 BLAKE2B edbd51d8da01614f0ce403ace49824a0d745d3fec06ff2f3ff6020379f58e48b10435a5343405e4bb77edd196bf4f3b735c2ff4fb2cd00b8e5e28aeb58134de5 SHA512 faa745b83908286d4b2408d11abd05bf79a238d690a8bc38a2e2b57c7a3f2b23356cd083f31bd7c8c9a01c098d018da802997a36f6eb08f3a8814d0b8a4575ab
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_ks.tar.gz 333102 BLAKE2B 819797df4cecc8a3159543796dc5cba38c90848365646ec63a7cadb3a8453992851da394389a69a759be48f0bce60ac78958c5b13d7f8c69e7b88a6df5290927 SHA512 5dce386249af0d2870f74b1e8d980f4adf62280881031179214503e5f6a1a3206009381831affc4ce87060810a775b99dfbd33037fc20062717903204071b21f
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_lb.tar.gz 147667 BLAKE2B a54f275eb8cc381877fb45bc6910c4ba0f585f1f04826e4d4b89f9269503cd75c47b50cce2317e403eb59abebd6fc26397a5067a2ead9a74ab34c7a72bf3c7c5 SHA512 7ecdc8e181fab3b106e2085c7858f479be1309620826c94a5eb899cffe03078f3118f573ce38b716685b19b02f9022009809c3a197d4b9c5da10881763a97c41
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_lo.tar.gz 435499 BLAKE2B 5c6cfade671d8b7a64f3bb065489e4382dc7803c81c5efa592dc53397452df21243494cbb0ad13884036ace3737a0101fbd238c07692bfe062be6e2112045253 SHA512 f6a917c841ab7d8fa2a50ff357cef9611720b00aad12b5a69d5ab3f1816581450ca455c8584ce419e720e2f682f70ba661afde259a0c5e427108a1bf7531061e
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_lt.tar.gz 1065045 BLAKE2B 78fd4db4ab3af8440bf60e4ac3c3e46e0fe954480b5752289cfcabb94eadca9e011eed2ff250420fe2c20bea40fc10ab50cf81f78476041d6e7186cc63e66659 SHA512 3d8eb96f88bd7890c86a04cbdc3e8a015f78694ff1b7d6f37cf011ee7a70ea0ea9b50832a29c0f207580f41f4b474da5b87dab224bdb3b74ac5d0e1f0561496a
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_lv.tar.gz 1495313 BLAKE2B a98aa3aa2d10fe10098f86b5a461bfe86d4570029c316014a7878f6a2c2073e075546874548397b8369ca26349b783aa9b6da6bdeb8ecfe4d3f7b4329da2fe97 SHA512 7125a3c9aba8e685e2f551729f2257117d9e9e1d547b789540e49de46d6b39d8d32c27347af8d1f1b5e1bc57ee21a590b6ee1a1fe267b02d6d1b32df7a872114
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_mai.tar.gz 333842 BLAKE2B 7d5d428b4e5743ee3195928c9ed507bcd45db50b940f7da7c80322ebecdeeb8bbecb9b1435363728bc6042f56d98e27fda5835a495e52085944c2303beac9006 SHA512 baa451fe3adc24f0c4f2ee28f839bf49ad577462a1cf8be0bffb4231def4d886747351aefa0f407afd17d153d08a4359e46e166d573e40cb684754c086540f33
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_mk.tar.gz 386663 BLAKE2B d6cfc5d6374231455099e391c21b1309f8ff01228b9e3dbfb65f28f3de828b8bda50ed74a1e2e8c30502b677ca485462abfc2ec33d6f0c8478875d06524ba474 SHA512 6d9bcbade7b5ff1230a7228a22686ee97da1a6e88711e45fab24120c88dec4308d12e14ee18c3cbfd30dfafcc96c754e891a7399102b170e3410093858bae81a
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_ml.tar.gz 541113 BLAKE2B 3495ee3302712dc407365e4df50a844f2b9c3b9676053e8d1c6d34d94ff42af615cf58ed232c84d3938f885bd4b690d56235bb1d73080eb634d494ec82290fa6 SHA512 77912f5d8a300ef9f17583cc2b69d313e88b1fe16c5afa39b079aeb90763aa550451ed334787759c1ef5bee616285ff69b19bd99e0390c82c68e4a961502b8b6
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_mn.tar.gz 504999 BLAKE2B 5217e8cfb291dad550a4a07ac55b08db0faa90231dabbe15c42a19997c1add867626530296525db89d1fe44bf284b201886bc53f4a021bb7f32e932df7ad02ef SHA512 b5b714b2ab4194d7616ca403b333dc303d244225995e7d31a3fc88b0f3c82af1bcdd319c89ed6181669fee2c40d24197d0b6e23be78fb256a11bae8e3f16fcee
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_mni.tar.gz 404656 BLAKE2B 957b2ccbd26a90f3cae8c861cf05811a8f0d890b809485d21274a4fa389a3eb8ccb0ad920627e5dd20ea2c751983e3e993f6a8fbba9e433ac28009ee7b824301 SHA512 0fd9520384e95216d1add5777dccb3b9e1a95ec2d0f32028f37b37f27649fd3ebad90494c328c72de60458d406b2d9cd9c6e1e8b6d982b50277a6e5c1e259ff5
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_mr.tar.gz 575852 BLAKE2B 22e771792feeaede32a1c591f00d5d45a7711ef522ea60f1673b3b23314e5e656145ceee9c9cf2dc9f7a05f286825d61d2e6fac6d6169109a0d67068708db942 SHA512 5ce5af83f505086d89cda8fcc28e9f9b6ffbc8e17405d4cb3bab64b85019bca28bd29b10f7ad7e0adbbb59c70d3215ac0950d29556853d6b5e71a6e926be1049
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_my.tar.gz 465348 BLAKE2B 4724c06426b37c853f1f0703b586bb06e34330a461b0a5cddb7eeac27858ef13823ad67a1e013528b39a955e58f1ac7ed3de9bb722bfc295b21e0438decaa60e SHA512 a75e764e01a413905b238f030bbe8dd5764924878c0671f10052f2da1d8ece70da59ae394896451386a71adf3d11676339f54e6c27aee3997c1f51152eadc75c
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_nb.tar.gz 4103556 BLAKE2B 93fdbc70ccfaf9a8d25e6dd6401774e4074515c47aba19668653a1db431479fdf1baec2ca27989a4d180c5ad4330415d6c14d5d05bdb2591d710d7e587437b44 SHA512 d0ac0c552405eda9cfe301ad6395916bbbf5987d8d7e6e6aa023e72f56f0c94d09efbfe18bb74c04b1e9a651def1a7a094f6f4035b3fff7068321990ca6eecee
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_ne.tar.gz 845318 BLAKE2B af6a31302fac46cb170301aaec0d3ee7a35d4704bce1839069d041673f4b1c68f47065882ac07e9413b9f1d289d8dc088c3d42630fde560f710421607349fe40 SHA512 fed8513e460fe2c2abee0729c27373a7611674fa4229d74355773c401e3ffbfe3d073045b45b8609470320f151a26c84d4eb6fb1de3971038217732d58bc9826
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_nl.tar.gz 1561210 BLAKE2B 250758182fdbc666e5adcbc2f8b7fbfd61f0f64f22237c43e8f36a46ca4ba1eb1c64774139d475fe62a60d33a30019fdfc84fe94d44d04f89300883cbd447f23 SHA512 0ad6154b5bfbf70df0b2a2288c39e17f866e71830657d0ee9c92baf22ebf993c5e759ac413e4eb6472e745fbfeab55c8b60323106e825aa7627c5e59b147b557
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_nn.tar.gz 4105137 BLAKE2B 606f3553f27037cd1459a0c8699199bf8f42617aa9b6f20f995aeb5d0d4e0cea176fbd2f1cbf932d440dcedfe581fc7631113e1466af60c8e5ed39ef6781244e SHA512 df3bde569c87c72a4dcf7bffcae0492da7e1f219d05313bbfbdac56533cdea162a6e50875ae3f88ee0393cfb8b7727b3cacee58113c33de7392e705811838df2
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_nr.tar.gz 282152 BLAKE2B d72a614ab0d7ebeb496af77132d5006998f74bc7118d0ac0af5d98e51621d070528575459765d7ddd644f35a780760d5f98bd2e4a8d11d048388afd175ce4a21 SHA512 28853278d4eaff54ea6f028901eedc2bf264e6f3150f0babc8234ad167ac9345991b9767fb321098694124063d709cbc27c39cac34b433e25d157af4d4e61727
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_nso.tar.gz 324480 BLAKE2B 6e4d6c31c496050fa2a84c33bc66a0a349c7fac8714fe0bef64356692c42c3fec3655c8ff4acb813581126311b27e35f7e0cb1516c6fe26cc1bcb89a664e9706 SHA512 a986e15453d701014b34f43c57eb566759d6515f29f26c2ccced0b1b1cdd8fa2f90994822e8cd3cc5a6c847b77374e5dfb70dab397ab5911ab001e16408caeda
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_oc.tar.gz 885027 BLAKE2B a4d64036ce01d0325692f5eb4d90b68e9e37f88e628b30aac1251d448eccc1fa7a548f5a13005c6d9b0d723bafe9a7430b3803dd5e2b5d652b84897b29d59d4f SHA512 c3f98d148566c8dcee0d8c94e8f050f2a5accd572738d7d20c6351440c418d3f6950e3f6a95d3d6ce55e656da4f5ec8fea8712b30697ed548d2df23d9ce22479
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_om.tar.gz 372679 BLAKE2B 2210b2872bf8fe83751d3a98f04b2617550ce8365892605c8afe350b63765a45c8a07a0a998db04a47a8dbf59091609a1c8d6a84545a5e1913ea32379787ecd2 SHA512 6d5fd097b0daa9fdfb3d44dfcc094ea4b0c237f938e48c1cb89c41e5b2aa662a8df0db155102ead77ffd3afefa1681ba5867e9f2e95fb1e8fb4e72eeabf3781c
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_or.tar.gz 599414 BLAKE2B 8a2ffa8689fe4f7535e1eb5cb60021e1c305c2a4e0f77c7928945cc877616d25d587344f03a85e923023f7885ce39286b8c87a15027e0e29a5636d04dffd9de6 SHA512 f233b686dedf37d271dbc648518309369d14e5a27f2e8475f48c41e43feaaa4cd7a4457d433294ec82d4a8035377629876d2ccbe8f393ff4d6150380c9c7bccb
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_pa-IN.tar.gz 475871 BLAKE2B 0868319abd8ff90b3779d2261825176a3114ad43c4a104e3b48fd335a5f0b1a1e57e69da14f6ed65ad51fb0f34633fccfc80ee540132f04e5396902194b517f9 SHA512 af9a2fa2971e3c60f74998456404ff6ebe13fea0a2b930f538778857f11d5727af6326a54b1615571e6632fbd36cd61249b3cef883fdd291e0c5d4499e6ac784
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_pl.tar.gz 3081961 BLAKE2B d3df6503e5ebe173aae4b1e6e3db870207abeb98c79f38898a95b2a6b2c5dd83bf8a7255e4d9248eb2d830b80a7ae008b98f5a5bb9c208ea1b4b7d14ce125da9 SHA512 531fea00f8d87c1e742ab33c202e1903f40d3606dab2790ecdcfde796a8bb591134495ac0f74cd20d0b8ca83d17fc1c0e7ed8589a8aa5d4b1c432531333d14ad
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_pt-BR.tar.gz 2852494 BLAKE2B 70f64aa983a52909ff7d0b030b8c554757a8bb79e3d72326e4ab42cdd7e5d75353fd17271e38552aebc90721c3c7fdf8caafc797be94d79e7cacdd1faca37208 SHA512 e68c6c0a05fd3167e07c246b5677c2b70b863241b9c51e3885b77fa0a165fdfdde649069b20cbe43ad9a0c6c559db943b29e18818889b1891f1b498ed50eea01
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_pt.tar.gz 2401496 BLAKE2B 4c657d928f23dd1ac7964e0886ef7ea579168f0f4a73fd290dab0f918e2c9cd55a005485f422b1ec0ec674f2bd7cd2d16a62a706e0137b1bb3f181977cc6e2a5 SHA512 1af5bdc5148d4b0c1f376f9868045cc49956d044110c5931065932575d8dd414427d533c77ee9032dcde55464eed37b2189af64bf03f4ebb5a7128aa0f5a6663
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_ro.tar.gz 2523251 BLAKE2B 4a130e15996985fdf6f32fe0076528cf5829cbdcb1284cbad4cff541aafbb2146c5737b658f6e66e63319e41195d3b73c0bf9ce6f4dcf7235bac6b342ed00c22 SHA512 0eedf6bf2c1daf1a8298d47543013ddb531301c66229d1ab72635e62fe69ea68446c8b35b3f5ce500acf3ff6ccb2de610143e4b800636ec9c764bc7a3e82d22b
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_ru.tar.gz 1941051 BLAKE2B d38af25e4d91ce6cff039a78f79563a607411c2de745b87eb6dcd8d4ccd1676bd0872482c6891ec49d041ab51079166ef7b1544d4329f6c75b2ae0468cfcec1c SHA512 4359dacaa4916d8c4afc1c0c5778956621b3a1fc1e64e082645a783bb0414a575981ab7117e27e187ac47e5b87a00797b0b555468226bff0e34da8fe546bbd63
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_rw.tar.gz 348445 BLAKE2B ed252d5714f1dfc6268f25bc78eed724367607775dbd7637885ea617a41b0d91a6d1c0abd7e621f63ed71a64b1f6fb877365ef735061f72a43c216134880942b SHA512 d6c59a814cb83c3927d70ba2a5655ca88f23abf5d8794b71a3e689c6f3d32939352cd1b03a506f03743f92ffd8b2e51a12770b7f328a0ab2c3f8c07cd4ede6d9
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_sa-IN.tar.gz 451142 BLAKE2B e413a17552ef4aec808738ffe2b80795bea9ffe9f8643c10a6725d10fddba75aa4f8f5fb23f05d68f6696a8f0fead9c7cb483b1bf41aa098a84c82a7c06d6c7b SHA512 f1fcff30051b1a702c74692b3d2c705cecc0c7a5465e64a8bff970453d8e3e705f2e6e72d91dc95eeebc01b147ef9f273cda4712fe98fdba8f0ce7fee0b4c7f1
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_sat.tar.gz 521883 BLAKE2B 38e34ca2e51b05cb1363b8c0948c3087a261b53ed77da15bea7f195e2f3887ab3948dd3ca2a34e3e8abed392a07abe9570ec91c227074acd10106a858107b204 SHA512 6d446ecb1df31af165cf05f988c9f0cd8ee9a57944f1f84ed58316c4bb77c769ba6c7cb4d2cf64b93e2df15755a63746cd3b353ff2eea05b7a8b178ded451f60
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_sd.tar.gz 438202 BLAKE2B dda06f2cb29988fb5875f9581368fab8234e270bcdb1e45e591075dd6cdf2b45d89607375a84d52fd3031c2a52203523cff83628e02de164c71fa021f5464857 SHA512 eadc146788be00fc420702ef49a15b932c52a68ccf7e92e9b0440c48283e0db39a62a9d4d9b2fdc67f62f55693d9e492546ef874accba6618cf96e870bdadabb
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_si.tar.gz 738075 BLAKE2B 5ecf6725ca1e9679a7303cfc670ca070c63c444c72667d06e00787e2e047b75f7111ac22be71c8d30e4d25d652ff6994b92ab0fbddcf8e0cfa3d5220224438dd SHA512 311b39d5e74e4d7dca7641b5f7f84777677985d2b2264a7fc32d3ae96f933d0418229abd7b82af40473a58b8715a298a62c6b00ce36f6cfcd3d8484bb104e95f
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_sid.tar.gz 451216 BLAKE2B 20d9fe24e92c574694803b007f81fe0bb8d9889485d91d7836109e18077a0a4edd482bad3c8d4aeb4040efa66cd4a008db06fec5f900ee117cec350f1b9e605e SHA512 00db0aca282828718a7d1120826dab046e885eaeb679525e79ffb71b3ca38c2c0c15714af99f72b516875e56ebd8de35e5cd84de628e3616d38e3dd93df03538
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_sk.tar.gz 2048598 BLAKE2B 868cfbc4ce23f06020925a0491d0773deceb89446603f7ed53aaa3609321cc55ad3f6da07bad13530c4c598a5e5289934ed05dba8c942e5a7359676222495afc SHA512 1273ab0a26f8193778c29006316f65525b52d1f19b3b32a8f2cd4e39b782759a046d8f6d401fa46a0c2b0b82b3f96417b993d7750298fbb6c4e19e513a7401f3
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_sl.tar.gz 2501376 BLAKE2B b4a945fae7fe4c23c2e62aeec974b27619cb789a765196d48ad587d3540e480464c936f7e4f8830768d59e0d4eb8e78a879100800c882d29cefa58a3d38666af SHA512 96516446e51a1e89323bc5d958787b332b258065aa6e1688159d095f09b9fb8ca080f762189e2acd0174fd6cc4d6d5d74ae0eb1ac58de64b9c2e69e962b0cf8d
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_sq.tar.gz 1175165 BLAKE2B 316795a3128c7a45f133ceaea4444a0e0268efda8b9c21d3b1dda85839bb24730b3ffc567f6ea41a9749932465a543906a312af037ea8643b1de7a6e5b46f9d0 SHA512 cea1ae41d6378f86bcdb46dda2ca2233f02aa4b5496a7de5314ebffc79815f9c2c4e2880ba1d8a348e517a4f2181c8fd0cd83a5d867e3cab2ec4bbb7d578217f
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_sr-Latn.tar.gz 2407959 BLAKE2B a5c38626ec32874b5930c61332b1bf327c380e7abfc4fe4c0ec1d0b5054f108159eea6961848480c6d94d7fecd418fdee1865ce3b599cef40c759a9c5cb7ca92 SHA512 2c6f2035b6b8b9566342ea09366539f74c7628c8f89226929c9acd828c51db309cd005bac69c4eabbcd568c46abfb85d20822b6bd081e3c72519b260260f3c5c
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_sr.tar.gz 2433275 BLAKE2B c82ae0d1503a3a36f70b13ac9e5d845a4eb1bb7e0f52fd730290c83d5c7f92dc1b5fb23c4d0c544fd4c493813a7e82f52356fe61dd24930f336210e62c94cd33 SHA512 d6003cfaa3cc34ad5f3423e8cae736aa67e2f298d08b47647fa37b32eb7eb789df42ff72c4e334ed22870d09735dec4d038e7807d5ba3f792b25e3b255c4c263
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_ss.tar.gz 288916 BLAKE2B 70fc67ac9c121b3cee567d6991eab53e990ce00cf8b800d9c94f838dd89620e202d97b3d20ada3dc72d0159b482bf9b323e9bc0a5824693f48f8143e7c6e2bd9 SHA512 a1728abe81db373bfeb29d315025ef3b3b667a7dc33259affbb1da9580a35523399678bdbb04df096ea5815445fd123a4d69695b52ce17031751a5a938907692
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_st.tar.gz 283892 BLAKE2B 572eeb470a3e6ce333e0121b84dcf184160b790848e68dba46b40ace3fdef51729c3115bf58b124840e49bc6a28d1859dd8d1ba50c8cbbb8c8cb4f124b6e27e5 SHA512 616e280c15301c3a88524f3d5192fd5c01caa72d49e659af14488be345de806fefe3257d0c87be2d7bda93be3221a082f8278d026ffe60279bba810514c2b289
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_sv.tar.gz 2604534 BLAKE2B 91fdc2ce0701ac395fe886a995c6fdb62315bd198e4040ad327e524204628cc460de0c890eba2ec2a058cbe5f6434f02f7a5485b5bae2eb5940fa499822285a0 SHA512 cee6f57df327999c06ce9ea6a37d68ace88bfc7e704d1c0d22d2998e0db5ef0405c6784ebb70149d6a3663f37bcfdf6846b75e6e7f81028b497e92ef9acb34f7
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_sw-TZ.tar.gz 321400 BLAKE2B 30ef892006e6b9f967fc533cd9453d13d609b59aa87d202591a8c27aabfc7057595d3465e21f4875c25a81361ddb1a31fb43f7588304e910ed149dcc197c87a1 SHA512 79b79ca879df2144c77d3b868f19706e90a25f60e8210d41cb406cda8a2ab9175613aa007826932a84a1fc447f799de27b739b893a2a2e6f0905cdaaea2c0663
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_szl.tar.gz 754587 BLAKE2B 62d1d043e78a4cff503344687ed49a17fc37922797ad0484241f09676401873cef2fdc814585e0c7862f6ce39314565b0ab1f57cad78c7fe1b587960ae679e55 SHA512 1d8ea41038e502ed3dd1ab4d2ba4a739d45050b9eb7df7aabb0ca3e56d164be12be86969620c62fb2445084c38859555194aede754816b93fb5e235e11908131
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_ta.tar.gz 680320 BLAKE2B df44480390a6113112bd03012d6f9bd81a5b86b6ca0968bd673ee2b9d0d8f35d45929c03b42f4b2e0eb7cb8ed9fff38d57c4dd012b47a4c5b3e1b1eeeff6bb7f SHA512 72e62bbe3b29336f0b2c2aeee230bec070412f1da80854e8c90da1dc0a5ecae079d7a690fe93bd13e930dd543469a0d4ee0db6da8a9108bcd929990507ee0124
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_te.tar.gz 1085681 BLAKE2B bb7f41cd9575d70ccbb9ff2f949d99b03f47c047b12592e0e91824cb17b8397ca054d842b4eebec982444a76a8d2f1f97d1c3a771cb380fd82cef2f92992b54c SHA512 e0469a46c79349d92da67840f9717d258b4532c7891ccac5b9fec1f56f68c99598fcd913620691a8a9e5d70d79083d128998ea9030aa73a135ed7e17b3f0f151
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_tg.tar.gz 360643 BLAKE2B 2f8cdfe69ce5d3d280a7bf9f4bf588f90da6f5b817aa1d5a9ef8031eca1bb00234660fe4fc22ae187400c7b04c18844db7e4bedc8263b0784f021b5ddb12c9a3 SHA512 e26e1a89614cb652c74e78a9ebd2b98582b8112aef5cef0bd8fb324135bd3d031c1f0c74b5b647a150fda33ea5d0f10a57f2bfa9e3867ca44b9973772064edad
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_th.tar.gz 742759 BLAKE2B f0afbb20841e5d983b44b81bdfc971b68861a304bf5a8388a4a32eea6bb2b963db73be3c466989a4008b19ae6dbe3c211712254cb12d318de962622591704960 SHA512 3d6ccfbf46e0bcc99aa243a77bbb6dac3cd63ae1291f86e0bf84ad41d23f8174665532df2cfc965c00f5be957bdc74c64c727ae90f8922d62b18346621e9a2fa
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_tn.tar.gz 263051 BLAKE2B 39ae2bafdf17a0080fb11a35a72fc7e2dd655d1a576368912e923bfba4b515862d96ea270d668e88819e4e81d31cacc88ed65758a96e254d489eb1e57a6e0d26 SHA512 53d63d00c88315680874e5c65d6e28039c113fc2abc30dad8e955d7959a0ad12b73ca5a89fd330c8a3a3756768a2200911005227881e1bc48319820d0a4b294b
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_tr.tar.gz 769471 BLAKE2B 96938702c1ddc9c47f8d734538e1d1d7ededac3f5cbf3fe2826fd0a0f03726baef3551a555f50e169d11a8b3a984b390adedef1ac1c8ca6e6caa8f8913d4b07b SHA512 0a106f587958f57c8f7337dea4b7f493751409b611b3520f8bb6e5bccd62d01817e8b895783379e5f462575aef95b32ca71495bdc9c7f88a41fc8db102285f65
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_ts.tar.gz 281816 BLAKE2B a9e1fd6f6fae7389f29bdccd9d843501100cc76fe6967c414777f9c8bdf0bceabb76429127a06574f68b372111a70ac785c3e706adfdb8deacda0b856b4b8799 SHA512 c3689b783d7482deef9d3c4fc4207ec21bf184003dab6d93dc9eb2da74b0b527adad278f34e890f8c5a5357b295278757b692da2db8bdb45f0377534049e6075
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_tt.tar.gz 188204 BLAKE2B 1e45e2a00946572549b2c0dccf9bf89deda81bfe8d0c9c15fa762ad1f00bb136a68a22e522deb70b7c7622264af70e55a1be001caa8fba40b973ef79c84c4e36 SHA512 3e9396ffbfca34e3636db40b3691154b6e53e8b53b63141f862cbae57b646719df9d62780b84e972c0cc3d944bb56b2e35a3e66f3cc69e488001fd138dcffa4f
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_ug.tar.gz 547373 BLAKE2B ec2f05a6742cb4b0a64d57678ddcc290e20c23495ef70e565541f065af0b2c6320a00966665cf35c845ebb4aceacf62ae63e96b9baa9811ee621377ac0ebf63c SHA512 a45c7655cd7fa17c216defb8688636a842372df0b46ed14973bd4af627c00bb4571d16b39e5a4988f84fdd404736f71011f7fe86306806b9344a048c928dab0a
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_uk.tar.gz 1640752 BLAKE2B 249aec8fd724f774c3b60f6067dd45eb8e1caa3c5f409d512505bd91ec5f4317e76d2202590484f640c07a8ad2ecf852c1f7205ac497c47913e6525f32b53aad SHA512 d6d33f31689fac55eb9ef7135614b98865eb41520d1ad35e5f2ed10315c410ceee0b37bb42d04b4ad103b68fe8d2b466c95b454a522bfe371736f1f7f651f2ae
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_uz.tar.gz 316847 BLAKE2B 179b3257155d01ae74f8fe3a1250237d3dc3e022b3c5fc081427c6bc10bbcbb532582e1431ee34f87b99a39e277a63fa2eda4c58269b98b1901c7a97769298af SHA512 c9fe92f457eeae7c36538605494977cef5765963d22ec86024cb70b0f4df089de0eacaeae5a0dd16781e23c07fd1a4622bdc703abd883e7a26eb1409b8accef5
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_ve.tar.gz 286099 BLAKE2B 07bdc2339bec31ea86790852e6eb81cc60b2283dd3026d8bdc09710795e12f3c456a22d7dfca1c61e8d25efc24551ca6c947cf7c79a17fcb071673f67eb0c2c5 SHA512 5c1b7f83bbf2915d3f9489c25015be418ba66e21637de4ab6902d62225192c495f8aad78750964eec12da2f06c8562ab83f96be8bfab9ff6b2b1e68313b68444
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_vec.tar.gz 727968 BLAKE2B bb85bb842b375a8cc5b014bed584eebb07de108a125f2f40953e3086523c7008596b636c6a92035829f68a54cffdb5b0790296cd45da0c9682012ea981256f6d SHA512 1b32cfca1222c8504b2bf4aa3fdd563de51a92a9da66a3b16a516a856db22333b6581dd82e883a971332f7974dfbe6db7dda07da8a7dd51eb6d13436a02f72c6
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_vi.tar.gz 459674 BLAKE2B f92c2aa015fa3d258c86e5e546da1c16bdcbe7b51172df5b9d6ac6bbf6420f884d83a76d1645e12f8e35b96b801f5adc950a1212874b21f8e82e464a3aa7b2bc SHA512 3866c794e4eebe366f0bb82dafd097a437a64350a3ab977b6eb1879e473f9f843ecf99356388108b52c0c5dadc14e486a1820e7460237ed185eac52160662087
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_xh.tar.gz 293378 BLAKE2B bcb5bbd905ce26a014e1fe8b8003bc96e1a4b70eb47798643a0d6f744bebc25f21f7bf2a349b82d1b6d46cb5524dc074148add0d12bbfbacb9ab2b6b17f9ee4e SHA512 9855423340dca0fca0f20bea4c294aa4a5ec2b8f6b79274e6553d4a45033c45f5b343002aa8fb37a72fd31b7ccddeedb1390bdc96e0a4c233ffd81383229212c
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_zh-CN.tar.gz 830227 BLAKE2B 59fda81d8ade052a70f462722e0bfbe0e46faba272a44bfff6cade9679d7e3c35d20b8b194690f08ca28980272a27d3f710d99c93bc7997b9ae37f7353a47ad2 SHA512 4f357418520cc0ba6e8afd7b662885028e72bcd81a326a0118479deb38139f7dabb4cd7758e3514a7de7f1ebb2f4a9d9c97e72ce72bbbb4eb7ebe57264a8a938
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_zh-TW.tar.gz 826831 BLAKE2B ba25c6ee66d62e7e468f0d2442a9dcfc66563a6af82118248eeaa9994069de3b415747a2173ecdff5023a7454530ef0f25dbecda7f61772d871eeaf56fa3b253 SHA512 681f92c3477548e6b92c29a94d683550bbd81deedd86c03e91f824d3e462dd89be6ed57bdb7b16dc75d08e4d37f1ea0dc76424629e8f079352998f1b06042649
+DIST LibreOffice_6.4.0.3_Linux_x86-64_rpm_langpack_zu.tar.gz 323768 BLAKE2B 9e4257fab4113ae3ea66fee338599d5e95d5953c47417134c27e907e361a6fe21c36425b77c924a4b319fa7110d3ce26f00864ae58ea493a25bf19471819a57c SHA512 9afeb014a84fa2fc260f02168b12d9a8101e3188ab29823d896782a547739e4328896fe40b7720dd10b9274d1a6515169f963b34ffbe601987ee00fc4163f180
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_helppack_am.tar.gz 4385401 BLAKE2B 88904bbc6a995f390f2222e79ebd106b4aa7c0290dee44dec69276a6119e27e7ec739c55c31ccc1e75516451b51af6372d81b74ec0fc6e0bf40914ea34901d75 SHA512 d22ecedb8c4cbc375512e1dd012040caf0f956912fe58d1ce0406785c7cd354a004cd2d246644ea5583bebcd52329dd20c1103819b00eaaea4321e58c9ce6c15
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_helppack_ar.tar.gz 3848914 BLAKE2B 214eec31c9dc8a56f99ffb6a7b9b0d3546c40b6bb801f99f67c527e3b83e908a151c3051941339ebbd2727a939448159b6cf6050e7fc24a6e308370de8820bcd SHA512 c30412a02b2430106a85e465695e39ff1718b4b4053408924faea289b83f977d4f4b9be34e67d48c2420cd72575d3ac0a7fd3b83a183f149169c2f98d861eaa3
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_helppack_ast.tar.gz 4086749 BLAKE2B 72ed1309a2e8bffb8c3bfff67711a5ce315571fe07ded3b85acdf0d40ab196da6297212b635867860c36bdf9a8d5b1d33563a9d572831e02b151ea3847f22d0f SHA512 04fcb5bd7acc7e31f419eb24b488b762280c8a2cda9aa17595aba52944596ddc24d89722faf138bd9c69326c9b761b76f0f2c41f52cb8098c13cbd65a32f48a7
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_helppack_bg.tar.gz 4446133 BLAKE2B c41fb8daa2acb2c0987942d891918a36f26e429c24c0ef48203456d7b90d1a375b1eaf19ced6b88abfc2cd7a4cbe1d639f4b17e1d13d2286b8b6dcf71e66fb19 SHA512 27e7a66743591ca2d163ccff17a9cc6f5ca962d438b8e71a5067547ec9f76321c44647fc7ebc5b24d399b505708b5530742b3cd8a9a74cc2eb6c58a375e68281
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_helppack_bn-IN.tar.gz 4548368 BLAKE2B 45f9e40107bd6a275278847366db4ba4b17ff92a61ec7ebd5243a4594fd1ab62fb9c1391360552ad912e70461f7f909fa77134cf7a44d6162fe7d39a22300878 SHA512 121696b41e9cb96608678e6511e969d3600b5081181bd5c332d1794bb35b1a3e391b0428aaaaa847eb5fac181b514476bb97e72af9ebfd17a315c9efb2987ed2
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_helppack_bn.tar.gz 4229165 BLAKE2B c720050cdaa9c247444c159127244efe99f44471c829883c49187d9922f8215ed0dee1d4bedad28d933fff21ff4d7b0c7394e646024098cfdc7b6efa6f8f6ff4 SHA512 5842e35a310eb91316edfd86069ec680c865ab86ebed68f5b9a6d31666c303cd5a65fc215caca5cb018d41e29c5e5e7abc2c6f8f8f43b0a4d0323ffaaa58bab5
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_helppack_bo.tar.gz 4234104 BLAKE2B 333c1af6f6a55e17e8a76447ccec23fdc12f82b64dc51e1a087851789027e58431fc61b4edd7f5aacf30a9baab25136b2a779313c0327a0c57d76294b6ff3bfc SHA512 529534538fd767ea3d01ecee913d3a15da96828b3868b6d264499764d1832b73d1861957b196649fa53653cc082a022c57bd4bfe3e935872f2e2d7ac33a1aabb
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_helppack_bs.tar.gz 3969911 BLAKE2B 4db986542dbe4d120be75c0e80989ee086bd841e0c2248130aebe2d5386ce6b48cd3a737cee57e198ed891bf7346204f91c5b749f5ea5cfb7b9424c4c5ffcadd SHA512 5d033220d21e747550d8cb0b61815f5b80347a13ddb5ecbf58aa137937be7016f87775da959bdcf6bd3e8996a4aaaa679e328166dce35668e07b83a2e5d3bd40
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_helppack_ca-valencia.tar.gz 4124167 BLAKE2B afbc27952f3d96b3614ef16bc39408a15e4e62e643ba4c6dd41147a53d9eae459d772236d9afba76c19af439ec01127fe5cd2035e0675d377f1609804bcfe9cd SHA512 b81bd3f4a1638e4d3b5200aa83980c00ba47a7f51edc17e2997ba383d038b65f8ad5e3f2f40b3aa16dbd6084be1f325879c831bbfd4394bfdbdd2c4703028888
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_helppack_ca.tar.gz 4121676 BLAKE2B 4c0ea8d84e4138a9d71ccf004ec974505e5d3f354da00345d07f0c916a03f30f53bebd17ce28471f8cb8c07401b684a5ab5280a3191d11531f553a9574ed0ee7 SHA512 e7e2ef4f53b0a1f4a96f6db8400a97a5bbe12abdf5425af3998a45d2a66bb825a3cfb160fa49384368c56b3bd9af8f59f5ddaf9fc0be674a3a48bf6139c1fc10
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_helppack_cs.tar.gz 4139773 BLAKE2B ee1321116077a6b4fa32cd21a67b4b3fbfac6b390bffa37a00f3d8ef2ca74e5912f595682d73a819ba49368065392a7f8a545c1bc588343e7bb373bb59ced9a8 SHA512 037865fe6aed2eb381ab8f13063e898313a8bf482512ae492cc780bca561033a538125d70300e5e0169fec78debf2ccfb09e7cfb882ddb986999e02e57ae4323
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_helppack_da.tar.gz 4058141 BLAKE2B 963396fcc00b66f18d1e5a244fd14de242746869dfc6906e9148ab64c6e8be70e760aa764f912d3603c54357df083afd03f76d985cf567828f6e780597c06158 SHA512 d794547dd7e7c649b3cf5e5877777b9020ea233292a9e180a2d938e7ed6ef12b4e00b44abc1264bc1cd1369b12fa3e5f69e2e19a25ff077cd718beaad533b6ef
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_helppack_de.tar.gz 4214355 BLAKE2B b715f4564f846003a0eef9dca69e8117555dfadabe9c81f7c09377f8178e993d27e1fb8d26fe219eb38335349250130403d82a4fb6a64bcc06e391c1e3f25043 SHA512 fa357c1d53c8367569f518fd07625e0f2b680a2420b1deea495b9fd5f78fd8bbfb09df5f087a8765fc20c49e6d8317a4b2a4eba2d7d40d141ef60b9601d98efa
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_helppack_dz.tar.gz 4377472 BLAKE2B fe40dbcc71e1ad062995bacb5b0836622600fad1bc411018c67c98e67cdf74bb9e27bb81c7856ca13cf96692ab22ba192e6212da44e37edfb5ca74887935bcee SHA512 b5c73b9640d82a1b3a12f5563326a9beec40055ee07fcb8ece12288cdaf8485c08b91b76a36c45d508d0a9e7633162c166d77a1a76a9da3e55278f0f8babcb1a
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_helppack_el.tar.gz 4876992 BLAKE2B a07dae3fcd707034382484b12a9e4d61936335d2d6606280fded24bf28404718c571da9f026ce271668440aef8482b9815cf04fa380b1f05540e550fa3f042de SHA512 78ee96820df22ea570b77f73874ace69e8c77afe9ad49208c2e5f31ce08a5f7de1ccc96c9a2cd0505dcdb2751a7563d63fd6df35fda73f7a46d3f709a83e6ae9
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_helppack_en-GB.tar.gz 3856814 BLAKE2B a9b5530450713b5e37a4c9c7ecda9dd6c543866988248e0e7d48dd20a64192da297625feccd92c0e5e353318ef7db594aea1c09bab05553da12033a760fd8378 SHA512 b8e32859456b59286eb2a84cc7de4b971d6606ff1a18c05c7f4eae18b107c7415b8720105d09b04f7c5770339ffee4543ed7cab39369b0dc16ec70b939138200
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_helppack_en-US.tar.gz 2530315 BLAKE2B eef47619b1691eb819b6dd8c0c4cf4774460a0637ad5aa9cd70493806eb1ceddecf13367c1fa359f69f3afb0af823caf3c51404662e10cd9ec053e6e17a768fb SHA512 2553c1241d2783f619ee3f314156571d4415140f08630e73a8a03ef7bb07a6877da9f4e2df873f9dbeee73cc7831d1fff8fefdac2a5f3f3ebca6bf66c582f09c
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_helppack_en-ZA.tar.gz 3848372 BLAKE2B 8da3a6aef18174a9d46bd2617cbe2ead745167e0ff01df8c7c7eceb2ae4a84f4cc5f229073267e0234f0cf8b4a6639dfb7c2c93b56967da72eb461d090d5119e SHA512 c8ec0f71f57235cb073eeb419203436989a26c25e86b73988a44a17cd90db9332a92fc17ddb794d9b19beba15b2edf196dcacccc4c4d67b1d1e7748c09d96d7c
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_helppack_eo.tar.gz 3956602 BLAKE2B 3332bc6e4f0940184e65d0b250a2db3a9c4da9dd90539c93906afbb74927462a3c55ed91c102628d42376bef5c466200daa70265ba3cf57ce73c667ef8485c21 SHA512 c87d1552c948be3feffa20d69d229e037ac0260aec5f72c508d347a88acb64e2b24b2e174d237d1c3b01fcb37a917695a2c482331134132d69365586620abe14
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_helppack_es.tar.gz 4165751 BLAKE2B 11e3708cc9f64dde0b568132742d7797cad78c48739df0c737472cbbe14d45fb59ed95158e59dfc43a2fd56e3446280578c353a872199e0c5138f7385e842898 SHA512 6e847d101e482b0a767e68f7ff6a9bec2c46de53990e37cd1430939ae8cd16537effe09de77aa356eb590e55c5bd9f7f366db06219fc37ef01983dbabfe82b10
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_helppack_et.tar.gz 4001381 BLAKE2B 3d718e24630c777eb9ab0175f507cd918cd740e9c6bde6af3482471e7695924fe62facf13dfad376c988d95325c4d1db30f949560064f27feacb7f899219a33b SHA512 3cf000b25287d1be9d340fd86ee445550fd2924f8d06363b6a7bcc12f1f8588cc45274e7ca29306c7472851f48c9341da5749f8ada777397fe35de36c534b94a
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_helppack_eu.tar.gz 3986078 BLAKE2B 1baf6a3c7518a2a0933e2effbc6d0bd8b224338f8b14d7302934b6f7d00f1f8ac957fb7db538cc3bf2ba990f4a696e6f9b107915b57c052c5c93f38c4da63664 SHA512 ed5e87cb1ad2f6486901f180703a49e61d37e7dfd92f9911f56b4aef8bb85a1cc8ee82531ff462f78c9b02cd154dd8e69eebc1bc9681820e1a4eb0348a9dca09
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_helppack_fi.tar.gz 4001097 BLAKE2B b40f976bcc91bb2619327850d57e682531b55b9786bdac49a6a9c22d9a2c9af597c5b569bc65d314d13f77d1e255cc815a39454adef7314659f74a6f467eddfb SHA512 668b347abbfbadb96190de581d7e1c848d59e226f34d168fbe1b43d0797d1226323ca6af1035a4592453ecae5b48f96a6d7cc9a3bcc489f0b5d2717d9c2b8a9f
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_helppack_fr.tar.gz 4141406 BLAKE2B 7c3a38e9e6916aaef4ef6538e0cfaba7120680b8bb8fccc20455ebc4130a26bca965af6dc634d6a992a7a60f3f5f06eeae606d5cf866f09f4d6149b5d9458f89 SHA512 a3194ca70b9a55dbe11685c5c14e2478bc8425f7165697f13055636cf980c5db7a898b6d252a955a34718d7546e56959b7a4c2e600a6b9290cf55e50a0f968f9
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_helppack_gl.tar.gz 4090425 BLAKE2B b23c8d99e81b9cf99c4f8b5340aca874cbf8685b45a146cfff90fc771c8a2371ce00ed593275c7b3c62f94e7a95a1e915bcb1941febe32850e5e54619e89a9c7 SHA512 f068d17c78add986a8c1434597dfacaf24610f5382d7e843e561c320afdffc8b651d84d83f8bb1088f57bfed9083414fd488df795e17bcf4bfff7e86085eee17
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_helppack_gu.tar.gz 3934549 BLAKE2B f9a79d5cbe105590dd2e9f90d1eb633d2d48335851e4009f24fcf76fe9c0b39a60039dc39f7419f1d6994968ea9782a4f8d39c1232d32a0e3ba92219df50fa7f SHA512 01b9e213d4fb4443a1452f5f780a7cf3b2c0ace83efb86e73915f8e334ec47c20edfa0c21d67b24b82132fd8f83cd03bccfb17e77c33f2ab8c81a373ed2cccb8
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_helppack_he.tar.gz 3712106 BLAKE2B 894d403dca4b179a25e64d5da22562f9ce174939b019e06a89f0efe47d149e24509193a1667a4cfb6a47253576d6dd2f5610de04e560aaa5963f0b17086dde92 SHA512 c97d5faa6640f9a0902b96e34e7fa9cb885c8a331107097784626466d32f246c002989601aaa382dd6b0e25d4ee2cea8bde85fa868f4e9aff11c46af3dbd6b4b
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_helppack_hi.tar.gz 4062412 BLAKE2B 9e2125b1b41fda7dcf6bb98bb2316b63afef7bc9c48e4545fea8382f54c2cceb2e2bec077b611d70837dc3390df0b88012584539e5039d0e0d6d1716f821ae94 SHA512 87cbd8c7695a4a358f35e020a5073847911fad030ac355c126cc52de69fb773ce9cd07352e723ddc157b331d217078a6443b72c4709c1323b829dd78cb817d21
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_helppack_hr.tar.gz 3972411 BLAKE2B e98117cbdbd1cc0024eb65b83cc9aa90ef8b5e0e66854bc85c783984eb195908418d2d0107a1a6632fe17c9cb9867db6da21a19c5987c1e18b06bd617fb4ee5f SHA512 e8211509c53d2b8c15e62937f5ad0e24d312a7393e1844611fed13bb4653e04584e6e73d7ff72adccfc09b29bf7dbd5677bc0f204c40b4448de02bbd29cdafa2
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_helppack_hu.tar.gz 4259803 BLAKE2B 6773a3627208d8a27b1f9869ac94ad959d562ed20dd922aaace8dd36af5aca56c26384f3144b794812d8adcf7db77678137752ee5a23e36176963b5474896856 SHA512 72a7c4d8de2c7c51468d2330984c3bc42142d89e8148dcdfae6c609715a347b3b56e676991473ddaebe69734ac0a19dd278929abeb81def895f6fc5a7d0de620
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_helppack_id.tar.gz 3942974 BLAKE2B 759f719cab13abc22dbc38e02f05b42dae8bcd9fd5a4b79d54480a16115ed876304953357944e18dd9ac749ed0830b871dec7cba7f37949897eafb17c19eac7f SHA512 22bec60d72ddec9c50df701d0535f2d82e50686d9df709034b160a547c0b21d40efd4eb05efdd20a250b14f4dae961613ae389a4e63932d54b371efdbb219d90
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_helppack_is.tar.gz 3992387 BLAKE2B 62208b2687841af35100df22452e1ab7993aab1bcbc9b44fcea342157f18d58f2cbfbae3aec02ede74e3bf815fe4ff7b3d4f198584a9d2336069f2782ccc551c SHA512 64d8eeab51c0b1588ea29ca71ab5f1c5a4504c9e87a727a5b03cb239a1eb137ffac7b8a6d40f2df4c763bc9b4c37ccf8bc11214db67ddfecbe248b330126c832
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_helppack_it.tar.gz 4070620 BLAKE2B 0d2403b14185c9fc597df4242fd2190da1ef2ef3776756cc5c8856817a3a667ca35997fd9ce7307ee20e23a2409bbacaa4de229ef7a5a15555364a6b0ad3fc24 SHA512 dd51e1bb67642b5d3d3c3051328f3e5306834a11c03f702786b65703423fbd5539abb365f2030606c6ebe6710a7d615070d02f6b776fb5c6ad00cd664dbd1dcc
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_helppack_ja.tar.gz 4721009 BLAKE2B 657e23f12535861c66022dfeecc53c439c975d38d8dd06f571a1f425f1fc461d8f005daee00eeb44c0111f1cace738f1993f9a53ae1aad13cd0022d90256f426 SHA512 f8128b35d97d03a0de1f04747ed692c3eaca99b42b09d160b0c1b692d46ca5ea02e13ee74b7df79e30666f47c4a47dbf47413931fc60cf108bd397c7799e66c7
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_helppack_ka.tar.gz 4174861 BLAKE2B 04bee24aae74ff00e1fd1b44a04b52b5b557c6824e6f2d79b6c56a0b13ab95b8164f866b9ad0a4698df0bf4c7eb59a47a9dfa1b00b9464668000a6d7a5be3e14 SHA512 263e0492154d72c5f266f46aa52b474b4a17899e48e2334b9e568aa790c7843e0e7bc410110eae651545cad47424f2c62cdc00bcd3bebc4560003742d103961f
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_helppack_km.tar.gz 4516301 BLAKE2B fb141e71c4edc9aa51bc48ff5c969af7885a4af65d7191ccea4e5127aaa9988277bb64585db5a58fa8764b5f2ac40bbd1ab6efd980a109039f957c584c654e81 SHA512 2b014dac8527df5bc1ef52d6da5da57e047671221bf48c26f2ff5e62802a8f5fb008d420472ab209b05596f666d588389ca2536adbdb14a5d46ca8ef017d69fb
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_helppack_ko.tar.gz 4215127 BLAKE2B e9ccbcf78194d38cb13035733950823444e3181171491e0863c19e43764fbe6a7a4babe2956cff3d512a26a0e2baec523480806bb9d1df8d30065706e8e65541 SHA512 7cdfbd516b65b485ed5b83af026b2af837f1bf56791f52816691e8ba8f1d9c6fa5863b11da557ae354164c924b065688421da8a579f5dd1bff2fb9c26741c124
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_helppack_lo.tar.gz 3933584 BLAKE2B 355c4561fee682cacce2a816c99f5ffec2f8785fb267daaa148177b908a02f7631a14af5fb41882fdf4008547e05a41fbbe97aad3ad9ef925a722ddf5a56056b SHA512 51308b2e1545dc97fcdf2c4f646e844564d84eb1ad69d900b174550296013ec3e3d82e40f50e84b24065a7505147f2b1e31aceb57c2a17a265711e18e5dd1aed
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_helppack_lt.tar.gz 4172957 BLAKE2B e83aa5597da06b3817f855eb3da5a288b34d8d3db5c8e9c2e9b030d0100928afc5d45d94516732d557dab250826eca12662df27c34fbb4232794fcdd61214711 SHA512 a1f80822dec9e1da4fa19779f9fa688fdb438dad094865965f25f7ed919847210d2333587ab50d1d8bf6b4688e71c04ec1a73817a8439cdc19e1ce62998e7c22
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_helppack_lv.tar.gz 3987499 BLAKE2B cbc7c77ed846e46a1d5afc311a40e99fafc65698b031ddcda23f7fa8ad6fef6f8e5869058615e04383ac66833d5742b09e1b2f36c85c999ec693e4ad7fb67c55 SHA512 b0bb354205a66435b67662cf69f716fcf4ef4e34058ba0f5d6ac255e1c076a50cbc65c528b34db4f9cf4f80b873cd8c92676ebd0ecce8ab2ec173b9a04a30251
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_helppack_mk.tar.gz 4026169 BLAKE2B 53bdafe4c8b9ebb9235fbd96335b9b90936f0197e7cb16779f1399bf12c153c438f4dbd23dd620c0485cdbb3417db8eb8166da997d067e707ab04a8bc2a7591b SHA512 9a1f3da721cd7b6dda743625c08e726f1e2bb5b1112dc6a188fbf336639e5265fe4f2e996b772964fb66984d368d3eea1dc9b91111cf0b7c0d4e0fc168b89284
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_helppack_nb.tar.gz 3991799 BLAKE2B b07c3d0cb94f1e2529d49d6470c26bb1addc314acf82995d8b3bbd4f6600f5644cf8dcf2c54349ddaca05613f4a8458262f25726d5e34b31c1ed9891c280dbe1 SHA512 cbda286c4231f9f5d1fcdeb661e93c53e2fb0ad5f947e4e83087c94d418c22d7227aac9743f63e1a422ad3bb0b2c9561fb3898f542c7ca03c8904d24f24aa437
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_helppack_ne.tar.gz 4264410 BLAKE2B 0aa420265d6f8dca33ae3dd844a1fb4384a59dc3edb3f3a2e5d57d842aa3b8096d7b95d3eec3ec2aaa6976f42bdd35e3bde142bc193e444650c75e6a93f5a164 SHA512 cffd6d29bf8a139f6bff0aca3e11681fbf4b838b13ceda97a0e08631825f64d182068217ea76629a39f49b9f46db1d46d737c7a875906b5df94888e2894622f9
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_helppack_nl.tar.gz 4102334 BLAKE2B 19def58494cc8cbc1f4db7b49e61bcaeb001e64e47767fb1c2a18ddb7d284a4378ebb6e4c621d0a636a7c5f2c9bb43c5808995d8e3b3ad1520fabf33771f4f23 SHA512 2f68aea6033301dba77da987e45e7917ef605f6ba8b2a9b5eebab4369e13e5e63071c70e78e51e1e47ecdd393a01840a2942a0fcc534c39a47b660231f8d84de
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_helppack_nn.tar.gz 4159341 BLAKE2B 27a40f85f6a5aee3bef865e319a1fd8e3a720e7ee4b0cbbc1dd7c7c25e99e0bc9801612fe69aad7e9cf1cc55189ddbee0d5628f3155635c48cc96741351ead45 SHA512 b4996365a76df051a70174ae007d5e648a2c4bdc83ba58ee93c4e6e2bc5ff9cb4537a55d9060323d08fd3fde56d3dba40ba9e9f9d0aa49229cab71bbb4d637d8
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_helppack_om.tar.gz 4040429 BLAKE2B 832c9de5f1123f41687bf8bd3e0811a78cf784dc9f642e6bdd57e97b9513c94092d3b5c9fd83314a8e9f5a978deb85cd37fc99ca59a00073f896d1162d3f09e7 SHA512 bce36305faca0813c04e50f17f288d2c1433f3d53bb944a7c442dab436ff29dc602d5162aec7120f8e4118bf626cc8bc78d702918124f0fd23f0f41a4b8ccbed
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_helppack_pl.tar.gz 4288436 BLAKE2B 105dbb91b12ab4b1645944e27d84a9b760bf48dbf3442fee6b1c9cdfa62e8af5a521bfac90d826e773f3a3ea047ded73caedc15aab4dcf50405f6897d28e2024 SHA512 bbc1ecaad144aaa8cf7f8975656af083ac8f4dcb0444c2953c7d7e5341658b4611b31c89c6d8c76d1b776a9ea2a978b9ccfd27ae9d6d211b1b6a7324f44ce9a6
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_helppack_pt-BR.tar.gz 4113706 BLAKE2B 2a5af085a4a699353e0313bbcd09d17910de02eeb56cd93353aa9cf50cd40723e5a475528b71da5212e259c7d9db05dded8fbe86ae525a84f1de5b6c13afb88a SHA512 214a316428fefb5459caf18b1264af8bd517732663c7e63b4f6d1dba7a40ac90f2bc17107786fda181e11cf55c8eadc8ce8b6e6782ba3f151763f4d335470c1a
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_helppack_pt.tar.gz 4092882 BLAKE2B d7faa0c2bb7c3cd66c133199d8124e1ed58dffde483a6da3cbfd711ab68694f69e95bc905e062e28079664f7962a41448e53a34d92f108dbedc5543b7f21d8bd SHA512 17676262860c4f3ce7b1f50ac4e9289cdc3fd3636d977ec5c578efe897b3edc6d4bc6700cf918ad0cc9526145bb719c8f44375c738c50533c080d3863842824e
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_helppack_ro.tar.gz 3883562 BLAKE2B 22fbdbf4a0a3aa4dceaa108a2e0e7880236d3901498b657754c6230cd64c8b06d275484d07f2dc2e207712839b307adb7b6cfaafdf8a94a13d2951d2337c863e SHA512 921ce454631edcc260172c3d78675b987ec4adbd950e50f2d2cab16e5e9abce208835b47b20f72587651ac5d9a0292dc2bcfc7fac5cdddc76c35786885707c1e
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_helppack_ru.tar.gz 4431595 BLAKE2B 95947fd038742dfce8900ec76e04b45f99c3c009d1d4fa945316cf422e10487134b2160595a7121d70cbc96156e30f968360aa26e93bff547ea0be3b39a90b62 SHA512 13e036296ce5bd08d22b99a9dabe8e9931b34b16c924701ef60e044c2e40fcbf9551bf397bb6f38fa1bb526ea11b4023241dcb065ab97a70d60171be3b45f1e2
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_helppack_si.tar.gz 4165474 BLAKE2B 0588077c9fa153b5d0b2dac25690c03b4e17c415e8eb9ff60359269a0dcb65b9c986b4f2904dd0cdc8f0a4ac0a145dd8726e0aabad7cca2f8c4a48d14e1c22e4 SHA512 f53c65e64774a5275fd133f108a1a14ef927212a125f25559df6461c0cec7a0be5337624bf46b50af7a5dcaa1a29d9807b12862053fc44c95cb579ce1f0835f9
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_helppack_sid.tar.gz 4029503 BLAKE2B 2df5e4b94554eea5f2312a73c41fe144d4a166279af14b62bd9d22ccf4d9712f72efb43a37a495a2158a5634aa67831945cdefa8cbc21f4f179f52d1aeaf4131 SHA512 fb2b7b67bc8fb308dbcc59e44364d55db23ff3de15d8671ba81246a2ed5cd30f982814451c87282533f9d69af9e3beb171576df6b7294dbc8c0e7f60dbd6f69e
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_helppack_sk.tar.gz 4185442 BLAKE2B ecfedb1c6dffbf9550f61cc68ed278e3ccec7483b5af30fb58e40836d34078fe58523bd469ba60a9f2bf06a5489e871ebedde8f3d08ccb3e14b921a3fec6f981 SHA512 ba05445b2e72fec51eb6dcb24b6e4cb0ca8b57b5c3315702ab7352c933b65041696f7506fc2122107aee35591a9f95ae27f9652a5f22df090c61dd5add6c3996
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_helppack_sl.tar.gz 4055873 BLAKE2B d018bd517c55b0bdcb5c8826408833851bf8b59bfd057acdfc2b08f40a228f442f7b59363a9218e8b958e75f245110c13aa7982c8969c954d1af7f2dca62e9a7 SHA512 9ffec3ea881a770ee6ed5c4aa13242ea2c1ff5b6d7c0903c076303bac4d3003323029942d3da39138b4486990f4ce163f75881129859eebf44ae47474ba2c36b
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_helppack_sq.tar.gz 3943381 BLAKE2B a3a3bc67b7c9bf2fe139c876086571be84e8889465f91ecafc84619b8b67172dd8387d4b84e1724a856565703d7bbca40f112ac337ae95249a1698ca6bec3b0d SHA512 298f92f293e7623c790007a9bb673456c8b7382f77e5e03a63281c82d737d93eb5e07d14b4912ae45ab851d524fc58effae357dce8546788b3947bc1afb79069
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_helppack_sv.tar.gz 4031978 BLAKE2B bde0cf503d14ff5547c5796f9fd44097a55874b3e81c64c109b7ff432ee096176c565be8c4b8133f8649d0054439470c19728c9c90a7d64ddac09cee4d2433a0 SHA512 44bf75c17b6afc91101a9bfc73f3c918b1b48ab758c5a41292076915266d546613adb4d756c6ddb92bf31c79b8dade12ef1f1f1672902f0ec9b93c8dbe1d8674
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_helppack_ta.tar.gz 4377305 BLAKE2B fce14d87a40c93adec74eadc80265eaefa03d652e1e35755c24cab790f3212b0b8d6bf718d3a1008c1de998d02aa875a1e6412e3e71751c68c5253fe49855e7e SHA512 8b3b3dbc32f61150ec3d8b4195fe48c1991957ca6b5bbe234a21945633f3d33c61b52d39b64bd442eaccfa7dbcb990f00372cfc9cb437d6d0de573296b108e77
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_helppack_tg.tar.gz 4003032 BLAKE2B aaa780f8c63fa9de9857ab5c7a6a90c9307e89566abcbc5ceb26d8b7e98c87a399d859cda947e98aff98cf7bb958c50a48b4e1de716aa35b5b636c62994a6ab1 SHA512 cfb245470e2b20d3277306f722c85f818b52843acdadc0690acfcf00d9f716469fe10662ab30ff497a5ae4a77d3e9804ac1080a1fc42104f9794e8e67fe6f020
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_helppack_tr.tar.gz 4104218 BLAKE2B 2de0a5bd207b87b04c5dfb58d89cd17a85f05b1f865af538211fa874d8aeda6b28d31bff2b1c419eb07a3468a578556cc303ab93d12dad21398ccb61b318b5e7 SHA512 471295369c39a1641bccaeffae38bbc20640e0e8cf70cfd57fdee87d7c62c0f63e49a8fb86c99afa0d86ed151fa6af3fa61b2019622111d494a817cd66ced7f5
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_helppack_ug.tar.gz 4107194 BLAKE2B 15088cd55016852749c4cdb77a3f396fca941f2ee3c23ca8878bf0ac5ffbbaba0af842dbab50b33d41f16c998fc52cbc59e41a9410e58134357efadf69cf5a4c SHA512 1179f090356731f09a78be9b444b25a43ae15a3562b4674af196144f6e55d236fcc622b902c512f9c105a592a3763cde228ea0059651148d792f55cd3c1f8199
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_helppack_uk.tar.gz 4435754 BLAKE2B bbd8e862feac969270793a10a3226f17f75098e26f1cd2612d5f9e122ab7693110fc9412a191c97470f895d60b566a9ecb426b9868bfe877ae6d6720a0be6598 SHA512 ef365c56bed790ac4f380dd3bb724321b76f9e2e23d2be9c557bef25b8b46475ffe209620e3ef1e4b6433b7999664d524d48feed95a5328a9056766ea990da67
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_helppack_vi.tar.gz 4076831 BLAKE2B d4e0f19c25aab3b8320cd0044bb5db3265ab2e2e6acbba95f60283c3551c473a1f2beb1fe5a8c912f3743c1eb00ca50ab3a511d015db1006e2c4b2d7f24e3102 SHA512 2bf02c367fda10b77485755f3c27b95ece79feb4f35a1a5f06045e1761cd54d53a4fc8bce9cc2e077a7f5aabfcb727bfa9c95009f6e852a544fab6ffa666ac8f
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_helppack_zh-CN.tar.gz 4351010 BLAKE2B 37ba448ed8169b4fc3abbdb20be1143cb463748352d5c4184c65a3ebba39825056ff6b10baa828ea7048eaa70e86e95fe0a65c34f2a9c0553c95de6c434e0b68 SHA512 6e61247f4d2b0be44d7a8000f507cbf33e539aeaf86c7813aa99a419086d431ea8ab5458aafef39ad979e9f468776a7598dc2fe50784688adcee0f9126d93c03
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_helppack_zh-TW.tar.gz 4456977 BLAKE2B 04ec776a576aa1e9d283c3e74e59490c421ea8130009b23bf4c56938b96fae47cbed8aa5455c2b06593fb7eda3519ba74d03f33f12162d14d71e58e8378f6e7d SHA512 3f1005be48f22abedfe6ca116c0ba063787198fd3b607ab0638d4df496ca7f29688c2a8efba8184fb806c938e87ac4bbdeb1a28c00bb0456491728d7f9b29efb
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_af.tar.gz 1507424 BLAKE2B 7e6a237c43347f046579b0079d2b045fdbc76d012349ea87264080b7eade3c4a736f863e56676ab92f8a3b5d110ed0f098e6c29eb4c8d7f04df1d3b2e481cb7b SHA512 c3dce3ef1b8f818165ada0e174f4c6754d0baaf6f46351b6d37ca645b34bc634198e27c2b1d924e54d5b15dda27b0ca023f57f10e61ece657ad5ba2f13d2012b
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_am.tar.gz 984068 BLAKE2B f4f59c5289a22802d1d5f7e5ff5aad2d2546b450503e1b2614bc94e56ea9d509579a698d3c599a9491fec2215ba0a8e832db9a2d05c1ca15fcefe12b47d191c0 SHA512 5e890f86a7e758201555888bb201b873d726a3d16b81373d1c7a5f6cdfb9681644bfda5baa32327ed091e1f96f311411626e693441cecd69b1ecd4c2a2c0f1d0
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_ar.tar.gz 2449681 BLAKE2B 1095b28b35ca515fbbe92ec7d4e151b354b3f7183d72d8f775833f50d2bae1dbbf79d6fb216f691201142506f42b3f22fb60faae5516ee8e24df04332108bbad SHA512 d408e6944f122992adac3b1e64487ad346006fde1c82ca2e53585f6baedf3e7f1ccd494f3b247d65194b262f51276bd49157969228b5e639b13dd9dec5e8bad0
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_as.tar.gz 528624 BLAKE2B 4e0c5ba8a3c1e42e09a949453635ca44dc36ca40413a455e6f1560f2b1ef3a13ae1ed045f12dfca533db20a649134d04c43b9fa62d0748d60d99cd21738a1140 SHA512 016359b8b32a8b0897accba28937ab6aa94774db7e4001a0f198f3af19eb463ef65dbcee0d56535e10b05c471b1e3a950e7ed1acfaede32125a754ba75ea136b
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_ast.tar.gz 578171 BLAKE2B f44ef9b3f2c249b70dbef6a44d3b82e4fa2d3a1390ee1c378af284204fdbcd9b297569c1a64511ebeb7850176483b7cc4d1d84b7929380bef46d4e7825251f40 SHA512 cb6a84c02da6942addf5acc3a479bb287df2fbe0e9b454b1e31cf95a77de6a327a303059337432150351899657468d140673599bce397591f3798dc15540d43d
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_be.tar.gz 1045001 BLAKE2B 4e87251b22995ce749181104fe7558aed0e6e094db35010b6b2f9b10457de2f659a0716bfed265c9db517c11f770028d6ad57d15bdb465e1c242c7314f62623f SHA512 b83236879621e922d28045ea0c7afa650c9d5eee6786ccc4177cea3b33e1b3090e03b4728f41f0ece33342dc3f773f5d06bd1968b077fe8537a1ac5c7ffdd7dd
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_bg.tar.gz 2770500 BLAKE2B a3e317b280882a764cb16367144112808fe855de21f3a68e5d4a87110673d3e82403a8bf8e9276ac7bc66b690a5a345917c0ed7afc7f182618a9fea72721854c SHA512 590b4151002e16eb22df53b1b71535aa70380ddd343595aec1ea40fc20f3a4fb964e28a5a4f488426e2bca550e21b10f7ff7bb4f43920f6a170a1bfb0fc25a51
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_bn-IN.tar.gz 723226 BLAKE2B 106bbfb7a65cc37a6d9096cbbcb322946c58f08ce46cc0282a958770684f097ddd7f1c2774049c10e6059372a4d5e0c4c3b3ba592b5961ca6b6a8c068897dc09 SHA512 b7c2647fa3d83a4af159088e174f356b4d80f60024a14c4ae19d7c186fd97455c69f5029ece437f85db32d075b9c112d2bb92c3c8f22e9a41848e94c7825bbc5
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_bn.tar.gz 877353 BLAKE2B cacfd42d023bb09ab9f4bfc39ee4dcfcfb77e04d17011aba0a17a65430af8a17e68044525e7ff6efc7fcdddd93795af5a3548274d8157bf8957231540781bcd1 SHA512 955586817ff5e9abaa1881f10cf0f15f782fa8dac04cd5d3cee755bc8878c5ab6f4c973e38970bd4762c3c871c77e53f105181213ea843ed01ab410e3119c293
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_bo.tar.gz 456926 BLAKE2B 1f9ce5c8eff81f18e9ac214123b601f2b4680248779de296976f585a02ebc79eef8d4865aae2dfeb67edcf2f0ffa0d4ced91cf187d4d0293d1673fb5817b7b56 SHA512 67c65a691ff5d3e3bc680e7e8d38938ed2e4c826e5a5f872f0a9033a44cba7afe59825f15a1e0efdad9ba8289f12154d9e7249954d6671fb14e5ff393818a18b
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_br.tar.gz 1515961 BLAKE2B eb80b1e37494133df1d4b05a625465e5512443146d6ffedbe308c0e601a045571b11ae619b60e0f5bba807817ddabc1b2fd06315a89f7f3d5d6b0c69ee550bdc SHA512 8687219b9b152aab4365acaa38f656c31f2ea23c9d1266545d3a96424cd0149f97b00589fd3b046aa1224a87892644b2789295b70b73daeeedb0cb719cb08252
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_brx.tar.gz 336139 BLAKE2B 190e3becdc8a2b93362ef3409e32d54627e492dd566c6057c327d14223cb7e8c72f4c427d812f2ee13f9cf4ee4fbf28641232b7fdf385f8f65a8051cf7a8404c SHA512 ecb2dee838727e174e7eb07356a619f7a77a561b98e4116fbabf2d8b061ca24b7e7a0cba99b4be0a26ca5fb94e7b791e03126cce38774fcbb63584dafba400b5
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_bs.tar.gz 669372 BLAKE2B 7dc2608b5d228ff23aeb2ab19a92890de32a645e220092d69b41b02b74e0eb1749ff7ebb2971ba184f40bbd9b6bfffd40394defff302e40cfe611847c68054e3 SHA512 bda3b6d6609107c5e46e8ed12d74a071364b5204b350ea685c907cde820c8d598a20b353932d328b2f449a022889f4493fcbb5831c0b7d19cbc0b61c0d84243f
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_ca-valencia.tar.gz 2714365 BLAKE2B 1aeb62fb69a75abaf194570e2add03455986211fcf02f0be9fd11ced27bc3413761f0f32929bb44bc0722bf3e3c6e3047f42dd99edb93216b62cde504b5114e3 SHA512 f4ea162e31638fc6fe0575a9ac828b740508ed2691d72b0e6b4f8968ca08105494002d3a80e9e1615daeea63c79a633dff2d7d7ebc05eea63d517279c7e97f0f
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_ca.tar.gz 2745351 BLAKE2B fe91863276b04bf6a3a455877f947587b8aef6cde598baf586a5072bf4f183b15c311420756f77d0d9a32f1679f61477eeabbf465f027e03f334b2f8f39d854b SHA512 b1f345dba81f88673437b560f53ca4535e5e19ae32b508095a3e0fc65fbdad536c21d22a911fec338e2c6cf01fd32f0915345b05af28dd22ef6a5f06db1485a5
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_ckb.tar.gz 367719 BLAKE2B 9c944d61b7f99d626f9e2bfaa8c0868a4c13d4784b9418c64e6f3b12abf88e14635d9695a34aa8646fe6f8bd93009987bd1ed73a8dd4cd5771fd0d63d9b3f4ef SHA512 6f6ca0f57d9afd2c20acbdb79b6a21494d94cba706a0d43a31585990755133dc4b6bb7b2e867f48be311b9ef21df28458700bdea0fa9aecebae4c4d89d0b386e
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_cs.tar.gz 3859597 BLAKE2B 8d0ddcf504705945b8b39894ac1da95820d160ac9b5bcc83250455450b6be9d8d0e33a748c62ccc3c350b35974bde360607e3dee8c16075e53d3525b2262cda4 SHA512 039b0c45227fe40a03e80f58e941aeaa485280df1454c382a066f8ee57e2a49412816df0a19aac94efd719ba960e55fb9d44cb2ace25647c26e470d897e86ec4
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_cy.tar.gz 1033699 BLAKE2B 716610354dbae372d719a38993723cb837eea3c531fce89340ac2870dfe1919639b974c7e4398e9bc5749f375366917f6b2074d0cdbab8cbebf8591a21018803 SHA512 bacf1cdc706b78966816576a7018bdfeb56233f780b88900d3ef01167cc3d32362c4b7fe9bb3ec31b6e620ede25e04dbb518340a1ef005b4caf164e3c79f61aa
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_da.tar.gz 3134342 BLAKE2B 43119482114f7fd8e7e519fa20bb80feb33dac726b14c74cc467ae3d8f7d37885518b01a85fce3f32a14fa973bf595c9988bc790e7634fc12b1556ccedcafcba SHA512 79b2874454b6ee7206a83b5898695dee639485fbaf2095d4f10d629184cc05e0bfddd21e8c8762eec26780e5b66bffc1399dfe9937481a193010ed5a217904b6
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_de.tar.gz 22071373 BLAKE2B c72929b9aca5b1977b4d400eac4c8f760056b791a2f16d3a29cd8ee118e2c37941707df9ef72deba725351b245207f16b5ae30d733f2aba00b7b8462ae085505 SHA512 335060c58b015dea5dd685ef158395daa64f1bf6f280ec8773a6dd197c5fe50cff56bf60a25d58b7daf2eda40ae2d322a5226e4f7663f8e97bf90085c9562655
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_dgo.tar.gz 432903 BLAKE2B be303c36b6c43032750f2a4d4e231027e8a7250c1327015c0a751452532300abd8641e3fb968dae899c42dcb7d509f8e03068bba0beeb13f04a6429dcbeb5012 SHA512 3e3a3b7c0ac7e4982bd3bac4c06dcaf5de23e52418fc3278dab957ecdc3ccfeff3eb9b1e30b2404c26cadc787643a6209da0023eeb9966e3ed7b07e3ff017c7f
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_dsb.tar.gz 917369 BLAKE2B 33aa5040e1560187367b15686c02a9b42c9827a982df4b8db5b20fd1f392011b4252a15e9e98a6874276047dbed0a5d1603a09d025bc098c721d734938da0e8e SHA512 0fa60ce87cd2acc389489dddd275e8c9fd12639324263cca42e8e8cbb2868e4fc4690698a654cf7d788794e3b34412e29091737cf352c33375f0569c68bf7add
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_dz.tar.gz 481794 BLAKE2B f7fe2c2ee98cf7b47a34993d8ac72d24585093f26079de9a0bc47c6d831c28e764fda52cc03a2467b026b0db56b5afec245abe566651dae714696ddbc6d36171 SHA512 33830a796d17fd5f689ce467d6fc1edb8370d9105c70410c18d1409ca17b04c4a224c435f8ac6bc848468498bc30e04505fae13d9b2705001d16ff8594cd468b
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_el.tar.gz 3174335 BLAKE2B cdc1439265787ba6889e662e1ce5ae578fb5668f0ede4ea557715c5df983d06090964c0978cfc5a71a95b3853d604f5eacf1cf7d3481932997d3e95b55028303 SHA512 9478d2e36ebe18b26f147ad277823c28b04ede2044e3cfc9b602ee399ebbbb17058b61c89cf4fbfb701c41904bfebe90517801fa82e3bdc2f2b22e0de0fe3535
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_en-GB.tar.gz 7643014 BLAKE2B f16254b7b16e8f5c99d8ca1607dc9440855812a52fe2d4b7b271de518782fc967ea7b60d50e029238e7330eed3d72b849629b3dde2c420f8a358d292447dcb37 SHA512 311768b9bd9750042f1f912cc4c302f100cebd0f0062127884da275d8dfc8c6dd3c84d61175f23b3f8b621fe702c871a93ad852ddc992a47d70dddd486341bad
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_en-ZA.tar.gz 7058767 BLAKE2B 8cc87673786db08e8674fe4764dbfbad0f17caf8e514aec82e6e81e4d44c09831cc6e4b7e8c73eb3f470e2b9f9cfd627f24b7fc04bf19f7e2c6dc53fc837c964 SHA512 67a55e0c02cd85f70a1ca1509ad06094eb69ba63451028df563fa795dc720f2a927be246d77660479e71e7373c9754321ee9d010d6a205755d65922ce1888cae
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_eo.tar.gz 1302637 BLAKE2B 65f55638aed72f5d04986fc2b5ef89c8bbd227f2bba37113646902675d3b9395b71a2376d991a8528aa743f090df65ff8b2e70422941dda6e8deb1841920cb86 SHA512 41f05872fa48f7a49af1d84fef24a7f941de823731bad022cf64cbc20a6259b09235e4719a1aca7fa054de3314d25ccd0760296b0c4204130fb8b90c215df83c
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_es.tar.gz 7811123 BLAKE2B 7566b3fba53f6d4b8ff4f5c3bbf4baef0c657d1d87295d920865a1bfc395b5dae997939f013e6b7e9f6f1c69691a9d4fe156ef3459a4a05c417b7a258d60c0e0 SHA512 99549084aaa30de22b4e374375066405df6fff8731d57882a4f0a93675dad9694309004b59691d8408eb778183b26f77f146280d32b015edcd3b9707f25589e8
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_et.tar.gz 1888394 BLAKE2B 2e2b7be2b8e9c37b8e40daf9a2a7889d8642bcaf7486f98fa18273e26152c71224626d0caaeab458dca15d08cb348bf2184c190d3b84c911f3e7d368e0180f1d SHA512 3c6e48ee3493781e365cf363cfd9a648ccf1b68c5fc97d946e2546dd3303776b32c249fdf8a22a1a25a3cfa521d924b77c7547e026cd627d0b9e8080ea34971e
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_eu.tar.gz 1035278 BLAKE2B 5d542bd4a1258f68267a18f7ed513d2975c192381aff94b7322a862919c3f4ad2fe7cfc458005d444d51141fffa17036ca79bb3079622bfcc4bb27822e1bb2d2 SHA512 95dd00bf6b50d813b74b1eb5b53a5d011288280cec202894a15f2bcdbf29431b18c1531db68dde01acfbacff4483534fa9c35c1224f40004f022089547a901f2
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_fa.tar.gz 354653 BLAKE2B 5b7e76175ac373ecbb3cd8b0c519be8f0639f11aabb94903d890161136b59beee9cfdb9deb404b1866b652e57cfdbb8041b563d9cc6a7ff51bfe29427da6c3a6 SHA512 3695a551f5bb427429e8450cfd0d1eb4b909251edb791e5db05eaf5de9578fd58297e6d20efd138a6e17595b0763acc4323559ce596c855a40c4e2f5a3e5aa76
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_fi.tar.gz 872812 BLAKE2B 99c048feb4e50cf7629e71c66146a0f2c4ab7c4d7fe18b49194afd785265ab9cfb2ffa385727fa93094f518fb09032ce19015db91daec48d5d674aa092e96b95 SHA512 00a47961d3b9980009e2175d4d3cd93799f744412d37307474d4c982c9ddd44b032a02d9a729b45a5d77d49c8eedbf318a89003a4bc3220eb360a37134f2d23b
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_fr.tar.gz 3353595 BLAKE2B 83732af86ce50c34581f1de1d13f0ffc097ac7df99c51181e1648a7b3731f9316495867e4e790a352019e90fb2d17739e94d62db358a015da9bcd3464aabe544 SHA512 ed527713eaa9867142c001fbd9e0021f4d9dce14f4ae1d8f7e38710bec9cd251fd4cec69afa8dfca4b1f20c20ef34a80e1cb9c92d2c506f988a7cdbcd5290b58
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_fur.tar.gz 196184 BLAKE2B f596d52443835709ed3bf12e1e1d4cf32a21d0a52f18d82eb04bb16f9b26a70164b7ac48aefee2d716a5126d1d77837ddc76df7631efa68025d508991248a6dd SHA512 57e3650b42364433999e9423969207365a7cee76038804bdf05c069c8115b9e0c0848ff1be97ca25993a7ebc49ea352f0b00354dc98f306d70827306ab271640
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_fy.tar.gz 927771 BLAKE2B 59a9919cb0113f0e3f50e17f0d6dd1efae63c3c013756aea3721312c43bc8b26769d3bf73c4d1fa689102de687bfd9c9a5ec4dbbd1630091de7ff1b2cd9cc229 SHA512 6cc72c464548151c7370bf82bc4c648abfe38607503887c0254bfc9c0b8a5b92e59da832ba8b848531d1db05fe1a059777776dbd8c1d7453753c0a302bdb4dc6
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_ga.tar.gz 726867 BLAKE2B fba71dbfa78e29b78dcc8df1d58352df6ce727a4080cc4ba7f6ca53d4c1aad4854f50f231bec9e0cfbecd6eb944da7b8d6d7d77763f2a0c163b09a3d4edac787 SHA512 4dfd97048f797f9b6a6644162460ebf40d8f24bf4971ee6cf70b7aed36f746d996ff10be88c0675ac809b8b591a185ec99f7e1e4cc6c50866a7a40eea7fa5e39
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_gd.tar.gz 1767036 BLAKE2B 941f2556a5d2fc804dfa82454e481169c48f7b061a555d30f54c0752561dea54685290a701e7379c0789d66d03813377e9530cc8db17cbb51bdc446414bbe031 SHA512 2d58255d27c0ff57447c7e3af62079bb14c510e148f30897b97570928392d2291d6ec258f81251b6e73d5d53199bf2d4cf52da74e835d99162ff83064f42b131
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_gl.tar.gz 2876095 BLAKE2B cdc3eb1ef48c88eeb9b46c8e07538342586edc427c0435eb9972ee605a11d84c2869e5bcec66f2c35178a1088844b4b55abef74c796c34050803a0d709ba4ba6 SHA512 e647e02645b035a7ddd1588f0b63370be679443d6de980e2dbea11045aa002e50239f1ab729618baa3ad405188934c3ac5135d220d090622d749c49d0f0efab8
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_gu.tar.gz 1297940 BLAKE2B 0c893e9d2106b9cdddacca8e88975f6e212b668d8d7ff2aa6c6c02d6957dad8798dd7a0d69793e78564f0af5cc4f750a7277e85f088238531618be2c5cf77683 SHA512 0137a6e7458210b2fd61cb8ebd73e6c37a75574407de40bf29ae4149595504d6c90f26ce5be9f5f613c76122b1869beb635410da19ba1d18feb38a10dad1d890
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_gug.tar.gz 506804 BLAKE2B 8691230b4d6cfa73a7ea1d801f6ab91b93499c17ff773a2aa3a288b2e8640f5ef111ebc5c0d6367f0e2112775bbb0393c5403a199ed0695980815d279e8ed0b6 SHA512 009c8694b48dba19e81d01ffdba9b22f8e0683df1b4386c9b6691d3413a22c9e4712e7d80f0a0e36e8b42049db4795827a525e3fabcbdb4c8a44cca6cef817d9
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_he.tar.gz 1703180 BLAKE2B 9a8ea7989e4c30264009eafd2e8bc0a5f223932e9344b9eaf71abb68d85e526db6178367164d8780fc27f3a44ccc2bc68fb0c543583dd8792cae2a607d303840 SHA512 37df17777d072953c2d21d855d4174f4ea57de6166329fc713c2bc19c6defded7cc66bdc8bcb0bd16a2b8421248050733f32e7758153ecbddcdbe3119a0b926e
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_hi.tar.gz 559763 BLAKE2B acb75eed89379ddbf523112361d371653da8cc22211885718f8b3846770d5ad9f00f9d3d42dd1ddae2216d24e98cad998d4427887d95c1e915646806297168fc SHA512 dd493f2d4a583f671384136b19570c879cbc998c93e3f9d394ad017a82cbcacf1715a365ba87fe1de2c95fd07f9cad1f1a36dd1afc6e68319c3616a7f8322117
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_hr.tar.gz 998060 BLAKE2B c64a9b0e9c21526e8634521afe10d56701273bd57e213b44589b23faaa9aa06c4e261fea2e7d60990d9ea21a6ee40e6b17baf1d89ee96165fa4e56f67b2ccfcb SHA512 5f6bfcc8ce8e220a6adafe8122fabd37b52f98273dd4cf0f775f5573c26cb594b119597877613a94e47b19d4f03cf2e8acd8b689cb052465c1be41ea391bccb0
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_hsb.tar.gz 927318 BLAKE2B 7205dee8e7b9e1a1023471e4fb731f7e6dc84bc2207d52d84dc3c68483710203d6b17a0aee094f69287a567641b723946aa664be5fd093dcce190fa293221f9c SHA512 f2041a6f8d9cc8e0b505588273f18d2bb395d2dc99aa1c718c8dcf3d0fca04649f8af0be764eb84de03516d10ee6884670b1aad0ec9ade8c445fa101cea69c2c
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_hu.tar.gz 3336659 BLAKE2B 9e46ac2b93a5eb64373ee790a20f89f83a8a0ed6578da61ee7022e458fb35de31030aca294eeaf54ca182f62665a00cbcd1e4587a967bd7af5b2187004650c5e SHA512 c638430cdc3e73841ad9e44936a69c14f3586b7c94fdb109283097ac8d0527e0b3763c87a3201c07284afdfe578e0bcd8d34190a411ed6543a32c521f2e6d8fb
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_id.tar.gz 1889009 BLAKE2B f10b1949c7ca49ff6736eda786defea8eda757234c8e30740a83d8a4ca48b80e632da6176aa624fdb8b5046d658661d0f989d2804770b80bc78cf69bb93d6110 SHA512 566f16ac7e68952a8ab37027795f78a4555ae9e2c44771748af677a4c37471ea3ac9dfe221df0d35c0a66acacd4b5161587a059c92959703eb2618d73ead01de
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_is.tar.gz 1568051 BLAKE2B a14797c87f6656cccaa740d5a2fbd77292f17e108e390224cbc1d960815af6174064caefdffbbbd74af43d219edbc76a2b790a86005f395da6ce1f006ab6a26c SHA512 6fe971ef2808e8007352f6acf04318daead302ac4772fa204a83ddfb5b91325287b80fe0458323c2ca97e8b7527388be29089a665314ec45e8179878342fc45b
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_it.tar.gz 2376741 BLAKE2B 4c5d02235f820377bf36cc00a7e3d3dafbbfea26fdfd49e2636a13a51b287bd1738a88e387d356419a7da8164c7bbf22075f92343f2a5977808b427709961bfc SHA512 9701772e0b5a7189c11241a803763ab13ca549d23950b8c3d55a3f77e70a5e390c43cea1ddb5e51abf058e3c19b49d659ca2dee7064abbf4b3726e307dab6e17
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_ja.tar.gz 1039759 BLAKE2B 03d28f6dc48745cddf0753d053081917b4b91a203b274917ad0139a1f350682d9b9616faff7a267d4b17f1a87dd138a722350f49b0bf1525b34a127ad3232098 SHA512 8ab45507b4f7c36ced15d0d80bc334a2d02097d327f76af9a63272b729bc9183aa2bc9e0214b6db483f1d84f665e8408268dda1532ee97cfe7e3f54c43f995f9
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_ka.tar.gz 398872 BLAKE2B ffad0cc03b81d34cef430f2523e2e02e60569d09b7bea578690b0fdd1f0d6f5c73f02b7e626e5a279c2ccf9df2af34a09069d503a10897a2b8f721bfda6888fa SHA512 341502a4bd3c0075283656752d8d7d2d4dd84e3b9b2c4bfe6a9de9c491d874ebd6034dd2fa657738757258c69147d65e0b76187f8560778433891b0a5f8fc37e
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_kab.tar.gz 633602 BLAKE2B bfe1dfb87388b9babb28196a141aaf0a1daba7c62132cbeed3c6390df3b57f811a0c9a4c137cbcc5eaa27bcfa51327ef90dddc1d4cbb7e67b4ecb2c4e59ff604 SHA512 887a610657e0f913a3d9602df7e69f942bad891e613df97b6e9f34f9c44810691daea4243d5b66be793a2f91e3ac53b8679e58309468cae2ac16f4316f98abbd
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_kk.tar.gz 833554 BLAKE2B 71f49e9769827dbc9c98401c7a99ec9d9a891a595fc5462326358e3a695fa5aaaf16a46c78d22deec14326cc7be3f6df19be7858fac53bc84843050abcf998b7 SHA512 a332400b600e771273b8b00e01d9455f3aaa5218528b806c6d10f2252a4ecb1ccba5834e36404c66e86c5491b9d294dcb439ab6e94d5f4dfc9fbc7d53e5450e9
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_km.tar.gz 819093 BLAKE2B c9c71149f9aa298021faba1acc0f22fa883e2a92f063648c35a14a2ad8fd7384c6adacca9327c99d45e543a20a49613c85d864e318e4474e01b24802bc057073 SHA512 d60f27b69be7cd5b7d58b3ef4744fcdc355fd718b9b052996823d69a27d888258b53ced4263665fb3b8e077c29c9cdb620bacdcc17fe48c3a130ff52ed663171
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_kmr-Latn.tar.gz 333505 BLAKE2B ffb3ab0c43d1c8d7e6fd244d9ad1e38554948d34f97f5af8415552142760e4d4d7623416682e0182c66c673375d3f1e30238bd90d3d18c1ae4f07ce4ac9e6c10 SHA512 5e417b8644a83d15d4831b0dc960b605c985ac95f7cf8223df318b3bc6eeef2e070fc02eba9b576911cf053d808c34788a7dd3bf5f4bd8fdb09393980fde79df
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_kn.tar.gz 568918 BLAKE2B 1532b87a8020f68636f1554cba5f17b5dce6185889267aec964e68b45711703c13fec952d3f6505445399ff551b6b860e4df4083bde2cdac2cd60e232528097d SHA512 5b067ef772c1f037bea9f33602a59eaa7b9dad5910210b87a0a31df12391b25f444edfd2e8989c8e2ddb7d20f51bb7dbc25fa3d94e227ff8710a4b01034417c7
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_ko.tar.gz 1699704 BLAKE2B 2437dc2fd090df97a5b36366d2e8d4d4a4c9fdecea218e0f586d6090806fccdfcadb670d29a4488813e31ab518dde1d3f2554950857256acc7de877859414489 SHA512 0efc7323a987e7b9fb363dca8426c7ef5ef8560dfc3a4fac1b18eadc0d920ace66a10497388b4f25ca2f6eb2cafba4cfc93b3ba43ae32646d24d4a1b5f212362
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_kok.tar.gz 406993 BLAKE2B 031564019d598a28d75e28f8d7100f1f6e79f94daa5bbea6be25bda8204171dba90850ef6db58bfd8944511342bb662f436bc24c011d70ce4a4ebedc398060f4 SHA512 bfa5c6080e73f5e40d4c795ab824149748bd3eeb4eb8ea78ec341e768eab86447b766c884ac43e8b5882f5aa1a78a499ee4b9a320c82a7e500331cede6eb11dc
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_ks.tar.gz 329483 BLAKE2B a1a076e0fc9c27a3184d6f2161c6558a2f0934bd6912af935981699896a437fbbc93fd9e4162173ab6d49c65e6572d691d2cb72df3f63267ab6fa03808e3791a SHA512 b66ce97d889cf825186069d7e50fa88745c3327c846bb3a4f991e91c56c80773a190d4ec0ce677a22bb644c1ac49dc900bfe58ab59c2257a2a629a4d115a8eb3
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_lb.tar.gz 147468 BLAKE2B ff78cbd834a9b6c61b255e3b3ecf02fd4374825cef0a9656ac27cc07c8e2515edcc68c40d88e366c708e49f2fa88eb66018a83f7efd7f5fdf5aa03e95f349aaf SHA512 212f92cf4f358a943e52d9ca11da0db09d6a38db4da2034a9e4d15c96a461a6f78d6fc7727a867eca34e9de20035ed0263ac6346f0bbcc7d88d22a0981e535b7
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_lo.tar.gz 520945 BLAKE2B bc2ef37949751837171e485314ce5075032ea0c046857705c7965ff6b1439407c904f56ca9682e57b5fadcd9b67c42e41444dfd9c6b528ea2470c027494b1607 SHA512 fb8b7552ad5cab37342cc1201e848e05aad7b39432a8a2d3194fcdf808618feae5944c6534633656cd1928ab8998cd9b0be6608b985bcfd8e05a4ea098739c08
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_lt.tar.gz 1247038 BLAKE2B dd5726d21e0b42720ef27e4d0b78be17f830963e01396365d6667e413fd91966f49b3e576f4f07d42ff15f1c228cc83eccb12352c51e39c7b5ea2903df512a0f SHA512 b6070c0bde44f26bbfec71c61b74a2673225ccad26782fa2811516bb5a201d4381a957df235fb4b86b5272c5811a6ec3f2d653743d28805deeb4b0d60cbd892e
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_lv.tar.gz 1181935 BLAKE2B ffbcd026f735339a5192ce91614c2263cdf29eb61d0cb01befa58e5e3b43839b37ae611c75a7bb887301f41c1855c1aa1269797da156b7d93a533e8c47fc6057 SHA512 0fe1f6c5be2cd6df6a9f42f3104ebd4d88d9388cd384104016c3858ee4ba67d33deaadf05d05e107a705f794d6c53972cbfc2012112f613a8a1bacf7d53f91e5
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_mai.tar.gz 330696 BLAKE2B 070f83687d6d69eefbc420dece47ddd63640921c897d4fb7b2daa566e772412595524ef373f21de9215082d5feb6567fb6540176292c729b58d5c2aea6e90b94 SHA512 fddb20a2807513e016687a2eefd74afa86c759bf40984b8d2d18bd2ca0eeee978ca3495cf02314b4de8bb9650ebbcdd0c8c5fae198165eecb884194507e696ed
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_mk.tar.gz 482542 BLAKE2B a32aa8ef67533ca9cb3839fc55d08bd31bee2d60495d52355f6b13a0c92d312f788fa9ca920dc723890b342e71da011d9fa1be23df17126f8dd5cdc8b954c590 SHA512 eb24b73670bac6595ff734c2873c7f6b2af3c90992248bf3aee2ce62d78e423e5a14e646d54581cdc2d2fa19c92ee11bd060b042b1c16d7e1d3fc06632bbcfee
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_ml.tar.gz 530166 BLAKE2B b482ae59e2c6a32465ea53037aac2e8a0b7eb6fefc6bcd7545e684052a13ec50584f84f06201d90094e7fec76e82097c16fef2683f7e97f2145ff265dff282d5 SHA512 03a8d47f6fcc625d283ee9952e7c4ef34c19a152749c02454061f9a5c7893494a44f6f5c59a71d41642ddf948da5d2d5ad34aec9fa99c8e5934979f558428e9b
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_mn.tar.gz 2361026 BLAKE2B 102515b45350fccc3d7ad640c14107cc363a6a79718c514d117baa5d07bdd27212d01c4c80f98f6a31815996f2dad30e32911238f9aa2a05b16015979c7105ea SHA512 e0a3b430e04c78a31776cfacfb768d5887bb24f528b3763f8e9fed2548ca3405cd31f1ab4bd2f32ad0b74869987ffbb53a0128075f02e783d44651ab5cac96ae
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_mni.tar.gz 397865 BLAKE2B 9b6ff8090b2336bf7e8fc465d3280f0795dd1c38863f0a876d057a8e2c7b0ffa4a04c74f517a475caa9c30566cc439d797cf54634aa4ed812f72c4dfdc1f9c41 SHA512 8ec5f9ba2e735480b2fac1f42b0e0ebf3f15a2fd3211c3ed8e3b7999ddb569e1c478b23922a001dfa42bc4203589cb80c2e6d9568e51e80f56bba12dfc0273d1
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_mr.tar.gz 563260 BLAKE2B 9830f9c5d9c9cf8939c5705b704d8282a96e07a62bbae942b31a527336bbd264da2190a92de28922f171ac73c090fc0d9b2fa2930ffee612b7c38f02d7286e6e SHA512 60b04d9443261a9f198666a36492b0d684e36c2c2999055b6ffd0aeef625786e5aaf2303331827a82b4ea997cd558f3e54a7fb99630c85768dc314dc6b954fa3
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_my.tar.gz 455239 BLAKE2B 3d2a6f9bfc9b75500b4e02691a82b1e3a6bed569a2e99c298633c019cb501de1bdaa001b9f6ab64ab9176d925ba174cf7c2e887d3862dfc9ad8ad3231db4c74e SHA512 270d580aa4a768291c11820cf14bf056fb64c3049a3dd7215f31b7a67fbf86178f5d1c23ad93100bb130de0781aaeb0447d5e671d501186b93dd4e8d03aebeed
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_nb.tar.gz 4367757 BLAKE2B 9092f685a04eeed60934bbf7cefd03b4547be1c97327d5778631ce07bdd16900e3567b66f56cd1727a0532bfc46ced1edaaf140eee60f40f1033c73eee908452 SHA512 8eaf9a367c460f50b91461cb6c95056468a18e3a7ea06a21e966713c4846612a923076b6fcd4f8ab7f795366be35ffdd618204e291bbe47fa1403de17f70e1ce
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_ne.tar.gz 945129 BLAKE2B 7f6357a3f05cbed280556cc5ea1538acf500cef47b6d4edbab68be901e70d098952047829ce9cec221ecd23134b3011b21d5cdf66272d88cccaa8b271c51409b SHA512 291ead084cb96efe5c061c7888e3a4c15edaab0484cfbb2e5be52b3113357b3e91c8ed21993d1da1623e4ff93e413f0732961bda99641bcdc2557d56a87064be
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_nl.tar.gz 1832651 BLAKE2B 718ffcf034861fae0d2453b5eb5ea5b7a1a8ebe56e7e5dcdeb9bab699a04073b5582ab7fc09ee2c1365d2662e1580d43c12fe485f32af50f760fc043a0214fc4 SHA512 52c86306650a0cc14a9c05b2eb247e91f5fd064bbcb6ef07a5db7c70afa7db1afbf4abaa3a20e53df0d35506628ce126264b3b6639d973be1b7ea14a9b81982b
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_nn.tar.gz 4372166 BLAKE2B fa90f71f22e5c8a2e2dcc72b990349afc16649514b059cad4f4b2dce7c2cd42a9d1a0a9fb9134702f6103a99f791143d9c3eb98077c55cd8ab67e1d55f4da2a0 SHA512 46cde919150789c7e3f20562ea62cc3c7d583a68a727d5901f71d51814c7623cabb0a791013a58ba9f08a5d3fa92f58f341d82a24b8831dd6babfb2939fcea95
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_nr.tar.gz 278403 BLAKE2B f1be641bf12e56a4c2886ae3bfb0902e7d1808a17fec71f297a679ad11ee198b3bc1a8bdb845dae9fb0e46cb5a170cb938201674d034f62a9827b373422266e6 SHA512 0a70268d7a08b602764914edb0fba500da7641283f4b72d4d4b35532af0586e52f93a227fd41fb829e6e34be463d4662487cb52086f5c2143d8cb50ee84ce5eb
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_nso.tar.gz 321409 BLAKE2B 52cbcf8d84a6b4f207f7b0e5f3f7608f260d461a43ae7e315218dc4362487dfee0d5d124fec40ca0f4b4cafb2594049df7f842d1247e8b187ba067f98ffadbcc SHA512 70869ee4585971b538d6960bc0726468381ff91714dec0590e6cbf71e5e8ad109b8fcad3d3d998513d54d46b5a6aae79e91b2625f82e19450ee9a8471a7cb84d
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_oc.tar.gz 1329472 BLAKE2B 2488f8e1e0558bd65c1bfc2ad2629dc69a33b2354f6d0cf4cb9942ef4059dbf7396c85a686e3ea8abf4fb7fb43d864ceafdd149c12b69782459e774145206419 SHA512 f84bc96229e62598b032de57921a7bc880c404a1f2fa884ac34dd440a7d3fb65b14f5e1831436ef7d76b9483a6a9b183b6a4c5c97450b2498614cbd3a877c54c
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_om.tar.gz 482391 BLAKE2B 1fb9fc4512f20f1b9fb1e5deaff1bb774e7e626634a45cd05387aa7373c144d29334eeae8fa3569ecc4760a622a4baddc79676005902996decf17dd8edc39089 SHA512 3c38e5f5910d1f9534c6c70a05692560b13cee77abf4597556d6024f50ce6c9ae2910ade3ffb42f722f4564383552cdee63eae51c40f7fdf3269098f595ee42b
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_or.tar.gz 583233 BLAKE2B 60e53b3755f07176dbfa6ea8a8c46f102f5556b79976daca5e2982fa04fbe5ac9dfc82609db2a8a1595882660f0b5b008e6c2fd2df07074503bb51470f10f09f SHA512 e857b02f91d867539c5f7ccb857578755d11e0f737758ed5afb3e62fab25f3740355885d5cf1e7bb72ca8e7a3c260ae394259a410dff830441bae2f7fdce9a91
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_pa-IN.tar.gz 510781 BLAKE2B b7734d8dfa12adab6f2c52b67cdeb7baadec04f8c9d685a1b7ec43654bfeda73c1c7835c5f1ed5045bf9b92c106417d48b7bd8736e7fa914f9f7bd5ecc30f3fa SHA512 ca7563d6e836e6f4f89019160ace1d367ef356fc4ee43d0977f0987e1f352bd722d0ce5df65ca1c16149bcbf330dc72acf4cdf8778d284721d6b037bba9d3e01
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_pl.tar.gz 3401917 BLAKE2B 2db9cc27182543e3029ec1868e923f91850d7c7282e8dfecadc9b56f19cb00e61c80203748880e2875c002d9c9a0b86d14373ad6a6041f326ff57cab124341d4 SHA512 af1770205ee060b9db173ccbb96dce65d87bf406aaae4a3508ee4e92fb9de279c4a736763fb82a4e9a575ec02ca4dfb3e9e1fea8315f09d47179a807200142ed
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_pt-BR.tar.gz 3134032 BLAKE2B b5d7a0a8afd11f178501cfa0715fc03ae747ebee63c514f622a5cb58e2915c93bc84c51d880965c7f7c365da7aa1d2e4de4dff2812f9244d70bc45c959e057f5 SHA512 b3cbd9a0c0a5bb4dd133492e71fbeae39d50923747d19092ed69b530dd4934519035212f72d6b8c14a5fec037e27ec060143e62a0394026f3c2ca5b07b0547ed
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_pt.tar.gz 2668426 BLAKE2B 77d1a35950826d7466bfe58a230ab150e6dba0e6ba5149b0746c742818d9b2347dd255f0ec78c5a5cfa05ab306914a9b17a2d1f1e44e6719dc73a97b9c8d9c7b SHA512 408bef7a59a8735b93ea8be06e85a505d54ea6f56ee0945fb1cce3e88e27b7a024fc4eb2d8b1eab43acf105d333f92c38bc55dc6a695a5ad789a0c057396fa63
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_ro.tar.gz 2506142 BLAKE2B 2861adb765b36e6f61afc5d9cb8d9989ea37f43230484f04ba94ea8a3b8b85f40b4287617c42589842c4b52fa418a5e94f397928a8db60bf3634ad6462b42aef SHA512 3075342e2e6a4781efcb7261ac15d45e0c326a7b9f01fee5894144a3c0708859a3d4f6b6af96e55e27dfddc17397bed80b08f449ac0445bec9094adeb4154fbf
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_ru.tar.gz 2375299 BLAKE2B 80ebc7706049c38a527f49fd16697c401ef670bc8c028c2ede04f51f14a2bd9d4996f6a54bf3d9549718284188eb296fbf2bdebe1edeff7a34c48be3c4c82144 SHA512 919a3c56da3443ba3c13f546455c2a0fddc29ebb07d8e29225e02eadd5889605305d46ed843b32c760b94a3139df8f650b3974edcc50c00d803a812ee0ab181e
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_rw.tar.gz 344728 BLAKE2B 4fcc5e9df2135fd7eb633e51727d31c282ae8ecbc6b8e4a26bff3664b51cf3fc3a945660854b0146597456737cecb6e5185ff1b4f7aa6bba02e7305351fe1fb2 SHA512 b8625c932709629c60e6efeb59348d46eb74a3cf4f34e74132f272dbff62a367a71e4bd72fe5b5e2fc6857f37ae9cd0bca72ff5cd25ba00e5f930f563d629038
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_sa-IN.tar.gz 443079 BLAKE2B 2f7de7dfac939d18b7a3202a30ec73a42995d21ff8dda1b48a4a689517e008dbdbeb91ded0b553624e439289aa916b7a4a23081f62d5ac1c8d3dc9e7d1e55507 SHA512 cdeef7029ed718a9e4c1abbcb3458bff918752e5d455a01e524f9c6180aa15000604b516ebc1bbc3d8b30f14cf3e90349d534504e4eaaa83c59c97d493d2e1f2
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_sat.tar.gz 508928 BLAKE2B e3a3e084a55f89ea4a0817a9a5649bedcaffcc51cede207db6727d4c2c4fe509fe48c2e4fbf56a30870b94d2498bdd58a0f0ae41e37238dab5ca9eaa1322f8a1 SHA512 0bad30346d804c745561bd9c9df2bd1203b8cfdc71da9b6a6f3d7b3cf9ea981f232c2cac13a2c358cdaef26d1fb4ab4bcaac327cef0f7e9ad05d93141fd2b478
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_sd.tar.gz 430348 BLAKE2B 14815138dd7057a0cf08f6a048448fa1ec9f8517e7bc0d96bef7ee02bb43de2e22027a0ae737bbb41ff63042e3753826abdbe499550705b7bb3805449180a4c5 SHA512 dce26ac8d5be27e75daf8e8345afeed605865fb77a0228d18f2fe296dd32350e1644591beef67b9fa1d55c92264eea51438214543bf1087dc8af362e9172fcb7
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_si.tar.gz 757876 BLAKE2B f3cdf4d8d16a8851967010dd9d16779df5f7a6c143262791f1bc46d5b3de6d3d5050133158efe23f9e53d407ef4036b7182e866ce4ead26467e2c47092078d93 SHA512 3bf213b00aadbd375621d18b94f423c48f1c3ef3013a7a8eb98401eb665a292e580b9788ae7d336e2303ab25e01846db085646f8a4cc4f9909bef6536fcb03b4
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_sid.tar.gz 519085 BLAKE2B 88a32c257dda3b2722ff9fb9774783eb2551f6a6881937c9306601b0bff6b53812101accaa42b3f6e914f49a811a1853672c704e98a9438b3522df3b3dfecce5 SHA512 6d50c74857704dd1b5b2c305862b2b3eb7ccc5a33be97e596de208bd97e044d0022cdd65f0fb286ec0fe088c442fd9fe3c543aac886145302b8535180a96f137
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_sk.tar.gz 2380394 BLAKE2B e30ba2a0ce0824745ffc1f47350856b47ce02ab523116f88f0a4cf31dd3e14775f64184740d662482eafb3686774bc145637be9368d86b113aa96278b755f68f SHA512 f1282a62cb48b4e4a3fce91463b1f00d3b5a5fd08f38c4a7823fe6ff3a6727dc47913eb9f36220320b2657bbe491d9141d6deea69bb15b7fb79afc606d2dfa6f
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_sl.tar.gz 2784875 BLAKE2B df5db6dc8511d44ee6aaa9754f6de4ae9f0fda3ebc763d6659204acf5b7562efddeb14cab7f99c0c5c8f8b42cff6e66c5dc677bbdf497fa86e9331da7c4e4129 SHA512 3b82e93de4f92693b05c0a533c34acb85e7ed46a6f3596f70692645b2f6fee8bb6c27df877b5d8bdb9c116a441582e4257994b0a6f31249096b08826a41666ab
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_sq.tar.gz 1216644 BLAKE2B 83063bc3e0011f0e05998e4627021e20f666d99edd997a9e782551ad76e79c8a141960d87d79fb74a02ae31ec173d89f4695f52e522442488266d95538962b51 SHA512 c3baf5ee7f42e290e15bbe13813583078bbfaf977c94b6b9d8860101986274da86e70e037727700333a4f849445036b1d71910729f1b209d48405bd452e166da
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_sr-Latn.tar.gz 2405460 BLAKE2B bbe818d8be41b740db5c027c21a9bec6193af85995cbe551be7c7c53fd58b8954e704e42c0cabd0adcfdbdf2776486c6577ab3a5ab15a7b6143432d57f785f3e SHA512 b161be9f13c08851b631879de44861cf7fd7ff59b10f4d432bfbbf3a85f3581fddb08a8a6f2e0d77fd3b3df0eea58cb1637fe6f0fb6d68b9e6f62555d88a8862
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_sr.tar.gz 2861900 BLAKE2B 468acc7b09984c3edd92f637facfd6afd7fd0c72e9712cd0aa157763c129a3a41184780e1ee5fe068aab720dc3d952afc608d9e740f92e4722859a27428d1a1c SHA512 d6e9df0d3153ef7ac448d208804baa42f4d23de706dca19af77889c24b23d997c2ad26b862b80139781f2276866a9cdfc662ae34b6e7524d5a3627e78261e4d1
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_ss.tar.gz 285461 BLAKE2B 9ec64e5991f6844f41e41d74ad93960eb4054701d8c81b6139a3eb023b87fe26ed1bb225c69ffb22a6cf080043cf386dcd411cc5d6482276a47b7683eb17bb96 SHA512 8a11f0e308aafccf1fd61ba26aace6fac95d0d8d369ab9379b294779c3ccf00f01a4378f17340ebffd228e54b65d7bd49625559758dd6d1ed78a5f6b93038bab
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_st.tar.gz 280252 BLAKE2B de45c5de3b9c3363c03a72356118b86561d120c7fe703d80bdc466a26b1c1116ece73416fc4880ce3a87bff66e30bd5cb8efd1098ad040b9bbb8cd7384364cf0 SHA512 e4d87a0e86a7628430bc9636990e9458d894562bef2f5b3a078779be7aedc0a0727a341fedac53a412823b1dde1d41da3bbab45705fbb501ef91879e653d08c1
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_sv.tar.gz 2846452 BLAKE2B eba1c7dd7f20b4e71befe12052923f19d87e34539a3b6d399eed979cdda4814884be25f1ed77739b8cf53a1ff1531d2bfd310df2db25d10cee60870e5582483b SHA512 972c3a203acac16878140ff52e666f738d8ddc08f255e7b6b26db3130c04e17494d3a74bc9d14f6b6694e6d93a6b50a01146c95140d6db96cc989899c6bc421b
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_sw-TZ.tar.gz 317062 BLAKE2B 3da02d1098b0e424b3b85694ef2203d30fb82aeb0ce4fc93db7330d4c11e41efc6c3f506e2722c3d8c168d3b68f63a406c4ecb6f958bd0683693d57917fb7273 SHA512 f3906cd8786740ff7d39d982b31875c0f9cee93f1c032b3bf354dd172aa1d619090b7d7fbe9a8166bd427300e999e83a94a7925bb00d7320823c674061ea210c
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_szl.tar.gz 728952 BLAKE2B 4837ae7224913cff1fe1ce0df1be1d8d30ed95b2136a58917f888c3161eaf28b0a6ab96229a9bf3ea2908ebfedede2fd77835d56fb5862f3f1fa800ccdaa036c SHA512 e38f0e518640d34bc11ce6b1ddd25a342f170888b24384a9fe327aac701f334715e3c769355c249ab6d1e8679fff74d8926ed7dd858c4cb83887f020dbb84ebf
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_ta.tar.gz 727867 BLAKE2B 97868685ccb7f2640b641ce105ebad693ef1f5ca1ceae8604f598e731d22d91993dfd8e2954343c453599841f8a056fd7acdd86c95fe85a4bdd72dded7f32550 SHA512 bb1c589a8db4691699add099a1827d5ee914500845c6275abee8e2605aff3702f3962e84fe60b6726f7f8960d99c4f3bcbe84b09687fd923184e4a90b3765d77
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_te.tar.gz 1073979 BLAKE2B de2a2992f4f87beb700ae870496d43f1983977a343052340cc652478a9ea7329a012822867e8b589b9e0632cb4adbb25fbfe93abe93c309c4f51f20fe7b785a6 SHA512 43527d33aae5e8fa959c513e60b5b8fa12cea5aabc15aaece0a04925b9b7f758b99622a7d1b1893fb6b7de2c18ca1bfa1fd9e12c0c65653427894c67935cfa1f
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_tg.tar.gz 390175 BLAKE2B 3140a24a6a4a6d17632892bad465f84d03b448d62be55247d8bbf214c5e76ba325bb3c662271ddd72fc47eebd5a12bd79ffedc6a9ce7ace922209d8591afb239 SHA512 0e47a682668b994ad064153655bcd991281abdf6f339d1fff8a83de83b4d7f39f0c532a316ad091e2c31dbffa404ff76c8b4c6ab5ad31d8c81d473f9e9b0a83e
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_th.tar.gz 738154 BLAKE2B d06deeb56ff2f6df3f7f7b6aa340bd8d255ff4b97d101d1abda25c16c2368f498060c0919d4214b8424745d2a0854dc1351a76f246c7d72e37cac1f1f6bda87e SHA512 a6dd6ead98ea73dd319be8fbcdb21355d79982455cf397342fcd305429387eb335f69fa1e4e2d6f0c48713b15825412818f74ece943bbb29a3f9d1ad3aaeb72f
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_tn.tar.gz 259784 BLAKE2B dbea07ba3c726fb76dcb4fba0d6ec522ae88a89de1cebc172d59910923d1f73809f1a279df97844c17ba72f268b6416dd6fa5ea4aa50c405348fce1230c6fb54 SHA512 1ca0ea623210a3e288baea3ee37595598c4b64d457534629736efbf510605c2e34352f0d9d83820000de53a37be7a280bb269995f60038e22a6021e59a059d16
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_tr.tar.gz 3357579 BLAKE2B fec32fc57dd0f18ac8c0cff7f82bbe1b7857a11c409a06ed71d9512352a7eca76dccc366423d1311d60c7e3d94b68e0d1a5781fe026d2f408577c8aec3c077b5 SHA512 25f01618f26b0dc9eae90c26676cadb0a172a74ccce4af9c152867d5b51a50670a9979b2314994ee5909bf15747cb44685e6ca8a5896da43a90c09e9ea1e5310
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_ts.tar.gz 277117 BLAKE2B b5790a1278a001da7e57ba2910828aaea05862595abc8b70a535dadbcff1c44a7d1e7486d523b78387dcb91f8071192fa6efeb64fa39500ca1c02043450f0e62 SHA512 457ecf3c101223e2e76fcbfd6835ba45ab2678a2d78d8830ec1f1a1188be34b047eb1e5acf20fca54f3ce060b22f1f57bab825b6f80e23a4a797817314d67ba5
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_tt.tar.gz 186483 BLAKE2B a41cb4ab89f79f97a9f7790219a833effe53f6609f4891f20b69f42203cab271215bb24f015017d5e91f73e70bfed217c0bf7fe202791fc326a829e4f4442881 SHA512 6ec40a5d7617282c95ceb77b2c69144adef226cd2cc858c7d3a41735c8b562886cdbbbee950c010afdfb2d2eed1b841bd2fb8945eb371acae1b25cba292cc1eb
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_ug.tar.gz 537853 BLAKE2B cb53025aff91bb62fe4fc14878fb901b69f462e6c5dcac6a436fc0b4d6e07b0b293c50bc5f6e9e0d22a0d4269d760cf41bd98f71ab7d9e20ed0c9f05934e841c SHA512 f1bae7dbffae3e74feaf20e002c211f6dea650d9a080b30aebf0f908857f34560a1e3c02e1afad1d85fc62798503296986e45afe605f6dbbe87d395d01b7688c
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_uk.tar.gz 2883912 BLAKE2B c4be2978a5b03724175d5eaba9dd879a6e6d3e12412d494bbfe26436602ecba62ff83bab7308f83d525b18e9b4d9de0f0decdeec2fb17004b6b304fbdb12f6cf SHA512 fbce18acc405eba2880929380ede42ae01fffa05c528ce4853d7118aba92341f6e0e661a3c8087d954c000d38bf250d545d68ad08ea0cf75386cf026fb4a148b
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_uz.tar.gz 312126 BLAKE2B 514c893de560c2370091e0bac15bc0b87f6b1bfa80927be3335dff38f41407649c3ad2ba2bc8d51a33963601eb487d46cd79d255425984340f83e37193cb28ba SHA512 cd71dd53ddecaff08765abcf9eadbfaf23ca13b67ff271cb1ff8e0b4ee085338ef2391a5b3725b54002772f4704a7a7993b70845682f2154375137c8b2c7c75f
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_ve.tar.gz 282401 BLAKE2B 1ee84a0e0bc75f0719c14151a4298a7aa73922d34f7413e850c156a81241f2454339be5addd0afcbe148a43423e8a8f914a4c7fdc92638e7453c1f457d5612b3 SHA512 260ef4d465e7b0fbb9088aeb1fdb206048b15a44a361c23816c81942d402b3d6ec16a10be6158f65b995d84436ef2db45338d426a4f99a087c7ceffefa84da0f
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_vec.tar.gz 757344 BLAKE2B 257fd21110147ae03debb70f52220952535ea3452bb28a29a28414fec2305631c2b44487b058459e9065d5ea26671f1c4146731f57703c2f9a75be21940f7d49 SHA512 6999bbeb109c1f11ac00829b24221d680fd22fcb8b435b3bbbc0b8aa9d2ba65746bb36042f75c5162aefc80d9b43e9e5440527216b975be1b159982b2196a96e
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_vi.tar.gz 563140 BLAKE2B 13a10f71bae8d546edf79972817a03a3a9dde340e071da5beee3ef4d7b71b23fa8be46bca8785de31f29c5f167bff7dd27e0cddc1a7b7c2bae76648148df500b SHA512 874531d361321c6f884a2cafb66aeee39abb268b6dad59968969ac1baf94001f62e6aa10316daf4541def4c0fa8cc004ab5b78c1fb1c8d4f2bf43505ea1ac7ff
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_xh.tar.gz 289528 BLAKE2B dfcedd2e6d94ebf23bfd696863a276e5899a1bccee50296d9632f060b03047a9a6ec0aaf1d97697e94683a3eb5e8d72119638c0a1b79b9547a4c355dcf6c2bfb SHA512 0b1859f10c1d8048d26a5d05d8be62c791930909734c15952872dd492d3b1c2e7da88b43f00a34ca5e32d5d92dc19dbeed043e4f4ac278e0662f12b49ae003a8
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_zh-CN.tar.gz 1071289 BLAKE2B bf6a9b37026060138a17a1a17b7a4f6a9baad0953e4526ca765a12aac4594a4eea2158df0dece39efb8607db6bf360b8cfc5751e9919b69ede3cbbac7673dd37 SHA512 6651a09022775bc53df4bd4843c8fd3185803d685f31815213bc33fd8fb75a554491c800757b7dc278c0ccec61427537fee9de80413273220f7559f5c3721393
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_zh-TW.tar.gz 1074333 BLAKE2B fda57f31b7d3e2128fbeba473e4e5199dae3c6ffb44379ad92102b9ea06aea65ff8a80b7347271663cfd3348d801fc24dcea74bf5dae7c54203f0c0db84f2d5b SHA512 63cf477a2b579cfcbae6ab30b8b13e48f5eb04ee0f3989569707c21c217fc452b35548a60a1c7c0a6be04d21c9d2eec1b73221cdd4bba5c8a322a406a8a83c3f
+DIST LibreOffice_7.2.5.2_Linux_x86-64_rpm_langpack_zu.tar.gz 318240 BLAKE2B eca63a9a6950dc6d838a00b96001017600fae14babcae3ffb94e88c2cdbca878bc6fad43ae56aa1190a95efd735830b6d9051847bf363f857b97488fd2e1b67b SHA512 207d6b18e0d016ba2c63f853b99855315a2163d29dca44ace829a9728b50f4df8d860f9bae11c78c70dbd1dd1c18cd25e9a893d05c0e3f658470c1e2ffde4b78
+EBUILD libreoffice-l10n-6.4.0.3.ebuild 2868 BLAKE2B 940284d6646cc3d098a99d90b31eabbdc6d33af35fc6fb4baff10ec48003cccb8bfb242253d777431acf2b854ba265b51c7295bb61f30df55518229f6ece4fae SHA512 978b3522910ae1adeede4bf45a018b2945d8d6e22c6a100a0719c1e05e28668e2bd9e8ffe5289a3bc6daa547593de2366bdaab4d62061edb31579cf9de01d59f
+EBUILD libreoffice-l10n-7.2.5.2.ebuild 2885 BLAKE2B 9bc02c0d726c1928587caa0bdcea0f65a4693ebb680a697137429089130fda8cbe865aff2cdad62fd965e0d974f23011b5aab1713835fe4e67dc0ac2313930d6 SHA512 c3ee7ff33937d16ba2c17b745a6c97688a61112e6db2ce3421a0d27de52ab50d464f333639533157c8761ca9a3f641cc5141454ee412c3bebbed244074431244
diff --git a/app-office/libreoffice-l10n/libreoffice-l10n-6.4.0.3.ebuild b/app-office/libreoffice-l10n/libreoffice-l10n-6.4.0.3.ebuild
new file mode 100644
index 0000000..fccb1fd
--- /dev/null
+++ b/app-office/libreoffice-l10n/libreoffice-l10n-6.4.0.3.ebuild
@@ -0,0 +1,80 @@
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit rpm
+
+DESCRIPTION="Translations for the Libreoffice suite"
+HOMEPAGE="https://www.libreoffice.org"
+BASE_SRC_URI="https://downloadarchive.documentfoundation.org/${PN/-l10n/}/old/${PV}/rpm"
+
+LICENSE="|| ( LGPL-3 MPL-1.1 )"
+SLOT="0"
+KEYWORDS="*"
+IUSE="offlinehelp"
+
+LANGUAGES_HELP=" am ar ast bg bn-IN bn bo bs ca-valencia ca cs da de dz el en-GB en:en-US en-ZA eo es et eu fi fr gl gu he hi hr hu id is it ja ka km ko lo lt lv mk nb ne nl nn om pl pt-BR pt ro ru si sid sk sl sq sv ta tg tr ug uk vi zh-CN zh-TW "
+LANGUAGES=" af am ar as ast be bg bn-IN bn bo br brx bs ca-valencia ca cs cy da de dgo dsb dz el en-GB en-ZA eo es et eu fa fi fr fy ga gd gl gu gug he hi hr hsb hu id is it ja ka kab kk km kmr-Latn kn ko kok ks lb lo lt lv mai mk ml mn mni mr my nb ne nl nn nr nso oc om or pa:pa-IN pl pt-BR pt ro ru rw sa:sa-IN sat sd si sid sk sl sq sr-Latn sr ss st sv sw-TZ szl ta te tg th tn tr ts tt ug uk uz ve vec vi xh zh-CN zh-TW zu "
+
+for lang in ${LANGUAGES_HELP}; do
+ helppack="offlinehelp? ( ${BASE_SRC_URI}/x86_64/LibreOffice_${PV}_Linux_x86-64_rpm_helppack_${lang#*:}.tar.gz )"
+ SRC_URI+=" l10n_${lang%:*}? ( ${helppack} )"
+done
+for lang in ${LANGUAGES}; do
+ if [[ ${lang%:*} != en ]]; then
+ langpack="${BASE_SRC_URI}/x86_64/LibreOffice_${PV}_Linux_x86-64_rpm_langpack_${lang#*:}.tar.gz"
+ SRC_URI+=" l10n_${lang%:*}? ( ${langpack} )"
+ fi
+ IUSE+=" l10n_${lang%:*}"
+done
+unset lang helppack langpack
+
+RDEPEND+="app-text/hunspell"
+
+RESTRICT="strip"
+
+S="${WORKDIR}"
+
+src_prepare() {
+ default
+
+ local lang dir rpmdir
+
+ # First remove dictionaries, we want to use system ones.
+ find "${S}" -name *dict*.rpm -delete || die "Failed to remove dictionaries"
+
+ for lang in ${LANGUAGES}; do
+ # break away if not enabled
+ use l10n_${lang%:*} || continue
+
+ dir=${lang#*:}
+
+ # for english we provide just helppack, as translation is always there
+ if [[ ${lang%:*} != en ]]; then
+ rpmdir="LibreOffice_${PV}_Linux_x86-64_rpm_langpack_${dir}/RPMS/"
+ [[ -d ${rpmdir} ]] || die "Missing directory: ${rpmdir}"
+ rpm_unpack ./${rpmdir}/*.rpm
+ fi
+ if [[ "${LANGUAGES_HELP}" =~ " ${lang} " ]] && use offlinehelp; then
+ rpmdir="LibreOffice_${PV}_Linux_x86-64_rpm_helppack_${dir}/RPMS/"
+ [[ -d ${rpmdir} ]] || die "Missing directory: ${rpmdir}"
+ rpm_unpack ./${rpmdir}/*.rpm
+ fi
+ done
+}
+
+src_configure() { :; }
+src_compile() { :; }
+
+src_install() {
+ local dir="${S}"/opt/${PN/-l10n/}$(ver_cut 1-2)/
+ # Condition required for people who do not install anything e.g. no l10n
+ # or just english with no offlinehelp.
+ if [[ -d "${dir}" ]] ; then
+ insinto /usr/$(get_libdir)/${PN/-l10n/}/
+ doins -r "${dir}"/*
+ fi
+ # remove extensions that are in l10n for some weird reason
+ rm -rf "${ED}"/usr/$(get_libdir)/${PN/-l10n/}/share/extensions/ || \
+ die "Failed to remove extensions"
+}
\ No newline at end of file
diff --git a/app-office/libreoffice-l10n/libreoffice-l10n-7.2.5.2.ebuild b/app-office/libreoffice-l10n/libreoffice-l10n-7.2.5.2.ebuild
new file mode 100644
index 0000000..59bfe34
--- /dev/null
+++ b/app-office/libreoffice-l10n/libreoffice-l10n-7.2.5.2.ebuild
@@ -0,0 +1,80 @@
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit rpm
+
+DESCRIPTION="Translations for the Libreoffice suite"
+HOMEPAGE="https://www.libreoffice.org"
+BASE_SRC_URI="https://downloadarchive.documentfoundation.org/${PN/-l10n/}/old/${PV}/rpm"
+
+LICENSE="|| ( LGPL-3 MPL-1.1 )"
+SLOT="0"
+KEYWORDS="*"
+IUSE="offlinehelp"
+
+LANGUAGES_HELP=" am ar ast bg bn-IN bn bo bs ca-valencia ca cs da de dz el en-GB en:en-US en-ZA eo es et eu fi fr gl gu he hi hr hu id is it ja ka km ko lo lt lv mk nb ne nl nn om pl pt-BR pt ro ru si sid sk sl sq sv ta tg tr ug uk vi zh-CN zh-TW "
+LANGUAGES=" af am ar as ast be bg bn-IN bn bo br brx bs ca-valencia ca ckb cs cy da de dgo dsb dz el en-GB en:en-US en-ZA eo es et eu fa fi fr fur fy ga gd gl gu gug he hi hr hsb hu id is it ja ka kab kk km kmr-Latn kn ko kok ks lb lo lt lv mai mk ml mn mni mr my nb ne nl nn nr nso oc om or pa:pa-IN pl pt-BR pt ro ru rw sa:sa-IN sat sd si sid sk sl sq sr-Latn sr ss st sv sw-TZ szl ta te tg th tn tr ts tt ug uk uz ve vec vi xh zh-CN zh-TW zu "
+
+for lang in ${LANGUAGES_HELP}; do
+ helppack="offlinehelp? ( ${BASE_SRC_URI}/x86_64/LibreOffice_${PV}_Linux_x86-64_rpm_helppack_${lang#*:}.tar.gz )"
+ SRC_URI+=" l10n_${lang%:*}? ( ${helppack} )"
+done
+for lang in ${LANGUAGES}; do
+ if [[ ${lang%:*} != en ]]; then
+ langpack="${BASE_SRC_URI}/x86_64/LibreOffice_${PV}_Linux_x86-64_rpm_langpack_${lang#*:}.tar.gz"
+ SRC_URI+=" l10n_${lang%:*}? ( ${langpack} )"
+ fi
+ IUSE+=" l10n_${lang%:*}"
+done
+unset lang helppack langpack
+
+RDEPEND+="app-text/hunspell"
+
+RESTRICT="strip"
+
+S="${WORKDIR}"
+
+src_prepare() {
+ default
+
+ local lang dir rpmdir
+
+ # First remove dictionaries, we want to use system ones.
+ find "${S}" -name *dict*.rpm -delete || die "Failed to remove dictionaries"
+
+ for lang in ${LANGUAGES}; do
+ # break away if not enabled
+ use l10n_${lang%:*} || continue
+
+ dir=${lang#*:}
+
+ # for english we provide just helppack, as translation is always there
+ if [[ ${lang%:*} != en ]]; then
+ rpmdir="LibreOffice_${PV}_Linux_x86-64_rpm_langpack_${dir}/RPMS/"
+ [[ -d ${rpmdir} ]] || die "Missing directory: ${rpmdir}"
+ rpm_unpack ./${rpmdir}/*.rpm
+ fi
+ if [[ "${LANGUAGES_HELP}" =~ " ${lang} " ]] && use offlinehelp; then
+ rpmdir="LibreOffice_${PV}_Linux_x86-64_rpm_helppack_${dir}/RPMS/"
+ [[ -d ${rpmdir} ]] || die "Missing directory: ${rpmdir}"
+ rpm_unpack ./${rpmdir}/*.rpm
+ fi
+ done
+}
+
+src_configure() { :; }
+src_compile() { :; }
+
+src_install() {
+ local dir="${S}"/opt/${PN/-l10n/}$(ver_cut 1-2)/
+ # Condition required for people who do not install anything e.g. no l10n
+ # or just english with no offlinehelp.
+ if [[ -d "${dir}" ]] ; then
+ insinto /usr/$(get_libdir)/${PN/-l10n/}/
+ doins -r "${dir}"/*
+ fi
+ # remove extensions that are in l10n for some weird reason
+ rm -rf "${ED}"/usr/$(get_libdir)/${PN/-l10n/}/share/extensions/ || \
+ die "Failed to remove extensions"
+}
\ No newline at end of file
diff --git a/dev-lang/python-exec/Manifest b/dev-lang/python-exec/Manifest
new file mode 100644
index 0000000..4d72be5
--- /dev/null
+++ b/dev-lang/python-exec/Manifest
@@ -0,0 +1,6 @@
+DIST python-exec-2.4.6.tar.bz2 87634 BLAKE2B 7b6de8ad0e0603fafd3284e6e3c5247ad83f145ab4db6728914318ae8e6f5aaa3c0247f4e01238fca11519ef72fb1b11436aea7e2b8c988b8717b3f6a2a43c37 SHA512 e05eaf01b83de196a10933636ab6b1a5489a421592df49b8b58eabd0e732de970f902744cd3a06b5ab530a6d69fe6dfa8f270fbb09b9fe3df4ae04d516828050
+DIST python-exec-2.4.8.tar.bz2 82671 BLAKE2B ac85f3dd6da3d1c535ad56a25edbbcb1d0e75b91e3567b80f27fd01d32a199a713909a8552dffaacbe96c43bca491f31c3f0c7f1a618fb9144814365686715cf SHA512 d6dabab217dc2f1817e2f4d159102a9467f51b26b91f4ae7fb7e4930d30334f74bd8a5f37cc60d58c6e1e61e89a3b4d2e1bd17413493ba86f38fa71250cf5ac1
+EBUILD python-exec-2.4.6.ebuild 4411 BLAKE2B c8be02c4a12766ef1cff89ef03ea7c0105377f0772d783c9cfb8b3f0e3fa6454aa09bad6084e8762c0066793f8f9ab2c0795a6568dc70d905676088fa6a6545c SHA512 90e58ffe88ca3275aa356e336cb0230c4f190a989f8b1d23a278bba6905ebf3b421bb4c84e87c7e04ca333a2088f106c5548e1f0c29f8d92898b40a8a3e87694
+EBUILD python-exec-2.4.8.ebuild 4423 BLAKE2B 17181a365abca7d6a831be18d9d7b87a3269095c4e8f649650afc40f339a532839574e74b65960989272f245a3fa09d0043e9b6689d90da5ccceeb9cb5675110 SHA512 0600820d5aea21f24430926c20aba5ccebf77f03475a91534cb86a85477b180caf7a0169c749984a8d4d28f566fcbe9e5a7e27d1969b84ba9a6eb91ba51c2b20
+EBUILD python-exec-9999.ebuild 4213 BLAKE2B 317090a43c42f89db2068ba600c399497a4a8f30f27e810b70b3d726763ed651206f0c4f08db0e2e00907a715ee836116e2526c913b2bf8e9d5884bc4f3f9083 SHA512 164d6eb172aedff8c471701c567708b36a34542c57d2ddc1ab29f666d9dab8bffd90776d2c8ebc2cfdfefa78566dfea85691770f5900ee90756108f9b9871f3e
+MISC metadata.xml 589 BLAKE2B 7f9fa9750915db8b546b52a560a7fd8d9a63c4f310e423ebdc0508fe9b14363001b30f3c3db26f6d05eec8a44176d62a9335153dff2d55a41a31d3b428cc9ca6 SHA512 2ac0223af0a2cf95d2b18ef415eadb325af0094e4ec361a414b0d68b203dc1c937d3d680af96bdad1e8a48cb5786683bdbbd451f47a0f3a777c075e1690ccf7a
diff --git a/dev-lang/python-exec/metadata.xml b/dev-lang/python-exec/metadata.xml
new file mode 100644
index 0000000..ef39a52
--- /dev/null
+++ b/dev-lang/python-exec/metadata.xml
@@ -0,0 +1,17 @@
+
+
+
+
+ python@gentoo.org
+ Python
+
+
+
+ mgorny@gentoo.org
+ Michał Górny
+
+ https://github.com/mgorny/python-exec/issues/
+ mgorny/python-exec
+ mgorny/python-exec
+
+
diff --git a/dev-lang/python-exec/python-exec-2.4.6.ebuild b/dev-lang/python-exec/python-exec-2.4.6.ebuild
new file mode 100644
index 0000000..6350971
--- /dev/null
+++ b/dev-lang/python-exec/python-exec-2.4.6.ebuild
@@ -0,0 +1,133 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+# Kids, don't do this at home!
+inherit python-utils-r1
+PYTHON_COMPAT=( python2_7 python3_7 python3_10 )
+
+# Inherited purely to have PYTHON_TARGET flags which will satisfy USE
+# dependencies and trigger necessary rebuilds.
+inherit python-r1
+
+DESCRIPTION="Python script wrapper"
+HOMEPAGE="https://github.com/mgorny/python-exec/"
+SRC_URI="https://github.com/mgorny/python-exec/releases/download/v${PV}/${P}.tar.bz2"
+
+LICENSE="BSD-2"
+SLOT="2"
+KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~ppc-aix ~x64-cygwin ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE=""
+
+# eselect-python because of /usr/bin/python* collisions and new config
+# python versions because of missing $scriptdir/python* symlinks
+RDEPEND="
+ !> "${ED}"etc/python-exec/python-exec.conf || die
+ fi
+ fi
+}
diff --git a/dev-lang/python-exec/python-exec-2.4.8.ebuild b/dev-lang/python-exec/python-exec-2.4.8.ebuild
new file mode 100644
index 0000000..d143e69
--- /dev/null
+++ b/dev-lang/python-exec/python-exec-2.4.8.ebuild
@@ -0,0 +1,134 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+# Kids, don't do this at home!
+inherit python-utils-r1
+PYTHON_COMPAT=( python2_7 python3_7 python3_10 )
+
+# Inherited purely to have PYTHON_TARGET flags which will satisfy USE
+# dependencies and trigger necessary rebuilds.
+inherit python-r1
+
+DESCRIPTION="Python script wrapper"
+HOMEPAGE="https://github.com/mgorny/python-exec/"
+SRC_URI="https://github.com/mgorny/python-exec/releases/download/v${PV}/${P}.tar.bz2"
+
+LICENSE="BSD-2"
+SLOT="2"
+KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~ppc-aix ~x64-cygwin ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE=""
+
+# eselect-python because of /usr/bin/python* collisions and new config
+# python versions because of missing $scriptdir/python* symlinks
+RDEPEND="
+ !> "${ED}"etc/python-exec/python-exec.conf || die
+ fi
+ fi
+}
diff --git a/dev-lang/python-exec/python-exec-9999.ebuild b/dev-lang/python-exec/python-exec-9999.ebuild
new file mode 100644
index 0000000..d84b910
--- /dev/null
+++ b/dev-lang/python-exec/python-exec-9999.ebuild
@@ -0,0 +1,139 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+# Kids, don't do this at home!
+inherit python-utils-r1
+PYTHON_COMPAT=( python2_7 python3_7 python3_10 )
+
+# Inherited purely to have PYTHON_TARGET flags which will satisfy USE
+# dependencies and trigger necessary rebuilds.
+inherit autotools git-r3 python-r1
+
+DESCRIPTION="Python script wrapper"
+HOMEPAGE="https://github.com/mgorny/python-exec/"
+SRC_URI=""
+EGIT_REPO_URI="https://github.com/mgorny/python-exec.git"
+
+LICENSE="BSD-2"
+SLOT="2"
+KEYWORDS=""
+IUSE=""
+
+# eselect-python because of /usr/bin/python* collisions and new config
+# python versions because of missing $scriptdir/python* symlinks
+RDEPEND="
+ !> "${ED}"etc/python-exec/python-exec.conf || die
+ fi
+ fi
+}
diff --git a/dev-lang/python/Manifest b/dev-lang/python/Manifest
new file mode 100644
index 0000000..e2f62c4
--- /dev/null
+++ b/dev-lang/python/Manifest
@@ -0,0 +1,9 @@
+AUX pydoc.conf 169 BLAKE2B ce40bb3d5f858bd7a8d9ef5bf215a8ab592568a724f0e08aea219da014dac12fdfcbcf5fb168bb9aa57be110f74d656aed46179ffe11e3c992d84a647e442b7b SHA512 30d0776a4004cd641e6f283658c3c24915a21ea15fe40e506ff2c3a5f95936aa00c9490b04ab25f29e9b7ac65cd88fd54ca0b08e000e73820b13c7c57c0bf5b2
+AUX pydoc.init 600 BLAKE2B fb8775a6663483e5112ec283627610b746020d88494e772b92bb718a9493a52606e565c6c2fa4917a5cb963f166283d09883bd26903f2f3ced6c240d4e292a7f SHA512 9e71ad53486b6882a8441b24225c602195ee33d29dd1b60df27febbc6b752e79929be356152a489f893dcfb11f9c066b999787bc27a8ac61062c86e67a69e87a
+AUX python-2.7.10-cross-compile-warn-test.patch 775 BLAKE2B 617938353c7e19a9b931544ff1fdcd60cf46e3a68f3ff63bc6ac16432220aad13df4d2b405a968505fb64d31da51a478c46499944ab58e9bbfa5a5b44d392f00 SHA512 652941239541f6139ee3580ec0ea5240baf07ae1afb786f76a69b1d748de1f4dda2740a95c28866e9b0b59023410f8a1e86507642595991c0d90d187519cb758
+AUX python-2.7.10-system-libffi.patch 1232 BLAKE2B 3483385cbbf7ef2304cf109d05b5e1d58ec2b9015b614c996c66a9917ab10703865b40c775d7ff89a6fa80e9c8c9600292d8d916e9753027e9e0b23b0548ccff SHA512 3c888638180edc81b98a869478085de63741668ea62bdb919a60708fd64cb394e60f44a3730e2ccf3e41d1d61b72b469242fe2ccd20dc61bc2064b3e759c52bd
+AUX python-2.7.5-nonfatal-compileall.patch 750 BLAKE2B a7999a6c5a706fbab213cd8a01c6df9b130537556d59bf50b1f5ca223bb9dcd24ccfef48e70e5d3a8afe2b9c6236e1ada87d5899052a2b39f05c4644697953e2 SHA512 d2e93e2a6fcd55d516df0ddaca31af97faed677ea6b4be282eb99e7864f8a7399b5ca11139844a4b3c264832183483b0f4c8c9865c05de0e8520e6d2c8f1dbc6
+AUX python-2.7.9-ncurses-pkg-config.patch 305 BLAKE2B 92962397a1e74d9dca8bc232400e84673e0989239e6952c2ba9f25db6f9da343334e0ad325e8932fcec3f9a50e62d4e9b81a8d7a776cdbfc2d0399601591f534 SHA512 2c18b5041a7a2f306dd4d0d6695bd851ca14c9107b2e3e856ec094bc53c7cc407b49e1f4813ee9e753b3ad2d4f6edda943a66bb1e6c895ab956a5f84d30646c6
+DIST Python-3.10.3.tar.xz 19343528 BLAKE2B 5234f14d3dbc1b7c43da65fbc242218c1f94601d13ca84419cd9b29eab22ab411b7cd043ebaabc2b2aa1856e5e91c3ecc42eaaf333f92b8e133844e09d515bdf SHA512 5020407798ebaae6002b8de29475c1064a32f1527a0e4ec6fe7fcf076b4ea3ef0ab4b4a7864a6081cc8dd01dd545123198b11cc8dd1259c670394b7d81f35a86
+DIST python-gentoo-patches-3.10.3.tar.xz 8584 BLAKE2B 4287b33e696a1c350fef2ef34843353a2f4ad20feed2e9d7e05d727ec4f18105f57c21e7ab73941e14cc2ace27e8ac7f5e96ce2893b626c8e75cac52760f0935 SHA512 515025b13063eaee71738b8e1f071cd9930cf516e90c1c652adc6f8bee356598d152cb3337a6633500cda4228a5ddc2819f1db0cdb2524a479a0bca69ca557cb
+EBUILD python-3.10.3.ebuild 9848 BLAKE2B e893225fe2cc693517d79bd5b03ea306e01c8691b0a00b382132c0602659782c4769642391dcaa97039ccdaef58d8a2e6b8f04a2617373afdcd5e9e342f1c726 SHA512 c2fb95db6367ab429a13d2fbf431abd83ad10e14723585e2bd2c283222206900685c0ed04d057a40401d30f98adc8d2e89cbf8654a98adef913df6ea5440c4d0
diff --git a/dev-lang/python/files/pydoc.conf b/dev-lang/python/files/pydoc.conf
new file mode 100644
index 0000000..3c6920c
--- /dev/null
+++ b/dev-lang/python/files/pydoc.conf
@@ -0,0 +1,6 @@
+# /etc/init.d/pydoc.conf
+
+# This file contains the configuration for pydoc's internal webserver.
+
+# Default port for Python's pydoc server.
+@PYDOC_PORT_VARIABLE@="7464"
diff --git a/dev-lang/python/files/pydoc.init b/dev-lang/python/files/pydoc.init
new file mode 100644
index 0000000..f8e0563
--- /dev/null
+++ b/dev-lang/python/files/pydoc.init
@@ -0,0 +1,24 @@
+#!/sbin/openrc-run
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public Licence v2
+
+start() {
+ local pydoc_port="${@PYDOC_PORT_VARIABLE@-${PYDOC_PORT}}"
+
+ if [ -z "${pydoc_port}" ]; then
+ eerror "Port not set"
+ return 1
+ fi
+
+ ebegin "Starting pydoc server on port ${pydoc_port}"
+ start-stop-daemon --start --background --make-pidfile \
+ --pidfile /var/run/@PYDOC@.pid \
+ --exec /usr/bin/@PYDOC@ -- -p "${pydoc_port}"
+ eend $?
+}
+
+stop() {
+ ebegin "Stopping pydoc server"
+ start-stop-daemon --stop --quiet --pidfile /var/run/@PYDOC@.pid
+ eend $?
+}
diff --git a/dev-lang/python/files/python-2.7.10-cross-compile-warn-test.patch b/dev-lang/python/files/python-2.7.10-cross-compile-warn-test.patch
new file mode 100644
index 0000000..38433de
--- /dev/null
+++ b/dev-lang/python/files/python-2.7.10-cross-compile-warn-test.patch
@@ -0,0 +1,24 @@
+https://bugs.python.org/issue25397
+
+improve the cross-compile tests to be more focused
+
+--- a/configure.ac
++++ b/configure.ac
+@@ -1339,7 +1339,7 @@ if test "$GCC" = "yes"
+ then
+ AC_MSG_CHECKING(whether gcc supports ParseTuple __format__)
+ save_CFLAGS=$CFLAGS
+- CFLAGS="$CFLAGS -Werror -Wformat"
++ CFLAGS="$CFLAGS -Werror=format"
+ AC_COMPILE_IFELSE([
+ AC_LANG_PROGRAM([[void f(char*,...)__attribute((format(PyArg_ParseTuple, 1, 2)));]], [[]])
+ ],[
+@@ -4458,7 +4458,7 @@ then
+ [ac_cv_have_long_long_format="cross -- assuming no"
+ if test x$GCC = xyes; then
+ save_CFLAGS=$CFLAGS
+- CFLAGS="$CFLAGS -Werror -Wformat"
++ CFLAGS="$CFLAGS -Werror=format"
+ AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
+ #include
+ #include
diff --git a/dev-lang/python/files/python-2.7.10-system-libffi.patch b/dev-lang/python/files/python-2.7.10-system-libffi.patch
new file mode 100644
index 0000000..0b49b79
--- /dev/null
+++ b/dev-lang/python/files/python-2.7.10-system-libffi.patch
@@ -0,0 +1,36 @@
+make sure we respect the system libffi setting in our build config.
+the compiler probing is fragile and can break in some situations.
+
+--- a/setup.py
++++ b/setup.py
+@@ -2069,7 +2069,7 @@ class PyBuildExt(build_ext):
+ return True
+
+ def detect_ctypes(self, inc_dirs, lib_dirs):
+- self.use_system_libffi = False
++ self.use_system_libffi = ('--with-system-ffi' in sysconfig.get_config_var("CONFIG_ARGS"))
+ include_dirs = []
+ extra_compile_args = []
+ extra_link_args = []
+@@ -2113,7 +2113,7 @@ class PyBuildExt(build_ext):
+ sources=['_ctypes/_ctypes_test.c'])
+ self.extensions.extend([ext, ext_test])
+
+- if not '--with-system-ffi' in sysconfig.get_config_var("CONFIG_ARGS"):
++ if not self.use_system_libffi:
+ return
+
+ if host_platform == 'darwin':
+@@ -2141,10 +2141,10 @@ class PyBuildExt(build_ext):
+ ffi_lib = lib_name
+ break
+
+- if ffi_inc and ffi_lib:
++ if ffi_inc:
+ ext.include_dirs.extend(ffi_inc)
++ if ffi_lib:
+ ext.libraries.append(ffi_lib)
+- self.use_system_libffi = True
+
+
+ class PyBuildInstall(install):
diff --git a/dev-lang/python/files/python-2.7.5-nonfatal-compileall.patch b/dev-lang/python/files/python-2.7.5-nonfatal-compileall.patch
new file mode 100644
index 0000000..a762dfb
--- /dev/null
+++ b/dev-lang/python/files/python-2.7.5-nonfatal-compileall.patch
@@ -0,0 +1,18 @@
+diff --git a/Makefile.pre.in b/Makefile.pre.in
+--- a/Makefile.pre.in
++++ b/Makefile.pre.in
+@@ -1000,12 +1000,12 @@
+ $(INSTALL_DATA) $(srcdir)/Modules/xxmodule.c \
+ $(DESTDIR)$(LIBDEST)/distutils/tests ; \
+ fi
+- PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \
++ -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \
+ $(PYTHON_FOR_BUILD) -Wi -tt $(DESTDIR)$(LIBDEST)/compileall.py \
+ -d $(LIBDEST) -f \
+ -x 'bad_coding|badsyntax|site-packages|lib2to3/tests/data' \
+ $(DESTDIR)$(LIBDEST)
+- PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \
++ -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \
+ $(PYTHON_FOR_BUILD) -Wi -tt -O $(DESTDIR)$(LIBDEST)/compileall.py \
+ -d $(LIBDEST) -f \
+ -x 'bad_coding|badsyntax|site-packages|lib2to3/tests/data' \
diff --git a/dev-lang/python/files/python-2.7.9-ncurses-pkg-config.patch b/dev-lang/python/files/python-2.7.9-ncurses-pkg-config.patch
new file mode 100644
index 0000000..38ce6f7
--- /dev/null
+++ b/dev-lang/python/files/python-2.7.9-ncurses-pkg-config.patch
@@ -0,0 +1,13 @@
+do not hardcode /usr/include paths
+
+--- a/configure.ac
++++ b/configure.ac
+@@ -4316,7 +4316,7 @@ fi
+
+ # first curses configure check
+ ac_save_cppflags="$CPPFLAGS"
+-CPPFLAGS="$CPPFLAGS -I/usr/include/ncursesw"
++CPPFLAGS="$CPPFLAGS `$PKG_CONFIG --cflags ncursesw`"
+
+ AC_CHECK_HEADERS(curses.h ncurses.h)
+
diff --git a/dev-lang/python/python-3.10.3.ebuild b/dev-lang/python/python-3.10.3.ebuild
new file mode 100644
index 0000000..0578484
--- /dev/null
+++ b/dev-lang/python/python-3.10.3.ebuild
@@ -0,0 +1,345 @@
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+WANT_LIBTOOL="none"
+
+inherit autotools flag-o-matic pax-utils python-utils-r1 toolchain-funcs
+
+MY_P="Python-${PV}"
+PYVER=$(ver_cut 1-2)
+PATCHSET="python-gentoo-patches-${PV}"
+
+DESCRIPTION="An interpreted, interactive, object-oriented programming language"
+HOMEPAGE="https://www.python.org/"
+SRC_URI="https://www.python.org/ftp/python/${PV}/${MY_P}.tar.xz
+ https://dev.gentoo.org/~mgorny/dist/python/${PATCHSET}.tar.xz"
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="PSF-2"
+SLOT="${PYVER}/${PYVER}m"
+KEYWORDS="*"
+IUSE="bluetooth build examples gdbm hardened ipv6 libressl +ncurses +optimize +readline sqlite +ssl test tk wininst +xml"
+RESTRICT="!test? ( test )"
+
+# Do not add a dependency on dev-lang/python to this ebuild.
+# If you need to apply a patch which requires python for bootstrapping, please
+# run the bootstrap code on your dev box and include the results in the
+# patchset. See bug 447752.
+
+RDEPEND="app-arch/bzip2:=
+ app-arch/xz-utils:=
+ dev-libs/libffi:=
+ sys-apps/util-linux:=
+ >=sys-libs/zlib-1.1.3:=
+ virtual/libintl
+ gdbm? ( sys-libs/gdbm:=[berkdb] )
+ ncurses? ( >=sys-libs/ncurses-5.2:= )
+ readline? ( >=sys-libs/readline-4.1:= )
+ sqlite? ( >=dev-db/sqlite-3.3.8:3= )
+ ssl? (
+ !libressl? ( dev-libs/openssl:= )
+ libressl? ( dev-libs/libressl:= )
+ )
+ tk? (
+ >=dev-lang/tcl-8.0:=
+ >=dev-lang/tk-8.0:=
+ dev-tcltk/blt:=
+ dev-tcltk/tix
+ )
+ xml? ( >=dev-libs/expat-2.1:= )"
+# bluetooth requires headers from bluez
+DEPEND="${RDEPEND}
+ bluetooth? ( net-wireless/bluez )
+ test? ( app-arch/xz-utils[extra-filters(+)] )
+ virtual/pkgconfig
+ !sys-devel/gcc[libffi(-)]"
+RDEPEND+=" !build? ( app-misc/mime-types )"
+PDEPEND=">=app-eselect/eselect-python-20140125-r1"
+
+pkg_setup() {
+ use optimize && export CFLAGS="$CFLAGS -O3 -fno-semantic-interposition"
+}
+
+src_prepare() {
+ # Ensure that internal copies of expat, libffi and zlib are not used.
+ rm -fr Modules/expat || die
+ rm -fr Modules/_ctypes/libffi* || die
+ rm -fr Modules/zlib || die
+
+ local PATCHES=(
+ "${WORKDIR}/${PATCHSET}"
+ )
+
+ default
+
+ sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" \
+ setup.py || die "sed failed to replace @@GENTOO_LIBDIR@@"
+
+ eautoreconf
+}
+
+src_configure() {
+ local disable
+ # disable automagic bluetooth headers detection
+ use bluetooth || export ac_cv_header_bluetooth_bluetooth_h=no
+ use gdbm || disable+=" gdbm"
+ use ncurses || disable+=" _curses _curses_panel"
+ use readline || disable+=" readline"
+ use sqlite || disable+=" _sqlite3"
+ use ssl || export PYTHON_DISABLE_SSL="1"
+ use tk || disable+=" _tkinter"
+ use xml || disable+=" _elementtree pyexpat" # _elementtree uses pyexpat.
+ export PYTHON_DISABLE_MODULES="${disable}"
+
+ if ! use xml; then
+ ewarn "You have configured Python without XML support."
+ ewarn "This is NOT a recommended configuration as you"
+ ewarn "may face problems parsing any XML documents."
+ fi
+
+ if [[ -n "${PYTHON_DISABLE_MODULES}" ]]; then
+ einfo "Disabled modules: ${PYTHON_DISABLE_MODULES}"
+ fi
+
+ if [[ "$(gcc-major-version)" -ge 4 ]]; then
+ append-flags -fwrapv
+ fi
+
+ filter-flags -malign-double
+
+ # https://bugs.gentoo.org/show_bug.cgi?id=50309
+ if is-flagq -O3; then
+ is-flagq -fstack-protector-all && replace-flags -O3 -O2
+ use hardened && replace-flags -O3 -O2
+ fi
+
+ # Export CXX so it ends up in /usr/lib/python3.X/config/Makefile.
+ tc-export CXX
+
+ # Set LDFLAGS so we link modules with -lpython3.2 correctly.
+ # Needed on FreeBSD unless Python 3.2 is already installed.
+ # Please query BSD team before removing this!
+ append-ldflags "-L."
+
+ # Fix implicit declarations on cross and prefix builds. Bug #674070.
+ use ncurses && append-cppflags -I"${ESYSROOT}"/usr/include/ncursesw
+
+ local dbmliborder
+ if use gdbm; then
+ dbmliborder+="${dbmliborder:+:}gdbm"
+ fi
+
+ local myeconfargs=(
+ # glibc-2.30 removes it; since we can't cleanly force-rebuild
+ # Python on glibc upgrade, remove it proactively to give
+ # a chance for users rebuilding python before glibc
+ ac_cv_header_stropts_h=no
+
+ --enable-shared
+ $(use_enable ipv6)
+ --infodir='${prefix}/share/info'
+ --mandir='${prefix}/share/man'
+ --with-computed-gotos
+ --with-dbmliborder="${dbmliborder}"
+ --with-libc=
+ --enable-loadable-sqlite-extensions
+ --without-ensurepip
+ --with-system-expat
+ --with-system-ffi
+ )
+
+ OPT="" econf "${myeconfargs[@]}"
+}
+
+src_compile() {
+ # Ensure sed works as expected
+ # https://bugs.gentoo.org/594768
+ local -x LC_ALL=C
+
+ emake CPPFLAGS= CFLAGS= LDFLAGS=
+
+ # Work around bug 329499. See also bug 413751 and 457194.
+ if has_version dev-libs/libffi[pax_kernel]; then
+ pax-mark E python
+ else
+ pax-mark m python
+ fi
+}
+
+src_test() {
+ # Tests will not work when cross compiling.
+ if tc-is-cross-compiler; then
+ elog "Disabling tests due to crosscompiling."
+ return
+ fi
+
+ # Skip failing tests.
+ local skipped_tests="gdb"
+
+ for test in ${skipped_tests}; do
+ mv "${S}"/Lib/test/test_${test}.py "${T}"
+ done
+
+ # bug 660358
+ local -x COLUMNS=80
+
+ local -x PYTHONDONTWRITEBYTECODE=
+
+ emake test EXTRATESTOPTS="-u-network" CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty
+ local result=$?
+
+ for test in ${skipped_tests}; do
+ mv "${T}/test_${test}.py" "${S}"/Lib/test
+ done
+
+ elog "The following tests have been skipped:"
+ for test in ${skipped_tests}; do
+ elog "test_${test}.py"
+ done
+
+ elog "If you would like to run them, you may:"
+ elog "cd '${EPREFIX}/usr/lib/python${PYVER}/test'"
+ elog "and run the tests separately."
+
+ if [[ ${result} -ne 0 ]]; then
+ die "emake test failed"
+ fi
+}
+
+src_install() {
+ local libdir=${ED}/usr/lib/python${PYVER}
+
+ emake DESTDIR="${D}" altinstall
+
+ # Remove static library
+ # rm "${ED}"/usr/$(get_libdir)/libpython*.a || die
+
+ sed \
+ -e "s/\(CONFIGURE_LDFLAGS=\).*/\1/" \
+ -e "s/\(PY_LDFLAGS=\).*/\1/" \
+ -i "${libdir}/config-${PYVER}"*/Makefile || die "sed failed"
+
+ # Fix collisions between different slots of Python.
+ rm "${ED}/usr/$(get_libdir)/libpython3.so" || die
+
+ # Cheap hack to get version with ABIFLAGS
+ local abiver=$(cd "${ED}/usr/include"; echo python*)
+ if [[ ${abiver} != python${PYVER} ]]; then
+ # Replace python3.X with a symlink to python3.Xm
+ rm "${ED}/usr/bin/python${PYVER}" || die
+ dosym "${abiver}" "/usr/bin/python${PYVER}"
+ # Create python3.X-config symlink
+ dosym "${abiver}-config" "/usr/bin/python${PYVER}-config"
+ # Create python-3.5m.pc symlink
+ dosym "python-${PYVER}.pc" "/usr/$(get_libdir)/pkgconfig/${abiver/${PYVER}/-${PYVER}}.pc"
+ fi
+
+ # python seems to get rebuilt in src_install (bug 569908)
+ # Work around it for now.
+ if has_version dev-libs/libffi[pax_kernel]; then
+ pax-mark E "${ED}/usr/bin/${abiver}"
+ else
+ pax-mark m "${ED}/usr/bin/${abiver}"
+ fi
+
+ use sqlite || rm -r "${libdir}/"{sqlite3,test/test_sqlite*} || die
+ use tk || rm -r "${ED}/usr/bin/idle${PYVER}" "${libdir}/"{idlelib,tkinter,test/test_tk*} || die
+
+ # use wininst || rm "${libdir}/distutils/command/"wininst-*.exe || die
+
+ dodoc Misc/{ACKS,HISTORY,NEWS}
+
+ if use examples; then
+ docinto examples
+ find Tools -name __pycache__ -exec rm -fr {} + || die
+ dodoc -r Tools
+ fi
+ insinto /usr/share/gdb/auto-load/usr/$(get_libdir) #443510
+ local libname=$(printf 'e:\n\t@echo $(INSTSONAME)\ninclude Makefile\n' | \
+ emake --no-print-directory -s -f - 2>/dev/null)
+ newins "${S}"/Tools/gdb/libpython.py "${libname}"-gdb.py
+
+ newconfd "${FILESDIR}/pydoc.conf" pydoc-${PYVER}
+ newinitd "${FILESDIR}/pydoc.init" pydoc-${PYVER}
+ sed \
+ -e "s:@PYDOC_PORT_VARIABLE@:PYDOC${PYVER/./_}_PORT:" \
+ -e "s:@PYDOC@:pydoc${PYVER}:" \
+ -i "${ED}/etc/conf.d/pydoc-${PYVER}" \
+ "${ED}/etc/init.d/pydoc-${PYVER}" || die "sed failed"
+
+ local -x EPYTHON=python${PYVER}
+ # if not using a cross-compiler, use the fresh binary
+ if ! tc-is-cross-compiler; then
+ local -x PYTHON=./python
+ local -x LD_LIBRARY_PATH=${LD_LIBRARY_PATH+${LD_LIBRARY_PATH}:}${PWD}
+ else
+ local -x PYTHON=${EPREFIX}/usr/bin/${EPYTHON}
+ fi
+
+ echo "EPYTHON='${EPYTHON}'" > epython.py || die
+ python_domodule epython.py
+
+ # python-exec wrapping support
+ local pymajor=${PYVER%.*}
+ local scriptdir=${D}$(python_get_scriptdir)
+ mkdir -p "${scriptdir}" || die
+ # python and pythonX
+ ln -s "../../../bin/${abiver}" \
+ "${scriptdir}/python${pymajor}" || die
+ ln -s "python${pymajor}" "${scriptdir}/python" || die
+ # python-config and pythonX-config
+ # note: we need to create a wrapper rather than symlinking it due
+ # to some random dirname(argv[0]) magic performed by python-config
+ cat > "${scriptdir}/python${pymajor}-config" <<-EOF || die
+ #!/bin/sh
+ exec "${abiver}-config" "\${@}"
+ EOF
+ chmod +x "${scriptdir}/python${pymajor}-config" || die
+ ln -s "python${pymajor}-config" \
+ "${scriptdir}/python-config" || die
+ # 2to3, pydoc, pyvenv
+ ln -s "../../../bin/2to3-${PYVER}" \
+ "${scriptdir}/2to3" || die
+ ln -s "../../../bin/pydoc${PYVER}" \
+ "${scriptdir}/pydoc" || die
+ ln -s "../../../bin/pyvenv-${PYVER}" \
+ "${scriptdir}/pyvenv" || die
+ # idle
+ if use tk; then
+ ln -s "../../../bin/idle${PYVER}" \
+ "${scriptdir}/idle" || die
+ fi
+}
+
+pkg_preinst() {
+ if has_version "<${CATEGORY}/${PN}-${PYVER}" && ! has_version ">=${CATEGORY}/${PN}-${PYVER}_alpha"; then
+ python_updater_warning="1"
+ fi
+}
+
+eselect_python_update() {
+ if [[ -z "$(eselect python show)" || \
+ ! -f "${EROOT}/usr/bin/$(eselect python show)" ]]; then
+ eselect python update
+ fi
+
+ if [[ -z "$(eselect python show --python${PV%%.*})" || \
+ ! -f "${EROOT}/usr/bin/$(eselect python show --python${PV%%.*})" ]]
+ then
+ eselect python update --python${PV%%.*}
+ fi
+}
+
+pkg_postinst() {
+ eselect_python_update
+
+ if [[ "${python_updater_warning}" == "1" ]]; then
+ ewarn "You have just upgraded from an older version of Python."
+ ewarn
+ ewarn "Please adjust PYTHON_TARGETS (if so desired), and run emerge with the --newuse or --changed-use option to rebuild packages installing python modules."
+ fi
+}
+
+pkg_postrm() {
+ eselect_python_update
+}
diff --git a/dev-libs/libcbor/Manifest b/dev-libs/libcbor/Manifest
new file mode 100644
index 0000000..96ea062
--- /dev/null
+++ b/dev-libs/libcbor/Manifest
@@ -0,0 +1,2 @@
+DIST libcbor-0.8.0.tar.gz 267044 BLAKE2B e8548e7351984ebdcbeb5f13a7ca35412c3f3f05e2a44a5438d57b90bdcdc51f5265953163106f90ade911a96af665956ebeba7ed1c48cf207acf6d683af5606 SHA512 694d2d3a78d80072f96e0afb73590ca1f3572e41d2117330ef4313ed06271743b048d3ba3259c6ffe9a802d5e441379d0e54787d1d42fed08dc81ac4f06c6dbc
+EBUILD libcbor-0.8.0.ebuild 1412 BLAKE2B 37fa9e5d256c785c8d93ece1151a40c018fc23b9e5b542499a2608416adc4ff83e0f9dfa34b2d326a19028c5931afbe805e3b6d2b191bf365a293ff7cca0659e SHA512 f8e656cff6deed12c074f3d2de804ba5f0aa08b34a49a3e473e1ad0f58a99ed8a42b310919b3af83073f2adb2635aae1e8bea67c44b3986731d1be81e87ee1f4
diff --git a/dev-libs/libcbor/libcbor-0.8.0.ebuild b/dev-libs/libcbor/libcbor-0.8.0.ebuild
new file mode 100644
index 0000000..b71a5d8
--- /dev/null
+++ b/dev-libs/libcbor/libcbor-0.8.0.ebuild
@@ -0,0 +1,69 @@
+# Copyright 2020-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7..9} )
+inherit python-any-r1 cmake-utils
+
+DESCRIPTION="CBOR protocol implementation for C and others"
+HOMEPAGE="https://github.com/pjk/libcbor"
+SRC_URI="https://github.com/PJK/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ppc ppc64 ~s390 sparc x86"
+IUSE="+custom-alloc doc test"
+
+BDEPEND="
+ doc? (
+ $(python_gen_any_dep '
+ dev-python/sphinx[${PYTHON_USEDEP}]
+ dev-python/sphinx_rtd_theme[${PYTHON_USEDEP}]
+ dev-python/breathe[${PYTHON_USEDEP}]
+ ')
+ )
+ test? ( dev-util/cmocka )
+"
+
+RESTRICT="!test? ( test )"
+
+CMAKE_MAKEFILE_GENERATOR="emake"
+
+python_check_deps() {
+ has_version "dev-python/sphinx[${PYTHON_USEDEP}]" && \
+ has_version "dev-python/breathe[${PYTHON_USEDEP}]"
+}
+
+pkg_setup() {
+ use doc && python-any-r1_pkg_setup
+}
+
+src_configure() {
+ local -a mycmakeargs=(
+ -DCMAKE_BUILD_TYPE=Release
+ -DCBOR_CUSTOM_ALLOC=$(usex custom-alloc 'ON' 'OFF')
+ -DWITH_TESTS=$(usex test 'ON' 'OFF')
+ )
+
+ cmake-utils_src_configure
+}
+
+src_compile() {
+ cmake-utils_src_compile
+
+ if use doc; then
+ pushd doc >/dev/null || die
+ emake html man
+ popd >/dev/null || die
+ fi
+}
+
+src_install() {
+ cmake-utils_src_install
+
+ if use doc; then
+ dodoc -r doc/build/html
+ doman doc/build/man/*
+ fi
+}
diff --git a/dev-libs/libfido2/Manifest b/dev-libs/libfido2/Manifest
new file mode 100644
index 0000000..cbfe700
--- /dev/null
+++ b/dev-libs/libfido2/Manifest
@@ -0,0 +1,2 @@
+DIST libfido2-1.7.0.tar.gz 517426 BLAKE2B c7ad55d1402808ad12dc999b0ec67161a5fe82dfeaeed362c35f4183144af9bd2771c1e3318a731db46fd8fc21ccd0737024b72c8dd3c754e34625118817742f SHA512 f40d394883d909e9e3ea3308b32f7ca31a882c709e11b3b143ed5734d16b0c244d4932effe06965d566776b03d152b1fc280e73cdfeeb81b65d8414042af19fe
+EBUILD libfido2-1.7.0.ebuild 902 BLAKE2B 982a9fab49585bb15b46e3e0ded878de6279fb87f64e27529a1fc67948e51a33d9da7daef230807936f8ce1811253c2bbe3f89652010ee7ff419cd1ce9c126eb SHA512 f9824e7f0b4556891aa7a92e143f71d58854833a8f654d92dbdb8d62273082d99770e869788b3a8828d305663a9f0347f2a0cd6dd8bc93a42e2497a352a5ec16
diff --git a/dev-libs/libfido2/libfido2-1.7.0.ebuild b/dev-libs/libfido2/libfido2-1.7.0.ebuild
new file mode 100644
index 0000000..2d7414a
--- /dev/null
+++ b/dev-libs/libfido2/libfido2-1.7.0.ebuild
@@ -0,0 +1,53 @@
+# Copyright 2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit cmake udev linux-info
+
+DESCRIPTION="Provides library functionality for FIDO 2.0"
+HOMEPAGE="https://github.com/Yubico/libfido2"
+SRC_URI="https://github.com/Yubico/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0/1"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ppc ppc64 ~s390 sparc x86"
+IUSE="nfc +static-libs"
+
+DEPEND="
+ dev-libs/libcbor:=
+ dev-libs/openssl:0=
+ sys-libs/zlib:0=
+ virtual/libudev:=
+"
+
+RDEPEND="
+ ${DEPEND}
+"
+
+pkg_pretend() {
+ CONFIG_CHECK="
+ ~USB_HID
+ ~HIDRAW
+ "
+
+ check_extra_config
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DNFC_LINUX="$(usex nfc)"
+ )
+ cmake_src_configure
+}
+
+src_install() {
+ cmake_src_install
+
+ if ! use static-libs; then
+ rm -f "${ED}/$(get_libdir)"/*.a || die
+ fi
+
+ udev_newrules udev/70-u2f.rules 70-libfido2-u2f.rules
+}
+
diff --git a/dev-python/black/Manifest b/dev-python/black/Manifest
new file mode 100644
index 0000000..921407d
--- /dev/null
+++ b/dev-python/black/Manifest
@@ -0,0 +1,3 @@
+AUX black-20.8_beta1-setuptools_scm.patch 467 BLAKE2B 4dd16dde09bdb9c9b8480eff2542f11cbe712919dec6678193fae1dd2d58c646c76ecc4831a6bcbb54ed5a7f3692f61953bbb8856e8dcf6b64918ccbf32fe69c SHA512 47df09f60aae9ebbddfdf513d9b6caa30aaf60d65cd21027e965b0544085d63312dcbdc54906a0d1ef0edfaaf00f3cc753a7af3c113f4001ef4b48ca53e04c6d
+DIST black-20.8b1.tar.gz 1092546 BLAKE2B 5a0a755222617d8d551b627c91670ecc32a9330cc1197900a9d21b071d0d99ddd32e09786becfc577407ab402f6da3d8683a59a9deaea1f6b4f07b9e1e4ecbed SHA512 53d6f6a6f47027e5bdfd3909471c993480034c8aa8ae395792565b8d79fb4e3a44299ea529652c0ccabf4309d645db9179bf54efc06fee20517f479e91cec838
+EBUILD black-20.8_beta1.ebuild 534 BLAKE2B a4d56158d5a0cd6e1892091baeec6d0f5073e0c2c053ba78a18b10e0f418257bc83e5f19e11375a697bf26fb1b8aeca55ce18d399e20fcc4670f826651353a21 SHA512 e2761502cd0f64b285698077cdc8cf32aa3f317eae44881e4591d1bd0091bef13cca74ca4f4b6d4ddc9a51717a60fecdb38fb98b4bd043b919cab5a72b8cc9a5
diff --git a/dev-python/black/black-20.8_beta1.ebuild b/dev-python/black/black-20.8_beta1.ebuild
new file mode 100644
index 0000000..3dd7a1e
--- /dev/null
+++ b/dev-python/black/black-20.8_beta1.ebuild
@@ -0,0 +1,28 @@
+# Copyright 2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3+ )
+
+inherit distutils-r1
+
+MY_PV="${PV//_beta/b}"
+MY_P="${PN}-${MY_PV}"
+
+DESCRIPTION="The Uncompromising Code Formatter"
+HOMEPAGE="https://github.com/psf/black"
+SRC_URI="https://github.com/psf/${PN}/archive/${MY_PV}.tar.gz -> ${MY_P}.tar.gz"
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="*"
+
+BDEPEND="dev-python/setuptools"
+
+PATCHES=(
+ "${FILESDIR}/black-20.8_beta1-setuptools_scm.patch"
+)
+
+
diff --git a/dev-python/black/files/black-20.8_beta1-setuptools_scm.patch b/dev-python/black/files/black-20.8_beta1-setuptools_scm.patch
new file mode 100644
index 0000000..368c218
--- /dev/null
+++ b/dev-python/black/files/black-20.8_beta1-setuptools_scm.patch
@@ -0,0 +1,16 @@
+diff --git a/setup.py b/setup.py
+index 12fde25..340d2c0 100644
+--- a/setup.py
++++ b/setup.py
+@@ -47,10 +47,7 @@ else:
+
+ setup(
+ name="black",
+- use_scm_version={
+- "write_to": "src/_black_version.py",
+- "write_to_template": 'version = "{version}"\n',
+- },
++ version=os.getenv("MY_PV"),
+ description="The uncompromising code formatter.",
+ long_description=get_long_description(),
+ long_description_content_type="text/markdown",
diff --git a/dev-python/mypy_extensions/Manifest b/dev-python/mypy_extensions/Manifest
new file mode 100644
index 0000000..dd5a12b
--- /dev/null
+++ b/dev-python/mypy_extensions/Manifest
@@ -0,0 +1,2 @@
+DIST mypy_extensions-0.4.3.tar.gz 5545 BLAKE2B 8f1f988562390ee1ba3d90cafafec73c6fe080eef6b4321252d3b3aeffebf1ad13bdcae7ae75c69eac7bef91dcf3f846ae7f9a3f2ad6bad9de2bc8cfe5eed29f SHA512 22d8dc538cf6f77d97f4113dd34fce8095dd98944c7613fab2b3e71a3e9b7df1374654af41ead5c934f789ef1b72f54d980ab06f3ca28b8b4c6bb14ba1ca3ce2
+EBUILD mypy_extensions-0.4.3-r1.ebuild 846 BLAKE2B d6f1dbdc2fae5de1c137d678e69ae96b1631c91d1ed220f8cad196e81a8256d82dd83ef49850b3fead6032e10d8f55bea0b9ee2aaac68dec4b14bc0479158f35 SHA512 9a5b0eb9450978d793723a391ae1f5f7a2deb62bcefab5caadf250bf7d9ccc7891a3f238f77185c90875e50521181efffc9599c073dfe57d7bb017c89b5ac6ab
diff --git a/dev-python/mypy_extensions/mypy_extensions-0.4.3-r1.ebuild b/dev-python/mypy_extensions/mypy_extensions-0.4.3-r1.ebuild
new file mode 100644
index 0000000..f7eed0f
--- /dev/null
+++ b/dev-python/mypy_extensions/mypy_extensions-0.4.3-r1.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+PYTHON_COMPAT=( python3_{6..9} pypy3 )
+
+inherit distutils-r1
+
+DESCRIPTION="Optional static typing for Python"
+HOMEPAGE="http://www.mypy-lang.org/"
+SRC_URI="https://github.com/python/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+if [[ "${PV}" =~ [9]{4,} ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/python/${PN}"
+ EGIT_COMMIT="master"
+ else
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ppc ppc64 ~riscv sparc x86 ~x64-macos"
+fi
+
+LICENSE="MIT"
+SLOT="0"
+
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+distutils_enable_tests unittest
+distutils_enable_sphinx docs \
+ dev-python/sphinx \
+ dev-python/sphinx_rtd_theme
+
+python_test() {
+ "${PYTHON}" -m unittest discover tests -v || die "tests fail with ${EPYTHON}"
+ }
+
diff --git a/dev-python/typing-extensions/Manifest b/dev-python/typing-extensions/Manifest
new file mode 100644
index 0000000..c500a05
--- /dev/null
+++ b/dev-python/typing-extensions/Manifest
@@ -0,0 +1,2 @@
+DIST typing_extensions-3.7.4.3.tar.gz 38979 BLAKE2B c1b0cc4d5d66f43628f6b488aefdcdd9878aa75cd426fce68aea6039006c1f0126f1a492a817e5a18d2c611aa399c5415d8b5e047b58868ee7b8b2cccfe13825 SHA512 fa1f96b73b13308ddb2676684862916aac8741be4523387c6a0f682a52d307190aac3e4149317842e686d14483d8a37a9e1de2514a2d1ca86f9ae9c8b0e18eb1
+EBUILD typing-extensions-3.7.4.3.ebuild 722 BLAKE2B fa1d1b87cde89de52b3d517afc3d6746873f2e772f75a53bb1ead38a667e329d192bdcca11fd64ee058fbff7033236f13676a760610d8e1661017fe09ecff068 SHA512 2834ea6f5dc170672cbae18e46f267a3d47287d51d21f8d495e82ae95565ea4f08b37e360e2fdc8df911d51d419f6aef6bbbebbbd7368e28d8f09f41e50b4ede
diff --git a/dev-python/typing-extensions/typing-extensions-3.7.4.3.ebuild b/dev-python/typing-extensions/typing-extensions-3.7.4.3.ebuild
new file mode 100644
index 0000000..9526b2e
--- /dev/null
+++ b/dev-python/typing-extensions/typing-extensions-3.7.4.3.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3+ )
+
+inherit distutils-r1
+
+MY_PN=${PN/-/_}
+MY_P=${MY_PN}-${PV}
+
+DESCRIPTION="Type Hint extensions from Python 3.8 backported"
+HOMEPAGE="
+ https://pypi.org/project/typing-extensions/
+ https://github.com/python/typing/"
+SRC_URI="mirror://pypi/${MY_PN:0:1}/${MY_PN}/${MY_P}.tar.gz"
+S=${WORKDIR}/${MY_P}
+
+LICENSE="PSF-2"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~x64-macos ~x64-solaris"
+
+python_test() {
+ cd "${S}"/src_py3 || die
+ "${EPYTHON}" test_typing_extensions.py -v || die "tests failed under ${EPYTHON}"
+}
+
diff --git a/dev-qt/qtcore/qtcore-5.9.7.ebuild b/dev-qt/qtcore/qtcore-5.9.7.ebuild
new file mode 100644
index 0000000..8d889f0
--- /dev/null
+++ b/dev-qt/qtcore/qtcore-5.9.7.ebuild
@@ -0,0 +1,76 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+QT5_MODULE="qtbase"
+inherit qt5-build
+
+DESCRIPTION="Cross-platform application development framework"
+
+if [[ ${QT5_BUILD_TYPE} == release ]]; then
+ KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-fbsd"
+fi
+
+IUSE="icu systemd"
+
+DEPEND="
+ dev-libs/double-conversion:=
+ dev-libs/glib:2
+ dev-libs/libpcre2[pcre16,unicode]
+ sys-libs/zlib
+ icu? ( dev-libs/icu:= )
+ !icu? ( virtual/libiconv )
+ systemd? ( sys-apps/systemd:= )
+"
+RDEPEND="${DEPEND}
+ !> "${D%/}"/${QT5_HEADERDIR}/QtCore/qconfig.h <<- _EOF_ || die
+
+ #if defined(QT_NO_${flag}) && defined(QT_${flag})
+ # undef QT_NO_${flag}
+ #elif !defined(QT_NO_${flag}) && !defined(QT_${flag})
+ # define QT_NO_${flag}
+ #endif
+ _EOF_
+ done
+}
+
diff --git a/eclass/python-r1.eclass b/eclass/python-r1.eclass
new file mode 100644
index 0000000..12b5827
--- /dev/null
+++ b/eclass/python-r1.eclass
@@ -0,0 +1,836 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# @ECLASS: python-r1.eclass
+# @MAINTAINER:
+# Python team
+# @AUTHOR:
+# Author: Michał Górny
+# Based on work of: Krzysztof Pawlik
+# @SUPPORTED_EAPIS: 5 6 7
+# @BLURB: A common, simple eclass for Python packages.
+# @DESCRIPTION:
+# A common eclass providing helper functions to build and install
+# packages supporting being installed for multiple Python
+# implementations.
+#
+# This eclass sets correct IUSE. Modification of REQUIRED_USE has to
+# be done by the author of the ebuild (but PYTHON_REQUIRED_USE is
+# provided for convenience, see below). python-r1 exports PYTHON_DEPS
+# and PYTHON_USEDEP so you can create correct dependencies for your
+# package easily. It also provides methods to easily run a command for
+# each enabled Python implementation and duplicate the sources for them.
+#
+# Please note that python-r1 will always inherit python-utils-r1 as
+# well. Thus, all the functions defined there can be used
+# in the packages using python-r1, and there is no need ever to inherit
+# both.
+#
+# For more information, please see the Python Guide:
+# https://dev.gentoo.org/~mgorny/python-guide/
+
+case "${EAPI:-0}" in
+ 0|1|2|3|4)
+ die "Unsupported EAPI=${EAPI:-0} (too old) for ${ECLASS}"
+ ;;
+ 5|6|7)
+ # EAPI=5 is required for sane USE_EXPAND dependencies
+ ;;
+ *)
+ die "Unsupported EAPI=${EAPI} (unknown) for ${ECLASS}"
+ ;;
+esac
+
+if [[ ! ${_PYTHON_R1} ]]; then
+
+if [[ ${_PYTHON_SINGLE_R1} ]]; then
+ die 'python-r1.eclass can not be used with python-single-r1.eclass.'
+elif [[ ${_PYTHON_ANY_R1} ]]; then
+ die 'python-r1.eclass can not be used with python-any-r1.eclass.'
+fi
+
+[[ ${EAPI} == [45] ]] && inherit eutils
+inherit multibuild python-utils-r1
+
+fi
+
+# @ECLASS-VARIABLE: PYTHON_COMPAT
+# @REQUIRED
+# @DESCRIPTION:
+# This variable contains a list of Python implementations the package
+# supports. It must be set before the `inherit' call. It has to be
+# an array.
+#
+# Example:
+# @CODE
+# PYTHON_COMPAT=( python2_7 python3_3 python3_4 )
+# @CODE
+#
+# Please note that you can also use bash brace expansion if you like:
+# @CODE
+# PYTHON_COMPAT=( python2_7 python3_{3,4} )
+# @CODE
+
+# @ECLASS-VARIABLE: PYTHON_COMPAT_OVERRIDE
+# @USER_VARIABLE
+# @DEFAULT_UNSET
+# @DESCRIPTION:
+# This variable can be used when working with ebuilds to override
+# the in-ebuild PYTHON_COMPAT. It is a string listing all
+# the implementations which package will be built for. It need be
+# specified in the calling environment, and not in ebuilds.
+#
+# It should be noted that in order to preserve metadata immutability,
+# PYTHON_COMPAT_OVERRIDE does not affect IUSE nor dependencies.
+# The state of PYTHON_TARGETS is ignored, and all the implementations
+# in PYTHON_COMPAT_OVERRIDE are built. Dependencies need to be satisfied
+# manually.
+#
+# Example:
+# @CODE
+# PYTHON_COMPAT_OVERRIDE='pypy python3_3' emerge -1v dev-python/foo
+# @CODE
+
+# @ECLASS-VARIABLE: PYTHON_REQ_USE
+# @DEFAULT_UNSET
+# @DESCRIPTION:
+# The list of USEflags required to be enabled on the chosen Python
+# implementations, formed as a USE-dependency string. It should be valid
+# for all implementations in PYTHON_COMPAT, so it may be necessary to
+# use USE defaults.
+#
+# This should be set before calling `inherit'.
+#
+# Example:
+# @CODE
+# PYTHON_REQ_USE="gdbm,ncurses(-)?"
+# @CODE
+#
+# It will cause the Python dependencies to look like:
+# @CODE
+# python_targets_pythonX_Y? ( dev-lang/python:X.Y[gdbm,ncurses(-)?] )
+# @CODE
+
+# @ECLASS-VARIABLE: PYTHON_DEPS
+# @OUTPUT_VARIABLE
+# @DESCRIPTION:
+# This is an eclass-generated Python dependency string for all
+# implementations listed in PYTHON_COMPAT.
+#
+# Example use:
+# @CODE
+# RDEPEND="${PYTHON_DEPS}
+# dev-foo/mydep"
+# DEPEND="${RDEPEND}"
+# @CODE
+#
+# Example value:
+# @CODE
+# dev-lang/python-exec:=
+# python_targets_python2_7? ( dev-lang/python:2.7[gdbm] )
+# python_targets_pypy? ( dev-python/pypy[gdbm] )
+# @CODE
+
+# @ECLASS-VARIABLE: PYTHON_USEDEP
+# @OUTPUT_VARIABLE
+# @DESCRIPTION:
+# This is an eclass-generated USE-dependency string which can be used to
+# depend on another Python package being built for the same Python
+# implementations.
+#
+# The generate USE-flag list is compatible with packages using python-r1
+# and python-distutils-ng eclasses. It must not be used on packages
+# using python.eclass.
+#
+# Example use:
+# @CODE
+# RDEPEND="dev-python/foo[${PYTHON_USEDEP}]"
+# @CODE
+#
+# Example value:
+# @CODE
+# python_targets_python2_7(-)?,python_targets_python3_4(-)?
+# @CODE
+
+# @ECLASS-VARIABLE: PYTHON_REQUIRED_USE
+# @OUTPUT_VARIABLE
+# @DESCRIPTION:
+# This is an eclass-generated required-use expression which ensures at
+# least one Python implementation has been enabled.
+#
+# This expression should be utilized in an ebuild by including it in
+# REQUIRED_USE, optionally behind a use flag.
+#
+# Example use:
+# @CODE
+# REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+# @CODE
+#
+# Example value:
+# @CODE
+# || ( python_targets_python2_7 python_targets_python3_4 )
+# @CODE
+
+_python_set_globals() {
+ local deps i PYTHON_PKG_DEP
+
+ _python_set_impls
+
+ for i in "${_PYTHON_SUPPORTED_IMPLS[@]}"; do
+ _python_export "${i}" PYTHON_PKG_DEP
+ deps+="python_targets_${i}? ( ${PYTHON_PKG_DEP} ) "
+ done
+
+ local flags=( "${_PYTHON_SUPPORTED_IMPLS[@]/#/python_targets_}" )
+ local optflags=${flags[@]/%/(-)?}
+
+ # A nice QA trick here. Since a python-single-r1 package has to have
+ # at least one PYTHON_SINGLE_TARGET enabled (REQUIRED_USE),
+ # the following check will always fail on those packages. Therefore,
+ # it should prevent developers from mistakenly depending on packages
+ # not supporting multiple Python implementations.
+
+ local flags_st=( "${_PYTHON_SUPPORTED_IMPLS[@]/#/-python_single_target_}" )
+ optflags+=,${flags_st[@]/%/(-)}
+ local requse="|| ( ${flags[*]} )"
+ local usedep=${optflags// /,}
+
+ # 1) well, python-exec would suffice as an RDEP
+ # but no point in making this overcomplex, BDEP doesn't hurt anyone
+ # 2) python-exec should be built with all targets forced anyway
+ # but if new targets were added, we may need to force a rebuild
+ deps+=">=dev-lang/python-exec-2:=[${usedep}]"
+
+ if [[ ${PYTHON_DEPS+1} ]]; then
+ # IUSE is magical, so we can't really check it
+ # (but we verify PYTHON_COMPAT already)
+
+ if [[ ${PYTHON_DEPS} != "${deps}" ]]; then
+ eerror "PYTHON_DEPS have changed between inherits (PYTHON_REQ_USE?)!"
+ eerror "Before: ${PYTHON_DEPS}"
+ eerror "Now : ${deps}"
+ die "PYTHON_DEPS integrity check failed"
+ fi
+
+ # these two are formality -- they depend on PYTHON_COMPAT only
+ if [[ ${PYTHON_REQUIRED_USE} != ${requse} ]]; then
+ eerror "PYTHON_REQUIRED_USE have changed between inherits!"
+ eerror "Before: ${PYTHON_REQUIRED_USE}"
+ eerror "Now : ${requse}"
+ die "PYTHON_REQUIRED_USE integrity check failed"
+ fi
+
+ if [[ ${PYTHON_USEDEP} != "${usedep}" ]]; then
+ eerror "PYTHON_USEDEP have changed between inherits!"
+ eerror "Before: ${PYTHON_USEDEP}"
+ eerror "Now : ${usedep}"
+ die "PYTHON_USEDEP integrity check failed"
+ fi
+ else
+ IUSE=${flags[*]}
+
+ PYTHON_DEPS=${deps}
+ PYTHON_REQUIRED_USE=${requse}
+ PYTHON_USEDEP=${usedep}
+ readonly PYTHON_DEPS PYTHON_REQUIRED_USE
+ fi
+}
+_python_set_globals
+unset -f _python_set_globals
+
+if [[ ! ${_PYTHON_R1} ]]; then
+
+# @FUNCTION: _python_validate_useflags
+# @INTERNAL
+# @DESCRIPTION:
+# Enforce the proper setting of PYTHON_TARGETS, if PYTHON_COMPAT_OVERRIDE
+# is not in effect. If it is, just warn that the flags will be ignored.
+_python_validate_useflags() {
+ debug-print-function ${FUNCNAME} "${@}"
+
+ if [[ ${PYTHON_COMPAT_OVERRIDE} ]]; then
+ if [[ ! ${_PYTHON_COMPAT_OVERRIDE_WARNED} ]]; then
+ ewarn "WARNING: PYTHON_COMPAT_OVERRIDE in effect. The following Python"
+ ewarn "implementations will be enabled:"
+ ewarn
+ ewarn " ${PYTHON_COMPAT_OVERRIDE}"
+ ewarn
+ ewarn "Dependencies won't be satisfied, and PYTHON_TARGETS will be ignored."
+ _PYTHON_COMPAT_OVERRIDE_WARNED=1
+ fi
+ # we do not use flags with PCO
+ return
+ fi
+
+ local i
+
+ for i in "${_PYTHON_SUPPORTED_IMPLS[@]}"; do
+ use "python_targets_${i}" && return 0
+ done
+
+ eerror "No Python implementation selected for the build. Please add one"
+ eerror "of the following values to your PYTHON_TARGETS (in make.conf):"
+ eerror
+ eerror "${PYTHON_COMPAT[@]}"
+ echo
+ die "No supported Python implementation in PYTHON_TARGETS."
+}
+
+# @FUNCTION: _python_gen_usedep
+# @USAGE: [...]
+# @INTERNAL
+# @DESCRIPTION:
+# Output a USE dependency string for Python implementations which
+# are both in PYTHON_COMPAT and match any of the patterns passed
+# as parameters to the function.
+#
+# The patterns can be either fnmatch-style patterns (matched via bash
+# == operator against PYTHON_COMPAT values) or '-2' / '-3' to indicate
+# appropriately all enabled Python 2/3 implementations (alike
+# python_is_python3). Remember to escape or quote the fnmatch patterns
+# to prevent accidental shell filename expansion.
+#
+# This is an internal function used to implement python_gen_cond_dep
+# and deprecated python_gen_usedep.
+_python_gen_usedep() {
+ debug-print-function ${FUNCNAME} "${@}"
+
+ local impl matches=()
+
+ _python_verify_patterns "${@}"
+ for impl in "${_PYTHON_SUPPORTED_IMPLS[@]}"; do
+ if _python_impl_matches "${impl}" "${@}"; then
+ matches+=(
+ "python_targets_${impl}(-)?"
+ "-python_single_target_${impl}(-)"
+ )
+ fi
+ done
+
+ [[ ${matches[@]} ]] || die "No supported implementations match python_gen_usedep patterns: ${@}"
+
+ local out=${matches[@]}
+ echo "${out// /,}"
+}
+
+# @FUNCTION: python_gen_usedep
+# @USAGE: [...]
+# @DESCRIPTION:
+# DEPRECATED. Please use python_gen_cond_dep instead.
+#
+# Output a USE dependency string for Python implementations which
+# are both in PYTHON_COMPAT and match any of the patterns passed
+# as parameters to the function.
+#
+# The patterns can be either fnmatch-style patterns (matched via bash
+# == operator against PYTHON_COMPAT values) or '-2' / '-3' to indicate
+# appropriately all enabled Python 2/3 implementations (alike
+# python_is_python3). Remember to escape or quote the fnmatch patterns
+# to prevent accidental shell filename expansion.
+#
+# When all implementations are requested, please use ${PYTHON_USEDEP}
+# instead. Please also remember to set an appropriate REQUIRED_USE
+# to avoid ineffective USE flags.
+#
+# Example:
+# @CODE
+# PYTHON_COMPAT=( python{2_7,3_4} )
+# DEPEND="doc? ( dev-python/epydoc[$(python_gen_usedep 'python2*')] )"
+# @CODE
+#
+# It will cause the dependency to look like:
+# @CODE
+# DEPEND="doc? ( dev-python/epydoc[python_targets_python2_7?] )"
+# @CODE
+python_gen_usedep() {
+ debug-print-function ${FUNCNAME} "${@}"
+
+ # output only once, during some reasonable phase
+ # (avoid spamming cache regen runs)
+ if [[ ${EBUILD_PHASE} == setup ]]; then
+ eqawarn "python_gen_usedep() is deprecated. Please use python_gen_cond_dep instead."
+ fi
+ _python_gen_usedep "${@}"
+}
+
+# @FUNCTION: python_gen_useflags
+# @USAGE: [...]
+# @DESCRIPTION:
+# Output a list of USE flags for Python implementations which
+# are both in PYTHON_COMPAT and match any of the patterns passed
+# as parameters to the function.
+#
+# The patterns can be either fnmatch-style patterns (matched via bash
+# == operator against PYTHON_COMPAT values) or '-2' / '-3' to indicate
+# appropriately all enabled Python 2/3 implementations (alike
+# python_is_python3). Remember to escape or quote the fnmatch patterns
+# to prevent accidental shell filename expansion.
+#
+# Example:
+# @CODE
+# PYTHON_COMPAT=( python{2_7,3_4} )
+# REQUIRED_USE="doc? ( || ( $(python_gen_useflags python2*) ) )"
+# @CODE
+#
+# It will cause the variable to look like:
+# @CODE
+# REQUIRED_USE="doc? ( || ( python_targets_python2_7 ) )"
+# @CODE
+python_gen_useflags() {
+ debug-print-function ${FUNCNAME} "${@}"
+
+ local impl matches=()
+
+ _python_verify_patterns "${@}"
+ for impl in "${_PYTHON_SUPPORTED_IMPLS[@]}"; do
+ if _python_impl_matches "${impl}" "${@}"; then
+ matches+=( "python_targets_${impl}" )
+ fi
+ done
+
+ echo "${matches[@]}"
+}
+
+# @FUNCTION: python_gen_cond_dep
+# @USAGE: [...]
+# @DESCRIPTION:
+# Output a list of -ies made conditional to USE flags
+# of Python implementations which are both in PYTHON_COMPAT and match
+# any of the patterns passed as the remaining parameters.
+#
+# The patterns can be either fnmatch-style patterns (matched via bash
+# == operator against PYTHON_COMPAT values) or '-2' / '-3' to indicate
+# appropriately all enabled Python 2/3 implementations (alike
+# python_is_python3). Remember to escape or quote the fnmatch patterns
+# to prevent accidental shell filename expansion.
+#
+# In order to enforce USE constraints on the packages, verbatim
+# '${PYTHON_USEDEP}' (quoted!) may be placed in the dependency
+# specification. It will get expanded within the function into a proper
+# USE dependency string.
+#
+# Example:
+# @CODE
+# PYTHON_COMPAT=( python{2_7,3_{3,4}} pypy )
+# RDEPEND="$(python_gen_cond_dep \
+# 'dev-python/unittest2[${PYTHON_USEDEP}]' python2_7 pypy )"
+# @CODE
+#
+# It will cause the variable to look like:
+# @CODE
+# RDEPEND="python_targets_python2_7? (
+# dev-python/unittest2[python_targets_python2_7?] )
+# python_targets_pypy? (
+# dev-python/unittest2[python_targets_pypy?] )"
+# @CODE
+python_gen_cond_dep() {
+ debug-print-function ${FUNCNAME} "${@}"
+
+ local impl matches=()
+ local dep=${1}
+ shift
+
+ _python_verify_patterns "${@}"
+ for impl in "${_PYTHON_SUPPORTED_IMPLS[@]}"; do
+ if _python_impl_matches "${impl}" "${@}"; then
+ # substitute ${PYTHON_USEDEP} if used
+ # (since python_gen_usedep() will not return ${PYTHON_USEDEP}
+ # the code is run at most once)
+ if [[ ${dep} == *'${PYTHON_USEDEP}'* ]]; then
+ local usedep=$(_python_gen_usedep "${@}")
+ dep=${dep//\$\{PYTHON_USEDEP\}/${usedep}}
+ fi
+
+ matches+=( "python_targets_${impl}? ( ${dep} )" )
+ fi
+ done
+
+ echo "${matches[@]}"
+}
+
+# @FUNCTION: python_gen_impl_dep
+# @USAGE: [ [...]]
+# @DESCRIPTION:
+# Output a dependency on Python implementations with the specified USE
+# dependency string appended, or no USE dependency string if called
+# without the argument (or with empty argument). If any implementation
+# patterns are passed, the output dependencies will be generated only
+# for the implementations matching them.
+#
+# The patterns can be either fnmatch-style patterns (matched via bash
+# == operator against PYTHON_COMPAT values) or '-2' / '-3' to indicate
+# appropriately all enabled Python 2/3 implementations (alike
+# python_is_python3). Remember to escape or quote the fnmatch patterns
+# to prevent accidental shell filename expansion.
+#
+# Use this function when you need to request different USE flags
+# on the Python interpreter depending on package's USE flags. If you
+# only need a single set of interpreter USE flags, just set
+# PYTHON_REQ_USE and use ${PYTHON_DEPS} globally.
+#
+# Example:
+# @CODE
+# PYTHON_COMPAT=( python{2_7,3_{3,4}} pypy )
+# RDEPEND="foo? ( $(python_gen_impl_dep 'xml(+)') )"
+# @CODE
+#
+# It will cause the variable to look like:
+# @CODE
+# RDEPEND="foo? (
+# python_targets_python2_7? (
+# dev-lang/python:2.7[xml(+)] )
+# python_targets_pypy? (
+# dev-python/pypy[xml(+)] ) )"
+# @CODE
+python_gen_impl_dep() {
+ debug-print-function ${FUNCNAME} "${@}"
+
+ local impl matches=()
+ local PYTHON_REQ_USE=${1}
+ shift
+
+ _python_verify_patterns "${@}"
+ for impl in "${_PYTHON_SUPPORTED_IMPLS[@]}"; do
+ if _python_impl_matches "${impl}" "${@}"; then
+ local PYTHON_PKG_DEP
+ _python_export "${impl}" PYTHON_PKG_DEP
+ matches+=( "python_targets_${impl}? ( ${PYTHON_PKG_DEP} )" )
+ fi
+ done
+
+ echo "${matches[@]}"
+}
+
+# @FUNCTION: python_gen_any_dep
+# @USAGE: [...]
+# @DESCRIPTION:
+# Generate an any-of dependency that enforces a version match between
+# the Python interpreter and Python packages. needs
+# to list one or more dependencies with verbatim '${PYTHON_USEDEP}'
+# references (quoted!) that will get expanded inside the function.
+# Optionally, patterns may be specified to restrict the dependency
+# to a subset of Python implementations supported by the ebuild.
+#
+# The patterns can be either fnmatch-style patterns (matched via bash
+# == operator against PYTHON_COMPAT values) or '-2' / '-3' to indicate
+# appropriately all enabled Python 2/3 implementations (alike
+# python_is_python3). Remember to escape or quote the fnmatch patterns
+# to prevent accidental shell filename expansion.
+#
+# This should be used along with an appropriate python_check_deps()
+# that checks which of the any-of blocks were matched, and python_setup
+# call that enables use of the matched implementation.
+#
+# Example use:
+# @CODE
+# DEPEND="$(python_gen_any_dep '
+# dev-python/foo[${PYTHON_USEDEP}]
+# || ( dev-python/bar[${PYTHON_USEDEP}]
+# dev-python/baz[${PYTHON_USEDEP}] )' -2)"
+#
+# python_check_deps() {
+# has_version "dev-python/foo[${PYTHON_USEDEP}]" \
+# && { has_version "dev-python/bar[${PYTHON_USEDEP}]" \
+# || has_version "dev-python/baz[${PYTHON_USEDEP}]"; }
+# }
+#
+# src_compile() {
+# python_foreach_impl usual_code
+#
+# # some common post-build task that requires Python 2
+# python_setup -2
+# emake frobnicate
+# }
+# @CODE
+#
+# Example value:
+# @CODE
+# || (
+# (
+# dev-lang/python:2.7
+# dev-python/foo[python_targets_python2_7(-)?,python_single_target_python2_7(+)?]
+# || ( dev-python/bar[python_targets_python2_7(-)?,python_single_target_python2_7(+)?]
+# dev-python/baz[python_targets_python2_7(-)?,python_single_target_python2_7(+)?] )
+# )
+# (
+# dev-lang/python:3.3
+# dev-python/foo[python_targets_python3_3(-)?,python_single_target_python3_3(+)?]
+# || ( dev-python/bar[python_targets_python3_3(-)?,python_single_target_python3_3(+)?]
+# dev-python/baz[python_targets_python3_3(-)?,python_single_target_python3_3(+)?] )
+# )
+# )
+# @CODE
+python_gen_any_dep() {
+ debug-print-function ${FUNCNAME} "${@}"
+
+ local depstr=${1}
+ [[ ${depstr} ]] || die "No dependency string provided"
+ shift
+
+ local i PYTHON_PKG_DEP out=
+ _python_verify_patterns "${@}"
+ for i in "${_PYTHON_SUPPORTED_IMPLS[@]}"; do
+ if _python_impl_matches "${i}" "${@}"; then
+ local PYTHON_USEDEP="python_targets_${i}(-),python_single_target_${i}(+)"
+ _python_export "${i}" PYTHON_PKG_DEP
+
+ local i_depstr=${depstr//\$\{PYTHON_USEDEP\}/${PYTHON_USEDEP}}
+ # note: need to strip '=' slot operator for || deps
+ out="( ${PYTHON_PKG_DEP/:0=/:0} ${i_depstr} ) ${out}"
+ fi
+ done
+ echo "|| ( ${out})"
+}
+
+# @ECLASS-VARIABLE: BUILD_DIR
+# @OUTPUT_VARIABLE
+# @DEFAULT_UNSET
+# @DESCRIPTION:
+# The current build directory. In global scope, it is supposed to
+# contain an initial build directory; if unset, it defaults to ${S}.
+#
+# In functions run by python_foreach_impl(), the BUILD_DIR is locally
+# set to an implementation-specific build directory. That path is
+# created through appending a hyphen and the implementation name
+# to the final component of the initial BUILD_DIR.
+#
+# Example value:
+# @CODE
+# ${WORKDIR}/foo-1.3-python2_7
+# @CODE
+
+# @FUNCTION: python_copy_sources
+# @DESCRIPTION:
+# Create a single copy of the package sources for each enabled Python
+# implementation.
+#
+# The sources are always copied from initial BUILD_DIR (or S if unset)
+# to implementation-specific build directory matching BUILD_DIR used by
+# python_foreach_abi().
+python_copy_sources() {
+ debug-print-function ${FUNCNAME} "${@}"
+
+ local MULTIBUILD_VARIANTS
+ _python_obtain_impls
+
+ multibuild_copy_sources
+}
+
+# @FUNCTION: _python_obtain_impls
+# @INTERNAL
+# @DESCRIPTION:
+# Set up the enabled implementation list.
+_python_obtain_impls() {
+ _python_validate_useflags
+
+ if [[ ${PYTHON_COMPAT_OVERRIDE} ]]; then
+ MULTIBUILD_VARIANTS=( ${PYTHON_COMPAT_OVERRIDE} )
+ return
+ fi
+
+ MULTIBUILD_VARIANTS=()
+
+ local impl
+ for impl in "${_PYTHON_SUPPORTED_IMPLS[@]}"; do
+ use "python_targets_${impl}" && MULTIBUILD_VARIANTS+=( "${impl}" )
+ done
+}
+
+# @FUNCTION: _python_multibuild_wrapper
+# @USAGE: [...]
+# @INTERNAL
+# @DESCRIPTION:
+# Initialize the environment for Python implementation selected
+# for multibuild.
+_python_multibuild_wrapper() {
+ debug-print-function ${FUNCNAME} "${@}"
+
+ local -x EPYTHON PYTHON
+ local -x PATH=${PATH} PKG_CONFIG_PATH=${PKG_CONFIG_PATH}
+ _python_export "${MULTIBUILD_VARIANT}" EPYTHON PYTHON
+ _python_wrapper_setup
+
+ "${@}"
+}
+
+# @FUNCTION: python_foreach_impl
+# @USAGE: [...]
+# @DESCRIPTION:
+# Run the given command for each of the enabled Python implementations.
+# If additional parameters are passed, they will be passed through
+# to the command.
+#
+# The function will return 0 status if all invocations succeed.
+# Otherwise, the return code from first failing invocation will
+# be returned.
+#
+# For each command being run, EPYTHON, PYTHON and BUILD_DIR are set
+# locally, and the former two are exported to the command environment.
+python_foreach_impl() {
+ local MULTIBUILD_VARIANTS
+ _python_obtain_impls
+
+ multibuild_foreach_variant _python_multibuild_wrapper "${@}"
+}
+
+# @FUNCTION: python_setup
+# @USAGE: [...]
+# @DESCRIPTION:
+# Find the best (most preferred) Python implementation that is suitable
+# for running common Python code. Set the Python build environment up
+# for that implementation. This function has two modes of operation:
+# pure and any-of dep.
+#
+# The pure mode is used if python_check_deps() function is not declared.
+# In this case, an implementation is considered suitable if it is
+# supported (in PYTHON_COMPAT), enabled (via USE flags) and matches
+# at least one of the patterns passed (or '*' if no patterns passed).
+#
+# Implementation restrictions in the pure mode need to be accompanied
+# by appropriate REQUIRED_USE constraints. Otherwise, the eclass may
+# fail at build time due to unsatisfied dependencies.
+#
+# The any-of dep mode is used if python_check_deps() is declared.
+# In this mode, an implementation is considered suitable if it is
+# supported, matches at least one of the patterns and python_check_deps()
+# has successful return code. USE flags are not considered.
+#
+# The python_check_deps() function in the any-of mode needs to be
+# accompanied by appropriate any-of dependencies.
+#
+# The patterns can be either fnmatch-style patterns (matched via bash
+# == operator against PYTHON_COMPAT values) or '-2' / '-3' to indicate
+# appropriately all enabled Python 2/3 implementations (alike
+# python_is_python3). Remember to escape or quote the fnmatch patterns
+# to prevent accidental shell filename expansion.
+#
+# This function needs to be used when Python is being called outside
+# of python_foreach_impl calls (e.g. for shared processes like doc
+# building). python_foreach_impl sets up the build environment itself.
+#
+# Pure mode example:
+# @CODE
+# DEPEND="doc? ( dev-python/epydoc[$(python_gen_usedep 'python2*')] )"
+# REQUIRED_USE="doc? ( $(python_gen_useflags 'python2*') )"
+#
+# src_compile() {
+# #...
+# if use doc; then
+# python_setup 'python2*'
+# make doc
+# fi
+# }
+# @CODE
+#
+# Any-of mode example:
+# @CODE
+# DEPEND="doc? (
+# $(python_gen_any_dep 'dev-python/epydoc[${PYTHON_USEDEP}]' 'python2*') )"
+#
+# python_check_deps() {
+# has_version "dev-python/epydoc[${PYTHON_USEDEP}]"
+# }
+#
+# src_compile() {
+# #...
+# if use doc; then
+# python_setup 'python2*'
+# make doc
+# fi
+# }
+# @CODE
+python_setup() {
+ debug-print-function ${FUNCNAME} "${@}"
+
+ _python_validate_useflags
+ local pycompat=( "${PYTHON_COMPAT[@]}" )
+ if [[ ${PYTHON_COMPAT_OVERRIDE} ]]; then
+ pycompat=( ${PYTHON_COMPAT_OVERRIDE} )
+ fi
+
+ local has_check_deps
+ declare -f python_check_deps >/dev/null && has_check_deps=1
+
+ # (reverse iteration -- newest impl first)
+ local found
+ _python_verify_patterns "${@}"
+ for (( i = ${#_PYTHON_SUPPORTED_IMPLS[@]} - 1; i >= 0; i-- )); do
+ local impl=${_PYTHON_SUPPORTED_IMPLS[i]}
+
+ # match USE flags only if override is not in effect
+ # and python_check_deps() is not defined
+ if [[ ! ${PYTHON_COMPAT_OVERRIDE} && ! ${has_check_deps} ]]; then
+ use "python_targets_${impl}" || continue
+ fi
+
+ # check patterns
+ _python_impl_matches "${impl}" "${@}" || continue
+
+ _python_export "${impl}" EPYTHON PYTHON
+
+ # if python_check_deps() is declared, switch into any-of mode
+ if [[ ${has_check_deps} ]]; then
+ # first check if the interpreter is installed
+ python_is_installed "${impl}" || continue
+ # then run python_check_deps
+ local PYTHON_USEDEP="python_targets_${impl}(-),python_single_target_${impl}(+)"
+ python_check_deps || continue
+ fi
+
+ found=1
+ break
+ done
+
+ if [[ ! ${found} ]]; then
+ eerror "${FUNCNAME}: none of the enabled implementation matched the patterns."
+ eerror " patterns: ${@-'(*)'}"
+ eerror "Likely a REQUIRED_USE constraint (possibly USE-conditional) is missing."
+ eerror " suggested: || ( \$(python_gen_useflags ${@}) )"
+ eerror "(remember to quote all the patterns with '')"
+ die "${FUNCNAME}: no enabled implementation satisfy requirements"
+ fi
+
+ _python_wrapper_setup
+ einfo "Using ${EPYTHON} in global scope"
+}
+
+# @FUNCTION: python_replicate_script
+# @USAGE: ...
+# @DESCRIPTION:
+# Copy the given script to variants for all enabled Python
+# implementations, then replace it with a symlink to the wrapper.
+#
+# All specified files must start with a 'python' shebang. A file not
+# having a matching shebang will be refused.
+python_replicate_script() {
+ debug-print-function ${FUNCNAME} "${@}"
+
+ _python_replicate_script() {
+ local _PYTHON_FIX_SHEBANG_QUIET=1
+
+ local PYTHON_SCRIPTDIR
+ _python_export PYTHON_SCRIPTDIR
+
+ (
+ exeopts -m 0755
+ exeinto "${PYTHON_SCRIPTDIR#${EPREFIX}}"
+ doexe "${files[@]}"
+ )
+
+ python_fix_shebang -q \
+ "${files[@]/*\//${D%/}/${PYTHON_SCRIPTDIR}/}"
+ }
+
+ local files=( "${@}" )
+ python_foreach_impl _python_replicate_script
+ unset -f _python_replicate_script
+
+ # install the wrappers
+ local f
+ for f; do
+ _python_ln_rel "${ED%/}/usr/lib/python-exec/python-exec2" "${f}" || die
+ done
+}
+
+_PYTHON_R1=1
+fi
diff --git a/eclass/python-utils-r1.eclass b/eclass/python-utils-r1.eclass
new file mode 100644
index 0000000..9c016f5
--- /dev/null
+++ b/eclass/python-utils-r1.eclass
@@ -0,0 +1,1497 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# @ECLASS: python-utils-r1.eclass
+# @MAINTAINER:
+# Python team
+# @AUTHOR:
+# Author: Michał Górny
+# Based on work of: Krzysztof Pawlik
+# @SUPPORTED_EAPIS: 5 6 7
+# @BLURB: Utility functions for packages with Python parts.
+# @DESCRIPTION:
+# A utility eclass providing functions to query Python implementations,
+# install Python modules and scripts.
+#
+# This eclass does not set any metadata variables nor export any phase
+# functions. It can be inherited safely.
+#
+# For more information, please see the Python Guide:
+# https://dev.gentoo.org/~mgorny/python-guide/
+
+case "${EAPI:-0}" in
+ *) ;;
+esac
+
+if [[ ${_PYTHON_ECLASS_INHERITED} ]]; then
+ die 'python-r1 suite eclasses can not be used with python.eclass.'
+fi
+
+if [[ ! ${_PYTHON_UTILS_R1} ]]; then
+
+[[ ${EAPI:-0} == [012345] ]] && inherit eutils multilib
+inherit toolchain-funcs
+
+# @ECLASS-VARIABLE: _PYTHON_ALL_IMPLS
+# @INTERNAL
+# @DESCRIPTION:
+# All supported Python implementations, most preferred last.
+_PYTHON_ALL_IMPLS=(
+ pypy3
+ python2_7
+ python3_6 python3_7 python3_8 python3_9 python3_10
+)
+readonly _PYTHON_ALL_IMPLS
+
+# @ECLASS-VARIABLE: _PYTHON_HISTORICAL_IMPLS
+# @INTERNAL
+# @DESCRIPTION:
+# All historical Python implementations that are no longer supported.
+_PYTHON_HISTORICAL_IMPLS=(
+ jython2_7
+ pypy pypy1_{8,9} pypy2_0
+ python2_{5,6}
+ python3_{1,2,3,4,5}
+)
+readonly _PYTHON_HISTORICAL_IMPLS
+
+# @ECLASS-VARIABLE: PYTHON_COMPAT_NO_STRICT
+# @INTERNAL
+# @DESCRIPTION:
+# Set to a non-empty value in order to make eclass tolerate (ignore)
+# unknown implementations in PYTHON_COMPAT.
+#
+# This is intended to be set by the user when using ebuilds that may
+# have unknown (newer) implementations in PYTHON_COMPAT. The assumption
+# is that the ebuilds are intended to be used within multiple contexts
+# which can involve revisions of this eclass that support a different
+# set of Python implementations.
+
+# @FUNCTION: _python_impl_supported
+# @USAGE:
+# @INTERNAL
+# @DESCRIPTION:
+# Check whether the implementation (PYTHON_COMPAT-form)
+# is still supported.
+#
+# Returns 0 if the implementation is valid and supported. If it is
+# unsupported, returns 1 -- and the caller should ignore the entry.
+# If it is invalid, dies with an appopriate error messages.
+_python_impl_supported() {
+ debug-print-function ${FUNCNAME} "${@}"
+
+ [[ ${#} -eq 1 ]] || die "${FUNCNAME}: takes exactly 1 argument (impl)."
+
+ local impl=${1}
+
+ # keep in sync with _PYTHON_ALL_IMPLS!
+ # (not using that list because inline patterns shall be faster)
+ case "${impl}" in
+ python2_7|python3_[56789]|jython2_7|python2+|python3+|python3_[789]+|python3_10)
+ return 0
+ ;;
+ pypy1_[89]|pypy2_0|python2_[56]|python3_[1234])
+ return 1
+ ;;
+ pypy|pypy3)
+ [[ ${EAPI:-0} == [01234] ]] && return 1 || return 0
+ ;;
+ *)
+ [[ ${PYTHON_COMPAT_NO_STRICT} ]] && return 1
+ die "Invalid implementation in PYTHON_COMPAT: ${impl}"
+ esac
+}
+
+# @FUNCTION: _python_verify_patterns
+# @USAGE: ...
+# @INTERNAL
+# @DESCRIPTION:
+# Verify whether the patterns passed to the eclass function are correct
+# (i.e. can match any valid implementation). Dies on wrong pattern.
+_python_verify_patterns() {
+ debug-print-function ${FUNCNAME} "${@}"
+
+ local impl pattern
+ for pattern; do
+ [[ ${pattern} == -[23] ]] && continue
+
+ for impl in "${_PYTHON_ALL_IMPLS[@]}" "${_PYTHON_HISTORICAL_IMPLS[@]}"
+ do
+ [[ ${impl} == ${pattern/./_} ]] && continue 2
+ done
+
+ die "Invalid implementation pattern: ${pattern}"
+ done
+}
+
+# @FUNCTION: _python_set_impls
+# @INTERNAL
+# @DESCRIPTION:
+# Check PYTHON_COMPAT for well-formedness and validity, then set
+# two global variables:
+#
+# - _PYTHON_SUPPORTED_IMPLS containing valid implementations supported
+# by the ebuild (PYTHON_COMPAT - dead implementations),
+#
+# - and _PYTHON_UNSUPPORTED_IMPLS containing valid implementations that
+# are not supported by the ebuild.
+#
+# Implementations in both variables are ordered using the pre-defined
+# eclass implementation ordering.
+#
+# This function must be called once in global scope by an eclass
+# utilizing PYTHON_COMPAT.
+_python_set_impls() {
+ local i
+
+ if ! declare -p PYTHON_COMPAT &>/dev/null; then
+ die 'PYTHON_COMPAT not declared.'
+ fi
+ if [[ $(declare -p PYTHON_COMPAT) != "declare -a"* ]]; then
+ die 'PYTHON_COMPAT must be an array.'
+ fi
+
+ declare -A supp
+ declare -A unsupp
+ for i in "${PYTHON_COMPAT[@]}"; do
+ # trigger validity checks
+ _python_impl_supported "${i}" || continue
+ case $i in
+ # Below, bump any older python3_5 or 3_6 deps to python3_7.
+
+ python3_5|python3_6|python3_7)
+ supp['python3_7']=1
+ ;;
+
+ # When adding new '+' entries, also update line 83 ^^
+
+ python3+|python3_7+)
+ supp['python3_7']=1
+ supp['python3_8']=1
+ supp['python3_9']=1
+ supp['python3_10']=1
+ ;;
+ python3_8+)
+ supp['python3_8']=1
+ supp['python3_9']=1
+ ;;
+ python3_9+)
+ supp['python3_9']=1
+ ;;
+ python3_10+)
+ supp['python3_10']=1
+ ;;
+
+ # Below, new special setting that will enable python2 and
+ # up compatibility:
+
+ python2+)
+ supp['python2_7']=1
+ supp['python3_7']=1
+ supp['python3_8']=1
+ supp['python3_9']=1
+ supp['python3_10']=1
+ ;;
+ *)
+ # Anything else valid in the list is also supported as-is
+ supp[$i]=1
+ esac
+ done
+
+ declare -A supp_filt
+ # filter!
+
+ # Extra filtering of PYTHON_COMPAT settings against all python implementations defined in here.
+ for i in "${!supp[@]}"; do
+ if has ${i} "${_PYTHON_ALL_IMPLS[@]}"; then
+ supp_filt[$i]=1
+ fi
+ done
+
+ for i in "${_PYTHON_ALL_IMPLS[@]}"; do
+ if [ -z "${supp_filt[$i]}" ]; then
+ unsupp[$i]=1
+ fi
+ done
+
+ if [[ -z "${!supp_filt[@]}" ]]; then
+ die "No supported implementation in PYTHON_COMPAT."
+ fi
+ if [[ -z "${_PYTHON_SUPPORTED_IMPLS[@]}" ]]; then
+ _PYTHON_SUPPORTED_IMPLS=( ${!supp_filt[@]} )
+ _PYTHON_UNSUPPORTED_IMPLS=( ${!unsupp[@]} )
+ readonly _PYTHON_SUPPORTED_IMPLS _PYTHON_UNSUPPORTED_IMPLS
+ fi
+}
+
+# @FUNCTION: _python_impl_matches
+# @USAGE: [...]
+# @INTERNAL
+# @DESCRIPTION:
+# Check whether the specified matches at least one
+# of the patterns following it. Return 0 if it does, 1 otherwise.
+# Matches if no patterns are provided.
+#
+# can be in PYTHON_COMPAT or EPYTHON form. The patterns can be
+# either:
+# a) fnmatch-style patterns, e.g. 'python2*', 'pypy'...
+# b) '-2' to indicate all Python 2 variants (= !python_is_python3)
+# c) '-3' to indicate all Python 3 variants (= python_is_python3)
+_python_impl_matches() {
+ [[ ${#} -ge 1 ]] || die "${FUNCNAME}: takes at least 1 parameter"
+ [[ ${#} -eq 1 ]] && return 0
+
+ local impl=${1} pattern
+ shift
+
+ for pattern; do
+ if [[ ${pattern} == -2 ]]; then
+ python_is_python3 "${impl}" || return 0
+ elif [[ ${pattern} == -3 ]]; then
+ python_is_python3 "${impl}" && return 0
+ return
+ # unify value style to allow lax matching
+ elif [[ ${impl/./_} == ${pattern/./_} ]]; then
+ return 0
+ fi
+ done
+
+ return 1
+}
+
+# @ECLASS-VARIABLE: PYTHON
+# @DEFAULT_UNSET
+# @DESCRIPTION:
+# The absolute path to the current Python interpreter.
+#
+# This variable is set automatically in the following contexts:
+#
+# python-r1: Set in functions called by python_foreach_impl() or after
+# calling python_setup().
+#
+# python-single-r1: Set after calling python-single-r1_pkg_setup().
+#
+# distutils-r1: Set within any of the python sub-phase functions.
+#
+# Example value:
+# @CODE
+# /usr/bin/python2.7
+# @CODE
+
+# @ECLASS-VARIABLE: EPYTHON
+# @DEFAULT_UNSET
+# @DESCRIPTION:
+# The executable name of the current Python interpreter.
+#
+# This variable is set automatically in the following contexts:
+#
+# python-r1: Set in functions called by python_foreach_impl() or after
+# calling python_setup().
+#
+# python-single-r1: Set after calling python-single-r1_pkg_setup().
+#
+# distutils-r1: Set within any of the python sub-phase functions.
+#
+# Example value:
+# @CODE
+# python2.7
+# @CODE
+
+# @FUNCTION: python_export
+# @USAGE: [] ...
+# @INTERNAL
+# @DESCRIPTION:
+# Backwards compatibility function. The relevant API is now considered
+# private, please use python_get* instead.
+python_export() {
+ debug-print-function ${FUNCNAME} "${@}"
+ _python_export "${@}"
+}
+
+# @FUNCTION: _python_export
+# @USAGE: [] ...
+# @INTERNAL
+# @DESCRIPTION:
+# Set and export the Python implementation-relevant variables passed
+# as parameters.
+#
+# The optional first parameter may specify the requested Python
+# implementation (either as PYTHON_TARGETS value, e.g. python2_7,
+# or an EPYTHON one, e.g. python2.7). If no implementation passed,
+# the current one will be obtained from ${EPYTHON}.
+#
+# The variables which can be exported are: PYTHON, EPYTHON,
+# PYTHON_SITEDIR. They are described more completely in the eclass
+# variable documentation.
+_python_export() {
+ debug-print-function ${FUNCNAME} "${@}"
+
+ local impl var
+
+ case "${1}" in
+ python*|jython*)
+ impl=${1/_/.}
+ shift
+ ;;
+ pypy|pypy3)
+ impl=${1}
+ shift
+ ;;
+ *)
+ impl=${EPYTHON}
+ if [[ -z ${impl} ]]; then
+ die "_python_export called without a python implementation and EPYTHON is unset"
+ fi
+ ;;
+ esac
+ debug-print "${FUNCNAME}: implementation: ${impl}"
+
+ for var; do
+ case "${var}" in
+ EPYTHON)
+ export EPYTHON=${impl}
+ debug-print "${FUNCNAME}: EPYTHON = ${EPYTHON}"
+ ;;
+ PYTHON)
+ export PYTHON=${EPREFIX}/usr/bin/${impl}
+ debug-print "${FUNCNAME}: PYTHON = ${PYTHON}"
+ ;;
+ PYTHON_SITEDIR)
+ [[ -n ${PYTHON} ]] || die "PYTHON needs to be set for ${var} to be exported, or requested before it"
+ # sysconfig can't be used because:
+ # 1) pypy doesn't give site-packages but stdlib
+ # 2) jython gives paths with wrong case
+ PYTHON_SITEDIR=$("${PYTHON}" -c 'import distutils.sysconfig; print(distutils.sysconfig.get_python_lib())') || die
+ export PYTHON_SITEDIR
+ debug-print "${FUNCNAME}: PYTHON_SITEDIR = ${PYTHON_SITEDIR}"
+ ;;
+ PYTHON_INCLUDEDIR)
+ [[ -n ${PYTHON} ]] || die "PYTHON needs to be set for ${var} to be exported, or requested before it"
+ PYTHON_INCLUDEDIR=$("${PYTHON}" -c 'import distutils.sysconfig; print(distutils.sysconfig.get_python_inc())') || die
+ export PYTHON_INCLUDEDIR
+ debug-print "${FUNCNAME}: PYTHON_INCLUDEDIR = ${PYTHON_INCLUDEDIR}"
+
+ # Jython gives a non-existing directory
+ if [[ ! -d ${PYTHON_INCLUDEDIR} ]]; then
+ die "${impl} does not install any header files!"
+ fi
+ ;;
+ PYTHON_LIBPATH)
+ [[ -n ${PYTHON} ]] || die "PYTHON needs to be set for ${var} to be exported, or requested before it"
+ PYTHON_LIBPATH=$("${PYTHON}" -c 'import os.path, sysconfig; print(os.path.join(sysconfig.get_config_var("LIBDIR"), sysconfig.get_config_var("LDLIBRARY")) if sysconfig.get_config_var("LDLIBRARY") else "")') || die
+ export PYTHON_LIBPATH
+ debug-print "${FUNCNAME}: PYTHON_LIBPATH = ${PYTHON_LIBPATH}"
+
+ if [[ ! ${PYTHON_LIBPATH} ]]; then
+ die "${impl} lacks a (usable) dynamic library"
+ fi
+ ;;
+ PYTHON_CFLAGS)
+ local val
+
+ case "${impl}" in
+ python*)
+ # python-2.7, python-3.2, etc.
+ val=$($(tc-getPKG_CONFIG) --cflags ${impl/n/n-}) || die
+ ;;
+ *)
+ die "${impl}: obtaining ${var} not supported"
+ ;;
+ esac
+
+ export PYTHON_CFLAGS=${val}
+ debug-print "${FUNCNAME}: PYTHON_CFLAGS = ${PYTHON_CFLAGS}"
+ ;;
+ PYTHON_LIBS)
+ local val
+
+ case "${impl}" in
+ python2*|python3.6|python3.7*)
+ # python* up to 3.7
+ val=$($(tc-getPKG_CONFIG) --libs ${impl/n/n-}) || die
+ ;;
+ python*)
+ # python3.8+
+ val=$($(tc-getPKG_CONFIG) --libs ${impl/n/n-}-embed) || die
+ ;;
+ *)
+ die "${impl}: obtaining ${var} not supported"
+ ;;
+ esac
+
+ export PYTHON_LIBS=${val}
+ debug-print "${FUNCNAME}: PYTHON_LIBS = ${PYTHON_LIBS}"
+ ;;
+ PYTHON_CONFIG)
+ local flags val
+
+ case "${impl}" in
+ python*)
+ [[ -n ${PYTHON} ]] || die "PYTHON needs to be set for ${var} to be exported, or requested before it"
+ flags=$("${PYTHON}" -c 'import sysconfig; print(sysconfig.get_config_var("ABIFLAGS") or "")') || die
+ val=${PYTHON}${flags}-config
+ ;;
+ *)
+ die "${impl}: obtaining ${var} not supported"
+ ;;
+ esac
+
+ export PYTHON_CONFIG=${val}
+ debug-print "${FUNCNAME}: PYTHON_CONFIG = ${PYTHON_CONFIG}"
+ ;;
+ PYTHON_PKG_DEP)
+ local d
+ case ${impl} in
+ python2.7)
+ PYTHON_PKG_DEP='>=dev-lang/python-2.7.5-r2:2.7';;
+ python*)
+ PYTHON_PKG_DEP="dev-lang/python:${impl#python}";;
+ pypy)
+ PYTHON_PKG_DEP='>=dev-python/pypy-7.3.0:0=';;
+ pypy3)
+ PYTHON_PKG_DEP='>=dev-python/pypy3-7.3.0:0=';;
+ *)
+ die "Invalid implementation: ${impl}"
+ esac
+
+ # use-dep
+ if [[ ${PYTHON_REQ_USE} ]]; then
+ PYTHON_PKG_DEP+=[${PYTHON_REQ_USE}]
+ fi
+
+ export PYTHON_PKG_DEP
+ debug-print "${FUNCNAME}: PYTHON_PKG_DEP = ${PYTHON_PKG_DEP}"
+ ;;
+ PYTHON_SCRIPTDIR)
+ local dir
+ export PYTHON_SCRIPTDIR=${EPREFIX}/usr/lib/python-exec/${impl}
+ debug-print "${FUNCNAME}: PYTHON_SCRIPTDIR = ${PYTHON_SCRIPTDIR}"
+ ;;
+ *)
+ die "_python_export: unknown variable ${var}"
+ esac
+ done
+}
+
+# @FUNCTION: python_get_sitedir
+# @USAGE: []
+# @DESCRIPTION:
+# Obtain and print the 'site-packages' path for the given
+# implementation. If no implementation is provided, ${EPYTHON} will
+# be used.
+python_get_sitedir() {
+ debug-print-function ${FUNCNAME} "${@}"
+
+ _python_export "${@}" PYTHON_SITEDIR
+ echo "${PYTHON_SITEDIR}"
+}
+
+# @FUNCTION: python_get_includedir
+# @USAGE: []
+# @DESCRIPTION:
+# Obtain and print the include path for the given implementation. If no
+# implementation is provided, ${EPYTHON} will be used.
+python_get_includedir() {
+ debug-print-function ${FUNCNAME} "${@}"
+
+ _python_export "${@}" PYTHON_INCLUDEDIR
+ echo "${PYTHON_INCLUDEDIR}"
+}
+
+# @FUNCTION: python_get_library_path
+# @USAGE: []
+# @DESCRIPTION:
+# Obtain and print the Python library path for the given implementation.
+# If no implementation is provided, ${EPYTHON} will be used.
+#
+# Please note that this function can be used with CPython only. Use
+# in another implementation will result in a fatal failure.
+python_get_library_path() {
+ debug-print-function ${FUNCNAME} "${@}"
+
+ _python_export "${@}" PYTHON_LIBPATH
+ echo "${PYTHON_LIBPATH}"
+}
+
+# @FUNCTION: python_get_CFLAGS
+# @USAGE: []
+# @DESCRIPTION:
+# Obtain and print the compiler flags for building against Python,
+# for the given implementation. If no implementation is provided,
+# ${EPYTHON} will be used.
+#
+# Please note that this function can be used with CPython only.
+# It requires Python and pkg-config installed, and therefore proper
+# build-time dependencies need be added to the ebuild.
+python_get_CFLAGS() {
+ debug-print-function ${FUNCNAME} "${@}"
+
+ _python_export "${@}" PYTHON_CFLAGS
+ echo "${PYTHON_CFLAGS}"
+}
+
+# @FUNCTION: python_get_LIBS
+# @USAGE: []
+# @DESCRIPTION:
+# Obtain and print the compiler flags for linking against Python,
+# for the given implementation. If no implementation is provided,
+# ${EPYTHON} will be used.
+#
+# Please note that this function can be used with CPython only.
+# It requires Python and pkg-config installed, and therefore proper
+# build-time dependencies need be added to the ebuild.
+python_get_LIBS() {
+ debug-print-function ${FUNCNAME} "${@}"
+
+ _python_export "${@}" PYTHON_LIBS
+ echo "${PYTHON_LIBS}"
+}
+
+# @FUNCTION: python_get_PYTHON_CONFIG
+# @USAGE: []
+# @DESCRIPTION:
+# Obtain and print the PYTHON_CONFIG location for the given
+# implementation. If no implementation is provided, ${EPYTHON} will be
+# used.
+#
+# Please note that this function can be used with CPython only.
+# It requires Python installed, and therefore proper build-time
+# dependencies need be added to the ebuild.
+python_get_PYTHON_CONFIG() {
+ debug-print-function ${FUNCNAME} "${@}"
+
+ _python_export "${@}" PYTHON_CONFIG
+ echo "${PYTHON_CONFIG}"
+}
+
+# @FUNCTION: python_get_scriptdir
+# @USAGE: []
+# @DESCRIPTION:
+# Obtain and print the script install path for the given
+# implementation. If no implementation is provided, ${EPYTHON} will
+# be used.
+python_get_scriptdir() {
+ debug-print-function ${FUNCNAME} "${@}"
+
+ _python_export "${@}" PYTHON_SCRIPTDIR
+ echo "${PYTHON_SCRIPTDIR}"
+}
+
+# @FUNCTION: _python_ln_rel
+# @USAGE:
+# @INTERNAL
+# @DESCRIPTION:
+# Create a relative symlink.
+_python_ln_rel() {
+ debug-print-function ${FUNCNAME} "${@}"
+
+ local target=${1}
+ local symname=${2}
+
+ local tgpath=${target%/*}/
+ local sympath=${symname%/*}/
+ local rel_target=
+
+ while [[ ${sympath} ]]; do
+ local tgseg= symseg=
+
+ while [[ ! ${tgseg} && ${tgpath} ]]; do
+ tgseg=${tgpath%%/*}
+ tgpath=${tgpath#${tgseg}/}
+ done
+
+ while [[ ! ${symseg} && ${sympath} ]]; do
+ symseg=${sympath%%/*}
+ sympath=${sympath#${symseg}/}
+ done
+
+ if [[ ${tgseg} != ${symseg} ]]; then
+ rel_target=../${rel_target}${tgseg:+${tgseg}/}
+ fi
+ done
+ rel_target+=${tgpath}${target##*/}
+
+ debug-print "${FUNCNAME}: ${symname} -> ${target}"
+ debug-print "${FUNCNAME}: rel_target = ${rel_target}"
+
+ ln -fs "${rel_target}" "${symname}"
+}
+
+# @FUNCTION: python_optimize
+# @USAGE: [...]
+# @DESCRIPTION:
+# Compile and optimize Python modules in specified directories (absolute
+# paths). If no directories are provided, the default system paths
+# are used (prepended with ${D}).
+python_optimize() {
+ debug-print-function ${FUNCNAME} "${@}"
+
+ if [[ ${EBUILD_PHASE} == pre* || ${EBUILD_PHASE} == post* ]]; then
+ eerror "The new Python eclasses expect the compiled Python files to"
+ eerror "be controlled by the Package Manager. For this reason,"
+ eerror "the python_optimize function can be used only during src_* phases"
+ eerror "(src_install most commonly) and not during pkg_* phases."
+ echo
+ die "python_optimize is not to be used in pre/post* phases"
+ fi
+
+ [[ ${EPYTHON} ]] || die 'No Python implementation set (EPYTHON is null).'
+
+ local PYTHON=${PYTHON}
+ [[ ${PYTHON} ]] || _python_export PYTHON
+ [[ -x ${PYTHON} ]] || die "PYTHON (${PYTHON}) is not executable"
+
+ # default to sys.path
+ if [[ ${#} -eq 0 ]]; then
+ local f
+ while IFS= read -r -d '' f; do
+ # 1) accept only absolute paths
+ # (i.e. skip '', '.' or anything like that)
+ # 2) skip paths which do not exist
+ # (python2.6 complains about them verbosely)
+
+ if [[ ${f} == /* && -d ${D%/}${f} ]]; then
+ set -- "${D%/}${f}" "${@}"
+ fi
+ done < <("${PYTHON}" -c 'import sys; print("".join(x + "\0" for x in sys.path))' || die)
+
+ debug-print "${FUNCNAME}: using sys.path: ${*/%/;}"
+ fi
+
+ local d
+ for d; do
+ # make sure to get a nice path without //
+ local instpath=${d#${D%/}}
+ instpath=/${instpath##/}
+
+ case "${EPYTHON}" in
+ python2.7|python3.[34])
+ "${PYTHON}" -m compileall -q -f -d "${instpath}" "${d}"
+ "${PYTHON}" -OO -m compileall -q -f -d "${instpath}" "${d}"
+ ;;
+ python*|pypy3)
+ # both levels of optimization are separate since 3.5
+ "${PYTHON}" -m compileall -q -f -d "${instpath}" "${d}"
+ "${PYTHON}" -O -m compileall -q -f -d "${instpath}" "${d}"
+ "${PYTHON}" -OO -m compileall -q -f -d "${instpath}" "${d}"
+ ;;
+ *)
+ "${PYTHON}" -m compileall -q -f -d "${instpath}" "${d}"
+ ;;
+ esac
+ done
+}
+
+# @FUNCTION: python_scriptinto
+# @USAGE:
+# @DESCRIPTION:
+# Set the directory to which files passed to python_doexe(),
+# python_doscript(), python_newexe() and python_newscript()
+# are going to be installed. The new value needs to be relative
+# to the installation root (${ED}).
+#
+# If not set explicitly, the directory defaults to /usr/bin.
+#
+# Example:
+# @CODE
+# src_install() {
+# python_scriptinto /usr/sbin
+# python_foreach_impl python_doscript foo
+# }
+# @CODE
+python_scriptinto() {
+ debug-print-function ${FUNCNAME} "${@}"
+
+ python_scriptroot=${1}
+}
+
+# @FUNCTION: python_doexe
+# @USAGE: ...
+# @DESCRIPTION:
+# Install the given executables into the executable install directory,
+# for the current Python implementation (${EPYTHON}).
+#
+# The executable will be wrapped properly for the Python implementation,
+# though no shebang mangling will be performed.
+python_doexe() {
+ debug-print-function ${FUNCNAME} "${@}"
+
+ local f
+ for f; do
+ python_newexe "${f}" "${f##*/}"
+ done
+}
+
+# @FUNCTION: python_newexe
+# @USAGE:
+# @DESCRIPTION:
+# Install the given executable into the executable install directory,
+# for the current Python implementation (${EPYTHON}).
+#
+# The executable will be wrapped properly for the Python implementation,
+# though no shebang mangling will be performed. It will be renamed
+# to .
+python_newexe() {
+ debug-print-function ${FUNCNAME} "${@}"
+
+ [[ ${EPYTHON} ]] || die 'No Python implementation set (EPYTHON is null).'
+ [[ ${#} -eq 2 ]] || die "Usage: ${FUNCNAME} "
+
+ local wrapd=${python_scriptroot:-/usr/bin}
+
+ local f=${1}
+ local newfn=${2}
+
+ local scriptdir=$(python_get_scriptdir)
+ local d=${scriptdir#${EPREFIX}}
+
+ (
+ dodir "${wrapd}"
+ exeopts -m 0755
+ exeinto "${d}"
+ newexe "${f}" "${newfn}" || return ${?}
+ )
+
+ # install the wrapper
+ _python_ln_rel "${ED%/}"/usr/lib/python-exec/python-exec2 \
+ "${ED%/}/${wrapd}/${newfn}" || die
+
+ # don't use this at home, just call python_doscript() instead
+ if [[ ${_PYTHON_REWRITE_SHEBANG} ]]; then
+ python_fix_shebang -q "${ED%/}/${d}/${newfn}"
+ fi
+}
+
+# @FUNCTION: python_doscript
+# @USAGE: ...
+# @DESCRIPTION:
+# Install the given scripts into the executable install directory,
+# for the current Python implementation (${EPYTHON}).
+#
+# All specified files must start with a 'python' shebang. The shebang
+# will be converted, and the files will be wrapped properly
+# for the Python implementation.
+#
+# Example:
+# @CODE
+# src_install() {
+# python_foreach_impl python_doscript ${PN}
+# }
+# @CODE
+python_doscript() {
+ debug-print-function ${FUNCNAME} "${@}"
+
+ local _PYTHON_REWRITE_SHEBANG=1
+ python_doexe "${@}"
+}
+
+# @FUNCTION: python_newscript
+# @USAGE:
+# @DESCRIPTION:
+# Install the given script into the executable install directory
+# for the current Python implementation (${EPYTHON}), and name it
+# .
+#
+# The file must start with a 'python' shebang. The shebang will be
+# converted, and the file will be wrapped properly for the Python
+# implementation. It will be renamed to .
+#
+# Example:
+# @CODE
+# src_install() {
+# python_foreach_impl python_newscript foo.py foo
+# }
+# @CODE
+python_newscript() {
+ debug-print-function ${FUNCNAME} "${@}"
+
+ local _PYTHON_REWRITE_SHEBANG=1
+ python_newexe "${@}"
+}
+
+# @FUNCTION: python_moduleinto
+# @USAGE:
+# @DESCRIPTION:
+# Set the Python module install directory for python_domodule().
+# The can either be an absolute target system path (in which
+# case it needs to start with a slash, and ${ED} will be prepended to
+# it) or relative to the implementation's site-packages directory
+# (then it must not start with a slash). The relative path can be
+# specified either using the Python package notation (separated by dots)
+# or the directory notation (using slashes).
+#
+# When not set explicitly, the modules are installed to the top
+# site-packages directory.
+#
+# In the relative case, the exact path is determined directly
+# by each python_doscript/python_newscript function. Therefore,
+# python_moduleinto can be safely called before establishing the Python
+# interpreter and/or a single call can be used to set the path correctly
+# for multiple implementations, as can be seen in the following example.
+#
+# Example:
+# @CODE
+# src_install() {
+# python_moduleinto bar
+# # installs ${PYTHON_SITEDIR}/bar/baz.py
+# python_foreach_impl python_domodule baz.py
+# }
+# @CODE
+python_moduleinto() {
+ debug-print-function ${FUNCNAME} "${@}"
+
+ python_moduleroot=${1}
+}
+
+# @FUNCTION: python_domodule
+# @USAGE: ...
+# @DESCRIPTION:
+# Install the given modules (or packages) into the current Python module
+# installation directory. The list can mention both modules (files)
+# and packages (directories). All listed files will be installed
+# for all enabled implementations, and compiled afterwards.
+#
+# Example:
+# @CODE
+# src_install() {
+# # (${PN} being a directory)
+# python_foreach_impl python_domodule ${PN}
+# }
+# @CODE
+python_domodule() {
+ debug-print-function ${FUNCNAME} "${@}"
+
+ [[ ${EPYTHON} ]] || die 'No Python implementation set (EPYTHON is null).'
+
+ local d
+ if [[ ${python_moduleroot} == /* ]]; then
+ # absolute path
+ d=${python_moduleroot}
+ else
+ # relative to site-packages
+ local sitedir=$(python_get_sitedir)
+ d=${sitedir#${EPREFIX}}/${python_moduleroot//.//}
+ fi
+
+ (
+ insopts -m 0644
+ insinto "${d}"
+ doins -r "${@}" || return ${?}
+ )
+
+ python_optimize "${ED%/}/${d}"
+}
+
+# @FUNCTION: python_doheader
+# @USAGE: ...
+# @DESCRIPTION:
+# Install the given headers into the implementation-specific include
+# directory. This function is unconditionally recursive, i.e. you can
+# pass directories instead of files.
+#
+# Example:
+# @CODE
+# src_install() {
+# python_foreach_impl python_doheader foo.h bar.h
+# }
+# @CODE
+python_doheader() {
+ debug-print-function ${FUNCNAME} "${@}"
+
+ [[ ${EPYTHON} ]] || die 'No Python implementation set (EPYTHON is null).'
+
+ local includedir=$(python_get_includedir)
+ local d=${includedir#${EPREFIX}}
+
+ (
+ insopts -m 0644
+ insinto "${d}"
+ doins -r "${@}" || return ${?}
+ )
+}
+
+# @FUNCTION: python_wrapper_setup
+# @USAGE: [ []]
+# @DESCRIPTION:
+# Backwards compatibility function. The relevant API is now considered
+# private, please use python_setup instead.
+python_wrapper_setup() {
+ debug-print-function ${FUNCNAME} "${@}"
+
+ eqawarn "python_wrapper_setup() is part of private eclass API."
+ eqawarn "Please call python_setup() instead."
+
+ _python_wrapper_setup "${@}"
+}
+
+# @FUNCTION: _python_wrapper_setup
+# @USAGE: [ []]
+# @INTERNAL
+# @DESCRIPTION:
+# Create proper 'python' executable and pkg-config wrappers
+# (if available) in the directory named by . Set up PATH
+# and PKG_CONFIG_PATH appropriately. defaults to ${T}/${EPYTHON}.
+#
+# The wrappers will be created for implementation named by ,
+# or for one named by ${EPYTHON} if no passed.
+#
+# If the named directory contains a python symlink already, it will
+# be assumed to contain proper wrappers already and only environment
+# setup will be done. If wrapper update is requested, the directory
+# shall be removed first.
+_python_wrapper_setup() {
+ debug-print-function ${FUNCNAME} "${@}"
+
+ local workdir=${1:-${T}/${EPYTHON}}
+ local impl=${2:-${EPYTHON}}
+
+ [[ ${workdir} ]] || die "${FUNCNAME}: no workdir specified."
+ [[ ${impl} ]] || die "${FUNCNAME}: no impl nor EPYTHON specified."
+
+ if [[ ! -x ${workdir}/bin/python ]]; then
+ _python_check_dead_variables
+
+ mkdir -p "${workdir}"/{bin,pkgconfig} || die
+
+ # Clean up, in case we were supposed to do a cheap update.
+ rm -f "${workdir}"/bin/python{,2,3}{,-config} || die
+ rm -f "${workdir}"/bin/2to3 || die
+ rm -f "${workdir}"/pkgconfig/python{2,3}{,-embed}.pc || die
+
+ local EPYTHON PYTHON
+ _python_export "${impl}" EPYTHON PYTHON
+
+ local pyver pyother
+ if python_is_python3; then
+ pyver=3
+ pyother=2
+ else
+ pyver=2
+ pyother=3
+ fi
+
+ # Python interpreter
+ # note: we don't use symlinks because python likes to do some
+ # symlink reading magic that breaks stuff
+ # https://bugs.gentoo.org/show_bug.cgi?id=555752
+ cat > "${workdir}/bin/python" <<-_EOF_ || die
+ #!/bin/sh
+ exec "${PYTHON}" "\${@}"
+ _EOF_
+ cp "${workdir}/bin/python" "${workdir}/bin/python${pyver}" || die
+ chmod +x "${workdir}/bin/python" "${workdir}/bin/python${pyver}" || die
+
+ local nonsupp=( "python${pyother}" "python${pyother}-config" )
+
+ # CPython-specific
+ if [[ ${EPYTHON} == python* ]]; then
+ cat > "${workdir}/bin/python-config" <<-_EOF_ || die
+ #!/bin/sh
+ exec "${PYTHON}-config" "\${@}"
+ _EOF_
+ cp "${workdir}/bin/python-config" \
+ "${workdir}/bin/python${pyver}-config" || die
+ chmod +x "${workdir}/bin/python-config" \
+ "${workdir}/bin/python${pyver}-config" || die
+
+ # Python 2.6+.
+ ln -s "${PYTHON/python/2to3-}" "${workdir}"/bin/2to3 || die
+
+ # Python 2.7+.
+ ln -s "${EPREFIX}"/usr/$(get_libdir)/pkgconfig/${EPYTHON/n/n-}.pc \
+ "${workdir}"/pkgconfig/python${pyver}.pc || die
+
+ # Python 3.8+.
+ if [[ ${EPYTHON} != python[23].[67] ]]; then
+ ln -s "${EPREFIX}"/usr/$(get_libdir)/pkgconfig/${EPYTHON/n/n-}-embed.pc \
+ "${workdir}"/pkgconfig/python${pyver}-embed.pc || die
+ fi
+ else
+ nonsupp+=( 2to3 python-config "python${pyver}-config" )
+ fi
+
+ local x
+ for x in "${nonsupp[@]}"; do
+ cat >"${workdir}"/bin/${x} <<-_EOF_ || die
+ #!/bin/sh
+ echo "${ECLASS}: ${FUNCNAME}: ${x} is not supported by ${EPYTHON} (PYTHON_COMPAT)" >&2
+ exit 127
+ _EOF_
+ chmod +x "${workdir}"/bin/${x} || die
+ done
+ fi
+
+ # Now, set the environment.
+ # But note that ${workdir} may be shared with something else,
+ # and thus already on top of PATH.
+ if [[ ${PATH##:*} != ${workdir}/bin ]]; then
+ PATH=${workdir}/bin${PATH:+:${PATH}}
+ fi
+ if [[ ${PKG_CONFIG_PATH##:*} != ${workdir}/pkgconfig ]]; then
+ PKG_CONFIG_PATH=${workdir}/pkgconfig${PKG_CONFIG_PATH:+:${PKG_CONFIG_PATH}}
+ fi
+ export PATH PKG_CONFIG_PATH
+}
+
+# @FUNCTION: python_is_python3
+# @USAGE: []
+# @DESCRIPTION:
+# Check whether (or ${EPYTHON}) is a Python3k variant
+# (i.e. uses syntax and stdlib of Python 3.*).
+#
+# Returns 0 (true) if it is, 1 (false) otherwise.
+python_is_python3() {
+ local impl=${1:-${EPYTHON}}
+ [[ ${impl} ]] || die "python_is_python3: no impl nor EPYTHON"
+
+ [[ ${impl} == python3* || ${impl} == pypy3 ]]
+}
+
+# @FUNCTION: python_is_installed
+# @USAGE: []
+# @DESCRIPTION:
+# Check whether the interpreter for (or ${EPYTHON}) is installed.
+# Uses has_version with a proper dependency string.
+#
+# Returns 0 (true) if it is, 1 (false) otherwise.
+python_is_installed() {
+ local impl=${1:-${EPYTHON}}
+ [[ ${impl} ]] || die "${FUNCNAME}: no impl nor EPYTHON"
+ local hasv_args=()
+
+ case ${EAPI:-0} in
+ 0|1|2|3|4)
+ local -x ROOT=/
+ ;;
+ 5|6)
+ hasv_args+=( --host-root )
+ ;;
+ *)
+ hasv_args+=( -b )
+ ;;
+ esac
+
+ local PYTHON_PKG_DEP
+ _python_export "${impl}" PYTHON_PKG_DEP
+ has_version "${hasv_args[@]}" "${PYTHON_PKG_DEP}"
+}
+
+# @FUNCTION: python_fix_shebang
+# @USAGE: [-f|--force] [-q|--quiet] ...
+# @DESCRIPTION:
+# Replace the shebang in Python scripts with the current Python
+# implementation (EPYTHON). If a directory is passed, works recursively
+# on all Python scripts.
+#
+# Only files having a 'python*' shebang will be modified. Files with
+# other shebang will either be skipped when working recursively
+# on a directory or treated as error when specified explicitly.
+#
+# Shebangs matching explicitly current Python version will be left
+# unmodified. Shebangs requesting another Python version will be treated
+# as fatal error, unless --force is given.
+#
+# --force causes the function to replace even shebangs that require
+# incompatible Python version. --quiet causes the function not to list
+# modified files verbosely.
+python_fix_shebang() {
+ debug-print-function ${FUNCNAME} "${@}"
+
+ [[ ${EPYTHON} ]] || die "${FUNCNAME}: EPYTHON unset (pkg_setup not called?)"
+
+ local force quiet
+ while [[ ${@} ]]; do
+ case "${1}" in
+ -f|--force) force=1; shift;;
+ -q|--quiet) quiet=1; shift;;
+ --) shift; break;;
+ *) break;;
+ esac
+ done
+
+ [[ ${1} ]] || die "${FUNCNAME}: no paths given"
+
+ local path f
+ for path; do
+ local any_correct any_fixed is_recursive
+
+ [[ -d ${path} ]] && is_recursive=1
+
+ while IFS= read -r -d '' f; do
+ local shebang i
+ local error= from=
+
+ # note: we can't ||die here since read will fail if file
+ # has no newline characters
+ IFS= read -r shebang <"${f}"
+
+ # First, check if it's shebang at all...
+ if [[ ${shebang} == '#!'* ]]; then
+ local split_shebang=()
+ read -r -a split_shebang <<<${shebang} || die
+
+ # Match left-to-right in a loop, to avoid matching random
+ # repetitions like 'python2.7 python2'.
+ for i in "${split_shebang[@]}"; do
+ case "${i}" in
+ *"${EPYTHON}")
+ debug-print "${FUNCNAME}: in file ${f#${D%/}}"
+ debug-print "${FUNCNAME}: shebang matches EPYTHON: ${shebang}"
+
+ # Nothing to do, move along.
+ any_correct=1
+ from=${EPYTHON}
+ break
+ ;;
+ *python|*python[23])
+ debug-print "${FUNCNAME}: in file ${f#${D%/}}"
+ debug-print "${FUNCNAME}: rewriting shebang: ${shebang}"
+
+ if [[ ${i} == *python2 ]]; then
+ from=python2
+ if [[ ! ${force} ]]; then
+ python_is_python3 "${EPYTHON}" && error=1
+ fi
+ elif [[ ${i} == *python3 ]]; then
+ from=python3
+ if [[ ! ${force} ]]; then
+ python_is_python3 "${EPYTHON}" || error=1
+ fi
+ else
+ from=python
+ fi
+ break
+ ;;
+ *python[23].[0123456789]|*pypy|*pypy3|*jython[23].[0123456789])
+ # Explicit mismatch.
+ if [[ ! ${force} ]]; then
+ error=1
+ else
+ case "${i}" in
+ *python[23].[0123456789])
+ from="python[23].[0123456789]";;
+ *python3.10)
+ from="python3.10";;
+ *pypy)
+ from="pypy";;
+ *pypy3)
+ from="pypy3";;
+ *jython[23].[0123456789])
+ from="jython[23].[0123456789]";;
+ *)
+ die "${FUNCNAME}: internal error in 2nd pattern match";;
+ esac
+ fi
+ break
+ ;;
+ esac
+ done
+ fi
+
+ if [[ ! ${error} && ! ${from} ]]; then
+ # Non-Python shebang. Allowed in recursive mode,
+ # disallowed when specifying file explicitly.
+ [[ ${is_recursive} ]] && continue
+ error=1
+ fi
+
+ if [[ ! ${quiet} ]]; then
+ einfo "Fixing shebang in ${f#${D%/}}."
+ fi
+
+ if [[ ! ${error} ]]; then
+ # We either want to match ${from} followed by space
+ # or at end-of-string.
+ if [[ ${shebang} == *${from}" "* ]]; then
+ sed -i -e "1s:${from} :${EPYTHON} :" "${f}" || die
+ else
+ sed -i -e "1s:${from}$:${EPYTHON}:" "${f}" || die
+ fi
+ any_fixed=1
+ else
+ eerror "The file has incompatible shebang:"
+ eerror " file: ${f#${D%/}}"
+ eerror " current shebang: ${shebang}"
+ eerror " requested impl: ${EPYTHON}"
+ die "${FUNCNAME}: conversion of incompatible shebang requested"
+ fi
+ done < <(find -H "${path}" -type f -print0 || die)
+
+ if [[ ! ${any_fixed} ]]; then
+ local cmd=eerror
+ [[ ${EAPI:-0} == [012345] ]] && cmd=eqawarn
+
+ "${cmd}" "QA warning: ${FUNCNAME}, ${path#${D%/}} did not match any fixable files."
+ if [[ ${any_correct} ]]; then
+ "${cmd}" "All files have ${EPYTHON} shebang already."
+ else
+ "${cmd}" "There are no Python files in specified directory."
+ fi
+
+ [[ ${cmd} == eerror ]] && die "${FUNCNAME} did not match any fixable files (QA warning fatal in EAPI ${EAPI})"
+ fi
+ done
+}
+
+# @FUNCTION: _python_check_locale_sanity
+# @USAGE:
+# @RETURN: 0 if sane, 1 otherwise
+# @INTERNAL
+# @DESCRIPTION:
+# Check whether the specified locale sanely maps between lowercase
+# and uppercase ASCII characters.
+_python_check_locale_sanity() {
+ local -x LC_ALL=${1}
+ local IFS=
+
+ local lc=( {a..z} )
+ local uc=( {A..Z} )
+ local input="${lc[*]}${uc[*]}"
+
+ local output=$(tr '[:lower:][:upper:]' '[:upper:][:lower:]' <<<"${input}")
+ [[ ${output} == "${uc[*]}${lc[*]}" ]]
+}
+
+# @FUNCTION: python_export_utf8_locale
+# @RETURN: 0 on success, 1 on failure.
+# @DESCRIPTION:
+# Attempts to export a usable UTF-8 locale in the LC_CTYPE variable. Does
+# nothing if LC_ALL is defined, or if the current locale uses a UTF-8 charmap.
+# This may be used to work around the quirky open() behavior of python3.
+python_export_utf8_locale() {
+ debug-print-function ${FUNCNAME} "${@}"
+
+ # If the locale program isn't available, just return.
+ type locale >/dev/null || return 0
+
+ if [[ $(locale charmap) != UTF-8 ]]; then
+ # Try English first, then everything else.
+ local lang locales="C.UTF-8 en_US.UTF-8 en_GB.UTF-8 $(locale -a)"
+
+ for lang in ${locales}; do
+ if [[ $(LC_ALL=${lang} locale charmap 2>/dev/null) == UTF-8 ]]; then
+ if _python_check_locale_sanity "${lang}"; then
+ export LC_CTYPE=${lang}
+ if [[ -n ${LC_ALL} ]]; then
+ export LC_NUMERIC=${LC_ALL}
+ export LC_TIME=${LC_ALL}
+ export LC_COLLATE=${LC_ALL}
+ export LC_MONETARY=${LC_ALL}
+ export LC_MESSAGES=${LC_ALL}
+ export LC_PAPER=${LC_ALL}
+ export LC_NAME=${LC_ALL}
+ export LC_ADDRESS=${LC_ALL}
+ export LC_TELEPHONE=${LC_ALL}
+ export LC_MEASUREMENT=${LC_ALL}
+ export LC_IDENTIFICATION=${LC_ALL}
+ export LC_ALL=
+ fi
+ return 0
+ fi
+ fi
+ done
+
+ ewarn "Could not find a UTF-8 locale. This may trigger build failures in"
+ ewarn "some python packages. Please ensure that a UTF-8 locale is listed in"
+ ewarn "/etc/locale.gen and run locale-gen."
+ return 1
+ fi
+
+ return 0
+}
+
+# @FUNCTION: build_sphinx
+# @USAGE:
+# @DESCRIPTION:
+# Build HTML documentation using dev-python/sphinx in the specified
+# . Takes care of disabling Intersphinx and appending
+# to HTML_DOCS.
+#
+# If is relative to the current directory, care needs
+# to be taken to run einstalldocs from the same directory
+# (usually ${S}).
+build_sphinx() {
+ debug-print-function ${FUNCNAME} "${@}"
+ [[ ${#} -eq 1 ]] || die "${FUNCNAME} takes 1 arg: "
+
+ local dir=${1}
+
+ sed -i -e 's:^intersphinx_mapping:disabled_&:' \
+ "${dir}"/conf.py || die
+ # not all packages include the Makefile in pypi tarball
+ sphinx-build -b html -d "${dir}"/_build/doctrees "${dir}" \
+ "${dir}"/_build/html || die
+
+ HTML_DOCS+=( "${dir}/_build/html/." )
+}
+
+# -- python.eclass functions --
+
+_python_check_dead_variables() {
+ local v
+
+ for v in PYTHON_DEPEND PYTHON_USE_WITH{,_OR,_OPT} {RESTRICT,SUPPORT}_PYTHON_ABIS
+ do
+ if [[ ${!v} ]]; then
+ die "${v} is invalid for python-r1 suite, please take a look @ https://wiki.gentoo.org/wiki/Project:Python/Python.eclass_conversion#Ebuild_head"
+ fi
+ done
+
+ for v in PYTHON_{CPPFLAGS,CFLAGS,CXXFLAGS,LDFLAGS}
+ do
+ if [[ ${!v} ]]; then
+ die "${v} is invalid for python-r1 suite, please take a look @ https://wiki.gentoo.org/wiki/Project:Python/Python.eclass_conversion#PYTHON_CFLAGS"
+ fi
+ done
+
+ for v in PYTHON_TESTS_RESTRICTED_ABIS PYTHON_EXPORT_PHASE_FUNCTIONS \
+ PYTHON_VERSIONED_{SCRIPTS,EXECUTABLES} PYTHON_NONVERSIONED_EXECUTABLES
+ do
+ if [[ ${!v} ]]; then
+ die "${v} is invalid for python-r1 suite"
+ fi
+ done
+
+ for v in DISTUTILS_USE_SEPARATE_SOURCE_DIRECTORIES DISTUTILS_SETUP_FILES \
+ DISTUTILS_GLOBAL_OPTIONS DISTUTILS_SRC_TEST PYTHON_MODNAME
+ do
+ if [[ ${!v} ]]; then
+ die "${v} is invalid for distutils-r1, please take a look @ https://wiki.gentoo.org/wiki/Project:Python/Python.eclass_conversion#${v}"
+ fi
+ done
+
+ if [[ ${DISTUTILS_DISABLE_TEST_DEPENDENCY} ]]; then
+ die "${v} is invalid for distutils-r1, please take a look @ https://wiki.gentoo.org/wiki/Project:Python/Python.eclass_conversion#DISTUTILS_SRC_TEST"
+ fi
+
+ # python.eclass::progress
+ for v in PYTHON_BDEPEND PYTHON_MULTIPLE_ABIS PYTHON_ABI_TYPE \
+ PYTHON_RESTRICTED_ABIS PYTHON_TESTS_FAILURES_TOLERANT_ABIS \
+ PYTHON_CFFI_MODULES_GENERATION_COMMANDS
+ do
+ if [[ ${!v} ]]; then
+ die "${v} is invalid for python-r1 suite"
+ fi
+ done
+}
+
+python_pkg_setup() {
+ die "${FUNCNAME}() is invalid for python-r1 suite, please take a look @ https://wiki.gentoo.org/wiki/Project:Python/Python.eclass_conversion#pkg_setup"
+}
+
+python_convert_shebangs() {
+ die "${FUNCNAME}() is invalid for python-r1 suite, please take a look @ https://wiki.gentoo.org/wiki/Project:Python/Python.eclass_conversion#python_convert_shebangs"
+}
+
+python_clean_py-compile_files() {
+ die "${FUNCNAME}() is invalid for python-r1 suite"
+}
+
+python_clean_installation_image() {
+ die "${FUNCNAME}() is invalid for python-r1 suite"
+}
+
+python_execute_function() {
+ die "${FUNCNAME}() is invalid for python-r1 suite, please take a look @ https://wiki.gentoo.org/wiki/Project:Python/Python.eclass_conversion#python_execute_function"
+}
+
+python_generate_wrapper_scripts() {
+ die "${FUNCNAME}() is invalid for python-r1 suite"
+}
+
+python_merge_intermediate_installation_images() {
+ die "${FUNCNAME}() is invalid for python-r1 suite"
+}
+
+python_set_active_version() {
+ die "${FUNCNAME}() is invalid for python-r1 suite, please take a look @ https://wiki.gentoo.org/wiki/Project:Python/Python.eclass_conversion#pkg_setup"
+}
+
+python_need_rebuild() {
+ die "${FUNCNAME}() is invalid for python-r1 suite"
+}
+
+PYTHON() {
+ die "${FUNCNAME}() is invalid for python-r1 suite, please take a look @ https://wiki.gentoo.org/wiki/Project:Python/Python.eclass_conversion#.24.28PYTHON.29.2C_.24.7BEPYTHON.7D"
+}
+
+python_get_implementation() {
+ die "${FUNCNAME}() is invalid for python-r1 suite"
+}
+
+python_get_implementational_package() {
+ die "${FUNCNAME}() is invalid for python-r1 suite"
+}
+
+python_get_libdir() {
+ die "${FUNCNAME}() is invalid for python-r1 suite"
+}
+
+python_get_library() {
+ die "${FUNCNAME}() is invalid for python-r1 suite"
+}
+
+python_get_version() {
+ die "${FUNCNAME}() is invalid for python-r1 suite"
+}
+
+python_get_implementation_and_version() {
+ die "${FUNCNAME}() is invalid for python-r1 suite"
+}
+
+python_execute_nosetests() {
+ die "${FUNCNAME}() is invalid for python-r1 suite"
+}
+
+python_execute_py.test() {
+ die "${FUNCNAME}() is invalid for python-r1 suite"
+}
+
+python_execute_trial() {
+ die "${FUNCNAME}() is invalid for python-r1 suite"
+}
+
+python_enable_pyc() {
+ die "${FUNCNAME}() is invalid for python-r1 suite"
+}
+
+python_disable_pyc() {
+ die "${FUNCNAME}() is invalid for python-r1 suite"
+}
+
+python_mod_optimize() {
+ die "${FUNCNAME}() is invalid for python-r1 suite, please take a look @ https://wiki.gentoo.org/wiki/Project:Python/Python.eclass_conversion#Python_byte-code_compilation"
+}
+
+python_mod_cleanup() {
+ die "${FUNCNAME}() is invalid for python-r1 suite, please take a look @ https://wiki.gentoo.org/wiki/Project:Python/Python.eclass_conversion#Python_byte-code_compilation"
+}
+
+# python.eclass::progress
+
+python_abi_depend() {
+ die "${FUNCNAME}() is invalid for python-r1 suite"
+}
+
+python_install_executables() {
+ die "${FUNCNAME}() is invalid for python-r1 suite"
+}
+
+python_get_extension_module_suffix() {
+ die "${FUNCNAME}() is invalid for python-r1 suite"
+}
+
+python_byte-compile_modules() {
+ die "${FUNCNAME}() is invalid for python-r1 suite"
+}
+
+python_clean_byte-compiled_modules() {
+ die "${FUNCNAME}() is invalid for python-r1 suite"
+}
+
+python_generate_cffi_modules() {
+ die "${FUNCNAME}() is invalid for python-r1 suite"
+}
+
+_PYTHON_UTILS_R1=1
+fi
diff --git a/media-libs/libfreeaptx/Manifest b/media-libs/libfreeaptx/Manifest
new file mode 100644
index 0000000..5e50d41
--- /dev/null
+++ b/media-libs/libfreeaptx/Manifest
@@ -0,0 +1,3 @@
+AUX libfreeaptx-0.1.1-fix-version.patch 571 BLAKE2B 0fa43bf3b7180b5ec90e3cb2fc633959d5b484954bd50f468903a6c0c9b0646fe77be1618b68746692b57224e46270e538133ccfeb3f320ff71780bc5cd4297d SHA512 b8d3bcadeba8534979c02e55ad129bfce147e920e2e881f99ac9d579095fb944b6e88351a74dc410d141e0a6b89f17c15ddc21019e63cc3cf362a20d5e9b37b6
+DIST libfreeaptx-0.1.1.tar.gz 27902 BLAKE2B 0aa015b0317db7f6dd61ae667cc1b7b10c7f7457d057144c1457572a214891848b81512960eb8643138c638a0f691b53a7bbcb36ad434ac29335d92b108a43fa SHA512 53dd7f348120fea0425b365f26668925dd435a8a3a0c5e98476764a452c7d729f2a3556e953c557d0ccaaa65391265c8c3c61fc29377cf60079fa0bed2cc20b1
+EBUILD libfreeaptx-0.1.1.ebuild 1276 BLAKE2B 277b820bf63d151223720dd62e032fc91c7c14bb168fcdcd77a19572dd1bd0aaed51848a3e111c83ddea16aff84bed367289fd9b2c18e55e3764485d254fc891 SHA512 f5d286e2adce9d418ff30be5ad0f57a1a53ff35595a5ff14c945955413c2b08fd96e8de1aa616b89eafdeeb9b4b235efd6a8f3aa3287781459c0b4b31a3503de
diff --git a/media-libs/libfreeaptx/files/libfreeaptx-0.1.1-fix-version.patch b/media-libs/libfreeaptx/files/libfreeaptx-0.1.1-fix-version.patch
new file mode 100644
index 0000000..0a738fd
--- /dev/null
+++ b/media-libs/libfreeaptx/files/libfreeaptx-0.1.1-fix-version.patch
@@ -0,0 +1,20 @@
+Report the correct version rather than the old libopenaptx version (left over from the fork point).
+https://github.com/iamthehorker/libfreeaptx/commit/c176b7de9c2017d0fc1877659cea3bb6c330aafa.patch
+
+From: Hunter
+Date: Mon, 9 Aug 2021 23:51:49 -0400
+Subject: [PATCH] Fixed libfreeaptx reporting wrong version number
+
+--- a/freeaptx.h
++++ b/freeaptx.h
+@@ -22,8 +22,8 @@
+ #define freeaptx_H
+
+ #define freeaptx_MAJOR 0
+-#define freeaptx_MINOR 2
+-#define freeaptx_PATCH 0
++#define freeaptx_MINOR 1
++#define freeaptx_PATCH 1
+
+ #include
+
diff --git a/media-libs/libfreeaptx/libfreeaptx-0.1.1.ebuild b/media-libs/libfreeaptx/libfreeaptx-0.1.1.ebuild
new file mode 100644
index 0000000..74651ae
--- /dev/null
+++ b/media-libs/libfreeaptx/libfreeaptx-0.1.1.ebuild
@@ -0,0 +1,60 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit flag-o-matic multilib-minimal toolchain-funcs
+
+DESCRIPTION="Reverse-engineered aptX and aptX HD library (fork of libopenaptx)"
+HOMEPAGE="https://github.com/iamthehorker/libfreeaptx"
+
+if [[ ${PV} == "9999" ]] ; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/iamthehorker/${PN}"
+else
+ SRC_URI="https://github.com/iamthehorker/libfreeaptx/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
+ # SRC_URI="https://github.com/iamthehorker/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="amd64 arm arm64 ppc ~ppc64 ~riscv x86"
+fi
+
+LICENSE="LGPL-2.1+"
+SLOT="0"
+IUSE="cpu_flags_x86_avx2"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-fix-version.patch
+)
+
+src_prepare() {
+ default
+
+ # custom Makefiles
+ multilib_copy_sources
+}
+
+multilib_src_compile() {
+ tc-export CC AR
+
+ use cpu_flags_x86_avx2 && append-cflags "-mavx2"
+
+ emake \
+ PREFIX="${EPREFIX}"/usr \
+ LIBDIR=$(get_libdir) \
+ CFLAGS="${CFLAGS}" \
+ LDFLAGS="${LDFLAGS}" \
+ ARFLAGS="${ARFLAGS} -rcs" \
+ all
+}
+
+multilib_src_install() {
+ emake \
+ PREFIX="${EPREFIX}"/usr \
+ DESTDIR="${D}" \
+ LIBDIR="$(get_libdir)" \
+ CFLAGS="${CFLAGS}" \
+ LDFLAGS="${LDFLAGS}" \
+ ARFLAGS="${ARFLAGS} -rcs" \
+ install
+}
+
+
diff --git a/media-sound/pulseeffects/Manifest b/media-sound/pulseeffects/Manifest
new file mode 100644
index 0000000..0c46a68
--- /dev/null
+++ b/media-sound/pulseeffects/Manifest
@@ -0,0 +1,16 @@
+DIST pulseeffects-3.2.3.tar.gz 648968 BLAKE2B aef2aaacacc41020c5f14582c91b53ba84f3e56d7cf4a13a955769ff80796ae21cbc0ecad9b2c3e24985a6a6daf86888c3a8c6e2387b917860336e73fa8c0d6b SHA512 802068c867b9708e7503e0beb65fb5aaf9ff4916b98048634a443f701864db00e5401de42ff58ed3e5fe9430af6caae74efe8f0b1b0e3e2c9d48dcb7c7e6a400
+DIST pulseeffects-4.5.9.tar.gz 1830876 BLAKE2B 3b80e26eb7b3593f0636d4c3a86ddb05c4c08ec446983d8f521828a4a004b42011ca12cbed6fefe3a0df7d1347197abcee89d5786020a61ed28c3277668d8e57 SHA512 aa47b546f13ef29d03c907dfeeba0ecb531ba07bb5bbb7bc49399bceb75583c58c9e188557c1d77c02b8b50e5cac9562b6fc882750c14d755ec0d294e8b60105
+DIST pulseeffects-4.6.1.tar.gz 1878597 BLAKE2B 5db87915f5e008780bc063580cee95202460f9932533d4227eec89ba49d8ba760d2be44e0268d53279868b07da1556ddae648ff6339cc10304a0c429a8d55eb9 SHA512 336ab9c3a2987a8ca0887fd87c836776619e6989c22bb7442c7e6f3d8603537ea2789e012fea11c142dd943d0a670549fcbfff69949cacbda2621e2da95456b3
+DIST pulseeffects-4.6.3.tar.gz 1885423 BLAKE2B 404ab653c187270d879b497b819206815f47f7bbb74762fb6b4ae055169093599fa5350df53292eec4eea46ab380a058db80c693022a854a71bfb4245fc49e10 SHA512 645a19a6f5f1726474a675edc0048eccd37e7236fd863ecbd8c382028344cd3d4a2cbd5c4a8e830e5fb793ddf50c0b24c45f5d93acb7a880ae32c3c940e8d2ea
+DIST pulseeffects-4.6.4.tar.gz 1881021 BLAKE2B bca21f9a3bf925f6bac289f6256340d1fc52ec9f94f73bf6cfdb570360d9f1e8599e8495e603987be80e2d87b664a187807a53122c76dfd42ac750ae49b903f8 SHA512 eb450db882bfd0d8aea45ea25219122b88cd66054d189ba990e3c95b1b8c7760514e80b7e9c4dc7c4a14cf133dbdedd02d7a8f6f48c1a569f530c62c1254e8de
+DIST pulseeffects-4.8.4.tar.gz 2029971 BLAKE2B 6be45e748bd8df238391107531f46ac706fc9eb535c78c06f32526d910dffb82bec36af4130490645c95b200562c51f59f19de8905c3c54bda5d8a4b68b5297a SHA512 4d68f5bd678c75f5b13519cddb2f46bd0a827516f1cc7431a8952204f51bd2691f701df869258092a93843bcdb4c61bac916291bade8c4428ed9a4d68b70c757
+DIST pulseeffects-5.0.3.tar.gz 2052473 BLAKE2B f313abae0f432f767ea4c91350207c97c261845fe64dbb32b0aebab4792b33a993c5ee4084f8b14116058bc989965380c8acb393d10f59a3243ad676c9916f33 SHA512 e9a969b7661e8daca84f5406dafba59a3cbf036f3b8a8893320574ed56465537454d2c854a7053c7f425728342776e9156ebcae8fa2b07bc5bfca04d04356dfd
+EBUILD pulseeffects-3.2.3-r1.ebuild 1506 BLAKE2B 561117695d98390d646cc6d36263aae5f375b1d6ebbdb4baa271a8ff009e788218952b8bb63d5088e1ce647e2e7fb7f38a1ea27ae634d341bd8e7dd3bc332e65 SHA512 ed37577b50ead9ae9d4a007f343ada566df3ed7dbde12a2114bdce793c1ec2a123296f4e4b059619644d6c293b917bbbb26cf2936c55211c89fbaa2abb68df25
+EBUILD pulseeffects-4.5.9.ebuild 1799 BLAKE2B e6ba4eb6229e8aaf31eaef655f770989ef0a5794e06c8673f565b3e3e49689ba5c6745c551e6e2bc5cb6aef84bc79e5eaa68b58c7ca5a4a606feed443b2dc2db SHA512 952d00097cf90bd69273ad8f67a4f8caae9ec2d84d0c424972d5c340a0bd1406442fb0e4b9005489da1691f72b98ddc124e2e148b4ecabdeaf7781a56a76948a
+EBUILD pulseeffects-4.6.1.ebuild 1799 BLAKE2B e6ba4eb6229e8aaf31eaef655f770989ef0a5794e06c8673f565b3e3e49689ba5c6745c551e6e2bc5cb6aef84bc79e5eaa68b58c7ca5a4a606feed443b2dc2db SHA512 952d00097cf90bd69273ad8f67a4f8caae9ec2d84d0c424972d5c340a0bd1406442fb0e4b9005489da1691f72b98ddc124e2e148b4ecabdeaf7781a56a76948a
+EBUILD pulseeffects-4.6.3.ebuild 1805 BLAKE2B e6b844dbb1dbd88270af8f19a430ece4abdde4709d34c76d7d61c8254997ffa264021080ad5a3a9b0e34ee8974a2b8d44c9f7d9fedef07dfa3476e9ecc182ed1 SHA512 224b1d44ecd71496a9cca236bfc0104050b5912c3489885a1eedfd2aa8a6c9b8508b5bfcd32d8b1e0c9a43c0bf8a667dd0d7b3a824dcd6b499b587fa97ea6f35
+EBUILD pulseeffects-4.6.4.ebuild 1805 BLAKE2B e6b844dbb1dbd88270af8f19a430ece4abdde4709d34c76d7d61c8254997ffa264021080ad5a3a9b0e34ee8974a2b8d44c9f7d9fedef07dfa3476e9ecc182ed1 SHA512 224b1d44ecd71496a9cca236bfc0104050b5912c3489885a1eedfd2aa8a6c9b8508b5bfcd32d8b1e0c9a43c0bf8a667dd0d7b3a824dcd6b499b587fa97ea6f35
+EBUILD pulseeffects-4.8.4.ebuild 1805 BLAKE2B e6b844dbb1dbd88270af8f19a430ece4abdde4709d34c76d7d61c8254997ffa264021080ad5a3a9b0e34ee8974a2b8d44c9f7d9fedef07dfa3476e9ecc182ed1 SHA512 224b1d44ecd71496a9cca236bfc0104050b5912c3489885a1eedfd2aa8a6c9b8508b5bfcd32d8b1e0c9a43c0bf8a667dd0d7b3a824dcd6b499b587fa97ea6f35
+EBUILD pulseeffects-5.0.3.ebuild 1805 BLAKE2B e6b844dbb1dbd88270af8f19a430ece4abdde4709d34c76d7d61c8254997ffa264021080ad5a3a9b0e34ee8974a2b8d44c9f7d9fedef07dfa3476e9ecc182ed1 SHA512 224b1d44ecd71496a9cca236bfc0104050b5912c3489885a1eedfd2aa8a6c9b8508b5bfcd32d8b1e0c9a43c0bf8a667dd0d7b3a824dcd6b499b587fa97ea6f35
+EBUILD pulseeffects-9999.ebuild 1805 BLAKE2B e6b844dbb1dbd88270af8f19a430ece4abdde4709d34c76d7d61c8254997ffa264021080ad5a3a9b0e34ee8974a2b8d44c9f7d9fedef07dfa3476e9ecc182ed1 SHA512 224b1d44ecd71496a9cca236bfc0104050b5912c3489885a1eedfd2aa8a6c9b8508b5bfcd32d8b1e0c9a43c0bf8a667dd0d7b3a824dcd6b499b587fa97ea6f35
+MISC metadata.xml 946 BLAKE2B dfa67811eaa1e6c66ae63c0476c5a79d7167abf7909e15f7279ca6676d0d2527bc403b37c731f6a14f207e7d2176183f2b2d4abb0b1bb1c682eed3a19a5bbd06 SHA512 4410693f173e25f13fd87850f2ebe2998d7afb531550ec8c75aa044605ede8436b138ad920791ed454b5acd5db018807ecb97e156be1ab17bc73a7746cf3aeaa
diff --git a/media-sound/pulseeffects/metadata.xml b/media-sound/pulseeffects/metadata.xml
new file mode 100644
index 0000000..4f7f399
--- /dev/null
+++ b/media-sound/pulseeffects/metadata.xml
@@ -0,0 +1,25 @@
+
+
+
+
+ prometheanfire@gentoo.org
+ Matthew Thode
+
+
+ jpizarrocallejas@gmail.com
+ Jorge Pizarro Callejas
+ Jorgicio Gentoo Overlay
+
+
+
+ Audio effects for Pulseaudio applications
+
+
+ wwmm/pulseeffects
+
+
diff --git a/media-sound/pulseeffects/pulseeffects-3.2.3-r1.ebuild b/media-sound/pulseeffects/pulseeffects-3.2.3-r1.ebuild
new file mode 100644
index 0000000..bcf96af
--- /dev/null
+++ b/media-sound/pulseeffects/pulseeffects-3.2.3-r1.ebuild
@@ -0,0 +1,63 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+PYTHON_COMPAT=( python3_{5,6} )
+
+inherit gnome2-utils meson python-r1
+
+DESCRIPTION="Limiter, compressor, reverberation, equalizer auto volume effects for Pulseaudio"
+HOMEPAGE="https://github.com/wwmm/pulseeffects"
+
+if [[ ${PV} == *9999 ]];then
+ inherit git-r3
+ SRC_URI=""
+ EGIT_REPO_URI="${HOMEPAGE}"
+else
+ SRC_URI="${HOMEPAGE}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="amd64 x86"
+fi
+
+LICENSE="GPL-3"
+SLOT="0"
+IUSE=""
+
+DEPEND="
+ ${PYTHON_DEPS}
+ dev-python/setuptools[${PYTHON_USEDEP}]
+ dev-python/pygobject:3[${PYTHON_USEDEP}]
+ dev-python/pycairo[${PYTHON_USEDEP}]
+ >=dev-python/gst-python-1.12.0:1.0[${PYTHON_USEDEP}]
+ >=x11-libs/gtk+-3.18:3[introspection]
+ dev-python/numpy[${PYTHON_USEDEP}]
+ >=sci-libs/scipy-0.18[${PYTHON_USEDEP}]
+ >=media-libs/lilv-0.24.2-r1
+ >=media-plugins/calf-0.90.0[lv2]
+ >=media-libs/gstreamer-1.12.0:1.0
+ >=media-libs/gst-plugins-good-1.12.0:1.0
+ >=media-libs/gst-plugins-bad-1.12.0:1.0[introspection]
+ >=media-plugins/gst-plugins-bs2b-1.12.0:1.0
+ >=media-plugins/gst-plugins-ladspa-1.12.0:1.0
+ >=media-plugins/gst-plugins-lv2-1.12.0:1.0
+ >=media-plugins/gst-plugins-pulse-1.12.0:1.0
+ dev-libs/appstream-glib
+ sys-devel/gettext
+"
+RDEPEND="${DEPEND}
+ media-sound/pulseaudio[equalizer]
+"
+
+pkg_preinst(){
+ gnome2_schemas_savelist
+}
+
+pkg_postinst(){
+ gnome2_gconf_install
+ gnome2_schemas_update
+}
+
+pkg_postrm(){
+ gnome2_gconf_uninstall
+ gnome2_schemas_update
+}
diff --git a/media-sound/pulseeffects/pulseeffects-4.5.9.ebuild b/media-sound/pulseeffects/pulseeffects-4.5.9.ebuild
new file mode 100644
index 0000000..2717baa
--- /dev/null
+++ b/media-sound/pulseeffects/pulseeffects-4.5.9.ebuild
@@ -0,0 +1,72 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit gnome2-utils meson
+
+DESCRIPTION="Limiter, compressor, reverberation, equalizer auto volume effects for Pulseaudio"
+HOMEPAGE="https://github.com/wwmm/pulseeffects"
+
+if [[ ${PV} == *9999 ]];then
+ inherit git-r3
+ SRC_URI=""
+ EGIT_REPO_URI="${HOMEPAGE}"
+else
+ SRC_URI="${HOMEPAGE}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="amd64"
+fi
+
+LICENSE="GPL-3"
+SLOT="0"
+IUSE="bs2b calf mda-lv2 rubberband"
+
+#TODO: optional : lilv, zam-plugins (check from archlinux pkg)
+RDEPEND="
+ >=dev-libs/boost-1.41
+ >=dev-cpp/glibmm-2.56.0
+ >=dev-cpp/gtkmm-3.20:3.0
+ >=dev-libs/glib-2.56:2
+ >=dev-libs/libsigc++-2.10:2
+ >=x11-libs/gtk+-3.18:3
+ >=media-libs/lilv-0.24.2-r1
+ >=media-libs/lsp-plugins-1.1.7[lv2]
+ >=media-libs/gstreamer-1.12.0:1.0
+ >=media-libs/gst-plugins-good-1.12.0:1.0
+ >=media-libs/gst-plugins-bad-1.12.0:1.0
+ bs2b? ( >=media-plugins/gst-plugins-bs2b-1.12.0:1.0 )
+ >=media-plugins/gst-plugins-ladspa-1.12.0:1.0
+ >=media-plugins/gst-plugins-lv2-1.12.0:1.0
+ >=media-plugins/gst-plugins-pulse-1.12.0:1.0
+ calf? ( >=media-plugins/calf-0.90.0[lv2] )
+ mda-lv2? ( media-plugins/mda-lv2 )
+ rubberband? ( media-libs/rubberband )
+ >=media-libs/zita-convolver-3.0.0
+ media-libs/libebur128
+ media-sound/pulseaudio
+ sys-apps/dbus"
+# see 47a950b00c6db383ad07502a8fc396ecca98c1ce for dev-libs/appstream-glib
+# and sys-devel/gettext depends reasoning
+DEPEND="
+ ${RDEPEND}
+ dev-libs/appstream-glib
+ sys-devel/gettext
+"
+BDEPEND="
+ >=sys-devel/gcc-7.3.0
+ dev-util/itstool
+ media-libs/libsamplerate
+ virtual/pkgconfig
+"
+
+pkg_postinst(){
+ gnome2_gconf_install
+ gnome2_schemas_update
+ gnome2_icon_cache_update
+}
+
+pkg_postrm(){
+ gnome2_gconf_uninstall
+ gnome2_schemas_update
+ gnome2_icon_cache_update
+}
diff --git a/media-sound/pulseeffects/pulseeffects-4.6.1.ebuild b/media-sound/pulseeffects/pulseeffects-4.6.1.ebuild
new file mode 100644
index 0000000..2717baa
--- /dev/null
+++ b/media-sound/pulseeffects/pulseeffects-4.6.1.ebuild
@@ -0,0 +1,72 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit gnome2-utils meson
+
+DESCRIPTION="Limiter, compressor, reverberation, equalizer auto volume effects for Pulseaudio"
+HOMEPAGE="https://github.com/wwmm/pulseeffects"
+
+if [[ ${PV} == *9999 ]];then
+ inherit git-r3
+ SRC_URI=""
+ EGIT_REPO_URI="${HOMEPAGE}"
+else
+ SRC_URI="${HOMEPAGE}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="amd64"
+fi
+
+LICENSE="GPL-3"
+SLOT="0"
+IUSE="bs2b calf mda-lv2 rubberband"
+
+#TODO: optional : lilv, zam-plugins (check from archlinux pkg)
+RDEPEND="
+ >=dev-libs/boost-1.41
+ >=dev-cpp/glibmm-2.56.0
+ >=dev-cpp/gtkmm-3.20:3.0
+ >=dev-libs/glib-2.56:2
+ >=dev-libs/libsigc++-2.10:2
+ >=x11-libs/gtk+-3.18:3
+ >=media-libs/lilv-0.24.2-r1
+ >=media-libs/lsp-plugins-1.1.7[lv2]
+ >=media-libs/gstreamer-1.12.0:1.0
+ >=media-libs/gst-plugins-good-1.12.0:1.0
+ >=media-libs/gst-plugins-bad-1.12.0:1.0
+ bs2b? ( >=media-plugins/gst-plugins-bs2b-1.12.0:1.0 )
+ >=media-plugins/gst-plugins-ladspa-1.12.0:1.0
+ >=media-plugins/gst-plugins-lv2-1.12.0:1.0
+ >=media-plugins/gst-plugins-pulse-1.12.0:1.0
+ calf? ( >=media-plugins/calf-0.90.0[lv2] )
+ mda-lv2? ( media-plugins/mda-lv2 )
+ rubberband? ( media-libs/rubberband )
+ >=media-libs/zita-convolver-3.0.0
+ media-libs/libebur128
+ media-sound/pulseaudio
+ sys-apps/dbus"
+# see 47a950b00c6db383ad07502a8fc396ecca98c1ce for dev-libs/appstream-glib
+# and sys-devel/gettext depends reasoning
+DEPEND="
+ ${RDEPEND}
+ dev-libs/appstream-glib
+ sys-devel/gettext
+"
+BDEPEND="
+ >=sys-devel/gcc-7.3.0
+ dev-util/itstool
+ media-libs/libsamplerate
+ virtual/pkgconfig
+"
+
+pkg_postinst(){
+ gnome2_gconf_install
+ gnome2_schemas_update
+ gnome2_icon_cache_update
+}
+
+pkg_postrm(){
+ gnome2_gconf_uninstall
+ gnome2_schemas_update
+ gnome2_icon_cache_update
+}
diff --git a/media-sound/pulseeffects/pulseeffects-4.6.3.ebuild b/media-sound/pulseeffects/pulseeffects-4.6.3.ebuild
new file mode 100644
index 0000000..0e6624c
--- /dev/null
+++ b/media-sound/pulseeffects/pulseeffects-4.6.3.ebuild
@@ -0,0 +1,72 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit gnome2-utils meson
+
+DESCRIPTION="Limiter, compressor, reverberation, equalizer auto volume effects for Pulseaudio"
+HOMEPAGE="https://github.com/wwmm/pulseeffects"
+
+if [[ ${PV} == *9999 ]];then
+ inherit git-r3
+ SRC_URI=""
+ EGIT_REPO_URI="${HOMEPAGE}"
+else
+ SRC_URI="${HOMEPAGE}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64 ~x86"
+fi
+
+LICENSE="GPL-3"
+SLOT="0"
+IUSE="bs2b calf mda-lv2 rubberband"
+
+#TODO: optional : lilv, zam-plugins (check from archlinux pkg)
+RDEPEND="
+ >=dev-libs/boost-1.41
+ >=dev-cpp/glibmm-2.56.0
+ >=dev-cpp/gtkmm-3.20:3.0
+ >=dev-libs/glib-2.56:2
+ >=dev-libs/libsigc++-2.10:2
+ >=x11-libs/gtk+-3.18:3
+ >=media-libs/lilv-0.24.2-r1
+ >=media-libs/lsp-plugins-1.1.7[lv2]
+ >=media-libs/gstreamer-1.12.0:1.0
+ >=media-libs/gst-plugins-good-1.12.0:1.0
+ >=media-libs/gst-plugins-bad-1.12.0:1.0
+ bs2b? ( >=media-plugins/gst-plugins-bs2b-1.12.0:1.0 )
+ >=media-plugins/gst-plugins-ladspa-1.12.0:1.0
+ >=media-plugins/gst-plugins-lv2-1.12.0:1.0
+ >=media-plugins/gst-plugins-pulse-1.12.0:1.0
+ calf? ( >=media-plugins/calf-0.90.0[lv2] )
+ mda-lv2? ( media-plugins/mda-lv2 )
+ rubberband? ( media-libs/rubberband )
+ >=media-libs/zita-convolver-3.0.0
+ media-libs/libebur128
+ media-sound/pulseaudio
+ sys-apps/dbus"
+# see 47a950b00c6db383ad07502a8fc396ecca98c1ce for dev-libs/appstream-glib
+# and sys-devel/gettext depends reasoning
+DEPEND="
+ ${RDEPEND}
+ dev-libs/appstream-glib
+ sys-devel/gettext
+"
+BDEPEND="
+ >=sys-devel/gcc-7.3.0
+ dev-util/itstool
+ media-libs/libsamplerate
+ virtual/pkgconfig
+"
+
+pkg_postinst(){
+ gnome2_gconf_install
+ gnome2_schemas_update
+ gnome2_icon_cache_update
+}
+
+pkg_postrm(){
+ gnome2_gconf_uninstall
+ gnome2_schemas_update
+ gnome2_icon_cache_update
+}
diff --git a/media-sound/pulseeffects/pulseeffects-4.6.4.ebuild b/media-sound/pulseeffects/pulseeffects-4.6.4.ebuild
new file mode 100644
index 0000000..0e6624c
--- /dev/null
+++ b/media-sound/pulseeffects/pulseeffects-4.6.4.ebuild
@@ -0,0 +1,72 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit gnome2-utils meson
+
+DESCRIPTION="Limiter, compressor, reverberation, equalizer auto volume effects for Pulseaudio"
+HOMEPAGE="https://github.com/wwmm/pulseeffects"
+
+if [[ ${PV} == *9999 ]];then
+ inherit git-r3
+ SRC_URI=""
+ EGIT_REPO_URI="${HOMEPAGE}"
+else
+ SRC_URI="${HOMEPAGE}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64 ~x86"
+fi
+
+LICENSE="GPL-3"
+SLOT="0"
+IUSE="bs2b calf mda-lv2 rubberband"
+
+#TODO: optional : lilv, zam-plugins (check from archlinux pkg)
+RDEPEND="
+ >=dev-libs/boost-1.41
+ >=dev-cpp/glibmm-2.56.0
+ >=dev-cpp/gtkmm-3.20:3.0
+ >=dev-libs/glib-2.56:2
+ >=dev-libs/libsigc++-2.10:2
+ >=x11-libs/gtk+-3.18:3
+ >=media-libs/lilv-0.24.2-r1
+ >=media-libs/lsp-plugins-1.1.7[lv2]
+ >=media-libs/gstreamer-1.12.0:1.0
+ >=media-libs/gst-plugins-good-1.12.0:1.0
+ >=media-libs/gst-plugins-bad-1.12.0:1.0
+ bs2b? ( >=media-plugins/gst-plugins-bs2b-1.12.0:1.0 )
+ >=media-plugins/gst-plugins-ladspa-1.12.0:1.0
+ >=media-plugins/gst-plugins-lv2-1.12.0:1.0
+ >=media-plugins/gst-plugins-pulse-1.12.0:1.0
+ calf? ( >=media-plugins/calf-0.90.0[lv2] )
+ mda-lv2? ( media-plugins/mda-lv2 )
+ rubberband? ( media-libs/rubberband )
+ >=media-libs/zita-convolver-3.0.0
+ media-libs/libebur128
+ media-sound/pulseaudio
+ sys-apps/dbus"
+# see 47a950b00c6db383ad07502a8fc396ecca98c1ce for dev-libs/appstream-glib
+# and sys-devel/gettext depends reasoning
+DEPEND="
+ ${RDEPEND}
+ dev-libs/appstream-glib
+ sys-devel/gettext
+"
+BDEPEND="
+ >=sys-devel/gcc-7.3.0
+ dev-util/itstool
+ media-libs/libsamplerate
+ virtual/pkgconfig
+"
+
+pkg_postinst(){
+ gnome2_gconf_install
+ gnome2_schemas_update
+ gnome2_icon_cache_update
+}
+
+pkg_postrm(){
+ gnome2_gconf_uninstall
+ gnome2_schemas_update
+ gnome2_icon_cache_update
+}
diff --git a/media-sound/pulseeffects/pulseeffects-4.8.4.ebuild b/media-sound/pulseeffects/pulseeffects-4.8.4.ebuild
new file mode 120000
index 0000000..da1b679
--- /dev/null
+++ b/media-sound/pulseeffects/pulseeffects-4.8.4.ebuild
@@ -0,0 +1 @@
+pulseeffects-5.0.3.ebuild
\ No newline at end of file
diff --git a/media-sound/pulseeffects/pulseeffects-5.0.3.ebuild b/media-sound/pulseeffects/pulseeffects-5.0.3.ebuild
new file mode 100644
index 0000000..0e6624c
--- /dev/null
+++ b/media-sound/pulseeffects/pulseeffects-5.0.3.ebuild
@@ -0,0 +1,72 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit gnome2-utils meson
+
+DESCRIPTION="Limiter, compressor, reverberation, equalizer auto volume effects for Pulseaudio"
+HOMEPAGE="https://github.com/wwmm/pulseeffects"
+
+if [[ ${PV} == *9999 ]];then
+ inherit git-r3
+ SRC_URI=""
+ EGIT_REPO_URI="${HOMEPAGE}"
+else
+ SRC_URI="${HOMEPAGE}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64 ~x86"
+fi
+
+LICENSE="GPL-3"
+SLOT="0"
+IUSE="bs2b calf mda-lv2 rubberband"
+
+#TODO: optional : lilv, zam-plugins (check from archlinux pkg)
+RDEPEND="
+ >=dev-libs/boost-1.41
+ >=dev-cpp/glibmm-2.56.0
+ >=dev-cpp/gtkmm-3.20:3.0
+ >=dev-libs/glib-2.56:2
+ >=dev-libs/libsigc++-2.10:2
+ >=x11-libs/gtk+-3.18:3
+ >=media-libs/lilv-0.24.2-r1
+ >=media-libs/lsp-plugins-1.1.7[lv2]
+ >=media-libs/gstreamer-1.12.0:1.0
+ >=media-libs/gst-plugins-good-1.12.0:1.0
+ >=media-libs/gst-plugins-bad-1.12.0:1.0
+ bs2b? ( >=media-plugins/gst-plugins-bs2b-1.12.0:1.0 )
+ >=media-plugins/gst-plugins-ladspa-1.12.0:1.0
+ >=media-plugins/gst-plugins-lv2-1.12.0:1.0
+ >=media-plugins/gst-plugins-pulse-1.12.0:1.0
+ calf? ( >=media-plugins/calf-0.90.0[lv2] )
+ mda-lv2? ( media-plugins/mda-lv2 )
+ rubberband? ( media-libs/rubberband )
+ >=media-libs/zita-convolver-3.0.0
+ media-libs/libebur128
+ media-sound/pulseaudio
+ sys-apps/dbus"
+# see 47a950b00c6db383ad07502a8fc396ecca98c1ce for dev-libs/appstream-glib
+# and sys-devel/gettext depends reasoning
+DEPEND="
+ ${RDEPEND}
+ dev-libs/appstream-glib
+ sys-devel/gettext
+"
+BDEPEND="
+ >=sys-devel/gcc-7.3.0
+ dev-util/itstool
+ media-libs/libsamplerate
+ virtual/pkgconfig
+"
+
+pkg_postinst(){
+ gnome2_gconf_install
+ gnome2_schemas_update
+ gnome2_icon_cache_update
+}
+
+pkg_postrm(){
+ gnome2_gconf_uninstall
+ gnome2_schemas_update
+ gnome2_icon_cache_update
+}
diff --git a/media-sound/pulseeffects/pulseeffects-9999.ebuild b/media-sound/pulseeffects/pulseeffects-9999.ebuild
new file mode 100644
index 0000000..0e6624c
--- /dev/null
+++ b/media-sound/pulseeffects/pulseeffects-9999.ebuild
@@ -0,0 +1,72 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit gnome2-utils meson
+
+DESCRIPTION="Limiter, compressor, reverberation, equalizer auto volume effects for Pulseaudio"
+HOMEPAGE="https://github.com/wwmm/pulseeffects"
+
+if [[ ${PV} == *9999 ]];then
+ inherit git-r3
+ SRC_URI=""
+ EGIT_REPO_URI="${HOMEPAGE}"
+else
+ SRC_URI="${HOMEPAGE}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64 ~x86"
+fi
+
+LICENSE="GPL-3"
+SLOT="0"
+IUSE="bs2b calf mda-lv2 rubberband"
+
+#TODO: optional : lilv, zam-plugins (check from archlinux pkg)
+RDEPEND="
+ >=dev-libs/boost-1.41
+ >=dev-cpp/glibmm-2.56.0
+ >=dev-cpp/gtkmm-3.20:3.0
+ >=dev-libs/glib-2.56:2
+ >=dev-libs/libsigc++-2.10:2
+ >=x11-libs/gtk+-3.18:3
+ >=media-libs/lilv-0.24.2-r1
+ >=media-libs/lsp-plugins-1.1.7[lv2]
+ >=media-libs/gstreamer-1.12.0:1.0
+ >=media-libs/gst-plugins-good-1.12.0:1.0
+ >=media-libs/gst-plugins-bad-1.12.0:1.0
+ bs2b? ( >=media-plugins/gst-plugins-bs2b-1.12.0:1.0 )
+ >=media-plugins/gst-plugins-ladspa-1.12.0:1.0
+ >=media-plugins/gst-plugins-lv2-1.12.0:1.0
+ >=media-plugins/gst-plugins-pulse-1.12.0:1.0
+ calf? ( >=media-plugins/calf-0.90.0[lv2] )
+ mda-lv2? ( media-plugins/mda-lv2 )
+ rubberband? ( media-libs/rubberband )
+ >=media-libs/zita-convolver-3.0.0
+ media-libs/libebur128
+ media-sound/pulseaudio
+ sys-apps/dbus"
+# see 47a950b00c6db383ad07502a8fc396ecca98c1ce for dev-libs/appstream-glib
+# and sys-devel/gettext depends reasoning
+DEPEND="
+ ${RDEPEND}
+ dev-libs/appstream-glib
+ sys-devel/gettext
+"
+BDEPEND="
+ >=sys-devel/gcc-7.3.0
+ dev-util/itstool
+ media-libs/libsamplerate
+ virtual/pkgconfig
+"
+
+pkg_postinst(){
+ gnome2_gconf_install
+ gnome2_schemas_update
+ gnome2_icon_cache_update
+}
+
+pkg_postrm(){
+ gnome2_gconf_uninstall
+ gnome2_schemas_update
+ gnome2_icon_cache_update
+}
diff --git a/media-video/pipewire/Manifest b/media-video/pipewire/Manifest
index e3fc3b1..f6a33e8 100644
--- a/media-video/pipewire/Manifest
+++ b/media-video/pipewire/Manifest
@@ -1,4 +1,6 @@
DIST pipewire-0.3.17.tar.gz 1254486 BLAKE2B e6a8e31dc968b95012f01dce53faa30dde40b3a382fe85eb25a50b96f3d011711be1f9fc5ce42e355c19f92e59bdaa4e5b6ecf41347f400c35adb3eeb2a53c5c SHA512 0de4f2431cf19708c3457877b8172a39676ef8f748071921a21da391d95b83a870190dc1343ffe9000e2599431464b6bfe90219f6237493903ccba5eb9b3473d
+DIST pipewire-0.3.25.tar.gz 1351257 BLAKE2B 3c4d6d98e3255df8baf50eb548bcf77b5c027a50f6acedd83cd63481ed5b642c174589f34314f150b07116cea8a3458c3f8b770df4081585d7f75cc8dde4decd SHA512 0f84be21bfcd70f25900c53a8ce399c29ce2d4d10f8b56e5103603cf0c80673aab0b16492e55b42985283adf46343cdca01626225db85a2263f06c309f68f2d7
DIST pipewire-0.3.6.tar.gz 968858 BLAKE2B 342b935ce1f68282cb6a1684855c7efacf24759359ca2079aade27b7d7d2699135e07c1e52afefb8924d9c8274b4cdbda98cc6c19d8aa0bf14b7202c0e0923f4 SHA512 a8d67bb6135432705d6de026074325f0cae7f01e3fe0b65fa7dafb128e5984ce126f8b4635bfbd9746777514df6f0880a78149fd007c7c1432ac29f95655ddcc
EBUILD pipewire-0.3.17.ebuild 1165 BLAKE2B 2fa6b7d78fc5d6da221a70870fab7a2f1b114e9ac1b7ec50af8026c5307ead0531f0671500eab7f09cc3111d53fc4b5039204ed199b5f11a7c8718c3138d718f SHA512 7a4ab2244fe610d9711eaca5c56fbd7776e579f4f2fe2df3ef32a65b9221655c122042627ff451605fdda47b34e5fbfee4ee349f540ea4f5735fd2cf3a9890c5
+EBUILD pipewire-0.3.25.ebuild 1087 BLAKE2B 010509f983ee127ec34e84078f6a9dc8d3a9e0eef243ae6b5e8f98d452754a2181f78dbab3122d8b1bc598e4f25e6e86f99aee9647e89775247a7d94251f18df SHA512 a74bf9f05eebd447961f860f2e040b67040659e0fa27848aa5f5f699a8c5d0702fcb76c6c2ee84a01eae7286fb31028e28cbeb8d20823c3a38779e57f2ce13f0
EBUILD pipewire-0.3.6.ebuild 1165 BLAKE2B 2fa6b7d78fc5d6da221a70870fab7a2f1b114e9ac1b7ec50af8026c5307ead0531f0671500eab7f09cc3111d53fc4b5039204ed199b5f11a7c8718c3138d718f SHA512 7a4ab2244fe610d9711eaca5c56fbd7776e579f4f2fe2df3ef32a65b9221655c122042627ff451605fdda47b34e5fbfee4ee349f540ea4f5735fd2cf3a9890c5
diff --git a/media-video/pipewire/pipewire-0.3.25.ebuild b/media-video/pipewire/pipewire-0.3.25.ebuild
new file mode 100644
index 0000000..f20710c
--- /dev/null
+++ b/media-video/pipewire/pipewire-0.3.25.ebuild
@@ -0,0 +1,58 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit meson
+
+MY_PV="${PV%_*}"
+MY_P="${PN}-${MY_PV}"
+
+S="${WORKDIR}/${MY_P}"
+
+RESTRICT="mirror"
+
+DESCRIPTION="Multimedia processing graphs"
+HOMEPAGE="http://pipewire.org/"
+SRC_URI="https://github.com/PipeWire/${PN}/archive/${MY_PV}.tar.gz -> ${MY_P}.tar.gz"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="*"
+
+IUSE="docs examples ffmpeg gstreamer jack pulseaudio systemd"
+
+RDEPEND="
+ media-libs/alsa-lib
+ media-libs/sbc
+ media-video/ffmpeg:=
+ jack? ( >=media-sound/jack2-1.9.10 )
+ pulseaudio? ( >=media-sound/pulseaudio-11.1 )
+ sys-apps/dbus
+ virtual/libudev
+ gstreamer? (
+ media-libs/gstreamer:1.0
+ media-libs/gst-plugins-base:1.0
+ )
+ systemd? ( sys-apps/systemd )
+ media-libs/vulkan-loader
+"
+DEPEND="
+ ${RDEPEND}
+ app-doc/xmltoman
+ docs? ( app-doc/doxygen )
+"
+
+src_configure() {
+ local emesonargs=(
+ -Dman=enabled
+ -Ddocs=disabled
+ -Dexamples=disabled
+ -Dffmpeg=enabled
+ -Djack=disabled
+ -Dpulseaudio=pipewire-pulseaudio
+ -Dsystemd=disabled
+ )
+
+ meson_src_configure
+}
diff --git a/x11-terms/kitty/Manifest b/x11-terms/kitty/Manifest
index 3b0d11d..8fa7836 100644
--- a/x11-terms/kitty/Manifest
+++ b/x11-terms/kitty/Manifest
@@ -6,10 +6,12 @@ DIST kitty-0.13.3.tar.xz 2846220 BLAKE2B cb2da9e64696298471001f28bc5cc568a6ec213
DIST kitty-0.14.2.tar.xz 2867116 BLAKE2B 20f3d66caa5242502f2699d4a5e8364eda357b00c72d50650ab0d03fbbb552152a2d4447e37ce20660d6d8f9ffc285aee057f6adf7a03ac57fa8ab6d1da61013 SHA512 191a37424c51776d271008c6b4b0cb43b60cd2abea3ea7b2a08cca9a8d44c4932ca11470f3efb8debc0e2ef3641bb68c05374401073b23cf81042af467b1dbf4
DIST kitty-0.18.1.tar.xz 3098940 BLAKE2B c54f9e7996e8e17182d5cdb3f915964b2626985992dc9f8bf2f11d086475fd7b13ee131aaf942f521cd6356ac13f7efdf436253237022532ffc68cb7923bc645 SHA512 d1870fa8c1c42c9a20251ba7819fb649760a98070653cff6bbc0ef86160d6b20070bbfe4e549b80d75d7a78b37cb3c1153e4be246709cf630129cd4d09a76604
DIST kitty-0.19.2.tar.xz 3259928 BLAKE2B c6060a098df53e53cfd56f680f0972ee2a116c0d9ae8eabd2f087540f5f181a5980e2d963d27f24df5c57f6e81327591531397341e33b3d9bb4a2420138aa473 SHA512 86b6a08c7f5282587967ff7e3509d6ac4ef556b3bbeae1a9529a584f804f204d54f5031a90dcd08af735eb16a283938fa9e49c8d767dca12e945b7493f0e76da
+DIST kitty-0.20.1.tar.xz 3449932 BLAKE2B aed9a250fbc7005cd67fd22bfc33de845bea7e39a5561e6957b744f03a5438945f9739ca7066a93889144a5d0289185f337ef4d487c754cba37f242030f1c46a SHA512 19dfa66eb2a2115877b25fbff0ba7a81071bff00c732236f20342aeb619cca88ae4a4e8ce4e73908ac7d7d12fca5232a76e0167754f2e658af02e442cf5ba0cd
EBUILD kitty-0.13.3.ebuild 2061 BLAKE2B a60fb0f1798d2abe1dd4cae7eba8cec13ab092312a24120a3938c850265d8b3566e095aa5158bb6ccb841d658728ed980a43b6533f5491982aa03a745d7bdfa9 SHA512 931a21ba970fd1782538b9c83c7ab4e80a9ca262d48fcfe3cf3c412b071a60429a2104441809409da8144dcd080852355de912a296f8fd9e783fa5ce18a12d70
EBUILD kitty-0.14.2.ebuild 2078 BLAKE2B 22b6521d25754c5ab6aa0cfdc5c28ec2f923e52779ac2a1ed4209ee9c702927de2c7ea6444b97efbcf961dfbde9d6d861b33d823ea7e24ec7e769c0e9c24ead7 SHA512 5f367b960b0457b1e9601083f36abf539f97142cf8530415697e719898cecbbc9b25a544c742acd1a24c3f4fb4653565e220f51716c812ef52a498b2e56d825f
EBUILD kitty-0.18.1.ebuild 1995 BLAKE2B c0ce7865c86be0509f4501398e414ecb057a2cd50ee1d16a29eb332233c55fdc3db1165b300316069c0821282f6e2c80ad1eef57d0473c241fe79c9c745ee62f SHA512 8db74c32ef40cc424e5048964243972d0a690007516dc15d3dc2d39f56486e34e17efb9d1a87507405850ce0a99a2963c35f46853deaea38ae952e970618d175
EBUILD kitty-0.19.2.ebuild 1995 BLAKE2B c0ce7865c86be0509f4501398e414ecb057a2cd50ee1d16a29eb332233c55fdc3db1165b300316069c0821282f6e2c80ad1eef57d0473c241fe79c9c745ee62f SHA512 8db74c32ef40cc424e5048964243972d0a690007516dc15d3dc2d39f56486e34e17efb9d1a87507405850ce0a99a2963c35f46853deaea38ae952e970618d175
+EBUILD kitty-0.20.1.ebuild 1999 BLAKE2B 31671f9b79693699750cec46948f67e2ef6c972095fa9b9883b723229ad14103e371c8503f67663225e5da7463e6837ecbcedb3a48ee3e4621f2ed72cbba5960 SHA512 dc25bfb18e39f6609072d155a233797a87eecc23298e28750171f179e45dd53d9400b4fe98784dcafedb6f5cd2555b9c39297072a64a6a15f6c26d3d209e9825
EBUILD kitty-9999.ebuild 2070 BLAKE2B 5f7e2a261edaa1c0988470cbdab32d13979c99ae88e8b6929f8f5880d4a3afc2e4a3d5357770331e83cba5aa2f973131d84a5987f2c275b79d0670355fc98289 SHA512 3777e8b57011f22aca8b7f7e150acdd96b25ddeaa6a641026aed21673ddd53ec434399eeeeec94cd21d276635727c1327dffc200cb4e4e483fdbe8f1af8af65b
MISC app.log 758 BLAKE2B 0f38dbeb5e1afb808c35cb3052ed0f61f45249ee909495687031a524c2b0b4be9f8a7cda9ac19bb7abd9a9e967c3993a52c0df7732fe5a507be7e68a6613b4b4 SHA512 b596048f8bb844f7f6789505be8b44102f51e5ecbb6521ef95631dab12997c308abe95a3b845ee91aaa723e25a78a21aea8c5b27fe2de9203b28f9bc6be793a5
MISC metadata.xml 428 BLAKE2B 961cd7fc3036c8f5a641cb97de57765c423f157430bf1fd68ce7febf24713ab1b15080e03f568d20f6360da467044ea4ed1d3ee7bfb132250951b4239df58980 SHA512 49ffa8dee6be29ab8adacbc0717dc574ad15f690fa1e0726b2a9de439f90867d3770e3628734d9a7457aa45896334d96f15a51e217ad248c766271aa62d85061
diff --git a/x11-terms/kitty/kitty-0.20.1.ebuild b/x11-terms/kitty/kitty-0.20.1.ebuild
new file mode 100644
index 0000000..6119a90
--- /dev/null
+++ b/x11-terms/kitty/kitty-0.20.1.ebuild
@@ -0,0 +1,105 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+PYTHON_COMPAT=( python3_{6,7,8,9} )
+
+inherit python-single-r1 toolchain-funcs gnome2-utils
+
+if [[ ${PV} == "9999" ]] ; then
+ EGIT_REPO_URI="https://github.com/kovidgoyal/kitty.git"
+ inherit git-r3
+else
+ SRC_URI="https://github.com/kovidgoyal/kitty/releases/download/v${PV}/${P}.tar.xz"
+ KEYWORDS="~amd64 ~x86"
+fi
+
+DESCRIPTION="A modern, hackable, featureful, OpenGL-based terminal emulator"
+HOMEPAGE="https://github.com/kovidgoyal/kitty"
+
+LICENSE="GPL-3"
+SLOT="0"
+IUSE="debug doc imagemagick wayland"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+COMMON_DEPS="
+ ${PYTHON_DEPS}
+ >=media-libs/harfbuzz-1.5.0:=
+ sys-apps/dbus
+ sys-libs/zlib
+ media-libs/libpng:0=
+ media-libs/freetype:2
+ media-libs/fontconfig
+ x11-libs/libXcursor
+ x11-libs/libXrandr
+ x11-libs/libXi
+ x11-libs/libXinerama
+ x11-libs/libxkbcommon[X]
+ x11-libs/libxcb[xkb]
+ wayland? (
+ dev-libs/wayland
+ >=dev-libs/wayland-protocols-1.17
+ )
+"
+RDEPEND="
+ ${COMMON_DEPS}
+ imagemagick? ( virtual/imagemagick-tools )
+"
+DEPEND="${RDEPEND}
+ media-libs/mesa
+ sys-libs/ncurses
+ virtual/pkgconfig
+"
+[[ ${PV} == *9999 ]] && DEPEND+=" >=dev-python/sphinx-1.7[${PYTHON_USEDEP}]"
+
+PATCHES=(
+)
+
+src_prepare() {
+ default
+
+ # disable wayland as required
+ if ! use wayland; then
+ sed -i "/'x11 wayland'/s/ wayland//" setup.py || die
+ fi
+
+ # respect doc dir
+ sed -i "/htmldir =/s/appname/'${PF}'/" setup.py
+
+ tc-export CC
+}
+
+doecho() {
+ echo "$@"
+ "$@" || die
+}
+
+src_compile() {
+ doecho "${EPYTHON}" setup.py \
+ --verbose $(usex debug --debug "") \
+ --libdir-name $(get_libdir) \
+ linux-package
+}
+
+src_test() {
+ export KITTY_CONFIG_DIRECTORY=${T}
+ "${EPYTHON}" test.py || die
+}
+
+src_install() {
+ mkdir -p "${ED}"usr || die
+ cp -r linux-package/* "${ED}usr" || die
+ python_fix_shebang "${ED}"
+
+ if ! use doc; then
+ rm -r "${ED}"/usr/share/doc || die
+ fi
+}
+
+pkg_postinst() {
+ gnome2_icon_cache_update
+}
+
+pkg_postrm() {
+ gnome2_icon_cache_update
+}