You can clone with
HTTPS or Subversion.
I did not install geddy before so, I ran:
sudo npm install -g geddy
├── firstname.lastname@example.org (email@example.com)
└── firstname.lastname@example.org (email@example.com)
$ geddy app todo_app
Error: Command failed: /bin/sh: jake: command not found
at ChildProcess.exithandler (child_process.js:540:15)
at ChildProcess.EventEmitter.emit (events.js:96:17)
at maybeClose (child_process.js:638:16)
at Socket.ChildProcess.spawn.stdin (child_process.js:815:11)
at Socket.EventEmitter.emit (events.js:93:17)
at Socket._destroy.destroyed (net.js:357:10)
at process.startup.processNextTick.process._tickCallback (node.js:244:9)
I googled and found that there was a similar issue during 0.2:
The solution was to do a
sudo npm install -g jake
Thing is, should this issue be repeating? True, all it takes is some googling and deduction. However when following the tutorial at http://geddyjs.org/tutorial.html and hitting a show-stopper like this leaves a bad impression.
The npm auto install of jake should probably be removed and the tutorial edited to include:
geddy requires the jake module. Install jake globally:
sudo npm install -g jake
Right after the "npm install geddy" part.
You're right, this has historically been a big problem -- there's no way to specify that a dep in package.json has to be installed globally. Even the "prefer global" flag in Jake's package.json doesn't help this.
The newest version of Geddy (0.5), which will likely be out in the next couple of days doesn't have this problem, as it uses the local Jake pulled down by NPM. You can try this out by grabbing the latest master. We'd love to have more people banging on it before we release.
Not sure what do you mean by internal jake, but installing geddy will also install jake locally in npm_modules and I this should fix the mentioned problem.
As a side note, this gives you a weird warning saying that Jake should be installed globally, but it all works fine.
@mistermojo if you install from master, please use the tutorial in site/tutorial.html there were a few changes.
@MiguelMadero yes that's what I meant. If geddy has jake as a dependency, this shouldn't be a problem. But yeah you will still get the warning that says jake should be installed globally. That's an npm feature and usually it is true. But it's just a warning and can be ignored.
Installing Geddy has always given you a local copy of Jake, because it's in the package.json as a dependency. Previous to 0.5, it never actually used it, and expected to use the global jake CLI which you could only get by installing Jake globally. As of 0.5, Geddy uses the local Jake as a require'd program, not shelling out to the CLI.
I forgot about the change in the CLI. I thought the difference was because of the installation as well since the Makefile now npm install's jake.
@mde: I'll git-grab master directly from github then, thanks. (I'll close this now)
@MiguelMadero: Thanks for the tip. I'll follow the tutorial from 5.0's site/tutorial.html (and report any issues). Please put it on the website as soon as 0.5.0 is out to prevent confusion by noobs like me.
Sorry for reopening this but there's no site/tutorial.html only in site-old/tutorial.html. Where's the latest version?
Looks like "site" is @Techwraith's work on the new site that will be ready in a couple of days. The updated tutorial is in "site-old."