update tools installer for eget v1.0.0
This commit is contained in:
parent
ed32295d7e
commit
8b71deee75
2 changed files with 63 additions and 29 deletions
|
@ -43,6 +43,13 @@ glab:
|
||||||
#node
|
#node
|
||||||
fnm:
|
fnm:
|
||||||
user: Schniz
|
user: Schniz
|
||||||
|
download-only: true
|
||||||
|
post-download: |
|
||||||
|
unzip -qq fnm-linux.zip
|
||||||
|
mv fnm $EGET_BIN/fnm
|
||||||
|
rm -r fnm-linux.zip
|
||||||
|
chmod u+x $EGET_BIN/fnm
|
||||||
|
|
||||||
|
|
||||||
# editing
|
# editing
|
||||||
neovim:
|
neovim:
|
||||||
|
@ -51,11 +58,12 @@ neovim:
|
||||||
# file management
|
# file management
|
||||||
gdu:
|
gdu:
|
||||||
user: dundee
|
user: dundee
|
||||||
download-only: true
|
to: gdu
|
||||||
post-download: |
|
# download-only: true
|
||||||
tar -xzf gdu_linux_amd64.tgz
|
# post-download: |
|
||||||
mv gdu_linux_amd64 $EGET_BIN/gdu
|
# tar -xzf gdu_linux_amd64.tgz
|
||||||
rm gdu_linux_amd64.tgz
|
# mv gdu_linux_amd64 $EGET_BIN/gdu
|
||||||
|
# rm gdu_linux_amd64.tgz
|
||||||
|
|
||||||
lf:
|
lf:
|
||||||
user: gokcehan
|
user: gokcehan
|
||||||
|
|
74
tools.sh
74
tools.sh
|
@ -3,6 +3,8 @@
|
||||||
BIN_DIR=$HOME/bin
|
BIN_DIR=$HOME/bin
|
||||||
mkdir -p $BIN_DIR
|
mkdir -p $BIN_DIR
|
||||||
EGET_BIN=$BIN_DIR
|
EGET_BIN=$BIN_DIR
|
||||||
|
YAMLDOC="info/tools.yml"
|
||||||
|
alias eget="eget --system linux/amd64"
|
||||||
|
|
||||||
post_download_install() {
|
post_download_install() {
|
||||||
|
|
||||||
|
@ -14,6 +16,36 @@ post_download_install() {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
eget_tool() {
|
||||||
|
|
||||||
|
tool=$1
|
||||||
|
|
||||||
|
echo -n $tool
|
||||||
|
|
||||||
|
user=$(key=$tool yq e 'explode(.) | .[env(key)].user' $YAMLDOC)
|
||||||
|
asset=$(key=$tool yq e 'explode(.) | .[env(key)].asset // ""' $YAMLDOC)
|
||||||
|
file=$(key=$tool yq e 'explode(.) | .[env(key)].file // ""' $YAMLDOC)
|
||||||
|
to=$(key=$tool yq e 'explode(.) | .[env(key)].to // ""' $YAMLDOC)
|
||||||
|
download_only=$(key=$tool yq e 'explode(.) | .[env(key)].download-only // ""' $YAMLDOC)
|
||||||
|
|
||||||
|
eget $user/$tool \
|
||||||
|
${asset:+--asset $asset} \
|
||||||
|
${file:+--file $file} \
|
||||||
|
${to:+--to $to}\
|
||||||
|
${download_only:+--download-only} \
|
||||||
|
-q
|
||||||
|
|
||||||
|
if [[ $download_only ]]; then
|
||||||
|
echo -n ' --> '
|
||||||
|
echo -n 'running post-download script'
|
||||||
|
post_download_install $tool
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
if ! $(is-executable eget); then
|
if ! $(is-executable eget); then
|
||||||
echo "I don't see eget on your path..."
|
echo "I don't see eget on your path..."
|
||||||
read -p "Do you want to download it to ${BIN_DIR}? " -n 1 -r
|
read -p "Do you want to download it to ${BIN_DIR}? " -n 1 -r
|
||||||
|
@ -33,33 +65,27 @@ if ! $(is-executable yq); then
|
||||||
eget mikefarah/yq --asset yq_linux_amd64
|
eget mikefarah/yq --asset yq_linux_amd64
|
||||||
fi
|
fi
|
||||||
|
|
||||||
YAMLDOC="info/tools.yml"
|
|
||||||
alias eget="eget --system linux/amd64"
|
if ! [ -z "$1" ]; then
|
||||||
|
tool=$1
|
||||||
|
|
||||||
|
echo "installing $tool"
|
||||||
|
info=$(key=$tool yq e 'explode(.) | .[env(key)]' $YAMLDOC)
|
||||||
|
if [[ "$info" == "null" ]]; then
|
||||||
|
echo "$tool not found in $YAMLDOC"
|
||||||
|
echo "exiting"
|
||||||
|
exit 1
|
||||||
|
else
|
||||||
|
eget_tool $tool
|
||||||
|
fi
|
||||||
|
exit
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "no tool specified installing everything"
|
||||||
|
|
||||||
readarray tools < <(yq e 'keys | .[]' $YAMLDOC)
|
readarray tools < <(yq e 'keys | .[]' $YAMLDOC)
|
||||||
|
|
||||||
for tool in "${tools[@]:1}"
|
for tool in "${tools[@]:1}"
|
||||||
do
|
do
|
||||||
echo -n $tool
|
eget_tool $tool
|
||||||
|
|
||||||
user=$(key=$tool yq e 'explode(.) | .[env(key)].user' $YAMLDOC)
|
|
||||||
asset=$(key=$tool yq e 'explode(.) | .[env(key)].asset // ""' $YAMLDOC)
|
|
||||||
file=$(key=$tool yq e 'explode(.) | .[env(key)].file // ""' $YAMLDOC)
|
|
||||||
to=$(key=$tool yq e 'explode(.) | .[env(key)].to // ""' $YAMLDOC)
|
|
||||||
download_only=$(key=$tool yq e 'explode(.) | .[env(key)].download-only // ""' $YAMLDOC)
|
|
||||||
|
|
||||||
eget $user/$tool \
|
|
||||||
${asset:+--asset $asset} \
|
|
||||||
${file:+--file $file} \
|
|
||||||
${to:+--to $to}\
|
|
||||||
${download_only:+--download-only} \
|
|
||||||
-q
|
|
||||||
|
|
||||||
if [[ $download_only ]]; then
|
|
||||||
echo -n '-->'
|
|
||||||
echo -n 'running post-download script'
|
|
||||||
post_download_install $tool
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo
|
|
||||||
done
|
done
|
||||||
|
|
Loading…
Reference in a new issue