Menu icon Foundation
Sudden problems with CLI installation RE: Bower

I have searched extensively for a concise explanation of what might be happening, and keep coming up empty-handed, or else encounter long-winded and poorly written "explanations" that leave me further in the dark. So I'm appealing to the sensibilities of the Foundation community itself to help decipher what's going on...

As of two days ago, whenever I attempt to create a new Foundation Sites project using the Foundation CLI (which I have previously done without incident), I encounter a few issues.

Here is a transcript of the install process from Terminal.

Last login: Sun Oct 22 18:42:13 on ttys000

Michael-Borum:htdocs MichaelBorum$ foundation new

? What are you building today? A website (Foundation for Sites)

? What's the project called? (no spaces) MyTest

? Which template would you like to use? Basic Template: includes a Sass compiler

 

            .

           /|     ,

      , /|/  \/| /|       Thanks for using ZURB Foundation for Sites!

     /|/       |/ |       -------------------------------------------

 |___|            |___|   Let's set up a new project.

 \___|  ^^   ^^   |___/   It shouldn't take more than a minute.

     | -[O]--[O]- |

     |    ___,    |

     |    ...     |

      \__________/

 

 

Downloading the project template...

Done downloading!

 

Installing dependencies...

 

|

> node-sass@3.13.1 install /Applications/MAMP/htdocs/MyTest/node_modules/gulp-sass/node_modules/node-sass

> node scripts/install.js

 

Cached binary found at /Users/MichaelBorum/.npm/node-sass/3.13.1/darwin-x64-48_binding.node

 

> node-sass@3.13.1 postinstall /Applications/MAMP/htdocs/MyTest/node_modules/gulp-sass/node_modules/node-sass

> node scripts/build.js

 

Binary found at /Applications/MAMP/htdocs/MyTest/node_modules/gulp-sass/node_modules/node-sass/vendor/darwin-x64-48/binding.node

Testing binary

Binary is fine

gulp-load-plugins@1.5.0 node_modules/gulp-load-plugins

├── array-unique@0.2.1

├── has-gulplog@0.1.0 (sparkles@1.0.0)

├── gulplog@1.0.0 (glogg@1.0.0)

├── fancy-log@1.3.0 (time-stamp@1.1.0, chalk@1.1.3)

├── findup-sync@0.4.3 (is-glob@2.0.1, detect-file@0.1.0, resolve-dir@0.1.1)

├── resolve@1.4.0 (path-parse@1.0.5)

└── micromatch@2.3.11 (is-glob@2.0.1, is-extglob@1.0.0, filename-regex@2.0.1, extglob@0.3.2, expand-brackets@0.1.5, arr-diff@2.0.0, normalize-path@2.1.1, kind-of@3.2.2, object.omit@2.0.1, regex-cache@0.4.4, parse-glob@3.0.4, braces@1.8.5)

 

gulp@3.9.1 node_modules/gulp

├── interpret@1.0.4

├── pretty-hrtime@1.0.3

├── deprecated@0.0.1

├── archy@1.0.0

├── tildify@1.2.0 (os-homedir@1.0.2)

├── minimist@1.2.0

├── v8flags@2.1.1 (user-home@1.1.1)

├── semver@4.3.6

├── chalk@1.1.3 (escape-string-regexp@1.0.5, ansi-styles@2.2.1, supports-color@2.0.0, strip-ansi@3.0.1, has-ansi@2.0.0)

├── orchestrator@0.3.8 (stream-consume@0.1.0, sequencify@0.0.7, end-of-stream@0.1.5)

├── gulp-util@3.0.8 (array-differ@1.0.0, object-assign@3.0.0, lodash._reevaluate@3.0.0, lodash._reinterpolate@3.0.0, beeper@1.1.1, array-uniq@1.0.3, lodash._reescape@3.0.0, replace-ext@0.0.1, dateformat@2.2.0, has-gulplog@0.1.0, fancy-log@1.3.0, vinyl@0.5.3, gulplog@1.0.0, lodash.template@3.6.2, through2@2.0.3, multipipe@0.1.2)

├── vinyl-fs@0.3.14 (strip-bom@1.0.0, vinyl@0.4.6, defaults@1.0.3, graceful-fs@3.0.11, through2@0.6.5, mkdirp@0.5.1, glob-stream@3.1.18, glob-watcher@0.0.6)

└── liftoff@2.3.0 (lodash.isstring@4.0.1, lodash.isplainobject@4.0.6, lodash.mapvalues@4.6.0, extend@3.0.1, rechoir@0.6.2, flagged-respawn@0.3.2, fined@1.1.0, resolve@1.4.0, findup-sync@0.4.3)

 

