It occurred to me as I’d downloaded my fifth Windows update in as many days that I should probably just move to Linux already. I’ve been wanting to, and the only reason I haven’t is ‘ugh, hassle’…
That’s where you come in. What should I know / learn about to be prepared for a seamless Linux swap from Windows?
Configuration is not always straightforward but when it is done updates do not usually break what is configured, unlike windows.
For instance mounting network drives (smb/nfs) is usually done by creating a folder to mount to and then adding the parameters per share to /etc/fstab. Which is a txt file that is looked at on boot to see if something (hdd/network shared) should be mounted.
Windows is simple, you open run and type \ip it will then prompt you with credentials and it opens the folder. Then you can mount to a letter on windows as a network drive. This is called mapping on windows.
Xorg is widely compatible wayland is not. Wayland has been around for 10 years or longer but many apps still do not support it fully. Wayland and Xorg is the window management software. In my case I have to use xorg but my 240hz monitor does not set the windows to 240hz, it is set to 60hz which is my secondary monitors refresh rate. Wayland sets it to 240hz and 60hz. So the proper refresh rate of my monitors.
Kernel level gaming is not really a thing on linux still so games are limited to mainly single player and older games. So I recommend dual booting for that if it is important to you. I personally have a friend that refuses to use windows so he is left out of gaming when there is a group wanting to play Rainbow Six Siege or something like Marvel’s Rivals.
Virtual Machines are not necessarily straightforward but allow for near native level os performance with hardware pass through.
Be ready to google stuff.
FOSS is good and all but not always is the easiest to deal with. Development takes time because software is often managed by a few people that work on development as a side project instead of devoting all their time to software. Why is this?
It is because foss and software for linux is both niche and mainly for hobbyists when it comes to desktop users. It is usually a small group of devs vs large corporations with 100s or 1000s of devs. So software sometimes takes a lot longer to have features and security updates.
Devs that work on foss often do not usually get paid for their efforts. Sometimes if it is valuable enough they open a patreon for donations. But FOSS is just that free so that it is not to have required payments.
I tried linux on and off for 15 years before finally making the switch back in 2019. When it worked it was good. But I made the switch back to windows when a game I wanted to play and features that work on windows but not linux became what I wanted. So I used it for 5 years straight (linux) it was good. However it was also not a perfect experience. I really got to learn how to use the command line because I have a bunch of VM’s using a hypervisor such as proxmox to handle my home lab stuff. (Jellyfin, Nextcloud, Navidrome, Immich, Minecraft servers, openwrt [virtualized router], etc). I pushed myself to learn cli and it has benefited me even with using cli and cmd in windows.
If this all seems daunting I suggested creating a debloated and custom windows iso. I am using windows 10 enterprise iot. Which has security patches scheduled until 2032. It lacks the windows store and more newer features found on new versions of 10 and 11. It also has the ability to fully remove telemetry (the spying). It just has security updates and not feature updates. It still works with newer cpus and gpus. I am using a 4080 super and 7950x. If the spying and constant feature updates are a problem it is possible to avoid is all I am saying. You would not be giving up security for running an older version of windows.
Linux is certainly better than it was 15 to 20 years ago but it still has its faults, where as windows continues to have comparability for software from the 90s. I can still run games from my 98 pc even though it is over 20 years old at this point.
Linux has containerized programs, docker, flatpak, snap, appimage and this allows for installation across linux distros. But they also take up more space because a container has all the dependencies separate from the host os. It allows broader comparability. Near universal across linux distros and versions. This is beneficial, because often installing older software versions or bleeding edge is problematic. Often without containerization, you must learn how to install dependencies and compiling from source. I know all to well because I have had to compile a bunch of software from source for reasons.
One (of many) differences is how hardware drivers are handled. In linux, all drivers are part of the kernel (and once in the kernel are not dependent on the HW manufacturer for continued support but are maintained along with the rest of the kernel). Which means no planned obsolescence!
Proper linux support means telling the user what the required kernel version is for the hardware to function. In my ~20 years of linux use I’ve never had to download a binary blob from some manufacturer’s website! (Just ignore such downloads and update the kernel instead, or use different hardware if no proper support is available - it’s very rare this is needed though.)
This is very true. Where windows drivers pretty much all work between 7 and 11 linux kernel often is not bleeding edge if you run lts. It requires in many cases to download signed or unsigned kernel drivers and installing manually. This is the case for 22.04 of ubuntu which out of the box does not support intel arc (i use for media server) and had to manually install bleeding edge kernel.
The upside of kernel based drivers is you do not have to maintain exes to update or install devices. The benefit of windows is comparability of its drivers across years of os updates. Once the driver is in the kernel it is fine for linux and usually stays compatible with future updates. The downside is when a feature does break ( i had this happen with arc gpu encoding) I had to manually learn how to downgrade the kernel to a working version and then hold kernel package upgrades.
Another key difference is that linux is much more “granular” than Windows. A linux distro is a collection of parts: Linux itself (the kernel), an init system (usually systemd nowadays), a display server and client window system (can be Xorg or newer Wayland based), and a desktop environment (KDE Plasma, Gnome, Xfce4 etc). There are also multiple sound servers (I guess PipeWire is the standard nowadays but also the older PulseAudio and the underlying raw ALSA).
All this gives a lot of freedom but also takes quite a while to figure out! If I were new to linux it would be bewildering trying to choose the “right” distro. I think one just have to jump in head first and be prepared to “distro-hop” some before circling in on the distro that suits one’s needs best. The good news: pretty much all distros have LiveUSBs available. Absolutely try several of them on your computer: try to run each one for a day and see how it feels, perhaps even going back to try again once you get more comfortable with fixing minor issues and configuring your system.
I think this is a result of still being in the Windows way mindset. Don’t do this, it’s insecure and gets messy - update the kernel instead!
The huge problem child here is of course NVIDIA. Buy AMD (or Intel) instead, or I guess make an exception and install their blobs if you really have to…
You could have endless discussions about differences and how to do n, but at the end of the day what it boils down to is which distro and desktop environment to choose as there’s too many to choose from.
Just stick to a well-supported, popular distros, avoid niche ones that lack a track record and reputation.
If you just want a solid system that just works and you don’t care about the ability to tweak some nitty gritty (some may call it boring)… Fedora Silverblue is an immutable, basically fool-proof distro where you install your programs as flatpak apps from the software centre (flathub), it does automatic rollbacks if something breaks it.
If you want to play with under the hood settings (and risk borking your system, we’ve all been there, it’s part of the fun learning experience), just pick a distro that isn’t immutable. Fedora Workstation, Debian, Ubuntu, Linux Mint for stable point-releases, OpenSuse Tumbleweed for bleeding-edge.
You can skip Arch (+derivatives) as your first distro btw. Tumbleweed is bleeding edge enough and does also automatic rollbacks by default.
Regardless of your distro, the Arch wiki is a great source for info tho.
The most valuable thing to know is that in linux/unix, everything is a file.
Your components are files, your mounts are files, your processes are files.
You don’t edit a registry like you do in Windows, you edit text files (again, only if you want to. Linux can be a set-and-forget if you want it to be).
I’m not gonna make a comment about desktop environments, you can explore that yourself, half the fun is exploring.
If you go for a stable lts release you have to update the kernel by either waiting for the distro maintainer for do it manually by going to their website download the kernels and then install.
I guess it depends on the distro. E.g. in Ubuntu you have the HWE (hardware enablement) kernels that can be installed via the package manager. Still not bleeding edge but pretty new.
There’s a lot of info in here. I’d like to thank everyone for posting before I say this, because I don’t want to make anyone mad.
If I’m gaming, just gaming, should I wait for SteamOS?
There is nothing else really that I do with my system.
Maybe some background. To me, a Windows user who knows very little about Linux, SteamOS seems to be marketed as a drop in replacement for Windows for gamers.
Something that has been helpful to me has been running linux on a PC other than my main rig - for example I have a minisforum mini pc in my living from that I run linux mint on. The only thing I use it for is web browsing, video streaming and light casual gaming. Eventually I started hosting a minecraft server on it as well.
Getting used to running linux on a PC that is not my daily driver allowed me to feel more comfortable with messing around and learning, without fear of ruining my regular workflow.
It depends on what games you’re playing. If your games (all of them!) have at least Gold status on https://www.protondb.com/, then switching to linux should be fine.
SteamOS doesn’t really change things, it’s just another linux distro with the Steam client pre-installed more or less.
Alright, let me ask you this
How sacrilegious is it to run Linux on a MacBook?
This makes sense. Thanks for cutting through their marketing.
I’m not an apple fanboy, so it doesn’t bother me at all.
Just make sure it’s a pre M-series SOC or else you’re gonna be on the struggle bus trying to run linux on it. There have been improvements for M1 and M2, but they are still a work in progress last time I checked.
If you are new to linux, I wouldn’t recommend jumping into linux on a M-series macbook, unless you like to struggle.
It’s a 2018 MacBook Air, so from what you’ve said I think I’ll be okay?
I just dislike Apple as a company with every shred of my soul.
You answered your own question. Shred the sheep mentality, roam free!
Buy an old computer, the cheapest you can find outside of chromebooks (older optiplexes work well for this) and install linux on that. From there, get accustomed to the new workflow, until you are ready to switch on your main device.
If you can, switch the software that you use on windows to libre software (libreoffice, gimp, firefox etc.) and when you move, you’ll already be accustomed to all the programs you already used on windows.
If you’re planning on doing more than just gaming (like browsing the web and stuff), then using a desktop distro is better. Just get into something like pop!_os or check out one of the gaming-focused distros (idk what’s popular these days, bazzite or nobara or something?).
You should know that you can use many Linuxes without installing them. Spare USB drives let you boot into it and get a feel for how it might work on your hardware before you commit.
Virtualization is one of Linux’s best features. If you still need Windows for something, using Linux doesn’t mean giving it up.
There is no best distro and it is not the Year of the Linux Desktop. Welcome anyway.
Look at your app stack / list and look to see if there is a linux equivalent. Check them out and see if they work with your work and work flow!