Skip to content

Add kernel selection table #124

Add kernel selection table

Add kernel selection table #124

name: "CodeQL"
on:
push:
branches: [ main, dev ]
pull_request:
# Run on PRs targeting protected branches
branches: [ main, dev ]
schedule:
- cron: '0 2 * * 0' # Weekly
workflow_dispatch:
jobs:
analyze:
name: Analyze (CodeQL)
runs-on: ubuntu-24.04
permissions:
actions: read
security-events: write
contents: read
steps:
- name: Checkout repository
uses: actions/checkout@v5
with:
fetch-depth: 0
submodules: true
- name: Install Dependencies
run: |
sudo apt update
sudo apt install -y \
cmake build-essential \
libwayland-bin \
libwayland-dev libxkbcommon-dev wayland-protocols \
pkg-config \
libdbus-1-dev
echo "✅ Dependencies Installed!"
- name: Install Vulkan SDK
run: |
wget -qO- https://packages.lunarg.com/lunarg-signing-key-pub.asc | sudo tee /etc/apt/trusted.gpg.d/lunarg.asc
sudo wget -qO /etc/apt/sources.list.d/lunarg-vulkan-noble.list http://packages.lunarg.com/vulkan/lunarg-vulkan-noble.list
sudo apt update
sudo apt install -y vulkan-sdk xorg-dev libx11-dev libxrandr-dev libxinerama-dev libxcursor-dev libxi-dev
echo "✅ Vulkan SDK Installed!"
- name: Initialize CodeQL
uses: github/codeql-action/init@v4
with:
languages: cpp
config-file: .github/codeql/codeql-config.yml
- name: Build with CMake
run: |
mkdir -p build/linux-release
cmake -B build/linux-release --preset "linux-release"
cmake --build build/linux-release --preset "Linux Release Build" --parallel $(nproc)
- name: Run CodeQL analysis
uses: github/codeql-action/analyze@v4
with:
category: "security-and-quality"