如何设置Cabal的代理?


9

我在(Windows)代理后面使用Ubuntu。我想使用该cabal实用程序。

jem@Respect:~$ cabal update
Config file path source is default config file.
Config file /home/jem/.cabal/config not found.
Writing default configuration to /home/jem/.cabal/config
Downloading the latest package list from hackage.haskell.org
Warning: invalid http proxy uri:
"http://domain\\user:pass@internetproxy:3128/"
Warning: proxy uri must be http with a hostname
Warning: ignoring http proxy, trying a direct connection
^C

已从环境中读取代理URL。我的代理需要身份验证,但cabal希望代理URL以主机名开头,因此也许会提示我输入凭据...

jem@Respect:~$ http_proxy=http://internetproxy:3128/ cabal update
Downloading the latest package list from hackage.haskell.org
No action for prompting/generating user+password credentials  provided (use: setAuthorityGen); returning Nothing
cabal: Failed to download index 'ErrorMisc "Unsucessful HTTP code: (4,0,7)"'

什么是setAuthorityGen?如何使用?更重要的是,我可以通过身份验证代理启用访问吗?我需要隧道吗?


我有类似的问题。如果您找到解决方法,请告诉我。
Dilawar

@Dilawar Bugtracker hackage.haskell.org/trac/hackage/ticket/855中有一个滴答声
Artem Koshelev 2012年

Answers:


2

我对ISA代理的标准方法是配置本地身份验证代理,如cntlm。在Ubuntu计算机上安装cntlm后,您可以将其配置为使用Windows用户名和密码通过ISA代理处的NTLM进行身份验证。然后将HTTP_PROXY变量设置为http://localhost:3128(即,cntlm正在侦听的端口)。

这种方法的优势在于,只有一个程序必须处理Windows代理。通过使用cntlm作为其网关,所有其他程序都可以通过。



0

我已经和polipo合作了。我的大学使用http-proxy认证。在/etc/polipo/config你需要添加这些行

parentProxy = "proxy.server.com:80"
parentAuthCredentials = "myusername:mypassword"

并出口http_proxy=http://localhost:8123"。它就像一个魅力。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.