Pages: 1 2 3 »
  Print  
Author Topic: License Exemptions  (Read 9197 times)
Offline (Male) Josh @ Dreamland
Posted on: June 21, 2013, 05:47:38 am

Prince of all Goldfish
Developer
Location: Pittsburgh, PA, USA
Joined: Feb 2008
Posts: 2949

View Profile Email
Developers with tendencies to law are probably aware that ENIGMA is GPL. Whether ENIGMA is GPL or LGPL, we will run into shitloads of legal issues with people distributing our games. In principle, this is okay; we're not assholes, so we won't sue them for using our toolkit how it was intended to be used. However, as the number of contributors continues to expand out of check, the problem turns into a big chain of people to trust. Chains, weakest link, etc.

I haven't addressed this issue because I trust the current development team to not be giant dicks. However, the general (and correct) inclination of the userbase is to not trust us. The GPL gives us all the tools to be as proprietary as Yoyo, but in a way that is pleasing to Stallman instead of to Ballmer. Currently, any developer—that means any one of forthevin, HaRRiKiRi, IsmAvatar, myself,  polyfuck, or RobertBColton—any are capable of forcing someone to release the source to their game. This isn't the end of the world, obviously, but it's the end of the world to some of our userbase.

New developers are starting to show up at increasing rates. Now is the time to sort this shit. In case any of you were genuinely unaware of this issue, I apologize for leaving you in the dark about it.

The basic idea is that we need a custom Linking Exception similar to the one used in GCC. Basically, our linking exception would grant users the right to hard-link their game code to the engine when compiled using an "official" IDE. Here's the trick: How do we legally define an official IDE?

Call it selfish, but my personal inclination is to keep the code within the ENIGMA project, when closed-source. Basically, I want to allow a third party to make off with all engine code, provided that they do so in full free-and-open-source spirit; that is, with the intention of all derivative works being free and open-source, including user games. Why? It's not because I'm evil, or on a power trip.

Consider WINE. WINE is a great piece of software, in concept. In practice, it's too shitty to run Microsoft office. It's also X11-licensed. So one day, the now "Crossover Office" team decided to take WINE, fix it up professionally to be able to run MSO, and then close-source it and charge money. Puts a pit in my stomach.

Assuming we have a method for legal endorsement, this method should be conducive to our main goal, here: We need to provide incentive for any third-party distributors to contribute back to the project. That means we do not want people to fix up a critical piece of the engine that we're having trouble with, then close-source that part and charge money for it. We also, of course, don't want Yoyo making off with a chunk of ENIGMA of any size, but I don't think they'd reduce themselves to that level. They're too proud, and it's too risky for them.


Contributors:

If you hold any code in the project, I need your express and explicit permission to re-license your code according to an ENIGMA Linking Exception. The ENIGMA Linking Exception is not yet written; if you are versed in Legalese, or are an aspiring Richard Stallman, I would appreciate your help writing the exception.

If you have any aversion to the exception, I need to know about it. We have to agree. In face of disagreement, parts of ENIGMA could be GPL forever. We can only offer users as much freedom as is granted by the most-stingy developer. GPL is most stingy, X11 is least stingy. My code will be covered by this linking exception.
Logged
"That is the single most cryptic piece of code I have ever seen." -Master PobbleWobble
"I disapprove of what you say, but I will defend to the death your right to say it." -Evelyn Beatrice Hall, Friends of Voltaire
Offline (Male) Josh @ Dreamland
Reply #1 Posted on: June 21, 2013, 05:53:31 am

Prince of all Goldfish
Developer
Location: Pittsburgh, PA, USA
Joined: Feb 2008
Posts: 2949

View Profile Email
The linking exception [current draft]:

Quote
As a special exception to the GNU General Public License, permission is granted for additional uses of the text contained in its release of ENIGMA.

The Exception is that, if you link to code contained in the ENIGMA Engine which is covered by this Exception with other files to produce an executable, and do so using the ENIGMA Compiler via an ENIGMA-Endorsed Interface, this does not, by itself, cause the resulting executable to be covered by the GNU General Public License. Your use of that executable is in no way restricted on account of linking the ENIGMA Engine code into it.

