Skip to content

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

Comments

Thank you all for the informative advices. Here is the summary for those who are in the same situation:

1. Run Windows on Linux by using VM

for the applications you can’t run on Linux

Risks:

* some softwares may attempt to detect VMs and refuse running

* Anything what needs to touch hardware may not work.

2. separate "data" partition on D:

3. back up %APPDATA% and %USERPROFILE%

4. learn chocolatey, scoop or winget

Winget should be good enough

5. Don’t worry about C:\Program Files

6. (Mixed) Use/Don’t use Ansible (or saltstack/salt)

Use:

* Allows you to setup a new machine quickly and consistently when one breaks, get stolen, or lost in an inconvenient time.

* You can get a clean and consistent development environment so that you do not depend on anything accidentally installed on the machine.

* If you define specialised roles, create test playbooks for those individual roles, use these roles to compose more complex playbooks, and offload logic to custom ansible modules that are written in python, you won't wrestle with heavy logic in the template or playbook layer.

* installing software and pulling some configs and scripts down is fine

Don’t use:

* You will spend your days fighting a mix of yaml and Jinja.

* You will end up looking at Python errors because there are no static types.

* errors are cryptic.

7. Use WSL2

You need 32gb of ram, but ram is cheap so choose a good thinkpad

8. Debloat with Recommended Tweaks

Run

irm christitus.com/win | iex

from Administrator Terminal (Powershell)

The link leads to https://raw.githubusercontent.com/ChrisTitusTech/winutil/mai...

VirusTotal

https://www.virustotal.com/gui/file/709834b0e003b6bb546cf16e...

9. Get [PowerToys](https://github.com/microsoft/PowerToys)

10. Use Devbox for containered environment

https://www.jetpack.io/devbox

11. Dual-Booting Linux and Windows

If you use physically separated drives, you don’t need partitioning.

12. Dedicated Windows machine for class

Yes it sure would be the cleanest solution but I prefer one device for everything

13. keep a git repository with all dot files in it

Many people suggested that using virtualization is the way, otherwise just let Windows be Windows.

Also, backing up seems to be a good practice.

I’m planning to write a blog about this, if it worked.

Again, thank you all for the helps!

AboutSource Built by g1lg1l

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