![如何管理 Debian 打包中的帮助页面的翻译?](https://linux22.com/image/933420/%E5%A6%82%E4%BD%95%E7%AE%A1%E7%90%86%20Debian%20%E6%89%93%E5%8C%85%E4%B8%AD%E7%9A%84%E5%B8%AE%E5%8A%A9%E9%A1%B5%E9%9D%A2%E7%9A%84%E7%BF%BB%E8%AF%91%EF%BC%9F.png)
我正在尝试为上游源(尚未进行 Debian 打包)创建 Debian 包,并且想知道是否可以在 .deb 包中自动配置以新语言环境翻译的帮助页面。
要安装帮助页面,我们需要将 的内容复制source/help/C/
到 中/usr/share/help/C/packagename/
。我可以通过添加以下行来实现debian/install
help/C/* /usr/share/help/C/packagename/
如果添加了帮助页面的任何翻译,则还需要将其复制到任何区域设置source/help/LANG/
中。/usr/share/help/LANG/packagename/
LANG
debian/install
如何动态地实现这一点(使用通配符或类似的东西),以便我们在添加新语言环境的翻译时不必手动编辑?
debian/install
否则,每当有新语言的翻译可用时,我都必须手动添加一行。
答案1
一个想法是创建一个override_dh_install:
条目debian/rules
来处理它。我现在没有时间起草一个例子,但你可能想考虑一下。
编辑:
好的,这是我想到的以 diff 形式表示的方法:
diff -ru recipe.orig/debian/install recipe/debian/install
--- recipe.orig/debian/install 2021-01-11 20:08:08.000000000 +0100
+++ recipe/debian/install 2021-01-13 09:29:50.645316616 +0100
@@ -2,4 +2,3 @@
res/com.github.alexhuntley.Plots.svg /usr/share/icons/hicolor/scalable/apps/
res/com.github.alexhuntley.Plots-symbolic.svg /usr/share/icons/hicolor/symbolic/apps/
res/com.github.alexhuntley.Plots.metainfo.xml /usr/share/metainfo/
-help/C/* /usr/share/help/C/plots/
\ No newline at end of file
diff -ru recipe.orig/debian/rules recipe/debian/rules
--- recipe.orig/debian/rules 2021-01-13 09:27:58.952883958 +0100
+++ recipe/debian/rules 2021-01-13 09:25:00.736193794 +0100
@@ -6,3 +6,15 @@
%:
dh $@ --with python3 --buildsystem=pybuild
+
+override_dh_install:
+ dh_install
+ # install docs in available languages
+ cd help; \
+ for lang in `ls`; do \
+ cd $$lang; \
+ for doc in `ls`; do \
+ install -m 644 -D $$doc $(CURDIR)/debian/plots/usr/share/help/$$lang/plots/$$doc ; \
+ done; \
+ cd .. ; \
+ done