Chris@1910
|
1 # This pulls the latest versions of capnp & SV from repos - so you
|
Chris@1910
|
2 # will need to defeat the Docker cache by destroying the container
|
Chris@1910
|
3 # each time you want to update it
|
Chris@1910
|
4 #
|
Chris@1910
|
5 FROM ubuntu:14.04
|
Chris@1910
|
6 MAINTAINER Chris Cannam <cannam@all-day-breakfast.com>
|
Chris@1910
|
7 RUN apt-get update && \
|
Chris@1910
|
8 apt-get install -y \
|
Chris@1910
|
9 software-properties-common \
|
Chris@1910
|
10 build-essential \
|
Chris@1910
|
11 libbz2-dev \
|
Chris@1910
|
12 libfftw3-dev \
|
Chris@1910
|
13 libfishsound1-dev \
|
Chris@1910
|
14 libid3tag0-dev \
|
Chris@1910
|
15 liblo-dev \
|
Chris@1910
|
16 liblrdf0-dev \
|
Chris@1910
|
17 libmad0-dev \
|
Chris@1910
|
18 liboggz2-dev \
|
Chris@1910
|
19 libpulse-dev \
|
Chris@1922
|
20 libasound2-dev \
|
Chris@1931
|
21 libjack-dev \
|
Chris@1910
|
22 libsamplerate-dev \
|
Chris@1910
|
23 libsndfile-dev \
|
Chris@1910
|
24 libsord-dev \
|
Chris@1910
|
25 libxml2-utils \
|
Chris@1910
|
26 libgl1-mesa-dev \
|
Chris@1910
|
27 raptor-utils \
|
Chris@1910
|
28 librubberband-dev \
|
Chris@1910
|
29 git \
|
Chris@1910
|
30 mercurial \
|
Chris@1910
|
31 curl wget \
|
Chris@1910
|
32 mlton \
|
Chris@1910
|
33 autoconf automake libtool lintian
|
Chris@1921
|
34
|
Chris@1931
|
35 # NB we do not install portaudio. We don't want to end up including it
|
Chris@1931
|
36 # in the bundle, because it comes with a dependency on the JACK
|
Chris@1931
|
37 # library which we don't want to bundle and can't assume people will
|
Chris@1931
|
38 # have. However, we do install JACK because the Dynamic JACK mechanism
|
Chris@1931
|
39 # should ensure we can detect, configure, and use that without
|
Chris@1931
|
40 # actually linking against it. We also have Pulse as the default I/O.
|
Chris@1921
|
41
|
Chris@1910
|
42 RUN apt-add-repository -y ppa:beineri/opt-qt-5.10.1-trusty
|
Chris@1972
|
43 RUN apt-add-repository -y ppa:ubuntu-toolchain-r/test
|
Chris@1910
|
44 RUN apt-get update && \
|
Chris@1910
|
45 apt-get install -y \
|
Chris@1971
|
46 g++-4.9 \
|
Chris@1910
|
47 qt510base \
|
Chris@1910
|
48 qt510svg
|
Chris@1910
|
49 RUN apt-get clean && rm -rf /var/lib/apt/lists/*
|
Chris@1971
|
50
|
Chris@1971
|
51 RUN for x in g++ gcc gcc-ar gcc-nm gcc-ranlib ; do ln -sf /usr/bin/$x-4.9 /usr/bin/$x ; ln -sf /usr/bin/x86_64-linux-gnu-gcc-$x-4.9 /usr/bin/x86_64-linux-gnu-gcc-$x ; done
|
Chris@1971
|
52
|
Chris@1910
|
53 RUN locale-gen en_US.UTF-8
|
Chris@1910
|
54 ENV LANG en_US.UTF-8
|
Chris@1910
|
55 ENV LANGUAGE en_US:en
|
Chris@1910
|
56 ENV LC_ALL en_US.UTF-8
|
Chris@1971
|
57
|
Chris@1924
|
58 RUN hg clone -r[[REVISION]] https://code.soundsoftware.ac.uk/hg/sonic-visualiser
|
Chris@1971
|
59
|
Chris@1910
|
60 RUN git clone https://github.com/sandstorm-io/capnproto
|
Chris@1953
|
61 WORKDIR capnproto
|
Chris@1970
|
62 RUN git checkout v0.7.0
|
Chris@1953
|
63 WORKDIR c++
|
Chris@1971
|
64 RUN autoreconf -i && ./configure && make -j3 && make install
|
Chris@1971
|
65
|
Chris@1924
|
66 WORKDIR ../../sonic-visualiser
|
Chris@1910
|
67 ENV QTDIR /opt/qt510
|
Chris@1910
|
68 ENV PATH /opt/qt510/bin:$PATH
|
Chris@1910
|
69 RUN ./configure
|
Chris@1910
|
70 RUN make -j3
|
Chris@1971
|
71
|
Chris@1910
|
72 RUN deploy/linux/deploy-appimage.sh
|
Chris@1910
|
73 RUN tar cvf output.tar *.AppImage && cp output.tar ..
|