commit: 0c97f0178af71cb11e9581630a437dac6f987d28
Author: Mike Pagano <mpagano <AT> gentoo <DOT> org>
AuthorDate: Sat Apr 5 22:27:50 2025 +0000
Commit: Mike Pagano <mpagano <AT> gentoo <DOT> org>
CommitDate: Sat Apr 5 22:27:50 2025 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0c97f017
dev-util/android-studio: add 2024.3.1.14
Signed-off-by: Mike Pagano <mpagano <AT> gentoo.org>
dev-util/android-studio/Manifest | 1 +
.../android-studio-2024.3.1.14.ebuild | 141 +++++++++++++++++++++
2 files changed, 142 insertions(+)
diff --git a/dev-util/android-studio/Manifest b/dev-util/android-studio/Manifest
index dff36fa4e885..a286e23b3a09 100644
--- a/dev-util/android-studio/Manifest
+++ b/dev-util/android-studio/Manifest
@@ -1,2 +1,3 @@
DIST android-studio-2024.2.1.12-linux.tar.gz 1255741216 BLAKE2B
2e24c94a14370c60547569ad6ec95d1017957696adb4d71a29fefb063413d2be08c03f15ac354e4535fcbfb44c06d9fb1b8d8ef5d4129ad2caa55f636cf94993
SHA512
98f4d8c184d0184fa81dc267fc3bd7e7cc74edff9bf26a45fbe7c2a9b7bb9c25f94b86f17e0f2b94d8519d9b351cb9fdc0d07e90adfabf2afc1bbd13c3822ee8
DIST android-studio-2024.2.2.14-linux.tar.gz 1268721586 BLAKE2B
3d1f51b1f77ac9f5142ec6c16fae3f4de6512920a0fdc0c78f9cb7ce4f16d8b3b2c79e4878cec768e22e2554b880930d2167b61997c06281d7c9c69661607537
SHA512
ae7d50906574bec2eb21473b94788d859670e009e453514976ce22838b497537f25c1676892657211edc99ac279885fc3aa27b890ac6ff799eea95f6c154f5a5
+DIST android-studio-2024.3.1.14-linux.tar.gz 1354531339 BLAKE2B
c7096d2fb95998f8de6fcc000671da5856ad072091452e99042c41f44de55da3e9d3b99051c6cb35e69f42ab169636bb18b456de260f0b10241bb9dbbdf83917
SHA512
f2fc78f19e2e9a0a8bee5d2bcec5d66ee38ece64544d577dec18c714c74bf57ad082f5550bc268f57f58544cffd92d615b44634b995ca25baccf21edf7ba94ab
diff --git a/dev-util/android-studio/android-studio-2024.3.1.14.ebuild
b/dev-util/android-studio/android-studio-2024.3.1.14.ebuild
new file mode 100644
index 000000000000..a61fd9c23efe
--- /dev/null
+++ b/dev-util/android-studio/android-studio-2024.3.1.14.ebuild
@@ -0,0 +1,141 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit desktop wrapper
+
+QA_PREBUILT="
+ opt/${PN}/bin/*
+ opt/${PN}/jbr/bin/*
+ opt/${PN}/jbr/lib/*
+ opt/${PN}/jbr/lib/jli/*
+ opt/${PN}/jbr/lib/server/*
+ opt/${PN}/lib/pty4j-native/linux/*/*
+ opt/${PN}/plugins/android/resources/installer/*/*
+ opt/${PN}/plugins/android/resources/native/*
+ opt/${PN}/plugins/android/resources/perfetto/*/*
+ opt/${PN}/plugins/android/resources/screen-sharing-agent/*/*
+ opt/${PN}/plugins/android/resources/simpleperf/*/*
+ opt/${PN}/plugins/android/resources/trace_processor_daemon/*
+ opt/${PN}/plugins/android/resources/transport/*/*
+ opt/${PN}/plugins/android/resources/transport/native/agent/*/*
+ opt/${PN}/plugins/android-ndk/resources/lldb/android/*/*
+ opt/${PN}/plugins/android-ndk/resources/lldb/bin/*
+ opt/${PN}/plugins/android-ndk/resources/lldb/lib/python3.9/lib-dynload/*
+ opt/${PN}/plugins/android-ndk/resources/lldb/lib64/*
+ opt/${PN}/plugins/design-tools/resources/layoutlib/data/linux/lib64/*
+ opt/${PN}/plugins/c-clangd/bin/clang/linux/*/*
+ opt/${PN}/plugins/webp/lib/libwebp/linux/*
+"
+
+DESCRIPTION="Android development environment based on IntelliJ IDEA"
+HOMEPAGE="https://developer.android.com/studio"
+SRC_URI="https://redirector.gvt1.com/edgedl/android/studio/ide-zips/${PV}/${P}-linux.tar.gz"
+S=${WORKDIR}/${PN}
+LICENSE="Apache-2.0 android BSD BSD-2 CDDL-1.1 CPL-0.5
+ EPL-1.0 GPL-2 GPL-2+ JDOM IJG LGPL-2.1 MIT
+ MPL-1.1 MPL-2.0 NPL-1.1 OFL-1.1 ZLIB"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="selinux"
+RESTRICT="bindist mirror strip"
+
+RDEPEND="${DEPEND}
+ selinux? ( sec-policy/selinux-android )
+ >=app-arch/bzip2-1.0.8-r4
+ >=dev-libs/expat-2.5.0
+ >=dev-libs/libffi-3.4.4
+ >=media-libs/fontconfig-2.14.0-r1
+ >=media-libs/freetype-2.12.1-r1
+ >=media-libs/libpng-1.6.39
+ >=media-libs/mesa-22.2.5[X(+)]
+ || ( gnome-extra/zenity kde-apps/kdialog x11-apps/xmessage
x11-libs/libnotify )
+ sys-libs/ncurses-compat:5[tinfo]
+ >=sys-libs/zlib-1.2.13-r1
+ >=x11-libs/libX11-1.8.1
+ >=x11-libs/libXau-1.0.11
+ >=x11-libs/libXdamage-1.1.6
+ >=x11-libs/libXdmcp-1.1.4-r2
+ >=x11-libs/libXext-1.3.5
+ >=x11-libs/libXfixes-6.0.0
+ >=x11-libs/libXrender-0.9.11
+ >=x11-libs/libXxf86vm-1.1.5
+ >=x11-libs/libdrm-2.4.114
+ >=x11-libs/libxcb-1.15-r1
+ >=x11-libs/libxshmfence-1.3.2
+ virtual/libcrypt:=
+"
+
+src_prepare() {
+
+ default
+
+ rm
"${S}"/plugins/android/resources/installer/{arm64-v8a,armeabi-v7a,x86}/*
+ rm
"${S}"/plugins/android/resources/perfetto/{arm64-v8a,armeabi-v7a,x86}/*
+ rm
"${S}"/plugins/android/resources/process-tracker-agent/native/{arm64-v8a,armeabi-v7a,x86}/*
+ rm
"${S}"/plugins/android/resources/transport/{arm64-v8a,armeabi-v7a,x86}/*
+ rm
"${S}"/plugins/android/resources/transport/native/agent/{arm64-v8a,armeabi-v7a,x86}/*
+
+ cat <<-EOF >> bin/idea.properties || die
+ #-----------------------------------------------------------------------
+ # Disable automatic updates as these are handled through Gentoo's
+ # package manager.
+ #-----------------------------------------------------------------------
+ ide.no.platform.update=Gentoo
+ EOF
+}
+
+src_compile() {
+ :;
+}
+
+src_install() {
+ local dir="/opt/${PN}"
+ insinto "${dir}"
+ doins -r *
+
+ fperms 755
"${dir}"/bin/{fsnotifier,format.sh,game-tools.sh,inspect.sh,ltedit.sh,profiler.sh,studio,studio.sh,studio_safe.sh}
+ fperms -R 755 "${dir}"/bin/{helpers,lldb}
+ fperms -R 755 "${dir}"/jbr/bin
+ fperms 755 "${dir}"/jbr/lib/{jexec,jspawnhelper}
+ fperms -R 755 "${dir}"/plugins/Kotlin/kotlinc/bin
+ fperms -R 755 "${dir}"/plugins/android/resources/installer
+ fperms -R 755 "${dir}"/plugins/android/resources/perfetto
+ fperms -R 755 "${dir}"/plugins/android/resources/simpleperf
+ fperms -R 755 "${dir}"/plugins/android/resources/trace_processor_daemon
+ fperms -R 755
"${dir}"/plugins/android/resources/transport/{arm64-v8a,armeabi-v7a,x86,x86_64}
+ fperms -R 755
"${dir}"/plugins/android-ndk/resources/lldb/{android,bin,lib,shared}
+ fperms 755
"${dir}"/plugins/c-clangd-plugin/bin/clang/linux/x64/bin/clangd
+ fperms -R 755 "${dir}"/plugins/terminal/shell-integrations/{,fish}
+
+ newicon "bin/studio.png" "${PN}.png"
+ make_wrapper ${PN} ${dir}/bin/studio
+ make_desktop_entry ${PN} "Android Studio" ${PN} "Development;IDE"
"StartupWMClass=jetbrains-studio"
+
+ # https://developer.android.com/studio/command-line/variables
+ newenvd - 99android-studio <<-EOF
+ # Configuration file android-studio
+ STUDIO_JDK="${dir}/jbr"
+ EOF
+
+ # recommended by:
https://confluence.jetbrains.com/display/IDEADEV/Inotify+Watches+Limit
+ mkdir -p "${D}/etc/sysctl.d/" || die
+ echo "fs.inotify.max_user_watches = 524288" >
"${D}/etc/sysctl.d/30-android-studio-inotify-watches.conf" || die
+}
+
+pkg_postrm() {
+ elog "Android Studio data files were not removed."
+ elog "If there will be no other programs using them anymore"
+ elog "(especially another flavor of Android Studio)"
+ elog "remove manually following folders:"
+ elog ""
+ elog " ~/.android/"
+ elog " ~/.config/Google/AndroidStudio*/"
+ elog " ~/.local/share/Google/AndroidStudio*/"
+ elog " ~/Android/"
+ elog ""
+ elog "Also, if there are no other programs using Gradle, remove:"
+ elog ""
+ elog " ~/.gradle/"
+}