[arch-dev-public] Consensus on network scripts
Hey, http://wiki.archlinux.org/index.php/Network_Scripts I've been pushing these repeatedly, with only meager interest shown by others. Given a little bit of documentation, I think they're almost ready for me to unleash and publicise for further testing. That said.... before I put the time into writing the docs, closing some known bugs, and publicising them more, I'd like to know what everyone thinks and get some 'approval' for them. Some sort of OK, we'll adopt and implement these given A, B and C are done. I don't know what the process is for this, nor do I think we've ever had/needed one as discussion should be fine, so bear with me. I realise that not everyone wants to install these and try them, so I'll just outline the major outward changes in order of what might cause debate. New features and improvements are listed on the wiki. - All network scripts moved from 'initscripts' to 'network', a separate package - /etc/rc.d/network retains ALL functionality that it has had previously, except it's wireless. - /etc/rc.conf network syntax remains, except it's wireless. - All wireless functionality now exists within the profiles. - /etc/network-profiles is no more, moved to /etc/network.d - profile syntax has changed, now using an ini format. See wiki for examples. - completely rewritten and cleaned up netcfg - netcfg menu support separated out from netcfg - network profiles moved from /etc/rc.d/network to /etc/rc.d/net-profiles Beyond that.... the changes are internal. Some minor cleanups and bugfixes in /etc/rc.d/network, and the rest of the changes are within netcfg and the Arch profile system. If you're interested in testing... there's details on the wiki, i've got a repo up in my public_html on archlinux.org. Feel free to put bugs on the tracker, or send via email. Patches to latest git are always welcome. Anything to say, add, suggest, please do, +1's great, +>1's better, -1's only with a good fair explanation. Thanks! James -- iphitus // Arch Developer // kernel26beyond // iphitus.loudas.com
2007/4/18, James <iphitus@gmail.com>:
Hey,
http://wiki.archlinux.org/index.php/Network_Scripts
I've been pushing these repeatedly, with only meager interest shown by others. Given a little bit of documentation, I think they're almost ready for me to unleash and publicise for further testing.
That said.... before I put the time into writing the docs, closing some known bugs, and publicising them more, I'd like to know what everyone thinks and get some 'approval' for them. Some sort of OK, we'll adopt and implement these given A, B and C are done.
Looks good for me. I don't use profiles nor wireless network though. :-P I wonder about this line on wiki: "Verbosity is controlled by an option in /usr/lib/netcfg/conf." Why have this conf file in /usr? Also, is wireless possible without /usr mounted? -- Roman Kyrylych (Роман Кирилич)
On 4/18/07, Roman Kyrylych <roman.kyrylych@gmail.com> wrote:
Looks good for me. I don't use profiles nor wireless network though. :-P
Sure :)
I wonder about this line on wiki: "Verbosity is controlled by an option in /usr/lib/netcfg/conf." Why have this conf file in /usr?
Well, I suppose it's misleadingly named. It's not really a config file, more somewhere where I define paths, like where profiles are, and where states are. I put the verbosity control in there for lack of any other place as it's most likely only going to be needed for - debugging issues in the scripts - people who want *totally* silent startup (no explanation of a fail) - people who are having trouble with configuration/network Maybe I'll move verbosity to it's own config file in /etc/conf.d/netcfg, and merge the above netcfg/conf to netcfg/functions?
Also, is wireless possible without /usr mounted?
No, and never has been, wireless_tools and wpa_supplicant are in /usr. The network scripts have always run in the daemons line, and these do to, so they have always run after /usr is mounted. James -- iphitus // Arch Developer // kernel26beyond // iphitus.loudas.com
2007/4/19, James <iphitus@gmail.com>:
On 4/18/07, Roman Kyrylych <roman.kyrylych@gmail.com> wrote:
Looks good for me. I don't use profiles nor wireless network though. :-P
Sure :)
I wonder about this line on wiki: "Verbosity is controlled by an option in /usr/lib/netcfg/conf." Why have this conf file in /usr?
Well, I suppose it's misleadingly named. It's not really a config file, more somewhere where I define paths, like where profiles are, and where states are. I put the verbosity control in there for lack of any other place as it's most likely only going to be needed for - debugging issues in the scripts - people who want *totally* silent startup (no explanation of a fail) - people who are having trouble with configuration/network
Maybe I'll move verbosity to it's own config file in /etc/conf.d/netcfg, and merge the above netcfg/conf to netcfg/functions?
OK, thanks for explanation. I'd say move that setting to /etc if that won't complicate things.
Also, is wireless possible without /usr mounted?
No, and never has been, wireless_tools and wpa_supplicant are in /usr. The network scripts have always run in the daemons line, and these do to, so they have always run after /usr is mounted.
OK, that's what I expected. :-) -- Roman Kyrylych (Роман Кирилич)
On 4/18/07, James <iphitus@gmail.com> wrote:
http://wiki.archlinux.org/index.php/Network_Scripts
I've been pushing these repeatedly, with only meager interest shown by others. Given a little bit of documentation, I think they're almost ready for me to unleash and publicise for further testing.
Just responding so you know you're not being ignored - I'll check these out tonight hopefully, and give you what feedback I can.
On Wed, Apr 18, 2007 at 10:18:07PM +1000, James wrote:
Hey, http://wiki.archlinux.org/index.php/Network_Scripts
I've been pushing these repeatedly, with only meager interest shown by others. Given a little bit of documentation, I think they're almost ready for me to unleash and publicise for further testing.
laptops are often moved between wireless networks and thus require user interaction. "Static" configuration on system startup are improper for these requirements. Most other distribution even don't have wpa support in initscripts. It's complex and error prone. RedHats NetworkManager is a nice application for this job. Jürgen
On Wed, Apr 18, 2007 at 10:18:07PM +1000, James wrote:
Hey, http://wiki.archlinux.org/index.php/Network_Scripts
I've been pushing these repeatedly, with only meager interest shown by others. Given a little bit of documentation, I think they're almost ready for me to unleash and publicise for further testing.
laptops are often moved between wireless networks and thus require user interaction. "Static" configuration on system startup are improper for these requirements. Most other distribution even don't have wpa support in initscripts. It's complex and error prone. RedHats NetworkManager is a nice application for this job. actually we have most of the stuff we need for Laptops. I didn't have
On Thu, 19 Apr 2007, Jürgen Hötzel wrote: the time to look at James work yet (sorry) and maybe he incorporated the idea already. Can we create a list of wifi networks at startup with `iwlistscanning`, parse it and grep for the ESSID and lookup in the network profiles if an ESSID matches. It's not perfect, but it might be a nice default for laptops. Oh, and yes I know, who suggest sucha thing should actually go ahead and implement it. -T
On 4/20/07, Tobias Kieslich <tobias@justdreams.de> wrote:
On Thu, 19 Apr 2007, Jürgen Hötzel wrote:
On Wed, Apr 18, 2007 at 10:18:07PM +1000, James wrote:
Hey, http://wiki.archlinux.org/index.php/Network_Scripts
I've been pushing these repeatedly, with only meager interest shown by others. Given a little bit of documentation, I think they're almost ready for me to unleash and publicise for further testing.
laptops are often moved between wireless networks and thus require user interaction. "Static" configuration on system startup are improper for these requirements. Most other distribution even don't have wpa support in initscripts. It's complex and error prone. RedHats NetworkManager is a nice application for this job.
Yes, and no. Yes, laptops are moved between wireless networks, but this does not mean that static configuration is inappropriate. My laptop for example, has long moved between home, and school/uni and a coffee shop I frequent. Three, unchanging networks. Most users of wireless have networks they frequent often like this. Look at my scripts, they're not as complex and error prone as you'd think. Most distros *do* have wep support in their scripts, and I see no reason why wpa shouldn't be afforded that same level of support. Arch is a different distro to "most other distributions". NetworkManager is not a solution. It's gui dependent. To use it, means loading up either KDE or Gnome. This is a ridiculous dependency for network connectivity. Developing a command line based client would be... nice. But, I don't have the experience to develop it, and arch needs better network scripts two years ago. Nor is anyone else stepping up to develop it. Ideas/Ideals are only good if people exist to implement them. These scripts, detect and connect to each of these networks, with no user interaction, automatically. Unlike NetworkManger, which for gnome, stores passwords in gnome-keyring, requiring me to enter my password in each session. *urgh* (except with hacks like pam-keyring). Sure these scripts are different, but there's definitely room for them, and they work well in the real world.
actually we have most of the stuff we need for Laptops. I didn't have the time to look at James work yet (sorry) and maybe he incorporated the idea already. Can we create a list of wifi networks at startup with `iwlistscanning`, parse it and grep for the ESSID and lookup in the network profiles if an ESSID matches. It's not perfect, but it might be a nice default for laptops. Oh, and yes I know, who suggest sucha thing should actually go ahead and implement it.
Already implemented, though differently. Using iwlist and checking that for essid's doesnt work for networks that use hidden essid, as iwlist just spits "<hidden>". Some network drivers have terrible scanning support, and as a result, can also be set to follow the same method as hidden networks. (when I last used NetworkManager, it did not 'detect' hidden networks, i had to manually connect to my school network... this may have changed since.) Detection works like this: - you create a profile for each wireless network you use. - add profiles to the NET_PROFILES line in rc.conf. - on /etc/rc.d/net-profiles start, it goes through each profile defined in NET_PROFILES, and attempts to start them. Nearly all people would do a start/restart, when resuming or starting their laptop in a different location. - In the starting procedure, for a wireless profile, it checks if the network is available via scanning, for hidden networks it uses an association attempt. - If a network is available, then, it connects. - Any further profiles on that interface, fail, as the network interface is already configured, so the successful connection is not clobbered. It's trial and error, yes, but works cleanly, quickly and effectively. The above 'detection' method has negligible time cost over a straight iwlist scan like you suggest, allows detection of all current types of wireless networks and allows for a much cleaner and more generic network profiles setup. Excuse me for being verbose... I've spent a lot of time on these, and want to make sure they're understood correctly and accepted. Thanks if you managed to read this far! James -- iphitus // Arch Developer // kernel26beyond // iphitus.loudas.com
Gitweb up on http://archlinux.org/~james/projects/ so you can take a look without downloading it/installing it. Though testing is always preferred :) James -- iphitus // Arch Developer // kernel26beyond // iphitus.loudas.com
participants (5)
-
Aaron Griffin
-
James
-
Jürgen Hötzel
-
Roman Kyrylych
-
Tobias Kieslich