commit:     26872afa5b57e433047f649260fde62d67946e4e
Author:     Samuel Bernardo <samuelbernardo.mail <AT> gmail <DOT> com>
AuthorDate: Tue Apr 28 16:26:19 2020 +0000
Commit:     Samuel Bernardo <samuelbernardo.mail <AT> gmail <DOT> com>
CommitDate: Tue Apr 28 16:26:19 2020 +0000
URL:        https://gitweb.gentoo.org/repo/user/ssnb.git/commit/?id=26872afa

Update idea-ultimate to EAPI7. Correct loader problem with Rubymine defining 
RUBYMINE_SDK wrapper.

Signed-off-by: Samuel Bernardo <samuelbernardo.mail <AT> gmail.com>

 dev-util/idea-ultimate/Manifest                    |   7 +-
 .../idea-ultimate-2020.1.0.201.6668.121.ebuild     | 117 +++++++++++++++++----
 dev-util/rubymine/Manifest                         |   2 +-
 dev-util/rubymine/rubymine-2020.1.0.ebuild         |  24 ++++-
 4 files changed, 124 insertions(+), 26 deletions(-)

diff --git a/dev-util/idea-ultimate/Manifest b/dev-util/idea-ultimate/Manifest
index d13ef96..fde4459 100644
--- a/dev-util/idea-ultimate/Manifest
+++ b/dev-util/idea-ultimate/Manifest
@@ -1,12 +1,15 @@
+DIST ideaIU-1.0.201.6668.121.tar.gz 664320358 BLAKE2B 
5f9b9b083252ace2533f44c3ea8fd26aa04321aeb576939fd18263c29772f434f6ce4624187085a27c4ae275993124113b4a6806619b432a6f785e9928742e5a
 SHA512 
c8212f544e060d5fe36e89c8af0abc25add9d9df1a8445da6517aa4496db762195aaa1e8a1f2ddd503e0b80d5da7a74e817853372d31d961faced46d74668c22
 DIST ideaIU-2019.3.1.tar.gz 809193649 BLAKE2B 
3e61fa4efe2c9b7a9229455711d30e0dac382c4857ebe2fd0208389b5aab24ead10f49460e621077c06af8398ab129b1b4220174caa260c7ab321ef6ce52f555
 SHA512 
258269a8a317ca252c26ec25dbd1122254985e9402389429d5c5cf3fd29b04716d5744f2798d96297b1bf1f479c67adc479224b841b2c81b5364561c34870837
 DIST ideaIU-2019.3.3.tar.gz 812882348 BLAKE2B 
402158c4586d87b84ccfaaa03abdb7e3e843d278b89d9be0982e436beb23f6b4f4da635edac99801cb6b8b611ae6dd926ad41ad2d62d1e2037dfabb50190e13a
 SHA512 
54872dfa2de8a50d1727556f96220ad04a4b8504549e54fb670e8f6c85f42ff519702c63a554cb35c805549e26635f5da27ccbbfa090f1f6c9c3f3258c36a048
 DIST ideaIU-2019.3.4.tar.gz 813068241 BLAKE2B 
d80c5c0faec4d53a5443aec430e11c2a6661b7aa3955cdb65dd460cdb8fec3f4cf6bc0effec477c32c4bd3949780407599515838dba3b00dda1af5c7975515a5
 SHA512 
0b2862df695a0d44470bcf6f1ac962c47b1d0433088de5e15503b1dc7622262bac1c7958fef2aa9feb063018d5ff9b109f845143a21fd741b35605c2ec418f8b
 DIST ideaIU-2019.3.tar.gz 795790818 BLAKE2B 
05396e642597b1f6c1341e2f3b4d02acc6fcf2254b93a00ae43c9be1afaef39db42bf894141bc9adc846ea7e8260a777c60563f928f2b73ddcb4d8f3e74c4ef2
 SHA512 
638f4a29720fc8b21593106295576c1a7db8fe67ad4eca5d8f98b1220264b074227f058af56225f10a13fb537a11ce12d415d463fba7891eba8138c6e9fb78e0
-DIST ideaIU-2020.1.tar.gz 775996528 BLAKE2B 
7eae2042408665b8a502a4b48e468a9942584d89c58d4c0a3d6102822e1eccf3387495e72acbca75add1c96674a28f9b1fe93e9e8a8fae3078e129641b6451a3
 SHA512 
