Subject: [bug#40944] doc: Fix building the cookbook

From: Björn Höfling <[email-masked]>
Date: Tue, 28 Apr 2020 19:35:23 +0200

As reported in

https://debbugs.gnu.org/cgi/bugreport.cgi?bug=40803

there are problems with the cookbook:

* The single-page html file was missing.
* Languages other than English and German don't make sense: There is no
translation available.

The attached patch fixes these problems.

Björn
From 0bea22f4b21b013633d6d921da824d1240c7cc4d Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Bj=C3=B6rn=20H=C3=B6fling?=
 <[email-masked]>
Date: Tue, 28 Apr 2020 13:51:31 +0200
Subject: [PATCH] doc: Fix building the cookbook.

Fixes <https://debbugs.gnu.org/cgi/bugreport.cgi?bug=40803>.
Reported by "operator.name" <[email-masked]>.

* doc/build.scm (%languages): Add smaller list for the cookbook.
(syntax-highlighted-html): Adapt regexp for mono-node files to include
the cookbook.
---
 doc/build.scm | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

diff --git a/doc/build.scm b/doc/build.scm
index 3907b49caf..31c4c3d122 100644
--- a/doc/build.scm
+++ b/doc/build.scm
@@ -58,7 +58,10 @@
       "guix"))
 
 (define %languages
-  '("de" "en" "es" "fr" "ru" "zh_CN"))
+  ;; The cookbook is currently only translated into German.
+  (if (string=? %manual "guix-cookbook")
+      '("de" "en")
+      '("de" "en" "es" "fr" "ru" "zh_CN")))
 
 (define (texinfo-manual-images source)
   "Return a directory containing all the images used by the user manual, taken
@@ -451,7 +454,9 @@ its <pre class=\"lisp\"> blocks (as produced by 'makeinfo --html')."
                             (lambda (mono)
                               (let ((anchors (collect-anchors mono)))
                                 (process-html mono anchors)))
-                            (find-files #$input "^guix(\\.[a-zA-Z_-]+)?\\.html$"))
+                            (find-files
+                             #$input
+                             "^guix(-cookbook|)(\\.[a-zA-Z_-]+)?\\.html$"))
 
             ;; Next process the multi-node HTML files in two phases: (1)
             ;; collect the list of anchors, and (2) perform
-- 
2.26.0