summaryrefslogtreecommitdiff
path: root/contrib/vagrant/bootstrap.ubuntu.sh
diff options
context:
space:
mode:
authorAntonio Ojea <aojea@midokura.com>2017-02-24 14:22:28 +0100
committerChristian Grothoff <christian@grothoff.org>2017-02-25 01:53:16 +0100
commitc4942479309a40c09c4659fa3e26280d3a121058 (patch)
tree91a38332aa89dd2f6b7047171cd286e88f6d6341 /contrib/vagrant/bootstrap.ubuntu.sh
parentb92a2992b013a8a27f2ca3b5d5e183c0f1df54a1 (diff)
Add Vagrant file for development
This patch adds a vagranfile that installs the required dependencies to compile gnunet. To be able to use it you need to cd to the contrib/vagrant directory, run "vagrant up" and wait until the VM is provisioned. Once it finish the provisioning you can login in the VM with "vagrant ssh" The VM mounts the source code of gnunet in the folder /gnunet, thus you can edit your code in the host and compile it in the VM. Signed-off-by: Antonio Ojea <aojea@midokura.com>
Diffstat (limited to 'contrib/vagrant/bootstrap.ubuntu.sh')
-rw-r--r--contrib/vagrant/bootstrap.ubuntu.sh48
1 files changed, 48 insertions, 0 deletions
diff --git a/contrib/vagrant/bootstrap.ubuntu.sh b/contrib/vagrant/bootstrap.ubuntu.sh
new file mode 100644
index 000000000..4bf032e3e
--- /dev/null
+++ b/contrib/vagrant/bootstrap.ubuntu.sh
@@ -0,0 +1,48 @@
+#/bin/bash
+# Source https://gnunet.org/dependencies and README
+
+apt-get update
+
+# Install required tools
+apt-get -y install git build-essential gnupg curl openssl gnutls-bin miniupnpc
+
+# Autotools required for compiling
+apt-get -y install autoconf automake libtool autopoint
+
+# Tools for debugging
+apt-get -y install gdb valgrind
+
+# Direct dependencies obtained from README
+apt-get -y install libmicrohttpd-dev
+apt-get -y install libextractor-dev
+apt-get -y install libunistring-dev
+apt-get -y install libidn11-dev
+apt-get -y install libgcrypt20-dev
+apt-get -y install libgnutls30-dev
+apt-get -y install libltdl-dev
+apt-get -y install libcurl3
+apt-get -y install sqlite3 libsqlite3-dev
+apt-get -y install zlib1g-dev
+# apt-get -y install texlive-full # Skipped > 1GB
+# optional for gnunet-conversation
+# apt-get -y install libpulse-dev libopus-dev libogg-dev gstreamer1.0
+# optional for gnunet-qr
+apt-get -y install python-zbar
+# optional for experimental code
+apt-get -y install libglpk-dev
+#
+apt-get -y install libbluetooth-dev libjansson-dev
+
+# Compilation process
+addgroup gnunetdns
+adduser --system --home "/var/lib/gnunet" --group gnunet --shell /bin/sh
+# cd /gnunet
+# . bootstrap
+# export GNUNET_PREFIX=/usr/local/lib # or other directory of your choice
+# ./configure --prefix=$GNUNET_PREFIX/.. --with-extractor=$LE_PREFIX
+# make
+# make install
+# make check
+# echo "/usr/local/lib/gnunet" > /etc/ld.so.conf.d/libgnunet.conf
+# ldconfig
+# sudo -u gnunet gnunet-arm -s