From 4d65cc9653e792b0df8e824b0c8233f99692da6c Mon Sep 17 00:00:00 2001 From: Sergey Vlasov Date: Thu, 12 May 2022 11:55:25 +0300 Subject: [PATCH] Sync shell.nix with current QMK master (#43) Apply changes made in the QMK `master` branch: * qmk/qmk_firmware#14231 * qmk/qmk_firmware#16602 --- shell.nix | 39 ++++++++++++++++++++------------------- 1 file changed, 20 insertions(+), 19 deletions(-) diff --git a/shell.nix b/shell.nix index 4db2171..e113bbb 100644 --- a/shell.nix +++ b/shell.nix @@ -1,10 +1,26 @@ -{ avr ? true, arm ? true, teensy ? true }: let # We specify sources via Niv: use "niv update nixpkgs" to update nixpkgs, for example. sources = import ./nix/sources.nix { }; - pkgs = import sources.nixpkgs { }; +in +# However, if you want to override Niv's inputs, this will let you do that. +{ pkgs ? import sources.nixpkgs { } +, poetry2nix ? pkgs.callPackage (import sources.poetry2nix) { } +, avr ? true +, arm ? true +, teensy ? true }: +with pkgs; +let + avrlibc = pkgsCross.avr.libcCross; - poetry2nix = pkgs.callPackage (import sources.poetry2nix) { }; + avr_incflags = [ + "-isystem ${avrlibc}/avr/include" + "-B${avrlibc}/avr/lib/avr5" + "-L${avrlibc}/avr/lib/avr5" + "-B${avrlibc}/avr/lib/avr35" + "-L${avrlibc}/avr/lib/avr35" + "-B${avrlibc}/avr/lib/avr51" + "-L${avrlibc}/avr/lib/avr51" + ]; # Builds the python env based on nix/pyproject.toml and # nix/poetry.lock Use the "poetry update --lock", "poetry add @@ -14,28 +30,13 @@ let projectDir = ./nix; overrides = poetry2nix.overrides.withDefaults (self: super: { qmk = super.qmk.overridePythonAttrs(old: { - # Allow QMK CLI to run "bin/qmk" as a subprocess (the wrapper changes + # Allow QMK CLI to run "qmk" as a subprocess (the wrapper changes # $PATH and breaks these invocations). dontWrapPythonPrograms = true; }); }); }; in - -with pkgs; -let - avrlibc = pkgsCross.avr.libcCross; - - avr_incflags = [ - "-isystem ${avrlibc}/avr/include" - "-B${avrlibc}/avr/lib/avr5" - "-L${avrlibc}/avr/lib/avr5" - "-B${avrlibc}/avr/lib/avr35" - "-L${avrlibc}/avr/lib/avr35" - "-B${avrlibc}/avr/lib/avr51" - "-L${avrlibc}/avr/lib/avr51" - ]; -in mkShell { name = "qmk-firmware";