What are Non-free Blobs?

3 risposte [Ultimo contenuto]
hartkemd
Offline
Iscritto: 03/30/2018

Could someone explain what non-free blobs are, in terms of software?
Are blobs "binary lumps of bits"?

jxself
Offline
Iscritto: 09/13/2010

"Could someone explain what non-free blobs are, in terms of software?"

A program (which could be any kind or type of program, really) that is provided only as a pre-compiled program. No source code is offered/available. The license provided with them is non-free.

But even if a free license were used they're still non-free due to the lack of source code. After all, the Free Software Definition at https://www.gnu.org/philosophy/free-sw.html has that "access to the source code is a precondition for this."

So the lack of source code makes them non-free, regardless of license.

I mention this point because there are such pre-compiled programs like this that are intended to be used along with the kernel named Linux, say they are licensed under the GPL, and yet provide no source code. Quite an interesting contradiction huh? That's why I point out that no source means it's non-free regardless of what the license says.

Although it does option up the option for people to legally reverse engineer such programs and try to re-create some sort of source code, thus regaining the freedom that was denied.

"Are blobs "binary lumps of bits"?"

I don't know that "blob" is supposed to be an acronym. But if you wanted to make it one, I suppose that could be a backronym for it.

Magic Banana

I am a member!

I am a translator!

Offline
Iscritto: 07/24/2010

In a database (at least), it means "Binary Large OBject": https://en.wikipedia.org/wiki/Binary_large_object

J.B. Nicholson-Owens
Offline
Iscritto: 06/09/2014

name at domain wrote:
> Could someone explain what non-free blobs are, in terms of software?
> Are blobs "binary lumps of bits"?

The description from
https://www.gnu.org/distros/free-system-distribution-guidelines.html
usually suffices:

> Some applications and drivers require firmware to function, and
> sometimes that firmware is distributed only in object code form, under a
> nonfree license. We call these firmware programs “blobs.” On most
> GNU/Linux systems, you'll typically find these accompanying some drivers
> in the kernel Linux. [...]
Or if you need something more brief
https://www.gnu.org/distros/common-distros.html has:

> The kernel that they distribute (in most cases, Linux) includes “blobs”:
> pieces of object code distributed without source, usually firmware to
> run some device.

with the exception as the term used in the BSD systems:

> FreeBSD, NetBSD, and OpenBSD all include instructions for obtaining
> nonfree programs in their ports system. In addition, their kernels
> include nonfree firmware blobs.
>
> Nonfree firmware programs used with Linux, the kernel, are called
> “blobs”, and that's how we use the term. In BSD parlance, the term
> “blob” means something else: a nonfree driver. OpenBSD and perhaps other
> BSD distributions (called “projects” by BSD developers) have the policy
> of not including those. That is the right policy, as regards drivers;
> but when the developers say these distributions “contain no blobs”, it
> causes a misunderstanding. They are not talking about firmware blobs.

Free blobs exist -- free software firmware compiled to a binary file one
loads into a device, or a free driver binary one loads into their BSD
system. These pose no problems and there is little point in referring to
these as "blobs" because they're not really critically distinguishable from
any other free software.

Hope that helps.