gulp-autoprefixer@3.1.1 node_modules/gulp-autoprefixer

├── vinyl-sourcemaps-apply@0.2.1 (source-map@0.5.7)

├── through2@2.0.3 (xtend@4.0.1, readable-stream@2.3.3)

├── postcss@5.2.18 (js-base64@2.3.2, supports-color@3.2.3, source-map@0.5.7, chalk@1.1.3)

├── gulp-util@3.0.8 (array-differ@1.0.0, beeper@1.1.1, array-uniq@1.0.3, lodash._reescape@3.0.0, lodash._reevaluate@3.0.0, lodash._reinterpolate@3.0.0, object-assign@3.0.0, replace-ext@0.0.1, dateformat@2.2.0, has-gulplog@0.1.0, fancy-log@1.3.0, minimist@1.2.0, vinyl@0.5.3, chalk@1.1.3, gulplog@1.0.0, lodash.template@3.6.2, multipipe@0.1.2)

└── autoprefixer@6.7.7 (normalize-range@0.1.2, num2fraction@1.2.2, postcss-value-parser@3.3.0, browserslist@1.7.7, caniuse-db@1.0.30000749)

 

gulp-sass@2.3.2 node_modules/gulp-sass

├── lodash.clonedeep@4.5.0

├── vinyl-sourcemaps-apply@0.2.1 (source-map@0.5.7)

├── through2@2.0.3 (xtend@4.0.1, readable-stream@2.3.3)

├── gulp-util@3.0.8 (array-differ@1.0.0, lodash._reescape@3.0.0, beeper@1.1.1, array-uniq@1.0.3, object-assign@3.0.0, lodash._reinterpolate@3.0.0, lodash._reevaluate@3.0.0, replace-ext@0.0.1, dateformat@2.2.0, has-gulplog@0.1.0, fancy-log@1.3.0, minimist@1.2.0, vinyl@0.5.3, chalk@1.1.3, gulplog@1.0.0, lodash.template@3.6.2, multipipe@0.1.2)

└── node-sass@3.13.1 (get-stdin@4.0.1, lodash.assign@4.2.0, async-foreach@0.1.3, in-publish@2.0.0, chalk@1.1.3, nan@2.7.0, mkdirp@0.5.1, cross-spawn@3.0.1, glob@7.1.2, npmlog@4.1.2, meow@3.7.0, node-gyp@3.6.2, request@2.83.0, sass-graph@2.2.4, gaze@1.1.2)

/usr/local/lib/node_modules/foundation-cli/node_modules/bower/lib/node_modules/q/q.js:155

                throw e;

                ^

 

Error: EACCES: permission denied, open '/Users/MichaelBorum/.cache/bower/registry/registry.bower.io/lookup/motion-ui_9489e'

    at Error (native)

 

Here is what the project directory ends up looking like (where an arrow indicates a folder):

  • .bowerrcc
  • .gitignore
  • bower.json
  • CHANGELOG.md
  • > etc
  • gulpfile.js
  • index.html
  • > js
  • > node_modules
  • package.json
  • README.md
  • > scss

The project won't load properly in a browser because none of the files normally found in the directory "bower_components" are there--because the "bower_components" directory was not installed.

I don't know what this error suggests:

Error: EACCES: permission denied, open '/Users/MichaelBorum/.cache/bower/registry/registry.bower.io/lookup/motion-ui_9489e'

    at Error (native)

 

So if anyone can help with that I would appreciate it.

I have seen a notice when running the "foundation watch" command in other projects that Bower is deprecated and that I should migrate to using Yarn instead. Are these two related?

Despite not really understanding what that means--since Bower has always been an integral and automated aspect of a Foundation Sites project installation--I don't quite understand why a new project installation would continue to try to use Bower if it is deprecated.

Out of curiosity, I tried using Yeti Launch to create new Sites projects and it worked, but I was also informed that Yeti Launch is discontinued.

So, what are my/our options for installing new Foundation 6.4 Sites projects using the Foundation CLI? It doesn't seem to work as described any longer (unless my case is unique and something in my setup is corrupted, which I concede may be the case). Is there a newer, cleaner way to do this? Do I need to uninstall some things completely and reinstall others? What about older projects that still rely on Bower?

This may be a much bigger issue than I'm understanding at this point, meaning the whole move to Yarn and Webpack from Bower may be significant and I'm only scratching the surface. I just don't know what I don't know.

Thanks for reading!

Michael

foundation sitesfoundation clibowerYarnwebpack

