LWN.net Logo

Resolved: firmware is not software

On July 17, the Debian release team posted an update on the upcoming "etch" distribution. Things appeared to be moving along nicely. Many of the important transitions have been made, the kernel was set to be frozen on July 30, and the final release (to be numbered 4.0) was on track to happen, as scheduled, on December 4 of this year. It all looks like the smoothest release process Debian has had in quite some time.

For experienced Debian watchers, this seems too good to be true. And, in fact, that's exactly what it might be; behind the scenes, it looks like the etch release may get caught up on an old problem. On August 3, Debian developer Nathanael Nerode claimed that the etch timeline is unrealistic because the kernel will not be ready in time. The issue, in particular, is that of device firmware.

Some background: most devices attached to a modern systems are special-purpose computers in their own right, running their own software. Some of these devices store that software ("firmware") in a ROM within the device itself. Over the years, however, manufacturers have found that loading the firmware from the host system is both cheaper and more flexible. As a result, much current hardware is unable to function in any useful way until the host computer has fed it the requisite firmware. This firmware load is handled by the device driver.

Once upon a time, a great many drivers had the necessary firmware linked into the kernel itself. In many cases, over time, that firmware has been stripped out into a separate file which can be fed to the kernel at device initialization time. In others, however, the firmware remains in the kernel itself. Often, that firmware carries explicit permission which allows it to be distributed in that way, so licensing issues do not usually come into the picture.

The Debian Project, however, is not satisfied with distributable firmware - or, at least, many vocal Debian developers are not satisfied. Unless there is accompanying source which can be used to rebuild that firmware, said firmware is not seen to be truly free, and, thus, has no part in Debian. According to this point of view, it is not possible to ship a kernel which is compliant with the Debian Free Software Guidelines (DFSG) until all of that firmware has been torn out of it. Since this work has not been done - the Debian kernel maintainers being more concerned with the production of a working and secure kernel - the kernel cannot be frozen, and the etch timeline cannot be met.

There is another point of view within the project however. According to this perspective, Debian is shipping an operating system for the host CPU, not for all of the peripherals attached to that CPU. As long as the core operating system is free, that is good enough. The peripheral devices will, regardless of anything Debian does, be running non-free software. Adopting a policy which favors devices having their proprietary software in ROM (where it can never, ever be changed) over those which accept their firmware from the host (where, maybe, someday it could be rebuilt and tinkered with) seems like a step in the wrong direction. To people who see things this way, trying to purge non-free firmware distracts developers from more useful work while simultaneously making things harder for Debian's users.

This is, to put it mildly, not a particularly new discussion. Despite having come around many times over the years, however, this question has never really been resolved. In an effort to bring it to a resolution this time around, Steve Langasek has proposed a general resolution stating, in essence, that Debian can ship "data" without the need for accompanying source. Data, in this sense, includes things like graphics (splash screens, icons, etc.), videos, and fonts. If this resolution is voted on and passes, the position taken by the project will be that, as long as the "data" itself is freely distributable, the project can ship it without source and remain true to its goals.

The final part of the proposed resolution takes things one step further by stating explicitly that firmware is, for the purposes of the DFSG's source requirements, not a program. Device firmware is, instead, data which, under the terms of the resolution, can be shipped without source.

Needless to say, this proposal has inspired some discussion. Many developers are in favor of the proposal, and have seconded it. Others have requested that it be split into two parts, with the firmware-as-data issue being voted upon separately. Some remain firmly opposed to shipping anything without source; these people do not like the resolution at all.

Then, there is the position taken by Sven Luther, a member of the Debian kernel team. Sven states that calling firmware "data" is fundamentally dishonest, and that this fiction will inevitably lead Debian toward becoming a non-free distribution. What he would like to see, instead, is a resolution that, while firmware remains a problem, it is one which has been with Debian for a long time and which is not going to be solved within the etch release schedule. So, Sven proposes:

