diff options
author | Maximilian Bosch <maximilian@mbosch.me> | 2020-06-15 13:17:05 +0200 |
---|---|---|
committer | Maximilian Bosch <maximilian@mbosch.me> | 2020-07-15 19:10:58 +0200 |
commit | fa3948a7c5bf12357080b3b9277bfe28db69e8aa (patch) | |
tree | c4d41f15d326cf9142cb30efa5fbf594e38b9ddd /pkgs/applications/networking/remote/citrix-workspace/sources.nix | |
parent | bfb7ac3d83ab3a24954b48c2d556aa6c69f53bb7 (diff) | |
download | nixpkgs-fa3948a7c5bf12357080b3b9277bfe28db69e8aa.tar nixpkgs-fa3948a7c5bf12357080b3b9277bfe28db69e8aa.tar.gz nixpkgs-fa3948a7c5bf12357080b3b9277bfe28db69e8aa.tar.bz2 nixpkgs-fa3948a7c5bf12357080b3b9277bfe28db69e8aa.tar.lz nixpkgs-fa3948a7c5bf12357080b3b9277bfe28db69e8aa.tar.xz nixpkgs-fa3948a7c5bf12357080b3b9277bfe28db69e8aa.tar.zst nixpkgs-fa3948a7c5bf12357080b3b9277bfe28db69e8aa.zip |
citrix_workspace: add more features, refactor derivation
In #89806 it has been reported that the final package is missing a lot of features like support for the self-service GUI and the config-management. While working on supporting those components in the Nix-package, I decided to refactor the package to simplify the entire setup. This patch changes the following things: * Binaries and libraries are patched using the `autoPatchelfHook` to avoid having unneeded libraries linked (e.g. some programs use gtk2, others use gtk3). * Moved source-declarations into their own file. * Wrapped `configmgr` and `selfservice` and added those to `$out/bin`. * Don't mention the old `citrix_receiver`-packages in the manual anymore since those packages were removed in 19.09 and are EOLed anyways. Closes #89806
Diffstat (limited to 'pkgs/applications/networking/remote/citrix-workspace/sources.nix')
-rw-r--r-- | pkgs/applications/networking/remote/citrix-workspace/sources.nix | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/pkgs/applications/networking/remote/citrix-workspace/sources.nix b/pkgs/applications/networking/remote/citrix-workspace/sources.nix new file mode 100644 index 00000000000..cc0d8637b90 --- /dev/null +++ b/pkgs/applications/networking/remote/citrix-workspace/sources.nix @@ -0,0 +1,58 @@ +{ stdenv, lib }: + +let + mkVersionInfo = _: { major, minor, patch, x64hash, x86hash, x64suffix, x86suffix, homepage }: + { inherit homepage; + version = "${major}.${minor}.${patch}.${if stdenv.is64bit then x64suffix else x86suffix}"; + prefix = "linuxx${if stdenv.is64bit then "64" else "86"}"; + hash = if stdenv.is64bit then x64hash else x86hash; + }; + + # Attribute-set with all actively supported versions of the Citrix workspace app + # for Linux. + # + # The latest versions can be found at https://www.citrix.com/de-de/downloads/workspace-app/linux/ + supportedVersions = lib.mapAttrs mkVersionInfo { + "19.12.0" = { + major = "19"; + minor = "12"; + patch = "0"; + x64hash = "1si5mkxbgb8m99bkvgc3l80idjfdp0kby6pv47s07nn43dbr1j7a"; + x86hash = "07rfp90ksnvr8zv7ix7f0z6a59n48s7bd4kqbzilfwxgs4ddqmcy"; + x64suffix = "19"; + x86suffix = "19"; + homepage = "https://www.citrix.com/downloads/workspace-app/legacy-workspace-app-for-linux/workspace-app-for-linux-1912.html"; + }; + + "20.04.0" = { + major = "20"; + minor = "04"; + patch = "0"; + x64hash = "E923592216F9541173846F932784E6C062CB09C9E8858219C7489607BF82A0FB"; + x86hash = "A2E2E1882723DA6796E68916B3BB2B44DD575A83DEB03CA90A262F6C81B1A53F"; + x64suffix = "21"; + x86suffix = "21"; + homepage = "https://www.citrix.com/downloads/workspace-app/linux/workspace-app-for-linux-latest.html"; + }; + + "20.06.0" = { + major = "20"; + minor = "06"; + patch = "0"; + x64hash = "1kpfcfg95mpprlca6cccnjlsqbj3xvv77cn3fc5msd304nsi9x1v"; + x86hash = "1di29hrimbw3myjnf2nn26a14klidhdwvjqla6yxhwd3s6lil194"; + x64suffix = "15"; + x86suffix = "15"; + homepage = "https://www.citrix.com/de-de/downloads/workspace-app/linux/workspace-app-for-linux-latest.html"; + }; + }; + + # Retain attribute-names for abandoned versions of Citrix workspace to + # provide a meaningful error-message if it's attempted to use such an old one. + # + # The lifespans of Citrix products can be found here: + # https://www.citrix.com/support/product-lifecycle/milestones/receiver.html + unsupportedVersions = [ "19.6.0" "19.8.0" "19.10.0" ]; +in { + inherit supportedVersions unsupportedVersions; +} |