Skip to content

Comment on Ask HN: Cleanest way to manage Windows OS?

Comments

It sounds like you're using Nix as a sort of configuration management solution. CM just isn't worth it for managing a single desktop IMO. It triples the effort for whenever you need to add or remove a package, as you must now add that also to your nix configuration. You're supposed to be able to make that back up in time saved restoring to the next machine, but inevitably the next machine will be different enough that you'll have to edit it all anyway. In the end I just got tired of trying to manage my own machine with infrastructure as code (though in fairness I was using puppet at the time not nix).

I keep a git repository with all my dot files in it[1]. This seems to work the best. It has a Windows folder as well, and I copy that out whenever I need to set up Windows.

A lot of people like using WSL but I hate how it hogs on my memory. Hyper-V is a terrible virtualization engine for consumer-grade use cases because it can't thin provision RAM. If I need to use docker, I will spin up a small Linux VM using vagrant[3] with Virtualbox[4] and put Docker on there. Vagrant is an extremely underrated tool in my opinion, particularly in a Windows context.

I use scoop[5] for package management. Typically I will scoop install msys2 and then pin it so that it doesn't get blown away by the next upgrade.

Then I basically do all of my development inside of msys2. I can get most things running in there without virtualization. In my case that means sbcl and roswell for common lisp, senpai for irc, and tmux and nvim for sanity. Msys2 uses the pacman package manager and this is good enough.

All In all, I set up my Windows machine affresh after a while of not using it and it took me about 3 hours. Most of that time was just getting through upgrades though, I felt like it was pretty fast.

1: https://git.sr.ht/~skin/dotfiles

2: https://www.msys2.org/

3: https://www.vagrantup.com/

4: https://www.virtualbox.org/

5: https://scoop.sh/

AboutSource Built by g1lg1l

Hackerly is an independent reader for Hacker News, built on the public HN API. Not affiliated with Y Combinator.