Linux 平台将字体打包成 deb 安装包
ninehua 2025-01-21 20:28 15 浏览
在 Ubuntu (Debian 系)平台下,将字体打包成 deb 安装包,以方便下次,或者其它电脑使用。
以下以 wps-office-fonts 为例。
Linux 平台,安装 WPS 之后,每次打开都提示缺失某些字体:
系统缺失字体:Symbol、Wingdings、Wingdings 2、Wingdings 3、Webding、 MT Extra 无法正确地显示某些符号(公式)!
错误提示很明显,缺失了某些字体。所以,可以自行将上述缺失的字体打包成一个 deb 文件,以后每次都可直接安装该 deb 包即可。
相关代码已存储到开源仓库:wps-office-fonts · AtomGit_开放原子开源基金会代码托管平台,可自行拉取代码查看。
下面我们来解释一下打包字段的教程:
1. 创建目录结构
首先,创建一个新的目录来组织你的 .deb 包文件:
mkdir -p ~/wps-office-fonts/DEBIAN
mkdir -p ~/wps-office-fonts/usr/share/fonts/wps-office
2. 将字体文件放入 wps-office 目录
将你要打包的 .ttf 字体文件复制到 ~/wps-office-fonts/usr/share/fonts/wps-office/ 目录下。假设你的字体文件是 font1.ttf, font2.ttf 等:
wps-office
├── MTExtra.ttf
├── symbol.ttf
├── webdings.ttf
├── wingding.ttf
├── wingdng2.ttf
└── wingdng3.ttf
3. 创建 control 文件
在 DEBIAN 目录下,创建一个名为 control 的文件,描述软件包的基本信息:
nano ~/wps-office-fonts/DEBIAN/control
内容如下:
Package: wps-office-fonts
Version: 1.0
Architecture: all
Maintainer: Jetsung Chan <jetsungchan@gmail.com>
Description: Install fonts for WPS Office
Depends: fontconfig, xfonts-utils
Priority: optional
Section: fonts
4. 创建 postinst 安装脚本
postinst 脚本会在安装时自动执行,负责设置字体文件权限并刷新字体缓存:
nano ~/wps-office-fonts/DEBIAN/postinst
内容如下:
#!/bin/bash
# 设置字体文件权限
chmod -R 644 /usr/share/fonts/wps-office/*.ttf
# 创建字体目录
mkfontdir /usr/share/fonts/wps-office/
# 更新字体索引
mkfontscale /usr/share/fonts/wps-office/
# 刷新字体缓存
fc-cache -fv
exit 0
确保 postinst 脚本有执行权限:
chmod 755 ~/wps-office-fonts//DEBIAN/postinst
5. 创建 prerm 卸载脚本
prerm 脚本会在卸载时自动执行,负责删除字体文件并更新字体缓存:
nano ~/wps-office-fonts//DEBIAN/prerm
内容如下:
#!/bin/bash
# 删除字体文件
rm -f /usr/share/fonts/wps-office/*.ttf
# 刷新字体缓存
fc-cache -fv
exit 0
确保 prerm 脚本有执行权限:
chmod 755 ~/wps-office-fonts//DEBIAN/prerm
6. 构建 .deb 包
现在,使用 dpkg-deb 命令来构建 .deb 包:
dpkg-deb --build ~/wps-office-fonts
这将生成一个 wps-office-fonts.deb 文件,你可以将它安装到任何支持 .deb 包的系统上。
7. 安装和卸载测试
- 安装 .deb 包:
sudo dpkg -i ~/wps-office-fonts.deb
- 卸载 .deb 包:
sudo dpkg -r wps-office-fonts
最终目录结构
├── wps-office-fonts
│ ├── DEBIAN
│ │ ├── control
│ │ ├── postinst
│ │ └── prerm
│ └── usr
│ └── share
│ └── fonts
│ └── wps-office
│ ├── MTExtra.ttf
│ ├── symbol.ttf
│ ├── webdings.ttf
│ ├── wingding.ttf
│ ├── wingdng2.ttf
│ └── wingdng3.ttf
总结
- control 文件定义了包的基本信息。
- postinst 脚本在安装时执行,设置字体文件权限并刷新字体缓存。
- prerm 脚本在卸载时执行,删除字体文件并刷新字体缓存。
通过这种方式,你可以创建一个包含字体安装和卸载功能的 .deb 包,方便地在多个系统上安装和管理字体。
WPS Office 字体安装包下载地址:标签 · wps-office-fonts · AtomGit
相关推荐
- 从数字赋能看互联网新发展
-
来源:中国纪检监察报白墙黛瓦,小桥流水;数字为舟,创新赋能。11月23日上午,浙江乌镇,以“数字赋能共创未来——携手构建网络空间命运共同体”为主题的世界互联网大会·互联网发展论坛正式开幕,世界互联网...
- 高达98.46%就业率的土木工程专业,为何会遭某乎网友劝退?
-
在2012年时,因为政府部门下发的各种政策都促进了土木行业的发展,导致土木工程一下子就变成了热门专业,大量这学生都争着去报土木工程。可如今土木工程却成为了招人嫌弃的职业,如果你在网上咨询是否应该报土木...
- 数字化工厂设计与规划(126页)
-
写在前面(文中超链接仅在微信公众号‘智能制造之家’有效)...
- 吴奕良:勘察设计企业改革回顾与展望
-
世界正经历百年未有之大变局,面临国内外新的发展格局,我国工程勘察设计企业作为现代服务业的重要组成部分和经济社会发展的先导产业,必须满怀信念,坚定改革自信,进一步深化改革,加快企业转型升级,实现高质量发...
- 在书信往复中,看见师道传承、桃李芬芳
-
项目团队:光明日报记者李晓、张勇、张士英、常河、王斯敏编者按国将兴,必贵师而重傅。“各级党委和政府要满腔热情关心教师,让教师真正成为最受社会尊重和令人羡慕的职业,在全社会营造尊师重教的良好风尚”,在...
- 芯片自主可控深度解析
-
转载自丨SiP系统级封装技术作者丨SunyLi首先,什么叫自主可控,最直观的理解就是当别人“卡脖子”的时候不会被卡住。集成电路产业通常被分为芯片设计、芯片制造、封装测试三大领域,参看下图:我们逐一进...
- 人教版九年级(上)《旋转》数学试卷(低难度)
-
人教版九年级(上)《旋转》数学试卷(低难度)一.选择题(共48小题)1.如图,把△ABC绕点C逆时针旋转90°得到△DCE,若BE=17,AD...
- 深度|犀牛智造:探索未来制造之路
-
...
- 手没抖!EDA冠军
-
来源:人民日报客户端湖北频道在11月4日结束的EDA(电子设计自动化)领域的国际会议ICCAD2021(计算机辅助设计国际会议)上,华中科技大学计算机学院吕志鹏教授团队获得了CADContest布...
- 冬奥设计,一起向未来
-
˃国家速滑馆(“冰丝带”)外景˂pdata-track="2"class="syl-page-br"style...
- 斩获“卡脖子”领域世界冠军!这支华科战队全网刷屏,平均24岁
-
杨净博雯发自凹非寺量子位报道|公众号QbitAI...
- 工业软件行业深度报告:外企占据龙头地位,国产软件崛起正当时
-
(报告出品方/作者:首创证券,翟炜、李星锦)1、工业软件高行业景气1.1智能制造大势所趋,工业软件必不可缺...
- 国产CAD软件商向云南省提供免费授权
-
云南网讯(记者杨倩)近日,为贯彻落实省委、政府关于疫情防控和复工复产的部署,促进恢复生产生活正常秩序,经省委宣传部版权管理部门协商广州中望龙腾软件股份有限公司,在2020年6月1日前为全省免费提供中...
- 室内设计软装必备!精选50套国内外顶级大师软装搭配案例集锦
-
号外!号外!你们心心念念的福利来了~更多室内设计学习文章,资料,教程,软件,插件,方案,施工工艺材料等可以关注私信小编,不懂的地方,欢迎大家留意交流---领取方式:文章末尾...