unofficial mirror of bug-guix@gnu.org 
 help / color / mirror / code / Atom feed
* bug#73081: installer crash: iso-codes is too old
@ 2024-09-06 18:28 Ricardo Wurmus
  2024-09-06 22:01 ` bug#73081: [PATCH] gnu: Add iso-codes/installer Ricardo Wurmus
  2024-09-27 12:03 ` Roman Scherer
  0 siblings, 2 replies; 5+ messages in thread
From: Ricardo Wurmus @ 2024-09-06 18:28 UTC (permalink / raw)
  To: 73081

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




^ permalink raw reply	[flat|nested] 5+ messages in thread

* bug#73081: [PATCH] gnu: Add iso-codes/installer.
  2024-09-06 18:28 bug#73081: installer crash: iso-codes is too old Ricardo Wurmus
@ 2024-09-06 22:01 ` Ricardo Wurmus
  2024-09-09 18:35   ` bug#73081: installer crash: iso-codes is too old Ludovic Courtès
  2024-09-27 12:03 ` Roman Scherer
  1 sibling, 1 reply; 5+ messages in thread
From: Ricardo Wurmus @ 2024-09-06 22:01 UTC (permalink / raw)
  To: 73081
  Cc: Ricardo Wurmus, Josselin Poiret, Ludovic Courtès,
	Mathieu Othacehe

* 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
---
 gnu/installer.scm          |  6 +++---
 gnu/packages/iso-codes.scm | 26 ++++++++++++++++++++++++++
 2 files changed, 29 insertions(+), 3 deletions(-)

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





^ permalink raw reply related	[flat|nested] 5+ messages in thread

* bug#73081: installer crash: iso-codes is too old
  2024-09-06 22:01 ` bug#73081: [PATCH] gnu: Add iso-codes/installer Ricardo Wurmus
@ 2024-09-09 18:35   ` Ludovic Courtès
  0 siblings, 0 replies; 5+ messages in thread
From: Ludovic Courtès @ 2024-09-09 18:35 UTC (permalink / raw)
  To: Ricardo Wurmus; +Cc: Mathieu Othacehe, Josselin Poiret, 73081

Hi,

Ricardo Wurmus <rekado@elephly.net> skribis:

> * 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

[...]

> +(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)
      …))

?

> +     (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’.




^ permalink raw reply	[flat|nested] 5+ messages in thread

* bug#73081: installer crash: iso-codes is too old
  2024-09-06 18:28 bug#73081: installer crash: iso-codes is too old Ricardo Wurmus
  2024-09-06 22:01 ` bug#73081: [PATCH] gnu: Add iso-codes/installer Ricardo Wurmus
@ 2024-09-27 12:03 ` Roman Scherer
  2024-09-28 13:47   ` Ludovic Courtès
  1 sibling, 1 reply; 5+ messages in thread
From: Roman Scherer @ 2024-09-27 12:03 UTC (permalink / raw)
  To: 73081; +Cc: rekado, ludo


