app-i18n/tagainijisho: Update to v1.2.2

Closes: https://bugs.gentoo.org/858773
Signed-off-by: Jake Shipton <jake@crazylinuxnerd.net>
Closes: https://github.com/gentoo/gentoo/pull/34184
Signed-off-by: Mike Gilbert <floppym@gentoo.org>
This commit is contained in:
Jake Shipton 2023-12-09 05:03:50 +00:00 committed by Mike Gilbert
parent 6cbca8dd0d
commit e1859d1659
No known key found for this signature in database
GPG Key ID: 7E58A298F42F9CCD
3 changed files with 216 additions and 20 deletions

View File

@ -1,4 +1,6 @@
DIST JMdict-2021-07-01.gz 20106907 BLAKE2B 0a56834241f4a908b05e99f21917149d161b40a190d271d4477ec18b3b4972648142ab6db3b45fd290caa9d99b1e0a946e16e165dbeabe8eda73a4c9f6d7d286 SHA512 b7217ca9d25601733b03bc0193c1fd3a206b11a20731c2b52650cd5de626d02a486f089464e7c85f3525bd392b64b5c2f5348d752a791df46c06805ee082a42b
DIST kanjidic2-2021-07-01.xml.gz 1487197 BLAKE2B f2fc6cc033c4615cdc0699970f2fd022ea7dab0ec8358eb6baa031e54b8dab4d766410b136e96ce9fe2120b1e2a8362bf8c902bcc9037335745dac24e4cebba5 SHA512 f64d4f207a402b40f02c05a21ba4edb38b74277fecd11694643e2fc4a5857720583a9553e21c9502ff98cb8d17c606f4d24e29b9d939b36d65ae3538d0fa8063
DIST kanjivg-20160426.xml.gz 3587660 BLAKE2B c85291f3671f0980186e8deb296cfa743322df438d6f09fd69a4f5a30c3db6f097d6ff0a817b88c5c9a2c8d4a40c90b31c0a54cb71d681849b557ee364707c48 SHA512 1d35a8cc5d4947f6bedfc71a2f08e2d1fda832d7a02588c00953e1746812b0e51d4d1c39dff49999b4f65ec850788359f6e0d1465f0e688b1bf753c4c67b3c54
DIST kanjivg-20220427.xml.gz 3599920 BLAKE2B 01c5f523023433ef8ada843ff55347ad8bb5be07d094fe2a602c47442c77d863dd131e766c486c75541618b31ab4d6493e2a1c15b5f4f416e22c561c2a73aacb SHA512 204c372ec8fbd3deeb0a644eae8883c3eada4693539c232d3e04709eb59af58925d7e3d4eca576c03ebd74fc077633f1e4897d2bf82105d35edd92023ea832d5
DIST tagainijisho-1.2.0_pre20210627073130.tar.gz 3639873 BLAKE2B 5dfef3a9d9489b3f9a2dfda9a73700311a597f73eddca375608d62069c2e01e37f977ebf78416483f8f8de6347accbdcaebd4f5dca65ee0ec88d2c90a2f7715d SHA512 bb6ddd487bdb7f7e6b664ad1fe92067c136ddc6ed4a01f5882f0fa2c9ebe2b77605dc0f5202f824e2e5a4f1829dff3c43410c339e6bf853ce890ce39567aa43f
DIST tagainijisho-1.2.2.tar.gz 32366512 BLAKE2B bb5670e9cfcd38f21cd16f8f2977c8ae754291ceaa8b1933a50256201b0ad90871bf2440c481eb0ca08ee802956780c02b5e25e9454dd21237743a352304a82f SHA512 08ed99282bd95123dba008af40c5c214ed6434e4179b2f1ccb2b2e83461b55dc4125d431827a9e3e9ec91c6e3ad0b0e98bc02e15e81ae7ce51e9efb47e93f316

View File

