I love Linux. But the NVIDIA drivers are broken on Wayland (again), and I need to work to be able to pay my rent.
So let's dive deep into this, by configuring this nice operating system that's pinning TikTok and Candy Crush Saga to my start menu.
Commands are ran in PowerShell.
You can install packages with:
winget install
Example:
winget install Inkscape.Inkscape
- π€
AutoHotkey.AutoHotkey
- π³
Git.Git
- π¦
Mozilla.Firefox.DeveloperEdition
- π₯½
Google.Chrome.EXE
- π«¦
Microsoft.Edge
- π
Microsoft.EdgeWebView2Runtime
- π
- π
Microsoft.DevHome
- β¨οΈ
Microsoft.WindowsTerminal
- π§βπ»
Microsoft.VisualStudioCode
- π
GitHub.GitHubDesktop.Beta
- π
GitHub.cli
- π
- π¨
JetBrains.Toolbox
- ποΈ
Nvidia.GeForceExperience
- π³
Nvidia.PhysX
- π οΈ
BartoszCichecki.LenovoLegionToolkit
- π
Lenovo.SystemUpdate
- βοΈ
Inkscape.Inkscape
- πΆ
GIMP.GIMP
- π¬
SlackTechnologies.Slack
- π§
Discord.Discord
- π
Canonical.Ubuntu.2204
- π
Notion.Notion
- π§
TuxGuitar.TuxGuitar
Scoop contains some packages you might want, which are not yet on winget. It's also a bit more mature.
Warning
The scoop setup might change in time. I only copied the commands here for convenience.
Install scoop with:
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
Invoke-RestMethod -Uri https://get.scoop.sh | Invoke-Expression
Search for File Explorer Options
in your start menu.
Once there, access the View
panel. In the Advanced Settings
list, enable the following:
- βοΈ Show hidden files, folders and drives
And disable the following:
- βοΈ Hide extensions for known file types
These are the settings I always use. Explore the list further to configure things to your personal preferences.
Search for Turn Windows features on or off
in your start menu.
Turn these options on:
- βοΈ Virtual Machine Platform
- βοΈ Windows Hypervisor Platform
- βοΈ Windows Subsystem for Linux
Reboot.
Search and install the following:
For HDR displays:
- βοΈ Windows HDR Calibration
If you've got a Lenovo device, you'll have to install their awful bloatware for updates.
Note
This might not be 100% correct. Both with NVIDIA and Lenovo, it's possible to install just the drivers, without the awful software that comes with it. This was just more convenient for me at the time.
- π€ Lenovo Vantage
Note
This guide previously refered to FancyWM. Coming from a more conservative background in tiling window managers, I did a lot of hacking to configure FancyWM to my liking.
I have since found out about Komorebi, which requires much less configuration, and also seems to work better with fullscreen applications.
Komorebi is really good, but it's even better when you disable some windows "features".
Since we're already tiling our windows with Komorebi, you can disable FancyZones.
From Windows Settings, turn System > Multitasking > Snap Windows off.
Warning
In past versions of Windows you could disable animations using ViVe Tools. Every update seems to change feature IDs, so it's best not to go this route, at least for this guide.
If you still want to tinker with ViVe Tools, you could install PeterStrick.ViVeTool-GUI
with winget
to better inspect these IDs.
Note
Alternatively, check out this repo, apparently they can disable the animation by using AutoHotKey.
Windows animations are very laggy, even on my high-end machine. I just disabled them altogether.
Set Accessibility > Visual Effects > Animation Effects to off.
Go to System > Clipboard > Clipboard History and turn it on.
You might think that installing & using WSL is a good idea. After years of using it, I can only say that it brings pain and suffering.
The only reason I use it nowadays is to run podman
, but even then I do not need to set it up for myself. The podman
installer does that for me.
With this in mind, feel free to skip this section.
If you still want to proceed, it means that you desperately need those Linux syscalls. Or you're developing some server software. Either way, you probably know what you're doing.
I won't be going into details, but I usually install Arch. Here are the steps:
- Install Arch from here
- Install yay (once inside the Arch WSL) from here
- Install polkit by typing
yay polkit
. This is necessary for systemctl to work on a user level. - Configure the SSH agent. Since you've gotten this far, I assume you can read the wiki.
Docker for Windows has gotten shady these past years. I've used the RedHat alternative, Podman, for some years now. It does everything I need it to do, and with less overhead.
winget install RedHat.Podman
They even have a Desktop UI.
winget install RedHat.Podman-Desktop
Proto is, as the website suggests:
A version manager for all your favorite languages and tools. A unified toolchain.
This is what I use to install compilers & toolchains, such as Rust
, Python
, Node
, Deno
, pnpm
, dotnet
, CMake
etc.
It doesn't support everything, but it supports a lot of popular things.
You can use it to configure global versions, but it works really well when you have multiple versions in place. This section describes this feature best.