Apple использует оболочку bash в качестве оболочки по умолчанию в macOS, но недавно изменила ее на zsh . Для многих пользователей Mac это было неожиданно. Что заставило Apple пойти на этот шаг и какие основные опасения стояли за этим шагом? Эта статья прольет свет на недавнее решение Apple переключить оболочку по умолчанию с bash на zsh . Давай начнем:
Изменение лицензионного соглашения GNU
Apple известна своей политикой и ее соблюдением. Apple уже давно использует bash в качестве оболочки по умолчанию в macOS. Apple почти не меняет свою политику. Быстрое переключение вызвало у пользователей Mac немного скептицизма. Текущая версия bash в macOS X — это версия 3.2, а последняя версия bash — 5. Apple просто не может обновить версию bash из-за противоречивого лицензионного соглашения между GNU и Apple.
Условия лицензии GPLv3 изменены, что несовместимо с политиками Apple, и для использования последней версии bash (5.0) Apple должна согласиться с лицензией GPLv3.
GPLv3 внесла некоторые изменения в лицензионное соглашение, и Apple не хочет соглашаться с ним из-за ограничений для такой компании, как Apple. Поэтому Apple решила переключить свою оболочку по умолчанию с bash на zsh от macOS Catalina, Big Sur и выше.
Почему ЗШ?
Основная причина перехода с bash на zsh заключается в том, что zsh очень похож на bash. Так что любой, кто новичок в этой оболочке, не столкнется с какими-либо трудностями.
Могу ли я по-прежнему использовать Bash на macOS?
Да, bash можно использовать в macOS, но это будет версия bash 3.2, а не версия 5. Хотя версия bash 3.2.57 устарела, Apple разрешает ее распространение по лицензии GPLv2.
Разница между bash и zsh
Основное различие между bash и zsh заключается в том, что zsh обладает широкими возможностями настройки. Завершение команд намного лучше в zsh. С другой стороны, скрипты, написанные на bash, более универсальны из-за лучшей совместимости. Из-за разницы в функциональности zsh-скрипты могут не работать в среде bash.
Последние мысли
Недавнее решение Apple отказаться от оболочки Born Again Shell (bash) из macOS — загадочное решение, принятое после изменений в лицензионном соглашении GNU. Согласно Apple, новые условия являются ограничительными условиями GPLv3, и Apple трудно их соблюдать. Поэтому Apple больше не продолжает использовать bash и переходит на zsh. Zsh очень похож на bash и легко настраивается. Но пользователи Mac, которые все еще заинтересованы в использовании bash, могут переключиться на bash, но они не могут использовать последнюю версию bash.