Package Details: pycharm-professional 2024.1-1

Git Clone URL: https://aur.archlinux.org/pycharm-professional.git (read-only, click to copy)
Package Base: pycharm-professional
Description: Python IDE for Professional Developers. Professional Edition
Upstream URL: https://www.jetbrains.com/pycharm/
Keywords: development editor ide jetbrains python
Licenses: custom
Submitter: hippojazz
Maintainer: Xavier (37h4n)
Last Packager: Xavier
Votes: 287
Popularity: 1.34
First Submitted: 2013-09-25 03:56 (UTC)
Last Updated: 2024-04-04 13:20 (UTC)

Dependencies (19)

Required by (0)

Sources (4)

Pinned Comments

Latest Comments

« First ‹ Previous 1 .. 6 7 8 9 10 11 12 13 14 15 16 .. 43 Next › Last »

Xavier commented on 2021-12-16 16:40 (UTC)

Thanks @edacval that is correct, fixed

edacval commented on 2021-12-15 02:52 (UTC)

@XavierCLL, is not necessary to add 32bit deps. Hint: inspect pycharm-${pkgver}/plugins/python/helpers/pydev/pydevd_attach_to_process/linux_and_mac/compile_linux.sh. You can skip 32bit compilation step with this patch:

diff --git a/.SRCINFO b/.SRCINFO
index 8dab143..7c160f5 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -7,7 +7,6 @@ pkgbase = pycharm-professional
    license = custom
    makedepends = python-setuptools
    makedepends = cython
-   makedepends = lib32-gcc-libs
    depends = giflib
    depends = glibc
    depends = sh
diff --git a/PKGBUILD b/PKGBUILD
index a498dbc..b5a48a0 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -21,7 +21,7 @@ sha256sums=('81426f86e1b3de0bd00488e037e9fdcaab4772f1f259ff551ac904d35fb4cd7c'
             'a75264959b06a45ea0801729bc1688bfbd52da3c5fbf3d5b1ad9267860439291'
             '6996b38a3c2ba1e472838d7046a4c54a27822fd647be9ca590457e8c6a2d50c8'
             '039f0d1dc447fb26bb9df35b3a85145a47ce42193c8b2d56bf7bdf090fff0da9')
