summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorferreum2022-06-10 18:40:28 +0200
committerferreum2022-06-10 18:40:28 +0200
commit4d7a85d613ca9d449594b466889385b3284871cd (patch)
tree58645cc41cf0e80a424b923ab25cc4c9c60ecddb
downloadaur-4d7a85d613ca9d449594b466889385b3284871cd.tar.gz
initial commit
-rw-r--r--.SRCINFO16
-rw-r--r--.gitignore3
-rw-r--r--PKGBUILD23
-rw-r--r--jdk-android-studio.install44
4 files changed, 86 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 000000000000..20aa064090ec
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,16 @@
+pkgbase = jdk-android-studio
+ pkgdesc = Integrate android-studio provided JDK with archlinux-java
+ pkgver = 1
+ pkgrel = 1
+ url = https://developer.android.com/studio
+ install = jdk-android-studio.install
+ arch = x86_64
+ license = APACHE
+ depends = android-studio
+ depends = java-environment-common
+ provides = java-runtime=11
+ provides = java-runtime-openjdk=11
+ provides = java-environment=11
+ provides = java-environment-openjdk=11
+
+pkgname = jdk-android-studio
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 000000000000..b269b4af6c64
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,3 @@
+/pkg
+/*.zst
+/*.xz
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..2c617c7484b8
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,23 @@
+# Maintainer: ferreum <code at ferreum dot de>
+
+pkgname=jdk-android-studio
+pkgver=1
+pkgrel=1
+pkgdesc="Integrate android-studio provided JDK with archlinux-java"
+# android-studio package depends on external java-environment on i686
+arch=(x86_64)
+url="https://developer.android.com/studio"
+license=(APACHE)
+depends=(android-studio java-environment-common)
+provides=(java-runtime=11 java-runtime-openjdk=11
+ java-environment=11 java-environment-openjdk=11)
+install=jdk-android-studio.install
+
+package() {
+ local base_pkgname=android-studio
+ install -d "${pkgdir}/usr/lib/jvm/$base_pkgname"
+ ln -s "/opt/${base_pkgname}/jre/"{bin,conf,legal,lib,release} \
+ "${pkgdir}/usr/lib/jvm/$base_pkgname/"
+}
+
+# vim:set ts=2 sw=2 et:
diff --git a/jdk-android-studio.install b/jdk-android-studio.install
new file mode 100644
index 000000000000..06a034bc9328
--- /dev/null
+++ b/jdk-android-studio.install
@@ -0,0 +1,44 @@
+# adopted from jdk11-openjdk package .install file
+
+THIS_JDK='android-studio'
+
+fix_default() {
+ if [ ! -x /usr/bin/java ]; then
+ /usr/bin/archlinux-java unset
+ echo ""
+ else
+ /usr/bin/archlinux-java get
+ fi
+}
+
+post_install() {
+ default=$(fix_default)
+ case ${default} in
+ "")
+ /usr/bin/archlinux-java set ${THIS_JDK}
+ ;;
+ "${THIS_JDK}")
+ # Nothing
+ ;;
+ *)
+ echo "Default Java environment is already set to '${default}'"
+ echo "See 'archlinux-java help' to change it"
+ ;;
+ esac
+}
+
+post_upgrade() {
+ default=$(fix_default)
+ if [ -z "${default}" ]; then
+ /usr/bin/archlinux-java set ${THIS_JDK}
+ fi
+}
+
+pre_remove() {
+ if [ "$(fix_default)" = "${THIS_JDK}" ]; then
+ # Check JRE is still available
+ if [ -x /usr/lib/jvm/${THIS_JDK}/bin/java ]; then
+ /usr/bin/archlinux-java unset
+ fi
+ fi
+}