From fac7876b18196418f3516a5d4b39577de1730fae Mon Sep 17 00:00:00 2001 From: BJ Dweck Date: Thu, 3 Sep 2020 00:02:54 +0200 Subject: [PATCH] Added suport for bash auto-complete and config options for downloading burrow from the repo --- build.sh | 5 +++- stage2/04-rudefox-burrow/01-run.sh | 43 ++++++++++++++++++++++------ stage2/04-rudefox-burrow/02-run.sh | 9 ++++-- stage2/04-rudefox-burrow/03-run.sh | 5 ++++ stage2/04-rudefox-burrow/04-run.sh | 5 ++++ stage2/07-enable-overlayfs/00-run.sh | 2 +- 6 files changed, 56 insertions(+), 13 deletions(-) create mode 100755 stage2/04-rudefox-burrow/03-run.sh create mode 100755 stage2/04-rudefox-burrow/04-run.sh diff --git a/build.sh b/build.sh index 9daa4fd..d5f89bb 100755 --- a/build.sh +++ b/build.sh @@ -147,7 +147,10 @@ export PI_GEN=${PI_GEN:-pi-gen} export PI_GEN_REPO=${PI_GEN_REPO:-https://github.com/RPi-Distro/pi-gen} export IMG_NAME="${IMG_NAME:-RasbianBurrow}" -export RUDEFOX_BURROW_VERSION=${RUDEFOX_BURROW_VERSION:-"0.0.2"} +export RUDEFOX_REPO_USERNAME="${RUDEFOX_REPO_USERNAME:-anonymous}" +export RUDEFOX_REPO_PASSWORD="${RUDEFOX_REPO_PASSWORD:-default}" +export RUDEFOX_BURROW_VERSION="${RUDEFOX_BURROW_VERSION:-latest}" + export USE_QEMU="${USE_QEMU:-0}" export IMG_DATE="${IMG_DATE:-"$(date +%Y-%m-%d)"}" export IMG_FILENAME="${IMG_FILENAME:-"${IMG_DATE}-${IMG_NAME}"}" diff --git a/stage2/04-rudefox-burrow/01-run.sh b/stage2/04-rudefox-burrow/01-run.sh index bb5fa37..bf48b4b 100755 --- a/stage2/04-rudefox-burrow/01-run.sh +++ b/stage2/04-rudefox-burrow/01-run.sh @@ -1,11 +1,36 @@ -#!/bin/bash -e +#!/bin/bash -mkdir -p "${ROOTFS_DIR}/opt/" -rm -rf "${ROOTFS_DIR}/opt/rudefox-burrow" -wget "https://repo.rudefox.io/repository/maven-public/io/rudefox/burrow/${RUDEFOX_BURROW_VERSION}/burrow-${RUDEFOX_BURROW_VERSION}.tar" -tar -C "${ROOTFS_DIR}/opt/" -xvf burrow*.tar -mv "${ROOTFS_DIR}/opt/burrow-"* "${ROOTFS_DIR}/opt/rudefox-burrow" +export RUDEFOX_REPO_BASE_URL="https://repo.rudefox.io" +export RUDEFOX_REPO_RELEASES="maven-releases" +export RUDEFOX_GROUP="io.rudefox" +export RUDEFOX_BURROW_ID="burrow" +export OUTFILE="burrow.tar" + + +export WGET_OPTS="--https-only -O ${OUTFILE} -v" +export WGET_URL="${RUDEFOX_REPO_BASE_URL}/service/rest/v1/search/assets/download?group=${RUDEFOX_GROUP}&name=${RUDEFOX_BURROW_ID}&maven.extension=tar" + + +if [ $RUDEFOX_BURROW_VERSION != "latest" ] +then + export WGET_URL="${WGET_URL}&maven.baseVersion=${RUDEFOX_BURROW_VERSION}" +else + export WGET_URL="${WGET_URL}&sort=version" +fi + + +if [ $RUDEFOX_REPO_USERNAME != "anonymous" ] +then + export ENCODED_USERNAME=$(echo -n $RUDEFOX_REPO_USERNAME | base64 | sed 's/+/-/g; s/\//_/g; s/=/%3D/g';) + export ENCODED_PASSWORD=$(echo -n $RUDEFOX_REPO_PASSWORD | base64 | sed 's/+/-/g; s/\//_/g; s/=/%3D/g';) + export POST_DATA="username=${ENCODED_USERNAME}&password=${ENCODED_PASSWORD}" + + wget --save-cookies cookies.txt --keep-session-cookies --post-data $POST_DATA "${RUDEFOX_REPO_BASE_URL}/service/rapture/session" + + wget --load-cookies cookies.txt $WGET_OPTS $WGET_URL + + rm cookies.txt +else + wget $WGET_OPTS "${WGET_URL}&repository=${RUDEFOX_REPO_RELEASES}" +fi -on_chroot <> "${ROOTFS_DIR}/home/${FIRST_USER_NAME}/.bashrc" -echo "unset HISTFILE" >> "${ROOTFS_DIR}/home/${FIRST_USER_NAME}/.bashrc" +mkdir -p "${ROOTFS_DIR}/opt/" +rm -rf "${ROOTFS_DIR}/opt/rudefox-burrow" +tar -C "${ROOTFS_DIR}/opt/" -xvf burrow.tar +mv "${ROOTFS_DIR}/opt/burrow-"* "${ROOTFS_DIR}/opt/rudefox-burrow" +on_chroot <> "${ROOTFS_DIR}/home/${FIRST_USER_NAME}/.bashrc" +echo ". <(burrow generate-completion)" >> "${ROOTFS_DIR}/home/${FIRST_USER_NAME}/.bashrc" + diff --git a/stage2/04-rudefox-burrow/04-run.sh b/stage2/04-rudefox-burrow/04-run.sh new file mode 100755 index 0000000..486f809 --- /dev/null +++ b/stage2/04-rudefox-burrow/04-run.sh @@ -0,0 +1,5 @@ +#!/bin/bash -e + +echo "" >> "${ROOTFS_DIR}/home/${FIRST_USER_NAME}/.bashrc" +echo "unset HISTFILE" >> "${ROOTFS_DIR}/home/${FIRST_USER_NAME}/.bashrc" + diff --git a/stage2/07-enable-overlayfs/00-run.sh b/stage2/07-enable-overlayfs/00-run.sh index 4c98be6..24a801a 100755 --- a/stage2/07-enable-overlayfs/00-run.sh +++ b/stage2/07-enable-overlayfs/00-run.sh @@ -6,7 +6,7 @@ install -m 644 files/enable-overlayfs.target "${ROOTFS_DIR}/etc/systemd/system/" install -m 755 files/enable_overlayfs.sh "${ROOTFS_DIR}/usr/bin/" on_chroot << EOF -ln -s /etc/systemd/system/enable-overlayfs.service /etc/systemd/system/enable-overlayfs.target.wants/enable-overlayfs.service +ln -sf /etc/systemd/system/enable-overlayfs.service /etc/systemd/system/enable-overlayfs.target.wants/enable-overlayfs.service systemctl daemon-reload systemctl set-default enable-overlayfs.target EOF