installer crash: iso-codes is too old

  • Open
  • quality assurance status badge
Details
2 participants
  • Ludovic Courtès
  • Ricardo Wurmus
Owner
unassigned
Submitted by
Ricardo Wurmus
Severity
important

Debbugs page

R
R
Ricardo Wurmus wrote on 6 Sep 11:28 -0700
(address . bug-guix@gnu.org)
875xr8myav.fsf@elephly.net
The installer crashes because the "tok" language is not included in our
old version of the iso-codes package.

Upgrading it to 4.16.0 should fix it, but it is unclear whether this
would result in mass rebuilds. There is iso-codes/official and a
derived iso-codes. GTK+ uses iso-codes/official with a note to switch
to iso-codes on "core-updates". So this change would likely cause mass
rebuilds via the gtk+ package.

--
Ricardo
R
R
Ricardo Wurmus wrote on 6 Sep 15:01 -0700
[PATCH] gnu: Add iso-codes/installer.
(address . 73081@debbugs.gnu.org)(name . Ricardo Wurmus)(address . rekado@elephly.net)
71c632b0e965df14ca7bf7994d43b2f97cad3d15.1725660077.git.rekado@elephly.net
* gnu/packages/iso-codes.scm (iso-codes/installer): New variable.
* gnu/installer.scm (compute-locale-step): Use it.

Change-Id: Ibc37b3972f6eda14886543b30a72d3b890455d07

Change-Id: Ia06b776e861742fb108a41317ed6df13afec9b6f
---
gnu/installer.scm | 6 +++---
gnu/packages/iso-codes.scm | 26 ++++++++++++++++++++++++++
2 files changed, 29 insertions(+), 3 deletions(-)

