Replies: 4 comments 5 replies
-
Thanks for the feedback! Your first three points are spot on. The third one especially - packages that are required for the build to succeed - is something I've been chipping away at intermittently over the last year, and need to get back to. For the shared crypto library, I suggested trying For the SDK, it is possible to redefine the source registry or image name of the SDK using a
The version (tag) must match what the kits were built with, but otherwise it's pretty easy to replace an SDK with a slightly different one without having to rebuild the world each time. (I'm also open to adding more tools to the SDK.) |
Beta Was this translation helpful? Give feedback.
-
Another interesting snag is that if you decide to start up a new variant that is not prefixed by the variant prefixes you have established (aws, vmware, metal), there is no early-boot-config-providers being built or installed, which very unintuitively breaks loading user-data.toml when it is being placed into the /var/lib/bottlerocket/user-data.toml (i.e it just doesn't get loaded). |
Beta Was this translation helpful? Give feedback.
-
Have you considered adding source RPMs to the builder? That would allow downstream packagers to just patch core packages with additional features instead of having to do a full fork. :) Not sure where exactly they would be available, but the workflow would be something like: # Define the source SRPM
Source0: wellknown/path/to/original-package-1.0-1.src.rpm
%prep
# Extract the source SRPM
rpm2cpio %{SOURCE0} | cpio -idmv
# Setup original sources
%setup -q -n original-package-%{version}
# Add your modifications (including renaming the build and install macros)
patch -p1 < %{PATCH0}
%include original-package-%{version}/original-package.spec
%build
%orig_build
# Add your custom build steps
make custom-target Not sure how else to implement it 🤔 |
Beta Was this translation helpful? Give feedback.
-
So, I have this value:
That when rendered looks like this:
I am rendering it like this:
I googled the handlebars syntax and it turns out you need to do triple {{{ }}} to avoid escaping. |
Beta Was this translation helpful? Give feedback.
-
I have worked quite a bit over the weekend with your toolchain and whilst it is pretty impressive, it is also quite obvious it is still young.
I wrote these things down during my testing, mostly for my own sake, but I thought I should share, again as with previous discussions in the hopes that it may be useful to someone to do something with. :)
Thoughts:
twoliter fetch
before you can runtwoliter build ...
otherwise you get a very unintuitive message about external-kit-metadata.json missing.I will keep adding things to this discussion as I keep working on it.
Beta Was this translation helpful? Give feedback.
All reactions