Stylesheet conf/userstyle.css not found, please contact the developer of "dokuwiki_2024" template.
apple:osx:homebrew
Различия
Показаны различия между двумя версиями страницы.
apple:osx:homebrew [2021/02/27 02:31] – внешнее изменение 127.0.0.1 | apple:osx:homebrew [2022/01/24 17:50] (текущий) – dx | ||
---|---|---|---|
Строка 1: | Строка 1: | ||
+ | ====== Homebrew ====== | ||
+ | {{ : | ||
+ | |||
+ | TL;DR: homebrew это пакетный менеджер для Mac OS X аналогичный yum (CentOS) или apt-get/ | ||
+ | |||
+ | Если в Linux мы ставим ПО следующим образом: | ||
+ | |||
+ | < | ||
+ | CentOS - yum install htop | ||
+ | Debian - apt-get install htop | ||
+ | </ | ||
+ | |||
+ | То с brew будет возможность ставить ПО через терминал: | ||
+ | |||
+ | < | ||
+ | |||
+ | Почему именно homebrew, а не [[https:// | ||
+ | |||
+ | Brew vs Fink vs Macports | ||
+ | |||
+ | * http:// | ||
+ | * http:// | ||
+ | * http:// | ||
+ | * http:// | ||
+ | * http:// | ||
+ | |||
+ | P.S. brew это самогон. | ||
+ | |||
+ | Бонус - http:// | ||
+ | |||
+ | ===== Обновить все пакеты ===== | ||
+ | |||
+ | Как обновить сразу всё | ||
+ | |||
+ | [[https:// | ||
+ | |||
+ | <code bash> | ||
+ | function update-all { | ||
+ | # update cli homebrew | ||
+ | brew update | ||
+ | brew upgrade | ||
+ | brew prune | ||
+ | brew cleanup | ||
+ | |||
+ | # Homebrew cask | ||
+ | brew cu -a -y --cleanup | ||
+ | brew cleanup --force -s && rm -rf $(brew --cache) | ||
+ | |||
+ | # Node | ||
+ | npm update -g | ||
+ | |||
+ | # Apple App store | ||
+ | mas upgrade | ||
+ | softwareupdate --install --all | ||
+ | } | ||
+ | </ | ||
+ | |||
+ | Помимо самого brew необходимы | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | |||
+ | ===== Как установить Homebrew? ===== | ||
+ | |||
+ | ==== Command Line Tools ==== | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | Как два байта переслать. | ||
+ | |||
+ | Вначале необходимо установить т.н. инструменты командной строки для разработчиков (Command Line Tools). | ||
+ | |||
+ | Для этого ставим [[https:// | ||
+ | |||
+ | 4,4 GiB Xcode vs 160 MiB Command Line Tools, выбор очевиден. | ||
+ | |||
+ | Либо ничего не скачиваем, | ||
+ | |||
+ | <code bash>$ xcode-select --install</ | ||
+ | |||
+ | Смотрим версию | ||
+ | |||
+ | <code bash> | ||
+ | $ xcode-select -v | ||
+ | xcode-select version 2343. | ||
+ | </ | ||
+ | |||
+ | {{: | ||
+ | |||
+ | {{: | ||
+ | |||
+ | ==== Установка homebrew ==== | ||
+ | |||
+ | <code bash>/ | ||
+ | |||
+ | Теперь можно расслабиться и откинуться на спинку кресла.\\ | ||
+ | FIXED Нельзя, | ||
+ | |||
+ | {{: | ||
+ | |||
+ | Для удаления | ||
+ | |||
+ | <code bash> | ||
+ | |||
+ | [[https:// | ||
+ | |||
+ | <code bash>/ | ||
+ | |||
+ | ==== Рекламный блок ==== | ||
+ | |||
+ | Съешь еще этих сочных берез, да выпей самогона! *brew разные нужны, *brew разные важны. | ||
+ | |||
+ | * Perl - http:// | ||
+ | * PHP - https:// | ||
+ | |||
+ | ==== Памятка для себя по основным командам ==== | ||
+ | |||
+ | {{: | ||
+ | |||
+ | ^ Команда ^ Описание ^ | ||
+ | | brew update | Обновить brew | | ||
+ | | brew list | Список установленного ПО через brew | | ||
+ | | brew uninstall htop | Удалить программу | | ||
+ | | brew outdated | Проверить обновление для программ установленных через brew | | ||
+ | | brew upgrade | Обновить все программы | | ||
+ | | brew pin htop | Если нужно обновить всё кроме определенной программы | | ||
+ | | brew upgrade htop | Обновить только программу htop | | ||
+ | | brew remove --force $(brew list --formula) \\ UPD brew list | xargs brew uninstall --force \\ brew list --cask | xargs brew uninstall --force | ||
+ | \\ < | ||
+ | | brew cleanup | После при желании можно удалить скаченные архивы | | ||
+ | |||
+ | ==== Tap и Cask ==== | ||
+ | |||
+ | {{: | ||
+ | |||
+ | У Homebrew довольно интересная пивоваренная терминология. FIXME раздел будет обновлен | ||
+ | |||
+ | * Formula / Формула | ||
+ | * Taps / Кран | ||
+ | * Casks / Бочки | ||
+ | * Keg / Кеги или бочонки | ||
+ | * Cellar / Погреб | ||
+ | |||
+ | ===== Ошибки, | ||
+ | |||
+ | ==== Отключить сбор информации ==== | ||
+ | |||
+ | [[https:// | ||
+ | |||
+ | Отключить | ||
+ | |||
+ | <code bash> | ||
+ | export HOMEBREW_NO_ANALYTICS=1 | ||
+ | brew analytics off | ||
+ | </ | ||
+ | |||
+ | ==== Управление сервисами в homebrew ==== | ||
+ | |||
+ | via http:// | ||
+ | |||
+ | < | ||
+ | brew tap homebrew/ | ||
+ | brew update | ||
+ | |||
+ | # справка по использованию | ||
+ | brew services | ||
+ | # запускаем сервис (будет загружаться после логина пользователя) | ||
+ | brew service start redis | ||
+ | # останавливаем сервис | ||
+ | brew service stop redis | ||
+ | # запускаем сервис через sudo (будет запускаться без логина пользователя и с правами root) | ||
+ | sudo brew service start openvpn | ||
+ | </ | ||
+ | |||
+ | ==== Как собрать программу из исходников ==== | ||
+ | |||
+ | Установить nmap из исходных кодов | ||
+ | |||
+ | < | ||
+ | |||
+ | Переустановить/ | ||
+ | |||
+ | < | ||
+ | |||
+ | ==== Error: /usr/local must be writable! ==== | ||
+ | |||
+ | При запуске **brew doctor** появляется сообщение **Error: /usr/local must be writable!** | ||
+ | |||
+ | Чиним | ||
+ | |||
+ | < | ||
+ | |||
+ | ==== %command% not found ==== | ||
+ | |||
+ | < | ||
+ | dx-mac:~ dx$ mtr | ||
+ | -bash: mtr: command not found | ||
+ | dx-mac:~ dx$ sudo mtr | ||
+ | sudo: mtr: command not found | ||
+ | </ | ||
+ | |||
+ | При этом если указывать полный путь к бинарнику, | ||
+ | |||
+ | < | ||
+ | |||
+ | поэтому делаем | ||
+ | |||
+ | < | ||
+ | |||
+ | и чтобы не перелогиниваться применяем сразу изменения | ||
+ | |||
+ | < | ||
+ | |||
+ | **Бонус**. Избавляемся от ошибки '' | ||
+ | |||
+ | < | ||
+ | chmod 4755 / | ||
+ | sudo chown root / | ||
+ | </ | ||
+ | |||
+ | UPD Не работает в Sierra. | ||
+ | |||
+ | * https:// | ||
+ | * http:// | ||
+ | |||
+ | ==== после обновления до Sierra не работает brew ==== | ||
+ | |||
+ | < | ||
+ | xcrun: error: invalid active developer path (/ | ||
+ | </ | ||
+ | |||
+ | Что делать | ||
+ | |||
+ | < | ||
+ | |||
+ | ===== Программы из brew ===== | ||
+ | |||
+ | Must have программы по отзывам маководов | ||
+ | |||
+ | FIXME добавить список | ||
+ | |||
+ | Мой brew список | ||
+ | * archey | ||
+ | * cowsay | ||
+ | * ffmpeg | ||
+ | * htop | ||
+ | * iperf | ||
+ | * mtr | ||
+ | * ncdu | ||
+ | * tcping | ||
+ | * wget | ||
+ | * youtube-dl | ||
+ | |||
+ | ==== youtube-dl ==== | ||
+ | |||
+ | * http:// | ||
+ | * https:// | ||
+ | |||
+ | **Примеры использования** | ||
+ | |||
+ | Скачать видео без опций | ||
+ | |||
+ | < | ||
+ | |||
+ | Смотрим доступные форматы и качество | ||
+ | |||
+ | < | ||
+ | $ youtube-dl -F https:// | ||
+ | [youtube] JAB3OJMLb4I: | ||
+ | [youtube] JAB3OJMLb4I: | ||
+ | [youtube] JAB3OJMLb4I: | ||
+ | [youtube] JAB3OJMLb4I: | ||
+ | [info] Available formats for JAB3OJMLb4I: | ||
+ | format code extension | ||
+ | 140 m4a audio only DASH audio 128k , m4a_dash container, mp4a.40.2@128k (44100Hz), 8.74MiB | ||
+ | 171 webm audio only DASH audio 143k , vorbis@128k (44100Hz), 9.18MiB | ||
+ | 278 webm | ||
+ | 160 mp4 256x144 | ||
+ | 133 mp4 426x240 | ||
+ | 242 webm | ||
+ | 243 webm | ||
+ | 134 mp4 640x360 | ||
+ | 244 webm | ||
+ | 135 mp4 854x480 | ||
+ | 247 webm | ||
+ | 136 mp4 1280x720 | ||
+ | 248 webm | ||
+ | 137 mp4 1920x1080 | ||
+ | 17 | ||
+ | 36 | ||
+ | 43 | ||
+ | 18 | ||
+ | 22 | ||
+ | </ | ||
+ | |||
+ | Чтобы скачать видео 1280x720 hd720 под номером 22 используем ключ '' | ||
+ | |||
+ | < | ||
+ | |||
+ | Чтобы скачать плейлист достаточно просто указать ссылку | ||
+ | |||
+ | < | ||
+ | |||
+ | Скачиваем плейлист с дополнительными опциями | ||
+ | |||
+ | < | ||
+ | |||
+ | где | ||
+ | |||
+ | * A, --auto-number. deprecated. //Use -o " | ||
+ | * c, --continue - продолжить загрузку в случае обрыва связи | ||
+ | * f, --format - код формата видео | ||
+ | * i, --ignore-errors - игнорировать ошибки и продолжить загрузку | ||
+ | * t, --title - заголовок в имени файла. deprecated. теперь по-умолчанию | ||
+ | |||
+ | **Deprecated!** //Make sure you are not using -o with any of these options -t, --title, --id, -A or --auto-number set in command line or in a configuration file. Remove the latter if any.// | ||
+ | |||
+ | Если появится ошибка | ||
+ | |||
+ | //WARNING: You have requested multiple formats but ffmpeg or avconv are not installed. The formats won't be merged.WARNING: | ||
+ | |||
+ | То ставим пакет ffmpeg | ||
+ | |||
+ | < | ||
+ | |||
+ | upd dec 2019 | Если появится ошибка | ||
+ | |||
+ | < | ||
+ | |||
+ | добавить скобки | ||
+ | |||
+ | < | ||
+ | |||
+ | актуально для macOS 10.15.2/zsh 5.7.1 | ||
+ | |||
+ | {{tag> |