Hi, team!
Thank you for the daily automated builds (Tags · manjaro-plasma/download · GitHub)!
As I see an each daily build contains hash files so users can check their ISOs after download to make sure that images was corrupted or wasn’t (Release 202108040245 · manjaro-plasma/download · GitHub): currently 3 files for 3 digest types.
There are 14 links overall. A bit overloaded links section huh?
I suggest the improvement on each side: during automated build and post-download user check stages: we could have even more hashes but all are within the only one hash file.
The idea goes like this:
Automated build phase
Generate hash values (part of save to file is pseudo-code/quasi working/not tested; using bash
command language):
filepath="/..../...../";
hashfile_name="images.hashes";
hashfile_name_with_path="${filepath}/${hashfile_name}";
touch "${hashfile_name_with_path}";
for imagefile_name in "manjaro-kde-21.08-development-unstable-210804-linux510.iso" "manjaro-kde-21.08-development-unstable-minimal-210804-linux510.iso"
do
imagefile_name_with_path="${filepath}${imagefile_name}";
b2sum --tag "${imagefile_name_with_path}" >> "${hashfile_name_with_path}";
for algorithm in 1 224 256 384 512 512224 512256
do
shasum --tag -a "${algorithm}" "${imagefile_name_with_path}" >> "${hashfile_name_with_path}";
done
done
After completion we will have the images.hashes
file with many types of hashes and all will be of a tagged types. All hashes in a single file.
Phase of post-download user check
b2sum -c images.hashes
shasum -c images.hashes
and cross-unknown types of hashes will be skipped and warned to user in a console.
You can remove the BLAKE2 (512-bit) checksum calculation and will have many other hashes of single type, which will simplify check procedure on client-side and to make it has more pretty output, but with lack of additional faster and less RAM consumption digest.
Thanks!