A lot of people here have already given good advice. I shall add my experience, recommendation and some tips (may incidentally repeat some of them).
- If you play some games with kernel level anti-cheat (like Rainbow Six Siege, Apex, Valorant, LoL, Fortnite, Battlefield games, Destiny 2 among others), you will have to stick to dual-boot. Check on ProtonDB for compatibility of games. I have 500+ games on Steam and pretty much everything I've played has worked so far.
In terms of other software you use, make sure you have alternatives that work on Linux.
- For Photoshop, there's Krita/GIMP.
- For Video editing, there's Kdenlive, DaVinci Resolve, etc.
- For browsing and office apps, there's LibreWolf and LibreOffice.
If you happen to have any software that you don't have a good alternative or that only runs on Windows, then you'll have to stick to dual booting.
- If you do end up dual booting, DO NOT use your external HDD in NTFS to run games on linux. It will work for a while, but you'll constantly have to 'chkdsk' or check disk on Windows every time your HDD is found corrupted. Also, NTFS is Windows' proprietary filesystem. So, I've heard that using ntfs-fix (chkdsk equivalent on linux) might cause data loss. Not sure how far it's true, but be cautious of using that too. But otherwise, I believe that just reading files from NTFS drive usually is not a problem.
- If you are NOT dual booting however, you won't have to face this mess. You can backup the data on your HDD somewhere, format it in 'ext4' filesystem for Linux-only use ('Exfat' if you want to share any data with others on Windows/Mac) and restore all your files back to this HDD in ext4. Hope you have extra HDD with enough free space to move your files while you convert disks to ext4. You can also probably use cloud services for backup.
- I've used Ubuntu, Mint, Arch and Fedora.
- Had faced a lot of issues with Ubuntu back in the day, and Snap Steam is a mess. So, avoid it.
- Mint is easy to use, removes snap from Ubuntu and just uses apt, has a great Desktop Environment called Cinnamon, and I'd usually recommend this to someone new, but I wanted to shift from X-11 to Wayland for security reasons and HDR support among others. If Wayland worked well with Mint, I'd still be using it today, but that was the only reason I moved away from it.
- While Arch is nice, it's certainly not for someone new.
- That leaves us with Fedora KDE, which would be my recommendation. It has good security features like SE-Linux out of the box. The reason I suggest KDE over Gnome is so that you might have an easier transition from Windows to Linux. Once you have a hang of this, you can later use a pen drive to load other distro with other DE like Gnome, XFCE, Cinnamon, Cosmic, etc and test them out by live booting.
- Speaking of pendrives, make sure to always have one with Ventoy installed and the distribution you're using. This will be handy if you want to troubleshoot your system anytime. And I say Ventoy over others because it makes loading distro easier. You can just drag and drop the ISO files instead of having to burn with Balena Etcher or Rufus everytime.
- Rufus is great, but if you're moving out of Windows, you don't need it.
- And I have seen a lot of people have trouble with using Balena Etcher. So, avoid it.
-
- Turn off Secure Boot in BIOS. (And maybe also fast boot).
- And if your disk is on RAID instead of AHCI, you might have trouble installing. So, you might want to set your SATA configuration to AHCI mode in BIOS if you face issues.
- If you end up choosing Fedora, you may want to follow this.
Fedora only comes with FOSS by default. So, you'll have to install Nvidia driver and proprietary multimedia Codecs separately by including RPMFusion repo.
-
You can download the free and non-free repo files from the RPM-Fusion site(Graphical Setup) and install them through the Software Center. After adding the repo, you might have to enable them in the Settings of Discover Software Center. Enable all of them except those containing the words 'testing', 'Test', 'Source', 'Debug' and 'google chrome'.
-
After that, it's just a few lines you type in the terminal (Konsole by default) for installing driver and codecs. Make sure to update the system and restart first before doing these.
For Nvidia driver, type:
sudo dnf install akmod-nvidia
For optional CUDA support, type:
sudo dnf install xorg-x11-drv-nvidia-cuda
For Video acceleration support, type:
sudo dnf install nvidia-vaapi-driver libva-utils vdpauinfo
For Codecs, type:
sudo dnf swap ffmpeg-free ffmpeg --allowerasing
Steam is also included in the non-free repo. You may install it by typing:
sudo dnf install steam
- Other than these, most applications can now be installed directly from the store as a Flatpak. You can select them in the store between Flatpaks, Fedora managed Flatpaks and Fedora Linux app for a particular one.
- For flatpak apps, you'll see a tick next to the developer if they are verified. So, you can look out for that if necessary.
- Make sure 'Flathub' repo is enabled in the Settings of Discover Software Center for the Flatpak apps to appear.
NOTE: Every time the video driver updates, you will have to do a follow-on update for flatpak runtimes. You might see a bunch of 'Application platform' and 'Freedesktop' stuff which you'll have to install. If you fail to do this, you might suddenly find flatpak applications not working properly.
- Troubleshooting tips:
- If Steam doesn't launch the first time, type:
__GL_CONSTANT_FRAME_RATE_HINT=3 steam
-
If your system is frozen, try switching to TTY by pressing (Ctrl+Alt+F3) and going back to GUI by pressing (Ctrl+Alt+F2)*. *Could be F1 in some cases.
-
To check what errors you got during the recent boot,
journalctl -b 0 -p err
Apart from the driver installation and some troubleshooting, you generally won't have to use the terminal if you're averse to it.
- In terms of deGoogling, I'd recommend the following:
- Buy a pixel and install Graphene OS.
Switch to
-
Tuta/Proton Mail for email,
-
Proton/Tresorit Drive for storage,
-
Mullvad (or i, proton) VPN or (Rethink DNS for firewall) I am not sure if you can use both Rethink and VPN at the same time. I assume there is a way.
-
OsmAnd for maps,
-
Newpipe for youtube frontend(Grayjay on Linux),
-
Bitwarden/KeepassXC for Password management,
-
Aegis for TOTP
-
Fdroid, Accrescent, Aurora for App store.
-
Molly FOSS for Messaging.