Skip to content
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

Add LICENSE file to the project #18

Closed
cebaa opened this issue Oct 24, 2017 · 34 comments
Closed

Add LICENSE file to the project #18

cebaa opened this issue Oct 24, 2017 · 34 comments

Comments

@cebaa
Copy link

cebaa commented Oct 24, 2017

To answer standard questions: code contributions, embedding elsewhere, license of the images created by the app, derivative works, license of the libraries used, etc.

As an aside, impressive work you have here!

@prepare
Copy link

prepare commented Jan 18, 2018

ping @1j01

:)

@alexgleason
Copy link

The main benefit this tool would have over the original is that it respects the freedom of its users to inspect, modify, and redistribute it. Without that, it is a great technical feat and fascinating project, but not very beneficial to society.

I would really appreciate seeing an open source license alongside this work. I think that doing so would be beneficial to society and I would personally reach for it as a tool to accomplish some graphic editing.

@emilv
Copy link

emilv commented Jan 19, 2018

There are Microsoft assets in this project so adding a copyright claim might not be very wise (it's technically copyright infringement already, but adding a claim might force MS to take legal action).

I agree that free and open source software is best for society, but at this point the focus should be on removing any material copyrighted or trademarked by others.

@kungfooman
Copy link

Just put all licensed assets in a subrepository? So you can claim a license on this repo and leave the media subrepo licenseless.

Most people probably only care about the actual code and will then redo the needed assets (if your choosen license fits their purpose).

@alexgleason
Copy link

I don't think it needs to be split into a separate repo. You can license code differently from assets by simply writing "The code is licensed under XYZ and the assets are licensed under ABC"

@1j01
Copy link
Owner

1j01 commented Jan 20, 2018

I think the use of the assets from MS Paint should fall under Fair Use (as a remix), and, I shouldn't claim copyright over them specifically, but couldn't I still over the project as a whole? I mean, like music that uses samples from other music / copyrighted works can still have copyright of its own - but maybe it doesn't work the same.

Anyways, I do intend to license this project, but - not yet. I don't think it's ready, or that I'm ready.
Keep in mind that most of you wouldn't be asking me to add a license if someone hadn't leaked the project to HN. 😄
And I might go with a less permissive license like the AGPLv3 at first, and then switch to MIT later.

@prepare
Copy link

prepare commented Jan 20, 2018

@1j01 ,

Would you mind if I ask you to use
some permissive license.


PLEASE 🙏

:)

@1j01
Copy link
Owner

1j01 commented Jan 20, 2018

@prepare What do you intend on doing with it?

@prepare
Copy link

prepare commented Jan 20, 2018

Study/Use your code :)

and everyone can integrate the code to their project
without worrying about a copyleft-license problem.

@prepare
Copy link

prepare commented Jan 20, 2018

@1j01

if you use a copyleft (eg. AGPLv3),

someone like me can't study/use that code!

@1j01
Copy link
Owner

1j01 commented Jan 20, 2018

@prepare Huh? You can study the code all you want right now, although it's not good code, generally - it's rather a mess, a lot of it anyway. Maybe we have different definitions of "study"?

As for people integrating it into their project, that's what I want to avoid, for now. I don't want a bunch of broken old versions around, with my name on it, especially since there are still several features that haven't been implemented yet that look like bugs because I've already created the GUI for them since I had MS Paint to base it off of, and so it was easy to have functional-looking options that aren't implemented. I'd also like to update the About Paint window with a version number, and collect attribution information for the libraries used, and various other things like that.

@prepare
Copy link

prepare commented Jan 20, 2018

Haha, That is my first step before 'study' some project.

I find a license first.
If it is a copy-left one. I stop at that file.

If no an explicit one. It may be a copyleft, so I ask the author of that project.


@1j01 , I understand your intention.
I cheer you to finish the work soon!

@Mikotochan
Copy link

Mikotochan commented Jan 20, 2018

someone like me can't study/use that code!

How so? Unless if you want to use it in a non-free software.

As for the people asking for a license, you do not really need one. It is not like @1j01 will sue you. But even if she wanted to sue whomever made a change or distributed this code you could just use tor/i2p in order to distribute your changes.

