Maxim Cournoyer <maxim.courno...@gmail.com> writes:

>> An example would be to switch from linux-libre to some 100% free linux
>> kernel that doesn't block nonfree firmware, so if users reluctantly
>> need nonfree firmware they would, on their own, add them.
>
> I thought I'd mention that technically, making it impossible to load any
> firmware in linux-libre is considered a bug, and someone could
> contribute a fix.
>
> Last time I discussed it with the linux-libre, the reason loading
> non-free firmware is outright disabled is because it'd be trivial for
> any privileged (or maybe that's not even a condition?) processes to make
> a system call to Linux to load non-free firmware, which would make it
> difficult to control for users.

Oh, is that really the case?  I had assumed that this was a policy
decision, that linux-libre didn't want to allow users to have the
ability to load non-free firmware, to make sure the goals of linux-libre
aren't compromised.

If the reason isn't policy, I don't really understand the privilege
objection.  If you would agree that 'root' should be able to load and
run non-free code (which can be rejected on policy grounds), why would
linux-libre prevent that?  Is the syscall available for non-root users?
If so isn't that a linux kernel bug, surely non-privileged users
shouldn't be allowed to load firmware that can modify hardware
behaviour?

I am personally torn between use of Guix on some machines, where
linux-libre doesn't work, and the alternatives.  I've never really liked
the non-guix installation flow (it seems so complicated).  I think it is
reasonable in these situations to use a linux-libre kernel but that it
allows loading of non-free blobs, only that I have to do this manually
or specify it separately, and it doesn't happen automatically by
default.  This could be part of Guix proper.

I have thought that a middle ground project like 'linux-free' would be
possible: it would be identical to linux-libre but re-add the hooks to
allow root to load non-free firmware, if they so chose to do it.  I'm
more comfortable with this approach than using linux upstream, since I
think that linux-libre improves more than just non-free firmware
loading.

I don't think a strict kernel policy to disallow users to run non-free
code serves user freedom: it would prevent running a binary that I build
using GCC built on a 5 lines C code that doesn't have a license (such a
program would also be non-free).  Preventing a program like that from
being run is an interesting approach, but that functionality can just as
easily be used as full DRM sword to prevent me from running free
binaries.  So it is problematic to work on these mechanisms.

Maybe this topic could be brought up again on the linux-libre list, I
don't recall any recent discussion about this...

/Simon

Attachment: signature.asc
Description: PGP signature

Reply via email to