void-packages/srcpkgs/android-studio/template

88 lines
4.6 KiB
Bash

# Template file for 'android-studio'
pkgname=android-studio
version=4.0.0
revision=2
# _studio_build and _studio_rev are for downloading the zip from dl.google.com
# https://developer.android.com/studio/#resources as of 2018-07-12
_studio_build=193.6514223
_studio_rev=16
archs="x86_64 i686"
create_wrksrc=yes
hostmakedepends="tar"
depends="gtk+ virtual?libGL"
short_desc="Official Android IDE"
maintainer="Jordyn Carattini <onlinecloud1@gmail.com>"
license="Apache-2.0"
homepage="http://tools.android.com/"
# changelog="https://developer.android.com/studio/releases/index.html"
distfiles="https://dl.google.com/dl/android/studio/ide-zips/${version}.${_studio_rev}/android-studio-ide-${_studio_build}-linux.tar.gz"
checksum=70c04dc542281c015a700fad73d7d62ce9dace774bc12050cad9f1d6363112eb
repository=nonfree
restricted=yes
python_version=2
nopie=yes
nostrip=yes
# These files are not run or loaded on the host thus skip scanning their runtime deps
skiprdeps="/opt/android-studio/plugins/android/resources/perfetto/x86_64/traced_probes
/opt/android-studio/plugins/android/resources/perfetto/x86_64/perfetto
/opt/android-studio/plugins/android/resources/perfetto/x86_64/traced
/opt/android-studio/plugins/android/resources/perfetto/x86_64/libperfetto.so
/opt/android-studio/plugins/android/resources/perfetto/arm64-v8a/traced_probes
/opt/android-studio/plugins/android/resources/perfetto/arm64-v8a/perfetto
/opt/android-studio/plugins/android/resources/perfetto/arm64-v8a/traced
/opt/android-studio/plugins/android/resources/perfetto/arm64-v8a/libperfetto.so
/opt/android-studio/plugins/android/resources/perfetto/armeabi-v7a/traced_probes
/opt/android-studio/plugins/android/resources/perfetto/armeabi-v7a/perfetto
/opt/android-studio/plugins/android/resources/perfetto/armeabi-v7a/traced
/opt/android-studio/plugins/android/resources/perfetto/armeabi-v7a/libperfetto.so
/opt/android-studio/plugins/android/resources/perfetto/x86/traced_probes
/opt/android-studio/plugins/android/resources/perfetto/x86/perfetto
/opt/android-studio/plugins/android/resources/perfetto/x86/traced
/opt/android-studio/plugins/android/resources/perfetto/x86/libperfetto.so
/opt/android-studio/plugins/android/resources/simpleperf/armeabi-v7a/simpleperf
/opt/android-studio/plugins/android/resources/simpleperf/x86/simpleperf
/opt/android-studio/plugins/android/resources/simpleperf/x86_64/simpleperf
/opt/android-studio/plugins/android/resources/simpleperf/arm64-v8a/simpleperf
/opt/android-studio/plugins/android/resources/installer/x86/installer
/opt/android-studio/plugins/android/resources/installer/x86_64/installer
/opt/android-studio/plugins/android/resources/installer/arm64-v8a/installer
/opt/android-studio/plugins/android/resources/installer/test-installer
/opt/android-studio/plugins/android/resources/installer/armeabi-v7a/installer
/opt/android-studio/plugins/android/resources/transport/native/agent/arm64-v8a/libjvmtiagent.so
/opt/android-studio/plugins/android/resources/transport/native/agent/armeabi-v7a/libjvmtiagent.so
/opt/android-studio/plugins/android/resources/transport/native/agent/x86/libjvmtiagent.so
/opt/android-studio/plugins/android/resources/transport/native/agent/x86_64/libjvmtiagent.so
/opt/android-studio/plugins/android/resources/transport/armeabi-v7a/transport
/opt/android-studio/plugins/android/resources/transport/x86/transport
/opt/android-studio/plugins/android/resources/transport/arm64-v8a/transport
/opt/android-studio/plugins/android/lib/libwebp_jni.so
/opt/android-studio/plugins/android/lib/libwebp_jni64.so"
do_extract() {
tar xzf ${XBPS_SRCDISTDIR}/${pkgname}-${version}/${pkgname}-ide-${_studio_build}-linux.tar.gz --strip-components=1 -C ${wrksrc}
}
do_install() {
vmkdir opt/${pkgname}
vcopy bin opt/${pkgname}/
vcopy lib opt/${pkgname}/
vcopy jre opt/${pkgname}/
vcopy plugins opt/${pkgname}/
vcopy build.txt opt/${pkgname}/ # read as IDE version information
vcopy product-info.json opt/${pkgname}/
vmkdir usr/bin
ln -s /opt/android-studio/bin/studio.sh ${DESTDIR}/usr/bin/android-studio
# The version of host-side simpleperf bundled with Android Studio (as of 3.4.2) requires
# libncurses.so.5, which is not provided by Void Linux. However, as host-side simpleperf
# parsing is a fairly recent addition, we can just disable it...
rm -r ${DESTDIR}/opt/android-studio/plugins/android/resources/simpleperf/linux-x86_64
echo "-Dprofiler.cpu.simpleperf.host=false" >> ${DESTDIR}/opt/android-studio/bin/studio.vmoptions
echo "-Dprofiler.cpu.simpleperf.host=false" >> ${DESTDIR}/opt/android-studio/bin/studio64.vmoptions
vinstall "${FILESDIR}/android-studio.desktop" 644 usr/share/applications/
chmod -R ugo+rX ${DESTDIR}/opt
}