commit: 28497ea57eaecb26ce33c0fc18f124aae7c69973 Author: Takuya Wakazono <pastalian46 <AT> gmail <DOT> com> AuthorDate: Sun Jan 11 12:18:55 2026 +0000 Commit: Takuya Wakazono <pastalian46 <AT> gmail <DOT> com> CommitDate: Sun Jan 11 12:18:55 2026 +0000 URL: https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=28497ea5
app-text/komikku: add 1.99.0 Signed-off-by: Takuya Wakazono <pastalian46 <AT> gmail.com> app-text/komikku/Manifest | 1 + .../komikku-1.99.0-revert-pixbuf-2.44.3.patch | 84 +++++++++++++++++++ app-text/komikku/komikku-1.99.0.ebuild | 95 ++++++++++++++++++++++ 3 files changed, 180 insertions(+) diff --git a/app-text/komikku/Manifest b/app-text/komikku/Manifest index c79d28b958..840e23ebe6 100644 --- a/app-text/komikku/Manifest +++ b/app-text/komikku/Manifest @@ -1 +1,2 @@ DIST komikku-1.86.0.tar.gz 4612281 BLAKE2B cbb5c36843fc191e1048e20f5662cd1862720a64365884cca95befba57e9a149c461cb87f2ff02cbf92847810becd2979adbdd294e00a516ddbdfa89aa31278d SHA512 d754c5dab7ae9d1652c30157d9b546cc1805e7b6ace12bca8164a60934b3696676a3870e91e1b9948b1bccbd841a537e9152a8a7f5e7d9c7a18bc3c98cafea3d +DIST komikku-1.99.0.tar.gz 4691630 BLAKE2B 5c5cd7e6deff649be4c4758109e8061ffc872d4212e8eb08264306d3b6d493f8fdde0ff9ab9e06e323f00e33d0b68e97e724811a220f370da941765b4c1280f0 SHA512 c38252baf5a957a4364e1e5f759d2d9bc14228b6763dbe7aa85808a9355593a30e5cd4124232576d7cf2e46b5f1dbcf87ea5594948acf9d0161fa4a682c22a85 diff --git a/app-text/komikku/files/komikku-1.99.0-revert-pixbuf-2.44.3.patch b/app-text/komikku/files/komikku-1.99.0-revert-pixbuf-2.44.3.patch new file mode 100644 index 0000000000..5559bbd7f6 --- /dev/null +++ b/app-text/komikku/files/komikku-1.99.0-revert-pixbuf-2.44.3.patch @@ -0,0 +1,84 @@ +https://codeberg.org/valos/Komikku/commit/64d61284f12606df42248755ffc6f628c7bab178 +Revert "Set minimal version of gdk-pixbuf to 2.44.3" + +x11-libs/gdk-pixbuf-2.44.3 is not packaged yet. +This reverts commit 64d61284f12606df42248755ffc6f628c7bab178. +--- a/data/meson.build ++++ b/data/meson.build +@@ -45,9 +45,8 @@ endif + # + # Dependencies + # +-dependency('gobject-introspection-1.0') + dependency('glib-2.0') +-dependency('gdk-pixbuf-2.0', version: '>=2.44.3') ++dependency('gobject-introspection-1.0') + dependency('gtk4', version: '>=4.18') + dependency('libadwaita-1', version: '>=1.8') + +--- a/komikku/consts.py ++++ b/komikku/consts.py +@@ -6,6 +6,7 @@ COVER_WIDTH = 180 + COVER_HEIGHT = 256 + LOGO_SIZE = 32 + MISSING_IMG_RESOURCE_PATH = '/info/febvre/Komikku/images/missing_file.png' ++PIXBUF_ANIMATION = False + + DOWNLOAD_MAX_DELAY = 1 # in seconds + REQUESTS_TIMEOUT = 5 +--- a/komikku/reader/pager/image.py ++++ b/komikku/reader/pager/image.py +@@ -27,6 +27,7 @@ from gi.repository.GdkPixbuf import Pixbuf + from gi.repository.GdkPixbuf import PixbufAnimation + + from komikku.consts import MISSING_IMG_RESOURCE_PATH ++from komikku.consts import PIXBUF_ANIMATION + from komikku.utils import get_image_info + + logger = logging.getLogger('komikku') +@@ -542,7 +543,7 @@ class KImage(Gtk.Widget, Gtk.Scrollable): + elif data: + stream = Gio.MemoryInputStream.new_from_data(data, None) + +- if not info['is_animated']: ++ if not info['is_animated'] or not PIXBUF_ANIMATION: + Pixbuf.new_from_stream_async(stream, None, self.load_ready, callback, info) + else: + PixbufAnimation.new_from_stream_async(stream, None, self.load_ready, callback, info) +@@ -580,7 +581,7 @@ class KImage(Gtk.Widget, Gtk.Scrollable): + stream.close() + + try: +- if not info['is_animated']: ++ if not info['is_animated'] or not PIXBUF_ANIMATION: + pixbuf = Pixbuf.new_from_stream_finish(result) + + self.textures = [] +--- a/komikku/utils.py ++++ b/komikku/utils.py +@@ -36,6 +36,7 @@ from gi.repository import Gtk + from gi.repository.GdkPixbuf import Pixbuf + from gi.repository.GdkPixbuf import PixbufAnimation + ++from komikku.consts import PIXBUF_ANIMATION + from komikku.consts import REQUESTS_TIMEOUT + + logger = logging.getLogger('komikku') +@@ -615,7 +616,7 @@ class CoverLoader(GObject.GObject): + + try: + stream = Gio.MemoryInputStream.new_from_data(data, None) +- if info['is_animated'] and not static_animation: ++ if info['is_animated'] and not static_animation and PIXBUF_ANIMATION: + pixbuf = PixbufAnimation.new_from_stream(stream) + else: + pixbuf = Pixbuf.new_from_stream(stream) +@@ -634,7 +635,7 @@ class CoverLoader(GObject.GObject): + return None + + try: +- if info['is_animated'] and not static_animation: ++ if info['is_animated'] and not static_animation and PIXBUF_ANIMATION: + pixbuf = PixbufAnimation.new_from_file(path) + else: + pixbuf = Pixbuf.new_from_file(path) diff --git a/app-text/komikku/komikku-1.99.0.ebuild b/app-text/komikku/komikku-1.99.0.ebuild new file mode 100644 index 0000000000..1f714fbe62 --- /dev/null +++ b/app-text/komikku/komikku-1.99.0.ebuild @@ -0,0 +1,95 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{12..14} ) +PYTHON_REQ_USE="sqlite(+),ssl(+)" +DISTUTILS_USE_PEP517=no +DISTUTILS_SINGLE_IMPL=1 +inherit distutils-r1 meson gnome2-utils xdg + +DESCRIPTION="Manga reader for GNOME" +HOMEPAGE="https://apps.gnome.org/Komikku/" +SRC_URI="https://codeberg.org/valos/Komikku/archive/v${PV}.tar.gz -> ${P}.tar.gz" +S="${WORKDIR}/${PN}" + +LICENSE="CC0-1.0 CC-BY-4.0 GPL-3+ OFL-1.1" +SLOT="0" +KEYWORDS="~amd64" +IUSE="test" + +RESTRICT="test" +# Depend on a random server that may or may not be accessible. +#PROPERTIES="test_network" + +DEPEND=" + dev-libs/glib:2 + dev-libs/gobject-introspection + >=gui-libs/gtk-4.18:4 + >=gui-libs/libadwaita-1.8:1[introspection] + net-libs/webkit-gtk:6[introspection] +" +RDEPEND=" + ${DEPEND} + $(python_gen_cond_dep ' + >=app-arch/brotli-1.2.0[python,${PYTHON_USEDEP}] + dev-python/beautifulsoup4[${PYTHON_USEDEP}] + dev-python/modern-colorthief[${PYTHON_USEDEP}] + dev-python/cryptography[${PYTHON_USEDEP}] + dev-python/dateparser[${PYTHON_USEDEP}] + dev-python/emoji[${PYTHON_USEDEP}] + dev-python/keyring[${PYTHON_USEDEP}] + dev-python/lxml[${PYTHON_USEDEP}] + dev-python/natsort[${PYTHON_USEDEP}] + dev-python/piexif[${PYTHON_USEDEP}] + >=dev-python/pillow-11.3.0[${PYTHON_USEDEP}] + dev-python/pygobject[${PYTHON_USEDEP}] + >=dev-python/pyjwt-2.10.1[${PYTHON_USEDEP}] + >=dev-python/pypdf-6.4.2[${PYTHON_USEDEP}] + dev-python/python-magic[${PYTHON_USEDEP}] + dev-python/rarfile[compressed,${PYTHON_USEDEP}] + >=dev-python/requests-2.32.4[${PYTHON_USEDEP}] + dev-python/unidecode[${PYTHON_USEDEP}] + ') +" +BDEPEND=" + dev-util/blueprint-compiler + sys-devel/gettext +" + +PATCHES=( + # x11-libs/gdk-pixbuf-2.44.3 is not packaged yet + "${FILESDIR}/${P}-revert-pixbuf-2.44.3.patch" +) + +EPYTEST_PLUGINS=( pytest-steps ) +distutils_enable_tests pytest + +src_prepare() { + distutils-r1_src_prepare + + # fix broken shebang + sed "s|py_installation.full_path()|'${PYTHON}'|" -i bin/meson.build || die +} + +src_test() { + emake setup + emake develop + emake test +} + +src_install() { + meson_src_install + python_optimize +} + +pkg_postinst() { + gnome2_schemas_update + xdg_pkg_postinst +} + +pkg_postrm() { + gnome2_schemas_update + xdg_pkg_postrm +}
