From the nix 2.2 changelog:
> nix hash-file and nix hash-path now print hashes in SRI
> format by default. They also use SHA-256 by default
> instead of SHA-512 because that's what we use most of the
> time in Nixpkgs.
The change in d3d33d5b25 changed how the
locally saved channel information was saved on the local machine.
* d3d33d5b25 (diff-682bf482f6dd273f1c3c49afd99b4660R192)
The changeset did *not* change the guard clause, which now made it act
like this:
1. Try readlink on the file
2. (bail as it's undefined)
The new behaviour is as more or less expected:
1. Reads the file if available
2. Split the URL components
3. Keep the last bit
This can give us an empty string, which will compare to `-1` thus
fulfilling the need.
The manpage says:
> The sums are computed as described in FIPS-180-2. When checking, the input should be a former
> output of this program. The default mode is to print a line with checksum, **a space, a character
> indicating input mode ('*' for binary, ' ' for text or where binary is insignificant),** and name
> for each FILE.
By adding the filename to the generated sha256 file, a user would be
able to download an iso, the sha256 file, then use `sha256 -c
[file].iso.sha256` to verify the file.
* * *
This fixes nixos-homepage#224
Otherwise we might clobber the redirects if the disk is full, and in
any case there is a time window in which .htaccess is in an
inconsistent state.
Fixes https://github.com/NixOS/nixpkgs/issues/18544.