on: [push]
name: freebsd
jobs:
test:
runs-on: macos-latest
steps:
- uses: actions/checkout@v4
- name: Run tests in FreeBSD VM
uses: vmactions/freebsd-vm@v1
with:
usesh: true
sync: rsync
copyback: false
mem: 2048
prepare: |
pkg install -y --quiet curl
curl https://sh.rustup.rs -sSf --output rustup.sh
sh rustup.sh -y --profile minimal --default-toolchain stable
export PATH="${HOME}/.cargo/bin:$PATH"
echo "~~~~ rustc --version ~~~~"
rustc --version
pkg install -y --quiet Bento4
mp4decrypt || true
# we are depending here on FreeBSD's Linux binary compatibility layer
curl https://github.com/shaka-project/shaka-packager/releases/latest/download/packager-linux-x64 --output /tmp/shaka-packager
sudo mv /tmp/shaka-packager /usr/local/bin
sudo chmod +x /usr/local/bin/shaka-packager
export PATH=${PATH}:/usr/local/bin
shaka-packager --version
pkg install -y --quiet ffmpeg
sudo pkg install -y --quiet textproc/libxslt
run: |
export PATH="${HOME}/.cargo/bin:$PATH"
ls -la
cargo build --jobs 1 --no-default-features --verbose
cargo test --jobs 1 --no-default-features --verbose