Come posso impostare il proxy per Cabal?


9

Sto usando Ubuntu dietro un proxy (Windows). Vorrei usare l' cabalutilità.

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

L'URL del proxy è stato letto dall'ambiente. Il mio proxy richiede l'autenticazione, ma cabal vuole che l'URL del proxy inizi con un nome host, quindi forse mi richiederà credenziali ...

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)"'

Che cos'è setAuthorityGene come lo uso? Ancora più importante, posso abilitare l'accesso tramite il proxy di autenticazione? Dovrò scavare un tunnel?


Sto riscontrando un problema simile. Se trovi una soluzione alternativa, fammi sapere.
Dilawar,

@Dilawar C'è una spunta
Artem Koshelev,

Risposte:


2

Il mio approccio standard ai proxy ISA è di configurare un proxy di autenticazione locale come cntlm . Dopo aver installato cntlm sul tuo computer Ubuntu, lo configuri per l'autenticazione tramite NTLM nel proxy ISA con il tuo nome utente e password di Windows. Quindi imposta la HTTP_PROXYvariabile su http://localhost:3128(cioè la porta che cntlm sta ascoltando).

Il vantaggio di questo approccio è che solo un programma deve gestire il proxy Windows. Tutti gli altri programmi possono passare attraverso cntlm come gateway.



0

Ho funzionato con polipo . La mia università usa http-proxycon autenticazione. In /etc/polipo/configè necessario aggiungere queste righe

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

Ed esportazione http_proxy=http://localhost:8123". E ha funzionato come un fascino.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.