+debugsourcesize
authorJan Kratochvil <jan.kratochvil@redhat.com>
Tue, 28 Jul 2020 13:57:27 +0000 (15:57 +0200)
committerJan Kratochvil <jan.kratochvil@redhat.com>
Tue, 28 Jul 2020 13:57:27 +0000 (15:57 +0200)
debugsourcesize [new file with mode: 0755]

diff --git a/debugsourcesize b/debugsourcesize
new file mode 100755 (executable)
index 0000000..c768274
--- /dev/null
@@ -0,0 +1,44 @@
+#! /bin/bash
+url=http://ftp.fi.muni.cz/pub/linux/fedora/linux/development/rawhide/Everything/x86_64/debug/tree/Packages/
+debuginfos=0
+debuginfosize=0
+debugsources=0
+debugsourcesize=0
+function parse
+{
+  # <tr class="odd"><td class="indexcolicon"><img src="/Tango/24x24/mimetypes/tgz.png" alt="[GZ]" /></td><td class="indexcolname"><a href="lasem-debugsource-0.4.3-13.fc32.i686.rpm">lasem-debugsource-0.4.3-13.fc32.i686.rpm</a></td><td class="indexcollastmod">2020-02-15 22:43  </td><td class="indexcolsize">237K</td><td>&nbsp;</td></tr>
+  wget -q -O - $1|sed -n 's#^.*<td class="indexcolname"><a href="\([^/"]*\)/\?".*$#\1#p'
+}
+ls=$(parse $url)
+echo >&2 $ls
+for l in $ls;do
+#for l in 0;do
+  echo >&2 -n $l
+  for n in $(parse $url/$l/);do
+    echo >&2 -n .
+    size=$(curl -sI $url/$l/$n|tr A-Z a-z|sed -n 's/^content-length: *\([0-9]\+\)\r$/\1/p')
+    if [ -z "$size" ];then
+      echo "error size: $n"
+      continue
+    fi
+    c=0
+    if echo $n|grep -q -- '-debuginfo-';then
+      debuginfos=$[$debuginfos+1]
+      debuginfosize=$[debuginfosize+$size]
+      c=$[$c+1]
+    elif echo $n|grep -q -- '-debugsource-';then
+      debugsources=$[$debugsources+1]
+      debugsourcesize=$[debugsourcesize+$size]
+      c=$[$c+1]
+    fi
+    if [ $c -ne 1 ];then
+      echo "unparseable: $n"
+      continue
+    fi
+  done
+  echo >&2
+done
+echo "debuginfosize=$debuginfosize"
+echo "debugsourcesize=$debugsourcesize"
+echo "debuginfos=$debuginfos"
+echo "debugsources=$debugsources"