diff options
Diffstat (limited to 'dev-util/pycharm-community')
10 files changed, 375 insertions, 278 deletions
diff --git a/dev-util/pycharm-community/Manifest b/dev-util/pycharm-community/Manifest index 9d7333c041e0..c2a9d72b268d 100644 --- a/dev-util/pycharm-community/Manifest +++ b/dev-util/pycharm-community/Manifest @@ -1,5 +1,3 @@ -DIST pycharm-community-2018.2.4.tar.gz 260812419 BLAKE2B 2274d8af513535e4c5b3b69619c944f503dd9f2248a43cf3352221b34c40604f409038d85366321e858037e3c9c63dc838c046917c3102a2d536e4aef05c1636 SHA512 aca812b3355552c6a65865385e82c96fbca06f9caa39fd21723710922865f7aeb38de33eb041efb1e3553e161c34de6d8b8ed724d7c91ba16f3a818711ca9468 -DIST pycharm-community-2018.3.1.tar.gz 310702122 BLAKE2B c54153b9529bf03a09d92eb8b139da45bfb047cb1fdeacc9b64f17982edd237ed0633c391c15326ecaed7d9e599b3f87c0a16a2eb1302ceb37dfc1e0329693d0 SHA512 8d1f418bd97d8249481ad63fa699c141e498820698485b74c6f08674e4b0eee6054e9ad1e59260342fd615a5030ed932d1177ed8173ab9cf6026561c10fee9d8 -DIST pycharm-community-2018.3.2.tar.gz 310664794 BLAKE2B 2dd7e59514909da3e319b1d8eb8b3e24e8dc7d67868ffea621b1c3273b6daa32459f09fb2d2e5b94d8044d9c2a0ea55d5940551bfd945e3ed8dabc200bcc2927 SHA512 613c1556dcf86f448cb496cf492ee76636dfef22cc4eb55f57ca1ed91a53f8a78da6455cc6f49becaa6250e136d786c92014e23a4333fbf0a6477a2f1e67a21c -DIST pycharm-community-2018.3.3.tar.gz 310740450 BLAKE2B 53552c228c81b17833d02a18f21838e768fdce3de8595a32fa832938208520306c1858d1e3ca509671e0412f2ec3b70acdf802a8af38816d91970f0c08b93147 SHA512 f1e774633718361fa623cb9810cd23be5da98f1bdc6cdfb01ef0980aa1163e0dea1e6c4ebbd1496ff903d81fec744f022a7c7854e29302c19d503541565dd1a0 -DIST pycharm-community-2018.3.tar.gz 310642963 BLAKE2B b32f3c9a3c28bc1ee4658c1ef60cbbe2c4775b310512b3a7fd1b28839bf1c69a566198808b128d18cbbe2d987f61d80bcbcc590177b25d8e9c8fce5fb1754d49 SHA512 00121b4ee9daae92d5c389913f4dd9efcd634f9888b21f6bcae10a3a67cc4bc36a5012590e6836224168053521edf5ba848080f4fc1060df04dc4c58cfdd9fff +DIST pycharm-community-2023.1.1.tar.gz 577304778 BLAKE2B c630c4a21edc2c36e972965e35df63500dafe8ecbd5eee9c6246785bf9e6962e048759a8674160fd47de810a75ffcefe0df14149746ca789b8064623551bed19 SHA512 d0c2419b77ca34c04579f8d52a20427a927fc4d7b3edb1e7787ed515cdc3777b19d963c22975c932c3e568c1861ec7806955514921a1156e497b584f816cd6a2 +DIST pycharm-community-2023.3.2.tar.gz 610736516 BLAKE2B 67de675fd1e22aadeabf339aeef32927e2b511f1b3d2c1655ba220a674545ccd3fff0b714b3b946d5a58f3468ab443769a6510bee67703bae880adb688b49ae0 SHA512 7b61e62cb05cc750005ba16d2a26a098f32dc283bb4fa818720d392f3d5183cee71b9c1309df878452ec1adc22fb7e3d5921fd12532b753fc00b6f85064e452e +DIST pycharm-community-2023.3.3.tar.gz 611059375 BLAKE2B 785ef9bef53bbcbbb20200c2d34533a859bf22414ef907b9fb3074e36dbda488f92747d4bafdaa9e37fb6503d78554bbc9071da9377fa7a91bddd805cff57c56 SHA512 7f84903d8e298ef8ddb4107086eab489b242fab8628b03fdf1e259d51d4883b112849058f0da09e1210721fc9f2e904808cee64dd31f6923a73a5e1e71c87649 diff --git a/dev-util/pycharm-community/metadata.xml b/dev-util/pycharm-community/metadata.xml index d21de2d9f07b..de83cfd23616 100644 --- a/dev-util/pycharm-community/metadata.xml +++ b/dev-util/pycharm-community/metadata.xml @@ -1,8 +1,11 @@ <?xml version="1.0" encoding="UTF-8"?> -<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> <pkgmetadata> <maintainer type="person"> - <name>Mikle Kolyada</name> - <email>zlogene@gentoo.org</email> + <email>grozin@gentoo.org</email> + <name>Andrey Grozin</name> </maintainer> +<use> + <flag name="bundled-jdk">Use bundled jdk</flag> +</use> </pkgmetadata> diff --git a/dev-util/pycharm-community/pycharm-community-2018.2.4.ebuild b/dev-util/pycharm-community/pycharm-community-2018.2.4.ebuild deleted file mode 100644 index 2f2c58e1dab2..000000000000 --- a/dev-util/pycharm-community/pycharm-community-2018.2.4.ebuild +++ /dev/null @@ -1,54 +0,0 @@ -# Copyright 1999-2018 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -inherit gnome2-utils readme.gentoo-r1 xdg - -DESCRIPTION="Intelligent Python IDE with unique code assistance and analysis" -HOMEPAGE="http://www.jetbrains.com/pycharm/" -SRC_URI="http://download.jetbrains.com/python/${P}.tar.gz" - -LICENSE="Apache-2.0 BSD CDDL MIT-with-advertising" -SLOT="0" -KEYWORDS="amd64 x86" - -RDEPEND=">=virtual/jre-1.8 - dev-python/pip" - -RESTRICT="mirror strip" - -QA_PREBUILT="opt/${PN}/bin/fsnotifier - opt/${PN}/bin/fsnotifier64 - opt/${PN}/bin/fsnotifier-arm" - -MY_PN=${PN/-community/} - -src_prepare() { - default - - rm -rf jre || die -} - -src_install() { - insinto /opt/${PN} - doins -r * - - fperms a+x /opt/${PN}/bin/{pycharm.sh,fsnotifier{,64},inspect.sh} - - dosym ../../opt/${PN}/bin/pycharm.sh /usr/bin/${PN} - newicon bin/${MY_PN}.png ${PN}.png - make_desktop_entry ${PN} ${PN} ${PN} - - readme.gentoo_create_doc -} - -pkg_postinst() { - xdg_pkg_postinst - gnome2_icon_cache_update -} - -pkg_postrm() { - xdg_pkg_postrm - gnome2_icon_cache_update -} diff --git a/dev-util/pycharm-community/pycharm-community-2018.3.1.ebuild b/dev-util/pycharm-community/pycharm-community-2018.3.1.ebuild deleted file mode 100644 index 7a0fdedacc6e..000000000000 --- a/dev-util/pycharm-community/pycharm-community-2018.3.1.ebuild +++ /dev/null @@ -1,54 +0,0 @@ -# Copyright 1999-2018 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -inherit gnome2-utils readme.gentoo-r1 xdg - -DESCRIPTION="Intelligent Python IDE with unique code assistance and analysis" -HOMEPAGE="http://www.jetbrains.com/pycharm/" -SRC_URI="http://download.jetbrains.com/python/${P}.tar.gz" - -LICENSE="Apache-2.0 BSD CDDL MIT-with-advertising" -SLOT="0" -KEYWORDS="~amd64 ~x86" - -RDEPEND=">=virtual/jre-1.8 - dev-python/pip" - -RESTRICT="mirror strip" - -QA_PREBUILT="opt/${PN}/bin/fsnotifier - opt/${PN}/bin/fsnotifier64 - opt/${PN}/bin/fsnotifier-arm" - -MY_PN=${PN/-community/} - -src_prepare() { - default - - rm -rf jre || die -} - -src_install() { - insinto /opt/${PN} - doins -r * - - fperms a+x /opt/${PN}/bin/{pycharm.sh,fsnotifier{,64},inspect.sh} - - dosym ../../opt/${PN}/bin/pycharm.sh /usr/bin/${PN} - newicon bin/${MY_PN}.png ${PN}.png - make_desktop_entry ${PN} ${PN} ${PN} - - readme.gentoo_create_doc -} - -pkg_postinst() { - xdg_pkg_postinst - gnome2_icon_cache_update -} - -pkg_postrm() { - xdg_pkg_postrm - gnome2_icon_cache_update -} diff --git a/dev-util/pycharm-community/pycharm-community-2018.3.2.ebuild b/dev-util/pycharm-community/pycharm-community-2018.3.2.ebuild deleted file mode 100644 index 7a0fdedacc6e..000000000000 --- a/dev-util/pycharm-community/pycharm-community-2018.3.2.ebuild +++ /dev/null @@ -1,54 +0,0 @@ -# Copyright 1999-2018 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -inherit gnome2-utils readme.gentoo-r1 xdg - -DESCRIPTION="Intelligent Python IDE with unique code assistance and analysis" -HOMEPAGE="http://www.jetbrains.com/pycharm/" -SRC_URI="http://download.jetbrains.com/python/${P}.tar.gz" - -LICENSE="Apache-2.0 BSD CDDL MIT-with-advertising" -SLOT="0" -KEYWORDS="~amd64 ~x86" - -RDEPEND=">=virtual/jre-1.8 - dev-python/pip" - -RESTRICT="mirror strip" - -QA_PREBUILT="opt/${PN}/bin/fsnotifier - opt/${PN}/bin/fsnotifier64 - opt/${PN}/bin/fsnotifier-arm" - -MY_PN=${PN/-community/} - -src_prepare() { - default - - rm -rf jre || die -} - -src_install() { - insinto /opt/${PN} - doins -r * - - fperms a+x /opt/${PN}/bin/{pycharm.sh,fsnotifier{,64},inspect.sh} - - dosym ../../opt/${PN}/bin/pycharm.sh /usr/bin/${PN} - newicon bin/${MY_PN}.png ${PN}.png - make_desktop_entry ${PN} ${PN} ${PN} - - readme.gentoo_create_doc -} - -pkg_postinst() { - xdg_pkg_postinst - gnome2_icon_cache_update -} - -pkg_postrm() { - xdg_pkg_postrm - gnome2_icon_cache_update -} diff --git a/dev-util/pycharm-community/pycharm-community-2018.3.3.ebuild b/dev-util/pycharm-community/pycharm-community-2018.3.3.ebuild deleted file mode 100644 index 476b12dea206..000000000000 --- a/dev-util/pycharm-community/pycharm-community-2018.3.3.ebuild +++ /dev/null @@ -1,54 +0,0 @@ -# Copyright 1999-2019 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -inherit gnome2-utils readme.gentoo-r1 xdg - -DESCRIPTION="Intelligent Python IDE with unique code assistance and analysis" -HOMEPAGE="http://www.jetbrains.com/pycharm/" -SRC_URI="http://download.jetbrains.com/python/${P}.tar.gz" - -LICENSE="Apache-2.0 BSD CDDL MIT-with-advertising" -SLOT="0" -KEYWORDS="~amd64 ~x86" - -RDEPEND=">=virtual/jre-1.8 - dev-python/pip" - -RESTRICT="mirror strip" - -QA_PREBUILT="opt/${PN}/bin/fsnotifier - opt/${PN}/bin/fsnotifier64 - opt/${PN}/bin/fsnotifier-arm" - -MY_PN=${PN/-community/} - -src_prepare() { - default - - rm -rf jre || die -} - -src_install() { - insinto /opt/${PN} - doins -r * - - fperms a+x /opt/${PN}/bin/{pycharm.sh,fsnotifier{,64},inspect.sh} - - dosym ../../opt/${PN}/bin/pycharm.sh /usr/bin/${PN} - newicon bin/${MY_PN}.png ${PN}.png - make_desktop_entry ${PN} ${PN} ${PN} - - readme.gentoo_create_doc -} - -pkg_postinst() { - xdg_pkg_postinst - gnome2_icon_cache_update -} - -pkg_postrm() { - xdg_pkg_postrm - gnome2_icon_cache_update -} diff --git a/dev-util/pycharm-community/pycharm-community-2018.3.ebuild b/dev-util/pycharm-community/pycharm-community-2018.3.ebuild deleted file mode 100644 index 7a0fdedacc6e..000000000000 --- a/dev-util/pycharm-community/pycharm-community-2018.3.ebuild +++ /dev/null @@ -1,54 +0,0 @@ -# Copyright 1999-2018 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -inherit gnome2-utils readme.gentoo-r1 xdg - -DESCRIPTION="Intelligent Python IDE with unique code assistance and analysis" -HOMEPAGE="http://www.jetbrains.com/pycharm/" -SRC_URI="http://download.jetbrains.com/python/${P}.tar.gz" - -LICENSE="Apache-2.0 BSD CDDL MIT-with-advertising" -SLOT="0" -KEYWORDS="~amd64 ~x86" - -RDEPEND=">=virtual/jre-1.8 - dev-python/pip" - -RESTRICT="mirror strip" - -QA_PREBUILT="opt/${PN}/bin/fsnotifier - opt/${PN}/bin/fsnotifier64 - opt/${PN}/bin/fsnotifier-arm" - -MY_PN=${PN/-community/} - -src_prepare() { - default - - rm -rf jre || die -} - -src_install() { - insinto /opt/${PN} - doins -r * - - fperms a+x /opt/${PN}/bin/{pycharm.sh,fsnotifier{,64},inspect.sh} - - dosym ../../opt/${PN}/bin/pycharm.sh /usr/bin/${PN} - newicon bin/${MY_PN}.png ${PN}.png - make_desktop_entry ${PN} ${PN} ${PN} - - readme.gentoo_create_doc -} - -pkg_postinst() { - xdg_pkg_postinst - gnome2_icon_cache_update -} - -pkg_postrm() { - xdg_pkg_postrm - gnome2_icon_cache_update -} diff --git a/dev-util/pycharm-community/pycharm-community-2023.1.1.ebuild b/dev-util/pycharm-community/pycharm-community-2023.1.1.ebuild new file mode 100644 index 000000000000..87009b96c9ae --- /dev/null +++ b/dev-util/pycharm-community/pycharm-community-2023.1.1.ebuild @@ -0,0 +1,122 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit desktop readme.gentoo-r1 wrapper xdg-utils + +DESCRIPTION="Intelligent Python IDE with unique code assistance and analysis" +HOMEPAGE="http://www.jetbrains.com/pycharm/" +SRC_URI="http://download.jetbrains.com/python/${P}.tar.gz" + +LICENSE="Apache-2.0 BSD CDDL MIT-with-advertising" +SLOT="0" +KEYWORDS="amd64 x86" +IUSE="+bundled-jdk" + +BDEPEND="dev-util/patchelf" + +RDEPEND="!bundled-jdk? ( >=virtual/jre-1.8 ) + app-arch/brotli + app-arch/zstd + app-crypt/p11-kit + dev-libs/fribidi + dev-libs/glib + dev-libs/json-c + dev-libs/libbsd + dev-libs/libdbusmenu + dev-libs/nss + dev-python/pip + media-fonts/dejavu + media-gfx/graphite2 + media-libs/alsa-lib + media-libs/fontconfig + media-libs/freetype:2= + media-libs/harfbuzz + media-libs/libglvnd + media-libs/libjpeg-turbo:0= + media-libs/libpng:0= + net-libs/gnutls + net-print/cups + sys-apps/dbus + sys-libs/libcap + sys-libs/zlib + x11-libs/libX11 + x11-libs/libxcb + x11-libs/libXext + x11-libs/libXi + x11-libs/libXrandr + x11-libs/libXrender + x11-libs/libXtst + x11-libs/pango +" + +RESTRICT="mirror" + +QA_PREBUILT="opt/${P}/*" + +MY_PN=${PN/-community/} + +src_prepare() { + default + + rm -vf "${S}"/help/ReferenceCardForMac.pdf || die + + rm -vf "${S}"/bin/phpstorm.vmoptions || die + + rm -vf "${S}"/plugins/performanceTesting/bin/libyjpagent.so || die + rm -vf "${S}"/plugins/performanceTesting/bin/*.dll || die + rm -vf "${S}"/plugins/performanceTesting/bin/libyjpagent.dylib || die + rm -vrf "${S}"/lib/pty4j-native/linux/{aarch64,arm,mips64el,ppc64le,x86} || die + rm -vf "${S}"/plugins/python-ce/helpers/pydev/pydevd_attach_to_process/attach_linux_x86.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 + + for file in "jbr/lib/"/{libjcef.so,jcef_helper} + do + if [[ -f "${file}" ]]; then + patchelf --set-rpath '$ORIGIN' ${file} || die + fi + done +} + +src_install() { + local DIR="/opt/${PN}" + local JRE_DIR="jbr" + + insinto ${DIR} + doins -r * + + if ! use bundled-jdk; then + rm -r "${JRE_DIR}" || die + fi + + fperms 755 "${DIR}"/bin/{format.sh,fsnotifier,inspect.sh,ltedit.sh,pycharm.sh,restart.py} + + fperms 755 "${DIR}"/"${JRE_DIR}"/bin/{java,javac,javadoc,jcmd,jdb,jfr,jhsdb,jinfo,jmap,jps,jrunscript,jstack,jstat,keytool,rmiregistry,serialver} + fperms 755 "${DIR}"/"${JRE_DIR}"/lib/{chrome-sandbox,jcef_helper,jexec,jspawnhelper} + + make_wrapper "${PN}" "${DIR}/bin/pycharm.sh" + newicon bin/${MY_PN}.png ${PN}.png + make_desktop_entry ${PN} ${PN} ${PN} + + readme.gentoo_create_doc + + # recommended by: https://confluence.jetbrains.com/display/IDEADEV/Inotify+Watches+Limit + dodir /etc/sysctl.d/ + echo "fs.inotify.max_user_watches = 524288" > "${D}/etc/sysctl.d/30-idea-inotify-watches.conf" || die +} + +pkg_postinst() { + xdg_icon_cache_update +} + +pkg_postrm() { + xdg_icon_cache_update +} diff --git a/dev-util/pycharm-community/pycharm-community-2023.3.2.ebuild b/dev-util/pycharm-community/pycharm-community-2023.3.2.ebuild new file mode 100644 index 000000000000..a7d802f5c2db --- /dev/null +++ b/dev-util/pycharm-community/pycharm-community-2023.3.2.ebuild @@ -0,0 +1,122 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit desktop readme.gentoo-r1 wrapper xdg-utils + +DESCRIPTION="Intelligent Python IDE with unique code assistance and analysis" +HOMEPAGE="http://www.jetbrains.com/pycharm/" +SRC_URI="http://download.jetbrains.com/python/${P}.tar.gz" + +LICENSE="Apache-2.0 BSD CDDL MIT-with-advertising" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~x86" +IUSE="+bundled-jdk" + +BDEPEND="dev-util/patchelf" + +RDEPEND="!bundled-jdk? ( >=virtual/jre-1.8 ) + app-arch/brotli + app-arch/zstd + app-crypt/p11-kit + dev-libs/fribidi + dev-libs/glib + dev-libs/json-c + dev-libs/libbsd + dev-libs/libdbusmenu + dev-libs/nss + dev-libs/wayland + dev-python/pip + media-fonts/dejavu + media-gfx/graphite2 + media-libs/alsa-lib + media-libs/fontconfig + media-libs/freetype:2= + media-libs/harfbuzz + media-libs/libglvnd + media-libs/libjpeg-turbo:0= + media-libs/libpng:0= + net-libs/gnutls + net-print/cups + sys-apps/dbus + sys-libs/libcap + sys-libs/zlib + x11-libs/libX11 + x11-libs/libxcb + x11-libs/libXext + x11-libs/libXi + x11-libs/libXrandr + x11-libs/libXrender + x11-libs/libXtst + x11-libs/pango +" + +RESTRICT="mirror" + +QA_PREBUILT="opt/${P}/*" + +MY_PN=${PN/-community/} + +src_prepare() { + default + + rm -vf "${S}"/help/ReferenceCardForMac.pdf || die + + rm -vf "${S}"/bin/phpstorm.vmoptions || die + + rm -vf "${S}"/plugins/performanceTesting/bin/libyjpagent.so || die + rm -vf "${S}"/plugins/performanceTesting/bin/*.dll || die + rm -vf "${S}"/plugins/performanceTesting/bin/libyjpagent.dylib || die + rm -vrf "${S}"/lib/pty4j-native/linux/{aarch64,arm,mips64el,ppc64le,x86} || die + rm -vf "${S}"/plugins/python-ce/helpers/pydev/pydevd_attach_to_process/attach_linux_x86.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 + + for file in "jbr/lib/"/{libjcef.so,jcef_helper} + do + if [[ -f "${file}" ]]; then + patchelf --set-rpath '$ORIGIN' ${file} || die + fi + done +} + +src_install() { + local DIR="/opt/${PN}" + local JRE_DIR="jbr" + + insinto ${DIR} + doins -r * + + if ! use bundled-jdk; then + rm -r "${JRE_DIR}" || die + fi + + fperms 755 "${DIR}"/bin/{format.sh,fsnotifier,inspect.sh,jetbrains_client.sh,ltedit.sh,pycharm.sh,repair,restarter} + fperms 755 "${DIR}"/"${JRE_DIR}"/bin/{java,javac,javadoc,jcmd,jdb,jfr,jhsdb,jinfo,jmap,jps,jrunscript,jstack,jstat,keytool,rmiregistry,serialver} + fperms 755 "${DIR}"/"${JRE_DIR}"/lib/{chrome-sandbox,jcef_helper,jexec,jspawnhelper} + + make_wrapper "${PN}" "${DIR}/bin/pycharm.sh" + newicon bin/${MY_PN}.png ${PN}.png + make_desktop_entry ${PN} ${PN} ${PN} + + readme.gentoo_create_doc + + # recommended by: https://confluence.jetbrains.com/display/IDEADEV/Inotify+Watches+Limit + dodir /etc/sysctl.d/ + echo "fs.inotify.max_user_watches = 524288" > "${D}/etc/sysctl.d/30-idea-inotify-watches.conf" || die +} + +pkg_postinst() { + xdg_icon_cache_update +} + +pkg_postrm() { + xdg_icon_cache_update +} diff --git a/dev-util/pycharm-community/pycharm-community-2023.3.3.ebuild b/dev-util/pycharm-community/pycharm-community-2023.3.3.ebuild new file mode 100644 index 000000000000..a7d802f5c2db --- /dev/null +++ b/dev-util/pycharm-community/pycharm-community-2023.3.3.ebuild @@ -0,0 +1,122 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit desktop readme.gentoo-r1 wrapper xdg-utils + +DESCRIPTION="Intelligent Python IDE with unique code assistance and analysis" +HOMEPAGE="http://www.jetbrains.com/pycharm/" +SRC_URI="http://download.jetbrains.com/python/${P}.tar.gz" + +LICENSE="Apache-2.0 BSD CDDL MIT-with-advertising" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~x86" +IUSE="+bundled-jdk" + +BDEPEND="dev-util/patchelf" + +RDEPEND="!bundled-jdk? ( >=virtual/jre-1.8 ) + app-arch/brotli + app-arch/zstd + app-crypt/p11-kit + dev-libs/fribidi + dev-libs/glib + dev-libs/json-c + dev-libs/libbsd + dev-libs/libdbusmenu + dev-libs/nss + dev-libs/wayland + dev-python/pip + media-fonts/dejavu + media-gfx/graphite2 + media-libs/alsa-lib + media-libs/fontconfig + media-libs/freetype:2= + media-libs/harfbuzz + media-libs/libglvnd + media-libs/libjpeg-turbo:0= + media-libs/libpng:0= + net-libs/gnutls + net-print/cups + sys-apps/dbus + sys-libs/libcap + sys-libs/zlib + x11-libs/libX11 + x11-libs/libxcb + x11-libs/libXext + x11-libs/libXi + x11-libs/libXrandr + x11-libs/libXrender + x11-libs/libXtst + x11-libs/pango +" + +RESTRICT="mirror" + +QA_PREBUILT="opt/${P}/*" + +MY_PN=${PN/-community/} + +src_prepare() { + default + + rm -vf "${S}"/help/ReferenceCardForMac.pdf || die + + rm -vf "${S}"/bin/phpstorm.vmoptions || die + + rm -vf "${S}"/plugins/performanceTesting/bin/libyjpagent.so || die + rm -vf "${S}"/plugins/performanceTesting/bin/*.dll || die + rm -vf "${S}"/plugins/performanceTesting/bin/libyjpagent.dylib || die + rm -vrf "${S}"/lib/pty4j-native/linux/{aarch64,arm,mips64el,ppc64le,x86} || die + rm -vf "${S}"/plugins/python-ce/helpers/pydev/pydevd_attach_to_process/attach_linux_x86.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 + + for file in "jbr/lib/"/{libjcef.so,jcef_helper} + do + if [[ -f "${file}" ]]; then + patchelf --set-rpath '$ORIGIN' ${file} || die + fi + done +} + +src_install() { + local DIR="/opt/${PN}" + local JRE_DIR="jbr" + + insinto ${DIR} + doins -r * + + if ! use bundled-jdk; then + rm -r "${JRE_DIR}" || die + fi + + fperms 755 "${DIR}"/bin/{format.sh,fsnotifier,inspect.sh,jetbrains_client.sh,ltedit.sh,pycharm.sh,repair,restarter} + fperms 755 "${DIR}"/"${JRE_DIR}"/bin/{java,javac,javadoc,jcmd,jdb,jfr,jhsdb,jinfo,jmap,jps,jrunscript,jstack,jstat,keytool,rmiregistry,serialver} + fperms 755 "${DIR}"/"${JRE_DIR}"/lib/{chrome-sandbox,jcef_helper,jexec,jspawnhelper} + + make_wrapper "${PN}" "${DIR}/bin/pycharm.sh" + newicon bin/${MY_PN}.png ${PN}.png + make_desktop_entry ${PN} ${PN} ${PN} + + readme.gentoo_create_doc + + # recommended by: https://confluence.jetbrains.com/display/IDEADEV/Inotify+Watches+Limit + dodir /etc/sysctl.d/ + echo "fs.inotify.max_user_watches = 524288" > "${D}/etc/sysctl.d/30-idea-inotify-watches.conf" || die +} + +pkg_postinst() { + xdg_icon_cache_update +} + +pkg_postrm() { + xdg_icon_cache_update +} |