Building Cockpit together

As you may know, we’re head down on the new NethServer management interface: Cockpit

@giacomo has already collected here goals and principles behind this new feature

Now it’s time to join our forces and create a real community-driven project where feedback and suggestions become essential.

Cockpit is in Developing Stage so there is much room for improvement but at the same time it’s stable enough to use it, near the current NethGUI.

How to install and access at Cockpit?

To install:

yum install nethserver-cockpit

or via Software Center clicking on

New Server Manager (Alpha)

Then, you can access the web interface: https://<your_server>:9090

How to contribute to the project?

You can contribute to the project in two ways:

As user

Play with the new interface, find common usage scenarios, ask for new features, share your thoughts and report:

  • issues
  • usability concerns
  • unclear labels

As developer

All the source code is here

Get your hands dirty:

  • try to improve an existing page
  • create a new page (@edoardo_spadoni a wonderful tool to scaffold a whole new module)
  • port an old module to the new interface

What are we working on?

@giacomo kept us updated on the last things at FOSDEM

Roadmap

  • Firewall (with all related modules like web proxy, IPS, etc) Coming
  • MailServer Coming
  • Delegation Coming
  • ??

Conclusion

We’re strongly looking for feedback and we’d like to involve the whole community in the process, please add your comment below.

10 Likes

Just updated to the latest version from nethserver-testing and I see it’s growing and the more it grows the more I like it. :heart_eyes:

The user experience it much better than with the “old” GUI. It’s a lot more clearly, because the submenus opening sidewards. Colors and boxes have a very modern look for me.
The little hints are very helpfull. GUI-response is quick and flowing.
All in all, I’m deeply impressed how far it got already.

At the moment:

In dashboard I’d like to have a little more info, like diskspace, antivirus, raid status, users and backup.
In software center it’d be very usefull to have also the installed modules. :wink:

But I know it’s alpha state, so I think this will come with future updates.

This will push NS to a new level, I think. Keep it rolling! :+1:

6 Likes

I have the same thoughts as @flatspin

I’m not inside how the cockpit develops/notice but when I go to the Applications, Software and Terminal menu, I get “oops” message. It must be because it’s still Alpha but that’s what happens to me.

2 Likes

On the dashboard, I think is missing lot of things that were in old GUI.

  • Backup status
  • Disk space
  • RAID
  • Multiwan
  • Antivirus database (maybe… I don’t know if it is necessary)
  • Also interfaces status can be helpful, because I have many problems with NIC on Fujitsu and an “OK” can be helpful in these cases.

All the other pages are very good and structured. Very good also certificates management. I don’t think it’s necessary to show an alert to limit access to IPs: it’s annoying for me… it’s can be good if the admin can hide it. And you can change notification colors (I don’t know if it’s already in this mode): yellow for basic advice and red for errors (also for number of alert).

Thank you guys!

5 Likes

I’m not asking a dead line, or better, a close one.
Many devices are supporting this version of Internet Protocols by years. CentOS and Shorewall supports too. Even Windows XP, with an addon. Or Vista, by default.

It’s not a matter of understand why it’s asked.
It’s a matter of understand why it’s not important for the project, currently, and which are things that are postponing this lacking feature.

High

I like tehe Idea behind cockpit. It is modern an looks like more flexibel. But work step by step with the most importaned functions.

AD/LDAP
Mailserver and Sogo
Freepbx
Nextcloud
CA Certs
cryted file

I dont wont to be a bad guy
But why you are looking so deap in 2 the hardware?
RAID, UPS, …

There are a lot of good an running VM plattforms
Like Xenserver or XCP-NG
Proxmox…
or DockerContainers…

Same with Firewall (Untangel … )

Both are important and need a lot of work …

THX Axel

PS I love Nethserver and XCP-NG very good projects and comunitys …

the link for Guidelines and Scaffold are broken

2 Likes

@edoardo_spadoni do you know why?

Thanks for your suggestions.

People are still using HW to install NethServer, so we can’t avoid that.

I don’t know if it’s a cockpit matter

That part of the documentation was old, now the links work. :+1:

1 Like

The idea is to move the relevant info inside each module, so the backup status is reported inside the backup page.
The global UI should contain only system-wide data.

You already can do it from the “Settings” page.

Colors and design are from upstream project: https://www.patternfly.org/