This Exception cannot and does not, however, invalidate any other reasons why the executable file might be covered by the GNU General Public License.

This Exception applies only to the code released in the ENIGMA engine which is exempted in its copyright by this Exception. If you copy code from other releases into a copy of the ENIGMA Engine, as the General Public License permits, the exception cannot be applied to the code that you add in this way, without the express permission of its own author(s).

If you write modifications of your own for ENIGMA, it is therefore your choice whether to permit this exception to apply to your modifications. If you do not wish that, remove the exception from the affected files.
« Last Edit: June 21, 2013, 08:56:57 am by Josh @ Dreamland » Logged
"That is the single most cryptic piece of code I have ever seen." -Master PobbleWobble
"I disapprove of what you say, but I will defend to the death your right to say it." -Evelyn Beatrice Hall, Friends of Voltaire
Offline (Male) Josh @ Dreamland
Reply #2 Posted on: June 21, 2013, 05:57:42 am

Prince of all Goldfish
Developer
Location: Pittsburgh, PA, USA
Joined: Feb 2008
Posts: 2949

View Profile Email
You may notice that I tweaked it slightly so that individual files can be covered by this exception. I also used the terms "Exception", "ENIGMA Engine", "ENIGMA Compiler", and "ENIGMA-Endorsed Interface" without defining them. I am too afraid to attempt to define them right now.

If you want to debate the use of "ENIGMA-Endorsed Interface", do so here.
Logged
"That is the single most cryptic piece of code I have ever seen." -Master PobbleWobble
"I disapprove of what you say, but I will defend to the death your right to say it." -Evelyn Beatrice Hall, Friends of Voltaire
Offline (Male) Goombert
Reply #3 Posted on: June 21, 2013, 06:58:28 am

Developer
Location: Cappuccino, CA
Joined: Jan 2013
Posts: 2993

View Profile
Yes I would like to debate it, or rather just tell you I don't like ENIGMA-Endorsed Interface, any of one of ENIGMA's contributors could support an alternative IDE but not officially endorse it.
Logged
I think it was Leonardo da Vinci who once said something along the lines of "If you build the robots, they will make games." or something to that effect.

Offline (Male) Josh @ Dreamland
Reply #4 Posted on: June 21, 2013, 07:24:08 am

Prince of all Goldfish
Developer
Location: Pittsburgh, PA, USA
Joined: Feb 2008
Posts: 2949

View Profile Email
That's the point of defining the terms. The definition needs to give a definite, extremely precise function for determining whether an IDE is officially endorsed. Unfortunately,

(1) ENIGMA is not a registered organization.
(2) The ENIGMA website is controlled entirely by IsmAvatar and myself, and any number of financial or "real-life" factors could cause it to be dropped from our power.

Even in the case of (1), the corporation would require a founder, which would probably be me plus some appointed successors. That being the case, we could easily emulate that behavior without paying to register as a corporation, if that were an ideal behavior according to other developers.

The issue here is that we lack a governing body, unless you count Ism and myself, to impose any kind of democratic vote, and there is no way of giving anyone else a say without giving everyone else the power to choke the exception.

That said, if everyone trusts Gary, Ism, and myself to make these decisions, then the website (or our persons) can be the controlling say in which IDEs are official. Otherwise, we need a better definition.
« Last Edit: June 21, 2013, 07:27:18 am by Josh @ Dreamland » Logged
"That is the single most cryptic piece of code I have ever seen." -Master PobbleWobble
"I disapprove of what you say, but I will defend to the death your right to say it." -Evelyn Beatrice Hall, Friends of Voltaire
Offline (Male) Goombert
Reply #5 Posted on: June 21, 2013, 07:28:19 am

Developer
Location: Cappuccino, CA
Joined: Jan 2013
Posts: 2993

View Profile
So issue shares, and lets have a share holder meeting. My votes will go to forthevin being successor, I would run this project straight into the ground ^_^

First thing we need is a name, I got it, "PlayGo"

