Top
Best
New

Posted by Animux 17 hours ago

Google has stopped pushing Git tags for some Android source code(grapheneos.social)
603 points | 243 commentspage 2
dataflow 14 hours ago|
Can't help but wonder if making it costly for themselves the entire point. So that they can later turn around and bill that distribution fee to the recipient.
xiaoyu2006 8 hours ago||
Classical not being evil stuff by Google.
m463 8 hours ago|
The third reich loved administrative processes too.
demibabs 14 hours ago||
Can someone explain what this means? Am not familiar with the terminology
paxys 14 hours ago||
Google uses libraries licensed under GPLv2 in Android (I’m not sure which specific part of Android the author is talking about), and so is required to make the full source code available for anyone to view. They previously used to publish release tag tarballs, but now require you to fill out a Google form and then (weeks later) will share the source with you on Google Drive.
thayne 7 hours ago||
Android is built on the linux kernel which uses GPLv2
Zigurd 13 hours ago|||
It means Google is making it harder than it needs to be to obtain source code. It's a dick move, and the only plausible interpretations are that it will get harder still, and it's intended to slow down projects like GrapheneOS. Even if it can be lawyered to be in the letter of the open source licenses that apply, it's not in the spirit of those licenses.
pydry 14 hours ago||
Google apparently wants everybody to know how much they hate abiding by the terms of open source licenses.
matheusmoreira 14 hours ago||
Every year a new low.
spydum 15 hours ago||
isn't this just malicious compliance? not clear how this would violate GPLv2?
osmsucks 15 hours ago||
Yeah, I agree. While this is a terrible move IMHO, from my superficial reading of the GPLv2 it doesn't really constitute a violation: the license imposes that the source be distributed to anyone who asks, potentially even charge a fee to cover its distribution costs, but it doesn't require that development happen in the open.
grapheneos 11 hours ago|||
GPL not defining a time limit to comply also doesn't mean there isn't a reasonable limit on compliance time. Google is more than capable of quickly complying. It comes down to whether a judge would think what they're doing is reasonable and we don't think they would.

The software also isn't in the preferred form for modification. The build system which runs Git commands and doesn't work as intended without it. You have to make a Git repository for it to work and there's meant to be a separate one for each separate component. It spews out errors.

shevy-java 13 hours ago|||
I mean, the only way to test this is to require of Google here to release the source code. And then look at how a court will evaluate it. For instance, what if Google never sends the source code? What if they claim that no request made it in? Though I guess this can be ensured, e. g. via letter that is registered being sent and then looking at Google's response to it.

So right now I think we all probably do not know. Google MIGHT refuse to release the source code, but it could release it - we don't know yet. Someone has to test that.

osmsucks 13 hours ago||
> For instance, what if Google never sends the source code? What if they claim that no request made it in?

That would be a violation of the license terms. All Google has done so far is, apparently, to make it hella annoying to access the source code (but not impossible).

gruez 11 hours ago||
My guess is that all their code is in their monorepo (google3), and they don't want to set up a tool to sync it to a public git repo, so the easiest way is just to have someone create a tarball on demand.
thayne 7 hours ago||
But google already built a tool to do exactly that: https://github.com/google/copybara
d_finch 5 hours ago||
Switching from Git tags to Google Drive downloads technically satisfies GPL but makes it much harder for downstream projects to track changes. The inconvenience is the point.
dgellow 16 hours ago||
Quoting the first tweet:

> Google replaced pushing Git tags for certain source code with obtaining source code via Google Drive after making a request through Google Forms. It's completely ridiculous and they've gradually become very slow at handling requests. They're in clear violation of the GPLv2 now.

petcat 15 hours ago||
> They're in clear violation of the GPLv2 now.

I don't think they are? They could just as easily require requests for the source code to be made through the regular mail instead of a Google form. It's still (maliciously) compliant with the license.

logological 14 hours ago|||
> I don't think they are?

If filling out the source code request form via Google Forms and/or accessing the download link via Google Drive requires the requester to run non-free (or at least non-GPLv2) JavaScript, then maybe it is in violation of section 6 of the GPLv2 ("You may not impose any further restrictions on the recipients' exercise of the rights granted herein") since the requester is then required to accept an entirely different set of licensing terms and conditions.

nomel 14 hours ago||
IANAL, but I don't think you're interpreting that correctly.

I believe section 3.b and 3.c are the rights this is referring to, where you can request the source, and even be changed for the physical act. Suggesting this extends to the license of the implementation of their contact system doesn't make sense. No method of contact, except physical, is going to meet your requirements, including sending postage, where the software used to sort your mail is not GPL.

r3trohack3r 14 hours ago||
I think it’s nuanced

I can see an argument that Google is requiring you to enter into a separate agreement with them (the terms they require you to agree to when using Google Forms) to request access to the GPL licensed source.

You do not enter into an agreement with the vendor of the software the postal service uses to sort your mail.

Dylan16807 13 hours ago|||
If they do force you into google forms and you can't send a letter then that's a potential issue.

Making you run javascript is a weaker argument...

