Commit Graph

9 Commits

Author SHA1 Message Date
Nadja Yang
03752ca7ca lean4, leanPackages.lean4: fix darwin build by adding libtool
Lake 4.30.0 uses libtool -static on macOS for static library targets
instead of ar.
d024af099c/src/lake/Lake/Build/Library.lean (L87-L95)

See Hydra Build No. 330752454, lean4.aarch64-darwin (June 4, 2026),
https://hydra.nixos.org/build/330752454; Hydra Build No. 330752481,
leanPackages.lean4.aarch64-darwin (June 4, 2026),
https://hydra.nixos.org/build/330752481.

Breakage introduced in
a26b66330f
2026-06-04 23:56:27 -04:00
Nadja Yang
b606786817 leanPackages: 4.29.1 -> 4.30.0
Add leangz (leantar) as a new build and runtime dependency.

https://github.com/leanprover/lean4/releases/tag/v4.30.0
https://github.com/leanprover-community/mathlib4/blob/v4.30.0/lake-manifest.json
2026-06-04 16:48:52 -04:00
Nadja Yang
5d81234142 leanPackages.lean4: pin cadical to 2.1.3, add smoke test
cadical >= 2.2.0 produces LRAT proofs Lean's checker does not
yet handle, breaking bv_decide.

0eced05aae
2026-06-04 16:48:52 -04:00
Nadja Yang
cefae5621e leanPackages.lean4: use nixpkgs cadical, patch all binaries
Lean binaries derive sysroot from IO.appPath; patch all of them
rather than just lean and lake. Add cadical to symlinkJoin paths
instead of bundling a copy via INSTALL_CADICAL.

ed10debb3c
2026-06-04 16:48:52 -04:00
Nadja Yang
6987e3afbe leanPackages.lean4: 4.29.0 -> 4.29.1
Strip ephemeral setup.json build artifacts from library outputs.
These are produced per-module during compilation and not included
in upstream cache distributions
(https://github.com/NixOS/nixpkgs/issues/510957).

Disable Hydra builds for mathlib since the output exceeds the NAR
size limit.

Pre-build static library for batteries so downstream executables
can link against it.

Refactor update.sh to pin each dependency to the rev from mathlib's
lake-manifest.json.
2026-06-04 16:48:52 -04:00
Nadja Yang
590ccdb420 leanPackages: partially revert a26b66330f
In favor of https://github.com/NixOS/nixpkgs/pull/511524
(72b8bcfd8e).

Retains pkgs.lean4 at 4.30.0.
2026-06-04 16:48:52 -04:00
Niklas Halonen
a26b66330f lean4: update leanPackages and lean4 4.29.0/1 -> 4.30.0
As reported on FreeBSD forums, updating lean4 to 4.30.0 fails to a
leantar related issue.  We follow the patch mentioned on the FreeBSD
forums and depend on digama0/leangz (that comes with leantar).
However, there doesn't seem to be a reason to disable installing
leantar, so we don't set INSTALL_LEANTAR=OFF like the patch.

References:
- https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=295656
- https://cgit.freebsd.org/ports/commit/?id=516f8a5764de5c7bdd0e9f7810601a5057bbc650
- https://lean-lang.org/doc/reference/latest/releases/v4.30.0/#release-v4___30___0
- leanprover/lean4#12822
2026-06-01 22:28:05 +03:00
Archit Gupta
ed10debb3c lean4: remove cadical copy
By default, lean4's cmake copies the cadical binary from PATH to its
build output directory. Disabling this behavior does not keep Lean from
using cadical.
2026-04-24 01:39:20 -07:00
Nadja Yang
3c2a3b804d leanPackages: structural reimagining — own toolchain, lake --packages, Hydra visibility
Give leanPackages its own lean4, independent of pkgs.lean4. Binary-
patch the toolchain so the language server discovers the wrapped lake
despite lake serve deriving LAKE from IO.appPath unconditionally.
Supplant Lake's config trace validation for /nix/store/ dependencies,
deferring cache coherence to Nix.

Migrate Nix-managed dependency injection from package-overrides.json
to lake --packages. Patch Cli to pre-build static library for
downstream executables. Add recurseIntoAttrs for Hydra.

Upstream accepted FetchContent for mimalloc vendoring:
a145b9c11a
2026-04-01 11:13:44 -04:00