New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
License is too restrictive #1052
Comments
Thank you for your well written issue! When we first started working on the app choosing a license was an extremely difficult decision, that said now that we've had a few years in production we're extremely happy with our choice. The license is designed to be flexible for personal use, individual users can make any changes they want to the code. However, by design we want to prevent businesses from reselling our app.
https://github.com/invoiceninja/invoiceninja/graphs/contributors One of the main goals of our license is to ensure the financial success of our company. We work extremely hard to provide a pretty good app at no cost to the open-source community, that said we need to make money to keep adding these great features. The Attribution Assurance License has proven itself to us to be an excellent choice in this regard. |
I'm wondering what your thoughts are on Creative Common Attribution-NonCommercial 4.0. It seems to codify your intent.
This is a more widely-known and less restrictive license than the current one, while maintaining the boundaries this project values. |
Thanks for the suggestion, from a quick review it looks promising. I'll keep you posted... |
We've decided to remain with our current license, we feel the AAL license is simply a better fit. |
Fair enough. Thank you for considering it! I will likely go with InvoicePlane given its BSD license, in spite of it being less actively developed and less complete. It needs a little bit of love on the front-end, but I feel more comfortable with this route knowing that contributions I might make will be owned by the community. Though I'm probably of a small minority who is this intolerant of non-libre software, even when it's open-source and distributed for free. Thanks again for being open-minded and considerate. |
Hum, reading this now. Does it mean I can't offer InvoiceNinja as a Service? I can't have paid users for hosting it? @hillelcoren can you clarify me that please? Thanks! |
If you'd like to resell the app you'd need to join the reseller program. https://github.com/invoiceninja/invoiceninja#affiliates-programs You can email us at contact@invoiceninja.com if the plan doesn't fit your needs. |
I really need to understand this better as it has great impact on me and my business. From the freesoftware foundation: Here are the 4 freedoms:
If I understand well:
So I just have freedom 1, right? Please confirm me, it has big impact for me. I respect your work, and I don't want to go against your will. Thanks a lot for your work and your time! |
Our app is open-source but it isn't necessarily free. I'm not sure you have freedom 1 as it's dependent on freedom 0. If you'd prefer you can email us at contact@invoiceninja.com to discuss the specifics. |
Arf, it is a sad day for me :/ (Thanks @alexgleason for bringing up the subject) My ethic forbid me to use non libre software. I was happy to pay the hosted version for such great libre software, but... It is not libre. So I'll have to stop using this software. I respect your decision, but I think you should put a warning on the README, or your website. We all lost a lot of time because of that. |
Sorry to hear it, we'll try to make it clearer. |
I think you'll find the definitions of Open Source and Free Software overlap virtually on all points except the philosophical. https://opensource.org/osd-annotated
Thus, with your current licensing model, your app is neither Free nor Open Source Software. The idea of using a software license as a means to prevent users from getting commercial support from a potential competitor is antithetical to both the Free Software and Open Source movements. One of the core advantages of using FOSS is that users don't get shackled to a vendor and always have the option to move to greener pastures should their current vendor tank, change directions, become compromised by state espionage, engage in abusive practices, etc. i.e. There's always an exit strategy, should things turn sour. |
@pierreozoux, it'd be helpful if you could explain how you were planning to use the code. We're open to adjusting our license but we'd want to keep it non-commercial. The suggested license seems like a good fit but it isn't clear if it fits the definition of "Open Source" either. Hopefully we can continue this conversation positively. |
Discussion on Reddit: Apologies to @alexgleason for incorrectly stating that he started the 'mean spirited' thread. |
@hillelcoren I'm happy you reopen the discussion. I'm a free software advocate, but as stated by @major-gnuisance free software and open source are equivalent. I'm not a lawyer, nor an expert, but IMHO the suggested license doesn't fit for software. About keeping it non-commercial, what do you mean? To my knowledge, there is no open source license that would forbid any body to make business around your software. As part of the community, for me what is important is to be able to contribute and know that at one point, if we disagree, we can fork it, and take our contributions with us too. About making it non commercial, I don't really understand. Let's take facebook example. Even if we had the source code of Facebook, I couldn't run facebook, I would never be as successful as facebook. I don't have the branding nor the marketing, nor the business team to run it. For your software, it is the same. I think you did an amazing job on your commercial offer, and there are many assets that are not part of the software. The marketing, the newsletter, the blog, the business development, the integration with payment providers, all of this, as a hoster I'll have to do it myself, and I doubt it'll ever be as good as you do. I think this is what is beautiful about FLOSS, it is that you can create the perfect company. I hope you'll reconsider this License, and put an open source one. |
@pierreozoux I fail to see any commits from yourself at all, how could they have been stolen? It is quite clear you are using Invoice Ninja outside the License terms, and only now realise your mistake. Now you seem hell bent on causing as much reputational damage as possible by starting a Reddit thread trying to shame Invoice Ninja? Keep it classy. |
@hillelcoren How mean-spirited? You say your software is open source (I imagine to cash in on the sweet, sweet FLOSS karma) but it is not. You have been informed several times in this thread it is not open source, but you continue to insist it is. What does that make you? There are only two options here. Don't get me wrong: I have nothing against people developing proprietary software. That is there prerogative, but you should bite the bullet and stop posing as something you ain't, i.e. a free software provider. |
@pierreozoux Thanks for your detailed response! The last thing in the world we'd want is to trick a developer into contributing to our project. There seems to be a simple answer here. The clause in question was added two years ago. One of our partners asked us to include it to protect their exclusivity. Assuming they're ok with it we don't see a problem changing back to the standard AAL license. https://opensource.org/licenses/alphabetical We're more than happy to have people redistribute our code. |
I'm interested to know anyone else's thoughts, but I'm pretty sure that would indeed fix it. Thanks! |
@turbo124 I didn't post it on reddit. I just use and pay for the official hosted version of InvoiceNinja. I don't use it yet outside of these terms. I don't want to damage InvoiceNinja reputation, but I was mislead, I was recommending it, and I wanted to correct my mistake, and believe me, if it resolves the nice way, I'll be really happy to share the happy ending of this FLOSS fairy tale. Reverting to standard AAL would resolve the issue for me :) |
We've updated the license, thanks everyone for your feedback! |
I've been following this thread since the beginning. Both from User's perspective and as an Open-Source project owner. Let me say I get both sides' points, and that I find it myself a tricky matter for discussion (it is, indeed, a key subject on Internet and modern life with no clear edges and too many diverse points of view, and that's fine!) Just take into the account that software as a product (something that has being created by someone), has an audience that may not only be the final user, but other developers, and as it pops out here, probably resellers (who knows how many other roles could come up later on). So it's not just about software and users. It's -at least- about product and audience. And it's not the same use case a Contractor will give to the application, as the use case a Client will give to the application, as the use case a Developer to the codebase or the use case a reseller will to either the codebase or the application (aaand, so on....). There are probably better forums for this generic and hot discussion, however, back to the show, I'd like to just add that I get both sides, and that I like Open-Source and free software (in terms of libre), but I'd also like my time efforts put on development to reflect some retribution (as a developer, designer and as an entrepreneur), and that is hard to achieve. I hope this helps out for a smooth agreement between users in their maaaaany diverse role types, and their relationships around the project, the application, the service, and the codebase. |
This was an amazing conclusion. I'm switching over to Invoice Ninja. Side story: InvoicePlane has really bad Docker images in Docker Hub. None of them work properly, or they bundle MySQL directly inside the image which is bad. I figured I'd just edit the Dockerfile from the most popular image and fix the issues, but it turns out that he also created the base image: a custom PHP image. So I looked at that, and learned that the base image's base image was a custom Ubuntu image by the same author. This guy had basically created Docker from scratch and went through two levels of it (custom Ubuntu --> custom PHP --> InvoicePlane) before concluding at this InvoicePlane image. Needless to say I did not extend his image, I created my own for InvoicePlane based on the official PHP base image and got it merged into the repo. It works perfectly. But it took me like 2 days of constant stress before figuring how to get everything to work. So, basically I'm glad that other people have already taken on work creating a Docker image for this project, and hopefully it will be a smooth deployment. 😜 Going to leave this open in case anyone else has any comments. But seriously, great job! |
One more comment: after carefully reading the license, it suggests that anyone redistributing the software (which I believe includes self-hosting, even for personal use) must follow this criteria:
I don't think Invoice Ninja does this out of the box, so it might be worth including an option to allow this text to display in an agreed-upon way. Attached is a mockup where I've added the attribution to the bottom-left corner of the screen. It may be worth templating this and then enabling/disabling it based on the presence of an environment variable. Like if EDIT: If you think the sidebar is overkill I think technically it could also go at the bottom of the dashboard since the dashboard is the launch page. If it appears below the fold it may be arguable as to whether it's a prominent display, but that's your call. EDIT2: Fixed "InvoicePlane" Freudian slip. |
There should already be a "Powered by InvoiceNinja.com ..." footer at the bottom of the page. We could add the 'created by' info in the title tag or change the text to include it. I'm not so into the .env idea, we'd like the link to always be shown. |
And here is the happy ending: https://blog.indie.host/2016/the-author-of-invoiceninja-considered-again-the-license-and-reverted A bright start of the day! (I think we can close :) ) |
Sorry for the late question. Does this mean we could now provide the software as a service to our own customers and modify it for this purpose? |
You would need to leave our branding in place, removing the branding requires joining our reseller program. |
OK. That's of course perfect reasonable. I've also just read about the reseller program. |
Correct |
Ok. Sounds good. Thanks for explaining. I'm happy with this. |
What is the difference between white-label option and resseller options? |
The white label license is intended for personal use. It only removes our branding from client facing parts of the app, joining our reseller program enables you to remove all of our branding. |
Ok, i understand. So.. If i would to create app with white label option (custom name and logo app) and selling access to this system in my country, firstly i need pay 500$ and next pay 10% revenue? How pay a revenue technically? |
There's a route in the app which (when enabled for resellers) enables us to invoice you. |
Sorry for bumping an old thread, but I just want to say thank you. I just switched to Invoice Ninja because of the change of license and the progression of this thread. Not because there was anything restricting me before, but simply because I needed a better invoicing solution and the devs on this project clearly care. I'm a huge fan of proper open source and seeing the devs (you) respond so positively is insanely refreshing . Thank you for your work, so very much. |
Sorry for bumping an old thread, I have a tricky scenario (few of you might find it cheeky too). As the code for Invocie-Ninja is available in public repository of Github, why I cannot fork it and ammend it as I want - including white lableing, using my own name & logo and then resell it as my own product, lets call it: Ninja-Invoice? Which section of law stops me from doing this - specially given the fact this is an open source project and code base is available at opensource community. Many Thanks, |
Just because something is Open Source, doesn't mean you can do whatever you like. You need to understand the license terms and operate within those. If you breach the license terms, you risk losing all your hard work. |
I have seen few of your earlier posts and I am not sure if you are an employee of Office Ninja company or one of the community member, but it seems that you have got it very clear in your mind that everyone MUST pay for the software, whatever be the circumstances. I have no issues with your view point because you are entitled to have one. But you also need to understand other's (community and developers's) viewpoint. So from my point of view, invoice-Ninja team has built a code with the help of 100s of developers if not thousands plus their own contribution and now they are selling it with their own logo and a substantial amount of fee/charges/commission. I wonder if invoice-ninja is sharing the commission and revenue with the people/developer who contributed to your code over last 4-5 years? If making money to maintain and manage your business important for you (which is understandable), they should keep the code in private repository or sell it as an enterprise solution (which is NOT opensource). Same thing happened with Yetoforce CRM, which was forked from SugarCRM and then forked from V-Tiger and one more project and then they thought of becoming oversmart and charing money from the developers. But unfortunately Open Source licensing team was smarter and they were not allowed to register the product under open source licensing agreement and they have also ended up with an agreement to let people have their logo in the footer - I think that was too generous. Anyways, coming back to my original question: if someone forks the source code (which is available freely at github in public repository) and take it to a different level using their own codes and modules, which section will hold him accountable for breech. I dont need lecture, I just need the section number and link - if possible. Many Thanks, |
I think you need to take a step back and do some more research about Open Source and licensing. We have many people that use our software, customize it for their application and don't pay 1 cent, and we happily support them as they stay within the license. Judging from your tone, you have your own definition of open source so I am not going to engage in conversation as I don't think there is any benefit from doing so, in fact, I am surprised you've even taken the effort to post here given you have already made your mind up what you want to do. |
Yes, I am very upset how the term "opensource" is being abused now a days by many developers and companies. I did some quick research on invoice ninja and got many interesting websites right from the days when you guys were desperately looking for people to help you out with coding and bug fixing and they did not want to help you because you guys wanted free help and still charge for the final product and obviously these "free helps" were not part of your revenue sharing model - now do you see why I am upset? We are already developing our own invoicing software... we have already completed 4 moudules and working on 6 more. However, all of a suddent I started thinking about opensource projects and started exploring the idea around how we can use or integrate invoice-ninja or invoice-plane to create a pre-populated template and a more customised solution for our customers and they don't have to pay an ongoing license fee. Anyways, I am dropping an email to you guys trying to understand how I can use your product for free and if I decide to sell it further using my name and logo (or even yours), what will be the charges/commission that I need to pay you... if all goes well, great... if not we will develop our own software and we will make it available on github for free for people to fork it and use it as they wish to. Many Thanks, |
@raviktiwari007 I'm not a lawyer, and I don't think that the person that wrote the AAL license is neither, but as a personal advice I'd recommend you to follow the will of the original author of software. |
Firsh thing first: Now coming to your last point: You know what? You got me mate... so here are few proofs for you to play with, enjoy, share and dig even more: http://lists.opensource.org/pipermail/license-review_lists.opensource.org/2018-June/003381.html Internet is full of all such stuff... the only issue is, this has been going on for last 6 yrs, so you need to do some deep digging to get the real spice. :-) Anyways, I wish all the best to people using InvoiceNinja, sadly I cannot say the same to Office Ninja Corporate management team and their VCs because for me this is cheating. Unfortunately, InvoiceNinja is not the only one, there are few other people/company trying to come up with this new scam model of, "I take code from the world and then I will sell the final product to the world without sharing the benefit with the people who helped me develop the code in the first place". In the name of maintenance, which again the community will do... :-) Isn't it a brilliant model? I am glad that the open-source licensing team is aware of it and have not let them have a free run. Anyways, this is my last post in this group, as I might not return here for foreseeable future... So stay safe, enjoy coding, keep experimenting, Donate, contribute and support opensource projects but NEVER pay for opensource - there is a reason it is called Open-Source. :-) Thx: Rav |
I don’t plan on being censored for stating facts. I will repost my comment which you have deleted after giving you time to explain why you have deleted my comment. |
Hi there,
This software looks really great. I'm looking at self-hosted invoice systems and this one is fantastic. That said, I am afraid the license is too restrictive. I have no desire to rip off invoiceninja's business, and I appreciate the many hours that have been put into it programming it. But one of the virtues of open-source is the ability for people to fork software and take it into a different direction without needing to ask for permission.
Currently the license says this:
Consider these scenarios:
Under the present license, invoiceninja is "open-source software" by the loosest meaning of the term. Since the author has total control of how the code may be used, it cannot be consider free (libre) software, which I think is preferable
It seems like this was your intention, but I wanted to bring this up in case it was something you would like to consider. I tend to prefer copyleft licenses like GPL since it has a layer of protection against corporate greed while still allowing people to fork the code freely.
Thanks for your time
The text was updated successfully, but these errors were encountered: