Compare commits
11 commits
Author | SHA1 | Date | |
---|---|---|---|
419c895408 | |||
94e1996ed4 | |||
bc2836bbda | |||
4bc141d2af | |||
3546da3d2f | |||
31a79b6238 | |||
77d78841e3 | |||
01b2abba57 | |||
9abdfb89f9 | |||
afff4a3560 | |||
dce4d5c1c7 |
2 changed files with 184 additions and 87 deletions
11
README.md
11
README.md
|
@ -57,7 +57,7 @@ This function check if binary file is avaible in the `PATH`.
|
||||||
required_commands "ls mv git"
|
required_commands "ls mv git"
|
||||||
```
|
```
|
||||||
|
|
||||||
#### conf_process_dirs
|
#### link_dirs
|
||||||
|
|
||||||
Process a directory that contains others directories an symblink them to the
|
Process a directory that contains others directories an symblink them to the
|
||||||
destination folder :
|
destination folder :
|
||||||
|
@ -68,10 +68,11 @@ destination folder :
|
||||||
- **return** : no value, exit the funtion if there is an error on path
|
- **return** : no value, exit the funtion if there is an error on path
|
||||||
|
|
||||||
```
|
```
|
||||||
conf_process_dirs "${repository}/config" "${HOME}/.config"
|
link_dirs "${repository}/config" "${HOME}/.config"
|
||||||
```
|
```
|
||||||
|
Old function `conf_process_dirs` still avaiable for compatibility.
|
||||||
|
|
||||||
#### conf_process_files
|
#### link_files
|
||||||
|
|
||||||
Process a directory than contains files and symblink them to the destination
|
Process a directory than contains files and symblink them to the destination
|
||||||
folder :
|
folder :
|
||||||
|
@ -82,9 +83,11 @@ folder :
|
||||||
- **return** : no value, exit the funtion if there is an error on path
|
- **return** : no value, exit the funtion if there is an error on path
|
||||||
|
|
||||||
```
|
```
|
||||||
conf_process_dirs "${repository}/zshrc" "${HOME}"
|
link_files "${repository}/zshrc" "${HOME}"
|
||||||
```
|
```
|
||||||
|
|
||||||
|
Old function `conf_process_files` still avaiable for compatibility
|
||||||
|
|
||||||
#### bin_install
|
#### bin_install
|
||||||
|
|
||||||
Symblink an executable file to the `~/.local/bin` folder.
|
Symblink an executable file to the `~/.local/bin` folder.
|
||||||
|
|
260
src/dotinstall
260
src/dotinstall
|
@ -32,35 +32,51 @@ die ()
|
||||||
# $1 : error message before quit
|
# $1 : error message before quit
|
||||||
# $2 : exit code - default 99
|
# $2 : exit code - default 99
|
||||||
# $3 : 1 if print usage
|
# $3 : 1 if print usage
|
||||||
|
local message
|
||||||
|
local code
|
||||||
|
local usage
|
||||||
|
|
||||||
[ -z $2 ] && $2=99
|
message="$1"
|
||||||
printf "\e[31mFATAL : %s\e[0m\n" "$1"
|
code="$2"
|
||||||
[ $3 == 1 ] && usage
|
usage="$3"
|
||||||
exit $2
|
|
||||||
|
[ -z "$code" ] && code=99
|
||||||
|
printf "\e[31mFATAL : %s\e[0m\n" "$message"
|
||||||
|
[ $usage -eq 1 ] && usage
|
||||||
|
exit $code
|
||||||
}
|
}
|
||||||
|
|
||||||
error ()
|
error ()
|
||||||
{
|
{
|
||||||
# print error message in red
|
# print error message in red
|
||||||
# $@ : message
|
# $@ : message
|
||||||
|
|
||||||
printf "\e[31m%s\e[0m\n" "$*"
|
local message
|
||||||
|
message="$*"
|
||||||
|
printf "\e[31m%s\e[0m\n" "$message"
|
||||||
}
|
}
|
||||||
|
|
||||||
private:get_bootstrap_path ()
|
private:get_bootstrap_path ()
|
||||||
{
|
{
|
||||||
# this function return the absolute path of the bootstrap file
|
# this function return the absolute path of the bootstrap file
|
||||||
# $* : path of bootstrap file
|
# $* : path of bootstrap file
|
||||||
|
|
||||||
|
local path
|
||||||
|
path="$*"
|
||||||
|
|
||||||
# If the path begin with /, this is an absolute part
|
# If the path begin with /, this is an absolute part
|
||||||
if [[ "$*" =~ ^/[[:graph:]]*$ ]]
|
if [[ "$path" =~ ^/[[:graph:]]*$ ]]
|
||||||
then
|
then
|
||||||
repository="$(dirname $*)"
|
repository="$(dirname "$path")"
|
||||||
return
|
return
|
||||||
fi
|
fi
|
||||||
|
|
||||||
local relative_path="$*"
|
local relative_path
|
||||||
local current_path="$(pwd)"
|
local current_path
|
||||||
|
|
||||||
|
current_path="$(pwd)"
|
||||||
|
relative_path="$path"
|
||||||
|
|
||||||
while [[ $relative_path =~ ^../[[:graph:]]*$ ]]
|
while [[ $relative_path =~ ^../[[:graph:]]*$ ]]
|
||||||
do
|
do
|
||||||
printf "We found ..\n"
|
printf "We found ..\n"
|
||||||
|
@ -74,19 +90,22 @@ private:remove_symblink()
|
||||||
{
|
{
|
||||||
# Remove a symblink
|
# Remove a symblink
|
||||||
# $* source
|
# $* source
|
||||||
|
|
||||||
|
local source
|
||||||
|
source="$*"
|
||||||
|
|
||||||
printf " -> Remove symblink %s : " "$symblink"
|
printf " -> Remove symblink %s : " "$symblink"
|
||||||
if [ -L "$*" ]
|
if [ -L "$source" ]
|
||||||
then
|
then
|
||||||
local ret;
|
local ret;
|
||||||
ret=$(rm "$*" 2>&1)
|
ret=$(rm "$*" 2>&1)
|
||||||
[ $? -ne 0 ] && { error "can't remove : $ret"; return; }
|
[ $? -ne 0 ] && { error "can't remove : $ret"; return; }
|
||||||
elif [ ! -f "$*" ]
|
elif [ ! -f "$source" ]
|
||||||
then
|
then
|
||||||
error "$* not exist"
|
error "$source not exist"
|
||||||
return
|
return
|
||||||
else
|
else
|
||||||
error "$* is not a symblink"
|
error "$source is not a symblink"
|
||||||
fi
|
fi
|
||||||
printf "\e[32mdone\e[0m\n"
|
printf "\e[32mdone\e[0m\n"
|
||||||
}
|
}
|
||||||
|
@ -97,8 +116,11 @@ private:create_symblink ()
|
||||||
# $1: source
|
# $1: source
|
||||||
# $2: destination
|
# $2: destination
|
||||||
|
|
||||||
local source="$1"
|
local source
|
||||||
local dest="$2"
|
local dest
|
||||||
|
|
||||||
|
source="$1"
|
||||||
|
dest="$2"
|
||||||
|
|
||||||
printf " -> Create a symblink from %s : " "$source"
|
printf " -> Create a symblink from %s : " "$source"
|
||||||
|
|
||||||
|
@ -116,11 +138,11 @@ private:create_symblink ()
|
||||||
error "can't overwrite destination"
|
error "can't overwrite destination"
|
||||||
return
|
return
|
||||||
else
|
else
|
||||||
rm -rf $dest
|
rm -rf "$dest"
|
||||||
fi
|
fi
|
||||||
elif [ -e $dest ]
|
elif [ -e "$dest" ]
|
||||||
then
|
then
|
||||||
error "destination exist but is not a directory"
|
error "destin ation exist but is not a directory"
|
||||||
return
|
return
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
@ -153,9 +175,15 @@ private:clone_repository ()
|
||||||
# $1 url
|
# $1 url
|
||||||
# $2 local repository
|
# $2 local repository
|
||||||
# return : local directory
|
# return : local directory
|
||||||
|
|
||||||
|
local url
|
||||||
|
local repo
|
||||||
local ret
|
local ret
|
||||||
ret=$(git clone -q "$1" "${2}" 2>&1)
|
|
||||||
|
url="$1"
|
||||||
|
repo="$2"
|
||||||
|
|
||||||
|
ret=$(git clone -q "$url" "$repo" 2>&1)
|
||||||
[[ $? -ne 0 ]] && die "Can't clone_repository : $ret" 20 0
|
[[ $? -ne 0 ]] && die "Can't clone_repository : $ret" 20 0
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -164,15 +192,53 @@ private:update_repository ()
|
||||||
# Update a git repository
|
# Update a git repository
|
||||||
# $1 : local repository
|
# $1 : local repository
|
||||||
|
|
||||||
[ ! -d "$1" ] && die "Git update : directory $1 does not exist" 25 0
|
local repo
|
||||||
local current_dir=$(pwd)
|
repo="$1"
|
||||||
|
|
||||||
|
[ ! -d "$repo" ] && die "Git update : directory $1 does not exist" 25 0
|
||||||
|
|
||||||
|
local current_dir
|
||||||
local ret
|
local ret
|
||||||
cd "$1"
|
|
||||||
|
current_dir=$(pwd)
|
||||||
|
|
||||||
|
cd "$repo" || die "Can't go to directory ${repo}"
|
||||||
ret=$(git pull 2>&1)
|
ret=$(git pull 2>&1)
|
||||||
[[ $? -ne 0 ]] && die "Can't update repository : $ret" 24 0
|
[[ $? -ne 0 ]] && die "Can't update repository : $ret" 24 0
|
||||||
|
|
||||||
|
cd "$current_dir" || die "Can't return to directory $current_dir"
|
||||||
}
|
}
|
||||||
|
|
||||||
process_dirs () {
|
link_directory () {
|
||||||
|
|
||||||
|
# Create a symblink to directory inside an other directory
|
||||||
|
#
|
||||||
|
# $1: source directory
|
||||||
|
# $2: destination directory
|
||||||
|
|
||||||
|
local source
|
||||||
|
source="$1"
|
||||||
|
local dest
|
||||||
|
dest="$2"
|
||||||
|
printf "\nProcess directory %s\n" "$source"
|
||||||
|
if [[ ! $source =~ ^$repository ]]
|
||||||
|
then
|
||||||
|
echo "Add repo before source"
|
||||||
|
source="${repository}/$source"
|
||||||
|
fi
|
||||||
|
[ ! -d "$source" ] && { error " -> source is not a directory"; return; }
|
||||||
|
[ ! -d "$dest" ] && { error " -> destination is not a directory"; return; }
|
||||||
|
|
||||||
|
if [ $install -eq 1 ]
|
||||||
|
then
|
||||||
|
private:create_symblink "$source" "${dest}/$(basename "$d")"
|
||||||
|
else
|
||||||
|
local symblink="${dest}/$(basename "$d")"
|
||||||
|
private:remove_symblink "$symblink"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
link_directories () {
|
||||||
|
|
||||||
# Process a directory than contains subdir, create symblink from each subdir
|
# Process a directory than contains subdir, create symblink from each subdir
|
||||||
# to the destination.
|
# to the destination.
|
||||||
|
@ -180,52 +246,60 @@ process_dirs () {
|
||||||
# $1: source directory
|
# $1: source directory
|
||||||
# $2: destination directory
|
# $2: destination directory
|
||||||
|
|
||||||
local dest="${repository}/$1"
|
local source
|
||||||
local source="$2"
|
source="$1"
|
||||||
|
local dest
|
||||||
|
dest="$2"
|
||||||
printf "\nProcess directory %s\n" "$source"
|
printf "\nProcess directory %s\n" "$source"
|
||||||
|
|
||||||
[ ! -d "$source" ] && { error " -> source is not a directory"; return; }
|
while read -r d
|
||||||
[ ! -d "$dest" ] && { error " -> destination is not a directory"; return; }
|
|
||||||
|
|
||||||
while read d
|
|
||||||
do
|
do
|
||||||
if [ $install -eq 1 ]
|
link_directory "$d" "${dest}"
|
||||||
then
|
done < <(ls -d -1 "${repository}/${source}"/*/)
|
||||||
private:create_symblink "$d" "${2}/$(basename "$d")"
|
|
||||||
else
|
|
||||||
local symblink="${2}/$(basename ${d})"
|
|
||||||
private:remove_symblink "$symblink"
|
|
||||||
fi
|
|
||||||
|
|
||||||
done < <(ls -d -1 "${dest}"/*/)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
process_files () {
|
process_dirs () {
|
||||||
|
|
||||||
|
printf "This function is deprecated, use link_directories instead.\n"
|
||||||
|
link_directories $@
|
||||||
|
}
|
||||||
|
|
||||||
|
link_files () {
|
||||||
|
|
||||||
# Process a directory than contains config files, create symblink from each
|
# Process a directory than contains config files, create symblink from each
|
||||||
# files to the destination.
|
# files to the destination.
|
||||||
# $1: source directory
|
# $1: source directory
|
||||||
# $2: destination directory
|
# $2: destination directory
|
||||||
|
|
||||||
local dest="${repository}/$1"
|
local source
|
||||||
printf "Process files from directory %s:\n" "$1"
|
local dest
|
||||||
|
|
||||||
|
dest="$2"
|
||||||
|
source="${repository}/$1"
|
||||||
|
|
||||||
|
printf "\nProcess files from directory %s:\n" "$source"
|
||||||
|
|
||||||
[ ! -d "$dest" ] && { error " -> source is not a directory"; return; }
|
[ ! -d "$source" ] && { error " -> source is not a directory"; return; }
|
||||||
[ ! -d "$dest" ] && { error " -> destination is not a directory"; return; }
|
[ ! -d "$dest" ] && { error " -> destination is not a directory"; return; }
|
||||||
|
|
||||||
while read d
|
while read -r d
|
||||||
do
|
do
|
||||||
if [ $install -eq 1 ]
|
if [ $install -eq 1 ]
|
||||||
then
|
then
|
||||||
private:create_symblink "$d" "$2/$(basename "$d")"
|
private:create_symblink "${source}/$d" "${dest}/$(basename "$d")"
|
||||||
else
|
else
|
||||||
local symblink="${2}/$(basename ${d})"
|
local symblink
|
||||||
|
symblink="${dest}/$(basename ${d})"
|
||||||
private:remove_symblink "$symblink"
|
private:remove_symblink "$symblink"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
done < <(ls -1 "$dest")
|
done < <(ls -A -1 "$source")
|
||||||
}
|
}
|
||||||
|
|
||||||
|
process_files () {
|
||||||
|
printf "process_files is deprecated, use link_files instead\n"
|
||||||
|
link_files $@
|
||||||
|
}
|
||||||
|
|
||||||
install_service ()
|
install_service ()
|
||||||
{
|
{
|
||||||
|
@ -233,32 +307,43 @@ install_service ()
|
||||||
# $1 file
|
# $1 file
|
||||||
# $2 1 to Activate the service
|
# $2 1 to Activate the service
|
||||||
|
|
||||||
local source="${repository}/$1"
|
local source
|
||||||
|
local activate
|
||||||
|
source="${repository}/$1"
|
||||||
|
activate=$2
|
||||||
|
|
||||||
|
[ -z "$activate" ] && activate=0
|
||||||
|
|
||||||
local ret
|
local ret
|
||||||
[ ! -f "$source" ] && { error "$1 not found"; return; }
|
[ ! -f "$source" ] && { error "$1 not found"; return; }
|
||||||
local basename=$(basename "$source")
|
|
||||||
|
local basename
|
||||||
|
basename=$(basename "$source")
|
||||||
|
|
||||||
if [ $install -eq 1 ]
|
if [ $install -eq 1 ]
|
||||||
then
|
then
|
||||||
printf "\nInstall service %s :\n" "$source"
|
printf "\nInstall service %s :\n" "$source"
|
||||||
private:create_symblink "$source" "${SYD_DIRECTORY}/${basename}"
|
private:create_symblink "$source" "${SYD_DIRECTORY}/${basename}"
|
||||||
|
|
||||||
# activate service
|
# activate service
|
||||||
if [ $2 ]
|
if [ $activate -eq 1 ]
|
||||||
then
|
then
|
||||||
printf " -> Activate $basename : "
|
printf " -> Activate %s :" "$basename"
|
||||||
ret=$(systemctl --user enable ${basename} 2>&1)
|
ret=$(systemctl --user enable "${basename}" 2>&1)
|
||||||
[[ $? -ne 0 || ! $(systemctl --user is-enabled $basename) ]] && { error "$ret"; return; }
|
[[ $? -ne 0 || ! $(systemctl --user is-enabled "$basename") ]] && { error "$ret"; return; }
|
||||||
printf "\e[32mdone\e[0m\n"
|
printf "\e[32mdone\e[0m\n"
|
||||||
fi
|
fi
|
||||||
else
|
else
|
||||||
printf "\nUninstall service %s :\n" "$source"
|
printf "\nUninstall service %s :\n" "$source"
|
||||||
#Deactivate service
|
#Deactivate service
|
||||||
if [ $1 ]
|
if [ $activate -eq 1 ]
|
||||||
then
|
then
|
||||||
printf " -> Deactivate $basename : "
|
printf " -> Deactivate %s : " "$basename"
|
||||||
ret=$(systemctl --user disable ${basename} 2>&1)
|
ret=$(systemctl --user disable "${basename}" 2>&1)
|
||||||
[[ $? -ne 0 ]] && { error "$ret"; return; }
|
[[ $? -ne 0 ]] && { error "$ret"; return; }
|
||||||
printf "\e[32mdone\e[0m\n"
|
printf "\e[32mdone\e[0m\n"
|
||||||
|
else
|
||||||
|
private:remove_symblink "${SYD_DIRECTORY}/${basename}"
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
@ -268,14 +353,17 @@ required_commands ()
|
||||||
{
|
{
|
||||||
# Check if an executable exist
|
# Check if an executable exist
|
||||||
# $1 executables separated with spaces
|
# $1 executables separated with spaces
|
||||||
|
|
||||||
|
local bins
|
||||||
|
bins="$*"
|
||||||
|
|
||||||
# if uninstall, we don't need to process required commands.
|
# if uninstall, we don't need to process required commands.
|
||||||
[ $install -eq 0 ] && return
|
[ $install -eq 0 ] && return
|
||||||
printf "Checking required programs :\n"
|
printf "Checking required programs :\n"
|
||||||
for p in $1
|
for bin in $bins
|
||||||
do
|
do
|
||||||
printf " -> %s:" "$p"
|
printf " -> %s:" "$bin"
|
||||||
command -v $p >/dev/null 2>&1 || die "not found" 128
|
command -v "$bin" >/dev/null 2>&1 || die "not found" 128
|
||||||
printf " \e[32mfound\e[0m\n"
|
printf " \e[32mfound\e[0m\n"
|
||||||
done
|
done
|
||||||
}
|
}
|
||||||
|
@ -286,8 +374,10 @@ install_bin ()
|
||||||
# Via a symbolic link
|
# Via a symbolic link
|
||||||
# $1 : path to script
|
# $1 : path to script
|
||||||
|
|
||||||
local source="${repository}/${1}"
|
local source
|
||||||
local dest="${BIN_DIRECTORY}/$(basename $1)"
|
source="${repository}/${1}"
|
||||||
|
local dest
|
||||||
|
dest="${BIN_DIRECTORY}/$(basename "$1")"
|
||||||
|
|
||||||
printf "\nProcess executable :\n"
|
printf "\nProcess executable :\n"
|
||||||
[ ! -f "$source" ] && { error "$source is not a file"; return; }
|
[ ! -f "$source" ] && { error "$source is not a file"; return; }
|
||||||
|
@ -307,21 +397,27 @@ define_env ()
|
||||||
# on uninstall mode
|
# on uninstall mode
|
||||||
# $1 variable name
|
# $1 variable name
|
||||||
# $2 value
|
# $2 value
|
||||||
|
local name
|
||||||
|
local value
|
||||||
|
|
||||||
|
name="$1"
|
||||||
|
value="$2"
|
||||||
|
|
||||||
|
[ -z "$name" ] && { error "You must define a name"; return; }
|
||||||
|
[ ! -f "$ENV_FILE" ] && touch "$ENV_FILE"
|
||||||
|
|
||||||
[ -z $1 ] && { error "You must define a name"; return; }
|
|
||||||
[ ! -f $ENV_FILE ] && touch $ENV_FILE
|
|
||||||
if [ $install -eq 1 ]
|
if [ $install -eq 1 ]
|
||||||
then
|
then
|
||||||
printf "\nCreate an environment variable %s : " "$1"
|
printf "\nCreate an environment variable %s : " "$name"
|
||||||
[ $(grep -c -m 1 $1 $ENV_FILE) -eq 1 ] && { error "already exist"; return; }
|
[ $(grep -c -m 1 "$name" "$ENV_FILE") -eq 1 ] && { error "already exist"; return; }
|
||||||
local line
|
local line
|
||||||
line="export ${1}=\"${2}\""
|
line="export ${name}=\"${value}\""
|
||||||
echo "$line" >> $ENV_FILE
|
echo "$line" >> "$ENV_FILE"
|
||||||
printf "\e[32mdone\e[0m\n"
|
printf "\e[32mdone\e[0m\n"
|
||||||
else
|
else
|
||||||
printf "\nRemove an environment variable %s : " "$1"
|
printf "\nRemove an environ ment variable %s : " "$1"
|
||||||
[ $(grep -c -m 1 $1 $ENV_FILE) -eq 0 ] && { error "not exist"; return; }
|
[ $(grep -c -m 1 "$1" "$ENV_FILE") -eq 0 ] && { error "not exist"; return; }
|
||||||
sed -i "/^export $1=*/d" $ENV_FILE
|
sed -i "/^export $1=*/d" "$ENV_FILE"
|
||||||
printf "\e[32mdone\e[0m\n"
|
printf "\e[32mdone\e[0m\n"
|
||||||
|
|
||||||
fi
|
fi
|
||||||
|
@ -350,10 +446,10 @@ esac
|
||||||
|
|
||||||
if [[ $* =~ ^https://.*\.git$ || $* =~ ^ssh://.*\.git$ ]]
|
if [[ $* =~ ^https://.*\.git$ || $* =~ ^ssh://.*\.git$ ]]
|
||||||
then
|
then
|
||||||
check_bin "git"
|
required_commands "git"
|
||||||
|
|
||||||
# Check
|
# Check
|
||||||
localrepo="${DOTREPO}/$(basename $* .git)"
|
localrepo="${DOTREPO}/$(basename "$*" .git)"
|
||||||
if [ $update -eq 1 ]
|
if [ $update -eq 1 ]
|
||||||
then
|
then
|
||||||
private:update_repository "$localrepo"
|
private:update_repository "$localrepo"
|
||||||
|
@ -361,7 +457,7 @@ then
|
||||||
if [ $install -eq 1 ]
|
if [ $install -eq 1 ]
|
||||||
then
|
then
|
||||||
private:clone_repository "$*" "$localrepo"
|
private:clone_repository "$*" "$localrepo"
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
bootstrap_file="${localrepo}/bootstrap"
|
bootstrap_file="${localrepo}/bootstrap"
|
||||||
else
|
else
|
||||||
|
@ -371,23 +467,22 @@ fi
|
||||||
[ ! -f "$bootstrap_file" ] && die "$bootstrap_file does not exist" 2 1
|
[ ! -f "$bootstrap_file" ] && die "$bootstrap_file does not exist" 2 1
|
||||||
|
|
||||||
private:get_bootstrap_path "$bootstrap_file"
|
private:get_bootstrap_path "$bootstrap_file"
|
||||||
cache_file="${CACHE_DIR}/$(echo $repository | tr '/' '_')"
|
cache_file="${CACHE_DIR}/$(echo "$repository" | tr '/' '_')"
|
||||||
|
|
||||||
if [ $update -eq 1 ]
|
if [ $update -eq 1 ]
|
||||||
then
|
then
|
||||||
# Update mode
|
# Update mode
|
||||||
if [ -f "$cache_file" ]
|
if [ -f "$cache_file" ]
|
||||||
then
|
then
|
||||||
if [ $(diff "$bootstrap_file" "$cache_file" > /dev/null; echo $?;) -eq 0 ]
|
if [ $(diff "$bootst rap_file" "$cache_file" > /dev/null; echo $?;) -eq 0 ]
|
||||||
then
|
then
|
||||||
printf "There is no difference between cached copy and the bootstrap file\n";
|
printf "There is no difference between cached copy and the bootstrap file\n";
|
||||||
exit 0
|
exit 0
|
||||||
else
|
else
|
||||||
# for updating the dotfile repo, we need to uninstall it then
|
# for updating the dotfile repo, we need to uninstall it then
|
||||||
# install it. We need the cached copy for unistall.
|
# install it. We need the cached copy for unistall.
|
||||||
install=0
|
install=0
|
||||||
source "$cache_file"
|
source "$cache_file"
|
||||||
rm "$cache_file"
|
|
||||||
install=1
|
install=1
|
||||||
fi
|
fi
|
||||||
else
|
else
|
||||||
|
@ -404,8 +499,7 @@ source "$bootstrap_file"
|
||||||
if [ $install -eq 0 ]
|
if [ $install -eq 0 ]
|
||||||
then
|
then
|
||||||
printf "\nRemove files for complete uninstall\n"
|
printf "\nRemove files for complete uninstall\n"
|
||||||
rm $cache_file
|
rm "$cache_file"
|
||||||
rm -rf $repository
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
exit 0
|
exit 0
|
||||||
|
|
Reference in a new issue