Turbo Wookie
Manual.
We acknowledge that this manual is overly snarky.
To be used in the unfortunate case where you have to use this without one of the four developers.
If, for whatever totally unforeseeable future you happen to be in, the four initial developers are ... otherwise indisposed ... and you have to run Turbo Wookie without them, this might be of use to you.
That said, we take no responsibility if you can't, and especially if you can, get Turbo Wookie to run.
Prerequisites
To run Turbo Wookie at present you need the following:
- The Go compiler for your operating system (Turbo Wookie does not yet exist in binary form).
- MPD. Working. With its bin directory in your path. As in, you should be able to type
mpd
and it should either work or give you an error talking about missing config files. - A web browser. If you want to do frontend development, you'll need Dartium (a Chromium fork for running dart code).
- A plain text editor (you have to do some minor document editing).
Setup
Can you run mpd
and have stuff happen? What about go
? If not, read the prerequisites again, and ask the Internet for help. The Internet is known for a wanton cruelty being helpful.
mpd on OS X
Getting MPD installed to a runnable state with Turbo Wookie on MPD requires some non-obvious work. While you can build it from the source manually, we highly suggest using homebrew to install MPD. One might think that installing MPD using homebrew is as easy as brew install mpd
, and one would be correct, but only if you don't like http streaming audio. The suggested flags are:
brew install mpd --with-flac --with-lame --with-two-lame --with-vorbis
You may also want to install lame
, twolame
, and libvorbis
. Those are all encoders for streaming.
config.yaml
- Open the
backend/mpd
directory. - Copy
mpd.conf.example
tompd.conf
- Edit
mpd.conf
so that all values BEFORE line 57 start with your mpd directory, and end with the same filename/directory name as before (for example,db_file
should still end withdatabase.db
)
dart2js
This is only necessary if you've downloaded through git, and don't have the compiled JavaScript. If you don't have compiled JavaScript, you're going to need dart.
- If you don't have dart installed, install dart. And make sure it's in your path.
- Open the
frontend/turbo_wookie
directory. - Run
pub get
- Run
pub update
- Run
pub build
- If you get warnings here, ignore them. They're just warnings, and we don't know their cause.
Running Turbo Wookie (like, for realsies, yo.)
If this doesn't work, you probably screwed up the setup or prerequisites portion (to be fair, screwing up the setup is included in the prerequisites portion). There are no excuses.
- Open the
backend/
directory. - Run the command
go run server.go
- If you get errors saying you don't have the required libraries, run the following commands. You will need git installed, and in your path.
go get github.com/gorilla/mux
go get github.com/turbowookie/gompd/mpd
go get github.com/kylelemons/go-gypsy/yaml
- If you got errors running those command, make sure you have git installed and in your path. After you've made sure you have git installed, double check that you have git installed. If, after that double check, you still have errors, make sure Go is setup correctly. And try again.
- If you get errors saying you don't have the required libraries, run the following commands. You will need git installed, and in your path.
- Open your browser, and navigate to
http://localhost:9000
, or if that's not to your liking,http://127.0.0.1:9000
. If that's still not to your liking, ask your computer for your IP address, and navigate to that, plus:9000
, because the server's running on port 9000.