{ lib, callPackage }: # For detailed information about the Citrix source-tarball, please refer to the OEM # reference guide: https://developer-docs.citrix.com/en-us/citrix-workspace-app-for-linux/citrix-workspace-app-for-linux-oem-reference-guide let inherit (callPackage ./sources.nix { }) supportedVersions unsupportedVersions; toAttrName = x: "citrix_workspace_${builtins.replaceStrings [ "." ] [ "_" ] x}"; unsupported = lib.listToAttrs ( map (x: lib.nameValuePair (toAttrName x) (throw '' Citrix Workspace at version ${x} is not supported anymore! Actively supported releases are listed here: https://www.citrix.com/support/product-lifecycle/workspace-app.html '')) unsupportedVersions ); supported = lib.mapAttrs' ( attr: versionInfo: lib.nameValuePair (toAttrName attr) (callPackage ./generic.nix versionInfo) ) supportedVersions; in supported // unsupported