mirror of
https://github.com/danderson/netboot.git
synced 2025-08-07 07:07:17 +02:00
Delete the vendored source under `thirds_party/ipxe` and replace it with a submodule reference to https://github.com/ipxe/ipxe.git at commit 8f1514a00450119b04b08642c55aa674bdf5a4ef a.k.a. tag `v1.20.1` a.k.a. the latest release as of this writing. Edit `Makefile` to change the rule body of the `update-ipxe` target: * Discover the full path of `pixiecore/boot.ipxe`; i.e., the `EMBED` script given to the `ipxe` build. * Use `$(MAKE) -C` instead of subshelled `cd`. * Leave the four built ipxe binaries where they are built. * Change the `go-bindata` to operate on the four files (instead of the directory that contains them), write to `out/ipxe/bindata.go` (instead of `third_party/ipxe/ipxe-bin.go`), and lose the `-prefix`. Edit `cmd/pixiecore/main.go` use the new `ipxe` import path and reference the binaries by the longer, un-prefixed path keys. Add `out/ipxe/bindata.go`, the thing generated by `go-bindata`. Yeah, we shouldn't source-control that which we can generate, but... * `ipxe` builds are not reproducible (yet) * building those four binaries takes a appreciable amount of time * we can avoid a build-time dependency on `go-bindata` Remove `third_party/Makefile` because it looks like dead code. At any rate, it seems this patch obviates everything it may have done. |
||
---|---|---|
.. | ||
Dockerfile | ||
LICENSE | ||
main.go | ||
README.md |
Pixiecore, with embedded iPXE
This is a version of the Pixiecore tool that embeds iPXE binaries for all of Pixiecore's supported architectures/firmwares, so you don't have to handle building and deploying them yourself.
Due to iPXE's license, the result of embedding iPXE builds in the Pixiecore binary makes the overall binary fall under the terms of the GPLv2. See the LICENSE file in this directory for that license.
If you want an Apache-licensed build, check the "pixiecore-apache2" directory one level up for a build that doesn't embed iPXE (you have to supply iPXE binaries at runtime).