Haskell IDE
Haskell CSS Shell NSIS Ruby Batchfile Other
Latest commit 441e6ae Feb 22, 2017 @hamishmack hamishmack committed on GitHub Update Readme.md
Failed to load latest commit information.
appveyor Add WebKit1 support back in for Windows Jan 2, 2017
bew Use gi-webkit2 Output pane has some TODOs Oct 15, 2016
data Fix github dark Nov 12, 2016
docs Fix documentation message Nov 12, 2016
language-specs Added arc compatible theme, updated haskell syntax (regex order matters) Nov 12, 2016
linux Use newer Fedora and build webkitgtk3 with patch Apr 18, 2016
main Move YiConfig to a proper place Sep 2, 2016
osx Bump version to Dec 2, 2016
pics added icons and names for the test, benchmark, and documents build op… Feb 10, 2017
po New version of the pt_BR translation file. Mar 30, 2013
scripts Use `cabal new-build` to build OS X binary DMG Jun 23, 2016
src/IDE Fix duplication of packages in workspace Feb 12, 2017
tests Disable tests for now (need to use haskell-gi) Jan 15, 2017
travis Fix for travis Dec 7, 2016
vendor Updates for GHC 8.0.2 Feb 15, 2017
win32 Fix windows border problem with smaller radius box-shadow Sep 16, 2016
xobl Support for GHC 8.0.1 and use latest haskell-gi May 25, 2016
.dockerignore Vagrant file for Leksah, GHCJS and "GHC on Wine" May 31, 2015
.gitignore Add *.local files to .gitignore Sep 2, 2016
.gitmodules Updates for GHC 8.0.2 Feb 15, 2017
.travis.yml Update for latest haskell-gi Dec 6, 2016
Contributing.md Fix hackage links to point to latest version Sep 4, 2016
Dockerfile Use newer Fedora and build webkitgtk3 with patch Apr 18, 2016
LICENSE preparing first beta Jan 20, 2009
LICENSE.rtf Use WiX to make an MSI file for the windows binaries Mar 1, 2014
Readme.md Update Readme.md Feb 22, 2017
Setup.lhs Adding flags for hgettext conditional compilation support. Mar 26, 2013
SetupLocale.lhs Adding flags for hgettext conditional compilation support. Mar 26, 2013
appveyor.yml Fix wixtoolset install on AppVeyor Jan 2, 2017
cabal.project Updates for GHC 8.0.2 Feb 15, 2017
default.nix Add default.nix and update directory upper bound Jan 27, 2017
leksah.cabal added icons and names for the test, benchmark, and documents build op… Feb 10, 2017
leksah.sh Modified ./leksah.sh, fixed server version Feb 17, 2017
sources.txt Switch to Gtk2Hs 0.13 and leksah-server 0.14 Jun 29, 2014
stack.osx.yaml Updates for GHC 8.0.2 Feb 15, 2017
stack.yaml Updates for GHC 8.0.2 Feb 15, 2017


Leksah, an Integrated Development Environment for Haskell

Build Status

Leksah aims to integrate various Haskell development tools to provide a practical and pleasant development environment. The user interface is a mix of GTK+ and WebKit based components.

Documentation can be found on leksah.org.

Getting Leksah


Leksah requires ghc --version >=7.10.3 and cabal --version >=1.24. To get them go to haskell.og/download and choose the Minimal GHC or Haskell Platform.

Building from source

We have completed a port of Leksah from Gtk2Hs to haskell-gi. Not all of the code is in Hackage yet so to build it you can either use Xobl or follow the instructions below.

Step 1: Install C libraries

sudo dnf install gobject-introspection-devel webkitgtk4-devel gtksourceview3-devel
sudo apt-get install libgirepository1.0-dev libwebkit2gtk-4.0-dev libgtksourceview-3.0-dev
Arch Linux
sudo pacman -S gobject-introspection gobject-introspection-runtime gtksourceview3 webkit2gtk
OS X MacPorts
sudo port install gobject-introspection webkit2-gtk gtksourceview3 gtk-osx-application-gtk3 adwaita-icon-theme`

You will also need to build a MacPorts compatible of GHC. First install GHC some other way then unpack the source for the GHC version you want to use and run:

sudo port install libxslt gmp ncurses libiconv llvm-3.5 libffi
./configure --prefix=$HOME/ghc-8.0.1 --with-iconv-includes=/opt/local/include --with-iconv-libraries=/opt/local/lib --with-gmp-includes=/opt/local/include --with-gmp-libraries=/opt/local/lib --with-system-libffi --with-ffi-includes=/opt/local/lib/libffi-3.2.1/include --with-ffi-libraries=/opt/local/lib --with-nm=/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/nm-classic
make install
echo 'PATH: '"$PATH"

Make sure the $HOME/ghc-8.0.1/bin is present in PATH.

OS X Homebrew

It might be possible to build Leksah using Homebrew now we have switched to WebKit 2. If you can figure it out please send us the details or better yet a pull request to update this file. Raise an issue if you try and it does not work.

Windows MSYS2


Then in Bash shell with administrator privileges execute:

choco install ghc
pacman -S mingw64/mingw-w64-x86_64-pkg-config mingw64/mingw-w64-x86_64-gobject-introspection mingw64/mingw-w64-x86_64-gtksourceview3 mingw64/mingw-w64-x86_64-webkitgtk3

Set the following environment variables:

SET PATH=%APPDATA%\cabal\bin;C:\msys64\mingw64\bin;C:\msys64\usr\bin;C:\ProgramData\chocolatey\lib\ghc\tools\ghc-8.0.2\bin;C:\ProgramData\chocolatey\lib\cabal\tools;%PATH%
SET PKG_CONFIG_PATH=C:\msys64\mingw64\lib\pkgconfig
SET XDG_DATA_DIRS=C:\msys64\mingw64\share

(change C:\ProgramData\chocolatey\lib\ghc\tools\ghc-8.0.2\bin if a newer version is installed)

Step 2: Clone repository and its submodules

git clone --recursive https://github.com/leksah/leksah.git
cd leksah

(Cabal variant) Step 3.a: Build

Step 3.a.1: Install extra tools
cabal update
cabal install alex happy
cabal install haskell-gi

Make sure ~/.cabal/bin is present in the PATH (Windows: Make sure %APPDATA%\cabal\bin is present in the PATH).

Step 3.a.2: Build and run Leksah
OS X using MacPorts
XDG_DATA_DIRS=/opt/local/share ./leksah.sh
All other OS'es

(Stack variant) Step 3.b: Build

Step 3.b.1: Install extra tools
stack setup --upgrade-cabal
stack install alex happy
stack install haskell-gi
stack install gtk2hs-buildtools
Step 3.b.2: Build and run Leksah
For Mac OS
stack install --stack-yaml stack.osx.yaml
stack exec leksah
All other OS'es
stack install
stack exec leksah