Sophie

Sophie

distrib > Mageia > 5 > i586 > media > core-updates > by-pkgid > 3ea19af183d90d1b8b5011e1dd89ce18 > scriptlet

java-1.8.0-openjdk-headless-1.8.0.111-1.b16.1.mga5.i586.rpm

PRETRANS

<lua>
-- see https://bugzilla.redhat.com/show_bug.cgi?id=1038092 for whole issue
-- see https://bugzilla.redhat.com/show_bug.cgi?id=1290388 for pretrans over pre
-- if copy-jdk-configs is in transaction, it installs in pretrans to temp
-- if copy_jdk_configs is in temp, then it means that copy-jdk-configs is in tranasction  and so is
-- preferred over one in %{_libexecdir}. If it is not in transaction, then depends 
-- whether copy-jdk-configs is installed or not. If so, then configs are copied
-- (copy_jdk_configs from %{_libexecdir} used) or not copied at all
local posix = require "posix"
local debug = false

SOURCE1 = "/var/lib/rpm-state//copy_jdk_configs.lua"
SOURCE2 = "/usr/libexec/copy_jdk_configs.lua"

local stat1 = posix.stat(SOURCE1, "type");
local stat2 = posix.stat(SOURCE2, "type");

  if (stat1 ~= nil) then
  if (debug) then
    print(SOURCE1 .." exists - copy-jdk-configs in transaction, using this one.")
  end;
  package.path = package.path .. ";" .. SOURCE1
else 
  if (stat2 ~= nil) then
  if (debug) then
    print(SOURCE2 .." exists - copy-jdk-configs alrady installed and NOT in transation. Using.")
  end;
  package.path = package.path .. ";" .. SOURCE2
  else
    if (debug) then
      print(SOURCE1 .." does NOT exists")
      print(SOURCE2 .." does NOT exists")
      print("No config files will be copied")
    end
  return
  end
end
-- run contetn of included file with fake args
arg = {"--currentjvm", "java-1.8.0-openjdk-1.8.0.111-1.b16.1.mga5.i386", "--jvmdir", "/usr/lib/jvm", "--origname", "java-1.8.0-openjdk", "--origjavaver", "1.8.0", "--arch", "i386"}
require "copy_jdk_configs.lua"

POSTIN

/bin/sh

# FIXME: identical binaries are copied, not linked. This needs to be
# fixed upstream.
# The pretrans lua scriptlet prevents an unmodified java.security
# from being replaced via an update. It gets created as
# java.security.rpmnew instead. This invalidates the patch of
# JDK-8061210 of the January 2015 CPU, JDK-8043201 of the
# July 2015 CPU and JDK-8141287 of the January 2016 CPU. We
# fix this via a post scriptlet which runs on updates.
if [ "$1" -gt 1 ]; then
  javasecurity="/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.111-1.b16.1.mga5.i386/jre/lib/security/java.security"
  sum=$(md5sum "${javasecurity}" | cut -d' ' -f1)
  # This is the md5sum of an unmodified java.security file
  if [ "${sum}" = '1690ac33955594f71dc952c9e83fd396' -o \
       "${sum}" = 'b138695d0c0ea947e64a21a627d973ba' -o \
       "${sum}" = 'd17958676bdb9f9d941c8a59655311fb' -o \
       "${sum}" = '5463aef7dbf0bbcfe79e0336a7f92701' -o \
       "${sum}" = '400cc64d4dd31f36dc0cc2c701d603db' -o \
       "${sum}" = '321342219bb130d238ff144b9e5dbfc1' -o \
       "${sum}" = '134a37a84983b620f4d8d51a550c0c38' -o \
       "${sum}" = '5ea976e209d0d0b5b6ab148416123e02' -o \
       "${sum}" = '5ab4c77cf14fbd7f7ee6f51a7a73d88c' ]; then
    if [ -f "${javasecurity}.rpmnew" ]; then
      mv -f "${javasecurity}.rpmnew" "${javasecurity}"
    fi
  fi
fi

# MetaspaceShared::generate_vtable_methods not implemented for PPC JIT
#see https://bugzilla.redhat.com/show_bug.cgi?id=513605
/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.111-1.b16.1.mga5.i386/jre/bin/java -Xshare:dump >/dev/null 2>/dev/null

PRIORITY=1800111
if [ "" == "-debug" ]; then
  let PRIORITY=PRIORITY-1
fi

