diff options
Diffstat (limited to 'app-i18n/tagainijisho')
-rw-r--r-- | app-i18n/tagainijisho/Manifest | 4 | ||||
-rw-r--r-- | app-i18n/tagainijisho/tagainijisho-1.2.0_pre20200118132551_p20200401_p20200401.ebuild | 200 |
2 files changed, 204 insertions, 0 deletions
diff --git a/app-i18n/tagainijisho/Manifest b/app-i18n/tagainijisho/Manifest index 6aa6fe5974fc..cc0889866bd6 100644 --- a/app-i18n/tagainijisho/Manifest +++ b/app-i18n/tagainijisho/Manifest @@ -1,7 +1,11 @@ DIST JMdict-2020-01-01.gz 19493878 BLAKE2B a797cbabffaafdcc967078ebf91ba27280d9a2ba040021fa605e674246ad3837774b2f17a7f4386cec3a2f53afb742fcd9f0bb6784b2014659d8785d59e321cd SHA512 691077030421e909dc171c217e6951edd48b567bf0821c7b68da7a2fc410e3f55d73db1943a9b99128763655d03e175e431590d869032645ae32d69dae5acdc1 +DIST JMdict-2020-04-01.gz 19606278 BLAKE2B aa4f4287dc57ad825df6a8606840d2dd64bf9901cfc546cf25cacda3c838bc0827430bfb948c92183f6f35d356eb97eaf09b743e70740364293dc278168510ba SHA512 ad3907bff000b684af2d78135da0258756757cc715c5827f02a8703e6b9a3f0796fd6e3d24509ec13d84464ec6591e7acb0b9c253724e55a2cb44a564a7e5602 DIST kanjidic2-2020-01-01.xml.gz 1482692 BLAKE2B f50f45e982842b1fc161551640aa7bb8bc13e858c64576af25101c0bbdcb5d5734ebba86be180434781ba62d37370eae9b53bad7a30eb06bcffb86233f85f3fe SHA512 df0d0827525ff0406b33811f9b0eb24f7ab99288879dc316af8125c24448b9919224d6cc7c20648791dbbe8f29d05d977e77c9316a9aeb69513e29cf2bc40e92 +DIST kanjidic2-2020-04-01.xml.gz 1482869 BLAKE2B 05a8ed51adaf56023b41d6ac956496fda780d14e55d1947dfdec0647a78d4bcb2f5cab730e729ab42a176bed7de7548276d9d9fd668ca2c6e045296ba0ab4f7a SHA512 87d0562bb5d4ae7153be8d684d1bd9b199039417a76289d783e96e09ea52b6741d923dc2f38500a7b2299c9f4cd0f6c8d7b8b7e00da2f102681387ec858ce852 DIST kanjivg-20160426.xml.gz 3587660 BLAKE2B c85291f3671f0980186e8deb296cfa743322df438d6f09fd69a4f5a30c3db6f097d6ff0a817b88c5c9a2c8d4a40c90b31c0a54cb71d681849b557ee364707c48 SHA512 1d35a8cc5d4947f6bedfc71a2f08e2d1fda832d7a02588c00953e1746812b0e51d4d1c39dff49999b4f65ec850788359f6e0d1465f0e688b1bf753c4c67b3c54 DIST tagainijisho-1.2.0_pre20191230120610.tar.gz 3635034 BLAKE2B 4f86febae1dfe1de236668bd405294c1e11510b8a942abfcb378d0e46c38cc179d16f5365dbb8322c7ad47cc333a816ce883af5993e0be90f11a43f2710cd45d SHA512 4fa93b7a51415c57f1d81748f15f23e90e4d9a1f91c3f0d96447d08a5bf1bbfc6bc2dbd4083e0b9328e32795f01de94bae834b4e7ff1830cfbe0ec215f20d7f8 +DIST tagainijisho-1.2.0_pre20200118132551.tar.gz 3635265 BLAKE2B f8f831f698bf0ca56c57e8343adee92d3b42842c95fb971c9d8696eaf660ce458d8fd2108ab4568463bed6711c5295d27efc34f2fab512c3d0bc2a11a4f76c1b SHA512 14d6fc5ce891437159ca2b3db53c776420a6d4e305f6753c7ccf5ce773d43fa31f875ee9582c9db1fe05364b18772cec43dd046a6492b6eb45c12b62f7d60407 EBUILD tagainijisho-1.2.0_pre20191230120610_p20200101_p20200101.ebuild 6662 BLAKE2B b55c84d61fef76786a82f67904b1b4b058a430023f05a9521d0c1783e4834d0333362de53fb791e907451fb73e593ade756fad600363d2619774c9d18a69a70b SHA512 b3055cbbbd23ae22e827181a6c11e17943d3c604a2453afb6fb389c0d4a877f77585242d39c747e3a9cee81df52ce1754aac3e7616051dbfeab84e07845cf09c +EBUILD tagainijisho-1.2.0_pre20200118132551_p20200401_p20200401.ebuild 6662 BLAKE2B d0e51fac4398e2108660bc3a111b01c140be5237d7fbf2e2bf60ea2cdc7439df96df2233ca0b7ec02b2aa89feecbf35cf5601fd14b0ff15e8bf8d813c0917858 SHA512 7a7128adc528c86e3860ddb8ce7a1e6d039a1eb8b3659c21f9ee64d0e410d19f1225c8be2b644b2f367feb463c9c37c4869b0e0115dec84d6176d4a6a78a39ec EBUILD tagainijisho-9999.ebuild 6611 BLAKE2B 49eb2ad3a99a2cae8097c3fbe54f99b7d63fe1ba2b88793bfe9a57f38afc04ae4ccd5297642603cc55203ec461d2b56885cf0a504c75b9319194df878d27b752 SHA512 ff98dc941da2ae88e664564a5fbf674e75f5da2e8d1501dac23c294bc1ed718f6b8e7252c9e889cc9b3519217b9a2b37a5e6f38dd828dce7f269296af316311d MISC metadata.xml 1133 BLAKE2B 863fcd0cbb85b715cf7666210c74a9e88423b0e982b3e05b4333036b607e4d2cf73b35dc6b8f5e549a35a6d8e2cc107f110f3500762d49065bd1ed2097dd6338 SHA512 cde2818f44f02091ac994ca049a25b90519b62b669b7923a52043df23a0de7f3e1f657d3080e574048556dbacd5521995addd35267ec9d1357360f473222cef7 diff --git a/app-i18n/tagainijisho/tagainijisho-1.2.0_pre20200118132551_p20200401_p20200401.ebuild b/app-i18n/tagainijisho/tagainijisho-1.2.0_pre20200118132551_p20200401_p20200401.ebuild new file mode 100644 index 000000000000..9d1700175eb0 --- /dev/null +++ b/app-i18n/tagainijisho/tagainijisho-1.2.0_pre20200118132551_p20200401_p20200401.ebuild @@ -0,0 +1,200 @@ +# Copyright 2014-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI="7" + +inherit cmake-utils xdg-utils + +if [[ "${PV}" == 9999 ]]; then + inherit git-r3 + + EGIT_REPO_URI="https://github.com/Gnurou/tagainijisho" +elif [[ "${PV}" == *_pre* ]]; then + inherit vcs-snapshot + + TAGAINIJISHO_GIT_REVISION="2d2a3182a70a22bf27b0be42a3e896283513761e" +fi +if [[ "${PV}" != 9999 ]]; then + TAGAINIJISHO_VERSION="${PV%_p*_p*}" + JMDICT_DATE="${PV#${TAGAINIJISHO_VERSION}_p}" + JMDICT_DATE="${JMDICT_DATE%_p*}" + JMDICT_DATE="${JMDICT_DATE:0:4}-${JMDICT_DATE:4:2}-${JMDICT_DATE:6}" + KANJIDIC2_DATE="${PV#${TAGAINIJISHO_VERSION}_p*_p}" + KANJIDIC2_DATE="${KANJIDIC2_DATE:0:4}-${KANJIDIC2_DATE:4:2}-${KANJIDIC2_DATE:6}" +fi +if [[ "${PV}" == 9999 || "${PV}" == *_pre* ]]; then + KANJIVG_VERSION="20160426" +fi + +DESCRIPTION="Open-source Japanese dictionary and kanji lookup tool" +HOMEPAGE="https://www.tagaini.net/ https://github.com/Gnurou/tagainijisho" +if [[ "${PV}" == 9999 ]]; then + SRC_URI="" +elif [[ "${PV}" == *_pre* ]]; then + SRC_URI="https://github.com/Gnurou/${PN}/archive/${TAGAINIJISHO_GIT_REVISION}.tar.gz -> ${PN}-${TAGAINIJISHO_VERSION}.tar.gz" +else + SRC_URI="https://github.com/Gnurou/${PN}/releases/download/${PV}/${PN}-${TAGAINIJISHO_VERSION}.tar.gz" +fi +if [[ "${PV}" != 9999 ]]; then + # Upstream: http://ftp.monash.edu.au/pub/nihongo/JMdict.gz + SRC_URI+=" https://home.apache.org/~arfrever/distfiles/JMdict-${JMDICT_DATE}.gz" + # Upstream: http://www.edrdg.org/kanjidic/kanjidic2.xml.gz + SRC_URI+=" https://home.apache.org/~arfrever/distfiles/kanjidic2-${KANJIDIC2_DATE}.xml.gz" +fi +if [[ "${PV}" == 9999 || "${PV}" == *_pre* ]]; then + SRC_URI+=" https://github.com/KanjiVG/kanjivg/releases/download/r${KANJIVG_VERSION}/kanjivg-${KANJIVG_VERSION}.xml.gz" +fi + +LICENSE="GPL-3+ public-domain" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="" +if [[ "${PV}" == 9999 ]]; then + PROPERTIES="live" +fi + +BDEPEND="dev-qt/linguist-tools:5" +DEPEND=">=dev-db/sqlite-3.12:3 + dev-qt/qtcore:5 + dev-qt/qtnetwork:5 + dev-qt/qtprintsupport:5 + dev-qt/qtwidgets:5" +RDEPEND="${DEPEND}" + +pkg_langs=(ar cs de es fa fi fr hu id it nb nl pl pt ru sv th tr uk vi zh) +IUSE+=" ${pkg_langs[@]/#/l10n_}" +unset pkg_langs + +if [[ "${PV}" != 9999 ]]; then + S="${WORKDIR}/${PN}-${TAGAINIJISHO_VERSION}" +fi + +src_unpack() { + if [[ "${PV}" == 9999 ]]; then + git-r3_src_unpack + elif [[ "${PV}" == *_pre* ]]; then + unpack ${PN}-${TAGAINIJISHO_VERSION}.tar.gz + mv ${PN}-${TAGAINIJISHO_GIT_REVISION} ${PN}-${TAGAINIJISHO_VERSION} || die + else + unpack ${PN}-${TAGAINIJISHO_VERSION}.tar.gz + fi + + if [[ "${PV}" == 9999 ]]; then + # JMdict.gz and kanjidic2.xml.gz are updated once per day. + + local distdir="${PORTAGE_ACTUAL_DISTDIR:-${DISTDIR}}" + local today="$(TZ="UTC" date --date=today "+%Y-%m-%d")" + local yesterday="$(TZ="UTC" date --date=yesterday "+%Y-%m-%d")" + + if [[ -f ${distdir}/JMdict-${today}.gz && -s ${distdir}/JMdict-${today}.gz ]]; then + # Use previously downloaded file from today. + JMDICT_DATE="${today}" + elif [[ -f ${distdir}/JMdict-${yesterday}.gz && -s ${distdir}/JMdict-${yesterday}.gz ]]; then + # Use previously downloaded file from yesterday. File from today may still be nonexistent. + JMDICT_DATE="${yesterday}" + else + # Download file from today or yesterday. + wget http://ftp.monash.edu.au/pub/nihongo/JMdict.gz -O JMdict.gz || die + JMDICT_DATE="$(gzip -cd JMdict.gz | grep -E "^<!-- 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 http://www.edrdg.org/kanjidic/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 + else + mkdir "${S}/3rdparty" || die + pushd "${S}/3rdparty" > /dev/null || die + + unpack JMdict-${JMDICT_DATE}.gz + mv JMdict-${JMDICT_DATE} JMdict || die + + unpack kanjidic2-${KANJIDIC2_DATE}.xml.gz + mv kanjidic2-${KANJIDIC2_DATE}.xml kanjidic2.xml || die + + popd > /dev/null || die + fi + + if [[ "${PV}" == 9999 || "${PV}" == *_pre* ]]; then + pushd "${S}/3rdparty" > /dev/null || die + + unpack kanjivg-${KANJIVG_VERSION}.xml.gz + mv kanjivg-${KANJIVG_VERSION}.xml kanjivg.xml || die + + popd > /dev/null || die + fi +} + +src_configure() { + # GUI linguae + # en is not optional, and build fails if none other than en is set, so adding ja as non-optional too. + local lang use_lang + for lang in i18n/*.ts; do + lang=${lang#i18n/tagainijisho_} + lang=${lang%.ts} + case ${lang} in + fa_IR|fi_FI|pt_BR) + # Use generic tags. + use_lang=${lang%%_*} + ;; + *) + use_lang=${lang} + ;; + esac + + if [[ ${lang} != en && ${lang} != ja ]] && ! use l10n_${use_lang}; then + rm i18n/tagainijisho_${lang}.ts || die + fi + done + + # Dictionary linguae + # en is not optional here either, but nothing special needs to be done. + local dict_langs + for lang in $(sed -e 's/;/ /g' -ne '/set(DICT_LANG ".*")/s/.*"\(.*\)".*/\1/p' CMakeLists.txt); do + if use l10n_${lang}; then + dict_langs+="${dict_langs:+;}${lang}" + fi + done + + local mycmakeargs=( + -DDICT_LANG="${dict_langs:-;}" + -DEMBED_SQLITE=OFF + ) + + cmake-utils_src_configure +} + +pkg_postinst() { + xdg_icon_cache_update +} + +pkg_postrm() { + xdg_icon_cache_update +} |