Font package guidelines (简体中文) - ArchWiki

Jump to content

# Font package guidelines (简体中文)

From ArchWiki
翻译状态：本文是 Font package guidelines 的翻译。上次翻译日期：2022-05-27。如果英文版本有所更改，则您可以帮助同步翻译。

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

## 通用指引

### 包命名

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

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

包名应使用全小写。

### 包描述

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

### 架构

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

### 依赖

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

### 提供

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

### 来源

可按下列顺序查询：

- 官方网站，或某个如 GitHub 的托管平台
- Google Fonts: `https://fonts.google.com/download?family=Name`
- Font Squirrel、Font Library、FFonts、1001 Fonts、 DaFont

以下来源不推荐：

- 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`。

## 示例包

- ttf-merriweather-sansAUR
- commissioner-fontAUR - OTF、TTF、可变三种包分离

## 参见

- 论坛讨论

Category:

- Arch package guidelines (简体中文)