Nixpkgs/Patching Nixpkgs: Difference between revisions

Toastal (talk | contribs)
m typos
Toastal (talk | contribs)
Cleanup footnote
 
(9 intermediate revisions by 2 users not shown)
Line 5: Line 5:
{| class="wikitable" style="text-align: center; width: 500px;"
{| class="wikitable" style="text-align: center; width: 500px;"
|-
|-
! Name            !! Method          !! IFD !! Requires Flakes
! Name            !! Method          !! [https://nixos.org/manual/nix/unstable/language/import-from-derivation IFD]!! Requires Flakes
|-
|-
| applyPatch      || .patch files    ||  X  ||
| applyPatch      || .patch files    ||  X  ||
Line 18: Line 18:
|}
|}


Most of the solutions work on the <code>.patch</code> files, but those have a huge disadvantage - they quickly go out of date and have to be constantly rebased. This is especially true for solutions that use Git to apply patches. Another disadvantage may be [https://nixos.org/manual/nix/unstable/language/import-from-derivation IFD], which may result in [https://nixcademy.com/posts/what-is-ifd-ups-and-downs/ performance and runtime issues].
Most of the solutions work using the reliable <code>.diff</code> / <code>.patch</code> files. [https://en.wikipedia.org/wiki/Patch_(Unix) Patch files] have some disadvantages, namely they can go out of date, needing rebasing if the patch no longer applies<ref group="footnotes">[[Nixtamal]] will automatically refetch any updates/rebases to patches referencing a dynamic URL, such as an in-review pull request on a code forge, on running <code>nixtamal refresh</code> </ref>. [https://nixos.org/manual/nix/stable/language/import-from-derivation IFD] usage may result in [https://nixcademy.com/posts/what-is-ifd-ups-and-downs/ performance and runtime issues].


== Usage ==
== Usage ==
Line 205: Line 205:
0.33.1
0.33.1
</syntaxhighlight>
</syntaxhighlight>
==Notes==
<references group="footnotes" />


== Resources ==
== Resources ==