Rework main script

This commit is contained in:
maride 2024-09-18 09:43:50 +02:00
parent 8d51a85454
commit c3ae959887

51
run.sh
View File

@ -5,7 +5,13 @@ NULLPREFIX=" "
echo -e "$ECHOPREFIX Hello, this is \033[31mtexbox\033[0m"
if test "$(ls -A /tex)"; then
if ! test "$(ls -A /tex)"; then
# Directory is empty
echo "$ECHOPREFIX Please mount your directory to /tex"
echo "$NULLPREFIX See you soon."
exit 1
fi
# Directory not empty - user mounted directory \o/
if [ -z "$TARGET" ]; then
# target unset.
@ -13,48 +19,13 @@ if test "$(ls -A /tex)"; then
fi
# Build in build dir
BUILD=build-$(date | sha256sum | cut -f1 -d' ')
mkdir $BUILD
cd $BUILD
BUILD="$(mktemp --directory)"
cd "$BUILD"
echo "$ECHOPREFIX Targetting $TARGET"
# Build the PDF
texi2pdf $TARGET
cd ..
if [ "$?" -eq "0" ]; then
echo "$ECHOPREFIX Created the PDF!"
echo "$NULLPREFIX Here are the results:"
ls $BUILD/*.pdf
rm ./last-successful 2>/dev/null
ln -sf $BUILD ./last-successful
else
echo "$ECHOPREFIX Build failed."
echo "$NULLPREFIX Have a look at the logs:"
ls $BUILD/*.log
rm ./last-failed 2>/dev/null
ln -sf $BUILD ./last-failed
fi
# Delete old symlink
rm ./current-build 2>/dev/null
# Set 'current' symlink
ln -sf $BUILD ./current-build
# Apply the access rights to build folder as found on the target file
chmod --silent --reference=$TARGET -R $BUILD ./current-build
chmod --silent --reference=$TARGET -R $BUILD ./last-successful
chmod --silent --reference=$TARGET -R $BUILD ./last-failed
chmod +x $BUILD
chown --silent --reference=$TARGET -R $BUILD ./current-build
chown --silent --reference=$TARGET -R $BUILD ./last-successful
chown --silent --reference=$TARGET -R $BUILD ./last-failed
else
# Directory is empty
echo "$ECHOPREFIX Please mount your directory to /tex"
echo "$NULLPREFIX See you soon."
fi
# Relocate resulting PDF
find "$BUILD" -iname "*.pdf" -exec chmod --silent --reference=$TARGET {} \; -exec chown --silent --reference=$TARGET -R $BUILD {} \; -exec mv {} /tex \;