googlecreativelab / coder

A simple way to make web stuff on Raspberry Pi
http://goo.gl/coder
Apache License 2.0
2.42k stars 275 forks source link

Problems when trying to run this on a MacBook. #4

Open umaar opened 10 years ago

umaar commented 10 years ago

Version of redis

$ redis-server -v
Redis server v=2.6.13 sha=00000000:0 malloc=libc bits=64

Version of node.

 $ node -v
v0.8.10

Starting coder.

$ cd coder-base
$ npm install
$ npm start

> coder-base@0.0.1 start /coder/coder-base
> node server.js

    13 Sep 10:06:29 - GET: /
13 Sep 10:06:29 - GET: undefined auth
13 Sep 10:06:29 - GET: addpassword auth
13 Sep 10:06:39 - GET: api/addpassword auth
Password:13 Sep 10:06:41 - GET: api/addpassword auth
Password:

I end up on this URL https://localhost:8081/app/auth/addpassword?firstuse, trying to save a new password doesn't seem to do anything.

Thanks.

jmstriegel commented 10 years ago

The auth program is sort of built around how the Raspberry Pi is configured. It expects there to be a "pi" user and to be able to set the password for it.

It's sort of outside of what we're doing for this version, but you're not the first to mention interest in a non-pi specific version. If you want to take a stab at configuring a standalone version of Coder, you'll need to make some changes to /apps/auth/app.js.

Specifically, you'll need to remove the pieces that set the pi password. See exports.api_changepassword_handler and exports.api_addpassword_handler. You'll basically need to do what's inside the setpipass exit handler, and ignore the rest. Let us know how it goes.

wjgeorge commented 10 years ago

I played with this too under Ubuntu, using http://chrismcleod.me/2013/09/13/run-coder-for-raspberry-pi-on-your-linux-pc as a guide.

I had to make sure I imported nodejs and nodejs-legacy packages. I noticed that the client prompted me for my unix password (as I am guessing it is doing above). I assume it is for the user that ran npm to set the pi user's password.

Not totally sure I would want this functionality on my laptop (user pi has full shell access).

In addition code adds some unusual restrictions on the password (one lower case, 2 uppercase/symbols, 6 chars long) Lifting this restriction required changes in the password app and some files in /static/

ericgundrum commented 10 years ago

I updated the wiki page, Load onto a device without installing OS, with info from my experience doing this on Mac OS X. The password stuff mentioned above comes from using sudo to set the pi account password. This is easily avoided with a simple, local code change to not use sudo. (I'm currently looking into a cleaner solution that could be integral to the mainline source tree.)

Also, I found no need for redis, Xcode or anything besides node (and npm). It really was quite nice and simple to get Coder running on a Mac.