Sync with portage-gentoo-git-config repo and rename scripts

Also optimize stuff a bit.
This commit is contained in:
hasufell 2015-08-19 21:18:53 +02:00
parent 8a2dcdfcdc
commit cb96ff6025
No known key found for this signature in database
GPG Key ID: 220CD1C5BDEED020
8 changed files with 40 additions and 31 deletions

View File

@ -2,8 +2,7 @@
# set PORTDIR # set PORTDIR
PORTDIR="$(${CAVE} print-repository-metadata --raw-name location gentoo)" PORTDIR="$(${CAVE} print-repository-metadata --format '%v' --raw-name location gentoo)"
PORTDIR=${PORTDIR#location=}
if [[ -z ${PORTDIR} || "$(dirname ${PORTDIR})" == "/" ]] ; then if [[ -z ${PORTDIR} || "$(dirname ${PORTDIR})" == "/" ]] ; then
die "PORTDIR empty or pointing to root!" die "PORTDIR empty or pointing to root!"

View File

@ -0,0 +1,24 @@
#!/bin/bash
source "${PALUDIS_EBUILD_DIR}/echo_functions.bash"
source "/etc/paludis/hooks/set_portdir.bash"
source "/etc/paludis/hooks/util_functions.bash"
# You may change this to only update cache of specific repositories.
# Should at least include 'gentoo'. Default is all repositories.
repository_list=( $(print_ebuild_repositories) )
# Number of jobs for egencache, default is number or processors.
egencache_jobnum="$(nproc)"
ebegin "Fetching pre-generated metadata cache for gentoo repository"
rsync -aq rsync://rsync.gentoo.org/gentoo-portage/metadata/md5-cache/ "${PORTDIR}"/metadata/md5-cache/
eend $?
einfo "Updating metadata cache for repositories:"
for _repo in ${repository_list[@]} ; do
ebegin " ${_repo}"
egencache --jobs=${egencache_jobnum} --repo=${_repo} --update --update-use-local-desc
eend $?
done

View File

@ -6,8 +6,8 @@ source "/etc/paludis/hooks/set_portdir.bash"
DTDDIR=${PORTDIR}/metadata/dtd DTDDIR=${PORTDIR}/metadata/dtd
ebegin "Updating DTDs" ebegin "Updating DTDs"
if [[ -e ${DTDDIR} ]]; then if [[ -e ${DTDDIR} ]]; then
git -C "${DTDDIR}" pull --ff git -C "${DTDDIR}" pull -q --ff
else else
git clone https://anongit.gentoo.org/git/data/dtd.git "${DTDDIR}" git clone -q https://anongit.gentoo.org/git/data/dtd.git "${DTDDIR}"
fi fi
eend "$?" eend "$?"

View File

@ -6,8 +6,8 @@ source "/etc/paludis/hooks/set_portdir.bash"
GLSADIR=${PORTDIR}/metadata/glsa GLSADIR=${PORTDIR}/metadata/glsa
ebegin "Updating GLSAs" ebegin "Updating GLSAs"
if [[ -e ${GLSADIR} ]]; then if [[ -e ${GLSADIR} ]]; then
git -C "${GLSADIR}" pull --ff git -C "${GLSADIR}" pull -q --ff
else else
git clone https://anongit.gentoo.org/git/data/glsa.git "${GLSADIR}" git clone -q https://anongit.gentoo.org/git/data/glsa.git "${GLSADIR}"
fi fi
eend "$?" eend "$?"

View File

@ -4,5 +4,5 @@ source "${PALUDIS_EBUILD_DIR}/echo_functions.bash"
source "/etc/paludis/hooks/set_portdir.bash" source "/etc/paludis/hooks/set_portdir.bash"
ebegin "Updating herds.xml" ebegin "Updating herds.xml"
wget -O "${PORTDIR}"/metadata/herds.xml https://api.gentoo.org/packages/herds.xml wget -q -O "${PORTDIR}"/metadata/herds.xml https://api.gentoo.org/packages/herds.xml
eend $? eend $?

View File

@ -7,9 +7,9 @@ source "/etc/paludis/hooks/util_functions.bash"
NEWSDIR="${PORTDIR}"/metadata/news NEWSDIR="${PORTDIR}"/metadata/news
ebegin "Updating news items" ebegin "Updating news items"
if [[ -e ${NEWSDIR} ]]; then if [[ -e ${NEWSDIR} ]]; then
git -C "${NEWSDIR}" pull --ff git -C "${NEWSDIR}" pull -q --ff
else else
git clone https://anongit.gentoo.org/git/proj/gentoo-news.git "${NEWSDIR}" git clone -q https://anongit.gentoo.org/git/proj/gentoo-news.git "${NEWSDIR}"
fi fi
eend_die $? eend_die $?

View File

@ -1,22 +0,0 @@
#!/bin/bash
source "${PALUDIS_EBUILD_DIR}/echo_functions.bash"
source "/etc/paludis/hooks/set_portdir.bash"
# add your overlays here (name of the overlay!)
overlay_list=(
)
ebegin "Syncing metadata cache for gentoo repository"
rsync -avPq rsync://rsync.gentoo.org/gentoo-portage/metadata/md5-cache/ "${PORTDIR}"/metadata/md5-cache/
egencache --jobs=$(nproc) --repo=gentoo --update --update-use-local-desc
eend $?
if [[ ${#overlay_list[@]} -gt 0 ]] ; then
ebegin "Syncing metadata cache for overlays"
for _overlay in ${overlay_list[@]} ; do
einfo " ${_overlay}"
egencache --jobs=$(nproc) --repo=${_overlay} --update --update-use-local-desc
done
eend $?
fi

View File

@ -6,3 +6,11 @@ eend_die() {
eend "$@" eend "$@"
[[ $1 -ne 0 ]] && exit $1 [[ $1 -ne 0 ]] && exit $1
} }
print_ebuild_repositories() {
local i
for i in $(${CAVE} print-repositories) ; do
[[ "$(${CAVE} print-repository-metadata --format "%v" --raw-name format $i)" == "e" ]] &&
echo $i
done
}