From 5c68147683416f6d930bc76334b05844322ca67b Mon Sep 17 00:00:00 2001 From: Martin Curlej Date: Jun 10 2020 12:49:58 +0000 Subject: Added modularity glossary A glossary with a short definition of some of the new terms whic modularity introduced into the packaging ecosystem. Issue: modularit:#174 Signed-off-by: Martin Curlej --- diff --git a/modules/ROOT/nav.adoc b/modules/ROOT/nav.adoc index c8e531e..22f9204 100644 --- a/modules/ROOT/nav.adoc +++ b/modules/ROOT/nav.adoc @@ -1,6 +1,7 @@ * **What is Modularity** * xref:index.adoc[Introduction] * xref:community.adoc[Community] +* xref:glossary.adoc[Glossary] * xref:architecture.adoc[Core Concepts] ** xref:architecture/building.adoc[Building Software] ** xref:architecture/consuming.adoc[Consuming Software] diff --git a/modules/ROOT/pages/glossary.adoc b/modules/ROOT/pages/glossary.adoc new file mode 100644 index 0000000..87dd016 --- /dev/null +++ b/modules/ROOT/pages/glossary.adoc @@ -0,0 +1,43 @@ += Glossary + +Modularity introduces a lot of new keywords to the established packaging ecosystem. This is a short glossary to get you started on the basic terms. + +== Modularity +* Modularity is an extension to the RPM ecosystem that allows to distribute and consume <> with alternative content. + +== Module Repository +* Module repository is an RPM repository extended with <>. It allows users to query and fetch information about the available Module Streams as well as RPM packages from them. + +== Module Stream +* Module Stream is a collection of RPM packages as defined by the <>. +* Usually, a Module Stream represents a certain major version or a specific build configuration of RPM packages grouped together by purpose. More specific example would be postgres:12: a Module Stream of the postgres Module with PostgreSQL version 12 and PostgreSQL-12-related packages. + +== Module +* Collection of Module Streams with the same name. +* For example: postgresql module consists of postgresql:10 and postgresql:12 <>. +“Module” is also frequently used as an informal reference to <>. +For example: Hey buddy, I’ve just built the postgresql:12:20200101:aabbccdd:x86_64 module, go check it out! + +== Default Module Stream +* Default Module Stream is a <> pre-selected by the software distributor (such as Fedora or RHEL authorities) to be implicitly considered for package installation and dependency resolution and automatically enabled when packages from the stream are needed. One Module can only have zero or one Default Module Stream. +* Example: The nodejs:14 <> is the Default Module Stream of the nodejs <> and the stream contains a libuv package. When the user installs libuv (directly or indirectly), the nodejs:14 <> is automatically enabled without an explicit user action. Installation of the libuv package from any other <> or from a non-module repository requires explicit action (such as disabling the nodejs:14 stream). + +== Module Artifact +* <> + built RPMs identified by <>. + +== Module Build +* Module Build is a collection of <> with the same <> + +== Module Metadata (modulemd) +* Module Metadata is a modulemd yaml document that contains information about a <>. Module Metadata can be found in modules.yaml in the repodata. +* For more information see xref:building-modules/fedora/defining-modules.adoc[this topic]. +* The standard for yaml modulemd files is defined https://github.com/fedora-modularity/libmodulemd/tree/master/yaml_specs[here^]. + +== NSVCA +* This abbreviation describes the new naming conventions for <> i. e. Name:Stream:Version:Context:Architecture. +* For more information see xref:architecture/nsvca.adoc[this section]. + +== (Module) Stream Expansion +* Stream expansion is a feature of Modularity. It enables you to build your module streams for several OS releases. The <> specifies how and for what major releases of an operating system, your package will be built. +* For example: you can specify that mariadb:10 can be built for f29, f30, f31 and not built for f28 with specific options for each buildroot. +* For more information see xref:architecture/stream-expansion.adoc[this section]. \ No newline at end of file