DevHeads.net

Are packages w/o necessary kernel modules allowed?

Hello All!

Imagine an application, which relies on a specific kernel module. This
module is not a part of stock Fedora kernel (at least, yet), and we
don't allow stand-alone kernel modules.

Whether or not this package can be allowed?

Comments

Re: Are packages w/o necessary kernel modules allowed?

By Ralf Corsepius at 10/14/2009 - 10:29

IMO: no.

Packages in Fedora should "just work" and therefore must not rely on
anything which is not in Fedora.

Ralf

Re: Are packages w/o necessary kernel modules allowed?

By Felix Kaechele at 10/14/2009 - 11:31

From the opposite POV:
Why should we make peoples' lives harder getting the tools they need?
Example: Somebody without the DAHDI Kernel Modules would probably not
try to use the DAHDI Tools since he probably won't even know what it's
good for. However It makes things easier for the people who do know what
DAHDI is to have tools to use their DAHDI hardware (they compiled/got
the Kernel modules for) just a yum install away.

Felix

Re: Are packages w/o necessary kernel modules allowed?

By Bruno Wolff III at 10/14/2009 - 12:25

On Wed, Oct 14, 2009 at 18:31:03 +0200,

Not likely. dahdi-linux support is pretty spotty. atrpms can go a long time
without having a version for a specific version Fedora. For example there
is no rawhide version now and there was a long period without one for
F11. There are issues trying to rebuild atrpms src rpms on fedora. Just
grabbing atrms-rpm-config doesn't help with recursion issues that Alex
doesn't see because of his custom environment.

