删除一个版本的 cabal

Remove a version of cabal

我不小心安装了两次cabal。我通过以下方式做到了这一点:

cabal install cabal-install
sudo cabal install cabal-install

现在我有两个版本的 cabal 和每个包的两个版本,这让我很头疼。我想从我的系统(以及其中的所有包)中完全删除 cabal 以便重新启动,所以我没有两个版本。这可能吗?如果可以,我该怎么做?

(或者,我不介意删除 root 版本并仅保留本地用户版本,这样我就可以让 xmobar 工作而无需 sudo。)

我想我应该注意我有 ubuntu 17.10.

你不会有每个包的两个版本。不同的 cabal-install 二进制文件共享同一个用户 packagedb 就好了。 但是,不同的用户会有不同的packagedbs。对于每个用户,用户 packagedb 将默认在 ~/.cabal/lib/~/.cabal/store/ 中(后者仅适用于 new-build)。

cabal 将二进制文件放入的 bin 目录,包括来自 cabal install cabal-install 的二进制文件在 ~/.cabal/bin 中。因此,您可以从这些 bindirs 中的任何一个中删除该程序。但你真的不需要从任何地方删除它。相反,您应该只确保您只 运行 它以 root 或本地用户身份使用。但是如果你真的想要,你可以只从 root 用户清除整个 ~/.cabal/ 目录。