字体打包指南

来自 Arch Linux 中文维基
Arch 打包准则

32 位CLRCMakeCrossDKMSEclipseElectronFontFree PascalGNOMEGoHaskellJavaKDE内核模块LispMesonMinGWNode.jsNonfreeOCamlPerlPHPPythonRRubyRustVCSWebWine

本文档提供为字体撰写 PKGBUILD 的建议规范。

通用指引[编辑 | 编辑源代码]

包命名[编辑 | 编辑源代码]

  • TTF 字体使用ttf-前缀。
  • OTF 字体使用otf-前缀。

若为可变字体,使用-variable后缀。

包名应使用全小写。

包描述[编辑 | 编辑源代码]

至少要表明它是一个字体,并注明字体类别:衬线体、非衬线体、等宽等。

架构[编辑 | 编辑源代码]

字体是与架构无关的。使用arch=(any)

依赖[编辑 | 编辑源代码]

字体没有依赖项。但是许多仓库里的包依赖于 fontconfigxorg-mkfontscale,这些依赖是以前字体包还需要使用安装脚本更新字体缓存时的历史遗留。现在可以用 pacman 钩子来完成这项工作。安装上述两个包时,/usr/share/fonts/下的所有字体都会被缓存,因此无需再强制使用 fontconfig 或 mkfontscale。

提供[编辑 | 编辑源代码]

许多应用依赖于虚拟包ttf-font。若你的字体家族满足该页面的要求,可添加provides=('ttf-font')

来源[编辑 | 编辑源代码]

可按下列顺序查询:

以下来源不推荐:

  • FontSpace(校验码因不明原因变动)

打包[编辑 | 编辑源代码]

下列片段是以 OFL(SIL Open Font License)授权的 OTF 字体的示例片段:

license=('OFL')
...
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/[包名]
  • 若有许多个文件,目标目录名可考虑使用包名而非OTF

示例包[编辑 | 编辑源代码]

参见[编辑 | 编辑源代码]