* bug#34565: ungoogled-chromium contains Widevine DRM @ 2019-02-19 3:44 Jason Self 2019-02-19 7:06 ` Leo Famulari 0 siblings, 1 reply; 26+ messages in thread From: Jason Self @ 2019-02-19 3:44 UTC (permalink / raw) To: 34565 Package: guix Unless I am mistaken, ungoogled-chromium is not removing Widevine DRM from upstream Chromium. Guix should remove that if upstream won't, as I believe this goes against "the distro must contain no DRM..." in the FSDG. ^ permalink raw reply [flat|nested] 26+ messages in thread
* bug#34565: ungoogled-chromium contains Widevine DRM 2019-02-19 3:44 bug#34565: ungoogled-chromium contains Widevine DRM Jason Self @ 2019-02-19 7:06 ` Leo Famulari 2019-02-19 13:28 ` Jason Self 0 siblings, 1 reply; 26+ messages in thread From: Leo Famulari @ 2019-02-19 7:06 UTC (permalink / raw) To: Jason Self; +Cc: 34565 [-- Attachment #1: Type: text/plain, Size: 426 bytes --] On Mon, Feb 18, 2019 at 07:44:57PM -0800, Jason Self wrote: > Unless I am mistaken, ungoogled-chromium is not removing Widevine DRM > from upstream Chromium. Guix should remove that if upstream won't, as I > believe this goes against "the distro must contain no DRM..." in the > FSDG. Why do you think this is the case? It doesn't work for me on any of the Widevine demos I can find, unlike an installation of Google Chrome. [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 833 bytes --] ^ permalink raw reply [flat|nested] 26+ messages in thread
* bug#34565: ungoogled-chromium contains Widevine DRM 2019-02-19 7:06 ` Leo Famulari @ 2019-02-19 13:28 ` Jason Self 2019-02-19 13:42 ` Julien Lepiller 2019-02-19 14:43 ` bug#34565: ungoogled-chromium contains " Leo Famulari 0 siblings, 2 replies; 26+ messages in thread From: Jason Self @ 2019-02-19 13:28 UTC (permalink / raw) To: 34565 [-- Attachment #1: Type: text/plain, Size: 204 bytes --] On Tue, 2019-02-19 at 02:06 -0500, Leo Famulari wrote: Why do you think this is the case? We know Chromium comes with it. Have you looked through ungoogled- chromium to see where it's being deleted? [-- Attachment #2: This is a digitally signed message part --] [-- Type: application/pgp-signature, Size: 801 bytes --] ^ permalink raw reply [flat|nested] 26+ messages in thread
* bug#34565: ungoogled-chromium contains Widevine DRM 2019-02-19 13:28 ` Jason Self @ 2019-02-19 13:42 ` Julien Lepiller 2019-02-19 14:44 ` Julien Lepiller 2019-02-19 14:43 ` bug#34565: ungoogled-chromium contains " Leo Famulari 1 sibling, 1 reply; 26+ messages in thread From: Julien Lepiller @ 2019-02-19 13:42 UTC (permalink / raw) To: Jason Self; +Cc: 34565 Le 2019-02-19 14:28, Jason Self a écrit : > On Tue, 2019-02-19 at 02:06 -0500, Leo Famulari wrote: > Why do you think this is the case? > > We know Chromium comes with it. Have you looked through ungoogled- > chromium to see where it's being deleted? Our package definition has two widevine-related headers listed as preserved third-party stuff... I'm not sure how widevine normally gets into chromium, but if we don't have it, I guess we should not need these headers? There might actually be an issue, but I'm not sure how to check. Where is widevine in upstream (non ungoogled) chromium? Is it downloaded at runtime? IIUC, the rest of this widevine directory is removed before building anything, so maybe there's nothing to worry about after all? ^ permalink raw reply [flat|nested] 26+ messages in thread
* bug#34565: ungoogled-chromium contains Widevine DRM 2019-02-19 13:42 ` Julien Lepiller @ 2019-02-19 14:44 ` Julien Lepiller 2019-02-20 5:42 ` Leo Famulari 0 siblings, 1 reply; 26+ messages in thread From: Julien Lepiller @ 2019-02-19 14:44 UTC (permalink / raw) To: 34565 Le 2019-02-19 14:42, Julien Lepiller a écrit : > Le 2019-02-19 14:28, Jason Self a écrit : >> On Tue, 2019-02-19 at 02:06 -0500, Leo Famulari wrote: >> Why do you think this is the case? >> >> We know Chromium comes with it. Have you looked through ungoogled- >> chromium to see where it's being deleted? > > Our package definition has two widevine-related headers listed as > preserved third-party stuff... I'm not sure how widevine normally > gets into chromium, but if we don't have it, I guess we should > not need these headers? There might actually be an issue, but > I'm not sure how to check. Where is widevine in upstream (non > ungoogled) chromium? Is it downloaded at runtime? > > IIUC, the rest of this widevine directory is removed before > building anything, so maybe there's nothing to worry about > after all? So I've downloaded the source tarball with `guix build -S chromium` and here's what I found in it: $ find -name cdm ./media/cdm ./third_party/widevine/cdm ./chrome/android/java/src/org/chromium/chrome/browser/media/cdm ./chrome/browser/media/android/cdm ./content/renderer/media/cdm ./chromecast/media/cdm ./components/cdm $ find -name widevine ./third_party/widevine $ find -name '*widevine*' ./third_party/widevine ./third_party/widevine/cdm/android/widevine_cdm_version.h ./third_party/widevine/cdm/widevinecdmadapter.ver ./third_party/widevine/cdm/stub/widevine_cdm_version.h ./third_party/widevine/cdm/widevine.gni ./third_party/widevine/cdm/widevine_cdm_version.h ./third_party/widevine/cdm/widevine_cdm_common.h ./chrome/common/widevine_cdm_constants.h ./chrome/common/widevine_cdm_constants.cc ./chrome/browser/component_updater/widevine_cdm_component_installer.cc ./chrome/browser/component_updater/widevine_cdm_component_installer.h ./components/cdm/common/widevine_drm_delegate_android.cc ./components/cdm/common/widevine_drm_delegate_android.h ./components/cdm/renderer/widevine_key_system_properties.cc ./components/cdm/renderer/widevine_key_system_properties.h This ./chrome/browser/component_updater/widevine_cdm_component_installer.cc looks particularly suspicious to me... Now, it seems that widevine stuff only gets built when the ENABLE_WIDEVINE option is set, and it doesn't seem to be the case in guix' package. Since I don't understand how the browser gets built, so I'm not sure about the default. In any case, it would be good to get rid of these files even if they aren't built. HTH! ^ permalink raw reply [flat|nested] 26+ messages in thread
* bug#34565: ungoogled-chromium contains Widevine DRM 2019-02-19 14:44 ` Julien Lepiller @ 2019-02-20 5:42 ` Leo Famulari 2019-02-20 9:22 ` Giovanni Biscuolo 0 siblings, 1 reply; 26+ messages in thread From: Leo Famulari @ 2019-02-20 5:42 UTC (permalink / raw) To: Julien Lepiller; +Cc: 34565 [-- Attachment #1: Type: text/plain, Size: 1148 bytes --] On Tue, Feb 19, 2019 at 03:44:17PM +0100, Julien Lepiller wrote: > So I've downloaded the source tarball with `guix build -S chromium` > and here's what I found in it: [...] Thanks for taking a look, Julien! We need to find out if Widevine DRM is actually included in the Guix ungoogled-chromium package or not. Obviously the intent was to not include it, and it does not work in practice. Widevine videos do not play and there is no prompt to install or enable DRM, unlike in some other browsers that use DRM. I think the next steps for this subject are to first, in general, figure out where Widevine comes from, and then, more specifically, decide what to do about the files you mentioned. As I mentioned already, other distros seem to get Widevine by extracting its binary from Chrome, even when using it for Chromium. It seems reasonable to assume that if Widevine were included in Chromium they would not be downloading a whole 'nother browser for that one component. As for the specific files listed by Julien, they may be harmless, or not, we should figure out what they do and if they need to be removed. [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 833 bytes --] ^ permalink raw reply [flat|nested] 26+ messages in thread
* bug#34565: ungoogled-chromium contains Widevine DRM 2019-02-20 5:42 ` Leo Famulari @ 2019-02-20 9:22 ` Giovanni Biscuolo 2019-02-20 14:48 ` Marius Bakke 0 siblings, 1 reply; 26+ messages in thread From: Giovanni Biscuolo @ 2019-02-20 9:22 UTC (permalink / raw) To: Leo Famulari; +Cc: 34565 [-- Attachment #1: Type: text/plain, Size: 3025 bytes --] Hello, maybe Marius Bakke have something interesting to say about his judgements on this "DRM matter" indeed, this is a pretty ignorant (aka me) comment: Leo Famulari <leo@famulari.name> writes: [...] > I think the next steps for this subject are to first, in general, figure > out where Widevine comes from, and then, more specifically, decide what > to do about the files you mentioned. > > As I mentioned already, other distros seem to get Widevine by extracting > its binary from Chrome, even when using it for Chromium. It seems > reasonable to assume that if Widevine were included in Chromium they > would not be downloading a whole 'nother browser for that one > component. ungoogle-chromium FAQs [1] confirms that in order to install Widevine users have to download a shared object (libwidevinecdm.so) and install it system wide in /usr/lib/chromium or in $HOME/.local/lib/ I tried to install ungoogled-chromium from Guix but failed (another story...) so I cannot see myself, but AFAIU there is no way for a user to enable Widevine from the user interface *nor* manually I don't know if the libwidevinecdm.so user loading must be forbidden **programmatically** [2] to be FSDG compliant: what is the case with the linux-libre kernel? are users forbidden to "insmod proprietery_module" they _independently_ downloded or developed? anyway, as Julien Lepiller already verified (Guix package definition is there for anyone to check, and checking is very easy), Widevine stuff only gets built when the ENABLE_WIDEVINE build option is set... and it's not this case, so it's unlikely that users will be able to install Widevine even following the above mentioned procedure last but not least: AFAIU ungoogled-chromium Guix package documentation nor Guix Manual contains information on how to obtain proprierary extensions to any software; am I wrong? > As for the specific files listed by Julien, they may be harmless, or > not, we should figure out what they do and if they need to be removed. AFAIU that code allows dynamically linking Widevine (sorry cannot still check myself), but it is _disabled_ at build time is this enough to be FSDG compliant? given all the above, it seems to me that ungoogled-chromium binaries provided by Guix substitute servers _and_ sources provided by Guix build farms (are provided by them, right?) does not ship with DRM enabled to sum it up: AFAIU for users to be able to use Widevine they must create a custom package definition _outside_ official Guix channels *and* download the shared object "libwidevinecdm.so" from Chromium, installing it "manually" system wide or locally HTH! Ciao Giovanni [1] https://ungoogled-software.github.io/ungoogled-chromium-wiki/faq#how-do-i-install-widevine-cdm [2] I mean by stripping away any bit of source code that allows users to dynamically link potentially proprietary shared objects in the software -- Giovanni Biscuolo Xelera IT Infrastructures [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 832 bytes --] ^ permalink raw reply [flat|nested] 26+ messages in thread
* bug#34565: ungoogled-chromium contains Widevine DRM 2019-02-20 9:22 ` Giovanni Biscuolo @ 2019-02-20 14:48 ` Marius Bakke 2019-10-12 11:14 ` ng0 0 siblings, 1 reply; 26+ messages in thread From: Marius Bakke @ 2019-02-20 14:48 UTC (permalink / raw) To: Giovanni Biscuolo, Leo Famulari; +Cc: 34565 [-- Attachment #1: Type: text/plain, Size: 587 bytes --] Giovanni Biscuolo <g@xelera.eu> writes: > Hello, > > maybe Marius Bakke have something interesting to say about his > judgements on this "DRM matter" [...] > to sum it up: AFAIU for users to be able to use Widevine they must > create a custom package definition _outside_ official Guix channels > *and* download the shared object "libwidevinecdm.so" from Chromium, > installing it "manually" system wide or locally This analysis is correct. For DRM to work, the user has to build with "enable_widevine=true", and then somehow obtain 'libwidevinecdm.so' and make the browser use it. [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 487 bytes --] ^ permalink raw reply [flat|nested] 26+ messages in thread
* bug#34565: ungoogled-chromium contains Widevine DRM 2019-02-20 14:48 ` Marius Bakke @ 2019-10-12 11:14 ` ng0 2019-10-12 11:32 ` bug#34565: ungoogled-chromium may contain " Marius Bakke 0 siblings, 1 reply; 26+ messages in thread From: ng0 @ 2019-10-12 11:14 UTC (permalink / raw) To: Marius Bakke; +Cc: 34565 [-- Attachment #1: Type: text/plain, Size: 1402 bytes --] Marius Bakke transcribed 1.2K bytes: > Giovanni Biscuolo <g@xelera.eu> writes: > > > Hello, > > > > maybe Marius Bakke have something interesting to say about his > > judgements on this "DRM matter" > > [...] > > > to sum it up: AFAIU for users to be able to use Widevine they must > > create a custom package definition _outside_ official Guix channels > > *and* download the shared object "libwidevinecdm.so" from Chromium, > > installing it "manually" system wide or locally > > This analysis is correct. For DRM to work, the user has to build with > "enable_widevine=true", and then somehow obtain 'libwidevinecdm.so' and > make the browser use it. Can this bug be closed? The wording is very vague ("may") and for Guix to distribute widevine.so legally, you have to get permission and sign an NDA with Google, both of which are reportedly hard for 3rd party devs even, not sure how hard it is for new operating systems. Your stand on software with NDAs should be clear (as per policy not applicable, no NDAs). So even if traces of the code to build this might still be left, you have to master additional steps to make it work, and after having read some of widevine.so I doubt it would work out of the box with Guix System (elfpatching could get it to work with Guix, but you are still entering the field where official distribution requires legal paperwork). [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 833 bytes --] ^ permalink raw reply [flat|nested] 26+ messages in thread
* bug#34565: ungoogled-chromium may contain Widevine DRM 2019-10-12 11:14 ` ng0 @ 2019-10-12 11:32 ` Marius Bakke 0 siblings, 0 replies; 26+ messages in thread From: Marius Bakke @ 2019-10-12 11:32 UTC (permalink / raw) To: ng0; +Cc: 34565-done [-- Attachment #1: Type: text/plain, Size: 934 bytes --] ng0 <ng0@n0.is> writes: > Marius Bakke transcribed 1.2K bytes: >> Giovanni Biscuolo <g@xelera.eu> writes: >> >> > Hello, >> > >> > maybe Marius Bakke have something interesting to say about his >> > judgements on this "DRM matter" >> >> [...] >> >> > to sum it up: AFAIU for users to be able to use Widevine they must >> > create a custom package definition _outside_ official Guix channels >> > *and* download the shared object "libwidevinecdm.so" from Chromium, >> > installing it "manually" system wide or locally >> >> This analysis is correct. For DRM to work, the user has to build with >> "enable_widevine=true", and then somehow obtain 'libwidevinecdm.so' and >> make the browser use it. > > Can this bug be closed? Yes, I am closing this now; thanks for the reminder. The actual Widevine implementation is not part of Chromium, and the interfaces for loading it are disabled at build time. [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 487 bytes --] ^ permalink raw reply [flat|nested] 26+ messages in thread
* bug#34565: ungoogled-chromium contains Widevine DRM 2019-02-19 13:28 ` Jason Self 2019-02-19 13:42 ` Julien Lepiller @ 2019-02-19 14:43 ` Leo Famulari 2019-02-20 0:39 ` Jason Self 1 sibling, 1 reply; 26+ messages in thread From: Leo Famulari @ 2019-02-19 14:43 UTC (permalink / raw) To: Jason Self; +Cc: 34565 [-- Attachment #1: Type: text/plain, Size: 508 bytes --] On Tue, Feb 19, 2019 at 05:28:26AM -0800, Jason Self wrote: > We know Chromium comes with it. Have you looked through ungoogled- > chromium to see where it's being deleted? Please show us the paths in our package's source code. We need to remove it if it is there. I looked and cannot find it. I looked at how some other distros do it. They get the Widevine binaries by extracting them from a download of the Google Chrome browser, which is not the browser that has been packaged for Guix. [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 833 bytes --] ^ permalink raw reply [flat|nested] 26+ messages in thread
* bug#34565: ungoogled-chromium contains Widevine DRM 2019-02-19 14:43 ` bug#34565: ungoogled-chromium contains " Leo Famulari @ 2019-02-20 0:39 ` Jason Self 2019-02-20 1:12 ` Jason Self 0 siblings, 1 reply; 26+ messages in thread From: Jason Self @ 2019-02-20 0:39 UTC (permalink / raw) To: 34565 [-- Attachment #1: Type: text/plain, Size: 512 bytes --] Based on http://issues.guix.info/issue/28004#2 it is disabled at build time; but not removed. The person said they thought this was FSDG compliant but a reading of "the distro must contain no DRM" from the FSDG could be taken to mean the distro still "contains" it, since it's still within the source code of the program. "Disabled by default" shouldn't be good enough IMHO; build flags should not be used to hide freedom problems. The source code represents what the software *is*, not the build flags. [-- Attachment #2: This is a digitally signed message part --] [-- Type: application/pgp-signature, Size: 801 bytes --] ^ permalink raw reply [flat|nested] 26+ messages in thread
* bug#34565: ungoogled-chromium contains Widevine DRM 2019-02-20 0:39 ` Jason Self @ 2019-02-20 1:12 ` Jason Self 2019-02-20 1:19 ` Jason Self ` (2 more replies) 0 siblings, 3 replies; 26+ messages in thread From: Jason Self @ 2019-02-20 1:12 UTC (permalink / raw) To: 34565 [-- Attachment #1: Type: text/plain, Size: 1733 bytes --] A different but related matter is the build process itself. I understand this is not exactly related to the DRM matter but it does seem similiar. I can open another bug over this if needed. I have recently submitted upstream's Chromium 73.0.3683.45 into my FOSSology instance for analysis. Actually, less than a third of the total files were classified as "BSD-like". In total it found 162 unique licenses. Of course, automated licenses analysis is never perfect and I have not fully vetted any particular results but it does help to at least indicate that which is very clearly free software and that which needs further investigation. Even in the short time I was reviewing it I found a number of freedom problems. I don't mean that to be an exhaustive list of everything, merely an indicator of a symptom: * unrar (license denies freedom 0) * third_party/blink has some images under CC-BY-NC-SA-2.0 * Google Toolbar is in there, with a non-free EULA Taking this and considering Guix's build process: The method of building seems to involve downloading Chromium, then runnning ungoogled-chromium over it, and then building. I'm not sure if any other packages have their freedom problems fixed in this way but this, just like build flags, should not be sufficient. Freedom problems should not be hidden/removed after the fact by asking the user to run a clean-up program after downloading the source, even if that has been automated by the package manager. What is sent to the end user to compile should itself be 100% free software and FSDG compliant from the beginning. If not it still amounts to distributing non-free software to the user when they want to, for example, do guix build -S chromium. [-- Attachment #2: This is a digitally signed message part --] [-- Type: application/pgp-signature, Size: 801 bytes --] ^ permalink raw reply [flat|nested] 26+ messages in thread
* bug#34565: ungoogled-chromium contains Widevine DRM 2019-02-20 1:12 ` Jason Self @ 2019-02-20 1:19 ` Jason Self 2019-02-20 13:03 ` Jason Self 2019-02-20 5:15 ` Leo Famulari 2019-02-20 14:37 ` Marius Bakke 2 siblings, 1 reply; 26+ messages in thread From: Jason Self @ 2019-02-20 1:19 UTC (permalink / raw) To: 34565 [-- Attachment #1: Type: text/plain, Size: 1301 bytes --] > should not be hidden/removed after the fact by asking the user to run > a clean-up program after downloading the source, even if that has > been automated by the package manager. What is sent to the end user > to compile should itself be 100% free software and FSDG compliant > from the beginning. If not it still amounts to distributing non-free > software to the user when they want to, for example, do guix build -S > chromium. I should probably add on that this position comes from my interaction with the FSF in 2010: When LibreWRT was founded in 2010 (before it later merged into libreCMC) we submitted a similar question to the FSF, as to if it was sufficient for the LibreWRT build scripts (which would be run by the person building the firmware image from source and would have completely automated, just like how someone might instruct Guix to build from source) to download Linux and then run the Linux-libre deblobbing scripts on it vs having the build scripts instead download tarballs that were already cleaned up. I can't seem to find the email from back then but the response was that we needed to use already cleaned-up tarballs, not ask the user to clean up the software after ward even if automated. So that was what we did. Guix should do something similar. [-- Attachment #2: This is a digitally signed message part --] [-- Type: application/pgp-signature, Size: 801 bytes --] ^ permalink raw reply [flat|nested] 26+ messages in thread
* bug#34565: ungoogled-chromium contains Widevine DRM 2019-02-20 1:19 ` Jason Self @ 2019-02-20 13:03 ` Jason Self 2019-02-20 16:18 ` Julien Lepiller 0 siblings, 1 reply; 26+ messages in thread From: Jason Self @ 2019-02-20 13:03 UTC (permalink / raw) To: 34565 [-- Attachment #1: Type: text/plain, Size: 1204 bytes --] Jason Self wrote: > I should probably add on that this position comes from my interaction > with the FSF in 2010: When LibreWRT was founded in 2010 (before it > later merged into libreCMC) we submitted a similar question to the > FSF,as to if it was sufficient for the LibreWRT build scripts (which > would be run by the person building the firmware image from source > and would have completely automated, just like how someone might > instruct Guix to build from source) to download Linux and then run > the Linux-libre deblobbing scripts on it vs having the build scripts > instead download tarballs that were already cleaned up. I can't seem > to find the email from back then but the response was that we needed > to use already cleaned-up tarballs, not ask the user to clean up the > software afterward even if automated. So that was what we did. Guix > should do something similar. I haven't been able to find this conversation in my email. As it seems to be directly relevant to Guix, since it seems to also be the exact same method they use, I have emailed the FSF asking if they can locate this in their ticketing system and to re-send the conversation to me. More to come. [-- Attachment #2: This is a digitally signed message part --] [-- Type: application/pgp-signature, Size: 801 bytes --] ^ permalink raw reply [flat|nested] 26+ messages in thread
* bug#34565: ungoogled-chromium contains Widevine DRM 2019-02-20 13:03 ` Jason Self @ 2019-02-20 16:18 ` Julien Lepiller 2019-02-20 20:15 ` Adonay Felipe Nogueira 0 siblings, 1 reply; 26+ messages in thread From: Julien Lepiller @ 2019-02-20 16:18 UTC (permalink / raw) To: Jason Self; +Cc: 34565 Le 2019-02-20 14:03, Jason Self a écrit : > Jason Self wrote: >> I should probably add on that this position comes from my interaction >> with the FSF in 2010: When LibreWRT was founded in 2010 (before it >> later merged into libreCMC) we submitted a similar question to the >> FSF,as to if it was sufficient for the LibreWRT build scripts (which >> would be run by the person building the firmware image from source >> and would have completely automated, just like how someone might >> instruct Guix to build from source) to download Linux and then run >> the Linux-libre deblobbing scripts on it vs having the build scripts >> instead download tarballs that were already cleaned up. I can't seem >> to find the email from back then but the response was that we needed >> to use already cleaned-up tarballs, not ask the user to clean up the >> software afterward even if automated. So that was what we did. Guix >> should do something similar. > > I haven't been able to find this conversation in my email. As it seems > to be directly relevant to Guix, since it seems to also be the exact > same method they use, I have emailed the FSF asking if they can locate > this in their ticketing system and to re-send the conversation to me. > More to come. I think the situation is different though. You can see the build script inside the "origin" record as the liberation procedure that anyone can see and verify. It's also a procedure targeted at our build farms, so that they can produce the liberated source code. Users never manipulate non-free source code, unless something is wrong on the build farm side. Essentially, users only download the liberated sources, and build the package from that, or they download the sources from the build farm and build the package from that. The source they download is the one that `guix build -S foo` gives you, and the semantics is "give me the sources to build foo", not "build the sources of foo". I think that this way is more transparent, since we can independently, altough with tooling not provided by guix, check and re-run the liberation procedure that is documented as part of the guix package recipe. This is much better than trusting someone to have actually run the right liberation procedure as you can examine both the result and the procedure itself. I hope this is clearer now :) Well, I'm still interested by that discussion on libreWRT. ^ permalink raw reply [flat|nested] 26+ messages in thread
* bug#34565: ungoogled-chromium contains Widevine DRM 2019-02-20 16:18 ` Julien Lepiller @ 2019-02-20 20:15 ` Adonay Felipe Nogueira 2019-02-20 21:49 ` Ricardo Wurmus 0 siblings, 1 reply; 26+ messages in thread From: Adonay Felipe Nogueira @ 2019-02-20 20:15 UTC (permalink / raw) To: 34565; +Cc: Jason Self [-- Attachment #1.1: Type: text/plain, Size: 2918 bytes --] Em 20/02/2019 13:18, Julien Lepiller escreveu: > I think the situation is different though. You can see the build script > inside the "origin" record as the liberation procedure that anyone can > see and verify. It's also a procedure targeted at our build farms, so > that they can produce the liberated source code. Users never manipulate > non-free source code, unless something is wrong on the build farm side. I'm not taking any sides here, but to give some more information, if for example you do `guix edit ungoogled-chromium' you will be presented to the package definition of Ungoogled-Chromium, taking that as an example you can see that it has a "source (origin ...) ...)" definition, inside the inner part (the "origin") you have: * the upstream download location and method, see (method ...), (uri ...) and (sha256 ...); * patches that should be applied immediatelly after downloading and extracting the source files, per (patches ...); * snippets and modules to be used with these, also to be applied immediatelly after downloading and extracting the source files, as seen in (snippet ...) and (modules ...). When `guix build -S ungoogled-chromium' is done, first it checks the build farms for the "prepared" source that matches the given package definition, version, hash and so on; and lastly it tries to "prepare" the source according to (patches ...) and (snippet ...) declarations before even telling the user that the download is ready/done. Having the (origin ...) visible in this way brings the advantages that the people of Guix told about here, but as far as I can tell, the user also sees the original location of the non-free source from upstream if they do `guix edit ungoogled-chromium'. -- - Página com formas de contato: https://libreplanet.org/wiki/User:Adfeno#vCard - Ativista do software livre (não confundir com o gratuito). Avaliador da liberdade de software e de sites. - Página com lista de contribuições: https://libreplanet.org/wiki/User:Adfeno#Contribs - Para uso em escritórios e trabalhos, favor enviar arquivos do padrão internacional OpenDocument/ODF 1.2 (ISO/IEC 26300-1:2015 e correlatos). São os .odt/.ods/.odp/odg. O LibreOffice é a suíte de escritório recomendada para editar tais arquivos. - Para outros formatos de arquivos, veja: https://libreplanet.org/wiki/User:Adfeno#Arquivos - Gosta do meu trabalho? Contrate-me ou doe algo para mim! https://libreplanet.org/wiki/User:Adfeno#Suporte - Use comunicações sociais federadas padronizadas, onde o "social" permanece independente do fornecedor. #DeleteWhatsApp. Use #XMPP (https://libreplanet.org/wiki/XMPP.pt), #DeleteFacebook #DeleteInstagram #DeleteTwitter #DeleteYouTube. Use #ActivityPub via #Mastodon (https://joinmastodon.org/). - #DeleteNetflix #CancelNetflix. Evite #DRM: https://www.defectivebydesign.org/ [-- Attachment #2: OpenPGP digital signature --] [-- Type: application/pgp-signature, Size: 213 bytes --] ^ permalink raw reply [flat|nested] 26+ messages in thread
* bug#34565: ungoogled-chromium contains Widevine DRM 2019-02-20 20:15 ` Adonay Felipe Nogueira @ 2019-02-20 21:49 ` Ricardo Wurmus 2019-02-21 2:19 ` Jason Self 0 siblings, 1 reply; 26+ messages in thread From: Ricardo Wurmus @ 2019-02-20 21:49 UTC (permalink / raw) To: Adonay Felipe Nogueira; +Cc: 34565, Jason Self Adonay Felipe Nogueira <adfeno@hyperbola.info> writes: > Em 20/02/2019 13:18, Julien Lepiller escreveu: >> I think the situation is different though. You can see the build script >> inside the "origin" record as the liberation procedure that anyone can >> see and verify. It's also a procedure targeted at our build farms, so >> that they can produce the liberated source code. Users never manipulate >> non-free source code, unless something is wrong on the build farm side. > > I'm not taking any sides here, but to give some more information […] I would appreciate it if this discussion could be moved elsewhere. This is about whether the package in Guix contains “Widevine DRM”. As far as I understand it does not (as a third-party binary needs to be obtained). If it does after all contain objectionable files please point them out so that we can remove them ASAP. Thanks! -- Ricardo ^ permalink raw reply [flat|nested] 26+ messages in thread
* bug#34565: ungoogled-chromium contains Widevine DRM 2019-02-20 21:49 ` Ricardo Wurmus @ 2019-02-21 2:19 ` Jason Self 0 siblings, 0 replies; 26+ messages in thread From: Jason Self @ 2019-02-21 2:19 UTC (permalink / raw) To: 34565 [-- Attachment #1: Type: text/plain, Size: 728 bytes --] On Wed, 2019-02-20 at 22:49 +0100, Ricardo Wurmus wrote: > If it does after all contain objectionable files please point them > out so that we can remove them ASAP. That was done earlier in the thread. It might also be interesting to try building with enable_widevine=true. In the context of the FSDG's "a free system distribution must not contain browsers that implement EME, the browser functionality designed to load DRM modules", I wonder if the browser would still be considered as "implementing" the "functionality ... to load DRM modules" from the FSF's viewpoint since it's only a build flag and the support for loading the module (even if not provided by Guix since it's non-free) seems otherwise intact. [-- Attachment #2: This is a digitally signed message part --] [-- Type: application/pgp-signature, Size: 801 bytes --] ^ permalink raw reply [flat|nested] 26+ messages in thread
* bug#34565: ungoogled-chromium contains Widevine DRM 2019-02-20 1:12 ` Jason Self 2019-02-20 1:19 ` Jason Self @ 2019-02-20 5:15 ` Leo Famulari 2019-02-20 5:35 ` Jason Self 2019-02-20 14:37 ` Marius Bakke 2 siblings, 1 reply; 26+ messages in thread From: Leo Famulari @ 2019-02-20 5:15 UTC (permalink / raw) To: Jason Self; +Cc: 34565 [-- Attachment #1: Type: text/plain, Size: 1244 bytes --] On Tue, Feb 19, 2019 at 05:12:17PM -0800, Jason Self wrote: > Taking this and considering Guix's build process: The method of > building seems to involve downloading Chromium, then runnning > ungoogled-chromium over it, and then building. I'm not sure if any > other packages have their freedom problems fixed in this way but this, > just like build flags, should not be sufficient. Freedom problems > should not be hidden/removed after the fact by asking the user to run a > clean-up program after downloading the source, even if that has been > automated by the package manager. What is sent to the end user to > compile should itself be 100% free software and FSDG compliant from the > beginning. If not it still amounts to distributing non-free software to > the user when they want to, for example, do guix build -S chromium. To clarify this general point about Guix for anyone who is reading along, as a matter of policy the end user does not receive non-free source code from Guix. The tools provided by Guix to access source code only return source code that is freely licensed. If the sources have to be modified to ensure this, the unodified source code is not provided to the user. Guix is specifically designed to do it this way. [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 833 bytes --] ^ permalink raw reply [flat|nested] 26+ messages in thread
* bug#34565: ungoogled-chromium contains Widevine DRM 2019-02-20 5:15 ` Leo Famulari @ 2019-02-20 5:35 ` Jason Self 2019-02-20 7:59 ` bug#34565: ungoogled-chromium might contain remnants of " Ricardo Wurmus 2019-02-20 10:09 ` bug#34565: ungoogled-chromium contains " Jelle Licht 0 siblings, 2 replies; 26+ messages in thread From: Jason Self @ 2019-02-20 5:35 UTC (permalink / raw) To: 34565 Leo Famulari wrote: > To clarify this general point about Guix for anyone who is reading > along, as a matter of policy the end user does not receive non-free > source code from Guix. Right; the source is downloaded from commondatastorage.googleapis.com but that is a technicality. What I'm saying is that the recipe should be updated to cause it to download an already-cleaned up version directly from Guix (it could be hosted somewhere on gnu.org for example but exactly where can be up for negotiation) and that this excuse of "they're getting it elsewhere" shouldn't be usable as an excuse to sidestep the FSDG. It's still causing the user to download the software due to the recipes provided by Guix. > The tools provided by Guix to access source code only return source > code that is freely licensed. If the sources have to be modified to > ensure this, the unodified source code is not provided to the user. It's still being downloaded into their computer and then being cleaned up after the fact. If there weren't freedom problems with it there wouldn't be a need for a clean-up program (ungoogled-chromium in this case) to be running -- as a process on the user's computer -- to do this. And in https://www.gnu.org/distros/free-system-distribution-guidelines. html we have: "For instance, a free system distribution must not contain browsers that implement EME, the browser functionality designed to load DRM modules." So that should make it quite clear. ^ permalink raw reply [flat|nested] 26+ messages in thread
* bug#34565: ungoogled-chromium might contain remnants of Widevine DRM 2019-02-20 5:35 ` Jason Self @ 2019-02-20 7:59 ` Ricardo Wurmus 2019-02-20 10:09 ` bug#34565: ungoogled-chromium contains " Jelle Licht 1 sibling, 0 replies; 26+ messages in thread From: Ricardo Wurmus @ 2019-02-20 7:59 UTC (permalink / raw) To: Jason Self; +Cc: 34565 Jason Self <j@jxself.org> writes: > Leo Famulari wrote: >> To clarify this general point about Guix for anyone who is reading >> along, as a matter of policy the end user does not receive non-free >> source code from Guix. > > Right; the source is downloaded from commondatastorage.googleapis.com > but that is a technicality. What I'm saying is that the recipe should > be updated to cause it to download an already-cleaned up version > directly from Guix (it could be hosted somewhere on gnu.org for example > but exactly where can be up for negotiation) and that this excuse of > "they're getting it elsewhere" shouldn't be usable as an excuse to > sidestep the FSDG. It's still causing the user to download the software > due to the recipes provided by Guix. Please do not claim that Guix sidesteps or aims to sidestep the FSDG. This is not the case as we are committed to abiding by the FSDG. What users get when using “guix build --source” is the processed source code from the Guix build farm. The fallback is to fetch the original sources directly and process them (which is what the build farm does as well). -- Ricardo ^ permalink raw reply [flat|nested] 26+ messages in thread
* bug#34565: ungoogled-chromium contains Widevine DRM 2019-02-20 5:35 ` Jason Self 2019-02-20 7:59 ` bug#34565: ungoogled-chromium might contain remnants of " Ricardo Wurmus @ 2019-02-20 10:09 ` Jelle Licht 1 sibling, 0 replies; 26+ messages in thread From: Jelle Licht @ 2019-02-20 10:09 UTC (permalink / raw) To: Jason Self; +Cc: 34565 Jason Self <j@jxself.org> writes: > Leo Famulari wrote: >> To clarify this general point about Guix for anyone who is reading >> along, as a matter of policy the end user does not receive non-free >> source code from Guix. > > Right; the source is downloaded from commondatastorage.googleapis.com > but that is a technicality. What I'm saying is that the recipe should > be updated to cause it to download an already-cleaned up version > directly from Guix (it could be hosted somewhere on gnu.org for example > but exactly where can be up for negotiation) and that this excuse of I would argue that this way of thinking is one of the issues Guix and the broader reproducible builds community is trying to solve (in an ethical way). Practical software freedom also includes the possibility of not being dependent on even the gnu.org infrastructure. > "they're getting it elsewhere" shouldn't be usable as an excuse to > sidestep the FSDG. It's still causing the user to download the software > due to the recipes provided by Guix. The implied tone of your message comes across as needlessly aggressive. I am not sure if the GNU Kind Communications Guidelines apply here, but I still urge you to give the broader Guix community the benefit of the doubt in that they are committed to the FSDG and everything it entails. This is like arguing that curl could be used to download proprietary software; An unmodified Guix will never present a user with non-free software. If it does, this can be considered a bug and should be fixed ASAP. Your proposal implies that someone else still downloads the nonfree upstream sources to modify them, so I see this as even more of a case of working around the spirit of the FSDG. > >> The tools provided by Guix to access source code only return source >> code that is freely licensed. If the sources have to be modified to >> ensure this, the unodified source code is not provided to the user. > > It's still being downloaded into their computer and then being cleaned > up after the fact. If there weren't freedom problems with it there > wouldn't be a need for a clean-up program (ungoogled-chromium in this > case) to be running -- as a process on the user's computer -- to do > this. I do not really get the point you are trying to make, because the software has to be downloaded at some point in time. Offering a transparent solution in the form of the Guix store, where the problematic bits of software only exist in a transient state seems like it improves the situation across the board. Whether this fits the letter of the FSDG is an interesting discussion to be had, but arguing that it goes against the core principles is simply silly :). > > And inhttps://www.gnu.org/distros/free-system-distribution-guidelines. > htmlwe have: > > "For instance, a free system distribution must not contain browsers that implement EME, the browser functionality designed to load DRM modules." > > So that should make it quite clear. I feel most folks here agree on this, at least, so if ungoogled-chromium still implements a functioning EME, that is a bug. Respectfully yours, - Jelle ^ permalink raw reply [flat|nested] 26+ messages in thread
* bug#34565: ungoogled-chromium contains Widevine DRM 2019-02-20 1:12 ` Jason Self 2019-02-20 1:19 ` Jason Self 2019-02-20 5:15 ` Leo Famulari @ 2019-02-20 14:37 ` Marius Bakke 2019-02-21 2:43 ` Jason Self 2 siblings, 1 reply; 26+ messages in thread From: Marius Bakke @ 2019-02-20 14:37 UTC (permalink / raw) To: Jason Self, 34565 [-- Attachment #1: Type: text/plain, Size: 2516 bytes --] Jason Self <j@jxself.org> writes: > A different but related matter is the build process itself. I > understand this is not exactly related to the DRM matter but it does > seem similiar. I can open another bug over this if needed. I have > recently submitted upstream's Chromium 73.0.3683.45 into my FOSSology > instance for analysis. Actually, less than a third of the total files > were classified as "BSD-like". In total it found 162 unique licenses. > Of course, automated licenses analysis is never perfect and I have not > fully vetted any particular results but it does help to at least > indicate that which is very clearly free software and that which needs > further investigation. To avoid duplicate work, it would be useful if you ran this analysis on the tarball produced by `guix build --source ungoogled-chromium`. > Even in the short time I was reviewing it I found a number of freedom > problems. I don't mean that to be an exhaustive list of everything, > merely an indicator of a symptom: > > * unrar (license denies freedom 0) UnRAR is not present in the Guix source. > * third_party/blink has some images under CC-BY-NC-SA-2.0 I cannot find these images: grepping for CC-BY-NC-SA or 'Creative Commons' did not aid. Did you record the absolute paths to these files? > * Google Toolbar is in there, with a non-free EULA My grep-fu is really failing me today. Where is this located? > Taking this and considering Guix's build process: The method of > building seems to involve downloading Chromium, then runnning > ungoogled-chromium over it, and then building. I'm not sure if any > other packages have their freedom problems fixed in this way but this, > just like build flags, should not be sufficient. Freedom problems > should not be hidden/removed after the fact by asking the user to run a > clean-up program after downloading the source, even if that has been > automated by the package manager. What is sent to the end user to > compile should itself be 100% free software and FSDG compliant from the > beginning. If not it still amounts to distributing non-free software to > the user when they want to, for example, do guix build -S chromium. As Leo says, `guix build --source` should never return nonfree software as a matter of policy. Ungoogled-Chromium is no different: running `guix build --source ungoogled-chromium` will run the pruning scripts and generate a sanitized tarball, or (more likely) transparently download an already-processed source from the build farm. [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 487 bytes --] ^ permalink raw reply [flat|nested] 26+ messages in thread
* bug#34565: ungoogled-chromium contains Widevine DRM 2019-02-20 14:37 ` Marius Bakke @ 2019-02-21 2:43 ` Jason Self 2019-02-21 7:51 ` Marius Bakke 0 siblings, 1 reply; 26+ messages in thread From: Jason Self @ 2019-02-21 2:43 UTC (permalink / raw) To: 34565 [-- Attachment #1: Type: text/plain, Size: 1976 bytes --] Marius Bakke wrote: > not present in the Guix source. Please keep in mind I was discussing upstream Chromium in that piece. It's also not an exhaustive list. > I cannot find these images: grepping for CC-BY-NC-SA or 'Creative > Commons' did not aid. Did you record the absolute paths to these > files? Of course - FOSSology records everything as it recursively unpacks and searches files, metadata of files, etc. 1. third_party/blink/web_tests/fast/backgrounds/size/resources/SquirrelFis h.svg has within it: <a rel="cc:attributionURL" href="http://www.flickr.com/photos/goopymart /">http://www.flickr.com/photos/goopymart/</a>; / <a rel="license" href="http://creativecommons.org/licenses/by-nc-sa/2.0/">CC BY-NC-SA 2.0</a></div> 2. chrome/test/data/extensions/api_test/wallpaper_manager/test_bad.jpg contains: xmpRights:WebStatement="http://creativecommons.org/licenses/by-nc-sa/2. 0/ 3. chrome/test/data/extensions/test.jpg contains within it: http://creativecommons.org/licenses/by-nc-sa/2.0/ 4. chrome/test/data/extensions/api_test/wallpaper/test.jpg Identified by FOSSology as being identical to file 3. 5. chrome/test/data/extensions/api_test/wallpaper_manager/test.jpg contains within it: http://creativecommons.org/licenses/by-nc-sa/2.0/ > My grep-fu is really failing me today. Where is this located? chrome/test/data/import/firefox/macwin.zip/Profiles/brn6z0fz.default/ex tensions/{3112ca9c-de6d-4884-a869-9855de68056c}/chrome/google- toolbar.jar chrome/test/data/import/firefox/macwin.zip/Profiles/brn6z0fz.default/ex tensions/{3112ca9c-de6d-4884-a869-9855de68056c}/LICENSE.txt Keep in mind this was not an exhaustive report of all of upstream Chromium 73.0.3683.45 and there is much left out. They were intended only as examples to show freedom problems within Chromium itself. As for the rest I guess we'll need to wait on a response from the FSF since I seem to be receving pushback myself. [-- Attachment #2: This is a digitally signed message part --] [-- Type: application/pgp-signature, Size: 801 bytes --] ^ permalink raw reply [flat|nested] 26+ messages in thread
* bug#34565: ungoogled-chromium contains Widevine DRM 2019-02-21 2:43 ` Jason Self @ 2019-02-21 7:51 ` Marius Bakke 0 siblings, 0 replies; 26+ messages in thread From: Marius Bakke @ 2019-02-21 7:51 UTC (permalink / raw) To: Jason Self, 34565 [-- Attachment #1: Type: text/plain, Size: 949 bytes --] Jason Self <j@jxself.org> writes: > Marius Bakke wrote: >> not present in the Guix source. > > Please keep in mind I was discussing upstream Chromium in that piece. > It's also not an exhaustive list. I don't think upstream Chromium is relevant to this discussion. >> I cannot find these images: grepping for CC-BY-NC-SA or 'Creative >> Commons' did not aid. Did you record the absolute paths to these >> files? > > Of course - FOSSology records everything as it recursively unpacks and > searches files, metadata of files, etc. I was not aware of FOSSology, and admit that I have not checked file metadata. It would be great to have this tool in Guix! None of the reported files are present in the Guix source. I believe they are all scrubbed by the Ungoogled binary pruning script. I really appreciate your effort here, but please only use this bug tracker for problems that affect the Guix package. Thanks! [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 487 bytes --] ^ permalink raw reply [flat|nested] 26+ messages in thread
end of thread, other threads:[~2019-10-12 11:49 UTC | newest] Thread overview: 26+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2019-02-19 3:44 bug#34565: ungoogled-chromium contains Widevine DRM Jason Self 2019-02-19 7:06 ` Leo Famulari 2019-02-19 13:28 ` Jason Self 2019-02-19 13:42 ` Julien Lepiller 2019-02-19 14:44 ` Julien Lepiller 2019-02-20 5:42 ` Leo Famulari 2019-02-20 9:22 ` Giovanni Biscuolo 2019-02-20 14:48 ` Marius Bakke 2019-10-12 11:14 ` ng0 2019-10-12 11:32 ` bug#34565: ungoogled-chromium may contain " Marius Bakke 2019-02-19 14:43 ` bug#34565: ungoogled-chromium contains " Leo Famulari 2019-02-20 0:39 ` Jason Self 2019-02-20 1:12 ` Jason Self 2019-02-20 1:19 ` Jason Self 2019-02-20 13:03 ` Jason Self 2019-02-20 16:18 ` Julien Lepiller 2019-02-20 20:15 ` Adonay Felipe Nogueira 2019-02-20 21:49 ` Ricardo Wurmus 2019-02-21 2:19 ` Jason Self 2019-02-20 5:15 ` Leo Famulari 2019-02-20 5:35 ` Jason Self 2019-02-20 7:59 ` bug#34565: ungoogled-chromium might contain remnants of " Ricardo Wurmus 2019-02-20 10:09 ` bug#34565: ungoogled-chromium contains " Jelle Licht 2019-02-20 14:37 ` Marius Bakke 2019-02-21 2:43 ` Jason Self 2019-02-21 7:51 ` Marius Bakke
Code repositories for project(s) associated with this public inbox https://git.savannah.gnu.org/cgit/guix.git This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).