[PATCH] gnu: Add python-fontmake.

  • Open
  • quality assurance status badge
Details
3 participants
  • Hilton Chain
  • Maxim Cournoyer
  • Sergio Pastor Pérez
Owner
unassigned
Submitted by
Sergio Pastor Pérez
Severity
normal
S
S
Sergio Pastor Pérez wrote on 30 Jul 2023 17:35
(address . guix-patches@gnu.org)(name . Sergio Pastor Pérez)(address . sergio.pastorperez@outlook.es)
DU2P193MB2132166790F9B80DA520FE86F304A@DU2P193MB2132.EURP193.PROD.OUTLOOK.COM
* gnu/packages/fontutils.scm (python-fontmake): New variable.
---
gnu/packages/fontutils.scm | 25 +++++++++++++++++++++++++
1 file changed, 25 insertions(+)

Toggle diff (50 lines)
diff --git a/gnu/packages/fontutils.scm b/gnu/packages/fontutils.scm
index 153602b4b4..a9dafcba2b 100644
--- a/gnu/packages/fontutils.scm
+++ b/gnu/packages/fontutils.scm
@@ -510,6 +510,31 @@ (define-public python-ufo2ft
to generate OpenType font binaries from Unified Font Objects (UFOs).")
(license license:expat)))
+(define-public python-fontmake
+ (package
+ (name "python-fontmake")
+ (version "3.4.0")
+ (source (origin
+ (method url-fetch)
+ (uri (pypi-uri "fontmake" version ".zip"))
+ (sha256
+ (base32
+ "0fc5c9csjpy1aa4c03p7nvjgls5wjplhmmf42n0cmvrlh6cm7wl3"))))
+ (build-system python-build-system)
+ (propagated-inputs (list python-attrs
+ python-fontmath
+ python-fonttools-minimal
+ python-glyphslib
+ python-ufo2ft
+ python-ufolib2))
+ (native-inputs (list unzip python-setuptools-scm))
+ (home-page "https://github.com/googlei18n/fontmake")
+ (synopsis
+ "Compile fonts from sources (UFO, Glyphs) to binary (OpenType, TrueType)")
+ (description
+ "Fontmake compiles fonts from various sources (.glyphs, .ufo, designspace) into binaries (.otf, .ttf). You can use it to create static instances and variable fonts.")
+ (license license:asl2.0)))
+
(define-public python-fontmath
(package
(name "python-fontmath")

base-commit: c173819c8e5235ce02d60b79bd88b10023a7c614
prerequisite-patch-id: c56db9fa7fc4e07452dea53f2d450bd83abbbc1a
prerequisite-patch-id: 3e6318d61f2efa01f4435152f2139eef8f72572c
prerequisite-patch-id: 1b23c59bab92820a1e102137909922f4d71ed8f9
prerequisite-patch-id: 78a291411f8d86beabbf6d49df0cc78702ad4e65
prerequisite-patch-id: 579224b39cae7869ce11e2e8dba046b5eef606c7
prerequisite-patch-id: f1f62fd5d83d603ca35c17071e615352e90753e3
prerequisite-patch-id: 1843bca37f83e494be67c24e975727fb1fe1248c
prerequisite-patch-id: 5cc0d6cd16ae2ab21c444ed9cabfeea5615e8cda
prerequisite-patch-id: 92a3fab6e4174a4d4877fc5b426752df81e4df39
prerequisite-patch-id: ebf3fd3a8bb02f7dc5cdf504f63d5028b29fe69e
--
2.39.2
S
S
Sergio Pastor Pérez wrote on 30 Jul 2023 17:45
[PATCH vREVISION] gnu: Add python-fontmake.
(address . 64957@debbugs.gnu.org)(name . Sergio Pastor Pérez)(address . sergio.pastorperez@outlook.es)
DU2P193MB2132F9200C4E07100F136590F304A@DU2P193MB2132.EURP193.PROD.OUTLOOK.COM
* gnu/packages/fontutils.scm (python-fontmake): New variable.
---
Drop `python-` prefix since fontmake is not being used as a python library rather as a stand-alone application.

gnu/packages/fontutils.scm | 25 +++++++++++++++++++++++++
1 file changed, 25 insertions(+)

Toggle diff (50 lines)
diff --git a/gnu/packages/fontutils.scm b/gnu/packages/fontutils.scm
index 153602b4b4..98cf573d1e 100644
--- a/gnu/packages/fontutils.scm
+++ b/gnu/packages/fontutils.scm
@@ -776,6 +776,31 @@ (define-public psautohint-font-data
;; Code Pro, Source Serif Pro, all available under the same license.
(license license:silofl1.1)))))
+(define-public fontmake
+ (package
+ (name "fontmake")
+ (version "3.4.0")
+ (source (origin
+ (method url-fetch)
+ (uri (pypi-uri "fontmake" version ".zip"))
+ (sha256
+ (base32
+ "0fc5c9csjpy1aa4c03p7nvjgls5wjplhmmf42n0cmvrlh6cm7wl3"))))
+ (build-system python-build-system)
+ (propagated-inputs (list python-attrs
+ python-fontmath
+ python-fonttools-minimal
+ python-glyphslib
+ python-ufo2ft
+ python-ufolib2))
+ (native-inputs (list unzip python-setuptools-scm))
+ (home-page "https://github.com/googlei18n/fontmake")
+ (synopsis
+ "Compile fonts from sources (UFO, Glyphs) to binary (OpenType, TrueType)")
+ (description
+ "Fontmake compiles fonts from various sources (.glyphs, .ufo, designspace) into binaries (.otf, .ttf). You can use it to create static instances and variable fonts.")
+ (license license:asl2.0)))
+
(define-public psautohint
(package
(name "psautohint")

base-commit: c173819c8e5235ce02d60b79bd88b10023a7c614
prerequisite-patch-id: c56db9fa7fc4e07452dea53f2d450bd83abbbc1a
prerequisite-patch-id: 3e6318d61f2efa01f4435152f2139eef8f72572c
prerequisite-patch-id: 1b23c59bab92820a1e102137909922f4d71ed8f9
prerequisite-patch-id: 78a291411f8d86beabbf6d49df0cc78702ad4e65
prerequisite-patch-id: 579224b39cae7869ce11e2e8dba046b5eef606c7
prerequisite-patch-id: f1f62fd5d83d603ca35c17071e615352e90753e3
prerequisite-patch-id: 1843bca37f83e494be67c24e975727fb1fe1248c
prerequisite-patch-id: 5cc0d6cd16ae2ab21c444ed9cabfeea5615e8cda
prerequisite-patch-id: 92a3fab6e4174a4d4877fc5b426752df81e4df39
prerequisite-patch-id: ebf3fd3a8bb02f7dc5cdf504f63d5028b29fe69e
--
2.39.2
H
H
Hilton Chain wrote on 30 Jul 2023 20:06
(name . Sergio Pastor Pérez)(address . sergio.pastorperez@outlook.es)(address . 64957@debbugs.gnu.org)
<87o7jt1dh3.wl-hako@ultrarare.space> From: Hilton Chain <hako@ultrarare.space>
Hi Sergio,

On Sun, 30 Jul 2023 23:45:20 +0800,
Sergio Pastor Pérez wrote:
Toggle quote (4 lines)
>
> * gnu/packages/fontutils.scm (python-fontmake): New variable.
> ---

Please adjust the commit message as well.

Toggle quote (2 lines)
> + (version "3.4.0")

The latest version is 3.6.1, can you update the definition for it?

Toggle quote (3 lines)
> + (build-system python-build-system)
> + (propagated-inputs (list python-attrs

Please change the `propagated-inputs' field into `inputs'.

It's not necessary to propagate those inputs, as python-build-system
already wraps the final fontmake program to find them.

Toggle quote (5 lines)
> + (synopsis
> + "Compile fonts from sources (UFO, Glyphs) to binary (OpenType, TrueType)")
> + (description
> + "Fontmake compiles fonts from various sources (.glyphs, .ufo, designspace) into binaries (.otf, .ttf). You can use it to create static instances and variable fonts.")

There are some format issues, which could also be found by running
`./pre-inst-env guix lint fontmake' in your Guix checkout, I have
attatched the output below.

Toggle snippet (5 lines)
gnu/packages/fontutils.scm:535:5: fontmake@3.4.0: sentences in description should be followed by two spaces; possible infraction at 100
gnu/packages/fontutils.scm:535:0: fontmake@3.4.0: line 535 is way too long (171 characters)
gnu/packages/fontutils.scm:531:15: fontmake@3.4.0: permanent redirect from https://github.com/googlei18n/fontmake to https://github.com/googlefonts/fontmake

And... The REVISION in the `git send-email' part of the manual should
be replaced with a number, for example:

Toggle snippet (4 lines)
$ git send-email --annotate -v2 \
--to=ISSUE_NUMBER@debbugs.gnu.org -1

It's used in the [PATCH v...] part of the title.

Thanks
S
S
Sergio Pastor Pérez wrote on 31 Jul 2023 00:22
[PATCH v2] gnu: Add fontmake.
(address . 64957@debbugs.gnu.org)(name . Sergio Pastor Pérez)(address . sergio.pastorperez@outlook.es)
DU2P193MB21325E442346CEE15890963BF304A@DU2P193MB2132.EURP193.PROD.OUTLOOK.COM
* gnu/packages/fontutils.scm (fontmake): New variable.
---
Hi Hilton,

I've corrected the commit message and moved `propagated-inputs' to
`inputs'. Also, 'guix lint' does not issue any more warnings aside form the
version bump.

Regarding your concern for the version bump, its currently not possible to
update to `fontamke@3.6.1', this is blocked by the versions of the dependencies;
for example, the latest versions we have available on the official guix channel
of `python-glyphslib' is 6.0.7 and `fontmake@3.6.1' requires
`python-glyphslib@6.2.5'.

Thanks for your feedback.
Have a good night.

gnu/packages/fontutils.scm | 27 +++++++++++++++++++++++++++
1 file changed, 27 insertions(+)

Toggle diff (52 lines)
diff --git a/gnu/packages/fontutils.scm b/gnu/packages/fontutils.scm
index 153602b4b4..57a4b3d2af 100644
--- a/gnu/packages/fontutils.scm
+++ b/gnu/packages/fontutils.scm
@@ -776,6 +776,33 @@ (define-public psautohint-font-data
;; Code Pro, Source Serif Pro, all available under the same license.
(license license:silofl1.1)))))
+(define-public fontmake
+ (package
+ (name "fontmake")
+ (version "3.4.0")
+ (source (origin
+ (method url-fetch)
+ (uri (pypi-uri "fontmake" version ".zip"))
+ (sha256
+ (base32
+ "0fc5c9csjpy1aa4c03p7nvjgls5wjplhmmf42n0cmvrlh6cm7wl3"))))
+ (build-system python-build-system)
+ (inputs (list python-attrs
+ python-fontmath
+ python-fonttools-minimal
+ python-glyphslib
+ python-ufo2ft
+ python-ufolib2))
+ (native-inputs (list unzip python-setuptools-scm))
+ (home-page "https://github.com/googlefonts/fontmake")
+ (synopsis
+ "Compile fonts from sources (UFO, Glyphs) to binary (OpenType, TrueType)")
+ (description
+ "Fontmake compiles fonts from various sources (.glyphs, .ufo,designspace)
+into binaries (.otf, .ttf). You can use it to create static instances and
+variable fonts.")
+ (license license:asl2.0)))
+
(define-public psautohint
(package
(name "psautohint")

base-commit: c173819c8e5235ce02d60b79bd88b10023a7c614
prerequisite-patch-id: c56db9fa7fc4e07452dea53f2d450bd83abbbc1a
prerequisite-patch-id: 3e6318d61f2efa01f4435152f2139eef8f72572c
prerequisite-patch-id: 1b23c59bab92820a1e102137909922f4d71ed8f9
prerequisite-patch-id: 78a291411f8d86beabbf6d49df0cc78702ad4e65
prerequisite-patch-id: 579224b39cae7869ce11e2e8dba046b5eef606c7
prerequisite-patch-id: f1f62fd5d83d603ca35c17071e615352e90753e3
prerequisite-patch-id: 1843bca37f83e494be67c24e975727fb1fe1248c
prerequisite-patch-id: 5cc0d6cd16ae2ab21c444ed9cabfeea5615e8cda
prerequisite-patch-id: 92a3fab6e4174a4d4877fc5b426752df81e4df39
prerequisite-patch-id: ebf3fd3a8bb02f7dc5cdf504f63d5028b29fe69e
--
2.39.2
H
H
Hilton Chain wrote on 31 Jul 2023 09:25
(name . Sergio Pastor Pérez)(address . sergio.pastorperez@outlook.es)(address . 64957@debbugs.gnu.org)
871qgoa6fh.wl-hako@ultrarare.space
On Mon, 31 Jul 2023 06:22:17 +0800,
Sergio Pastor Pérez wrote:
Toggle quote (3 lines)
>
> * gnu/packages/fontutils.scm (fontmake): New variable.
> ---
[...]
Toggle quote (6 lines)
> Regarding your concern for the version bump, its currently not possible to
> update to `fontamke@3.6.1', this is blocked by the versions of the dependencies;
> for example, the latest versions we have available on the official guix channel
> of `python-glyphslib' is 6.0.7 and `fontmake@3.6.1' requires
> `python-glyphslib@6.2.5'.

Ah, I see. A newer python-ufolib2 is also required, which requires a
newer python-attrs. I'll look into updating python-attrs.

I'm not sure if an old version will be accepted, so you may have to
wait a bit. ;)

Toggle quote (7 lines)
> + (inputs (list python-attrs
> + python-fontmath
> + python-fonttools-minimal
> + python-glyphslib
> + python-ufo2ft
> + python-ufolib2))

Most of the dependencies here have been propagated by python-glyphslib
and its dependencies. It's sufficient to keeping only
`python-fontmath' and `python-glyphslib'.

But you can also keep them all if you prefer, in which case I'd
suggest replacing `python-fonttools-minimal' with `python-fonttools',
since the latter has been propagated by python-glyphslib.

Toggle quote (7 lines)
> + (synopsis
> + "Compile fonts from sources (UFO, Glyphs) to binary (OpenType, TrueType)")
> + (description
> + "Fontmake compiles fonts from various sources (.glyphs, .ufo,designspace)
> +into binaries (.otf, .ttf). You can use it to create static instances and
> +variable fonts.")

"@code{.glyphs}, @code{.ufo}, @code{designspace}" and so on.

How about changing "You can use it" to "It can be used" ?

Toggle quote (20 lines)
> + (license license:asl2.0)))
> +
> (define-public psautohint
> (package
> (name "psautohint")
>
> base-commit: c173819c8e5235ce02d60b79bd88b10023a7c614
> prerequisite-patch-id: c56db9fa7fc4e07452dea53f2d450bd83abbbc1a
> prerequisite-patch-id: 3e6318d61f2efa01f4435152f2139eef8f72572c
> prerequisite-patch-id: 1b23c59bab92820a1e102137909922f4d71ed8f9
> prerequisite-patch-id: 78a291411f8d86beabbf6d49df0cc78702ad4e65
> prerequisite-patch-id: 579224b39cae7869ce11e2e8dba046b5eef606c7
> prerequisite-patch-id: f1f62fd5d83d603ca35c17071e615352e90753e3
> prerequisite-patch-id: 1843bca37f83e494be67c24e975727fb1fe1248c
> prerequisite-patch-id: 5cc0d6cd16ae2ab21c444ed9cabfeea5615e8cda
> prerequisite-patch-id: 92a3fab6e4174a4d4877fc5b426752df81e4df39
> prerequisite-patch-id: ebf3fd3a8bb02f7dc5cdf504f63d5028b29fe69e
> --
> 2.39.2

Overall LGTM, except for the version thing.

Thanks
S
S
Sergio Pastor Pérez wrote on 31 Jul 2023 10:29
[PATCH v3] gnu: Add fontmake.
(address . 64957@debbugs.gnu.org)(name . Sergio Pastor Pérez)(address . sergio.pastorperez@outlook.es)
DU2P193MB2132B875AD4B8F9AF87277E5F305A@DU2P193MB2132.EURP193.PROD.OUTLOOK.COM
* gnu/packages/fontutils.scm (fontmake): New variable.
---
Good morning Hilton.

Here you have the changes applied. I've reduced the `inputs' field to
`python-fontmath' and `python-glyphslib'. Also, the personal sentence has been
changed to impersonal tense.

gnu/packages/fontutils.scm | 23 +++++++++++++++++++++++
1 file changed, 23 insertions(+)

Toggle diff (48 lines)
diff --git a/gnu/packages/fontutils.scm b/gnu/packages/fontutils.scm
index 153602b4b4..9a65538599 100644
--- a/gnu/packages/fontutils.scm
+++ b/gnu/packages/fontutils.scm
@@ -776,6 +776,29 @@ (define-public psautohint-font-data
;; Code Pro, Source Serif Pro, all available under the same license.
(license license:silofl1.1)))))
+(define-public fontmake
+ (package
+ (name "fontmake")
+ (version "3.4.0")
+ (source (origin
+ (method url-fetch)
+ (uri (pypi-uri "fontmake" version ".zip"))
+ (sha256
+ (base32
+ "0fc5c9csjpy1aa4c03p7nvjgls5wjplhmmf42n0cmvrlh6cm7wl3"))))
+ (build-system python-build-system)
+ (inputs (list python-fontmath
+ python-glyphslib))
+ (native-inputs (list unzip python-setuptools-scm))
+ (home-page "https://github.com/googlefonts/fontmake")
+ (synopsis
+ "Compile fonts from sources (UFO, Glyphs) to binary (OpenType, TrueType)")
+ (description
+ "Fontmake compiles fonts from various sources (.glyphs, .ufo,designspace)
+into binaries (.otf, .ttf). It can be used to create static instances and
+variable fonts.")
+ (license license:asl2.0)))
+
(define-public psautohint
(package
(name "psautohint")

base-commit: c173819c8e5235ce02d60b79bd88b10023a7c614
prerequisite-patch-id: c56db9fa7fc4e07452dea53f2d450bd83abbbc1a
prerequisite-patch-id: 3e6318d61f2efa01f4435152f2139eef8f72572c
prerequisite-patch-id: 1b23c59bab92820a1e102137909922f4d71ed8f9
prerequisite-patch-id: 78a291411f8d86beabbf6d49df0cc78702ad4e65
prerequisite-patch-id: 579224b39cae7869ce11e2e8dba046b5eef606c7
prerequisite-patch-id: f1f62fd5d83d603ca35c17071e615352e90753e3
prerequisite-patch-id: 1843bca37f83e494be67c24e975727fb1fe1248c
prerequisite-patch-id: 5cc0d6cd16ae2ab21c444ed9cabfeea5615e8cda
prerequisite-patch-id: 92a3fab6e4174a4d4877fc5b426752df81e4df39
prerequisite-patch-id: ebf3fd3a8bb02f7dc5cdf504f63d5028b29fe69e
--
2.39.2
H
H
Hilton Chain wrote on 31 Jul 2023 18:39
(name . Sergio Pastor Pérez)(address . sergio.pastorperez@outlook.es)(address . 64957@debbugs.gnu.org)
877cqgrq6e.wl-hako@ultrarare.space
On Mon, 31 Jul 2023 16:29:34 +0800,
Sergio Pastor Pérez wrote:
Toggle quote (44 lines)
>
> * gnu/packages/fontutils.scm (fontmake): New variable.
> ---
> Good morning Hilton.
>
> Here you have the changes applied. I've reduced the `inputs' field to
> `python-fontmath' and `python-glyphslib'. Also, the personal sentence has been
> changed to impersonal tense.
>
> gnu/packages/fontutils.scm | 23 +++++++++++++++++++++++
> 1 file changed, 23 insertions(+)
>
> diff --git a/gnu/packages/fontutils.scm b/gnu/packages/fontutils.scm
> index 153602b4b4..9a65538599 100644
> --- a/gnu/packages/fontutils.scm
> +++ b/gnu/packages/fontutils.scm
> @@ -776,6 +776,29 @@ (define-public psautohint-font-data
> ;; Code Pro, Source Serif Pro, all available under the same license.
> (license license:silofl1.1)))))
>
> +(define-public fontmake
> + (package
> + (name "fontmake")
> + (version "3.4.0")
> + (source (origin
> + (method url-fetch)
> + (uri (pypi-uri "fontmake" version ".zip"))
> + (sha256
> + (base32
> + "0fc5c9csjpy1aa4c03p7nvjgls5wjplhmmf42n0cmvrlh6cm7wl3"))))
> + (build-system python-build-system)
> + (inputs (list python-fontmath
> + python-glyphslib))
> + (native-inputs (list unzip python-setuptools-scm))
> + (home-page "https://github.com/googlefonts/fontmake")
> + (synopsis
> + "Compile fonts from sources (UFO, Glyphs) to binary (OpenType, TrueType)")
> + (description
> + "Fontmake compiles fonts from various sources (.glyphs, .ufo,designspace)
> +into binaries (.otf, .ttf). It can be used to create static instances and
> +variable fonts.")
> + (license license:asl2.0)))


I mentioned the description in V2, but you might not notice it.

Synopsis and description use TexInfo format and @code{...} can be seen
as `...` in Markdown, you can run `./pre-inst-env guix show fontmake'
to see if it's displayed correctly.

Toggle snippet (5 lines)
"Fontmake compiles fonts from various sources (@code{.glyphs}, @code{.ufo},
@code{designspace}) into binaries (@code{.otf}, @code{.ttf}). It can be used to
create static instances and variable fonts."

I have sent a patch to update python-attrs[1], I'll ping you once it's
available in master.

Thanks

S
S
Sergio Pastor Pérez wrote on 1 Aug 2023 09:05
[PATCH v4] gnu: Add fontmake.
(address . 64957@debbugs.gnu.org)(name . Sergio Pastor Pérez)(address . sergio.pastorperez@outlook.es)
DU2P193MB2132A3819110619AB4C45D77F30AA@DU2P193MB2132.EURP193.PROD.OUTLOOK.COM
* gnu/packages/fontutils.scm (fontmake): New variable.
---
Good morning Hilton,

I had missed the markdown suggestion from V2. Here you have the format
corrected. I will wait for the update of `python-attrs'.

Have a nice day.

gnu/packages/fontutils.scm | 22 ++++++++++++++++++++++
1 file changed, 22 insertions(+)

Toggle diff (47 lines)
diff --git a/gnu/packages/fontutils.scm b/gnu/packages/fontutils.scm
index 153602b4b4..3ee3dc76ab 100644
--- a/gnu/packages/fontutils.scm
+++ b/gnu/packages/fontutils.scm
@@ -776,6 +776,28 @@ (define-public psautohint-font-data
;; Code Pro, Source Serif Pro, all available under the same license.
(license license:silofl1.1)))))
+(define-public fontmake
+ (package
+ (name "fontmake")
+ (version "3.4.0")
+ (source (origin
+ (method url-fetch)
+ (uri (pypi-uri "fontmake" version ".zip"))
+ (sha256
+ (base32
+ "0fc5c9csjpy1aa4c03p7nvjgls5wjplhmmf42n0cmvrlh6cm7wl3"))))
+ (build-system python-build-system)
+ (inputs (list python-fontmath python-glyphslib))
+ (native-inputs (list unzip python-setuptools-scm))
+ (home-page "https://github.com/googlefonts/fontmake")
+ (synopsis
+ "Compile fonts from sources (UFO, Glyphs) to binary (OpenType, TrueType)")
+ (description
+ "Fontmake compiles fonts from various sources (@code{.glyphs}, @code{.ufo},
+@code{designspace}) into binaries (@code{.otf}, @code{.ttf}). It can be used to
+create static instances and variable fonts.")
+ (license license:asl2.0)))
+
(define-public psautohint
(package
(name "psautohint")

base-commit: 55e89da207b95230e5f2a8176acd9cc9b43971ff
prerequisite-patch-id: c56db9fa7fc4e07452dea53f2d450bd83abbbc1a
prerequisite-patch-id: 3e6318d61f2efa01f4435152f2139eef8f72572c
prerequisite-patch-id: 1b23c59bab92820a1e102137909922f4d71ed8f9
prerequisite-patch-id: 78a291411f8d86beabbf6d49df0cc78702ad4e65
prerequisite-patch-id: 579224b39cae7869ce11e2e8dba046b5eef606c7
prerequisite-patch-id: f1f62fd5d83d603ca35c17071e615352e90753e3
prerequisite-patch-id: 1843bca37f83e494be67c24e975727fb1fe1248c
prerequisite-patch-id: 5cc0d6cd16ae2ab21c444ed9cabfeea5615e8cda
prerequisite-patch-id: 92a3fab6e4174a4d4877fc5b426752df81e4df39
prerequisite-patch-id: ebf3fd3a8bb02f7dc5cdf504f63d5028b29fe69e
--
2.39.2
M
M
Maxim Cournoyer wrote on 6 Sep 2023 06:52
Re: bug#64957: [PATCH] gnu: Add python-fontmake.
(name . Sergio Pastor Pérez)(address . sergio.pastorperez@outlook.es)(address . 64957-done@debbugs.gnu.org)
87ledj9a4p.fsf_-_@gmail.com
Hi,

Sergio Pastor Pérez <sergio.pastorperez@outlook.es> writes:

Toggle quote (2 lines)
> * gnu/packages/fontutils.scm (fontmake): New variable.

Installed!

--
Thanks,
Maxim
Closed
M
M
Maxim Cournoyer wrote on 6 Sep 2023 07:25
(name . GNU bug Tracking System)(address . help-debbugs@gnu.org)
87pm2v7u10.fsf_-_@gmail.com
reopen 64957
quit

Hi,

[...]

Toggle quote (4 lines)
> Sergio Pastor Pérez <sergio.pastorperez@outlook.es> writes:
>
>> * gnu/packages/fontutils.scm (fontmake): New variable.

I spoke too soon; the tests do not appear to run. Here's an updated
package:

Toggle snippet (23 lines)
(define-public fontmake
(package
(name "fontmake")
(version "3.7.1")
(source (origin
(method url-fetch)
(uri (pypi-uri "fontmake" version ".zip"))
(sha256
(base32
"0ib7fvwgwazm7qfj4a3rkqkb40xfbj40rnvsmkvl2isg2ky3vg9m"))))
(build-system pyproject-build-system)
(inputs (list python-fontmath python-glyphslib))
(native-inputs (list unzip pytest python-setuptools-scm))
(home-page "https://github.com/googlefonts/fontmake")
(synopsis
"Compile fonts from sources (UFO, Glyphs) to binary (OpenType, TrueType)")
(description
"Fontmake compiles fonts from various sources (@code{.glyphs}, @code{.ufo},
@code{designspace}) into binaries (@code{.otf}, @code{.ttf}). It can be used to
create static instances and variable fonts.")
(license license:asl2.0)))

Unfortunately there are quite a few test failures to analyze. Would
you be motivated to do so? The end result would be a better package.

--
Thanks,
Maxim
S
S
Sergio Pastor Pérez wrote on 6 Sep 2023 19:22
(name . Maxim Cournoyer)(address . maxim.cournoyer@gmail.com)
DU2P193MB21325F3C497682AB0E922457F3EFA@DU2P193MB2132.EURP193.PROD.OUTLOOK.COM
Hi, again.

When I submitted the package I thought the checks where passing at least
it was building without errors for version 3.4.0. I see that you are
using another build system and you updated the version. I'm trying your
patch out and I see the failures during the check phase.

At first sight I would not know how to fix any of this. I'm not very
experienced with python in general. If I find the problem I will send an
updated revision.

Maxim Cournoyer <maxim.cournoyer@gmail.com> writes:

Toggle quote (40 lines)
> reopen 64957
> quit
>
> Hi,
>
> [...]
>
>> Sergio Pastor Pérez <sergio.pastorperez@outlook.es> writes:
>>
>>> * gnu/packages/fontutils.scm (fontmake): New variable.
>
> I spoke too soon; the tests do not appear to run. Here's an updated
> package:
>
> --8<---------------cut here---------------start------------->8---
> (define-public fontmake
> (package
> (name "fontmake")
> (version "3.7.1")
> (source (origin
> (method url-fetch)
> (uri (pypi-uri "fontmake" version ".zip"))
> (sha256
> (base32
> "0ib7fvwgwazm7qfj4a3rkqkb40xfbj40rnvsmkvl2isg2ky3vg9m"))))
> (build-system pyproject-build-system)
> (inputs (list python-fontmath python-glyphslib))
> (native-inputs (list unzip pytest python-setuptools-scm))
> (home-page "https://github.com/googlefonts/fontmake")
> (synopsis
> "Compile fonts from sources (UFO, Glyphs) to binary (OpenType, TrueType)")
> (description
> "Fontmake compiles fonts from various sources (@code{.glyphs}, @code{.ufo},
> @code{designspace}) into binaries (@code{.otf}, @code{.ttf}). It can be used to
> create static instances and variable fonts.")
> (license license:asl2.0)))
> --8<---------------cut here---------------end--------------->8---
>
> Unfortunately there are quite a few test failures to analyze. Would
> you be motivated to do so? The end result would be a better package.
M
M
Maxim Cournoyer wrote on 6 Sep 2023 20:36
control message for bug #64957
(address . control@debbugs.gnu.org)
87o7ifqhd2.fsf@gmail.com
reopen 64957
tags 64957 - fixed patch
quit
M
M
Maxim Cournoyer wrote on 6 Sep 2023 20:43
Re: bug#64957: [PATCH] gnu: Add python-fontmake.
(name . Sergio Pastor Pérez)(address . sergio.pastorperez@outlook.es)(address . 64957@debbugs.gnu.org)
87il8nqh0b.fsf@gmail.com
Hi Sergio,

Sergio Pastor Pérez <sergio.pastorperez@outlook.es> writes:

Toggle quote (11 lines)
> Hi, again.
>
> When I submitted the package I thought the checks where passing at least
> it was building without errors for version 3.4.0. I see that you are
> using another build system and you updated the version. I'm trying your
> patch out and I see the failures during the check phase.
>
> At first sight I would not know how to fix any of this. I'm not very
> experienced with python in general. If I find the problem I will send an
> updated revision.

It's common for the PyPI archives to lack the tests files and/or for the
old build system (python-build-system) to not successfully run the test
suite and report success (which is what happens with 3.4.0 it seems).
So the package was "building" fine, but that doesn't mean much for
Python since it's interpreted -- running the test suite is important.

Often looking at what upstream does in their CI (github workflow for
example) can provide cues. Or sometimes the test may try to access the
network. Or sometimes they embed paths such as '/bin/sh' in the middle
of a file. Or sometimes they need a writeable HOME, etc.

It's sometimes a bit of an effort to get the test suite going, but it's
what gives us confidence that it works well.

--
Thanks,
Maxim
?