From c52a2497207f70ca896c6347a87af81ba9f97704 Mon Sep 17 00:00:00 2001 From: urob <978080+urob@users.noreply.github.com> Date: Mon, 12 Aug 2024 09:44:55 -0400 Subject: [PATCH] Detect system automatically --- flake.nix | 38 ++++++++++++++++++++------------------ readme.md | 5 +---- 2 files changed, 21 insertions(+), 22 deletions(-) diff --git a/flake.nix b/flake.nix index 5763a40..4a9994a 100644 --- a/flake.nix +++ b/flake.nix @@ -13,24 +13,26 @@ zephyr-nix.inputs.zephyr.follows = "zephyr"; }; - outputs = { self, nixpkgs, zephyr-nix, ... }: let - # Set your system ("x86_64-linux", "aarch64-linux", "x86_64-darwin", or "aarch64-darwin") - system = "x86_64-linux"; - pkgs = nixpkgs.legacyPackages.${system}; - zephyr = zephyr-nix.packages.${system}; + outputs = { nixpkgs, zephyr-nix, ... }: let + forAllSystems = nixpkgs.lib.genAttrs ["x86_64-linux" "aarch64-linux" "x86_64-darwin" "aarch64-darwin"]; in { - devShells.${system}.default = pkgs.mkShell { - packages = [ - # zephyr.hosttools-nix - # (zephyr.pythonEnv.override {extraPackages = pkgs: [pkgs.pyyaml];}) - zephyr.pythonEnv - zephyr.sdkFull - pkgs.cmake - pkgs.dtc - pkgs.just - pkgs.ninja - pkgs.yq - ]; - }; + devShells = forAllSystems (system: let + pkgs = nixpkgs.legacyPackages.${system}; + zephyr = zephyr-nix.packages.${system}; + in { + default = pkgs.mkShell { + packages = [ + # zephyr.hosttools-nix + # (zephyr.pythonEnv.override {extraPackages = pkgs: [pkgs.pyyaml];}) + zephyr.pythonEnv + zephyr.sdkFull + pkgs.cmake + pkgs.dtc + pkgs.just + pkgs.ninja + pkgs.yq + ]; + }; + }); }; } diff --git a/readme.md b/readme.md index d5013be..2de81ad 100644 --- a/readme.md +++ b/readme.md @@ -313,10 +313,7 @@ environment is _completely isolated_ and won't pollute your system. git clone https://github.com/urob/zmk-config zmk-workspace ``` -2. If on `macOS`, edit `flake.nix` and replace `system = "x86_64-linux` with - `"x86_64-darwin"` (Intel processor) or `"aarch64-darwin"` (Apple silicon). - -3. Enter the workspace and set up the environment. +2. Enter the workspace and set up the environment. ```bash # This automatically sets up and activates a virtual shell with the Zephyr toolchain.