Skip to content


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse files

Edited README.txt via GitHub

  • Loading branch information...
commit f84cf78a21abdf425985974826968f1c1ab12638 1 parent dad346e
@cdsmith authored
Showing with 33 additions and 24 deletions.
  1. +33 −24 README.txt
57 README.txt
@@ -23,40 +23,47 @@ with other important applications.
How To Install:
-Sadly, installation has gotten a touch more difficult. You'll first need a
-modified version of the gloss library.
+First, you'll need a modified version of gloss, in order to use
+it with SafeHaskell.
-1. darcs get
-2. Change directories into the gloss-head directory
-3. Edit library/gloss.cabal and add the following lines right after the
- existing ghc-options line:
+1. cabal unpack gloss
+2. cd gloss-*
+3. Edit gloss.cabal and add 'Extensions: Trustworthy' to the executable section.
+4. cabal install
- If impl(ghc >= 7.2)
- ghc-options: -XTrustworthy
+Next, you need to tell GHC that you trust the 'base' and 'gloss' packages.
-4. Type 'cabal install' and wait for the install to complete.
-5. Type 'ghc-pkg trust base' to mark base as a trusted package.
-6. Type 'ghc-pkg trust gloss' to mark gloss as a trusted package.
+5. sudo ghc-pkg trust base
+6. ghc-pkg trust gloss
At this point, you'll have a "trustworthy" version of gloss installed, and have
marked base as "trusted". Note that this has security implications in case a
security vulnerability should be discovered in gloss or base, so technically
speaking you ought to vet at least the gloss source code (base has been
inspected already) to convince yourself it's okay. We'll wait for you to do
-that... okay, welcome back. Time to install the server.
+that... okay, welcome back.
-1. Check out this project into a directory.
-2. Change to that directory, and to the gloss-web-adapters package.
-3. Type 'cabal install'
-4. Change back to the top-level project directory.
-5. Type 'cabal install' again.
-3. When the build finishes, type "gloss-web" to run the server.
+Now you will want to build gloss-web-adapters, which is a small package that
+plays a role in the interface between gloss-web and user-submitted code.
+7. cd gloss-web-adapters
+8. cabal install
+9. ghc-pkg trust gloss-web-adapters
+10. cd ..
+Finally, it's time to install gloss-web itself.
+11. cabal install
+You can now run gloss-web from the current working directory. You can NOT run
+the copy that was installed in ~/.cabal/bin, since the application depends on
+a lot of relative paths.
+12. ./dist/build/gloss-web/gloss-web
The default port is 8000, so you can now visit 'http://localhost:8000' to
access the server.
-You MUST run the server from the project directory, as it uses relative
-directories to find its templates, temporary directory, etc.
How to Use:
@@ -70,16 +77,18 @@ How to Use:
If you don't see the image load when you click "Run", make sure you enable
JavaScript and disable any popup blockers, and that your browser is supported.
Supported browser versions are Firefox 6.0 or higher, and recent versions of
-Chrome, Safari, or Opera. Internet Explorer doesn't work. The Android browser
-works for pictures, but not for animations or simulations (but Firefox 6.0 on
-the Android operating system works fine).
+Chrome, Safari, or Opera. Other browsers may have limited functionality.
+Internet Explorer, for example, works for pictures, but not animations or
+simulations. The same is true for the Android browser, but Firefox 6.0 on
+the Android operating system works fine.
-Your source code stored in a cookie in your browser, so you'll be able to
+Your source code is stored in a cookie in your browser, so you'll be able to
quit, and go back later to finish editing. That said, though, cookies tend
to get deleted sometimes, so you probably want to keep another copy
elsewhere! (It's also stored on the server in the tmp directory, but you
can't get it from there through the web interface yet.)
How to Help:
Please sign in to comment.
Something went wrong with that request. Please try again.