Skip to content
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

Invidious fork altcensored.com is in violation of AGPL license. #1166

Closed
arthurrasmusson opened this issue May 8, 2020 · 25 comments
Closed

Comments

@arthurrasmusson
Copy link

arthurrasmusson commented May 8, 2020

The website altcensored.com appears to be a fork of the invidious codebase, however it does not provide a link to the source code as mandated by the invidious project's AGPL license.
Further it does not give credit to @omarroth the original creator of the project anywhere on the website's main page or the about page.

https://www.altcensored.com/about/ describes the website as follows:

YouTube limits access to videos that are neither illegal, nor violate their own Terms and Conditions or Community Guidelines.
"Limited state" videos are placed behind a warning message, cannot be shared, monetized or easily found, and have likes, comments, view counts and suggested videos disabled.
altCensored.com is an unbiased community catalog of 40542 such videos, including those removed by YouTube or self-censored. Of 5550 monitored channels, 729 have been deleted and 1596 are being archived in case of deletion.
Email new channels to admin@altCensored.com.

@haizrul
Copy link

haizrul commented May 8, 2020

I don't think this website altcensored.com use invidious, eventhough the interface looks like invidio.us. Upon inspecting, all videos on the web are hosted on https://archive.org, different from invidio.us which all the videos are hosted on google servers.

@arthurrasmusson
Copy link
Author

I noticed this in Chrome's developer tools while inspecting the site, however based on the site's description it appears that the archive.org functions are for backing up videos that the site has determined have been placed in youtube's isolation mode so that they are preserved if later taken down. This could be achieved by using invidious's existing RSS API functions which highlight discrepancies between the API's outputs for example when a channel is taken down. Without even speculating much on the details of how the backend works it's obvious that even the site's front end CSS is the same as invidious. I would be extremely surprised if they have not used the invidious codebase while developing altcensored.com.

@elypter
Copy link

elypter commented May 9, 2020

its very obvious that it is based on invidio.us. if the content wasn't that horrible that would actually be a solution to many feature suggestion. i think a lot of that code could have been useful as pull requests. unfortunately folks like this only take and never give. i doubt they would share the code volunatarely because it gives them an edge on spewing bullshit.

@elypter
Copy link

elypter commented May 9, 2020

archived some pages in case the owner later tries to cover up and deny
http://archive.fo/2Mtaa
http://archive.md/6W7cW
http://archive.md/Xgq2l
http://archive.md/ucowy
http://archive.md/LbHL0

@arthurrasmusson
Copy link
Author

arthurrasmusson commented May 10, 2020

