Package Details: phpstorm-eap 252.23892.374-1

Git Clone URL: https://aur.archlinux.org/phpstorm-eap.git (read-only, click to copy)
Package Base: phpstorm-eap
Description: Lightning-smart PHP IDE. Early Access Program.
Upstream URL: https://www.jetbrains.com/phpstorm/
Keywords: devel ide php
Licenses: Commercial
Submitter: mortan
Maintainer: fikrimi
Last Packager: fikrimi
Votes: 44
Popularity: 0.44
First Submitted: 2011-06-03 16:07 (UTC)
Last Updated: 2025-07-30 03:46 (UTC)

Dependencies (5)

Required by (0)

Sources (2)

Latest Comments

1 2 3 4 5 6 .. 19 Next › Last »

blackout commented on 2025-07-28 12:38 (UTC) (edited on 2025-07-28 12:51 (UTC) by blackout)

instead of you updating the package all the time you could pull the latest version and checksum and use that one. As soon as people see the "update available"icon in PhpStorm they could just run the build again.


pkgbase=phpstorm-eap
pkgname=(phpstorm-eap phpstorm-eap-jre)
pkgver=252.23892.178  # dummy value, replaced by pkgver()
pkgrel=1
pkgdesc="JetBrains PhpStorm EAP (Early Access Program) - Latest version"
arch=('x86_64')
license=('Commercial')
url='https://www.jetbrains.com/phpstorm/'
depends=('libdbusmenu-glib')
makedepends=('jq' 'curl' 'rsync')
options=('!strip')

_latest_info() {
  curl -s "https://data.services.jetbrains.com/products/releases?code=PS&latest=true&type=eap"
}

_latest_version() {
  _latest_info | jq -r '.PS[0].build'
}

_latest_url() {
  _latest_info | jq -r '.PS[0].downloads.linux.link'
}

_latest_checksum() {
  curl -s "$(_latest_info | jq -r '.PS[0].downloads.linux.checksumLink')" | awk '{print $1}'
}

pkgver() {
  _latest_version
}

# Always fetch the latest tarball under a static name
source=(
  "PhpStorm.tar.gz::$(_latest_url)"
  "jetbrains-phpstorm-eap.desktop"
)
sha256sums=(
  "$(_latest_checksum)"
  '72bffbc2ca1d8c97fb0a18a9493faf6323fef28bf9e38e0c573602d8630982c7'
)

package_phpstorm-eap() {
  optdepends=('phpstorm-eap-jre: JetBrains custom Java Runtime (Recommended)'
              'java-runtime: JRE - Required if phpstorm-eap-jre is not installed'
              'gnome-keyring: save login/deployment credentials safely')

  install -d -m 755 "${pkgdir}/opt/"
  install -d -m 755 "${pkgdir}/usr/bin/"
  install -d -m 755 "${pkgdir}/usr/share/applications/"
  install -d -m 755 "${pkgdir}/usr/share/pixmaps/"

  rsync -rtl "${srcdir}/PhpStorm-${pkgver}/" "${pkgdir}/opt/${pkgbase}" --exclude=/jbr

  install -D -m 644 "${srcdir}/jetbrains-${pkgbase}.desktop" "${pkgdir}/usr/share/applications/"
  install -D -m 644 "${pkgdir}/opt/${pkgbase}/bin/phpstorm.svg" "${pkgdir}/usr/share/pixmaps/${pkgbase}.svg"
}

package_phpstorm-eap-jre() {
  install -d -m 755 "${pkgdir}/opt/${pkgbase}"
  rsync -rtl "${srcdir}/PhpStorm-${pkgver}/jbr" "${pkgdir}/opt/${pkgbase}"
}

aliu commented on 2025-04-21 04:39 (UTC)

I would be willing to assist with making such symlinks work.

aliu commented on 2025-04-19 16:58 (UTC)

Since all -jre packages are just the same JetBrains runtime installed in different directories, to avoid duplication and save disk space, would it be possible to separate out the runtime into its own package and make the -jre packages depend on the runtime package and just symlink the directories?

blackout commented on 2024-06-03 06:13 (UTC)

The latest 2 Phpstorm EAP versions don't like to be started via the phpstorm.sh script and complain.

Maybe change that during installation via sed -i 's|Exec="/opt/phpstorm-eap/bin/phpstorm.sh" %f|Exec="/opt/phpstorm-eap/bin/phpstorm" %f|' /usr/share/applications/jetbrains-phpstorm-eap.desktop

mitchhentges commented on 2019-02-04 06:32 (UTC)

I'm having graphics driver issues with Arch, so I'm using Ubuntu. Disowning this package because I no longer have the means to test changes