--- /dev/null
+{ 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 <nixpkgs/pkgs/build-support/build-pecl.nix> { 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
+ '';
+})