From ccb779782ccb471954971697fcdf1c2331cd906b Mon Sep 17 00:00:00 2001 From: Cole Helbling Date: Wed, 16 Oct 2024 08:46:44 -0700 Subject: [PATCH] flake.nix: exclude armv6-linux, riscv64-linux, and FreeBSD from devShells MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit nixfmt-rfc-style is built with Haskell, and the packaged GHC compiler does not support any of these platforms (currently?). error: … while checking flake output 'devShells' at /nix/store/p36amaznf46ic90fb2rw5c952mgj6mfi-source/flake.nix:123:7: 122| 123| devShells = forAllSystems (system: { } // lib.optionalAttrs (system != "armv6l-linux" && system != "riscv64-linux") { | ^ 124| /** A shell to get tooling for Nixpkgs development. See nixpkgs/shell.nix. */ … while checking the derivation 'devShells.x86_64-freebsd.default' at /nix/store/p36amaznf46ic90fb2rw5c952mgj6mfi-source/flake.nix:125:9: 124| /** A shell to get tooling for Nixpkgs development. See nixpkgs/shell.nix. */ 125| default = import ./shell.nix { inherit system; }; | ^ 126| }); (stack trace truncated; use '--show-trace' to show the full, detailed trace) error: Package ‘ghc-9.6.6’ in /nix/store/8akjd9ngyzhzi1412nxmw26rnj93l3gp-source/pkgs/development/compilers/ghc/common-hadrian.nix:579 is not available on the requested hostPlatform: hostPlatform.config = "x86_64-unknown-freebsd" package.meta.platforms = [ "aarch64-darwin" "aarch64-linux" "i686-linux" "x86_64-darwin" "x86_64-linux" ] package.meta.badPlatforms = [ ] , refusing to evaluate. --- flake.nix | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/flake.nix b/flake.nix index f67d2724bce8..9873c1c94971 100644 --- a/flake.nix +++ b/flake.nix @@ -120,10 +120,20 @@ }).nixos.manual; }; - devShells = forAllSystems (system: { - /** A shell to get tooling for Nixpkgs development. See nixpkgs/shell.nix. */ - default = import ./shell.nix { inherit system; }; - }); + devShells = forAllSystems (system: + { } // lib.optionalAttrs + ( + # Exclude armv6l-linux because "Package ‘ghc-9.6.6’ in .../pkgs/development/compilers/ghc/common-hadrian.nix:579 is not available on the requested hostPlatform" + system != "armv6l-linux" + # Exclude riscv64-linux because "Package ‘ghc-9.6.6’ in .../pkgs/development/compilers/ghc/common-hadrian.nix:579 is not available on the requested hostPlatform" + && system != "riscv64-linux" + # Exclude FreeBSD because "Package ‘ghc-9.6.6’ in .../pkgs/development/compilers/ghc/common-hadrian.nix:579 is not available on the requested hostPlatform" + && !self.legacyPackages.${system}.stdenv.hostPlatform.isFreeBSD + ) + { + /** A shell to get tooling for Nixpkgs development. See nixpkgs/shell.nix. */ + default = import ./shell.nix { inherit system; }; + }); /** A nested structure of [packages](https://nix.dev/manual/nix/latest/glossary#package-attribute-set) and other values.