26 lines
745 B
Bash
26 lines
745 B
Bash
|
#!/bin/bash
|
||
|
|
||
|
VSCODE_BIN=$(command -v code)
|
||
|
VSCODE_BIN=${VSCODE_BIN:-$(command -v codium)}
|
||
|
[[ $VSCODE_BIN ]] || {
|
||
|
echo "no vscode binary on machine"
|
||
|
exit
|
||
|
}
|
||
|
# set default home here
|
||
|
# can pass
|
||
|
vscode() {
|
||
|
#local home=$HOME
|
||
|
local home=/opt/vscode
|
||
|
home=${VSCODE_HOME:-$home}
|
||
|
[[ $1 == "-h" ]] && home=$2 && shift 2
|
||
|
mkdir -p ${home}/${USER}
|
||
|
[[ $? -ne 0 ]] && echo "unable to set vscode home at $home/$USER, aborting" && return 1
|
||
|
exts=${home}/${USER}/extensions
|
||
|
user=${home}/${USER}/data
|
||
|
echo $VSCODE_BIN --user-data-dir=$user --extensions-dir=$exts "$@"
|
||
|
$VSCODE_BIN --user-data-dir=$user --extensions-dir=$exts "$@"
|
||
|
}
|
||
|
|
||
|
# # if script was executed then call the function
|
||
|
(return 0 2>/dev/null) || vscode $@
|