Skip to content

Commit

Permalink
dev-java/boot-bin: Added at 2.6.0
Browse files Browse the repository at this point in the history
This is mostly just giving users a better choice than "sudo bash curl..."

boot will still have to install its own dependencies when executed via maven
glue into ~/.m2/, but this still means they can easily get `boot` accessible
globally in "$PATH" without security paranoia, and from then on it
"mostly just works" without needing to understand boot-specific install
procedures.

Ideally this itself will be built from sources one day, but java upstream
logic fights this at every stage.

Also, "boot -u" still does "something", but it doesn't do anything useful.

Package-Manager: portage-2.3.0
  • Loading branch information
kentfredric committed Sep 4, 2016
1 parent 358ef4d commit e0631bd
Show file tree
Hide file tree
Showing 4 changed files with 78 additions and 0 deletions.
1 change: 1 addition & 0 deletions dev-java/boot-bin/Manifest
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
DIST boot-2.6.0.jar 8289462 SHA256 6ad8b10ff63b5ed884fefef9b784fd05675d94486526d059ebcc2c3b8a8a7701 SHA512 715aa320c0e44a2376020aa84c0640ae8e6fb15a4842b4267ff58e1d09682aae17f74dc568e50fa611993947bcd7b1430157a0f0b6b8bcddff1eaa3149ddc9ad WHIRLPOOL e39fa91d481ecf74747da7b81477d27110c61ad51ad5b662da9ef60c0a8727c035abacbc0cf1201d6dce2e31d76115ce2fecc2193228ae23dfe251e11858d93f
60 changes: 60 additions & 0 deletions dev-java/boot-bin/boot-bin-2.6.0.ebuild
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$

EAPI="6"

inherit java-pkg-2

MY_PN="${PN%-bin}"
MY_PNV="${MY_PN}-${PV}"

DESCRIPTION="Build tooling for Clojure"
HOMEPAGE="http://boot-clj.com/"
SRC_URI="https://github.com/boot-clj/${MY_PN}/releases/download/${PV}/${MY_PN}.jar -> ${MY_PNV}.jar"

LICENSE="EPL-1.0"
SLOT="0"
KEYWORDS="~amd64 ~x86"

RDEPEND=">=virtual/jdk-1.7:*"
DEPEND=">=virtual/jdk-1.7:*"

RESTRICT="test"

src_unpack() {
mkdir -p "${S}" || die "Can't mkdir ${S}"
cd "${S}" || die "Can't enter ${S}"
for file in ${A}; do
einfo "Copying ${file}"
cp "${DISTDIR}/${file}" "${S}/" || die "Can't copy ${file}"
done
}

src_prepare() {
einfo "Copying boot shell-script"
cp "${FILESDIR}/boot" "${S}/" || die "Can't copy boot"

java-pkg_init_paths_

sed -i "s|@@JAVA_PKG_SHAREPATH@@|${JAVA_PKG_SHAREPATH}|g" "${S}/boot" || die "Can't patch JAVA_PKG_SHAREPATH path in boot"
sed -i "s|@@JAVA_PKG_JARDEST@@|${JAVA_PKG_JARDEST}|g" "${S}/boot" || die "Can't patch JAVA_PKG_JARDEST path in boot"
sed -i "s|@@PN@@|${PN}|g" "${S}/boot" || die "Can't patch PN in boot"

default
}

src_compile() { :; }

src_install() {
dobin "${S}/boot"
java-pkg_newjar "${S}/${MY_PNV}.jar"
}

pkg_postinst() {
einfo "This package will still download a whole lot of its own runtime"
einfo "dependencies the first time you run it."
einfo ""
einfo "This currently can't be helped and is expected behaviour for a"
einfo "java based development toolkit"
}
6 changes: 6 additions & 0 deletions dev-java/boot-bin/files/boot
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
source @@JAVA_PKG_SHAREPATH@@/package.env
jarpath="@@JAVA_PKG_JARDEST@@/@@PN@@.jar"
declare -a "options=($BOOT_JVM_OPTIONS)"
self="${BASH_SOURCE[0]}"
exec ${BOOT_JAVA_COMMAND:-java} "${options[@]}" -Dboot.app.path="$jarpath" -jar "$jarpath" "$@"

11 changes: 11 additions & 0 deletions dev-java/boot-bin/metadata.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>[email protected]</email>
<name>Kent Fredric</name>
</maintainer>
<maintainer type="project">
<email>[email protected]</email>
</maintainer>
</pkgmetadata>

0 comments on commit e0631bd

Please sign in to comment.