Re: (Go) Library for configuring Yocto based boxes?


Christofer Dutz <christofer.dutz@...>
 

Hi all,

so I invested quite some time to using the NetworkManager to configure the network settings.

I’m using a go library: github.com/Wifx/gonetworkmanager for this.

My network configurations now end up in a directory /etc/NetworkManager/system-connections (I can see files with the name "{connection-id}.nmconnection"
However the changes aren't applied. If I run:

     systemctl restart systemd-networkd

The network settings don't change (Both network devices were set to DHCP). (By the way … where can I see the default configuration?)

However if I reboot the box, I can see my changes applied ... until I run the "systemctl restart systemd-networkd" again, because then it switches back to the dhcp settings.

Any tips on how I can apply my changes without rebooting?

 

Chris


-----Ursprüngliche Nachricht-----
Von: Nicolas Jeker <n.jeker@...>
Gesendet: Freitag, 30. Juli 2021 10:06
An: Christofer Dutz <christofer.dutz@...>; yocto@...
Betreff: Re: [yocto] (Go) Library for configuring Yocto based boxes?

On Fri, 2021-07-30 at 07:43 +0000, Christofer Dutz wrote:
> Hi all,
>  
> I’m very new to the Yocto world.
>  
> We are currently working on migrating away from OpenWRT based edge
> devices towards ones that we now have Yocto builds for.
>  
> All seems to be working nicely on the yocto side.
>  
> Our application uses a baseline configuration in order to connect to
> our cloud service and there it fetches it’s configuration (We’ve got a
> cellular fallback if connectivity doesn’t work at all).
>  
> With OpenWRT there was a tool called UCI which even had a Go wrapper
> which we used to apply the configuration to the box (set IP addresses,
> connect to WiFi neworks, configure the serial ports etc.)
>  
> Is there some equivalent in the Yocto world?
>  

The OpenWRT wiki has a section on porting UCI to different linux distributions [1], but you can probably skip that completely. Searching for UCI in the recipe index [2] yields a result from the meta-openwrt [3] layer. I would start with adding that layer and using the UCI recipe from there.

[1]: https://openwrt.org/docs/techref/uci#usage_outside_of_openwrt
[2]:
https://layers.openembedded.org/layerindex/branch/master/recipes/?q=uci
[3]: https://github.com/kraj/meta-openwrt

> I would like to avoid generating the file content in the /etc
> directory by hand and firing „restart“ commands to the corresponding
> services, if there isn’t a better way.
>  
> Help greatly appreciated :-)
>  
> Chris
>

Join {yocto@lists.yoctoproject.org to automatically receive all group messages.