commit 07d5199d600cbd9566ac49ee35f99bb15eff2d6e
Author: Tim Schubert <y0067212@tu-bs.de>
Date:   Mon Jun 1 21:06:11 2020 +0200

    init: Dockerfile and Makefile

diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..4cfc12a
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1 @@
+bake/
diff --git a/Makefile b/Makefile
new file mode 100644
index 0000000..4ef0720
--- /dev/null
+++ b/Makefile
@@ -0,0 +1,23 @@
+.PHONY: configure build docker-build-image all build configure clean test
+
+DOCKER_RUN=docker run -it --mount type=bind,source="$(PWD)"/bake,target=/usr/bake ns-3-leo
+
+all: docker-build docker-run
+
+docker-build-image: docker/Dockerfile
+	cd docker && docker build -t ns-3-leo .
+
+bake:
+	git clone https://gitlab.com/nsnam/bake.git
+
+configure: docker-build-image bake
+	$(DOCKER_RUN) /bin/bash -c './bake.py configure -e ns-3-leo && ./bake.py check && ./bake.py download'
+
+build: docker-build-image bake
+	$(DOCKER_RUN) ./bake.py build -vvv
+
+clean: docker-build-image
+	$(DOCKER_RUN) ./bake.py clean
+
+test: docker-build-image
+	$(DOCKER_RUN) /bin/bash -c 'cd source/ns-3-leo/ && ./test.py'
diff --git a/TODO.md b/TODO.md
new file mode 100644
index 0000000..7b39c4a
--- /dev/null
+++ b/TODO.md
@@ -0,0 +1,11 @@
+2020-06-01
+----------
+
+1. ✓ read ns-3 introduction
+2. ✓ figure out how to package ns-3 module using bake
+3. ✓ create project for module and build chain (Docker)
+
+2020-06-02
+----------
+
+1. workpackages -> issues and milestones on GL or git-bug
diff --git a/docker/Dockerfile b/docker/Dockerfile
new file mode 100644
index 0000000..6295e97
--- /dev/null
+++ b/docker/Dockerfile
@@ -0,0 +1,76 @@
+FROM ubuntu:19.10
+LABEL Description="Docker image for NS-3 Network Simulator"
+
+ENV DEBIAN_FRONTEND=noninteractive
+
+RUN apt-get update
+
+# General dependencies
+RUN apt-get install -y \
+  make \
+  git \
+  mercurial \
+  wget \
+  vim \
+  autoconf \
+  bzr \
+  cvs \
+  unrar \
+  build-essential \
+  clang \
+  valgrind \
+  gsl-bin \
+  libgsl-dev \
+  flex \
+  bison \
+  libfl-dev \
+  tcpdump \
+  sqlite \
+  sqlite3 \
+  libsqlite3-dev \
+  libxml2 \
+  libxml2-dev \
+  vtun \
+  unzip \
+  lxc
+
+# QT components
+RUN apt-get install -y \
+  qtbase5-dev \
+  qt4-dev-tools
+
+# Python components
+RUN apt-get install -y \
+  python \
+  python3 \
+  python-dev \
+  python3-dev \
+  python-setuptools \
+  python3-setuptools \
+  python3-requests \
+  python3-gi-cairo \
+  python-gi-cairo \
+  python-pygraphviz \
+  python3-pygraphviz \
+   python-gobject \
+  python-gobject-2 \
+  python3-distro \
+  gir1.2-gtk-3.0 \
+  cmake \
+  libc6-dev \
+  libc6-dev-i386 \
+  g++-multilib
+
+# Setup bake env
+ENV BAKE_HOME=/usr/bake
+ENV PATH=$PATH:$BAKE_HOME:$BAKE_HOME/build/bin
+ENV PYTHONPATH=$PYTHONPATH:$BAKE_HOME:$BAKE_HOME/build/lib
+
+# Create working directory where bake home will be mounted
+RUN mkdir $BAKE_HOME
+WORKDIR /usr/bake
+
+# Cleanup
+RUN apt-get clean && \
+  rm -rf /var/lib/apt
+