diff options
Diffstat (limited to 'postsync.d/50-eix-update')
-rwxr-xr-x | postsync.d/50-eix-update | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/postsync.d/50-eix-update b/postsync.d/50-eix-update new file mode 100755 index 0000000..e9eb5ac --- /dev/null +++ b/postsync.d/50-eix-update @@ -0,0 +1,33 @@ +EIXCACHE=$(update-eix --print EIX_CACHEFILE) +OVERLAY_CONFIG_DIR="$(update-eix --print EIXCFGDIR)/overlays" + +TMPFILE="" +if [ -r "${EIXCACHE}" ]; then + TMPFILE=$(mktemp -t eix.cache.XXXXXXXX) + cp "${EIXCACHE}" "${TMPFILE}" +fi + +OVERLAY_PARAM="" +for overlay_config in $(ls ${OVERLAY_CONFIG_DIR}); do + unset LOCATION + unset SYNC + unset CACHE_FORMAT + + source ${OVERLAY_CONFIG_DIR}/${overlay_config} + if [[ -n ${LOCATION} ]]; then + OVERLAY_PARAM="${OVERLAY_PARAM} --add-overlay ${LOCATION}" + + if [[ -n ${CACHE_FORMAT} ]]; then + OVERLAY_PARAM="${OVERLAY_PARAM} -m ${LOCATION} ${CACHE_FORMAT}" + fi + fi +done + +[ -x /usr/bin/update-eix ] && /usr/bin/update-eix ${OVERLAY_PARAM} + +if [ -r "${EIXCACHE}" -a -r "${TMPFILE}" ]; then + echo + diff-eix "${TMPFILE}" + echo + rm -f "${TMPFILE}" +fi |