Skip to content

Latest commit

 

History

History
104 lines (76 loc) · 4.91 KB

HACKING.md

File metadata and controls

104 lines (76 loc) · 4.91 KB

#Want to help on DuckieTV ? ###Feel free to send pull requests!

DuckieTV is built with Angular.js and Bootstrap.css On top of that, the following libraries (and their dependencies) are used (these are placed in the js/vendor folder):

If you want to get a quick overview of how events work within DuckieTV check out events.md: https://github.com/SchizoDuckie/DuckieTV/blob/angular/EVENTS.md On top of that, you can check out the dependency graph on [http://duckietv.github.io/DuckieTV/](The DuckieTV live Demo) using the awesome angularjs-dependency-graph

Hacking on DuckieTV

If you want to run and hack on DuckieTV standalone yourself, the process is really simple:

Running DuckieTV from Git as a new-tab Chrome extension

This is the easiest way to get going. DuckieTV will install itself as your new-tab page and run directly from git source.

  • Clone the repository or download and extract the latest HEAD as a .zip file
  • Fire up chrome
  • go to chrome://extensions
  • Enable 'developer mode' by checking the checkbox if not already enabled
  • click the 'Load unpacked extension' button, and point it to the DuckieTV directory
  • Click OK and fire up a new tab. DuckieTV should be running.

Running DuckieTV from Git as a browser-action Chrome extension

  • Execute all the steps above for the 'new tab' version
  • rename manifest-app.json to manifest.json (delete the original manifest.json)
  • optionally add manifest.json and manifest-app.json to .gitignore

Running DuckieTV-Standalone in dev mode

  • Clone the repo
  • Download nw.js for your platform
  • Extract all files to the freshly cloned DuckieTV directory
  • run nw.exe or ./nw
  • Now you can just work in the directory and pull repo updates

Building DuckieTV-Standalone

If you want to build the setups and files that are deployed on github yourself there are some dependencies:

  • wine 1.7 (for embedding .ico file in the windows .exe)
  • bomutils (to be able to build a mac compatible installer)
  • libxml2-dev and libssl-dev
  • nsis (for building installers for windows)
sudo add-apt-repository ppa:ubuntu-wine/ppa
sudo apt-get update
sudo apt-get install wine1.7 
git clone https://github.com/hogliux/bomutils && cd bomutils && make && sudo make install
sudo apt-get install libxml2-dev libssl-dev
sudo apt-get install nsis

##Building individual releases:

Gulp is used as the generic utility library. Make sure you have the local dependencies set up by running

npm install

Then, to prepare the release, concat the scripts and css, and put platform specific patches into place execute

gulp deploy

This does all the actual concatting and renaming work and puts files in place for all the platforms and flavours DuckieTV runs as:

  • Chrome Browseraction
  • Chrome New Tab
  • Standalone (Via nw.js)
  • Android (Via Cordova)

Once you have this, execute the individual build scripts to create setup installers

cd build/
./build_chrome_browseraction.sh
./build_chrome_newtab.sh
./build_windows.sh
./build_mac.sh
./build_linux.sh

The command push-cordova.sh is a shell script that force pushes the cordova output from gulp deploy in ../deploy/cordova/ to the repository that's connected to Adobe's Phonegap Build system.

You can see the latest builds here: https://build.phonegap.com/apps/1473540/share

Rebuilding the APK is a matter of logging in with the permitted account on http://build.phonegap.com/, refreshing the repostory with a click of the button, unlocking the deploy key by entering the password for the keychain and hitting the rebuild button. You can do this with your own account to verify the process, just add https://github.com/SchizoDuckie/DuckieTV-Cordova as your git source.