-
-
Notifications
You must be signed in to change notification settings - Fork 5.6k
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
Achieve at least a "C" on GNU ethical repository criteria #1524
Comments
The LibreJS issue is already reported in #1484 Beside that, GNU ethical repository hosting criteria are for services, not software. |
Apologies for the duplication on the LibreJS issue. I've moved those details to the relevant ticket. There is interest on the ethical repository mailing list in evaluating options for self-hosting, although there is no formal procedure as yet. I picked https://try.gitea.io as a test-case. I'll update with any feedback from the mailing list. |
Depends on what you define as "important site functionality". But most features work w/o JavaScript. Sans a few AJAX-triggers...
We don't 🙂
Should work AFAIK
try.gitea.io doesn't have a ToS
We don't recommend any license at all. We do have a list of 'em all, and AFAIK GPL-3 is fairly high up the list.
A-grade https://www.ssllabs.com/ssltest/analyze.html?d=try.gitea.io&s=159.203.182.191&latest |
Updated as follows:
Remaining issues:
|
C0. Covered C3. I believe you can check Tor access off the list. There's nothing in the application that breaks by being accessed via the tor network or the tor browser. Depending on the tor exit node, it's also possible to run git+ssh:// over the network as well. CX. There are some vendor'ed dependencies in CY. There is a similar problem in C5. AFAICT, there's no bias against GPLv3, which means equal to or greater than. Requiring it be above all others wouldn't be in the spirit of freedom. There's already a prompt to select a license. What's missing is reading PREFERRED_LICENSES from the config and sticking those values up top in bold (ideally order maintained). Then, by including GPLv3 in that default list, you can check off C5. |
Updated as follows:
Remaining issues:
|
) (#2241) * Cleaning up public/ and documenting js/css libs. This commit mostly addresses #1484 by moving vendor'ed plugins into a vendor/ directory and documenting their upstream source and license in vendor/librejs.html. This also proves gitea is using only open source js/css libraries which helps toward reaching #1524. * Removing unused css file. The version of this file in use is located at: vendor/plugins/highlight/github.css * Cleaned up librejs.html and added javascript header A SafeJS function was added to templates/helper.go to allow keeping comments inside of javascript. A javascript comment was added in the header of templates/base/head.tmpl to mark all non-inline source as free. The librejs.html file was updated to meet the current librejs spec. I have now verified that the librejs plugin detects most of the scripts included in gitea and suspect the non-free detections are the result of a bug in the plugin. I believe this commit is enough to meet the C0.0 requirement of #1534. * Updating SafeJS function per lint suggestion * Added VERSIONS file, per request
Can we close a few more points here? E.g. #1484 is closed as far as I can see. |
Updated as follows:
|
I believe we can check off C5. The default is to provide no preference for any license above GPL-3.0+ and provide GPL-3.0+ is an available option. It is not weighted below any other option. FWIW- Alphabetical is organization, not preference. I think it would be a great idea to set a default list of preferred licenses (GPL-3.0+, MIT, Apache-2.0, ) in the default configuration, but that's a preference (not requisite) of the C5 requirement. Requiring a license selection at repository creation would be a terrible idea but it's a part of the current workflow. |
Posted queries to the repo-criteria-discuss mailing list about:
|
Skipped LibreJS test (my plugin/browser is bust and no-one seems to be volunteering). Passed C0.0 on the basis that https://try.gitea.io/vendor/librejs.html exists and any errors would be logged as bugs. |
Performed LibreJS test (success). Linked to results in #1484 |
So we could close this one ? |
I'm afraid I'm still waiting on an answer on C5. If someone can find a reference to it being ok for Savannah or GitLab, that would work. |
Also, please point me to where this should be documented for the eventual merge request. |
Feedback from the repo mailing list:
|
Passed C5 based on discussion. Next steps:
|
And then create a new one for grade 'B'? :) |
@MTecknology Seems like these might be problematic:
Since we don't enforce licenses, and the default is "no license". Though I'd argue that "not enforcing" is not the same as "encourage".
Again, depends on the definition of "recommend". I'd argue that we pass these, but they might not since we do list "nonfree" (according to FSF) licenses. And the wording is very iffy since what is "works of practical use"?? These should be okey though:
We do only use free software, and are labeled for LibreJS AFAIK. And the rule does not enforce the site to work if said code is disabled
We don't track or report anything to anyone, esp. not ad networks |
Maybe the instance owner should be able to configure their instance in order to achieve higher levels of compliance? For example, a given instance owner decides they will force users to pick a license and restrict the list to FSF-approved licenses. |
@kwill instance owner can already add/remove licenses for his instance what he needs. I'm also not against adding option to require license when creating repository but that should not be enabled by default |
I actually love the idea of being having the option to require a license selection, but I don't think that really matters for GNU criteria. I'd also agree with your assessment that not requiring a license is not the same as encouraging no license. There is an option to select a license and it's never hidden. I think a very simple solution to assert a lack of ambiguity meeting the criteria is to simply take the existing PREFERRED_LICENSES option, stick those licenses at the top of the license-selection menu (perhaps in bold), and add a rule (
Pedantically, it might not be required, but doing so would let us confidently say the criteria has definitely been met. |
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs during the next 2 weeks. Thank you for your contributions. |
This issue has been automatically closed because of inactivity. You can re-open it if needed. |
Shouldn't have been closed. |
Description
The GNU ethical repository criteria are used to evaluate whether a code host is suitable for hosting free software (aka open source). This mainly means making sure the host itself doesn't require or host proprietary software. At the time of writing Savannah and GitLab have passing grades, while SourceForge and GitHub do not.
At the moment Gitea fails because it uses JavaScript that is not labelled as free software. See #1484 for details.
Checklist
All important site functionality works correctly in free browsers, including IceCat, without running any nonfree software sent by the site. (C0) Passed (C0.0)
Any JavaScript used by an important site function either (1) is free software, and labeled properly for LibreJS to recognize as free, or (2) isn't necessary, so that the function works properly even if JavaScript is disabled in the browser. (C0.0) Passed. See https://try.gitea.io/vendor/librejs.html
Regarding sending code that executes based on a platform other than JavaScript, those conditions apply, mutatis mutandis. (C0.1) Not applicable.
No other nonfree software is required to use the site (thus, no Flash). (C1) Passed.
Does not discriminate against classes of users, or against any country. (C2) Passed.
Permits access via Tor (we consider this an important site function). (C3) Passed
The site's terms of service contain no odious conditions. (C4) Not applicable. No default/built-in TOS. Would be determined by a concrete instance.
Recommends and encourages GPL 3-or-later licensing at least as much as any other kind of licensing. (C5) Passed. No explicit recommendation, but offers to add the full license text to a new repository.
Support HTTPS properly and securely, including the site's certificates. (C6) Passed. Tested with https://www.ssllabs.com/ssltest/analyze.html?d=try.gitea.io
Next steps
1.1.
Complete Unsourced/undocumented libraries; missing license files; and other issues #14841.2.
Generate new LibreJS reportYes: results in Unsourced/undocumented libraries; missing license files; and other issues #14841.3.
Confirm librejs.html existsYes: https://try.gitea.io/vendor/librejs.htmlC5. License picker selects blank by default.This is not preferred since this means copyright-restricted-by-default. But this is a "B" grade issue, not "C" grade.C5. License picker effectively lists GPL-3.0-only but not GPL-3.0-or-later.Gitea does not "recommend" license, it provides a simple, optional mechanism for adding license text to a new repo, and listsGPL-3.0
with equal measure. The license text on it's own cannot make a distinction between 3-only and 3-or-later, that's up to the developer. See Explicitly add GPLv3-or-later to license list #2842 and https://lists.gnu.org/archive/html/repo-criteria-discuss/2017-11/msg00000.html and https://lists.gnu.org/archive/html/repo-criteria-discuss/2017-11/msg00001.htmlThe text was updated successfully, but these errors were encountered: