# Template file for 'intellij-idea-ultimate-edition'
pkgname=intellij-idea-ultimate-edition
version=2024.3
revision=1
archs="x86_64"
depends="virtual?java-environment giflib libXtst hicolor-icon-theme"
short_desc="Java integrated development environment by JetBrains"
maintainer="Piekay <piekay@github.de>"
license="custom:Commercial"
homepage="https://www.jetbrains.org/"
distfiles="https://download.jetbrains.com/idea/ideaIU-${version}.tar.gz"
checksum=c0627c42510bdd25b82127db62997fe6b7b98cc7e30987a83fa0b419692a15c1
repository=nonfree
restricted=yes
nopie=yes
python_version=3
skiprdeps="/usr/lib/intellij-idea-ultimate/plugins/Kotlin/bin/linux/LLDBFrontend"

post_extract() {
	bsdtar xf lib/app-client.jar entry.desktop
}

post_patch() {
	vsed -i -e 's/\$NAME\$/IntelliJ IDEA Ultimate Edition/' entry.desktop
	vsed -i -e 's/\$ICON\$/idea-ultimate/' entry.desktop
	vsed -i -e 's/\$SCRIPT\$/idea-ultimate/' entry.desktop
	vsed -i -e 's/\$COMMENT\$/Capable and Ergonomic IDE for JVM/' entry.desktop
	vsed -i -e 's/\$WM_CLASS\$/jetbrains-idea/' entry.desktop
}

do_install() {
	vmkdir usr/bin
	vmkdir usr/share/doc/intellij-idea-ultimate
	vmkdir usr/lib/intellij-idea-ultimate
	vmkdir usr/share/pixmaps
	vmkdir usr/share/icons/hicolor/scalable/apps

	vcopy bin usr/lib/intellij-idea-ultimate
	vcopy lib usr/lib/intellij-idea-ultimate
	vcopy plugins usr/lib/intellij-idea-ultimate
	vcopy product-info.json usr/lib/intellij-idea-ultimate
	vcopy build.txt usr/lib/intellij-idea-ultimate
	vcopy jbr usr/lib/intellij-idea-ultimate
	vcopy license usr/share/doc/intellij-idea-ultimate
	rm ${DESTDIR}/usr/lib/intellij-idea-ultimate/lib/async-profiler -rf
	ln -sf ../lib/intellij-idea-ultimate/bin/idea.sh ${DESTDIR}/usr/bin/idea-ultimate
	ln -sf ../../lib/intellij-idea-ultimate/bin/idea.png ${DESTDIR}/usr/share/pixmaps/idea-ultimate.png
	ln -sf ../../lib/intellij-idea-ultimate/bin/idea.svg ${DESTDIR}/usr/share/icons/hicolor/scalable/apps/idea-ultimate.svg
	vinstall entry.desktop 644 usr/share/applications idea-ultimate.desktop
}
post_install() {
	vlicense ${FILESDIR}/EULA
}
