diff --git a/shell/common.sh b/shell/common.sh index a17722f4..9b3d2bfb 100644 --- a/shell/common.sh +++ b/shell/common.sh @@ -1,11 +1,11 @@ -#!/bin/bash +#!/usr/bin/env bash CACHE_DIR="$DOTFILES/shell/zsh/cache" is-callable() { command -v "$1" >/dev/null; } is-interactive() { [[ $- == *i* ]]; } is-root() { [[ "$UID" -eq 0 ]]; } -is-ssh() { [[ "$SSH_CONNECTION" != '' ]]; } +is-ssh() { [[ $SSH_CONNECTION ]]; } info() { printf "\r[ \033[00;34m..\033[0m ] $1\n"; } success() { printf "\r\033[2K[ \033[00;32mOK\033[0m ] $1\n"; } @@ -14,19 +14,18 @@ fail() { printf "\r\033[2K[\033[0;31mFAIL\033[0m] $1\n"; echo; exit; } load () { source "$DOTFILES/$*"; } loadall () { - for file in "$DOTFILES"/$1/*.zsh; - do + for file in "$DOTFILES"/$1/*.zsh; do source "$file" done } cache() { - [ -z "$CACHE_DIR" ] && error "Cache not set!" - [ ! -d "$CACHE_DIR" ] && mkdir -p "$CACHE_DIR" + [[ -z "$CACHE_DIR" ]] && error "Cache not set!" + [[ -d "$CACHE_DIR" ]] || mkdir -p "$CACHE_DIR" is-callable "$1" || return 1 local cache="${CACHE_DIR}/$1-$(basename $SHELL)" - if ! [[ -f "$cache" && -s "$cache" ]]; then + if [[ ! -f "$cache" && -s "$cache" ]]; then echo "Caching $1" $@ > "$cache" 2> /dev/null fi @@ -34,12 +33,12 @@ cache() { } cache-clear() { - [ -d "$CACHE_DIR" ] && rm -f "$CACHE_DIR/*" + [[ -d $CACHE_DIR ]] && rm -f "$CACHE_DIR/*" } repo() { - if [ ! -d "$2" ]; - then - git clone "https://github.com/$1" "$2" - fi + [[ -d $2 ]] || git clone --recursive "https://github.com/$1" "$2" } + +# +umask 077