[miryoku-github] Squashed local commits from previous miryoku branch
- Squashed local commits from previous miryoku branch - Update actions/upload-artifact in workflow - Add choice to Build Inputs workflow for alternative layout options - Add Test Inputs workflow with all text fields for matrix builds - Fix make git-submodule in workflow - Fix merge in workflow (#16)miryoku-merge-master
parent
aebc99a4e0
commit
e1307cc3a7
@ -0,0 +1 @@
|
||||
github: [manna-harbour]
|
||||
@ -0,0 +1,11 @@
|
||||
# Copyright 2021 Manna Harbour
|
||||
# https://github.com/manna-harbour/miryoku
|
||||
|
||||
name: 'Build Example contra'
|
||||
on:
|
||||
- workflow_dispatch
|
||||
jobs:
|
||||
build:
|
||||
uses: ./.github/workflows/main.yml
|
||||
with:
|
||||
keyboard: '["contra"]'
|
||||
@ -0,0 +1,11 @@
|
||||
# Copyright 2021 Manna Harbour
|
||||
# https://github.com/manna-harbour/miryoku
|
||||
|
||||
name: 'Build Example crkbd'
|
||||
on:
|
||||
- workflow_dispatch
|
||||
jobs:
|
||||
build:
|
||||
uses: ./.github/workflows/main.yml
|
||||
with:
|
||||
keyboard: '["crkbd"]'
|
||||
@ -0,0 +1,11 @@
|
||||
# Copyright 2021 Manna Harbour
|
||||
# https://github.com/manna-harbour/miryoku
|
||||
|
||||
name: 'Build Example ergodox_ez'
|
||||
on:
|
||||
- workflow_dispatch
|
||||
jobs:
|
||||
build:
|
||||
uses: ./.github/workflows/main.yml
|
||||
with:
|
||||
keyboard: '["ergodox_ez"]'
|
||||
@ -0,0 +1,11 @@
|
||||
# Copyright 2021 Manna Harbour
|
||||
# https://github.com/manna-harbour/miryoku
|
||||
|
||||
name: 'Build Example keebio/levinson'
|
||||
on:
|
||||
- workflow_dispatch
|
||||
jobs:
|
||||
build:
|
||||
uses: ./.github/workflows/main.yml
|
||||
with:
|
||||
keyboard: '["keebio/levinson"]'
|
||||
@ -0,0 +1,11 @@
|
||||
# Copyright 2021 Manna Harbour
|
||||
# https://github.com/manna-harbour/miryoku
|
||||
|
||||
name: 'Build Example planck/rev6'
|
||||
on:
|
||||
- workflow_dispatch
|
||||
jobs:
|
||||
build:
|
||||
uses: ./.github/workflows/main.yml
|
||||
with:
|
||||
keyboard: '["planck/rev6"]'
|
||||
@ -0,0 +1,113 @@
|
||||
# Copyright 2021 Manna Harbour
|
||||
# https://github.com/manna-harbour/miryoku
|
||||
|
||||
name: 'Build Inputs'
|
||||
on:
|
||||
workflow_dispatch:
|
||||
inputs:
|
||||
keyboard:
|
||||
description: 'Keyboard'
|
||||
required: true
|
||||
alphas:
|
||||
description: 'Miryoku Alphas'
|
||||
required: false
|
||||
default: 'default'
|
||||
type: choice
|
||||
options:
|
||||
- "default"
|
||||
- "AZERTY"
|
||||
- "BEAKL15"
|
||||
- "Colemak"
|
||||
- "ColemakDHK"
|
||||
- "Dvorak"
|
||||
- "Halmak"
|
||||
- "QWERTY"
|
||||
- "QWERTZ"
|
||||
- "Workman"
|
||||
nav:
|
||||
description: 'Miryoku Nav'
|
||||
required: false
|
||||
default: 'default'
|
||||
type: choice
|
||||
options:
|
||||
- "default"
|
||||
- "invertedT"
|
||||
- "vi"
|
||||
clipboard:
|
||||
description: 'Miryoku Clipboard'
|
||||
required: false
|
||||
default: 'default'
|
||||
type: choice
|
||||
options:
|
||||
- "default"
|
||||
- "fun"
|
||||
- "Mac"
|
||||
- "Win"
|
||||
layers:
|
||||
description: 'Miryoku Layers'
|
||||
required: false
|
||||
default: 'default'
|
||||
type: choice
|
||||
options:
|
||||
- "default"
|
||||
- "flip"
|
||||
mapping:
|
||||
description: 'Miryoku Mapping'
|
||||
required: false
|
||||
default: 'default'
|
||||
rules:
|
||||
description: 'custom_rules.mk'
|
||||
required: false
|
||||
default: 'default'
|
||||
custom_config:
|
||||
description: 'custom_config.h'
|
||||
required: false
|
||||
default: 'default'
|
||||
merge:
|
||||
description: 'Merge QMK Branches'
|
||||
required: false
|
||||
default: 'default'
|
||||
jobs:
|
||||
process-inputs:
|
||||
runs-on: ubuntu-latest
|
||||
outputs:
|
||||
keyboard: ${{ steps.process-inputs.outputs.keyboard }}
|
||||
alphas: ${{ steps.process-inputs.outputs.alphas }}
|
||||
nav: ${{ steps.process-inputs.outputs.nav }}
|
||||
clipboard: ${{ steps.process-inputs.outputs.clipboard }}
|
||||
layers: ${{ steps.process-inputs.outputs.layers }}
|
||||
mapping: ${{ steps.process-inputs.outputs.mapping }}
|
||||
rules: ${{ steps.process-inputs.outputs.rules }}
|
||||
custom_config: ${{ steps.process-inputs.outputs.custom_config }}
|
||||
merge: ${{ steps.process-inputs.outputs.merge }}
|
||||
steps:
|
||||
- name: Process inputs
|
||||
id: process-inputs
|
||||
run: |
|
||||
set-output()
|
||||
{
|
||||
json=`echo "$2" | jq -cnR 'inputs | split(",";"")'`
|
||||
echo "$1=$json" >> $GITHUB_OUTPUT
|
||||
}
|
||||
set-output "keyboard" "${{ github.event.inputs.keyboard }}"
|
||||
set-output "alphas" "${{ github.event.inputs.alphas }}"
|
||||
set-output "nav" "${{ github.event.inputs.nav }}"
|
||||
set-output "clipboard" "${{ github.event.inputs.clipboard }}"
|
||||
set-output "layers" "${{ github.event.inputs.layers }}"
|
||||
set-output "mapping" "${{ github.event.inputs.mapping }}"
|
||||
set-output "rules" "${{ github.event.inputs.rules }}"
|
||||
set-output "custom_config" "${{ github.event.inputs.custom_config }}"
|
||||
set-output "merge" "${{ github.event.inputs.merge }}"
|
||||
build:
|
||||
uses: ./.github/workflows/main.yml
|
||||
needs: process-inputs
|
||||
with:
|
||||
keyboard: ${{ needs.process-inputs.outputs.keyboard }}
|
||||
alphas: ${{ needs.process-inputs.outputs.alphas }}
|
||||
nav: ${{ needs.process-inputs.outputs.nav }}
|
||||
clipboard: ${{ needs.process-inputs.outputs.clipboard }}
|
||||
layers: ${{ needs.process-inputs.outputs.layers }}
|
||||
mapping: ${{ needs.process-inputs.outputs.mapping }}
|
||||
rules: ${{ needs.process-inputs.outputs.rules }}
|
||||
custom_config: ${{ needs.process-inputs.outputs.custom_config }}
|
||||
merge: ${{ needs.process-inputs.outputs.merge }}
|
||||
@ -0,0 +1,126 @@
|
||||
# Copyright 2021 Manna Harbour
|
||||
# https://github.com/manna-harbour/miryoku
|
||||
|
||||
name: 'Main'
|
||||
on:
|
||||
workflow_call:
|
||||
inputs:
|
||||
keyboard:
|
||||
type: string
|
||||
default: '["default"]'
|
||||
alphas:
|
||||
type: string
|
||||
default: '["default"]'
|
||||
nav:
|
||||
type: string
|
||||
default: '["default"]'
|
||||
clipboard:
|
||||
type: string
|
||||
default: '["default"]'
|
||||
layers:
|
||||
type: string
|
||||
default: '["default"]'
|
||||
mapping:
|
||||
type: string
|
||||
default: '["default"]'
|
||||
rules:
|
||||
type: string
|
||||
default: '["default"]'
|
||||
custom_config:
|
||||
type: string
|
||||
default: '["default"]'
|
||||
merge:
|
||||
type: string
|
||||
default: '["default"]'
|
||||
jobs:
|
||||
main:
|
||||
runs-on: ubuntu-latest
|
||||
container: qmkfm/qmk_cli
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
keyboard: ${{ fromJSON(inputs.keyboard) }}
|
||||
alphas: ${{ fromJSON(inputs.alphas) }}
|
||||
nav: ${{ fromJSON(inputs.nav) }}
|
||||
clipboard: ${{ fromJSON(inputs.clipboard) }}
|
||||
layers: ${{ fromJSON(inputs.layers) }}
|
||||
mapping: ${{ fromJSON(inputs.mapping) }}
|
||||
rules: ${{ fromJSON(inputs.rules) }}
|
||||
custom_config: ${{ fromJSON(inputs.custom_config) }}
|
||||
merge: ${{ fromJSON(inputs.merge) }}
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v3
|
||||
- name: Merge branches
|
||||
if: ${{ matrix.merge != '' && matrix.merge != 'default' }}
|
||||
run: |
|
||||
git config --global --add safe.directory '*'
|
||||
git config user.name "${GITHUB_ACTOR}"
|
||||
git config user.email "${GITHUB_ACTOR}@users.noreply.github.com"
|
||||
git fetch --unshallow
|
||||
revert=`git log --grep='^\[miryoku-github\]' --pretty='format:%H' | tr '\n' ' '`
|
||||
git revert $revert
|
||||
for merge in ${{ matrix.merge }}
|
||||
do
|
||||
user=`echo "$merge" | cut -f 1 -d '/'`
|
||||
repo=`echo "$merge" | cut -f 2 -d '/'`
|
||||
branch=`echo "$merge" | cut -f 3- -d '/'`
|
||||
remote="$user-$repo"
|
||||
git remote add "$remote" "https://github.com/$user/$repo.git"
|
||||
git fetch "$remote" "$branch"
|
||||
git merge "$remote/$branch"
|
||||
git remote remove "$remote"
|
||||
git status
|
||||
done
|
||||
- name: Submodules
|
||||
run: |
|
||||
git config --global --add safe.directory '*'
|
||||
make git-submodule
|
||||
- name: Process inputs
|
||||
id: inputs
|
||||
run: |
|
||||
artifact_dir="artifacts"
|
||||
mkdir "$artifact_dir"
|
||||
user='users/manna-harbour_miryoku'
|
||||
rules="$user/custom_rules.mk"
|
||||
config="$user/custom_config.h"
|
||||
|
||||
artifact_build_name=`echo "miryoku_qmk ${{ matrix.keyboard }}" | tr '/' '_'`
|
||||
for option in "alphas=${{ matrix.alphas }}" "nav=${{ matrix.nav }}" "clipboard=${{ matrix.clipboard }}" "layers=${{ matrix.layers }}" "mapping=${{ matrix.mapping }}"
|
||||
do
|
||||
if ! expr "$option" : '.*=default$'
|
||||
then
|
||||
artifact_build_name="$artifact_build_name "`echo "$option" | tr '=' '_'`
|
||||
option=`echo "MIRYOKU_$option" | tr 'a-z' 'A-Z'`
|
||||
echo "$option" >> "$rules"
|
||||
fi
|
||||
done
|
||||
if [ -n "${{ matrix.rules }}" -a "${{ matrix.rules }}" != 'default' ]
|
||||
then
|
||||
artifact_build_name="$artifact_build_name rules_"`echo "${{ matrix.rules }}" | md5sum | cut -d ' ' -f 1`
|
||||
echo "${{ matrix.rules }}" >> "$rules"
|
||||
fi
|
||||
if [ -n "${{ matrix.custom_config }}" -a "${{ matrix.custom_config }}" != 'default' ]
|
||||
then
|
||||
artifact_build_name="$artifact_build_name config_"`echo "${{ matrix.custom_config }}" | md5sum | cut -d ' ' -f 1`
|
||||
echo "${{ matrix.custom_config }}" >> "$config"
|
||||
fi
|
||||
cp "$rules" "$config" "$artifact_dir"
|
||||
if [ -n "${{ matrix.merge }}" -a "${{ matrix.merge }}" != 'default' ]
|
||||
then
|
||||
artifact_build_name="$artifact_build_name merge_"`echo "${{ matrix.merge }}" | md5sum | cut -d ' ' -f 1`
|
||||
fi
|
||||
artifact_build_name=`echo $artifact_build_name | tr ' ' '-'`
|
||||
echo "artifact_build_name=$artifact_build_name" >> $GITHUB_OUTPUT
|
||||
echo "artifact_dir=$artifact_dir" >> $GITHUB_OUTPUT
|
||||
- name: Build
|
||||
run: qmk compile -kb ${{ matrix.keyboard }} -km manna-harbour_miryoku
|
||||
- name: Copy firmware
|
||||
run: |
|
||||
cp *manna-harbour_miryoku* "${{ steps.inputs.outputs.artifact_dir }}"
|
||||
- name: Archive artifacts
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: ${{ steps.inputs.outputs.artifact_build_name }}
|
||||
path: ${{ steps.inputs.outputs.artifact_dir }}
|
||||
continue-on-error: true
|
||||
@ -0,0 +1,38 @@
|
||||
# Copyright 2021 Manna Harbour
|
||||
# https://github.com/manna-harbour/miryoku
|
||||
|
||||
name: 'Test All Configs'
|
||||
on:
|
||||
- workflow_dispatch
|
||||
jobs:
|
||||
build:
|
||||
if: github.repository_owner == 'manna-harbour'
|
||||
uses: ./.github/workflows/main.yml
|
||||
with:
|
||||
keyboard: '["crkbd"]'
|
||||
alphas: '[
|
||||
"default",
|
||||
"azerty",
|
||||
"colemak",
|
||||
"colemakdhk",
|
||||
"dvorak",
|
||||
"halmak",
|
||||
"workman",
|
||||
"qwerty",
|
||||
"qwertz"
|
||||
]'
|
||||
nav: '[
|
||||
"default",
|
||||
"vi",
|
||||
"invertedt"
|
||||
]'
|
||||
clipboard: '[
|
||||
"default",
|
||||
"fun",
|
||||
"mac",
|
||||
"win"
|
||||
]'
|
||||
layers: '[
|
||||
"default",
|
||||
"flip"
|
||||
]'
|
||||
@ -0,0 +1,14 @@
|
||||
# Copyright 2021 Manna Harbour
|
||||
# https://github.com/manna-harbour/miryoku
|
||||
|
||||
name: 'Test Build'
|
||||
on:
|
||||
push:
|
||||
pull_request:
|
||||
workflow_dispatch:
|
||||
jobs:
|
||||
build:
|
||||
if: github.repository_owner == 'manna-harbour'
|
||||
uses: ./.github/workflows/main.yml
|
||||
with:
|
||||
keyboard: '["crkbd"]'
|
||||
@ -0,0 +1,86 @@
|
||||
# Copyright 2021 Manna Harbour
|
||||
# https://github.com/manna-harbour/miryoku
|
||||
|
||||
name: 'Test Inputs'
|
||||
on:
|
||||
workflow_dispatch:
|
||||
inputs:
|
||||
keyboard:
|
||||
description: 'Keyboard'
|
||||
required: true
|
||||
alphas:
|
||||
description: 'Miryoku Alphas'
|
||||
required: false
|
||||
default: 'default'
|
||||
nav:
|
||||
description: 'Miryoku Nav'
|
||||
required: false
|
||||
default: 'default'
|
||||
clipboard:
|
||||
description: 'Miryoku Clipboard'
|
||||
required: false
|
||||
default: 'default'
|
||||
layers:
|
||||
description: 'Miryoku Layers'
|
||||
required: false
|
||||
default: 'default'
|
||||
mapping:
|
||||
description: 'Miryoku Mapping'
|
||||
required: false
|
||||
default: 'default'
|
||||
rules:
|
||||
description: 'custom_rules.mk'
|
||||
required: false
|
||||
default: 'default'
|
||||
custom_config:
|
||||
description: 'custom_config.h'
|
||||
required: false
|
||||
default: 'default'
|
||||
merge:
|
||||
description: 'Merge QMK Branches'
|
||||
required: false
|
||||
default: 'default'
|
||||
jobs:
|
||||
process-inputs:
|
||||
runs-on: ubuntu-latest
|
||||
outputs:
|
||||
keyboard: ${{ steps.process-inputs.outputs.keyboard }}
|
||||
alphas: ${{ steps.process-inputs.outputs.alphas }}
|
||||
nav: ${{ steps.process-inputs.outputs.nav }}
|
||||
clipboard: ${{ steps.process-inputs.outputs.clipboard }}
|
||||
layers: ${{ steps.process-inputs.outputs.layers }}
|
||||
mapping: ${{ steps.process-inputs.outputs.mapping }}
|
||||
rules: ${{ steps.process-inputs.outputs.rules }}
|
||||
custom_config: ${{ steps.process-inputs.outputs.custom_config }}
|
||||
merge: ${{ steps.process-inputs.outputs.merge }}
|
||||
steps:
|
||||
- name: Process inputs
|
||||
id: process-inputs
|
||||
run: |
|
||||
set-output()
|
||||
{
|
||||
json=`echo "$2" | jq -cnR 'inputs | split(",";"")'`
|
||||
echo "$1=$json" >> $GITHUB_OUTPUT
|
||||
}
|
||||
set-output "keyboard" "${{ github.event.inputs.keyboard }}"
|
||||
set-output "alphas" "${{ github.event.inputs.alphas }}"
|
||||
set-output "nav" "${{ github.event.inputs.nav }}"
|
||||
set-output "clipboard" "${{ github.event.inputs.clipboard }}"
|
||||
set-output "layers" "${{ github.event.inputs.layers }}"
|
||||
set-output "mapping" "${{ github.event.inputs.mapping }}"
|
||||
set-output "rules" "${{ github.event.inputs.rules }}"
|
||||
set-output "custom_config" "${{ github.event.inputs.custom_config }}"
|
||||
set-output "merge" "${{ github.event.inputs.merge }}"
|
||||
build:
|
||||
uses: ./.github/workflows/main.yml
|
||||
needs: process-inputs
|
||||
with:
|
||||
keyboard: ${{ needs.process-inputs.outputs.keyboard }}
|
||||
alphas: ${{ needs.process-inputs.outputs.alphas }}
|
||||
nav: ${{ needs.process-inputs.outputs.nav }}
|
||||
clipboard: ${{ needs.process-inputs.outputs.clipboard }}
|
||||
layers: ${{ needs.process-inputs.outputs.layers }}
|
||||
mapping: ${{ needs.process-inputs.outputs.mapping }}
|
||||
rules: ${{ needs.process-inputs.outputs.rules }}
|
||||
custom_config: ${{ needs.process-inputs.outputs.custom_config }}
|
||||
merge: ${{ needs.process-inputs.outputs.merge }}
|
||||
@ -0,0 +1,16 @@
|
||||
# Copyright 2022 Manna Harbour
|
||||
# https://github.com/manna-harbour/miryoku
|
||||
|
||||
name: 'Test Merge'
|
||||
on:
|
||||
workflow_dispatch:
|
||||
jobs:
|
||||
build:
|
||||
if: github.repository_owner == 'manna-harbour'
|
||||
uses: ./.github/workflows/main.yml
|
||||
with:
|
||||
keyboard: '["crkbd"]'
|
||||
merge: '[
|
||||
"qmk/qmk_firmware/master",
|
||||
"qmk/qmk_firmware/develop"
|
||||
]'
|
||||
@ -0,0 +1,17 @@
|
||||
# Copyright 2019 Manna Harbour
|
||||
# https://github.com/manna-harbour/miryoku
|
||||
|
||||
* Miryoku QMK Development Branch Repository [[https://raw.githubusercontent.com/manna-harbour/miryoku/master/data/logos/miryoku-roa-32.png]]
|
||||
|
||||
[[https://raw.githubusercontent.com/manna-harbour/miryoku/master/data/cover/miryoku-kle-cover.png]]
|
||||
|
||||
[[https://github.com/manna-harbour/miryoku/][Miryoku]] is an ergonomic, minimal, orthogonal, and universal keyboard layout. This is the repository for the development branch of [[https://github.com/manna-harbour/miryoku_qmk/tree/miryoku/users/manna-harbour_miryoku][Miryoku QMK]].
|
||||
|
||||
|
||||
- The Miryoku QMK development branch readme is at https://github.com/manna-harbour/miryoku_qmk/tree/miryoku/users/manna-harbour_miryoku
|
||||
|
||||
|
||||
**
|
||||
|
||||
[[https://github.com/manna-harbour][https://raw.githubusercontent.com/manna-harbour/miryoku/master/data/logos/manna-harbour-boa-32.png]]
|
||||
|
||||
Loading…
Reference in New Issue