#!/usr/bin/env nix-shell #! nix-shell -i bash ../shell.nix # Get current branch name current_branch=$(git branch --show-current) echo "stashing all uncommitted changes with named stash (excluding hooks)" git stash push -q --keep-index -m "pre-commit-stash-$(date +%s)" -- ':!.hooks/' # Only run nix flake check if we're on main branch if [ "$current_branch" = "main" ]; then echo "On main branch - checking flakes all compile" nix flake check if [ ! $? -eq 0 ]; then echo "Error: nix flake check failed on main branch" exit 1 fi echo "nix flake check passed" else echo "Not on main branch - skipping nix flake check" fi echo "running linter" alejandra -q . RESULT=$? echo "adding lint changes to commit" git add -u exit $RESULT