Comment As a CS Junior (Score 1) 467
If you are not running Linux in a Virtual Machine do it. then they can take root control when ever they want Mess up there config and then go back to a save point or just reinstall without messing up others work. Install Some current and older versions of them as as files to distribute. If this is a class where they should be comfortable messing around with things, stuff will get messed up but they should try to fix it first, then restore/reinstall. Slackware a few years back was a good one for CS people who wanted to learn there was little in the way of gui config programs so you would look on pages like linuxquestions and retype parts of config files to make it do what you wanted. it also did not have package utilities so you would have to compile your own code and find what it depends on. But the big thing is if they are CS students they should not be afraid of there computers, they should be able to complete most any task they can in windows by using the open sourced programs that are out there like Libre office, Fire fox, Gimp, etc. they should know that wine exists but take pride in using it as little as possible. Hopefully they will use linux as a 2nd os on there computer or on a virtual machine (Some laptops still have issues with linux so a VM helps solve those problems) and most of the open sourced programs are also around for windows so they can use those in there every day life.
Hope that gives some ideas of what I would look for in a class like that as a CS Junior .