10-19-2023 10:12 PM
I recently baught a new Meta Quest 3. Like all Android devices, the Quest includes Free Software[1], some components even under GNU Copyleft[2]. I did not find a written offer for those components, nor an optical disk including the source code of those copylefted Free Software components. GPLv2 includes the following paragraph:
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,
c) Accompany it with the information you received as to the offer
to distribute corresponding source code. (This alternative is
allowed only for noncommercial distribution and only if you
received the program in object code or executable form with such
an offer, in accord with Subsection b above.)
As Meta is a commercial entity, only a) and b) are acceptable under the GNU GPL.
I had a look at [4] and did not find any sources for the kernel: linux.
I also found out that the Quest includes other free software, such as
the GNU Debugger (gdb), dnsmasq and several tools for which I was unable to
find the source code. Where can I find the source code for the copylefted Free Software components?
https://www.meta.com/de/en/legal/quest/third-party-notices/01/ lists the following copylefted components.
Notices for file(s):
/system/lib/libfec_rs.a
/system/lib64/libfec_rs.a
GNU_LGPL
/system/bin/dnsmasq
GNU_GPL
system/bin/fsck.f2fs
/system/bin/make_f2fs
/system/lib/libf2fs_fmt.a
/system/lib64/libf2fs_fmt.a
GNU_GPL
/system/xbin/fio
GNU_GPL
/system/bin/gdbserver
/system/bin/gdbserver64
GNU_GPL v2 -- old software versions
/system/lib/libcap.so
GNU_GPL
/system/bin/sgdisk
GNU_GPL
/system/lib/libtinycompress.so
/system/lib64/libtinycompress.so
GNU_LGPL
/system/xbin/mmc_utils
GNU_GPL
/system/lib/libnl.a
/system/lib/libnl.so
/system/lib64/libnl.a
/system/lib64/libnl.so
GNU_LGPL
/system/bin/ip6tables
/system/bin/iptables
GNU_GPL
/kernel
GNU_GPL_V2 only
/system/bin/ip
/system/bin/tc
/system/lib/libiprouteutil.so
/system/lib/libnetlink.so
/system/lib64/libiprouteutil.so
/system/lib64/libnetlink.so
GNU_GPL
Notices for file(s):
/system/lib64/libovrsensors.so
/system/xbin/imutool
[1] https://www.gnu.org/philosophy/free-sw.html
[2] https://www.gnu.org/philosophy/why-copyleft.html
[3] https://www.gnu.org/licenses/old-licenses/gpl-2.0.html
[4] https://github.com/facebookincubator/oculus-linux-kernel/tree/oculus-quest3-kernel-master