config for my ergodox
at main 963 B view raw
1{ 2 description = "Configuration and build from my qmk keyboards"; 3 4 inputs = { 5 nixpkgs.url = "github:nixos/nixpkgs/nixpkgs-unstable"; 6 flake-utils.url = "github:numtide/flake-utils"; 7 }; 8 9 outputs = { self, nixpkgs, flake-utils, ... }: 10 flake-utils.lib.eachDefaultSystem (system: 11 let pkgs = import nixpkgs { inherit system; }; 12 in with pkgs; { 13 devShells.default = mkShell { 14 QMK_HOME = "./qmk_firmware"; 15 nativeBuildInputs = [ qmk ]; 16 }; 17 18 apps = let 19 flash = kb: 20 pkgs.writeShellApplication { 21 name = "flash"; 22 runtimeInputs = with pkgs; [ qmk ]; 23 text = '' 24 export QMK_HOME=./qmk_firmware 25 qmk flash -c ./${kb}.json 26 ''; 27 }; 28 in { 29 ergodox_ez = { 30 type = "app"; 31 program = "${flash "ergodox_ez"}/bin/flash"; 32 }; 33 }; 34 35 }); 36}