summaryrefslogtreecommitdiffstats
path: root/scripts/layman_reinit.sh
diff options
context:
space:
mode:
Diffstat (limited to 'scripts/layman_reinit.sh')
-rw-r--r--scripts/layman_reinit.sh13
1 files changed, 13 insertions, 0 deletions
diff --git a/scripts/layman_reinit.sh b/scripts/layman_reinit.sh
new file mode 100644
index 0000000..64d14d0
--- /dev/null
+++ b/scripts/layman_reinit.sh
@@ -0,0 +1,13 @@
+#! /bin/bash
+
+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
+
+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
+
+git checkout -- /etc/portage/repos.conf/layman.conf