There is no best way to do it, as such. Both Steam and Wine are ever-changing, and today's best method might break tomorrow*.
People have reported that Steam works with just standard Wine.
Install Wine from the Software Center (or click the shopping bag icon).
Right click the installer executable, go to Properties → Permissions and check Allow executing file as program, then right click it again and select Open with Wine Windows program loader.
If it turns out that doesn't work for you, you can try using PlayOnLinux.
Marco has detailed the instructions on how to get it working behind the link.
If it still doesn't work, you can give Crossover Games a go. Though it is number three on this list on purpose.
In general, it seems that Steam will work okay. You should try to run it using out-of-the-box Wine first. If you run into any trouble, feel free to ask a question under the wine tag at Ask Ubuntu.
Also see this site for Steam games that work with Wine (and, by extension, PlayOnLinux).
* Note: If you get it to work, updates to Wine will most probably never break it. But it may well be the Steam people are fighting off Wine compatibility. It may also be they are actively trying to make their program run well under Wine (games publishers have been known to do that).
Running software using the ION processor will require extra software. Windows 7 Nvidia supplies Optimus. On linux there's a project called Bumblebee.
To recap the several sources on the web for 64bit Oneiric:
Install LOTRO roughly following the howto
sudo apt-get install wine winetricks
export WINEPREFIX=$HOME/.wine-lotro
winetricks vcrun2008
winetricks d3dx9
cd /wherever/you've/downloaded/the/game
wine LOTROSetup.exe
This will have created a wine environment (sometime revered to as 'bottle') in .wine-lotro in your home directory and installed the game there, including some native windows dll's that the game needs.
To launch the game from wine you'll need the special launcher called PyLotro. Normally on Ubuntu you do
sudo add-apt-repository ppa:ajackson-bcs/ppa
sudo apt-get update
sudo apt-get install pylotro
But there's no Oneiric version in the ppa yet. So just get the source version (not the 'Stand-alone Version' exe one).
To have it use the Nvidia processor, you install Bumblebee
sudo add-apt-repository ppa:bumblebee/stable
sudo apt-get update
sudo apt-get install bumblebee
And since wine is 32-bit, and 64-bit Oneiric uses multiarch, you install the 32-bit version of some libraries like this
sudo apt-get install virtualgl-libs:i386
without it you'll see those LD_PRELOAD
errors.
To have the pylotro launcher use optirun
to run wine
, I made a tiny wrapper script like this
mkdir $HOME/bin
cat << EOF > $HOME/bin/optiwine
#! /bin/sh
optirun wine \$@
EOF
chmod +x $HOME/bin/optiwine
In pylotro /Tools/Options, tick the Advanced Options and set /home/{username}/bin/optiwine
as the Wine Program
. And of course set the right WINEPREFIX
et al.
Best Answer
Yes, actually. Wine will run Steam and DotA 2 (along with other source games, including TF2) fine. There are some particle rendering and lighting issues though. Also, performance varies by desktop environment. XFCE and LXDE have the best track record, where Unity and KDE have the worse. There is also a pulseaudio bug that crashes your game when it tries to get direct access to sound hardware, there is a fix. More at the wine appdb entry.