I have searched extensively for a concise explanation of what might be happening, and keep coming up empty-handed, or else encounter long-winded and poorly written "explanations" that leave me further in the dark. So I'm appealing to the sensibilities of the Foundation community itself to help decipher what's going on...

As of two days ago, whenever I attempt to create a new Foundation Sites project using the Foundation CLI (which I have previously done without incident), I encounter a few issues.

Here is a transcript of the install process from Terminal.

Last login: Sun Oct 22 18:42:13 on ttys000

Michael-Borum:htdocs MichaelBorum$ foundation new

? What are you building today? A website (Foundation for Sites)

? What's the project called? (no spaces) MyTest

? Which template would you like to use? Basic Template: includes a Sass compiler

 

            .

           /|     ,

      , /|/  \/| /|       Thanks for using ZURB Foundation for Sites!

     /|/       |/ |       -------------------------------------------

 |___|            |___|   Let's set up a new project.

 \___|  ^^   ^^   |___/   It shouldn't take more than a minute.

     | -[O]--[O]- |

     |    ___,    |

     |    ...     |

      \__________/

 

 

Downloading the project template...

Done downloading!

 

Installing dependencies...

 

|

> node-sass@3.13.1 install /Applications/MAMP/htdocs/MyTest/node_modules/gulp-sass/node_modules/node-sass

> node scripts/install.js

 

Cached binary found at /Users/MichaelBorum/.npm/node-sass/3.13.1/darwin-x64-48_binding.node

 

> node-sass@3.13.1 postinstall /Applications/MAMP/htdocs/MyTest/node_modules/gulp-sass/node_modules/node-sass

> node scripts/build.js

 

Binary found at /Applications/MAMP/htdocs/MyTest/node_modules/gulp-sass/node_modules/node-sass/vendor/darwin-x64-48/binding.node

Testing binary

Binary is fine

gulp-load-plugins@1.5.0 node_modules/gulp-load-plugins

├── array-unique@0.2.1

├── has-gulplog@0.1.0 (sparkles@1.0.0)

├── gulplog@1.0.0 (glogg@1.0.0)

├── fancy-log@1.3.0 (time-stamp@1.1.0, chalk@1.1.3)

├── findup-sync@0.4.3 (is-glob@2.0.1, detect-file@0.1.0, resolve-dir@0.1.1)

├── resolve@1.4.0 (path-parse@1.0.5)

└── micromatch@2.3.11 (is-glob@2.0.1, is-extglob@1.0.0, filename-regex@2.0.1, extglob@0.3.2, expand-brackets@0.1.5, arr-diff@2.0.0, normalize-path@2.1.1, kind-of@3.2.2, object.omit@2.0.1, regex-cache@0.4.4, parse-glob@3.0.4, braces@1.8.5)

 

gulp@3.9.1 node_modules/gulp

├── interpret@1.0.4

├── pretty-hrtime@1.0.3

├── deprecated@0.0.1

├── archy@1.0.0

├── tildify@1.2.0 (os-homedir@1.0.2)

├── minimist@1.2.0

├── v8flags@2.1.1 (user-home@1.1.1)

├── semver@4.3.6

├── chalk@1.1.3 (escape-string-regexp@1.0.5, ansi-styles@2.2.1, supports-color@2.0.0, strip-ansi@3.0.1, has-ansi@2.0.0)

├── orchestrator@0.3.8 (stream-consume@0.1.0, sequencify@0.0.7, end-of-stream@0.1.5)

├── gulp-util@3.0.8 (array-differ@1.0.0, object-assign@3.0.0, lodash._reevaluate@3.0.0, lodash._reinterpolate@3.0.0, beeper@1.1.1, array-uniq@1.0.3, lodash._reescape@3.0.0, replace-ext@0.0.1, dateformat@2.2.0, has-gulplog@0.1.0, fancy-log@1.3.0, vinyl@0.5.3, gulplog@1.0.0, lodash.template@3.6.2, through2@2.0.3, multipipe@0.1.2)

├── vinyl-fs@0.3.14 (strip-bom@1.0.0, vinyl@0.4.6, defaults@1.0.3, graceful-fs@3.0.11, through2@0.6.5, mkdirp@0.5.1, glob-stream@3.1.18, glob-watcher@0.0.6)

└── liftoff@2.3.0 (lodash.isstring@4.0.1, lodash.isplainobject@4.0.6, lodash.mapvalues@4.6.0, extend@3.0.1, rechoir@0.6.2, flagged-respawn@0.3.2, fined@1.1.0, resolve@1.4.0, findup-sync@0.4.3)

 

gulp-autoprefixer@3.1.1 node_modules/gulp-autoprefixer

