Merge pull request #244599 from therishidesai/rdesai/dev-fanout

fanout: init at unstable-2023-07-21

authored by Sandro and committed by GitHub ef25e7a3 a1240ab9

+52
+37
pkgs/os-specific/linux/fanout/default.nix
··· 1 + { lib, stdenv, fetchFromGitHub, kernel, kmod }: 2 + 3 + stdenv.mkDerivation rec { 4 + pname = "fanout"; 5 + version = "unstable-2022-10-17-${kernel.version}"; 6 + 7 + src = fetchFromGitHub { 8 + owner = "bob-linuxtoys"; 9 + repo = "fanout"; 10 + rev = "69b1cc69bf425d1a5f83b4e84d41272f1caa0144"; 11 + hash = "sha256-Q19c88KDFu0A6MejZgKYei9J2693EjRkKtR9hcRcHa0="; 12 + }; 13 + 14 + preBuild = '' 15 + substituteInPlace Makefile --replace "modules_install" "INSTALL_MOD_PATH=$out modules_install" 16 + ''; 17 + 18 + patches = [ 19 + ./remove_auto_mknod.patch 20 + ]; 21 + 22 + hardeningDisable = [ "format" "pic" ]; 23 + 24 + nativeBuildInputs = [ kmod ] ++ kernel.moduleBuildDependencies; 25 + 26 + makeFlags = kernel.makeFlags ++ [ 27 + "KERNELDIR=${kernel.dev}/lib/modules/${kernel.modDirVersion}/build" 28 + ]; 29 + 30 + meta = with lib; { 31 + description = "Kernel-based publish-subscribe system"; 32 + homepage = "https://github.com/bob-linuxtoys/fanout"; 33 + license = licenses.gpl2Only; 34 + maintainers = with maintainers; [ therishidesai ]; 35 + platforms = platforms.linux; 36 + }; 37 + }
+13
pkgs/os-specific/linux/fanout/remove_auto_mknod.patch
··· 1 + diff --git a/fanout.c b/fanout.c 2 + index f5d2a55..87125f4 100644 3 + --- a/fanout.c 4 + +++ b/fanout.c 5 + @@ -13,7 +13,7 @@ 6 + /* Comment out to forgo the creation of /dev entries 7 + * The companion udev rules 'fanout.rules' sets the special file mode 8 + */ 9 + -#define DEV_MKNOD 10 + +// #define DEV_MKNOD 11 + 12 + #include <linux/kernel.h> 13 + #include <linux/module.h>
+2
pkgs/top-level/linux-kernels.nix
··· 349 349 350 350 evdi = callPackage ../os-specific/linux/evdi { }; 351 351 352 + fanout = callPackage ../os-specific/linux/fanout { }; 353 + 352 354 fwts-efi-runtime = callPackage ../os-specific/linux/fwts/module.nix { }; 353 355 354 356 gcadapter-oc-kmod = callPackage ../os-specific/linux/gcadapter-oc-kmod { };