1{ stdenv, lib, fetchsvn, linux
2, scripts ? fetchsvn {
3 url = "https://www.fsfla.org/svn/fsfla/software/linux-libre/releases/tags/";
4
5 # Update this if linux_latest-libre fails to build.
6 # $ curl https://www.fsfla.org/svn/fsfla/software/linux-libre/releases/tags/ | grep -Eo 'Revision [0-9]+'
7 rev = "16604";
8 sha256 = "0d2dh52zv073zr74ilspy0fy3ivys5pq32j7fljs4fwi2bcljf51";
9 }
10, ...
11}:
12
13let
14 majorMinor = lib.versions.majorMinor linux.modDirVersion;
15
16 major = lib.versions.major linux.modDirVersion;
17 minor = lib.versions.minor linux.modDirVersion;
18 patch = lib.versions.patch linux.modDirVersion;
19
20in linux.override {
21 argsOverride = {
22 modDirVersion = "${linux.modDirVersion}-gnu";
23
24 src = stdenv.mkDerivation {
25 name = "${linux.name}-libre-src";
26 src = linux.src;
27 buildPhase = ''
28 ${scripts}/${majorMinor}-gnu/deblob-${majorMinor} \
29 ${major} ${minor} ${patch}
30 '';
31 checkPhase = ''
32 ${scripts}/deblob-check
33 '';
34 installPhase = ''
35 cp -r . "$out"
36 '';
37 };
38
39 maintainers = [ lib.maintainers.qyliss ];
40 };
41}