Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
computer:shinobi_dvr [2019/01/20 05:39]
tdobes
computer:shinobi_dvr [2020/05/10 14:06] (current)
tdobes
Line 2: Line 2:
 <​code>​ <​code>​
 Install: Install:
-Debian ​9.container+Debian ​10.container
 4 cores, 8 GB disk, 2 GB RAM, 512 MB swap, big storage mountpoint on /mnt/dvr 4 cores, 8 GB disk, 2 GB RAM, 512 MB swap, big storage mountpoint on /mnt/dvr
  
Line 11: Line 11:
 aptitude update && aptitude forget-new && aptitude full-upgrade aptitude update && aptitude forget-new && aptitude full-upgrade
  
-aptitude install ​ca-certificates ​apt-transport-https +aptitude install apt-transport-https ​gnupg 
-echo 'deb https://​deb.nodesource.com/​node_8.x stretch ​main' > /​etc/​apt/​sources.list.d/​nodesource.list +echo 'deb https://​deb.nodesource.com/​node_12.x buster ​main' > /​etc/​apt/​sources.list.d/​nodesource.list 
-echo '​deb-src https://​deb.nodesource.com/​node_8.x stretch ​main' >> /​etc/​apt/​sources.list.d/​nodesource.list+echo '​deb-src https://​deb.nodesource.com/​node_12.x buster ​main' >> /​etc/​apt/​sources.list.d/​nodesource.list
 wget -O- https://​deb.nodesource.com/​gpgkey/​nodesource.gpg.key | apt-key add - wget -O- https://​deb.nodesource.com/​gpgkey/​nodesource.gpg.key | apt-key add -
 aptitude update aptitude update
  
 aptitude install git nodejs aptitude install git nodejs
-aptitude --without-recommends install ffmpeg # alternate plan: install static binaries to avoid tons of X11 deps 
 aptitude install mariadb-server mariadb-client aptitude install mariadb-server mariadb-client
 +
 +# this installs a ton of xorg deps:
 +# aptitude --without-recommends install ffmpeg
 +# alternate plan: install static binaries instead (from https://​johnvansickle.com/​ffmpeg/​)
 +wget https://​johnvansickle.com/​ffmpeg/​releases/​ffmpeg-release-amd64-static.tar.xz
 +tar -xJf ffmpeg-release-amd64-static.tar.xz
 +mv ffmpeg-*-amd64-static/​ffmpeg ffmpeg-*-amd64-static/​ffprobe /​usr/​local/​bin/​
 +rm -r ffmpeg-release-amd64-static.tar.xz ffmpeg-*-amd64-static/​
  
 # see https://​gitlab.com/​Shinobi-Systems/​Shinobi-Installer/​blob/​master/​shinobi-install.sh # see https://​gitlab.com/​Shinobi-Systems/​Shinobi-Installer/​blob/​master/​shinobi-install.sh
Line 25: Line 32:
 git clone https://​gitlab.com/​Shinobi-Systems/​Shinobi.git -b master /​opt/​shinobi git clone https://​gitlab.com/​Shinobi-Systems/​Shinobi.git -b master /​opt/​shinobi
 echo '​{"​Product":​ "​Shinobi Professional (Pro)",​ "​Branch":​ "​master",​ "​Version":​ "'​`GIT_DIR=/​opt/​shinobi/​.git git rev-parse HEAD`'",​ "​Date":​ "'​`date`'",​ "​Repository":​ "​https://​gitlab.com/​Shinobi-Systems/​Shinobi"​}'​ > /​opt/​shinobi/​version.json echo '​{"​Product":​ "​Shinobi Professional (Pro)",​ "​Branch":​ "​master",​ "​Version":​ "'​`GIT_DIR=/​opt/​shinobi/​.git git rev-parse HEAD`'",​ "​Date":​ "'​`date`'",​ "​Repository":​ "​https://​gitlab.com/​Shinobi-Systems/​Shinobi"​}'​ > /​opt/​shinobi/​version.json
 +shinobi_cron_key=`head -c 512 < /​dev/​urandom | base64 -w 0 | head -c 30`
 +sed -e '​s|change_this_to_something_very_random__just_anything_other_than_this|'​$shinobi_cron_key'​|'​ /​opt/​shinobi/​conf.sample.json > /​opt/​shinobi/​conf.json
 +cp /​opt/​shinobi/​super.sample.json /​opt/​shinobi/​super.json
  
 # see https://​gitlab.com/​Shinobi-Systems/​Shinobi/​blob/​master/​INSTALL/​ubuntu.sh # see https://​gitlab.com/​Shinobi-Systems/​Shinobi/​blob/​master/​INSTALL/​ubuntu.sh
 +# and https://​shinobi.video/​docs/​start#​content-ubuntu--the-harder-way
 # ...maybe use jq to manipulate json for config + stuff? # ...maybe use jq to manipulate json for config + stuff?
  
Line 32: Line 43:
 # TODO: test and do this stuff # TODO: test and do this stuff
 pushd /​opt/​shinobi pushd /​opt/​shinobi
 +# TODO: Fix this stuff so it uses custom db username/​pass and possibly custom db name
 mysql -u $sqluser -p$sqlpass -e "​source sql/​user.sql"​ # this has the MySQL username, password, and database name hardcoded mysql -u $sqluser -p$sqlpass -e "​source sql/​user.sql"​ # this has the MySQL username, password, and database name hardcoded
 mysql -u $sqluser -p$sqlpass -e "​source sql/​framework.sql"​ # this has the MySQL database name hardcoded mysql -u $sqluser -p$sqlpass -e "​source sql/​framework.sql"​ # this has the MySQL database name hardcoded
Line 43: Line 55:
 popd popd
 touch /​opt/​shinobi/​INSTALL/​installed.txt touch /​opt/​shinobi/​INSTALL/​installed.txt
 +
 +cp /​opt/​shinobi/​conf.sample.json /​opt/​shinobi/​conf.json
 +# TODO: edit /​opt/​shinobi/​conf.json
 +cp /​opt/​shinobi/​super.sample.json /​opt/​shinobi/​super.json
 +# TODO: edit /​opt/​shinobi/​super.json
 +# generating password in super.json: echo -n admin | md5sum | cut -d' ' -f1
  
 # we intentionally omit making a symlink for the INSTALL/​shinobi script because it assumes we installed to the default dir and are using PM2 # we intentionally omit making a symlink for the INSTALL/​shinobi script because it assumes we installed to the default dir and are using PM2
computer/shinobi_dvr.1547984362.txt.gz · Last modified: 2019/01/20 05:39 by tdobes
Recent changes RSS feed Driven by DokuWiki Valid XHTML 1.0 Valid CSS