Move hacks.el to contrib
[oweals/gnunet.git] / contrib / Dockerfile
1 from fedora:26
2
3 # Install the required build tools
4 RUN dnf -y update && dnf -y install which git automake texinfo gettext-devel autoconf libtool libtool-ltdl-devel libidn-devel libunistring-devel glpk libextractor-devel libmicrohttpd-devel gnutls libgcrypt-devel jansson-devel sqlite-devel npm
5
6 WORKDIR /usr/src
7
8 # Install gnurl from source at version gnurl-7.54.0
9 RUN git clone https://git.taler.net/gnurl.git --branch gnurl-7.57.0
10 WORKDIR /usr/src/gnurl
11 RUN autoreconf -i
12 RUN ./configure --disable-ntlm-wb
13 RUN make install
14 WORKDIR /usr/src
15
16 RUN dnf -y install wget flex bison
17
18 # Install libpbc
19 RUN wget https://crypto.stanford.edu/pbc/files/pbc-0.5.14.tar.gz
20 RUN tar xvzpf pbc-0.5.14.tar.gz
21 WORKDIR /usr/src/pbc-0.5.14
22 RUN ./configure --prefix=/usr
23 RUN make install
24 WORKDIR /usr/src
25
26 RUN dnf -y install glib2-devel
27
28 # Install libbswabe
29 RUN git clone https://github.com/schanzen/libgabe.git
30 WORKDIR /usr/src/libgabe
31 RUN ./configure --prefix=/usr
32 RUN make install
33
34 # Install WebUI
35 WORKDIR /usr/src/
36 RUN git clone https://github.com/schanzen/gnunet-webui.git
37 WORKDIR /usr/src/gnunet-webui
38 RUN git checkout gnuidentity
39
40 RUN mkdir /usr/src/gnunet
41 WORKDIR /usr/src/gnunet
42 ADD . .
43 ARG NUM_JOBS
44 RUN ./bootstrap
45 RUN ./configure --prefix=/usr/local
46 RUN make -j$NUM_JOBS
47 RUN make install
48
49 RUN groupadd gnunetdns
50 RUN adduser -S -m -h /var/lib/gnunet gnunet
51 RUN chown gnunet:gnunet /var/lib/gnunet
52 RUN echo '[arm]\nSYSTEM_ONLY = YES\nUSER_ONLY = NO\n' > /etc/gnunet.conf
53
54 ADD docker-entrypoint.sh .
55
56 CMD ["sh", "docker-entrypoint.sh"]