Announcing hashgood: a tool for verifying file checksums

Last year on this blog I was having a whinge about the inconvenience of checking that a file you’ve downloaded actually has the SHASUM you hope it does. Using your eyes to confirm that a bunch of hexadecimal in your terminal is the same as the bunch of hexadecimal in your browser is pretty slow and unreliable.

Certainly you can ask the computer to compare these strings, but if you’re like me this process takes maybe 15 seconds of creative thinking which I’d rather spend using the file that I just downloaded.

Unsatisfied with all the existing solutions, I went on to create a new CLI tool called hashgood, which I have now published on GitHub.

Written in Rust, it will not only calculate the most important hashes of a file (MD5, SHA-1, SHA-256), but compare it with a hash provided on the command line, or in a SHASUMS check file, or on your clipboard, or on standard input.

I’ve used it on Windows, Mac and Linux and I think it’s pretty good. Yes this is a pretty niche tool. I anticipate very few people will want a whole new program to work around this minor inconvenience. I have definitely spent more time on this project than it will ever save me, but it was a fun little Rust CLI project that exposed me to some new crates so that made it worth the effort.

As hinted in the README there are some more things I’d like to do with it but I’m in no hurry. It works just fine right now and I will use it on my own computers for the foreseeable future.