When does Buildship/Eclipse customization run?

Buildship does not use the withProperties and withXml hooks (they are file-based, while Buildship is model-based). What Buildship needs is a proper model of Eclipse preference files (not just for JDT). If you (or someone else) are interested in contributing that, I’d be happy to guide you through the process.