first commit
This commit is contained in:
commit
c80da46882
8
README.md
Normal file
8
README.md
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
# Ranger + lnav
|
||||||
|
Автоматическая установка `ranger` и `lnav` (в случае отсутствия на АРМ) и настройка работы `ranger` с `lnav`
|
||||||
|
|
||||||
|
# Как запустить?
|
||||||
|
`bash shell+ranger.sh`
|
||||||
|
|
||||||
|
# Зависимости
|
||||||
|
Необходимо наличие пакетов `git` и `unzip` на АРМ.
|
132
shell+ranger.sh
Normal file
132
shell+ranger.sh
Normal file
@ -0,0 +1,132 @@
|
|||||||
|
#!/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"
|
Loading…
Reference in New Issue
Block a user