Subject: bug#51456: website: Language selection dropdown not translated

From: "pelzflorian (Florian Pelz)" <[email-masked]>
Date: Thu, 28 Oct 2021 12:09:56 +0200

On Thu, Oct 28, 2021 at 10:13:49AM +0200, pelzflorian (Florian Pelz) wrote:
> Is the proper solution to symlink all lingua-mo-files, i.e. reinstate
> from before commit 4d5bf8522e2 a for-each like
> 
> (for-each
>  (lambda (lingua mo-directory)
>          (symlink (string-append mo-directory "/" lingua)
>                   lingua))
>  (list #$@%linguas)
>  '#$(map lingua-mo-files %linguas))
> 
> (I have not tried.)

Seems to work.  I have guix build -f .guix.scm but only one lingua got
built so far, it looks right.  Patch attached.  Shall I push or …

> 
> Or should website/apps/base/templates/components.scm look up the
> language dropdown’s language names in a different way such as from the
> PO file, which is more complicated?

Regards,
Florian
>From 947a7b98beda5b49890a61f0751d5765157f5cde Mon Sep 17 00:00:00 2001
From: Florian Pelz <[email-masked]>
Date: Thu, 28 Oct 2021 10:21:52 +0200
Subject: [PATCH] website: Make available all .mo files for each language.

Because the language selection dropdown needs all.

Fixes <https://issues.guix.gnu.org/51456>.

* website/.guix.scm (lingua-web-site): When building one language,
still use 'lingua-mo-files' for all languages.
---
 website/.guix.scm | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/website/.guix.scm b/website/.guix.scm
index 3beb0e8..c5cb367 100644
--- a/website/.guix.scm
+++ b/website/.guix.scm
@@ -215,8 +215,12 @@
 
             ;; Build the website for LINGUA.  (apps i18n) calls
             ;; 'bindtextdomain' on $PWD so provide .mo files right here.
-            (symlink (string-append #$(lingua-mo-files lingua) "/" lingua)
-                     lingua)
+            (for-each
+             (lambda (lingua mo-directory)
+               (symlink (string-append mo-directory "/" lingua)
+                        lingua))
+             (list #$@%linguas)
+             '#$(map lingua-mo-files %linguas))
 
             (setenv "LC_ALL" (string-append lingua ".utf8"))
             (format #t "Running 'haunt build' for lingua ~a...~%" lingua)
-- 
2.33.1