Haskell 阴谋集团沙箱五。全局包数据库

Haskell 阴谋集团沙箱五。全局包数据库,haskell,ghc,cabal,Haskell,Ghc,Cabal,在cabal沙箱中安装时,cabal仍将使用全局包db中的包(特别是来自Haskell平台的包)。这可能导致安装冲突。是否可以将cabal配置为忽略全局包db 我看到相应的功能已通过-no global package db选项(请参阅)在ghc本身中实现,如果您不将--global标志传递给它,ghc pkg将忽略全局包db。有没有类似的方法来配置阴谋集团 此外,还有一个针对阴谋集团的已解决问题,这意味着相反的行为(重建一切,而不是使用已安装的Haskell平台的软件包),因此我不确定这种行为

在cabal沙箱中安装时,cabal仍将使用全局包db中的包(特别是来自Haskell平台的包)。这可能导致安装冲突。是否可以将cabal配置为忽略全局包db

我看到相应的功能已通过
-no global package db
选项(请参阅)在
ghc
本身中实现,如果您不将
--global
标志传递给它,
ghc pkg
将忽略全局包db。有没有类似的方法来配置阴谋集团


此外,还有一个针对阴谋集团的已解决问题,这意味着相反的行为(重建一切,而不是使用已安装的Haskell平台的软件包),因此我不确定这种行为是否随着时间的推移而改变;参见

您应该能够通过
阴谋集团配置
--package db
标志,如下所示:

特别是,您可以传递它
clear
,然后只传递沙盒数据库

这篇文章对所有这些都进行了非常详细的讨论

--package-db=DB                  Append the given package database to the
                                 list of package databases used (to satisfy
                                 dependencies and register into). May be a
                                 specific file, 'global' or 'user'. The
                                 initial list is ['global'], ['global',
                                 'user'], or ['global', $sandbox],
                                 depending on context. Use 'clear' to reset
                                 the list to empty. See the user guide for
                                 details.