GithubHelp home page GithubHelp logo

m8e / rocketshow Goto Github PK

View Code? Open in Web Editor NEW

This project forked from ideadapt/rocketshow

0.0 2.0 0.0 178.79 MB

A system to automate your backtracks, lighting- and videoshow.

Home Page: http://www.rocketshow.net

License: GNU General Public License v3.0

Java 49.76% TypeScript 32.78% JavaScript 0.29% HTML 15.40% CSS 1.41% Shell 0.36%

rocketshow's Introduction

Rocket Show

An app to play shows including audio, video, lighting (e.g. DMX) and MIDI.

For developers

Development

Build

  1. Build the Java JAR: mvn install
  2. Start the backend server: java -jar rocketshow.jar
  3. Start web frontend server: cd src/main/webapp && npx ng serve

Check the state of the backend: http://localhost:8080/api/system/state
Open the web application: http://localhost:4200

Deployment

Seed directory

The seed directory structure '/dist/rocketshow' can be packed on a mac with this commands (assuming you're currently in the 'dist' directory):

COPYFILE_DISABLE=true tar -c --exclude='.DS_Store' -zf directory.tar.gz rocketshow

Raspberry Pi Image building

These steps describe how to build a Raspberry Pi image based on the DietPi distribution on a Mac OS X. Raspbian Light is not supported, because audio playback is laggy.

  1. Flash an image with DietPi 6.17 ARMv6-Stretch to an SD card.
  2. Remove the card from the Mac and add it again.
  3. There should now be a directory /Volumes/boot available
  4. Execute the shell script dist/install/prepare_dietpi_raspberry_image.sh
  5. This script prepared the configuration for Rocket Show.
  6. Safely remove the SD card and use a Raspberry Pi connected to the internet to boot it. According to DietPi, unfortunately there is currently no possibility to build the image without a Raspberry Pi.
  7. Let the Raspberry Pi finish its boot process and install all required software.
  8. SSH into it (username = root, password = dietpi) and run the following code:
cd /tmp
wget https://rocketshow.net/install/script/dietpi_raspberry.sh
chmod +x dietpi_raspberry.sh
./dietpi_raspberry.sh
rm -rf dietpi_raspberry.sh
sudo reboot
  1. Let the system start itself a first time, login again with ssh and shut down using shutdown -h now
  2. Add the SD card back to the Mac.
  3. Find its drive name with diskutil list.
  4. Unmount the disk. E.g. diskutil umountDisk /dev/disk2. 13 Create an image of the card. E.g. sudo dd if=/dev/disk2 of=/Users/vio/sdcard.img bs=512.
  5. Transfer the image to a Linux (e.g. VirtualBox), because gparted is needed for the next steps.
  6. Use https://raw.githubusercontent.com/Drewsif/PiShrink/master/pishrink.sh to shrink the image.
  7. Zip the image using gzip -9 rocketshow.img.

Update process

  • Add the release notes in update/currentversion2.xml and build the war ("mvn install")
  • Copy seed directory directory.tar.gz to rocketshow.net/install, if updated
  • Copy target/rocketshow.jar to rocketshow.net/update/rocketshow.jar
  • Copy install/.sh scripts to rocketshow.net/install/script/.sh, if updated
  • Copy update/currentversion2.xml to rocketshow.net/update/currentversion2.xml
  • Copy update/before.sh, update/after.sh to rocketshow.net/update/xy.sh, if updated
  • Copy the new complete image to rocketshow.net/install/images and change the file latest.php to link the new version
  • GIT merge DEV branch to MASTER
  • GIT tag with the current version
  • Switch to DEV and update POM and update/currentversion2.xml versions

Application

The built application should be uploaded to rocketshow.net/update and be named "rocketshow.jar". The file "currentversion2.xml" can be modified accordingly.

rocketshow's People

Contributors

ideadapt avatar moritzvieli avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.