commit:     e129ef9cc81407f30408a704b8eb37ebd233368b
Author:     Stefan Cristian B. <stefan.cristian+git <AT> rogentos <DOT> ro>
AuthorDate: Wed Jul 16 23:19:46 2025 +0000
Commit:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
CommitDate: Thu Jul 17 11:41:45 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e129ef9c

dev-util/goland: bump 2025.1.3

Signed-off-by: Stefan Cristian B. <stefan.cristian+git <AT> rogentos.ro>
Part-of: https://github.com/gentoo/gentoo/pull/43034
Closes: https://github.com/gentoo/gentoo/pull/43034
Signed-off-by: Viorel Munteanu <ceamac <AT> gentoo.org>

 dev-util/goland/Manifest               |   2 +
 dev-util/goland/goland-2025.1.3.ebuild | 122 +++++++++++++++++++++++++++++++++
 2 files changed, 124 insertions(+)

diff --git a/dev-util/goland/Manifest b/dev-util/goland/Manifest
index 9bd2e106ccd5..002310ed497f 100644
--- a/dev-util/goland/Manifest
+++ b/dev-util/goland/Manifest
@@ -2,3 +2,5 @@ DIST goland-2024.3.5-aarch64.tar.gz 1108972234 BLAKE2B 
6f9cf2b9d5b61b4608dde0006
 DIST goland-2024.3.5.tar.gz 1109319258 BLAKE2B 
03c0f91313f492b2db3cbc139eef866193d17a56f4f20a45a64c7cf9a27f36cd9ebf87c95689cb406dabbe7f147a6802fa27a4eab2b33acb5c732e470b21836b
 SHA512 
40a81c037d29210294920bf6400778104bc20dde37966c6f9305e0003ca546cb582aa4aa1fb74001e6c340d0c25b692dd84f6d3c881381b06fc20ea57842636d
 DIST goland-2025.1.2-aarch64.tar.gz 1120462912 BLAKE2B 
1cac98b5c694326a6bfd7c6d80ad843ab134af114781e1c7a67e517480ef8e2040e209400336c949490cf6f6deaf1a0c377cb4995bacb52df8998a2658b6ff3e
 SHA512 
72c614eea83ca9fcaf6be7c14c93ad61ea49a7f4160204dba6ef2720d684df5552432d83dba25a6e5a3335578305da8773a2ccc155e11e87a158d102dbfaf362
 DIST goland-2025.1.2.tar.gz 1123057926 BLAKE2B 
edd64f21897c40da5ee7c53a53d24dcd01d2018ca4c01789a909b30062d59ecfc8c56b46f5860da40fb2685f88ddf732942703f803e91c53cb122b19aebdf57f
 SHA512 
bb889dd521b98ef989c693ff43a3afd9f657bf36cb9575c0095bf08dad51d02c834dd20526fd15ec91ceacece72bda11a9ab6482c988d91a89e1a79dfd7567d3
+DIST goland-2025.1.3-aarch64.tar.gz 1128927831 BLAKE2B 
dab4bb5f586f700c9cfb0d03f689a70099e8312cd6a0b104785e9a110865ef0fc528f50d50019a5d08bbb6b39bb1e23f08779671f5a2ad918f11af07cff78a57
 SHA512 
0fcc4f861bfbf943a17a8e34388dd40f423b4c089a78e670be122ec07e11db79607854d1028b028394cf509f06588a336027925fce20e98c83085c06847b2397
+DIST goland-2025.1.3.tar.gz 1130055997 BLAKE2B 
e2aeb4705eb2397163d6d50d4c15f9eb7b7bc9a326894229ddd9df703fded4fea15ab0bf15ad0be3e68639fb808d0c71ff6aeeb1bdab99df081f42d8df83d500
 SHA512 
3506142eb313f94b5cd920fd87e34d3fdbed9c79927cf940b0efd1dc903e2f40aecf6b720e7b7ce5b0c3c660a94c1b06b1324d9d02f733f39280dc27aa3ffccf

