Note: This page exists as a somewhat more verbose mirror of the OP for the GNU/Linux thread at the Penny Arcade forums. It's barebones and ugly, but then, so is everything else I do. I wouldn't expect this to get updated quite as often as the thread itself. Why even keep this backup? The thread on the forums has this nasty habit of disappearing off the front page very quickly, and I'd hate for all of the effort that's been put into this to be a total waste. Thus, this backup.

The thread itself can be found here. Previous OPs/contributions by Visti and Jasconius.

Index of topics

What is Linux?


Short version: Linux is an operating system, like Windows or Mac OS X. It's popular with many for both practical reasons (stability, performance and reliability) and 'political' reasons (its freer, open-source nature).

Long version: GNU/Linux (its proper name) is a base operating system with countless variations (known as Linux distributions). GNU - a recursive acronym for "GNU's Not Unix" - is where most of the userland 'linux tools' come from. While technically not code compatible with Unix, it is for all practical purposes a Unix clone. Linux is its kernel, which handles all of the 'behind-the-scenes' stuff for the operating system. People often refer to GNU/Linux as simply 'Linux' because, let's be honest, "Linux" sounds a lot cooler that "guh-noo-linux". GNU's been around since the 80s, but had never been part of its own 'real' operating system until the release of the Linux kernel in 1991.

What sucks about Linux?


First of all, depending on what you want to do with the machine, Linux can take a little more work than Windows or Mac OS. I'd put it at roughly Windows XP difficulty for most things, and even then, it's a bit easier out of the box. Some distros are 'harder' than others, but we'll get to that later. It's mostly just a matter of learning a different skillset than what you're used to.

If you're coming from Mac OS, well... Linux doesn't have Final Cut, and if you've fully bought into the Apple lifestyle (iPod, iPhone, iMac, iTunes, etc.), most of that isn't going to play nice with Linux due to the unnecessary, burdensome and arbitrary restrictions that Apple's seen fit to bless all of their products with.

If you're coming from Windows, Linux has far fewer games. Sure, it has some, but unless you're really into indie games then you might have problems. Virtually no triple-A titles make it to Linux, with the oddball id software exception. Some people can get newer Windows games to work in Linux, but it's a pain in the ass and in my opinion, not worth the effort.

Then why should I use Linux?


There are many reasons to use Linux as your operating system. The first and perhaps most powerful reason (at least for newcomers) is that it won't cost you anything but time. The vast majority of Linux distros are completely free of cost, no strings attached. The same can be said for virtually all software (other than games) that you'll find for Linux.

The second reason is that it's just good. I almost don't know how to deal with the fact that I never need to defrag my hard drive or reinstall my OS twice a year to 'get rid of the bloat'. The software that you get on linux is at least as good as what you get in Windows, ignoring its other benefits (open-source and free of cost). Linux – and Unix for that matter – are famously stable operating systems. The website that you're browsing right now is almost certainly being served by a Linux or Unix box, not unlike the majority of the rest of the internet. It's not a coincidence. Oh, and once you get used to having a nice, powerful Unix/Linux command-line as an option, it's hard to go back.

The third and, in my opinion, most important reason to use Linux is because when you do so, you're using software that doesn't feed a corporation whose goal is to chain you to their software and hardware ecosystems forever. Have you ever thought to yourself, "Gee, it's kinda bullshit that I bought this but don't technically own it?" That's not a problem if you use GNU/Linux, or open-source software in general. In fact, the entire purpose of GNU is to ensure that the consumer remains free and empowered while still having available to them good software.

P.S.: No viruses. And as for gaming, well, how long do you think it is until PC gaming is basically just indie games and shitty console ports with crippling DRM?

Okay, I'm interested. Now what?



Great! The first thing you want to do is to grab a Linux distribution. Think of Linux distros the way you'd think of hamburgers. No matter what brand you get, it's always the same basic thing, but depending on how it was put together there can be some significant differences between end products. Also, they are delicious. You can find a list of popular distros at distrowatch.

It's generally recommended that newcomers start off with Ubuntu GNU/Linux. Ubuntu (and its derivatives) is basically Linux made easy, and very popular for that reason. It's also just a good operating system, despite what its detractors will tell you.

Ubuntu


Ubuntu Linux
(Direct download)



If you're wondering whether you should get the 32-bit or 64-bit version, go ahead and grab the 32-bit version. It'll work on both 32-bit CPU architectures and 64-bit architectures. If you're already running a 64-bit OS or know that your hardware can do so, then sure, get the 64-bit version.

