summaryrefslogtreecommitdiff
path: root/app-accessibility
diff options
context:
space:
mode:
Diffstat (limited to 'app-accessibility')
-rw-r--r--app-accessibility/Manifest.gzbin4564 -> 4561 bytes
-rw-r--r--app-accessibility/accerciser/Manifest4
-rw-r--r--app-accessibility/accerciser/accerciser-3.42.0-r1.ebuild54
-rw-r--r--app-accessibility/accerciser/files/accerciser-3.42.0-imp-module.patch83
-rw-r--r--app-accessibility/accerciser/metadata.xml1
-rw-r--r--app-accessibility/at-spi2-core/Manifest2
-rw-r--r--app-accessibility/at-spi2-core/at-spi2-core-2.52.0.ebuild76
-rw-r--r--app-accessibility/freetts/Manifest2
-rw-r--r--app-accessibility/freetts/files/freetts-1.2.2-source-target.patch34
-rw-r--r--app-accessibility/freetts/freetts-1.2.2-r3.ebuild96
-rw-r--r--app-accessibility/kontrast/Manifest4
-rw-r--r--app-accessibility/kontrast/kontrast-24.05.2.ebuild (renamed from app-accessibility/kontrast/kontrast-24.05.1.ebuild)2
12 files changed, 354 insertions, 4 deletions
diff --git a/app-accessibility/Manifest.gz b/app-accessibility/Manifest.gz
index 3249f2fdcaec..4e4402879b6d 100644
--- a/app-accessibility/Manifest.gz
+++ b/app-accessibility/Manifest.gz
Binary files differ
diff --git a/app-accessibility/accerciser/Manifest b/app-accessibility/accerciser/Manifest
index 47a681d9d4f9..01a304faeb6e 100644
--- a/app-accessibility/accerciser/Manifest
+++ b/app-accessibility/accerciser/Manifest
@@ -1,3 +1,5 @@
+AUX accerciser-3.42.0-imp-module.patch 3436 BLAKE2B 71577620a4e81ab0d9b2bd19a3a8cdd3f411822de9ea5fbc08f1aae53bcda0aaa209ecd9a7303320b6d3bd7614575115dd25189589e46ddf04658fa384135416 SHA512 0d7830eb1689b5d31cb955ff5c98a15633deb023e0dd26b431406d8abd5c3f882232ca46cca3f29fbfbfc4671ac4e41e7ee36bf9e621a2780327055f33b97ec0
DIST accerciser-3.42.0.tar.xz 1999644 BLAKE2B 190f37ab94aba2dd1f16594242426a33bac366b89eb284c739c02a96cf0330ccb562237079d79ade5b729c5e38facbb542af2ace195a5d9b6d1c68a5005ba653 SHA512 65c3819c80c9ec3c8728963572a2c7bb4575782abde8ee34e3b7fa31217ef0e8106a7702c5b5a32b123ccb84b357984844a6d4aee75bf7e6157f3d63588224da
+EBUILD accerciser-3.42.0-r1.ebuild 1292 BLAKE2B daf93aa80fe6fbd1bd17b34d1768436e557f9856d5dde41ebaa871048135bc45201a635c09c42358a1a5ed9ab6de3bdf1c5e7155a99f2c6d3c381dd3ace9dc54 SHA512 e54ca9f38deb1d32aff13b18b48b59df3ea1440188c92d1e0209f96307d66eab54f19adc91811fabd6073aa3fead9d558e30d1cccdca6ccb6e78fa05d2c245f9
EBUILD accerciser-3.42.0.ebuild 1196 BLAKE2B 1584ea48eb5a4dca3f5775756ce13d31e4bf455c35a67faac66a254c5472f1889308c923a9c6349b545faf0124671c30ea14a59e596f74a6d467507a2fda2b14 SHA512 30bc75f79c0f9df2200d67acbad93f48d13101db7c619b0e050bf31f2296ddbc5f25b7441a53ca848b9a7057657f89483ecf006e069ec740f9d610101f6c1784
-MISC metadata.xml 836 BLAKE2B c267ec04334d6652d6e402d58cc8b3d5d9665c83fa127ba3a168ff7437dd8aa60f699196c71be10e0a63bd52931a0b157fb92ac65ef8a601331ceb8404560d7f SHA512 ebc2a15a8a2f0c107a0c24261806a06efc63a018e94e1ff5e9e67b37c73cf80830f79084627559e743e7267c4a0cddc90ab7a852881664c6324d00479c6fb425
+MISC metadata.xml 861 BLAKE2B 2c5c372e20fb030b3ba1a5abd16b18ae1098dfaddee8752319f65bed04c4612be3a0a600984ae1bce0a2237d5e7f4713731d04f101de8447d5a9a3c911afdbf2 SHA512 e51a453ff6cb0e1640f14ab418433d306d8c2d5dde4e0523aa24dcc88e63cafe7fec02652ae0598e6f7d4a61c1212a3f5362d31266b90b7524584d99bf59caba
diff --git a/app-accessibility/accerciser/accerciser-3.42.0-r1.ebuild b/app-accessibility/accerciser/accerciser-3.42.0-r1.ebuild
new file mode 100644
index 000000000000..3fa4dbfdb71f
--- /dev/null
+++ b/app-accessibility/accerciser/accerciser-3.42.0-r1.ebuild
@@ -0,0 +1,54 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+PYTHON_REQ_USE="xml(+)"
+
+inherit gnome2 python-single-r1
+
+DESCRIPTION="Interactive Python accessibility explorer"
+HOMEPAGE="https://wiki.gnome.org/Apps/Accerciser https://gitlab.gnome.org/GNOME/accerciser"
+
+LICENSE="BSD CC-BY-SA-3.0"
+SLOT="0"
+KEYWORDS="amd64 x86"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+RDEPEND="
+ >=app-accessibility/at-spi2-core-2.5.2:2
+ >=x11-libs/gtk+-3.24.0:3[introspection]
+ $(python_gen_cond_dep '
+ >=dev-python/pygobject-2.90.3:3[${PYTHON_USEDEP}]
+ >=dev-python/ipython-0.11[${PYTHON_USEDEP}]
+ >=dev-python/pyatspi-2.1.5[${PYTHON_USEDEP}]
+ dev-python/pycairo[${PYTHON_USEDEP}]
+ dev-python/python-xlib[${PYTHON_USEDEP}]
+ ')
+
+ dev-libs/atk[introspection]
+ >=dev-libs/glib-2.28:2
+ dev-libs/gobject-introspection:=
+ x11-libs/gdk-pixbuf[introspection]
+ x11-libs/libwnck:3[introspection]
+ x11-libs/pango[introspection]
+ gnome-base/librsvg[introspection]
+ ${PYTHON_DEPS}
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ dev-util/itstool
+ >=sys-devel/gettext-0.19.8
+ virtual/pkgconfig
+"
+
+PATCHES=(
+ # Port from imp to importlib (from 'master')
+ "${FILESDIR}/${P}-imp-module.patch"
+)
+
+src_install() {
+ gnome2_src_install
+ python_optimize
+}
diff --git a/app-accessibility/accerciser/files/accerciser-3.42.0-imp-module.patch b/app-accessibility/accerciser/files/accerciser-3.42.0-imp-module.patch
new file mode 100644
index 000000000000..abcba67386c8
--- /dev/null
+++ b/app-accessibility/accerciser/files/accerciser-3.42.0-imp-module.patch
@@ -0,0 +1,83 @@
+diff '--color=auto' -ur accerciser-3.42.0.orig/plugins/validate.py accerciser-3.42.0/plugins/validate.py
+--- accerciser-3.42.0.orig/plugins/validate.py 2024-07-15 20:46:50.173168139 +0200
++++ accerciser-3.42.0/plugins/validate.py 2024-07-15 20:50:07.974258909 +0200
+@@ -20,7 +20,7 @@
+ import traceback
+ import sys
+ import glob
+-import imp
++import importlib
+ import webbrowser
+ from accerciser.plugin import ViewportPlugin
+ from accerciser.i18n import _, N_, DOMAIN
+@@ -68,16 +68,18 @@
+ '''
+ for path in [USER_SCHEMA_PATH, SYS_SCHEMA_PATH]:
+ for fn in glob.glob(os.path.join(path, '*.py')):
+- module = os.path.basename(fn)[:-3]
+- params = imp.find_module(module, [path])
+- schema = imp.load_module(module, *params)
++ module_name = os.path.basename(fn)[:-3]
++ spec = importlib.util.spec_from_file_location(module_name, fn)
++ module = importlib.util.module_from_spec(spec)
++ spec.loader.exec_module(module)
++
+ try:
+ # try to get descriptive fields from the module
+- SCHEMA_METADATA[module] = schema.__metadata__
++ SCHEMA_METADATA[module_name] = module.__metadata__
+ except AttributeError:
+ # default to usinf file name as description
+- SCHEMA_METADATA[module] = {'name' : module,
+- 'description' : _('No description')}
++ SCHEMA_METADATA[module_name] = {'name' : module,
++ 'description' : _('No description')}
+
+ @staticmethod
+ def getValidators(name):
+diff '--color=auto' -ur accerciser-3.42.0.orig/pyreqs.py accerciser-3.42.0/pyreqs.py
+--- accerciser-3.42.0.orig/pyreqs.py 2024-07-15 20:46:50.170168156 +0200
++++ accerciser-3.42.0/pyreqs.py 2024-07-15 20:50:27.235354799 +0200
+@@ -11,7 +11,7 @@
+ this distribution, and is available at
+ U{http://www.opensource.org/licenses/bsd-license.php}
+ '''
+-import sys, os, imp
++import sys, os
+
+ PYGTK_REQ = '2.0'
+ PYATSPI_REQ = (2, 23, 3)
+Sólo en accerciser-3.42.0: pyreqs.py.orig
+diff '--color=auto' -ur accerciser-3.42.0.orig/src/lib/accerciser/plugin/plugin_manager.py accerciser-3.42.0/src/lib/accerciser/plugin/plugin_manager.py
+--- accerciser-3.42.0.orig/src/lib/accerciser/plugin/plugin_manager.py 2024-07-15 20:46:50.169168161 +0200
++++ accerciser-3.42.0/src/lib/accerciser/plugin/plugin_manager.py 2024-07-15 20:47:28.027960768 +0200
+@@ -23,7 +23,7 @@
+ from .message import MessageManager
+ import os
+ import sys
+-import imp
++import importlib
+ import traceback
+ from accerciser.i18n import _, N_, C_
+
+@@ -136,8 +136,7 @@
+ '''
+ sys.path.insert(0, plugin_dir)
+ try:
+- params = imp.find_module(plugin_fn, [plugin_dir])
+- plugin = imp.load_module(plugin_fn, *params)
++ plugin = importlib.import_module(plugin_fn)
+ plugin_locals = plugin.__dict__
+ except Exception as e:
+ self.message_manager.newModuleError(plugin_fn, plugin_dir,
+diff '--color=auto' -ur accerciser-3.42.0.orig/src/lib/accerciser/plugin/view.py accerciser-3.42.0/src/lib/accerciser/plugin/view.py
+--- accerciser-3.42.0.orig/src/lib/accerciser/plugin/view.py 2024-07-15 20:46:50.170168156 +0200
++++ accerciser-3.42.0/src/lib/accerciser/plugin/view.py 2024-07-15 20:47:28.028960763 +0200
+@@ -20,7 +20,6 @@
+ from .message import MessageManager
+ import os
+ import sys
+-import imp
+ from accerciser.i18n import _, N_
+ import gc
+ from accerciser import ui_manager
diff --git a/app-accessibility/accerciser/metadata.xml b/app-accessibility/accerciser/metadata.xml
index 3d77751efc4b..8596c0d00151 100644
--- a/app-accessibility/accerciser/metadata.xml
+++ b/app-accessibility/accerciser/metadata.xml
@@ -5,6 +5,7 @@
<email>gnome@gentoo.org</email>
<name>Gentoo GNOME Desktop</name>
</maintainer>
+ <stabilize-allarches/>
<longdescription lang="en">
Accerciser is an interactive Python accessibility explorer for the GNOME desktop. It uses AT-SPI to inspect and control widgets, allowing you to check if an application is providing correct information to assistive technologies and automated test frameworks. Accerciser has a simple plugin framework which you can use to create custom views of accessibility information.
diff --git a/app-accessibility/at-spi2-core/Manifest b/app-accessibility/at-spi2-core/Manifest
index cbb52317e12a..54abcb59b717 100644
--- a/app-accessibility/at-spi2-core/Manifest
+++ b/app-accessibility/at-spi2-core/Manifest
@@ -1,5 +1,7 @@
DIST at-spi2-core-2.50.1.tar.xz 567836 BLAKE2B 88916f322efa547be2249388a5f7b698ff7fb9464bc98fa929524616d0d25237328c10678df800b9ce325a3050804e9b0044a43024d06b71381dfc32917700a3 SHA512 d0b342a1ff2a3dd91aa87663412289d1616906c14a37e81b8514882d44981092356dc8a5d5c66b6d980d2cdf22128fff74651a4af6cad73cb62fd3154c5bbeae
DIST at-spi2-core-2.50.2.tar.xz 569124 BLAKE2B 7a69dbeb68b674d5b4e458dc10ba0e266583216f6a45f1924dee28e848bc124802f5181b0b1cc969eae2dfbb13df56b0c87bb1f347f6e323f6474d02a3543664 SHA512 a1c9ca77d34801b421c13f66d72e6101b23896dd210efbd7931ac0778e30c51a20759796a8c121946f57c1683626fd3ef34f88e5ad6495c20f6ac79fd0a96aa4
+DIST at-spi2-core-2.52.0.tar.xz 574684 BLAKE2B 642cf8a63700ed5d5e20eb356f60c5d5e771d34bb0a373e95c71898ea2318c41484faec736ec44b1162fac22a075ca5f7b4698b105972ea060d107f9afc7f5b9 SHA512 0482cae97cf5e2295ab56f6ae83db9e1047813a1c3c2b6cd6012f95dfabec1f7a93d0045a1a7c3fabb7a389f71dc43f797b2ad9242e97ddf565cf63948ae146b
EBUILD at-spi2-core-2.50.1.ebuild 2045 BLAKE2B 05759ae495e14d6aa2f33b36bfaea94a548e6752ba7b808e210a14fb3dbc620c2b1fa99538ec20a841ed4c3f7b5afcfd4749cef6bb20146822a1dc83df1be95b SHA512 a449703a4ed5273fad4d2dadf940081b6ff61e0a4b491217e9a8d1742d656d59eaddb86d9a66947a187aef38f1b58f21f64be2339eefd0247ce1406412c36604
EBUILD at-spi2-core-2.50.2.ebuild 2046 BLAKE2B 7736c7e5bf1eaffa9558db9969605da2ed8fc74ff78745aadb5d7350b2555763ebffd318abe473f7a94de6ea1347d4e69b7a89affcd22a1543aba48f4471a0bb SHA512 aad1d540ced06ff7784e9967de75e56e2f785e9307ed93e54fd5ed490587e58257cec7bfe1602eaddedf8fd35377ae7a72fed2a07d9537d6580ffcb8e6138388
+EBUILD at-spi2-core-2.52.0.ebuild 2016 BLAKE2B 0a0e8e80b6805072fdce630e21f714acd4ede796dc20fdff0e9826dfbcbf76b805d7f33b30691621a9b54f27b80f2fa26f0c120c2725165503bb4d4d84ff1fa5 SHA512 dbe69d4d61f491519a7aeaead4f327225f46b4e668f737d415e6b984a7a8147421a5cc1129783453daa96e03b86fb9e795b95773b52794c10b2a3d6eb9627f06
MISC metadata.xml 468 BLAKE2B f6b51c8c4da2bdff93f41f92cbe94687250f28d9c42c5cdb7de9eef0d1a6e208dd911d443298eb08fc83f8765d0b2c09e30e932d97b3fc1d28861ceae9b1ee6b SHA512 908b6e8c5929143a45cd108fed5b3375dc6f8f98b637a230c0eb0da4a261a8d9655954e1f98dc9967bd79a8c3aece79e1827097a5785494692f7655bcd73f331
diff --git a/app-accessibility/at-spi2-core/at-spi2-core-2.52.0.ebuild b/app-accessibility/at-spi2-core/at-spi2-core-2.52.0.ebuild
new file mode 100644
index 000000000000..1e1ec960bcf6
--- /dev/null
+++ b/app-accessibility/at-spi2-core/at-spi2-core-2.52.0.ebuild
@@ -0,0 +1,76 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit gnome.org meson-multilib systemd virtualx xdg
+
+DESCRIPTION="D-Bus accessibility specifications and registration daemon"
+HOMEPAGE="https://gitlab.gnome.org/GNOME/at-spi2-core"
+
+LICENSE="LGPL-2.1+"
+SLOT="2"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos"
+IUSE="X dbus-broker gtk-doc +introspection systemd"
+REQUIRED_USE="
+ dbus-broker? ( systemd )
+ gtk-doc? ( X )
+"
+
+DEPEND="
+ >=sys-apps/dbus-1.5[${MULTILIB_USEDEP}]
+ >=dev-libs/glib-2.67.4:2[${MULTILIB_USEDEP}]
+ >=dev-libs/libxml2-2.9.1:2[${MULTILIB_USEDEP}]
+ introspection? ( >=dev-libs/gobject-introspection-1.54.0:= )
+ systemd? ( sys-apps/systemd[${MULTILIB_USEDEP}] )
+ X? (
+ x11-libs/libX11[${MULTILIB_USEDEP}]
+ x11-libs/libXtst[${MULTILIB_USEDEP}]
+ x11-libs/libXi[${MULTILIB_USEDEP}]
+ )
+
+ !<dev-libs/atk-2.46.0
+ !<app-accessibility/at-spi2-atk-2.46.0
+"
+RDEPEND="${DEPEND}
+ dbus-broker? ( sys-apps/dbus-broker )
+"
+BDEPEND="
+ dev-util/glib-utils
+ gtk-doc? (
+ dev-python/sphinx
+ dev-util/gdbus-codegen
+ >=dev-util/gi-docgen-2021.1
+ )
+ >=sys-devel/gettext-0.19.8
+ virtual/pkgconfig
+"
+
+multilib_src_configure() {
+ local emesonargs=(
+ -Ddefault_bus=$(usex dbus-broker dbus-broker dbus-daemon)
+ $(meson_use systemd use_systemd)
+ -Dgtk2_atk_adaptor=true
+ -Dsystemd_user_dir="$(systemd_get_userunitdir)"
+ $(meson_native_use_bool gtk-doc docs)
+ $(meson_native_use_feature introspection)
+ $(meson_feature X x11)
+ -Ddisable_p2p=false
+ -Datk_only=false
+ )
+ meson_src_configure
+}
+
+multilib_src_test() {
+ virtx dbus-run-session meson test -C "${BUILD_DIR}" || die
+}
+
+multilib_src_install_all() {
+ einstalldocs
+
+ if use gtk-doc; then
+ mkdir -p "${ED}"/usr/share/gtk-doc/{libatspi,atk} || die
+ mv "${ED}"/usr/share/doc/libatspi "${ED}"/usr/share/gtk-doc/libatspi/html || die
+ mv "${ED}"/usr/share/doc/atk "${ED}"/usr/share/gtk-doc/atk/html || die
+ fi
+}
diff --git a/app-accessibility/freetts/Manifest b/app-accessibility/freetts/Manifest
index 9c3fd5b4de0a..194bc8605456 100644
--- a/app-accessibility/freetts/Manifest
+++ b/app-accessibility/freetts/Manifest
@@ -1,4 +1,6 @@
+AUX freetts-1.2.2-source-target.patch 1243 BLAKE2B 7d840d67ecdab9aa25ac323d28395919b5bb59594722631d2d2346ead8706d5e27aaf3d06258b1fb688ce6b5af120fd256dbd0ab805434f2751d17ceb8718a7a SHA512 e7f485d3ca5eab047cf03b56708abca646b13b64183b28bd58c1f9fb38eb518f82a0b9548524ac58a703622903fc17e360975949269a4550a3879e15aeec9da1
AUX jsapi-gentoo.diff 10456 BLAKE2B c0de49a34fe6e5240f4a1c895b99593a169a3a14fe7c3b98cc62723d34b31935735e9632f599b90748a760a448860ae81d2a1e48de6f1074633d33e19c5158d3 SHA512 62acd90cb064db176ee7a0950857c173f2ace4de6a6319fce3273bcbb222f8fd309bc6939eaba00a00cd7217871dca60cfa33d5ee1396b86333b9dedbf8f3034
DIST freetts-1.2.2-src.zip 14111416 BLAKE2B fd3ac79ffe3ca031d40a6523a4ae900200c1b1eea0369fd1eec3233f852af8edffd81ca6c0bba628132221346d283d2138794e1f9697074fc1044944ad852e5b SHA512 a2cce0b1fd2267cc8dbd3e2ad3ec1f99526de3988443c0937405cc7b2eab9ef517001ef0b4b387e8721d3c33610cd642c6b7cf83217996a83481830de9713de7
EBUILD freetts-1.2.2-r2.ebuild 1912 BLAKE2B 6a6991cfa8fe2501bb42c24900c1d2428fc5c03870f71882c16e985118be03b74a2848b3f31acc18356b6836bd32dca0d5249fbdc947bdcd01c276d3627b0b0d SHA512 3c7cffa08290d6a022b23c0606e61aa7949ab4c81b41e21f83e74b7104b291e36cd2374b82f66c2ce15e99e3bcddb4e18ed3b6db8de79acf3cad439c9942df10
+EBUILD freetts-1.2.2-r3.ebuild 2142 BLAKE2B 60fa356d6ebb94a4d469c05b2679cf635be77749aaddebdc3d705dc6eb2c187a0c90e58d376b6209dc6564f4f0d3d277365a7d7df4d98e3a58abe5e1c6b9f892 SHA512 e2079ced82cbed9554e235af1bb0183cbd4d15a30542de202a8e44246f30fffd23f1b816ed42556903d2690f776d6ee64d6b1a625f9de59a02ade97ac58d33b8
MISC metadata.xml 577 BLAKE2B f7cfecae90f4d576518ffdfeefadfe143bd292cdf0dbc7742fdc3ff02b829e3625de02c6e88eca1e93cbfd4266f0bd64a787a609c939cfc22e37627542374bdb SHA512 75d441047de45d4747911f2a2c09dd52599b84805e79ce540df206bda354aec9da3005328f379a49562ff107afd02ed72555522c556410dc92d69a3e9408689d
diff --git a/app-accessibility/freetts/files/freetts-1.2.2-source-target.patch b/app-accessibility/freetts/files/freetts-1.2.2-source-target.patch
new file mode 100644
index 000000000000..0d7f6afe134b
--- /dev/null
+++ b/app-accessibility/freetts/files/freetts-1.2.2-source-target.patch
@@ -0,0 +1,34 @@
+We want to get rid of rewrite-xml provided by javatoolkit.
+
+--- a/build.xml
++++ b/build.xml
+@@ -124,7 +124,8 @@ jsapi.exe from the lib directory.
+ description="Build just the srcs">
+ <mkdir dir="${classes_dir}" />
+ <javac debug="true"
+- source="1.4"
++ source="8"
++ target="8"
+ deprecation="true"
+ srcdir="${src_dir}"
+ excludes="tests/**"
+@@ -145,7 +146,8 @@ jsapi.exe from the lib directory.
+ description="Build just the tests">
+ <mkdir dir="${classes_dir}" />
+ <javac debug="true"
+- source="1.4"
++ source="8"
++ target="8"
+ deprecation="true"
+ srcdir="${src_dir}"
+ includes="tests/**"
+@@ -904,7 +906,8 @@ jsapi.exe from the lib directory.
+ <target name="javadoc" description="Generate javadoc">
+ <mkdir dir="${javadoc_dir}" />
+ <javadoc sourcepath="${src_dir}"
+- source="1.4"
++ source="8"
++ target="8"
+ additionalparam="-breakiterator"
+ destdir="${javadoc_dir}"
+ packagenames="${javadoc_pkgs}"
diff --git a/app-accessibility/freetts/freetts-1.2.2-r3.ebuild b/app-accessibility/freetts/freetts-1.2.2-r3.ebuild
new file mode 100644
index 000000000000..b0585d04836c
--- /dev/null
+++ b/app-accessibility/freetts/freetts-1.2.2-r3.ebuild
@@ -0,0 +1,96 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+JAVA_PKG_IUSE="doc examples source"
+
+inherit java-pkg-2
+
+DESCRIPTION="A speech synthesis system written entirely in Java"
+HOMEPAGE="https://freetts.sourceforge.io/"
+SRC_URI="https://downloads.sourceforge.net/project/freetts/FreeTTS/FreeTTS%20${PV}/${P}-src.zip"
+
+LICENSE="jsapi? ( sun-bcla-jsapi ) freetts"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
+IUSE="jsapi mbrola"
+
+BDEPEND="app-arch/unzip"
+
+DEPEND="virtual/jdk:1.8
+ >=dev-java/ant-1.10.14-r3:0
+ jsapi? ( app-arch/sharutils )
+ mbrola? ( >=app-accessibility/mbrola-3.0.1h-r6 ) "
+
+# Exception in thread "main" java.lang.ClassCastException
+RDEPEND="virtual/jre:1.8
+ mbrola? ( >=app-accessibility/mbrola-3.0.1h-r6 ) "
+
+# Tests aren't present.
+RESTRICT="test"
+
+PATCHES=(
+ "${FILESDIR}"/jsapi-gentoo.diff
+ "${FILESDIR}/freetts-1.2.2-source-target.patch"
+)
+
+DOCS=( ANNOUNCE.txt README.txt RELEASE_NOTES )
+
+src_prepare() {
+ default #780585
+ java-pkg-2_src_prepare
+
+ # Prepare source directory.
+ mkdir src || die "Failed to create source directory."
+ mv com de src/ || die "Failed to move files to source directory."
+
+ # Prepare library directory.
+ cd lib || die "Lib directory not present."
+ chmod 0755 jsapi.sh || die "jsapi.sh not present or can't change permissions."
+
+ use mbrola && echo "mbrola.base=/usr/share/mbrola/" >> "${S}"/speech.properties
+}
+
+src_compile() {
+ if use jsapi; then
+ pushd lib
+ ./jsapi.sh || die "jsapi.sh failed"
+ popd
+ fi
+
+ eant jars
+}
+
+# Tests aren't present.
+# http://freetts.sourceforge.net/docs/index.php#how_test
+#src_test() {
+# ANT_TASKS="ant-junit" eant junit
+#}
+
+src_install() {
+ default
+ java-pkg_dojar lib/*.jar mbrola/*.jar
+
+ use mbrola && local jflags="--java_args -Dmbrola.base=/usr/share/mbrola"
+
+ java-pkg_dolauncher ${PN} --main com.sun.speech.freetts.FreeTTS ${jflags}
+
+ insinto /usr/share/${PN}
+ doins speech.properties
+ doins -r tools
+
+ if use doc ; then
+ docinto html
+ dodoc -r docs/*
+ java-pkg_dojavadoc javadoc
+ fi
+
+ if use examples ; then
+ java-pkg_doexamples demo
+ fi
+
+ if use source ; then
+ java-pkg_dosrc src/*
+ fi
+}
diff --git a/app-accessibility/kontrast/Manifest b/app-accessibility/kontrast/Manifest
index 8f35fd2e0930..63a12f5b7f81 100644
--- a/app-accessibility/kontrast/Manifest
+++ b/app-accessibility/kontrast/Manifest
@@ -1,5 +1,5 @@
DIST kontrast-23.08.5.tar.xz 211984 BLAKE2B f1c50f90031615bc9a3ddd00155f40fed2244994de309385e386fae7e21dddb7bd1dfa5a722050dcf67c7ad3def6d1979efc8623a18bcc21b6438178d15fc116 SHA512 e70d5bdc5a7363358f8d09c6a2bafda9645bcb5f9acc0fa4e51ed836e87baa92b3f9e6c4a81bd3d1050de152100426e714c6dd8d46459aa0d81949776880f9ae
-DIST kontrast-24.05.1.tar.xz 214656 BLAKE2B 520c666694268e8875acdecf00ed1c7e122a85f7594d06606ec336aa26a2aa5c23ee8db3bb9a18e86ce2d4a661d68977e62bc8632e1bc0cdc16a7eb871049c2d SHA512 4dc58d249f0e7ce29e64682cb341c44eb1b9a939c4d2c20b142101df3eb2849c187755b3635f7323eeb5ea06fe943e60e408499b5f6d921fc683e0701fd72e05
+DIST kontrast-24.05.2.tar.xz 214620 BLAKE2B ad61b0902fd1b95b4bef1eb5c7671a1ee8a3e1808e87bdfa39ac7f9a02f3ebd8d133522b0335b001e0713e0b1497aa0db5c3b239af1b2a9184d4ed2c4c48282a SHA512 aa2681b1b8a84852aaa180fb787ace87f9469731f7018a2e445b331f8598f8b1dd9d9b6ce9747a98518dd9286897c0521fb2a7951d8d56c1414012c4cfa0fffa
EBUILD kontrast-23.08.5.ebuild 825 BLAKE2B 63c0d56a8cd604a3a37ef865d64928132ed18a38aefc953860622932d12eb91c9f0c451fb488517b0cc08e38d505938a843ce6950badcef8af6fe89b8d0888c9 SHA512 3077f08bfeea3f450ee98cd610358f1dbf5f099511af94ce5a2b1df21c438c5a60d6e86f06640d8f0f1575ff57a820f47c69541ac16ab335d684e8c30b864998
-EBUILD kontrast-24.05.1.ebuild 712 BLAKE2B f1c60681fe3668830200ceb92f14e5f919b3c61e370f1b7b2a9c5a5725e7f92fe858268de3b07ecded26c73184901f29a3846cd7ba0b091b5e4bd0f1f726802a SHA512 f233617b3474daa06d1b6fc692f9da8e3f3644424d120ecd3f351f335c0043825b4bb5d29edab3a0d57f33c56423f4187b7c0eda31e8585056ece3abf4b1780b
+EBUILD kontrast-24.05.2.ebuild 719 BLAKE2B 68debd1f9e60a559e4fb101719b2465938272af7a4b46ac5c30cb44971c21114bc698876cdb090eb213a47e3f540085e0fe1a4a57efcc8c8a58c8a28aeb9f1b4 SHA512 f178296b0f17b12bf58ac1fbd9388ecb4bf8be6b9ef6f44fcc7bdf3786ecdda639d767b0601415043f891a2da45ee58ebb54df995cc7c9669139c23304620a8f
MISC metadata.xml 384 BLAKE2B 769505c8a869e842511bb7202a31c4ac5d89dbf378199f669bfe7038d27aa63febbf2eedf8ea767545e1ab99be1718c9d67ff506842e2b624f512a98efcb0de4 SHA512 52a7f09822301efe07ad292d16d6625a22da14febe2236e69dfe7e7088750d2d2095d765a65466d80285d3b87ef8979ed0e75956f3cb9cd52127994b23de3c75
diff --git a/app-accessibility/kontrast/kontrast-24.05.1.ebuild b/app-accessibility/kontrast/kontrast-24.05.2.ebuild
index fc542c5578b9..2a6990728bd8 100644
--- a/app-accessibility/kontrast/kontrast-24.05.1.ebuild
+++ b/app-accessibility/kontrast/kontrast-24.05.2.ebuild
@@ -13,7 +13,7 @@ HOMEPAGE="https://apps.kde.org/kontrast/"
LICENSE="GPL-3+"
SLOT="6"
-KEYWORDS="~amd64 ~arm64"
+KEYWORDS="~amd64 ~arm64 ~riscv"
IUSE=""
DEPEND="