Hi,
in our org we use a shared Yocto distribution that a lot of different projects
build on top of. The individual projects use the common layers of our
distribution and add project-specific layers on top of them. There is a shared
package feed and I'm looking for a way to prevent the individual projects from
overwriting each other's packages, which may share the same name but may have
different contents or configuration.
Is there a best practice how to achieve that?
Solutions that come to mind so far:
* append a project specific suffix to PKG:${PN} - this prevents the name
collision, but has to be set explicitly in each recipe of the project-specific
layer(s)
* set PACKAGE_ARCH to a project specific one - this would neatly separate the
RPMs in different folders, but also needs to be set explicitly in each recipe
of the project-specific layer(s) - also feels a bit hackish (a project is not
an architecture)
* use a dedicated package feed per project - this is probably the most robust /
foolproof way, but doesn't scale well; 99% of the package data is the same
across all projects.
* use a dedicated package feed per project, but also keep a shared package
feed; deduplicate the unmodified packages so the project specific feed contains
only the project specific packages. Configure dnf on the target that it uses
the project-feed first and falls back to the common-feed. (This is my favorite
so far, but I'm not sure how to implement it efficiently - is there any
existing work I can build upon?)
Thanks and best regards,
Patrick
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#64744): https://lists.yoctoproject.org/g/yocto/message/64744
Mute This Topic: https://lists.yoctoproject.org/mt/111050220/21656
Group Owner: [email protected]
Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-