qmk-config/flake.nix
Anish Lakhwara c26df3e1a6 init
2025-09-28 17:09:14 -07:00

37 lines
951 B
Nix

{
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";
};
};
});
}