persistent rather than run-time configuration (Netplan everywhere)
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Netplan |
Fix Released
|
High
|
Unassigned |
Bug Description
Hello,
I'm looking into adding cloud-init support for Raspberry Pi OS and running into some issues.
We're going to be using NetworkManager and it looks like WLAN configuration for NM can only be done through netplan. However, the .nmconnection files generated by netplan end up in /run and re-generated on every boot.
That's great for server use, but on the desktop, I foresee some issues. If a user modifies or removes a connection using any of the standard tools, these changes are lost on reboot. If the netplan files are generated by rpi-imager, the user might not be aware of what cloud-init, netplan or YAML files are.
Are there any plans to support persistent connections in /etc that are only generated once?
tags: | added: netplan-everywhere |
Changed in netplan: | |
status: | Fix Committed → Fix Released |
That's true. NetworkManager .nmconnection proflies are generated in /run by netplan. Still, the netplan configuration files are available in /etc/netplan/*.yaml and could be modified by the user to preserve a configuration across reboots.
Using standard tools (like nmcli, or NM gui), could lead to conflicts, though, as the same connection would then be defined by a NM controlled profile in /etc/NetworkMan ager/system- connections/ *.nmconnection and netplan controlled connection in /etc/netplan/*.yaml -> /run/NetworkMan ager/system- connections/ 10-netplan- *.nmconnection
We have a longer term effort (called "Netplan everywhere") of tightly integrating NetworkManager and netplan, so that configuration changes made through NetworkManager tooling (GUI/CLI/DBus), would be reflected in /etc/netplan/ and thus be re-generated on reboot. But still way to go to get this fully implemented.
As a short term workaround, you might be able to directly write a *.nmconnection profile into /etc/NetworkMan ager/system- connections/ via cloud-init, e.g.: https:/ /cloudinit. readthedocs. io/en/latest/ topics/ examples. html#writing- out-arbitrary- files