ext=.xz
alternatives \
  --install /usr/bin/java java /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.111-1.b16.1.mga5.i386/jre/bin/java $PRIORITY \
  --slave /usr/lib/jvm/jre jre /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.111-1.b16.1.mga5.i386/jre \
  --slave /usr/lib/jvm-exports/jre jre_exports /usr/lib/jvm-exports/jre-1.8.0-openjdk-1.8.0.111-1.b16.1.mga5.i386 \
  --slave /usr/bin/jjs jjs /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.111-1.b16.1.mga5.i386/jre/bin/jjs \
  --slave /usr/bin/keytool keytool /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.111-1.b16.1.mga5.i386/jre/bin/keytool \
  --slave /usr/bin/orbd orbd /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.111-1.b16.1.mga5.i386/jre/bin/orbd \
  --slave /usr/bin/pack200 pack200 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.111-1.b16.1.mga5.i386/jre/bin/pack200 \
  --slave /usr/bin/rmid rmid /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.111-1.b16.1.mga5.i386/jre/bin/rmid \
  --slave /usr/bin/rmiregistry rmiregistry /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.111-1.b16.1.mga5.i386/jre/bin/rmiregistry \
  --slave /usr/bin/servertool servertool /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.111-1.b16.1.mga5.i386/jre/bin/servertool \
  --slave /usr/bin/tnameserv tnameserv /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.111-1.b16.1.mga5.i386/jre/bin/tnameserv \
  --slave /usr/bin/policytool policytool /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.111-1.b16.1.mga5.i386/jre/bin/policytool \
  --slave /usr/bin/unpack200 unpack200 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.111-1.b16.1.mga5.i386/jre/bin/unpack200 \
  --slave /usr/share/man/man1/java.1$ext java.1$ext \
  /usr/share/man/man1/java-java-1.8.0-openjdk-1.8.0.111-1.b16.1.mga5.i386.1$ext \
  --slave /usr/share/man/man1/jjs.1$ext jjs.1$ext \
  /usr/share/man/man1/jjs-java-1.8.0-openjdk-1.8.0.111-1.b16.1.mga5.i386.1$ext \
  --slave /usr/share/man/man1/keytool.1$ext keytool.1$ext \
  /usr/share/man/man1/keytool-java-1.8.0-openjdk-1.8.0.111-1.b16.1.mga5.i386.1$ext \
  --slave /usr/share/man/man1/orbd.1$ext orbd.1$ext \
  /usr/share/man/man1/orbd-java-1.8.0-openjdk-1.8.0.111-1.b16.1.mga5.i386.1$ext \
  --slave /usr/share/man/man1/pack200.1$ext pack200.1$ext \
  /usr/share/man/man1/pack200-java-1.8.0-openjdk-1.8.0.111-1.b16.1.mga5.i386.1$ext \
  --slave /usr/share/man/man1/rmid.1$ext rmid.1$ext \
  /usr/share/man/man1/rmid-java-1.8.0-openjdk-1.8.0.111-1.b16.1.mga5.i386.1$ext \
  --slave /usr/share/man/man1/rmiregistry.1$ext rmiregistry.1$ext \
  /usr/share/man/man1/rmiregistry-java-1.8.0-openjdk-1.8.0.111-1.b16.1.mga5.i386.1$ext \
  --slave /usr/share/man/man1/servertool.1$ext servertool.1$ext \
  /usr/share/man/man1/servertool-java-1.8.0-openjdk-1.8.0.111-1.b16.1.mga5.i386.1$ext \
  --slave /usr/share/man/man1/tnameserv.1$ext tnameserv.1$ext \
  /usr/share/man/man1/tnameserv-java-1.8.0-openjdk-1.8.0.111-1.b16.1.mga5.i386.1$ext \
  --slave /usr/share/man/man1/policytool.1$ext policytool.1$ext \
  /usr/share/man/man1/policytool-java-1.8.0-openjdk-1.8.0.111-1.b16.1.mga5.i386.1$ext \
  --slave /usr/share/man/man1/unpack200.1$ext unpack200.1$ext \
  /usr/share/man/man1/unpack200-java-1.8.0-openjdk-1.8.0.111-1.b16.1.mga5.i386.1$ext

for X in openjdk 1.8.0 ; do
  alternatives \
    --install /usr/lib/jvm/jre-"$X" \
    jre_"$X" /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.111-1.b16.1.mga5.i386/jre $PRIORITY \
    --slave /usr/lib/jvm-exports/jre-"$X" \
    jre_"$X"_exports /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.111-1.b16.1.mga5.i386/jre
done

update-alternatives --install /usr/lib/jvm/jre-1.8.0-openjdk jre_1.8.0_openjdk /usr/lib/jvm/jre-1.8.0-openjdk-1.8.0.111-1.b16.1.mga5.i386 $PRIORITY \
--slave /usr/lib/jvm-exports/jre-1.8.0       jre_1.8.0_openjdk_exports      /usr/lib/jvm-exports/java-1.8.0-openjdk-1.8.0.111-1.b16.1.mga5.i386

update-desktop-database /usr/share/applications &> /dev/null || :
/bin/touch --no-create /usr/share/icons/hicolor &>/dev/null || :
exit 0

POSTUN

/bin/sh

  alternatives --remove java /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.111-1.b16.1.mga5.i386/jre/bin/java
  alternatives --remove jre_openjdk /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.111-1.b16.1.mga5.i386/jre
  alternatives --remove jre_1.8.0 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.111-1.b16.1.mga5.i386/jre
  alternatives --remove jre_1.8.0_openjdk /usr/lib/jvm/jre-1.8.0-openjdk-1.8.0.111-1.b16.1.mga5.i386