@@ -165,33 +165,23 @@ jobs:
165165 - name : linux install vulkan (arm64)
166166 if : contains(matrix.name, 'vulkan') && matrix.arch == 'arm64'
167167 run : |
168- sudo apt-get update -y
169- sudo apt-get install -y mesa-vulkan-drivers vulkan-tools libvulkan-dev vulkan-validationlayers-dev spirv-tools
170- # Try to install glslc from system packages first
171- sudo apt-get install -y glslc || true
172- # If glslc is not available, install from Vulkan SDK
173- if ! which glslc; then
174- # Install Vulkan SDK for ARM64
175- wget -q https://sdk.lunarg.com/sdk/download/latest/linux/vulkan-sdk.tar.xz -O vulkan-sdk.tar.xz
176- tar -xf vulkan-sdk.tar.xz
177- SDK_DIR=$(ls -d 1.* | head -n1)
178- if [ -d "$SDK_DIR" ]; then
179- cd "$SDK_DIR"
180- source setup-env.sh
181- echo "VULKAN_SDK=$VULKAN_SDK" >> $GITHUB_ENV
182- echo "PATH=$PATH" >> $GITHUB_ENV
183- echo "LD_LIBRARY_PATH=$LD_LIBRARY_PATH" >> $GITHUB_ENV
184- echo "VK_ADD_LAYER_PATH=$VK_ADD_LAYER_PATH" >> $GITHUB_ENV
185- else
186- # Fallback: set basic Vulkan environment
187- echo "VULKAN_SDK=/usr" >> $GITHUB_ENV
188- echo "VK_LAYER_PATH=/usr/share/vulkan/explicit_layer.d" >> $GITHUB_ENV
189- fi
190- else
191- # Use system installation
192- echo "VULKAN_SDK=/usr" >> $GITHUB_ENV
193- echo "VK_LAYER_PATH=/usr/share/vulkan/explicit_layer.d" >> $GITHUB_ENV
194- fi
168+ sudo dpkg --add-architecture arm64
169+
170+ # Add arch-specific repositories for non-amd64 architectures
171+ cat << EOF | sudo tee /etc/apt/sources.list.d/arm64-ports.list
172+ deb [arch=arm64] http://ports.ubuntu.com/ubuntu-ports/ noble main universe
173+ deb [arch=arm64] http://ports.ubuntu.com/ubuntu-ports/ noble-updates main universe
174+ deb [arch=arm64] http://ports.ubuntu.com/ubuntu-ports/ noble-security main universe
175+ deb [arch=arm64] http://ports.ubuntu.com/ubuntu-ports/ noble-backports main universe
176+ EOF
177+
178+ sudo apt-get update || true ;# Prevent failure due to missing URLs.
179+
180+ sudo apt-get install -y --no-install-recommends \
181+ build-essential \
182+ glslc \
183+ crossbuild-essential-arm64 \
184+ libvulkan-dev:arm64
195185
196186 - name : windows build sqlite-ai
197187 if : matrix.name == 'windows'
0 commit comments