Your source code is definitely not currently in the public domain as it contains copyright notices, when being in the public domain means "without copyright".
And unfortunately, it appears it is not that easy for work to simply be put in the public domain. Read this article for clarification:
Why the Public Domain Isn't a License.
According to the article, there are two problems with placing software "in the public domain":
1) The copyright holder can be held liable for any damage caused by the software.
2) The copyright holder can re-enforce their copyright at any time, making it illegal for anyone to continue using the software.
Thus, someone making a significant investment in developing software that needs a physics engine may decide against using Newton on the grounds that Julio can theoretically stop them from using Newton (at least the open source bits) at any point.
Here is a quote from the
gnu website indicating that software that is simply declared "public domain" is not actually so:
Under the Berne Convention, which most countries have signed, anything written down is automatically copyrighted. This includes programs. Therefore, if you want a program you have written to be in the public domain, you must take some legal steps to disclaim the copyright on it; otherwise, the program is copyrighted.
Using a license solves both of these problems, and since you've said that the main Newton license doesn't cover the open source libraries, I would recommend using some kind of permissive license. The zlib license does place some restrictions of the user, but they seem sensible, and if you're not fussed then there's no problem.
- Code: Select all
Copyright (c) <year> <copyright holders>
This software is provided 'as-is', without any express or implied
warranty. In no event will the authors be held liable for any damages
arising from the use of this software.
Permission is granted to anyone to use this software for any purpose,
including commercial applications, and to alter it and redistribute it
freely, subject to the following restrictions:
1. The origin of this software must not be misrepresented; you must not
claim that you wrote the original software. If you use this software
in a product, an acknowledgment in the product documentation would be
appreciated but is not required.
2. Altered source versions must be plainly marked as such, and must not be
misrepresented as being the original software.
3. This notice may not be removed or altered from any source
distribution.
As I will be redistributing your source code, I will make sure whatever license you choose is at the top of each file I use, but I suppose it's up to you where you put the license in your distributions.
Please understand that I'm not being awkward Julio, I just think using a software license is the most sensible thing in this day and age.