{ 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)" ''; }; }; } ); }