waisbrot 13 hours ago|||
Don't they force you to sign up for a Google account to be able to gate access to a Google Drive file?
compiler-guy 13 hours ago||
No. As long as the sharing permission is “Anyone with the link”, then anyone can download from that link with wget or whatever.

Is that the permission they use? Who knows? But it’s at least possible.

hedora 10 hours ago|||
There's an easy way to put them into compliance violation:

Get a large brigade of android users to request access to source on each security update.

rlpb 15 hours ago|||
Didn't Google work very hard to avoid any GPL in Android, apart from the kernel? What is in there that is GPL?
cute_boi 15 hours ago||
I assume Linux.

I am very thankful linux is gpl. Because of GPL these tech giants are forced to release source code.

ares623 12 hours ago||
But Linux allowed Tivoization though.
hedora 9 hours ago||
There are worse things than Tivoization.

Google helped lobby the FSF to adopt GPLv3, which bans tivoization, but allows software as a service.

This is why you cannot have bash on MacOS, but Google can still use it to build surveillance capitalism, and arbitrarily enshittify your word processor.

gowld 15 hours ago||
How slow is "very slow" ? What is "certain source code"? Why is the OP being so coy about describing the problem?

Here is the form:

https://source.android.com/opensourcerequest

This is interesting:

> We might charge you a fee to cover the cost of processing. Your request must be sent according to whichever of the following rules applies:

> Within three years of the date you received the product from Google that included the component or binary files that are the subject of your request.

That "three years" is the minimum named in the GPLv2: https://opensource.org/license/gpl-2.0

HarlequinHair 15 hours ago|||
> How slow is "very slow?" The answer can be found two replies after: > Initially, Google would usually provide access to the tarballs within a couple hours. Lately, they're often taking weeks to get back to us. They're the ones who chose to use this archaic system instead of pushing Git tags and it's their responsibility to handle requests promptly.

> What is "certain source code"? The OP seems to be GrapheneOS, which heavy patches AOSP. I guess the context is Android source code and its security patches.

> Why is the OP being so coy about describing the problem? Not sure what you mean, I think they are explicit enough. I guess it's clear enough for developers how an upstream update should go. If people depend on big projects like AOSP, devs should be prompt in delivering source code, especially when it is mandatory by license.

Can you give us more details on how/why you think the OP is being coy?

grapheneos 7 hours ago||
It isn't about AOSP but rather the Pixel OS. Android 16 dropped support for Pixels from AOSP but we're still entitled to receiving the subset of the code derived from GPL/LGPL projects. We need the Pixel kernel driver sources for each stable and beta release. We're entitled to getting those in a reasonable amount of time. Weeks of delays is not reasonable for one of the largest tech companies in the world.

They could simply share a folder with us and put all of the releases in that folder so we don't need to request each release. They're going out of the way to make it difficult by requiring us to separately request it for every single release we want. Initially, it was consistently provided in under a business day. Recently, they've regularly been taking weeks or more to provide it. It's likely going to take longer now that more people are aware of it since they're going to receive more requests for it. They could simply push it to a repository on GitHub instead of assigning employees to do this manually. If for some reason they don't want to do that, they could at least automate it. For example, they could give us access to a folder with all the releases. Needing to request every single release tag is ridiculous.

grapheneos 7 hours ago|||
It applies to anything Google releases based on Android without pushing tags to AOSP for that fork of the code. It isn't a limited set of products but rather everything they make based on it. It applies to Android Wear, Android TV, Pixel phones and anything else not pushed to AOSP. We aren't being specific since we don't know everything they release based on Android. If they release a Beta emulator image for an upcoming version of Android without pushing tags, it applies to that too.

Google used to push all of the Pixel code from AOSP to it every month. They now only push AOSP releases intended to be used by other OEMs. That means they went from pushing each monthly, quarterly and yearly release of Android shipped by Pixels to only pushing 2 major releases per year (yearly release and QPR2) which are the only major releases used by other OEMs. They also provide security backports to those 2 major releases. They're still obligated to give us the GPL/LGPL licensed code for each Pixel OS release.

Google sold the Pixel 6 through Pixel 9a as being AOSP reference devices with 5-7 years of support from launch. They should be pushing the AOSP releases for those devices each month to fulfill their update commitment. GPL compliance is a clear legal requirement, but we think there's more than that too. Pixel 10 and later were not launched as AOSP reference devices since this changed was already made, so sure they have no obligation to provide anything beyond GPL code for those.

We didn't want to explain all this in our thread but we did explain it has to do with Pixels. It isn't only the kernel drivers. It's also the assorted set of stuff within the OS that's GPL/LGPL beyond that. There's more than there used to be since they moved to the OpenJDK libraries during the Oracle lawsuit.

zx8080 8 hours ago||
Is it about Android code?

Could this be related to the upcoming change (close) of the apk side-loading?

palata 2 hours ago|
I don't think it is directly related, other than Google being Google and deserving big big fines for being evil.
exabrial 9 hours ago|
Google's intent is to make web development and mobile development so complex that you have to rely on their browser or other means to get anything done.
More comments...