Skip to content

Commit 3cda871

Browse files
Nullbits Cojaygreco
authored andcommitted
Initial commit
0 parents  commit 3cda871

6 files changed

Lines changed: 171 additions & 0 deletions

File tree

.github/actions/Dockerfile

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
FROM qmkfm/base_container
2+
3+
COPY entrypoint.sh /entrypoint.sh
4+
ENTRYPOINT ["/entrypoint.sh"]

.github/actions/entrypoint.sh

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
#!/bin/sh -l
2+
3+
git clone --no-checkout https://github.com/qmk/qmk_firmware.git --depth 1
4+
5+
cd qmk_firmware
6+
7+
git config core.sparsecheckout true
8+
echo '/*\n!/keyboards\n/keyboards/nullbitsco/*\n' > .git/info/sparse-checkout
9+
git checkout --
10+
11+
cd keyboards/nullbitsco
12+
git submodule add https://github.com/nullbitsco/tidbit tidbit
13+
14+
cd ../../
15+
16+
qmk setup -y
17+
18+
make all

.github/workflows/build-fw.yml

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
name: "Nightly firmware build"
2+
3+
on:
4+
schedule:
5+
# * is a special character in YAML so you have to quote this string
6+
- cron: '11 6 * * *'
7+
8+
jobs:
9+
nightly_build:
10+
runs-on: ubuntu-latest
11+
name: Build firmware
12+
steps:
13+
- name: Check out repository
14+
uses: actions/checkout@v2
15+
- name: Build in docker container
16+
uses: ./.github/actions/
17+
- name: Archive artifacts
18+
uses: actions/upload-artifact@v2
19+
with:
20+
name: precompiled-firmware-files
21+
path: |
22+
qmk_firmware/nullbitsco_*.hex
23+
- name: Get current date
24+
id: date
25+
run: echo "::set-output name=date::$(date +'%m/%d/%Y')"
26+
- name: Generate release text
27+
id: release_text
28+
run: >
29+
echo "::set-output name=release_text::$(echo 'Nightly build outputs for nullbits keyboards.
30+
These files are always the most up-to-date but may contain unfixed bugs or other unreported issues!
31+
**It is highly recommended that you flash one of the [official releases](https://github.com/nullbitsco/firmware/releases/tag/latest) instead.**')"
32+
- name: Create release
33+
uses: ncipollo/release-action@v1
34+
with:
35+
artifacts: "qmk_firmware/nullbitsco_*.hex"
36+
allowUpdates: true
37+
artifactErrorsFailBuild: true
38+
body: ${{ steps.release_text.outputs.release_text }}
39+
tag: "nightly"
40+
name: "Nightly Build ${{ steps.date.outputs.date }}"
41+
token: ${{ secrets.GITHUB_TOKEN }}

.github/workflows/release-fw.yml

Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
name: "Build and release firmware"
2+
3+
on:
4+
workflow_dispatch:
5+
inputs:
6+
releaseBody:
7+
description: 'Additional release text'
8+
default: ""
9+
10+
#TODO: split jobs!
11+
jobs:
12+
build:
13+
runs-on: ubuntu-latest
14+
name: Build firmware
15+
steps:
16+
- name: Check out repository
17+
uses: actions/checkout@v2
18+
- name: Build in docker container
19+
uses: ./.github/actions/
20+
- name: Archive artifacts
21+
uses: actions/upload-artifact@v2
22+
with:
23+
name: precompiled-firmware-files
24+
path: |
25+
qmk_firmware/nullbitsco_*.hex
26+
- name: Get current date
27+
id: date
28+
run: echo "::set-output name=date::$(date +'%m/%d/%Y')"
29+
- name: Generate release text
30+
id: release_text
31+
run: >
32+
echo "::set-output name=release_text::$(echo 'Precompiled firmware files for nullbits keyboards.
33+
Download a firmware file by expanding "Assets", right clicking, and choosing "Save File As" or "Save Link As".
34+
<br/>${{ github.event.inputs.releaseBody }}<br/>Released on ${{ steps.date.outputs.date }}.')"
35+
- name: Create release
36+
uses: ncipollo/release-action@v1
37+
with:
38+
artifacts: "qmk_firmware/nullbitsco_*.hex"
39+
allowUpdates: true
40+
artifactErrorsFailBuild: true
41+
body: ${{ steps.release_text.outputs.release_text }}
42+
tag: "latest"
43+
name: "Precompiled Firmware Files"
44+
token: ${{ secrets.GITHUB_TOKEN }}

.gitignore

Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
1+
# Prerequisites
2+
*.d
3+
4+
# Object files
5+
*.o
6+
*.ko
7+
*.obj
8+
*.elf
9+
10+
# Linker output
11+
*.ilk
12+
*.map
13+
*.exp
14+
15+
# Precompiled Headers
16+
*.gch
17+
*.pch
18+
19+
# Libraries
20+
*.lib
21+
*.a
22+
*.la
23+
*.lo
24+
25+
# Shared objects (inc. Windows DLLs)
26+
*.dll
27+
*.so
28+
*.so.*
29+
*.dylib
30+
31+
# Executables
32+
*.exe
33+
*.out
34+
*.app
35+
*.i*86
36+
*.x86_64
37+
*.hex
38+
39+
# Debug files
40+
*.dSYM/
41+
*.su
42+
*.idb
43+
*.pdb
44+
45+
# Kernel Module Compile Results
46+
*.mod*
47+
*.cmd
48+
.tmp_versions/
49+
modules.order
50+
Module.symvers
51+
Mkfile.old
52+
dkms.conf
53+
.DS_Store

README.md

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
# Latest precompiled firmware files for nullbits keyboards
2+
[![Nightly firmware build](https://github.com/nullbitsco/firmware/actions/workflows/build-fw.yml/badge.svg)](https://github.com/nullbitsco/firmware/actions/workflows/build-fw.yml)
3+
4+
For use with [QMK Toolbox](https://github.com/qmk/qmk_toolbox/releases). Follow the flashing guide [here](https://github.com/nullbitsco/docs/blob/main/firmware/firmware_flashing.md).
5+
# [Download link](https://github.com/nullbitsco/firmware/releases/tag/latest)
6+
7+
### Looking for the source code instead?
8+
For those who want to compile along at home.
9+
[NIBBLE](https://github.com/jaygreco/qmk_firmware/tree/master/keyboards/nullbitsco/nibble)
10+
[TIDBIT](https://github.com/nullbitsco/tidbit)
11+
[SCRAMBLE](https://github.com/jaygreco/qmk_firmware/tree/master/keyboards/nullbitsco/scramble)

0 commit comments

Comments
 (0)