# Maintainer: Lukas Jirkovsky <l.jirkovsky@gmail.com>
# Maintainer: Levente Polyak <anthraxx[at]archlinux[dot]org>
# Maintainer: Maxime Gauduin <alucryd@archlinux.org>
# Maintainer: Orhun Parmaksız <orhun@archlinux.org>

pkgname=intellij-idea-ce-eap
_build=253.27864.SNAPSHOT
pkgver=2025.3.253.27864.eap.7
_tagsuffix=2025.3-eap-7
_jrever=21
_jdkver=21
pkgrel=1
pkgdesc='IDE for Java, Groovy and other programming languages with advanced refactoring features'
url='https://www.jetbrains.com/idea/'
arch=('x86_64')
license=('Apache-2.0')
backup=('usr/share/idea/bin/idea64.vmoptions')
depends=('giflib' "java-environment-openjdk=${_jrever}" 'python' 'sh' 'ttf-font' 'libdbusmenu-glib' 'fontconfig' 'hicolor-icon-theme')
makedepends=('git')
optdepends=(
  'lldb: lldb frontend integration'
)
source=("git+https://github.com/JetBrains/intellij-community.git#tag=idea/${_tagsuffix}"
        idea-android::"git+https://github.com/JetBrains/android.git#tag=idea/${_tagsuffix}"
        idea-ce-eap.desktop
        idea.sh
        enable-no-jdr.patch)
sha256sums=('5443d360abb23e13ab49e35e3e6fee870961a4da08763e96e3be2e03ccc875bc'
            '56785978fa0fd11501f8ceec5402a2695a043bac53efb5d783e5da523cc8dbc4'
            '5e849a6d4ab8ff32fd5503cf8b7c9d65a02b03c17ae3474c75bcfb7d2e245bc0'
            '9481e6cc993e71f7546e6307f29f5a1edbeaf19a2aa271df9f2d0c1c8e4a50d3'
            'f76e60519486c842d5a19f078aca44d24591a3596412428f33c54e4ef2782ae7')

prepare() {
  cd intellij-community

  # build system doesn't like symlinks
  mv "${srcdir}"/idea-android android

  patch -Np1 < "${srcdir}/enable-no-jdr.patch"
}

build() {
  cd intellij-community
  
  export JAVA_HOME="/usr/lib/jvm/java-${_jdkver}-openjdk"
  export PATH="/usr/lib/jvm/java-${_jdkver}-openjdk/bin:$PATH"
  export MAVEN_REPOSITORY=${srcdir}/.m2/repository

  ./installers.cmd -Dintellij.build.use.compiled.classes=false -Dintellij.build.target.os=linux -Dbuild.number="${_build}"
  tar -xf out/idea-ce/artifacts/ideaIC-${_build}-no-jbr.tar.gz -C "${srcdir}"
}

package() {
  cd idea-IC-${_build}

  install -dm 755 "${pkgdir}"/usr/share/{licenses,pixmaps,idea-ce-eap,icons/hicolor/scalable/apps}
  cp -dr --no-preserve='ownership' bin lib plugins "${pkgdir}"/usr/share/idea-ce-eap/
  cp -dr --no-preserve='ownership' license "${pkgdir}"/usr/share/licenses/idea-ce-eap
  ln -s /usr/share/idea/bin/idea.png "${pkgdir}"/usr/share/pixmaps/idea-ce-eap.png
  ln -s /usr/share/idea/bin/idea.svg "${pkgdir}"/usr/share/icons/hicolor/scalable/apps/idea-ce-eap.svg
  install -Dm 644 ../idea-ce-eap.desktop -t "${pkgdir}"/usr/share/applications/
  install -Dm 755 ../idea.sh "${pkgdir}"/usr/bin/idea-ce-eap
  install -Dm 644 build.txt -t "${pkgdir}"/usr/share/idea-ce-eap
  install -Dm 644 product-info.json -t "${pkgdir}"/usr/share/idea-ce-eap
}

# vim: ts=2 sw=2 et:
