From e9f18b5ec3cebaf337af36aacc652f23466a64c7 Mon Sep 17 00:00:00 2001 From: kyehn Date: Mon, 1 Sep 2025 20:34:00 +0800 Subject: [PATCH 1/5] ttfautohint: 1.8.3 -> 1.8.4 --- pkgs/tools/misc/ttfautohint/default.nix | 31 +++++++++++-------------- pkgs/top-level/all-packages.nix | 2 +- 2 files changed, 15 insertions(+), 18 deletions(-) diff --git a/pkgs/tools/misc/ttfautohint/default.nix b/pkgs/tools/misc/ttfautohint/default.nix index a4fea24080fd..0b7f037b2d4f 100644 --- a/pkgs/tools/misc/ttfautohint/default.nix +++ b/pkgs/tools/misc/ttfautohint/default.nix @@ -4,49 +4,47 @@ fetchurl, pkg-config, autoreconfHook, + perl, freetype, harfbuzz, - libiconv, - qtbase, + libsForQt5, enableGUI ? true, }: stdenv.mkDerivation rec { - version = "1.8.3"; + version = "1.8.4"; pname = "ttfautohint"; src = fetchurl { url = "mirror://savannah/freetype/ttfautohint-${version}.tar.gz"; - sha256 = "0zpqgihn3yh3v51ynxwr8asqrijvs4gv686clwv7bm8sawr4kfw7"; + hash = "sha256-iodhF/puv9L/4bNoKpqYyALA9HGJ9X09tLmXdCBoMuE="; }; + postPatch = '' + echo "${version}" > VERSION + ''; + postAutoreconf = '' - substituteInPlace configure --replace "macx-g++" "macx-clang" + substituteInPlace configure --replace-fail "macx-g++" "macx-clang" ''; nativeBuildInputs = [ pkg-config autoreconfHook - ]; + perl + ] + ++ lib.optionals enableGUI [ libsForQt5.qt5.wrapQtAppsHook ]; buildInputs = [ freetype harfbuzz - libiconv ] - ++ lib.optional enableGUI qtbase; + ++ lib.optionals enableGUI [ libsForQt5.qt5.qtbase ]; - configureFlags = [ ''--with-qt=${if enableGUI then "${qtbase}/lib" else "no"}'' ]; - - # workaround https://github.com/NixOS/nixpkgs/issues/155458 - preBuild = lib.optionalString stdenv.cc.isClang '' - rm version - ''; + configureFlags = [ ''--with-qt=${if enableGUI then "${libsForQt5.qt5.qtbase}/lib" else "no"}'' ]; enableParallelBuilding = true; - dontWrapQtApps = true; - meta = with lib; { description = "Automatic hinter for TrueType fonts"; mainProgram = "ttfautohint"; @@ -61,5 +59,4 @@ stdenv.mkDerivation rec { maintainers = [ ]; platforms = platforms.unix; }; - } diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 0907b9121b65..3f6bab344044 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -4343,7 +4343,7 @@ with pkgs; trytond = with python3Packages; toPythonApplication trytond; - ttfautohint = libsForQt5.callPackage ../tools/misc/ttfautohint { }; + ttfautohint = callPackage ../tools/misc/ttfautohint { }; ttfautohint-nox = ttfautohint.override { enableGUI = false; }; twilight = callPackage ../tools/graphics/twilight { From 7d96b8d32d468d2524e10c9a91f9ec9eaf1bc161 Mon Sep 17 00:00:00 2001 From: kyehn Date: Mon, 1 Sep 2025 20:34:37 +0800 Subject: [PATCH 2/5] ttfautohint: remove with lib --- pkgs/tools/misc/ttfautohint/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/tools/misc/ttfautohint/default.nix b/pkgs/tools/misc/ttfautohint/default.nix index 0b7f037b2d4f..ff1c5d8d584c 100644 --- a/pkgs/tools/misc/ttfautohint/default.nix +++ b/pkgs/tools/misc/ttfautohint/default.nix @@ -45,7 +45,7 @@ stdenv.mkDerivation rec { enableParallelBuilding = true; - meta = with lib; { + meta = { description = "Automatic hinter for TrueType fonts"; mainProgram = "ttfautohint"; longDescription = '' @@ -55,8 +55,8 @@ stdenv.mkDerivation rec { information given by FreeType’s auto-hinting module. ''; homepage = "https://www.freetype.org/ttfautohint"; - license = licenses.gpl2Plus; # or the FreeType License (BSD + advertising clause) + license = lib.licenses.gpl2Plus; # or the FreeType License (BSD + advertising clause) maintainers = [ ]; - platforms = platforms.unix; + platforms = lib.platforms.unix; }; } From 51464d1789d8a497f24da04d25b24d2f381e8c46 Mon Sep 17 00:00:00 2001 From: kyehn Date: Mon, 1 Sep 2025 20:35:26 +0800 Subject: [PATCH 3/5] ttfautohint: use finalAttrs --- pkgs/tools/misc/ttfautohint/default.nix | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/tools/misc/ttfautohint/default.nix b/pkgs/tools/misc/ttfautohint/default.nix index ff1c5d8d584c..17ba9dff0415 100644 --- a/pkgs/tools/misc/ttfautohint/default.nix +++ b/pkgs/tools/misc/ttfautohint/default.nix @@ -11,17 +11,17 @@ enableGUI ? true, }: -stdenv.mkDerivation rec { +stdenv.mkDerivation (finalAttrs: { version = "1.8.4"; pname = "ttfautohint"; src = fetchurl { - url = "mirror://savannah/freetype/ttfautohint-${version}.tar.gz"; + url = "mirror://savannah/freetype/ttfautohint-${finalAttrs.version}.tar.gz"; hash = "sha256-iodhF/puv9L/4bNoKpqYyALA9HGJ9X09tLmXdCBoMuE="; }; postPatch = '' - echo "${version}" > VERSION + echo "${finalAttrs.version}" > VERSION ''; postAutoreconf = '' @@ -59,4 +59,4 @@ stdenv.mkDerivation rec { maintainers = [ ]; platforms = lib.platforms.unix; }; -} +}) From 515d7b64b3e5ec80e047d80926bed52742ef7a59 Mon Sep 17 00:00:00 2001 From: kyehn Date: Mon, 1 Sep 2025 22:30:30 +0800 Subject: [PATCH 4/5] ttfautohint: add --without-doc for without qt --- pkgs/tools/misc/ttfautohint/default.nix | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/pkgs/tools/misc/ttfautohint/default.nix b/pkgs/tools/misc/ttfautohint/default.nix index 17ba9dff0415..ae01868bb405 100644 --- a/pkgs/tools/misc/ttfautohint/default.nix +++ b/pkgs/tools/misc/ttfautohint/default.nix @@ -20,9 +20,13 @@ stdenv.mkDerivation (finalAttrs: { hash = "sha256-iodhF/puv9L/4bNoKpqYyALA9HGJ9X09tLmXdCBoMuE="; }; - postPatch = '' - echo "${finalAttrs.version}" > VERSION - ''; + postPatch = + lib.optionalString stdenv.hostPlatform.isLinux '' + echo "${finalAttrs.version}" > VERSION + '' + + lib.optionalString stdenv.hostPlatform.isDarwin '' + echo '#define VERSION "${finalAttrs.version}"' > version + ''; postAutoreconf = '' substituteInPlace configure --replace-fail "macx-g++" "macx-clang" @@ -41,7 +45,10 @@ stdenv.mkDerivation (finalAttrs: { ] ++ lib.optionals enableGUI [ libsForQt5.qt5.qtbase ]; - configureFlags = [ ''--with-qt=${if enableGUI then "${libsForQt5.qt5.qtbase}/lib" else "no"}'' ]; + configureFlags = [ + ''--with-qt=${if enableGUI then "${libsForQt5.qt5.qtbase}/lib" else "no"}'' + ] + ++ lib.optionals (!enableGUI) [ "--without-doc" ]; enableParallelBuilding = true; From c4da30519c76d136d2431cf90b427e9bd3fc10b1 Mon Sep 17 00:00:00 2001 From: kyehn Date: Tue, 2 Sep 2025 13:53:31 +0800 Subject: [PATCH 5/5] notonoto: fix --- pkgs/by-name/no/notonoto-35/package.nix | 6 ++++++ pkgs/by-name/no/notonoto-console/package.nix | 6 ++++++ pkgs/by-name/no/notonoto-hs-35/package.nix | 6 ++++++ pkgs/by-name/no/notonoto-hs-console/package.nix | 6 ++++++ pkgs/by-name/no/notonoto-hs/package.nix | 6 ++++++ pkgs/by-name/no/notonoto/package.nix | 6 ++++++ 6 files changed, 36 insertions(+) diff --git a/pkgs/by-name/no/notonoto-35/package.nix b/pkgs/by-name/no/notonoto-35/package.nix index b228769dad89..6afc7772cca9 100644 --- a/pkgs/by-name/no/notonoto-35/package.nix +++ b/pkgs/by-name/no/notonoto-35/package.nix @@ -26,6 +26,12 @@ stdenvNoCC.mkDerivation rec { hash = "sha256-1dbx4yC8gL41OEAE/LNDyoDb4xhAwV5h8oRmdlPULUo="; }; + # ttfautohint: unrecognized option '--epoch' + postPatch = '' + substituteInPlace fonttools_script.py \ + --replace-fail 'print("exec hinting", options_)' 'options_.pop("epoch", None)' + ''; + nativeBuildInputs = [ fontforge python3' diff --git a/pkgs/by-name/no/notonoto-console/package.nix b/pkgs/by-name/no/notonoto-console/package.nix index 5eff724b672a..af1ea65fa978 100644 --- a/pkgs/by-name/no/notonoto-console/package.nix +++ b/pkgs/by-name/no/notonoto-console/package.nix @@ -26,6 +26,12 @@ stdenvNoCC.mkDerivation rec { hash = "sha256-1dbx4yC8gL41OEAE/LNDyoDb4xhAwV5h8oRmdlPULUo="; }; + # ttfautohint: unrecognized option '--epoch' + postPatch = '' + substituteInPlace fonttools_script.py \ + --replace-fail 'print("exec hinting", options_)' 'options_.pop("epoch", None)' + ''; + nativeBuildInputs = [ fontforge python3' diff --git a/pkgs/by-name/no/notonoto-hs-35/package.nix b/pkgs/by-name/no/notonoto-hs-35/package.nix index 6a487c143a60..8c1075613ace 100644 --- a/pkgs/by-name/no/notonoto-hs-35/package.nix +++ b/pkgs/by-name/no/notonoto-hs-35/package.nix @@ -26,6 +26,12 @@ stdenvNoCC.mkDerivation rec { hash = "sha256-1dbx4yC8gL41OEAE/LNDyoDb4xhAwV5h8oRmdlPULUo="; }; + # ttfautohint: unrecognized option '--epoch' + postPatch = '' + substituteInPlace fonttools_script.py \ + --replace-fail 'print("exec hinting", options_)' 'options_.pop("epoch", None)' + ''; + nativeBuildInputs = [ fontforge python3' diff --git a/pkgs/by-name/no/notonoto-hs-console/package.nix b/pkgs/by-name/no/notonoto-hs-console/package.nix index 6394fdc6b842..0d43b7764482 100644 --- a/pkgs/by-name/no/notonoto-hs-console/package.nix +++ b/pkgs/by-name/no/notonoto-hs-console/package.nix @@ -26,6 +26,12 @@ stdenvNoCC.mkDerivation rec { hash = "sha256-1dbx4yC8gL41OEAE/LNDyoDb4xhAwV5h8oRmdlPULUo="; }; + # ttfautohint: unrecognized option '--epoch' + postPatch = '' + substituteInPlace fonttools_script.py \ + --replace-fail 'print("exec hinting", options_)' 'options_.pop("epoch", None)' + ''; + nativeBuildInputs = [ fontforge python3' diff --git a/pkgs/by-name/no/notonoto-hs/package.nix b/pkgs/by-name/no/notonoto-hs/package.nix index be1cbe466900..eb680d2da876 100644 --- a/pkgs/by-name/no/notonoto-hs/package.nix +++ b/pkgs/by-name/no/notonoto-hs/package.nix @@ -26,6 +26,12 @@ stdenvNoCC.mkDerivation rec { hash = "sha256-1dbx4yC8gL41OEAE/LNDyoDb4xhAwV5h8oRmdlPULUo="; }; + # ttfautohint: unrecognized option '--epoch' + postPatch = '' + substituteInPlace fonttools_script.py \ + --replace-fail 'print("exec hinting", options_)' 'options_.pop("epoch", None)' + ''; + nativeBuildInputs = [ fontforge python3' diff --git a/pkgs/by-name/no/notonoto/package.nix b/pkgs/by-name/no/notonoto/package.nix index 36ca284845c7..dcc5d175b8bc 100644 --- a/pkgs/by-name/no/notonoto/package.nix +++ b/pkgs/by-name/no/notonoto/package.nix @@ -26,6 +26,12 @@ stdenvNoCC.mkDerivation rec { hash = "sha256-1dbx4yC8gL41OEAE/LNDyoDb4xhAwV5h8oRmdlPULUo="; }; + # ttfautohint: unrecognized option '--epoch' + postPatch = '' + substituteInPlace fonttools_script.py \ + --replace-fail 'print("exec hinting", options_)' 'options_.pop("epoch", None)' + ''; + nativeBuildInputs = [ fontforge python3'