Merge pull request #411 from hdgarrood/use-stack

Recommend Stack in installation/basics tutorials
This commit is contained in:
Jasper Van der Jeugt 2016-03-28 11:15:14 +01:00
commit 43b1cb137d
2 changed files with 22 additions and 32 deletions

View file

@ -6,17 +6,13 @@ author: Jasper Van der Jeugt
Installation
------------
Installation is provided using [cabal], and some packages are available for
different distributions.
Installation is provided via Hackage, and some packages are available for
different distributions. For installation from source (i.e. via Hackage),
[stack] is recommended:
$ cabal install hakyll
$ stack install hakyll
[cabal]: http://www.haskell.org/cabal/
If you have a recent installation of `cabal` and your time is somewhat valuable,
use:
$ cabal install -j hakyll
[stack]: http://www.haskellstack.org/
Linux distro packages:
@ -34,27 +30,21 @@ started:
This creates a folder `my-site` in the current directory, with some example
content and a generic configuration.
If `hakyll-init` is not found, you should make sure `$HOME/.cabal/bin` is in
your `$PATH`.
(If you're on OS X you may not have a bin directory in `$HOME/.cabal`. In this
case, check `$HOME/Library/Haskell/bin` and put it on your path if you find
`hakyll-init` there. See [here] for more information on installation paths on
OS X.)
[here]: http://www.haskell.org/haskellwiki/Mac_OS_X_Common_Installation_Paths
If `hakyll-init` is not found, you should make sure your stack bin path
(usually `$HOME/.local/bin`) is in your `$PATH`. You can check your stack local
bin path by running `stack path --local-bin-path`.
The file `site.hs` holds the configuration of your site, as an executable
haskell program. We can compile and run it like this:
$ cd my-site
$ ghc --make -threaded site.hs
$ ./site build
$ stack build
$ stack exec site build
If you installed `hakyll` with a preview server (this is the default), you can
now use
$ ./site watch
$ stack exec site watch
and have a look at your site at
[http://localhost:8000/](http://localhost:8000/).

View file

@ -7,24 +7,24 @@ Building and cleaning
---------------------
If you followed along with the previous tutorial, you should now have the
example site up and running. By running `./site build`, you created two
directories:
example site up and running. By running `stack exec site build`, you created
two directories:
- `_site`, with your site as HTML files, ready to be deployed;
- `_cache`, which Hakyll uses internally.
`./site clean` removes these directories, and `./site rebuild` performs a
`clean` and then a `build`.
`stack exec site clean` removes these directories, and `stack exec site
rebuild` performs a `clean` and then a `build`.
In general, you want to use `./site build` when you just made changes to the
contents of your website. If you made important changes to `site.hs`, you need
to recompile `site.hs` followed by a rebuild:
In general, you want to use `stack exec site build` when you just made changes
to the contents of your website. If you made changes to `site.hs`, you need to
recompile `site.hs` followed by a rebuild:
ghc --make site.hs
./site rebuild
stack build
stack exec site rebuild
At this point, feel free to change some files, `./site build` and see what
happens!
At this point, feel free to change some files, `stack exec site build` and see
what happens!
Pages and metadata
------------------