meraki-builder icon indicating copy to clipboard operation
meraki-builder copied to clipboard

draft: add configd, status, and libpostmerkos packages

Open hall opened this issue 2 years ago • 6 comments

At long last! This is the start of the replacement discussed in #18. Happy to break it into smaller bits but wanted to open it now for feedback as most of the bones are in place (plus the weekend is over :slightly_smiling_face:).

An outline of the changes here:

  • add configd package This is the main daemon which serves as the interface between /click and /etc/switch.json. The following (per-port) RW values have been (or are planned to be) implemented:

    • [x] enabled
    • [ ] label
    • [ ] lacp
    • [ ] stp
    • [ ] forced link speed
    • poe
      • [x] enabled
      • [ ] mode
    • vlan
      • [ ] pvid
      • [ ] allowed
      • [ ] tag_in
      • [ ] untag_in
  • add clickswstatus package Similar to configd but is executed on-demand and only returns values. The following RO values have been implemented:

    • [x] datetime
    • temperature
      • [x] cpu(s)
      • [x] poe(s)
    • link
      • [x] established
      • [x] speed
    • poe
      • [x] power
  • add libpostmerkos package Catch-all package of reusable things.

Also have a look at config.md where I tried to describe a bit of the end-goal I have in mind. Could definitely use feedback from others around C in general, the list of (un)implemented bits above, and anything else that comes to mind.

hall avatar Feb 06 '23 03:02 hall

Thanks for this PR! What you're proposing has been long overdue.

Can you split this PR? I would prefer the pd690xx changes are in their own PR, with the new buildroot packages in this (or another) PR.

More descriptive package names would be helpful too, status is quite generic. Something like clickswstatus, maybe?

halmartin avatar Feb 08 '23 20:02 halmartin

Yeah, will split it up later today.

I figured you might have a better opinion on package names so I left them pretty generic to punt that decision; happy to name them whatever you feel makes sense.

hall avatar Feb 08 '23 20:02 hall

I've moved all of the pd690xx changes to #31.

hall avatar Feb 09 '23 01:02 hall

👋 I've just loaded up a Meraki MS220-8P with postmerkOS-20230421.bin (awesome work, thanks!!) and then found this and thought I'd see if I can get the UI on the switch as well.

However, it looks like https://github.com/hall/postmerkos-ui/releases/tag/0.4.0 relies on the new binaries here (certainly I don't have a configd that takes a -g, for one) and I can't even make the older versions of that work (assume again it's a discrepancy between binaries running on the switch and what the UI expects). Is there anything I can help with here? Is the only way to test the latest UI to build this branch and re-flash the router?

rkboni avatar Feb 04 '24 00:02 rkboni

👋 I've just loaded up a Meraki MS220-8P with postmerkOS-20230421.bin (awesome work, thanks!!) and then found this and thought I'd see if I can get the UI on the switch as well.

However, it looks like https://github.com/hall/postmerkos-ui/releases/tag/0.4.0 relies on the new binaries here (certainly I don't have a configd that takes a -g, for one) and I can't even make the older versions of that work (assume again it's a discrepancy between binaries running on the switch and what the UI expects). Is there anything I can help with here? Is the only way to test the latest UI to build this branch and re-flash the router?

I did get things up and running after hacking the latest postmerkos-ui release to remove PoE temp/power dependencies, but I guess maybe this should be opened as an issue on the postmerkos-ui repo, since the latest release (0.4.0) doesn't seem to run with the latest release of postmerkOS (2023-04-21). Still, I'd be happy to help push this across the finish line if needed.

rkboni avatar Feb 04 '24 22:02 rkboni

Hi @rkboni ! I'm traveling for work the next couple of weeks and don't have time to look at this, but I'd be very glad to help you out with integrating this and getting a usable UI baked into the stock firmware.

Could you contact me via email? My email address is in my GitHub profile. Thanks!

halmartin avatar Feb 05 '24 08:02 halmartin