Need to use raw output to avoid having a quoted string, otherwise we end
up with a malformed flakeref:
error: in URL 'github:NixOS/nixpkgs/"2d068ae5c6516b2d04562de50a58c682540de9bf"',
'"2d068ae5c6516b2d04562de50a58c682540de9bf"' is not a commit hash or branch/tag name
This removes the need for end-users to manually set
`nixvim.inputs.devshell.follows = ""` (etc)
We offload evaluation of some of our flake modules into a `dev`
partition submodule.
- When its not needed, this submodule is not evaluated.
- When it is needed, it fetches extra inputs from `flake/dev/flake.nix`
as part of evaluating the submodule.
See https://flake.parts/options/flake-parts-partitions.html
Most of the time we want to re-apply "manual"/"additional" commits from
the already open PR, however it is possible we may wish to run the CI
without doing so.
Add an on-by-default tickbox to toggle the `re_apply` step.
Instead of comparing the nixpkgs input revision, we can re-apply any
manually committed changes and then check if any files are different
before pushing.
Cancelling via `exit 1` will mark the workflow as "failed". Instead we
can write a `cancelled` step output and have all the following steps
be conditional.
This should help mitigate spammy force-pushes that don't actually update
the nixpkgs input.
This only affects _scheduled_ runs. Manually triggered updates will
always force-push to the update branch.
Split scheduling other branches into a dedicated workflow. The main
update workflow is no longer responsible for triggering the workflow on
_other_ branches.
Rather than interpolating input (flakeref & baseHref) into the build
expression, take advantage of `--argstr`.
See "Common evaluation options" in `nix build --help` for more detail.
We don't need to specify `/nixvim/` as part of our install path as that
is where gh-pages uploads to by default.
Rather, we only need to specify the full `/nixvim/foo/` in the base-href
and the install path should just be `/foo`.
We can no longer simply check the files list matches `[ flake.lock ]`,
since we now also touch `generated/` files.
Mergify conditions cannot be checked against "all" list items; checks
are always applied against "any" item. Therefore we need some
double-negatives to check that "any item does not match a regex that
does not match (flake.lock|generated/.*)".
Yes, this is horrible.