NS8 NethForge applications index

NethServer 8 applications are delivered by public container registries. Any Docker/OCI container image hosting is ok. For example, for the core apps we’re relying on GitHub Registry because it can be easily integrated with the CI/CD pipeline running on GitHub Actions.

Developers eager to share their efforts with the community just need to publish the link to their module, something like ghcr.io/DavidePrincipi/ns8-scratchpad:latest which I presented recently in the webinar 24 Nov 2023 - NethServer 8 Deep Dive: how to run generic containers.

We can easily set up a public index of modules, like the ns8-repomd one that’s for core packages and applications, where with a simple, transparent and PR-based review workflow everyone can submit a new module to the community.

Many of you remember the NethForge of NS7: the idea is similar. I’d configure NethForge as a disabled repository in every NS8 installation. After the NS8 installation procedure, it can be enabled as wanted.

What do you think?

Let me know your opinion, this is a little tweak planned for the stable release.

2 Likes

i swear @davidep you just went into my head, and pulled out this question from it.

i was about to ask about this as I have some few small items we are working on for NS8, and the biggest question i had were, how do we go about hosting and maintainance etc for the same, now this solves some questions.

1 Like

is it also permissible to add component features and or functions to existing core modules.

in this case, i am looking at NExtcloud and the additional componenents not available on the current one.

HIGH performance backend for Files and for talk, mostly needs to be packaged into NExtcloud.

1 Like

Of course it is possible. Start by opening a specific thread for the Feature proposal, like described in Development process | NS8 dev manual.

1 Like

NethForge for NS8 is online! https://forge.nethserver.org/

4 Likes

SOGo will be there :smiley:

3 Likes

@davidep i do not see anwhere here:

Applications — NS8 documentation (nethserver.org)

How to enable and add NEthforge to an existing Nethserver Deployment,

Could you kindly add this very important aspect to the documentations.

You were next to the answer

https://docs.nethserver.org/projects/ns8/en/latest/software_center.html#software-repositories

oops, my bad… i think i was expected it elsewhere. thanks for that.

1 Like

i was thinking, after initla/ first time NS8 Setup, during the setup, there would be a Notice informing the NEw NS8 Admin that they can Enable Nethforge Community Repo and show/point them on how to do it, explaining what the community repo entails.

this will really be helpful to new NS8 Users.

what do you think?

I’d rather enable NethForge by default. But to do it, we need Software Center displays the source repo by some means because the sysadmin needs to know where the app comes from before installing it.

then i think this is a way better Implementation.

If We could Implement the Nethforge repo by Default, and Have an implementation that Shows the Source of the Application then it would be Much Better.

Easier Implementation, and Opens the entire Nestherver Apps Repo Window.

1 Like

I don’t see the answer there. The link from that page to “NS8 repository” links to–well, I’m not sure what, exactly, but it definitely doesn’t say anything about NS8 repositories. If the URL is supposed to be https://forge.nethserver.org, that doesn’t work, resulting in this error:

Traceback (most recent call last):
  File "/var/lib/nethserver/cluster/actions/add-repository/10validate", line 55, in <module>
    with urllib.request.urlopen(url) as req:
         ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.11/urllib/request.py", line 216, in urlopen
    return opener.open(url, data, timeout)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.11/urllib/request.py", line 525, in open
    response = meth(req, response)
               ^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.11/urllib/request.py", line 634, in http_response
    response = self.parent.error(
               ^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.11/urllib/request.py", line 563, in error
    return self._call_chain(*args)
           ^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.11/urllib/request.py", line 496, in _call_chain
    result = func(*args)
             ^^^^^^^^^^^
  File "/usr/lib/python3.11/urllib/request.py", line 643, in http_error_default
    raise HTTPError(req.full_url, code, msg, hdrs, fp)
urllib.error.HTTPError: HTTP Error 404: Not Found

The URL for the software center setup is

https://forge.nethserver.org/ns8/updates/

That worked, thanks.

1 Like

How many application categories are there, and what are the actual categories of application, for publishing into Nethforge.

Does the developer define this, or is this defined by the neth dev team.

image

Where can i find this list of categories, one of mine seems to throw in an undefined error

You can set it in metadata.json file.
Unsure if the core just takes any category defined by the app developer.
Currently, the defined categories (AFAIK) are:

  • storage
  • monitoring
  • development
  • communication
  • office
  • collaboration
  • system_administration
  • security
  • web
  • documentation
  • database

If a new category is to be defined, then a translation string shall be pushed to the core module.

4 Likes

thnak you for these

@alefattorini could we kindly have a publicly listed Apps categories somewhere for reference purposes, even if in the nethforge repo README doc.
Please

1 Like

Something like App ?