116e111c10cf592aa1769dac334c629f424afde2941d911661973cc3fef0750a166e5f543283ba3e13c0e691328a5f377204eff09eed4645c93e5580916e9f68
+DIST jbr-11_0_2-linux-x64-b164.tar.gz 131483925 BLAKE2B 
fb9c55094aeb4a9e6b89ef41699252355895fa4bf55eaa0d3c0a637b6485b5a91a0445b5f4af1872b62cd67b639f7354e05770970d41dcfa58ffeda7ae43c5b6
 SHA512 
4f32940166cc8ad5a138866e18d4cbfcd07f4326a85c051b7a622c9dcb8ee4b6d493331ef24d0c01999134fa2a9bad901f026982c16780fdc5e6b9308821db34
+DIST jbrx-8u202-linux-i586-b1483.37.tar.gz 80726147 BLAKE2B 
e4e5a076a541fd7153e861193ff4247c02ecbc144396ed28737afa7440f7771569b8d968b7c67b3dac333a89ff0b54cc9e5e76d1651b174cc7c0c21b1deb033c
 SHA512 
53693f2ce994f4891807873ae3fe46ce60bee000b78be03c5d3df06b436328abe5b5d7e75d43e57f35f24187f49915187d034b39589e29806f55deeb14a029f2
+DIST jbrx-8u202-linux-x64-b1483.37.tar.gz 81812743 BLAKE2B 
86ddf0c8dc992a27e680caa821f54fa4d647a8bff78b9fdbef82996bfbba828a2f68f1a00ed64bd92ce24a62bfc6c0240837c396644c6e91244cb0d980b6c704
 SHA512 
cd31a3c4da7b8c65e9ae89326c2c8b260b51890258d30f64b1e8a7c6c1442bb2cb68ea2aa80387ce0c1a8f50e3533e8231f72c5935b639e3cf82bc1ffedee8e9
 EBUILD idea-ultimate-2019.3.0.193.5233.102.ebuild 1750 BLAKE2B 
6cd705ca9a833d8d758a22b55871680a6b4fc17a480618cc73fb7759bba05518ef869c40ff722a84a36de9bef8d58e9f449468b8dd8a658836b6203581824ff4
 SHA512 
1f7653a9fef35b124b67de029e7675b65291bb8cd07d9cc23503d32479461970c1f666d5be371732bb65c2cbcac1ecf9d9771ee0f10687e6f94a6a8824985bce
 EBUILD idea-ultimate-2019.3.1.193.5662.53.ebuild 1750 BLAKE2B 
62e3e1a0c342e8465a1af39b6f4180367a5518059b9dee5307eb2050fe2ed07e925e9183e95cada4a8570ddce93e570066857ea128b22ef8add9743db430af71
 SHA512 
f27985a3075afd4f11111b31d83e01051f66a26d32dca4c382472a6e8d81320dd30d55009b85285df66332d833d9ec8ed47b22020663bde5d53a6f0160ce94e3
 EBUILD idea-ultimate-2019.3.3.193.6494.35.ebuild 1750 BLAKE2B 
62e3e1a0c342e8465a1af39b6f4180367a5518059b9dee5307eb2050fe2ed07e925e9183e95cada4a8570ddce93e570066857ea128b22ef8add9743db430af71
 SHA512 
f27985a3075afd4f11111b31d83e01051f66a26d32dca4c382472a6e8d81320dd30d55009b85285df66332d833d9ec8ed47b22020663bde5d53a6f0160ce94e3
 EBUILD idea-ultimate-2019.3.4.193.6911.18.ebuild 1750 BLAKE2B 
62e3e1a0c342e8465a1af39b6f4180367a5518059b9dee5307eb2050fe2ed07e925e9183e95cada4a8570ddce93e570066857ea128b22ef8add9743db430af71
 SHA512 
