Package Details: ttfautohint 1.8.4-3

Git Clone URL: https://aur.archlinux.org/ttfautohint.git (read-only, click to copy)
Package Base: ttfautohint
Description: Provides automated hinting process for web fonts
Upstream URL: http://www.freetype.org/ttfautohint
Licenses: GPL-2.0-only, FTL
Submitter: roentgen
Maintainer: supermario (alerque)
Last Packager: alerque
Votes: 32
Popularity: 0.004073
First Submitted: 2013-01-06 15:15 (UTC)
Last Updated: 2024-02-27 08:04 (UTC)

Pinned Comments

supermario commented on 2016-03-07 22:54 (UTC) (edited on 2017-04-18 23:29 (UTC) by supermario)

Please make sure that you import the pgp key before trying to build this package: gpg --keyserver pgp.mit.edu --recv-keys C1A60EACE707FDA5

Latest Comments

1 2 3 4 5 Next › Last »

gehidore commented on 2024-09-13 05:11 (UTC)

This builds fine on aarch64.

alerque commented on 2020-04-14 14:02 (UTC) (edited on 2020-04-30 14:18 (UTC) by alerque)

PSA: I've started hosting this as a prebuilt packages in my repository for those that want to install it using pacman without messing around with building from the AUR.

~~@supermario please consider adding me as a co-maintainer to this so I don't have to maintain a fork to build it properly!~~ (Done, thanks!)

alerque commented on 2020-04-14 13:58 (UTC)

Here is a patch you can apply by piping into git am (or pull it from my fork) which fixes the dependencies and uses the pre-packaged docs that are already in the release builds. I've also posted a VCS version of this package at ttfautohint-git that builds from source (including docs). This package should be modified as in the following patch to just be a package of the upstream stable source release. By the way, optdepends don't help with build-type dependencies!

From 23c995669ba72ec566ba2af6ca9aba5f3cae386d Mon Sep 17 00:00:00 2001
From: Caleb Maclennan <caleb@alerque.com>
Date: Tue, 14 Apr 2020 16:31:14 +0300
Subject: [PATCH] Overhaul packaging to use prebuilt docs and fix dependencies

Signed-off-by: Caleb Maclennan <caleb@alerque.com>
---
 .SRCINFO | 12 ++++--------
 PKGBUILD | 45 +++++++++++++++++++++++----------------------
 2 files changed, 27 insertions(+), 30 deletions(-)

diff --git a/.SRCINFO b/.SRCINFO
index f9db142..835d5a6 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,19 +1,15 @@
 pkgbase = ttfautohint
-   pkgdesc = Provides automated hinting process for web fonts.
+   pkgdesc = Provides automated hinting process for web fonts
    pkgver = 1.8.3
-   pkgrel = 1
-   url = http://www.freetype.org/ttfautohint/
+   pkgrel = 2
+   url = http://www.freetype.org/ttfautohint
    arch = i686
    arch = x86_64
    license = GPL
    license = custom
    depends = freetype2
+   depends = harfbuzz
    depends = qt5-base
-   depends = noto-fonts
-   depends = noto-fonts-alpha
-   optdepends = texlive-bin: generate docs
-   optdepends = pandoc: generate docs
-   optdepends = ghc: pandoc filter
    source = https://download.savannah.gnu.org/releases/freetype/ttfautohint-1.8.3.tar.gz
    source = https://download.savannah.gnu.org/releases/freetype/ttfautohint-1.8.3.tar.gz.sig
    validpgpkeys = 58E0C111E39F5408C5D3EC76C1A60EACE707FDA5
diff --git a/PKGBUILD b/PKGBUILD
index f07d03b..cfe3381 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,43 +1,44 @@
 # Maintainer: Mario Finelli <mario at finel dot li>
+# Contributor: Caleb Maclennan <caleb@alerque.com>
 # Contributor: Arthur Titeica <arthur dot titeica at gmail dot com>

 pkgname=ttfautohint
 pkgver=1.8.3
-pkgrel=1
-pkgdesc="Provides automated hinting process for web fonts."
+pkgrel=2
+pkgdesc='Provides automated hinting process for web fonts'
 arch=('i686' 'x86_64')
-url="http://www.freetype.org/ttfautohint/"
+url="http://www.freetype.org/$pkgname"
 license=('GPL' 'custom')
-depends=('freetype2' 'qt5-base' 'noto-fonts' 'noto-fonts-alpha')
-optdepends=('texlive-bin: generate docs'
-            'pandoc: generate docs'
-            'ghc: pandoc filter')
+depends=('freetype2' 'harfbuzz' 'qt5-base')
 source=(https://download.savannah.gnu.org/releases/freetype/$pkgname-$pkgver.tar.gz{,.sig})
 sha256sums=('87bb4932571ad57536a7cc20b31fd15bc68cb5429977eb43d903fa61617cf87e'
             'SKIP')
 validpgpkeys=('58E0C111E39F5408C5D3EC76C1A60EACE707FDA5')

 build() {
-  cd "$srcdir/$pkgname-$pkgver"
-  export QMAKE='/usr/bin/qmake'
-  export MOC='/usr/bin/moc'
-  export UIC='/usr/bin/uic'
-  export RCC='/usr/bin/rcc'
-  export TTFONTS='/usr/share/fonts/noto'
-  ./configure --prefix=/usr --with-qt=/usr/lib/qt \
-    --with-freetype-config="pkg-config freetype2"
-  make
+    cd "$pkgname-$pkgver"
+    export QMAKE='/usr/bin/qmake'
+    export MOC='/usr/bin/moc'
+    export UIC='/usr/bin/uic'
+    export RCC='/usr/bin/rcc'
+    export TTFONTS='/usr/share/fonts/noto'
+    ./configure \
+        --prefix=/usr \
+        --without-doc \
+        --with-qt=/usr/lib/qt \
+        --with-freetype-config="pkg-config freetype2"
+    make
 }

 check() {
-  cd "$srcdir/$pkgname-$pkgver"
+  cd "$pkgname-$pkgver"
   make -k check
 }

 package() {
-  cd "$srcdir/$pkgname-$pkgver"
-  make DESTDIR="$pkgdir/" install
-
-  install -Dm644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/COPYING"
-  install -Dm644 FTL.TXT "${pkgdir}/usr/share/licenses/${pkgname}/FTL.TXT"
+  cd "$pkgname-$pkgver"
+  make DESTDIR="$pkgdir" install
+  install -Dm644 -t "$pkgdir/usr/share/licenses/$pkgname/" COPYING FTL.TXT
+  install -Dm644 -t "$pkgdir/usr/share/doc/$pkgname/" "doc/$pkgname.pdf"
+  install -Dm644 -t "$pkgdir/usr/share/man/man1/" "frontend/$pkgname"{,GUI}.1
 }
-- 
2.26.0

alerque commented on 2020-04-14 12:59 (UTC)

The dependencies for this tool seems to be seriously messed up. There is no reason for this tool to be depending ot fonts (much less alpha versionns of fonts!) nor pandoc nor ghc nor texlive ... this should actually depend on freetype and harfbuzz.

Only building the git version would require pandoc (as well as inkscape, image magick, texlive, and more). The release version has the documentation already has the built documentation bundled in the download.

wbthomason commented on 2019-11-25 17:31 (UTC)

The "file truncated" failures arise because of multi-process make; for some reason, this project's Makefile setup fails if make is running more than one process in parallel. This can be fixed by specifying that make use a single process (e.g. by editing the PKGBUILD to have make -j 1, etc.)

I did also have to add the --without-doc flag to configure (as @undu mentions below) to avoid a separate error with the Makefile.