From ffe74c66d62e0ca1dfcfbed60f004df18cdff488 Mon Sep 17 00:00:00 2001 From: Manna Harbour <51143715+manna-harbour@users.noreply.github.com> Date: Tue, 15 Jun 2021 15:43:07 +1000 Subject: [PATCH] Add corne-ish_zen build --- .../build_corne-ish_zen_with_all_options.yml | 110 ++++++++++++++++++ config/corne-ish_zen.keymap | 4 + config/west-corneishzen.yml | 13 +++ 3 files changed, 127 insertions(+) create mode 100644 .github/workflows/build_corne-ish_zen_with_all_options.yml create mode 100644 config/corne-ish_zen.keymap create mode 100644 config/west-corneishzen.yml diff --git a/.github/workflows/build_corne-ish_zen_with_all_options.yml b/.github/workflows/build_corne-ish_zen_with_all_options.yml new file mode 100644 index 0000000..14529df --- /dev/null +++ b/.github/workflows/build_corne-ish_zen_with_all_options.yml @@ -0,0 +1,110 @@ +name: 'Build corne-ish_zen with all options' +on: + - workflow_dispatch +jobs: + build: + runs-on: ubuntu-latest + container: + image: zmkfirmware/zmk-build-arm:2.4 + strategy: + fail-fast: false + matrix: + shield: + - "" + board: + - corne-ish_zen_left + alphas: + - "" + - colemak + - colemakdhk + - dvorak + - halmak + - workman + - qwerty + nav: + - "" + - vi + clipboard: + - "" + - fun + - mac + - win + layers: + - "" + mapping: + - "" + include: + - board: corne-ish_zen_right + steps: + - name: Checkout + uses: actions/checkout@v2 + - name: Cache west modules + uses: actions/cache@v2 + env: + cache-name: cache-zephyr-modules + with: + path: | + bootloader/ + modules/ + tools/ + zephyr/ + zmk/ + key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('config/west-corneishzen.yml') }} + restore-keys: | + ${{ runner.os }}-build-${{ env.cache-name }}- + ${{ runner.os }}-build- + ${{ runner.os }}- + timeout-minutes: 2 + continue-on-error: true + - name: Initialize workspace (west init) + run: west init -l config --mf west-corneishzen.yml + - name: Update modules (west update) + run: west update + - name: Export Zephyr CMake package (west zephyr-export) + run: west zephyr-export + - name: Process matrix + id: variables + run: | + if [ -n "${{ matrix.shield }}" ] + then + SHIELD_ARG="-DSHIELD=${{ matrix.shield }}" + fi + echo "::set-output name=shield-arg::${SHIELD_ARG}" + configfile="${GITHUB_WORKSPACE}/miryoku/config.h" + echo '// https://github.com/manna-harbour/miryoku-zmk/' > "$configfile" + echo "::set-output name=configfile::$configfile" + artifact_build_name="miryoku_zmk ${{ matrix.shield }} ${{ matrix.board }}" + for option in "alphas_${{ matrix.alphas }}" "nav_${{ matrix.nav }}" "clipboard_${{ matrix.clipboard }}" "layers_${{ matrix.layers }}" "mapping_${{ matrix.mapping }}" + do + case "$option" in + *_ ) ;; + * ) + artifact_build_name="$artifact_build_name $option" + echo "#define MIRYOKU_"`echo "$option" | tr 'a-z' 'A-Z'` >> "$configfile" + ;; + esac + done + artifact_build_name=`echo $artifact_build_name | tr ' ' '-'` + echo "::set-output name=artifact-build-name::$artifact_build_name" + echo "::set-output name=artifact-generic-name::"`echo "$artifact_build_name" | sed 's/_\(left\|right\)//'` + echo "::set-output name=artifact-dir::artifacts" + - name: Build (west build) + run: west build -s zmk/app -b ${{ matrix.board }} -- ${{ steps.variables.outputs.shield-arg }} -DZMK_CONFIG="${GITHUB_WORKSPACE}/config" + - name: Prepare artifacts + run: | + mkdir ${{ steps.variables.outputs.artifact-dir }} + cp "${{ steps.variables.outputs.configfile }}" "${{ steps.variables.outputs.artifact-dir }}" + for extension in "hex" "uf2" + do + file="build/zephyr/zmk.$extension" + if [ -f "$file" ] + then + cp "$file" "${{ steps.variables.outputs.artifact-dir }}/${{ steps.variables.outputs.artifact-build-name }}.$extension" + fi + done + - name: Archive artifacts + uses: actions/upload-artifact@v2 + with: + name: ${{ steps.variables.outputs.artifact-generic-name }} + path: ${{ steps.variables.outputs.artifact-dir }} + continue-on-error: true diff --git a/config/corne-ish_zen.keymap b/config/corne-ish_zen.keymap new file mode 100644 index 0000000..0bb4606 --- /dev/null +++ b/config/corne-ish_zen.keymap @@ -0,0 +1,4 @@ +// https://github.com/manna-harbour/miryoku-zmk/ + +#include "../miryoku/mapping/42-corne.h" +#include "../miryoku/miryoku.dtsi" diff --git a/config/west-corneishzen.yml b/config/west-corneishzen.yml new file mode 100644 index 0000000..49ece32 --- /dev/null +++ b/config/west-corneishzen.yml @@ -0,0 +1,13 @@ +manifest: + remotes: + - name: zmkfirmware + url-base: https://github.com/zmkfirmware + - name: corne-ish_zen + url-base: https://github.com/Darryldh + projects: + - name: zmk + remote: corne-ish_zen + revision: Add-new-Board-Corne-ish-Zen + import: app/west.yml + self: + path: config