@ -0,0 +1,197 @@
# Copyright 2014-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit cmake xdg-utils
if [[ "${PV}" == 9999 ]]; then
inherit git-r3
EGIT_REPO_URI="https://github.com/Gnurou/tagainijisho"
elif [[ "${PV}" == *_pre* ]]; then
inherit vcs-snapshot
TAGAINIJISHO_GIT_REVISION="a16d7b82002d95365b54b8cd07d4fd80e2b9cfeb"
TAGAINIJISHO_VERSION="${PV%_p*_p*}"
JMDICT_DATE="${PV#${TAGAINIJISHO_VERSION}_p}"
JMDICT_DATE="${JMDICT_DATE%_p*}"
JMDICT_DATE="${JMDICT_DATE:0:4}-${JMDICT_DATE:4:2}-${JMDICT_DATE:6}"
KANJIDIC2_DATE="${PV#${TAGAINIJISHO_VERSION}_p*_p}"
KANJIDIC2_DATE="${KANJIDIC2_DATE:0:4}-${KANJIDIC2_DATE:4:2}-${KANJIDIC2_DATE:6}"
fi
if [[ "${PV}" == 9999 || "${PV}" == *_pre* ]]; then
KANJIVG_VERSION="20220427"
fi
DESCRIPTION="Open-source Japanese dictionary and kanji lookup tool"
HOMEPAGE="https://www.tagaini.net/ https://github.com/Gnurou/tagainijisho"
if [[ "${PV}" == 9999 ]]; then
# A daily archive is fetched for both JMdict and kanjidic2
SRC_URI=""
elif [[ "${PV}" == *_pre* ]]; then
SRC_URI="https://github.com/Gnurou/${PN}/archive/${TAGAINIJISHO_GIT_REVISION}.tar.gz -> ${PN}-${TAGAINIJISHO_VERSION}.tar.gz"
# Upstream: https://www.edrdg.org/pub/Nihongo/JMdict.gz
SRC_URI+=" https://home.apache.org/~arfrever/distfiles/JMdict-${JMDICT_DATE}.gz"
# Upstream: https://www.edrdg.org/pub/Nihongo/kanjidic2.xml.gz
SRC_URI+=" https://home.apache.org/~arfrever/distfiles/kanjidic2-${KANJIDIC2_DATE}.xml.gz"
else
# JMdict and kanjidic2 are already included in stable release archive.
SRC_URI="https://github.com/Gnurou/${PN}/releases/download/${PV}/${PN}-${PV}.tar.gz"
fi
if [[ "${PV}" == 9999 || "${PV}" == *_pre* ]]; then
SRC_URI+=" https://github.com/KanjiVG/kanjivg/releases/download/r${KANJIVG_VERSION}/kanjivg-${KANJIVG_VERSION}.xml.gz"
fi
LICENSE="GPL-3+ public-domain"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE=""
BDEPEND="dev-qt/linguist-tools:5"
DEPEND=">=dev-db/sqlite-3.40:3
dev-qt/qtcore:5
dev-qt/qtnetwork:5
dev-qt/qtprintsupport:5
dev-qt/qtwidgets:5"
RDEPEND="${DEPEND}"
pkg_langs=(ar cs de es fa fi fr hr hu id it nb nl no pl pt ru sv ta th tr uk vi zh)
IUSE+=" ${pkg_langs[@]/#/l10n_}"
unset pkg_langs
if [[ "${PV}" == *_pre* ]]; then
S="${WORKDIR}/${PN}-${TAGAINIJISHO_VERSION}"
fi
src_unpack() {
if [[ "${PV}" == 9999 ]]; then
git-r3_src_unpack
elif [[ "${PV}" == *_pre* ]]; then
unpack ${PN}-${TAGAINIJISHO_VERSION}.tar.gz
mv ${PN}-${TAGAINIJISHO_GIT_REVISION} ${PN}-${TAGAINIJISHO_VERSION} || die
else
unpack ${PN}-${PV}.tar.gz
fi
if [[ "${PV}" == 9999 ]]; then
# JMdict.gz and kanjidic2.xml.gz are updated once per day.
local distdir="${PORTAGE_ACTUAL_DISTDIR:-${DISTDIR}}"
local today="$(TZ="UTC" date --date=today "+%Y-%m-%d")"
local yesterday="$(TZ="UTC" date --date=yesterday "+%Y-%m-%d")"
if [[ -f ${distdir}/JMdict-${today}.gz && -s ${distdir}/JMdict-${today}.gz ]]; then
# Use previously downloaded file from today.
JMDICT_DATE="${today}"
elif [[ -f ${distdir}/JMdict-${yesterday}.gz && -s ${distdir}/JMdict-${yesterday}.gz ]]; then
# Use previously downloaded file from yesterday. File from today may still be nonexistent.
JMDICT_DATE="${yesterday}"
else
# Download file from today or yesterday.
wget https://www.edrdg.org/pub/Nihongo/JMdict.gz -O JMdict.gz || die
JMDICT_DATE="$(gzip -cd JMdict.gz | grep -E "^<!-- JMdict created: [[:digit:]]{4}-[[:digit:]]{2}-[[:digit:]]{2} -->$" | sed -e "s/.*\([[:digit:]]\{4\}-[[:digit:]]\{2\}-[[:digit:]]\{2\}\).*/\1/")"
if [[ ${JMDICT_DATE} != ${today} && ${JMDICT_DATE} != ${yesterday} ]]; then
die "Unexpected date in JMdict.gz: '${JMDICT_DATE}'"
fi
(
addwrite "${distdir}"
mv JMdict.gz "${distdir}/JMdict-${JMDICT_DATE}.gz" || die
)
fi
einfo "Date in JMdict.gz: '${JMDICT_DATE}'"
if [[ -f ${distdir}/kanjidic2-${today}.xml.gz && -s ${distdir}/kanjidic2-${today}.xml.gz ]]; then
# Use previously downloaded file from today.
KANJIDIC2_DATE="${today}"
elif [[ -f ${distdir}/kanjidic2-${yesterday}.xml.gz && -s ${distdir}/kanjidic2-${yesterday}.xml.gz ]]; then
# Use previously downloaded file from yesterday. File from today may still be nonexistent.
KANJIDIC2_DATE="${yesterday}"
else
# Download file from today or yesterday.
wget https://www.edrdg.org/pub/Nihongo/kanjidic2.xml.gz -O kanjidic2.xml.gz || die
KANJIDIC2_DATE="$(gzip -cd kanjidic2.xml.gz | grep -E "^<date_of_creation>[[:digit:]]{4}-[[:digit:]]{2}-[[:digit:]]{2}</date_of_creation>$" | sed -e "s/.*\([[:digit:]]\{4\}-[[:digit:]]\{2\}-[[:digit:]]\{2\}\).*/\1/")"
if [[ ${KANJIDIC2_DATE} != ${today} && ${KANJIDIC2_DATE} != ${yesterday} ]]; then
die "Unexpected date in kanjidic2.xml.gz: '${KANJIDIC2_DATE}'"
fi
(
addwrite "${distdir}"
mv kanjidic2.xml.gz "${distdir}/kanjidic2-${KANJIDIC2_DATE}.xml.gz" || die
)
fi
einfo "Date in kanjidic2.xml.gz: '${KANJIDIC2_DATE}'"
mkdir "${S}/3rdparty" || die
gzip -cd "${distdir}/JMdict-${JMDICT_DATE}.gz" > "${S}/3rdparty/JMdict" || die
gzip -cd "${distdir}/kanjidic2-${KANJIDIC2_DATE}.xml.gz" > "${S}/3rdparty/kanjidic2.xml" || die
elif [[ "${PV}" == *_pre* ]]; then
mkdir "${S}/3rdparty" || die
pushd "${S}/3rdparty" > /dev/null || die
unpack JMdict-${JMDICT_DATE}.gz
mv JMdict-${JMDICT_DATE} JMdict || die
unpack kanjidic2-${KANJIDIC2_DATE}.xml.gz
mv kanjidic2-${KANJIDIC2_DATE}.xml kanjidic2.xml || die
popd > /dev/null || die
fi
if [[ "${PV}" == 9999 || "${PV}" == *_pre* ]]; then
pushd "${S}/3rdparty" > /dev/null || die
unpack kanjivg-${KANJIVG_VERSION}.xml.gz
mv kanjivg-${KANJIVG_VERSION}.xml kanjivg.xml || die
popd > /dev/null || die
fi
}
src_configure() {
# GUI linguae
# en is not optional, and build fails if none other than en is set, so adding ja as non-optional too.
local lang use_lang
for lang in i18n/*.ts; do
lang=${lang#i18n/tagainijisho_}
lang=${lang%.ts}
case ${lang} in
es_AR|fa_IR|fi_FI|pt_BR|zh_TW)
# Use generic tags.
use_lang=${lang%%_*}
;;
*)
use_lang=${lang}
;;
esac
if [[ ${lang} != en && ${lang} != ja ]] && ! use l10n_${use_lang}; then
rm i18n/tagainijisho_${lang}.ts || die
fi
done
# Dictionary linguae
# en is not optional here either, but nothing special needs to be done.
local dict_langs
for lang in $(sed -e 's/;/ /g' -ne '/set(DICT_LANG ".*")/s/.*"\(.*\)".*/\1/p' CMakeLists.txt); do
if use l10n_${lang}; then
dict_langs+="${dict_langs:+;}${lang}"
fi
done
local mycmakeargs=(
-DDICT_LANG="${dict_langs:-;}"
-DEMBED_SQLITE=OFF
)
cmake_src_configure
}
pkg_postinst() {
xdg_icon_cache_update
}
pkg_postrm() {
xdg_icon_cache_update
}

