Compare commits

...

2 Commits

Author SHA1 Message Date
c3ae959887 Rework main script 2024-09-18 09:43:50 +02:00
8d51a85454 Fix access rights of result 2024-09-18 09:27:26 +02:00

63
run.sh
View File

@ -5,52 +5,27 @@ NULLPREFIX=" "
echo -e "$ECHOPREFIX Hello, this is \033[31mtexbox\033[0m"
if test "$(ls -A /tex)"; then
# Directory not empty - user mounted directory \o/
if [ -z "$TARGET" ]; then
# target unset.
TARGET="*.tex"
fi
# Build in build dir
BUILD=build-$(date | sha256sum | cut -f1 -d' ')
mkdir $BUILD
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 --reference=$TARGET -R $BUILD ./current-build ./last-successful ./last-failed
chmod +x $BUILD
chown --reference=$TARGET -R $BUILD ./current-build ./last-successful ./last-failed
else
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.
TARGET="$(find /tex -iname '*.tex' | head --lines 1)"
fi
# Build in build dir
BUILD="$(mktemp --directory)"
cd "$BUILD"
echo "$ECHOPREFIX Targetting $TARGET"
# Build the PDF
texi2pdf $TARGET
# Relocate resulting PDF
find "$BUILD" -iname "*.pdf" -exec chmod --silent --reference=$TARGET {} \; -exec chown --silent --reference=$TARGET -R $BUILD {} \; -exec mv {} /tex \;