How To: Run Team Fortress 2 (TF2), Portal, Half-Life 2, HL2 EP 1&2, and Counter-Strike In Ubuntu Using Wine

For those of you who are not familiar with The Orange Box, it’s five games in one box. It contains Half-Life 2, Half Life 2 Episode 1, Half-Life 2 Episode 2, Portal, and the one everyone has been waiting for: Team Fortress 2. My god! For 50 bones this IS the best deal in video game history.

Let’s start with a overview of what we need to accomplish: Copy DVDs to Hard Disk, Install & Configure Wine (including obtaining a proprietary, non-free font), and finally, configure the game to run properly.

I highly suggest finding some music to listen to while you do this. It takes about 30 minutes total, but well worth the time invested, as you could conceivably spend hundreds of hours playing these games.

May I suggest some Led Zepplin? OK, now that you’ve got something to kill time with, let’s get down and dirty.

    1. Copying DVDs to Disk

is a piece of cake.

Pop in either disk 1 or 2, then open up a terminal (Applications | Accessories | Terminal).

Make a directory on your desktop:
mkdir ~/Desktop/Orange_Files

Then run this command to copy the files over:
cp /media/cdrom0/* ~/Desktop/Orange_Files/
Expect copying a DVD to Hard Disk to take approximately 6 minutes. This would be a good time to make a sandwich.

Eject the DVD, and repeat this step for the next one. When finished, you should end up with 20 items that amount to around 7.8 gigabytes. Go ahead and remove the DVDs, you wont need them from here on out.

Easy so far, huh?

    2. Installation & Setup of Wine

is a little more involved, but is still pretty easy.

First we need to grab it from the Ubuntu apt repository:
sudo apt-get install wine
Then we need to install the Gecko browser for it.
wine iexplore
Click install when prompted, as soon as you can view the website, feel free to close the browser.

Next, we need to configure Wine to use the ALSA sound driver, which works like a charm. Go to Applications | Wine | Configure Wine. Goto the Audio tab and uncheck OSS. Check ALSA, then press OK.

Lastly for Wine, we need to install the Tahoma font. It’s a hop, skip, jump and Google query away:
tahoma filetype:ttf

I will not be more specific than this. Save the file you find to the Desktop, then run this command:

cp ~/Desktop/tahoma.ttf ~/.wine/drive_c/windows/fonts

Note: this command is case sensitive. If you find something called “Tahoma” or “TAHOMA”, modify the above command to reflect the change.

    3. Installation of the actual game.

Where’s my “That was easy” button?

Open up the Orange_Files folder on the Desktop, and right click on Setup.exe, choose Open With Other Application, scroll to the bottom and select Wine Windows Emulator then press Open.

You should be looking at something like this:
The Orange Box Installer
The next few steps should be familiar to anybody who has ever used Windows before: Install, next, you own my soul, next, next, install, and finish.

Now, we come to the part that is for lack of a better word, annoying. We have to activate the software before installing. Plug in your Orange Box CD Key and login to your steam account.

Now we get down to business. Select what games to install:

The Orange Box Installer Select Which Games To Install

Next, then next again. Keep both of those boxes checked, so that you have icon files already on your desktop if you want to make shortcuts, and entries in the Applications menu to launch the game.

Now, it prepares files to install (presumably decrypting them), then copies them over. Takes about 7 minutes on a 10k RPM Raptor, your results may vary.

The Orange Box Installer - Installing From Disk

This is a good time to grab a smoke, make a sandwich, AND sleep with your woman (or man).

Finally, we’re Finished! Hooray!

And we’re looking at all our new shiny games from a video game developer (Valve) that said “Fuck the man, we’ll create our own distribution platform and get rid of the middle men that take 60% of our revenue.” And on the seventh day, Steam was born. Kudos to Gabe Newell, he won my respect with that move years ago.

Alright, now we get to launch Team Fortress 2. Cue spotlight, heavenly music, and WHAT? Video Driver Outdated? Check a box, Continue Anyway. I think this is an inside joke from Valve.

The Orange Box - Video Driver Outdated

Hit Play game, and if you’re lucky, everything looks great. If you’re me, it looks like this:

The Orange Box - Not Quite Full Screen

If you get this, just ignore the fact that it’s half-way off the screen, goto Options, then to the Video tab and set it up to use the same resolution as your Desktop.

Press OK. Quit the game, then open it right back up again. Everything should be looking MUCH better now, with no more system menu bars all over the top and bottom of the screen.

Oolala - Team Fortress Configured Properly and Running!

Performance seems to be perfect using the latest nVidia binary blob with a generation old video card. On average, I’ll get around 40 frames per second when there is some really intense action, like 5 or more players all fighting in the same room. In most other areas I see about 80 fps. There is an occasional audio stutter, seems to happen most often during the beginning of a match, when all the textures for the level are being loaded.

I recorded a ghetto video for all of you to enjoy. I used a digi-cam for video, and used a voice note recorder on my iPhone for audio, then slapped em together for a half-second audio delay – but certainly watchable. Enjoy!

  • matt

    What if you have the downloaded files through Steam? Can they just be burned to a dvd and go from there?

  • Scaine

    I’ve used Wine to run Steam and download Prey and Half-Life 2, using my CD cover keys to validate them. I couldn’t get Prey to run at all, but HL-2 ran pretty sweetly (Athlon X2-4200, 2Gb ram, Nvidia 6800GT). The load times are slightly longer, and you don’t get PixelShader 2 effects, but it’s otherwise a pretty close copy of its windows performance.

    There’s plenty of “demo” titles on Steam, so if you use this guide to get Wine going, fire up the native Steam client (, then just download the demos and try them first. If they run, the full game will likely run too. Which rules out Psychonauts, which is the only other game I tried to run using this method – also failed.

  • matt

    Ah, thanks. So I can just download Team Fortress 2 and the others through Steam and follow some steps from above and they should theoretically work? The big ones are Team Fortress 2 and Call of Duty 2.

  • Wayne

    You would want to check the appdb for CoD, but the steam version of TF2 should be exactly the same.

  • Pingback: Everything You May Have Wanted To Know About Me But Didn’t » fsckin w/ linux()

  • SegFault

    I got TF2 running under wine + gutsy but having some issues with graphics. I turned all the video options up to max, but some textures don’t seem to be rendering up. For example, the water is just a blue object. It doesn’t have the watery look, no texture, it’s just solid blue. Everything else seems to be ok. I have a GeForce 8800GTX, and don’t have these issues in windows. Anyone else have a similar issue?

    some output from glxheads:
    GL_VERSION: 2.1.1 NVIDIA 100.14.19
    GL_VENDOR: NVIDIA Corporation
    GL_RENDERER: GeForce 8800 GTX/PCI/SSE2

  • MistaED

    Ok I’ve got wine+steam running on gutsy, one huge massive issue though, fonts are hardly readable in-game and they’re all over the place, how do I fix? :(

    Also for those who want gee-whiz graphics in wine, edit the registry like what I put up above (like you SegFault)

  • Pingback: How To: Run Team Fortress 2, Portal, Half-Life 2, HL2 EP 1&2 In Ubuntu Using Wine | fsckin w/ linux · Wine Database()

  • Jack

    Okay, I make it down to setup, at which point i get an error that says steam does not support windows 98/2000/ME, and the install fails. any ideas on what could cause this in gutsy?

  • Jack

    Sorry for that last comment. After looking around, i found where I could change this to Windows XP. This probably explains why wine has never really worked right for me!

  • Wayne

    No problem Jack, indeed – that would be a good reason!

    Fonts hardly readable? What graphics chipset and wine version do you have?

  • Jack

    Well, everything goes great until I launch an actual game. Then it crashes without warning after the first VAVLe logo.. Looks like i’m just going to have to break down and put Windows XP back on here for games.

  • Pingback: MODSonair - Podcast » MODSonair Episode 098()

  • DaveQB


    Thanks Wayne for your easy to follow howto. Your experience came me confidence Orange Box would work in Crozzover (prefer the GUI and didnt want THREE implementations of WINE on my system (Cedega, Crossover and WINE)). And sure enough it works flawlessly in Crossover.

    I will be putting up an howto on my site over the next few days. It wasnt that hard though, and probably an easier way then how I did it, but it works.

    PS for anyone getting lag, shut off the Steam “friends” window to regain “normal” performance.


  • Wayne

    Excellent news DaveQB – there’s never enough WINE in my house. :)

  • Lee


    I’ve been meaning to try this and my google search first brought me to your youtube vid, Then here.

    You might want to add that to install with no media you can download steam from

    I saved the file to my desktop. To install you run in a terminal

    msiexec /i ~/Desktop/SteamInstall.msi

  • cheetahman

    Jack edit the winecfg and switch it form me to XP so that Wine thinks that its Running Windows XP. For the fonts all you need to do is to download the package msstcorefonts also using WineXS makes it alot easier

  • Ken

    I am using the new Wine 0.9.48 and was able to play Team Fortress 2 and Portal on my OpenSUSE 10.3 x86_64, but I had to do some tweaks

    1) run winecfg and set it to run ALSA for the sound
    2) run TF2 in Windows 98 compatibility mode (also under winecfg)
    3) Disable all that Steam “fun” features like the news/updates startup, Steam community, notifications, etc…
    4) create STEAM game desktop shortcuts on the desktop. DO NOT run TF2 directly from the Steam control panel. Just use the desktop shortcut

    Sometimes I will get this annoying “Steam registry in use” error, but I just exit Steam and relaunch it and cross my fingers that it works.

    Hope this helps

  • Pingback: david petar novakovic: attempted axiomatisation » links for 2007-10-31()

  • DankNuggs

    id definitely say that this is using DX8 textures and not 9, as i have this running on XP and the textures look a lot different on windows,, also i am still using 2 geforce 6600GTs in SLI…

  • Pingback: superjamie . net » Blog Archive » is no news good news?()

  • Puyo

    So, I followed everything here to the T, and all went well, until I tried to run the installer. It always says, “Steam is already running”. It’ll get to 26% updated, say that, and close out. Any advice?

  • Calvin

    Do the graphics still look good considering its a lower pixel shader?

    I mean is it really worth playing and does it stand up to par with a windows system?

    I am tempted to try this, provided I dont end up with like HL1 graphics or some crazy crap.

  • MistaED

    Ok my problem is fixed with the fonts, turns out to just be a packaging/compiling regression I was using, latest wine works fine with it.

    Anyways it looks like people aren’t reading my advice if they want whiz-bang graphics.

    Under HKEY_CURRENT_USER\Software\Wine\Direct3D put in:

    OffscreenRenderingMode fbo
    PixelShaderMode enabled
    UseGLSL enabled
    VideoMemorySize (size in megabytes, I put in 256)

    And the graphics will be just as good as windows for the Direct3D9 mode, except very slow! :) Best to just wait until the GLSL and FBO stuff matures, or stick with DX7 or DX8 graphics, which are quite acceptable if you don’t look at the water too much :)

  • Calvin

    what sort of frame rates do you get with those settings ?

  • MistaED

    I get about 11-15fps at a resolution of like 1280×800 I think it was, using the benchmark map, my computer specs are:

    Intel core2duo 1.83ghz
    Nvidia Geforce 8600GT
    2GB DDR800 RAM
    Ubuntu 7.10 64-bit, and WindowsXP SP2 32-bit

    On windows XP it’s much better, like 60-90fps I’m guessing… It could be just the code to convert direct3D HLSL shaders to GLSL needs more optimization, and rendering to texture as well (water reflections, tv screens, etc.) And geforce 8 series are in the middle of a performance regression by nvidia, as my 6800GT did like 15fps 6 months ago on the same test.

    Hopefully with things like Gallium3D+LLVM, which allows any kind of graphics API to sit on top of linux’s DRI/DRM 3D rendering, the wine devs can port WineD3D directly on top instead of maintaining an opengl wrapper. See:

  • Scaine

    @MistaEd : Can’t believe your framerates are that low. When I was playing HL2 under Cedega about a year ago, the only difference I noticed between Windows and Ubunutu/Cedega was
    a) Water rendered as a translucent, but clear surface, whereas on Windows, it added a nice ripple effect to everything under it.
    b) Load times were about 20 seconds on Windows, but nearer twice that on Ubuntu.
    c) The stuttering at the start of every level was fixed under Unbuntu, but that might have been Valve fixing the issue in the months between my intital Windows play and my second play through on Ubuntu/Cedega.

    It was otherwise an indentical experience.

    Specs : Athlon X2 4200, 2Gb ram, and and oldish AGP based Nvidia 6800GT. I think I ran the game at 1024×768, but I’m not entirely sure.

  • Pingback: Mighty Linuxz » How To: Run Team Fortress 2, Half-Life 2, HL2 EP 1&2 In Ubuntu Using W()

  • Wayne


    1. Try this.from

    nice -n 19 Steam.exe

    2. Also the following Google search will turn up LOTS of fixes.
    steam 26 wine

    3. Make sure you’re updated to the latest version of WINE.

  • Pingback: The Email Gabe Newell From Valve Software Never Responded To » fsckin w/ linux()

  • Malice

    I followed this guide and it worked perfectly until I tried to play the game. I get the Steam splash screen and the ‘Source’ page with all the copywrite notices and then the game goes black and shuts down. Running latest Ubuntu on AMD64 3200+, 1.5gig ram, Radeon 9600. Any ideas?
    Nice guide though, thanks. (I’m a Linux noob but determined to get stuff working).

  • Mark

    Hi Malice,

    This might not help your situation, but I had the same problem as you (where the game would start but crash shortly after the Steam logo & copyright notices) and I’ve managed to fix it.

    I’m using an NVIDIA card, and my fix ended up being grabbing the latest NVIDIA drivers (100.14.19). So, my working configuration is:

    * NVIDIA 100.14.19 drivers
    * wine 0.9.46
    * ALSA for my sound
    * Pixel shaders enabled
    * The registry settings MistaED gives above

    And my command line is:

    wine Steam.exe — -applaunch 420 -dxlevel 80 -width 1680 -height 1050 -heapsize 512000

    Hope that helps someone,


  • Callonious

    Hi, firstly i would like to say what a well written guide this is, very easy to follow.


    I managed to install it all fine , going step by step. And i get to the bit where TF2 loads i get the “graphics out of date” menu, and it looks like yours does where it is half way across the screen, but thats where it goes wrong. The game doesnt load for me it crashed before the menu and i cant change the resolution to match desktop like you said.

    Im running a Radeon X1600 Gfx card on my laptop, gig of ram etc 1.8 Ghz dual core processors, it runs the game fine in windows so i know the hardware can do it.

    When it comes to linux im a noob tbh , this is my first go at it >

  • http://? hello
    Here’s a really good performance tweaking guide which helped me quite a bit with the in-game stuttering i’ve been experiencing.

    I noticed the most difference with these cvars:
    fps_max “75”
    cl_forcepreload “1”
    cl_smooth “0”
    mem_max_heapsize “1024”

    and the following launch options:
    -dxlevel 80 -novid -refresh 75 -heapsize 1024000

    This game runs BETTER than in windows now, on this machine at least. I’m ALWAYS the first to load the game on servers, and my system specs are mediocre. For a while the stuttering was really aggrevating, but it never happens now.

    system specs:
    am2-sli deluxe
    3800+ windsor
    2GB PC6400 CL5

  • James

    I don’t know what I’m doing wrong. The game loads but its very choppy and there are a lot of texture problems.

    wine 0.9.49 – compiled from source
    nvidia 100.14.19
    ubuntu gutsy
    amd x2 4800+
    2gb ram

    I made all of the tf2 cvar optimizations and registry optimizations.

    I get about 25-30 fps, but it drops to like 2 when theres a lot of people around. How does everyone have it running so well?

  • James

    Alright, I figured the problem out, hopefully this helps some people.

    I downgraded my wine to 0.9.46 everything runs great. 100fps I guess newest isn’t always the best.

    kind of funny how I went out of my way to install it from source (which took a while gathering up the dependencies) and it ended up biting me in the ass. I’ll stick with the easy apt-get from now on.

  • Wayne

    James- a few buddies at work have had a few issues similiar to what you describe in WoW – you aren’t the only one with problems on the latest release of wine.

  • Pingback: Unreal Tournament 3 - Linux Client Delayed » fsckin w/ linux()

  • Pingback: hoodyhoo » Blog Archive » Note To Self 24: Dual-boot To The Head()

  • Lint

    Well, here goes my glitches:
    1. Like Desmond said, all the mouses clicks are a bit mispositioned from the actual mouse cursor on steam, but that’s not much of a problem, often steam buttons don’t work so you have to use keyboard.
    2. I’ve got HL2 standalone running, but not TF2, as soon as I join a server on TF2 (or ran a local server) and get to the team selection screen it crashes wine, any ideas? It’s right after choosing a team, spectating also crashes.

    My setup is:
    turion64 x2
    1.5gb ram
    geforce go 6150
    Running on Slackware Linux kernel 2.6.20.something compiled from source, wine too. (I’m not at home now, so I don’t recall wine version)

  • Lint

    Oh, and by the way: nice t-shirt, rudeboy.

  • Malice

    I bought a new vidcard and manged to get TF2 running but it is like a slideshow. 2Fps if that…meh
    Used Envy to install my card drivers.
    AMD64 3200+
    1.5gig of ram
    Geforce 7600GS

  • Edward

    Although I love Ubuntu and I think it’s the best thing since sliced bread, linux will never take off until the average user can go to EB, GS, or WM, buy *any* windows software and install it by clicking a few buttons. Seriously. People don’t give a rat’s ass about the OS, they want the cool apps and games to work!

    The sad fact is, right now, linux is a fanboy OS and anything out of the ordinary usually requires more than a passing knowledge to fix.

    In my opinion, the linux community should change direction entirely and stop attempting to emulate Windows. I don’t see anyone creating a L-Box and using WINE to play XBox console games. Why not? Because it’s stupid, that’s why.

    But what if you could make/buy a LBox for $100?
    It still wouldn’t work because you would have to;

    mkdir ~/Desktop/Orange_Files
    cp /media/cdrom0/* ~/Desktop/Orange_Files/
    sudo apt-get install wine
    wine iexplore
    Applications | Wine | Configure Wine
    tahoma filetype:ttf
    cp ~/Desktop/tahoma.ttf ~/.wine/drive_c/windows/fonts

    Just to play a game! Nuts, eh?
    It’s easier to buy an Xbox, the game and play it with no hassle.

    Linux fans and users should remember that there’s nothing wrong with being different! Find a niche and do it well. If you don’t lead, you’re destined to follow.

    sudo get my ass.

    insert CD into CD-ROM… wait…
    klik, klik, klik, wait, wait, wait…

    I’m playing HL2 right now.

  • James

    Eddie, I don’t think most people put linux on their machine for the purpose of playing games or using windows apps. They use linux because allows them to do things windows does not. However, it is necessary to use windows apps sometimes when you can’t find a substitute linux package. Linux is continuously being developed and improved, thats more than I can say for windows (Take vista for example).

  • Edward


    There is nothing that windows or linux does that the other OS cannot emulate. The deal maker is the applications.

    Tell Joe Blow that he can buy one box and play Xbox, PS3 and Wii games and he will buy that box instead of three.

    Same with windows and linux, people really don’t care about the OS, they want a cool-looking-easy-to-use-fast-simple-solution that lets them run all the latest and greatest hyped games and apps they see on television.

    And as for linux being continuously developed and improved – it doesn’t matter if Joe Average has to type “sudo whatever” just once. You just lost him. There’s a reason why windows uses icons – Joe Average can understand them.

  • A person

    I booted up steam and it gave me some crap about Windows 98 no longer being supported. I went into the Wine configuration panel (using winecfg) and set the default machine to Windows 2000. I tried Steam again and it gave me the same message about 98, then promptly closed, AGAIN. I went to the Wine configuration panel and it went back to Windows 98. I’ve tried several times but it still won’t switch!

    I am running 7.04 on a HP Pavilion a1200y with a crappy Celeron D processor and a even crappier motherboard based ATI Radeon Xpress 200 card. I am currently using Wine 0.9.46

  • A person

    Sorry, I gave the wrong Wine version, its 0.9.49

  • James

    did you “sudo winecfg” ? Don’t think the winecfg has rights to save unless its run as root.

  • Island Of Toys

    Winecfg will save if you click the apply button.

  • void

    I was looking at this because I was looking to switch over to linux with a new system. Some issuse could be do to the hardware. I know to get my source games to run on this oldish laptop I had to use ‘+mat_forcehardwaresync 0’ in the launch options.

    Yeah not the best gaming rig and I think it might die when I load the wrong maps in cs…

    Anyway I got an error with a black screen and crash under XP so there might be some trouble shooting to do before just give up.