f27985a3075afd4f11111b31d83e01051f66a26d32dca4c382472a6e8d81320dd30d55009b85285df66332d833d9ec8ed47b22020663bde5d53a6f0160ce94e3
-EBUILD idea-ultimate-2020.1.0.201.6668.121.ebuild 1750 BLAKE2B 
68224359fe560965e9d9a2f0c5e6979d2312b52cb01d061e3b7e46e559829bc337ad48a7e488b5fd4343674665afa58f13e1975a625a661b06be67b13e893aa1
 SHA512 
60f8780049a6f48448147e4135c28c243f779f83f259d71e55a878e453e9bfaf5c4be1d81b7f90ee699e0b533555999c609477edb95116b1123c6d8b0f21e38f
+EBUILD idea-ultimate-2020.1.0.201.6668.121.ebuild 4571 BLAKE2B 
e5379b8e794739e25b86ba16dbd8be51e409a5a261c3a6b83ea6baa80461fd3ba63d1be30292920980f572a1e921a62e4b530e32d0691cbf76ec07082a08bd91
 SHA512 
427d94a12ca25b3518aa039f9cf6bd84ffe1b65201e2b2f3a72e9ec3fca24522091f9293853cf3c89500f499a0a59f748d87af5d3d30ba2241fdfb9c67ebc402
 MISC ChangeLog 142 BLAKE2B 
d6bb9a7ff30fcbf78573ea65cf495cdc21393b0e9e546f9b5df7f9b5d358b362e7741509b6625d1dee6ae4f6b7ea33e4a88fc7e6d53b34745c3234c377ba690d
 SHA512 
f66d54089ee757d3bc997f4edba58e6b6b91d47c6fca9f33edf4bfc9e03acabfc7af723c1238c313ccf6cde747c7b91274e67c15abc92da8dd6dd5ac58006b7b
 MISC metadata.xml 594 BLAKE2B 
3d60d5f3bccb0290e644b5ff032ca7ac1d7bf18d2f183ff9de638130b9d33582b3c36888a3f318514ab2b1eb5c384ee56db0c1d4bd64ed907db2c6788f3c393c
 SHA512 
2c830e91b8a9f97f8708392469121a4f5309e99cd58138a0d661394a5ca8a7c07ce47bc0cc9516aa1e6b106131b492fbbee6522be419e6ed7690d88cf2510df2

diff --git a/dev-util/idea-ultimate/idea-ultimate-2020.1.0.201.6668.121.ebuild 
b/dev-util/idea-ultimate/idea-ultimate-2020.1.0.201.6668.121.ebuild
index f5b2d22..74f8fd4 100644
--- a/dev-util/idea-ultimate/idea-ultimate-2020.1.0.201.6668.121.ebuild
+++ b/dev-util/idea-ultimate/idea-ultimate-2020.1.0.201.6668.121.ebuild
@@ -1,17 +1,23 @@
-# Copyright 1999-2020 Gentoo Foundation
+# Copyright 1999-2020 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
-# $Id$
 
-EAPI=6
-inherit eutils versionator
+EAPI=7
+inherit eutils desktop
 
 SLOT="0"
-PV_STRING="$(get_version_component_range 4-6)"
-MY_PV="$(get_version_component_range 1-2)"
+PV_STRING="$(ver_cut 2-6)"
+MY_PV="$(ver_cut 1-2)"
 MY_PN="idea"
+# Using the most recent Jetbrains Runtime binaries available at the time of 
writing
+# As the exact bundled versions ( jre 11 build 159.30 and jre 8 build 1483.39 
) aren't
+# available separately
+JRE11_BASE="11_0_2"
+JRE11_VER="164"
+JRE_BASE="8u202"
+JRE_VER="1483.37"
 
 # distinguish settings for official stable releases and EAP-version releases
-if [[ "$(get_version_component_range 7)x" = "prex" ]]
+if [[ "$(ver_cut 7)"x = "prex" ]]
 then
        # upstream EAP
        KEYWORDS=""
@@ -19,7 +25,10 @@ then
 else
        # upstream stable
        KEYWORDS="~amd64 ~x86"
