From d163d38fb70ed72ed946cd8c7349527f5100afc2 Mon Sep 17 00:00:00 2001 From: EnumDev Date: Sun, 22 Mar 2026 16:08:58 +0200 Subject: [PATCH] Update package version to 26.03.22 --- pkg.info | 5 ++++- post_install.sh | 3 +++ post_update.sh | 3 +++ source-files/tide-java-utils | 10 +++++++++- source-files/tide-java-utils.bpmhook | 4 ++++ source-files/tide-java-utils.bpmhook.sh | 9 +++++++++ source.sh | 6 ++++++ 7 files changed, 38 insertions(+), 2 deletions(-) create mode 100644 post_install.sh create mode 100644 post_update.sh create mode 100644 source-files/tide-java-utils.bpmhook create mode 100644 source-files/tide-java-utils.bpmhook.sh diff --git a/pkg.info b/pkg.info index 8388cee..4f71a02 100644 --- a/pkg.info +++ b/pkg.info @@ -1,10 +1,13 @@ name: tide-java-utils description: Tide Linux utility for switching between java versions -version: 25.09.19 +version: 26.03.22 revision: 1 license: MIT +maintainers: + - enumdev@enumerated.dev architecture: any output_architecture: any type: source depends: - bash + - findutils diff --git a/post_install.sh b/post_install.sh new file mode 100644 index 0000000..f1cc9d7 --- /dev/null +++ b/post_install.sh @@ -0,0 +1,3 @@ +#!/bin/sh + +/var/lib/bpm/hook-scripts/tide-java-utils.sh diff --git a/post_update.sh b/post_update.sh new file mode 100644 index 0000000..f1cc9d7 --- /dev/null +++ b/post_update.sh @@ -0,0 +1,3 @@ +#!/bin/sh + +/var/lib/bpm/hook-scripts/tide-java-utils.sh diff --git a/source-files/tide-java-utils b/source-files/tide-java-utils index 3275deb..e85ddb0 100644 --- a/source-files/tide-java-utils +++ b/source-files/tide-java-utils @@ -10,6 +10,7 @@ function help() { } function get_installed_java_versions() { + [ -d /usr/lib/java ] || return for dir in $(find /usr/lib/java/ -mindepth 1 -maxdepth 1 -not -name 'default'); do echo $(basename "$dir") done @@ -52,9 +53,16 @@ case "$1" in ;; "get-default") echo -n "Current default java version: " - get_default_java_version || echo "None" + if ! get_default_java_version; then + echo "None" + exit 1 + fi ;; "list") + if ! get_installed_java_versions &> /dev/null; then + echo "No available java versions were found" + exit 1 + fi echo "Available java versions:" while read line; do echo "- $line" diff --git a/source-files/tide-java-utils.bpmhook b/source-files/tide-java-utils.bpmhook new file mode 100644 index 0000000..0c80576 --- /dev/null +++ b/source-files/tide-java-utils.bpmhook @@ -0,0 +1,4 @@ +trigger_operations: ["install", "upgrade", "remove"] +target_type: "path" +targets: ["usr/lib/java/*"] +run: "/var/lib/bpm/hook-scripts/tide-java-utils.sh" diff --git a/source-files/tide-java-utils.bpmhook.sh b/source-files/tide-java-utils.bpmhook.sh new file mode 100644 index 0000000..5f3e005 --- /dev/null +++ b/source-files/tide-java-utils.bpmhook.sh @@ -0,0 +1,9 @@ +#!/bin/sh + +if ! tide-java-utils get-default &> /dev/null; then + JAVA_PATH=`tide-java-utils list | grep '^-' | awk '{print $2}' | tail -n1` || exit 0 + if [ -n "$JAVA_PATH" ]; then + JAVA_NAME=`basename "$JAVA_PATH"` + tide-java-utils set-default "$JAVA_NAME" + fi +fi diff --git a/source.sh b/source.sh index 1268b5d..c56d83a 100644 --- a/source.sh +++ b/source.sh @@ -6,8 +6,14 @@ # This function is used to move the compiled files into the output directory package() { install -Dm755 "$BPM_WORKDIR"/tide-java-utils "$BPM_OUTPUT"/usr/bin/tide-java-utils + + # Install shell profile to add the default java version bin directory to path install -Dm644 "$BPM_WORKDIR"/java.profile "$BPM_OUTPUT"/etc/profile.d/java.sh + # Install bpm hook + install -Dm644 "$BPM_WORKDIR"/tide-java-utils.bpmhook "$BPM_OUTPUT"/var/lib/bpm/hooks/tide-java-utils.bpmhook + install -Dm755 "$BPM_WORKDIR"/tide-java-utils.bpmhook.sh "$BPM_OUTPUT"/var/lib/bpm/hook-scripts/tide-java-utils.sh + # Link to default java ln -sf ../lib/java/default/bin/java "$BPM_OUTPUT"/usr/bin/java