diff --git a/admin/README.deb.lumiera.org.PUB.gpg b/admin/README.deb.lumiera.org.PUB.gpg new file mode 100644 index 000000000..de4eaa2b1 --- /dev/null +++ b/admin/README.deb.lumiera.org.PUB.gpg @@ -0,0 +1,5 @@ +This is the Public Key of the Package signing GPG key +used for building of Debian DEB packages on Lumiera.org + +Fingerprint: D0333C21252B66D54A4CC1D265B66B07A1DE94B2 +UID: Hermann Vosseler diff --git a/admin/build_lumiera-build-dependencies.sh b/admin/build_lumiera-build-dependencies.sh new file mode 100755 index 000000000..96fbf8a76 --- /dev/null +++ b/admin/build_lumiera-build-dependencies.sh @@ -0,0 +1,61 @@ +#!/bin/sh +# +# build_lumiera-build-dependencies.sh - prepare/build on a pristine Debian/Ubuntu system (Docker) +# +# +#------------------------------------------------------Setup +# The Debian DEB Depot to retrieve the source packages +DEBIAN_REPO="http://lumiera.org/debian/" +SRC_DISTRO="stretch" +REPO_SECTION="experimental" +# +# GPG pubkey to trust for signed packages +TRUSTED_GPG=$(dirname $0)/deb.lumiera.org.PUB.gpg +# +# Directory for building DEB packages +PACK_DIR=./pack +# +#------------------------------------------------------Setup(End) +# +fail() { + echo "\nFAIL: $1\n\n" + exit 1 +} + +# Sanity-Checks +[ -f $TRUSTED_GPG ] || fail "GPG Key not found: $TRUSTED_GPG" +mkdir -p $PACK_DIR +[ -w $PACK_DIR ] || fail "Unable to build. Can not write to $PACK_DIR" + + +# prepare the host system with Lumiera package sources +cp $TRUSTED_GPG /etc/apt/trusted.gpg.d/ +chmod a+r-x /etc/apt/trusted.gpg.d/$(basename $TRUSTED_GPG) +echo "deb-src $DEBIAN_REPO $SRC_DISTRO $REPO_SECTION" > /etc/apt/sources.list.d/55-lumiera.list + +apt update +apt install -y build-essential ca-certificates +apt update + +# build some special build dependencies from source +WORKDIR=$(pwd -P) +cd $PACK_DIR + +echo "\n\n======= building NoBug =======\n" +apt-get -y build-dep nobug +apt-get source --compile nobug +dpkg -i nobug-dev*deb libnobug*deb || fail "installing NoBug" +echo "\n\n======= building GDLmm =======\n" +apt-get -y build-dep libgdlmm-3-dev +apt-get source --compile libgdlmm-3-dev || fail "installing GDLmm" +dpkg -i libgdlmm-3*deb + +# install the build dependencies of Lumiera from DEB +echo "\n\nInstalling Lumiera build dependencies...\n" +apt-get -y build-dep lumiera + +# return to the working directory +cd $WORKDIR + +echo "Build-Dependencies of Lumiera successfully installed.\n\n" + diff --git a/admin/deb.lumiera.org.PUB.gpg b/admin/deb.lumiera.org.PUB.gpg new file mode 100644 index 000000000..6403dc3b6 Binary files /dev/null and b/admin/deb.lumiera.org.PUB.gpg differ diff --git a/admin/docker_open-lumiera-buildenv.sh b/admin/docker_open-lumiera-buildenv.sh new file mode 100755 index 000000000..2c245c209 --- /dev/null +++ b/admin/docker_open-lumiera-buildenv.sh @@ -0,0 +1,44 @@ +#!/bin/sh +# +# docker_open-lumiera-buildenv.sh - launch Docker container with interactive build shell +# +# +#------------------------------------------------------Setup +# +# Working directory path on the host +WORKDIR_HOST="/home/$USER/devel/lumi" +# +# bind-mount of the working dir in the container +WORKDIR_GUEST="/lumi" +# +# Docker image-ID to launch +DOCKER_IMAGE="ubuntu:bionic" +# +# Script code to inject into interactive shell +COMMANDS=$(cat) <