guix environment --container
是一个可以随时手搓容器环境的强大功能。
在使用中会遇到以下问题,并附带解决方案,如果有多种解决方案请补充。
容器内 glibc
的 locale
问题
-
在~guix environment –container~ 中加入以下选项:
例:
guix environment --container\ ... -E^LANG$\ -E^GUIX_LOCPATH$\ --ad-hoc glibc-utf8-locales\ ...
容器内 tls
的证书问题
-
在
guix environment --container
中加入以下选项:例:
guix environment --container\ ... --expose=/etc/ssl \ --ad-hoc nss-certs curl\ ...
提示:
加入curl包的原因是它会提供许多tls应用使用的环境变量
容器内访问容器外部的 wayland
会话
-
在
guix environment --container
中加入以下选项:例:
guix environment --container\ ... -E^XDG_RUNTIME_DIR$\ -E^WAYLAND_DISPLAY$\ --share=${XDG_RUNTIME_DIR}/${WAYLAND_DISPLAY}\ ...
容器内的字体问题
-
在~guix environment –container~ 中加入以下选项:
例:
guix environment --container\ ... --link-profile --ad-hoc fontconfig\ --ad-hoc font1\ --ad-hoc font2\ ...
警告:
请确保容器没有包括容器外的${HOME}/.guix-profile
容器内的gtk主题
-
在~guix environment –container~ 中加入以下选项:
例:
guix environment --container\ ... --expose=${HOME}/.gtkrc-2.0\ --expose=${HOME}/.config/gtk-3.0/settings.ini\ --ad-hoc gtk-theme1\ --ad-hoc gtk-theme2\ ... --ad-hoc icon-theme1\ --ad-hoc icon-theme2\ ...