@emilv
Copy link

emilv commented Jan 22, 2018

"Fair Use" as a concept varies by country. For example, in Sweden you cannot copy images under fair use, not even small thumbnails (this has been tried in court). So whether image assets in software can be "fairly used" is up for interpretation and local laws.

Trademarks are more straightforward, just opening the "Help" section I saw both a Windows logotype and the names "Microsoft" and "Windows". Microsoft have to fight back against unauthorized use of their trademarks or they risk losing them.

The last question is if you can publish software under a GPL license but with non-free assets. That seems at least a little bit sketchy. Remember that a free software license is a license from you towards your users to copy, modify, publish and use the software in any way - including for commercial purposes. OpenTTD removed all the third-party assets and made you download them from other sources (I think they now ship completely free themes that they made themselves, precisely because it was clumsy having to pirate the original game just to get the assets). For what it's worth, this question has been covered on the Open Source Stackexchange and the answers I find on the subject are more positive towards separate licensing than I am.

@1j01
Copy link
Owner

1j01 commented Jan 22, 2018

@emilv All good points. I'm definitely gonna think some more on this.

@hjek
Copy link

hjek commented Jan 25, 2018

I really like this project, and would like to add to it, e.g. make it possible to run a self-hostable version of the multi-user paint that doesn't rely on use the non-free Firebase code to connect to Google's Firebase SaaSS, or perhaps create an alternative theme free of MS-owned assets.

Since there's no license on JS Paint, I'm not allowed to do that (not even in a fork).

Would you please consider adding a free license to this ASAP? (AGPL, as you suggest above, @1j01 , is a good copyleft license for web apps)

@Immortalin
Copy link

@1j01 MIT would be a better choice if you ever want it to gain adoption beyond just casual artists

@ananthb
Copy link

ananthb commented Sep 13, 2019

Any updates on this? I want to use this for a work project, but I can't without a license.

@1j01
Copy link
Owner

1j01 commented Sep 17, 2019

@ananthb What would you want to use it for? The codebase is kind of a mess, and the project is mostly just recreating an old image editor, rather than trying to be a good one.

@ananthb
Copy link

ananthb commented Sep 17, 2019

It's for a side project at work. I need an online image editor and I like the look of this.

@christianliebel
Copy link
Contributor

I added support for some of the upcoming web APIs (full clipboard support, file system access) to JSPaint, because that really makes a nice demo: https://github.com/christianliebel/jspaint

As I (and probably 246 other people who have forked) want to be on the safe side, it would be great if you could provide an OSS license for JSPaint. Thank you!

@1j01
Copy link
Owner

1j01 commented Sep 25, 2019

@christianliebel I actually added full clipboard support about a week ago: #105 (comment)
Sorry that work became redundant - but file system access is interesting!

@1j01
Copy link
Owner

1j01 commented Sep 25, 2019

Here's basically what I want to do before licensing (subject to change and delay):

  • (in progress) Add features to the About window so you can tell if an instance of jspaint is outdated.
  • Improve the local backups feature to include multiple snapshots of the image over time, to counteract data loss bugs. (And also make it clear it's only intended as a backup and you should still save regularly.)
  • Collect license information of dependencies
  • Maybe fix Windows become inaccessible behind menu bar due to z-index #113 (which can be a data loss bug if you have to refresh to close the window, especially on mobile - but mainly is just annoying and stupid)

@christianliebel
Copy link
Contributor

@1j01: Do you plan to introduce a build process? Especially for offline capability (service worker generation), this could make sense! For webpack there’s a plugin that extracts licenses, alternatively, we could use license-checker.

@christianliebel
Copy link
Contributor

christianliebel commented Oct 2, 2019

What would you want to use it for?

@1j01 I like your app really much, and I would like to use it as a demo/playground for web capabilities that we might see in the future (like NativeFS, but also imagine Touchbar support, native menu bar support for the installed JS Paint, etc.)

The codebase is kind of a mess (…)

Licensing it might attract developers willing to refactor it. Apart from that, there are ways to migrate the codebase step-by-step, as shown in #143.

And I might go with a less permissive license like the AGPLv3 at first, and then switch to MIT later.

This project has an incredibly high potential for unleashing developer creativity. I think it would be important that it’s licensed using a permissive license such as MIT (or rather BSD-3-Clause, which you might want to have a look at). In fact, this project is based on software with a permissive OSS license. 😉 In this context, adopting a code of conduct as in #70 would also be helpful.

Btw, I added some PRs which would also fix the last two checklist items. If you need help with the local backup feature, let me know. 👍

@mgiuca
Copy link

mgiuca commented Oct 3, 2019

And I might go with a less permissive license like the AGPLv3 at first, and then switch to MIT later.

Hi, just to add to what @christianliebel said, AGPL will make it difficult for contributions from companies. I work for Google and we're interested in contributing, but the company has a policy against contributing to AGPL-licensed projects, and I assume many other companies will too. (In summary, the fact that AGPL extends GPL's virality to merely running the software makes it too risky for us to contribute to.) If you want a restrictive copyleft license, might I suggest plain GPLv3, which still requires all changes to be GPLv3-licensed. Being a client-only application, the network requirement of the AGPL doesn't really buy you any extra protection anyway.