-makedepends=('python-setuptools' 'cython' 'lib32-gcc-libs')
+makedepends=('python-setuptools' 'cython')
 optdepends=('ipython: For enhanced interactive Python shell inside Pycharm'
             'openssh: For deployment and remote connections'
             'python-setuptools: Packages manager for Python, for project interpreter'
@@ -39,7 +39,9 @@ build() {
     find pycharm-${pkgver}/plugins/python/helpers/pydev/ \( -name *.so -o -name *.pyd \) -delete
     sed -i '1s/^/# cython: language_level=3\n/' pycharm-${pkgver}/plugins/python/helpers/pydev/_pydevd_bundle/pydevd_cython.pxd
     python pycharm-${pkgver}/plugins/python/helpers/pydev/setup_cython.py build_ext --inplace --force-cython
-    cd pycharm-${pkgver}/plugins/python/helpers/pydev/pydevd_attach_to_process/linux_and_mac/; bash compile_linux.sh; cd -  # for attach debugger
+    pushd pycharm-${pkgver}/plugins/python/helpers/pydev/pydevd_attach_to_process/linux_and_mac
+    g++ -m64 -shared -o ../attach_linux_amd64.so -fPIC -nostartfiles attach.cpp
+    popd

     rm -rf pycharm-${pkgver}/plugins/python/helpers/pydev/build/
     find pycharm-${pkgver}/plugins/python/helpers/pydev/ -name __pycache__ -exec rm -rf {} \;

Xavier commented on 2021-12-15 01:22 (UTC) (edited on 2021-12-15 01:38 (UTC) by Xavier)

@MikeBreytenbach and @nadavz, it is weird that Pycharm requires a 32bits lib I want to check that with more details, personally I don't like adding a 32bit lib as a depend mostly when Archlinux is officially only a 64bit distro.

@huyz and @MikeBreytenbach, The idea to split the bundled java runtime could work but it depends that both packages always being released at the same time, there could be different problems e.g. the other Jetbrain software have a different release time, the others maintainers of those packages must agree to have a separate bundle JRE, pycharm-professional-jre is not a good name for that, etc.

MikeBreytenbach commented on 2021-12-14 16:24 (UTC)

@huyz: Thank you. It looks like a lot of Jetbrains apps use the same Jetbrains JRE. I plan to add it as a separate AUR package and then list it as an optional dependency.

@solnce: Fixed, thanks.

solnce commented on 2021-12-14 15:35 (UTC) (edited on 2021-12-14 15:35 (UTC) by solnce)

The new dependency lib32-gcc-libs is missing from the .SRCINFO.

huyz commented on 2021-12-10 11:07 (UTC) (edited on 2021-12-10 11:21 (UTC) by huyz)

Feature request: Could you pack the bundled java runtime into a split package pycharm-professional-jre, just like other Jetbrains IDEs (e.g. datagrip, goland, idea, etc) in AUR.

This can save some disk space for user who uses custom java runtime.

Here's a modified PKGBUILD to pack this:

diff --git a/PKGBUILD b/PKGBUILD
index a498dbc..7e01665 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,18 +1,14 @@
 # Maintainer: MikeBreytenbach <mike.breyten.bach at gmail dot com>
 # Maintainer: XavierCLL <xavier.corredor.llano (a) gmail.com>

-pkgname=pycharm-professional
+pkgbase=pycharm-professional
+pkgname=(pycharm-professional pycharm-professional-jre)
 pkgver=2021.3
 pkgrel=1
 pkgdesc="Python IDE for Professional Developers. Professional Edition"
 arch=('x86_64')
 url='https://www.jetbrains.com/pycharm/'
-conflicts=('pycharm' 'pycharm-community-edition')
-provides=('pycharm')
 license=('custom')
-backup=("opt/$pkgname/bin/pycharm64.vmoptions"
-        "opt/$pkgname/bin/idea.properties")
-depends=('giflib' 'glibc' 'sh' 'libxtst' 'libxslt' 'libxss' 'nss' 'python' 'libdbusmenu-glib')
 source=("https://download.jetbrains.com/python/$pkgname-$pkgver.tar.gz"
         "pycharm-professional.desktop"
         "charm.desktop"
@@ -22,17 +18,6 @@ sha256sums=('81426f86e1b3de0bd00488e037e9fdcaab4772f1f259ff551ac904d35fb4cd7c'
             '6996b38a3c2ba1e472838d7046a4c54a27822fd647be9ca590457e8c6a2d50c8'
             '039f0d1dc447fb26bb9df35b3a85145a47ce42193c8b2d56bf7bdf090fff0da9')
 makedepends=('python-setuptools' 'cython' 'lib32-gcc-libs')
-optdepends=('ipython: For enhanced interactive Python shell inside Pycharm'
-            'openssh: For deployment and remote connections'
-            'python-setuptools: Packages manager for Python, for project interpreter'
-            'python-coverage: For support code coverage measurement'
-            'cython: For performance debugger'
-            'docker-machine: For support docker inside Pycharm'
-            'docker-compose: For support docker inside Pycharm'
-            'vagrant: For support virtualized development environments'
-            'python-pytest: For support testing inside Pycharm'
-            'python-tox: Python environments for testing tool'
-            'jupyter: For support Jupyter Notebook')

 build() {
     # clean up and compile PyDev debugger used by PyCharm to speedup debugging
@@ -46,7 +31,26 @@ build() {
     rm -r pycharm-${pkgver}/lib/pty4j-native/linux/{mips64el,ppc64le,aarch64,arm,x86}
 }

-package() {
+package_pycharm-professional() {
+    depends=('giflib' 'glibc' 'sh' 'libxtst' 'libxslt' 'libxss' 'nss' 'python' 'libdbusmenu-glib')
+    optdepends=('pycharm-professional-jre: JetBrains custom JRE (Recommended)'
+            'java-environment: Required if pycharm-professional-jre is not installed'
+            'ipython: For enhanced interactive Python shell inside Pycharm'
+            'openssh: For deployment and remote connections'
+            'python-setuptools: Packages manager for Python, for project interpreter'
+            'python-coverage: For support code coverage measurement'
+            'cython: For performance debugger'
+            'docker-machine: For support docker inside Pycharm'
+            'docker-compose: For support docker inside Pycharm'
+            'vagrant: For support virtualized development environments'
+            'python-pytest: For support testing inside Pycharm'
+            'python-tox: Python environments for testing tool'
+            'jupyter: For support Jupyter Notebook')
+    conflicts=('pycharm' 'pycharm-community-edition')
+    provides=('pycharm')
+    backup=("opt/$pkgname/bin/pycharm64.vmoptions"
+        "opt/$pkgname/bin/idea.properties")
+
     # licenses
     install -dm 755 "$pkgdir/usr/share/licenses/$pkgname/"
     mv "pycharm-$pkgver/license/"* "$pkgdir/usr/share/licenses/$pkgname/"
@@ -54,6 +58,7 @@ package() {
     # base
     install -dm 755 "$pkgdir/opt/$pkgname"
     mv "pycharm-$pkgver/"* "$pkgdir/opt/$pkgname/"
+    mv "$pkgdir/opt/$pkgname/jbr" "pycharm-$pkgver/"
     install -dm 755 "$pkgdir/usr/share/applications"
     install -Dm 644 "$pkgname.desktop" "$pkgdir/usr/share/applications/"
     install -dm 755 "$pkgdir/usr/share/icons/hicolor/"{128x128,scalable}"/apps/"
@@ -68,3 +73,8 @@ package() {
     install -Dm 755 charm "$pkgdir/usr/bin/"
     install -Dm 644 charm.desktop "$pkgdir/usr/share/applications/"
 }
+
+package_pycharm-professional-jre() {
+    install -dm 755 "$pkgdir/opt/$pkgname"
+    mv "pycharm-$pkgver/jbr" "$pkgdir/opt/$pkgname/"
+}

nadavz commented on 2021-12-06 06:59 (UTC)

@MikeBreytenbach thanks, installing lib32-gcc-libs did solve the issue. It appears that it might be a missing make dependency.

MikeBreytenbach commented on 2021-12-05 19:05 (UTC)

Thanks @donny and @XavierCLL. Is it possible that gcc-libs is not enough and that PyCharm also needs the 32 bit version to build?

donny commented on 2021-12-05 16:59 (UTC)

@XavierCLL: gcc-libs is a required dependecy of both base meta-package and gcc package from the base-devel package group. If anyone is missing base or base-devel on his arch machine, it's the user's fault and shloudn't be corrected in the PKGBUILD.