diff --git a/README.md b/README.md
index ba8ad940..cd2ef75d 100644
--- a/README.md
+++ b/README.md
@@ -22,7 +22,7 @@ Building From Source
 If you do wish to build vector from source:
 
 1. Install or update `node.js` so that your `npm` is at least at version `2.0.0`
-1. Clone the repo: `git clone https://github.com/vector-im/vector-web.git` 
+1. Clone the repo: `git clone https://github.com/vector-im/vector-web.git`
 1. Switch to the vector directory: `cd vector-web`
 1. Install the prerequisites: `npm install`
 1. If you are using the `develop` branch of vector, you will probably need to
@@ -60,8 +60,6 @@ Much of the functionality in Vector is actually in the `matrix-react-sdk` and
 easy to track the `develop` branches in git and to make local changes without
 having to manually rebuild each time.
 
-[Be aware that there may be problems with this process under npm version 3.]
-
 First clone and build `matrix-js-sdk`:
 
 1. `git clone git@github.com:matrix-org/matrix-js-sdk.git`
@@ -123,10 +121,7 @@ day-to-day use; it is experimental and should be considered only as a
 proof-of-concept. See https://matrix.org/jira/browse/SPEC-162 for an overview
 of the current progress.
 
-To build a version of vector with support for end-to-end encryption, install
-the olm module with `npm i https://matrix.org/packages/npm/olm/olm-0.1.0.tgz`
-before running `npm start`. The olm library will be detected and used if
-available.
+Vector is built with support for end-to-end encryption by default.
 
 To enable encryption for a room, type
 
@@ -142,4 +137,4 @@ Note that historical encrypted messages cannot currently be decoded - history
 is therefore lost when the page is reloaded.
 
 There is currently no visual indication of whether encryption is enabled for a
-room, or whether a particular message was encrypted.
+room.
diff --git a/webpack.config.js b/webpack.config.js
index 297881f3..78282d18 100644
--- a/webpack.config.js
+++ b/webpack.config.js
@@ -2,8 +2,6 @@ var path = require('path');
 var webpack = require('webpack');
 var ExtractTextPlugin = require("extract-text-webpack-plugin");
 
-var olm_path = path.resolve('./node_modules/olm');
-
 module.exports = {
     module: {
         preLoaders: [
@@ -45,11 +43,6 @@ module.exports = {
 
             // same goes for js-sdk
             "matrix-js-sdk": path.resolve('./node_modules/matrix-js-sdk'),
-
-            // matrix-js-sdk will use olm if it is available,
-            // but does not explicitly depend on it. Pull it
-            // in from node_modules if it's there.
-            olm: olm_path,
         },
     },
     plugins: [
@@ -65,20 +58,17 @@ module.exports = {
 
         // olm.js includes "require 'fs'", which is never
         // executed in the browser. Ignore it.
-        new webpack.IgnorePlugin(/^fs$/, /node_modules\/olm$/)
+        new webpack.IgnorePlugin(/^fs$/, /\/olm$/)
     ],
     devtool: 'source-map'
 };
 
-// ignore olm.js if it's not installed.
-(function() {
-    var fs = require('fs');
-    try {
-        fs.lstatSync(olm_path);
-        console.log("Olm is installed; including it in webpack bundle");
-    } catch (e) {
-        module.exports.plugins.push(
-            new webpack.IgnorePlugin(/^olm$/)
-        );
-    }
-}) ();
+// ignore olm.js if it's not installed, to avoid a scary-looking error.
+try {
+    require('olm');
+    console.log("Olm is installed; including it in webpack bundle");
+} catch (e) {
+    module.exports.plugins.push(
+        new webpack.IgnorePlugin(/^olm$/)
+    );
+}