From 453a44dde3fc327150ed9e6e08caed85e2e85c58 Mon Sep 17 00:00:00 2001 From: Kevin Sawicki Date: Wed, 7 Jan 2015 16:53:50 -0800 Subject: [PATCH] Use special compile cache when sudo-ing as root --- src/coffee-cache.coffee | 7 +++++++ src/less-compile-cache.coffee | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/src/coffee-cache.coffee b/src/coffee-cache.coffee index 30e598cf5..c54c8708d 100644 --- a/src/coffee-cache.coffee +++ b/src/coffee-cache.coffee @@ -6,6 +6,11 @@ CSON = require 'season' fs = require 'fs-plus' cacheDir = path.join(fs.absolute('~/.atom'), 'compile-cache') + +# Use separate compile cache when sudo'ing as root to avoid permission issues +if process.env.USER is 'root' and process.env.SUDO_USER and process.env.SUDO_USER isnt process.env.USER + cacheDir = path.join(cacheDir, 'root') + coffeeCacheDir = path.join(cacheDir, 'coffee') CSON.setCacheDir(path.join(cacheDir, 'cson')) @@ -40,11 +45,13 @@ requireCoffeeScript = (module, filePath) -> module.exports = cacheDir: cacheDir + register: -> Object.defineProperty(require.extensions, '.coffee', { writable: false value: requireCoffeeScript }) + addPathToCache: (filePath) -> extension = path.extname(filePath) if extension is '.coffee' diff --git a/src/less-compile-cache.coffee b/src/less-compile-cache.coffee index 698f083e7..e07072637 100644 --- a/src/less-compile-cache.coffee +++ b/src/less-compile-cache.coffee @@ -8,7 +8,7 @@ module.exports = class LessCompileCache Subscriber.includeInto(this) - @cacheDir: path.join(atom.getConfigDirPath(), 'compile-cache', 'less') + @cacheDir: path.join(require('./coffee-cache').cacheDir, 'less') constructor: ({resourcePath, importPaths}) -> @lessSearchPaths = [