From 980c7d3336e39c3048a3a46040d8b6bb4102aba6 Mon Sep 17 00:00:00 2001 From: Gwenhael Le Moine Date: Sat, 5 Oct 2019 18:18:37 +0200 Subject: [PATCH] added calibre-web --- n/calibre-web/SlackBuild | 73 ++++++++++++++++++++++++++++++++++++++++ n/calibre-web/rc | 55 ++++++++++++++++++++++++++++++ 2 files changed, 128 insertions(+) create mode 100755 n/calibre-web/SlackBuild create mode 100755 n/calibre-web/rc diff --git a/n/calibre-web/SlackBuild b/n/calibre-web/SlackBuild new file mode 100755 index 00000000..6ce2b32f --- /dev/null +++ b/n/calibre-web/SlackBuild @@ -0,0 +1,73 @@ +#!/bin/sh + +# variables +BUILD=${BUILD:-1} + +TAG=cyco +TMP=/tmp/$TAG +CWD=$(pwd) + +PRGNAM=$(basename $CWD) +PKG=$TMP/pkg-$PRGNAM +OUTPUT=${OUTPUT:-/tmp} + +ARCH=${ARCH:-$(uname -m)} + +REPOSITORY=${REPOSITORY:-/home/installs/SlackBuilds/repositories/$PRGNAM} +PREFIX=${PREFIX:-/usr} + +# nettoyage préalable +rm -fr $PKG + +mkdir -p $PKG + +# mise en place +[ ! -e $REPOSITORY ] && git clone https://github.com/janeczku/calibre-web.git $REPOSITORY +( cd $REPOSITORY && git pull ) +VERSION="$( cd $REPOSITORY && git log -1 --format=%h_%ad --date=format:%Y.%m.%d )" + +mkdir -p $PKG/opt +cp -r $REPOSITORY $PKG/opt/ + +mkdir -p $PKG/etc/rc.d/ +cp -r $CWD/rc $PKG/etc/rc.d/rc.$PRGNAM + +cd $PKG/opt/$PRGNAM +# change default password +NEW_DEFAULT_PASSWORD=$(< /dev/urandom tr -dc _A-Z-a-z-0-9 | head -c${1:-32};echo;) +sed -i "s|admin123|$NEW_DEFAULT_PASSWORD|g" cps/* +pip3 install --target vendor -r requirements.txt + +# correction +cd $PKG +chown -R root:root * + +# embaumement +mkdir -p $PKG/install + + +cat < $PKG/install/slack-desc +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler------------------------------------------------------| +$PRGNAM: $PRGNAM (Web app for browsing, reading and downloading eBooks stored in a Calibre database) +$PRGNAM: +$PRGNAM: Calibre-Web is a web app providing a clean interface for browsing, +$PRGNAM: reading and downloading eBooks using an existing Calibre database. +$PRGNAM: +$PRGNAM: default user: admin +$PRGNAM: default password: $NEW_DEFAULT_PASSWORD +$PRGNAM: +$PRGNAM: +$PRGNAM: https://github.com/janeczku/calibre-web +$PRGNAM: +EOF + +# empaquetage +rm -f $PKG/{,usr/}lib$(uname -m | grep -o 64)/*.la +makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.txz diff --git a/n/calibre-web/rc b/n/calibre-web/rc new file mode 100755 index 00000000..18fda095 --- /dev/null +++ b/n/calibre-web/rc @@ -0,0 +1,55 @@ +#!/bin/bash +#Slackware startup deamon script + +USER=root + +DAEMON="python3 /opt/calibre-web/cps.py" +PIDFILE=/var/run/calibre-web.pid + +RETVAL=0 + +status() { + dbpid=`pgrep -fu $USER calibre-web` + if [ -z "$dbpid" ]; then + echo "$DAEMON: NOT running." + else + echo "$DAEMON: running (pid $dbpid)" + fi +} + +start() { + echo -n "Starting $DAEMON..." + sudo -u $USER $DAEMON & + RETVAL=$! + echo $RETVAL > $PIDFILE + sleep 1 + status +} + +stop() { + echo -n "Shutting down $DAEMON..." + /usr/bin/kill $(cat $PIDFILE) && rm $PIDFILE + RETVAL=$? + sleep 1 + status +} + +case "$1" in + start) + start + ;; + stop) + stop + ;; + restart) + stop + start + ;; + status) + status + ;; + *) + echo $"Usage: $0 {start|stop|restart|status}" + RETVAL=1 +esac +exit $RETVAL