Skip to content

Conversation

@ryoppippi
Copy link
Member

@ryoppippi ryoppippi commented Jan 11, 2026

Summary

  • Switch from mkShell to mkShellNoCC for lighter devShell (no C compiler needed)
  • Update all flake inputs to latest versions

Test plan

  • Run nix develop and verify the shell works correctly

Summary by cubic

Switch to a lighter Nix dev shell by replacing mkShell with mkShellNoCC, reducing dependencies and speeding up shell activation.

Written for commit c7c5671. Summary will update on new commits.

Copilot AI review requested due to automatic review settings January 11, 2026 13:25
Switch from mkShell to mkShellNoCC since this development environment
only uses Python and Node.js tools. The C compiler (stdenv) is not
needed, resulting in fewer dependencies and faster shell activation.
@ryoppippi ryoppippi force-pushed the chore/use-mkshellnocc branch from e806632 to c7c5671 Compare January 11, 2026 13:26
@ryoppippi ryoppippi merged commit ae58614 into main Jan 11, 2026
12 checks passed
@ryoppippi ryoppippi deleted the chore/use-mkshellnocc branch January 11, 2026 13:26
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

This pull request simplifies the Nix development environment by removing the complex uv2nix-based Python environment management in favor of a lighter approach using mkShellNoCC and letting uv handle Python dependencies directly. It also updates all flake inputs to their latest versions.

Changes:

  • Switched from mkShell to mkShellNoCC for the development shell, removing C compiler dependencies
  • Removed uv2nix, pyproject-nix, and pyproject-build-systems flake inputs and their associated Python version-specific virtual environments
  • Updated CI workflow to add explicit dependency installation steps and simplified caching strategy

Reviewed changes

Copilot reviewed 1 out of 1 changed files in this pull request and generated no comments.

Show a summary per file
File Description
flake.nix Removed uv2nix integration, switched to mkShellNoCC, simplified devShell configuration to use uv directly
flake.lock Updated all flake inputs to latest versions, removed uv2nix-related dependencies
justfile Removed dynamic _run helper, hardcoded uv run commands, removed lint-fix alias
.github/workflows/ci.yaml Updated Python version matrix format, added explicit dependency installation steps, removed Python version from dev shell invocations
.github/actions/setup-nix/action.yaml Removed python-version input, switched from cache-nix-action to cachix-action for caching
Comments suppressed due to low confidence (1)

flake.nix:118

  • The condition compares uv.lock (a file) with .venv (a directory) using the -nt (newer than) operator. The -nt operator is meant to compare modification times of files. When comparing a file to a directory, the behavior may be unexpected - it compares against the directory's metadata modification time, not the modification time of its contents.

Consider checking against a specific file within .venv that gets updated when dependencies are installed, such as .venv/pyvenv.cfg or .venv/.complete (a marker file you create after successful installation).

              if [ ! -d .venv ] || [ uv.lock -nt .venv ]; then

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

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