字体打包指南 - Arch Linux 中文维基

跳转到内容

# 字体打包指南

来自 Arch Linux 中文维基
翻译状态：

- 本文（或部分内容）译自 Font package guidelines，最近一次同步于 2022-05-27，若英文版本有所更改，则您可以帮助同步与翻译更改的内容。
- 您可以在 ArchWiki 的对应页面找到本文翻译的原始修订历史。
- 本文可能与英文原文存在出入。

Arch 打包准则

32 位 – 安全 – CLR – CMake – DKMS – Eclipse – Electron – Free Pascal – GNOME – Go – Haskell – Java – 交叉编译工具 – KDE – Lisp – Meson – MinGW – 内核模块 – Node.js – Nonfree – OCaml – Perl – PHP – Python – R – Ruby – Rust – Shell – VCS – Web – Wine – 字体

本文档提供为字体撰写 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
- otf-commissionerAUR - OTF、TTF、可变三种包分离

## 参见

- 论坛讨论

分类：​

- Arch 打包准则

字体打包指南
添加话题