[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#52411: [core-updates-frozen] kmod-29 build fails, cross-compiled for
From: |
Maxim Cournoyer |
Subject: |
bug#52411: [core-updates-frozen] kmod-29 build fails, cross-compiled for i586-pc-gnu |
Date: |
Fri, 17 Dec 2021 23:11:48 -0500 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/27.2 (gnu/linux) |
Hi Maxime,
Maxime Devos <maximedevos@telenet.be> writes:
> Maxime Devos schreef op vr 10-12-2021 om 17:48 [+0000]:
>> Maxim Cournoyer schreef op vr 10-12-2021 om 07:55 [-0500]:
>> > Hello Guix!
>> >
>> > I haven't been able to deploy core-updates-frozen on one of my
>> > machine,
>> > because it has the childhurd service which needs kmod-29 which
>> > fails
>> > building, like so:
>>
>> kmod is a linux-only thing, it's for doing things with linux kernel
>> modules, so the childhurd service shouldn't be using kmod. Perhaps
>> look
>> at why kmod is being built in the first place?
>
> I think I might have found the issue. The following commit made the
> existence/absence 'kmod' input of pciutils depend on %current-
> system/%current-target-system:
>
> https://git.savannah.gnu.org/cgit/guix.git/commit/?id=22ee7209797c023b95e22ced156df62cbff90184
>
> but it forgot to keep in mind that nix systems != triplets.
> Instead of %current-target-system, the 'current-target-nix-system'
> from ‘https://issues.guix.gnu.org/49672#3’ needs to be used
> (or the hurd-target? procedure).
Looking more closely, I don't see an issue with the current conditional
seleciting kmod? nix systems != triplets, but in this case, the
conditional is seldom dealing with nix systems, it seems. Am I missing
something?
*** time passes ... reads sources ***
Ah! per (guix utils), it seems like %current-system is a nix system,
while %current-target-system is a GNU triplet. Confusing!
So, I've now made the following change:
--8<---------------cut here---------------start------------->8---
(native-inputs
(list which pkg-config))
(inputs
- `(,@(if (member (or (%current-target-system)
- (%current-system))
- (package-supported-systems kmod))
+ `(,@(if (not (hurd-target?))
`(("kmod" ,kmod))
'())
--8<---------------cut here---------------end--------------->8---
I'll push it to version-1.4.0 as it causes a big rebuild. I'm still
curious that this doesn't appear triggered on every guix deploy I've
made though...
Thanks!
Maxim