Package: local-apt-repository Version: 0.9 Followup-For: Bug #1085265 X-Debbugs-Cc: okgomdjgbm...@gmail.com
Dear Maintainer, in the previous one, the loop doesn't do its job. fix
#!/bin/bash set -e DEBS=/srv/local-apt-repository REPO=/var/lib/local-apt-repository if ! test -d $DEBS then # We still need ot create the files lest apt will complain > $REPO/Packages > $REPO/Sources else # We want to cater for the possibility that something is added to $DEBS as we # run, or that a file is slowly written. In this case, we want to wait a bit # and restart. But lets bound this to 10 runs. for n in $(seq 0 10) do # This is the second round alreay, lets wait a while if [ "$n" != "0" ] then echo "Further changes are coming in, waiting..." sleep 10 fi # Relative paths work better than absolute (cd $REPO apt-ftparchive packages --db cache.db ../../../$DEBS > $REPO/Packages apt-ftparchive sources --db cache.db ../../../$DEBS > $REPO/Sources ) && break || true # ^ this can fail during a partial write to the directory (which # would be detected by the loop), so ignore errors here done fi apt-ftparchive \ -o "APT::FTPArchive::Release::Origin=local-apt-repository" \ -o "APT::FTPArchive::Release::Description=Local repository created by local-apt-repository" \ release $REPO > $REPO/Release