diff options
-rw-r--r-- | dev-util/idea-ultimate/Manifest | 8 | ||||
-rw-r--r-- | dev-util/idea-ultimate/idea-ultimate-2023.2.1.232.9559.62.ebuild | 160 | ||||
-rw-r--r-- | dev-util/idea-ultimate/idea-ultimate-2023.3.2.ebuild | 130 |
3 files changed, 132 insertions, 166 deletions
diff --git a/dev-util/idea-ultimate/Manifest b/dev-util/idea-ultimate/Manifest index a5e60fd..dc22e27 100644 --- a/dev-util/idea-ultimate/Manifest +++ b/dev-util/idea-ultimate/Manifest @@ -1,8 +1,4 @@ -DIST ideaIU-232.9559.62.tar.gz 1153009058 BLAKE2B 2dc3b8c8ae8b636118d3d386b39163d46f4a652dae13f497f0f76504a26c6c65210e6695bd75951c49706d3a9bbd42b4edd19e8d9ce73a25c2fd1b684563daaf SHA512 c3e3027fb0239b5ebde4c9ff60e19082e212d9098948df352b26b2ef39cb6a4a97e51421f56a82f3019d80a712a14006dbe3bbde1605900c5d62410c3b2f824c -DIST jbr-11_0_2-linux-x64-b164.tar.gz 131483925 BLAKE2B fb9c55094aeb4a9e6b89ef41699252355895fa4bf55eaa0d3c0a637b6485b5a91a0445b5f4af1872b62cd67b639f7354e05770970d41dcfa58ffeda7ae43c5b6 SHA512 4f32940166cc8ad5a138866e18d4cbfcd07f4326a85c051b7a622c9dcb8ee4b6d493331ef24d0c01999134fa2a9bad901f026982c16780fdc5e6b9308821db34 -DIST jbr-17.0.8-linux-x64-b1000.22.tar.gz 74121324 BLAKE2B 92f20f7d75c673a3890902543e20a7a157308118c46bce122f5d94c096b14bd5896ac5bc25a797ba359e07ad2d26363359c5da455986b4b975d133dee8f2427e SHA512 7ba1423f3854a2ac0a98198c12084fd9ab798a8fd9e5c8e0eb84700431d7f8e01dc8f1652637c4d11b586c86dc08011da886c197291bab3a02101ce1802e8f44 -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-2023.2.1.232.9559.62.ebuild 5168 BLAKE2B 62a5d8c33fb5a93ab0b50a63f66224790aa7180116cf75feeb2e616565dccb2014d777d856b580a7b2d4e60e09d05fe5967fd3eb6d6c0b8bbd8aab062258f80a SHA512 1aa2365e3fc6003848446e5c84f79fe28080f25d5f1c5e2f83c0f3b5bd84708bd01ced191629b56a5d0c039407a8c9c913c9e43d2972df5554b693ecef38a375 +DIST idea-ultimate-2023.3.2.tar.gz 1008598620 BLAKE2B db29adbba2d6f27513903666b38cffaf8b1741c317f3676a605b87717d79a407473669aab1ca13038afa056a8a8ebcdf62c2b33728257d7d659478624faa084c SHA512 43a4a57652cd1e9ac89d82b03551574d2f687ae5f8d9b34f47a7f6b2817aed5035a75fefdb83ab0e69ade6f057aefe02785b68005a9196085f3b4b2560d2e4ec +EBUILD idea-ultimate-2023.3.2.ebuild 3650 BLAKE2B 258b615868c982b0a823959f5a305893318f51ede80bf75663407a15b73ed6900072da4a94950672234652ac042182caaaa6596abd6d968508ec54d0f632f6cd SHA512 2fe3aba286787c0d13cfdad2e664f4b91b5fe16d6b2c896e4b87a9183551ad3ea4aac3650c07923e6e6af62c908829034f14232bd2708a0a97960260ff3909ae MISC ChangeLog 142 BLAKE2B d6bb9a7ff30fcbf78573ea65cf495cdc21393b0e9e546f9b5df7f9b5d358b362e7741509b6625d1dee6ae4f6b7ea33e4a88fc7e6d53b34745c3234c377ba690d SHA512 f66d54089ee757d3bc997f4edba58e6b6b91d47c6fca9f33edf4bfc9e03acabfc7af723c1238c313ccf6cde747c7b91274e67c15abc92da8dd6dd5ac58006b7b MISC metadata.xml 786 BLAKE2B 4d178ed573815c59c26f4ca4873250df7da55588762b231f34a69cddbe2844a130fd743fbb796a0c0bf6445405d5034a60eabd59d4eebcc055da86c8a53f6d21 SHA512 13eb523dd3b6fcf90fef0135a27195f8deb7cbd635b74beaa99ab479310fdedb9aca88071c66738cf7b6a22a808ba3e5bbe1a6c6e9b243b0539c8f474dbb7fc6 diff --git a/dev-util/idea-ultimate/idea-ultimate-2023.2.1.232.9559.62.ebuild b/dev-util/idea-ultimate/idea-ultimate-2023.2.1.232.9559.62.ebuild deleted file mode 100644 index 27e7c16..0000000 --- a/dev-util/idea-ultimate/idea-ultimate-2023.2.1.232.9559.62.ebuild +++ /dev/null @@ -1,160 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 -inherit desktop - -SLOT="0" -PV_STRING="$(ver_cut 4-6)" -MY_PV="$(ver_cut 1-3)" -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 -JRE17_BASE="17.0.8" -JRE17_VER="1000.22" -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 [[ "$(ver_cut 7)"x = "prex" ]] -then - # upstream EAP - KEYWORDS="" - SRC_URI="https://download.jetbrains.com/idea/${MY_PN}IU-${PV_STRING}.tar.gz" -else - # upstream stable - KEYWORDS="~amd64 ~x86" - SRC_URI="https://download.jetbrains.com/idea/${MY_PN}IU-${MY_PV}.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 ) ) - jbr17? ( amd64? ( https://cache-redirector.jetbrains.com/intellij-jbr/jbr-${JRE17_BASE}-linux-x64-b${JRE17_VER}.tar.gz -> jbr-${JRE17_BASE}-linux-x64-b${JRE17_VER}.tar.gz ) )" -fi - -DESCRIPTION="A complete toolset for web, mobile and enterprise development" -HOMEPAGE="https://www.jetbrains.com/idea" - -LICENSE="IDEA - || ( IDEA_Academic IDEA_Classroom IDEA_OpenSource IDEA_Personal )" - -#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 -jbr17" -REQUIRED_USE="jbr8? ( !jbr11 !jbr17 ) - jbr11? ( !jbr8 !jbr17 ) - jbr17? ( !jbr8 !jbr11 )" - -DEPEND="!dev-util/${PN}:14 - !dev-util/${PN}:15" -RDEPEND="${DEPEND} - >=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}/*" - - -jbr_unpack() { - cd "${WORKDIR}" - unpack ${MY_PN}IU-${PV_STRING}.tar.gz - cd "${S}" - mkdir jre64 && cd jre64 || die "Unable to create jre64 directory" -} - -# jbr11 binary doesn't unpack nicely into a single folder -src_unpack() { - if use jbr8 ; then - jbr_unpack - unpack jbr-${JRE8_BASE}-linux-x64-b${JRE8_VER}.tar.gz - elif use jbr11; then - jbr_unpack - unpack jbr-${JRE11_BASE}-linux-x64-b${JRE11_VER}.tar.gz - elif use jbr17; then - jbr_unpack - unpack jbr-${JRE17_BASE}-linux-x64-b${JRE17_VER}.tar.gz - else - default_src_unpack - fi -} - -src_prepare() { - if use amd64; then - JRE_DIR=jre64 - else - JRE_DIR=jre - fi - - if use jbr8 || use jbr11 || use jbr17; 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 -} - -src_install() { - local dir="/opt/${PN}-${MY_PV}" - - insinto "${dir}" - doins -r * - fperms 755 "${dir}"/bin/{format.sh,idea.sh,inspect.sh,restart.py,fsnotifier,ltedit.sh,remote-dev-server.sh,repair} - if use amd64; then - JRE_DIR=jre64 - else - JRE_DIR=jre - fi - if use jbr8 || use jbr11 || use jbr17 ; 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" - make_desktop_entry "${PN}" "IntelliJ Idea Ultimate" "${PN}" "Development;IDE;" - - # recommended by: https://confluence.jetbrains.com/display/IDEADEV/Inotify+Watches+Limit - mkdir -p "${D}/etc/sysctl.d/" || die - echo "fs.inotify.max_user_watches = 524288" > "${D}/etc/sysctl.d/30-idea-inotify-watches.conf" || die -} diff --git a/dev-util/idea-ultimate/idea-ultimate-2023.3.2.ebuild b/dev-util/idea-ultimate/idea-ultimate-2023.3.2.ebuild new file mode 100644 index 0000000..4632264 --- /dev/null +++ b/dev-util/idea-ultimate/idea-ultimate-2023.3.2.ebuild @@ -0,0 +1,130 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 +inherit desktop wrapper + +DESCRIPTION="A complete toolset for web, mobile and enterprise development" +HOMEPAGE="https://www.jetbrains.com/idea" +SRC_URI="https://download.jetbrains.com/idea/ideaIU-${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="IDEA_Academic IDEA_Classroom IDEA_OpenSource IDEA_Personal + Apache-2.0 BSD BSD-2 CC0-1.0 CC-BY-2.5 CDDL-1.1 + codehaus-classworlds CPL-1.0 EPL-1.0 EPL-2.0 + GPL-2 GPL-2-with-classpath-exception ISC + JDOM LGPL-2.1 LGPL-2.1+ LGPL-3-with-linking-exception MIT + MPL-1.0 MPL-1.1 OFL ZLIB" + +SLOT="0" +KEYWORDS="~amd64 ~arm64" + +DEPEND=" + || ( + >=dev-java/openjdk-17.0.8.1_p1:17 + >=dev-java/openjdk-bin-17.0.8.1_p1:17 + )" + +RDEPEND="${DEPEND} + sys-libs/glibc + media-libs/harfbuzz + dev-java/jansi-native + dev-libs/libdbusmenu" + +BDEPEND="dev-util/patchelf" +RESTRICT="splitdebug" +S="${WORKDIR}/idea-IU-${PV}" + +QA_PREBUILT="opt/${PN}/*" + +src_unpack() { + + default_src_unpack + if [ ! -d "$S" ]; then + einfo "Renaming source directory to predictable name..." + mv $(ls "${WORKDIR}") "idea-IU-${PV}" || die + fi +} + +src_prepare() { + + default_src_prepare + + if use amd64; then + JRE_DIR=jre64 + else + JRE_DIR=jre + fi + + PLUGIN_DIR="${S}/${JRE_DIR}/lib/" + + # rm LLDBFrontEnd after licensing questions with Gentoo License Team + rm -vf "${S}"/plugins/Kotlin/bin/linux/LLDBFrontend + 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* + rm -vf "${S}"/lib/pty4j-native/linux/mips64el/libpty.so + rm -vf "${S}"/plugins/cwm-plugin/quiche-native/linux-aarch64/libquiche.so + + 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 + + rm -vf "${S}"/lib/pty4j-native/linux/x86-64/libpty.so + + 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 +} + +src_install() { + local dir="/opt/${PN}" + local dst="${D}${dir}" + + insinto "${dir}" + doins -r * + fperms 755 "${dir}"/bin/{format.sh,idea.sh,inspect.sh,restarter,fsnotifier} + if use amd64; then + JRE_DIR=jre64 + else + JRE_DIR=jre + fi + + JRE_BINARIES="jaotc java javapackager jjs jrunscript keytool pack200 rmid rmiregistry unpack200" + if [[ -d ${JRE_DIR} ]]; then + for jrebin in $JRE_BINARIES; do + fperms 755 "${dir}"/"${JRE_DIR}"/bin/"${jrebin}" + done + fi + + # bundled script is always lowercase, and doesn't have -ultimate, -professional suffix. + local bundled_script_name="${PN%-*}.sh" + make_wrapper "${PN}" "${dir}/bin/$bundled_script_name" || die + + local pngfile="$(find ${dst}/bin -maxdepth 1 -iname '*.png')" + newicon $pngfile "${PN}.png" || die "we died" + + make_desktop_entry "${PN}" "IntelliJ Idea Community Edition" "${PN}" "Development;IDE;" + + # recommended by: https://confluence.jetbrains.com/display/IDEADEV/Inotify+Watches+Limit + mkdir -p "${D}/etc/sysctl.d/" || die + echo "fs.inotify.max_user_watches = 524288" > "${D}/etc/sysctl.d/30-idea-inotify-watches.conf" || die + + # remove bundled harfbuzz + rm -f "${D}"/lib/libharfbuzz.so || die "Unable to remove bundled harfbuzz" + + # remove bundled java + rm -r ${dst}/jbr || die "Unable to remove bundled java" + +} |