есть идеи, что, черт возьми, Microsoft делает с этой установкой варева?

Я нашел этот скрипт установки для msodbcsqlodbc -driver-13-1-for-macos-released.

Соответствующее содержание:

/usr/bin/ruby -e “$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)“
brew tap microsoft/msodbcsql https://github.com/Microsoft/homebrew-mssql-release
brew update
brew install msodbcsql
#for silent install ACCEPT_EULA=y brew install msodbcsql

Меня смущает первая строка. Когда я запускаю, он дает этот вывод:

$ /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
==> This script will install:
/usr/local/bin/brew
/usr/local/share/doc/homebrew
/usr/local/share/man/man1/brew.1
/usr/local/share/zsh/site-functions/_brew
/usr/local/etc/bash_completion.d/brew
/usr/local/Homebrew
==> The following existing directories will be made group writable:
/usr/local/bin
/usr/local/include

Я прочитал это так, что их инструкции по установке предназначены не только для msodbcsql с использованием доморощенного, они ориентированы на установку сначала доморощенного, а затем msodbsql.

Это обычная практика или просто невежество MS?

Примечание: я использую macportsобычно, поэтому я позаботился об установке homebrew в свой homeкаталог, поэтому, возможно, стандартная установка homebrew не привела бы к тому, что их скрипт захотел бы растоптать всю мою систему.

Ответы (1)

Это стандартный способ установки Homebrew. Microsoft, похоже, написала установщик, который зависит от установки Homebrew, поэтому имеет смысл сначала установить его.

Да, у меня сложилось впечатление, что доморощенный устанавливается именно так, и это нормально. Но не было бы более распространенным предположить, что homebrew установлен, а затем, возможно, иметь инструкции по установке на случай, если он не будет найден? Вместо того, чтобы сначала встраивать установку менеджера пакетов. т.е. все остальные, кажется, хорошо с brew install xxx. Имейте в виду, я видел сценарии установки, которые берут данные с github, но обычно потому, что целевой пакет не находится в обычных местах репо. Не потому, что менеджер пакетов нуждается в установке.
@JLPeyret, но тогда Microsoft пришлось бы поддерживать проблемы, возникающие из-за пользовательских установок brew. Выполняя установку фиксированным способом, они могут просто ответить другим: «Не изменяйте сценарий установки!»