From 74b1ad5d9cba28faa9ae2f29f922f3423f3d2e4e Mon Sep 17 00:00:00 2001 From: Stefan Date: Thu, 13 Dec 2018 17:21:02 +0100 Subject: Fix windows dictionary install --- gulpfile.babel.js | 30 ++++++++++++++++++++++-------- 1 file changed, 22 insertions(+), 8 deletions(-) (limited to 'gulpfile.babel.js') diff --git a/gulpfile.babel.js b/gulpfile.babel.js index fc2820fed..74b183a1d 100644 --- a/gulpfile.babel.js +++ b/gulpfile.babel.js @@ -6,9 +6,10 @@ import server from 'gulp-server-livereload'; import { exec } from 'child_process'; import dotenv from 'dotenv'; import sassVariables from 'gulp-sass-variables'; -import { removeSync } from 'fs-extra'; +import { moveSync, removeSync } from 'fs-extra'; import kebabCase from 'kebab-case'; import hexRgb from 'hex-rgb'; +import path from 'path'; import config from './package.json'; @@ -45,6 +46,7 @@ const paths = { }; function _shell(cmd, cb) { + console.log('executing', cmd); exec(cmd, { cwd: paths.dest, }, (error, stdout, stderr) => { @@ -141,13 +143,25 @@ export function dictionaries(done) { let packages = ''; Object.keys(SPELLCHECKER_LOCALES).forEach((key) => { packages = `${packages} hunspell-dict-${key}`; }); - _shell(` - rm -rf ${paths.dictionaries} - npm install --prefix ${paths.dictionaries} ${packages} - mv ${paths.dictionaries}/node_modules/* ${paths.dictionaries} - rm -rf ${paths.dictionaries}/node_modules ${paths.dictionaries}/package-lock.json - pwd`, - done); + if (process.platform !== 'win32') { + _shell(` + rm -rf ${paths.dictionaries} + npm install --prefix ${path.join(__dirname, paths.dictionaries)} ${packages} + mv ${paths.dictionaries}/node_modules/* ${paths.dictionaries} + rm -rf ${paths.dictionaries}/node_modules ${paths.dictionaries}/package-lock.json`, + done); + } else { + _shell(`npm install --prefix ${path.join(__dirname, 'temp')} ${packages}`, () => { + moveSync( + path.join(__dirname, 'temp', 'node_modules'), + path.join(__dirname, 'build', paths.dictionaries) + ); + + removeSync(path.join(__dirname, 'temp')); + + done(); + }); + } } export function sign(done) { -- cgit v1.2.3-70-g09d2