在我Packages.app
的preinstall
脚本中,我能够从 brew 的修改版本安装 brew,该版本install.sh
删除了sudo
检查:
#!/bin/bash
##preinstall
if brew ls --versions wget > /dev/null; then
# The package is installed
osascript -e 'tell app "Finder" to display dialog "The package is installed"'
else
# The package is not installed
osascript -e 'tell app "Finder" to display dialog "The package is not installed"'
/usr/bin/su root -c ./brew-install.sh
fi
exit 0
这是我从 brew's中删除install.sh
以使其正常工作的行:
if [[ "${EUID:-${UID}}" == "0" ]]; then
我不知道究竟"${EUID:-${UID}}"
是什么。
这是我迄今为止尝试过的,而不是使用su root
:
# /bin/bash -c ./brew-install.sh
# sudo dseditgroup -o edit -a $USER -t user admin
# sudo /usr/bin/su $USER -c ./brew-install.sh
# /usr/bin/su ladmin -c ./brew-install.sh
# nohup /usr/bin/su $USER -c /bin/bash -c ./brew-install.sh &
尤其是试图从这里添加$USER
到admin
组:https ://apple.stackexchange.com/a/76096/261453
有什么想法/解决方案吗?