Re: Powerbox for SWT?
Ben Laurie <[email protected]>
| Newsgroups | gmane.comp.lang.e.general |
|---|---|
| Message-ID | <[email protected]> |
On 27 June 2010 23:26, Thomas Leonard <[email protected]> wrote: > On 27 June 2010 21:53, Mark Miller <[email protected]> wrote: >> On Sun, Jun 27, 2010 at 6:10 AM, Thomas Leonard <[email protected]> wrote: >>> >>> I had a go at integrating 0install with the new E loader stuff. >> >> Hi Thomas, what is 0install? > > Hi Mark, it's an installer I work on: > > http://0install.net/ Pretty neat. Since you have sandboxing ambitions, perhaps I should mention http://www.cl.cam.ac.uk/research/security/capsicum/. > > It's mainly used on Linux. For example, on a clean Ubuntu system, you > can run E like this: > > $ sudo apt-get install zeroinstall-injector > > $ 0launch http://repo.roscidus.com/e/e-core > ? > > Or, to run an SWT program you could do: > > $ 0launch http://repo.roscidus.com/e/e-swt myProg.e-swt > > You can install a short-cut called "rune" like this: > > $ 0alias rune http://repo.roscidus.com/e/e-swt > $ rune > ? > > 0launch will download the e.jar package, the correct SWT libraries for > the platform, and even Java itself if necessary. > > Each package name is a URI, which can be used to download a (signed) > XML file describing available versions and their dependencies. For > example, http://repo.roscidus.com/e/e-core contains: > > <group license="OSI Approved :: Mozilla Public License (MPL)" main="rune"> > <requires interface="http://repo.roscidus.com/java/openjdk-6-jre"> > <environment insert="bin/" mode="replace" name="RUNE_JRE_BIN"/> > </requires> > <implementation > id="sha1new=d0ecc18c74a4342bf2a08da8237aee11d9f32b27" > released="2009-12-30" version="0.9.2-post1"> > <archive href="http://repo.roscidus.com/e/e-core/E-core-0.9.2-post1.tar.bz2" > size="2933851" type="application/x-bzip-compressed-tar"/> > </implementation> > <implementation > id="sha1new=304c4433219b85bc7ebf7bc1d506ff2bc95aadb3" > released="2010-03-31" version="0.9.2-post2"> > <archive href="http://repo.roscidus.com/e/e-core/E-core-0.9.2-post2.tar.bz2" > size="2946251" type="application/x-bzip-compressed-tar"/> > </implementation> > [...] > </group> > > This says that there are two available versions of e-core (0.9.2-post1 > and 0.9.2-post2). Both depend on the OpenJDK JRE, and the rune script > should be told where Java is through the $RUNE_JRE_BIN environment > variable. > > 0launch downloads all the XML files, turns all the dependencies and > constraints into a huge boolean expression and runs a SAT solver on it > to select a set of compatible versions. Each package archive is then > downloaded to its own directory and the main process is invoked. > > Normally, each component is told where to find its dependencies by > setting environment variables, but in my experimental E installer we > instead pass the selected versions to an E launcher script that > creates E loaders instead. > > > -- > Dr Thomas Leonard ROX desktop / Zero Install > GPG: 9242 9807 C985 3C07 44A6 8B9A AE07 8280 59A5 3CC1 > GPG: DA98 25AE CAD0 8975 7CDA BD8E 0713 3F96 CA74 D8BA > _______________________________________________ > e-lang mailing list > [email protected] > http://www.eros-os.org/mailman/listinfo/e-lang >