commercialhaskell / stack

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

stack does not honor --no-nix under NixOS #4002

Closed MartinPotier closed 6 years ago

MartinPotier commented 6 years ago

Commit b60819cbe9dc5e97cdc3771a0fb538d21ab190d2 introduces the “Note: Enabling Nix integration, as it is required under NixOS”. Sometimes you don't want to use nix mode, especially when using the docker integration at the same time for producing binaries for other architectures.

Steps to reproduce

run stack --no-nix under NixOS, watch the message “Note: Enabling Nix integration, as it is required under NixOS”.

Expected

Don't use nix integration when --no-nix is set

It's real bad. Right now I have to revert since the build toolchain is broken because of stack.

Version

Version 1.7.1 x86_64
Compiled with:
- Cabal-2.2.0.1
- Glob-0.9.2
- HUnit-1.6.0.0
- QuickCheck-2.10.1
- StateVar-1.1.1.0
- aeson-1.2.4.0
- aeson-compat-0.3.7.1
- annotated-wl-pprint-0.7.0
- ansi-terminal-0.8.0.2
- ansi-wl-pprint-0.6.8.2
- array-0.5.2.0
- asn1-encoding-0.9.5
- asn1-parse-0.9.4
- asn1-types-0.3.2
- async-2.1.1.1
- attoparsec-0.13.2.2
- attoparsec-iso8601-1.0.0.0
- auto-update-0.1.4
- base-4.10.1.0
- base-compat-0.9.3
- base-orphans-0.7
- base-prelude-1.2.0.1
- base16-bytestring-0.1.1.6
- base64-bytestring-1.0.0.1
- basement-0.0.7
- bifunctors-5.5.2
- binary-0.8.5.1
- bindings-uname-0.1
- bitarray-0.0.1.1
- blaze-builder-0.4.1.0
- blaze-html-0.9.0.1
- blaze-markup-0.8.2.1
- byteable-0.1.1
- bytestring-0.10.8.2
- call-stack-0.1.0
- case-insensitive-1.2.0.11
- cereal-0.5.5.0
- clock-0.7.2
- colour-2.3.4
- comonad-5.0.3
- conduit-1.3.0.2
- conduit-extra-1.3.0
- connection-0.2.8
- containers-0.5.10.2
- contravariant-1.4.1
- cookie-0.4.4
- cpphs-1.20.8
- cryptohash-0.11.9
- cryptohash-sha256-0.11.101.0
- cryptonite-0.25
- cryptonite-conduit-0.2.2
- data-default-class-0.1.2.0
- deepseq-1.4.3.0
- digest-0.0.1.2
- directory-1.3.0.2
- distributive-0.5.3
- dlist-0.8.0.4
- easy-file-0.2.1
- echo-0.1.3
- ed25519-0.0.5.0
- either-5
- exceptions-0.8.3
- extra-1.6.6
- fail-4.9.0.0
- fast-logger-2.4.11
- file-embed-0.0.10.1
- filelock-0.1.1.2
- filepath-1.4.1.2
- foundation-0.0.20
- free-5.0.1
- fsnotify-0.2.1.1
- generic-deriving-1.12.1
- ghc-boot-th-8.2.2
- ghc-prim-0.5.1.1
- gitrev-1.3.1
- hackage-security-0.5.3.0
- hashable-1.2.7.0
- haskell-src-exts-1.20.2
- haskell-src-meta-0.8.0.2
- hinotify-0.3.9
- hourglass-0.2.11
- hpack-0.28.2
- hpc-0.6.0.3
- hspec-2.4.8
- hspec-core-2.4.8
- hspec-discover-2.4.8
- hspec-expectations-0.8.2
- hspec-smallcheck-0.5.0
- http-api-data-0.3.7.2
- http-client-0.5.12.1
- http-client-tls-0.3.5.3
- http-conduit-2.3.1
- http-types-0.12.1
- integer-gmp-1.0.1.0
- integer-logarithms-1.0.2.1
- lifted-base-0.2.3.12
- logict-0.6.0.2
- memory-0.14.16
- microlens-0.4.8.3
- microlens-th-0.4.1.3
- mime-types-0.1.0.7
- mintty-0.1.1
- monad-control-1.0.2.3
- monad-logger-0.3.28.5
- monad-loops-0.4.3
- mono-traversable-1.0.8.1
- mtl-2.2.2
- mustache-2.3.0
- neat-interpolation-0.3.2.1
- network-2.6.3.5
- network-uri-2.6.1.0
- old-locale-1.0.0.7
- old-time-1.1.0.3
- open-browser-0.2.1.0
- optparse-applicative-0.14.2.0
- optparse-simple-0.1.0
- parsec-3.1.13.0
- path-0.6.1
- path-io-1.3.3
- path-pieces-0.2.1
- pem-0.2.4
- persistent-2.8.2
- persistent-sqlite-2.8.1.2
- persistent-template-2.5.4
- polyparse-1.12
- pretty-1.1.3.3
- primitive-0.6.3.0
- process-1.6.1.0
- profunctors-5.2.2
- project-template-0.2.0.1
- quickcheck-io-0.2.0
- random-1.1
- regex-applicative-0.3.3
- regex-applicative-text-0.1.0.1
- resource-pool-0.2.3.2
- resourcet-1.2.1
- retry-0.7.6.2
- rio-0.1.1.0
- rts-1.0
- safe-0.3.17
- scientific-0.3.5.3
- semigroupoids-5.2.2
- semigroups-0.18.4
- setenv-0.1.1.3
- silently-1.2.5
- smallcheck-1.1.3.1
- socks-0.5.6
- split-0.2.3.3
- stm-2.4.5.0
- stm-chans-3.0.0.4
- store-0.4.3.2
- store-core-0.4.1
- streaming-commons-0.1.19
- syb-0.7
- tagged-0.8.5
- tar-0.5.1.0
- template-haskell-2.12.0.0
- temporary-1.2.1.1
- text-1.2.3.0
- text-metrics-0.3.0
- tf-random-0.5
- th-abstraction-0.2.6.0
- th-expand-syns-0.4.4.0
- th-lift-0.7.8
- th-lift-instances-0.1.11
- th-orphans-0.13.5
- th-reify-many-0.1.8
- th-utilities-0.2.0.1
- time-1.8.0.2
- time-locale-compat-0.1.1.4
- tls-1.4.1
- transformers-0.5.2.0
- transformers-base-0.4.4
- transformers-compat-0.5.1.4
- typed-process-0.2.2.0
- unicode-transforms-0.3.4
- unix-2.7.2.2
- unix-compat-0.5.0.1
- unix-time-0.3.8
- unliftio-0.2.6.0
- unliftio-core-0.1.1.0
- unordered-containers-0.2.9.0
- uri-bytestring-0.3.1.1
- uuid-types-1.0.3
- vector-0.12.0.1
- vector-algorithms-0.7.0.1
- void-0.7.2
- x509-1.7.3
- x509-store-1.6.6
- x509-system-1.6.6
- x509-validation-1.6.10
- yaml-0.8.29
- zip-archive-0.3.2.4
- zlib-0.6.2

Warning: this is an unsupported build that may use different versions of
dependencies and GHC than the officially released binaries, and therefore may
not behave identically.  If you encounter problems, please try the latest
official build by running 'stack upgrade --force-download'.
borsboom commented 6 years ago

I think that change was introduced in https://github.com/commercialhaskell/stack/pull/3938. @rdnetto can you make another PR so that this default behaviour can be disabled using --no-nix?

MartinPotier commented 6 years ago

@rdnetto small bump?

rdnetto commented 6 years ago

Sorry for the delay in replying - I've been busy and only just got the email. Sorry for the regression - I completely forgot that docker mode was a thing. Will get a PR up that fixes it ASAP.