Having said that, I don't think it is ever a good idea to choose a restrictive license if you plan to make it more permissive later. As soon as you start accepting contributions, it will basically become impossible. If you made the project (A)GPL, then start accepting pull requests, you will now have multiple copyright holders and you'll need to have every single contributor agree to change the license to a more permissive license at some point in the future. If you want the project to be MIT-licensed, you should use that license from the start.

(Note: This is not legal advice, merely advice that I personally think would help you get better adoption.)

@pkrasicki
Copy link

pkrasicki commented Jan 26, 2020

@1j01
Hi, this is a really cool project! I would love to contribute to it. If you don't want to use a permissive license I think GPL would be the best choice. It seems that you want to make the app better, before you add a license, but that is really not necessary. No app is ever perfect and there is always something to do :). This issue was opened over 2 years ago and I really don't think it makes sense to delay this. Please let other people help you develop this cool app, so that we could have the best Paint ever! :)

@RobertoJBeltran
Copy link

Want to voice my support in your decision to copylefting your code when possible. It could be a drag, but you definitely have the option to switch to a permissive license at some point, or allow for exceptional proprietary commercial use for some money. You can look at what stepmania and wine have done as an example.

I think the use of the assets from MS Paint should fall under Fair Use (as a remix)

I'm not a legal expert, but I used to be into music and I can tell you that at least in the US if you sample someone's song and they want to come for you they can. You can look at what happened to the harlem shake or what happened to hip hop in the 90s. I would reach out to licensing@fsf.org for some guidance in your case, so you don't get yourself into trouble.

@tcoulter
Copy link

Hey there, any update on the license? I'd love to use it as an editor for my project, but can't without the proper license. Very happy with attribution.

@pkrasicki
Copy link

I wonder how that would work legally. Some people had their pull requests merged and I think they own the copyright to those changes? So can the author even add a license without their permission?

Even if the answer is yes, after 4 years I doubt this is going to happen.

@christianliebel
Copy link
Contributor

Hey there, any update on the license? I'd love to use it as an editor for my project, but can't without the proper license. Very happy with attribution.

@tcoulter In the meantime, I started another project here: https://github.com/christianliebel/paint All under Apache 2.0, without any copyrighted assets. Also, it's available as a web component, so you can easily integrate it into other projects. However, not all tools and actions are implemented yet.

@tcoulter
Copy link

tcoulter commented Oct 19, 2021 via email

@pkrasicki
Copy link

Awesome project, @christianliebel! I thought about doing that as well at some point, but I'm glad I don't have to and your app works very well :). If you guys like Free Software drawing apps you can also check out mine: https://github.com/pkrasicki/SyncPaint.

@1j01
Copy link
Owner

1j01 commented Jul 28, 2022

Alright, everyone, JS Paint is finally officially Open Source!

You know it had to be the familiar, the permissive, the short and sweet MIT license.

@1j01 1j01 closed this as completed Jul 28, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests