blob: 18169b5be1ba7151d125865baa59657df58ffe6a (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
|
{ nixpkgs ? import <nixpkgs> {}
}:
with nixpkgs;
rec {
qmkSource = fetchgit {
url = "https://github.com/qmk/qmk_firmware";
rev = "ab1650606c36f85018257aba65d9c3ff8ec42e71";
sha256 = "1k59flkvhjzmfl0yz9z37lqhvad7m9r5wy1p1sjk5274rsmylh79";
fetchSubmodules = true;
};
qmk = import "${qmkSource}/shell.nix" {
avr = true;
teensy = true;
arm = false;
};
layout = stdenv.mkDerivation {
name = "ergodox_ez_grfn.hex";
src = qmkSource;
inherit (qmk) buildInputs AVR_CFLAGS AVR_ASFLAGS;
patches = [ ./increase-tapping-delay.patch ];
postPatch = ''
mkdir keyboards/ergodox_ez/keymaps/grfn
cp ${./keymap.c} keyboards/ergodox_ez/keymaps/grfn/keymap.c
'';
buildPhase = ''
make ergodox_ez:grfn
'';
installPhase = ''
cp ergodox_ez_grfn.hex $out
'';
};
flash = writeShellScript "flash.sh" ''
${teensy-loader-cli}/bin/teensy-loader-cli \
-v \
--mcu=atmega32u4 \
-w ${layout}
'';
}
|