Gentoo Archives: gentoo-commits

From: Mike Pagano <mpagano@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-util/android-studio/
Date: Wed, 01 Mar 2023 23:41:54
Message-Id: 1677713986.fcd62a4a9e115d8eb2caafe9e719632c31d90a43.mpagano@gentoo
1 commit: fcd62a4a9e115d8eb2caafe9e719632c31d90a43
2 Author: Mike Pagano <mpagano <AT> gentoo <DOT> org>
3 AuthorDate: Wed Mar 1 23:39:46 2023 +0000
4 Commit: Mike Pagano <mpagano <AT> gentoo <DOT> org>
5 CommitDate: Wed Mar 1 23:39:46 2023 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=fcd62a4a
7
8 dev-util/android-studio: add 2022.1.1.21, thanks to Adam Giergun
9
10 https://github.com/gentoo-mirror/adasss
11
12 Closes: https://bugs.gentoo.org/894048
13
14 Signed-off-by: Mike Pagano <mpagano <AT> gentoo.org>
15
16 dev-util/android-studio/Manifest | 1 +
17 .../android-studio-2022.1.1.21.ebuild | 126 +++++++++++++++++++++
18 2 files changed, 127 insertions(+)
19
20 diff --git a/dev-util/android-studio/Manifest b/dev-util/android-studio/Manifest
21 index e7d3040a9ecc..63b988181e17 100644
22 --- a/dev-util/android-studio/Manifest
23 +++ b/dev-util/android-studio/Manifest
24 @@ -1,2 +1,3 @@
25 DIST android-studio-2021.2.1.14-linux.tar.gz 1010969463 BLAKE2B 24899d0b81303c5f7ad061afd80eac734444b313f40257d20dc99b99f11a867bb92fe7b77428e5431889fc2beabcea58a5875608087a5de96105675c42b2a8ba SHA512 9d9184828a8ca0007e613e53215b0af1abd2c79a482670fe7bbb708f2bcb144b8881ef2d1c89ca8e2528aedc1f3b7d4a40c0c6d3e20a16de520aaf075f6990a7
26 DIST android-studio-2021.3.1.16-linux.tar.gz 976205257 BLAKE2B 8854a346b751338bfadac61820a78f7ea9aa87828f9049a22d69221fc3ac2c4a9e6e738b84b2eb81023ceeb7866c35b74d38b0d9c2fca534df6e0947b6699b05 SHA512 4c033e1b5dd68fc73fe203ff19e134cf72d3a8faa9a9ba041bf478e529376f962c31d598b85e43a625fa56ef24f2ab6e13378125a7b710449daaf6d727ab51f5
27 +DIST android-studio-2022.1.1.21-linux.tar.gz 1014162603 BLAKE2B a3cc78ba4ba869d9615a55a90827171164ab961730681fa48962feeabf6a355930bb32d1822c31fb024f56f3e5d8d6880471505c3b48b1fe507ef15d44e2b0fa SHA512 5e850c6c5bb05923b41e4fafb0a20afcbec884cea427d5bb26a82e767930ef2c4477592e9338b1ea0458a3590d017f057a615749d9b9e1e8b364f67582ef0263
28
29 diff --git a/dev-util/android-studio/android-studio-2022.1.1.21.ebuild b/dev-util/android-studio/android-studio-2022.1.1.21.ebuild
30 new file mode 100644
31 index 000000000000..5cd01065fae6
32 --- /dev/null
33 +++ b/dev-util/android-studio/android-studio-2022.1.1.21.ebuild
34 @@ -0,0 +1,126 @@
35 +# Copyright 1999-2023 Gentoo Authors
36 +# Distributed under the terms of the GNU General Public License v2
37 +
38 +EAPI=8
39 +
40 +inherit desktop wrapper
41 +
42 +RESTRICT="bindist mirror strip"
43 +
44 +QA_PREBUILT="
45 + opt/${PN}/bin/*
46 + opt/${PN}/jbr/bin/*
47 + opt/${PN}/jbr/lib/*
48 + opt/${PN}/jbr/lib/jli/*
49 + opt/${PN}/jbr/lib/server/*
50 + opt/${PN}/lib/pty4j-native/linux/*/*
51 + opt/${PN}/plugins/android/resources/installer/*/*
52 + opt/${PN}/plugins/android/resources/native/*
53 + opt/${PN}/plugins/android/resources/perfetto/*/*
54 + opt/${PN}/plugins/android/resources/screen-sharing-agent/*/*
55 + opt/${PN}/plugins/android/resources/simpleperf/*/*
56 + opt/${PN}/plugins/android/resources/trace_processor_daemon/*
57 + opt/${PN}/plugins/android/resources/transport/*/*
58 + opt/${PN}/plugins/android/resources/transport/native/agent/*/*
59 + opt/${PN}/plugins/android-ndk/resources/lldb/android/*/*
60 + opt/${PN}/plugins/android-ndk/resources/lldb/bin/*
61 + opt/${PN}/plugins/android-ndk/resources/lldb/lib/python3.9/lib-dynload/*
62 + opt/${PN}/plugins/android-ndk/resources/lldb/lib64/*
63 + opt/${PN}/plugins/design-tools/resources/layoutlib/data/linux/lib64/*
64 + opt/${PN}/plugins/c-clangd/bin/clang/linux/*
65 + opt/${PN}/plugins/webp/lib/libwebp/linux/*
66 +"
67 +
68 +DESCRIPTION="Android development environment based on IntelliJ IDEA"
69 +HOMEPAGE="https://developer.android.com/studio"
70 +SRC_URI="https://redirector.gvt1.com/edgedl/android/studio/ide-zips/${PV}/${P}-linux.tar.gz"
71 +
72 +LICENSE="Apache-2.0 android BSD BSD-2 CDDL-1.1 CPL-0.5
73 + EPL-1.0 GPL-2 GPL-2+ JDOM IJG LGPL-2.1 MIT
74 + MPL-1.1 MPL-2.0 NPL-1.1 OFL ZLIB"
75 +SLOT="0"
76 +IUSE="selinux"
77 +KEYWORDS="~amd64 ~x86"
78 +
79 +RDEPEND="${DEPEND}
80 + selinux? ( sec-policy/selinux-android )
81 + >=app-arch/bzip2-1.0.8-r4
82 + >=dev-libs/expat-2.5.0
83 + >=dev-libs/libffi-3.4.4
84 + >=media-libs/fontconfig-2.14.0-r1
85 + >=media-libs/freetype-2.12.1-r1
86 + >=media-libs/libpng-1.6.39
87 + >=media-libs/mesa-22.2.5[X(+)]
88 + || ( gnome-extra/zenity kde-apps/kdialog x11-apps/xmessage x11-libs/libnotify )
89 + sys-libs/ncurses-compat:5[tinfo]
90 + >=sys-libs/zlib-1.2.13-r1
91 + >=x11-libs/libX11-1.8.1
92 + >=x11-libs/libXau-1.0.11
93 + >=x11-libs/libXdamage-1.1.6
94 + >=x11-libs/libXdmcp-1.1.4-r2
95 + >=x11-libs/libXext-1.3.5
96 + >=x11-libs/libXfixes-6.0.0
97 + >=x11-libs/libXrender-0.9.11
98 + >=x11-libs/libXxf86vm-1.1.5
99 + >=x11-libs/libdrm-2.4.114
100 + >=x11-libs/libxcb-1.15-r1
101 + >=x11-libs/libxshmfence-1.3.2
102 + virtual/libcrypt:=
103 +"
104 +
105 +S=${WORKDIR}/${PN}
106 +
107 +src_compile() {
108 + :;
109 +}
110 +
111 +src_install() {
112 + local dir="/opt/${PN}"
113 + insinto "${dir}"
114 + doins -r *
115 +
116 + fperms 755 "${dir}"/bin/{fsnotifier,format.sh,game-tools.sh,inspect.sh,ltedit.sh,profiler.sh,remote-dev-server.sh,restart.py,studio.sh}
117 + fperms -R 755 "${dir}"/bin/{helpers,lldb}
118 + fperms -R 755 "${dir}"/jbr/bin
119 + fperms 755 "${dir}"/jbr/lib/{jexec,jspawnhelper}
120 + fperms -R 755 "${dir}"/plugins/Kotlin/kotlinc/bin
121 + fperms -R 755 "${dir}"/plugins/android/resources/installer
122 + fperms -R 755 "${dir}"/plugins/android/resources/perfetto
123 + fperms -R 755 "${dir}"/plugins/android/resources/simpleperf
124 + fperms -R 755 "${dir}"/plugins/android/resources/trace_processor_daemon
125 + fperms -R 755 "${dir}"/plugins/android/resources/transport/{arm64-v8a,armeabi-v7a,x86,x86_64}
126 + fperms -R 755 "${dir}"/plugins/android-ndk/resources/lldb/{android,bin,lib,shared}
127 + fperms 755 "${dir}"/plugins/c-clangd/bin/clang/linux/{clang-tidy,clangd}
128 + fperms -R 755 "${dir}"/plugins/terminal/{,fish}
129 + fperms 755 "${dir}"/plugins/textmate/lib/bundles/git/src/{askpass-empty.sh,askpass.sh}
130 +
131 + newicon "bin/studio.png" "${PN}.png"
132 + make_wrapper ${PN} ${dir}/bin/studio.sh
133 + make_desktop_entry ${PN} "Android Studio" ${PN} "Development;IDE" "StartupWMClass=jetbrains-studio"
134 +
135 + # https://developer.android.com/studio/command-line/variables
136 + newenvd - 99android-studio <<-EOF
137 + # Configuration file android-studio
138 + STUDIO_JDK="${dir}/jbr"
139 + EOF
140 +
141 + # recommended by: https://confluence.jetbrains.com/display/IDEADEV/Inotify+Watches+Limit
142 + mkdir -p "${D}/etc/sysctl.d/" || die
143 + echo "fs.inotify.max_user_watches = 524288" > "${D}/etc/sysctl.d/30-android-studio-inotify-watches.conf" || die
144 +}
145 +
146 +pkg_postrm() {
147 + elog "Android Studio data files were not removed."
148 + elog "If there will be no other programs using them anymore"
149 + elog "(especially another flavor of Android Studio)"
150 + elog "remove manually following folders:"
151 + elog ""
152 + elog " ~/.android/"
153 + elog " ~/.config/Google/AndroidStudio*/"
154 + elog " ~/.local/share/Google/AndroidStudio*/"
155 + elog " ~/Android/"
156 + elog ""
157 + elog "Also, if there are no other programs using Gradle, remove:"
158 + elog ""
159 + elog " ~/.gradle/"
160 +}