diff options
author | Jake Waksbaum <jake.waksbaum@gmail.com> | 2019-11-14 15:00:36 -0500 |
---|---|---|
committer | Drashna Jaelre <drashna@live.com> | 2019-11-14 12:00:36 -0800 |
commit | 8dc9764f31ce3326b2f5fd1a3bea216e86cf4734 (patch) | |
tree | 4c6b98d3ee9d096d73d5df985b8aca10ede47da0 /shell.nix | |
parent | 426c03eda0deb62d916498fbdd671c7d3532b9e4 (diff) | |
download | qmk_firmware-8dc9764f31ce3326b2f5fd1a3bea216e86cf4734.tar.gz qmk_firmware-8dc9764f31ce3326b2f5fd1a3bea216e86cf4734.zip |
Fix shell.nix by pinning nixpkgs (#6213)
Diffstat (limited to 'shell.nix')
-rw-r--r-- | shell.nix | 46 |
1 files changed, 27 insertions, 19 deletions
@@ -1,17 +1,33 @@ | |||
1 | # dfu-programmer doesn't have darwin on it's list of supported platforms | 1 | { avr ? true, arm ? true, teensy ? true }: |
2 | { pkgs ? import <nixpkgs> { config = { allowUnsupportedSystem = true; }; } | ||
3 | , avr ? true, arm ? true, teensy ? true }: | ||
4 | 2 | ||
5 | with pkgs; | ||
6 | let | 3 | let |
7 | avrbinutils = pkgsCross.avr.buildPackages.binutils; | 4 | overlay = self: super: |
8 | avrlibc = pkgsCross.avr.libcCross; | 5 | let addDarwinSupport = pkg: pkg.overrideAttrs (oldAttrs: { |
9 | gcc-arm-embedded = (import (builtins.fetchTarball { | 6 | meta.platforms = (oldAttrs.meta.platforms or []) ++ self.lib.platforms.darwin; |
10 | url = "https://github.com/NixOS/nixpkgs-channels/archive/87f146a41c463a64c93022b11cf19716b3a22037.tar.gz"; | 7 | }); |
11 | sha256 = "0rk8haf19plw6vyvq0am99rik0hrrysknjw0f2vs7985awngy3q2"; | 8 | in { |
12 | }) {}).gcc-arm-embedded; | 9 | dfu-programmer = addDarwinSupport super.dfu-programmer; |
10 | teensy-loader-cli = addDarwinSupport super.teensy-loader-cli; | ||
11 | |||
12 | avrgcc = super.avrgcc.overrideAttrs (oldAttrs: rec { | ||
13 | name = "avr-gcc-8.1.0"; | ||
14 | src = super.fetchurl { | ||
15 | url = "mirror://gcc/releases/gcc-8.1.0/gcc-8.1.0.tar.xz"; | ||
16 | sha256 = "0lxil8x0jjx7zbf90cy1rli650akaa6hpk8wk8s62vk2jbwnc60x"; | ||
17 | }; | ||
18 | }); | ||
19 | }; | ||
13 | 20 | ||
14 | avr_incflags = [ | 21 | nixpkgs = builtins.fetchTarball { |
22 | url = "https://github.com/NixOS/nixpkgs/archive/0260747427737b980f0.tar.gz"; | ||
23 | sha256 = "1p2yc6b40xvvxvmlqd9wb440pkrimnlc2wsbpa5rddlpx1dn8qmf"; | ||
24 | }; | ||
25 | |||
26 | pkgs = import nixpkgs { overlays = [ overlay ]; }; | ||
27 | in | ||
28 | |||
29 | with pkgs; | ||
30 | let avr_incflags = [ | ||
15 | "-isystem ${avrlibc}/avr/include" | 31 | "-isystem ${avrlibc}/avr/include" |
16 | "-B${avrlibc}/avr/lib/avr5" | 32 | "-B${avrlibc}/avr/lib/avr5" |
17 | "-L${avrlibc}/avr/lib/avr5" | 33 | "-L${avrlibc}/avr/lib/avr5" |
@@ -20,15 +36,7 @@ let | |||
20 | "-B${avrlibc}/avr/lib/avr51" | 36 | "-B${avrlibc}/avr/lib/avr51" |
21 | "-L${avrlibc}/avr/lib/avr51" | 37 | "-L${avrlibc}/avr/lib/avr51" |
22 | ]; | 38 | ]; |
23 | avrgcc = pkgsCross.avr.buildPackages.gcc.overrideAttrs (oldAttrs: rec { | ||
24 | name = "avr-gcc-8.1.0"; | ||
25 | src = fetchurl { | ||
26 | url = "mirror://gcc/releases/gcc-8.1.0/gcc-8.1.0.tar.xz"; | ||
27 | sha256 = "0lxil8x0jjx7zbf90cy1rli650akaa6hpk8wk8s62vk2jbwnc60x"; | ||
28 | }; | ||
29 | }); | ||
30 | in | 39 | in |
31 | |||
32 | stdenv.mkDerivation { | 40 | stdenv.mkDerivation { |
33 | name = "qmk-firmware"; | 41 | name = "qmk-firmware"; |
34 | 42 | ||