Homebrew прекрасно позволяет устанавливать пакеты без прав sudo, но мне кажется, что мне нужны права администратора для установки самого Homebrew.
Я хотел бы установить Homebrew в среде Mac, где у меня нет прав sudo или admin. Это возможно?
Нет .. Если вы не сделаете значительную операцию.
Причина в том, что Homebrew настаивает на установке пакетов в /usr/local
. На самом деле, даже если вы заставили его установить куда-то еще, вы, скорее всего, нарушите зависимости, когда будете использовать brew install
для установки пакетов. Большинство, если не все эти пакеты предварительно скомпилированы и связаны, ожидая, что они будут жить /usr/local
.
Причиной такой настойчивости является то, что /usr/local
именно там POSIX рекомендует устанавливать подобные вещи. Для создания /usr/local
Homebrew необходимы временные учетные данные администратора, чтобы создать каталог и назначить владельца.
Это, в свою очередь, то, что позволяет вам устанавливать что-либо еще без повышения учетных данных.
brew
с префиксом, установленным в моем домашнем каталоге, более 5 лет, и за это время я столкнулся с 1 или 2 сломанными пакетами.Да.
Я изменил скрипт установки, чтобы не использовать
sudo
и использовать каталог по вашему выбору. https://gist.github.com/skyl/36563a5be809e54dc139Скачайте это, установите
YOUR_HOME
в скрипте абсолютный путь.chmod +x
сценарий. СоздайтеYOUR_HOME/usr/local
каталог. Затем выполните скрипт.В
.bash_profile
, я поставил (я не уверен , это важно, очень уверен):Теперь я могу:
Убедитесь, что
bin
каталогYOUR_HOME
+/usr/local/bin
находится на вашем$PATH
.источник
#{YOUR_HOME}
префикс кHOMEBREW_CACHE
переменной. Это, а также потому , что системный администратор уже был самодельный установлен, я должен был добавитьexport PATH=/path/to/home/usr/local/bin:$PATH
к.bash_profile
а. Но со всем этим, кажется, работает отлично.usr
каталог в вашем домашнем каталоге, прежде чем скрипт запустится. Кроме того, при добавлении#{YOUR_HOME}
кHOMEBREW_CACHE
переменной, вы, кажется , нужно изменить одиночные кавычки в двойные кавычки для того , чтобы работать. Так что есть несколько шагов, но это определенно стоит того, чтобы получить силу Homebrew.chgrp admin /usr/local
, а учетная запись без прав администратора не является членом группы администраторов, поэтому она может: что-то изменить в этой группе. Было бы замечательно, если бы это работало для обычной учетной записи, не являющейся администратором (не только для учетных записей администратора, которые по какой-то странной причине были заблокированы из sudo).Да.
Система варки выглядит загружаемой
источник
Для установки доморощенного без sudo .
Перезапустите терминал и запустите
источник
Brew переместил их git-репо, поэтому вышесказанное больше не работает.
источник