I already have a bbappend file for tezi-metadata and would like to set the variables there. However, I get a rather long Python error. Before I fight my way through it, is this the right approach?
Hi, I’m the Toradex AI Assistant. I’m in early beta, and I would appreciate your feedback.
The Toradex Support team will follow up with you shortly!
Did you like my answer?
Yes, you are on the right track by using a .bbappend file to customize the Tezi metadata in Yocto. The variables you mentioned (TEZI_AUTO_INSTALL, TEZI_EULA_FILE, etc.) are indeed the correct ones to set for customizing the Toradex Easy Installer (Tezi) behavior.
However, encountering a Python error suggests there might be an issue with how the variables are being set or with the syntax in your .bbappend file. Here are a few steps to help you troubleshoot:
Check Syntax: Ensure that the syntax in your .bbappend file is correct. For example:
Variable Scope: Make sure that the variables are being set in the correct scope. If you are setting these variables conditionally, ensure that the conditions are correctly defined.
Layer Dependencies: Ensure that your layer dependencies are correctly set up. The tezi-metadata recipe should be available and correctly included in your build.
Debugging: Use the bitbake -e <recipe> command to inspect the environment and see how the variables are being set. This can help identify if there are any conflicts or overrides happening.
If the error persists, it might be helpful to look at the specific Python error message to understand what part of the build process is failing. This can provide more insight into whether the issue is with the variable setting or something else in the build process.
I initially did it by changing the tezi class, but it is not a good solution in my opinion. Is there a possibility to realise the automatic installation and the extension of a 3rd partition via a bappend recipe?
Now I got it
According to that documentation, you should remove the license line:
Remove the license property to bypass the acceptance check. Note: This will automatically accept all licenses in the image.
You can also see that there is a minus before the "license":"general license" and the line is read, just like in a git diff
(TBH, I didn’t quickly get it at first , but it is there.)
So, seems like that you need:
TEZI_EULA_FILE = ""
1.1. maybe this is not mandatory… I am not currently sure
TEZI_EULA_URL = ""
2.1. so you have no issues with image_type_tezi.bbclass trying to download it
TEZI_SHOW_EULA_LICENSE = 0
3.1. so the license: "something" line won’t be in your resulting image.json
3.2. this variable is defined in tdx-base.inc, which is used by the distro conf files (e.g. tdx-xwayland.conf), so it is possible that you need to “create” your own distro (based on the distro that you are already using) for your redefinition of this variable to be picked up.
I came up with this just by looking at the layers/recipes. In other words, I didn’t try it myself yet. Kindly try this on your side and let me know how it goes.
Looking further, seems like the way to do it is by creating your own image_type_tezi.bbclass, based on Toradex’s.