Просто чтобы уточнить, если я вас правильно понимаю, вы ни в коем случае не нарушаете GHC.Я полагаю, что вы имеете в виду установку пакета, который затем переустанавливает одну из базовых зависимостей другого пакета, тем самым нарушая цепочку зависимостей этого другого пакета и препятствуя его правильной работе / компиляции при использовании.Простое удаление .ghc из вашей домашней папки и повторная установка cabal обычно решают эту проблему, хотя и весьма болезненно.
Когда вы используете cabal-dev, все шаги по установке cabal и шаги по регистрации ghc-pkgделаются в локальной среде песочницы.Ваши глобальные / пользовательские пакеты ghc совсем не затронуты .Поскольку вы обычно создаете одну изолированную программную среду cabal-dev для каждого проекта, столкновения, подобные описанным выше, обычно не происходят.
Чтобы ответить на ваш вопрос - это полностью зависит от того, что уже установлено в этой конкретной изолированной программной среде cabal-dev.Если нет конфликтов, это ничего не сломит.Если вы используете --reinstall
, вам может потребоваться --reinstall
любых пакетов в локальной изолированной программной среде cabal-dev, которые зависят от пакета, который вы только что переустановили.
В любом случае сама установка GHC не будетпрервать (или изменить любым способом), и вы всегда можете rm -rf cabal-dev
в папке вашего проекта и повторить cabal-dev install
.
Надеюсь, это поможет.