Home > News > The shameful state of XBox 1 homebrew and the GPL

The shameful state of XBox 1 homebrew and the GPL

December 18th, 2012 Leave a comment Go to comments

There is a large amount of useful software available for the XBox1. From original apps, to ports of emulators from other platforms. The large majority are ports of existing software. This was made possible usually due to the original authors making the source code available, often under the GPL licence. The idea is that you are allowed to use, and modify the code, but any changes will also come under the same licence – meaning you must make the source available to others.

Current XBox 1 developers seem to have no respect for the GPL and no respect for the work of the original authors of the software they have ported. They are building on top of others work, but keeping the changes private. This is an issue that has been bothering me for some time, but has gotten significantly worse over recent times. We wouldn’t even have the large selection of emulators had the source not already been available. It seems a pretty easy concept to grasp – we benefit from  the source licence of the original software, so we should follow suite and comply with the original authors wishes. Licence aside, it’s still the respectful and decent thing to do.

What is happening currently, is not only a breach of the original licences, but very disrespectful to the original authors.

I have read countless excuses, the most prominent one being “Author X will use our code if we release it and they don’t release theirs”. This isn’t an excuse though – if they are breaking the GPL, then why not contact them about it (or the original authors of the software). The old saying “Two wrongs don’t make a right”. Devs should look at their own compliance first.

XBMC is GPL licenced for example, and as such we make all XBMC4XBOX code available in a public code repository – https://www.xbmc4xbox.org.uk/development/ – if you use code from XBMC in your own GPL project, you are expected to release the source. (http://xbmc.org/team-xbmc/2003/10/31/please-respect-the-gpl-license/

There have been discussions (some heated) about this recently. I happened to be reading a forum earlier that suggested I was breaking the GPL, by providing XBMC code to others who are not GPL compliant. This is of course nonsense – and I did no such thing. Our code is public, and the author in question took the patch from our repository. Thanking me in a readme is actually no thanks at all if you are breaking the source licence. Today was the first I had heard about it, and the code in question.

Because of this and the fact XBMC code was being used in a few of the emulators I wrote a polite request on the http://www.emuxtras.net forum for the sourcecode to a emulator update. Shortly after my post was deleted, so I asked again and queried the deleted post.

Pretty shameful state of affairs. How do you think all the original authors would feel – to see the way their hard work is being abused. This childish attitude has to stop. I am hoping when I get a reply later the author in question on emuxtras is going to do the decent thing.

That goes for the all the GPL emulators over at Emuxtras that are not released with source, coinops, and the XBMC based apps such as Dragon/Vision. Release your source code. Even better work on it in a public repository, and you can all benefit from each others improvements, as well as making it far easier for people to collaborate.

It’s worth noting this doesn’t happen in the other homebrew scenes. This bad behaviour seems an Xbox exclusive.

One last note:
Something that came up in an earlier discussion, was an accusation of double standards on our part, for arguing about the GPL and then providing builds created with the XDK, which is a breach of Microsoft’s end user licence. One wrong does not excuse another, but we will not be providing any new builds.

