website: Add locales in manifest.

* website/manifest.scm: Add locale definition for all our translations.
This commit is contained in:
Julien Lepiller 2021-04-06 22:16:43 +02:00
parent c46cc7d80a
commit d6b24b1970
No known key found for this signature in database
GPG Key ID: 53D457B2D636EE82
1 changed files with 49 additions and 13 deletions

View File

@ -1,6 +1,8 @@
(use-modules (guix packages)
((gnu packages package-management) #:select (guix))
((gnu packages guile-xyz) #:select (haunt))
(gnu system locale)
(ice-9 rdelim)
(srfi srfi-1))
(define the-good-guile
@ -14,17 +16,51 @@
`(("guile" ,the-good-guile)
,@(alist-delete "guile" (package-inputs haunt))))))
(packages->manifest
(append
;; Guile needs to be compatible
(list
guix
the-good-guile
haunt-the-ghost)
(define locales
(locale-directory
(call-with-input-file "po/LINGUAS"
(lambda (port)
(let loop ((line (read-line port))
(locales '()))
(if (eof-object? line)
locales
(if (equal? (string-ref line 0) #\#)
(loop (read-line port) locales)
(loop (read-line port)
(cons
(locale-definition
(name (string-append line ".utf8"))
(source line))
locales)))))))
#:libcs
(list glibc)))
;; Other packages
(map specification->package
(list
"glibc-locales"
"git"
"guile-syntax-highlight"))))
(manifest
(cons
(manifest-entry
(name "locales")
(version "0")
(item (computed-file "locales"
(with-imported-modules '((guix build utils))
#~(let ((out (string-append #$output "/lib/locale")))
(use-modules (guix build utils))
(mkdir-p out)
(copy-recursively #$locales out)))))
(search-paths
(list (search-path-specification
(variable "GUIX_LOCPATH")
(files '("lib/locale"))))))
(manifest-entries
(packages->manifest
(append
;; Guile needs to be compatible
(list
guix
the-good-guile
haunt-the-ghost)
;; Other packages
(map specification->package
(list
"git"
"guile-syntax-highlight")))))))