From f1874eca8a3defdea94e5e50f5456d31c9b15453 Mon Sep 17 00:00:00 2001 From: Tom Robinson Date: Wed, 20 Jan 2010 15:18:51 -0800 Subject: [PATCH] Don't use sudo in jake install by default, add "sudo-install" task. --- Jakefile | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) diff --git a/Jakefile b/Jakefile index d6e0210a5..54161d8b7 100644 --- a/Jakefile +++ b/Jakefile @@ -1,9 +1,10 @@ #!/usr/bin/env narwhal var FILE = require("file"), - ENV = require("system").env, + SYSTEM = require("system"), OS = require("os"), - jake = require("jake"); + jake = require("jake"), + stream = require("term").stream; require(FILE.absolute("common.jake")); @@ -44,7 +45,19 @@ task ("install", ["CommonJS"], function() { // FIXME: require("narwhal/tusk/install").install({}, $COMMONJS); // Doesn't work due to some weird this.print business. - OS.system(["sudo", "tusk", "install", "--force", $BUILD_CJS_OBJECTIVE_J, $BUILD_CJS_CAPPUCCINO]); + if (OS.system(["tusk", "install", "--force", $BUILD_CJS_OBJECTIVE_J, $BUILD_CJS_CAPPUCCINO])) { + stream.print("\0red(Installation failed, possibly because you do not have permissions.\0)"); + stream.print("\0red(Try re-running using '\0yellow(jake sudo-install\0)'.\0)"); + OS.exit(1); //rake abort if ($? != 0) + } +}); + +task ("sudo-install", ["CommonJS"], function() +{ + // FIXME: require("narwhal/tusk/install").install({}, $COMMONJS); + // Doesn't work due to some weird this.print business. + if (OS.system(["sudo", "tusk", "install", "--force", $BUILD_CJS_OBJECTIVE_J, $BUILD_CJS_CAPPUCCINO])) + OS.exit(1); //rake abort if ($? != 0) }); // Documentation