# 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.25908.SNAPSHOT
pkgver=2025.3.253.25908.eap.5
_tagsuffix=2025.3-eap-5
_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=('33460f14340632fbb9767c4e15521df9c2604092530607b69f0485c5a93fb2a3'
            '814e290309f597f91fe4b2e30b92d1ee774392f7f70df90cef1edb523becc1e1'
            '40cd08369918b74f21665f7162434c5245588efe8d20757431e92eb66dc76b06'
            '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:
