dash-mpd-cli 0.2.9

Download media content from a DASH-MPEG or DASH-WebM MPD manifest.
# Run cargo tests in a FreeBSD VM. This needs to run on one of the GitHub macos runners, because
# they are currently the only ones to support virtualization.
#
# We need to build without default features (in particular without the "cookies" feature), because
# the bench_scraper crate doesn't compile on FreeBSD.
#
# See https://github.com/vmactions/freebsd-vm

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