################################ # RVM Setup: ################################
Install rvm (www.digitalocean.com/community/tutorials/how-to-use-rvm-to-manage-ruby-installations-and-environments-on-a-vps)
The first time:
rvm install ruby-2.4.9 rvm use ruby-2.4.9 bundle install
Thereafter:
rvm use ruby-2.4.9
You may have to be in a login shell for rvm to work properly:
bash --login rvm use ruby-2.4.9
################################ # Deployment: ################################
First, make sure your public RSA key is in /home/pi/.ssh/authorized_keys.
Commit and push your changes. Then:
ssh [email protected] -p 10110 cd jcradio git pull
Simply changing server source code should not require a server restart. If you do need to restart the server:
jcradio-stop do stuff jcradio-start
################################
You might also need to install nodejs… (At least Austin on P1G4 Ubuntu 20.04 had to. Otherwise the rake commands failed)
sudo apt install nodejs
################################
Ruby version: 2.4.9 Rails version: 4.2.8
To set up the database, run
rake db:setup rake db:migrate
To start the server, run
rails server
Note: if you do ‘bundle install`, it may try to update the version of rspotify’s dependency omniauth-oauth2 from 1.3.1 to 1.5.0. This version of omniauth-oauth2 does not currently work with rspotify. You must revert the version of this package back to 1.3.1 in ‘Gemfile.lock`.
TODO
Bugs Error if you search empty string Sometimes songs fail to be decrypted Batch requests so we're not constantly querying db Features xHistory of songs xNotify you again if it's almost your turn xPlots SQL query When adding a song, option "Override the first Letter" vs "I know, I don't care" Will help with anaylsis, and when Buddy just random shuffles your spotify Library Better Queue Search (filte rby first letter earlier) ie. Jeb's fix Buddy different tastes Optional variety, if say there are only 5 Z songs Shuffle your N recent liked songs Dependent: option to "I know, I don't care" Re-sync whole database of songs to use standardized first_letter calculation eg. "Move Like you want - Live" autopopulates to L Skip song ability notify all users who skipped the song Recommendations Encorporate min and max in audio features Encorporate genre seeds? Add loading icon Increment "last" counter Properly validate results, instead of having the server throw an error Settings Number of days warning Hide queue option