Настройка ZSH в MacOS
С началом использования MacOS, почти сразу понимаешь, что стандартный терминал не очень-то и удобен.
В качестве оболочки будем использовать ZSH, о нём, думаю, не слышал только любитель красивых UI, а вместо стандартного терминала я используем iTerm2.
В MacOS ZSH предустановлен, поэтому сразу устанавливаем его в качестве оболочки по умолчанию с помощью команды:
После перезапуска терминала оболочкой должен быть уже ZSH.
Если попросит начать настройку, то прервём сей процесс, нажав q.
Ручками не нужно переписывать конфиги, пусть это сделает Oh My Szh. Это набор плагинов и настроек, которые решают самые популярные задачи и делают ваш шелл просто супер удобным. Установим его, следуя инструкциям с официального сайта.
Переходим в домашний каталог и выполняем:
Установка прошла, но ничего не поменялось? Надо закрыть терминал и снова открыть его, чтобы настройки, которые приехали к нам из oh-my-zsh, прочитались и применились. Закрыли-открыли, теперь видим новое приветствие:
Приветствие шелла после установки Oh My ZSH
Это стандартная тема oh-my-zsh под названием robbyrussell (по имени автора). Мы можем поставить любую из тем, которые поставляются с oh-my-zsh. Я, использую Bureau.
Чтобы поменять тему, напишите её название (маленькими буквами, как на странице со списком тем) в файле .zshrc . Он лежит в вашей домашней папке ( /Users/Ваш_логин или /home/ваш_логин ). Поскольку он начинается с точки, он скрыт. Включите отображение скрытых файлов. Тему нужно прописать в переменную ZSH_THEME , это в районе восьмой строки, вот так:
Меняем тему в конфиге с помощью переменной ZSH_THEME
Сохраните файл и снова перезапустите терминал (или откройте в нём новую вкладку). Теперь шелл выглядит по-новому:
Тема Bureau в шелле
Это тема Bureau. В верхней строчке сначала имя пользователя, потом имя машины, потом путь к папке, где пользователь сейчас находится. Справа текущее время. В следующей строке просто символы, которые обозначают, что ввод здесь, а справа после шестиугольника текущая версия Node.js, ветка Git (если пользователь сейчас в Git-репозитории), и кружочки, которые обозначают, что есть несохранённые изменения. В этой теме версия Node.js показывается только если вы используете Node Version Manager.
Тема Agnoster в шелле
Если, увидите кривые символы, то не пугайтесь, всё это происходит из-за некоторых отсутствующих шрифтов в системе.
- Скачаем архив — вот здесь.
- Перейдём в “fonts-master/UbuntuMono/” и установим все шрифты в этой директории.
- В настройках терминала выставляем шрифт “Ubuntu Mono derivative Powerline”.
После перезапуска терминала вы, наконец, сможете узреть нормально работающий терминал.
Для правильной работы темы во встроенном терминале VScode в конфиг нужно добавить:
Источник
Отключение профиля DEP и MDM на Mac OS Big Sur
Описанные ниже действия лишают компанию или организацию, которая выдала вам компьютер, возможности следить за вашим устройством и получать дистанционно доступ к данным на нем.
Если обязательства перед компанией или закон ограничивает вас от выполнения подобных действий — НЕ ИСПОЛЬЗУЙТЕ приведенные ниже инструкции.
Если ваши этические принципы или иные убеждения не позволяют вам избавиться от контроля компании или организации — НЕ ИСПОЛЬЗУЙТЕ приведенные ниже инструкции.
В описанном методе не применяется какой-либо внешний инструментарий и используются только штатные средства Mac OS.
При использовании данного метода ОТКЛЮЧАЕТСЯ ШИФРОВАНИЕ FileVault накопителя. Если такое действие неприемлемо – НЕ ИСПОЛЬЗУЙТЕ данный метод. Тестирование с последующей активацией шифрования не проводилось.
Автор с уважением относится к компаниям и администраторам, которые настраивают системы контроля DEP и MDM.
Также автор уважает свободный осознанный выбор конечных пользователей по снятию систем слежения и дистанционного доступа к данным, если это не нарушает их обязательств перед компанией и закон.
Все инструкции пользователь выполняет на свой страх и риск. Автор не несет никакой ответственности на нанесенный вред или ущерб, в результате выполняемых действий, равно как не призывает к их выполнению.
Немного про DEP и MDM
Update: Спасибо @agafon_aga за существенные замечания:
Описанная здесь ситуация актуальна при использовании Apple Device Enrollment Program (DEP). Смысл ее — привязка устройств на аккаунт компании для облегчения управления, инвентаризации и прочего.
Внутри системы DEP имеет самый высокий приоритет (после Apple, разумеется).
Mobile Device Management (MDM) системы, имеют приоритет ниже чем AppleID пользователя устройства. Удалить профиль именно MDM (а не DEP) пользователь может легко. Для этого достаточно быть админом в системе.
Итого, уровень приоритетов выстраивается (от высшего к низшему):
Apple — DEP — User AppleID — MDM Profile
Профили DEP (Device Enrollment Program) и MDM (англ. Mobile Device Management), как правило, устанавливается пользователям на устройства, которые выданы им крупными компаниями, а также некоторыми школами и университетами в пользование. Профиль позволяет автоматизировать настройку практически всех программных компонентов устройства. При этом он также позволяет полностью контролировать устройство дистанционно. Возможности контроля ограничены лишь фантазией администратора, который его настраивал.
Короче, в общем для компании — это хорошо, в частности для конкретного пользователя — не очень. Иногда совсем не хочется, чтобы кто-то мог в любой момент дистанционно выкинуть тебя из компьютера или просто его заблокировать.
Корпоративный профиль устанавливается на заводе во время заказа партии для того или иного крупного заказчика и не может быть удален окончательно программно. Как правило, после полного сброса во время активации устройства профиль загружается из интернета и снова пробует себя развернуть на устройстве. Назойливость этих попыток может быть разной, и наша сегодняшняя задача избавиться от этого.
Решение с обходом блокировки на Mac OS Catalina достаточно прямолинейное и без труда находится в интернете. С Big Sur все намного сложнее. В новой операционной системе реализован новый механизм защиты целостности системы. Поэтому весь алгоритм действий усложнился.
Установка чистой системы
Будем предполагать, что мы в состоянии сами установить чистую систему Mac OS Big Sur с флешки. В случае с MDM устройством главное правило — проводим чистую установку с отключенным интернетом, чтобы система не могла получить данные по имеющемуся MDM идентификатору.
После завершения установки к интернету подключаться можно. К сожалению, система тут же начнет предлагать загрузить и установить тот самый MDM профиль, который по ее мнению должен быть настроен в системе. Настойчивость таких предложений — примерно раз в 10 минут. Жить можно, но мы не согласны на полумеры.
Отключение MDM профиля
1. На устройстве должен быть снят пароль на включение и выключено шифрование диска:
Настройки -> Безопасность -> FileVault — выключить
2. Перезагружаемся в режиме восстановления:
Удерживаем (Command+R) во время загрузки до появления полосы загрузки.
3. В режите восстановления запускаем терминал:
«Утилиты» -> «Терминал»
4. Смотрим индентификатор тома:
5. Если вы не трогали название разделов во время установки, то название по умолчания должно остаться «Macintosh HD». Здесь и далее будем использовать его.
Записываем на листик индентификатор тома «/Volumes/Macintosh HD»
Внимание! Не перепутать с диском «/Volumes/Macintosh HD — Data»
Идентификатор выглядит примерно так dev/disk4s5 — в вашем случае цифры могут быть другие.
Внимание! Индентификатор тома и название тома в последующих примерах команд подставляем свои!
6. Отключаем том и копируем файлы агентов в отдельную папку bak:
7. Отключаем Signed System Volume (SSV):
8. Сохраняем текущий статус диска в снепшот, чтобы система не ругалась на изменение системных файлов:
9. Закрываем терминал и перезагружаемся.
Готово. Агенты MDM профиля больше системой не видятся.
Обновления будут работать. Если сделать чистую переустановку — процедуру придется повторить сначала. Иногда фикс слетает после установки мажорных обновлений.
Работоспособность метода проверена на Mac OS Big Sur до версии 11.1.
Источник
Настройка ZSH в Mac OS
Mar 22, 2017 · 1 min read
С недавних пор начал использовать Mac OS, почти сразу подумал, что стандартный терминал не очень-то и удобен.
В качестве оболочки будем использовать ZSH, о нём, думаю, не слышал только любитель красивых UI, а вместо стандартного терминала я использую iTerm2.
В Mac OS ZSH предустановлен, поэтому сразу устанавливаем его в качестве оболочки по умолчанию с помощью команды chsh -s /bin/zsh . После перезапуска терминала оболочкой должен быть уже ZSH, если попросит начать настройку, то прервём сей процесс, нажав q.
Ручками мы писать конфиги, разумеется, не будем, пусть это сделает “Oh My Szh”. Переходим в домашний каталог и выполняем:
След у ющим шагом откроем для редактирования файл
/.zshrc и изменим значение параметра ZSH_THEME на agnoster , сохраняемся и перезапускаем терминал. В этот момент вы, скорее всего, увидите криво (никак) отображаемые символы, всё это происходит из-за некоторых отсутствующих шрифтов в системе, исправим это:
- Скачаем архив — вот здесь .
- Перейдём в “ fonts-master/UbuntuMono/” и установим все шрифты в этой директории.
- В настройках терминала выставляем шрифт “ Ubuntu Mono derivative Powerline”.
После перезапуска терминала вы, наконец, сможете узреть нормально работающую тему “agnoster”.
Источник
Где находится файл .zshrc на Mac?
Я использую iTerm и хотел настроить внешний вид окна моего терминала с помощью Oh My ZSH! , И согласно документации мне нужно изменить
/.zshrc файл и добавить ZSH_THEME значение:
Как только вы найдете тему, которую хотите использовать, вам нужно будет отредактировать
/.zshrc файл. Вы увидите переменную окружения (все заглавные буквы), которая выглядит следующим образом:
Проблема в том, что я не знаю, где найти
) относится к вашему домашнему каталогу, где обычно устанавливается и проверяется .zshrc. Это ваш файл для каждого пользователя, который вы можете создать и изменить по своему вкусу. В / etc / zshenv есть также глобальный конфиг, но я бы не стал его трогать.
/.zshrc не существует по умолчанию в Mac OS X, поэтому вам нужно его создать.
/ Переводится домашний директорий пользователя и .zshrc является сам конфигурационный файл ЗШ.
Так что просто откройте окно «Терминал» или «iTerm» и создайте этот файл следующим образом; Я использую nano в качестве текстового редактора, но не стесняйтесь использовать любой текстовый редактор, который вам удобнее:
А затем установите ZSH_THEME значение на любое значение, которое вы хотите использовать следующим образом:
Теперь, чтобы сохранить файл, nano просто нажмите ctrl + X . Когда это подсказывает:
Сохранить измененный буфер (ОТВЕТИТЬ «Нет», УДАЛИТ ЛИ УМЕНЬШЕНИЕ)?
Просто введите «Y», и вы получите новое приглашение, которое выглядит примерно так; просто отметьте, что путь /Users/jake/ будет соответствовать пути вашего локального пользователя:
Имя файла для записи: /Users/jake/.zshrc
Теперь просто нажмите, return и файл будет сохранен, и вы вернетесь к приглашению командной строки в «Терминале» или «iTerm». Если вы сейчас выходите из «Терминала» или «iTerm», а затем открываете новое окно,
Источник
Question: Q: bash or zsh on macOS Big Sur?
Apple has dropped support for bash, which is widely used in Linux systems, due to licensing issues. Newer versions of bash are licensed with GPL v3.0 which is more restrictive (basically it doesn’t allow to be packaged with other non-free software).
But, if you come from Linux and you’re too accustomed to bash, you don’t have to use zsh. brew to the rescue!
Also, to stop seeing Apple’s warning to use zsh, add the following line to
You’re are welcome 🙂
Posted on Dec 15, 2020 12:39 AM
All replies
Loading page content
Page content loaded
bash v. 3.2.57 still exists on Big Sur. The only reason you’d need to install it is if you need a newer version.
(basically it doesn’t allow to be packaged with other non-free software).
That’s not the problem with GPLv3. Apple doesn’t sell any part of its OS. GPLv3 would require Apple to allow modification to their own source code by the user, such as the code that prevents macOS from running on non-Apple hardware.
Dec 15, 2020 4:02 AM
Yes, it still exists but it’s from 2007. Bit old.
Also, thanks for correcting me. GPL 3 is certainly much more restrictive than previous versions. Maybe they’ll allow users to modify their source code in the future so that they can ship all the updated versions of open source programs.
And really annoying message from Apple to change our shell. I wouldn’t mind using the old version if it wasn’t for that message. To be honest, I wouldn’t know.
Dec 15, 2020 4:26 AM
And really annoying message from Apple to change our shell. I wouldn’t mind using the old version if it wasn’t for that message.
You posted how to disable the message. That should work in the installed version as well.
Dec 15, 2020 4:46 AM
Agreed. But you’d be using the 2007 version. And as per Apple suggestion, it would be better to use a more recent shell such as zsh (not under GPLv3). Also, Apple’s (annoying) message gives the impression that installing zsh is the only way to use an up to date shell. Perhaps they can can add that you are still free to use an updated bash shell via brew.
Dec 15, 2020 4:56 AM
Agreed. But you’d be using the 2007 version.
I was commenting on your statement, «I wouldn’t mind using the old version if it wasn’t for that message.»
Perhaps they can can add that you are still free to use an updated bash shell via brew.
That’s always been true for all of the bundled unix software. You don’t need to use Homebrew to install it, either. There are benefits to using Homebrew, but also some drawbacks.
People who use any shell environment should know how to install whatever shell they want. Apple doesn’t need to tell them. I wouldn’t suggest to a casual user that they could install some other version of the shell. The suggestion to switch default shells confuses too many people without adding the suggestion that they should install some package manager in order to install a shell when all they were doing was blindly running some command they found on the internet.
Источник