├── vinyl-sourcemaps-apply@0.2.1 (source-map@0.5.7)

├── through2@2.0.3 (xtend@4.0.1, readable-stream@2.3.3)

├── postcss@5.2.18 (js-base64@2.3.2, supports-color@3.2.3, source-map@0.5.7, chalk@1.1.3)

├── gulp-util@3.0.8 (array-differ@1.0.0, beeper@1.1.1, array-uniq@1.0.3, lodash._reescape@3.0.0, lodash._reevaluate@3.0.0, lodash._reinterpolate@3.0.0, object-assign@3.0.0, replace-ext@0.0.1, dateformat@2.2.0, has-gulplog@0.1.0, fancy-log@1.3.0, minimist@1.2.0, vinyl@0.5.3, chalk@1.1.3, gulplog@1.0.0, lodash.template@3.6.2, multipipe@0.1.2)

└── autoprefixer@6.7.7 (normalize-range@0.1.2, num2fraction@1.2.2, postcss-value-parser@3.3.0, browserslist@1.7.7, caniuse-db@1.0.30000749)

 

gulp-sass@2.3.2 node_modules/gulp-sass

├── lodash.clonedeep@4.5.0

├── vinyl-sourcemaps-apply@0.2.1 (source-map@0.5.7)

├── through2@2.0.3 (xtend@4.0.1, readable-stream@2.3.3)

├── gulp-util@3.0.8 (array-differ@1.0.0, lodash._reescape@3.0.0, beeper@1.1.1, array-uniq@1.0.3, object-assign@3.0.0, lodash._reinterpolate@3.0.0, lodash._reevaluate@3.0.0, replace-ext@0.0.1, dateformat@2.2.0, has-gulplog@0.1.0, fancy-log@1.3.0, minimist@1.2.0, vinyl@0.5.3, chalk@1.1.3, gulplog@1.0.0, lodash.template@3.6.2, multipipe@0.1.2)

└── node-sass@3.13.1 (get-stdin@4.0.1, lodash.assign@4.2.0, async-foreach@0.1.3, in-publish@2.0.0, chalk@1.1.3, nan@2.7.0, mkdirp@0.5.1, cross-spawn@3.0.1, glob@7.1.2, npmlog@4.1.2, meow@3.7.0, node-gyp@3.6.2, request@2.83.0, sass-graph@2.2.4, gaze@1.1.2)

/usr/local/lib/node_modules/foundation-cli/node_modules/bower/lib/node_modules/q/q.js:155

                throw e;

                ^

 

Error: EACCES: permission denied, open '/Users/MichaelBorum/.cache/bower/registry/registry.bower.io/lookup/motion-ui_9489e'

    at Error (native)

 

Here is what the project directory ends up looking like (where an arrow indicates a folder):

  • .bowerrcc
  • .gitignore
  • bower.json
  • CHANGELOG.md
  • > etc
  • gulpfile.js
  • index.html
  • > js
  • > node_modules
  • package.json
  • README.md
  • > scss

The project won't load properly in a browser because none of the files normally found in the directory "bower_components" are there--because the "bower_components" directory was not installed.

I don't know what this error suggests:

Error: EACCES: permission denied, open '/Users/MichaelBorum/.cache/bower/registry/registry.bower.io/lookup/motion-ui_9489e'

    at Error (native)

 

So if anyone can help with that I would appreciate it.

I have seen a notice when running the "foundation watch" command in other projects that Bower is deprecated and that I should migrate to using Yarn instead. Are these two related?

Despite not really understanding what that means--since Bower has always been an integral and automated aspect of a Foundation Sites project installation--I don't quite understand why a new project installation would continue to try to use Bower if it is deprecated.

Out of curiosity, I tried using Yeti Launch to create new Sites projects and it worked, but I was also informed that Yeti Launch is discontinued.

So, what are my/our options for installing new Foundation 6.4 Sites projects using the Foundation CLI? It doesn't seem to work as described any longer (unless my case is unique and something in my setup is corrupted, which I concede may be the case). Is there a newer, cleaner way to do this? Do I need to uninstall some things completely and reinstall others? What about older projects that still rely on Bower?

This may be a much bigger issue than I'm understanding at this point, meaning the whole move to Yarn and Webpack from Bower may be significant and I'm only scratching the surface. I just don't know what I don't know.

Thanks for reading!

Michael

Rafi Benkual almost 2 years ago

 EACCESS is a permissioning error. But Bower is not a dependency of 6.4.3 so you don't need it. Just an NPM install. You could do a manual install from here: https://github.com/zurb/foundation-zurb-template#manual-setup