Dish Network Dishes Source Code for DVR
An anonymous reader writes "According to Dish
Network they are accommodating 'requests for the portions of the DISH 921
DVR source code that are subject to the GNU Public License, or GPL. In compliance
with the terms of the GPL, we are making this source code available to the public
to download. Please note that the DISH 921 DVR software also includes some proprietary
elements that are not subject to the GPL. You cannot create a working DISH 921
DVR software build without the additional proprietary code. Do not replace or
add any software to the DISH 921 DVR with items compiled from these source trees.
Doing so will void all warranties and cause the unit to fail.'"
A larger media conglomerate fulfilling their end of the bargain? I think I like Charlie:)
On a more serious note, it's good to see some companies actually doing the right thing(aka the anti-SCO).
Probably that they have included proprietary drivers.
Don't try and make some code that'll fit in place of our proprietary code - YOU CAN'T DO IT!
*DrugCheese rants*
Some of the ways companies try to avoid complying with the spirit of the GPL, even if they comply with its letter:
1. The "Vogon" strategy... the source code is available on the web site but you have to go down the stairs, look in the bottom shelf of a filing cabinet behind a locked door with a sign "beware of the leopard" on it.
2. The "Proprietary pieces" strategy... the source code is released, oh yes, but with significant pieces missing.
3. The "Under development" strategy... coming soon folks, as soon as we get it ready.
All these are quite hard to sustain.
But what really amazes me is how slow companies like Dish are to understand the benefits that the GPL brings them. They are building on top of commodity software. They have access to hundreds of skilled engineers at little or no cost. These people ask nothing better than to act as a volunteer R&D department, in exchange for appropriate credit and possibly some long term kudos.
But no... instead we get these "compliance" releases, basically useless.
The key is this: if you are selling a device and your software is GPLd, you have created a platform and you can potentially sell 10, 100 times more if you provide a decent product at a reasonable cost.
Not only does it make excellent business sense to re-release improvements to GPL'd software as cleanly and transparently as possibly, but it makes sense to release proprietary software exactly the same way.
My blog
This is an obvious violation of the spirit of the GPL. From the Preamble:
Of course, they are well within their rights to say that modifying the software will void their warranty, but they can't forbid you to modify the software, and they shouldn't rig the system so that it intentionally fails if the software is modified.
Pretty much depends on your definition of "linking in proprietary code". If the devices boots into Linux, but there are no applications to start (because they are proprietary and so you didn't have the source to compile them), so it doesn't do anything, that's not against the GPL - neither letter nor spirit of the GPL. You still get the source for the parts based on the GPL - but you'd have to write your own application software to run on top of it.
GPL is viral no?
Look at nVidias drivers. There's nothing but a stub in the kernel. The rest is in userspace and closed. Everyone seems ok with that. And any user-space program running on top of Linux can be non-free/closed.
Just because they are required to share all code that is being linked to, doesn't mean it is complete or in reality useful. That being said, I don't know anything about what this specific code is missing.
Kjella
Live today, because you never know what tomorrow brings
I didn't think that you could mix proprietry and gpl code? How are they releasing parts of a source code tree - I thought it was all or nothing if you include GPL in your source?
Well kinda... What you do is write an abstraction layer, kinda of a hook into your proprietry software. You'll need to release the abstraction layer (The functions and routines that call GPL routines and use the variables from the GPL modules) but not the proprietry stuff.That is perfectly legal (not neccaryly ethical) and many companies do it.
It would look something like this (assume code sprinkled in different source files
-- Ed Bugg --You have freedom of choice, but not of consequences.--
They used GPL code. Anything they modified, I presume, is re-released. The fact that they call external code that you cannot have access to is your problem.
If you give people a free hammer to use any way they wish, you cannot be justified when they make a building that you are not allowed to enter. GPL gives people the freedom to use it as the people see fit as long as they do not try keep the source code to themselves. Apple has not.
What you are really mad about is that you want anything the GPL code to which it is linked to be free as well. If this is what your idea of GPL means, then I can understand why Gates calls GPL viral. Your idea is viral and Apple's proprietary code is not yours to have. KDE's team was naive to expect they would get a free lunch in return for handing out free lunches. The GPL's purpose is to keep the code free, not its use.
Bel, the mostly sane.. "Of course I can't see anything! I'm standing on the shoulders of idiots." -- Me
Perhaps they have violated the spirit, but I don't beleive they have actually violated GPL. The requirement is to share code, not share code that can be "effectively backported." They have given proper credit to Konqueror and the developers, and that's all the "FOSS community" really asks for. This is like the "I bought her a nice dinner and she won't put out!" argument. It may be irritating, but its not theivery.
http://en.wikipedia.org/wiki/Signature_bloc
Yes, the community can benefit from it. Not in they way they might like, but still, they can still benefit from it. The source code is available, they can use that source code to get ideas. What Apple is doing is perfectly fine and above all, legally and morally OK.
Insanity: doing the same thing over and over again and expecting different results.
A "preamble" or "spirit" is not a legal obligation.
a) Apple is under no requirement to release individual patches, nor any big patch at all. Only the complete source.
b) Apple is under no obligation to give anything at all to the KHTML team (only to those who got their browser as part of a Mac).
c) The source files as they stand are obviously the "perferred form" of editing the source code internally in Apple. The GPL does not cover any other form of material, such as structural documents, documentation, bug database or any other material required to understand the source. If anything, it is an oversight of the GPL, not Apple.
In short, you are asking for kindness above and beyond their obligations. They have forked the project, and I don't see why they should have to maintain someone else's code tree. Are the *BSDs required to make compatible patches, because they came from the same source? No. I assume Apple has released everything they are required to under the GPL, and so your allegations of closing the source like a BSD license is groundless, as are your allegations of a GPL violation. If I had mod points I would mod you as -1, Troll, UID not withstanding.
Kjella
Live today, because you never know what tomorrow brings
I think most businesses still underestimate the added value it gives to customers, if products can be extended/upgraded in 'unintended' ways. I suppose the thinking may be something like "this year, we sell you something with a fixed set of functions, so if you want something extra that we come up with next year, then you'll have to buy again". If customers can upgrade and extend functionality themselves, the product may last a lot longer, and businesses may feel they lose out on sales of newer products. And maybe business feel that added value for customers != added value for the company. Note this is a lot of speculation on my part.
What they fail to realize, is that a longer lasting product is one that is a) more appreciated, and b) is worth more (=could be sold at a higher price). It's no different from the pricing difference between a cheap model car, and say... a <insert your favourite top-of-the-line car maker here>. The latter is a lot more expensive, but still very much worth its money. Not only because of the name, but by including quality parts, more attention to detail, better service, and so forth. Both cars will get you from A to B, but the expensive model may even be cheaper... in the long run, when you drive enough miles in it. And by breaking down less often, and give you more time before you need a new car.
The 'quality' part gives a product a higher profit margin, and the 'customer satisfaction' keeps customers coming back. So that added customer value does equal added value for the company.
It just shows that few companies understand this, or prefer to go for the quick buck as opposed to keeping their customers happy for a long time.
It's entirely fair for a manufacturer to state that the warranty does not apply if you start "customising" the product with new code and builds. How does the manufacturer know that your cross-compilation of the firmware didn't produce a bad image?
They only get to disclaim the warranty as far as the third party product caused the fault. Say you compile a new firmware, image it, and then your DVR won't boot any more. Chances are, your firmware's responsible and no warranty for you if you can't reflash it. On the other hand, if your custom firmware is working peachily and the power supply fails then they still have to replace the power supply, because your firmware wasn't responsible.
Same with car parts and printer cartridges; orginial manufacturers like to threaten voided warranties, but they can only do so when the fault is in the third party part, or a direct result of using it.
Remember kids, it's all fun and games until someone commits wholesale galactic genocide.
Whether it says so in the license or not, Linux isn't really GPL, but QGPL (quasi-GPL). There has been long-standing permission for binary, closed source drivers. Nearly all of the codee has been contributed during this period. The actions of the authors supercede the letter of the license.
hawk, esq.
Whining like this is why more companies should look at using BSD licensed code instead of GPL.
Many companies using BSD licensed code give back to the community. If they don't want to, that's cool too as development will continue.
The thing I've always wondered about is why all these companies aren't using *BSD for their OS. There's lots of support for embedded BSD and it makes this whole GPL problem go away.
.... er, hell. :-)
The reason is simple.
Techies write code, and their main interest is in functionality. With rare exceptions, they won't choose imported code on the basis of its license.
Non-technical people market products, and they have no clue about what goes into them.
It's a partnership made in heaven
Only a GPL developer would think not releasing source code is a problem.
I agree. I think the Linux community is shooting themselves in the foot by pissing on every embedded systems manufacturer that decides to use Linux. Hell, not even the dominating and subjugating evil nasty nazi <gasp$gt; proprietary embedded OS vendors treat their customers like rotting pond scum. But Linux advocates do. Like a dog that's been kicked one too many times, eventually the commercial embedded users are going to look elsewhere.
Don't blame me, I didn't vote for either of them!
GPL v3 needs to make it clear that replacement of the released GPL'd parts of a proprietary system by recompiled (but not modified) versions must be permitted, ie. the system should continue to work.
Without that key clause, access to the source code under GPL is worthless.
Because my 721 ought to be able to run Firefox and Thunderbird, damnit, and it can't because of some paranoia. And play MP3s. And have a decent screensaver
Why the F___ do you need to run FireFox, Thunderbird, play MP3s and install screen savers on your god damned DVR!?!?
I swear, this is why companies are hesitant to use Linux in stuff, because there's people who demand to know any trade secret stuff for FREE because they feel they NEED it to do shit the device was never designed for. I love Linux as much as the next guy (most of my servers are Gentoo, Red Hat, and FreeBSD) but this is seriously going to drive people to the FreeBSD end of things because their licence isn't full of whiny people who feel they deserve everything for free. I can't STAND the people on here who think the world should come barreling to their doorstep for FREE because they have a notion of "Free Software." Ya know what? Free software is great. I use quite a bit and give back when I can. As a programmer and IT guy, I'm also very fond of a notion called "Compensation for my effort and time" and if all the world is free software, well, there goes half the industry because no one's getting paid for writing software. But thats a completely different arguement entirely.
Companies like Dish Network LOOSE MONEY because people crack the cards and get free services. They cut down on this by making their units "Black Boxes" or part of them, in this case... If you can run ANY old code on one of these things, the card cracking will SURGE as you can put all your nifty hacking tools STRAIGHT on the box... companies like to make MONEY and can't do that if shit happens. Don't like it? Don't buy their stuff. Go out and make your own Dish Network compatible DVR out of a bunch of PCBs and solder, code your own Linux for it, release it for free with no compensation, and Dish will go use other, more propritery shit and you'll complain some more.
Sorry for this flame/tangent, but the attitudes on here for crap like this and Apple's work with KHTML just makes me sick.
Viva La Revolucion! Buy a Mac!
But they are giving you exactly this ability; they are simply advising you against doing it in practice, because they won't offer you any support if you muck things up.
Saying "replacing any shipping code with your own will void your warranty" would OK. But that's not what they are saying.
They are saying "Do not replace or add any software to the DISH 921 DVR with items compiled from these source trees. Doing so will [...] cause the unit to fail." No "might" or "may", but "will", implying that there is some checksumming going on there that explicitly makes the unit fail if you attempt to hack it in any way.
And it doesn't matter whether their threat is empty or not--risking several hundred dollars is too much to find out.
That's a very interesting way of describing the situation. I like it. It provides a very high-level point of view that I had not been forced to think about before.
Keep in mind that there's a serious flaw in the AC's argument. Specifically, he said "The point is, that sooner or later, if enough 'starter cool shit' is out there, it would be virtually impossibly to write code that wasn't infected with the GPL". The last bit, that it would become impossible to write non-GPL code, is stated as though self-evident, but it's not, for at least three reasons.
First, it is possible for proprietary code to use GPL code to do "cool shit" without being a derived work. Any argument otherwise would likewise mean it's impossible to write a Windows program that isn't a derived work of Microsoft Windows. Yes, this may violate the spirit of the GPL but, IMO, it's important.
Second, it postulates a world in which there exist technologies that are only implemented with GPL'd code, and which are also too difficult for anyone to reimplement in a commercial setting. Given that complex, difficult code is easier to create in a commercial setting (because it's easier to focus a group of people very intently on one task when they're being paid for that task, and don't have to worry about how to support themselves), that's hard to accept.
Third, it ignores the fact that it is often possible to acquire a commercial license to GPL code, depending on the history of the code in question and the idealism of its owners.
I think I would rather both worlds have their way, instead of one license being viral and forcing its way.
This is a misapprehension on your part. The GPL is no more, or less, viral than any other copyright license, because it is in fact copyright law which is viral. Copyright law says that as the author of a particular expressive work, I have certain rights with respect to how that work is used. One of my exclusive rights is the creation of "derivative" works, where "derivative work" may be loosely defined as "any work that includes a copy of my work".
So, if I give you a copy of my work, you have no right under copyright law to create a derivative work unless I give you that right. Further, even if I give you permission to create a derivative work, because it includes my work, you cannot create additional copies without my permission.
None of that has anything to do with the GPL, it's all in copyright law.
What the GPL does (if I choose to license my code under it) is provide you with some of those rights, but it carefully avoids giving you the right to distribute my work under terms other than the GPL, allowing copyright law's basic restrictions to shine through in that case.
Compare this with a commercial source license. Suppose you got a copy of the source code for Windows XP, as part of a shared source license or whatever, and further suppose you decided to make and publish your own operating system that included some of Microsoft's code. What would Microsoft do? Microsoft would also rely on copyright law's restrictions to prevent you from doing that.
I had better go and do some more learning about the open source licenses instead of relying on opinions
Learning is always a good idea. In addition to the licenses, you should also read the law, since it provides the subtext to all of the licenses. It's Title 17 in the US Code, available at copyright.gov. Although it's long, you actually don't have to read all of it; it has a table of contents and it's pretty easy to see which parts matter.
Note to ACs: I usually delete AC replies without reading them. If you want to talk to me, log in.
Oh, really? If the backtick operator doesn't qualify as a mechanism of mere aggregation, then it's hard to imagine what could qualify.
The backtick operator can execute any executable on the system, to say nothing of arbitary shell scripts and sequences of shell commands. If backticks can "infect" code, so can bash. I don't think even the most fanatical free software zealot has ever pushed for that interpretation.
It seems to me that it's all a question of interfaces. If someone designs GPL software with a well defined interface, then you're free to write non GPL software that uses that interface. If there is no interface and you're changing the files in the original software, then the GPL applies.
Kernel modules are far more intimately connected to GPL software than an arbitatry executable is to Perl. And the Linux kernel development community seems count a healthy contingent of Free Software devotees amongst its number. Yet few if any people seem to consider that proprietory kernel modules are "tainted" by their association with the kernel. Quite the reverse in fact.
Nor does the compilation issue change matters. If I can write a compiler and use it to compile code that you have copyrighted. However there is no licence in existence under which that process of compilation grants me the the copyright to your code.
Don't let THEM immanentize the Eschaton!
eventually the commercial embedded users are going to look elsewhere.
Go for it. If you don't want the deal we're offering, go someplace else. I hardly see why it's a big deal if someone can't get a free ride on the exact terms they want. If you want a BSD license, use a BSD system, or any other system with similar licensing.
not even the [...] proprietary embedded OS vendors treat their customers like rotting pond scum.
They get paid. Start failing to live up to your agreement with these vendors--stop paying the price that was charged--and they'll stop treating you like the customer you aren't and more like the thief you are.