ci: Use Nix for dependencies not on Ubuntu

This commit is contained in:
Jake Hillion 2024-09-03 18:57:10 +01:00
parent cc3f696c4b
commit 3010470c32

View File

@ -11,23 +11,16 @@ jobs:
- run: echo 'debconf debconf/frontend select Noninteractive' | sudo debconf-set-selections
# Refresh packages list
- run: sudo apt update
- run: sudo apt-get update
### DOWNLOAD AND INSTALL DEPENDENCIES ###
# Download dependencies packaged by Ubuntu
- run: sudo apt -y install bison busybox-static cargo cmake coreutils cpio elfutils file flex gcc gcc-multilib git iproute2 jq kbd kmod libcap-dev libelf-dev libunwind-dev libvirt-clients libzstd-dev linux-headers-generic linux-tools-common linux-tools-generic make ninja-build pahole pkg-config python3-dev python3-pip python3-requests qemu-kvm rsync rustc stress-ng udev zstd
- run: sudo apt-get -y install bison busybox-static cargo cmake coreutils cpio elfutils file flex gcc gcc-multilib git iproute2 jq kbd kmod libcap-dev libelf-dev libunwind-dev libvirt-clients libzstd-dev linux-headers-generic linux-tools-common linux-tools-generic make ninja-build pahole pkg-config python3-dev python3-pip python3-requests qemu-kvm rsync rustc udev zstd
# clang 17
# Use a custom llvm.sh script which includes the -y flag for
# add-apt-repository. Otherwise, the CI job will hang. If and when
# https://github.com/opencollab/llvm-jenkins.debian.net/pull/26 is
# merged, we can go back to using https://apt.llvm.org/llvm.sh.
- run: wget https://raw.githubusercontent.com/Decave/llvm-jenkins.debian.net/fix_llvmsh/llvm.sh
- run: chmod +x llvm.sh
- run: sudo ./llvm.sh all
- run: sudo ln -sf /usr/bin/clang-17 /usr/bin/clang
- run: sudo ln -sf /usr/bin/llvm-strip-17 /usr/bin/llvm-strip
# Download dependencies not packaged/too old by Ubuntu with Nix
- uses: DeterminateSystems/nix-installer-action@main
- run: nix profile install --override-flake nixpkgs github:nixos/nixpkgs/b833ff01a0d694b910daca6e2ff4a3f26dee478c nixpkgs#llvmPackages_17.clang nixpkgs#llvmPackages_17.libllvm nixpkgs#stress-ng
- uses: actions/checkout@v4