bug-guix
[Top][All Lists]
Advanced

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

bug#61885: bug#61911: error: mate-polkit: unbound variable


From: Maxime Devos
Subject: bug#61885: bug#61911: error: mate-polkit: unbound variable
Date: Thu, 2 Mar 2023 16:11:05 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.7.2



Op 02-03-2023 om 15:36 schreef Josselin Poiret:
Hi Maxime,

Maxime Devos <maximedevos@telenet.be> writes:

In unknown file:
             3 (primitive-load-path "gnu/packages/xfce" #<procedure 7f?>)
In gnu/packages/xfce.scm:
    1156:19  2 (_)
In ice-9/boot-9.scm:
    1685:16  1 (raise-exception _ #:continuable? _)
    1685:16  0 (raise-exception _ #:continuable? _)

ice-9/boot-9.scm:1685:16: In procedure raise-exception:
error: mate-polkit: unbound variable

This is the same kind of issue as [1]: both xfce and mate require each
other (the second through mate -> freedesktop -> kde-frameworks ->
kde-plasma -> display-managers -> xfce), and depending on the order in
which they're loaded, mate-polkit-for-xfce might get defined before
mate-polkit is.  The solution I suggested there was to define the
variant in the same file as the original package, but here I'm not sure
if this is the right call.

In general, I'd much rather try to get rid of those pesky module cycles,
as they cause general headaches for guix pull.  I remember Julien
using (guix modules) to do some analysis at the Guix days, maybe we
could get some pointers on how to handle this specific situation?

WDYT?

[1] https://issues.guix.gnu.org/61885
    (mid: F29B8BFE-A175-4128-8093-4A810681E235@winter.cafe)

I haven't gone to Guix days so I can't comment on that, but I'd like to note that there are some simple patches for breaking up lots of package cycles at <https://issues.guix.gnu.org/54539#62> (*). In particular, #:use-module -> #:autoload appears promising (^).

Basically, you can consider a module reference to be 'strong' if its of the form (define stuff (package (inherit reference)) ...), and 'weak' if its just a package input (or more generally, something thunked). 'Strong' cycles are problematic, but 'weak' cycles should be resolvable by delaying loading the required modules until needed.

I don't know if these patches would solve this particular 'mate-polkit' issue -- if the 'mate -> freedesktop -> ... -> xfce' cycle is 'weak', something like those patches should work, but if it isn't, those patches would be insufficient.

(*) Beware of https://issues.guix.gnu.org/54539#63 though; looks like I made some mistakes in hurd.scm and image.scm.

Greetings,
Maxime.

Attachment: OpenPGP_0x49E3EE22191725EE.asc
Description: OpenPGP public key

Attachment: OpenPGP_signature
Description: OpenPGP digital signature


reply via email to

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