commit:     505918d5cba26e7de1b9005f6b4387f5367cc14e
Author:     Robert Greener <dev <AT> greener <DOT> sh>
AuthorDate: Sun Apr 14 07:32:52 2024 +0000
Commit:     Robert Greener <dev <AT> greener <DOT> sh>
CommitDate: Sun Apr 14 07:32:52 2024 +0000
URL:        https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=505918d5

dev-util/rust-rover: new package, version 233.15026.24

Signed-off-by: Robert Greener <dev <AT> greener.sh>

 dev-util/rust-rover/Manifest                       |   1 +
 dev-util/rust-rover/rust-rover-233.15026.24.ebuild | 111 +++++++++++++++++++++
 2 files changed, 112 insertions(+)

diff --git a/dev-util/rust-rover/Manifest b/dev-util/rust-rover/Manifest
new file mode 100644
index 0000000000..a8d45252a6
--- /dev/null
+++ b/dev-util/rust-rover/Manifest
@@ -0,0 +1 @@
+DIST RustRover-233.15026.24.tar.gz 800631981 BLAKE2B 
1ecb1f034506c61b6251bf4c96bcb05e028effdb600829c09fb6e903e0b5b90a4657621e363bf90853a2b7ce5b44eedf03c11a5aaccdec0679a14a06250319ca
 SHA512 
17b33f8c5a6d4a053a4b9ebf71269a73de756000f55d3a6ac7b4a3bd96ddd4566848607100719dcddb392a99d02f71d4cc2f69e934a4dc0ed730556b5d89215b

diff --git a/dev-util/rust-rover/rust-rover-233.15026.24.ebuild 
b/dev-util/rust-rover/rust-rover-233.15026.24.ebuild
new file mode 100644
index 0000000000..e67cef252e
--- /dev/null
+++ b/dev-util/rust-rover/rust-rover-233.15026.24.ebuild
@@ -0,0 +1,111 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+EAPI=8
+
+inherit desktop wrapper
+
+DESCRIPTION="A feature-rich Rust IDE with timely support by JetBrarins"
+
+HOMEPAGE="https://www.jetbrains.com/rust/";
+
+SRC_URI="https://download.jetbrains.com/rustrover/RustRover-${PV}.tar.gz";
+
+# to keep it tidy.
+S="${WORKDIR}/RustRover-${PV}"
+
+LICENSE="idea-eap-EULA"
+
+SLOT="0"
+
+KEYWORDS="-* ~amd64"
+
+IUSE="gnome X"
+
+RESTRICT="bindist mirror"
+
+QA_PREBUILT="opt/RustRover"
+
+BDEPEND="dev-util/patchelf"
+
+RDEPEND="
+       >=app-accessibility/at-spi2-core-2.46.0:2
+       dev-debug/gdb
+       dev-debug/lldb
+       dev-libs/expat
+       dev-libs/glib:2
+       dev-libs/nspr
+       dev-libs/nss
+       dev-libs/wayland
+       media-libs/alsa-lib
+       media-libs/freetype:2
+       media-libs/mesa
+       net-print/cups
+       sys-apps/dbus
+       sys-libs/zlib
+       x11-libs/cairo
+       x11-libs/libdrm
+       x11-libs/libX11
+       x11-libs/libXcomposite
+       x11-libs/libXcursor
+       x11-libs/libXdamage
+       x11-libs/libXext
+       x11-libs/libXfixes
+       x11-libs/libXi
+       x11-libs/libXrandr
+       x11-libs/libXrender
+       x11-libs/libXtst
+       x11-libs/libXxf86vm
+       x11-libs/libxcb
+       x11-libs/libxkbcommon
+       x11-libs/pango
+       virtual/rust
+"
+
+src_prepare() {
+       default
+
+       local remove_me=(
+               Install-Linux-tar.txt
+               bin/gdb
+               bin/lldb
+               plugins/cwm-plugin/quiche-native/darwin-aarch64
+               plugins/cwm-plugin/quiche-native/darwin-x86-64
+               plugins/cwm-plugin/quiche-native/linux-aarch64
+               plugins/cwm-plugin/quiche-native/win32-x86-64
+               plugins/remote-dev-server/selfcontained
+               plugins/intellij-rust/bin/linux/arm64
+               
plugins/gateway-plugin/lib/remote-dev-workers/remote-dev-worker-linux-arm64
+               
plugins/platform-ijent-impl/ijent-aarch64-unknown-linux-musl-release
+               lib/async-profiler/aarch64
+       )
+
+       rm -rv "${remove_me[@]}" || die
+
+       for file in "jbr/lib/{libjcef.so,jcef_helper}"
+       do
+               if [[ -f "${file}" ]]; then
+                       patchelf --set-rpath '$ORIGIN' "${file}" || die
+               fi
+       done
+}
+
+src_install() {
+       local dir="/opt/RustRover"
+
+       insinto "${dir}"
+       doins -r *
+       fperms 755 
"${dir}"/bin/{format.sh,fsnotifier,inspect.sh,jetbrains_client.sh,ltedit.sh,remote-dev-server.sh,repair,restarter,rustrover.sh}
+
+       if [[ -d jbr ]]; then
+               fperms 755 
"${dir}"/jbr/bin/{java,javac,javadoc,jcmd,jdb,jfr,jhsdb,jinfo,jmap,jps,jrunscript,jstack,jstat,keytool,rmiregistry,serialver}
+               fperms 755 
"${dir}"/jbr/lib/{chrome-sandbox,jcef_helper,jexec,jspawnhelper}
+       fi
+
+       make_wrapper "rustrover" "${dir}/bin/rustrover.sh"
+       newicon "bin/rustrover.svg" "rustrover.svg"
+       make_desktop_entry "rustrover" "RustRover" "rustrover" 
"Development;IDE;"
+
+       # recommended by: 
https://confluence.jetbrains.com/display/IDEADEV/Inotify+Watches+Limit
+       insinto /usr/lib/sysctl.d
+       newins - 30-"${PN}"-inotify-watches.conf 
<<<"fs.inotify.max_user_watches = 524288"
+}

Reply via email to