I got it working.
Story:
I upgraded to YDL 6.1, setup wicd correctly, and I had the issue with wicd hanging on "Obtaining IP Address..." for my WPA2 network, but it saw my network and tried to connect, unlike 6.0. I looked over many forum posts and sites trying to find a simple fix for my dilemma. After all, It was half working. However, anything I came across was either too involved or didn't work. I hate working and I hate 'not working'. I even tried updating wicd to v1.5.7 in hopes this was a bug that the developers fixed. I was being too hopeful. It really surprised me that I was able to manually enable wlan0 with command line input using the same config file that both the failing versions of wicd generated for my connection. I was able to see what it was running through the log in /var/log/wicd/wicd.log and using 'ps aux | grep "whatever"' while the wicd-client did it's thing. It appeared to be using the same commands that I was manually typing into terminal. Then I noticed from the /var/log/wicd/wicd.log that it was also using iwconfig to associate with my access point using 'iwconfig wlan0 mode Managed' and 'iwconfig wlan0 essid SSID ap XX:XX:XX:XX:XX:XX'. I didn't use these commands when I manually enabled wlan0 and it was working fine without. Like a Dr. Gregory House Epiphany, I know what I had to do to cure this patient. Well ... get it well enough to hobble away.
Wicd is python app. I knew that from the upgrade to 1.5.7. The python files are editable, therefore I can cut out the bits I don't like. Scalpel, stat! But which one, which command, or was it both? A file search, some simple edits, Vicodin for the headache, and a few wicd restarts later, I found that it was the essid option in 'iwconfig wlan0 essid SSID ap XX:XX:XX:XX:XX:XX.' After the codectomy everything worked without a hitch. Though ironically, both iwconfig commands worked when I again manually enabled wlan0, this time with them. I suspect that the quick timing in execution of these iwconfig commands from wicd is preventing the dhcp client from getting a ip while the wlan0 interface is applying them. I'll never be able to type that fast to verify, nor do I want to troubleshoot any further. It works well enough without. This is an issue for the developers to work out. As I mentioned above, I hate work, and want a simple fix. Also, I'm not a real doctor, I only play one for pretend.
Since I had already upgraded to wicd v1.5.7, I started with that. I tweaked the code and was able to keep the essid option for iwconfig. I have attached the file I edited for those who would like to try it out.
I also decided to see if I can do the same for the wicd v1.5.3 that comes vanilla with YDL6.1 for the users that didn't upgrade. Unfortunately, it totally it did not improved, and the code had to be removed. Therefore I REALLY recommend users upgrade to wicd v1.5.7 and then apply my fix. However, the updated v1.5.3 file did allow wicd to connect to my access point and is attached as well.
Disclaimer: These files are edited originals and I cannot guarantee that they will work in your system setup or not cause harm to it, yourself, or your family. Assume them to be br0ken and take all necessary action to protect yourself. I will not be held responsible for any damaged that you do by using these files.
Instructions: (YDL 6.1 specific, your mileage may vary)
Step 1: Download the file appropriate for your wicd version.
**UPDATE** There is now a wicd v1.5.9 tarball available with all patch already applied. Just install and go.
**UPDATE** Added patch file for wicd v1.6.0.
wicd v1.5.3
wicd v1.5.7
wnettools.py.tar.gz
wnettools.py v1.5.7 -
YDL 6.1: extract and place in /usr/lib/python2.4/site-packages/wicd/
Fedora 10: extract and place in /usr/lib/python2.5/site-packages/wicd/
(9.84 KiB)
wicd v1.5.8
wicd v1.5.9 -or-
wicd v1.5.9
wicd1.5.9_patched.tar.gz
wicd1.5.9_patched.tar.gz -
All patches are applied
**resolves** not auto-reconnecting on wireless drop due to loss of association
(250.68 KiB)
(A fully patched wicd v1.5.9 install tarball for users without wicd or users looking to upgrade to v1.5.9)
wicd v1.6.0
wnettools.py.tar.gz
wnettools.py v1.6.0 -
YDL 6.1: extract and place in /usr/lib/python2.4/site-packages/wicd/
Fedora 10: extract and place in /usr/lib/python2.5/site-packages/wicd/
(11.07 KiB)
wicd v1.6.1
wnettools.py.tar.gz
wnettools.py v1.6.1 -
YDL 6.1: extract and place in /usr/lib/python2.4/site-packages/wicd/
Fedora 10: extract and place in /usr/lib/python2.5/site-packages/wicd/
Fedora 11: extract and place in /usr/lib/python2.6/site-packages/wicd/
(11.46 KiB)
wicd v1.6.2
wnettools.py.tar.gz
wnettools.py v1.6.2 -
YDL 6.1: extract and place in /usr/lib/python2.4/site-packages/wicd/
Fedora 10: extract and place in /usr/lib/python2.5/site-packages/wicd/
Fedora 11: extract and place in /usr/lib/python2.6/site-packages/wicd/
(11.48 KiB)
wicd v1.6.2.1
wnettools.py.tar.gz
wnettools.py v1.6.2.1 -
YDL 6.1: extract and place in /usr/lib/python2.4/site-packages/wicd/
Fedora 10: extract and place in /usr/lib/python2.5/site-packages/wicd/
Fedora 11: extract and place in /usr/lib/python2.6/site-packages/wicd/
(11.54 KiB)
wicd v1.6.2.2
wnettools.py.tar.gz
wnettools.py v1.6.2.2 -
YDL 6.1: extract and place in /usr/lib/python2.4/site-packages/wicd/
Fedora 10: extract and place in /usr/lib/python2.5/site-packages/wicd/
Fedora 11: extract and place in /usr/lib/python2.6/site-packages/wicd/
(11.59 KiB)
Step 2: Extract the modified wnettools.py from the .tar.gz archive
Step 3: Backup your current wnettools.py located in /usr/lib/python2.4/site-packages/wicd/ so that you can restore it should my fix not help you or you decide to apply a later patch. Else you face the daunting task of reinstallation.
Step 4: Copy the modified wnettools.py to /usr/lib/python2.4/site-packages/wicd/ and overwrite the existing file that you backed up in Step 3. (root access is required for this step, so either do this logged in as root, or go su yourself in terminal)
Step 5: Reboot
Step 6: Return and post a reply of your success or failure. (I hope you printed this)
-sun