nixpkgs/nixos/modules/services
talyz 2ba7926959
php.buildEnv: Provide a list of currently enabled extensions
Rework withExtensions / buildEnv to handle currently enabled
extensions better and make them compatible with override. They now
accept a function with the named arguments enabled and all, where
enabled is a list of currently enabled extensions and all is the set
of all extensions. This gives us several nice properties:

 - You always get the right version of the list of currently enabled
   extensions

 - Invocations chain

 - It works well with overridden PHP packages - you always get the
   correct versions of extensions

As a contrived example of what's possible, you can add ImageMagick,
then override the version and disable fpm, then disable cgi, and
lastly remove the zip extension like this:

{ pkgs ? (import <nixpkgs>) {} }:
with pkgs;

let
  phpWithImagick = php74.withExtensions ({ all, enabled }: enabled ++ [ all.imagick ]);

  phpWithImagickWithoutFpm743 = phpWithImagick.override {
    version = "7.4.3";
    sha256 = "wVF7pJV4+y3MZMc6Ptx21PxQfEp6xjmYFYTMfTtMbRQ=";
    fpmSupport = false;
  };

  phpWithImagickWithoutFpmZip743 = phpWithImagickWithoutFpm743.withExtensions (
    { enabled, all }:
      lib.filter (e: e != all.zip) enabled);

  phpWithImagickWithoutFpmZipCgi743 = phpWithImagickWithoutFpmZip743.override {
    cgiSupport = false;
  };
in
  phpWithImagickWithoutFpmZipCgi743
2020-04-26 16:43:05 +02:00
..
admin nixos/oxidized: add missing slash to PIDFile path 2020-01-06 16:58:54 +01:00
amqp treewide: add bool type to enable options, or make use of mkEnableOption 2020-04-21 08:55:36 +02:00
audio mopidy: Create a mopidyPackages set 2020-04-17 12:39:03 +01:00
backup treewide: add bool type to enable options, or make use of mkEnableOption 2020-04-21 08:55:36 +02:00
cluster nixos/k3s: add initial k3s service 2020-04-17 16:39:54 +02:00
computing nixos/boinc: create boinc group 2020-03-25 13:26:31 +01:00
continuous-integration hydra: wrap executables with hydra env vars 2020-04-11 14:36:42 +02:00
databases treewide: add bool type to enable options, or make use of mkEnableOption 2020-04-21 08:55:36 +02:00
desktops Merge pull request #83400 from jtojnar/malcontent-0.7 2020-04-08 17:38:17 +02:00
development nixos/jupyter: Fix documentation example for jupyter.kernels (#56415) 2020-01-31 15:30:02 +01:00
editors treewide: use attrs instead of list for types.loaOf options 2020-01-06 10:39:18 -05:00
games nixos/factorio: add extraSettings and package options 2020-01-10 23:36:14 +00:00
hardware treewide: add bool type to enable options, or make use of mkEnableOption 2020-04-21 08:55:36 +02:00
logging treewide: use attrs instead of list for types.loaOf options 2020-01-06 10:39:18 -05:00
mail php.buildEnv: Provide a list of currently enabled extensions 2020-04-26 16:43:05 +02:00
misc treewide: add bool type to enable options, or make use of mkEnableOption 2020-04-21 08:55:36 +02:00
monitoring nixos/datadog-agent: Fix restartTriggers 2020-04-23 09:58:18 +02:00
network-filesystems treewide: add bool type to enable options, or make use of mkEnableOption 2020-04-21 08:55:36 +02:00
networking Merge pull request #85598 from danderson/tailscale-fix-cachedir 2020-04-21 22:38:32 +02:00
printing treewide: use attrs instead of list for types.loaOf options 2020-01-06 10:39:18 -05:00
scheduling atd: systemd-udev-settle serves no purpose 2020-03-21 11:15:06 +08:00
search solr: drop 7.x series 2020-01-18 08:50:35 -05:00
security Merge pull request #79840 from knl/update-oauth2_proxy-to-5.0.0 2020-04-22 12:15:07 +02:00
system Merge master into staging-next 2020-04-21 19:59:56 +02:00
torrent nixos/deluge: support 2.x 2020-04-18 02:00:04 +02:00
ttys treewide: use attrs instead of list for types.loaOf options 2020-01-06 10:39:18 -05:00
wayland nixos/cage: move ConditionPathExists to service config 2020-03-09 00:47:49 +01:00
web-apps php.buildEnv: Provide a list of currently enabled extensions 2020-04-26 16:43:05 +02:00
web-servers Merge pull request #85402 from jtojnar/httpd-php 2020-04-22 04:23:24 +02:00
x11 Merge master into staging-next 2020-04-21 19:59:56 +02:00