[Esbox-commits] r1006 - branches/work_Jeff/org.maemo.esbox.help/html/gettingstarted

jeffc at garage.maemo.org jeffc at garage.maemo.org
Mon Dec 1 20:00:27 EET 2008


Author: jeffc
Date: 2008-12-01 20:00:26 +0200 (Mon, 01 Dec 2008)
New Revision: 1006

Added:
   branches/work_Jeff/org.maemo.esbox.help/html/gettingstarted/virtualmachine.html
Log:
info for running esbox on other OSes

Added: branches/work_Jeff/org.maemo.esbox.help/html/gettingstarted/virtualmachine.html
===================================================================
--- branches/work_Jeff/org.maemo.esbox.help/html/gettingstarted/virtualmachine.html	                        (rev 0)
+++ branches/work_Jeff/org.maemo.esbox.help/html/gettingstarted/virtualmachine.html	2008-12-01 18:00:26 UTC (rev 1006)
@@ -0,0 +1,74 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
+"http://www.w3.org/TR/html4/loose.dtd">
+<html>
+<head>
+	<meta name="copyright" content="Copyright (c) INdT 2007-2008. This page is made available under license. For full details see the LEGAL in the documentation book that contains this page." >
+	<meta http-equiv="Content-Language" content="en-us">
+	<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+    <title>Running ESbox on other operating systems</title>
+	<link rel="stylesheet" type="text/css" href="../help.css">
+</head>
+
+<body>
+<h2>Running ESbox on other operating systems</h2>
+<h3>Overview</h3>
+<P>The maemo SDK, scratchbox, and rootstraps only work on Linux/x86. If you want to use ESbox in Windows, or Linux/x86-64, then you can do this by hooking up ESbox with an appropriately configured virtual machine.</P>
+<P>ESbox exposes the concept of "Build Machines". For Linux/x86 hosts, the host serves as a build machine. For other hosts, only a virtual machine can be a build machine.</P>
+<P>ESbox will use an SSH connection with the virtual machine to perform builds, launch/debug applications, and configure sb1/sb2 rootstraps.</P>
+<P>Projects in Eclipse must be visible to both the host and the virtual machine (VM). This requires some folders to be shared between them.</P>
+<h3>Virtual machine configuration </h3>
+<P>The plan is to support VMware, QEMU, and VirtualBox. VMware is recommended for speed. QEMU is recommended for freedom and ease of setup. VirtualBox is allowed but not directly supported since it does not appear to allow sharing virtual machine iamges.</P>
+<P>The maemo VMware image project (<A 
+href="http://maemosdk.garage.maemo.org">http://maemosdk.garage.maemo.org</A>) will release a new edition (after v0.9) which provides an image optimized for maemo SDK building and application launching. It will not include a GUI or other end-user applications but will be minimally configured for ESbox.</P>
+<P>The amount of setup needed for a VM to work properly is not trivial, but a stock image should work as long as it has SSH and Samba support. For SSH the "UseDNS" flag should be turned off, and to support Samba, you need an often-running cron job to resynchronize the clock with the host, to avoid timestamp issues when building.</P>
+<h3>Windows configuration </h3>
+<UL>
+  <LI>VMware Player, Server, and Workstation are supported (tested with version 6) </LI>
+</UL>
+<UL>
+  <LI>QEMU is supported. Tested with QEMU 0.9.1-windows (<A 
+href="http://www1.interq.or.jp/t-takeda/qemu/qemu-0.9.1-windows.zip">http://www1.interq.or.jp/t-takeda/qemu/qemu-0.9.1-windows.zip</A>) and the acceleration module KQemu-1.3.0pre11-install.exe (<A 
+href="http://www.h6.dion.ne.jp/~kazuw/qemu-win/Kqemu-1.3.0pre11-install.exe">http://www.h6.dion.ne.jp/~kazuw/qemu-win/Kqemu-1.3.0pre11-install.exe</A>). </LI>
+</UL>
+<UL>
+  <LI>An X server is needed to launch the Maemo emulator. The default settings assume you've installed Cygwin/X, with Cygwin at c:\cygwin. Edit ESbox &gt; X Server preferences to configure. </LI>
+</UL>
+<h3>ESbox (virtual) machine configuration </h3>
+<UL>
+  <LI>Configuration is under ESbox &gt; Build Machines. If you navigate here before configuring anything, or try to create a project and launch first, you need to select either VMware or QEMU as a virtual machine and adjust the configuration accordingly.</LI>
+</UL>
+<P>The Machine Access and Shared Folder settings should be optimally configured for QEMU already, but you may need to edit these depending on your configuration, especially in VMware where the network settings must be manually configured. </P>
+<UL>
+  <LI>Use the "Apply and Validate" button to run through a series of tests to validate that the machine is configured properly.</LI>
+</UL>
+<h3>ESbox Machine Access </h3>
+<P>The Machine Access tab allows you to configure the networking and authentication with the VM. </P>
+<P><EM>User</EM> is the account which acts as the agent for all operations with the VM. This must have passwordless "sudo" access. </P>
+<P><EM>Password</EM> is the account for the user account. <STRONG>NOTE</STRONG>: the password is saved in preferences but in an encrypted form, but, due to current design quirks, this password can still show up in <EM>plaintext</EM> in SSH filesystem URIs. </P>
+<P><EM>Target address</EM> is the address used to access the VM. This may be an IP address or a name. You will probably need to discover this experimentally unless you use a static address. </P>
+<P><EM>Target SSH port</EM> is the SSH port. This defaults to 2222. (The default for normal SSH usage is 22, but if the Target address is 127.0.0.1, this port must be remapped to avoid conflicts with the host.) </P>
+<P><EM>Host address</EM> is the name of the host as seen from the VM -- this is <strong>never</strong> 127.0.0.1. The value depends on the kind of networking you're using with the VM. For QEMU, the default is 10.0.2.2 since the IP is shared with the VM and a private subnet is used to reference the host. For VMware, it depends on the VMnet you have chosen. Probably you'll need to find this by logging into the VM (maemo/maemo) and invoking "ifconfig". </P>
+<P><EM>Target Samba port</EM> is used to allow sharing of files to and from the host. It's normally 139 or 445. It defaults to 4445, though, to allow two-way Samba access between the host and target when the target address is 127.0.0.1. </P>
+<h3>ESbox Shared Folders </h3>
+<P>Currently we require Eclipse projects to be visible to both the host and target. (Most Eclipse code assumes that all files are visible on the host. We don't yet support the notion of a project fully hosted remotely.) </P>
+<P>Additionally, the project must be visible to scratchbox. Sbox 1 has some restrictions here, but sbox 2 is looser. A convenient solution is to make the shared folder visible twice, once in a normal location under the user's home folder, and again in the parallel location visible to sbox 1. (The user's home should be shared identically amongst any sbox 1 target to maximize the benefit, else you need to share yet again for every rootstrap.) </P>
+<P>Thus, the Shared Folders portion of the VM configuration page will let ESbox know how to map paths. Each mapping is considered in order, so list sbox 1 mappings at the end. </P>
+<P>ESbox has some support for automatically mounting shares into the VM, since this is a commonly needed task when the VM is started and stopped. Note, however, ESbox will not configure shares for you or validate whether your settings make any sense -- the provided share must be manually configured. </P>
+<P><EM>Host</EM> tells the place where a share will be seen on the Eclipse host. </P>
+<P><EM>Target</EM> tells the place where a share will be seen on the VM. </P>
+<P><EM>Direction</EM> (the arrow in the middle) tells who provides the share. When it points to the target, the host is providing a share to the target, and vice versa. This is used when auto-mounting. </P>
+<P><EM>Name</EM> is the share name, as used in Samba/SMB. (e.g. "c:\users\shared" might be shared as "Public User Share".) If this is unspecified, the last segment of the share directory is used. </P>
+<P><EM>Auto</EM> tells whether ESbox will attempt to mount the share itself. Currently it can only handle mounts into Linux. If the mount is into Windows you need to set this up yourself (set to "No"). </P>
+<P><EM>Type</EM> is the share type. This is fixed to <EM>SMB</EM> for now. </P>
+<h3>Networking configuration </h3>
+<UL>
+  <LI>You need to be on a LAN for the PC &lt;-&gt; VM communication to work properly, as far as I know. Otherwise shared folders will not work and you'll get a lot of mysterious timeouts when trying to mount. </LI>
+</UL>
+<UL>
+  <LI>For VMware, you need to enable NAT and redirect SSH to port 2244 (or something &gt;1024). Edit &gt; Virtual Network Settings &gt; NAT &gt; &lt;host&gt; &gt; Edit &gt; Port Forwarding &gt; "Host Port = 2244, VM IP Addreess = &lt;actual runtime address :p&gt;:22" </LI>
+</UL>
+<UL>
+  <LI>VMware changes port mapping for the WHOLE SYSTEM so if you switch between QEMU and VMware, you must use different SSH ports. </LI>
+</UL>
+</body>
+</html>


Property changes on: branches/work_Jeff/org.maemo.esbox.help/html/gettingstarted/virtualmachine.html
___________________________________________________________________
Name: svn:mime-type
   + text/plain



More information about the Esbox-commits mailing list