We thus ask the project to temporarily waive the DFSG requirement for those non-free firmware blobs, in order to let the etch release to ship in a timely fashion, and let us work on these issues, within the kernel and related affected teams, the project as a whole (The DPL could mandate a delegate or delegate team to contact manufacturers and such), but also upstream, in a calm and posed way, not hurried by the needs of the release, and other such pressure.

Sven will likely format this proposal into a competing resolution for a vote by the developers.

What this alternative resolution really looks like, of course, is yet another decision to defer the issue and argue about it again in the next release cycle. But this could be just how the decision goes in the end. Many developers have little patience with the firmware battles and with the push to break working drivers. There is also a real unease, however, with shipping binary firmware blobs, and simply rebranding those blobs as "data" may not be enough to make people feel better about it. So Debian may well punt the issue again; expect its return in a year or two.


(Log in to post comments)

Resolved: firmware is not software

Posted Aug 24, 2006 1:01 UTC (Thu) by hooty (subscriber, #7374) [Link]

The title of this article makes no sense. Reading the body it is anything but "resolved".

Resolved: firmware is not software

Posted Aug 24, 2006 2:12 UTC (Thu) by bignose (subscriber, #40) [Link]

Agreed. Please, change the article's title to something that doesn't directly contradict its content.

Resolved: firmware is not software

Posted Aug 24, 2006 2:55 UTC (Thu) by donstuart (guest, #4550) [Link]

The center of the article was about a proposed RESOLution. I don't know about Debian in particular but often proposed resolutions contain phrasing like "Resolved: Foo should be Bar." The title is just fine, reasonably clever, actually.

Don

The title is misleading and should be changed

Posted Aug 24, 2006 17:25 UTC (Thu) by stevenj (guest, #421) [Link]

Even if there is a literal interpretation that does not contradict the article, this is not the obvious interpretation of the title. The title is misleading, even if it is not technically "false".

Yes, in the mainstream trade rags you sometimes see "clever" titles that give a false impression in order to grab attention. Kind of like how Slashdot uses intentionally inflammatory leads in order to attract posters. But I would hope that LWN aspires to higher standards.

Resolved: firmware is not software

Posted Aug 24, 2006 2:11 UTC (Thu) by Ross (subscriber, #4065) [Link]

Why aren't documents also "just data"? Is the GNU "Free" Documentation License now acceptable?

GFDL in Debian main

Posted Aug 24, 2006 3:39 UTC (Thu) by jstAusr (guest, #27224) [Link]

Currently GFDL documents -without- unmodifiable sections are considered free enough to be included in Debian main.
http://lists.debian.org/debian-devel-announce/2006/03/msg...

Resolved: firmware is not software

Posted Aug 24, 2006 18:20 UTC (Thu) by iabervon (subscriber, #722) [Link]

Documents are "just data"; it's documentation, which has a functional aspect tied to what it documents, which matter. Debian would be unable to function otherwise, since the GPL document itself is not Free ("but changing it is not allowed"), and not intended to be Free, and must be distributed with GPL-licensed packages.

Resolved: firmware is not software

Posted Aug 30, 2006 22:36 UTC (Wed) by Ross (subscriber, #4065) [Link]

Ok, I agree with what you said, but I still think the application of the rules isn't consistent. Don't binary firmware blobs have functional aspects too, so by that logic don't they need to be Free?

Resolved: firmware is not software

Posted Aug 24, 2006 3:59 UTC (Thu) by jwb (guest, #15467) [Link]

I happen to agree with the position that firmware is data, for two reasons. The first reason is that many instances of firmware really are written from scratch in machine code and there isn't any kind of source code to distribute. The second reason is that it draws an arbitrary line between "short" and "long" data.

Suppose I have a device which needs to be initialized, so I write this to its port:

0x80 0x62

Now suppose I have another device, which needs to be initialized this way:

0x41 0x18 0xa5 0xff 0x00 0x19 0x54 0x37

And I have a third device, where the initialization string is like the above, but about fifty kilobytes long. What's the difference? Can I distribute the driver for the first and second device, but not distribute the third because it is somehow "not free"? At what exact length (in bytes) does it become not free? What if the author write the 50,000-byte initialization, in machine language, in hexadecimal, through sheer application of brain power? What, then, is the "preferred form of modification"?

Resolved: firmware is not software

Posted Aug 24, 2006 6:02 UTC (Thu) by khim (subscriber, #9252) [Link]

At what exact length (in bytes) does it become not free?

Interesting, but not new question. That's for courts to decide. If it's copyrightable - it's non-free, if it's not long/complex enough to be copyrightable - it's "just data".

What if the author write the 50,000-byte initialization, in machine language, in hexadecimal, through sheer application of brain power? What, then, is the "preferred form of modification"?

Do you really believe someone does it today ? I wrote some code in hexadecimal. It was many years ago and even 1kb of code written in such a way was (and will be today) VERY expensive piece of code. Today at least assembler is used. As usual: that's for courts to decide. I'm pretty sure unique person who's writing 50Kb code in hexadeciman and not in assembler will need A LOT OF test to prove that he's not crazy and that he's not liar, but yes, in such a case it'll be "preffered form" because no other form exist...

Resolved: firmware is not software

Posted Aug 24, 2006 6:53 UTC (Thu) by Los__D (subscriber, #15263) [Link]

Why would anyone write more than a few bytes of firmware directly in machine code, instead of using assembler? Even very custom hardware should have an assembler, just to keep the developers from going crazy...

There's no advantages to skipping the assembler step, no code size or reduction speed improvements.

That said, I DO agree that it's data, seen from the host CPU. It's not going to be executed by the CPU, but passed on to another unit. In a lot of cases, it wouldn't even be executable by the CPU.

Another thing is if we would understand the custom assembler anyway:

MAKEIT STFU
BLEHLA RIAA, 5000
WOOHOO STFU, RIAA
WEDONK RIAA
;)

Resolved: firmware is not software

Posted Aug 24, 2006 7:08 UTC (Thu) by drag (subscriber, #31333) [Link]

I agree.

Firmware is very hardware specific. It doesn't matter what platform your running it on, what sort of operating system your using, what sort of CPU your using. None of that matters.

You can run firmware ripped from a PowerPC OS X driver in Windows XP driver on x86 or a Linux machine on Sparc or ARM. It doesn't matter. It's tied to a paticular peice of hardware and it's completely worthless for any other reason of application.

There realy isn't any reason to know what it does or how it works, beyond what is nessicary to write device drivers. No reason to have to go modify it or whatnot.

Although if I have a choice I'll avoid hardware that requires seperate firmware. If the manufacturer is just to cheap to invest in a little peice of ROM for their devices then what else did they go cheap on?

Resolved: firmware is not software

Posted Aug 24, 2006 8:07 UTC (Thu) by Robin.Hill (subscriber, #4385) [Link]

There realy isn't any reason to know what it does or how it works, beyond what is nessicary to write device drivers. No reason to have to go modify it or whatnot.
Not necessarily true - for example, the firmware for a USB camera could control how it adjusts colours, how long it'll allow the shutter to be open for, how the auto-focus works, enabling/disabling digital zoom, etc. I can easily see situations where the default settings are non-optimal, or where you're trying to use the hardware for a purpose not originally envisaged by the designers, so not provided for by the original firmware.

Resolved: firmware is not software

Posted Aug 24, 2006 8:23 UTC (Thu) by evgeny (guest, #774) [Link]

> It doesn't matter what platform your running it on, what sort of operating system your using, what sort of CPU your using.

It's not the point. The point is about _distributing_ it, not about using. E.g., shipping with Debian a PXE boot image of a non-free OS (even if it's supposed to be run on a hardware Debian hasn't been ported to) would be a similar violation of the policy.

I do agree, though, that an excemption should be made for distributing firmware.

> If the manufacturer is just to cheap to invest in a little peice of ROM for their devices then what else did they go cheap on?

Well, why? I see no technical drawbacks from loading the firmware by the driver. I think it makes the things more flexible.

Resolved: firmware is not software

Posted Aug 24, 2006 16:08 UTC (Thu) by bronson (subscriber, #4806) [Link]

If the manufacturer is just to cheap to invest in a little peice of ROM for their devices then what else did they go cheap on?

Are you kidding me? You want pre-ship bugs locked into the device's ROM for all time? You don't want to be able to add features years later, re-target the device at runtime, or be able to experiment with it yourself (assuming you have appropriate decompilers/toolchain)?

Personally, I'm ecstatic that "firm" no longer describes a lot of device-specific code being written today.

Resolved: firmware is not software

Posted Aug 24, 2006 17:51 UTC (Thu) by Los__D (subscriber, #15263) [Link]

Just because it doesn't get autoloaded doesn't mean that it's not upgradeable, you never did a BIOS or videocard firmware update?

Resolved: firmware is not software

Posted Aug 24, 2006 19:21 UTC (Thu) by pflugstad (subscriber, #224) [Link]

And the flash to support that is probably more expensive than the ROM would be.

Resolved: firmware is not software

Posted Aug 26, 2006 11:10 UTC (Sat) by broonie (subscriber, #7078) [Link]

Not always - due to the need to program the device at some point during production it can be much more cost effective to put a flash device on and program it after the hardware has been assembled. It allows the use of an off the shelf component, which is normally a win, and can be useful to allow production test access to the system.

Resolved: firmware is not software

Posted Aug 29, 2006 0:38 UTC (Tue) by dlang (✭ supporter ✭, #313) [Link]

if you look at volume pricing of parts flash is still frequently more expensive then ROM (One-Time-Programmable) versions, let alone ones that don't have the flash at all.

also programming the flash frequently requires additional wires and other components in the device, which also cose.

Resolved: firmware is not software

Posted Aug 29, 2006 18:05 UTC (Tue) by broonie (subscriber, #7078) [Link]

Yes, it does depend on what you're doing - volumes, feature sets and whatnot. Point is that you can't tell which of flash or ROM will work out better until you look at the particular application.

Resolved: firmware is not software

Posted Aug 24, 2006 8:04 UTC (Thu) by ekj (guest, #1524) [Link]

Well, yeah, from the point of view of the main CPU it's not code -- it's not something *it* can execute, all it can do with it is hand it over to someone who can.

Problem is, if you use that distinction to separate "data" from "code" then a lot of stuff suddenly is just "data" rather than code.

A python-program is just data. Same for a shell-script. Also a java-program, or indeed any program run trough an interpreter rather than directly on the main CPU is "just data".

Thus, I personally think the only sensible choice is for Debian to require the source-code for everything they ship. (as already defined in the GPL: source-code means the prefered form for making changes)

This means, for a jpeg-icon they migth require the SVG-file from which it is rendered. For a pdf-document they migth require the docbook xml-file from which it was created. For a ogg-soundtrack they migth require the original wav-recording.

That's actually pretty close to what they *are* doing.

Saying "it's just data, so therefore we don't require the source" is silly.

Much more honest to make an explicit permission: "Allthough we do not have the source for this BLOB, we allow its inclusion in Debian as that is still preferable to a device with its driver-BLOB embedded in ROM"

Resolved: firmware is not software

Posted Aug 24, 2006 21:00 UTC (Thu) by mightyduck (guest, #23760) [Link]

> This means, for a jpeg-icon they migth require the SVG-file from which
> it is rendered. For a pdf-document they migth require the docbook
> xml-file from which it was created. For a ogg-soundtrack they migth
> require the original wav-recording.
> That's actually pretty close to what they *are* doing.
> Saying "it's just data, so therefore we don't require the source" is silly.

What you are proposing is just silly. What is the real original source of a sound recording for instance? Do you want to ship the master tapes from a record company just because you ship some free song? Or the sketches from an artist just because you ship his/her icon or wallpaper? For instance, if I draw an icon on paper and then scan it, do I have to ship the piece of paper? Get real and come down from you ideological high point. kk

Resolved: firmware is not software

Posted Aug 26, 2006 0:51 UTC (Sat) by giraffedata (subscriber, #1954) [Link]

When you put it that way, it's silly, but I'm sure he meant to restrict the requirement to software source. That's not silly. A master tape and artist's sketch is not software, but every example in the original post (SVG, wav, docbook) is software.

The reason to make a special case of software source is that it can be distributed just as easily as the software object code.

Remember that the free software movement is primarily interested in separating out that software whose publisher withholds source for the sole purpose of preventing people from modifying the software. Someone who holds back SVG source is in the same category as someone who holds back operating system source.

Resolved: firmware is not software

Posted Aug 26, 2006 16:50 UTC (Sat) by oak (guest, #2786) [Link]

> Do you want to ship the master tapes from a record company just because
> you ship some free song? Or the sketches from an artist just because you
> ship his/her icon or wallpaper? For instance, if I draw an icon on paper
> and then scan it, do I have to ship the piece of paper?

I release all my graphics as GPL and they come with the (POV-Ray) source
code. When you want e.g. to change the appearance of some of the objects
generated automatically with a tiny Python script producing POV-Ray
snippets, it's mightily easier done by changing the source code of the
3D scripts instead of by using e.g. Gimp. Especially if one at the same
time would like to change the camera placement and lightning too (which
are trivial to do from the POV-Ray source)...

Doing the modifications with a graphics editor is about as easy as using
hex editor to do modification on a binary produced from C-source code.

Re-usability of 3D-objects in other pictures is also much higher than
of the image clips because it's so much easier to change their relative
size etc. without losing details.

Resolved: firmware is not software

Posted Aug 29, 2006 13:32 UTC (Tue) by branden (subscriber, #7029) [Link]

What you are proposing is just silly. What is the real original source of a sound recording for instance? Do you want to ship the master tapes from a record company just because you ship some free song? Or the sketches from an artist just because you ship his/her icon or wallpaper? For instance, if I draw an icon on paper and then scan it, do I have to ship the piece of paper? Get real and come down from you ideological high point. kk

By this logic, Debian must also be demanding that the brains of programmers be shipped along with the compiled object files they distribute.

Except that's not the case, and never has been, which suggests that your analogy is blowhard hyperbole.

Debian, like other OS distributors, is in the business of moving bits. The point at which a work is captured into digital form is the earliest possible point at which it could be considered "source form". A later form may qualify instead, if the author does not intend to use the originally captured digital form as the form for modification/editing.

Resolved: firmware is not software

Posted Sep 3, 2006 9:53 UTC (Sun) by renox (subscriber, #23785) [Link]

I think that you'd better consider the use of these data:
- firmware is data for external devices: it has zero influence on the host CPU, devices without firmware (firmware in ROM) or devices with closed-source firmware are 'identical': in both cases you cannot modify the device. So IMHO both should be treated the same and accepted.

- data for you host CPU must be also Free: otherwise your program is not truly "Free": Quake is not Free: Quake's engine is Free.

- if you only provide a bitmap for a vector-based image, there is a huge loss of information: so saying that the bitmap is "Free" is quite misleading IMHO: this is not the 'preferred form' if you wanted to modify the image.

Resolved: firmware is not software

Posted Aug 30, 2006 22:39 UTC (Wed) by Ross (subscriber, #4065) [Link]

If it was written in binary then that _is_ the source format. I find that highly unlikely for firmware of more than trivial size though.

Resolved: firmware is not software

Posted Aug 24, 2006 10:59 UTC (Thu) by job (guest, #670) [Link]

Why is this even an issue? The main concern should be whether the API is documented or not.

I view blobs are undocumented initialization sequences. If it is 'data' or 'code' is more of a philisophical issue. If I can't run it, it's not code to me.

Resolved: firmware is not software

Posted Aug 24, 2006 13:33 UTC (Thu) by slef (subscriber, #14720) [Link]

It's an issue because it's stuff in debian which doesn't give users their normal freedoms. What if those undocumented initialisation sequences don't initialise the device properly? That's very hard to fix, in a way unlike most of debian, and buyers can't check it before hooking the hardware up unless the seller has a known-similar test system.

I suggested a non-free-hwsupport section which would be stuff that debian can't normally maintain, but is required to install the distribution on some hardware - sort of similar to physical hardware that we can't maintain - and would be allowed on distribution CDs.

Resolved: firmware is not software

Posted Aug 24, 2006 17:53 UTC (Thu) by Los__D (subscriber, #15263) [Link]

But it's ok if it's locked inside the device? That makes no sense

Resolved: firmware is not software

Posted Aug 25, 2006 5:58 UTC (Fri) by kleptog (subscriber, #1183) [Link]

Ofcourse, because then Debian isn't distributing it and there's no problem.

It's not a tirade against binary blobs as such, it's not about users running them, it's about whether Debian should be *distributing* them. If you get them from somewhere else or they're in the device, it's not a problem. Basically, users have become dependant on binary blobs to run they're machines and are encouraging Debian to ship them.

The line between code and data has never been particularly wide, one man's code is another man's data.

Resolved: firmware is not software

Posted Aug 25, 2006 7:49 UTC (Fri) by slef (subscriber, #14720) [Link]

No, it's not OK if it's locked inside the device, but then debian's not distributing it, so the project isn't making any promise that it can be studied, adapted, improved or shared. That's far more clear: your hardware = your problem.

The problem is that debian is distributing these programs and people might expect them to be maintainable, but it can't be covered by the usual debian promises. I suggest making it clearer: your hardware using firmware from this section = still your problem.

Resolved: firmware is not software

Posted Aug 29, 2006 23:44 UTC (Tue) by dlang (✭ supporter ✭, #313) [Link]

you say that firmware isn't maintainable, what do you need to do with it?

you don't expect a device to have it's interface with the system changing on you. modulo bugs you want the devices interface to remain the same, and you want it to be the same as every other version of that device.

besides, a device that you had firmware each install is easier to tinker with then one that has it's firmware in flash.

1. firmware in flash useually requires dos/windows to update

2. updateing firmware in flash runs a real risk of turning the device into a doorstop, if the firmware is downloaded each initialization, all you need to do is to reboot and try again (unless you manage to physicaly damage a device, but that risk is the same in either case)

Resolved: firmware is not software

Posted Aug 30, 2006 11:51 UTC (Wed) by slef (subscriber, #14720) [Link]

> you say that firmware isn't maintainable, what do you need to do with it?

Aye, there's the rub: You don't really know until you need to do it.

Maybe you need to adapt it, to make the device to behave differently, in order to meet your needs. Maybe you need to study it, in order to improve support for other similar devices from that manufacturer. Maybe you just want better performance on one aspect. Maybe you need to share it with someone else with a similar device who wants a similar adaptation.

Or, you point out one reason yourself:

> you don't expect a device to have it's interface with the system changing on you

I've seen devices where there's a choice of N firmwares that you can upload and some of them seem to have different interfaces to the others, using different drivers on the kernel side. Maybe we'd like to make all the firmwares for that device use a stable interface? We could do that if we could maintain them.

You're quite right that uploading each time is better in some ways to flashing, but some dealers will flash devices for you if the alternative is a 'not fit for purpose' return of goods, so it's not clear cut.

Resolved: firmware is not software

Posted Aug 24, 2006 20:02 UTC (Thu) by caitlinbestler (guest, #32532) [Link]

Firmware is software, but it is for a different machine.

Nobody would suggest that a GPL DHCP server was forbidden
to provide boot instructions to a machine unless that machine
was also booting a GPL OS.

Devices that require firmware are peers that are being
bootstrapped. They are not part of the kernel.

Resolved: firmware is not software

Posted Aug 30, 2006 22:54 UTC (Wed) by Ross (subscriber, #4065) [Link]

But in your analogy the DHCP server would also have a copy of the non-Free OS and transfer it via TFTP. Nobody would say that all the software on that server was Free anymore... at least I don't see how.

Resolved: firmware is not software

Posted Aug 30, 2006 23:35 UTC (Wed) by caitlinbestler (guest, #32532) [Link]

Freedom is supposed to enable users.

Requiring that a Free OS only interoperate with
other Free OSs would be a hideous violation of
the underlying concept of the Internet.

The point is that the other machine is a different
work. The GPL software is supposed to be able
to interoperate with it.

If a device with firmware in ROM is a different
work, then it should not lose its unique identity
merely because it bootstraps its firmware instead.
Any more than a remote machine loses its independent
status when it uses DHCP.

Resolved: firmware is not software

Posted Aug 24, 2006 21:18 UTC (Thu) by mikov (subscriber, #33179) [Link]

From my point of view, insisting that device firmware must be open source seems a little like fanatism - it can only hurt everybody in the long run by creating artificial problems and conflicts.

Even if a hardware manufacturer was willing to open the source for their firmware, there probably wouldn't be tools for Linux to compile it. The "firmware" could in fact be an FPGA image. As far as I know, there isn't a Xilinx compiler for Linux, let alone a free open-source Xilinx compiler for Linux. It is unfair and unproductive to punish the hardware manufacturer, and more importantly the users, for that.

Further on, the "solution" to separate the firmware blobs from the kernel by moving them in user space strikes me as very hypocritical if it is done only for ideological reasons. Nothing really changes - who cares whether the blob is linked with the kernel or not. "Linking" inside the kernel does not create a magical bond between the blob and the kernel. The precise method for uploading the blob into the device is a very minor technical detail.

Resolved: firmware is not software

Posted Aug 26, 2006 16:40 UTC (Sat) by oak (guest, #2786) [Link]

I know of a GPL game project that wasn't accepted to Savannah hosting
because it contained POV source code for its graphics / its graphics were
produced with POV-Ray. And although POV-Ray raytracer (and it's source
code) are freely available, its license isn't "free" in all the senses
defined by FSF.

Still, Savannah is hosting some games which have graphics, *without*
any source code for the graphics (e.g. because their graphics are
drawn, not rendered)! IMHO that's pretty inconsistent.

Some paranoya, maybe?

Posted Aug 25, 2006 1:53 UTC (Fri) by nlucas (subscriber, #33793) [Link]

So what about winmodems or wireless cards?

There are countries where it's illegal to let the user change the card firmware (if that is security by obscurity or not it's not the point), so those cards will never be free (even if it's illegal to be free).

Also many only allow those devices to be connected after the firmware is approved by some institute (to make sure they only use certain frequencies, etc).

Should we just consider all those devices to be non-free? Even if the firmware is publically accesible and with no strings attached?

To me seems like useless fanatism...

Resolved: firmware is not software

Posted Aug 26, 2006 21:25 UTC (Sat) by dvdeug (subscriber, #10998) [Link]

Provided that we have the rights to edit the firmware, it's probably most reasonable to ship it in main. We need to be sure we at least have the rights to edit it, though.

But making a blanket statement that data doesn't have to have source is much more scary. There are cases where the data is perfectly usable as is, and there are cases where we need the source to do anything. We are much better off getting wav/flac files for sound and png files for images, provided they haven't been generated from higher level formats, because otherwise editing them is a losing battle. The only difference with firmware is really that we don't have much chance to win _that_ battle.

Copyright © 2006, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds