#!/bin/sh #create .deb files for packages (fremantle&harmattan) if [ ! $1 ];then echo Create .deb files for fremantle and harmattan devices echo Usage: make-deb /path/to/package exit 0 fi #step in package directory chdir "$1" #versionnumber and packagename from control file packagename=`grep "Package: " DEBIAN/control | cut -d ' ' -f 2` versionnumber=`grep "Version: " DEBIAN/control | cut -d ' ' -f 2` #remove old md5 and digsig sums rm -f DEBIAN/md5sums 2>/dev/null rm -f DEBIAN/digsigsums 2>/dev/null #list all folders except DEBIAN find | grep -v "./DEBIAN" > ../md5 #get md5 and digsig sums to DEBIAN/ while read line do if [ -f "$line" ]; then #cut "./" from beginning line=`echo "$line" | cut -c 3-` #get md5 md5sum "$line" >> DEBIAN/md5sums #get sha1 for digital signatures echo S 15 com.nokia.maemo H 40 `sha1sum "$line" | cut -c -40` R `expr length "$line"` $line >> DEBIAN/digsigsums fi done < "../md5" #remove temp file list rm -f ../md5 #package control.tar.gz and data.tar.gz tar -cvzf ../control.tar.gz -C DEBIAN/ . >/dev/null tar -cvzf ../data.tar.gz . --exclude=DEBIAN >/dev/null echo 2.0>../debian-binary #step outside package folder cd .. #create debian archive "package_version.deb" ar -rcv $packagename"_"$versionnumber.deb debian-binary control.tar.gz data.tar.gz >/dev/null #remove packaged files rm -f debian-binary control.tar.gz data.tar.gz 2>/dev/null