diff options
| -rw-r--r-- | lib/libalpm/be_sync.c | 3 | ||||
| -rw-r--r-- | scripts/repo-add.sh.in | 14 | 
2 files changed, 12 insertions, 5 deletions
| diff --git a/lib/libalpm/be_sync.c b/lib/libalpm/be_sync.c index 4966ce6f..9ca52de3 100644 --- a/lib/libalpm/be_sync.c +++ b/lib/libalpm/be_sync.c @@ -418,6 +418,9 @@ static int sync_db_read(pmdb_t *db, struct archive *archive,  				pkg->isize = atol(line);  			} else if(strcmp(line, "%MD5SUM%") == 0) {  				READ_AND_STORE(pkg->md5sum); +			} else if(strcmp(line, "%SHA256SUM%") == 0) { +				/* we don't do anything with this value right now */ +				READ_NEXT(line);  			} else if(strcmp(line, "%REPLACES%") == 0) {  				READ_AND_STORE_ALL(pkg->replaces);  			} else if(strcmp(line, "%DEPENDS%") == 0) { diff --git a/scripts/repo-add.sh.in b/scripts/repo-add.sh.in index 76005757..59e98cfe 100644 --- a/scripts/repo-add.sh.in +++ b/scripts/repo-add.sh.in @@ -263,9 +263,6 @@ db_write_entry()  	IFS=$OLDIFS -	# get md5sum and compressed size of package -	md5sum="$(openssl dgst -md5 "$pkgfile")" -	md5sum="${md5sum##* }"  	csize=$(@SIZECMD@ "$pkgfile")  	# ensure $pkgname and $pkgver variables were found @@ -287,6 +284,13 @@ db_write_entry()  		fi  	fi +	# compute checksums +	msg2 "$(gettext "Computing checksums...")" +	md5sum="$(openssl dgst -md5 "$pkgfile")" +	md5sum="${md5sum##* }" +	sha256sum="$(openssl dgst -sha256 "$pkgfile")" +	sha256sum="${sha256sum##* }" +  	# remove an existing entry if it exists, ignore failures  	db_remove_entry "$pkgname" @@ -308,9 +312,9 @@ db_write_entry()  	[[ -n $csize ]] && echo -e "%CSIZE%\n$csize\n" >>desc  	[[ -n $size ]] && echo -e "%ISIZE%\n$size\n" >>desc -	# compute checksums -	msg2 "$(gettext "Computing md5 checksums...")" +	# add checksums  	echo -e "%MD5SUM%\n$md5sum\n" >>desc +	echo -e "%SHA256SUM%\n$sha256sum\n" >>desc  	# add base64'd PGP signature  	if [[ -f $startdir/$pkgfile.sig ]]; then | 
