Take a different approach to working around deduplication cleverness in click, this time hopefully without breaking hooks.

ubuntu/yakkety
Colin Watson 10 years ago
parent 5d707813f0
commit 95c970f52f

@ -16,15 +16,8 @@ chown clickpkg:clickpkg "$click_db"
mkdir -p -m 755 "$click_db_custom"
chown clickpkg:clickpkg "$click_db_custom"
# move default configuration aside to stop click being clever about symlink
# layering
mv /etc/click/databases /etc/click/databases.tmp
tmpdir="$(mktemp -d)"
cleanup () {
rm -rf "$tmpdir"
mv /etc/click/databases.tmp /etc/click/databases
}
cleanup () { rm -rf "$tmpdir"; }
trap cleanup EXIT
CLICKARCH=$(dpkg --print-architecture)
@ -55,8 +48,20 @@ do
;;
esac
for root in $roots; do
if [ "$root" = "$click_db_custom" ]; then
# FIXME: there is no good way to stop click from
# deduplicating things when installing the same package in
# multiple databases; the best we can do is to temporarily
# pretend that the core database does not exist
mv /etc/click/databases/10_core.conf \
/etc/click/databases/10_core.conf.tmp
fi
click install --force-missing-framework --root="$root" --all-users \
"$tmpdir/$package"
if [ "$root" = "$click_db_custom" ]; then
mv /etc/click/databases/10_core.conf.tmp \
/etc/click/databases/10_core.conf
fi
done
fi
done

Loading…
Cancel
Save