In the normal daily use, most users didn’t ever used IPv6.
Adding such feature is a huge huge huge work, and until now it seems it doesn’t worth the effort.
We will for sure study it for NS 8, but I can’t guarantee it will be there.

1 Like

I think i’ll get along with that. Like mirrors do.

@pike
@giacomo

As to Hardware vs Virtualization: Most of my NethServers do run virtually (10+), only two are native on hardware.

That doesn’t mean I do not configure NUT as a network-client. That’s faster and more accurate than having the virtualization box shut down NethServer (Or Windows or whatever) using it’s native NUT client or whatever.

But I can also “see” the USV Status in the nethServer cockpit…
Sure I can see the USV Status in Zabbix or whatever monitoring I’m using, but if I’m in the NethServer Cockpit and would like to check the USV, it’s there!

my 2 cents
Andy Wismer

1 Like

I just stepped into nethserver-cockpit and tried some things out. At first sight, it absolutely looks awesome!

I already discovered an issue with the uptime display, that I fixed.

Diggin a bit deeper into this I wondered, how this error could happen, if there is a full blown cockpit project, that utilizes integration tests. Their implementation of the uptime display also doesn’t show seconds, but it actualizes itself to the current time, which is nice.

The thought, that comes to my mind now, is, if we’re reinventing the wheel here…

IMHO and from my professional coding experience we definetly shouldn’t reinvent the wheel with a custom API for functions that already exist, especially under a shortage of participating developers and no integration tests on our side.
I discovered that the cockpit team already adressed the use-case of developing custom plugins/modules/pages with the starter-kit. It enables one to use the whole testing infrastructure…

Is there already any progress regarding the communication with the cockpit team?

Please share your thoughts on this and don’t forget: I think it’s absolutely great to integrate cockpit and Nethserver! :grinning:

3 Likes

I couldn’t agree more: new code, new bugs! We tried to keep as much as possible close to upstream but after some months of study we were almost forced to rewrite many parts.
There are a couple of main reasons:

  • Cockpit is “too much” for our users. Cockpit target is the experienced system administrator who needs/wants access to all system functions, while our target is the inexperienced system administrator (usually from the Windows world) who doesn’t know much about Linux. This is why we need more simplicity than flexibility guiding the user on doing the right configuration choices.
  • There is no way to hack existing Cockpit page. Let’s see the hostname change as an example.
    Normally when clicking on the hostname, the user can enter the new name which is set using hostnamectl, then the admin must reconfigure all dependent services.
    In NethServer, after using hostnamectl we need to execute a bunch of scripts (events and templates) to propagate the configuration to the whole system.

I’d like to integrate the tests, but for now we couldn’t make it work.
I’m pretty sure that all the @dev_team would appreciate it!

We discussed with the team some time ago (you can find some report here in the forum), but we had two different goals.
Since now, our real contribution to upstream was about discussions, some reported issues and the Italian translation.

1 Like

We made a basic starter-kit project for NethServer: GitHub - NethServer/nethserver-cockpit-empty: NethServer Cockpit Empty module, because our system is little different to the “ideal” cockpit system. Our starter kit is an all-in-one solution that provides a simple module with rpm, API and UI parts with events, templates etc…

The cockpit startet kit is very cool, we can inspire ourselves in particularly for the test part which is currently absent.

3 Likes

Tested update feature in ns-cockpit.

changelog feature is great:

Posibility to select each update seperately works and fullfills partly a long time wish of some users called “cherrypicking of updates” :+1:
But it’s only possible for ns-modules IIUC, not for base- or upstream-updates. Correct ? :thinking:

No probs so far. Thank you!!

Ehi Davide welcome here, I appreciate your contribution.
Your suggestions and knowledge are welcome. How would you like to help the project?

1 Like

Ciao Giacomo, thanks for your thorough explanation!
I just took a look at how exactly cockpit solves the uptime display on their side. It appears to me as if they would directly access dbus('org.freedesktop.timedate1'); in the client js and do every processing of this locally and in a pretty non-extensible way. I appreciate their work, but I think we can make things a little better architecture-wise. I suppose thats what the PHP API was invented for… These problems could have also be solved on the client, but it doesn’t really matter (maybe only for the “which developer knows what languages” discussion)…

In my opinion tests should be on the top of the list (where is the list btw? :wink:)! Maybe i can help out with that, but let’s move that to a sperate thread…

Ciao Alessio,

thanks for welcoming me, I sent you a PM.

1 Like