kernel_module_learn/flake.nix
2025-02-25 13:32:53 +01:00

47 lines
1.1 KiB
Nix

{
description = "Environnement de développement pour des modules noyaux Linux";
inputs = {
nixpkgs.url = "nixpkgs";
flake-utils.url = "github:numtide/flake-utils";
};
outputs = {
nixpkgs,
flake-utils,
...
}: flake-utils.lib.eachSystem flake-utils.lib.allSystems (system:
let
pkgs = import nixpkgs { inherit system; };
linux = pkgs.linuxKernel.kernels.linux_zen;
packages = with pkgs; [
clang-tools
];
in {
devShells = rec {
default = nixos;
nixos = pkgs.mkShell {
packages = [ linux.moduleBuildDependencies ] ++ packages;
LINUX_MODULES_FOLDER = "${linux.dev}/lib/modules/${linux.modDirVersion}";
shellHook = ''
echo "Current Linux Kernel used : ${linux.version}"
'';
};
other = pkgs.mkShell {
inherit packages;
shellHook = ''
export LINUX_MODULES_FOLDER=/lib/modules/$(uname -r)
echo "Current Linux Kernel used : $(uname -r)"
'';
};
};
}
);
}