GUIDE TO ACCESSING YOUR PROJECTS FROM OUTSIDE THE H110 LAB There are two ways to access lab files from outside the lab. 1) If you have a fast network connection and the X11 window system, you can use your computer as a screen to display the usual software as it runs on our lab computers. This is typically the easiest thing to do if you have a good network connection. 2) If you have slow (or no) network access or for some reason can't run X11, you can install a lot of the lab software on your computer and then work on the labs on your own computer. Details for Option 1: -------------------- It is possible to access your labs from any computer with a fast network connection and the X11 window system. X11 is installed by default on almost all Linux systems and other flavors of Unix EXCEPT MacOS; for MacOS it is typically an option that can be installed from the original software installation DVD. As far as we know, X11 does not come packaged with Microsoft Windows. There are various commercial and free packages that can be used to run X11 on MS Windows; "Xming" combined with portable putty for Xming seems to work for our students (see http://cs.haverford.edu/resources/H110/XMing_diy.html). To use this option, start X11, and in an "xterm" window, use the "ssh" command to connect to one of the lab machines (e.g., homer) like so: ssh -Y your-login-id@homer.cs.haverford.edu In the above, "your-login-id" should be replaced by the login id you enter before your password when you log in. Also, on MacOS 10.2 and earlier, you need to use "-X" instead of "-Y"; and on MS Windows, you may need to use a separate "ssh" application, such as "putty", to make this initial connection. Note that you may need to say "yes" when it asks about fingerprints or creating a ".ssh" directory, and then enter your password for the lab. If you are paranoid, you can check to make sure that the fingerprint is correct; at the time of the writing of this document, homer's is b6:bb:86:22:c0:9a:34:74:24:a2:02:cf:50:cd:6e:52, and marge's is 26:62:6a:d3:12:d5:10:25:c2:46:0f:69:22:9f:c4:55, but these will change when we do our next upgrade, hopefully in mid-December '07. Once you have your working ssh connection, any command you run in that terminal will be performed on our lab computer, with results displayed on your screen. You can run the program "hostname", which causes the computer to print its name, to confirm this. You can check the network performance by running the "xeyes" program, which draws eyes that follow your pointer around the screen --- if the eyes move smoothly, your network connection is probably good enough (click on the "close" button on the xeyes window to shut it off when you're done). At that point, you can type "eclipse", and it will start eclipse just as it does in the lab, and each time you do "save", that will save it on the lab computers. When you are done, quit from eclipse as usual, and then type "exit" at the xterm to disconnect from our lab. The full session might look like the one below, which I've made from the computer davew-laptop, except for two differences: First, I have things set up so that I don't have to enter my password, and Second, I didn't actually do any work in Eclipse; if you actually do work, you may see the occasional very verbose warning or error message get printed in your terminal. [davew-laptop:~/.ssh] davew% ssh -X davew@homer.cs.haverford.edu The authenticity of host 'homer.cs.haverford.edu (165.82.168.35)' can't be established. RSA key fingerprint is b6:bb:86:22:c0:9a:34:74:24:a2:02:cf:50:cd:6e:52. Are you sure you want to continue connecting (yes/no)? yes Warning: Permanently added 'homer.cs.haverford.edu,165.82.168.35' (RSA) to the list of known hosts. Linux homer 2.6.20-16-generic #2 SMP Thu Aug 30 23:16:15 UTC 2007 x86_64 The programs included with the Ubuntu system are free software; the exact distribution terms for each program are described in the individual files in /usr/share/doc/*/copyright. Ubuntu comes with ABSOLUTELY NO WARRANTY, to the extent permitted by applicable law. Last login: Fri Nov 9 12:34:27 2007 homer:~> hostname homer homer:~> xeyes homer:~> eclipse searching for compatible vm... testing /usr/lib/jvm/java-gcj...found homer:~> exit logout Connection to homer.cs.haverford.edu closed. [davew-laptop:~/.ssh] davew% Some Details for Option 2: ------------------------- The H110 software web page includes links for Eclipse, Python, and our logic.py file, which you'll need to install. You'll also need to install the "pydev" plug-in for Eclipse. Finally, you may also need to install separate software for ssh and cvs if your computer doesn't have these commands (but it may also be possible that Eclipse will work without them; we haven't thoroughly tested this). Once you have done all of this, you can then start Eclipse on your own computer, and enter all the things you entered when you first started using Eclipse in the lab, to set up the "CVS Repository Exploring" perspective. You can then use this perspective to obtain lab files for your machine, and then use "Team->Commit" to commit your work. WARNING: There is one BIG difference between doing this and working in our lab --- with this approach, your files are NOT automatically saved to the lab computer's disk, so you must communicate them back to the lab yourself. The easiest way to do this is to do a "Team->Commit" each time you stop working on _ANY_ computer (the lab or your own), and then EVERY time you start working on a lab, use "Team->Update" to obtain the changes you submitted from any other computer. If you happen to forget to do the Team->Update when you start working, or the Team->Commit when you finish, you will need to use the Team Synchronizing Perspective to merge the changes, and this can be rather tedious and potentially confusing. Also, any changes done but not submitted on one computer will not be available to the other computer.