My approach to this problem has been to rely on virtualization, via VS Code's remoting extension. So students install VS Code and then either:
* Install Haskell locally
* Install Docker; VS Code will handle launching the VM and such
* And the past semesters, purely online via GitHub Codespaces.
In my recent big classes, students have been evenly divided between using Haskell locally or installing Docker. This hasn't completely eliminated configuration issues, but it's minimized them; I'm hoping that moving towards Codespaces will better support those students.
For smaller classes, GitHub's educational allowance should be sufficient even if all your students are using CodeSpaces.
If you prefer (or are required) to do things locally, there's an alternative via Gitpod and Gitlab.
/g