Pwireless2 (Version 1.0)
Posted: Wed 11 Nov 2009, 19:58
Wpa_supplicant is a network management daemon that runs in the background on your computer and connects you to wireless networks. It supports open networks, WEP networks, and WPA networks.
Puppy supports wpa_supplicant with the Network Wizard, but not in roaming mode. Roaming mode is a godsend for people with laptops who may need to reconfigure their wireless network several times a day. In roaming mode, you set up each network one time, and wpa_supplicant will automatically connect to it whenever you're in range. If multiple networks are in range, you can set priorities to tell wpa_supplicant which one you prefer.
Until now, the only way to configure wpa_supplicant roaming mode was by editing the configuration files by hand, or use wpa_gui (http://www.murga-linux.com/puppy/viewtopic.php?t=47838). Wpa_gui has a somewhat confusing interface and requires large Qt libraries, so I thought it was time someone wrote a lightweight GUI frontend that was specifically designed for and integrated into Puppy.
Pwireless2 looks much the same as the original Pwireless [well not so much any more] but the guts are totally replaced. Pwireless2 uses wpa_cli to communicate with wpa_supplicant. Wpa_supplicant handles profile storage, and all network configuration tasks. I've also included an upgraded version of Dhcpcd which handles allocating IP addresses and notifying you when the status of your network changes.
Finally, I've modified a program called gtrayicon to provide you with a very basic networking tray applet. Clicking on the applet will tell wpa_supplicant to start or stop (clicking it if you haven't configured any networks won't do much of anything). Right click and choose Configure to launch the Pwireless2 configuration gui.
Installing the pet below will place a script called "Pwireless2" in /etc/inid.d. The script handles the launching of wpa_supplicant and dhcpcd. Gtrayicon is launched from /root/Startup/gtrayicon.
Currently Pwireless2 doesn't have support for wpa-enterprise. If anyone desires this functionality, let me know and I'll think about adding it. Also let me know if you find any bugs.
It should also be noted that Pwireless2 conflicts with Network Manager. So you should remove any profiles from Network Manager before installing the pet. After installing the pet, you should reboot, and everything should start up automatically.
Here's the link for libgio needed to make gtrayicon work on Puppies older than 4.3 http://www.murga-linux.com/puppy/viewto ... h&id=21949
The ralink staging drivers (ie rt2860sta and similar) in kernel 2.6.30.5 do not work with Pwireless2. Please upgrade to 2.6.31.5 or newer.
EDIT: I've uploaded a new version with a bugfix for interfaces that are not named wlan0.
EDIT - 11-18-09: I've uploaded a new version with several enhancements and bugfixes. I've added tabs for logging and dns and increased the verbosity of the status. Also fixed a bug where dhcpcd would not update the resolv.conf. Attempted to make the startup script a little smarter.
EDIT - 11-18-09:Fixed a bug where long log files would break the GUI.
EDIT - 11-18-09:Fixed a bug with wpa2 and other minor enhancements
EDIT - 11-23-09:UI and backend enhancements
EDIT = 11-30-09:UI and backend enhancements
EDIT = 11-30-09:a quick bugfix for the reset-wpa script
Edit - 12-02-09 : bugfix for quit button and connection dialog
Edit - 12-03-09 : bugfix for 32bit WEP keys and SSID names and passwords containing spaces
Edit - 12-09-09: Improvements to the Gui
Edit - 1-03-10: Added Dhcp configuration tab, improvements to the gui, and bugfixes
Edit - 1-6-10: Patch to gtrayicon so it will work on Puppy 4.2 (you still need to install libgio)
Edit - 1-17-10 Moved some files around and make some changes to make Pwireless2 work better for repackaging for Quirky and other puplets. Minor gui improvements and bugfixes. Added 'nolink' dhcp option for flaky connections. Fix to start dhcpcd when no wireless interface is found. and fix for wpa_supplicant "failed to start" error (hopefully).
Edit - 2-10-10 - Nolink mode now the default, I'm using wpa_cli to monitor the connection and coordinate dhcp. Also the init.d script is fixed to shutdown properly.
6-22-10 Various updates synced from Puppeee version
Puppy supports wpa_supplicant with the Network Wizard, but not in roaming mode. Roaming mode is a godsend for people with laptops who may need to reconfigure their wireless network several times a day. In roaming mode, you set up each network one time, and wpa_supplicant will automatically connect to it whenever you're in range. If multiple networks are in range, you can set priorities to tell wpa_supplicant which one you prefer.
Until now, the only way to configure wpa_supplicant roaming mode was by editing the configuration files by hand, or use wpa_gui (http://www.murga-linux.com/puppy/viewtopic.php?t=47838). Wpa_gui has a somewhat confusing interface and requires large Qt libraries, so I thought it was time someone wrote a lightweight GUI frontend that was specifically designed for and integrated into Puppy.
Pwireless2 looks much the same as the original Pwireless [well not so much any more] but the guts are totally replaced. Pwireless2 uses wpa_cli to communicate with wpa_supplicant. Wpa_supplicant handles profile storage, and all network configuration tasks. I've also included an upgraded version of Dhcpcd which handles allocating IP addresses and notifying you when the status of your network changes.
Finally, I've modified a program called gtrayicon to provide you with a very basic networking tray applet. Clicking on the applet will tell wpa_supplicant to start or stop (clicking it if you haven't configured any networks won't do much of anything). Right click and choose Configure to launch the Pwireless2 configuration gui.
Installing the pet below will place a script called "Pwireless2" in /etc/inid.d. The script handles the launching of wpa_supplicant and dhcpcd. Gtrayicon is launched from /root/Startup/gtrayicon.
Currently Pwireless2 doesn't have support for wpa-enterprise. If anyone desires this functionality, let me know and I'll think about adding it. Also let me know if you find any bugs.
It should also be noted that Pwireless2 conflicts with Network Manager. So you should remove any profiles from Network Manager before installing the pet. After installing the pet, you should reboot, and everything should start up automatically.
Here's the link for libgio needed to make gtrayicon work on Puppies older than 4.3 http://www.murga-linux.com/puppy/viewto ... h&id=21949
The ralink staging drivers (ie rt2860sta and similar) in kernel 2.6.30.5 do not work with Pwireless2. Please upgrade to 2.6.31.5 or newer.
EDIT: I've uploaded a new version with a bugfix for interfaces that are not named wlan0.
EDIT - 11-18-09: I've uploaded a new version with several enhancements and bugfixes. I've added tabs for logging and dns and increased the verbosity of the status. Also fixed a bug where dhcpcd would not update the resolv.conf. Attempted to make the startup script a little smarter.
EDIT - 11-18-09:Fixed a bug where long log files would break the GUI.
EDIT - 11-18-09:Fixed a bug with wpa2 and other minor enhancements
EDIT - 11-23-09:UI and backend enhancements
EDIT = 11-30-09:UI and backend enhancements
EDIT = 11-30-09:a quick bugfix for the reset-wpa script
Edit - 12-02-09 : bugfix for quit button and connection dialog
Edit - 12-03-09 : bugfix for 32bit WEP keys and SSID names and passwords containing spaces
Edit - 12-09-09: Improvements to the Gui
Edit - 1-03-10: Added Dhcp configuration tab, improvements to the gui, and bugfixes
Edit - 1-6-10: Patch to gtrayicon so it will work on Puppy 4.2 (you still need to install libgio)
Edit - 1-17-10 Moved some files around and make some changes to make Pwireless2 work better for repackaging for Quirky and other puplets. Minor gui improvements and bugfixes. Added 'nolink' dhcp option for flaky connections. Fix to start dhcpcd when no wireless interface is found. and fix for wpa_supplicant "failed to start" error (hopefully).
Edit - 2-10-10 - Nolink mode now the default, I'm using wpa_cli to monitor the connection and coordinate dhcp. Also the init.d script is fixed to shutdown properly.
6-22-10 Various updates synced from Puppeee version