Gentoo Archives: gentoo-commits

From: Andrey Grozin <grozin@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-util/pycharm-community/
Date: Wed, 29 Dec 2021 09:33:59
Message-Id: 1640770413.440105c64c322c391309c7a765a4a2911183795b.grozin@gentoo
1 commit: 440105c64c322c391309c7a765a4a2911183795b
2 Author: Andrey Grozin <grozin <AT> gentoo <DOT> org>
3 AuthorDate: Wed Dec 29 09:32:05 2021 +0000
4 Commit: Andrey Grozin <grozin <AT> gentoo <DOT> org>
5 CommitDate: Wed Dec 29 09:33:33 2021 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=440105c6
7
8 dev-util/pycharm-community: bump to 2021.3
9
10 Package-Manager: Portage-3.0.30, Repoman-3.0.3
11 Signed-off-by: Andrey Grozin <grozin <AT> gentoo.org>
12
13 dev-util/pycharm-community/Manifest | 1 +
14 dev-util/pycharm-community/metadata.xml | 5 +-
15 .../pycharm-community-2021.3.ebuild | 122 +++++++++++++++++++++
16 3 files changed, 127 insertions(+), 1 deletion(-)
17
18 diff --git a/dev-util/pycharm-community/Manifest b/dev-util/pycharm-community/Manifest
19 index ddca8cd03f86..cf01d567986b 100644
20 --- a/dev-util/pycharm-community/Manifest
21 +++ b/dev-util/pycharm-community/Manifest
22 @@ -1 +1,2 @@
23 DIST pycharm-community-2021.1.2.tar.gz 466806126 BLAKE2B 403cc5949ccb0e5f7d39d55b91d962889e35342715501466c007a5b3b044cbe33260de99e7d299f35a6e789c6f7e5726bc7106bc206d4e4890f8948eab7a15a2 SHA512 180d813d1162456312eb4482f414443350d784effab56cc53f2f6c2c79931f9af597849ec395089d8fc1ca2b87015722fad3cc43e03bfb4418e2c926b5af0107
24 +DIST pycharm-community-2021.3.tar.gz 498868447 BLAKE2B 7c439d47f39d3f715fc99b139c0cbcde8de3224d433e8d79b050cd08dee7cefaef6f2e647cdbe659d6c447580e83a9186783c251aef3011e0bbabb16b5e32589 SHA512 6513ea22a6948abb3839158ac0ba31d6acda709689eaae6bfa014d49c1b8bc958ddb507404d169a212ff2b61387ef44b8207b899adb5ac8a71b75ca7da3732a2
25
26 diff --git a/dev-util/pycharm-community/metadata.xml b/dev-util/pycharm-community/metadata.xml
27 index abe40f18a4e9..de83cfd23616 100644
28 --- a/dev-util/pycharm-community/metadata.xml
29 +++ b/dev-util/pycharm-community/metadata.xml
30 @@ -1,7 +1,10 @@
31 <?xml version="1.0" encoding="UTF-8"?>
32 <!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
33 <pkgmetadata>
34 -<!-- maintainer-needed -->
35 +<maintainer type="person">
36 + <email>grozin@g.o</email>
37 + <name>Andrey Grozin</name>
38 +</maintainer>
39 <use>
40 <flag name="bundled-jdk">Use bundled jdk</flag>
41 </use>
42
43 diff --git a/dev-util/pycharm-community/pycharm-community-2021.3.ebuild b/dev-util/pycharm-community/pycharm-community-2021.3.ebuild
44 new file mode 100644
45 index 000000000000..419c39b80b3d
46 --- /dev/null
47 +++ b/dev-util/pycharm-community/pycharm-community-2021.3.ebuild
48 @@ -0,0 +1,122 @@
49 +# Copyright 1999-2021 Gentoo Authors
50 +# Distributed under the terms of the GNU General Public License v2
51 +
52 +EAPI=7
53 +
54 +inherit desktop readme.gentoo-r1 wrapper xdg-utils
55 +
56 +DESCRIPTION="Intelligent Python IDE with unique code assistance and analysis"
57 +HOMEPAGE="http://www.jetbrains.com/pycharm/"
58 +SRC_URI="http://download.jetbrains.com/python/${P}.tar.gz"
59 +
60 +LICENSE="Apache-2.0 BSD CDDL MIT-with-advertising"
61 +SLOT="0"
62 +KEYWORDS="~amd64 ~x86"
63 +IUSE="+bundled-jdk"
64 +
65 +BDEPEND="dev-util/patchelf"
66 +
67 +RDEPEND="!bundled-jdk? ( >=virtual/jre-1.8 )
68 + app-arch/brotli
69 + app-arch/zstd
70 + app-crypt/p11-kit
71 + dev-libs/fribidi
72 + dev-libs/glib
73 + dev-libs/json-c
74 + dev-libs/libbsd
75 + dev-libs/libdbusmenu
76 + dev-libs/nss
77 + dev-python/pip
78 + media-fonts/dejavu
79 + media-gfx/graphite2
80 + media-libs/alsa-lib
81 + media-libs/fontconfig
82 + media-libs/freetype:2=
83 + media-libs/harfbuzz
84 + media-libs/libglvnd
85 + media-libs/libpng:0=
86 + net-libs/gnutls
87 + net-print/cups
88 + sys-apps/dbus
89 + sys-libs/libcap
90 + sys-libs/zlib
91 + virtual/jpeg:0=
92 + x11-libs/libX11
93 + x11-libs/libxcb
94 + x11-libs/libXext
95 + x11-libs/libXi
96 + x11-libs/libXrandr
97 + x11-libs/libXrender
98 + x11-libs/libXtst
99 + x11-libs/pango
100 +"
101 +
102 +RESTRICT="mirror"
103 +
104 +QA_PREBUILT="opt/${P}/*"
105 +
106 +MY_PN=${PN/-community/}
107 +
108 +src_prepare() {
109 + default
110 +
111 + rm -vf "${S}"/help/ReferenceCardForMac.pdf || die
112 +
113 + rm -vf "${S}"/bin/phpstorm.vmoptions || die
114 +
115 + rm -vf "${S}"/plugins/performanceTesting/bin/libyjpagent.so || die
116 + rm -vf "${S}"/plugins/performanceTesting/bin/*.dll || die
117 + rm -vf "${S}"/plugins/performanceTesting/bin/libyjpagent.dylib || die
118 + rm -vrf "${S}"/lib/pty4j-native/linux/{aarch64,arm,mips64el,ppc64le,x86} || die
119 + rm -vf "${S}"/plugins/python-ce/helpers/pydev/pydevd_attach_to_process/attach_linux_x86.so
120 +
121 + sed -i \
122 + -e "\$a\\\\" \
123 + -e "\$a#-----------------------------------------------------------------------" \
124 + -e "\$a# Disable automatic updates as these are handled through Gentoo's" \
125 + -e "\$a# package manager. See bug #704494" \
126 + -e "\$a#-----------------------------------------------------------------------" \
127 + -e "\$aide.no.platform.update=Gentoo" bin/idea.properties
128 +
129 + for file in "jbr/lib/"/{libjcef.so,jcef_helper}
130 + do
131 + if [[ -f "${file}" ]]; then
132 + patchelf --set-rpath '$ORIGIN' ${file} || die
133 + fi
134 + done
135 +}
136 +
137 +src_install() {
138 + local DIR="/opt/${PN}"
139 + local JRE_DIR="jbr"
140 +
141 + insinto ${DIR}
142 + doins -r *
143 +
144 + if ! use bundled-jdk; then
145 + rm -r "${JRE_DIR}" || die
146 + fi
147 +
148 + fperms 755 "${DIR}"/bin/{format.sh,fsnotifier,inspect.sh,ltedit.sh,pycharm.sh,printenv.py,restart.py}
149 +
150 + fperms 755 "${DIR}"/"${JRE_DIR}"/bin/{jaotc,java,javac,jcmd,jdb,jfr,jhsdb,jjs,jmap,jps,jrunscript,jstack,jstat,keytool,pack200,rmid,rmiregistry,serialver,unpack200}
151 + fperms 755 "${DIR}"/"${JRE_DIR}"/lib/{chrome-sandbox,jcef_helper,jexec,jspawnhelper}
152 +
153 + make_wrapper "${PN}" "${DIR}/bin/pycharm.sh"
154 + newicon bin/${MY_PN}.png ${PN}.png
155 + make_desktop_entry ${PN} ${PN} ${PN}
156 +
157 + readme.gentoo_create_doc
158 +
159 + # recommended by: https://confluence.jetbrains.com/display/IDEADEV/Inotify+Watches+Limit
160 + dodir /etc/sysctl.d/
161 + echo "fs.inotify.max_user_watches = 524288" > "${D}/etc/sysctl.d/30-idea-inotify-watches.conf" || die
162 +}
163 +
164 +pkg_postinst() {
165 + xdg_icon_cache_update
166 +}
167 +
168 +pkg_postrm() {
169 + xdg_icon_cache_update
170 +}