Edit: Wait, why is Gary in that group? He don't even make games?
Logged
I think it was Leonardo da Vinci who once said something along the lines of "If you build the robots, they will make games." or something to that effect.

Offline (Male) Josh @ Dreamland
Reply #6 Posted on: June 21, 2013, 07:33:19 am

Prince of all Goldfish
Developer
Location: Pittsburgh, PA, USA
Joined: Feb 2008
Posts: 2949

View Profile Email
He has website access, which means he could change it. He wouldn't, though.

Shares are not easy to divide. And we don't have a system to ensure that everyone has a say proportional to their share; we don't have a controlling entity. A company has a CEO who can do whatever he wants. Free software projects, in general, do not have that. Though Canonical has Shuttleworth; look how that ended for them. So I guess it's a matter of appointing a hierarchy if we want people's say to be carried out.

Even then, we might need a bigger entity to control succession. We might need to register ENIGMA as an LLC and list server access as an asset, to protect against the unlikely event that Ism, Gary, and I were all hit by a bus before anyone had a chance to pick up the torch.
Logged
"That is the single most cryptic piece of code I have ever seen." -Master PobbleWobble
"I disapprove of what you say, but I will defend to the death your right to say it." -Evelyn Beatrice Hall, Friends of Voltaire
Offline (Male) Goombert
Reply #7 Posted on: June 21, 2013, 07:35:11 am

Developer
Location: Cappuccino, CA
Joined: Jan 2013
Posts: 2993

View Profile
Here's the solution, 3 active board members, then there is no one single person at the top, no conflicts of interests, and no ties. Those 3 members are given each 1/3rd of the share holdings, and when one board member steps down, they will vote the next one in. And the community ourselves, can vote in or impeach board members if we feel they are misleading the project.
Logged
I think it was Leonardo da Vinci who once said something along the lines of "If you build the robots, they will make games." or something to that effect.

Offline (Male) Josh @ Dreamland
Reply #8 Posted on: June 21, 2013, 07:46:30 am

Prince of all Goldfish
Developer
Location: Pittsburgh, PA, USA
Joined: Feb 2008
Posts: 2949

View Profile Email
You're assuming that the board members are fair. They don't have to be. There is no controlling body to enforce any system you suggest, and you can't just appoint one. The only legal claim to resources here is from the person who pays the server bills, and that's Ism and myself. We are the only people with the legal ability to take control of this website at any time.

There isn't even a structure for more people to have a say in this; at the end of the day, my name is on the bill, so even though Ism shares it with me, if the server goes unpaid, they come after me, and conversely, if I lose control of this server or its domain, I can regain it through them. I don't have the ability right now to divide that power up. So I will always be in a position to override any decision concerning this website, until such a time as I transfer its legal ownership to a new person or entity.

Ism might have a solution to this, as she doesn't believe in any governmental role. I don't have a simple solution.
« Last Edit: June 21, 2013, 07:48:25 am by Josh @ Dreamland » Logged
"That is the single most cryptic piece of code I have ever seen." -Master PobbleWobble
"I disapprove of what you say, but I will defend to the death your right to say it." -Evelyn Beatrice Hall, Friends of Voltaire
Offline (Male) Goombert
Reply #9 Posted on: June 21, 2013, 08:07:24 am

Developer
Location: Cappuccino, CA
Joined: Jan 2013
Posts: 2993

View Profile
Well I guess money is free speech  :D

and lets call our company, GoPlay
Logged
I think it was Leonardo da Vinci who once said something along the lines of "If you build the robots, they will make games." or something to that effect.

Offline (Unknown gender) TheExDeus
Reply #10 Posted on: June 21, 2013, 08:25:03 am

Developer
Joined: Apr 2008
Posts: 1860

View Profile
I understood none of it. So I trust Josh and Ism to make non-dickish decisions with the license and credit. I don't really know much about licenses (like what exactly the current GPL means to us), but I don't have any problems for a person to take my code, create a game and distribute it. Of course if the said person feels crediting me or paying me then I will not oppose that, but I wouldn't want a person to take ENIGMA, call it AMGINE and sell it for 49.99$. I do want to give the users the possibility to sell their games without compensating ENIGMA though.
Logged
Offline (Male) Josh @ Dreamland
Reply #11 Posted on: June 21, 2013, 09:07:18 am

