commit: 9dacacf4018054f386456b7aba1fd7dd0841ab5b Author: Florian Schmaus <flo <AT> geekplace <DOT> eu> AuthorDate: Tue Feb 24 16:43:43 2015 +0000 Commit: Florian Schmaus <flo <AT> freakempire <DOT> de> CommitDate: Tue Feb 24 16:43:43 2015 +0000 URL: http://sources.gentoo.org/gitweb/?p=proj/java.git;a=commit;h=9dacacf4
Add app-admin/eselect-gradle Package-Manager: portage-2.2.14 Manifest-Sign-Key: 0x8CAC2A9678548E35 --- app-admin/eselect-gradle/Manifest | 19 +++ app-admin/eselect-gradle/eselect-gradle-0.1.ebuild | 24 ++++ app-admin/eselect-gradle/files/gradle.eselect | 131 +++++++++++++++++++++ app-admin/eselect-gradle/metadata.xml | 8 ++ 4 files changed, 182 insertions(+) diff --git a/app-admin/eselect-gradle/Manifest b/app-admin/eselect-gradle/Manifest new file mode 100644 index 0000000..f4be335 --- /dev/null +++ b/app-admin/eselect-gradle/Manifest @@ -0,0 +1,19 @@ +-----BEGIN PGP SIGNED MESSAGE----- +Hash: SHA256 + +AUX gradle.eselect 3098 SHA256 b7dcd9c8346eb7907ed9dde1f0f9febb87fd82450cef00aaf082866f6253b30b SHA512 739d4424560cf8da983cbb62ff9c7a5224e88937fc6fa8f005007d4790312cf6854893ffc298125bfad34a56662b09361f8d21da54a1a67039d73d92812e254a WHIRLPOOL 0d0d9060373398fe090bc7fa480d25f028ff53137155c3297130501c116b4d6f884f8faba1738728766c7bdcf49332a5c498bd3542e96dbb8e4aaa1703b82669 +EBUILD eselect-gradle-0.1.ebuild 436 SHA256 f5a2da3fadb33c0ba6a89a8f407a7a0f058744260095ff29cbc05406868d18a5 SHA512 a7abd391c28d6015a31aeaedc12330a05d57d40758304ddd86f7458be669a54042deb381bbe2f3da2bad1caa398e26e7640c9eacadcd854a6c38013fc864d4fe WHIRLPOOL 15eb3ef510911a9ab91790b6dd172f0218b7e3cbd1a8448c598d31f87945fc12048d6c02b69122957e9f646e004ee3418f47e3e728d61fba3e68688f891a3a81 +MISC metadata.xml 258 SHA256 51a8f8876c8eb8f7155f6f53aa2638b2581d590bd0f4c0cdd1fd0ef78f41ade9 SHA512 d50ec8c3003c653a85b9d89ee5838aead82a4d4150fc5f610825ca532b039ad80c14653609a1f2c0224e3c86f10b8ea400ca6f71289a0e382f9af789cecee9d2 WHIRLPOOL 6ff97f03ddeae5cc9db98a8a2a1496c96d65fb00d94e8bf1569f40c9dbefb18b71adaed4ee686a038fd3e3a3fc426e5cab819c0569b3a39de915837926c5ff89 +-----BEGIN PGP SIGNATURE----- +Version: GnuPG v2 + +iQF8BAEBCABmBQJU7Ko/XxSAAAAAAC4AKGlzc3Vlci1mcHJAbm90YXRpb25zLm9w +ZW5wZ3AuZmlmdGhob3JzZW1hbi5uZXQxMzU3QjAxODY1QjI1MDNDMTg0NTNEMjA4 +Q0FDMkE5Njc4NTQ4RTM1AAoJEIysKpZ4VI41dYMH/25ZpzG2WcxjITBmc2/5LN6J +LD148E/6O6JiwiEA3xsC7IGCqn/bIwUfo5AFFhuNV5+IW7GVtPk+TsQjrO9LB+ZO +Ht9cNjvEbmx9IfDpfT7PRZPMeTdl85LNGyF5J8qHrGBgXdQvIrVVbcUM3wEUmCP8 +uu+LhalmaQr8TU4JqHS0keV4tr3ow0V4NUhpUxdbAgHlVxQmR5llrFbjiinU2ycm +l4J4RR88Bk03ACcaa0QerE/s08v7D53O8IiCd6mnrKI5AuoiWCwIsN4Jim8VEobo +hwfQN89JPlvmw1tD4JnmVt0KUa5pmxmeOlekHTLTurw6Zd3DMhNX/Im6k2w2JcE= +=1ThB +-----END PGP SIGNATURE----- diff --git a/app-admin/eselect-gradle/eselect-gradle-0.1.ebuild b/app-admin/eselect-gradle/eselect-gradle-0.1.ebuild new file mode 100644 index 0000000..95c369c --- /dev/null +++ b/app-admin/eselect-gradle/eselect-gradle-0.1.ebuild @@ -0,0 +1,24 @@ +# Copyright 2013-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: $ + +EAPI=4 + +DESCRIPTION="Manage multiple Gradle versions on one system" +HOMEPAGE="http://www.gentoo.org" +SRC_URI="" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="" + +DEPEND="" +RDEPEND="app-admin/eselect" + +S="${WORKDIR}" + +src_install() { + insinto /usr/share/eselect/modules + doins "${FILESDIR}/gradle.eselect" +} diff --git a/app-admin/eselect-gradle/files/gradle.eselect b/app-admin/eselect-gradle/files/gradle.eselect new file mode 100644 index 0000000..a9db41c --- /dev/null +++ b/app-admin/eselect-gradle/files/gradle.eselect @@ -0,0 +1,131 @@ +# -*-eselect-*- vim: ft=eselect +# Copyright 2013-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 or later +# $Id: $ + +DESCRIPTION="Manage the /usr/bin/gradle symlink" +MAINTAINER="f...@geekplace.eu" +VERSION=0.1 + +# find a list of gradle symlink targets +find_targets() { + local f + for f in "${EROOT}"/usr/bin/gradle?(-bin)-[[:digit:]]*; do + [[ -x ${f} ]] && basename "${f}" + done +} + +remove_symlink() { + rm "${EROOT}/usr/bin/gradle" \ + || die -q "Could not remove symlink" +} + +set_symlink() { + local target=$1 + + if is_number "${target}"; then + local targets=( $(find_targets) ) + target=${targets[target-1]} + fi + + [[ -z ${target} ]] \ + && die -q "Target \"${1}\" doesn't apper to be valid!" + + [[ ! -x ${EROOT}/usr/bin/${target} ]] \ + && die -q "${EROOT}/usr/bin/${target} is not an executable" + + ln -s "${target}" "${EROOT}/usr/bin/gradle" \ + || die -q "Could not set symlink" +} + +describe_show() { + echo "Shows the current gradle symlink" +} + +do_show() { + write_list_start "Current gradle symlink:" + if [[ -L ${EROOT}/usr/bin/gradle ]]; then + local gradle=$(cannonicalise "${EROOT}/usr/bin/gradle") + write_kv_list_entry "${gradle}" "" + else + write_kv_list_entry "(unset)" "" + fi +} + +describe_list() { + echo "list available gradle symlink targets" +} + +do_list() { + local i targets=( $(find_targets) ) + + write_list_start "Available gradle symlink targets:" + for (( i = 0; i < ${#targets[@]}; i++ )); do + # highligh the target where the symlink is pointing to + [[ ${targets[i]} = \ + $(basename "$(canonicalise "${EROOT}/usr/bin/gradle")") ]] \ + && targets[i]=$(highlight_marker "${targets[i]}") + done + write_numbered_list -m "(none found)" "${targets[@]}" +} + +describe_set() { + echo "Set a new gradle symlink target" +} + +describe_set_parameters() { + echo "<target>" +} + +describe_set_options() { + echo "target : Target name or number (from 'list' action)" +} + +do_set() { + [[ -z $1 ]] && die -q "You didn't tell me what to set the symlink to" + [[ $# -gt 1 ]] && die -q "Too many parameters" + test_for_root + + if [[ -L ${EROOT}/usr/bin/gradle ]]; then + # existing symmlink + remove_symlink + set_symlink "$1" + elif [[ -e ${EROOT}/usr/bin/gradle ]]; then + # we have someting strange + die -q "${EROOT}/usr/bin/gradle exists but is not a symlink" + else + set_symlink "$1" + fi +} + +describe_update() { + echo "Automatically update the gradle symlink" +} + +describe_update_options() { + echo "ifunset: Do not override currently set version" +} + +do_update() { + [[ -z $1 || $1 == ifunset ]] || die -q "Usage error" + [[ $# -gt 1 ]] && die -q "Too many parameters" + test_for_root + + if [[ -L ${EROOT}/usr/bin/gradle ]]; then + if [[ $1 == ifunset && -e ${EROOT}/usr/bin/gradle ]]; then + return + fi + remove_symlink + elif [[ -e ${EROOT}/usr/bin/gradle ]]; then + die -q "${EROOT}/usr/bin/gradle exists but is not a symlink" + fi + + local targets=( $(find_targets) ) + if [[ ${#targets[@]} -gt 0 ]]; then + set_symlink "${targets[${#targets[@]}-1]}" + fi +} + +test_for_root() { + [[ -w ${EROOT}/usr/bin ]] || die -q "${EROOT}/usr/bin not writeable by current user. Are you root?" +} diff --git a/app-admin/eselect-gradle/metadata.xml b/app-admin/eselect-gradle/metadata.xml new file mode 100644 index 0000000..38a3c02 --- /dev/null +++ b/app-admin/eselect-gradle/metadata.xml @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer> + <email>f...@geekplace.eu</email> + <description>Maintainer, CC him on bugs</description> + </maintainer> +</pkgmetadata>