[PATCH] gnu: Graft tzdata to install leap-seconds.list.

  • Open
  • quality assurance status badge
Details
3 participants
  • Antero Mejr
  • Liliana Marie Prikler
  • (
Owner
unassigned
Submitted by
Antero Mejr
Severity
normal
A
A
Antero Mejr wrote on 1 Jul 2022 03:53
(address . guix-patches@gnu.org)
20220701015314.7197-1-antero@mailbox.org
* gnu/packages/base.scm (tzdata)[replacement]: New field.
(tzdata-leap-seconds-list): New private variable.
---
gnu/packages/base.scm | 14 ++++++++++++++
1 file changed, 14 insertions(+)

Toggle diff (34 lines)
diff --git a/gnu/packages/base.scm b/gnu/packages/base.scm
index 4bdc3e7792..b265b429d5 100644
--- a/gnu/packages/base.scm
+++ b/gnu/packages/base.scm
@@ -1305,6 +1305,7 @@ (define-public tzdata
;; This package should be kept in sync with python-pytz in (gnu packages
;; time).
(version "2022a")
+ (replacement tzdata-leap-seconds-list)
(source (origin
(method url-fetch)
(uri (string-append
@@ -1390,6 +1391,19 @@ (define-public tzdata
and daylight-saving rules.")
(license public-domain)))
+(define tzdata-leap-seconds-list
+ (package
+ (inherit tzdata)
+ (arguments
+ (substitute-keyword-arguments (package-arguments tzdata)
+ ((#:phases phases)
+ #~(modify-phases #$phases
+ (add-after 'install 'copy-leap-seconds-list
+ (lambda _
+ (copy-file "leap-seconds.list"
+ (string-append
+ #$output "/share/zoneinfo/leap-seconds.list"))))))))))
+
;;; A "fixed" version of tzdata, which is used in the test suites of glib and R
;;; and a few other places. We can update this whenever we are able to rebuild
;;; thousands of packages (for example, in a core-updates rebuild). This package
--
2.36.1
A
A
Antero Mejr wrote on 1 Jul 2022 04:08
Re: bug#56331: Acknowledgement ([PATCH] gnu: Graft tzdata to install leap-seconds.list.)
(address . 56331@debbugs.gnu.org)
87tu81bn1i.fsf@mailbox.org
leap-seconds.list is required by the hare programming language (which is
currently being packaged) for accurate datetime calculations.

It is optionally used by ntpd with the "leapfile" directive in ntpd.conf.
(
Re: [bug#56331] [PATCH] gnu: Graft tzdata to install leap-seconds.list.
CL4808QZHVWA.8RAYIISM117N@guix-aspire
On Fri Jul 1, 2022 at 2:53 AM BST, Antero Mejr via Guix-patches via wrote:
Toggle quote (12 lines)
> @@ -1305,6 +1305,7 @@ (define-public tzdata
> ;; This package should be kept in sync with python-pytz in (gnu packages
> ;; time).
> (version "2022a")
> + (replacement tzdata-leap-seconds-list)
> (source (origin
> (method url-fetch)
> (uri (string-append
> @@ -1390,6 +1391,19 @@ (define-public tzdata
> and daylight-saving rules.")
> (license public-domain)))

There's no need to graft it, as long as you make sure tzdata-for-tests
isn't rebuilt.
A
A
Antero Mejr wrote on 1 Jul 2022 15:03
[PATCH] gnu: Update tzdata-for-tests.
(address . 56331@debbugs.gnu.org)(address . paren@disroot.org)
20220701130314.4046-1-antero@mailbox.org
* gnu/packages/base.scm (tzdata-for-tests): Install leap-seconds.list.
---
gnu/packages/base.scm | 15 ++++++++++++++-
1 file changed, 14 insertions(+), 1 deletion(-)

Toggle diff (28 lines)
diff --git a/gnu/packages/base.scm b/gnu/packages/base.scm
index 4bdc3e7792..a1d57611ee 100644
--- a/gnu/packages/base.scm
+++ b/gnu/packages/base.scm
@@ -1398,7 +1398,20 @@ (define-public tzdata
;;;
;;; Please make this a hidden-package if it is different from the primary tzdata
;;; package.
-(define-public tzdata-for-tests tzdata)
+(define-public tzdata-for-tests
+ (hidden-package
+ (package
+ (inherit tzdata)
+ (arguments
+ (substitute-keyword-arguments (package-arguments tzdata)
+ ((#:phases phases)
+ #~(modify-phases #$phases
+ (add-after 'install 'copy-leap-seconds-list
+ (lambda _
+ (copy-file "leap-seconds.list"
+ (string-append
+ #$output
+ "/share/zoneinfo/leap-seconds.list")))))))))))
(define-public libiconv
(package
--
2.36.1
L
L
Liliana Marie Prikler wrote on 1 Jul 2022 21:49
(address . paren@disroot.org)
9377148b01b646f0fadb810cff5ce00b2ef1989c.camel@gmail.com
Am Freitag, dem 01.07.2022 um 13:03 +0000 schrieb Antero Mejr:
Toggle quote (31 lines)
> * gnu/packages/base.scm (tzdata-for-tests): Install leap-
> seconds.list.
> ---
>  gnu/packages/base.scm | 15 ++++++++++++++-
>  1 file changed, 14 insertions(+), 1 deletion(-)
>
> diff --git a/gnu/packages/base.scm b/gnu/packages/base.scm
> index 4bdc3e7792..a1d57611ee 100644
> --- a/gnu/packages/base.scm
> +++ b/gnu/packages/base.scm
> @@ -1398,7 +1398,20 @@ (define-public tzdata
>  ;;;
>  ;;; Please make this a hidden-package if it is different from the
> primary tzdata
>  ;;; package.
> -(define-public tzdata-for-tests tzdata)
> +(define-public tzdata-for-tests
> +  (hidden-package
> +   (package
> +     (inherit tzdata)
> +     (arguments
> +      (substitute-keyword-arguments (package-arguments tzdata)
> +        ((#:phases phases)
> +         #~(modify-phases #$phases
> +             (add-after 'install 'copy-leap-seconds-list
> +               (lambda _
> +                 (copy-file "leap-seconds.list"
> +                            (string-append
> +                             #$output
> +                             "/share/zoneinfo/leap-
> seconds.list")))))))))))
That's exactly the patch you weren't supposed to write. It bumps
tzdata-for-tests, thus causing mass rebuilds, but doesn't bump tzdata.

Cheers
?
Your comment

Commenting via the web interface is currently disabled.

To comment on this conversation send an email to 56331@debbugs.gnu.org

To respond to this issue using the mumi CLI, first switch to it
mumi current 56331
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