Thursday, May 1, 2008

Install ipw3945 (or iwlwifi) - Intel PRO/Wireless 3945ABG - on debian.

I always had these thoughts

  1. Why ubuntu install all the necessary drivers for the intel wireless cards to work automagically after the installation
  2. Why debian (etch) cant do the same ? why doesn't debian (etch) have the necessary packages in their official repositories.

I was always shying away from installing the firmware, building from the source. But when I found no other way, I ventured to get things done with sourceforge.net and here is how.

Step 1:

  • download the ipw3945-1.2.2.tgz from sourceforge.net (http://ipw3945.sourceforge.net/)

Step 2:

  • Do the following : 'tar -xzf ipw3945-1.2.2.tgz',  'cd ipw3945-1.2.2'  and 'less INSTALL'

Remember, most important step is the "less INSTALL' and reading through the instructions.

Finishing it off:

Thank your lucky stars, thank the developers who got these packages for you and last but not least thank sourceforge.net for hosting the ipw3945 page.

PS: If you have followed the 'INSTALL' file precisely you should see the wireless networks in your 'nm-applet' list, when you click on it.

I had to use sudo every here and there, especially when i do the './load' within the 'ipw3945-1.2.2' directory. So use it at abundance, shouldn't hurt you much !

This will only get you started with perfecting the wireless interface configuration. Once the mentioned procedure is completed, you might want the wpasupplicant and other accompanying packages like wpa_gui also for completing the setup.

Update:

After updating my Debian etch DVD's to lenny using jigdo, I installed lenny on the laptop. Once done, I modified the sources.list as below and did a "sudo apt-get dist-upgrade"

deb http://security.debian.org/ lenny/updates main contrib non-free
deb-src http://security.debian.org/ lenny/updates main contrib non-free
deb http://http.us.debian.org/debian/ lenny main contrib non-free
deb-src http://http.us.debian.org/debian/ lenny main contrib non-free

This updated my kernel to 2.6.24 and it got me the correct wireless drivers (iwlwifi, this is the next life of deprecated ipw3945 driver). Wireless was working fine after the update and the networks were showing up in the nm-applet.

4 comments:

miksuh said...

"Why debian cant do the same ? why doesn’t debian have the necessary packages in their official repositories."

You really should look again before blaming Debian. Those packages ARE in the Debian repository.

Those ipw3945 modules are in the Debian contrib-repository. Firmware-packages are in the Debian non-free repository.

Make sure you have something like this in your /etc/apt/sources.list. What matters are those keywords 'non-free' and 'contrib' at the end of lines.

deb http://ftp.fi.debian.org/debian/ etch main non-free contrib
deb-src http://ftp.fi.debian.org/debian/ etch main non-free contrib
deb http://security.debian.org/ etch/updates main non-free contrib
deb-src http://security.debian.org/ etch/updates main non-free contrib

When you have saved the file you can reload package database using Synaptic. You should now see those ipw3945 packages and you can install those.

SP said...

You really should do your homework before writing such things. Especially if you want to do the ubuntu vs debian comparison and end up on aggregators.

Debian etch *does* support ipw3945 straight out of the box, you just need to make the decision to allow non-free software to be installed on your machine. A quick google would have told you that, or we could have given you a one-liner in #debian on irc.debian.org.

You don't need to go anywhere near tarballs or complex instructions on this is "how to do it".

Also note that:

* ipw3945 works very well with networkmanager too

* with a kernel from backports.org (2.6.22) you can quite happily install the iwlwifi driver (moving from etch to lenny is *not* required). Numerous how-tos are around including on the wiki.debian.org

* with a kernel from etchnhalf (2.6.24) you can quite happily run iwlwifi under etch with no effort at all. (once again, etch->lenny is *not* required)

kryptoz said...

SP, thank you so much for your points there.

Just to correct you on one thing, I ain't doing a comparison here between distros. You dont need to read till your brain fails to understand that from my above post.

I am talking about getting things "work out of the box", and that didn't happen to me with etch with the 'non-free' enabled.

I choose the easier way, not downloading a precompiled kernel from a third-party to update my etch to the latest. I better go for lenny rather than trust a precompiled third-party kernel.

SP, do you have a simpler way than what I have done above ? let me know.

Polemical said...

Somehow i missed the point. Probably lost in translation :) Anyway ... nice blog to visit.

cheers, Polemical!!