| Crates.io | lemma-rs |
| lib.rs | lemma-rs |
| version | 0.1.5 |
| created_at | 2025-11-05 11:49:24.41567+00 |
| updated_at | 2025-11-07 08:50:23.993594+00 |
| description | A modern Lean4 toolchain manager |
| homepage | |
| repository | https://github.com/AndPuQing/lemma.git |
| max_upload_size | |
| id | 1917893 |
| size | 227,102 |
Lemma is a rewrite of elan that addresses critical usability issues, particularly around proxy support and custom toolchain sources.
After analyzing the elan codebase, we identified several critical issues that make it difficult to use in enterprise and restricted network environments:
HTTP_PROXY, HTTPS_PROXY, NO_PROXYrelease_url = "https://release.custom.org"
Linux / macOS:
curl --proto '=https' --tlsv1.2 -sSf https://lemma.puqing.work/install.sh | sh
Or download and inspect the script first:
curl --proto '=https' --tlsv1.2 -sSfL https://lemma.puqing.work/install.sh -o install.sh
chmod +x install.sh
./install.sh
Windows (PowerShell):
irm https://lemma.puqing.work/install.ps1 | iex
Or download and inspect the script first:
Invoke-WebRequest -Uri https://lemma.puqing.work/install.ps1 -OutFile install.ps1
.\install.ps1
# Build from source
cargo build --release
# Install
cargo install --path .
Once installed, you can update lemma itself:
lemma self update
This will check for the latest version and download it automatically if a newer version is available.
# Install a toolchain
lemma toolchain install stable
lemma toolchain install nightly
lemma toolchain install v4.0.0
# List installed toolchains
lemma toolchain list
# Set default toolchain
lemma default stable
# Update toolchains
lemma update
# Show information
lemma info
# Self-management
lemma self update # Update lemma itself
lemma self uninstall # Uninstall lemma and all toolchains
Lemma stores its configuration in ~/.lemma/config.toml (or $LEMMA_HOME/config.toml).
Example configuration:
version = "1"
default_toolchain = "leanprover/lean4:stable"
path_setup_shown = true
release_url = "https://release.lean-lang.org"
[overrides]
Lemma respects standard proxy environment variables:
HTTP_PROXY / http_proxy - HTTP proxy URLHTTPS_PROXY / https_proxy - HTTPS proxy URLALL_PROXY / all_proxy - Proxy for all protocolsNO_PROXY / no_proxy - Comma-separated list of domains to bypass proxyLEMMA_HOME - Lemma installation directory (default: ~/.lemma)LEMMA_RELEASE_URL - Override default release serverContributions are welcome! Key areas that need work:
Note: Lemma is in early development. While the core infrastructure is in place, toolchain installation is not yet fully implemented. Use at your own risk.