diff --git a/pkgs/applications/networking/remote/citrix-workspace/generic.nix b/pkgs/applications/networking/remote/citrix-workspace/generic.nix index 5051d2308f02..cd5f21a15ed8 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, llvmPackages_12 +, libpulseaudio, pcsclite, glib-networking, llvmPackages_12, opencv4 , homepage, version, prefix, hash @@ -82,12 +82,15 @@ stdenv.mkDerivation rec { libcxxabi libjpeg libpng12 + libpulseaudio libsoup libvorbis libxml2 + llvmPackages_12.libunwind mesa nspr nss + opencv4 openssl' pango speex @@ -98,9 +101,7 @@ stdenv.mkDerivation rec { xorg.libXScrnSaver xorg.libXtst zlib - ] ++ lib.optional (lib.versionOlder version "20.04") e2fsprogs - ++ lib.optional (lib.versionAtLeast version "20.10") libpulseaudio - ++ lib.optional (lib.versionAtLeast version "21.12") llvmPackages_12.libunwind; + ]; runtimeDependencies = [ glib @@ -121,7 +122,7 @@ 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 if (builtins.match "wfica(.*)" program != null) then null else "-icaroot"; wrap = program: '' wrapProgram $out/opt/citrix-icaclient/${program} \ @@ -142,8 +143,7 @@ stdenv.mkDerivation rec { mkWrappers = lib.concatMapStringsSep "\n"; - toWrap = [ "wfica" "selfservice" "util/configmgr" "util/conncenter" "util/ctx_rehash" ] - ++ lib.optional (lib.versionOlder version "20.06") "selfservice_old"; + toWrap = [ "wfica" "selfservice" "util/configmgr" "util/conncenter" "util/ctx_rehash" ]; in '' runHook preInstall @@ -198,6 +198,14 @@ stdenv.mkDerivation rec { # Make sure that `autoPatchelfHook` is executed before # running `ctx_rehash`. dontAutoPatchelf = true; + preFixup = '' + find $out/opt/citrix-icaclient/lib -name "libopencv_imgcodecs.so.*" | while read -r fname; do + # lib needs libtiff.so.5, but nixpkgs provides libtiff.so.6 + patchelf --replace-needed libtiff.so.5 libtiff.so $fname + # lib needs libjpeg.so.8, but nixpkgs provides libjpeg.so.9 + patchelf --replace-needed libjpeg.so.8 libjpeg.so $fname + done + ''; postFixup = '' autoPatchelf -- "$out" $out/opt/citrix-icaclient/util/ctx_rehash diff --git a/pkgs/applications/networking/remote/citrix-workspace/sources.nix b/pkgs/applications/networking/remote/citrix-workspace/sources.nix index 78f8b1a2a0c8..2422d7eb8efb 100644 --- a/pkgs/applications/networking/remote/citrix-workspace/sources.nix +++ b/pkgs/applications/networking/remote/citrix-workspace/sources.nix @@ -22,8 +22,20 @@ let x86hash = "39228fc8dd69adca4e56991c1ebc0832fec183c3ab5abd2d65c66b39b634391b"; x64suffix = "10"; x86suffix = "10"; + homepage = "https://www.citrix.com/downloads/workspace-app/legacy-workspace-app-for-linux/workspace-app-for-linux-latest6.html"; + }; + + "23.07.0" = { + major = "23"; + minor = "7"; + patch = "0"; + x64hash = "d4001226e79b5353fc74da4c8ed4f6295c1859fe18142cb5de345a3c7ae48168"; + x86hash = "4a7da238286ae28d7baf0fefa1e7e09d077c8bc56c2bf7bec00da42c331bee59"; + x64suffix = "17"; + x86suffix = "17"; 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 139c8be63087..ae7e3454538e 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -6489,8 +6489,9 @@ with pkgs; inherit (callPackage ../applications/networking/remote/citrix-workspace { }) citrix_workspace_23_02_0 + citrix_workspace_23_07_0 ; - citrix_workspace = citrix_workspace_23_02_0; + citrix_workspace = citrix_workspace_23_07_0; cmigemo = callPackage ../tools/text/cmigemo { };