1
0
mirror of git://projects.qi-hardware.com/openwrt-xburst.git synced 2024-11-16 22:43:43 +02:00
openwrt-xburst/scripts/ipkg-make-index.sh
jow c5cbe120d8 [PATCH 1/2] Never write errors to stdout from ipkg-make-index.sh
Since the output of ipkg-make-index.sh is unconditionally used to create
the Packages file, sending the errors into this file is unacceptable
(both because they are not shown to users and because they make an
invalid Packages file).

For incorrect invocation, write to stderr.
For errors from which, send to /dev/null with stdout.

Signed-off-by: Kevin Locke <klocke@digitalenginesoftware.com>



git-svn-id: svn://svn.openwrt.org/openwrt/trunk@25677 3c298f89-4303-0410-b956-a3cf2f4a3e73
2011-02-23 22:58:58 +00:00

25 lines
666 B
Bash
Executable File

#!/bin/sh
set -e
pkg_dir=$1
if [ -z $pkg_dir ] || [ ! -d $pkg_dir ]; then
echo "Usage: ipkg-make-index <package_directory>" >&2
exit 1
fi
which md5sum >/dev/null 2>&1 || alias md5sum=md5
for pkg in `find $pkg_dir -name '*.ipk' | sort`; do
echo "Generating index for package $pkg" >&2
file_size=$(ls -l $pkg | awk '{print $5}')
md5sum=$(md5sum $pkg | awk '{print $1}')
# Take pains to make variable value sed-safe
sed_safe_pkg=`echo $pkg | sed -e 's/^\.\///g' -e 's/\\//\\\\\\//g'`
tar -xzOf $pkg ./control.tar.gz | tar xzOf - ./control | sed -e "s/^Description:/Filename: $sed_safe_pkg\\
Size: $file_size\\
MD5Sum: $md5sum\\
Description:/"
echo ""
done