Skip to content

Commit e68e317

Browse files
rvlangerman
authored andcommitted
docs: Add instructions for installing nix-tools (#87)
* docs: Fix some sentences in the introduction * docs: Add instructions for installing nix-tools Resolves #85 * docs: Add IRC channel to readme Because our documentation isn't perfect yet, users are likely to have questions.
1 parent 8ffa7cd commit e68e317

File tree

3 files changed

+30
-9
lines changed

3 files changed

+30
-9
lines changed

README.org

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
#+STARTUP: showall hidestars
2+
13
* Alternative Haskell Infrastructure for Nixpkgs
24

35
[[https://travis-ci.org/input-output-hk/haskell.nix][https://travis-ci.org/input-output-hk/haskell.nix.svg?branch=master]]
@@ -8,7 +10,7 @@ It works by automatically translating your Cabal or Stack project and
810
its dependencies into Nix code. Most of your dependencies are already
911
translated, so you generally won't have too much generated code.
1012

11-
For the full documentation, see https://input-output-hk.github.io/haskell.nix/.
13+
For the documentation, see https://input-output-hk.github.io/haskell.nix/.
1214

1315
** Quickstart
1416

@@ -32,3 +34,8 @@ Haskell packages in Nix. It depends on other repos, which are:
3234

3335
- [[https://github.com/input-output-hk/stackage.nix][stackage.nix]] — all of the [[https://www.stackage.org/][Stackage]] snapshots, converted to Nix
3436
expressions.
37+
38+
** IRC Channel
39+
40+
Join the [[https://www.irccloud.com/invite?channel=%23nix-tools&hostname=irc.freenode.net&port=6697&ssl=1][#nix-tools]] channel on irc.freenode.net to get help or discuss
41+
the development of =haskell.nix= and =nix-tools=.

docs/index.md

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -50,9 +50,9 @@ tricky to do. This also leads to the cyclic dependencies issue.
5050

5151
### cyclic dependencies
5252

53-
Because the Haskell builder in `nixpkgs` exposes packages at the
54-
package level, if packages mutually depend on each other through tests
55-
and libraries, lead to cyclic dependencies that nix can't resolve. By
53+
The Haskell builder in `nixpkgs` exposes packages at the
54+
package level. If packages mutually depend on each other through tests
55+
and libraries, this leads to cyclic dependencies that nix can't resolve. By
5656
exposing the components to nix as separate derivations this will only
5757
occur if you have mutually dependent components.
5858

@@ -73,17 +73,17 @@ the optimum.
7373

7474
### more logic in nix
7575

76-
The `cabal2nix` tool has a resolver that resolved system dependencies
77-
and licenses to values in `nixpkgs`. This logic end up being a simple
78-
dictionary lookup and can be a simple nix expression. This also
76+
The `cabal2nix` tool has a resolver that resolves system dependencies
77+
and licenses to values in `nixpkgs`. This logic ends up being a simple
78+
dictionary lookup and therefore can be a simple nix expression. This also
7979
offloads some of the work the cabal to nix translation tool needs to
8080
do into nix, and as such if changes are necessary (or needed to be
8181
performed ad hoc) there is no need to rebuild the conversion tool and
8282
subsequently mark every derived expression as out of date.
8383

84-
### decoupleing
84+
### decoupling
8585

86-
Finally by treating Haskell.nix and nixpkgs as separate entities we
86+
Finally, by treating Haskell.nix and nixpkgs as separate entities we
8787
can decouple the Haskell packages and infrastructure from the nixpkgs
8888
package set, and rely on it to provide us with system packages while
8989
staying up to date with Haskell packages from hackage while retaining

docs/user-guide.md

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,20 @@ produce a `pkgs.nix` expressions. Getting a copy of the haskell.nix,
66
hackage.nix (and potentially stackage.nix) source will then equip us
77
to produce derivations that we can `nix build`.
88

9+
## Installing `nix-tools`
10+
11+
To build the latest `nix-tools` and store the result at `./nt`, run:
12+
13+
```bash
14+
nix build -f https://github.com/input-output-hk/haskell.nix/archive/master.tar.gz nix-tools --out-link nt
15+
```
16+
17+
If you would like to then install `nix-tools` into your profile, run:
18+
19+
```bash
20+
nix-env -i ./nt
21+
```
22+
923
## Setup
1024

1125
The general structure will be the same for haskell.nix, independent of

0 commit comments

Comments
 (0)