A Windows User's Guide to Switching to Linux
Say you're currently on Windows 10 or 11 and you are getting increasingly frustrated with Windows. There are many reasons to be, such as but not limited to broken updates, enshittified GUI, and increasingly strict system requirements. In this scenario, you could just choose to put up with it, or you could try Linux. If you're thinking about the latter, then you are the intended audience of this guide. This guide is meant as a broad overview of switching to Linux as a Windows user, but it is not meant to go too far into the specifics of installing anything and that is for a couple reasons. First of all, the exact steps to install whatever Linux distribution you choose will vary from distribution to distribution, and furthermore, other guides have been written which do a much better job than I could.
Why switch to Linux?
There are several reasons why one might want to switch to Linux as a Windows user, including:
- Linux is more customizable and therefore more pleasant to use if you can find a setup that suits your needs
- Windows is not nearly as stable as it used to be, to the point where a stable, well-supported Linux distro is likely going to be more stable than Windows 11
- Windows 11 is way too bloated
- Windows insists on forced updates to your computer, often during inconvenient times
- Windows updates are often buggy and cause more problems than they fix. It is not uncommon for me to hear or read about a specific Windows 11 update breaking something critical
- Windows 11 has strict system requirements that many perfectly fine computers can't even support
- Windows 11 insists on its users creating a Microsoft account
- Windows 11 has forced advertisements in its start menu
- Once you know how to use them, bash and terminal commands are a lot more powerful than anything on Windows
- Windows PCs tend to slow down as time goes on in a way that Linux PCs don't. My parents have so many old laptops that run terribly because Windows
- Linux is better for servers because of how much more lightweight and stable they are, as well as how much more control over them you have. As of the time writing this, the website you are reading this on is running from an old Sony Vaio laptop that I decided to install Debian on and repurpose as a server
This list is incomplete of course, but these are common and good reasons why somebody would want to switch
Why not switch to Linux?
For all of the critiques I just gave Windows, it is still a practical choice, for many people. Reasons why it's the practical choice may include:
- Compatibility. There is some software (basically any Adobe product, for example) that just won't run on Linux. Gaming on Linux is much better than it used to be, but even there, there are some games that just won't run, especially if you're into online gaming. For example, basically anything that uses kernel-level anticheat will not work on Linux
- Tinkering. Some pursuits on Linux require more of it than others, and you don't have to mess around with your Linux system to get things working nearly as often as I've seen some people claim, but there are specific things that are rough around the edges and will require a little more work than they would on Windows. To go back to gaming, there are a lot of PC games that work out of the box on Linux, but some games that require something specific to run. If you play a large variety of PC games, and you don't think it's worth dealing with that on occasion, then Linux isn't for you.
- Nvidia drivers. Nvidia has been notoriously bad at Linux support to the point where Linus Torvalds famously and deservedly flipped Nvidia off at a hacker meetup. If you have an Nvidia GPU and feel discouraged, then that doesn't immediately mean Linux won't work for you. I switched to Linux with an Nvidia GPU and was fine, and Nvidia support on Linux is much better than it used to be. You should, however, recognize that there will occasionally be glitches and your system will be significantly less stable for using an Nvidia card. Even after converting to AMD, lingering Nvidia software still caused some occasional bugs on my system.
- Familiarity. If you are used to using Windows, then installing Linux will require you to go out of your comfort zone and do things on your PC that you are not used to doing. If you don't think that's worth leaving Windows for, then don't leave Windows
Even if any of these reasons will convince you to not switch to Linux entirely, dualbooting your system may still be an option to consider.
How to think about Linux
A lot of people seem to view Linux as one of two things: either a Windows reskin, or something that requires mass wizardry and half an hour to install a web browser. Neither of these are the case. Linux can look like Windows on the surface depending on how you choose to make it look, but it's very different from Windows under the hood, and most software is not difficult to install, it just requires a different framework. Some differences between Windows and Linux include: the filesystem, how things are actually installed, and the overall philosophy of the OS
If you're used to using Windows, you're used to thinking of your filesystem in terms of "drives" (C:, D:, E:, etc). Each partition that Windows can access is usually its own drive, then any other drives, whether they be internal drives, external USB drives, or any disc drives, all get to be their own drive. Linux, on the other hand, does not work like this. In Linux, there is no separation in that way, everything is on one big tree starting on /. The partition the OS runs on gets mounted to /, and any other partitions or storage devices get mounted elsewhere on the tree, usually a new folder under either /media or /mnt, but they could be mounted anywhere. If, for example, you were to insert a USB drive onto a Windows PC, it would show up as a new letter, but if you were to do the same on a Linux PC, it would show up as a directory.
The installation process of new software is another key difference. In Windows, the vast majority of your installations are going to be directly from executable files, usually under the format .exe, that you either downloaded online, or ran from something external. You can do equivalents with some software on Linux as well, such as .deb or .rpm, but the majority of the time, you will want to install software using a package manager. This can be done on a software manager, or from running commands on a terminal. Package managers can automate the process of installing software you need by also installing any dependencies the software depends on, and uninstalling said dependencies when they are no longer needed. This makes software maintenance more convenient on Linux than on Windows, since it's easier to update and you don't have to worry about what the software depends on because the package manager can do that work for you. Which package manager you use will depend on which distro you choose.
These 2 differences both lead into a difference in the underlying philosophy of Windows vs Linux. The default assumption of Windows tends to be convenience, while the default assumption of Linux tends to be control. The former is not inherently a bad thing, as it does often make things easier for the majority of people, but if you want to do something that Microsoft doesn't want you to do, then you are going to be fighting an uphill battle, and this is becoming more of a problem as Microsoft becomes more controlling of Windows. Linux, on the other hand, assumes that its users should be able to control their operating system, which is why the Linux kernel and a large chunk of Linux software is open source, and why Linux is so customizable.
Choosing a distro
There is not one flavor of Linux. In fact, "Linux" in and of itself technically just refers to the Linux kernel, or any operating system using the Linux kernel. There is a large family of various different operating systems that use Linux, which are called distributions, or "distros" for short. A Linux distro is any operating system which uses Linux as its kernel. "Which distro should I pick?" is a question that every aspiring Linux user will need to ask themselves at some point down the line, and it's a common question to get stuck on. Because of how many distros there are (literally hundreds), it is common for people to get stuck on this due to being overwhelmed with choice. If this is something you are worried about, then this choice is less of a concern when you realize the distro you use, or at least the specific distro, isn't actually that important. There are really only 4 major differences between the distros: The package manager, what they come pre-installed with, what they look like by default, and what their installer is like. It is for this reason that it's really not worth overthinking your choice of distro.
If this still doesn't make you feel reassured, then here is a quick list of recommended distros for people used to using Windows:
- Linux Mint - This was my choice of distro, and it's great for Windows users because it has the UI of Windows 7 but with the emotional support of Windows XP, which gives it the best of both worlds. The other thing about Mint is that it's a very slow moving distro. It uses a desktop environment known as "Cinnamon", which is developed and maintained by the same people in charge of Mint, and it is in many ways years behind other desktop environments. Although this approach has its downsides however, I actually like the stable, conservative attitude of Mint and its developers because it keeps them cautious and it prevents them from adding weird, broken software to their distro before it is ready. If you like Mint now, you will like it a decade from now, and I am not convinced this is true of other distros. Take Fedora for example. People say it's a great distro and I believe them, but will it be a great distro a decade from now? I am not confident the answer is yes, whereas I am for Mint.
- Zorin OS - Zorin's entire goal is to both look like Windows on the surface and anticipate users will try to treat it like Windows. If for example, you directly double click an EXE file like you would on Windows, Zorin will display a popup telling you to install software to run it. It also has a very powerful UI, with its entire goal being to make the terminal as optional as it can
- Fedora - A lot of people view Fedora as being to the 2020s what Ubuntu was to the 2010s, the most well-rounded default option for easy Linux distros. It is flexible and fast moving, but also stable and easy to install and use, which makes it the new favorite among a lot of Linux users.
- Bazzite - Bazzite is basically Steam OS, but with more universal focus and based on Fedora instead of Arch. If you want Steam OS but don't care about rolling release software, then Bazzite is what I would recommend instead.
- Ubuntu - Of the distros on this list, Ubuntu is the one that I give the weakest recommendation to, but that doesn't mean it's necessarily a bad choice, it's just not nearly as good of a choice as it was a decade ago and I think there are options that are overall much better. There are 3 reasons why I'm not the biggest fan of Ubuntu. It is more bloated than the rest of these, it aggressively uses snap, which I dislike because it's basically a worse version of flatpak, and its default interface is more similar to that of Mac OS than Windows, so the initial feel will be less comfortable for Windows users. However, all of this can be fixed by the user, and I still think Ubuntu is worth a recommend because it still has one major upside: because Ubuntu has been the historically most popular distro, especially for users relatively new to Linux, it has the most questions online answered about it. If you are encountering an issue with Linux and you search online for a solution, your chances of finding a solution are probably the highest if you are on Ubuntu.
- Debian - Not a good choice for most people wanting Linux on their main PC, but by far the best choice for two types of people: people with very old or weak computers, and people running servers. Debian is what the server hosting this website is running, which wasn't originally my idea, it was somebody else's, but I went with their idea and I think they were right
I have intentionally left out distros like Arch or Gentoo because, although they are by no means bad distros, the learning curve on them is steep enough to send people back to Windows. I also intentionally omitted Steam OS not because it's not a bad distro for hardware it was designed for, but because even Valve doesn't recommend running it on your custom built desktop PC. I'll still link all 3 though because why not.
Trying out your distro
For trying out your distro, you have multiple options:
- Create a VM - You can create a virtual machine, using Virtualbox, VMWare, or QEMU. This will take up significant amounts of space on your drive, however, and will take some work to set up. Also, depending on how you set the VM up and what software you used, some features you might want to use on the distro may not be available or fully accurate on the VM.
- Use Distrosea - DistroSea is a convenient way to try out different Linux distros without having to create a VM or boot from a USB drive. Just select the distro you want to try out, and you can directly play around with it from a web browser
- Boot into USB - You will eventually have to create a USB boot to install your distro anyway, and you can directly boot into most distros from USB, so you might as well directly try out your distro from the USB drive.
Try installing software you would want to use on any of these 3 options, and see if you can feasibly get it to work.
Creating a USB boot
If you want to try multiple distros on your USB boot, I recommend using a USB solution known as Ventoy. Just image it to a USB drive and place the ISOs of your chosen Linux distributions onto the root of the USB drive, then restart your PC and boot into the USB drive, and you should be able to boot into any distro ISO you placed.
From there, you will likely boot into a boot menu, usually GRUB. You can usually boot directly into the distro from there, or install it.
When to Install
Before messing with partitions or trying to install Linux, it's important to plan exactly when a good time to would be. If you are pressed for time to do something on your computer, that is not a good time to install Linux, especially if you aren't used to it, because you will be doing something uncomfortable and you will be likely to encounter issues along the way. When you are stressed, you won't troubleshoot as coherently and you will simply delay whatever you is stressing you out. It is best to install Linux and try new things on it when you have some freetime to do so.
Some examples of when not to install Linux:
- You are a student and an assignment is due very soon that you haven't gotten done yet
- You are a student, an exam is tomorrow, and you would like to do some studying for it
- A LAN party (if you know, you know)
- You stream and are about to do an important stream soon
- You have an important commitment to make online and that commitment is very soon
Another thing worth reiterating from earlier is that I will not be giving specific instructions on how to install Linux outside of simply creating a USB boot because the specifics of installing it vary too much from distro to distro. Most distro sites will have instructions, however. For example, here is an installation guide for Linux Mint
Dualbooting
Dualbooting is when you have multiple different operating systems installed on one computer that you have the option to boot into when turning on your computer. It is a common option for Windows users who want to try installing Linux. There are multiple different reasons why dualbooting might make sense for your use case, including:
- Some of the previously listed "reasons not to install Linux" apply to you to the point where you want to keep Windows around, but you are still open-minded enough to give Linux a try anyway
- You have reason to believe you can daily drive Linux and replace Windows with it, but it's purely theoretical and you're not entirely confident so you still want to keep Windows around. This is why I started out dualbooting and why I think I was right to
- You love Linux, but you somehow really need Windows for a practical reason. Similar to the first reason, but with more confidence behind it
Note that dualbooting is not just a "have your cake and eat it too" solution, there are still major downsides to dualbooting, including:
- Having two operating systems on your PC will create a lot of demand for drive space. If you don't have a lot of disk space to spare, then dualbooting is not recommended
- Fast startup will have to be disabled on Windows if you have any other drives that you want to write to on both Windows and Linux
- Creating and modifying partitions is both tedious and risky
- Booting will be significantly slower on both Windows and Linux due to needing to select your OS from the bootloader
- Switching back and forth between Windows and Linux is inconvenient due to literally needing to restart your PC
Despite these downsides however, I still do not regret dualbooting for my first few months on Linux because of just how useful of a failsafe it is. To dualboot, you will need to boot into your Linux distro of choice from USB, then open your partition program of choice (I use gparted) and create a new partition for your Linux installation. When installing your Linux distro, select that partition for your install. If everything was done right, booting into your PC should bring you to a bootloader, most likely GRUB.
General tips for using Linux
- When dealing with tech issues, be patient and focus on what is in your control. Don't assign blame, not because there isn't blame to logically be assigned, but because at the end of the day, it doesn't matter whose fault an issue is when the issue is happening on your computer and you are the only one who can fix it
- Be careful when resizing or managing partitions. Make sure you're repartitioning at a safe time where power outages are unlikely. A UPS is recommended. Also make sure you're managing the right partition. When removing my dualboot, I accidentally removed the GRUB partition instead of the Windows boot partition and had to spend time reinstalling it
- Keep a spare USB Linux boot lying around, so that you can boot into it if something goes wrong. This is how I fixed the issue mentioned above
- If you're on Nvidia, I don't recommend getting an AMD GPU just for Linux because GPUs are expensive and Nvidia Linux usually still works. If, however, you're getting a new GPU for other reasons, like an upgrade or a replacement, then definitely switch to AMD and purge all Nvidia drivers after doing so
- I know the terminal is scary, but using it does yield long term reward and it does feel satisfying to use once you're used to it
- Before installing or even buying a game, consult ProtonDB to check whether that game will run or not and what you need to tinker with to get it working
Recommended Linux software
I'm not going to include obvious things that everybody uses like Firefox or Steam. I'm also not going to include VMs because I talked about those earlier.
- Proton GE - Steam does come with Proton, but having an up to date Proton build will improve your Linux gaming experience
- Heroic - What I use to run non-Steam software without Linux versions. There are alternatives like Lutris or Bottles but I favor Heroic. Heroic is also great if you have any games from Epic or GOG that you want to try.
- Protontricks - Software for modifying Proton-enabled games. I use it sometimes to get some games working.
- Flatseal - A settings GUI for flatpak applications. Useful for modifying flatpak permissions
Back