I believe the content is just automatically cached videos that are removed from YouTube; so the only ‘pattern’ in terms of the way videos are selected is based on censorship - similar to how snew.notabug.io works for Reddit (https://github.com/snew/snew). Snew used a decentralized database technology called GunDB which caches the output of Reddit’s API and then diffs the output against the cache to highlight censorship. Based on my reading of altcensored.com’s about page it appears to automatically back up censored content in the same manner as Snew.notabug.io but applied to YouTube rather than Reddit. I think this is a fantastic idea even if the content itself isn’t something I personally agree with.

“I think all censorship should be deplored. My position is that bits are not a bug - That we should create communications technologies that allow people to send whatever they like to each other. And when people put their thumbs on the scale and try to say what can and can’t be sent, we should fight back both politically through protest and technologically through software.”
Aaron Swartz, co-founder of Reddit (1986 - 2013)

There used to be a similar website for censorship on Google search called “chilling effects” but I think that has since disappeared.

I just want to see the source code for how altcensored.com works as it appears the author has used an AGPL licensed codebase to create it and has not given back to the community which works on this code by complying with the terms of the license.

@elypter
Copy link

elypter commented May 12, 2020

i think it works by monitoring and backing up channels and videos that have been flaged and then display them if youtube deletes them. unlike with reddit it is impossible to have a shadow copy of all of youtube.

@arthurrasmusson
Copy link
Author

arthurrasmusson commented May 12, 2020

Upon examining the way altcensored.com is performing requests it appears rather than submitting requests to googlevideo.com (YouTube's backend from which media is served) or using Invidious's proxy functions it is instead pulling media content from archive.org.

image
On the page altcensored.com/about the author states:

altCensored.com is an unbiased community catalog of 40209 such videos, including those removed by YouTube or self-censored. Of 5612 monitored channels, 733 have been deleted and 1641 are being archived in case of deletion.
Email new channels to admin@altCensored.com.

These last two lines would suggest to me that the site is actively monitoring a list of channels incase videos are deleted or added to YouTube's "isolation mode" where they disappear from search and video suggestions. Based on the sentence stating "1641 are being archived in case of deletion" I suspect this is related to the requests to archive.org while the existing functions of Invidious are used to detect if a channel contained in subscriptions has been removed from YouTube. Invidious is already capable of detecting channel removal simply by diffing the output of YouTube's API against a cache of the same API's past output. It would be logical to assume that altcensored.com may be using this functionality to bootstrap the censorship detection capabilities it claims to provide, however we cannot be sure until we see the code.

Granted that this is the case it would effectively function as a "snew.notabug.io"-like anti-censorship tool for YouTube, however as you point out due to the obvious data constraints involved in “creating a shadow copy of all of YouTube” the altcensored.com site itself must be limited to storage and processing of video+channel metadata while the actual media content storage appears to be handled by archive.org's APIs rather than altcensored.com itself.

@altCensored
Copy link

thank-you for your interest in altCensored.com!

we do not use any code of the excellent YouTube privacy front-end invidio.us, as a cursory comparison of html clearly shows, but highly recommend it, were proudly inspired by it, and will continue to financially support it through Liberapay.

@arthurrasmusson
Copy link
Author

arthurrasmusson commented May 13, 2020

@altCensored appears to be a bad faith actor knowingly operating the website in violation of the Invidious project's AGPL license. The AGPL license explicitly requires that in order to operate a modified version of the invidious codebase (altcensored.com) that such a website operator must publish all modifications to the AGPL source code in full.

https://github.com/omarroth/invidious/blob/master/LICENSE
GNU Affero General Public License v3.0

Permissions of this strongest copyleft license are conditioned on making available complete source code of licensed works and modifications, which include larger works using a licensed work, under the same license. Copyright and license notices must be preserved. Contributors provide an express grant of patent rights. When a modified version is used to provide a service over a network, the complete source code of the modified version must be made available.

There was a thread on Twitter before the site blocked me from replying with any further information relating to violation of the license's terms. Here is an archive of the thread:
https://archive.is/1XPkO

@arthurrasmusson arthurrasmusson changed the title Invidious fork altcensored.com is in violation of aGPL license. Invidious fork altcensored.com is in violation of AGPL license. May 13, 2020
@tleydxdy
Copy link
Contributor

Enforcing AGPL (or any other free software license) is certainly very important, both to current and future contributers that want to make sure their work will not be used to take freedoms away, and to the whole free software world. Please reach out to FSF or SFC and so on, even if it's just to be sure there's nothing we can do.

@arthurrasmusson
Copy link
Author

arthurrasmusson commented May 13, 2020

The site has begun an attempt to cover up their tracks. They have deleted the original thread where this discussion occurred via Twitter which I had the foresight to archive incase of this very event:
Deleted: https://twitter.com/altcensored/status/1258746271436849163
Archived: https://archive.is/1XPkO

@elypter thanks for your archived links as well. We may need those in order to properly reach out to the Software Freedom Conservancy and Free Software Foundation for advice on how to proceed. If @tleydxdy, @elypter, or anyone else can help contribute to material to be added to a brief summary of the current evidence of license violation with archived links, screenshots, code snippets (HTML, CSS, Javascript) and any other information relating to unlawful use of the project's code it would aid in figuring out what resources can be made available with the legal advisors at the FSF and SFC. If the material is properly prepared hopefully we should be able to determine a reasonable set of options going forward.

@gripped
Copy link
Contributor

gripped commented May 13, 2020

Sort of ironic how a site against censorship of videos, from a cursory glance, is censoring the modifications to the source.
Clearly taken from Invidious. As the comparison with the html shows.
Just share the source @altCensored . It's really not difficult. And will probably save you grief ? You are in the wrong.

@recette-lemon
Copy link
Contributor

unknosdfsdfwn
The CSS tends to follow same rule order, same property order, same names, and same values. It's definitely a copy.

https://invidio.us/css/default.css?v=3f97beb
https://www.altcensored.com/css/default.css https://archive.vn/o6O5d

@CuloArdido
Copy link

There used to be a similar website for censorship on Google search called “chilling effects” but I think that has since disappeared.

I think now it is http://lumendatabase.org/

I just want to see the source code for how altcensored.com works

altCensored has an old tubeup fork, possibly what they are using to upload videos to archive.org automatically (does that mean they may also be violating the Tubeup GPL 3 license?).
If something like this were implemented in Invidious (at least as an optional feature) it would be easier to preserve/keep a backup of the videos that people normally watch since there are many reasons why a video or channel may disappear in addition to censorship (such as copyright violations, "sophisticated" regional blocks as in this video or that the owner decides to put its videos in private for X or Y reason). Otherwise, perhaps something could be coordinated with Archive Team.

@arthurrasmusson
Copy link
Author

arthurrasmusson commented May 27, 2020

altCensored has an old tubeup fork, possibly what they are using to upload videos to archive.org automatically (does that mean they may also be violating the Tubeup GPL 3 license?).

GPL v3 mandates that if a software developer is using GPL v3 licensed code in their product that they must publish the source code including their modifications to the original work when distributing binaries. In the case of the @altCensored Tubeup fork it appears they have a public repository and as a result they'd be complying with the GPL v3 license even if they were distributing binaries of the code which they do not appear to be doing. They are instead likely using this code on their backend to "monitor/backup" channels that are on their backup list described on the altcensored.com/about page. Having said that the GPL v3 license does not specifically mandate that private modifications to GPL v3 licensed source code be made public if said source code is not being distributed as a binary but rather is being used for the operation of a network service such as a website. In other words GPL v3 does not distinguish between “private” changes that you make to the source code of a GPL v3 licensed project for personal use only to be used on your own machine and “private” changes made to the source code which are then used for the operation of a website or Software As A Service (SAAS) tool which other users are then interacting with over the network.

For that reason the Invidious project specifically chose to use the AGPL license which unlike the GPL license is not permissive of unpublished source code modifications when the modified codebase is used to host a network service. While @altCensored has made public their tubeup fork as you point out the modifications they have made to the Invidious codebase have not been made public which would mean @altCensored is operating the altcensored.com website using the Invidious project's code in violation of the AGPL license which mandates specifically that:

"When a modified version is used to provide a service over a network, the complete source code of the modified version must be made available."

Citation: https://github.com/omarroth/invidious/blob/master/LICENSE

If something like this were implemented in Invidious (at least as an optional feature) it would be easier to preserve/keep a backup of the videos that people normally watch since there are many reasons why a video or channel may disappear in addition to censorship (such as copyright violations, "sophisticated" regional blocks as in this video or that the owner decides to put its videos in private for X or Y reason).

Yes, there are a number of reasons that the changes implemented by @altCensored would have been useful as pull requests rather than as a hard fork kept entirely closed source in violation of the project's license.

Otherwise, perhaps something could be coordinated with Archive Team.

How might something like this be accomplished coordinated with Archive Team? I'd love to discuss something like that with them. At this point the code to accomplish what altcensored.com is doing with archival of videos/channels and censorship resistance already exists, but we can't use it ourselves because they are simply stealing the Invidious project's code to use as a foundation for adding their own modifications without contributing these features back to the project which makes their website possible in the first place. While I suppose such features as these archive functions could perhaps be reimplemented from scratch it seems to me that many problems could be resolved simply if the obligations that @altCensored is already mandated to comply with under the AGPL license were met.

@CuloArdido
Copy link

CuloArdido commented Jun 4, 2020

How might something like this be accomplished coordinated with Archive Team?

They have many open source projects, from scripts for scraping specific sites to something as advanced as a server/bot that archives multiple sites or pages concurrently. Something that occurs to me is to facilitate access to the Invidious database in some way (more precisely the part that contains the information about the videos) so that they then archive the videos periodically with some of the tools listed here.

I'd love to discuss something like that with them.

Here are some ways to contact them, but considering the above I imagine they must have many ideas about how to use the Invidious code for their projects, in addition to improvements that can be added to it.

At this point the code to accomplish what altcensored.com is doing with archival of videos/channels and censorship resistance already exists, but we can't use it ourselves because they are simply stealing the Invidious project's code to use as a foundation for adding their own modifications without contributing these features back to the project which makes their website possible in the first place.

Maybe the Software Freedom Law Center can help in this case, or there is always the "old reliable" of sending a cease and desist threatening with start legal actions (perhaps to the company where they have registered the domain?).

Another option would be to spread this issue on sites where the platform is being talked to question their credibility, making more people aware that they are stealing the Invidious code and which in turn should generate more pressure on the owners of altCensored to publish their modifications. This is what I could find so far:
https://www.reddit.com/r/FreeSpeech/comments/gpt4bs/altcensoredcom_is_a_youtubebased_video_site_that/
https://wikispooks.com/wiki/AltCensored
https://kindlywakethehellup.wordpress.com/2020/05/26/limited-state-youtube-videos-censored-banned-altcensored-com/
https://www.burbuja.info/inmobiliaria/threads/altcensored-com-plataforma-de-videos-de-la-altright.1191866/ (spanish)
https://reclaimthenet.org/altcensored/ and https://reclaimthenet.org/altcensored-preview-images-blocked-facebook-links/
https://oilab.eu/4chans-youtube-a-fringe-perspective-on-youtubes-great-purge-of-2019/ (this one doesn't look as "promotional" as the rest)
http://luradogrilo.blogspot.com/2020/05/o-site-perfeito.html (portuguese)
https://www.thegatewaypundit.com/2020/05/altcensored-website-fights-censorship-hosting-deleted-youtube-videos/
https://texashuntingforum.com/forum/ubbthreads.php/topics/7845232/re-altcensored and https://texashuntingforum.com/forum/ubbthreads.php/topics/7845071/altcensored
http://www.freerepublic.com/focus/f-news/3846631/posts
http://www.winterwatch.net/2019/10/hallelujah-godspeed-altcensored-is-capturing-saving-censored-youtube-videos-channels/
https://www.nordfront.se/altcensored-com-i-kamp-mot-youtubes-censur-visar-bland-annat-395-filmer-fran-motstandsrorelsen.smr (swedish)
https://www.forbbodiesonly.com/moparforum/threads/you-tube-censored-vids.193360/
http://perfectpeacebaptistchurch.org/2020/05/21/altcensored-website-fights-censorship-by-hosting-deleted-youtube-videos/
http://www.renegadetribune.com/youtube-purge-over-100k-videos-17k-channels-and-500m-comments-removed-in-3-months/
https://zerovacunas.home.blog/2020/05/11/videos-limitados-del-estado-de-youtube-censurados-prohibidos-altcensored-com/ (spanish)
http://selenitaconsciente.com/?p=297585 (spanish)
https://newhumannewearthcommunities.wordpress.com/category/altcensored-com/
https://jonsnewplace.wordpress.com/2020/05/08/40k-censored-youtube-videos-729-deleted-channels/
https://www.blogdejoseplluesma.com/2020/05/no-se-trata-del-control-de-la-salud-se.html (spanish)
https://www.godlikeproductions.com/forum1/message4384353/pg1?c1=1&c2=1&disclaimer=Continue
https://www.theburningplatform.com/2020/05/06/the-hidden-agenda-behind-the-scamdemic/#comment-2009080
https://www.puebloconsciente.com/censura-canal-libre-altcensored-com/ (spanish)
https://itaintholywater.blogspot.com/2020/05/dr-buttar-on-hr-6666-contact-tracing.html?showComment=1589033207815#c5587751643577372247
https://theconservativetreehouse.com/2020/05/19/susan-rice-memo-declassified-and-released-confirms-discussion-about-flynn-as-subject-of-fbi-investigation/comment-page-3/#comment-8234707
https://jamesfetzer.org/2020/05/question-everything-2020-conference-austin-tx-14-15-november-2020/#comment-53273
https://contraperiodismomatrix.com/horrorla-kosa-esta-encima-de-amerika#comment-1270215 (spanish)
https://www.teaparty.org/altcensored-website-fights-censorship-by-hosting-deleted-youtube-videos-439873/

@arthurrasmusson
Copy link
Author

arthurrasmusson commented Jun 5, 2020

@CuloArdido your suggestions sound good to me. I have been somewhat inefficient with my time of late with a number of large changes in my life taking place in a brief period (a new job among other things) but I will attempt to reserve some time this weekend to assemble a summary of the information contained in or linked to from this thread pertaining to altcensored.com’s violation of the terms of the Invidious project’s AGPL licensed codebase. If during the time leading up to when I have completed my summary you and/or others would like to bring these violations to the attention of those who are discussing altcensored around the net perhaps that may also help altcensored to do the right thing before the Software Freedom Law Center has finished weighing the information we provide in terms of legal action.

@CuloArdido
Copy link

This is a draft of what could be commented on in the aforementioned publications:
Currently there is a controversy between altCensored and Invidious (alternative frontend to watch YouTube videos) since apparently the first took the source code of the second to implement its platform without giving the proper attributions nor publishing the modifications (something that is expressly prohibited by the license AGPL of Invidious). More details <a href="https://github.com/omarroth/invidious/issues/1166">here</a>.
Do you think something is missing or do you consider it to be explanatory enough? I also updated my other comment with more links I found.

@arthurrasmusson
Copy link
Author

@CuloArdido I think that is a good explanation of the matter at hand.

@ghost
Copy link

ghost commented Jul 30, 2020

I believe this should immediately be reported to the Free Software Foundation for further investigation, as they're the creators of the free software space & licenses as we know them and might have the resources to prosecute altCensored in case of a violation.

@chaosmonk1
Copy link

I believe this should immediately be reported to the Free Software Foundation for further investigation, as they're the creators of the free software space & licenses as we know them and might have the resources to prosecute altCensored in case of a violation.

The FSF only enforces the GPL for software that is part of the GNU project and for which the FSF is the rights holder. For a non-GNU project like Invidious the Software Freedom Conservancy would make more sense to approach. They provide legal assistance to enforce the GPL (or AGPL in this case) for member projects.

@chaosmonk1
Copy link

Maybe https://gpl-violations.org/mailinglists/ could help?

@chaosmonk1
Copy link

I believe this should immediately be reported to the Free Software Foundation for further investigation, as they're the creators of the free software space & licenses as we know them and might have the resources to prosecute altCensored in case of a violation.

The FSF only enforces the GPL for software that is part of the GNU project and for which the FSF is the rights holder.

Actually, someone I showed this to pointed out to me that the FSF says "The FSF can only enforce the license on works to which we hold the copyright, but we can still help bring about compliance even when the copyright lies elsewhere. If you need help with enforcement, please don’t hesitate to contact us at license-violation@gnu.org.", so I guess it would still be worth contacting the FSF.

@omarroth
Copy link
Contributor

Alt-Censored is not a fork of Invidious. You can find the source here.

@chaosmonk1
Copy link

It looks like they don't use all of Invidious's code, but entire files were taken verbatim. Compare this and this for example. So even though they wrote a lot of their own code, by combining it with some of Invidious's code they have created a derivative work and still need to comply with the Invidious's license. However, the primary way in which they were violating the license was not releasing their source code, which they fixed on July 5th when they released their source code on Gitlab under the terms of the AGPL.

@github-actions github-actions bot locked as resolved and limited conversation to collaborators Jun 14, 2021
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

10 participants