78 lines
2.7 KiB
Bash
Executable file
78 lines
2.7 KiB
Bash
Executable file
#!/bin/bash
|
|
|
|
CWD=$(pwd)
|
|
|
|
PRGNAM=$(basename $CWD)
|
|
VERSION=${VERSION:-$(wget -O - -o /dev/null http://status.calibre-ebook.com/latest)}
|
|
ARCH=$(uname -m)
|
|
BUILD=${BUILD:-1}
|
|
TAG=${TAG:-gwh}
|
|
TMP=${TMP:-/tmp/$TAG}
|
|
PKG=$TMP/pkg-$PRGNAM
|
|
OUTPUT=${OUTPUT:-/tmp}
|
|
|
|
REPOSITORY=${REPOSITORY:-/var/cache/SlackBuilds.gwh/$PRGNAM}
|
|
|
|
mkdir -p $REPOSITORY
|
|
|
|
[ ! -e $REPOSITORY/calibre-${VERSION}-${ARCH}.txz ] && wget -c -O $REPOSITORY/calibre-${VERSION}-${ARCH}.txz http://download.calibre-ebook.com/${VERSION}/calibre-${VERSION}-${ARCH}.txz
|
|
|
|
rm -fr $PKG
|
|
mkdir -p $PKG/opt/calibre
|
|
|
|
tar xvf $REPOSITORY/calibre-${VERSION}-${ARCH}.txz -C $PKG/opt/calibre
|
|
|
|
mkdir -p $PKG/usr/bin
|
|
|
|
$PKG/opt/calibre/calibre_postinstall --root=$PKG/usr
|
|
|
|
mkdir -p $PKG/etc/rc.d/
|
|
cp $CWD/rc.calibre-server $PKG/etc/rc.d/rc.calibre-server.new
|
|
|
|
cd $PKG/usr/bin
|
|
find . -type l -exec sh -c 'rm "$1"; ln -s ../../opt/calibre/$(basename $1)' _ {} \;
|
|
|
|
mkdir -p $PKG/install
|
|
cat <<EOF > $PKG/install/doinst.sh
|
|
#!/bin/bash
|
|
config() {
|
|
NEW="\$1"
|
|
OLD="\$(dirname \$NEW)/\$(basename \$NEW .new)"
|
|
# If there's no config file by that name, mv it over:
|
|
if [ ! -r \$OLD ]; then
|
|
mv \$NEW \$OLD
|
|
elif [ "\$(cat \$OLD | md5sum)" = "\$(cat \$NEW | md5sum)" ]; then
|
|
# toss the redundant copy
|
|
rm \$NEW
|
|
fi
|
|
# Otherwise, we leave the .new copy for the admin to consider...
|
|
}
|
|
|
|
config etc/rc.d/rc.calibre-server.new
|
|
EOF
|
|
|
|
cat <<EOF > $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} (e-book library management application)
|
|
${PRGNAM}:
|
|
${PRGNAM}: ${PRGNAM} is meant to be a complete e-library solution.
|
|
${PRGNAM}: It includes library management, format conversion, news feeds to ebook
|
|
${PRGNAM}: conversion as well as e-book reader sync features. ${PRGNAM} is
|
|
${PRGNAM}: primarily a ebook cataloging program. It manages your ebook collection
|
|
${PRGNAM}: for you. It is designed around the concept of the logical book, i.e.
|
|
${PRGNAM}: a single entry in the database that may correspond to ebooks in
|
|
${PRGNAM}: several formats. It also supports conversion to and from a dozen
|
|
${PRGNAM}: different ebook formats.
|
|
${PRGNAM}: ${PRGNAM} home: http://calibre-ebook.com/
|
|
EOF
|
|
|
|
cd $PKG
|
|
rm -f $PKG/{,usr/}lib$(uname -m | grep -o 64)/*.la
|
|
/sbin/makepkg --linkadd y --chown n --prepend ${OUTPUT}/${PRGNAM}-${VERSION}-${ARCH}-${BUILD}${TAG}.txz
|