After you get the .iso, just burn it (or put it on a thumb drive) and boot it. Quite a lot of distros, Ubuntu included, offer an option to try their OS as a 'Live CD', meaning you can test it out without installing it or changing anything on your machine. It'll be a bit slow when you do this (it's running off of a CD, after all), but is still a decent way to test drive Linux.

Also, if you're a Windows user then you can use their Wubi installer to install Ubuntu like any other application on Windows.

If you decide to give Linux a 'real' shot (i.e., install it), that's easy too. Either choose to install when booting the disc/thumbdrive, or choose to install from within the Live CD environment. The benefit to the latter option is that you can browse the web or play solitaire while installing your OS. From beginning to end, the entire installation process should take 20 minutes or less, and your only potential road block is if you want to dual-boot operating systems (have both Linux and Windows on the same machine), in which case you'll need to partition your hard drive to do so. It's not hard, and in fact Ubuntu comes with an option to install itself alongside Windows without a hitch. However, if you want to partition your hard drive manually, here's a decent page describing the process:

http://www.brighthub.com/computing/linux/articles/121455.aspx

Tell me about other Linux distributions!



Happily. While Ubuntu is perfectly fine, there are a number of other popular distros that may better suit your tastes.


Linux Mint


Linux Mint


Mint is an Ubuntu-based distribution with even more 'good stuff' included by default, and according to Distrowatch is currently a bit more popular than even Ubuntu. It uses a more traditional desktop environment (or 'desktop paradigm' if you're feeling like a smarty-pants) than Ubuntu's Unity interface, which has driven a lot of people into the loving arms of Linux Mint. The only reason I still recommend Ubuntu over Mint is that I find Ubuntu's new interface to be a little more stable, and Ubuntu has a stronger support community.

Fedora


Fedora Linux


Fedora Linux is Red Hat's free, 'bleeding edge' distribution. It's quite a good distribution and if you prefer that your distribution is not Debian-based (which both Ubuntu and Mint are), then you owe it to yourself to try it out. A word of caution: Fedora doesn't ship with all the proprietary good stuff that Ubuntu and Mint do, which means that playing MP3s or using Flash is more of a hassle.


OpenSUSE


openSUSE Linux


openSUSE is your run-of-the-mill Linux distro, quite good but seemingly targeted more at small busineses than the previously listed distros. It's funded by SUSE, which was owned by Novell until 2011, when both Novell and SUSE were acquired by Attachmate. What does this mean to the end user? Not much, though I feel obligated to point out that Novell and Attachmate have had IP dealings with Microsoft. openSUSE has never blown my mind, but it's always been perfectly serviceable and I note that its proponents are often very loyal.


Debian


Debian Linux


Debian Linux is one of the older distributions, and of the still-existing distributions around today, is predated only a number of months by Slackware Linux. Unlike Slackware however, Debian is very easy to install and use for your average, every-day user. The software it provides isn't bleeding edge by any measure (its most recent official release still ships with Firefox 3.5), but this is a tradeoff for its famous stability. It's a very boring distribution, but if you need something that will just keep going forever, here you go.


Quit holding out on me. I want some hardcore Linux!



Oh you do, do you? Feeling that neckbeard growing in good and thick? Alright, here are a few other distributions that may suit you a little better.


Arch Linux


Arch Linux


Arch Linux is awesome. Sorry, I'm a little biased. Arch Linux is a modern Linux distro that makes having a minimalist, 'built from scratch' (though not actually) Linux distribution as easy as possible. It doesn't even ship with graphics drivers or a GUI desktop, but if you follow the Wiki, are somewhat familiar with Linux, and have an internet connect, then you'll do fine. You'll know what services start on system boot because you'll have looked at the config files yourself and added your own daemons where necessary, and the performance you get out of your machine with Arch is something you'll need to work hard to beat. Arch is a 'rolling release' distribution, which means that as long as you keep updating your system, all of your software will be relatively new all the time. This can be both a good thing and a bad thing, depending on what you're looking for in a distro.


Slackware


Slackware Linux


Slackware is the first 'real' distro that I installed back in the day (which for me, was in 2003 I think). It was a bit of a learning experience. Slackware and Arch are similar in some ways, but Slackware doesn't really have a 'real' package manager. It does, however, come with a ton of software out of the box – including multiple Desktop Environments – and is right up there with Debian in regards to stability. It's also the oldest distribution listed in this OP, dating back to July 1993, and may in fact be the oldest distribution still around.


Gentoo


Gentoo Linux


Gentoo is the nerdiest of almost all distros, with the possible exception of Linux From Scratch. With Gentoo, a popular method of installing the OS is to compile basically everything from within the installer environment yourself and install it like that. It takes quite a while, but it's a good way to learn Linux if you've got time on your hands. Like Arch, it's a rolling release distro. Unlike Arch, it may literally take you days to install, depending on how much time you wish to devote to it.


Any other distros you'd like to throw at me?




Crunchbang Linux


Crunchbang Linux


Crunchbang (#!) is a minimalist, Debian-based Linux distribution that ships with either the Openbox window manager or the XFCE Desktop Environment (or both). It's designed around being easily modifiable in the traditional Linux/Unix sorta way, but also ships with a lot of the good stuff that you might miss out on with by default with some other distros. It's probably my second-favorite distro, and if you're into darker-themed minimalism, give it a shot.


Puppy Linux


Puppy Linux


I'm not a huge fan of Puppy Linux myself, but if you've got older hardware then this is the OS you've been looking for. I include it with these other distros because this will perform quite admirably on that aging box that you're keeping in the garage or in your closet, and if nothing else this will at least give you a taste of what you're missing out on. Some people love this distro even on their 'real' computers, though, so who am I to judge?


Trisquel


Trisquel Linux


Trisquel is an Ubuntu-based distro with all non-free (free as in speech) software removed. Its goal is to provide an operating system that's quality software while still consisting of nothing but Free software with a capital F. Of all the distros on this list, it's the only one to get the FSF's official seal of approval. Don't let that scare you away, though. It's actually pretty good.




Alright, so there are a lot of distros. But what does it look like?


I'm glad you asked. In Linux-land, you can theme your desktop however you'd like. Hell, you can even live on the command-line with no GUI whatsoever if you want. But for most people, they're interested in what Desktop Environment (or Window Manager) looks like.

Each Linux distro tends to ship with one or more DEs/WMs. Usually just one. If you don't want to mess with the way things look, you're fine just using whatever your distribution ships with. Fear not, however: If you so desire, making use of additional DEs/WMs is usually just a matter of finding it in the repository and installing it. You can have as many as you want installed, switching between them whenever you feel like. That's what I do.

Here are a few examples to give you an idea of what to expect. I've organized them into three categories: Fancy (modern), Traditional and Other. For simplicity's sake (and for the sake of not hitting the character limit for this post), I'm going to skip over quite a lot. I guess you could say these are the 'big ones'.

Warning: H-scroll breakage.

Fancy (modern):





Gnome Shell (Gnome 3)
Gnome Shell

Gnome Shell is still stirring up a lot of controversy in the world of Linux, though the hate seems to have died down somewhat. It eschews many desktop traditions that we've all gotten used to and replaced them with a slick, smartphone-esque task-oriented interface. I was a hater at first, but after having given it a try for a while, I find that it's actually quite enjoyable to use. It's slick, polished, and quite stable in my experience. It will require GPU acceleration however, so ancient hardware need not apply.




KDE
KDE Desktop Environment

KDE is in its fourth incarnation, and while its initial release wasn't met with a lot of praise (it was quite buggy), it is at the moment a great example of a Desktop Environment that's both traditional and modern in, if nothing else, at least the way it looks. Those comfortable with the Windows way of doing things will feel most at home with KDE, and it's not a bad place to be even if you were never a big fan of Microsoft's OS.




Unity (Ubuntu)
Unity Desktop Environment

I almost didn't want to include this since it basically only exists on Ubuntu, and has garnered a similar reaction to Gnome Shell's. However, being the now signature interface of one of the most popular Linux distros means I'm somewhat obligated to include it. Truthfully, it's not a bad Desktop Environment in my opinion, it's just not quite what a lot of Linux oldbies want. If you like the idea of a Mac OS-ish interface but with a sideways Windows 7 taskbar that moves, Unity's your DE.




Traditional:





XFCE
XFCE Desktop Environment

Ever since Gnome 3 came out, XFCE has been getting more and more popular. Those turned off by the newer, tablet-esque interfaces offered by Ubuntu and the Gnome folks have found refuge in XFCE's traditional design and function. It's got a taskbar, a kicker ('start menu'), a little icon tray, the works. It's also more easily configurable than Gnome Shell and Unity, while requiring less in the way of resources than KDE. All of this while at the same time being quite stable and suddenly, you've got a solid, perfectly functional Desktop Environment.




Gnome 2.32
Gnome 2 Desktop Environment

One nice thing about Linux is that if you don't want to upgrade, you never really need to. You can keep most of your stuff up to date but just keep using the same old DE if that's what floats your boat, and a fair number of people feel that way about continuing to use Gnome 2.32 despite the Gnome project having dropped support of it in favor of Gnome 3. Gnome 2.32 is similar to XFCE, perhaps a bit slicker in some ways but not by too much. It's also no longer being actively developed, which is why so many have jumped ship. Regardless, many distros still ship with this Desktop Environment, as it's still quite serviceable.




LXDE
LXDE Desktop Environment

I'm not a fan (I just don't like the way it 'feels'), but don't let that stop you from trying it out. This is even easier on system requirements than XFCE, and as you can see from the screenshot, it should feel very familiar to people who've used Windows XP.




Other:





Openbox
Openbox Window Manager

Openbox is a very minimalist, highly-customizable Window Manager. It's very easy on system requirements (for obvious reasons), and a favorite of people who like to nerd out with their Desktops and customize the hell out of things. Unfortunately for newcomers, this is not a beginner's Desktop as it basically forces you to do all of your customization through text editing. There are ways around that (for instance, installing Crunchbang), but this is still something that should be avoided if you're interested in something that will 'just work' all of the time.




Enlightenment (E17)
Enlightenment Window Manager

Enlightenment is a weird mixture of somewhat traditional desktop design and... other stuff. It's surprisingly slick and manages to pull off its effects without the aid of powerful graphics hardware, which is impressive all by itself. It's also incredibly lightweight, running on the same class of machine that feels comfortable with the likes of Openbox just as well as on a modern desktop computer. It's a bit esoteric but worth trying out. (If you want an Ubuntu-based distro that ships with E17, download Bodhi Linux)




Awesome WM
Awesome Window Manager

Alright, this isn't really a huge name in DEs/WMs, but it's a good example of its class so I'm tossing it in here. It's a dynamic Window Manager, meaning that it does tiling and stacking, though it's meant for tiling. What that means is that instead of moving windows around, they just resize themselves all over the place and you see them all at once. Sort of. It's hard to explain, but like Openbox, it's highly customizable. If anything, this is even more difficult to get used to – at least it was for me, since I grew up on Windows and the idea of tiling WMs is something I have difficulty with. I've found that it's pretty good when I need to get 'real work' done, however. Bonus: This is the least resource-intensive DE/WM on this list.





Software




What's a repository?



Probably the easiest way to think of a Linux repo is to compare it to an app store, except just about everything in it is free, open-source software. They make installing software ridiculously easy. Almost all of the software listed below can be found in your distro's repository.

To access your distribution's repo(s), assuming your distro has one, you'll be interacting with your distribution's package manager. You can do this from the command line or through a GUI interface. Ubuntu, for example, has at least six ways to use the system's package manager. I'll describe three of the most popular here:

From the command-line, type 'sudo apt-get install PACKAGE', where PACKAGE is the name of the application that you want to install. If you wanted to install Firefox, you'd type 'sudo apt-get install firefox'.

The other two popular methods are the Ubuntu Software Center and the Synaptic Package Manager. The former is Ubuntu's polished, simplified package manager. The latter is a more advanced package manager that's old as dirt but still, in my opinion, the best GUI package manager on Linux.

GUI Package Managers:




Ubuntu Software Center


Synaptic Package Manager


Alright, cool. So what can I run on Linux?



What can't you run!? Whooooaa! No, but really, here are some popular programs.

GUI



Browsers: Firefox, Chromium, Opera (not open-source), xxxterm (download), Epiphany, Konqueror, Midori, Dillo
Email: Thunderbird, Evolution, Claws-mail
Twitter: Pino, Choqok
Chat stuff: Pidgin, Empathy, Emesene, XChat, Konversation
FTP: FileZilla, gFTP
BitTorrent: Transmission, Deluge
RSS / Podcast: Liferea, gpodder

Image viewing: Eog (Eye of Gnome), Viewnior, Gwenview, Gthumb, Display
Image organizing: Shotwell, F-Spot, Digikam, Solang
Image manipulation: The GIMP (raster images), Inkscape (vector images), Phatch, Darktable, Converseen

Video playback: VLC, mplayer, Totem, Dragon Player, Xine
Video editing: Kdenlive, Openshot, VLMC, Cinelerra, Pitivi, Avidemux (sorta), Kino (sorta). Coming soon: Novacut, Lightworks
Video ripping/encoding/decoding: Handbrake, dvd::rip, ogmrip, acidrip, VLC

Audio playback: VLC, Rhythmbox, Banshee, Clementine, Amarok, GMPC, Exaile, Deadbeef, Audacious, Quod Libet
Audio editing/production: Audacity, Sweep, Ardour, QTractor, LMMS, Rosegarden
Audio ripping/encoding/decoding: Sound Juicer, ripperX, grip, ruby ripper, brasero, k3b, Sound Converter

Text editing: Gvim, Emacs, Gedit, Geany, Kate, Leafpad
Office: LibreOffice, OpenOffice, Abiword, KOffice, Scribus, Evince, Okular, XPdf, Calibre (I guess?)

File Managers: Thunar, Nautilus, Dolphin, Konqueror, pcmanfm, xfe, gnome-commander
Terminal emulators: Terminator, gnome-terminal, LXTerminal, xterm, urxvt, terminal (xfce4)

Misc: Dia (flowcharts and diagrams), Gummi (editing LaTeX files), MySQL gui, Gnome Do, Kupfer, Synapse, Wine (run some Windows apps)

CLI



Browsers: links, links2, elinks, lynx, ...gopher?
Email: Alpine, Mutt
Twitter: bti, ttytter
Chat stuff: weechat, bitlbee, naim
FTP: ftp, sftp
BitTorrent: bittorrent, rtorrent, transmission-cli
RSS / Podcast: newsbeuter, castget, snownews

Image anything: ImageMagick.

Video playback: Uhhh... mplayer using '-vo aa' or '-vo caca'. Yeah.
Video manipulation: You can use mencoder/mplayer or ffmpeg if you want, but it's hard.
Video ripping/encoding/decoding: Handbrake-cli, transcode, ffmpeg, mencoder

Audio playback: mplayer, play, mpd (mpc, ncmpc)
Audio ripping/encoding/decoding: cdparanoia, cdrkit, abcde, mencoder, ffmpeg

Text editing: Vim (or Vi), Emacs, Nano, Pico, Ed (haha)
Office: N/A, really. You can use edit documents in Docbook, epub or LaTeX source code using a text editor, though.

File managers: Just use the command line like a man. Alternately, MC is okay.

Misc: SSH, GNU Screen

Compiling Software:



One nice thing about Linux (and BSD for that matter) is the ease of compiling your own software from source code. I won't get into it too much here, but if you see a program that comes in a '.tar.gz' file, it could very well be source code. Check the README, or if it doesn't have one, remember the three steps that are usually involved:

./configure
make
make install (make sure to 'sudo' or 'su' first)


What about installers, like in Windows?



This is one area in which Linux can be more confusing than its counterparts. Generally speaking, 'installers' come in two forms: The types that are built to work with your distro's package manager, and 'other'. The benefit to the former is that your package manager will take care of the messy details when installing the program, such as dependencies. The benefit to the latter is that 'untethered' installers are more distro independent.

Package Manager Executables: .deb (Debian, Ubuntu, Mint), .rpm (Red Hat, Fedora, openSUSE), others that I can't remember

Standalone installers: Anything that's executable. Typical extensions include .bin, .run, and .sh. Often, binary programs will just come in a tarball (anything with .tar in the name, comparable to .zip files) and forgo installers altogether.


That's all well and good, but what about games?



Unfortunately, Linux doesn't do games the same way Windows does. Developers go where the money is, which is Windows at present. If you're coming from a Mac, then you'll probably cope a little better since you were already getting shafted.

That's not to say that there are no games in Linux, however. In addition to free games made by hobbyists, there's been a growing number of commercial titles available for Linux thanks largely to the indie scene getting more popular.

Desura: Desura is a cross-platform steam-like client that's focused primarily on indie games. It's got a decent amount of Linux content on it, so it's definitely worth looking at. Oh, and quite recently, the good folks at Desura have released an open-source version of their client dubbed Desurium.

The Linux Game Tome: The Linux Game Tome is a site dedicated to listing damn near every Linux game that exists. Plenty of good stuff there, but also, plenty of crap.

Free games:



Cave Story - Pretty good metroidvania, quite popular
Battle for Wesnoth - Strategy game
UFO: Alien Invasion - XCOM knockoff
OpenArena - FPS (Quake 3: Arena knockoff)
Alien Arena - FPS with aliens
Sauerbraten - FPS based on the... Quake 2 engine? I can't remember. Cool music.
Tremulous - Decent FPS
Warsow - Fast-paced, cel-shaded FPS
Chromium B.S.U. - Decent vertical shmup
Frets on Fire - Guitar Hero clone
Lincity-NG - Simcity clone
OpenTTD - Open Transport Tycoon Deluxe
Frozen Bubble - Puzzle Bobble clone
Neverball / Neverputt - Ball balancing game, mini-golf game
Freeciv - Civilization clone
Wormux - Worms clone
Dungeon Crawl Stone Soup - A newer, often-updated roguelike. Quite good.
Nethack - The older, almost definitive roguelike.
Dwarf Fortress - A semi-rogulike, somewhat-too-deep text-based dwarf... sim... thing. I'm terrified of this game.
Ascii Sector - A Privateer knockoff, except with Ascii graphics. Pretty good, actually.

Commercial games:



Penny Arcade Adventures 1 & 2 - Action adventure games with some casual RPG elements. Pretty good, but difficult to get working on modern distros.
Neverwinter Nights - Older, but a classic. (Linux install instructions)
Unreal Tournament 2004 - Also oldish, but it's still a pretty good arena shooter. (Linux install instructions)
Quake Wars - Quake's answer to Battlefield, or so I hear.
Quake IV - Well, it's better than Doom 3
Minecraft - Prepare to not leave your house for a week
Cobalt - Not yet released, but it's made by Mojang and will be out soon enough. Looks cool.
Amnesia: The Dark Descent - Frictional Games' newer survival horror game
Eschalon, Book I - An old-school indie RPG
Eschalon, Book II - Another old-school indie RPG, sequel to Eschalon Book I
Trine 2 - Not out yet for Linux, but soon.

Humble Indie Bundle games (all commercial):



World of Goo - Goo-based physics puzzles
Aquaria - Underwater metroidvania
Gish - Another physics puzzler, and this time you're a ball of tar or trash or something.
Penumbra: Overture - Frictional Games' older Lovecraftian survival horror game
Lugaru HD - You're a rabbit who beats the shit out of other rabbits. Has a pretty compelling combat engine.
Samorost 2 - A very pretty point-and-click adventure/puzzle game.
Braid - A time-manipulation puzzle-platformer. Do I need to explain Braid to you?
Cortex Command - A 2d side-scrolling blow-the-shit-out-of-everything game with jetpacks
Machinarium - Beautiful 2d adventure/puzzle point-n'-click game, made by the same people who brought us Samorost
Osmos - Atmospheric amoeba / planet / whatever game. Pretty good.
Revenge of the Titans - A Tower Defense game with nice graphics and catchy music.
Trine - A puzzle platformer with good graphics, some voice acting and a neat gimmick.
Shadowgrounds - A 'walk around and kill aliens' game. Not bad.
Shadowgrounds Survivor - Sequel to Shadowgrounds, basically the same deal
Crayon Physics Deluxe - A puzzle game where you draw stuff to solve puzzles.
Cogs - A puzzle game where you manipulate pipes and gears and stuff.
VVVVVV - An awesome C64-inspired platformer where you flip gravity instead of jumping.
Hammerfight - A 2d physics-based fighting game with flying machines
And Yet It Moves - A puzzle-platformer where you rotate the entire world instead of jumping.
Steel Storm - A 'drive around and shoot things' game, also pretty damn good for what it is.
Atom Zombie Smasher - A strategy game with ZOOOOMBIIIEEEESSSS!!!!
Frozen Synapse - A strategy game somewhat similar to Jagged Alliance or Fallout: Tactics, except more computery
TRAUMA - A pretentious but good puzzle/adventure point-n'-clicker.
SpaceChem - Uh... a puzzle game with elements?
Voxatron - A voxel-based shooter/platformer with a built-in editor and community levels.
Blocks That Matter - A puzzle/platformer that's a mix of tetris and platforming, with a little Minecraft thrown in (though almost none)
Darwinia - A strategy game where you make little virtual dudes kill little virtual dragons (more or less). It's pretty good.
Uplink - A game where you pretend to be a hacker like in the movies. You're already downloading it, aren't you.
Multiwinia - Darwinia, except multiplayer. I assume.
DEFCON - I think this is a 'kill the whole world game', but I haven't got around to actually playing it yet.
Dungeons of Dredmor - A modern roguelike with a sense of humor, very good.
Jamestown - An awesome 16-bit style shmup.
Bit.Trip Runner - A rhythm-based (kind of) platformer.
Super Meat Boy - A pretty good platformer famous for its difficulty.
Shank - I don't know, but there's a guy with a chainsaw in it
NightSky HD - You're a ball that rolls around. It's better than it sounds.
Cave Story + - It's like Cave Story, but better.
Gratuitous Space Battles - I think this is a strategy game, but haven't played it yet. IN SPAAAAAAACE




You know, I'm not quite sold on Linux. What other Operating Systems you got?



While I myself am most partial to Linux, I realize that perhaps not everyone is. And hey, that's fine. It's a big wide world where we can all use whatever the hell we want to... at least, for now. So without further ado, other operating systems:


Unix




FreeBSD Unix
FreeBSD: A popular BSD variant.



PCBSD Unix
PC-BSD: A 'normal people' desktop OS based off of FreeBSD.



Dragonfly BSD Unix
Dragonfly BSD: A fork of FreeBSD 4.8, created for 'performance reasons'



OpenBSD Unix
OpenBSD: Another popular and incredibly secure Unix.



Oracle Solaris Unix
Oracle Solaris (formerly Opensolaris): Used to be more popular, but now Oracle owns it. As far as I know, it's still free of cost but consists of both open and closed source components.




Other




Haiku OS
Haiku OS: An OS loosely based on BeOS. I've tried it, and it's not bad. But don't take my word for it... let this guy sell it to you.



ReactOS
ReactOS: An OS designed to be binary-compatible with Windows in every way. Essentially, a drop-in replacement for Windows.



Icaros Desktop
Icaros Desktop: An AROS operating system... sort of a modern Amiga OS.



Menuet OS
Menuet OS: A neat hobby OS written entirely in assembly language. It's impressive how much you can cram into 37mb when you're writing in assembly.



Kolibri OS
KolibriOS: Another Assembly-language-built OS. In fact, a fork of Menuet OS.




Reference Material



Handy command and shortcuts:



These are only useful to you if you're already knee-deep in Linux. If you're new to it all, skip right on by.


Keep in mind that these are only the most basic forms of each command, and that they all have dozens of switches and caveats that enable you to do awesome things with them.

FILE MANIPULATION:

cd : change current directory to
ls : list directory contents
ls -a : list directory contents including hidden files
ls -l : list directory contents in detailed list format
mkdir : make subdirectory (can also specify full directory e.g. mkdir /home/thesquid/giantAngryBear)
rmdir : deletes empty subdirectory
cp : copy to
cp -r : copy and everything inside it to location
mv : moves to
rm : removes (deletes)
rm -r : removes (deletes) and everything inside it
chown : change user ownership of to
chgrp : change group ownership of to
chmod XXX : change permissions of to octal number XXX (probably best to 'man' this one)
touch : change file timestamp (and will create an empty file if it doesn't exist)

HANDY TOOLS:

man : gives the manual page on any command including all of these ones (lol man mount)
man -k : gives a list of all man pages with in the title or short description
less : an extremely simple viewer of plaintext files, has regex searching and up/down movement
more : an even simpler viewer than less (now you get the less is more than more gag in bash)
view : a read-only version of vim, so has all the vim commands, but you can't edit the file
vim / emacs / pico / vi / nano : complex text editors that support enormously complicated yet awesome shortcuts, syntax colouring, the whole shebang

SYSTEM STUFF: (you will probably need to be root to take advantage of these)

top : display Linux tasks (equiv. to Task Manager) htop is a widely preferred and more interactive alternative
ifconfig : for configuring network interfaces (setting ip address, activating and deactivating network cards)
iwconfig : for configuring wireless network interfaces
iwlist : getting more info from a wireless network interface (especially seeing wireless networks in range)
route : show / manipulate the IP routing table
dhclient : DHCP client
lshw : list hardware
lspci : list all PCI devices
lsmod : list modules in Linux kernel
modprobe : add / remove from Linux kernel
mount : mount a file system
umount : unmount a file system

USEFUL THINGOES:

wpa_supplicant : for connecting to WPA networks. Requires several reads of the man page, editing of a configuration file by looking at several example files for clarity, and possibly carving arcane symbols into your face.
tar : for making tarballs of a directory / several files
gzip : for compressing said tarball using *.gz
gunzip : for uncompressing a gzipped file
bzip2 : for compressing said tarball using *.bz2
bunzip : for uncompressing a bzipped file
tar xvfz : for uncompressing a *.tar.gz file
tar xvjf : uncormpressing a *tar.bz2 file
date : printing the date and time
ping : to ping
pwd : print out current directory name
killall : kills all processes of name
ps -aux : prints a snapshot of all current running processes
kill : kills process of job id . can be found with ps -aux or top
which : locates a command



Useful Techniques



Once again, newbs should just ignore this section.


Searching for a file based on file name:

e.g. I want to find all the files in the current directory and any subdirectories that start with Photo and end in jpg, such as Photo322.jpg.

Command: find . -iname "Photo*.jpg"

English translation: find, starting in the the current directory (the "." argument), any files that match the name "Photo*.jpg" in a case insensitive fashion (the "-iname") argument.

Notes: It is very important if you are passing wildcards to find that you escape the wildcards by using \ or ". If you do not, then the shell will expand the wildcards on the command line and your command will then be the equivalent of:
find . -iname

Doing the same operation on a bunch of files

e.g. I want to gzip up each text file in the current directory into their own separate archive

Command: for eachFile in *.txt; do gzip "$eachFile"; done

English translation: Take the list of files that are returned by *.txt. Go through each of those filenames in the list one by and one, and each time
1.) Assign the current filename to the variable called "eachFile". This can be accessed by $eachFile.
2.) Execute the command between "do" and "done". In this example, it is gzip "$eachFile".