-       SRC_URI="https://download.jetbrains.com/idea/${MY_PN}IU-${MY_PV}.tar.gz";
+       
SRC_URI="https://download.jetbrains.com/idea/${MY_PN}IU-${MY_PV}-no-jbr.tar.gz 
-> ${MY_PN}IU-${PV_STRING}.tar.gz
+               jbr8? ( x86? ( 
https://bintray.com/jetbrains/intellij-jdk/download_file?file_path=jbrx-${JRE_BASE}-linux-i586-b${JRE_VER}.tar.gz
 -> jbrx-${JRE_BASE}-linux-i586-b${JRE_VER}.tar.gz )
+               amd64? ( 
https://bintray.com/jetbrains/intellij-jdk/download_file?file_path=jbrx-${JRE_BASE}-linux-x64-b${JRE_VER}.tar.gz
 -> jbrx-${JRE_BASE}-linux-x64-b${JRE_VER}.tar.gz ) )
+               jbr11? ( amd64? ( 
https://bintray.com/jetbrains/intellij-jdk/download_file?file_path=jbr-${JRE11_BASE}-linux-x64-b${JRE11_VER}.tar.gz
 -> jbr-${JRE11_BASE}-linux-x64-b${JRE11_VER}.tar.gz ) )"
 fi
 
 DESCRIPTION="A complete toolset for web, mobile and enterprise development"
@@ -27,27 +36,76 @@ HOMEPAGE="https://www.jetbrains.com/idea";
 
 LICENSE="IDEA
        || ( IDEA_Academic IDEA_Classroom IDEA_OpenSource IDEA_Personal )"
-IUSE="-custom-jdk"
+
+#Splitting custom-jdk into jbr8 and jbr11 as upstream now offers downloads with
+#either (or neither) bundled
+#Defaulting to jbr8 to match upstream
+IUSE="+jbr8 -jbr11"
+REQUIRED_USE="jbr8? ( !jbr11 )"
 
 DEPEND="!dev-util/${PN}:14
        !dev-util/${PN}:15"
 RDEPEND="${DEPEND}
-       >=virtual/jdk-1.7:*"
-if [[ "${PV_STRING}x" = "x" ]]
-then
-       S="${WORKDIR}/${MY_PN}-IU-${MY_PV}"
-else
-       S="${WORKDIR}/${MY_PN}-IU-${PV_STRING}"
-fi
+       >=virtual/jdk-1.7:*
+       dev-java/jansi-native
+       dev-libs/libdbusmenu
+       dev-util/lldb"
+BDEPEND="dev-util/patchelf"
+RESTRICT="splitdebug"
+S="${WORKDIR}/${MY_PN}-IU-$(ver_cut 4-6)"
 
 QA_PREBUILT="opt/${PN}-${MY_PV}/*"
 
