Установленное приложение с Brew Cask поверх существующей установки, были ли удалены старые файлы приложения?

Я обновился до последней версии OpenOffice (с 3.4.1 до 4.1.1) с помощью brew-cask, не осознавая, что OpenOffice 4 уже установлен:

$ brew cask install openoffice
==> Downloading http://downloads.sourceforge.net/sourceforge/openofficeorg.mirror/Apache_OpenOffice_4.1.1_MacOS_x86-64_install_en-US.dmg
######################################################################## 100.0%
==> Symlinking App 'OpenOffice.app' to '/Users/shwaydogg/Applications/OpenOffice.app'
🍺  openoffice staged at '/opt/homebrew-cask/Caskroom/openoffice/4.1.1' (3180 files, 385M)

Я беспокоюсь, что старая установка с ~ 400 МБ все еще существует, просто не связана. Или brew-cask, записывающий символическую ссылку поверх старого приложения, эффективно удаляет файлы? / Возможно, BrewCask был достаточно умен, чтобы принять это во внимание?

Как я мог проверить?


обновление: сделал, как @njbook предложил в комментариях:

$ brew-cask cleanup
==> Removing dead symlinks
Nothing to do
==> Removing cached downloads
/Library/Caches/Homebrew/openoffice-4.1.1.dmg
/Library/Caches/Homebrew/Casks/openoffice-4.1.1.dmg

Там нет упоминания об удалении старой установки.

Другой способ сформулировать мой вопрос, возможно, более прямо - в системе unix, если каталог заменен символической ссылкой, указывающей в другом месте, файлы в каталоге все еще занимают место на диске, и если да, то как их можно найти?

«Возможно, BrewCask был достаточно умен, чтобы принять это во внимание?» Возможно, если нет, то бег brew cleanupобычно помогает.

Ответы (1)

Cask по умолчанию не очищает старые версии. Он устанавливает установки, /opt/homebrew-cask/Caskroom/$APPNAMEа затем символически связывает их с рецептом варки ~/Applicationsили /Applicationsв зависимости от него. И затем он оставляет старые версии до тех пор, пока вы не запустите brew cleanup.

Вы можете увидеть старые установки OpenOffice в разделе /opt/homebrew-cask/Caskroom/openoffice. Вы можете безопасно удалить старые установки оттуда, хотя brew cleanupпредполагается, что это сделает это за вас.

Если вы ранее устанавливали OpenOffice с помощью их установщика DMG, а не Homebrew Cask, скорее всего, он был установлен в /Applicationsформате ~/Applications. Cask не будет устанавливаться поверх существующей установки, которая ранее не была установлена ​​Cask. Поэтому проверьте /Applicationsи убедитесь, что вы удалили старую версию оттуда, если не установили ее через Cask. Если вы установили его через Cask, все, что вам нужно сделать, это удалить его /opt/homebrew-cask/Caskroom/openoffice, как указано выше.

Спасибо Ян! Позже rm -rf /Applications/OpenOffice.appи хорошо идти!. Очевидный следующий вопрос - как установить "глобально", и ответ (даже если неуклюжий) выглядит так: brew cask install --appdir="/Applications" openoffice. -- источник: github.com/caskroom/homebrew-cask/issues/2261
@Shwaydogg да, так вы устанавливаете глобально, а не только для себя.
Также нашел это для постоянной установки в /Applications: Добавьте следующее в .bashrc export HOMEBREW_CASK_OPTS="--appdir=/Applications"-- раздел комментариев к исходному коду здесь: computers.tutsplus.com/tutorials/…