From d3f91786b9fbba9b85ee2ba4aa0efe747ed3d50e Mon Sep 17 00:00:00 2001 From: Liliana Marie Prikler Date: Mon, 4 Aug 2025 09:08:54 +0200 Subject: [PATCH] gnu: komikku: Update to 1.72.0. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/patches/komikku-python-3.11-compat.patch: New file. * gnu/local.mk (dist_patch_DATA): Register it here. * gnu/packages/gnome.scm (komikku): Update to 1.72.0. [patches]: Use “komikku-python-3.11-compat.patch”. --- gnu/local.mk | 1 + gnu/packages/gnome.scm | 5 +- .../patches/komikku-python-3.11-compat.patch | 57 +++++++++++++++++++ 3 files changed, 61 insertions(+), 2 deletions(-) create mode 100644 gnu/packages/patches/komikku-python-3.11-compat.patch diff --git a/gnu/local.mk b/gnu/local.mk index 1fc24daae8b..1b927db3556 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1677,6 +1677,7 @@ dist_patch_DATA = \ %D%/packages/patches/json-c-0.12-CVE-2020-12762.patch \ %D%/packages/patches/julia-SOURCE_DATE_EPOCH-mtime.patch \ %D%/packages/patches/julia-Use-MPFR-4.2.patch \ + %D%/packages/patches/komikku-python-3.11-compat.patch \ %D%/packages/patches/libcall-ui-make-it-installable.patch \ %D%/packages/patches/libcamera-ipa_manager-disable-signature-verification.patch \ %D%/packages/patches/libconfuse-CVE-2022-40320.patch \ diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 9e3a641f07c..a45bb66441f 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -13818,7 +13818,7 @@ profiler via Sysprof, debugging support, and more.") (define-public komikku (package (name "komikku") - (version "1.57.0") + (version "1.72.0") (source (origin (method git-fetch) @@ -13828,7 +13828,8 @@ profiler via Sysprof, debugging support, and more.") (file-name (git-file-name name version)) (sha256 (base32 - "0z8sigv1a8a96y0hgm21j4qmpy06ziqw8yhlgbp8kbg70g5yhrbg")))) + "13mz3ijrmfh002pw977mzdnilgkfl0knr3xrxr0zdicx8nf7inr9")) + (patches (search-patches "komikku-python-3.11-compat.patch")))) (build-system meson-build-system) (arguments (list diff --git a/gnu/packages/patches/komikku-python-3.11-compat.patch b/gnu/packages/patches/komikku-python-3.11-compat.patch new file mode 100644 index 00000000000..cf129e8cd1d --- /dev/null +++ b/gnu/packages/patches/komikku-python-3.11-compat.patch @@ -0,0 +1,57 @@ +This patch fixes quote nesting in format strings in a way that's compatible with +Python 3.11. A larger cleanup patch [1] applies some of these hunks upstream. + +[1] https://codeberg.org/valos/Komikku/commit/e76766c6012d9d5c18c2c3bbaa7dfc11a6ee2d77 + +diff --git a/komikku/card/tracking.py b/komikku/card/tracking.py +index ce333780..76119e20 100644 +--- a/komikku/card/tracking.py ++++ b/komikku/card/tracking.py +@@ -279,7 +279,7 @@ class TrackerRow(Adw.ExpanderRow): + self.set_expanded(True) + self.set_arrow_visible(True) + self.btn.set_visible(False) +- self.action_row.set_title(f'{html_escape(data["name"])}') ++ self.action_row.set_title(f'{html_escape(data["name"])}') + + with self.chapters_progress_row.handler_block(self.num_chapter_changed_handler_id): + adj = Gtk.Adjustment( +-- +diff --git a/komikku/servers/mangalib/__init__.py b/komikku/servers/mangalib/__init__.py +index b631f617..c48c1cf2 100644 +--- a/komikku/servers/mangalib/__init__.py ++++ b/komikku/servers/mangalib/__init__.py +@@ -124,9 +124,9 @@ class Mangalib(Server): + for team in branch['teams']: + scanlators.append(team['name']) + + data['chapters'].append(dict( +- slug=f'v{chapter['volume']}/c{chapter['number']}', ++ slug=f'v{chapter["volume"]}/c{chapter["number"]}', + title=f'Том {chapter["volume"]} Глава {chapter["number"]} - {chapter["name"]}', + num=chapter['number'] if is_number(chapter['number']) else None, + num_volume=chapter['volume'] if is_number(chapter['volume']) else None, + date=convert_date_string(date, format='%Y-%m-%d') if date else None, +diff --git a/komikku/servers/perfscan/__init__.py b/komikku/servers/perfscan/__init__.py +index 8d77c131..ea9df5e4 100644 +--- a/komikku/servers/perfscan/__init__.py ++++ b/komikku/servers/perfscan/__init__.py +@@ -69,7 +69,7 @@ class Perfscan(Server): + )) + + data['name'] = resp_data['title'] +- data['cover'] = f'{self.media_url}/{resp_data['cover']}' ++ data['cover'] = f'{self.media_url}/resp_data["cover"]}' + + if resp_data.get('author'): + data['authors'].append(resp_data['author']) +@@ -95,7 +95,7 @@ class Perfscan(Server): + for chapter in resp_data.get('Chapter'): + title = chapter['title'].strip() + if title in (None, '', '-'): +- title = f'Chapitre {chapter['index']}' ++ title = f'Chapitre {chapter["index"]}' + + data['chapters'].append({ + 'slug': chapter['id'], +