Appearance • Motivation • Installation • Usage • Tests • Documentation
λsudoku was born in a haskell universty course at the technical university in Vienna. The goal was to create a neat looking and user-friendly haskell game using modern technologies and libraries, namely GTK3 and haskell-gi. The sudokus get loaded from the internet, parsed in haskell and made playable through a native gtk interface. Special thank goes to Kjell Ericson for letting me use is sudoku generator web-app.
λsudoku has a few prerequesites. If they are already installed on your system, you can skip the following steps.
- At least GHC 8.0.2 and cabal 1.24
sudo add-apt-repository -y ppa:hvr/ghc
sudo apt-get update
sudo apt-get install cabal-install-1.24 ghc-8.0.2
export PATH=/opt/ghc/8.0.2/bin:/opt/cabal/1.24/bin:$PATH
- GTK+3.20 and other packages needed for the UI
sudo add-apt-repository ppa:gnome3-team/gnome3-staging
sudo apt-get update
sudo apt-get install build-essential libgtk-3-dev libgirepository1.0-dev libcairo2-dev libgdk-pixbuf2.0-dev
- The happy haskell package
cabal update
cabal install happy
With all dependencies in place, the hsudoku game can be installed:
git clone git@github.com:marcelmoosbrugger/hsudoku.git
cd hsudoku
cabal install --only-dependencies
cabal build
If everything is installed the game can be run from the installation folder:
dist/build/hsudoku/hsudoku
Tests can easily be run with:
cabal test
Documentation of the code and the hackage package can be found on hackage/hsudoku
This project is licensed under the terms of the MIT license. See the LICENSE file.