/ .github / workflows / linux.yml
linux.yml
 1  name: Linux
 2  
 3  on:
 4    push:
 5      branches: [ "master" ]
 6    pull_request:
 7      branches: [ "master" ]
 8  
 9  env:
10    CARGO_TERM_COLOR: always
11    RUSTFLAGS: -Dwarnings
12  
13  jobs:
14    build:
15  
16      # https://github.com/actions/runner-images
17      runs-on: ubuntu-24.04
18  
19      steps:
20      - uses: actions/checkout@v4
21      - name: Update packages index
22        run: sudo apt update
23      - name: Update rustup
24        run: rustup update
25      - name: Update cargo
26        run: cargo update
27      - name: Run rustfmt
28        run: cargo fmt --all -- --check
29      - name: Install system packages
30        run: sudo apt install -y libgtk-4-dev libgtksourceview-5-dev libadwaita-1-dev libspelling-1-dev libsqlite3-dev
31      - name: Run clippy
32        run: cargo clippy --all-targets
33      - name: Build
34        run: cargo build --verbose
35      - name: Run tests
36        run: cargo test --verbose