dev-util/goland: revbump to 2019.3-r1
authorNils Freydank <holgersson@posteo.de>
Sun, 8 Dec 2019 18:17:18 +0000 (19:17 +0100)
committerJason A. Donenfeld <zx2c4@gentoo.org>
Tue, 10 Dec 2019 18:11:50 +0000 (19:11 +0100)
This revbump improves some points of the previous ebuild:

1. Stop configuring system components, but notify the user to do so
2. Bump to EAPI=7
3. Switching to HTTPS
4. Adding RDEPEND to java
5. Some cleanup and notes inside the ebuild

Thanks to Whissi for some notes and hints!

Package-Manager: Portage-2.3.81, Repoman-2.3.20
Signed-off-by: Nils Freydank <holgersson@posteo.de>
Signed-off-by: Jason A. Donenfeld <zx2c4@gentoo.org>
dev-util/goland/goland-2019.3-r1.ebuild [new file with mode: 0644]
dev-util/goland/goland-2019.3.ebuild [deleted file]

diff --git a/dev-util/goland/goland-2019.3-r1.ebuild b/dev-util/goland/goland-2019.3-r1.ebuild
new file mode 100644 (file)
index 0000000..de6131b
--- /dev/null
@@ -0,0 +1,87 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit desktop eutils
+
+SLOT=0
+
+SRC_URI="https://download.jetbrains.com/go/${P}.tar.gz"
+DESCRIPTION="Golang IDE by JetBrains"
+HOMEPAGE="https://www.jetbrains.com/go"
+
+# JetBrains supports officially only x86_64 even though some 32bit binaries are
+# provided. See https://www.jetbrains.com/go/download/#section=linux
+KEYWORDS="~amd64"
+
+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
+       ZLIB
+"
+
+RESTRICT="bindist mirror"
+
+QA_PREBUILT="opt/${P}/*"
+
+S="${WORKDIR}/GoLand-${PV}"
+
+RDEPEND="
+       virtual/jdk
+       dev-lang/go
+"
+
+src_install() {
+       local dir="/opt/${P}"
+
+       insinto "${dir}"
+       doins -r *
+       fperms 755 "${dir}"/bin/{${PN}.sh,fsnotifier64}
+
+       make_wrapper "${PN}" "${dir}/bin/${PN}.sh"
+       newicon "bin/${PN}.png" "${PN}.png"
+       make_desktop_entry "${PN}" "gogland" "${PN}" "Development;IDE;"
+}
+
+pkg_postinst() {
+       if [[ -z "${REPLACING_VERSIONS}" ]]; then
+                       # This is a new installation, so:
+                       echo
+                       elog "It is strongly recommended to increase the inotify watch limit"
+                       elog "to at least 524288. You can achieve this e.g. by calling"
+                       elog "echo \"fs.inotify.max_user_watches = 524288\" > /etc/sysctl.d/30-idea-inotify-watches.conf"
+                       elog "and reloading with \"sysctl --system\" (and restarting the IDE)."
+                       elog "For details see:"
+                       elog "    https://confluence.jetbrains.com/display/IDEADEV/Inotify+Watches+Limit"
+       fi
+
+       local replacing_version
+       for replacing_version in ${REPLACING_VERSIONS} ; do
+               if ver_test "${replacing_version}" -lt "2019.3-r1"; then
+                       # This revbump requires user interaction.
+                       echo
+                       ewarn "Previous versions configured fs.inotify.max_user_watches without user interaction."
+                       ewarn "Since version 2019.3-r1 you need to do so manually, e.g. by calling"
+                       ewarn "echo \"fs.inotify.max_user_watches = 524288\" > /etc/sysctl.d/30-idea-inotify-watches.conf"
+                       ewarn "and reloading with \"sysctl --system\" (and restarting the IDE)."
+                       ewarn "For details see:"
+                       ewarn "    https://confluence.jetbrains.com/display/IDEADEV/Inotify+Watches+Limit"
+
+                       # Show this ewarn only once
+                       break
+               fi
+       done
+}
diff --git a/dev-util/goland/goland-2019.3.ebuild b/dev-util/goland/goland-2019.3.ebuild
deleted file mode 100644 (file)
index 4a455fe..0000000
+++ /dev/null
@@ -1,62 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit eutils
-
-SLOT=0
-
-SRC_URI="http://download.jetbrains.com/go/${P}.tar.gz"
-DESCRIPTION="Golang IDE by JetBrains"
-HOMEPAGE="http://www.jetbrains.com/go"
-
-KEYWORDS="~amd64"
-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
-       ZLIB
-"
-
-RESTRICT="bindist mirror"
-
-QA_PREBUILT="opt/${P}/*"
-
-S=${WORKDIR}/GoLand-${PV}
-
-RDEPEND="dev-lang/go"
-
-src_prepare() {
-       default
-       if ! use arm; then
-               rm -rf bin/fsnotifier-arm || die
-       fi
-}
-
-src_install() {
-       local dir="/opt/${P}"
-
-       insinto "${dir}"
-       doins -r *
-       fperms 755 "${dir}"/bin/{${PN}.sh,fsnotifier{,64}}
-
-       make_wrapper "${PN}" "${dir}/bin/${PN}.sh"
-       newicon "bin/${PN}.png" "${PN}.png"
-       make_desktop_entry "${PN}" "gogland" "${PN}" "Development;IDE;"
-
-       # 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-idea-inotify-watches.conf" || die
-}