Font package guidelines

This document covers proposed standards and guidelines on writing PKGBUILDs for Fonts.

Arch package guidelines

32-bitCLRCMakeCrossDKMSEclipseElectronFontFree PascalGNOMEGoHaskellJavaKDEKernelLispMesonMinGWNode.jsNonfreeOCamlPerlPHPPythonRRubyRustShellVCSWebWine

General guidelines

Package naming

  • TTF fonts: ttf-fontname
  • OTF fonts: otf-fontname

If the font is a variable font, add the suffix -variable.

Note: The package name should be entirely lowercase.

Package description

The package description should at least contain the word font and what type of font it is: sans-serif, serif or monospace.


Fonts are architecture-independent. Use arch=(any).


Fonts do not depend on anything. Many packages in the repositories, however, include fontconfig and xorg-mkfontscale as dependecies. Those were required when font packages needed to use install scripts to update the font cache – a lot of duplicate work now done by pacman hooks. If you install fontconfig or xorg-mkfontscale, all existing fonts in /usr/share/fonts/ will be cached making it unnecessary to force people to use fontconfig or mkfontscale.


Many applications rely on the virtual package . If your font family meets the criteria, add .


See whether a font is available from the following sources in this order:

The following sites are not recommended:

  • FontSpace (checksums change for unknown reasons)


The following snippet is an example for an OTF font released under the OFL (SIL Open Font License):

  • The OFL is technically a custom license, so each font package's license file needs to be installed under .
  • If the font contains many font files, consider using instead of OTF for the destination directory.

Example packages

  • – split package with OTF, TTF and variable version

See also

This article is issued from Archlinux. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.