Notes: "$eachFile" is enclosed in quotation marks so that any filenames with spaces get passed correctly to gzip. The semi-colons tell the shell that a command is done and to treat anything after the semi-colon as a new command. If you wanted to, you could have the loop do more than one command on a single line, like so:
for eachFile in *.txt; do gzip "$eachFile"; mv "$eachFile".gz .. ; done

Any more complexity, and you're probably at the stage where you should be writing a script instead of trying to fit it into one line.

* Displaying the contents of files/simple manipulation of standard input

head [filename]
tail [filename]
cat [filename]

Head will show, by default, the first 10 lines of a file, or if no filename is provided, then standard input.
Tail will show, by default, the last 10 lines of a file, or if no filename is provided, then standard input. Useful for looking at log files.
cat will dump the entire contents of a file to standard output (typically the screen, but often not). If no filename is provided, then it will basically echo standard input to standard output.

This is useful in creating simple files. e.g. I want to create a file called "hello.txt" containing the line "This is a test"

cat > hello.txt
This is a test
Ctrl-D

(Ctrl-D signals end-of-file).

To *append* something to an existing file:

cat >> hello.txt
This will be the second line of the file
Ctrl-D

Note the >>! If you just use >, you will overwrite the file, instead of appending.

* Displaying something to screen