diff --git a/dev-util/goland/goland-2025.1.3.ebuild 
b/dev-util/goland/goland-2025.1.3.ebuild
new file mode 100644
index 000000000000..648352aa3813
--- /dev/null
+++ b/dev-util/goland/goland-2025.1.3.ebuild
@@ -0,0 +1,122 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit desktop wrapper toolchain-funcs
+
+DESCRIPTION="Golang IDE by JetBrains"
+HOMEPAGE="https://www.jetbrains.com/go/";
+SRC_URI="
+       amd64? ( https://download.jetbrains.com/go/${P}.tar.gz )
+       arm64? ( https://download.jetbrains.com/go/${P}-aarch64.tar.gz )
+"
+S="${WORKDIR}/GoLand-${PV}"
+LICENSE="|| ( JetBrains-business JetBrains-classroom JetBrains-educational 
JetBrains-individual )
+       Apache-2.0
+       BSD
+       CC0-1.0
+       CDDL
+       CDDL-1.1
+       EPL-1.0
+       GPL-2
+       GPL-2-with-classpath-exception
+       ISC
+       LGPL-2.1
+       LGPL-3
+       MIT
+       MPL-1.1
+       OFL-1.1
+       ZLIB
+"
+SLOT="0/2025"
+KEYWORDS="~amd64 ~arm64"
+IUSE="wayland"
+
+RESTRICT="bindist mirror"
+QA_PREBUILT="opt/${P}/*"
+
+BDEPEND="
+       dev-util/debugedit
+       dev-util/patchelf
+"
+RDEPEND="
+       >=virtual/jre-17:*
+       dev-lang/go
+       dev-libs/wayland
+       sys-libs/pam
+       sys-process/audit
+"
+
+src_prepare() {
+       tc-export OBJCOPY
+       default
+
+       if ! use arm64; then
+               local remove_me=(
+                       lib/async-profiler/aarch64
+                       plugins/go-plugin/lib/dlv/linuxarm/dlv
+                       plugins/go-plugin/lib/dlv/linuxarmmusl/dlv
+               )
+       elif ! use amd64; then
+               local remove_me=(
+                       lib/async-profiler/amd64
+                       plugins/go-plugin/lib/dlv/linuxmusl/dlv
+               )
+       fi
+
+       rm -rv "${remove_me[@]}" || die
+
+       # excepting files that should be kept for remote plugins
+       if ! use arm64 ; then
+               local skip_remote_files=(
+                       
"plugins/platform-ijent-impl/ijent-aarch64-unknown-linux-musl-release"
+                       
"plugins/gateway-plugin/lib/remote-dev-workers/remote-dev-worker-linux-arm64"
+               )
+       elif ! use amd64; then
+               local skip_remote_files=(
+                       
"plugins/platform-ijent-impl/ijent-x86_64-unknown-linux-musl-release"
+                       
"plugins/gateway-plugin/lib/remote-dev-workers/remote-dev-worker-linux-amd64"
+               )
+       fi
+
+       # removing debug symbols and relocating debug files as per #876295
+       # we're escaping all the files that contain $() in their name
+       # as they should not be executed
+       find . -type f ! -name '*$(*)*' -print0 | while IFS= read -r -d '' 
file; do
+               for skip in "${skip_remote_files[@]}"; do
+                       [[ ${file} == ./"${skip}" ]] && continue 2
+               done
+               if file "${file}" | grep -qE "ELF (32|64)-bit"; then
+                       ${OBJCOPY} --remove-section .note.gnu.build-id 
"${file}" || die
+                       debugedit -b "${EPREFIX}/opt/${PN}" -d "/usr/lib/debug" 
-i "${file}" || die
+               fi
+       done
+
+       patchelf --set-rpath '$ORIGIN' "jbr/lib/libjcef.so" || die
+       patchelf --set-rpath '$ORIGIN' "jbr/lib/jcef_helper" || die
+
+       # As per 
https://blog.jetbrains.com/platform/2024/07/wayland-support-preview-in-2024-2/ 
for full wayland support
+       if use wayland; then
+               echo "-Dawt.toolkit.name=WLToolkit" >> bin/webstorm64.vmoptions 
|| die
+       fi
+}
+
+src_install() {
+       local dir="/opt/${P}"
+
+       insinto "${dir}"
+       doins -r *
+       fperms 755 
"${dir}"/bin/{format.sh,goland.sh,inspect.sh,ltedit.sh,remote-dev-server.sh,restarter,fsnotifier}
+       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}
+       fperms 755 "${dir}"/plugins/go-plugin/lib/dlv/linux/dlv
+
+       make_wrapper "${PN}" "${dir}/bin/${PN}.sh"
+       newicon "bin/${PN}.png" "${PN}.png"
+       make_desktop_entry "${PN}" "Goland ${PV}" "${PN}" "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