Skip to content

Add Nix dev environment, replace husky with git hooks#44

Merged
amackillop merged 1 commit into
mainfrom
austin_add-flake-1
Jun 1, 2026
Merged

Add Nix dev environment, replace husky with git hooks#44
amackillop merged 1 commit into
mainfrom
austin_add-flake-1

Conversation

@amackillop

Copy link
Copy Markdown
Contributor

Sets up a Nix-based dev environment (fenix + crane) and swaps the husky pre-commit hook for a tracked .githooks directory wired via core.hooksPath.

Husky and lint-staged weren't doing much. The only tracked JS is index.js and index.d.ts, both auto-generated by NAPI-RS with eslint-disable and prettier-ignore at the top. lint-staged was formatting code that opts out of linting, while the Rust source got nothing. The new hook just runs just check, which runs nix flake check (fmt, clippy, build).

Cargo.lock is now tracked. Crane vendors git deps from it so it has to be visible to Nix, and for a library shipped via npm tracking the lockfile is the right call anyway as binaries are produced.

Toolchain is fenix stable, pinned via flake.lock. No rust-toolchain.toml; the flake is the single source of truth. Note that crane's vendor step needs cargo >= 1.91 for
cargo package --exclude-lockfile. Cargo.toml's rust-version remains the MSRV for downstream consumers.

@chatgpt-codex-connector chatgpt-codex-connector Bot 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.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 9977771227

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread justfile Outdated
Comment thread justfile Outdated
@amackillop amackillop force-pushed the austin_add-flake-1 branch 2 times, most recently from 5028101 to ccaa875 Compare June 1, 2026 13:59
Sets up a Nix-based dev environment (fenix + crane) and swaps the
husky pre-commit hook for a tracked .githooks directory wired via
core.hooksPath.

Husky and lint-staged weren't doing much. The only tracked JS is
index.js and index.d.ts, both auto-generated by NAPI-RS with
eslint-disable and prettier-ignore at the top. lint-staged was
formatting code that opts out of linting, while the Rust source
got nothing. The new hook just runs `just check`, which runs
`nix flake check` (fmt, clippy, build).

Cargo.lock is now tracked. Crane vendors git deps from it so it
has to be visible to Nix, and for a library shipped via npm
tracking the lockfile is the right call anyway as binaries are
produced.
@amackillop amackillop force-pushed the austin_add-flake-1 branch from ccaa875 to d7467ed Compare June 1, 2026 14:05
@amackillop amackillop merged commit 9aee191 into main Jun 1, 2026
12 checks passed
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.

1 participant