Using please.build as a repository orchestrator
Created on 2022-05-27T04:39:59-05:00
I did an experiment using please.build to compile a repository of audio plugins for Linux.
The challenges involved with this task are that plugins tend to bring their own build system, often with their own mix of vendored dependencies.
Ultimately I just told it to download specific versions of dependencies with the zip download command and called in to a package's native build scripts.
Note that builds that take too long are presumed stuck and killed. You have to set some configs to give a job more time. This might not be an issue when Please is being used properly, since you would likely not have a job go on for 20+ minutes. You do run in to the problem when the build rule is just calling in to makefiles within the sandbox.
I had looked at Gnome's JHBuild but was never able to figure it out.
This was an interesting experiment--though I may soon make the attempt to get these packages in proper XBPS packages--but does not play well to the strengths of a Bazel build system.