On Wed, Jun 10, 2015 at 8:44 AM, Dan Book <grinnz@gmail.com> wrote:


On Wed, Jun 10, 2015 at 2:12 AM, Thorsten Leemhuis <fedora@leemhuis.info> wrote:
Dan Book wrote on 09.06.2015 22:01:
> This has also been a problem for several releases with the akmods from
> rpmfusion.

There was always a problem; there where just less people running into
it, because yum/dnf installed "kernel-devel" most of the time, which
matched the kernel that was running on most systems; but quite a few
x86-32 users ran into problems afaics, as kernel-PAE get's installed
there sometimes and hence they needed kernel-PAE-devel.

Mosts of the docs and howtos on the net don't mention that, which leads
to confused and frustrating users; those in the end might be one of
multiple problems why they switch to another distribution.

> I think the more "correct" solution (read to the end) would
> be to somehow prioritize the kernel-devel package (possibly multiple)
> that matches the installed kernel(s).

That's not a solution, that's solving the problem for some users and
ignoring others (those that use kernel-PAE for example).

"The kernel-devel package that matches the installed kernel(s)" would include kernel-PAE-devel matching kernel-PAE, in this fantasy land I invented.
 

> [...]

CU
thl

-Dan
 

> On Tue, Jun 9, 2015 at 3:41 PM, Thorsten Leemhuis <fedora@leemhuis.info
> <mailto:fedora@leemhuis.info>> wrote:
>
>     On 09.06.2015 21:04, Neal Gompa wrote:
>     > I've noticed that when dkms is installed, it's not grabbing the right
>     > kernel-devel package as a dependency.
>
>     Because that's not possible with ordinary dependencies (might be
>     possible with soft dependencies [Suggests, Enhances etc]) unless we
>     change something in the kernel packaging (see below).
>
>     > Instead, it grabs
>     > kernel-debug-devel. This occurs on Fedora 21 and 22, and I'm not sure
>     > why.
>
>     Because all kernel*devel package provide kernel-devel iirc.
>
>     > Anyone have any idea why this is happening and a way to work around it?
>
>     Create something like a meta-package "kernel-devel-all" that depends on
>     all available kernel-devel packages (kernel-devel, kernel-PAE-devel,
>     kernel-debug-devel, ...) for the arch in question; then add "Requires:
>     kernel-devel-all" to the akmods and dkms packages. That's messy and
>     creates overhead for users, but that's afaics the only way it will work
>     for everyone; otherwise you'll always run into situations where a
>     kernel-devel package for one kernel variant gets installed while you are
>     running different variant. Example: You get kernel-devel via some
>     dependency in akmods or dkms; but you are running kernel-PAE on your
>     i686 machine, so building modules with akmods or dkms will fail, as
>     that's requires kernel-PAE-devel.
>
>     HTH; CU, knurd
>     --
>     devel mailing list
>     devel@lists.fedoraproject.org <mailto:devel@lists.fedoraproject.org>


--
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct

What about some kind of virtual provides defined in repos/rpm/somewhere that would automatically grab the kernel-devel package associated with the exact kernel that is running at the time yum/dnf is installing a program that depends on it? That would allow for things like DKMS to function properly, since they'll have what they need to build kernel modules. Going forward, kernel upgrades will also drag in the appropriate kernel-devel packages to match, keeping things sane.

--
真実はいつも一つ!/ Always, there's only one truth!