Skip to content

feat: direct system-defaults apply path, fix found issues in the existing system-defaults defs #508

feat: direct system-defaults apply path, fix found issues in the existing system-defaults defs

feat: direct system-defaults apply path, fix found issues in the existing system-defaults defs #508

Workflow file for this run

name: Evaluate
on:
pull_request:
types: [opened, synchronize, reopened, ready_for_review]
merge_group:
workflow_dispatch:
concurrency:
group: evaluate-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true
permissions:
contents: read
jobs:
rust-check:
name: Rust Check
runs-on: [self-hosted, macOS]
steps:
- name: Checkout repository
uses: actions/checkout@v6
- uses: ./.github/actions/setup
with:
darkmatter-cachix-auth-token: ${{ secrets.DARKMATTER_CACHIX_AUTH_TOKEN }}
setup-rust: true
rust-cache-workspaces: apps/native/src-tauri
- name: Check Rust app crate
working-directory: apps/native/src-tauri
run: cargo check --locked
typescript:
name: TypeScript
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v6
# tsc only needs bun + node_modules — skip the nix/devenv setup, which
# costs ~10 minutes on GitHub-hosted runners.
- name: Install bun
uses: oven-sh/setup-bun@v2
with:
bun-version-file: package.json
- name: Install frontend dependencies
run: bun install --frozen-lockfile
- name: Type-check native app
working-directory: apps/native
run: bunx tsc --noEmit
treefmt:
name: Treefmt
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v6
with:
fetch-depth: 0
# `nix fmt` only evaluates the flake's formatter — the devenv profile
# is not needed, and skipping it saves ~10 minutes on hosted runners.
- uses: ./.github/actions/setup
with:
darkmatter-cachix-auth-token: ${{ secrets.DARKMATTER_CACHIX_AUTH_TOKEN }}
install-bun-deps: false
install-devenv: false
- name: Check changed Nix and shell files
env:
BASE_SHA: ${{ github.event.pull_request.base.sha }}
run: |
set -euo pipefail
base="${BASE_SHA:-}"
if [ -z "$base" ]; then
base="$(git rev-parse HEAD^)"
fi
git diff -z --name-only --diff-filter=ACMR "$base" HEAD -- '*.nix' '*.sh' > /tmp/treefmt-files
if [ ! -s /tmp/treefmt-files ]; then
echo "No treefmt-covered files changed."
exit 0
fi
xargs -0 nix fmt -- --ci --formatters nixfmt --formatters shellcheck < /tmp/treefmt-files