{ symlinkJoin, lib, makeWrapper, wayfire, plugins ? [ ] }: symlinkJoin { name = "wayfire-wrapped-${lib.getVersion wayfire}"; nativeBuildInputs = [ makeWrapper ]; paths = [ wayfire ] ++ plugins; postBuild = '' for binary in $out/bin/*; do wrapProgram $binary \ --prefix WAYFIRE_PLUGIN_PATH : $out/lib/wayfire \ --prefix WAYFIRE_PLUGIN_XML_PATH : $out/share/wayfire/metadata done ''; preferLocalBuild = true; passthru = wayfire.passthru // { unwrapped = wayfire; }; meta = wayfire.meta // { # To prevent builds on hydra hydraPlatforms = []; # prefer wrapper over the package priority = (wayfire.meta.priority or 0) - 1; }; }