2022-07-15 23:26:45 -04:00
|
|
|
#! /usr/bin/env bash
|
2021-04-03 16:39:26 -04:00
|
|
|
set -e
|
|
|
|
|
2023-01-23 16:41:27 +00:00
|
|
|
SCRIPT_DIR=$(CDPATH= cd -- "$(dirname -- "$0")" && pwd -P)/..
|
2022-02-17 16:31:14 -05:00
|
|
|
cd "$SCRIPT_DIR" || exit 1
|
|
|
|
|
2022-07-15 23:45:55 -04:00
|
|
|
. "$SCRIPT_DIR/i2pversion"
|
2021-05-22 22:23:03 -04:00
|
|
|
|
2021-07-15 15:48:34 -04:00
|
|
|
if [ -f i2pversion_override ]; then
|
2022-07-15 23:45:55 -04:00
|
|
|
. "$SCRIPT_DIR/i2pversion_override"
|
2021-07-15 15:48:34 -04:00
|
|
|
fi
|
|
|
|
|
2022-07-15 23:45:55 -04:00
|
|
|
. "$SCRIPT_DIR/config.sh"
|
2022-04-20 14:09:40 -04:00
|
|
|
|
|
|
|
if [ -f config_overide.sh ]; then
|
2022-07-15 23:45:55 -04:00
|
|
|
. "$SCRIPT_DIR/config_override.sh"
|
2022-04-20 14:09:40 -04:00
|
|
|
fi
|
|
|
|
|
2023-01-23 20:43:08 +00:00
|
|
|
"$SCRIPT_DIR"/buildscripts/version.sh
|
|
|
|
"$SCRIPT_DIR"/buildscripts/licenses.sh
|
|
|
|
|
2022-10-09 16:07:02 -04:00
|
|
|
if [ -z $machine ]; then
|
|
|
|
unameOut="$(uname -s)"
|
|
|
|
case "${unameOut}" in
|
|
|
|
Linux*) machine=Linux;;
|
|
|
|
Darwin*) machine=Mac;;
|
|
|
|
*) machine="UNKNOWN:${unameOut}"
|
|
|
|
esac
|
|
|
|
fi
|
2022-10-08 23:49:29 -04:00
|
|
|
|
2023-01-23 18:25:48 +00:00
|
|
|
ICON="$SCRIPT_DIR/src/icons/ui2pbrowser_icon.ico"
|
2023-01-03 17:57:27 +00:00
|
|
|
|
2022-10-08 23:49:29 -04:00
|
|
|
if [ "$machine" = "Mac" ]; then
|
2022-10-09 01:27:45 -04:00
|
|
|
rm -rf I2P
|
2023-01-23 18:25:48 +00:00
|
|
|
"$SCRIPT_DIR"/buildscripts/getprebuilt.sh
|
2022-10-09 01:27:45 -04:00
|
|
|
exit 0
|
2022-10-08 23:49:29 -04:00
|
|
|
elif [ "$machine" = "Linux" ]; then
|
2022-10-09 01:27:45 -04:00
|
|
|
rm -rf I2P
|
2023-01-23 18:25:48 +00:00
|
|
|
"$SCRIPT_DIR"/buildscripts/getprebuilt.sh
|
2022-10-09 01:27:45 -04:00
|
|
|
exit 0
|
2023-01-03 17:57:27 +00:00
|
|
|
elif [ "$machine" = "unix" ]; then
|
2023-01-23 17:23:58 +00:00
|
|
|
ICON="$SCRIPT_DIR"/src/icons/windowsUIToopie2.png
|
2023-01-23 16:15:24 +00:00
|
|
|
export EXTRACODE="unix"
|
|
|
|
export EXTRA=" public final static String EXTRA = \"-$EXTRACODE\";"
|
2022-10-08 23:49:29 -04:00
|
|
|
fi
|
|
|
|
|
2023-01-23 18:25:48 +00:00
|
|
|
. "$SCRIPT_DI"$SCRIPT_DIR"/buildscripts/launcher.sh"
|
2021-04-03 16:39:26 -04:00
|
|
|
|
|
|
|
if [ -z $I2P_VERSION ]; then
|
2023-01-23 17:19:54 +00:00
|
|
|
I2P_VERSION=$("$JAVA_HOME"/bin/java -cp $SCRIPT_DIR/build/router.jar net.i2p.router.RouterVersion | sed "s/.*: //" | head -n 1 | sed 's|-|.|g')
|
2021-04-03 16:39:26 -04:00
|
|
|
fi
|
2022-10-08 23:49:29 -04:00
|
|
|
|
2021-04-03 16:39:26 -04:00
|
|
|
echo "preparing to invoke jpackage for I2P version $I2P_VERSION"
|
|
|
|
|
2022-07-12 01:27:33 -04:00
|
|
|
rm -rf I2P
|
2022-09-11 00:21:57 -04:00
|
|
|
|
2022-10-18 16:27:12 -04:00
|
|
|
if [ ! -d "I2P" ]; then
|
2021-04-03 16:39:26 -04:00
|
|
|
"$JAVA_HOME"/bin/jpackage --type app-image --name I2P --app-version "$I2P_VERSION" \
|
|
|
|
--verbose \
|
2021-10-30 20:38:55 -04:00
|
|
|
--java-options "-Xmx512m" \
|
|
|
|
--java-options "--add-opens java.base/java.lang=ALL-UNNAMED" \
|
|
|
|
--java-options "--add-opens java.base/sun.nio.fs=ALL-UNNAMED" \
|
|
|
|
--java-options "--add-opens java.base/java.nio=ALL-UNNAMED" \
|
2022-05-10 18:25:10 -04:00
|
|
|
--java-options "--add-opens java.base/java.util.Properties=ALL-UNNAMED" \
|
|
|
|
--java-options "--add-opens java.base/java.util.Properties.defaults=ALL-UNNAMED" \
|
2021-04-03 16:39:26 -04:00
|
|
|
$JPACKAGE_OPTS \
|
2023-01-23 17:19:54 +00:00
|
|
|
--resource-dir $SCRIPT_DIR/build \
|
2023-01-23 17:23:58 +00:00
|
|
|
--app-content "$SCRIPT_DIR"/src/I2P/config \
|
|
|
|
--app-content "$SCRIPT_DIR"/src/unix/torbrowser.sh \
|
|
|
|
--app-content "$SCRIPT_DIR"/src/win/torbrowser-windows.sh \
|
|
|
|
--app-content "$SCRIPT_DIR"/src/icons/windowsUIToopie2.png \
|
|
|
|
--app-content "$SCRIPT_DIR"/src/icons/ui2pbrowser_icon.ico \
|
2023-01-03 17:57:27 +00:00
|
|
|
--icon "${ICON}" \
|
2023-01-23 17:19:54 +00:00
|
|
|
--input $SCRIPT_DIR/build --main-jar launcher.jar --main-class net.i2p.router.WinLauncher
|
2022-10-18 16:27:12 -04:00
|
|
|
fi
|
2022-05-20 12:53:42 -04:00
|
|
|
|
2022-05-20 13:11:45 -04:00
|
|
|
cp "$I2P_PKG/licenses/"* license/
|
2023-01-23 18:25:48 +00:00
|
|
|
cp "$SCRIPT_DIR/../i2p.i2p.jpackage-build/LICENSE.txt" license/I2P.txt
|
2023-01-23 18:45:35 +00:00
|
|
|
|
|
|
|
|
|
|
|
mkdir -p "$SCRIPT_DIR"/build/I2P
|
|
|
|
cp -rv "$SCRIPT_DIR"/I2P/* "$SCRIPT_DIR"/build/I2P
|
2024-08-26 18:05:57 -04:00
|
|
|
cp -rv src/I2P/config build/I2P/config
|
|
|
|
zip -r I2P-Prebuilt.zip build/I2P/
|