But VMs can abstract away most of this, especially in a learning environment where performance isn't a primary goal.
Then you can have a known-good set of instructions that doesn't have to include messing with whatever Apple/Microsoft/Ubuntu changed recently.
Learning to paper over OS errata isn't as generally useful as, say, groking multithreaded coding models.
Yes, there are environment quirks. Yes, you'll have to deal with them. Yes, you can look up documentation when you run into those situations.
I hate setting up environments, even with a folder of templates I've assembled over the years. The most frustrating barrier to get to the "magic" of seeing something happen is figuring out the proper/correct way to structure a project.
Towards the end of intro courses seems like an appropriate time to start bringing up tooling.
they donate a couple of thousand dollars and in return get a CS class that will go out into the world completely dependent on them