This is a collection of machine definitions and build instructions for Gentoo Build Publisher, as described in the Install Guide. These can be used as a basis for creating your own personal machine definitions. The expectation is that you'd fork this repo and just go with it.
To create a new machine definition simply:
make mylaptop.machine
This will create a new directory, mylaptop with a configuration copied from
the base machine. To instead base it off of another previous definition,
say testing:
make mylaptop.machine base=testing
Then make your desired changes to the machine definition.
git add mylaptop
git commit -m 'New machine: mylaptop'
git push
Then from your GBP instance, create a new job called mylaptop.
gbp addmachine mylaptop https://github.com/<mygithubuser>/gbp-machines.git
Then start building!
gbp build mylaptop
The following starter machines are included:
baseis a from-the-handbook base (systemd) Gentoo install with an empty world file.arm64-baseis like base but with an ARM64 target. This is meant to be build on an AMD64 machine using QEMU as the binary format helper. Because of the underlying emulation this machine build runs slower than the other builds.testingis the same asbasebut withACCEPT_KEYWORDS=~amd64gbpboxis a machine definition per the GBP Install Guide. You can use it to have your GBP instance build itself.
Feel free to create and share your own machine definitions.
The Makefile does a gbp pull instead of gbp publish. That's because I
prefer to publish my builds manually. If your preference is to have new builds
publish automatically, simply replace pull with publish.
By the way, there's nothing dictating that machines in GBP be built a specific way. You can build machine artifacts in any manner you want. As long as the artifacts have all the contents that GBP expects. This is merely how I build my machines but I think it's a good guide and starting point. Again you are free to go with where ever your imagination takes you!