awesome: Use --search instead of $LUA_PATH/$LUA_CPATH

Instead of polluting the environment with environment variables which
are inherited by processes spawned from awesome, use the command line
argument "--search" to add things to the search path.

cc #33169

Changed files
+8 -7
nixos
modules
services
x11
window-managers
pkgs
applications
window-managers
awesome
+6 -5
nixos/modules/services/x11/window-managers/awesome.nix
···
cfg = config.services.xserver.windowManager.awesome;
awesome = cfg.package;
-
inherit (pkgs.luaPackages) getLuaPath getLuaCPath;
in
{
···
{ name = "awesome";
start =
''
-
export LUA_CPATH="${lib.concatStringsSep ";" (map getLuaCPath cfg.luaModules)}"
-
export LUA_PATH="${lib.concatStringsSep ";" (map getLuaPath cfg.luaModules)}"
-
-
${awesome}/bin/awesome &
waitPID=$!
'';
};
···
cfg = config.services.xserver.windowManager.awesome;
awesome = cfg.package;
+
getLuaPath = lib : dir : "${lib}/${dir}/lua/${pkgs.luaPackages.lua.luaversion}";
+
makeSearchPath = lib.concatMapStrings (path:
+
" --search " + (getLuaPath path "share") +
+
" --search " + (getLuaPath path "lib")
+
);
in
{
···
{ name = "awesome";
start =
''
+
${awesome}/bin/awesome ${makeSearchPath cfg.luaModules} &
waitPID=$!
'';
};
+2 -2
pkgs/applications/window-managers/awesome/default.nix
···
postInstall = ''
wrapProgram $out/bin/awesome \
--set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
-
--prefix LUA_CPATH ";" '${lgi}/lib/lua/${lua.luaversion}/?.so' \
-
--prefix LUA_PATH ";" '${lgi}/share/lua/${lua.luaversion}/?.lua' \
--prefix GI_TYPELIB_PATH : "$GI_TYPELIB_PATH" \
--prefix LD_LIBRARY_PATH : "$LD_LIBRARY_PATH" \
--prefix PATH : "${stdenv.lib.makeBinPath [ compton unclutter procps iproute coreutils curl alsaUtils findutils xterm ]}"
···
postInstall = ''
wrapProgram $out/bin/awesome \
--set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
+
--add-flags '--search ${lgi}/lib/lua/${lua.luaversion}' \
+
--add-flags '--search ${lgi}/share/lua/${lua.luaversion}' \
--prefix GI_TYPELIB_PATH : "$GI_TYPELIB_PATH" \
--prefix LD_LIBRARY_PATH : "$LD_LIBRARY_PATH" \
--prefix PATH : "${stdenv.lib.makeBinPath [ compton unclutter procps iproute coreutils curl alsaUtils findutils xterm ]}"