我正在构建一个基于 Ubuntu Frame 的信息亭,需要启动 Firefox 浏览器,但我还需要禁用 ctrl 键,因此我创建了一个似乎在 Firefox 之外运行良好的键盘布局。
我正在基于 Ubuntu Frame 构建一个信息亭,需要启动 Firefox 浏览器,但我还需要禁用 ctrl 键,因此我创建了一个键盘布局,该布局似乎在 Ubuntu Frame 之外工作正常,但在 Ubuntu Frame 内部却不行。我尝试使用 gsettings set org.gnome.desktop.input-sources sources \'[('xkb', 'tss_kiosk')]\' 设置键盘,但似乎不起作用。
我预计浏览器启动时 ctrl 键不起作用
背景。我正在将我的 Django 应用程序 docker 化。它所做的一件事是生成 xlsx 电子表格或 pdf 表示。该表由 openpyxl 生成,如果用户想要 PDF,则生成的
背景。我正在将我的 Django 应用程序 docker 化。它所做的一件事是生成 xlsx 电子表格或 pdf 表示。该表由 openpyxl 生成,如果用户想要 PDF,则通过使用 subprocess.run 转换生成的表以在无头模式下调用 Libreoffice
libreoffice --headless --convert-to pdf --outdir "$1" "$2"
所有这些都可以在我的开发服务器上完美运行,无需 Docker。
我的 Dockerfile 的顶部如下所示:
FROM ubuntu:24.04
RUN echo 'APT::Install-Suggests "0";' >> /etc/apt/apt.conf.d/00-docker
## RUN echo 'APT::Install-Recommends "0";' >> /etc/apt/apt.conf.d/00-docker
RUN DEBIAN_FRONTEND=noninteractive \
apt-get update \
&& apt-get install -y python3 python3-venv postgresql-client libreoffice-calc \
&& rm -rf /var/lib/apt/lists/*
我的理解是,这些 RUN echo
行告诉 apt-get 不要安装建议或推荐的软件包,以保持图像尺寸较小。如图所示,一切再次运行良好。
如果我取消注释 ## 行,一切都会正常运行, 但 Libreoffice 会在生成的 pdf 中插入一个列拆分,因此一个电子表格列位于第二页!
我选择了 Ubuntu 的 LTS 版本,因为它比较稳定(也因为我抄袭了示例)。我对 Fedora 和 DNF 更熟悉。无论如何,
p7
p8
p9
我怀疑这可能是系统语言环境问题,但 locale
两个版本打印的结果完全相同。出于猜测,我尝试 LC_PAPER=en_GB.utf8
在 libreoffice 转换命令中添加前缀,但无济于事。
事后想想,有没有一种简单的方法来检查 pdf 文件并确定它包含多少页,这样我就可以为这种不当行为编写测试?