It's been around 2.5 years back since I switched to Linux, I don't know why I did it or when I did it. It almost feels like I've been doing it for as long as I can remember. It's almost as if my mind is trying to fool me, subtly updating my memories such that things that I cognitively know happened on windows feel like they happened on linux. Even if, wine didn't exist. Even if I had to give up StarCraft, Hearthstone and Photoshop, I wouldn't go back.
Thankfully though, Wine does exist. So let's talk about gaming on Linux and how it goes.
Let's be honest of the bat. It isn't perfect, it's good, but not perfect. Wine claims to for the most part implement Windows XP which in my experience has been true. I am running Hearthstone, StarCraft and Photoshop on Linux essentially with no troubles.
Wine
There are some misconceptions about Wine and Linux though. The first and foremost that Wine is an Emulator. Wine stands for "Wine is NOT an emulator", and it isn't. It's an implementation of the Windows API translating this to linux system calls. Just like windows itself is an implementation of the windows api translating these api calls to NT Kernel system calls. There is no theoretical reason why Wine should be slower than Windows, and it isn't in the general case. If anyone is telling you that they haven't used it. Sometimes it's slower, sometimes it's faster because it's a different implementation. But there is no extra layer of translation added, it's simply an open implementation of the same layer that windows provided. But since its primary purpose is to run applications, this layer comes withour a start menu, wallpaper, clock, and all that stuff. It does however come with minesweeper.
Linux itself
The other misconception is that Linux is "difficult" or not user friendly. It can be if you want it not to be. Linux is very varied and allows you to mix and match your OS together much like you would mix and match the hardware from a homebuilt computer together. You can come with a nice prefab like Ubuntu which looks like this:
"I call it the orange, because it's like an apple, except orange, get it?"
However, mine looks more like this:
"I don't know what to call this."
This is not a prefab. This is something I threw together more or less myself. The core is actually Linuxmint 15 Petra. Anyone who knows Linuxmint 15 Petra knows that this doesn't even look close to what Linuxmint 15 Petra looks like when you open it up. There are no icons on my desktop, because I think they're ugly. I could put them there if I want though, there is no start menu because I don't need it. If I want to run a program I'll just type its name in the text bar below. But I degress.
So How did I install and get Heartthstone to run
The reason I picked Hearthstone as an exmaple and not STarCraft is because I had no problems whatsoever to get STarCraft to run, I had some small problem with HS. For STarCraft, everything went the same except for the small problem
This notebook is I think about 4 months old. It has a tech called optimus technology by nvidia. This means that it has two graphics cards. A shitty one which is normally used, and a more power hungry but better one which it should automaticlaly switch to seemlessly for more demanding applications. Well, this didn't work out of the box. I got an error, I googled the error. It told me how to fix it, I fixed it by typing
apt-get install bumblebee nvidia-drivers
or something like that, not sure what it was any more. The point is, that fixed it. I installed a package, the package manager handled the downloading of the package data, the installation and the automatic installation of whatever dependency those packages needed. I didn't have to click through any licences, select a folder where to install it, I just had to do that. If I wanted to I could have opened a graphical tool and selected those two packages from a list. I think this is more convenient, but whatever floats your boat.
Right, so now that my graphics acceleration driver problem was solved. I had to install wine. Well, this was easy enough.
apt-get install wine
. Again, the package manager automated the installation of dependencies and shared libraries, I didn't have to close any running applications nor restart my computer. It took about 20 seconds to complete the download and install it all.
So far so good, now install the Battle.net client. This was the most difficult part, both due to Windows and some problems with Wine. I had to leave my trusty Unix-like environment of doing things. Browse to the battle.net website, download the executable. Throw it into my downloads folder, start the virtual wine file explorer and double click the executable. Essentially, I would be doing up to this point what you did on windows. If Battle.net was a native Debian package. I would have installed it with
apt-get install battle.net
and the package manager would verfiy that my system has the specs and if possible download whatever extra drivers and libraries I need to make it have those specs.
But hey, battle.net was installed, great. So, I then started it. Now, wine is kind enough to add its windows applications to your normal application list. So, if you actually use said application list which I don't. You a battle.net icon would appear on your desktop or whatever your Linux uses to start such applications would happen. I don't use the application list and start every program with the command line, this is cumbersome for wine programs because that means I would have to start it every time with
. This was essentially what motivated me to write my own implementation of the Freedesktop application standart, so I wrote a simple program and now I just type
run battle.net
, the
run
program follows this standard and laucnhes whatever is in my application list. I could have again just configured my OS to put all applications on my desktop or in some menu, I choose not to because I think it gets in the way and looks ugly.
Okay, fine, I got Battle.net installed, I can open it and navigate to the Hearthstone tab and press install. Which went fine. Battle.net downloaded it and installed it while I sat back. But when I tried to run it, it crashed immediately. So I googled "Hearthstone wine crash on startup". Well, the first hit on google or something told me to do this:
- start winecfg - Go to libraries - add the dbghelp library - at overrides, select disable for said library
So I did. Then I tried again, and Hearthstone worked flawlessly and does so to this day.
And here's a picture of my using photoshop to blur out the names of me and my opponent while playing a game of Hearthstone on Linux.
"Two titlebars, two close buttons, one of the weirder artefacts of running wine I guess. Both work as expected."
So from my experience, no, Linux gaming isn't that difficult. And in return you get an OS that installs software super easily, doesn't need a virus scanner, whose file system requires no defragmentatio, no NSA backdoors, you can completely customize your OS and in my opinion it's just far more convenient in how it works.
I've been wondering about this for a while. As more and more people switch from windows to linux, which AFAIK is a process that has been speeding up recently, what guarantees that you don't need a virus scanner?
On July 19 2014 05:33 Perfi wrote: I've been wondering about this for a while. As more and more people switch from windows to linux, which AFAIK is a process that has been speeding up recently, what guarantees that you don't need a virus scanner?
Ah yes, this is also something which is very much a misconception. I'll probably update the OP with information like this.
Many people think that viruses don't exist for Linux because of the relative inpopularity of the software. This isn't true. In fact, Mac also has no viruses and since no one runs a virus scanner on linux, and they don't even exist. You'd think someone would write one. But the truth of the matter is that a virus has to exploit a bug in the OS to work. That an OS can have a virus is a bug, not a feature. A virus per definition is a program that in some way does things it's not supposed to be able to do, gain rights it shouldn't have. In the olden days of MSDOS this was absolutely terrible, a floppy could be injected, you inserted into your drive, it copied _itself_ onto your computer without you giving it permission to do so or manually copying it, and when another disk went into that computer it copied itself back to the other disk. This is the work of some creative coding which in some way managed to allow a program to run itself without a user telling it to be ran and doing things it doesn't have permission to do. This shouldn't happen, it's exploiting a bug.
The simple reason that viruses are not a thread on any operating system but Windows is quite simple, these bugs don't exist. And if they exist and they are found, they are immediately patched. Linux is open source, the code that makes up the operating system is public, if such bugs exist, they are much, much easier to find than on windows, you don't have to reverse engineer to find them. The code is public. But this also means that if they exist, people without malicious intend find them before the code even becomes a stable release and suggest a fix.
however.
The term "virus" has been some-what displaced recently. It's not as bad as it used to be on windows and for the most part these kinds of bugs are removed. What isn't a virus but simply a malicious program that is often called a virus doesn't do something it's not supposed to do. It's just a program that you install and you give permission to do what it wants and it'll fuck your system over. Linux does not protect you against these programs, no operating system does. If you give a program administrator/root access, it can do _anything_ it wants, it has all rights, it can read, modify and delete anything it wants on your system. So while viruses are an extreme scarcity, malware is not, but you have to actually give malware rights in order for it to work.
To install software, you generally have to give the installation process administrator/root access. But on Linux, this in practice is not a problem, as the post highlighted, you tend to install software with the package manager. This means that in general it comes from a trusted source and a lot of the basic tools that make spreadsheets, do office work etc on linux you'll be using are open source as well so if they contained malicious code, people would know. So if you install from the official package repositories of your OS, you won't get a virus, this is as unlikely a nvidia driver update containing a virus. But anyone can set up a repository and if you install something from an untrusted closed repository with no public source under root access, in theory it can fuck your entire system over. But in practice if that happens it becomes public knowledge pretty quickly that that rep is not to be trusted and the package manager itself will warn you when trying to add that repository because it's known as a source that's not to be trusted.
Edit: Recently, there was found a bug by the way which allowed someone in a specific circumstance to gain root access who wasn't supposed to have it via some hole in the X Window Server, I believe that defect is patched now.
On July 19 2014 06:08 ComaDose wrote: thanks for the guide! as someone who uses linux at work and windows at home i have been considering making the leap.
What's your job if I might ask?
It's not really a fully fledged guide as much as detailing my experiences. Showing that while there are some problems and obstacles, they can easily be fixed if you google. I guess that other people will maybe have some other problems which can also be fixed.
On July 19 2014 06:08 ComaDose wrote: thanks for the guide! as someone who uses linux at work and windows at home i have been considering making the leap.
What's your job if I might ask?
It's not really a fully fledged guide as much as detailing my experiences. Showing that while there are some problems and obstacles, they can easily be fixed if you google. I guess that other people will maybe have some other problems which can also be fixed.
Yeah an example of good google keywords is almost more useful then a guide haha. I am a software design engineer. My product runs on a linux server.
On July 19 2014 06:03 SiskosGoatee wrote: The simple reason that viruses are not a thread on any operating system but Windows is quite simple, these bugs don't exist. And if they exist and they are found, they are immediately patched. Linux is open source, the code that makes up the operating system is public, if such bugs exist, they are much, much easier to find than on windows, you don't have to reverse engineer to find them. The code is public. But this also means that if they exist, people without malicious intend find them before the code even becomes a stable release and suggest a fix.
That's just nonsense. There are bugs in Linux that are not publicly known, either because they have not been discovered or have not been made public. No system of that size is bug-free, open source or not. And even if bugs are found and patched quickly, not all users update on a daily basis, be it for good reason, lazyness or ignorance.
It's pretty amazing how well linux has been doing against malware, but claiming that it runs bug-free code is ridiculous.
On July 19 2014 06:03 SiskosGoatee wrote: The simple reason that viruses are not a thread on any operating system but Windows is quite simple, these bugs don't exist. And if they exist and they are found, they are immediately patched. Linux is open source, the code that makes up the operating system is public, if such bugs exist, they are much, much easier to find than on windows, you don't have to reverse engineer to find them. The code is public. But this also means that if they exist, people without malicious intend find them before the code even becomes a stable release and suggest a fix.
That's just nonsense. There are bugs in Linux that are not publicly known, either because they have not been discovered or have not been made public. No system of that size is bug-free, open source or not. And even if bugs are found and patched quickly, not all users update on a daily basis, be it for good reason, lazyness or ignorance.
There are bugs, just no known bugs at the moment which comprise a security risk, there are many known bugs. But none of whom allow a virus to grant itself permission as far as I know.
Oh Im thinking of installing linux on a couple older laptops for better performance, since they dont run too many windows apps, and my GF wont need to learn WINE stuff to run things for just internet use and netflix streaming.
I don't think ill make the leap on my home pc yet though, I run a lot of games on my pc and I would rather not have to worry about the small glitches and bugs I might need to fix when running them (if they have weird compat issues out of the box on wine which I know isn't always the case)
On July 19 2014 06:03 SiskosGoatee wrote: The simple reason that viruses are not a thread on any operating system but Windows is quite simple, these bugs don't exist. And if they exist and they are found, they are immediately patched. Linux is open source, the code that makes up the operating system is public, if such bugs exist, they are much, much easier to find than on windows, you don't have to reverse engineer to find them. The code is public. But this also means that if they exist, people without malicious intend find them before the code even becomes a stable release and suggest a fix.
That's just nonsense. There are bugs in Linux that are not publicly known, either because they have not been discovered or have not been made public. No system of that size is bug-free, open source or not. And even if bugs are found and patched quickly, not all users update on a daily basis, be it for good reason, lazyness or ignorance.
There are bugs, just no known bugs at the moment which comprise a security risk, there are many known bugs. But none of whom allow a virus to grant itself permission as far as I know.
Also, this is pretty wrong. I am sure there are ways to get permissions, the thing is malware embedded into websites, or malicious other such links that can exploit linux are just less likely to be found. Why would I try to create something for linux when its easier to target windows and its larger userbase?
I have seen some breakdowns of code that inject themselves to get permissions via other applications which do have access to your pc (through the program's security flaws - looking at you Adobe (insert name here)!).
But yeah, your chances of that with smart browsing are way way lower on Linux. That being said, chances of malware or viruses on windows with smart browsing is also pretty rare.
On July 19 2014 07:35 ZeromuS wrote: Oh Im thinking of installing linux on a couple older laptops for better performance, since they dont run too many windows apps, and my GF wont need to learn WINE stuff to run things for just internet use and netflix streaming.
I don't think ill make the leap on my home pc yet though, I run a lot of games on my pc and I would rather not have to worry about the small glitches and bugs I might need to fix when running them (if they have weird compat issues out of the box on wine which I know isn't always the case)
On July 19 2014 06:03 SiskosGoatee wrote: The simple reason that viruses are not a thread on any operating system but Windows is quite simple, these bugs don't exist. And if they exist and they are found, they are immediately patched. Linux is open source, the code that makes up the operating system is public, if such bugs exist, they are much, much easier to find than on windows, you don't have to reverse engineer to find them. The code is public. But this also means that if they exist, people without malicious intend find them before the code even becomes a stable release and suggest a fix.
That's just nonsense. There are bugs in Linux that are not publicly known, either because they have not been discovered or have not been made public. No system of that size is bug-free, open source or not. And even if bugs are found and patched quickly, not all users update on a daily basis, be it for good reason, lazyness or ignorance.
There are bugs, just no known bugs at the moment which comprise a security risk, there are many known bugs. But none of whom allow a virus to grant itself permission as far as I know.
Also, this is pretty wrong. I am sure there are ways to get permissions
Assume there are, then they are easily fixed because the source code is public, and they are also easily found because the source code is public. Maybe there are, but they aren't known except for the X server exploit which I believe was fixed.
the thing is malware embedded into websites, or malicious other such links that can exploit linux are just less likely to be found. Why would I try to create something for linux when its easier to target windows and its larger userbase?
Because linux users don't use firewalls and all that crap to shield themselves so you'd get a guaranteed hit if you had a way to circumvent the permission model?
I have seen some breakdowns of code that inject themselves to get permissions via other applications which do have access to your pc (through the program's security flaws - looking at you Adobe (insert name here)!).
And that's why you don't generally run programs as root. You should never run wine as root for this very reason, it's not needed. In the vast majority of cases you won't be running applications as root. You run the package manager as root to install the software and after that point you run the software itself as user.
But yeah, your chances of that with smart browsing are way way lower on Linux. That being said, chances of malware or viruses on windows with smart browsing is also pretty rare.
That's the difference between an actual virus which circumvents the permission model and does things it's not supposed to do and malware which you actually have to give permission, in the idea case just visiting a site could give you a virus via exploiting holes in your browser and then your operating system. But since I don't run my browser as root I don't really see that happening. And even if it could some-how sidestep my browser and plant itself on my computer, it would still need to find a way to run itself on my computer and then it would only have user rights, not root rights, so then it could fuck up my home dir I guess.
You're todo list made my morning. Good info for people but I've found that people into programming or expanding their horizons will use Linux but most people use Windows for familiarity and 'user friendliness' <-- in quotes for a reason.
On July 19 2014 09:50 sUgArMaNiAc wrote: You're todo list made my morning. Good info for people but I've found that people into programming or expanding their horizons will use Linux but most people use Windows for familiarity and 'user friendliness' <-- in quotes for a reason.
My nan is on Linux though, 79 years old, knows barely anything about computers, but she has a chromebook, only uses it for email and some news site browsing.
I've used (almost exclusively) Ubuntu for 3 years now. I've never really liked running games in Wine; I try to stick to native games if possible when I'm on Linux, but I just boot Windows to play Windows games (still have to have Windows for non-Wine-compatible stuff like iTunes :/). The only exception is BW, which I'm used to running in Wine because the public computers at my school all run (modified) Debian
The only reason I haven't made the jump, now that sc2 is permanently unplayable on my current laptop, is that there are a million versions of linux and have no idea about the differences or which version would be best. Do you have suggestions?
Anyway last time I used it I was able to stream on maxed out settings at 60 fps (streamed at 30 fps with ffmpeg). Don't have the stream vod but take my word for it.
Maybe il set it back up and stream some more. Unfortunately after I sorted it out I continued poking and prodding, broke it, got bored and forgot about it.
Example: http://www.twitch.tv/iksf/b/549027770 Some performance issues not fixed everything yet used to be better. Without stream its 50+ fps solid on maxed out. Mute the vod for the first 6 odd minutes the audio is garbage, thats just my own bad configuration on stream though, could fix if could be bothered recording again, for me audio was fine.
On July 19 2014 15:52 Meatex wrote: The only reason I haven't made the jump, now that sc2 is permanently unplayable on my current laptop, is that there are a million versions of linux and have no idea about the differences or which version would be best. Do you have suggestions?
I'd just get Linuxmint or Ubuntu or SUSE, they're userfriendly and have the least chance of breaking.
Arch and Gentoo are basically the bleeding edge feeding you with all the latest, but also the most unstable tech and fairly DIY but also have the highest chance of breaking in your face and rely on your extensive knowledge to fix whatever breaks. Saying you run Arch and Gentoo is massive e-penis size though.
Apart from that though, if you say pick mint, you can choose from Mint Gnome, Mint Cinnamon, Mint KDE and Mint Xfce. This is your so called desktop environment / window manager default configuration. If you google the screenshots you can see these all look quite differently. You can probably google the differences between them and judge which you like the most. My computer in this screenshot:
Started out as a Mint KDE. If you look screenshots up of mint KDE you'll notice it doesn't look anything like that any more so yeah, the modding capabilities are quite high. Basically, when you decide on distro the biggest issue is going to be the package manager you want to use. Ubuntu and Mint for a large part use the same packaging system except Ubuntu is known to be less trusty with your personals. SUSE uses a different packaging system and is slightly more aimed in general at making a work computer rather than a personal computer.
You could also try old and trusty Debian which is very stable and reasonably user friendly. Uses the same overall packaging system as Ubuntu and Mint but in its default configuration doesn't give you the latest packages unless they've become stable and can be a bit too conservative at times.
My advice overall is:
- First Google your hardware to see if it's well supported. There are some cases where some hardware isn't. - If you read against using binary blobs, don't buy into it and just use them. There is no benefit for the end user in not using them except some ideological protest against using closed source software. - If you get an error somewhere, stay calm and google the error message, chances are the first hit will provide a very easy and straightforward solution. The askubuntu and linuxmint help fora are great at having people that explain to the newblets how to solve them - don't update anything if it works. Only update if you do it for a reason because you know the new version will fix some bug you've been annoyed at or has a new feature you like.
On July 19 2014 15:52 Meatex wrote: The only reason I haven't made the jump, now that sc2 is permanently unplayable on my current laptop, is that there are a million versions of linux and have no idea about the differences or which version would be best. Do you have suggestions?
I don't know what you are talking about, the graph on the right gives an nice overview ;P
/Sarcasm off
With all the Linuxes, look at three things: The base - Eg. Debian/Slackware/RedHat (defines wich software is already prepackaged for you to install without having to manually compile), The package manager (How to install new Software) The GUI(KDE, Gnome, Xface, usually all available for all distributions - also the Filemanager might be interresting, as changing it later on comes with great pain), see if you find a Linux that combines your top choices from these.
Edit: A lot Linux variants have Live CD's, which allow you to test the OS if you have a DVD drive without installing the system, they are a lot slower than the installed versions, but are great to see if you like the software that comes with the OS.