Revisión e3de74be
Añadido por Martin Cuellar hace alrededor de 3 años
bin/enable/README.md | ||
---|---|---|
```bash
|
||
wget -qc https://raw.githubusercontent.com/nelbren/npres/master/bin/enable/sudo.bash && bash sudo.bash
|
||
```
|
||
- **yafp**
|
||
|
||
```bash
|
||
wget -qc https://raw.githubusercontent.com/nelbren/npres/master/bin/enable/yafp.bash && bash yafp.bash
|
||
```
|
bin/enable/yafp.bash | ||
---|---|---|
#!/bin/bash
|
||
#
|
||
# yafp.bash
|
||
#
|
||
#
|
||
# v0.0.1 - 2021-02-23 - nelbren@nelbren.com
|
||
#
|
||
|
||
inform_task() {
|
||
case $2 in
|
||
1) echo -e "\e[30;48;5;3m$1!\e[0m\e[K";;
|
||
2) echo -e "\e[7;49;93m$1:\e[0m\e[K";;
|
||
*) echo -en "\e[30;48;5;7m$1...\e[0m\e[K"
|
||
esac
|
||
}
|
||
|
||
inform_and_exit() {
|
||
if [ "$1" == "0" ]; then
|
||
echo -e "\e[7;49;92mOK\e[0m\e[K"
|
||
else
|
||
echo -e "\e[1;48;5;1m$2\e[0m\e[K"
|
||
exit $1
|
||
fi
|
||
}
|
||
|
||
check_if_normal_user_running() {
|
||
inform_task "Am I running as a 'normal' user?"
|
||
[[ "$(id -u)" == "0" ]] && e=1 || e=0
|
||
inform_and_exit $e "NO!"
|
||
}
|
||
|
||
sudo_test_access_to_user() {
|
||
user=$USER
|
||
inform_task "Let's test if the '$user' can run sudo"
|
||
id=$(sudo id -u)
|
||
inform_and_exit $id "Problem checking if user can access 'sudo'"
|
||
}
|
||
|
||
git_install_package() {
|
||
inform_task "Is the 'git' package installed?"
|
||
if dpkg -s git 2>/dev/null 1>&2 ; then
|
||
inform_and_exit 0 ""
|
||
else
|
||
inform_task "NO" 1
|
||
inform_task "Ok, no problem, i will install 'git' package" 2
|
||
sudo apt install -y git
|
||
inform_task "Is the 'git' package installed?"
|
||
if dpkg -s git 2>/dev/null 1>&2 ; then
|
||
inform_and_exit 0 ""
|
||
else
|
||
inform_and_exit $? "Problem installing git!"
|
||
fi
|
||
fi
|
||
}
|
||
|
||
yafp_git_clone() {
|
||
dir=/usr/local/yafp
|
||
inform_task "Exist the '$dir' directory?"
|
||
if [ -d $dir ]; then
|
||
inform_and_exit 0 ""
|
||
inform_task "Ok, i will update the 'yapf' repo" 2
|
||
cd $dir
|
||
sudo git pull
|
||
e=$?
|
||
inform_task "Is the 'yafp' repo updated?"
|
||
inform_and_exit $e "Problem updating 'yapf' repo!"
|
||
else
|
||
inform_task "NO" 1
|
||
inform_task "Ok, no problem, i will clone the 'yapf' repo" 2
|
||
sudo git clone https://github.com/nelbren/yafp.git $dir
|
||
inform_task "Exist the '$dir' directory?"
|
||
if [ -d $dir ]; then
|
||
inform_and_exit 0 ""
|
||
else
|
||
inform_and_exit $? "Problem cloning 'yapf' repo!"
|
||
fi
|
||
fi
|
||
}
|
||
|
||
validate() {
|
||
line="source /usr/local/yafp/yafp-ps1.bash"
|
||
inform_task "Exist 'yafp-ps1.bash' in '$1'?"
|
||
if sudo grep -q "$line" $1; then
|
||
inform_and_exit 0 ""
|
||
else
|
||
inform_task "NO" 1
|
||
inform_task "Ok, no problem, I'll do it for you, watch memes in the meantime" 2
|
||
echo "$line" | sudo tee -a $1 > /dev/null
|
||
inform_task "Exist 'yafp-ps1.bash' in '$1'?"
|
||
if sudo grep -q "$line" $1; then
|
||
inform_and_exit 0 ""
|
||
else
|
||
inform_and_exit $? "Problem adding 'yapf' to '$1'!"
|
||
fi
|
||
fi
|
||
}
|
||
|
||
yafp_bashrc_install() {
|
||
validate ~/.bashrc
|
||
validate /etc/skel/.bashrc
|
||
validate /root/.bashrc
|
||
}
|
||
|
||
check_if_normal_user_running
|
||
sudo_test_access_to_user
|
||
git_install_package
|
||
yafp_git_clone
|
||
yafp_bashrc_install
|
Exportar a: Unified diff
add enable/yafp.bash