summaryrefslogtreecommitdiff
path: root/tools/repo2solv.sh
diff options
context:
space:
mode:
authorDongHun Kwak <dh0128.kwak@samsung.com>2016-10-27 14:57:30 +0900
committerDongHun Kwak <dh0128.kwak@samsung.com>2016-10-27 14:57:30 +0900
commit2b7fc13cedc8bb796ac2b7e88f664d1602cf701f (patch)
treebb5cb268038bae4dbe7ff40d52be058977e0572c /tools/repo2solv.sh
parent26ea6e32000a3e6ea392ccc6f8c9d2f51aabd2e4 (diff)
downloadlibsolv-2b7fc13cedc8bb796ac2b7e88f664d1602cf701f.tar.gz
libsolv-2b7fc13cedc8bb796ac2b7e88f664d1602cf701f.tar.bz2
libsolv-2b7fc13cedc8bb796ac2b7e88f664d1602cf701f.zip
Imported Upstream version 0.6.19upstream/0.6.19
Change-Id: Ic898e621deb6d53ca1fd1db1c571753fb0df852e Signed-off-by: DongHun Kwak <dh0128.kwak@samsung.com>
Diffstat (limited to 'tools/repo2solv.sh')
-rwxr-xr-xtools/repo2solv.sh22
1 files changed, 20 insertions, 2 deletions
diff --git a/tools/repo2solv.sh b/tools/repo2solv.sh
index 11c6567..49b623a 100755
--- a/tools/repo2solv.sh
+++ b/tools/repo2solv.sh
@@ -28,7 +28,7 @@ repomd_findfile() {
local p=$2
local f
if test -n "$t" -a -s repomd.xml ; then
- f=`repomdxml2solv -q $t:location < repomd.xml 2>/dev/null`
+ f=`repomdxml2solv -q "$t:location" < repomd.xml 2>/dev/null`
f=${f##*/}
if test -f "$f" ; then
echo "$f"
@@ -44,6 +44,10 @@ repomd_findfile() {
fi
}
+repomd_types() {
+ test -s repomd.xml && repomdxml2solv -q type < repomd.xml
+}
+
repomd_decompress() {
case $1 in
*.gz) gzip -dc "$1" ;;
@@ -147,6 +151,17 @@ if test "$repotype" = rpmmd ; then
if test -f "$susedataxml" ; then
repomd_decompress "$susedataxml"
fi
+ # all the languages as well
+ for t in `repomd_types` ; do
+ case "$t" in
+ susedata.*)
+ susedataxml=`repomd_findfile "$t" "$t.xml"`
+ if test -f "$susedataxml" ; then
+ repomd_decompress "$susedataxml"
+ fi
+ ;;
+ esac
+ done
echo '</rpmmd>'
) | sed 's/<?xml[^>]*>//g' | sed '1i\<?xml version="1.0" encoding="UTF-8"?>' | rpmmd2solv $parser_options > $primfile || exit 4
fi
@@ -244,6 +259,9 @@ elif test "$repotype" = susetags ; then
# Now default language
susetags_findfile_cat packages.en
+ # DL (delta rpms)
+ susetags_findfile_cat packages.DL
+
# Now patterns. Not simply those files matching *.pat{,.gz,bz2},
# but only those mentioned in the file 'patterns'
if test -f patterns ; then
@@ -263,7 +281,7 @@ elif test "$repotype" = susetags ; then
esac
case $name in
# ignore files we handled already
- *.DU | *.en | *.FL | packages ) continue ;;
+ *.DU | *.en | *.FL | *.DL | packages ) continue ;;
*)
suff=${name#packages.}
echo "=Lan: $suff"