Don't run changelog-d in the build

This way we lose the preview of release notes on master, as well
as on https://nixos.org/manual/nix/unstable/release-notes/rl-next
but we can come back to this.
This commit is contained in:
Robert Hensing 2023-11-24 15:48:41 +01:00
parent 857f9168f7
commit d63f72197c
3 changed files with 14 additions and 5 deletions

View file

@ -146,7 +146,13 @@ $(d)/language.json: $(bindir)/nix
# Generate "Upcoming release" notes (or clear it and remove from menu)
$(d)/src/release-notes/rl-next.md: $(d)/rl-next $(d)/rl-next/*
$(trace-gen) changelog-d doc/manual/rl-next > $@
@if type -p changelog-d > /dev/null; then \
echo " GEN " $@; \
changelog-d doc/manual/rl-next > $@; \
else \
echo " NULL " $@; \
true > $@; \
fi
$(d)/src/SUMMARY-rl-next.md: $(d)/src/release-notes/rl-next.md
$(trace-gen) true

View file

@ -257,4 +257,4 @@ See also the [format documentation](https://github.com/haskell/cabal/blob/master
### Build process
Releases have a precomputed `rl-MAJOR.MINOR.md`, and no `rl-next.md`.
Non-releases build the release notes on the fly.
Set `buildUnreleasedNotes = true;` in `flake.nix` to build the release notes on the fly.

View file

@ -14,6 +14,9 @@
officialRelease = false;
# Set to true to build the release notes for the next release.
buildUnreleasedNotes = false;
version = lib.fileContents ./.version + versionSuffix;
versionSuffix =
if officialRelease
@ -196,7 +199,7 @@
]
++ lib.optionals stdenv.hostPlatform.isLinux [(buildPackages.util-linuxMinimal or buildPackages.utillinuxMinimal)]
# Official releases don't have rl-next, so we don't need to compile a changelog
++ lib.optional (!officialRelease) changelog-d
++ lib.optional (!officialRelease && buildUnreleasedNotes) changelog-d
;
buildDeps =
@ -734,8 +737,8 @@
++ lib.optional
(stdenv.cc.isClang && stdenv.hostPlatform == stdenv.buildPlatform)
pkgs.buildPackages.clang-tools
# We want changelog-d in the shell even if it's an official release
++ lib.optional officialRelease changelog-d
# We want changelog-d in the shell even if the current build doesn't need it
++ lib.optional (officialRelease || ! buildUnreleasedNotes) changelog-d
;
buildInputs = buildDeps ++ propagatedDeps