@@ -24,14 +24,23 @@ control and maintenance for the default user experience.
24
24
25
25
Further packages, not installed by default, can also be added via the
26
26
[ supported seeds] ( https://git.launchpad.net/~ubuntu-core-dev/ubuntu-seeds/+git/platform/tree/ ) ,
27
- usually because they represent an important workload to the Ubuntu userbase.
27
+ usually because they represent an important yet optional workload to
28
+ the Ubuntu userbase.
28
29
29
30
In general * pulling into main* is done directly via {ref}` seed-management ` or
30
31
indirectly via a dependency from something that already is in ` main ` .
31
32
32
- For something to be allowed into ` main ` , all its runtime dependencies must also
33
- be in ` main ` . In the past, build-dependencies also had to be in
34
- ` main ` , but since 14.04 Trusty that is no longer a hard requirement.
33
+ For something to be allowed into ` main ` , all its code and runtime dependencies
34
+ must be in ` main ` .
35
+ In the past, build-dependencies also had to be in generally ` main ` , but since
36
+ 14.04 Trusty that is no longer a hard requirement. This is meant to easen
37
+ the burden on tools only e.g. rendering documentation, yet it does not mean "no
38
+ build-dependencies are needed" either. Code that is built into the resulting
39
+ artifacts even without a dependency to another package in the final packages
40
+ metadata shall be in main as well.
41
+ This is the default for some ecosystems like rust and go, but also valid for
42
+ e.g. C headers if they contain not just definitions but large amounts of
43
+ active code that is built into the binaries.
35
44
36
45
37
46
## MIR process overview
0 commit comments