Dealing with incompatible wireless modules

Recently, one of our finance staff acquired a HP ProBook 4540s laptop with a Ralink 3290 wireless module.  There were some issues with installing and using it with GNU/Linux due to the lack of included drivers; the two options are to:

Make it work with GNU/Linux

Replace the module

Making it work with GNU/Linux

If a piece of hardware doesn't work with Linux, it's often a driver issue.  Drivers in the Linux kernel are in the form of kernel modules, so finding a driver for an unsupported device is equivalent to finding/building a kernel module. 

Kernel modules

One thing that I had noticed was that the module loaded for the module was ra2860 (from lsmod | grep ra).  Quick googling lead me to the conclusion that the correct module for this device (identified by lspci -v was in fact ra3290sta which was not present in the kernel modinfo ra3290sta.  From this point there were two options:

Finding a PPA

Only applies to apt-based distros, primarily *buntu and Debian. 

Often, someone else will have already done all the legwork, so it's wise to search for "module PPA".  If a PPA exists, just add the lines into /etc/apt/sources.list, and do an

apt-get update && apt-get install module. 

Alternatively, you could use add-apt-repository to add the PPA to the sources. 

Compiling from source

If a PPA doesn't exist, you may have to compile from source.  The general procedure for this goes as follows: