Add missing pdf preview dependency. `ctpv` uses `pdftoppm` [1] to
preview pdf files. Required dependency was not included on the last PR
targeting `ctpv`, although it added the tools for other ftypes [2].
Fix chafa image privews by passing the missing flag via a patch. This
comes from a year long bug fix PR open at upstream, for details refer
there [3].
[1]: 4efa0f976e/README.md (L58)
[2]: github:NixOS/nixpkgs#223487
[3]: github:NikitaIvanovV/ctpv#90
Motivation for this hook is simple: there's no single documented
way to do trivial things with ctest:
1. Pass additional flags to ctest invocation.
2. Selectively disable tests in a mechanism similar to python's
`disabledTests` or rust's composable skips in `checkFlags`.
3. Disable parallel checking.
Current state of things has lead to several different solutions:
1. Completely overriding `checkPhase` [1] and invoking ctest manually
with the necessary flags. This is most often coupled with `-E` for
disabling test or setting parallel level.
2. Wrangling with weird double string/regex escaping and trying to stuff
additional parameters and/or exclusion regex via `CMAKE_CTEST_ARGUMENTS`.
This approach is especially painful when test names have spaces. This is
the reason I originally decided to implement this hook after wrangling with
failing darwin tests here [2].
3. Stuffing additional arguments into `checkFlagsArray` with the
`ARGS` makefile parameter [3].
I don't see any reason to keep the status-quo. Doing something along these
lines has been suggested [4] for both `ctest` and `meson`. Meson setup-hook
has switched from `ninja` to `meson` in [5] with little friction. Doing
the same for cmake in a single sweep would prove problematic due to the
aforementioned zoo of workarounds and hacks for `ctest`. Doing it via
a separate hook would allow us to refactor things piecemeal and without
going through staging. The benefit of the hook is immediately clear and it
would allow to drive the refactor tractor at a comfortable pace.
[1]: pd/pdal/package.nix:117, cc/ccache/package.nix:108, gl/glog/package.nix:79
[2]: https://www.github.com/NixOS/nixpkgs/pull/375955
[3]: op/open62541/package.nix:114
[4]: https://www.github.com/NixOS/nixpkgs/issues/113829
[5]: https://www.github.com/NixOS/nixpkgs/pull/213845
This reverts commit 65a333600d.
This wasn't tested for correctness with something like fodwatch [0],
and should not have been (self-)merged so quickly, especially without
further review.
It also resulted in the breakage of at least one package [1] (and that's
the one we know of and was caught).
A few packages that were updated in between this commit and this revert
were not reverted back to using `rev`, but other than that, this is a
1:1 revert.
[0]: https://codeberg.org/raphaelr/fodwatch
[1]: https://github.com/NixOS/nixpkgs/pull/396904 / 758551e458
As I said before, I want to keep a narrow focus on Nixpkgs. Now that I am back
at undergrad, this focus should be even narrower: I will keep my eyes on Emacs,
and nothing else.
After final improvements to the official formatter implementation,
this commit now performs the first treewide reformat of Nix files using it.
This is part of the implementation of RFC 166.
Only "inactive" files are reformatted, meaning only files that
aren't being touched by any PR with activity in the past 2 months.
This is to avoid conflicts for PRs that might soon be merged.
Later we can do a full treewide reformat to get the rest,
which should not cause as many conflicts.
A CI check has already been running for some time to ensure that new and
already-formatted files are formatted, so the files being reformatted here
should also stay formatted.
This commit was automatically created and can be verified using
nix-build a08b3a4d19.tar.gz \
--argstr baseRev b32a094368
result/bin/apply-formatting $NIXPKGS_PATH
After final improvements to the official formatter implementation,
this commit now performs the first treewide reformat of Nix files using it.
This is part of the implementation of RFC 166.
Only "inactive" files are reformatted, meaning only files that
aren't being touched by any PR with activity in the past 2 months.
This is to avoid conflicts for PRs that might soon be merged.
Later we can do a full treewide reformat to get the rest,
which should not cause as many conflicts.
A CI check has already been running for some time to ensure that new and
already-formatted files are formatted, so the files being reformatted here
should also stay formatted.
This commit was automatically created and can be verified using
nix-build a08b3a4d19.tar.gz \
--argstr baseRev 78e9caf153
result/bin/apply-formatting $NIXPKGS_PATH
GNU sed's man page has this to say about "-i":
Because -i takes an optional argument, it should not be followed by
other short options:
[..]
sed -iE '...' FILE
This is equivalent to --in-place=E, creating FILEE as backup of FILE
This means all "-iX" did not have the intended effect X, so we can
instead remove them.
We are migrating packages that meet below requirements:
1. using `callPackage`
2. called path is a directory
3. overriding set is empty (`{ }`)
4. not containing path expressions other than relative path (to
makenixpkgs-vet happy)
5. not referenced by nix files outside of the directory, other
than`pkgs/top-level/all-packages.nix`
6. not referencing nix files outside of the directory
7. not referencing `default.nix` (since it's changed to `package.nix`)
8. `outPath` doesn't change after migration
The tool is here: https://github.com/Aleksanaa/by-name-migrate.