mirror of
https://github.com/icewind1991/nvidia-patch-nixos.git
synced 2026-06-03 11:04:06 +02:00
switch to overlay
This commit is contained in:
parent
7125db93f2
commit
a4e8e6f4e7
2 changed files with 36 additions and 26 deletions
51
flake.nix
51
flake.nix
|
|
@ -20,27 +20,32 @@
|
|||
devShell = pkgs.mkShell {
|
||||
nativeBuildInputs = with pkgs; [jq patch];
|
||||
};
|
||||
|
||||
extract = pkgs.callPackage ./extract.nix {};
|
||||
createPatch = prefix: driverPackage: rev: hash: driverPackage.overrideAttrs ({
|
||||
version,
|
||||
preFixup ? "",
|
||||
...
|
||||
}: let
|
||||
inherit (nixpkgs.lib) importJSON;
|
||||
jsons = extract rev hash;
|
||||
patchList = importJSON "${jsons}/${prefix}patch-list.json";
|
||||
objectList = importJSON "${jsons}/${prefix}object-list.json";
|
||||
object = objectList.${version};
|
||||
patch = patchList.${version};
|
||||
in {
|
||||
preFixup =
|
||||
preFixup
|
||||
+ ''
|
||||
sed -i '${patch}' $out/lib/${object}.${version}
|
||||
'';
|
||||
});
|
||||
patchNvenc = createPatch "";
|
||||
patchFbc = createPatch "fbc-";
|
||||
});
|
||||
}) // {
|
||||
overlay = final: prev: {
|
||||
nvidia-patch = rev: hash: let
|
||||
inherit (nixpkgs.lib) importJSON;
|
||||
extract = final.callPackage ./extract.nix {};
|
||||
jsons = extract rev hash;
|
||||
createPatch = prefix: rev: hash: driverPackage: driverPackage.overrideAttrs ({
|
||||
version,
|
||||
preFixup ? "",
|
||||
...
|
||||
}: let
|
||||
patchList = importJSON "${jsons}/${prefix}patch-list.json";
|
||||
objectList = importJSON "${jsons}/${prefix}object-list.json";
|
||||
patch = patchList.${version};
|
||||
object = objectList.${version};
|
||||
in {
|
||||
preFixup =
|
||||
preFixup
|
||||
+ ''
|
||||
sed -i '${patch}' $out/lib/${object}.${version}
|
||||
'';
|
||||
});
|
||||
in {
|
||||
patch-nvenc = createPatch "" rev hash;
|
||||
patch-fbc = createPatch "fbc-" rev hash;
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue