public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] repo/gentoo:master commit in: app-misc/anki/, app-misc/anki/files/
@ 2020-06-12  7:00 Joonas Niilola
  0 siblings, 0 replies; 5+ messages in thread
From: Joonas Niilola @ 2020-06-12  7:00 UTC (permalink / raw
  To: gentoo-commits

commit:     bbf4348280a355c7def871019405fc563730ed7c
Author:     Chris Burroughs <chris.burroughs <AT> gmail <DOT> com>
AuthorDate: Fri Nov  8 02:37:38 2019 +0000
Commit:     Joonas Niilola <juippis <AT> gentoo <DOT> org>
CommitDate: Fri Jun 12 06:59:45 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=bbf43482

app-misc/anki: bump to 2.1.15 and modernize ebuild

 - claiming maintainer timeout to update version and fix bugs, --juippis

 * Bump to EAPI 7
 * Enable python 3.{7,8} support
 * Fix missing test dependencies
 * Add missing jsonschema dependency
 * Backport argument fix to allow mpv versions > 0.31 to be used by anki
 * Correct and expand LICENSE
 * Resolve NonexistentDeps DEPEND warning (leftover from PyQtWebEngine split,
   but no version of PyQt5 with a webengine use flag is still in the tree.)
 * Use default pkg_setup from eclass and rely on default value for S variable
 * Clarify optional runtime dependencies needed (mpv OR mplayer)
 * Move optional runtime dependencies to optfeature
 * Adjust SRC_URL after upstream re-arranging

NOTE: The upstream LICENSE includes "Qt's bundled translations: LGPL3", but
since we are building from source that is not directly included.  More recent
upstream versions have clarified this in the LICENSE file.

Bug: https://bugs.gentoo.org/625894
Bug: https://bugs.gentoo.org/645314
Bug: https://bugs.gentoo.org/651472
Bug: https://bugs.gentoo.org/688798
Closes: https://bugs.gentoo.org/700010
Closes: https://bugs.gentoo.org/715624
Bug: https://bugs.gentoo.org/722502
Bug: https://bugs.gentoo.org/724482
Bug: https://bugs.gentoo.org/724990
Closes: https://bugs.gentoo.org/726522

Signed-off-by: Chris Burroughs <chris.burroughs <AT> gmail.com>
Closes: https://github.com/gentoo/gentoo/pull/16054
Signed-off-by: Joonas Niilola <juippis <AT> gentoo.org>

 app-misc/anki/Manifest                         |  1 +
 app-misc/anki/anki-2.1.15.ebuild               | 93 ++++++++++++++++++++++++++
 app-misc/anki/files/anki-2.1.15-mpv-args.patch | 26 +++++++
 3 files changed, 120 insertions(+)

diff --git a/app-misc/anki/Manifest b/app-misc/anki/Manifest
index b40a9f9484c..d013dc23f14 100644
--- a/app-misc/anki/Manifest
+++ b/app-misc/anki/Manifest
@@ -1,2 +1,3 @@
 DIST anki-2.1.0_beta27.tgz 4127906 BLAKE2B b4f83cc30dc3e89f3ca17c03ba8dcfc9a487de43d8ac564d5dc83488e286c302816c8a8140aa764b596404194c5f3727218deec303ef201ccaef38b945d8b32d SHA512 50b4ece1361ecafdfe08dad04e9b622b1e8ba2224bfef7e4660c95f81cb8f525d892170548d741ff53bc19ff4c13863f488a71c31c8328511fea3203d2c345f1
 DIST anki-2.1.13.tgz 4248906 BLAKE2B 82a2a9a556cbf3596af22a73a2865815561cdd408b249443fc7e144734fdc2b62317120db71475afd7b0d4027f19e53c47437132028ef78b158ec3624f54a33f SHA512 921ef48b16c0c8c83b85523aa0a5b828210b210cd51fa471f57e9aa6777a1aced30c7e24084ef0c2f14c9d846a19091923d13faaff7ed9075860fc23f8ba1cd3
+DIST anki-2.1.15.tgz 4269571 BLAKE2B 00b351f5ffacb363642e02bf806bcd7c0d9446c9815a75328e7fa37c848b271b135510de17cc012e8cc96d8a52a183a49de84b6f85f562a370255bd36c6f866e SHA512 f3acfa6ff62d43fa461efddd81a8570304ada53b97bd494fdbbe0a0439700d7a52aa62ead31cbaed731be0df96a6cc845a7cf92dcf65f3080dc63282fe5941c3

diff --git a/app-misc/anki/anki-2.1.15.ebuild b/app-misc/anki/anki-2.1.15.ebuild
new file mode 100644
index 00000000000..2f651f60f1d
--- /dev/null
+++ b/app-misc/anki/anki-2.1.15.ebuild
@@ -0,0 +1,93 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7,8} )
+PYTHON_REQ_USE="sqlite"
+
+inherit desktop eutils python-single-r1 xdg
+
+DESCRIPTION="A spaced-repetition memory training program (flash cards)"
+HOMEPAGE="https://apps.ankiweb.net"
+SRC_URI="https://apps.ankiweb.net/downloads/archive/${P}-source.tgz -> ${P}.tgz"
+
+LICENSE="AGPL-3+ BSD MIT GPL-3+ CC-BY-SA-3.0 Apache-2.0 CC-BY-2.5"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="test"
+RESTRICT="!test? ( test )"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+RDEPEND="${PYTHON_DEPS}
+	$(python_gen_cond_dep '
+		>=dev-python/PyQt5-5.12[gui,svg,widgets,${PYTHON_MULTI_USEDEP}]
+		>=dev-python/PyQtWebEngine-5.12[${PYTHON_MULTI_USEDEP}]
+		>=dev-python/httplib2-0.7.4[${PYTHON_MULTI_USEDEP}]
+		dev-python/beautifulsoup:4[${PYTHON_MULTI_USEDEP}]
+		dev-python/decorator[${PYTHON_MULTI_USEDEP}]
+		dev-python/jsonschema[${PYTHON_MULTI_USEDEP}]
+		dev-python/markdown[${PYTHON_MULTI_USEDEP}]
+		dev-python/requests[${PYTHON_MULTI_USEDEP}]
+		dev-python/send2trash[${PYTHON_MULTI_USEDEP}]
+	')
+"
+BDEPEND="test? (
+	${RDEPEND}
+	$(python_gen_cond_dep '
+		dev-python/nose[${PYTHON_MULTI_USEDEP}]
+		dev-python/mock[${PYTHON_MULTI_USEDEP}]
+		')
+	)
+"
+
+PATCHES=(
+	"${FILESDIR}"/${PN}-2.1.0_beta25-web-folder.patch
+	"${FILESDIR}"/${PN}-2.1.15-mpv-args.patch
+)
+
+src_prepare() {
+	default
+	sed -i -e "s/updates=True/updates=False/" \
+		aqt/profiles.py || die
+}
+
+src_compile() {
+	:;
+}
+
+src_test() {
+	sed -e "s:nose=nosetests$:nose=\"${EPYTHON} ${EROOT}/usr/bin/nosetests\":" \
+		-i tools/tests.sh || die
+	sed -e "s:nose=nosetests3$:nose=\"${EPYTHON} ${EROOT}/usr/bin/nosetests3\":" \
+		-i tools/tests.sh || die
+	sed -e "s:which nosetests3:which ${EROOT}/usr/bin/nosetests3:" \
+		-i tools/tests.sh || die
+	./tools/tests.sh || die
+}
+
+src_install() {
+	doicon ${PN}.png
+	domenu ${PN}.desktop
+	doman ${PN}.1
+
+	dodoc README.md README.development
+	python_domodule aqt anki
+	python_newscript runanki anki
+
+	# Localization files go into the anki directory:
+	python_moduleinto anki
+	python_domodule locale
+
+	# not sure if this is correct, but
+	# site-packages/aqt/mediasrv.py wants the directory
+	insinto /usr/share/anki
+	doins -r web
+}
+
+pkg_postinst() {
+	xdg_pkg_postinst
+	optfeature "LaTeX in cards" "app-text/texlive app-text/dvipng"
+	optfeature "Record sound" "dev-python/pyaudio media-sound/lame"
+	optfeature "Playback sound" media-video/mpv media-video/mplayer
+}

diff --git a/app-misc/anki/files/anki-2.1.15-mpv-args.patch b/app-misc/anki/files/anki-2.1.15-mpv-args.patch
new file mode 100644
index 00000000000..1e8cde1083f
--- /dev/null
+++ b/app-misc/anki/files/anki-2.1.15-mpv-args.patch
@@ -0,0 +1,26 @@
+--- a/anki/mpv.py
++++ b/anki/mpv.py
+@@ -104,9 +104,9 @@ class MPVBase:
+         """
+         self.argv = [self.executable]
+         self.argv += self.default_argv
+-        self.argv += ["--input-ipc-server", self._sock_filename]
++        self.argv += ["--input-ipc-server="+self._sock_filename]
+         if self.window_id is not None:
+-            self.argv += ["--wid", str(self.window_id)]
++            self.argv += ["--wid="+str(self.window_id)]
+ 
+     def _start_process(self):
+         """Start the mpv process.
+diff --git a/anki/sound.py b/anki/sound.py
+index aa3431b1..a5fce446 100644
+--- a/anki/sound.py
++++ b/anki/sound.py
+@@ -124,7 +124,6 @@ class MpvManager(MPV):
+ def setMpvConfigBase(base):
+     mpvConfPath = os.path.join(base, "mpv.conf")
+     MpvManager.default_argv += [
+-        "--no-config",
+         "--include="+mpvConfPath,
+     ]
+ 


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-misc/anki/, app-misc/anki/files/
@ 2024-02-28  4:03 Michał Górny
  0 siblings, 0 replies; 5+ messages in thread
From: Michał Górny @ 2024-02-28  4:03 UTC (permalink / raw
  To: gentoo-commits

commit:     d0ee350a1b37c26651f2a8642b4b95b417e9b963
Author:     Lucio Sauer <watermanpaint <AT> posteo <DOT> net>
AuthorDate: Tue Feb 27 15:54:21 2024 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Wed Feb 28 04:03:00 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d0ee350a

app-misc/anki: drop 2.1.15-r1, 2.1.15-r2

Closes: https://bugs.gentoo.org/878689
Closes: https://bugs.gentoo.org/762922
Signed-off-by: Lucio Sauer <watermanpaint <AT> posteo.net>
Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 app-misc/anki/Manifest                             |  1 -
 app-misc/anki/anki-2.1.15-r1.ebuild                | 94 ---------------------
 app-misc/anki/anki-2.1.15-r2.ebuild                | 95 ----------------------
 .../anki/files/anki-2.1.0_beta25-web-folder.patch  | 11 ---
 app-misc/anki/files/anki-2.1.15-fix-prefs.patch    | 17 ----
 app-misc/anki/files/anki-2.1.15-mpv-args.patch     | 26 ------
 app-misc/anki/files/anki-2.1.15-unescape.patch     | 13 ---
 7 files changed, 257 deletions(-)

diff --git a/app-misc/anki/Manifest b/app-misc/anki/Manifest
index 151eabce9198..cfc5a9797c3e 100644
--- a/app-misc/anki/Manifest
+++ b/app-misc/anki/Manifest
@@ -8,7 +8,6 @@ DIST ammonia-3.3.0.crate 46061 BLAKE2B 082ee30f39ad788c9ae87888f003c2f6d08fbea7a
 DIST android-tzdata-0.1.1.crate 7674 BLAKE2B 4385a4875aadaacd5284a9ca7d1bf8a7bf14bf8925d1563d52fbabacc3af2c1ea08bfcf77106f3648f4fa052ac295158a21e7a0131d31eb9aecd99ea4ba20055 SHA512 4294024c21ddd0090c42c8eedf708d40d917f55ad5a4cb7aa3e64cfb6551b6df60f2e36bc08620c1d2fc8c7ba7207411518ee5c8635f60ed8ad9efdd458a2077
 DIST android_system_properties-0.1.5.crate 5243 BLAKE2B 86f68ec3bdabf8c6ec47881d794970f08a9eefc7417fc8a2bf4fe9faf9bdd2a2024a94adb0cbf96673409f5fbbd4d0111a1ac371339e7a90a277b6cd5003524e SHA512 b09f51339f9772c0e2e4241b36cf51573c6b96b19ffc1fbbc94b1c1d1d2fdfe8eac3134af54174a675ab05d18ef4f6bcb2c7fcc20114bbeef6e17e3692202191
 DIST anes-0.1.6.crate 23857 BLAKE2B 9ef464a964709b408c7d7846b9b1e54e52d6ae8f21f22ccfe509ef7197d4694f439084dbdb01fdf88829d181965ea9d1452253789a46fdf6d0520e3413c50d61 SHA512 f9dfaaca9ca327881ec30efaf24e208daae668b1e9d6963c8b0ca9f9fd13be777c793076a87980429f0dfa4db28ef5331ce6652a76da4d5a87485b23fc2fde29
-DIST anki-2.1.15.tgz 4269571 BLAKE2B 00b351f5ffacb363642e02bf806bcd7c0d9446c9815a75328e7fa37c848b271b135510de17cc012e8cc96d8a52a183a49de84b6f85f562a370255bd36c6f866e SHA512 f3acfa6ff62d43fa461efddd81a8570304ada53b97bd494fdbbe0a0439700d7a52aa62ead31cbaed731be0df96a6cc845a7cf92dcf65f3080dc63282fe5941c3
 DIST anki-23.12.1.gh.tar.gz 2369459 BLAKE2B 0248cc5d994af10c56f9cf7bb719cb427aeee7dd0c4f9ee8dab73f216f923368e276b79577ddb2303cb0cde1500190a2e5ecdcde82f4d340dff4b10b59d0cfc3 SHA512 076d3eba5db7dd4b8e00de9b69140a54f73c2e6ce52f46ddce9a6455a8ce7ae5d49bfb2fc60571d851d6b4948a08a0b3deb508aa37c7e79624b6273837a975a5
 DIST anki-core-i18n-fb301cc62da3b7a83b4ea266d9a2e70cfc1a8418.gh.tar.gz 1245454 BLAKE2B a8ad2a286a6006b9427114e648c236e868a149c8fa8f1506cc406676dac9f352ae74addee1e6965b92767ac9eb49c6cc26312cc517823433cd5e013ce6d8c6b9 SHA512 12e9187bda8f728d06a904fe21f3820aa2acad0e1924933d9db24f3879936b0a7b489934186fcab85440a40b974917ada729b5a7ec276ca2acea70b5c88caa5a
 DIST anki-desktop-ftl-8c2191a7c797747cec767e3953bbbcc50acc5246.gh.tar.gz 215288 BLAKE2B 6b71e3f81f5be651ece9094743132e18c88f69487cc125d436d30bc7dae99cdcc793f34094b4c034f4b26073148e0fd9e2cb16db592c9ea9f2cc3ca4dcd1e6d6 SHA512 91c3609fa8ca67de2d520798acbb7200d310c4d587270143528a5c18ed341c7dd3b9ddc8d79fe1f44224e83dc06f12cdbcdcf2114969513cbd60e82950343373

diff --git a/app-misc/anki/anki-2.1.15-r1.ebuild b/app-misc/anki/anki-2.1.15-r1.ebuild
deleted file mode 100644
index 06b2d34159d7..000000000000
--- a/app-misc/anki/anki-2.1.15-r1.ebuild
+++ /dev/null
@@ -1,94 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{9..10} )
-PYTHON_REQ_USE="sqlite"
-
-inherit desktop optfeature python-single-r1 xdg
-
-DESCRIPTION="A spaced-repetition memory training program (flash cards)"
-HOMEPAGE="https://apps.ankiweb.net"
-SRC_URI="https://apps.ankiweb.net/downloads/archive/${P}-source.tgz -> ${P}.tgz"
-
-LICENSE="AGPL-3+ BSD MIT GPL-3+ CC-BY-SA-3.0 Apache-2.0 CC-BY-2.5"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="test"
-RESTRICT="!test? ( test )"
-REQUIRED_USE="${PYTHON_REQUIRED_USE}"
-
-RDEPEND="${PYTHON_DEPS}
-	$(python_gen_cond_dep '
-		>=dev-python/PyQt5-5.12[gui,svg,widgets,${PYTHON_USEDEP}]
-		>=dev-python/PyQtWebEngine-5.12[${PYTHON_USEDEP}]
-		>=dev-python/httplib2-0.7.4[${PYTHON_USEDEP}]
-		dev-python/beautifulsoup4[${PYTHON_USEDEP}]
-		dev-python/decorator[${PYTHON_USEDEP}]
-		dev-python/jsonschema[${PYTHON_USEDEP}]
-		dev-python/markdown[${PYTHON_USEDEP}]
-		dev-python/requests[${PYTHON_USEDEP}]
-		dev-python/send2trash[${PYTHON_USEDEP}]
-	')
-"
-BDEPEND="test? (
-	${RDEPEND}
-	$(python_gen_cond_dep '
-		dev-python/nose[${PYTHON_USEDEP}]
-		dev-python/mock[${PYTHON_USEDEP}]
-		')
-	)
-"
-
-PATCHES=(
-	"${FILESDIR}"/${PN}-2.1.0_beta25-web-folder.patch
-	"${FILESDIR}"/${PN}-2.1.15-mpv-args.patch
-	"${FILESDIR}"/${PN}-2.1.15-unescape.patch
-)
-
-src_prepare() {
-	default
-	sed -i -e "s/updates=True/updates=False/" \
-		aqt/profiles.py || die
-}
-
-src_compile() {
-	:;
-}
-
-src_test() {
-	sed -e "s:nose=nosetests$:nose=\"${EPYTHON} ${BROOT}/usr/bin/nosetests\":" \
-		-i tools/tests.sh || die
-	sed -e "s:nose=nosetests3$:nose=\"${EPYTHON} ${BROOT}/usr/bin/nosetests3\":" \
-		-i tools/tests.sh || die
-	sed -e "s:which nosetests3:which ${BROOT}/usr/bin/nosetests3:" \
-		-i tools/tests.sh || die
-	./tools/tests.sh || die
-}
-
-src_install() {
-	doicon ${PN}.png
-	domenu ${PN}.desktop
-	doman ${PN}.1
-
-	dodoc README.md README.development
-	python_domodule aqt anki
-	python_newscript runanki anki
-
-	# Localization files go into the anki directory:
-	python_moduleinto anki
-	python_domodule locale
-
-	# not sure if this is correct, but
-	# site-packages/aqt/mediasrv.py wants the directory
-	insinto /usr/share/anki
-	doins -r web
-}
-
-pkg_postinst() {
-	xdg_pkg_postinst
-	optfeature "LaTeX in cards" "app-text/texlive app-text/dvipng"
-	optfeature "Record sound" "dev-python/pyaudio media-sound/lame"
-	optfeature "Playback sound" media-video/mpv media-video/mplayer
-}

diff --git a/app-misc/anki/anki-2.1.15-r2.ebuild b/app-misc/anki/anki-2.1.15-r2.ebuild
deleted file mode 100644
index ddd50dba0c10..000000000000
--- a/app-misc/anki/anki-2.1.15-r2.ebuild
+++ /dev/null
@@ -1,95 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{10..11} )
-PYTHON_REQ_USE="sqlite"
-
-inherit desktop optfeature python-single-r1 xdg
-
-DESCRIPTION="A spaced-repetition memory training program (flash cards)"
-HOMEPAGE="https://apps.ankiweb.net"
-SRC_URI="https://apps.ankiweb.net/downloads/archive/${P}-source.tgz -> ${P}.tgz"
-
-LICENSE="AGPL-3+ BSD MIT GPL-3+ CC-BY-SA-3.0 Apache-2.0 CC-BY-2.5"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="test"
-RESTRICT="!test? ( test )"
-REQUIRED_USE="${PYTHON_REQUIRED_USE}"
-
-RDEPEND="${PYTHON_DEPS}
-	$(python_gen_cond_dep '
-		>=dev-python/PyQt5-5.12[gui,svg,widgets,${PYTHON_USEDEP}]
-		>=dev-python/PyQtWebEngine-5.12[${PYTHON_USEDEP}]
-		>=dev-python/httplib2-0.7.4[${PYTHON_USEDEP}]
-		dev-python/beautifulsoup4[${PYTHON_USEDEP}]
-		dev-python/decorator[${PYTHON_USEDEP}]
-		dev-python/jsonschema[${PYTHON_USEDEP}]
-		dev-python/markdown[${PYTHON_USEDEP}]
-		dev-python/requests[${PYTHON_USEDEP}]
-		dev-python/send2trash[${PYTHON_USEDEP}]
-	')
-"
-BDEPEND="test? (
-	${RDEPEND}
-	$(python_gen_cond_dep '
-		dev-python/nose[${PYTHON_USEDEP}]
-		dev-python/mock[${PYTHON_USEDEP}]
-		')
-	)
-"
-
-PATCHES=(
-	"${FILESDIR}"/${PN}-2.1.0_beta25-web-folder.patch
-	"${FILESDIR}"/${PN}-2.1.15-mpv-args.patch
-	"${FILESDIR}"/${PN}-2.1.15-unescape.patch
-	"${FILESDIR}"/${PN}-2.1.15-fix-prefs.patch
-)
-
-src_prepare() {
-	default
-	sed -i -e "s/updates=True/updates=False/" \
-		aqt/profiles.py || die
-}
-
-src_compile() {
-	:;
-}
-
-src_test() {
-	sed -e "s:nose=nosetests$:nose=\"${EPYTHON} ${BROOT}/usr/bin/nosetests\":" \
-		-i tools/tests.sh || die
-	sed -e "s:nose=nosetests3$:nose=\"${EPYTHON} ${BROOT}/usr/bin/nosetests3\":" \
-		-i tools/tests.sh || die
-	sed -e "s:which nosetests3:which ${BROOT}/usr/bin/nosetests3:" \
-		-i tools/tests.sh || die
-	./tools/tests.sh || die
-}
-
-src_install() {
-	doicon ${PN}.png
-	domenu ${PN}.desktop
-	doman ${PN}.1
-
-	dodoc README.md README.development
-	python_domodule aqt anki
-	python_newscript runanki anki
-
-	# Localization files go into the anki directory:
-	python_moduleinto anki
-	python_domodule locale
-
-	# not sure if this is correct, but
-	# site-packages/aqt/mediasrv.py wants the directory
-	insinto /usr/share/anki
-	doins -r web
-}
-
-pkg_postinst() {
-	xdg_pkg_postinst
-	optfeature "LaTeX in cards" "app-text/texlive app-text/dvipng"
-	optfeature "Record sound" "dev-python/pyaudio media-sound/lame"
-	optfeature "Playback sound" media-video/mpv media-video/mplayer
-}

diff --git a/app-misc/anki/files/anki-2.1.0_beta25-web-folder.patch b/app-misc/anki/files/anki-2.1.0_beta25-web-folder.patch
deleted file mode 100644
index 19b196c4ace7..000000000000
--- a/app-misc/anki/files/anki-2.1.0_beta25-web-folder.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- anki-2.1.0beta25/aqt/mediasrv.py
-+++ anki-2.1.0beta25/aqt/mediasrv.py
-@@ -13,7 +13,7 @@
- # locate web folder in source/binary distribution
- def _getExportFolder():
-     # running from source?
--    srcFolder = os.path.join(os.path.dirname(__file__), "..")
-+    srcFolder = os.path.join(os.path.dirname(__file__), "..", "..", "..", "..", "share", "anki")
-     webInSrcFolder = os.path.abspath(os.path.join(srcFolder, "web"))
-     if os.path.exists(webInSrcFolder):
-         return webInSrcFolder

diff --git a/app-misc/anki/files/anki-2.1.15-fix-prefs.patch b/app-misc/anki/files/anki-2.1.15-fix-prefs.patch
deleted file mode 100644
index 4f0bb2457dac..000000000000
--- a/app-misc/anki/files/anki-2.1.15-fix-prefs.patch
+++ /dev/null
@@ -1,17 +0,0 @@
-https://bugs.gentoo.org/869917#c3
-https://github.com/ankitects/anki/commit/d2ae874d9e1615d09afc912275cc3b27776a1392
-
---- a/aqt/preferences.py
-+++ b/aqt/preferences.py
-@@ -77,8 +77,8 @@ class Preferences(QDialog):
-             f.hwAccel.setVisible(False)
-         else:
-             f.hwAccel.setChecked(self.mw.pm.glMode() != "software")
--        f.lrnCutoff.setValue(qc['collapseTime']/60.0)
--        f.timeLimit.setValue(qc['timeLim']/60.0)
-+        f.lrnCutoff.setValue(int(qc['collapseTime']/60.0))
-+        f.timeLimit.setValue(int(qc['timeLim']/60.0))
-         f.showEstimates.setChecked(qc['estTimes'])
-         f.showProgress.setChecked(qc['dueCounts'])
-         f.nightMode.setChecked(qc.get("nightMode", False))
-

diff --git a/app-misc/anki/files/anki-2.1.15-mpv-args.patch b/app-misc/anki/files/anki-2.1.15-mpv-args.patch
deleted file mode 100644
index 1e8cde1083f2..000000000000
--- a/app-misc/anki/files/anki-2.1.15-mpv-args.patch
+++ /dev/null
@@ -1,26 +0,0 @@
---- a/anki/mpv.py
-+++ b/anki/mpv.py
-@@ -104,9 +104,9 @@ class MPVBase:
-         """
-         self.argv = [self.executable]
-         self.argv += self.default_argv
--        self.argv += ["--input-ipc-server", self._sock_filename]
-+        self.argv += ["--input-ipc-server="+self._sock_filename]
-         if self.window_id is not None:
--            self.argv += ["--wid", str(self.window_id)]
-+            self.argv += ["--wid="+str(self.window_id)]
- 
-     def _start_process(self):
-         """Start the mpv process.
-diff --git a/anki/sound.py b/anki/sound.py
-index aa3431b1..a5fce446 100644
---- a/anki/sound.py
-+++ b/anki/sound.py
-@@ -124,7 +124,6 @@ class MpvManager(MPV):
- def setMpvConfigBase(base):
-     mpvConfPath = os.path.join(base, "mpv.conf")
-     MpvManager.default_argv += [
--        "--no-config",
-         "--include="+mpvConfPath,
-     ]
- 

diff --git a/app-misc/anki/files/anki-2.1.15-unescape.patch b/app-misc/anki/files/anki-2.1.15-unescape.patch
deleted file mode 100644
index 7b03c8d8e1a3..000000000000
--- a/app-misc/anki/files/anki-2.1.15-unescape.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/aqt/reviewer.py b/aqt/reviewer.py
-index f01fcbd9f..5aaf26669 100644
---- a/aqt/reviewer.py
-+++ b/aqt/reviewer.py
-@@ -359,7 +359,7 @@ Please run Tools>Empty Cards""")
-         cor = stripHTML(cor)
-         # ensure we don't chomp multiple whitespace
-         cor = cor.replace(" ", "&nbsp;")
--        cor = parser.unescape(cor)
-+        cor = html.unescape(cor)
-         cor = cor.replace("\xa0", " ")
-         cor = cor.strip()
-         given = self.typedAnswer


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-misc/anki/, app-misc/anki/files/
@ 2025-07-08 20:28 Sam James
  0 siblings, 0 replies; 5+ messages in thread
From: Sam James @ 2025-07-08 20:28 UTC (permalink / raw
  To: gentoo-commits

commit:     794a949f0391b5c4fbfed8a4d603e47a6b3d1b3f
Author:     Lucio Sauer <watermanpaint <AT> posteo <DOT> net>
AuthorDate: Sun Jul  6 07:47:06 2025 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Tue Jul  8 19:47:35 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=794a949f

app-misc/anki: add 25.07.1

* Upstream now generates the wheels using the hatchling backend and uv
  as frontend. Since the disutils-r1 eclass calls the backend directly
  using dev-python/gpep517, we can remove all references to the frontend
  and omit the dependency.

* Follow up on 0d7c8f89 and drop the x86 keyword.
* Disable pytest plugin autoload.
* Extract Python-specific code into the appropriate sub-phases.
* Invoke cargo-nextest with common options found across ::gentoo.
* Use edo where it's sensible.

Signed-off-by: Lucio Sauer <watermanpaint <AT> posteo.net>
Part-of: https://github.com/gentoo/gentoo/pull/42917
Signed-off-by: Sam James <sam <AT> gentoo.org>

 app-misc/anki/Manifest                             |   5 +
 app-misc/anki/anki-25.07.1.ebuild                  | 314 +++++++++++++++++++++
 .../anki/files/anki-25.07.1-remove-aqt-data.patch  |  19 ++
 3 files changed, 338 insertions(+)

diff --git a/app-misc/anki/Manifest b/app-misc/anki/Manifest
index df330c0abc8c..ca9594f89e58 100644
--- a/app-misc/anki/Manifest
+++ b/app-misc/anki/Manifest
@@ -1,7 +1,12 @@
 DIST anki-25.02.4-node_modules.tar.xz 304237316 BLAKE2B 270db46a9d7d64f87a57052f82071108e78371805e68c7d426dad268edd4f548b2ace4e7f2712597f4894e7c4d20fa7a9e72e3cd2278f023317f40361bcf3a37 SHA512 820495a61a3bf5bdaeaf40c4ae6d1b1cf3a9b2924494c40c66065b4b4214e52cfaf6477af2b7e801500e180f8c6956881c5206b049996ab0ae58f45966a368f4
 DIST anki-25.02.5-crates.tar.xz 57606472 BLAKE2B 40f976c4e20c6ecd0877db05a733bd66b608e1e054177479ec3068a5d9d8b8dcd32495a4c81caee4e37e12090bb8b000f41f7c3162e3d7b80dbe522bca797f47 SHA512 f382f304ead6edee5c64472945ac56fb418adf046129c45771862ff5732a1a944f84e6d80ef590f11bde2ca2058c989ed70847ebb791f101af9a3ad34285d396
 DIST anki-25.02.6.gh.tar.gz 2433980 BLAKE2B 6a572f21f72f79da3e8faf384b04978bb26e2f4b0414f67658d41d434b3244641cdcab51af9027fc86280f1bdafb3790eb1a7a3de3700f231b145d959c2f81fe SHA512 acb9f29842f8025752fa4dd3e5de58b6f066c85f6862d97dd44e20fe622dd49347057f8c97174c7477f5bb291210af477bd58b6e9e3f18ebde46f54c1e04380c
+DIST anki-25.07.1-crates.tar.xz 62239872 BLAKE2B 1179594a32fd93d47f5b385db08dc023685bb9a03b01078f32e5ccff72488e0f25a2b445601362221523afd2a8816409cd965e52d7a599801349de3baef626fe SHA512 f82c51a5b63518a94807e8daa1a97e50f372632c8409a285e51daa7d7988d3a358ada16e364d9bb0ad2eff042c280877743a8ce35d32ad10b10dbf4f6cd22ce2
+DIST anki-25.07.1-node_modules.tar.xz 191719888 BLAKE2B 87748620fc8d57cf92ae5cafba6ac8ffa035a7147a2611cb432e85cf0248b76fc6020d3a13860a3ac7031e4d39b72d2aad8ab02184781326a3642c84e2f9b422 SHA512 6b2246600e5fd2bfbd3a589ce09cea4edeab13265889bde9ca62041d1f2ed6254f4bc4edad14a0be33bee6443bfd2576908d7084cf32ab5c2a5878343e32c1ab
+DIST anki-25.07.1.gh.tar.gz 2505851 BLAKE2B dace7ba31895875963f6c54f9ed0a6b97c7e4f2394b1135a4d9001a6cc0251d3b246e8de9072c556240321bd960c59cb6f38b371e582fd363c58218c50e06c15 SHA512 bc800d97df5ff48b9e7e7a714c836796597fbebbd66ac5ed8574c1927376ac696d67d72d5c245b71ce6534fadce13dc951212389aa22772637b9e986977ff357
 DIST anki-core-i18n-0fe0162f4a18e8ef2fbac1d9a33af8e38cf7260e.gh.tar.gz 1521578 BLAKE2B 101505d871df70316222db08f2bc85fdd00be81320600c64c76bb51565a88c13fa6fdd9e059ed404931f2dc97611cf2a954650d10d6556cd181427dbffc4f1a6 SHA512 c72eaea9e0f350d092a44f7623a7cfdcb74ff99a97ca4b53c51b1b26af387c9c6cd64bfca3dc4577c14c3ee4040b8ce1a7a50f2e209b0fa47c5297f97c92a910
+DIST anki-core-i18n-a9216499ba1fb1538cfd740c698adaaa3410fd4b.gh.tar.gz 1663490 BLAKE2B d09d9df034b9e4be426ac63eb8fbc78ef8027b5e2a75e172ee44416227ee83c4d9095b61cde87d5d1dbcc2d91d04d0891bca3b3850b99a2111932473a30167eb SHA512 d59493e6cb0de6519c268ec52fc1021f34548e87553325c9b6874af8cc0bc5211e1819aad1015abe5c226517fbd179304928559cd8c404d4d53923e3917b943e
 DIST anki-desktop-ftl-17216b03db7249600542e388bd4ea124478400e5.gh.tar.gz 235720 BLAKE2B 0e1a454dbfa5f0f8750000c86b1468c7cfde99e53e6e7683820f5523963c4187e76ef40c4be4c2ef7037cc269f258fe3270ba99006912fb2844ba6cc18dc91d3 SHA512 6d91607c6b0805e6dfce8a93dbf46ac945e9b1631aa054cb98e513d7a6da64d905035b8da8ea5d10c0d700a0aa96b056748d956342fe4ddf7232f7f7540ee88a
+DIST anki-desktop-ftl-a1134ab59d3d23468af2968741aa1f21d16ff308.gh.tar.gz 248333 BLAKE2B b4cc10764df8ad39df670adba6a4dee54bfd07022bfe61bf3e15bf708772323cad892a299f0641f67f49cbfe499cd01caed5479f8855bc852316549c9ecbe858 SHA512 23b745671edb3be1f5c42f6b657a6c36e3892e70276765652b3d80d5e5eab149a6420cbaac97b193f18241eb969cdd77e97df697c12590bbcc78e34c779dc027
 DIST linkcheck-184b2ca50ed39ca43da13f0b830a463861adb9ca.gh.tar.gz 19408 BLAKE2B c5e4f155f2d79d6d4340eaf3caaab8cbc0a558bc351d06b6c77ac4b61afa4172f5e3497106d5535b79911c7697a74ef8765f3fdcb7b602edb7524d6b5169a6fc SHA512 2cff7ad872c9ce3b29a8c74f9ce1ca365f6c381e1d9bc5da46bb34d0687708164ad86fb78baecdb596de37f79f891d1326b994348e51f4e74ec2731da23034d4
 DIST rust-url-bb930b8d089f4d30d7d19c12e54e66191de47b88.gh.tar.gz 394844 BLAKE2B e3c0cabca18a77cc71bb9982bbd7d49c540f5a597c993f66fb9cf52b0a4ecce2ef909cfe9b466767c0021c3adf8a0b9733d40e90d341bd2a97b5e9cbcc8e8037 SHA512 bad4ba7801168bed869ef3b9510566ed625fe345b3209f08d781ad07a03df61c28b52d1cb3992d614ffdf5af198c33bb725f612f5010b6965d8bbb519d818e2e

diff --git a/app-misc/anki/anki-25.07.1.ebuild b/app-misc/anki/anki-25.07.1.ebuild
new file mode 100644
index 000000000000..cccf0dbf6c13
--- /dev/null
+++ b/app-misc/anki/anki-25.07.1.ebuild
@@ -0,0 +1,314 @@
+# Copyright 2022-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_EXT=1
+DISTUTILS_OPTIONAL=1
+DISTUTILS_SINGLE_IMPL=1
+DISTUTILS_USE_PEP517=hatchling
+PYTHON_COMPAT=( python3_{11..13} )
+
+declare -A GIT_CRATES=(
+	[linkcheck]='https://github.com/ankitects/linkcheck;184b2ca50ed39ca43da13f0b830a463861adb9ca;linkcheck-%commit%'
+	[percent-encoding-iri]='https://github.com/ankitects/rust-url;bb930b8d089f4d30d7d19c12e54e66191de47b88;rust-url-%commit%/percent_encoding'
+)
+RUST_MIN_VER="1.85.0"
+
+inherit cargo desktop distutils-r1 edo greadme multiprocessing ninja-utils \
+	optfeature toolchain-funcs xdg
+
+DESCRIPTION="Smart spaced repetition flashcard program"
+HOMEPAGE="https://apps.ankiweb.net/"
+
+declare -A COMMITS=(
+	[anki]="a83a6b5928c6563d12e7b66d4f7b7b2f51b6f22b"
+	[ftl-core]="a9216499ba1fb1538cfd740c698adaaa3410fd4b"
+	[ftl-desktop]="a1134ab59d3d23468af2968741aa1f21d16ff308"
+)
+SRC_URI="${CARGO_CRATE_URIS}
+	https://github.com/ankitects/anki/archive/refs/tags/${PV}.tar.gz -> ${P}.gh.tar.gz
+	https://github.com/ankitects/anki-core-i18n/archive/${COMMITS[ftl-core]}.tar.gz
+	-> anki-core-i18n-${COMMITS[ftl-core]}.gh.tar.gz
+	https://github.com/ankitects/anki-desktop-ftl/archive/${COMMITS[ftl-desktop]}.tar.gz
+	-> anki-desktop-ftl-${COMMITS[ftl-desktop]}.gh.tar.gz
+	https://github.com/gentoo-crate-dist/anki/releases/download/${PV}/${P}-crates.tar.xz
+	gui? (
+		https://home.cit.tum.de/~salu/distfiles/${P}-node_modules.tar.xz
+	)
+"
+# How to get an up-to-date summary of runtime JS libs' licenses:
+# ./node_modules/.bin/license-checker-rseidelsohn --production --excludePackages anki --summary
+LICENSE="
+	AGPL-3+ BSD public-domain
+	gui? ( 0BSD BlueOak-1.0.0 CC-BY-3.0 CC-BY-4.0 PSF-2 )
+"
+# Dependent crate licenses
+LICENSE+="
+	Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD-2 CC0-1.0
+	CDLA-Permissive-2.0 ISC MIT MPL-2.0 Unicode-3.0 Unlicense ZLIB
+"
+# ring crate
+LICENSE+=" openssl"
+SLOT="0"
+KEYWORDS="~amd64"
+
+IUSE="+gui"
+REQUIRED_USE="gui? ( ${PYTHON_REQUIRED_USE} )"
+RESTRICT="!gui? ( test ) !test? ( test )"
+
+# Dependencies:
+# Python: python/requirements.{anki,aqt}.in
+# If ENABLE_QT5_COMPAT is set at runtime
+# additionally depend on PyQt6[dbus,printsupport].
+# Qt: qt/{aqt/{sound.py,qt/*.py},tools/build_ui.py}
+# app-misc/certificates: The rust backend library is built against
+# rustls-native-certs to use the native certificate store.
+# No ${PYTHON_DEPS} in DEPEND despite external module because it doesn't link
+# against libpython
+
+DEPEND="
+	>=app-arch/zstd-1.5.5:=
+	dev-db/sqlite:3
+"
+GUI_RDEPEND="
+	${PYTHON_DEPS}
+	dev-qt/qtsvg:6
+	$(python_gen_cond_dep '
+		dev-python/beautifulsoup4[${PYTHON_USEDEP}]
+		dev-python/distro[${PYTHON_USEDEP}]
+		dev-python/decorator[${PYTHON_USEDEP}]
+		dev-python/flask[${PYTHON_USEDEP}]
+		dev-python/flask-cors[${PYTHON_USEDEP}]
+		dev-python/jsonschema[${PYTHON_USEDEP}]
+		dev-python/markdown[${PYTHON_USEDEP}]
+		dev-python/protobuf[${PYTHON_USEDEP}]
+		>=dev-python/pyqt6-6.6.1[gui,network,opengl,quick,webchannel,widgets,${PYTHON_USEDEP}]
+		>=dev-python/pyqt6-sip-13.6.0[${PYTHON_USEDEP}]
+		>=dev-python/pyqt6-webengine-6.6.0[widgets,${PYTHON_USEDEP}]
+		dev-python/requests[${PYTHON_USEDEP}]
+		dev-python/send2trash[${PYTHON_USEDEP}]
+		dev-python/waitress[${PYTHON_USEDEP}]
+	')
+"
+RDEPEND="
+	${DEPEND}
+	app-misc/ca-certificates
+	gui? ( ${GUI_RDEPEND} )
+"
+
+BDEPEND="
+	>=app-arch/zstd-1.5.5:=
+	dev-libs/protobuf[protoc(+)]
+	virtual/pkgconfig
+	gui? (
+		${DISTUTILS_DEPS}
+		${PYTHON_DEPS}
+		app-alternatives/ninja
+		>=net-libs/nodejs-20.12.1
+		sys-apps/yarn
+		$(python_gen_cond_dep '
+			dev-python/pyqt6[${PYTHON_USEDEP}]
+			dev-python/wheel[${PYTHON_USEDEP}]
+		')
+	)
+	test? (
+		${RDEPEND}
+		app-text/dvipng
+		app-text/texlive
+		dev-libs/openssl
+		dev-util/cargo-nextest
+		$(python_gen_cond_dep 'dev-python/mock[${PYTHON_USEDEP}]')
+	)
+"
+
+distutils_enable_sphinx python/sphinx \
+			dev-python/sphinx-autoapi \
+			dev-python/sphinx-rtd-theme
+
+EPYTEST_PLUGINS=()
+distutils_enable_tests pytest
+
+PATCHES=(
+	"${FILESDIR}"/${P}-remove-aqt-data.patch
+	"${FILESDIR}"/24.06.3/remove-yarn.patch
+	"${FILESDIR}"/24.04.1/remove-mypy-protobuf.patch
+	"${FILESDIR}"/24.04.1/revert-cert-store-hack.patch
+	"${FILESDIR}"/23.12.1/ninja-rules-for-cargo.patch
+)
+
+QA_FLAGS_IGNORED="usr/bin/anki-sync-server
+	usr/lib/python.*/site-packages/anki/_rsbridge.so"
+
+pkg_setup() {
+	export PROTOC_BINARY="${BROOT}"/usr/bin/protoc
+	export LIBSQLITE3_SYS_USE_PKG_CONFIG=1
+	export ZSTD_SYS_USE_PKG_CONFIG=1
+	rust_pkg_setup
+	use gui && python-single-r1_pkg_setup
+}
+
+python_prepare_all() {
+	mv "${WORKDIR}"/node_modules out || die
+
+	# Expected files and directories
+	mkdir .git out/env || die
+	mkdir -p out/pyenv/bin || die
+
+	if use doc; then
+		sed "/^REPO_ROOT/s|=.*|= \"${S}\"|" -i python/sphinx/conf.py || die
+	fi
+
+	# Unpin Yarn
+	sed -e '/"type": "module"/s/,//' \
+		-e '/packageManager/d' -i package.json || die
+	# We build wheels without invoking the uv frontend
+	sed -i '/uv_binary/d' build/configure/src/python.rs || die
+
+	# Not running the black formatter on generated files saves a dependency
+	sed '/subprocess/d' -i pylib/tools/hookslib.py || die
+
+	# Fix hardcoded runner location
+	export CARGO_TARGET_DIR="${S}"/out/rust
+	cbuild_dir="$(CHOST=${CBUILD:-${CHOST}} cargo_target_dir)"
+	sed "s,rust/release,${cbuild_dir##*out/}," \
+		-i build/ninja_gen/src/render.rs || die
+	# Separate src_configure from runner build
+	sed '/ConfigureBuild/d' -i build/ninja_gen/src/build.rs || die
+	distutils-r1_python_prepare_all
+}
+
+python_prepare() {
+	ln -s "${PYTHON}" out/pyenv/bin/python || die
+}
+
+src_prepare() {
+	default
+	rm -r ftl/{core,qt}-repo || die
+	ln -s "${WORKDIR}"/anki-core-i18n-${COMMITS[ftl-core]} ftl/core-repo || die
+	ln -s "${WORKDIR}"/anki-desktop-ftl-${COMMITS[ftl-desktop]} ftl/qt-repo || die
+
+	mkdir out || die
+	echo -e "${COMMITS[anki]:0:8}" > out/buildhash || die
+
+	# None of our ninja implementations are n2
+	sed 's/which::which("n2").*/false,/' -i build/ninja_gen/src/build.rs || die
+
+	use gui && distutils-r1_src_prepare
+}
+
+_cbuild_cargo_build() {
+	CHOST=${CBUILD:-${CHOST}} cargo_src_compile "${@}"
+}
+
+python_configure_all() {
+	tc-env_build _cbuild_cargo_build -p configure
+
+	local -x NODE_BINARY="${BROOT}"/usr/bin/node \
+	YARN_BINARY="${BROOT}"/usr/bin/yarn \
+	OFFLINE_BUILD=1
+	if ! use debug; then
+		if tc-is-lto; then
+			local -x RELEASE=2
+		else
+			local -x RELEASE=1
+		fi
+	fi
+	cargo_env edo "${cbuild_dir}"/configure
+	unset cbuild_dir
+}
+
+src_configure() {
+	cargo_gen_config
+	cargo_src_configure
+	use gui && distutils-r1_src_configure
+}
+
+python_compile() {
+	tc-env_build _cbuild_cargo_build -p runner
+	cargo_env eninja -f out/build.ninja pylib qt
+	declare -A wheel_tags=(
+		[pylib]="cp39-abi3-manylinux_2_36_x86_64"
+		[qt]="py3-none-any"
+	)
+	local dir
+	for dir in ${!wheel_tags[@]}; do
+		pushd ${dir} > /dev/null || die
+		local -x ANKI_WHEEL_TAG=${wheel_tags[${dir}]}
+		distutils-r1_python_compile
+		popd || die
+	done
+}
+
+src_compile() {
+	if use gui; then
+		distutils-r1_src_compile
+	else
+		cargo_src_compile -p anki-sync-server
+	fi
+}
+
+python_test() {
+	epytest qt
+	epytest pylib
+}
+
+python_test_all() {
+	local -x NEXTEST_TEST_THREADS="$(makeopts_jobs)"
+	edo cargo nextest run $(usev !debug '--release') \
+			--color always \
+			--all-features \
+			--tests \
+			--no-fail-fast
+	eninja -f out/build.ninja check_vitest
+}
+
+src_test() {
+	local -x ANKI_TEST_MODE=1
+	distutils-r1_src_test
+}
+
+python_install_all() {
+	pushd qt/launcher/lin > /dev/null || die
+	doman anki.1
+	doicon anki.{png,xpm}
+	domenu anki.desktop
+	insinto /usr/share/mime/packages
+	doins anki.xml
+	popd || die
+	distutils-r1_python_install_all
+}
+
+src_install() {
+	greadme_stdin <<- EOF
+	Anki's user manual is located online at https://docs.ankiweb.net/
+	Anki's add-on developer manual is located online at https://addon-docs.ankiweb.net/
+	EOF
+
+	if use gui; then
+		distutils-r1_src_install
+	else
+		cargo_src_install --path rslib/sync
+	fi
+}
+
+pkg_preinst() {
+	greadme_pkg_preinst
+	use gui && xdg_pkg_preinst
+}
+
+pkg_postinst() {
+	greadme_pkg_postinst
+	if use gui; then
+		xdg_pkg_postinst
+		optfeature "LaTeX in cards" "app-text/texlive[extra] app-text/dvipng"
+		optfeature "sound support" media-video/mpv media-video/mplayer
+		optfeature "recording support" "media-sound/lame[frontend] dev-python/pyqt6[multimedia]"
+		optfeature "faster database operations" dev-python/orjson
+		optfeature "Vulkan driver" "media-libs/vulkan-loader dev-qt/qtbase:6[vulkan]
+			dev-qt/qtdeclarative:6[vulkan] dev-qt/qtwebengine:6[vulkan]"
+
+		einfo "You can customize the LaTeX header for your cards to fit your needs:"
+		einfo "Notes > Manage Note Types > [select a note type] > Options"
+	fi
+}

diff --git a/app-misc/anki/files/anki-25.07.1-remove-aqt-data.patch b/app-misc/anki/files/anki-25.07.1-remove-aqt-data.patch
new file mode 100644
index 000000000000..3bff077a2709
--- /dev/null
+++ b/app-misc/anki/files/anki-25.07.1-remove-aqt-data.patch
@@ -0,0 +1,19 @@
+Upstream intends to include qt/aqt/data in the wheel under _aqt/ but
+ends up including it under aqt/ as well. This is a minimal version of
+the patch I sent upstream:
+https://github.com/ankitects/anki/pull/4180
+From: Lucio Sauer <watermanpaint@posteo.net>
+--- a/qt/pyproject.toml
++++ b/qt/pyproject.toml
+@@ -77,7 +77,7 @@ ankiw = "aqt:run"
+ 
+ [tool.hatch.build.targets.wheel]
+ packages = ["aqt"]
+-exclude = ["**/*.scss", "**/*.ui"]
++exclude = ["aqt/data", "**/*.ui"]
+ 
+ [tool.hatch.version]
+ source = "code"
+-- 
+2.49.0
+


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-misc/anki/, app-misc/anki/files/
@ 2025-07-23  2:32 Sam James
  0 siblings, 0 replies; 5+ messages in thread
From: Sam James @ 2025-07-23  2:32 UTC (permalink / raw
  To: gentoo-commits

commit:     294b4d715e6090bc75c78fdfc4fc5d89eb5c9f81
Author:     Lucio Sauer <watermanpaint <AT> posteo <DOT> net>
AuthorDate: Mon Jul 21 09:29:20 2025 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Jul 23 02:30:02 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=294b4d71

app-misc/anki: drop 25.07.1

Signed-off-by: Lucio Sauer <watermanpaint <AT> posteo.net>
Part-of: https://github.com/gentoo/gentoo/pull/43089
Closes: https://github.com/gentoo/gentoo/pull/43089
Signed-off-by: Sam James <sam <AT> gentoo.org>

 app-misc/anki/Manifest                             |   3 -
 app-misc/anki/anki-25.07.1.ebuild                  | 314 ---------------------
 .../anki/files/anki-25.07.1-remove-aqt-data.patch  |  19 --
 3 files changed, 336 deletions(-)

diff --git a/app-misc/anki/Manifest b/app-misc/anki/Manifest
index b69aea8df69c..63c0427dc88a 100644
--- a/app-misc/anki/Manifest
+++ b/app-misc/anki/Manifest
@@ -1,10 +1,7 @@
 DIST anki-25.07.1-crates.tar.xz 62239872 BLAKE2B 1179594a32fd93d47f5b385db08dc023685bb9a03b01078f32e5ccff72488e0f25a2b445601362221523afd2a8816409cd965e52d7a599801349de3baef626fe SHA512 f82c51a5b63518a94807e8daa1a97e50f372632c8409a285e51daa7d7988d3a358ada16e364d9bb0ad2eff042c280877743a8ce35d32ad10b10dbf4f6cd22ce2
 DIST anki-25.07.1-node_modules.tar.xz 191719888 BLAKE2B 87748620fc8d57cf92ae5cafba6ac8ffa035a7147a2611cb432e85cf0248b76fc6020d3a13860a3ac7031e4d39b72d2aad8ab02184781326a3642c84e2f9b422 SHA512 6b2246600e5fd2bfbd3a589ce09cea4edeab13265889bde9ca62041d1f2ed6254f4bc4edad14a0be33bee6443bfd2576908d7084cf32ab5c2a5878343e32c1ab
-DIST anki-25.07.1.gh.tar.gz 2505851 BLAKE2B dace7ba31895875963f6c54f9ed0a6b97c7e4f2394b1135a4d9001a6cc0251d3b246e8de9072c556240321bd960c59cb6f38b371e582fd363c58218c50e06c15 SHA512 bc800d97df5ff48b9e7e7a714c836796597fbebbd66ac5ed8574c1927376ac696d67d72d5c245b71ce6534fadce13dc951212389aa22772637b9e986977ff357
 DIST anki-25.07.3.gh.tar.gz 2511739 BLAKE2B a879fd84ff125e0ce5b0dbf11161d4889d4623f5d8e428ad81a26d982cabd58f98d349d2711cc37214311395b30afa6d041eb7e5ed80a983862360fca1fbd0c4 SHA512 a9f6243f0a92e30363e697a8f1f366c5411342a4a13b26b0b6f722d8f2c4dbe4364cd090fc0f1bef593deea9f12c0b7d98a401d97eaa35c4bc64623d37cc5ea2
-DIST anki-core-i18n-a9216499ba1fb1538cfd740c698adaaa3410fd4b.gh.tar.gz 1663490 BLAKE2B d09d9df034b9e4be426ac63eb8fbc78ef8027b5e2a75e172ee44416227ee83c4d9095b61cde87d5d1dbcc2d91d04d0891bca3b3850b99a2111932473a30167eb SHA512 d59493e6cb0de6519c268ec52fc1021f34548e87553325c9b6874af8cc0bc5211e1819aad1015abe5c226517fbd179304928559cd8c404d4d53923e3917b943e
 DIST anki-core-i18n-b90ef6f03c251eb336029ac7c5f551200d41273f.gh.tar.gz 1690917 BLAKE2B ffd1708f2c40346e2f8b9e800ce1b494cae289d970127e271862c79fcc7fbac1dcb046ff035a96ad3496e27f86638300c5aa47620cc0a34f1d5dc3194d23de0c SHA512 6f9308b0001e4ae4cd9d4f368a5cc0e92df8b7705a2f7d94b2f92d404afd7484b3860e090335e2c7f91298d0690db40ee11929fa2060e0df2861313c6e52b80f
 DIST anki-desktop-ftl-9aa63c335c61b30421d39cf43fd8e3975179059c.gh.tar.gz 250925 BLAKE2B ff14253eeae0355e16388af2d44b3ac086c447909b211a2741c54320044c84f53b8bb76a2aee3197db0bd010436b6d411a8f0ac79f2ba9353fe691bfa33ecc99 SHA512 647204336110b977987fb8f88d52613d544012150b4ff70ff6e704730c60576a5928ba02bfb2049ab38fc0b27cb238f98bdfbe7a8ec6b7a1f911d9ad1fb5d22b
-DIST anki-desktop-ftl-a1134ab59d3d23468af2968741aa1f21d16ff308.gh.tar.gz 248333 BLAKE2B b4cc10764df8ad39df670adba6a4dee54bfd07022bfe61bf3e15bf708772323cad892a299f0641f67f49cbfe499cd01caed5479f8855bc852316549c9ecbe858 SHA512 23b745671edb3be1f5c42f6b657a6c36e3892e70276765652b3d80d5e5eab149a6420cbaac97b193f18241eb969cdd77e97df697c12590bbcc78e34c779dc027
 DIST linkcheck-184b2ca50ed39ca43da13f0b830a463861adb9ca.gh.tar.gz 19408 BLAKE2B c5e4f155f2d79d6d4340eaf3caaab8cbc0a558bc351d06b6c77ac4b61afa4172f5e3497106d5535b79911c7697a74ef8765f3fdcb7b602edb7524d6b5169a6fc SHA512 2cff7ad872c9ce3b29a8c74f9ce1ca365f6c381e1d9bc5da46bb34d0687708164ad86fb78baecdb596de37f79f891d1326b994348e51f4e74ec2731da23034d4
 DIST rust-url-bb930b8d089f4d30d7d19c12e54e66191de47b88.gh.tar.gz 394844 BLAKE2B e3c0cabca18a77cc71bb9982bbd7d49c540f5a597c993f66fb9cf52b0a4ecce2ef909cfe9b466767c0021c3adf8a0b9733d40e90d341bd2a97b5e9cbcc8e8037 SHA512 bad4ba7801168bed869ef3b9510566ed625fe345b3209f08d781ad07a03df61c28b52d1cb3992d614ffdf5af198c33bb725f612f5010b6965d8bbb519d818e2e

diff --git a/app-misc/anki/anki-25.07.1.ebuild b/app-misc/anki/anki-25.07.1.ebuild
deleted file mode 100644
index cccf0dbf6c13..000000000000
--- a/app-misc/anki/anki-25.07.1.ebuild
+++ /dev/null
@@ -1,314 +0,0 @@
-# Copyright 2022-2025 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_EXT=1
-DISTUTILS_OPTIONAL=1
-DISTUTILS_SINGLE_IMPL=1
-DISTUTILS_USE_PEP517=hatchling
-PYTHON_COMPAT=( python3_{11..13} )
-
-declare -A GIT_CRATES=(
-	[linkcheck]='https://github.com/ankitects/linkcheck;184b2ca50ed39ca43da13f0b830a463861adb9ca;linkcheck-%commit%'
-	[percent-encoding-iri]='https://github.com/ankitects/rust-url;bb930b8d089f4d30d7d19c12e54e66191de47b88;rust-url-%commit%/percent_encoding'
-)
-RUST_MIN_VER="1.85.0"
-
-inherit cargo desktop distutils-r1 edo greadme multiprocessing ninja-utils \
-	optfeature toolchain-funcs xdg
-
-DESCRIPTION="Smart spaced repetition flashcard program"
-HOMEPAGE="https://apps.ankiweb.net/"
-
-declare -A COMMITS=(
-	[anki]="a83a6b5928c6563d12e7b66d4f7b7b2f51b6f22b"
-	[ftl-core]="a9216499ba1fb1538cfd740c698adaaa3410fd4b"
-	[ftl-desktop]="a1134ab59d3d23468af2968741aa1f21d16ff308"
-)
-SRC_URI="${CARGO_CRATE_URIS}
-	https://github.com/ankitects/anki/archive/refs/tags/${PV}.tar.gz -> ${P}.gh.tar.gz
-	https://github.com/ankitects/anki-core-i18n/archive/${COMMITS[ftl-core]}.tar.gz
-	-> anki-core-i18n-${COMMITS[ftl-core]}.gh.tar.gz
-	https://github.com/ankitects/anki-desktop-ftl/archive/${COMMITS[ftl-desktop]}.tar.gz
-	-> anki-desktop-ftl-${COMMITS[ftl-desktop]}.gh.tar.gz
-	https://github.com/gentoo-crate-dist/anki/releases/download/${PV}/${P}-crates.tar.xz
-	gui? (
-		https://home.cit.tum.de/~salu/distfiles/${P}-node_modules.tar.xz
-	)
-"
-# How to get an up-to-date summary of runtime JS libs' licenses:
-# ./node_modules/.bin/license-checker-rseidelsohn --production --excludePackages anki --summary
-LICENSE="
-	AGPL-3+ BSD public-domain
-	gui? ( 0BSD BlueOak-1.0.0 CC-BY-3.0 CC-BY-4.0 PSF-2 )
-"
-# Dependent crate licenses
-LICENSE+="
-	Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD-2 CC0-1.0
-	CDLA-Permissive-2.0 ISC MIT MPL-2.0 Unicode-3.0 Unlicense ZLIB
-"
-# ring crate
-LICENSE+=" openssl"
-SLOT="0"
-KEYWORDS="~amd64"
-
-IUSE="+gui"
-REQUIRED_USE="gui? ( ${PYTHON_REQUIRED_USE} )"
-RESTRICT="!gui? ( test ) !test? ( test )"
-
-# Dependencies:
-# Python: python/requirements.{anki,aqt}.in
-# If ENABLE_QT5_COMPAT is set at runtime
-# additionally depend on PyQt6[dbus,printsupport].
-# Qt: qt/{aqt/{sound.py,qt/*.py},tools/build_ui.py}
-# app-misc/certificates: The rust backend library is built against
-# rustls-native-certs to use the native certificate store.
-# No ${PYTHON_DEPS} in DEPEND despite external module because it doesn't link
-# against libpython
-
-DEPEND="
-	>=app-arch/zstd-1.5.5:=
-	dev-db/sqlite:3
-"
-GUI_RDEPEND="
-	${PYTHON_DEPS}
-	dev-qt/qtsvg:6
-	$(python_gen_cond_dep '
-		dev-python/beautifulsoup4[${PYTHON_USEDEP}]
-		dev-python/distro[${PYTHON_USEDEP}]
-		dev-python/decorator[${PYTHON_USEDEP}]
-		dev-python/flask[${PYTHON_USEDEP}]
-		dev-python/flask-cors[${PYTHON_USEDEP}]
-		dev-python/jsonschema[${PYTHON_USEDEP}]
-		dev-python/markdown[${PYTHON_USEDEP}]
-		dev-python/protobuf[${PYTHON_USEDEP}]
-		>=dev-python/pyqt6-6.6.1[gui,network,opengl,quick,webchannel,widgets,${PYTHON_USEDEP}]
-		>=dev-python/pyqt6-sip-13.6.0[${PYTHON_USEDEP}]
-		>=dev-python/pyqt6-webengine-6.6.0[widgets,${PYTHON_USEDEP}]
-		dev-python/requests[${PYTHON_USEDEP}]
-		dev-python/send2trash[${PYTHON_USEDEP}]
-		dev-python/waitress[${PYTHON_USEDEP}]
-	')
-"
-RDEPEND="
-	${DEPEND}
-	app-misc/ca-certificates
-	gui? ( ${GUI_RDEPEND} )
-"
-
-BDEPEND="
-	>=app-arch/zstd-1.5.5:=
-	dev-libs/protobuf[protoc(+)]
-	virtual/pkgconfig
-	gui? (
-		${DISTUTILS_DEPS}
-		${PYTHON_DEPS}
-		app-alternatives/ninja
-		>=net-libs/nodejs-20.12.1
-		sys-apps/yarn
-		$(python_gen_cond_dep '
-			dev-python/pyqt6[${PYTHON_USEDEP}]
-			dev-python/wheel[${PYTHON_USEDEP}]
-		')
-	)
-	test? (
-		${RDEPEND}
-		app-text/dvipng
-		app-text/texlive
-		dev-libs/openssl
-		dev-util/cargo-nextest
-		$(python_gen_cond_dep 'dev-python/mock[${PYTHON_USEDEP}]')
-	)
-"
-
-distutils_enable_sphinx python/sphinx \
-			dev-python/sphinx-autoapi \
-			dev-python/sphinx-rtd-theme
-
-EPYTEST_PLUGINS=()
-distutils_enable_tests pytest
-
-PATCHES=(
-	"${FILESDIR}"/${P}-remove-aqt-data.patch
-	"${FILESDIR}"/24.06.3/remove-yarn.patch
-	"${FILESDIR}"/24.04.1/remove-mypy-protobuf.patch
-	"${FILESDIR}"/24.04.1/revert-cert-store-hack.patch
-	"${FILESDIR}"/23.12.1/ninja-rules-for-cargo.patch
-)
-
-QA_FLAGS_IGNORED="usr/bin/anki-sync-server
-	usr/lib/python.*/site-packages/anki/_rsbridge.so"
-
-pkg_setup() {
-	export PROTOC_BINARY="${BROOT}"/usr/bin/protoc
-	export LIBSQLITE3_SYS_USE_PKG_CONFIG=1
-	export ZSTD_SYS_USE_PKG_CONFIG=1
-	rust_pkg_setup
-	use gui && python-single-r1_pkg_setup
-}
-
-python_prepare_all() {
-	mv "${WORKDIR}"/node_modules out || die
-
-	# Expected files and directories
-	mkdir .git out/env || die
-	mkdir -p out/pyenv/bin || die
-
-	if use doc; then
-		sed "/^REPO_ROOT/s|=.*|= \"${S}\"|" -i python/sphinx/conf.py || die
-	fi
-
-	# Unpin Yarn
-	sed -e '/"type": "module"/s/,//' \
-		-e '/packageManager/d' -i package.json || die
-	# We build wheels without invoking the uv frontend
-	sed -i '/uv_binary/d' build/configure/src/python.rs || die
-
-	# Not running the black formatter on generated files saves a dependency
-	sed '/subprocess/d' -i pylib/tools/hookslib.py || die
-
-	# Fix hardcoded runner location
-	export CARGO_TARGET_DIR="${S}"/out/rust
-	cbuild_dir="$(CHOST=${CBUILD:-${CHOST}} cargo_target_dir)"
-	sed "s,rust/release,${cbuild_dir##*out/}," \
-		-i build/ninja_gen/src/render.rs || die
-	# Separate src_configure from runner build
-	sed '/ConfigureBuild/d' -i build/ninja_gen/src/build.rs || die
-	distutils-r1_python_prepare_all
-}
-
-python_prepare() {
-	ln -s "${PYTHON}" out/pyenv/bin/python || die
-}
-
-src_prepare() {
-	default
-	rm -r ftl/{core,qt}-repo || die
-	ln -s "${WORKDIR}"/anki-core-i18n-${COMMITS[ftl-core]} ftl/core-repo || die
-	ln -s "${WORKDIR}"/anki-desktop-ftl-${COMMITS[ftl-desktop]} ftl/qt-repo || die
-
-	mkdir out || die
-	echo -e "${COMMITS[anki]:0:8}" > out/buildhash || die
-
-	# None of our ninja implementations are n2
-	sed 's/which::which("n2").*/false,/' -i build/ninja_gen/src/build.rs || die
-
-	use gui && distutils-r1_src_prepare
-}
-
-_cbuild_cargo_build() {
-	CHOST=${CBUILD:-${CHOST}} cargo_src_compile "${@}"
-}
-
-python_configure_all() {
-	tc-env_build _cbuild_cargo_build -p configure
-
-	local -x NODE_BINARY="${BROOT}"/usr/bin/node \
-	YARN_BINARY="${BROOT}"/usr/bin/yarn \
-	OFFLINE_BUILD=1
-	if ! use debug; then
-		if tc-is-lto; then
-			local -x RELEASE=2
-		else
-			local -x RELEASE=1
-		fi
-	fi
-	cargo_env edo "${cbuild_dir}"/configure
-	unset cbuild_dir
-}
-
-src_configure() {
-	cargo_gen_config
-	cargo_src_configure
-	use gui && distutils-r1_src_configure
-}
-
-python_compile() {
-	tc-env_build _cbuild_cargo_build -p runner
-	cargo_env eninja -f out/build.ninja pylib qt
-	declare -A wheel_tags=(
-		[pylib]="cp39-abi3-manylinux_2_36_x86_64"
-		[qt]="py3-none-any"
-	)
-	local dir
-	for dir in ${!wheel_tags[@]}; do
-		pushd ${dir} > /dev/null || die
-		local -x ANKI_WHEEL_TAG=${wheel_tags[${dir}]}
-		distutils-r1_python_compile
-		popd || die
-	done
-}
-
-src_compile() {
-	if use gui; then
-		distutils-r1_src_compile
-	else
-		cargo_src_compile -p anki-sync-server
-	fi
-}
-
-python_test() {
-	epytest qt
-	epytest pylib
-}
-
-python_test_all() {
-	local -x NEXTEST_TEST_THREADS="$(makeopts_jobs)"
-	edo cargo nextest run $(usev !debug '--release') \
-			--color always \
-			--all-features \
-			--tests \
-			--no-fail-fast
-	eninja -f out/build.ninja check_vitest
-}
-
-src_test() {
-	local -x ANKI_TEST_MODE=1
-	distutils-r1_src_test
-}
-
-python_install_all() {
-	pushd qt/launcher/lin > /dev/null || die
-	doman anki.1
-	doicon anki.{png,xpm}
-	domenu anki.desktop
-	insinto /usr/share/mime/packages
-	doins anki.xml
-	popd || die
-	distutils-r1_python_install_all
-}
-
-src_install() {
-	greadme_stdin <<- EOF
-	Anki's user manual is located online at https://docs.ankiweb.net/
-	Anki's add-on developer manual is located online at https://addon-docs.ankiweb.net/
-	EOF
-
-	if use gui; then
-		distutils-r1_src_install
-	else
-		cargo_src_install --path rslib/sync
-	fi
-}
-
-pkg_preinst() {
-	greadme_pkg_preinst
-	use gui && xdg_pkg_preinst
-}
-
-pkg_postinst() {
-	greadme_pkg_postinst
-	if use gui; then
-		xdg_pkg_postinst
-		optfeature "LaTeX in cards" "app-text/texlive[extra] app-text/dvipng"
-		optfeature "sound support" media-video/mpv media-video/mplayer
-		optfeature "recording support" "media-sound/lame[frontend] dev-python/pyqt6[multimedia]"
-		optfeature "faster database operations" dev-python/orjson
-		optfeature "Vulkan driver" "media-libs/vulkan-loader dev-qt/qtbase:6[vulkan]
-			dev-qt/qtdeclarative:6[vulkan] dev-qt/qtwebengine:6[vulkan]"
-
-		einfo "You can customize the LaTeX header for your cards to fit your needs:"
-		einfo "Notes > Manage Note Types > [select a note type] > Options"
-	fi
-}

diff --git a/app-misc/anki/files/anki-25.07.1-remove-aqt-data.patch b/app-misc/anki/files/anki-25.07.1-remove-aqt-data.patch
deleted file mode 100644
index 3bff077a2709..000000000000
--- a/app-misc/anki/files/anki-25.07.1-remove-aqt-data.patch
+++ /dev/null
@@ -1,19 +0,0 @@
-Upstream intends to include qt/aqt/data in the wheel under _aqt/ but
-ends up including it under aqt/ as well. This is a minimal version of
-the patch I sent upstream:
-https://github.com/ankitects/anki/pull/4180
-From: Lucio Sauer <watermanpaint@posteo.net>
---- a/qt/pyproject.toml
-+++ b/qt/pyproject.toml
-@@ -77,7 +77,7 @@ ankiw = "aqt:run"
- 
- [tool.hatch.build.targets.wheel]
- packages = ["aqt"]
--exclude = ["**/*.scss", "**/*.ui"]
-+exclude = ["aqt/data", "**/*.ui"]
- 
- [tool.hatch.version]
- source = "code"
--- 
-2.49.0
-


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-misc/anki/, app-misc/anki/files/
@ 2025-09-11  3:29 Sam James
  0 siblings, 0 replies; 5+ messages in thread
From: Sam James @ 2025-09-11  3:29 UTC (permalink / raw
  To: gentoo-commits

commit:     454aa91a8bbaa5684c72b63cb026fc180070afd7
Author:     Lucio Sauer <watermanpaint <AT> posteo <DOT> net>
AuthorDate: Tue Aug 12 12:59:27 2025 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu Sep 11 03:27:02 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=454aa91a

app-misc/anki: fix build w/ dev-lang/rust:1.89.0

Closes: https://bugs.gentoo.org/961732
Signed-off-by: Lucio Sauer <watermanpaint <AT> posteo.net>
Part-of: https://github.com/gentoo/gentoo/pull/43425
Signed-off-by: Sam James <sam <AT> gentoo.org>

 app-misc/anki/anki-25.07.3.ebuild                  |  1 +
 app-misc/anki/files/anki-25.07.3-rust-1.89.0.patch | 24 ++++++++++++++++++++++
 2 files changed, 25 insertions(+)

diff --git a/app-misc/anki/anki-25.07.3.ebuild b/app-misc/anki/anki-25.07.3.ebuild
index ba93d8224e33..7023b5a6aca6 100644
--- a/app-misc/anki/anki-25.07.3.ebuild
+++ b/app-misc/anki/anki-25.07.3.ebuild
@@ -130,6 +130,7 @@ EPYTEST_PLUGINS=()
 distutils_enable_tests pytest
 
 PATCHES=(
+	"${FILESDIR}"/${P}-rust-1.89.0.patch
 	"${FILESDIR}"/24.06.3/remove-yarn.patch
 	"${FILESDIR}"/24.04.1/remove-mypy-protobuf.patch
 	"${FILESDIR}"/24.04.1/revert-cert-store-hack.patch

diff --git a/app-misc/anki/files/anki-25.07.3-rust-1.89.0.patch b/app-misc/anki/files/anki-25.07.3-rust-1.89.0.patch
new file mode 100644
index 000000000000..b2df930ec4d6
--- /dev/null
+++ b/app-misc/anki/files/anki-25.07.3-rust-1.89.0.patch
@@ -0,0 +1,24 @@
+Rust 1.89.0 removes support for lint level attributes for `text_direction_codepoint_in_literal` except at the crate level.
+https://github.com/rust-lang/rust/pull/141004
+https://aur.archlinux.org/packages/anki#comment-1035765
+From: Robert H <robert@jadedpasta.net>
+--- a/rslib/i18n/src/generated.rs
++++ b/rslib/i18n/src/generated.rs
+@@ -4,6 +4,5 @@
+ // Include auto-generated content
+ 
+ #![allow(clippy::all)]
+-#![allow(text_direction_codepoint_in_literal)]
+ 
+ include!(concat!(env!("OUT_DIR"), "/strings.rs"));
+--- a/rslib/i18n/src/lib.rs
++++ b/rslib/i18n/src/lib.rs
+@@ -1,6 +1,8 @@
+ // Copyright: Ankitects Pty Ltd and contributors
+ // License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html
+ 
++#![allow(text_direction_codepoint_in_literal)]
++
+ mod generated;
+ 
+ use std::borrow::Cow;


^ permalink raw reply related	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2025-09-11  3:29 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-07-23  2:32 [gentoo-commits] repo/gentoo:master commit in: app-misc/anki/, app-misc/anki/files/ Sam James
  -- strict thread matches above, loose matches on Subject: below --
2025-09-11  3:29 Sam James
2025-07-08 20:28 Sam James
2024-02-28  4:03 Michał Górny
2020-06-12  7:00 Joonas Niilola

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox