From 104d8a7c3f526511bc243c16bb8a7cecb7187958 Mon Sep 17 00:00:00 2001 From: Austin Horstman Date: Thu, 17 Sep 2026 22:45:54 -0500 Subject: [PATCH] citrix-workspace: expose HDX MediaStream plugin Install the bundled flatstm plugin in a wrapper-managed search path, matching the registration performed by Citrix's installer. Verify that multimedia remains enabled after the installer configuration rewrite. --- pkgs/by-name/ci/citrix-workspace/package.nix | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/pkgs/by-name/ci/citrix-workspace/package.nix b/pkgs/by-name/ci/citrix-workspace/package.nix index 14a4860b6662..6c46828b7f32 100644 --- a/pkgs/by-name/ci/citrix-workspace/package.nix +++ b/pkgs/by-name/ci/citrix-workspace/package.nix @@ -263,7 +263,7 @@ stdenv.mkDerivation (finalAttrs: { ++ [ ''--set ICAROOT "$ICAInstDir"'' ''--prefix GIO_EXTRA_MODULES : "${glib-networking}/lib/gio/modules"'' - ''--prefix GST_PLUGIN_SYSTEM_PATH_1_0 : "${gstPluginPath}"'' + ''--prefix GST_PLUGIN_SYSTEM_PATH_1_0 : "$ICAInstDir/gst-plugins:${gstPluginPath}"'' ''--prefix LD_LIBRARY_PATH : "${ldLibraryPath program}"'' ''--set LD_PRELOAD "${libredirect}/lib/libredirect.so ${lib.getLib pcsclite}/lib/libpcsclite.so"'' ''--set NIX_REDIRECTS "/usr/share/zoneinfo=${tzdata}/share/zoneinfo:/etc/zoneinfo=${tzdata}/share/zoneinfo:/etc/timezone=$ICAInstDir/timezone"'' @@ -362,9 +362,16 @@ stdenv.mkDerivation (finalAttrs: { rm $ICAInstDir/util/{gst_aud_{play,read},gst_*0.10,libgstflatstm0.10.so} || true ln -sf $ICAInstDir/util/gst_play1.0 $ICAInstDir/util/gst_play ln -sf $ICAInstDir/util/gst_read1.0 $ICAInstDir/util/gst_read + + # hinst links this plugin into FHS directories; expose it through the wrapper instead. + mkdir -p "$ICAInstDir/gst-plugins" + ln -s "$ICAInstDir/util/libgstflatstm1.0.so" \ + "$ICAInstDir/gst-plugins/libgstflatstm.so" + # `hinst` disables multimedia when it cannot link into FHS plugin # directories. In Nix we provide the plugin path via wrappers instead. sed -i 's/^MultiMedia=Off$/MultiMedia=On/' "$ICAInstDir/config/module.ini" + grep -Fxq 'MultiMedia=On' "$ICAInstDir/config/module.ini" echo "We arbitrarily set the timezone to UTC. No known consequences at this point." echo UTC > "$ICAInstDir/timezone"