I've been working on the integration of the BLFS patches into the patches project. Right now I've created a script (below) that can run on belgarath and identify patches in blfs and not in the patches project download directory.
There are a couple of approaches I can take and one problem. First the problem. The script below looks for blfs referenced patches in the patches download directory. This directory is not updated immediately when changes are made to the patches svn repository. This makes the script identify files as missing that may be recently placed in the repository and not yet in the download directory. There are several options to solve this problem: 1. Extract the entire patches repository to /tmp and compare against those files. 2. Set up the patches svn system to automatically repopulate the patches download directory upon each commit. 3. Do nothing and only address problems that continue after 24 hours or so after we are sure the patches download directory has been updated via its normal cron refresh. ------ As far as integration approaches go, I can: 1. Integrate this script with the normal twice daily blfs render. 2. Run it as a separate cron job. 3. Integrate it into the blfs Makefile for editors to run manually. This will require local editing or a standard location for each editor's patches project sandbox. Any feedback will be appreciated. -- Bruce ------ #!/bin/bash function die { echo "Failure: $1 at line number $2" #Remove temp files cd /tmp rm -fr $XML_DIR exit 1 } XML_DIR=`mktemp -d /tmp/blfsbookxml.XXXXXX` || exit 1 SVN="svn://svn.linuxfromscratch.org/BLFS/trunk" BLFS_DIR=$XML_DIR/BLFS/ BOOK_DIR=$BLFS_DIR/BOOK PATCHES_DIR=/home/httpd/www.linuxfromscratch.org/patches/downloads DATE=$(date +%Y-%m-%d) [ ! -d $XML_DIR ] && mkdir -p $XML_DIR # Extract the book cd $XML_DIR || die "Could not cd to $XML_DIR" $LINENO svn --quiet export "$SVN" BLFS || die "svn export failed" $LINENO # Check for missing patches cd $BOOK_DIR || die "Could not cd to $BOOK_DIR" $LINENO xsltproc --xinclude --nonet --output blfs-patch-list \ stylesheets/patcheslist.xsl index.xml sed -e "s|^.*/||" blfs-patch-list > blfs-patches || die "xsltproc to generate patch list failed" $LINENO PATCHES=`sort blfs-patches` for p in $PATCHES; do PATCH=`find $PATCHES_DIR -name $p` if [ -n "$PATCH" ]; then #echo "Found '$PATCH'" : else echo "Missing $p" fi done # Remove the temporary files cd /tmp rm -fr $XML_DIR || die "Could not rm -fr $XML_DIR" $LINENO -- http://linuxfromscratch.org/mailman/listinfo/blfs-dev FAQ: http://www.linuxfromscratch.org/blfs/faq.html Unsubscribe: See the above information page