diff options
author | Sergei Trofimovich <slyfox@gentoo.org> | 2020-06-14 14:24:27 +0100 |
---|---|---|
committer | Sergei Trofimovich <slyfox@gentoo.org> | 2020-06-14 14:29:32 +0100 |
commit | e863a522b0d023696bbe3cd5b41268e7c0acad71 (patch) | |
tree | 22c5ecd05c837b30510f817beccbdcc817bbc7dc /media-fonts/terminus-font | |
parent | dev-libs/libgnt: Added dev-util/glib-utils to BDEPEND (diff) | |
download | gentoo-e863a522b0d023696bbe3cd5b41268e7c0acad71.tar.gz gentoo-e863a522b0d023696bbe3cd5b41268e7c0acad71.tar.bz2 gentoo-e863a522b0d023696bbe3cd5b41268e7c0acad71.zip |
media-fonts/terminus-font: install OpenType fonts with USE=otf
Reported-by: Sergey 'L29Ah' Alirzaev
Closes: https://bugs.gentoo.org/717206
Package-Manager: Portage-2.3.100, Repoman-2.3.22
Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
Diffstat (limited to 'media-fonts/terminus-font')
-rw-r--r-- | media-fonts/terminus-font/metadata.xml | 3 | ||||
-rw-r--r-- | media-fonts/terminus-font/terminus-font-4.48-r1.ebuild | 101 |
2 files changed, 104 insertions, 0 deletions
diff --git a/media-fonts/terminus-font/metadata.xml b/media-fonts/terminus-font/metadata.xml index 0dd408f312e3..9afbac8f221b 100644 --- a/media-fonts/terminus-font/metadata.xml +++ b/media-fonts/terminus-font/metadata.xml @@ -12,6 +12,9 @@ <flag name="distinct-l"> ll2 variant with more distinctive l (lowercase L) </flag> + <flag name="otf"> + Install Open Type Font (OTF) (required for HarfBuzz backend) + </flag> <flag name="pcf"> Install Portable Compiled Font (PCF) (required for X11) </flag> diff --git a/media-fonts/terminus-font/terminus-font-4.48-r1.ebuild b/media-fonts/terminus-font/terminus-font-4.48-r1.ebuild new file mode 100644 index 000000000000..33ff968ebb85 --- /dev/null +++ b/media-fonts/terminus-font/terminus-font-4.48-r1.ebuild @@ -0,0 +1,101 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +PYTHON_COMPAT=( python3_{6,7,8} ) +inherit font python-any-r1 + +DESCRIPTION="A clean fixed font for the console and X11" +HOMEPAGE="http://terminus-font.sourceforge.net/" +SRC_URI="mirror://sourceforge/${PN}/${P}/${P}.tar.gz" + +LICENSE="OFL-1.1 GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos" +IUSE="a-like-o +center-tilde distinct-l otf +pcf +pcf-unicode-only +psf quote + ru-dv +ru-g ru-i ru-k" + +DEPEND="app-arch/gzip + ${PYTHON_DEPS} + virtual/awk + otf? ( x11-apps/fonttosfnt ) + pcf? ( x11-apps/bdftopcf )" +RDEPEND="" + +FONTDIR=/usr/share/fonts/terminus +FONT_CONF=( 75-yes-terminus.conf ) +DOCS=( README README-BG AUTHORS CHANGES ) + +REQUIRED_USE="X? ( pcf )" + +pkg_setup() { + python_setup +} + +src_prepare() { + default + + # Upstream patches. Some of them are suggested to be applied by default + # dv - de NOT like latin g, but like caps greek delta + # ve NOT like greek beta, but like caps latin B + # ge - ge NOT like "mirrored" latin s, but like caps greek gamma + # ka - small ka NOT like minimised caps latin K, but like small latin k + use a-like-o && eapply "${S}"/alt/ao2.diff + use center-tilde && eapply "${S}"/alt/td1.diff + use distinct-l && eapply "${S}"/alt/ll2.diff + use ru-i && eapply "${S}"/alt/ij1.diff + use ru-k && eapply "${S}"/alt/ka2.diff + use ru-dv && eapply "${S}"/alt/dv1.diff + use ru-g && eapply "${S}"/alt/ge2.diff + use quote && eapply "${S}"/alt/gq2.diff +} + +src_configure() { + local configure_args=( + --prefix="${EPREFIX}"/usr + --psfdir="${EPREFIX}"/usr/share/consolefonts + --x11dir="${EPREFIX}"/${FONTDIR} + ) + # selfwritten configure script + ./configure "${configure_args[@]}" || die +} + +src_compile() { + local args=( + $(usex psf 'psf psf-vgaw' '') + $(usex pcf 'pcf pcf-8bit' '') + ) + [[ ${#args[@]} -gt 0 ]] && emake "${args[@]}" + + # Follow https://fedoraproject.org/wiki/BitmapFontConversion#Steps: + # build ".otf" (bitmap-only) fonts out of .bdf ones + if use otf; then + # use unicode only bitmaps + fonttosfnt -v -b -c -g 2 -m 2 -o Terminus.otb ter-u*n.bdf || die + fonttosfnt -v -b -c -g 2 -m 2 -o Terminus-Bold.otb ter-u*b.bdf || die + fi +} + +src_install() { + local args=( + $(usex psf 'install-psf install-psf-vgaw install-psf-ref' '') + $(usex pcf 'install-pcf' '') + ) + # Set the CHECKDIR to a dummy location so we always get the same set of + # files installed regardless of what is in / or ROOT or wherever. + [[ ${#args[@]} -gt 0 ]] && emake DESTDIR="${D}" CHECKDIR="${D}" "${args[@]}" + + # Remove trans files that the kbd package takes care of installing. + rm -f "${ED}"/usr/share/consoletrans/*.trans + + if use pcf-unicode-only; then + # Only the ter-x* fonts are unicode (ISO-10646-1) based + rm -f "${ED}"/usr/share/fonts/terminus/ter-[0-9a-wy-z]* || die + fi + + use otf && FONT_SUFFIX=otb + font_src_install + + einstalldocs +} |