Very positively surprised by how seamless the switch from Windows was
-
Today, I switched the last of my Windows machines to Linux: my gaming PC. I've been using Linux on servers for many years but was a bit apprehensive for gaming.
Turns out it just... works. Just installed steam and turned proton on, have zero performance or other issues. I'm using Ubuntu 25.04 for the 6.14 kernels NT emulation performance tweaks. Aside from there not being a catalyst driver for it and so I can't undervolt my card everything is great.
I switched to Mint in January and it's been great. Most games just work straight out of Steam. I have Skyrim modded to an insane level and it can be a little finicky but works.
What really cemented it for me was when I wanted to run an old 32-bit weather software package. I decided to try adding it to Steam, and it...just worked. Like native.
-
Who on earth still burns disks (other than pizzas) in 2025?
They're still used by businesses a lot.
-
Fair enough, I misunderstood your argument. I appreciate your demonstration. Any chance you'd be willing to share your script? I have a few ideas on how to play with it.
Edit: I forgot, I actually had a HDD fail on me, luckily I was able to recover some of the data. Many .flac files on it were completely corrupted and unreadable past a certain point. The .aiff files I had were perfectly readable. I suspect they were at least partially corrupted. Luckily, I was able to re download all of the affected files. So, no data was actually lost.
wrote on last edited by [email protected]import sys import random inFilePath = sys.argv[1] outFilePath = sys.argv[2] damagePercentage = float(sys.argv[3]) with open(inFilePath, "rb") as f: d = f.read() damageTotalCount = int(len(d) * damagePercentage / 100) print("Damaging "+str(damageTotalCount)+" bytes.") dList = [ x.to_bytes(1) for x in d ] for i in range(damageTotalCount): pos = random.randint(2000,len(d)-2) dList[pos] = random.randint(0,255).to_bytes(1) if (i%1000 == 0): print(str(i)+"/"+str(damageTotalCount)) d = b"".join(dList) with open(outFilePath, "wb") as f: f.write(d)
If you run it, the first argument is the input file, the second one is the output file and the third is the percentage of corrupted bytes to inject.
I did spare the first 2000 bytes in the file to get clear of the file header (corruption on a BMP file header can still cause the whole image to be illegible, and this demonstration was about uncompressed vs compressed data, not about resilience of file headers).
I also just noticed when pasting the script that I don't check for double-corrupting the same bytes. At lower damage rates that's not an issue, but for the 95% example, it's actually 61.3% actual corruption.
-
import sys import random inFilePath = sys.argv[1] outFilePath = sys.argv[2] damagePercentage = float(sys.argv[3]) with open(inFilePath, "rb") as f: d = f.read() damageTotalCount = int(len(d) * damagePercentage / 100) print("Damaging "+str(damageTotalCount)+" bytes.") dList = [ x.to_bytes(1) for x in d ] for i in range(damageTotalCount): pos = random.randint(2000,len(d)-2) dList[pos] = random.randint(0,255).to_bytes(1) if (i%1000 == 0): print(str(i)+"/"+str(damageTotalCount)) d = b"".join(dList) with open(outFilePath, "wb") as f: f.write(d)
If you run it, the first argument is the input file, the second one is the output file and the third is the percentage of corrupted bytes to inject.
I did spare the first 2000 bytes in the file to get clear of the file header (corruption on a BMP file header can still cause the whole image to be illegible, and this demonstration was about uncompressed vs compressed data, not about resilience of file headers).
I also just noticed when pasting the script that I don't check for double-corrupting the same bytes. At lower damage rates that's not an issue, but for the 95% example, it's actually 61.3% actual corruption.
Thanks, I'll make good use of it. I gotta to learn to write scripts like this.
-
Yeah if you have your games on Steam it seems to (mostly) just work. Other services get a bit more janky. Xbox App is, sadly, impossible as far as I can tell.
I mean, Xbox is MS. I wouldn't expect them to help dig their own grave.
-
Today, I switched the last of my Windows machines to Linux: my gaming PC. I've been using Linux on servers for many years but was a bit apprehensive for gaming.
Turns out it just... works. Just installed steam and turned proton on, have zero performance or other issues. I'm using Ubuntu 25.04 for the 6.14 kernels NT emulation performance tweaks. Aside from there not being a catalyst driver for it and so I can't undervolt my card everything is great.
I remember thinking this same thing until my first fstab issue lol. Joking aside the switch itself is relatively painless, you do sort of have to switch your mind to the Linux way of thinking though. And the Linux way of thinking has to include "something is going to break eventually and I'm going to have to figure out how to fix it"
-
... I can't undervolt my card...
People usually use/recommend LACT for undervolting/overlocking on Linux
LACT my beloved
-
Can you provide machine specs? Maybe you're using an Nvidia card without drivers or something? Or maybe it's a laptop and it's using the wrong GPU?
Again, I agree with the first responder, make your own post so it gets more visibility and provide as many details as you can.
So oddly enough when I went to get the specs on the laptop I had it on and installed it just for funsies while I was at it and it seems to be working better now... At least in the 10 minutes or so I played around with it. Not sure what the problem was before, maybe some update was made since then or something. Gonna mess with it more this weekend.
-
I mean, Xbox is MS. I wouldn't expect them to help dig their own grave.
Yeah, I'm not surprised by it, but it's still a bummer/roadblock.
-
Thanks, I'll make good use of it. I gotta to learn to write scripts like this.
It does take practice, but once you know how to do it it becomes easy. That was like 5 minutes of work.