diff options
Diffstat (limited to 'scripts/layman_reinit.sh')
-rw-r--r-- | scripts/layman_reinit.sh | 24 |
1 files changed, 16 insertions, 8 deletions
diff --git a/scripts/layman_reinit.sh b/scripts/layman_reinit.sh index 64d14d0..6729149 100644 --- a/scripts/layman_reinit.sh +++ b/scripts/layman_reinit.sh @@ -1,13 +1,21 @@ #! /bin/bash -repos=$(xmllint -xpath "//repo/name/text()|//repo/source/text()" /etc/portage/layman.xml | xargs -n2) +( + repos=$(xmllint -xpath "//repo/name/text()|//repo/source/text()" /etc/portage/layman.xml | xargs -n2) -layman -d ALL -git checkout -- /etc/portage/repos.conf/layman.conf + cd /etc/portage + + layman -d ALL + git checkout -- layman.xml -for repo in $(cat /etc/portage/repos.conf/layman.conf | grep -oP "\[\K[^]]*"); do - repo_src=$(echo "$repos" | grep -P "^$repo" | awk '{ print $2 }') - layman -a "$repo" -O "$repo_src" -done + for repo in $(cat /etc/portage/repos.conf/layman.conf | grep -oP "\[\K[^]]*"); do + repo_src=$(echo "$repos" | grep -P "^$repo" | awk '{ print $2 }') + if [ -n "$repo_src" ]; then + layman -a "$repo" -O "$repo_src" + else + layman -a "$repo" + fi + done -git checkout -- /etc/portage/repos.conf/layman.conf + git checkout -- layman.xml +) |