void-packages/triggers/info-files

54 lines
967 B
Bash
Executable File

#!/bin/sh
#
# Registers or unregisters info files for a package.
#
# Arguments: $1 = action [run/targets]
# $2 = target [post-install/pre-remove]
# $3 = pkgname
#
xbps_metadir=var/db/xbps/metadata
finfometa=$xbps_metadir/$3/info-files
installinfo=usr/bin/install-info
infodir=usr/share/info
case "$1" in
targets)
echo "post-install pre-remove"
;;
run)
[ ! -x $installinfo ] && exit 0
if [ ! -r $finfometa ]; then
echo "$trigger: can't find info-files in metadata directory!"
exit 1
fi
cat $finfometa | while read line; do
[ ! -f ./$line ] && continue
[ "$line" = "/usr/share/info/dir" ] && continue
case "$2" in
post-install)
echo -n "Registering info file: $line... "
;;
pre-remove)
echo -n "Unregistering info file: $line... "
infoargs="--delete"
;;
esac
$installinfo $infoargs ./$line $infodir/dir 2>/dev/null
if [ $? -eq 0 ]; then
echo "done."
else
echo "failed!"
fi
done
;;
*)
exit 1
;;
esac
exit 0