# Citrix Workspace

Please note that the `citrix_receiver` package has been deprecated since its development was discontinued by upstream and has been replaced by the citrix workspace app.

Citrix Receiver and Citrix Workspace App are a remote desktop viewers which provide access to XenDesktop installations.

## Basic usage

The tarball archive needs to be downloaded manually as the license agreements of the vendor for Citrix Receiver or Citrix Workspace need to be accepted first. Then run `nix-prefetch-url file://$PWD/linuxx64-$version.tar.gz`. With the archive available in the store the package can be built and installed with Nix.

### Caution with `nix-shell` installs

It's recommended to install `Citrix Receiver` and/or `Citrix Workspace` using `nix-env -i` or globally to ensure that the `.desktop` files are installed properly into `$XDG_CONFIG_DIRS`. Otherwise it won't be possible to open `.ica` files automatically from the browser to start a Citrix connection.

## Custom certificates

The `Citrix Workspace App` in `nixpkgs` trust several certificates from the Mozilla database by default. However several companies using Citrix might require their own corporate certificate. On distros with imperative packaging these certs can be stored easily in `$ICAROOT`, however this directory is a store path in `nixpkgs`. In order to work around this issue the package provides a simple mechanism to add custom certificates without rebuilding the entire package using `symlinkJoin`:

    with import <nixpkgs> { config.allowUnfree = true; };
    let extraCerts = [ ./custom-cert-1.pem ./custom-cert-2.pem /* ... */ ]; in
    citrix_workspace.override {
      inherit extraCerts;
    }