THRIFT-4634: work around cabal 1.22 dependency bug breaking CI job for Xenial
diff --git a/build/docker/ubuntu-xenial/Dockerfile b/build/docker/ubuntu-xenial/Dockerfile
index 1e70002..c69bec2 100644
--- a/build/docker/ubuntu-xenial/Dockerfile
+++ b/build/docker/ubuntu-xenial/Dockerfile
@@ -151,10 +151,16 @@
       ln -s /usr/local/go/bin/go /usr/local/bin && \
       rm golang.tar.gz
 
+# due to a bug in cabal in xenial (cabal-install package) we pull in another:
 RUN apt-get install -y --no-install-recommends \
 `# Haskell dependencies` \
-      ghc \
-      cabal-install
+      ghc && \
+    cd /tmp && \
+    wget -q https://www.haskell.org/cabal/release/cabal-install-1.24.0.2/cabal-install-1.24.0.2-x86_64-unknown-linux.tar.gz && \
+    tar xzf cabal-install-1.24.0.2-x86_64-unknown-linux.tar.gz && \
+    find dist-newstyle/ -type f -name cabal -exec mv {} /usr/bin \; && \
+    rm -rf /tmp/cabal* && \
+    cabal --version
 
 RUN apt-get install -y --no-install-recommends \
 `# Haxe dependencies` \