Skip to content

separate nonfree libs into dedicated subpackage #5

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

Merged
merged 1 commit into from
Jan 31, 2018

Conversation

dbenoit17
Copy link
Contributor

@dbenoit17 dbenoit17 commented Jan 29, 2018

This PR is intended to reduce the impact of restrictively licensed components within racket/srfi. See the following github issue #4.

Currently, package maintainers for GNU/Linux distributions with strict licensing policies must remove the nonfree components from this package before distributing the Racket main distribution. This brings up the following two concerns:

  1. Extra work is required for package maintainers to manually remove nonfree components for each Racket release.

  2. Distro users are not able to resolve the nonfree components via raco once they are removed by package maintainers.

This PR mitigates both of the above issues with the following changes.

Changelog:

  • Add subpackage srfi-lib-nonfree
  • Move SRFI 5 to srfi-lib-nonfree
  • Add subpackage srfi-doc-nonfree
  • Move SRFI 5 and SRFI 29 docs to srfi-doc-nonfree
  • Update SRFI 32 to latest version which is released under a free license
  • Replace short nonfree code excerpt in SRFI 29 with an equivalent free implementation

Notes:

  • The SRFI 29 library and documents end up being distributed in separate packages, because its implementation is free while its docs are not. This decision was made because SRFI 29 is a dependency of SRFI 19, which is itself a dependency of other packages in the main distribution. SRFI 29 should therefore not be removed by package maintainers along with the nonfree SRFI components.

  • I have tested the changes, and they build and work for me as expected. I did need to add the two new subpackages to links.rktd in order for them to build with the main distribution.

@jeapostrophe
Copy link
Contributor

For the code in srfi-doc-nonfree/srfi/scribblings/srfi-nf.scrbl can take the corresponding code from the normal srfi docs, put it in a "util.rkt" file and then require that so we don't have code duplication?

@dbenoit17
Copy link
Contributor Author

Of course, thanks for the suggestion!

@dbenoit17 dbenoit17 force-pushed the master branch 5 times, most recently from a857249 to 9c45029 Compare January 30, 2018 06:53
@dbenoit17
Copy link
Contributor Author

Should be all set now.

@jeapostrophe
Copy link
Contributor

Sorry, but this is a super picky thing, but could you make that util module be srfi-doc/srfi/scribblings/utils.rkt (you can then do (require srfi/scribblings/utils). The current name might imply it should be publicly used, but scribblings is implicit private.

create docs-util.rkt
@dbenoit17
Copy link
Contributor Author

Fixed!

@jeapostrophe
Copy link
Contributor

Thank you very much! I'm merging now.

@jeapostrophe jeapostrophe merged commit ba8be8f into racket:master Jan 31, 2018
LiberalArtist added a commit to LiberalArtist/srfi that referenced this pull request Oct 22, 2021
Add comments explaining the restrictive license on the SRFI 5
and (maybe) SRFI 29 documents (see
<https://srfi-email.schemers.org/srfi-29/msg/17982886/> for details on
the latter). Since this license doesn't have an SPDX identifier,
we don't define `license` in "srfi-doc-nonfree/info.rkt" for now.

To clarify that the Racket and Scribble files in "srfi-doc-nonfree"
are freely licensed, mark each one with machine-readable SPDX comment
headers, in addition to the more detailed explanations.

Fix a typo in "LICENSE" and rename it to "LICENSE.txt" for consistency.

Related to racket#4
Related to racket#5
Related to racket#7
Related to racket#12
samth pushed a commit that referenced this pull request Oct 22, 2021
Add comments explaining the restrictive license on the SRFI 5
and (maybe) SRFI 29 documents (see
<https://srfi-email.schemers.org/srfi-29/msg/17982886/> for details on
the latter). Since this license doesn't have an SPDX identifier,
we don't define `license` in "srfi-doc-nonfree/info.rkt" for now.

To clarify that the Racket and Scribble files in "srfi-doc-nonfree"
are freely licensed, mark each one with machine-readable SPDX comment
headers, in addition to the more detailed explanations.

Fix a typo in "LICENSE" and rename it to "LICENSE.txt" for consistency.

Related to #4
Related to #5
Related to #7
Related to #12
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

Successfully merging this pull request may close these issues.

2 participants