Rendered at 02:18:37 GMT+0000 (Coordinated Universal Time) with Cloudflare Workers.
hatthew 6 hours ago [-]
If you're like me and struggled to parse the title, my understanding is, "To obtain certain source code from Google, you could previously reference git tags, but now you have to fill out a form and wait for a human to give you a google drive link."
aleph_minus_one 3 hours ago [-]
> "To obtain certain source code from Google, you could previously reference git tags, but now you have to fill out a form and wait for a human to give you a google drive link."
Couldn't simply someone mirror these Google Drive folders?
grapheneos 2 hours ago [-]
Yes, and we do mirror their source code on GitLab. We put the upstream 17 code in the 17-base branch and our code on top of it in the 17 branch:
We also have mirrors of the QPR1 Beta and QPR2 Beta code there too.
It's not meant to be distributed as a tarball or a single Git repository. The build system runs Git commands to determine the revisions of each component. It's supposed to be in dozens of Git repositories. They provide repo metadata as part of the tarballs on Google Drive which you can see there but it's not a full replacement for the Git repository layout expected by builds. It's somewhat convenient having it in a monorepo but it's not the way it's meant to be and the build system makes it clear that it isn't happy about it despite running.
It would be nice if Google would simply push it to the Git repositories still available on AOSP again. The repositories still exist both internally and publicly but they're making it a hassle instead of simply pushing tags.
We publicly complained about these and other Pixel changes as they were ongoing and that directly led to our Motorola partnership. It was in Google's financial interest to work with us so we continue using Pixels and that's still the case. They're welcome to reach out to us and start collaborating again. We made a lot of upstream contributions and aren't their enemy.
Google should want more people to use their devices, apps and services. It shows how heavily they're violating antitrust laws by using monopolies to protect other monopolies when they sacrifice revenue for their devices and apps/services for it.
hedora 44 minutes ago [-]
Doesn't their change break supply chain security on Google's end?
With git tags, presumably people spoke in terms of cryptographic hashes. Now what prevents them from serving different Google drive contents to different accounts?
CBLT 39 minutes ago [-]
It doesn't break supply chain security for anybody with power to change the situation.
38 minutes ago [-]
mjg59 3 hours ago [-]
Yes, but that person still needs to file a request and wait several days
grapheneos 42 minutes ago [-]
It was initially taking under a business day for them to respond, but our recent requests have often taken weeks for them to get back to us. We want the code for all the Beta releases and are entitled to it.
There are other branches there with it for Android 17 QPR1 Beta and Android 17 QPR2 Beta.
Google could save everyone including themselves a lot of hassle by simply publishing it to GitHub. If they don't want to push it to AOSP for weird organizational reasons as part of saying AOSP doesn't support Pixels, fine. Taking weeks or more to get back to us isn't reasonable for one the largest tech companies in the world.
It's also questionable whether what they're providing is truly the preferred form for modification considering the build system is quite unhappy about the lack of Git repositories. They had to provide a repo manifest metadata file to work around part of it.
aleph_minus_one 3 hours ago [-]
But after one person does this, the source code access is a solved problem.
urbnspacecowboy 57 minutes ago [-]
No it's not, because "one person" has to keep sitting up and begging for access, every time there's a new release, over and over and over and over and over.
mjg59 3 hours ago [-]
But nobody has done this, which is why it's a problem for Graphene
beanjuiceII 2 hours ago [-]
Maybe should someone should do it then?
gruez 2 hours ago [-]
Submitting the form isn't too hard, so there's not much to be gained by getting a non-affiliated volunteer to do it. Also if they're not the ones requesting it, it becomes hard to ascertain the authenticity of the links (eg. it doesn't contain a backdoored kernel).
mjg59 2 hours ago [-]
They are, which is how they know how long it's taking.
grapheneos 1 hours ago [-]
They stopped pushing tags for any of the Pixel kernel or userspace driver repositories to AOSP. They also stopped pushing AOSP releases specific to Pixels which is why AOSP now only gets yearly releases, QPR2 releases and security backports to both of those. Other OEMs use the yearly and theoretically also the QPR2 releases. Both the yearly and QPR2 releases get monthly security backports. Since they dropped Pixel support from AOSP, they don't push the releases not shipped by other OEMs anymore.
These changes directly led to our Motorola partnership. One of their security people reached out to us after seeing our posts about this with the launch of Android 16. We haven't talked about it much since then since we adapted to it during the several weeks it delayed our Android 16 port. We then continued adapting to it and have fully worked around it. It was an ongoing problem but not a new one and we had accepted we had to deal with it as the new normal.
They were previously responding to our kernel source requests within a day. It was often done without hours. Despite the archaic system, this part wasn't that bad. Recently, they've been taking weeks or longer to get back to us for the requests which is ridiculous. It's the direct result of purposely adding a lot of friction with manual handling of the requests even if the delays weren't directly planned by management.
Weeks or months of delay is not reasonable for one of the largest tech companies in the world. GPL doesn't set a standard time limit for providing the sources, but that doesn't mean they can delay it indefinitely. They need to do it in a reasonable amount of time. What's reasonable for one of the largest tech companies in the world in 2026 with current technology is not the same as what was reasonable 30 years ago. Google chose to come up with a archaic way of distributing the sources involving someone manually going through a list and sharing Google Drive access. It's a deliberate way of making it painful. If they can't keep up with it and it gets delayed for weeks or months then they're not complying with the GPL by not providing it in a reasonable amount of time. Law is not code and a time limit not being explicitly written down doesn't mean there isn't a limit to what's reasonable for compliance.
They'll sell far fewer Pixels because of these overall changes. It pushes GrapheneOS and other projects towards other devices instead. For us, Pixels are being used due to security rather than ease of supporting them. It's now a lot harder to deal with Pixels than it would be for many other devices but they're currently still the most secure option. We're working on changing that and have a lot less reason to contribute to improving Pixels. We helped them fix serious security weaknesses for Pixels including vulnerabilities being exploited in the wild by forensic data extraction companies. Pixel security with the stock OS would be worse without GrapheneOS.
g-b-r 5 hours ago [-]
Let's just forget about the tags, the point is that they're not publishing what Graphene OS needs on any git repository that they can access.
Even before that it had been jokes of repositories, but at least you didn't have to ask for someone every time and wait for them to respond to the request.
(that's my understanding)
ProAm 2 hours ago [-]
i.e. its no longer open source, now access is granted by permission.
pas 2 hours ago [-]
what does the license say? provide source when asked or publish source?
OSI is not clear on this either. ("Where some form of a product is not distributed with source code, there must be a well-publicized means of obtaining the source code for no more than a reasonable reproduction cost, [...]")
nextaccountic 1 hours ago [-]
Google became one of those OEMs that drag their feet and make it a hassle to publish the source code. This happens because they are not interested in open source Android anymore
ProAm 2 hours ago [-]
Spirit of the law vs Letter of the law argument. Which ever side of the coin you stand on.
shevy-java 4 hours ago [-]
I don't think the real focus is on the tags, but on the delay here via a form as well as human interaction.
Worded differently, the simplest way to provide the source code is IMO via a URL that you can just wget. At the least this is done by so many projects out there. Google refusing to do so means Google wants to violate the GPLv2, since their alternatives are inferior.
> Google refusing to do so means Google wants to violate the GPLv2
Not an expert in GPL, but does it say that the source code needs to be provided by a url?
devy 3 hours ago [-]
GPL doesn't require them to publish the source in git. FWIW, Google can be compliant and publish the source in Physical Medium too if they opt too.
Also, the OP did mentioned that Google also squashed the git commit to a single commit for whatever reason.
mikestorrent 3 hours ago [-]
Can't wait for pallets of paper to get shipped out to comply maliciously
mjg59 3 hours ago [-]
The license requires that it be distributed on a medium customarily used for software interchange, and I don't think you'd stand a good chance of arguing that paper satisfies that.
buzer 2 hours ago [-]
Google Drive is customarily used for software interchange?
mjg59 2 hours ago [-]
My personal website isn't customarily used for software interchange, but http is. I think getting into discussions about which websites are acceptable and which aren't feels like a bad place.
exe34 3 hours ago [-]
Floppy disks.
mjg59 3 hours ago [-]
1) floppy disks are not customarily used for software interchange - where they are still used (aircraft software updates, bits of San Francisco's streetcar infrastructure) it's weird enough to be remarked upon.
2) the cost to Google of finding enough working floppies and paying someone to dump that much code onto them, then mailing them out, then having the other end just say "disk 323 was corrupted by USPS X rays, please send again" 20 times, would massively outweigh the benefits of making this awkward
> Starting in 2027*, a silent update, nonconsensually pushed by Google, will block every Android app whose developer hasn't registered with Google, signed their contract, paid up, and handed over government ID.
hedora 39 minutes ago [-]
Any word as to whether this will apply to GrapheneOS? If I had to choose, I'd block apps that did comply with this BS.
paxys 4 hours ago [-]
Doesn’t Apple do the same?
sunaookami 4 hours ago [-]
The difference is that Apple always did it with iOS and Google did not. Many chose Android because of that.
lambda 3 hours ago [-]
I specifically use Android because of this, among other requirements, that Apple imposes on software development on their platform.
I do not own general purpose computers that I am not allowed to develop software for without permission. I have always avoided consoles for that reason as well (Steam Machine and other similar platforms would be fine, but I've been avoiding consoles for long enough that it's not something I really look for any more).
I was a major Apple fanboy up until the iPhone. Left the ecosystem after the iPhone and macOS started moving in that direction as well.
I'm going to miss having a smartphone that I can use with my banking and EV apps, but probably for the best to get out of Google's ecosystem. Hoping that GrapheneOS will still allow me to use some of the apps that I like.
phire 3 hours ago [-]
I switched to an iPhone last year, mostly because I was getting sick of Samsung’s shit, and google doesn’t sell their pixel phones locally (and I don’t like Oppo).
But the other reason is that most of Android’s openness is quickly disappearing, so my main argument against iPhone is gone. And on the topic of privacy, I actually trust Apple way more than I trust the company that makes most of their revenue via advertising.
klardotsh 53 minutes ago [-]
Exactly this. Once the writing was on the wall that deGoogled / FOSS Android was on borrowed time (at best), a ton of the argument against iOS dissolved overnight. We can argue that Apple's anti-repair policies and anti-user-customization policies are their own evils, sure, but at least my phone works for its core tasks, and works phenomenally well at that. My deGoogled Android phones were mostly hobbled together piles of "it sometimes works, as long as I don't look at it too funny". This tradeoff was fine for fully owning my data and being able to install absolutely anything I wanted on my phone. With arbitrary APK installation disappearing, and unlocked bootloaders to install a less hostile fork of Android becoming such a rarity these days, I may as well at least not fear looking at my phone the wrong way when the moon is in alignment with the wrong star.
Source: about 12 years of Android usage (11 of those on unlocked bootloaders and custom ROMs, ~6? of those deGoogled) -> iPhone 16e.
mikestorrent 3 hours ago [-]
Android has been a brutal disappointment on this front since the day it launched. Sure, you could hack various devices and spend too much time on xda-developers and get custom ROMs, but if you compare that to the openness of even a stock Windows PC it's an absolute joke. Android was supposed to be the open Linux phone, when I bought my HTC G1 full of hope; turned into an inferior iPhone wannabe with worse performance and a low quality walled garden that keeps most people in without keeping the trash out.
Time to start over.
EastSmith 4 hours ago [-]
Does it matter that Apple does the same?
ProAm 2 hours ago [-]
> Doesn’t Apple do the same
yes and Apple does it for the 30% lock-in. Apple does it to protect their ecosystem. Apple also does not care about their customers, their developers, their suppliers or their employees. Closed systems do not help the populous. This is about money, captive audience and subscription revenues.
AOSP is open source. The Android running on most manufacturer-branded phones isn’t.
jmole 6 hours ago [-]
“In violation of GPL” is a stretch.
Can’t imagine Google is making the process of obtaining source code easier on themselves though.
Android has always been more source-open than “open source”. The vast majority of community contributions that make it into the codebase are security fixes and small bug fixes.
Everything else is essentially all the work of Google and (to some extent) Samsung.
flotzam 4 hours ago [-]
GrapheneOS is arguing that throwing away the metadata of however many commits and squashing them into a messy tarball is not the "preferred form of the work for making modifications", and that a manual process where you have to fill out a form in order to get a Google Drive link a week later is not "a medium customarily used for software interchange" in current times. Those are quotes from the GPLv2.
mjg59 3 hours ago [-]
If distributing under 3(b) then it's legitimate to only supply source on request. Historically source has been distributed without revision control history or metadata and been considered acceptable (the source tarballs on gnu.org are snapshots, for instance) so I think the preferred form argument is also tricky. I agree that there's huge value in having the individual commits, but from a GPL perspective we had this argument when Red Hat started flattening all patches in the RHEL kernel source 15 years ago.
flotzam 2 hours ago [-]
I've been wondering about the Red Hat model! Seems like so much of modern development involves git blame or whatever to make sense of how the code came to be, and sometimes rule out an "obvious" modification that actually turns out to be a bad idea now that you know the historical context.
GrapheneOS might have a better case though if it's not just about understanding the code but about how the Android build system expects that everything is in Git.
verdverm 2 hours ago [-]
we could argue about license semantics all day, either way Google is not being a good player
mjg59 1 hours ago [-]
Oh, I agree there.
grapheneos 50 minutes ago [-]
Lack of a specific time limit in GPL doesn't mean there isn't one based on what's reasonable. What they're doing it not reasonable.
> Android has always been more source-open than “open source”.
This is about Pixels rather than AOSP. Google decided Pixels would no longer be supported by AOSP which is why they stopped pushing the kernel drivers, userspace drivers and other Pixel related code to AOSP. They moved to publishing kernel driver code via Google Drive after filling out a Google Forms submission. They're handling those manually. It's a ridiculous system and comes across as them wanting to make it a hassle on purpose. Perhaps that isn't the case and someone simply needs to make the decision to simply push Git tags somewhere else. They could put it on GitHub if the goal is disassociating it from AOSP.
We accepted the archaic new system while they were responding to requests in a reasonable time but that ended. It's now very inconsistent and is regularly getting delayed for weeks or more.
> The vast majority of community contributions that make it into the codebase are security fixes and small bug fixes.
Open source does not imply anything about accepting contributions. SQLite barely takes any contributions and the same applies to many projects. There were a lot more code contributions to AOSP than you're describing prior to recent changes with Android 16. It was relatively easy to contribute to the lower level parts of it.
jsiepkes 6 hours ago [-]
> Everything else is essentially all the work of Google and (to some extent) Samsung.
There is plenty in Android which isn't the work of Google. For starters the Kotlin implementation and the Java implementation (OpenJDK).
phire 3 hours ago [-]
Google are absolutely within the letter of the GPL, pedantically so. But maybe not the sprit.
We didn't have git tags when GPL was written in 1989, and while we did have sccs and rcs, (and early versions of cvs) they just weren't that widely used, and generally not used for distribution.
Even when GPL 3.0 was written in 2005-2007, source tarballs were still the primary form of distribution, even though it was starting to become standard to additionally provide anonymous cvs, svn, or one of the brand new distributed systems like git.
But these days git is the primary form of distribution, and source tarballs are noting more an afterthought. Hell, even tags are a bit of an afterthought on many projects. It's basically become the norm to expect an healthy revision history for any open source code.
Based on it's stated goals of "freedom to modify the software you use", IMO if the GPL was written (or updated) today, it would most likely require the distribution of revision history and restrict how much that history can be squashed/rewritten.
flotzam 3 hours ago [-]
> We didn't have git tags when GPL was written in 1989
The GPLv2 requires "a medium customarily used for software interchange", not "a medium customarily used in 1989 for software interchange". Customs are the customs of the time someone is releasing the work.
phire 3 hours ago [-]
“a medium customarily used for software interchange“
Interesting choice of cropping for that quote.
If you had included the previous word, it would be blindly obvious that “on a medium“ is only talking about the transport layer, not the format of the data. So it would exclude distributing source code on tape, or even optical discs, as nobody uses those anymore. About the only medium used for source code distribution these days is “the internet”
You could potentially stretch this to excluding google drive, though google will argue that the medium is http, not google drive; But you can’t stretch this to requiring it be formatted as git.
And even if you did manage to successfully argue that, google would just ship it as one (tagged) commit per release. The history would still be missing.
flotzam 3 hours ago [-]
> If you had included the previous word, it would be blindly obvious that “on a medium“ is only talking about the transport layer, not the format of the data.
I can see your point. But OTOH if providing the "preferred form of the work for making modifications" requires not squashing commits into a big mess to frustrate someone trying to make sense of the code (I'm sure the Google engineers making modifications prefer to look at individual commits!), and Google is using Git anyway to create those commits, then it seems to me like there's an argument to be made that the customary medium used to interchange a range of Git commits is Git.
Open source doesn't imply open to contributions. And you could imagine source available software that's not open source but takes contributions (and this is not theoretical, I've seen this in the wild).
(However, that's quite orthogonal to being a dick about making the source code that you must share available)
leipert 3 hours ago [-]
GitLab is MIT licensed, but also has also parts which are source available but not MIT licensed. Contributions to both are possible.
kllrnohj 3 hours ago [-]
> Android has always been more source-open than “open source”. The vast majority of community contributions that make it into the codebase are security fixes and small bug fixes.
I believe this isn't actually about "Android" at all but rather Pixel. Android is still openly accessible on git. But the kernel sources for Pixel devices is now behind this big song & dance for some fucking inexcusable reason.
grapheneos 1 hours ago [-]
It's about the Pixel kernel drivers and build system. The source code for the base kernel tree itself is still part of AOSP. Everything related to Pixels is no longer being pushed to AOSP.
They stopped pushing tags for any of the Pixel kernel or userspace driver repositories to AOSP. They also stopped pushing AOSP releases specific to Pixels which is why AOSP now only gets yearly releases, QPR2 releases and security backports to both of those. Other OEMs are meant to use the yearly and QPR2 releases along with the security backports to those so that's all they push. The monthly and QPR1/QPR3 releases aren't used by their OEM partners so they stopped pushing them to AOSP. Those no longer being pushed is because of them deciding AOSP doesn't support Pixels anymore.
shevy-java 4 hours ago [-]
Why would it be a "stretch"?
The basic requirement is whether the source code is available - and made available. Are you certain that Google's solution here is ensuring that the source code is easily made available? So many other projects just provide a wget-able link. Why does Google want to make it harder to obtain the source code than those other projects?
> Android has always been more source-open than “open source”.
And what exactly does that mean? I don't know what your words mean here. More source open than open source? Is that a tautology?
> Everything else is essentially all the work of Google and (to some extent) Samsung.
Is it GPLv2? If so then I fail to see why anyone should get higher rights. Everyone gets the same for GPLv2. That's the whole point. I don't understand your statements here.
demibabs 2 hours ago [-]
> The basic requirement is whether the source code is available - and made available. Are you certain that Google's solution here is ensuring that the source code is easily made available?
The word “easily” sure did sneak into this sentence
knollimar 4 hours ago [-]
"And what exactly does that mean? I don't know what your words mean here. More source open than open source? Is that a tautology?"
I'm sure this means the source happens to be open rather than following the spirit of open source.
ajross 6 hours ago [-]
> “In violation of GPL” is a stretch.
The originally envisioned distribution method, in fact, was "Send FSF a blank 9-track tape and they'll fill it and mail it back". Nor, obviously, does anything prevent someone who downloads this from Drive from mirroring it on GitHub or wherever.
This is arguably bad stewardship of a historically open source project. It's certainly not a license violation.
Brian_K_White 6 hours ago [-]
It's paying a bill in pennies.
aleph_minus_one 3 hours ago [-]
> It's paying a bill in pennies.
This is actually a problem that is solved in German law:
(1) Niemand ist verpflichtet, deutsche Euro-Gedenkmünzen im Betrag von mehr als 200 Euro bei einer einzelnen Zahlung anzunehmen. Erfolgt eine einzelne Zahlung sowohl in Euro-Münzen als auch in deutschen Euro-Gedenkmünzen, ist niemand verpflichtet, mehr als 50 Münzen anzunehmen; dies gilt auch dann, wenn der Gesamtbetrag 200 Euro unterschreitet."
(1) No one is obliged to accept German commemorative euro coins totalling more than 200 euros in a single payment. If a single payment is made using both euro coins and German commemorative euro coins, no one is obliged to accept more than 50 coins; this also applies if the total amount is less than 200 euros."
ajross 3 hours ago [-]
To clarify given the subject at hand: German courts are 100% not going to find a Google Drive link to be disallowed by the GPLv2. That's literally about physical coins.
ajross 6 hours ago [-]
It's not even that. Downstream projects host their own mirrors already, this is an annoying hoop to jump through for the maintainers (basically suck down a bunch of tarballs for every release, analogous to grabbing stuff from FTP sites back in the day), but not exactly a terrible hardship compared to the really very significant work of maintaining a large project.
simoncion 5 hours ago [-]
There might be some merit to a claim that Google Drive isn't a medium customarily used for software distribution these days, but, yeah, it's definitely not paying a thousand+ cent bill in pennies, and I'm skeptical that it's a violation of the letter of the GPL.
It is definitely a dick move by Google.
jraph 5 hours ago [-]
> There might be some merit to a claim that Google Drive isn't a medium customarily used for software distribution these days
I suppose forcing a means to share the source code could have been too restrictive, but the GPL only speaks about the shape of the source code itself (it should be "the preferred form of the work for making modifications to it"), not how it is shared, so indeed, not a violation of the letter of the GPL I think.
It's like what we had in France and the Hadopi, which requested ISPs to share the IP addresses of people torrenting a defined set of files. One of them sent them printed on paper... (But the malicious compliance was cool in this case).
simoncion 4 hours ago [-]
> I suppose forcing a means to share the source code could have been too restrictive, but the GPL only speaks about the shape of the source code itself (it should be "the preferred form of the work for making modifications to it"), not how it is shared...
With the greatest of respect, you've forgotten what the licenses say.
GPLv2: [0]
3. You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following:
a) Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or,
b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or,
...
GPLv3: [1]
6. Conveying Non-Source Forms.
You may convey a covered work in object code form under the terms of sections 4 and 5, provided that you also convey the machine-readable Corresponding Source under the terms of this License, in one of these ways:
a) Convey the object code in, or embodied in, a physical product (including a physical distribution medium), accompanied by the Corresponding Source fixed on a durable physical medium customarily used for software interchange.
b) Convey the object code in, or embodied in, a physical product (including a physical distribution medium), accompanied by a written offer [to convey the source code upon request]... on a durable physical medium customarily used for software interchange, for a price no more than your reasonable cost of physically performing this conveying of source, or (2) access to copy the Corresponding Source from a network server at no charge.
...
d) Convey the object code by offering access from a designated place (gratis or for a charge), and offer equivalent access to the Corresponding Source in the same way through the same place at no further charge. ...
e) Convey the object code using peer-to-peer transmission, provided you inform other peers where the object code and Corresponding Source of the work are being offered to the general public at no charge under subsection 6d.
This unambiguously speaks about the form in which the source code is shared. If the licenses didn't specify this, folks would be compliant with the letter of the license by shipping you a printout of the source code and everything you need to build it and charging you for both the labor to generate that enormous, heavy-ass printout and shipping and handling to get it to you. [2]
[2] To downvoters: Don't forget that OCR was decent even back in the 1990s... certainly good enough for a good-quality printout in a fixed-width font to be -strictly speaking- machine-readable, and it has only gotten better as time has wobbled on. If you don't believe my account of the history, go look up how Zimmerman exported copies of PGP back when it was considered an export-controlled munition.
jraph 1 hours ago [-]
Indeed, you are right, my phrasing "but the GPL only speaks about the shape of the source code itself" is somewhat wrong or at least incomplete. I should have been more careful. It does force some stuff about how to convey the corresponding source; and it seems the GPLv3 tries to close some loopholes or address some situations more explicitly. You cited the parts of the GPLv2 and GPLv3 I should have.
I stand by the position that all this doesn't seem very restrictive though. I don't think the GPL could have been without a risk of making some legitimate cases litigious or something.
simoncion 56 minutes ago [-]
> my phrasing ... is somewhat wrong
It's completely wrong.
> I stand by the position that all this doesn't seem very restrictive though.
Is your position that it's less restrictive than it needs to be?
If that's not your position, then I'm not at all sure why you're bringing this up. If that is your position, then I disagree with you. The entire point of the GPL is to require distributors to "share and share alike". It's not a "sue everyone into oblivion" license, it's a "don't be a fuckin asshole with this gift I gave you to use, inspect, and modify however you wish... pass it along to others under the same terms" license.
ajross 3 hours ago [-]
People are getting way too bent out of shape over that "medium customarily used for software interchange" bit. It doesn't mean github. It doesn't mean "the medium I use most commonly".
Basically, if you think courts are going to be OK with interpreting "download from this FTP site" as acceptable but "download the same tarball from Drive" as unacceptable, you're fooling yourself.
Drive is fine, given the spirit of the license. It's merely inconvenient.
simoncion 2 hours ago [-]
> People are getting way too bent out of shape...
I hope you're not including me in "people". Remember that I said:
There might be some merit to a claim that Google Drive isn't a medium customarily used for software distribution these days, but ... I'm skeptical that it's a violation of the letter of the GPL.
I was quoting the text of the GPL to point out to jraph that it absolutely does restrict how source code is distributed to ensure that licensees are obligated to distribute in a format that's actually useful to the typical recipient, rather than permitting a licensee to ship a couple-hundred pounds of printouts and still be in compliance with the license.
leni536 5 hours ago [-]
While I don't find any requirements on how timely the source distribution must be upon request, one can reasonably say that there must be a line between 1 nanosecond and 1 century.
shevy-java 4 hours ago [-]
Courts would most definitely make a distinction here. For instance, one century would mean "refusing to release the source code".
We should test how long it takes Google to release source code upon request. And whether it is 100%. I think we should test whether Google fulfils the GPL here. That's now a challenge.
dgellow 7 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 6 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 5 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 5 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 5 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 5 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 4 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 4 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 37 minutes 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 6 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 6 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 3 hours ago [-]
But Linux allowed Tivoization though.
hedora 33 minutes 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 6 hours ago [-]
How slow is "very slow" ? What is "certain source code"? Why is the OP being so coy about describing the problem?
> 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.
> 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?
cdrnsf 4 hours ago [-]
Give them a few years and they'll only provide it by printing out a copy and mailing it to you.
RachelF 1 hours ago [-]
Don't give them ideas!
spydum 6 hours ago [-]
isn't this just malicious compliance? not clear how this would violate GPLv2?
osmsucks 6 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 2 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 4 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 4 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 2 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.
gumby 5 hours ago [-]
GPL says that you can give that link to anyone you want.
If someone on HN has received one of these links, feel free to post it here.
demibabs 6 hours ago [-]
Can someone explain what this means? Am not familiar with the terminology
paxys 5 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.
Zigurd 4 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.
6 hours ago [-]
pydry 5 hours ago [-]
Google apparently wants everybody to know how much they hate abiding by the terms of open source licenses.
dataflow 5 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.
matheusmoreira 5 hours ago [-]
Every year a new low.
QuantumNoodle 2 hours ago [-]
Yo Louis Rossmann, do your thing!
a-dub 3 hours ago [-]
hanlon's razor comes to mind. which trees are these? weird device trees that have complicated third party licensing nonsense attached?
i remember jumping through crazy hoops to interact with a google open source project years ago. i wouldn't be surprised if it's just megacorp bureaucracy.
el1s7 4 hours ago [-]
It's a bit unclear what this is about exactly. What releases are we talking about? How git tags come into play here?
zb3 4 hours ago [-]
Pixel kernel drivers which are GPLv2, you need them to build the kernel modules from source. Git tags in this case refer to beta versions, but it being "beta" doesn't mean they can delay the release.
torgeros 5 hours ago [-]
That's like this fun fact where Microsoft needs to send you source code via post when you mail them a 5$ check. lol
water-data-dude 30 minutes ago [-]
"Free" as in "free to play by our rules or suffer"
zephen 1 hours ago [-]
Many commenters agree this is not a nice move by google.
But is there any reason that google might have that they feel is legitimate?
For example, delaying releasing source until they've had a chance to update all the pixels with security patches might be good from their perspective, to reduce zero-day exploits for people they are supporting.
hedora 30 minutes ago [-]
This just breaks legitimate downstream distros that target Pixel devices.
Ransomware gangs, etc still get red carpet service.
shevy-java 4 hours ago [-]
Google needs to lose in court here. This company is getting more and more evil by the day.
IshKebab 3 hours ago [-]
This is a direct consequence of their loss to Epic. They saw Apple win because they didn't have any competition to stifle, and they want the same. Pretty shit.
dminik 3 hours ago [-]
I really don't understand the thought process here.
Judging by public statements, Google is one of the 3 big western AI companies. Surely they should be rolling in cash and working hard towards AGI.
And yet, for whatever reason, they can't help themselves from further restricting user freedoms on Android. Why?
I don't want to be conspiratorial, but surely it's not money, right? It has to be control. Someone high up at Google just seems to resent people having control over their own devices.
KetoManx64 3 hours ago [-]
Both. Google has plenty of government contracts, they are undoubtedly pushing for more surveillance, and also on the inverse side, we are now in an age where users can create their own apps to do whatever they want within a few hours, sothis risks their Google Play Store profits
gruez 2 hours ago [-]
>Both. Google has plenty of government contracts, they are undoubtedly pushing for more surveillance,
I don't get it, are the government contracts somehow contingent on them oppressing users and stifling open source?
>we are now in an age where users can create their own apps to do whatever they want within a few hours, sothis risks their Google Play Store profits
If that's the reason, they're doing a pretty poor job, since it's trivially bypassable by running "adb install".
shalom1112 3 hours ago [-]
[dead]
PunchyHamster 4 hours ago [-]
I have feeling that is related to their upcoming changes that make sideloading harder
sunshine-o 4 hours ago [-]
The era of big tech cooperation around free software is obviously over.
Those kind of moves are petty but there are worst tricks they can pull unfortunately.
It seems Grapheneos is the rare actor willing to put up a fight nowadays, and their "partnership" with Motorola seems to be a first step. They need to ensure a hardware platform.
My guess is at some point they will have to fork AOSP, just because Google will take it in directions that go against Grapheneos principles.
izacus 6 hours ago [-]
Source code of which components is that? It's not very clear from the mastodon thread.
grapheneos 2 hours ago [-]
Pixel kernel drivers.
We mirror the source code on GitLab. We put the upstream 17 code in the 17-base branch and our code on top of it in the 17 branch:
We also have mirrors of the QPR1 Beta and QPR2 Beta code there too.
hskimse 3 hours ago [-]
Maybe AOSP source code
grapheneos 2 hours ago [-]
It's not AOSP but rather Pixels. Pixels are no longer support by AOSP. They went out of the way to no longer push any of the Pixel specific repositories or releases to AOSP. The impact is mainly that Pixels are now harder to support than a lot of other devices rather than easier. They'll sell far fewer Pixels over time because of these decisions.
I think leadership in Google is getting worst day by day. The main reason to use Android is mostly sideloading and open source and they are trying to sabotage both.
Couldn't simply someone mirror these Google Drive folders?
https://gitlab.com/grapheneos/kernel_pixel/-/tree/17-base
https://gitlab.com/grapheneos/kernel_pixel_muzel/-/tree/17-b...
We also have mirrors of the QPR1 Beta and QPR2 Beta code there too.
It's not meant to be distributed as a tarball or a single Git repository. The build system runs Git commands to determine the revisions of each component. It's supposed to be in dozens of Git repositories. They provide repo metadata as part of the tarballs on Google Drive which you can see there but it's not a full replacement for the Git repository layout expected by builds. It's somewhat convenient having it in a monorepo but it's not the way it's meant to be and the build system makes it clear that it isn't happy about it despite running.
It would be nice if Google would simply push it to the Git repositories still available on AOSP again. The repositories still exist both internally and publicly but they're making it a hassle instead of simply pushing tags.
We publicly complained about these and other Pixel changes as they were ongoing and that directly led to our Motorola partnership. It was in Google's financial interest to work with us so we continue using Pixels and that's still the case. They're welcome to reach out to us and start collaborating again. We made a lot of upstream contributions and aren't their enemy.
Google should want more people to use their devices, apps and services. It shows how heavily they're violating antitrust laws by using monopolies to protect other monopolies when they sacrifice revenue for their devices and apps/services for it.
With git tags, presumably people spoke in terms of cryptographic hashes. Now what prevents them from serving different Google drive contents to different accounts?
This is the relevant code for Android 17:
https://gitlab.com/grapheneos/kernel_pixel/-/tree/17-base
https://gitlab.com/grapheneos/kernel_pixel_muzel/-/tree/17-b...
There are other branches there with it for Android 17 QPR1 Beta and Android 17 QPR2 Beta.
Google could save everyone including themselves a lot of hassle by simply publishing it to GitHub. If they don't want to push it to AOSP for weird organizational reasons as part of saying AOSP doesn't support Pixels, fine. Taking weeks or more to get back to us isn't reasonable for one the largest tech companies in the world.
It's also questionable whether what they're providing is truly the preferred form for modification considering the build system is quite unhappy about the lack of Git repositories. They had to provide a repo manifest metadata file to work around part of it.
These changes directly led to our Motorola partnership. One of their security people reached out to us after seeing our posts about this with the launch of Android 16. We haven't talked about it much since then since we adapted to it during the several weeks it delayed our Android 16 port. We then continued adapting to it and have fully worked around it. It was an ongoing problem but not a new one and we had accepted we had to deal with it as the new normal.
They were previously responding to our kernel source requests within a day. It was often done without hours. Despite the archaic system, this part wasn't that bad. Recently, they've been taking weeks or longer to get back to us for the requests which is ridiculous. It's the direct result of purposely adding a lot of friction with manual handling of the requests even if the delays weren't directly planned by management.
Weeks or months of delay is not reasonable for one of the largest tech companies in the world. GPL doesn't set a standard time limit for providing the sources, but that doesn't mean they can delay it indefinitely. They need to do it in a reasonable amount of time. What's reasonable for one of the largest tech companies in the world in 2026 with current technology is not the same as what was reasonable 30 years ago. Google chose to come up with a archaic way of distributing the sources involving someone manually going through a list and sharing Google Drive access. It's a deliberate way of making it painful. If they can't keep up with it and it gets delayed for weeks or months then they're not complying with the GPL by not providing it in a reasonable amount of time. Law is not code and a time limit not being explicitly written down doesn't mean there isn't a limit to what's reasonable for compliance.
They'll sell far fewer Pixels because of these overall changes. It pushes GrapheneOS and other projects towards other devices instead. For us, Pixels are being used due to security rather than ease of supporting them. It's now a lot harder to deal with Pixels than it would be for many other devices but they're currently still the most secure option. We're working on changing that and have a lot less reason to contribute to improving Pixels. We helped them fix serious security weaknesses for Pixels including vulnerabilities being exploited in the wild by forensic data extraction companies. Pixel security with the stock OS would be worse without GrapheneOS.
Even before that it had been jokes of repositories, but at least you didn't have to ask for someone every time and wait for them to respond to the request.
(that's my understanding)
OSI is not clear on this either. ("Where some form of a product is not distributed with source code, there must be a well-publicized means of obtaining the source code for no more than a reasonable reproduction cost, [...]")
Worded differently, the simplest way to provide the source code is IMO via a URL that you can just wget. At the least this is done by so many projects out there. Google refusing to do so means Google wants to violate the GPLv2, since their alternatives are inferior.
https://distrowatch.com/ has many convenient links to URLs on the left side; I often use that to download the latest and greatest and compile it away, e. g. https://ftp.isc.org/isc/bind9/9.20.27/bind-9.20.27.tar.xz as a current example, taken from the left panel.
Not an expert in GPL, but does it say that the source code needs to be provided by a url?
Also, the OP did mentioned that Google also squashed the git commit to a single commit for whatever reason.
> Starting in 2027*, a silent update, nonconsensually pushed by Google, will block every Android app whose developer hasn't registered with Google, signed their contract, paid up, and handed over government ID.
I do not own general purpose computers that I am not allowed to develop software for without permission. I have always avoided consoles for that reason as well (Steam Machine and other similar platforms would be fine, but I've been avoiding consoles for long enough that it's not something I really look for any more).
I was a major Apple fanboy up until the iPhone. Left the ecosystem after the iPhone and macOS started moving in that direction as well.
I'm going to miss having a smartphone that I can use with my banking and EV apps, but probably for the best to get out of Google's ecosystem. Hoping that GrapheneOS will still allow me to use some of the apps that I like.
But the other reason is that most of Android’s openness is quickly disappearing, so my main argument against iPhone is gone. And on the topic of privacy, I actually trust Apple way more than I trust the company that makes most of their revenue via advertising.
Source: about 12 years of Android usage (11 of those on unlocked bootloaders and custom ROMs, ~6? of those deGoogled) -> iPhone 16e.
Time to start over.
yes and Apple does it for the 30% lock-in. Apple does it to protect their ecosystem. Apple also does not care about their customers, their developers, their suppliers or their employees. Closed systems do not help the populous. This is about money, captive audience and subscription revenues.
Can’t imagine Google is making the process of obtaining source code easier on themselves though.
Android has always been more source-open than “open source”. The vast majority of community contributions that make it into the codebase are security fixes and small bug fixes.
Everything else is essentially all the work of Google and (to some extent) Samsung.
GrapheneOS might have a better case though if it's not just about understanding the code but about how the Android build system expects that everything is in Git.
> Android has always been more source-open than “open source”.
This is about Pixels rather than AOSP. Google decided Pixels would no longer be supported by AOSP which is why they stopped pushing the kernel drivers, userspace drivers and other Pixel related code to AOSP. They moved to publishing kernel driver code via Google Drive after filling out a Google Forms submission. They're handling those manually. It's a ridiculous system and comes across as them wanting to make it a hassle on purpose. Perhaps that isn't the case and someone simply needs to make the decision to simply push Git tags somewhere else. They could put it on GitHub if the goal is disassociating it from AOSP.
We accepted the archaic new system while they were responding to requests in a reasonable time but that ended. It's now very inconsistent and is regularly getting delayed for weeks or more.
> The vast majority of community contributions that make it into the codebase are security fixes and small bug fixes.
Open source does not imply anything about accepting contributions. SQLite barely takes any contributions and the same applies to many projects. There were a lot more code contributions to AOSP than you're describing prior to recent changes with Android 16. It was relatively easy to contribute to the lower level parts of it.
There is plenty in Android which isn't the work of Google. For starters the Kotlin implementation and the Java implementation (OpenJDK).
We didn't have git tags when GPL was written in 1989, and while we did have sccs and rcs, (and early versions of cvs) they just weren't that widely used, and generally not used for distribution.
Even when GPL 3.0 was written in 2005-2007, source tarballs were still the primary form of distribution, even though it was starting to become standard to additionally provide anonymous cvs, svn, or one of the brand new distributed systems like git.
But these days git is the primary form of distribution, and source tarballs are noting more an afterthought. Hell, even tags are a bit of an afterthought on many projects. It's basically become the norm to expect an healthy revision history for any open source code.
Based on it's stated goals of "freedom to modify the software you use", IMO if the GPL was written (or updated) today, it would most likely require the distribution of revision history and restrict how much that history can be squashed/rewritten.
The GPLv2 requires "a medium customarily used for software interchange", not "a medium customarily used in 1989 for software interchange". Customs are the customs of the time someone is releasing the work.
Interesting choice of cropping for that quote.
If you had included the previous word, it would be blindly obvious that “on a medium“ is only talking about the transport layer, not the format of the data. So it would exclude distributing source code on tape, or even optical discs, as nobody uses those anymore. About the only medium used for source code distribution these days is “the internet”
You could potentially stretch this to excluding google drive, though google will argue that the medium is http, not google drive; But you can’t stretch this to requiring it be formatted as git.
And even if you did manage to successfully argue that, google would just ship it as one (tagged) commit per release. The history would still be missing.
I can see your point. But OTOH if providing the "preferred form of the work for making modifications" requires not squashing commits into a big mess to frustrate someone trying to make sense of the code (I'm sure the Google engineers making modifications prefer to look at individual commits!), and Google is using Git anyway to create those commits, then it seems to me like there's an argument to be made that the customary medium used to interchange a range of Git commits is Git.
But the stronger argument is that the Android build system expects everything to be in Git: https://news.ycombinator.com/item?id=49368983
(However, that's quite orthogonal to being a dick about making the source code that you must share available)
I believe this isn't actually about "Android" at all but rather Pixel. Android is still openly accessible on git. But the kernel sources for Pixel devices is now behind this big song & dance for some fucking inexcusable reason.
They stopped pushing tags for any of the Pixel kernel or userspace driver repositories to AOSP. They also stopped pushing AOSP releases specific to Pixels which is why AOSP now only gets yearly releases, QPR2 releases and security backports to both of those. Other OEMs are meant to use the yearly and QPR2 releases along with the security backports to those so that's all they push. The monthly and QPR1/QPR3 releases aren't used by their OEM partners so they stopped pushing them to AOSP. Those no longer being pushed is because of them deciding AOSP doesn't support Pixels anymore.
The basic requirement is whether the source code is available - and made available. Are you certain that Google's solution here is ensuring that the source code is easily made available? So many other projects just provide a wget-able link. Why does Google want to make it harder to obtain the source code than those other projects?
> Android has always been more source-open than “open source”.
And what exactly does that mean? I don't know what your words mean here. More source open than open source? Is that a tautology?
> Everything else is essentially all the work of Google and (to some extent) Samsung.
Is it GPLv2? If so then I fail to see why anyone should get higher rights. Everyone gets the same for GPLv2. That's the whole point. I don't understand your statements here.
The word “easily” sure did sneak into this sentence
I'm sure this means the source happens to be open rather than following the spirit of open source.
The originally envisioned distribution method, in fact, was "Send FSF a blank 9-track tape and they'll fill it and mail it back". Nor, obviously, does anything prevent someone who downloads this from Drive from mirroring it on GitHub or wherever.
This is arguably bad stewardship of a historically open source project. It's certainly not a license violation.
This is actually a problem that is solved in German law:
§ 3 Münzgesetz (MünzG), Absatz 1 [§ 3 Coins Act, article 1]
"§ 3 Annahme- und Umtauschpflicht
(1) Niemand ist verpflichtet, deutsche Euro-Gedenkmünzen im Betrag von mehr als 200 Euro bei einer einzelnen Zahlung anzunehmen. Erfolgt eine einzelne Zahlung sowohl in Euro-Münzen als auch in deutschen Euro-Gedenkmünzen, ist niemand verpflichtet, mehr als 50 Münzen anzunehmen; dies gilt auch dann, wenn der Gesamtbetrag 200 Euro unterschreitet."
https://www.gesetze-im-internet.de/m_nzg_2002/__3.html
Translation based on the one created by DeepL:
"§ 3 Obligation to Accept and Exchange
(1) No one is obliged to accept German commemorative euro coins totalling more than 200 euros in a single payment. If a single payment is made using both euro coins and German commemorative euro coins, no one is obliged to accept more than 50 coins; this also applies if the total amount is less than 200 euros."
It is definitely a dick move by Google.
I suppose forcing a means to share the source code could have been too restrictive, but the GPL only speaks about the shape of the source code itself (it should be "the preferred form of the work for making modifications to it"), not how it is shared, so indeed, not a violation of the letter of the GPL I think.
It's like what we had in France and the Hadopi, which requested ISPs to share the IP addresses of people torrenting a defined set of files. One of them sent them printed on paper... (But the malicious compliance was cool in this case).
With the greatest of respect, you've forgotten what the licenses say.
GPLv2: [0]
GPLv3: [1] This unambiguously speaks about the form in which the source code is shared. If the licenses didn't specify this, folks would be compliant with the letter of the license by shipping you a printout of the source code and everything you need to build it and charging you for both the labor to generate that enormous, heavy-ass printout and shipping and handling to get it to you. [2][0] <https://www.gnu.org/licenses/old-licenses/gpl-2.0.html>
[1] <https://www.gnu.org/licenses/gpl-3.0.html>
[2] To downvoters: Don't forget that OCR was decent even back in the 1990s... certainly good enough for a good-quality printout in a fixed-width font to be -strictly speaking- machine-readable, and it has only gotten better as time has wobbled on. If you don't believe my account of the history, go look up how Zimmerman exported copies of PGP back when it was considered an export-controlled munition.
I stand by the position that all this doesn't seem very restrictive though. I don't think the GPL could have been without a risk of making some legitimate cases litigious or something.
It's completely wrong.
> I stand by the position that all this doesn't seem very restrictive though.
Is your position that it's less restrictive than it needs to be?
If that's not your position, then I'm not at all sure why you're bringing this up. If that is your position, then I disagree with you. The entire point of the GPL is to require distributors to "share and share alike". It's not a "sue everyone into oblivion" license, it's a "don't be a fuckin asshole with this gift I gave you to use, inspect, and modify however you wish... pass it along to others under the same terms" license.
Basically, if you think courts are going to be OK with interpreting "download from this FTP site" as acceptable but "download the same tarball from Drive" as unacceptable, you're fooling yourself.
Drive is fine, given the spirit of the license. It's merely inconvenient.
I hope you're not including me in "people". Remember that I said:
I was quoting the text of the GPL to point out to jraph that it absolutely does restrict how source code is distributed to ensure that licensees are obligated to distribute in a format that's actually useful to the typical recipient, rather than permitting a licensee to ship a couple-hundred pounds of printouts and still be in compliance with the license.We should test how long it takes Google to release source code upon request. And whether it is 100%. I think we should test whether Google fulfils the GPL here. That's now a challenge.
> 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.
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.
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.
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.
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.
Making you run javascript is a weaker argument...
Is that the permission they use? Who knows? But it’s at least possible.
Get a large brigade of android users to request access to source on each security update.
I am very thankful linux is gpl. Because of GPL these tech giants are forced to release source code.
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.
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
> 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?
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.
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.
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).
If someone on HN has received one of these links, feel free to post it here.
i remember jumping through crazy hoops to interact with a google open source project years ago. i wouldn't be surprised if it's just megacorp bureaucracy.
But is there any reason that google might have that they feel is legitimate?
For example, delaying releasing source until they've had a chance to update all the pixels with security patches might be good from their perspective, to reduce zero-day exploits for people they are supporting.
Ransomware gangs, etc still get red carpet service.
Judging by public statements, Google is one of the 3 big western AI companies. Surely they should be rolling in cash and working hard towards AGI.
And yet, for whatever reason, they can't help themselves from further restricting user freedoms on Android. Why?
I don't want to be conspiratorial, but surely it's not money, right? It has to be control. Someone high up at Google just seems to resent people having control over their own devices.
I don't get it, are the government contracts somehow contingent on them oppressing users and stifling open source?
>we are now in an age where users can create their own apps to do whatever they want within a few hours, sothis risks their Google Play Store profits
If that's the reason, they're doing a pretty poor job, since it's trivially bypassable by running "adb install".
Those kind of moves are petty but there are worst tricks they can pull unfortunately.
It seems Grapheneos is the rare actor willing to put up a fight nowadays, and their "partnership" with Motorola seems to be a first step. They need to ensure a hardware platform.
My guess is at some point they will have to fork AOSP, just because Google will take it in directions that go against Grapheneos principles.
We mirror the source code on GitLab. We put the upstream 17 code in the 17-base branch and our code on top of it in the 17 branch:
https://gitlab.com/grapheneos/kernel_pixel/-/tree/17-base
https://gitlab.com/grapheneos/kernel_pixel_muzel/-/tree/17-b...
We also have mirrors of the QPR1 Beta and QPR2 Beta code there too.
https://news.ycombinator.com/item?id=49369087