They are thin wrappers over `system`, but two main points:
* They log the (unescaped) command.
* `run` will auto-die.
This removes the need to pepper `== 0 or die` in the script.
Resolving the values and being fancy is harder than the actual benefits
would give out.
Return all the info we have, and let the pager'd person deal with the
data.
A more durable solution would likely be to make a generic function that
wraps backticks and fails when $? is non-zero, rather than doing it
in-situ. There are other backtick uses that may be problematic
Prometheus now has a configured alert if an update job fails for a
while. Going back in time is not so unusual:
1. a hydra evaluation completes with some failed jobs
2. the channel advances to this commit
3. an admin restarts a failed job
4. the channel would go backward because the evaluation is complete
Since it is not a problem, make it a non-problematic exit code.
PRs to NixOS are a bit confused about if they should PR to release-* or nixos-* or nixpkgs-*. I think namespacing the refs will go a long way in making it more obvious.
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.
```
error: [json.exception.parse_error.101] parse error at 195: syntax error - invalid string: ill-formed UTF-8 byte; last read: '"bokml'; expected string literal
```
This is most probably caused by the upgrade in nixos-org-configurations/1b74e019b166d37a1510a99aeea86a0fa656854a
that, in turn, caused nlohmann_json to go from 2.1.0 -> 3.2.0
I haven't found concrete evidence in the changelog as to a change
changing the exception type. Though, the timing for failures matches
with this update.
Furthermore, once this fix is applied, launching the update locally
works fine.
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