diff options
Diffstat (limited to 'Library')
| -rwxr-xr-x | Library/Contributions/cmds/brew-md5-to-sha1 | 24 | 
1 files changed, 24 insertions, 0 deletions
| diff --git a/Library/Contributions/cmds/brew-md5-to-sha1 b/Library/Contributions/cmds/brew-md5-to-sha1 new file mode 100755 index 000000000..0c1ca444d --- /dev/null +++ b/Library/Contributions/cmds/brew-md5-to-sha1 @@ -0,0 +1,24 @@ +#!/bin/sh +# Change every formula's MD5 to a SHA1. + +HOMEBREW_PREFIX=$(brew --config | grep HOMEBREW_PREFIX | sed -e 's/HOMEBREW_PREFIX: //') +cd $HOMEBREW_PREFIX/Library/Formula +FORMULAE=$(grep "^  md5 " -rl . | sed -e 's/\.\///' -e 's/\.rb$//') + +for FORMULA in $FORMULAE +do +	echo "Fetching and SHA1ing $FORMULA" +	if brew fetch $FORMULA &>/dev/null +	then +		SHA1=$(brew fetch $FORMULA | grep SHA1 | sed -e 's/SHA1: //') +		sed -i.old -e "s/^  md5 *[\"'][a-fA-F0-9]\{32\}[\"']/  sha1 '$SHA1'/" $FORMULA.rb +		rm $FORMULA.rb.old +		if !brew fetch $FORMULA &>/dev/null +		then +			echo "Error: SHA1ing $FORMULA failed, reverting" +			git checkout $FORMULA.rb +		fi +	else +		echo "Error: fetching $FORMULA failed, skipping" +	fi +done | 
