When I install Android SDK components, I am prompted to accept an EULA for the components I install.

As far as I understand it, the core of Android is under FOSS licenses—the kernel is a fork of the Linux kernel, which is under the GPL; the rest is mostly under the Apache license (as Google, like other companies, seems to prefer permissive licenses over copyleft ones, unless they own the code). Still I am asked to accept an EULA which has nothing to do with any of the usual licenses.

I am aware that some of the components in the Android SDK (such as Google Play and its friends) are proprietary, and having to accept an EULA seems nothing out of the ordinary here.

What is the reasoning behind an EULA for the components I would believe to be FOSS?

  • The GPL et al are licenses and you still need to agree to them. Using the standard format that proprietary software does of providing license information and acknowledgement during install is a understandable thing, esp for "stand alone" installers that aren't part of a distributions package manager, etc. especially if they are using a 3rd party installer utility/format where a license is expected and they can't change the installer to skip license agreement. Besides, I like seeing "you have the freedom to ..." instead of "you cannot ..." and "isn't allowed" – ivanivan Jul 26 '18 at 13:50
  • @ivanivan in principle, yes, these are licenses as well, though the question whether I need to accept them to use the software may be debatable (the GPL doesn’t come into play until I start modifying the software and distributing modified versions). More important, the license I get is in fact an EULA, not a FOSS license. – user149408 Jul 26 '18 at 16:50
  • The GPL and other FOSS licenses are EULAs as well - and in theory you need to accept them, even if you are simply downloading the binary and running it and never intend to even think about programming. Mind you I've spent 5 minutes in a law school building and that was spent looking for a bathroom but a license is a license and you agree to it to obtain/use the software, or you don't. The only difference is the Freedom part. – ivanivan Jul 26 '18 at 16:54
  • The Android SDK is distinct from the Android Open Source Project (AOSP) which provides the kernel and other core Android components.

  • The Android SDK includes open source components but is not itself open source. It also includes proprietary components.

  • Permissive licenses such as the Apache license allow extra restrictions to be added.

  • Copyleft licenses such as the GPL do not force anyone to provide you with a copy. It is not allowed to withhold the source from you if you already have a legally obtained copy of binaries and it is not allowed to add any conditions to the GPL that would limit your rights with respect to the GPL'ed software. But it's perfectly fine to withhold a download bundle that includes GPL'ed software until you accept an EULA regarding the non-GPL'ed parts of that bundle.

  • Thanks, that does clarify some things. Is there any easy way to identify which of the SDK components are FOSS and which are proprietary? – user149408 Jul 22 '18 at 11:59
  • 1
    @user149408 There doesn't seem to be an easy way other than looking at authorship notices after installation. For packages that you install through the package manager on Debian-based Linux distros, look at /usr/share/doc/<package>/copyright. E.g. adb is licensed under Apache-2. Note also that permissively licensed software can be given to you without giving you any rights under that license. – amon Jul 22 '18 at 12:46
  • “permissively licensed software can be given to you without giving you any rights under that license”—this is where things might start getting interesting in terms of enforceability, which may easily vary between legislations (IANAL). – user149408 Jul 26 '18 at 16:54

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.