Call me old fashioned, but I sometimes wonder what precipitated the need for a change to the routing methodology in Linux (UNIX). I used both names, because that is how far back the methodology goes. When I say I am old fashioned, it means when something breaks, I want to know where I can go to fix it, so I can learn if it was something that I broke, or if the hardware can't keep up, or if a new driver or software package is interfering with the smooth operation. I also like to stay current with systems and keep my network "fresh".
To describe my problem, I had a Pi4 running as a headless WiFi router on my home network. I spent a good bit of time learning the ins and outs of the configuration operation and how to rebuild in case of emergency. Everything was fine all the way up to using Buster. Then, for reasons of wanting to use the best and brightest, I decided to update my little WiFi router to a Pi5 and update to the latest Bookworm. First thing I noticed was that wpa_supplicant no longer worked as before. Wait, so how do you add networks when the box goes on the road? After some investigation, I learned that most of the network configuration operations had changed and now used a couple of programs (nmcli, and nmtui). I am all for having a shortcut to simplify an operation, especially when it is something complicated. However, I also like to know what exactly is being affected or changed. Particularly because, as an educator, I like to show the process that is being performed, then say "luckily" there is a function that you can use that does things for you. Unfortunately, It appears the two programs read and write to an embedded structure with no access except through using the functions.
I have found several on-line instructionals that describe how to use the functions to create command line processes for the task, but very little (aka. Nothing) to show the operation of the functions and where they were obtaining the data. As an old timer, my reasoning is to first, see if I can write a function that works better for my needs, and then be suitably impressed with the existing functions. I'm starting this thread, because the discussions I found about how-to were all locked.
I am all for creation of functions and applications to enforce standardization. Especially in the area of system operations. However, it looks as though an existing standard (since the days of UNIX) has been changed so to drive dependence on new functions without alternative methodology. This sadly does not follow the intent of Open Source. I have not gone after the GNU sites to find out if the source is in fact available for the functions (probably is there), but as I implied, I am a bit old for doing a reverse engineering to find my answer.
To describe my problem, I had a Pi4 running as a headless WiFi router on my home network. I spent a good bit of time learning the ins and outs of the configuration operation and how to rebuild in case of emergency. Everything was fine all the way up to using Buster. Then, for reasons of wanting to use the best and brightest, I decided to update my little WiFi router to a Pi5 and update to the latest Bookworm. First thing I noticed was that wpa_supplicant no longer worked as before. Wait, so how do you add networks when the box goes on the road? After some investigation, I learned that most of the network configuration operations had changed and now used a couple of programs (nmcli, and nmtui). I am all for having a shortcut to simplify an operation, especially when it is something complicated. However, I also like to know what exactly is being affected or changed. Particularly because, as an educator, I like to show the process that is being performed, then say "luckily" there is a function that you can use that does things for you. Unfortunately, It appears the two programs read and write to an embedded structure with no access except through using the functions.
I have found several on-line instructionals that describe how to use the functions to create command line processes for the task, but very little (aka. Nothing) to show the operation of the functions and where they were obtaining the data. As an old timer, my reasoning is to first, see if I can write a function that works better for my needs, and then be suitably impressed with the existing functions. I'm starting this thread, because the discussions I found about how-to were all locked.
I am all for creation of functions and applications to enforce standardization. Especially in the area of system operations. However, it looks as though an existing standard (since the days of UNIX) has been changed so to drive dependence on new functions without alternative methodology. This sadly does not follow the intent of Open Source. I have not gone after the GNU sites to find out if the source is in fact available for the functions (probably is there), but as I implied, I am a bit old for doing a reverse engineering to find my answer.
Statistics: Posted by jachaney — Fri Sep 12, 2025 9:04 pm