字体软件包指南

来自 ArchWiki
Arch 软件包指南

32 位CLRCMakeCrossDKMSEclipseElectronFontFree PascalGNOMEGoHaskellJavaKDEKernel modulesLispMesonMinGWNode.jsNonfreeOCamlPerlPHPPythonRRubyRust - SecurityShellVCSWebWine

本文档涵盖了关于为字体编写 PKGBUILD 的建议标准和指南。

通用指南

软件包命名

  • TTF 字体:ttf-字体名称
  • OTF 字体:otf-字体名称

如果字体是可变字体,请添加后缀 -variable

注意
  • 软件包名称应全部为小写。
  • 最终,字体软件包命名没有硬性规定,这些只是指南。通常,软件包命名遵循上游。另请参阅 FS#77425

软件包描述

软件包描述应至少包含“字体”一词,以及字体类型:sans-serif、serif 或 monospace。

架构

字体是独立于架构的。使用 arch=(any)

依赖

字体不依赖于任何东西。然而,仓库中的许多软件包都包含 fontconfigxorg-mkfontscale 作为依赖项。当字体软件包需要使用安装脚本来更新字体缓存时,这些是必需的 —— 现在 pacman hooks 完成了大量重复工作。如果您安装 fontconfig 或 xorg-mkfontscale,/usr/share/fonts/ 中的所有现有字体都将被缓存,从而无需强制人们使用 fontconfig 或 mkfontscale。

提供的包

许多应用程序依赖于虚拟软件包 ttf-font。如果您的字体系列符合标准,请添加 provides=('ttf-font')

来源

按照以下顺序查看字体是否可从以下来源获得

不推荐以下网站

软件包

以下代码段是一个 OTF 字体的示例,该字体根据 SIL Open Font License 1.1 with Reserved Font Name 发布。

license=('OFL-1.1-RFN')
...
package() {
  install -Dm644 -t "$pkgdir/usr/share/fonts/OTF" "path/to/font/*.otf"
  install -Dm644 -t "$pkgdir/usr/share/licenses/$pkgname" "path/to/license/OFL.txt"
}
  • 从技术上讲,OFL 是一种 自定义许可证,因此每个字体软件包的许可证文件都需要安装在 /usr/share/licenses/$pkgname 下。
  • 如果字体包含许多字体文件,请考虑使用 $pkgname 而不是 OTF 作为目标目录。

示例软件包

参见