Launcher: one home page for all the apps of your cluster

I made a small module called Launcher. It gives your NethServer 8 cluster a home page that lists every app published with a host name, on any node, with its name and logo.

It works in two modes. In public mode, everyone sees every app. In LDAP mode, users log in with their account, and each app can be limited to some groups. The page has search, categories, external links and a support footer with your ticket URL, email and phone. It speaks English, French, Italian, German and Spanish.

The list follows the cluster on its own. When you install or remove an app, the page updates within a minute. You set the welcome sentence, the logo and the categories from the module UI, and you can hide apps from the list.

It is always served over HTTPS and Let’s Encrypt is optional. Failed logins return proper 401 codes, so CrowdSec can ban brute-force attempts.

It is available in my forge: https://forge.de-labrusse.fr
Code and docs: GitHub - stephdl/ns8-launcher: NethServer 8 launcher: a home page listing every app published on the cluster · GitHub

Feedback is welcome.

3 Likes

Looks good and works well.

1 Like

I am opened to suggestion and bug hunt

Big thank you stephdl thats something i wanted to do next but since you already got something nice time to use that ^^

reminds me of the Launcher from ns6 or 7 enterprise, is it possible to implement cross cluster listing, if i have 2 separate cluster, and want this single installation to also list apps from the secoond cluster as well instead of seprate dashboards per cluster.

you can add an external link, the question is how you can authenticate from an external ldap, read the redis from the outside

we could use 2 things,

1, some features from how the nS7-ns8 migration tool cnnects to clusters.

2, I saw someone who made a forked AD for NS8, to join different clusters AD

Samba Reworked · NS8 App Index

maybe some things from it.

1 Like

Sure, anything is possible! Recently, AI has given me superpowers. This year, I won’t take a plane to FOSDEM. I’ll just fly there!

More seriously, I don’t want my module to introduce a backdoor by connecting to another cluster. You decided to set up two separate clusters for a reason, so I think we should stick with that decision rather than trying to merge them now.

2 Likes

One thing I’d make really clear in the UI is the difference between hiding an app and restricting access to it.

From the README, I understand the LDAP group settings control which apps show up in Launcher, but they don’t actually prevent someone from opening the app’s URL directly, right?

If that’s the case, maybe calling it “Visible to groups” would avoid some confusion. I can see an admin hiding an app from a group and assuming it’s no longer accessible to them.

Small detail, but probably worth making explicit.

true I cannot control it

the idea is the app is visible or hidden in the launcher, it is a rootless module and it cannot control an app

Hi all,

A new version of the launcher is out. Here is what changed.

Change password link
In LDAP mode, logged in users now see a “Change password” button. It opens the NS8 user portal of their domain. It is off by default. Turn it on in Settings, next to the user domain. The URL is filled for you, like the “Open user portal” link of the core domain page. You can edit it if your users reach the node with another name.

Translations
The admin pages are now translated in German, Spanish, Basque, Italian, Portuguese and Brazilian Portuguese, on top of English and French. Missing texts show in English instead of a raw key. The module now follows the language of the NS8 admin, not the browser one.

Fixes
Saving a value refused by the server no longer closes the dialog or loses your input, and the error is readable. You can’t save an empty category or an invalid support URL anymore. The Status page now links to the node details.

Credits
Many thanks to GeneraBlack for PR #9. It pointed out the missing English fallback, the language detection and several UI bugs. I merged that work in #12 and #13. If someone can review the Basque texts, it would help.

To update, use the Software Center or:

update-module ghcr.io/stephdl/launcher:1.1.0 launcher1

Feedback is welcome.

2 Likes