diff options
Diffstat (limited to 'dev')
37 files changed, 1660 insertions, 222 deletions
diff --git a/dev/perl/perl-berkeleydb/Manifest b/dev/perl/perl-berkeleydb/Manifest new file mode 100644 index 00000000..6192f2b0 --- /dev/null +++ b/dev/perl/perl-berkeleydb/Manifest @@ -0,0 +1,23 @@ +-----BEGIN PGP SIGNED MESSAGE----- +Hash: SHA256 + +DIST BerkeleyDB-0.39.tar.gz 183402 MD5 da4cff937216a147162a6df76cae8096 RMD160 658768fd63bdefc462495f0b83784203f24d41a5 SHA1 48ea90015d6868696217022cbc71d87d086befbe SHA256 42ceb5c0037abb4df78768cc6b7c7788dcef45139219095ddbbd15cb3381ae41 SHA512 e389f2eea63ab86b8b0a78c4bb4f61990dac2d7e828bd2339e167f81139ba9dec965c34607f9950d50036e9fc4c7da7a5cfab7e64bb893932146fdcede6543df +MKBUILD perl-berkeleydb.mkbuild 2350 MD5 e88494005f170e7a2e5c9976b9fcf598 RMD160 6f5eec0b6c6bf329222aedf57b03514a65b5efb9 SHA1 84cdf151600e8e85d4152e2d00dcf754d65c65b6 SHA256 89bb057322b122db69d5f83ada7ae2ad6ba7e2d737c51a65c4f56a5463844e5d SHA512 ea4e8b475f8f7627385d03f05ccec22a624d80230930003e53eefe72438e5ae0d8ff523ad05a85cabeb1a02bd771b10eb0442885647e688dba8a5c3fbedeb657 +SLACKBUILD perl-berkeleydb.SlackBuild 7033 MD5 385db756a8b8edbbd413ae8558f4a051 RMD160 13649529e2f659cb9aab2e43f9d290d6948e589b SHA1 aa60516927b06ef318feba0a2620c7844ebb250d SHA256 7974f1973927aa1c4a61ba7c62a648642ee9f64bd632c33564cf7da7c7af2858 SHA512 57f332cb9f5891b3644c90592e8c737437880c8f00ebb24a548fe4a51f73b06a25b10c9b5e9e6ad3c254c0454f11f81b85ad4fe68d759bc4cf6187a7492f6d55 +-----BEGIN PGP SIGNATURE----- +Version: GnuPG v1.4.9 (GNU/Linux) + +iQIcBAEBCAAGBQJKr/9lAAoJEEHL93ESzgei1P4QALQCBbDSsqx7Ubk7i3xRzLsU +6ty/O1cL/gvbIH/2C+14dHEizIW3lrgfsP54DVaMjQhyu4LCTs3uHrW5QVst2HWd +100CQPseYmPq6FjM0mCaZd6pQp7qhiX0MHNRbLlSPYZmZWN0ePC9W9gE8WbC33uI +UFLKNYsqbsJYMYTzYJvGv8qXE22GkauAUHSC6Jis7cilm4XbC7jqL6a/knfGr4AE +RKGEEKQLv3xur6WIreBWncLC+TbmpFcICcv+kTh9Ndr2d0Z37C26S8uDEKSVwxJL +aaEzcChU6VJwQf3q+PjSUISR5/M4XbRKcm/i+hl+MGcPXZPpxTIfjPjenPjETrCp +hsgXORDpHKJwCTjF24TazguGv8AgEqRDk6Ba8fyD+AC3ABorYTEvTqn6U8c7msjn +n6+wnpLUf1VAQ5RCnaXViTv0q1DD4xCaGxhO+mfB6D8VrTBVajjhSiI0L4vu9cB4 +FBD7E1bkqqfgKE1Iz5r5ReXtBe5Gqjll+BnYmzHlXBcVilmHNdVAewK+EgLYlNox +oKevcVgsMU7/EgQj/Yhutirct9HXKHh2Lkf3bKqO46dJESIJ3lGwLez+GV1KUv1A +O/5IhZV882B7HJNPWa+wp8LqmWXxH8LhvtzUVr0Cex6B+IruFRCNiM6zXGOR6U7L +o4sV6vZGJb4QJgCtzwMS +=Tx28 +-----END PGP SIGNATURE----- diff --git a/dev/perl/perl-berkeleydb/perl-berkeleydb.SlackBuild b/dev/perl/perl-berkeleydb/perl-berkeleydb.SlackBuild index 78451f05..62da4f2a 100755 --- a/dev/perl/perl-berkeleydb/perl-berkeleydb.SlackBuild +++ b/dev/perl/perl-berkeleydb/perl-berkeleydb.SlackBuild @@ -16,7 +16,8 @@ # # slackbuild for perl-berkeleydb, by Silvio Rhatto # requires: -# tested: perl-berkeleydb-0.34 +# tested: perl-berkeleydb-0.39 +# model: perl.mkSlackBuild $Rev: 796 $ # # Look for slackbuildrc @@ -31,13 +32,14 @@ CWD="$(pwd)" SRC_NAME="BerkeleyDB" PKG_NAME="perl-berkeleydb" ARCH=${ARCH:=i486} -SRC_VERSION=${VERSION:=0.34} +SRC_VERSION=${VERSION:=0.39} PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rha} SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} +SLACKBUILD_PATH=${SLACKBUILD_PATH:="dev/perl/perl-berkeleydb"} PREFIX=${PREFIX:=/usr} PKG_WORK="$TMP/$SRC_NAME" CONF_OPTIONS=${CONF_OPTIONS:=""} @@ -64,6 +66,7 @@ ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 +ERROR_MANIFEST=43; # Clean up any leftovers of previous builds rm -rf "$PKG_SRC" 2> /dev/null @@ -83,6 +86,72 @@ if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET fi +# Check Manifest file +if [ -e "$CWD/Manifest" ]; then + + # Manifest signature checking + if grep -q -- "-----BEGIN PGP SIGNED MESSAGE-----" $CWD/Manifest; then + echo "Checking Manifest signature..." + gpg --verify $CWD/Manifest + if [ "$?" != "0" ]; then + exit $ERROR_MANIFEST + fi + fi + + MANIFEST_LINES="`grep -E -v "^(MKBUILD|SLACKBUILD)" $CWD/Manifest | wc -l`" + + for ((MANIFEST_COUNT=1; MANIFEST_COUNT <= $MANIFEST_LINES; MANIFEST_COUNT++)); do + + MANIFEST_LINE="`grep -E -v "^(MKBUILD|SLACKBUILD)" $CWD/Manifest | head -n $MANIFEST_COUNT | tail -n 1`" + MANIFEST_FILE="`echo $MANIFEST_LINE | awk '{ print $2 }'`" + MANIFEST_FILE_TYPE="`echo $MANIFEST_LINE | awk '{ print $1 }'`" + + if [ -e "$SRC_DIR/$MANIFEST_FILE" ]; then + MANIFEST_FILE="$SRC_DIR/$MANIFEST_FILE" + else + MANIFEST_FILE="`find $CWD -name $MANIFEST_FILE`" + fi + + if [ ! -e "$MANIFEST_FILE" ] || [ -d "$MANIFEST_FILE" ]; then + continue + fi + + echo "Checking Manifest for $MANIFEST_FILE_TYPE $MANIFEST_FILE integrity..." + + SIZE_SRC="`wc -c $MANIFEST_FILE | awk '{ print $1 }'`" + SIZE_MANIFEST="`echo $MANIFEST_LINE | awk '{ print $3 }'`" + + # Check source code size + if [ "$SIZE_SRC" != "$SIZE_MANIFEST" ]; then + echo "SIZE Manifest: $SIZE_MANIFEST; SIZE $SRC: $SIZE_SRC" + exit $ERROR_MANIFEST + else + echo "Size match." + fi + + # Check source code integrity + for ALGO in md5 sha1 sha256 sha512 rmd160; do + if [ $ALGO = "rmd160" ]; then + ALGO_SRC="`openssl rmd160 $MANIFEST_FILE | awk '{ print $2 }'`" + else + ALGO_SRC="`"$ALGO"sum $MANIFEST_FILE | awk '{ print $1 }'`" + fi + ALGO="`echo $ALGO | tr '[:lower:]' '[:upper:]'`" + ALGO_MANIFEST=$(echo $MANIFEST_LINE | sed "s/.* $ALGO //" | awk '{ print $1 }') + if [ "$ALGO_SRC" != "$ALGO_MANIFEST" ]; then + echo "$ALGO Manifest: $ALGO_MANIFEST; $ALGO $SRC: $ALGO_SRC" + exit $ERROR_MANIFEST + else + echo "$ALGO match." + fi + done + + done + +else + exit $ERROR_MANIFEST +fi + # Untar cd "$PKG_WORK" tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR @@ -148,9 +217,10 @@ EODESC # Build the package cd "$PKG" -makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG +mkdir -p $REPOS/$SLACKBUILD_PATH +makepkg -l y -c n "$REPOS/$SLACKBUILD_PATH/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG # Delete source and build directories if requested -if [ "$CLEANUP" == "yes" ]; then +if [ "$CLEANUP" == "yes" ] || [ "$1" = "--cleanup" ]; then rm -rf "$PKG_WORK" "$PKG" fi diff --git a/dev/perl/perl-convert-tnef/Manifest b/dev/perl/perl-convert-tnef/Manifest new file mode 100644 index 00000000..873fb56d --- /dev/null +++ b/dev/perl/perl-convert-tnef/Manifest @@ -0,0 +1,23 @@ +-----BEGIN PGP SIGNED MESSAGE----- +Hash: SHA256 + +DIST Convert-TNEF-0.17.tar.gz 12173 MD5 31cddf42fae9495b4a686b17ec68d7e0 RMD160 4f0f0b15f2784c46fda28b49f2a7c6d2fffe427b SHA1 c88cbda33e2bb5b12b36d7e8a1824dbad4080d30 SHA256 4efe969f24300f2485982941c396dca336081fe08f33f82938f55242efde9478 SHA512 832ba3c8f2be318d8f4a5afd101e602d5f5117d8375b0ef7291d063843f5d98581800eae937689f089853fe545f47dfca9fd106aac37d1923ba772aa39ce7707 +MKBUILD perl-convert-tnef.mkbuild 2363 MD5 415991cb294d369ef02e31f1790f38f8 RMD160 1cfe72927c7eb7b4d804bbf2f024c12354c50b17 SHA1 38c87c2a340a2f69445b6790ebe10928cc25ecff SHA256 7e2d4e85356bb76a604881391ef702d401e28d8ff8f5c78c350025862e7975ec SHA512 b53af2f2ab9f53b3def4b3c03c065cbc30342b8342a404366d0d8c4035dba463b7ba2b9fc9cc4f210899cebab7db8b92f19a8e8b8a49acb1fce52fe407ce9c64 +SLACKBUILD perl-convert-tnef.SlackBuild 7054 MD5 999f7d22089999646c4b646a313bbd03 RMD160 b2c615eb326c8f4e238b05cf9e96e8366e87a66a SHA1 1665cffb29f525bfdd3cba2bff397bcab9c27ec2 SHA256 240fc4e51d32428d82b90ea5de2a886dd2cde78d0e2c103025ada1fe28486157 SHA512 0422e5ecf45a839ee14ea242ac794db97b1b827ad8fb12161098dbddeb17bc1a63e54c5e780b717d4c3aba2c74144ef1bee85c9e5a4e969dac003e1ad6826b74 +-----BEGIN PGP SIGNATURE----- +Version: GnuPG v1.4.9 (GNU/Linux) + +iQIcBAEBCAAGBQJKr+h7AAoJEEHL93ESzgeic/8P/07Otee+us0iyavgn8yk6j90 +TmGrtjCDxUflPUZDzIhb/Ee0V2QtaDAwoLU/z9vUyUViN0TiOd8i7IdyxzTJQpZ4 +e3PnjZ81JXEfzJZroFR0VThxZkWx3ZRtfwWR3FSs2uk/QvreR8/+qQEtzQzZE6eJ +3s/pbmvnDcdKRxiZhnIDtzNOTHR+3itslunJWsF9DiI5yW7F6gECxQ/2xCbW15JT +EwzLddJ/JrO7gFvkkErn4S9CYRLOt3+ExKmKA6jbTlQyd28KA9AxxYYYS2dhJu4T +RJMAbkDyodJFWgNu+T9ln2fATHxHsSykxmAXh42mL6f2ECJskb/pukpEqUSS5xj2 +Pft3S0VYO92Hi6OYyG7h/ZGXhcIfkNLzVz7egOA1SOCsteW0IlsW3epKsAlIV5sb +JF0RKKYSvCvcs+hojEE2JsYElk7rBRH/CBdaNToaGs1WRlLMcZfRdPcGwdIN6Cz3 +y4BJ2jqggRuxthBYMVmydwIUyfP8wq1CNpMH2CZvELMi72qOtPGKIaLD+vyZgmgv +juzX+MVSpCUnKvhdiwueOiTD0nEzry3EiYozu47xzSqHJf17RpDq6UqEAIzYAVfj +qROUqwWwlucEII8h4qUHo4gp7FLrjC6yDS23DlXHW4c3z9tGtOk31CqRKlfm3RfZ +lVB4Z2tkwE0c+UkuIU23 +=xkxw +-----END PGP SIGNATURE----- diff --git a/dev/perl/perl-convert-tnef/perl-convert-tnef.SlackBuild b/dev/perl/perl-convert-tnef/perl-convert-tnef.SlackBuild index 9b4bed4a..bc19c0f4 100755 --- a/dev/perl/perl-convert-tnef/perl-convert-tnef.SlackBuild +++ b/dev/perl/perl-convert-tnef/perl-convert-tnef.SlackBuild @@ -17,6 +17,7 @@ # slackbuild for perl-convert-tnef, by Silvio Rhatto # requires: # tested: perl-convert-tnef-0.17 +# model: perl.mkSlackBuild $Rev: 796 $ # # Look for slackbuildrc @@ -38,6 +39,7 @@ SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} +SLACKBUILD_PATH=${SLACKBUILD_PATH:="dev/perl/perl-convert-tnef"} PREFIX=${PREFIX:=/usr} PKG_WORK="$TMP/$SRC_NAME" CONF_OPTIONS=${CONF_OPTIONS:=""} @@ -64,6 +66,7 @@ ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 +ERROR_MANIFEST=43; # Clean up any leftovers of previous builds rm -rf "$PKG_SRC" 2> /dev/null @@ -83,6 +86,72 @@ if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET fi +# Check Manifest file +if [ -e "$CWD/Manifest" ]; then + + # Manifest signature checking + if grep -q -- "-----BEGIN PGP SIGNED MESSAGE-----" $CWD/Manifest; then + echo "Checking Manifest signature..." + gpg --verify $CWD/Manifest + if [ "$?" != "0" ]; then + exit $ERROR_MANIFEST + fi + fi + + MANIFEST_LINES="`grep -E -v "^(MKBUILD|SLACKBUILD)" $CWD/Manifest | wc -l`" + + for ((MANIFEST_COUNT=1; MANIFEST_COUNT <= $MANIFEST_LINES; MANIFEST_COUNT++)); do + + MANIFEST_LINE="`grep -E -v "^(MKBUILD|SLACKBUILD)" $CWD/Manifest | head -n $MANIFEST_COUNT | tail -n 1`" + MANIFEST_FILE="`echo $MANIFEST_LINE | awk '{ print $2 }'`" + MANIFEST_FILE_TYPE="`echo $MANIFEST_LINE | awk '{ print $1 }'`" + + if [ -e "$SRC_DIR/$MANIFEST_FILE" ]; then + MANIFEST_FILE="$SRC_DIR/$MANIFEST_FILE" + else + MANIFEST_FILE="`find $CWD -name $MANIFEST_FILE`" + fi + + if [ ! -e "$MANIFEST_FILE" ] || [ -d "$MANIFEST_FILE" ]; then + continue + fi + + echo "Checking Manifest for $MANIFEST_FILE_TYPE $MANIFEST_FILE integrity..." + + SIZE_SRC="`wc -c $MANIFEST_FILE | awk '{ print $1 }'`" + SIZE_MANIFEST="`echo $MANIFEST_LINE | awk '{ print $3 }'`" + + # Check source code size + if [ "$SIZE_SRC" != "$SIZE_MANIFEST" ]; then + echo "SIZE Manifest: $SIZE_MANIFEST; SIZE $SRC: $SIZE_SRC" + exit $ERROR_MANIFEST + else + echo "Size match." + fi + + # Check source code integrity + for ALGO in md5 sha1 sha256 sha512 rmd160; do + if [ $ALGO = "rmd160" ]; then + ALGO_SRC="`openssl rmd160 $MANIFEST_FILE | awk '{ print $2 }'`" + else + ALGO_SRC="`"$ALGO"sum $MANIFEST_FILE | awk '{ print $1 }'`" + fi + ALGO="`echo $ALGO | tr '[:lower:]' '[:upper:]'`" + ALGO_MANIFEST=$(echo $MANIFEST_LINE | sed "s/.* $ALGO //" | awk '{ print $1 }') + if [ "$ALGO_SRC" != "$ALGO_MANIFEST" ]; then + echo "$ALGO Manifest: $ALGO_MANIFEST; $ALGO $SRC: $ALGO_SRC" + exit $ERROR_MANIFEST + else + echo "$ALGO match." + fi + done + + done + +else + exit $ERROR_MANIFEST +fi + # Untar cd "$PKG_WORK" tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR @@ -148,9 +217,10 @@ EODESC # Build the package cd "$PKG" -makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG +mkdir -p $REPOS/$SLACKBUILD_PATH +makepkg -l y -c n "$REPOS/$SLACKBUILD_PATH/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG # Delete source and build directories if requested -if [ "$CLEANUP" == "yes" ]; then +if [ "$CLEANUP" == "yes" ] || [ "$1" = "--cleanup" ]; then rm -rf "$PKG_WORK" "$PKG" fi diff --git a/dev/perl/perl-convert-uulib/Manifest b/dev/perl/perl-convert-uulib/Manifest new file mode 100644 index 00000000..e0919ef3 --- /dev/null +++ b/dev/perl/perl-convert-uulib/Manifest @@ -0,0 +1,23 @@ +-----BEGIN PGP SIGNED MESSAGE----- +Hash: SHA256 + +DIST Convert-UUlib-1.3.tar.gz 236231 MD5 d84df933e1cdda551e6acbae2dee86ad RMD160 51165cd29d3e05d14b4d44dc7e0d7044bbe302ef SHA1 46f9e5a1a4aff9a9707b9e8a7f09f03021202215 SHA256 0454f11383268db33fa0438f681b0fe3e43e91a441ee424548e80b1012ee579c SHA512 e9626aed04faed65d030c2ee9068626f1c679c231bf99de00aab2b25bdc32aca50b150a4c5bccaafe4095f34220f3fa6c78b4240ec98dc1ea184c97485e8056e +MKBUILD perl-convert-uulib.mkbuild 2412 MD5 f44f0ab20844bd4d2ce8b8669ae59550 RMD160 bbb1ab322456204f9ef04a93198e66f6c056897a SHA1 6bfbcd6c397aa901e024003caba3d19a6733cc08 SHA256 d627a6af7217104aa29e065f7ae86de866cd6629c335973e618f67af6deb3170 SHA512 6b70c04ae45aa0479c30aba9cca990295a98b74822a895d1686850477dd305552a6c4b231ba882b00cad0b498bf927b97db766ddc72b0bb5334dced573eed80e +SLACKBUILD perl-convert-uulib.SlackBuild 7106 MD5 a6727d1ef34030c7bd49fdd76418dd54 RMD160 6065e670fe503986eae74ed87db47de3780d3d10 SHA1 1349cc10c6f7ae5d19b6b3e1c57749eb84fbaf4e SHA256 fccfc70051740d7d3f72921c5174a8cea2c8cbb831f573ee9618b35d77572be2 SHA512 3b852527f1787026be1f5bc395edc0e1136a81811e97dafbfd63d6209d8641920e14833602ae4ba4128f6864233e60fab022520539b2628bd951baef1cdba7dc +-----BEGIN PGP SIGNATURE----- +Version: GnuPG v1.4.9 (GNU/Linux) + +iQIcBAEBCAAGBQJKr+kkAAoJEEHL93ESzgeiuvUP/3sEBP+7CYnhRFFjNh9RTXWJ +3Fp6VFdCv9lhqY5PM1WORpPwF2FSx+MQov0+O2EwrdfVi9RMESSH6e1zkPaCDqLf +0spzwwlyiWfKDIaCdd09aZLZHAxc57oDAnd2icECTiPpzqGwaDT67AXi0Hh68VSw +Yv0Ked+c0yVXQ0Wy/zT1CqxpEiRhKtE8bGghSaDIoD/E8p6SlGQtjQPNdduyHKbV +JY1CMO1YpNI09SARej4HQeI90s2Ol1TjhcDzUUaBY7eAJtvas2keimKf4LA5C7pg +CRIPC5JDPbkiS4tkMNKOo4RUItIxLrp2YrrBp29CfmYHjTEep0Y7tAaV4Dx1KN1c +c18WRQCEga3tdRrAkiy2yasrktU3iy8t/EJDrV5CvAaByTh/Tkid8TtevS1E+0vJ +rRy1h/DYuFt76dgsZUW6NlL8eBvZUw+bvC0i2oahSXGR31Xik4sfZWtkA8EePAvp +xgasDEcW5YRLVRt+lR1v8YfjViZMcMDQwZ/aw1imWtTwjmlTx5l2WRmX2onrWygx +o3bb5wjZcKVzHNDfyCxi26QL2Z6etfEI68FN4HOPDlt5BNOyYgoCxsJdBijGr7kQ +TbgnDYeAcTC4vbB++qA2kG8DKmhHhCiVweU34MGDfYm1D1Ra66PHd/d9KIIIgwqn +6oESSzVoWE8YgTApXUOn +=340n +-----END PGP SIGNATURE----- diff --git a/dev/perl/perl-convert-uulib/perl-convert-uulib.SlackBuild b/dev/perl/perl-convert-uulib/perl-convert-uulib.SlackBuild index a62d21bb..7d8df761 100755 --- a/dev/perl/perl-convert-uulib/perl-convert-uulib.SlackBuild +++ b/dev/perl/perl-convert-uulib/perl-convert-uulib.SlackBuild @@ -16,7 +16,8 @@ # # slackbuild for perl-convert-uulib, by Silvio Rhatto # requires: -# tested: perl-convert-uulib-1.09 +# tested: perl-convert-uulib-1.3 +# model: perl.mkSlackBuild $Rev: 796 $ # # Look for slackbuildrc @@ -31,13 +32,14 @@ CWD="$(pwd)" SRC_NAME="Convert-UUlib" PKG_NAME="perl-convert-uulib" ARCH=${ARCH:=i486} -SRC_VERSION=${VERSION:=1.09} +SRC_VERSION=${VERSION:=1.3} PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rha} SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} +SLACKBUILD_PATH=${SLACKBUILD_PATH:="dev/perl/perl-convert-uulib"} PREFIX=${PREFIX:=/usr} PKG_WORK="$TMP/$SRC_NAME" CONF_OPTIONS=${CONF_OPTIONS:=""} @@ -64,6 +66,7 @@ ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 +ERROR_MANIFEST=43; # Clean up any leftovers of previous builds rm -rf "$PKG_SRC" 2> /dev/null @@ -83,6 +86,72 @@ if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET fi +# Check Manifest file +if [ -e "$CWD/Manifest" ]; then + + # Manifest signature checking + if grep -q -- "-----BEGIN PGP SIGNED MESSAGE-----" $CWD/Manifest; then + echo "Checking Manifest signature..." + gpg --verify $CWD/Manifest + if [ "$?" != "0" ]; then + exit $ERROR_MANIFEST + fi + fi + + MANIFEST_LINES="`grep -E -v "^(MKBUILD|SLACKBUILD)" $CWD/Manifest | wc -l`" + + for ((MANIFEST_COUNT=1; MANIFEST_COUNT <= $MANIFEST_LINES; MANIFEST_COUNT++)); do + + MANIFEST_LINE="`grep -E -v "^(MKBUILD|SLACKBUILD)" $CWD/Manifest | head -n $MANIFEST_COUNT | tail -n 1`" + MANIFEST_FILE="`echo $MANIFEST_LINE | awk '{ print $2 }'`" + MANIFEST_FILE_TYPE="`echo $MANIFEST_LINE | awk '{ print $1 }'`" + + if [ -e "$SRC_DIR/$MANIFEST_FILE" ]; then + MANIFEST_FILE="$SRC_DIR/$MANIFEST_FILE" + else + MANIFEST_FILE="`find $CWD -name $MANIFEST_FILE`" + fi + + if [ ! -e "$MANIFEST_FILE" ] || [ -d "$MANIFEST_FILE" ]; then + continue + fi + + echo "Checking Manifest for $MANIFEST_FILE_TYPE $MANIFEST_FILE integrity..." + + SIZE_SRC="`wc -c $MANIFEST_FILE | awk '{ print $1 }'`" + SIZE_MANIFEST="`echo $MANIFEST_LINE | awk '{ print $3 }'`" + + # Check source code size + if [ "$SIZE_SRC" != "$SIZE_MANIFEST" ]; then + echo "SIZE Manifest: $SIZE_MANIFEST; SIZE $SRC: $SIZE_SRC" + exit $ERROR_MANIFEST + else + echo "Size match." + fi + + # Check source code integrity + for ALGO in md5 sha1 sha256 sha512 rmd160; do + if [ $ALGO = "rmd160" ]; then + ALGO_SRC="`openssl rmd160 $MANIFEST_FILE | awk '{ print $2 }'`" + else + ALGO_SRC="`"$ALGO"sum $MANIFEST_FILE | awk '{ print $1 }'`" + fi + ALGO="`echo $ALGO | tr '[:lower:]' '[:upper:]'`" + ALGO_MANIFEST=$(echo $MANIFEST_LINE | sed "s/.* $ALGO //" | awk '{ print $1 }') + if [ "$ALGO_SRC" != "$ALGO_MANIFEST" ]; then + echo "$ALGO Manifest: $ALGO_MANIFEST; $ALGO $SRC: $ALGO_SRC" + exit $ERROR_MANIFEST + else + echo "$ALGO match." + fi + done + + done + +else + exit $ERROR_MANIFEST +fi + # Untar cd "$PKG_WORK" tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR @@ -148,9 +217,10 @@ EODESC # Build the package cd "$PKG" -makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG +mkdir -p $REPOS/$SLACKBUILD_PATH +makepkg -l y -c n "$REPOS/$SLACKBUILD_PATH/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG # Delete source and build directories if requested -if [ "$CLEANUP" == "yes" ]; then +if [ "$CLEANUP" == "yes" ] || [ "$1" = "--cleanup" ]; then rm -rf "$PKG_WORK" "$PKG" fi diff --git a/dev/perl/perl-db_file/Manifest b/dev/perl/perl-db_file/Manifest new file mode 100644 index 00000000..c3be6944 --- /dev/null +++ b/dev/perl/perl-db_file/Manifest @@ -0,0 +1,23 @@ +-----BEGIN PGP SIGNED MESSAGE----- +Hash: SHA256 + +DIST DB_File-1.817.tar.gz 87996 MD5 405ee3e2e76c557d8574980eecf04379 RMD160 268f560af33d3aac9d8a54b28383f2566365e1b3 SHA1 009187ed32c50dd53d09f4fc0352226369b49f66 SHA256 b9e19a22603b7856d2428c59a134d87bb62d29595c1f62a8da49ca85892aa6ba SHA512 6b0567ad15a21c1575d22beebcae864276557a7d884de7dd2e996a1b5cccc31a769f72bb86840c90c73f06fdc381ebf99675f8151965d3d718ebf1ef0689efc2 +MKBUILD perl-db_file.mkbuild 2298 MD5 11b0feec785af3eabaf8043e8a9bda53 RMD160 8a4020c790cee0d015d7c363bf7103a361b2c864 SHA1 108eee7e016c5a9668bfa2a502380d2eeae324ff SHA256 2d4af1637ee44daa78be97ab6f69b86178b39514b6afc0aedf8ac5dde182eb1c SHA512 7aee6075dc53f4dfaea368ba5c3fb1cfec8fbc337f0598f8a5d2fcafe3a06cb8d4caf919fcb7be4d5a72a22d08065a85c0269c08c9fceaf8493bd175ac3b683b +SLACKBUILD perl-db_file.SlackBuild 6970 MD5 90e61a83ddef8eedf6a8ddc28a129dd7 RMD160 8adcb7c23290c05eeb9aebfd9984f10585933ea8 SHA1 6b538db2d5c6a27b7f1c747a665588053d262f7f SHA256 47f69ef84f260c35e774f82ac825783b1415b935ba275970b47ae0793c76329b SHA512 05bf21dc8c04dffb1641cf51800d13c602d22429b6729889eb484296a5ab6b4765dfcef2f25ee05ff116a4a4dfb923c673545279ac09bfac0702c8716bfef97b +-----BEGIN PGP SIGNATURE----- +Version: GnuPG v1.4.9 (GNU/Linux) + +iQIcBAEBCAAGBQJKsAJ6AAoJEEHL93ESzgeifhoP/2yFk5Z3ri81QwVzt9rJQSmC +J8AiI1GSVzqOX39kOy3nXk0CB0JL1GeoS7RK4u/BRwG5D8uRY2izCSSVYtB7Jra8 +MUJNzlPrkellRItINzwYv+fcFBO2duZMz5ZyGZ3j82xdQkR5a9iqBhmoeaJ0gCz7 +1NnNjE/Z/OjRoJkt6+f5A7XNhglv30cDGCTCUnccH/TlpQ0qoMSepl+iCGf+zdVQ +tw+M1kd25aerTwBKxRaQFAIWphqLUtWuTmfbRrTbVxKlcQ7LzPuWXu/xkrQJXbf9 +mhji+oqodZEUqArFGHE7dkSxKlS/+94j5SFzokMdHq9tQO5/zWnK6wH/2iosq13c +UO/snXBqeSgjv5QALhLd5E+HUxWArAf85KxjBhfSjea5uhGLUMwHyR2iWyL188Py +GsuQIBAWVIQAbeiNJibIf+iaDONQ8uUWIhzPrDMoKPTIHKnd8niIm5VvXiJ74BVB +2lWe2SitM/Kuv9hFStsnOZSHiz7v4QVle9xjB+R9C4f+B3APEGr0/bbcd+aftYqK +BqEdIllKW0TF2ytXGY92XK0hKQDEcRSV2NgQ/CygD8JS0rVIfw27xL+abjniSiB3 +JY41VqMSLhOrzuib03DqiPvNylxOss5NHtdTBJfQSshyUain12Xqbu2mj8AILMgn +3/wXtVvZAgTQJYTGcuU4 +=V6Q+ +-----END PGP SIGNATURE----- diff --git a/dev/perl/perl-db_file/perl-db_file.SlackBuild b/dev/perl/perl-db_file/perl-db_file.SlackBuild index db1cfac5..5cd97ad5 100755 --- a/dev/perl/perl-db_file/perl-db_file.SlackBuild +++ b/dev/perl/perl-db_file/perl-db_file.SlackBuild @@ -17,6 +17,7 @@ # slackbuild for perl-db_file, by Silvio Rhatto # requires: # tested: perl-db_file-1.817 +# model: perl.mkSlackBuild $Rev: 796 $ # # Look for slackbuildrc @@ -38,6 +39,7 @@ SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} +SLACKBUILD_PATH=${SLACKBUILD_PATH:="dev/perl/perl-db_file"} PREFIX=${PREFIX:=/usr} PKG_WORK="$TMP/$SRC_NAME" CONF_OPTIONS=${CONF_OPTIONS:=""} @@ -64,6 +66,7 @@ ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 +ERROR_MANIFEST=43; # Clean up any leftovers of previous builds rm -rf "$PKG_SRC" 2> /dev/null @@ -83,6 +86,72 @@ if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET fi +# Check Manifest file +if [ -e "$CWD/Manifest" ]; then + + # Manifest signature checking + if grep -q -- "-----BEGIN PGP SIGNED MESSAGE-----" $CWD/Manifest; then + echo "Checking Manifest signature..." + gpg --verify $CWD/Manifest + if [ "$?" != "0" ]; then + exit $ERROR_MANIFEST + fi + fi + + MANIFEST_LINES="`grep -E -v "^(MKBUILD|SLACKBUILD)" $CWD/Manifest | wc -l`" + + for ((MANIFEST_COUNT=1; MANIFEST_COUNT <= $MANIFEST_LINES; MANIFEST_COUNT++)); do + + MANIFEST_LINE="`grep -E -v "^(MKBUILD|SLACKBUILD)" $CWD/Manifest | head -n $MANIFEST_COUNT | tail -n 1`" + MANIFEST_FILE="`echo $MANIFEST_LINE | awk '{ print $2 }'`" + MANIFEST_FILE_TYPE="`echo $MANIFEST_LINE | awk '{ print $1 }'`" + + if [ -e "$SRC_DIR/$MANIFEST_FILE" ]; then + MANIFEST_FILE="$SRC_DIR/$MANIFEST_FILE" + else + MANIFEST_FILE="`find $CWD -name $MANIFEST_FILE`" + fi + + if [ ! -e "$MANIFEST_FILE" ] || [ -d "$MANIFEST_FILE" ]; then + continue + fi + + echo "Checking Manifest for $MANIFEST_FILE_TYPE $MANIFEST_FILE integrity..." + + SIZE_SRC="`wc -c $MANIFEST_FILE | awk '{ print $1 }'`" + SIZE_MANIFEST="`echo $MANIFEST_LINE | awk '{ print $3 }'`" + + # Check source code size + if [ "$SIZE_SRC" != "$SIZE_MANIFEST" ]; then + echo "SIZE Manifest: $SIZE_MANIFEST; SIZE $SRC: $SIZE_SRC" + exit $ERROR_MANIFEST + else + echo "Size match." + fi + + # Check source code integrity + for ALGO in md5 sha1 sha256 sha512 rmd160; do + if [ $ALGO = "rmd160" ]; then + ALGO_SRC="`openssl rmd160 $MANIFEST_FILE | awk '{ print $2 }'`" + else + ALGO_SRC="`"$ALGO"sum $MANIFEST_FILE | awk '{ print $1 }'`" + fi + ALGO="`echo $ALGO | tr '[:lower:]' '[:upper:]'`" + ALGO_MANIFEST=$(echo $MANIFEST_LINE | sed "s/.* $ALGO //" | awk '{ print $1 }') + if [ "$ALGO_SRC" != "$ALGO_MANIFEST" ]; then + echo "$ALGO Manifest: $ALGO_MANIFEST; $ALGO $SRC: $ALGO_SRC" + exit $ERROR_MANIFEST + else + echo "$ALGO match." + fi + done + + done + +else + exit $ERROR_MANIFEST +fi + # Untar cd "$PKG_WORK" tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR @@ -148,9 +217,10 @@ EODESC # Build the package cd "$PKG" -makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG +mkdir -p $REPOS/$SLACKBUILD_PATH +makepkg -l y -c n "$REPOS/$SLACKBUILD_PATH/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG # Delete source and build directories if requested -if [ "$CLEANUP" == "yes" ]; then +if [ "$CLEANUP" == "yes" ] || [ "$1" = "--cleanup" ]; then rm -rf "$PKG_WORK" "$PKG" fi diff --git a/dev/perl/perl-digest-md5/Manifest b/dev/perl/perl-digest-md5/Manifest new file mode 100644 index 00000000..5cfbd29e --- /dev/null +++ b/dev/perl/perl-digest-md5/Manifest @@ -0,0 +1,23 @@ +-----BEGIN PGP SIGNED MESSAGE----- +Hash: SHA256 + +DIST Digest-Perl-MD5-1.8.tar.gz 74077 MD5 8b54271ffe5f174456dd68b79bf3f8f3 RMD160 da78c85c87a7e8af191193fb778d9fbdc2d48999 SHA1 44742433b6a6d06401b78ff8672277e887fc3d82 SHA256 86b1f32a09ced075606d98a1b6ed24a44b2e18bfd0ab515dc987f99d9112d860 SHA512 d2648aa3c675c31f0af044668ef773ba7ad244412028b0f8f60d4c3bf1cfd33bb68d6398a645684df737ce7775b516ed67fbef5495c3610e82c58aea3abc8870 +MKBUILD perl-digest-md5.mkbuild 2343 MD5 c06653905c3380f383f53b60de3b8e40 RMD160 8d58936d21a37ff934be82a37d9c5ed5b2f68f5e SHA1 22906ee47de473c0b3fd7ed14fc466b82f49e844 SHA256 7644296d9aae895655dda5b0664ce39e410c3930bee74a6d140d1712c85284dc SHA512 d87b7feb09de5d7b6c1f21b29e3fb43e172844534db889879d7d7441d370173fa9e55a298ad3df897f21d4e6d70e0604e52f7aed5c8d66cbecf535bb62ed1cfb +SLACKBUILD perl-digest-md5.SlackBuild 7025 MD5 caa8cdb17a25c7c7aeacb583ab406c7a RMD160 fe3dd309f8af210c1af83e2b136c4e111d135cd3 SHA1 6744463715f24ad4b87d4ca6216b3d13cdd6f82c SHA256 1d0e942db2f8fb2f6980cb03ee95e6edf9883be42dfd33e23bbf4fa8e81ebadd SHA512 1e523a9f3de23f56bdbc9d5068a163a23b7fd503e233a05d6e45579b14b5a739f8d80617421324ec4aef05e2b6d74a206d9424a947057669bdddeabee6079d26 +-----BEGIN PGP SIGNATURE----- +Version: GnuPG v1.4.9 (GNU/Linux) + +iQIcBAEBCAAGBQJKr/SsAAoJEEHL93ESzgei5CEQAJxEjq87cfCWyykC/ROqJc66 +t0JvUeb5cYoFOiInhzCOiQ7TVNw9SBuQyxZUXU6viqW3IKH+ND+v685D2IR2WKnR +dKgNqN26mlvw9kGsIoADVD+91RAVZkHV79BOmOgMZzpJmBWdxFZT72YJ/msZELFS +9dggGm5wwkNRHxXJ9HLhwienH0EKxzM6QLcndpieJGSEwfbiz5ElOs88+VR0Jr69 +XB1Hg6BnUkXHK/I3LtjzsImufqSHj7MPcf6r+/FkH6Wvx/GJsxwyEYE1OGAsazeM +rYTw4zq5ZQWzhVr7S8Q95yo6z71w3DA+k3uuIRA3fVG1yrlhvlHbFq4XTfoXjDrQ +wECVvQD86XUGSh1KDqRM997AlA63Vsf9KpXC25pBEA6A4Hu83L5fHKyzORp1zD0q +LSatK4RKqTfCluGw4hC4ETVWfvtu65nim7iobVou0+MIgArnb2Lpc328f26NlO/M +aAsfwFS4VlXDQKKxDyyQLQV899wvnVlVdJKHtbn6H616mTKMWDQKSpI0QGVxlkVJ +lKS2EHACmXTKH+66cfiijrN0/Qr30Ra8PJAV0DGcLDP5bog202cUiXmd0Vybhtt7 +hlxWFcN++r9i4n7+emmIdG38yj8JUsmJ1g5NcjdqdMHBjHVbCjNC9uEalQT/BmGr +Pan7S9bvwJHc0r+hSr7U +=qagE +-----END PGP SIGNATURE----- diff --git a/dev/perl/perl-digest-md5/perl-digest-md5.SlackBuild b/dev/perl/perl-digest-md5/perl-digest-md5.SlackBuild index 7e8de6e5..d74d074c 100755 --- a/dev/perl/perl-digest-md5/perl-digest-md5.SlackBuild +++ b/dev/perl/perl-digest-md5/perl-digest-md5.SlackBuild @@ -17,6 +17,7 @@ # slackbuild for perl-digest-md5, by Silvio Rhatto # requires: # tested: perl-digest-md5-1.8 +# model: perl.mkSlackBuild $Rev: 796 $ # # Look for slackbuildrc @@ -38,6 +39,7 @@ SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} +SLACKBUILD_PATH=${SLACKBUILD_PATH:="dev/perl/perl-digest-md5"} PREFIX=${PREFIX:=/usr} PKG_WORK="$TMP/$SRC_NAME" CONF_OPTIONS=${CONF_OPTIONS:=""} @@ -64,6 +66,7 @@ ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 +ERROR_MANIFEST=43; # Clean up any leftovers of previous builds rm -rf "$PKG_SRC" 2> /dev/null @@ -83,6 +86,72 @@ if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET fi +# Check Manifest file +if [ -e "$CWD/Manifest" ]; then + + # Manifest signature checking + if grep -q -- "-----BEGIN PGP SIGNED MESSAGE-----" $CWD/Manifest; then + echo "Checking Manifest signature..." + gpg --verify $CWD/Manifest + if [ "$?" != "0" ]; then + exit $ERROR_MANIFEST + fi + fi + + MANIFEST_LINES="`grep -E -v "^(MKBUILD|SLACKBUILD)" $CWD/Manifest | wc -l`" + + for ((MANIFEST_COUNT=1; MANIFEST_COUNT <= $MANIFEST_LINES; MANIFEST_COUNT++)); do + + MANIFEST_LINE="`grep -E -v "^(MKBUILD|SLACKBUILD)" $CWD/Manifest | head -n $MANIFEST_COUNT | tail -n 1`" + MANIFEST_FILE="`echo $MANIFEST_LINE | awk '{ print $2 }'`" + MANIFEST_FILE_TYPE="`echo $MANIFEST_LINE | awk '{ print $1 }'`" + + if [ -e "$SRC_DIR/$MANIFEST_FILE" ]; then + MANIFEST_FILE="$SRC_DIR/$MANIFEST_FILE" + else + MANIFEST_FILE="`find $CWD -name $MANIFEST_FILE`" + fi + + if [ ! -e "$MANIFEST_FILE" ] || [ -d "$MANIFEST_FILE" ]; then + continue + fi + + echo "Checking Manifest for $MANIFEST_FILE_TYPE $MANIFEST_FILE integrity..." + + SIZE_SRC="`wc -c $MANIFEST_FILE | awk '{ print $1 }'`" + SIZE_MANIFEST="`echo $MANIFEST_LINE | awk '{ print $3 }'`" + + # Check source code size + if [ "$SIZE_SRC" != "$SIZE_MANIFEST" ]; then + echo "SIZE Manifest: $SIZE_MANIFEST; SIZE $SRC: $SIZE_SRC" + exit $ERROR_MANIFEST + else + echo "Size match." + fi + + # Check source code integrity + for ALGO in md5 sha1 sha256 sha512 rmd160; do + if [ $ALGO = "rmd160" ]; then + ALGO_SRC="`openssl rmd160 $MANIFEST_FILE | awk '{ print $2 }'`" + else + ALGO_SRC="`"$ALGO"sum $MANIFEST_FILE | awk '{ print $1 }'`" + fi + ALGO="`echo $ALGO | tr '[:lower:]' '[:upper:]'`" + ALGO_MANIFEST=$(echo $MANIFEST_LINE | sed "s/.* $ALGO //" | awk '{ print $1 }') + if [ "$ALGO_SRC" != "$ALGO_MANIFEST" ]; then + echo "$ALGO Manifest: $ALGO_MANIFEST; $ALGO $SRC: $ALGO_SRC" + exit $ERROR_MANIFEST + else + echo "$ALGO match." + fi + done + + done + +else + exit $ERROR_MANIFEST +fi + # Untar cd "$PKG_WORK" tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR @@ -148,9 +217,10 @@ EODESC # Build the package cd "$PKG" -makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG +mkdir -p $REPOS/$SLACKBUILD_PATH +makepkg -l y -c n "$REPOS/$SLACKBUILD_PATH/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG # Delete source and build directories if requested -if [ "$CLEANUP" == "yes" ]; then +if [ "$CLEANUP" == "yes" ] || [ "$1" = "--cleanup" ]; then rm -rf "$PKG_WORK" "$PKG" fi diff --git a/dev/perl/perl-file-temp/Manifest b/dev/perl/perl-file-temp/Manifest new file mode 100644 index 00000000..0b07993d --- /dev/null +++ b/dev/perl/perl-file-temp/Manifest @@ -0,0 +1,23 @@ +-----BEGIN PGP SIGNED MESSAGE----- +Hash: SHA256 + +DIST File-Temp-0.22.tar.gz 38352 MD5 a7e93cf2015881ded1f22b5b2d0cb391 RMD160 463f3ca7e25fd6949b8b2da1bc39c31a401a953a SHA1 5535c96e69e5d7f433fa446b5087fe4cab1bc129 SHA256 989f9222497e6c056af3478018316cf634dba946e9a85d4d2b5a09c5351a4785 SHA512 26cd2dac046e43b534bd7c6df1c8e28bc39a093c8e3554127ff899d24ede9d42f71637c367d67d9b38162f9ce950f902115b63dce30eccfe30b6c8872cbffd4a +MKBUILD perl-file-temp.mkbuild 2336 MD5 e8d1b98e2ac142b54fe200d5b1842e13 RMD160 a98444a8e12c7fd4b67e260875050e03d6e1190e SHA1 3e4259dd1280524d875b87e1807ac983b3437fc1 SHA256 6900eb505d1746489527a02eb52376af8bf940448965c1f9c7da14f37f4f9cef SHA512 c32f25e637d03a393d4a1ff1de4320491cfa7755d24c0df7e4a8b315a4ab6ecf876f763225bfb5f60249f82a3fdf2455e730829f88d5a05eeb17702a4f03b91a +SLACKBUILD perl-file-temp.SlackBuild 7029 MD5 e54ffdf470bcda1053268b8e755cdb96 RMD160 0273081682a0f9d078c51025212686f1a7d6b51c SHA1 58f3220d0c154eebf40f77e450c119e110e1db0c SHA256 4c3e646d3a9a00f81596594b4c3eaaf3eef8fb40157eb5944c52bf0f9ae1a3a5 SHA512 7bf0d0e069c45c48e08963f30b061a25ef33dd572f97def66dc4ab781d38a4383255da0e583510dd65dab583b2d029cd96fc49dd7b62cd3225b404774949bc50 +-----BEGIN PGP SIGNATURE----- +Version: GnuPG v1.4.9 (GNU/Linux) + +iQIcBAEBCAAGBQJKr+aAAAoJEEHL93ESzgeifQAQAL08M9QygD3Wf8LkXS+mIqcR +s7zHA3n/As9xBMYcfFGzDd1SD/1cMO76hgkxRUW25tsvZoijbQ2rVv8d3sbdNW64 +jbTpRrmQpAlx9D3IiN6ZD0IFX4922Ihj9GWONvRu3BRO8PkOlP6v8yFeAWQVEQKl +yRJyg4EVI1Fs8js1NACgBvT/aw24W6Q7WUVxxL28IG3ZUgTUVrHRbUkc5LJUF9/0 +jSa7WjayobjoNAmkaUuVKs/c9fF5zFfN3DSZkbDEptARTO/Lf2JYfCvO08LfYkhm +kbgfKmgZwb6orMSH2H0HihPIEQQddQzvHX9JeDYiADPDSL5vfM+E04GFWO0ra6M8 +YTn8cE3pRUYqkygMJGdud1YITxID0yJdJZeuwL6sg0opk3j+2P3WDV3/nXer9zhI +En9bHp8X9UC5gyZvaBi2jYZ5fiBBGCbYLjJf89NTjJ9PmJjyrzIHa47TIjIIJrhm +Icko9V1mJI0UY8SP38Iaz9ggqRC7jhXkJvLaMGCn9bg8f7/OyQgm1GGRBssHcu+f +m0waa3Sf4eeAE/soNKZ417FCMKhaEc7fgSGaGZsJu0pUc8C4zY2YEj/5RIAlaKgK +RlLKR3PN+dCmoEoJZcxIkz2MSlPizMYCqDsdBzBlvo3kxZH8l5lEZn/7wc+K93iN +Eg1R3TnQrGqDjsXgdF+z +=+mSO +-----END PGP SIGNATURE----- diff --git a/dev/perl/perl-file-temp/perl-file-temp.SlackBuild b/dev/perl/perl-file-temp/perl-file-temp.SlackBuild index ba54c8f9..bdcb1ba1 100755 --- a/dev/perl/perl-file-temp/perl-file-temp.SlackBuild +++ b/dev/perl/perl-file-temp/perl-file-temp.SlackBuild @@ -16,7 +16,8 @@ # # slackbuild for perl-file-temp, by Silvio Rhatto # requires: -# tested: perl-file-temp-0.20 +# tested: perl-file-temp-0.22 +# model: perl.mkSlackBuild $Rev: 796 $ # # Look for slackbuildrc @@ -31,13 +32,14 @@ CWD="$(pwd)" SRC_NAME="File-Temp" PKG_NAME="perl-file-temp" ARCH=${ARCH:=i486} -SRC_VERSION=${VERSION:=0.20} +SRC_VERSION=${VERSION:=0.22} PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rha} SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} +SLACKBUILD_PATH=${SLACKBUILD_PATH:="dev/perl/perl-file-temp"} PREFIX=${PREFIX:=/usr} PKG_WORK="$TMP/$SRC_NAME" CONF_OPTIONS=${CONF_OPTIONS:=""} @@ -64,6 +66,7 @@ ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 +ERROR_MANIFEST=43; # Clean up any leftovers of previous builds rm -rf "$PKG_SRC" 2> /dev/null @@ -83,6 +86,72 @@ if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET fi +# Check Manifest file +if [ -e "$CWD/Manifest" ]; then + + # Manifest signature checking + if grep -q -- "-----BEGIN PGP SIGNED MESSAGE-----" $CWD/Manifest; then + echo "Checking Manifest signature..." + gpg --verify $CWD/Manifest + if [ "$?" != "0" ]; then + exit $ERROR_MANIFEST + fi + fi + + MANIFEST_LINES="`grep -E -v "^(MKBUILD|SLACKBUILD)" $CWD/Manifest | wc -l`" + + for ((MANIFEST_COUNT=1; MANIFEST_COUNT <= $MANIFEST_LINES; MANIFEST_COUNT++)); do + + MANIFEST_LINE="`grep -E -v "^(MKBUILD|SLACKBUILD)" $CWD/Manifest | head -n $MANIFEST_COUNT | tail -n 1`" + MANIFEST_FILE="`echo $MANIFEST_LINE | awk '{ print $2 }'`" + MANIFEST_FILE_TYPE="`echo $MANIFEST_LINE | awk '{ print $1 }'`" + + if [ -e "$SRC_DIR/$MANIFEST_FILE" ]; then + MANIFEST_FILE="$SRC_DIR/$MANIFEST_FILE" + else + MANIFEST_FILE="`find $CWD -name $MANIFEST_FILE`" + fi + + if [ ! -e "$MANIFEST_FILE" ] || [ -d "$MANIFEST_FILE" ]; then + continue + fi + + echo "Checking Manifest for $MANIFEST_FILE_TYPE $MANIFEST_FILE integrity..." + + SIZE_SRC="`wc -c $MANIFEST_FILE | awk '{ print $1 }'`" + SIZE_MANIFEST="`echo $MANIFEST_LINE | awk '{ print $3 }'`" + + # Check source code size + if [ "$SIZE_SRC" != "$SIZE_MANIFEST" ]; then + echo "SIZE Manifest: $SIZE_MANIFEST; SIZE $SRC: $SIZE_SRC" + exit $ERROR_MANIFEST + else + echo "Size match." + fi + + # Check source code integrity + for ALGO in md5 sha1 sha256 sha512 rmd160; do + if [ $ALGO = "rmd160" ]; then + ALGO_SRC="`openssl rmd160 $MANIFEST_FILE | awk '{ print $2 }'`" + else + ALGO_SRC="`"$ALGO"sum $MANIFEST_FILE | awk '{ print $1 }'`" + fi + ALGO="`echo $ALGO | tr '[:lower:]' '[:upper:]'`" + ALGO_MANIFEST=$(echo $MANIFEST_LINE | sed "s/.* $ALGO //" | awk '{ print $1 }') + if [ "$ALGO_SRC" != "$ALGO_MANIFEST" ]; then + echo "$ALGO Manifest: $ALGO_MANIFEST; $ALGO $SRC: $ALGO_SRC" + exit $ERROR_MANIFEST + else + echo "$ALGO match." + fi + done + + done + +else + exit $ERROR_MANIFEST +fi + # Untar cd "$PKG_WORK" tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR @@ -148,9 +217,10 @@ EODESC # Build the package cd "$PKG" -makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG +mkdir -p $REPOS/$SLACKBUILD_PATH +makepkg -l y -c n "$REPOS/$SLACKBUILD_PATH/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG # Delete source and build directories if requested -if [ "$CLEANUP" == "yes" ]; then +if [ "$CLEANUP" == "yes" ] || [ "$1" = "--cleanup" ]; then rm -rf "$PKG_WORK" "$PKG" fi diff --git a/dev/perl/perl-html-tagset/Manifest b/dev/perl/perl-html-tagset/Manifest new file mode 100644 index 00000000..b58f5ed1 --- /dev/null +++ b/dev/perl/perl-html-tagset/Manifest @@ -0,0 +1,23 @@ +-----BEGIN PGP SIGNED MESSAGE----- +Hash: SHA256 + +DIST HTML-Tagset-3.20.tar.gz 8150 MD5 d2bfa18fe1904df7f683e96611e87437 RMD160 90d330beba53d99b56949eb3f2a77188c8f8f957 SHA1 cc906acec09b23d5ffa5e1d4f40441f9de1ad777 SHA256 adb17dac9e36cd011f5243881c9739417fd102fce760f8de4e9be4c7131108e2 SHA512 b53c099a96b493c3d03c51fcf3d58dd3b830069583f2d07477175ea234c43e91a0b380c82a71126f971faf2768e832af34967d08d899db7653d65613d6530072 +MKBUILD perl-html-tagset.mkbuild 2356 MD5 c391ae0c186e1f5ac8db60767259a681 RMD160 d9b630e57c66a4e746b3e99c859ce1ff151d461b SHA1 70df7e260e781d6a0d67621054b206542bd92b3a SHA256 9fb081048448fb00162f408fefed63b10882da6ee1ce4ab6844bfbf7e1dfbbea SHA512 7342816c9e5fde4ca7b84b1803cc8119a44cfcd928fef96056de0d041ca4b4077d1805d43abdddcbf874ffc378f9971e1867bfff2c266a23cf73796a1bb34f81 +SLACKBUILD perl-html-tagset.SlackBuild 7043 MD5 aaae2b737b32b9665156a17ed08ec76b RMD160 5704ecf1440ab9b9157d6b5f6ffad7770cd66d76 SHA1 cbf8e2278cd39c8d9f1073b4aa2d0399c15ead6d SHA256 e28292dce181f6ef81d359381bdf1e831cabf357acbc7c4c26d06fa8ca70c7a5 SHA512 cc10a7bfc24d36f3d887c391ca5324605c455ca8d83141e340b20ad6e1defff59d1275c01f4d46c5124797694e7311f74cb5da0d238242c4aeca314193746d42 +-----BEGIN PGP SIGNATURE----- +Version: GnuPG v1.4.9 (GNU/Linux) + +iQIcBAEBCAAGBQJKsABqAAoJEEHL93ESzgeisT8P/itcNQtlIxoZfqY4JUZaIEpH +eSRz4PkT2Kki0/zplzg35A++PonSS6J4HZvSb4Qb4sMn8adKSIkci57PewV4yORa +g/QV87F7lMaqTcnL2tqOoSGlkVNIKaIZydnElvXdAS+xwRRFJCI75IfICHimb3Ng +XXf/e2UtAc7NUQPD6zPZLNU9hzZCmxAr6KtjHRI+1Jv8ERhmOj/JuzjukcPD8cm+ +Nr6iXBpIxflZuT/zfk6EuTpjlcyYis2x2jqpxECMtnTqrrzzgcbzRRV8k6lgWJw2 +Q5wQL2bts/FJnvujSe9Nj6WegNHeZKiAjg0u6+rtIe9mEyBgOBq9tMSmVM0oKoKJ +JhOfE1D7gFPV/WdokaUq9Co0XRT+f6HeDFI+BZ90vOyFSJoxOUH3D+ylHsqPkdi8 +SDZ1Rvh2twYoShTOZ57bW5KhY0vcKxzjUGYKksuQ+ClcxWs9JTQ6G/OeHMS1MGai +2osUZjrqGeWT71aFVD6x4ZZlUmutjT07ro5AaP+wjsNxMX9dSUalVPM3LuUWqht0 +MgtXEzmzSJxj6w8seetViwGpsDDqOyao6Y18urgOgSpSW7408oETIVvOVJClD9Ht +3SeUJ7Tg7Epjr4fhWSVoDPzbWiNIsfgACbYqjN1wMgYtqffkYQ8wckHXihh9qbPV +47Tf3EzXuXCO5qPRj48g +=Rzhz +-----END PGP SIGNATURE----- diff --git a/dev/perl/perl-html-tagset/perl-html-tagset.SlackBuild b/dev/perl/perl-html-tagset/perl-html-tagset.SlackBuild index c114abaa..d06cff50 100755 --- a/dev/perl/perl-html-tagset/perl-html-tagset.SlackBuild +++ b/dev/perl/perl-html-tagset/perl-html-tagset.SlackBuild @@ -17,6 +17,7 @@ # slackbuild for perl-html-tagset, by Silvio Rhatto # requires: # tested: perl-html-tagset-3.20 +# model: perl.mkSlackBuild $Rev: 796 $ # # Look for slackbuildrc @@ -38,6 +39,7 @@ SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} +SLACKBUILD_PATH=${SLACKBUILD_PATH:="dev/perl/perl-html-tagset"} PREFIX=${PREFIX:=/usr} PKG_WORK="$TMP/$SRC_NAME" CONF_OPTIONS=${CONF_OPTIONS:=""} @@ -64,6 +66,7 @@ ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 +ERROR_MANIFEST=43; # Clean up any leftovers of previous builds rm -rf "$PKG_SRC" 2> /dev/null @@ -83,6 +86,72 @@ if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET fi +# Check Manifest file +if [ -e "$CWD/Manifest" ]; then + + # Manifest signature checking + if grep -q -- "-----BEGIN PGP SIGNED MESSAGE-----" $CWD/Manifest; then + echo "Checking Manifest signature..." + gpg --verify $CWD/Manifest + if [ "$?" != "0" ]; then + exit $ERROR_MANIFEST + fi + fi + + MANIFEST_LINES="`grep -E -v "^(MKBUILD|SLACKBUILD)" $CWD/Manifest | wc -l`" + + for ((MANIFEST_COUNT=1; MANIFEST_COUNT <= $MANIFEST_LINES; MANIFEST_COUNT++)); do + + MANIFEST_LINE="`grep -E -v "^(MKBUILD|SLACKBUILD)" $CWD/Manifest | head -n $MANIFEST_COUNT | tail -n 1`" + MANIFEST_FILE="`echo $MANIFEST_LINE | awk '{ print $2 }'`" + MANIFEST_FILE_TYPE="`echo $MANIFEST_LINE | awk '{ print $1 }'`" + + if [ -e "$SRC_DIR/$MANIFEST_FILE" ]; then + MANIFEST_FILE="$SRC_DIR/$MANIFEST_FILE" + else + MANIFEST_FILE="`find $CWD -name $MANIFEST_FILE`" + fi + + if [ ! -e "$MANIFEST_FILE" ] || [ -d "$MANIFEST_FILE" ]; then + continue + fi + + echo "Checking Manifest for $MANIFEST_FILE_TYPE $MANIFEST_FILE integrity..." + + SIZE_SRC="`wc -c $MANIFEST_FILE | awk '{ print $1 }'`" + SIZE_MANIFEST="`echo $MANIFEST_LINE | awk '{ print $3 }'`" + + # Check source code size + if [ "$SIZE_SRC" != "$SIZE_MANIFEST" ]; then + echo "SIZE Manifest: $SIZE_MANIFEST; SIZE $SRC: $SIZE_SRC" + exit $ERROR_MANIFEST + else + echo "Size match." + fi + + # Check source code integrity + for ALGO in md5 sha1 sha256 sha512 rmd160; do + if [ $ALGO = "rmd160" ]; then + ALGO_SRC="`openssl rmd160 $MANIFEST_FILE | awk '{ print $2 }'`" + else + ALGO_SRC="`"$ALGO"sum $MANIFEST_FILE | awk '{ print $1 }'`" + fi + ALGO="`echo $ALGO | tr '[:lower:]' '[:upper:]'`" + ALGO_MANIFEST=$(echo $MANIFEST_LINE | sed "s/.* $ALGO //" | awk '{ print $1 }') + if [ "$ALGO_SRC" != "$ALGO_MANIFEST" ]; then + echo "$ALGO Manifest: $ALGO_MANIFEST; $ALGO $SRC: $ALGO_SRC" + exit $ERROR_MANIFEST + else + echo "$ALGO match." + fi + done + + done + +else + exit $ERROR_MANIFEST +fi + # Untar cd "$PKG_WORK" tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR @@ -148,9 +217,10 @@ EODESC # Build the package cd "$PKG" -makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG +mkdir -p $REPOS/$SLACKBUILD_PATH +makepkg -l y -c n "$REPOS/$SLACKBUILD_PATH/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG # Delete source and build directories if requested -if [ "$CLEANUP" == "yes" ]; then +if [ "$CLEANUP" == "yes" ] || [ "$1" = "--cleanup" ]; then rm -rf "$PKG_WORK" "$PKG" fi diff --git a/dev/perl/perl-io-stringy/Manifest b/dev/perl/perl-io-stringy/Manifest new file mode 100644 index 00000000..2352fddd --- /dev/null +++ b/dev/perl/perl-io-stringy/Manifest @@ -0,0 +1,23 @@ +-----BEGIN PGP SIGNED MESSAGE----- +Hash: SHA256 + +DIST IO-stringy-2.110.tar.gz 40590 MD5 2e6a976cfa5521e815c1fdf4006982de RMD160 429496202c06b3a9485d12897d59d3cb631575c7 SHA1 3ef94404e51e3a6276ddddcce9ba7bbdd6b76a1f SHA256 7e3cf438b3938a2692cb502704c0bbfa2c5ec4a5071ab77906a2432126b004ee SHA512 54f274ac398023c3c245172052d781e72cdaa2d2edd425a25104098212fe2862da615f3512792daffcd22fd9b1cf7c0df12b85faad8241d8d7e600a319135d95 +MKBUILD perl-io-stringy.mkbuild 2352 MD5 3adf9b88060c2158cd40a655f428117a RMD160 10640a85ffdebcc980df14c565da19b756cf4033 SHA1 98a464135a7284b3626352552aadb0d7474de106 SHA256 ca4fbd60a3b40504756b8564b95bfbde2719bd9ef1229b4f089a871a7606c370 SHA512 33324559e11612cc6a2571b3b27e8bb35a6f16ab88a5fb4369631d6233e76de1f53d240a057851f126b813514e4c0ddf2fa62e02d28c9318dbae7c7438bf9e0b +SLACKBUILD perl-io-stringy.SlackBuild 7036 MD5 454a80e5fbffcb45e01bdb0679392cb3 RMD160 8aab5562ec9e3c2b8f1aa0d9315c8bfff9ce2e90 SHA1 7fe8cbcd6a95e38790c314a09f99bfa300fc4b1a SHA256 e875b27974887db00b0777741975f0901844c48446adcf3f8584a4201894f5e2 SHA512 915b8f2009b70e4031855403d90317f9a75c84f4851bbe667df474856734dbea773ae6ab5344308d6f27fdc8768419a8d017e0e8977d51acecdd958a1699ee13 +-----BEGIN PGP SIGNATURE----- +Version: GnuPG v1.4.9 (GNU/Linux) + +iQIcBAEBCAAGBQJKr9YLAAoJEEHL93ESzgeik0oP/2j37Ls6gNeLIoZm6YI8Jo+V +SNMzUTa+mnScn9wzblZh0N7TBOFs9MaYhxxkZ8W2JEBKF5fKe2IjnnxFbbr2IaBr ++fPqvPyzmtmfbdQBQCGUK1vBoRgfPcICaMhkd+7s0OXKCKiYVlg4+qtPTEh+XVAb +OYaUAEboUShkZ3h+C7rpnabgy48GjPK68BPW6ZwiTosza2kTEPSWEdxD9h3G3ERC +Q3Ek0iITOxogf+Dv7CrFCx8Cif8MURdiDDbEuMCs6MNi5AUnELiE7q8X3lf6wUQ+ +gaJa3ZslwJkR+frKNw6FliZ2Dt+qsPf4XRxt/ugvabZLTiseTTQv2aoXAlgkDHK0 +VTLvmfh/BmL5WXywTptODAYo/y20QnEI6Dgas/x1KdKkUSlU42yOtudh9o76INze +WN/IKa+mN48fccAmr+RnBhlt7I4N3fiUKGg5gxMCIRFn9or3gUN6Y8Y6dXka2RLv +ZhX+ALQ7x1lq52wxdep55AYio3H6IbuR3ZDnYOzPe0PebdP6WJ9FG8rqxD94ZjCd +LXGQMbucmsUf0xyd+gKUZur750n/CLAj+lBMpXAVvATyWR9aTXLQ+kYW14q5BSJB +/J6WtIfmdDRGc7xVlghtMDJ45q2BH0PZ0BOdTpSpaq7PeUq3pOJZ0lsqapTNK1vQ +sWJ9xLG907MG0gBslrMP +=MIvl +-----END PGP SIGNATURE----- diff --git a/dev/perl/perl-io-stringy/perl-io-stringy.SlackBuild b/dev/perl/perl-io-stringy/perl-io-stringy.SlackBuild index e8c0327f..c7c038bc 100755 --- a/dev/perl/perl-io-stringy/perl-io-stringy.SlackBuild +++ b/dev/perl/perl-io-stringy/perl-io-stringy.SlackBuild @@ -17,6 +17,7 @@ # slackbuild for perl-io-stringy, by Silvio Rhatto # requires: # tested: perl-io-stringy-2.110 +# model: perl.mkSlackBuild $Rev: 796 $ # # Look for slackbuildrc @@ -38,6 +39,7 @@ SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} +SLACKBUILD_PATH=${SLACKBUILD_PATH:="dev/perl/perl-io-stringy"} PREFIX=${PREFIX:=/usr} PKG_WORK="$TMP/$SRC_NAME" CONF_OPTIONS=${CONF_OPTIONS:=""} @@ -64,6 +66,7 @@ ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 +ERROR_MANIFEST=43; # Clean up any leftovers of previous builds rm -rf "$PKG_SRC" 2> /dev/null @@ -83,6 +86,72 @@ if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET fi +# Check Manifest file +if [ -e "$CWD/Manifest" ]; then + + # Manifest signature checking + if grep -q -- "-----BEGIN PGP SIGNED MESSAGE-----" $CWD/Manifest; then + echo "Checking Manifest signature..." + gpg --verify $CWD/Manifest + if [ "$?" != "0" ]; then + exit $ERROR_MANIFEST + fi + fi + + MANIFEST_LINES="`grep -E -v "^(MKBUILD|SLACKBUILD)" $CWD/Manifest | wc -l`" + + for ((MANIFEST_COUNT=1; MANIFEST_COUNT <= $MANIFEST_LINES; MANIFEST_COUNT++)); do + + MANIFEST_LINE="`grep -E -v "^(MKBUILD|SLACKBUILD)" $CWD/Manifest | head -n $MANIFEST_COUNT | tail -n 1`" + MANIFEST_FILE="`echo $MANIFEST_LINE | awk '{ print $2 }'`" + MANIFEST_FILE_TYPE="`echo $MANIFEST_LINE | awk '{ print $1 }'`" + + if [ -e "$SRC_DIR/$MANIFEST_FILE" ]; then + MANIFEST_FILE="$SRC_DIR/$MANIFEST_FILE" + else + MANIFEST_FILE="`find $CWD -name $MANIFEST_FILE`" + fi + + if [ ! -e "$MANIFEST_FILE" ] || [ -d "$MANIFEST_FILE" ]; then + continue + fi + + echo "Checking Manifest for $MANIFEST_FILE_TYPE $MANIFEST_FILE integrity..." + + SIZE_SRC="`wc -c $MANIFEST_FILE | awk '{ print $1 }'`" + SIZE_MANIFEST="`echo $MANIFEST_LINE | awk '{ print $3 }'`" + + # Check source code size + if [ "$SIZE_SRC" != "$SIZE_MANIFEST" ]; then + echo "SIZE Manifest: $SIZE_MANIFEST; SIZE $SRC: $SIZE_SRC" + exit $ERROR_MANIFEST + else + echo "Size match." + fi + + # Check source code integrity + for ALGO in md5 sha1 sha256 sha512 rmd160; do + if [ $ALGO = "rmd160" ]; then + ALGO_SRC="`openssl rmd160 $MANIFEST_FILE | awk '{ print $2 }'`" + else + ALGO_SRC="`"$ALGO"sum $MANIFEST_FILE | awk '{ print $1 }'`" + fi + ALGO="`echo $ALGO | tr '[:lower:]' '[:upper:]'`" + ALGO_MANIFEST=$(echo $MANIFEST_LINE | sed "s/.* $ALGO //" | awk '{ print $1 }') + if [ "$ALGO_SRC" != "$ALGO_MANIFEST" ]; then + echo "$ALGO Manifest: $ALGO_MANIFEST; $ALGO $SRC: $ALGO_SRC" + exit $ERROR_MANIFEST + else + echo "$ALGO match." + fi + done + + done + +else + exit $ERROR_MANIFEST +fi + # Untar cd "$PKG_WORK" tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR @@ -148,9 +217,10 @@ EODESC # Build the package cd "$PKG" -makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG +mkdir -p $REPOS/$SLACKBUILD_PATH +makepkg -l y -c n "$REPOS/$SLACKBUILD_PATH/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG # Delete source and build directories if requested -if [ "$CLEANUP" == "yes" ]; then +if [ "$CLEANUP" == "yes" ] || [ "$1" = "--cleanup" ]; then rm -rf "$PKG_WORK" "$PKG" fi diff --git a/dev/perl/perl-mail-spamassassin/Manifest b/dev/perl/perl-mail-spamassassin/Manifest new file mode 100644 index 00000000..12ce7a49 --- /dev/null +++ b/dev/perl/perl-mail-spamassassin/Manifest @@ -0,0 +1,24 @@ +-----BEGIN PGP SIGNED MESSAGE----- +Hash: SHA256 + +DIST Mail-SpamAssassin-3.2.5.tar.gz 1223706 MD5 7fdc1651d0371c4a7f95ac9ae6f828a6 RMD160 5a72a97d124e72ff4da1627982748377f1e34128 SHA1 14b1f6eae0221a152176f7f597f55581445e800a SHA256 105e18448d7ee2e576ceaca23b129da5e4a3c7dfccec73b6a3babb75d9c0b4f7 SHA512 28e69ac5219cb26b9ff76c351b6e0a126f042c03b9285b7c557cee3114ef30b2afa9d022e7215ef9dc789157d89b55fac0e12f0e5ccab950547930ed906a1ba2 +MKBUILD perl-mail-spamassassin.mkbuild 2750 MD5 4dab984fa972e798ae0c3d1d9e9246d6 RMD160 2a2f4dc0514b803c6587fd57294c81011d4cc784 SHA1 2678cba5c0b68697373f542f76b7ae2a66b27ab1 SHA256 b14cca77484da9d85d40d1ef00ecfb014219c8e9aa26f0eed56e1100ea58dedc SHA512 1922dad486fb4da341036de748a51f8cc06fd7be24f0520fcf714f0aaf4bf1508a9ab2e5178bf8d1cee0582cda5f50887342cd13a2fed8f5e29ee7635d7bd5d7 +SLACK-REQUIRED slack-required 174 MD5 1c57cda1eabf70b9c9b351a6d27d3d2b RMD160 82823d20e6b9e86df9e2527a5e741f10f4c758e1 SHA1 8e4a04bb65a88e39e396bcd9a2a7e9e588d0f54e SHA256 1110f08cb6dc3b2dc82888e71a567624c520f7a66b2aa41c9f1896d9679a1a04 SHA512 58e4af4d8273481b278677181074f9ac84cdfe7d93c5e3eefd4012e164c8e274ee08d80dc57ccf4933d2a93cd2ca123e45ed7873172beaa08c166b9ab805785b +SLACKBUILD perl-mail-spamassassin.SlackBuild 7459 MD5 009f6a1e08c56c6ca81dcfee3919707b RMD160 3c12f0f71a1491bc4f71f337414354d6adc06f75 SHA1 e7b61d19c41ccc071c2b19b4dea12de660772a0d SHA256 e9c06ef1bbbd4e920b32a6a996c90412967c9e8310c61189463fd16cecba9df7 SHA512 7eb70b837aa0fa861b270f22f058d31f92f440c7b615ab6ddcc69c9da0d6c4b84ef346428cdc1954373575bbcdd6e079a1ab92925f50a7eca1447fa20c8f9b24 +-----BEGIN PGP SIGNATURE----- +Version: GnuPG v1.4.9 (GNU/Linux) + +iQIcBAEBCAAGBQJKsEsjAAoJEEHL93ESzgeiEYoQALoPDyoJ+7n/oPm7t8bIVRZL +M00WmkGEwkettdcIFxOcsuSwexL1ysMI5zksNYhCRtsPgf4qxIeZah2YK0ELQ0wU +jfMgBjigQttYcDyfHVKJz37IJwmq2KtZykdwK40SoLyat5UzFnN/f1s2q9f6Xy2Y +3HFKaU+m07egCZPpJSleqaGdWM4SOUU4cUtWmm1FgJ/QmqLE5GZRCeSFdY8T6+K6 +6Qq228D/1Xr7gqv8P2ODTIv/xzwDkt/UiZkRsstjqhw+KSNBOpRnheUq01lgi4rE +CdXc3sU35/E449aHmuXCbU4N9VpzS6ZkKfL5BuEZs0S41RCJlcI9PZnMlVLbLeQb +FqaIOGTyXk4aiKeFv9s16l57r19m6GJ1NusV6VlSxyEDXC0cn9VhoHhfy/AnGOGL +AaybGHbxmYq55FSjFAZGulOwLq/w6UOOao9LkbXGP1SuWob1D/MucEjlbyv2qL9H +G0kaB/T+l33FbEBLSIM3YPmgBQda66hcxFpUZDRA2Jhq6A7hl9KPkcYmOLjrdTrd +rQR6MEa1Dg0unYCO9zAPOCJAdAftr+e07bSzzDmMbuFa8unoQRPehD/QEdhmD9b4 +YWcedRVy23FYkmLnilF8iQRNcBXSG7w+eKQo30ipWSzsOM0WKZPI25g3J068XLiy +GedZvWY8JYsIXWvJ9jJA +=YbCx +-----END PGP SIGNATURE----- diff --git a/dev/perl/perl-mail-spamassassin/perl-mail-spamassassin.SlackBuild b/dev/perl/perl-mail-spamassassin/perl-mail-spamassassin.SlackBuild deleted file mode 100755 index c3e9dd42..00000000 --- a/dev/perl/perl-mail-spamassassin/perl-mail-spamassassin.SlackBuild +++ /dev/null @@ -1,162 +0,0 @@ -#!/bin/bash -# -# perl-mail-spamassassin.SlackBuild is free software; you can redistribute -# it and/or modify it under the terms of the GNU General Public License as -# published by the Free Software Foundation; either version 2 of the License, -# or any later version. -# -# perl-mail-spamassassin.SlackBuild is distributed in the hope that it will -# be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General -# Public License for more details. -# -# You should have received a copy of the GNU General Public License along with -# this program; if not, write to the Free Software Foundation, Inc., 59 Temple -# Place - Suite 330, Boston, MA 02111-1307, USA -# -# slackbuild for perl-mail-spamassassin, by Silvio Rhatto -# requires: perl-digest-sha1 perl-html-parser perl-mime-base64 perl-db_file perl-net-dns -# tested: perl-mail-spamassassin-3.2.4 -# - -# Look for slackbuildrc -if [ -f ~/.slackbuildrc ]; then - source ~/.slackbuildrc -elif [ -f /etc/slackbuildrc ]; then - source /etc/slackbuildrc -fi - -# Set variables -CWD="$(pwd)" -SRC_NAME="Mail-SpamAssassin" -PKG_NAME="perl-mail-spamassassin" -ARCH=${ARCH:=i486} -SRC_VERSION=${VERSION:=3.2.4} -PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" -BUILD=${BUILD:=1rha} -SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME -TMP=${TMP:=/tmp} -PKG=${PKG:=$TMP/package-$PKG_NAME} -REPOS=${REPOS:=$TMP} -PREFIX=${PREFIX:=/usr} -PKG_WORK="$TMP/$SRC_NAME" -CONF_OPTIONS=${CONF_OPTIONS:=""} -NUMJOBS=${NUMJOBS:=""} - -# Set system libraries' path and optmization flags based on $ARCH -LIBDIR="$PREFIX/lib" - -if [ "$ARCH" = "i386" ]; then - SLKCFLAGS="-O2 -march=i386 -mcpu=i686" -elif [ "$ARCH" = "i486" ]; then - SLKCFLAGS="-O2 -march=i486 -mcpu=i686" -elif [ "$ARCH" = "i686" ]; then - SLKCFLAGS="-O2 -march=i686" -elif [ "$ARCH" = "s390" ]; then - SLKCFLAGS="-O2" -elif [ "$ARCH" = "x86_64" ]; then - SLKCFLAGS="-O2" - LIBDIR="$PREFIX/lib64" -fi - -# Set error codes (used by createpkg) -ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 -ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 -ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 -ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 - -# Clean up any leftovers of previous builds -rm -rf "$PKG_SRC" 2> /dev/null -rm -rf "$PKG" 2> /dev/null - -# Create directories if necessary -mkdir -p "$SRC_DIR" || exit $ERROR_MKDIR -mkdir -p "$PKG" || exit $ERROR_MKDIR -mkdir -p "$REPOS" || exit $ERROR_MKDIR -mkdir -p "$PKG_WORK" || exit $ERROR_MKDIR - -# Dowload source if necessary -SRC="$SRC_NAME-$VERSION.tar.gz" -URL="http://search.cpan.org/CPAN/authors/id/J/JM/JMASON/$SRC" - -if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then - wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET -fi - -# Untar -cd "$PKG_WORK" -tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR -PKG_SRC=`ls -l | awk '/^d/ { print $8 }'` -cd "$PKG_SRC" - -# Configure -perl Makefile.PL || exit $ERROR_CONF - -# Compile -make $NUMJOBS || exit $ERROR_MAKE - -# Install -make install DESTDIR="$PKG" || exit $ERROR_INSTALL - -# Fix .packlist -string="`echo $PKG | sed -e 's/\//\\\\\//g'`" -for file in `find $PKG -name .packlist`; do - sed -e "s/^$string//g" $file > $file.tmp - mv $file.tmp $file -done - -# Strip binaries -( cd "$PKG" - find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ - xargs strip --strip-unneeded 2> /dev/null - find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ - xargs strip --strip-unneeded 2> /dev/null -) - -# Install documentation -DOCS="NEWS TODO README AUTHORS INSTALL ChangeLog MAINTAINERS COPYING LICENSE SIGNATURE readme.*" -mkdir -p "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" || exit $ERROR_MKDIR -for doc in $DOCS; do - if [ -f "$doc" ]; then - cp -a $doc "$PKG/usr/doc/$PKG_NAME-$PKG_VERSION" - fi -done - -# Add package description (slack-desc) -mkdir -p "$PKG/install" || exit $ERROR_MKDIR -cat << EODESC > "$PKG/install/slack-desc" -# HOW TO EDIT THIS FILE: -# The "handy ruler" below makes it easier to edit a package description. Line -# up the first '|' above the ':' following the base package name, and the '|' -# on the right side marks the last column you can put a character in. You must -# make exactly 11 lines for the formatting to be correct. It's also -# customary to leave one space after the ':'. - - |-----handy-ruler---------------------------------------| -perl-mail-spamassassin: perl-mail-spamassassin -perl-mail-spamassassin: -perl-mail-spamassassin: SpamAssassin is a mail filter which attempts to identify spam using -perl-mail-spamassassin: a variety of mechanisms including text analysis, Bayesian filtering, -perl-mail-spamassassin: DNS blocklists, and collaborative filtering databases. -perl-mail-spamassassin: -perl-mail-spamassassin: -perl-mail-spamassassin: -perl-mail-spamassassin: -perl-mail-spamassassin: -perl-mail-spamassassin: -EODESC - -# Copy slack-required -mkdir -p "$PKG/install" || exit $ERROR_MKDIR -if [ -f "$CWD/slack-required" ]; then - cp $CWD/slack-required $PKG/install -fi - -# Build the package -cd "$PKG" -makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG - -# Delete source and build directories if requested -if [ "$CLEANUP" == "yes" ] || [ "$1" = "--cleanup" ]; then - rm -rf "$PKG_WORK" "$PKG" -fi diff --git a/dev/perl/perl-mail-spamassassin/slack-required b/dev/perl/perl-mail-spamassassin/slack-required deleted file mode 100644 index 8e903c9a..00000000 --- a/dev/perl/perl-mail-spamassassin/slack-required +++ /dev/null @@ -1,8 +0,0 @@ -# Dependency list to Mail-SpamAssassin -# -# dependency [condition] [version]] -perl-digest-sha1 -perl-html-parser -perl-mime-base64 -perl-db_file -perl-net-dns diff --git a/dev/perl/perl-mailtools/Manifest b/dev/perl/perl-mailtools/Manifest new file mode 100644 index 00000000..e2630f83 --- /dev/null +++ b/dev/perl/perl-mailtools/Manifest @@ -0,0 +1,23 @@ +-----BEGIN PGP SIGNED MESSAGE----- +Hash: SHA256 + +DIST MailTools-2.04.tar.gz 52292 MD5 d21ea4f375d1e5f3da6b0a4e8ba1e2c6 RMD160 7a8d149e3d3c8fc9e65166590637eed5115b2cb2 SHA1 6fccd04f9db0f478e19eec047be3bf0a1d8297f5 SHA256 bda9734b212343d8e4ec2743a98e1383f354f3a2bb8a6d6d93176cf233cb2171 SHA512 63c3a5ca87597c42f9cdcc601101b17e9a6c61e86cd9d8428b014117c88b7b7a58a789b5f0dde156b135ea001173008287ac5c0b0d3629802cddef2bc96901f8 +MKBUILD perl-mailtools.mkbuild 2357 MD5 2e28f0c4073672c107fb63a80aaef5b9 RMD160 1a53cf6fce4882cf3bb0bb08f09b25bc9c554a15 SHA1 ca505032a8273955f96b1e17d820f1f17005ed9e SHA256 7cb8387ddfe218607073b1a1364319ac8791479d02374060867c03b648d6a73b SHA512 71b1d3b25ae14bcdbbe4de9f6e303f5ec143de037258fa9defc4fe433a01550a8c217e88a683b4e6d7b24e1094e333275162a5a4cee2d82355df14ada05ad170 +SLACKBUILD perl-mailtools.SlackBuild 7036 MD5 c8ff6b67b23c0e4cf07436310a6082ed RMD160 b79f47287b412849a843ae46d60fafcf8b93ebed SHA1 5b400ddf1f3c75d0ac2b5c284c209782d22d1be8 SHA256 b916f7be845dba879016e76b04645341d7607b0a39d8c821437ce830f35e9dfd SHA512 91012b00a3dbe8ce01a0333e86f711eec576bae62b22c6a60f276a05db35b1fdcc018bcbe2734faa2e51d4b05441c7065f5cbaf8f0665667e3f47346d8bb4081 +-----BEGIN PGP SIGNATURE----- +Version: GnuPG v1.4.9 (GNU/Linux) + +iQIcBAEBCAAGBQJKr+RLAAoJEEHL93ESzgeiPt0QALMWZx3iR8xkCek0CwpcijsR +sGOJryeUBQPnfbKCWU5ZURjIq7vF8BkarvpLzdWlCjgWpXFDJn9NdKgd+eeUBO3t +sct8JCN2LTDKQdkWwQPRgBhwXy65fwSlKd7ysXdBnotU63YwsfqoapjP03L1aO7E +/PPQjrPgahuUYGjkEjw8UBXRp4CkYZGyvJcRmhQHk1Q9tz5rAG5rY7VelzqtGXti +c2rf5nNo9QxDP/syUaKmZHJnuzMFb03Zkul6BRwlnhFwhwpTESHz++ANJ8OFFMsG +PJzaay9EYL5Ff/tiq9MNDe529gJ3vwezupdvag/2cO9LnvhvJwmjQp4kboa/4j4O +Z8uYce6jPBwJ2+//TfdHbRc49yHFFev6hg+Skd9VEqzrfK8461TjU+Ub8NTx5gCs +J0eQePh1UUMNox1yibJdniitGQGDQF73dECLL5jRFbQ4zaQ5sqwdxTtt5AGPrPaJ +TSxqDD6pcIL65SwNkvF07kCZl3C2UGm4fwxQIO70oPr/0HsllHYFeD1QnpDBa5QA +VsXVd72T7EFvvUTpkIetqQgn95yubtHZ0op53rpGu+FUODL0VhKBGsywlprIq6zC +seu5WNOyrob0Cp9i+8mIqYBEQdZ3FyOYa3HFVi+snS2hZCV8B7COpXbS+LMyV4qG +qk7yYCtn7g+Nb920Z9+k +=iJoT +-----END PGP SIGNATURE----- diff --git a/dev/perl/perl-mailtools/perl-mailtools.SlackBuild b/dev/perl/perl-mailtools/perl-mailtools.SlackBuild index 31ca5671..d7558aa0 100755 --- a/dev/perl/perl-mailtools/perl-mailtools.SlackBuild +++ b/dev/perl/perl-mailtools/perl-mailtools.SlackBuild @@ -16,7 +16,8 @@ # # slackbuild for perl-mailtools, by Silvio Rhatto # requires: -# tested: perl-mailtools-2.03 +# tested: perl-mailtools-2.04 +# model: perl.mkSlackBuild $Rev: 796 $ # # Look for slackbuildrc @@ -31,13 +32,14 @@ CWD="$(pwd)" SRC_NAME="MailTools" PKG_NAME="perl-mailtools" ARCH=${ARCH:=i486} -SRC_VERSION=${VERSION:=2.03} +SRC_VERSION=${VERSION:=2.04} PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rha} SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} +SLACKBUILD_PATH=${SLACKBUILD_PATH:="dev/perl/perl-mailtools"} PREFIX=${PREFIX:=/usr} PKG_WORK="$TMP/$SRC_NAME" CONF_OPTIONS=${CONF_OPTIONS:=""} @@ -64,6 +66,7 @@ ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 +ERROR_MANIFEST=43; # Clean up any leftovers of previous builds rm -rf "$PKG_SRC" 2> /dev/null @@ -83,6 +86,72 @@ if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET fi +# Check Manifest file +if [ -e "$CWD/Manifest" ]; then + + # Manifest signature checking + if grep -q -- "-----BEGIN PGP SIGNED MESSAGE-----" $CWD/Manifest; then + echo "Checking Manifest signature..." + gpg --verify $CWD/Manifest + if [ "$?" != "0" ]; then + exit $ERROR_MANIFEST + fi + fi + + MANIFEST_LINES="`grep -E -v "^(MKBUILD|SLACKBUILD)" $CWD/Manifest | wc -l`" + + for ((MANIFEST_COUNT=1; MANIFEST_COUNT <= $MANIFEST_LINES; MANIFEST_COUNT++)); do + + MANIFEST_LINE="`grep -E -v "^(MKBUILD|SLACKBUILD)" $CWD/Manifest | head -n $MANIFEST_COUNT | tail -n 1`" + MANIFEST_FILE="`echo $MANIFEST_LINE | awk '{ print $2 }'`" + MANIFEST_FILE_TYPE="`echo $MANIFEST_LINE | awk '{ print $1 }'`" + + if [ -e "$SRC_DIR/$MANIFEST_FILE" ]; then + MANIFEST_FILE="$SRC_DIR/$MANIFEST_FILE" + else + MANIFEST_FILE="`find $CWD -name $MANIFEST_FILE`" + fi + + if [ ! -e "$MANIFEST_FILE" ] || [ -d "$MANIFEST_FILE" ]; then + continue + fi + + echo "Checking Manifest for $MANIFEST_FILE_TYPE $MANIFEST_FILE integrity..." + + SIZE_SRC="`wc -c $MANIFEST_FILE | awk '{ print $1 }'`" + SIZE_MANIFEST="`echo $MANIFEST_LINE | awk '{ print $3 }'`" + + # Check source code size + if [ "$SIZE_SRC" != "$SIZE_MANIFEST" ]; then + echo "SIZE Manifest: $SIZE_MANIFEST; SIZE $SRC: $SIZE_SRC" + exit $ERROR_MANIFEST + else + echo "Size match." + fi + + # Check source code integrity + for ALGO in md5 sha1 sha256 sha512 rmd160; do + if [ $ALGO = "rmd160" ]; then + ALGO_SRC="`openssl rmd160 $MANIFEST_FILE | awk '{ print $2 }'`" + else + ALGO_SRC="`"$ALGO"sum $MANIFEST_FILE | awk '{ print $1 }'`" + fi + ALGO="`echo $ALGO | tr '[:lower:]' '[:upper:]'`" + ALGO_MANIFEST=$(echo $MANIFEST_LINE | sed "s/.* $ALGO //" | awk '{ print $1 }') + if [ "$ALGO_SRC" != "$ALGO_MANIFEST" ]; then + echo "$ALGO Manifest: $ALGO_MANIFEST; $ALGO $SRC: $ALGO_SRC" + exit $ERROR_MANIFEST + else + echo "$ALGO match." + fi + done + + done + +else + exit $ERROR_MANIFEST +fi + # Untar cd "$PKG_WORK" tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR @@ -148,9 +217,10 @@ EODESC # Build the package cd "$PKG" -makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG +mkdir -p $REPOS/$SLACKBUILD_PATH +makepkg -l y -c n "$REPOS/$SLACKBUILD_PATH/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG # Delete source and build directories if requested -if [ "$CLEANUP" == "yes" ]; then +if [ "$CLEANUP" == "yes" ] || [ "$1" = "--cleanup" ]; then rm -rf "$PKG_WORK" "$PKG" fi diff --git a/dev/perl/perl-math-bigint/Manifest b/dev/perl/perl-math-bigint/Manifest new file mode 100644 index 00000000..6c56fd3d --- /dev/null +++ b/dev/perl/perl-math-bigint/Manifest @@ -0,0 +1,23 @@ +-----BEGIN PGP SIGNED MESSAGE----- +Hash: SHA256 + +DIST Math-BigInt-1.89.tar.gz 200231 MD5 695d70be20c3cb1778961b88c6b4ac42 RMD160 e1090c931a8fa1cc0db9c7cc851507739ec7598c SHA1 7924059adc037ee220fcf7e89800634e02e0ac20 SHA256 1572705af130ef095bbce33336362ff28f29c765ef44ef5eca977cb9d86a3b76 SHA512 0fafa502404327afdd950780513a9fc88ed2506a8e14987f3cdda60049678cf8b4c9e9878a64209fb6eb5a6de211d89aab89dd7df098920819c9e984143cede4 +MKBUILD perl-math-bigint.mkbuild 2363 MD5 46306c0b6d7541571b9d25fb1751bf7c RMD160 6d69d4fc69636a85b4e3c43db9fdec3b26e77d31 SHA1 974167c9c97d089355a7208f4dcce8044e7357bd SHA256 4dc51182fcbd39b77ba99187efffbccbb6e8bcc1368560f30d34056e5422db62 SHA512 76aacb1d5e3afeeda6b976bc7998065267dfd9af6e781d21dc3a613b66ed5bd782fb174045d788a8518781e2335c8412ec0af2a23969c329c5c0d97f9d55c16f +SLACKBUILD perl-math-bigint.SlackBuild 7050 MD5 65c26e7783598d477aa5c3fed1f11d77 RMD160 dda2c0b4f5dc460adf06bdec45f1768222eb7e06 SHA1 187145b30cf3dc83d5d802f1438e83c01f278ac3 SHA256 3ae7ba6061f68604559da14ace42566759a863db260f122f25cc2ec57746e332 SHA512 34b86b1dd73ecf31e747ff379b34133521eba7ed43ea21e18fd9ea5c9d6e20e24991c26d0c7df22c0bec982bb114551332d61de1e2b84441dd975d1070713640 +-----BEGIN PGP SIGNATURE----- +Version: GnuPG v1.4.9 (GNU/Linux) + +iQIcBAEBCAAGBQJKsEmmAAoJEEHL93ESzgeiql4P/3b/3CibICzo+jIrj2LtpwaP +FsCvtm9oM3pZIcT9CEcxXe/A+nu+EfCPl9N+ihaX4q8JiA2QSwNeI6WLVCKh+5+x +WEKeQ6N3sNpVI9b/MGEa+BtKI7CoqWTG9hGFwfv0jS1bzBh/OW+RX/79NSiECUWg +1n0AgHvLfWeRWcazJC8/cmUsAF3VAO36wyaXGN/tGosgwc6FABSGu5MdjXqtNRyM +dP+4Ip9qddVQn8TKPX3duNpItI9n2lEIe+2gJKx3QVnH8fui7M9Fv8BcAfY36I/l +7MJPe5rMed5C/EzHDP4ic8RYDXahAKzNnh5+yHPWSse1Ptm+0YZXFap5Gb3+9vZw +qbzqlCLYPEm+tcNw226X1KEMUJ+9E5sizJXXjmYMd3//s5c3zX2NPBDmXXQqU7le +hkxDMN0gpqNZ6Yw+zCTaSaY+e8BtERKcaNUa77OCEK1I5V0Yg/MnD1eufx26DJJu +lnl3AwyGPly/wHQhUn+Cdc4eFKuUrpzo26GRFJ59Hmwn7vmW2IvpRc1ue3poybNf +aidaqBg6/s/9lu9DEEwdUk63E3YYJ0so+jCG7bGaukYvKALVxzyaQnG1+eV4efhU +VJcYtt+tYnFESi8sMscv6A7wn0Kb/uDhQqAIY0WB6RUBffYW8MzD5/S6yj18Vxu+ +aIPUXuTMIYcSYMqvKorl +=fnbQ +-----END PGP SIGNATURE----- diff --git a/dev/perl/perl-math-bigint/perl-math-bigint.SlackBuild b/dev/perl/perl-math-bigint/perl-math-bigint.SlackBuild index 329959e8..31a108db 100755 --- a/dev/perl/perl-math-bigint/perl-math-bigint.SlackBuild +++ b/dev/perl/perl-math-bigint/perl-math-bigint.SlackBuild @@ -17,6 +17,7 @@ # slackbuild for perl-math-bigint, by Silvio Rhatto # requires: # tested: perl-math-bigint-1.89 +# model: perl.mkSlackBuild $Rev: 796 $ # # Look for slackbuildrc @@ -38,6 +39,7 @@ SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} +SLACKBUILD_PATH=${SLACKBUILD_PATH:="dev/perl/perl-math-bigint"} PREFIX=${PREFIX:=/usr} PKG_WORK="$TMP/$SRC_NAME" CONF_OPTIONS=${CONF_OPTIONS:=""} @@ -64,6 +66,7 @@ ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 +ERROR_MANIFEST=43; # Clean up any leftovers of previous builds rm -rf "$PKG_SRC" 2> /dev/null @@ -83,6 +86,72 @@ if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET fi +# Check Manifest file +if [ -e "$CWD/Manifest" ]; then + + # Manifest signature checking + if grep -q -- "-----BEGIN PGP SIGNED MESSAGE-----" $CWD/Manifest; then + echo "Checking Manifest signature..." + gpg --verify $CWD/Manifest + if [ "$?" != "0" ]; then + exit $ERROR_MANIFEST + fi + fi + + MANIFEST_LINES="`grep -E -v "^(MKBUILD|SLACKBUILD)" $CWD/Manifest | wc -l`" + + for ((MANIFEST_COUNT=1; MANIFEST_COUNT <= $MANIFEST_LINES; MANIFEST_COUNT++)); do + + MANIFEST_LINE="`grep -E -v "^(MKBUILD|SLACKBUILD)" $CWD/Manifest | head -n $MANIFEST_COUNT | tail -n 1`" + MANIFEST_FILE="`echo $MANIFEST_LINE | awk '{ print $2 }'`" + MANIFEST_FILE_TYPE="`echo $MANIFEST_LINE | awk '{ print $1 }'`" + + if [ -e "$SRC_DIR/$MANIFEST_FILE" ]; then + MANIFEST_FILE="$SRC_DIR/$MANIFEST_FILE" + else + MANIFEST_FILE="`find $CWD -name $MANIFEST_FILE`" + fi + + if [ ! -e "$MANIFEST_FILE" ] || [ -d "$MANIFEST_FILE" ]; then + continue + fi + + echo "Checking Manifest for $MANIFEST_FILE_TYPE $MANIFEST_FILE integrity..." + + SIZE_SRC="`wc -c $MANIFEST_FILE | awk '{ print $1 }'`" + SIZE_MANIFEST="`echo $MANIFEST_LINE | awk '{ print $3 }'`" + + # Check source code size + if [ "$SIZE_SRC" != "$SIZE_MANIFEST" ]; then + echo "SIZE Manifest: $SIZE_MANIFEST; SIZE $SRC: $SIZE_SRC" + exit $ERROR_MANIFEST + else + echo "Size match." + fi + + # Check source code integrity + for ALGO in md5 sha1 sha256 sha512 rmd160; do + if [ $ALGO = "rmd160" ]; then + ALGO_SRC="`openssl rmd160 $MANIFEST_FILE | awk '{ print $2 }'`" + else + ALGO_SRC="`"$ALGO"sum $MANIFEST_FILE | awk '{ print $1 }'`" + fi + ALGO="`echo $ALGO | tr '[:lower:]' '[:upper:]'`" + ALGO_MANIFEST=$(echo $MANIFEST_LINE | sed "s/.* $ALGO //" | awk '{ print $1 }') + if [ "$ALGO_SRC" != "$ALGO_MANIFEST" ]; then + echo "$ALGO Manifest: $ALGO_MANIFEST; $ALGO $SRC: $ALGO_SRC" + exit $ERROR_MANIFEST + else + echo "$ALGO match." + fi + done + + done + +else + exit $ERROR_MANIFEST +fi + # Untar cd "$PKG_WORK" tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR @@ -148,9 +217,10 @@ EODESC # Build the package cd "$PKG" -makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG +mkdir -p $REPOS/$SLACKBUILD_PATH +makepkg -l y -c n "$REPOS/$SLACKBUILD_PATH/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG # Delete source and build directories if requested -if [ "$CLEANUP" == "yes" ]; then +if [ "$CLEANUP" == "yes" ] || [ "$1" = "--cleanup" ]; then rm -rf "$PKG_WORK" "$PKG" fi diff --git a/dev/perl/perl-mime-tools/Manifest b/dev/perl/perl-mime-tools/Manifest new file mode 100644 index 00000000..ad12bdb4 --- /dev/null +++ b/dev/perl/perl-mime-tools/Manifest @@ -0,0 +1,24 @@ +-----BEGIN PGP SIGNED MESSAGE----- +Hash: SHA256 + +DIST MIME-tools-5.427.tar.gz 391971 MD5 4333caa7238cb9eafb5f7fb39fcbd8e7 RMD160 c4ba32e528541b35ff75dd331f8d84261b7133f3 SHA1 8fda2cb93fdc76079cee35cdab4181cb18b312ed SHA256 844d2499fd2934d4836bd86dc73dd51955aea3fd88109b9d559d99449851fe6e SHA512 fb7d095920db0568e5eb108e5b0340fc86a65b4409f4331acce1f894f7e6df16debbbe52746a7a1b6a935ea2c0c60bd15ee7fa09aeecffb2f8e034904d5b0669 +MKBUILD perl-mime-tools.mkbuild 2489 MD5 86533e972d5ff2f7512b499769cae513 RMD160 e13597780a960375ecb0162a9c7baace0fa11018 SHA1 3a6f0a98f32a1a26ea254f813c2aaf55428d8502 SHA256 76fa66460f3663ffb2e489718b01e1b55e0f6411f23b0522cafba9b2d4b50c6d SHA512 80255800856e7852c250f7eb585c6b5cb806011d840752145f1fdbcc50b06b0368888db4bbaecb73d6ba9627435e1d93c2b1c977daf4bedd747a5580143fc8a3 +SLACK-REQUIRED slack-required 149 MD5 ad95e6f4de5a3fae6edf49db8a9efc1f RMD160 886861ee2c2aa27a2cf34a05accc95dac24545b3 SHA1 31c979a3471ab9ecce0478f4daed404e203b19ce SHA256 5b29cc31983d50d269e954d0a30f1ff5baf6be47e30bf90f311e0fa8a47b129b SHA512 5057eaaffaddeae54c2211f29a150981d40690b0a2ece1bc779b7860090ecf8861db2745a31503e7af8d20464593af240e911d40aa7e92dfa80c0b8d61c9f112 +SLACKBUILD perl-mime-tools.SlackBuild 7186 MD5 d2ae424a974a54bd99d96e48264cc143 RMD160 0f39f8aed2016078e8240a05a0f23f4d23954527 SHA1 8f98a8dbdaec2465f91f0efbb8920f8dc33b1683 SHA256 8772adb0494fa01d76f326005f75a0088be0ef496b84a22fa5a2a4556ac1e3d5 SHA512 4d370ffeafed5733464581bcd5537194372ea394cb079a0e40e4e8d07565fcf70c3b0fd7280876fa20079adad5600b11dd6c1c93abcbc57ef5e7a6aa514d5c47 +-----BEGIN PGP SIGNATURE----- +Version: GnuPG v1.4.9 (GNU/Linux) + +iQIcBAEBCAAGBQJKr+ezAAoJEEHL93ESzgeiy8UP/iF70zGNgWhLza8ROO0krKsQ +w+3r6yDFN9KJd8eaEXh9oVv6Msc3NdC/XPhm1NFAM5oVusbS2poOfqr6xKQLaWmN +naQa1q8kw90hWcHyeuQQHMQv9Vyi2Tbk+6tHAHUQncEIbOjI40ia19jc58mBZHKE +YL8FR/WKP7PjmP0b5OET1kd+z7TAS3Y6lFTCnkFyoaQZ/1fAKQeFwS3xcetMu0ML +TNuQLovgwg58lYXNp2aDuRZx4WHkFLlWbtSkwm/ACJtMUcHcz+RdXMnjMM5LRha3 +w1UvNfW9ye9yBE9ZDA170Yl2rdlvBnt/oXHUbB9m4wSv7tLA+DG1jWkvogHsSSkj +UQSukeHlhdk+CIfdAj3Us3qvP4noZHKNnTiU7/R5weQ0tgZ26umODp8UtHXWj1Ja +vujpotOk5oRA+fXggZk7HudMhSmWDaAR6IVRZqSquv9tS8rC0tztsxijHyrpBXmC +6Eb20ANsuWOrhhmz/viHB+NbeV3k6Rfkd2TEVzJHmttfLf099KH24mCJLaOMloeG +/Kkd5FyJtX3ldxiN9GjcQQGKJFFNJWdvCw91fr+ipynAMe6E7ntjvoGBvNS1dQ/i +fW4Qr2V2HGFYvZoXFJp2tI5jlJ7pe1k7Pi48QRctvUS5zwt7AKus0rpaXtsgvGvY +FDET0tjCeT22U8/yINST +=bIrc +-----END PGP SIGNATURE----- diff --git a/dev/perl/perl-mime-tools/perl-mime-tools.SlackBuild b/dev/perl/perl-mime-tools/perl-mime-tools.SlackBuild index 7b114e49..64e955ad 100755 --- a/dev/perl/perl-mime-tools/perl-mime-tools.SlackBuild +++ b/dev/perl/perl-mime-tools/perl-mime-tools.SlackBuild @@ -15,8 +15,9 @@ # Place - Suite 330, Boston, MA 02111-1307, USA # # slackbuild for perl-mime-tools, by Silvio Rhatto -# requires: perl-file-temp perl-mime-base64 perl-mailtools perl-io-stringy -# tested: perl-mime-tools-5.426 +# requires: +# tested: perl-mime-tools-5.427 +# model: perl.mkSlackBuild $Rev: 796 $ # # Look for slackbuildrc @@ -31,13 +32,14 @@ CWD="$(pwd)" SRC_NAME="MIME-tools" PKG_NAME="perl-mime-tools" ARCH=${ARCH:=i486} -SRC_VERSION=${VERSION:=5.426} +SRC_VERSION=${VERSION:=5.427} PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rha} SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} +SLACKBUILD_PATH=${SLACKBUILD_PATH:="dev/perl/perl-mime-tools"} PREFIX=${PREFIX:=/usr} PKG_WORK="$TMP/$SRC_NAME" CONF_OPTIONS=${CONF_OPTIONS:=""} @@ -64,6 +66,7 @@ ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 +ERROR_MANIFEST=43; # Clean up any leftovers of previous builds rm -rf "$PKG_SRC" 2> /dev/null @@ -83,6 +86,72 @@ if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET fi +# Check Manifest file +if [ -e "$CWD/Manifest" ]; then + + # Manifest signature checking + if grep -q -- "-----BEGIN PGP SIGNED MESSAGE-----" $CWD/Manifest; then + echo "Checking Manifest signature..." + gpg --verify $CWD/Manifest + if [ "$?" != "0" ]; then + exit $ERROR_MANIFEST + fi + fi + + MANIFEST_LINES="`grep -E -v "^(MKBUILD|SLACKBUILD)" $CWD/Manifest | wc -l`" + + for ((MANIFEST_COUNT=1; MANIFEST_COUNT <= $MANIFEST_LINES; MANIFEST_COUNT++)); do + + MANIFEST_LINE="`grep -E -v "^(MKBUILD|SLACKBUILD)" $CWD/Manifest | head -n $MANIFEST_COUNT | tail -n 1`" + MANIFEST_FILE="`echo $MANIFEST_LINE | awk '{ print $2 }'`" + MANIFEST_FILE_TYPE="`echo $MANIFEST_LINE | awk '{ print $1 }'`" + + if [ -e "$SRC_DIR/$MANIFEST_FILE" ]; then + MANIFEST_FILE="$SRC_DIR/$MANIFEST_FILE" + else + MANIFEST_FILE="`find $CWD -name $MANIFEST_FILE`" + fi + + if [ ! -e "$MANIFEST_FILE" ] || [ -d "$MANIFEST_FILE" ]; then + continue + fi + + echo "Checking Manifest for $MANIFEST_FILE_TYPE $MANIFEST_FILE integrity..." + + SIZE_SRC="`wc -c $MANIFEST_FILE | awk '{ print $1 }'`" + SIZE_MANIFEST="`echo $MANIFEST_LINE | awk '{ print $3 }'`" + + # Check source code size + if [ "$SIZE_SRC" != "$SIZE_MANIFEST" ]; then + echo "SIZE Manifest: $SIZE_MANIFEST; SIZE $SRC: $SIZE_SRC" + exit $ERROR_MANIFEST + else + echo "Size match." + fi + + # Check source code integrity + for ALGO in md5 sha1 sha256 sha512 rmd160; do + if [ $ALGO = "rmd160" ]; then + ALGO_SRC="`openssl rmd160 $MANIFEST_FILE | awk '{ print $2 }'`" + else + ALGO_SRC="`"$ALGO"sum $MANIFEST_FILE | awk '{ print $1 }'`" + fi + ALGO="`echo $ALGO | tr '[:lower:]' '[:upper:]'`" + ALGO_MANIFEST=$(echo $MANIFEST_LINE | sed "s/.* $ALGO //" | awk '{ print $1 }') + if [ "$ALGO_SRC" != "$ALGO_MANIFEST" ]; then + echo "$ALGO Manifest: $ALGO_MANIFEST; $ALGO $SRC: $ALGO_SRC" + exit $ERROR_MANIFEST + else + echo "$ALGO match." + fi + done + + done + +else + exit $ERROR_MANIFEST +fi + # Untar cd "$PKG_WORK" tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR @@ -154,7 +223,8 @@ fi # Build the package cd "$PKG" -makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG +mkdir -p $REPOS/$SLACKBUILD_PATH +makepkg -l y -c n "$REPOS/$SLACKBUILD_PATH/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG # Delete source and build directories if requested if [ "$CLEANUP" == "yes" ] || [ "$1" = "--cleanup" ]; then diff --git a/dev/perl/perl-net-dns/Manifest b/dev/perl/perl-net-dns/Manifest new file mode 100644 index 00000000..94250494 --- /dev/null +++ b/dev/perl/perl-net-dns/Manifest @@ -0,0 +1,24 @@ +-----BEGIN PGP SIGNED MESSAGE----- +Hash: SHA256 + +DIST Net-DNS-0.65.tar.gz 157633 MD5 54e5a12a20de39b954a93723927ac789 RMD160 69e8dbf5536905b851305ef0f11952df737b9229 SHA1 cbda6a5bf7fbf7fd160266625b5a1c672ea0c8f0 SHA256 eefc554ed7adaeb824373235d85313d0a0aeca373913deb6568f8d95b6c81ad7 SHA512 eff55b7566a2e3d495b0049faed425f25a0f0e1eb3320aee22f20a594f3b9426e168caca54279f5294c7079d18d2e4e06c3bbed763862b7f5053245617fbfa6e +MKBUILD perl-net-dns.mkbuild 2424 MD5 cd8eddf6b799746705369c902a623774 RMD160 487f1a1ca98bf897550ef2f9d6e476189e262e3c SHA1 42951d1cdf03ae5ed2324475ecc5df3cf6873df9 SHA256 5fbf93529c847a47e49ac10ce86edfadb0153f53b4c4f6d39c99769aedbe4260 SHA512 dd7cf4ec7d091e647e43e8837c9bb65619ad8f0c7dce8b8f21d38393e6e5b3012caf15f724b5e539c8fa46033a51cee3dfbae301fd317e15a069f118b5168d1d +SLACK-REQUIRED slack-required 145 MD5 da327b14f7b4b6bf8013821cba4a66c7 RMD160 2b85a56082f12a8f6d8effcfa31f266452dc5234 SHA1 0667cf872ccf82ca2058be8ff744cba8e0acd971 SHA256 47993c1ecb62926535201b27b1d20121555c0a8419a519651c2294dae3be182d SHA512 99dc8b069f287b6bc063297db889677191479c5bc3502a48f498ef4cd871dd39970ad5c1cc8fc0aece946e6b9014ae5eb4621e073dd04e077fbdba2c7f571783 +SLACKBUILD perl-net-dns.SlackBuild 7109 MD5 c464c0521361bd308af2c99e447175a5 RMD160 be685294adf4a5cd79f18362ca58d84bd286abd1 SHA1 6f1e6d750b8678f261cb13a87bb007d8fc502726 SHA256 e795b56ce072b16b6221eeafa6dfc17ffb16c5803aec6fa258506d19f797fdc5 SHA512 c07e32a6d1300c1db820a7859a4b7966b3c1ab2108c9aa1fde7a0929417d7dc8ab5ea07eaf811fcd768a52cb54d33749c4cf7cb9a3e7772930d332f47b4d99ef +-----BEGIN PGP SIGNATURE----- +Version: GnuPG v1.4.9 (GNU/Linux) + +iQIcBAEBCAAGBQJKsEo5AAoJEEHL93ESzgeiDRAQAJj3YbZSaMdU5T7DPV8231AO +JjV1b6e8eK4VM49gVw0PFMdsj3/xXVuf3G9nfL2AsZXMF9TDrcEzIkVcKTNK/oQL +lOzLhg+wqvDE8KGS0OR8gydPdqQ6PeL9KIhkEWM9JpsJ1pyNhhLeCzWA7sN+MEgO ++xCUPQZ2BaprNwtswLKgxO2oLQbaSgp4qXpeyA9VZ4UGm5Uy9aaGjbLGRerUuV2e +VLSbMQhWb74AFSNtr8h8aK1l8xjxFDoMB+5pYkav7ltfMMK41m+EcSell6W3zceQ +QQshzunKmzUyCpaa3bABxqPk9PTr+XMJEFt5jU6LXfI/kKUaYtWYebxMppcKKorT +yRaEGvDweAy/GGK3bLfZsH79r4AeIP+/AelEtvWQWHlzN7LN42bwrVImWOphSy2W +j8GXd5QDwkyhEouxjc6X1WPF8iW/WTkNrQVWEIdaH6zo4jMRFBXO+Kb3wsr5ydUy +RgC01hDSvCyxgQ9+RMswkdHChLuJRsWImPseTTySLLfbEwqr6iRTSR9Od7bR8CAr +G63wEu3iE3vNktAF5rWfSuHkpZV0C7rv79hsKVRTnfcav1QitZuCLmmLxx4dgdTV +RrSZF8asZ1gil3pskZhsweclTaUpBP9fskjrAyrjvrUjQm6dphQMpnsAZHFuZxi+ +JbiKNVOZSb/ooKvyO+9e +=qsxN +-----END PGP SIGNATURE----- diff --git a/dev/perl/perl-net-dns/perl-net-dns.SlackBuild b/dev/perl/perl-net-dns/perl-net-dns.SlackBuild index 962e3292..859032ca 100755 --- a/dev/perl/perl-net-dns/perl-net-dns.SlackBuild +++ b/dev/perl/perl-net-dns/perl-net-dns.SlackBuild @@ -15,8 +15,9 @@ # Place - Suite 330, Boston, MA 02111-1307, USA # # slackbuild for perl-net-dns, by Silvio Rhatto -# requires: perl-test-simple perl-mime-base64 perl-digest-md5 perl-net-ip -# tested: perl-net-dns-0.63 +# requires: +# tested: perl-net-dns-0.65 +# model: perl.mkSlackBuild $Rev: 796 $ # # Look for slackbuildrc @@ -31,13 +32,14 @@ CWD="$(pwd)" SRC_NAME="Net-DNS" PKG_NAME="perl-net-dns" ARCH=${ARCH:=i486} -SRC_VERSION=${VERSION:=0.63} +SRC_VERSION=${VERSION:=0.65} PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rha} SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} +SLACKBUILD_PATH=${SLACKBUILD_PATH:="dev/perl/perl-net-dns"} PREFIX=${PREFIX:=/usr} PKG_WORK="$TMP/$SRC_NAME" CONF_OPTIONS=${CONF_OPTIONS:=""} @@ -64,6 +66,7 @@ ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 +ERROR_MANIFEST=43; # Clean up any leftovers of previous builds rm -rf "$PKG_SRC" 2> /dev/null @@ -83,6 +86,72 @@ if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET fi +# Check Manifest file +if [ -e "$CWD/Manifest" ]; then + + # Manifest signature checking + if grep -q -- "-----BEGIN PGP SIGNED MESSAGE-----" $CWD/Manifest; then + echo "Checking Manifest signature..." + gpg --verify $CWD/Manifest + if [ "$?" != "0" ]; then + exit $ERROR_MANIFEST + fi + fi + + MANIFEST_LINES="`grep -E -v "^(MKBUILD|SLACKBUILD)" $CWD/Manifest | wc -l`" + + for ((MANIFEST_COUNT=1; MANIFEST_COUNT <= $MANIFEST_LINES; MANIFEST_COUNT++)); do + + MANIFEST_LINE="`grep -E -v "^(MKBUILD|SLACKBUILD)" $CWD/Manifest | head -n $MANIFEST_COUNT | tail -n 1`" + MANIFEST_FILE="`echo $MANIFEST_LINE | awk '{ print $2 }'`" + MANIFEST_FILE_TYPE="`echo $MANIFEST_LINE | awk '{ print $1 }'`" + + if [ -e "$SRC_DIR/$MANIFEST_FILE" ]; then + MANIFEST_FILE="$SRC_DIR/$MANIFEST_FILE" + else + MANIFEST_FILE="`find $CWD -name $MANIFEST_FILE`" + fi + + if [ ! -e "$MANIFEST_FILE" ] || [ -d "$MANIFEST_FILE" ]; then + continue + fi + + echo "Checking Manifest for $MANIFEST_FILE_TYPE $MANIFEST_FILE integrity..." + + SIZE_SRC="`wc -c $MANIFEST_FILE | awk '{ print $1 }'`" + SIZE_MANIFEST="`echo $MANIFEST_LINE | awk '{ print $3 }'`" + + # Check source code size + if [ "$SIZE_SRC" != "$SIZE_MANIFEST" ]; then + echo "SIZE Manifest: $SIZE_MANIFEST; SIZE $SRC: $SIZE_SRC" + exit $ERROR_MANIFEST + else + echo "Size match." + fi + + # Check source code integrity + for ALGO in md5 sha1 sha256 sha512 rmd160; do + if [ $ALGO = "rmd160" ]; then + ALGO_SRC="`openssl rmd160 $MANIFEST_FILE | awk '{ print $2 }'`" + else + ALGO_SRC="`"$ALGO"sum $MANIFEST_FILE | awk '{ print $1 }'`" + fi + ALGO="`echo $ALGO | tr '[:lower:]' '[:upper:]'`" + ALGO_MANIFEST=$(echo $MANIFEST_LINE | sed "s/.* $ALGO //" | awk '{ print $1 }') + if [ "$ALGO_SRC" != "$ALGO_MANIFEST" ]; then + echo "$ALGO Manifest: $ALGO_MANIFEST; $ALGO $SRC: $ALGO_SRC" + exit $ERROR_MANIFEST + else + echo "$ALGO match." + fi + done + + done + +else + exit $ERROR_MANIFEST +fi + # Untar cd "$PKG_WORK" tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR @@ -154,7 +223,8 @@ fi # Build the package cd "$PKG" -makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG +mkdir -p $REPOS/$SLACKBUILD_PATH +makepkg -l y -c n "$REPOS/$SLACKBUILD_PATH/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG # Delete source and build directories if requested if [ "$CLEANUP" == "yes" ] || [ "$1" = "--cleanup" ]; then diff --git a/dev/perl/perl-net-ip/Manifest b/dev/perl/perl-net-ip/Manifest new file mode 100644 index 00000000..fca38a7c --- /dev/null +++ b/dev/perl/perl-net-ip/Manifest @@ -0,0 +1,24 @@ +-----BEGIN PGP SIGNED MESSAGE----- +Hash: SHA256 + +DIST Net-IP-1.25.tar.gz 25749 MD5 a49c0b02a9b793ff60191cdafc0c202e RMD160 92116a215d255d1a16b819df23c98bb0324df2f6 SHA1 058a0ce86a50e882e9254371157c0c602b88f691 SHA256 4cd6e2202fd88c46d5458d19bbea80e257b6ba0ec57ea3ac8ae94ed48c9a60c7 SHA512 1f79224946f6e132ee03b3417176f595de3cc49a30e6cef173a5c9d350a71c25b7b1e68c79f2889541672e03f06f1e3bc4a56e805585ba354158230eded517e7 +MKBUILD perl-net-ip.mkbuild 2378 MD5 f665ffaf5dac18ca5c329f3566686ae6 RMD160 8e3fafe302e1e5ec2726864ab1b2c1ad7e923e3c SHA1 a718d7cddb5a68dc6e85ec9f8a0bf3714239d6aa SHA256 c3afbca3c05e85f7254a42c731c53b7c814b27bdc43f66814a9885faef12a139 SHA512 94b06a4df3eb1c3db65b95129ca0b8a80830a365f80463e50a4725683fc98c1cc08d853c0293c28e608de9f62e5e55bdd18a8f79f855fcc819b2f70ec90e13ad +SLACK-REQUIRED slack-required 87 MD5 fbd33c868ab11a9866b2309a3e203897 RMD160 0fef091bc4c3f44ff8b6eee7f7f2e748c53e586f SHA1 8c94250816358a0dd844bcdf8daa70ab855d142c SHA256 a881f5989d358808d1a4549138b29462bca7e2b28f30f40abe721598a914ba6a SHA512 a501542908287d814ec0d8057c7378f3b32644d1c845d4ca92a7e89ba6e41f12cb61ddda2ba8cb009b04b67e43eabb4efa0e13f231ec52eefed1cbd241a64d23 +SLACKBUILD perl-net-ip.SlackBuild 7107 MD5 de8d00ab6b8f9704398252b7adf06833 RMD160 d2b2d5b973451ba88e727b2bd77b17ce3591f5b4 SHA1 80520cd04fc854a50de718be0db2af739ee7608e SHA256 fb1d2f95f03372671632f6fca406156f9756d7e5aa5a11812111c280392ecf8c SHA512 d104602d1a9d567e97f942e3c0568c68e7fd6c937760e20c1c0a9d25b9e17b2ff67c89a40b3caf8b8305e2848316fda259168b50da7cb6239f982639ff215648 +-----BEGIN PGP SIGNATURE----- +Version: GnuPG v1.4.9 (GNU/Linux) + +iQIcBAEBCAAGBQJKsEnuAAoJEEHL93ESzgeiHyIP/12qyM4ScZR5xC5JpNBVTPvF +ZidaMzAkCiM2OfLO8mr2IqaReGtGZWZ/u7mlE49+9oSEg+2MnPfDQoA2S4u5WpTG ++R7Q8MwBuwHQw1zRmEZj3X+XUMV/l0aaa7V9/EhlFlQ8CfKMm1wJleGJB02nSyDd +SA9y2gy72Fue7PeXUq7NjOPNZ8A07lA0cAaBN66SVX1fQVxw7RRjNzXJmjMlbkMo +D7np9l2ToQjXyuStIHO9Ec6q/+FNs252wzfbMMXTDtTP8JMM+1RXu69+su5MKh8+ ++AhlFuZ3jX47On9ZKEfnGLj/yfA0nzR7bSoABpVTPHmT9yGnT1VnQbF43uUYU/IK +K6jK0dwOsrGAm09opWV7ugYbN5tDN8HfYFoETE79OxZZdkejXMC2DIeb+Nqc21A2 +jlacOE77ZV4fc7X5RXx2iXBAW0shigNlrUbT2uuFUfqzRhYvFpABmE7vHNSEMceb +HEDMhVofxlKcJKWvr3aUo9f7c2W1M5ma2XnvtKIbWKntKI07zYJxVanPR0iqKUpd +ATAKevD/OUSKHiTKN1Kd4IS2P70t5jMX6ivIFF8kXwrpjoaRqukL+pDOc0EcbDkq +ol3CKL6b9jqQPYspXN6V8GH/nJaA5eJjXqKfZkg1Lo7mR9oDy6DETTwK5QHtmKrP +zKoNwv9Ewr4d05tQVO4Z +=t9mr +-----END PGP SIGNATURE----- diff --git a/dev/perl/perl-net-ip/perl-net-ip.SlackBuild b/dev/perl/perl-net-ip/perl-net-ip.SlackBuild index 9b36590e..2d2ee981 100755 --- a/dev/perl/perl-net-ip/perl-net-ip.SlackBuild +++ b/dev/perl/perl-net-ip/perl-net-ip.SlackBuild @@ -15,8 +15,9 @@ # Place - Suite 330, Boston, MA 02111-1307, USA # # slackbuild for perl-net-ip, by Silvio Rhatto -# requires: perl-math-bigint +# requires: # tested: perl-net-ip-1.25 +# model: perl.mkSlackBuild $Rev: 796 $ # # Look for slackbuildrc @@ -38,6 +39,7 @@ SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} +SLACKBUILD_PATH=${SLACKBUILD_PATH:="dev/perl/perl-net-ip"} PREFIX=${PREFIX:=/usr} PKG_WORK="$TMP/$SRC_NAME" CONF_OPTIONS=${CONF_OPTIONS:=""} @@ -64,6 +66,7 @@ ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 +ERROR_MANIFEST=43; # Clean up any leftovers of previous builds rm -rf "$PKG_SRC" 2> /dev/null @@ -83,6 +86,72 @@ if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET fi +# Check Manifest file +if [ -e "$CWD/Manifest" ]; then + + # Manifest signature checking + if grep -q -- "-----BEGIN PGP SIGNED MESSAGE-----" $CWD/Manifest; then + echo "Checking Manifest signature..." + gpg --verify $CWD/Manifest + if [ "$?" != "0" ]; then + exit $ERROR_MANIFEST + fi + fi + + MANIFEST_LINES="`grep -E -v "^(MKBUILD|SLACKBUILD)" $CWD/Manifest | wc -l`" + + for ((MANIFEST_COUNT=1; MANIFEST_COUNT <= $MANIFEST_LINES; MANIFEST_COUNT++)); do + + MANIFEST_LINE="`grep -E -v "^(MKBUILD|SLACKBUILD)" $CWD/Manifest | head -n $MANIFEST_COUNT | tail -n 1`" + MANIFEST_FILE="`echo $MANIFEST_LINE | awk '{ print $2 }'`" + MANIFEST_FILE_TYPE="`echo $MANIFEST_LINE | awk '{ print $1 }'`" + + if [ -e "$SRC_DIR/$MANIFEST_FILE" ]; then + MANIFEST_FILE="$SRC_DIR/$MANIFEST_FILE" + else + MANIFEST_FILE="`find $CWD -name $MANIFEST_FILE`" + fi + + if [ ! -e "$MANIFEST_FILE" ] || [ -d "$MANIFEST_FILE" ]; then + continue + fi + + echo "Checking Manifest for $MANIFEST_FILE_TYPE $MANIFEST_FILE integrity..." + + SIZE_SRC="`wc -c $MANIFEST_FILE | awk '{ print $1 }'`" + SIZE_MANIFEST="`echo $MANIFEST_LINE | awk '{ print $3 }'`" + + # Check source code size + if [ "$SIZE_SRC" != "$SIZE_MANIFEST" ]; then + echo "SIZE Manifest: $SIZE_MANIFEST; SIZE $SRC: $SIZE_SRC" + exit $ERROR_MANIFEST + else + echo "Size match." + fi + + # Check source code integrity + for ALGO in md5 sha1 sha256 sha512 rmd160; do + if [ $ALGO = "rmd160" ]; then + ALGO_SRC="`openssl rmd160 $MANIFEST_FILE | awk '{ print $2 }'`" + else + ALGO_SRC="`"$ALGO"sum $MANIFEST_FILE | awk '{ print $1 }'`" + fi + ALGO="`echo $ALGO | tr '[:lower:]' '[:upper:]'`" + ALGO_MANIFEST=$(echo $MANIFEST_LINE | sed "s/.* $ALGO //" | awk '{ print $1 }') + if [ "$ALGO_SRC" != "$ALGO_MANIFEST" ]; then + echo "$ALGO Manifest: $ALGO_MANIFEST; $ALGO $SRC: $ALGO_SRC" + exit $ERROR_MANIFEST + else + echo "$ALGO match." + fi + done + + done + +else + exit $ERROR_MANIFEST +fi + # Untar cd "$PKG_WORK" tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR @@ -154,7 +223,8 @@ fi # Build the package cd "$PKG" -makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG +mkdir -p $REPOS/$SLACKBUILD_PATH +makepkg -l y -c n "$REPOS/$SLACKBUILD_PATH/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG # Delete source and build directories if requested if [ "$CLEANUP" == "yes" ] || [ "$1" = "--cleanup" ]; then diff --git a/dev/perl/perl-net-server/Manifest b/dev/perl/perl-net-server/Manifest new file mode 100644 index 00000000..d20abef7 --- /dev/null +++ b/dev/perl/perl-net-server/Manifest @@ -0,0 +1,23 @@ +-----BEGIN PGP SIGNED MESSAGE----- +Hash: SHA256 + +DIST Net-Server-0.97.tar.gz 92158 MD5 f884b6c5b1d2698a82bbc7ba659690a1 RMD160 46d77235f4ef5d3166efbf36c4abfc4026b95548 SHA1 3c1adddc4e66b15c2973176ef66cac36400b2237 SHA256 4ebce7e92b8fcfcc127583b1dee49d40726860c080908ea381e619c047d8708f SHA512 855eed9ca1acab0684006a5b9efd46b55579462c9c8162d04379168a8b55758ca7716403a2284f8b8534c4f710c3f30d4b48e303ccd2490a848debe0c63c1396 +MKBUILD perl-net-server.mkbuild 2343 MD5 c0ee4c43b663db7b976f40f0510c52a9 RMD160 d3227aa26aec255f3b4e711428df8b57d473e2e0 SHA1 53cc0390f76b5a0ba959a4e3d7802e7990302e1e SHA256 ad73cefc7b4d336ef844693338260bba1b69279977a099d60297851b70eec2e1 SHA512 5560cddabd1d5465bc828bea391fb4a72d082bbe5f31b2b7234ed222de203da5285c09f65334f09c09ad88eec1695349325a14a3fa2b8b5634288e6906e0ecd1 +SLACKBUILD perl-net-server.SlackBuild 7026 MD5 eb097f69517d56ea4eda08d5e224b249 RMD160 216c1062d2f94b747dd19684db1a92d6f05d8195 SHA1 b279b4c97d91c4634c27cbfec7845561478cb147 SHA256 0ed1284540d3ff888acb09370f39c971d32ce4983c5ac07449c3fefbe849d548 SHA512 30bf0828a1abae481c9928ac2ae202b2700cf1b78f50c10ee014db042d6c25f59ae7edd90b98db385d5acad9732a2f2f21392ca6513ba9f775fa4b35a8672b1f +-----BEGIN PGP SIGNATURE----- +Version: GnuPG v1.4.9 (GNU/Linux) + +iQIcBAEBCAAGBQJKr/QfAAoJEEHL93ESzgeiw6QP/RUy2bGFLqlTMNmRmZcwyxEB +JXtbwQRN50Rm++lJjFiLNlK+l3D2/FVSL/HXGGKJkz36G4zbUOLwTwUAlyV9ltkD +mhbrs1M4Fmzc1YJ+z+KUVp8TYplg0V3cOdLDq6X8Iyx87qXiDrhtJwDLB9jJqMOw +EQbcosGqYXTi/1l9Ct4W6SSlXC1GywnyYJPncUN0HZnHBpnPRV0x2Cq3tfG//163 +bK2JWmNf2I1VE4tjs/eQsZ/23clF4RBt7E1d/gd92D3X578XZekeJ3SemW3l/bZO +rkbYmJsPKPa/laoi6yYI0zu1VJhDO8LTyMa22D/lgJIuw4SoA4LLfP0CApzuuLGM +cAE/fO6XGyRf3qckNYZKpX01eXfmZXKFlPhf+0y/kqrQDPgaj1O7RHU3MTdmka0a +ZQywoOMipTkE6pp8iVsTdPkX+8lrTccM1vL7BaQv5zI6PilsULUJM9ti10suYWZ9 +1pmkzU3GpMQblaya/YfqA57D3TSJ3yA6pgrih07yCgsoE5bPdYx4ziNTqAgDgyXI +xv+z99w9xvmu/vj+tm3T6W6VkIbkTa9yuYVfjIrChyA2Ftbc/h/fPwY7ApMXIBGH +uXK1m1sl6QFckaAD0ctn5P8uFjExb/MNXTZPV/kNxnlUJ8EMt/7W9KtjGg5xxEQR +Sni8V/oXyC1OzYGPTuG6 +=5Us9 +-----END PGP SIGNATURE----- diff --git a/dev/perl/perl-net-server/perl-net-server.SlackBuild b/dev/perl/perl-net-server/perl-net-server.SlackBuild index 620de56b..fe660000 100755 --- a/dev/perl/perl-net-server/perl-net-server.SlackBuild +++ b/dev/perl/perl-net-server/perl-net-server.SlackBuild @@ -17,6 +17,7 @@ # slackbuild for perl-net-server, by Silvio Rhatto # requires: # tested: perl-net-server-0.97 +# model: perl.mkSlackBuild $Rev: 796 $ # # Look for slackbuildrc @@ -38,6 +39,7 @@ SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} +SLACKBUILD_PATH=${SLACKBUILD_PATH:="dev/perl/perl-net-server"} PREFIX=${PREFIX:=/usr} PKG_WORK="$TMP/$SRC_NAME" CONF_OPTIONS=${CONF_OPTIONS:=""} @@ -64,6 +66,7 @@ ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 +ERROR_MANIFEST=43; # Clean up any leftovers of previous builds rm -rf "$PKG_SRC" 2> /dev/null @@ -83,6 +86,72 @@ if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET fi +# Check Manifest file +if [ -e "$CWD/Manifest" ]; then + + # Manifest signature checking + if grep -q -- "-----BEGIN PGP SIGNED MESSAGE-----" $CWD/Manifest; then + echo "Checking Manifest signature..." + gpg --verify $CWD/Manifest + if [ "$?" != "0" ]; then + exit $ERROR_MANIFEST + fi + fi + + MANIFEST_LINES="`grep -E -v "^(MKBUILD|SLACKBUILD)" $CWD/Manifest | wc -l`" + + for ((MANIFEST_COUNT=1; MANIFEST_COUNT <= $MANIFEST_LINES; MANIFEST_COUNT++)); do + + MANIFEST_LINE="`grep -E -v "^(MKBUILD|SLACKBUILD)" $CWD/Manifest | head -n $MANIFEST_COUNT | tail -n 1`" + MANIFEST_FILE="`echo $MANIFEST_LINE | awk '{ print $2 }'`" + MANIFEST_FILE_TYPE="`echo $MANIFEST_LINE | awk '{ print $1 }'`" + + if [ -e "$SRC_DIR/$MANIFEST_FILE" ]; then + MANIFEST_FILE="$SRC_DIR/$MANIFEST_FILE" + else + MANIFEST_FILE="`find $CWD -name $MANIFEST_FILE`" + fi + + if [ ! -e "$MANIFEST_FILE" ] || [ -d "$MANIFEST_FILE" ]; then + continue + fi + + echo "Checking Manifest for $MANIFEST_FILE_TYPE $MANIFEST_FILE integrity..." + + SIZE_SRC="`wc -c $MANIFEST_FILE | awk '{ print $1 }'`" + SIZE_MANIFEST="`echo $MANIFEST_LINE | awk '{ print $3 }'`" + + # Check source code size + if [ "$SIZE_SRC" != "$SIZE_MANIFEST" ]; then + echo "SIZE Manifest: $SIZE_MANIFEST; SIZE $SRC: $SIZE_SRC" + exit $ERROR_MANIFEST + else + echo "Size match." + fi + + # Check source code integrity + for ALGO in md5 sha1 sha256 sha512 rmd160; do + if [ $ALGO = "rmd160" ]; then + ALGO_SRC="`openssl rmd160 $MANIFEST_FILE | awk '{ print $2 }'`" + else + ALGO_SRC="`"$ALGO"sum $MANIFEST_FILE | awk '{ print $1 }'`" + fi + ALGO="`echo $ALGO | tr '[:lower:]' '[:upper:]'`" + ALGO_MANIFEST=$(echo $MANIFEST_LINE | sed "s/.* $ALGO //" | awk '{ print $1 }') + if [ "$ALGO_SRC" != "$ALGO_MANIFEST" ]; then + echo "$ALGO Manifest: $ALGO_MANIFEST; $ALGO $SRC: $ALGO_SRC" + exit $ERROR_MANIFEST + else + echo "$ALGO match." + fi + done + + done + +else + exit $ERROR_MANIFEST +fi + # Untar cd "$PKG_WORK" tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR @@ -148,9 +217,10 @@ EODESC # Build the package cd "$PKG" -makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG +mkdir -p $REPOS/$SLACKBUILD_PATH +makepkg -l y -c n "$REPOS/$SLACKBUILD_PATH/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG # Delete source and build directories if requested -if [ "$CLEANUP" == "yes" ]; then +if [ "$CLEANUP" == "yes" ] || [ "$1" = "--cleanup" ]; then rm -rf "$PKG_WORK" "$PKG" fi diff --git a/dev/perl/perl-test-simple/Manifest b/dev/perl/perl-test-simple/Manifest new file mode 100644 index 00000000..a5e9a7fe --- /dev/null +++ b/dev/perl/perl-test-simple/Manifest @@ -0,0 +1,23 @@ +-----BEGIN PGP SIGNED MESSAGE----- +Hash: SHA256 + +DIST Test-Simple-0.94.tar.gz 106635 MD5 e4e09d8bf2cc73124152ba2c45c95b5b RMD160 34d53454a592f297300ed9cbe62e0639c5dcdf27 SHA1 ae41562c9dbb28724f62ed4414eb2f391a878b34 SHA256 6f93a4f758ac99bcaa2f917bf10493f6eb102b1ab769d57f5d5cafd6bf4aaee9 SHA512 37f7a543a5cf9103328955abd35845e58f390d140b2c1437b0a217078b5299ca1c46779d5d5863ab2869ab3105574499d06e9a252beb8e2a7869d3a8ef91e271 +MKBUILD perl-test-simple.mkbuild 2355 MD5 4fa5a5a6d8159a6b85236f676852865b RMD160 60112bb8ce7e93b6b491a8290d27650172d905f3 SHA1 d697d44232d2ebbdbca153820610982d3e05073c SHA256 46d425a164345e79ebaaa57b4a30358afc2442644c3e866fae813adaf87cab86 SHA512 15c28b04788b359d3642ef4d89fe95aa47a77f8371d2ec653d7e03367eb42b0f60805adc90acc9391c2dba79a3a900b9d71f17f221f27dbd290e6f6d335f28f9 +SLACKBUILD perl-test-simple.SlackBuild 7042 MD5 69f08eb7e9b23ab11191d34e7cacd9ff RMD160 f50604b81430de719d636b60ef40c7a33d43d9b6 SHA1 6509e974b2c1d28b7abf341ec1c6f05afdfdbc32 SHA256 3d33d686b52a1ffc184a9a03bdca51101f9e0f7604a776ee603787fef2132897 SHA512 6f6338f66b1a1492ccf1db52692e2ab139e4340ade0f3d6652703160a27aa84267a9f0f177ff9ad70b0ae9887a0393e4c85357f41056bf00dcd36b9484216df0 +-----BEGIN PGP SIGNATURE----- +Version: GnuPG v1.4.9 (GNU/Linux) + +iQIcBAEBCAAGBQJKsElEAAoJEEHL93ESzgeibmkQAIKuQwG/RpFet0Jyz2oD5els +DQg4zThgWek3qXdX/oshE1UpxmBQDs8eZvtusi4qQV7gGhHCr4wAILSFHLu9qaZP +0xAGoxfdEHHUzTysnFaTxu8+WXoABE9Av4Y8b/rgptqWjiwJWXWet/rGTFBqs3sP +wCz0jE1mkjdIG+Qs1sGSCnvPf99DQJFwapKvuurJHLFcXB+lzFX/cyOv61tcgkq1 +KpblfQ21z5qACxt3IoUbT0x4W3hm4xM/enBBYud5BTeEtd2+PxSQq66WyyXPQdIc +/+PwoADGE0B3qil1BwYtXqY5pJd1xa8oW3mdfSATbNGb+RqIycVQi6rs/DGKsTc9 +pkJ3+g02ryc71Z1l4KXHOTAoMp1y7VzhvhFnINAHgPmuPdYDaafRKrYRSLZoP4uh +XvSKuVMrDpuNrpPTfSFdW5kNggNtJlYHh9WuCwYvdDxeAGICUcNpe3iq5YBYP2N0 +ub+pYdhrcPgRjx1LCB2NxaM0qPe94b56atjpcc+2vQoc5uiaiJI1Y+xkRPG4DfaJ +AkStp92PZ7WeQlXfBBhQXJoj/UENU9Zd5RRPUe6F+M3dxCexv8p7yG/aNiHwkl4W +uD8PXHsw/2Y27QlYgxK1NvY4Rr96vkfam6RlIokBea2UJrvI4AqGhovQ8EhwRKu1 +jk7z6NwZ5rnEz0RMUPYH +=ulJT +-----END PGP SIGNATURE----- diff --git a/dev/perl/perl-test-simple/perl-test-simple.SlackBuild b/dev/perl/perl-test-simple/perl-test-simple.SlackBuild index e81ff1f6..fd129ccf 100755 --- a/dev/perl/perl-test-simple/perl-test-simple.SlackBuild +++ b/dev/perl/perl-test-simple/perl-test-simple.SlackBuild @@ -16,7 +16,8 @@ # # slackbuild for perl-test-simple, by Silvio Rhatto # requires: -# tested: perl-test-simple-0.80 +# tested: perl-test-simple-0.94 +# model: perl.mkSlackBuild $Rev: 796 $ # # Look for slackbuildrc @@ -31,13 +32,14 @@ CWD="$(pwd)" SRC_NAME="Test-Simple" PKG_NAME="perl-test-simple" ARCH=${ARCH:=i486} -SRC_VERSION=${VERSION:=0.80} +SRC_VERSION=${VERSION:=0.94} PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rha} SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} +SLACKBUILD_PATH=${SLACKBUILD_PATH:="dev/perl/perl-test-simple"} PREFIX=${PREFIX:=/usr} PKG_WORK="$TMP/$SRC_NAME" CONF_OPTIONS=${CONF_OPTIONS:=""} @@ -64,6 +66,7 @@ ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 +ERROR_MANIFEST=43; # Clean up any leftovers of previous builds rm -rf "$PKG_SRC" 2> /dev/null @@ -83,6 +86,72 @@ if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET fi +# Check Manifest file +if [ -e "$CWD/Manifest" ]; then + + # Manifest signature checking + if grep -q -- "-----BEGIN PGP SIGNED MESSAGE-----" $CWD/Manifest; then + echo "Checking Manifest signature..." + gpg --verify $CWD/Manifest + if [ "$?" != "0" ]; then + exit $ERROR_MANIFEST + fi + fi + + MANIFEST_LINES="`grep -E -v "^(MKBUILD|SLACKBUILD)" $CWD/Manifest | wc -l`" + + for ((MANIFEST_COUNT=1; MANIFEST_COUNT <= $MANIFEST_LINES; MANIFEST_COUNT++)); do + + MANIFEST_LINE="`grep -E -v "^(MKBUILD|SLACKBUILD)" $CWD/Manifest | head -n $MANIFEST_COUNT | tail -n 1`" + MANIFEST_FILE="`echo $MANIFEST_LINE | awk '{ print $2 }'`" + MANIFEST_FILE_TYPE="`echo $MANIFEST_LINE | awk '{ print $1 }'`" + + if [ -e "$SRC_DIR/$MANIFEST_FILE" ]; then + MANIFEST_FILE="$SRC_DIR/$MANIFEST_FILE" + else + MANIFEST_FILE="`find $CWD -name $MANIFEST_FILE`" + fi + + if [ ! -e "$MANIFEST_FILE" ] || [ -d "$MANIFEST_FILE" ]; then + continue + fi + + echo "Checking Manifest for $MANIFEST_FILE_TYPE $MANIFEST_FILE integrity..." + + SIZE_SRC="`wc -c $MANIFEST_FILE | awk '{ print $1 }'`" + SIZE_MANIFEST="`echo $MANIFEST_LINE | awk '{ print $3 }'`" + + # Check source code size + if [ "$SIZE_SRC" != "$SIZE_MANIFEST" ]; then + echo "SIZE Manifest: $SIZE_MANIFEST; SIZE $SRC: $SIZE_SRC" + exit $ERROR_MANIFEST + else + echo "Size match." + fi + + # Check source code integrity + for ALGO in md5 sha1 sha256 sha512 rmd160; do + if [ $ALGO = "rmd160" ]; then + ALGO_SRC="`openssl rmd160 $MANIFEST_FILE | awk '{ print $2 }'`" + else + ALGO_SRC="`"$ALGO"sum $MANIFEST_FILE | awk '{ print $1 }'`" + fi + ALGO="`echo $ALGO | tr '[:lower:]' '[:upper:]'`" + ALGO_MANIFEST=$(echo $MANIFEST_LINE | sed "s/.* $ALGO //" | awk '{ print $1 }') + if [ "$ALGO_SRC" != "$ALGO_MANIFEST" ]; then + echo "$ALGO Manifest: $ALGO_MANIFEST; $ALGO $SRC: $ALGO_SRC" + exit $ERROR_MANIFEST + else + echo "$ALGO match." + fi + done + + done + +else + exit $ERROR_MANIFEST +fi + # Untar cd "$PKG_WORK" tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR @@ -148,9 +217,10 @@ EODESC # Build the package cd "$PKG" -makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG +mkdir -p $REPOS/$SLACKBUILD_PATH +makepkg -l y -c n "$REPOS/$SLACKBUILD_PATH/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG # Delete source and build directories if requested -if [ "$CLEANUP" == "yes" ]; then +if [ "$CLEANUP" == "yes" ] || [ "$1" = "--cleanup" ]; then rm -rf "$PKG_WORK" "$PKG" fi diff --git a/dev/perl/perl-time-hires/Manifest b/dev/perl/perl-time-hires/Manifest new file mode 100644 index 00000000..6cd38a92 --- /dev/null +++ b/dev/perl/perl-time-hires/Manifest @@ -0,0 +1,23 @@ +-----BEGIN PGP SIGNED MESSAGE----- +Hash: SHA256 + +DIST Time-HiRes-1.9719.tar.gz 87541 MD5 2aa17d4b89f3649b9813ab891b83a5e3 RMD160 3e56602cc5dddac6204e12c48d215acf222ff13e SHA1 800f3c97491706824dd1b946d417807b813bb56a SHA256 c3ccd5bff5b20f152675ab16cc3352b37fa3caf01c9450a804b9f7cb93189e3e SHA512 9d511d32a607e9366d2a3b8983c6c5516bf3a9cf62becab7b63596378444ac1f3f7a11f055c087f94cdec05980a676a5604359b1e9aa57ac86100b21af7f6411 +MKBUILD perl-time-hires.mkbuild 2362 MD5 a459d332d8fd01f82db7cfde4b315200 RMD160 fd982e653a410e233437f43a0143fe6adbe2a2a1 SHA1 a9719a083324f082ea9488f23fa6cdf0a4a1b26b SHA256 464f830764be65885e0d995ba40c2f9f60b69c4b83db619aa0a1629c7a8aff04 SHA512 1acf57151763421a4b25edd784ad55eb07aaa2493b3a1f40369796cfd83da928e554d2ea74e2fad8b08a27159a605e572a0f1ac22992bc9e838d57e4ed261ba1 +SLACKBUILD perl-time-hires.SlackBuild 7047 MD5 5f44f3ed478867b7e7f15dcbe04cf3f7 RMD160 f4ee4510e8d0c123b795efb3d612d6eb0ae13008 SHA1 6497a1dd85068ea1f9e0b9702e43d208d498b5e7 SHA256 e4ab02f8ce55cd1f27abebd865aa1ac2ec8c2ba8df23c3839806d345acfebe81 SHA512 638c81eb3590b3a2352ee7df32a1cf6424f5acc4d3ac30a1dfcfbba12ea95b89ba368ac5f3f151f8943a12463812a5cd23a8eacda1c1d803138aba8e6aa0c2ae +-----BEGIN PGP SIGNATURE----- +Version: GnuPG v1.4.9 (GNU/Linux) + +iQIcBAEBCAAGBQJKr/geAAoJEEHL93ESzgeidZ0P/03FMTXB4ZjkNX7/m84PaDH8 +AG67ADVKZKFzzN6SrBS6RCSGUgmU0TYN5kON3wz3Y04JUVOmizym3mwYgU4sq7kU +CrTSKwgkcJMIkVOSiUgzgpsfzj5QR49/haWFctshsN9gTHdKYRfHDp86jULNTx/c +i5jsMWxw6RBBv8RrRAJKFD7RDie7vSFojsjAc54WA87NpHI7sdz0KJbMBDztSKNW +QRwQVG2gYSztAo51fIlHBgL9r+pqqjcQiDkYSSwFvcGtlP+6mz9C0NYS4tgOm9Z/ +nO/09UesNORLMBys7hOR/Gpmq7HZgCtkeJ8MKC5cObUYe+KG3+Dtvk9qgwXJBbz0 +aEdYVwEI2RgoVn6R4gt2eL+PvFyLv2p1dBs66Owp1HAgpCVUlxy7hnx5i5K0iRxl +AhfxkZ89DyMqdsa29xt3CoMu2YRtvJBwV9lMGbaLDgE9xK0Rz1cw5t5vza0mGZJN +P2amEl7wOBePwEwkkTb5CNpA02T6Fp0YsnlrLB0fbElOteQgi7P7dv4MD3CHY12Z +jm3pWuDheLurFb8/SXS91si+fRCZXk4DOHuublrSno/yMp8si5lMm7GZu5PxsD2V +YezWbS9rizEFGvfKE1WhlNTpc8Y5gg0vBtjj6Mn0NtbRZ8dwn6kE1SLBzcFTqPgo +zXtwNr1UK81qiWzT7Orv +=3TFx +-----END PGP SIGNATURE----- diff --git a/dev/perl/perl-time-hires/perl-time-hires.SlackBuild b/dev/perl/perl-time-hires/perl-time-hires.SlackBuild index b5e64336..010796b6 100755 --- a/dev/perl/perl-time-hires/perl-time-hires.SlackBuild +++ b/dev/perl/perl-time-hires/perl-time-hires.SlackBuild @@ -16,7 +16,8 @@ # # slackbuild for perl-time-hires, by Silvio Rhatto # requires: -# tested: perl-time-hires-1.9715 +# tested: perl-time-hires-1.9719 +# model: perl.mkSlackBuild $Rev: 796 $ # # Look for slackbuildrc @@ -31,13 +32,14 @@ CWD="$(pwd)" SRC_NAME="Time-HiRes" PKG_NAME="perl-time-hires" ARCH=${ARCH:=i486} -SRC_VERSION=${VERSION:=1.9715} +SRC_VERSION=${VERSION:=1.9719} PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rha} SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} +SLACKBUILD_PATH=${SLACKBUILD_PATH:="dev/perl/perl-time-hires"} PREFIX=${PREFIX:=/usr} PKG_WORK="$TMP/$SRC_NAME" CONF_OPTIONS=${CONF_OPTIONS:=""} @@ -64,6 +66,7 @@ ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 +ERROR_MANIFEST=43; # Clean up any leftovers of previous builds rm -rf "$PKG_SRC" 2> /dev/null @@ -83,6 +86,72 @@ if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET fi +# Check Manifest file +if [ -e "$CWD/Manifest" ]; then + + # Manifest signature checking + if grep -q -- "-----BEGIN PGP SIGNED MESSAGE-----" $CWD/Manifest; then + echo "Checking Manifest signature..." + gpg --verify $CWD/Manifest + if [ "$?" != "0" ]; then + exit $ERROR_MANIFEST + fi + fi + + MANIFEST_LINES="`grep -E -v "^(MKBUILD|SLACKBUILD)" $CWD/Manifest | wc -l`" + + for ((MANIFEST_COUNT=1; MANIFEST_COUNT <= $MANIFEST_LINES; MANIFEST_COUNT++)); do + + MANIFEST_LINE="`grep -E -v "^(MKBUILD|SLACKBUILD)" $CWD/Manifest | head -n $MANIFEST_COUNT | tail -n 1`" + MANIFEST_FILE="`echo $MANIFEST_LINE | awk '{ print $2 }'`" + MANIFEST_FILE_TYPE="`echo $MANIFEST_LINE | awk '{ print $1 }'`" + + if [ -e "$SRC_DIR/$MANIFEST_FILE" ]; then + MANIFEST_FILE="$SRC_DIR/$MANIFEST_FILE" + else + MANIFEST_FILE="`find $CWD -name $MANIFEST_FILE`" + fi + + if [ ! -e "$MANIFEST_FILE" ] || [ -d "$MANIFEST_FILE" ]; then + continue + fi + + echo "Checking Manifest for $MANIFEST_FILE_TYPE $MANIFEST_FILE integrity..." + + SIZE_SRC="`wc -c $MANIFEST_FILE | awk '{ print $1 }'`" + SIZE_MANIFEST="`echo $MANIFEST_LINE | awk '{ print $3 }'`" + + # Check source code size + if [ "$SIZE_SRC" != "$SIZE_MANIFEST" ]; then + echo "SIZE Manifest: $SIZE_MANIFEST; SIZE $SRC: $SIZE_SRC" + exit $ERROR_MANIFEST + else + echo "Size match." + fi + + # Check source code integrity + for ALGO in md5 sha1 sha256 sha512 rmd160; do + if [ $ALGO = "rmd160" ]; then + ALGO_SRC="`openssl rmd160 $MANIFEST_FILE | awk '{ print $2 }'`" + else + ALGO_SRC="`"$ALGO"sum $MANIFEST_FILE | awk '{ print $1 }'`" + fi + ALGO="`echo $ALGO | tr '[:lower:]' '[:upper:]'`" + ALGO_MANIFEST=$(echo $MANIFEST_LINE | sed "s/.* $ALGO //" | awk '{ print $1 }') + if [ "$ALGO_SRC" != "$ALGO_MANIFEST" ]; then + echo "$ALGO Manifest: $ALGO_MANIFEST; $ALGO $SRC: $ALGO_SRC" + exit $ERROR_MANIFEST + else + echo "$ALGO match." + fi + done + + done + +else + exit $ERROR_MANIFEST +fi + # Untar cd "$PKG_WORK" tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR @@ -148,9 +217,10 @@ EODESC # Build the package cd "$PKG" -makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG +mkdir -p $REPOS/$SLACKBUILD_PATH +makepkg -l y -c n "$REPOS/$SLACKBUILD_PATH/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG # Delete source and build directories if requested -if [ "$CLEANUP" == "yes" ]; then +if [ "$CLEANUP" == "yes" ] || [ "$1" = "--cleanup" ]; then rm -rf "$PKG_WORK" "$PKG" fi diff --git a/dev/perl/perl-unix-syslog/Manifest b/dev/perl/perl-unix-syslog/Manifest new file mode 100644 index 00000000..155d4703 --- /dev/null +++ b/dev/perl/perl-unix-syslog/Manifest @@ -0,0 +1,23 @@ +-----BEGIN PGP SIGNED MESSAGE----- +Hash: SHA256 + +DIST Unix-Syslog-1.1.tar.gz 13738 MD5 73d78e309fe9508ffc9a54d84d79aac9 RMD160 d5b54dcf7e283a86095b2d65c15495a1f6f5eb35 SHA1 42728e41b4d85e2e2e5f711939e329a0500f56c4 SHA256 08d268384365dec42a8e9e2dd2c39b87f8afe2d5bacc48e2e93ad8379169e4bd SHA512 cb1ea3846844b7c82e081f3bb778c698b681d1875b83201b1beef2267a288890c6fc62af8edbfbc04553a9caa1ebafa429130e784f31c9531719b11a4c47c3ba +MKBUILD perl-unix-syslog.mkbuild 2363 MD5 b6cff6637c6947365fea19df9681c37a RMD160 ea514fd501ba876342197dc096410ff0f0487f57 SHA1 cb1fff0da226dc51ab680942bbe14088a90c3cfb SHA256 813e1627cf92554d13f2cffe1e636a11298b9d2c347d3722cbb8436b11914c6c SHA512 0360494546abd950b07a94feb88808b1892870ec9f90cc45ca7ba0f99b9b0569ca3eb7e807c024fb35f21da867715df726f638928dec41260f1b408b7d164467 +SLACKBUILD perl-unix-syslog.SlackBuild 7049 MD5 3b2b6c71bf380e2e3e3b4e2c890ab9c8 RMD160 5aef91b45861d6bca10e254c545d2583c4b9ef0c SHA1 d5cbea4dd7e42a0b304b98cf88dcebc32f75df90 SHA256 075146bf89cd2d21425a2c5397ace3363637af9e0c3efb0ed08033be6e704ec7 SHA512 a60889371fb57d6dc75534b1821ba1597cf43707635443e4f46934cf48db530da0edb8e0a22247387e81c00daaba4faeaaa1987b67caad7db886a4b7ff1d5e3e +-----BEGIN PGP SIGNATURE----- +Version: GnuPG v1.4.9 (GNU/Linux) + +iQIcBAEBCAAGBQJKr/olAAoJEEHL93ESzgeiakYQALKcdmT1RDZ+KX8Rq5zB9oq9 +yi3M2WI6ENzr7lJWCpweiVUEELu9SvhxjB/yqnaQ11A+U+dok1QP+Rwoavm4F59w +Lg3oHScBEM8FPFFHXcVzi/IHXikKOWNEuc5604bUTSnfgfqaIsBjpabKyfn2RScV +JHnsj2uNePM3kiY2lPihvbHouizqXpGFjqPwP8riZWkYVpgJu/pFi+V+8Oh97nRo +w0UgqhhHIjkOcto4/lDWjC66/H0HVTTlPljvks0CuLKFNe4YRpW6Ubs2HzZOu9bo +n/ryF5EmZfeiitkKD1OX2WWQVKyD/z7LZRt07pK+OXFTReZaX7qbz9ppoJ//Mg8Y +Dke75AxktToqUtYcpX0Q2WDDo6LbsA9NfXZ70LUXxlgEmpHCLbQkyvU4ZWtcp5+T +UYW9cS9lWtTIZkAQ018KQ6TOOL7EaIyc9BgM0zz8Viv0ccsEkeQC0bcLab7YZQpB +CjmOKA5Xikg6GqO1ukgohJIhKIlF+2BXYOSmJIpKi1F77ACSfsKGinYwQkDMbkiK +liqz6mcXQWMQTO12+UliZ5Prp7b6TOetr25KrLw1ylaMW2wKbKNx9M0z1vj5kDSo +1RIuJqcXJngpJfunuV3IyZg+MhecIUWAZLwlM04U6PVJFFlPc6VFAkBXopFgVMDn +grOEclBfBaJNmlmV9xwZ +=4SpD +-----END PGP SIGNATURE----- diff --git a/dev/perl/perl-unix-syslog/perl-unix-syslog.SlackBuild b/dev/perl/perl-unix-syslog/perl-unix-syslog.SlackBuild index c35df8e5..ec63063e 100755 --- a/dev/perl/perl-unix-syslog/perl-unix-syslog.SlackBuild +++ b/dev/perl/perl-unix-syslog/perl-unix-syslog.SlackBuild @@ -16,7 +16,8 @@ # # slackbuild for perl-unix-syslog, by Silvio Rhatto # requires: -# tested: perl-unix-syslog-1.0 +# tested: perl-unix-syslog-1.1 +# model: perl.mkSlackBuild $Rev: 796 $ # # Look for slackbuildrc @@ -31,13 +32,14 @@ CWD="$(pwd)" SRC_NAME="Unix-Syslog" PKG_NAME="perl-unix-syslog" ARCH=${ARCH:=i486} -SRC_VERSION=${VERSION:=1.0} +SRC_VERSION=${VERSION:=1.1} PKG_VERSION="$(echo "$SRC_VERSION" | tr '[[:blank:]-]' '_')" BUILD=${BUILD:=1rha} SRC_DIR=${SRC_DIR:=$CWD}/$PKG_NAME TMP=${TMP:=/tmp} PKG=${PKG:=$TMP/package-$PKG_NAME} REPOS=${REPOS:=$TMP} +SLACKBUILD_PATH=${SLACKBUILD_PATH:="dev/perl/perl-unix-syslog"} PREFIX=${PREFIX:=/usr} PKG_WORK="$TMP/$SRC_NAME" CONF_OPTIONS=${CONF_OPTIONS:=""} @@ -64,6 +66,7 @@ ERROR_WGET=31; ERROR_MAKE=32; ERROR_INSTALL=33 ERROR_MD5=34; ERROR_CONF=35; ERROR_HELP=36 ERROR_TAR=37; ERROR_MKPKG=38; ERROR_GPG=39 ERROR_PATCH=40; ERROR_VCS=41; ERROR_MKDIR=42 +ERROR_MANIFEST=43; # Clean up any leftovers of previous builds rm -rf "$PKG_SRC" 2> /dev/null @@ -83,6 +86,72 @@ if [ ! -s "$SRC_DIR/$SRC" ] || ! gunzip -t "$SRC_DIR/$SRC" 2> /dev/null; then wget "$URL" -O "$SRC_DIR/$SRC" || exit $ERROR_WGET fi +# Check Manifest file +if [ -e "$CWD/Manifest" ]; then + + # Manifest signature checking + if grep -q -- "-----BEGIN PGP SIGNED MESSAGE-----" $CWD/Manifest; then + echo "Checking Manifest signature..." + gpg --verify $CWD/Manifest + if [ "$?" != "0" ]; then + exit $ERROR_MANIFEST + fi + fi + + MANIFEST_LINES="`grep -E -v "^(MKBUILD|SLACKBUILD)" $CWD/Manifest | wc -l`" + + for ((MANIFEST_COUNT=1; MANIFEST_COUNT <= $MANIFEST_LINES; MANIFEST_COUNT++)); do + + MANIFEST_LINE="`grep -E -v "^(MKBUILD|SLACKBUILD)" $CWD/Manifest | head -n $MANIFEST_COUNT | tail -n 1`" + MANIFEST_FILE="`echo $MANIFEST_LINE | awk '{ print $2 }'`" + MANIFEST_FILE_TYPE="`echo $MANIFEST_LINE | awk '{ print $1 }'`" + + if [ -e "$SRC_DIR/$MANIFEST_FILE" ]; then + MANIFEST_FILE="$SRC_DIR/$MANIFEST_FILE" + else + MANIFEST_FILE="`find $CWD -name $MANIFEST_FILE`" + fi + + if [ ! -e "$MANIFEST_FILE" ] || [ -d "$MANIFEST_FILE" ]; then + continue + fi + + echo "Checking Manifest for $MANIFEST_FILE_TYPE $MANIFEST_FILE integrity..." + + SIZE_SRC="`wc -c $MANIFEST_FILE | awk '{ print $1 }'`" + SIZE_MANIFEST="`echo $MANIFEST_LINE | awk '{ print $3 }'`" + + # Check source code size + if [ "$SIZE_SRC" != "$SIZE_MANIFEST" ]; then + echo "SIZE Manifest: $SIZE_MANIFEST; SIZE $SRC: $SIZE_SRC" + exit $ERROR_MANIFEST + else + echo "Size match." + fi + + # Check source code integrity + for ALGO in md5 sha1 sha256 sha512 rmd160; do + if [ $ALGO = "rmd160" ]; then + ALGO_SRC="`openssl rmd160 $MANIFEST_FILE | awk '{ print $2 }'`" + else + ALGO_SRC="`"$ALGO"sum $MANIFEST_FILE | awk '{ print $1 }'`" + fi + ALGO="`echo $ALGO | tr '[:lower:]' '[:upper:]'`" + ALGO_MANIFEST=$(echo $MANIFEST_LINE | sed "s/.* $ALGO //" | awk '{ print $1 }') + if [ "$ALGO_SRC" != "$ALGO_MANIFEST" ]; then + echo "$ALGO Manifest: $ALGO_MANIFEST; $ALGO $SRC: $ALGO_SRC" + exit $ERROR_MANIFEST + else + echo "$ALGO match." + fi + done + + done + +else + exit $ERROR_MANIFEST +fi + # Untar cd "$PKG_WORK" tar --no-same-owner --no-same-permissions -xvf "$SRC_DIR/$SRC" || exit $ERROR_TAR @@ -148,9 +217,10 @@ EODESC # Build the package cd "$PKG" -makepkg -l y -c n "$REPOS/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG +mkdir -p $REPOS/$SLACKBUILD_PATH +makepkg -l y -c n "$REPOS/$SLACKBUILD_PATH/$PKG_NAME-$PKG_VERSION-$ARCH-$BUILD.tgz" || exit $ERROR_MKPKG # Delete source and build directories if requested -if [ "$CLEANUP" == "yes" ]; then +if [ "$CLEANUP" == "yes" ] || [ "$1" = "--cleanup" ]; then rm -rf "$PKG_WORK" "$PKG" fi |