View File

@ -1,8 +1,7 @@
# Copyright 2014-2021 Gentoo Authors
# Copyright 2014-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="7"
EAPI=8
inherit cmake xdg-utils
if [[ "${PV}" == 9999 ]]; then
@ -12,9 +11,7 @@ if [[ "${PV}" == 9999 ]]; then
elif [[ "${PV}" == *_pre* ]]; then
inherit vcs-snapshot
TAGAINIJISHO_GIT_REVISION=""
fi
if [[ "${PV}" != 9999 ]]; then
TAGAINIJISHO_GIT_REVISION="a16d7b82002d95365b54b8cd07d4fd80e2b9cfeb"
TAGAINIJISHO_VERSION="${PV%_p*_p*}"
JMDICT_DATE="${PV#${TAGAINIJISHO_VERSION}_p}"
JMDICT_DATE="${JMDICT_DATE%_p*}"
@ -22,25 +19,28 @@ if [[ "${PV}" != 9999 ]]; then
KANJIDIC2_DATE="${PV#${TAGAINIJISHO_VERSION}_p*_p}"
KANJIDIC2_DATE="${KANJIDIC2_DATE:0:4}-${KANJIDIC2_DATE:4:2}-${KANJIDIC2_DATE:6}"
fi
if [[ "${PV}" == 9999 || "${PV}" == *_pre* ]]; then
KANJIVG_VERSION="20160426"
KANJIVG_VERSION="20220427"
fi
DESCRIPTION="Open-source Japanese dictionary and kanji lookup tool"
HOMEPAGE="https://www.tagaini.net/ https://github.com/Gnurou/tagainijisho"
if [[ "${PV}" == 9999 ]]; then
# A daily archive is fetched for both JMdict and kanjidic2
SRC_URI=""
elif [[ "${PV}" == *_pre* ]]; then
SRC_URI="https://github.com/Gnurou/${PN}/archive/${TAGAINIJISHO_GIT_REVISION}.tar.gz -> ${PN}-${TAGAINIJISHO_VERSION}.tar.gz"
else
SRC_URI="https://github.com/Gnurou/${PN}/releases/download/${PV}/${PN}-${TAGAINIJISHO_VERSION}.tar.gz"
fi
if [[ "${PV}" != 9999 ]]; then
# Upstream: https://www.edrdg.org/pub/Nihongo/JMdict.gz
SRC_URI+=" https://home.apache.org/~arfrever/distfiles/JMdict-${JMDICT_DATE}.gz"
# Upstream: https://www.edrdg.org/pub/Nihongo/kanjidic2.xml.gz
SRC_URI+=" https://home.apache.org/~arfrever/distfiles/kanjidic2-${KANJIDIC2_DATE}.xml.gz"
else
# JMdict and kanjidic2 are already included in stable release archive.
SRC_URI="https://github.com/Gnurou/${PN}/releases/download/${PV}/${PN}-${PV}.tar.gz"
fi
if [[ "${PV}" == 9999 || "${PV}" == *_pre* ]]; then
SRC_URI+=" https://github.com/KanjiVG/kanjivg/releases/download/r${KANJIVG_VERSION}/kanjivg-${KANJIVG_VERSION}.xml.gz"
fi
@ -49,23 +49,20 @@ LICENSE="GPL-3+ public-domain"
SLOT="0"
KEYWORDS=""
IUSE=""
if [[ "${PV}" == 9999 ]]; then
PROPERTIES="live"
fi
BDEPEND="dev-qt/linguist-tools:5"
DEPEND=">=dev-db/sqlite-3.12:3
DEPEND=">=dev-db/sqlite-3.40:3
dev-qt/qtcore:5
dev-qt/qtnetwork:5
dev-qt/qtprintsupport:5
dev-qt/qtwidgets:5"
RDEPEND="${DEPEND}"
pkg_langs=(ar cs de es fa fi fr hu id it nb nl pl pt ru sv th tr uk vi zh)
pkg_langs=(ar cs de es fa fi fr hr hu id it nb nl no pl pt ru sv ta th tr uk vi zh)
IUSE+=" ${pkg_langs[@]/#/l10n_}"
unset pkg_langs
if [[ "${PV}" != 9999 ]]; then
if [[ "${PV}" == *_pre* ]]; then
S="${WORKDIR}/${PN}-${TAGAINIJISHO_VERSION}"
fi
@ -76,7 +73,7 @@ src_unpack() {
unpack ${PN}-${TAGAINIJISHO_VERSION}.tar.gz
mv ${PN}-${TAGAINIJISHO_GIT_REVISION} ${PN}-${TAGAINIJISHO_VERSION} || die
else
unpack ${PN}-${TAGAINIJISHO_VERSION}.tar.gz
unpack ${PN}-${PV}.tar.gz
fi
if [[ "${PV}" == 9999 ]]; then
@ -129,7 +126,7 @@ src_unpack() {
mkdir "${S}/3rdparty" || die
gzip -cd "${distdir}/JMdict-${JMDICT_DATE}.gz" > "${S}/3rdparty/JMdict" || die
gzip -cd "${distdir}/kanjidic2-${KANJIDIC2_DATE}.xml.gz" > "${S}/3rdparty/kanjidic2.xml" || die
else
elif [[ "${PV}" == *_pre* ]]; then
mkdir "${S}/3rdparty" || die
pushd "${S}/3rdparty" > /dev/null || die
@ -160,7 +157,7 @@ src_configure() {
lang=${lang#i18n/tagainijisho_}
lang=${lang%.ts}
case ${lang} in
fa_IR|fi_FI|pt_BR)
es_AR|fa_IR|fi_FI|pt_BR|zh_TW)
# Use generic tags.
use_lang=${lang%%_*}
;;