Contents Previous Next

Setup and installation

module Lang.setup where

1. Using Docker

We’ve done most of the heavy-lifting, and packaged everything into a docker container. This is a platform-independent solution and can be run inside any major operating system. But first we would need to:

  1. Install docker
curl -fsSL -o

OR download and install docker binaries for your operating system here.

  1. Pull the pre-configured docker image
docker pull ixaxaar/agda:latest


To run the agda compiler with docker:

docker run -it -v /local/source/directory:/directory/inside/container ixaxaar/agda bash
agda /directory/inside/container/whatever.agda

2. Using Stack

Stack is one of haskell’s package managers, apart from Cabal. Stack uses cabal internally and is easier to practically deal with. In order to do a stack-based install:

  1. Install Stack:
curl -sSL | sh
  1. Clone and cd into it. Proceed to use stack to install agda:
stack --resolver=lts-13.25 install Agda- EdisonCore- data-hash- equivalence-0.3.4 geniplate-mirror-0.7.6 EdisonAPI-1.3.1 STMonadTrans-0.4.3

3. Via package managers

Note: none of these are guaranteed to work. This way of installation might just work, or might require one to pull significant amounts of one’s own hair.

apt (Debian, Ubuntu, Mint, Elementary, MX Linux etc)

sudo apt-get install agda-mode agda-stdlib

yum (Fedora, openSUSE, RHEL)

sudo yum install Agda

pacman (Arch, Manjaro, Antergos)

sudo pacman -S agda agda-stdlib

brew (OSX)

brew install agda

Other ways to install Agda are documented in the official documentation.

That’s pretty much it. Now we go ahead and learn some basics of the language.

Naming Conventions