Forgot your password?
typodupeerror
Television Media GNU is Not Unix

Dish Network Dishes Source Code for DVR 337

Posted by CowboyNeal
from the half-the-battle dept.
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.'"
This discussion has been archived. No new comments can be posted.

Dish Network Dishes Source Code for DVR

Comments Filter:
  • by gimpboy (34912) <john...m...harrold@@@gmail...com> on Saturday May 14, 2005 @11:01AM (#12529237) Homepage
    Actually, GPL is the General Public License [gnu.org].
  • cool (Score:2, Insightful)

    by sabernet (751826)
    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).
    • Re:cool (Score:3, Informative)

      by Curtman (556920)
      A larger media conglomerate fulfilling their end of the bargain?

      Are they though? I don't care to RTFA to find out, but doesn't this:

      You cannot create a working DISH 921 DVR software build without the additional proprietary code.

      ... go directly against this [gnu.org]:

      You have a GPL'ed program that I'd like to link with my code to build a proprietary program. Does the fact that I link with your program mean I have to GPL my program?

      Yes.


      I thought this was what the LGPL was created to allow peopl
      • Re:cool (Score:3, Insightful)

        by Bradee-oh! (459922)
        This point is exactly what I was thinking the moment I read that story and they seem to be in violation.

        However, I've always wondered (and maybe there's a simple answer for this but googling it would help only me and keep it out of the discussion) - What if you ran the GPL code and your proprietary code seperately (different processes?) and just had them communicate via IPC? Sockets, pipes, shared memory... whatever. It seems like a cheap way around that rule in the GPL but I fear that it is valid...?
        • It's actually a cheap way to do it, that would alleviate all this stupid "GPL is cancer" fud.

          The GPL isn't meant to be invasive, if you write your own seperate program, it is allowed to coexist with GPL programs on the same machine. Otherwise, IE users wouldn't be allowed to access an Apache website, for instance...
        • Re:cool (Score:3, Interesting)

          by Zeinfeld (263942)
          This point is exactly what I was thinking the moment I read that story and they seem to be in violation.

          Could people stop the open source religious wanking for a few minutes and work out if the code that has been released allows something usefull to be done? Its not like anything in this thread has not been said a few million times already.

          OK they have checksums, big deal, look for the file with the checksums in it or find where the public key is stored. I would guess they do this because they updat

      • Re:cool (Score:4, Informative)

        by Arker (91948) on Saturday May 14, 2005 @03:39PM (#12530874) Homepage
        They're ok legally if they aren't linking the code - just communicating through socket calls, etc. No different than running, say WordPerfect or Oracle on Linux - as long as the proprietary stuff is stand-alone and not linked it's not a legal problem.

        However, if they are correct that installing binaries compiled from this code release will cause their PVR to stop functioning, that sounds to me like they aren't actually in compliance. If the proprietary stuff really isn't linked, and the code they released really is the code for the free software in the system, then binaries compiled from it (assuming the same compiler and settings) would be byte for byte identical with what's already on the PVR.

        So, it seems to me they're lying about one thing or the other.
  • Odd caveat (Score:5, Interesting)

    by Shaper_pmp (825142) on Saturday May 14, 2005 @11:03AM (#12529247)
    "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.'""

    Is this the normal "no user-serviceable parts inside" caveat, or does it suggest that they, in fact, haven't released all the modifications to GPLed code in their product?
    • Re:Odd caveat (Score:4, Insightful)

      by lachlan76 (770870) on Saturday May 14, 2005 @11:05AM (#12529256)
      Probably that they have included proprietary drivers.
    • Re:Odd caveat (Score:4, Interesting)

      by Anonymous Coward on Saturday May 14, 2005 @11:08AM (#12529271)
      It's the latter. The 921/721 kernel does checksumming on various binaries upon mounting the root partition to make sure they haven't been modified, and that part of the code is MIA.
      • Proprietary check-summing? Perhaps more research is in order?
        • Re:Odd caveat (Score:4, Informative)

          by Faw (33935) on Sunday May 15, 2005 @10:17AM (#12535364)
          I have checked DishLinux for a while (I wanted to add software of my own to the 721) but unfortunately it seems every executable is encrypted with PGP. The loader decrypts it and runs it.

          Also there is a file in the root partition that seems to be a list of files on the disk, also PGP signed. When the system boots it checks and if there is any differences between the list and the disk and if there are any it does a full reinstall.

          If anyone wants to know more go here [satelliteguys.us] and here [satelliteguys.us] . These are 2 threads on SatelliteGuys [satelliteguys.us] detailing what I found out while replacing the hard drive.
    • That and the fact that they look to be releasing only their Linux kernel, a few basic utilities and games... not the actual high level DVR software.

      From the looks of it (and not surprisingly) there is no code related to the actual DVR functionality, nor interfacing with 8VSB or QPSK demodulators.
    • Could be the apps in the PVR are digitally signed to prevent them being replaced / infected. A home-compiled module would lack the necessary signature.
    • Re:Odd caveat (Score:2, Informative)

      by Lord Kano (13027)
      As someone who used to work for that company, I'd be willing to bet that the DVR will simply refuse to work if unblessed software is loaded.

      The original DishPlayers *COULD* be upgraded with much larger hard drives than they originally came with. The company found out that people were doing this and updated the software so that the units would refuse to run if a hard drive larger than the original was in place.

      They said that it was about compatibility issues, I suspect that it was because they wanted to fo
  • by DrugCheese (266151) on Saturday May 14, 2005 @11:08AM (#12529273)
    Don't try and make some code that'll fit in place of our proprietary code - YOU CAN'T DO IT!
    • It would be of course interesting to know if they are holding something back or just keeping their own code private... but doesn't things like the DMCA prevent "the community" from taking a look...

      If it is something private, non-GPL code is it likely to be something small but critical like some driver? or is it likely to be something resulting from 1000's of staff hours..?

      Perhaps we will never know.
  • by pieterh (196118) on Saturday May 14, 2005 @11:13AM (#12529298) Homepage
    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.
    • I find it a bit strange that a company that chooses to use open source code wants to hide the source. If they wanted to hide the source why didn't they just make their own code instead of using someone elses?
    • the vogon strategy you suggest doesn't sound terribly vogon to me, more like terrestrial bypass planning.
    • by Bloater (12932) on Saturday May 14, 2005 @11:36AM (#12529436) Homepage Journal
      The problem is they are building on top of commodity hardware, with the only advantage being the software. A competitive market has no room for openness. In such a market, every dollar you grow is a dollar that your competition shrinks. You don't want that to happen the other way around. For everything you do that helps your competitor, your competitor grows a little faster. That means you grow a little slower or shrink.

      Embedded consumer entertainment appliances are a very, very competitive market. That's why prices are so low, and there are so many small players. All those niche's have converged to one market leaving it over-crowded and over-supplied. Nobody can be expected to give up their share of that market without at least a fight.
      • by technothrasher (689062) on Saturday May 14, 2005 @01:06PM (#12529983)
        he problem is they are building on top of commodity hardware, with the only advantage being the software. A competitive market has no room for openness.

        Exactly. 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.

    • But what really amazes me is how slow companies like Dish are to understand the benefits that the GPL brings them. (..) 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.

      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 li

      • Not only that, but the 'tinkerers' will develop the new features *for* you, that you can then take, incorporate into your own release, and sell it to the non-tinkerers.
        • One major side-effect of opening sources is that it also opens your market to every wannabe out there. Since the PVR software is the only added value on top of commodity hardware, releasing the PVR software's sources would allow everybody to market their own clones.

          Releasing sources for non-profit stuff is not a problem but releasing sources which represent your only value-added competitive asset in a highly volatile market is fundamentally suicidal. The commercial market place is a hostile, cannibalistic
    • "But what really amazes me is how slow companies like Dish are to understand the benefits that the GPL brings them. "

      The GPL does not bring benefits to all companies.

      "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."

      It does not make good business sense when a cheaper competitor takes your work and sells a product at lower cost, in what is a market w
  • by McGregorMortis (536146) on Saturday May 14, 2005 @11:14AM (#12529302)
    "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."

    The whole point of the GPL is that users can make modify the code. If the deriviative code they have released cannot be loaded without rendering the unit unusable, then they have clearly violated the spirit of the GPL. Maybe they've found some kind of loophole, I don't know.

    If the device will not work without linking in proprietary code, well, then they gots themselves a problem. But it's their problem, not the GPL's. Either the proprietary code goes, or the GPL code goes.
    • by theonlyholle (720311) on Saturday May 14, 2005 @11:21AM (#12529336) Homepage
      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.
    • I can't comment on the device failing as a result of loading the code.

      That being said, the part about voiding the warranty is hardly unreasonable. The unit is designed to run software that DISH Network distributes with it and not other software. Since GPL software is distributed without any warranty, and loading the "third party" software voids the original warranty, you would not have any warranty on the unit. I use the term third party software in a loose sense because it could be the same software but s
    • It's only their problem if the GPL code is linked to the proprietary stuff. If they pipe stuff through or don't directly interface the two then it's not an issue.

      OR at least thats how I understood the GPL to work.

      You should be able to discover from the code they're released what the case is but please don't tar them until you or someone else has done the research and had it ratified.
    • You can take the code and use it in your own project and even write replacements for the proprietary code and make your own DVR boxes. It would be unwise to try to use the GPL to usurp control of the hardware and their support policies. They probably don't want people running modified binaries on their boxes, damaging them, and then just writing the original disk contents back and taking the box in to get a brand new one.
    • The whole point of the GPL is that users can make modify the code.

      And in this case, you can modify the code. It just doesn't do anything without their proprietary codebase.

      Simple hypothetical scenario - They wrote a totally closed program that transfers data from a hardware device (in this case, some form of PVR card) to a file.

      They then made almost trivial modifications to GPL'd software to let it use those files, effectively giving them a "real" PVR suite for just the R&D cost of a single, nne
    • "The whole point of the GPL is that users can make modify the code. If the deriviative code they have released cannot be loaded without rendering the unit unusable, then they have clearly violated the spirit of the GPL."

      You are wrong. The whole point about the GPL is to "keep the software free (free as in open, available, to the community)": this "guarantee of the GPL" refers to the software only, _not_ the product that the software may form part of.

      It's entirely fair for a manufacturer to state that the
      • 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. O

        • "They only get to disclaim the warranty as far as the third party product caused the fault."

          It's not that straight forward, so I'm not sure that you're correct.

          "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."

          What if the new firmware used the platform in a different way so as to cause excessive power drain beyond the original design?

          I'm not sure how these problems are han
    • The whole point of the GPL is that users can make modify the code.

      This is true.

      If the deriviative code they have released cannot be loaded without rendering the unit unusable, then they have clearly violated the spirit of the GPL. Maybe they've found some kind of loophole, I don't know.

      This is not true. The GPL's No Warranty section explicitly states:

      THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECE

  • Nice to see (Score:4, Interesting)

    by Anonymous Coward on Saturday May 14, 2005 @11:16AM (#12529318)
    This is a little off topic, but it's nice to see Dish with a little honesty for a change. When I started EFT service after being with them for 2 years. They turned my service off for non-payment twice after the EFT had started withdrawing funds. Like clockwork, every 2 months it was turned off. When I called them, they turned it back on, but then I got charged a reconnect and late fees.

    Second time I told them not to turn it back on and I was cancelling service. I turned around and got DTV that day and canelled any EFT from dish.

    Long story short, 6 months later I got a collection letter for $400. Turns out they turned the service back on and charged me for 2 months of service I didn't use plus the receiver I sent back to them. The collections still there with a note saying that it's invalid. After numerous conversations, they still swear that I owe them 2 months of service and a receiver even though I've sent them records of the receiver sent back to them via UPS and the start date of my DTV service.

    I've spoken with 9 different Dish customers that have had similar cases but kept service. I also had a friend that took a job with them. They even lied to him about working around his school. He ended up having to quit because they wouldn't schedule him around his classes.

    Anyone paying Dish for service deserves the screwing they're getting.
    • by Anonymous Coward on Saturday May 14, 2005 @11:50AM (#12529525)
      Under the Fair Credit Reporting Act it is up to them to prove that you didn't cancel service and not the other way around. In a court case with your shipping information you have the preponderence of evidence. Send them a certified letter telling Dish they have 30-days to send you their evidence or they must cease all collection efforts. Be sure to reference the Reporting act and be sure to detail the damages you have suffered due to the lower credit score and higher interest rates they have caused. The Act specifies that recovery of damages is permissible. If they do not comply, talk to an attorney as you have a case. They count on people not knowing the rules....
    • I am a lawyer, but this is not legal advice. I am encouraging you to get some from someone licensed in your jurisdiction, however.

      *If* you can show that you returned it, properly (by credit reporting agency standards) disputed it, and that it's still showing, you should be talking to an attorney who handles credit report problems.

      They love these.

      There probably won't even be a consultation fee . . .

      hawk, esq.
  • by a_greer2005 (863926) on Saturday May 14, 2005 @11:17AM (#12529321)
    warranties? warranties???? This is slashdot! WE DONT NEEDNO STINKING WARRENTIES!!!
  • Violating the GPL (Score:2, Insightful)

    by Trevin (570491)

    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.

    This is an obvious violation of the spirit of the GPL. From the Preamble:

    The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software ...

    When we speak of free software, we are referring to

    • by jericho4.0 (565125)
      Modifying the software doesn't void the warranty, modifiying the hardware does.
    • by l2718 (514756)

      There may be a GPL violation here, actually. They say:

      You cannot create a working DISH 921 DVR software build without the additional proprietary code.

      There are two ways to interpret this statement; I think they are honest and mean the first, but someone (not me) might want to verify that:

      1. The OS for the device derives from GNU/Linux/etc and is covered by the GPL; they run their written-from-scratch DVR software on top. The code they released will compile and run, but will not give you a DVR by
      • You're assuming it's a monolithic executable. I'm sure it's not. It's proprietary stuff running on top of (possibly modified and released) Linux, with some LGPL libs (released I'm sure with any mods) and some GPL executables that are part of Linux userspace.

        Totally within the bounds of GPL.
  • They did release the .config file used to build their kernel. If you don't want to download their whole "fLinux" source tree just to look at it, I put it up on my web space [jhu.edu]. Give it a look-over; I imagine this would be the easiest component of the device to replace. Modify the kernel with e.g. Sebek [honeynet.org] and you should be able to get a good idea of what's going on under the hood.

    Also, the GNU_Source_Code.zip includes fLinux.tar.gz and games.tar.gz, so if you get the zip file the other two are redundant.
  • by flood6 (852877) on Saturday May 14, 2005 @11:25AM (#12529370) Homepage Journal
    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.

    Do not stare at DISH 921 DVR, do not taunt DISH 921 DVR, if DISH 921 DVR begins to smoke, seek shelter and cover head.
  • by Xeo 024 (755161) on Saturday May 14, 2005 @11:39AM (#12529454)
    If anyone is interested, the DISH 721 DVR source code [dishnetwork.com] is also available.
  • i.e. non-compliant (Score:5, Informative)

    by Dwonis (52652) * on Saturday May 14, 2005 @11:59AM (#12529585)
    You cannot create a working DISH 921 DVR software build without the additional proprietary code.

    That doesn't sound like GPL-compliance to me. From the GPL [gnu.org]:

    The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable.
    • by Anonymous Coward
      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.
    • by evilviper (135110)

      The source code for a work means the preferred form of the work for making modifications to it.

      What does this have to do with anything? You are free to make modifications to the code all you want... That does NOT mean they have to give you free license to propritary software that is necessary in addition to it, and it sure as hell doesn't mean they have to make their hardware work with anything you might want to run on it.

      They are meeting their GPL obligations 100%.

      • by Alsee (515537)
        They are meeting their GPL obligations 100%.

        They said that compiling the supplied source and replacing that portion of the code in the machine causes it to fail.

        One of those two statements is false. Either they lied that it won't work, or you are wrong *and* they lied about complying with the GPL.

        You are certainly correct that they do not need to give you any source to non-GPL files. You simply leave any non-GPL files in place.

        -
  • by cahiha (873942) on Saturday May 14, 2005 @12:04PM (#12529623)
    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.'"

    Almost the whole point of the GPL is that you can do exactly this: you should be able to change the behavior of GPL'ed software components and replace the existing versions of it.

    I suspect future versions of the GPL are going to try to limit these kinds of abuses: if you distribute systems containing GPL-derived binaries, you must ensure that people can reasonably replace your GPL'ed software components with components they recompiled. You should not be permitted to use either cryptographic means, warranties, patents, or proprietary development tools to prevent that.
    • Almost the whole point of the GPL is that you can do exactly this: you should be able to change the behavior of GPL'ed software components and replace the existing versions of it.

      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. The GPL says you have a right to hack this code, not that you have a right for technical support while doing that.

      I suspect future versions of the GPL a

      • 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 s
  • by telemonster (605238) on Saturday May 14, 2005 @12:07PM (#12529636) Homepage
    they developed on BSD.

    • 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.
      • 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 p
  • I own a DISH 721, which is closely related, and also runs a Linux OS.

    I've always wondered how they are able to make this work, legally. Seems to me that you can't compile a working Linux installation out of what they have provided. They have made modifications to the Linux kernel itself. They have presumably made changes to call unreleased code from within Linux. Ity seems to me that that unreleased code is bound to the GPL. The LGPL allows non-LGPL code to be called form LGPL code, but the full GPL doesn'
    • 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
  • Anyone knows if the nagra2 (yellow) cards are hacked?
  • Software vendor XXX is releasing a commercial piece of software but includes a GPL component like LAME.

    Since it is a codec they are using do they need to release source for LAME (+modifications) in addition to source for their entire application?

Philogyny recapitulates erogeny; erogeny recapitulates philogyny.

Working...