Categories: News Tags:
  1. xbox
    December 18th, 2012 at 16:14 | #1

    You never get the sources from xtras team never, come and join to coinops team. Wecan be friends

  2. BuZz
    December 18th, 2012 at 16:20 | #2

    xbox :

    You never get the sources from xtras team never, come and join to coinops team. Wecan be friends

    Unfortunately the author of Coinops is guilty of exactly the same thing. Should that change, let me know.

  3. theguy
    December 18th, 2012 at 16:50 | #3

    Seems to be the way of the future generations, taking others hard work and calling it their own. But whats even more troubling to me is their hard work was done so that we may all benefit and progress from it, what they are doing is discusting as it not only steals from the original authors but INHIBITS the progress which was the original plan for them to graciously make it public,,,,, VERY sad

  4. Chris
    December 18th, 2012 at 17:33 | #4

    “…but we will not be providing any new builds.” – So we all need to learn how to compile from source if we want updates for XBMC4XBOX?

    • BuZz
      December 18th, 2012 at 17:47 | #5

      You might find others doing builds, or helping out with this. This was actually always the case before when the XBox was supported by the main XBMC team.

  5. Micky
    December 18th, 2012 at 17:35 | #6

    So from how I understand it, they take the open source code (other peoples work) use it, then basically make “their” source closed?
    Leaving the GPL out of the argument (as I know nothing about it) that is pretty scummy behaviour.

    Very sad indeed, I was unaware of this issue (being an average user) & shall be removing the offending progs from my boxes.

    • BuZz
      December 18th, 2012 at 17:49 | #7

      That’s basically the gist of it.It would be a shame that you have to lose out as a user – I’m hoping that developers will realise their error and resolve it by releasing sources. It will also enable future development possible if they ever decide to pack it in, as someone could then take over (as mentioned by someone earlier – an important aspect of it)

  6. HCF
    December 19th, 2012 at 09:34 | #8

    Hi BuZz, I write this because I would like to give you my two cents in this matter. First of all I want to tell you that I love the work made in XBMC4Xbox, and I think that everybody in the Xbox-scene respects and admires your work (me too, of course!). But there is one thing in this post that really hurt me, so I am writing this with the hope that you re-read it and maybe change some things in that text (if you want… this is only my opinion).

    Please, think that if anyone reads this text, he can get the idea that “everybody making homebrew or emulators for every plattform is good, but the Xbox1 developers are bad”. This is what can be understood when you said: “It’s worth noting this doesn’t happen in the other homebrew scenes. This bad behaviour seems an Xbox exclusive.”. 🙁

    Although I am not a very important developer in the Xbox scene, I can give you several examples of the opposite thing. The example that has been more dramatic for me is the following: there is an Atari Jaguar emulator made by a wonderfull team during a lot of years, named Virtual Jaguar, which is open source (GPL). I spent a lot of time (way less than the authors of the original emulator, but fairly large too) to make a port for the XBox1 (Virtual JaguarX) and I managed to do it totally portable (the original Virtual Jaguar was not totally portable) by adapting the part related to the M68K processor and the GUI. I released the emulator, and I released the source code too, being compliant with the GPL license.

    A couple of weeks later, other ports appeared based on my portable sources. And none of them released the sources. Other ports have been made for other consoles not based on my sources (as they were made time before my release) and they did not release the sources neither. You can see that there is a port of Virtual Jaguar for Xbox360, PSP, Caanoo… I suggest that you search for the sources. None of them released the sources. But the sources in the Xbox1 emulator were released. In other words, this is the opposite situation to the one described in the text: only the Xbox1 scene was right in this case. And you won’t believe it, but some users of the Xbox360 port are asking that HCF “fixes” the Xbox360 emulator because savegames don’t work in Xbox360. Ridiculous… 🙁

    I write this because that sentence of the text hurt me (and it hurt more, because it came from someone who I respect and admire a lot). I think that it is not fair that you “demonize” the Xbox1 developers in this way, because readers of your forum can understand wrong things. The Xbox1 scene is a very cooperative one, in fact I think that it is one of the most cooperative ones. Take a look at all the opensource libraries that the huntsvegas team is hosting: a lot of libraries with available sources that make possible that other developers make our own games (SDL, Irrlicht, FakeGL…). Take a look to all the work released as open source by the Surreal64 CE team (sources of emulators for Nintendo 64, 3d0, Sega Saturn… and its wonderfull launcher!!!). Also, the ports of the homebrew SDL games come with their sources too. I am not going to post more examples because this post is already too long, but please think that the Xbox1 sceners have made A LOT of contributions, and many other scenes have not done any. And this is just the opposite that can be understood reading your sentence “It’s worth noting this doesn’t happen in the other homebrew scenes. This bad behaviour seems an Xbox exclusive.”. Please, consider re-reading your text and eventually writing it in a different way, as I think that it is not totally fair.

    I only wanted to say this now. Other day I would love that we could have a constructive discussion with other developers, about some of the situations that I guess you are concerned with. For example, the difficult situation where someone released a huge source code with a non-GPL license, and we want to merge it with a GPL source code (I have heard every kind of opinions here) but at the moment, my only concern was to say this, because I am seeing that people can understand that Xbox1 developers are bad, and you and me know that this is not right. 😉

    • BuZz
      December 19th, 2012 at 10:19 | #9

      My post isn’t saying there are not examples of it elsewhere, but when you consider almost every current active project on the Xbox 1 is closed source despite being based on work that is GPL etc – there are a few projects where the source is released, but ive seen no source for any improved emulator, nor other work derived from xbmc. I don’t think you should be hurt by the text if you are not one of the people who are not releasing sources.

      I take your point, but I actually still think my statement rings true when you look at the current releases. There are only a small number of things that get published with source.

      I don’t think anyone should be getting upset by my post if what they are complying with the source licence.

  7. HCF
    December 19th, 2012 at 10:54 | #10

    Never mind… I only was worried because there is many people who is not awared of the whole status of the Xbox1 scene, and I thought that they can understand wrong things if they read your post in a simplistic way. Obviously, if people reads your post with an open mind, they will know that every scene has good things and bad things. And I honestly don’t think that the Xbox1 scene is one of the worst in this terms.

    In fact, my previous post was not written thinking in you (as I said, I admire and respect your work a lot) but thinking in the people who could read that, and understand wrong things. That was the main reason why I wrote about some of the open projects with available sources for Xbox, and I kept the focus in that sentence about the Xbox1 scene.

    But please, don’t get offended or discouraged by my previous post, it was not an attack towards you (I’m very sorry if you understood it in that way), it was only an attempt to try to keep things more objective, thinking in people who could read this in the future.

    Once said this… don’t get discouraged, and go on with that awesome work! I would never wanted to write an attack towards the person who makes the application that makes my daughter happy 😉

    • BuZz
      December 19th, 2012 at 11:09 | #11

      I’m not offended – I have no problem with discussing it and I do see your point, but then if I rustle some feathers, and it encourages people to sit up and talk about it, then I’ve achieved something at least. It is also based from my own perspective, which of course may well differ from yours. I also will acknowledge that it is perhaps more apparent to me due to the fact the most active/vocal are the ones who are not releasing sources. Going to xbins.org and looking at the list of releases, most of them do not have recent sources available, although they could have the same developers in common.

      with an article such as this, there will always be stuff that could be changed here, or worded differently there. I’d rather not change it now, as it will make comments seem out of context. People can read the comments anyway and get differing views.

  8. Tim
    December 20th, 2012 at 01:18 | #12

    HI …. er …. so …… is this the end of XBMC for Xbox???? Can we PLEASE keep this community alive and happy and cooperating ….. I don’t use a single emulator, I love XBMC for xbox 1 and have supported it over the years with donations. I am not a programmer but am happy to learn whatever I need to do.

    I’m annoyed that the GPL is being ignored like this. Honestly I’m out of the emulator loop completly .

    I’m glad to help anyway I can ….. I have 2 XBOX 1’s running XBMC and just built one for my dad for Christmas ….. it’s my media device of choice … so whatever I can do to keep this alive …PLEASE let me know …


    “— …but we will not be providing any new builds.” – So we all need to learn how to compile “— from source if we want updates for XBMC4XBOX?

    “— BuZz
    — December 18th, 2012 at 17:47 | #5 Reply | Quote
    “—You might find others doing builds, or helping out with this. This was actually always the -“—- case before when the XBox was supported by the main XBMC team.

  9. professor_jonny
    December 20th, 2012 at 11:11 | #13

    Thanks Buzz this needed to be said , but it is a shame it needs to be said in the first place.

    There are countless discussions in the forums that really do tick me off and its just hard to bite your bottom lip some times.

    Maybe you stiring up the warer might make others buck their ideas up, but sadily I don’t hold my hopes up as it has been a long running issue.

    Is it really that hard to dump your uncompiled source somewhere or use a tracker?.

    I see lantus just releaced a new fbanext for the xbox360 and the source is in the zip with the binary on xbins why cant others do that?

    It just seems ludicrous.

  10. Chris
    December 20th, 2012 at 17:12 | #14

    So the previous builds done were or were not done by you guys? @BuZz

  11. BuZz
    December 21st, 2012 at 01:51 | #15

    historically the builds were done by 3rd parties.

  12. thepitt
    December 21st, 2012 at 13:48 | #16

    BuZz – I believe that you’re letting the others influence your decision due to the fact that they also use the MS SDK to compile their applications with. I don’t see any double standards going on as the source is readily available for XBMC4Xbox. Everything anyone does violates some sort of moral code, social norm, law, etc …. However, they are compiling modified source with the SDK and not releasing the new source via GPL requirements while you’re doing the same, except adhering to the GPL requirements. Therefore I see no reason to stop compiling the latest XBOX4Xbox builds as we all know the Microsoft SDK is the really only viable solution for producing quality programs in a normal manner.

  13. BuZz
    December 21st, 2012 at 18:26 | #17

    That is true, but actually the XBMC4XBOX team never did release builds before – so we are really just reverting back to how things were, which I am more comfortable with.

  14. Tim
    December 24th, 2012 at 03:08 | #18

    SO Buzz…. how about some discussion on how to compile and sort out the code??? if no one is building it anymore..???

    and hey seriously ….. all XBMC aside …

    Happy Christmas


    • BuZz
      December 24th, 2012 at 10:19 | #19

      There are some instructions on the wiki, which are linked to from this site under download. There are already other interesting discussions on the forum – I am assuming you havn’t checked 🙂

  15. destronger
    December 26th, 2012 at 04:03 | #20

    when i started working on fbl, the issue of bp taking work that snes6502/+T+ was brought up when i received the source from +T+. +T+ has been open about this in that he wanted to see if the work he did in fbl was being used in coinops. it was and continues to this day. but when a request per buzz over at emuxtras.net to release the source i had modified since +T+ no longer was working on it, i was kinda nervous in that respect. the main reason was bp and his utter lack of respect for the gpl. realizing that i was doing the exact same thing. per +T+: “your damned if you do, your damed if you don’t.” i did release the fbl v1.12 source in the usual places.

    i have yet to find a proper source for co5 at all anywhere… most of the sources bp releases are broken…

    anywho, my two cent experience…

  16. Hyper_Eye
    December 31st, 2012 at 20:57 | #21

    Thank you for starting this discussion. This has long been an issue that has concerned me but I didn’t want to start any drama and so never brought it up. We are discussing your blog post on emuxtras here: http://www.emuxtras.net/forum/viewtopic.php?f=8&t=2635

  17. Beelzebud
    January 1st, 2013 at 08:21 | #22

    Ok I tried really hard to find a way to build it myself, but it is literally impossible to find an executable for Visual C++ 2003. Hell, it was simple for me to find the XDK, so I’m puzzled. I suppose subscribing to MSDN is about my only option.

  18. BuZz
    January 1st, 2013 at 13:33 | #23

    Unfortunately it looks as though nothing has changed with their attitudes in general (Although it is good that a few do get it). I see the thread was closed by one of the people (Madmab) who is disregarding the GPL, which is convenient! I guess contacting the original emulator authors and informing them of the non compliance is the only action left or just ignoring them/not supporting them.

    The whole situation is horrible.

  19. Hyper_Eye
    January 1st, 2013 at 21:30 | #24

    Well I’m pretty disheartened by the whole thing. I’m going to take a break from Xbox for a while and see how I feel after some time has passed. Hopefully there will be some changes between now and then. Thanks for getting this issue back on the radar.

  20. simpleuser
    January 2nd, 2013 at 00:52 | #25

    I know nothing of your world and can only applaud you efforts on this project from the perspective of a simple user. I really can’t express how much enjoyment XBMC on XBOX1 has given me over the years. I spent this Xmas holiday showing my kids how their new tablets could hook up to the old box in the corner. It changed their view of technology completely; they realized they could be in control.
    I fully understand how you feel but please don’t walk away. You have made a huge contribution and it would be a tragedy if the actions of idiots caused you to leave it all behind. Smile ruefully and please keep doing what you do so well.


  21. Chris
    January 2nd, 2013 at 16:12 | #26


    I never knew that, and knowing is half the battle.

  22. BuZz
    January 2nd, 2013 at 16:16 | #27

    Don’t worry, I’m still here. The issues outlined are important, but I am not going to stop working on xbmc4xbox because of the actions of others. I’m happy you are still getting use out of XBMC and your xbox1 😉

  23. Restless
    January 15th, 2013 at 07:45 | #28

    The last part with the xdk. You would think that Microsoft would be kind of honored that people are still interested in developing for the xbox1. Since the Xbox1 is the best physical thing have created.

  24. Bret Linden
    January 28th, 2013 at 05:58 | #29

    I would like to offer a perspective from someone who
    -can not code beyond writing a simple batch file (and even then I have to refer to google for several pieces of it)
    -LOVES the Xbox1 scene, and has the attitude that you can have my Xbox1 when you pry it from my cold, dead hand.

    I LOVE the work that is done. I am nothing but grateful to all the folks who put their hard work into writing XBMC4Xbox, the various emulators, and the far-too-rare other projects still being developed for the Xbox1 platform. I am fully aware that all those folks are doing what they do as a labor of love, and none of them owe me anything.

    That said, I hate these issues, I hate these discussions, and I wish they would go away forever, both publicly and privately, and from all sides.

    As a user, to be blunt (not trying to disrespect anyone here), but I really don’t care about GPL’s or any other licensing agreements. I HATED the days when XBMC was only available in its source code (unless you looked REALLY hard for the binary), and I absolutely hate that it appears we’ve devolved back to that. If you guys are trying to make users happy (again, back to the whole “labor of love” thing and having people appreciate your hard work), then just put this whole thing out of your mind and make it stay out.

    Grateful users such as myself just want binaries available that can be downloaded easily and installed without too much headache and work well once installed. We don’t want to have to go back to that hyper-retarded “usual places” nonsense, and we don’t want to have to learn to compile source code just to install XBMC or an emulator. Again, I’m grateful for all the hard work, and again, I mean no disrespect, but if meeting the above-outlined desires of the average end-user isn’t your goal, then perhaps you should reevaluate why you’re investing all the time and hard work into the project to begin with.

    This place was GREAT a couple of months ago before this issue came up. Please, just go back to the way things were in November. The scene is an endangered species as it is without this sort of issue existing.

    Thanks for reading.

    • BuZz
      January 28th, 2013 at 10:12 | #30

      without the GPL our project wouldn’t exist. I recommend you read up on the subject further. Regarding builds (which is a separate issue from the GPL btw) we are just going back to how it was before July last year. We never provided builds before then – it was a short period of a few months when we did, and that was a mistake.

      You say you are grateful, but actually the contents of your message and lack of understanding shows the opposite. You can not care about the GPL (and hence our project), but without it, there would have been no XBMC4XBOX project at all. You need to understand that.

  25. Bret Linden
    January 28th, 2013 at 17:49 | #31

    I regret that my post was not taken in the spirit intended. Perhaps it is my lack of articulation skills…

    I am the end user. As such, it is not realistic, or fair, to expect me to be interested in and follow the backstage politics and controversies of programming and development. It is further unfair to equate that perspective to a lack of appreciation. I download an install the finished product. I love it. I literally use XBMC4Xbox each and every day for something (usually enjoying media files from my media server on my televisions.) I understand that other people made that for free. As the end user, do I really need to understand the how? Aren’t you happy that there are still folks who appreciate the hard work and enthusiastically and often use your finished product?

    Let me try to put it another way. You can’t control other people’s behavior, but you can control your own. That being the case…who cares what these other guys are doing? You’re obviously putting out a great product regardless of these guys and what code they aren’t releasing that they should. Just focus on what you’re doing, and keep doing what you’re doing. Ultimately, those other guys are irrelevant, or at least they should be to you. Making a post such as this puts them center stage and gives them attention that they otherwise would have never received.

    And, providing the builds was NOT a mistake. It was a practice that was LONG overdue, a practice that should have been employed all along, and a practice that should NEVER go away. And, it most definitely not a separate issue…your own post states that the builds went away because something these guys said to you got to you and it was reactionary to whatever was said. You took away a good thing from the scene because these guys got to you.

    • BuZz
      January 28th, 2013 at 18:42 | #32

      We care because we care about the license of our software (and how others use it). We care because without the xbmc code being GPL (or similar), we would have no product at all – you would not be running xbmc4xbox because it wouldn’t exist! You are still missing the point. You have not even understood the most basic points in the original post (or at least it seems that way to me).

      And just because you don’t care when people’s work gets ripped off etc, doesn’t mean it’s ok. Maybe if you put in the hours we did, you might think differently. Why not go to some other GPL project and tell them you don’t care and see if they like it. You will probably find (unsurprisingly) that they care too!

      I’m glad you find xbmc4xbox useful.

  26. RextheC
    January 31st, 2013 at 09:00 | #33

    PLEASE don`t stop your awesome work. According to many other users – I can`t life without xbmc4xbox.
    I`m from Germany and have used my xbox as mediacenter and more since the last 3-4 years.
    A lot of my friends and also my brothers were fascinating from all that stuff which can be realized by an old xbox1.
    Most of them get one by 30-40 euro and they are still satisfy and happy with this -all in one- solution.
    Over the years it has become like my own little child and now it have to die?No,please..I wouldn`t belive that.
    I only can hope and pray that you find a way to keep xbmc4xbox alive.
    Thank you BuZz so much for the very great work you have done (and hopefully you will even doing in future) for many people all around the world.
    ps.:Sry for spelling errors
    :like: xbmc4xbox