From 30b0e46dd82702799ba1306eb5b2c688313e1068 Mon Sep 17 00:00:00 2001 From: DaCool <8727384-DaCool@users.noreply.gitlab.com> Date: Fri, 11 Mar 2022 14:19:39 +0000 Subject: [PATCH] Update wrapper --- .gitignore | 2 +- .idea/gradle.xml | 2 +- exe-wrapper/README.md | 13 +++++++++++++ exe-wrapper/build.sh | 29 +++++++++++++++++++++++++++++ 4 files changed, 44 insertions(+), 2 deletions(-) create mode 100644 exe-wrapper/README.md create mode 100644 exe-wrapper/build.sh diff --git a/.gitignore b/.gitignore index 345f014..a6fb772 100644 --- a/.gitignore +++ b/.gitignore @@ -2,4 +2,4 @@ .gradle build out - +exe-wrapper/sheepit-wrapper.exe diff --git a/.idea/gradle.xml b/.idea/gradle.xml index 8da083f..11b2f5d 100644 --- a/.idea/gradle.xml +++ b/.idea/gradle.xml @@ -16,4 +16,4 @@ - \ No newline at end of file + diff --git a/exe-wrapper/README.md b/exe-wrapper/README.md new file mode 100644 index 0000000..2420752 --- /dev/null +++ b/exe-wrapper/README.md @@ -0,0 +1,13 @@ +# Exe wrapper + +Packs a java runtime, a sheepit-client jar and 7zip mini executable + config into one exe. + +## Requirements + +Needs `wget`, `7zr`, `unzip` and internet access for the latest sheepit jar + +## Wrapping + +Simply run `build.sh` and a `sheepit-wrapper.exe` should be built. + +For a docker container, take a look into our [tools repository](https://gitlab.com/sheepitrenderfarm/tools/-/tree/master/exe-wrapper). diff --git a/exe-wrapper/build.sh b/exe-wrapper/build.sh new file mode 100644 index 0000000..afab742 --- /dev/null +++ b/exe-wrapper/build.sh @@ -0,0 +1,29 @@ +#!/bin/bash +set -euo pipefail # Unofficial strict mode, see http://redsymbol.net/articles/unofficial-bash-strict-mode/ + +cd "$(dirname "$(readlink -f "$0")")" +# see https://stackoverflow.com/questions/3349105/how-can-i-set-the-current-working-directory-to-the-directory-of-the-script-in-ba + +# jvm is taken from https://adoptium.net/releases.html?variant=openjdk11&jvmVariant=hotspot +JVM_NAME="jdk-11.0.13+8-jre" + +# Creating folder structure +mkdir -p build/jre + +# Downloading client to the target directory +wget https://www.sheepit-renderfarm.com/media/applet/client-latest.php -O ./build/jre/sheepit-client.jar + +# Unzipping jre +unzip "$JVM_NAME".zip -d ./build/jre/ # Unzip JRE to be packaged +mv ./build/jre/"$JVM_NAME"/* ./build/jre/ +rm -d ./build/jre/"$JVM_NAME" + +# Compressing app package +cd build/jre +7zr a -mx=9 ../application.7z ./ + +# Building the exe bundle and cleaning up +cd ../.. +cat starter.sfx config.cfg ./build/application.7z > sheepit-wrapper.exe +rm -rf build/application.7z build/jre +echo "Build of sheepit-wrapper.exe successful"