From 7e8840e0a76d28c27ed7efc041106d338ca0c607 Mon Sep 17 00:00:00 2001 From: Joshua Ismael Haase Hernández Date: Mon, 13 Jun 2011 08:17:13 -0700 Subject: repos are working fine like this --- db-check-nonfree | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/db-check-nonfree b/db-check-nonfree index d8f34f0..83efb14 100755 --- a/db-check-nonfree +++ b/db-check-nonfree @@ -23,10 +23,15 @@ for repo in ${ARCHREPOS[@]}; do if [ ! -f "${FTP_BASE}/${repo}/os/${pkgarch}/${repo}${DBEXT}" ]; then continue fi + unset dbpkgs unset cleanpkgs - cmd_="$(dirname $0)/list_nonfree_in_db.py -k ${BLACKLIST_FILE} \ - -b ${FTP_BASE}/${repo}/os/${pkgarch}/${repo}${DBEXT}" - cleanpkgs=($(${cmd_})) + cleanpkgs=() + dbpkgs=($(bsdtar -xOf "${FTP_BASE}/${repo}/os/${pkgarch}/${repo}${DBEXT}" | awk '/^%NAME%/{getline;print}' | sort -u )) + for pkgname in ${dbpkgs[@]}; do + if in_array ${pkgname} ${nonfree[@]}; then + cleanpkgs[${#cleanpkgs[*]}]=${pkgname} + fi + done if [ ${#cleanpkgs[@]} -ge 1 ]; then arch_repo_remove "${repo}" "${pkgarch}" ${cleanpkgs[@]} fi -- cgit v1.2.3-54-g00ecf From 9bcf313647a3dd4ae44016894b1fe599d1f90c18 Mon Sep 17 00:00:00 2001 From: Joshua Ismael Haase Hernández Date: Sun, 19 Jun 2011 11:01:07 -0700 Subject: Config file updated, use old repo-update --- config | 4 ++-- repo-update | 17 ++--------------- 2 files changed, 4 insertions(+), 17 deletions(-) diff --git a/config b/config index effdde4..bc2494f 100644 --- a/config +++ b/config @@ -4,7 +4,7 @@ ARCH_BASE="/home/parabolavnx/parabolagnulinux.org/repo" SVNREPO="/home/parabolavnx/parabolagnulinux.org/abslibre" ARCHREPOS=('core' 'extra' 'community' 'testing' 'multilib') -PKGREPOS=(${ARCHREPOS[@]} 'libre' 'libre-testing' 'social' 'sugar') +PKGREPOS=(${ARCHREPOS[@]} 'libre' 'libre-testing' 'social' 'sugar' 'elementary' '~fauno' '~xihh') PKGPOOL='pool/packages' SRCPOOL='sources/packages' @@ -33,4 +33,4 @@ PKGEXT=".pkg.tar.?z" SRCEXT=".src.tar.gz" MAKEPKGCONF="$HOME/etc/makepkg.conf" -BLACKLIST_FILE="$HOME/parabolagnulinux.org/docs/blacklist.txt" \ No newline at end of file +BLACKLIST_FILE="$HOME/parabolagnulinux.org/docs/blacklist.txt" diff --git a/repo-update b/repo-update index 12c6d0c..a44ae87 100755 --- a/repo-update +++ b/repo-update @@ -5,41 +5,28 @@ source $(dirname $0)/config source $(dirname $0)/local_config source $(dirname $0)/libremessages -msg "Updating your-freedom" -$(dirname $0)/yf-update - -msg "Global exclude-list" -# To not downgrade repos by accident -find ${repodir}/old/packages -name "*${PKGEXT}" \ - -fprintf ${rsync_not_needed}2 '%f\n' - for repo in ${ARCHREPOS[@]}; do msg "Syncing ${repo}" for arch in ${ARCHARCHES[@]} 'any'; do msg2 "${repo} ${arch}" # makes a file containing rsync output for filter.py - plain "Checking packages..." ${rsync_list_command} \ rsync://${mirror}/${mirrorpath}/${repo}/os/${arch}/ \ - ${repodir}/staging/${repo}/ > ${rsout_file} 2&>/dev/null + ${repodir}/staging/${repo}/ > ${rsout_file} # reads blacklist and rsout_file and makes an rsync exclude-from # list - plain "Excluding nonfree..." filter.py -r ${rsync_blacklist} -k ${blacklist} \ -f ${rsout_file} # list files in ${repodir}/${repo} and write their names on # rsync_not_needed for using as an rsync exclude-from - plain "Excluding our packages" find ${repodir}/${repo} -name "*${PKGEXT}" \ -fprintf ${rsync_not_needed} '%f\n' # Actual rsync command - plain "Syncing..." ${rsync_update_command} \ --exclude-from=${rsync_blacklist} \ --exclude-from=${rsync_not_needed} \ - --exclude-from=${rsync_not_needed}2 \ rsync://${mirror}/${mirrorpath}/${repo}/os/${arch}/ \ - ${repodir}/staging/${repo}/ 2&>/dev/null + ${repodir}/staging/${repo}/ done for arch in ${ARCHARCHES[@]}; do msg2 "Making pending list for $repo $arch" -- cgit v1.2.3-54-g00ecf From 91210f8ae18f5651ace2273cfa0c8ad7e4dbcbdf Mon Sep 17 00:00:00 2001 From: Nicolás Reynolds Date: Sat, 16 Jul 2011 03:35:37 -0300 Subject: Syncs ABSLibre tarballs between ABSLibre host and repo server --- cron-jobs/update-abs-tarballs | 7 +++++++ 1 file changed, 7 insertions(+) create mode 100644 cron-jobs/update-abs-tarballs diff --git a/cron-jobs/update-abs-tarballs b/cron-jobs/update-abs-tarballs new file mode 100644 index 0000000..9990f20 --- /dev/null +++ b/cron-jobs/update-abs-tarballs @@ -0,0 +1,7 @@ +#!/bin/bash + +. "$(dirname $0)/../config" + +rsync -av parabolagnulinux.org::abstar/ ${FTP_BASE}/ + +exit $? -- cgit v1.2.3-54-g00ecf From acc602ead426a2bd66c1ecc9b41261fb57392594 Mon Sep 17 00:00:00 2001 From: Pierre Schmitz Date: Sun, 24 Jul 2011 21:32:18 +0200 Subject: Use /tmp instead of /dev/shm for temporary files --- test/lib/common.inc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/lib/common.inc b/test/lib/common.inc index eb46508..c96e677 100644 --- a/test/lib/common.inc +++ b/test/lib/common.inc @@ -11,7 +11,7 @@ oneTimeSetUp() { local pkgarch local pkgversion local build - pkgdir="$(mktemp -d /dev/shm/$(basename $0).XXXXXXXXXX)" + pkgdir="$(mktemp -d /tmp/$(basename $0).XXXXXXXXXX)" cp -Lr $(dirname ${BASH_SOURCE[0]})/../packages/* "${pkgdir}" msg 'Building packages...' for d in "${pkgdir}"/*; do -- cgit v1.2.3-54-g00ecf From 7d3481f9458241523116266d9c4c6592082aa346 Mon Sep 17 00:00:00 2001 From: Pierre Schmitz Date: Sun, 24 Jul 2011 21:32:48 +0200 Subject: Fix test for use with recent namcap releases --- test/test.d/packages.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/test/test.d/packages.sh b/test/test.d/packages.sh index 324f73a..488cb15 100755 --- a/test/test.d/packages.sh +++ b/test/test.d/packages.sh @@ -4,8 +4,8 @@ curdir=$(readlink -e $(dirname $0)) . "${curdir}/../lib/common.inc" testPackages() { - # TODO: namcap -r depends fails with i686 packages - find "${pkgdir}" -name "*${PKGEXT}" -exec namcap -e depends {} + || fail 'namcap failed' + # TODO: namcap -r sodepends fails with i686 packages + find "${pkgdir}" -name "*${PKGEXT}" -exec namcap -e sodepends,pkgnameindesc {} + || fail 'namcap failed' } . "${curdir}/../lib/shunit2" -- cgit v1.2.3-54-g00ecf From 4e2e92406a4a8b71e3bb9665fbf09b69e39a9f55 Mon Sep 17 00:00:00 2001 From: Eric Bélanger Date: Fri, 8 Jul 2011 18:03:48 -0400 Subject: Add epoch support to integrity check cron job MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Eric Bélanger Signed-off-by: Pierre Schmitz --- cron-jobs/check_archlinux/parse_pkgbuilds.sh | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/cron-jobs/check_archlinux/parse_pkgbuilds.sh b/cron-jobs/check_archlinux/parse_pkgbuilds.sh index 5cd17e4..3f92169 100755 --- a/cron-jobs/check_archlinux/parse_pkgbuilds.sh +++ b/cron-jobs/check_archlinux/parse_pkgbuilds.sh @@ -6,7 +6,7 @@ exit() { return; } splitpkg_overrides=('depends' 'optdepends' 'provides' 'conflicts') -variables=('pkgname' 'pkgbase' 'pkgver' 'pkgrel' 'makedepends' 'arch' ${splitpkg_overrides[@]}) +variables=('pkgname' 'pkgbase' 'epoch' 'pkgver' 'pkgrel' 'makedepends' 'arch' ${splitpkg_overrides[@]}) readonly -a variables splitpkg_overrides backup_package_variables() { @@ -29,7 +29,11 @@ restore_package_variables() { print_info() { echo -e "%NAME%\n$pkgname\n" - echo -e "%VERSION%\n$pkgver-$pkgrel\n" + if [ -n "$epoch" ]; then + echo -e "%VERSION%\n$epoch:$pkgver-$pkgrel\n" + else + echo -e "%VERSION%\n$pkgver-$pkgrel\n" + fi echo -e "%PATH%\n$dir\n" if [ -n "$pkgbase" ]; then -- cgit v1.2.3-54-g00ecf From c26ba3ccee6700bc0be0031df959d96918f7800f Mon Sep 17 00:00:00 2001 From: Florian Pritz Date: Sat, 9 Jul 2011 09:55:08 +0200 Subject: db-remove: remove package if not in svn We know what the user wants us to do (remove a package from the repo and svn) so if it's not in svn it should still be removed from the db. Having to use a seperate tool (db-repo-remove) is confusing. Signed-off-by: Florian Pritz Signed-off-by: Pierre Schmitz --- db-remove | 3 +++ 1 file changed, 3 insertions(+) diff --git a/db-remove b/db-remove index 292af5d..b44eb33 100755 --- a/db-remove +++ b/db-remove @@ -38,6 +38,9 @@ if [ -d "${WORKDIR}/svn/$pkgbase/repos/$svnrepo" ]; then /usr/bin/svn commit -q "${WORKDIR}/svn/$pkgbase" -m "$(basename $0): $pkgbase removed by $(id -un)" else warning "$pkgbase not found in $svnrepo" + warning "Removing only $pkgbase from the repo" + warning "If it was a split package you have to remove the others yourself!" + pkgnames=($pkgbase) fi for tarch in ${tarches[@]}; do -- cgit v1.2.3-54-g00ecf From d438ff5d25372ba32e42f89c808f5b33a25042f3 Mon Sep 17 00:00:00 2001 From: Nicolás Reynolds Date: Wed, 3 Aug 2011 16:13:56 -0300 Subject: Changed SVN to ABSLibre --- db-remove | 12 +++--------- 1 file changed, 3 insertions(+), 9 deletions(-) diff --git a/db-remove b/db-remove index b44eb33..ccfeb36 100755 --- a/db-remove +++ b/db-remove @@ -12,9 +12,6 @@ pkgbase="$1" repo="$2" arch="$3" -ftppath="$FTP_BASE/$repo/os" -svnrepo="$repo-$arch" - if ! check_repo_permission $repo; then die "You don't have permission to remove packages from ${repo}" fi @@ -30,14 +27,11 @@ for tarch in ${tarches[@]}; do done msg "Removing $pkgbase from [$repo]..." -/usr/bin/svn checkout -q "${SVNREPO}/${pkgbase}" "${WORKDIR}/svn/${pkgbase}" >/dev/null -if [ -d "${WORKDIR}/svn/$pkgbase/repos/$svnrepo" ]; then - pkgnames=($(. "${WORKDIR}/svn/$pkgbase/repos/$svnrepo/PKGBUILD"; echo ${pkgname[@]})) - /usr/bin/svn rm --force -q "${WORKDIR}/svn/$pkgbase/repos/$svnrepo" - /usr/bin/svn commit -q "${WORKDIR}/svn/$pkgbase" -m "$(basename $0): $pkgbase removed by $(id -un)" +if [ -d "${SVNREPO}/$repo/$pkgbase" ]; then + pkgnames=($(. "${SVNREPO}/$repo/$pkgbase/PKGBUILD"; echo ${pkgname[@]})) else - warning "$pkgbase not found in $svnrepo" + warning "$pkgbase not found in $repo" warning "Removing only $pkgbase from the repo" warning "If it was a split package you have to remove the others yourself!" pkgnames=($pkgbase) -- cgit v1.2.3-54-g00ecf From 69d7089ab3bec9953877f20b008e7b7dd99a3459 Mon Sep 17 00:00:00 2001 From: Joshua Ismael Haase Hernández Date: Wed, 3 Aug 2011 12:16:56 -0700 Subject: Added personal repos --- config | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/config b/config index bc2494f..eda45eb 100644 --- a/config +++ b/config @@ -4,7 +4,7 @@ ARCH_BASE="/home/parabolavnx/parabolagnulinux.org/repo" SVNREPO="/home/parabolavnx/parabolagnulinux.org/abslibre" ARCHREPOS=('core' 'extra' 'community' 'testing' 'multilib') -PKGREPOS=(${ARCHREPOS[@]} 'libre' 'libre-testing' 'social' 'sugar' 'elementary' '~fauno' '~xihh') +PKGREPOS=(${ARCHREPOS[@]} 'libre-testing' 'libre' 'security' 'social' 'sugar' 'elementary' '~fauno' '~xihh' '~smv') PKGPOOL='pool/packages' SRCPOOL='sources/packages' -- cgit v1.2.3-54-g00ecf From 0e4184bc0c06eccd4484c9028c0369554d482aa1 Mon Sep 17 00:00:00 2001 From: Nicolás Reynolds Date: Fri, 5 Aug 2011 19:41:12 -0300 Subject: Added script for creating repos --- create-repo | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100755 create-repo diff --git a/create-repo b/create-repo new file mode 100755 index 0000000..58842c3 --- /dev/null +++ b/create-repo @@ -0,0 +1,24 @@ +#!/bin/bash +# Creates repository structure + +. "$(dirname $0)/db-functions" +. "$(dirname $0)/config" + +if [ $# -eq 0 ]; then + msg "Usage: $0 repo1 [repo2 ... repoX]" + exit 1 +fi + +msg "Creating repos..." +for _repo in $@; do + msg2 "Creating [${_repo}]" + mkdir -p "${FTP_BASE}/staging/${_repo}" || \ + error "Failed creating staging dir" + + for _arch in ${ARCHES[@]}; do + mkdir -p "${FTP_BASE}/${_repo}/os/${_arch}" || \ + error "Failed creating ${_arch} dir" + done +done + +msg "Don't forget to add them to the PKGREPOS array on $(dirname $0)/config" -- cgit v1.2.3-54-g00ecf From cd45a4e2e000312d86b072eef9349b9494cd6d36 Mon Sep 17 00:00:00 2001 From: Nicolás Reynolds Date: Fri, 5 Aug 2011 19:49:23 -0300 Subject: Repo organization --- config | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/config b/config index effdde4..8fd37bf 100644 --- a/config +++ b/config @@ -3,8 +3,15 @@ FTP_BASE="/home/parabolavnx/parabolagnulinux.org/repo" ARCH_BASE="/home/parabolavnx/parabolagnulinux.org/repo" SVNREPO="/home/parabolavnx/parabolagnulinux.org/abslibre" +# Repos from Arch ARCHREPOS=('core' 'extra' 'community' 'testing' 'multilib') -PKGREPOS=(${ARCHREPOS[@]} 'libre' 'libre-testing' 'social' 'sugar') +# Official Parabola repos +OURREPOS=('libre' 'libre-testing') +# User repos +USERREPOS=('~fauno' '~smv' '~xihh') +# Community project repos +PROJREPOS=('social' 'elementary' 'kernels' 'radio' 'security' 'social') +PKGREPOS=(${ARCHREPOS[@]} ${OURREPOS[@]} ${USERREPOS[@]} ${PROJREPOS[@]}) PKGPOOL='pool/packages' SRCPOOL='sources/packages' @@ -33,4 +40,4 @@ PKGEXT=".pkg.tar.?z" SRCEXT=".src.tar.gz" MAKEPKGCONF="$HOME/etc/makepkg.conf" -BLACKLIST_FILE="$HOME/parabolagnulinux.org/docs/blacklist.txt" \ No newline at end of file +BLACKLIST_FILE="$HOME/parabolagnulinux.org/docs/blacklist.txt" -- cgit v1.2.3-54-g00ecf From c1858e5d04ebe2b8c2c45ff71dc8bcfb05b49dd8 Mon Sep 17 00:00:00 2001 From: Nicolás Reynolds Date: Tue, 9 Aug 2011 21:46:24 -0300 Subject: update-abs-tarballs +x --- cron-jobs/update-abs-tarballs | 0 1 file changed, 0 insertions(+), 0 deletions(-) mode change 100644 => 100755 cron-jobs/update-abs-tarballs diff --git a/cron-jobs/update-abs-tarballs b/cron-jobs/update-abs-tarballs old mode 100644 new mode 100755 -- cgit v1.2.3-54-g00ecf From 67c5e5b37efa306c92644922fad65adbb127a4bf Mon Sep 17 00:00:00 2001 From: Nicolás Reynolds Date: Tue, 9 Aug 2011 21:49:27 -0300 Subject: Ignore staging --- cron-jobs/update-abs-tarballs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cron-jobs/update-abs-tarballs b/cron-jobs/update-abs-tarballs index 9990f20..824ac34 100755 --- a/cron-jobs/update-abs-tarballs +++ b/cron-jobs/update-abs-tarballs @@ -2,6 +2,6 @@ . "$(dirname $0)/../config" -rsync -av parabolagnulinux.org::abstar/ ${FTP_BASE}/ +rsync -av --exclude=staging/ parabolagnulinux.org::abstar/ ${FTP_BASE}/ exit $? -- cgit v1.2.3-54-g00ecf From 986fbe51101674c290df8f5c9d0dc3f507c172e2 Mon Sep 17 00:00:00 2001 From: Nicolás Reynolds Date: Thu, 11 Aug 2011 20:45:29 -0300 Subject: Script to solve issue165 --- cron-jobs/repo-sanity-check | 46 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 cron-jobs/repo-sanity-check diff --git a/cron-jobs/repo-sanity-check b/cron-jobs/repo-sanity-check new file mode 100644 index 0000000..a6249b5 --- /dev/null +++ b/cron-jobs/repo-sanity-check @@ -0,0 +1,46 @@ +#!/bin/bash +# Solves issue165 + +. "$(dirname $0)/../db-functions" +. "$(dirname $0)/../config" + +# Traverse all repos +for _repo in ${REPOS[@]}; do + +# Find all pkgnames on this repo's abs + on_abs=($( + find ${SVNREPO}/${_repo} -name PKGBUILD | \ + while read pkgbuild; do + source ${pkgbuild} >/dev/null 2>&1 +# cleanup to save memory + unset build package source md5sums pkgdesc pkgver pkgrel epoch \ + url license arch depends makedepends optdepends options \ + >/dev/null 2>&1 + +# also cleanup package functions + for _pkg in ${pkgname[@]}; do + unset package_${pkg} >/dev/null 2>&1 + done + +# this fills the on_abs array + echo ${pkgname[@]} + done + )) + +# Find all pkgnames on repos + on_repo=($( + find ${FTP_BASE}/${_repo} -name "*.pkg.tar.?z" -printf "%f\n" | \ + sed "s/^\(.\+\)-[^-]\+-[^-]\+-[^-]\+$/\1/" + )) + +# Compares them, whatever is on repos but not on abs should be removed + remove=($(comm -13 <(echo ${on_abs[@]} | tr ' ' "\n" | sort) \ + <(echo ${on_repo[@]} | tr ' ' "\n" | sort))) + +# Remove them from databases, ftpdir-cleanup will take care of the rest + find ${FTP_BASE}/${_repo} -name "*.db.tar.?z" -print0 | \ + xargs -0 repo-remove {} ${remove[@]} + +done + +exit $? -- cgit v1.2.3-54-g00ecf From d1de884ad56e0756a80d5c00bb723e7f2a56491b Mon Sep 17 00:00:00 2001 From: Nicolás Reynolds Date: Thu, 11 Aug 2011 21:37:21 -0300 Subject: Changed xargs for find -exec --- cron-jobs/repo-sanity-check | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/cron-jobs/repo-sanity-check b/cron-jobs/repo-sanity-check index a6249b5..52ca33b 100644 --- a/cron-jobs/repo-sanity-check +++ b/cron-jobs/repo-sanity-check @@ -38,8 +38,8 @@ for _repo in ${REPOS[@]}; do <(echo ${on_repo[@]} | tr ' ' "\n" | sort))) # Remove them from databases, ftpdir-cleanup will take care of the rest - find ${FTP_BASE}/${_repo} -name "*.db.tar.?z" -print0 | \ - xargs -0 repo-remove {} ${remove[@]} + find ${FTP_BASE}/${_repo} -name "*.db.tar.?z" -exec \ + repo-remove {} ${remove[@]} \; done -- cgit v1.2.3-54-g00ecf From 1d7db341d4f27f8ebd7167a8630ea8589e40c464 Mon Sep 17 00:00:00 2001 From: Nicolás Reynolds Date: Thu, 11 Aug 2011 21:39:05 -0300 Subject: Forgot +x --- cron-jobs/repo-sanity-check | 0 1 file changed, 0 insertions(+), 0 deletions(-) mode change 100644 => 100755 cron-jobs/repo-sanity-check diff --git a/cron-jobs/repo-sanity-check b/cron-jobs/repo-sanity-check old mode 100644 new mode 100755 -- cgit v1.2.3-54-g00ecf From d2f65c340f890050c99371e203288afea03d125b Mon Sep 17 00:00:00 2001 From: Nicolás Reynolds Date: Thu, 11 Aug 2011 22:42:01 -0300 Subject: Sort unique pkgnames --- cron-jobs/repo-sanity-check | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/cron-jobs/repo-sanity-check b/cron-jobs/repo-sanity-check index 52ca33b..690a9f8 100755 --- a/cron-jobs/repo-sanity-check +++ b/cron-jobs/repo-sanity-check @@ -34,8 +34,8 @@ for _repo in ${REPOS[@]}; do )) # Compares them, whatever is on repos but not on abs should be removed - remove=($(comm -13 <(echo ${on_abs[@]} | tr ' ' "\n" | sort) \ - <(echo ${on_repo[@]} | tr ' ' "\n" | sort))) + remove=($(comm -13 <(echo ${on_abs[@]} | tr ' ' "\n" | sort -u) \ + <(echo ${on_repo[@]} | tr ' ' "\n" | sort -u))) # Remove them from databases, ftpdir-cleanup will take care of the rest find ${FTP_BASE}/${_repo} -name "*.db.tar.?z" -exec \ -- cgit v1.2.3-54-g00ecf From 7d6595c750903114740c7ab726cd89cb73d6c3a9 Mon Sep 17 00:00:00 2001 From: Nicolás Reynolds Date: Fri, 12 Aug 2011 02:37:50 -0300 Subject: Fixed unexistent REPOS array and skip removal when the ABS tree is empty. --- cron-jobs/repo-sanity-check | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/cron-jobs/repo-sanity-check b/cron-jobs/repo-sanity-check index 690a9f8..92b26ae 100755 --- a/cron-jobs/repo-sanity-check +++ b/cron-jobs/repo-sanity-check @@ -5,7 +5,7 @@ . "$(dirname $0)/../config" # Traverse all repos -for _repo in ${REPOS[@]}; do +for _repo in ${PKGREPOS[@]}; do # Find all pkgnames on this repo's abs on_abs=($( @@ -27,6 +27,12 @@ for _repo in ${REPOS[@]}; do done )) +# quit if abs is empty + if [ ${#on_abs[*]} -eq 0 ]; then + warning "[${_repo}]'s ABS tree is empty, skipping" + break + fi + # Find all pkgnames on repos on_repo=($( find ${FTP_BASE}/${_repo} -name "*.pkg.tar.?z" -printf "%f\n" | \ -- cgit v1.2.3-54-g00ecf From a032c1fad3e2d57a7a1b7cef65d90ea06a766784 Mon Sep 17 00:00:00 2001 From: Nicolás Reynolds Date: Sat, 13 Aug 2011 12:42:42 -0300 Subject: Cleaner sourceballs2 --- cron-jobs/sourceballs2 | 29 ++++++++++++++--------------- 1 file changed, 14 insertions(+), 15 deletions(-) diff --git a/cron-jobs/sourceballs2 b/cron-jobs/sourceballs2 index b29b396..a43d71e 100755 --- a/cron-jobs/sourceballs2 +++ b/cron-jobs/sourceballs2 @@ -33,24 +33,28 @@ for repo in ${PKGREPOS[@]}; do continue } - unset pkgbase pkgname +# Unset the previous data + unset pkgbase pkgname pkgver pkgrel source PKGBUILD + + unset build package url pkgdesc source md5sums depends makedepends \ + optdepends license arch options check mksource + + for _pkg in ${pkgname[@]}; do + unset package_${_pkg} >/dev/null 2>&1 + done + pkgbase=${pkgbase:-$pkgname} + srcfile="${pkgbase}-${pkgver}-${pkgrel}${SRCEXT}" - echo "${pkgbase}-${pkgver}-${pkgrel}${SRCEXT}" >> "${WORKDIR}/expected-src-pkgs" + echo "${srcfile}" >> "${WORKDIR}/expected-src-pkgs" # Skip already sourceballed - [[ -e "${SRCPKGDEST}/${pkgbase}-${pkgver}-${pkgrel}${SRCEXT}" ]] && \ - continue + [ -e "${SRCPKGDEST}/${srcfile}" ] && continue - msg2 "$pkgbase-$pkgver-$pkgrel..." - makepkg --allsource --ignorearch -c makepkg --allsource --ignorearch -c >/dev/null 2>&1 - [[ $? -ne 0 ]] && { - warning "Failed." - failedpkgs[${#failedpkgs[*]}]="${pkgbase}-${pkgver}-${pkgrel}${SRCEXT}" - } + [ $? -ne 0 ] && failedpkgs+=("${srcfile}") done popd >/dev/null @@ -89,10 +93,5 @@ if [ ${#old_pkgs[@]} -ge 1 ]; then done fi -msg "Failed" -for _fail in ${failedpkgs[@]}; do - msg2 "$_fail" -done - script_unlock -- cgit v1.2.3-54-g00ecf From f23d7103fec259ebe2ba796ae7f351dfbda5b705 Mon Sep 17 00:00:00 2001 From: Nicolás Reynolds Date: Sat, 13 Aug 2011 12:51:32 -0300 Subject: Added useful messages --- cron-jobs/repo-sanity-check | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/cron-jobs/repo-sanity-check b/cron-jobs/repo-sanity-check index 92b26ae..1ba90a6 100755 --- a/cron-jobs/repo-sanity-check +++ b/cron-jobs/repo-sanity-check @@ -6,6 +6,7 @@ # Traverse all repos for _repo in ${PKGREPOS[@]}; do + msg "Cleaning up [${_repo}]" # Find all pkgnames on this repo's abs on_abs=($( @@ -45,7 +46,10 @@ for _repo in ${PKGREPOS[@]}; do # Remove them from databases, ftpdir-cleanup will take care of the rest find ${FTP_BASE}/${_repo} -name "*.db.tar.?z" -exec \ - repo-remove {} ${remove[@]} \; + repo-remove {} ${remove[@]} >/dev/null 2>&1 \; + + msg2 "Removed the following packages:" + plain "$(echo ${remove[@]} | tr ' ' "\n")" done -- cgit v1.2.3-54-g00ecf From eac9e4d43cc33bf6671fdbd7f04e5bab387259d6 Mon Sep 17 00:00:00 2001 From: Nicolás Reynolds Date: Sat, 13 Aug 2011 13:15:35 -0300 Subject: Failedpkgs array wasn't working --- cron-jobs/sourceballs2 | 16 +++++----------- 1 file changed, 5 insertions(+), 11 deletions(-) diff --git a/cron-jobs/sourceballs2 b/cron-jobs/sourceballs2 index a43d71e..5e228fc 100755 --- a/cron-jobs/sourceballs2 +++ b/cron-jobs/sourceballs2 @@ -22,10 +22,10 @@ find "${ARCH_BASE}/${SRCPOOL}" -xtype f -name "*${SRCEXT}" -printf '%f\n' | sort pushd "${SVNREPO}" >/dev/null for repo in ${PKGREPOS[@]}; do - failedpkgs=() + msg "Sourceballing [${repo}]" pushd $repo >/dev/null - find . -maxdepth 1 -type d | while read pkg; do + find -maxdepth 1 -type d | while read pkg; do pushd "${SVNREPO}/$repo/$pkg" >/dev/null [[ ! -e PKGBUILD ]] && { @@ -54,18 +54,12 @@ for repo in ${PKGREPOS[@]}; do makepkg --allsource --ignorearch -c >/dev/null 2>&1 - [ $? -ne 0 ] && failedpkgs+=("${srcfile}") + [ $? -ne 0 ] && plain ${srcfile} - done + done # end find pkgs popd >/dev/null - if [ ${#failedpkgs[@]} -ge 1 ]; then - msg "Failed to create source packages for [${repo}]..." - for failed_pkg in ${failedpkgs[@]}; do - msg2 "${failed_pkg}" - done - fi -done +done # end repos # Cleanup old source packages cat "${WORKDIR}/expected-src-pkgs" | sort -u > "${WORKDIR}/expected-src-pkgs.sort" -- cgit v1.2.3-54-g00ecf From 119de3a00044c0f854c21cd3620666414b1c6a7e Mon Sep 17 00:00:00 2001 From: Nicolás Reynolds Date: Wed, 17 Aug 2011 18:14:44 -0300 Subject: Script to restore packages from the cleanup destdir --- repo-restore-to-normal | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 54 insertions(+) create mode 100755 repo-restore-to-normal diff --git a/repo-restore-to-normal b/repo-restore-to-normal new file mode 100755 index 0000000..e46cfc9 --- /dev/null +++ b/repo-restore-to-normal @@ -0,0 +1,54 @@ +#!/bin/bash +# Solves issue165 + +. "$(dirname $0)/db-functions" +. "$(dirname $0)/config" + +# Find all pkgnames on old with pkgvers + on_repo=($(find ${CLEANUP_DESTDIR} -name "*.pkg.tar.?z" -printf "%f\n" | \ + sed "s/^\(.\+-[^-]\+\)-[^-]\+-[^-]\+$/\1/")) + +# Traverse all repos +for _repo in ${PKGREPOS[@]}; do + msg "Restoring [${_repo}]" + +# Find all pkgnames on this repo's abs + on_abs=($( + find ${SVNREPO}/${_repo} -name PKGBUILD | \ + while read pkgbuild; do + source ${pkgbuild} >/dev/null 2>&1 +# cleanup to save memory + unset build package source md5sums pkgdesc pkgrel epoch \ + url license arch depends makedepends optdepends options \ + >/dev/null 2>&1 + +# also cleanup package functions + for _pkg in ${pkgname[@]}; do + unset package_${pkg} >/dev/null 2>&1 + done + +# this fills the on_abs array + echo ${pkgname[@]}-${pkgver} + done + )) + +# quit if abs is empty + if [ ${#on_abs[*]} -eq 0 ]; then + warning "[${_repo}]'s ABS tree is empty, skipping" + break + fi + +# Compares them, whatever is on abs should be restored + restore=($(comm -12 <(echo ${on_abs[@]} | tr ' ' "\n" | sort -u) \ + <(echo ${on_repo[@]} | tr ' ' "\n" | sort -u))) + + msg2 "Restoring the following packages:" + plain "$(echo ${restore[@]} | tr ' ' "\n")" + + for _pkg in ${restore[@]}; do + find ${CLEANUP_DESTDIR} -name "${_pkg}*" -exec mv -v '{}' ${STAGING}/${_repo} + done + +done + +exit $? -- cgit v1.2.3-54-g00ecf From 4d760a1e9b92168a07aa8c7a3a9de481ebcac2a5 Mon Sep 17 00:00:00 2001 From: Joshua Ismael Haase Hernández Date: Fri, 9 Sep 2011 12:33:51 -0700 Subject: Added [~mtjm], changed blacklist to git --- config | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/config b/config index 8fd37bf..0e8dc2e 100644 --- a/config +++ b/config @@ -8,7 +8,7 @@ ARCHREPOS=('core' 'extra' 'community' 'testing' 'multilib') # Official Parabola repos OURREPOS=('libre' 'libre-testing') # User repos -USERREPOS=('~fauno' '~smv' '~xihh') +USERREPOS=('~fauno' '~smv' '~xihh' '~mtjm') # Community project repos PROJREPOS=('social' 'elementary' 'kernels' 'radio' 'security' 'social') PKGREPOS=(${ARCHREPOS[@]} ${OURREPOS[@]} ${USERREPOS[@]} ${PROJREPOS[@]}) @@ -40,4 +40,4 @@ PKGEXT=".pkg.tar.?z" SRCEXT=".src.tar.gz" MAKEPKGCONF="$HOME/etc/makepkg.conf" -BLACKLIST_FILE="$HOME/parabolagnulinux.org/docs/blacklist.txt" +BLACKLIST_FILE="$HOME/blacklist/blacklist.txt" -- cgit v1.2.3-54-g00ecf From 178c720a4c2fd8adf20e6109784c39cc27dd6b30 Mon Sep 17 00:00:00 2001 From: Joshua Ismael Haase Hernández Date: Fri, 9 Sep 2011 12:35:46 -0700 Subject: Inform found packages --- db-check-nonfree | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/db-check-nonfree b/db-check-nonfree index 83efb14..ab6491d 100755 --- a/db-check-nonfree +++ b/db-check-nonfree @@ -29,10 +29,11 @@ for repo in ${ARCHREPOS[@]}; do dbpkgs=($(bsdtar -xOf "${FTP_BASE}/${repo}/os/${pkgarch}/${repo}${DBEXT}" | awk '/^%NAME%/{getline;print}' | sort -u )) for pkgname in ${dbpkgs[@]}; do if in_array ${pkgname} ${nonfree[@]}; then - cleanpkgs[${#cleanpkgs[*]}]=${pkgname} + cleanpkgs+=(${pkgname}) fi done if [ ${#cleanpkgs[@]} -ge 1 ]; then + msg2 "Unfree: ${cleanpkgs[@]}" arch_repo_remove "${repo}" "${pkgarch}" ${cleanpkgs[@]} fi done -- cgit v1.2.3-54-g00ecf From e9d0581b173853e647b36caa170b7c4bbee43643 Mon Sep 17 00:00:00 2001 From: Joshua Ismael Haase Hernández Date: Fri, 9 Sep 2011 12:39:56 -0700 Subject: Several fixes --- repo-restore-to-normal | 28 ++++++++++++++++------------ 1 file changed, 16 insertions(+), 12 deletions(-) diff --git a/repo-restore-to-normal b/repo-restore-to-normal index e46cfc9..9463731 100755 --- a/repo-restore-to-normal +++ b/repo-restore-to-normal @@ -4,9 +4,12 @@ . "$(dirname $0)/db-functions" . "$(dirname $0)/config" -# Find all pkgnames on old with pkgvers - on_repo=($(find ${CLEANUP_DESTDIR} -name "*.pkg.tar.?z" -printf "%f\n" | \ - sed "s/^\(.\+-[^-]\+\)-[^-]\+-[^-]\+$/\1/")) +CLEANUP_DESTDIR=/home/parabolavnx/repo/pool/restore +PKGREPOS=(community) + +# Find all pkgnames on old with pkgver-pkgrels +#on_repo=($(find ${CLEANUP_DESTDIR} -name "*.pkg.tar.?z" -printf "%f\n" | \ +# sed "s/^\(.\+-[^-]\+-[^-]\+\)-[^-]\+$/\1/")) # Traverse all repos for _repo in ${PKGREPOS[@]}; do @@ -16,37 +19,38 @@ for _repo in ${PKGREPOS[@]}; do on_abs=($( find ${SVNREPO}/${_repo} -name PKGBUILD | \ while read pkgbuild; do + unset pkgname pkgver pkgrel source ${pkgbuild} >/dev/null 2>&1 # cleanup to save memory - unset build package source md5sums pkgdesc pkgrel epoch \ + unset build package source md5sums pkgdesc epoch \ url license arch depends makedepends optdepends options \ >/dev/null 2>&1 # also cleanup package functions for _pkg in ${pkgname[@]}; do unset package_${pkg} >/dev/null 2>&1 +# this fills the on_abs array + echo ${_pkg}-${pkgver}-${pkgrel} done -# this fills the on_abs array - echo ${pkgname[@]}-${pkgver} done )) # quit if abs is empty if [ ${#on_abs[*]} -eq 0 ]; then warning "[${_repo}]'s ABS tree is empty, skipping" - break + continue fi # Compares them, whatever is on abs should be restored - restore=($(comm -12 <(echo ${on_abs[@]} | tr ' ' "\n" | sort -u) \ - <(echo ${on_repo[@]} | tr ' ' "\n" | sort -u))) +# restore=($(comm -12 <(echo ${on_abs[@]} | tr ' ' "\n" | sort -u) \ +# <(echo ${on_repo[@]} | tr ' ' "\n" | sort -u))) msg2 "Restoring the following packages:" - plain "$(echo ${restore[@]} | tr ' ' "\n")" +# plain "$(echo ${restore[@]} | tr ' ' "\n")" - for _pkg in ${restore[@]}; do - find ${CLEANUP_DESTDIR} -name "${_pkg}*" -exec mv -v '{}' ${STAGING}/${_repo} + for _pkg in ${on_abs[@]}; do + find ${CLEANUP_DESTDIR} -name "${_pkg}*" -exec cp -v '{}' ${STAGING}/${_repo} \; done done -- cgit v1.2.3-54-g00ecf