Four days ago, I woke up, as I usually expect to after going to sleep and I turned on my really fucking awesome Archlinux gaming rig, hit the desktop and decide, hmmmm… I haven’t updated in a while(a week), let’s pacman -Syyuu and get up to speed. Well, I got up to speed and my favorite game, the best game of all time, Team Fortress 2
##FAILED TO LOAD! 🚒 🔥
In the imminent crisis-state that I had found myself in, I did what any filthy scout-main Archlinux user would do, I googled the problem and put the word arch in quotation marks.
The first five results yielded ancient bullshit useful to someone five years ago, probably. The next ten, redditors complaining about old tat. Then I did what any old wine veteran would do. I shut steam down and started it in the terminal so I could monitor its raging bitch-fit in real time.
Team Fortress 2 failed to load because of lib32-libtcmalloc.so. Arch had updated it to a future version not yet even coded, and steam wasn’t having it. The answer was on protondb all along! So, some fella says
The native version of tcmalloc introduced a bug on TF2 that it randomly crashes the game. You need to install lib32-gperftools (name of the Arch AUR package, other distros should have similar names) and add LD_PRELOAD=/usr/lib32/libtcmalloc.so %command% to your launch options to override the library.
et voila, I’m torturing 25/7 2fort.
Now, I know what you’re thinking, who in their right mind would suggest Archlinux for a beginner? See, that’s where I already caught you because this bug trickles all the way down to Garuda and Manjaro users too since they have the same libraries (and that fancy SteamOS that’s floating around).
So while I love Linux and software freedom, I find suffering Linux on someone might be more suited to a person that actually wants it, and not to work through it to get to what they actually wanted to do.
I wanted to play Team Fortress 2, and I was rather irate about the last thing on my steam account that shouldn’t work, not working all over me. This system has been a saint for six months, but when it’s a devil, boy, is it.
Anyway, KDE is better than gnome! Thanks for reading!
I haven’t updated in a while(a week), let’s pacman -Syyuu
lol
My favorite is when you google a problem, find a relevant forum thread where someone else seemingly has the exact same issue as you do and the only comment is something like “nm fixed.”
@BlinkerFluid My Arch automatically makes a btrfs snapshot before and after every time pacman is used, and creates a separate GRUB entry for them… so I update and install stuff fearlessly, knowing that if something breaks, at worst I will just have to reboot to go back to a working system. With snapper-gui I can delete old snapshots easily.
I think there should be an Arch distro that comes preconfigured with this.
Tell me of this dark magic, wizard.
Snapper. On it.
That’s one thing I loved about switching to OpenSUSE from Arch. I used ext4 on Arch, and was considering reinstalling to get BTRFS set up, but OpenSUSE Tumbleweed supports it in the installer so I tried it out, and the rest is history.
I’ve been on Tumbleweed for a few years now and haven’t looked back. Arch is great though, and if I ever find a reason to leave OpenSUSE, I’ll probably go back to Arch.
@sugar_in_your_tea @BlinkerFluid I love btrfs for the system partition but I’m a bit afraid of using it for my data, I use zfs for that instead. In both cases I use zstd compression and it works like a charm.
Ext4 doesn’t support snapshots, however snapper supported it for a while with a kernel patch. There’s also timeshift which uses hard links and rsync in ext4 to provide a similar functionality, with no special kernel support. It also can use btrfs but I prefer snapper for that because of snap-pac and snap-pac-grub.
I also ran out of system storage so I added another device to the same btrfs and it works like a charm.
I would use zfs but I don’t believe there’s much benefit over btrfs for a single drive. If there is, lemme know.
Also, ram requirements, only reason it’s not in use on my nas. More ram for activities. I backup with rsync.
You can also just use pre/post transaction hooks.
Personally I think Timeshift is better. (and switching from Snapper to Timeshift is not that trivial)
I just make normal backups before I update
You should change your Distribution. Arch is a rolling release distribution with a strong focus on customization. If you use binaries shipped by another source, problems like those you described are quite likely to happen. Going to a distribution that isn’t that cutting edge (but still cutting edge enough to deliver working drivers/libs) would reduce the risk for such things.
Now, I know what you’re thinking, who in their right mind would suggest Archlinux for a beginner?
I did this to follow some arcane manuals to hand my entire GPU over to a windows vm. It’s a neat trick and I’ve learned a unbelievable amount in a short time, but it can be frustrating as all hell and took probably a month of getting things the way they needed to be.
I’ve considered setting up a passthrough VM like this (and almost did), I’m just reluctant to I guess because of how much work it takes to configure and get going, and how little I actually use Windows anyways, so I just stick to dualbooting when I really need it. I definitely wish the process of setting up the passthrough VM was easier, but like you pointed out, it’d probably be a good learning experience.
And if you’re a multiplayer gamer, there’s no point because they can ban you if they detect a VM.
I haven’t been a multiplayer gamer in a while, and the only mp game I fire up from time to time doesn’t have this problem. So I admit I forget it can be a thorn in the side of some people.
I learned a lot about both Linux and virtual machines. I’d say it’s worth it if you think that knowledge would be useful to you. Proton and Wine-GE both do almost everything I could want but when something can’t or won’t work, it’s nice to just throw it into a environment you know it will work with. I think I keep all of five games on my windows vm, and I might need it for productivity software in the future.
There’s a few ways of doing GPU passthrough, as you probably know. I have an APU and discrete GPU, which allows me to use Windows like just another application on my Linux desktop by way of looking-glass and scream-ivshmem. It’s very convenient. I can imagine it would be less so if you’re looking at a single-GPU situation as I think you’d have to close your graphics session when you swap.
https://github.com/ValveSoftware/steam-runtime
can just enable it by first allowing steam play for all titles and then toggling use compatibility tool “steam linux runtime” per game basis.
editforsurethistime: seems arch uses the runtime version by default, so im not sure if this would help. my second point is more sound anyway.but also unless youre a power user id rather be on debian, fedora, suse or ubuntu.
https://archlinux.org/news/grub-bootloader-upgrade-and-configuration-incompatibilities/
notably this has happened a bit ago on arch which i read about, then forgot before upgrading and so i booted from my flash drive to update the configadvantage of the bleeding edge is you get cut sometimes
This is the nightmare scenario i never want to happen, so i run Fedora Silverblue
Sometimes when I update my nvidia drivers on kubuntu, my monitors go fully black, and I have to reboot. Sometimes, after that, it refuses to load at all, and I have to enter safe mode, enable networking, open a root terminal, run the holy arcane incantations, sacrifice a few years of lifespan to the gods, reboot once more, and if my arcane incantations were correct, the gods bless me with a few more months of working PC