macOS
brew install idris2local Homebrew formula metadata
sudo port install idris2MacPorts ports tree · lang/idris2/Portfile · source: api.github.com
brew
Pure functional programming language with dependent types. Version 0.8.0 via Homebrew; verified 2026-06-22.
install
brew install idris2local Homebrew formula metadata
sudo port install idris2MacPorts ports tree · lang/idris2/Portfile · source: api.github.com
sudo apk add idris2Alpine Linux edge package indexes · idris2 · source: dl-cdn.alpinelinux.org
sudo dnf install idris2Fedora Rawhide package metadata · idris2 · source: dl.fedoraproject.org
nix profile install nixpkgs#idris2nixpkgs package indexes · pkgs/by-name/id/idris2/package.nix · source: api.github.com
overview
Pure functional programming language with dependent types
history
Idris 2 is the second major implementation of the Idris dependently typed programming language. It keeps the type-driven programming culture of Idris while changing the core language around Quantitative Type Theory, giving the compiler explicit information about erased, linear, and unrestricted values.
For package users, Idris 2 matters less as a conventional scripting tool and more as a research-grade language runtime that became packaged enough for everyday experimentation: a compiler, REPL, standard libraries, package metadata through .ipkg files, editor integrations, and a small but unusually technical ecosystem.
Idris development is led by Edwin Brady at the University of St Andrews, and the Idris site presents the language as a vehicle for type-driven development: types are treated as plans that guide construction of programs. Idris 2 grew out of that project as a new version of the dependently typed language rather than a small revision of Idris 1.
The Idris 2 paper submitted in 2021 describes the language as a new version of Idris with a core based on Quantitative Type Theory. The official migration documentation emphasizes the practical consequence: every variable has a quantity, so the compiler can distinguish erased values, exactly-once values, and ordinary unrestricted values.
The public Idris2 repository records release tags beginning with v0.2.0 in 2020 and continuing through later 0.x releases. The README also points users to Idris 2 talks from the late 2010s, the official documentation, the Pack package manager, curated community libraries, and idris2-lsp.
Adoption has centered on the functional programming, dependent-types, theorem-proving, and programming-language-research communities. The project deliberately preserves a path for Idris 1 users through documentation about language differences and book updates, while also advertising Idris 2 specific learning material and talks.
Package-manager adoption reflects that Idris 2 became installable outside its research niche. The supplied package metadata lists Homebrew, Alpine, Fedora, MacPorts, and Nix package names, giving users a route to the compiler without building the full language stack manually.
Users run the idris2 compiler and REPL to write dependently typed programs, explore holes interactively, compile programs, and build packages described by .ipkg files. The README describes Pack as the common way to install Idris packages and work with compatible package collections.
The language is commonly used for examples where types express program invariants: length-indexed data, proof-carrying code, safe protocols, and resource-aware APIs. Idris 2's QTT-based quantities make erasure and linear usage visible to programmers instead of leaving them as compiler-only implementation details.
Idris 2 is a package-nerd marker for the point where dependently typed programming moved from papers and conference demos into reproducible command-line tooling. Installing it from Homebrew or Nix pulls a language whose central design is tied directly to contemporary type theory.
It is also interesting because its ecosystem has package metadata of its own. The README's .ipkg and Pack discussion makes Idris 2 both a package in Unix package managers and a language with a nested package culture.
security posture
generalized runtime or code generation signal.
yellow risk · medium confidence · runtime
Before unattended agent use, check whether the tool reads plaintext credentials, writes remote state, publishes artifacts, or shells out to plugins.
executables
| Command | Kind | Exposure | Note |
|---|---|---|---|
idris2 | cli | global executable |
freshness
These signals separate page generation age, package-manager activity, and upstream release comparison. Version lag is warned only when an evidence URL and comparable versions are present.
https://github.com/idris-lang/Idris2
install metadata
| Package key | brew:idris2 |
|---|---|
| Version | 0.8.0 |
| Package manager | Homebrew |
| Package manager page | https://formulae.brew.sh/formula/idris2 |
| Homepage | https://www.idris-lang.org/ |
| Repository | https://github.com/idris-lang/Idris2 |
| Upstream docs | https://idris2.readthedocs.io/en/latest |
| License | BSD-3-Clause |
| Source archive | https://github.com/idris-lang/Idris2/archive/refs/tags/v0.8.0.tar.gz |
| Last updated | 2026-06-22T14:03:45-07:00 |
| Pulse | updated |
| Dependencies | chezscheme |
| Build dependencies | gmp |
| Bottle | available (on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux) |
| Homebrew post-install | not defined |
| Service | none declared |
registry facts
| Source Database | Homebrew formula API |
|---|---|
| Tap | homebrew/core |
| Full Name | idris2 |
| Version Scheme | 0 |
| Revision | 2 |
| Head Version | HEAD |
| Bottle Stable Root URL | https://ghcr.io/v2/homebrew/core |
| Deprecated | no |
| Disabled | no |
| Keg Only | no |
| URL Keys |
|
source database matches
Matches are pulled from external package-manager indexes and kept separate from local Automic Vault package links.
idris2
nix profile install nixpkgs#idris2idris2 0.8.0-r2
Purely functional programming language with first class types
sudo apk add idris2idris2-api 0.8.0-r2
Idris API for developing support tools (e.g. external code generator)
sudo apk add idris2-apiidris2-doc 0.8.0-r2
Purely functional programming language with first class types (documentation)
sudo apk add idris2-docidris2 0.8.0-5.fc45
Purely functional programming language with first class types
sudo dnf install idris2idris2-doc 0.8.0-5.fc45
Idris2 documentation
sudo dnf install idris2-docidris2-libs 0.8.0-5.fc45
idris2 runtime support library
sudo dnf install idris2-libsidris2
sudo port install idris2source trail
This page is generated by av-web from the private package SQLite artifact built by scripts/generate-pkg-sqlite.py.
View the package source record on GitHub.