| |
@@ -5,6 +5,11 @@
|
| |
* Components built into a module *MUST* be associated with a reachable commit in Fedora dist-git.footnote:[There are legal and licensing requirements for reproducibility of builds.]
|
| |
* If a stream of a module has build-time-only components, all such components *MUST* be marked as `buildonly: True` in the module metadata to avoid shipping them to users and polluting their repository.
|
| |
|
| |
+ == Requirements for Modules in Fedora
|
| |
+ * Modular-only packages *MUST NOT* exist in Fedora. Modular versions *MAY* exist as alternatives to non-modular packages only. There is an exception to this rule: if the package does not function in non-modular Fedora (with a reasonable amount of work), it is permitted to have it in module only.footnote:[As an example if non-modular Fedora has dnf 4, and there is module with dnf 5, a package that only works with dnf 5 can remain modular only, until dnf 5 is included in non-modular Fedora.] For the time being, such exceptions can be granted by FESCo.
|
| |
+ * Default streams *MUST NOT* be used in Fedora.footnote:[This rule may be revised in the future, especially if the functionality of default streams is improved.]
|
| |
+ * Packagers *SHOULD* prefer compatibility packages rather than modules wherever reasonable (e.g., libraries, language interpreters, …, and anything that can benefit from parallel installability).
|
| |
+
|
| |
== Requirements for Default Streams in Fedora ELN
|
| |
* *Default streams are not permitted in Fedora or EPEL 8.* Fedora ELN permits defaults streams that adhere to the policy below.
|
| |
* All RPMs in default module streams are required to conform to the same https://docs.fedoraproject.org/en-US/packaging-guidelines/Conflicts/[requirements around Conflicts] as non-modular RPMs.
|
| |
The rules have been approved in https://pagure.io/fesco/issue/2406
The rules are reworded to use the MUST NOT/MAY/SHOULD language.