anchor.diff: -{ lib, stdenv, glibc, fetchurl, zlib, readline, libossp_uuid, openssl, libxml2, makeWrapper, tzdata, systemd }:
  +{ lib, stdenv, glibc, fetchurl, zlib, readline, libossp_uuid, openssl, libxml2, makeWrapper, tzdata, systemd, icu, pkgconfig }:
   
   let
   
     common = { version, sha256, psqlSchema }:
  -   let atLeast = lib.versionAtLeast version; in stdenv.mkDerivation (rec {
  +  let
  +    atLeast = lib.versionAtLeast version;
  +
  +    # Build with ICU by default on versions that support it
  +    icuEnabled = atLeast "10";
  +  in stdenv.mkDerivation (rec {
       name = "postgresql-${version}";
       inherit version;
   
  
positive.code: 
      buildInputs =
        [ zlib readline openssl libxml2 makeWrapper ]
        ++ lib.optionals (atLeast "9.6" && !stdenv.isDarwin) [ systemd ]
        ++ lib.optionals (!stdenv.isDarwin) [ libossp_uuid ];
  
      enableParallelBuilding = !stdenv.isDarwin;
  
  
negative.code:       "--with-system-tzdata=${tzdata}/share/zoneinfo"
        (lib.optionalString (atLeast "9.6" && !stdenv.isDarwin) "--with-systemd")
        (if stdenv.isDarwin then "--with-uuid=e2fs" else "--with-ossp-uuid")
      ] ++ lib.optionals icuEnabled [ "--with-icu" ];
  
      patches =
        [ (if atLeast "9.4" then ./disable-resolve_symlinks-94.patch else ./disable-resolve_symlinks.patch)
  