Prince of all Goldfish
Developer
Location: Pittsburgh, PA, USA
Joined: Feb 2008
Posts: 2949

View Profile Email
Right. This makes sure users can distribute their games without any attribution or royalty to ENIGMA, but that a $49.99 AMGINE will quickly fail, as all user games must be GPL unless we endorse them (which wouldn't happen unless they were paying us sufficiently, and even then, their code would have to be GPL + ENIGMA Exemption, too). Note that they are free to run a completely GPL version without us; they'd just have some politicking to do before they could allow their users to close-source their games, which would mean we'd have to approve of it.

If letting users open-source their games was not a to-do point for them, they could run a completely GPL fork of ENIGMA, though, which we'd be unable to pull without forcing our users to GPL their code. There'd be some political turmoil, there, but we'd get through it.
Logged
"That is the single most cryptic piece of code I have ever seen." -Master PobbleWobble
"I disapprove of what you say, but I will defend to the death your right to say it." -Evelyn Beatrice Hall, Friends of Voltaire
Offline (Unknown gender) TheExDeus
Reply #12 Posted on: June 21, 2013, 09:16:00 am

Developer
Joined: Apr 2008
Posts: 1860

View Profile
Wait, but what exactly has to be open-source by GPL (or this exception)? Like a user can still make a game with ENIGMA, not release the source and sell it right? Or for him to sell it he must open-source it first? And can he sell ENIGMA if he provides the source? I guess not. But he certainly cannot sell it when it's closed source.
Logged
Offline (Unknown gender) Ideka
Reply #13 Posted on: June 21, 2013, 09:17:28 am

Member
Joined: Apr 2011
Posts: 85

View Profile
This sounds like something you could try asking Hacker News for help about. Lots of people there that know their shit.
Logged
Offline (Male) Josh @ Dreamland
Reply #14 Posted on: June 21, 2013, 09:47:03 am

Prince of all Goldfish
Developer
Location: Pittsburgh, PA, USA
Joined: Feb 2008
Posts: 2949

View Profile Email
HaRRi:

You can sell anything people are dumb enough to buy. You can put ENIGMA on a disc and sell it for $50, if someone wants to buy it. You can sell downloads of ENIGMA for $50. The GPL just says that if they then ask you for the source, you have to provide it. I could even add a price tag to ENIGMA, but it'd be stupid for people to buy it from here when they can get it for free from you. Stallman used to sell hard copies of Emacs for large sums of money, which people would buy either for convenience or to support the cause.

Users are free to distribute their games without crediting us in the game, by the GPL. But they must make the source available, and the applicable parts of the source will have our names in it. This exception makes it so they do -not- have to distribute the source.

To prevent forks of ENIGMA which do things we don't like—eg, strap on a price tag or implement a closed-source correction for something wrong with ENIGMA—I am tailoring this exception to only allow users to close-source their games if they compiled it with an "official" IDE ("ENIGMA-Endorsed Interface"). This means that if AMGINE wanted to fix something crucial in ENIGMA, and then sell their fixed version of ENIGMA for $50, we could tell them to fuck themselves; all user code (including their fix!) must be GPL.

The key is that GPL doesn't make it hard to sell code; it makes it hard for assholes to sell code. Now, the AMGINE team could distribute a $50 patch for the open-source ENIGMA, but then they'd have to maintain it to work with the latest version at all times. Depending on how bad we want that patch from them, we could decide how difficult to make their lives.

Ideka:

I might drop them a line, if I start feeling important enough to waste anyone's time.
Logged
"That is the single most cryptic piece of code I have ever seen." -Master PobbleWobble
"I disapprove of what you say, but I will defend to the death your right to say it." -Evelyn Beatrice Hall, Friends of Voltaire
Pages: 1 2 3 »
  Print