guix-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[core-updates] issues with python's zip


From: Brian Cully
Subject: [core-updates] issues with python's zip
Date: Fri, 14 Apr 2023 18:47:04 -0400
User-agent: mu4e 1.10.2; emacs 28.2


I've run into issues with two packages on core-updates that fail to build because the zip library being used can't handle dates before 1980. I assume there are more.

Do we have a way to handle this gracefully? In the mean time I've patched both packages (‘sssd’ and ‘criu’) with a new build phase:

--8<---------------cut here---------------start------------->8---
         (add-before 'install 'change-file-datetimes
           (lambda _
             (use-modules (ice-9 ftw))
             (let ((dir ".")
                   (time 315532800)) ; 00:00:00 1-jan-1980 UTC
               (let loop ((prefix "")
(node (file-system-tree (pk ".:" dir)))) ;; unqualified use of ‘match’ leads to a syntax error when ;; using ‘...’, so specify the module explicitly.
                 ((@ (ice-9 match) match) node
                  ((name stat) ; flat file
                   (when (not (eq? (stat:type stat) 'symlink))
(utime (string-append prefix name) time time)))
                  ((name stat children ...) ; directory
                   (utime (string-append prefix name) time time)
                   (for-each (lambda (child)
                               (loop (string-append prefix name
                                                    file-name-separator-string)
                                     child))
                             children)))))))
--8<---------------cut here---------------end--------------->8---

With this, the only outstanding issue with core-updates is #62820, which I'm baffled by. It appears to me as though the substitute is issuing up a broken ‘rules’ file, but since this is used by the keymap in ‘operating-system’, I would imagine a lot of people would have hit this bug, so why seemingly just me?

-bjc



reply via email to

[Prev in Thread] Current Thread [Next in Thread]