我正在尝试使用“无头”vnc 会话启动并运行 xfce4(版本 4.12)法语环境码头工人形象。
如果我逐字使用原始版本并通过类似的方式安装法语语言环境
apt-get update && \
apt-get install -y locales && \
sed -i -e 's/# fr_FR.UTF-8 UTF-8/fr_FR.UTF-8 UTF-8/' /etc/locale.gen && \
locale-gen && \
dpkg-reconfigure --frontend=noninteractive locales
接下来设置环境变量就可以了,我可以得到菜单法语
但是,如果我尝试与 a 完全相同,FROM ubuntu:18.04
我会得到 UI 的某些部分不是法语。
我可能会遗漏一些明显的东西,因为我对这些环境还很陌生。在搜索论坛和问题时,我找不到与我的问题相关的任何内容,因此感谢任何帮助或建议。
下面是 ubuntu 16 和 ubuntu 18 上的法语 UI 图片
答案1
注释第 42 行,然后将以下行附加到Dockerfile
= Dockerfile.ubuntu.xfce.vnc
:
# ENV LANG='en_US.UTF-8' LANGUAGE='en_US:en' LC_ALL='en_US.UTF-8'
RUN apt-get update \
&& apt -y install language-pack-fr \
&& apt -y install thunar-data \
&& DEBIAN_FRONTEND=noninteractive apt-get install -y locales \
&& locale-gen fr_FR.UTF-8 \
&& dpkg-reconfigure --frontend=noninteractive locales \
&& update-locale LANG=fr_FR.UTF-8
ENV LANG fr_FR.UTF-8
ENV LC_ALL fr_FR.UTF-8
然后运行:
docker build -f Dockerfile.ubuntu.xfce.vnc .
检查它(使用docker image ls
):
docker run <id latest created image here> locale
启动 Thunar:LANG=fr_FR.utf-8 thunar
答案2
不是完整的答案,而是更多的解决方法。我能够通过mo
从该应用程序的 ubuntu 16 版本中获取文件并将其放入/usr/share/locale/fr/LC_MESSAGES
或中来将 Thunar 转换为法语/usr/share/locale-langpack/fr/LC_MESSAGES
如果您希望本地化其他应用程序,那么我发现的方法是使用相应的应用程序po
文件,然后运行msgfmt fr.po -o applicationname.mo
例如我们以 Thunar 为例
- 从他们的 gitlab 项目获取 PO 文件https://gitlab.xfce.org/xfce/thunar
msgfmt fr.po -o Thunar.mo
在控制台中运行您获得的文件- 复制并粘贴
Thunar.mo
到/usr/share/locale/fr/LC_MESSAGES
或/usr/share/locale-langpack/fr/LC_MESSAGES
(我通常使用第一个选项,但在我的另一个设置中它似乎有效)
万岁,我们在 XFCE 上的 Ubuntu 18 上有法语版的 Thunar
*请注意,当我尝试使用猴面包树之类的东西时,我还需要拥有language-pack-gnome-fr
并可能language-pack-fr-base
安装,因此您可能也需要这些。