Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
at fix-function-merge 48 lines 1.3 kB view raw
1{ stdenv, lib, fetchsvn, linux 2, scripts ? fetchsvn { 3 url = "https://www.fsfla.org/svn/fsfla/software/linux-libre/releases/branches/"; 4 rev = "19618"; 5 sha256 = "1qxk3q13azn8qnk5ciavs2mqmsz9kwyvd9zfya093ykibbj9iwcl"; 6 } 7, ... 8}: 9 10let 11 majorMinor = lib.versions.majorMinor linux.modDirVersion; 12 13 major = lib.versions.major linux.modDirVersion; 14 minor = lib.versions.minor linux.modDirVersion; 15 patch = lib.versions.patch linux.modDirVersion; 16 17 # See http://linux-libre.fsfla.org/pub/linux-libre/releases 18 versionPrefix = if linux.kernelOlder "5.14" then 19 "gnu1" 20 else 21 "gnu"; 22in linux.override { 23 argsOverride = { 24 modDirVersion = "${linux.modDirVersion}-${versionPrefix}"; 25 isLibre = true; 26 pname = "linux-libre"; 27 28 src = stdenv.mkDerivation { 29 name = "${linux.name}-libre-src"; 30 src = linux.src; 31 buildPhase = '' 32 # --force flag to skip empty files after deblobbing 33 ${scripts}/${majorMinor}/deblob-${majorMinor} --force \ 34 ${major} ${minor} ${patch} 35 ''; 36 checkPhase = '' 37 ${scripts}/deblob-check 38 ''; 39 installPhase = '' 40 cp -r . "$out" 41 ''; 42 }; 43 44 passthru.updateScript = ./update-libre.sh; 45 46 maintainers = with lib.maintainers; [ qyliss ]; 47 }; 48}