-
Notifications
You must be signed in to change notification settings - Fork 52
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Properly submodule seL4 #72
Comments
While I do agree that configuration management should definitely be formalised, we should not introduce yet another mechanism. The rest of the seL4 repos use Google I think for the microkit it would be important to make sure that it is useable without using the |
I'm not convinced it would be outdated, both git submodules and repo have pretty horrific user-experiences so I don't want to force them on anyone. |
But I do agree with Gerwin that I guess because |
I agree with the user experience side, that's why I want it to be usable without. But: a hash in a README is not good enough for automation, and if you imagine this going for 10 years or longer, you really need a machine-readable record of which versions fit together and were tested together, otherwise you won't be able to reproduce anything from the past. Apart from that, formal configuration management is a hard requirement for a lot certification schemes and it's not going to be good enough when it gets introduced at the point of certification. So something is definitely needed. If done right, users should not have to interact with |
Sure. I agree with all of that then. I think it's already usable without it so having a separate |
Yes, I think that makes sense. CI would then be updating the manifest to record which versions succeeded similar to the other manifests. |
Roger that, |
It's possible, see e.g. the rumprun repo, but I'm unsure if Ivan will like it :-) I think the two manifest files have to be at the top level for the |
I think having separate repositories can sometimes be confusing to outsiders, especially those new to seL4. I think it might just be simpler to have the manifest files with the source code. |
Just to chime in on this: I'm strongly against using Google's |
This decision is not really up to this repository. Using git submodules here would need a TSC discussion and decision. We have had this discussion multiple times, and git submodules always were found insufficient (and in fact not be better supported by tools). If this is a fundamentally new situation, then I'm fine to put it on the agenda again. If it is just preference, the answer is "no", we have discussed this at length and decided against. The experience with the one exception that has managed to sneak in (on the website repo, but also on other repos that are not under TSC control) is that the user experience with git submodules is strictly worse, people are more confused and make more mistakes with it. |
Understood. Please note, that I'm by no means a strong proponent for git submodules in general. I'm just strongly against git-repo. And for this particular use case (one dependency in the form of that repo with this commit), git submodules are just the simplest, most common substitute. There may be better options, just git-repo is not among them IMHO. I totally agree that git submodules have sub-optimal UX, and I do not want to advocate for them as the advised substitute for git-repo in general. |
Can
seL4
kernel be added as a submodule to Microkit?That way the build is always reproducible - I know you have a version listed in the README, but this will inevitably become outdated.
The text was updated successfully, but these errors were encountered: