Don't call external `uname` when `$OSTYPE` will do (#1911)
* lib/helpers: use `$OSTYPE` instead of `$(uname)` * plugins/osx: use `$OSTYPE` instead of `$(uname)` * plugins/boot2docker: use `$OSTYPE` instead of `$(uname)` * plugins/python: use `$OSTYPE` instead of `$(uname)` * plugins/base: use `$OSTYPE` instead of `$(uname)` Alsö, use `[[` instead of `[` as the former has less insane argument handling being shell syntax rather than a builtin command that must emulate being a real binary * completion/brew: use `$OSTYPE` instead of `$(uname)` * completion/git: use `$OSTYPE` instead of `$(uname)` Alsö, use `[[` instead of `[`. * completion/fabric: use `$OSTYPE` instead of `uname` * theme/demula: use `$OSTYPE` instead of `$(uname)` * theme/rana: use `$OSTYPE` instead of `$(uname)`pull/1916/head
parent
e321a3d657
commit
de9ea54b81
|
|
@ -5,7 +5,7 @@ about-completion "brew completion"
|
||||||
# Load late to make sure `system` completion loads first
|
# Load late to make sure `system` completion loads first
|
||||||
# BASH_IT_LOAD_PRIORITY: 375
|
# BASH_IT_LOAD_PRIORITY: 375
|
||||||
|
|
||||||
if [[ "$(uname -s)" != 'Darwin' ]]; then
|
if [[ "$OSTYPE" != 'darwin'* ]]; then
|
||||||
_log_warning "unsupported operating system - only 'Darwin' is supported"
|
_log_warning "unsupported operating system - only 'Darwin' is supported"
|
||||||
return 0
|
return 0
|
||||||
fi
|
fi
|
||||||
|
|
|
||||||
|
|
@ -41,8 +41,8 @@ export FAB_COMPLETION_CACHED_TASKS_FILENAME=".fab_tasks~"
|
||||||
|
|
||||||
|
|
||||||
# Set command to get time of last file modification as seconds since Epoch
|
# Set command to get time of last file modification as seconds since Epoch
|
||||||
case `uname` in
|
case "$OSTYPE" in
|
||||||
Darwin|FreeBSD)
|
'darwin'*|'freebsd'*)
|
||||||
__FAB_COMPLETION_MTIME_COMMAND="stat -f '%m'"
|
__FAB_COMPLETION_MTIME_COMMAND="stat -f '%m'"
|
||||||
;;
|
;;
|
||||||
*)
|
*)
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
# Only operate on MacOS since there are no linux paths
|
# Only operate on MacOS since there are no linux paths
|
||||||
if [[ "$(uname -s)" != 'Darwin' ]] ; then
|
if [[ "$OSTYPE" != 'darwin'* ]] ; then
|
||||||
_log_warning "unsupported operating system - only 'Darwin' is supported"
|
_log_warning "unsupported operating system - only 'Darwin' is supported"
|
||||||
return 0
|
return 0
|
||||||
fi
|
fi
|
||||||
|
|
@ -24,7 +24,7 @@ _git_bash_completion_paths=(
|
||||||
|
|
||||||
# Load the first completion file found
|
# Load the first completion file found
|
||||||
for _comp_path in "${_git_bash_completion_paths[@]}" ; do
|
for _comp_path in "${_git_bash_completion_paths[@]}" ; do
|
||||||
if [ -r "$_comp_path" ] ; then
|
if [[ -r "$_comp_path" ]] ; then
|
||||||
_git_bash_completion_found=true
|
_git_bash_completion_found=true
|
||||||
source "$_comp_path"
|
source "$_comp_path"
|
||||||
break
|
break
|
||||||
|
|
|
||||||
|
|
@ -11,8 +11,8 @@ BASH_IT_LOAD_PRIORITY_SEPARATOR="---"
|
||||||
# To use this in Bash-it for inline replacements with `sed`, use the following syntax:
|
# To use this in Bash-it for inline replacements with `sed`, use the following syntax:
|
||||||
# sed "${BASH_IT_SED_I_PARAMETERS[@]}" -e "..." file
|
# sed "${BASH_IT_SED_I_PARAMETERS[@]}" -e "..." file
|
||||||
BASH_IT_SED_I_PARAMETERS=(-i)
|
BASH_IT_SED_I_PARAMETERS=(-i)
|
||||||
case "$(uname)" in
|
case "$OSTYPE" in
|
||||||
Darwin*) BASH_IT_SED_I_PARAMETERS=(-i "")
|
'darwin'*) BASH_IT_SED_I_PARAMETERS=(-i "")
|
||||||
esac
|
esac
|
||||||
|
|
||||||
function _command_exists ()
|
function _command_exists ()
|
||||||
|
|
|
||||||
|
|
@ -33,7 +33,7 @@ function myip ()
|
||||||
for url in ${list[*]}
|
for url in ${list[*]}
|
||||||
do
|
do
|
||||||
res=$(curl -fs "${url}")
|
res=$(curl -fs "${url}")
|
||||||
if [ $? -eq 0 ];then
|
if [[ $? -eq 0 ]];then
|
||||||
break;
|
break;
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
|
|
@ -48,7 +48,7 @@ function pickfrom ()
|
||||||
example '$ pickfrom /usr/share/dict/words'
|
example '$ pickfrom /usr/share/dict/words'
|
||||||
group 'base'
|
group 'base'
|
||||||
local file=$1
|
local file=$1
|
||||||
[ -z "$file" ] && reference $FUNCNAME && return
|
[[ -z "$file" ]] && reference $FUNCNAME && return
|
||||||
length=$(cat $file | wc -l)
|
length=$(cat $file | wc -l)
|
||||||
n=$(expr $RANDOM \* $length \/ 32768 + 1)
|
n=$(expr $RANDOM \* $length \/ 32768 + 1)
|
||||||
head -n $n $file | tail -1
|
head -n $n $file | tail -1
|
||||||
|
|
@ -70,7 +70,7 @@ function passgen ()
|
||||||
|
|
||||||
# Create alias pass to passgen when pass isn't installed or
|
# Create alias pass to passgen when pass isn't installed or
|
||||||
# BASH_IT_LEGACY_PASS is true.
|
# BASH_IT_LEGACY_PASS is true.
|
||||||
if ! command -v pass &>/dev/null || [ "$BASH_IT_LEGACY_PASS" = true ]
|
if ! command -v pass &>/dev/null || [[ "$BASH_IT_LEGACY_PASS" = true ]]
|
||||||
then
|
then
|
||||||
alias pass=passgen
|
alias pass=passgen
|
||||||
fi
|
fi
|
||||||
|
|
@ -129,15 +129,15 @@ function usage ()
|
||||||
about 'disk usage per directory, in Mac OS X and Linux'
|
about 'disk usage per directory, in Mac OS X and Linux'
|
||||||
param '1: directory name'
|
param '1: directory name'
|
||||||
group 'base'
|
group 'base'
|
||||||
if [ $(uname) = "Darwin" ]; then
|
if [[ "$OSTYPE" == 'darwin'* ]]; then
|
||||||
if [ -n "$1" ]; then
|
if [ -n "$1" ]; then
|
||||||
du -hd 1 "$1"
|
du -hd 1 "$1"
|
||||||
else
|
else
|
||||||
du -hd 1
|
du -hd 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
elif [ $(uname) = "Linux" ]; then
|
elif [[ "$OSTYPE" = 'linux'* ]]; then
|
||||||
if [ -n "$1" ]; then
|
if [[ -n "$1" ]]; then
|
||||||
du -h --max-depth=1 "$1"
|
du -h --max-depth=1 "$1"
|
||||||
else
|
else
|
||||||
du -h --max-depth=1
|
du -h --max-depth=1
|
||||||
|
|
@ -145,7 +145,8 @@ function usage ()
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
if [ ! -e "${BASH_IT}/plugins/enabled/todo.plugin.bash" ] && [ ! -e "${BASH_IT}/plugins/enabled/*${BASH_IT_LOAD_PRIORITY_SEPARATOR}todo.plugin.bash" ]; then
|
if [[ ! -e "${BASH_IT}/plugins/enabled/todo.plugin.bash" ]] && [[ ! -e "${BASH_IT}/plugins/enabled/*${BASH_IT_LOAD_PRIORITY_SEPARATOR}todo.plugin.bash" ]]
|
||||||
|
then
|
||||||
# if user has installed todo plugin, skip this...
|
# if user has installed todo plugin, skip this...
|
||||||
function t ()
|
function t ()
|
||||||
{
|
{
|
||||||
|
|
@ -180,11 +181,11 @@ mkiso ()
|
||||||
group 'base'
|
group 'base'
|
||||||
|
|
||||||
if type "mkisofs" > /dev/null; then
|
if type "mkisofs" > /dev/null; then
|
||||||
[ -z ${1+x} ] && local isoname=${PWD##*/} || local isoname=$1
|
[[ -z ${1+x} ]] && local isoname=${PWD##*/} || local isoname=$1
|
||||||
[ -z ${2+x} ] && local destpath=../ || local destpath=$2
|
[[ -z ${2+x} ]] && local destpath=../ || local destpath=$2
|
||||||
[ -z ${3+x} ] && local srcpath=${PWD} || local srcpath=$3
|
[[ -z ${3+x} ]] && local srcpath=${PWD} || local srcpath=$3
|
||||||
|
|
||||||
if [ ! -f "${destpath}${isoname}.iso" ]; then
|
if [[ ! -f "${destpath}${isoname}.iso" ]]; then
|
||||||
echo "writing ${isoname}.iso to ${destpath} from ${srcpath}"
|
echo "writing ${isoname}.iso to ${destpath} from ${srcpath}"
|
||||||
mkisofs -V ${isoname} -iso-level 3 -r -o "${destpath}${isoname}.iso" "${srcpath}"
|
mkisofs -V ${isoname} -iso-level 3 -r -o "${destpath}${isoname}.iso" "${srcpath}"
|
||||||
else
|
else
|
||||||
|
|
|
||||||
|
|
@ -3,7 +3,7 @@ about-plugin 'Helpers to get Docker setup correctly for boot2docker'
|
||||||
|
|
||||||
# Note, this might need to be different if you have an older version
|
# Note, this might need to be different if you have an older version
|
||||||
# of boot2docker, or its configured for a different IP
|
# of boot2docker, or its configured for a different IP
|
||||||
if [[ `uname -s` == "Darwin" ]]; then
|
if [[ "$OSTYPE" == 'darwin'* ]]; then
|
||||||
export DOCKER_HOST="tcp://192.168.59.103:2376"
|
export DOCKER_HOST="tcp://192.168.59.103:2376"
|
||||||
export DOCKER_CERT_PATH="~/.boot2docker/certs/boot2docker-vm"
|
export DOCKER_CERT_PATH="~/.boot2docker/certs/boot2docker-vm"
|
||||||
export DOCKER_TLS_VERIFY=1
|
export DOCKER_TLS_VERIFY=1
|
||||||
|
|
|
||||||
|
|
@ -2,7 +2,7 @@ cite about-plugin
|
||||||
about-plugin 'osx-specific functions'
|
about-plugin 'osx-specific functions'
|
||||||
|
|
||||||
# OS X: Open new tabs in same directory
|
# OS X: Open new tabs in same directory
|
||||||
if [ $(uname) = "Darwin" ]; then
|
if [[ $OSTYPE == 'darwin'* ]]; then
|
||||||
if type update_terminal_cwd > /dev/null 2>&1 ; then
|
if type update_terminal_cwd > /dev/null 2>&1 ; then
|
||||||
if ! [[ $PROMPT_COMMAND =~ (^|;)update_terminal_cwd($|;) ]] ; then
|
if ! [[ $PROMPT_COMMAND =~ (^|;)update_terminal_cwd($|;) ]] ; then
|
||||||
PROMPT_COMMAND="${PROMPT_COMMAND%;};update_terminal_cwd"
|
PROMPT_COMMAND="${PROMPT_COMMAND%;};update_terminal_cwd"
|
||||||
|
|
@ -46,13 +46,13 @@ function dock-switch() {
|
||||||
example '$ dock-switch 2d'
|
example '$ dock-switch 2d'
|
||||||
group 'osx'
|
group 'osx'
|
||||||
|
|
||||||
if [ $(uname) = "Darwin" ]; then
|
if [[ "$OSTYPE" = 'darwin'* ]]; then
|
||||||
|
|
||||||
if [ $1 = 3d ] ; then
|
if [[ $1 = 3d ]] ; then
|
||||||
defaults write com.apple.dock no-glass -boolean NO
|
defaults write com.apple.dock no-glass -boolean NO
|
||||||
killall Dock
|
killall Dock
|
||||||
|
|
||||||
elif [ $1 = 2d ] ; then
|
elif [[ $1 = 2d ]] ; then
|
||||||
defaults write com.apple.dock no-glass -boolean YES
|
defaults write com.apple.dock no-glass -boolean YES
|
||||||
killall Dock
|
killall Dock
|
||||||
|
|
||||||
|
|
@ -90,7 +90,7 @@ function prevcurl() {
|
||||||
param '1: url'
|
param '1: url'
|
||||||
group 'osx'
|
group 'osx'
|
||||||
|
|
||||||
if [ ! $(uname) = "Darwin" ]
|
if [[ ! $OSTYPE = 'darwin'* ]]
|
||||||
then
|
then
|
||||||
echo "This function only works with Mac OS X"
|
echo "This function only works with Mac OS X"
|
||||||
return 1
|
return 1
|
||||||
|
|
@ -103,7 +103,7 @@ function refresh-launchpad() {
|
||||||
example '$ refresh-launchpad'
|
example '$ refresh-launchpad'
|
||||||
group 'osx'
|
group 'osx'
|
||||||
|
|
||||||
if [ $(uname) = "Darwin" ];then
|
if [[ "$OSTYPE" = 'darwin'* ]];then
|
||||||
defaults write com.apple.dock ResetLaunchPad -bool TRUE
|
defaults write com.apple.dock ResetLaunchPad -bool TRUE
|
||||||
killall Dock
|
killall Dock
|
||||||
else
|
else
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
cite about-plugin
|
cite about-plugin
|
||||||
about-plugin 'alias "shttp" to SimpleHTTPServer'
|
about-plugin 'alias "shttp" to SimpleHTTPServer'
|
||||||
|
|
||||||
if [ $(uname) = "Linux" ]
|
if [[ "$OSTYPE" == 'linux'* ]]
|
||||||
then
|
then
|
||||||
alias shttp='python2 -m SimpleHTTPServer'
|
alias shttp='python2 -m SimpleHTTPServer'
|
||||||
else
|
else
|
||||||
|
|
@ -16,7 +16,7 @@ function pyedit() {
|
||||||
|
|
||||||
xpyc=`python -c "import os, sys; f = open(os.devnull, 'w'); sys.stderr = f; module = __import__('$1'); sys.stdout.write(module.__file__)"`
|
xpyc=`python -c "import os, sys; f = open(os.devnull, 'w'); sys.stderr = f; module = __import__('$1'); sys.stdout.write(module.__file__)"`
|
||||||
|
|
||||||
if [ "$xpyc" == "" ]; then
|
if [[ "$xpyc" == "" ]]; then
|
||||||
echo "Python module $1 not found"
|
echo "Python module $1 not found"
|
||||||
return -1
|
return -1
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -98,7 +98,7 @@ prompt() {
|
||||||
local MOVE_CURSOR_RIGHTMOST='\033[500C'
|
local MOVE_CURSOR_RIGHTMOST='\033[500C'
|
||||||
local MOVE_CURSOR_5_LEFT='\033[5D'
|
local MOVE_CURSOR_5_LEFT='\033[5D'
|
||||||
|
|
||||||
if [ $(uname) = "Linux" ];
|
if [[ "$OSTYPE" = 'linux'* ]]
|
||||||
then
|
then
|
||||||
PS1="${TITLEBAR}${SAVE_CURSOR}${MOVE_CURSOR_RIGHTMOST}${MOVE_CURSOR_5_LEFT}
|
PS1="${TITLEBAR}${SAVE_CURSOR}${MOVE_CURSOR_RIGHTMOST}${MOVE_CURSOR_5_LEFT}
|
||||||
$(safe_battery_charge)${RESTORE_CURSOR}\
|
$(safe_battery_charge)${RESTORE_CURSOR}\
|
||||||
|
|
|
||||||
|
|
@ -181,7 +181,7 @@ prompt() {
|
||||||
local MOVE_CURSOR_RIGHTMOST='\033[500C'
|
local MOVE_CURSOR_RIGHTMOST='\033[500C'
|
||||||
local MOVE_CURSOR_5_LEFT='\033[5D'
|
local MOVE_CURSOR_5_LEFT='\033[5D'
|
||||||
|
|
||||||
if [ $(uname) = "Linux" ];
|
if [[ "$OSTYPE" == 'linux'* ]];
|
||||||
then
|
then
|
||||||
PS1="${TITLEBAR}
|
PS1="${TITLEBAR}
|
||||||
${SAVE_CURSOR}${MOVE_CURSOR_RIGHTMOST}${MOVE_CURSOR_5_LEFT}\
|
${SAVE_CURSOR}${MOVE_CURSOR_RIGHTMOST}${MOVE_CURSOR_5_LEFT}\
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue