You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
63 lines
1.7 KiB
63 lines
1.7 KiB
#!/usr/bin/bash
|
|
|
|
# get version from base hplip rpm - it is always in the second column
|
|
VER=$(@bindir@/rpm -q hplip | @bindir@/awk -F '-' '{print $2}')
|
|
|
|
if test "x$VER" = "x"
|
|
then
|
|
@bindir@/echo "Version was not acquired - exiting..."
|
|
exit 1
|
|
fi
|
|
|
|
# plugin name
|
|
PLUGIN_FILE="hplip-${VER}-plugin.run"
|
|
|
|
download()
|
|
{
|
|
SOURCE="$1"
|
|
|
|
@bindir@/curl --create-dirs -O --output-dir ~/.hplip ${SOURCE}
|
|
}
|
|
|
|
# link to the plugin
|
|
PLUGIN_SOURCE="https://www.openprinting.org/download/printdriver/auxfiles/HP/plugins/${PLUGIN_FILE}"
|
|
FALLBACK_SOURCE="https://developers.hp.com/sites/default/files/${PLUGIN_FILE}"
|
|
|
|
# create a hidden hplip dir to store a file indicating the plugin version after successful install
|
|
# the directory can be used by other hplip tools, so we don't have to remove it if the failure happens
|
|
if [ ! -d ~/.hplip ]
|
|
then
|
|
@bindir@/mkdir ~/.hplip || (@bindir@/echo "Cannot create the ~/.hplip dir, exiting" && exit 1)
|
|
fi
|
|
|
|
for link in ${PLUGIN_SOURCE} ${FALLBACK_SOURCE}
|
|
do
|
|
download ${link}
|
|
|
|
if test "x$(file --mime ~/.hplip/${PLUGIN_FILE} | grep 'text/x-shellscript')" = "xtext/x-shellscript"
|
|
then
|
|
break
|
|
fi
|
|
done
|
|
|
|
if test "x$(file --mime ~/.hplip/${PLUGIN_FILE} | grep 'text/x-shellscript')" = "x"
|
|
then
|
|
@bindir@/echo "The downloaded file does not exist or is not a shell script - error during downloading, exiting..."
|
|
exit 1
|
|
fi
|
|
|
|
@bindir@/bash ~/.hplip/${PLUGIN_FILE}
|
|
|
|
if [ $? -ne 0 ]
|
|
then
|
|
@bindir@/echo "Plugin installation failed, exiting..."
|
|
@bindir@/rm -f ~/.hplip/${PLUGIN_FILE} &> /dev/null
|
|
exit 1
|
|
fi
|
|
|
|
@bindir@/rm -f ~/.hplip/${PLUGIN_FILE} &> /dev/null
|
|
@bindir@/rm -f ~/.hplip/plugin-installed-* &> /dev/null
|
|
@bindir@/touch ~/.hplip/plugin-installed-$VER
|
|
|
|
exit 0
|