po: Generate perl bin path
[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
9 RUN wget https://ftp.gnu.org/gnu/gnunet/gnurl-7.59.0.tar.gz
10 RUN tar xvzpf gnurl-7.59.0.tar.gz
11 WORKDIR /usr/src/gnurl-7.59.0
12 RUN autoreconf -i
13 RUN ./configure --disable-ntlm-wb
14 RUN make install
15 WORKDIR /usr/src
16
17 RUN dnf -y install wget flex bison
18
19 # Install libpbc
20 RUN wget https://crypto.stanford.edu/pbc/files/pbc-0.5.14.tar.gz
21 RUN tar xvzpf pbc-0.5.14.tar.gz
22 WORKDIR /usr/src/pbc-0.5.14
23 RUN ./configure --prefix=/usr
24 RUN make install
25 WORKDIR /usr/src
26
27 RUN dnf -y install glib2-devel
28
29 # Install libbswabe
30 RUN git clone https://github.com/schanzen/libgabe.git
31 WORKDIR /usr/src/libgabe
32 RUN ./configure --prefix=/usr
33 RUN make install
34
35 # Install WebUI
36 WORKDIR /usr/src/
37 RUN git clone https://github.com/schanzen/gnunet-webui.git
38 WORKDIR /usr/src/gnunet-webui
39 RUN git checkout gnuidentity
40
41 RUN mkdir /usr/src/gnunet
42 WORKDIR /usr/src/gnunet
43 ADD . .
44 ARG NUM_JOBS
45 RUN ./bootstrap
46 RUN ./configure --prefix=/usr/local
47 RUN make -j$NUM_JOBS
48 RUN make install
49
50 RUN groupadd gnunetdns
51 RUN adduser -S -m -h /var/lib/gnunet gnunet
52 RUN chown gnunet:gnunet /var/lib/gnunet
53 RUN echo '[arm]\nSYSTEM_ONLY = YES\nUSER_ONLY = NO\n' > /etc/gnunet.conf
54
55 ADD docker-entrypoint.sh .
56
57 CMD ["sh", "docker-entrypoint.sh"]