32 lines
776 B
Text
Executable file
32 lines
776 B
Text
Executable file
#!/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
|