diff options
Diffstat (limited to 'PKGBUILD')
-rw-r--r-- | PKGBUILD | 141 |
1 files changed, 74 insertions, 67 deletions
@@ -1,78 +1,85 @@ -# Maintainer: XavierCLL <xavier.corredor.llano (a) gmail.com> +# Maintainer: XavierCLL <xavier.corredor.llano at gmail.com> +# Maintainer for aarch64: Ethan Reece <aur at ethanreece dot com> +# Contributor: Frederik Olesen +# Contributor: Andrew Shark pkgname=pycharm-professional -pkgver=2019.1.3 -_pkgver=2019.1.3 +pkgver=2024.1.1 pkgrel=1 -pkgdesc="Powerful Python and Django IDE. Professional Edition." -arch=('x86_64') +pkgdesc="Python IDE for Professional Developers. Professional Edition" +arch=('x86_64' 'x86_64_v3' 'aarch64') url='https://www.jetbrains.com/pycharm/' -conflicts=('pycharm' 'pycharm-community-edition') -provides=('pycharm') license=('custom') -backup=(opt/$pkgname/bin/pycharm.vmoptions opt/$pkgname/bin/pycharm64.vmoptions) -depends=('giflib' 'glibc' 'sh' 'ttf-font' 'libxtst' 'libxslt' 'python') -source=("https://download.jetbrains.com/python/$pkgname-$_pkgver.tar.gz" - "pycharm-professional.desktop" - "pycharm" - "charm.desktop" - "charm") -# https://download.jetbrains.com/python/pycharm-professional-${_pkgver}.tar.gz.sha256 -sha256sums=('8322de8b816895fcb7fd854e83d25084b0593ea2b90b5b4598a495ef2e958824' - 'aaf7113e8c56e4d977eca204d57350d9493eda2710abefd2488a2b5d47c53344' - '818ed42f4200ae13315587abf6f247f93e68c658a94794f73924c985cdc145d0' - '21e77b6b18e14636f9827e1f8d45bbc8dba8fb14ea5f4cde285c1ef4bb01c85e' - '029490b735ec0f5785a083f65172f6eece3fa64dad94b8b56f0db73c5418cfa2') -makedepends=('python2-setuptools' 'python-setuptools') -optdepends=('ipython2: For enhanced interactive Python shell v2 inside Pycharm' - 'ipython: For enhanced interactive Python shell v3 inside Pycharm' - 'openssh: For deployment and remote connections' - 'python2-setuptools: Packages manager for Python 2, for project interpreter' - 'python-setuptools: Packages manager for Python 3, for project interpreter' - 'python2-coverage: For support code coverage measurement for Python 2' - 'python-coverage: For support code coverage measurement for Python 3' - 'cython2: For performance debugger in Python 2' - 'cython: For performance debugger in Python 3' - 'docker-machine: For support docker inside Pycharm' - 'docker-compose: For support docker inside Pycharm' - 'vagrant: For support virtualized development environments' - 'python2-pytest: For support testing inside Pycharm with Python 2' - 'python-pytest: For support testing inside Pycharm with Python 3' - 'python2-tox: Python environments for testing tool with Python 2' - 'python-tox: Python environments for testing tool with Python 3' - 'jupyter: For support Jupyter Notebook' - 'python-docutils-stubs: For build documentation with sphynx') +options=('!strip') +backup=( + "opt/${pkgname}/bin/pycharm64.vmoptions" + "opt/${pkgname}/bin/idea.properties" +) +depends=( + giflib + glibc + sh + python + python-setuptools + cython + libdbusmenu-glib + ttf-font + fontconfig +) +source=("pycharm-professional.desktop" "ltedit-professional.desktop") +source_x86_64=("https://download-cf.jetbrains.com/python/${pkgname}-${pkgver}.tar.gz") +source_x86_64_v3=($source_x86_64) +source_aarch64=("https://download-cf.jetbrains.com/python/${pkgname}-${pkgver}-aarch64.tar.gz") +sha256sums=('6ff245b42b475a5b97c359d97bc48d573c2988170fc195073c9187d5abe1c576' + '21e9d192712fb537d9e5abccc54970becb347b32ad2be469a35b2585f45a9116') +sha256sums_x86_64=('b7e12b8d16164137f4cb0677fcac18af78aa117d33c511cce3fcf3972b4e3b17') +sha256sums_x86_64_v3=('b7e12b8d16164137f4cb0677fcac18af78aa117d33c511cce3fcf3972b4e3b17') +sha256sums_aarch64=('141fbfb473e78270ec161f938963c77cdaad16cfc32985b9ec7a70fdb5e3e0bc') +# 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' + 'python-coverage: For support code coverage measurement' + '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-server: For Jupyter notebooks and apps' +) -build() { - cd pycharm-$_pkgver - - # compile PyDev debugger used by PyCharm to speedup debugging - python2 helpers/pydev/setup_cython.py build_ext --build-temp build --build-lib . - python3 helpers/pydev/setup_cython.py build_ext --build-temp build --build-lib . - - rm -rf bin/fsnotifier{,-arm} lib/libpty/linux/x86 +if [[ "${CARCH}" == "x86_64" ]] || [[ "${CARCH}" == "x86_64_v3" ]] ; then + install=pycharm-professional_x86_64.install +elif [ "${CARCH}" == "aarch64" ]; then + install=pycharm-professional_aarch64.install +fi + +prepare() { + # clean up for PyDev debugger + find pycharm-${pkgver}/plugins/python/helpers/pydev/ \( -name *.so -o -name *.pyd -o -name *.dll \) -delete } package() { - # workaround FS#40934 - sed -i 's/lcd/on/' pycharm-$_pkgver/bin/*.vmoptions + # licenses + install -dm 755 "${pkgdir}/usr/share/licenses/${pkgname}/" + install -m 644 "pycharm-${pkgver}/license/"* "${pkgdir}/usr/share/licenses/${pkgname}/" + + # base + install -dm 755 "${pkgdir}/opt/${pkgname}" + mv "pycharm-${pkgver}/"* "${pkgdir}/opt/${pkgname}/" + install -dm 755 "${pkgdir}/usr/share/applications" + install -Dm 644 "${pkgname}.desktop" "${pkgdir}/usr/share/applications/" + install -Dm 644 "ltedit-professional.desktop" "${pkgdir}/usr/share/applications/" + install -dm 755 "${pkgdir}/usr/share/icons/hicolor/"{128x128,scalable}"/apps/" + install -Dm 644 "${pkgdir}/opt/${pkgname}/bin/pycharm.png" "${pkgdir}/usr/share/icons/hicolor/128x128/apps/pycharm-professional.png" + install -Dm 644 "${pkgdir}/opt/${pkgname}/bin/pycharm.svg" "${pkgdir}/usr/share/icons/hicolor/scalable/apps/pycharm-professional.svg" + + # issue https://youtrack.jetbrains.com/issue/IDEA-313202 + chmod 4755 "${pkgdir}/opt/pycharm-professional/jbr/lib/chrome-sandbox" - # base - install -dm 755 $pkgdir/opt/$pkgname - cp -dr --no-preserve=ownership pycharm-$_pkgver/* $pkgdir/opt/$pkgname/ - install -dm 755 $pkgdir/usr/share/{applications,pixmaps} - install -Dm 644 $pkgdir/opt/$pkgname/bin/pycharm.png $pkgdir/usr/share/pixmaps/pycharm.png - install -Dm 644 pycharm-professional.desktop $pkgdir/usr/share/applications/ - - # exec - install -dm 755 $pkgdir/usr/bin/ - install -Dm 755 pycharm $pkgdir/usr/bin/ - - # licenses - install -dm 755 $pkgdir/usr/share/licenses/$pkgname/ - cp -dr --no-preserve=ownership pycharm-$_pkgver/license/* $pkgdir/usr/share/licenses/$pkgname/ - - # install charm application - for edit a single file in Pycharm - install -Dm 755 charm $pkgdir/opt/pycharm-professional/bin/ - install -Dm 644 charm.desktop $pkgdir/usr/share/applications/ + # exec + install -dm 755 "${pkgdir}/usr/bin/" + ln -s "/opt/${pkgname}/bin/pycharm.sh" "${pkgdir}/usr/bin/pycharm-professional" + ln -s "/opt/${pkgname}/bin/ltedit.sh" "${pkgdir}/usr/bin/ltedit-professional" } |