* [bug#74702] [PATCH 3/4] gnu: komikku: Update to 1.57.0.
2024-12-05 16:50 [bug#74702] [PATCH 0/4] Update komikku to 1.57.0 Liliana Marie Prikler
@ 2024-12-05 16:50 ` Liliana Marie Prikler
2024-12-09 0:31 ` Maxim Cournoyer
2024-12-05 16:50 ` [bug#74702] [PATCH 1/4] gnu: python-pillow: Update to 11.0.0 Liliana Marie Prikler
` (2 subsequent siblings)
3 siblings, 1 reply; 9+ messages in thread
From: Liliana Marie Prikler @ 2024-12-05 16:50 UTC (permalink / raw)
To: 74702; +Cc: Liliana Marie Prikler, Maxim Cournoyer, Vivien Kraus
* gnu/packages/gnome.scm (komikku): Update to 1.57.0.
[inputs]: Add python-pillow-heif.
[native-search-paths]: Add KOMIKKU_SERVERS_PATH.
---
gnu/packages/gnome.scm | 10 +++++++---
1 file changed, 7 insertions(+), 3 deletions(-)
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index 73b0b6b895..ae0e1f4783 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -13564,7 +13564,7 @@ (define-public gnome-builder
(define-public komikku
(package
(name "komikku")
- (version "1.46.0")
+ (version "1.57.0")
(source
(origin
(method git-fetch)
@@ -13574,7 +13574,7 @@ (define-public komikku
(file-name (git-file-name name version))
(sha256
(base32
- "1ggg4hgd1kyc69b06kcgvvjwmz72xgjakva19gs3nrszr4cinank"))))
+ "0z8sigv1a8a96y0hgm21j4qmpy06ziqw8yhlgbp8kbg70g5yhrbg"))))
(build-system meson-build-system)
(arguments
(list
@@ -13622,6 +13622,7 @@ (define-public komikku
python-natsort
python-piexif
python-pillow
+ python-pillow-heif
python-pure-protobuf
python-pycairo
python-pygobject
@@ -13641,7 +13642,10 @@ (define-public komikku
(synopsis "Manga reader for GNOME")
(description "Komikku is an online/offline manga reader for GNOME,
developed with the aim of being used with the Librem 5 phone.")
- (license license:gpl3+)))
+ (license license:gpl3+)
+ (native-search-paths (list (search-path-specification
+ (variable "KOMIKKU_SERVERS_PATH")
+ (files '("lib/komikku/servers")))))))
(define-public libgda
(package
--
2.46.0
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [bug#74702] [PATCH 1/4] gnu: python-pillow: Update to 11.0.0.
2024-12-05 16:50 [bug#74702] [PATCH 0/4] Update komikku to 1.57.0 Liliana Marie Prikler
2024-12-05 16:50 ` [bug#74702] [PATCH 3/4] gnu: komikku: Update " Liliana Marie Prikler
@ 2024-12-05 16:50 ` Liliana Marie Prikler
2024-12-05 16:50 ` [bug#74702] [PATCH 2/4] gnu: Add python-pillow-heif Liliana Marie Prikler
2024-12-05 16:50 ` [bug#74702] [PATCH 4/4] gnu: Add komikku-servers Liliana Marie Prikler
3 siblings, 0 replies; 9+ messages in thread
From: Liliana Marie Prikler @ 2024-12-05 16:50 UTC (permalink / raw)
To: 74702
Cc: Lars-Dominik Braun, Marius Bakke, Munyoki Kilyungi,
Sharlatan Hellseher, Tanguy Le Carrour, jgart
* gnu/packages/python-xyz.scm (python-pillow): Update to 11.0.0.
---
gnu/packages/python-xyz.scm | 25 +++++++++++++++----------
1 file changed, 15 insertions(+), 10 deletions(-)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index cba99cce62..e77c5f6b65 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -10388,20 +10388,25 @@ (define-public python-pikepdf
(define-public python-pillow
(package
(name "python-pillow")
- (version "9.2.0")
+ (version "11.0.0")
(source (origin
- (method url-fetch)
- (uri (pypi-uri "Pillow" version))
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/python-pillow/Pillow")
+ (commit version)))
+ (file-name (git-file-name "python-pillow" version))
(sha256
(base32
- "011wgm1mssjchpva9wsi2a07im9czyjvik137xlp5f0g7vykdrkm"))
- (modules '((guix build utils)))
+ "0ya68a5ymxc581laidc3qlzjs9l327fyzw0mgcb9fz4r1p66lqxx"))
+ (modules '((guix build utils)
+ (ice-9 ftw)))
(snippet '(begin
- (delete-file-recursively "src/thirdparty")))
- (patches
- (search-patches "python-pillow-CVE-2022-45199.patch"
- ;; Included in 10.1.0.
- "python-pillow-use-zlib-1.3.patch"))))
+ (let ((keep '("." ".." "pythoncapi_compat.h")))
+ (with-directory-excursion "src/thirdparty"
+ (for-each
+ (lambda (f) (unless (member f keep)
+ (delete-file-recursively f)))
+ (scandir "."))))))))
(build-system python-build-system)
(native-inputs (list python-pytest))
(inputs (list freetype
--
2.46.0
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [bug#74702] [PATCH 2/4] gnu: Add python-pillow-heif.
2024-12-05 16:50 [bug#74702] [PATCH 0/4] Update komikku to 1.57.0 Liliana Marie Prikler
2024-12-05 16:50 ` [bug#74702] [PATCH 3/4] gnu: komikku: Update " Liliana Marie Prikler
2024-12-05 16:50 ` [bug#74702] [PATCH 1/4] gnu: python-pillow: Update to 11.0.0 Liliana Marie Prikler
@ 2024-12-05 16:50 ` Liliana Marie Prikler
2024-12-05 16:50 ` [bug#74702] [PATCH 4/4] gnu: Add komikku-servers Liliana Marie Prikler
3 siblings, 0 replies; 9+ messages in thread
From: Liliana Marie Prikler @ 2024-12-05 16:50 UTC (permalink / raw)
To: 74702
Cc: Lars-Dominik Braun, Marius Bakke, Munyoki Kilyungi,
Sharlatan Hellseher, Tanguy Le Carrour, jgart
* gnu/packages/python-xyz.scm (python-pillow-heif): New variable.
---
gnu/packages/python-xyz.scm | 42 +++++++++++++++++++++++++++++++++++++
1 file changed, 42 insertions(+)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index e77c5f6b65..03852d2151 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -10445,6 +10445,48 @@ (define-public python-pillow
"http://www.pythonware.com/products/pil/license.htm"
"The PIL Software License"))))
+(define-public python-pillow-heif
+ (package
+ (name "python-pillow-heif")
+ (version "0.21.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "pillow_heif" version))
+ (sha256
+ (base32 "16xl2a51z4rjfy7y8vnn3w0ngcr1mr2sgsl9p7z62payy2zy3bh7"))))
+ (build-system pyproject-build-system)
+ (arguments
+ (list
+ #:test-flags
+ #~(list "-k" ; XXX: 10/12 bit tests fail
+ (string-append
+ "not test_save_bgr_16bit_to_10_12_bit"
+ " and not test_save_bgra_16bit_to_10_12_bit"
+ " and not test_open_heif_compare_non_standard_modes_data"
+ " and not test_open_save_disable_16bit"
+ " and not test_heif_read_images[image_path16]"
+ " and not test_heif_read_images[image_path43]"
+ " and not test_premultiplied_alpha"
+ " and not test_hdr_save"
+ " and not test_I_color_modes_to_10_12_bit"))))
+ (inputs (list libheif))
+ (propagated-inputs (list python-pillow))
+ (native-inputs (list opencv ; for opencv-python
+ python-coverage
+ python-defusedxml
+ python-numpy
+ python-packaging
+ python-pre-commit
+ python-pylint
+ python-pympler
+ python-pytest))
+ (home-page "https://github.com/bigcat88/pillow_heif")
+ (synopsis "Python interface for libheif library")
+ (description "This package provides Python bindings for the libheif library
+and a plugin for Pillow.")
+ (license license:bsd-3)))
+
(define-public python-pillow-2.9
(package
(inherit python-pillow)
--
2.46.0
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [bug#74702] [PATCH 4/4] gnu: Add komikku-servers.
2024-12-05 16:50 [bug#74702] [PATCH 0/4] Update komikku to 1.57.0 Liliana Marie Prikler
` (2 preceding siblings ...)
2024-12-05 16:50 ` [bug#74702] [PATCH 2/4] gnu: Add python-pillow-heif Liliana Marie Prikler
@ 2024-12-05 16:50 ` Liliana Marie Prikler
2024-12-09 0:37 ` Maxim Cournoyer
3 siblings, 1 reply; 9+ messages in thread
From: Liliana Marie Prikler @ 2024-12-05 16:50 UTC (permalink / raw)
To: 74702; +Cc: Liliana Marie Prikler, Maxim Cournoyer, Vivien Kraus
* gnu/packages/gnome.scm (komikku-servers): New variable.
---
gnu/packages/gnome.scm | 36 ++++++++++++++++++++++++++++++++++++
1 file changed, 36 insertions(+)
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index ae0e1f4783..3c89ab4054 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -233,6 +233,7 @@ (define-module (gnu packages gnome)
#:use-module (gnu artwork)
#:use-module (guix build-system cargo)
#:use-module (guix build-system cmake)
+ #:use-module (guix build-system copy)
#:use-module (guix build-system glib-or-gtk)
#:use-module (guix build-system gnu)
#:use-module (guix build-system meson)
@@ -13647,6 +13648,41 @@ (define-public komikku
(variable "KOMIKKU_SERVERS_PATH")
(files '("lib/komikku/servers")))))))
+(define-public komikku-servers
+ (package
+ (name "komikku-servers")
+ (version "1.59.0") ; latest version that works with 1.57
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://codeberg.org/valos/Komikku/")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0sfqmqcpdl3bsbs0wxl4jwvd7wpgigkvvasy1niz6qm2vnp35gzq"))))
+ (build-system copy-build-system)
+ (arguments
+ (list
+ #:install-plan
+ #~'(("komikku/servers" "lib/komikku/servers"))
+ #:modules '((guix build copy-build-system)
+ (guix build utils)
+ (ice-9 ftw))
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'delete-conflicting-files
+ (lambda _
+ (with-directory-excursion "komikku/servers"
+ (for-each delete-file
+ (scandir "."
+ (lambda (f) (string-suffix? ".py" f))))))))))
+ (home-page "https://apps.gnome.org/Komikku")
+ (synopsis "Servers for Komikku")
+ (description "This package provides more recent servers for Komikku.")
+ (license license:gpl3+)))
+
(define-public libgda
(package
(name "libgda")
--
2.46.0
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [bug#74702] [PATCH 4/4] gnu: Add komikku-servers.
2024-12-05 16:50 ` [bug#74702] [PATCH 4/4] gnu: Add komikku-servers Liliana Marie Prikler
@ 2024-12-09 0:37 ` Maxim Cournoyer
2024-12-10 19:54 ` Liliana Marie Prikler
0 siblings, 1 reply; 9+ messages in thread
From: Maxim Cournoyer @ 2024-12-09 0:37 UTC (permalink / raw)
To: Liliana Marie Prikler; +Cc: 74702, Vivien Kraus
Hello,
Liliana Marie Prikler <liliana.prikler@gmail.com> writes:
> * gnu/packages/gnome.scm (komikku-servers): New variable.
> ---
> gnu/packages/gnome.scm | 36 ++++++++++++++++++++++++++++++++++++
> 1 file changed, 36 insertions(+)
>
> diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
> index ae0e1f4783..3c89ab4054 100644
> --- a/gnu/packages/gnome.scm
> +++ b/gnu/packages/gnome.scm
> @@ -233,6 +233,7 @@ (define-module (gnu packages gnome)
> #:use-module (gnu artwork)
> #:use-module (guix build-system cargo)
> #:use-module (guix build-system cmake)
> + #:use-module (guix build-system copy)
> #:use-module (guix build-system glib-or-gtk)
> #:use-module (guix build-system gnu)
> #:use-module (guix build-system meson)
> @@ -13647,6 +13648,41 @@ (define-public komikku
> (variable "KOMIKKU_SERVERS_PATH")
> (files '("lib/komikku/servers")))))))
>
> +(define-public komikku-servers
> + (package
> + (name "komikku-servers")
> + (version "1.59.0") ; latest version that works with 1.57
Per our referenced Scheme coding style [0] in (info '(guix) Formatting
Code'), the space between ';' and the comment for inline comments can be
omitted (see the '** Comments' section).
[0] https://mumble.net/~campbell/scheme/style.txt
> + (source
> + (origin
> + (method git-fetch)
> + (uri (git-reference
> + (url "https://codeberg.org/valos/Komikku/")
> + (commit (string-append "v" version))))
> + (file-name (git-file-name name version))
> + (sha256
> + (base32
> + "0sfqmqcpdl3bsbs0wxl4jwvd7wpgigkvvasy1niz6qm2vnp35gzq"))))
> + (build-system copy-build-system)
> + (arguments
> + (list
> + #:install-plan
> + #~'(("komikku/servers" "lib/komikku/servers"))
> + #:modules '((guix build copy-build-system)
> + (guix build utils)
> + (ice-9 ftw))
> + #:phases
> + #~(modify-phases %standard-phases
> + (add-after 'unpack 'delete-conflicting-files
> + (lambda _
> + (with-directory-excursion "komikku/servers"
> + (for-each delete-file
> + (scandir "."
> + (lambda (f) (string-suffix? ".py" f))))))))))
Shouldn't these Python files be byte-compiled? You could perhaps use
the compile-bytecode phase from the pyproject-build-system to accomplish
that.
--
Thanks,
Maxim
^ permalink raw reply [flat|nested] 9+ messages in thread
* [bug#74702] [PATCH 4/4] gnu: Add komikku-servers.
2024-12-09 0:37 ` Maxim Cournoyer
@ 2024-12-10 19:54 ` Liliana Marie Prikler
2024-12-11 2:40 ` Maxim Cournoyer
0 siblings, 1 reply; 9+ messages in thread
From: Liliana Marie Prikler @ 2024-12-10 19:54 UTC (permalink / raw)
To: Maxim Cournoyer; +Cc: 74702, Vivien Kraus
Am Montag, dem 09.12.2024 um 09:37 +0900 schrieb Maxim Cournoyer:
> Hello,
>
> Liliana Marie Prikler <liliana.prikler@gmail.com> writes:
>
> > * gnu/packages/gnome.scm (komikku-servers): New variable.
> > ---
> > gnu/packages/gnome.scm | 36 ++++++++++++++++++++++++++++++++++++
> > 1 file changed, 36 insertions(+)
> >
> > diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
> > index ae0e1f4783..3c89ab4054 100644
> > --- a/gnu/packages/gnome.scm
> > +++ b/gnu/packages/gnome.scm
> > @@ -233,6 +233,7 @@ (define-module (gnu packages gnome)
> > #:use-module (gnu artwork)
> > #:use-module (guix build-system cargo)
> > #:use-module (guix build-system cmake)
> > + #:use-module (guix build-system copy)
> > #:use-module (guix build-system glib-or-gtk)
> > #:use-module (guix build-system gnu)
> > #:use-module (guix build-system meson)
> > @@ -13647,6 +13648,41 @@ (define-public komikku
> > (variable "KOMIKKU_SERVERS_PATH")
> > (files
> > '("lib/komikku/servers")))))))
> >
> > +(define-public komikku-servers
> > + (package
> > + (name "komikku-servers")
> > + (version "1.59.0") ; latest version that
> > works with 1.57
>
> Per our referenced Scheme coding style [0] in (info '(guix)
> Formatting Code'), the space between ';' and the comment for inline
> comments can be omitted (see the '** Comments' section).
>
> [0] https://mumble.net/~campbell/scheme/style.txt
I read this 'can' as optional and very much prefer my space :)
> > + (source
> > + (origin
> > + (method git-fetch)
> > + (uri (git-reference
> > + (url "https://codeberg.org/valos/Komikku/")
> > + (commit (string-append "v" version))))
> > + (file-name (git-file-name name version))
> > + (sha256
> > + (base32
> > +
> > "0sfqmqcpdl3bsbs0wxl4jwvd7wpgigkvvasy1niz6qm2vnp35gzq"))))
> > + (build-system copy-build-system)
> > + (arguments
> > + (list
> > + #:install-plan
> > + #~'(("komikku/servers" "lib/komikku/servers"))
> > + #:modules '((guix build copy-build-system)
> > + (guix build utils)
> > + (ice-9 ftw))
> > + #:phases
> > + #~(modify-phases %standard-phases
> > + (add-after 'unpack 'delete-conflicting-files
> > + (lambda _
> > + (with-directory-excursion "komikku/servers"
> > + (for-each delete-file
> > + (scandir "."
> > + (lambda (f) (string-suffix?
> > ".py" f))))))))))
>
> Shouldn't these Python files be byte-compiled? You could perhaps use
> the compile-bytecode phase from the pyproject-build-system to
> accomplish that.
I can't use it verbatim, since the install directory is different¹, but
I can copy it's logic, sure. Will do so for v2.
Cheers
¹ Komikku uses a custom module loader I once wrote that was upstreamed
some time ago, which means we can control the search path freely. I
chose a directory that does not rely on Python to avoid any potential
conflict here.
^ permalink raw reply [flat|nested] 9+ messages in thread
* [bug#74702] [PATCH 4/4] gnu: Add komikku-servers.
2024-12-10 19:54 ` Liliana Marie Prikler
@ 2024-12-11 2:40 ` Maxim Cournoyer
0 siblings, 0 replies; 9+ messages in thread
From: Maxim Cournoyer @ 2024-12-11 2:40 UTC (permalink / raw)
To: Liliana Marie Prikler; +Cc: 74702, Vivien Kraus
Hi,
Liliana Marie Prikler <liliana.prikler@gmail.com> writes:
[...]
>> > +(define-public komikku-servers
>> > + (package
>> > + (name "komikku-servers")
>> > + (version "1.59.0") ; latest version that
>> > works with 1.57
>>
>> Per our referenced Scheme coding style [0] in (info '(guix)
>> Formatting Code'), the space between ';' and the comment for inline
>> comments can be omitted (see the '** Comments' section).
>>
>> [0] https://mumble.net/~campbell/scheme/style.txt
> I read this 'can' as optional and very much prefer my space :)
It's indeed a 'can', but I value consistency enough that this errs on
the side of 'should' in my mind ;-).
[...]
>> > + #~(modify-phases %standard-phases
>> > + (add-after 'unpack 'delete-conflicting-files
>> > + (lambda _
>> > + (with-directory-excursion "komikku/servers"
>> > + (for-each delete-file
>> > + (scandir "."
>> > + (lambda (f) (string-suffix?
>> > ".py" f))))))))))
>>
>> Shouldn't these Python files be byte-compiled? You could perhaps use
>> the compile-bytecode phase from the pyproject-build-system to
>> accomplish that.
> I can't use it verbatim, since the install directory is different¹, but
> I can copy it's logic, sure. Will do so for v2.
OK. If it's too much boilerplate to copy-paste, feel free to ignore it.
It's probably not world-changing anyway.
--
Thanks,
Maxim
^ permalink raw reply [flat|nested] 9+ messages in thread