<div dir="ltr">I highly recommend that you look into vagrantĀ <a href="https://www.vagrantup.com/" target="_blank">https://www.vagrantup.com/</a><div>Last time I helped run a class that needed standardized components, vagrant was the easiest choice. It's very uniform (everyone has the 'vagrant' user by default), automatically sets up sharing of directories, and allows for bring-up/tear-down/sshing in using very simple commands. You'll be able to post simple instructions that everyone will be able to follow.</div><div><br></div><div>I recommend sticking with an Ubuntu distribution. Anything else will be much harder to support.</div><div><br></div><div>Of course, a more ideal setting is to have everyone use the University's standard unix accounts, as those will be even more standardized. But this is a close second.</div><div><br></div><div>-Yotam</div></div><div class="gmail_extra"><br><div class="gmail_quote">On Tue, Sep 1, 2015 at 11:02 AM, Thranur Andul <span dir="ltr"><<a href="mailto:thranur@gmail.com" target="_blank">thranur@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div class="gmail_quote"><div dir="ltr"><div><div><div><div><div><div><div><div><div><div><div><div>Thank you for the advice.<br><br></div>To clarify what I'm looking for: I'm trying to make Linux usage as transparent as possible, exactly to avoid requiring much unix literacy, hence why I mentioned disk space usage. It's not so much an issue in itself, but if I wanted to distribute a static VM image with everything already installed, its size might become an issue.<br><br></div>For instance, Eclipse, which used to be a quite large application, has a download size of 270 MB. It does not include the JVM, but after decompressing I'd estimate it (Eclipse + JVM) at about 1 GB.<br><br></div><div>I don't know the exact size of Xcode, but some websites estimate it at 2-4 GB.<br></div><div><br></div>Visual Studio is probably the largest one, at about 6 GB.<br><br></div>Certainly, installing a Linux via a VM includes much more than an IDE + compiler + runtime, but if it requires 7GB, it's still a hard pill to swallow.<br><br></div>This brings me to another point: disk usage anxiety. Even with dynamic disk images, I'm afraid to give them a large size, so I end up worrying that it will run out of space. And the kinds of errors that happen in such situations are much less obvious to understand, especially for linux newbies. Should I just lose my fear and allow my disk images to dynamically grow to be as large as they want to be?<br><br></div>For those reasons, I asked about a minimalistic Linux with the lightest possible UI, to save on disk space as much as possible. It's not so much about CPU, which for the intended purposes should be mostly fine.<br><br></div>Finally, on the issue of transparency, another major difficulty I have when using a Linux VM is that the file systems are separate, so even if I tell the students to "just download that file and open it on your <Linux/OCaml-based application>", they'll either:<br></div><br></div>a) Download it using Windows, then not be able to find the file using the Linux application (or have to move it to a shared folder, which they often forget);<br></div>b) Be forced to use a browser inside Linux, which requires more disk space, setting up the browser, etc.<br><br></div>I never found it very easy to configure Samba shares on Linux or to set up the filesystem in a way that maximum sharing could be achieved with minimal user intervention, especially without knowing in advance some parameters such as host/username, etc. Which would make it even more complicated to set up in advance in a static VM image for that purpose.<br><br></div>Is there a better solution concerning transparency between Windows and Linux for OCaml usage purposes? E.g. using a Merlin-configured Emacs from Linux that could open a file downloaded via Windows and then compile an OCaml application that could easily read the files in a Windows directory to perform some action on them? It sounds almost like Cygwin, but that's another can of worms...<br><div><div><div><div><div><div><div><div><div><div><div><br><div><div><div><div class="gmail_extra">Any partial solutions or tips you can give me about each of these issues is already greatly useful to me. I usually end up finding some solutions myself, but it takes a lot of time searching and trying, and if someone had already done exactly the same thing before, well, I'd be glad to learn from them!<br><br></div><div class="gmail_extra">Best regards,<br></div><span class=""><span><div class="gmail_extra"><br><div class="gmail_quote">On Tue, Sep 1, 2015 at 3:27 PM, Mr. Herr <span dir="ltr"><<a href="mailto:misterherr@freenet.de" target="_blank">misterherr@freenet.de</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Caveat: this is a general answer, my point of view, and not done with OCaml<br>
<br>
It certainly is technically feasible, depending on your desktop hardware even easy to do.<br>
<br>
You need a VM software. I had good experiences with Virtualbox. With MS solutions you must find the right product for your Win version<br>
(Virtual PC or Hyperv ) - I don't think it will beat Virtualbox in your scenario.<br></blockquote><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
Disk space: starting from 3G for the OS and ~4G for the opam directory, this all depends directly on what you install.<br>
You need quite some compilers, make and tools, and devel packages. Do a pilot install, of course.<br></blockquote><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
Linux distro: any current distribution will do. Performance will not be much of an issue unless you have very weak desktops. I am using virtualbox on my old notebook. But some ocaml package compile times are quite long even on beefy machines (coq comes to mind).<br>
<br>
As for the desktop environment: lighter is better, but not an issue either, even on KDE you can turn off effects and background tasks to speed it up.<br>
Take what you and your students know.<br>
<br>
skipping "... usual software ... coq ..." - is it an ocaml introduction ? :-)<br>
<br>
But:<br>
<br>
There is a big risk of wasting time with subjects not in the centre of your course, especially Linux setup and use.<br>
<br>
This depends directly on the "unix/linux literacy" of your students.<br>
<br>
<br>
/Str.<br>
<br>
<br>
</blockquote></div><br></div></span></span></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div>
</div><br></div>
<br>_______________________________________________<br>
wg-windows mailing list<br>
<a href="mailto:wg-windows@lists.ocaml.org">wg-windows@lists.ocaml.org</a><br>
<a href="http://lists.ocaml.org/listinfo/wg-windows" rel="noreferrer" target="_blank">http://lists.ocaml.org/listinfo/wg-windows</a><br>
<br></blockquote></div><br></div>