diff --git a/.github/workflows/electronics_v2.yml b/.github/workflows/electronics_v2.yml index 9b854b35..747ef617 100644 --- a/.github/workflows/electronics_v2.yml +++ b/.github/workflows/electronics_v2.yml @@ -17,10 +17,7 @@ jobs: run: mkdir -p electronics/build/outputs - name: Install dependencies - run: ./electronics/scripts/dependencies.sh - - - name: Update kikit - run: sudo python3 -m pip install kikit==1.0.5 + run: ./electronics/scripts/dependencies_v2.sh # Sensor board: - name: Panelize sensor PCB diff --git a/electronics/scripts/dependencies_v2.sh b/electronics/scripts/dependencies_v2.sh new file mode 100755 index 00000000..4b3c21a7 --- /dev/null +++ b/electronics/scripts/dependencies_v2.sh @@ -0,0 +1,27 @@ +#!/bin/bash +set -e + +if [[ -z "${GITHUB_WORKFLOW}" ]]; then + >&2 echo "Aborting! This script is meant to be run in CI (Github Actions) only. It may modify/damage your system configuration if run outside of CI." + exit 1 +fi + +set -v + +DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )" + +sudo add-apt-repository --yes ppa:kicad/kicad-6.0-releases +sudo apt-get update -qq +sudo DEBIAN_FRONTEND=noninteractive apt install -y kicad kicad-packages3d inkscape poppler-utils xdotool recordmydesktop python3-dev python3-pip xvfb + +sudo python3 -m pip install psutil kikit==1.1.1 xvfbwrapper + +mkdir -p ~/.config/kicad +cp /usr/share/kicad/template/fp-lib-table ~/.config/kicad/ +cp /usr/share/kicad/template/sym-lib-table ~/.config/kicad/ + +cp "$DIR/config/eeschema" ~/.config/kicad/ +cp "$DIR/config/pcbnew" ~/.config/kicad/ + +# Install ImageMagick policy that allows PDF conversion (safe in CI because we control all inputs/outputs) +sudo cp "$DIR/config/policy.xml" /etc/ImageMagick-6/policy.xml