Skip to content

Conversation

@ym
Copy link
Contributor

@ym ym commented Oct 7, 2025

UI TODO:

  • 🐛 Missing placeholder for Hostname field.
  • 🐛 The tab key does not work for all fields.
  • 🐛 The Save button doesn't work (this might require fixing the Tailwind animation class).
  • 🐛 There's an additional separator if there's any unsaved changes.
  • 🐛 The MAC Address field is read-only, but the style is the same. We should probably change it to span instead of 'input'.
  • 🐛 Pressing the Esc key inside the Apply network settings confirmation dialog also closes the whole settings tab instead of the confirmation dialog.
  • 🚀 (optional) Make subnet mask optional for IPv4 static address, hide it if / is detected.
image

Backend TODO:

  • mDNS test
  • DHCP will run twice during initial boot (init and onLinkUp)
  • Domain might not work
  • Add failover DNS
  • DHCP
    • Support PTP address
    • Support MTU
    • Support Multiple routers
    • Renew
    • Release
    • 🚀 Support option Classless Static Route Option
    • 🚀 Support option 6rd
    • 🚀 Support option IEEE 802.1Q VLAN ID
  • IPv6 address not being picked up sometimes
  • gocron.RemoveByTags might stuck sometimes, replace it with something else
  • Allow to switch between JetKVM's DHCP client and udhcpc
    • JSONRPC
    • Touchscreen UI
    • WebUI
  • Clean up locks in network manager code

@ym ym changed the title rewrite network manager network stack refactor (and static ip) Oct 7, 2025
@ym ym changed the title network stack refactor (and static ip) refactoring network stack (and static ip) Oct 7, 2025
@ym ym mentioned this pull request Oct 7, 2025
setNetworkSettings({ ...networkSettings, lldp_mode: value as LLDPMode });
};
// Build list of critical changes for display
const changes: { label: string; from: string; to: string }[] = [];
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Some properties need to be confirmed in a modal.

confirmText="Apply changes"
onConfirm={() => {
setShowCriticalSettingsConfirm(false);
if (stagedSettings) onSubmit(stagedSettings);
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Once confirmed, we call the actualy onSubmit()

}
}

if (resp.method === "willReboot") {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If the device sends us a willReboot message, we navigate to the root route and show the reboot overlay.

Currently, we have two flows using this:

  • Click on reboot, which will send willReboot right before actually rebooting
  • Given a certain network change, the backend will send this

In the future we can use this flow for the OTA.


if rebootNeeded {
scopedLogger.Info().Msg("System Rebooting in 10s")

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We can use the willReboot flow for the OTA too. Might need some tweaking, but the flow and interface should be enough.

@ym ym merged commit c775979 into dev Oct 15, 2025
5 checks passed
@ym ym deleted the feat/nmrewrite branch October 15, 2025 16:32
@IDisposable
Copy link
Contributor

Now I have to rebase the localization :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants