From 1fa08f51a175f2f0d2cad91dea0732c6ee02b057 Mon Sep 17 00:00:00 2001 From: Jiri Vanek Date: Mon, 4 Nov 2024 13:16:35 +0100 Subject: [PATCH 01/14] Properly obsoleting all jdks since f42: https://fedoraproject.org/wiki/Changes/ThirdPartyLegacyJdks --- adoptium-temurin-java-repository.spec | 28 +++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/adoptium-temurin-java-repository.spec b/adoptium-temurin-java-repository.spec index 7e33cde..27c1e8c 100644 --- a/adoptium-temurin-java-repository.spec +++ b/adoptium-temurin-java-repository.spec @@ -1,6 +1,31 @@ %global reponame %{name}.repo %global repodir %{_sysconfdir}/yum.repos.d %global thirdparty %{_prefix}/lib/fedora-third-party/conf.d + +%define obsoleteLine() %{expand: +Obsoletes: java-%{?1}-openjdk%{?2}%{?3} < 10000 +Obsoletes: java-%{?1}-openjdk-portable%{?2}%{?3} < 10000 +} + +%define obsoleteLines() %{expand: +%{obsoleteLine -- %{?1} %{?2} %{nil}} +%{obsoleteLine -- %{?1} %{?2} -fastdebug} +%{obsoleteLine -- %{?1} %{?2} -slowdebug} +%{obsoleteLine -- %{?1} %{?2} -unstripped} +} + +%define obsoleteJdk() %{expand: +%{obsoleteLines -- %{?1} %{nil}} +%{obsoleteLines -- %{?1} -headless} +%{obsoleteLines -- %{?1} -devel} +%{obsoleteLines -- %{?1} -demo} +%{obsoleteLines -- %{?1} -src} +%{obsoleteLines -- %{?1} -javadoc} +%{obsoleteLines -- %{?1} -javadoc-zip} +%{obsoleteLines -- %{?1} -docs} +%{obsoleteLines -- %{?1} -sources} +} + # 0/1 may vary in time, and is always enabled to 1 per FESCO exception %global enabled_by_default 0 @@ -20,6 +45,9 @@ BuildArch: noarch # fedora-third-party contains tools to work with 3rd party repos and owns fedora-third-party/conf.d/ directory Requires: fedora-third-party +%{obsoleteJdk -- 1.8.0} +%{obsoleteJdk -- 11} +%{obsoleteJdk -- 17} %description This package adds configuration to add a remote repository From 2db18d8eea8cdcb5cd73607b44c9fbcbf7847799 Mon Sep 17 00:00:00 2001 From: Jiri Vanek Date: Mon, 4 Nov 2024 13:20:55 +0100 Subject: [PATCH 02/14] Improved README --- README.md | 234 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 234 insertions(+) diff --git a/README.md b/README.md index b39a010..e23ca31 100644 --- a/README.md +++ b/README.md @@ -2,6 +2,240 @@ The adoptium-temurin-java-repository package +https://fedoraproject.org/wiki/Changes/ThirdPartyLegacyJdks + This package adds Eclipse Adoptium JDKs as a replacement for JDKs which are no longer included in Fedora https://adoptium.net/installation/linux/ + +This package adds configuration to add a remote repository +of https://adoptium.net/installation/linux/#_centosrhelfedora_instructions , +if third-party repositories are enabled on a Fedora Linux system. +This repository contains all JDKS which are live and not available in fedora +as per https://fedoraproject.org/wiki/Changes/ThirdPartyLegacyJdks . +It (4.11.2024) installs: temurin-11-jdk temurin-11-jre temurin-17-jdk temurin-17-jre temurin-21-jdk + temurin-21-jre temurin-22-jdk temurin-22-jre temurin-23-jdk temurin-23-jre temurin-8-jdk + temurin-8-jre +Warning, jdk contains both jre and jdk, so if you install jdk and jre (of same version) +you will have two java alternatives masters, and one javac master. +Since f42 it will be obsoleting retired java-(1.8.0,11,17)-openjdk-* + + +Obsoletes: + * java-1.8.0-openjdk + * java-1.8.0-openjdk-demo + * java-1.8.0-openjdk-demo-fastdebug + * java-1.8.0-openjdk-demo-slowdebug + * java-1.8.0-openjdk-demo-unstripped + * java-1.8.0-openjdk-devel + * java-1.8.0-openjdk-devel-fastdebug + * java-1.8.0-openjdk-devel-slowdebug + * java-1.8.0-openjdk-devel-unstripped + * java-1.8.0-openjdk-docs + * java-1.8.0-openjdk-docs-fastdebug + * java-1.8.0-openjdk-docs-slowdebug + * java-1.8.0-openjdk-docs-unstripped + * java-1.8.0-openjdk-fastdebug + * java-1.8.0-openjdk-headless + * java-1.8.0-openjdk-headless-fastdebug + * java-1.8.0-openjdk-headless-slowdebug + * java-1.8.0-openjdk-headless-unstripped + * java-1.8.0-openjdk-javadoc + * java-1.8.0-openjdk-javadoc-fastdebug + * java-1.8.0-openjdk-javadoc-slowdebug + * java-1.8.0-openjdk-javadoc-unstripped + * java-1.8.0-openjdk-javadoc-zip + * java-1.8.0-openjdk-javadoc-zip-fastdebug + * java-1.8.0-openjdk-javadoc-zip-slowdebug + * java-1.8.0-openjdk-javadoc-zip-unstripped + * java-1.8.0-openjdk-portable + * java-1.8.0-openjdk-portable-demo + * java-1.8.0-openjdk-portable-demo-fastdebug + * java-1.8.0-openjdk-portable-demo-slowdebug + * java-1.8.0-openjdk-portable-demo-unstripped + * java-1.8.0-openjdk-portable-devel + * java-1.8.0-openjdk-portable-devel-fastdebug + * java-1.8.0-openjdk-portable-devel-slowdebug + * java-1.8.0-openjdk-portable-devel-unstripped + * java-1.8.0-openjdk-portable-docs + * java-1.8.0-openjdk-portable-docs-fastdebug + * java-1.8.0-openjdk-portable-docs-slowdebug + * java-1.8.0-openjdk-portable-docs-unstripped + * java-1.8.0-openjdk-portable-fastdebug + * java-1.8.0-openjdk-portable-headless + * java-1.8.0-openjdk-portable-headless-fastdebug + * java-1.8.0-openjdk-portable-headless-slowdebug + * java-1.8.0-openjdk-portable-headless-unstripped + * java-1.8.0-openjdk-portable-javadoc + * java-1.8.0-openjdk-portable-javadoc-fastdebug + * java-1.8.0-openjdk-portable-javadoc-slowdebug + * java-1.8.0-openjdk-portable-javadoc-unstripped + * java-1.8.0-openjdk-portable-javadoc-zip + * java-1.8.0-openjdk-portable-javadoc-zip-fastdebug + * java-1.8.0-openjdk-portable-javadoc-zip-slowdebug + * java-1.8.0-openjdk-portable-javadoc-zip-unstripped + * java-1.8.0-openjdk-portable-slowdebug + * java-1.8.0-openjdk-portable-sources + * java-1.8.0-openjdk-portable-sources-fastdebug + * java-1.8.0-openjdk-portable-sources-slowdebug + * java-1.8.0-openjdk-portable-sources-unstripped + * java-1.8.0-openjdk-portable-src + * java-1.8.0-openjdk-portable-src-fastdebug + * java-1.8.0-openjdk-portable-src-slowdebug + * java-1.8.0-openjdk-portable-src-unstripped + * java-1.8.0-openjdk-portable-unstripped + * java-1.8.0-openjdk-slowdebug + * java-1.8.0-openjdk-sources + * java-1.8.0-openjdk-sources-fastdebug + * java-1.8.0-openjdk-sources-slowdebug + * java-1.8.0-openjdk-sources-unstripped + * java-1.8.0-openjdk-src + * java-1.8.0-openjdk-src-fastdebug + * java-1.8.0-openjdk-src-slowdebug + * java-1.8.0-openjdk-src-unstripped + * java-1.8.0-openjdk-unstripped + * java-11-openjdk + * java-11-openjdk-demo + * java-11-openjdk-demo-fastdebug + * java-11-openjdk-demo-slowdebug + * java-11-openjdk-demo-unstripped + * java-11-openjdk-devel + * java-11-openjdk-devel-fastdebug + * java-11-openjdk-devel-slowdebug + * java-11-openjdk-devel-unstripped + * java-11-openjdk-docs + * java-11-openjdk-docs-fastdebug + * java-11-openjdk-docs-slowdebug + * java-11-openjdk-docs-unstripped + * java-11-openjdk-fastdebug + * java-11-openjdk-headless + * java-11-openjdk-headless-fastdebug + * java-11-openjdk-headless-slowdebug + * java-11-openjdk-headless-unstripped + * java-11-openjdk-javadoc + * java-11-openjdk-javadoc-fastdebug + * java-11-openjdk-javadoc-slowdebug + * java-11-openjdk-javadoc-unstripped + * java-11-openjdk-javadoc-zip + * java-11-openjdk-javadoc-zip-fastdebug + * java-11-openjdk-javadoc-zip-slowdebug + * java-11-openjdk-javadoc-zip-unstripped + * java-11-openjdk-portable + * java-11-openjdk-portable-demo + * java-11-openjdk-portable-demo-fastdebug + * java-11-openjdk-portable-demo-slowdebug + * java-11-openjdk-portable-demo-unstripped + * java-11-openjdk-portable-devel + * java-11-openjdk-portable-devel-fastdebug + * java-11-openjdk-portable-devel-slowdebug + * java-11-openjdk-portable-devel-unstripped + * java-11-openjdk-portable-docs + * java-11-openjdk-portable-docs-fastdebug + * java-11-openjdk-portable-docs-slowdebug + * java-11-openjdk-portable-docs-unstripped + * java-11-openjdk-portable-fastdebug + * java-11-openjdk-portable-headless + * java-11-openjdk-portable-headless-fastdebug + * java-11-openjdk-portable-headless-slowdebug + * java-11-openjdk-portable-headless-unstripped + * java-11-openjdk-portable-javadoc + * java-11-openjdk-portable-javadoc-fastdebug + * java-11-openjdk-portable-javadoc-slowdebug + * java-11-openjdk-portable-javadoc-unstripped + * java-11-openjdk-portable-javadoc-zip + * java-11-openjdk-portable-javadoc-zip-fastdebug + * java-11-openjdk-portable-javadoc-zip-slowdebug + * java-11-openjdk-portable-javadoc-zip-unstripped + * java-11-openjdk-portable-slowdebug + * java-11-openjdk-portable-sources + * java-11-openjdk-portable-sources-fastdebug + * java-11-openjdk-portable-sources-slowdebug + * java-11-openjdk-portable-sources-unstripped + * java-11-openjdk-portable-src + * java-11-openjdk-portable-src-fastdebug + * java-11-openjdk-portable-src-slowdebug + * java-11-openjdk-portable-src-unstripped + * java-11-openjdk-portable-unstripped + * java-11-openjdk-slowdebug + * java-11-openjdk-sources + * java-11-openjdk-sources-fastdebug + * java-11-openjdk-sources-slowdebug + * java-11-openjdk-sources-unstripped + * java-11-openjdk-src + * java-11-openjdk-src-fastdebug + * java-11-openjdk-src-slowdebug + * java-11-openjdk-src-unstripped + * java-11-openjdk-unstripped + * java-17-openjdk + * java-17-openjdk-demo + * java-17-openjdk-demo-fastdebug + * java-17-openjdk-demo-slowdebug + * java-17-openjdk-demo-unstripped + * java-17-openjdk-devel + * java-17-openjdk-devel-fastdebug + * java-17-openjdk-devel-slowdebug + * java-17-openjdk-devel-unstripped + * java-17-openjdk-docs + * java-17-openjdk-docs-fastdebug + * java-17-openjdk-docs-slowdebug + * java-17-openjdk-docs-unstripped + * java-17-openjdk-fastdebug + * java-17-openjdk-headless + * java-17-openjdk-headless-fastdebug + * java-17-openjdk-headless-slowdebug + * java-17-openjdk-headless-unstripped + * java-17-openjdk-javadoc + * java-17-openjdk-javadoc-fastdebug + * java-17-openjdk-javadoc-slowdebug + * java-17-openjdk-javadoc-unstripped + * java-17-openjdk-javadoc-zip + * java-17-openjdk-javadoc-zip-fastdebug + * java-17-openjdk-javadoc-zip-slowdebug + * java-17-openjdk-javadoc-zip-unstripped + * java-17-openjdk-portable + * java-17-openjdk-portable-demo + * java-17-openjdk-portable-demo-fastdebug + * java-17-openjdk-portable-demo-slowdebug + * java-17-openjdk-portable-demo-unstripped + * java-17-openjdk-portable-devel + * java-17-openjdk-portable-devel-fastdebug + * java-17-openjdk-portable-devel-slowdebug + * java-17-openjdk-portable-devel-unstripped + * java-17-openjdk-portable-docs + * java-17-openjdk-portable-docs-fastdebug + * java-17-openjdk-portable-docs-slowdebug + * java-17-openjdk-portable-docs-unstripped + * java-17-openjdk-portable-fastdebug + * java-17-openjdk-portable-headless + * java-17-openjdk-portable-headless-fastdebug + * java-17-openjdk-portable-headless-slowdebug + * java-17-openjdk-portable-headless-unstripped + * java-17-openjdk-portable-javadoc + * java-17-openjdk-portable-javadoc-fastdebug + * java-17-openjdk-portable-javadoc-slowdebug + * java-17-openjdk-portable-javadoc-unstripped + * java-17-openjdk-portable-javadoc-zip + * java-17-openjdk-portable-javadoc-zip-fastdebug + * java-17-openjdk-portable-javadoc-zip-slowdebug + * java-17-openjdk-portable-javadoc-zip-unstripped + * java-17-openjdk-portable-slowdebug + * java-17-openjdk-portable-sources + * java-17-openjdk-portable-sources-fastdebug + * java-17-openjdk-portable-sources-slowdebug + * java-17-openjdk-portable-sources-unstripped + * java-17-openjdk-portable-src + * java-17-openjdk-portable-src-fastdebug + * java-17-openjdk-portable-src-slowdebug + * java-17-openjdk-portable-src-unstripped + * java-17-openjdk-portable-unstripped + * java-17-openjdk-slowdebug + * java-17-openjdk-sources + * java-17-openjdk-sources-fastdebug + * java-17-openjdk-sources-slowdebug + * java-17-openjdk-sources-unstripped + * java-17-openjdk-src + * java-17-openjdk-src-fastdebug + * java-17-openjdk-src-slowdebug + * java-17-openjdk-src-unstripped + * java-17-openjdk-unstripped < 10000 + From 3335dc2c47322f87ced8ab080e2bae2766568374 Mon Sep 17 00:00:00 2001 From: Jiri Vanek Date: Tue, 5 Nov 2024 10:30:40 +0100 Subject: [PATCH 03/14] Fixed obsolete with proper epoch --- adoptium-temurin-java-repository.spec | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/adoptium-temurin-java-repository.spec b/adoptium-temurin-java-repository.spec index 27c1e8c..b0c06a0 100644 --- a/adoptium-temurin-java-repository.spec +++ b/adoptium-temurin-java-repository.spec @@ -3,8 +3,8 @@ %global thirdparty %{_prefix}/lib/fedora-third-party/conf.d %define obsoleteLine() %{expand: -Obsoletes: java-%{?1}-openjdk%{?2}%{?3} < 10000 -Obsoletes: java-%{?1}-openjdk-portable%{?2}%{?3} < 10000 +Obsoletes: java-%{?1}-openjdk%{?2}%{?3} < 1:100000 +Obsoletes: java-%{?1}-openjdk-portable%{?2}%{?3} < 1:1000 } %define obsoleteLines() %{expand: From a753269f021ac0da27a069f67f0449811d56e5c5 Mon Sep 17 00:00:00 2001 From: Jiri Vanek Date: Tue, 5 Nov 2024 15:24:56 +0100 Subject: [PATCH 04/14] Added one-time warning to posinst --- adoptium-temurin-java-repository.spec | 41 +++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) diff --git a/adoptium-temurin-java-repository.spec b/adoptium-temurin-java-repository.spec index b0c06a0..b22c131 100644 --- a/adoptium-temurin-java-repository.spec +++ b/adoptium-temurin-java-repository.spec @@ -45,6 +45,7 @@ BuildArch: noarch # fedora-third-party contains tools to work with 3rd party repos and owns fedora-third-party/conf.d/ directory Requires: fedora-third-party +#dont forget to update the lua list in post %{obsoleteJdk -- 1.8.0} %{obsoleteJdk -- 11} %{obsoleteJdk -- 17} @@ -73,6 +74,46 @@ install -D -m0644 %{SOURCE1} -t %{buildroot}%{thirdparty}/ install -D -m0644 %{reponame} -t %{buildroot}%{repodir}/ install -D -m0644 %{SOURCE3} -t %{buildroot}%{_docdir}/%{name}/ + +%pre -p +local posix = require ("posix") + +local jdksKnown={"1.8.0", "11", "17"} +local jdksFound={} +for key, value in pairs(jdksKnown) do + jdksFound[value]=0; +end +for key, value in pairs(jdksKnown) do + local java="java-"..value.."-openjdk" + local jre="jre-"..value.."-openjdk" + local statJavaJre1 = posix.stat("/usr/lib/jvm/"..java.."/bin/java", "type"); + local statJavaJre2 = posix.stat("/usr/lib/jvm/"..java.."/jre/bin/java", "type"); + local statJavaSdk = posix.stat("/usr/lib/jvm/"..java.."/bin/javac", "type"); + local statJreJre1 = posix.stat("/usr/lib/jvm/"..jre.."/bin/java", "type"); + local statJreJre2 = posix.stat("/usr/lib/jvm/"..jre.."/jre/bin/java", "type"); + local statJreSdk = posix.stat("/usr/lib/jvm/"..jre.."/bin/javac", "type"); + if ((statJavaJre1 ~= nil) or (statJavaJre2 ~= nil) or (statJreJre1 ~= nil) or (statJreJre2 ~= nil)) then + jdksFound[value]=jdksFound[value]+1; + if (statJavaSdk ~= nil)or((statJreSdk ~= nil)) then + jdksFound[value]=jdksFound[value]+1000; + end + end +end +for key, value in pairs(jdksFound) do + temurinKey=key + if key == "1.8.0" then + temurinKey=8 + end + if value > 0 then + print("You have java-"..key.."-openjdk installed. That is deprecated, and is replaced by temurin-"..temurinKey.."-jre") + end + if value > 1000 then + print("You have java-"..key.."-openjdk-devel installed. That is deprecated, and is replaced by temurin-"..temurinKey.."-jdk") + end +end + + + %files %license LICENSE %{thirdparty}/* From f986fb43a8358b9e37f590ccd44cc79651a3774e Mon Sep 17 00:00:00 2001 From: Jiri Vanek Date: Wed, 6 Nov 2024 12:53:49 +0100 Subject: [PATCH 05/14] Small change in info warning - on dnf5 for some reason jdk is never recognized --- adoptium-temurin-java-repository.spec | 24 ++++++++++++++---------- 1 file changed, 14 insertions(+), 10 deletions(-) diff --git a/adoptium-temurin-java-repository.spec b/adoptium-temurin-java-repository.spec index b22c131..1f9914b 100644 --- a/adoptium-temurin-java-repository.spec +++ b/adoptium-temurin-java-repository.spec @@ -78,6 +78,10 @@ install -D -m0644 %{SOURCE3} -t %{buildroot}%{_docdir}/%{name}/ %pre -p local posix = require ("posix") +local javadir="/usr/lib/jvm" +local binJava="bin/java" +local binJavac="bin/javac" +local jreBinJava="jre/bin/java" local jdksKnown={"1.8.0", "11", "17"} local jdksFound={} for key, value in pairs(jdksKnown) do @@ -86,17 +90,17 @@ end for key, value in pairs(jdksKnown) do local java="java-"..value.."-openjdk" local jre="jre-"..value.."-openjdk" - local statJavaJre1 = posix.stat("/usr/lib/jvm/"..java.."/bin/java", "type"); - local statJavaJre2 = posix.stat("/usr/lib/jvm/"..java.."/jre/bin/java", "type"); - local statJavaSdk = posix.stat("/usr/lib/jvm/"..java.."/bin/javac", "type"); - local statJreJre1 = posix.stat("/usr/lib/jvm/"..jre.."/bin/java", "type"); - local statJreJre2 = posix.stat("/usr/lib/jvm/"..jre.."/jre/bin/java", "type"); - local statJreSdk = posix.stat("/usr/lib/jvm/"..jre.."/bin/javac", "type"); + local statJavaJre1 = posix.stat(javadir.."/"..java.."/"..binJava, "type"); + local statJavaJre2 = posix.stat(javadir.."/"..java.."/"..jreBinJava, "type"); + local statJavaSdk = posix.stat(javadir.."/"..java.."/"..binJavac, "type"); + local statJreJre1 = posix.stat(javadir.."/"..jre.."/"..binJava, "type"); + local statJreJre2 = posix.stat(javadir.."/"..jre.."/"..jreBinJava, "type"); + local statJreSdk = posix.stat(javadir.."/"..jre.."/"..binJavac, "type"); if ((statJavaJre1 ~= nil) or (statJavaJre2 ~= nil) or (statJreJre1 ~= nil) or (statJreJre2 ~= nil)) then jdksFound[value]=jdksFound[value]+1; - if (statJavaSdk ~= nil)or((statJreSdk ~= nil)) then + end + if ((statJavaSdk ~= nil) or (statJreSdk ~= nil)) then jdksFound[value]=jdksFound[value]+1000; - end end end for key, value in pairs(jdksFound) do @@ -105,9 +109,9 @@ for key, value in pairs(jdksFound) do temurinKey=8 end if value > 0 then - print("You have java-"..key.."-openjdk installed. That is deprecated, and is replaced by temurin-"..temurinKey.."-jre") + print("You have java-"..key.."-openjdk installed. That is deprecated, and is replaced by temurin-"..temurinKey.."-jre/temurin-"..temurinKey.."-jdk") end - if value > 1000 then + if value > 999 then print("You have java-"..key.."-openjdk-devel installed. That is deprecated, and is replaced by temurin-"..temurinKey.."-jdk") end end From 3c85b707044179772615537de2cb3a95b55d03a7 Mon Sep 17 00:00:00 2001 From: Jiri Vanek Date: Wed, 6 Nov 2024 13:31:47 +0100 Subject: [PATCH 06/14] A bit more info --- adoptium-temurin-java-repository.spec | 26 +++++++++++++++++++------- 1 file changed, 19 insertions(+), 7 deletions(-) diff --git a/adoptium-temurin-java-repository.spec b/adoptium-temurin-java-repository.spec index 1f9914b..1f1929e 100644 --- a/adoptium-temurin-java-repository.spec +++ b/adoptium-temurin-java-repository.spec @@ -78,16 +78,16 @@ install -D -m0644 %{SOURCE3} -t %{buildroot}%{_docdir}/%{name}/ %pre -p local posix = require ("posix") +local jdksKnown={"1.8.0", "11", "17"} +local jdksFound={} + local javadir="/usr/lib/jvm" local binJava="bin/java" local binJavac="bin/javac" local jreBinJava="jre/bin/java" -local jdksKnown={"1.8.0", "11", "17"} -local jdksFound={} -for key, value in pairs(jdksKnown) do - jdksFound[value]=0; -end + for key, value in pairs(jdksKnown) do + jdksFound[value]=0; local java="java-"..value.."-openjdk" local jre="jre-"..value.."-openjdk" local statJavaJre1 = posix.stat(javadir.."/"..java.."/"..binJava, "type"); @@ -96,10 +96,22 @@ for key, value in pairs(jdksKnown) do local statJreJre1 = posix.stat(javadir.."/"..jre.."/"..binJava, "type"); local statJreJre2 = posix.stat(javadir.."/"..jre.."/"..jreBinJava, "type"); local statJreSdk = posix.stat(javadir.."/"..jre.."/"..binJavac, "type"); - if ((statJavaJre1 ~= nil) or (statJavaJre2 ~= nil) or (statJreJre1 ~= nil) or (statJreJre2 ~= nil)) then + if ((statJavaJre1 ~= nil)) then jdksFound[value]=jdksFound[value]+1; end - if ((statJavaSdk ~= nil) or (statJreSdk ~= nil)) then + if ((statJavaJre2 ~= nil)) then + jdksFound[value]=jdksFound[value]+1; + end + if ((statJreJre1 ~= nil)) then + jdksFound[value]=jdksFound[value]+1; + end + if ((statJreJre2 ~= nil)) then + jdksFound[value]=jdksFound[value]+1; + end + if ((statJavaSdk ~= nil)) then + jdksFound[value]=jdksFound[value]+1000; + end + if ((statJavaSdk ~= nil)) then jdksFound[value]=jdksFound[value]+1000; end end From bf65a95aa6eb8ddee64f8c4eb738d841e9b54e5f Mon Sep 17 00:00:00 2001 From: Jiri Vanek Date: Wed, 6 Nov 2024 14:52:40 +0100 Subject: [PATCH 07/14] dnf5 is consuming first and last line of scriptlet so printing newline on first output printng last line if anything was printed --- adoptium-temurin-java-repository.spec | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/adoptium-temurin-java-repository.spec b/adoptium-temurin-java-repository.spec index 1f1929e..9719696 100644 --- a/adoptium-temurin-java-repository.spec +++ b/adoptium-temurin-java-repository.spec @@ -115,17 +115,26 @@ for key, value in pairs(jdksKnown) do jdksFound[value]=jdksFound[value]+1000; end end +local counter=0 for key, value in pairs(jdksFound) do temurinKey=key if key == "1.8.0" then temurinKey=8 end if value > 0 then - print("You have java-"..key.."-openjdk installed. That is deprecated, and is replaced by temurin-"..temurinKey.."-jre/temurin-"..temurinKey.."-jdk") + if (counter==0) then + print("") --dnf5 is consuming first and alst line of output. this is it + end + print("You have java-"..key.."-openjdk installed. That is deprecated, and is replaced by temurin-"..temurinKey.."-jre") end if value > 999 then print("You have java-"..key.."-openjdk-devel installed. That is deprecated, and is replaced by temurin-"..temurinKey.."-jdk") end + counter=counter+value +end +if counter>0 then + print("https://fedoraproject.org/wiki/Changes/ThirdPartyLegacyJdks") + print("") --dnf5 is consuming first and alst line of output. this is it end From 4c311ca1ad5a5e4bbc36a9313945646842d4f4da Mon Sep 17 00:00:00 2001 From: Jiri Vanek Date: Wed, 6 Nov 2024 18:48:07 +0100 Subject: [PATCH 08/14] And one more warning to logs --- adoptium-temurin-java-repository.spec | 24 +++++++++++++++++++++++- 1 file changed, 23 insertions(+), 1 deletion(-) diff --git a/adoptium-temurin-java-repository.spec b/adoptium-temurin-java-repository.spec index 9719696..23ca46d 100644 --- a/adoptium-temurin-java-repository.spec +++ b/adoptium-temurin-java-repository.spec @@ -45,7 +45,7 @@ BuildArch: noarch # fedora-third-party contains tools to work with 3rd party repos and owns fedora-third-party/conf.d/ directory Requires: fedora-third-party -#dont forget to update the lua list in post +#dont forget to update the lua list in pre and bash list in post %{obsoleteJdk -- 1.8.0} %{obsoleteJdk -- 11} %{obsoleteJdk -- 17} @@ -76,6 +76,7 @@ install -D -m0644 %{SOURCE3} -t %{buildroot}%{_docdir}/%{name}/ %pre -p +-- in dnf5 lua goes to stdout, but not to logs local posix = require ("posix") local jdksKnown={"1.8.0", "11", "17"} @@ -137,6 +138,27 @@ if counter>0 then print("") --dnf5 is consuming first and alst line of output. this is it end +%post +# in dnf5 bash goes to logs, but not to stdout +hits=0 +for x in 1.8.0 11 17 ; do + key="$x" + if [ "$key" == "1.8.0" ] ; then + key=8 + fi + if [ -e /usr/lib/jvm/java-$x-openjdk/bin/java ] || [ -e /usr/lib/jvm/java-$x-openjdk/bin/jre/java ] || [ -e /usr/lib/jvm/jre-$x-openjdk/bin/java ] || [ -e /usr/lib/jvm/jre-$x-openjdk/jre/bin/java ] ; then + echo "java-$x-openjdk installed. That is deprecated, and is replaced by temurin-$key-jdk" + let hits=$hits+1 + fi + if [ -e /usr/lib/jvm/java-$x-openjdk/bin/javac ] ; then + echo "java-$x-openjdk-devel installed. That is deprecated, and is replaced by temurin-$key-jdk" + let hits=$hits+1 + fi +done +if [ $hits -gt 0 ] ; then + echo "https://fedoraproject.org/wiki/Changes/ThirdPartyLegacyJdks" +fi + %files From f85dcb41c7e2e56ac93db3f36791527ffd2b8465 Mon Sep 17 00:00:00 2001 From: Jiri Vanek Date: Fri, 8 Nov 2024 16:56:33 +0100 Subject: [PATCH 09/14] obsoleting jmods, staticlibs and openjfx (including openjfx8) --- adoptium-temurin-java-repository.spec | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/adoptium-temurin-java-repository.spec b/adoptium-temurin-java-repository.spec index 23ca46d..c29a55a 100644 --- a/adoptium-temurin-java-repository.spec +++ b/adoptium-temurin-java-repository.spec @@ -22,6 +22,9 @@ Obsoletes: java-%{?1}-openjdk-portable%{?2}%{?3} < 1:1000 %{obsoleteLines -- %{?1} -src} %{obsoleteLines -- %{?1} -javadoc} %{obsoleteLines -- %{?1} -javadoc-zip} +%{obsoleteLines -- %{?1} -jmods} +%{obsoleteLines -- %{?1} -static-libs} +%{obsoleteLines -- %{?1} -openjfx} %{obsoleteLines -- %{?1} -docs} %{obsoleteLines -- %{?1} -sources} } @@ -49,6 +52,8 @@ Requires: fedora-third-party %{obsoleteJdk -- 1.8.0} %{obsoleteJdk -- 11} %{obsoleteJdk -- 17} +Obsoletes: openjfx8 < 1000 +Obsoletes: openjfx8-devel < 1000 %description This package adds configuration to add a remote repository From 9f06633d12655b11a8246107ceda1619f2fbef89 Mon Sep 17 00:00:00 2001 From: Jiri Vanek Date: Mon, 11 Nov 2024 10:13:47 +0100 Subject: [PATCH 10/14] Obsoleten also openjfx-devel --- adoptium-temurin-java-repository.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/adoptium-temurin-java-repository.spec b/adoptium-temurin-java-repository.spec index c29a55a..9e878a5 100644 --- a/adoptium-temurin-java-repository.spec +++ b/adoptium-temurin-java-repository.spec @@ -25,6 +25,7 @@ Obsoletes: java-%{?1}-openjdk-portable%{?2}%{?3} < 1:1000 %{obsoleteLines -- %{?1} -jmods} %{obsoleteLines -- %{?1} -static-libs} %{obsoleteLines -- %{?1} -openjfx} +%{obsoleteLines -- %{?1} -openjfx-devel} %{obsoleteLines -- %{?1} -docs} %{obsoleteLines -- %{?1} -sources} } From cb5a25eb5bd61a5cc12eda083467d1b1d09dadc2 Mon Sep 17 00:00:00 2001 From: Jiri Date: Tue, 12 Nov 2024 17:14:22 +0100 Subject: [PATCH 11/14] Obsolete also misc --- adoptium-temurin-java-repository.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/adoptium-temurin-java-repository.spec b/adoptium-temurin-java-repository.spec index 9e878a5..dceb629 100644 --- a/adoptium-temurin-java-repository.spec +++ b/adoptium-temurin-java-repository.spec @@ -28,6 +28,7 @@ Obsoletes: java-%{?1}-openjdk-portable%{?2}%{?3} < 1:1000 %{obsoleteLines -- %{?1} -openjfx-devel} %{obsoleteLines -- %{?1} -docs} %{obsoleteLines -- %{?1} -sources} +%{obsoleteLines -- %{?1} -misc} } # 0/1 may vary in time, and is always enabled to 1 per FESCO exception From 1da757b2eebd049664b7afa60a88d88815301c08 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 16 Jan 2025 10:39:14 +0000 Subject: [PATCH 12/14] Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild From a466342de99c146daf6212f9a3b9f29fffb730fe Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 23 Jul 2025 16:47:30 +0000 Subject: [PATCH 13/14] Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild From 03c43af517edcf5e33a08b5c4648af0991670c99 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 16 Jan 2026 03:28:49 +0000 Subject: [PATCH 14/14] Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild