Как homebrew предотвратява използването със sudo?

Когато се опитам да инсталирам с homebrew с sudo привилегии, например sudo brew install lua, получавам това съобщение

Грешка: Стартирането на Homebrew като root е изключително опасно и вече не се поддържа. Тъй като Homebrew не намалява привилегиите при инсталиране, вие ще дадете пълен достъп на всички скриптове за компилация до вашата система.

Разбирам тази грешка и мисля, че е добра идея, но как brew открива, че използвам sudo? Дали тази функция е нещо, което мога да внедря и в моите приложения?


person Eli Sadoff    schedule 30.11.2016    source източник
comment
Този въпрос може също да принадлежи на някой от сайтовете на Stack Exchange, който се занимава с Unix или Unix-подобни операционни системи.   -  person esote    schedule 01.12.2016


Отговори (1)


Brew.sh използва id -u, за да провери дали работи като root. Ако работи като root, ще върне 0. Вижте това линия. След това е само въпрос на показване на съобщение в съответствие с полученото id.

person Rosme    schedule 30.11.2016
comment
Уау, това е много по-просто, отколкото си мислех, че ще бъде. - person Eli Sadoff; 30.11.2016
comment
@EliSadoff В зависимост от езика, на който програмирате, най-вероятно има решение да знаете, че софтуерът работи от кой потребител. - person Rosme; 30.11.2016
comment
Пиша много неща в ruby, така че мога просто да използвам check = `id -u` и да продължа оттам. - person Eli Sadoff; 30.11.2016
comment
@EliSadoff страхотно! Ако това удовлетворява вашите нужди, не забравяйте да го изберете като отговор! - person Rosme; 30.11.2016
comment
Аз ще. Чакам още една минута, за да ми бъде позволено. - person Eli Sadoff; 30.11.2016