Opened 3 years ago
Last modified 20 months ago
#21571 new enhancement
Install COPYING.txt
Reported by: | mkoeppe | Owned by: | |
---|---|---|---|
Priority: | major | Milestone: | sage-7.5 |
Component: | build | Keywords: | |
Cc: | was, vbraun, jdemeyer, dimpase, thansen, fbissey, infinity0 | Merged in: | |
Authors: | Reviewers: | ||
Report Upstream: | N/A | Work issues: | |
Branch: | u/mkoeppe/install_copying_txt_in_sage_local_and_use_it_from_misc_copying_py (Commits) | Commit: | 91f7b9a81eb741d5f7a1cf3591767644652da946 |
Dependencies: | Stopgaps: |
Description (last modified by )
Use the installed location for COPYING.txt
from sage.misc.copying
.
Change History (23)
comment:1 Changed 3 years ago by
comment:2 Changed 3 years ago by
Please feel free to work on it, or any other of the tickets that I have created. If I didn't put my name on "Authors", I haven't done any work on it yet; so there's no danger of duplicating work.
comment:3 follow-up: ↓ 4 Changed 3 years ago by
I think really, to get this right more work needs to be done on cleaning up the setup.py.
comment:4 in reply to: ↑ 3 Changed 3 years ago by
comment:5 Changed 3 years ago by
I mean, part of the problem is "COPYING.txt" does not even exist in the root of the Python source code (that is, at or below setup.py). When we make a source distribution of sagelib it's going to have to have all the files it needs in it. So for starters we're going to have to copy COPYING.txt into src/
comment:6 Changed 3 years ago by
Instead of copying, perhaps we can move it to src/
and replace it by a very short notice in COPYING.txt
, pointing the user to src/COPYING.txt
for more detail.
This would avoid duplication.
comment:7 Changed 3 years ago by
- Branch set to u/mkoeppe/install_copying_txt_in_sage_local_and_use_it_from_misc_copying_py
comment:8 Changed 3 years ago by
- Cc was vbraun jdemeyer dimpase added
- Commit set to 91f7b9a81eb741d5f7a1cf3591767644652da946
- Milestone changed from sage-7.4 to sage-7.5
Cc'ing a few people to see if this change to the layout of the license file(s) is acceptable.
New commits:
91f7b9a | Move COPYING.txt to src/COPYING.txt, leaving behind a short notice
|
comment:9 Changed 3 years ago by
I have a slight preference for just copying it. My mind is still that sagelib and all stuff related to the distribution should eventually be split into separate repositories. But that's of course an uphill battle so I'm fine with any interim solution.
comment:10 Changed 3 years ago by
Actually, now that I take a closer look the license file for sagelib should really be entirely different. Almost none of the copyright notices for all the differenge sage packages apply to sagelib itself. Instead src/COPYING.txt could probably be little more than another copy of the applicable GPL.
comment:11 follow-up: ↓ 14 Changed 3 years ago by
But we need a comprehensive license file to display to the user. It should display all relevant licenses of the packages that Sage uses, as it does now.
comment:12 Changed 3 years ago by
That's....not true. It only needs to include licences for sources that are distributed with it. It does not need to be distributed with licences for all packages it might happen to link to.
comment:13 Changed 3 years ago by
Sage-the-distribution provides its own distribution for all those packages so it makes sense there. But the "COPYING.txt" for sagelib itself only needs the licence for sagelib.
comment:14 in reply to: ↑ 11 Changed 3 years ago by
I agree with Erik. The licenses of Sage-the-distribution and Sage-the-library should not be confused. Whatever goes into src
should be about Sage-the-library only.
comment:15 Changed 3 years ago by
Are you saying that
sage: copying()
should only print the license of sagelib?
comment:16 Changed 3 years ago by
- Cc thansen fbissey infinity0 added
Cc'ing people who work on distro packaging to get more input on what copying()
should print.
comment:17 Changed 3 years ago by
I don't know what copying()
should print, but the license file that needs to be included in the source tarball for just sagelib should just be the license for sagelib.
Perhaps, if the full sage distribution license file is installed to a standard place in the sage distribution then copying()
could also try to read and display that. But if sage is installed, say, by a Linux distro not using the full sage distribution then it's not as relevant.
comment:18 Changed 3 years ago by
I patched the Debian package to display the Debian copyright file for copying()
:
https://anonscm.debian.org/cgit/debian-science/packages/sagemath.git/tree/debian/copyright
which is basically everything not in the spkgs (which we're using Debian packages in the place of). So, sagelib but also build scripts and other misc things left in the source tree.
comment:19 Changed 20 months ago by
- Description modified (diff)
- Summary changed from Install COPYING.txt in SAGE_LOCAL and use it from misc/copying.py to Install COPYING.txt and VERSION.txt
comment:20 Changed 20 months ago by
Per the title, this should apply a similar fix for VERSION.txt
as discussed in https://trac.sagemath.org/ticket/25056#comment:39
comment:21 Changed 20 months ago by
The branch needs to be rebased. And we have to be clear about what we are doing here. #25056 means that in sage-8.2 the sage start up script will refer to SAGE_ROOT/VERSION.txt
I fixed that in sage-on-gentoo but it will bite debian and the other.
We should have a consensus on where those files live and apply it.
comment:22 follow-up: ↓ 23 Changed 20 months ago by
- Summary changed from Install COPYING.txt and VERSION.txt to Install COPYING.txt
Upon re-reading this issue I don't think we should conflate handling of VERSION.txt into it. There was still some question in this issue as to handle the actual license text--IMO there needs to be separate license files covering Sage-the-distribution (and hence licenses of all the bundled software and the license for the build tools) and Sage-the-library.
The VERSION.txt issue is simply matter of having a reasonable standard place to install this file. I will open a new ticket for that with a proposed solution and set it as a blocker for 8.2.
I was about to make this ticket as well...