132 lines
5.8 KiB
Bash
132 lines
5.8 KiB
Bash
#!/bin/bash
|
||
directory="$HOME/Документы/ranger"
|
||
LNAVCONFIG="lnav"
|
||
|
||
if ! command -v git &> /dev/null; then
|
||
echo -e "\e[0;33m----------\e[0m"
|
||
echo "Error: git не установлен"
|
||
echo "Установите ПО Git и повторите снова"
|
||
echo -e "\e[0;33m----------\e[0m"
|
||
exit 1
|
||
fi
|
||
|
||
if ! command -v unzip &> /dev/null; then
|
||
echo -e "\e[0;33m----------\e[0m"
|
||
echo "Error: unzip не установлен"
|
||
echo "Установите ПО unzip и повторите снова"
|
||
echo -e "\e[0;33m----------\e[0m"
|
||
exit 1
|
||
fi
|
||
|
||
echo -e "\e[0;33m----------\e[0m"
|
||
echo -e "ДАННЫЙ СКРИПТ УСТАНОВИТ RAGNER, А ТАКЖЕ СДЕЛАТ В НЁМ ПО УМОЛЧАНИЮ ТЕКСТОВЫЙ РЕДАКТОР LNAV"
|
||
|
||
echo -e "\e[0;33m----------\e[0m"
|
||
sleep 2
|
||
|
||
if ! [ -d $HOME/Документы/ ]; then
|
||
echo -e "\e[0;33m----------\e[0m"
|
||
echo 'Создаём $HOME/Документы'
|
||
echo -e "\e[0;33m----------\e[0m"
|
||
mkdir -p $HOME/Документы
|
||
fi
|
||
|
||
if ! command -v lnav &> /dev/null; then
|
||
echo "Error: lnav не установлен"
|
||
echo "Выполнить установку lnav 0.12.2 или пропустить шаг? (y / n / s)"
|
||
read lnav
|
||
if [ "$lnav" == "n" ] || [ "$lnav" == "N" ]; then
|
||
echo -e "\e[0;31mОтмена выполнения\e[0m"
|
||
echo -e "\e[0;33m----------\e[0m"
|
||
exit 1
|
||
elif [ "$lnav" == "s" ] || [ "$lnav" == "S" ]; then
|
||
echo -e "\e[0;33m----------\e[0m"
|
||
echo "Пропускаем шаг"
|
||
echo -e "\e[0;33m----------\e[0m"
|
||
else
|
||
echo -e "\e[0;33m----------\e[0m"
|
||
echo "Загружаем lnav"
|
||
LNAVCONFIG="/home/$USER/Документы/lnav"
|
||
wget -P /tmp https://github.com/tstack/lnav/releases/download/v0.12.2/lnav-0.12.2-linux-musl-x86_64.zip
|
||
unzip /tmp/lnav-0.12.2-linux-musl-x86_64.zip -d /tmp/
|
||
cp /tmp/lnav-0.12.2/lnav /home/$USER/Документы/
|
||
if [ -n "$BASH_VERSION" ]; then
|
||
echo "alias lnav='~/Документы/lnav'" >> ~/.bashrc
|
||
source ~/.bashrc
|
||
echo -e "\e[0;33m----------\e[0m"
|
||
echo "Алиас 'lnav' добавлен в ~/.bashrc"
|
||
echo -e "Перед использованием незабудьте выполнить \e[0;32msource ~/.bashrc"
|
||
echo -e "\e[0;33m----------\e[0m"
|
||
elif [ -n "$ZSH_VERSION" ]; then
|
||
echo "alias lnav='~/Документы/lnav'" >> ~/.zshrc
|
||
source ~/.zshrc
|
||
echo -e "\e[0;33m----------\e[0m"
|
||
echo "Алиас 'lnav' добавлен в ~/.zshrc"
|
||
echo -e "Перед использованием незабудьте выполнить \e[0;32msource ~/.zshrc"
|
||
echo -e "\e[0;33m----------\e[0m"
|
||
else
|
||
echo "Не удалось определить текущую оболочку"
|
||
echo "Скрипт \e[0;31mзавершился ошибкой.\e[0m"
|
||
exit 1
|
||
fi
|
||
fi
|
||
fi
|
||
|
||
if [ -d "$directory" ]; then
|
||
echo "Директория $directory существуют. Вы точно не выполняли скрипт ранее?"
|
||
echo -e "\e[0;33m----------\e[0m"
|
||
echo "Продолжить (это приведет к удалению $directory и новой загрузке ranger)? (y / n)"
|
||
read answer
|
||
echo -e "\e[0;33m----------\e[0m"
|
||
if [ "$answer" == "n" ] || [ "$answer" == "N" ]; then
|
||
echo -e "\e[0;31mОтмена выполнения\e[0m"
|
||
exit 1
|
||
else
|
||
echo "Продолжаем выполнение, загружаю ranger в $directory."
|
||
echo -e "\e[0;33m----------\e[0m"
|
||
rm -rf $directory
|
||
git clone https://github.com/ranger/ranger.git $directory
|
||
sed -i "s/mime \^text, label editor = \${VISUAL:-\$EDITOR} -- \"\$@\"/mime ^text, label editor = \${VISUAL:-\$LNAVCONFIG} -- \"\$@\"/" $directory/ranger/config/rifle.conf
|
||
fi
|
||
|
||
else
|
||
echo "Не удалось найти $directory, загружаю туда ranger."
|
||
echo -e "\e[0;33m----------\e[0m"
|
||
git clone https://github.com/ranger/ranger.git $directory
|
||
sed -i "s/mime \^text, label editor = \${VISUAL:-\$EDITOR} -- \"\$@\"/mime ^text, label editor = \${VISUAL:-\$LNAVCONFIG} -- \"\$@\"/" $directory/ranger/config/rifle.conf
|
||
|
||
fi
|
||
|
||
if [ -n "$BASH_VERSION" ]; then
|
||
echo "alias ranger='python3 $directory/ranger.py'" >> ~/.bashrc
|
||
source ~/.bashrc
|
||
echo -e "\e[0;33m----------\e[0m"
|
||
echo "Алиас 'ranger' добавлен в ~/.bashrc"
|
||
echo -e "Перед использованием незабудьте выполнить \e[0;32msource ~/.bashrc"
|
||
echo -e "\e[0;33m----------\e[0m"
|
||
elif [ -n "$ZSH_VERSION" ]; then
|
||
echo "alias ranger='python3 $directory/ranger.py'" >> ~/.zshrc
|
||
source ~/.zshrc
|
||
echo -e "\e[0;33m----------\e[0m"
|
||
echo "Алиас 'ranger' добавлен в ~/.zshrc"
|
||
echo -e "Перед использованием незабудьте выполнить \e[0;32msource ~/.zshrc"
|
||
echo -e "\e[0;33m----------\e[0m"
|
||
else
|
||
echo "Не удалось определить текущую оболочку"
|
||
echo "Скрипт \e[0;31mзавершился ошибкой.\e[0m"
|
||
exit 1
|
||
fi
|
||
|
||
|
||
if [ -n "$BASH_VERSION" ]; then
|
||
echo "export LNAVCONFIG=$LNAVCONFIG" >> /home/$USER/.bashrc
|
||
elif [ -n "$ZSH_VERSION" ]; then
|
||
echo "export LNAVCONFIG=$LNAVCONFIG" >> /home/$USER/.zshrc
|
||
else
|
||
echo "Не удалось определить текущую оболочку"
|
||
echo "Скрипт \e[0;31mзавершился ошибкой.\e[0m"
|
||
exit 1
|
||
fi
|
||
echo -e "\e[0;33m----------\e[0m"
|
||
echo "Скрипт выполнился успешно! Приятного пользования!"
|
||
echo -e "\e[0;33m----------\e[0m" |