From 5e1664b8008675177a551aff1de371f54d4e20e4 Mon Sep 17 00:00:00 2001 From: Lukasz Kasprzak Date: Tue, 28 Jul 2026 18:01:33 +0200 Subject: bible: embed only the Vulgate by default; other corpora opt-in Split the bundled corpora so the default binary carries only the public-domain Latin Vulgate. wuj/drb/grb move to corpora_optional/ and are compiled in only with `-tags fullbible`, or dropped into the user corpora dir at runtime. This keeps the distributed AGPL binary free of third-party scripture text -- bible corpora are not covered by lectio's licence. - bible: read corpus files/metadata from core + optional embed FS (embReadCorpus/embCorpusFiles); optionalFS is set only under the tag. - config: default `versions` now reflects corpora actually available in the build (Vulgate first), so a vul-only binary offers no absent versions. - Makefile: `make build` = vul only; `make build-full` embeds the rest; `make test` runs with -tags fullbible; check-corpora validates both dirs. - tests: corpusmeta asserts on vul (the always-embedded corpus); the versions-default expectation follows availableVersions(). --- internal/bible/corpusmeta.go | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'internal/bible/corpusmeta.go') diff --git a/internal/bible/corpusmeta.go b/internal/bible/corpusmeta.go index 60d90a9..e82f670 100644 --- a/internal/bible/corpusmeta.go +++ b/internal/bible/corpusmeta.go @@ -44,8 +44,8 @@ func parseCorpusMeta(code string, data []byte) CorpusMeta { } func embeddedCorpusMeta(code string) (CorpusMeta, bool) { - data, err := corporaFS.ReadFile("corpora/" + code + ".ini") - if err != nil { + data, ok := embReadCorpus(code + ".ini") + if !ok { return CorpusMeta{}, false } return parseCorpusMeta(code, data), true -- cgit v1.3