Bug 270135 - x11-fonts/py-cffsubr: Cannot find the embedded tx command
Summary: x11-fonts/py-cffsubr: Cannot find the embedded tx command
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Only Me
Assignee: Po-Chuan Hsieh
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2023-03-12 06:18 UTC by Ting-Wei Lan
Modified: 2023-04-18 18:10 UTC (History)
0 users

See Also:
bugzilla: maintainer-feedback? (sunpoet)


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Ting-Wei Lan 2023-03-12 06:18:15 UTC
I was trying to update my font-related ports in order to build the latest cantarell-fonts, but it failed due to missing /usr/local/lib/python3.9/site-packages/cffsubr/tx command.

$ ninja -j4 
[2/2] Generating src/cantarell-variable-font with a custom command
FAILED: src/Cantarell-VF.otf 
/usr/local/bin/python3 /home/lantw44/gnome/source/cantarell-fonts/scripts/make-variable-font.py ../../source/cantarell-fonts/src/Cantarell.designspace /home/lantw44/gnome/source/cantarell-fonts/src/Cantarell.stylespace /usr/local/bin/psautohint src/Cantarell-VF.otf
Traceback (most recent call last):
  File "/home/lantw44/gnome/source/cantarell-fonts/scripts/make-variable-font.py", line 64, in <module>
    cffsubr.subroutinize(varfont).save(output_path)
  File "/usr/local/lib/python3.9/site-packages/cffsubr/__init__.py", line 185, in subroutinize
    compressed_cff_data = _tx_subroutinize(otf_data, output_format)
  File "/usr/local/lib/python3.9/site-packages/cffsubr/__init__.py", line 108, in _tx_subroutinize
    result = _run_embedded_tx(*args, **kwargs)
  File "/usr/local/lib/python3.9/site-packages/cffsubr/__init__.py", line 63, in _run_embedded_tx
    with path(__name__, TX_EXE) as tx_cli:
  File "/usr/local/lib/python3.9/contextlib.py", line 119, in __enter__
    return next(self.gen)
  File "/usr/local/lib/python3.9/importlib/resources.py", line 175, in _path_from_reader
    opener_reader = reader.open_resource(norm_resource)
  File "<frozen importlib._bootstrap_external>", line 1055, in open_resource
FileNotFoundError: [Errno 2] No such file or directory: '/usr/local/lib/python3.9/site-packages/cffsubr/tx'
ninja: build stopped: subcommand failed.

It seems x11-fonts/afdko already installs a tx command. Can we ask x11-fonts/py-cffsubr to use it instead of the embedded one?
Comment 1 Po-Chuan Hsieh freebsd_committer freebsd_triage 2023-04-09 21:27:09 UTC
I could build x11-fonts/cantarell-fonts successfully. Since most of your ports are up-to-date, could you please try again? Also, please provide complete steps to reproduce the error if the problem persists.

I also remove the "Blocks" field now in order to close bug #270145.
Comment 2 Ting-Wei Lan 2023-04-10 13:01:04 UTC
(In reply to Po-Chuan Hsieh from comment #1)
The x11-fonts/cantarell-fonts port installs the prebuilt .otf files. To reproduce the issue, you have to build it from the source code.

$ git clone https://gitlab.gnome.org/GNOME/cantarell-fonts.git
正複製到 'cantarell-fonts'...
$ cd cantarell-fonts
$ mkdir _build
$ cd _build
$ meson setup ..
The Meson build system
Version: 1.0.1
Source dir: /tmp/lantw44/cantarell-fonts
Build dir: /tmp/lantw44/cantarell-fonts/_build
Build type: native build
Project name: cantarell-fonts
Project version: 0.303
Host machine cpu family: x86_64
Host machine cpu: x86_64
Program python3 found: YES (/usr/local/bin/python3)
Program psautohint found: YES (/usr/local/bin/psautohint)
Program msgfmt found: YES (/usr/local/bin/msgfmt)
Build targets in project: 2

Found ninja-1.11.1 at /usr/local/bin/ninja
$ ninja
[2/2] Generating src/cantarell-variable-font with a custom command
FAILED: src/Cantarell-VF.otf
Comment 3 Po-Chuan Hsieh freebsd_committer freebsd_triage 2023-04-18 18:10:11 UTC
Committed. Thanks!
Comment 4 commit-hook freebsd_committer freebsd_triage 2023-04-18 18:10:47 UTC
A commit in branch main references this bug:

URL: https://cgit.FreeBSD.org/ports/commit/?id=5f369cb4b991964caee14c0474a99e9b9a091752

commit 5f369cb4b991964caee14c0474a99e9b9a091752
Author:     Po-Chuan Hsieh <sunpoet@FreeBSD.org>
AuthorDate: 2023-04-18 17:59:34 +0000
Commit:     Po-Chuan Hsieh <sunpoet@FreeBSD.org>
CommitDate: 2023-04-18 18:05:14 +0000

    x11-fonts/py-cffsubr: Use tx from x11-fonts/afdko as embedded tx (built from external/afdko)

    - Update RUN_DEPENDS: afdko is already RUN_DEPENDS of py-afdko
    - Bump PORTREVISION for package change

    PR:             270135
    Reported by:    Ting-Wei Lan <lantw44@gmail.com>

 x11-fonts/py-cffsubr/Makefile | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)