summarylogtreecommitdiffstats
path: root/PKGBUILD
blob: 2bffb97b2d0f4773f88ef3a9a624cfe76afe4ec9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
# Maintainer: XavierCLL <xavier.corredor.llano (a) gmail.com>

pkgname=pycharm-professional
pkgver=2020.1.0
_pkgver=2020.1
pkgrel=3
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/pycharm.vmoptions"
    "opt/$pkgname/bin/pycharm64.vmoptions"
    "opt/$pkgname/bin/idea.properties"
)
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=('8263bb3707de2eaf88b689cf19667dc24508da40418b7fb00ad1280d1d168deb'
            'aaf7113e8c56e4d977eca204d57350d9493eda2710abefd2488a2b5d47c53344'
            '818ed42f4200ae13315587abf6f247f93e68c658a94794f73924c985cdc145d0'
            '773f169fac40fa5df69ccf90680238524f99c42aaa2b037e78e01cfc8c545280'
            'db54c71d65ac938bb0e4c058481463b71d784ba113a872e419c66975cbc94a3f')
makedepends=('python2-setuptools' 'python-setuptools')
optdepends=('ttf-jetbrains-mono: Official mono font by JetBrains'
            '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')
            
build() {
  cd "pycharm-$_pkgver"

  # compile PyDev debugger used by PyCharm to speedup debugging
  python plugins/python/helpers/pydev/setup_cython.py build_ext --build-temp build --build-lib .
  
  rm -r bin/fsnotifier lib/pty4j-native/linux/{x86,ppc64le}
}

package() {
  # workaround FS#40934
  sed -i "s/lcd/on/" "pycharm-$_pkgver/bin/"*.vmoptions

  # 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/"
  
  # remove internal fonts, instead use system fonts
  rm -r "$pkgdir/opt/pycharm-professional/jbr/lib/fonts"
  
  # 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/usr/bin/"
  install -Dm 644 charm.desktop "$pkgdir/usr/share/applications/"
}