11FROM ubuntu:16.04 AS matrix-worker-base
2- RUN apt-get update && apt-get install -y gnupg
3- RUN echo 'deb http://ppa.launchpad.net/hvr/ghc/ubuntu xenial main' > /etc/apt/sources.list.d/ghc.list && \
4- echo 'deb http://ppa.launchpad.net/hvr/matrix.hackage/ubuntu xenial main' > /etc/apt/sources.list.d/hackageci.list
5- RUN apt-key adv --keyserver keyserver.ubuntu.com --recv-keys FF3AEACEF6F88286
6- RUN echo 2 && apt-get update && apt-get dist-upgrade -y && apt-get autoremove -y --purge && apt-get clean
7- # locale stuff
8- RUN apt-get -y install locales && sed -i -e 's/# en_US.UTF-8 UTF-8/en_US.UTF-8 UTF-8/' /etc/locale.gen && locale-gen && apt-get clean
2+
93ENV LANG=en_US.UTF-8 LANGUAGE=en_US:en LC_ALL=en_US.UTF-8
4+
5+ RUN apt-get update \
6+ && apt-get install -y gnupg \
7+ && rm -rf /var/lib/apt/lists/* \
8+ && echo 'deb http://ppa.launchpad.net/hvr/ghc/ubuntu xenial main' > /etc/apt/sources.list.d/ghc.list \
9+ && echo 'deb http://ppa.launchpad.net/hvr/matrix.hackage/ubuntu xenial main' > /etc/apt/sources.list.d/hackageci.list \
10+ && apt-key adv --keyserver keyserver.ubuntu.com --recv-keys FF3AEACEF6F88286 \
11+ && apt-get update \
12+ && apt-get dist-upgrade -y \
13+ && apt-get -y install locales \
14+ && sed -i -e 's/# en_US.UTF-8 UTF-8/en_US.UTF-8 UTF-8/' /etc/locale.gen \
15+ && locale-gen \
16+ && apt-get autoremove -y --purge \
17+ && apt-get clean \
18+ && rm -rf /var/lib/apt/lists/*
19+
1020# toolchain & FFI libraries [A]
11- RUN apt-get install -y m4 build-essential && apt-get clean
12- RUN apt-get install -y \
21+ RUN apt-get update \
22+ && apt-get install -y \
23+ build-essential \
1324 freeglut3-dev \
1425 libadns1-dev \
26+ libalut-dev \
27+ libarchive-dev \
28+ libarrayfire-dev \
1529 libasound2-dev \
30+ libavdevice-dev \
31+ libbabl-dev \
1632 libbibutils-dev \
1733 libblas-dev \
34+ libbrotli-dev \
1835 libbz2-dev \
1936 libcairo2-dev \
2037 libcrypto++-dev \
38+ libdbusmenu-gtk3-dev \
2139 libdevil-dev \
2240 libedit-dev \
41+ libfdk-aac-dev \
2342 libfftw3-dev \
43+ libflint-dev \
2444 libfreenect-dev \
2545 libfreenect-dev \
2646 libftgl-dev \
@@ -31,30 +51,39 @@ RUN apt-get install -y \
3151 libgd2-xpm-dev \
3252 libgeoip-dev \
3353 libgirepository1.0-dev \
54+ libgit2-dev \
55+ libglade2-dev \
3456 libglew-dev \
3557 libglib2.0-dev \
3658 libglpk-dev \
3759 libglu1-mesa-dev \
3860 libgmp-dev \
3961 libgpgme11-dev \
62+ libgsasl7-dev \
4063 libgsl-dev \
4164 libgsl0-dev \
4265 libgtk-3-dev \
4366 libgtk2.0-dev \
67+ libgtkglext1-dev \
68+ libgtksourceview-3.0-dev \
69+ libgtksourceview2.0-dev \
4470 libhidapi-dev \
4571 libhidapi-dev \
4672 libicu-dev \
4773 libjack-dev \
74+ libjavascriptcoregtk-4.0-dev \
4875 libjudy-dev \
4976 libkrb5-dev \
5077 liblapack-dev \
5178 libldap2-dev \
5279 libleveldb-dev \
5380 libleveldb-dev \
5481 liblmdb-dev \
82+ liblz-dev \
5583 liblz4-dev \
5684 liblzma-dev \
5785 libmagic-dev \
86+ libmagickwand-dev \
5887 libmarkdown2-dev \
5988 libmp3lame-dev \
6089 libmpfr-dev \
@@ -76,17 +105,24 @@ RUN apt-get install -y \
76105 libqrencode-dev \
77106 librdkafka-dev \
78107 libre2-dev \
108+ librsvg2-dev \
109+ librubberband-dev \
79110 libsctp-dev \
80111 libsdl-gfx1.2-dev \
81112 libsdl-ttf2.0-dev \
82113 libsdl1.2-dev \
83114 libsdl2-dev \
115+ libsdl2-gfx-dev \
116+ libsdl2-image-dev \
117+ libsdl2-mixer-dev \
118+ libsdl2-net-dev \
84119 libsdl2-ttf-dev \
85120 libsecp256k1-dev \
86121 libsndfile1-dev \
87122 libsnmp-dev \
88123 libsnmp-dev \
89124 libsodium-dev \
125+ libsox-dev \
90126 libsqlite3-dev \
91127 libssh-dev \
92128 libssl-dev \
@@ -95,7 +131,13 @@ RUN apt-get install -y \
95131 libtagc0-dev \
96132 libtwolame-dev \
97133 libudev-dev \
134+ libuv1-dev \
135+ libvirt-dev \
98136 libvte-2.91-dev \
137+ libwebkit-dev \
138+ libwebkit2gtk-4.0-dev \
139+ libwebkitgtk-3.0-dev \
140+ libwnck-3-dev \
99141 libwxgtk-media3.0-dev \
100142 libwxgtk-webview3.0-dev \
101143 libxml2-dev \
@@ -108,55 +150,22 @@ RUN apt-get install -y \
108150 libzmq-dev \
109151 libzookeeper-mt-dev \
110152 lzma-dev \
153+ m4 \
111154 mpi-default-dev \
112155 nettle-dev \
156+ portaudio19-dev \
157+ r-base-core \
113158 ruby-dev \
114159 unixodbc-dev \
115160 uuid-dev \
116161 zlib1g-dev \
117- libgit2-dev \
118- && apt-get autoremove -y --purge && apt-get clean
119-
120- # recheck for updated dists
121- RUN echo 2 && apt-get update && apt-get dist-upgrade -y
122-
123- # 2nd iteration
124- RUN apt-get install -y \
125- libalut-dev \
126- libarchive-dev \
127- libavdevice-dev \
128- libbabl-dev \
129- libbrotli-dev \
130- libdbusmenu-gtk3-dev \
131- libfdk-aac-dev \
132- libflint-dev \
133- libglade2-dev \
134- libgsasl7-dev \
135- libgtkglext1-dev \
136- libgtksourceview-3.0-dev \
137- libgtksourceview2.0-dev \
138- libjavascriptcoregtk-4.0-dev \
139- liblz-dev \
140- libmagickwand-dev \
141- librsvg2-dev \
142- librubberband-dev \
143- libsdl2-gfx-dev \
144- libsdl2-image-dev \
145- libsdl2-mixer-dev \
146- libsdl2-net-dev \
147- libsox-dev \
148- libuv1-dev \
149- libvirt-dev \
150- libwebkit-dev \
151- libwebkit2gtk-4.0-dev \
152- libwebkitgtk-3.0-dev \
153- libwnck-3-dev \
154- portaudio19-dev \
155- r-base-core \
156- && apt-get autoremove -y --purge && apt-get clean
162+ && apt-get autoremove -y --purge \
163+ && apt-get clean \
164+ && rm -rf /var/lib/apt/lists/*
157165
158166# GHC toolchains
159- RUN apt-get install -y \
167+ RUN apt-get update \
168+ && apt-get install -y \
160169 ghc-7.0.4 \
161170 ghc-7.4.2 \
162171 ghc-7.6.3 \
@@ -166,9 +175,7 @@ RUN apt-get install -y \
166175 ghc-8.2.2 \
167176 ghc-8.4.4 \
168177 ghc-8.6.5 \
169- ghc-8.8.1 \
170- && apt-get clean
171-
172- # add-ons -- to be moved to the front at some point
173- # RUN apt-get install -y libalut-dev libflint-dev libdbusmenu-gtk3-dev libuv1-dev libbrotli-dev liblz-dev \
174- # && apt-get autoremove -y --purge && apt-get clean
178+ ghc-8.8.3 \
179+ ghc-8.10.1 \
180+ && apt-get clean \
181+ && rm -rf /var/lib/apt/lists/*
0 commit comments