commercialhaskell / stack

The Haskell Tool Stack
http://haskellstack.org
BSD 3-Clause "New" or "Revised" License
3.98k stars 845 forks source link

Global `--offline` flag to prevent internet access #1594

Open mgsloan opened 8 years ago

mgsloan commented 8 years ago

This flag would skip attempting to download any resources. In the case that a command can still do something reasonable without the download, it should proceed onwards, possibly emitting a warning.

anderspapitto commented 7 years ago

I'd like this flag too. My use case is that I want to manage installing ghc and packages via the system package manager (Nix), and only use stack for the command line interface (e.g. to support using intero from emacs). I want to be able to tell stack to not go behind my back and download/install things.

ghorn commented 7 years ago

My fear is that stack will fail if it doesn't have internet access. Is this ever possible?

marvinhagemeister commented 7 years ago

For context: I just started out learning haskell and usually only code while commuting via train. The internet connection is spotty at best and an offline mode, similar to the one of yarn, where downloads are cached globally would be awesome 👍

cblp commented 7 years ago

@marvinhagemeister the download already are cached globally. This flag is for the opposite behaviour — fail in presence of internet access.

marvinhagemeister commented 7 years ago

Oh I see, sorry for hijacking this thread

decentral1se commented 7 years ago

https://github.com/commercialhaskell/stack/issues/2982#issuecomment-280122048 is related.

borsboom commented 6 years ago

Potential approach: #3813

SnowOnion commented 5 years ago

I, a former Haskell course TA in China (mainland), under Internet blocking of GFW, need this.

Many students I helped had suffered from:

$ stack new xxx
……
Exception was: HttpExceptionRequest Request {
  host                 = "s3.amazonaws.com"
  port                 = 443
……

Meanwhile I had been suffering from telling them to use domestic mirror (e.g. TUNA’s (howto)) which not always solve the network issue, or to use VPN (or ShadowSocks and to set HTTP proxy for shell).

dbaynard commented 5 years ago

@mgsloan is this actually awaiting a PR? If nobody is working on it I'll change to 'help wanted'.

There have been some related changes — e.g. #4385 — and this issue may be a more general way to proceed.

codygman commented 4 years ago

I think this might relate to #5319