#! /bin/bash ( repos=$(xmllint -xpath "//repo/name/text()|//repo/source/text()" /etc/portage/layman.xml | xargs -n2) cd /etc/portage layman -d ALL 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 -- layman.xml )