summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2018-04-06 19:15:10 +0100
committerV3n3RiX <venerix@redcorelinux.org>2018-04-06 19:15:10 +0100
commit5cce275c26e610d9bd317a4a29d9b08265f1594c (patch)
tree7c3950a523a2bcd432f177a3a9e916cd089271cc
parentfe0a6e47ce7b3a92b298d64d7ea98dcd63cd86d0 (diff)
supercharge local csv generation (~300 times faster)
-rwxr-xr-xsrc/helpers/make_local_csv_post21
-rwxr-xr-xsrc/helpers/make_local_csv_pre21
-rwxr-xr-xsrc/helpers/make_spmsync_csv21
3 files changed, 12 insertions, 51 deletions
diff --git a/src/helpers/make_local_csv_post b/src/helpers/make_local_csv_post
index b6f7200..5e44670 100755
--- a/src/helpers/make_local_csv_post
+++ b/src/helpers/make_local_csv_post
@@ -1,21 +1,8 @@
#!/usr/bin/env bash
-collect_local_portage_database() {
- for i in $(qlist -ICv); do
- pushd /var/db/pkg/$i > /dev/null 2>&1
- echo "$(<CATEGORY),$(sed -re "s/-([0-9])/,\1/" <PF),$(<SLOT),$(<BUILD_TIME),$(sed -e "s/\"//g" -e "s/\'//g" -e "s/\,//g" <DESCRIPTION)" >> /tmp/local_packages_post.csv
- popd > /dev/null 2>&1
- done
- mv /tmp/local_packages_post.csv /var/lib/sisyphus/csv/
+makecsv() {
+ qlist -ICScv|sed -e "s/\//\,/" -e "s/[\t ]/\,/" -e "s/\:/\,/" >> "/tmp/local_packages_post.csv"
+ mv "/tmp/local_packages_post.csv" "/var/lib/sisyphus/csv/"
}
-clean_temporary_files() {
- rm -rf /tmp/local_packages_post.csv
-}
-
-main() {
- collect_local_portage_database
- clean_temporary_files
-}
-
-main
+makecsv
diff --git a/src/helpers/make_local_csv_pre b/src/helpers/make_local_csv_pre
index f6b5cfc..2fb9099 100755
--- a/src/helpers/make_local_csv_pre
+++ b/src/helpers/make_local_csv_pre
@@ -1,21 +1,8 @@
#!/usr/bin/env bash
-collect_local_portage_database() {
- for i in $(qlist -ICv); do
- pushd /var/db/pkg/$i > /dev/null 2>&1
- echo "$(<CATEGORY),$(sed -re "s/-([0-9])/,\1/" <PF),$(<SLOT),$(<BUILD_TIME),$(sed -e "s/\"//g" -e "s/\'//g" -e "s/\,//g" <DESCRIPTION)" >> /tmp/local_packages_pre.csv
- popd > /dev/null 2>&1
- done
- mv /tmp/local_packages_pre.csv /var/lib/sisyphus/csv/
+makecsv() {
+ qlist -ICScv|sed -e "s/\//\,/" -e "s/[\t ]/\,/" -e "s/\:/\,/" >> "/tmp/local_packages_pre.csv"
+ mv "/tmp/local_packages_pre.csv" "/var/lib/sisyphus/csv/"
}
-clean_temporary_files() {
- rm -rf /tmp/local_packages_pre.csv
-}
-
-main() {
- collect_local_portage_database
- clean_temporary_files
-}
-
-main
+makecsv
diff --git a/src/helpers/make_spmsync_csv b/src/helpers/make_spmsync_csv
index baf419c..8174cd9 100755
--- a/src/helpers/make_spmsync_csv
+++ b/src/helpers/make_spmsync_csv
@@ -1,21 +1,8 @@
#!/usr/bin/env bash
-collect_local_portage_database() {
- for i in $(qlist -ICv); do
- pushd /var/db/pkg/$i > /dev/null 2>&1
- echo "$(<CATEGORY),$(sed -re "s/-([0-9])/,\1/" <PF),$(<SLOT),$(<BUILD_TIME),$(sed -e "s/\"//g" -e "s/\'//g" -e "s/\,//g" <DESCRIPTION)" >> /tmp/portage_spmsync.csv
- popd > /dev/null 2>&1
- done
- mv /tmp/portage_spmsync.csv /var/lib/sisyphus/csv/
+makecsv() {
+ qlist -ICScv|sed -e "s/\//\,/" -e "s/[\t ]/\,/" -e "s/\:/\,/" >> "/tmp/portage_spmsync.csv"
+ mv "/tmp/portage_spmsync.csv" "/var/lib/sisyphus/csv/"
}
-clean_temporary_files() {
- rm -rf /tmp/portage_spmsync.csv
-}
-
-main() {
- collect_local_portage_database
- clean_temporary_files
-}
-
-main
+makecsv