init
This commit is contained in:
parent
972aea0b76
commit
c26df3e1a6
10
README.md
10
README.md
|
@ -0,0 +1,10 @@
|
|||
### qmk-config
|
||||
|
||||
qmk configuration for ergodox
|
||||
Uses nix to build and flash the firmware
|
||||
The configurations are generated by qmk online tool
|
||||
|
||||
### flash
|
||||
|
||||
To flash, simply run nix run `.#$KEYBOARD` where `$KEYBOARD` is the desired keyboard
|
||||
Or you can manually use qmk command line if you use nix develop.
|
167
ergodox.json
Normal file
167
ergodox.json
Normal file
|
@ -0,0 +1,167 @@
|
|||
{
|
||||
"version": 1,
|
||||
"notes": "",
|
||||
"documentation": "\"This file is a QMK Configurator export. You can import this at <https://config.qmk.fm>. It can also be used directly with QMK's source code.\n\nTo setup your QMK environment check out the tutorial: <https://docs.qmk.fm/#/newbs>\n\nYou can convert this file to a keymap.c using this command: `qmk json2c {keymap}`\n\nYou can compile this keymap using this command: `qmk compile {keymap}`\"\n",
|
||||
"keyboard": "ergodox_ez/base",
|
||||
"keymap": "ergodox_ez_base_layout_ergodox_pretty_2025-09-28",
|
||||
"layout": "LAYOUT_ergodox_pretty",
|
||||
"layers": [
|
||||
[
|
||||
"KC_ESC",
|
||||
"KC_1",
|
||||
"KC_2",
|
||||
"KC_3",
|
||||
"KC_4",
|
||||
"KC_5",
|
||||
"KC_LEFT",
|
||||
"KC_RGHT",
|
||||
"KC_6",
|
||||
"KC_7",
|
||||
"KC_8",
|
||||
"KC_9",
|
||||
"KC_0",
|
||||
"KC_EQL",
|
||||
"KC_GRV",
|
||||
"KC_QUOT",
|
||||
"KC_COMM",
|
||||
"KC_DOT",
|
||||
"KC_P",
|
||||
"KC_Y",
|
||||
"KC_LBRC",
|
||||
"KC_RBRC",
|
||||
"KC_F",
|
||||
"KC_G",
|
||||
"KC_C",
|
||||
"KC_R",
|
||||
"KC_L",
|
||||
"KC_BSLS",
|
||||
"KC_BSPC",
|
||||
"KC_A",
|
||||
"KC_O",
|
||||
"KC_E",
|
||||
"KC_U",
|
||||
"KC_I",
|
||||
"KC_D",
|
||||
"KC_H",
|
||||
"KC_T",
|
||||
"KC_N",
|
||||
"KC_S",
|
||||
"KC_SLSH",
|
||||
"KC_LSFT",
|
||||
"KC_SCLN",
|
||||
"KC_Q",
|
||||
"KC_J",
|
||||
"KC_K",
|
||||
"KC_X",
|
||||
"KC_LPRN",
|
||||
"KC_RPRN",
|
||||
"KC_B",
|
||||
"KC_M",
|
||||
"KC_W",
|
||||
"KC_V",
|
||||
"KC_Z",
|
||||
"KC_MINS",
|
||||
"KC_LCTL",
|
||||
"LALT(KC_LSFT)",
|
||||
"KC_NO",
|
||||
"KC_LEFT",
|
||||
"KC_RGHT",
|
||||
"KC_UP",
|
||||
"KC_DOWN",
|
||||
"KC_NO",
|
||||
"KC_RALT",
|
||||
"KC_RCTL",
|
||||
"LCG(KC_ENT)",
|
||||
"LCTL(KC_B)",
|
||||
"LCTL(KC_W)",
|
||||
"LCTL(KC_P)",
|
||||
"LCTL(KC_O)",
|
||||
"LCTL(KC_E)",
|
||||
"KC_SPC",
|
||||
"KC_ENT",
|
||||
"LT(1,KC_NO)",
|
||||
"LT(1,KC_NO)",
|
||||
"KC_TAB",
|
||||
"KC_LGUI"
|
||||
],
|
||||
[
|
||||
"KC_NO",
|
||||
"KC_F1",
|
||||
"KC_F2",
|
||||
"KC_F3",
|
||||
"KC_F4",
|
||||
"KC_F5",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_F6",
|
||||
"KC_F7",
|
||||
"KC_F8",
|
||||
"KC_F9",
|
||||
"KC_F10",
|
||||
"KC_F11",
|
||||
"KC_TRNS",
|
||||
"KC_EXLM",
|
||||
"KC_AT",
|
||||
"KC_UP",
|
||||
"KC_DLR",
|
||||
"KC_PERC",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_PMNS",
|
||||
"KC_7",
|
||||
"KC_8",
|
||||
"KC_9",
|
||||
"KC_ASTR",
|
||||
"KC_F12",
|
||||
"KC_TRNS",
|
||||
"KC_LPRN",
|
||||
"KC_LEFT",
|
||||
"KC_DOWN",
|
||||
"KC_RGHT",
|
||||
"KC_RPRN",
|
||||
"KC_PPLS",
|
||||
"KC_4",
|
||||
"KC_5",
|
||||
"KC_6",
|
||||
"KC_EQL",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_LBRC",
|
||||
"KC_RBRC",
|
||||
"KC_HASH",
|
||||
"KC_LCBR",
|
||||
"KC_RCBR",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_0",
|
||||
"KC_1",
|
||||
"KC_2",
|
||||
"KC_3",
|
||||
"KC_BSLS",
|
||||
"KC_TRNS",
|
||||
"EE_CLR",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_DOT",
|
||||
"KC_0",
|
||||
"KC_EQL",
|
||||
"KC_TRNS",
|
||||
"UG_NEXT",
|
||||
"KC_TRNS",
|
||||
"UG_TOGG",
|
||||
"ANY(RGB_M_P)",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"UG_VALD",
|
||||
"UG_VALU",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"UG_HUED",
|
||||
"UG_HUEU"
|
||||
]
|
||||
],
|
||||
"author": ""
|
||||
}
|
61
flake.lock
Normal file
61
flake.lock
Normal file
|
@ -0,0 +1,61 @@
|
|||
{
|
||||
"nodes": {
|
||||
"flake-utils": {
|
||||
"inputs": {
|
||||
"systems": "systems"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1731533236,
|
||||
"narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs": {
|
||||
"locked": {
|
||||
"lastModified": 1759036355,
|
||||
"narHash": "sha256-0m27AKv6ka+q270dw48KflE0LwQYrO7Fm4/2//KCVWg=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "e9f00bd893984bc8ce46c895c3bf7cac95331127",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nixos",
|
||||
"ref": "nixpkgs-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"root": {
|
||||
"inputs": {
|
||||
"flake-utils": "flake-utils",
|
||||
"nixpkgs": "nixpkgs"
|
||||
}
|
||||
},
|
||||
"systems": {
|
||||
"locked": {
|
||||
"lastModified": 1681028828,
|
||||
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"type": "github"
|
||||
}
|
||||
}
|
||||
},
|
||||
"root": "root",
|
||||
"version": 7
|
||||
}
|
36
flake.nix
Normal file
36
flake.nix
Normal file
|
@ -0,0 +1,36 @@
|
|||
{
|
||||
description = "Configuration and build from my qmk keyboards";
|
||||
|
||||
inputs = {
|
||||
nixpkgs.url = "github:nixos/nixpkgs/nixpkgs-unstable";
|
||||
flake-utils.url = "github:numtide/flake-utils";
|
||||
};
|
||||
|
||||
outputs = { self, nixpkgs, flake-utils, ... }:
|
||||
flake-utils.lib.eachDefaultSystem (system:
|
||||
let pkgs = import nixpkgs { inherit system; };
|
||||
in with pkgs; {
|
||||
devShells.default = mkShell {
|
||||
QMK_HOME = "./qmk_firmware";
|
||||
nativeBuildInputs = [ qmk ];
|
||||
};
|
||||
|
||||
apps = let
|
||||
flash = kb:
|
||||
pkgs.writeShellApplication {
|
||||
name = "flash";
|
||||
runtimeInputs = with pkgs; [ qmk ];
|
||||
text = ''
|
||||
export QMK_HOME=./qmk_firmware
|
||||
qmk flash -c ./${kb}.json
|
||||
'';
|
||||
};
|
||||
in {
|
||||
sol3 = {
|
||||
type = "app";
|
||||
program = "${flash "sol3"}/bin/flash";
|
||||
};
|
||||
};
|
||||
|
||||
});
|
||||
}
|
Loading…
Reference in a new issue