Add build instructions for nix #213

Merged
bsima merged 2 commits from nix-build into master 2019-06-05 20:07:39 +02:00
6 changed files with 68 additions and 0 deletions

1
.gitignore vendored
View File

@ -12,3 +12,4 @@ local/
cabal.sandbox.config
cabal.project.local
.ghc.environment.*
result

View File

@ -94,6 +94,12 @@ log the size of the input, but _not_ the full input/output of requests.)
aura -A brittany
~~~~
- via `nix`:
~~~.sh
nix build -f release.nix # or 'nix-build -f release.nix'
nix-env -i ./result
~~~
# Editor Integration
#### Sublime text

38
default.nix Normal file
View File

@ -0,0 +1,38 @@
{ mkDerivation, aeson, base, butcher, bytestring, cmdargs
, containers, czipwith, data-tree-print, deepseq, directory, extra
, filepath, ghc, ghc-boot-th, ghc-exactprint, ghc-paths, hspec
, monad-memo, mtl, multistate, neat-interpolation, parsec, pretty
, random, safe, semigroups, stdenv, strict, syb, text, transformers
, uniplate, unsafe, yaml
}:
mkDerivation {
pname = "brittany";
version = "0.11.0.0";
src = ./.;
isLibrary = true;
isExecutable = true;
libraryHaskellDepends = [
aeson base butcher bytestring cmdargs containers czipwith
data-tree-print deepseq directory extra filepath ghc ghc-boot-th
ghc-exactprint ghc-paths monad-memo mtl multistate
neat-interpolation pretty random safe semigroups strict syb text
transformers uniplate unsafe yaml
];
executableHaskellDepends = [
aeson base butcher bytestring cmdargs containers czipwith
data-tree-print deepseq directory extra filepath ghc ghc-boot-th
ghc-exactprint ghc-paths monad-memo mtl multistate
neat-interpolation pretty safe semigroups strict syb text
transformers uniplate unsafe yaml
];
testHaskellDepends = [
aeson base butcher bytestring cmdargs containers czipwith
data-tree-print deepseq directory extra filepath ghc ghc-boot-th
ghc-exactprint ghc-paths hspec monad-memo mtl multistate
neat-interpolation parsec pretty safe semigroups strict syb text
transformers uniplate unsafe yaml
];
homepage = "https://github.com/lspitzner/brittany/";
description = "Haskell source code formatter";
license = stdenv.lib.licenses.agpl3;
}

5
pkgs.nix Normal file
View File

@ -0,0 +1,5 @@
{
url = "https://github.com/nixos/nixpkgs.git";
ref = "release-18.09";
rev = "b9fa31cea0e119ecf1867af4944ddc2f7633aacd";
}

5
release.nix Normal file
View File

@ -0,0 +1,5 @@
{ pkgs ? import (fetchGit (import ./pkgs.nix)) {}
, compiler ? "ghc822"
}:
pkgs.haskell.packages.${compiler}.callPackage ./shell.nix {}

13
shell.nix Normal file
View File

@ -0,0 +1,13 @@
{ pkgs ? import (fetchGit (import ./pkgs.nix)) {}
, compiler ? "ghc822"
}:
pkgs.haskell.packages.${compiler}.developPackage {
root = ./.;
name = "brittany";
overrides = with pkgs.haskell.lib; self: super: {
};
source-overrides = {
ghc-exactprint = "0.5.8.0";
};
}