|
1 | 1 | Download |
2 | 2 | ======== |
3 | 3 |
|
| 4 | +Prerequisites |
| 5 | +------------- |
4 | 6 |
|
5 | | -*IMPORTANT: The Idris website and install instructions are out of date. We are |
6 | | -working on rectifying this as soon as possible. In the meantime, for installing |
7 | | -you will likely want to use* |
8 | | -`pack <https://github.com/stefan-hoeck/idris2-pack>`__, |
9 | | -*and for up-to-date information, please see the* |
10 | | -`Idris2 GitHub Repository <https://github.com/idris-lang/Idris2/>`__. |
| 7 | +In order to install Idris 2, you need: |
| 8 | + |
| 9 | +* Either `Chez Scheme <https://cisco.github.io/ChezScheme/>`_ or |
| 10 | + `Racket <https://racket-lang.org>`_, to build the bootstrapping Scheme source. |
| 11 | +* ``bash``, with ``realpath``. On Linux, you probably already have this. On |
| 12 | + a Mac, you can install this with ``brew install coreutils``. |
| 13 | +* A C compiler, to build the library support code. |
11 | 14 |
|
12 | 15 |
|
13 | 16 | Idris 2 |
14 | 17 | ------- |
15 | 18 |
|
16 | | -The latest released version is Idris2-0.7.0, |
17 | | -`released 2023-12-22 <{filename}../posts/idris2-0-7-0-released.rst>`_. |
| 19 | +The easiest way to install and use Idris 2, is to use the package manager ``pack`` – |
| 20 | +please see `pack's install & usage instructions <https://github.com/stefan-hoeck/idris2-pack>`_. |
18 | 21 |
|
19 | | -You can install and use Idris 2 via either: |
| 22 | +This will install the cutting edge version of the compiler, as well as handle |
| 23 | +your dependencies using the |
| 24 | +`pack collection <https://github.com/stefan-hoeck/idris2-pack-db/blob/main/collections/HEAD.toml>`_. |
| 25 | +You will have to use ``pack build`` instead of ``idris2 --build`` to compile a |
| 26 | +package. |
20 | 27 |
|
21 | | -* ``pack``, the package manager – please see |
22 | | - `pack's install instructions <https://github.com/stefan-hoeck/idris2-pack>`_. |
23 | | -* The release tarball – |
24 | | - `idris2-0.7.0.tgz <{static}../releases/idris2-0.7.0.tgz>`_ |
25 | | - `(SHA 256 hash) <{static}../releases/idris2-0.7.0.tgz.sha256>`__. |
| 28 | +If you already use ``pack``, you can update your Idris version to the latest version |
| 29 | +in development by using ``pack switch latest`` ([#f1]_). If you wish to use a specific |
| 30 | +release with ``pack``, currently the only way to do this is to find the release |
| 31 | +date, and then switch to its nightly collection by using, for example, |
| 32 | +``pack switch nightly-231222`` (which would switch to the 0.7.0 release). |
26 | 33 |
|
27 | | -Both include generated Scheme sources sufficient for bootstrapping, so you don't |
28 | | -need an existing Idris 2 system to build. You need: |
| 34 | +The latest formally released version is Idris2-0.7.0, |
| 35 | +`released 2023-12-22 <{filename}../posts/idris2-0-7-0-released.rst>`_, |
| 36 | +with its associated source tarball, which could alternatively be used for |
| 37 | +installation, forgoing ``pack`` (packages would have to be managed manually, via |
| 38 | +scripts, or via other software): |
29 | 39 |
|
30 | | -* Either `Chez Scheme <https://cisco.github.io/ChezScheme/>`_ or `Racket |
31 | | - <https://racket-lang.org>`_ to build the generated Scheme source |
32 | | -* ``bash``, with ``realpath``. On Linux, you probably already have this. On |
33 | | - a Mac, you can install this with ``brew install coreutils``. |
34 | | -* A C compiler, to build the library support code. |
| 40 | +* `idris2-0.7.0.tgz <{static}../releases/idris2-0.7.0.tgz>`_ |
| 41 | + `(SHA 256 hash) <{static}../releases/idris2-0.7.0.tgz.sha256>`__ |
| 42 | + |
| 43 | +Both ``pack`` and the release tarball include generated Scheme sources |
| 44 | +sufficient for bootstrapping, so you don't need an existing Idris 2 system to |
| 45 | +build. |
35 | 46 |
|
36 | 47 | You can always find the latest development version `on github |
37 | 48 | <http://github.com/idris-lang/Idris2>`_: |
38 | 49 |
|
39 | 50 | * ``git clone`` `https://github.com/idris-lang/Idris2.git <https://github.com/idris-lang/Idris2>`_ |
40 | 51 |
|
41 | | -Or by switching to the ``"latest"`` package collection if using ``pack``. |
42 | | - |
43 | 52 | Previous releases are also available: |
44 | 53 |
|
45 | 54 | * `idris2-0.6.0.tgz <{static}../releases/idris2-0.6.0.tgz>`_ `(SHA 256 hash) <{static}../releases/idris2-0.6.0.tgz.sha256>`__ |
@@ -102,3 +111,8 @@ There are editor modes which support interactive editing: |
102 | 111 | * `Vim mode (for Idris 1) <https://github.com/idris-hackers/idris-vim>`_ |
103 | 112 | * `Emacs mode (for Idris 1 and 2) <https://github.com/idris-hackers/idris-mode>`_ |
104 | 113 | * `(DEPRECATED) <https://github.blog/news-insights/product-news/sunsetting-atom/>`_ `Atom package <https://atom.io/packages/language-idris>`__ |
| 114 | + |
| 115 | +Footnotes |
| 116 | +--------- |
| 117 | + |
| 118 | +.. [#f1] This version point to the latest git commit (``HEAD``) of the Idris 2 project. |
0 commit comments