Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
1{ stdenv, lib, fetchsvn, linux
2, scripts ? fetchsvn {
3 url = "https://www.fsfla.org/svn/fsfla/software/linux-libre/releases/branches/";
4 rev = "17688";
5 sha256 = "02bw3lgy3i7bbx83p13l40m48msks2yb5qb1d365ghl6axkw6vwd";
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
17in linux.override {
18 argsOverride = {
19 modDirVersion = "${linux.modDirVersion}-gnu";
20
21 src = stdenv.mkDerivation {
22 name = "${linux.name}-libre-src";
23 src = linux.src;
24 buildPhase = ''
25 # --force flag to skip empty files after deblobbing
26 ${scripts}/${majorMinor}/deblob-${majorMinor} --force \
27 ${major} ${minor} ${patch}
28 '';
29 checkPhase = ''
30 ${scripts}/deblob-check
31 '';
32 installPhase = ''
33 cp -r . "$out"
34 '';
35 };
36
37 passthru.updateScript = ./update-libre.sh;
38
39 maintainers = [ lib.maintainers.qyliss ];
40 };
41}