Skip to content

chore: normalize build tooling (purescript-overlay, nix CI, Lua 5.1)#3

Merged
Unisay merged 2 commits into
masterfrom
chore/align-overlay
Jun 14, 2026
Merged

chore: normalize build tooling (purescript-overlay, nix CI, Lua 5.1)#3
Unisay merged 2 commits into
masterfrom
chore/align-overlay

Conversation

@Unisay

@Unisay Unisay commented Jun 14, 2026

Copy link
Copy Markdown
Collaborator

Normalize this fork's build tooling to the ecosystem canon.

  • Replace the dead bower CI workflow with nix CI (nix develop -c ./scripts/build, ./scripts/test, luacheck).
  • Switch the flake to purescript-overlay (purs 0.15.16, spago-bin 0.21.0, lua51 toolchain, binary caches), refreshed via nix flake update.
  • luacheck runs --std lua51 --no-unused-args: matches the Lua 5.1 target (math.pow/atan2 are valid there) and the FFI convention of curried fallback arguments the native impl ignores.

Verified locally: build, test (where present), and luacheck all green.

Tooling only, no source changes.

Note: the PureScript test suite under test/ is not exercised by this CI. Reviving the upstream suites (with their Lua 5.1 fixes) is a separate upstream-sync task; this PR only normalizes build tooling.

@Unisay Unisay self-assigned this Jun 14, 2026
@Unisay Unisay requested a review from Copilot June 14, 2026 12:52

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR normalizes the repository’s build tooling around Nix flakes and the purescript-overlay, moving CI away from the previous Node/Bower-based workflow and aligning Lua tooling with a Lua 5.1 target.

Changes:

  • Switch flake tooling from easy-purescript-nix to purescript-overlay, pinning PureScript/Spago binaries and Lua 5.1 tooling in the dev shell.
  • Replace the CI workflow with a Nix-based pipeline that builds via nix develop -c ./scripts/build and runs luacheck with Lua 5.1 settings.
  • Add flake-local nixConfig for binary caches/substituters.

Reviewed changes

Copilot reviewed 2 out of 3 changed files in this pull request and generated 1 comment.

File Description
flake.nix Reworks dev shell to use purescript-overlay and adds flake nixConfig (substituters/keys).
flake.lock Updates/pins flake inputs consistent with the new overlay-based tooling.
.github/workflows/ci.yml Replaces the old Node/Bower CI steps with Nix-based build + luacheck execution.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread .github/workflows/ci.yml Outdated
Comment on lines +24 to +25
- name: Test
run: if [ -f scripts/test ]; then nix develop -c ./scripts/test; fi
@Unisay Unisay merged commit 1f7c61e into master Jun 14, 2026
1 check passed
@Unisay Unisay deleted the chore/align-overlay branch June 14, 2026 13:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants