add nix flake for development shell

It does not support cross compilation but requires x86_64-linux.
This commit is contained in:
2025-09-05 13:09:47 +02:00
parent d959eaab98
commit 34e39dc2b6
5 changed files with 73 additions and 0 deletions

35
nix/flake.nix Normal file
View File

@@ -0,0 +1,35 @@
{
outputs =
{ self, nixpkgs }:
let
shell =
{ pkgs }:
pkgs.mkShell {
packages = with pkgs; [
ncurses
dialog
perl
bashInteractive
flex
bison
buildPackages.qemu
];
shellHook = ''
# Do not attempt cross compilation.
export CROSS_COMPILE=
# These are set by the compilers shellHook but mk refuses to work when these are set.
unset CC CPP CXX AR AS LD
'';
};
lib = import "${nixpkgs}/lib";
forAll = list: f: lib.genAttrs list f;
in
{
devShells = forAll [ "x86_64-linux" ] (system: {
default = shell {
pkgs = nixpkgs.legacyPackages.${system};
};
});
};
}