summaryrefslogtreecommitdiff
path: root/nonguix
diff options
context:
space:
mode:
authorJohn Kehayias <john.kehayias@protonmail.com>2023-10-22 14:50:40 -0400
committerJohn Kehayias <john.kehayias@protonmail.com>2023-11-11 20:56:22 -0500
commitc398116f34d9a69281c55602217db590a8b5839d (patch)
tree43d3fd4ca65e954cf5a668515708e1c2eb4c6fb2 /nonguix
parentf89556c74c60762d1fad986b5dce9ac66463c109 (diff)
nonguix: multiarch-container: Make locale usable by pressure-vessel.
Steam's pressure-vessel startup time can be improved by not having to generate locales. So make sure locales are in and used by the pressure-vessel container by linking the expected location of /usr/lib/locale (presumably so that pressure-vessel will capture them) and setting $GUIX_LOCPATH. * nonguix/multiarch-container.scm (make-container-wrapper): Preserve and set GUIX_LOCPATH. (make-internal-script): Add symlink for /usr/lib/locale.
Diffstat (limited to 'nonguix')
-rw-r--r--nonguix/multiarch-container.scm10
1 files changed, 10 insertions, 0 deletions
diff --git a/nonguix/multiarch-container.scm b/nonguix/multiarch-container.scm
index 6c146cf..b333b71 100644
--- a/nonguix/multiarch-container.scm
+++ b/nonguix/multiarch-container.scm
@@ -260,6 +260,7 @@ in a sandboxed FHS environment."
"^DISPLAY$"
"^DRI_PRIME$"
"^GDK_SCALE$" ; For UI scaling.
+ "^GUIX_LOCPATH$" ; For pressure-vessel locales.
;; For startup of added non-Steam games as it
;; seems they start in an early environment
;; before our additional settings. (Likely
@@ -336,6 +337,11 @@ in a sandboxed FHS environment."
;; properly. It seems otherwise they don't make it to launching
;; Steam's pressure-vessel container (for Proton games).
(setenv "LD_LIBRARY_PATH" "/lib64:/lib")
+ ;; Set this so Steam's pressure-vessel container does not need to
+ ;; generate locales, improving startup time. This needs to be set to
+ ;; the "usual" path, probably so they are included in the
+ ;; pressure-vessel container.
+ (setenv "GUIX_LOCPATH" "/usr/lib/locale")
;; By default VDPAU drivers are searched for in libvdpau's store
;; path, so set this path to where the drivers will actually be
;; located in the container.
@@ -474,6 +480,7 @@ application."
'("/run/current-system/profile/etc"
"/run/current-system/profile/share"
"/sbin"
+ "/usr/lib"
"/usr/share/vulkan/icd.d"))
(for-each
new-symlink
@@ -491,6 +498,9 @@ application."
((,union64 "lib") . "/lib64")
((,union64 "lib") . "/run/current-system/profile/lib64")
((,union64 "lib/locale") . "/run/current-system/locale")
+ ;; Despite using GUIX_LOCPATH, stil need locales in their
+ ;; expected location for pressure-vessel to use them.
+ ((,union64 "lib/locale") . "/usr/lib/locale")
((,union64 "sbin/ldconfig") . "/sbin/ldconfig")
((,union64 "share/mime") . "/usr/share/mime") ; Steam tray icon.
((,union64 "share/drirc.d") . "/usr/share/drirc.d")