void-packages/srcpkgs/intellij-idea-ultimate-edition/template

91 lines
3.1 KiB
Bash

# Template file for 'intellij-idea-ultimate-edition'
pkgname=intellij-idea-ultimate-edition
version=2021.3.3
revision=1
archs="i686 x86_64"
create_wrksrc="true"
depends="giflib libXtst jetbrains-jdk-bin"
short_desc="Most intelligent Java IDE"
maintainer="Anton Afanasyev <anton@doubleasoftware.com>"
license="custom:Commercial"
homepage="https://www.jetbrains.com/idea"
_filename="ideaIU-${version}-no-jbr.tar.gz"
distfiles="https://download.jetbrains.com/idea/${_filename}"
checksum=2a3295fca08060ad515f6c7198879d09963724cfb36af3ea94f16dcd76636470
repository=nonfree
restricted=yes
nopie=yes
# JetBrains' tools are self-sufficient and while they include code that appears to be linked to libs from other packages, these libs are either included in the tool package, or the code works by looking for one of several supported libs.
noverifyrdeps=yes
python_version=3
do_extract() {
bsdtar xf ${XBPS_SRCDISTDIR}/${pkgname}-${version}/${_filename} --strip-components=1 -C .
}
post_extract() {
# Remove files for other OSes
rm -rf plugins/cwm-plugin/quiche-native/darwin-aarch64
rm -rf plugins/cwm-plugin/quiche-native/darwin-x86-64
rm -rf plugins/cwm-plugin/quiche-native/win32-x86-64
rm -rf plugins/maven/lib/maven3/lib/jansi-native/freebsd64
rm -rf plugins/maven/lib/maven3/lib/jansi-native/freebsd32
rm -rf plugins/maven/lib/maven3/lib/jansi-native/osx
rm -rf plugins/maven/lib/maven3/lib/jansi-native/windows32
rm -rf plugins/maven/lib/maven3/lib/jansi-native/windows64
rm -rf plugins/performanceTesting/bin/libyjpagent.dylib
rm -rf plugins/performanceTesting/bin/yjpagent.dll
rm -rf plugins/performanceTesting/bin/yjpagent64.dll
rm -rf plugins/webp/lib/libwebp/mac
rm -rf plugins/webp/lib/libwebp/win
# Remove files for other CPU architectures
rm -rf bin/fsnotifier-arm
rm -rf lib/pty4j-native/linux/aarch64
rm -rf lib/pty4j-native/linux/arm
rm -rf lib/pty4j-native/linux/mips64el
rm -rf lib/pty4j-native/linux/ppc64le
case "$XBPS_TARGET_MACHINE" in
x86_64)
rm -rf bin/idea.vmoptions
rm -rf lib/pty4j-native/linux/x86
rm -rf plugins/android/lib/libwebp/linux/libwebp_jni.so
rm -rf plugins/maven/lib/maven3/lib/jansi-native/linux32
rm -rf plugins/performanceTesting/bin/libyjpagent.so
rm -rf plugins/webp/lib/libwebp/linux/libwebp_jni.so
;;
i686)
rm -rf bin/idea64.vmoptions
rm -rf bin/libyjpagent-linux64.so
rm -rf lib/pty4j-native/linux/x86_64
rm -rf plugins/android/lib/libwebp/linux/libwebp_jni64.so
rm -rf plugins/maven/lib/maven3/lib/jansi-native/linux64
rm -rf plugins/performanceTesting/bin/libyjpagent64.so
rm -rf plugins/webp/lib/libwebp/linux/libwebp_jni64.so
;;
esac
}
do_install() {
TARGET_PATH="usr/lib/${pkgname}"
LICENSE_PATH="usr/share/licenses/${pkgname}"
vmkdir usr/bin
vmkdir ${TARGET_PATH}
vmkdir ${LICENSE_PATH}
# Ideally vlicense should be called here, but vcopy is more terse.
vcopy license/* ${LICENSE_PATH}
vcopy bin ${TARGET_PATH}
vcopy help ${TARGET_PATH}
vcopy lib ${TARGET_PATH}
vcopy plugins ${TARGET_PATH}
vcopy redist ${TARGET_PATH}
vcopy product-info.json ${TARGET_PATH}
vcopy build.txt ${TARGET_PATH}
ln -sf /${TARGET_PATH}/bin/idea.sh ${DESTDIR}/usr/bin/idea-ultimate
}