#!/usr/bin/sh
#----------------------------------------------------------------------------
# /tmp/install.sh - java-25-openjdk-dev installation
#
# Creation   :  2026-02-09 holbru
# Last update:  $Id$
#
# Copyright (c) 2026-@@YEAR@@ Holger Bruenjes, holgerbruenjes(at)gmx(dot)net
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#----------------------------------------------------------------------------

# set package name
package_name=java-25-openjdk-dev

# ---------------------------------------------------------------------------
# check for folder
# ---------------------------------------------------------------------------
/usr/bin/mkdir -p /usr/share/applications

# ---------------------------------------------------------------------------
# activate
# ---------------------------------------------------------------------------
ver=25
/usr/sbin/update-alternatives \
  --install /usr/bin/javac javac /usr/lib64/jvm/java-${ver}-openjdk/bin/javac ${ver}0 \
  --slave /usr/lib64/jvm/java java_sdk /usr/lib64/jvm/java-${ver}-openjdk \
  --slave /usr/bin/jar jar /usr/lib64/jvm/java-${ver}-openjdk/bin/jar \
  --slave /usr/bin/jarsigner jarsigner /usr/lib64/jvm/java-${ver}-openjdk/bin/jarsigner \
  --slave /usr/bin/javadoc javadoc /usr/lib64/jvm/java-${ver}-openjdk/bin/javadoc \
  --slave /usr/bin/javap javap /usr/lib64/jvm/java-${ver}-openjdk/bin/javap \
  --slave /usr/bin/jcmd jcmd /usr/lib64/jvm/java-${ver}-openjdk/bin/jcmd \
  --slave /usr/bin/jconsole jconsole /usr/lib64/jvm/java-${ver}-openjdk/bin/jconsole \
  --slave /usr/bin/jdb jdb /usr/lib64/jvm/java-${ver}-openjdk/bin/jdb \
  --slave /usr/bin/jdeprscan jdeprscan /usr/lib64/jvm/java-${ver}-openjdk/bin/jdeprscan \
  --slave /usr/bin/jdeps jdeps /usr/lib64/jvm/java-${ver}-openjdk/bin/jdeps \
  --slave /usr/bin/jhsdb jhsdb /usr/lib64/jvm/java-${ver}-openjdk/bin/jhsdb \
  --slave /usr/bin/jimage jimage /usr/lib64/jvm/java-${ver}-openjdk/bin/jimage \
  --slave /usr/bin/jinfo jinfo /usr/lib64/jvm/java-${ver}-openjdk/bin/jinfo \
  --slave /usr/bin/jlink jlink /usr/lib64/jvm/java-${ver}-openjdk/bin/jlink \
  --slave /usr/bin/jmap jmap /usr/lib64/jvm/java-${ver}-openjdk/bin/jmap \
  --slave /usr/bin/jmod jmod /usr/lib64/jvm/java-${ver}-openjdk/bin/jmod \
  --slave /usr/bin/jps jps /usr/lib64/jvm/java-${ver}-openjdk/bin/jps \
  --slave /usr/bin/jrunscript jrunscript /usr/lib64/jvm/java-${ver}-openjdk/bin/jrunscript \
  --slave /usr/bin/jshell jshell /usr/lib64/jvm/java-${ver}-openjdk/bin/jshell \
  --slave /usr/bin/jstack jstack /usr/lib64/jvm/java-${ver}-openjdk/bin/jstack \
  --slave /usr/bin/jstat jstat /usr/lib64/jvm/java-${ver}-openjdk/bin/jstat \
  --slave /usr/bin/jstatd jstatd /usr/lib64/jvm/java-${ver}-openjdk/bin/jstatd \
  --slave /usr/bin/jwebserver jwebserver /usr/lib64/jvm/java-${ver}-openjdk/bin/jwebserver \
  --slave /usr/bin/serialver serialver /usr/lib64/jvm/java-${ver}-openjdk/bin/serialver \
  --slave /usr/share/applications/jconsole.desktop jconsole.desktop \
      /usr/lib64/jvm/java-${ver}-openjdk-${ver}/lib/desktop/jconsole.desktop

/usr/sbin/update-alternatives \
  --install /usr/lib64/jvm/java-openjdk \
         java_sdk_openjdk /usr/lib64/jvm/java-${ver}-openjdk ${ver}0
/usr/sbin/update-alternatives \
   --install /usr/lib64/jvm/java-${ver} \
        java_sdk_${ver} /usr/lib64/jvm/java-${ver}-openjdk ${ver}0
   
# activate the best version
/usr/sbin/update-alternatives --auto javac
/usr/sbin/update-alternatives --auto java_sdk_openjdk
/usr/sbin/update-alternatives --auto java_sdk_${ver}

# check what is the best version
best=$(/usr/sbin/update-alternatives --query javac | /usr/bin/gawk '/Best/ {print $2}')

# if the best version not this version, use this version manual
    if ! echo "${best}" | /usr/bin/grep -q "${ver}"
then
    echo "javac manual /usr/lib64/jvm/java-${ver}-openjdk/bin/javac" | /usr/sbin/update-alternatives --set-selections  >/dev/null 2>&1
fi

# check what is the best version
best=$(/usr/sbin/update-alternatives --query java_sdk_openjdk | /usr/bin/gawk '/Best/ {print $2}')

# if the best version not this version, use this version manual
if ! echo "${best}" | /usr/bin/grep -q "${ver}"
then
    echo "java_sdk_openjdk manual /usr/lib64/jvm/java-${ver}-openjdk" | /usr/sbin/update-alternatives --set-selections  >/dev/null 2>&1
fi
    
# check what is the best version
best=$(/usr/sbin/update-alternatives --query java_sdk_${ver} | /usr/bin/gawk '/Best/ {print $2}')

# if the best version not this version, use this version manual
if ! echo "${best}" | /usr/bin/grep -q "${ver}"
then
    echo "java_sdk_${ver} manual /usr/lib64/jvm/java-${ver}-openjdk" | /usr/sbin/update-alternatives --set-selections  >/dev/null 2>&1
fi

exit 0
# ---------------------------------------------------------------------------
# end
# ---------------------------------------------------------------------------