+# jbr11 binary doesn't unpack nicely into a single folder
+src_unpack() {
+       if use !jbr11 ; then
+               default_src_unpack
+       else
+               cd "${WORKDIR}"
+               unpack ${MY_PN}IU-${PV_STRING}.tar.gz
+               cd "${S}"
+               mkdir jre64 && cd jre64 && unpack 
jbr-${JRE11_BASE}-linux-x64-b${JRE11_VER}.tar.gz
+       fi
+}
+
 src_prepare() {
-       if ! use custom-jdk; then
-               if [[ -d jre64 ]]; then
-                       rm -r jre64 || die
-               fi
+       if use amd64; then
+               JRE_DIR=jre64
+       else
+               JRE_DIR=jre
+       fi
+
+       if use jbr8; then
+               mv "${WORKDIR}/jre" ./"${JRE_DIR}"
+               PLUGIN_DIR="${S}/${JRE_DIR}/lib/${ARCH}"
+       else
+               PLUGIN_DIR="${S}/${JRE_DIR}/lib/"
        fi
+
+       rm -vf ${PLUGIN_DIR}/libavplugin*
+       rm -vf "${S}"/plugins/maven/lib/maven3/lib/jansi-native/*/libjansi*
+       rm -vrf "${S}"/lib/pty4j-native/linux/ppc64le
+       rm -vf "${S}"/bin/libdbm64*
+
+       if [[ -d "${S}"/"${JRE_DIR}" ]]; then
+               for file in "${PLUGIN_DIR}"/{libfxplugins.so,libjfxmedia.so}
+               do
+                       if [[ -f "$file" ]]; then
+                         patchelf --set-rpath '$ORIGIN' $file || die
+                       fi
+               done
+       fi
+
+       patchelf --replace-needed liblldb.so liblldb.so.9 
"${S}"/plugins/Kotlin/bin/linux/LLDBFrontend || die "Unable to patch 
LLDBFrontend for lldb"
+
+       sed -i \
+               -e "\$a\\\\" \
+               -e 
"\$a#-----------------------------------------------------------------------" \
+               -e "\$a# Disable automatic updates as these are handled through 
Gentoo's" \
+               -e "\$a# package manager. See bug #704494" \
+               -e 
"\$a#-----------------------------------------------------------------------" \
+               -e "\$aide.no.platform.update=Gentoo"  bin/idea.properties
+
        eapply_user
 }
 
@@ -56,7 +114,24 @@ src_install() {
 
        insinto "${dir}"
        doins -r *
-       fperms 755 "${dir}"/bin/{idea.sh,fsnotifier{,64}}
+       fperms 755 
"${dir}"/bin/{format.sh,idea.sh,inspect.sh,printenv.py,restart.py,fsnotifier{,64}}
+       if use amd64; then
+               JRE_DIR=jre64
+       else
+               JRE_DIR=jre
+       fi
+       if use jbr8 || use jbr11 ; then
+       if use jbr8; then
+               JRE_BINARIES="java jjs keytool orbd pack200 policytool rmid 
rmiregistry servertool tnameserv unpack200"
+       else
+               JRE_BINARIES="jaotc java javapackager jjs jrunscript keytool 
pack200 rmid rmiregistry unpack200"
+       fi
+               if [[ -d ${JRE_DIR} ]]; then
+                       for jrebin in $JRE_BINARIES; do
+                               fperms 755 "${dir}"/"${JRE_DIR}"/bin/"${jrebin}"
+                       done
+               fi
+       fi
 
        make_wrapper "${PN}" "${dir}/bin/${MY_PN}.sh"
        newicon "bin/${MY_PN}.png" "${PN}.png"

diff --git a/dev-util/rubymine/Manifest b/dev-util/rubymine/Manifest
index 8c7b7b8..3af40fd 100644
--- a/dev-util/rubymine/Manifest
+++ b/dev-util/rubymine/Manifest
@@ -7,5 +7,5 @@ EBUILD rubymine-2019.3.0.ebuild 951 BLAKE2B 
2ace3a90eb5c28bcb91b6de75f1955b7992e
 EBUILD rubymine-2019.3.1.ebuild 951 BLAKE2B 
4764d6f787179ac00afa68c93b4f58853550572dd2a36090eb69def6e6ce44b8ae467eb3f6865b921184b63e46c877670d78aebfb991c5aa51e2cabe02c4e547
 SHA512 
8ef72acbf0f590eca47c842f3f008cc9fd16b363491fecfe7c7069325ae2e028b4429712b1274f3afb89820d1c74eafbe137a01c98dfbcc157952861fd7d934c
 EBUILD rubymine-2019.3.3.ebuild 951 BLAKE2B 
4764d6f787179ac00afa68c93b4f58853550572dd2a36090eb69def6e6ce44b8ae467eb3f6865b921184b63e46c877670d78aebfb991c5aa51e2cabe02c4e547
 SHA512 
8ef72acbf0f590eca47c842f3f008cc9fd16b363491fecfe7c7069325ae2e028b4429712b1274f3afb89820d1c74eafbe137a01c98dfbcc157952861fd7d934c
 EBUILD rubymine-2019.3.4.ebuild 951 BLAKE2B 
4764d6f787179ac00afa68c93b4f58853550572dd2a36090eb69def6e6ce44b8ae467eb3f6865b921184b63e46c877670d78aebfb991c5aa51e2cabe02c4e547
 SHA512 
8ef72acbf0f590eca47c842f3f008cc9fd16b363491fecfe7c7069325ae2e028b4429712b1274f3afb89820d1c74eafbe137a01c98dfbcc157952861fd7d934c
-EBUILD rubymine-2020.1.0.ebuild 951 BLAKE2B 
ea8d8774941c03aa8137b79df54f7ec5150bd7e91d9efc9d22e76d9f7e536be1e607d10dcc60d9e71743e407a8ce209d86b8bf37f2ca13445cad2cedd0c2c566
 SHA512 
f3a36739cffddfac10ef0ff495ee22329653e6e5673ab39b4383e92905f4cfe091b3c28f9ccc1702443258b3ce09f36e03d59081647d6efe3b9eac4e178f2b16
+EBUILD rubymine-2020.1.0.ebuild 1459 BLAKE2B 
a48bb5451859b36dbd63555ade4291e0751aa924d43c9229dabfbb26981760f9aea51ac10c266db7c37edaf26182093ad87fdeac0370950a5c5149ca587a4a6a
 SHA512 
42f33db7e6e1a37c604ef77f53f59b3ffeec70afee14970e1467eecae3196a54ac29c77cca26901b6e0172c54c256bf93aee500b2d6c9aa7c7f13e0840f9b682
 MISC metadata.xml 246 BLAKE2B 
fc8d6245f577ed3dc445e459694a18f1d950a722dbb72bfd7508f1ba7c52f264fce2c4eda4b52e238a80f6765243a27d396a749dadbdf6a4b6931c25f8404bfa
 SHA512 
cd6648a75839e6059cf877aa79a84600be0a63de66f59efd217ad91bac55a7ed4afd5ce88c90a262b4dd044734403fb90a049b8f19a42289ec3ef1d827b66d77

diff --git a/dev-util/rubymine/rubymine-2020.1.0.ebuild 
b/dev-util/rubymine/rubymine-2020.1.0.ebuild
index 0deef6a..5bdd3bd 100644
--- a/dev-util/rubymine/rubymine-2020.1.0.ebuild
+++ b/dev-util/rubymine/rubymine-2020.1.0.ebuild
@@ -21,15 +21,35 @@ IUSE=""
 KEYWORDS="~amd64 ~x86"
 S=${WORKDIR}/${MY_PN}-${MY_PV}
 
+src_prepare() {
+       # Remove non-linux libs
+       rm -vrf "${S}"/lib/libpty/macosx
+       rm -vrf "${S}"/lib/libpty/win
+
+       # Java config
+       #if use amd64; then local SUFFIX="64"; fi
+       #sed -i 's/lcd/on/' "${S}/bin/${PN}${SUFFIX}.vmoptions"
+       #echo "-Dswing.aatext=true" >> "${S}/bin/${PN}${SUFFIX}.vmoptions"
+       cat << EOF >> "${S}/bin/${PN}-loader.sh"
+#!/bin/sh
+if [ -z \${RUBYMINE_JDK} ]; then
+       export RUBYMINE_JDK="\${JAVA_HOME}"
+fi
+exec "/opt/${P}/bin/${PN}.sh" "\$@"
+EOF
+
+       eapply_user
+}
+
 src_install() {
        local dir="/opt/${P}"
        local exe="${PN}-${SLOT}"
 
        insinto "${dir}"
        doins -r *
-       fperms 755 "${dir}/bin/${PN}.sh" "${dir}/bin/rinspect.sh" 
"${dir}/bin/fsnotifier" "${dir}/bin/fsnotifier64"
+       fperms 755 "${dir}/bin/${PN}.sh" "${dir}/bin/rinspect.sh" 
"${dir}/bin/fsnotifier" "${dir}/bin/fsnotifier64" "${dir}/bin/${PN}-loader.sh"
 
        newicon "bin/${PN}.png" "${exe}.png"
-       make_wrapper "${exe}" "/opt/${P}/bin/${PN}.sh"
+       make_wrapper "${exe}" "/opt/${P}/bin/${PN}-loader.sh"
        make_desktop_entry ${exe} "RubyMine ${MY_PV}" "${exe}" "Development;IDE"
 }

Reply via email to