--- title: > Nix, NixOS, Home Manager, and WSL2 pubDate: 2023-04-09 permalink: >- archive/2023/04/09/nix-nixos-home-manager-and-wsl2 tags: - linux - nix - nixos - wsl2 --- Although I've been using Linux for work computers for a lot longer, a few years ago, I switched from macOS and an Apple MacBook Pro to using Linux full-time on my personal computers. My current daily driver laptop is a Tuxedo InfinityBook that I've installed NixOS on. NixOS, as the name suggests, is a Linux operating system based on the Nix package manager. It has access to the 80,000+ packages in the `nixpkgs` repository and can still install and manage them, but also does a lot more including managing hardware. For user-level configuration, I use Home Manager. I can configure my home directory including user-specific packages and manage my dotfiles, creating files like `.gitconfig` and linking them to the required destination. Home Manager can be a NixOS module or a standalone tool - it can be added to NixOS or installed on any Linux distribution, even in WSL2, so I have the same packages that I need installed on every machine as well as having my dotfiles in the correct place and ready to be used.