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
Comments
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. |
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. |
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. |
archived some pages in case the owner later tries to cover up and deny |
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.” 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. |
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. |
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.
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. |
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. |
@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
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: |
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. |
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: @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. |
Sort of ironic how a site against censorship of videos, from a cursory glance, is censoring the modifications to the source. |
https://invidio.us/css/default.css?v=3f97beb |
I think now it is http://lumendatabase.org/
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:
Citation: https://github.com/omarroth/invidious/blob/master/LICENSE
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.
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 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. |
This is a draft of what could be commented on in the aforementioned publications: |
@CuloArdido I think that is a good explanation of the matter at hand. |
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. |
Maybe https://gpl-violations.org/mailinglists/ could help? |
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. |
Alt-Censored is not a fork of Invidious. You can find the source here. |
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. |
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:
The text was updated successfully, but these errors were encountered: