commit: 0a95347fe5487d9bd81f8b0e22078efd0332a838 Author: Stefan Cristian B. <stefan.cristian+git <AT> rogentos <DOT> ro> AuthorDate: Sun Dec 7 18:18:48 2025 +0000 Commit: Stefan Cristian B. <stefan.cristian+git <AT> rogentos <DOT> ro> CommitDate: Sun Dec 7 18:18:48 2025 +0000 URL: https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=0a95347f
dev-util/webstorm: bump 2025.2.5 Signed-off-by: Stefan Cristian B. <stefan.cristian+git <AT> rogentos.ro> dev-util/webstorm/Manifest | 2 + dev-util/webstorm/webstorm-2025.2.5.ebuild | 127 +++++++++++++++++++++++++++++ 2 files changed, 129 insertions(+) diff --git a/dev-util/webstorm/Manifest b/dev-util/webstorm/Manifest index 5231ef5246..9765419e3a 100644 --- a/dev-util/webstorm/Manifest +++ b/dev-util/webstorm/Manifest @@ -7,3 +7,5 @@ DIST WebStorm-2025.2.3-aarch64.tar.gz 1173759437 BLAKE2B f4089570ed238c3c13b1f41 DIST WebStorm-2025.2.3.tar.gz 1176859050 BLAKE2B e6db724b7353d8ee76a39778402b7e8f27e3d5328d43344178af7800130c77f6b83c36484c2c61fdeba9080a9f9152469c49dbe4670d1a4e7fac6a53f82f1371 SHA512 033d5a8ae8ab174a39829fa19ccca3df470ab515417923dbe5cecafd78d5d4d0996a35b9d084f304bbdd9421d0d859aaae412340763309b820c3afdf7ce16b8b DIST WebStorm-2025.2.4-aarch64.tar.gz 1185679572 BLAKE2B a454d233f4255cb32ba08a0056eac1410b90baca8cf34f5191a3137fc2a3df7c09f5498a3facddd20a0ffa05b92c44d60e100c1138599600eddb4d28b3dabdc5 SHA512 c18514576b19d458e7cc55fe4e7ae791075991aca78136f76bac5de6e96932e875fde2037f7b08d366d07ebae09c4590ef7f8f430f324a8d15d41d8e610605b6 DIST WebStorm-2025.2.4.tar.gz 1188763861 BLAKE2B acc863e67ae5a79e0970ac4615557e5ad1d28daa607b2a12ccf33f251eec30f58d1f9735e7382a999a894cf39cddf3b9ab8ff8f78dd597b845ab04c7150de97b SHA512 a7d38d3b84463609f46ece109f72c746a4cd02c88db0f312a392b3783ed285e5ce103d22b6a393909714253fc6cfb8a5b2f0c3dd55978883baac974057371e1a +DIST WebStorm-2025.2.5-aarch64.tar.gz 1174566314 BLAKE2B 9ad73e4ee5c0285371c36e096817d4ee3a320e18103cba871ecc8bae050da836ae89689f9d46767d368f8264646b04c043390045081fcd22e866c8ab1e4e0966 SHA512 69e0f27e07e8dec2a31329c1be6c9ba5d853b8372910f508447a9143e27885a9cb6436b711ccefc6a4fd9592848560ea7ae564d081d9bc88df7734be4143a779 +DIST WebStorm-2025.2.5.tar.gz 1177634598 BLAKE2B 942a812fb8614abcbce864bfb3c0dc9392821e88d8834b0fd851aa612445243a848e40f29174ff5547cb485c39dc3338ee83273f835a4a542fabcc7b9f582b16 SHA512 e298b56e9d18f14e6af2042a16c6894de310f109aca35596138068501c5d4e1633ac3ef1a50f8a2d4aa569826d866ba02dd4d85e0b365263f492c739744eb313 diff --git a/dev-util/webstorm/webstorm-2025.2.5.ebuild b/dev-util/webstorm/webstorm-2025.2.5.ebuild new file mode 100644 index 0000000000..0555358d8e --- /dev/null +++ b/dev-util/webstorm/webstorm-2025.2.5.ebuild @@ -0,0 +1,127 @@ +# Copyright 2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit desktop wrapper toolchain-funcs + +DESCRIPTION="An integrated development environment for JavaScript and related technologies." +HOMEPAGE="https://www.jetbrains.com/webstorm/" +SRC_URI=" + amd64? ( https://download-cdn.jetbrains.com/${PN}/WebStorm-${PV}.tar.gz ) + arm64? ( https://download-cdn.jetbrains.com/${PN}/WebStorm-${PV}-aarch64.tar.gz ) +" + +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=" + dev-libs/wayland + sys-libs/pam + sys-process/audit + virtual/zlib:= +" + +src_unpack() { + # WebStorm unarchived directory is in format WebStorm-xxx.yyy.zzz, not ${P} + if use amd64 ; then + cp "${DISTDIR}"/WebStorm-${PV}.tar.gz "${WORKDIR}"/ || die + elif use arm64 ; then + cp "${DISTDIR}"/WebStorm-${PV}-aarch64.tar.gz "${WORKDIR}"/ || die + fi + mkdir -p "${P}" || die + tar --strip-components=1 -xzf "WebStorm-${PV}".tar.gz -C "${P}" || die +} + +src_prepare() { + tc-export OBJCOPY + default + + if ! use arm64; then + local remove_me=( + lib/async-profiler/aarch64 + ) + elif ! use amd64; then + local remove_me=( + lib/async-profiler/amd64 + ) + 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/{"${PN}",fsnotifier,format.sh,inspect.sh,jetbrains_client.sh,ltedit.sh,remote-dev-server,remote-dev-server.sh,restarter} + fperms 755 "${dir}"/jbr/bin/{java,javac,javadoc,jcmd,jdb,jfr,jhsdb,jinfo,jmap,jps,jrunscript,jstack,jstat,jwebserver,keytool,rmiregistry,serialver} + fperms 755 "${dir}"/jbr/lib/{chrome-sandbox,jcef_helper,jexec,jspawnhelper} + + make_wrapper "${PN}" "${dir}"/bin/"${PN}" + newicon bin/"${PN}".svg "${PN}".svg + make_desktop_entry "${PN}" "WebStorm ${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" +}
