anchor.diff:    meta = with lib; {
       description = "Peer-to-peer, anonymous electronic cash system";
       homepage = "https://z.cash/";
  -    maintainers = with maintainers; [ rht tkerber ];
  +    maintainers = with maintainers; [ rht tkerber centromere ];
       license = licenses.mit;
  -    platforms = platforms.linux;
  +    platforms = platforms.linux ++ platforms.darwin;
     };
   }
  
positive.code: { rust, rustPlatform, stdenv, lib, fetchFromGitHub, autoreconfHook, makeWrapper
  , cargo, pkg-config, curl, coreutils, boost177, db62, hexdump, libsodium
  , libevent, utf8cpp, util-linux, withDaemon ? true, withMining ? true
  , withUtils ? true, withWallet ? true, withZmq ? true, zeromq
  }:
  
  rustPlatform.buildRustPackage.override { stdenv = stdenv; } rec {
    pname = "zcash";
    version = "4.6.0-2";
  
    src = fetchFromGitHub {
      owner = "zcash";
      repo  = "zcash";
      rev = "v${version}";
      sha256 = "sha256-RvUa8CKPBFfsqzrJkPHePZMqpCfyVafrUbftMdTviHA=";
    };
  
    cargoSha256 = "sha256-qWimataBZ/rLDOLgetNfFAzi/psXcJV54b3WGm9k+b4=";
  
    nativeBuildInputs = [ autoreconfHook cargo hexdump makeWrapper pkg-config ];
    buildInputs = [ boost177 libevent libsodium utf8cpp ]
      ++ lib.optional withWallet db62
      ++ lib.optional withZmq zeromq;
  
  
negative.code: 
    configureFlags = [
      "--disable-tests"
      "--with-boost-libdir=${lib.getLib boost178}/lib"
      "CXXFLAGS=-I${lib.getDev utf8cpp}/include/utf8cpp"
      "RUST_TARGET=${rust.toRustTargetSpec stdenv.hostPlatform}"
    ] ++ lib.optional (!withWallet) "--disable-wallet"
  