[-- Attachment #1.1: Type: text/plain, Size: 293 bytes --]


Hi Ricardo and Ludo,

I tried to address the comments mentioned by Ludo and tested them by
booting into the installer. It seems to work now. I don't see it
crashing anymore.

Please find the patches attached to this mail.

Could you please review them, and if ok merge them?

Thanks, Roman.


[-- Attachment #1.2: 0001-gnu-iso-codes-Rename-to-iso-codes-pinned.patch --]
[-- Type: text/x-diff, Size: 15019 bytes --]

From 7fefef83a062a97d7c41e3e0d145abd9d5b1101b Mon Sep 17 00:00:00 2001
Message-ID: <7fefef83a062a97d7c41e3e0d145abd9d5b1101b.1727437710.git.roman@burningswell.com>
From: Roman Scherer <roman@burningswell.com>
Date: Fri, 27 Sep 2024 11:00:27 +0200
Subject: [PATCH 1/3] gnu: iso-codes: Rename to iso-codes/pinned.

* doc/build.scm
* gnu/installer.scm
* gnu/packages/fcitx.scm
* gnu/packages/fcitx5.scm
* gnu/packages/gnome.scm
* gnu/packages/gstreamer.scm
* gnu/packages/gtk.scm
* gnu/packages/ibus.scm
* gnu/packages/iso-codes.scm
* gnu/packages/kde-frameworks.scm
* gnu/packages/kde-plasma.scm
* gnu/packages/mate.scm
* gnu/packages/photo.scm
* gnu/packages/video.scm

Change-Id: Ia98fee15a27009583fee822cf411512727b1aa27
---
 doc/build.scm                   |  4 ++--
 gnu/installer.scm               | 12 ++++++------
 gnu/packages/fcitx.scm          |  4 ++--
 gnu/packages/fcitx5.scm         |  4 ++--
 gnu/packages/gnome.scm          | 20 ++++++++++----------
 gnu/packages/gstreamer.scm      |  2 +-
 gnu/packages/gtk.scm            |  4 ++--
 gnu/packages/ibus.scm           |  2 +-
 gnu/packages/iso-codes.scm      |  2 +-
 gnu/packages/kde-frameworks.scm |  6 +++---
 gnu/packages/kde-plasma.scm     |  4 ++--
 gnu/packages/mate.scm           |  4 ++--
 gnu/packages/photo.scm          |  2 +-
 gnu/packages/video.scm          |  2 +-
 14 files changed, 36 insertions(+), 36 deletions(-)

diff --git a/doc/build.scm b/doc/build.scm
index 5d9fff9517..664766a1f5 100644
--- a/doc/build.scm
+++ b/doc/build.scm
@@ -1061,7 +1061,7 @@ (define* (localization-helper-module source
                  (bindtextdomain "guix-manual"
                                  #+(guix-manual-text-domain source))
                  (bindtextdomain "iso_639-3"      ;language names
-                                 #+(file-append iso-codes
+                                 #+(file-append iso-codes/pinned
                                                 "/share/locale"))
                  (setenv "LANGUAGE" ,language)
                  (write (gettext ,str ,domain))))
@@ -1080,7 +1080,7 @@ (define* (localization-helper-module source
           (define %iso639-languages
             (vector->list
              (assoc-ref (call-with-input-file
-                            #+(file-append iso-codes
+                            #+(file-append iso-codes/pinned
                                            "/share/iso-codes/json/iso_639-3.json")
                           json->scm)
                         "639-3")))
diff --git a/gnu/installer.scm b/gnu/installer.scm
index 3792fc7e35..53af01261e 100644
--- a/gnu/installer.scm
+++ b/gnu/installer.scm
@@ -146,10 +146,10 @@ (define* (compute-locale-step #:key
 
   (let* ((supported-locales #~(supported-locales->locales
                                #+(glibc-supported-locales)))
-         (iso-codes #~(string-append #$iso-codes "/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"))
+         (iso-codes #~(string-append #$iso-codes/pinned "/share/iso-codes/json/"))
+         (iso639-3 #~(string-append #$iso-codes/pinned "iso_639-3.json"))
+         (iso639-5 #~(string-append #$iso-codes/pinned "iso_639-5.json"))
+         (iso3166 #~(string-append #$iso-codes/pinned "iso_3166-1.json"))
          (locales-file (build-compiled-file
                         locales-name
                         #~`(quote ,#$supported-locales)))
@@ -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/pinned "/share/locale"))
             (bindtextdomain "iso_3166-1"          ;territories
-                            #+(file-append iso-codes "/share/locale"))
+                            #+(file-append iso-codes/pinned "/share/locale"))
 
             ;; Likewise for XKB keyboard layout names.
             (bindtextdomain "xkeyboard-config"
diff --git a/gnu/packages/fcitx.scm b/gnu/packages/fcitx.scm
index b21b269926..11bf73610c 100644
--- a/gnu/packages/fcitx.scm
+++ b/gnu/packages/fcitx.scm
@@ -206,7 +206,7 @@ (define-public fcitx
            gtk+-2
            gtk+
            icu4c
-           iso-codes
+           iso-codes/pinned
            json-c
            libxkbfile
            libxml2
@@ -245,7 +245,7 @@ (define-public fcitx-configtool
       ("gettext"    ,gettext-minimal)
       ("gtk2"       ,gtk+-2)
       ("gtk3"       ,gtk+)
-      ("iso-codes"  ,iso-codes)))
+      ("iso-codes"  ,iso-codes/pinned)))
    (home-page "https://fcitx-im.org/wiki/Configtool")
    (synopsis "Graphic Fcitx configuration tool")
    (description
diff --git a/gnu/packages/fcitx5.scm b/gnu/packages/fcitx5.scm
index 4ad7fa98ca..c4c2b565db 100644
--- a/gnu/packages/fcitx5.scm
+++ b/gnu/packages/fcitx5.scm
@@ -111,7 +111,7 @@ (define-public fcitx5
        ("gdk-pixbuf" ,gdk-pixbuf)
        ("gettext" ,gettext-minimal)
        ("glib" ,glib)
-       ("iso-codes" ,iso-codes)
+       ("iso-codes" ,iso-codes/pinned)
        ("json-c" ,json-c)
        ("libevent" ,libevent)
        ("libuuid" ,util-linux "lib")
@@ -469,7 +469,7 @@ (define-public fcitx5-configtool
            xkeyboard-config
            libxkbfile
            gettext-minimal
-           iso-codes))
+           iso-codes/pinned))
     (native-inputs
      (list extra-cmake-modules pkg-config))
     (home-page "https://github.com/fcitx/fcitx5-configtool")
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index b9da31b1f1..892302f391 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -1825,7 +1825,7 @@ (define-public libnma
     (inputs
      (list gcr-3
            (if (supported-package? gtk) gtk gtk+)
-           iso-codes
+           iso-codes/pinned
            mobile-broadband-provider-info
            network-manager))
     (synopsis "Network Manager's applet library")
@@ -2318,7 +2318,7 @@ (define-public gnome-desktop
      (list gsettings-desktop-schemas
            gtk
            gtk+
-           iso-codes
+           iso-codes/pinned
            libseccomp
            libx11
            xkeyboard-config))
@@ -4905,7 +4905,7 @@ (define-public libxklavier
      ;; Required by libxklavier.pc.
      (list glib libxml2))
     (inputs
-     (list iso-codes libxi libxkbfile xkbcomp xkeyboard-config))
+     (list iso-codes/pinned libxi libxkbfile xkbcomp xkeyboard-config))
     (home-page "https://www.freedesktop.org/wiki/Software/LibXklavier/")
     (synopsis "High-level API for X Keyboard Extension")
     (description
@@ -7322,7 +7322,7 @@ (define-public epiphany
            gst-plugins-base
            gst-plugins-good
            gstreamer
-           iso-codes
+           iso-codes/pinned
            json-glib
            libadwaita
            libarchive
@@ -9178,7 +9178,7 @@ (define-public gdm
            gnome-session
            gnome-settings-daemon
            gtk+
-           iso-codes
+           iso-codes/pinned
            libcanberra
            libgudev
            linux-pam
@@ -11502,7 +11502,7 @@ (define-public gspell
              (setenv "ASPELL_DICT_DIR"
                      (search-input-directory inputs "/lib/aspell")))))))
     (inputs
-     (list iso-codes))
+     (list iso-codes/pinned))
     (native-inputs
      (list `(,glib "bin")
            gobject-introspection
@@ -11842,7 +11842,7 @@ (define-public sound-juicer
            gst-plugins-good
            gstreamer
            gtk+
-           iso-codes
+           iso-codes/pinned
            libcanberra
            libdiscid
            libmusicbrainz
@@ -12784,7 +12784,7 @@ (define-public geary
            gspell
            gsound
            gtk+
-           iso-codes
+           iso-codes/pinned
            json-glib
            libcanberra
            libgee
@@ -13248,7 +13248,7 @@ (define-public parlatype
            gst-plugins-good
            gstreamer
            gtk+
-           iso-codes
+           iso-codes/pinned
            pocketsphinx
            pulseaudio
            sphinxbase))
@@ -13645,7 +13645,7 @@ (define-public libgda
     (build-system meson-build-system)
     (native-inputs
      (list intltool
-           iso-codes
+           iso-codes/pinned
            `(,glib "bin")
            gnome-common
            gettext-minimal
diff --git a/gnu/packages/gstreamer.scm b/gnu/packages/gstreamer.scm
index c4791757a7..13c8734e68 100644
--- a/gnu/packages/gstreamer.scm
+++ b/gnu/packages/gstreamer.scm
@@ -562,7 +562,7 @@ (define-public gst-plugins-base
      (list alsa-lib
            cdparanoia
            graphene
-           iso-codes
+           iso-codes/pinned
            libjpeg-turbo
            libogg
            libpng
diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index 2c40d4468d..2742427008 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -1069,7 +1069,7 @@ (define-public gtk+
            cups
            graphene
            harfbuzz
-           iso-codes
+           iso-codes/pinned
            json-glib-minimal
            libxml2
            rest))
@@ -1361,7 +1361,7 @@ (define-public gtk
            gst-plugins-bad              ;provides gstreamer-player
            gst-plugins-base             ;provides gstreamer-gl
            harfbuzz
-           iso-codes
+           iso-codes/pinned
            json-glib
            libcloudproviders            ;for cloud-providers support
            libgudev                     ;for gstreamer-gl
diff --git a/gnu/packages/ibus.scm b/gnu/packages/ibus.scm
index 07f5b90f67..2f4211c385 100644
--- a/gnu/packages/ibus.scm
+++ b/gnu/packages/ibus.scm
@@ -195,7 +195,7 @@ (define-public ibus-minimal
            dconf
            glib
            gtk+
-           iso-codes
+           iso-codes/pinned
            json-glib
            libnotify
            libx11
diff --git a/gnu/packages/iso-codes.scm b/gnu/packages/iso-codes.scm
index d2bace6a3c..147cc9174b 100644
--- a/gnu/packages/iso-codes.scm
+++ b/gnu/packages/iso-codes.scm
@@ -68,7 +68,7 @@ (define-public iso-codes/official
 information.")
     (license license:gpl2+)))           ; some bits use the lgpl2
 
-(define-public iso-codes
+(define-public iso-codes/pinned
   ;; This package should be used universally within Guix, e.g., as an input to
   ;; other Guix packages or in the Guix System installer's country selector.
   (hidden-package
diff --git a/gnu/packages/kde-frameworks.scm b/gnu/packages/kde-frameworks.scm
index 88f79615f0..974fd1c4dd 100644
--- a/gnu/packages/kde-frameworks.scm
+++ b/gnu/packages/kde-frameworks.scm
@@ -1129,7 +1129,7 @@ (define-public ki18n
     (native-inputs
      (list extra-cmake-modules python-minimal tzdata-for-tests))
     (inputs
-     (list qtbase qtdeclarative iso-codes))
+     (list qtbase qtdeclarative iso-codes/pinned))
     (arguments
      (list
       #:phases
@@ -1173,7 +1173,7 @@ (define-public ki18n-5
     (native-inputs
      (list extra-cmake-modules))
     (inputs
-     (list qtbase-5 qtdeclarative-5 qtscript iso-codes))))
+     (list qtbase-5 qtdeclarative-5 qtscript iso-codes/pinned))))
 
 (define-public kidletime
   (package
@@ -2359,7 +2359,7 @@ (define-public kcontacts
     (build-system qt-build-system)
     (native-inputs (list extra-cmake-modules
                          ;; for test
-                         iso-codes))
+                         iso-codes/pinned))
     (inputs (list qtdeclarative))
     (propagated-inputs
      (list ;; As required by KF6ContactsConfig.cmake.
diff --git a/gnu/packages/kde-plasma.scm b/gnu/packages/kde-plasma.scm
index 56213bed08..d36cfde21b 100644
--- a/gnu/packages/kde-plasma.scm
+++ b/gnu/packages/kde-plasma.scm
@@ -2051,7 +2051,7 @@ (define-public plasma-desktop
                   libxkbfile
                   libxcursor
                   libxkbcommon))
-    (propagated-inputs (list iso-codes kirigami kcmutils plasma-workspace))
+    (propagated-inputs (list iso-codes/pinned kirigami kcmutils plasma-workspace))
     (arguments
      (list #:qtbase qtbase
            #:phases
@@ -2726,7 +2726,7 @@ (define-public plasma-workspace
                   dbus
                   fontconfig
                   icu4c
-                  iso-codes
+                  iso-codes/pinned
                   plasma-activities
                   plasma-activities-stats
                   karchive
diff --git a/gnu/packages/mate.scm b/gnu/packages/mate.scm
index f83d26b26b..ca987cca7c 100644
--- a/gnu/packages/mate.scm
+++ b/gnu/packages/mate.scm
@@ -244,7 +244,7 @@ (define-public mate-desktop
            yelp-tools
            gtk-doc/stable))
     (inputs
-     (list gtk+ libxrandr iso-codes startup-notification))
+     (list gtk+ libxrandr iso-codes/pinned startup-notification))
     (propagated-inputs
      (list dconf)) ; mate-desktop-2.0.pc
     (home-page "https://mate-desktop.org/")
@@ -1432,7 +1432,7 @@ (define-public pluma
            gtk+
            gtksourceview-4
            gdk-pixbuf
-           iso-codes
+           iso-codes/pinned
            libcanberra
            libx11
            libsm
diff --git a/gnu/packages/photo.scm b/gnu/packages/photo.scm
index 96f5bbec50..ec32de2990 100644
--- a/gnu/packages/photo.scm
+++ b/gnu/packages/photo.scm
@@ -598,7 +598,7 @@ (define-public darktable
            gsettings-desktop-schemas
            gtk+
            imath
-           iso-codes          ;optional, for language names in the preferences
+           iso-codes/pinned          ;optional, for language names in the preferences
            json-glib
            lcms
            lensfun                   ;optional, for the lens distortion plugin
diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm
index 64ac69da46..1d2ab5fbeb 100644
--- a/gnu/packages/video.scm
+++ b/gnu/packages/video.scm
@@ -6155,7 +6155,7 @@ (define-public gaupol
            python-pycairo ; Required or else clicking on a subtitle line fails.
            python-chardet ; Optional: Character encoding detection.
            gtkspell3 ; Optional: Inline spell-checking.
-           iso-codes ; Optional: Translations.
+           iso-codes/pinned ; Optional: Translations.
            gstreamer
            gst-libav
            gst-plugins-base

base-commit: e6a771c7baf9662b4c9832045ad86c8b92b46bb3
-- 
2.46.0


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1.3: 0002-gnu-Add-iso-codes.patch --]
[-- Type: text/x-diff, Size: 1689 bytes --]

From 6c651fbaef76daa87b01c37a3a119b7bbfbb3917 Mon Sep 17 00:00:00 2001
Message-ID: <6c651fbaef76daa87b01c37a3a119b7bbfbb3917.1727437710.git.roman@burningswell.com>
In-Reply-To: <7fefef83a062a97d7c41e3e0d145abd9d5b1101b.1727437710.git.roman@burningswell.com>
References: <7fefef83a062a97d7c41e3e0d145abd9d5b1101b.1727437710.git.roman@burningswell.com>
From: Roman Scherer <roman@burningswell.com>
Date: Fri, 27 Sep 2024 11:14:02 +0200
Subject: [PATCH 2/3] gnu: Add iso-codes.

* gnu/packages/iso-codes.scm (iso-codes): New variable.

Change-Id: I2d945a2daf98d111c04a3c30f0779e39644a5e2e
---
 gnu/packages/iso-codes.scm | 14 ++++++++++++++
 1 file changed, 14 insertions(+)

diff --git a/gnu/packages/iso-codes.scm b/gnu/packages/iso-codes.scm
index 147cc9174b..8c51777dda 100644
--- a/gnu/packages/iso-codes.scm
+++ b/gnu/packages/iso-codes.scm
@@ -87,6 +87,20 @@ (define-public iso-codes/pinned
               (("(Taiwan), [^\"]*" _ name) name))))))
      (synopsis "Various ISO standards as used by GNU@tie{}Guix"))))
 
+(define-public iso-codes
+  (package
+    (inherit iso-codes/pinned)
+    (version "4.17.0")
+    (source (origin
+              (inherit (package-source iso-codes/pinned))
+              (uri (git-reference
+                    (url (package-home-page iso-codes/pinned))
+                    (commit (string-append "v" version))))
+              (file-name (git-file-name (package-name iso-codes/pinned) version))
+              (sha256
+               (base32
+                "0a77b9aid68vakhsa3l3lx2jav5q9fp7vn50mwmzkr2lkr2l4k41"))))))
+
 (define-public python-iso639
   (package
     (name "python-iso639")
-- 
2.46.0


[-- Attachment #1.4: 0003-gnu-installer-Use-iso-codes.patch --]
[-- Type: text/x-diff, Size: 2533 bytes --]

From ba1046d61eecd9d88483e5730bec4c0e23e96bc9 Mon Sep 17 00:00:00 2001
Message-ID: <ba1046d61eecd9d88483e5730bec4c0e23e96bc9.1727437710.git.roman@burningswell.com>
In-Reply-To: <7fefef83a062a97d7c41e3e0d145abd9d5b1101b.1727437710.git.roman@burningswell.com>
References: <7fefef83a062a97d7c41e3e0d145abd9d5b1101b.1727437710.git.roman@burningswell.com>
From: Roman Scherer <roman@burningswell.com>
Date: Fri, 27 Sep 2024 11:14:44 +0200
Subject: [PATCH 3/3] gnu: installer: Use iso-codes.

* gnu/installer.scm (compute-locale-step): Use Use iso-codes.

Change-Id: I9a69f7accee965cf5deb2c1b23ce3fda579d465a
---
 gnu/installer.scm | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/gnu/installer.scm b/gnu/installer.scm
index 53af01261e..3792fc7e35 100644
--- a/gnu/installer.scm
+++ b/gnu/installer.scm
@@ -146,10 +146,10 @@ (define* (compute-locale-step #:key
 
   (let* ((supported-locales #~(supported-locales->locales
                                #+(glibc-supported-locales)))
-         (iso-codes #~(string-append #$iso-codes/pinned "/share/iso-codes/json/"))
-         (iso639-3 #~(string-append #$iso-codes/pinned "iso_639-3.json"))
-         (iso639-5 #~(string-append #$iso-codes/pinned "iso_639-5.json"))
-         (iso3166 #~(string-append #$iso-codes/pinned "iso_3166-1.json"))
+         (iso-codes #~(string-append #$iso-codes "/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"))
          (locales-file (build-compiled-file
                         locales-name
                         #~`(quote ,#$supported-locales)))
@@ -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/pinned "/share/locale"))
+                            #+(file-append iso-codes "/share/locale"))
             (bindtextdomain "iso_3166-1"          ;territories
-                            #+(file-append iso-codes/pinned "/share/locale"))
+                            #+(file-append iso-codes "/share/locale"))
 
             ;; Likewise for XKB keyboard layout names.
             (bindtextdomain "xkeyboard-config"
-- 
2.46.0


[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 528 bytes --]

^ permalink raw reply related	[flat|nested] 5+ messages in thread

* bug#73081: installer crash: iso-codes is too old
  2024-09-27 12:03 ` Roman Scherer
@ 2024-09-28 13:47   ` Ludovic Courtès
  0 siblings, 0 replies; 5+ messages in thread
From: Ludovic Courtès @ 2024-09-28 13:47 UTC (permalink / raw)
  To: Roman Scherer; +Cc: rekado, 73081-done

Hi Roman,

Roman Scherer <roman.scherer@burningswell.com> skribis:

> I tried to address the comments mentioned by Ludo and tested them by
> booting into the installer. It seems to work now. I don't see it
> crashing anymore.
>
> Please find the patches attached to this mail.
>
> Could you please review them, and if ok merge them?

Pushed:

  e076b8b884 installer: Use the latest ‘iso-codes’.
  2ae666c471 gnu: Add iso-codes.
  8e5c8303a4 gnu: iso-codes: Rename to iso-codes/pinned.

I tweaked the commit logs and added a comment in ‘installer.scm’ about
the choice of the ‘iso-codes’ version.

Thank you!

Ludo’.




^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2024-09-28 13:49 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-09-06 18:28 bug#73081: installer crash: iso-codes is too old Ricardo Wurmus
2024-09-06 22:01 ` bug#73081: [PATCH] gnu: Add iso-codes/installer Ricardo Wurmus
2024-09-09 18:35   ` bug#73081: installer crash: iso-codes is too old Ludovic Courtès
2024-09-27 12:03 ` Roman Scherer
2024-09-28 13:47   ` Ludovic Courtès

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).