echo Hello world!

The echo command will echo whatever arguments is passed to it back to the standard output. Typically used in scripts to show status reports.

Chaining it all together!

Let's list the first ten lines of every text file in the current directory and pretty it up with a header.

for eachFile in *.txt; do echo "*** Ten lines of $eachFile ***"; head "$eachFile"; done

Oh crud, it went by too fast to see it! Hang on - we know that we can use 'less' to view text files

for eachFile in *.txt; do echo "*** Ten lines of $eachFile ***"; head "$eachFile"; done | less

Tada! (push 'q' to quit from less, by the way).

Replace with appropriate options for those times you want to sort mp3 files, or photos, or whatever.




Other random Linux(ish) resources:



Videos (or Linux shows):

InfinitelyGalactic
Linux4UnMe
LinuxSpatry
metalx1000
Nixie Does Linux
TWIL (This Week in Linux)
CLIMagic (he also has a twitter feed)
Linux Action Show (Jupiter Broadcasting)
Welcome to Vim (Derek Wyatt's video series)

Podcasts: (here's another list with even more shows)

GNU World Order
The Linux Link Tech Show
Hacker Public Radio
Source Trunk
Going Linux
FLOSS Weekly
Kernel Panic
Linux Reality


Interesting or useful texts:

The Cathedral and the Bazaar
In the Beginning was the Command Line
The Coming War on General Purpose Computation (also, video)
The Art of Unix Programming
A Brief History of Hackerdom
The Jargon File
Unix for Beginning Mages

Other links:


ESR's page
Linux.com
GNU.org
FSF.org
Distrowatch.com



Anything else?

Nope! Just get your hands dirty and you'll find that you have the hang of this in no time. If you have any questions, you can either ask in this thread or consult these other resources:

Google / DuckDuckGo
LinuxQuestions.org
Ubuntu Forums
Arch Wiki




... also, this:



The Brads linux comic