36 lines
		
	
	
		
			974 B
		
	
	
	
		
			Nix
		
	
	
	
	
	
			
		
		
	
	
			36 lines
		
	
	
		
			974 B
		
	
	
	
		
			Nix
		
	
	
	
	
	
{ stdenv, lib, fetchFromGitHub, kernel }:
 | 
						|
 | 
						|
assert lib.versionAtLeast kernel.version "4.4";
 | 
						|
 | 
						|
stdenv.mkDerivation {
 | 
						|
  name = "sch_cake-2017-07-16";
 | 
						|
 | 
						|
  src = fetchFromGitHub {
 | 
						|
    owner = "dtaht";
 | 
						|
    repo = "sch_cake";
 | 
						|
    rev = "e641a56f27b6848736028f87eda65ac3df9f99f7";
 | 
						|
    sha256 = "08582jy01j32b3mj8hf6m8687qrcz64zv2m236j24inlkmd94q21";
 | 
						|
  };
 | 
						|
 | 
						|
  hardeningDisable = [ "pic" ];
 | 
						|
 | 
						|
  makeFlags = [
 | 
						|
    "KERNEL_VERSION=${kernel.version}"
 | 
						|
    "KDIR=${kernel.dev}/lib/modules/${kernel.modDirVersion}/build"
 | 
						|
  ];
 | 
						|
 | 
						|
  installPhase = ''
 | 
						|
    install -v -m 644 -D sch_cake.ko \
 | 
						|
      $out/lib/modules/${kernel.modDirVersion}/kernel/net/sched/sch_cake.ko
 | 
						|
  '';
 | 
						|
 | 
						|
  meta = with lib; {
 | 
						|
    description = "The cake qdisc scheduler";
 | 
						|
    homepage = "https://www.bufferbloat.net/projects/codel/wiki/Cake/";
 | 
						|
    license = with licenses; [ bsd3 gpl2 ];
 | 
						|
    maintainers = with maintainers; [ fpletz ];
 | 
						|
    platforms = platforms.linux;
 | 
						|
    broken = !lib.versionOlder kernel.version "4.13";
 | 
						|
  };
 | 
						|
}
 |