diff --git a/pkgs/applications/networking/remote/citrix-workspace/generic.nix b/pkgs/applications/networking/remote/citrix-workspace/generic.nix index e54bc2358632..ac0030961183 100644 --- a/pkgs/applications/networking/remote/citrix-workspace/generic.nix +++ b/pkgs/applications/networking/remote/citrix-workspace/generic.nix @@ -3,7 +3,7 @@ , heimdal, krb5, libsoup, libvorbis, speex, openssl, zlib, xorg, pango, gtk2 , gnome2, mesa, nss, nspr, gtk_engines, freetype, dconf, libpng12, libxml2 , libjpeg, libredirect, tzdata, cacert, systemd, libcxxabi, libcxx, e2fsprogs, symlinkJoin -, libpulseaudio, pcsclite, glib-networking +, libpulseaudio, pcsclite, glib-networking, llvmPackages_12 , homepage, version, prefix, hash @@ -99,7 +99,8 @@ stdenv.mkDerivation rec { xorg.libXtst zlib ] ++ lib.optional (lib.versionOlder version "20.04") e2fsprogs - ++ lib.optional (lib.versionAtLeast version "20.10") libpulseaudio; + ++ lib.optional (lib.versionAtLeast version "20.10") libpulseaudio + ++ lib.optional (lib.versionAtLeast version "21.12") llvmPackages_12.libunwind; runtimeDependencies = [ glib @@ -120,10 +121,11 @@ stdenv.mkDerivation rec { installPhase = let icaFlag = program: if (builtins.match "selfservice(.*)" program) != null then "--icaroot" + else if (lib.versionAtLeast version "21.12" && builtins.match "wfica(.*)" program != null) then null else "-icaroot"; wrap = program: '' wrapProgram $out/opt/citrix-icaclient/${program} \ - --add-flags "${icaFlag program} $ICAInstDir" \ + ${lib.optionalString (icaFlag program != null) ''--add-flags "${icaFlag program} $ICAInstDir"''} \ --set ICAROOT "$ICAInstDir" \ --prefix LD_LIBRARY_PATH : "$ICAInstDir:$ICAInstDir/lib" \ --set LD_PRELOAD "${libredirect}/lib/libredirect.so" \ diff --git a/pkgs/applications/networking/remote/citrix-workspace/sources.nix b/pkgs/applications/networking/remote/citrix-workspace/sources.nix index 7311acf82783..12bda3f98ad4 100644 --- a/pkgs/applications/networking/remote/citrix-workspace/sources.nix +++ b/pkgs/applications/networking/remote/citrix-workspace/sources.nix @@ -122,6 +122,17 @@ let x86suffix = "25"; homepage = "https://www.citrix.com/downloads/workspace-app/linux/workspace-app-for-linux-latest.html"; }; + + "21.12.0" = { + major = "21"; + minor = "12"; + patch = "0"; + x64hash = "de81deab648e1ebe0ddb12aa9591c8014d7fad4eba0db768f25eb156330bb34d"; + x86hash = "3746cdbe26727f7f6fb85fbe5f3e6df0322d79bb66e3a70158b22cb4f6b6b292"; + x64suffix = "18"; + x86suffix = "18"; + homepage = "https://www.citrix.com/downloads/workspace-app/linux/workspace-app-for-linux-latest.html"; + }; }; # Retain attribute-names for abandoned versions of Citrix workspace to diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 04a35c1527c7..af08892fb49e 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -4105,7 +4105,7 @@ with pkgs; circus = callPackage ../tools/networking/circus { }; - citrix_workspace = citrix_workspace_21_09_0; + citrix_workspace = citrix_workspace_21_12_0; inherit (callPackage ../applications/networking/remote/citrix-workspace { }) citrix_workspace_20_04_0 @@ -4118,6 +4118,7 @@ with pkgs; citrix_workspace_21_06_0 citrix_workspace_21_08_0 citrix_workspace_21_09_0 + citrix_workspace_21_12_0 ; citra = libsForQt5.callPackage ../misc/emulators/citra { };