diff --git a/server-ce/Gruntfile.coffee b/server-ce/Gruntfile.coffee index 61be652c2d..3b3339e417 100644 --- a/server-ce/Gruntfile.coffee +++ b/server-ce/Gruntfile.coffee @@ -171,18 +171,22 @@ module.exports = (grunt) -> return callback(error) if error? Helpers.installNpmModules service, (error) -> return callback(error) if error? - Helpers.runGruntInstall service, (error) -> + Helpers.rebuildNpmModules service, (error) -> return callback(error) if error? - callback() + Helpers.runGruntInstall service, (error) -> + return callback(error) if error? + callback() updateService: (service, callback = (error) ->) -> Helpers.updateGitRepo service, (error) -> return callback(error) if error? Helpers.installNpmModules service, (error) -> return callback(error) if error? - Helpers.runGruntInstall service, (error) -> + Helpers.rebuildNpmModules service, (error) -> return callback(error) if error? - callback() + Helpers.runGruntInstall service, (error) -> + return callback(error) if error? + callback() cloneGitRepo: (service, callback = (error) ->) -> repo_src = service.repo @@ -225,13 +229,21 @@ module.exports = (grunt) -> proc = spawn "git", ["push", "--tags"], cwd: dir, stdio: "inherit" proc.on "close", () -> callback() - + installNpmModules: (service, callback = (error) ->) -> dir = service.name proc = spawn "npm", ["install"], stdio: "inherit", cwd: dir proc.on "close", () -> callback() - + + # work around for https://github.com/npm/npm/issues/5400 + # where binary modules are not built due to bug in npm + rebuildNpmModules: (service, callback = (error) ->) -> + dir = service.name + proc = spawn "npm", ["rebuild"], stdio: "inherit", cwd: dir + proc.on "close", () -> + callback() + createDataDirs: (callback = (error) ->) -> DIRS = [ "tmp/dumpFolder" diff --git a/server-ce/README.md b/server-ce/README.md index 84dff1826b..5592c47b73 100644 --- a/server-ce/README.md +++ b/server-ce/README.md @@ -26,6 +26,8 @@ ShareLaTeX should run on OS X and Linux. You need: * A local instance of [Redis](http://redis.io/topics/quickstart) (version 2.6.12 or later) and [MongoDB](http://docs.mongodb.org/manual/installation/) running on their standard ports. * [TeXLive](https://www.tug.org/texlive/) 2013 or later with the `latexmk` program installed. +ShareLaTeX needs a minimum of 2gb of memory, it is likely to be more than that though depending on usage. + Other repositories ------------------ @@ -78,6 +80,10 @@ The backend API for managing project tags (folders). An API for running server-side spelling checking on ShareLaTeX documents. +Dropbox +------- + +Please note that certain features like Dropbox integration are not functional in the open source code base yet, despite appearing in the user interface. We're working on this, sorry! Contributing ------------