Repository: Cloud-CV/EvalAI
Issue: gulp missing gem specification with from-source install
Root cause: Validation Gap

Pivoting from #1617 installation failure, I attempted to install from source on a docker image with only postres10.  Going through the steps on the main README.md, I hit an error in the npm/gem installation task.  Unfortunately, I don't know Ruby so I can't offer any deeper insights than just this CLI error.

```
root@499a761fe182:/evalai# gulp dev:runserver
[13:23:46] Using gulpfile /var/lib/postgres/data/evalai/gulpfile.js
[13:23:46] Starting 'dev:runserver'...
[13:23:46] Starting 'dev'...
[13:23:46] Starting 'clean'...
[13:23:46] Finished 'clean' after 54 ms
[13:23:46] Starting 'css'...
[13:23:46] Starting 'js'...
[13:23:46] Finished 'js' after 11 ms
[13:23:46] Starting 'html'...
[13:23:46] Finished 'html' after 1.78 ms
[13:23:46] Starting 'images'...
[13:23:46] Starting 'vendorjs'...
[13:23:46] Finished 'vendorjs' after 228 ms
[13:23:46] Starting 'vendorcss'...
[13:23:46] Finished 'vendorcss' after 44 ms
[13:23:46] Starting 'fonts'...
[13:23:46] Starting 'configDev'...
[13:23:46] Finished 'configDev' after 3.58 ms

events.js:165
      throw er; // Unhandled 'error' event
      ^
Error: Gem sass is not installed.
```

To remedy this, I have attempted to install `sass` and `node-sass` with commands like `npm install node-sass`.

Unfortunately, this leaves no option for trying the EvalAI platform at this time: can't add challenges to deployed version #1590, can't run from docker #1617, can't install from source (this issue).  

Hey @ezavesky ,
We are really sorry for your trouble. Also, we are working on the docker feature to get it working as soon as possible.
Moreover, regarding this error can you please try installing saas using `gem install sass`. please let me know if you still face some error. I will be happy to help.

Hey @ezavesky Were you able to setup the development environment for EvalAI ? 

Thank you for following up; I was unable to successfully execute your instructions due to installation issues (what version of Ruby, building of some specific gem, etc.), which sidetracked this progress.  I'm not giving up, but might prefer the more automated route of using the docker compose instructions instead.  

I agree. Sorry for the docker issue. I have been busy with other things for last few days and could not get it fixed. I will try to get it fixed today so that it would be easier for you to deploy. 

Closing this issue. 

Just a follow-up, I think the issue is that some of the node modules are deprecated, like gulp-karma.  https://www.npmjs.com/package/gulp-karma

```
root@evalai-node-run:/evalai# npm install gulp karma
npm WARN deprecated graceful-fs@3.0.11: please upgrade to graceful-fs 4 for compatibility with current and future versions of Node.js
npm WARN deprecated minimatch@2.0.10: Please update to minimatch 3.0.2 or higher to avoid a RegExp DoS issue
npm WARN deprecated graceful-fs@1.2.3: please upgrade to graceful-fs 4 for compatibility with current and future versions of Node.js
npm WARN deprecated natives@1.1.3: This module relies on Node.js's internals and will break at some point. Do not use it, and update to graceful-fs@4.x.
evalai@1.0.0 /evalai
+-- gulp@3.9.1 
`-- UNMET PEER DEPENDENCY karma@1.7.1
  `-- chokidar@1.7.0
    `-- readdirp@2.1.0
      `-- readable-stream@2.3.6 
        `-- string_decoder@1.1.1 

npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@^1.0.0 (node_modules/chokidar/node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.1.3: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
npm WARN gulp-karma@0.0.5 requires a peer of karma@>=0.10 <=0.13 but none was installed.
npm WARN evalai@1.0.0 No repository field.

root@evalai-node-run:/evalai# npm install gulp-karma
npm WARN deprecated gulp-util@2.2.20: gulp-util is deprecated - replace it, following the guidelines at https://medium.com/gulpjs/gulp-util-ca3b1f9f9ac5
evalai@1.0.0 /evalai
+-- gulp-karma@0.0.5 
`-- UNMET PEER DEPENDENCY karma@1.7.1

npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@^1.0.0 (node_modules/chokidar/node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.1.3: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
npm WARN gulp-karma@0.0.5 requires a peer of karma@>=0.10 <=0.13 but none was installed.
npm WARN evalai@1.0.0 No repository field.
```

Thanks @ezavesky for pointing this out. We will prioritize this and try to get the packages updated.