GNU bug report logs - #53594
no matching pattern #<package polkit..

Previous Next

Package: guix;

Reported by: "Guu, Jin-Cheng" <jin-cheng.guu <at> stonybrook.edu>

Date: Fri, 28 Jan 2022 01:47:02 UTC

Severity: important

Full log


View this message in rfc822 format

From: Ludovic Courtès <ludo <at> gnu.org>
To: Josselin Poiret <dev <at> jpoiret.xyz>
Cc: Mathieu Othacehe <othacehe <at> gnu.org>, 53594 <at> debbugs.gnu.org, "Guu, Jin-Cheng" <jin-cheng.guu <at> stonybrook.edu>
Subject: bug#53594: no matching pattern #<package polkit..
Date: Sat, 14 May 2022 17:55:52 +0200
Hello,

The failing code is at gexp.scm:901:23, which corresponds to this:

      (mlet %store-monad ((obj (lower-object thing system
                                             #:target
                                             (and (not native?)
                                                  target))))
901:    (return (match obj
                  ((? derivation? drv)
                   (derivation-input drv (list output)))
                  ((? store-item? item)
                   item)
                  ((? self-quoting?)
                   ;; Some inputs such as <system-binding> can lower to
                   ;; a self-quoting object that FILTERM will filter
                   ;; out.
                   #f))))

That means (lower-object polkit) returned polkit (the package object)
instead of a derivation, hence ‘match-error’.

This is normally impossible: ‘lower-object’ calls ‘package->derivation’,
which returns a derivation.  But maybe something weird is happening when
‘build-derivations’ aborts to the build-handler prompt, or when the
continuation is eventually resumed; maybe the object cache gets
“poisoned” with an incorrect value during that process.

So far the only reproducer we have seems to be along the lines of: grab
the ISO, run ‘guix pull’ (if it’s the 1.3.0 ISO; if it’s a fresh ISO,
that’s not necessary), run ‘guix system init’, watch it crash.

Does anyone have a simpler reproducer?

To be continued…

Ludo’.




This bug report was last modified 2 years and 207 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.