install.sh — скрипт для автоматизированной установки Zsh, Oh My Zsh и набора утилит (mc, wget, curl, telnet, nano, fastfetch) с поддержкой популярных дистрибутивов Linux.
sudo ./install.sh [OPTIONS]
Скрипт производит настройку современного shell-окружения для выбранного пользователя Linux. Автоматически определяет дистрибутив, устанавливает необходимые пакеты, настраивает локали, загружает .zshrc, устанавливает Oh My Zsh и назначает Zsh оболочкой по умолчанию.
Особенности:
- Все пользовательские файлы (.zshrc, .oh-my-zsh и др.) устанавливаются для пользователя, вызвавшего
sudo, а не для root. - Поддержка большинства популярных дистрибутивов Linux.
- Безопасный режим исполнения (
set -euo pipefail). - Поддержка диалогового режима и автоматизации через флаги.
-
-y,--yes
Автоматически отвечать "да" на все вопросы (используется для автоматизации). -
--no-promptОтключить все интерактивные вопросы. Скрипт выполняет все действия по умолчанию. -
--only-zshУстановить только Zsh и Oh My Zsh (без mc, wget, curl, telnet, nano, fastfetch, без настройки локалей).
Стандартная установка:
sudo ./install.shАвтоматизированная установка без вопросов:
sudo ./install.sh --yesТолько установка Zsh и Oh My Zsh:
sudo ./install.sh --only-zsh- Установка для текущего пользователя через sudo:
sudo ./install.sh
- Автоматическая установка без диалогов:
sudo ./install.sh --no-prompt
- Только установка оболочки Zsh:
sudo ./install.sh --only-zsh
$SUDO_USER— исходный пользователь, для которого будут установлены конфиги.$HOME— домашняя директория пользователя, определяется автоматически для$SUDO_USER.
${HOME}/.zshrc— основной конфиг Zsh.${HOME}/.oh-my-zsh— директория фреймворка Oh My Zsh.setup_zsh_<DATE>.log— лог-файл работы скрипта.
Debian, Ubuntu, Linux Mint, CentOS, Red Hat, Fedora, openSUSE, Arch Linux, Alpine, Oracle Linux.
fenixvd fenixvd@github.com
Пакет fastfetch может отсутствовать в некоторых дистрибутивах — рекомендуется проверить наличие в репозитории или установить вручную.
Скрипт не поддерживает macOS и WSL.
MIT