Nothing :: Maybe something
Find a file
2015-06-09 15:58:22 +02:00
src Update command-line message 2015-05-02 12:02:57 +02:00
.gitignore Initial commit 2015-05-02 11:22:03 +02:00
.travis.yml Tell Travis to run the compiled binary 2015-05-24 15:54:29 +02:00
cabal.config Use only tested packages 2015-05-02 21:28:51 +02:00
LICENSE Initial commit 2015-05-02 11:22:03 +02:00
Nothing.cabal Update build instructions 2015-06-01 23:21:41 +02:00
README.md cabal install --dependencies-only 2015-06-09 15:58:22 +02:00
Setup.hs cabal init - cabal and ghc versions as stated below 2015-05-02 12:01:10 +02:00

Nothing :: Maybe something Build Status

A minimal Haskell project.

This project evaluates to Nothing at the moment.
Maybe you can turn it into something that's Just spectacular

The guides How to write a Haskell program and Structure of a Haskell project provides some very good instructions for getting a basic Haskell project up and running.

This project (inspired by hnop) aims to turn the above guides into a runnable project that can be forked and used as a base for other Haskell projects.

How to use this as a base for your new project

  1. Fork this repository.
  2. Rename your new git repository and clone it.
  3. Customise and rename references to Nothing in your local checkout:
$ git mv Nothing.cabal my-new-project.cabal
  • Modify my-new-project.cabal
  • Modify README.md
  • Change the LICENSE file to reflect your project license.
  • Find and change any mentions of Nothing that you may have missed:
$ git grep Nothing

If I can't fork my own project and I have to clone :-/

Clone this repo, but use the name of the new project
$ git clone git@github.com:apauley/Nothing.git my-new-project
Create my-new-project in GitHub

But don't let GitHub initialise it with any files such as a README, LICENSE or .gitignore

Change the git origin to the new project
$ cd my-new-project/
$ git remote rm origin
$ git remote add origin git@github.com:apauley/my-new-project.git
Customise as above
Push and track the new upstream master
$ git commit -a -m 'Customised initial config'
$ git push -u origin master

Building

Needed only once after cloning the repo:

$ cabal sandbox init
$ cabal update
$ cabal install --dependencies-only
$ cabal configure

Build after each code change:

$ cabal build -j --ghc-options=-Werror

Running the command-line executable

$ ./dist/build/Nothing/Nothing