What I had to do for F12 is grab a spec file (that get's updates at the source)
that was proposed for rpmfusion (but never got adopted by them) and then use
an svn version of dahdi that has a fix for a change in the way the kernel
is being built (some compatibility feature that got dropped in 2.6.32).
That box has been extra unstable lately, though I don't know if that is do
to 3D graphics or dahdi-linux.

Re: Are packages w/o necessary kernel modules allowed?

By Axel Thimm at 10/15/2009 - 00:09

Rawhide support has quite low demand and the kernel changes daily or
more frequently in early rawhide, so any kernel bound support is
outdated before it is released. We usually fire up the rawhide support
about a month or so before the targeted release date (which means
about now). I don't think that F11 was w/o dahdi-linux kmdls for any
long period.

Who's Alex, and why doesn't atrms-rpm-config work? You may see
`recursion' warnings due to rpm's limitation of macros depth (which
has nothing to do with recursion), which is at 16, but in reality
means about 3-4 nested macros.

Have you tried the common src.rpm at ATrpms? Maybe you should check
out ATrpms in a couple of days and see whether there is dahdi support
for F12 there.

Re: Are packages w/o necessary kernel modules allowed?

By Bruno Wolff III at 10/15/2009 - 00:51

On Thu, Oct 15, 2009 at 08:09:19 +0300,

Yes, but usually just rebuilding from the source rpm would work if
I had an environment where I could do that. I am doing that now with
the version based on a spec file from messinet.com.

Possibly it was during the F11 rawhide period that I looked and I didn't
check back for a while after the release.

Unfortunately my tdm card is in my only machine at home that has 3d graphics at
all working using the drivers in Fedora. And I needed to go to rawhide to
get that working more than I needed to having tdm card working (though in
the end I got both).

Sorry about misspelling your name.

Yes. But I didn't see any clear instructions for how to work around it.
It seems that for some people using --define can work around the problem
if you know what to define. There was also a comment that you don't see
the problem because of something in your environment but I didn't see
any directions on how to set up a similar environment.

I tried using the dahdi-linux src rpm while having atrpms-rpm-config
installed, but hit the recursion problem and got stuck there. I would
still have had the problem with the last released dahdi not working
with 2.6.31 kernels. But fixing that would have taken the same route
as with the path I ended up taking.

Re: Are packages w/o necessary kernel modules allowed?

By Axel Thimm at 10/20/2009 - 23:13

I uploaded some F12 builds.

Give the current packages a try, if there are issues we'll get them fixed.

I use --define kmdl_kernelsrcdir /.../, that's all. But the error is
still just cosmetic, if I encounter it in a manual build, the build
still succeeds.

Re: Are packages w/o necessary kernel modules allowed?

By Till Maas at 10/14/2009 - 12:19

IMHO having both in RPMFusion with a proper dependency is the easiest
way to install it. Having some package with a missing kernel module
dependency in Fedora would only make it more complicated for other
repositories that provide the kernel module and can therefore provide a
package with a unbroken dependency.

Regards
Till

Re: Are packages w/o necessary kernel modules allowed?

By Kevin Kofler at 10/15/2009 - 18:45

I agree.

Putting stuff in without required dependencies is a bad practice, it's
better to let other repos provide it along with the required dependency.

That said, of course, there's a big can of worms there, in that we ship many
things without some optional dependencies which most users will want, but
which we can't legally ship. E.g. xine-lib without xine-lib-extras-
freeworld, libdvdread without libdvdcss, Gnash without the codecs allowing
it to actually play back Flash videos (not just pure Flash animations) etc.
But some people will want the apps even without those optional features, so
pushing them to the third-party repo entirely is probably a bad solution
(and for libdvdcss in particular, it would mean RPM Fusion would either have
to reverse its decision not to ship it or a lot of stuff would have to move
back to Livna, including many programs currently in Fedora). I guess the
real solution for that particular issue is to use reverse soft dependencies
("Enhances"), which are being discussed for future versions of RPM.

But if the package does not work at all without the dependency, I really
don't see what the benefit of shipping it in Fedora, as opposed to the
repository containing the dependency, is.

Now of course, my personal opinion is that Fedora should just allow external
kernel modules again, but judging from the feedback about that question
during the FESCo election campaign, I doubt I'll ever get a majority for
that in FESCo. And this issue would come up anyway for proprietary kernel
modules. (E.g. why is libXNVCtrl in Fedora?)

Kevin Kofler

Re: Are packages w/o necessary kernel modules allowed?

By Richard W.M. Jones at 10/14/2009 - 11:30

Well I don't think this should be a hard and fast rule.

If it was something like Firefox that needed a proprietary kernel
extension, then yes that would be really bad. But a small, obscure
package used to configure a specialized piece of hardware, and that
comes with adequate documentation, why not let it in?

# config-foo
Error: This requires a non-free kernel module 'foo.ko' which
can't be shipped in Fedora.

Rich.

Re: Are packages w/o necessary kernel modules allowed?

By Ralf Corsepius at 10/14/2009 - 11:59

Then our opions diverge: I think it should be a hard show stopper criterion.

There should not be any room for any "cripple ware" in Fedora nor should
Fedora be a stage for "closed source loaders".

Ralf

Re: Are packages w/o necessary kernel modules allowed?

By Richard W.M. Jones at 10/14/2009 - 13:56

So it should apply to pretty much all of Fedora, since Fedora depends
on closed source firmware, BIOSes, microcode and even hardware
designs.

Rich.

Re: Are packages w/o necessary kernel modules allowed?

By Seth Vidal at 10/14/2009 - 12:01

I think I agree.

This is just like shipping a package with an intentionally missing
dependency. We wouldn't allow shipping yum if rpm were missing,
right?

this sounds the same to me.

-sv

Re: Are packages w/o necessary kernel modules allowed?

By Kevin Fenzi at 10/14/2009 - 12:55

On Wed, 14 Oct 2009 13:01:40 -0400 (EDT)

So, how about some other cases instead of just kmods:

- Client apps that are free and acceptable for fedora, but a server app
that is not.

EXAMPLE: mpd (in rpmfusion) and all the various mpd clients that are
all in fedora.

- Library app thats free, but only non free things link against it so
far.

EXAMPLE: libvdpau

- Package that is free an interfaces with a non free server's data:

EXAMPLE: dbxml-perl

- Package that is free, but the kernel part of it's currently not
working (although planned to be back and great work is being done on
it):

EXAMPLE: xen

- Package that is free and acceptable for fedora, but requires a non
free service to function:

EXAMPLE: perl-Net-Amazon-EC2

Where does the black and white line come in here?
Or is it shades of grey?

kevin

Re: Are packages w/o necessary kernel modules allowed?

By Seth Vidal at 10/14/2009 - 13:06

We've allowed pretty much all of the cases where you could communicate
over the network to something else.

but we're not talking about over-the-network communication here.

-sv

Re: Are packages w/o necessary kernel modules allowed?

By Gianluca Sforna at 10/14/2009 - 11:07

Which is precisely the reason why sysprof was moved to rpmfusion when
kmods were banned from Fedora

Re: Are packages w/o necessary kernel modules allowed?

By Toshio Kuratomi at 10/14/2009 - 09:49

ATM, if there's no build time requirement for the kernel module (headers,
etc), then the userspace is fine.

I tentatively lean towards this being a good thing.
-Toshio

Re: Are packages w/o necessary kernel modules allowed?

By Stephen Gallagher at 10/14/2009 - 08:10

This is an interesting question. Suppose someone wrote (for example) an
GPLed configuration tool for a closed-source hardware driver. Would it
be permissible to include an open-source tool in the distribution, even
knowing it would only ever be usable with a tainted kernel?

Stephen Gallagher
RHCE 804006346421761

Looking to carve out IT costs?
<a href="http://www.redhat.com/carveoutcosts/" title="www.redhat.com/carveoutcosts/">www.redhat.com/carveoutcosts/</a>

Re: Are packages w/o necessary kernel modules allowed?

By Peter Lemenkov at 10/14/2009 - 08:14

2009/10/14 Stephen Gallagher < ... at redhat dot com>:

An example from a real life is a proprietary drivers, which sometimes
has only kernel-part closed, while has opensourced userspace.

Re: Are packages w/o necessary kernel modules allowed?

By Itamar - IspBrasil at 10/14/2009 - 08:08

yes, I am already told this for you.

for example I have user-mode-linux user space but I don't have
user-mode-linux enabled in kernel.

Re: Are packages w/o necessary kernel modules allowed?

By Peter Lemenkov at 10/14/2009 - 08:10

2009/10/14 Itamar Reis Peixoto < ... at ispbrasil dot com.br>:

I have strong opinion, that this is a bad practice. So I decided to ask others.

Re: Are packages w/o necessary kernel modules allowed?

By Felix Kaechele at 10/14/2009 - 08:07

If not, what does dahdi-tools do in Fedora then?

Felix

Re: Are packages w/o necessary kernel modules allowed?

By Jeffrey Ollie at 10/14/2009 - 08:20

Nothing, at least not without a kernel module that's not in the stock
Fedora kernel. The DAHDI kernel modules are GPL, but Digium has been
unwilling to merge them into the upstream kernel.