diff options
author | Jan Tojnar <jtojnar@gmail.com> | 2020-12-22 22:39:29 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-12-22 22:39:29 +0100 |
commit | 3dfcc7e3a57268d06754b44bf89ff0b728df8de4 (patch) | |
tree | b46b548d670f8d00510810675ba3c277fb3b05b4 /doc | |
parent | d3a8c46fa838c754214ddb3ce5aad0bfd29ac37f (diff) | |
parent | b2594c71c248b78b8526a62f43ad74151a31ac3a (diff) |
Merge pull request #107044 from jtojnar/overridable-php-packages
Diffstat (limited to 'doc')
-rw-r--r-- | doc/languages-frameworks/php.section.md | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/doc/languages-frameworks/php.section.md b/doc/languages-frameworks/php.section.md index 763beeb59358..5977363323f1 100644 --- a/doc/languages-frameworks/php.section.md +++ b/doc/languages-frameworks/php.section.md @@ -135,3 +135,21 @@ Example of building `composer` with additional extensions: enabled ++ (with all; [ imagick redis ])) ).packages.composer ``` + +### Overriding PHP packages {#ssec-php-user-guide-overriding-packages} + +`php-packages.nix` form a scope, allowing us to override the packages defined within. For example, to apply a patch to a `mysqlnd` extension, you can simply pass an overlay-style function to `php`’s `packageOverrides` argument: + +```nix +php.override { + packageOverrides = final: prev: { + extensions = prev.extensions // { + mysqlnd = prev.extensions.mysqlnd.overrideAttrs (attrs: { + patches = attrs.patches or [] ++ [ + … + ]; + }); + }; + }; +} +``` |