Toggle diff (93 lines)
diff --git a/gnu/installer.scm b/gnu/installer.scm
index 3792fc7e35..41ac07ab9e 100644
--- a/gnu/installer.scm
+++ b/gnu/installer.scm
@@ -146,7 +146,7 @@ (define* (compute-locale-step #:key
(let* ((supported-locales #~(supported-locales->locales
#+(glibc-supported-locales)))
- (iso-codes #~(string-append #$iso-codes "/share/iso-codes/json/"))
+ (iso-codes #~(string-append #$iso-codes/installer "/share/iso-codes/json/"))
(iso639-3 #~(string-append #$iso-codes "iso_639-3.json"))
(iso639-5 #~(string-append #$iso-codes "iso_639-5.json"))
(iso3166 #~(string-append #$iso-codes "iso_3166-1.json"))
@@ -437,9 +437,9 @@ (define (installer-program)
;; (e.g., "French" is always displayed as "français", but
;; "Belgium" could be translated to Dutch, French, or German.)
(bindtextdomain "iso_639-3" ;languages
- #+(file-append iso-codes "/share/locale"))
+ #+(file-append iso-codes/installer "/share/locale"))
(bindtextdomain "iso_3166-1" ;territories
- #+(file-append iso-codes "/share/locale"))
+ #+(file-append iso-codes/installer "/share/locale"))
;; Likewise for XKB keyboard layout names.
(bindtextdomain "xkeyboard-config"
diff --git a/gnu/packages/iso-codes.scm b/gnu/packages/iso-codes.scm
index d2bace6a3c..17f093ab78 100644
--- a/gnu/packages/iso-codes.scm
+++ b/gnu/packages/iso-codes.scm
@@ -87,6 +87,32 @@ (define-public iso-codes
(("(Taiwan), [^\"]*" _ name) name))))))
(synopsis "Various ISO standards as used by GNU@tie{}Guix"))))
+(define-public iso-codes/installer
+ (hidden-package
+ (package
+ (inherit iso-codes/official)
+ (name "iso-codes")
+ (version "4.16.0")
+ (home-page "https://salsa.debian.org/iso-codes-team/iso-codes")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url home-page)
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0rh2hiivd2hl864zar3pr3yxpkizj4jj4g6c9zjflls35jk4my3a"))
+ (modules '((guix build utils)))
+ (snippet
+ '(begin
+ (substitute* (find-files "." "\\.po$")
+ (("#.*Name for TWN,.*") "")
+ (("^msgid \"Taiwan, .*") "# Guix doesn't use "))
+ (substitute* "data/iso_3166-1.json"
+ (("(Taiwan), [^\"]*" _ name) name))))))
+ (synopsis "Various ISO standards as used by GNU@tie{}Guix"))))
+
(define-public python-iso639
(package
(name "python-iso639")

base-commit: 18d02443e1ec37779ee3cf63f9aaff1746bfdd8e
prerequisite-patch-id: 4ffb617d91dd5b9402dbbc4b283a10ddb2e346fa
prerequisite-patch-id: 71683bcfadbcfa4015533d7a9f350cc56ee0bcc9
prerequisite-patch-id: 791a04c394d72d0ebc43e256f36b87a328730021
prerequisite-patch-id: 0304eeb68533b569a1e97db280f9c3056fdbd18e
prerequisite-patch-id: 62bc2f225dc341e92ccd57e6e85e820781276325
prerequisite-patch-id: 80dddd088995777720d8bd9bfbbdc624bb73558e
prerequisite-patch-id: 17c1e3549ad480aa4898c41345f9fc42a31e36f8
prerequisite-patch-id: 101787b1a916da58bebc25c93c5119933dd5b342
prerequisite-patch-id: a17f97af2833018ba63ec532841ec365b88819d2
prerequisite-patch-id: d24e2e49818c64a7196123123f3799e2d6d68df6
prerequisite-patch-id: d77d6b930b595ddcf65f87eaa0017377009df33e
prerequisite-patch-id: a0e9a69a85d2ba39893ce272a4154d78fd70d436
prerequisite-patch-id: 6e95fccb5adca3aa9c525205dbf8a504d9fc3011
prerequisite-patch-id: 6fc64e51903b7dc549a57a2e476f04cba38064ca
prerequisite-patch-id: fc76be9d9a7c50b3c0929f1540cce53f6310ff3f
prerequisite-patch-id: 3645ebc0f7c660c7f9f4484aa5cc836a32dca88b
prerequisite-patch-id: 8f3115f73547fbda4c7ab8758d57093d89f5556f
prerequisite-patch-id: 2945b1975128021fa547990b34444d5425bd05b0
prerequisite-patch-id: efe0e637a1b92bca3438f8f322597f55e483e3cd
prerequisite-patch-id: 9a3cc330e771344f3d04bd1f8fd1b1f6e5092485
prerequisite-patch-id: 1d4b7f915798aaaa33ff1698c787a964d0520b6d
prerequisite-patch-id: 79674edf84a571c3fd9f5a3d86953690e1c9bc0e
prerequisite-patch-id: 14e78aa57aecec4f767a148df724589ff2e7fb47
prerequisite-patch-id: 7907c8d13571d434dcaf46d1236cba23ea9a3759
prerequisite-patch-id: 93e2ae209447710f140c0931a5bbd76e71639cea
prerequisite-patch-id: f3e23be6a18c939bb8f498438f025adf101d232e
prerequisite-patch-id: 07690aa820c880cd58808246e0968de89a085c67
--
2.45.2
L
L
Ludovic Courtès wrote on 9 Sep 11:35 -0700
Re: bug#73081: installer crash: iso-codes is too old
(name . Ricardo Wurmus)(address . rekado@elephly.net)
87o74wad4w.fsf_-_@gnu.org
Hi,

Ricardo Wurmus <rekado@elephly.net> skribis:

Toggle quote (8 lines)
> * gnu/packages/iso-codes.scm (iso-codes/installer): New variable.
> * gnu/installer.scm (compute-locale-step): Use it.
>
> Fixes <https://issues.guix.gnu.org/73081>.
> Change-Id: Ibc37b3972f6eda14886543b30a72d3b890455d07
>
> Change-Id: Ia06b776e861742fb108a41317ed6df13afec9b6f

[...]

Toggle quote (5 lines)
> +(define-public iso-codes/installer
> + (hidden-package
> + (package
> + (inherit iso-codes/official)

Maybe rename ‘iso-codes’ to ‘iso-codes/pinned’, rename users, and have:

(define-public iso-codes
(package
(inherit iso-codes/pinned)
…))

?

Toggle quote (18 lines)
> + (source (origin
> + (method git-fetch)
> + (uri (git-reference
> + (url home-page)
> + (commit (string-append "v" version))))
> + (file-name (git-file-name name version))
> + (sha256
> + (base32
> + "0rh2hiivd2hl864zar3pr3yxpkizj4jj4g6c9zjflls35jk4my3a"))
> + (modules '((guix build utils)))
> + (snippet
> + '(begin
> + (substitute* (find-files "." "\\.po$")
> + (("#.*Name for TWN,.*") "")
> + (("^msgid \"Taiwan, .*") "# Guix doesn't use "))
> + (substitute* "data/iso_3166-1.json"
> + (("(Taiwan), [^\"]*" _ name) name))))))

Maybe (origin (inherit (package-source iso-codes/pinned)) …) to avoid
duplicating the snippet?

Apart from that, it LGTM, thanks!

Ludo’.
L
L
Ludovic Courtès wrote on 9 Sep 11:36 -0700
control message for bug #73081
(address . control@debbugs.gnu.org)
87mskgad31.fsf@gnu.org
severity 73081 important
quit
?
Your comment

Commenting via the web interface is currently disabled.

To comment on this conversation send an email to 73081@patchwise.org

To respond to this issue using the mumi CLI, first switch to it
mumi current 73081
Then, you may apply the latest patchset in this issue (with sign off)
mumi am -- -s
Or, compose a reply to this issue
mumi compose
Or, send patches to this issue
mumi send-email *.patch