mirror of
https://github.com/NNTmux/newznab-tmux.git
synced 2026-08-29 01:08:56 +00:00
259 lines
12 KiB
Bash
Executable File
259 lines
12 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
SOURCE="${BASH_SOURCE[0]}"
|
|
DIR="$( dirname "$SOURCE" )"
|
|
while [ -h "$SOURCE" ]
|
|
do
|
|
SOURCE="$(readlink "$SOURCE")"
|
|
[[ $SOURCE != /* ]] && SOURCE="$DIR/$SOURCE"
|
|
DIR="$( cd -P "$( dirname "$SOURCE" )" && pwd )"
|
|
done
|
|
DIR="$( cd -P "$( dirname "$SOURCE" )" && pwd )"
|
|
|
|
if [ ! -f defaults.sh ]; then
|
|
clear
|
|
echo "Please copy config.sh to defaults.sh"
|
|
exit
|
|
fi
|
|
|
|
# Make sure only root can run our script
|
|
#if [[ $EUID -ne 0 ]]; then
|
|
#echo "This script must be run as root"
|
|
#This was removed by popular request, so don't complain
|
|
#exit 1
|
|
#fi
|
|
|
|
source config.sh
|
|
source defaults.sh
|
|
|
|
eval $( $SED -n "/^define/ { s/.*('\([^']*\)', '*\([^']*\)'*);/export \1=\"\2\"/; p }" "$NEWZPATH"/www/config.php )
|
|
|
|
if [[ $AGREED == "no" ]]; then
|
|
echo "Please edit the defaults.sh file"
|
|
exit
|
|
fi
|
|
|
|
#check if tmux session exists, attach if exists, create new if not exist
|
|
if $TMUXCMD -q has-session -t $TMUX_SESSION; then
|
|
$TMUXCMD attach-session -t $TMUX_SESSION
|
|
else
|
|
printf "The above is just a TMUX notice, it is saying TMUX, that you do not have a TMUX session currently running. It is not an error. It is TMUX"
|
|
printf "\033]0; $TMUX_SESSION\007\003\n"
|
|
$TMUXCMD -f $TMUX_CONF new-session -d -s $TMUX_SESSION -n Monitor 'printf "\033]2;Monitor\033\\" && cd bin && echo "Monitor Started" && echo "It might take a minute for everything to spinup......" && $NICE -n 19 $PHP monitor.php'
|
|
|
|
if [ ! -f $NEWZPATH/www/lib/postprocess.php.orig ]; then
|
|
cp $NEWZPATH/www/lib/postprocess.php $NEWZPATH/www/lib/postprocess.php.orig
|
|
fi
|
|
if ! grep -q '//$this->processAdditional();' "$NEWZPATH/www/lib/postprocess.php" ; then
|
|
$SED -i -e 's/$this->processAdditional();/\/\/$this->processAdditional();/' $NEWZPATH/www/lib/postprocess.php
|
|
fi
|
|
if ! grep -q '//$this->processNfos();' "$NEWZPATH/www/lib/postprocess.php" ; then
|
|
$SED -i -e 's/$this->processNfos();/\/\/$this->processNfos();/' $NEWZPATH/www/lib/postprocess.php
|
|
fi
|
|
if ! grep -q '//$this->processUnwanted();' "$NEWZPATH/www/lib/postprocess.php" ; then
|
|
$SED -i -e 's/$this->processUnwanted();/\/\/$this->processUnwanted();/' $NEWZPATH/www/lib/postprocess.php
|
|
fi
|
|
if ! grep -q '//$this->processMovies();' "$NEWZPATH/www/lib/postprocess.php" ; then
|
|
$SED -i -e 's/$this->processMovies();/\/\/$this->processMovies();/' $NEWZPATH/www/lib/postprocess.php
|
|
fi
|
|
if ! grep -q '//$this->processMusic();' "$NEWZPATH/www/lib/postprocess.php" ; then
|
|
$SED -i -e 's/$this->processMusic();/\/\/$this->processMusic();/' $NEWZPATH/www/lib/postprocess.php
|
|
fi
|
|
if ! grep -q '//$this->processBooks();' "$NEWZPATH/www/lib/postprocess.php" ; then
|
|
$SED -i -e 's/$this->processBooks();/\/\/$this->processBooks();/' $NEWZPATH/www/lib/postprocess.php
|
|
fi
|
|
if ! grep -q '//$this->processGames();' "$NEWZPATH/www/lib/postprocess.php" ; then
|
|
$SED -i -e 's/$this->processGames();/\/\/$this->processGames();/' $NEWZPATH/www/lib/postprocess.php
|
|
fi
|
|
if ! grep -q '//$this->processTv();' "$NEWZPATH/www/lib/postprocess.php" ; then
|
|
$SED -i -e 's/$this->processTv();/\/\/$this->processTv();/' $NEWZPATH/www/lib/postprocess.php
|
|
fi
|
|
if ! grep -q '//$this->processMusicFromMediaInfo();' "$NEWZPATH/www/lib/postprocess.php" ; then
|
|
$SED -i -e 's/$this->processMusicFromMediaInfo();/\/\/$this->processMusicFromMediaInfo();/' $NEWZPATH/www/lib/postprocess.php
|
|
fi
|
|
if ! grep -q '//$this->processOtherMiscCategory();' "$NEWZPATH/www/lib/postprocess.php" ; then
|
|
$SED -i -e 's/$this->processOtherMiscCategory();/\/\/$this->processOtherMiscCategory();/' $NEWZPATH/www/lib/postprocess.php
|
|
fi
|
|
if ! grep -q '//$this->processUnknownCategory();' "$NEWZPATH/www/lib/postprocess.php" ; then
|
|
$SED -i -e 's/$this->processUnknownCategory();/\/\/$this->processUnknownCategory();/' $NEWZPATH/www/lib/postprocess.php
|
|
fi
|
|
|
|
#create mysql my.conf
|
|
#this keeps your password from being displayed in ps, htop and others
|
|
echo -e '[client]\npassword='\"$DB_PASSWORD\" > ./conf/my.cnf
|
|
chmod 600 ./conf/my.cnf
|
|
|
|
#create powerline default.sh
|
|
if [ ! -f "powerline/powerline/themes/default.sh" ]; then
|
|
cp powerline/powerline/themes/default.start.sh powerline/powerline/themes/default.sh
|
|
fi
|
|
|
|
#Get the path to tmpunrar
|
|
TMPUNRAR_QUERY="SELECT value from site where setting = \"tmpunrarpath\";"
|
|
TMPUNRAR_PATH=`$MYSQL --defaults-file=conf/my.cnf -u$DB_USER -h$DB_HOST $DB_NAME -s -N -e "${TMPUNRAR_QUERY}"`
|
|
TMPUNRAR_PATH=$TMPUNRAR_PATH"1"
|
|
|
|
#determine if ramdisk is in fstab
|
|
if [[ `grep "$TMPUNRAR_PATH" /etc/fstab` ]]; then
|
|
if [[ ! `mount | grep "$TMPUNRAR_PATH"` ]]; then
|
|
mount "$TMPUNRAR_PATH"
|
|
fi
|
|
elif [[ $RAMDISK == "true" ]]; then
|
|
if [[ ! `mount | grep "$TMPUNRAR_PATH"` ]]; then
|
|
mount -t tmpfs -o size=256M tmpfs $TMPUNRAR_PATH
|
|
fi
|
|
fi
|
|
|
|
#remove postprocessing scripts
|
|
rm -f bin/lib/post*
|
|
rm -f bin/processAdditional*
|
|
rm -f bin/processAlternate*
|
|
|
|
#create postprocessing scripts
|
|
for (( c=2; c<=32; c++ ))
|
|
do
|
|
d=$((($c - 1) * 100))
|
|
cp $NEWZPATH/www/lib/postprocess.php bin/lib/postprocess$c.php
|
|
$SED -i -e "s/PostProcess/PostProcess$c/g" bin/lib/postprocess$c.php
|
|
$SED -i -e "s/echo \$iteration.*$/echo \$iteration --.\" \".\$rel['ID'].\" : \".\$rel['name'].\"\\\n\";/" bin/lib/postprocess$c.php
|
|
$SED -i -e "s/processAdditional/processAdditional$c/g" bin/lib/postprocess$c.php
|
|
$SED -i -e "s/\$tmpPath = \$this->site->tmpunrarpath;/\$tmpPath = \$this->site->tmpunrarpath; \\
|
|
\$tmpPath .= '1\/tmp$c';/g" bin/lib/postprocess$c.php
|
|
$SED -i -e "s/order by r.postdate desc limit %d.*\$/order by r.guid asc limit %d, %d \", (\$maxattemptstocheckpassworded + 1) * -1, $c * \$numtoProcess, \$numtoProcess));/g" bin/lib/postprocess$c.php
|
|
$SED -i -e "s/PostPrc : Performing additional post processing.*\$/PostPrc : Performing additional post processing by guid on \".\$rescount.\" releases, starting at $d ...\";/g" bin/lib/postprocess$c.php
|
|
|
|
cp bin/lib/additional bin/processAdditional$c.php
|
|
$SED -i -e "s/1/$c/g" bin/processAdditional$c.php
|
|
done
|
|
|
|
cp $NEWZPATH/www/lib/postprocess.php bin/lib/postprocess1.php
|
|
cp bin/lib/additional bin/processAdditional1.php
|
|
|
|
#edit postprocessing scripts
|
|
$SED -i -e 's/PostProcess/PostProcess1/g' bin/lib/postprocess1.php
|
|
$SED -i -e "s/echo \$iteration.*$/echo \$iteration --.\" \".\$rel['ID'].\" : \".\$rel['name'].\"\\\n\";/" bin/lib/postprocess1.php
|
|
$SED -i -e 's/processAdditional/processAdditional1/g' bin/lib/postprocess1.php
|
|
$SED -i -e "s/\$tmpPath = \$this->site->tmpunrarpath;/\$tmpPath = \$this->site->tmpunrarpath; \\
|
|
\$tmpPath .= '1\/tmp1';/g" bin/lib/postprocess1.php
|
|
$SED -i -e 's/order by r.postdate desc limit %d.*$/order by r.guid desc limit %d ", ($maxattemptstocheckpassworded + 1) * -1, $numtoProcess));/g' bin/lib/postprocess1.php
|
|
$SED -i -e 's/PostPrc : Performing additional post processing.*$/PostPrc : Performing additional post processing by guid on ".$rescount." releases ...";/g' bin/lib/postprocess1.php
|
|
|
|
#start tmux
|
|
#printf "\033]0; $TMUX_SESSION\007\003\n"
|
|
#$TMUXCMD -f $TMUX_CONF attach-session - $TMUX_SESSION || new-session -d -s $TMUX_SESSION -n $TMUX_SESSION 'cd bin && echo "Monitor Started" && echo "It might take a minute for everything to spinup......" && $NICE -n 19 $PHP monitor.php'
|
|
$TMUXCMD selectp -t 0
|
|
$TMUXCMD splitw -h -p 67 'printf "\033]2;update_binaries\033\\"'
|
|
|
|
$TMUXCMD selectp -t 0
|
|
$TMUXCMD splitw -v -p 33 'printf "\033]2;nzbcount\033\\"'
|
|
|
|
$TMUXCMD selectp -t 2
|
|
$TMUXCMD splitw -v -p 75 'printf "\033]2;backfill\033\\"'
|
|
$TMUXCMD splitw -v -p 67 'printf "\033]2;import-nzb\033\\"'
|
|
$TMUXCMD splitw -v -p 50 'printf "\033]2;update_releases\033\\"'
|
|
|
|
$TMUXCMD new-window -n other 'printf "\033]2;update_predb\033\\"'
|
|
$TMUXCMD splitw -h -p 50 'printf "\033]2;optimise\033\\"'
|
|
$TMUXCMD selectp -t 0
|
|
$TMUXCMD splitw -v -p 75 'printf "\033]2;update_parsing\033\\"'
|
|
$TMUXCMD splitw -v -p 67 'printf "\033]2;update_cleanup\033\\"'
|
|
$TMUXCMD splitw -v -p 50 'printf "\033]2;update_tv\033\\"'
|
|
$TMUXCMD selectp -t 4
|
|
$TMUXCMD splitw -v -p 75 'printf "\033]2;sphinx\033\\"'
|
|
$TMUXCMD splitw -v -p 67 'printf "\033]2;delete_parts\033\\"'
|
|
$TMUXCMD splitw -v -p 50 'printf "\033]2;update_missing_movie_info\033\\"'
|
|
|
|
$TMUXCMD new-window -n post1 'printf "\033]2;postprocessing[01]\033\\"'
|
|
$TMUXCMD selectp -t 0
|
|
$TMUXCMD splitw -v -p 75 'printf "\033]2;postprocessing[09]\033\\"'
|
|
$TMUXCMD splitw -v -p 67 'printf "\033]2;postprocessing[17]\033\\"'
|
|
$TMUXCMD splitw -v -p 50 'printf "\033]2;postprocessing[25]\033\\"'
|
|
$TMUXCMD selectp -t 0
|
|
$TMUXCMD splitw -h -p 88 'printf "\033]2;postprocessing[02]\033\\"'
|
|
$TMUXCMD splitw -h -p 85 'printf "\033]2;postprocessing[03]\033\\"'
|
|
$TMUXCMD splitw -h -p 83 'printf "\033]2;postprocessing[04]\033\\"'
|
|
$TMUXCMD splitw -h -p 80 'printf "\033]2;postprocessing[05]\033\\"'
|
|
$TMUXCMD splitw -h -p 75 'printf "\033]2;postprocessing[06]\033\\"'
|
|
$TMUXCMD splitw -h -p 67 'printf "\033]2;postprocessing[07]\033\\"'
|
|
$TMUXCMD splitw -h -p 50 'printf "\033]2;postprocessing[08]\033\\"'
|
|
$TMUXCMD selectp -t 8
|
|
$TMUXCMD splitw -h -p 88 'printf "\033]2;postprocessing[10]\033\\"'
|
|
$TMUXCMD splitw -h -p 85 'printf "\033]2;postprocessing[11]\033\\"'
|
|
$TMUXCMD splitw -h -p 83 'printf "\033]2;postprocessing[12]\033\\"'
|
|
$TMUXCMD splitw -h -p 80 'printf "\033]2;postprocessing[13]\033\\"'
|
|
$TMUXCMD splitw -h -p 75 'printf "\033]2;postprocessing[14]\033\\"'
|
|
$TMUXCMD splitw -h -p 67 'printf "\033]2;postprocessing[15]\033\\"'
|
|
$TMUXCMD splitw -h -p 50 'printf "\033]2;postprocessing[16]\033\\"'
|
|
$TMUXCMD selectp -t 16
|
|
$TMUXCMD splitw -h -p 88 'printf "\033]2;postprocessing[18]\033\\"'
|
|
$TMUXCMD splitw -h -p 85 'printf "\033]2;postprocessing[19]\033\\"'
|
|
$TMUXCMD splitw -h -p 83 'printf "\033]2;postprocessing[20]\033\\"'
|
|
$TMUXCMD splitw -h -p 80 'printf "\033]2;postprocessing[21]\033\\"'
|
|
$TMUXCMD splitw -h -p 75 'printf "\033]2;postprocessing[22]\033\\"'
|
|
$TMUXCMD splitw -h -p 67 'printf "\033]2;postprocessing[23]\033\\"'
|
|
$TMUXCMD splitw -h -p 50 'printf "\033]2;postprocessing[24]\033\\"'
|
|
$TMUXCMD selectp -t 24
|
|
$TMUXCMD splitw -h -p 88 'printf "\033]2;postprocessing[26]\033\\"'
|
|
$TMUXCMD splitw -h -p 85 'printf "\033]2;postprocessing[27]\033\\"'
|
|
$TMUXCMD splitw -h -p 83 'printf "\033]2;postprocessing[28]\033\\"'
|
|
$TMUXCMD splitw -h -p 80 'printf "\033]2;postprocessing[29]\033\\"'
|
|
$TMUXCMD splitw -h -p 75 'printf "\033]2;postprocessing[30]\033\\"'
|
|
$TMUXCMD splitw -h -p 67 'printf "\033]2;postprocessing[31]\033\\"'
|
|
$TMUXCMD splitw -h -p 50 'printf "\033]2;postprocessing[32]\033\\"'
|
|
|
|
$TMUXCMD new-window -n post2 'printf "\033]2;processNfos\033\\"'
|
|
$TMUXCMD splitw -h -p 50 'printf "\033]2;processTv\033\\"'
|
|
$TMUXCMD selectp -t 0
|
|
$TMUXCMD splitw -v -p 75 'printf "\033]2;processGames\033\\"'
|
|
$TMUXCMD splitw -v -p 67 'printf "\033]2;processMovies\033\\"'
|
|
$TMUXCMD splitw -v -p 50 'printf "\033]2;processMusic\033\\"'
|
|
$TMUXCMD selectp -t 4
|
|
$TMUXCMD splitw -v -p 75 'printf "\033]2;processBooks\033\\"'
|
|
$TMUXCMD splitw -v -p 67 'printf "\033]2;processOther\033\\"'
|
|
$TMUXCMD splitw -v -p 50 'printf "\033]2;processUnwanted\033\\"'
|
|
|
|
if [[ $USE_HTOP == "true" ]]; then
|
|
$TMUXCMD new-window -n htop '$HTOP'
|
|
fi
|
|
|
|
if [[ $USE_NMON == "true" ]]; then
|
|
$TMUXCMD new-window -n nmon '$NMON -t'
|
|
fi
|
|
|
|
if [[ $USE_BWMNG == "true" ]]; then
|
|
$TMUXCMD new-window -n bwm-ng '$BWMNG'
|
|
fi
|
|
|
|
if [[ $USE_IOTOP == "true" ]]; then
|
|
$TMUXCMD new-window -n iotop '$IOTOP -o'
|
|
fi
|
|
|
|
if [[ $USE_TOP == "true" ]]; then
|
|
$TMUXCMD new-window -n top '$TOP -m io -zto total'
|
|
fi
|
|
|
|
if [[ $USE_MYTOP == "true" ]]; then
|
|
$TMUXCMD new-window -n mytop '$MYTOP -u $DB_USER -p $DB_PASSWORD -d $DB_NAME -h $DB_HOST'
|
|
fi
|
|
|
|
if [[ $USE_VNSTAT == "true" ]]; then
|
|
$TMUXCMD new-window -n vnstat 'watch $VNSTAT'
|
|
fi
|
|
|
|
if [[ $USE_IFTOP == "true" ]]; then
|
|
$TMUXCMD new-window -n iftop '$IFTOP -i $INTERFACE'
|
|
fi
|
|
|
|
if [[ $USE_ATOP == "true" ]]; then
|
|
$TMUXCMD new-window -n atop '$ATOP'
|
|
fi
|
|
|
|
if [[ $USE_CONSOLE == "true" ]]; then
|
|
$TMUXCMD new-window -n Console 'bash -i'
|
|
fi
|
|
|
|
$TMUXCMD select-window -t$TMUX_SESSION:0
|
|
$TMUXCMD attach-session -d -t$TMUX_SESSION
|
|
|
|
fi
|
|
exit
|