A Modules server is a repository of packaged and shared modules.
Packaged modules can be shared through the file system or a Repository Manager.
A repository manager that stores packaged modules (see Modules Distribution in GeneXus) is also called a GeneXus Knowledge Matrix, due to its feature of storing assets with knowledge; it will be called this way, or simply as Matrix, in this documentation.
A Matrix, as a repository manager, stores assets, handles versioning of those assets, and also dependency management among versions of different assets.
It holds those assets in order to share them among GeneXus users; that is, members of a project's team, a company, an ecosystem, a region in the world or even to share those assets globally with the whole GeneXus community.

You can use Nexus Repository OSS as a repository manager for this.
Follow the steps below:
1) Install Nexus OSS
The main options to install Nexus are:
2) Once installed, create a repository hosted on maven or NuGet. You can also use the already built-in 'maven-releases' repository as shown in the image below:

3) Configure your Nexus to allow anonymous access for browsing and downloading assets.
1) You need to Download Maven and install it.
2) Define credentials for Publishing.
You need the credentials of a user who has permission to publish on the Matrix.
Create or modify the following file: %USERPROFILE%\.m2\settings.xml. The credentials defined in that file will be used when you publish your modules on that Matrix.
<settings>
<servers>
<server>
<id>Example Matrix</id>
<username>Me</username>
<password>MyPassword</password>
</server>
</servers>
</settings>
3) Define a new server of module references in GeneXus as explained in the next section.
Make sure you have NuGet installed. To do this, check if the file 'nuget.exe' is located in %userprofile%\.gxmodules\.tools. If you cannot locate it, you can download it from the official NuGet site.
To do so, go to the GeneXus Menu > Knowledge Manager> Manage Module References, then click on 'Add'
- Select Nexus -(NuGet or Maven) in the Server Type
- Choose a name for your server (i.e.: Example Matrix).
- Choose the repository URL (i.e.: http://mymatrix.mycompany.com/repository/maven_releases/).
- If you select NeXus - NuGet you must fill in your Username and Password.

Refer to Package and Publish Modules
Refer to Manage Module References for more information related to installing and managing packaged modules.
These module servers are predefined when installing GeneXus:
This server shows the modules that are available in your GeneXus installation. Typically, it holds the modules that are installed by the GeneXus Setup.
Its purpose is to be a repository for modules shared all over the world with the whole GeneXus community.
In October 2020, GeneXus SA started to share some modules on it (you still can't publish modules on that Matrix).