Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Please consider joining stackage #26

Closed
nomeata opened this issue Sep 2, 2015 · 6 comments
Closed

Please consider joining stackage #26

nomeata opened this issue Sep 2, 2015 · 6 comments
Milestone

Comments

@nomeata
Copy link

nomeata commented Sep 2, 2015

Hi Ryan,

this is a standard request of mine with projects I use, or which I add to Debian:

Please consider adding your package to Stackage. Essentially, this gives you free QA and early feedback when something breaks, i.e. before your users notice. It does not require you to use Stackage or stack yourself. See http://www.stackage.org/authors for details.

Greetings,
Joachim

@ryantrinkle
Copy link
Member

PR submitted: commercialhaskell/stackage#796

@Cypher1
Copy link

Cypher1 commented Sep 11, 2017

Can this be reopened. I also use stack for my Haskell based work and as currently Nix OS isn't supported by Reflex. This leaves only try-reflex as a way to run / build code in reflex and I don't like that it takes over my command line (and breaks all my tab-completion/zsh features).

Thanks

@3noch
Copy link
Member

3noch commented Sep 11, 2017

currently Nix OS isn't supported by Reflex.

@Cypher1 I'm not sure what you mean by this. Do you mean that up-to-date reflex is not in nixpkgs.haskellPackages? Or that stack doesn't work on NixOS (without nix integration)?

I actually use stack with its nix integration on NixOS (and macOS actually). It works quite well when used that way.

@Cypher1
Copy link

Cypher1 commented Sep 11, 2017

Hmm. Perhaps I've misunderstood this issue #27

Is there a guide to setting up Nix & Stack somewhere, I've found a few repos with that setup but they are all horribly out of date and so no longer build on current stack installs.

@3noch
Copy link
Member

3noch commented Sep 12, 2017

@Cypher1 I have a goal to document this better, but here's what I have as an example:

You can create default.nix with cabal2nix.

shell.nix

{ useGhc          ? true
, reflex-platform ? import ./reflex-platform {}
}:
let

  haskellPkgs = if useGhc then reflex-platform.ghc else reflex-platform.ghcjs;

  # Add development tools to the dependency tree
  # when working with GHC in the shell.
  devTools = if !useGhc then [] else [
    haskellPkgs.intero
    haskellPkgs.hlint_2_0_9
    haskellPkgs.stylish-haskell
  ];

  drv = import ./default.nix { inherit common; };

  drvWithDevTools = pkgs.haskell.lib.overrideCabal drv (
    { buildDepends ? [], ...}: {
      buildDepends = buildDepends ++ devTools;
    }
  );

in reflex-platform.workOn haskellPkgs drvWithDevTools

stack.nix

nix:
  enable: true
  packages: []
  shell-file: shell.nix

resolver: ghc-8.0.2
system-ghc: true
packages:
  - '.'

@Cypher1
Copy link

Cypher1 commented Sep 13, 2017

Thanks! I'll try it out

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

6 participants