{ stdenv, mylibs, composerEnv, fetchurl, gearmand, callPackage, php73, php73base, config_file ? "/var/lib/status_engine/ui.yml" }: let # FIXME: present in php73.buildPecl in latest nixpkgs-unstable gearman = (callPackage { php = php73base; }) rec { version = "2.0.6"; pname = "gearman"; src = fetchurl { url = "https://github.com/wcgallego/pecl-gearman/archive/${pname}-${version}.tar.gz"; sha256 = "0bliga4j41xkvdfh6bqi6k8x6mfxbi5sl9gix97axs7w0ncyfprz"; }; configureFlags = [ "--with-gearman=${gearmand}" ]; nativeBuildInputs = [ gearmand ]; }; in (composerEnv.override { php = php73.withExtensions(e: php73.enabledExtensions ++ (with php73.extensions; [gearman redis mbstring bcmath json iconv])); }).buildPackage (mylibs.fetchedGithub ./worker.json // import ./worker_php_packages.nix { inherit composerEnv fetchurl; } // rec { postInstall = '' ln -s ${config_file} $out/etc/config.yml ''; preInstall = '' cp ${./worker_composer.lock} $out/composer.lock ''; })