From b0f1be19e40f17bb717271da4cbd0942963c3e7a Mon Sep 17 00:00:00 2001 From: humanacollaborator Date: Sat, 24 Apr 2021 22:20:37 -0400 Subject: [PATCH] use checkmark/X in accessibility column --- forge_comparison.md | 64 ++++++++++++++++++++-------------------- tools/gen_forge_table.sh | 19 +++++++----- 2 files changed, 44 insertions(+), 39 deletions(-) diff --git a/forge_comparison.md b/forge_comparison.md index 1b842d0..781edcc 100644 --- a/forge_comparison.md +++ b/forge_comparison.md @@ -7,27 +7,27 @@ The following forges have no significant ethical issues: | *forge* | *registration publicly open* | *software* | *Tor-hostile* | *Cloudflare MitM* | *forced re/hCAPTCHA* | *forced execution of non-free software* | *notes* | |---|---|---|---|---|---|---|---| -[de.edumat.io](https://de.edumat.io)|y|Gitea 1.5.2|n|n|n|n|| -[gitea.it](https://gitea.it)|y|Gitea 1.12.4|n|n|n|n|| -[git.kiwifarms.net](https://git.kiwifarms.net)|y|Gitea 1.13.1|n|n|n|n|| -[git.nixnet.services](https://git.nixnet.services)|n|Gitea 1.13.1|n|n|n|n|formerly git.nixnet.xyz| -[git.disroot.org](https://git.disroot.org)|y|Gitea 1.13.6|n|n|n|n|SSH over Tor works; based in NL| -[git.fuwafuwa.moe](https://git.fuwafuwa.moe)([](http://git.fuwafuwaqtlkkxwc.onion))|y|Gitea 1.13.6|n|n|n|n|SSH over Tor [broken](http://git.fuwafuwaqtlkkxwc.onion/levena/fuwafuwa/issues/1); HTTPS over Tor works| -[git.safemobile.org](https://git.safemobile.org)|y|Gitea 1.13.6|n|n|n|n|| -[git.slashdev.space](https://git.slashdev.space)|y|Gitea 1.13.6|n|n|n|n|SSH over Tor broken (try HTTPS over Tor)| -[git.sdf.org](https://git.sdf.org)|y|Gitea 1.14.1|n|n|n|n|SSH over Tor broken but HTTPS over Tor works; some UTF-8 emoticons apparently broke in upgrade from 1.13.1 to 1.14.1 (this table shows boxes now)| -[framagit.org](https://framagit.org)|y|Gitlab (CE 13.10.2)|n|n|n|n|[may become more restricted](https://framablog.org/2019/09/26/lets-de-frama-tify-the-internet) in mid-2021| -[notabug.org](https://notabug.org)([](http://qs3zumwfci4tntnd.onion))|y|Gogs|n|n|n|n|based on [liberated](https://notabug.org/hp/gogs) fork of Gogs; [supports Tor](https://notabug.org/tor) (the *onion* web UI is currently disabled in response to attack but the onion site accepts git connections); supports SSH keys and SSH over Tor to NAB's onion service; no e-voting; NAB doesn't associate PGP keys to users, so PGP signed commits may be unavailable or more manual work needed.| -[launchpad.net](https://launchpad.net)|y|Launchpad|n|n|n|n|It's [unknown](https://wiki.freephile.org/wiki/Comparison_of_git_hosting_options) whether it functions without JavaScript; no wiki| -[gitee.com](https://gitee.com)|y|OSCHINA|n|n|n|n|based in China; registration over Tor with throwaway email works; no automatic mirror (unlike Gitea); some areas written in simplified chinese| -[sr.ht](https://sr.ht)|y|Sourcehut|n|n|n|n|javascript-free; supports patches sent by email| -[git.jami.net](https://git.jami.net)|y|Gitlab (CE)|n|n|n|n|possibly restricted to Jami efforts; acces to help page blocked to non-members so CE/EE unknown| -[git.shivering-isles.com](https://git.shivering-isles.com)|n|Gitlab (CE)|n|n|n|n|Registration is open but broken-- requires 2FA using a device that can QR-scan, and the email verification link is DoA: ![](images/shivering-isles_broken_reg.png) That stale link error triggers even when accessed immediately.| -[gitlab.freedesktop.org](https://gitlab.freedesktop.org)|y|Gitlab (CE)|n|n|n|n|possibly restricted to Freedesktop efforts| -[gitlab.gnome.org](https://gitlab.gnome.org)|y|Gitlab (CE)|n|n|n|n|possibly restricted to Gnome efforts| -[gitlab.tails.boum.org](https://gitlab.tails.boum.org)|y|Gitlab (CE)|n|n|n|n|possibly restricted to Tails efforts but no AUP says otherwise| -[gitlab.torproject.org](https://gitlab.torproject.org)|y|Gitlab (CE)|n|n|n|n|open registration; repo creation possibly restricted; Google reCAPTCHA is [allegedley](https://lists.gnu.org/archive/html/repo-criteria-discuss/2021-03/msg00000.html) used, but [not at registration time](https://gitlab.onionize.space)| -[source.small-tech.org](https://source.small-tech.org)|n|Gitlab (CE)|n|n|n|n|| +[de.edumat.io](https://de.edumat.io)|✅|Gitea 1.5.2|n|n|n|n|| +[gitea.it](https://gitea.it)|✅|Gitea 1.12.4|n|n|n|n|| +[git.kiwifarms.net](https://git.kiwifarms.net)|✅|Gitea 1.13.1|n|n|n|n|| +[git.nixnet.services](https://git.nixnet.services)|❌|Gitea 1.13.1|n|n|n|n|formerly git.nixnet.xyz| +[git.disroot.org](https://git.disroot.org)|✅|Gitea 1.13.6|n|n|n|n|SSH over Tor works; based in NL| +[git.fuwafuwa.moe](https://git.fuwafuwa.moe)([onion](http://git.fuwafuwaqtlkkxwc.onion))|✅|Gitea 1.13.6|n|n|n|n|SSH over Tor [broken](http://git.fuwafuwaqtlkkxwc.onion/levena/fuwafuwa/issues/1); HTTPS over Tor works| +[git.safemobile.org](https://git.safemobile.org)|✅|Gitea 1.13.6|n|n|n|n|| +[git.slashdev.space](https://git.slashdev.space)|✅|Gitea 1.13.6|n|n|n|n|SSH over Tor broken (try HTTPS over Tor)| +[git.sdf.org](https://git.sdf.org)|✅|Gitea 1.14.1|n|n|n|n|SSH over Tor broken but HTTPS over Tor works; some UTF-8 emoticons apparently broke in upgrade from 1.13.1 to 1.14.1 (this table shows boxes now)| +[framagit.org](https://framagit.org)|✅|Gitlab (CE 13.10.2)|n|n|n|n|[may become more restricted](https://framablog.org/2019/09/26/lets-de-frama-tify-the-internet) in mid-2021| +[notabug.org](https://notabug.org)([onion](http://qs3zumwfci4tntnd.onion))|✅|Gogs|n|n|n|n|based on [liberated](https://notabug.org/hp/gogs) fork of Gogs; [supports Tor](https://notabug.org/tor) (the *onion* web UI is currently disabled in response to attack but the onion site accepts git connections); supports SSH keys and SSH over Tor to NAB's onion service; no e-voting; NAB doesn't associate PGP keys to users, so PGP signed commits may be unavailable or more manual work needed.| +[launchpad.net](https://launchpad.net)|✅|Launchpad|n|n|n|n|It's [unknown](https://wiki.freephile.org/wiki/Comparison_of_git_hosting_options) whether it functions without JavaScript; no wiki| +[gitee.com](https://gitee.com)|✅|OSCHINA|n|n|n|n|based in China; registration over Tor with throwaway email works; no automatic mirror (unlike Gitea); some areas written in simplified chinese| +[sr.ht](https://sr.ht)|✅|Sourcehut|n|n|n|n|javascript-free; supports patches sent by email| +[git.jami.net](https://git.jami.net)|✅|Gitlab (CE)|n|n|n|n|possibly restricted to Jami efforts; acces to help page blocked to non-members so CE/EE unknown| +[git.shivering-isles.com](https://git.shivering-isles.com)|❌|Gitlab (CE)|n|n|n|n|Registration is open but broken-- requires 2FA using a device that can QR-scan, and the email verification link is DoA: ![](images/shivering-isles_broken_reg.png) That stale link error triggers even when accessed immediately.| +[gitlab.freedesktop.org](https://gitlab.freedesktop.org)|✅|Gitlab (CE)|n|n|n|n|possibly restricted to Freedesktop efforts| +[gitlab.gnome.org](https://gitlab.gnome.org)|✅|Gitlab (CE)|n|n|n|n|possibly restricted to Gnome efforts| +[gitlab.tails.boum.org](https://gitlab.tails.boum.org)|✅|Gitlab (CE)|n|n|n|n|possibly restricted to Tails efforts but no AUP says otherwise| +[gitlab.torproject.org](https://gitlab.torproject.org)|✅|Gitlab (CE)|n|n|n|n|open registration; repo creation possibly restricted; Google reCAPTCHA is [allegedley](https://lists.gnu.org/archive/html/repo-criteria-discuss/2021-03/msg00000.html) used, but [not at registration time](https://gitlab.onionize.space)| +[source.small-tech.org](https://source.small-tech.org)|❌|Gitlab (CE)|n|n|n|n|| ## Graylist @@ -35,12 +35,12 @@ These forges are not as seriously flawed as the blacklisted ones, but they shoul | *forge* | *registration publicly open* | *software* | *Tor-hostile* | *Cloudflare MitM* | *forced re/hCAPTCHA* | *forced execution of non-free software* | *notes* | |---|---|---|---|---|---|---|---| -([](http://githidep2hynhdmutuv7n2tei4iie2c7lyqz5fes3r5zzoxe5dshtxyd.onion))|y||n|n|n|n|**dead site**| -[codeberg.org](https://codeberg.org)|y|Gitea|n|n|n|n|Based in Germany; [censored an anti-Cloudflare project](codeberg.md) in a reckless and destructive manner; functions without any JavaScript and the JavaScript that exists is all 1st-party ([ref](https://github.com/privacytoolsIO/privacytools.io/issues/843#issuecomment-483830547))| +([onion](http://githidep2hynhdmutuv7n2tei4iie2c7lyqz5fes3r5zzoxe5dshtxyd.onion))|y||n|n|n|n|**dead site**| +[codeberg.org](https://codeberg.org)|✅|Gitea|n|n|n|n|Based in Germany; [censored an anti-Cloudflare project](codeberg.md) in a reckless and destructive manner; functions without any JavaScript and the JavaScript that exists is all 1st-party ([ref](https://github.com/privacytoolsIO/privacytools.io/issues/843#issuecomment-483830547))| [yerbamate.dev](https://yerbamate.dev)|y|Gitea|n|n|n|n|**dead site**| -[git.teknik.io](https://git.teknik.io)|n|Gitea 1.9.0|n|n|n|n|**Cloudflare NS server** (they can route all traffic via CF at the flip of a switch)| -[git.hardenedbsd.org](https://git.hardenedbsd.org)|y|Gitlab (EE)|n|n|n|n|**Cloudflare NS server** (they can route all traffic via CF at the flip of a switch); possibly restricted to BSD efforts| -[source.puri.sm](https://source.puri.sm)|y|Gitlab (EE)|n|n|n|n|open registration but activity is [restricted](https://social.librem.one/@kyle/106030358887310621) to puri.sm efforts; accounts are subject to spontaneous unjustified bans (apparent censorship): ![](images/purism_ban.png); no CAPTCHA (confirmed March 2021); is the JavaScript non-free with the enterprize edition?| +[git.teknik.io](https://git.teknik.io)|❌|Gitea 1.9.0|n|n|n|n|**Cloudflare NS server** (they can route all traffic via CF at the flip of a switch)| +[git.hardenedbsd.org](https://git.hardenedbsd.org)|✅|Gitlab (EE)|n|n|n|n|**Cloudflare NS server** (they can route all traffic via CF at the flip of a switch); possibly restricted to BSD efforts| +[source.puri.sm](https://source.puri.sm)|✅|Gitlab (EE)|n|n|n|n|open registration but activity is [restricted](https://social.librem.one/@kyle/106030358887310621) to puri.sm efforts; accounts are subject to spontaneous unjustified bans (apparent censorship): ![](images/purism_ban.png); no CAPTCHA (confirmed March 2021); is the JavaScript non-free with the enterprize edition?| ## Blacklist @@ -48,11 +48,11 @@ These forges have severe ethical or trust issues and should be boycotted: | *forge* | *registration publicly open* | *software* | *Tor-hostile* | *Cloudflare MitM* | *forced re/hCAPTCHA* | *forced execution of non-free software* | *notes* | |---|---|---|---|---|---|---|---| -github.com|n (exclusive walled garden)||y|n|n||**access granted or denied based on national origin**; [copious ethical issues](github.md)| -sourceforge.net|n (exclusive walled garden)||n|n|n||**access granted or denied based on national origin**; Important site [functionality does not work without non-free JavaScript](https://www.gnu.org/software/repo-criteria-evaluation.html)| -bitbucket.org|y|Bitbucket Server|n|n|n||**Amazon AWS-hosted**; needs non-free javascript that [clusterfucks uMatrix](https://github.com/privacytoolsIO/privacytools.io/issues/843#issuecomment-483830547); has some relationship with Netlify; access to source code [restricted](https://en.wikipedia.org/wiki/Bitbucket#Bitbucket_Server)| -libregit.org|n|Gitea|n|y|n|n|reg by invite only| +github.com|n (exclusive walled garden)||y|n|n|☣|**access granted or denied based on national origin**; [copious ethical issues](github.md)| +sourceforge.net|n (exclusive walled garden)||n|n|n|☣|**access granted or denied based on national origin**; Important site [functionality does not work without non-free JavaScript](https://www.gnu.org/software/repo-criteria-evaluation.html)| +bitbucket.org|✅|Bitbucket Server|n|n|n|☣|**Amazon AWS-hosted**; needs non-free javascript that [clusterfucks uMatrix](https://github.com/privacytoolsIO/privacytools.io/issues/843#issuecomment-483830547); has some relationship with Netlify; access to source code [restricted](https://en.wikipedia.org/wiki/Bitbucket#Bitbucket_Server)| +libregit.org|❌|Gitea|n|y|n|n|reg by invite only| git.openprivacy.ca|n (exclusive walled garden)|Gitea 1.12.4|y|n|n|n|Tor users get 404 - suspected botnet; [listed](https://codeberg.org/crimeflare/cloudflare-tor/src/branch/master/cloudflare_users/cloudflare_supporter.txt) as a Cloudflare supporter| -git.feneas.org|y|Gitlab (CE)|n|n|||reCAPTCHA impedes registration and imposes non-free s/w| -gitlab.com|n (exclusive walled garden)|Gitlab (EE)|n|y|||flagship instance running the *Enterprise Edition*; uses both hCAPTCHA & reCAPTCHA; heavily restricted with discriminatory policies; [copious ethical issues](gitlab-dot-com.md)| +git.feneas.org|✅|Gitlab (CE)|n|n|⚒|☣|reCAPTCHA impedes registration and imposes non-free s/w| +gitlab.com|n (exclusive walled garden)|Gitlab (EE)|n|y|⚒|☣|flagship instance running the *Enterprise Edition*; uses both hCAPTCHA & reCAPTCHA; heavily restricted with discriminatory policies; [copious ethical issues](gitlab-dot-com.md)| diff --git a/tools/gen_forge_table.sh b/tools/gen_forge_table.sh index 18274ef..eecd901 100755 --- a/tools/gen_forge_table.sh +++ b/tools/gen_forge_table.sh @@ -9,6 +9,8 @@ typeset -r db_file=$(mktemp --dry-run --suffix=.db) typeset -A sym=([red_circle]=$'\xF0\x9F\x94\xB4' [green_circle]=$'\xf0\x9f\x9f\xa2' + [red_crossmark]=$'\xe2\x9d\x8c' + [green_checkmark]=$'\xe2\x9c\x85' [test_tube]=$'\xf0\x9f\xa7\xaa' [cloud_lightening]=$'\xf0\x9f\x8c\xa9' [detective]=$'\xf0\x9f\x95\xb5' @@ -23,12 +25,13 @@ typeset -A sym=([red_circle]=$'\xF0\x9F\x94\xB4' [hammerpick]=$'\xE2\x9A\x92') # temporary hack. git.sdf.org upgraded to 1.14.1 and it broke the icons. -sym=([red_circle]=n - [green_circle]=y - [cloud_lightening]=y - [eye]=y - [skull]=y - [noentry]=n) +sym+=([red_circle]=n + [green_circle]=y + [cloud_lightening]=y + [eye]=y + [onion]=onion + [skull]=y + [noentry]=n) #local red_circle='🔴' #local green_circle='🟢' @@ -135,7 +138,7 @@ $(intro $lst)"' |---|---|---|---|---|---|---|---| ' sqlite3 "${db_file}" "select $name_clause||case when url_onion is null then '' else '([${sym[onion]}]('||url_onion||'))' end, - case when dead then '${sym[skull]}' when (cflogin and hrecaptcha = 'unavoidable') or antitor or nation_discrimination then '${sym[noentry]} (exclusive walled garden)' when not openpubreg then '${sym[red_circle]}' else '${sym[green_circle]}' end, + case when dead then '${sym[skull]}' when (cflogin and hrecaptcha = 'unavoidable') or antitor or nation_discrimination then '${sym[noentry]} (exclusive walled garden)' when not openpubreg then '${sym[red_crossmark]}' else '${sym[green_checkmark]}' end, case software when 'gitlab_ce' then 'Gitlab (CE)' when 'gitlab_ee' then 'Gitlab (EE)' when 'other' then 'other/unknown' else replace(software,'1.05','1.5') end, case when antitor then '${sym[eye]}' else 'n' end, case when cflogin then '${sym[cloud_lightening]}' else 'n' end, @@ -144,6 +147,8 @@ $(intro $lst)"' case when notes is null then '|' else notes||'|' end from forgesTbl where lst_kind = '$lst' order by software,url_clrnet collate nocase;" + + # for the future => order by naturalsort(software),url_clrnet... printf $'\n' done };#table_md