GNU bug report logs - #28004
Chromium

Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.

Package: guix-patches; Reported by: Marius Bakke <mbakke@HIDDEN>; dated Mon, 7 Aug 2017 20:00:01 UTC; Maintainer for guix-patches is guix-patches@HIDDEN.

Message received at 28004 <at> debbugs.gnu.org:


Received: (at 28004) by debbugs.gnu.org; 29 Aug 2018 23:31:49 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed Aug 29 19:31:49 2018
Received: from localhost ([127.0.0.1]:37633 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1fv9wD-0003dt-Jk
	for submit <at> debbugs.gnu.org; Wed, 29 Aug 2018 19:31:49 -0400
Received: from relay1-d.mail.gandi.net ([217.70.183.193]:53143)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <amirouche@HIDDEN>) id 1fv9wC-0003cH-DR
 for 28004 <at> debbugs.gnu.org; Wed, 29 Aug 2018 19:31:48 -0400
Received: from webmail.gandi.net (webmail1.sd4.0x35.net [10.200.201.1])
 (Authenticated sender: amirouche@HIDDEN)
 by relay1-d.mail.gandi.net (Postfix) with ESMTPA id 24399240003
 for <28004 <at> debbugs.gnu.org>; Wed, 29 Aug 2018 23:31:46 +0000 (UTC)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII;
 format=flowed
Content-Transfer-Encoding: 7bit
Date: Thu, 30 Aug 2018 01:31:46 +0200
From: Amirouche Boubekki <amirouche@HIDDEN>
To: 28004 <at> debbugs.gnu.org
Subject: (no subject)
Message-ID: <a0ade17eaca10ddeeb94dfb1620fff60@HIDDEN>
X-Sender: amirouche@HIDDEN
User-Agent: Roundcube Webmail/1.1.2
X-Spam-Score: 1.3 (+)
X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.org",
 has NOT identified this incoming email as spam.  The original
 message has been attached to this so you can view it or label
 similar future email.  If you have any questions, see
 the administrator of that system for details.
 Content preview: I would like to work on the TODO items. * There is still some
 data transmitted when starting the browser for the first time. It seems
 related
 to the "domain_reliability" component. * Remove remaining "Web Store" links.
 Currently I've only found it in settings, under "accessibility" and "fonts".
 [...] Content analysis details:   (1.3 points, 10.0 required)
 pts rule name              description
 ---- ---------------------- --------------------------------------------------
 2.0 SLIGHTLY_BAD_SUBJECT   Subject contains something slightly spammy
 -0.7 RCVD_IN_DNSWL_LOW      RBL: Sender listed at http://www.dnswl.org/, low
 trust [217.70.183.193 listed in list.dnswl.org]
X-Debbugs-Envelope-To: 28004
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: 0.3 (/)

I would like to work on the TODO items.

* There is still some data transmitted when starting the browser for the
   first time.  It seems related to the "domain_reliability" component.

* Remove remaining "Web Store" links.  Currently I've only found it in
   settings, under "accessibility" and "fonts".

Is is taken by anybody?

The build is in progress, I will report later.




Information forwarded to guix-patches@HIDDEN:
bug#28004; Package guix-patches. Full text available.

Message received at 28004 <at> debbugs.gnu.org:


Received: (at 28004) by debbugs.gnu.org; 6 Aug 2018 08:22:39 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon Aug 06 04:22:38 2018
Received: from localhost ([127.0.0.1]:42257 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1fmamk-0002ei-Ou
	for submit <at> debbugs.gnu.org; Mon, 06 Aug 2018 04:22:38 -0400
Received: from mail-lj1-f169.google.com ([209.85.208.169]:33715)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <go.wigust@HIDDEN>) id 1fmamj-0002eS-8k
 for 28004 <at> debbugs.gnu.org; Mon, 06 Aug 2018 04:22:37 -0400
Received: by mail-lj1-f169.google.com with SMTP id s12-v6so9890987ljj.0
 for <28004 <at> debbugs.gnu.org>; Mon, 06 Aug 2018 01:22:37 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;
 h=from:to:cc:subject:references:date:in-reply-to:message-id
 :user-agent:mime-version;
 bh=J7bv3mrLiNdBt7BMizG28Q1CWXpdUzkY5PydPFS8/tg=;
 b=p2JA47ze9DadJ6YDZJ0cEQqV1VKezLMtcOX+J0/JXzd2QsEmX0FkISURa8QKR+l2Cy
 Nq3Y8RPxt69DIfVLpTXas3eOSCX8Nevccv9uy/MCj4QOz+mNSSHif+934uee267WdQ4S
 o5lhNbadFoG5PRaPpGTIahAmVwgIpIeZ/CRdWkoAiADXA1LKKyLEYDgDSpE1JIR3qzmm
 sdMRMPAwfbvtAlVqm31kum4IJ0hJI35bPsEPrR2+q3Tp3+MyYysk5EpQjNdiJkcNZVHS
 r1fpAXJw02/nw0bihK0AHukSE8LO7Ctk9ttVmaYx35ezWIZrkeS7tiJDxrIIHrcamwWc
 rqng==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:from:to:cc:subject:references:date:in-reply-to
 :message-id:user-agent:mime-version;
 bh=J7bv3mrLiNdBt7BMizG28Q1CWXpdUzkY5PydPFS8/tg=;
 b=fOso3NhOUJJaPgW6v+AChvipT4COhfKviXzOXDrilRmCp/l6oJBkuyW0OlTXg6fibJ
 QPtu+UqMy4aQst8rCOjtgL9EYRmo9kD0dbHeSSHhvgDMcqZE6Ez/UD1WPJ2Cf5JEdTaI
 1NI0iqtOCrAH+hJVS3RUxgsRSNb5DWVxFBu16J7+co26B1qIM/2o4XJzbDuH4rsee2Mv
 inYizAxb0s5Hemx+D7k//CzCEc3RtaSkEx4jNbbZDpvVxjD/iYPiYy6n2eEUgJkjNoqc
 61UIgL5jJJJV/oQAUSNNvAtvaN/pL54l/lUEZrTjL8RSJq3cY4J8r7UYAXJEHw3zymRp
 +asg==
X-Gm-Message-State: AOUpUlHVVMJKBH9/6KYeS71VBnYBUQhN89bRR82h88KBlfFsO/y99dSc
 BDsIiMWwKBIftCVX+9UCpOjUAA6w
X-Google-Smtp-Source: AAOMgpeABtFig711wDei7IFa6DNfkHju1jTPnTt0TtyepF/4KNNeL4itO9R72lOkDyrayl+fa98QeA==
X-Received: by 2002:a2e:97c8:: with SMTP id
 m8-v6mr12735283ljj.52.1533543750953; 
 Mon, 06 Aug 2018 01:22:30 -0700 (PDT)
Received: from magnolia (92-100-243-83.dynamic.avangarddsl.ru. [92.100.243.83])
 by smtp.gmail.com with ESMTPSA id o86-v6sm2082228lfi.82.2018.08.06.01.22.29
 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256);
 Mon, 06 Aug 2018 01:22:30 -0700 (PDT)
From: Oleg Pykhalov <go.wigust@HIDDEN>
To: Marius Bakke <mbakke@HIDDEN>
Subject: Re: [bug#28004] Chromium
References: <87fu75aar5.fsf@HIDDEN> <874lnkr0vf.fsf@HIDDEN>
 <87vaejvclc.fsf@HIDDEN>
 <20180226200133.zsnahblbgzovrtmu@abyayala>
 <87muzvv7ku.fsf@HIDDEN> <20180226234144.032af030@alma-ubu>
 <87woyxt3nz.fsf@HIDDEN>
 <20180316173044.dctlydfij7smndxd@abyayala>
 <87h8pfc3tr.fsf@HIDDEN>
 <20180316175225.7jf4k2qaciyxnepp@abyayala>
 <20180725080800.stqijlny6om6powe@abyayala>
 <87tvo9c6cs.fsf@HIDDEN>
Date: Mon, 06 Aug 2018 11:22:25 +0300
In-Reply-To: <87tvo9c6cs.fsf@HIDDEN> (Marius Bakke's message of "Sun, 05
 Aug 2018 15:04:19 +0200")
Message-ID: <87tvo7lxa6.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.1 (gnu/linux)
MIME-Version: 1.0
Content-Type: multipart/signed; boundary="=-=-=";
 micalg=pgp-sha512; protocol="application/pgp-signature"
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 28004
Cc: 28004 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

--=-=-=
Content-Type: text/plain

Hello,

compiled successfully on 340ee00bbf91a8e0ea567d00d7ff54dd025abc05

Thanks,
Oleg.

--=-=-=
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEEc+OyAXw1EaDPCmAPckbhHGm3lWkFAltoBUEACgkQckbhHGm3
lWnbDxAAtgEmUKqqvSyoVLZ7K5RShwgSVySLHudzWu+cYWvJpA+eAzPgKzZYdJwu
larVccguqwL1JodI1Gveoct5h1Pebmht5ivWKgC52Dgxziym9E4fpBoCJ4sGpIU1
DmKydR9Y5jmgXcsQGh1myywUHoZgX6dWGOlJYiZVUl67IATp7d1Z+KdOb5ybt9gw
ZMEJ265KKiTAoSn8dScHoCr1ZU87+YRZH2MASIRWU6g9qiGReGTGJyywGsl36X8B
ro/rcL9WJ5K4lmQvhfrvd5judhxq8gAouZwVxd2epu3JhYbysTn35GcVepsR0S8v
TFcv0+TZ8feNGN4UARuz+Y/GZAeq1FwsFmK/xooCkc7EjUpl8oKiJiFDj1Z9D/F0
QfhpSNRz/eUG9qWhnlqCjfyBUqmSW3tC+e9tj14kimlwTwr71r6x15RkF6rmkkxu
/dZVeEa+tiSNWI8aPYHuaqoXXZP+6Zy4dO6xPQS/PS4fG/mOUPvwr8onGjU4IMYi
T/DzcOpk6B4ONtDyUwAVqvDsH/6x/FoQr9rJnsNGVxD9INac1LKx6VQuEAqZ0ht4
35n0bIR3qnzdVBITaq41b7G3HI2+1R5Q6knLxA16UMvyenIroYPvrH2OEi8HcHjR
WSL6aW/zie0s/MCe/tir+vxVtipxreC/vQKbAS1qSAgn6biUH00=
=drr5
-----END PGP SIGNATURE-----
--=-=-=--




Information forwarded to guix-patches@HIDDEN:
bug#28004; Package guix-patches. Full text available.

Message received at 28004 <at> debbugs.gnu.org:


Received: (at 28004) by debbugs.gnu.org; 5 Aug 2018 23:57:22 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sun Aug 05 19:57:22 2018
Received: from localhost ([127.0.0.1]:42117 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1fmStl-0001Cj-A8
	for submit <at> debbugs.gnu.org; Sun, 05 Aug 2018 19:57:22 -0400
Received: from static.195.114.201.195.clients.your-server.de
 ([195.201.114.195]:49168 helo=conspiracy.of.n0.is)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <ng0@HIDDEN>) id 1fmSth-0001CW-F4
 for 28004 <at> debbugs.gnu.org; Sun, 05 Aug 2018 19:57:19 -0400
Received: by conspiracy.of.n0.is (OpenSMTPD) with ESMTPSA id e7cb38eb
 (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256:NO); 
 Sun, 5 Aug 2018 23:57:14 +0000 (UTC)
Date: Sun, 5 Aug 2018 23:58:00 +0000
From: ng0 <ng0@HIDDEN>
To: Marius Bakke <mbakke@HIDDEN>
Subject: Re: [bug#28004] Chromium
Message-ID: <20180805235800.txqdbuawyu5y2i4m@abyayala>
References: <20180226234144.032af030@alma-ubu> <87woyxt3nz.fsf@HIDDEN>
 <20180316173044.dctlydfij7smndxd@abyayala>
 <87h8pfc3tr.fsf@HIDDEN>
 <20180316175225.7jf4k2qaciyxnepp@abyayala>
 <20180725080800.stqijlny6om6powe@abyayala>
 <87tvo9c6cs.fsf@HIDDEN>
 <20180805161802.bif4ax5feqloxayz@abyayala>
 <87lg9kd61u.fsf@HIDDEN>
 <20180805203222.iyvpw5wansinz6tb@abyayala>
MIME-Version: 1.0
Content-Type: multipart/signed; micalg=pgp-sha512;
 protocol="application/pgp-signature"; boundary="ytlnuqtgu6hgpflx"
Content-Disposition: inline
In-Reply-To: <20180805203222.iyvpw5wansinz6tb@abyayala>
X-Spam-Score: -0.0 (/)
X-Debbugs-Envelope-To: 28004
Cc: 28004 <at> debbugs.gnu.org, ng0 <ng0@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)


--ytlnuqtgu6hgpflx
Content-Type: multipart/mixed; boundary="avrxomh2xkp23zzn"
Content-Disposition: inline


--avrxomh2xkp23zzn
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline

It took a while because of the heat, but here's a fail log appended. I'm going to bed,
and I don't know when I have time to look into it. Maybe you get to work on it
earlier than myself.

Thanks

--avrxomh2xkp23zzn
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment; filename="chromium68.txt"
Content-Transfer-Encoding: quoted-printable

[13587/19325] CXX obj/chrome/browser/browser/browser_jumbo_2.o
FAILED: obj/chrome/browser/browser/browser_jumbo_2.o=20
g++ -MMD -MF obj/chrome/browser/browser/browser_jumbo_2.o.d -DUSE_LIBSECRET=
 -DV8_DEPRECATION_WARNINGS -DUSE_UDEV -DUSE_AURA=3D1 -DUSE_GLIB=3D1 -DUSE_N=
SS_CERTS=3D1 -DUSE_X11=3D1 -DNO_TCMALLOC -DCHROMIUM_BUILD -D_FILE_OFFSET_BI=
TS=3D64=20
-D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC=
_FORMAT_MACROS -D_FORTIFY_SOURCE=3D2 -DNDEBUG -DNVALGRIND -DDYNAMIC_ANNOTAT=
IONS_ENABLED=3D0 -DUSE_CUPS -DGLIB_VERSION_MAX_ALLOWED=3DGLIB_VERSION_2_32=
=20
-DGLIB_VERSION_MIN_REQUIRED=3DGLIB_VERSION_2_26 -DGL_GLEXT_PROTOTYPES -DUSE=
_GLX -DUSE_EGL -DTOOLKIT_VIEWS=3D1 -DEXPAT_RELATIVE_PATH -DUSING_SYSTEM_ICU=
=3D1 -DICU_UTIL_DATA_IMPL=3DICU_UTIL_DATA_STATIC -DUCHAR_TYPE=3Duint16_t=20
-DU_IMPORT=3DU_EXPORT -DGOOGLE_PROTOBUF_NO_RTTI -DGOOGLE_PROTOBUF_NO_STATIC=
_INITIALIZER -DHAVE_PTHREAD -DV8_USE_EXTERNAL_STARTUP_DATA -DSK_IGNORE_LINE=
ONLY_AA_CONVEX_PATH_OPTS -DSK_HAS_PNG_LIBRARY -DSK_HAS_WEBP_LIBRARY=20
-DSK_HAS_JPEG_LIBRARY -DSK_SUPPORT_GPU=3D1 -DSK_GPU_WORKAROUNDS_HEADER=3D\"=
gpu/config/gpu_driver_bug_workaround_autogen.h\" -DLEVELDB_PLATFORM_CHROMIU=
M=3D1 -DWEBRTC_NON_STATIC_TRACE_EVENT_HANDLERS=3D0 -DGTEST_RELATIVE_PATH=20
-DWEBRTC_CHROMIUM_BUILD -DWEBRTC_POSIX -DWEBRTC_LINUX -DNO_MAIN_THREAD_WRAP=
PING -DI18N_ADDRESS_VALIDATION_DATA_URL=3D\"https://chromium-i18n.appspot.c=
om/ssl-aggregate-address/\" -DUSE_SYSTEM_ZLIB=3D1 -DHUNSPELL_STATIC=20
-DHUNSPELL_CHROME_CLIENT -DUSE_HUNSPELL -I. -I../.. -Igen -Igen/shim_header=
s/libevent_shim -Igen/shim_headers/icui18n_shim -Igen/shim_headers/icuuc_sh=
im -Igen/shim_headers/zlib_shim -Igen/shim_headers/libpng_shim=20
-Igen/shim_headers/re2_shim -Igen/shim_headers/snappy_shim -Igen/shim_heade=
rs/libdrm_shim -I../../third_party/khronos -I../../gpu -I../../third_party/=
libyuv/include -Igen/shim_headers/ffmpeg_shim -Igen/shim_headers/libvpx_shi=
m=20
-Igen/shim_headers/opus_shim -Igen/shim_headers/openh264_shim -Igen/shim_he=
aders/minizip_shim -Igen/shim_headers/flac_shim -I../../third_party/webrtc_=
overrides -I../../testing/gtest/include -I../../third_party/libyuv/include=
=20
-I../../third_party/usrsctp/usrsctplib -I../../third_party/webrtc -I../../t=
hird_party/ced/src -I../../third_party/protobuf/src -I../../third_party/pro=
tobuf/src -Igen/protoc_out -I../../third_party/boringssl/src/include=20
-I../../skia/config -I../../skia/ext -I../../third_party/skia/include/c -I.=
=2E/../third_party/skia/include/config -I../../third_party/skia/include/cor=
e -I../../third_party/skia/include/effects -I../../third_party/skia/include=
/encode=20
-I../../third_party/skia/include/gpu -I../../third_party/skia/include/image=
s -I../../third_party/skia/include/lazy -I../../third_party/skia/include/pa=
thops -I../../third_party/skia/include/pdf -I../../third_party/skia/include=
/pipe=20
-I../../third_party/skia/include/ports -I../../third_party/skia/include/uti=
ls -I../../third_party/skia/src/gpu -I../../third_party/skia/src/sksl -I../=
=2E./third_party/leveldatabase -I../../third_party/leveldatabase/src=20
-I../../third_party/leveldatabase/src/include -I../../third_party/libwebm/s=
ource -I../../v8/include -Igen/v8/include -I../../third_party/webrtc_overri=
des -I../../third_party/webrtc -Igen/third_party/metrics_proto=20
-I../../third_party/mesa/src/include -Igen -Igen -I../../third_party/libadd=
ressinput/src/cpp/include -I../../third_party/perfetto/include -Igen/third_=
party/perfetto/protos -I../../third_party/cacheinvalidation/overrides=20
-I../../third_party/cacheinvalidation/src -I../../third_party/flatbuffers/s=
rc/include -I../../third_party/webrtc_overrides -I../../testing/gtest/inclu=
de -I../../third_party/webrtc -I../../third_party/libsecret=20
-I../../third_party/breakpad/breakpad/src -Igen -fno-strict-aliasing --para=
m=3Dssp-buffer-size=3D4 -fstack-protector -Wno-builtin-macro-redefined -D__=
DATE__=3D -D__TIME__=3D -D__TIMESTAMP__=3D -funwind-tables -fPIC -pipe -pth=
read -m64=20
-march=3Dx86-64 -Wall -Wno-unused-local-typedefs -Wno-maybe-uninitialized -=
Wno-deprecated-declarations -fno-delete-null-pointer-checks -Wno-comments -=
Wno-missing-field-initializers -Wno-unused-parameter -O2 -fno-ident -fdata-=
sections=20
-ffunction-sections -fno-omit-frame-pointer -g0 -fvisibility=3Dhidden -isys=
tem../../../../../gnu/store/x9lfcagl47zbb6krfpmwm31m70s9pk00-glib-2.56.0/in=
clude/glib-2.0=20
-isystem../../../../../gnu/store/x9lfcagl47zbb6krfpmwm31m70s9pk00-glib-2.56=
=2E0/lib/glib-2.0/include -isystem../../../../../gnu/store/9xx9gzlgp20bzb9r=
9ksajwzdcpm0qs5z-nss-3.38/include/nss=20
-isystem../../../../../gnu/store/714dy9b910rdvsy8i8bx6ln3ap032z2z-nspr-4.19=
/include/nspr -isystem../../../../../gnu/store/kl4fr813f98mh1zjs6bwkardgnrz=
xi8c-libxml2-2.9.8/include/libxml2=20
-isystem../../../../../gnu/store/84dgv1gy1cyms37zlmykpsafbpwbm7xr-dbus-1.12=
=2E6/include/dbus-1.0 -isystem../../../../../gnu/store/84dgv1gy1cyms37zlmyk=
psafbpwbm7xr-dbus-1.12.6/lib/dbus-1.0/include -std=3Dgnu++14 -Wno-narrowing=
=20
-fno-exceptions -fno-rtti -fvisibility-inlines-hidden -c gen/chrome/browser=
/browser_jumbo_2.cc -o obj/chrome/browser/browser/browser_jumbo_2.o
In file included from gen/mojo/public/mojom/base/string16.mojom-shared-inte=
rnal.h:12,
                 from gen/device/usb/public/mojom/device.mojom-shared-inter=
nal.h:12,
                 from gen/device/usb/public/mojom/chooser_service.mojom-sha=
red-internal.h:12,
                 from gen/device/usb/public/mojom/chooser_service.mojom-sha=
red.h:24,
                 from gen/device/usb/public/mojom/chooser_service.mojom.h:2=
8,
                 from ../../content/public/browser/content_browser_client.h=
:30,
                 from ../../chrome/browser/profiles/profile.h:18,
                 from ./../../chrome/browser/browsing_data/browsing_data_qu=
ota_helper_impl.cc:15,
                 from gen/chrome/browser/browser_jumbo_2.cc:6:
gen/mojo/public/mojom/base/big_buffer.mojom-shared-internal.h:30:48: warnin=
g: alignment 1 of ?mojo_base::mojom::internal::BigBuffer_Data? is less than=
 8 [-Wpacked-not-aligned]
 class COMPONENT_EXPORT(MOJO_BASE_MOJOM_SHARED) BigBuffer_Data {
                                                ^~~~~~~~~~~~~~
In file included from gen/services/network/public/mojom/network_context.moj=
om-shared-internal.h:14,
                 from gen/services/network/public/mojom/network_service.moj=
om-shared-internal.h:13,
                 from gen/services/network/public/mojom/network_service.moj=
om-shared.h:24,
                 from gen/services/network/public/mojom/network_service.moj=
om.h:28,
                 from ../../content/public/browser/content_browser_client.h=
:36,
                 from ../../chrome/browser/profiles/profile.h:18,
                 from ./../../chrome/browser/browsing_data/browsing_data_qu=
ota_helper_impl.cc:15,
                 from gen/chrome/browser/browser_jumbo_2.cc:6:
gen/mojo/public/mojom/base/values.mojom-shared-internal.h:31:48: warning: a=
lignment 1 of ?mojo_base::mojom::internal::Value_Data? is less than 8 [-Wpa=
cked-not-aligned]
 class COMPONENT_EXPORT(MOJO_BASE_MOJOM_SHARED) Value_Data {
                                                ^~~~~~~~~~
In file included from gen/media/mojo/interfaces/video_decode_perf_history.m=
ojom-shared-internal.h:12,
                 from gen/media/mojo/interfaces/video_decode_perf_history.m=
ojom-shared.h:24,
                 from gen/media/mojo/interfaces/video_decode_perf_history.m=
ojom.h:28,
                 from ../../media/mojo/services/video_decode_perf_history.h=
:18,
                 from ./../../chrome/browser/browsing_data/chrome_browsing_=
data_remover_delegate.cc:93,
                 from gen/chrome/browser/browser_jumbo_2.cc:10:
gen/media/mojo/interfaces/media_types.mojom-shared-internal.h:89:8: warning=
: alignment 1 of ?media::mojom::internal::VideoFrameData_Data? is less than=
 8 [-Wpacked-not-aligned]
 class  VideoFrameData_Data {
        ^~~~~~~~~~~~~~~~~~~
In file included from gen/third_party/blink/public/platform/modules/cache_s=
torage/cache_storage.mojom-shared.h:24,
                 from gen/third_party/blink/public/platform/modules/cache_s=
torage/cache_storage.mojom.h:28,
                 from ../../content/public/browser/render_process_host.h:25,
                 from ./../../chrome/browser/budget_service/budget_service_=
impl.cc:13,
                 from gen/chrome/browser/browser_jumbo_2.cc:27:
gen/third_party/blink/public/platform/modules/cache_storage/cache_storage.m=
ojom-shared-internal.h:92:53: warning: alignment 1 of ?blink::mojom::intern=
al::OpenResult_Data? is less than 8 [-Wpacked-not-aligned]
 class COMPONENT_EXPORT(MOJOM_SHARED_CONTENT_EXPORT) OpenResult_Data {
                                                     ^~~~~~~~~~~~~~~
gen/third_party/blink/public/platform/modules/cache_storage/cache_storage.m=
ojom-shared-internal.h:171:53: warning: alignment 1 of ?blink::mojom::inter=
nal::MatchResult_Data? is less than 8 [-Wpacked-not-aligned]
 class COMPONENT_EXPORT(MOJOM_SHARED_CONTENT_EXPORT) MatchResult_Data {
                                                     ^~~~~~~~~~~~~~~~
gen/third_party/blink/public/platform/modules/cache_storage/cache_storage.m=
ojom-shared-internal.h:250:53: warning: alignment 1 of ?blink::mojom::inter=
nal::MatchAllResult_Data? is less than 8 [-Wpacked-not-aligned]
 class COMPONENT_EXPORT(MOJOM_SHARED_CONTENT_EXPORT) MatchAllResult_Data {
                                                     ^~~~~~~~~~~~~~~~~~~
In file included from gen/third_party/blink/public/platform/modules/cache_s=
torage/cache_storage.mojom-shared.h:24,
                 from gen/third_party/blink/public/platform/modules/cache_s=
torage/cache_storage.mojom.h:28,
                 from ../../content/public/browser/render_process_host.h:25,
                 from ./../../chrome/browser/budget_service/budget_service_=
impl.cc:13,
                 from gen/chrome/browser/browser_jumbo_2.cc:27:
gen/third_party/blink/public/platform/modules/cache_storage/cache_storage.m=
ojom-shared-internal.h:329:53: warning: alignment 1 of ?blink::mojom::inter=
nal::CacheKeysResult_Data? is less than 8 [-Wpacked-not-aligned]
 class COMPONENT_EXPORT(MOJOM_SHARED_CONTENT_EXPORT) CacheKeysResult_Data {
                                                     ^~~~~~~~~~~~~~~~~~~~
In file included from gen/services/resource_coordinator/public/mojom/memory=
_instrumentation/memory_instrumentation.mojom-shared.h:24,
                 from gen/services/resource_coordinator/public/mojom/memory=
_instrumentation/memory_instrumentation.mojom.h:28,
                 from ../../services/resource_coordinator/public/cpp/memory=
_instrumentation/coordinator.h:8,
                 from ../../services/resource_coordinator/public/cpp/memory=
_instrumentation/memory_instrumentation.h:12,
                 from ../../chrome/browser/resource_coordinator/render_proc=
ess_probe.h:17,
                 from ./../../chrome/browser/chrome_browser_main.cc:97,
                 from gen/chrome/browser/browser_jumbo_2.cc:31:
gen/services/resource_coordinator/public/mojom/memory_instrumentation/memor=
y_instrumentation.mojom-shared-internal.h:174:66: warning: alignment 1 of ?=
memory_instrumentation::mojom::internal::RawAllocatorDumpEntryValue_Data? i=
s less=20
than 8 [-Wpacked-not-aligned]
 class COMPONENT_EXPORT(RESOURCE_COORDINATOR_PUBLIC_MOJOM_SHARED) RawAlloca=
torDumpEntryValue_Data {
                                                                  ^~~~~~~~~=
~~~~~~~~~~~~~~~~~~~~~~
In file included from gen/third_party/blink/public/platform/modules/present=
ation/presentation.mojom-shared.h:24,
                 from gen/third_party/blink/public/platform/modules/present=
ation/presentation.mojom.h:28,
                 from ../../content/public/browser/presentation_service_del=
egate.h:17,
                 from ../../chrome/browser/media/router/media_router.h:26,
                 from ../../chrome/browser/media/router/presentation/presen=
tation_service_delegate_impl.h:20,
                 from ./../../chrome/browser/chrome_content_browser_client.=
cc:54,
                 from gen/chrome/browser/browser_jumbo_2.cc:34:
gen/third_party/blink/public/platform/modules/presentation/presentation.moj=
om-shared-internal.h:137:53: warning: alignment 1 of ?blink::mojom::interna=
l::PresentationConnectionMessage_Data? is less than 8 [-Wpacked-not-aligned]
 class COMPONENT_EXPORT(MOJOM_SHARED_CONTENT_EXPORT) PresentationConnection=
Message_Data {
                                                     ^~~~~~~~~~~~~~~~~~~~~~=
~~~~~~~~~~~~
In file included from gen/services/preferences/public/mojom/preferences.moj=
om-shared.h:24,
                 from gen/services/preferences/public/mojom/preferences.moj=
om.h:28,
                 from ./../../chrome/browser/chrome_content_browser_client.=
cc:255,
                 from gen/chrome/browser/browser_jumbo_2.cc:34:
gen/services/preferences/public/mojom/preferences.mojom-shared-internal.h:1=
74:8: warning: alignment 1 of ?prefs::mojom::internal::PrefUpdateValue_Data=
? is less than 8 [-Wpacked-not-aligned]
 class  PrefUpdateValue_Data {
        ^~~~~~~~~~~~~~~~~~~~
g++: fatal error: Killed signal terminated program cc1plus
compilation terminated.
[13588/19325] CXX obj/chrome/browser/browser/browser_jumbo_23.o
In file included from gen/mojo/public/mojom/base/string16.mojom-shared-inte=
rnal.h:12,
                 from gen/device/usb/public/mojom/device.mojom-shared-inter=
nal.h:12,
                 from gen/device/usb/public/mojom/chooser_service.mojom-sha=
red-internal.h:12,
                 from gen/device/usb/public/mojom/chooser_service.mojom-sha=
red.h:24,
                 from gen/device/usb/public/mojom/chooser_service.mojom.h:2=
8,
                 from ../../content/public/browser/content_browser_client.h=
:30,
                 from ../../chrome/browser/browser_process_platform_part_ba=
se.h:11,
                 from ../../chrome/browser/browser_process_platform_part.h:=
20,
                 from ../../chrome/browser/browser_process.h:21,
                 from ./../../chrome/browser/printing/cloud_print/privet_ur=
l_fetcher.cc:22,
                 from gen/chrome/browser/browser_jumbo_23.cc:5:
gen/mojo/public/mojom/base/big_buffer.mojom-shared-internal.h:30:48: warnin=
g: alignment 1 of ?mojo_base::mojom::internal::BigBuffer_Data? is less than=
 8 [-Wpacked-not-aligned]
 class COMPONENT_EXPORT(MOJO_BASE_MOJOM_SHARED) BigBuffer_Data {
                                                ^~~~~~~~~~~~~~
In file included from gen/services/network/public/mojom/network_context.moj=
om-shared-internal.h:14,
                 from gen/services/network/public/mojom/network_service.moj=
om-shared-internal.h:13,
                 from gen/services/network/public/mojom/network_service.moj=
om-shared.h:24,
                 from gen/services/network/public/mojom/network_service.moj=
om.h:28,
                 from ../../content/public/browser/content_browser_client.h=
:36,
                 from ../../chrome/browser/browser_process_platform_part_ba=
se.h:11,
                 from ../../chrome/browser/browser_process_platform_part.h:=
20,
                 from ../../chrome/browser/browser_process.h:21,
                 from ./../../chrome/browser/printing/cloud_print/privet_ur=
l_fetcher.cc:22,
                 from gen/chrome/browser/browser_jumbo_23.cc:5:
gen/mojo/public/mojom/base/values.mojom-shared-internal.h:31:48: warning: a=
lignment 1 of ?mojo_base::mojom::internal::Value_Data? is less than 8 [-Wpa=
cked-not-aligned]
 class COMPONENT_EXPORT(MOJO_BASE_MOJOM_SHARED) Value_Data {
                                                ^~~~~~~~~~
In file included from gen/third_party/blink/public/platform/modules/cache_s=
torage/cache_storage.mojom-shared.h:24,
                 from gen/third_party/blink/public/platform/modules/cache_s=
torage/cache_storage.mojom.h:28,
                 from ../../content/public/browser/render_process_host.h:25,
                 from ./../../chrome/browser/sessions/session_restore.cc:58,
                 from gen/chrome/browser/browser_jumbo_23.cc:6:
gen/third_party/blink/public/platform/modules/cache_storage/cache_storage.m=
ojom-shared-internal.h:92:53: warning: alignment 1 of ?blink::mojom::intern=
al::OpenResult_Data? is less than 8 [-Wpacked-not-aligned]
 class COMPONENT_EXPORT(MOJOM_SHARED_CONTENT_EXPORT) OpenResult_Data {
                                                     ^~~~~~~~~~~~~~~
gen/third_party/blink/public/platform/modules/cache_storage/cache_storage.m=
ojom-shared-internal.h:171:53: warning: alignment 1 of ?blink::mojom::inter=
nal::MatchResult_Data? is less than 8 [-Wpacked-not-aligned]
 class COMPONENT_EXPORT(MOJOM_SHARED_CONTENT_EXPORT) MatchResult_Data {
                                                     ^~~~~~~~~~~~~~~~
gen/third_party/blink/public/platform/modules/cache_storage/cache_storage.m=
ojom-shared-internal.h:250:53: warning: alignment 1 of ?blink::mojom::inter=
nal::MatchAllResult_Data? is less than 8 [-Wpacked-not-aligned]
 class COMPONENT_EXPORT(MOJOM_SHARED_CONTENT_EXPORT) MatchAllResult_Data {
                                                     ^~~~~~~~~~~~~~~~~~~
In file included from gen/third_party/blink/public/platform/modules/cache_s=
torage/cache_storage.mojom-shared.h:24,
                 from gen/third_party/blink/public/platform/modules/cache_s=
torage/cache_storage.mojom.h:28,
                 from ../../content/public/browser/render_process_host.h:25,
                 from ./../../chrome/browser/sessions/session_restore.cc:58,
                 from gen/chrome/browser/browser_jumbo_23.cc:6:
gen/third_party/blink/public/platform/modules/cache_storage/cache_storage.m=
ojom-shared-internal.h:329:53: warning: alignment 1 of ?blink::mojom::inter=
nal::CacheKeysResult_Data? is less than 8 [-Wpacked-not-aligned]
 class COMPONENT_EXPORT(MOJOM_SHARED_CONTENT_EXPORT) CacheKeysResult_Data {
                                                     ^~~~~~~~~~~~~~~~~~~~
In file included from gen/chrome/browser/browser_jumbo_23.cc:42:
=2E/../../chrome/browser/supervised_user/supervised_user_url_filter.cc:76:3=
3: warning: ?SupervisedUserURLFilter::Contents? has a field ?SupervisedUser=
URLFilter::Contents::hostname_hashes? whose type uses the anonymous namespa=
ce=20
[-Wsubobject-linkage]
 struct SupervisedUserURLFilter::Contents {
                                 ^~~~~~~~
In file included from gen/chrome/browser/browser_jumbo_23.cc:53:
=2E/../../chrome/browser/net/trial_comparison_cert_verifier.cc: In function=
 ?void {anonymous}::SendTrialVerificationReport(void*, const net::CertVerif=
ier::RequestParams&, const net::CertVerifyResult&, const net::CertVerifyRes=
ult&)?:
=2E/../../chrome/browser/net/trial_comparison_cert_verifier.cc:85:12: warni=
ng: unused variable ?profile? [-Wunused-variable]
   Profile* profile =3D reinterpret_cast<Profile*>(profile_id);
            ^~~~~~~
[13589/19325] CXX obj/chrome/browser/browser/browser_jumbo_8.o
In file included from gen/mojo/public/mojom/base/string16.mojom-shared-inte=
rnal.h:12,
                 from gen/device/usb/public/mojom/device.mojom-shared-inter=
nal.h:12,
                 from gen/device/usb/public/mojom/chooser_service.mojom-sha=
red-internal.h:12,
                 from gen/device/usb/public/mojom/chooser_service.mojom-sha=
red.h:24,
                 from gen/device/usb/public/mojom/chooser_service.mojom.h:2=
8,
                 from ../../content/public/browser/content_browser_client.h=
:30,
                 from ../../chrome/browser/browser_process_platform_part_ba=
se.h:11,
                 from ../../chrome/browser/browser_process_platform_part.h:=
20,
                 from ../../chrome/browser/browser_process.h:21,
                 from ./../../chrome/browser/page_load_metrics/observers/co=
re_page_load_metrics_observer.cc:13,
                 from gen/chrome/browser/browser_jumbo_8.cc:8:
gen/mojo/public/mojom/base/big_buffer.mojom-shared-internal.h:30:48: warnin=
g: alignment 1 of ?mojo_base::mojom::internal::BigBuffer_Data? is less than=
 8 [-Wpacked-not-aligned]
 class COMPONENT_EXPORT(MOJO_BASE_MOJOM_SHARED) BigBuffer_Data {
                                                ^~~~~~~~~~~~~~
In file included from gen/services/network/public/mojom/network_context.moj=
om-shared-internal.h:14,
                 from gen/services/network/public/mojom/network_service.moj=
om-shared-internal.h:13,
                 from gen/services/network/public/mojom/network_service.moj=
om-shared.h:24,
                 from gen/services/network/public/mojom/network_service.moj=
om.h:28,
                 from ../../content/public/browser/content_browser_client.h=
:36,
                 from ../../chrome/browser/browser_process_platform_part_ba=
se.h:11,
                 from ../../chrome/browser/browser_process_platform_part.h:=
20,
                 from ../../chrome/browser/browser_process.h:21,
                 from ./../../chrome/browser/page_load_metrics/observers/co=
re_page_load_metrics_observer.cc:13,
                 from gen/chrome/browser/browser_jumbo_8.cc:8:
gen/mojo/public/mojom/base/values.mojom-shared-internal.h:31:48: warning: a=
lignment 1 of ?mojo_base::mojom::internal::Value_Data? is less than 8 [-Wpa=
cked-not-aligned]
 class COMPONENT_EXPORT(MOJO_BASE_MOJOM_SHARED) Value_Data {
                                                ^~~~~~~~~~
In file included from gen/services/resource_coordinator/public/mojom/memory=
_instrumentation/memory_instrumentation.mojom-shared.h:24,
                 from gen/services/resource_coordinator/public/mojom/memory=
_instrumentation/memory_instrumentation.mojom.h:28,
                 from ../../services/resource_coordinator/public/cpp/memory=
_instrumentation/coordinator.h:8,
                 from ../../services/resource_coordinator/public/cpp/memory=
_instrumentation/memory_instrumentation.h:12,
                 from ../../chrome/browser/page_load_metrics/observers/data=
_reduction_proxy_metrics_observer.h:18,
                 from ./../../chrome/browser/page_load_metrics/observers/da=
ta_reduction_proxy_metrics_observer.cc:5,
                 from gen/chrome/browser/browser_jumbo_8.cc:10:
gen/services/resource_coordinator/public/mojom/memory_instrumentation/memor=
y_instrumentation.mojom-shared-internal.h:174:66: warning: alignment 1 of ?=
memory_instrumentation::mojom::internal::RawAllocatorDumpEntryValue_Data? i=
s less=20
than 8 [-Wpacked-not-aligned]
 class COMPONENT_EXPORT(RESOURCE_COORDINATOR_PUBLIC_MOJOM_SHARED) RawAlloca=
torDumpEntryValue_Data {
                                                                  ^~~~~~~~~=
~~~~~~~~~~~~~~~~~~~~~~
In file included from gen/third_party/blink/public/platform/modules/cache_s=
torage/cache_storage.mojom-shared.h:24,
                 from gen/third_party/blink/public/platform/modules/cache_s=
torage/cache_storage.mojom.h:28,
                 from ../../content/public/browser/render_process_host.h:25,
                 from ./../../chrome/browser/page_load_metrics/observers/da=
ta_reduction_proxy_metrics_observer.cc:30,
                 from gen/chrome/browser/browser_jumbo_8.cc:10:
gen/third_party/blink/public/platform/modules/cache_storage/cache_storage.m=
ojom-shared-internal.h:92:53: warning: alignment 1 of ?blink::mojom::intern=
al::OpenResult_Data? is less than 8 [-Wpacked-not-aligned]
 class COMPONENT_EXPORT(MOJOM_SHARED_CONTENT_EXPORT) OpenResult_Data {
                                                     ^~~~~~~~~~~~~~~
gen/third_party/blink/public/platform/modules/cache_storage/cache_storage.m=
ojom-shared-internal.h:171:53: warning: alignment 1 of ?blink::mojom::inter=
nal::MatchResult_Data? is less than 8 [-Wpacked-not-aligned]
 class COMPONENT_EXPORT(MOJOM_SHARED_CONTENT_EXPORT) MatchResult_Data {
                                                     ^~~~~~~~~~~~~~~~
gen/third_party/blink/public/platform/modules/cache_storage/cache_storage.m=
ojom-shared-internal.h:250:53: warning: alignment 1 of ?blink::mojom::inter=
nal::MatchAllResult_Data? is less than 8 [-Wpacked-not-aligned]
 class COMPONENT_EXPORT(MOJOM_SHARED_CONTENT_EXPORT) MatchAllResult_Data {
                                                     ^~~~~~~~~~~~~~~~~~~
In file included from gen/third_party/blink/public/platform/modules/cache_s=
torage/cache_storage.mojom-shared.h:24,
                 from gen/third_party/blink/public/platform/modules/cache_s=
torage/cache_storage.mojom.h:28,
                 from ../../content/public/browser/render_process_host.h:25,
                 from ./../../chrome/browser/page_load_metrics/observers/da=
ta_reduction_proxy_metrics_observer.cc:30,
                 from gen/chrome/browser/browser_jumbo_8.cc:10:
gen/third_party/blink/public/platform/modules/cache_storage/cache_storage.m=
ojom-shared-internal.h:329:53: warning: alignment 1 of ?blink::mojom::inter=
nal::CacheKeysResult_Data? is less than 8 [-Wpacked-not-aligned]
 class COMPONENT_EXPORT(MOJOM_SHARED_CONTENT_EXPORT) CacheKeysResult_Data {
                                                     ^~~~~~~~~~~~~~~~~~~~
[13590/19325] CXX obj/chrome/browser/browser/browser_jumbo_5.o
In file included from gen/mojo/public/mojom/base/string16.mojom-shared-inte=
rnal.h:12,
                 from gen/device/usb/public/mojom/device.mojom-shared-inter=
nal.h:12,
                 from gen/device/usb/public/mojom/chooser_service.mojom-sha=
red-internal.h:12,
                 from gen/device/usb/public/mojom/chooser_service.mojom-sha=
red.h:24,
                 from gen/device/usb/public/mojom/chooser_service.mojom.h:2=
8,
                 from ../../content/public/browser/content_browser_client.h=
:30,
                 from ../../chrome/browser/profiles/profile.h:18,
                 from ../../chrome/browser/google/google_search_domain_mixi=
ng_metrics_emitter_factory.h:11,
                 from ./../../chrome/browser/google/google_search_domain_mi=
xing_metrics_emitter_factory.cc:5,
                 from gen/chrome/browser/browser_jumbo_5.cc:5:
gen/mojo/public/mojom/base/big_buffer.mojom-shared-internal.h:30:48: warnin=
g: alignment 1 of ?mojo_base::mojom::internal::BigBuffer_Data? is less than=
 8 [-Wpacked-not-aligned]
 class COMPONENT_EXPORT(MOJO_BASE_MOJOM_SHARED) BigBuffer_Data {
                                                ^~~~~~~~~~~~~~
In file included from gen/services/network/public/mojom/network_context.moj=
om-shared-internal.h:14,
                 from gen/services/network/public/mojom/network_service.moj=
om-shared-internal.h:13,
                 from gen/services/network/public/mojom/network_service.moj=
om-shared.h:24,
                 from gen/services/network/public/mojom/network_service.moj=
om.h:28,
                 from ../../content/public/browser/content_browser_client.h=
:36,
                 from ../../chrome/browser/profiles/profile.h:18,
                 from ../../chrome/browser/google/google_search_domain_mixi=
ng_metrics_emitter_factory.h:11,
                 from ./../../chrome/browser/google/google_search_domain_mi=
xing_metrics_emitter_factory.cc:5,
                 from gen/chrome/browser/browser_jumbo_5.cc:5:
gen/mojo/public/mojom/base/values.mojom-shared-internal.h:31:48: warning: a=
lignment 1 of ?mojo_base::mojom::internal::Value_Data? is less than 8 [-Wpa=
cked-not-aligned]
 class COMPONENT_EXPORT(MOJO_BASE_MOJOM_SHARED) Value_Data {
                                                ^~~~~~~~~~
In file included from gen/third_party/blink/public/platform/modules/cache_s=
torage/cache_storage.mojom-shared.h:24,
                 from gen/third_party/blink/public/platform/modules/cache_s=
torage/cache_storage.mojom.h:28,
                 from ../../content/public/browser/render_process_host.h:25,
                 from ../../content/public/browser/network_quality_observer=
_factory.h:14,
                 from ./../../chrome/browser/io_thread.cc:60,
                 from gen/chrome/browser/browser_jumbo_5.cc:31:
gen/third_party/blink/public/platform/modules/cache_storage/cache_storage.m=
ojom-shared-internal.h:92:53: warning: alignment 1 of ?blink::mojom::intern=
al::OpenResult_Data? is less than 8 [-Wpacked-not-aligned]
 class COMPONENT_EXPORT(MOJOM_SHARED_CONTENT_EXPORT) OpenResult_Data {
                                                     ^~~~~~~~~~~~~~~
gen/third_party/blink/public/platform/modules/cache_storage/cache_storage.m=
ojom-shared-internal.h:171:53: warning: alignment 1 of ?blink::mojom::inter=
nal::MatchResult_Data? is less than 8 [-Wpacked-not-aligned]
 class COMPONENT_EXPORT(MOJOM_SHARED_CONTENT_EXPORT) MatchResult_Data {
                                                     ^~~~~~~~~~~~~~~~
gen/third_party/blink/public/platform/modules/cache_storage/cache_storage.m=
ojom-shared-internal.h:250:53: warning: alignment 1 of ?blink::mojom::inter=
nal::MatchAllResult_Data? is less than 8 [-Wpacked-not-aligned]
 class COMPONENT_EXPORT(MOJOM_SHARED_CONTENT_EXPORT) MatchAllResult_Data {
                                                     ^~~~~~~~~~~~~~~~~~~
In file included from gen/third_party/blink/public/platform/modules/cache_s=
torage/cache_storage.mojom-shared.h:24,
                 from gen/third_party/blink/public/platform/modules/cache_s=
torage/cache_storage.mojom.h:28,
                 from ../../content/public/browser/render_process_host.h:25,
                 from ../../content/public/browser/network_quality_observer=
_factory.h:14,
                 from ./../../chrome/browser/io_thread.cc:60,
                 from gen/chrome/browser/browser_jumbo_5.cc:31:
gen/third_party/blink/public/platform/modules/cache_storage/cache_storage.m=
ojom-shared-internal.h:329:53: warning: alignment 1 of ?blink::mojom::inter=
nal::CacheKeysResult_Data? is less than 8 [-Wpacked-not-aligned]
 class COMPONENT_EXPORT(MOJOM_SHARED_CONTENT_EXPORT) CacheKeysResult_Data {
                                                     ^~~~~~~~~~~~~~~~~~~~
In file included from gen/third_party/blink/public/platform/modules/present=
ation/presentation.mojom-shared.h:24,
                 from gen/third_party/blink/public/platform/modules/present=
ation/presentation.mojom.h:28,
                 from ../../content/public/browser/presentation_service_del=
egate.h:17,
                 from ../../chrome/browser/media/router/media_router.h:26,
                 from ./../../chrome/browser/media/cast_remoting_connector.=
cc:16,
                 from gen/chrome/browser/browser_jumbo_5.cc:39:
gen/third_party/blink/public/platform/modules/presentation/presentation.moj=
om-shared-internal.h:137:53: warning: alignment 1 of ?blink::mojom::interna=
l::PresentationConnectionMessage_Data? is less than 8 [-Wpacked-not-aligned]
 class COMPONENT_EXPORT(MOJOM_SHARED_CONTENT_EXPORT) PresentationConnection=
Message_Data {
                                                     ^~~~~~~~~~~~~~~~~~~~~~=
~~~~~~~~~~~~
ninja: build stopped: subcommand failed.
Backtrace:
           4 (primitive-load "/gnu/store/zic2hlrw2j88fsw8b731kmrk1d5?")
In ice-9/eval.scm:
   191:35  3 (_ _)
In srfi/srfi-1.scm:
    640:9  2 (for-each #<procedure b98ee0 at /gnu/store/f95ghy8mx00?> ?)
In /gnu/store/f95ghy8mx00fc22nrvswvnpqlfdkf2nk-module-import/guix/build/gnu=
-build-system.scm:
   799:31  1 (_ _)
In /gnu/store/f95ghy8mx00fc22nrvswvnpqlfdkf2nk-module-import/guix/build/uti=
ls.scm:
    616:6  0 (invoke _ . _)

/gnu/store/f95ghy8mx00fc22nrvswvnpqlfdkf2nk-module-import/guix/build/utils.=
scm:616:6: In procedure invoke:
Throw to key `srfi-34' with args `(#<condition &invoke-error [program: "nin=
ja" arguments: ("-C" "out/Release" "-j" "4" "chrome") exit-status: 1 term-s=
ignal: #f stop-signal: #f] d24d80>)'.
builder for `/gnu/store/nlxwmgqigbysmjq3j9vx1rk7kdqc74zp-chromium-68.0.3440=
=2E84.drv' failed with exit code 1
@ build-failed /gnu/store/nlxwmgqigbysmjq3j9vx1rk7kdqc74zp-chromium-68.0.34=
40.84.drv - 1 builder for `/gnu/store/nlxwmgqigbysmjq3j9vx1rk7kdqc74zp-chro=
mium-68.0.3440.84.drv' failed with exit code 1
derivation '/gnu/store/nlxwmgqigbysmjq3j9vx1rk7kdqc74zp-chromium-68.0.3440.=
84.drv' offloaded to '192.168.1.198' failed: build of `/gnu/store/nlxwmgqig=
bysmjq3j9vx1rk7kdqc74zp-chromium-68.0.3440.84.drv' failed
@ build-failed /gnu/store/nlxwmgqigbysmjq3j9vx1rk7kdqc74zp-chromium-68.0.34=
40.84.drv - 1 builder for `/gnu/store/nlxwmgqigbysmjq3j9vx1rk7kdqc74zp-chro=
mium-68.0.3440.84.drv' failed with exit code 100
guix build: error: build failed: build of `/gnu/store/nlxwmgqigbysmjq3j9vx1=
rk7kdqc74zp-chromium-68.0.3440.84.drv' failed


--avrxomh2xkp23zzn--

--ytlnuqtgu6hgpflx
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQIzBAABCgAdFiEEqIyK3RKYKNfqwC5S4i+bv+40hYgFAltnjwgACgkQ4i+bv+40
hYjY1RAAr9vNjO5Np5VHwNffptodsFeE9pT3urEtdi18uDA9Cc0Pa4iekbHfj9nL
+6Yvu+/kcF8njlXu/GvJNy4odexb2O8JSvAHF3DG0vkcrNxpw71IddVPAlvOW6gu
U600x/RR96RvekqSjTHI907Tq1uM1kLy5WNuW7zSf3cVc5PsxBFQgyS1ISpEmpri
S+HtsmnPJgAB6wqci4BWZLjBSuwT6Oxkb6Jiyt72rH4xqo8SiGyZjvmzuhwOlI+e
HEAxPdj6ZTlGSBzutUOUHWUfCf7MivpZJec/4IuyX2g6mGrTcZsLvEKB4aFMxW0N
3wLNEFd9QP7e1S/0K6HNBMo8T5+fGslBrsF9Yh35JP6i3Un1aXXZ84HXRyB7HHyD
gmx/iQvpW68XwV3xcjahhvMGn2+6OUXMYxeOI7PTuRlT7k7d7qxWs4duw6qF4TRk
yqKJWoiXjTe4JwgDUh5RmeApn/gRw1S7F/0t3SmSLNNnYpyZgbVi/xmjw8/lwttN
Mpt7WjyYk++0M361OvnJDK/nui/tlR3LdFiXMqFUpweGLzH/ZJHwSAWGG8I6eMMU
84HNt35xiTkP3OUeT+FAHVHwNiZAUdeh0aCHANLCyQ6lgXV8idLTjd0GP+7FyJrv
x7erFvIZSDHwErx5UKjDCNOETGTT02iHsAVLAGKpJG8yY475WzE=
=8Dz1
-----END PGP SIGNATURE-----

--ytlnuqtgu6hgpflx--




Information forwarded to guix-patches@HIDDEN:
bug#28004; Package guix-patches. Full text available.

Message received at 28004 <at> debbugs.gnu.org:


Received: (at 28004) by debbugs.gnu.org; 5 Aug 2018 20:31:40 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sun Aug 05 16:31:40 2018
Received: from localhost ([127.0.0.1]:42076 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1fmPgi-0004oP-Hn
	for submit <at> debbugs.gnu.org; Sun, 05 Aug 2018 16:31:40 -0400
Received: from static.195.114.201.195.clients.your-server.de
 ([195.201.114.195]:48430 helo=conspiracy.of.n0.is)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <ng0@HIDDEN>) id 1fmPgg-0004oF-EC
 for 28004 <at> debbugs.gnu.org; Sun, 05 Aug 2018 16:31:39 -0400
Received: by conspiracy.of.n0.is (OpenSMTPD) with ESMTPSA id ac266d14
 (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256:NO); 
 Sun, 5 Aug 2018 20:31:36 +0000 (UTC)
Date: Sun, 5 Aug 2018 20:32:22 +0000
From: ng0 <ng0@HIDDEN>
To: Marius Bakke <mbakke@HIDDEN>
Subject: Re: [bug#28004] Chromium
Message-ID: <20180805203222.iyvpw5wansinz6tb@abyayala>
References: <87muzvv7ku.fsf@HIDDEN> <20180226234144.032af030@alma-ubu>
 <87woyxt3nz.fsf@HIDDEN>
 <20180316173044.dctlydfij7smndxd@abyayala>
 <87h8pfc3tr.fsf@HIDDEN>
 <20180316175225.7jf4k2qaciyxnepp@abyayala>
 <20180725080800.stqijlny6om6powe@abyayala>
 <87tvo9c6cs.fsf@HIDDEN>
 <20180805161802.bif4ax5feqloxayz@abyayala>
 <87lg9kd61u.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: multipart/signed; micalg=pgp-sha512;
 protocol="application/pgp-signature"; boundary="el2ejmdr5osmi7mb"
Content-Disposition: inline
In-Reply-To: <87lg9kd61u.fsf@HIDDEN>
X-Spam-Score: -0.0 (/)
X-Debbugs-Envelope-To: 28004
Cc: 28004 <at> debbugs.gnu.org, ng0 <ng0@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)


--el2ejmdr5osmi7mb
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

Marius Bakke transcribed 3.2K bytes:
> ng0 <ng0@HIDDEN> writes:
>=20
> > Once we merge this into master, can we document the update procedure?
> > Or even better, write an update script if possible? For me it was 40%
> > hit everything which doesn't move and take what's left over and 60%
> > reading. I understand the code, but some people might want an
> > explanation for how it's decided which folder gets to stay.
>=20
> The "preserved-club" are simply third_party directories that are
> necessary for the build.  Removing any single one will cause the build
> to fail (in theory, there might be outdated entries..).
>=20
> It's difficult to automate because you don't know what's needed until
> the build process starts and fails because of some missing dependency.

Hm okay.
Yes, I noticed. But they usually fail very early, so it's just 4 - 20
minutes waiting depending on your harddrive and network speed.

> > Not related to this section, but: NixOS has a "sandbox" output for Chro=
mium
> > which "contains the sandboxed wrapper" of Chromium. Maybe it requires s=
omething
> > Nix/NixOS specific, maybe we can add that.
>=20
> I guess that's for the SUID sandbox binary.  I haven't had a reason to
> build that because the user namespace sandbox works just fine.  Perhaps
> it's useful for distributions that don't have user namespaces enabled?

Maybe, it's worth investigating. I haven't looked at it very much.

>=20
> >> +                 ;; TODO: Install icons from "../../chrome/app/themes=
" into
> >> +                 ;; "out/share/icons/hicolor/$size".
> >
> > I have more icons here in my definition, the whole section looked like.=
=2E.
> >
> >> +                 (install-file
> >> +                  "product_logo_48.png"
> >> +                  (string-append out "/share/icons/48x48/chromium.png=
"))
> >
> > this:
> >
> > +                 ;; XXX: What about ../../chrome/app/theme/chromium/li=
nux/?
> > +                 (for-each
> > +                  (lambda (file)
> > +                    (let* ((size (string-filter char-numeric? file))
> > +                           (icons (string-append out "/share/icons/hic=
olor/"
> > +                                                 size "x" size "/apps"=
)))
> > +                      (mkdir-p icons)
> > +                      (copy-file file (string-append icons "/chromium.=
png"))))
> > +                  '("../../chrome/app/theme/chromium/product_logo_128.=
png"
> > +                    "../../chrome/app/theme/chromium/product_logo_22.p=
ng"
> > +                    "../../chrome/app/theme/chromium/product_logo_22_m=
ono.png"
> > +                    "../../chrome/app/theme/chromium/product_logo_24.p=
ng"
> > +                    "../../chrome/app/theme/chromium/product_logo_256.=
png"
> > +                    "../../chrome/app/theme/chromium/product_logo_48.p=
ng"
> > +                    "../../chrome/app/theme/chromium/product_logo_64.p=
ng"))
>=20
> Nice.  Now the next step is to generate the latter list, maybe with
> find-files?
>=20
> Thanks for the feedback!

Thanks for your continued work on this monster ;)

--el2ejmdr5osmi7mb
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQIzBAABCgAdFiEEqIyK3RKYKNfqwC5S4i+bv+40hYgFAltnXtYACgkQ4i+bv+40
hYgK7g//aLZYqsqZBhgj4yyB3tY3LDqEmyBeRB9Tvw2G+X5ec9nYoU/W8c0u7vFh
Za6xUuIa2DtKeyxq4++8+nA6AaX0ajwg6NpmxepRqgSJaCA9GrnPFHWG09vZ7Yjr
K6VljcKwacTw9ABezE21szDx1Rk8OSvncgO64L4VVuee9Q/TBNUWpnEXJuvipKXL
drSp+wbJMeIOmHoy/HzR/bleJpVu/JKxL5gyCarcIKfbqIwjNb6JG4RqSUt9i4aP
M1ofQLS/ITTLOJo4OoE64KyqvgC3F3XP45oaP9iC4JOBefeNugGQYWRmJNXaHtkC
dVnacmhI5zqdKUj2lROq7jEY/YWKGx0g+Y5qp99DLUUHLCuUfp29pMQniwkBKjcU
1PJsPUl1eTtoGtpmfXed1eimgF0otiGGaVSSnNP4FbWOHLBF5FL5Qq2t1ag/wFck
W6HlJ/3TL4Ynf7m157nDz8FNGTEZWbqtzh3gqGaHjcJznnrh2agNngGP5MkgZgqV
uEooahQG27kKWIVzG5Q+rTd04r5AGWJnJPlfRW4aJrawxKRFDrEpNaLbUsl9c3Bf
sMlOuPtqMub9rl/FQRABtHN0E+Q+BPVZVr3Dtf1oqk7m69ZVkdTX4EokHt6NAjoX
4wPMOfEwqmdK6woZG1kUTFxXd8tXBaSsIbT5lgYVnSUsD/BfFHQ=
=EkBc
-----END PGP SIGNATURE-----

--el2ejmdr5osmi7mb--




Information forwarded to guix-patches@HIDDEN:
bug#28004; Package guix-patches. Full text available.

Message received at 28004 <at> debbugs.gnu.org:


Received: (at 28004) by debbugs.gnu.org; 5 Aug 2018 18:25:41 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sun Aug 05 14:25:41 2018
Received: from localhost ([127.0.0.1]:42058 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1fmNil-0001lq-Ci
	for submit <at> debbugs.gnu.org; Sun, 05 Aug 2018 14:25:41 -0400
Received: from out1-smtp.messagingengine.com ([66.111.4.25]:59717)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <mbakke@HIDDEN>) id 1fmNii-0001lh-R8
 for 28004 <at> debbugs.gnu.org; Sun, 05 Aug 2018 14:25:37 -0400
Received: from compute5.internal (compute5.nyi.internal [10.202.2.45])
 by mailout.nyi.internal (Postfix) with ESMTP id 818A720FAD;
 Sun,  5 Aug 2018 14:25:36 -0400 (EDT)
Received: from mailfrontend2 ([10.202.2.163])
 by compute5.internal (MEProxy); Sun, 05 Aug 2018 14:25:36 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=fastmail.com; h=
 cc:content-type:date:from:in-reply-to:message-id:mime-version
 :references:subject:to:x-me-sender:x-me-sender:x-sasl-enc; s=
 fm3; bh=ucSVRGK+/ynqxHS6EIuemoEATdV45H3vBFzNDSsynqU=; b=SgkXwZf0
 gMErlMpWqFkwi6N5wL8SrshVU2eSCuX/uVS+Cfnw0LDUmfyG8jCR5aYROjAiRjFV
 n07Tx7K1wY8uKa96KSwOkmKw7mWEiWJHO1tYyIJOuz2xzYUUCs2ozQZoDWoZUGOP
 2tshEKsyIRxiR92UO/SXxISFSzzCmU+L46B0GqQXiQlBDT6e2BKPN5zBzA7t7ZS/
 50w/T+FC9j4smSlo74D9jzgDC3j0XIcsvzkR0WC8MqJRQN0TrTttaBPH/Aow7icr
 jJBoF/p9AQ1eM96wvfMdt91Fkm2qVjR2NtoRSfOvVM3ouhxEBdLVN27NKOsRYnE0
 jgNnPKp/HXkplA==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
 messagingengine.com; h=cc:content-type:date:from:in-reply-to
 :message-id:mime-version:references:subject:to:x-me-sender
 :x-me-sender:x-sasl-enc; s=fm3; bh=ucSVRGK+/ynqxHS6EIuemoEATdV45
 H3vBFzNDSsynqU=; b=a3bSnHWXL9Eb/WRYFaEOyUfNhmd1MzAJr8tXCb461mxl0
 ojsLOmPv14DhN75PjQTgWyj9rFW/JKZ8mEKzxfL+bFYmwNCJEiBu2r+uhzf0LRft
 OZWTL2OKsjqVkbvH87CPoEN0WZ6GGzKGVeqLt3HeEsvRDAAAEB190ngF8pueGL6x
 2BA8Jsr6wD2LTB/P8KHrIRULFkEFf1VvqQYNXYPwk1mFR2vTaX7BcZWYHhp0Vkkx
 PKZQNu3mLNyjl/iqz1Do9nLALOwuctUUxZscl8zPTs5tOcbuqko2Dhr4CqCchokK
 RZoIgVHjzZKRgQFYCz+F+ZRc8a9Sf4D3XOHBieOTA==
X-ME-Proxy: <xmx:IEFnWwP6dIBsTrmZfsz-c51DRsuC9eR7MuJE40oEg1O3HXYR8KDSSw>
 <xmx:IEFnW6d9FyhGP7E6lgEMsP9xcK8JXFNE3RDfrvqDsVQWnXZ70zr8hA>
 <xmx:IEFnW6GBpAqz2gz-Zkdubc5xRx09Ac7t9PxVizoPMLli2jcx0BRYTw>
 <xmx:IEFnW2T7he0ifA0sM9no6yOb3ufuOkIXxbU8pnSJoydmHMEgifEnnA>
 <xmx:IEFnW01-n1O5Jlkx50rsyEQTipu-_gIa3wANpR96uwuHNioKDX5u3Q>
 <xmx:IEFnW-1UQMPlJ2fVZipdUFnlsPlumY2eH7ry_Z8ZERgqy8rnwnjtuw>
X-ME-Sender: <xms:IEFnW4Q2NiaZGzPM0c0DSTyQEwfQxxY5m68UsAFY82u59A-3CW7VYg>
Received: from localhost (95.92-221-151.customer.lyse.net [92.221.151.95])
 by mail.messagingengine.com (Postfix) with ESMTPA id BB11810255;
 Sun,  5 Aug 2018 14:25:35 -0400 (EDT)
From: Marius Bakke <mbakke@HIDDEN>
To: ng0 <ng0@HIDDEN>
Subject: Re: [bug#28004] Chromium
In-Reply-To: <20180805161802.bif4ax5feqloxayz@abyayala>
References: <87vaejvclc.fsf@HIDDEN>
 <20180226200133.zsnahblbgzovrtmu@abyayala> <87muzvv7ku.fsf@HIDDEN>
 <20180226234144.032af030@alma-ubu> <87woyxt3nz.fsf@HIDDEN>
 <20180316173044.dctlydfij7smndxd@abyayala> <87h8pfc3tr.fsf@HIDDEN>
 <20180316175225.7jf4k2qaciyxnepp@abyayala>
 <20180725080800.stqijlny6om6powe@abyayala> <87tvo9c6cs.fsf@HIDDEN>
 <20180805161802.bif4ax5feqloxayz@abyayala>
User-Agent: Notmuch/0.27 (https://notmuchmail.org) Emacs/26.1
 (x86_64-pc-linux-gnu)
Date: Sun, 05 Aug 2018 20:25:33 +0200
Message-ID: <87lg9kd61u.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: multipart/signed; boundary="=-=-=";
 micalg=pgp-sha512; protocol="application/pgp-signature"
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 28004
Cc: 28004 <at> debbugs.gnu.org, ng0 <ng0@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

--=-=-=
Content-Type: text/plain

ng0 <ng0@HIDDEN> writes:

> Once we merge this into master, can we document the update procedure?
> Or even better, write an update script if possible? For me it was 40%
> hit everything which doesn't move and take what's left over and 60%
> reading. I understand the code, but some people might want an
> explanation for how it's decided which folder gets to stay.

The "preserved-club" are simply third_party directories that are
necessary for the build.  Removing any single one will cause the build
to fail (in theory, there might be outdated entries..).

It's difficult to automate because you don't know what's needed until
the build process starts and fails because of some missing dependency.

> Not related to this section, but: NixOS has a "sandbox" output for Chromium
> which "contains the sandboxed wrapper" of Chromium. Maybe it requires something
> Nix/NixOS specific, maybe we can add that.

I guess that's for the SUID sandbox binary.  I haven't had a reason to
build that because the user namespace sandbox works just fine.  Perhaps
it's useful for distributions that don't have user namespaces enabled?

>> +                 ;; TODO: Install icons from "../../chrome/app/themes" into
>> +                 ;; "out/share/icons/hicolor/$size".
>
> I have more icons here in my definition, the whole section looked like...
>
>> +                 (install-file
>> +                  "product_logo_48.png"
>> +                  (string-append out "/share/icons/48x48/chromium.png"))
>
> this:
>
> +                 ;; XXX: What about ../../chrome/app/theme/chromium/linux/?
> +                 (for-each
> +                  (lambda (file)
> +                    (let* ((size (string-filter char-numeric? file))
> +                           (icons (string-append out "/share/icons/hicolor/"
> +                                                 size "x" size "/apps")))
> +                      (mkdir-p icons)
> +                      (copy-file file (string-append icons "/chromium.png"))))
> +                  '("../../chrome/app/theme/chromium/product_logo_128.png"
> +                    "../../chrome/app/theme/chromium/product_logo_22.png"
> +                    "../../chrome/app/theme/chromium/product_logo_22_mono.png"
> +                    "../../chrome/app/theme/chromium/product_logo_24.png"
> +                    "../../chrome/app/theme/chromium/product_logo_256.png"
> +                    "../../chrome/app/theme/chromium/product_logo_48.png"
> +                    "../../chrome/app/theme/chromium/product_logo_64.png"))

Nice.  Now the next step is to generate the latter list, maybe with
find-files?

Thanks for the feedback!

--=-=-=
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQEzBAEBCgAdFiEEu7At3yzq9qgNHeZDoqBt8qM6VPoFAltnQR0ACgkQoqBt8qM6
VPp9YwgAkNFCcTpNOmo0VwqqSUCSYVTZ8e+v0EaWXgWNkOGvvh4d6nA+IUnEin2F
W23JgtrtiFcHvj6hr6U4XiBkK4yumyv6WGCv1xRAXHAwB6mGUhRyQfr3n59tVHDD
IlAQpNgH0JJ0NxCv/ORieJmsW+/SexBui19aEVxPXiS1Z7sUfBVljzKtpZ3NVDbR
XXOpqiesekw88S2oS/Rh5gSlTHUkw2fEgJw9xYIB89FGL5asEGladg42mbmRQblI
Cb3SdqhXr0WsPfmonSgfCTWizLfgBIgTYAHNXwPjUOdeRGfciUbkQtO/AGvdwRhQ
v6ajiaK3FJcIPx94k2QBXez3KXUaOA==
=6bjy
-----END PGP SIGNATURE-----
--=-=-=--




Information forwarded to guix-patches@HIDDEN:
bug#28004; Package guix-patches. Full text available.

Message received at 28004 <at> debbugs.gnu.org:


Received: (at 28004) by debbugs.gnu.org; 5 Aug 2018 16:17:30 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sun Aug 05 12:17:30 2018
Received: from localhost ([127.0.0.1]:42028 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1fmLic-00072D-J2
	for submit <at> debbugs.gnu.org; Sun, 05 Aug 2018 12:17:30 -0400
Received: from static.195.114.201.195.clients.your-server.de
 ([195.201.114.195]:47370 helo=conspiracy.of.n0.is)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <ng0@HIDDEN>) id 1fmLiZ-000723-7N
 for 28004 <at> debbugs.gnu.org; Sun, 05 Aug 2018 12:17:21 -0400
Received: by conspiracy.of.n0.is (OpenSMTPD) with ESMTPSA id 82773ab2
 (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256:NO); 
 Sun, 5 Aug 2018 16:17:16 +0000 (UTC)
Date: Sun, 5 Aug 2018 16:18:02 +0000
From: ng0 <ng0@HIDDEN>
To: Marius Bakke <mbakke@HIDDEN>
Subject: Re: [bug#28004] Chromium
Message-ID: <20180805161802.bif4ax5feqloxayz@abyayala>
References: <87vaejvclc.fsf@HIDDEN>
 <20180226200133.zsnahblbgzovrtmu@abyayala>
 <87muzvv7ku.fsf@HIDDEN> <20180226234144.032af030@alma-ubu>
 <87woyxt3nz.fsf@HIDDEN>
 <20180316173044.dctlydfij7smndxd@abyayala>
 <87h8pfc3tr.fsf@HIDDEN>
 <20180316175225.7jf4k2qaciyxnepp@abyayala>
 <20180725080800.stqijlny6om6powe@abyayala>
 <87tvo9c6cs.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: multipart/signed; micalg=pgp-sha512;
 protocol="application/pgp-signature"; boundary="4ntk4dcfcdzb4lwe"
Content-Disposition: inline
In-Reply-To: <87tvo9c6cs.fsf@HIDDEN>
X-Spam-Score: -0.0 (/)
X-Debbugs-Envelope-To: 28004
Cc: 28004 <at> debbugs.gnu.org, ng0 <ng0@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)


--4ntk4dcfcdzb4lwe
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

Marius Bakke transcribed 47K bytes:
> ng0 <ng0@HIDDEN> writes:
>=20
> > Hi Marius,
> >
> > any chance you had the time to update to a more recent version release
> > of Chromium?
>=20
> Good news!  Please find Chromium 68 attached.

Cool :) I was halfway through updating chromium myself before
you've sent this.

> There are *a lot* of changes in this version.  Some highlights:
>=20
> * It's using GCC 8 instead of Clang.
> * A bug in the source scrubber has been fixed, so .zip and .jar files
>   are now purged even if the parent directory is preserved.  Currently
>   we're reducing the uncompressed size from 4.3 GiB to 2.1 GiB.
> * External patches are now in an easier to manage format.
> * Upstream have discontinued the libvpx "experiment"; but still
>   require an unreleased version.
> * We're installing a "master_preferences" file, which allows us to
>   easily add defaults for new profiles.
> * All the various knobs for the build system have been moved to
>   #:configure-flags.  This should make it easier to create custom
>   Chromium variants based on this package (qtwebkit?).
> * The 'configure' phase will now print *all* supported flags for
>   convenience (I usually did this manually every now and then).
> * I've started cherry-picking patches from Ungoogled-Chromium in the
>   quest to reduce data transmission to Google.
>=20
> TODO:
>=20
> * There is still some data transmitted when starting the browser for the
>   first time.  It seems related to the "domain_reliability" component.
> * Remove remaining "Web Store" links.  Currently I've only found it in
>   settings, under "accessibility" and "fonts".
> * Opening settings transmits a bunch of data, the next version will
>   include the 'disable-translation-lang-fetch' patch from Inox.
> * PDFium is built, but does not seem to work (the 'install' phase
>   probably needs tweaking).  Might just disable it instead.

NixOS' nixpkgs has a patch for making their chromium build to take
packaged extensions and addons. This is not everything which is
required to make it work, but given enough time to think it through it
should be doable.

> As always, feedback very welcome.  Enjoy!
>=20

> From a4e343c57d70344dd4cef51ccd37c2650c746b46 Mon Sep 17 00:00:00 2001
> From: Marius Bakke <mbakke@HIDDEN>
> Date: Wed, 12 Oct 2016 17:25:05 +0100
> Subject: [PATCH] gnu: Add chromium.
>=20
> * gnu/packages/chromium.scm, gnu/packages/chromium-master-preferences.jso=
n,
> gnu/packages/patches/chromium-gcc-unique-ptr.patch,
> gnu/packages/patches/chromium-remove-default-history.patch: New files.
> * gnu/local.mk: Record it.
> ---
>  gnu/local.mk                                  |   3 +
>  gnu/packages/chromium-master-preferences.json |  26 +
>  gnu/packages/chromium.scm                     | 829 ++++++++++++++++++
>  .../patches/chromium-gcc-unique-ptr.patch     |  33 +
>  .../chromium-remove-default-history.patch     |  13 +
>  5 files changed, 904 insertions(+)
>  create mode 100644 gnu/packages/chromium-master-preferences.json
>  create mode 100644 gnu/packages/chromium.scm
>  create mode 100644 gnu/packages/patches/chromium-gcc-unique-ptr.patch
>  create mode 100644 gnu/packages/patches/chromium-remove-default-history.=
patch
>=20
> diff --git a/gnu/local.mk b/gnu/local.mk
> index 4ed341df8..320f27c44 100644
> --- a/gnu/local.mk
> +++ b/gnu/local.mk
> @@ -95,6 +95,7 @@ GNU_SYSTEM_MODULES =3D				\
>    %D%/packages/check.scm			\
>    %D%/packages/chemistry.scm			\
>    %D%/packages/chez.scm				\
> +  %D%/packages/chromium.scm			\
>    %D%/packages/ci.scm				\
>    %D%/packages/cinnamon.scm			\
>    %D%/packages/cluster.scm			\
> @@ -603,6 +604,8 @@ dist_patch_DATA =3D						\
>    %D%/packages/patches/ceph-skip-collect-sys-info-test.patch	\
>    %D%/packages/patches/ceph-skip-unittest_blockdev.patch	\
>    %D%/packages/patches/chmlib-inttypes.patch			\
> +  %D%/packages/patches/chromium-gcc-unique-ptr.patch		\
> +  %D%/packages/patches/chromium-remove-default-history.patch	\
>    %D%/packages/patches/clang-3.5-libc-search-path.patch		\
>    %D%/packages/patches/clang-3.8-libc-search-path.patch		\
>    %D%/packages/patches/clang-6.0-libc-search-path.patch		\
> diff --git a/gnu/packages/chromium-master-preferences.json b/gnu/packages=
/chromium-master-preferences.json
> new file mode 100644
> index 000000000..0caa7cc4c
> --- /dev/null
> +++ b/gnu/packages/chromium-master-preferences.json
> @@ -0,0 +1,26 @@
> +{
> +  "distribution": {
> +     "import_bookmarks": false,
> +     "make_chrome_default": false,
> +     "make_chrome_default_for_user": false,
> +     "verbose_logging": true,
> +     "skip_first_run_ui": true,
> +     "suppress_first_run_default_browser_prompt": true
> +  },
> +  "browser": {
> +     "has_seen_welcome_page" : true,
> +     "check_default_browser" : false
> +  },
> +  "dns_prefetching": {
> +    "enabled": false
> +  },
> +  "alternate_error_pages": {
> +    "enabled": false
> +  },
> +  "hardware": {
> +    "audio_capture_enabled": false
> +  },
> +  "default_apps": "noinstall",
> +  "hide_web_store_icon": true,
> +  "homepage": "https://www.gnu.org/software/guix"
> +}
> diff --git a/gnu/packages/chromium.scm b/gnu/packages/chromium.scm
> new file mode 100644
> index 000000000..2fc40a0d2
> --- /dev/null
> +++ b/gnu/packages/chromium.scm
> @@ -0,0 +1,829 @@
> +;;; GNU Guix --- Functional package management for GNU
> +;;; Copyright =C2=A9 2016, 2017, 2018 Marius Bakke <mbakke@HIDDEN>
> +;;;
> +;;; This file is part of GNU Guix.
> +;;;
> +;;; GNU Guix is free software; you can redistribute it and/or modify it
> +;;; under the terms of the GNU General Public License as published by
> +;;; the Free Software Foundation; either version 3 of the License, or (at
> +;;; your option) any later version.
> +;;;
> +;;; GNU Guix is distributed in the hope that it will be useful, but
> +;;; WITHOUT ANY WARRANTY; without even the implied warranty of
> +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
> +;;; GNU General Public License for more details.
> +;;;
> +;;; You should have received a copy of the GNU General Public License
> +;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
> +
> +(define-module (gnu packages chromium)
> +  #:use-module ((guix licenses) #:prefix license:)
> +  #:use-module (guix packages)
> +  #:use-module (guix gexp)
> +  #:use-module (guix download)
> +  #:use-module (guix git-download)
> +  #:use-module (guix utils)
> +  #:use-module (guix build-system gnu)
> +  #:use-module (gnu packages)
> +  #:use-module (gnu packages assembly)
> +  #:use-module (gnu packages base)
> +  #:use-module (gnu packages bison)
> +  #:use-module (gnu packages compression)
> +  #:use-module (gnu packages cups)
> +  #:use-module (gnu packages curl)
> +  #:use-module (gnu packages fontutils)
> +  #:use-module (gnu packages gcc)
> +  #:use-module (gnu packages ghostscript)
> +  #:use-module (gnu packages gl)
> +  #:use-module (gnu packages glib)
> +  #:use-module (gnu packages gnome)
> +  #:use-module (gnu packages gnuzilla)
> +  #:use-module (gnu packages gperf)
> +  #:use-module (gnu packages gtk)
> +  #:use-module (gnu packages icu4c)
> +  #:use-module (gnu packages image)
> +  #:use-module (gnu packages libevent)
> +  #:use-module (gnu packages libffi)
> +  #:use-module (gnu packages linux)
> +  #:use-module (gnu packages kerberos)
> +  #:use-module (gnu packages ninja)
> +  #:use-module (gnu packages node)
> +  #:use-module (gnu packages pciutils)
> +  #:use-module (gnu packages pkg-config)
> +  #:use-module (gnu packages pulseaudio)
> +  #:use-module (gnu packages python)
> +  #:use-module (gnu packages python-web)
> +  #:use-module (gnu packages regex)
> +  #:use-module (gnu packages serialization)
> +  #:use-module (gnu packages speech)
> +  #:use-module (gnu packages tls)
> +  #:use-module (gnu packages valgrind)
> +  #:use-module (gnu packages video)
> +  #:use-module (gnu packages xiph)
> +  #:use-module (gnu packages xml)
> +  #:use-module (gnu packages xdisorg)
> +  #:use-module (gnu packages xorg))
> +
> +(define (chromium-patch-file-name pathspec)
> +  (let ((patch-name (basename pathspec)))
> +    (if (string-prefix? "chromium-" patch-name)
> +        patch-name
> +        (string-append "chromium-" patch-name))))
> +
> +;; https://salsa.debian.org/chromium-team/chromium/tree/master/debian/pa=
tches
> +(define (debian-patch pathspec revision hash)
> +  (origin
> +    (method url-fetch)
> +    (uri (string-append
> +          "https://salsa.debian.org/chromium-team/chromium/raw/"
> +          revision "/debian/patches/" pathspec))
> +    (sha256 (base32 hash))
> +    (file-name (chromium-patch-file-name pathspec))))
> +
> +;; https://gitweb.gentoo.org/repo/gentoo.git/tree/www-client/chromium/fi=
les
> +(define (gentoo-patch pathspec revision hash)
> +  (origin
> +    (method url-fetch)
> +    (uri (string-append
> +          "https://gitweb.gentoo.org/repo/gentoo.git/plain/www-client"
> +          "/chromium/files/" pathspec "?id=3D" revision))
> +    (sha256 (base32 hash))
> +    (file-name (chromium-patch-file-name pathspec))))
> +
> +;; https://github.com/gcarq/inox-patchset
> +(define (inox-patch pathspec revision hash)
> +  (origin
> +    (method url-fetch)
> +    (uri (string-append "https://raw.githubusercontent.com/gcarq/inox-pa=
tchset/"
> +                        revision "/" pathspec))
> +    (sha256 (base32 hash))
> +    (file-name (chromium-patch-file-name pathspec))))
> +
> +;; https://github.com/Eloston/ungoogled-chromium
> +(define (ungoogled-patch pathspec revision hash)
> +  (origin
> +    (method url-fetch)
> +    (uri (string-append "https://raw.githubusercontent.com/Eloston"
> +                        "/ungoogled-chromium/" revision "/resources"
> +                        "/patches/ungoogled-chromium/" pathspec))
> +    (sha256 (base32 hash))
> +    (file-name (chromium-patch-file-name pathspec))))
> +
> +;; XXX: It would be great to have (upstream-patch ...), but the API
> +;; at <https://chromium.googlesource.com/chromium/> can only return
> +;; base64-encoded patches.
> +
> +(define %debian-revision "debian/68.0.3440.75-2")
> +(define %gentoo-revision "a79be956bb7bbeaca245564ecb4a350b1203ca98")
> +(define %inox-revision "8afa26a5ffb2e8ff52ac5b7bbdccc9f09290120e")
> +(define %ungoogled-revision "55d1a2442dcd9efc574f6c4fa99804d5b8658e4e")
> +
> +(define %debian-patches
> +  (list
> +   ;; Bootstrap "GN" using system NSPR.
> +   (debian-patch "system/nspr.patch" %debian-revision
> +                 "0xywgsq14xdpfdf0wb5plv5jy2738zbwj7caj2i5g9s5zpdclhsv")
> +   ;; Ditto for system libevent.
> +   (debian-patch "system/event.patch" %debian-revision
> +                 "0cq5kz5yi737vb3k8v67hrr38czqm3mj6g3swh765pmfzvx5inj6")
> +   ;; Make PDFium use system OpenJPEG.
> +   (debian-patch "system/openjpeg.patch" %debian-revision
> +                 "0fxvbfvmimg0ykzhsk3l0kyvhz1fgbys51ldh950106yj6dszsmx")
> +   ;; Make "Courgette" use system zlib instead of the bundled lzma.
> +   (debian-patch "system/zlib.patch" %debian-revision
> +                 "1fmkiw7xrhwadvjxkzpv8j5iih2ws59l3llsdrpapw1vybfyq9nr")
> +   ;; Avoid dependency on Chromiums embedded libc++ when bootstrapping.
> +   (debian-patch "gn/libcxx.patch" %debian-revision
> +                 "02w94h9jd29jyvq09yxl9g31hk8j07qzr7rg23rhibhkn1rvg38x")
> +   ;; Avoid dependency on Android tools.
> +   (debian-patch "disable/android.patch" %debian-revision
> +                 "06kxx1fx9yi52h2fka71i9qqp6jh4r3w890k77nihv8arnabc0nq")
> +   ;; Do not show a warning about missing API keys.
> +   (debian-patch "disable/google-api-warning.patch" %debian-revision
> +                 "0vqi3n8i1vkp2cxmza7c60fl6d03195sax0ahrk1ksa04xjbkkqv")
> +   ;; Don't override the home page set in master_preferences.
> +   (debian-patch "disable/welcome-page.patch" %debian-revision
> +                 "15c6a296mkqnjdqqq90kmapn56rykb7saz4bs16han6by8q07lbx")=
))
> +
> +(define %gentoo-patches
> +  (list
> +   ;; Fix error detecting system ffmpeg.
> +   (gentoo-patch "chromium-ffmpeg-r1.patch" %gentoo-revision
> +                 "1pivcdmana4qx8sngcdpr858l0qh6bygv7azj66vg021phq5725a")
> +   ;; Add missing <string> #include.
> +   (gentoo-patch "chromium-cors-string-r0.patch" %gentoo-revision
> +                 "075lgl6g8rih21adsr3hf2mm0qm16s4w2h4h1qjh652sl941w57l")=
))
> +
> +(define %inox-patches
> +  (list
> +   ;; Fix build without the "safe browsing" feature.
> +   (inox-patch "0001-fix-building-without-safebrowsing.patch" %inox-revi=
sion
> +               "0qchqc3i772drx0c8n44yhkx45fgdvd0h325w0qvaqrakzixbmr4")
> +   ;; Use sane defaults.  In particular, don't depend on any Google serv=
ices.
> +   (inox-patch "0006-modify-default-prefs.patch" %inox-revision
> +               "0sbvs6l80h8ar8na6065ihqnmcsr1b4zc21jcs2wzkrjlxsgspw6")
> +   ;; Recent versions of Chromium may load a remote search engine on the=
 "New
> +   ;; Tab Page", which causes unnecessary and involuntary network traffi=
c.
> +   (inox-patch "0008-restore-classic-ntp.patch" %inox-revision
> +               "16z5accrri90s922n1r6nj8rqss3g7f579dwwzkk2hdxbkc9wzyr")
> +   ;; Add DuckDuckGo and use it as the default search engine.
> +   (inox-patch "0011-add-duckduckgo-search-engine.patch" %inox-revision
> +               "0mvw1ax0gw3d252c9b1pwbk0j7ny8z9nsfywcmhj56wm6yksgpkg")
> +   ;; Don't start a "Login Wizard" at first launch.
> +   (inox-patch "0018-disable-first-run-behaviour.patch" %inox-revision
> +               "1y4zsqqf2125jkb1phwy9g5hcbd9xhyv5lr4xcaly66rpdzx2ayb")))
> +
> +(define %ungoogled-patches
> +  (list
> +   ;; Disable browser sign-in to prevent leaking data at launch.
> +   (ungoogled-patch "disable-signin.patch" %ungoogled-revision
> +                    "0a6akb10bzk6z6nhqa211y8rbj0ibdhhg5n92482q9sikavd8hz=
0")))
> +
> +(define opus+custom
> +  (package (inherit opus)
> +           (name "opus+custom")
> +           (arguments
> +            (substitute-keyword-arguments (package-arguments opus)
> +              ((#:configure-flags flags ''())
> +               ;; Opus Custom is an optional extension of the Opus
> +               ;; specification that allows for unsupported frame
> +               ;; sizes.  Chromium requires that this is enabled.
> +               `(cons "--enable-custom-modes"
> +                      ,flags))))))
> +
> +(define libvpx/chromium
> +  ;; Chromium 66 and later requires an unreleased libvpx, so we take the
> +  ;; commit from "third_party/libvpx/README.chromium" in the tarball.
> +  ;; XXX: Might as well reuse Chromium source.
> +  (let ((version (package-version libvpx))
> +        (commit "e27a331778c4c99ec37262ea786a3b4cc2a491ac")
> +        (revision "0"))
> +    (package
> +      (inherit libvpx)
> +      (name "libvpx-chromium")
> +      (version (git-version version revision commit))
> +      (source (origin
> +                (method git-fetch)
> +                (uri (git-reference
> +                      (url "https://chromium.googlesource.com/webm/libvp=
x")
> +                      (commit commit)))
> +                (file-name (git-file-name name version))
> +                (sha256
> +                 (base32
> +                  "03a0443dnfn6l2v19qpw7p7k29v98c5b5hl4br93czgq0wi29m1g"=
)))))))
> +
> +(define-public chromium
> +  (package
> +    (name "chromium")
> +    (version "68.0.3440.84")
> +    (synopsis "Graphical web browser")
> +    (source (origin
> +              (method url-fetch)
> +              (uri (string-append "https://commondatastorage.googleapis.=
com"
> +                                  "/chromium-browser-official/chromium-"
> +                                  version ".tar.xz"))
> +              (sha256
> +               (base32
> +                "1nf9xha7ncnh8g1g4c8hzk03f8ya7nd0xzwij9zs7n0qmrkx2c8h"))
> +              (patches (append %debian-patches
> +                               %gentoo-patches
> +                               %inox-patches
> +                               %ungoogled-patches
> +                               (search-patches "chromium-gcc-unique-ptr.=
patch"
> +                                               "chromium-remove-default-=
history.patch")))
> +              (modules '((srfi srfi-1)
> +                         (srfi srfi-26)
> +                         (ice-9 ftw)
> +                         (ice-9 match)
> +                         (ice-9 regex)
> +                         (guix build utils)))
> +              (snippet
> +               '(begin
> +                  (let ((preserved-club

Once we merge this into master, can we document the update procedure?
Or even better, write an update script if possible? For me it was 40%
hit everything which doesn't move and take what's left over and 60%
reading. I understand the code, but some people might want an
explanation for how it's decided which folder gets to stay.

> +                         (map
> +                          (lambda (path)
> +                            ;; Prepend paths with "./" for comparison wi=
th ftw.
> +                            (string-append "./" path))
> +                          (list
> +                           "base/third_party/dmg_fp"
> +                           "base/third_party/dynamic_annotations"
> +                           "base/third_party/icu"
> +                           "base/third_party/superfasthash"
> +                           "base/third_party/symbolize"
> +                           "base/third_party/xdg_mime"
> +                           "base/third_party/xdg_user_dirs"
> +                           "chrome/third_party/mozilla_security_manager"
> +                           "courgette/third_party/bsdiff"
> +                           "courgette/third_party/divsufsort"
> +                           "net/third_party/http2"
> +                           "net/third_party/mozilla_security_manager"
> +                           "net/third_party/nss"
> +                           "net/third_party/spdy"
> +                           "net/third_party/quic"
> +                           "third_party/adobe/flash/flapper_version.h"
> +                           ;; FIXME: This is used in:
> +                           ;; * ui/webui/resources/js/analytics.js
> +                           ;; * ui/file_manager/
> +                           "third_party/analytics"
> +                           "third_party/angle"
> +                           "third_party/angle/src/common/third_party/bas=
e"
> +                           "third_party/angle/src/common/third_party/smh=
asher"
> +                           "third_party/angle/src/third_party/compiler"
> +                           "third_party/angle/src/third_party/libXNVCtrl"
> +                           "third_party/angle/src/third_party/trace_even=
t"
> +                           "third_party/angle/third_party/glslang"
> +                           "third_party/angle/third_party/spirv-headers"
> +                           "third_party/angle/third_party/spirv-tools"
> +                           "third_party/angle/third_party/vulkan-validat=
ion-layers"
> +                           "third_party/apple_apsl" ;XXX add APSL2.0 lic=
ense
> +                           "third_party/blink"
> +                           "third_party/boringssl"
> +                           "third_party/boringssl/src/third_party/fiat"
> +                           "third_party/breakpad"
> +                           "third_party/brotli"
> +                           "third_party/cacheinvalidation"
> +                           "third_party/catapult"
> +                           "third_party/catapult/common/py_vulcanize/thi=
rd_party/rcssmin"
> +                           "third_party/catapult/common/py_vulcanize/thi=
rd_party/rjsmin"
> +                           "third_party/catapult/third_party/polymer"
> +                           "third_party/catapult/tracing/third_party/d3"
> +                           "third_party/catapult/tracing/third_party/gl-=
matrix"
> +                           "third_party/catapult/tracing/third_party/jsz=
ip"
> +                           "third_party/catapult/tracing/third_party/man=
nwhitneyu"
> +                           "third_party/catapult/tracing/third_party/obo=
e"
> +                           "third_party/catapult/tracing/third_party/pak=
o"
> +                           "third_party/ced"
> +                           "third_party/cld_3"
> +                           "third_party/crashpad"
> +                           (string-append "third_party/crashpad/crashpad=
/"
> +                                          "third_party/zlib/zlib_crashpa=
d.h")
> +                           "third_party/crc32c"
> +                           "third_party/cros_system_api"
> +                           "third_party/dom_distiller_js"
> +                           "third_party/fips181"
> +                           "third_party/flatbuffers"
> +                           "third_party/glslang-angle"
> +                           "third_party/google_input_tools"
> +                           "third_party/google_input_tools/third_party/c=
losure_library"
> +                           (string-append "third_party/google_input_tool=
s/third_party"
> +                                          "/closure_library/third_party/=
closure")
> +                           "third_party/googletest"
> +                           "third_party/hunspell"
> +                           "third_party/iccjpeg"
> +                           "third_party/inspector_protocol"
> +                           "third_party/jinja2"
> +                           "third_party/jstemplate"
> +                           "third_party/khronos"
> +                           "third_party/leveldatabase"
> +                           "third_party/libXNVCtrl"
> +                           "third_party/libaddressinput"
> +                           "third_party/libaom"
> +                           "third_party/libjingle_xmpp"
> +                           "third_party/libphonenumber"
> +                           "third_party/libsecret" ;FIXME: needs pkg-con=
fig support.
> +                           "third_party/libsrtp"
> +                           "third_party/libsync"   ;TODO: package
> +                           "third_party/libudev"
> +                           "third_party/libwebm"
> +                           "third_party/libxml"
> +                           "third_party/libyuv"
> +                           "third_party/lss"
> +                           "third_party/markupsafe"
> +                           "third_party/mesa"
> +                           "third_party/metrics_proto"
> +                           "third_party/modp_b64"
> +                           "third_party/node"
> +                           (string-append "third_party/node/node_modules=
/"
> +                                          "polymer-bundler/lib/third_par=
ty/UglifyJS2")
> +                           "third_party/ots"
> +                           ;; TODO: Build as extension.
> +                           "third_party/pdfium"
> +                           "third_party/pdfium/third_party/agg23"
> +                           "third_party/pdfium/third_party/base"
> +                           "third_party/pdfium/third_party/bigint"
> +                           "third_party/pdfium/third_party/skia_shared"
> +                           (string-append "third_party/pdfium/third_part=
y/freetype"
> +                                          "/include/pstables.h")
> +                           "third_party/perfetto"
> +                           "third_party/ply"
> +                           "third_party/polymer"
> +                           "third_party/protobuf"
> +                           "third_party/protobuf/third_party/six"
> +                           "third_party/pyjson5"
> +                           "third_party/qcms"
> +                           "third_party/rnnoise"
> +                           "third_party/sfntly"
> +                           "third_party/skia"
> +                           "third_party/skia/third_party/skcms"
> +                           "third_party/skia/third_party/vulkan"
> +                           "third_party/skia/third_party/gif"
> +                           "third_party/smhasher"
> +                           "third_party/speech-dispatcher"
> +                           "third_party/sqlite"
> +                           "third_party/swiftshader"
> +                           "third_party/swiftshader/third_party/llvm-sub=
zero"
> +                           "third_party/swiftshader/third_party/subzero"
> +                           "third_party/s2cellid"
> +                           "third_party/usb_ids"
> +                           "third_party/usrsctp"
> +                           "third_party/WebKit"
> +                           "third_party/web-animations-js"
> +                           "third_party/webrtc"
> +                           "third_party/webrtc_overrides"
> +                           "third_party/widevine/cdm/widevine_cdm_versio=
n.h"
> +                           "third_party/widevine/cdm/widevine_cdm_common=
=2Eh"
> +                           "third_party/woff2"
> +                           "third_party/xdg-utils"
> +                           "third_party/yasm/run_yasm.py"
> +                           "third_party/zlib/google"
> +                           "url/third_party/mozilla"
> +                           "v8/src/third_party/utf8-decoder"
> +                           "v8/src/third_party/valgrind"
> +                           "v8/third_party/antlr4"
> +                           "v8/third_party/inspector_protocol"))))
> +
> +                    (define (empty? dir)
> +                      (equal? (scandir dir) '("." "..")))
> +
> +                    (define (third_party? file)
> +                      (if (string-contains file "third_party/")
> +                          #t
> +                          #f))
> +
> +                    (define (useless? file)
> +                      (any (cute string-suffix? <> file)
> +                           '(".tar.gz" ".zip" ".exe" ".jar")))
> +
> +                    (define (parents child)
> +                      (let ((lst (reverse (string-split child #\/))))
> +                        (let loop ((hierarchy lst)
> +                                   (result '()))
> +                          (if (or (null? hierarchy)
> +                                  (and (not (null? result))
> +                                       (string-suffix? "third_party" (ca=
r result))))
> +                              result
> +                              (loop (cdr hierarchy)
> +                                    (cons (string-join (reverse hierarch=
y) "/")
> +                                          result))))))
> +
> +                    (define (delete-unwanted-files child stat flag base =
level)
> +                      (let ((protected (make-regexp "\\.(gn|gyp)i?$")))
> +                        (match flag
> +                          ((or 'regular 'symlink 'stale-symlink)
> +                           (when (third_party? child)
> +                             (unless (or (member child preserved-club)
> +                                         (any (cute member <> preserved-=
club)
> +                                              (parents child))
> +                                         (regexp-exec protected child))
> +                               (format (current-error-port) "deleting ~s=
~%" child)
> +                               (delete-file child)))
> +                           (when (and (useless? child) (file-exists? chi=
ld))
> +                             (delete-file child))
> +                           #t)
> +                          ('directory-processed
> +                           (when (empty? child)
> +                             (rmdir child))
> +                           #t)
> +                          (_ #t))))
> +
> +                    (nftw "." delete-unwanted-files 'depth 'physical)
> +
> +                    ;; Assert that each listed item is present to catch =
removals.
> +                    (for-each (lambda (third-party)
> +                                (unless (file-exists? third-party)
> +                                  (error (format #f "~s does not exist!"=
 third-party))))
> +                              preserved-club)
> +
> +                    ;; Replace "GN" files from third_party with shims for
> +                    ;; building against system libraries.  Keep this lis=
t in
> +                    ;; sync with "build/linux/unbundle/replace_gn_files.=
py".
> +                    (for-each (lambda (pair)
> +                                (let ((source (string-append
> +                                               "build/linux/unbundle/" (=
car pair)))
> +                                      (dest (cdr pair)))
> +                                  (copy-file source dest)))
> +                              (list
> +                               '("ffmpeg.gn" . "third_party/ffmpeg/BUILD=
=2Egn")
> +                               '("flac.gn" . "third_party/flac/BUILD.gn")
> +                               '("fontconfig.gn" . "third_party/fontconf=
ig/BUILD.gn")
> +                               '("freetype.gn" . "build/config/freetype/=
freetype.gni")
> +                               '("harfbuzz-ng.gn" .
> +                                 "third_party/harfbuzz-ng/harfbuzz.gni")
> +                               '("icu.gn" . "third_party/icu/BUILD.gn")
> +                               '("libdrm.gn" . "third_party/libdrm/BUILD=
=2Egn")
> +                               '("libevent.gn" . "base/third_party/libev=
ent/BUILD.gn")
> +                               '("libjpeg.gn" . "third_party/libjpeg.gni=
")
> +                               '("libpng.gn" . "third_party/libpng/BUILD=
=2Egn")
> +                               '("libvpx.gn" . "third_party/libvpx/BUILD=
=2Egn")
> +                               '("libwebp.gn" . "third_party/libwebp/BUI=
LD.gn")
> +                               '("libxml.gn" . "third_party/libxml/BUILD=
=2Egn")
> +                               '("libxslt.gn" . "third_party/libxslt/BUI=
LD.gn")
> +                               '("openh264.gn" . "third_party/openh264/B=
UILD.gn")
> +                               '("opus.gn" . "third_party/opus/BUILD.gn")
> +                               '("re2.gn" . "third_party/re2/BUILD.gn")
> +                               '("snappy.gn" . "third_party/snappy/BUILD=
=2Egn")
> +                               '("yasm.gn" . "third_party/yasm/yasm_asse=
mble.gni")
> +                               '("zlib.gn" . "third_party/zlib/BUILD.gn"=
)))
> +                    #t)))))
> +    (build-system gnu-build-system)
> +    (arguments
> +     `(#:tests? #f
> +       ;; FIXME: There is a "gn" option specifically for setting -rpath,=
 but
> +       ;; it overrides the RUNPATH set by the linker.
> +       #:validate-runpath? #f
> +       #:modules ((guix build gnu-build-system)
> +                  (guix build utils)
> +                  (ice-9 ftw)
> +                  (ice-9 regex)
> +                  (srfi srfi-26))
> +       #:configure-flags
> +       ;; See tools/gn/docs/cookbook.md and
> +       ;; https://www.chromium.org/developers/gn-build-configuration
> +       ;; for usage.  Run "./gn args . --list" in the Release
> +       ;; directory for an exhaustive list of supported flags.
> +       ;; (Note: The 'configure' phase will do that for you.)
> +       (list "is_debug=3Dfalse"
> +             "use_gold=3Dfalse"
> +             "use_lld=3Dfalse"
> +             "linux_use_bundled_binutils=3Dfalse"
> +             "use_custom_libcxx=3Dfalse"
> +             "use_sysroot=3Dfalse"
> +             "enable_precompiled_headers=3Dfalse"
> +             "goma_dir=3D\"\""
> +             "enable_nacl=3Dfalse"
> +             "enable_nacl_nonsfi=3Dfalse"
> +             "use_allocator=3D\"none\""   ;don't use tcmalloc
> +             "override_build_date=3D\"01 01 2000 05:00:00\""
> +             "use_unofficial_version_number=3Dfalse"
> +
> +             ;; Disable "safe browsing", which pulls in a dependency on
> +             ;; the nonfree "unrar" program (as of m66).
> +             "safe_browsing_mode=3D0"
> +
> +             ;; Define a custom toolchain that simply looks up CC, AR and
> +             ;; friends from the environment.
> +             "custom_toolchain=3D\"//build/toolchain/linux/unbundle:defa=
ult\""
> +             "host_toolchain=3D\"//build/toolchain/linux/unbundle:defaul=
t\""
> +
> +             ;; Don't assume it's clang.
> +             "is_clang=3Dfalse"
> +
> +             ;; Optimize for building everything at once, as opposed to
> +             ;; incrementally for development.  See "docs/jumbo.md".
> +             "use_jumbo_build=3Dtrue"
> +
> +             ;; Disable debugging features to save space.
> +             "symbol_level=3D0"
> +             "remove_webcore_debug_symbols=3Dtrue"
> +             "enable_iterator_debugging=3Dfalse"
> +
> +             ;; Some of the unbundled libraries throws deprecation
> +             ;; warnings, etc.  Ignore it.
> +             "treat_warnings_as_errors=3Dfalse"
> +
> +             ;; Don't add any API keys.  End users can set them in the
> +             ;; environment if desired.  See
> +             ;; <https://www.chromium.org/developers/how-tos/api-keys>.
> +             "use_official_google_api_keys=3Dfalse"
> +
> +             ;; Disable "field trials".
> +             "fieldtrial_testing_like_official_build=3Dtrue"
> +
> +             ;; Disable Chrome Remote Desktop (aka Chromoting).
> +             "enable_remoting=3Dfalse"
> +
> +             ;; Use system libraries where possible.
> +             "use_system_freetype=3Dtrue"
> +             "use_system_harfbuzz=3Dtrue"
> +             "use_system_lcms2=3Dtrue"
> +             "use_system_libjpeg=3Dtrue"
> +             "use_system_libpng=3Dtrue"
> +             "use_system_zlib=3Dtrue"
> +
> +             "use_gnome_keyring=3Dfalse"  ;deprecated by libsecret
> +             "use_gtk3=3Dtrue"
> +             "use_openh264=3Dtrue"
> +             "use_xkbcommon=3Dtrue"
> +             "use_pulseaudio=3Dtrue"
> +             "link_pulseaudio=3Dtrue"
> +
> +             ;; Don't arbitrarily restrict formats supported by system f=
fmpeg.
> +             "proprietary_codecs=3Dtrue"
> +             "ffmpeg_branding=3D\"Chrome\""
> +
> +             ;; WebRTC stuff.
> +             "rtc_use_h264=3Dtrue"
> +             ;; Don't use bundled sources.
> +             "rtc_build_json=3Dfalse"
> +             "rtc_build_libevent=3Dfalse"
> +             "rtc_build_libvpx=3Dfalse"
> +             "rtc_build_opus=3Dfalse"
> +             "rtc_build_ssl=3Dfalse"
> +
> +             "rtc_build_libsrtp=3Dtrue"   ;FIXME: fails to find headers
> +             "rtc_build_usrsctp=3Dtrue"   ;TODO: package this
> +             (string-append "rtc_jsoncpp_root=3D\""
> +                            (assoc-ref %build-inputs "jsoncpp")
> +                            "/include/jsoncpp/json\"")
> +             (string-append "rtc_ssl_root=3D\""
> +                            (assoc-ref %build-inputs "openssl")
> +                            "/include/openssl\""))
> +       #:phases
> +       (modify-phases %standard-phases
> +         (add-after 'unpack 'patch-stuff
> +           (lambda* (#:key inputs #:allow-other-keys)
> +             (substitute* "printing/cups_config_helper.py"
> +               (("cups_config =3D.*")
> +                (string-append "cups_config =3D '" (assoc-ref inputs "cu=
ps")
> +                               "/bin/cups-config'\n")))
> +
> +             (substitute*
> +                 '("base/process/launch_posix.cc"
> +                   "base/third_party/dynamic_annotations/dynamic_annotat=
ions.c"
> +                   "sandbox/linux/seccomp-bpf/sandbox_bpf.cc"
> +                   "sandbox/linux/services/credentials.cc"
> +                   "sandbox/linux/services/namespace_utils.cc"
> +                   "sandbox/linux/services/syscall_wrappers.cc"
> +                   "sandbox/linux/syscall_broker/broker_host.cc")

Not related to this section, but: NixOS has a "sandbox" output for Chromium
which "contains the sandboxed wrapper" of Chromium. Maybe it requires somet=
hing
Nix/NixOS specific, maybe we can add that.

> +               (("include \"base/third_party/valgrind/") "include \"valg=
rind/"))
> +
> +             (for-each (lambda (file)
> +                         (substitute* file
> +                           ;; Fix opus include path.
> +                           ;; Do not substitute opus_private.h.
> +                           (("#include \"opus\\.h\"")
> +                            "#include \"opus/opus.h\"")
> +                           (("#include \"opus_custom\\.h\"")
> +                            "#include \"opus/opus_custom.h\"")
> +                           (("#include \"opus_defines\\.h\"")
> +                            "#include \"opus/opus_defines.h\"")
> +                           (("#include \"opus_multistream\\.h\"")
> +                            "#include \"opus/opus_multistream.h\"")
> +                           (("#include \"opus_types\\.h\"")
> +                            "#include \"opus/opus_types.h\"")))
> +                       (find-files (string-append "third_party/webrtc/mo=
dules"
> +                                                  "/audio_coding/codecs/=
opus")))
> +
> +             (substitute* "chrome/common/chrome_paths.cc"
> +               (("/usr/share/chromium/extensions")
> +                ;; TODO: Add ~/.guix-profile.
> +                "/run/current-system/profile/share/chromium/extensions"))
> +
> +             (substitute*
> +                 ;; XXX: Probably not needed for M69.
> +                 "third_party/blink/renderer/platform/image-encoders/ima=
ge_encoder.h"
> +               (("#include \"third_party/libjpeg/") "#include \"")
> +               (("#include \"third_party/libwebp/src/") "#include \""))
> +
> +             (substitute*
> +                 "third_party/breakpad/breakpad/src/common/linux/libcurl=
_wrapper.h"
> +               (("include \"third_party/curl") "include \"curl"))
> +             (substitute* "media/base/decode_capabilities.cc"
> +               (("third_party/libvpx/source/libvpx/") ""))
> +
> +             #t))
> +         (add-before 'configure 'prepare-build-environment
> +           (lambda* (#:key inputs #:allow-other-keys)
> +
> +             ;; Make sure the right build tools are used.
> +             (setenv "AR" "ar") (setenv "NM" "nm")
> +             (setenv "CC" "gcc") (setenv "CXX" "g++")
> +
> +             ;; Work around <https://bugs.gnu.org/30756>.
> +             (unsetenv "C_INCLUDE_PATH")
> +             (unsetenv "CPLUS_INCLUDE_PATH")
> +
> +             ;; TODO: pre-compile instead. Avoids a race condition.
> +             (setenv "PYTHONDONTWRITEBYTECODE" "1")
> +
> +             ;; XXX: How portable is this.
> +             (mkdir-p "third_party/node/linux/node-linux-x64")
> +             (symlink (string-append (assoc-ref inputs "node") "/bin")
> +                      "third_party/node/linux/node-linux-x64/bin")
> +
> +             #t))
> +         (add-after 'prepare-build-environment 'bootstrap-gn
> +           (lambda _
> +             (invoke "python" "tools/gn/bootstrap/bootstrap.py" "-s" "-v=
")))
> +         (replace 'configure
> +           (lambda* (#:key configure-flags #:allow-other-keys)
> +             (let ((args (string-join configure-flags " ")))
> +               (with-directory-excursion "out/Release"
> +                 ;; Generate ninja build files.
> +                 (invoke "./gn" "gen" "."
> +                         (string-append "--args=3D" args))
> +
> +                 ;; Print the full list of supported arguments as well as
> +                 ;; their current status for convenience.
> +                 (format #t "Dumping configure flags...\n")
> +                 (invoke "./gn" "args" "." "--list")))))
> +         (replace 'build
> +           (lambda* (#:key outputs #:allow-other-keys)
> +             (invoke "ninja" "-C" "out/Release"
> +                     "-j" (number->string (parallel-job-count))
> +                     "chrome")))
> +         (replace 'install
> +           (lambda* (#:key inputs outputs #:allow-other-keys)
> +             (let* ((out            (assoc-ref outputs "out"))
> +                    (bin            (string-append out "/bin"))
> +                    (exe            (string-append bin "/chromium"))
> +                    (lib            (string-append out "/lib"))
> +                    (man            (string-append out "/share/man/man1"=
))
> +                    (applications   (string-append out "/share/applicati=
ons"))
> +                    (install-regexp (make-regexp "\\.(bin|pak)$"))
> +                    (locales        (string-append lib "/locales"))
> +                    (resources      (string-append lib "/resources"))
> +                    (preferences    (assoc-ref inputs "master-preference=
s"))
> +                    (gtk+           (assoc-ref inputs "gtk+"))
> +                    (mesa           (assoc-ref inputs "mesa"))
> +                    (nss            (assoc-ref inputs "nss"))
> +                    (udev           (assoc-ref inputs "udev"))
> +                    (sh             (which "sh")))
> +
> +               (substitute* '("chrome/app/resources/manpage.1.in"
> +                              "chrome/installer/linux/common/desktop.tem=
plate")
> +                 (("@@MENUNAME@@") "Chromium")
> +                 (("@@PACKAGE@@") "chromium")
> +                 (("/usr/bin/@@USR_BIN_SYMLINK_NAME@@") exe))
> +
> +               (mkdir-p man)
> +               (copy-file "chrome/app/resources/manpage.1.in"
> +                          (string-append man "/chromium.1"))
> +
> +               (mkdir-p applications)
> +               (copy-file "chrome/installer/linux/common/desktop.templat=
e"
> +                          (string-append applications "/chromium.desktop=
"))
> +
> +               (mkdir-p lib)
> +               (copy-file preferences (string-append lib "/master_prefer=
ences"))
> +
> +               (with-directory-excursion "out/Release"
> +                 (for-each (lambda (file)
> +                             (install-file file lib))
> +                           (scandir "." (cut regexp-exec install-regexp =
<>)))
> +                 (copy-file "chrome" (string-append lib "/chromium"))
> +
> +                 ;; TODO: Install icons from "../../chrome/app/themes" i=
nto
> +                 ;; "out/share/icons/hicolor/$size".

I have more icons here in my definition, the whole section looked like...

> +                 (install-file
> +                  "product_logo_48.png"
> +                  (string-append out "/share/icons/48x48/chromium.png"))

this:

+                 ;; XXX: What about ../../chrome/app/theme/chromium/linux/?
+                 (for-each
+                  (lambda (file)
+                    (let* ((size (string-filter char-numeric? file))
+                           (icons (string-append out "/share/icons/hicolor=
/"
+                                                 size "x" size "/apps")))
+                      (mkdir-p icons)
+                      (copy-file file (string-append icons "/chromium.png"=
))))
+                  '("../../chrome/app/theme/chromium/product_logo_128.png"
+                    "../../chrome/app/theme/chromium/product_logo_22.png"
+                    "../../chrome/app/theme/chromium/product_logo_22_mono.=
png"
+                    "../../chrome/app/theme/chromium/product_logo_24.png"
+                    "../../chrome/app/theme/chromium/product_logo_256.png"
+                    "../../chrome/app/theme/chromium/product_logo_48.png"
+                    "../../chrome/app/theme/chromium/product_logo_64.png"))

> +
> +                 (copy-recursively "locales" locales)
> +                 (copy-recursively "resources" resources)
> +
> +                 (mkdir-p bin)
> +                 ;; Add a thin wrapper to prevent the user from inadvert=
ently
> +                 ;; installing non-free software through the Web Store.
> +                 ;; TODO: Discover extensions from the profile and pass
> +                 ;; something like "--disable-extensions-except=3D...".
> +                 (call-with-output-file exe
> +                   (lambda (port)
> +                     (format port
> +                             "#!~a~@
> +                             if [ -z \"$CHROMIUM_ENABLE_WEB_STORE\" ]~@
> +                             then~@
> +                               CHROMIUM_FLAGS=3D\" \\~@
> +                                 --disable-background-networking \\~@
> +                                 --disable-extensions \\~@
> +                               \"~@
> +                             fi~@
> +                             exec ~a $CHROMIUM_FLAGS \"$@\"~%"
> +                             sh (string-append lib "/chromium"))))
> +                 (chmod exe #o755)
> +
> +                 (wrap-program exe
> +                   ;; TODO: Get these in RUNPATH.
> +                   `("LD_LIBRARY_PATH" ":" prefix
> +                     (,(string-append lib ":" nss "/lib/nss:" gtk+ "/lib=
:"
> +                                      mesa "/lib:" udev "/lib")))
> +                   ;; Avoid file manager crash.  See <https://bugs.gnu.o=
rg/26593>.
> +                   `("XDG_DATA_DIRS" ":" prefix (,(string-append gtk+ "/=
share"))))
> +                 #t)))))))
> +    (native-inputs
> +     `(("bison" ,bison)
> +       ("gcc" ,gcc-8)                        ;a recent compiler is requi=
red
> +       ("gperf" ,gperf)
> +       ("ninja" ,ninja)
> +       ("node" ,node)
> +       ("pkg-config" ,pkg-config)
> +       ("master-preferences" ,(local-file "chromium-master-preferences.j=
son"))
> +       ("which" ,which)
> +       ("yasm" ,yasm)
> +
> +       ("python-beautifulsoup4" ,python2-beautifulsoup4)
> +       ("python-html5lib" ,python2-html5lib)
> +       ("python" ,python-2)))
> +    (inputs
> +     `(("alsa-lib" ,alsa-lib)
> +       ("atk" ,atk)
> +       ("cups" ,cups)
> +       ("curl" ,curl)
> +       ("dbus" ,dbus)
> +       ("dbus-glib" ,dbus-glib)
> +       ("expat" ,expat)
> +       ("flac" ,flac)
> +       ("ffmpeg" ,ffmpeg)
> +       ("fontconfig" ,fontconfig)
> +       ("freetype" ,freetype)
> +       ("gdk-pixbuf" ,gdk-pixbuf)
> +       ("glib" ,glib)
> +       ("gtk+" ,gtk+)
> +       ("harfbuzz" ,harfbuzz)
> +       ("icu4c" ,icu4c)
> +       ("jsoncpp" ,jsoncpp)
> +       ("lcms" ,lcms)
> +       ("libevent" ,libevent)
> +       ("libffi" ,libffi)
> +       ("libjpeg-turbo" ,libjpeg-turbo)
> +       ("libpng" ,libpng)
> +       ;;("libsrtp" ,libsrtp)
> +       ("libvpx" ,libvpx/chromium)
> +       ("libwebp" ,libwebp)
> +       ("libx11" ,libx11)
> +       ("libxcb" ,libxcb)
> +       ("libxcomposite" ,libxcomposite)
> +       ("libxcursor" ,libxcursor)
> +       ("libxdamage" ,libxdamage)
> +       ("libxext" ,libxext)
> +       ("libxfixes" ,libxfixes)
> +       ("libxi" ,libxi)
> +       ("libxkbcommon" ,libxkbcommon)
> +       ("libxml2" ,libxml2)
> +       ("libxrandr" ,libxrandr)
> +       ("libxrender" ,libxrender)
> +       ("libxscrnsaver" ,libxscrnsaver)
> +       ("libxslt" ,libxslt)
> +       ("libxtst" ,libxtst)
> +       ("mesa" ,mesa)
> +       ("minizip" ,minizip)
> +       ("mit-krb5" ,mit-krb5)
> +       ("nss" ,nss)
> +       ("openh264" ,openh264)
> +       ("openjpeg" ,openjpeg)                          ;PDFium only
> +       ("openssl" ,openssl)
> +       ("opus" ,opus+custom)
> +       ("pango" ,pango)
> +       ("pciutils" ,pciutils)
> +       ("pulseaudio" ,pulseaudio)
> +       ("re2" ,re2)
> +       ("snappy" ,snappy)
> +       ("speech-dispatcher" ,speech-dispatcher)
> +       ("udev" ,eudev)
> +       ("valgrind" ,valgrind)))
> +    (home-page "https://www.chromium.org/")
> +    (description
> +     "Chromium is a web browser designed for speed and security.  This
> +version incorporates features from
> +@url{https://github.com/gcarq/inox-patchset,the Inox patchset} and
> +@url{https://github.com/Eloston/ungoogled-chromium,ungoogled-chromium} in
> +order to protect the users privacy.")
> +    ;; Chromium is developed as BSD-3, but bundles a large number of thi=
rd-party
> +    ;; components with other licenses.  For full information, see chrome=
://credits.
> +    (license (list license:bsd-3
> +                   license:bsd-2
> +                   license:expat
> +                   license:asl2.0
> +                   license:mpl2.0
> +                   license:public-domain
> +                   license:lgpl2.1+))))
> diff --git a/gnu/packages/patches/chromium-gcc-unique-ptr.patch b/gnu/pac=
kages/patches/chromium-gcc-unique-ptr.patch
> new file mode 100644
> index 000000000..9c9a9fc09
> --- /dev/null
> +++ b/gnu/packages/patches/chromium-gcc-unique-ptr.patch
> @@ -0,0 +1,33 @@
> +Help GCC resolve <UrlIndex>.
> +
> +Taken from upstream:
> +https://chromium.googlesource.com/chromium/src/+/56cb5f7da1025f6db869e84=
0ed34d3b98b9ab899
> +
> +diff --git a/components/bookmarks/browser/bookmark_storage.cc b/componen=
ts/bookmarks/browser/bookmark_storage.cc
> +index 1633ba1..3ae0c62 100644
> +--- a/components/bookmarks/browser/bookmark_storage.cc
> ++++ b/components/bookmarks/browser/bookmark_storage.cc
> +@@ -158,6 +158,10 @@
> +   url_index_ =3D std::make_unique<UrlIndex>(std::move(root_node_));
> + }
> +=20
> ++std::unique_ptr<UrlIndex> BookmarkLoadDetails::owned_url_index() {
> ++  return std::move(url_index_);
> ++}
> ++
> + BookmarkPermanentNode* BookmarkLoadDetails::CreatePermanentNode(
> +     BookmarkClient* client,
> +     BookmarkNode::Type type) {
> +diff --git a/components/bookmarks/browser/bookmark_storage.h b/component=
s/bookmarks/browser/bookmark_storage.h
> +index 08df5bb..0a1b1a1 100644
> +--- a/components/bookmarks/browser/bookmark_storage.h
> ++++ b/components/bookmarks/browser/bookmark_storage.h
> +@@ -104,7 +104,7 @@
> +   bool ids_reassigned() const { return ids_reassigned_; }
> +=20
> +   void CreateUrlIndex();
> +-  std::unique_ptr<UrlIndex> owned_url_index() { return std::move(url_in=
dex_); }
> ++  std::unique_ptr<UrlIndex> owned_url_index();
> +=20
> +  private:
> +   // Creates one of the possible permanent nodes (bookmark bar node, ot=
her node
> diff --git a/gnu/packages/patches/chromium-remove-default-history.patch b=
/gnu/packages/patches/chromium-remove-default-history.patch
> new file mode 100644
> index 000000000..42363805b
> --- /dev/null
> +++ b/gnu/packages/patches/chromium-remove-default-history.patch
> @@ -0,0 +1,13 @@
> +Don't pre-populate the New Tab Page for new profiles.
> +
> +--- a/chrome/browser/history/top_sites_factory.cc
> ++++ b/chrome/browser/history/top_sites_factory.cc
> +@@ -74,7 +74,7 @@
> +=20
> + void InitializePrepopulatedPageList(
> +     history::PrepopulatedPageList* prepopulated_pages) {
> +-#if !defined(OS_ANDROID)
> ++#if 0
> +   DCHECK(prepopulated_pages);
> +   prepopulated_pages->reserve(arraysize(kRawPrepopulatedPages));
> +   for (size_t i =3D 0; i < arraysize(kRawPrepopulatedPages); ++i) {
> --=20
> 2.18.0
>=20




--4ntk4dcfcdzb4lwe
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQIzBAABCgAdFiEEqIyK3RKYKNfqwC5S4i+bv+40hYgFAltnIzoACgkQ4i+bv+40
hYizlxAAkdUuL59mf7Z/i4u1lmVbsZNRNCkJ1x2DAA8aBdH04U85dUjXijQAysBg
rSihMoRnIOzm2gfPPpebKiOmVSfsjfUQGHRkRW48Q+RDY9fMVNjYySO1XoazFSI9
DqwkmFzBz9a3GeXVHXlfM78xA09SijVPxpUkQYVIs5BuotE9KRZOpXruzr30i+dp
Br4VcHcSAhkWTnIWp2Doea2vkGl7cCakScRxvkENSIKY5Nd1Vcg+c9LzkU28mOf9
JnT4ibvb/Txtkgeqn2ytBB5Cy7CUA4pBcyKStviyvGziUOb8T/nIiJMWluOkchx8
26jYtCrcPhAv82wAlnA3SPTmmJ1E93DmLjCkzIe8YoA6mdE7jKpHRsHi7VTIJJqi
yyVDujsVyi1tgyhmeYd8gtklmoKHuIECGCK/Fe5Xn3elMvcGuwiW/+xBwk6Zs/VJ
Z5www2ex1+MuiAtAxhg5P988xnfnDT1LR+uHOOuifZAa6JhDiS0W8Rr/lM0AfFao
xGJPbEYkeuEwHr+NQkXGV+Ds6mhh2RgwGPD+Pe6u+x9mfT1NP2gM+hTw1iKNBiRK
dcSvWlSX/YzBv5rFzFWjUIXriUhSDW/RQTATtRDWHYkDivXiCvNCMHkfNuHuD3TM
x2xYYE+UCfYUj2O+1UojroSTTw2QXdJDYoCcTg4hYKpT/FTo7Vg=
=dw1o
-----END PGP SIGNATURE-----

--4ntk4dcfcdzb4lwe--




Information forwarded to guix-patches@HIDDEN:
bug#28004; Package guix-patches. Full text available.

Message received at 28004 <at> debbugs.gnu.org:


Received: (at 28004) by debbugs.gnu.org; 5 Aug 2018 13:04:34 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sun Aug 05 09:04:33 2018
Received: from localhost ([127.0.0.1]:41339 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1fmIhu-0000Ec-ID
	for submit <at> debbugs.gnu.org; Sun, 05 Aug 2018 09:04:33 -0400
Received: from out1-smtp.messagingengine.com ([66.111.4.25]:50459)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <mbakke@HIDDEN>) id 1fmIhq-0000EQ-Ue
 for 28004 <at> debbugs.gnu.org; Sun, 05 Aug 2018 09:04:24 -0400
Received: from compute5.internal (compute5.nyi.internal [10.202.2.45])
 by mailout.nyi.internal (Postfix) with ESMTP id 9B7AB21AEC;
 Sun,  5 Aug 2018 09:04:22 -0400 (EDT)
Received: from mailfrontend2 ([10.202.2.163])
 by compute5.internal (MEProxy); Sun, 05 Aug 2018 09:04:22 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=fastmail.com; h=
 cc:content-type:date:from:in-reply-to:message-id:mime-version
 :references:subject:to:x-me-sender:x-me-sender:x-sasl-enc; s=
 fm3; bh=Lo7s0Vskbf8+HkIcRllHt9zyPq5PlGpG2C6kTHJnmls=; b=ZS0QAz5K
 UwlHPREL223Dfb3Jc6i15S1+WQB+OTZFMyaYoXlwA2gVOYVKsDWG3jZ1IOo6YE39
 KzuH4GLHvhqg8M/q9uext6KsD7hxyABXVnUabCUVHU6i43UnwC6aXT2j4W72Wsiu
 yq1vnFC/MjApBARbyaQgjhy/OXJlyIujzcOa4gEHSgZaq+gyIYT7b7iSX4tKOmq3
 9toOeSJ28lfiTesEpxweJ2/Ag6nqo28Nl9DcX8URjMPhNktmnaWIxZWCwF+zb7xz
 5t/jflswzCzBDNynZPYnwwTe/mIalZR3r9miMjX0/UnmKD85AVF0gaoYi6YiZ6uU
 rtgc4yVFha88FA==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
 messagingengine.com; h=cc:content-type:date:from:in-reply-to
 :message-id:mime-version:references:subject:to:x-me-sender
 :x-me-sender:x-sasl-enc; s=fm3; bh=Lo7s0Vskbf8+HkIcRllHt9zyPq5Pl
 GpG2C6kTHJnmls=; b=Jjc7z4AmcEeGPlmoAC5USeTuubSEWHvM7jZZAzRB3OkDi
 0u1lHCw26tkgTAWLJFOAXZA/pDvhfeEBdHcxfkv0d/bmkGK3TsNwULMF8673MRIR
 buFAD1S4BNGuFy0/E56aB89soLW516fjJFnbzXiUiZCTE0O8K3GycDY8GX+0XSRz
 gGLbT3comdx/mA9nefJE8g1RhERRPRl7mEDvEoGsF8SPMkXgbuEdC54tgeFH9brJ
 Xdnf/GgGb+KTWSSqkeMPwpBDGg1yvPjEwU81nf4aBj2BPr4i7XnBttjd/Wuv0dUf
 aZHeUkvVYrZwcOefeasyDpfunoAhAVzcSEN6uwH/w==
X-ME-Proxy: <xmx:1fVmW4BwfL5Uh-olpJZZ8lVM70Tqc0c5A-HNKRtUgwZG0vcvBAmQVA>
 <xmx:1fVmWxuqwr5Yk0brwW8N0Qbk8494O7DZLBpqOOo_2iI2D_8b7rS98g>
 <xmx:1vVmW6d33Il9ZjGo9P3BZvTNKflA7CFly5u8wgDaoS5UEtc0nA86Yw>
 <xmx:1vVmW8rkkh5vcLqeMKSrdfZtS-rrw6_NX9kQmuCdm1LBirrmZs_ozw>
 <xmx:1vVmW25B2XqiFiMtD7gdhDfndhQ0hYC8E8r0ZznDBcGI6EHLmYz1tA>
 <xmx:1vVmW0ZX0gzOplw2ysF6wWkfPidszRV1tiOPkSr7fKDcOl48WpNd4Q>
X-ME-Sender: <xms:1fVmW27o6y_DZxWTQf6Zpl2mZ9prVZODpJceW4EN3O_w__QptHEr_Q>
Received: from localhost (95.92-221-151.customer.lyse.net [92.221.151.95])
 by mail.messagingengine.com (Postfix) with ESMTPA id 5E07D1026B;
 Sun,  5 Aug 2018 09:04:21 -0400 (EDT)
From: Marius Bakke <mbakke@HIDDEN>
To: ng0 <ng0@HIDDEN>
Subject: Re: [bug#28004] Chromium
In-Reply-To: <20180725080800.stqijlny6om6powe@abyayala>
References: <87fu75aar5.fsf@HIDDEN> <874lnkr0vf.fsf@HIDDEN>
 <87vaejvclc.fsf@HIDDEN> <20180226200133.zsnahblbgzovrtmu@abyayala>
 <87muzvv7ku.fsf@HIDDEN> <20180226234144.032af030@alma-ubu>
 <87woyxt3nz.fsf@HIDDEN> <20180316173044.dctlydfij7smndxd@abyayala>
 <87h8pfc3tr.fsf@HIDDEN> <20180316175225.7jf4k2qaciyxnepp@abyayala>
 <20180725080800.stqijlny6om6powe@abyayala>
User-Agent: Notmuch/0.27 (https://notmuchmail.org) Emacs/26.1
 (x86_64-pc-linux-gnu)
Date: Sun, 05 Aug 2018 15:04:19 +0200
Message-ID: <87tvo9c6cs.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: multipart/signed; boundary="==-=-=";
 micalg=pgp-sha512; protocol="application/pgp-signature"
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 28004
Cc: 28004 <at> debbugs.gnu.org, ng0 <ng0@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

--==-=-=
Content-Type: multipart/mixed; boundary="=-=-="

--=-=-=
Content-Type: text/plain

ng0 <ng0@HIDDEN> writes:

> Hi Marius,
>
> any chance you had the time to update to a more recent version release
> of Chromium?

Good news!  Please find Chromium 68 attached.

There are *a lot* of changes in this version.  Some highlights:

* It's using GCC 8 instead of Clang.
* A bug in the source scrubber has been fixed, so .zip and .jar files
  are now purged even if the parent directory is preserved.  Currently
  we're reducing the uncompressed size from 4.3 GiB to 2.1 GiB.
* External patches are now in an easier to manage format.
* Upstream have discontinued the libvpx "experiment"; but still
  require an unreleased version.
* We're installing a "master_preferences" file, which allows us to
  easily add defaults for new profiles.
* All the various knobs for the build system have been moved to
  #:configure-flags.  This should make it easier to create custom
  Chromium variants based on this package (qtwebkit?).
* The 'configure' phase will now print *all* supported flags for
  convenience (I usually did this manually every now and then).
* I've started cherry-picking patches from Ungoogled-Chromium in the
  quest to reduce data transmission to Google.

TODO:

* There is still some data transmitted when starting the browser for the
  first time.  It seems related to the "domain_reliability" component.
* Remove remaining "Web Store" links.  Currently I've only found it in
  settings, under "accessibility" and "fonts".
* Opening settings transmits a bunch of data, the next version will
  include the 'disable-translation-lang-fetch' patch from Inox.
* PDFium is built, but does not seem to work (the 'install' phase
  probably needs tweaking).  Might just disable it instead.

As always, feedback very welcome.  Enjoy!


--=-=-=
Content-Type: text/x-patch; charset=utf-8
Content-Disposition: attachment; filename=0001-gnu-Add-chromium.patch
Content-Transfer-Encoding: quoted-printable

From=20a4e343c57d70344dd4cef51ccd37c2650c746b46 Mon Sep 17 00:00:00 2001
From: Marius Bakke <mbakke@HIDDEN>
Date: Wed, 12 Oct 2016 17:25:05 +0100
Subject: [PATCH] gnu: Add chromium.

* gnu/packages/chromium.scm, gnu/packages/chromium-master-preferences.json,
gnu/packages/patches/chromium-gcc-unique-ptr.patch,
gnu/packages/patches/chromium-remove-default-history.patch: New files.
* gnu/local.mk: Record it.
=2D--
 gnu/local.mk                                  |   3 +
 gnu/packages/chromium-master-preferences.json |  26 +
 gnu/packages/chromium.scm                     | 829 ++++++++++++++++++
 .../patches/chromium-gcc-unique-ptr.patch     |  33 +
 .../chromium-remove-default-history.patch     |  13 +
 5 files changed, 904 insertions(+)
 create mode 100644 gnu/packages/chromium-master-preferences.json
 create mode 100644 gnu/packages/chromium.scm
 create mode 100644 gnu/packages/patches/chromium-gcc-unique-ptr.patch
 create mode 100644 gnu/packages/patches/chromium-remove-default-history.pa=
tch

diff --git a/gnu/local.mk b/gnu/local.mk
index 4ed341df8..320f27c44 100644
=2D-- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -95,6 +95,7 @@ GNU_SYSTEM_MODULES =3D				\
   %D%/packages/check.scm			\
   %D%/packages/chemistry.scm			\
   %D%/packages/chez.scm				\
+  %D%/packages/chromium.scm			\
   %D%/packages/ci.scm				\
   %D%/packages/cinnamon.scm			\
   %D%/packages/cluster.scm			\
@@ -603,6 +604,8 @@ dist_patch_DATA =3D						\
   %D%/packages/patches/ceph-skip-collect-sys-info-test.patch	\
   %D%/packages/patches/ceph-skip-unittest_blockdev.patch	\
   %D%/packages/patches/chmlib-inttypes.patch			\
+  %D%/packages/patches/chromium-gcc-unique-ptr.patch		\
+  %D%/packages/patches/chromium-remove-default-history.patch	\
   %D%/packages/patches/clang-3.5-libc-search-path.patch		\
   %D%/packages/patches/clang-3.8-libc-search-path.patch		\
   %D%/packages/patches/clang-6.0-libc-search-path.patch		\
diff --git a/gnu/packages/chromium-master-preferences.json b/gnu/packages/c=
hromium-master-preferences.json
new file mode 100644
index 000000000..0caa7cc4c
=2D-- /dev/null
+++ b/gnu/packages/chromium-master-preferences.json
@@ -0,0 +1,26 @@
+{
+  "distribution": {
+     "import_bookmarks": false,
+     "make_chrome_default": false,
+     "make_chrome_default_for_user": false,
+     "verbose_logging": true,
+     "skip_first_run_ui": true,
+     "suppress_first_run_default_browser_prompt": true
+  },
+  "browser": {
+     "has_seen_welcome_page" : true,
+     "check_default_browser" : false
+  },
+  "dns_prefetching": {
+    "enabled": false
+  },
+  "alternate_error_pages": {
+    "enabled": false
+  },
+  "hardware": {
+    "audio_capture_enabled": false
+  },
+  "default_apps": "noinstall",
+  "hide_web_store_icon": true,
+  "homepage": "https://www.gnu.org/software/guix"
+}
diff --git a/gnu/packages/chromium.scm b/gnu/packages/chromium.scm
new file mode 100644
index 000000000..2fc40a0d2
=2D-- /dev/null
+++ b/gnu/packages/chromium.scm
@@ -0,0 +1,829 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright =C2=A9 2016, 2017, 2018 Marius Bakke <mbakke@HIDDEN>
+;;;
+;;; This file is part of GNU Guix.
+;;;
+;;; GNU Guix is free software; you can redistribute it and/or modify it
+;;; under the terms of the GNU General Public License as published by
+;;; the Free Software Foundation; either version 3 of the License, or (at
+;;; your option) any later version.
+;;;
+;;; GNU Guix is distributed in the hope that it will be useful, but
+;;; WITHOUT ANY WARRANTY; without even the implied warranty of
+;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+;;; GNU General Public License for more details.
+;;;
+;;; You should have received a copy of the GNU General Public License
+;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
+
+(define-module (gnu packages chromium)
+  #:use-module ((guix licenses) #:prefix license:)
+  #:use-module (guix packages)
+  #:use-module (guix gexp)
+  #:use-module (guix download)
+  #:use-module (guix git-download)
+  #:use-module (guix utils)
+  #:use-module (guix build-system gnu)
+  #:use-module (gnu packages)
+  #:use-module (gnu packages assembly)
+  #:use-module (gnu packages base)
+  #:use-module (gnu packages bison)
+  #:use-module (gnu packages compression)
+  #:use-module (gnu packages cups)
+  #:use-module (gnu packages curl)
+  #:use-module (gnu packages fontutils)
+  #:use-module (gnu packages gcc)
+  #:use-module (gnu packages ghostscript)
+  #:use-module (gnu packages gl)
+  #:use-module (gnu packages glib)
+  #:use-module (gnu packages gnome)
+  #:use-module (gnu packages gnuzilla)
+  #:use-module (gnu packages gperf)
+  #:use-module (gnu packages gtk)
+  #:use-module (gnu packages icu4c)
+  #:use-module (gnu packages image)
+  #:use-module (gnu packages libevent)
+  #:use-module (gnu packages libffi)
+  #:use-module (gnu packages linux)
+  #:use-module (gnu packages kerberos)
+  #:use-module (gnu packages ninja)
+  #:use-module (gnu packages node)
+  #:use-module (gnu packages pciutils)
+  #:use-module (gnu packages pkg-config)
+  #:use-module (gnu packages pulseaudio)
+  #:use-module (gnu packages python)
+  #:use-module (gnu packages python-web)
+  #:use-module (gnu packages regex)
+  #:use-module (gnu packages serialization)
+  #:use-module (gnu packages speech)
+  #:use-module (gnu packages tls)
+  #:use-module (gnu packages valgrind)
+  #:use-module (gnu packages video)
+  #:use-module (gnu packages xiph)
+  #:use-module (gnu packages xml)
+  #:use-module (gnu packages xdisorg)
+  #:use-module (gnu packages xorg))
+
+(define (chromium-patch-file-name pathspec)
+  (let ((patch-name (basename pathspec)))
+    (if (string-prefix? "chromium-" patch-name)
+        patch-name
+        (string-append "chromium-" patch-name))))
+
+;; https://salsa.debian.org/chromium-team/chromium/tree/master/debian/patc=
hes
+(define (debian-patch pathspec revision hash)
+  (origin
+    (method url-fetch)
+    (uri (string-append
+          "https://salsa.debian.org/chromium-team/chromium/raw/"
+          revision "/debian/patches/" pathspec))
+    (sha256 (base32 hash))
+    (file-name (chromium-patch-file-name pathspec))))
+
+;; https://gitweb.gentoo.org/repo/gentoo.git/tree/www-client/chromium/files
+(define (gentoo-patch pathspec revision hash)
+  (origin
+    (method url-fetch)
+    (uri (string-append
+          "https://gitweb.gentoo.org/repo/gentoo.git/plain/www-client"
+          "/chromium/files/" pathspec "?id=3D" revision))
+    (sha256 (base32 hash))
+    (file-name (chromium-patch-file-name pathspec))))
+
+;; https://github.com/gcarq/inox-patchset
+(define (inox-patch pathspec revision hash)
+  (origin
+    (method url-fetch)
+    (uri (string-append "https://raw.githubusercontent.com/gcarq/inox-patc=
hset/"
+                        revision "/" pathspec))
+    (sha256 (base32 hash))
+    (file-name (chromium-patch-file-name pathspec))))
+
+;; https://github.com/Eloston/ungoogled-chromium
+(define (ungoogled-patch pathspec revision hash)
+  (origin
+    (method url-fetch)
+    (uri (string-append "https://raw.githubusercontent.com/Eloston"
+                        "/ungoogled-chromium/" revision "/resources"
+                        "/patches/ungoogled-chromium/" pathspec))
+    (sha256 (base32 hash))
+    (file-name (chromium-patch-file-name pathspec))))
+
+;; XXX: It would be great to have (upstream-patch ...), but the API
+;; at <https://chromium.googlesource.com/chromium/> can only return
+;; base64-encoded patches.
+
+(define %debian-revision "debian/68.0.3440.75-2")
+(define %gentoo-revision "a79be956bb7bbeaca245564ecb4a350b1203ca98")
+(define %inox-revision "8afa26a5ffb2e8ff52ac5b7bbdccc9f09290120e")
+(define %ungoogled-revision "55d1a2442dcd9efc574f6c4fa99804d5b8658e4e")
+
+(define %debian-patches
+  (list
+   ;; Bootstrap "GN" using system NSPR.
+   (debian-patch "system/nspr.patch" %debian-revision
+                 "0xywgsq14xdpfdf0wb5plv5jy2738zbwj7caj2i5g9s5zpdclhsv")
+   ;; Ditto for system libevent.
+   (debian-patch "system/event.patch" %debian-revision
+                 "0cq5kz5yi737vb3k8v67hrr38czqm3mj6g3swh765pmfzvx5inj6")
+   ;; Make PDFium use system OpenJPEG.
+   (debian-patch "system/openjpeg.patch" %debian-revision
+                 "0fxvbfvmimg0ykzhsk3l0kyvhz1fgbys51ldh950106yj6dszsmx")
+   ;; Make "Courgette" use system zlib instead of the bundled lzma.
+   (debian-patch "system/zlib.patch" %debian-revision
+                 "1fmkiw7xrhwadvjxkzpv8j5iih2ws59l3llsdrpapw1vybfyq9nr")
+   ;; Avoid dependency on Chromiums embedded libc++ when bootstrapping.
+   (debian-patch "gn/libcxx.patch" %debian-revision
+                 "02w94h9jd29jyvq09yxl9g31hk8j07qzr7rg23rhibhkn1rvg38x")
+   ;; Avoid dependency on Android tools.
+   (debian-patch "disable/android.patch" %debian-revision
+                 "06kxx1fx9yi52h2fka71i9qqp6jh4r3w890k77nihv8arnabc0nq")
+   ;; Do not show a warning about missing API keys.
+   (debian-patch "disable/google-api-warning.patch" %debian-revision
+                 "0vqi3n8i1vkp2cxmza7c60fl6d03195sax0ahrk1ksa04xjbkkqv")
+   ;; Don't override the home page set in master_preferences.
+   (debian-patch "disable/welcome-page.patch" %debian-revision
+                 "15c6a296mkqnjdqqq90kmapn56rykb7saz4bs16han6by8q07lbx")))
+
+(define %gentoo-patches
+  (list
+   ;; Fix error detecting system ffmpeg.
+   (gentoo-patch "chromium-ffmpeg-r1.patch" %gentoo-revision
+                 "1pivcdmana4qx8sngcdpr858l0qh6bygv7azj66vg021phq5725a")
+   ;; Add missing <string> #include.
+   (gentoo-patch "chromium-cors-string-r0.patch" %gentoo-revision
+                 "075lgl6g8rih21adsr3hf2mm0qm16s4w2h4h1qjh652sl941w57l")))
+
+(define %inox-patches
+  (list
+   ;; Fix build without the "safe browsing" feature.
+   (inox-patch "0001-fix-building-without-safebrowsing.patch" %inox-revisi=
on
+               "0qchqc3i772drx0c8n44yhkx45fgdvd0h325w0qvaqrakzixbmr4")
+   ;; Use sane defaults.  In particular, don't depend on any Google servic=
es.
+   (inox-patch "0006-modify-default-prefs.patch" %inox-revision
+               "0sbvs6l80h8ar8na6065ihqnmcsr1b4zc21jcs2wzkrjlxsgspw6")
+   ;; Recent versions of Chromium may load a remote search engine on the "=
New
+   ;; Tab Page", which causes unnecessary and involuntary network traffic.
+   (inox-patch "0008-restore-classic-ntp.patch" %inox-revision
+               "16z5accrri90s922n1r6nj8rqss3g7f579dwwzkk2hdxbkc9wzyr")
+   ;; Add DuckDuckGo and use it as the default search engine.
+   (inox-patch "0011-add-duckduckgo-search-engine.patch" %inox-revision
+               "0mvw1ax0gw3d252c9b1pwbk0j7ny8z9nsfywcmhj56wm6yksgpkg")
+   ;; Don't start a "Login Wizard" at first launch.
+   (inox-patch "0018-disable-first-run-behaviour.patch" %inox-revision
+               "1y4zsqqf2125jkb1phwy9g5hcbd9xhyv5lr4xcaly66rpdzx2ayb")))
+
+(define %ungoogled-patches
+  (list
+   ;; Disable browser sign-in to prevent leaking data at launch.
+   (ungoogled-patch "disable-signin.patch" %ungoogled-revision
+                    "0a6akb10bzk6z6nhqa211y8rbj0ibdhhg5n92482q9sikavd8hz0"=
)))
+
+(define opus+custom
+  (package (inherit opus)
+           (name "opus+custom")
+           (arguments
+            (substitute-keyword-arguments (package-arguments opus)
+              ((#:configure-flags flags ''())
+               ;; Opus Custom is an optional extension of the Opus
+               ;; specification that allows for unsupported frame
+               ;; sizes.  Chromium requires that this is enabled.
+               `(cons "--enable-custom-modes"
+                      ,flags))))))
+
+(define libvpx/chromium
+  ;; Chromium 66 and later requires an unreleased libvpx, so we take the
+  ;; commit from "third_party/libvpx/README.chromium" in the tarball.
+  ;; XXX: Might as well reuse Chromium source.
+  (let ((version (package-version libvpx))
+        (commit "e27a331778c4c99ec37262ea786a3b4cc2a491ac")
+        (revision "0"))
+    (package
+      (inherit libvpx)
+      (name "libvpx-chromium")
+      (version (git-version version revision commit))
+      (source (origin
+                (method git-fetch)
+                (uri (git-reference
+                      (url "https://chromium.googlesource.com/webm/libvpx")
+                      (commit commit)))
+                (file-name (git-file-name name version))
+                (sha256
+                 (base32
+                  "03a0443dnfn6l2v19qpw7p7k29v98c5b5hl4br93czgq0wi29m1g"))=
)))))
+
+(define-public chromium
+  (package
+    (name "chromium")
+    (version "68.0.3440.84")
+    (synopsis "Graphical web browser")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "https://commondatastorage.googleapis.co=
m"
+                                  "/chromium-browser-official/chromium-"
+                                  version ".tar.xz"))
+              (sha256
+               (base32
+                "1nf9xha7ncnh8g1g4c8hzk03f8ya7nd0xzwij9zs7n0qmrkx2c8h"))
+              (patches (append %debian-patches
+                               %gentoo-patches
+                               %inox-patches
+                               %ungoogled-patches
+                               (search-patches "chromium-gcc-unique-ptr.pa=
tch"
+                                               "chromium-remove-default-hi=
story.patch")))
+              (modules '((srfi srfi-1)
+                         (srfi srfi-26)
+                         (ice-9 ftw)
+                         (ice-9 match)
+                         (ice-9 regex)
+                         (guix build utils)))
+              (snippet
+               '(begin
+                  (let ((preserved-club
+                         (map
+                          (lambda (path)
+                            ;; Prepend paths with "./" for comparison with=
 ftw.
+                            (string-append "./" path))
+                          (list
+                           "base/third_party/dmg_fp"
+                           "base/third_party/dynamic_annotations"
+                           "base/third_party/icu"
+                           "base/third_party/superfasthash"
+                           "base/third_party/symbolize"
+                           "base/third_party/xdg_mime"
+                           "base/third_party/xdg_user_dirs"
+                           "chrome/third_party/mozilla_security_manager"
+                           "courgette/third_party/bsdiff"
+                           "courgette/third_party/divsufsort"
+                           "net/third_party/http2"
+                           "net/third_party/mozilla_security_manager"
+                           "net/third_party/nss"
+                           "net/third_party/spdy"
+                           "net/third_party/quic"
+                           "third_party/adobe/flash/flapper_version.h"
+                           ;; FIXME: This is used in:
+                           ;; * ui/webui/resources/js/analytics.js
+                           ;; * ui/file_manager/
+                           "third_party/analytics"
+                           "third_party/angle"
+                           "third_party/angle/src/common/third_party/base"
+                           "third_party/angle/src/common/third_party/smhas=
her"
+                           "third_party/angle/src/third_party/compiler"
+                           "third_party/angle/src/third_party/libXNVCtrl"
+                           "third_party/angle/src/third_party/trace_event"
+                           "third_party/angle/third_party/glslang"
+                           "third_party/angle/third_party/spirv-headers"
+                           "third_party/angle/third_party/spirv-tools"
+                           "third_party/angle/third_party/vulkan-validatio=
n-layers"
+                           "third_party/apple_apsl" ;XXX add APSL2.0 licen=
se
+                           "third_party/blink"
+                           "third_party/boringssl"
+                           "third_party/boringssl/src/third_party/fiat"
+                           "third_party/breakpad"
+                           "third_party/brotli"
+                           "third_party/cacheinvalidation"
+                           "third_party/catapult"
+                           "third_party/catapult/common/py_vulcanize/third=
_party/rcssmin"
+                           "third_party/catapult/common/py_vulcanize/third=
_party/rjsmin"
+                           "third_party/catapult/third_party/polymer"
+                           "third_party/catapult/tracing/third_party/d3"
+                           "third_party/catapult/tracing/third_party/gl-ma=
trix"
+                           "third_party/catapult/tracing/third_party/jszip"
+                           "third_party/catapult/tracing/third_party/mannw=
hitneyu"
+                           "third_party/catapult/tracing/third_party/oboe"
+                           "third_party/catapult/tracing/third_party/pako"
+                           "third_party/ced"
+                           "third_party/cld_3"
+                           "third_party/crashpad"
+                           (string-append "third_party/crashpad/crashpad/"
+                                          "third_party/zlib/zlib_crashpad.=
h")
+                           "third_party/crc32c"
+                           "third_party/cros_system_api"
+                           "third_party/dom_distiller_js"
+                           "third_party/fips181"
+                           "third_party/flatbuffers"
+                           "third_party/glslang-angle"
+                           "third_party/google_input_tools"
+                           "third_party/google_input_tools/third_party/clo=
sure_library"
+                           (string-append "third_party/google_input_tools/=
third_party"
+                                          "/closure_library/third_party/cl=
osure")
+                           "third_party/googletest"
+                           "third_party/hunspell"
+                           "third_party/iccjpeg"
+                           "third_party/inspector_protocol"
+                           "third_party/jinja2"
+                           "third_party/jstemplate"
+                           "third_party/khronos"
+                           "third_party/leveldatabase"
+                           "third_party/libXNVCtrl"
+                           "third_party/libaddressinput"
+                           "third_party/libaom"
+                           "third_party/libjingle_xmpp"
+                           "third_party/libphonenumber"
+                           "third_party/libsecret" ;FIXME: needs pkg-confi=
g support.
+                           "third_party/libsrtp"
+                           "third_party/libsync"   ;TODO: package
+                           "third_party/libudev"
+                           "third_party/libwebm"
+                           "third_party/libxml"
+                           "third_party/libyuv"
+                           "third_party/lss"
+                           "third_party/markupsafe"
+                           "third_party/mesa"
+                           "third_party/metrics_proto"
+                           "third_party/modp_b64"
+                           "third_party/node"
+                           (string-append "third_party/node/node_modules/"
+                                          "polymer-bundler/lib/third_party=
/UglifyJS2")
+                           "third_party/ots"
+                           ;; TODO: Build as extension.
+                           "third_party/pdfium"
+                           "third_party/pdfium/third_party/agg23"
+                           "third_party/pdfium/third_party/base"
+                           "third_party/pdfium/third_party/bigint"
+                           "third_party/pdfium/third_party/skia_shared"
+                           (string-append "third_party/pdfium/third_party/=
freetype"
+                                          "/include/pstables.h")
+                           "third_party/perfetto"
+                           "third_party/ply"
+                           "third_party/polymer"
+                           "third_party/protobuf"
+                           "third_party/protobuf/third_party/six"
+                           "third_party/pyjson5"
+                           "third_party/qcms"
+                           "third_party/rnnoise"
+                           "third_party/sfntly"
+                           "third_party/skia"
+                           "third_party/skia/third_party/skcms"
+                           "third_party/skia/third_party/vulkan"
+                           "third_party/skia/third_party/gif"
+                           "third_party/smhasher"
+                           "third_party/speech-dispatcher"
+                           "third_party/sqlite"
+                           "third_party/swiftshader"
+                           "third_party/swiftshader/third_party/llvm-subze=
ro"
+                           "third_party/swiftshader/third_party/subzero"
+                           "third_party/s2cellid"
+                           "third_party/usb_ids"
+                           "third_party/usrsctp"
+                           "third_party/WebKit"
+                           "third_party/web-animations-js"
+                           "third_party/webrtc"
+                           "third_party/webrtc_overrides"
+                           "third_party/widevine/cdm/widevine_cdm_version.=
h"
+                           "third_party/widevine/cdm/widevine_cdm_common.h"
+                           "third_party/woff2"
+                           "third_party/xdg-utils"
+                           "third_party/yasm/run_yasm.py"
+                           "third_party/zlib/google"
+                           "url/third_party/mozilla"
+                           "v8/src/third_party/utf8-decoder"
+                           "v8/src/third_party/valgrind"
+                           "v8/third_party/antlr4"
+                           "v8/third_party/inspector_protocol"))))
+
+                    (define (empty? dir)
+                      (equal? (scandir dir) '("." "..")))
+
+                    (define (third_party? file)
+                      (if (string-contains file "third_party/")
+                          #t
+                          #f))
+
+                    (define (useless? file)
+                      (any (cute string-suffix? <> file)
+                           '(".tar.gz" ".zip" ".exe" ".jar")))
+
+                    (define (parents child)
+                      (let ((lst (reverse (string-split child #\/))))
+                        (let loop ((hierarchy lst)
+                                   (result '()))
+                          (if (or (null? hierarchy)
+                                  (and (not (null? result))
+                                       (string-suffix? "third_party" (car =
result))))
+                              result
+                              (loop (cdr hierarchy)
+                                    (cons (string-join (reverse hierarchy)=
 "/")
+                                          result))))))
+
+                    (define (delete-unwanted-files child stat flag base le=
vel)
+                      (let ((protected (make-regexp "\\.(gn|gyp)i?$")))
+                        (match flag
+                          ((or 'regular 'symlink 'stale-symlink)
+                           (when (third_party? child)
+                             (unless (or (member child preserved-club)
+                                         (any (cute member <> preserved-cl=
ub)
+                                              (parents child))
+                                         (regexp-exec protected child))
+                               (format (current-error-port) "deleting ~s~%=
" child)
+                               (delete-file child)))
+                           (when (and (useless? child) (file-exists? child=
))
+                             (delete-file child))
+                           #t)
+                          ('directory-processed
+                           (when (empty? child)
+                             (rmdir child))
+                           #t)
+                          (_ #t))))
+
+                    (nftw "." delete-unwanted-files 'depth 'physical)
+
+                    ;; Assert that each listed item is present to catch re=
movals.
+                    (for-each (lambda (third-party)
+                                (unless (file-exists? third-party)
+                                  (error (format #f "~s does not exist!" t=
hird-party))))
+                              preserved-club)
+
+                    ;; Replace "GN" files from third_party with shims for
+                    ;; building against system libraries.  Keep this list =
in
+                    ;; sync with "build/linux/unbundle/replace_gn_files.py=
".
+                    (for-each (lambda (pair)
+                                (let ((source (string-append
+                                               "build/linux/unbundle/" (ca=
r pair)))
+                                      (dest (cdr pair)))
+                                  (copy-file source dest)))
+                              (list
+                               '("ffmpeg.gn" . "third_party/ffmpeg/BUILD.g=
n")
+                               '("flac.gn" . "third_party/flac/BUILD.gn")
+                               '("fontconfig.gn" . "third_party/fontconfig=
/BUILD.gn")
+                               '("freetype.gn" . "build/config/freetype/fr=
eetype.gni")
+                               '("harfbuzz-ng.gn" .
+                                 "third_party/harfbuzz-ng/harfbuzz.gni")
+                               '("icu.gn" . "third_party/icu/BUILD.gn")
+                               '("libdrm.gn" . "third_party/libdrm/BUILD.g=
n")
+                               '("libevent.gn" . "base/third_party/libeven=
t/BUILD.gn")
+                               '("libjpeg.gn" . "third_party/libjpeg.gni")
+                               '("libpng.gn" . "third_party/libpng/BUILD.g=
n")
+                               '("libvpx.gn" . "third_party/libvpx/BUILD.g=
n")
+                               '("libwebp.gn" . "third_party/libwebp/BUILD=
.gn")
+                               '("libxml.gn" . "third_party/libxml/BUILD.g=
n")
+                               '("libxslt.gn" . "third_party/libxslt/BUILD=
.gn")
+                               '("openh264.gn" . "third_party/openh264/BUI=
LD.gn")
+                               '("opus.gn" . "third_party/opus/BUILD.gn")
+                               '("re2.gn" . "third_party/re2/BUILD.gn")
+                               '("snappy.gn" . "third_party/snappy/BUILD.g=
n")
+                               '("yasm.gn" . "third_party/yasm/yasm_assemb=
le.gni")
+                               '("zlib.gn" . "third_party/zlib/BUILD.gn")))
+                    #t)))))
+    (build-system gnu-build-system)
+    (arguments
+     `(#:tests? #f
+       ;; FIXME: There is a "gn" option specifically for setting -rpath, b=
ut
+       ;; it overrides the RUNPATH set by the linker.
+       #:validate-runpath? #f
+       #:modules ((guix build gnu-build-system)
+                  (guix build utils)
+                  (ice-9 ftw)
+                  (ice-9 regex)
+                  (srfi srfi-26))
+       #:configure-flags
+       ;; See tools/gn/docs/cookbook.md and
+       ;; https://www.chromium.org/developers/gn-build-configuration
+       ;; for usage.  Run "./gn args . --list" in the Release
+       ;; directory for an exhaustive list of supported flags.
+       ;; (Note: The 'configure' phase will do that for you.)
+       (list "is_debug=3Dfalse"
+             "use_gold=3Dfalse"
+             "use_lld=3Dfalse"
+             "linux_use_bundled_binutils=3Dfalse"
+             "use_custom_libcxx=3Dfalse"
+             "use_sysroot=3Dfalse"
+             "enable_precompiled_headers=3Dfalse"
+             "goma_dir=3D\"\""
+             "enable_nacl=3Dfalse"
+             "enable_nacl_nonsfi=3Dfalse"
+             "use_allocator=3D\"none\""   ;don't use tcmalloc
+             "override_build_date=3D\"01 01 2000 05:00:00\""
+             "use_unofficial_version_number=3Dfalse"
+
+             ;; Disable "safe browsing", which pulls in a dependency on
+             ;; the nonfree "unrar" program (as of m66).
+             "safe_browsing_mode=3D0"
+
+             ;; Define a custom toolchain that simply looks up CC, AR and
+             ;; friends from the environment.
+             "custom_toolchain=3D\"//build/toolchain/linux/unbundle:defaul=
t\""
+             "host_toolchain=3D\"//build/toolchain/linux/unbundle:default\=
""
+
+             ;; Don't assume it's clang.
+             "is_clang=3Dfalse"
+
+             ;; Optimize for building everything at once, as opposed to
+             ;; incrementally for development.  See "docs/jumbo.md".
+             "use_jumbo_build=3Dtrue"
+
+             ;; Disable debugging features to save space.
+             "symbol_level=3D0"
+             "remove_webcore_debug_symbols=3Dtrue"
+             "enable_iterator_debugging=3Dfalse"
+
+             ;; Some of the unbundled libraries throws deprecation
+             ;; warnings, etc.  Ignore it.
+             "treat_warnings_as_errors=3Dfalse"
+
+             ;; Don't add any API keys.  End users can set them in the
+             ;; environment if desired.  See
+             ;; <https://www.chromium.org/developers/how-tos/api-keys>.
+             "use_official_google_api_keys=3Dfalse"
+
+             ;; Disable "field trials".
+             "fieldtrial_testing_like_official_build=3Dtrue"
+
+             ;; Disable Chrome Remote Desktop (aka Chromoting).
+             "enable_remoting=3Dfalse"
+
+             ;; Use system libraries where possible.
+             "use_system_freetype=3Dtrue"
+             "use_system_harfbuzz=3Dtrue"
+             "use_system_lcms2=3Dtrue"
+             "use_system_libjpeg=3Dtrue"
+             "use_system_libpng=3Dtrue"
+             "use_system_zlib=3Dtrue"
+
+             "use_gnome_keyring=3Dfalse"  ;deprecated by libsecret
+             "use_gtk3=3Dtrue"
+             "use_openh264=3Dtrue"
+             "use_xkbcommon=3Dtrue"
+             "use_pulseaudio=3Dtrue"
+             "link_pulseaudio=3Dtrue"
+
+             ;; Don't arbitrarily restrict formats supported by system ffm=
peg.
+             "proprietary_codecs=3Dtrue"
+             "ffmpeg_branding=3D\"Chrome\""
+
+             ;; WebRTC stuff.
+             "rtc_use_h264=3Dtrue"
+             ;; Don't use bundled sources.
+             "rtc_build_json=3Dfalse"
+             "rtc_build_libevent=3Dfalse"
+             "rtc_build_libvpx=3Dfalse"
+             "rtc_build_opus=3Dfalse"
+             "rtc_build_ssl=3Dfalse"
+
+             "rtc_build_libsrtp=3Dtrue"   ;FIXME: fails to find headers
+             "rtc_build_usrsctp=3Dtrue"   ;TODO: package this
+             (string-append "rtc_jsoncpp_root=3D\""
+                            (assoc-ref %build-inputs "jsoncpp")
+                            "/include/jsoncpp/json\"")
+             (string-append "rtc_ssl_root=3D\""
+                            (assoc-ref %build-inputs "openssl")
+                            "/include/openssl\""))
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'patch-stuff
+           (lambda* (#:key inputs #:allow-other-keys)
+             (substitute* "printing/cups_config_helper.py"
+               (("cups_config =3D.*")
+                (string-append "cups_config =3D '" (assoc-ref inputs "cups=
")
+                               "/bin/cups-config'\n")))
+
+             (substitute*
+                 '("base/process/launch_posix.cc"
+                   "base/third_party/dynamic_annotations/dynamic_annotatio=
ns.c"
+                   "sandbox/linux/seccomp-bpf/sandbox_bpf.cc"
+                   "sandbox/linux/services/credentials.cc"
+                   "sandbox/linux/services/namespace_utils.cc"
+                   "sandbox/linux/services/syscall_wrappers.cc"
+                   "sandbox/linux/syscall_broker/broker_host.cc")
+               (("include \"base/third_party/valgrind/") "include \"valgri=
nd/"))
+
+             (for-each (lambda (file)
+                         (substitute* file
+                           ;; Fix opus include path.
+                           ;; Do not substitute opus_private.h.
+                           (("#include \"opus\\.h\"")
+                            "#include \"opus/opus.h\"")
+                           (("#include \"opus_custom\\.h\"")
+                            "#include \"opus/opus_custom.h\"")
+                           (("#include \"opus_defines\\.h\"")
+                            "#include \"opus/opus_defines.h\"")
+                           (("#include \"opus_multistream\\.h\"")
+                            "#include \"opus/opus_multistream.h\"")
+                           (("#include \"opus_types\\.h\"")
+                            "#include \"opus/opus_types.h\"")))
+                       (find-files (string-append "third_party/webrtc/modu=
les"
+                                                  "/audio_coding/codecs/op=
us")))
+
+             (substitute* "chrome/common/chrome_paths.cc"
+               (("/usr/share/chromium/extensions")
+                ;; TODO: Add ~/.guix-profile.
+                "/run/current-system/profile/share/chromium/extensions"))
+
+             (substitute*
+                 ;; XXX: Probably not needed for M69.
+                 "third_party/blink/renderer/platform/image-encoders/image=
_encoder.h"
+               (("#include \"third_party/libjpeg/") "#include \"")
+               (("#include \"third_party/libwebp/src/") "#include \""))
+
+             (substitute*
+                 "third_party/breakpad/breakpad/src/common/linux/libcurl_w=
rapper.h"
+               (("include \"third_party/curl") "include \"curl"))
+             (substitute* "media/base/decode_capabilities.cc"
+               (("third_party/libvpx/source/libvpx/") ""))
+
+             #t))
+         (add-before 'configure 'prepare-build-environment
+           (lambda* (#:key inputs #:allow-other-keys)
+
+             ;; Make sure the right build tools are used.
+             (setenv "AR" "ar") (setenv "NM" "nm")
+             (setenv "CC" "gcc") (setenv "CXX" "g++")
+
+             ;; Work around <https://bugs.gnu.org/30756>.
+             (unsetenv "C_INCLUDE_PATH")
+             (unsetenv "CPLUS_INCLUDE_PATH")
+
+             ;; TODO: pre-compile instead. Avoids a race condition.
+             (setenv "PYTHONDONTWRITEBYTECODE" "1")
+
+             ;; XXX: How portable is this.
+             (mkdir-p "third_party/node/linux/node-linux-x64")
+             (symlink (string-append (assoc-ref inputs "node") "/bin")
+                      "third_party/node/linux/node-linux-x64/bin")
+
+             #t))
+         (add-after 'prepare-build-environment 'bootstrap-gn
+           (lambda _
+             (invoke "python" "tools/gn/bootstrap/bootstrap.py" "-s" "-v")=
))
+         (replace 'configure
+           (lambda* (#:key configure-flags #:allow-other-keys)
+             (let ((args (string-join configure-flags " ")))
+               (with-directory-excursion "out/Release"
+                 ;; Generate ninja build files.
+                 (invoke "./gn" "gen" "."
+                         (string-append "--args=3D" args))
+
+                 ;; Print the full list of supported arguments as well as
+                 ;; their current status for convenience.
+                 (format #t "Dumping configure flags...\n")
+                 (invoke "./gn" "args" "." "--list")))))
+         (replace 'build
+           (lambda* (#:key outputs #:allow-other-keys)
+             (invoke "ninja" "-C" "out/Release"
+                     "-j" (number->string (parallel-job-count))
+                     "chrome")))
+         (replace 'install
+           (lambda* (#:key inputs outputs #:allow-other-keys)
+             (let* ((out            (assoc-ref outputs "out"))
+                    (bin            (string-append out "/bin"))
+                    (exe            (string-append bin "/chromium"))
+                    (lib            (string-append out "/lib"))
+                    (man            (string-append out "/share/man/man1"))
+                    (applications   (string-append out "/share/application=
s"))
+                    (install-regexp (make-regexp "\\.(bin|pak)$"))
+                    (locales        (string-append lib "/locales"))
+                    (resources      (string-append lib "/resources"))
+                    (preferences    (assoc-ref inputs "master-preferences"=
))
+                    (gtk+           (assoc-ref inputs "gtk+"))
+                    (mesa           (assoc-ref inputs "mesa"))
+                    (nss            (assoc-ref inputs "nss"))
+                    (udev           (assoc-ref inputs "udev"))
+                    (sh             (which "sh")))
+
+               (substitute* '("chrome/app/resources/manpage.1.in"
+                              "chrome/installer/linux/common/desktop.templ=
ate")
+                 (("@@MENUNAME@@") "Chromium")
+                 (("@@PACKAGE@@") "chromium")
+                 (("/usr/bin/@@USR_BIN_SYMLINK_NAME@@") exe))
+
+               (mkdir-p man)
+               (copy-file "chrome/app/resources/manpage.1.in"
+                          (string-append man "/chromium.1"))
+
+               (mkdir-p applications)
+               (copy-file "chrome/installer/linux/common/desktop.template"
+                          (string-append applications "/chromium.desktop"))
+
+               (mkdir-p lib)
+               (copy-file preferences (string-append lib "/master_preferen=
ces"))
+
+               (with-directory-excursion "out/Release"
+                 (for-each (lambda (file)
+                             (install-file file lib))
+                           (scandir "." (cut regexp-exec install-regexp <>=
)))
+                 (copy-file "chrome" (string-append lib "/chromium"))
+
+                 ;; TODO: Install icons from "../../chrome/app/themes" into
+                 ;; "out/share/icons/hicolor/$size".
+                 (install-file
+                  "product_logo_48.png"
+                  (string-append out "/share/icons/48x48/chromium.png"))
+
+                 (copy-recursively "locales" locales)
+                 (copy-recursively "resources" resources)
+
+                 (mkdir-p bin)
+                 ;; Add a thin wrapper to prevent the user from inadverten=
tly
+                 ;; installing non-free software through the Web Store.
+                 ;; TODO: Discover extensions from the profile and pass
+                 ;; something like "--disable-extensions-except=3D...".
+                 (call-with-output-file exe
+                   (lambda (port)
+                     (format port
+                             "#!~a~@
+                             if [ -z \"$CHROMIUM_ENABLE_WEB_STORE\" ]~@
+                             then~@
+                               CHROMIUM_FLAGS=3D\" \\~@
+                                 --disable-background-networking \\~@
+                                 --disable-extensions \\~@
+                               \"~@
+                             fi~@
+                             exec ~a $CHROMIUM_FLAGS \"$@\"~%"
+                             sh (string-append lib "/chromium"))))
+                 (chmod exe #o755)
+
+                 (wrap-program exe
+                   ;; TODO: Get these in RUNPATH.
+                   `("LD_LIBRARY_PATH" ":" prefix
+                     (,(string-append lib ":" nss "/lib/nss:" gtk+ "/lib:"
+                                      mesa "/lib:" udev "/lib")))
+                   ;; Avoid file manager crash.  See <https://bugs.gnu.org=
/26593>.
+                   `("XDG_DATA_DIRS" ":" prefix (,(string-append gtk+ "/sh=
are"))))
+                 #t)))))))
+    (native-inputs
+     `(("bison" ,bison)
+       ("gcc" ,gcc-8)                        ;a recent compiler is required
+       ("gperf" ,gperf)
+       ("ninja" ,ninja)
+       ("node" ,node)
+       ("pkg-config" ,pkg-config)
+       ("master-preferences" ,(local-file "chromium-master-preferences.jso=
n"))
+       ("which" ,which)
+       ("yasm" ,yasm)
+
+       ("python-beautifulsoup4" ,python2-beautifulsoup4)
+       ("python-html5lib" ,python2-html5lib)
+       ("python" ,python-2)))
+    (inputs
+     `(("alsa-lib" ,alsa-lib)
+       ("atk" ,atk)
+       ("cups" ,cups)
+       ("curl" ,curl)
+       ("dbus" ,dbus)
+       ("dbus-glib" ,dbus-glib)
+       ("expat" ,expat)
+       ("flac" ,flac)
+       ("ffmpeg" ,ffmpeg)
+       ("fontconfig" ,fontconfig)
+       ("freetype" ,freetype)
+       ("gdk-pixbuf" ,gdk-pixbuf)
+       ("glib" ,glib)
+       ("gtk+" ,gtk+)
+       ("harfbuzz" ,harfbuzz)
+       ("icu4c" ,icu4c)
+       ("jsoncpp" ,jsoncpp)
+       ("lcms" ,lcms)
+       ("libevent" ,libevent)
+       ("libffi" ,libffi)
+       ("libjpeg-turbo" ,libjpeg-turbo)
+       ("libpng" ,libpng)
+       ;;("libsrtp" ,libsrtp)
+       ("libvpx" ,libvpx/chromium)
+       ("libwebp" ,libwebp)
+       ("libx11" ,libx11)
+       ("libxcb" ,libxcb)
+       ("libxcomposite" ,libxcomposite)
+       ("libxcursor" ,libxcursor)
+       ("libxdamage" ,libxdamage)
+       ("libxext" ,libxext)
+       ("libxfixes" ,libxfixes)
+       ("libxi" ,libxi)
+       ("libxkbcommon" ,libxkbcommon)
+       ("libxml2" ,libxml2)
+       ("libxrandr" ,libxrandr)
+       ("libxrender" ,libxrender)
+       ("libxscrnsaver" ,libxscrnsaver)
+       ("libxslt" ,libxslt)
+       ("libxtst" ,libxtst)
+       ("mesa" ,mesa)
+       ("minizip" ,minizip)
+       ("mit-krb5" ,mit-krb5)
+       ("nss" ,nss)
+       ("openh264" ,openh264)
+       ("openjpeg" ,openjpeg)                          ;PDFium only
+       ("openssl" ,openssl)
+       ("opus" ,opus+custom)
+       ("pango" ,pango)
+       ("pciutils" ,pciutils)
+       ("pulseaudio" ,pulseaudio)
+       ("re2" ,re2)
+       ("snappy" ,snappy)
+       ("speech-dispatcher" ,speech-dispatcher)
+       ("udev" ,eudev)
+       ("valgrind" ,valgrind)))
+    (home-page "https://www.chromium.org/")
+    (description
+     "Chromium is a web browser designed for speed and security.  This
+version incorporates features from
+@url{https://github.com/gcarq/inox-patchset,the Inox patchset} and
+@url{https://github.com/Eloston/ungoogled-chromium,ungoogled-chromium} in
+order to protect the users privacy.")
+    ;; Chromium is developed as BSD-3, but bundles a large number of third=
-party
+    ;; components with other licenses.  For full information, see chrome:/=
/credits.
+    (license (list license:bsd-3
+                   license:bsd-2
+                   license:expat
+                   license:asl2.0
+                   license:mpl2.0
+                   license:public-domain
+                   license:lgpl2.1+))))
diff --git a/gnu/packages/patches/chromium-gcc-unique-ptr.patch b/gnu/packa=
ges/patches/chromium-gcc-unique-ptr.patch
new file mode 100644
index 000000000..9c9a9fc09
=2D-- /dev/null
+++ b/gnu/packages/patches/chromium-gcc-unique-ptr.patch
@@ -0,0 +1,33 @@
+Help GCC resolve <UrlIndex>.
+
+Taken from upstream:
+https://chromium.googlesource.com/chromium/src/+/56cb5f7da1025f6db869e840e=
d34d3b98b9ab899
+
+diff --git a/components/bookmarks/browser/bookmark_storage.cc b/components=
/bookmarks/browser/bookmark_storage.cc
+index 1633ba1..3ae0c62 100644
+--- a/components/bookmarks/browser/bookmark_storage.cc
++++ b/components/bookmarks/browser/bookmark_storage.cc
+@@ -158,6 +158,10 @@
+   url_index_ =3D std::make_unique<UrlIndex>(std::move(root_node_));
+ }
+=20
++std::unique_ptr<UrlIndex> BookmarkLoadDetails::owned_url_index() {
++  return std::move(url_index_);
++}
++
+ BookmarkPermanentNode* BookmarkLoadDetails::CreatePermanentNode(
+     BookmarkClient* client,
+     BookmarkNode::Type type) {
+diff --git a/components/bookmarks/browser/bookmark_storage.h b/components/=
bookmarks/browser/bookmark_storage.h
+index 08df5bb..0a1b1a1 100644
+--- a/components/bookmarks/browser/bookmark_storage.h
++++ b/components/bookmarks/browser/bookmark_storage.h
+@@ -104,7 +104,7 @@
+   bool ids_reassigned() const { return ids_reassigned_; }
+=20
+   void CreateUrlIndex();
+-  std::unique_ptr<UrlIndex> owned_url_index() { return std::move(url_inde=
x_); }
++  std::unique_ptr<UrlIndex> owned_url_index();
+=20
+  private:
+   // Creates one of the possible permanent nodes (bookmark bar node, othe=
r node
diff --git a/gnu/packages/patches/chromium-remove-default-history.patch b/g=
nu/packages/patches/chromium-remove-default-history.patch
new file mode 100644
index 000000000..42363805b
=2D-- /dev/null
+++ b/gnu/packages/patches/chromium-remove-default-history.patch
@@ -0,0 +1,13 @@
+Don't pre-populate the New Tab Page for new profiles.
+
+--- a/chrome/browser/history/top_sites_factory.cc
++++ b/chrome/browser/history/top_sites_factory.cc
+@@ -74,7 +74,7 @@
+=20
+ void InitializePrepopulatedPageList(
+     history::PrepopulatedPageList* prepopulated_pages) {
+-#if !defined(OS_ANDROID)
++#if 0
+   DCHECK(prepopulated_pages);
+   prepopulated_pages->reserve(arraysize(kRawPrepopulatedPages));
+   for (size_t i =3D 0; i < arraysize(kRawPrepopulatedPages); ++i) {
=2D-=20
2.18.0


--=-=-=--

--==-=-=
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQEzBAEBCgAdFiEEu7At3yzq9qgNHeZDoqBt8qM6VPoFAltm9dMACgkQoqBt8qM6
VPqK3AgAj9raw4PmBXnyC+2pmJf//9JtIA+7EDmpfs56Z/bXZ4HXVAZ1dZtm/IQA
ybxiqBLAOmFnTWk/Msy5HcsSEp3hjl0WbF4JEzpYqgLQMk75REZjKwSLsJFbhl04
LgtXzfmK89YpHD3jQFbaopGniowA9n0EpjnLXBggbwm2LthkG7uk9G35dz2xJd6U
NjO6w+3p4h2rcZHcMy9qie/kYZzidnL4bDoivZ7CJXE/2MXTKfcIiOUDBWLT2Hix
FMDBCimSdoEHPaVG4f0JWWsPa072SL0rUfKPh0Afg2OtzhaRJgJ5nCnu5u0nqH9d
4FF4LLxJi89nSr4uimRCUaAdcg5AWw==
=G8kc
-----END PGP SIGNATURE-----
--==-=-=--




Information forwarded to guix-patches@HIDDEN:
bug#28004; Package guix-patches. Full text available.

Message received at 28004 <at> debbugs.gnu.org:


Received: (at 28004) by debbugs.gnu.org; 25 Jul 2018 08:07:30 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed Jul 25 04:07:30 2018
Received: from localhost ([127.0.0.1]:56087 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1fiEpW-0003E6-3Y
	for submit <at> debbugs.gnu.org; Wed, 25 Jul 2018 04:07:30 -0400
Received: from aibo.runbox.com ([91.220.196.211]:35476)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <ng0@HIDDEN>) id 1fiEpU-0003Dy-G3
 for 28004 <at> debbugs.gnu.org; Wed, 25 Jul 2018 04:07:29 -0400
Received: from [10.9.9.210] (helo=mailfront10.runbox.com)
 by mailtransmit02.runbox with esmtp (Exim 4.86_2)
 (envelope-from <ng0@HIDDEN>)
 id 1fiEpS-000097-W8; Wed, 25 Jul 2018 10:07:27 +0200
Received: by mailfront10.runbox.com with esmtpsa (uid:892961 )
 (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82)
 id 1fiEpH-0002fh-7x; Wed, 25 Jul 2018 10:07:15 +0200
Date: Wed, 25 Jul 2018 08:08:00 +0000
From: ng0 <ng0@HIDDEN>
To: Marius Bakke <mbakke@HIDDEN>
Subject: Re: [bug#28004] Chromium
Message-ID: <20180725080800.stqijlny6om6powe@abyayala>
References: <87fu75aar5.fsf@HIDDEN> <874lnkr0vf.fsf@HIDDEN>
 <87vaejvclc.fsf@HIDDEN>
 <20180226200133.zsnahblbgzovrtmu@abyayala>
 <87muzvv7ku.fsf@HIDDEN> <20180226234144.032af030@alma-ubu>
 <87woyxt3nz.fsf@HIDDEN>
 <20180316173044.dctlydfij7smndxd@abyayala>
 <87h8pfc3tr.fsf@HIDDEN>
 <20180316175225.7jf4k2qaciyxnepp@abyayala>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <20180316175225.7jf4k2qaciyxnepp@abyayala>
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 28004
Cc: 28004 <at> debbugs.gnu.org, ng0 <ng0@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

Hi Marius,

any chance you had the time to update to a more recent version release
of Chromium?

--ng0




Information forwarded to guix-patches@HIDDEN:
bug#28004; Package guix-patches. Full text available.

Message received at 28004 <at> debbugs.gnu.org:


Received: (at 28004) by debbugs.gnu.org; 4 May 2018 13:02:06 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri May 04 09:02:06 2018
Received: from localhost ([127.0.0.1]:49014 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1fEaLT-000331-Ol
	for submit <at> debbugs.gnu.org; Fri, 04 May 2018 09:02:03 -0400
Received: from static.195.114.201.195.clients.your-server.de
 ([195.201.114.195]:49046 helo=conspiracy.of.n0.is)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <ng0@HIDDEN>) id 1fEaLR-00032s-Al
 for 28004 <at> debbugs.gnu.org; Fri, 04 May 2018 09:01:54 -0400
Received: by conspiracy.of.n0.is (OpenSMTPD) with ESMTPSA id 80e5d3b5
 (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256:NO); 
 Fri, 4 May 2018 13:01:51 +0000 (UTC)
Date: Fri, 4 May 2018 13:02:20 +0000
From: Nils Gillmann <ng0@HIDDEN>
To: Marius Bakke <mbakke@HIDDEN>
Subject: Re: [bug#28004] Chromium 66 + status update
Message-ID: <20180504130220.xmw7vu5uchumrfn6@abyayala>
References: <87y3qvb15k.fsf@HIDDEN> <87po32c47b.fsf@HIDDEN>
 <87po2own4s.fsf@HIDDEN> <87woww8ojw.fsf@HIDDEN>
 <20180503174903.asxoaobk6jy2dgk7@abyayala>
 <87d0ybhb9g.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: multipart/signed; micalg=pgp-sha512;
 protocol="application/pgp-signature"; boundary="yrml2megun3mjypr"
Content-Disposition: inline
In-Reply-To: <87d0ybhb9g.fsf@HIDDEN>
X-Spam-Score: -0.0 (/)
X-Debbugs-Envelope-To: 28004
Cc: Christopher Lemmer Webber <cwebber@HIDDEN>, 28004 <at> debbugs.gnu.org,
 Nils Gillmann <ng0@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)


--yrml2megun3mjypr
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

Marius Bakke transcribed 13K bytes:
> Nils Gillmann <ng0@HIDDEN> writes:
>=20
> > Marius Bakke transcribed 69K bytes:
> >> Christopher Lemmer Webber <cwebber@HIDDEN> writes:
> >>=20
> >> > Hello!  I'd like to speak up in favor of getting Chromium merged into
> >> > Guix master.  As a web developer, sometimes I have to test things
> >> > against multiple browsers.  Having Chromium in GuixSD would help me =
out
> >> > a lot.
> >> >
> >> > It looks like a mountain of hard work has been put into this.  Could=
 we
> >> > get it merged rather than have that work languish?
> >>=20
> >> Hello!
> >>=20
> >> I use this browser a lot, so it's hardly languishing.
> >>=20
> >> There was a recent discussion[0] about the Pale Moon browser, where it
> >> was pointed out that the FSDG[1] requires that any third-party
> >> repositories must be committed to only free software.
> >>=20
> >> [0] https://lists.gnu.org/archive/html/guix-devel/2018-03/msg00319.html
> >> [1] https://www.gnu.org/distros/free-system-distribution-guidelines.ht=
ml#license-rules
> >>=20
> >> Unfortunately there are UI links to the Chrome "Web Store" still.  It's
> >> not possible to install from it without setting the
> >> CHROMIUM_ENABLE_WEB_STORE variable, but I'm not sure if that is
> >> sufficient.  It's unfortunate if an unsuspecting user stumbles into the
> >> Web Store and tries to install something (free or not) and only then
> >> finds out that it does not work.
> >>=20
> >> The other remaining issue is that some data is sent to Google whenever
> >> you start the browser for the first time.  I don't think that's a
> >> blocker, but it's certainly something we should aim to fix.
> >>=20
> >> Attached are updates for 66.  The first is an interdiff from the
> >> previous 65 patch; the other is the full "squashed" patch for
> >> convenience.
> >>=20
> >> New in this version:
> >>=20
> >> * The snippet will now error if a preserved directory is not present.
> >> * Chromium again requires a git revision of libvpx.
> >> * The "safe browsing" feature requires the nonfree "unrar" program(!!),
> >>   as such it has been compiled out.  Luckily "Inox" already had a patch
> >>   to make the thing actually build with that flag disabled.
> >> * Cosmetic rearrangement of patches to follow Debian and Inox patch or=
der.
> >>=20
> >
> >> From a6ce5ebc121f129c3097f1f105b6a4de925b43e9 Mon Sep 17 00:00:00 2001
> >> From: Marius Bakke <mbakke@HIDDEN>
> >> Date: Tue, 17 Apr 2018 03:54:56 +0200
> >> Subject: [PATCH] Chromium 66 update.
> >  >=20
> >
> > Good progress :)
> >
> > However, I'm a friend of bundling patches. Patches you have in a known =
location
> > don't run away, like "addmissingblinktools":
> >
> > Starting download of /gnu/store/1djisy58jqjajbfcrd32vf7hrg9qvzwa-add-mi=
ssing-blink-tools.patch
> > From https://bazaar.launchpad.net/~chromium-team/chromium-browser/bioni=
c-stable/download/head:/addmissingblinktools-20180416203514-02f50sz15c2mn6e=
i-1/add-missing-blink-tools.patch...
> > download failed "https://bazaar.launchpad.net/~chromium-team/chromium-b=
rowser/bionic-stable/download/head:/addmissingblinktools-20180416203514-02f=
50sz15c2mn6ei-1/add-missing-blink-tools.patch" 404 "Not Found"
> >
> > Starting download of /gnu/store/1djisy58jqjajbfcrd32vf7hrg9qvzwa-add-mi=
ssing-blink-tools.patch
> > From http://mirror.hydra.gnu.org/file/add-missing-blink-tools.patch/sha=
256/1im2l1g6g9mangpfphbkg6zxyglbfwbkm5jxv122yxqgm6vxzz6s...
> > download failed "http://mirror.hydra.gnu.org/file/add-missing-blink-too=
ls.patch/sha256/1im2l1g6g9mangpfphbkg6zxyglbfwbkm5jxv122yxqgm6vxzz6s" 404 "=
Not Found"
> >
> > Starting download of /gnu/store/1djisy58jqjajbfcrd32vf7hrg9qvzwa-add-mi=
ssing-blink-tools.patch
> > From http://tarballs.nixos.org/sha256/1im2l1g6g9mangpfphbkg6zxyglbfwbkm=
5jxv122yxqgm6vxzz6s...
> > download failed "http://tarballs.nixos.org/sha256/1im2l1g6g9mangpfphbkg=
6zxyglbfwbkm5jxv122yxqgm6vxzz6s" 404 "Not Found"
> > failed to download "/gnu/store/1djisy58jqjajbfcrd32vf7hrg9qvzwa-add-mis=
sing-blink-tools.patch" from "https://bazaar.launchpad.net/~chromium-team/c=
hromium-browser/bionic-stable/download/head:/addmissingblinktools-201804162=
03514-02f50sz15c2mn6ei-1/add-missing-blink-tools.patch"
> > builder for `/gnu/store/5hbv5vgnla974qiw6kakc28a4k35h96n-add-missing-bl=
ink-tools.patch.drv' failed to produce output path `/gnu/store/1djisy58jqja=
jbfcrd32vf7hrg9qvzwa-add-missing-blink-tools.patch'
> > cannot build derivation `/gnu/store/2z8i7b4l4l0p5b3pj4swdl2pvbdj5q24-ch=
romium-66.0.3359.117.tar.xz.drv': 1 dependencies couldn't be built
> > cannot build derivation `/gnu/store/4fxkp0aa1vr2b9fbl9kw8l8ijw0zrd25-ch=
romium-66.0.3359.117.drv': 1 dependencies couldn't be built
> > guix package: error: build failed: build of `/gnu/store/4fxkp0aa1vr2b9f=
bl9kw8l8ijw0zrd25-chromium-66.0.3359.117.drv' failed
>=20
> Whoops.  I'm not used to constructing stable Bazaar URLs.
>=20
> However this patch is not needed for the latest tarball.
>=20
> Here's a diff to the 66 patch updating to the latest Chromium.  I also
> removed some inputs and third party directories that were not needed.


Nice, thanks.

> diff --git a/gnu/packages/chromium.scm b/gnu/packages/chromium.scm
> index a6f9fec0f..59c90f869 100644
> --- a/gnu/packages/chromium.scm
> +++ b/gnu/packages/chromium.scm
> @@ -31,7 +31,6 @@
>    #:use-module (gnu packages compression)
>    #:use-module (gnu packages cups)
>    #:use-module (gnu packages curl)
> -  #:use-module (gnu packages databases)
>    #:use-module (gnu packages fontutils)
>    #:use-module (gnu packages gcc)
>    #:use-module (gnu packages ghostscript)
> @@ -52,7 +51,6 @@
>    #:use-module (gnu packages ninja)
>    #:use-module (gnu packages node)
>    #:use-module (gnu packages pciutils)
> -  #:use-module (gnu packages photo)
>    #:use-module (gnu packages pkg-config)
>    #:use-module (gnu packages protobuf)
>    #:use-module (gnu packages pulseaudio)
> @@ -63,7 +61,6 @@
>    #:use-module (gnu packages speech)
>    #:use-module (gnu packages tls)
>    #:use-module (gnu packages valgrind)
> -  #:use-module (gnu packages version-control)
>    #:use-module (gnu packages video)
>    #:use-module (gnu packages xiph)
>    #:use-module (gnu packages xml)
> @@ -150,19 +147,6 @@
>                  %debian-revision
>                  "1qf2y7jmaya43k9rbsxjjpkp5manzmbkhjj5hvfyqcdylhy30swj"))
> =20
> -;; Some files were missing in the Chromium 66 release tarball.
> -;; See <https://crbug.com/832283>.
> -(define %chromium-add-blink-tools.patch
> -  (origin
> -    (method url-fetch)
> -    (uri (string-append "https://bazaar.launchpad.net/~chromium-team"
> -                        "/chromium-browser/bionic-stable/download/head:"
> -                        "/addmissingblinktools-20180416203514-02f50sz15c=
2mn6ei-1"
> -                        "/add-missing-blink-tools.patch"))
> -    (sha256
> -     (base32
> -      "1im2l1g6g9mangpfphbkg6zxyglbfwbkm5jxv122yxqgm6vxzz6s"))))
> -
>  ;; Fix an assignment bug when using Clang and libstdc++.
>  (define %chromium-clang-assignment.patch
>    (gentoo-patch "chromium-clang-r4.patch"
> @@ -342,7 +326,7 @@ includes Clang, the Guix ld wrapper, glibc, a C++ lib=
rary, and Binutils.")
>  (define-public chromium
>    (package
>      (name "chromium")
> -    (version "66.0.3359.117")
> +    (version "66.0.3359.139")
>      (synopsis "Graphical web browser")
>      (source (origin
>                (method url-fetch)
> @@ -351,14 +335,12 @@ includes Clang, the Guix ld wrapper, glibc, a C++ l=
ibrary, and Binutils.")
>                                    version ".tar.xz"))
>                (sha256
>                 (base32
> -                "1mlfavs0m0lf60s42krqxqiyx73hdfd4r1mkjwv31p2gchsa7ibp"))
> +                "1ck4wbi28702p1lfs4sz894ysbgm7fj79wrqj8srsy65z2ssaxdy"))
>                (patches (list %chromium-gn-libcxx.patch
>                               %chromium-disable-api-keys-warning.patch
>                               %chromium-system-nspr.patch
>                               %chromium-system-libevent.patch
> =20
> -                             %chromium-add-blink-tools.patch
> -
>                               %chromium-clang-assignment.patch
>                               %chromium-ffmpeg.patch
> =20
> @@ -385,14 +367,13 @@ includes Clang, the Guix ld wrapper, glibc, a C++ l=
ibrary, and Binutils.")
>                             "base/third_party/dmg_fp"
>                             "base/third_party/dynamic_annotations"
>                             "base/third_party/icu"
> -                           "base/third_party/libevent"
> -                           "base/third_party/nspr"
>                             "base/third_party/superfasthash"
> -                           "base/third_party/symbolize" ;glog
> +                           "base/third_party/symbolize"
>                             "base/third_party/xdg_mime"
>                             "base/third_party/xdg_user_dirs"
>                             "chrome/third_party/mozilla_security_manager"
> -                           "courgette/third_party"
> +                           "courgette/third_party/bsdiff"
> +                           "courgette/third_party/divsufsort"
>                             "net/third_party/mozilla_security_manager"
>                             "net/third_party/nss"
>                             "third_party/adobe/flash/flapper_version.h"
> @@ -439,7 +420,6 @@ includes Clang, the Guix ld wrapper, glibc, a C++ lib=
rary, and Binutils.")
>                             (string-append "third_party/google_input_tool=
s/third_party"
>                                            "/closure_library/third_party/=
closure")
>                             "third_party/googletest"
> -                           "third_party/harfbuzz-ng"
>                             "third_party/hunspell"
>                             "third_party/iccjpeg"
>                             "third_party/inspector_protocol"
> @@ -472,7 +452,11 @@ includes Clang, the Guix ld wrapper, glibc, a C++ li=
brary, and Binutils.")
>                             "third_party/ots"
>                             ;; TODO: Build as extension.
>                             "third_party/pdfium"
> -                           "third_party/pdfium/third_party"
> +                           "third_party/pdfium/third_party/agg23"
> +                           "third_party/pdfium/third_party/base"
> +                           "third_party/pdfium/third_party/bigint"
> +                           "third_party/pdfium/third_party/libopenjpeg20"
> +                           "third_party/pdfium/third_party/skia_shared"
>                             (string-append "third_party/pdfium/third_part=
y/freetype"
>                                            "/include/pstables.h")
>                             "third_party/ply"
> @@ -488,7 +472,8 @@ includes Clang, the Guix ld wrapper, glibc, a C++ lib=
rary, and Binutils.")
>                             "third_party/speech-dispatcher"
>                             "third_party/sqlite"
>                             "third_party/swiftshader"
> -                           "third_party/swiftshader/third_party"
> +                           "third_party/swiftshader/third_party/llvm-sub=
zero"
> +                           "third_party/swiftshader/third_party/subzero"
>                             "third_party/s2cellid"
>                             "third_party/usb_ids"
>                             "third_party/usrsctp"
> @@ -864,7 +849,6 @@ includes Clang, the Guix ld wrapper, glibc, a C++ lib=
rary, and Binutils.")
>      (native-inputs
>       `(("bison" ,bison)
>         ("clang-toolchain" ,chromium-clang-toolchain)
> -       ("git" ,git)                     ;last_commit_position.py
>         ("gperf" ,gperf)
>         ("ninja" ,ninja)
>         ("node" ,node)
> @@ -889,7 +873,6 @@ includes Clang, the Guix ld wrapper, glibc, a C++ lib=
rary, and Binutils.")
>         ("freetype" ,freetype)
>         ("gdk-pixbuf" ,gdk-pixbuf)
>         ("glib" ,glib)
> -       ("gtk+-2" ,gtk+-2)
>         ("gtk+" ,gtk+)
>         ("harfbuzz" ,harfbuzz)
>         ("icu4c" ,icu4c)
> @@ -899,6 +882,7 @@ includes Clang, the Guix ld wrapper, glibc, a C++ lib=
rary, and Binutils.")
>         ("libffi" ,libffi)
>         ("libjpeg-turbo" ,libjpeg-turbo)
>         ("libpng" ,libpng)
> +       ;;("libsecret" ,libsecret)
>         ("libusb" ,libusb)
>         ("libvpx" ,libvpx+experimental)
>         ("libwebp" ,libwebp)
> @@ -931,7 +915,7 @@ includes Clang, the Guix ld wrapper, glibc, a C++ lib=
rary, and Binutils.")
>         ("re2" ,re2)
>         ("snappy" ,snappy)
>         ("speech-dispatcher" ,speech-dispatcher)
> -       ("sqlite" ,sqlite)
> +       ;;("sqlite" ,sqlite)
>         ("udev" ,eudev)
>         ("valgrind" ,valgrind)))
>      (home-page "https://www.chromium.org/")




--yrml2megun3mjypr
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQIzBAABCgAdFiEEqIyK3RKYKNfqwC5S4i+bv+40hYgFAlrsWdwACgkQ4i+bv+40
hYjY9Q//V1g5Ptsvu1ZH/18Q4Ve4GL0OZntB2PQdnLzkr3dAiZIPyQDSV67QkLLQ
B5ReMsSV6zVnf6mssHMkoCP1h1m6l+5jvMBTgXhR08+UBWd5am6wgIqjPFR+V1EA
kWsYw8l7oukzTttB+p9XSgq/g+20z1u4c51P6HrsuejtygmzsY+U8y7dxpDeer28
DKNvuLMZlkahzWkwPaxRmS8Cg9V5ZmCHakn2gkxQVOZ/SlZXfOH8yA1eGGCfFr5S
h1V2rQscfTE/iuAoyP6Jdw5YARqr7L2s2kOXvMBR97zyVvV82379Tt3MGDCGrPSi
dloortkYre/WIFJOs/2YD53U7qZnF508QfQCrEPy9WHad1eOLi+4IapJYED0n+r2
SY3JPRJCW5NoIyLrz7GusZqhJY6GygHh4+6MbawI11nhn9HP49YIc9MWjrk+DHuu
s09D6lMXpYXDQ2FhgGwDezm8z7vdNaDNR9ec60N5Exzsg5jGWTcPPvTGp616Rem6
emXH/7Zzd/MoJA2UoQ+PycQ7YKcw1AqAOviSxMeHjnx11Si1PYWuGnQMrinddHOD
rD7zkrhmvGp3teQRVjzTEpDG4+HHjfgIMGPF9puwBOgyJnaUMhgmHUJdE66fvcJG
afYHMTIWIKB9tpvhlOFBfYRluAv1s9QWOjhHlowsat3mjV79oKI=
=V+8/
-----END PGP SIGNATURE-----

--yrml2megun3mjypr--




Information forwarded to guix-patches@HIDDEN:
bug#28004; Package guix-patches. Full text available.

Message received at 28004 <at> debbugs.gnu.org:


Received: (at 28004) by debbugs.gnu.org; 4 May 2018 12:10:49 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri May 04 08:10:49 2018
Received: from localhost ([127.0.0.1]:48973 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1fEZXt-0001q6-7Z
	for submit <at> debbugs.gnu.org; Fri, 04 May 2018 08:10:49 -0400
Received: from out1-smtp.messagingengine.com ([66.111.4.25]:55647)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <mbakke@HIDDEN>) id 1fEZXq-0001pw-Ca
 for 28004 <at> debbugs.gnu.org; Fri, 04 May 2018 08:10:39 -0400
Received: from compute5.internal (compute5.nyi.internal [10.202.2.45])
 by mailout.nyi.internal (Postfix) with ESMTP id 2B2F021B12;
 Fri,  4 May 2018 08:10:38 -0400 (EDT)
Received: from mailfrontend2 ([10.202.2.163])
 by compute5.internal (MEProxy); Fri, 04 May 2018 08:10:38 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=fastmail.com; h=
 cc:content-type:date:from:in-reply-to:message-id:mime-version
 :references:subject:to:x-me-sender:x-me-sender:x-sasl-enc; s=
 fm2; bh=e7f919U3LesWRZBxF/8p4Rz6ZVXnYC2+4s4/oPdDFjU=; b=QS0WjJUx
 5xm1plmT6aGRIMDy158rBCGOsHnx1NOSsACsbW0QsgM6ncZCxwS0JideiVNJ+mk4
 z0V8yAs6RVWWpptf/lE7/VPA5PlljApKoh1JbhQc/5+jqm/j6+dHIvcu/VYFd9iq
 +xpo65i6DMPUFYR2/l33krt0TlS0mq6RjmihJxiJY2ZOA3BTk+S10t8fJ8yaT9bz
 QpOSTGU9vAF31c/4wqh/Nd3925tf59Nmt9j9SnbgdvW/ZjVn6psWGAU5uNUQF6Hx
 9qwp9APtAIuRyjHSr42Tlw1yn4UzvsYXQOHchFxG2vhEy/W+ggNj5LChlT16oVh9
 Xxlm+B+yUdnI/w==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
 messagingengine.com; h=cc:content-type:date:from:in-reply-to
 :message-id:mime-version:references:subject:to:x-me-sender
 :x-me-sender:x-sasl-enc; s=fm2; bh=e7f919U3LesWRZBxF/8p4Rz6ZVXnY
 C2+4s4/oPdDFjU=; b=OIuuUiInjRQiIO5oPDM1+chvPQHEIzT++arGDs0KAV7Pt
 WQp3wafiw+aWmQjtBeVoe6k756mQP1gpz+73thZMHBIbwfvAd7pIozQSDP+CM5Nb
 K+JLbfPpIOngpPO7FBdDe6ySrPEkndDOOo/724YPYxp3Cr96q41e9V8JJAwLhrAg
 WrCtdKVMSZcU569OGkO0IfQLlXQUyB6pIGTzxSzJ25pTkbkPc1GhFT+UxOXeslYC
 9idjysxTXYrVTy0l2yPBPuql15UD135o6/6T6u2wkPCRQY2YN5giiP6dUx6DCmi3
 3pQxAazsVocaUkMZYbQpP2CCtuJDUBR2C+ONSgqug==
X-ME-Sender: <xms:vk3sWnxJ_EZoFYugXmoPA806B9pl96pG8o6xNh-G4Om0CTnlqqXxrg>
Received: from localhost (95.92-221-151.customer.lyse.net [92.221.151.95])
 by mail.messagingengine.com (Postfix) with ESMTPA id AA9F510339;
 Fri,  4 May 2018 08:10:37 -0400 (EDT)
From: Marius Bakke <mbakke@HIDDEN>
To: Nils Gillmann <ng0@HIDDEN>
Subject: Re: [bug#28004] Chromium 66 + status update
In-Reply-To: <20180503174903.asxoaobk6jy2dgk7@abyayala>
References: <87y3qvb15k.fsf@HIDDEN> <87po32c47b.fsf@HIDDEN>
 <87po2own4s.fsf@HIDDEN> <87woww8ojw.fsf@HIDDEN>
 <20180503174903.asxoaobk6jy2dgk7@abyayala>
User-Agent: Notmuch/0.26.1 (https://notmuchmail.org) Emacs/25.3.1
 (x86_64-pc-linux-gnu)
Date: Fri, 04 May 2018 14:10:35 +0200
Message-ID: <87d0ybhb9g.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: multipart/signed; boundary="==-=-=";
 micalg=pgp-sha512; protocol="application/pgp-signature"
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 28004
Cc: Christopher Lemmer Webber <cwebber@HIDDEN>, 28004 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

--==-=-=
Content-Type: multipart/mixed; boundary="=-=-="

--=-=-=
Content-Type: text/plain
Content-Transfer-Encoding: quoted-printable

Nils Gillmann <ng0@HIDDEN> writes:

> Marius Bakke transcribed 69K bytes:
>> Christopher Lemmer Webber <cwebber@HIDDEN> writes:
>>=20
>> > Hello!  I'd like to speak up in favor of getting Chromium merged into
>> > Guix master.  As a web developer, sometimes I have to test things
>> > against multiple browsers.  Having Chromium in GuixSD would help me out
>> > a lot.
>> >
>> > It looks like a mountain of hard work has been put into this.  Could we
>> > get it merged rather than have that work languish?
>>=20
>> Hello!
>>=20
>> I use this browser a lot, so it's hardly languishing.
>>=20
>> There was a recent discussion[0] about the Pale Moon browser, where it
>> was pointed out that the FSDG[1] requires that any third-party
>> repositories must be committed to only free software.
>>=20
>> [0] https://lists.gnu.org/archive/html/guix-devel/2018-03/msg00319.html
>> [1] https://www.gnu.org/distros/free-system-distribution-guidelines.html=
#license-rules
>>=20
>> Unfortunately there are UI links to the Chrome "Web Store" still.  It's
>> not possible to install from it without setting the
>> CHROMIUM_ENABLE_WEB_STORE variable, but I'm not sure if that is
>> sufficient.  It's unfortunate if an unsuspecting user stumbles into the
>> Web Store and tries to install something (free or not) and only then
>> finds out that it does not work.
>>=20
>> The other remaining issue is that some data is sent to Google whenever
>> you start the browser for the first time.  I don't think that's a
>> blocker, but it's certainly something we should aim to fix.
>>=20
>> Attached are updates for 66.  The first is an interdiff from the
>> previous 65 patch; the other is the full "squashed" patch for
>> convenience.
>>=20
>> New in this version:
>>=20
>> * The snippet will now error if a preserved directory is not present.
>> * Chromium again requires a git revision of libvpx.
>> * The "safe browsing" feature requires the nonfree "unrar" program(!!),
>>   as such it has been compiled out.  Luckily "Inox" already had a patch
>>   to make the thing actually build with that flag disabled.
>> * Cosmetic rearrangement of patches to follow Debian and Inox patch orde=
r.
>>=20
>
>> From a6ce5ebc121f129c3097f1f105b6a4de925b43e9 Mon Sep 17 00:00:00 2001
>> From: Marius Bakke <mbakke@HIDDEN>
>> Date: Tue, 17 Apr 2018 03:54:56 +0200
>> Subject: [PATCH] Chromium 66 update.
>  >=20
>
> Good progress :)
>
> However, I'm a friend of bundling patches. Patches you have in a known lo=
cation
> don't run away, like "addmissingblinktools":
>
> Starting download of /gnu/store/1djisy58jqjajbfcrd32vf7hrg9qvzwa-add-miss=
ing-blink-tools.patch
> From https://bazaar.launchpad.net/~chromium-team/chromium-browser/bionic-=
stable/download/head:/addmissingblinktools-20180416203514-02f50sz15c2mn6ei-=
1/add-missing-blink-tools.patch...
> download failed "https://bazaar.launchpad.net/~chromium-team/chromium-bro=
wser/bionic-stable/download/head:/addmissingblinktools-20180416203514-02f50=
sz15c2mn6ei-1/add-missing-blink-tools.patch" 404 "Not Found"
>
> Starting download of /gnu/store/1djisy58jqjajbfcrd32vf7hrg9qvzwa-add-miss=
ing-blink-tools.patch
> From http://mirror.hydra.gnu.org/file/add-missing-blink-tools.patch/sha25=
6/1im2l1g6g9mangpfphbkg6zxyglbfwbkm5jxv122yxqgm6vxzz6s...
> download failed "http://mirror.hydra.gnu.org/file/add-missing-blink-tools=
.patch/sha256/1im2l1g6g9mangpfphbkg6zxyglbfwbkm5jxv122yxqgm6vxzz6s" 404 "No=
t Found"
>
> Starting download of /gnu/store/1djisy58jqjajbfcrd32vf7hrg9qvzwa-add-miss=
ing-blink-tools.patch
> From http://tarballs.nixos.org/sha256/1im2l1g6g9mangpfphbkg6zxyglbfwbkm5j=
xv122yxqgm6vxzz6s...
> download failed "http://tarballs.nixos.org/sha256/1im2l1g6g9mangpfphbkg6z=
xyglbfwbkm5jxv122yxqgm6vxzz6s" 404 "Not Found"
> failed to download "/gnu/store/1djisy58jqjajbfcrd32vf7hrg9qvzwa-add-missi=
ng-blink-tools.patch" from "https://bazaar.launchpad.net/~chromium-team/chr=
omium-browser/bionic-stable/download/head:/addmissingblinktools-20180416203=
514-02f50sz15c2mn6ei-1/add-missing-blink-tools.patch"
> builder for `/gnu/store/5hbv5vgnla974qiw6kakc28a4k35h96n-add-missing-blin=
k-tools.patch.drv' failed to produce output path `/gnu/store/1djisy58jqjajb=
fcrd32vf7hrg9qvzwa-add-missing-blink-tools.patch'
> cannot build derivation `/gnu/store/2z8i7b4l4l0p5b3pj4swdl2pvbdj5q24-chro=
mium-66.0.3359.117.tar.xz.drv': 1 dependencies couldn't be built
> cannot build derivation `/gnu/store/4fxkp0aa1vr2b9fbl9kw8l8ijw0zrd25-chro=
mium-66.0.3359.117.drv': 1 dependencies couldn't be built
> guix package: error: build failed: build of `/gnu/store/4fxkp0aa1vr2b9fbl=
9kw8l8ijw0zrd25-chromium-66.0.3359.117.drv' failed

Whoops.  I'm not used to constructing stable Bazaar URLs.

However this patch is not needed for the latest tarball.

Here's a diff to the 66 patch updating to the latest Chromium.  I also
removed some inputs and third party directories that were not needed.


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment; filename=chromium.diff
Content-Transfer-Encoding: quoted-printable

diff --git a/gnu/packages/chromium.scm b/gnu/packages/chromium.scm
index a6f9fec0f..59c90f869 100644
=2D-- a/gnu/packages/chromium.scm
+++ b/gnu/packages/chromium.scm
@@ -31,7 +31,6 @@
   #:use-module (gnu packages compression)
   #:use-module (gnu packages cups)
   #:use-module (gnu packages curl)
=2D  #:use-module (gnu packages databases)
   #:use-module (gnu packages fontutils)
   #:use-module (gnu packages gcc)
   #:use-module (gnu packages ghostscript)
@@ -52,7 +51,6 @@
   #:use-module (gnu packages ninja)
   #:use-module (gnu packages node)
   #:use-module (gnu packages pciutils)
=2D  #:use-module (gnu packages photo)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages protobuf)
   #:use-module (gnu packages pulseaudio)
@@ -63,7 +61,6 @@
   #:use-module (gnu packages speech)
   #:use-module (gnu packages tls)
   #:use-module (gnu packages valgrind)
=2D  #:use-module (gnu packages version-control)
   #:use-module (gnu packages video)
   #:use-module (gnu packages xiph)
   #:use-module (gnu packages xml)
@@ -150,19 +147,6 @@
                 %debian-revision
                 "1qf2y7jmaya43k9rbsxjjpkp5manzmbkhjj5hvfyqcdylhy30swj"))
=20
=2D;; Some files were missing in the Chromium 66 release tarball.
=2D;; See <https://crbug.com/832283>.
=2D(define %chromium-add-blink-tools.patch
=2D  (origin
=2D    (method url-fetch)
=2D    (uri (string-append "https://bazaar.launchpad.net/~chromium-team"
=2D                        "/chromium-browser/bionic-stable/download/head:"
=2D                        "/addmissingblinktools-20180416203514-02f50sz15c=
2mn6ei-1"
=2D                        "/add-missing-blink-tools.patch"))
=2D    (sha256
=2D     (base32
=2D      "1im2l1g6g9mangpfphbkg6zxyglbfwbkm5jxv122yxqgm6vxzz6s"))))
=2D
 ;; Fix an assignment bug when using Clang and libstdc++.
 (define %chromium-clang-assignment.patch
   (gentoo-patch "chromium-clang-r4.patch"
@@ -342,7 +326,7 @@ includes Clang, the Guix ld wrapper, glibc, a C++ libra=
ry, and Binutils.")
 (define-public chromium
   (package
     (name "chromium")
=2D    (version "66.0.3359.117")
+    (version "66.0.3359.139")
     (synopsis "Graphical web browser")
     (source (origin
               (method url-fetch)
@@ -351,14 +335,12 @@ includes Clang, the Guix ld wrapper, glibc, a C++ lib=
rary, and Binutils.")
                                   version ".tar.xz"))
               (sha256
                (base32
=2D                "1mlfavs0m0lf60s42krqxqiyx73hdfd4r1mkjwv31p2gchsa7ibp"))
+                "1ck4wbi28702p1lfs4sz894ysbgm7fj79wrqj8srsy65z2ssaxdy"))
               (patches (list %chromium-gn-libcxx.patch
                              %chromium-disable-api-keys-warning.patch
                              %chromium-system-nspr.patch
                              %chromium-system-libevent.patch
=20
=2D                             %chromium-add-blink-tools.patch
=2D
                              %chromium-clang-assignment.patch
                              %chromium-ffmpeg.patch
=20
@@ -385,14 +367,13 @@ includes Clang, the Guix ld wrapper, glibc, a C++ lib=
rary, and Binutils.")
                            "base/third_party/dmg_fp"
                            "base/third_party/dynamic_annotations"
                            "base/third_party/icu"
=2D                           "base/third_party/libevent"
=2D                           "base/third_party/nspr"
                            "base/third_party/superfasthash"
=2D                           "base/third_party/symbolize" ;glog
+                           "base/third_party/symbolize"
                            "base/third_party/xdg_mime"
                            "base/third_party/xdg_user_dirs"
                            "chrome/third_party/mozilla_security_manager"
=2D                           "courgette/third_party"
+                           "courgette/third_party/bsdiff"
+                           "courgette/third_party/divsufsort"
                            "net/third_party/mozilla_security_manager"
                            "net/third_party/nss"
                            "third_party/adobe/flash/flapper_version.h"
@@ -439,7 +420,6 @@ includes Clang, the Guix ld wrapper, glibc, a C++ libra=
ry, and Binutils.")
                            (string-append "third_party/google_input_tools/=
third_party"
                                           "/closure_library/third_party/cl=
osure")
                            "third_party/googletest"
=2D                           "third_party/harfbuzz-ng"
                            "third_party/hunspell"
                            "third_party/iccjpeg"
                            "third_party/inspector_protocol"
@@ -472,7 +452,11 @@ includes Clang, the Guix ld wrapper, glibc, a C++ libr=
ary, and Binutils.")
                            "third_party/ots"
                            ;; TODO: Build as extension.
                            "third_party/pdfium"
=2D                           "third_party/pdfium/third_party"
+                           "third_party/pdfium/third_party/agg23"
+                           "third_party/pdfium/third_party/base"
+                           "third_party/pdfium/third_party/bigint"
+                           "third_party/pdfium/third_party/libopenjpeg20"
+                           "third_party/pdfium/third_party/skia_shared"
                            (string-append "third_party/pdfium/third_party/=
freetype"
                                           "/include/pstables.h")
                            "third_party/ply"
@@ -488,7 +472,8 @@ includes Clang, the Guix ld wrapper, glibc, a C++ libra=
ry, and Binutils.")
                            "third_party/speech-dispatcher"
                            "third_party/sqlite"
                            "third_party/swiftshader"
=2D                           "third_party/swiftshader/third_party"
+                           "third_party/swiftshader/third_party/llvm-subze=
ro"
+                           "third_party/swiftshader/third_party/subzero"
                            "third_party/s2cellid"
                            "third_party/usb_ids"
                            "third_party/usrsctp"
@@ -864,7 +849,6 @@ includes Clang, the Guix ld wrapper, glibc, a C++ libra=
ry, and Binutils.")
     (native-inputs
      `(("bison" ,bison)
        ("clang-toolchain" ,chromium-clang-toolchain)
=2D       ("git" ,git)                     ;last_commit_position.py
        ("gperf" ,gperf)
        ("ninja" ,ninja)
        ("node" ,node)
@@ -889,7 +873,6 @@ includes Clang, the Guix ld wrapper, glibc, a C++ libra=
ry, and Binutils.")
        ("freetype" ,freetype)
        ("gdk-pixbuf" ,gdk-pixbuf)
        ("glib" ,glib)
=2D       ("gtk+-2" ,gtk+-2)
        ("gtk+" ,gtk+)
        ("harfbuzz" ,harfbuzz)
        ("icu4c" ,icu4c)
@@ -899,6 +882,7 @@ includes Clang, the Guix ld wrapper, glibc, a C++ libra=
ry, and Binutils.")
        ("libffi" ,libffi)
        ("libjpeg-turbo" ,libjpeg-turbo)
        ("libpng" ,libpng)
+       ;;("libsecret" ,libsecret)
        ("libusb" ,libusb)
        ("libvpx" ,libvpx+experimental)
        ("libwebp" ,libwebp)
@@ -931,7 +915,7 @@ includes Clang, the Guix ld wrapper, glibc, a C++ libra=
ry, and Binutils.")
        ("re2" ,re2)
        ("snappy" ,snappy)
        ("speech-dispatcher" ,speech-dispatcher)
=2D       ("sqlite" ,sqlite)
+       ;;("sqlite" ,sqlite)
        ("udev" ,eudev)
        ("valgrind" ,valgrind)))
     (home-page "https://www.chromium.org/")

--=-=-=--

--==-=-=
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQEzBAEBCgAdFiEEu7At3yzq9qgNHeZDoqBt8qM6VPoFAlrsTbwACgkQoqBt8qM6
VPp17gf9Eh/QpxnVWwjbuHcXZKml1XUqqUZ5eMJeNu/vqQFAeOiGHYUwW0BPAvm3
rrMcTvpLS9c08cuLytyGVfy/I4HhHoEaBtFj9ZM/QXIsYdcXnUVhTX3cuGcDNDmh
dAQPJVI5foz76DMK0NAbHbR5RCgo5uCNPMX6e2m1xEBNnK5CGNK2tCqgMMmLfZEl
SMyUXMlpYTkTE7Tf+xB+EJygAOBTS/GMcrfidzqrKJJyUFiG4/J7xWmMxqaxJAOD
YJ0W5uhC23ul7NMdlJi0K5tFXXd7fSVoQ678fcvl9+xSimh8ZLT3RGGkl67Znn1F
X4e97zu/muJZBYuwr2OQrZm0GcK39g==
=w652
-----END PGP SIGNATURE-----
--==-=-=--




Information forwarded to guix-patches@HIDDEN:
bug#28004; Package guix-patches. Full text available.

Message received at 28004 <at> debbugs.gnu.org:


Received: (at 28004) by debbugs.gnu.org; 3 May 2018 17:58:25 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu May 03 13:58:25 2018
Received: from localhost ([127.0.0.1]:48483 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1fEIUl-0000AI-S5
	for submit <at> debbugs.gnu.org; Thu, 03 May 2018 13:58:25 -0400
Received: from static.195.114.201.195.clients.your-server.de
 ([195.201.114.195]:44334 helo=conspiracy.of.n0.is)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <ng0@HIDDEN>) id 1fEIUj-0000A7-7g
 for 28004 <at> debbugs.gnu.org; Thu, 03 May 2018 13:58:17 -0400
Received: by conspiracy.of.n0.is (OpenSMTPD) with ESMTPSA id b544dd9a
 (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256:NO); 
 Thu, 3 May 2018 17:58:15 +0000 (UTC)
Date: Thu, 3 May 2018 17:58:45 +0000
From: Nils Gillmann <ng0@HIDDEN>
To: Marius Bakke <mbakke@HIDDEN>
Subject: Re: [bug#28004] Chromium 66 + status update
Message-ID: <20180503175845.xxz47o4gzj36udp3@abyayala>
References: <87y3qvb15k.fsf@HIDDEN> <87po32c47b.fsf@HIDDEN>
 <87po2own4s.fsf@HIDDEN> <87woww8ojw.fsf@HIDDEN>
 <20180503174903.asxoaobk6jy2dgk7@abyayala>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <20180503174903.asxoaobk6jy2dgk7@abyayala>
X-Spam-Score: -0.0 (/)
X-Debbugs-Envelope-To: 28004
Cc: 28004 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

Nils Gillmann transcribed 4.4K bytes:
> Marius Bakke transcribed 69K bytes:
> > Christopher Lemmer Webber <cwebber@HIDDEN> writes:
> > 
> > > Hello!  I'd like to speak up in favor of getting Chromium merged into
> > > Guix master.  As a web developer, sometimes I have to test things
> > > against multiple browsers.  Having Chromium in GuixSD would help me out
> > > a lot.
> > >
> > > It looks like a mountain of hard work has been put into this.  Could we
> > > get it merged rather than have that work languish?
> > 
> > Hello!
> > 
> > I use this browser a lot, so it's hardly languishing.
> > 
> > There was a recent discussion[0] about the Pale Moon browser, where it
> > was pointed out that the FSDG[1] requires that any third-party
> > repositories must be committed to only free software.
> > 
> > [0] https://lists.gnu.org/archive/html/guix-devel/2018-03/msg00319.html
> > [1] https://www.gnu.org/distros/free-system-distribution-guidelines.html#license-rules
> > 
> > Unfortunately there are UI links to the Chrome "Web Store" still.  It's
> > not possible to install from it without setting the
> > CHROMIUM_ENABLE_WEB_STORE variable, but I'm not sure if that is
> > sufficient.  It's unfortunate if an unsuspecting user stumbles into the
> > Web Store and tries to install something (free or not) and only then
> > finds out that it does not work.
> > 
> > The other remaining issue is that some data is sent to Google whenever
> > you start the browser for the first time.  I don't think that's a
> > blocker, but it's certainly something we should aim to fix.
> > 
> > Attached are updates for 66.  The first is an interdiff from the
> > previous 65 patch; the other is the full "squashed" patch for
> > convenience.
> > 
> > New in this version:
> > 
> > * The snippet will now error if a preserved directory is not present.
> > * Chromium again requires a git revision of libvpx.
> > * The "safe browsing" feature requires the nonfree "unrar" program(!!),
> >   as such it has been compiled out.  Luckily "Inox" already had a patch
> >   to make the thing actually build with that flag disabled.
> > * Cosmetic rearrangement of patches to follow Debian and Inox patch order.
> > 
> 
> > From a6ce5ebc121f129c3097f1f105b6a4de925b43e9 Mon Sep 17 00:00:00 2001
> > From: Marius Bakke <mbakke@HIDDEN>
> > Date: Tue, 17 Apr 2018 03:54:56 +0200
> > Subject: [PATCH] Chromium 66 update.
>  > 
> 
> Good progress :)
> 
> However, I'm a friend of bundling patches. Patches you have in a known location
> don't run away, like "addmissingblinktools":
> 
> Starting download of /gnu/store/1djisy58jqjajbfcrd32vf7hrg9qvzwa-add-missing-blink-tools.patch
> From https://bazaar.launchpad.net/~chromium-team/chromium-browser/bionic-stable/download/head:/addmissingblinktools-20180416203514-02f50sz15c2mn6ei-1/add-missing-blink-tools.patch...
> download failed "https://bazaar.launchpad.net/~chromium-team/chromium-browser/bionic-stable/download/head:/addmissingblinktools-20180416203514-02f50sz15c2mn6ei-1/add-missing-blink-tools.patch" 404 "Not Found"
> 
> Starting download of /gnu/store/1djisy58jqjajbfcrd32vf7hrg9qvzwa-add-missing-blink-tools.patch
> From http://mirror.hydra.gnu.org/file/add-missing-blink-tools.patch/sha256/1im2l1g6g9mangpfphbkg6zxyglbfwbkm5jxv122yxqgm6vxzz6s...
> download failed "http://mirror.hydra.gnu.org/file/add-missing-blink-tools.patch/sha256/1im2l1g6g9mangpfphbkg6zxyglbfwbkm5jxv122yxqgm6vxzz6s" 404 "Not Found"
> 
> Starting download of /gnu/store/1djisy58jqjajbfcrd32vf7hrg9qvzwa-add-missing-blink-tools.patch
> From http://tarballs.nixos.org/sha256/1im2l1g6g9mangpfphbkg6zxyglbfwbkm5jxv122yxqgm6vxzz6s...
> download failed "http://tarballs.nixos.org/sha256/1im2l1g6g9mangpfphbkg6zxyglbfwbkm5jxv122yxqgm6vxzz6s" 404 "Not Found"
> failed to download "/gnu/store/1djisy58jqjajbfcrd32vf7hrg9qvzwa-add-missing-blink-tools.patch" from "https://bazaar.launchpad.net/~chromium-team/chromium-browser/bionic-stable/download/head:/addmissingblinktools-20180416203514-02f50sz15c2mn6ei-1/add-missing-blink-tools.patch"
> builder for `/gnu/store/5hbv5vgnla974qiw6kakc28a4k35h96n-add-missing-blink-tools.patch.drv' failed to produce output path `/gnu/store/1djisy58jqjajbfcrd32vf7hrg9qvzwa-add-missing-blink-tools.patch'
> cannot build derivation `/gnu/store/2z8i7b4l4l0p5b3pj4swdl2pvbdj5q24-chromium-66.0.3359.117.tar.xz.drv': 1 dependencies couldn't be built
> cannot build derivation `/gnu/store/4fxkp0aa1vr2b9fbl9kw8l8ijw0zrd25-chromium-66.0.3359.117.drv': 1 dependencies couldn't be built
> guix package: error: build failed: build of `/gnu/store/4fxkp0aa1vr2b9fbl9kw8l8ijw0zrd25-chromium-66.0.3359.117.drv' failed
> 
> 
> 

Is this the patch you included?

https://bazaar.launchpad.net/~chromium-team/chromium-browser/artful-beta/view/head:/debian/patches/add-missing-blink-tools.patch

guix hash is 1im2l1g6g9mangpfphbkg6zxyglbfwbkm5jxv122yxqgm6vxzz6s and matches the one the package definition expected.




Information forwarded to guix-patches@HIDDEN:
bug#28004; Package guix-patches. Full text available.

Message received at 28004 <at> debbugs.gnu.org:


Received: (at 28004) by debbugs.gnu.org; 3 May 2018 17:48:44 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu May 03 13:48:44 2018
Received: from localhost ([127.0.0.1]:48467 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1fEILO-0008Nd-Iy
	for submit <at> debbugs.gnu.org; Thu, 03 May 2018 13:48:44 -0400
Received: from static.195.114.201.195.clients.your-server.de
 ([195.201.114.195]:44280 helo=conspiracy.of.n0.is)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <ng0@HIDDEN>) id 1fEILM-0008NU-4A
 for 28004 <at> debbugs.gnu.org; Thu, 03 May 2018 13:48:37 -0400
Received: by conspiracy.of.n0.is (OpenSMTPD) with ESMTPSA id ab3cfb94
 (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256:NO); 
 Thu, 3 May 2018 17:48:33 +0000 (UTC)
Date: Thu, 3 May 2018 17:49:03 +0000
From: Nils Gillmann <ng0@HIDDEN>
To: Marius Bakke <mbakke@HIDDEN>
Subject: Re: [bug#28004] Chromium 66 + status update
Message-ID: <20180503174903.asxoaobk6jy2dgk7@abyayala>
References: <87y3qvb15k.fsf@HIDDEN> <87po32c47b.fsf@HIDDEN>
 <87po2own4s.fsf@HIDDEN> <87woww8ojw.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable
In-Reply-To: <87woww8ojw.fsf@HIDDEN>
X-Spam-Score: -0.0 (/)
X-Debbugs-Envelope-To: 28004
Cc: Christopher Lemmer Webber <cwebber@HIDDEN>, 28004 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

Marius Bakke transcribed 69K bytes:
> Christopher Lemmer Webber <cwebber@HIDDEN> writes:
>=20
> > Hello!  I'd like to speak up in favor of getting Chromium merged into
> > Guix master.  As a web developer, sometimes I have to test things
> > against multiple browsers.  Having Chromium in GuixSD would help me out
> > a lot.
> >
> > It looks like a mountain of hard work has been put into this.  Could we
> > get it merged rather than have that work languish?
>=20
> Hello!
>=20
> I use this browser a lot, so it's hardly languishing.
>=20
> There was a recent discussion[0] about the Pale Moon browser, where it
> was pointed out that the FSDG[1] requires that any third-party
> repositories must be committed to only free software.
>=20
> [0] https://lists.gnu.org/archive/html/guix-devel/2018-03/msg00319.html
> [1] https://www.gnu.org/distros/free-system-distribution-guidelines.html#=
license-rules
>=20
> Unfortunately there are UI links to the Chrome "Web Store" still.  It's
> not possible to install from it without setting the
> CHROMIUM_ENABLE_WEB_STORE variable, but I'm not sure if that is
> sufficient.  It's unfortunate if an unsuspecting user stumbles into the
> Web Store and tries to install something (free or not) and only then
> finds out that it does not work.
>=20
> The other remaining issue is that some data is sent to Google whenever
> you start the browser for the first time.  I don't think that's a
> blocker, but it's certainly something we should aim to fix.
>=20
> Attached are updates for 66.  The first is an interdiff from the
> previous 65 patch; the other is the full "squashed" patch for
> convenience.
>=20
> New in this version:
>=20
> * The snippet will now error if a preserved directory is not present.
> * Chromium again requires a git revision of libvpx.
> * The "safe browsing" feature requires the nonfree "unrar" program(!!),
>   as such it has been compiled out.  Luckily "Inox" already had a patch
>   to make the thing actually build with that flag disabled.
> * Cosmetic rearrangement of patches to follow Debian and Inox patch order.
>=20

> From a6ce5ebc121f129c3097f1f105b6a4de925b43e9 Mon Sep 17 00:00:00 2001
> From: Marius Bakke <mbakke@HIDDEN>
> Date: Tue, 17 Apr 2018 03:54:56 +0200
> Subject: [PATCH] Chromium 66 update.
 >=20

Good progress :)

However, I'm a friend of bundling patches. Patches you have in a known loca=
tion
don't run away, like "addmissingblinktools":

Starting download of /gnu/store/1djisy58jqjajbfcrd32vf7hrg9qvzwa-add-missin=
g-blink-tools.patch
=46rom https://bazaar.launchpad.net/~chromium-team/chromium-browser/bionic-=
stable/download/head:/addmissingblinktools-20180416203514-02f50sz15c2mn6ei-=
1/add-missing-blink-tools.patch...
download failed "https://bazaar.launchpad.net/~chromium-team/chromium-brows=
er/bionic-stable/download/head:/addmissingblinktools-20180416203514-02f50sz=
15c2mn6ei-1/add-missing-blink-tools.patch" 404 "Not Found"

Starting download of /gnu/store/1djisy58jqjajbfcrd32vf7hrg9qvzwa-add-missin=
g-blink-tools.patch
=46rom http://mirror.hydra.gnu.org/file/add-missing-blink-tools.patch/sha25=
6/1im2l1g6g9mangpfphbkg6zxyglbfwbkm5jxv122yxqgm6vxzz6s...
download failed "http://mirror.hydra.gnu.org/file/add-missing-blink-tools.p=
atch/sha256/1im2l1g6g9mangpfphbkg6zxyglbfwbkm5jxv122yxqgm6vxzz6s" 404 "Not =
Found"

Starting download of /gnu/store/1djisy58jqjajbfcrd32vf7hrg9qvzwa-add-missin=
g-blink-tools.patch
=46rom http://tarballs.nixos.org/sha256/1im2l1g6g9mangpfphbkg6zxyglbfwbkm5j=
xv122yxqgm6vxzz6s...
download failed "http://tarballs.nixos.org/sha256/1im2l1g6g9mangpfphbkg6zxy=
glbfwbkm5jxv122yxqgm6vxzz6s" 404 "Not Found"
failed to download "/gnu/store/1djisy58jqjajbfcrd32vf7hrg9qvzwa-add-missing=
-blink-tools.patch" from "https://bazaar.launchpad.net/~chromium-team/chrom=
ium-browser/bionic-stable/download/head:/addmissingblinktools-2018041620351=
4-02f50sz15c2mn6ei-1/add-missing-blink-tools.patch"
builder for `/gnu/store/5hbv5vgnla974qiw6kakc28a4k35h96n-add-missing-blink-=
tools.patch.drv' failed to produce output path `/gnu/store/1djisy58jqjajbfc=
rd32vf7hrg9qvzwa-add-missing-blink-tools.patch'
cannot build derivation `/gnu/store/2z8i7b4l4l0p5b3pj4swdl2pvbdj5q24-chromi=
um-66.0.3359.117.tar.xz.drv': 1 dependencies couldn't be built
cannot build derivation `/gnu/store/4fxkp0aa1vr2b9fbl9kw8l8ijw0zrd25-chromi=
um-66.0.3359.117.drv': 1 dependencies couldn't be built
guix package: error: build failed: build of `/gnu/store/4fxkp0aa1vr2b9fbl9k=
w8l8ijw0zrd25-chromium-66.0.3359.117.drv' failed




Information forwarded to guix-patches@HIDDEN:
bug#28004; Package guix-patches. Full text available.

Message received at 28004 <at> debbugs.gnu.org:


Received: (at 28004) by debbugs.gnu.org; 25 Apr 2018 17:02:32 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed Apr 25 13:02:32 2018
Received: from localhost ([127.0.0.1]:39513 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1fBNoN-0002ma-N2
	for submit <at> debbugs.gnu.org; Wed, 25 Apr 2018 13:02:31 -0400
Received: from out2-smtp.messagingengine.com ([66.111.4.26]:33885)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <leo@HIDDEN>) id 1fBNoM-0002mT-R2
 for 28004 <at> debbugs.gnu.org; Wed, 25 Apr 2018 13:02:31 -0400
Received: from compute4.internal (compute4.nyi.internal [10.202.2.44])
 by mailout.nyi.internal (Postfix) with ESMTP id B3ACC211BB;
 Wed, 25 Apr 2018 13:02:30 -0400 (EDT)
Received: from mailfrontend2 ([10.202.2.163])
 by compute4.internal (MEProxy); Wed, 25 Apr 2018 13:02:30 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=famulari.name;
 h=cc:content-type:date:from:in-reply-to:message-id:mime-version
 :references:subject:to:x-me-sender:x-me-sender:x-sasl-enc; s=
 mesmtp; bh=n+cTWhRn6WUM3R96F7QB51UJDbLOB+ioNNDylQlghm8=; b=ICsG5
 lMr4/DI8x2+87Vmc51RRaMAuPBayJBngJ6Z4pxplLBCLsJTlQUs+9dTfcH/+EdXg
 Cux7qbOCQq1wlaCdhV1iKF0Ie7mYs0E/6I1Q3nAGUCZTsR/IRseIuJHuFUQUQxyZ
 oddI6DLXH1X4nUGtrgZyEVBEqY4NzpXdakMmt0=
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
 messagingengine.com; h=cc:content-type:date:from:in-reply-to
 :message-id:mime-version:references:subject:to:x-me-sender
 :x-me-sender:x-sasl-enc; s=fm2; bh=n+cTWhRn6WUM3R96F7QB51UJDbLOB
 +ioNNDylQlghm8=; b=FSpDyAAJvF8MYV3dPAhTkoG3r19OZ2h1egt87tlzqJWjk
 3zbT/0W8ftp3jqdLpQQ/y1glC3ncnRrd4Jgs4Ilqwwascjd/32uvXbFvFp3Nkfnl
 1T2CQPU/1wyar/Dxer9XOIicKq4o/F9zTobIy34j5G+gGz12I/mAbVejy6fB2ceU
 j+vCRbHc87s1iNgE4eYKiX6yO6p0IQxwEVe/Zy4YPSYlBzzccY3QGdW/cgi5TbLv
 ZHhwiySfgh2m4jL2UVcsKu3lr4TCjBi1ffdV9vA5vO6hYMNFncokJC1ylF9KROH+
 ckngZK6gRt8MCdfAHfaePMZ7HLnovsKtsYgpx/mdA==
X-ME-Sender: <xms:prTgWlZb22Rjc_Q3FFLw53GfzZWu4-qmsM-Z6CiA8liu9pO3OH2f_A>
Received: from localhost (pool-71-105-112-198.nycmny.fios.verizon.net
 [71.105.112.198])
 by mail.messagingengine.com (Postfix) with ESMTPA id 64F5910255;
 Wed, 25 Apr 2018 13:02:30 -0400 (EDT)
Date: Wed, 25 Apr 2018 13:02:29 -0400
From: Leo Famulari <leo@HIDDEN>
To: Marius Bakke <mbakke@HIDDEN>
Subject: Re: [bug#28004] Chromium 66 + status update
Message-ID: <20180425170229.GB23453@HIDDEN>
References: <87y3qvb15k.fsf@HIDDEN> <87po32c47b.fsf@HIDDEN>
 <87po2own4s.fsf@HIDDEN> <87woww8ojw.fsf@HIDDEN>
 <b0ebfaeac3dcf2641eda526754899bef@HIDDEN>
 <87tvs08ks0.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature"; boundary="MfFXiAuoTsnnDAfZ"
Content-Disposition: inline
In-Reply-To: <87tvs08ks0.fsf@HIDDEN>
User-Agent: Mutt/1.9.5 (2018-04-13)
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 28004
Cc: 28004 <at> debbugs.gnu.org, Tobias Geerinckx-Rice <me@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)


--MfFXiAuoTsnnDAfZ
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline

On Tue, Apr 24, 2018 at 09:30:23PM +0200, Marius Bakke wrote:
> The reason I don't think it's a blocking issue, is because Chromium is
> a massive project and I cannot guarantee that it will never "call
> home".  So while I am intent on fixing the issue, especially since it's
> easy to test (chromium --user-data-dir=/tmp/foo), it's just one of many
> "call home" scenarios/antifeatures.  And if you enable extensions or log
> in all bets are off.  Even Inox, which goes great lengths to de-google
> it, admits that they can't guarantee privacy.

I'd also like to point out that we cannot and should not try to
guarantee privacy.

Privacy from whom? For whom?

Of course we want to offer a system that is reasonably private, but if
we use words like "guarantee", we are setting an impossible and
undefined goal for ourselves.

--MfFXiAuoTsnnDAfZ
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQIzBAABCAAdFiEEsFFZSPHn08G5gDigJkb6MLrKfwgFAlrgtKUACgkQJkb6MLrK
fwgWwQ//aVWUsdRGoCZQR2PWunOEPeb7CbMUQrBOyS/AKhjGFOZ93cetcusPR57S
EOVmOci26oxIy48ZCrfSw/7nCtML2HSlfAdlR7l7TyFyubswT/IIf0PO1vkZoKvS
aS2BiKZm+DAGPFoFvCL/EvGYfrOfY9/KLmBmhHP17OqunfGUJNHt0F1BPFAzDKRA
PTdsbsA3NN2VxRpbshfooU1kFUzZpL+MIFXmNG1rQb8BiOFjPKof9YhhGm7Z5otV
VBLeYehnjbWRi19VrDg3IQD+eJHzwU1m8C6s42VHRuMmgW6jVfFn+UuXB6ZuFiAQ
2i02jxXATrXus2xBvYZhmkhU3+6qCB5Z9+pL6IQw2Fax6+8u4/k91I7qb+AqDevr
jaRf4PVRTGq6Zh+PPwbCTtvNIc3mRODPKDZuKRNL2f087XrwO+nYwnvUigTgvh4f
0SVluYCmejn6LII0x5v8TZcDez/aqas3kEPvh3qpl9kKL2mxf3f6ZPkp81+Smk4w
B2IM5qi4sfzlQSDyUxfxO8ANfOEP3RP5a3EovmWJ+iEaq4CVafO5vsadzHjEEFaH
mFRKAy8bzMNZx0dbW42yRT0XmzzeyiJV7lxdCM3LpvH8cTcp+7LFYMc0Z7sESBOe
oc6Cly9b5BEFshuQGJM072Q2SDy5B0Nl5Q+WTAvFVUre6SRUdhI=
=BrDC
-----END PGP SIGNATURE-----

--MfFXiAuoTsnnDAfZ--




Information forwarded to guix-patches@HIDDEN:
bug#28004; Package guix-patches. Full text available.

Message received at 28004 <at> debbugs.gnu.org:


Received: (at 28004) by debbugs.gnu.org; 25 Apr 2018 17:00:11 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed Apr 25 13:00:11 2018
Received: from localhost ([127.0.0.1]:39508 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1fBNm7-0002j9-6x
	for submit <at> debbugs.gnu.org; Wed, 25 Apr 2018 13:00:11 -0400
Received: from out2-smtp.messagingengine.com ([66.111.4.26]:47717)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <leo@HIDDEN>) id 1fBNm4-0002j1-JD
 for 28004 <at> debbugs.gnu.org; Wed, 25 Apr 2018 13:00:09 -0400
Received: from compute4.internal (compute4.nyi.internal [10.202.2.44])
 by mailout.nyi.internal (Postfix) with ESMTP id 154C421BA8;
 Wed, 25 Apr 2018 13:00:08 -0400 (EDT)
Received: from mailfrontend2 ([10.202.2.163])
 by compute4.internal (MEProxy); Wed, 25 Apr 2018 13:00:08 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=famulari.name;
 h=cc:content-type:date:from:in-reply-to:message-id:mime-version
 :references:subject:to:x-me-sender:x-me-sender:x-sasl-enc; s=
 mesmtp; bh=9neuMUAHiqrbtM0ekBCZb1z4iO9teAiDBRjluFT7guw=; b=uekQ4
 7ncoXEjdNu8rJlC3PS6WBNSwoWuaTPf8BsjiBDgwUQuw0Tbp4gSMSGIF7Hm9QRGZ
 rvULUJo8cONFjuUj7ajQY+TYuBeHWbP4488C8JV0J0ouAkrdzpx5px6ynwjuyeT5
 1rmHNZMUlWFM92fjoMRULKF+PDTANhfc5BBbkI=
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
 messagingengine.com; h=cc:content-type:date:from:in-reply-to
 :message-id:mime-version:references:subject:to:x-me-sender
 :x-me-sender:x-sasl-enc; s=fm2; bh=9neuMUAHiqrbtM0ekBCZb1z4iO9te
 AiDBRjluFT7guw=; b=hyfFyIcPt1IAVlmJHhCKL97QstoHZCZsWRA0WX+RG2uNT
 zw+C1w6jO1gKnwC+WIxlvqF0SGdA7HLogInj7VAeyF7rH8iuqzoCwgUxfPkjWZ0w
 BpSH6/z837LbXQgti2G6y+n9wpF9h+oBgVWrqnDun0pwCoG/9rcoULrxHRaHEXXl
 LnWDYI2EUG7SM3jGWUl+UHXM9EeW79cwJoAI3ue00gDSbiT9zvOD7ccmo2DJhxCk
 4HMJn6391aaxArdkBKuase5Ohv7/9HOFGi42UE5mH3NqDPF2r29lxXLgs7RP3Kwf
 7+fCL/n+hmeYVwwue9bVy0U9FaGN1YGUvEpu5X/ag==
X-ME-Sender: <xms:F7TgWqrTRavmhSKBJ2u3HSMrDK67fSCg3nbHFa8ZG_QueglhKbVm1g>
Received: from localhost (pool-71-105-112-198.nycmny.fios.verizon.net
 [71.105.112.198])
 by mail.messagingengine.com (Postfix) with ESMTPA id 9321510255;
 Wed, 25 Apr 2018 13:00:07 -0400 (EDT)
Date: Wed, 25 Apr 2018 13:00:06 -0400
From: Leo Famulari <leo@HIDDEN>
To: Marius Bakke <mbakke@HIDDEN>
Subject: Re: [bug#28004] Chromium 66 + status update
Message-ID: <20180425170006.GA23453@HIDDEN>
References: <87y3qvb15k.fsf@HIDDEN> <87po32c47b.fsf@HIDDEN>
 <87po2own4s.fsf@HIDDEN> <87woww8ojw.fsf@HIDDEN>
 <b0ebfaeac3dcf2641eda526754899bef@HIDDEN>
 <87tvs08ks0.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature"; boundary="W/nzBZO5zC0uMSeA"
Content-Disposition: inline
In-Reply-To: <87tvs08ks0.fsf@HIDDEN>
User-Agent: Mutt/1.9.5 (2018-04-13)
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 28004
Cc: 28004 <at> debbugs.gnu.org, Tobias Geerinckx-Rice <me@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)


--W/nzBZO5zC0uMSeA
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline

On Tue, Apr 24, 2018 at 09:30:23PM +0200, Marius Bakke wrote:
> The reason I don't think it's a blocking issue, is because Chromium is
> a massive project and I cannot guarantee that it will never "call
> home".  So while I am intent on fixing the issue, especially since it's
> easy to test (chromium --user-data-dir=/tmp/foo), it's just one of many
> "call home" scenarios/antifeatures.  And if you enable extensions or log
> in all bets are off.  Even Inox, which goes great lengths to de-google
> it, admits that they can't guarantee privacy.

I agree with Marius here.

> Other scenarios include checking for IPv6 availability, testing for
> captive portal, etc.  And I think it even falls back to Google DNS if
> the system resolver is unresponsive.  :-(

I think that handling captive portals and falling back to Google DNS (or
any fallback DNS) are *great* features that address common problems that
most internet users can not work around on their own.

I don't believe these features are forbidden by the FSDG:

https://www.gnu.org/distros/free-system-distribution-guidelines.en.html

Finally, there are several packages that automatically send data out,
even in Guix. This is not a reason to exclude the software from Guix, in
my opinion.

--W/nzBZO5zC0uMSeA
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQIzBAABCAAdFiEEsFFZSPHn08G5gDigJkb6MLrKfwgFAlrgtBIACgkQJkb6MLrK
fwhz/xAAqBPjiWcv+I4QOxBK4jrcpSpz6iCdRZMZIMNYz+allgPivGafUV9VQGzT
PDOfLEDlkbr3eujp7qfqev2FTG2nzwFrqdWqKwnkBqC+cR5nx00pJjnnwelMifHU
LXFIh7Vai3jb2+AEqPZ3m5LvKwvKuKSkeBDyJd/45faQ/NQyUM30SEa6YLajYWCA
BHNnl6bckKB/msmmOBT9vZS9zKcMLYfsBhnpimY06fBNe4FZ/Vh+7NSyNG9+oVg1
WwPgDNWCt9CkQbu6LKy2z8685iPrbl5dqWDXq24wmPpm7UkP173Nz8MjziMNHPIZ
D+2Asir+x9lxdptFTBf2fvjm4L5Ry3hTA5fPV7zp5XaIb2cdzolu25HioQCXGUo0
ID1vitZdc15HHau3Mj9CN+WdQSck8/w8iN8x5vdqh1DanhanVHXZAQ8+aPmjkLvP
5TBuGwcUmsnFqdsIdcWiuTvw+w9C0wpRpp7Dvrk33MUPyziU82n3vUeMfJBsuo/L
80sCXDQms7A9FE37DbXFMVSYUEUqUzRdxphDPQ0bacsfx4ry5l4e52gFhdxzAkfR
l1m/YDTywu4a56CKRf/AiszG7ptuTB6dAePu7oFDHQhlsEMl3YneAzgfrC5i4zSW
IE6s37QR6oe6PolymjP7GMfACQW2Fs6poBHhkWy++0gZjMGV9B8=
=nx9V
-----END PGP SIGNATURE-----

--W/nzBZO5zC0uMSeA--




Information forwarded to guix-patches@HIDDEN:
bug#28004; Package guix-patches. Full text available.

Message received at 28004 <at> debbugs.gnu.org:


Received: (at 28004) by debbugs.gnu.org; 24 Apr 2018 19:30:28 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Apr 24 15:30:28 2018
Received: from localhost ([127.0.0.1]:38457 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1fB3e0-0000A8-86
	for submit <at> debbugs.gnu.org; Tue, 24 Apr 2018 15:30:28 -0400
Received: from out3-smtp.messagingengine.com ([66.111.4.27]:37805)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <mbakke@HIDDEN>) id 1fB3dy-00009z-5o
 for 28004 <at> debbugs.gnu.org; Tue, 24 Apr 2018 15:30:27 -0400
Received: from compute5.internal (compute5.nyi.internal [10.202.2.45])
 by mailout.nyi.internal (Postfix) with ESMTP id B0CBC21AC4;
 Tue, 24 Apr 2018 15:30:25 -0400 (EDT)
Received: from mailfrontend2 ([10.202.2.163])
 by compute5.internal (MEProxy); Tue, 24 Apr 2018 15:30:25 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=fastmail.com; h=
 cc:content-type:date:from:in-reply-to:message-id:mime-version
 :references:subject:to:x-me-sender:x-me-sender:x-sasl-enc; s=
 fm2; bh=/P7ozEdnr4uxuZ0+m3D39/z9y9S4cBdA6fRdEvIF74o=; b=kuKsZ41o
 npcdZHYU+39JrZjvXEQUVKATOUrdcap/caekkd+z59cZSvRPlUJmCgsGSWCcU+8v
 lNFe/hbvxPav324vljiubn9PrenjyjesFQr5/QcNnML42U7D/heAJC3AeNh8LaSF
 Ypz3TJZ8nAKaixnpltbHjEQ/z7y7huKob3rBorEAQkQ9SxwFG2Dj+kRvYGg2pxDq
 GN/1XzAJtLqQb9pcod5hf5W1rVIlixmpNp2MDgZNnj0SmSiGD+dsNnZqANIJnBOG
 3JgyiJRkdLvyoWTsyCK2ho3T1tpP+mYuvr3wdSYRE4rFsgqR1ukIHWoYjEyMcaEz
 lVl2gdmGXFD4DQ==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
 messagingengine.com; h=cc:content-type:date:from:in-reply-to
 :message-id:mime-version:references:subject:to:x-me-sender
 :x-me-sender:x-sasl-enc; s=fm2; bh=/P7ozEdnr4uxuZ0+m3D39/z9y9S4c
 BdA6fRdEvIF74o=; b=VHhQGgwu8z9CHF6F4aHm+QjCNnPnF3M8jdfGR3BjJfso7
 smIm6BSE/Ju1tmanQxm1u+Bl23I5XPFzh5BM1++dgK+KUmjAv3KwFb2dply2k+qq
 1tvXtpW7pvTR8T+loHfpa42SvpVeDKUbUOIvS6sGI6zu8U207Bdgt7/XRrk39FE3
 XnuP9Tiu/2FECOnwKgSqyjqL1c2+ZvfjzswcV/YkmJ/bt0EtK7XZc5pTYPpXt5Ae
 I6iI+gpiBO0nZFw+fpwJfLnOE5m0ezmHQ4Zv7HLoXnEtEJpnsWgcH8j6YabeAau3
 80tfBgwC0+zR0VAUhiovfr5+eZV2uNcC5+rI9Deqg==
X-ME-Sender: <xms:0YXfWoKwjOMwj9USanHFF0dEJzbDCvYUw0-3eu0esiNBh6oxGh6jKw>
Received: from localhost (228.92-221-162.customer.lyse.net [92.221.162.228])
 by mail.messagingengine.com (Postfix) with ESMTPA id 4B2751025D;
 Tue, 24 Apr 2018 15:30:25 -0400 (EDT)
From: Marius Bakke <mbakke@HIDDEN>
To: Tobias Geerinckx-Rice <me@HIDDEN>
Subject: Re: [bug#28004] Chromium 66 + status update
In-Reply-To: <b0ebfaeac3dcf2641eda526754899bef@HIDDEN>
References: <87y3qvb15k.fsf@HIDDEN> <87po32c47b.fsf@HIDDEN>
 <87po2own4s.fsf@HIDDEN> <87woww8ojw.fsf@HIDDEN>
 <b0ebfaeac3dcf2641eda526754899bef@HIDDEN>
User-Agent: Notmuch/0.26.1 (https://notmuchmail.org) Emacs/25.3.1
 (x86_64-pc-linux-gnu)
Date: Tue, 24 Apr 2018 21:30:23 +0200
Message-ID: <87tvs08ks0.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: multipart/signed; boundary="=-=-=";
 micalg=pgp-sha512; protocol="application/pgp-signature"
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 28004
Cc: 28004 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

--=-=-=
Content-Type: text/plain

Tobias Geerinckx-Rice <me@HIDDEN> writes:

> Marius!
>
> On 2018-04-24 20:08, Marius Bakke wrote:
>> The other remaining issue is that some data is sent to Google whenever
>> you start the browser for the first time.
>
> Sounds great! What data, exactly?

I haven't MITM'd it to check, unfortunately.  Help wanted!

The reason I don't think it's a blocking issue, is because Chromium is
a massive project and I cannot guarantee that it will never "call
home".  So while I am intent on fixing the issue, especially since it's
easy to test (chromium --user-data-dir=/tmp/foo), it's just one of many
"call home" scenarios/antifeatures.  And if you enable extensions or log
in all bets are off.  Even Inox, which goes great lengths to de-google
it, admits that they can't guarantee privacy.

Other scenarios include checking for IPv6 availability, testing for
captive portal, etc.  And I think it even falls back to Google DNS if
the system resolver is unresponsive.  :-(

--=-=-=
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQEzBAEBCgAdFiEEu7At3yzq9qgNHeZDoqBt8qM6VPoFAlrfhc8ACgkQoqBt8qM6
VPr+MAf/Tc66pviRlefmT3NKksVCNDpM0xZBkg8FWj4vy22+o2Y+PDo9wRdI0OOp
EJQfXhnFiC12grqFDA9pExxqjyocdlEHeZKhtlLW8RZAse+3yxdeVJa8+n6ooa9+
mF3duTVmGWZG/TWOmzML4SjIbCXYF5PUAv3PJRk7+PjsNIaxpnzZFoo9SSUrcNQu
o2rmz6CcRPjJpI0ZvG0NBGf7719M0nFzKtKllHfM5rFKjbssjXGNVqhl1VAF+8TN
ug995Q7SBD+ywCQE7PxslC8tNk/FFlG7zL8dOzHDupS6rIoexStFDTT1//Vk+6Em
yVtZafAq7MtxzYkGXTtNyBp0uo6DvQ==
=PclY
-----END PGP SIGNATURE-----
--=-=-=--




Information forwarded to guix-patches@HIDDEN:
bug#28004; Package guix-patches. Full text available.

Message received at 28004 <at> debbugs.gnu.org:


Received: (at 28004) by debbugs.gnu.org; 24 Apr 2018 18:48:47 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Apr 24 14:48:47 2018
Received: from localhost ([127.0.0.1]:38446 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1fB2ze-0007c8-U9
	for submit <at> debbugs.gnu.org; Tue, 24 Apr 2018 14:48:47 -0400
Received: from tobias.gr ([51.15.135.5]:42006)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <me@HIDDEN>) id 1fB2zd-0007bz-L6
 for 28004 <at> debbugs.gnu.org; Tue, 24 Apr 2018 14:48:46 -0400
Received: by tobias.gr (OpenSMTPD) with ESMTP id 60a3c05c;
 Tue, 24 Apr 2018 18:48:44 +0000 (UTC)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed; d=tobias.gr; h=
 mime-version:content-type:content-transfer-encoding:date:from:to
 :cc:subject:in-reply-to:references:message-id; s=2018; i=
 me@HIDDEN; bh=v9Di44tQXb26TKgPGmmn6vFBPL6BUiOZ1lNuvG0cZt8=; b=
 RYKuBlKJMUY3rfDnXOYnp7itneK9XBpkE9PMCTauTQsIZoznOYct7gBDahqX9/mF
 XnxKyBrlQovySgDKVIx9OvR84eH+sL10IPq84UtLE7oU2T0owdQESGBhxOc9sTKx
 a2HqAYni3l5cBnbrQJpKpNbq+AFaz9bUyQYXZu6/+d43uvjWtPH8vZhEmrNN+TqX
 vQ5NXrS6WoAzQM8qxt+pIzGTrgDrg426M7T7h5lHIi5TPWPA14AHfReKzkAYH/9h
 GXviBC7u73Tjb+iswKr6S53fBoJc/hKWZX2SahaO/AkRY6Rcks9n3+Xt06c9J7/D
 leBDmALkNmP3PVLx0NR0eQ==
Received: by submission.tobias.gr (OpenSMTPD) with ESMTPSA id 3e6b1516
 (TLSv1.2:ECDHE-RSA-CHACHA20-POLY1305:256:NO); 
 Tue, 24 Apr 2018 18:48:42 +0000 (UTC)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII;
 format=flowed
Content-Transfer-Encoding: 7bit
Date: Tue, 24 Apr 2018 20:48:38 +0200
From: Tobias Geerinckx-Rice <me@HIDDEN>
To: Christopher Lemmer Webber <cwebber@HIDDEN>
Subject: Re: [bug#28004] Chromium 66 + status update
Organization: tobias.gr
In-Reply-To: <068e3226d5004773fa3cb007050bd463@HIDDEN>
References: <87y3qvb15k.fsf@HIDDEN> <87po32c47b.fsf@HIDDEN>
 <87po2own4s.fsf@HIDDEN> <87woww8ojw.fsf@HIDDEN>
 <068e3226d5004773fa3cb007050bd463@HIDDEN>
Message-ID: <e4a4e0814d2152c9ae6f3f9cfedd190e@HIDDEN>
X-Sender: me@HIDDEN
User-Agent: telnet
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 28004
Cc: 28004 <at> debbugs.gnu.org, Marius Bakke <mbakke@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

Erm

On 2018-04-24 20:45, Christopher Lemmer Webber wrote:
> some nonsense

My apologies: of course Chris did no such thing.

I really need to get rid of Roundcube, that's what.

Kind regards,

T G-R

Sent from a Web browser. Excuse or enjoy my brevity.




Information forwarded to guix-patches@HIDDEN:
bug#28004; Package guix-patches. Full text available.

Message received at 28004 <at> debbugs.gnu.org:


Received: (at 28004) by debbugs.gnu.org; 24 Apr 2018 18:46:30 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Apr 24 14:46:30 2018
Received: from localhost ([127.0.0.1]:38442 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1fB2xS-0007Yz-IG
	for submit <at> debbugs.gnu.org; Tue, 24 Apr 2018 14:46:30 -0400
Received: from tobias.gr ([51.15.135.5]:41906)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <me@HIDDEN>) id 1fB2xR-0007Yq-3T
 for 28004 <at> debbugs.gnu.org; Tue, 24 Apr 2018 14:46:29 -0400
Received: by tobias.gr (OpenSMTPD) with ESMTP id 7a86ed85;
 Tue, 24 Apr 2018 18:46:27 +0000 (UTC)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed; d=tobias.gr; h=
 mime-version:content-type:content-transfer-encoding:date:from:to
 :cc:subject:in-reply-to:references:message-id; s=2018; i=
 me@HIDDEN; bh=KjCsEQCo1HTS8uJdIPpKIXp51hrGgonfuji4WNhiEp8=; b=
 V3eI1qse2E7XAtDEZk2uoFxe/1LQCL4jkY5YmrZOq6RLglc9lG33hN7pX1kPjqIR
 MlQPosY1e0CERW45exE5mN5FZRAfVPRfUUESqIp0BUM3v4sJhcUiJVbwyCDVqLKO
 bdRZ0nu4RP0+BIZ3NexAjGYR2NwuiSipjii2hgPBsBdB+Ze1vZNdZloRjqn8J//f
 muMf36UO+Mjt5pb1biB0FISkYXuoi2+6sPfo0WX3/NL9pD1O/0HWNHIdYH4rWe0r
 O6ORSreniQNXv1NvhAn1FOEdPZVLcQAZwkarfC80i4Syu+gAkAVi3xCKsJQotRmn
 Eg1v4vRS9UtC8oAJPKiYLA==
Received: by submission.tobias.gr (OpenSMTPD) with ESMTPSA id 981882a8
 (TLSv1.2:ECDHE-RSA-CHACHA20-POLY1305:256:NO); 
 Tue, 24 Apr 2018 18:46:25 +0000 (UTC)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII;
 format=flowed
Content-Transfer-Encoding: 7bit
Date: Tue, 24 Apr 2018 20:46:22 +0200
From: Tobias Geerinckx-Rice <me@HIDDEN>
To: Marius Bakke <mbakke@HIDDEN>
Subject: Re: [bug#28004] Chromium 66 + status update
Organization: tobias.gr
In-Reply-To: <87woww8ojw.fsf@HIDDEN>
References: <87y3qvb15k.fsf@HIDDEN> <87po32c47b.fsf@HIDDEN>
 <87po2own4s.fsf@HIDDEN> <87woww8ojw.fsf@HIDDEN>
Message-ID: <b0ebfaeac3dcf2641eda526754899bef@HIDDEN>
X-Sender: me@HIDDEN
User-Agent: telnet
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 28004
Cc: 28004 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.3 (---)

Marius!

On 2018-04-24 20:08, Marius Bakke wrote:
> The other remaining issue is that some data is sent to Google whenever
> you start the browser for the first time.

Sounds great! What data, exactly?

> I don't think that's a blocker

I hope it is.

Kind regards,

T G-R

Sent from a Web browser. Excuse or enjoy my brevity.




Information forwarded to guix-patches@HIDDEN:
bug#28004; Package guix-patches. Full text available.

Message received at 28004 <at> debbugs.gnu.org:


Received: (at 28004) by debbugs.gnu.org; 24 Apr 2018 18:45:16 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Apr 24 14:45:16 2018
Received: from localhost ([127.0.0.1]:38438 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1fB2wG-0007Wy-69
	for submit <at> debbugs.gnu.org; Tue, 24 Apr 2018 14:45:16 -0400
Received: from tobias.gr ([51.15.135.5]:41808)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <cwebber@HIDDEN>) id 1fB2wE-0007Wp-S5
 for 28004 <at> debbugs.gnu.org; Tue, 24 Apr 2018 14:45:15 -0400
Received: by tobias.gr (OpenSMTPD) with ESMTP id 037f869b;
 Tue, 24 Apr 2018 18:45:12 +0000 (UTC)
Received: by submission.tobias.gr (OpenSMTPD) with ESMTPSA id c8fef8c3
 (TLSv1.2:ECDHE-RSA-CHACHA20-POLY1305:256:NO); 
 Tue, 24 Apr 2018 18:45:09 +0000 (UTC)
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII;
 format=flowed
Content-Transfer-Encoding: 7bit
Date: Tue, 24 Apr 2018 20:45:06 +0200
From: Christopher Lemmer Webber <cwebber@HIDDEN>
To: Marius Bakke <mbakke@HIDDEN>
Subject: Re: [bug#28004] Chromium 66 + status update
In-Reply-To: <87woww8ojw.fsf@HIDDEN>
References: <87y3qvb15k.fsf@HIDDEN> <87po32c47b.fsf@HIDDEN>
 <87po2own4s.fsf@HIDDEN> <87woww8ojw.fsf@HIDDEN>
Message-ID: <068e3226d5004773fa3cb007050bd463@HIDDEN>
X-Sender: cwebber@HIDDEN
User-Agent: telnet
X-Spam-Score: -1.3 (-)
X-Debbugs-Envelope-To: 28004
Cc: 28004 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -2.3 (--)

Marius!

On 2018-04-24 20:08, Marius Bakke wrote:
> The other remaining issue is that some data is sent to Google whenever
> you start the browser for the first time.

Sounds great! What data, exactly?

> I don't think that's a blocker

I hope it is.

Kind regards,

T G-R

Sent from a Web browser. Excuse or enjoy my brevity.




Information forwarded to guix-patches@HIDDEN:
bug#28004; Package guix-patches. Full text available.

Message received at 28004 <at> debbugs.gnu.org:


Received: (at 28004) by debbugs.gnu.org; 24 Apr 2018 18:09:09 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Apr 24 14:09:08 2018
Received: from localhost ([127.0.0.1]:38406 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1fB2NB-0006c4-A2
	for submit <at> debbugs.gnu.org; Tue, 24 Apr 2018 14:09:08 -0400
Received: from out3-smtp.messagingengine.com ([66.111.4.27]:35269)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <mbakke@HIDDEN>) id 1fB2N4-0006bp-E6
 for 28004 <at> debbugs.gnu.org; Tue, 24 Apr 2018 14:08:59 -0400
Received: from compute5.internal (compute5.nyi.internal [10.202.2.45])
 by mailout.nyi.internal (Postfix) with ESMTP id 47B7B217A8;
 Tue, 24 Apr 2018 14:08:54 -0400 (EDT)
Received: from mailfrontend2 ([10.202.2.163])
 by compute5.internal (MEProxy); Tue, 24 Apr 2018 14:08:54 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=fastmail.com; h=
 cc:content-type:date:from:in-reply-to:message-id:mime-version
 :references:subject:to:x-me-sender:x-me-sender:x-sasl-enc; s=
 fm2; bh=8AxvMnFya43mxg957Ir5yGH3qqr7reuNKcduR7C56Yo=; b=HJlDOouO
 KSQt2ajo1qme4WwMWyBWdkKnbhaFGSC2wvHP7Si2X7TeuQKyo8mKrYF0qXYSyUM6
 9nkpUW2z4nEFt97LWv4pJR2rRiPnR22w+UzE0VW8s38Dp99P5COhStortz1HI02E
 4tB12zO+lbLrozVDlm7knw8QW8eEnqG2gLupeXztSkvyZUNObmhZdgv43SQQiv/A
 MC64qPF5H0pXTTN7oG5gOvOmZfSHzZYEFRZCXJKswWRXOY2K/lEuOq/6zwJPDxXO
 iDJJxBrP6AyJZjekA5fUP9G4BJmfrZsPFuvCQTxsqN0XbXHjkORFf99eSEPzVe53
 /0tVAoQaRU+eCQ==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
 messagingengine.com; h=cc:content-type:date:from:in-reply-to
 :message-id:mime-version:references:subject:to:x-me-sender
 :x-me-sender:x-sasl-enc; s=fm2; bh=8AxvMnFya43mxg957Ir5yGH3qqr7r
 euNKcduR7C56Yo=; b=S0g7Zi6wD9J705neF2ChXjVAyslBJnVqvH8CdsaGU6kEm
 CLmejgCMmQ4X3QpMuCko34Hi2U7SP77aW4/InlwwSgiWmQQofgBOJmui3mnfB+6A
 pbnG0J2ud3g19h2/mWF8DFTnR3hNS3Cucg2AKOhZMTXM0V0VXCsAz+HdKB+uqQ1G
 KWYYpsM3eTcG4pGD+qo3SAjTHi+/lRO3x8a0igm0o7hwinjmznNUXFPzFhQ/5rdx
 aREGx7jYd+Il4npQrk6Bei14sBgMvn0iYb12X9E+6we814qTxhLzNjWIi2t0N953
 4yYrRqOQguAS8wiCqabbqsaiQJjfBRYw4NsNnvkzg==
X-ME-Sender: <xms:tnLfWlAX4nCOsT-HGPjsrhr6Dql2NH3dL4Td1pkAAbCS-YbDZt4djw>
Received: from localhost (228.92-221-162.customer.lyse.net [92.221.162.228])
 by mail.messagingengine.com (Postfix) with ESMTPA id 4FA9710256;
 Tue, 24 Apr 2018 14:08:53 -0400 (EDT)
From: Marius Bakke <mbakke@HIDDEN>
To: Christopher Lemmer Webber <cwebber@HIDDEN>
Subject: Chromium 66 + status update
In-Reply-To: <87po2own4s.fsf@HIDDEN>
References: <87y3qvb15k.fsf@HIDDEN> <87po32c47b.fsf@HIDDEN>
 <87po2own4s.fsf@HIDDEN>
User-Agent: Notmuch/0.26.1 (https://notmuchmail.org) Emacs/25.3.1
 (x86_64-pc-linux-gnu)
Date: Tue, 24 Apr 2018 20:08:51 +0200
Message-ID: <87woww8ojw.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: multipart/signed; boundary="==-=-=";
 micalg=pgp-sha512; protocol="application/pgp-signature"
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 28004
Cc: 28004 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

--==-=-=
Content-Type: multipart/mixed; boundary="=-=-="

--=-=-=
Content-Type: text/plain

Christopher Lemmer Webber <cwebber@HIDDEN> writes:

> Hello!  I'd like to speak up in favor of getting Chromium merged into
> Guix master.  As a web developer, sometimes I have to test things
> against multiple browsers.  Having Chromium in GuixSD would help me out
> a lot.
>
> It looks like a mountain of hard work has been put into this.  Could we
> get it merged rather than have that work languish?

Hello!

I use this browser a lot, so it's hardly languishing.

There was a recent discussion[0] about the Pale Moon browser, where it
was pointed out that the FSDG[1] requires that any third-party
repositories must be committed to only free software.

[0] https://lists.gnu.org/archive/html/guix-devel/2018-03/msg00319.html
[1] https://www.gnu.org/distros/free-system-distribution-guidelines.html#license-rules

Unfortunately there are UI links to the Chrome "Web Store" still.  It's
not possible to install from it without setting the
CHROMIUM_ENABLE_WEB_STORE variable, but I'm not sure if that is
sufficient.  It's unfortunate if an unsuspecting user stumbles into the
Web Store and tries to install something (free or not) and only then
finds out that it does not work.

The other remaining issue is that some data is sent to Google whenever
you start the browser for the first time.  I don't think that's a
blocker, but it's certainly something we should aim to fix.

Attached are updates for 66.  The first is an interdiff from the
previous 65 patch; the other is the full "squashed" patch for
convenience.

New in this version:

* The snippet will now error if a preserved directory is not present.
* Chromium again requires a git revision of libvpx.
* The "safe browsing" feature requires the nonfree "unrar" program(!!),
  as such it has been compiled out.  Luckily "Inox" already had a patch
  to make the thing actually build with that flag disabled.
* Cosmetic rearrangement of patches to follow Debian and Inox patch order.


--=-=-=
Content-Type: text/x-patch
Content-Disposition: inline; filename=0001-Chromium-66-update.patch
Content-Transfer-Encoding: quoted-printable

From=20a6ce5ebc121f129c3097f1f105b6a4de925b43e9 Mon Sep 17 00:00:00 2001
From: Marius Bakke <mbakke@HIDDEN>
Date: Tue, 17 Apr 2018 03:54:56 +0200
Subject: [PATCH] Chromium 66 update.

=2D--
 gnu/local.mk                                  |   1 -
 gnu/packages/chromium.scm                     | 173 ++++++++++++------
 .../patches/chromium-glibc-compat.patch       |  38 ----
 3 files changed, 115 insertions(+), 97 deletions(-)
 delete mode 100644 gnu/packages/patches/chromium-glibc-compat.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index fdb15a074..0bc3220f8 100644
=2D-- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -592,7 +592,6 @@ dist_patch_DATA =3D						\
   %D%/packages/patches/ceph-skip-collect-sys-info-test.patch	\
   %D%/packages/patches/ceph-skip-unittest_blockdev.patch	\
   %D%/packages/patches/chmlib-inttypes.patch			\
=2D  %D%/packages/patches/chromium-glibc-compat.patch		\
   %D%/packages/patches/chromium-remove-default-history.patch	\
   %D%/packages/patches/clang-3.5-libc-search-path.patch		\
   %D%/packages/patches/clang-3.8-libc-search-path.patch		\
diff --git a/gnu/packages/chromium.scm b/gnu/packages/chromium.scm
index cecbab7a1..a6f9fec0f 100644
=2D-- a/gnu/packages/chromium.scm
+++ b/gnu/packages/chromium.scm
@@ -122,63 +122,89 @@
     (sha256 (base32 hash))
     (file-name (chromium-patch-file-name pathspec))))
=20
=2D;; Fix an assignment bug when using Clang and libstdc++.
=2D(define %chromium-clang-assignment.patch
=2D  (gentoo-patch "chromium-clang-r3.patch"
=2D                "804a0d7244a06736d01c353b45c20daf324f0722"
=2D                "1d10il3mjzyzwgqi8iifw3aw9jnbqfrzz8v1x7cmvqpwjkykwk2a"))
=2D
=2D;; Add missing stdint include.
=2D(define %chromium-add-missing-stdint.patch
=2D  (gentoo-patch "chromium-stdint.patch"
=2D                "804a0d7244a06736d01c353b45c20daf324f0722"
=2D                "03r16zqi0hm3i00b9bwq2bdn2sp731rllizcxfl3i2q7y432a3f0"))
+(define %debian-revision "debian/66.0.3359.26-1")
+(define %gentoo-revision "599be358f257098e7ba29196f6fce498b0a8d208")
+(define %inox-revision "365a106e298e04b4a7063559b7a0ee16888b928f")
=20
+;; Use system NSPR.
 (define %chromium-system-nspr.patch
   (debian-patch "system/nspr.patch"
=2D                "debian/65.0.3325.146-4"
=2D                "1ggdrlz94d75ni21rx6ivvajjwhx7zwnl3s5aapysqn9kls4qsr2"))
+                %debian-revision
+                "0x54c8zhwjldlnx4754aaq0xyb24spqia3fgn94kcf686wp61srz"))
=20
+;; And system libevent.
 (define %chromium-system-libevent.patch
   (debian-patch "system/event.patch"
=2D                "debian/65.0.3325.146-4"
=2D                "1k3zc59vpwc8rzbknxryjzzy99jk666whdablzcvxnyzaqk38kfx"))
+                %debian-revision
+                "18ka0zmfd6g5yxhknh6x94bfm643v1kgczzag5sfndizsaaxrlpc"))
=20
=2D(define %chromium-system-icu.patch
=2D  (debian-patch "system/icu.patch"
=2D                "debian/65.0.3325.146-4"
=2D                "19wclidx1kyjbi3b3hnmkjs0h34d67p4dp6a48vbjbx9rxmfdk3b"))
+;; Avoid dependency on Chromiums embedded libc++ library for GN.
+(define %chromium-gn-libcxx.patch
+  (debian-patch "gn/libcxx.patch"
+                %debian-revision
+                "14rx16abxv0pz4qyp194cy999z3390hxi80rdbjs3v2lwscx36cl"))
=20
 ;; Don't show a warning about missing API keys.
 (define %chromium-disable-api-keys-warning.patch
   (debian-patch "disable/google-api-warning.patch"
=2D                "debian/65.0.3325.146-4"
=2D                "1g5yk51bl7svrqx8wjxsgpz545mnymnpi3bsa62kwdm4qd8bx10x"))
+                %debian-revision
+                "1qf2y7jmaya43k9rbsxjjpkp5manzmbkhjj5hvfyqcdylhy30swj"))
=20
=2D;; Add DuckDuckGo and set it as the default search engine.
=2D(define %chromium-duckduckgo.patch
=2D  (inox-patch "0011-add-duckduckgo-search-engine.patch"
=2D              "0c55cc9a81634244ad13fbbd6b5c5098b9132162"
=2D              "0mvw1ax0gw3d252c9b1pwbk0j7ny8z9nsfywcmhj56wm6yksgpkg"))
+;; Some files were missing in the Chromium 66 release tarball.
+;; See <https://crbug.com/832283>.
+(define %chromium-add-blink-tools.patch
+  (origin
+    (method url-fetch)
+    (uri (string-append "https://bazaar.launchpad.net/~chromium-team"
+                        "/chromium-browser/bionic-stable/download/head:"
+                        "/addmissingblinktools-20180416203514-02f50sz15c2m=
n6ei-1"
+                        "/add-missing-blink-tools.patch"))
+    (sha256
+     (base32
+      "1im2l1g6g9mangpfphbkg6zxyglbfwbkm5jxv122yxqgm6vxzz6s"))))
=20
=2D;; Don't start a "Login Wizard" at first launch.
=2D(define %chromium-first-run.patch
=2D  (inox-patch "0018-disable-first-run-behaviour.patch"
=2D              "0c55cc9a81634244ad13fbbd6b5c5098b9132162"
=2D              "1y4zsqqf2125jkb1phwy9g5hcbd9xhyv5lr4xcaly66rpdzx2ayb"))
+;; Fix an assignment bug when using Clang and libstdc++.
+(define %chromium-clang-assignment.patch
+  (gentoo-patch "chromium-clang-r4.patch"
+                %gentoo-revision
+                "0ip3pzk9is6n7icpml33ryysiq4cfrx8jlr0jkjgdg6mvl8pli3i"))
+
+;; Fix error detecting system ffmpeg.
+(define %chromium-ffmpeg.patch
+  (gentoo-patch "chromium-ffmpeg-r1.patch"
+                %gentoo-revision
+                "1pivcdmana4qx8sngcdpr858l0qh6bygv7azj66vg021phq5725a"))
+
+;; Fix build failure when built with "safe_browsing_mode=3D0".
+(define %chromium-build-without-safebrowsing.patch
+  (inox-patch "0001-fix-building-without-safebrowsing.patch"
+              %inox-revision
+              "0r1as6vmc6bbc7i54cxbmbm6rrwj33a12hfz6rzj0yxyqnnps00f"))
=20
 ;; Use privacy-preserving defaults.
 (define %chromium-default-preferences.patch
   (inox-patch "0006-modify-default-prefs.patch"
=2D              "0c55cc9a81634244ad13fbbd6b5c5098b9132162"
=2D              "0zyshpl1hjssqrfhdfbgxdib4smdszjgf0ac98l978hrn9gwwk03"))
+              %inox-revision
+              "1ncjij9sib7fliafpv37j1zf8zz5hvyxqad669vvadg7vvwr9rza"))
=20
 ;; Recent versions of Chromium may load a remote search engine on the
 ;; New Tab Page, causing unnecessary and involuntary network traffic.
 (define %chromium-restore-classic-ntp.patch
   (inox-patch "0008-restore-classic-ntp.patch"
=2D              "0c55cc9a81634244ad13fbbd6b5c5098b9132162"
=2D              "1h698cbp97g8lgmndfy6kswgwfvss7c3k609xgvyxbfldkzy7pd5"))
+              %inox-revision
+              "1jl978qas2ry9lnq6x42xl4qa6arxxj9a37k9j2wclz2pin8cmzn"))
+
+;; Add DuckDuckGo and set it as the default search engine.
+(define %chromium-duckduckgo.patch
+  (inox-patch "0011-add-duckduckgo-search-engine.patch"
+              %inox-revision
+              "0mvw1ax0gw3d252c9b1pwbk0j7ny8z9nsfywcmhj56wm6yksgpkg"))
+
+;; Don't start a "Login Wizard" at first launch.
+(define %chromium-first-run.patch
+  (inox-patch "0018-disable-first-run-behaviour.patch"
+              %inox-revision
+              "1y4zsqqf2125jkb1phwy9g5hcbd9xhyv5lr4xcaly66rpdzx2ayb"))
=20
 (define opus+custom
   (package (inherit opus)
@@ -194,6 +220,17 @@
=20
 (define libvpx+experimental
   (package (inherit libvpx)
+           ;; XXX: Chromium 66 relies on unreleased libvpx features.
+           ;; The commit below is the tip of the "m66-3359" branch
+           ;; as of 2018-04-19.
+           (source (origin
+                     (method git-fetch)
+                     (uri (git-reference
+                           (url "https://chromium.googlesource.com/webm/li=
bvpx")
+                           (commit "e9fff8a9dbcd03fbf3e5b7caaa9dc2631a7988=
2a")))
+                     (sha256
+                      (base32
+                       "1b1d89dlbr8ydakvp82cg6xnlnkz5hj7679f4pgxwlgd6x46f4=
g2"))))
            (name "libvpx+experimental")
            (arguments
             (substitute-keyword-arguments (package-arguments libvpx)
@@ -305,7 +342,7 @@ includes Clang, the Guix ld wrapper, glibc, a C++ libra=
ry, and Binutils.")
 (define-public chromium
   (package
     (name "chromium")
=2D    (version "65.0.3325.181")
+    (version "66.0.3359.117")
     (synopsis "Graphical web browser")
     (source (origin
               (method url-fetch)
@@ -314,19 +351,22 @@ includes Clang, the Guix ld wrapper, glibc, a C++ lib=
rary, and Binutils.")
                                   version ".tar.xz"))
               (sha256
                (base32
=2D                "11w6wg862ixbgm7dpqag2lmbjknv83zlr9imd8zchvmrqr468rlk"))
=2D              (patches (list %chromium-duckduckgo.patch
=2D                             %chromium-default-preferences.patch
=2D                             %chromium-first-run.patch
=2D                             %chromium-restore-classic-ntp.patch
=2D
=2D                             %chromium-clang-assignment.patch
=2D                             %chromium-add-missing-stdint.patch
=2D                             %chromium-system-icu.patch
+                "1mlfavs0m0lf60s42krqxqiyx73hdfd4r1mkjwv31p2gchsa7ibp"))
+              (patches (list %chromium-gn-libcxx.patch
+                             %chromium-disable-api-keys-warning.patch
                              %chromium-system-nspr.patch
                              %chromium-system-libevent.patch
=2D                             %chromium-disable-api-keys-warning.patch
=2D                             (search-patch "chromium-glibc-compat.patch")
+
+                             %chromium-add-blink-tools.patch
+
+                             %chromium-clang-assignment.patch
+                             %chromium-ffmpeg.patch
+
+                             %chromium-build-without-safebrowsing.patch
+                             %chromium-default-preferences.patch
+                             %chromium-restore-classic-ntp.patch
+                             %chromium-duckduckgo.patch
+                             %chromium-first-run.patch
                              (search-patch "chromium-remove-default-histor=
y.patch")))
               (modules '((srfi srfi-1)
                          (srfi srfi-26)
@@ -351,7 +391,6 @@ includes Clang, the Guix ld wrapper, glibc, a C++ libra=
ry, and Binutils.")
                            "base/third_party/symbolize" ;glog
                            "base/third_party/xdg_mime"
                            "base/third_party/xdg_user_dirs"
=2D                           "buildtools/third_party/libc++"
                            "chrome/third_party/mozilla_security_manager"
                            "courgette/third_party"
                            "net/third_party/mozilla_security_manager"
@@ -367,6 +406,10 @@ includes Clang, the Guix ld wrapper, glibc, a C++ libr=
ary, and Binutils.")
                            "third_party/angle/src/third_party/compiler"
                            "third_party/angle/src/third_party/libXNVCtrl"
                            "third_party/angle/src/third_party/trace_event"
+                           "third_party/angle/third_party/glslang"
+                           "third_party/angle/third_party/spirv-headers"
+                           "third_party/angle/third_party/spirv-tools"
+                           "third_party/angle/third_party/vulkan-validatio=
n-layers"
                            "third_party/blink"
                            "third_party/boringssl"
                            "third_party/boringssl/src/third_party/fiat"
@@ -406,6 +449,8 @@ includes Clang, the Guix ld wrapper, glibc, a C++ libra=
ry, and Binutils.")
                            "third_party/leveldatabase"
                            "third_party/libXNVCtrl"
                            "third_party/libaddressinput"
+                           "third_party/libaom"
+                           "third_party/libaom/source/libaom/third_party/x=
86inc/x86inc.asm"
                            "third_party/libjingle_xmpp"
                            "third_party/libphonenumber"
                            "third_party/libsecret" ;FIXME: needs pkg-confi=
g support.
@@ -420,7 +465,6 @@ includes Clang, the Guix ld wrapper, glibc, a C++ libra=
ry, and Binutils.")
                            "third_party/mesa"
                            "third_party/metrics_proto"
                            "third_party/modp_b64"
=2D                           "third_party/mt19937ar"
                            "third_party/node"
                            (string-append "third_party/node/node_modules/"
                                           "polymer-bundler/lib/third_party=
/UglifyJS2")
@@ -430,7 +474,7 @@ includes Clang, the Guix ld wrapper, glibc, a C++ libra=
ry, and Binutils.")
                            "third_party/pdfium"
                            "third_party/pdfium/third_party"
                            (string-append "third_party/pdfium/third_party/=
freetype"
=2D                                          "/include/psnames/pstables.h")
+                                          "/include/pstables.h")
                            "third_party/ply"
                            "third_party/polymer"
                            "third_party/protobuf"
@@ -442,16 +486,12 @@ includes Clang, the Guix ld wrapper, glibc, a C++ lib=
rary, and Binutils.")
                            "third_party/skia/third_party/gif"
                            "third_party/smhasher"
                            "third_party/speech-dispatcher"
=2D                           "third_party/spirv-headers"
=2D                           "third_party/spirv-tools-angle"
                            "third_party/sqlite"
                            "third_party/swiftshader"
                            "third_party/swiftshader/third_party"
                            "third_party/s2cellid"
                            "third_party/usb_ids"
                            "third_party/usrsctp"
=2D                           "third_party/vulkan"
=2D                           "third_party/vulkan-validation-layers"
                            "third_party/WebKit"
                            "third_party/web-animations-js"
                            "third_party/webrtc"
@@ -475,6 +515,10 @@ includes Clang, the Guix ld wrapper, glibc, a C++ libr=
ary, and Binutils.")
                           #t
                           #f))
=20
+                    (define (useless? file)
+                      (any (cute string-suffix? <> file)
+                           '(".tar.gz" ".zip" ".exe" ".jar")))
+
                     (define (parents child)
                       "Return a list of paths up to and including the clos=
est third_party"
                       (let ((lst (reverse (string-split child #\/))))
@@ -492,11 +536,12 @@ includes Clang, the Guix ld wrapper, glibc, a C++ lib=
rary, and Binutils.")
                       (let ((protected (make-regexp "\\.(gn|gyp)i?$")))
                         (match flag
                           ((or 'regular 'symlink 'stale-symlink)
=2D                           (when (third_party? child)
+                           (when (or (third_party? child) (useless? child))
                              (unless (or (member child preserved-club)
                                          (any (cute member <> preserved-cl=
ub)
                                               (parents child))
                                          (regexp-exec protected child))
+                               (format (current-error-port) "deleting ~s~%=
" child)
                                (delete-file child)))
                            #t)
                           ('directory-processed
@@ -507,9 +552,11 @@ includes Clang, the Guix ld wrapper, glibc, a C++ libr=
ary, and Binutils.")
=20
                     (nftw "." delete-unwanted 'depth 'physical)
=20
=2D                    ;; Do a second pass to get rid of various binary arc=
hives.
=2D                    (for-each delete-file
=2D                              (find-files "." "\\.(zip|jar|tar.gz|exe)$"=
))
+                    ;; Assert that each listed item is present to catch re=
movals.
+                    (for-each (lambda (third-party)
+                                (unless (file-exists? third-party)
+                                  (error (format #f "~s does not exist!" t=
hird-party))))
+                              preserved-club)
=20
                     ;; Replace "GN" files from third_party with shims for
                     ;; building against system libraries.  Keep this list =
in
@@ -635,7 +682,12 @@ includes Clang, the Guix ld wrapper, glibc, a C++ libr=
ary, and Binutils.")
                       "override_build_date=3D\"01 01 2000 05:00:00\""
                       "use_unofficial_version_number=3Dfalse"
=20
+                      ;; Disable "safe browsing", which pulls in a depende=
ncy
+                      ;; on the nonfree "unrar" program.
+                      "safe_browsing_mode=3D0"
+
                       ;; GCC is poorly supported, so we use Clang for now.
+                      ;;"is_clang=3Dfalse"
                       (string-append "clang_base_path=3D\"" clang-toolchai=
n "\"")
                       "clang_use_chrome_plugins=3Dfalse"
=20
@@ -716,6 +768,11 @@ includes Clang, the Guix ld wrapper, glibc, a C++ libr=
ary, and Binutils.")
                        (string-append (getenv "CPLUS_INCLUDE_PATH")
                                       ":" clang-toolchain
                                       "/include/x86_64-unknown-linux-gnu"))
+               ;; XXX: For some reason this is needed also for C code (lib=
aom).
+               (setenv "C_INCLUDE_PATH"
+                       (string-append (getenv "C_INCLUDE_PATH")
+                                      ":" clang-toolchain
+                                      "/include/x86_64-unknown-linux-gnu"))
=20
                ;; TODO: pre-compile instead. Avoids a race condition.
                (setenv "PYTHONDONTWRITEBYTECODE" "1")
diff --git a/gnu/packages/patches/chromium-glibc-compat.patch b/gnu/package=
s/patches/chromium-glibc-compat.patch
deleted file mode 100644
index 720adbeef..000000000
=2D-- a/gnu/packages/patches/chromium-glibc-compat.patch
+++ /dev/null
@@ -1,38 +0,0 @@
=2DUpstream-Status: Backport
=2D
=2DSigned-off-by: Raphael Kubo da Costa <raphael.kubo.da.costa@HIDDEN>
=2D---
=2DFrom 9f63f94a11abc34d40ede8b8712fa15b5844a8c0 Mon Sep 17 00:00:00 2001
=2DFrom: Tom Anderson <thomasanderson@HIDDEN>
=2DDate: Sat, 27 Jan 2018 20:03:37 +0000
=2DSubject: [PATCH] Fix build with glibc 2.27
=2D
=2DBUG=3D806340
=2DTBR=3Dhamelphi@HIDDEN
=2D
=2DChange-Id: Ib4e5091212d874d9ad88f3e9a1fdfee3ed7e0d5e
=2DReviewed-on: https://chromium-review.googlesource.com/890059
=2DReviewed-by: Thomas Anderson <thomasanderson@HIDDEN>
=2DReviewed-by: Philippe Hamel <hamelphi@HIDDEN>
=2DCommit-Queue: Thomas Anderson <thomasanderson@HIDDEN>
=2DCr-Commit-Position: refs/heads/master@{#532249}
=2D---
=2D components/assist_ranker/ranker_example_util.cc | 2 ++
=2D 1 file changed, 2 insertions(+)
=2D
=2Ddiff --git a/components/assist_ranker/ranker_example_util.cc b/component=
s/assist_ranker/ranker_example_util.cc
=2Dindex 54d4dbd58f7d..ceedd8f9b18d 100644
=2D--- a/components/assist_ranker/ranker_example_util.cc
=2D+++ b/components/assist_ranker/ranker_example_util.cc
=2D@@ -2,6 +2,8 @@
=2D // Use of this source code is governed by a BSD-style license that can =
be
=2D // found in the LICENSE file.
=2D=20
=2D+#include <math.h>
=2D+
=2D #include "components/assist_ranker/ranker_example_util.h"
=2D #include "base/bit_cast.h"
=2D #include "base/format_macros.h"
=2D--=20
=2D2.14.3
=2D
=2D-=20
2.17.0


--=-=-=
Content-Type: text/plain


...and the full thing:


--=-=-=
Content-Type: text/x-patch; charset=utf-8
Content-Disposition: attachment; filename=0001-gnu-Add-chromium.patch
Content-Transfer-Encoding: quoted-printable

From=200b08dd695ee9f3d8e64173dea5f9d0470ed92718 Mon Sep 17 00:00:00 2001
From: Marius Bakke <mbakke@HIDDEN>
Date: Wed, 12 Oct 2016 17:25:05 +0100
Subject: [PATCH] gnu: Add chromium.

* gnu/packages/chromium.scm: New file.
* gnu/packages/patches/chromium-glibc-compat.patch,
gnu/packages/patches/chromium-remove-default-history.patch: New files.
* gnu/local.mk: Record it.
=2D--
 gnu/local.mk                                  |   2 +
 gnu/packages/chromium.scm                     | 951 ++++++++++++++++++
 .../chromium-remove-default-history.patch     |  13 +
 3 files changed, 966 insertions(+)
 create mode 100644 gnu/packages/chromium.scm
 create mode 100644 gnu/packages/patches/chromium-remove-default-history.pa=
tch

diff --git a/gnu/local.mk b/gnu/local.mk
index 056a46cb7..0bc3220f8 100644
=2D-- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -94,6 +94,7 @@ GNU_SYSTEM_MODULES =3D				\
   %D%/packages/check.scm			\
   %D%/packages/chemistry.scm			\
   %D%/packages/chez.scm				\
+  %D%/packages/chromium.scm			\
   %D%/packages/ci.scm				\
   %D%/packages/cinnamon.scm			\
   %D%/packages/cmake.scm			\
@@ -591,6 +592,7 @@ dist_patch_DATA =3D						\
   %D%/packages/patches/ceph-skip-collect-sys-info-test.patch	\
   %D%/packages/patches/ceph-skip-unittest_blockdev.patch	\
   %D%/packages/patches/chmlib-inttypes.patch			\
+  %D%/packages/patches/chromium-remove-default-history.patch	\
   %D%/packages/patches/clang-3.5-libc-search-path.patch		\
   %D%/packages/patches/clang-3.8-libc-search-path.patch		\
   %D%/packages/patches/clang-6.0-libc-search-path.patch		\
diff --git a/gnu/packages/chromium.scm b/gnu/packages/chromium.scm
new file mode 100644
index 000000000..a6f9fec0f
=2D-- /dev/null
+++ b/gnu/packages/chromium.scm
@@ -0,0 +1,951 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright =C2=A9 2016, 2017, 2018 Marius Bakke <mbakke@HIDDEN>
+;;;
+;;; This file is part of GNU Guix.
+;;;
+;;; GNU Guix is free software; you can redistribute it and/or modify it
+;;; under the terms of the GNU General Public License as published by
+;;; the Free Software Foundation; either version 3 of the License, or (at
+;;; your option) any later version.
+;;;
+;;; GNU Guix is distributed in the hope that it will be useful, but
+;;; WITHOUT ANY WARRANTY; without even the implied warranty of
+;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+;;; GNU General Public License for more details.
+;;;
+;;; You should have received a copy of the GNU General Public License
+;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
+
+(define-module (gnu packages chromium)
+  #:use-module ((guix licenses) #:prefix license:)
+  #:use-module (guix packages)
+  #:use-module (guix download)
+  #:use-module (guix git-download)
+  #:use-module (guix utils)
+  #:use-module (guix build-system gnu)
+  #:use-module (guix build-system trivial)
+  #:use-module (gnu packages)
+  #:use-module (gnu packages assembly)
+  #:use-module (gnu packages base)
+  #:use-module (gnu packages bison)
+  #:use-module (gnu packages compression)
+  #:use-module (gnu packages cups)
+  #:use-module (gnu packages curl)
+  #:use-module (gnu packages databases)
+  #:use-module (gnu packages fontutils)
+  #:use-module (gnu packages gcc)
+  #:use-module (gnu packages ghostscript)
+  #:use-module (gnu packages gl)
+  #:use-module (gnu packages glib)
+  #:use-module (gnu packages gnome)
+  #:use-module (gnu packages gnuzilla)
+  #:use-module (gnu packages gperf)
+  #:use-module (gnu packages gtk)
+  #:use-module (gnu packages icu4c)
+  #:use-module (gnu packages image)
+  #:use-module (gnu packages libevent)
+  #:use-module (gnu packages libffi)
+  #:use-module (gnu packages libusb)
+  #:use-module (gnu packages linux)
+  #:use-module (gnu packages llvm)
+  #:use-module (gnu packages kerberos)
+  #:use-module (gnu packages ninja)
+  #:use-module (gnu packages node)
+  #:use-module (gnu packages pciutils)
+  #:use-module (gnu packages photo)
+  #:use-module (gnu packages pkg-config)
+  #:use-module (gnu packages protobuf)
+  #:use-module (gnu packages pulseaudio)
+  #:use-module (gnu packages python)
+  #:use-module (gnu packages python-web)
+  #:use-module (gnu packages regex)
+  #:use-module (gnu packages serialization)
+  #:use-module (gnu packages speech)
+  #:use-module (gnu packages tls)
+  #:use-module (gnu packages valgrind)
+  #:use-module (gnu packages version-control)
+  #:use-module (gnu packages video)
+  #:use-module (gnu packages xiph)
+  #:use-module (gnu packages xml)
+  #:use-module (gnu packages xdisorg)
+  #:use-module (gnu packages xorg))
+
+(define (strip-directory-prefix pathspec)
+  "Return everything after the last '/' in PATHSPEC."
+  (let ((index (string-rindex pathspec #\/)))
+    (if index
+        (string-drop pathspec (+ 1 index))
+        pathspec)))
+
+(define (chromium-patch-file-name pathspec)
+  (let ((patch-name (strip-directory-prefix pathspec)))
+    (if (string-prefix? "chromium-" patch-name)
+        patch-name
+        (string-append "chromium-" patch-name))))
+
+;; https://anonscm.debian.org/cgit/pkg-chromium/pkg-chromium.git/tree/debi=
an/patches
+(define (debian-patch pathspec revision hash)
+  (origin
+    (method url-fetch)
+    (uri (string-append
+          "https://anonscm.debian.org/cgit/pkg-chromium/pkg-chromium.git"
+          "/plain/debian/patches/" pathspec "?id=3D" revision))
+    (sha256 (base32 hash))
+    (file-name (chromium-patch-file-name pathspec))))
+
+;; https://gitweb.gentoo.org/repo/gentoo.git/tree/www-client/chromium/files
+(define (gentoo-patch pathspec revision hash)
+  (origin
+    (method url-fetch)
+    (uri (string-append
+          "https://gitweb.gentoo.org/repo/gentoo.git/plain/www-client"
+          "/chromium/files/" pathspec "?id=3D" revision))
+    (sha256 (base32 hash))
+    (file-name (chromium-patch-file-name pathspec))))
+
+;; https://github.com/gcarq/inox-patchset
+(define (inox-patch pathspec revision hash)
+  (origin
+    (method url-fetch)
+    (uri (string-append "https://raw.githubusercontent.com/gcarq/inox-patc=
hset/"
+                        revision "/" pathspec))
+    (sha256 (base32 hash))
+    (file-name (chromium-patch-file-name pathspec))))
+
+;; https://github.com/NixOS/nixpkgs/tree/master/pkgs/applications/networki=
ng/browsers/chromium
+(define (nixos-patch pathspec revision hash)
+  (origin
+    (method url-fetch)
+    (uri (string-append "https://raw.githubusercontent.com/NixOS/nixpkgs/"
+                        revision "/pkgs/applications/networking/browsers"
+                        "/chromium/patches/" pathspec))
+    (sha256 (base32 hash))
+    (file-name (chromium-patch-file-name pathspec))))
+
+(define %debian-revision "debian/66.0.3359.26-1")
+(define %gentoo-revision "599be358f257098e7ba29196f6fce498b0a8d208")
+(define %inox-revision "365a106e298e04b4a7063559b7a0ee16888b928f")
+
+;; Use system NSPR.
+(define %chromium-system-nspr.patch
+  (debian-patch "system/nspr.patch"
+                %debian-revision
+                "0x54c8zhwjldlnx4754aaq0xyb24spqia3fgn94kcf686wp61srz"))
+
+;; And system libevent.
+(define %chromium-system-libevent.patch
+  (debian-patch "system/event.patch"
+                %debian-revision
+                "18ka0zmfd6g5yxhknh6x94bfm643v1kgczzag5sfndizsaaxrlpc"))
+
+;; Avoid dependency on Chromiums embedded libc++ library for GN.
+(define %chromium-gn-libcxx.patch
+  (debian-patch "gn/libcxx.patch"
+                %debian-revision
+                "14rx16abxv0pz4qyp194cy999z3390hxi80rdbjs3v2lwscx36cl"))
+
+;; Don't show a warning about missing API keys.
+(define %chromium-disable-api-keys-warning.patch
+  (debian-patch "disable/google-api-warning.patch"
+                %debian-revision
+                "1qf2y7jmaya43k9rbsxjjpkp5manzmbkhjj5hvfyqcdylhy30swj"))
+
+;; Some files were missing in the Chromium 66 release tarball.
+;; See <https://crbug.com/832283>.
+(define %chromium-add-blink-tools.patch
+  (origin
+    (method url-fetch)
+    (uri (string-append "https://bazaar.launchpad.net/~chromium-team"
+                        "/chromium-browser/bionic-stable/download/head:"
+                        "/addmissingblinktools-20180416203514-02f50sz15c2m=
n6ei-1"
+                        "/add-missing-blink-tools.patch"))
+    (sha256
+     (base32
+      "1im2l1g6g9mangpfphbkg6zxyglbfwbkm5jxv122yxqgm6vxzz6s"))))
+
+;; Fix an assignment bug when using Clang and libstdc++.
+(define %chromium-clang-assignment.patch
+  (gentoo-patch "chromium-clang-r4.patch"
+                %gentoo-revision
+                "0ip3pzk9is6n7icpml33ryysiq4cfrx8jlr0jkjgdg6mvl8pli3i"))
+
+;; Fix error detecting system ffmpeg.
+(define %chromium-ffmpeg.patch
+  (gentoo-patch "chromium-ffmpeg-r1.patch"
+                %gentoo-revision
+                "1pivcdmana4qx8sngcdpr858l0qh6bygv7azj66vg021phq5725a"))
+
+;; Fix build failure when built with "safe_browsing_mode=3D0".
+(define %chromium-build-without-safebrowsing.patch
+  (inox-patch "0001-fix-building-without-safebrowsing.patch"
+              %inox-revision
+              "0r1as6vmc6bbc7i54cxbmbm6rrwj33a12hfz6rzj0yxyqnnps00f"))
+
+;; Use privacy-preserving defaults.
+(define %chromium-default-preferences.patch
+  (inox-patch "0006-modify-default-prefs.patch"
+              %inox-revision
+              "1ncjij9sib7fliafpv37j1zf8zz5hvyxqad669vvadg7vvwr9rza"))
+
+;; Recent versions of Chromium may load a remote search engine on the
+;; New Tab Page, causing unnecessary and involuntary network traffic.
+(define %chromium-restore-classic-ntp.patch
+  (inox-patch "0008-restore-classic-ntp.patch"
+              %inox-revision
+              "1jl978qas2ry9lnq6x42xl4qa6arxxj9a37k9j2wclz2pin8cmzn"))
+
+;; Add DuckDuckGo and set it as the default search engine.
+(define %chromium-duckduckgo.patch
+  (inox-patch "0011-add-duckduckgo-search-engine.patch"
+              %inox-revision
+              "0mvw1ax0gw3d252c9b1pwbk0j7ny8z9nsfywcmhj56wm6yksgpkg"))
+
+;; Don't start a "Login Wizard" at first launch.
+(define %chromium-first-run.patch
+  (inox-patch "0018-disable-first-run-behaviour.patch"
+              %inox-revision
+              "1y4zsqqf2125jkb1phwy9g5hcbd9xhyv5lr4xcaly66rpdzx2ayb"))
+
+(define opus+custom
+  (package (inherit opus)
+           (name "opus+custom")
+           (arguments
+            (substitute-keyword-arguments (package-arguments opus)
+              ((#:configure-flags flags ''())
+               ;; Opus Custom is an optional extension of the Opus
+               ;; specification that allows for unsupported frame
+               ;; sizes.  Chromium requires that this is enabled.
+               `(cons "--enable-custom-modes"
+                      ,flags))))))
+
+(define libvpx+experimental
+  (package (inherit libvpx)
+           ;; XXX: Chromium 66 relies on unreleased libvpx features.
+           ;; The commit below is the tip of the "m66-3359" branch
+           ;; as of 2018-04-19.
+           (source (origin
+                     (method git-fetch)
+                     (uri (git-reference
+                           (url "https://chromium.googlesource.com/webm/li=
bvpx")
+                           (commit "e9fff8a9dbcd03fbf3e5b7caaa9dc2631a7988=
2a")))
+                     (sha256
+                      (base32
+                       "1b1d89dlbr8ydakvp82cg6xnlnkz5hj7679f4pgxwlgd6x46f4=
g2"))))
+           (name "libvpx+experimental")
+           (arguments
+            (substitute-keyword-arguments (package-arguments libvpx)
+              ((#:configure-flags flags)
+               ;; Spatial SVC is an experimental VP9 encoder required
+               ;; by Chromium.
+               `(cons* "--enable-experimental" "--enable-spatial-svc"
+                       ,flags))))))
+
+;; XXX: This ugly libstdc++ variant stems from the fact that building
+;; libstdc++ standalone is not officially supported by GCC upstream, and
+;; the "make-libstdc++" procedure consequently builds a library without
+;; threading support, since the configure script fails to detect gthreads.
+;;
+;; Fixing it properly would require building libgcc (which creates
+;; gthr-default.h) before building libstdc++.  This authors attempts
+;; at doing so were unsuccessful, hence this hack.
+;;
+;; This behaviour changed upstream in this commit:
+;; https://gcc.gnu.org/git/?p=3Dgcc.git;a=3Dcommit;h=3D630d52ca0a88d173f89=
634a5d7dd8aee07d04d80
+;; ...or around GCC 4.6.  The libstdc++ docs are very explicit about it
+;; not being designed to used standalone (even though it worked just fine
+;; before 4.6, according to multiple mailing list threads around that time=
),
+;; so upstream is not interested in improving the situation.
+;;
+;; In fact, there used to be an "INSTALL" document with libstdc++, which
+;; is conspicuously missing in later releases.
+;;
+;; An alternative would be to change the GCC package to install C++ headers
+;; in "include" rather than "include/c++".  I tried that too; but it caused
+;; a bootstrapping failure.  The situation is further complicated by the
+;; fact that GCC installs C++ headers in the default output, but libstdc++=
.so
+;; ends up in "lib".
+;;
+;; To be continued...
+
+(define (libstdc++-from-gcc gcc)
+  "Return a libstdc++ library extracted from gcc.  The primary use case
+is when using compilers other than GCC."
+  (package
+    (inherit gcc)
+    (source #f)
+    (name "libstdc++")
+    (build-system trivial-build-system)
+    (arguments
+     `(#:modules ((guix build utils))
+       #:builder (begin
+                  (use-modules (guix build utils))
+                  (let* ((out (assoc-ref %outputs "out"))
+                         (lib (string-append out "/lib"))
+                         (include (string-append out "/include"))
+                         (gcc (assoc-ref %build-inputs "gcc"))
+                         (gcc-lib (assoc-ref %build-inputs "gcc:lib")))
+                    (mkdir-p out)
+                    (copy-recursively (string-append gcc "/include/c++")
+                                      include)
+                    (for-each (lambda (file)
+                                (install-file file lib))
+                              (find-files (string-append gcc-lib "/lib")
+                                          "^libstdc\\+\\+\\.so.*"))
+                    #t))))
+    (outputs '("out"))
+    (inputs `(("gcc" ,gcc)
+              ("gcc:lib" ,gcc "lib")))
+    (native-inputs '())
+    (propagated-inputs '())
+    (synopsis "GNU C++ standard library")))
+
+(define (make-clang-toolchain clang libcxx)
+  "Return a complete toolchain for Clang."
+  (package
+    (name "clang-toolchain")
+    (version (package-version clang))
+    (source #f)
+    (build-system trivial-build-system)
+    (arguments
+     '(#:modules ((guix build union))
+       #:builder (begin
+                   (use-modules (ice-9 match)
+                                (srfi srfi-26)
+                                (guix build union))
+
+                   (let ((out (assoc-ref %outputs "out")))
+
+                     (match %build-inputs
+                       (((names . directories) ...)
+                        (union-build out directories)))
+                     #t))))
+    (native-search-paths (package-native-search-paths clang))
+    (search-paths (package-search-paths clang))
+    (license (package-license clang))
+    (synopsis "Complete Clang tool chain for C/C++ development")
+    (description
+     "This package provides a complete Clang tool chain for C/C++.  This
+includes Clang, the Guix ld wrapper, glibc, a C++ library, and Binutils.")
+    (home-page "https://clang.llvm.org")
+    (outputs '("out"))
+    (inputs `(("clang" ,clang)
+              ("libcxx" ,libcxx)
+              ("ld-wrapper" ,(car (assoc-ref (%final-inputs) "ld-wrapper")=
))
+              ("binutils" ,binutils)
+              ("libc" ,glibc)))))
+
+;; When using Clang, Chromium expects to find "ar" and friends next
+;; to the clang executable.  For simplicity just create this union.
+(define chromium-clang-toolchain
+  (make-clang-toolchain clang (libstdc++-from-gcc gcc-6)))
+
+(define-public chromium
+  (package
+    (name "chromium")
+    (version "66.0.3359.117")
+    (synopsis "Graphical web browser")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "https://commondatastorage.googleapis.co=
m/"
+                                  "chromium-browser-official/chromium-"
+                                  version ".tar.xz"))
+              (sha256
+               (base32
+                "1mlfavs0m0lf60s42krqxqiyx73hdfd4r1mkjwv31p2gchsa7ibp"))
+              (patches (list %chromium-gn-libcxx.patch
+                             %chromium-disable-api-keys-warning.patch
+                             %chromium-system-nspr.patch
+                             %chromium-system-libevent.patch
+
+                             %chromium-add-blink-tools.patch
+
+                             %chromium-clang-assignment.patch
+                             %chromium-ffmpeg.patch
+
+                             %chromium-build-without-safebrowsing.patch
+                             %chromium-default-preferences.patch
+                             %chromium-restore-classic-ntp.patch
+                             %chromium-duckduckgo.patch
+                             %chromium-first-run.patch
+                             (search-patch "chromium-remove-default-histor=
y.patch")))
+              (modules '((srfi srfi-1)
+                         (srfi srfi-26)
+                         (ice-9 ftw)
+                         (ice-9 match)
+                         (ice-9 regex)
+                         (guix build utils)))
+              (snippet
+               '(begin
+                  (let ((preserved-club
+                         (map
+                          (lambda (path)
+                            ;; Prepend paths with "./" for comparison with=
 ftw.
+                            (string-append "./" path))
+                          (list
+                           "base/third_party/dmg_fp"
+                           "base/third_party/dynamic_annotations"
+                           "base/third_party/icu"
+                           "base/third_party/libevent"
+                           "base/third_party/nspr"
+                           "base/third_party/superfasthash"
+                           "base/third_party/symbolize" ;glog
+                           "base/third_party/xdg_mime"
+                           "base/third_party/xdg_user_dirs"
+                           "chrome/third_party/mozilla_security_manager"
+                           "courgette/third_party"
+                           "net/third_party/mozilla_security_manager"
+                           "net/third_party/nss"
+                           "third_party/adobe/flash/flapper_version.h"
+                           ;; FIXME: This is used in:
+                           ;; * ui/webui/resources/js/analytics.js
+                           ;; * ui/file_manager/
+                           "third_party/analytics"
+                           "third_party/angle"
+                           "third_party/angle/src/common/third_party/base"
+                           "third_party/angle/src/common/third_party/smhas=
her"
+                           "third_party/angle/src/third_party/compiler"
+                           "third_party/angle/src/third_party/libXNVCtrl"
+                           "third_party/angle/src/third_party/trace_event"
+                           "third_party/angle/third_party/glslang"
+                           "third_party/angle/third_party/spirv-headers"
+                           "third_party/angle/third_party/spirv-tools"
+                           "third_party/angle/third_party/vulkan-validatio=
n-layers"
+                           "third_party/blink"
+                           "third_party/boringssl"
+                           "third_party/boringssl/src/third_party/fiat"
+                           "third_party/breakpad"
+                           "third_party/brotli"
+                           "third_party/cacheinvalidation"
+                           "third_party/catapult"
+                           "third_party/catapult/common/py_vulcanize/third=
_party/rcssmin"
+                           "third_party/catapult/common/py_vulcanize/third=
_party/rjsmin"
+                           "third_party/catapult/third_party/polymer"
+                           "third_party/catapult/tracing/third_party/d3"
+                           "third_party/catapult/tracing/third_party/gl-ma=
trix"
+                           "third_party/catapult/tracing/third_party/jszip"
+                           "third_party/catapult/tracing/third_party/mannw=
hitneyu"
+                           "third_party/catapult/tracing/third_party/oboe"
+                           "third_party/catapult/tracing/third_party/pako"
+                           "third_party/ced"
+                           "third_party/cld_3"
+                           "third_party/crc32c"
+                           "third_party/cros_system_api"
+                           "third_party/dom_distiller_js"
+                           "third_party/fips181"
+                           "third_party/flatbuffers"
+                           "third_party/glslang-angle"
+                           "third_party/google_input_tools"
+                           "third_party/google_input_tools/third_party/clo=
sure_library"
+                           (string-append "third_party/google_input_tools/=
third_party"
+                                          "/closure_library/third_party/cl=
osure")
+                           "third_party/googletest"
+                           "third_party/harfbuzz-ng"
+                           "third_party/hunspell"
+                           "third_party/iccjpeg"
+                           "third_party/inspector_protocol"
+                           "third_party/jinja2"
+                           "third_party/jstemplate"
+                           "third_party/khronos"
+                           "third_party/leveldatabase"
+                           "third_party/libXNVCtrl"
+                           "third_party/libaddressinput"
+                           "third_party/libaom"
+                           "third_party/libaom/source/libaom/third_party/x=
86inc/x86inc.asm"
+                           "third_party/libjingle_xmpp"
+                           "third_party/libphonenumber"
+                           "third_party/libsecret" ;FIXME: needs pkg-confi=
g support.
+                           "third_party/libsrtp"   ;TODO: Requires libsrtp=
@2.
+                           "third_party/libudev"
+                           "third_party/libwebm"
+                           "third_party/libxml"
+                           "third_party/libyuv"
+                           "third_party/lss"
+                           "third_party/lzma_sdk"
+                           "third_party/markupsafe"
+                           "third_party/mesa"
+                           "third_party/metrics_proto"
+                           "third_party/modp_b64"
+                           "third_party/node"
+                           (string-append "third_party/node/node_modules/"
+                                          "polymer-bundler/lib/third_party=
/UglifyJS2")
+                           "third_party/openmax_dl"
+                           "third_party/ots"
+                           ;; TODO: Build as extension.
+                           "third_party/pdfium"
+                           "third_party/pdfium/third_party"
+                           (string-append "third_party/pdfium/third_party/=
freetype"
+                                          "/include/pstables.h")
+                           "third_party/ply"
+                           "third_party/polymer"
+                           "third_party/protobuf"
+                           "third_party/protobuf/third_party/six"
+                           "third_party/qcms"
+                           "third_party/sfntly"
+                           "third_party/skia"
+                           "third_party/skia/third_party/vulkan"
+                           "third_party/skia/third_party/gif"
+                           "third_party/smhasher"
+                           "third_party/speech-dispatcher"
+                           "third_party/sqlite"
+                           "third_party/swiftshader"
+                           "third_party/swiftshader/third_party"
+                           "third_party/s2cellid"
+                           "third_party/usb_ids"
+                           "third_party/usrsctp"
+                           "third_party/WebKit"
+                           "third_party/web-animations-js"
+                           "third_party/webrtc"
+                           "third_party/webrtc_overrides"
+                           "third_party/widevine/cdm/widevine_cdm_version.=
h"
+                           "third_party/widevine/cdm/widevine_cdm_common.h"
+                           "third_party/woff2"
+                           "third_party/xdg-utils"
+                           "third_party/yasm/run_yasm.py"
+                           "third_party/zlib/google"
+                           "url/third_party/mozilla"
+                           "v8/src/third_party/utf8-decoder"
+                           "v8/src/third_party/valgrind"
+                           "v8/third_party/inspector_protocol"))))
+
+                    (define (empty? dir)
+                      (equal? (scandir dir) '("." "..")))
+
+                    (define (third_party? file)
+                      (if (string-contains file "third_party/")
+                          #t
+                          #f))
+
+                    (define (useless? file)
+                      (any (cute string-suffix? <> file)
+                           '(".tar.gz" ".zip" ".exe" ".jar")))
+
+                    (define (parents child)
+                      "Return a list of paths up to and including the clos=
est third_party"
+                      (let ((lst (reverse (string-split child #\/))))
+                        (let loop ((hierarchy lst)
+                                   (result '()))
+                          (if (or (null? hierarchy)
+                                  (and (not (null? result))
+                                       (string-suffix? "third_party" (car =
result))))
+                              result
+                              (loop (cdr hierarchy)
+                                    (cons (string-join (reverse hierarchy)=
 "/")
+                                          result))))))
+
+                    (define (delete-unwanted child stat flag base level)
+                      (let ((protected (make-regexp "\\.(gn|gyp)i?$")))
+                        (match flag
+                          ((or 'regular 'symlink 'stale-symlink)
+                           (when (or (third_party? child) (useless? child))
+                             (unless (or (member child preserved-club)
+                                         (any (cute member <> preserved-cl=
ub)
+                                              (parents child))
+                                         (regexp-exec protected child))
+                               (format (current-error-port) "deleting ~s~%=
" child)
+                               (delete-file child)))
+                           #t)
+                          ('directory-processed
+                           (when (empty? child)
+                             (rmdir child))
+                           #t)
+                          (_ #t))))
+
+                    (nftw "." delete-unwanted 'depth 'physical)
+
+                    ;; Assert that each listed item is present to catch re=
movals.
+                    (for-each (lambda (third-party)
+                                (unless (file-exists? third-party)
+                                  (error (format #f "~s does not exist!" t=
hird-party))))
+                              preserved-club)
+
+                    ;; Replace "GN" files from third_party with shims for
+                    ;; building against system libraries.  Keep this list =
in
+                    ;; sync with "build/linux/unbundle/replace_gn_files.py=
".
+                    (for-each (lambda (pair)
+                                (let ((source (string-append
+                                               "build/linux/unbundle/" (ca=
r pair)))
+                                      (dest (cdr pair)))
+                                  (copy-file source dest)))
+                              (list
+                               '("ffmpeg.gn" . "third_party/ffmpeg/BUILD.g=
n")
+                               '("flac.gn" . "third_party/flac/BUILD.gn")
+                               '("fontconfig.gn" . "third_party/fontconfig=
/BUILD.gn")
+                               '("freetype.gn" . "build/config/freetype/fr=
eetype.gni")
+                               '("harfbuzz-ng.gn" .
+                                 "third_party/harfbuzz-ng/harfbuzz.gni")
+                               '("icu.gn" . "third_party/icu/BUILD.gn")
+                               '("libdrm.gn" . "third_party/libdrm/BUILD.g=
n")
+                               '("libevent.gn" . "base/third_party/libeven=
t/BUILD.gn")
+                               '("libjpeg.gn" .
+                                 "build/secondary/third_party/libjpeg_turb=
o/BUILD.gn")
+                               '("libpng.gn" . "third_party/libpng/BUILD.g=
n")
+                               '("libvpx.gn" . "third_party/libvpx/BUILD.g=
n")
+                               '("libwebp.gn" . "third_party/libwebp/BUILD=
.gn")
+                               '("libxml.gn" . "third_party/libxml/BUILD.g=
n")
+                               '("libxslt.gn" . "third_party/libxslt/BUILD=
.gn")
+                               '("openh264.gn" . "third_party/openh264/BUI=
LD.gn")
+                               '("opus.gn" . "third_party/opus/BUILD.gn")
+                               '("re2.gn" . "third_party/re2/BUILD.gn")
+                               '("snappy.gn" . "third_party/snappy/BUILD.g=
n")
+                               '("yasm.gn" . "third_party/yasm/yasm_assemb=
le.gni")
+                               '("zlib.gn" . "third_party/zlib/BUILD.gn")))
+                    #t)))))
+    (build-system gnu-build-system)
+    (arguments
+     `(#:tests? #f
+       ;; FIXME: There is a "gn" option specifically for setting -rpath, b=
ut
+       ;; it overrides the RUNPATH set by the linker.
+       #:validate-runpath? #f
+       #:modules ((srfi srfi-26)
+                  (ice-9 ftw)
+                  (ice-9 regex)
+                  (guix build gnu-build-system)
+                  (guix build utils))
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'patch-stuff
+           (lambda* (#:key inputs #:allow-other-keys)
+             (substitute* "printing/cups_config_helper.py"
+               (("cups_config =3D.*")
+                (string-append "cups_config =3D '" (assoc-ref inputs "cups=
")
+                               "/bin/cups-config'\n")))
+
+             (substitute*
+                 '("base/process/launch_posix.cc"
+                   "base/third_party/dynamic_annotations/dynamic_annotatio=
ns.c"
+                   "sandbox/linux/seccomp-bpf/sandbox_bpf.cc"
+                   "sandbox/linux/services/credentials.cc"
+                   "sandbox/linux/services/namespace_utils.cc"
+                   "sandbox/linux/services/syscall_wrappers.cc"
+                   "sandbox/linux/syscall_broker/broker_host.cc")
+               (("include \"base/third_party/valgrind/") "include \"valgri=
nd/"))
+
+             (for-each (lambda (file)
+                         (substitute* file
+                           ;; Fix opus include path.
+                           ;; Do not substitute opus_private.h.
+                           (("#include \"opus\\.h\"")
+                            "#include \"opus/opus.h\"")
+                           (("#include \"opus_custom\\.h\"")
+                            "#include \"opus/opus_custom.h\"")
+                           (("#include \"opus_defines\\.h\"")
+                            "#include \"opus/opus_defines.h\"")
+                           (("#include \"opus_multistream\\.h\"")
+                            "#include \"opus/opus_multistream.h\"")
+                           (("#include \"opus_types\\.h\"")
+                            "#include \"opus/opus_types.h\"")))
+                       (find-files (string-append "third_party/webrtc/modu=
les"
+                                                  "/audio_coding/codecs/op=
us")))
+
+             (substitute* "chrome/common/chrome_paths.cc"
+               (("/usr/share/chromium/extensions")
+                ;; TODO: Add ~/.guix-profile.
+                "/run/current-system/profile/share/chromium/extensions"))
+
+             (substitute*
+                 "third_party/breakpad/breakpad/src/common/linux/libcurl_w=
rapper.h"
+               (("include \"third_party/curl") "include \"curl"))
+             (substitute* "media/base/decode_capabilities.cc"
+               (("third_party/libvpx/source/libvpx/") ""))
+
+             ;; We don't cross compile most packages, so get rid of the
+             ;; unnecessary ARCH-linux-gnu* prefix.
+             (substitute* "build/toolchain/linux/BUILD.gn"
+               (("aarch64-linux-gnu-") "")
+               (("arm-linux-gnueabihf-") ""))
+             #t))
+         (replace 'configure
+           (lambda* (#:key inputs outputs #:allow-other-keys)
+             (let* ((out (assoc-ref outputs "out"))
+                    (clang-toolchain (assoc-ref inputs "clang-toolchain"))
+                    (gtk+ (assoc-ref inputs "gtk+"))
+                    (mesa (assoc-ref inputs "mesa"))
+                    (nss (assoc-ref inputs "nss"))
+                    (udev (assoc-ref inputs "udev"))
+                    (gn-flags
+                     (list
+                      ;; See tools/gn/docs/cookbook.md and
+                      ;; https://www.chromium.org/developers/gn-build-conf=
iguration
+                      ;; for usage.  Run "./gn args . --list" in the Relea=
se
+                      ;; directory for an exhaustive list of supported fla=
gs.
+                      "is_debug=3Dfalse"
+                      "use_gold=3Dfalse"
+                      "use_lld=3Dfalse"
+                      "linux_use_bundled_binutils=3Dfalse"
+                      "use_custom_libcxx=3Dfalse"
+                      "use_sysroot=3Dfalse"
+                      "enable_precompiled_headers=3Dfalse"
+                      "goma_dir=3D\"\""
+                      "enable_nacl=3Dfalse"
+                      "enable_nacl_nonsfi=3Dfalse"
+                      "use_allocator=3D\"none\"" ;don't use tcmalloc
+                      "override_build_date=3D\"01 01 2000 05:00:00\""
+                      "use_unofficial_version_number=3Dfalse"
+
+                      ;; Disable "safe browsing", which pulls in a depende=
ncy
+                      ;; on the nonfree "unrar" program.
+                      "safe_browsing_mode=3D0"
+
+                      ;; GCC is poorly supported, so we use Clang for now.
+                      ;;"is_clang=3Dfalse"
+                      (string-append "clang_base_path=3D\"" clang-toolchai=
n "\"")
+                      "clang_use_chrome_plugins=3Dfalse"
+
+                      ;; Optimize for building everything at once, as oppo=
sed
+                      ;; to incrementally for development.  See "docs/jumb=
o.md".
+                      "use_jumbo_build=3Dtrue"
+                      ;; Disable debugging features to save space.
+                      "symbol_level=3D1"
+                      "remove_webcore_debug_symbols=3Dtrue"
+                      "enable_iterator_debugging=3Dfalse"
+                      ;; Some of the unbundled libraries throws deprecation
+                      ;; warnings, etc.  Ignore it.
+                      "treat_warnings_as_errors=3Dfalse"
+                      ;; Don't add any API keys.  End users can set them i=
n the
+                      ;; environment if desired.  See
+                      ;; <https://www.chromium.org/developers/how-tos/api-=
keys>.
+                      "use_official_google_api_keys=3Dfalse"
+                      ;; Disable "field trials".
+                      "fieldtrial_testing_like_official_build=3Dtrue"
+                      ;; Disable Chrome Remote Desktop (aka Chromoting).
+                      "enable_remoting=3Dfalse"
+
+                      "use_system_freetype=3Dtrue"
+                      "use_system_lcms2=3Dtrue"
+                      "use_system_libjpeg=3Dtrue"
+                      "use_system_libpng=3Dtrue"
+                      "use_system_zlib=3Dtrue"
+                      ;; This is currently not supported on GNU/Linux:
+                      ;; https://bugs.chromium.org/p/chromium/issues/detai=
l?id=3D22208
+                      ;;"use_system_sqlite=3Dtrue"
+
+                      "use_gnome_keyring=3Dfalse" ;deprecated by libsecret
+                      "use_gtk3=3Dtrue"
+                      "use_openh264=3Dtrue"
+                      "use_xkbcommon=3Dtrue"
+                      "use_pulseaudio=3Dtrue"
+                      "link_pulseaudio=3Dtrue"
+
+                      ;; Don't arbitrarily restrict formats supported by s=
ystem ffmpeg.
+                      "proprietary_codecs=3Dtrue"
+                      "ffmpeg_branding=3D\"Chrome\""
+
+                      ;; WebRTC stuff.
+                      "rtc_use_h264=3Dtrue"
+                      ;; Don't use bundled sources.
+                      "rtc_build_json=3Dfalse"
+                      "rtc_build_libevent=3Dfalse"
+                      "rtc_build_libvpx=3Dfalse"
+                      "rtc_build_opus=3Dfalse"
+                      "rtc_build_ssl=3Dfalse"
+                      ;; TODO: Package these.
+                      "rtc_build_libsrtp=3Dtrue" ;2.0
+                      "rtc_build_openmax_dl=3Dtrue"
+                      "rtc_build_usrsctp=3Dtrue"
+                      (string-append "rtc_jsoncpp_root=3D\""
+                                     (assoc-ref inputs "jsoncpp")
+                                     "/include/jsoncpp/json\"")
+                      (string-append "rtc_ssl_root=3D\""
+                                     (assoc-ref inputs "openssl")
+                                     "/include/openssl\""))))
+
+               ;; XXX: How portable is this.
+               (mkdir-p "third_party/node/linux/node-linux-x64")
+               (symlink (string-append (assoc-ref inputs "node") "/bin")
+                        "third_party/node/linux/node-linux-x64/bin")
+
+               (setenv "CC" "clang")
+               (setenv "CXX" "clang++")
+
+               ;; FIXME: This nasty hack works around a problem where
+               ;; Clang does not add the arch triplet to the libtsdc++
+               ;; search path.  Fixing it seems tricky, since it only
+               ;; searches "include/<triplet>" when it detects libstdc++
+               ;; in GCC which is not the case in Guix; the only reason
+               ;; libstdc++ works here is because it's already on the
+               ;; include path...
+               (setenv "CPLUS_INCLUDE_PATH"
+                       (string-append (getenv "CPLUS_INCLUDE_PATH")
+                                      ":" clang-toolchain
+                                      "/include/x86_64-unknown-linux-gnu"))
+               ;; XXX: For some reason this is needed also for C code (lib=
aom).
+               (setenv "C_INCLUDE_PATH"
+                       (string-append (getenv "C_INCLUDE_PATH")
+                                      ":" clang-toolchain
+                                      "/include/x86_64-unknown-linux-gnu"))
+
+               ;; TODO: pre-compile instead. Avoids a race condition.
+               (setenv "PYTHONDONTWRITEBYTECODE" "1")
+               (and
+                ;; Build the "gn" tool.
+                (invoke "python"
+                        "tools/gn/bootstrap/bootstrap.py" "-s" "-v")
+                ;; Generate ninja build files.
+                (invoke "./out/Release/gn" "gen" "out/Release"
+                        (string-append "--args=3D"
+                                       (string-join gn-flags " ")))))))
+         (replace 'build
+           (lambda* (#:key outputs #:allow-other-keys)
+             (invoke "ninja" "-C" "out/Release"
+                     "-j" (number->string (parallel-job-count))
+                     "chrome")))
+         (replace 'install
+           (lambda* (#:key inputs outputs #:allow-other-keys)
+             (let* ((out            (assoc-ref outputs "out"))
+                    (bin            (string-append out "/bin"))
+                    (exe            (string-append bin "/chromium"))
+                    (lib            (string-append out "/lib"))
+                    (man            (string-append out "/share/man/man1"))
+                    (applications   (string-append out "/share/application=
s"))
+                    (install-regexp (make-regexp "\\.(bin|pak)$"))
+                    (locales        (string-append lib "/locales"))
+                    (resources      (string-append lib "/resources"))
+                    (gtk+           (assoc-ref inputs "gtk+"))
+                    (mesa           (assoc-ref inputs "mesa"))
+                    (nss            (assoc-ref inputs "nss"))
+                    (udev           (assoc-ref inputs "udev"))
+                    (sh             (which "sh")))
+
+               (substitute* '("chrome/app/resources/manpage.1.in"
+                              "chrome/installer/linux/common/desktop.templ=
ate")
+                 (("@@MENUNAME@@") "Chromium")
+                 (("@@PACKAGE@@") "chromium")
+                 (("/usr/bin/@@USR_BIN_SYMLINK_NAME@@") exe))
+               (mkdir-p man)
+               (copy-file "chrome/app/resources/manpage.1.in"
+                          (string-append man "/chromium.1"))
+               (mkdir-p applications)
+               (copy-file "chrome/installer/linux/common/desktop.template"
+                          (string-append applications "/chromium.desktop"))
+
+               (with-directory-excursion "out/Release"
+                 (for-each (lambda (file)
+                             (install-file file lib))
+                           (scandir "." (cut regexp-exec install-regexp <>=
)))
+                 (copy-file "chrome" (string-append lib "/chromium"))
+
+                 ;; TODO: Install icons from "../../chrome/app/themes" into
+                 ;; "out/share/icons/hicolor/$size".
+                 (install-file
+                  "product_logo_48.png"
+                  (string-append out "/share/icons/48x48/chromium.png"))
+
+                 (copy-recursively "locales" locales)
+                 (copy-recursively "resources" resources)
+
+                 (mkdir-p bin)
+                 ;; Add a thin wrapper to prevent the user from inadverten=
tly
+                 ;; installing non-free software through the Web Store.
+                 ;; TODO: Discover extensions from the profile and pass
+                 ;; something like "--disable-extensions-except=3D...".
+                 (call-with-output-file exe
+                   (lambda (port)
+                     (format port
+                             "#!~a~@
+                             if [ -z \"$CHROMIUM_ENABLE_WEB_STORE\" ]~@
+                             then~@
+                               CHROMIUM_FLAGS=3D\" \\~@
+                                 --disable-background-networking \\~@
+                                 --disable-extensions \\~@
+                               \"~@
+                             fi~@
+                             exec ~a $CHROMIUM_FLAGS \"$@\"~%"
+                             sh (string-append lib "/chromium"))))
+                 (chmod exe #o755)
+
+                 (wrap-program exe
+                   ;; TODO: Get these in RUNPATH.
+                   `("LD_LIBRARY_PATH" ":" prefix
+                     (,(string-append lib ":" nss "/lib/nss:" gtk+ "/lib:"
+                                      mesa "/lib:" udev "/lib")))
+                   ;; Avoid file manager crash.  See <https://bugs.gnu.org=
/26593>.
+                   `("XDG_DATA_DIRS" ":" prefix (,(string-append gtk+ "/sh=
are"))))
+                 #t)))))))
+    (native-inputs
+     `(("bison" ,bison)
+       ("clang-toolchain" ,chromium-clang-toolchain)
+       ("git" ,git)                     ;last_commit_position.py
+       ("gperf" ,gperf)
+       ("ninja" ,ninja)
+       ("node" ,node)
+       ("pkg-config" ,pkg-config)
+       ("which" ,which)
+       ("yasm" ,yasm)
+
+       ("python-beautifulsoup4" ,python2-beautifulsoup4)
+       ("python-html5lib" ,python2-html5lib)
+       ("python" ,python-2)))
+    (inputs
+     `(("alsa-lib" ,alsa-lib)
+       ("atk" ,atk)
+       ("cups" ,cups)
+       ("curl" ,curl)
+       ("dbus" ,dbus)
+       ("dbus-glib" ,dbus-glib)
+       ("expat" ,expat)
+       ("flac" ,flac)
+       ("ffmpeg" ,ffmpeg)
+       ("fontconfig" ,fontconfig)
+       ("freetype" ,freetype)
+       ("gdk-pixbuf" ,gdk-pixbuf)
+       ("glib" ,glib)
+       ("gtk+-2" ,gtk+-2)
+       ("gtk+" ,gtk+)
+       ("harfbuzz" ,harfbuzz)
+       ("icu4c" ,icu4c)
+       ("jsoncpp" ,jsoncpp)
+       ("lcms" ,lcms)
+       ("libevent" ,libevent)
+       ("libffi" ,libffi)
+       ("libjpeg-turbo" ,libjpeg-turbo)
+       ("libpng" ,libpng)
+       ("libusb" ,libusb)
+       ("libvpx" ,libvpx+experimental)
+       ("libwebp" ,libwebp)
+       ("libx11" ,libx11)
+       ("libxcb" ,libxcb)
+       ("libxcomposite" ,libxcomposite)
+       ("libxcursor" ,libxcursor)
+       ("libxdamage" ,libxdamage)
+       ("libxext" ,libxext)
+       ("libxfixes" ,libxfixes)
+       ("libxi" ,libxi)
+       ("libxkbcommon" ,libxkbcommon)
+       ("libxml2" ,libxml2)
+       ("libxrandr" ,libxrandr)
+       ("libxrender" ,libxrender)
+       ("libxscrnsaver" ,libxscrnsaver)
+       ("libxslt" ,libxslt)
+       ("libxtst" ,libxtst)
+       ("mesa" ,mesa)
+       ("minizip" ,minizip)
+       ("mit-krb5" ,mit-krb5)
+       ("nss" ,nss)
+       ("openh264" ,openh264)
+       ("openssl" ,openssl)
+       ("opus" ,opus+custom)
+       ("pango" ,pango)
+       ("pciutils" ,pciutils)
+       ("protobuf" ,protobuf)
+       ("pulseaudio" ,pulseaudio)
+       ("re2" ,re2)
+       ("snappy" ,snappy)
+       ("speech-dispatcher" ,speech-dispatcher)
+       ("sqlite" ,sqlite)
+       ("udev" ,eudev)
+       ("valgrind" ,valgrind)))
+    (home-page "https://www.chromium.org/")
+    (description
+     "Chromium is a web browser designed for speed and security.  This
+version incorporates patches from
+@url{https://github.com/gcarq/inox-patchset,Inox} and
+@url{https://www.debian.org/,Debian} in order to protect the users privacy=
.")
+    ;; Chromium is developed as BSD-3, but bundles a large number of third=
-party
+    ;; components with other licenses.  For full information, see chrome:/=
/credits.
+    (license (list license:bsd-3
+                   license:bsd-2
+                   license:expat
+                   license:asl2.0
+                   license:mpl2.0
+                   license:public-domain
+                   license:lgpl2.1+))))
diff --git a/gnu/packages/patches/chromium-remove-default-history.patch b/g=
nu/packages/patches/chromium-remove-default-history.patch
new file mode 100644
index 000000000..38be10820
=2D-- /dev/null
+++ b/gnu/packages/patches/chromium-remove-default-history.patch
@@ -0,0 +1,13 @@
+Don't pre-populate the New Tab Page for new profiles.
+
+--- a/chrome/browser/history/top_sites_factory.cc
++++ b/chrome/browser/history/top_sites_factory.cc
+@@ -74,7 +74,7 @@
+=20
+ void InitializePrepopulatedPageList(
+     history::PrepopulatedPageList* prepopulated_pages) {
+-#if !defined(OS_ANDROID)
++#if false
+   DCHECK(prepopulated_pages);
+   prepopulated_pages->reserve(arraysize(kRawPrepopulatedPages));
+   for (size_t i =3D 0; i < arraysize(kRawPrepopulatedPages); ++i) {
=2D-=20
2.17.0


--=-=-=--

--==-=-=
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQEzBAEBCgAdFiEEu7At3yzq9qgNHeZDoqBt8qM6VPoFAlrfcrMACgkQoqBt8qM6
VPrr3Qf/ZCU6KzY71fuLDXrskeAJ1ghoIVETr6aQcPkG0cca5JQqSaRhyZOXa/KY
LfI2PA9ZngwkdnL123ynVg/CEjvTpPdFsnMiuHoyLZkzgifx4bsfdCouyMqlgHbG
9frDYAzmkYR8vF+6sh8CEOJLtTsZZxDlnd33LFwY8ijVFYlCBQ/vXAWObEc+ufLd
KcrSWBpxDdNgFOO6veGJYYYF4owsZiHBBHkleI/GGb46bOxaJ9LyK4pHW73ibskc
5CxyFTB/7RdXsLiSJuiBHkNlXwpcPUYpyq5ff1VNWpmdzDM5kTj5qxJDCbqkaJjE
JXs+xFiLL5jX5fK8FgRoHGcNFFjqhQ==
=YBRz
-----END PGP SIGNATURE-----
--==-=-=--




Information forwarded to guix-patches@HIDDEN:
bug#28004; Package guix-patches. Full text available.

Message received at 28004 <at> debbugs.gnu.org:


Received: (at 28004) by debbugs.gnu.org; 24 Apr 2018 17:05:54 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Apr 24 13:05:54 2018
Received: from localhost ([127.0.0.1]:38386 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1fB1O6-000594-9z
	for submit <at> debbugs.gnu.org; Tue, 24 Apr 2018 13:05:54 -0400
Received: from dustycloud.org ([50.116.34.160]:53430)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <cwebber@HIDDEN>) id 1fB1O4-00058w-Gh
 for 28004 <at> debbugs.gnu.org; Tue, 24 Apr 2018 13:05:52 -0400
Received: from oolong (localhost [127.0.0.1])
 by dustycloud.org (Postfix) with ESMTPS id B8B98266AB;
 Tue, 24 Apr 2018 13:05:51 -0400 (EDT)
References: <87y3qvb15k.fsf@HIDDEN> <87po32c47b.fsf@HIDDEN>
User-agent: mu4e 1.0; emacs 25.3.1
From: Christopher Lemmer Webber <cwebber@HIDDEN>
To: Marius Bakke <mbakke@HIDDEN>
Subject: Re: [bug#28004] Chromium 65
In-reply-to: <87po32c47b.fsf@HIDDEN>
Date: Tue, 24 Apr 2018 12:05:39 -0500
Message-ID: <87po2own4s.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Score: -0.0 (/)
X-Debbugs-Envelope-To: 28004
Cc: 28004 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

Hello!  I'd like to speak up in favor of getting Chromium merged into
Guix master.  As a web developer, sometimes I have to test things
against multiple browsers.  Having Chromium in GuixSD would help me out
a lot.

It looks like a mountain of hard work has been put into this.  Could we
get it merged rather than have that work languish?




Information forwarded to guix-patches@HIDDEN:
bug#28004; Package guix-patches. Full text available.

Message received at 28004 <at> debbugs.gnu.org:


Received: (at 28004) by debbugs.gnu.org; 17 Apr 2018 19:10:28 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Apr 17 15:10:28 2018
Received: from localhost ([127.0.0.1]:57867 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1f8Vzo-0003L7-35
	for submit <at> debbugs.gnu.org; Tue, 17 Apr 2018 15:10:28 -0400
Received: from mail-lf0-f54.google.com ([209.85.215.54]:43204)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <go.wigust@HIDDEN>) id 1f8Vzl-0003Kt-6E
 for 28004 <at> debbugs.gnu.org; Tue, 17 Apr 2018 15:10:27 -0400
Received: by mail-lf0-f54.google.com with SMTP id v207-v6so28931855lfa.10
 for <28004 <at> debbugs.gnu.org>; Tue, 17 Apr 2018 12:10:25 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;
 h=from:to:cc:subject:references:date:in-reply-to:message-id
 :user-agent:mime-version;
 bh=dsdpfiokvhezX1E4WmChcyWycUQxJ9y3YIfyS4HnT7Q=;
 b=fhDQFRSZUK2+kI9orNvjHrzRHZx7KOFa2eGF+4bgdBBtAKfbmAyt26fTLpmxmpXP4U
 geT9vjSo9gD3AfanSTUw0DZKSLoHcUMQ15rV7UJS42uYf7wPBEovYoAUJSt56fmftyFN
 ehUZeFIAMQjeohiPyXI5dUmAej0LWRAfFugr5qxsWUT1jZuaCeF4qoSqheFH8JT7/rMm
 2gCAGYGEt4+89RUtECBgN25zU+jz2eOQP+67gYVUVqCFChCEB8G2xTYc2ieF6ItUvTQW
 9PU3anEw7HnFmAg5RsTi/w61QeeNJAfT9AzttLYjOZzbZIzr4B9kU06qOzwsM+fY+A6w
 XzHA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:from:to:cc:subject:references:date:in-reply-to
 :message-id:user-agent:mime-version;
 bh=dsdpfiokvhezX1E4WmChcyWycUQxJ9y3YIfyS4HnT7Q=;
 b=tiQbX7Svg5VuCR5dPv1Q/F5OpJqtdraoV2ud95uJwSd1EapOUOoZXYNziPvmIRiPKx
 KEJeknMoqaIMqcNnUA9ikh3NWfPwoGfXC/4td2tmB7cB5k+wLbC/cj/1o5NI7rEpsUna
 GZo4IYyhJM6Kq1LlCKG1lpXnvPYFmFCwnKZ0UfB830AuyG1pBof2bI5AQ3humTCIMEym
 KBGnO4SUIFp8c4SeY4Ogss0i96UBeBgMy6yLLSx5DZwWapyjupKyQRDLnMmxaaSJgW4D
 XsvAElX8E/6M8//Gklr1xQDDRDSI9tWyUDdqpzRkRDEbHzKfya9jmkrEC9RGPvb64hKe
 3zYw==
X-Gm-Message-State: ALQs6tDBojNTrLZfJmjPayOH/rr8pqIbT3ILq/BkxE1tiOhh6DD48jRf
 ZhNw0SpIF/ETBr5QRBSua9mkTA==
X-Google-Smtp-Source: AIpwx4/OES8yvalz+3/s/sLBBVErh+3tMvMJjqEMI6ajwM6f9O3QSUj8fZIKS5S78dz0QXjrN/MyOw==
X-Received: by 2002:a19:a8d4:: with SMTP id
 r203-v6mr2516456lfe.146.1523992218837; 
 Tue, 17 Apr 2018 12:10:18 -0700 (PDT)
Received: from magnolia (ppp78-37-131-191.pppoe.avangarddsl.ru.
 [78.37.131.191])
 by smtp.gmail.com with ESMTPSA id p9-v6sm3520530lfh.93.2018.04.17.12.10.17
 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256);
 Tue, 17 Apr 2018 12:10:18 -0700 (PDT)
From: Oleg Pykhalov <go.wigust@HIDDEN>
To: Marius Bakke <mbakke@HIDDEN>
Subject: Re: [bug#28004] Chromium 65
References: <87y3qvb15k.fsf@HIDDEN> <87po32c47b.fsf@HIDDEN>
Date: Tue, 17 Apr 2018 22:10:10 +0300
In-Reply-To: <87po32c47b.fsf@HIDDEN> (Marius Bakke's message of "Fri, 13
 Apr 2018 21:10:48 +0200")
Message-ID: <877ep5myy5.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.3 (gnu/linux)
MIME-Version: 1.0
Content-Type: multipart/signed; boundary="=-=-=";
 micalg=pgp-sha512; protocol="application/pgp-signature"
X-Spam-Score: -0.0 (/)
X-Debbugs-Envelope-To: 28004
Cc: 28004 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

--=-=-=
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable

Hello Marius,

First of all, thank you for working on this!

Marius Bakke <mbakke@HIDDEN> writes:

> Attached is a patch for Chromium 65.

I've built it successfully.  Thank you for such a hard work!


I build =E2=80=98chromium=E2=80=99 from my first day of using GuixSD (about=
 one year).
Because of I cannot build it constantly, I always use out of date
=E2=80=98chromium=E2=80=99 closure.  It's more worse for privacy and securi=
ty than
unchecked new =E2=80=98chromium=E2=80=99 version in my case (I guess).

Could we have it pushed to =E2=80=98origin/master=E2=80=99 for people like =
me?  :-)

Thanks,
Oleg.

--=-=-=
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEEc+OyAXw1EaDPCmAPckbhHGm3lWkFAlrWRpIACgkQckbhHGm3
lWlZ5Q//S8RY1KguODn0MCqqmSF6LqIPT9x6loeetkM96cavvb2E/9RUXZZ0y1jN
qFkoveGlyc5xV6zxze8LRmOdgc6bMyMfvbWZfoIlrd/93EjbYZl49UggTKFnj4/F
k5y/Gl6mxEbZaNBgxOdBeYMU11Vql70+YR1id1U+QBXgsjwLjjBQNTU2FmqX8JDR
oHvP9VeBoX/l3/EcqiHZDHdP8uegwYrQQIvnwchMR4zupBWwTi2hnGjnLN1rEWxY
MDRZ14t2oRh/g9krj+Vm5le4VsXwmjhoh86F6kvnDye+4uWn7IZyfJoVNsTEkITF
7J1Q9sIvvjtOoyCVbpLssjYbnFrB2NONiAQs9P8AbfXJlPldPO5HlvV0E0bGadCm
U2HvVVLOgxS3CABgpKHfpc8NdCzC3mTRpFhZfq0fS+gGdne9JXKubhGs6AIbsbnG
Pmn8UUVQbMH4YW38NRMWnifSW6xYdmgxAkoFssdawZ+u4enf3n07wdIg7y+ZIa/v
rRiAMj0tT+QxKe42mCpXuo87g6Zff4pm9KjoWLbSPhgZ365N66druRziFGLXN93d
HmU76qAij7AG/PFVZynGPjZW9tAZnLarG4yYMGQK3m7zRZC3r3QaLhuLy1J+zZFV
/FSgph6Cas/nanzVKWCYXpFqi4ynRccRv4G6ERsh3LDBm8ICkWI=
=VX0B
-----END PGP SIGNATURE-----
--=-=-=--




Information forwarded to guix-patches@HIDDEN:
bug#28004; Package guix-patches. Full text available.

Message received at 28004 <at> debbugs.gnu.org:


Received: (at 28004) by debbugs.gnu.org; 13 Apr 2018 19:11:05 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Apr 13 15:11:05 2018
Received: from localhost ([127.0.0.1]:50938 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1f7467-0007c6-Q2
	for submit <at> debbugs.gnu.org; Fri, 13 Apr 2018 15:11:05 -0400
Received: from out3-smtp.messagingengine.com ([66.111.4.27]:43093)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <mbakke@HIDDEN>) id 1f7461-0007bt-7F
 for 28004 <at> debbugs.gnu.org; Fri, 13 Apr 2018 15:10:58 -0400
Received: from compute5.internal (compute5.nyi.internal [10.202.2.45])
 by mailout.nyi.internal (Postfix) with ESMTP id D01E521FC6
 for <28004 <at> debbugs.gnu.org>; Fri, 13 Apr 2018 15:10:52 -0400 (EDT)
Received: from mailfrontend2 ([10.202.2.163])
 by compute5.internal (MEProxy); Fri, 13 Apr 2018 15:10:52 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=fastmail.com; h=
 content-type:date:from:message-id:mime-version:subject:to
 :x-me-sender:x-me-sender:x-sasl-enc; s=fm2; bh=8s9c0inl2pKs0AjYN
 4OvSv96fJbjnUAfYwfAphKTu98=; b=iywqSJiRsVaLNDcNveFDto0bT8o4roJux
 slPsJiYyUHE1hXyG01yOugV0X/Cw9hAWKFo5ix5cyxkObO9QOI5jIeucziIyNKOp
 rFyvihp0P9GcWiR8JAmUP+kJPkh3lRsgoB6JT1+72X9lp0b9ZTuW92Z4ZQKVBAgK
 Rk7B7RsB1K4WHJSZkcxumk1X3QQYxoPtKES4c5b+GvxEvTLL34Ejdq4s4FrU0/wn
 Uv8pZS95Qq+g3KtOify3o+Y4ukkuFv/nJ7FrtSaYrRCBTzjsGSJTnZXIzBv1iLSb
 uaeI1BbPTM1E8sdVYZRlNCH1J2WXDS7MSsuon/yhfMCa1dMpykIoQ==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
 messagingengine.com; h=content-type:date:from:message-id
 :mime-version:subject:to:x-me-sender:x-me-sender:x-sasl-enc; s=
 fm2; bh=8s9c0inl2pKs0AjYN4OvSv96fJbjnUAfYwfAphKTu98=; b=HoEfc6rK
 c7RlUTXfIpNJE0MolH+62WzIQw6j16aq0uH114bUSzkWemPZUVRVKakMkIQddz1n
 wLxHhYe8R8mPHD/d+wajUalPb3yTzF1XXPfuprNbgovZN0yqU1XWEjwJifF+WRqr
 XQYzY15SSCLbjDKnsIWUD4YxdALH4rci35mouFS34ijvBUVtj5pkuoHnCCXMjVDa
 n7g0corocKepy3/pOtyye1umMnJ3rALjZY9kEKAMHNZvTotxR+jp/fQ9SVjyfgyJ
 gmvFoj+q6y7TK584Irm74F+bVWgWoizK7kFZjd8CtBDpHmrSfu2oD7MTvmvHGhX/
 WLCKr+k5JOtB8w==
X-ME-Sender: <xms:uwDRWuucBjgn-NaCOXBFXake2IXfIBWkLDH01m0Y-yjQCOnegFWstw>
Received: from localhost (ti0089a400-2222.bb.online.no [88.89.166.190])
 by mail.messagingengine.com (Postfix) with ESMTPA id 0AD9710255
 for <28004 <at> debbugs.gnu.org>; Fri, 13 Apr 2018 15:10:50 -0400 (EDT)
From: Marius Bakke <mbakke@HIDDEN>
To: 28004 <at> debbugs.gnu.org
Subject: Chromium 65
User-Agent: Notmuch/0.26.1 (https://notmuchmail.org) Emacs/25.3.1
 (x86_64-pc-linux-gnu)
Date: Fri, 13 Apr 2018 21:10:48 +0200
Message-ID: <87po32c47b.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: multipart/signed; boundary="==-=-=";
 micalg=pgp-sha512; protocol="application/pgp-signature"
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 28004
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

--==-=-=
Content-Type: multipart/mixed; boundary="=-=-="

--=-=-=
Content-Type: text/plain

Hello!

Attached is a patch for Chromium 65.

New in this version:

* Deleting third party files is now done with a single traversal of the
  file system, instead of the "shotgun" approach used previously.  I
  also added a second pass to scrub bundled JARs and tarballs, that will
  be incorporated in the "nftw" snippet eventually.

* It's using Clang instead of GCC since the latter is no longer
  supported upstream (as in part of their continuous integration).  GCC5
  in particular is completely broken with this release.  Debian and
  NixOS are apparently able to build it with GCC 6 and 7 respectively,
  but Arch and Gentoo changed to Clang with 65.  Unfortunately GCC6 and
  later has other problems in Guix: <https://bugs.gnu.org/30756>.

* Various tweaks to build options after reading the "GN" flags more
  closely.  In particular, more debugging symbols have been removed.

I haven't done anything on the privacy side since this update was
difficult enough as-is.  You'll notice a few hacks around Clang and
libstdc++, and also that currently only x86_64 is supported due to
unconditionally adding the x86_64 triplet to CPLUS_INCLUDE_PATH.

Hopefully future updates will be easier.  Any feedback on the
Clang/libstdc++ issues mentioned in the patch are very welcome.


--=-=-=
Content-Type: text/x-patch; charset=utf-8
Content-Disposition: attachment; filename=0001-gnu-Add-chromium.patch
Content-Transfer-Encoding: quoted-printable

From=20759253a8966e2e6afbeaeb67255e4e067ce33b76 Mon Sep 17 00:00:00 2001
From: Marius Bakke <mbakke@HIDDEN>
Date: Wed, 12 Oct 2016 17:25:05 +0100
Subject: [PATCH] gnu: Add chromium.

* gnu/packages/chromium.scm: New file.
* gnu/packages/patches/chromium-glibc-compat.patch,
gnu/packages/patches/chromium-remove-default-history.patch: New files.
* gnu/local.mk: Record it.
=2D--
 gnu/local.mk                                  |   3 +
 gnu/packages/chromium.scm                     | 894 ++++++++++++++++++
 .../patches/chromium-glibc-compat.patch       |  38 +
 .../chromium-remove-default-history.patch     |  13 +
 4 files changed, 948 insertions(+)
 create mode 100644 gnu/packages/chromium.scm
 create mode 100644 gnu/packages/patches/chromium-glibc-compat.patch
 create mode 100644 gnu/packages/patches/chromium-remove-default-history.pa=
tch

diff --git a/gnu/local.mk b/gnu/local.mk
index 3d4b05c77..03f972130 100644
=2D-- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -94,6 +94,7 @@ GNU_SYSTEM_MODULES =3D				\
   %D%/packages/check.scm			\
   %D%/packages/chemistry.scm			\
   %D%/packages/chez.scm				\
+  %D%/packages/chromium.scm			\
   %D%/packages/ci.scm				\
   %D%/packages/cinnamon.scm			\
   %D%/packages/cmake.scm			\
@@ -591,6 +592,8 @@ dist_patch_DATA =3D						\
   %D%/packages/patches/ceph-skip-collect-sys-info-test.patch	\
   %D%/packages/patches/ceph-skip-unittest_blockdev.patch	\
   %D%/packages/patches/chmlib-inttypes.patch			\
+  %D%/packages/patches/chromium-glibc-compat.patch		\
+  %D%/packages/patches/chromium-remove-default-history.patch	\
   %D%/packages/patches/clang-3.5-libc-search-path.patch		\
   %D%/packages/patches/clang-3.8-libc-search-path.patch		\
   %D%/packages/patches/clang-6.0-libc-search-path.patch		\
diff --git a/gnu/packages/chromium.scm b/gnu/packages/chromium.scm
new file mode 100644
index 000000000..cecbab7a1
=2D-- /dev/null
+++ b/gnu/packages/chromium.scm
@@ -0,0 +1,894 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright =C2=A9 2016, 2017, 2018 Marius Bakke <mbakke@HIDDEN>
+;;;
+;;; This file is part of GNU Guix.
+;;;
+;;; GNU Guix is free software; you can redistribute it and/or modify it
+;;; under the terms of the GNU General Public License as published by
+;;; the Free Software Foundation; either version 3 of the License, or (at
+;;; your option) any later version.
+;;;
+;;; GNU Guix is distributed in the hope that it will be useful, but
+;;; WITHOUT ANY WARRANTY; without even the implied warranty of
+;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+;;; GNU General Public License for more details.
+;;;
+;;; You should have received a copy of the GNU General Public License
+;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
+
+(define-module (gnu packages chromium)
+  #:use-module ((guix licenses) #:prefix license:)
+  #:use-module (guix packages)
+  #:use-module (guix download)
+  #:use-module (guix git-download)
+  #:use-module (guix utils)
+  #:use-module (guix build-system gnu)
+  #:use-module (guix build-system trivial)
+  #:use-module (gnu packages)
+  #:use-module (gnu packages assembly)
+  #:use-module (gnu packages base)
+  #:use-module (gnu packages bison)
+  #:use-module (gnu packages compression)
+  #:use-module (gnu packages cups)
+  #:use-module (gnu packages curl)
+  #:use-module (gnu packages databases)
+  #:use-module (gnu packages fontutils)
+  #:use-module (gnu packages gcc)
+  #:use-module (gnu packages ghostscript)
+  #:use-module (gnu packages gl)
+  #:use-module (gnu packages glib)
+  #:use-module (gnu packages gnome)
+  #:use-module (gnu packages gnuzilla)
+  #:use-module (gnu packages gperf)
+  #:use-module (gnu packages gtk)
+  #:use-module (gnu packages icu4c)
+  #:use-module (gnu packages image)
+  #:use-module (gnu packages libevent)
+  #:use-module (gnu packages libffi)
+  #:use-module (gnu packages libusb)
+  #:use-module (gnu packages linux)
+  #:use-module (gnu packages llvm)
+  #:use-module (gnu packages kerberos)
+  #:use-module (gnu packages ninja)
+  #:use-module (gnu packages node)
+  #:use-module (gnu packages pciutils)
+  #:use-module (gnu packages photo)
+  #:use-module (gnu packages pkg-config)
+  #:use-module (gnu packages protobuf)
+  #:use-module (gnu packages pulseaudio)
+  #:use-module (gnu packages python)
+  #:use-module (gnu packages python-web)
+  #:use-module (gnu packages regex)
+  #:use-module (gnu packages serialization)
+  #:use-module (gnu packages speech)
+  #:use-module (gnu packages tls)
+  #:use-module (gnu packages valgrind)
+  #:use-module (gnu packages version-control)
+  #:use-module (gnu packages video)
+  #:use-module (gnu packages xiph)
+  #:use-module (gnu packages xml)
+  #:use-module (gnu packages xdisorg)
+  #:use-module (gnu packages xorg))
+
+(define (strip-directory-prefix pathspec)
+  "Return everything after the last '/' in PATHSPEC."
+  (let ((index (string-rindex pathspec #\/)))
+    (if index
+        (string-drop pathspec (+ 1 index))
+        pathspec)))
+
+(define (chromium-patch-file-name pathspec)
+  (let ((patch-name (strip-directory-prefix pathspec)))
+    (if (string-prefix? "chromium-" patch-name)
+        patch-name
+        (string-append "chromium-" patch-name))))
+
+;; https://anonscm.debian.org/cgit/pkg-chromium/pkg-chromium.git/tree/debi=
an/patches
+(define (debian-patch pathspec revision hash)
+  (origin
+    (method url-fetch)
+    (uri (string-append
+          "https://anonscm.debian.org/cgit/pkg-chromium/pkg-chromium.git"
+          "/plain/debian/patches/" pathspec "?id=3D" revision))
+    (sha256 (base32 hash))
+    (file-name (chromium-patch-file-name pathspec))))
+
+;; https://gitweb.gentoo.org/repo/gentoo.git/tree/www-client/chromium/files
+(define (gentoo-patch pathspec revision hash)
+  (origin
+    (method url-fetch)
+    (uri (string-append
+          "https://gitweb.gentoo.org/repo/gentoo.git/plain/www-client"
+          "/chromium/files/" pathspec "?id=3D" revision))
+    (sha256 (base32 hash))
+    (file-name (chromium-patch-file-name pathspec))))
+
+;; https://github.com/gcarq/inox-patchset
+(define (inox-patch pathspec revision hash)
+  (origin
+    (method url-fetch)
+    (uri (string-append "https://raw.githubusercontent.com/gcarq/inox-patc=
hset/"
+                        revision "/" pathspec))
+    (sha256 (base32 hash))
+    (file-name (chromium-patch-file-name pathspec))))
+
+;; https://github.com/NixOS/nixpkgs/tree/master/pkgs/applications/networki=
ng/browsers/chromium
+(define (nixos-patch pathspec revision hash)
+  (origin
+    (method url-fetch)
+    (uri (string-append "https://raw.githubusercontent.com/NixOS/nixpkgs/"
+                        revision "/pkgs/applications/networking/browsers"
+                        "/chromium/patches/" pathspec))
+    (sha256 (base32 hash))
+    (file-name (chromium-patch-file-name pathspec))))
+
+;; Fix an assignment bug when using Clang and libstdc++.
+(define %chromium-clang-assignment.patch
+  (gentoo-patch "chromium-clang-r3.patch"
+                "804a0d7244a06736d01c353b45c20daf324f0722"
+                "1d10il3mjzyzwgqi8iifw3aw9jnbqfrzz8v1x7cmvqpwjkykwk2a"))
+
+;; Add missing stdint include.
+(define %chromium-add-missing-stdint.patch
+  (gentoo-patch "chromium-stdint.patch"
+                "804a0d7244a06736d01c353b45c20daf324f0722"
+                "03r16zqi0hm3i00b9bwq2bdn2sp731rllizcxfl3i2q7y432a3f0"))
+
+(define %chromium-system-nspr.patch
+  (debian-patch "system/nspr.patch"
+                "debian/65.0.3325.146-4"
+                "1ggdrlz94d75ni21rx6ivvajjwhx7zwnl3s5aapysqn9kls4qsr2"))
+
+(define %chromium-system-libevent.patch
+  (debian-patch "system/event.patch"
+                "debian/65.0.3325.146-4"
+                "1k3zc59vpwc8rzbknxryjzzy99jk666whdablzcvxnyzaqk38kfx"))
+
+(define %chromium-system-icu.patch
+  (debian-patch "system/icu.patch"
+                "debian/65.0.3325.146-4"
+                "19wclidx1kyjbi3b3hnmkjs0h34d67p4dp6a48vbjbx9rxmfdk3b"))
+
+;; Don't show a warning about missing API keys.
+(define %chromium-disable-api-keys-warning.patch
+  (debian-patch "disable/google-api-warning.patch"
+                "debian/65.0.3325.146-4"
+                "1g5yk51bl7svrqx8wjxsgpz545mnymnpi3bsa62kwdm4qd8bx10x"))
+
+;; Add DuckDuckGo and set it as the default search engine.
+(define %chromium-duckduckgo.patch
+  (inox-patch "0011-add-duckduckgo-search-engine.patch"
+              "0c55cc9a81634244ad13fbbd6b5c5098b9132162"
+              "0mvw1ax0gw3d252c9b1pwbk0j7ny8z9nsfywcmhj56wm6yksgpkg"))
+
+;; Don't start a "Login Wizard" at first launch.
+(define %chromium-first-run.patch
+  (inox-patch "0018-disable-first-run-behaviour.patch"
+              "0c55cc9a81634244ad13fbbd6b5c5098b9132162"
+              "1y4zsqqf2125jkb1phwy9g5hcbd9xhyv5lr4xcaly66rpdzx2ayb"))
+
+;; Use privacy-preserving defaults.
+(define %chromium-default-preferences.patch
+  (inox-patch "0006-modify-default-prefs.patch"
+              "0c55cc9a81634244ad13fbbd6b5c5098b9132162"
+              "0zyshpl1hjssqrfhdfbgxdib4smdszjgf0ac98l978hrn9gwwk03"))
+
+;; Recent versions of Chromium may load a remote search engine on the
+;; New Tab Page, causing unnecessary and involuntary network traffic.
+(define %chromium-restore-classic-ntp.patch
+  (inox-patch "0008-restore-classic-ntp.patch"
+              "0c55cc9a81634244ad13fbbd6b5c5098b9132162"
+              "1h698cbp97g8lgmndfy6kswgwfvss7c3k609xgvyxbfldkzy7pd5"))
+
+(define opus+custom
+  (package (inherit opus)
+           (name "opus+custom")
+           (arguments
+            (substitute-keyword-arguments (package-arguments opus)
+              ((#:configure-flags flags ''())
+               ;; Opus Custom is an optional extension of the Opus
+               ;; specification that allows for unsupported frame
+               ;; sizes.  Chromium requires that this is enabled.
+               `(cons "--enable-custom-modes"
+                      ,flags))))))
+
+(define libvpx+experimental
+  (package (inherit libvpx)
+           (name "libvpx+experimental")
+           (arguments
+            (substitute-keyword-arguments (package-arguments libvpx)
+              ((#:configure-flags flags)
+               ;; Spatial SVC is an experimental VP9 encoder required
+               ;; by Chromium.
+               `(cons* "--enable-experimental" "--enable-spatial-svc"
+                       ,flags))))))
+
+;; XXX: This ugly libstdc++ variant stems from the fact that building
+;; libstdc++ standalone is not officially supported by GCC upstream, and
+;; the "make-libstdc++" procedure consequently builds a library without
+;; threading support, since the configure script fails to detect gthreads.
+;;
+;; Fixing it properly would require building libgcc (which creates
+;; gthr-default.h) before building libstdc++.  This authors attempts
+;; at doing so were unsuccessful, hence this hack.
+;;
+;; This behaviour changed upstream in this commit:
+;; https://gcc.gnu.org/git/?p=3Dgcc.git;a=3Dcommit;h=3D630d52ca0a88d173f89=
634a5d7dd8aee07d04d80
+;; ...or around GCC 4.6.  The libstdc++ docs are very explicit about it
+;; not being designed to used standalone (even though it worked just fine
+;; before 4.6, according to multiple mailing list threads around that time=
),
+;; so upstream is not interested in improving the situation.
+;;
+;; In fact, there used to be an "INSTALL" document with libstdc++, which
+;; is conspicuously missing in later releases.
+;;
+;; An alternative would be to change the GCC package to install C++ headers
+;; in "include" rather than "include/c++".  I tried that too; but it caused
+;; a bootstrapping failure.  The situation is further complicated by the
+;; fact that GCC installs C++ headers in the default output, but libstdc++=
.so
+;; ends up in "lib".
+;;
+;; To be continued...
+
+(define (libstdc++-from-gcc gcc)
+  "Return a libstdc++ library extracted from gcc.  The primary use case
+is when using compilers other than GCC."
+  (package
+    (inherit gcc)
+    (source #f)
+    (name "libstdc++")
+    (build-system trivial-build-system)
+    (arguments
+     `(#:modules ((guix build utils))
+       #:builder (begin
+                  (use-modules (guix build utils))
+                  (let* ((out (assoc-ref %outputs "out"))
+                         (lib (string-append out "/lib"))
+                         (include (string-append out "/include"))
+                         (gcc (assoc-ref %build-inputs "gcc"))
+                         (gcc-lib (assoc-ref %build-inputs "gcc:lib")))
+                    (mkdir-p out)
+                    (copy-recursively (string-append gcc "/include/c++")
+                                      include)
+                    (for-each (lambda (file)
+                                (install-file file lib))
+                              (find-files (string-append gcc-lib "/lib")
+                                          "^libstdc\\+\\+\\.so.*"))
+                    #t))))
+    (outputs '("out"))
+    (inputs `(("gcc" ,gcc)
+              ("gcc:lib" ,gcc "lib")))
+    (native-inputs '())
+    (propagated-inputs '())
+    (synopsis "GNU C++ standard library")))
+
+(define (make-clang-toolchain clang libcxx)
+  "Return a complete toolchain for Clang."
+  (package
+    (name "clang-toolchain")
+    (version (package-version clang))
+    (source #f)
+    (build-system trivial-build-system)
+    (arguments
+     '(#:modules ((guix build union))
+       #:builder (begin
+                   (use-modules (ice-9 match)
+                                (srfi srfi-26)
+                                (guix build union))
+
+                   (let ((out (assoc-ref %outputs "out")))
+
+                     (match %build-inputs
+                       (((names . directories) ...)
+                        (union-build out directories)))
+                     #t))))
+    (native-search-paths (package-native-search-paths clang))
+    (search-paths (package-search-paths clang))
+    (license (package-license clang))
+    (synopsis "Complete Clang tool chain for C/C++ development")
+    (description
+     "This package provides a complete Clang tool chain for C/C++.  This
+includes Clang, the Guix ld wrapper, glibc, a C++ library, and Binutils.")
+    (home-page "https://clang.llvm.org")
+    (outputs '("out"))
+    (inputs `(("clang" ,clang)
+              ("libcxx" ,libcxx)
+              ("ld-wrapper" ,(car (assoc-ref (%final-inputs) "ld-wrapper")=
))
+              ("binutils" ,binutils)
+              ("libc" ,glibc)))))
+
+;; When using Clang, Chromium expects to find "ar" and friends next
+;; to the clang executable.  For simplicity just create this union.
+(define chromium-clang-toolchain
+  (make-clang-toolchain clang (libstdc++-from-gcc gcc-6)))
+
+(define-public chromium
+  (package
+    (name "chromium")
+    (version "65.0.3325.181")
+    (synopsis "Graphical web browser")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "https://commondatastorage.googleapis.co=
m/"
+                                  "chromium-browser-official/chromium-"
+                                  version ".tar.xz"))
+              (sha256
+               (base32
+                "11w6wg862ixbgm7dpqag2lmbjknv83zlr9imd8zchvmrqr468rlk"))
+              (patches (list %chromium-duckduckgo.patch
+                             %chromium-default-preferences.patch
+                             %chromium-first-run.patch
+                             %chromium-restore-classic-ntp.patch
+
+                             %chromium-clang-assignment.patch
+                             %chromium-add-missing-stdint.patch
+                             %chromium-system-icu.patch
+                             %chromium-system-nspr.patch
+                             %chromium-system-libevent.patch
+                             %chromium-disable-api-keys-warning.patch
+                             (search-patch "chromium-glibc-compat.patch")
+                             (search-patch "chromium-remove-default-histor=
y.patch")))
+              (modules '((srfi srfi-1)
+                         (srfi srfi-26)
+                         (ice-9 ftw)
+                         (ice-9 match)
+                         (ice-9 regex)
+                         (guix build utils)))
+              (snippet
+               '(begin
+                  (let ((preserved-club
+                         (map
+                          (lambda (path)
+                            ;; Prepend paths with "./" for comparison with=
 ftw.
+                            (string-append "./" path))
+                          (list
+                           "base/third_party/dmg_fp"
+                           "base/third_party/dynamic_annotations"
+                           "base/third_party/icu"
+                           "base/third_party/libevent"
+                           "base/third_party/nspr"
+                           "base/third_party/superfasthash"
+                           "base/third_party/symbolize" ;glog
+                           "base/third_party/xdg_mime"
+                           "base/third_party/xdg_user_dirs"
+                           "buildtools/third_party/libc++"
+                           "chrome/third_party/mozilla_security_manager"
+                           "courgette/third_party"
+                           "net/third_party/mozilla_security_manager"
+                           "net/third_party/nss"
+                           "third_party/adobe/flash/flapper_version.h"
+                           ;; FIXME: This is used in:
+                           ;; * ui/webui/resources/js/analytics.js
+                           ;; * ui/file_manager/
+                           "third_party/analytics"
+                           "third_party/angle"
+                           "third_party/angle/src/common/third_party/base"
+                           "third_party/angle/src/common/third_party/smhas=
her"
+                           "third_party/angle/src/third_party/compiler"
+                           "third_party/angle/src/third_party/libXNVCtrl"
+                           "third_party/angle/src/third_party/trace_event"
+                           "third_party/blink"
+                           "third_party/boringssl"
+                           "third_party/boringssl/src/third_party/fiat"
+                           "third_party/breakpad"
+                           "third_party/brotli"
+                           "third_party/cacheinvalidation"
+                           "third_party/catapult"
+                           "third_party/catapult/common/py_vulcanize/third=
_party/rcssmin"
+                           "third_party/catapult/common/py_vulcanize/third=
_party/rjsmin"
+                           "third_party/catapult/third_party/polymer"
+                           "third_party/catapult/tracing/third_party/d3"
+                           "third_party/catapult/tracing/third_party/gl-ma=
trix"
+                           "third_party/catapult/tracing/third_party/jszip"
+                           "third_party/catapult/tracing/third_party/mannw=
hitneyu"
+                           "third_party/catapult/tracing/third_party/oboe"
+                           "third_party/catapult/tracing/third_party/pako"
+                           "third_party/ced"
+                           "third_party/cld_3"
+                           "third_party/crc32c"
+                           "third_party/cros_system_api"
+                           "third_party/dom_distiller_js"
+                           "third_party/fips181"
+                           "third_party/flatbuffers"
+                           "third_party/glslang-angle"
+                           "third_party/google_input_tools"
+                           "third_party/google_input_tools/third_party/clo=
sure_library"
+                           (string-append "third_party/google_input_tools/=
third_party"
+                                          "/closure_library/third_party/cl=
osure")
+                           "third_party/googletest"
+                           "third_party/harfbuzz-ng"
+                           "third_party/hunspell"
+                           "third_party/iccjpeg"
+                           "third_party/inspector_protocol"
+                           "third_party/jinja2"
+                           "third_party/jstemplate"
+                           "third_party/khronos"
+                           "third_party/leveldatabase"
+                           "third_party/libXNVCtrl"
+                           "third_party/libaddressinput"
+                           "third_party/libjingle_xmpp"
+                           "third_party/libphonenumber"
+                           "third_party/libsecret" ;FIXME: needs pkg-confi=
g support.
+                           "third_party/libsrtp"   ;TODO: Requires libsrtp=
@2.
+                           "third_party/libudev"
+                           "third_party/libwebm"
+                           "third_party/libxml"
+                           "third_party/libyuv"
+                           "third_party/lss"
+                           "third_party/lzma_sdk"
+                           "third_party/markupsafe"
+                           "third_party/mesa"
+                           "third_party/metrics_proto"
+                           "third_party/modp_b64"
+                           "third_party/mt19937ar"
+                           "third_party/node"
+                           (string-append "third_party/node/node_modules/"
+                                          "polymer-bundler/lib/third_party=
/UglifyJS2")
+                           "third_party/openmax_dl"
+                           "third_party/ots"
+                           ;; TODO: Build as extension.
+                           "third_party/pdfium"
+                           "third_party/pdfium/third_party"
+                           (string-append "third_party/pdfium/third_party/=
freetype"
+                                          "/include/psnames/pstables.h")
+                           "third_party/ply"
+                           "third_party/polymer"
+                           "third_party/protobuf"
+                           "third_party/protobuf/third_party/six"
+                           "third_party/qcms"
+                           "third_party/sfntly"
+                           "third_party/skia"
+                           "third_party/skia/third_party/vulkan"
+                           "third_party/skia/third_party/gif"
+                           "third_party/smhasher"
+                           "third_party/speech-dispatcher"
+                           "third_party/spirv-headers"
+                           "third_party/spirv-tools-angle"
+                           "third_party/sqlite"
+                           "third_party/swiftshader"
+                           "third_party/swiftshader/third_party"
+                           "third_party/s2cellid"
+                           "third_party/usb_ids"
+                           "third_party/usrsctp"
+                           "third_party/vulkan"
+                           "third_party/vulkan-validation-layers"
+                           "third_party/WebKit"
+                           "third_party/web-animations-js"
+                           "third_party/webrtc"
+                           "third_party/webrtc_overrides"
+                           "third_party/widevine/cdm/widevine_cdm_version.=
h"
+                           "third_party/widevine/cdm/widevine_cdm_common.h"
+                           "third_party/woff2"
+                           "third_party/xdg-utils"
+                           "third_party/yasm/run_yasm.py"
+                           "third_party/zlib/google"
+                           "url/third_party/mozilla"
+                           "v8/src/third_party/utf8-decoder"
+                           "v8/src/third_party/valgrind"
+                           "v8/third_party/inspector_protocol"))))
+
+                    (define (empty? dir)
+                      (equal? (scandir dir) '("." "..")))
+
+                    (define (third_party? file)
+                      (if (string-contains file "third_party/")
+                          #t
+                          #f))
+
+                    (define (parents child)
+                      "Return a list of paths up to and including the clos=
est third_party"
+                      (let ((lst (reverse (string-split child #\/))))
+                        (let loop ((hierarchy lst)
+                                   (result '()))
+                          (if (or (null? hierarchy)
+                                  (and (not (null? result))
+                                       (string-suffix? "third_party" (car =
result))))
+                              result
+                              (loop (cdr hierarchy)
+                                    (cons (string-join (reverse hierarchy)=
 "/")
+                                          result))))))
+
+                    (define (delete-unwanted child stat flag base level)
+                      (let ((protected (make-regexp "\\.(gn|gyp)i?$")))
+                        (match flag
+                          ((or 'regular 'symlink 'stale-symlink)
+                           (when (third_party? child)
+                             (unless (or (member child preserved-club)
+                                         (any (cute member <> preserved-cl=
ub)
+                                              (parents child))
+                                         (regexp-exec protected child))
+                               (delete-file child)))
+                           #t)
+                          ('directory-processed
+                           (when (empty? child)
+                             (rmdir child))
+                           #t)
+                          (_ #t))))
+
+                    (nftw "." delete-unwanted 'depth 'physical)
+
+                    ;; Do a second pass to get rid of various binary archi=
ves.
+                    (for-each delete-file
+                              (find-files "." "\\.(zip|jar|tar.gz|exe)$"))
+
+                    ;; Replace "GN" files from third_party with shims for
+                    ;; building against system libraries.  Keep this list =
in
+                    ;; sync with "build/linux/unbundle/replace_gn_files.py=
".
+                    (for-each (lambda (pair)
+                                (let ((source (string-append
+                                               "build/linux/unbundle/" (ca=
r pair)))
+                                      (dest (cdr pair)))
+                                  (copy-file source dest)))
+                              (list
+                               '("ffmpeg.gn" . "third_party/ffmpeg/BUILD.g=
n")
+                               '("flac.gn" . "third_party/flac/BUILD.gn")
+                               '("fontconfig.gn" . "third_party/fontconfig=
/BUILD.gn")
+                               '("freetype.gn" . "build/config/freetype/fr=
eetype.gni")
+                               '("harfbuzz-ng.gn" .
+                                 "third_party/harfbuzz-ng/harfbuzz.gni")
+                               '("icu.gn" . "third_party/icu/BUILD.gn")
+                               '("libdrm.gn" . "third_party/libdrm/BUILD.g=
n")
+                               '("libevent.gn" . "base/third_party/libeven=
t/BUILD.gn")
+                               '("libjpeg.gn" .
+                                 "build/secondary/third_party/libjpeg_turb=
o/BUILD.gn")
+                               '("libpng.gn" . "third_party/libpng/BUILD.g=
n")
+                               '("libvpx.gn" . "third_party/libvpx/BUILD.g=
n")
+                               '("libwebp.gn" . "third_party/libwebp/BUILD=
.gn")
+                               '("libxml.gn" . "third_party/libxml/BUILD.g=
n")
+                               '("libxslt.gn" . "third_party/libxslt/BUILD=
.gn")
+                               '("openh264.gn" . "third_party/openh264/BUI=
LD.gn")
+                               '("opus.gn" . "third_party/opus/BUILD.gn")
+                               '("re2.gn" . "third_party/re2/BUILD.gn")
+                               '("snappy.gn" . "third_party/snappy/BUILD.g=
n")
+                               '("yasm.gn" . "third_party/yasm/yasm_assemb=
le.gni")
+                               '("zlib.gn" . "third_party/zlib/BUILD.gn")))
+                    #t)))))
+    (build-system gnu-build-system)
+    (arguments
+     `(#:tests? #f
+       ;; FIXME: There is a "gn" option specifically for setting -rpath, b=
ut
+       ;; it overrides the RUNPATH set by the linker.
+       #:validate-runpath? #f
+       #:modules ((srfi srfi-26)
+                  (ice-9 ftw)
+                  (ice-9 regex)
+                  (guix build gnu-build-system)
+                  (guix build utils))
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'patch-stuff
+           (lambda* (#:key inputs #:allow-other-keys)
+             (substitute* "printing/cups_config_helper.py"
+               (("cups_config =3D.*")
+                (string-append "cups_config =3D '" (assoc-ref inputs "cups=
")
+                               "/bin/cups-config'\n")))
+
+             (substitute*
+                 '("base/process/launch_posix.cc"
+                   "base/third_party/dynamic_annotations/dynamic_annotatio=
ns.c"
+                   "sandbox/linux/seccomp-bpf/sandbox_bpf.cc"
+                   "sandbox/linux/services/credentials.cc"
+                   "sandbox/linux/services/namespace_utils.cc"
+                   "sandbox/linux/services/syscall_wrappers.cc"
+                   "sandbox/linux/syscall_broker/broker_host.cc")
+               (("include \"base/third_party/valgrind/") "include \"valgri=
nd/"))
+
+             (for-each (lambda (file)
+                         (substitute* file
+                           ;; Fix opus include path.
+                           ;; Do not substitute opus_private.h.
+                           (("#include \"opus\\.h\"")
+                            "#include \"opus/opus.h\"")
+                           (("#include \"opus_custom\\.h\"")
+                            "#include \"opus/opus_custom.h\"")
+                           (("#include \"opus_defines\\.h\"")
+                            "#include \"opus/opus_defines.h\"")
+                           (("#include \"opus_multistream\\.h\"")
+                            "#include \"opus/opus_multistream.h\"")
+                           (("#include \"opus_types\\.h\"")
+                            "#include \"opus/opus_types.h\"")))
+                       (find-files (string-append "third_party/webrtc/modu=
les"
+                                                  "/audio_coding/codecs/op=
us")))
+
+             (substitute* "chrome/common/chrome_paths.cc"
+               (("/usr/share/chromium/extensions")
+                ;; TODO: Add ~/.guix-profile.
+                "/run/current-system/profile/share/chromium/extensions"))
+
+             (substitute*
+                 "third_party/breakpad/breakpad/src/common/linux/libcurl_w=
rapper.h"
+               (("include \"third_party/curl") "include \"curl"))
+             (substitute* "media/base/decode_capabilities.cc"
+               (("third_party/libvpx/source/libvpx/") ""))
+
+             ;; We don't cross compile most packages, so get rid of the
+             ;; unnecessary ARCH-linux-gnu* prefix.
+             (substitute* "build/toolchain/linux/BUILD.gn"
+               (("aarch64-linux-gnu-") "")
+               (("arm-linux-gnueabihf-") ""))
+             #t))
+         (replace 'configure
+           (lambda* (#:key inputs outputs #:allow-other-keys)
+             (let* ((out (assoc-ref outputs "out"))
+                    (clang-toolchain (assoc-ref inputs "clang-toolchain"))
+                    (gtk+ (assoc-ref inputs "gtk+"))
+                    (mesa (assoc-ref inputs "mesa"))
+                    (nss (assoc-ref inputs "nss"))
+                    (udev (assoc-ref inputs "udev"))
+                    (gn-flags
+                     (list
+                      ;; See tools/gn/docs/cookbook.md and
+                      ;; https://www.chromium.org/developers/gn-build-conf=
iguration
+                      ;; for usage.  Run "./gn args . --list" in the Relea=
se
+                      ;; directory for an exhaustive list of supported fla=
gs.
+                      "is_debug=3Dfalse"
+                      "use_gold=3Dfalse"
+                      "use_lld=3Dfalse"
+                      "linux_use_bundled_binutils=3Dfalse"
+                      "use_custom_libcxx=3Dfalse"
+                      "use_sysroot=3Dfalse"
+                      "enable_precompiled_headers=3Dfalse"
+                      "goma_dir=3D\"\""
+                      "enable_nacl=3Dfalse"
+                      "enable_nacl_nonsfi=3Dfalse"
+                      "use_allocator=3D\"none\"" ;don't use tcmalloc
+                      "override_build_date=3D\"01 01 2000 05:00:00\""
+                      "use_unofficial_version_number=3Dfalse"
+
+                      ;; GCC is poorly supported, so we use Clang for now.
+                      (string-append "clang_base_path=3D\"" clang-toolchai=
n "\"")
+                      "clang_use_chrome_plugins=3Dfalse"
+
+                      ;; Optimize for building everything at once, as oppo=
sed
+                      ;; to incrementally for development.  See "docs/jumb=
o.md".
+                      "use_jumbo_build=3Dtrue"
+                      ;; Disable debugging features to save space.
+                      "symbol_level=3D1"
+                      "remove_webcore_debug_symbols=3Dtrue"
+                      "enable_iterator_debugging=3Dfalse"
+                      ;; Some of the unbundled libraries throws deprecation
+                      ;; warnings, etc.  Ignore it.
+                      "treat_warnings_as_errors=3Dfalse"
+                      ;; Don't add any API keys.  End users can set them i=
n the
+                      ;; environment if desired.  See
+                      ;; <https://www.chromium.org/developers/how-tos/api-=
keys>.
+                      "use_official_google_api_keys=3Dfalse"
+                      ;; Disable "field trials".
+                      "fieldtrial_testing_like_official_build=3Dtrue"
+                      ;; Disable Chrome Remote Desktop (aka Chromoting).
+                      "enable_remoting=3Dfalse"
+
+                      "use_system_freetype=3Dtrue"
+                      "use_system_lcms2=3Dtrue"
+                      "use_system_libjpeg=3Dtrue"
+                      "use_system_libpng=3Dtrue"
+                      "use_system_zlib=3Dtrue"
+                      ;; This is currently not supported on GNU/Linux:
+                      ;; https://bugs.chromium.org/p/chromium/issues/detai=
l?id=3D22208
+                      ;;"use_system_sqlite=3Dtrue"
+
+                      "use_gnome_keyring=3Dfalse" ;deprecated by libsecret
+                      "use_gtk3=3Dtrue"
+                      "use_openh264=3Dtrue"
+                      "use_xkbcommon=3Dtrue"
+                      "use_pulseaudio=3Dtrue"
+                      "link_pulseaudio=3Dtrue"
+
+                      ;; Don't arbitrarily restrict formats supported by s=
ystem ffmpeg.
+                      "proprietary_codecs=3Dtrue"
+                      "ffmpeg_branding=3D\"Chrome\""
+
+                      ;; WebRTC stuff.
+                      "rtc_use_h264=3Dtrue"
+                      ;; Don't use bundled sources.
+                      "rtc_build_json=3Dfalse"
+                      "rtc_build_libevent=3Dfalse"
+                      "rtc_build_libvpx=3Dfalse"
+                      "rtc_build_opus=3Dfalse"
+                      "rtc_build_ssl=3Dfalse"
+                      ;; TODO: Package these.
+                      "rtc_build_libsrtp=3Dtrue" ;2.0
+                      "rtc_build_openmax_dl=3Dtrue"
+                      "rtc_build_usrsctp=3Dtrue"
+                      (string-append "rtc_jsoncpp_root=3D\""
+                                     (assoc-ref inputs "jsoncpp")
+                                     "/include/jsoncpp/json\"")
+                      (string-append "rtc_ssl_root=3D\""
+                                     (assoc-ref inputs "openssl")
+                                     "/include/openssl\""))))
+
+               ;; XXX: How portable is this.
+               (mkdir-p "third_party/node/linux/node-linux-x64")
+               (symlink (string-append (assoc-ref inputs "node") "/bin")
+                        "third_party/node/linux/node-linux-x64/bin")
+
+               (setenv "CC" "clang")
+               (setenv "CXX" "clang++")
+
+               ;; FIXME: This nasty hack works around a problem where
+               ;; Clang does not add the arch triplet to the libtsdc++
+               ;; search path.  Fixing it seems tricky, since it only
+               ;; searches "include/<triplet>" when it detects libstdc++
+               ;; in GCC which is not the case in Guix; the only reason
+               ;; libstdc++ works here is because it's already on the
+               ;; include path...
+               (setenv "CPLUS_INCLUDE_PATH"
+                       (string-append (getenv "CPLUS_INCLUDE_PATH")
+                                      ":" clang-toolchain
+                                      "/include/x86_64-unknown-linux-gnu"))
+
+               ;; TODO: pre-compile instead. Avoids a race condition.
+               (setenv "PYTHONDONTWRITEBYTECODE" "1")
+               (and
+                ;; Build the "gn" tool.
+                (invoke "python"
+                        "tools/gn/bootstrap/bootstrap.py" "-s" "-v")
+                ;; Generate ninja build files.
+                (invoke "./out/Release/gn" "gen" "out/Release"
+                        (string-append "--args=3D"
+                                       (string-join gn-flags " ")))))))
+         (replace 'build
+           (lambda* (#:key outputs #:allow-other-keys)
+             (invoke "ninja" "-C" "out/Release"
+                     "-j" (number->string (parallel-job-count))
+                     "chrome")))
+         (replace 'install
+           (lambda* (#:key inputs outputs #:allow-other-keys)
+             (let* ((out            (assoc-ref outputs "out"))
+                    (bin            (string-append out "/bin"))
+                    (exe            (string-append bin "/chromium"))
+                    (lib            (string-append out "/lib"))
+                    (man            (string-append out "/share/man/man1"))
+                    (applications   (string-append out "/share/application=
s"))
+                    (install-regexp (make-regexp "\\.(bin|pak)$"))
+                    (locales        (string-append lib "/locales"))
+                    (resources      (string-append lib "/resources"))
+                    (gtk+           (assoc-ref inputs "gtk+"))
+                    (mesa           (assoc-ref inputs "mesa"))
+                    (nss            (assoc-ref inputs "nss"))
+                    (udev           (assoc-ref inputs "udev"))
+                    (sh             (which "sh")))
+
+               (substitute* '("chrome/app/resources/manpage.1.in"
+                              "chrome/installer/linux/common/desktop.templ=
ate")
+                 (("@@MENUNAME@@") "Chromium")
+                 (("@@PACKAGE@@") "chromium")
+                 (("/usr/bin/@@USR_BIN_SYMLINK_NAME@@") exe))
+               (mkdir-p man)
+               (copy-file "chrome/app/resources/manpage.1.in"
+                          (string-append man "/chromium.1"))
+               (mkdir-p applications)
+               (copy-file "chrome/installer/linux/common/desktop.template"
+                          (string-append applications "/chromium.desktop"))
+
+               (with-directory-excursion "out/Release"
+                 (for-each (lambda (file)
+                             (install-file file lib))
+                           (scandir "." (cut regexp-exec install-regexp <>=
)))
+                 (copy-file "chrome" (string-append lib "/chromium"))
+
+                 ;; TODO: Install icons from "../../chrome/app/themes" into
+                 ;; "out/share/icons/hicolor/$size".
+                 (install-file
+                  "product_logo_48.png"
+                  (string-append out "/share/icons/48x48/chromium.png"))
+
+                 (copy-recursively "locales" locales)
+                 (copy-recursively "resources" resources)
+
+                 (mkdir-p bin)
+                 ;; Add a thin wrapper to prevent the user from inadverten=
tly
+                 ;; installing non-free software through the Web Store.
+                 ;; TODO: Discover extensions from the profile and pass
+                 ;; something like "--disable-extensions-except=3D...".
+                 (call-with-output-file exe
+                   (lambda (port)
+                     (format port
+                             "#!~a~@
+                             if [ -z \"$CHROMIUM_ENABLE_WEB_STORE\" ]~@
+                             then~@
+                               CHROMIUM_FLAGS=3D\" \\~@
+                                 --disable-background-networking \\~@
+                                 --disable-extensions \\~@
+                               \"~@
+                             fi~@
+                             exec ~a $CHROMIUM_FLAGS \"$@\"~%"
+                             sh (string-append lib "/chromium"))))
+                 (chmod exe #o755)
+
+                 (wrap-program exe
+                   ;; TODO: Get these in RUNPATH.
+                   `("LD_LIBRARY_PATH" ":" prefix
+                     (,(string-append lib ":" nss "/lib/nss:" gtk+ "/lib:"
+                                      mesa "/lib:" udev "/lib")))
+                   ;; Avoid file manager crash.  See <https://bugs.gnu.org=
/26593>.
+                   `("XDG_DATA_DIRS" ":" prefix (,(string-append gtk+ "/sh=
are"))))
+                 #t)))))))
+    (native-inputs
+     `(("bison" ,bison)
+       ("clang-toolchain" ,chromium-clang-toolchain)
+       ("git" ,git)                     ;last_commit_position.py
+       ("gperf" ,gperf)
+       ("ninja" ,ninja)
+       ("node" ,node)
+       ("pkg-config" ,pkg-config)
+       ("which" ,which)
+       ("yasm" ,yasm)
+
+       ("python-beautifulsoup4" ,python2-beautifulsoup4)
+       ("python-html5lib" ,python2-html5lib)
+       ("python" ,python-2)))
+    (inputs
+     `(("alsa-lib" ,alsa-lib)
+       ("atk" ,atk)
+       ("cups" ,cups)
+       ("curl" ,curl)
+       ("dbus" ,dbus)
+       ("dbus-glib" ,dbus-glib)
+       ("expat" ,expat)
+       ("flac" ,flac)
+       ("ffmpeg" ,ffmpeg)
+       ("fontconfig" ,fontconfig)
+       ("freetype" ,freetype)
+       ("gdk-pixbuf" ,gdk-pixbuf)
+       ("glib" ,glib)
+       ("gtk+-2" ,gtk+-2)
+       ("gtk+" ,gtk+)
+       ("harfbuzz" ,harfbuzz)
+       ("icu4c" ,icu4c)
+       ("jsoncpp" ,jsoncpp)
+       ("lcms" ,lcms)
+       ("libevent" ,libevent)
+       ("libffi" ,libffi)
+       ("libjpeg-turbo" ,libjpeg-turbo)
+       ("libpng" ,libpng)
+       ("libusb" ,libusb)
+       ("libvpx" ,libvpx+experimental)
+       ("libwebp" ,libwebp)
+       ("libx11" ,libx11)
+       ("libxcb" ,libxcb)
+       ("libxcomposite" ,libxcomposite)
+       ("libxcursor" ,libxcursor)
+       ("libxdamage" ,libxdamage)
+       ("libxext" ,libxext)
+       ("libxfixes" ,libxfixes)
+       ("libxi" ,libxi)
+       ("libxkbcommon" ,libxkbcommon)
+       ("libxml2" ,libxml2)
+       ("libxrandr" ,libxrandr)
+       ("libxrender" ,libxrender)
+       ("libxscrnsaver" ,libxscrnsaver)
+       ("libxslt" ,libxslt)
+       ("libxtst" ,libxtst)
+       ("mesa" ,mesa)
+       ("minizip" ,minizip)
+       ("mit-krb5" ,mit-krb5)
+       ("nss" ,nss)
+       ("openh264" ,openh264)
+       ("openssl" ,openssl)
+       ("opus" ,opus+custom)
+       ("pango" ,pango)
+       ("pciutils" ,pciutils)
+       ("protobuf" ,protobuf)
+       ("pulseaudio" ,pulseaudio)
+       ("re2" ,re2)
+       ("snappy" ,snappy)
+       ("speech-dispatcher" ,speech-dispatcher)
+       ("sqlite" ,sqlite)
+       ("udev" ,eudev)
+       ("valgrind" ,valgrind)))
+    (home-page "https://www.chromium.org/")
+    (description
+     "Chromium is a web browser designed for speed and security.  This
+version incorporates patches from
+@url{https://github.com/gcarq/inox-patchset,Inox} and
+@url{https://www.debian.org/,Debian} in order to protect the users privacy=
.")
+    ;; Chromium is developed as BSD-3, but bundles a large number of third=
-party
+    ;; components with other licenses.  For full information, see chrome:/=
/credits.
+    (license (list license:bsd-3
+                   license:bsd-2
+                   license:expat
+                   license:asl2.0
+                   license:mpl2.0
+                   license:public-domain
+                   license:lgpl2.1+))))
diff --git a/gnu/packages/patches/chromium-glibc-compat.patch b/gnu/package=
s/patches/chromium-glibc-compat.patch
new file mode 100644
index 000000000..720adbeef
=2D-- /dev/null
+++ b/gnu/packages/patches/chromium-glibc-compat.patch
@@ -0,0 +1,38 @@
+Upstream-Status: Backport
+
+Signed-off-by: Raphael Kubo da Costa <raphael.kubo.da.costa@HIDDEN>
+---
+From 9f63f94a11abc34d40ede8b8712fa15b5844a8c0 Mon Sep 17 00:00:00 2001
+From: Tom Anderson <thomasanderson@HIDDEN>
+Date: Sat, 27 Jan 2018 20:03:37 +0000
+Subject: [PATCH] Fix build with glibc 2.27
+
+BUG=3D806340
+TBR=3Dhamelphi@HIDDEN
+
+Change-Id: Ib4e5091212d874d9ad88f3e9a1fdfee3ed7e0d5e
+Reviewed-on: https://chromium-review.googlesource.com/890059
+Reviewed-by: Thomas Anderson <thomasanderson@HIDDEN>
+Reviewed-by: Philippe Hamel <hamelphi@HIDDEN>
+Commit-Queue: Thomas Anderson <thomasanderson@HIDDEN>
+Cr-Commit-Position: refs/heads/master@{#532249}
+---
+ components/assist_ranker/ranker_example_util.cc | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/components/assist_ranker/ranker_example_util.cc b/components/=
assist_ranker/ranker_example_util.cc
+index 54d4dbd58f7d..ceedd8f9b18d 100644
+--- a/components/assist_ranker/ranker_example_util.cc
++++ b/components/assist_ranker/ranker_example_util.cc
+@@ -2,6 +2,8 @@
+ // Use of this source code is governed by a BSD-style license that can be
+ // found in the LICENSE file.
+=20
++#include <math.h>
++
+ #include "components/assist_ranker/ranker_example_util.h"
+ #include "base/bit_cast.h"
+ #include "base/format_macros.h"
+--=20
+2.14.3
+
diff --git a/gnu/packages/patches/chromium-remove-default-history.patch b/g=
nu/packages/patches/chromium-remove-default-history.patch
new file mode 100644
index 000000000..38be10820
=2D-- /dev/null
+++ b/gnu/packages/patches/chromium-remove-default-history.patch
@@ -0,0 +1,13 @@
+Don't pre-populate the New Tab Page for new profiles.
+
+--- a/chrome/browser/history/top_sites_factory.cc
++++ b/chrome/browser/history/top_sites_factory.cc
+@@ -74,7 +74,7 @@
+=20
+ void InitializePrepopulatedPageList(
+     history::PrepopulatedPageList* prepopulated_pages) {
+-#if !defined(OS_ANDROID)
++#if false
+   DCHECK(prepopulated_pages);
+   prepopulated_pages->reserve(arraysize(kRawPrepopulatedPages));
+   for (size_t i =3D 0; i < arraysize(kRawPrepopulatedPages); ++i) {
=2D-=20
2.17.0


--=-=-=--

--==-=-=
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQEzBAEBCgAdFiEEu7At3yzq9qgNHeZDoqBt8qM6VPoFAlrRALkACgkQoqBt8qM6
VPos9AgAsv1OBxLJCbBTyGUj+KeoliQrfjD68RN6kppnZSsAIWXR/PMZRdrydXGo
TuBcigQdgRt/DNVS0p9MR3aJ01kFwZVZMSWLNNK+OTIOf+m9cuYcsFPP5RGfUEMc
C7o8zHaBVH6V2j1o+rqAi7D8vKNrIDxmEBHjFgY+hn6yrSP7T1Rrv10wq0471ROF
8ybupERXIN0rvj9OCIqXpOhw+fN+nXKnaear2M7vidGumVvqhU544utWJVPZCNYX
4buP5dsEwzlu9qWz8A2ZXRnJFAY9QeUeCGtbcWpom3A+wfwtUVCIa+1cITQpTrHA
7Y8Z1+tbz7f+aaNAevzan5IG4EkOdQ==
=eFI1
-----END PGP SIGNATURE-----
--==-=-=--




Information forwarded to guix-patches@HIDDEN:
bug#28004; Package guix-patches. Full text available.

Message received at 28004 <at> debbugs.gnu.org:


Received: (at 28004) by debbugs.gnu.org; 16 Mar 2018 21:20:35 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Mar 16 17:20:35 2018
Received: from localhost ([127.0.0.1]:37347 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1ewwmB-0002aV-Hj
	for submit <at> debbugs.gnu.org; Fri, 16 Mar 2018 17:20:35 -0400
Received: from relay2-d.mail.gandi.net ([217.70.183.194]:39947)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <adfeno@HIDDEN>) id 1ewwm8-0002aJ-TO
 for 28004 <at> debbugs.gnu.org; Fri, 16 Mar 2018 17:20:33 -0400
X-Originating-IP: 181.221.158.128
Received: from adfeno-pc1 (unknown [181.221.158.128])
 (Authenticated sender: adfeno@HIDDEN)
 by relay2-d.mail.gandi.net (Postfix) with ESMTPSA id EB80F40005
 for <28004 <at> debbugs.gnu.org>; Fri, 16 Mar 2018 22:20:30 +0100 (CET)
From: Adonay Felipe Nogueira <adfeno@HIDDEN>
To: 28004 <at> debbugs.gnu.org
Subject: Re: [bug#28004] Chromium
References: <87fu75aar5.fsf@HIDDEN> <874lnkr0vf.fsf@HIDDEN>
 <87vaejvclc.fsf@HIDDEN>
 <20180226200133.zsnahblbgzovrtmu@abyayala>
 <87muzvv7ku.fsf@HIDDEN> <20180226234144.032af030@alma-ubu>
 <87woyxt3nz.fsf@HIDDEN>
 <20180316173044.dctlydfij7smndxd@abyayala>
 <87h8pfc3tr.fsf@HIDDEN> <87po43rgip.fsf@HIDDEN>
 <20180316193422.wd6rybkpxpzyvqs7@abyayala>
Date: Fri, 16 Mar 2018 18:20:29 -0300
In-Reply-To: <20180316193422.wd6rybkpxpzyvqs7@abyayala> (ng0@HIDDEN's message
 of "Fri, 16 Mar 2018 19:34:22 +0000")
Message-ID: <87in9vpvj6.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.3 (gnu/linux)
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 28004
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -0.7 (/)

> Guix!). As we are already offtopic: Want Cross-Browser support
> so that the Browser *extension* (Taler is not *a* Browser) runs
> in legacy old cruft Icecat base and newer Firefox (which shares
> extension format with Chrome?
> Good, there's something to work on in Taler if you want it.
>
> Again, I am not a Taler developer, reach out to them.

Indeed, sorry for the bother, I tought I was replying to Taler. I guess
I'm somewhat asleep today.




Information forwarded to guix-patches@HIDDEN:
bug#28004; Package guix-patches. Full text available.

Message received at 28004 <at> debbugs.gnu.org:


Received: (at 28004) by debbugs.gnu.org; 16 Mar 2018 19:34:42 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Mar 16 15:34:42 2018
Received: from localhost ([127.0.0.1]:37293 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1ewv7i-0006Zo-Iy
	for submit <at> debbugs.gnu.org; Fri, 16 Mar 2018 15:34:42 -0400
Received: from aibo.runbox.com ([91.220.196.211]:36174)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <ng0@HIDDEN>) id 1ewv7g-0006Ze-4h
 for 28004 <at> debbugs.gnu.org; Fri, 16 Mar 2018 15:34:40 -0400
Received: from [10.9.9.210] (helo=mailfront10.runbox.com)
 by mailtransmit02.runbox with esmtp (Exim 4.86_2)
 (envelope-from <ng0@HIDDEN>)
 id 1ewv7e-0001S3-24; Fri, 16 Mar 2018 20:34:38 +0100
Received: from dslb-092-072-221-035.092.072.pools.vodafone-ip.de
 ([92.72.221.35] helo=localhost)
 by mailfront10.runbox.com with esmtpsa (uid:892961 )
 (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82)
 id 1ewv7A-0005jB-N2; Fri, 16 Mar 2018 20:34:08 +0100
Date: Fri, 16 Mar 2018 19:34:22 +0000
From: ng0 <ng0@HIDDEN>
To: Adonay Felipe Nogueira <adfeno@HIDDEN>
Subject: Re: [bug#28004] Chromium
Message-ID: <20180316193422.wd6rybkpxpzyvqs7@abyayala>
References: <87fu75aar5.fsf@HIDDEN> <874lnkr0vf.fsf@HIDDEN>
 <87vaejvclc.fsf@HIDDEN>
 <20180226200133.zsnahblbgzovrtmu@abyayala>
 <87muzvv7ku.fsf@HIDDEN> <20180226234144.032af030@alma-ubu>
 <87woyxt3nz.fsf@HIDDEN>
 <20180316173044.dctlydfij7smndxd@abyayala>
 <87h8pfc3tr.fsf@HIDDEN> <87po43rgip.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
In-Reply-To: <87po43rgip.fsf@HIDDEN>
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 28004
Cc: 28004 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -0.7 (/)

Adonay Felipe Nogueira transcribed 890 bytes:
> > Reading up on GNU Taler, Chromium seems like a poor choice for an
> > anonymous payment system.  Why not GNU IceCat?  I don't see Chromium
> > becoming stable enough for guaranteed privacy any time soon.  And a full
> > fork would require a large maintenance team.
> 
> +1 (I agree with you).

Read the follow-up emails I've sent.

Also, 1 line emails which basically say "+1" are not really good,
even more so when it goes offtopic (this is about getting Chrmium into
Guix!). As we are already offtopic: Want Cross-Browser support
so that the Browser *extension* (Taler is not *a* Browser) runs
in legacy old cruft Icecat base and newer Firefox (which shares
extension format with Chrome?
Good, there's something to work on in Taler if you want it.

Again, I am not a Taler developer, reach out to them.
-- 
A88C8ADD129828D7EAC02E52E22F9BBFEE348588
https://n0.is




Information forwarded to guix-patches@HIDDEN:
bug#28004; Package guix-patches. Full text available.

Message received at submit <at> debbugs.gnu.org:


Received: (at submit) by debbugs.gnu.org; 16 Mar 2018 19:02:18 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Mar 16 15:02:18 2018
Received: from localhost ([127.0.0.1]:37279 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1ewucM-0005nJ-Bi
	for submit <at> debbugs.gnu.org; Fri, 16 Mar 2018 15:02:18 -0400
Received: from eggs.gnu.org ([208.118.235.92]:39567)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <adfeno@HIDDEN>) id 1ewucL-0005n6-1M
 for submit <at> debbugs.gnu.org; Fri, 16 Mar 2018 15:02:17 -0400
Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)
 (envelope-from <adfeno@HIDDEN>) id 1ewucE-0001D0-TT
 for submit <at> debbugs.gnu.org; Fri, 16 Mar 2018 15:02:11 -0400
X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org
X-Spam-Level: 
X-Spam-Status: No, score=0.8 required=5.0 tests=BAYES_50 autolearn=disabled
 version=3.3.2
Received: from lists.gnu.org ([2001:4830:134:3::11]:47274)
 by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32)
 (Exim 4.71) (envelope-from <adfeno@HIDDEN>)
 id 1ewucE-0001CT-PJ
 for submit <at> debbugs.gnu.org; Fri, 16 Mar 2018 15:02:10 -0400
Received: from eggs.gnu.org ([2001:4830:134:3::10]:58738)
 by lists.gnu.org with esmtp (Exim 4.71)
 (envelope-from <adfeno@HIDDEN>) id 1ewucD-0005ko-CQ
 for guix-patches@HIDDEN; Fri, 16 Mar 2018 15:02:10 -0400
Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)
 (envelope-from <adfeno@HIDDEN>) id 1ewuc9-000187-D4
 for guix-patches@HIDDEN; Fri, 16 Mar 2018 15:02:09 -0400
Received: from relay2-d.mail.gandi.net ([217.70.183.194]:35313)
 by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32)
 (Exim 4.71) (envelope-from <adfeno@HIDDEN>)
 id 1ewuc9-00015S-6N
 for guix-patches@HIDDEN; Fri, 16 Mar 2018 15:02:05 -0400
X-Originating-IP: 181.221.158.128
Received: from adfeno-pc1 (unknown [181.221.158.128])
 (Authenticated sender: adfeno@HIDDEN)
 by relay2-d.mail.gandi.net (Postfix) with ESMTPSA id 19E3F4000D
 for <guix-patches@HIDDEN>; Fri, 16 Mar 2018 20:02:01 +0100 (CET)
From: Adonay Felipe Nogueira <adfeno@HIDDEN>
To: guix-patches@HIDDEN
Subject: Re: [bug#28004] Chromium
References: <20180108232042.nqjurjr2bcfl2yyc@abyayala>
 <87373cey5b.fsf@HIDDEN> <87vag16g5z.fsf@HIDDEN>
 <87fu75aar5.fsf@HIDDEN> <874lnkr0vf.fsf@HIDDEN>
 <87vaejvclc.fsf@HIDDEN>
 <20180226200133.zsnahblbgzovrtmu@abyayala>
 <87muzvv7ku.fsf@HIDDEN> <20180226234144.032af030@alma-ubu>
 <87woyxt3nz.fsf@HIDDEN>
 <20180316173044.dctlydfij7smndxd@abyayala>
 <87h8pfc3tr.fsf@HIDDEN>
Date: Fri, 16 Mar 2018 16:01:50 -0300
In-Reply-To: <87h8pfc3tr.fsf@HIDDEN> (Marius Bakke's message of "Fri, 16
 Mar 2018 18:45:04 +0100")
Message-ID: <87po43rgip.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.3 (gnu/linux)
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic]
 [fuzzy]
X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x
X-Received-From: 2001:4830:134:3::11
X-Spam-Score: -4.1 (----)
X-Debbugs-Envelope-To: submit
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -4.1 (----)

> Reading up on GNU Taler, Chromium seems like a poor choice for an
> anonymous payment system.  Why not GNU IceCat?  I don't see Chromium
> becoming stable enough for guaranteed privacy any time soon.  And a full
> fork would require a large maintenance team.

+1 (I agree with you).

--=20
- https://libreplanet.org/wiki/User:Adfeno
- Palestrante e consultor sobre /software/ livre (n=C3=A3o confundir com
  gratis).
- "WhatsApp"? Ele n=C3=A3o =C3=A9 livre. Por favor, veja formas de se comun=
icar
  instantaneamente comigo no endere=C3=A7o abaixo.
- Contato: https://libreplanet.org/wiki/User:Adfeno#vCard
- Arquivos comuns aceitos (apenas sem DRM): Corel Draw, Microsoft
  Office, MP3, MP4, WMA, WMV.
- Arquivos comuns aceitos e enviados: CSV, GNU Dia, GNU Emacs Org, GNU
  GIMP, Inkscape SVG, JPG, LibreOffice (padr=C3=A3o ODF), OGG, OPUS, PDF
  (apenas sem DRM), PNG, TXT, WEBM.




Information forwarded to guix-patches@HIDDEN:
bug#28004; Package guix-patches. Full text available.

Message received at 28004 <at> debbugs.gnu.org:


Received: (at 28004) by debbugs.gnu.org; 16 Mar 2018 17:52:25 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Mar 16 13:52:25 2018
Received: from localhost ([127.0.0.1]:37263 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1ewtWj-00046C-CS
	for submit <at> debbugs.gnu.org; Fri, 16 Mar 2018 13:52:25 -0400
Received: from aibo.runbox.com ([91.220.196.211]:55592)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <ng0@HIDDEN>) id 1ewtWh-000460-Iv
 for 28004 <at> debbugs.gnu.org; Fri, 16 Mar 2018 13:52:24 -0400
Received: from [10.9.9.210] (helo=mailfront10.runbox.com)
 by mailtransmit02.runbox with esmtp (Exim 4.86_2)
 (envelope-from <ng0@HIDDEN>)
 id 1ewtWf-0001Um-K2; Fri, 16 Mar 2018 18:52:21 +0100
Received: from dslb-092-072-221-035.092.072.pools.vodafone-ip.de
 ([92.72.221.35] helo=localhost)
 by mailfront10.runbox.com with esmtpsa (uid:892961 )
 (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82)
 id 1ewtWV-00088v-5F; Fri, 16 Mar 2018 18:52:11 +0100
Date: Fri, 16 Mar 2018 17:52:25 +0000
From: ng0 <ng0@HIDDEN>
To: Marius Bakke <mbakke@HIDDEN>
Subject: Re: [bug#28004] Chromium
Message-ID: <20180316175225.7jf4k2qaciyxnepp@abyayala>
References: <87vag16g5z.fsf@HIDDEN> <87fu75aar5.fsf@HIDDEN>
 <874lnkr0vf.fsf@HIDDEN> <87vaejvclc.fsf@HIDDEN>
 <20180226200133.zsnahblbgzovrtmu@abyayala>
 <87muzvv7ku.fsf@HIDDEN> <20180226234144.032af030@alma-ubu>
 <87woyxt3nz.fsf@HIDDEN>
 <20180316173044.dctlydfij7smndxd@abyayala>
 <87h8pfc3tr.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: multipart/signed; micalg=pgp-sha512;
 protocol="application/pgp-signature"; boundary="mkofdllgcgyb6gch"
Content-Disposition: inline
In-Reply-To: <87h8pfc3tr.fsf@HIDDEN>
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 28004
Cc: =?utf-8?B?QmrDtnJuIEjDtmZsaW5n?= <bjoern.hoefling@HIDDEN>,
 28004 <at> debbugs.gnu.org, ng0 <ng0@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -0.7 (/)


--mkofdllgcgyb6gch
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

Marius Bakke transcribed 1.4K bytes:
> ng0 <ng0@HIDDEN> writes:
>=20
> > I think we found it to be good enough to be included in master, or did =
I miss anything?
> >
> > Would be nice if I could drop my local patch (and building). The team a=
round Taler seems
> > to be interested in it as well as far as I can remember our chats in Le=
ipzig.
>=20
> Reading up on GNU Taler, Chromium seems like a poor choice for an
> anonymous payment system.  Why not GNU IceCat?  I don't see Chromium
> becoming stable enough for guaranteed privacy any time soon.  And a full
> fork would require a large maintenance team.

Why: Ask Taler directly, I'm not involved with them.
And on for what: It is just for the Browser extension. No one is forking
Chromium again.

> Unfortunately I got busy after the latest update, and haven't had time
> to work on 65 yet.  I will send an update once I get around to it, and
> also try some other Inox patches and see if they help with the "first
> launch" issue -- hopefully within a week or two.

Cool, thanks! And thanks for your continued work on this. I'll definitely
try to help out once it is in master.
--=20
A88C8ADD129828D7EAC02E52E22F9BBFEE348588
https://n0.is
--mkofdllgcgyb6gch
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQIzBAABCgAdFiEEqIyK3RKYKNfqwC5S4i+bv+40hYgFAlqsBFkACgkQ4i+bv+40
hYhN/Q/9FpjVSMbtxcBVIhXk56gnCGGhohJxTKVVqsGrru/ZpO3XO0Sq5aOhvyPx
JkYG2iYL0pJboltQWFWw/NO4JRYVdTt/mNZMyaL/R3vd/eSQb7DqpohUOq9CKcJ8
a76LvqaLqTrAYrVCOLEYYayiKzxlky5HZLt1vkQ4MEW8h3gdVEicHa5axhICPuX+
brbXZTilWgCI2DZPhaSIdrEHeGMqXldhmskMz55Wq3mJiBStQisTbiIdd+KLHfMh
Ur407LLJxzghb3X0HSMH49Lk1A1k9xWothMM0dIQ6M2rvh2mJD/RMEyBER/B9bTu
3c+rOIuspsyVs7r9E6+S+0dR84R/XY3Eg9jVArNy5cF7fnEqYxUFXqeXs4Zbntlb
sDicqs/XpdxqTKHymzpIbL02LpLoF8j+zdSo9Hz3mVpqR3Kd55JkBZBV7I+WzHBy
fa6MWMpLNvLblonUqgu83SmWetky0YfDQSApWpvM0kAbiGDbyoV1pPNcW39nJJ1k
Vv4E0MwGFFCXRkWyX4zJgimkkPEZkaYUNz4IFbdxNazEhMdqp2HnuVzuHbfNvlX4
hGnpGhWwXyz3Z4mw/y5IkQlVD6WjziSIDUDHgdqTY/i71JfH9LdaDC6l2vKkgylE
B2oc6nrQDGJ5J0pRryhSp0XTsQK3i0fy//ZuavF5etCa83PXhnY=
=Ai+x
-----END PGP SIGNATURE-----

--mkofdllgcgyb6gch--




Information forwarded to guix-patches@HIDDEN:
bug#28004; Package guix-patches. Full text available.

Message received at 28004 <at> debbugs.gnu.org:


Received: (at 28004) by debbugs.gnu.org; 16 Mar 2018 17:45:09 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Mar 16 13:45:09 2018
Received: from localhost ([127.0.0.1]:37259 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1ewtPh-0003uS-JF
	for submit <at> debbugs.gnu.org; Fri, 16 Mar 2018 13:45:09 -0400
Received: from out5-smtp.messagingengine.com ([66.111.4.29]:34735)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <mbakke@HIDDEN>) id 1ewtPf-0003uJ-Hq
 for 28004 <at> debbugs.gnu.org; Fri, 16 Mar 2018 13:45:08 -0400
Received: from compute5.internal (compute5.nyi.internal [10.202.2.45])
 by mailout.nyi.internal (Postfix) with ESMTP id C651420DEA;
 Fri, 16 Mar 2018 13:45:06 -0400 (EDT)
Received: from frontend1 ([10.202.2.160])
 by compute5.internal (MEProxy); Fri, 16 Mar 2018 13:45:06 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=fastmail.com; h=
 cc:content-type:date:from:in-reply-to:message-id:mime-version
 :references:subject:to:x-me-sender:x-me-sender:x-sasl-enc; s=
 fm2; bh=4KJvXtZI4EHUztZBzC5IQXYaixbyfZ0ys2lgg5hsdKg=; b=HYl/pIA6
 msUUkH4Ir4nxGv/O9473M3aUoF6WxbczjiQinx9kiXx3BssPEVxKY0BsultM2TQI
 V1x/6aagv4mrrX1YlfFS2kYVMA1r3+XTIMLeC1kAFkKW9pCG/KevmhusPIjmHvCB
 QVhR/2I9iNE91ADitujqqTUKHr0kJG3bjWj5UfE2+ArzEQGYv8YyITgMqzeulAyM
 WDk2IbltWWJf3QWMs3REa7fxE3PiwBWqrV4ac86SeMWPKHvzqsLKd2/Y9GDfXpQi
 GhZzc18diHel915+heZu6OlIT2bMqVhHQEmt5y7ZkuOGBKo3mXL/qHGkjTMHUYUc
 Uby5ktGfB+RLKw==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
 messagingengine.com; h=cc:content-type:date:from:in-reply-to
 :message-id:mime-version:references:subject:to:x-me-sender
 :x-me-sender:x-sasl-enc; s=fm2; bh=4KJvXtZI4EHUztZBzC5IQXYaixbyf
 Z0ys2lgg5hsdKg=; b=APZ/mMu0mGMw7NqwcUdTQ7SiCjLZHKaSYhS6F4UdSUhWh
 7MgEjcNVFCwliGaSCq3AlC8V4DrXzH1ZKB/NNToCwjSjr2whfZlgABSI0Zy9+/b2
 yT0Pc/qS3C2Y11vq+4OEb/oiqltj+tUe/fOgKQvPG0vIyyuIOYGYslFJHd/jTlF5
 xgRXWqatcNTSNX7cycWBGq/3e7bslOR0uD24z2ShRcxUJr6p7wBaR7FZaqvS84w6
 gUa2dBK0FNL+ygtqIGeF6JHFuEYfPlotwuwaIt29wFHnNBRsYnZYShiXvbDZBpgY
 BNmZ8svORR0vk2XkItlXmD2pMoEI7C9YRVkydMz3w==
X-ME-Sender: <xms:ogKsWsuJvb_e1E7BDFla5q7EJ3kRv0XrL8vFhTlSvWSgCsgotA-Myw>
Received: from localhost (ti0005a400-2325.bb.online.no [80.212.254.34])
 by mail.messagingengine.com (Postfix) with ESMTPA id 3C83F7E1FF;
 Fri, 16 Mar 2018 13:45:06 -0400 (EDT)
From: Marius Bakke <mbakke@HIDDEN>
To: ng0 <ng0@HIDDEN>
Subject: Re: [bug#28004] Chromium
In-Reply-To: <20180316173044.dctlydfij7smndxd@abyayala>
References: <20180108232042.nqjurjr2bcfl2yyc@abyayala>
 <87373cey5b.fsf@HIDDEN> <87vag16g5z.fsf@HIDDEN>
 <87fu75aar5.fsf@HIDDEN> <874lnkr0vf.fsf@HIDDEN>
 <87vaejvclc.fsf@HIDDEN> <20180226200133.zsnahblbgzovrtmu@abyayala>
 <87muzvv7ku.fsf@HIDDEN> <20180226234144.032af030@alma-ubu>
 <87woyxt3nz.fsf@HIDDEN> <20180316173044.dctlydfij7smndxd@abyayala>
User-Agent: Notmuch/0.26 (https://notmuchmail.org) Emacs/25.3.1
 (x86_64-pc-linux-gnu)
Date: Fri, 16 Mar 2018 18:45:04 +0100
Message-ID: <87h8pfc3tr.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: multipart/signed; boundary="=-=-=";
 micalg=pgp-sha512; protocol="application/pgp-signature"
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 28004
Cc: =?utf-8?Q?Bj=C3=B6rn_H=C3=B6fling?= <bjoern.hoefling@HIDDEN>,
 28004 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -0.7 (/)

--=-=-=
Content-Type: text/plain

ng0 <ng0@HIDDEN> writes:

> I think we found it to be good enough to be included in master, or did I miss anything?
>
> Would be nice if I could drop my local patch (and building). The team around Taler seems
> to be interested in it as well as far as I can remember our chats in Leipzig.

Reading up on GNU Taler, Chromium seems like a poor choice for an
anonymous payment system.  Why not GNU IceCat?  I don't see Chromium
becoming stable enough for guaranteed privacy any time soon.  And a full
fork would require a large maintenance team.

Unfortunately I got busy after the latest update, and haven't had time
to work on 65 yet.  I will send an update once I get around to it, and
also try some other Inox patches and see if they help with the "first
launch" issue -- hopefully within a week or two.

--=-=-=
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQEzBAEBCgAdFiEEu7At3yzq9qgNHeZDoqBt8qM6VPoFAlqsAqAACgkQoqBt8qM6
VPpoYgf+ILajYD73EBu0xTFNQGJn2XIbTesjwIgVWEIKWdlLswDaoP+eD0WnrBsu
5o/GrYeWMwKpxJ7mc7PLYCuYB8zpgLQB4C/heNKNpljS2BHVevaHE8DHpNam5dIr
fT001k7JHhZuXQQWauNfgmUBXP/oGp5+KyH+Co9zbXpX7OlegwNbc6DZwq+rRUG2
gmxgKxRKLDM51pAGQySV6eoBhGG1GJYxNdTeUdcEXoJtX0cBVcta9iswA2YQFMKL
vNXZPfgGsOv75KIFEzhdV5BYw3x7uQBYtvkcu6G9OkCeNbk6HJNYpfapM0WqBZhs
ymG1kcpiTDUD/e4uBDd80OrQnHhggQ==
=0xjP
-----END PGP SIGNATURE-----
--=-=-=--




Information forwarded to guix-patches@HIDDEN:
bug#28004; Package guix-patches. Full text available.

Message received at 28004 <at> debbugs.gnu.org:


Received: (at 28004) by debbugs.gnu.org; 16 Mar 2018 17:30:55 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Mar 16 13:30:55 2018
Received: from localhost ([127.0.0.1]:37251 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1ewtBv-0003Xy-5V
	for submit <at> debbugs.gnu.org; Fri, 16 Mar 2018 13:30:55 -0400
Received: from aibo.runbox.com ([91.220.196.211]:46800)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <ng0@HIDDEN>) id 1ewtBt-0003Xq-Kc
 for 28004 <at> debbugs.gnu.org; Fri, 16 Mar 2018 13:30:54 -0400
Received: from [10.9.9.211] (helo=mailfront11.runbox.com)
 by mailtransmit03.runbox with esmtp (Exim 4.86_2)
 (envelope-from <ng0@HIDDEN>)
 id 1ewtBr-0001BO-3i; Fri, 16 Mar 2018 18:30:51 +0100
Received: from dslb-092-072-221-035.092.072.pools.vodafone-ip.de
 ([92.72.221.35] helo=localhost)
 by mailfront11.runbox.com with esmtpsa (uid:892961 )
 (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82)
 id 1ewtBW-00058H-OJ; Fri, 16 Mar 2018 18:30:30 +0100
Date: Fri, 16 Mar 2018 17:30:44 +0000
From: ng0 <ng0@HIDDEN>
To: Marius Bakke <mbakke@HIDDEN>
Subject: Re: [bug#28004] Chromium
Message-ID: <20180316173044.dctlydfij7smndxd@abyayala>
References: <20180108232042.nqjurjr2bcfl2yyc@abyayala>
 <87373cey5b.fsf@HIDDEN> <87vag16g5z.fsf@HIDDEN>
 <87fu75aar5.fsf@HIDDEN> <874lnkr0vf.fsf@HIDDEN>
 <87vaejvclc.fsf@HIDDEN>
 <20180226200133.zsnahblbgzovrtmu@abyayala>
 <87muzvv7ku.fsf@HIDDEN> <20180226234144.032af030@alma-ubu>
 <87woyxt3nz.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <87woyxt3nz.fsf@HIDDEN>
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 28004
Cc: =?utf-8?B?QmrDtnJuIEjDtmZsaW5n?= <bjoern.hoefling@HIDDEN>,
 28004 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -0.7 (/)

Marius Bakke transcribed 4.8K bytes:
> Björn Höfling <bjoern.hoefling@HIDDEN> writes:
> 
> > Hi Marius,
> >
> > On Mon, 26 Feb 2018 21:06:57 +0100
> > Marius Bakke <mbakke@HIDDEN> wrote:
> >
> >> ng0 <ng0@HIDDEN> writes:
> >> 
> >> > Marius Bakke transcribed 2.1K bytes:  
> >> >> Mike Gerwitz <mtg@HIDDEN> writes:
> >> >>   
> >> >> > On Tue, Jan 16, 2018 at 20:01:34 +0100, Marius Bakke wrote:  
> >> >> >> If there are no objections, expect to see this in 'master' in
> >> >> >> 1-2 weeks.  
> >> >> >
> >> >> > I want to express gratitude for your hard work on this---given
> >> >> > that IceCat does not contain many of the FF devtool updates,
> >> >> > Chromium is very desirable for web development.  It's also
> >> >> > needed for certain Node.js tools, like node-inspector.
> >> >> >
> >> >> > So, thank you!  
> >> >> 
> >> >> Thank *you* for the kind words! :-)
> >> >> 
> >> >> Here is the latest iteration of this patch.  New in this version:
> >> >> 
> >> >> * Chromium 64 (duh).
> >> >> * The 'delete-bundled-software' phase has been moved to a snippet,
> >> >>   shaving ~100MiB (~22%) off the compressed tarball size (and
> >> >>   drastically reduces (de)compression time).
> >> >> * The New Tab page does not show any thumbnails for new profiles.  
> >> >
> >> > I think you forgot to attach the patches :)  
> >> 
> >> Derp.  I realized that and just used `git send-email`[0], but have
> >> attached it here for convenience since the debbugs web UI doesn't
> >> allow easy download of a raw message.
> >> 
> >> [0] https://debbugs.gnu.org/cgi/bugreport.cgi?msg=131;bug=28004#131
> >> 
> >
> >
> > This looks like a lot of work. Thank you!
> >
> > I quickly tried to apply and build the patch and have two first remarks:
> >
> > The file says:
> >
> > ;;; Copyright © 2016, 2017, 2018 Marius Bakke <mbakke@HIDDEN>
> >
> > I haven't followed history, have you worked on this since 2016?
> 
> Yeah, I started this shortly after going full-GuixSD in October 2016.
> But I didn't submit it until now because I didn't think it met Guix's
> standards (and still think it's questionable due to privacy concerns).
> 
> > One patch has a hash-mismatch:
> >
> > Starting download of /gnu/store/q8hlws48cjfcmz6i40jrnxn3kp750gy4-chromium-icu.patch
> > From https://anonscm.debian.org/cgit/pkg-chromium/pkg-chromium.git/plain/debian/patches/system/icu.patch?id=debian/64.0.3282.119-2...
> >  icu.patch  2KiB                    1.8MiB/s 00:00 [####################] 100.0%
> > output path `/gnu/store/q8hlws48cjfcmz6i40jrnxn3kp750gy4-chromium-icu.patch' should have sha256 hash `0kf77d8lyma3w0xpgfv2k0c741zp6ii08gzllfja6d5s59c15ylv', instead has `19r0bpv2hapzq5m0m7rlz1dwn3h2ijgkilb2hmhw56qvwpbw0b59'
> > @ build-failed /gnu/store/cqdllqn8ig5wnjn0yqvnh4vlzsvnpzv6-chromium-icu.patch.drv - 1 output path `/gnu/store/q8hlws48cjfcmz6i40jrnxn3kp750gy4-chromium-icu.patch' should have sha256 hash `0kf77d8lyma3w0xpgfv2k0c741zp6ii08gzllfja6d5s59c15ylv', instead has `19r0bpv2hapzq5m0m7rlz1dwn3h2ijgkilb2hmhw56qvwpbw0b59'
> > cannot build derivation `/gnu/store/vacxbwsprcp52vp6q975450zi091dak2-chromium-64.0.3282.186.tar.xz.drv': 1 dependencies couldn't be built
> > @ build-started /gnu/store/7q53inn1v32b5fain0h0wcrliclf0ff1-libvpx+experimental-1.7.0.drv - x86_64-linux /var/log/guix/drvs/7q//53inn1v32b5fain0h0wcrliclf0ff1-libvpx+experimental-1.7.0.drv.bz2
> > cannot build derivation `/gnu/store/5qv7anaaqk4576pma9mhcsz1nhrx1n01-chromium-64.0.3282.186.drv': 1 dependencies couldn't be built
> > guix build: error: build failed: build of `/gnu/store/5qv7anaaqk4576pma9mhcsz1nhrx1n01-chromium-64.0.3282.186.drv' failed
> >
> > I looked into the file and it looks reasonable, like a patch-file. It has no download errors.
> >
> > It starts like this:
> >
> > description: backwards compatibility for older versions of icu
> > author: Michael Gilbert <mgilbert@HIDDEN>
> >
> > --- a/v8/src/runtime/runtime-intl.cc
> > +++ b/v8/src/runtime/runtime-intl.cc
> > @@ -627,7 +627,11 @@ RUNTIME_FUNCTION(Runtime_PluralRulesSele
> >
> > ...
> >
> > Can you check this file again?
> 
> Whoops, indeed.  I had an older patch in my store and apparently forgot
> to update the hash.
> 
> The correct hash for %chromium-system-icu.patch is:
> 
> 19r0bpv2hapzq5m0m7rlz1dwn3h2ijgkilb2hmhw56qvwpbw0b59
> 
> Thanks for letting me know!  I'll send an updated patch later, with some
> other minor improvements.


I think we found it to be good enough to be included in master, or did I miss anything?

Would be nice if I could drop my local patch (and building). The team around Taler seems
to be interested in it as well as far as I can remember our chats in Leipzig.
-- 
A88C8ADD129828D7EAC02E52E22F9BBFEE348588
https://n0.is




Information forwarded to guix-patches@HIDDEN:
bug#28004; Package guix-patches. Full text available.

Message received at 28004 <at> debbugs.gnu.org:


Received: (at 28004) by debbugs.gnu.org; 28 Feb 2018 18:10:10 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed Feb 28 13:10:10 2018
Received: from localhost ([127.0.0.1]:37818 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1er6B8-0006ib-Gw
	for submit <at> debbugs.gnu.org; Wed, 28 Feb 2018 13:10:10 -0500
Received: from m4s11.vlinux.de ([83.151.27.109]:44160 helo=bjoernhoefling.de)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <bjoern.hoefling@HIDDEN>)
 id 1er6B6-0006iQ-CR
 for 28004 <at> debbugs.gnu.org; Wed, 28 Feb 2018 13:10:08 -0500
Received: from alma-ubu (unknown [46.183.103.8])
 (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits))
 (No client certificate requested)
 by bjoernhoefling.de (Postfix) with ESMTPSA id 0D55040A95;
 Wed, 28 Feb 2018 19:09:56 +0100 (CET)
Date: Wed, 28 Feb 2018 19:09:25 +0100
From: =?UTF-8?B?QmrDtnJuIEjDtmZsaW5n?= <bjoern.hoefling@HIDDEN>
To: Marius Bakke <mbakke@HIDDEN>
Subject: Re: [bug#28004] Chromium
Message-ID: <20180228190925.383c1e25@alma-ubu>
In-Reply-To: <87woyxt3nz.fsf@HIDDEN>
References: <87shensfq6.fsf@HIDDEN> <87o9p45bb6.fsf@HIDDEN>
 <20180104191648.custe7w3l57fvbac@abyayala>
 <87wp0s2ewl.fsf@HIDDEN>
 <20180108232042.nqjurjr2bcfl2yyc@abyayala>
 <87373cey5b.fsf@HIDDEN> <87vag16g5z.fsf@HIDDEN>
 <87fu75aar5.fsf@HIDDEN> <874lnkr0vf.fsf@HIDDEN>
 <87vaejvclc.fsf@HIDDEN>
 <20180226200133.zsnahblbgzovrtmu@abyayala>
 <87muzvv7ku.fsf@HIDDEN> <20180226234144.032af030@alma-ubu>
 <87woyxt3nz.fsf@HIDDEN>
X-Mailer: Claws Mail 3.13.2 (GTK+ 2.24.30; x86_64-pc-linux-gnu)
MIME-Version: 1.0
Content-Type: multipart/signed; micalg=pgp-sha1;
 boundary="Sig_/P.P8_uq_zGbgUSKa5vbrVf+"; protocol="application/pgp-signature"
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 28004
Cc: 28004 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: 0.0 (/)

--Sig_/P.P8_uq_zGbgUSKa5vbrVf+
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

On Wed, 28 Feb 2018 18:38:56 +0100
Marius Bakke <mbakke@HIDDEN> wrote:

> Bj=C3=B6rn H=C3=B6fling <bjoern.hoefling@HIDDEN> writes:

> > One patch has a hash-mismatch:
> >
> > Starting download
> > of /gnu/store/q8hlws48cjfcmz6i40jrnxn3kp750gy4-chromium-icu.patch
> > From
> > https://anonscm.debian.org/cgit/pkg-chromium/pkg-chromium.git/plain/deb=
ian/patches/system/icu.patch?id=3Ddebian/64.0.3282.119-2...
> > icu.patch  2KiB                    1.8MiB/s 00:00
> > [####################] 100.0% output path
> > `/gnu/store/q8hlws48cjfcmz6i40jrnxn3kp750gy4-chromium-icu.patch'
> > should have sha256 hash
> > `0kf77d8lyma3w0xpgfv2k0c741zp6ii08gzllfja6d5s59c15ylv', instead has
> > `19r0bpv2hapzq5m0m7rlz1dwn3h2ijgkilb2hmhw56qvwpbw0b59' @

[..]

>=20
> Whoops, indeed.  I had an older patch in my store and apparently
> forgot to update the hash.
>=20
> The correct hash for %chromium-system-icu.patch is:
>=20
> 19r0bpv2hapzq5m0m7rlz1dwn3h2ijgkilb2hmhw56qvwpbw0b59
>=20
> Thanks for letting me know!  I'll send an updated patch later, with
> some other minor improvements.

With that confirmation, I could build the source derivation.

Thanks.

Bj=C3=B6rn

--Sig_/P.P8_uq_zGbgUSKa5vbrVf+
Content-Type: application/pgp-signature
Content-Description: OpenPGP digital signature

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2

iEYEARECAAYFAlqW8FYACgkQvyhstlk+X/2k1QCeJxC3BaMrYTTL6xTdWSBk6ZcG
n8wAnjJTDY0qLaGgcFAYUabAJcXQtxmw
=EDDB
-----END PGP SIGNATURE-----

--Sig_/P.P8_uq_zGbgUSKa5vbrVf+--




Information forwarded to guix-patches@HIDDEN:
bug#28004; Package guix-patches. Full text available.

Message received at 28004 <at> debbugs.gnu.org:


Received: (at 28004) by debbugs.gnu.org; 28 Feb 2018 17:39:06 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed Feb 28 12:39:06 2018
Received: from localhost ([127.0.0.1]:37770 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1er5h0-0003zR-Ic
	for submit <at> debbugs.gnu.org; Wed, 28 Feb 2018 12:39:05 -0500
Received: from out5-smtp.messagingengine.com ([66.111.4.29]:38777)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <mbakke@HIDDEN>) id 1er5gx-0003z1-Aw
 for 28004 <at> debbugs.gnu.org; Wed, 28 Feb 2018 12:38:59 -0500
Received: from compute5.internal (compute5.nyi.internal [10.202.2.45])
 by mailout.nyi.internal (Postfix) with ESMTP id D010F20930;
 Wed, 28 Feb 2018 12:38:58 -0500 (EST)
Received: from frontend1 ([10.202.2.160])
 by compute5.internal (MEProxy); Wed, 28 Feb 2018 12:38:58 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=fastmail.com; h=
 cc:content-type:date:from:in-reply-to:message-id:mime-version
 :references:subject:to:x-me-sender:x-me-sender:x-sasl-enc; s=
 fm2; bh=4WbAplZq0d5PI7DFxm3KQaEQH3FD3+deUNC1VZz0IlA=; b=afspLKOk
 brYSFkQj6FnLERXgUU1Ycx1/EDij9Voc+QU+IGYcRnSh03UDcttirpD7IKmYKy7x
 xKIPgW0TJzLbib89Hij7lTUFj8RN5tup2a4oJV/psNRaGbQpCP7qAIc9mEkt+AlQ
 c0O661y4K4eJPkwRxtSdUthClImVfcxM61oTMZOjxQJQDMSdwJoOl2rW65kAcNnJ
 yPdHfYG7nWwWlTvL7bh5eSEVnf13nUknS7sSATK9Y4dLFULEhGl8eJtRgFU6BWd1
 umOV6kgE1Vj+Z837omwmrpbP6FFzxjVnPNYikfCj6jyIpgNGRKyvzVKbl4xbbKmp
 9H2uTOloPvz6iw==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
 messagingengine.com; h=cc:content-type:date:from:in-reply-to
 :message-id:mime-version:references:subject:to:x-me-sender
 :x-me-sender:x-sasl-enc; s=fm2; bh=4WbAplZq0d5PI7DFxm3KQaEQH3FD3
 +deUNC1VZz0IlA=; b=bmD3L9Gh6zeNbjBR7EXEWvuJH+TCXsUmaG6DPjaPM+0FP
 PoMtI3KH5+Cz1xXM0RiEWf6tS0AErneA5g32+JCCpNUP0AyNF+1X+j5cY0bDYLtU
 ZNq5eAaq7ni7j1ku5Gf6/HKY0z5JmNe1Lg+zBwuXeAeYtuOedyedY4n0OQY368vA
 LcdZ6PaxVOWIbquSlTkAxilg95aadRHpoIvxl3JTi1jSAUPtUF2S0V2oz0PXyoDp
 u4p6I83bGrYCL8daCIkelYJLU8SS6WrT5g0DgBv/00bRHk4GIzEHZ4jnM2uhkYwN
 d3qZLl87vIw636F3G9mw6Osc9+TG7Q1vdv7o6yA0Q==
X-ME-Sender: <xms:MumWWin4LKbvOMSjDhASzxdzLaD8sQhMJe6rjxp48iffdfKiFlknSA>
Received: from localhost (cm-84.214.173.174.getinternet.no [84.214.173.174])
 by mail.messagingengine.com (Postfix) with ESMTPA id 45BC47E4EC;
 Wed, 28 Feb 2018 12:38:58 -0500 (EST)
From: Marius Bakke <mbakke@HIDDEN>
To: =?utf-8?Q?Bj=C3=B6rn_H=C3=B6fling?= <bjoern.hoefling@HIDDEN>
Subject: Re: [bug#28004] Chromium
In-Reply-To: <20180226234144.032af030@alma-ubu>
References: <87shensfq6.fsf@HIDDEN> <87o9p45bb6.fsf@HIDDEN>
 <20180104191648.custe7w3l57fvbac@abyayala> <87wp0s2ewl.fsf@HIDDEN>
 <20180108232042.nqjurjr2bcfl2yyc@abyayala> <87373cey5b.fsf@HIDDEN>
 <87vag16g5z.fsf@HIDDEN> <87fu75aar5.fsf@HIDDEN>
 <874lnkr0vf.fsf@HIDDEN> <87vaejvclc.fsf@HIDDEN>
 <20180226200133.zsnahblbgzovrtmu@abyayala> <87muzvv7ku.fsf@HIDDEN>
 <20180226234144.032af030@alma-ubu>
User-Agent: Notmuch/0.26 (https://notmuchmail.org) Emacs/25.3.1
 (x86_64-pc-linux-gnu)
Date: Wed, 28 Feb 2018 18:38:56 +0100
Message-ID: <87woyxt3nz.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: multipart/signed; boundary="=-=-=";
 micalg=pgp-sha512; protocol="application/pgp-signature"
X-Spam-Score: 0.4 (/)
X-Debbugs-Envelope-To: 28004
Cc: 28004 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: 0.4 (/)

--=-=-=
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable

Bj=C3=B6rn H=C3=B6fling <bjoern.hoefling@HIDDEN> writes:

> Hi Marius,
>
> On Mon, 26 Feb 2018 21:06:57 +0100
> Marius Bakke <mbakke@HIDDEN> wrote:
>
>> ng0 <ng0@HIDDEN> writes:
>>=20
>> > Marius Bakke transcribed 2.1K bytes:=20=20
>> >> Mike Gerwitz <mtg@HIDDEN> writes:
>> >>=20=20=20
>> >> > On Tue, Jan 16, 2018 at 20:01:34 +0100, Marius Bakke wrote:=20=20
>> >> >> If there are no objections, expect to see this in 'master' in
>> >> >> 1-2 weeks.=20=20
>> >> >
>> >> > I want to express gratitude for your hard work on this---given
>> >> > that IceCat does not contain many of the FF devtool updates,
>> >> > Chromium is very desirable for web development.  It's also
>> >> > needed for certain Node.js tools, like node-inspector.
>> >> >
>> >> > So, thank you!=20=20
>> >>=20
>> >> Thank *you* for the kind words! :-)
>> >>=20
>> >> Here is the latest iteration of this patch.  New in this version:
>> >>=20
>> >> * Chromium 64 (duh).
>> >> * The 'delete-bundled-software' phase has been moved to a snippet,
>> >>   shaving ~100MiB (~22%) off the compressed tarball size (and
>> >>   drastically reduces (de)compression time).
>> >> * The New Tab page does not show any thumbnails for new profiles.=20=
=20
>> >
>> > I think you forgot to attach the patches :)=20=20
>>=20
>> Derp.  I realized that and just used `git send-email`[0], but have
>> attached it here for convenience since the debbugs web UI doesn't
>> allow easy download of a raw message.
>>=20
>> [0] https://debbugs.gnu.org/cgi/bugreport.cgi?msg=3D131;bug=3D28004#131
>>=20
>
>
> This looks like a lot of work. Thank you!
>
> I quickly tried to apply and build the patch and have two first remarks:
>
> The file says:
>
> ;;; Copyright =C2=A9 2016, 2017, 2018 Marius Bakke <mbakke@HIDDEN>
>
> I haven't followed history, have you worked on this since 2016?

Yeah, I started this shortly after going full-GuixSD in October 2016.
But I didn't submit it until now because I didn't think it met Guix's
standards (and still think it's questionable due to privacy concerns).

> One patch has a hash-mismatch:
>
> Starting download of /gnu/store/q8hlws48cjfcmz6i40jrnxn3kp750gy4-chromium=
-icu.patch
> From https://anonscm.debian.org/cgit/pkg-chromium/pkg-chromium.git/plain/=
debian/patches/system/icu.patch?id=3Ddebian/64.0.3282.119-2...
>  icu.patch  2KiB                    1.8MiB/s 00:00 [####################]=
 100.0%
> output path `/gnu/store/q8hlws48cjfcmz6i40jrnxn3kp750gy4-chromium-icu.pat=
ch' should have sha256 hash `0kf77d8lyma3w0xpgfv2k0c741zp6ii08gzllfja6d5s59=
c15ylv', instead has `19r0bpv2hapzq5m0m7rlz1dwn3h2ijgkilb2hmhw56qvwpbw0b59'
> @ build-failed /gnu/store/cqdllqn8ig5wnjn0yqvnh4vlzsvnpzv6-chromium-icu.p=
atch.drv - 1 output path `/gnu/store/q8hlws48cjfcmz6i40jrnxn3kp750gy4-chrom=
ium-icu.patch' should have sha256 hash `0kf77d8lyma3w0xpgfv2k0c741zp6ii08gz=
llfja6d5s59c15ylv', instead has `19r0bpv2hapzq5m0m7rlz1dwn3h2ijgkilb2hmhw56=
qvwpbw0b59'
> cannot build derivation `/gnu/store/vacxbwsprcp52vp6q975450zi091dak2-chro=
mium-64.0.3282.186.tar.xz.drv': 1 dependencies couldn't be built
> @ build-started /gnu/store/7q53inn1v32b5fain0h0wcrliclf0ff1-libvpx+experi=
mental-1.7.0.drv - x86_64-linux /var/log/guix/drvs/7q//53inn1v32b5fain0h0wc=
rliclf0ff1-libvpx+experimental-1.7.0.drv.bz2
> cannot build derivation `/gnu/store/5qv7anaaqk4576pma9mhcsz1nhrx1n01-chro=
mium-64.0.3282.186.drv': 1 dependencies couldn't be built
> guix build: error: build failed: build of `/gnu/store/5qv7anaaqk4576pma9m=
hcsz1nhrx1n01-chromium-64.0.3282.186.drv' failed
>
> I looked into the file and it looks reasonable, like a patch-file. It has=
 no download errors.
>
> It starts like this:
>
> description: backwards compatibility for older versions of icu
> author: Michael Gilbert <mgilbert@HIDDEN>
>
> --- a/v8/src/runtime/runtime-intl.cc
> +++ b/v8/src/runtime/runtime-intl.cc
> @@ -627,7 +627,11 @@ RUNTIME_FUNCTION(Runtime_PluralRulesSele
>
> ...
>
> Can you check this file again?

Whoops, indeed.  I had an older patch in my store and apparently forgot
to update the hash.

The correct hash for %chromium-system-icu.patch is:

19r0bpv2hapzq5m0m7rlz1dwn3h2ijgkilb2hmhw56qvwpbw0b59

Thanks for letting me know!  I'll send an updated patch later, with some
other minor improvements.

--=-=-=
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQEzBAEBCgAdFiEEu7At3yzq9qgNHeZDoqBt8qM6VPoFAlqW6TAACgkQoqBt8qM6
VPrVOQgAmxdpWrvUsJjBCD8ISMJ3fs5nDZt3/jDfiwj2glLjCjGvqjqytxhOYkXM
CeeuO1Um8gb270ePmBAnY02dRL2Qx8oF6ORcw4xS7rh5MyJJzfbYk4pjx8MvvrI4
L4mV6piCMYj85BsYkud+9ni7P+HKoTaExve5DEImmz5ZiU5QkleJKoRspugIydQn
ExEekgSvG7kOsNY1NyQw3CE2CYToFrKyLsaWWYvkGzh7hkie/9x9Z/kMfK6HSqoq
5twX9XKHn2g9I+V1IXTIRua16TVy8qsbNtxEqcNXpFu9emrEbC7l5OFyKAXV0+yV
GEDEs14P/WnvwhFFADdNfTxI1JevNg==
=UrxJ
-----END PGP SIGNATURE-----
--=-=-=--




Information forwarded to guix-patches@HIDDEN:
bug#28004; Package guix-patches. Full text available.

Message received at 28004 <at> debbugs.gnu.org:


Received: (at 28004) by debbugs.gnu.org; 28 Feb 2018 17:28:52 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed Feb 28 12:28:52 2018
Received: from localhost ([127.0.0.1]:37751 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1er5X9-0003jY-5p
	for submit <at> debbugs.gnu.org; Wed, 28 Feb 2018 12:28:52 -0500
Received: from out5-smtp.messagingengine.com ([66.111.4.29]:57207)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <mbakke@HIDDEN>) id 1er5X7-0003jP-2H
 for 28004 <at> debbugs.gnu.org; Wed, 28 Feb 2018 12:28:49 -0500
Received: from compute5.internal (compute5.nyi.internal [10.202.2.45])
 by mailout.nyi.internal (Postfix) with ESMTP id 9BAD220BC3;
 Wed, 28 Feb 2018 12:28:48 -0500 (EST)
Received: from frontend1 ([10.202.2.160])
 by compute5.internal (MEProxy); Wed, 28 Feb 2018 12:28:48 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=fastmail.com; h=
 cc:content-type:date:from:in-reply-to:message-id:mime-version
 :references:subject:to:x-me-sender:x-me-sender:x-sasl-enc; s=
 fm2; bh=BoxzH5CDDRvENzcYmyUiBOfzQNSPX4keDnFeLHqQx3E=; b=unssKG+1
 Li1bV3WmY5ut8YiHzUT0M7xWf7hHEoktNWjssUfaKNhdRHdzqXOy+VU9cIyeuXga
 eGOyxAKqaEqgMTDyxZRf/rQCsllMINJ+Mqn1TuDBPtZp3a8jMLnkESVzI1a3/hIG
 rUPHu2fOzD2eMeXngabiAKYMpvZU/kL3Ey0XVezumHuUaUL8GabjiLStuWpbRAqa
 LgRbjquqglYTz5wmmcz37hFmkzxjaHRd0ffOtpXhGJHQRwuOeZt3Jksv3oE3rgxb
 BWA+t4GnNesfqoDdWrtjT22gpsEBrE6dWb0Lbpw+QQba+Zx+wX3r7phuSlra0Yqj
 ESHAMMEB0kXl3A==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
 messagingengine.com; h=cc:content-type:date:from:in-reply-to
 :message-id:mime-version:references:subject:to:x-me-sender
 :x-me-sender:x-sasl-enc; s=fm2; bh=BoxzH5CDDRvENzcYmyUiBOfzQNSPX
 4keDnFeLHqQx3E=; b=KNbqfkiTPPgmw+pxrfpH7NZoIBc7UkrX/4mCt2varAzVe
 VS6b9wJBS/KVjbdfIsOkzJwri2BMmfK5nyZD6pjTp0lI0netlcOOhqW/u5NPqxTb
 eImT5zNGtUn2380LMJTl9Rski+tcq2kOM/Dt2YLNn3bsSpaLNRMBHaE+uYXdlXVN
 LUdOD+YwbPr7ojEJmHWcmfcgdbqxgpYbd3obrgZ+vRu+8LsGWeAwZVYZ58Oju5YM
 JSVXIiX/MmYP9e5pkEChcs5XuXyuvJIghd1ORTEBY7FozLwLxlUrYH5//0IZiWt3
 d3pKrksnI4RKZPgar0t8LyOWaoPDsW2JwRTKo/00A==
X-ME-Sender: <xms:0OaWWgKkP2a3bcIZHoxYDFoMUpFhoQzmopL83WV5_7prHxvyH2TeZA>
Received: from localhost (cm-84.214.173.174.getinternet.no [84.214.173.174])
 by mail.messagingengine.com (Postfix) with ESMTPA id 10AC47E26F;
 Wed, 28 Feb 2018 12:28:47 -0500 (EST)
From: Marius Bakke <mbakke@HIDDEN>
To: Mike Gerwitz <mtg@HIDDEN>
Subject: Re: [bug#28004] Chromium
In-Reply-To: <87k1uznqcu.fsf@HIDDEN>
References: <87y3qvb15k.fsf@HIDDEN>
 <20171010131949.y43plpzxbppvrigr@abyayala> <87lgkha2cx.fsf@HIDDEN>
 <20171012195628.GA31843@HIDDEN> <87shensfq6.fsf@HIDDEN>
 <87o9p45bb6.fsf@HIDDEN> <20180104191648.custe7w3l57fvbac@abyayala>
 <87wp0s2ewl.fsf@HIDDEN> <20180108232042.nqjurjr2bcfl2yyc@abyayala>
 <87373cey5b.fsf@HIDDEN> <87vag16g5z.fsf@HIDDEN>
 <87fu75aar5.fsf@HIDDEN> <874lnkr0vf.fsf@HIDDEN>
 <87vaejvclc.fsf@HIDDEN> <87k1uznqcu.fsf@HIDDEN>
User-Agent: Notmuch/0.26 (https://notmuchmail.org) Emacs/25.3.1
 (x86_64-pc-linux-gnu)
Date: Wed, 28 Feb 2018 18:28:46 +0100
Message-ID: <87zi3tt44x.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: multipart/signed; boundary="=-=-=";
 micalg=pgp-sha512; protocol="application/pgp-signature"
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 28004
Cc: 28004 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -0.7 (/)

--=-=-=
Content-Type: text/plain

Mike Gerwitz <mtg@HIDDEN> writes:

> On Mon, Feb 26, 2018 at 19:18:39 +0100, Marius Bakke wrote:
>> Now, when launching the browser for the first time, it *still* connects
>> to Google services.  After a while it also does a lookup for AdWords...
>
> Do you know what code initiates this?  Would it be easy to remove, and
> would that harm other functionality?

Unfortunately, I don't know what triggers it.  Feel free to try picking
some of the other Inox patches and see if it makes a difference:

https://github.com/gcarq/inox-patchset

Inox goes great lengths to "ungooglify" the browser.  I've decided
against picking *all* their patches, for two reasons:

1) I'd like users to be able to use Chromium with their Google account
if they wish to (although I haven't actually tested this), and more
importantly:

2) More patches means more porting work every new release.  Usually
major versions bumps come with a plethora of security fixes, so I wish
to minimize maintenance overhead.  Just figuring out the changed
dependencies, build flags, and GCC bugs with every release is a lot of
work already.

> Saying that it only runs the first time implies to me that there's a
> flag, and that perhaps the flag can either be permanently set or the
> conditional triggering this behavior removed.

Indeed.  Any help figuring out the offender is very welcome!  No external
connectivity in the default configuration is a goal we should strive for.

--=-=-=
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQEzBAEBCgAdFiEEu7At3yzq9qgNHeZDoqBt8qM6VPoFAlqW5s4ACgkQoqBt8qM6
VPottwf5AXGEfvNf79MnW8g1W7l9o436utStYCIs+CJD8ZyDG5PIZQSA+BwxZ0nA
9cfS/JUwdbDjt/pk6ByU9qauCvEwC/zurhWGaUr/yJyMBHikjyn0/Cmu4hfuRGHG
hUPg1XnucEgDSsaCWRH2YStgDLfR2HHaVNKNHqgIVqcgvDJiY09lH5kNQIVDPeyH
TwHowGxIYm18a0gvBnxKqWQm2izQV4xGMpqv/Ub38AieSIsbv3yyHbWf0kCBfKTK
bohEWn2pApWJ0a+VUinXKyh5PILaHNq0DQMGGpcZH5givh94+Y2imNeEIKtDOjqp
7DD2qTLohAxjSmMoqsg23ojCfnkbug==
=gTUK
-----END PGP SIGNATURE-----
--=-=-=--




Information forwarded to guix-patches@HIDDEN:
bug#28004; Package guix-patches. Full text available.

Message received at 28004 <at> debbugs.gnu.org:


Received: (at 28004) by debbugs.gnu.org; 28 Feb 2018 17:14:12 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed Feb 28 12:14:12 2018
Received: from localhost ([127.0.0.1]:37741 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1er5Iy-0003PD-Aw
	for submit <at> debbugs.gnu.org; Wed, 28 Feb 2018 12:14:12 -0500
Received: from out5-smtp.messagingengine.com ([66.111.4.29]:50719)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <mbakke@HIDDEN>) id 1er5Iw-0003P5-Sg
 for 28004 <at> debbugs.gnu.org; Wed, 28 Feb 2018 12:14:11 -0500
Received: from compute5.internal (compute5.nyi.internal [10.202.2.45])
 by mailout.nyi.internal (Postfix) with ESMTP id 6126420930;
 Wed, 28 Feb 2018 12:14:10 -0500 (EST)
Received: from frontend1 ([10.202.2.160])
 by compute5.internal (MEProxy); Wed, 28 Feb 2018 12:14:10 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=fastmail.com; h=
 cc:content-type:date:from:in-reply-to:message-id:mime-version
 :references:subject:to:x-me-sender:x-me-sender:x-sasl-enc; s=
 fm2; bh=wCEPOD+VpdvzI3GObZcWUilan9mnYqUNoN4uV8q7MLQ=; b=HuAmhHKG
 E/FSeCzIu66PNY3RI5ujE77NTCoADcOh8GfwN7K3DA3USUJ1AB2c4yIwjrf4LKAw
 E/S2CBBZhNg8qUq6BRS33pk6HXUsb0qH/JrXMNl8KPMEEcuAqj47UjijjvphRx+S
 +VnPDZWKYixqc3lqwjaoXzj85C+t0SVK9+iA30nA/jCUHa5c4v/+6M+ywvggSduZ
 kH6W3kB6V9yWyuAlzcjNNjeqYpDxsjKSS7DrIdaXwmvnUfkNTDkOr9QWhhM0gwOJ
 1z3RvwWU2obLwAIkQSZpUArX+kWIw2CJoew1AoXp1qyFfnasPP9Pn8sTPjDo+hhH
 pMEfXhY0izt9WQ==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
 messagingengine.com; h=cc:content-type:date:from:in-reply-to
 :message-id:mime-version:references:subject:to:x-me-sender
 :x-me-sender:x-sasl-enc; s=fm2; bh=wCEPOD+VpdvzI3GObZcWUilan9mnY
 qUNoN4uV8q7MLQ=; b=X8rhqRZBYNU0doga8HbzG4YcJ+w+swnC/UkKGewkKVBv3
 2UI4lmJJ9Pv7pVBMwb7nXR3IGKLgG1n4q2PL/xCMBihXeBP6WpHDRIvrPJksJjy3
 F7hZnk9rrJM1yy1niTZihv7loNNi710Qxj58oUTNSJOVYgp4o8+wuUEc9Eac6yQe
 nY9yCQ9UI7innOvrCSpFJfttgsZWuc2TTt5uX2AASckeWkriZ2wXT/Ul8oBWOdjv
 SujBexyAuMtXrJnhqO/XNFI2RmKa+oY/q3Gs80wwG6Purffeg255RQcQbdfnwSRj
 Xh1AZ56Pt3kojMhg5aSwcSTKciI0DOZMEe9h9NTCw==
X-ME-Sender: <xms:YuOWWvE3FUbHSSQ9mzk9WPQE6GoCu2BiGr8v_4Fe14Fb7AfeI2DguA>
Received: from localhost (cm-84.214.173.174.getinternet.no [84.214.173.174])
 by mail.messagingengine.com (Postfix) with ESMTPA id D7FFF7E0ED;
 Wed, 28 Feb 2018 12:14:09 -0500 (EST)
From: Marius Bakke <mbakke@HIDDEN>
To: ng0 <ng0@HIDDEN>
Subject: Re: [bug#28004] Chromium
In-Reply-To: <20180227221711.omdpbgemrjwinohb@abyayala>
References: <20180104191648.custe7w3l57fvbac@abyayala>
 <87wp0s2ewl.fsf@HIDDEN> <20180108232042.nqjurjr2bcfl2yyc@abyayala>
 <87373cey5b.fsf@HIDDEN> <87vag16g5z.fsf@HIDDEN>
 <87fu75aar5.fsf@HIDDEN> <874lnkr0vf.fsf@HIDDEN>
 <87vaejvclc.fsf@HIDDEN> <20180226200133.zsnahblbgzovrtmu@abyayala>
 <87muzvv7ku.fsf@HIDDEN> <20180227221711.omdpbgemrjwinohb@abyayala>
User-Agent: Notmuch/0.26 (https://notmuchmail.org) Emacs/25.3.1
 (x86_64-pc-linux-gnu)
Date: Wed, 28 Feb 2018 18:14:08 +0100
Message-ID: <87371lujdr.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: multipart/signed; boundary="=-=-=";
 micalg=pgp-sha512; protocol="application/pgp-signature"
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 28004
Cc: 28004 <at> debbugs.gnu.org, ng0 <ng0@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -0.7 (/)

--=-=-=
Content-Type: text/plain
Content-Transfer-Encoding: quoted-printable

ng0 <ng0@HIDDEN> writes:

> Marius Bakke transcribed 43K bytes:
>> ng0 <ng0@HIDDEN> writes:
>>=20
>> > Marius Bakke transcribed 2.1K bytes:
>> >> Mike Gerwitz <mtg@HIDDEN> writes:
>> >>=20
>> >> > On Tue, Jan 16, 2018 at 20:01:34 +0100, Marius Bakke wrote:
>> >> >> If there are no objections, expect to see this in 'master' in 1-2 =
weeks.
>> >> >
>> >> > I want to express gratitude for your hard work on this---given that
>> >> > IceCat does not contain many of the FF devtool updates, Chromium is=
 very
>> >> > desirable for web development.  It's also needed for certain Node.js
>> >> > tools, like node-inspector.
>> >> >
>> >> > So, thank you!
>> >>=20
>> >> Thank *you* for the kind words! :-)
>> >>=20
>> >> Here is the latest iteration of this patch.  New in this version:
>> >>=20
>> >> * Chromium 64 (duh).
>> >> * The 'delete-bundled-software' phase has been moved to a snippet,
>> >>   shaving ~100MiB (~22%) off the compressed tarball size (and
>> >>   drastically reduces (de)compression time).
>> >> * The New Tab page does not show any thumbnails for new profiles.
>> >
>> > I think you forgot to attach the patches :)
>>=20
>> Derp.  I realized that and just used `git send-email`[0], but have
>> attached it here for convenience since the debbugs web UI doesn't allow
>> easy download of a raw message.
>>=20
>> [0] https://debbugs.gnu.org/cgi/bugreport.cgi?msg=3D131;bug=3D28004#131
>>
>
> Comments inlined, some words ahead.
>
> I think it's good that we will be able to handle extensions via Guix.
> But: We should point it out that you won't be able to install extensions
> manually, via the store or as a file. People who betatested this got
> confused.

I haven't tested installing from a file.  Which error are you getting?

You can use extensions from the store by setting the variable
"CHROMIUM_ENABLE_WEB_STORE", as in Debian.  But I don't see a need to
document it since it's unsupported territory from a Guix viewpoint.

>> +             (substitute* "chrome/common/chrome_paths.cc"
>> +               (("/usr/share/chromium/extensions")
>> +                ;; TODO: Add ~/.guix-profile.
>> +                "/run/current-system/profile/share/chromium/extensions"=
))
>
>                    I don't know if I asked you about this in the past, bu=
t can you explain why you
>                    picked the run dir? I have to re-read the Gentoo eclas=
s and Nix integration for this.

The plan is to package extensions with Guix and place them in
"out/share/chromium/extensions".  Then you would be able to install
extensions through the system profile, until a better solution is in
place (like a search path).

>> +                 (mkdir-p bin)
>> +                 ;; Add a thin wrapper to prevent the user from inadver=
tently
>> +                 ;; installing non-free software through the Web Store.
>> +                 ;; TODO: Discover extensions from the profile and pass
>> +                 ;; something like "--disable-extensions-except=3D...".
>
>                     To be able to work on this, can you (at least in this=
 bug ticket,
>                     explain the TODO part a bit more?

This was inspired by Debians wrapper script, which discovers extensions
installed by Apt and composes this command line.  It allows disabling
the web store while still using extensions.  I'll see if I can improve
the comment.

Thanks for the feedback!

--=-=-=
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQEzBAEBCgAdFiEEu7At3yzq9qgNHeZDoqBt8qM6VPoFAlqW42AACgkQoqBt8qM6
VPpRnggAmE+MC7xBreY8GO/9yNrpRVG0PmbEFR8PD35yuxffA2p+yI4y3oCPB5Zb
1Qd96cW5GgViyYnHHlIy1Ljct98hqo7mFP8+Sedoyzp546Ol2dPYAXVf0fw+YX65
AZu9Mf2OYanye+lQAmgHookcjHyleym1mCxFIEYdiJqVqeiL1mCKS2C59AwPt97s
k+jbiRJLZUeLbk9PN9fP8Wbi86WuO0poTpi6veamvFt3Irbn8jrmC2j+D0xS8J4C
JzvkfDgCpT0lcYifO3vcUP23CqmVs74iMMEtz3k0V9ZU/mljeoCoZOQizZSvaHC9
nSwOHjh82/b0cjSLnrr0b7dDCWbZRQ==
=/dbz
-----END PGP SIGNATURE-----
--=-=-=--




Information forwarded to guix-patches@HIDDEN:
bug#28004; Package guix-patches. Full text available.

Message received at 28004 <at> debbugs.gnu.org:


Received: (at 28004) by debbugs.gnu.org; 28 Feb 2018 08:17:11 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed Feb 28 03:17:11 2018
Received: from localhost ([127.0.0.1]:36397 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1eqwvC-0005EU-KU
	for submit <at> debbugs.gnu.org; Wed, 28 Feb 2018 03:17:11 -0500
Received: from aibo.runbox.com ([91.220.196.211]:50248)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <ng0@HIDDEN>) id 1eqwv7-0005Dw-VX
 for 28004 <at> debbugs.gnu.org; Wed, 28 Feb 2018 03:17:05 -0500
Received: from [10.9.9.210] (helo=mailfront10.runbox.com)
 by mailtransmit02.runbox with esmtp (Exim 4.86_2)
 (envelope-from <ng0@HIDDEN>)
 id 1eqwv3-0000wr-Ph; Wed, 28 Feb 2018 09:16:57 +0100
Received: from dslb-094-220-189-159.094.220.pools.vodafone-ip.de
 ([94.220.189.159] helo=localhost)
 by mailfront10.runbox.com with esmtpsa (uid:892961 )
 (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82)
 id 1eqwv3-0001nt-G3; Wed, 28 Feb 2018 09:16:57 +0100
Date: Wed, 28 Feb 2018 08:17:07 +0000
From: ng0 <ng0@HIDDEN>
To: Mike Gerwitz <mtg@HIDDEN>
Subject: Re: [bug#28004] Chromium
Message-ID: <20180228081707.nnjoolzbgwwtcgq5@abyayala>
References: <87o9p45bb6.fsf@HIDDEN>
 <20180104191648.custe7w3l57fvbac@abyayala>
 <87wp0s2ewl.fsf@HIDDEN>
 <20180108232042.nqjurjr2bcfl2yyc@abyayala>
 <87373cey5b.fsf@HIDDEN> <87vag16g5z.fsf@HIDDEN>
 <87fu75aar5.fsf@HIDDEN> <874lnkr0vf.fsf@HIDDEN>
 <87vaejvclc.fsf@HIDDEN> <87k1uznqcu.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: multipart/signed; micalg=pgp-sha512;
 protocol="application/pgp-signature"; boundary="mldnkusqxpt62dfu"
Content-Disposition: inline
In-Reply-To: <87k1uznqcu.fsf@HIDDEN>
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 28004
Cc: 28004 <at> debbugs.gnu.org, Marius Bakke <mbakke@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -0.7 (/)


--mldnkusqxpt62dfu
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

Mike Gerwitz transcribed 1.6K bytes:
> On Mon, Feb 26, 2018 at 19:18:39 +0100, Marius Bakke wrote:
> > Now, when launching the browser for the first time, it *still* connects
> > to Google services.  After a while it also does a lookup for AdWords...
>=20
> Do you know what code initiates this?  Would it be easy to remove, and
> would that harm other functionality?
>=20
> Saying that it only runs the first time implies to me that there's a
> flag, and that perhaps the flag can either be permanently set or the
> conditional triggering this behavior removed.
>=20
> --=20
> Mike Gerwitz
> Free Software Hacker+Activist | GNU Maintainer & Volunteer
> GPG: D6E9 B930 028A 6C38 F43B  2388 FEF6 3574 5E6F 6D05
> https://mikegerwitz.com

Could this be a connectivity check?

switch "--connectivity-check-url" exists:
https://peter.sh/experiments/chromium-command-line-switches/
and there might be a flag here: chrome://flags/

We can also creatre our own settings file as suggested in
this thread:
https://www.jamf.com/jamf-nation/discussions/10331/chrome-master-preference=
s-file-and-suppressing-first-run-browser

Someone else suggested this file:
http://www.google.com/codesearch/p?hl=3Dru#HLxzG3ShG8A/trunk/win/lib/lib_va=
lues.cc&q=3D/tools/pso&sa=3DN&cd=3D1&ct=3Drc
404 now.

Adwords query might really be rlz, but I'm just guessing for now. Post from=
 2010:
https://blog.chromium.org/2010/06/in-open-for-rlz.html

> When we released a new stable version of Google Chrome last March, we tri=
ed to improve the transparency and privacy options of Google Chrome. One ar=
ea where ve seen a lot of interest and questions is the RLZ library that is=
 built into Google Chrome. RLZ gives us the ability to accurately measure t=
he success of marketing promotions and distribution partnerships in order t=
o meet our contractual and financial obligations. It assigns non-unique, no=
n-personally identifiable promotion tracking labels to client products; the=
se labels sometimes appear in Google search queries in Google Chrome.we

This is the source code view:
https://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/rlz/rlz.cc?=
view=3Dmarkup
https://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/rlz/rlz.h?v=
iew=3Dmarkup


Different topic. This will help us to integrate packaged extensions once we=
 get there:
https://data.gpo.zugaina.org/gentoo/www-client/chromium/files/chromium-laun=
cher-r3.sh
and probably some more files.
--=20
A88C8ADD129828D7EAC02E52E22F9BBFEE348588
https://n0.is
--mldnkusqxpt62dfu
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQIzBAABCgAdFiEEqIyK3RKYKNfqwC5S4i+bv+40hYgFAlqWZYMACgkQ4i+bv+40
hYibBw/+NENBr9JWkdEKBrYDtr/QsggO0NHGsFJdbrVpG7lk6qjfzt8XZUIT54ZU
7j6Zitm+97BBovlK2BVaJkGXpOk5chPjBECpf78FZ5P+vJygbF9e5yMihBvEmW+S
ffNEwR1cT1W1mV3+HHL9u87hTnNzkvMhjsAzwYb6EwozUkfa6Iuay3BNELsEc/8I
btjC2CLGbeXeU74Vj9ZChkBjle6WVw+f7YZexUu+Q3fAi5q6BLMpsXs8tzA+qiC6
f3jG2ReegejOseMR7h5lEuA3jDi9rfncJD7cqgze3JLCaKQe41TLYfAoLDaQWqsD
s5/KtarS1lN92zjRQdH7qkBwTjx2DdEakwzQunYZGDgblO/AMtt/o5DBKmhTFpZk
oHjgMLHDjrVfzIaz9oF9GGHxZTolziUI+nVbVVfZMOlhTjgAR1CPBVzcw2QjUsMg
O7RxWc1B4jRNLdzZz5SvgKOvYkOoxUjlTydt0xvrZ5lhRevt8/a2FsHSAT6ah6PW
dn6PraygOhzyCtdxhh9OUCcHMyLTIhRO/qMMLOfIo3aXzr6J7noZtqAmtWT2i796
6ioVLmwVaCP+a4cXn9WJcCv0PZC4tQUJiX8JY9wlRvS9EQCNVi0ZlUZMkRiCI88c
pwI3y9THfYyyl4XPlhs2fsBHsczcfvoDx6ve7Mi9MXb+UgNLIn4=
=aUgs
-----END PGP SIGNATURE-----

--mldnkusqxpt62dfu--




Information forwarded to guix-patches@HIDDEN:
bug#28004; Package guix-patches. Full text available.

Message received at 28004 <at> debbugs.gnu.org:


Received: (at 28004) by debbugs.gnu.org; 27 Feb 2018 22:18:12 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Feb 27 17:18:12 2018
Received: from localhost ([127.0.0.1]:36110 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1eqnZV-00046f-Aw
	for submit <at> debbugs.gnu.org; Tue, 27 Feb 2018 17:18:12 -0500
Received: from aibo.runbox.com ([91.220.196.211]:51632)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <ng0@HIDDEN>) id 1eqnZM-000462-Ov
 for 28004 <at> debbugs.gnu.org; Tue, 27 Feb 2018 17:18:02 -0500
Received: from [10.9.9.210] (helo=mailfront10.runbox.com)
 by mailtransmit02.runbox with esmtp (Exim 4.86_2)
 (envelope-from <ng0@HIDDEN>)
 id 1eqnZL-0001qf-Bi; Tue, 27 Feb 2018 23:17:55 +0100
Received: from dslb-092-073-159-161.092.073.pools.vodafone-ip.de
 ([92.73.159.161] helo=localhost)
 by mailfront10.runbox.com with esmtpsa (uid:892961 )
 (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82)
 id 1eqnYS-0005BM-O4; Tue, 27 Feb 2018 23:17:01 +0100
Date: Tue, 27 Feb 2018 22:17:11 +0000
From: ng0 <ng0@HIDDEN>
To: Marius Bakke <mbakke@HIDDEN>
Subject: Re: [bug#28004] Chromium
Message-ID: <20180227221711.omdpbgemrjwinohb@abyayala>
References: <20180104191648.custe7w3l57fvbac@abyayala>
 <87wp0s2ewl.fsf@HIDDEN>
 <20180108232042.nqjurjr2bcfl2yyc@abyayala>
 <87373cey5b.fsf@HIDDEN> <87vag16g5z.fsf@HIDDEN>
 <87fu75aar5.fsf@HIDDEN> <874lnkr0vf.fsf@HIDDEN>
 <87vaejvclc.fsf@HIDDEN>
 <20180226200133.zsnahblbgzovrtmu@abyayala>
 <87muzvv7ku.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: multipart/signed; micalg=pgp-sha512;
 protocol="application/pgp-signature"; boundary="wj6qt76xr6nidfo4"
Content-Disposition: inline
In-Reply-To: <87muzvv7ku.fsf@HIDDEN>
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 28004
Cc: 28004 <at> debbugs.gnu.org, ng0 <ng0@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -0.7 (/)


--wj6qt76xr6nidfo4
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

Marius Bakke transcribed 43K bytes:
> ng0 <ng0@HIDDEN> writes:
>=20
> > Marius Bakke transcribed 2.1K bytes:
> >> Mike Gerwitz <mtg@HIDDEN> writes:
> >>=20
> >> > On Tue, Jan 16, 2018 at 20:01:34 +0100, Marius Bakke wrote:
> >> >> If there are no objections, expect to see this in 'master' in 1-2 w=
eeks.
> >> >
> >> > I want to express gratitude for your hard work on this---given that
> >> > IceCat does not contain many of the FF devtool updates, Chromium is =
very
> >> > desirable for web development.  It's also needed for certain Node.js
> >> > tools, like node-inspector.
> >> >
> >> > So, thank you!
> >>=20
> >> Thank *you* for the kind words! :-)
> >>=20
> >> Here is the latest iteration of this patch.  New in this version:
> >>=20
> >> * Chromium 64 (duh).
> >> * The 'delete-bundled-software' phase has been moved to a snippet,
> >>   shaving ~100MiB (~22%) off the compressed tarball size (and
> >>   drastically reduces (de)compression time).
> >> * The New Tab page does not show any thumbnails for new profiles.
> >
> > I think you forgot to attach the patches :)
>=20
> Derp.  I realized that and just used `git send-email`[0], but have
> attached it here for convenience since the debbugs web UI doesn't allow
> easy download of a raw message.
>=20
> [0] https://debbugs.gnu.org/cgi/bugreport.cgi?msg=3D131;bug=3D28004#131
>

Comments inlined, some words ahead.

I think it's good that we will be able to handle extensions via Guix.
But: We should point it out that you won't be able to install extensions
manually, via the store or as a file. People who betatested this got
confused.
Once we have extensions as packages, we can describe how to get extensions.
Gentoo (and Nix?) have done some work on handling the extensions via system
tools.

> From f00529f4cd9e2e5efef146915d217cbb413d1f1a Mon Sep 17 00:00:00 2001
> From: Marius Bakke <mbakke@HIDDEN>
> Date: Wed, 12 Oct 2016 17:25:05 +0100
> Subject: [PATCH] gnu: Add chromium.
>=20
> * gnu/packages/chromium.scm: New file.
> * gnu/packages/patches/chromium-gcc.patch,
> gnu/packages/patches/chromium-remove-default-history.patch: New files.
> * gnu/local.mk: Record it.
> ---
>  gnu/local.mk                                       |   3 +
>  gnu/packages/chromium.scm                          | 756 +++++++++++++++=
++++++
>  gnu/packages/patches/chromium-gcc5.patch           |  39 ++
>  .../patches/chromium-remove-default-history.patch  |  13 +
>  4 files changed, 811 insertions(+)
>  create mode 100644 gnu/packages/chromium.scm
>  create mode 100644 gnu/packages/patches/chromium-gcc5.patch
>  create mode 100644 gnu/packages/patches/chromium-remove-default-history.=
patch
>=20
> diff --git a/gnu/local.mk b/gnu/local.mk
> index fa98810d6..fb1320f7b 100644
> --- a/gnu/local.mk
> +++ b/gnu/local.mk
> @@ -92,6 +92,7 @@ GNU_SYSTEM_MODULES =3D				\
>    %D%/packages/check.scm			\
>    %D%/packages/chemistry.scm			\
>    %D%/packages/chez.scm				\
> +  %D%/packages/chromium.scm			\
>    %D%/packages/ci.scm				\
>    %D%/packages/cinnamon.scm			\
>    %D%/packages/cmake.scm			\
> @@ -581,6 +582,8 @@ dist_patch_DATA =3D						\
>    %D%/packages/patches/ceph-skip-collect-sys-info-test.patch	\
>    %D%/packages/patches/ceph-skip-unittest_blockdev.patch	\
>    %D%/packages/patches/chmlib-inttypes.patch			\
> +  %D%/packages/patches/chromium-gcc5.patch			\
> +  %D%/packages/patches/chromium-remove-default-history.patch	\
>    %D%/packages/patches/clang-libc-search-path.patch		\
>    %D%/packages/patches/clang-3.8-libc-search-path.patch		\
>    %D%/packages/patches/clang-runtime-asan-build-fixes.patch	\
> diff --git a/gnu/packages/chromium.scm b/gnu/packages/chromium.scm
> new file mode 100644
> index 000000000..1dd77b089
> --- /dev/null
> +++ b/gnu/packages/chromium.scm
> @@ -0,0 +1,756 @@
> +;;; GNU Guix --- Functional package management for GNU
> +;;; Copyright =C2=A9 2016, 2017, 2018 Marius Bakke <mbakke@HIDDEN>
> +;;;
> +;;; This file is part of GNU Guix.
> +;;;
> +;;; GNU Guix is free software; you can redistribute it and/or modify it
> +;;; under the terms of the GNU General Public License as published by
> +;;; the Free Software Foundation; either version 3 of the License, or (at
> +;;; your option) any later version.
> +;;;
> +;;; GNU Guix is distributed in the hope that it will be useful, but
> +;;; WITHOUT ANY WARRANTY; without even the implied warranty of
> +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
> +;;; GNU General Public License for more details.
> +;;;
> +;;; You should have received a copy of the GNU General Public License
> +;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
> +
> +(define-module (gnu packages chromium)
> +  #:use-module ((guix licenses) #:prefix license:)
> +  #:use-module (guix packages)
> +  #:use-module (guix download)
> +  #:use-module (guix git-download)
> +  #:use-module (guix utils)
> +  #:use-module (guix build-system gnu)
> +  #:use-module (gnu packages)
> +  #:use-module (gnu packages assembly)
> +  #:use-module (gnu packages base)
> +  #:use-module (gnu packages bison)
> +  #:use-module (gnu packages compression)
> +  #:use-module (gnu packages cups)
> +  #:use-module (gnu packages curl)
> +  #:use-module (gnu packages databases)
> +  #:use-module (gnu packages fontutils)
> +  #:use-module (gnu packages ghostscript)
> +  #:use-module (gnu packages gl)
> +  #:use-module (gnu packages glib)
> +  #:use-module (gnu packages gnome)
> +  #:use-module (gnu packages gnuzilla)
> +  #:use-module (gnu packages gperf)
> +  #:use-module (gnu packages gtk)
> +  #:use-module (gnu packages icu4c)
> +  #:use-module (gnu packages image)
> +  #:use-module (gnu packages libevent)
> +  #:use-module (gnu packages libffi)
> +  #:use-module (gnu packages libusb)
> +  #:use-module (gnu packages linux)
> +  #:use-module (gnu packages kerberos)
> +  #:use-module (gnu packages ninja)
> +  #:use-module (gnu packages node)
> +  #:use-module (gnu packages pciutils)
> +  #:use-module (gnu packages photo)
> +  #:use-module (gnu packages pkg-config)
> +  #:use-module (gnu packages protobuf)
> +  #:use-module (gnu packages pulseaudio)
> +  #:use-module (gnu packages python)
> +  #:use-module (gnu packages python-web)
> +  #:use-module (gnu packages regex)
> +  #:use-module (gnu packages serialization)
> +  #:use-module (gnu packages speech)
> +  #:use-module (gnu packages tls)
> +  #:use-module (gnu packages valgrind)
> +  #:use-module (gnu packages version-control)
> +  #:use-module (gnu packages video)
> +  #:use-module (gnu packages xiph)
> +  #:use-module (gnu packages xml)
> +  #:use-module (gnu packages xdisorg)
> +  #:use-module (gnu packages xorg))
> +
> +(define (strip-directory-prefix pathspec)
> +  "Return everything after the last '/' in PATHSPEC."
> +  (let ((index (string-rindex pathspec #\/)))
> +    (if index
> +        (string-drop pathspec (+ 1 index))
> +        pathspec)))
> +
> +(define (chromium-patch-file-name pathspec)
> +  (let ((patch-name (strip-directory-prefix pathspec)))
> +    (if (string-prefix? "chromium-" patch-name)
> +        patch-name
> +        (string-append "chromium-" patch-name))))
> +
> +;; https://anonscm.debian.org/cgit/pkg-chromium/pkg-chromium.git/tree/de=
bian/patches
> +(define (debian-patch pathspec revision hash)
> +  (origin
> +    (method url-fetch)
> +    (uri (string-append
> +          "https://anonscm.debian.org/cgit/pkg-chromium/pkg-chromium.git"
> +          "/plain/debian/patches/" pathspec "?id=3D" revision))
> +    (sha256 (base32 hash))
> +    (file-name (chromium-patch-file-name pathspec))))
> +
> +;; https://gitweb.gentoo.org/repo/gentoo.git/tree/www-client/chromium/fi=
les
> +(define (gentoo-patch pathspec revision hash)
> +  (origin
> +    (method url-fetch)
> +    (uri (string-append
> +          "https://gitweb.gentoo.org/repo/gentoo.git/plain/www-client"
> +          "/chromium/files/" pathspec "?id=3D" revision))
> +    (sha256 (base32 hash))
> +    (file-name (chromium-patch-file-name pathspec))))
> +
> +;; https://github.com/gcarq/inox-patchset
> +(define (inox-patch pathspec revision hash)
> +  (origin
> +    (method url-fetch)
> +    (uri (string-append "https://raw.githubusercontent.com/gcarq/inox-pa=
tchset/"
> +                        revision "/" pathspec))
> +    (sha256 (base32 hash))
> +    (file-name (chromium-patch-file-name pathspec))))
> +
> +;; https://github.com/NixOS/nixpkgs/tree/master/pkgs/applications/networ=
king/browsers/chromium
> +(define (nixos-patch pathspec revision hash)
> +  (origin
> +    (method url-fetch)
> +    (uri (string-append "https://raw.githubusercontent.com/NixOS/nixpkgs=
/"
> +                        revision "/pkgs/applications/networking/browsers"
> +                        "/chromium/patches/" pathspec))
> +    (sha256 (base32 hash))
> +    (file-name (chromium-patch-file-name pathspec))))
> +
> +;; Fix build for older versions of GCC.
> +(define %chromium-angle-gcc-compat.patch
> +  (gentoo-patch "chromium-angle-r0.patch"
> +                "08971011b4d6fa37aa906920fba7564e48b9e60b"
> +                "0izdrqwsyr48117dhvwdsk8c6dkrnq2njida1q4mb1lagvwbz7gc"))
> +
> +;; https://webrtc-review.googlesource.com/9384
> +(define %chromium-webrtc-gcc-compat.patch
> +  (gentoo-patch "chromium-webrtc-r0.patch"
> +                "08971011b4d6fa37aa906920fba7564e48b9e60b"
> +                "0qj5b4w9kav51ylpdf38vm5w7p2gx4qp8p45vrfggp7miicg9cmw"))
> +
> +;; https://chromium-review.googlesource.com/813737
> +(define %chromium-memcpy.patch
> +  (gentoo-patch "chromium-memcpy-r0.patch"
> +                "08971011b4d6fa37aa906920fba7564e48b9e60b"
> +                "1d3vra59wjg2lva7ddv55ff6l57mk9k50llsplr0b7vxk0lh0ps5"))
> +
> +(define %chromium-system-nspr.patch
> +  (debian-patch "system/nspr.patch"
> +                "debian/64.0.3282.119-2"
> +                "0pcwk3jsx8hjzd4s1v7p11jd8vpdqfnq82di31222cjx0bl6275r"))
> +
> +(define %chromium-system-libevent.patch
> +  (debian-patch "system/event.patch"
> +                "debian/64.0.3282.119-2"
> +                "1dxzn1yf05mzf21c25sczj4zhkknf03x9bc3xzznqpvnsf3cjpr0"))
> +
> +(define %chromium-system-icu.patch
> +  (debian-patch "system/icu.patch"
> +                "debian/64.0.3282.119-2"
> +                "0kf77d8lyma3w0xpgfv2k0c741zp6ii08gzllfja6d5s59c15ylv"))
> +
> +;; Don't show a warning about missing API keys.
> +(define %chromium-disable-api-keys-warning.patch
> +  (debian-patch "disable/google-api-warning.patch"
> +                "debian/64.0.3282.119-2"
> +                "1932xkrskm4nnglzj6xfjpycx4chsycj9ay3ipkq5f6xk21a1xm0"))
> +
> +;; Add DuckDuckGo and set it as the default search engine.
> +(define %chromium-duckduckgo.patch
> +  (inox-patch "0011-add-duckduckgo-search-engine.patch"
> +              "d655594419af6b82a2a070e4d3eedd926a04fa79"
> +              "0p8x98g71ngkd3wbl5q36wrl18ff185sfrr5fcwjbgrv3v7r6ra7"))
> +
> +;; Don't start a "Login Wizard" at first launch.
> +(define %chromium-first-run.patch
> +  (inox-patch "0018-disable-first-run-behaviour.patch"
> +              "d655594419af6b82a2a070e4d3eedd926a04fa79"
> +              "1y4zsqqf2125jkb1phwy9g5hcbd9xhyv5lr4xcaly66rpdzx2ayb"))
> +
> +;; Use privacy-preserving defaults.
> +(define %chromium-default-preferences.patch
> +  (inox-patch "0006-modify-default-prefs.patch"
> +              "d655594419af6b82a2a070e4d3eedd926a04fa79"
> +              "0qpd5l3wiw7325cicjzvdql0gay7jl4afml4nrbmy3w40i1ai2rf"))
> +
> +;; Recent versions of Chromium may load a remote search engine on the
> +;; New Tab Page, causing unnecessary and involuntary network traffic.
> +(define %chromium-restore-classic-ntp.patch
> +  (inox-patch "0008-restore-classic-ntp.patch"
> +              "d655594419af6b82a2a070e4d3eedd926a04fa79"
> +              "0lj018q6vd6m43cj8rnraqgi4lp2iq76i1i0078dav4cxnzdryfs"))
> +
> +(define opus+custom
> +  (package (inherit opus)
> +           (name "opus+custom")
> +           (arguments
> +            `(;; Opus Custom is an optional extension of the Opus
> +              ;; specification that allows for unsupported frame
> +              ;; sizes.  Chromium requires that this is enabled.
> +              #:configure-flags '("--enable-custom-modes")
> +              ,@(package-arguments opus)))))
> +
> +(define libvpx+experimental
> +  (package
> +    (inherit libvpx)
> +    (name "libvpx+experimental")
> +    (arguments
> +     `(,@(substitute-keyword-arguments (package-arguments libvpx)
> +           ((#:configure-flags flags ''())
> +            ;; Spatial SVC is an experimental VP9 encoder required by Ch=
romium.
> +            `(cons* "--enable-experimental" "--enable-spatial-svc"
> +                    ,flags)))))))
> +
> +(define-public chromium
> +  (package
> +    (name "chromium")
> +    (version "64.0.3282.186")
> +    (synopsis "Graphical web browser")
> +    (source (origin
> +              (method url-fetch)
> +              (uri (string-append "https://commondatastorage.googleapis.=
com/"
> +                                  "chromium-browser-official/chromium-"
> +                                  version ".tar.xz"))
> +              (sha256
> +               (base32
> +                "0q0q1whspmzyln04gxhgl3jd2vrgb4imh8r9qw6c06i3b63j3l2z"))
> +              (patches (list %chromium-duckduckgo.patch
> +                             %chromium-default-preferences.patch
> +                             %chromium-first-run.patch
> +                             %chromium-restore-classic-ntp.patch
> +                             %chromium-angle-gcc-compat.patch
> +                             %chromium-webrtc-gcc-compat.patch
> +                             %chromium-memcpy.patch
> +                             %chromium-system-icu.patch
> +                             %chromium-system-nspr.patch
> +                             %chromium-system-libevent.patch
> +                             %chromium-disable-api-keys-warning.patch
> +                             (search-patch "chromium-gcc5.patch")
> +                             (search-patch "chromium-remove-default-hist=
ory.patch")))
> +              (modules '((srfi srfi-1)
> +                         (ice-9 ftw)
> +                         (ice-9 regex)
> +                         (guix build utils)))
> +              (snippet
> +               '(begin
> +                  (let ((preserved-files
> +                         (map
> +                          (lambda (path) (string-append "./" path))
> +                          (list
> +                           "base/third_party/dmg_fp"
> +                           "base/third_party/dynamic_annotations"
> +                           "base/third_party/icu"
> +                           "base/third_party/libevent"
> +                           "base/third_party/nspr"
> +                           "base/third_party/superfasthash"
> +                           "base/third_party/symbolize" ;glog
> +                           "base/third_party/xdg_mime"
> +                           "base/third_party/xdg_user_dirs"
> +                           "buildtools/third_party/libc++"
> +                           "chrome/third_party/mozilla_security_manager"
> +                           "courgette/third_party"
> +                           "net/third_party/mozilla_security_manager"
> +                           "net/third_party/nss"
> +                           "third_party/adobe/flash/flapper_version.h"
> +                           ;; FIXME: This is used in:
> +                           ;; * ui/webui/resources/js/analytics.js
> +                           ;; * ui/file_manager/
> +                           "third_party/analytics"
> +                           "third_party/angle"
> +                           "third_party/angle/src/common/third_party/bas=
e"
> +                           "third_party/angle/src/common/third_party/smh=
asher"
> +                           "third_party/angle/src/third_party/compiler"
> +                           "third_party/angle/src/third_party/libXNVCtrl"
> +                           "third_party/angle/src/third_party/trace_even=
t"
> +                           "third_party/blink"
> +                           "third_party/boringssl"
> +                           "third_party/boringssl/src/third_party/fiat"
> +                           "third_party/breakpad"
> +                           "third_party/brotli"
> +                           "third_party/cacheinvalidation"
> +                           "third_party/catapult"
> +                           "third_party/catapult/common/py_vulcanize/thi=
rd_party/rcssmin"
> +                           "third_party/catapult/common/py_vulcanize/thi=
rd_party/rjsmin"
> +                           "third_party/catapult/third_party/polymer"
> +                           "third_party/catapult/tracing/third_party/d3"
> +                           "third_party/catapult/tracing/third_party/gl-=
matrix"
> +                           "third_party/catapult/tracing/third_party/jsz=
ip"
> +                           "third_party/catapult/tracing/third_party/man=
nwhitneyu"
> +                           "third_party/catapult/tracing/third_party/obo=
e"
> +                           "third_party/catapult/tracing/third_party/pak=
o"
> +                           "third_party/ced"
> +                           "third_party/cld_3"
> +                           "third_party/crc32c"
> +                           "third_party/cros_system_api"
> +                           "third_party/dom_distiller_js"
> +                           "third_party/fips181"
> +                           "third_party/flatbuffers"
> +                           ;; PDFium requires a private freetype API.
> +                           ;; <https://bugs.chromium.org/p/pdfium/issues=
/detail?id=3D733>
> +                           "third_party/freetype/src/src/psnames/pstable=
s.h"
> +                           "third_party/glslang-angle"
> +                           "third_party/google_input_tools"
> +                           "third_party/google_input_tools/third_party/c=
losure_library"
> +                           (string-append "third_party/google_input_tool=
s/third_party"
> +                                          "/closure_library/third_party/=
closure")
> +                           "third_party/googletest"
> +                           "third_party/harfbuzz-ng"
> +                           "third_party/hunspell"
> +                           "third_party/iccjpeg"
> +                           "third_party/inspector_protocol"
> +                           "third_party/jinja2"
> +                           "third_party/jstemplate"
> +                           "third_party/khronos"
> +                           "third_party/leveldatabase"
> +                           "third_party/libXNVCtrl"
> +                           "third_party/libaddressinput"
> +                           "third_party/libjingle_xmpp"
> +                           "third_party/libphonenumber"
> +                           "third_party/libsecret" ;FIXME: needs pkg-con=
fig support.
> +                           "third_party/libsrtp"   ;TODO: Requires libsr=
tp@2.
> +                           "third_party/libudev"
> +                           "third_party/libwebm"
> +                           "third_party/libxml"
> +                           "third_party/libyuv"
> +                           "third_party/lss"
> +                           "third_party/lzma_sdk"
> +                           "third_party/markupsafe"
> +                           "third_party/mesa"
> +                           "third_party/metrics_proto"
> +                           "third_party/modp_b64"
> +                           "third_party/mt19937ar"
> +                           "third_party/node"
> +                           (string-append "third_party/node/node_modules=
/"
> +                                          "polymer-bundler/lib/third_par=
ty/UglifyJS2")
> +                           "third_party/openmax_dl"
> +                           "third_party/ots"
> +                           "third_party/pdfium"
> +                           "third_party/pdfium/third_party"
> +                           "third_party/ply"
> +                           "third_party/polymer"
> +                           "third_party/protobuf"
> +                           "third_party/protobuf/third_party/six"
> +                           "third_party/qcms"
> +                           "third_party/sfntly"
> +                           "third_party/skia"
> +                           "third_party/skia/third_party/vulkan"
> +                           "third_party/skia/third_party/gif"
> +                           "third_party/smhasher"
> +                           "third_party/speech-dispatcher"
> +                           "third_party/spirv-headers"
> +                           "third_party/spirv-tools-angle"
> +                           "third_party/sqlite"
> +                           "third_party/swiftshader"
> +                           "third_party/swiftshader/third_party"
> +                           "third_party/usb_ids"
> +                           "third_party/usrsctp"
> +                           "third_party/vulkan"
> +                           "third_party/vulkan-validation-layers"
> +                           "third_party/WebKit"
> +                           "third_party/web-animations-js"
> +                           "third_party/webrtc"
> +                           "third_party/webrtc_overrides"
> +                           "third_party/widevine/cdm/widevine_cdm_versio=
n.h"
> +                           "third_party/widevine/cdm/widevine_cdm_common=
=2Eh"
> +                           "third_party/woff2"
> +                           "third_party/xdg-utils"
> +                           "third_party/yasm/run_yasm.py"
> +                           "third_party/zlib/google"
> +                           "url/third_party/mozilla"
> +                           "v8/src/third_party/valgrind"
> +                           "v8/third_party/inspector_protocol"))))
> +
> +                    ;; This is an implementation of
> +                    ;; "build/linux/unbundle/remove_bundled_libraries.py=
".
> +                    ;; It traverses any "third_party" directory and dele=
tes
> +                    ;; files that are:
> +                    ;; * not ending with ".gn" or ".gni"; or
> +                    ;; * not explicitly named as argument (folder or fil=
e).
> +                    ;; TODO: Remove empty directories.
> +                    (define (delete-files-except exceptions dir)
> +
> +                      (define (enter? name stat result)
> +                        (not (member name exceptions)))
> +
> +                      (define (leaf name stat result)
> +                        (let ((protected-files (make-regexp "\\.(gn|gyp)=
i?$"
> +                                                            regexp/icase=
)))
> +                          (unless (or (member name exceptions)
> +                                      (regexp-exec protected-files name))
> +                            (delete-file name))))
> +
> +                      (file-system-fold enter?
> +                                        leaf
> +                                        (lambda (dir stat result) result=
) ;down
> +                                        (lambda (dir stat result) result=
) ;up
> +                                        (lambda (dir stat result) result=
) ;skip
> +                                        (lambda (dir stat result) result=
) ;error
> +                                        #t
> +                                        dir))
> +
> +                    (for-each (lambda (third-party)
> +                                (delete-files-except preserved-files
> +                                                     third-party))
> +                              (find-files "." "^third_party$" #:director=
ies? #t))
> +
> +                    ;; Replace GN files from third_party with shims for =
building
> +                    ;; against system libraries.  Keep this list in sync=
 with
> +                    ;; "build/linux/unbundle/replace_gn_files.py".
> +                    (for-each (lambda (pair)
> +                                (let ((source (string-append
> +                                               "build/linux/unbundle/" (=
car pair)))
> +                                      (dest (cdr pair)))
> +                                  (copy-file source dest)))
> +                              (list
> +                               '("ffmpeg.gn" . "third_party/ffmpeg/BUILD=
=2Egn")
> +                               '("flac.gn" . "third_party/flac/BUILD.gn")
> +                               '("freetype.gn" . "third_party/freetype/B=
UILD.gn")
> +                               ;; FIXME: This is no longer supported sin=
ce 63.
> +                               ;;'("harfbuzz-ng.gn" . "third_party/harfb=
uzz-ng/BUILD.gn")
> +                               '("icu.gn" . "third_party/icu/BUILD.gn")
> +                               '("libdrm.gn" . "third_party/libdrm/BUILD=
=2Egn")
> +                               '("libevent.gn" . "base/third_party/libev=
ent/BUILD.gn")
> +                               '("libjpeg.gn" .
> +                                 "build/secondary/third_party/libjpeg_tu=
rbo/BUILD.gn")
> +                               '("libpng.gn" . "third_party/libpng/BUILD=
=2Egn")
> +                               '("libvpx.gn" . "third_party/libvpx/BUILD=
=2Egn")
> +                               '("libwebp.gn" . "third_party/libwebp/BUI=
LD.gn")
> +                               '("libxml.gn" . "third_party/libxml/BUILD=
=2Egn") ;TODO
> +                               '("libxslt.gn" . "third_party/libxslt/BUI=
LD.gn")
> +                               '("openh264.gn" . "third_party/openh264/B=
UILD.gn")
> +                               '("opus.gn" . "third_party/opus/BUILD.gn")
> +                               '("re2.gn" . "third_party/re2/BUILD.gn")
> +                               '("snappy.gn" . "third_party/snappy/BUILD=
=2Egn")
> +                               '("yasm.gn" . "third_party/yasm/yasm_asse=
mble.gni")
> +                               '("zlib.gn" . "third_party/zlib/BUILD.gn"=
)))
> +                    #t)))))
> +    (build-system gnu-build-system)
> +    (arguments
> +     `(#:tests? #f
> +       ;; FIXME: There is a "gn" option specifically for setting -rpath,=
 but
> +       ;; it's not recognized when passed.
> +       #:validate-runpath? #f
> +       #:modules ((srfi srfi-26)
> +                  (ice-9 ftw)
> +                  (ice-9 regex)
> +                  (guix build gnu-build-system)
> +                  (guix build utils))
> +       #:phases
> +       (modify-phases %standard-phases
> +         (add-after 'unpack 'patch-stuff
> +           (lambda* (#:key inputs #:allow-other-keys)
> +             (substitute* "printing/cups_config_helper.py"
> +               (("cups_config =3D.*")
> +                (string-append "cups_config =3D '" (assoc-ref inputs "cu=
ps")
> +                               "/bin/cups-config'\n")))
> +
> +             (substitute*
> +                 '("base/process/launch_posix.cc"
> +                   "base/third_party/dynamic_annotations/dynamic_annotat=
ions.c"
> +                   "sandbox/linux/seccomp-bpf/sandbox_bpf.cc"
> +                   "sandbox/linux/services/credentials.cc"
> +                   "sandbox/linux/services/namespace_utils.cc"
> +                   "sandbox/linux/services/syscall_wrappers.cc"
> +                   "sandbox/linux/syscall_broker/broker_host.cc")
> +               (("include \"base/third_party/valgrind/") "include \"valg=
rind/"))
> +
> +             (for-each (lambda (file)
> +                         (substitute* file
> +                           ;; Fix opus include path.
> +                           ;; Do not substitute opus_private.h.
> +                           (("#include \"opus\\.h\"")
> +                            "#include \"opus/opus.h\"")
> +                           (("#include \"opus_custom\\.h\"")
> +                            "#include \"opus/opus_custom.h\"")
> +                           (("#include \"opus_defines\\.h\"")
> +                            "#include \"opus/opus_defines.h\"")
> +                           (("#include \"opus_multistream\\.h\"")
> +                            "#include \"opus/opus_multistream.h\"")
> +                           (("#include \"opus_types\\.h\"")
> +                            "#include \"opus/opus_types.h\"")))
> +                       (append (find-files "third_party/opus/src/celt")
> +                               (find-files "third_party/opus/src/src")
> +                               (find-files (string-append "third_party/w=
ebrtc/modules"
> +                                                          "/audio_coding=
/codecs/opus"))))
> +
> +             (substitute* "chrome/common/chrome_paths.cc"
> +               (("/usr/share/chromium/extensions")
> +                ;; TODO: Add ~/.guix-profile.
> +                "/run/current-system/profile/share/chromium/extensions"))

                   I don't know if I asked you about this in the past, but =
can you explain why you
                   picked the run dir? I have to re-read the Gentoo eclass =
and Nix integration for this.

> +
> +             (substitute*
> +                 "third_party/breakpad/breakpad/src/common/linux/libcurl=
_wrapper.h"
> +               (("include \"third_party/curl") "include \"curl"))
> +             (substitute* "media/base/decode_capabilities.cc"
> +               (("third_party/libvpx/source/libvpx/") ""))
> +
> +             ;; We don't cross compile most packages, so get rid of the
> +             ;; unnecessary ARCH-linux-gnu* prefix.
> +             (substitute* "build/toolchain/linux/BUILD.gn"
> +               (("aarch64-linux-gnu-") "")
> +               (("arm-linux-gnueabihf-") ""))
> +             #t))
> +         (replace 'configure
> +           (lambda* (#:key inputs outputs #:allow-other-keys)
> +             (let ((gn-flags
> +                    (list
> +                     ;; See tools/gn/docs/cookbook.md and
> +                     ;; https://www.chromium.org/developers/gn-build-con=
figuration
> +                     ;; for usage.  Run "./gn args . --list" in the Rele=
ase
> +                     ;; directory for an exhaustive list of supported fl=
ags.
> +                     "is_debug=3Dfalse"
> +                     "is_official_build=3Dfalse"
> +                     "is_clang=3Dfalse"
> +                     "use_gold=3Dfalse"
> +                     "use_lld=3Dfalse"
> +                     "linux_use_bundled_binutils=3Dfalse"
> +                     "use_custom_libcxx=3Dfalse"
> +                     "use_sysroot=3Dfalse"
> +                     "goma_dir=3D\"\""
> +                     "enable_precompiled_headers=3Dfalse"
> +                     "enable_nacl=3Dfalse"
> +                     "enable_nacl_nonsfi=3Dfalse"
> +                     "use_allocator=3D\"none\"" ;don't use tcmalloc
> +                     "override_build_date=3D\"01 01 2000 05:00:00\""
> +                     "use_unofficial_version_number=3Dfalse"
> +                     ;; Optimize for building everything at once, as opp=
osed
> +                     ;; to incrementally for development.  See "docs/jum=
bo.md".
> +                     ;; XXX: On some systems this may trigger a compiler=
 error.
> +                     ;;"use_jumbo_build=3Dtrue"
> +                     ;; Disable debugging features to save space.
> +                     "remove_webcore_debug_symbols=3Dtrue"
> +                     "enable_iterator_debugging=3Dfalse"
> +                     ;; Some of the unbundled libraries throws deprecati=
on
> +                     ;; warnings, etc.  Ignore it.
> +                     "treat_warnings_as_errors=3Dfalse"
> +                     ;; Don't add any API keys.  End users can set them =
in the
> +                     ;; environment if desired.  See
> +                     ;; <https://www.chromium.org/developers/how-tos/api=
-keys>.
> +                     "use_official_google_api_keys=3Dfalse"
> +                     ;; Disable "field trials".
> +                     "fieldtrial_testing_like_official_build=3Dtrue"
> +
> +                     "use_system_freetype=3Dtrue"
> +                     "use_system_harfbuzz=3Dtrue"
> +                     "use_system_libjpeg=3Dtrue"
> +                     "use_system_lcms2=3Dtrue"
> +                     "use_system_zlib=3Dtrue"
> +                     ;; This is currently not supported on Linux:
> +                     ;; https://bugs.chromium.org/p/chromium/issues/deta=
il?id=3D22208
> +                     ;;"use_system_sqlite=3Dtrue"
> +
> +                     "use_gconf=3Dfalse"         ;deprecated by gsettings
> +                     "use_gnome_keyring=3Dfalse" ;deprecated by libsecret
> +                     "use_gtk3=3Dtrue"
> +                     "use_openh264=3Dtrue"
> +                     "use_xkbcommon=3Dtrue"
> +                     "link_pulseaudio=3Dtrue"
> +
> +                     ;; Don't arbitrarily restrict formats supported by =
system ffmpeg.
> +                     "proprietary_codecs=3Dtrue"
> +                     "ffmpeg_branding=3D\"Chrome\""
> +
> +                     ;; WebRTC stuff.
> +                     "rtc_use_h264=3Dtrue"
> +                     ;; Don't use bundled sources.
> +                     "rtc_build_json=3Dfalse"
> +                     "rtc_build_libevent=3Dfalse"
> +                     "rtc_build_libvpx=3Dfalse"
> +                     "rtc_build_opus=3Dfalse"
> +                     "rtc_build_ssl=3Dfalse"
> +                     ;; TODO: Package these.
> +                     "rtc_build_libsrtp=3Dtrue" ;2.0
> +                     "rtc_build_libyuv=3Dtrue"
> +                     "rtc_build_openmax_dl=3Dtrue"
> +                     "rtc_build_usrsctp=3Dtrue"
> +                     (string-append "rtc_jsoncpp_root=3D\""
> +                                    (assoc-ref inputs "jsoncpp")
> +                                    "/include/jsoncpp/json\"")
> +                     (string-append "rtc_ssl_root=3D\""
> +                                    (assoc-ref inputs "openssl")
> +                                    "/include/openssl\""))))
> +
> +               ;; XXX: How portable is this.

                  Can you extend this comment?

> +               (mkdir-p "third_party/node/linux/node-linux-x64")
> +               (symlink (string-append (assoc-ref inputs "node") "/bin")
> +                        "third_party/node/linux/node-linux-x64/bin")
> +
> +               (setenv "CC" "gcc")
> +               (setenv "CXX" "g++")
> +               ;; TODO: pre-compile instead. Avoids a race condition.
> +               (setenv "PYTHONDONTWRITEBYTECODE" "1")
> +               (and
> +                ;; Build the "gn" tool.
> +                (invoke "python"
> +                        "tools/gn/bootstrap/bootstrap.py" "-s" "-v")
> +                ;; Generate ninja build files.
> +                (invoke "./out/Release/gn" "gen" "out/Release"
> +                        (string-append "--args=3D"
> +                                       (string-join gn-flags " ")))))))
> +         (replace 'build
> +           (lambda* (#:key outputs #:allow-other-keys)
> +             (invoke "ninja" "-C" "out/Release"
> +                     "-j" (number->string (parallel-job-count))
> +                     "chrome")))
> +         (replace 'install
> +           (lambda* (#:key inputs outputs #:allow-other-keys)
> +             (let* ((out            (assoc-ref outputs "out"))
> +                    (bin            (string-append out "/bin"))
> +                    (exe            (string-append bin "/chromium"))
> +                    (lib            (string-append out "/lib"))
> +                    (man            (string-append out "/share/man/man1"=
))
> +                    (applications   (string-append out "/share/applicati=
ons"))
> +                    (install-regexp (make-regexp "\\.(bin|pak)$"))
> +                    (locales        (string-append lib "/locales"))
> +                    (resources      (string-append lib "/resources"))
> +                    (gtk+           (assoc-ref inputs "gtk+"))
> +                    (mesa           (assoc-ref inputs "mesa"))
> +                    (nss            (assoc-ref inputs "nss"))
> +                    (udev           (assoc-ref inputs "udev"))
> +                    (sh             (which "sh")))
> +
> +               (substitute* '("chrome/app/resources/manpage.1.in"
> +                              "chrome/installer/linux/common/desktop.tem=
plate")
> +                 (("@@MENUNAME@@") "Chromium")
> +                 (("@@PACKAGE@@") "chromium")
> +                 (("/usr/bin/@@USR_BIN_SYMLINK_NAME@@") exe))
> +               (mkdir-p man)
> +               (copy-file "chrome/app/resources/manpage.1.in"
> +                          (string-append man "/chromium.1"))
> +               (mkdir-p applications)
> +               (copy-file "chrome/installer/linux/common/desktop.templat=
e"
> +                          (string-append applications "/chromium.desktop=
"))
> +
> +               (with-directory-excursion "out/Release"
> +                 (for-each (lambda (file)
> +                             (install-file file lib))
> +                           (scandir "." (cut regexp-exec install-regexp =
<>)))
> +                 (copy-file "chrome" (string-append lib "/chromium"))
> +
> +                 ;; TODO: Install icons from "../../chrome/app/themes" i=
nto
> +                 ;; "out/share/icons/hicolor/$size".
> +                 (install-file
> +                  "product_logo_48.png"
> +                  (string-append out "/share/icons/48x48/chromium.png"))
> +
> +                 (copy-recursively "locales" locales)
> +                 (copy-recursively "resources" resources)
> +
> +                 (mkdir-p bin)
> +                 ;; Add a thin wrapper to prevent the user from inadvert=
ently
> +                 ;; installing non-free software through the Web Store.
> +                 ;; TODO: Discover extensions from the profile and pass
> +                 ;; something like "--disable-extensions-except=3D...".

                    To be able to work on this, can you (at least in this b=
ug ticket,
                    explain the TODO part a bit more?

> +                 (call-with-output-file exe
> +                   (lambda (port)
> +                     (format port
> +                             "#!~a~@
> +                             if [ -z \"$CHROMIUM_ENABLE_WEB_STORE\" ]~@
> +                             then~@
> +                               CHROMIUM_FLAGS=3D\" \\~@
> +                                 --disable-background-networking \\~@
> +                                 --disable-extensions \\~@
> +                               \"~@
> +                             fi~@
> +                             exec ~a $CHROMIUM_FLAGS \"$@\"~%"
> +                             sh (string-append lib "/chromium"))))
> +                 (chmod exe #o755)
> +
> +                 (wrap-program exe
> +                   ;; TODO: Get these in RUNPATH.
> +                   `("LD_LIBRARY_PATH" ":" prefix
> +                     (,(string-append lib ":" nss "/lib/nss:" gtk+ "/lib=
:"
> +                                      mesa "/lib:" udev "/lib")))
> +                   ;; Avoid file manager crash.  See <https://bugs.gnu.o=
rg/26593>.
> +                   `("XDG_DATA_DIRS" ":" prefix (,(string-append gtk+ "/=
share"))))
> +                 #t)))))))
> +    (native-inputs
> +     `(("bison" ,bison)
> +       ("git" ,git)                     ;last_commit_position.py
> +       ("gperf" ,gperf)
> +       ("ninja" ,ninja)
> +       ("node" ,node)
> +       ("pkg-config" ,pkg-config)
> +       ("which" ,which)
> +       ("yasm" ,yasm)
> +
> +       ("python-beautifulsoup4" ,python2-beautifulsoup4)
> +       ("python-html5lib" ,python2-html5lib)
> +       ("python" ,python-2)))
> +    (inputs
> +     `(("alsa-lib" ,alsa-lib)
> +       ("atk" ,atk)
> +       ("cups" ,cups)
> +       ("curl" ,curl)
> +       ("dbus" ,dbus)
> +       ("dbus-glib" ,dbus-glib)
> +       ("expat" ,expat)
> +       ("flac" ,flac)
> +       ("ffmpeg" ,ffmpeg)
> +       ("fontconfig" ,fontconfig)
> +       ("freetype" ,freetype)
> +       ("gdk-pixbuf" ,gdk-pixbuf)
> +       ("glib" ,glib)
> +       ("gtk+-2" ,gtk+-2)
> +       ("gtk+" ,gtk+)
> +       ("harfbuzz" ,harfbuzz)
> +       ("icu4c" ,icu4c)
> +       ("jsoncpp" ,jsoncpp)
> +       ("lcms" ,lcms)
> +       ("libevent" ,libevent)
> +       ("libffi" ,libffi)
> +       ("libjpeg-turbo" ,libjpeg-turbo)
> +       ("libpng" ,libpng)
> +       ("libusb" ,libusb)
> +       ("libvpx" ,libvpx+experimental)
> +       ("libwebp" ,libwebp)
> +       ("libx11" ,libx11)
> +       ("libxcb" ,libxcb)
> +       ("libxcomposite" ,libxcomposite)
> +       ("libxcursor" ,libxcursor)
> +       ("libxdamage" ,libxdamage)
> +       ("libxext" ,libxext)
> +       ("libxfixes" ,libxfixes)
> +       ("libxi" ,libxi)
> +       ("libxkbcommon" ,libxkbcommon)
> +       ("libxml2" ,libxml2)
> +       ("libxrandr" ,libxrandr)
> +       ("libxrender" ,libxrender)
> +       ("libxscrnsaver" ,libxscrnsaver)
> +       ("libxslt" ,libxslt)
> +       ("libxtst" ,libxtst)
> +       ("mesa" ,mesa)
> +       ("minizip" ,minizip)
> +       ("mit-krb5" ,mit-krb5)
> +       ("nss" ,nss)
> +       ("openh264" ,openh264)
> +       ("openssl" ,openssl)
> +       ("opus" ,opus+custom)
> +       ("pango" ,pango)
> +       ("pciutils" ,pciutils)
> +       ("protobuf" ,protobuf)
> +       ("pulseaudio" ,pulseaudio)
> +       ("re2" ,re2)
> +       ("snappy" ,snappy)
> +       ("speech-dispatcher" ,speech-dispatcher)
> +       ("sqlite" ,sqlite)
> +       ("udev" ,eudev)
> +       ("valgrind" ,valgrind)))
> +    (home-page "https://www.chromium.org/")
> +    (description
> +     "Chromium is a web browser designed for speed and security.  This
> +version incorporates patches from
> +@url{https://github.com/gcarq/inox-patchset,Inox} and
> +@url{https://www.debian.org/,Debian} in order to protect the users priva=
cy.")
> +    ;; Chromium is developed as BSD-3, but bundles a large number of thi=
rd-party
> +    ;; components with other licenses.  For full information, see chrome=
://credits.
> +    (license (list license:bsd-3
> +                   license:bsd-2
> +                   license:expat
> +                   license:asl2.0
> +                   license:mpl2.0
> +                   license:public-domain
> +                   license:lgpl2.1+))))
> diff --git a/gnu/packages/patches/chromium-gcc5.patch b/gnu/packages/patc=
hes/chromium-gcc5.patch
> new file mode 100644
> index 000000000..56b2cd6ef
> --- /dev/null
> +++ b/gnu/packages/patches/chromium-gcc5.patch
> @@ -0,0 +1,39 @@
> +Work around a GCC5 bug where it fails to choose the correct base::span
> +constructor.
> +
> +Adapted from this commit:
> +https://gitweb.gentoo.org/repo/gentoo.git/commit/www-client/chromium?id=
=3D7843d29ab07411a9c70962fb90b4cd1546910242
> +
> +--- a/gpu/ipc/common/mailbox_struct_traits.h
> ++++ b/gpu/ipc/common/mailbox_struct_traits.h
> +@@ -15,7 +15,7 @@ namespace mojo {
> + template <>
> + struct StructTraits<gpu::mojom::MailboxDataView, gpu::Mailbox> {
> +   static base::span<const int8_t> name(const gpu::Mailbox& mailbox) {
> +-    return mailbox.name;
> ++    return base::make_span(mailbox.name);
> +   }
> +   static bool Read(gpu::mojom::MailboxDataView data, gpu::Mailbox* out);
> + };
> +--- a/services/viz/public/cpp/compositing/filter_operation_struct_traits=
=2Eh
> ++++ b/services/viz/public/cpp/compositing/filter_operation_struct_traits=
=2Eh
> +@@ -134,7 +134,7 @@ struct StructTraits<viz::mojom::FilterOperationDataV=
iew, cc::FilterOperation> {
> +   static base::span<const float> matrix(const cc::FilterOperation& oper=
ation) {
> +     if (operation.type() !=3D cc::FilterOperation::COLOR_MATRIX)
> +       return base::span<const float>();
> +-    return operation.matrix();
> ++    return base::make_span(operation.matrix());
> +   }
> +
> +   static base::span<const gfx::Rect> shape(
> +--- a/services/viz/public/cpp/compositing/quads_struct_traits.h
> ++++ b/services/viz/public/cpp/compositing/quads_struct_traits.h
> +@@ -308,7 +308,7 @@
> +   static base::span<const float> vertex_opacity(const viz::DrawQuad& in=
put) {
> +     const viz::TextureDrawQuad* quad =3D
> +         viz::TextureDrawQuad::MaterialCast(&input);
> +-    return quad->vertex_opacity;
> ++    return base::make_span(quad->vertex_opacity);
> +   }
> +=20
> +   static bool y_flipped(const viz::DrawQuad& input) {
> diff --git a/gnu/packages/patches/chromium-remove-default-history.patch b=
/gnu/packages/patches/chromium-remove-default-history.patch
> new file mode 100644
> index 000000000..38be10820
> --- /dev/null
> +++ b/gnu/packages/patches/chromium-remove-default-history.patch
> @@ -0,0 +1,13 @@
> +Don't pre-populate the New Tab Page for new profiles.
> +
> +--- a/chrome/browser/history/top_sites_factory.cc
> ++++ b/chrome/browser/history/top_sites_factory.cc
> +@@ -74,7 +74,7 @@
> +=20
> + void InitializePrepopulatedPageList(
> +     history::PrepopulatedPageList* prepopulated_pages) {
> +-#if !defined(OS_ANDROID)
> ++#if false
> +   DCHECK(prepopulated_pages);
> +   prepopulated_pages->reserve(arraysize(kRawPrepopulatedPages));
> +   for (size_t i =3D 0; i < arraysize(kRawPrepopulatedPages); ++i) {
> --=20
> 2.16.2
>=20

Otherwise, LGTM.
--=20
A88C8ADD129828D7EAC02E52E22F9BBFEE348588
https://n0.is
--wj6qt76xr6nidfo4
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQIzBAABCgAdFiEEqIyK3RKYKNfqwC5S4i+bv+40hYgFAlqV2OcACgkQ4i+bv+40
hYifLRAApm0yB/3PA0/l/lquHl/7zHHSIb6s6rUbRFD963FHyohC1ik49dTrhAY5
qo50m9vWFEAntwmq38oHCuWk7+m4v4mBUr5CellO6v8mhjMFHDl8+lODziy4IM9Y
07wGzHzdgMdDBq3ec0dUWTaJpP6QQ1F/583iSOlrOA8fcler+QMqUkVUPEMB4D5F
ojZ9NRoUD7XCwGYj2GA3bM6mYQw0Bq2sQGXfxaz/dvGD12vC1SRhITzGAiMQevMU
JQfLcwYi22cfJSo+1UQLjeXTxrKP41ZpmVxH+bkqnClbETxVonX0t8FY15rW3A7Z
Zee1Try+nJ77PI4OEKlahGciZMRAbdBr9n7hdRO7ijhQz/E26hDH/iLOhMMCKGHZ
uAghL9yhfZehQzJl3GoOKMSZMCekXOnHqjWYQVtyFJ3AoI9OPvV28iy+tUrFKJxo
A5Vf+UY4LcJQoYw9maZfDlSd8UK3unPQAb/3KvdPFmvVF3NsT5/a4X+7iMEY8udl
6S3q9bqjKpjSofg/uSZrEN4oZaCW34PcO9h8wP0Djm9kweiHPuY/3ADrQnFNI5Xu
Jml3/P7ZXR+yPibtww0Mh7t54VXzA9LysIdBtK/W43b8aX/nidpy1xAm868C/HaW
ut+RZ5GmNy+Au0PGmHOFQuSTXppgq3viWIp/wOkNhV80mliCiYs=
=+xOh
-----END PGP SIGNATURE-----

--wj6qt76xr6nidfo4--




Information forwarded to guix-patches@HIDDEN:
bug#28004; Package guix-patches. Full text available.

Message received at 28004 <at> debbugs.gnu.org:


Received: (at 28004) by debbugs.gnu.org; 27 Feb 2018 21:57:29 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Feb 27 16:57:29 2018
Received: from localhost ([127.0.0.1]:36070 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1eqnFY-0001f2-Ns
	for submit <at> debbugs.gnu.org; Tue, 27 Feb 2018 16:57:29 -0500
Received: from aibo.runbox.com ([91.220.196.211]:38656)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <ng0@HIDDEN>) id 1eqnFW-0001et-KS
 for 28004 <at> debbugs.gnu.org; Tue, 27 Feb 2018 16:57:27 -0500
Received: from [10.9.9.211] (helo=mailfront11.runbox.com)
 by mailtransmit03.runbox with esmtp (Exim 4.86_2)
 (envelope-from <ng0@HIDDEN>)
 id 1eqnFU-00068T-Mu; Tue, 27 Feb 2018 22:57:24 +0100
Received: from dslb-092-073-159-161.092.073.pools.vodafone-ip.de
 ([92.73.159.161] helo=localhost)
 by mailfront11.runbox.com with esmtpsa (uid:892961 )
 (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82)
 id 1eqnFD-0002MP-LX; Tue, 27 Feb 2018 22:57:07 +0100
Date: Tue, 27 Feb 2018 21:57:17 +0000
From: ng0 <ng0@HIDDEN>
To: =?utf-8?B?QmrDtnJuIEjDtmZsaW5n?= <bjoern.hoefling@HIDDEN>
Subject: Re: [bug#28004] Chromium
Message-ID: <20180227215717.bie4f2zdrn5s5oyo@abyayala>
References: <87wp0s2ewl.fsf@HIDDEN>
 <20180108232042.nqjurjr2bcfl2yyc@abyayala>
 <87373cey5b.fsf@HIDDEN> <87vag16g5z.fsf@HIDDEN>
 <87fu75aar5.fsf@HIDDEN> <874lnkr0vf.fsf@HIDDEN>
 <87vaejvclc.fsf@HIDDEN>
 <20180226200133.zsnahblbgzovrtmu@abyayala>
 <87muzvv7ku.fsf@HIDDEN> <20180226234144.032af030@alma-ubu>
MIME-Version: 1.0
Content-Type: multipart/signed; micalg=pgp-sha512;
 protocol="application/pgp-signature"; boundary="bwzlrzka7gfznhcm"
Content-Disposition: inline
In-Reply-To: <20180226234144.032af030@alma-ubu>
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 28004
Cc: 28004 <at> debbugs.gnu.org, Marius Bakke <mbakke@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -0.7 (/)


--bwzlrzka7gfznhcm
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

Bj=C3=B6rn H=C3=B6fling transcribed 4.0K bytes:
> Hi Marius,
>=20
> On Mon, 26 Feb 2018 21:06:57 +0100
> Marius Bakke <mbakke@HIDDEN> wrote:
>=20
> > ng0 <ng0@HIDDEN> writes:
> >=20
> > > Marius Bakke transcribed 2.1K bytes: =20
> > >> Mike Gerwitz <mtg@HIDDEN> writes:
> > >>  =20
> > >> > On Tue, Jan 16, 2018 at 20:01:34 +0100, Marius Bakke wrote: =20
> > >> >> If there are no objections, expect to see this in 'master' in
> > >> >> 1-2 weeks. =20
> > >> >
> > >> > I want to express gratitude for your hard work on this---given
> > >> > that IceCat does not contain many of the FF devtool updates,
> > >> > Chromium is very desirable for web development.  It's also
> > >> > needed for certain Node.js tools, like node-inspector.
> > >> >
> > >> > So, thank you! =20
> > >>=20
> > >> Thank *you* for the kind words! :-)
> > >>=20
> > >> Here is the latest iteration of this patch.  New in this version:
> > >>=20
> > >> * Chromium 64 (duh).
> > >> * The 'delete-bundled-software' phase has been moved to a snippet,
> > >>   shaving ~100MiB (~22%) off the compressed tarball size (and
> > >>   drastically reduces (de)compression time).
> > >> * The New Tab page does not show any thumbnails for new profiles. =
=20
> > >
> > > I think you forgot to attach the patches :) =20
> >=20
> > Derp.  I realized that and just used `git send-email`[0], but have
> > attached it here for convenience since the debbugs web UI doesn't
> > allow easy download of a raw message.
> >=20
> > [0] https://debbugs.gnu.org/cgi/bugreport.cgi?msg=3D131;bug=3D28004#131
> >=20
>=20
>=20
> This looks like a lot of work. Thank you!
>=20
> I quickly tried to apply and build the patch and have two first remarks:
>=20
> The file says:
>=20
> ;;; Copyright =C2=A9 2016, 2017, 2018 Marius Bakke <mbakke@HIDDEN>
>=20
> I haven't followed history, have you worked on this since 2016?

Marius, myself (and others?) have been working on this at least since Octob=
er 2017.
I did a search, and indeed: Date: Tue, 27 Sep 2016 07:39:10 +0000 ... this =
is when I
first send the original Inox WIP. Wow.

> One patch has a hash-mismatch:
>=20
> Starting download of /gnu/store/q8hlws48cjfcmz6i40jrnxn3kp750gy4-chromium=
-icu.patch
> From https://anonscm.debian.org/cgit/pkg-chromium/pkg-chromium.git/plain/=
debian/patches/system/icu.patch?id=3Ddebian/64.0.3282.119-2...
>  icu.patch  2KiB                    1.8MiB/s 00:00 [####################]=
 100.0%
> output path `/gnu/store/q8hlws48cjfcmz6i40jrnxn3kp750gy4-chromium-icu.pat=
ch' should have sha256 hash `0kf77d8lyma3w0xpgfv2k0c741zp6ii08gzllfja6d5s59=
c15ylv', instead has `19r0bpv2hapzq5m0m7rlz1dwn3h2ijgkilb2hmhw56qvwpbw0b59'
> @ build-failed /gnu/store/cqdllqn8ig5wnjn0yqvnh4vlzsvnpzv6-chromium-icu.p=
atch.drv - 1 output path `/gnu/store/q8hlws48cjfcmz6i40jrnxn3kp750gy4-chrom=
ium-icu.patch' should have sha256 hash `0kf77d8lyma3w0xpgfv2k0c741zp6ii08gz=
llfja6d5s59c15ylv', instead has `19r0bpv2hapzq5m0m7rlz1dwn3h2ijgkilb2hmhw56=
qvwpbw0b59'
> cannot build derivation `/gnu/store/vacxbwsprcp52vp6q975450zi091dak2-chro=
mium-64.0.3282.186.tar.xz.drv': 1 dependencies couldn't be built
> @ build-started /gnu/store/7q53inn1v32b5fain0h0wcrliclf0ff1-libvpx+experi=
mental-1.7.0.drv - x86_64-linux /var/log/guix/drvs/7q//53inn1v32b5fain0h0wc=
rliclf0ff1-libvpx+experimental-1.7.0.drv.bz2
> cannot build derivation `/gnu/store/5qv7anaaqk4576pma9mhcsz1nhrx1n01-chro=
mium-64.0.3282.186.drv': 1 dependencies couldn't be built
> guix build: error: build failed: build of `/gnu/store/5qv7anaaqk4576pma9m=
hcsz1nhrx1n01-chromium-64.0.3282.186.drv' failed
>=20
> I looked into the file and it looks reasonable, like a patch-file. It has=
 no download errors.
>=20
> It starts like this:
>=20
> description: backwards compatibility for older versions of icu
> author: Michael Gilbert <mgilbert@HIDDEN>
>=20
> --- a/v8/src/runtime/runtime-intl.cc
> +++ b/v8/src/runtime/runtime-intl.cc
> @@ -627,7 +627,11 @@ RUNTIME_FUNCTION(Runtime_PluralRulesSele
>=20
> ...
>=20
> Can you check this file again?

With the patch Marius send yesterday it works for me.

> Bj=C3=B6rn
>=20
>=20



--=20
A88C8ADD129828D7EAC02E52E22F9BBFEE348588
https://n0.is
--bwzlrzka7gfznhcm
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQIzBAABCgAdFiEEqIyK3RKYKNfqwC5S4i+bv+40hYgFAlqV1D0ACgkQ4i+bv+40
hYhqAQ//UY2/WT2moFhQDbhUIXhDTt/k+FmWuYcTbFJku1s6nYyPQDas90ctE1wH
APbD7Zmv017EYCUIVSSiloboT1Q5EnNAHzgJwtcKCkRhVNpfTXaIG+vW6xXcbya0
bVcyKJ8KdjVrcOPlAopepI6uWuqSF6EL3LJG99iO6FySNDEDQ+20ZONXQX5g99UJ
v7uSaFgc51OHu3LNaaT+1K1DC8CgwdekhTIr/dI1vfhh42Zz+HMVv7pm/8my4VlD
KxUvaKRuNhU4SPbzWKSb9fKO0qfB2SysCMYpwPXkFCat2RALKNWxJfQj2ytTWIuN
br80H7DwsWCtaUDcCG240JGX8+4cag/lwVBYK+w++5swbV+Li/TndPuJLDvUj1x4
v0xRu4IXC4vCZ3xLTMBjHLxARUxpcIobwSSUEirKliMAi6BXsNp4y/l4L/9TNlMN
rIZYxosvPu3cZDPyJwnuAZuIAlBi0If+uKGht6GeThQKMpfktzvrdWfBEa+KQfjN
nLHqu3tzrC7Z74h0su3DZpXrX2ftA1Zt8ixVszE4Bu47cfhjp3KahrGgsc/hfVXv
KQxcYgCbW//gYJOjLmily/oR35X8nmQscXvdyp8KtTPQBWiCxWQZ+pia6TXw3/3c
Klvd9263lF4zAmfM6sgWevzOQ+1zWikEm7IHmpsFr1lZRwz86MU=
=ei6V
-----END PGP SIGNATURE-----

--bwzlrzka7gfznhcm--




Information forwarded to guix-patches@HIDDEN:
bug#28004; Package guix-patches. Full text available.

Message received at 28004 <at> debbugs.gnu.org:


Received: (at 28004) by debbugs.gnu.org; 27 Feb 2018 02:02:04 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon Feb 26 21:02:04 2018
Received: from localhost ([127.0.0.1]:34166 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1eqUai-0006y6-El
	for submit <at> debbugs.gnu.org; Mon, 26 Feb 2018 21:02:04 -0500
Received: from eggs.gnu.org ([208.118.235.92]:51549)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <mtg@HIDDEN>) id 1eqUag-0006xc-3o
 for 28004 <at> debbugs.gnu.org; Mon, 26 Feb 2018 21:02:02 -0500
Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)
 (envelope-from <mtg@HIDDEN>) id 1eqUaa-0004EO-2I
 for 28004 <at> debbugs.gnu.org; Mon, 26 Feb 2018 21:01:57 -0500
X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org
X-Spam-Level: 
X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,T_RP_MATCHES_RCVD
 autolearn=disabled version=3.3.2
Received: from fencepost.gnu.org ([2001:4830:134:3::e]:58129)
 by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from <mtg@HIDDEN>)
 id 1eqUaZ-0004EI-U2; Mon, 26 Feb 2018 21:01:55 -0500
Received: from localhost ([::1]:33029 helo=mikegerwitz-pc.gerwitz.local)
 by fencepost.gnu.org with esmtps (TLS1.2:DHE_RSA_AES_128_CBC_SHA1:128)
 (Exim 4.82) (envelope-from <mtg@HIDDEN>)
 id 1eqUaZ-0006wG-Ho; Mon, 26 Feb 2018 21:01:55 -0500
From: Mike Gerwitz <mtg@HIDDEN>
To: Marius Bakke <mbakke@HIDDEN>
Subject: Re: [bug#28004] Chromium
In-Reply-To: <87vaejvclc.fsf@HIDDEN> (Marius Bakke's message of "Mon, 26
 Feb 2018 19:18:39 +0100")
Date: Mon, 26 Feb 2018 21:00:49 -0500
Message-ID: <87k1uznqcu.fsf@HIDDEN>
References: <87y3qvb15k.fsf@HIDDEN>
 <20171010131949.y43plpzxbppvrigr@abyayala> <87lgkha2cx.fsf@HIDDEN>
 <20171012195628.GA31843@HIDDEN> <87shensfq6.fsf@HIDDEN>
 <87o9p45bb6.fsf@HIDDEN> <20180104191648.custe7w3l57fvbac@abyayala>
 <87wp0s2ewl.fsf@HIDDEN> <20180108232042.nqjurjr2bcfl2yyc@abyayala>
 <87373cey5b.fsf@HIDDEN> <87vag16g5z.fsf@HIDDEN>
 <87fu75aar5.fsf@HIDDEN> <874lnkr0vf.fsf@HIDDEN>
 <87vaejvclc.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.3 (gnu/linux)
OpenPGP: id=22175B02E626BC98D7C0C2E5F22BB8158EE30EAB
MIME-Version: 1.0
Content-Type: multipart/signed; boundary="=-=-=";
 micalg=pgp-sha512; protocol="application/pgp-signature"
X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic]
X-Received-From: 2001:4830:134:3::e
X-Spam-Score: -5.0 (-----)
X-Debbugs-Envelope-To: 28004
Cc: 28004 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -5.0 (-----)

--=-=-=
Content-Type: text/plain
Content-Transfer-Encoding: quoted-printable

On Mon, Feb 26, 2018 at 19:18:39 +0100, Marius Bakke wrote:
> Now, when launching the browser for the first time, it *still* connects
> to Google services.  After a while it also does a lookup for AdWords...

Do you know what code initiates this?  Would it be easy to remove, and
would that harm other functionality?

Saying that it only runs the first time implies to me that there's a
flag, and that perhaps the flag can either be permanently set or the
conditional triggering this behavior removed.

=2D-=20
Mike Gerwitz
Free Software Hacker+Activist | GNU Maintainer & Volunteer
GPG: D6E9 B930 028A 6C38 F43B  2388 FEF6 3574 5E6F 6D05
https://mikegerwitz.com

--=-=-=
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2

iQIcBAEBCgAGBQJalLvRAAoJEIyRe39dxRuigesP+wTO/zFQ29yQM6Q/PjL8rMoJ
LXkpDz+FNhMHgHHFVZ8AakPeRT+EqURy6lUybc3xyY0c+09Y0GvB51GJaFccHqIC
VYGUIrAWqvAQVfZBmu/DJ2olDt2RDfRTy2KmIYU8ML97tNg9JaxUb48VLLcuNoRY
n9nSecLBtmJAqoAAN8SguoV3wMVnMXprtjMeUfF9vrrJLRLmshs8eD84YWXJpxmq
Vxa2MbkyQFYpR4aLbKiCQ5eb9guH0AA0DC1iqq5AJ5svaR/bFz8xKbPVbCnsva3S
cXF7YJOCpCwTmzSkE7BQ/PaYMg3aOPyFWoFPwy0dQ2xsNiLwN8dwvhwuclbiXDwK
1FziPXIzva6Z+FYbHDTCWj1w4IVNUCLl078gQXhwPqz64ImBlM5zLPwZJGNTj5iJ
H6O1DgkTB1YpgVl0iXM4DBZUbfXimVFfhKeD9ufJIHwsUX2wAmJ5HfWrQhro71xy
BqluXS5b24E0ImJQsDp5DzgCO0jvAjbh0kigpAvkpq9V3GQHvFVk1u4XgXWEqhJ5
75pRRrXfBwbn/duR1e8Y0E7HxJbR8Ihtjae8GYkvBWfpjhtwnQCcWD8EfSGDG4Pb
lApFzxGBGtcEwtNHbbMbcXNFppUfipXM2vrSh1nJ7FKFXKzSkBlIOTgkMgxSVcbH
5HHvXtQ7KRkA5MdOF1yO
=sK36
-----END PGP SIGNATURE-----
--=-=-=--




Information forwarded to guix-patches@HIDDEN:
bug#28004; Package guix-patches. Full text available.

Message received at 28004 <at> debbugs.gnu.org:


Received: (at 28004) by debbugs.gnu.org; 26 Feb 2018 22:41:53 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon Feb 26 17:41:53 2018
Received: from localhost ([127.0.0.1]:34088 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1eqRSz-0000X7-IH
	for submit <at> debbugs.gnu.org; Mon, 26 Feb 2018 17:41:53 -0500
Received: from m4s11.vlinux.de ([83.151.27.109]:44155 helo=bjoernhoefling.de)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <bjoern.hoefling@HIDDEN>)
 id 1eqRSx-0000Wx-QF
 for 28004 <at> debbugs.gnu.org; Mon, 26 Feb 2018 17:41:52 -0500
Received: from alma-ubu (pD951FC9C.dip0.t-ipconnect.de [217.81.252.156])
 (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits))
 (No client certificate requested)
 by bjoernhoefling.de (Postfix) with ESMTPSA id 95ECC3FF4E;
 Mon, 26 Feb 2018 23:41:49 +0100 (CET)
Date: Mon, 26 Feb 2018 23:41:44 +0100
From: =?UTF-8?B?QmrDtnJuIEjDtmZsaW5n?= <bjoern.hoefling@HIDDEN>
To: Marius Bakke <mbakke@HIDDEN>
Subject: Re: [bug#28004] Chromium
Message-ID: <20180226234144.032af030@alma-ubu>
In-Reply-To: <87muzvv7ku.fsf@HIDDEN>
References: <87shensfq6.fsf@HIDDEN> <87o9p45bb6.fsf@HIDDEN>
 <20180104191648.custe7w3l57fvbac@abyayala>
 <87wp0s2ewl.fsf@HIDDEN>
 <20180108232042.nqjurjr2bcfl2yyc@abyayala>
 <87373cey5b.fsf@HIDDEN> <87vag16g5z.fsf@HIDDEN>
 <87fu75aar5.fsf@HIDDEN> <874lnkr0vf.fsf@HIDDEN>
 <87vaejvclc.fsf@HIDDEN>
 <20180226200133.zsnahblbgzovrtmu@abyayala>
 <87muzvv7ku.fsf@HIDDEN>
X-Mailer: Claws Mail 3.13.2 (GTK+ 2.24.30; x86_64-pc-linux-gnu)
MIME-Version: 1.0
Content-Type: multipart/signed; micalg=pgp-sha1;
 boundary="Sig_/fxb2NNCr_6_UdHqSisnLt8i"; protocol="application/pgp-signature"
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 28004
Cc: 28004 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: 0.0 (/)

--Sig_/fxb2NNCr_6_UdHqSisnLt8i
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

Hi Marius,

On Mon, 26 Feb 2018 21:06:57 +0100
Marius Bakke <mbakke@HIDDEN> wrote:

> ng0 <ng0@HIDDEN> writes:
>=20
> > Marius Bakke transcribed 2.1K bytes: =20
> >> Mike Gerwitz <mtg@HIDDEN> writes:
> >>  =20
> >> > On Tue, Jan 16, 2018 at 20:01:34 +0100, Marius Bakke wrote: =20
> >> >> If there are no objections, expect to see this in 'master' in
> >> >> 1-2 weeks. =20
> >> >
> >> > I want to express gratitude for your hard work on this---given
> >> > that IceCat does not contain many of the FF devtool updates,
> >> > Chromium is very desirable for web development.  It's also
> >> > needed for certain Node.js tools, like node-inspector.
> >> >
> >> > So, thank you! =20
> >>=20
> >> Thank *you* for the kind words! :-)
> >>=20
> >> Here is the latest iteration of this patch.  New in this version:
> >>=20
> >> * Chromium 64 (duh).
> >> * The 'delete-bundled-software' phase has been moved to a snippet,
> >>   shaving ~100MiB (~22%) off the compressed tarball size (and
> >>   drastically reduces (de)compression time).
> >> * The New Tab page does not show any thumbnails for new profiles. =20
> >
> > I think you forgot to attach the patches :) =20
>=20
> Derp.  I realized that and just used `git send-email`[0], but have
> attached it here for convenience since the debbugs web UI doesn't
> allow easy download of a raw message.
>=20
> [0] https://debbugs.gnu.org/cgi/bugreport.cgi?msg=3D131;bug=3D28004#131
>=20


This looks like a lot of work. Thank you!

I quickly tried to apply and build the patch and have two first remarks:

The file says:

;;; Copyright =C2=A9 2016, 2017, 2018 Marius Bakke <mbakke@HIDDEN>

I haven't followed history, have you worked on this since 2016?

One patch has a hash-mismatch:

Starting download of /gnu/store/q8hlws48cjfcmz6i40jrnxn3kp750gy4-chromium-i=
cu.patch
=46rom https://anonscm.debian.org/cgit/pkg-chromium/pkg-chromium.git/plain/de=
bian/patches/system/icu.patch?id=3Ddebian/64.0.3282.119-2...
 icu.patch  2KiB                    1.8MiB/s 00:00 [####################] 1=
00.0%
output path `/gnu/store/q8hlws48cjfcmz6i40jrnxn3kp750gy4-chromium-icu.patch=
' should have sha256 hash `0kf77d8lyma3w0xpgfv2k0c741zp6ii08gzllfja6d5s59c1=
5ylv', instead has `19r0bpv2hapzq5m0m7rlz1dwn3h2ijgkilb2hmhw56qvwpbw0b59'
@ build-failed /gnu/store/cqdllqn8ig5wnjn0yqvnh4vlzsvnpzv6-chromium-icu.pat=
ch.drv - 1 output path `/gnu/store/q8hlws48cjfcmz6i40jrnxn3kp750gy4-chromiu=
m-icu.patch' should have sha256 hash `0kf77d8lyma3w0xpgfv2k0c741zp6ii08gzll=
fja6d5s59c15ylv', instead has `19r0bpv2hapzq5m0m7rlz1dwn3h2ijgkilb2hmhw56qv=
wpbw0b59'
cannot build derivation `/gnu/store/vacxbwsprcp52vp6q975450zi091dak2-chromi=
um-64.0.3282.186.tar.xz.drv': 1 dependencies couldn't be built
@ build-started /gnu/store/7q53inn1v32b5fain0h0wcrliclf0ff1-libvpx+experime=
ntal-1.7.0.drv - x86_64-linux /var/log/guix/drvs/7q//53inn1v32b5fain0h0wcrl=
iclf0ff1-libvpx+experimental-1.7.0.drv.bz2
cannot build derivation `/gnu/store/5qv7anaaqk4576pma9mhcsz1nhrx1n01-chromi=
um-64.0.3282.186.drv': 1 dependencies couldn't be built
guix build: error: build failed: build of `/gnu/store/5qv7anaaqk4576pma9mhc=
sz1nhrx1n01-chromium-64.0.3282.186.drv' failed

I looked into the file and it looks reasonable, like a patch-file. It has n=
o download errors.

It starts like this:

description: backwards compatibility for older versions of icu
author: Michael Gilbert <mgilbert@HIDDEN>

--- a/v8/src/runtime/runtime-intl.cc
+++ b/v8/src/runtime/runtime-intl.cc
@@ -627,7 +627,11 @@ RUNTIME_FUNCTION(Runtime_PluralRulesSele

...

Can you check this file again?

Bj=C3=B6rn



--Sig_/fxb2NNCr_6_UdHqSisnLt8i
Content-Type: application/pgp-signature
Content-Description: OpenPGP digital signature

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2

iEYEARECAAYFAlqUjSkACgkQvyhstlk+X/3RbACgoiitBCu1qBpIOijeNOOUXK7t
8yUAn1Gu6XXYAOwrG82NpCf0PDWqp3Km
=1Egd
-----END PGP SIGNATURE-----

--Sig_/fxb2NNCr_6_UdHqSisnLt8i--




Information forwarded to guix-patches@HIDDEN:
bug#28004; Package guix-patches. Full text available.

Message received at 28004 <at> debbugs.gnu.org:


Received: (at 28004) by debbugs.gnu.org; 26 Feb 2018 20:34:34 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon Feb 26 15:34:34 2018
Received: from localhost ([127.0.0.1]:33977 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1eqPTm-00047B-JD
	for submit <at> debbugs.gnu.org; Mon, 26 Feb 2018 15:34:34 -0500
Received: from aibo.runbox.com ([91.220.196.211]:58464)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <ng0@HIDDEN>) id 1eqPTk-000472-99
 for 28004 <at> debbugs.gnu.org; Mon, 26 Feb 2018 15:34:33 -0500
Received: from [10.9.9.212] (helo=mailfront12.runbox.com)
 by mailtransmit02.runbox with esmtp (Exim 4.86_2)
 (envelope-from <ng0@HIDDEN>)
 id 1eqPTh-0007DV-AW; Mon, 26 Feb 2018 21:34:29 +0100
Received: from dslb-178-001-153-226.178.001.pools.vodafone-ip.de
 ([178.1.153.226] helo=localhost)
 by mailfront12.runbox.com with esmtpsa (uid:892961 )
 (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82)
 id 1eqPTc-0000kN-E9; Mon, 26 Feb 2018 21:34:24 +0100
Date: Mon, 26 Feb 2018 20:34:34 +0000
From: ng0 <ng0@HIDDEN>
To: Marius Bakke <mbakke@HIDDEN>
Subject: Re: [bug#28004] Chromium
Message-ID: <20180226203434.s4rtbfprzwvziutz@abyayala>
References: <20180104191648.custe7w3l57fvbac@abyayala>
 <87wp0s2ewl.fsf@HIDDEN>
 <20180108232042.nqjurjr2bcfl2yyc@abyayala>
 <87373cey5b.fsf@HIDDEN> <87vag16g5z.fsf@HIDDEN>
 <87fu75aar5.fsf@HIDDEN> <874lnkr0vf.fsf@HIDDEN>
 <87vaejvclc.fsf@HIDDEN>
 <20180226200133.zsnahblbgzovrtmu@abyayala>
 <87muzvv7ku.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: multipart/signed; micalg=pgp-sha512;
 protocol="application/pgp-signature"; boundary="6bhmuwtunj4qmmll"
Content-Disposition: inline
In-Reply-To: <87muzvv7ku.fsf@HIDDEN>
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 28004
Cc: Mike Gerwitz <mtg@HIDDEN>, ng0 <ng0@HIDDEN>, 28004 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -0.7 (/)


--6bhmuwtunj4qmmll
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

Marius Bakke transcribed 43K bytes:
> ng0 <ng0@HIDDEN> writes:
>=20
> > Marius Bakke transcribed 2.1K bytes:
> >> Mike Gerwitz <mtg@HIDDEN> writes:
> >>=20
> >> > On Tue, Jan 16, 2018 at 20:01:34 +0100, Marius Bakke wrote:
> >> >> If there are no objections, expect to see this in 'master' in 1-2 w=
eeks.
> >> >
> >> > I want to express gratitude for your hard work on this---given that
> >> > IceCat does not contain many of the FF devtool updates, Chromium is =
very
> >> > desirable for web development.  It's also needed for certain Node.js
> >> > tools, like node-inspector.
> >> >
> >> > So, thank you!
> >>=20
> >> Thank *you* for the kind words! :-)
> >>=20
> >> Here is the latest iteration of this patch.  New in this version:
> >>=20
> >> * Chromium 64 (duh).
> >> * The 'delete-bundled-software' phase has been moved to a snippet,
> >>   shaving ~100MiB (~22%) off the compressed tarball size (and
> >>   drastically reduces (de)compression time).
> >> * The New Tab page does not show any thumbnails for new profiles.
> >
> > I think you forgot to attach the patches :)
>=20
> Derp.  I realized that and just used `git send-email`[0], but have
> attached it here for convenience since the debbugs web UI doesn't allow
> easy download of a raw message.
>=20
> [0] https://debbugs.gnu.org/cgi/bugreport.cgi?msg=3D131;bug=3D28004#131
>=20

Great, thanks! I'll comment after building (so the usual 3 - 16 hours ;D).

Something I noticed in the past: A succesful build for Chromium depends on
the system libraries we use. The last version broke a while back when icu4c
got updated I think.
So changes need to be adjusted. We can not know when this happens, but we
can act when it happens.
--=20
ng0
A88C8ADD129828D7EAC02E52E22F9BBFEE348588
http://krosos.org | https://n0.is/~ng0/ | https://crash.cx
--6bhmuwtunj4qmmll
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQIzBAABCgAdFiEEqIyK3RKYKNfqwC5S4i+bv+40hYgFAlqUb1oACgkQ4i+bv+40
hYiK5g/+K/WMXSSybQ4bpNeGfutyEqW0dn0DvSHYcl9IrtvtAIWZ/BVZJ35fkbWL
cJ53PDD/fHcVYlFQAaWSwZmDY8UI5u4IWwx+I/bssAOm9ki1e6pu4AyXytgCXf07
f1B7y3lxIKqB3A3m/dPGRLKyuQOH/vIyPHIgKTDpX1YNzJ1hix2mOZpYbJVdPlQ0
pBCIq0n1H0qpkRsrj5ppRMfmye4Yx65ZeTnZzTEy+CZwHx9OjJjkbfUFYI/y4DFn
I+RevT0CGgZ4ItYx5uqQCibdlPBIeZ/o5JJqbb1ekQ3lx98df9Riv6Xj/vpxL6Uu
dhy8R9cv/uB3aFoU/3S7vUfwCnQQHYrUhjENMHgcSVFCL7sup0eO+KI09IoNkH4f
Pf2s7vtL/4gB3bAkavQRSBjtkYhV+WbZg5oEtK0491RcAx0L/eFvAE3ne5qSQwfZ
PLmedJ8Ek/9jlse46imDSeiKhaboZQk4z7vYOxlubFGAuaufqe1Lep6Z3MQ8G2XY
h7jKfOmeU3HiUbIU07m77Wq5A6jf/eW5kxfrJOuECu893nKJWduGn0RsIrZT7ymh
OEGOKvtVc4a91I9A3Arg7fbZMJGxFHYntq/E/pVSo1xVBfB/lXKliGZNfKJKLtGJ
ecxfRjCmXisYs+Q8LvahHn0mWmh6YG6Aur0AfkQoghVOZHQVr+o=
=iYgb
-----END PGP SIGNATURE-----

--6bhmuwtunj4qmmll--




Information forwarded to guix-patches@HIDDEN:
bug#28004; Package guix-patches. Full text available.

Message received at 28004 <at> debbugs.gnu.org:


Received: (at 28004) by debbugs.gnu.org; 26 Feb 2018 20:07:15 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon Feb 26 15:07:15 2018
Received: from localhost ([127.0.0.1]:33963 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1eqP3C-0003Sy-8m
	for submit <at> debbugs.gnu.org; Mon, 26 Feb 2018 15:07:15 -0500
Received: from out2-smtp.messagingengine.com ([66.111.4.26]:45253)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <mbakke@HIDDEN>) id 1eqP35-0003SV-Fm
 for 28004 <at> debbugs.gnu.org; Mon, 26 Feb 2018 15:07:04 -0500
Received: from compute5.internal (compute5.nyi.internal [10.202.2.45])
 by mailout.nyi.internal (Postfix) with ESMTP id 6667320C4A;
 Mon, 26 Feb 2018 15:06:59 -0500 (EST)
Received: from frontend2 ([10.202.2.161])
 by compute5.internal (MEProxy); Mon, 26 Feb 2018 15:06:59 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=fastmail.com; h=
 cc:content-type:date:from:in-reply-to:message-id:mime-version
 :references:subject:to:x-me-sender:x-me-sender:x-sasl-enc; s=
 fm2; bh=zcdiWmUEvjUidwONYN3GmXOwm3+EbItxQsRlp/IsHqo=; b=hNvLkEAr
 a6WTq9AkOnczgx3l342J3EkN4vxHQkK9Wy4XL8HnpExVoguWvMyObZMNamOeRQDB
 NOcGG73DaYAdKyfCmUske34LHhjtaxjN0g8t+xQnP1tZxy5epgJ66PHVnhlCzW1U
 g0DRhP5XjNvPKoluNgW1GKxzvw0+6ceBw6Pp8s8C/rm0v8/rNuCG2Xyhtgib9+07
 hJGJpt9T/YglYNEf5RkjsemQbwaOAagWDLtGnLL755JLiJhPYmOIVqZDuZUvotq/
 Mh95EA8SBdVXyN4sikcstXeW2KHGBvm8g254K3cPsE4Z2Uz+ik9QMgjcZyRRF6/4
 6md+wxEmn9xNVg==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
 messagingengine.com; h=cc:content-type:date:from:in-reply-to
 :message-id:mime-version:references:subject:to:x-me-sender
 :x-me-sender:x-sasl-enc; s=fm2; bh=zcdiWmUEvjUidwONYN3GmXOwm3+Eb
 ItxQsRlp/IsHqo=; b=EotWOYdSXFiIAgwghSJMFjbxVkaIbq98zapGJAf9UD96t
 ixJ19+Q2mXIDDcysp+kcJmww0l0NQPCQx6G3zAeO0EZYQBMkMRcju8vjoO9U6jel
 Ic5SbvGo7+2Ahelu6QD4E7p1nd5IrdzeAKgFlz1m0w5A6ZmYwtdm/ZBv1OZfU9h/
 Jp90YUUIpiX8+TidrIU8v//KzGGD/I3iWOgsw3UaKNV8CaSV9keOCMMb3vIvrHvU
 /gDR+wjZPk0YQOxNore5vmwr2xKH0JncjHGKuguO7zJSKd1gNoIXwSoA4hU4q4Cu
 wNl/FDGqWWH4zSWBb8/Z8fXt2ghlOjf8AM0soscjA==
X-ME-Sender: <xms:42iUWpAig9Zx9xQrOARtnsIUpXEqDMk7hgR1KIBmqUCLMB7WXREaOQ>
Received: from localhost (cm-84.214.173.174.getinternet.no [84.214.173.174])
 by mail.messagingengine.com (Postfix) with ESMTPA id A35CF24591;
 Mon, 26 Feb 2018 15:06:58 -0500 (EST)
From: Marius Bakke <mbakke@HIDDEN>
To: ng0 <ng0@HIDDEN>
Subject: Re: [bug#28004] Chromium
In-Reply-To: <20180226200133.zsnahblbgzovrtmu@abyayala>
References: <87shensfq6.fsf@HIDDEN> <87o9p45bb6.fsf@HIDDEN>
 <20180104191648.custe7w3l57fvbac@abyayala> <87wp0s2ewl.fsf@HIDDEN>
 <20180108232042.nqjurjr2bcfl2yyc@abyayala> <87373cey5b.fsf@HIDDEN>
 <87vag16g5z.fsf@HIDDEN> <87fu75aar5.fsf@HIDDEN>
 <874lnkr0vf.fsf@HIDDEN> <87vaejvclc.fsf@HIDDEN>
 <20180226200133.zsnahblbgzovrtmu@abyayala>
User-Agent: Notmuch/0.26 (https://notmuchmail.org) Emacs/25.3.1
 (x86_64-pc-linux-gnu)
Date: Mon, 26 Feb 2018 21:06:57 +0100
Message-ID: <87muzvv7ku.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: multipart/signed; boundary="==-=-=";
 micalg=pgp-sha512; protocol="application/pgp-signature"
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 28004
Cc: Mike Gerwitz <mtg@HIDDEN>, 28004 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: 0.0 (/)

--==-=-=
Content-Type: multipart/mixed; boundary="=-=-="

--=-=-=
Content-Type: text/plain
Content-Transfer-Encoding: quoted-printable

ng0 <ng0@HIDDEN> writes:

> Marius Bakke transcribed 2.1K bytes:
>> Mike Gerwitz <mtg@HIDDEN> writes:
>>=20
>> > On Tue, Jan 16, 2018 at 20:01:34 +0100, Marius Bakke wrote:
>> >> If there are no objections, expect to see this in 'master' in 1-2 wee=
ks.
>> >
>> > I want to express gratitude for your hard work on this---given that
>> > IceCat does not contain many of the FF devtool updates, Chromium is ve=
ry
>> > desirable for web development.  It's also needed for certain Node.js
>> > tools, like node-inspector.
>> >
>> > So, thank you!
>>=20
>> Thank *you* for the kind words! :-)
>>=20
>> Here is the latest iteration of this patch.  New in this version:
>>=20
>> * Chromium 64 (duh).
>> * The 'delete-bundled-software' phase has been moved to a snippet,
>>   shaving ~100MiB (~22%) off the compressed tarball size (and
>>   drastically reduces (de)compression time).
>> * The New Tab page does not show any thumbnails for new profiles.
>
> I think you forgot to attach the patches :)

Derp.  I realized that and just used `git send-email`[0], but have
attached it here for convenience since the debbugs web UI doesn't allow
easy download of a raw message.

[0] https://debbugs.gnu.org/cgi/bugreport.cgi?msg=3D131;bug=3D28004#131


--=-=-=
Content-Type: text/x-patch; charset=utf-8
Content-Disposition: attachment; filename=0001-gnu-Add-chromium.patch
Content-Transfer-Encoding: quoted-printable

From=20f00529f4cd9e2e5efef146915d217cbb413d1f1a Mon Sep 17 00:00:00 2001
From: Marius Bakke <mbakke@HIDDEN>
Date: Wed, 12 Oct 2016 17:25:05 +0100
Subject: [PATCH] gnu: Add chromium.

* gnu/packages/chromium.scm: New file.
* gnu/packages/patches/chromium-gcc.patch,
gnu/packages/patches/chromium-remove-default-history.patch: New files.
* gnu/local.mk: Record it.
=2D--
 gnu/local.mk                                       |   3 +
 gnu/packages/chromium.scm                          | 756 +++++++++++++++++=
++++
 gnu/packages/patches/chromium-gcc5.patch           |  39 ++
 .../patches/chromium-remove-default-history.patch  |  13 +
 4 files changed, 811 insertions(+)
 create mode 100644 gnu/packages/chromium.scm
 create mode 100644 gnu/packages/patches/chromium-gcc5.patch
 create mode 100644 gnu/packages/patches/chromium-remove-default-history.pa=
tch

diff --git a/gnu/local.mk b/gnu/local.mk
index fa98810d6..fb1320f7b 100644
=2D-- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -92,6 +92,7 @@ GNU_SYSTEM_MODULES =3D				\
   %D%/packages/check.scm			\
   %D%/packages/chemistry.scm			\
   %D%/packages/chez.scm				\
+  %D%/packages/chromium.scm			\
   %D%/packages/ci.scm				\
   %D%/packages/cinnamon.scm			\
   %D%/packages/cmake.scm			\
@@ -581,6 +582,8 @@ dist_patch_DATA =3D						\
   %D%/packages/patches/ceph-skip-collect-sys-info-test.patch	\
   %D%/packages/patches/ceph-skip-unittest_blockdev.patch	\
   %D%/packages/patches/chmlib-inttypes.patch			\
+  %D%/packages/patches/chromium-gcc5.patch			\
+  %D%/packages/patches/chromium-remove-default-history.patch	\
   %D%/packages/patches/clang-libc-search-path.patch		\
   %D%/packages/patches/clang-3.8-libc-search-path.patch		\
   %D%/packages/patches/clang-runtime-asan-build-fixes.patch	\
diff --git a/gnu/packages/chromium.scm b/gnu/packages/chromium.scm
new file mode 100644
index 000000000..1dd77b089
=2D-- /dev/null
+++ b/gnu/packages/chromium.scm
@@ -0,0 +1,756 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright =C2=A9 2016, 2017, 2018 Marius Bakke <mbakke@HIDDEN>
+;;;
+;;; This file is part of GNU Guix.
+;;;
+;;; GNU Guix is free software; you can redistribute it and/or modify it
+;;; under the terms of the GNU General Public License as published by
+;;; the Free Software Foundation; either version 3 of the License, or (at
+;;; your option) any later version.
+;;;
+;;; GNU Guix is distributed in the hope that it will be useful, but
+;;; WITHOUT ANY WARRANTY; without even the implied warranty of
+;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+;;; GNU General Public License for more details.
+;;;
+;;; You should have received a copy of the GNU General Public License
+;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
+
+(define-module (gnu packages chromium)
+  #:use-module ((guix licenses) #:prefix license:)
+  #:use-module (guix packages)
+  #:use-module (guix download)
+  #:use-module (guix git-download)
+  #:use-module (guix utils)
+  #:use-module (guix build-system gnu)
+  #:use-module (gnu packages)
+  #:use-module (gnu packages assembly)
+  #:use-module (gnu packages base)
+  #:use-module (gnu packages bison)
+  #:use-module (gnu packages compression)
+  #:use-module (gnu packages cups)
+  #:use-module (gnu packages curl)
+  #:use-module (gnu packages databases)
+  #:use-module (gnu packages fontutils)
+  #:use-module (gnu packages ghostscript)
+  #:use-module (gnu packages gl)
+  #:use-module (gnu packages glib)
+  #:use-module (gnu packages gnome)
+  #:use-module (gnu packages gnuzilla)
+  #:use-module (gnu packages gperf)
+  #:use-module (gnu packages gtk)
+  #:use-module (gnu packages icu4c)
+  #:use-module (gnu packages image)
+  #:use-module (gnu packages libevent)
+  #:use-module (gnu packages libffi)
+  #:use-module (gnu packages libusb)
+  #:use-module (gnu packages linux)
+  #:use-module (gnu packages kerberos)
+  #:use-module (gnu packages ninja)
+  #:use-module (gnu packages node)
+  #:use-module (gnu packages pciutils)
+  #:use-module (gnu packages photo)
+  #:use-module (gnu packages pkg-config)
+  #:use-module (gnu packages protobuf)
+  #:use-module (gnu packages pulseaudio)
+  #:use-module (gnu packages python)
+  #:use-module (gnu packages python-web)
+  #:use-module (gnu packages regex)
+  #:use-module (gnu packages serialization)
+  #:use-module (gnu packages speech)
+  #:use-module (gnu packages tls)
+  #:use-module (gnu packages valgrind)
+  #:use-module (gnu packages version-control)
+  #:use-module (gnu packages video)
+  #:use-module (gnu packages xiph)
+  #:use-module (gnu packages xml)
+  #:use-module (gnu packages xdisorg)
+  #:use-module (gnu packages xorg))
+
+(define (strip-directory-prefix pathspec)
+  "Return everything after the last '/' in PATHSPEC."
+  (let ((index (string-rindex pathspec #\/)))
+    (if index
+        (string-drop pathspec (+ 1 index))
+        pathspec)))
+
+(define (chromium-patch-file-name pathspec)
+  (let ((patch-name (strip-directory-prefix pathspec)))
+    (if (string-prefix? "chromium-" patch-name)
+        patch-name
+        (string-append "chromium-" patch-name))))
+
+;; https://anonscm.debian.org/cgit/pkg-chromium/pkg-chromium.git/tree/debi=
an/patches
+(define (debian-patch pathspec revision hash)
+  (origin
+    (method url-fetch)
+    (uri (string-append
+          "https://anonscm.debian.org/cgit/pkg-chromium/pkg-chromium.git"
+          "/plain/debian/patches/" pathspec "?id=3D" revision))
+    (sha256 (base32 hash))
+    (file-name (chromium-patch-file-name pathspec))))
+
+;; https://gitweb.gentoo.org/repo/gentoo.git/tree/www-client/chromium/files
+(define (gentoo-patch pathspec revision hash)
+  (origin
+    (method url-fetch)
+    (uri (string-append
+          "https://gitweb.gentoo.org/repo/gentoo.git/plain/www-client"
+          "/chromium/files/" pathspec "?id=3D" revision))
+    (sha256 (base32 hash))
+    (file-name (chromium-patch-file-name pathspec))))
+
+;; https://github.com/gcarq/inox-patchset
+(define (inox-patch pathspec revision hash)
+  (origin
+    (method url-fetch)
+    (uri (string-append "https://raw.githubusercontent.com/gcarq/inox-patc=
hset/"
+                        revision "/" pathspec))
+    (sha256 (base32 hash))
+    (file-name (chromium-patch-file-name pathspec))))
+
+;; https://github.com/NixOS/nixpkgs/tree/master/pkgs/applications/networki=
ng/browsers/chromium
+(define (nixos-patch pathspec revision hash)
+  (origin
+    (method url-fetch)
+    (uri (string-append "https://raw.githubusercontent.com/NixOS/nixpkgs/"
+                        revision "/pkgs/applications/networking/browsers"
+                        "/chromium/patches/" pathspec))
+    (sha256 (base32 hash))
+    (file-name (chromium-patch-file-name pathspec))))
+
+;; Fix build for older versions of GCC.
+(define %chromium-angle-gcc-compat.patch
+  (gentoo-patch "chromium-angle-r0.patch"
+                "08971011b4d6fa37aa906920fba7564e48b9e60b"
+                "0izdrqwsyr48117dhvwdsk8c6dkrnq2njida1q4mb1lagvwbz7gc"))
+
+;; https://webrtc-review.googlesource.com/9384
+(define %chromium-webrtc-gcc-compat.patch
+  (gentoo-patch "chromium-webrtc-r0.patch"
+                "08971011b4d6fa37aa906920fba7564e48b9e60b"
+                "0qj5b4w9kav51ylpdf38vm5w7p2gx4qp8p45vrfggp7miicg9cmw"))
+
+;; https://chromium-review.googlesource.com/813737
+(define %chromium-memcpy.patch
+  (gentoo-patch "chromium-memcpy-r0.patch"
+                "08971011b4d6fa37aa906920fba7564e48b9e60b"
+                "1d3vra59wjg2lva7ddv55ff6l57mk9k50llsplr0b7vxk0lh0ps5"))
+
+(define %chromium-system-nspr.patch
+  (debian-patch "system/nspr.patch"
+                "debian/64.0.3282.119-2"
+                "0pcwk3jsx8hjzd4s1v7p11jd8vpdqfnq82di31222cjx0bl6275r"))
+
+(define %chromium-system-libevent.patch
+  (debian-patch "system/event.patch"
+                "debian/64.0.3282.119-2"
+                "1dxzn1yf05mzf21c25sczj4zhkknf03x9bc3xzznqpvnsf3cjpr0"))
+
+(define %chromium-system-icu.patch
+  (debian-patch "system/icu.patch"
+                "debian/64.0.3282.119-2"
+                "0kf77d8lyma3w0xpgfv2k0c741zp6ii08gzllfja6d5s59c15ylv"))
+
+;; Don't show a warning about missing API keys.
+(define %chromium-disable-api-keys-warning.patch
+  (debian-patch "disable/google-api-warning.patch"
+                "debian/64.0.3282.119-2"
+                "1932xkrskm4nnglzj6xfjpycx4chsycj9ay3ipkq5f6xk21a1xm0"))
+
+;; Add DuckDuckGo and set it as the default search engine.
+(define %chromium-duckduckgo.patch
+  (inox-patch "0011-add-duckduckgo-search-engine.patch"
+              "d655594419af6b82a2a070e4d3eedd926a04fa79"
+              "0p8x98g71ngkd3wbl5q36wrl18ff185sfrr5fcwjbgrv3v7r6ra7"))
+
+;; Don't start a "Login Wizard" at first launch.
+(define %chromium-first-run.patch
+  (inox-patch "0018-disable-first-run-behaviour.patch"
+              "d655594419af6b82a2a070e4d3eedd926a04fa79"
+              "1y4zsqqf2125jkb1phwy9g5hcbd9xhyv5lr4xcaly66rpdzx2ayb"))
+
+;; Use privacy-preserving defaults.
+(define %chromium-default-preferences.patch
+  (inox-patch "0006-modify-default-prefs.patch"
+              "d655594419af6b82a2a070e4d3eedd926a04fa79"
+              "0qpd5l3wiw7325cicjzvdql0gay7jl4afml4nrbmy3w40i1ai2rf"))
+
+;; Recent versions of Chromium may load a remote search engine on the
+;; New Tab Page, causing unnecessary and involuntary network traffic.
+(define %chromium-restore-classic-ntp.patch
+  (inox-patch "0008-restore-classic-ntp.patch"
+              "d655594419af6b82a2a070e4d3eedd926a04fa79"
+              "0lj018q6vd6m43cj8rnraqgi4lp2iq76i1i0078dav4cxnzdryfs"))
+
+(define opus+custom
+  (package (inherit opus)
+           (name "opus+custom")
+           (arguments
+            `(;; Opus Custom is an optional extension of the Opus
+              ;; specification that allows for unsupported frame
+              ;; sizes.  Chromium requires that this is enabled.
+              #:configure-flags '("--enable-custom-modes")
+              ,@(package-arguments opus)))))
+
+(define libvpx+experimental
+  (package
+    (inherit libvpx)
+    (name "libvpx+experimental")
+    (arguments
+     `(,@(substitute-keyword-arguments (package-arguments libvpx)
+           ((#:configure-flags flags ''())
+            ;; Spatial SVC is an experimental VP9 encoder required by Chro=
mium.
+            `(cons* "--enable-experimental" "--enable-spatial-svc"
+                    ,flags)))))))
+
+(define-public chromium
+  (package
+    (name "chromium")
+    (version "64.0.3282.186")
+    (synopsis "Graphical web browser")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "https://commondatastorage.googleapis.co=
m/"
+                                  "chromium-browser-official/chromium-"
+                                  version ".tar.xz"))
+              (sha256
+               (base32
+                "0q0q1whspmzyln04gxhgl3jd2vrgb4imh8r9qw6c06i3b63j3l2z"))
+              (patches (list %chromium-duckduckgo.patch
+                             %chromium-default-preferences.patch
+                             %chromium-first-run.patch
+                             %chromium-restore-classic-ntp.patch
+                             %chromium-angle-gcc-compat.patch
+                             %chromium-webrtc-gcc-compat.patch
+                             %chromium-memcpy.patch
+                             %chromium-system-icu.patch
+                             %chromium-system-nspr.patch
+                             %chromium-system-libevent.patch
+                             %chromium-disable-api-keys-warning.patch
+                             (search-patch "chromium-gcc5.patch")
+                             (search-patch "chromium-remove-default-histor=
y.patch")))
+              (modules '((srfi srfi-1)
+                         (ice-9 ftw)
+                         (ice-9 regex)
+                         (guix build utils)))
+              (snippet
+               '(begin
+                  (let ((preserved-files
+                         (map
+                          (lambda (path) (string-append "./" path))
+                          (list
+                           "base/third_party/dmg_fp"
+                           "base/third_party/dynamic_annotations"
+                           "base/third_party/icu"
+                           "base/third_party/libevent"
+                           "base/third_party/nspr"
+                           "base/third_party/superfasthash"
+                           "base/third_party/symbolize" ;glog
+                           "base/third_party/xdg_mime"
+                           "base/third_party/xdg_user_dirs"
+                           "buildtools/third_party/libc++"
+                           "chrome/third_party/mozilla_security_manager"
+                           "courgette/third_party"
+                           "net/third_party/mozilla_security_manager"
+                           "net/third_party/nss"
+                           "third_party/adobe/flash/flapper_version.h"
+                           ;; FIXME: This is used in:
+                           ;; * ui/webui/resources/js/analytics.js
+                           ;; * ui/file_manager/
+                           "third_party/analytics"
+                           "third_party/angle"
+                           "third_party/angle/src/common/third_party/base"
+                           "third_party/angle/src/common/third_party/smhas=
her"
+                           "third_party/angle/src/third_party/compiler"
+                           "third_party/angle/src/third_party/libXNVCtrl"
+                           "third_party/angle/src/third_party/trace_event"
+                           "third_party/blink"
+                           "third_party/boringssl"
+                           "third_party/boringssl/src/third_party/fiat"
+                           "third_party/breakpad"
+                           "third_party/brotli"
+                           "third_party/cacheinvalidation"
+                           "third_party/catapult"
+                           "third_party/catapult/common/py_vulcanize/third=
_party/rcssmin"
+                           "third_party/catapult/common/py_vulcanize/third=
_party/rjsmin"
+                           "third_party/catapult/third_party/polymer"
+                           "third_party/catapult/tracing/third_party/d3"
+                           "third_party/catapult/tracing/third_party/gl-ma=
trix"
+                           "third_party/catapult/tracing/third_party/jszip"
+                           "third_party/catapult/tracing/third_party/mannw=
hitneyu"
+                           "third_party/catapult/tracing/third_party/oboe"
+                           "third_party/catapult/tracing/third_party/pako"
+                           "third_party/ced"
+                           "third_party/cld_3"
+                           "third_party/crc32c"
+                           "third_party/cros_system_api"
+                           "third_party/dom_distiller_js"
+                           "third_party/fips181"
+                           "third_party/flatbuffers"
+                           ;; PDFium requires a private freetype API.
+                           ;; <https://bugs.chromium.org/p/pdfium/issues/d=
etail?id=3D733>
+                           "third_party/freetype/src/src/psnames/pstables.=
h"
+                           "third_party/glslang-angle"
+                           "third_party/google_input_tools"
+                           "third_party/google_input_tools/third_party/clo=
sure_library"
+                           (string-append "third_party/google_input_tools/=
third_party"
+                                          "/closure_library/third_party/cl=
osure")
+                           "third_party/googletest"
+                           "third_party/harfbuzz-ng"
+                           "third_party/hunspell"
+                           "third_party/iccjpeg"
+                           "third_party/inspector_protocol"
+                           "third_party/jinja2"
+                           "third_party/jstemplate"
+                           "third_party/khronos"
+                           "third_party/leveldatabase"
+                           "third_party/libXNVCtrl"
+                           "third_party/libaddressinput"
+                           "third_party/libjingle_xmpp"
+                           "third_party/libphonenumber"
+                           "third_party/libsecret" ;FIXME: needs pkg-confi=
g support.
+                           "third_party/libsrtp"   ;TODO: Requires libsrtp=
@2.
+                           "third_party/libudev"
+                           "third_party/libwebm"
+                           "third_party/libxml"
+                           "third_party/libyuv"
+                           "third_party/lss"
+                           "third_party/lzma_sdk"
+                           "third_party/markupsafe"
+                           "third_party/mesa"
+                           "third_party/metrics_proto"
+                           "third_party/modp_b64"
+                           "third_party/mt19937ar"
+                           "third_party/node"
+                           (string-append "third_party/node/node_modules/"
+                                          "polymer-bundler/lib/third_party=
/UglifyJS2")
+                           "third_party/openmax_dl"
+                           "third_party/ots"
+                           "third_party/pdfium"
+                           "third_party/pdfium/third_party"
+                           "third_party/ply"
+                           "third_party/polymer"
+                           "third_party/protobuf"
+                           "third_party/protobuf/third_party/six"
+                           "third_party/qcms"
+                           "third_party/sfntly"
+                           "third_party/skia"
+                           "third_party/skia/third_party/vulkan"
+                           "third_party/skia/third_party/gif"
+                           "third_party/smhasher"
+                           "third_party/speech-dispatcher"
+                           "third_party/spirv-headers"
+                           "third_party/spirv-tools-angle"
+                           "third_party/sqlite"
+                           "third_party/swiftshader"
+                           "third_party/swiftshader/third_party"
+                           "third_party/usb_ids"
+                           "third_party/usrsctp"
+                           "third_party/vulkan"
+                           "third_party/vulkan-validation-layers"
+                           "third_party/WebKit"
+                           "third_party/web-animations-js"
+                           "third_party/webrtc"
+                           "third_party/webrtc_overrides"
+                           "third_party/widevine/cdm/widevine_cdm_version.=
h"
+                           "third_party/widevine/cdm/widevine_cdm_common.h"
+                           "third_party/woff2"
+                           "third_party/xdg-utils"
+                           "third_party/yasm/run_yasm.py"
+                           "third_party/zlib/google"
+                           "url/third_party/mozilla"
+                           "v8/src/third_party/valgrind"
+                           "v8/third_party/inspector_protocol"))))
+
+                    ;; This is an implementation of
+                    ;; "build/linux/unbundle/remove_bundled_libraries.py".
+                    ;; It traverses any "third_party" directory and deletes
+                    ;; files that are:
+                    ;; * not ending with ".gn" or ".gni"; or
+                    ;; * not explicitly named as argument (folder or file).
+                    ;; TODO: Remove empty directories.
+                    (define (delete-files-except exceptions dir)
+
+                      (define (enter? name stat result)
+                        (not (member name exceptions)))
+
+                      (define (leaf name stat result)
+                        (let ((protected-files (make-regexp "\\.(gn|gyp)i?=
$"
+                                                            regexp/icase)))
+                          (unless (or (member name exceptions)
+                                      (regexp-exec protected-files name))
+                            (delete-file name))))
+
+                      (file-system-fold enter?
+                                        leaf
+                                        (lambda (dir stat result) result) =
;down
+                                        (lambda (dir stat result) result) =
;up
+                                        (lambda (dir stat result) result) =
;skip
+                                        (lambda (dir stat result) result) =
;error
+                                        #t
+                                        dir))
+
+                    (for-each (lambda (third-party)
+                                (delete-files-except preserved-files
+                                                     third-party))
+                              (find-files "." "^third_party$" #:directorie=
s? #t))
+
+                    ;; Replace GN files from third_party with shims for bu=
ilding
+                    ;; against system libraries.  Keep this list in sync w=
ith
+                    ;; "build/linux/unbundle/replace_gn_files.py".
+                    (for-each (lambda (pair)
+                                (let ((source (string-append
+                                               "build/linux/unbundle/" (ca=
r pair)))
+                                      (dest (cdr pair)))
+                                  (copy-file source dest)))
+                              (list
+                               '("ffmpeg.gn" . "third_party/ffmpeg/BUILD.g=
n")
+                               '("flac.gn" . "third_party/flac/BUILD.gn")
+                               '("freetype.gn" . "third_party/freetype/BUI=
LD.gn")
+                               ;; FIXME: This is no longer supported since=
 63.
+                               ;;'("harfbuzz-ng.gn" . "third_party/harfbuz=
z-ng/BUILD.gn")
+                               '("icu.gn" . "third_party/icu/BUILD.gn")
+                               '("libdrm.gn" . "third_party/libdrm/BUILD.g=
n")
+                               '("libevent.gn" . "base/third_party/libeven=
t/BUILD.gn")
+                               '("libjpeg.gn" .
+                                 "build/secondary/third_party/libjpeg_turb=
o/BUILD.gn")
+                               '("libpng.gn" . "third_party/libpng/BUILD.g=
n")
+                               '("libvpx.gn" . "third_party/libvpx/BUILD.g=
n")
+                               '("libwebp.gn" . "third_party/libwebp/BUILD=
.gn")
+                               '("libxml.gn" . "third_party/libxml/BUILD.g=
n") ;TODO
+                               '("libxslt.gn" . "third_party/libxslt/BUILD=
.gn")
+                               '("openh264.gn" . "third_party/openh264/BUI=
LD.gn")
+                               '("opus.gn" . "third_party/opus/BUILD.gn")
+                               '("re2.gn" . "third_party/re2/BUILD.gn")
+                               '("snappy.gn" . "third_party/snappy/BUILD.g=
n")
+                               '("yasm.gn" . "third_party/yasm/yasm_assemb=
le.gni")
+                               '("zlib.gn" . "third_party/zlib/BUILD.gn")))
+                    #t)))))
+    (build-system gnu-build-system)
+    (arguments
+     `(#:tests? #f
+       ;; FIXME: There is a "gn" option specifically for setting -rpath, b=
ut
+       ;; it's not recognized when passed.
+       #:validate-runpath? #f
+       #:modules ((srfi srfi-26)
+                  (ice-9 ftw)
+                  (ice-9 regex)
+                  (guix build gnu-build-system)
+                  (guix build utils))
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'patch-stuff
+           (lambda* (#:key inputs #:allow-other-keys)
+             (substitute* "printing/cups_config_helper.py"
+               (("cups_config =3D.*")
+                (string-append "cups_config =3D '" (assoc-ref inputs "cups=
")
+                               "/bin/cups-config'\n")))
+
+             (substitute*
+                 '("base/process/launch_posix.cc"
+                   "base/third_party/dynamic_annotations/dynamic_annotatio=
ns.c"
+                   "sandbox/linux/seccomp-bpf/sandbox_bpf.cc"
+                   "sandbox/linux/services/credentials.cc"
+                   "sandbox/linux/services/namespace_utils.cc"
+                   "sandbox/linux/services/syscall_wrappers.cc"
+                   "sandbox/linux/syscall_broker/broker_host.cc")
+               (("include \"base/third_party/valgrind/") "include \"valgri=
nd/"))
+
+             (for-each (lambda (file)
+                         (substitute* file
+                           ;; Fix opus include path.
+                           ;; Do not substitute opus_private.h.
+                           (("#include \"opus\\.h\"")
+                            "#include \"opus/opus.h\"")
+                           (("#include \"opus_custom\\.h\"")
+                            "#include \"opus/opus_custom.h\"")
+                           (("#include \"opus_defines\\.h\"")
+                            "#include \"opus/opus_defines.h\"")
+                           (("#include \"opus_multistream\\.h\"")
+                            "#include \"opus/opus_multistream.h\"")
+                           (("#include \"opus_types\\.h\"")
+                            "#include \"opus/opus_types.h\"")))
+                       (append (find-files "third_party/opus/src/celt")
+                               (find-files "third_party/opus/src/src")
+                               (find-files (string-append "third_party/web=
rtc/modules"
+                                                          "/audio_coding/c=
odecs/opus"))))
+
+             (substitute* "chrome/common/chrome_paths.cc"
+               (("/usr/share/chromium/extensions")
+                ;; TODO: Add ~/.guix-profile.
+                "/run/current-system/profile/share/chromium/extensions"))
+
+             (substitute*
+                 "third_party/breakpad/breakpad/src/common/linux/libcurl_w=
rapper.h"
+               (("include \"third_party/curl") "include \"curl"))
+             (substitute* "media/base/decode_capabilities.cc"
+               (("third_party/libvpx/source/libvpx/") ""))
+
+             ;; We don't cross compile most packages, so get rid of the
+             ;; unnecessary ARCH-linux-gnu* prefix.
+             (substitute* "build/toolchain/linux/BUILD.gn"
+               (("aarch64-linux-gnu-") "")
+               (("arm-linux-gnueabihf-") ""))
+             #t))
+         (replace 'configure
+           (lambda* (#:key inputs outputs #:allow-other-keys)
+             (let ((gn-flags
+                    (list
+                     ;; See tools/gn/docs/cookbook.md and
+                     ;; https://www.chromium.org/developers/gn-build-confi=
guration
+                     ;; for usage.  Run "./gn args . --list" in the Release
+                     ;; directory for an exhaustive list of supported flag=
s.
+                     "is_debug=3Dfalse"
+                     "is_official_build=3Dfalse"
+                     "is_clang=3Dfalse"
+                     "use_gold=3Dfalse"
+                     "use_lld=3Dfalse"
+                     "linux_use_bundled_binutils=3Dfalse"
+                     "use_custom_libcxx=3Dfalse"
+                     "use_sysroot=3Dfalse"
+                     "goma_dir=3D\"\""
+                     "enable_precompiled_headers=3Dfalse"
+                     "enable_nacl=3Dfalse"
+                     "enable_nacl_nonsfi=3Dfalse"
+                     "use_allocator=3D\"none\"" ;don't use tcmalloc
+                     "override_build_date=3D\"01 01 2000 05:00:00\""
+                     "use_unofficial_version_number=3Dfalse"
+                     ;; Optimize for building everything at once, as oppos=
ed
+                     ;; to incrementally for development.  See "docs/jumbo=
.md".
+                     ;; XXX: On some systems this may trigger a compiler e=
rror.
+                     ;;"use_jumbo_build=3Dtrue"
+                     ;; Disable debugging features to save space.
+                     "remove_webcore_debug_symbols=3Dtrue"
+                     "enable_iterator_debugging=3Dfalse"
+                     ;; Some of the unbundled libraries throws deprecation
+                     ;; warnings, etc.  Ignore it.
+                     "treat_warnings_as_errors=3Dfalse"
+                     ;; Don't add any API keys.  End users can set them in=
 the
+                     ;; environment if desired.  See
+                     ;; <https://www.chromium.org/developers/how-tos/api-k=
eys>.
+                     "use_official_google_api_keys=3Dfalse"
+                     ;; Disable "field trials".
+                     "fieldtrial_testing_like_official_build=3Dtrue"
+
+                     "use_system_freetype=3Dtrue"
+                     "use_system_harfbuzz=3Dtrue"
+                     "use_system_libjpeg=3Dtrue"
+                     "use_system_lcms2=3Dtrue"
+                     "use_system_zlib=3Dtrue"
+                     ;; This is currently not supported on Linux:
+                     ;; https://bugs.chromium.org/p/chromium/issues/detail=
?id=3D22208
+                     ;;"use_system_sqlite=3Dtrue"
+
+                     "use_gconf=3Dfalse"         ;deprecated by gsettings
+                     "use_gnome_keyring=3Dfalse" ;deprecated by libsecret
+                     "use_gtk3=3Dtrue"
+                     "use_openh264=3Dtrue"
+                     "use_xkbcommon=3Dtrue"
+                     "link_pulseaudio=3Dtrue"
+
+                     ;; Don't arbitrarily restrict formats supported by sy=
stem ffmpeg.
+                     "proprietary_codecs=3Dtrue"
+                     "ffmpeg_branding=3D\"Chrome\""
+
+                     ;; WebRTC stuff.
+                     "rtc_use_h264=3Dtrue"
+                     ;; Don't use bundled sources.
+                     "rtc_build_json=3Dfalse"
+                     "rtc_build_libevent=3Dfalse"
+                     "rtc_build_libvpx=3Dfalse"
+                     "rtc_build_opus=3Dfalse"
+                     "rtc_build_ssl=3Dfalse"
+                     ;; TODO: Package these.
+                     "rtc_build_libsrtp=3Dtrue" ;2.0
+                     "rtc_build_libyuv=3Dtrue"
+                     "rtc_build_openmax_dl=3Dtrue"
+                     "rtc_build_usrsctp=3Dtrue"
+                     (string-append "rtc_jsoncpp_root=3D\""
+                                    (assoc-ref inputs "jsoncpp")
+                                    "/include/jsoncpp/json\"")
+                     (string-append "rtc_ssl_root=3D\""
+                                    (assoc-ref inputs "openssl")
+                                    "/include/openssl\""))))
+
+               ;; XXX: How portable is this.
+               (mkdir-p "third_party/node/linux/node-linux-x64")
+               (symlink (string-append (assoc-ref inputs "node") "/bin")
+                        "third_party/node/linux/node-linux-x64/bin")
+
+               (setenv "CC" "gcc")
+               (setenv "CXX" "g++")
+               ;; TODO: pre-compile instead. Avoids a race condition.
+               (setenv "PYTHONDONTWRITEBYTECODE" "1")
+               (and
+                ;; Build the "gn" tool.
+                (invoke "python"
+                        "tools/gn/bootstrap/bootstrap.py" "-s" "-v")
+                ;; Generate ninja build files.
+                (invoke "./out/Release/gn" "gen" "out/Release"
+                        (string-append "--args=3D"
+                                       (string-join gn-flags " ")))))))
+         (replace 'build
+           (lambda* (#:key outputs #:allow-other-keys)
+             (invoke "ninja" "-C" "out/Release"
+                     "-j" (number->string (parallel-job-count))
+                     "chrome")))
+         (replace 'install
+           (lambda* (#:key inputs outputs #:allow-other-keys)
+             (let* ((out            (assoc-ref outputs "out"))
+                    (bin            (string-append out "/bin"))
+                    (exe            (string-append bin "/chromium"))
+                    (lib            (string-append out "/lib"))
+                    (man            (string-append out "/share/man/man1"))
+                    (applications   (string-append out "/share/application=
s"))
+                    (install-regexp (make-regexp "\\.(bin|pak)$"))
+                    (locales        (string-append lib "/locales"))
+                    (resources      (string-append lib "/resources"))
+                    (gtk+           (assoc-ref inputs "gtk+"))
+                    (mesa           (assoc-ref inputs "mesa"))
+                    (nss            (assoc-ref inputs "nss"))
+                    (udev           (assoc-ref inputs "udev"))
+                    (sh             (which "sh")))
+
+               (substitute* '("chrome/app/resources/manpage.1.in"
+                              "chrome/installer/linux/common/desktop.templ=
ate")
+                 (("@@MENUNAME@@") "Chromium")
+                 (("@@PACKAGE@@") "chromium")
+                 (("/usr/bin/@@USR_BIN_SYMLINK_NAME@@") exe))
+               (mkdir-p man)
+               (copy-file "chrome/app/resources/manpage.1.in"
+                          (string-append man "/chromium.1"))
+               (mkdir-p applications)
+               (copy-file "chrome/installer/linux/common/desktop.template"
+                          (string-append applications "/chromium.desktop"))
+
+               (with-directory-excursion "out/Release"
+                 (for-each (lambda (file)
+                             (install-file file lib))
+                           (scandir "." (cut regexp-exec install-regexp <>=
)))
+                 (copy-file "chrome" (string-append lib "/chromium"))
+
+                 ;; TODO: Install icons from "../../chrome/app/themes" into
+                 ;; "out/share/icons/hicolor/$size".
+                 (install-file
+                  "product_logo_48.png"
+                  (string-append out "/share/icons/48x48/chromium.png"))
+
+                 (copy-recursively "locales" locales)
+                 (copy-recursively "resources" resources)
+
+                 (mkdir-p bin)
+                 ;; Add a thin wrapper to prevent the user from inadverten=
tly
+                 ;; installing non-free software through the Web Store.
+                 ;; TODO: Discover extensions from the profile and pass
+                 ;; something like "--disable-extensions-except=3D...".
+                 (call-with-output-file exe
+                   (lambda (port)
+                     (format port
+                             "#!~a~@
+                             if [ -z \"$CHROMIUM_ENABLE_WEB_STORE\" ]~@
+                             then~@
+                               CHROMIUM_FLAGS=3D\" \\~@
+                                 --disable-background-networking \\~@
+                                 --disable-extensions \\~@
+                               \"~@
+                             fi~@
+                             exec ~a $CHROMIUM_FLAGS \"$@\"~%"
+                             sh (string-append lib "/chromium"))))
+                 (chmod exe #o755)
+
+                 (wrap-program exe
+                   ;; TODO: Get these in RUNPATH.
+                   `("LD_LIBRARY_PATH" ":" prefix
+                     (,(string-append lib ":" nss "/lib/nss:" gtk+ "/lib:"
+                                      mesa "/lib:" udev "/lib")))
+                   ;; Avoid file manager crash.  See <https://bugs.gnu.org=
/26593>.
+                   `("XDG_DATA_DIRS" ":" prefix (,(string-append gtk+ "/sh=
are"))))
+                 #t)))))))
+    (native-inputs
+     `(("bison" ,bison)
+       ("git" ,git)                     ;last_commit_position.py
+       ("gperf" ,gperf)
+       ("ninja" ,ninja)
+       ("node" ,node)
+       ("pkg-config" ,pkg-config)
+       ("which" ,which)
+       ("yasm" ,yasm)
+
+       ("python-beautifulsoup4" ,python2-beautifulsoup4)
+       ("python-html5lib" ,python2-html5lib)
+       ("python" ,python-2)))
+    (inputs
+     `(("alsa-lib" ,alsa-lib)
+       ("atk" ,atk)
+       ("cups" ,cups)
+       ("curl" ,curl)
+       ("dbus" ,dbus)
+       ("dbus-glib" ,dbus-glib)
+       ("expat" ,expat)
+       ("flac" ,flac)
+       ("ffmpeg" ,ffmpeg)
+       ("fontconfig" ,fontconfig)
+       ("freetype" ,freetype)
+       ("gdk-pixbuf" ,gdk-pixbuf)
+       ("glib" ,glib)
+       ("gtk+-2" ,gtk+-2)
+       ("gtk+" ,gtk+)
+       ("harfbuzz" ,harfbuzz)
+       ("icu4c" ,icu4c)
+       ("jsoncpp" ,jsoncpp)
+       ("lcms" ,lcms)
+       ("libevent" ,libevent)
+       ("libffi" ,libffi)
+       ("libjpeg-turbo" ,libjpeg-turbo)
+       ("libpng" ,libpng)
+       ("libusb" ,libusb)
+       ("libvpx" ,libvpx+experimental)
+       ("libwebp" ,libwebp)
+       ("libx11" ,libx11)
+       ("libxcb" ,libxcb)
+       ("libxcomposite" ,libxcomposite)
+       ("libxcursor" ,libxcursor)
+       ("libxdamage" ,libxdamage)
+       ("libxext" ,libxext)
+       ("libxfixes" ,libxfixes)
+       ("libxi" ,libxi)
+       ("libxkbcommon" ,libxkbcommon)
+       ("libxml2" ,libxml2)
+       ("libxrandr" ,libxrandr)
+       ("libxrender" ,libxrender)
+       ("libxscrnsaver" ,libxscrnsaver)
+       ("libxslt" ,libxslt)
+       ("libxtst" ,libxtst)
+       ("mesa" ,mesa)
+       ("minizip" ,minizip)
+       ("mit-krb5" ,mit-krb5)
+       ("nss" ,nss)
+       ("openh264" ,openh264)
+       ("openssl" ,openssl)
+       ("opus" ,opus+custom)
+       ("pango" ,pango)
+       ("pciutils" ,pciutils)
+       ("protobuf" ,protobuf)
+       ("pulseaudio" ,pulseaudio)
+       ("re2" ,re2)
+       ("snappy" ,snappy)
+       ("speech-dispatcher" ,speech-dispatcher)
+       ("sqlite" ,sqlite)
+       ("udev" ,eudev)
+       ("valgrind" ,valgrind)))
+    (home-page "https://www.chromium.org/")
+    (description
+     "Chromium is a web browser designed for speed and security.  This
+version incorporates patches from
+@url{https://github.com/gcarq/inox-patchset,Inox} and
+@url{https://www.debian.org/,Debian} in order to protect the users privacy=
.")
+    ;; Chromium is developed as BSD-3, but bundles a large number of third=
-party
+    ;; components with other licenses.  For full information, see chrome:/=
/credits.
+    (license (list license:bsd-3
+                   license:bsd-2
+                   license:expat
+                   license:asl2.0
+                   license:mpl2.0
+                   license:public-domain
+                   license:lgpl2.1+))))
diff --git a/gnu/packages/patches/chromium-gcc5.patch b/gnu/packages/patche=
s/chromium-gcc5.patch
new file mode 100644
index 000000000..56b2cd6ef
=2D-- /dev/null
+++ b/gnu/packages/patches/chromium-gcc5.patch
@@ -0,0 +1,39 @@
+Work around a GCC5 bug where it fails to choose the correct base::span
+constructor.
+
+Adapted from this commit:
+https://gitweb.gentoo.org/repo/gentoo.git/commit/www-client/chromium?id=3D=
7843d29ab07411a9c70962fb90b4cd1546910242
+
+--- a/gpu/ipc/common/mailbox_struct_traits.h
++++ b/gpu/ipc/common/mailbox_struct_traits.h
+@@ -15,7 +15,7 @@ namespace mojo {
+ template <>
+ struct StructTraits<gpu::mojom::MailboxDataView, gpu::Mailbox> {
+   static base::span<const int8_t> name(const gpu::Mailbox& mailbox) {
+-    return mailbox.name;
++    return base::make_span(mailbox.name);
+   }
+   static bool Read(gpu::mojom::MailboxDataView data, gpu::Mailbox* out);
+ };
+--- a/services/viz/public/cpp/compositing/filter_operation_struct_traits.h
++++ b/services/viz/public/cpp/compositing/filter_operation_struct_traits.h
+@@ -134,7 +134,7 @@ struct StructTraits<viz::mojom::FilterOperationDataVie=
w, cc::FilterOperation> {
+   static base::span<const float> matrix(const cc::FilterOperation& operat=
ion) {
+     if (operation.type() !=3D cc::FilterOperation::COLOR_MATRIX)
+       return base::span<const float>();
+-    return operation.matrix();
++    return base::make_span(operation.matrix());
+   }
+
+   static base::span<const gfx::Rect> shape(
+--- a/services/viz/public/cpp/compositing/quads_struct_traits.h
++++ b/services/viz/public/cpp/compositing/quads_struct_traits.h
+@@ -308,7 +308,7 @@
+   static base::span<const float> vertex_opacity(const viz::DrawQuad& inpu=
t) {
+     const viz::TextureDrawQuad* quad =3D
+         viz::TextureDrawQuad::MaterialCast(&input);
+-    return quad->vertex_opacity;
++    return base::make_span(quad->vertex_opacity);
+   }
+=20
+   static bool y_flipped(const viz::DrawQuad& input) {
diff --git a/gnu/packages/patches/chromium-remove-default-history.patch b/g=
nu/packages/patches/chromium-remove-default-history.patch
new file mode 100644
index 000000000..38be10820
=2D-- /dev/null
+++ b/gnu/packages/patches/chromium-remove-default-history.patch
@@ -0,0 +1,13 @@
+Don't pre-populate the New Tab Page for new profiles.
+
+--- a/chrome/browser/history/top_sites_factory.cc
++++ b/chrome/browser/history/top_sites_factory.cc
+@@ -74,7 +74,7 @@
+=20
+ void InitializePrepopulatedPageList(
+     history::PrepopulatedPageList* prepopulated_pages) {
+-#if !defined(OS_ANDROID)
++#if false
+   DCHECK(prepopulated_pages);
+   prepopulated_pages->reserve(arraysize(kRawPrepopulatedPages));
+   for (size_t i =3D 0; i < arraysize(kRawPrepopulatedPages); ++i) {
=2D-=20
2.16.2


--=-=-=--

--==-=-=
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQEzBAEBCgAdFiEEu7At3yzq9qgNHeZDoqBt8qM6VPoFAlqUaOEACgkQoqBt8qM6
VPp+iggAvr9wYNhGdMfXaMVCqNG/bC20MBmGdhGWvurkvNCuzr4uXPXuxfhjFTC2
cOCkxZ8Af2eL/+lTyM+s0C+LAuBLdfSQsiQHVYK8At0520K6e4QY8zhXu87/y5KG
xjYABvUA5UUj7ryArOeBffpStb9KSJ79kuXB4K76cswvRSrEb0GX01tCqcAe7Zu4
ODWL9A25XHfTzBJ2wa8tsaw3DSZ5IGczl5KpvyPpF5ddQ9MLZm4x7AKiXeJCCiGk
XAdIDzFwLrYLA3ZxIIyawqsK2U+ifA5jAoDsjAaHlHey7BoAEccLrdNHMGH3QJel
sTz73/q50Lkyk7dF+3OFkcLeT0RNow==
=o25f
-----END PGP SIGNATURE-----
--==-=-=--




Information forwarded to guix-patches@HIDDEN:
bug#28004; Package guix-patches. Full text available.

Message received at 28004 <at> debbugs.gnu.org:


Received: (at 28004) by debbugs.gnu.org; 26 Feb 2018 20:01:32 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon Feb 26 15:01:32 2018
Received: from localhost ([127.0.0.1]:33950 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1eqOxo-0003Kx-7c
	for submit <at> debbugs.gnu.org; Mon, 26 Feb 2018 15:01:32 -0500
Received: from aibo.runbox.com ([91.220.196.211]:44538)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <ng0@HIDDEN>) id 1eqOxl-0003Ko-Sc
 for 28004 <at> debbugs.gnu.org; Mon, 26 Feb 2018 15:01:30 -0500
Received: from [10.9.9.212] (helo=mailfront12.runbox.com)
 by mailtransmit03.runbox with esmtp (Exim 4.86_2)
 (envelope-from <ng0@HIDDEN>)
 id 1eqOxh-0002kX-9K; Mon, 26 Feb 2018 21:01:25 +0100
Received: from dslb-178-001-153-226.178.001.pools.vodafone-ip.de
 ([178.1.153.226] helo=localhost)
 by mailfront12.runbox.com with esmtpsa (uid:892961 )
 (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82)
 id 1eqOxf-0007gL-GT; Mon, 26 Feb 2018 21:01:23 +0100
Date: Mon, 26 Feb 2018 20:01:33 +0000
From: ng0 <ng0@HIDDEN>
To: Marius Bakke <mbakke@HIDDEN>
Subject: Re: [bug#28004] Chromium
Message-ID: <20180226200133.zsnahblbgzovrtmu@abyayala>
References: <87shensfq6.fsf@HIDDEN> <87o9p45bb6.fsf@HIDDEN>
 <20180104191648.custe7w3l57fvbac@abyayala>
 <87wp0s2ewl.fsf@HIDDEN>
 <20180108232042.nqjurjr2bcfl2yyc@abyayala>
 <87373cey5b.fsf@HIDDEN> <87vag16g5z.fsf@HIDDEN>
 <87fu75aar5.fsf@HIDDEN> <874lnkr0vf.fsf@HIDDEN>
 <87vaejvclc.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: multipart/signed; micalg=pgp-sha512;
 protocol="application/pgp-signature"; boundary="fflbbbzhlu4c3sef"
Content-Disposition: inline
In-Reply-To: <87vaejvclc.fsf@HIDDEN>
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 28004
Cc: Mike Gerwitz <mtg@HIDDEN>, 28004 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -0.7 (/)


--fflbbbzhlu4c3sef
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

Marius Bakke transcribed 2.1K bytes:
> Mike Gerwitz <mtg@HIDDEN> writes:
>=20
> > On Tue, Jan 16, 2018 at 20:01:34 +0100, Marius Bakke wrote:
> >> If there are no objections, expect to see this in 'master' in 1-2 week=
s.
> >
> > I want to express gratitude for your hard work on this---given that
> > IceCat does not contain many of the FF devtool updates, Chromium is very
> > desirable for web development.  It's also needed for certain Node.js
> > tools, like node-inspector.
> >
> > So, thank you!
>=20
> Thank *you* for the kind words! :-)
>=20
> Here is the latest iteration of this patch.  New in this version:
>=20
> * Chromium 64 (duh).
> * The 'delete-bundled-software' phase has been moved to a snippet,
>   shaving ~100MiB (~22%) off the compressed tarball size (and
>   drastically reduces (de)compression time).
> * The New Tab page does not show any thumbnails for new profiles.

I think you forgot to attach the patches :)

> I've also added more comments about the patches and other flags.
>=20
> Now, when launching the browser for the first time, it *still* connects
> to Google services.  After a while it also does a lookup for AdWords...
> However subsequent launches are "silent" as long as the Web Store is
> disabled and "--disable-background-networking" is passed, like the
> wrapper script does.
>=20
> Incidentally, now that IceCat supports WebRTC (and somehow plugged the
> IP address leak[0]!), I no longer *need* this package.  However, having
> multiple high quality browsers at hand is a huge advantage IMO, so I'd
> still like to have it in Guix.
>=20
> What do y'all think?  Feedback on the snippet and description very
> welcome.

I still would like to have Chromium in Guix too. Icecat doesn't work
for everyone's needs and requirements. I'd help volunteering time to
building and updating, when it's possible for me.

> [0] https://en.wikipedia.org/wiki/WebRTC#Concerns



--=20
ng0
A88C8ADD129828D7EAC02E52E22F9BBFEE348588
http://krosos.org | https://n0.is/~ng0/ | https://crash.cx
--fflbbbzhlu4c3sef
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQIzBAABCgAdFiEEqIyK3RKYKNfqwC5S4i+bv+40hYgFAlqUZ50ACgkQ4i+bv+40
hYhRRhAAsEF+sW7/SVVp7ROYvltI65fhb6jK7GSoBq5VUicYQLaRWKo3HiAQuuyL
3NhFGEIi6UH5fQHr22kSYCcx2uNmX494JYhGIJ38nj3A3wiumVG6zZtFPgPllrqO
XPP7GMcWiNIwbhCnzPtBCl6KPllJMxa3tdbgsb7pWio9fRtcZUE7+7RPVtMBa5q/
R4pd3stwA7lYl8VB9wR87YesSeeGMsRGSRi8DN8eF8nfiuiwDkzsYhRWomvR5Ocd
KhehTcoQkFuzdsLICHWjPrGaxZfBzwktTHiy4seo8cOaU/LLK1n4yK9Y6djrAWx1
pwXtkRMQ87L89R0mM38CrVE+GPxgnhL1/WzSe10GjT5vRsXdVB/NwKuF0X4BXGAa
gN5EIjHJdFaW7Yb5OK78EehbezR55WHArOOaesEB1ktFwPFG6o5uDDPJhgitqg4J
JPy3oNX5EiLua7uywd7f+j/UEcVY3GD8MwakzqcyN3cFzUDno9Y4pdGaVaOGXudu
1WYg3QG0pQtASCRmgXlcKJc5Fju4kYRasuCfmR59E013VsnaRAJCVJPKn1bRFUNo
/Rvk25Nzb6NblgpAAummXhwdbe5lpwEgHf8CZyJC3RVKiJ9oCeshGhomJmDqt1sj
092lVphpvGJMIcDANnU6aTywg650G9T+lLnXycHhjHZOTBEchUA=
=NLO2
-----END PGP SIGNATURE-----

--fflbbbzhlu4c3sef--




Information forwarded to guix-patches@HIDDEN:
bug#28004; Package guix-patches. Full text available.

Message received at 28004 <at> debbugs.gnu.org:


Received: (at 28004) by debbugs.gnu.org; 26 Feb 2018 18:19:34 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon Feb 26 13:19:34 2018
Received: from localhost ([127.0.0.1]:33828 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1eqNMz-0000vX-Rk
	for submit <at> debbugs.gnu.org; Mon, 26 Feb 2018 13:19:34 -0500
Received: from out2-smtp.messagingengine.com ([66.111.4.26]:47529)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <mbakke@HIDDEN>) id 1eqNMu-0000vM-3C
 for 28004 <at> debbugs.gnu.org; Mon, 26 Feb 2018 13:19:24 -0500
Received: from compute5.internal (compute5.nyi.internal [10.202.2.45])
 by mailout.nyi.internal (Postfix) with ESMTP id 03A2220C74;
 Mon, 26 Feb 2018 13:19:20 -0500 (EST)
Received: from frontend2 ([10.202.2.161])
 by compute5.internal (MEProxy); Mon, 26 Feb 2018 13:19:20 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=fastmail.com; h=
 cc:content-transfer-encoding:content-type:date:from:message-id
 :mime-version:subject:to:x-me-sender:x-me-sender:x-sasl-enc; s=
 fm2; bh=eu4901N7PoAhwUgY8vJb5t5/rPH8ClQq+OgyWAoewHs=; b=okNFSdoz
 ADzunFbefjr3G20g3koiyqNiSdWw4E6xEetYoZpTCbrlbAxtAEhcXd759zJzhWl0
 iVr1y1JhQaYlpmz/tXe06Aj5Ud4wA4dGIHITHyIAA2sds5JAZV2F9jgHxtZU/nj0
 9WhciF/kAhKYDwmXvYO/jExSAMeG57BYyc4xN7zJ6l5aeU3tKhP3N2+h3uRgnx2Z
 VmdHXBhw7qcMzfkC6/QAKCzQ39IA9xM+9z3cjE30v4lf1JJQcl9KCX7gAUvbghn3
 +W688/5wQMaIe+lPXMI8f5UR1Ba4IbHk0HVcyI8lUPamHom9U8vd3ZRwEstmypFx
 T04AkQndq+i+Lw==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
 messagingengine.com; h=cc:content-transfer-encoding:content-type
 :date:from:message-id:mime-version:subject:to:x-me-sender
 :x-me-sender:x-sasl-enc; s=fm2; bh=eu4901N7PoAhwUgY8vJb5t5/rPH8C
 lQq+OgyWAoewHs=; b=mugTzztuAt9uWZqPmiNR12JYgQEan/6ghbnT0B6PhCCRU
 Z3VfLrstYERMS0MjDtg4LT+jlHkujohXvpiXNqw/5vu/lBmArbgrscFknEciCrv6
 lP7VfU59UGoqmnniyiypelEOFDvVxJCpyi+2csxWnKghcVc9bkCw2cOdy2uqsuv5
 dW0xvUVK6CYJQyZBfnEfhV+IzqPR7MerAlzw9wATZzxtyr7KwWCjuWhd6fHkCxlw
 IRBCcUoZoGOyI4Kwofn0xCLKbaRvUfN7i6I0vNweBZIjyXDvfwh579laKCLU9Svs
 AISMcHzwk4c3xa4k2kT1wAAW8os9pKT/fkbZ5DltQ==
X-ME-Sender: <xms:p0-UWvQKpg0pIG1tu8eebJjKoX8hLsxWtO_nS02lyWeuh-mxiXpj7w>
Received: from localhost (cm-84.214.173.174.getinternet.no [84.214.173.174])
 by mail.messagingengine.com (Postfix) with ESMTPA id 3157C246C8;
 Mon, 26 Feb 2018 13:19:19 -0500 (EST)
From: Marius Bakke <mbakke@HIDDEN>
To: 28004 <at> debbugs.gnu.org
Subject: [PATCH] gnu: Add chromium.
Date: Mon, 26 Feb 2018 19:19:14 +0100
Message-Id: <20180226181914.18955-1-mbakke@HIDDEN>
X-Mailer: git-send-email 2.16.2
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 28004
Cc: Marius Bakke <mbakke@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: 0.0 (/)

* gnu/packages/chromium.scm: New file.
* gnu/packages/patches/chromium-gcc.patch,
gnu/packages/patches/chromium-remove-default-history.patch: New files.
* gnu/local.mk: Record it.
---
 gnu/local.mk                                       |   3 +
 gnu/packages/chromium.scm                          | 756 +++++++++++++++++++++
 gnu/packages/patches/chromium-gcc5.patch           |  39 ++
 .../patches/chromium-remove-default-history.patch  |  13 +
 4 files changed, 811 insertions(+)
 create mode 100644 gnu/packages/chromium.scm
 create mode 100644 gnu/packages/patches/chromium-gcc5.patch
 create mode 100644 gnu/packages/patches/chromium-remove-default-history.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index fa98810d6..fb1320f7b 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -92,6 +92,7 @@ GNU_SYSTEM_MODULES =				\
   %D%/packages/check.scm			\
   %D%/packages/chemistry.scm			\
   %D%/packages/chez.scm				\
+  %D%/packages/chromium.scm			\
   %D%/packages/ci.scm				\
   %D%/packages/cinnamon.scm			\
   %D%/packages/cmake.scm			\
@@ -581,6 +582,8 @@ dist_patch_DATA =						\
   %D%/packages/patches/ceph-skip-collect-sys-info-test.patch	\
   %D%/packages/patches/ceph-skip-unittest_blockdev.patch	\
   %D%/packages/patches/chmlib-inttypes.patch			\
+  %D%/packages/patches/chromium-gcc5.patch			\
+  %D%/packages/patches/chromium-remove-default-history.patch	\
   %D%/packages/patches/clang-libc-search-path.patch		\
   %D%/packages/patches/clang-3.8-libc-search-path.patch		\
   %D%/packages/patches/clang-runtime-asan-build-fixes.patch	\
diff --git a/gnu/packages/chromium.scm b/gnu/packages/chromium.scm
new file mode 100644
index 000000000..1dd77b089
--- /dev/null
+++ b/gnu/packages/chromium.scm
@@ -0,0 +1,756 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2016, 2017, 2018 Marius Bakke <mbakke@HIDDEN>
+;;;
+;;; This file is part of GNU Guix.
+;;;
+;;; GNU Guix is free software; you can redistribute it and/or modify it
+;;; under the terms of the GNU General Public License as published by
+;;; the Free Software Foundation; either version 3 of the License, or (at
+;;; your option) any later version.
+;;;
+;;; GNU Guix is distributed in the hope that it will be useful, but
+;;; WITHOUT ANY WARRANTY; without even the implied warranty of
+;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+;;; GNU General Public License for more details.
+;;;
+;;; You should have received a copy of the GNU General Public License
+;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
+
+(define-module (gnu packages chromium)
+  #:use-module ((guix licenses) #:prefix license:)
+  #:use-module (guix packages)
+  #:use-module (guix download)
+  #:use-module (guix git-download)
+  #:use-module (guix utils)
+  #:use-module (guix build-system gnu)
+  #:use-module (gnu packages)
+  #:use-module (gnu packages assembly)
+  #:use-module (gnu packages base)
+  #:use-module (gnu packages bison)
+  #:use-module (gnu packages compression)
+  #:use-module (gnu packages cups)
+  #:use-module (gnu packages curl)
+  #:use-module (gnu packages databases)
+  #:use-module (gnu packages fontutils)
+  #:use-module (gnu packages ghostscript)
+  #:use-module (gnu packages gl)
+  #:use-module (gnu packages glib)
+  #:use-module (gnu packages gnome)
+  #:use-module (gnu packages gnuzilla)
+  #:use-module (gnu packages gperf)
+  #:use-module (gnu packages gtk)
+  #:use-module (gnu packages icu4c)
+  #:use-module (gnu packages image)
+  #:use-module (gnu packages libevent)
+  #:use-module (gnu packages libffi)
+  #:use-module (gnu packages libusb)
+  #:use-module (gnu packages linux)
+  #:use-module (gnu packages kerberos)
+  #:use-module (gnu packages ninja)
+  #:use-module (gnu packages node)
+  #:use-module (gnu packages pciutils)
+  #:use-module (gnu packages photo)
+  #:use-module (gnu packages pkg-config)
+  #:use-module (gnu packages protobuf)
+  #:use-module (gnu packages pulseaudio)
+  #:use-module (gnu packages python)
+  #:use-module (gnu packages python-web)
+  #:use-module (gnu packages regex)
+  #:use-module (gnu packages serialization)
+  #:use-module (gnu packages speech)
+  #:use-module (gnu packages tls)
+  #:use-module (gnu packages valgrind)
+  #:use-module (gnu packages version-control)
+  #:use-module (gnu packages video)
+  #:use-module (gnu packages xiph)
+  #:use-module (gnu packages xml)
+  #:use-module (gnu packages xdisorg)
+  #:use-module (gnu packages xorg))
+
+(define (strip-directory-prefix pathspec)
+  "Return everything after the last '/' in PATHSPEC."
+  (let ((index (string-rindex pathspec #\/)))
+    (if index
+        (string-drop pathspec (+ 1 index))
+        pathspec)))
+
+(define (chromium-patch-file-name pathspec)
+  (let ((patch-name (strip-directory-prefix pathspec)))
+    (if (string-prefix? "chromium-" patch-name)
+        patch-name
+        (string-append "chromium-" patch-name))))
+
+;; https://anonscm.debian.org/cgit/pkg-chromium/pkg-chromium.git/tree/debian/patches
+(define (debian-patch pathspec revision hash)
+  (origin
+    (method url-fetch)
+    (uri (string-append
+          "https://anonscm.debian.org/cgit/pkg-chromium/pkg-chromium.git"
+          "/plain/debian/patches/" pathspec "?id=" revision))
+    (sha256 (base32 hash))
+    (file-name (chromium-patch-file-name pathspec))))
+
+;; https://gitweb.gentoo.org/repo/gentoo.git/tree/www-client/chromium/files
+(define (gentoo-patch pathspec revision hash)
+  (origin
+    (method url-fetch)
+    (uri (string-append
+          "https://gitweb.gentoo.org/repo/gentoo.git/plain/www-client"
+          "/chromium/files/" pathspec "?id=" revision))
+    (sha256 (base32 hash))
+    (file-name (chromium-patch-file-name pathspec))))
+
+;; https://github.com/gcarq/inox-patchset
+(define (inox-patch pathspec revision hash)
+  (origin
+    (method url-fetch)
+    (uri (string-append "https://raw.githubusercontent.com/gcarq/inox-patchset/"
+                        revision "/" pathspec))
+    (sha256 (base32 hash))
+    (file-name (chromium-patch-file-name pathspec))))
+
+;; https://github.com/NixOS/nixpkgs/tree/master/pkgs/applications/networking/browsers/chromium
+(define (nixos-patch pathspec revision hash)
+  (origin
+    (method url-fetch)
+    (uri (string-append "https://raw.githubusercontent.com/NixOS/nixpkgs/"
+                        revision "/pkgs/applications/networking/browsers"
+                        "/chromium/patches/" pathspec))
+    (sha256 (base32 hash))
+    (file-name (chromium-patch-file-name pathspec))))
+
+;; Fix build for older versions of GCC.
+(define %chromium-angle-gcc-compat.patch
+  (gentoo-patch "chromium-angle-r0.patch"
+                "08971011b4d6fa37aa906920fba7564e48b9e60b"
+                "0izdrqwsyr48117dhvwdsk8c6dkrnq2njida1q4mb1lagvwbz7gc"))
+
+;; https://webrtc-review.googlesource.com/9384
+(define %chromium-webrtc-gcc-compat.patch
+  (gentoo-patch "chromium-webrtc-r0.patch"
+                "08971011b4d6fa37aa906920fba7564e48b9e60b"
+                "0qj5b4w9kav51ylpdf38vm5w7p2gx4qp8p45vrfggp7miicg9cmw"))
+
+;; https://chromium-review.googlesource.com/813737
+(define %chromium-memcpy.patch
+  (gentoo-patch "chromium-memcpy-r0.patch"
+                "08971011b4d6fa37aa906920fba7564e48b9e60b"
+                "1d3vra59wjg2lva7ddv55ff6l57mk9k50llsplr0b7vxk0lh0ps5"))
+
+(define %chromium-system-nspr.patch
+  (debian-patch "system/nspr.patch"
+                "debian/64.0.3282.119-2"
+                "0pcwk3jsx8hjzd4s1v7p11jd8vpdqfnq82di31222cjx0bl6275r"))
+
+(define %chromium-system-libevent.patch
+  (debian-patch "system/event.patch"
+                "debian/64.0.3282.119-2"
+                "1dxzn1yf05mzf21c25sczj4zhkknf03x9bc3xzznqpvnsf3cjpr0"))
+
+(define %chromium-system-icu.patch
+  (debian-patch "system/icu.patch"
+                "debian/64.0.3282.119-2"
+                "0kf77d8lyma3w0xpgfv2k0c741zp6ii08gzllfja6d5s59c15ylv"))
+
+;; Don't show a warning about missing API keys.
+(define %chromium-disable-api-keys-warning.patch
+  (debian-patch "disable/google-api-warning.patch"
+                "debian/64.0.3282.119-2"
+                "1932xkrskm4nnglzj6xfjpycx4chsycj9ay3ipkq5f6xk21a1xm0"))
+
+;; Add DuckDuckGo and set it as the default search engine.
+(define %chromium-duckduckgo.patch
+  (inox-patch "0011-add-duckduckgo-search-engine.patch"
+              "d655594419af6b82a2a070e4d3eedd926a04fa79"
+              "0p8x98g71ngkd3wbl5q36wrl18ff185sfrr5fcwjbgrv3v7r6ra7"))
+
+;; Don't start a "Login Wizard" at first launch.
+(define %chromium-first-run.patch
+  (inox-patch "0018-disable-first-run-behaviour.patch"
+              "d655594419af6b82a2a070e4d3eedd926a04fa79"
+              "1y4zsqqf2125jkb1phwy9g5hcbd9xhyv5lr4xcaly66rpdzx2ayb"))
+
+;; Use privacy-preserving defaults.
+(define %chromium-default-preferences.patch
+  (inox-patch "0006-modify-default-prefs.patch"
+              "d655594419af6b82a2a070e4d3eedd926a04fa79"
+              "0qpd5l3wiw7325cicjzvdql0gay7jl4afml4nrbmy3w40i1ai2rf"))
+
+;; Recent versions of Chromium may load a remote search engine on the
+;; New Tab Page, causing unnecessary and involuntary network traffic.
+(define %chromium-restore-classic-ntp.patch
+  (inox-patch "0008-restore-classic-ntp.patch"
+              "d655594419af6b82a2a070e4d3eedd926a04fa79"
+              "0lj018q6vd6m43cj8rnraqgi4lp2iq76i1i0078dav4cxnzdryfs"))
+
+(define opus+custom
+  (package (inherit opus)
+           (name "opus+custom")
+           (arguments
+            `(;; Opus Custom is an optional extension of the Opus
+              ;; specification that allows for unsupported frame
+              ;; sizes.  Chromium requires that this is enabled.
+              #:configure-flags '("--enable-custom-modes")
+              ,@(package-arguments opus)))))
+
+(define libvpx+experimental
+  (package
+    (inherit libvpx)
+    (name "libvpx+experimental")
+    (arguments
+     `(,@(substitute-keyword-arguments (package-arguments libvpx)
+           ((#:configure-flags flags ''())
+            ;; Spatial SVC is an experimental VP9 encoder required by Chromium.
+            `(cons* "--enable-experimental" "--enable-spatial-svc"
+                    ,flags)))))))
+
+(define-public chromium
+  (package
+    (name "chromium")
+    (version "64.0.3282.186")
+    (synopsis "Graphical web browser")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "https://commondatastorage.googleapis.com/"
+                                  "chromium-browser-official/chromium-"
+                                  version ".tar.xz"))
+              (sha256
+               (base32
+                "0q0q1whspmzyln04gxhgl3jd2vrgb4imh8r9qw6c06i3b63j3l2z"))
+              (patches (list %chromium-duckduckgo.patch
+                             %chromium-default-preferences.patch
+                             %chromium-first-run.patch
+                             %chromium-restore-classic-ntp.patch
+                             %chromium-angle-gcc-compat.patch
+                             %chromium-webrtc-gcc-compat.patch
+                             %chromium-memcpy.patch
+                             %chromium-system-icu.patch
+                             %chromium-system-nspr.patch
+                             %chromium-system-libevent.patch
+                             %chromium-disable-api-keys-warning.patch
+                             (search-patch "chromium-gcc5.patch")
+                             (search-patch "chromium-remove-default-history.patch")))
+              (modules '((srfi srfi-1)
+                         (ice-9 ftw)
+                         (ice-9 regex)
+                         (guix build utils)))
+              (snippet
+               '(begin
+                  (let ((preserved-files
+                         (map
+                          (lambda (path) (string-append "./" path))
+                          (list
+                           "base/third_party/dmg_fp"
+                           "base/third_party/dynamic_annotations"
+                           "base/third_party/icu"
+                           "base/third_party/libevent"
+                           "base/third_party/nspr"
+                           "base/third_party/superfasthash"
+                           "base/third_party/symbolize" ;glog
+                           "base/third_party/xdg_mime"
+                           "base/third_party/xdg_user_dirs"
+                           "buildtools/third_party/libc++"
+                           "chrome/third_party/mozilla_security_manager"
+                           "courgette/third_party"
+                           "net/third_party/mozilla_security_manager"
+                           "net/third_party/nss"
+                           "third_party/adobe/flash/flapper_version.h"
+                           ;; FIXME: This is used in:
+                           ;; * ui/webui/resources/js/analytics.js
+                           ;; * ui/file_manager/
+                           "third_party/analytics"
+                           "third_party/angle"
+                           "third_party/angle/src/common/third_party/base"
+                           "third_party/angle/src/common/third_party/smhasher"
+                           "third_party/angle/src/third_party/compiler"
+                           "third_party/angle/src/third_party/libXNVCtrl"
+                           "third_party/angle/src/third_party/trace_event"
+                           "third_party/blink"
+                           "third_party/boringssl"
+                           "third_party/boringssl/src/third_party/fiat"
+                           "third_party/breakpad"
+                           "third_party/brotli"
+                           "third_party/cacheinvalidation"
+                           "third_party/catapult"
+                           "third_party/catapult/common/py_vulcanize/third_party/rcssmin"
+                           "third_party/catapult/common/py_vulcanize/third_party/rjsmin"
+                           "third_party/catapult/third_party/polymer"
+                           "third_party/catapult/tracing/third_party/d3"
+                           "third_party/catapult/tracing/third_party/gl-matrix"
+                           "third_party/catapult/tracing/third_party/jszip"
+                           "third_party/catapult/tracing/third_party/mannwhitneyu"
+                           "third_party/catapult/tracing/third_party/oboe"
+                           "third_party/catapult/tracing/third_party/pako"
+                           "third_party/ced"
+                           "third_party/cld_3"
+                           "third_party/crc32c"
+                           "third_party/cros_system_api"
+                           "third_party/dom_distiller_js"
+                           "third_party/fips181"
+                           "third_party/flatbuffers"
+                           ;; PDFium requires a private freetype API.
+                           ;; <https://bugs.chromium.org/p/pdfium/issues/detail?id=733>
+                           "third_party/freetype/src/src/psnames/pstables.h"
+                           "third_party/glslang-angle"
+                           "third_party/google_input_tools"
+                           "third_party/google_input_tools/third_party/closure_library"
+                           (string-append "third_party/google_input_tools/third_party"
+                                          "/closure_library/third_party/closure")
+                           "third_party/googletest"
+                           "third_party/harfbuzz-ng"
+                           "third_party/hunspell"
+                           "third_party/iccjpeg"
+                           "third_party/inspector_protocol"
+                           "third_party/jinja2"
+                           "third_party/jstemplate"
+                           "third_party/khronos"
+                           "third_party/leveldatabase"
+                           "third_party/libXNVCtrl"
+                           "third_party/libaddressinput"
+                           "third_party/libjingle_xmpp"
+                           "third_party/libphonenumber"
+                           "third_party/libsecret" ;FIXME: needs pkg-config support.
+                           "third_party/libsrtp"   ;TODO: Requires libsrtp@2.
+                           "third_party/libudev"
+                           "third_party/libwebm"
+                           "third_party/libxml"
+                           "third_party/libyuv"
+                           "third_party/lss"
+                           "third_party/lzma_sdk"
+                           "third_party/markupsafe"
+                           "third_party/mesa"
+                           "third_party/metrics_proto"
+                           "third_party/modp_b64"
+                           "third_party/mt19937ar"
+                           "third_party/node"
+                           (string-append "third_party/node/node_modules/"
+                                          "polymer-bundler/lib/third_party/UglifyJS2")
+                           "third_party/openmax_dl"
+                           "third_party/ots"
+                           "third_party/pdfium"
+                           "third_party/pdfium/third_party"
+                           "third_party/ply"
+                           "third_party/polymer"
+                           "third_party/protobuf"
+                           "third_party/protobuf/third_party/six"
+                           "third_party/qcms"
+                           "third_party/sfntly"
+                           "third_party/skia"
+                           "third_party/skia/third_party/vulkan"
+                           "third_party/skia/third_party/gif"
+                           "third_party/smhasher"
+                           "third_party/speech-dispatcher"
+                           "third_party/spirv-headers"
+                           "third_party/spirv-tools-angle"
+                           "third_party/sqlite"
+                           "third_party/swiftshader"
+                           "third_party/swiftshader/third_party"
+                           "third_party/usb_ids"
+                           "third_party/usrsctp"
+                           "third_party/vulkan"
+                           "third_party/vulkan-validation-layers"
+                           "third_party/WebKit"
+                           "third_party/web-animations-js"
+                           "third_party/webrtc"
+                           "third_party/webrtc_overrides"
+                           "third_party/widevine/cdm/widevine_cdm_version.h"
+                           "third_party/widevine/cdm/widevine_cdm_common.h"
+                           "third_party/woff2"
+                           "third_party/xdg-utils"
+                           "third_party/yasm/run_yasm.py"
+                           "third_party/zlib/google"
+                           "url/third_party/mozilla"
+                           "v8/src/third_party/valgrind"
+                           "v8/third_party/inspector_protocol"))))
+
+                    ;; This is an implementation of
+                    ;; "build/linux/unbundle/remove_bundled_libraries.py".
+                    ;; It traverses any "third_party" directory and deletes
+                    ;; files that are:
+                    ;; * not ending with ".gn" or ".gni"; or
+                    ;; * not explicitly named as argument (folder or file).
+                    ;; TODO: Remove empty directories.
+                    (define (delete-files-except exceptions dir)
+
+                      (define (enter? name stat result)
+                        (not (member name exceptions)))
+
+                      (define (leaf name stat result)
+                        (let ((protected-files (make-regexp "\\.(gn|gyp)i?$"
+                                                            regexp/icase)))
+                          (unless (or (member name exceptions)
+                                      (regexp-exec protected-files name))
+                            (delete-file name))))
+
+                      (file-system-fold enter?
+                                        leaf
+                                        (lambda (dir stat result) result) ;down
+                                        (lambda (dir stat result) result) ;up
+                                        (lambda (dir stat result) result) ;skip
+                                        (lambda (dir stat result) result) ;error
+                                        #t
+                                        dir))
+
+                    (for-each (lambda (third-party)
+                                (delete-files-except preserved-files
+                                                     third-party))
+                              (find-files "." "^third_party$" #:directories? #t))
+
+                    ;; Replace GN files from third_party with shims for building
+                    ;; against system libraries.  Keep this list in sync with
+                    ;; "build/linux/unbundle/replace_gn_files.py".
+                    (for-each (lambda (pair)
+                                (let ((source (string-append
+                                               "build/linux/unbundle/" (car pair)))
+                                      (dest (cdr pair)))
+                                  (copy-file source dest)))
+                              (list
+                               '("ffmpeg.gn" . "third_party/ffmpeg/BUILD.gn")
+                               '("flac.gn" . "third_party/flac/BUILD.gn")
+                               '("freetype.gn" . "third_party/freetype/BUILD.gn")
+                               ;; FIXME: This is no longer supported since 63.
+                               ;;'("harfbuzz-ng.gn" . "third_party/harfbuzz-ng/BUILD.gn")
+                               '("icu.gn" . "third_party/icu/BUILD.gn")
+                               '("libdrm.gn" . "third_party/libdrm/BUILD.gn")
+                               '("libevent.gn" . "base/third_party/libevent/BUILD.gn")
+                               '("libjpeg.gn" .
+                                 "build/secondary/third_party/libjpeg_turbo/BUILD.gn")
+                               '("libpng.gn" . "third_party/libpng/BUILD.gn")
+                               '("libvpx.gn" . "third_party/libvpx/BUILD.gn")
+                               '("libwebp.gn" . "third_party/libwebp/BUILD.gn")
+                               '("libxml.gn" . "third_party/libxml/BUILD.gn") ;TODO
+                               '("libxslt.gn" . "third_party/libxslt/BUILD.gn")
+                               '("openh264.gn" . "third_party/openh264/BUILD.gn")
+                               '("opus.gn" . "third_party/opus/BUILD.gn")
+                               '("re2.gn" . "third_party/re2/BUILD.gn")
+                               '("snappy.gn" . "third_party/snappy/BUILD.gn")
+                               '("yasm.gn" . "third_party/yasm/yasm_assemble.gni")
+                               '("zlib.gn" . "third_party/zlib/BUILD.gn")))
+                    #t)))))
+    (build-system gnu-build-system)
+    (arguments
+     `(#:tests? #f
+       ;; FIXME: There is a "gn" option specifically for setting -rpath, but
+       ;; it's not recognized when passed.
+       #:validate-runpath? #f
+       #:modules ((srfi srfi-26)
+                  (ice-9 ftw)
+                  (ice-9 regex)
+                  (guix build gnu-build-system)
+                  (guix build utils))
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'patch-stuff
+           (lambda* (#:key inputs #:allow-other-keys)
+             (substitute* "printing/cups_config_helper.py"
+               (("cups_config =.*")
+                (string-append "cups_config = '" (assoc-ref inputs "cups")
+                               "/bin/cups-config'\n")))
+
+             (substitute*
+                 '("base/process/launch_posix.cc"
+                   "base/third_party/dynamic_annotations/dynamic_annotations.c"
+                   "sandbox/linux/seccomp-bpf/sandbox_bpf.cc"
+                   "sandbox/linux/services/credentials.cc"
+                   "sandbox/linux/services/namespace_utils.cc"
+                   "sandbox/linux/services/syscall_wrappers.cc"
+                   "sandbox/linux/syscall_broker/broker_host.cc")
+               (("include \"base/third_party/valgrind/") "include \"valgrind/"))
+
+             (for-each (lambda (file)
+                         (substitute* file
+                           ;; Fix opus include path.
+                           ;; Do not substitute opus_private.h.
+                           (("#include \"opus\\.h\"")
+                            "#include \"opus/opus.h\"")
+                           (("#include \"opus_custom\\.h\"")
+                            "#include \"opus/opus_custom.h\"")
+                           (("#include \"opus_defines\\.h\"")
+                            "#include \"opus/opus_defines.h\"")
+                           (("#include \"opus_multistream\\.h\"")
+                            "#include \"opus/opus_multistream.h\"")
+                           (("#include \"opus_types\\.h\"")
+                            "#include \"opus/opus_types.h\"")))
+                       (append (find-files "third_party/opus/src/celt")
+                               (find-files "third_party/opus/src/src")
+                               (find-files (string-append "third_party/webrtc/modules"
+                                                          "/audio_coding/codecs/opus"))))
+
+             (substitute* "chrome/common/chrome_paths.cc"
+               (("/usr/share/chromium/extensions")
+                ;; TODO: Add ~/.guix-profile.
+                "/run/current-system/profile/share/chromium/extensions"))
+
+             (substitute*
+                 "third_party/breakpad/breakpad/src/common/linux/libcurl_wrapper.h"
+               (("include \"third_party/curl") "include \"curl"))
+             (substitute* "media/base/decode_capabilities.cc"
+               (("third_party/libvpx/source/libvpx/") ""))
+
+             ;; We don't cross compile most packages, so get rid of the
+             ;; unnecessary ARCH-linux-gnu* prefix.
+             (substitute* "build/toolchain/linux/BUILD.gn"
+               (("aarch64-linux-gnu-") "")
+               (("arm-linux-gnueabihf-") ""))
+             #t))
+         (replace 'configure
+           (lambda* (#:key inputs outputs #:allow-other-keys)
+             (let ((gn-flags
+                    (list
+                     ;; See tools/gn/docs/cookbook.md and
+                     ;; https://www.chromium.org/developers/gn-build-configuration
+                     ;; for usage.  Run "./gn args . --list" in the Release
+                     ;; directory for an exhaustive list of supported flags.
+                     "is_debug=false"
+                     "is_official_build=false"
+                     "is_clang=false"
+                     "use_gold=false"
+                     "use_lld=false"
+                     "linux_use_bundled_binutils=false"
+                     "use_custom_libcxx=false"
+                     "use_sysroot=false"
+                     "goma_dir=\"\""
+                     "enable_precompiled_headers=false"
+                     "enable_nacl=false"
+                     "enable_nacl_nonsfi=false"
+                     "use_allocator=\"none\"" ;don't use tcmalloc
+                     "override_build_date=\"01 01 2000 05:00:00\""
+                     "use_unofficial_version_number=false"
+                     ;; Optimize for building everything at once, as opposed
+                     ;; to incrementally for development.  See "docs/jumbo.md".
+                     ;; XXX: On some systems this may trigger a compiler error.
+                     ;;"use_jumbo_build=true"
+                     ;; Disable debugging features to save space.
+                     "remove_webcore_debug_symbols=true"
+                     "enable_iterator_debugging=false"
+                     ;; Some of the unbundled libraries throws deprecation
+                     ;; warnings, etc.  Ignore it.
+                     "treat_warnings_as_errors=false"
+                     ;; Don't add any API keys.  End users can set them in the
+                     ;; environment if desired.  See
+                     ;; <https://www.chromium.org/developers/how-tos/api-keys>.
+                     "use_official_google_api_keys=false"
+                     ;; Disable "field trials".
+                     "fieldtrial_testing_like_official_build=true"
+
+                     "use_system_freetype=true"
+                     "use_system_harfbuzz=true"
+                     "use_system_libjpeg=true"
+                     "use_system_lcms2=true"
+                     "use_system_zlib=true"
+                     ;; This is currently not supported on Linux:
+                     ;; https://bugs.chromium.org/p/chromium/issues/detail?id=22208
+                     ;;"use_system_sqlite=true"
+
+                     "use_gconf=false"         ;deprecated by gsettings
+                     "use_gnome_keyring=false" ;deprecated by libsecret
+                     "use_gtk3=true"
+                     "use_openh264=true"
+                     "use_xkbcommon=true"
+                     "link_pulseaudio=true"
+
+                     ;; Don't arbitrarily restrict formats supported by system ffmpeg.
+                     "proprietary_codecs=true"
+                     "ffmpeg_branding=\"Chrome\""
+
+                     ;; WebRTC stuff.
+                     "rtc_use_h264=true"
+                     ;; Don't use bundled sources.
+                     "rtc_build_json=false"
+                     "rtc_build_libevent=false"
+                     "rtc_build_libvpx=false"
+                     "rtc_build_opus=false"
+                     "rtc_build_ssl=false"
+                     ;; TODO: Package these.
+                     "rtc_build_libsrtp=true" ;2.0
+                     "rtc_build_libyuv=true"
+                     "rtc_build_openmax_dl=true"
+                     "rtc_build_usrsctp=true"
+                     (string-append "rtc_jsoncpp_root=\""
+                                    (assoc-ref inputs "jsoncpp")
+                                    "/include/jsoncpp/json\"")
+                     (string-append "rtc_ssl_root=\""
+                                    (assoc-ref inputs "openssl")
+                                    "/include/openssl\""))))
+
+               ;; XXX: How portable is this.
+               (mkdir-p "third_party/node/linux/node-linux-x64")
+               (symlink (string-append (assoc-ref inputs "node") "/bin")
+                        "third_party/node/linux/node-linux-x64/bin")
+
+               (setenv "CC" "gcc")
+               (setenv "CXX" "g++")
+               ;; TODO: pre-compile instead. Avoids a race condition.
+               (setenv "PYTHONDONTWRITEBYTECODE" "1")
+               (and
+                ;; Build the "gn" tool.
+                (invoke "python"
+                        "tools/gn/bootstrap/bootstrap.py" "-s" "-v")
+                ;; Generate ninja build files.
+                (invoke "./out/Release/gn" "gen" "out/Release"
+                        (string-append "--args="
+                                       (string-join gn-flags " ")))))))
+         (replace 'build
+           (lambda* (#:key outputs #:allow-other-keys)
+             (invoke "ninja" "-C" "out/Release"
+                     "-j" (number->string (parallel-job-count))
+                     "chrome")))
+         (replace 'install
+           (lambda* (#:key inputs outputs #:allow-other-keys)
+             (let* ((out            (assoc-ref outputs "out"))
+                    (bin            (string-append out "/bin"))
+                    (exe            (string-append bin "/chromium"))
+                    (lib            (string-append out "/lib"))
+                    (man            (string-append out "/share/man/man1"))
+                    (applications   (string-append out "/share/applications"))
+                    (install-regexp (make-regexp "\\.(bin|pak)$"))
+                    (locales        (string-append lib "/locales"))
+                    (resources      (string-append lib "/resources"))
+                    (gtk+           (assoc-ref inputs "gtk+"))
+                    (mesa           (assoc-ref inputs "mesa"))
+                    (nss            (assoc-ref inputs "nss"))
+                    (udev           (assoc-ref inputs "udev"))
+                    (sh             (which "sh")))
+
+               (substitute* '("chrome/app/resources/manpage.1.in"
+                              "chrome/installer/linux/common/desktop.template")
+                 (("@@MENUNAME@@") "Chromium")
+                 (("@@PACKAGE@@") "chromium")
+                 (("/usr/bin/@@USR_BIN_SYMLINK_NAME@@") exe))
+               (mkdir-p man)
+               (copy-file "chrome/app/resources/manpage.1.in"
+                          (string-append man "/chromium.1"))
+               (mkdir-p applications)
+               (copy-file "chrome/installer/linux/common/desktop.template"
+                          (string-append applications "/chromium.desktop"))
+
+               (with-directory-excursion "out/Release"
+                 (for-each (lambda (file)
+                             (install-file file lib))
+                           (scandir "." (cut regexp-exec install-regexp <>)))
+                 (copy-file "chrome" (string-append lib "/chromium"))
+
+                 ;; TODO: Install icons from "../../chrome/app/themes" into
+                 ;; "out/share/icons/hicolor/$size".
+                 (install-file
+                  "product_logo_48.png"
+                  (string-append out "/share/icons/48x48/chromium.png"))
+
+                 (copy-recursively "locales" locales)
+                 (copy-recursively "resources" resources)
+
+                 (mkdir-p bin)
+                 ;; Add a thin wrapper to prevent the user from inadvertently
+                 ;; installing non-free software through the Web Store.
+                 ;; TODO: Discover extensions from the profile and pass
+                 ;; something like "--disable-extensions-except=...".
+                 (call-with-output-file exe
+                   (lambda (port)
+                     (format port
+                             "#!~a~@
+                             if [ -z \"$CHROMIUM_ENABLE_WEB_STORE\" ]~@
+                             then~@
+                               CHROMIUM_FLAGS=\" \\~@
+                                 --disable-background-networking \\~@
+                                 --disable-extensions \\~@
+                               \"~@
+                             fi~@
+                             exec ~a $CHROMIUM_FLAGS \"$@\"~%"
+                             sh (string-append lib "/chromium"))))
+                 (chmod exe #o755)
+
+                 (wrap-program exe
+                   ;; TODO: Get these in RUNPATH.
+                   `("LD_LIBRARY_PATH" ":" prefix
+                     (,(string-append lib ":" nss "/lib/nss:" gtk+ "/lib:"
+                                      mesa "/lib:" udev "/lib")))
+                   ;; Avoid file manager crash.  See <https://bugs.gnu.org/26593>.
+                   `("XDG_DATA_DIRS" ":" prefix (,(string-append gtk+ "/share"))))
+                 #t)))))))
+    (native-inputs
+     `(("bison" ,bison)
+       ("git" ,git)                     ;last_commit_position.py
+       ("gperf" ,gperf)
+       ("ninja" ,ninja)
+       ("node" ,node)
+       ("pkg-config" ,pkg-config)
+       ("which" ,which)
+       ("yasm" ,yasm)
+
+       ("python-beautifulsoup4" ,python2-beautifulsoup4)
+       ("python-html5lib" ,python2-html5lib)
+       ("python" ,python-2)))
+    (inputs
+     `(("alsa-lib" ,alsa-lib)
+       ("atk" ,atk)
+       ("cups" ,cups)
+       ("curl" ,curl)
+       ("dbus" ,dbus)
+       ("dbus-glib" ,dbus-glib)
+       ("expat" ,expat)
+       ("flac" ,flac)
+       ("ffmpeg" ,ffmpeg)
+       ("fontconfig" ,fontconfig)
+       ("freetype" ,freetype)
+       ("gdk-pixbuf" ,gdk-pixbuf)
+       ("glib" ,glib)
+       ("gtk+-2" ,gtk+-2)
+       ("gtk+" ,gtk+)
+       ("harfbuzz" ,harfbuzz)
+       ("icu4c" ,icu4c)
+       ("jsoncpp" ,jsoncpp)
+       ("lcms" ,lcms)
+       ("libevent" ,libevent)
+       ("libffi" ,libffi)
+       ("libjpeg-turbo" ,libjpeg-turbo)
+       ("libpng" ,libpng)
+       ("libusb" ,libusb)
+       ("libvpx" ,libvpx+experimental)
+       ("libwebp" ,libwebp)
+       ("libx11" ,libx11)
+       ("libxcb" ,libxcb)
+       ("libxcomposite" ,libxcomposite)
+       ("libxcursor" ,libxcursor)
+       ("libxdamage" ,libxdamage)
+       ("libxext" ,libxext)
+       ("libxfixes" ,libxfixes)
+       ("libxi" ,libxi)
+       ("libxkbcommon" ,libxkbcommon)
+       ("libxml2" ,libxml2)
+       ("libxrandr" ,libxrandr)
+       ("libxrender" ,libxrender)
+       ("libxscrnsaver" ,libxscrnsaver)
+       ("libxslt" ,libxslt)
+       ("libxtst" ,libxtst)
+       ("mesa" ,mesa)
+       ("minizip" ,minizip)
+       ("mit-krb5" ,mit-krb5)
+       ("nss" ,nss)
+       ("openh264" ,openh264)
+       ("openssl" ,openssl)
+       ("opus" ,opus+custom)
+       ("pango" ,pango)
+       ("pciutils" ,pciutils)
+       ("protobuf" ,protobuf)
+       ("pulseaudio" ,pulseaudio)
+       ("re2" ,re2)
+       ("snappy" ,snappy)
+       ("speech-dispatcher" ,speech-dispatcher)
+       ("sqlite" ,sqlite)
+       ("udev" ,eudev)
+       ("valgrind" ,valgrind)))
+    (home-page "https://www.chromium.org/")
+    (description
+     "Chromium is a web browser designed for speed and security.  This
+version incorporates patches from
+@url{https://github.com/gcarq/inox-patchset,Inox} and
+@url{https://www.debian.org/,Debian} in order to protect the users privacy.")
+    ;; Chromium is developed as BSD-3, but bundles a large number of third-party
+    ;; components with other licenses.  For full information, see chrome://credits.
+    (license (list license:bsd-3
+                   license:bsd-2
+                   license:expat
+                   license:asl2.0
+                   license:mpl2.0
+                   license:public-domain
+                   license:lgpl2.1+))))
diff --git a/gnu/packages/patches/chromium-gcc5.patch b/gnu/packages/patches/chromium-gcc5.patch
new file mode 100644
index 000000000..56b2cd6ef
--- /dev/null
+++ b/gnu/packages/patches/chromium-gcc5.patch
@@ -0,0 +1,39 @@
+Work around a GCC5 bug where it fails to choose the correct base::span
+constructor.
+
+Adapted from this commit:
+https://gitweb.gentoo.org/repo/gentoo.git/commit/www-client/chromium?id=7843d29ab07411a9c70962fb90b4cd1546910242
+
+--- a/gpu/ipc/common/mailbox_struct_traits.h
++++ b/gpu/ipc/common/mailbox_struct_traits.h
+@@ -15,7 +15,7 @@ namespace mojo {
+ template <>
+ struct StructTraits<gpu::mojom::MailboxDataView, gpu::Mailbox> {
+   static base::span<const int8_t> name(const gpu::Mailbox& mailbox) {
+-    return mailbox.name;
++    return base::make_span(mailbox.name);
+   }
+   static bool Read(gpu::mojom::MailboxDataView data, gpu::Mailbox* out);
+ };
+--- a/services/viz/public/cpp/compositing/filter_operation_struct_traits.h
++++ b/services/viz/public/cpp/compositing/filter_operation_struct_traits.h
+@@ -134,7 +134,7 @@ struct StructTraits<viz::mojom::FilterOperationDataView, cc::FilterOperation> {
+   static base::span<const float> matrix(const cc::FilterOperation& operation) {
+     if (operation.type() != cc::FilterOperation::COLOR_MATRIX)
+       return base::span<const float>();
+-    return operation.matrix();
++    return base::make_span(operation.matrix());
+   }
+
+   static base::span<const gfx::Rect> shape(
+--- a/services/viz/public/cpp/compositing/quads_struct_traits.h
++++ b/services/viz/public/cpp/compositing/quads_struct_traits.h
+@@ -308,7 +308,7 @@
+   static base::span<const float> vertex_opacity(const viz::DrawQuad& input) {
+     const viz::TextureDrawQuad* quad =
+         viz::TextureDrawQuad::MaterialCast(&input);
+-    return quad->vertex_opacity;
++    return base::make_span(quad->vertex_opacity);
+   }
+ 
+   static bool y_flipped(const viz::DrawQuad& input) {
diff --git a/gnu/packages/patches/chromium-remove-default-history.patch b/gnu/packages/patches/chromium-remove-default-history.patch
new file mode 100644
index 000000000..38be10820
--- /dev/null
+++ b/gnu/packages/patches/chromium-remove-default-history.patch
@@ -0,0 +1,13 @@
+Don't pre-populate the New Tab Page for new profiles.
+
+--- a/chrome/browser/history/top_sites_factory.cc
++++ b/chrome/browser/history/top_sites_factory.cc
+@@ -74,7 +74,7 @@
+ 
+ void InitializePrepopulatedPageList(
+     history::PrepopulatedPageList* prepopulated_pages) {
+-#if !defined(OS_ANDROID)
++#if false
+   DCHECK(prepopulated_pages);
+   prepopulated_pages->reserve(arraysize(kRawPrepopulatedPages));
+   for (size_t i = 0; i < arraysize(kRawPrepopulatedPages); ++i) {
-- 
2.16.2





Information forwarded to guix-patches@HIDDEN:
bug#28004; Package guix-patches. Full text available.

Message received at 28004 <at> debbugs.gnu.org:


Received: (at 28004) by debbugs.gnu.org; 26 Feb 2018 18:18:43 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon Feb 26 13:18:43 2018
Received: from localhost ([127.0.0.1]:33822 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1eqNMJ-0000uH-Hl
	for submit <at> debbugs.gnu.org; Mon, 26 Feb 2018 13:18:43 -0500
Received: from out2-smtp.messagingengine.com ([66.111.4.26]:45059)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <mbakke@HIDDEN>) id 1eqNMH-0000u9-Dh
 for 28004 <at> debbugs.gnu.org; Mon, 26 Feb 2018 13:18:42 -0500
Received: from compute5.internal (compute5.nyi.internal [10.202.2.45])
 by mailout.nyi.internal (Postfix) with ESMTP id 00B2F20CA7;
 Mon, 26 Feb 2018 13:18:41 -0500 (EST)
Received: from frontend2 ([10.202.2.161])
 by compute5.internal (MEProxy); Mon, 26 Feb 2018 13:18:41 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=fastmail.com; h=
 cc:content-type:date:from:in-reply-to:message-id:mime-version
 :references:subject:to:x-me-sender:x-me-sender:x-sasl-enc; s=
 fm2; bh=OXlz0t9qFCpXPphzgsBO1rJy3iAODoVg9LuUFPwRCss=; b=Y5VSuHll
 J2wWB9lBlMY3RGbPgrXqrvqMfImjq+q00ZTix+RAqj7k5ElpLCDkZZ2XYyT1WNtY
 aJ18y7OyzEDmq4v20AcwwnHQl2OMrtFL9ZALpxgPi2FFulqo9MBo0zPcA7zqH8Xg
 e5pCTyDf4FqhULzky2tUeLnzL9ZR3WrwSZ0Z3fAp/OfZQ2IbNDtHCy1k/TZWkvaY
 E7SZeEsZKC2YQX3qzwI65WIrxdiiWgnbnPpoQdg4ULLb5aSZObH89YxX8vwWbPKo
 DBngTnHomYeFzjPxawFeWywEX6HgK6/sW6kk0Z4eCuzSN/spLHmtkAKvCr7Sqp2+
 B9rXhwhJIKzKnA==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
 messagingengine.com; h=cc:content-type:date:from:in-reply-to
 :message-id:mime-version:references:subject:to:x-me-sender
 :x-me-sender:x-sasl-enc; s=fm2; bh=OXlz0t9qFCpXPphzgsBO1rJy3iAOD
 oVg9LuUFPwRCss=; b=DhSU/HxX6gQcG9O3p7QQ+7V6a++EniCqscyQes4nOG5l0
 fCMfG4XFxdtf9ULNsAFpJcvqRV1G4cpwd0YMgL4ea93eY6er91j/OF8y1kvoNHZ8
 CrxANwkrUADhsO6MfwDL6OdX23ZgLeyLxaS8/xGzf7oZqEBXHAzJy5RLvqiJypyG
 fS/ddljahclGnLB1Ih57FGzqM3flkGYFybKpYEun7VJOSbjgAf8HqG4UVewQlnyD
 0bXLCwCqXgRPtqi6s0R9LbPEvdq4c/hN42ua+lNRr5MiM/6dgik/WXbmYv/egpbw
 GotIWhDXb3YwzlHMr9fCxOmQjF+62dMZkxJwi8DLw==
X-ME-Sender: <xms:gE-UWpC1WmK4H7vrLp2aF7C_1OwbMErCBI7AN3BuMjQ8dtT7pdi32g>
Received: from localhost (cm-84.214.173.174.getinternet.no [84.214.173.174])
 by mail.messagingengine.com (Postfix) with ESMTPA id 7C52C244F9;
 Mon, 26 Feb 2018 13:18:40 -0500 (EST)
From: Marius Bakke <mbakke@HIDDEN>
To: Mike Gerwitz <mtg@HIDDEN>
Subject: Re: [bug#28004] Chromium
In-Reply-To: <874lnkr0vf.fsf@HIDDEN>
References: <87y3qvb15k.fsf@HIDDEN>
 <20171010131949.y43plpzxbppvrigr@abyayala> <87lgkha2cx.fsf@HIDDEN>
 <20171012195628.GA31843@HIDDEN> <87shensfq6.fsf@HIDDEN>
 <87o9p45bb6.fsf@HIDDEN> <20180104191648.custe7w3l57fvbac@abyayala>
 <87wp0s2ewl.fsf@HIDDEN> <20180108232042.nqjurjr2bcfl2yyc@abyayala>
 <87373cey5b.fsf@HIDDEN> <87vag16g5z.fsf@HIDDEN>
 <87fu75aar5.fsf@HIDDEN> <874lnkr0vf.fsf@HIDDEN>
User-Agent: Notmuch/0.26 (https://notmuchmail.org) Emacs/25.3.1
 (x86_64-pc-linux-gnu)
Date: Mon, 26 Feb 2018 19:18:39 +0100
Message-ID: <87vaejvclc.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: multipart/signed; boundary="=-=-=";
 micalg=pgp-sha512; protocol="application/pgp-signature"
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 28004
Cc: 28004 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -0.7 (/)

--=-=-=
Content-Type: text/plain

Mike Gerwitz <mtg@HIDDEN> writes:

> On Tue, Jan 16, 2018 at 20:01:34 +0100, Marius Bakke wrote:
>> If there are no objections, expect to see this in 'master' in 1-2 weeks.
>
> I want to express gratitude for your hard work on this---given that
> IceCat does not contain many of the FF devtool updates, Chromium is very
> desirable for web development.  It's also needed for certain Node.js
> tools, like node-inspector.
>
> So, thank you!

Thank *you* for the kind words! :-)

Here is the latest iteration of this patch.  New in this version:

* Chromium 64 (duh).
* The 'delete-bundled-software' phase has been moved to a snippet,
  shaving ~100MiB (~22%) off the compressed tarball size (and
  drastically reduces (de)compression time).
* The New Tab page does not show any thumbnails for new profiles.

I've also added more comments about the patches and other flags.

Now, when launching the browser for the first time, it *still* connects
to Google services.  After a while it also does a lookup for AdWords...
However subsequent launches are "silent" as long as the Web Store is
disabled and "--disable-background-networking" is passed, like the
wrapper script does.

Incidentally, now that IceCat supports WebRTC (and somehow plugged the
IP address leak[0]!), I no longer *need* this package.  However, having
multiple high quality browsers at hand is a huge advantage IMO, so I'd
still like to have it in Guix.

What do y'all think?  Feedback on the snippet and description very
welcome.

[0] https://en.wikipedia.org/wiki/WebRTC#Concerns

--=-=-=
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQEzBAEBCgAdFiEEu7At3yzq9qgNHeZDoqBt8qM6VPoFAlqUT38ACgkQoqBt8qM6
VPrloggAq1FiRB2E8ycl17PaYtQw+w44/QaCDprS69Pz1vuWg05EthVcTgcvPGZb
fwLk13vLYcNlsI/ka7QHuov0XNb71O8CV/vt4AhReVZVVnIoXF5z/BmsKoSNd2u1
5LG0X/6tUi6ICdnsni/A1LzG63Gk+JZpctVS0lvrqqikWdzXrdfn4vvpZj+O9waL
+OQKv7qXWINLP7utj3jypfG4N17Sy0THsJpddBoyNYXjAEcu5M9VQdHQGWd/ptup
EA9N97iPqbOF9XmccEzxLbga2WfJ+SI+Wd5wefmz/6UbMmUBkhf6WXH3SdtYfF4b
pESr7422UheU1oWZzPzRtryma+AU2Q==
=T/a0
-----END PGP SIGNATURE-----
--=-=-=--




Information forwarded to guix-patches@HIDDEN:
bug#28004; Package guix-patches. Full text available.

Message received at 28004 <at> debbugs.gnu.org:


Received: (at 28004) by debbugs.gnu.org; 17 Jan 2018 14:55:46 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed Jan 17 09:55:45 2018
Received: from localhost ([127.0.0.1]:60254 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1ebp7x-0003Dp-LV
	for submit <at> debbugs.gnu.org; Wed, 17 Jan 2018 09:55:45 -0500
Received: from eggs.gnu.org ([208.118.235.92]:40391)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <mtg@HIDDEN>) id 1ebp7u-00039w-3e
 for 28004 <at> debbugs.gnu.org; Wed, 17 Jan 2018 09:55:43 -0500
Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)
 (envelope-from <mtg@HIDDEN>) id 1ebp7n-0006Sb-Ql
 for 28004 <at> debbugs.gnu.org; Wed, 17 Jan 2018 09:55:36 -0500
X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org
X-Spam-Level: 
X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,T_RP_MATCHES_RCVD
 autolearn=disabled version=3.3.2
Received: from fencepost.gnu.org ([2001:4830:134:3::e]:35284)
 by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from <mtg@HIDDEN>)
 id 1ebp7n-0006SG-OA; Wed, 17 Jan 2018 09:55:35 -0500
Received: from localhost ([::1]:41428 helo=mikegerwitz-pc.gerwitz.local)
 by fencepost.gnu.org with esmtps (TLS1.2:DHE_RSA_AES_128_CBC_SHA1:128)
 (Exim 4.82) (envelope-from <mtg@HIDDEN>)
 id 1ebp7n-0006rJ-Dk; Wed, 17 Jan 2018 09:55:35 -0500
From: Mike Gerwitz <mtg@HIDDEN>
To: Marius Bakke <mbakke@HIDDEN>
Subject: Re: [bug#28004] Chromium
In-Reply-To: <87fu75aar5.fsf@HIDDEN> (Marius Bakke's message of "Tue, 16
 Jan 2018 20:01:34 +0100")
Date: Wed, 17 Jan 2018 09:55:16 -0500
Message-ID: <874lnkr0vf.fsf@HIDDEN>
References: <87y3qvb15k.fsf@HIDDEN>
 <20171010131949.y43plpzxbppvrigr@abyayala> <87lgkha2cx.fsf@HIDDEN>
 <20171012195628.GA31843@HIDDEN> <87shensfq6.fsf@HIDDEN>
 <87o9p45bb6.fsf@HIDDEN> <20180104191648.custe7w3l57fvbac@abyayala>
 <87wp0s2ewl.fsf@HIDDEN> <20180108232042.nqjurjr2bcfl2yyc@abyayala>
 <87373cey5b.fsf@HIDDEN> <87vag16g5z.fsf@HIDDEN>
 <87fu75aar5.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.3 (gnu/linux)
OpenPGP: id=22175B02E626BC98D7C0C2E5F22BB8158EE30EAB
MIME-Version: 1.0
Content-Type: multipart/signed; boundary="=-=-=";
 micalg=pgp-sha512; protocol="application/pgp-signature"
X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic]
X-Received-From: 2001:4830:134:3::e
X-Spam-Score: -5.0 (-----)
X-Debbugs-Envelope-To: 28004
Cc: 28004 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -5.0 (-----)

--=-=-=
Content-Type: text/plain
Content-Transfer-Encoding: quoted-printable

On Tue, Jan 16, 2018 at 20:01:34 +0100, Marius Bakke wrote:
> If there are no objections, expect to see this in 'master' in 1-2 weeks.

I want to express gratitude for your hard work on this---given that
IceCat does not contain many of the FF devtool updates, Chromium is very
desirable for web development.  It's also needed for certain Node.js
tools, like node-inspector.

So, thank you!

=2D-=20
Mike Gerwitz
Free Software Hacker+Activist | GNU Maintainer & Volunteer
GPG: D6E9 B930 028A 6C38 F43B  2388 FEF6 3574 5E6F 6D05
https://mikegerwitz.com

--=-=-=
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2

iQIcBAEBCgAGBQJaX2PUAAoJEIyRe39dxRuiRZgP/iZfOgozMPR3XNHTPVpEbpNc
W9WjD5lQtDsX3cAUimLEoxGX5ehxvRGats0Ffhb2+Ui4oCFq7I2FeznwZ5UM7TmC
/bAFedXVFQOrmHRAwp0Uc9ZswiyvsmBNFYiZZMKW46RBwFhLdDqySkWCRfgfzoQa
87KCQ8WpBRlip4BKlg8+++FoGXzad5L65Ii0tdAKShUC0CbdPeGCGL3ugl6u47qA
D9LuSEKzxWW7IlQ+d4ZMdNrASWdhl+468gmfrK2MQAStpbx/TXfYZvFgi9Gky5si
nzVMkvKho9nFGmTL3e5xrf2IJvGgz4PQ5mFWOP5siTYh13xTwoLhpnWOE/T9o5kR
bLcJ81xXpTkxU1CxjD+C17Xy55s6dJD5ZFHOI3EVBwSFdUnmox3aUbPXLwy4Yyvw
2bZrjCnXGaZKyHGGCdhwNrmaywBJ4rRQ/juB9qTy3fGPWqEI4GkTP613JnwxiJHe
8xVShgHvX5EztPodXnt+LeRV9lhOUsY5yZMgm7wNmyIl/0wt3Gm9N3yL1EZcUGxe
oNSRSRekCSvfjEY7kMmoHdjNGat3qAe6ynqxJ3eUFWz4zR0ZqoeQRcF6bB/R6G1e
pgLFJAKigXjZ84XVcycz4f1UkEdwWPwb0Wsulu7yBzCyQNY/3aE+BJPjAQ/kRnxF
vg6clndP1X+MRNcK0e8q
=UADH
-----END PGP SIGNATURE-----
--=-=-=--




Information forwarded to guix-patches@HIDDEN:
bug#28004; Package guix-patches. Full text available.

Message received at 28004 <at> debbugs.gnu.org:


Received: (at 28004) by debbugs.gnu.org; 17 Jan 2018 08:53:22 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed Jan 17 03:53:22 2018
Received: from localhost ([127.0.0.1]:59392 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1ebjTG-0000wW-5R
	for submit <at> debbugs.gnu.org; Wed, 17 Jan 2018 03:53:22 -0500
Received: from hera.aquilenet.fr ([185.233.100.1]:38976)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <ludo@HIDDEN>) id 1ebjTF-0000wP-1j
 for 28004 <at> debbugs.gnu.org; Wed, 17 Jan 2018 03:53:21 -0500
Received: from localhost (localhost [127.0.0.1])
 by hera.aquilenet.fr (Postfix) with ESMTP id 592D610F63;
 Wed, 17 Jan 2018 09:53:20 +0100 (CET)
X-Virus-Scanned: Debian amavisd-new at aquilenet.fr
Received: from hera.aquilenet.fr ([127.0.0.1])
 by localhost (hera.aquilenet.fr [127.0.0.1]) (amavisd-new, port 10024)
 with ESMTP id xq8B6JHAsYM0; Wed, 17 Jan 2018 09:53:18 +0100 (CET)
Received: from ribbon (unknown [IPv6:2a01:e0a:1d:7270:af76:b9b:ca24:c465])
 by hera.aquilenet.fr (Postfix) with ESMTPSA id 4BDE510F60;
 Wed, 17 Jan 2018 09:53:18 +0100 (CET)
From: ludo@HIDDEN (Ludovic =?utf-8?Q?Court=C3=A8s?=)
To: Marius Bakke <mbakke@HIDDEN>
Subject: Re: [bug#28004] Chromium
References: <87y3qvb15k.fsf@HIDDEN>
 <20171010131949.y43plpzxbppvrigr@abyayala> <87lgkha2cx.fsf@HIDDEN>
 <20171012195628.GA31843@HIDDEN> <87shensfq6.fsf@HIDDEN>
 <87o9p45bb6.fsf@HIDDEN>
 <20180104191648.custe7w3l57fvbac@abyayala>
 <87wp0s2ewl.fsf@HIDDEN>
 <20180108232042.nqjurjr2bcfl2yyc@abyayala>
 <87373cey5b.fsf@HIDDEN> <87vag16g5z.fsf@HIDDEN>
 <87fu75aar5.fsf@HIDDEN>
X-URL: http://www.fdn.fr/~lcourtes/
X-Revolutionary-Date: 28 =?utf-8?Q?Niv=C3=B4se?= an 226 de la =?utf-8?Q?R?=
 =?utf-8?Q?=C3=A9volution?=
X-PGP-Key-ID: 0x090B11993D9AEBB5
X-PGP-Key: http://www.fdn.fr/~lcourtes/ludovic.asc
X-PGP-Fingerprint: 3CE4 6455 8A84 FDC6 9DB4  0CFB 090B 1199 3D9A EBB5
X-OS: x86_64-pc-linux-gnu
Date: Wed, 17 Jan 2018 09:53:17 +0100
In-Reply-To: <87fu75aar5.fsf@HIDDEN> (Marius Bakke's message of "Tue, 16
 Jan 2018 20:01:34 +0100")
Message-ID: <87po687toi.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.3 (gnu/linux)
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
X-Spam-Score: 1.0 (+)
X-Debbugs-Envelope-To: 28004
Cc: 28004 <at> debbugs.gnu.org, ng0 <ng0@HIDDEN>, Leo Famulari <leo@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: 1.0 (+)

Hello,

Marius Bakke <mbakke@HIDDEN> skribis:

> I believe this is pretty much ready.  However Chromium 64 is due in one
> week, so I'll wait for that.  Meanwhile I'll try to get rid of the
> default "most used" sites which links to the nonfree Web Store.

Oh yes, we should definitely do that.

> Not sure what to put in the description.  Can I hire Tobias for this? :P
>
> If there are no objections, expect to see this in 'master' in 1-2 weeks.

Sounds good.  Quite an achievement!

Thanks,
Ludo=E2=80=99.




Information forwarded to guix-patches@HIDDEN:
bug#28004; Package guix-patches. Full text available.

Message received at 28004 <at> debbugs.gnu.org:


Received: (at 28004) by debbugs.gnu.org; 16 Jan 2018 20:41:21 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Jan 16 15:41:21 2018
Received: from localhost ([127.0.0.1]:59126 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1ebY2q-0007Lf-Vc
	for submit <at> debbugs.gnu.org; Tue, 16 Jan 2018 15:41:21 -0500
Received: from out1-smtp.messagingengine.com ([66.111.4.25]:53989)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <leo@HIDDEN>) id 1ebY2o-0007LS-HI
 for 28004 <at> debbugs.gnu.org; Tue, 16 Jan 2018 15:41:19 -0500
Received: from compute4.internal (compute4.nyi.internal [10.202.2.44])
 by mailout.nyi.internal (Postfix) with ESMTP id EA41620EB5;
 Tue, 16 Jan 2018 15:41:17 -0500 (EST)
Received: from frontend2 ([10.202.2.161])
 by compute4.internal (MEProxy); Tue, 16 Jan 2018 15:41:17 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=famulari.name;
 h=cc:content-type:date:from:in-reply-to:message-id:mime-version
 :references:subject:to:x-me-sender:x-me-sender:x-sasl-enc; s=
 mesmtp; bh=dzKEgLkD2wjuoy2bLVvPgUBKXXLpHMR4X8jvLekZjhQ=; b=JyLou
 T2GKUgrTcGPNHtssM2tSvm3c0k91EXO4C3x4yncybaVCdV1Mx81JVVG/ZUvnhS9H
 yedg+zOt1CDbtZDXGafdNLsJpYdsLf1Pnh64zTL6eaQUlXwsak54nk77LUhLtS6d
 GyxgzxA8B+wn+IP7JHZN/i64fPVYMcxpLV8e+I=
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
 messagingengine.com; h=cc:content-type:date:from:in-reply-to
 :message-id:mime-version:references:subject:to:x-me-sender
 :x-me-sender:x-sasl-enc; s=fm1; bh=dzKEgLkD2wjuoy2bLVvPgUBKXXLpH
 MR4X8jvLekZjhQ=; b=ot3Zv6ApChH7HApILmBBa54+MYeV8fj7cg/kAq5j6n1xp
 8v3mbLoMwKktx1FeuvXVXma8GqwtOGh44j0Czmtm2HoRksNDeO3cJm2rE6CC3gdo
 RFiCQ5i1yUyYZ7++8bwvMG0hPW+HamplLUUeL0Fys6PYxIvrQ0Yh9d/1Zevqk1+j
 Yt85uZGLhhLhkDSyi0l5iM1a2M8s10YTQfXB9BML1PL/uoW8VNpZ/PSJOrwdJY7R
 oT3yEgHYDBlrF6weylY9vYrbSkl7qy05M601YZBBaER6BkpcaHf4TnbeijSv3mnZ
 pk3d4sEFG5shnMtTGgYQ8h/AGu1cY8olHesmOW2og==
X-ME-Sender: <xms:bWNeWjaSfLlD4VzB9UtC7lhdnZtau7y8VJ8qjnVzJ-XW-G91_N67_A>
Received: from localhost (71-93-196-183.dhcp.nrwl.ca.charter.com
 [71.93.196.183])
 by mail.messagingengine.com (Postfix) with ESMTPA id 7424724736;
 Tue, 16 Jan 2018 15:41:17 -0500 (EST)
Date: Tue, 16 Jan 2018 12:41:15 -0800
From: Leo Famulari <leo@HIDDEN>
To: Marius Bakke <mbakke@HIDDEN>
Subject: Re: [bug#28004] Chromium
Message-ID: <20180116204115.GA18014@HIDDEN>
References: <87shensfq6.fsf@HIDDEN> <87o9p45bb6.fsf@HIDDEN>
 <20180104191648.custe7w3l57fvbac@abyayala>
 <87wp0s2ewl.fsf@HIDDEN>
 <20180108232042.nqjurjr2bcfl2yyc@abyayala>
 <87373cey5b.fsf@HIDDEN> <87vag16g5z.fsf@HIDDEN>
 <87fu75aar5.fsf@HIDDEN>
 <ee73cfd1-e05b-f8e1-0c5c-6a589be176a3@HIDDEN>
 <87d129a9s7.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature"; boundary="huq684BweRXVnRxX"
Content-Disposition: inline
In-Reply-To: <87d129a9s7.fsf@HIDDEN>
User-Agent: Mutt/1.9.2 (2017-12-15)
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 28004
Cc: 28004 <at> debbugs.gnu.org, ludo@HIDDEN, Tobias Geerinckx-Rice <me@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -0.7 (/)


--huq684BweRXVnRxX
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On Tue, Jan 16, 2018 at 08:22:32PM +0100, Marius Bakke wrote:
> Tobias Geerinckx-Rice <me@HIDDEN> writes:
> > Marius Bakke wrote on 16/01/18 at 20:01:
> >> Not sure what to put in the description.  Can I hire Tobias for this? =
:P
> >
> > You probably don't want me writing what I think of Chromium.
>=20
> LOL, fair enough.
>=20
> I tend to assume zero-knowledge when writing descriptions and have been
> playing on spins of "Chromium is a browser designed to spy on the user",
> but carrying software with that description does not reflect very well
> on us...besides, I've gone great lengths to remove those antifeatures.
>=20
> I'd like to make it very clear that users concerned about privacy should
> prefer GNU IceCat though...  Suggestions welcome. :-)

The Synopses and Descriptions section of the manual says "Please avoid
marketing phrases" and "try to be factual, mentioning use cases and
features". I think we should also avoid "anti-marketing" language.

Why not keep it simple and say something like this:

"Chromium is a graphical web browser.  This package omits the FOO, BAR,
and BAZ features in order to help protect the user's privacy."

The IceCat description is similarly terse.

--huq684BweRXVnRxX
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQIzBAABCAAdFiEEsFFZSPHn08G5gDigJkb6MLrKfwgFAlpeY2gACgkQJkb6MLrK
fwjPSQ/+OLT/vl6OjM8Xo8wIanmBEXBE8QbJce6ohtSnNJzD9SsZsU6ZGlkYG8Xo
2cK37vqHalm5N0YPHwnEEh9Fjx5MuM/fODBeiKJtHezr8oHznCqQK3hhMVqxSxIk
G3+hQ76hUsiSzZb/EKClIdEEiwYm7Q6nP2k2KSudq/PDEJriJU0jtiKKdVp1de1t
+wLccj9ytsr7hQQEhxVeE67eLqO+V5qpLZ8qYmsr+kS/PDn9Qd+KJg7ExSA5zD9Z
ROzKXh6OyAIoLVWB9le1oprrKio96zvFw2A1fhDMmA2eYZ+sN9RyBohnzAAHxUxl
jBSOBb65EAxkSEH0eeH4HBE5A7y08upvw0WBNZhTqCBRa2yLAxASjaemO3Tcw94u
GJCCW50nIsMon1/ruf8ORlSi/SMG7ogd2wj6Kv3PjEBeou2G8lzt+GAiNn3O5Xee
5k9Ji/M8nHUKMLJseOMFlp4w3lVWRObvifSPGLcL3DSrT6v+h+yUM9/hGq51/ka6
QDiMj7h1xKpHr1IYUo665I2kXllmTHe9PiPb9PwX3v1R2Kp5O0ev58JVnskVcewk
L6HamgKS6l42Mwj0L0DlVPpwCLwIebwkAKRmux40qKbAog0m0ybT3sTuv3qZyGQo
TkXk/sh71/uR9eyDISneOIRMZb10qObHbu2Zx8knmY9tM/d51+Q=
=ps9d
-----END PGP SIGNATURE-----

--huq684BweRXVnRxX--




Information forwarded to guix-patches@HIDDEN:
bug#28004; Package guix-patches. Full text available.

Message received at 28004 <at> debbugs.gnu.org:


Received: (at 28004) by debbugs.gnu.org; 16 Jan 2018 19:22:36 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Jan 16 14:22:36 2018
Received: from localhost ([127.0.0.1]:59086 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1ebWoe-0005VQ-B6
	for submit <at> debbugs.gnu.org; Tue, 16 Jan 2018 14:22:36 -0500
Received: from out1-smtp.messagingengine.com ([66.111.4.25]:48879)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <mbakke@HIDDEN>) id 1ebWoc-0005VG-KY
 for 28004 <at> debbugs.gnu.org; Tue, 16 Jan 2018 14:22:35 -0500
Received: from compute5.internal (compute5.nyi.internal [10.202.2.45])
 by mailout.nyi.internal (Postfix) with ESMTP id 3FC6421025;
 Tue, 16 Jan 2018 14:22:34 -0500 (EST)
Received: from frontend1 ([10.202.2.160])
 by compute5.internal (MEProxy); Tue, 16 Jan 2018 14:22:34 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=fastmail.com; h=
 cc:content-type:date:from:in-reply-to:message-id:mime-version
 :references:subject:to:x-me-sender:x-me-sender:x-sasl-enc; s=
 fm1; bh=lex+GO6MOGLvNcbOjjMh5dGWA/H/3JLVh8ZZZewyIgo=; b=F854+qtx
 j9uFJlcTkPN2ps7UTU3izn9zEMTUGBsB9SWYjXLQBUIjeH3VomOw/MufYurUIuEO
 DDmUb1qiHdvuLRthkSCfgzft07EAoMXbi++J/WpIxbGL4fJSRlvlrPCPh+n2/Mih
 xDLfQTMx6WC1/qmk5rk00/d0yNtVU354TsQmTODikmLy2aJ5aeTR6YTufv0j25NI
 OWKtqhqq4jpk68uk4Ku6HLwTZv5XDdzXDCRHSK7ICoO6/yeSgfM2b92WTTYfoo1K
 X6Y8X9IEpxC6WK1g8Q/IcrCW5cyXFUiCJLRUaPYRjCvyQHYxSBV7lUrQA/kDXitU
 MFkRFftWspiWlg==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
 messagingengine.com; h=cc:content-type:date:from:in-reply-to
 :message-id:mime-version:references:subject:to:x-me-sender
 :x-me-sender:x-sasl-enc; s=fm1; bh=lex+GO6MOGLvNcbOjjMh5dGWA/H/3
 JLVh8ZZZewyIgo=; b=rh5am24bZPA1lvN0KZ26A5euPtcfYXAgg2qEzYyCuJjn1
 g4mKKYqzJxcweqfrTXAmnZXNlSDx12kUofv/phH6o3NeaAFa9B1ZAdge8UkEJo87
 T/S4ZaBpIjItTWdFzS056wfrnUxgS6QOpaEulhAkjW95bHJ/Ets0qvbioAuOnhX4
 oi4eNWEb6kFrBXWmlDy6NbjocUY50cC2fHbm0dD+QSH9dCdm07W0Z2n+YXi5s3sT
 T0xNxx64RshpJDuQZdjUv8jy5wKDhGQ29w8DZ7ibGjCmSXz7ltUBkcTv6O5ZYpsc
 cgfpIZYeLsUP9iDktgQQgJqhAuXHIZLeMRrf7YM5Q==
X-ME-Sender: <xms:-lBeWox7uQ_T65RpxmBajv2bPeTHnvj6f0djxdkB9cJ14ttUU4e4ZQ>
Received: from localhost (cm-84.214.173.174.getinternet.no [84.214.173.174])
 by mail.messagingengine.com (Postfix) with ESMTPA id BEF9D7E34D;
 Tue, 16 Jan 2018 14:22:33 -0500 (EST)
From: Marius Bakke <mbakke@HIDDEN>
To: Tobias Geerinckx-Rice <me@HIDDEN>, ludo@HIDDEN
Subject: Re: [bug#28004] Chromium
In-Reply-To: <ee73cfd1-e05b-f8e1-0c5c-6a589be176a3@HIDDEN>
References: <87y3qvb15k.fsf@HIDDEN>
 <20171010131949.y43plpzxbppvrigr@abyayala> <87lgkha2cx.fsf@HIDDEN>
 <20171012195628.GA31843@HIDDEN> <87shensfq6.fsf@HIDDEN>
 <87o9p45bb6.fsf@HIDDEN> <20180104191648.custe7w3l57fvbac@abyayala>
 <87wp0s2ewl.fsf@HIDDEN> <20180108232042.nqjurjr2bcfl2yyc@abyayala>
 <87373cey5b.fsf@HIDDEN> <87vag16g5z.fsf@HIDDEN>
 <87fu75aar5.fsf@HIDDEN>
 <ee73cfd1-e05b-f8e1-0c5c-6a589be176a3@HIDDEN>
User-Agent: Notmuch/0.26 (https://notmuchmail.org) Emacs/25.3.1
 (x86_64-pc-linux-gnu)
Date: Tue, 16 Jan 2018 20:22:32 +0100
Message-ID: <87d129a9s7.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: multipart/signed; boundary="=-=-=";
 micalg=pgp-sha512; protocol="application/pgp-signature"
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 28004
Cc: 28004 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -0.7 (/)

--=-=-=
Content-Type: text/plain

Tobias Geerinckx-Rice <me@HIDDEN> writes:

> Marius!
>
> Marius Bakke wrote on 16/01/18 at 20:01:
>> Not sure what to put in the description.  Can I hire Tobias for this? :P
>
> You probably don't want me writing what I think of Chromium.

LOL, fair enough.

I tend to assume zero-knowledge when writing descriptions and have been
playing on spins of "Chromium is a browser designed to spy on the user",
but carrying software with that description does not reflect very well
on us...besides, I've gone great lengths to remove those antifeatures.

I'd like to make it very clear that users concerned about privacy should
prefer GNU IceCat though...  Suggestions welcome. :-)

--=-=-=
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQEzBAEBCgAdFiEEu7At3yzq9qgNHeZDoqBt8qM6VPoFAlpeUPgACgkQoqBt8qM6
VPpgPwgAmY4+KJFwJRgYrPnnV6gZDjpC1GGx2IhsFIGGwMTqGzh62VKvW1Dp2bzA
1Sc+/WuWZ7grQ+XD9BGVVeb6sxFLNMOwVzPZCaoXTKElebWOZ4t1ZCPBmprA/7gh
i4aErnj/T3agIMrFJLHo0kz8KqBI4UEzYkW+DTca1doWTVOebye3KGWfA5RgVaNV
l2XO9Svf6K3MFNifnZnZROgzSnbc9nRdVF3VjLehd24U+riypl4W9KbNZAt4xnfP
pPmwv12XUkEsv4VSoKTApLNgKN39O+PD8pLBlPK/APPjy6bjpTvtphPMnMTPpBpE
BWp1m47Talkuni95eKw+FicfnLztIA==
=fOnt
-----END PGP SIGNATURE-----
--=-=-=--




Information forwarded to guix-patches@HIDDEN:
bug#28004; Package guix-patches. Full text available.

Message received at 28004 <at> debbugs.gnu.org:


Received: (at 28004) by debbugs.gnu.org; 16 Jan 2018 19:06:56 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Jan 16 14:06:56 2018
Received: from localhost ([127.0.0.1]:59076 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1ebWZT-00058V-Vg
	for submit <at> debbugs.gnu.org; Tue, 16 Jan 2018 14:06:56 -0500
Received: from tobias.gr ([51.15.135.5]:38812)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <me@HIDDEN>) id 1ebWZS-00058N-MF
 for 28004 <at> debbugs.gnu.org; Tue, 16 Jan 2018 14:06:55 -0500
Received: by tobias.gr (OpenSMTPD) with ESMTP id dbc3edd6;
 Tue, 16 Jan 2018 19:06:52 +0000 (UTC)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed; d=tobias.gr; h=subject:to
 :cc:references:from:message-id:date:mime-version:in-reply-to
 :content-type; s=2018; bh=LSO/JFDn/behxcjVE+gLDRFXOI8WnJ1ZIo3aIF
 6ysX4=; b=cNfpE3M81TGVerJpWl13zm2aNXzjvQC+ynBh02aL7xaHqrSWyjgEw/
 jBS2KzjAIdfEsglWqVuiBR/L4UKJmpzWTeuYTbCtXoGK29ea3TTxshy0OONnSkZv
 voCVvDx5hPi/jINvc51TYzUGfhPZe2vHy2EwGTyEbHmWIki+5s/9eFOH9dKjjF//
 l0LrS+LSdCyBtdJsOniEhkOyoBLNKrIulfTorTwVx2zkTNXsUWwuRbrPTOltaSWB
 eDi0W+vSQz1g/IgWIaTYTxljZbZmkgSNVs76zEW4kEC4wjd6iJQuXvfsy/oZGOpR
 uzlP/dsTKCmoLZx24m0noqTmzStvMQaQ==
Received: by submission.tobias.gr (OpenSMTPD) with ESMTPSA id 3bf9d435
 (TLSv1.2:ECDHE-RSA-CHACHA20-POLY1305:256:NO); 
 Tue, 16 Jan 2018 19:06:50 +0000 (UTC)
Subject: Re: [bug#28004] Chromium
To: mbakke@HIDDEN, ludo@HIDDEN
References: <87y3qvb15k.fsf@HIDDEN>
 <20171010131949.y43plpzxbppvrigr@abyayala> <87lgkha2cx.fsf@HIDDEN>
 <20171012195628.GA31843@HIDDEN> <87shensfq6.fsf@HIDDEN>
 <87o9p45bb6.fsf@HIDDEN> <20180104191648.custe7w3l57fvbac@abyayala>
 <87wp0s2ewl.fsf@HIDDEN> <20180108232042.nqjurjr2bcfl2yyc@abyayala>
 <87373cey5b.fsf@HIDDEN> <87vag16g5z.fsf@HIDDEN>
 <87fu75aar5.fsf@HIDDEN>
From: Tobias Geerinckx-Rice <me@HIDDEN>
Message-ID: <ee73cfd1-e05b-f8e1-0c5c-6a589be176a3@HIDDEN>
Date: Tue, 16 Jan 2018 20:09:41 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
 Thunderbird/52.5.0
MIME-Version: 1.0
In-Reply-To: <87fu75aar5.fsf@HIDDEN>
Content-Type: multipart/signed; micalg=pgp-sha512;
 protocol="application/pgp-signature";
 boundary="PAnmkOQmPgvM0hm475nQZnAG89chxRqzn"
X-Spam-Score: -2.3 (--)
X-Debbugs-Envelope-To: 28004
Cc: 28004 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -2.3 (--)

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--PAnmkOQmPgvM0hm475nQZnAG89chxRqzn
Content-Type: multipart/mixed; boundary="dS7ONX2m1GhkmOBGLHH25gdFGmy02qDzr";
 protected-headers="v1"
From: Tobias Geerinckx-Rice <me@HIDDEN>
To: mbakke@HIDDEN, ludo@HIDDEN
Cc: 28004 <at> debbugs.gnu.org
Message-ID: <ee73cfd1-e05b-f8e1-0c5c-6a589be176a3@HIDDEN>
Subject: Re: [bug#28004] Chromium
References: <87y3qvb15k.fsf@HIDDEN>
 <20171010131949.y43plpzxbppvrigr@abyayala> <87lgkha2cx.fsf@HIDDEN>
 <20171012195628.GA31843@HIDDEN> <87shensfq6.fsf@HIDDEN>
 <87o9p45bb6.fsf@HIDDEN> <20180104191648.custe7w3l57fvbac@abyayala>
 <87wp0s2ewl.fsf@HIDDEN> <20180108232042.nqjurjr2bcfl2yyc@abyayala>
 <87373cey5b.fsf@HIDDEN> <87vag16g5z.fsf@HIDDEN>
 <87fu75aar5.fsf@HIDDEN>
In-Reply-To: <87fu75aar5.fsf@HIDDEN>

--dS7ONX2m1GhkmOBGLHH25gdFGmy02qDzr
Content-Type: text/plain; charset=utf-8
Content-Language: en-GB
Content-Transfer-Encoding: quoted-printable

Marius!

Marius Bakke wrote on 16/01/18 at 20:01:
> Not sure what to put in the description.  Can I hire Tobias for this? :=
P

You probably don't want me writing what I think of Chromium.

Kind regards,

T G-R


--dS7ONX2m1GhkmOBGLHH25gdFGmy02qDzr--

--PAnmkOQmPgvM0hm475nQZnAG89chxRqzn
Content-Type: application/pgp-signature; name="signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="signature.asc"

-----BEGIN PGP SIGNATURE-----

iIMEARYKACsWIQT12iAyS4c9C3o4dnINsP+IT1VteQUCWl5N/Q0cbWVAdG9iaWFz
LmdyAAoJEA2w/4hPVW15AvMBANjXbISSYkjlnSRdV6FsczegfMkaJPKlCNrA1ZlX
I0LbAQDke0gLdy9vdqYKqYPeL9bnbw9ogRdebFrFWF4bh+neDA==
=1/Rp
-----END PGP SIGNATURE-----

--PAnmkOQmPgvM0hm475nQZnAG89chxRqzn--




Information forwarded to guix-patches@HIDDEN:
bug#28004; Package guix-patches. Full text available.

Message received at 28004 <at> debbugs.gnu.org:


Received: (at 28004) by debbugs.gnu.org; 16 Jan 2018 19:04:58 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Jan 16 14:04:58 2018
Received: from localhost ([127.0.0.1]:59071 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1ebWXa-00055O-HC
	for submit <at> debbugs.gnu.org; Tue, 16 Jan 2018 14:04:58 -0500
Received: from aibo.runbox.com ([91.220.196.211]:50856)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <ng0@HIDDEN>) id 1ebWXU-000558-Tg
 for 28004 <at> debbugs.gnu.org; Tue, 16 Jan 2018 14:04:55 -0500
Received: from [10.9.9.211] (helo=mailfront11.runbox.com)
 by mailtransmit02.runbox with esmtp (Exim 4.86_2)
 (envelope-from <ng0@HIDDEN>)
 id 1ebWXO-0004bI-Ss; Tue, 16 Jan 2018 20:04:47 +0100
Received: from dslb-088-078-094-182.088.078.pools.vodafone-ip.de
 ([88.78.94.182] helo=localhost)
 by mailfront11.runbox.com with esmtpsa (uid:892961 )
 (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82)
 id 1ebWX3-0002T0-Qb; Tue, 16 Jan 2018 20:04:25 +0100
Date: Tue, 16 Jan 2018 20:04:21 +0000
From: ng0 <ng0@HIDDEN>
To: Ludovic =?utf-8?Q?Court=C3=A8s?= <ludo@HIDDEN>
Subject: Re: [bug#28004] Chromium
Message-ID: <20180116200421.irjxlsumisngpob5@abyayala>
References: <20171010131949.y43plpzxbppvrigr@abyayala> <87lgkha2cx.fsf@HIDDEN>
 <20171012195628.GA31843@HIDDEN> <87shensfq6.fsf@HIDDEN>
 <87o9p45bb6.fsf@HIDDEN>
 <20180104191648.custe7w3l57fvbac@abyayala>
 <87wp0s2ewl.fsf@HIDDEN>
 <20180108232042.nqjurjr2bcfl2yyc@abyayala>
 <87373cey5b.fsf@HIDDEN> <87vag16g5z.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: multipart/signed; micalg=pgp-sha512;
 protocol="application/pgp-signature"; boundary="paobxpciynohnxfa"
Content-Disposition: inline
In-Reply-To: <87vag16g5z.fsf@HIDDEN>
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 28004
Cc: 28004 <at> debbugs.gnu.org, Marius Bakke <mbakke@HIDDEN>, ng0 <ng0@HIDDEN>,
 Leo Famulari <leo@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -0.7 (/)


--paobxpciynohnxfa
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

Ludovic Court=C3=A8s transcribed 0.8K bytes:
> Hi Marius,
>=20
> Marius Bakke <mbakke@HIDDEN> skribis:
>=20
> > The attached patch adds Spectre mitigation to the current Chromium
> > release.  The patch was pulled from the Chrome 64 branch:
> >
> > From b011b57f357af97f3a003a3b1c481fc8bd2b869c Mon Sep 17 00:00:00 2001
> > From: Marius Bakke <mbakke@HIDDEN>
> > Date: Thu, 11 Jan 2018 14:36:47 +0100
> > Subject: [PATCH] gnu: chromium: Add spectre mitigation.
> >
> > * gnu/packages/patches/chromium-spectre-mitigation.patch: New file.
> > * gnu/local.mk (dist_patch_DATA): Register it.
> > * gnu/packages/chromium.scm (chromium)[source]: Use it.
>=20
> I didn=E2=80=99t really follow the whole discussion :-), but if what you =
have is
> now OK from the freedom and security viewpoints (including bundling),
> perhaps you can go ahead?
>=20
> Ludo=E2=80=99.
>=20

=46rom a usability point of view it's definitely okay, I've been using this
for a while now, no crashes so far.
Coming up with a way to define extensions is just a matter of placing the
Lego blocks in the right position. Gentoo and other systems (maybe Nix) off=
er
insights.
I'd say to get to a PoC package for an easy extension, under the assumption
that the general integration works, it could be done in a couple of working
weekends.
--=20
ng0 :: https://ea.n0.is
A88C8ADD129828D7EAC02E52E22F9BBFEE348588 :: https://ea.n0.is/keys/

--paobxpciynohnxfa
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQIzBAABCgAdFiEEqIyK3RKYKNfqwC5S4i+bv+40hYgFAlpeWsUACgkQ4i+bv+40
hYi9Lg/9HrswBaKnqUaxo3k7yWD0ZGE4vrPqtlIZX04puBYBBrziUhcrU/1EZnw6
K/JU2+UvD9jnaa8hiK6qmppjXiAASDvCny5qo/f7hl5zqETL0VD5RMxlK9cbrykQ
tiDc+R5Y7BhDJOBZD66/UvBzwaXoQlgAaAMCNL4B0dXQxaMBj2MCO6dbA5ZBT30s
PrauHrS0mEMb36c2tFdALk0N0vVUrX/TGeOctDCGYbTGyjppwpsoiJ1ckpN8V3FJ
c6FVlWg8szKsbsuP3aj/ZhDD2vu3vXxWv5fr89NH8jipKohZrlqC9HoNBFKwPrYa
Qjpp0utDALz7DAB9z8ZMVou0RPFpCQnvXwNvC5/o/+Fj7nxwfm8tApMz4DJxyGn0
jQksCdarGVYjqXv7I1c0Wa/4tN4O0T/uQ6oOYkMWvbeMYkG1NimvdZ6bQdfng6pG
Q8E+ZJuL5DKak9/5HIjwgdXyA+WlhZbBeNha/QH8Vbf+dl/agABcBb00StjtDC7G
QLSwe3ojIR3V2QFV6llmG8TDOYXsKGA5kHuD5ZRW+wDw1Y8YCP6C4b7gkfjWn3z4
4xmev8N40xOUkQCalXBSGu1lRb3XcvBSp0aEECdm3Y6cQLsjZoicz9RF556O5Lae
vk9cAoSCNgChvKZAa1f1Ne/wnTfrixKyXYzAzG6BkQ2NZiGyUzg=
=wsUS
-----END PGP SIGNATURE-----

--paobxpciynohnxfa--




Information forwarded to guix-patches@HIDDEN:
bug#28004; Package guix-patches. Full text available.

Message received at 28004 <at> debbugs.gnu.org:


Received: (at 28004) by debbugs.gnu.org; 16 Jan 2018 19:01:43 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Jan 16 14:01:43 2018
Received: from localhost ([127.0.0.1]:59067 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1ebWUQ-00050n-V0
	for submit <at> debbugs.gnu.org; Tue, 16 Jan 2018 14:01:43 -0500
Received: from out1-smtp.messagingengine.com ([66.111.4.25]:45871)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <mbakke@HIDDEN>) id 1ebWUL-00050a-3N
 for 28004 <at> debbugs.gnu.org; Tue, 16 Jan 2018 14:01:39 -0500
Received: from compute5.internal (compute5.nyi.internal [10.202.2.45])
 by mailout.nyi.internal (Postfix) with ESMTP id 6C6BA20BFE;
 Tue, 16 Jan 2018 14:01:36 -0500 (EST)
Received: from frontend1 ([10.202.2.160])
 by compute5.internal (MEProxy); Tue, 16 Jan 2018 14:01:36 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=fastmail.com; h=
 cc:content-type:date:from:in-reply-to:message-id:mime-version
 :references:subject:to:x-me-sender:x-me-sender:x-sasl-enc; s=
 fm1; bh=3Pfe7GLKCwFVZhIUwMDOARSQK4T+ny7GwACtIBF0UBI=; b=SPnOpVwE
 43bgDf1dchbU1dpbuqyRdm89JeyMG9KR4hDr0eV21m+i0ywzFwDMRZXXExTB3zhR
 4/SF+wHuQ8kAWqNsbgqGKef9LsIm0kxohEBL3rAKc9J9ikJmQX5pAwz1VQIGo1eY
 1AAZXxQF89cY22JHBOmqq9I8HnDLeqBy5XVgxxNW0kzOvvsN/2VcpmOoaiGbn1z3
 CYPMjKHR1JRLmJ88vcQKZHbjoaVevIU6h9+qYT29kET4qn0mbM1OwcXjXpYozIIX
 op+47NbwF1IXajPQDx57KrIEOKc4E+FXpY4k9orerhx7exDjIYSQTf1GWMVMH+Kz
 MG2aRdc4C86OVg==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
 messagingengine.com; h=cc:content-type:date:from:in-reply-to
 :message-id:mime-version:references:subject:to:x-me-sender
 :x-me-sender:x-sasl-enc; s=fm1; bh=3Pfe7GLKCwFVZhIUwMDOARSQK4T+n
 y7GwACtIBF0UBI=; b=eQL/ifVfX1DuMv0NurEaTET4nA3kuLM6r3DHRiyHU7/sg
 m5e2G4AOus35kZbx94ZWi8KU/DcKhyeJz4nbtnXXBXxxWCeb+VjBhieEtCaV+z4y
 I9QgzNDtrC+pdY7IiCGLO/2v1W9z+RTJzkbxipYzxv51HyzKVnnBH1cVJl+nJrVJ
 f2ypGSP8cStQaNull66ImQZgCWY4MDpaGmvY/oesX8BYR9Tw9dCp9KfDCfnlJVMN
 kcP2l7AsPAmIQuL9mdp3eYbpe3WLYRLBpKXWZohTUQd5EqMpV0llu7DlWsZv31pz
 zrEweY4x8S/QxtGKAHKnTwnYNOFfP1o1jmbFXySgw==
X-ME-Sender: <xms:EExeWjvwqr2ELro4sFXWYywQBV0UB6pry2GRo6Esdgv7BCki-c7lIg>
Received: from localhost (cm-84.214.173.174.getinternet.no [84.214.173.174])
 by mail.messagingengine.com (Postfix) with ESMTPA id DA0E97E3D4;
 Tue, 16 Jan 2018 14:01:35 -0500 (EST)
From: Marius Bakke <mbakke@HIDDEN>
To: Ludovic =?utf-8?Q?Court=C3=A8s?= <ludo@HIDDEN>
Subject: Re: [bug#28004] Chromium
In-Reply-To: <87vag16g5z.fsf@HIDDEN>
References: <87y3qvb15k.fsf@HIDDEN>
 <20171010131949.y43plpzxbppvrigr@abyayala> <87lgkha2cx.fsf@HIDDEN>
 <20171012195628.GA31843@HIDDEN> <87shensfq6.fsf@HIDDEN>
 <87o9p45bb6.fsf@HIDDEN> <20180104191648.custe7w3l57fvbac@abyayala>
 <87wp0s2ewl.fsf@HIDDEN> <20180108232042.nqjurjr2bcfl2yyc@abyayala>
 <87373cey5b.fsf@HIDDEN> <87vag16g5z.fsf@HIDDEN>
User-Agent: Notmuch/0.26 (https://notmuchmail.org) Emacs/25.3.1
 (x86_64-pc-linux-gnu)
Date: Tue, 16 Jan 2018 20:01:34 +0100
Message-ID: <87fu75aar5.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: multipart/signed; boundary="=-=-=";
 micalg=pgp-sha512; protocol="application/pgp-signature"
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 28004
Cc: 28004 <at> debbugs.gnu.org, ng0 <ng0@HIDDEN>, Leo Famulari <leo@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -0.7 (/)

--=-=-=
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable

Ludovic Court=C3=A8s <ludo@HIDDEN> writes:

> Hi Marius,
>
> Marius Bakke <mbakke@HIDDEN> skribis:
>
>> The attached patch adds Spectre mitigation to the current Chromium
>> release.  The patch was pulled from the Chrome 64 branch:
>>
>> From b011b57f357af97f3a003a3b1c481fc8bd2b869c Mon Sep 17 00:00:00 2001
>> From: Marius Bakke <mbakke@HIDDEN>
>> Date: Thu, 11 Jan 2018 14:36:47 +0100
>> Subject: [PATCH] gnu: chromium: Add spectre mitigation.
>>
>> * gnu/packages/patches/chromium-spectre-mitigation.patch: New file.
>> * gnu/local.mk (dist_patch_DATA): Register it.
>> * gnu/packages/chromium.scm (chromium)[source]: Use it.
>
> I didn=E2=80=99t really follow the whole discussion :-), but if what you =
have is
> now OK from the freedom and security viewpoints (including bundling),
> perhaps you can go ahead?

I believe this is pretty much ready.  However Chromium 64 is due in one
week, so I'll wait for that.  Meanwhile I'll try to get rid of the
default "most used" sites which links to the nonfree Web Store.

Not sure what to put in the description.  Can I hire Tobias for this? :P

If there are no objections, expect to see this in 'master' in 1-2 weeks.

--=-=-=
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQEzBAEBCgAdFiEEu7At3yzq9qgNHeZDoqBt8qM6VPoFAlpeTA4ACgkQoqBt8qM6
VPqvkAf8DWaQTEwZG4k8tUyN0YpBoeWn61SGaMl4YFsID0u8ZTgZJl84Zl4qBsbh
YZOE+DtciImNSUp4BPEJYtGcEIS75YKM8tvPgXUWUJFbUZLrHgHU7S/Dfd2LVIuh
cmqLhaxTVj0qEzK9xRtpqlEmNarHtryMniHvZS5vgqVw+cqBYCzYO/IrO/mD1MW5
g5tGu3zwPvms0uS/ku4s3w0vqKjtRIRomnRr0eOToq9sUBG6ANFwVMfNB6Ua71jW
QTSRyKdjVZYe7bK60kawtvW24I5PtziV++6jzVunQWlqIlQviDx3nxLjq4yAYSd9
+6Q91PkIa/fBJxkiXd65UuB8424biQ==
=TzwX
-----END PGP SIGNATURE-----
--=-=-=--




Information forwarded to guix-patches@HIDDEN:
bug#28004; Package guix-patches. Full text available.

Message received at 28004 <at> debbugs.gnu.org:


Received: (at 28004) by debbugs.gnu.org; 16 Jan 2018 14:18:24 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Jan 16 09:18:23 2018
Received: from localhost ([127.0.0.1]:58201 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1ebS4F-0000Ze-MY
	for submit <at> debbugs.gnu.org; Tue, 16 Jan 2018 09:18:23 -0500
Received: from hera.aquilenet.fr ([185.233.100.1]:54066)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <ludo@HIDDEN>) id 1ebS4B-0000ZR-1m
 for 28004 <at> debbugs.gnu.org; Tue, 16 Jan 2018 09:18:22 -0500
Received: from localhost (localhost [127.0.0.1])
 by hera.aquilenet.fr (Postfix) with ESMTP id 9B2AB10D98;
 Tue, 16 Jan 2018 15:18:18 +0100 (CET)
X-Virus-Scanned: Debian amavisd-new at aquilenet.fr
Received: from hera.aquilenet.fr ([127.0.0.1])
 by localhost (hera.aquilenet.fr [127.0.0.1]) (amavisd-new, port 10024)
 with ESMTP id ZxJyusxxCJ6y; Tue, 16 Jan 2018 15:18:18 +0100 (CET)
Received: from ribbon (unknown [193.50.110.60])
 by hera.aquilenet.fr (Postfix) with ESMTPSA id D198510CF0;
 Tue, 16 Jan 2018 15:18:17 +0100 (CET)
From: ludo@HIDDEN (Ludovic =?utf-8?Q?Court=C3=A8s?=)
To: Marius Bakke <mbakke@HIDDEN>
Subject: Re: [bug#28004] Chromium
References: <87y3qvb15k.fsf@HIDDEN>
 <20171010131949.y43plpzxbppvrigr@abyayala> <87lgkha2cx.fsf@HIDDEN>
 <20171012195628.GA31843@HIDDEN> <87shensfq6.fsf@HIDDEN>
 <87o9p45bb6.fsf@HIDDEN>
 <20180104191648.custe7w3l57fvbac@abyayala>
 <87wp0s2ewl.fsf@HIDDEN>
 <20180108232042.nqjurjr2bcfl2yyc@abyayala>
 <87373cey5b.fsf@HIDDEN>
X-URL: http://www.fdn.fr/~lcourtes/
X-Revolutionary-Date: 27 =?utf-8?Q?Niv=C3=B4se?= an 226 de la =?utf-8?Q?R?=
 =?utf-8?Q?=C3=A9volution?=
X-PGP-Key-ID: 0x090B11993D9AEBB5
X-PGP-Key: http://www.fdn.fr/~lcourtes/ludovic.asc
X-PGP-Fingerprint: 3CE4 6455 8A84 FDC6 9DB4  0CFB 090B 1199 3D9A EBB5
X-OS: x86_64-pc-linux-gnu
Date: Tue, 16 Jan 2018 15:18:16 +0100
In-Reply-To: <87373cey5b.fsf@HIDDEN> (Marius Bakke's message of "Fri, 12
 Jan 2018 01:09:04 +0100")
Message-ID: <87vag16g5z.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.3 (gnu/linux)
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
X-Spam-Score: 1.0 (+)
X-Debbugs-Envelope-To: 28004
Cc: 28004 <at> debbugs.gnu.org, ng0 <ng0@HIDDEN>, Leo Famulari <leo@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: 1.0 (+)

Hi Marius,

Marius Bakke <mbakke@HIDDEN> skribis:

> The attached patch adds Spectre mitigation to the current Chromium
> release.  The patch was pulled from the Chrome 64 branch:
>
> From b011b57f357af97f3a003a3b1c481fc8bd2b869c Mon Sep 17 00:00:00 2001
> From: Marius Bakke <mbakke@HIDDEN>
> Date: Thu, 11 Jan 2018 14:36:47 +0100
> Subject: [PATCH] gnu: chromium: Add spectre mitigation.
>
> * gnu/packages/patches/chromium-spectre-mitigation.patch: New file.
> * gnu/local.mk (dist_patch_DATA): Register it.
> * gnu/packages/chromium.scm (chromium)[source]: Use it.

I didn=E2=80=99t really follow the whole discussion :-), but if what you ha=
ve is
now OK from the freedom and security viewpoints (including bundling),
perhaps you can go ahead?

Ludo=E2=80=99.




Information forwarded to guix-patches@HIDDEN:
bug#28004; Package guix-patches. Full text available.

Message received at 28004 <at> debbugs.gnu.org:


Received: (at 28004) by debbugs.gnu.org; 14 Jan 2018 11:10:48 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sun Jan 14 06:10:48 2018
Received: from localhost ([127.0.0.1]:55413 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1eagBU-0004TC-Ai
	for submit <at> debbugs.gnu.org; Sun, 14 Jan 2018 06:10:47 -0500
Received: from aibo.runbox.com ([91.220.196.211]:47640)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <ng0@HIDDEN>) id 1eagBP-0004Sy-Hn
 for 28004 <at> debbugs.gnu.org; Sun, 14 Jan 2018 06:10:38 -0500
Received: from [10.9.9.210] (helo=mailfront10.runbox.com)
 by mailtransmit02.runbox with esmtp (Exim 4.86_2)
 (envelope-from <ng0@HIDDEN>)
 id 1eagBN-0003kc-Qx; Sun, 14 Jan 2018 12:10:33 +0100
Received: from dslb-092-073-146-083.092.073.pools.vodafone-ip.de
 ([92.73.146.83] helo=localhost)
 by mailfront10.runbox.com with esmtpsa (uid:892961 )
 (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82)
 id 1eagB9-000251-KO; Sun, 14 Jan 2018 12:10:20 +0100
Date: Sun, 14 Jan 2018 12:10:21 +0000
From: ng0 <ng0@HIDDEN>
To: Marius Bakke <mbakke@HIDDEN>
Subject: Re: [bug#28004] Chromium
Message-ID: <20180114121021.kjkkfzpvwkepaxsh@abyayala>
References: <87lgkha2cx.fsf@HIDDEN> <20171012195628.GA31843@HIDDEN>
 <87shensfq6.fsf@HIDDEN> <87o9p45bb6.fsf@HIDDEN>
 <20180104191648.custe7w3l57fvbac@abyayala>
 <87wp0s2ewl.fsf@HIDDEN>
 <20180108232042.nqjurjr2bcfl2yyc@abyayala>
 <87373cey5b.fsf@HIDDEN>
 <20180113190235.4yhko2v5cxiu7p6f@abyayala>
 <20180113191357.lqiwwyw3jxcimaqa@abyayala>
MIME-Version: 1.0
Content-Type: multipart/signed; micalg=pgp-sha512;
 protocol="application/pgp-signature"; boundary="rhpp4fbt4wy637lc"
Content-Disposition: inline
In-Reply-To: <20180113191357.lqiwwyw3jxcimaqa@abyayala>
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 28004
Cc: 28004 <at> debbugs.gnu.org, ng0 <ng0@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: 0.0 (/)


--rhpp4fbt4wy637lc
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

ng0 transcribed 14K bytes:
> ng0 transcribed 5.6K bytes:
> > I just got a bug report for the build via:
> >=20
> > guix pull --url=3D"https://c.n0.is/git/ng0/guix/guix.git" --branch=3D"p=
retest/chromium"
> > guix package --install chromium
> >=20
> > Failing with the attached build log excerpt. We are not FreeBSD, but I =
found
> > this in the first 5 minutes: https://bugs.freebsd.org/bugzilla/show_bug=
=2Ecgi?id=3D160935
> > Maybe it helps to debug this, or maybe you've encountered this before.
> >=20
> > I myself have been able to build this without issues on two systems.
> >=20
> > All mentioned systems are GuixSD.
> >=20
>=20
> this time with attached file.

My guess was "low on RAM or swap", as it turns out this was right. With more
RAM and/or swap space it builds.

> > This should be a blocker, but maybe a head-up in potential build issues.
> > Marius Bakke transcribed 4.5K bytes:
> > > ng0 <ng0@HIDDEN> writes:
> > >=20
> > > > Many thanks for your ongoing work with this (and the patience :))
> > > > As this is 63, you you are keeping track of Debian, right? I tried
> > > > to package 64 a couple of days ago because I wanted the workaround
> > > > for some of the recent security clusterfucks, but Debian is still
> > > > on 63 :/
> > > > I hope they'll update their patchset soon.
> > >=20
> > > Indeed Google did not add the Spectre mitigation to Chromium 63, even
> > > though the latest version was released after the fact.
> > >=20
> > > https://xlab.tencent.com/special/spectre/spectre_check.html
> > >=20
> > > For reasons that beat me, they only added it to the proprietary Chrome
> > > browser, which follows the same version number as Chromium.
> > >=20
> > > The attached patch adds Spectre mitigation to the current Chromium
> > > release.  The patch was pulled from the Chrome 64 branch:
> > >=20
> >=20
> > > From b011b57f357af97f3a003a3b1c481fc8bd2b869c Mon Sep 17 00:00:00 2001
> > > From: Marius Bakke <mbakke@HIDDEN>
> > > Date: Thu, 11 Jan 2018 14:36:47 +0100
> > > Subject: [PATCH] gnu: chromium: Add spectre mitigation.
> > >=20
> > > * gnu/packages/patches/chromium-spectre-mitigation.patch: New file.
> > > * gnu/local.mk (dist_patch_DATA): Register it.
> > > * gnu/packages/chromium.scm (chromium)[source]: Use it.
> > > ---
> > >  gnu/local.mk                                           |  1 +
> > >  gnu/packages/chromium.scm                              |  3 ++-
> > >  gnu/packages/patches/chromium-spectre-mitigation.patch | 13 ++++++++=
+++++
> > >  3 files changed, 16 insertions(+), 1 deletion(-)
> > >  create mode 100644 gnu/packages/patches/chromium-spectre-mitigation.=
patch
> > >=20
> > > diff --git a/gnu/local.mk b/gnu/local.mk
> > > index 513f64043..89dab227c 100644
> > > --- a/gnu/local.mk
> > > +++ b/gnu/local.mk
> > > @@ -575,6 +575,7 @@ dist_patch_DATA =3D						\
> > >    %D%/packages/patches/ceph-skip-collect-sys-info-test.patch	\
> > >    %D%/packages/patches/ceph-skip-unittest_blockdev.patch	\
> > >    %D%/packages/patches/chmlib-inttypes.patch			\
> > > +  %D%/packages/patches/chromium-spectre-mitigation.patch	\
> > >    %D%/packages/patches/clang-libc-search-path.patch		\
> > >    %D%/packages/patches/clang-3.8-libc-search-path.patch		\
> > >    %D%/packages/patches/clementine-use-openssl.patch		\
> > > diff --git a/gnu/packages/chromium.scm b/gnu/packages/chromium.scm
> > > index dd040527b..1e9dba42e 100644
> > > --- a/gnu/packages/chromium.scm
> > > +++ b/gnu/packages/chromium.scm
> > > @@ -240,7 +240,8 @@
> > >                               %chromium-system-icu.patch
> > >                               %chromium-system-nspr.patch
> > >                               %chromium-system-libevent.patch
> > > -                             %chromium-disable-api-keys-warning.patc=
h))
> > > +                             %chromium-disable-api-keys-warning.patch
> > > +                             (search-patch "chromium-spectre-mitigat=
ion.patch")))
> > >                (modules '((srfi srfi-1)
> > >                           (guix build utils)))
> > >                (snippet
> > > diff --git a/gnu/packages/patches/chromium-spectre-mitigation.patch b=
/gnu/packages/patches/chromium-spectre-mitigation.patch
> > > new file mode 100644
> > > index 000000000..a44a3bce4
> > > --- /dev/null
> > > +++ b/gnu/packages/patches/chromium-spectre-mitigation.patch
> > > @@ -0,0 +1,13 @@
> > > +diff --git a/content/public/common/content_features.cc b/content/pub=
lic/common/content_features.cc
> > > +index 43feb76..33a49b8 100644
> > > +--- a/content/public/common/content_features.cc
> > > ++++ b/content/public/common/content_features.cc
> > > +@@ -308,7 +308,7 @@
> > > +=20
> > > + // http://tc39.github.io/ecmascript_sharedmem/shmem.html
> > > + const base::Feature kSharedArrayBuffer{"SharedArrayBuffer",
> > > +-                                       base::FEATURE_ENABLED_BY_DEF=
AULT};
> > > ++                                       base::FEATURE_DISABLED_BY_DE=
FAULT};
> > > +=20
> > > + // An experiment to require process isolation for the sign-in origi=
n,
> > > + // https://accounts.google.com.  Launch bug: https://crbug.com/7394=
18.
> > > --=20
> > > 2.15.1
> > >=20
> >=20
> >=20
> >=20
> >=20
> > --=20
> > ng0 :: https://ea.n0.is
> > A88C8ADD129828D7EAC02E52E22F9BBFEE348588 :: https://ea.n0.is/keys/
>=20
>=20
>=20
> --=20
> ng0 :: https://ea.n0.is
> A88C8ADD129828D7EAC02E52E22F9BBFEE348588 :: https://ea.n0.is/keys/

> [19248/23429] CXX obj/content/browser/browser/web_bluetooth_service_impl.o
> FAILED: obj/content/browser/browser/web_bluetooth_service_impl.o=20
> g++ -MMD -MF obj/content/browser/browser/web_bluetooth_service_impl.o.d -=
DENABLE_SCREEN_CAPTURE=3D1 -DV8_DEPRECATION_WARNINGS=20
> -DUSE_UDEV -DUSE_AURA=3D1 -DUSE_GLIB=3D1 -DUSE_NSS_CERTS=3D1 -DUSE_X11=3D=
1 -DNO_TCMALLOC -DFULL_SAFE_BROWSING -DSAFE_BROWSING_CSD=20
> -DSAFE_BROWSING_DB_LOCAL -DCHROMIUM_BUILD -D_FILE_OFFSET_BITS=3D64 -D_LAR=
GEFILE_SOURCE -D_LARGEFILE64_SOURCE=20
> -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D_FORTIFY_SOURCE=3D2 -DN=
DEBUG -DNVALGRIND -DDYNAMIC_ANNOTATIONS_ENABLED=3D0=20
> -DCONTENT_IMPLEMENTATION -DV8_USE_EXTERNAL_STARTUP_DATA=20
> -DATK_LIB_DIR=3D\"/gnu/store/nniszqyslmgllha2cyi9g3pfsmm6sg16-atk-2.24.0/=
lib\" -DGLIB_VERSION_MAX_ALLOWED=3DGLIB_VERSION_2_32=20
> -DGLIB_VERSION_MIN_REQUIRED=3DGLIB_VERSION_2_26 -DGL_GLEXT_PROTOTYPES -DU=
SE_GLX -DUSE_EGL -DGOOGLE_PROTOBUF_NO_RTTI=20
> -DGOOGLE_PROTOBUF_NO_STATIC_INITIALIZER -DHAVE_PTHREAD -DUSING_SYSTEM_ICU=
=3D1 -DICU_UTIL_DATA_IMPL=3DICU_UTIL_DATA_STATIC=20
> -DUCHAR_TYPE=3Duint16_t -DSK_IGNORE_LINEONLY_AA_CONVEX_PATH_OPTS -DSK_HAS=
_PNG_LIBRARY -DSK_HAS_WEBP_LIBRARY -DSK_HAS_JPEG_LIBRARY=20
> -DSK_SUPPORT_GPU=3D1 -DLEVELDB_PLATFORM_CHROMIUM=3D1 -DWEBRTC_NON_STATIC_=
TRACE_EVENT_HANDLERS=3D0 -DFEATURE_ENABLE_VOICEMAIL=20
> -DGTEST_RELATIVE_PATH -DWEBRTC_CHROMIUM_BUILD -DWEBRTC_POSIX -DWEBRTC_LIN=
UX -DWTF_USE_WEBAUDIO_FFMPEG=3D1=20
> -DWTF_USE_DEFAULT_RENDER_THEME=3D1 -DUSE_SYSTEM_ZLIB=3D1 -DNO_MAIN_THREAD=
_WRAPPING -I../.. -Igen=20
> -I/gnu/store/nniszqyslmgllha2cyi9g3pfsmm6sg16-atk-2.24.0/include/atk-1.0=
=20
> -I/gnu/store/azbfh3i72lbaqvhgg5m7p6ymmqq0ii6q-glib-2.52.3/include/glib-2.=
0=20
> -I/gnu/store/azbfh3i72lbaqvhgg5m7p6ymmqq0ii6q-glib-2.52.3/lib/glib-2.0/in=
clude=20
> -I/gnu/store/azbfh3i72lbaqvhgg5m7p6ymmqq0ii6q-glib-2.52.3/include/glib-2.=
0=20
> -I/gnu/store/azbfh3i72lbaqvhgg5m7p6ymmqq0ii6q-glib-2.52.3/lib/glib-2.0/in=
clude=20
> -I/gnu/store/b9ww6qv1ii9v6n45kin7543vkf6jfnd3-libpng-1.6.29/include/libpn=
g16=20
> -I/gnu/store/azbfh3i72lbaqvhgg5m7p6ymmqq0ii6q-glib-2.52.3/include/glib-2.=
0=20
> -I/gnu/store/azbfh3i72lbaqvhgg5m7p6ymmqq0ii6q-glib-2.52.3/lib/glib-2.0/in=
clude=20
> -I/gnu/store/3k1y78v6nxjvmivnri5j46wai6ppvyz0-harfbuzz-1.5.1/include/harf=
buzz=20
> -I/gnu/store/b9ww6qv1ii9v6n45kin7543vkf6jfnd3-libpng-1.6.29/include/libpn=
g16=20
> -I/gnu/store/4b9y9f5fvghk2vmwpbgzncal7z3r4n5y-pango-1.40.12/include/pango=
-1.0=20
> -I/gnu/store/c4vl4hw5jccg0b23sfvs0kdnfdbxdlgm-cairo-1.14.10/include/cairo=
=20
> -I/gnu/store/w8kii3hjvmh50yxs52gkdywkq9jc7s19-pixman-0.34.0/include/pixma=
n-1 -Igen/shim_headers/libevent_shim=20
> -Igen/shim_headers/icui18n_shim -Igen/shim_headers/icuuc_shim -Igen/shim_=
headers/re2_shim -Igen/shim_headers/libpng_shim=20
> -Igen/shim_headers/zlib_shim -Igen/shim_headers/libdrm_shim -I../../third=
_party/khronos -I../../gpu=20
> -Igen/shim_headers/ffmpeg_shim -Igen/shim_headers/libvpx_shim -Igen/shim_=
headers/opus_shim -Igen/shim_headers/snappy_shim=20
> -Igen/shim_headers/openh264_shim -Igen/shim_headers/minizip_shim -Igen/sh=
im_headers/flac_shim -I../../third_party/protobuf/src=20
> -I../../third_party/ced/src -I../../skia/config -I../../skia/ext -I../../=
third_party/skia/include/c=20
> -I../../third_party/skia/include/config -I../../third_party/skia/include/=
core -I../../third_party/skia/include/effects=20
> -I../../third_party/skia/include/encode -I../../third_party/skia/include/=
gpu -I../../third_party/skia/include/images=20
> -I../../third_party/skia/include/lazy -I../../third_party/skia/include/pa=
thops -I../../third_party/skia/include/pdf=20
> -I../../third_party/skia/include/pipe -I../../third_party/skia/include/po=
rts -I../../third_party/skia/include/utils=20
> -I../../third_party/skia/third_party/vulkan -I../../third_party/skia/src/=
gpu -I../../third_party/skia/src/sksl=20
> -I../../third_party/leveldatabase -I../../third_party/leveldatabase/src -=
I../../third_party/leveldatabase/src/include=20
> -I../../third_party/webrtc_overrides -I../../testing/gtest/include -I../.=
=2E/third_party/webrtc=20
> -I../../third_party/webrtc_overrides -I../../third_party/webrtc -I../../t=
hird_party/protobuf/src -Igen/protoc_out=20
> -Igen/components/metrics/proto -I../../third_party/boringssl/src/include=
=20
> -I/gnu/store/yk0bk0y3dvz2pa3f56knjhdby16fb62s-nss-3.34/include/nss=20
> -I/gnu/store/544jcd4141xgg72dk5xxbs4zjzvxvvxi-nspr-4.17/include/nspr -I..=
/../third_party/libwebm/source -Igen=20
> -I../../third_party/WebKit -Igen/third_party/WebKit -I../../v8/include -I=
gen/v8/include -I../../third_party/mesa/src/include=20
> -I../../third_party/WebKit/Source -I../../third_party/WebKit -Igen/blink =
-Igen/third_party/WebKit=20
> -I../../third_party/angle/src/common/third_party/base -Igen/angle -I../..=
/third_party/brotli/include=20
> -I../../third_party/libyuv/include -I/gnu/store/xr0zjan791j0pgvcs770m59za=
9bsjsr6-dbus-1.10.22/include/dbus-1.0=20
> -I/gnu/store/xr0zjan791j0pgvcs770m59za9bsjsr6-dbus-1.10.22/lib/dbus-1.0/i=
nclude -fno-strict-aliasing --param=3Dssp-buffer-size=3D4=20
> -fstack-protector -Wno-builtin-macro-redefined -D__DATE__=3D -D__TIME__=
=3D -D__TIMESTAMP__=3D -funwind-tables -fPIC -pipe -pthread=20
> -m64 -march=3Dx86-64 -Wall -Wno-unused-local-typedefs -Wno-maybe-uninitia=
lized -Wno-missing-field-initializers=20
> -Wno-unused-parameter -O2 -fno-ident -fdata-sections -ffunction-sections =
-fomit-frame-pointer -g0 -fvisibility=3Dhidden=20
> -Wno-unused-local-typedef -Wno-unused-function -std=3Dgnu++14 -Wno-narrow=
ing -fno-rtti -fno-exceptions -fvisibility-inlines-hidden=20
> -c ../../content/browser/bluetooth/web_bluetooth_service_impl.cc -o obj/c=
ontent/browser/browser/web_bluetooth_service_impl.o
> g++: internal compiler error: Killed (program cc1plus)
> Please submit a full bug report,
> with preprocessed source if appropriate.
> See <http://gcc.gnu.org/bugs.html> for instructions.
> [19249/23429] CXX obj/content/browser/browser/render_frame_host_factory.o
> In file included from ../../content/browser/frame_host/frame_tree_node.h:=
18:0,
>                  from ../../content/browser/frame_host/render_frame_host_=
factory.cc:9:
> ../../content/browser/frame_host/render_frame_host_impl.h:1001:3: warning=
: multi-line comment [-Wcomment]
>    //                 /  |   \
>    ^
> ../../content/browser/frame_host/render_frame_host_impl.h:1003:3: warning=
: multi-line comment [-Wcomment]
>    //               /   /  \   \
>    ^
> cc1plus: warning: unrecognized command line option =E2=80=98-Wno-unused-l=
ocal-typedef=E2=80=99
> [19250/23429] CXX obj/content/browser/browser/render_frame_host_manager.o
> In file included from ../../content/browser/frame_host/render_frame_host_=
manager.h:19:0,
>                  from ../../content/browser/frame_host/render_frame_host_=
manager.cc:5:
> ../../content/browser/frame_host/render_frame_host_impl.h:1001:3: warning=
: multi-line comment [-Wcomment]
>    //                 /  |   \
>    ^
> ../../content/browser/frame_host/render_frame_host_impl.h:1003:3: warning=
: multi-line comment [-Wcomment]
>    //               /   /  \   \
>    ^
> cc1plus: warning: unrecognized command line option =E2=80=98-Wno-unused-l=
ocal-typedef=E2=80=99
> [19251/23429] CXX obj/content/browser/browser/render_frame_host_impl.o
> In file included from ../../content/browser/frame_host/render_frame_host_=
impl.cc:5:0:
> ../../content/browser/frame_host/render_frame_host_impl.h:1001:3: warning=
: multi-line comment [-Wcomment]
>    //                 /  |   \
>    ^
> ../../content/browser/frame_host/render_frame_host_impl.h:1003:3: warning=
: multi-line comment [-Wcomment]
>    //               /   /  \   \
>    ^
> cc1plus: warning: unrecognized command line option =E2=80=98-Wno-unused-l=
ocal-typedef=E2=80=99
> ninja: build stopped: subcommand failed.
> phase `build' failed after 16570.6 seconds
> builder for `/gnu/store/9ws2gavs5bjlrfimhdi10pssvy7hwnwl-chromium-63.0.32=
39.132.drv' failed with exit code 1
> guix package: error: build failed: build of `/gnu/store/9ws2gavs5bjlrfimh=
di10pssvy7hwnwl-chromium-63.0.3239.132.drv' failed




--=20
ng0 :: https://ea.n0.is
A88C8ADD129828D7EAC02E52E22F9BBFEE348588 :: https://ea.n0.is/keys/

--rhpp4fbt4wy637lc
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQIzBAABCgAdFiEEqIyK3RKYKNfqwC5S4i+bv+40hYgFAlpbSK0ACgkQ4i+bv+40
hYhzXxAArDgVnBuXsW8jofkbBp4Iq843KaULtKxF3QcKzT1ZXO4x6S1XCAc9C9bg
QY941InFbH8C2hSzmfKsK9RXSmzfsUn3cdsxmE+rL7LKd7YIAlc4B/dvLiMW0Vuq
SlRNpWzYRnvXLJRSJFWg02s91pKa90klINTQfLvlQMvgCm6lAclxs8ufkgPuRMyu
24xQtO1pBOA6meOa4C13Z1XhaWLoknvci/n1IsnANszV8iYZ/iW2YQqc4x9ebCoq
rBn9/WvC/piGwafWEdnWgTaoYw9CWRLGuoBoTXprpU/wiVudUfrgSbTOJsmg03hg
zG82KX96FcVvwtWLkXMm/jRAt3inuxbtCogACOjYcWXSV5iz/Hrgvx4X6jCO0GdX
lg/ew4No+6kytOmDPG9SM6z+wBfcvgg7SFP93CYDwj5xHqJujhRN6t+5hL3c2XUL
uB6MMZW7Fs4bbbweY9Eb7o/1klit5I/6olHSP/FbB0U5rGM3wW/Y6HMmfdpqyFqI
lOSPBNbQUqyAWWyI7Ffl+SlcOnSdiqcKrw1UMs5e9gQqZu7IlbRv2XiNm6deD78P
vRHAtDAEb9VpTImWOwRJnYs6VD3kNnAtkRmTDWVYkD7I8iPeP0bMcSivjtQXm1dq
jRNOqVyJE2IbVOnmdHU+lH5M3J3ImyR5trLadggQLaQ89lVV3oQ=
=FWRC
-----END PGP SIGNATURE-----

--rhpp4fbt4wy637lc--




Information forwarded to guix-patches@HIDDEN:
bug#28004; Package guix-patches. Full text available.

Message received at 28004 <at> debbugs.gnu.org:


Received: (at 28004) by debbugs.gnu.org; 13 Jan 2018 18:14:13 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sat Jan 13 13:14:13 2018
Received: from localhost ([127.0.0.1]:55109 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1eaQJi-0003HH-5r
	for submit <at> debbugs.gnu.org; Sat, 13 Jan 2018 13:14:13 -0500
Received: from aibo.runbox.com ([91.220.196.211]:40276)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <ng0@HIDDEN>) id 1eaQJa-0003Gg-QS
 for 28004 <at> debbugs.gnu.org; Sat, 13 Jan 2018 13:14:03 -0500
Received: from [10.9.9.212] (helo=mailfront12.runbox.com)
 by mailtransmit02.runbox with esmtp (Exim 4.86_2)
 (envelope-from <ng0@HIDDEN>)
 id 1eaQJZ-0005lU-Pq; Sat, 13 Jan 2018 19:13:57 +0100
Received: from dslb-092-073-146-083.092.073.pools.vodafone-ip.de
 ([92.73.146.83] helo=localhost)
 by mailfront12.runbox.com with esmtpsa (uid:892961 )
 (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82)
 id 1eaQJX-0002mp-UT; Sat, 13 Jan 2018 19:13:56 +0100
Date: Sat, 13 Jan 2018 19:13:57 +0000
From: ng0 <ng0@HIDDEN>
To: Marius Bakke <mbakke@HIDDEN>
Subject: Re: [bug#28004] Chromium
Message-ID: <20180113191357.lqiwwyw3jxcimaqa@abyayala>
References: <20171010131949.y43plpzxbppvrigr@abyayala> <87lgkha2cx.fsf@HIDDEN>
 <20171012195628.GA31843@HIDDEN> <87shensfq6.fsf@HIDDEN>
 <87o9p45bb6.fsf@HIDDEN>
 <20180104191648.custe7w3l57fvbac@abyayala>
 <87wp0s2ewl.fsf@HIDDEN>
 <20180108232042.nqjurjr2bcfl2yyc@abyayala>
 <87373cey5b.fsf@HIDDEN>
 <20180113190235.4yhko2v5cxiu7p6f@abyayala>
MIME-Version: 1.0
Content-Type: multipart/signed; micalg=pgp-sha512;
 protocol="application/pgp-signature"; boundary="6f4gatmyeuo3klfj"
Content-Disposition: inline
In-Reply-To: <20180113190235.4yhko2v5cxiu7p6f@abyayala>
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 28004
Cc: 28004 <at> debbugs.gnu.org, ng0 <ng0@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -0.0 (/)


--6f4gatmyeuo3klfj
Content-Type: multipart/mixed; boundary="yoqriwqvuf3qqpax"
Content-Disposition: inline


--yoqriwqvuf3qqpax
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

ng0 transcribed 5.6K bytes:
> I just got a bug report for the build via:
>=20
> guix pull --url=3D"https://c.n0.is/git/ng0/guix/guix.git" --branch=3D"pre=
test/chromium"
> guix package --install chromium
>=20
> Failing with the attached build log excerpt. We are not FreeBSD, but I fo=
und
> this in the first 5 minutes: https://bugs.freebsd.org/bugzilla/show_bug.c=
gi?id=3D160935
> Maybe it helps to debug this, or maybe you've encountered this before.
>=20
> I myself have been able to build this without issues on two systems.
>=20
> All mentioned systems are GuixSD.
>=20

this time with attached file.

> This should be a blocker, but maybe a head-up in potential build issues.
> Marius Bakke transcribed 4.5K bytes:
> > ng0 <ng0@HIDDEN> writes:
> >=20
> > > Many thanks for your ongoing work with this (and the patience :))
> > > As this is 63, you you are keeping track of Debian, right? I tried
> > > to package 64 a couple of days ago because I wanted the workaround
> > > for some of the recent security clusterfucks, but Debian is still
> > > on 63 :/
> > > I hope they'll update their patchset soon.
> >=20
> > Indeed Google did not add the Spectre mitigation to Chromium 63, even
> > though the latest version was released after the fact.
> >=20
> > https://xlab.tencent.com/special/spectre/spectre_check.html
> >=20
> > For reasons that beat me, they only added it to the proprietary Chrome
> > browser, which follows the same version number as Chromium.
> >=20
> > The attached patch adds Spectre mitigation to the current Chromium
> > release.  The patch was pulled from the Chrome 64 branch:
> >=20
>=20
> > From b011b57f357af97f3a003a3b1c481fc8bd2b869c Mon Sep 17 00:00:00 2001
> > From: Marius Bakke <mbakke@HIDDEN>
> > Date: Thu, 11 Jan 2018 14:36:47 +0100
> > Subject: [PATCH] gnu: chromium: Add spectre mitigation.
> >=20
> > * gnu/packages/patches/chromium-spectre-mitigation.patch: New file.
> > * gnu/local.mk (dist_patch_DATA): Register it.
> > * gnu/packages/chromium.scm (chromium)[source]: Use it.
> > ---
> >  gnu/local.mk                                           |  1 +
> >  gnu/packages/chromium.scm                              |  3 ++-
> >  gnu/packages/patches/chromium-spectre-mitigation.patch | 13 ++++++++++=
+++
> >  3 files changed, 16 insertions(+), 1 deletion(-)
> >  create mode 100644 gnu/packages/patches/chromium-spectre-mitigation.pa=
tch
> >=20
> > diff --git a/gnu/local.mk b/gnu/local.mk
> > index 513f64043..89dab227c 100644
> > --- a/gnu/local.mk
> > +++ b/gnu/local.mk
> > @@ -575,6 +575,7 @@ dist_patch_DATA =3D						\
> >    %D%/packages/patches/ceph-skip-collect-sys-info-test.patch	\
> >    %D%/packages/patches/ceph-skip-unittest_blockdev.patch	\
> >    %D%/packages/patches/chmlib-inttypes.patch			\
> > +  %D%/packages/patches/chromium-spectre-mitigation.patch	\
> >    %D%/packages/patches/clang-libc-search-path.patch		\
> >    %D%/packages/patches/clang-3.8-libc-search-path.patch		\
> >    %D%/packages/patches/clementine-use-openssl.patch		\
> > diff --git a/gnu/packages/chromium.scm b/gnu/packages/chromium.scm
> > index dd040527b..1e9dba42e 100644
> > --- a/gnu/packages/chromium.scm
> > +++ b/gnu/packages/chromium.scm
> > @@ -240,7 +240,8 @@
> >                               %chromium-system-icu.patch
> >                               %chromium-system-nspr.patch
> >                               %chromium-system-libevent.patch
> > -                             %chromium-disable-api-keys-warning.patch))
> > +                             %chromium-disable-api-keys-warning.patch
> > +                             (search-patch "chromium-spectre-mitigatio=
n.patch")))
> >                (modules '((srfi srfi-1)
> >                           (guix build utils)))
> >                (snippet
> > diff --git a/gnu/packages/patches/chromium-spectre-mitigation.patch b/g=
nu/packages/patches/chromium-spectre-mitigation.patch
> > new file mode 100644
> > index 000000000..a44a3bce4
> > --- /dev/null
> > +++ b/gnu/packages/patches/chromium-spectre-mitigation.patch
> > @@ -0,0 +1,13 @@
> > +diff --git a/content/public/common/content_features.cc b/content/publi=
c/common/content_features.cc
> > +index 43feb76..33a49b8 100644
> > +--- a/content/public/common/content_features.cc
> > ++++ b/content/public/common/content_features.cc
> > +@@ -308,7 +308,7 @@
> > +=20
> > + // http://tc39.github.io/ecmascript_sharedmem/shmem.html
> > + const base::Feature kSharedArrayBuffer{"SharedArrayBuffer",
> > +-                                       base::FEATURE_ENABLED_BY_DEFAU=
LT};
> > ++                                       base::FEATURE_DISABLED_BY_DEFA=
ULT};
> > +=20
> > + // An experiment to require process isolation for the sign-in origin,
> > + // https://accounts.google.com.  Launch bug: https://crbug.com/739418.
> > --=20
> > 2.15.1
> >=20
>=20
>=20
>=20
>=20
> --=20
> ng0 :: https://ea.n0.is
> A88C8ADD129828D7EAC02E52E22F9BBFEE348588 :: https://ea.n0.is/keys/



--=20
ng0 :: https://ea.n0.is
A88C8ADD129828D7EAC02E52E22F9BBFEE348588 :: https://ea.n0.is/keys/

--yoqriwqvuf3qqpax
Content-Type: text/plain; charset=utf-8
Content-Disposition: attachment; filename="chromium.fail"
Content-Transfer-Encoding: quoted-printable

[19248/23429] CXX obj/content/browser/browser/web_bluetooth_service_impl.o
FAILED: obj/content/browser/browser/web_bluetooth_service_impl.o=20
g++ -MMD -MF obj/content/browser/browser/web_bluetooth_service_impl.o.d -DE=
NABLE_SCREEN_CAPTURE=3D1 -DV8_DEPRECATION_WARNINGS=20
-DUSE_UDEV -DUSE_AURA=3D1 -DUSE_GLIB=3D1 -DUSE_NSS_CERTS=3D1 -DUSE_X11=3D1 =
-DNO_TCMALLOC -DFULL_SAFE_BROWSING -DSAFE_BROWSING_CSD=20
-DSAFE_BROWSING_DB_LOCAL -DCHROMIUM_BUILD -D_FILE_OFFSET_BITS=3D64 -D_LARGE=
FILE_SOURCE -D_LARGEFILE64_SOURCE=20
-D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D_FORTIFY_SOURCE=3D2 -DNDE=
BUG -DNVALGRIND -DDYNAMIC_ANNOTATIONS_ENABLED=3D0=20
-DCONTENT_IMPLEMENTATION -DV8_USE_EXTERNAL_STARTUP_DATA=20
-DATK_LIB_DIR=3D\"/gnu/store/nniszqyslmgllha2cyi9g3pfsmm6sg16-atk-2.24.0/li=
b\" -DGLIB_VERSION_MAX_ALLOWED=3DGLIB_VERSION_2_32=20
-DGLIB_VERSION_MIN_REQUIRED=3DGLIB_VERSION_2_26 -DGL_GLEXT_PROTOTYPES -DUSE=
_GLX -DUSE_EGL -DGOOGLE_PROTOBUF_NO_RTTI=20
-DGOOGLE_PROTOBUF_NO_STATIC_INITIALIZER -DHAVE_PTHREAD -DUSING_SYSTEM_ICU=
=3D1 -DICU_UTIL_DATA_IMPL=3DICU_UTIL_DATA_STATIC=20
-DUCHAR_TYPE=3Duint16_t -DSK_IGNORE_LINEONLY_AA_CONVEX_PATH_OPTS -DSK_HAS_P=
NG_LIBRARY -DSK_HAS_WEBP_LIBRARY -DSK_HAS_JPEG_LIBRARY=20
-DSK_SUPPORT_GPU=3D1 -DLEVELDB_PLATFORM_CHROMIUM=3D1 -DWEBRTC_NON_STATIC_TR=
ACE_EVENT_HANDLERS=3D0 -DFEATURE_ENABLE_VOICEMAIL=20
-DGTEST_RELATIVE_PATH -DWEBRTC_CHROMIUM_BUILD -DWEBRTC_POSIX -DWEBRTC_LINUX=
 -DWTF_USE_WEBAUDIO_FFMPEG=3D1=20
-DWTF_USE_DEFAULT_RENDER_THEME=3D1 -DUSE_SYSTEM_ZLIB=3D1 -DNO_MAIN_THREAD_W=
RAPPING -I../.. -Igen=20
-I/gnu/store/nniszqyslmgllha2cyi9g3pfsmm6sg16-atk-2.24.0/include/atk-1.0=20
-I/gnu/store/azbfh3i72lbaqvhgg5m7p6ymmqq0ii6q-glib-2.52.3/include/glib-2.0=
=20
-I/gnu/store/azbfh3i72lbaqvhgg5m7p6ymmqq0ii6q-glib-2.52.3/lib/glib-2.0/incl=
ude=20
-I/gnu/store/azbfh3i72lbaqvhgg5m7p6ymmqq0ii6q-glib-2.52.3/include/glib-2.0=
=20
-I/gnu/store/azbfh3i72lbaqvhgg5m7p6ymmqq0ii6q-glib-2.52.3/lib/glib-2.0/incl=
ude=20
-I/gnu/store/b9ww6qv1ii9v6n45kin7543vkf6jfnd3-libpng-1.6.29/include/libpng1=
6=20
-I/gnu/store/azbfh3i72lbaqvhgg5m7p6ymmqq0ii6q-glib-2.52.3/include/glib-2.0=
=20
-I/gnu/store/azbfh3i72lbaqvhgg5m7p6ymmqq0ii6q-glib-2.52.3/lib/glib-2.0/incl=
ude=20
-I/gnu/store/3k1y78v6nxjvmivnri5j46wai6ppvyz0-harfbuzz-1.5.1/include/harfbu=
zz=20
-I/gnu/store/b9ww6qv1ii9v6n45kin7543vkf6jfnd3-libpng-1.6.29/include/libpng1=
6=20
-I/gnu/store/4b9y9f5fvghk2vmwpbgzncal7z3r4n5y-pango-1.40.12/include/pango-1=
=2E0=20
-I/gnu/store/c4vl4hw5jccg0b23sfvs0kdnfdbxdlgm-cairo-1.14.10/include/cairo=
=20
-I/gnu/store/w8kii3hjvmh50yxs52gkdywkq9jc7s19-pixman-0.34.0/include/pixman-=
1 -Igen/shim_headers/libevent_shim=20
-Igen/shim_headers/icui18n_shim -Igen/shim_headers/icuuc_shim -Igen/shim_he=
aders/re2_shim -Igen/shim_headers/libpng_shim=20
-Igen/shim_headers/zlib_shim -Igen/shim_headers/libdrm_shim -I../../third_p=
arty/khronos -I../../gpu=20
-Igen/shim_headers/ffmpeg_shim -Igen/shim_headers/libvpx_shim -Igen/shim_he=
aders/opus_shim -Igen/shim_headers/snappy_shim=20
-Igen/shim_headers/openh264_shim -Igen/shim_headers/minizip_shim -Igen/shim=
_headers/flac_shim -I../../third_party/protobuf/src=20
-I../../third_party/ced/src -I../../skia/config -I../../skia/ext -I../../th=
ird_party/skia/include/c=20
-I../../third_party/skia/include/config -I../../third_party/skia/include/co=
re -I../../third_party/skia/include/effects=20
-I../../third_party/skia/include/encode -I../../third_party/skia/include/gp=
u -I../../third_party/skia/include/images=20
-I../../third_party/skia/include/lazy -I../../third_party/skia/include/path=
ops -I../../third_party/skia/include/pdf=20
-I../../third_party/skia/include/pipe -I../../third_party/skia/include/port=
s -I../../third_party/skia/include/utils=20
-I../../third_party/skia/third_party/vulkan -I../../third_party/skia/src/gp=
u -I../../third_party/skia/src/sksl=20
-I../../third_party/leveldatabase -I../../third_party/leveldatabase/src -I.=
=2E/../third_party/leveldatabase/src/include=20
-I../../third_party/webrtc_overrides -I../../testing/gtest/include -I../../=
third_party/webrtc=20
-I../../third_party/webrtc_overrides -I../../third_party/webrtc -I../../thi=
rd_party/protobuf/src -Igen/protoc_out=20
-Igen/components/metrics/proto -I../../third_party/boringssl/src/include=20
-I/gnu/store/yk0bk0y3dvz2pa3f56knjhdby16fb62s-nss-3.34/include/nss=20
-I/gnu/store/544jcd4141xgg72dk5xxbs4zjzvxvvxi-nspr-4.17/include/nspr -I../.=
=2E/third_party/libwebm/source -Igen=20
-I../../third_party/WebKit -Igen/third_party/WebKit -I../../v8/include -Ige=
n/v8/include -I../../third_party/mesa/src/include=20
-I../../third_party/WebKit/Source -I../../third_party/WebKit -Igen/blink -I=
gen/third_party/WebKit=20
-I../../third_party/angle/src/common/third_party/base -Igen/angle -I../../t=
hird_party/brotli/include=20
-I../../third_party/libyuv/include -I/gnu/store/xr0zjan791j0pgvcs770m59za9b=
sjsr6-dbus-1.10.22/include/dbus-1.0=20
-I/gnu/store/xr0zjan791j0pgvcs770m59za9bsjsr6-dbus-1.10.22/lib/dbus-1.0/inc=
lude -fno-strict-aliasing --param=3Dssp-buffer-size=3D4=20
-fstack-protector -Wno-builtin-macro-redefined -D__DATE__=3D -D__TIME__=3D =
-D__TIMESTAMP__=3D -funwind-tables -fPIC -pipe -pthread=20
-m64 -march=3Dx86-64 -Wall -Wno-unused-local-typedefs -Wno-maybe-uninitiali=
zed -Wno-missing-field-initializers=20
-Wno-unused-parameter -O2 -fno-ident -fdata-sections -ffunction-sections -f=
omit-frame-pointer -g0 -fvisibility=3Dhidden=20
-Wno-unused-local-typedef -Wno-unused-function -std=3Dgnu++14 -Wno-narrowin=
g -fno-rtti -fno-exceptions -fvisibility-inlines-hidden=20
-c ../../content/browser/bluetooth/web_bluetooth_service_impl.cc -o obj/con=
tent/browser/browser/web_bluetooth_service_impl.o
g++: internal compiler error: Killed (program cc1plus)
Please submit a full bug report,
with preprocessed source if appropriate.
See <http://gcc.gnu.org/bugs.html> for instructions.
[19249/23429] CXX obj/content/browser/browser/render_frame_host_factory.o
In file included from ../../content/browser/frame_host/frame_tree_node.h:18=
:0,
                 from ../../content/browser/frame_host/render_frame_host_fa=
ctory.cc:9:
=2E./../content/browser/frame_host/render_frame_host_impl.h:1001:3: warning=
: multi-line comment [-Wcomment]
   //                 /  |   \
   ^
=2E./../content/browser/frame_host/render_frame_host_impl.h:1003:3: warning=
: multi-line comment [-Wcomment]
   //               /   /  \   \
   ^
cc1plus: warning: unrecognized command line option =E2=80=98-Wno-unused-loc=
al-typedef=E2=80=99
[19250/23429] CXX obj/content/browser/browser/render_frame_host_manager.o
In file included from ../../content/browser/frame_host/render_frame_host_ma=
nager.h:19:0,
                 from ../../content/browser/frame_host/render_frame_host_ma=
nager.cc:5:
=2E./../content/browser/frame_host/render_frame_host_impl.h:1001:3: warning=
: multi-line comment [-Wcomment]
   //                 /  |   \
   ^
=2E./../content/browser/frame_host/render_frame_host_impl.h:1003:3: warning=
: multi-line comment [-Wcomment]
   //               /   /  \   \
   ^
cc1plus: warning: unrecognized command line option =E2=80=98-Wno-unused-loc=
al-typedef=E2=80=99
[19251/23429] CXX obj/content/browser/browser/render_frame_host_impl.o
In file included from ../../content/browser/frame_host/render_frame_host_im=
pl.cc:5:0:
=2E./../content/browser/frame_host/render_frame_host_impl.h:1001:3: warning=
: multi-line comment [-Wcomment]
   //                 /  |   \
   ^
=2E./../content/browser/frame_host/render_frame_host_impl.h:1003:3: warning=
: multi-line comment [-Wcomment]
   //               /   /  \   \
   ^
cc1plus: warning: unrecognized command line option =E2=80=98-Wno-unused-loc=
al-typedef=E2=80=99
ninja: build stopped: subcommand failed.
phase `build' failed after 16570.6 seconds
builder for `/gnu/store/9ws2gavs5bjlrfimhdi10pssvy7hwnwl-chromium-63.0.3239=
=2E132.drv' failed with exit code 1
guix package: error: build failed: build of `/gnu/store/9ws2gavs5bjlrfimhdi=
10pssvy7hwnwl-chromium-63.0.3239.132.drv' failed

--yoqriwqvuf3qqpax--

--6f4gatmyeuo3klfj
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQIzBAABCgAdFiEEqIyK3RKYKNfqwC5S4i+bv+40hYgFAlpaWnUACgkQ4i+bv+40
hYhE0RAAhjXzAIYYYwPEC38gItQP6jeHA8O8pxQfI6xLXdpy0KZNllzcis87RzWK
XYQkiw3nnUQB3pkFGsAhrAJ5c0R4IOTjFHPtwbppoy5uQ/YL6jIZKwGmhL4NoLKN
EdRNHH5/nl07pWIGPYmJiQH8YqHmKgykq3GUamVcU4T6xkdwMpZzDlGb5UnjVuda
MUj1oX5Ex29CONACDaoo1pDZnHn/UVp2QuV8WwedZr3LTESvaMvj/m3CPY4qov8l
z6gAUe5tFcm66q+gBU5t0VYXGWRliiM5JFnfLiOhXmgd6/A0SaMGZIpBGOp0JLJD
33/w3Dud8P/0Omw8ZsFXBgXA4O5/NCE/YtBi5tmjU181T5SUk05Q3Tdu8qwi0h38
u3sAvRK0eQvcsHlLfNaYX0w2f+H2OeV0+NGjKoY1JCvf+HVQiriM14lJ2SQwsfPl
51U2hZeQnOsF56CfX7z1vfnaJ2EF6ws47OGU6xvSa2LcumwtkkHBUVRYO6R+DlUU
W+3qMSoG0nPtXLhiOqy/oFu1gfza2ZJZ6CzHFIaYmRhJxAmRX9jv0cQehBZ4lkwB
jdpeLrbabxVc/ESADRfgEq2/24y8tZDFyOEMpeCuNstZZa4jT4mfc7HOzTqOjWbN
Ni5AoigSRLehRrwe+w+GhJ+/ZXiatE81EqUvCmm9LC25cK5XyaE=
=lG00
-----END PGP SIGNATURE-----

--6f4gatmyeuo3klfj--




Information forwarded to guix-patches@HIDDEN:
bug#28004; Package guix-patches. Full text available.

Message received at 28004 <at> debbugs.gnu.org:


Received: (at 28004) by debbugs.gnu.org; 13 Jan 2018 18:02:53 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sat Jan 13 13:02:53 2018
Received: from localhost ([127.0.0.1]:55083 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1eaQ8j-000308-6Y
	for submit <at> debbugs.gnu.org; Sat, 13 Jan 2018 13:02:53 -0500
Received: from aibo.runbox.com ([91.220.196.211]:39712)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <ng0@HIDDEN>) id 1eaQ8d-0002zt-Cb
 for 28004 <at> debbugs.gnu.org; Sat, 13 Jan 2018 13:02:43 -0500
Received: from [10.9.9.212] (helo=mailfront12.runbox.com)
 by mailtransmit02.runbox with esmtp (Exim 4.86_2)
 (envelope-from <ng0@HIDDEN>)
 id 1eaQ8c-00050U-4I; Sat, 13 Jan 2018 19:02:38 +0100
Received: from dslb-092-073-146-083.092.073.pools.vodafone-ip.de
 ([92.73.146.83] helo=localhost)
 by mailfront12.runbox.com with esmtpsa (uid:892961 )
 (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82)
 id 1eaQ8X-0004OY-Gq; Sat, 13 Jan 2018 19:02:33 +0100
Date: Sat, 13 Jan 2018 19:02:35 +0000
From: ng0 <ng0@HIDDEN>
To: Marius Bakke <mbakke@HIDDEN>
Subject: Re: [bug#28004] Chromium
Message-ID: <20180113190235.4yhko2v5cxiu7p6f@abyayala>
References: <87y3qvb15k.fsf@HIDDEN>
 <20171010131949.y43plpzxbppvrigr@abyayala> <87lgkha2cx.fsf@HIDDEN>
 <20171012195628.GA31843@HIDDEN> <87shensfq6.fsf@HIDDEN>
 <87o9p45bb6.fsf@HIDDEN>
 <20180104191648.custe7w3l57fvbac@abyayala>
 <87wp0s2ewl.fsf@HIDDEN>
 <20180108232042.nqjurjr2bcfl2yyc@abyayala>
 <87373cey5b.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: multipart/signed; micalg=pgp-sha512;
 protocol="application/pgp-signature"; boundary="kqis44vvjivz3hfq"
Content-Disposition: inline
In-Reply-To: <87373cey5b.fsf@HIDDEN>
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 28004
Cc: 28004 <at> debbugs.gnu.org, ng0 <ng0@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -0.0 (/)


--kqis44vvjivz3hfq
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

I just got a bug report for the build via:

guix pull --url=3D"https://c.n0.is/git/ng0/guix/guix.git" --branch=3D"prete=
st/chromium"
guix package --install chromium

Failing with the attached build log excerpt. We are not FreeBSD, but I found
this in the first 5 minutes: https://bugs.freebsd.org/bugzilla/show_bug.cgi=
?id=3D160935
Maybe it helps to debug this, or maybe you've encountered this before.

I myself have been able to build this without issues on two systems.

All mentioned systems are GuixSD.


This should be a blocker, but maybe a head-up in potential build issues.
Marius Bakke transcribed 4.5K bytes:
> ng0 <ng0@HIDDEN> writes:
>=20
> > Many thanks for your ongoing work with this (and the patience :))
> > As this is 63, you you are keeping track of Debian, right? I tried
> > to package 64 a couple of days ago because I wanted the workaround
> > for some of the recent security clusterfucks, but Debian is still
> > on 63 :/
> > I hope they'll update their patchset soon.
>=20
> Indeed Google did not add the Spectre mitigation to Chromium 63, even
> though the latest version was released after the fact.
>=20
> https://xlab.tencent.com/special/spectre/spectre_check.html
>=20
> For reasons that beat me, they only added it to the proprietary Chrome
> browser, which follows the same version number as Chromium.
>=20
> The attached patch adds Spectre mitigation to the current Chromium
> release.  The patch was pulled from the Chrome 64 branch:
>=20

> From b011b57f357af97f3a003a3b1c481fc8bd2b869c Mon Sep 17 00:00:00 2001
> From: Marius Bakke <mbakke@HIDDEN>
> Date: Thu, 11 Jan 2018 14:36:47 +0100
> Subject: [PATCH] gnu: chromium: Add spectre mitigation.
>=20
> * gnu/packages/patches/chromium-spectre-mitigation.patch: New file.
> * gnu/local.mk (dist_patch_DATA): Register it.
> * gnu/packages/chromium.scm (chromium)[source]: Use it.
> ---
>  gnu/local.mk                                           |  1 +
>  gnu/packages/chromium.scm                              |  3 ++-
>  gnu/packages/patches/chromium-spectre-mitigation.patch | 13 +++++++++++++
>  3 files changed, 16 insertions(+), 1 deletion(-)
>  create mode 100644 gnu/packages/patches/chromium-spectre-mitigation.patch
>=20
> diff --git a/gnu/local.mk b/gnu/local.mk
> index 513f64043..89dab227c 100644
> --- a/gnu/local.mk
> +++ b/gnu/local.mk
> @@ -575,6 +575,7 @@ dist_patch_DATA =3D						\
>    %D%/packages/patches/ceph-skip-collect-sys-info-test.patch	\
>    %D%/packages/patches/ceph-skip-unittest_blockdev.patch	\
>    %D%/packages/patches/chmlib-inttypes.patch			\
> +  %D%/packages/patches/chromium-spectre-mitigation.patch	\
>    %D%/packages/patches/clang-libc-search-path.patch		\
>    %D%/packages/patches/clang-3.8-libc-search-path.patch		\
>    %D%/packages/patches/clementine-use-openssl.patch		\
> diff --git a/gnu/packages/chromium.scm b/gnu/packages/chromium.scm
> index dd040527b..1e9dba42e 100644
> --- a/gnu/packages/chromium.scm
> +++ b/gnu/packages/chromium.scm
> @@ -240,7 +240,8 @@
>                               %chromium-system-icu.patch
>                               %chromium-system-nspr.patch
>                               %chromium-system-libevent.patch
> -                             %chromium-disable-api-keys-warning.patch))
> +                             %chromium-disable-api-keys-warning.patch
> +                             (search-patch "chromium-spectre-mitigation.=
patch")))
>                (modules '((srfi srfi-1)
>                           (guix build utils)))
>                (snippet
> diff --git a/gnu/packages/patches/chromium-spectre-mitigation.patch b/gnu=
/packages/patches/chromium-spectre-mitigation.patch
> new file mode 100644
> index 000000000..a44a3bce4
> --- /dev/null
> +++ b/gnu/packages/patches/chromium-spectre-mitigation.patch
> @@ -0,0 +1,13 @@
> +diff --git a/content/public/common/content_features.cc b/content/public/=
common/content_features.cc
> +index 43feb76..33a49b8 100644
> +--- a/content/public/common/content_features.cc
> ++++ b/content/public/common/content_features.cc
> +@@ -308,7 +308,7 @@
> +=20
> + // http://tc39.github.io/ecmascript_sharedmem/shmem.html
> + const base::Feature kSharedArrayBuffer{"SharedArrayBuffer",
> +-                                       base::FEATURE_ENABLED_BY_DEFAULT=
};
> ++                                       base::FEATURE_DISABLED_BY_DEFAUL=
T};
> +=20
> + // An experiment to require process isolation for the sign-in origin,
> + // https://accounts.google.com.  Launch bug: https://crbug.com/739418.
> --=20
> 2.15.1
>=20




--=20
ng0 :: https://ea.n0.is
A88C8ADD129828D7EAC02E52E22F9BBFEE348588 :: https://ea.n0.is/keys/

--kqis44vvjivz3hfq
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQIzBAABCgAdFiEEqIyK3RKYKNfqwC5S4i+bv+40hYgFAlpaV8sACgkQ4i+bv+40
hYh3Sw//b6MPJEuZrE7/amksG3/kWlJlxjqmWqrSGmVHcfJuJqfEtulyJq6zT+va
YWQNcsXelCbKUX/hD3BWLE2J0N8lWHn8oa8FNFrv6Yd3PJrgZT2VS+qJ4Fhv788t
dMK2VTWJZ/cOgJjt+qohIipjuxQEnZpUDk3WZpWzljA8AcukSrzGc15Tw04ALucK
polnXLRvcUUk2zmFf5D1h3Ebahy4VdBEHl6Uv9ar7PvjbgHzYFiABa0ed3s9xuii
MyLYWEXM8LW7xOHr/uTEBMYfMpL40tHVNxQFVHGjDM1sL9oMT1iXEr1QKzXIsDz0
c+54Tk1dIgOOnNvov2sDWqyvlq1xO+1a0ZK0iqm1x3Yk4pRXHGU8YQ4hNIryyLoc
erfwyfsGjOVyhfFLNkcph+0Jov1NH+k/8mjyfaNRlIZdg0xTG5UwOO9NaZKLFfWX
Op3qlLZBDbQbqM760hMLC6zvI+84TyCYohTQwLJ6+Usr0M2t/UhzBCj4UMBM799z
CR7P2M9fQ3EsMO0BkD+WQHpzWQtPOKhG7nSfZDslTcCi7eO0fomY16m7Nxa6mgZk
QNtxpQMdKDHS/cd2OEyMsphq/5tKL4VhWnn09JciEUN6a5gDv/4VbDM/KFoqlcFY
uttIG2CfIfWHcTOHxNDFWinonot8713BTWCMK7g07YMBfwYS4kg=
=Resk
-----END PGP SIGNATURE-----

--kqis44vvjivz3hfq--




Information forwarded to guix-patches@HIDDEN:
bug#28004; Package guix-patches. Full text available.

Message received at 28004 <at> debbugs.gnu.org:


Received: (at 28004) by debbugs.gnu.org; 12 Jan 2018 08:38:30 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Jan 12 03:38:30 2018
Received: from localhost ([127.0.0.1]:52839 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1eZur8-0004w2-0Q
	for submit <at> debbugs.gnu.org; Fri, 12 Jan 2018 03:38:30 -0500
Received: from aibo.runbox.com ([91.220.196.211]:35506)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <ng0@HIDDEN>) id 1eZur5-0004vs-1S
 for 28004 <at> debbugs.gnu.org; Fri, 12 Jan 2018 03:38:28 -0500
Received: from [10.9.9.210] (helo=mailfront10.runbox.com)
 by mailtransmit02.runbox with esmtp (Exim 4.86_2)
 (envelope-from <ng0@HIDDEN>)
 id 1eZur3-0004fr-D8; Fri, 12 Jan 2018 09:38:25 +0100
Received: from dslb-188-101-171-176.188.101.pools.vodafone-ip.de
 ([188.101.171.176] helo=localhost)
 by mailfront10.runbox.com with esmtpsa (uid:892961 )
 (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82)
 id 1eZuqs-0000up-Q4; Fri, 12 Jan 2018 09:38:14 +0100
Date: Fri, 12 Jan 2018 09:38:19 +0000
From: ng0 <ng0@HIDDEN>
To: Marius Bakke <mbakke@HIDDEN>
Subject: Re: [bug#28004] Chromium
Message-ID: <20180112093819.763dsyiuxcyreh5z@abyayala>
References: <87y3qvb15k.fsf@HIDDEN>
 <20171010131949.y43plpzxbppvrigr@abyayala> <87lgkha2cx.fsf@HIDDEN>
 <20171012195628.GA31843@HIDDEN> <87shensfq6.fsf@HIDDEN>
 <87o9p45bb6.fsf@HIDDEN>
 <20180104191648.custe7w3l57fvbac@abyayala>
 <87wp0s2ewl.fsf@HIDDEN>
 <20180109065800.j2gfid7o6a6db2fv@abyayala>
 <876088eyff.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: multipart/signed; micalg=pgp-sha512;
 protocol="application/pgp-signature"; boundary="auyxbv6jymdxwpku"
Content-Disposition: inline
In-Reply-To: <876088eyff.fsf@HIDDEN>
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 28004
Cc: 28004 <at> debbugs.gnu.org, ng0 <ng0@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -0.7 (/)


--auyxbv6jymdxwpku
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

Marius Bakke transcribed 2.3K bytes:
> ng0 <ng0@HIDDEN> writes:
>=20
> > Marius Bakke transcribed 39K bytes:
> >
> >> Testing and feedback welcome!
> >>=20
> >> Currently there are two "important" (blocking?) TODOs left:
> >>=20
> >> * Move the 'delete-bundled-software' phase to a source snippet.
> >>   Repacking the ~500MiB compressed tarball is *really* expensive.  It
> >>   should also aid the licensing situation.
> >> * Delete the two default entries from the "most used" list on the New
> >>   Tab page.  The first run will download thumbnails for these sites,
> >>   leaking data.  One of them also leads to the disabled-by-default
> >>   store, promoting non-free software.
> >>=20
> >> I'm optimistic that fixing the second item will make the browser not
> >> leak *any* data at launch with the default configuration.  Which leads
> >> to a third item: writing a system test that verifies that launching
> >> Chromium does indeed not initiate any network traffic.
> >>=20
> >> Anyway, here is the latest patch:
> >>=20
> >
> >> From f813b2d7ec0728a906720fa74bf9f442af6ab10d Mon Sep 17 00:00:00 2001
> >> From: Marius Bakke <mbakke@HIDDEN>
> >> Date: Wed, 12 Oct 2016 17:25:05 +0100
> >> Subject: [PATCH] gnu: Add chromium.
> >>=20
> >> * gnu/packages/chromium.scm: New file.
> >> * gnu/local.mk: Record it.
> >
> > I think you forgot a package:
> >
> > gnu/packages/chromium.scm:664:5: icu4c-59.1: unbound variable
>=20
> Indeed.  This can now be changed to use the regular "icu4c" package.

Okay, will change. Thanks!

> Tangentially, these kinds of problems are typical with new Chromium
> releases.  In 63 or later, system harfbuzz had to be disabled.  If we
> are going to carry this package, changes like these *will* be normal.
>
> Upstream only tests their releases with Clang, and with the bundled
> versions of packages, regardless of the unbundling script.  Not great.

Yeah. I've been there, and read the frustration of other packagers
when I worked on getting a basic skeleton of chromium + dependencies
ready one(?) year ago.
--=20
GnuPG: A88C8ADD129828D7EAC02E52E22F9BBFEE348588
GnuPG: https://c.n0.is/ng0_pubkeys/tree/keys
  WWW: https://n0.is/a/  ::  https://ea.n0.is

--auyxbv6jymdxwpku
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQIzBAABCgAdFiEEqIyK3RKYKNfqwC5S4i+bv+40hYgFAlpYggoACgkQ4i+bv+40
hYjN4Q/+KGObsSC509gmQg5SnAMBjF+MGqXs56d8+j7xHyBoVVlFyy8P81Z1csGO
Lfd+q36s2EoOXgIRlCQLw/g2nnlCTeITKmme0/fvXoqGxxkc5pc6YcvbRDH5S7rw
eW5N7XW6F1d6OiQBkXfGNnlZd78agHN798BDbcoP877OjIa0OPZ1aDtdYk1ZOqyp
Jmehha9SY5Jdxl5xQRJbLv6Aq7fzNdqS1o0UzN/I4hDTNNI3ucZ5F1LLX36YQGky
QA8BLnqTu3+uAzIETK5QaSvHyycE2fUW6x3f3Pr4EDNDQZgmbOhPKzdH3Ayt5mo+
y0nJzyiORfwNRzUvC7kyrlgG0oCLMEAbSMSNTKOY9dEo2gzAmS2imMfqvJvjNI8f
XpCwyOC3LBMLNd7xICkwGHyAIVtBoLFlqA94Sc0fXLrzzh0qqNg3p9QO68wt5IdE
56eUYZFHdQLabfzZd+kVejbRcp/5P1SB4kulYNvKosP7dg1btJ63RmPILm+vI8Yn
r7jZW2Fm+fPbyBOX1MRn2eLaGCMVvlvOgU9H99iK5lnDXBbU/0xfHzSOPcrL5aEg
swcSM740OBvMaGc62bqfj20LuovCZXLK3bRPZ1CaLfDjFIzaFtMv1pgOordOMjE6
OEueYJ0/V7yykc0IlBb4sxrep2xKjQfr9o8K4L8QIJp+wjl2pic=
=pPQ9
-----END PGP SIGNATURE-----

--auyxbv6jymdxwpku--




Information forwarded to guix-patches@HIDDEN:
bug#28004; Package guix-patches. Full text available.

Message received at 28004 <at> debbugs.gnu.org:


Received: (at 28004) by debbugs.gnu.org; 12 Jan 2018 00:09:18 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Jan 11 19:09:17 2018
Received: from localhost ([127.0.0.1]:52719 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1eZmuF-0001g6-9A
	for submit <at> debbugs.gnu.org; Thu, 11 Jan 2018 19:09:17 -0500
Received: from out3-smtp.messagingengine.com ([66.111.4.27]:58981)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <mbakke@HIDDEN>) id 1eZmuA-0001ft-K9
 for 28004 <at> debbugs.gnu.org; Thu, 11 Jan 2018 19:09:09 -0500
Received: from compute5.internal (compute5.nyi.internal [10.202.2.45])
 by mailout.nyi.internal (Postfix) with ESMTP id 4160F20C01;
 Thu, 11 Jan 2018 19:09:06 -0500 (EST)
Received: from frontend1 ([10.202.2.160])
 by compute5.internal (MEProxy); Thu, 11 Jan 2018 19:09:06 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=fastmail.com; h=
 cc:content-type:date:from:in-reply-to:message-id:mime-version
 :references:subject:to:x-me-sender:x-me-sender:x-sasl-enc; s=
 fm1; bh=EJf8IQV25ppCBxZMuw10TlxSsQPZVk0DqSo/OW2NtDA=; b=TK6LyXyc
 W7tWBeNukHWngyVO44nUfbefnysBuKVwHW8h2zFq5WTkkWZVhryQcPGcpDHZYZ1Q
 s2KuJaTfa/H/EsIrnYb3GLrI06P4utd5/CWmQRHz6g8NYKoiCIEt5skANtpX0aqM
 nKW1jqKikNehkqv0iSAUquCc/stZIFonbrP/BpDN1nQ/7LbbzRq4SEEZH5bwgOJl
 1NyWZddc2h7BTW+dRK8qkF7lGFY3hk9kbpd3LK1m/8otHUPUiFyF0zmYhnBOFztn
 Apc2EHATxvD+cBsIrBrPRNRmqpkNEOWQiPJAH0aDddTfAlksjuEgjkVqqWfelEYk
 //PTxACnk9BWfA==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
 messagingengine.com; h=cc:content-type:date:from:in-reply-to
 :message-id:mime-version:references:subject:to:x-me-sender
 :x-me-sender:x-sasl-enc; s=fm1; bh=EJf8IQV25ppCBxZMuw10TlxSsQPZV
 k0DqSo/OW2NtDA=; b=NmqrxEmbG3Qt1Z3nBBd+kYMAsJBnsUJbGzVR59yX+tsra
 mq/q2BrPBQoavB7Ng1m8qLkelvMf4WGHAM4Gtcou538zwv3gVd5WqlPJiLrgpazg
 ycCcj1xQ4rG6FGhBy5orUGKkf/ZgRRhicblUiG8fpLEUFQKmzNFAL7yM5N4aFDZM
 rraYFG5iwe3I2TJRIEVcu5/AHfE+Y8G5IqzXee5j5Ar/vY3HmJffLjYKYU0sBP0Z
 8UcrN5g1XF1nF7oO+RnQ2xbvZe9JH/URca9jSTY9Iy+NyoQNdY/AcOuUeDj8rKKD
 ogaif9nJEBfpVXtFIjpdFqAkUp9vaT8xMtcevKjVA==
X-ME-Sender: <xms:ovxXWsgDzG8PqFLNZKMAn6wNWGFp4W1Sfs7ieynrhemVM_xuU9jMxA>
Received: from localhost (cm-84.214.173.174.getinternet.no [84.214.173.174])
 by mail.messagingengine.com (Postfix) with ESMTPA id BA0DC7E30E;
 Thu, 11 Jan 2018 19:09:05 -0500 (EST)
From: Marius Bakke <mbakke@HIDDEN>
To: ng0 <ng0@HIDDEN>
Subject: Re: [bug#28004] Chromium
In-Reply-To: <20180108232042.nqjurjr2bcfl2yyc@abyayala>
References: <87y3qvb15k.fsf@HIDDEN>
 <20171010131949.y43plpzxbppvrigr@abyayala> <87lgkha2cx.fsf@HIDDEN>
 <20171012195628.GA31843@HIDDEN> <87shensfq6.fsf@HIDDEN>
 <87o9p45bb6.fsf@HIDDEN> <20180104191648.custe7w3l57fvbac@abyayala>
 <87wp0s2ewl.fsf@HIDDEN> <20180108232042.nqjurjr2bcfl2yyc@abyayala>
User-Agent: Notmuch/0.26 (https://notmuchmail.org) Emacs/25.3.1
 (x86_64-pc-linux-gnu)
Date: Fri, 12 Jan 2018 01:09:04 +0100
Message-ID: <87373cey5b.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: multipart/signed; boundary="==-=-=";
 micalg=pgp-sha512; protocol="application/pgp-signature"
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 28004
Cc: 28004 <at> debbugs.gnu.org, Ludovic =?utf-8?Q?Court=C3=A8s?= <ludo@HIDDEN>,
 ng0 <ng0@HIDDEN>, Leo Famulari <leo@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: 0.0 (/)

--==-=-=
Content-Type: multipart/mixed; boundary="=-=-="

--=-=-=
Content-Type: text/plain

ng0 <ng0@HIDDEN> writes:

> Many thanks for your ongoing work with this (and the patience :))
> As this is 63, you you are keeping track of Debian, right? I tried
> to package 64 a couple of days ago because I wanted the workaround
> for some of the recent security clusterfucks, but Debian is still
> on 63 :/
> I hope they'll update their patchset soon.

Indeed Google did not add the Spectre mitigation to Chromium 63, even
though the latest version was released after the fact.

https://xlab.tencent.com/special/spectre/spectre_check.html

For reasons that beat me, they only added it to the proprietary Chrome
browser, which follows the same version number as Chromium.

The attached patch adds Spectre mitigation to the current Chromium
release.  The patch was pulled from the Chrome 64 branch:


--=-=-=
Content-Type: text/x-patch
Content-Disposition: attachment;
 filename=0001-gnu-chromium-Add-spectre-mitigation.patch
Content-Transfer-Encoding: quoted-printable

From=20b011b57f357af97f3a003a3b1c481fc8bd2b869c Mon Sep 17 00:00:00 2001
From: Marius Bakke <mbakke@HIDDEN>
Date: Thu, 11 Jan 2018 14:36:47 +0100
Subject: [PATCH] gnu: chromium: Add spectre mitigation.

* gnu/packages/patches/chromium-spectre-mitigation.patch: New file.
* gnu/local.mk (dist_patch_DATA): Register it.
* gnu/packages/chromium.scm (chromium)[source]: Use it.
=2D--
 gnu/local.mk                                           |  1 +
 gnu/packages/chromium.scm                              |  3 ++-
 gnu/packages/patches/chromium-spectre-mitigation.patch | 13 +++++++++++++
 3 files changed, 16 insertions(+), 1 deletion(-)
 create mode 100644 gnu/packages/patches/chromium-spectre-mitigation.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index 513f64043..89dab227c 100644
=2D-- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -575,6 +575,7 @@ dist_patch_DATA =3D						\
   %D%/packages/patches/ceph-skip-collect-sys-info-test.patch	\
   %D%/packages/patches/ceph-skip-unittest_blockdev.patch	\
   %D%/packages/patches/chmlib-inttypes.patch			\
+  %D%/packages/patches/chromium-spectre-mitigation.patch	\
   %D%/packages/patches/clang-libc-search-path.patch		\
   %D%/packages/patches/clang-3.8-libc-search-path.patch		\
   %D%/packages/patches/clementine-use-openssl.patch		\
diff --git a/gnu/packages/chromium.scm b/gnu/packages/chromium.scm
index dd040527b..1e9dba42e 100644
=2D-- a/gnu/packages/chromium.scm
+++ b/gnu/packages/chromium.scm
@@ -240,7 +240,8 @@
                              %chromium-system-icu.patch
                              %chromium-system-nspr.patch
                              %chromium-system-libevent.patch
=2D                             %chromium-disable-api-keys-warning.patch))
+                             %chromium-disable-api-keys-warning.patch
+                             (search-patch "chromium-spectre-mitigation.pa=
tch")))
               (modules '((srfi srfi-1)
                          (guix build utils)))
               (snippet
diff --git a/gnu/packages/patches/chromium-spectre-mitigation.patch b/gnu/p=
ackages/patches/chromium-spectre-mitigation.patch
new file mode 100644
index 000000000..a44a3bce4
=2D-- /dev/null
+++ b/gnu/packages/patches/chromium-spectre-mitigation.patch
@@ -0,0 +1,13 @@
+diff --git a/content/public/common/content_features.cc b/content/public/co=
mmon/content_features.cc
+index 43feb76..33a49b8 100644
+--- a/content/public/common/content_features.cc
++++ b/content/public/common/content_features.cc
+@@ -308,7 +308,7 @@
+=20
+ // http://tc39.github.io/ecmascript_sharedmem/shmem.html
+ const base::Feature kSharedArrayBuffer{"SharedArrayBuffer",
+-                                       base::FEATURE_ENABLED_BY_DEFAULT};
++                                       base::FEATURE_DISABLED_BY_DEFAULT};
+=20
+ // An experiment to require process isolation for the sign-in origin,
+ // https://accounts.google.com.  Launch bug: https://crbug.com/739418.
=2D-=20
2.15.1


--=-=-=--

--==-=-=
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQEzBAEBCgAdFiEEu7At3yzq9qgNHeZDoqBt8qM6VPoFAlpX/KAACgkQoqBt8qM6
VPp9Ugf9EcLGWsYQsyktXTYY7fo37j1CKGiXuzbBtyXpJGWCAz8MBHVC0qA1H7Lf
EhK7HBpf1dybG7yyIC2M5wV9wMi8y1fB0m05HNH5JmYoVe1oZFtdaeV8XFNmLxqa
Gjh9SOwo41YTX+tPciv1Z0Y6i+4XBYSaSw8FUh9Xm1E3ceJHBVx3GNsde9KZ4Vng
twCWeii97hhnnmKjhZ67B/AzuvJz2ar5AmHaj8nL8wAlK1xd14l7O2LGAKeLQe0x
+R/0ihjae/y2SUnnffOt0k9X9oqYF/E59QKArY//8j/aoMJtbKYZfu+pEoYIjrdF
z5TOdQR6W0ePo1gOPE37bIgMAhj3Yw==
=8mQZ
-----END PGP SIGNATURE-----
--==-=-=--




Information forwarded to guix-patches@HIDDEN:
bug#28004; Package guix-patches. Full text available.

Message received at 28004 <at> debbugs.gnu.org:


Received: (at 28004) by debbugs.gnu.org; 12 Jan 2018 00:03:04 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Jan 11 19:03:04 2018
Received: from localhost ([127.0.0.1]:52709 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1eZmoK-0001Xh-AB
	for submit <at> debbugs.gnu.org; Thu, 11 Jan 2018 19:03:04 -0500
Received: from out3-smtp.messagingengine.com ([66.111.4.27]:47531)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <mbakke@HIDDEN>) id 1eZmoJ-0001Xa-6w
 for 28004 <at> debbugs.gnu.org; Thu, 11 Jan 2018 19:03:03 -0500
Received: from compute5.internal (compute5.nyi.internal [10.202.2.45])
 by mailout.nyi.internal (Postfix) with ESMTP id AA44C207CE;
 Thu, 11 Jan 2018 19:03:02 -0500 (EST)
Received: from frontend1 ([10.202.2.160])
 by compute5.internal (MEProxy); Thu, 11 Jan 2018 19:03:02 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=fastmail.com; h=
 cc:content-type:date:from:in-reply-to:message-id:mime-version
 :references:subject:to:x-me-sender:x-me-sender:x-sasl-enc; s=
 fm1; bh=LCeldhoRwd0/iu3AkP0ITg+DDgNp2pvitXAfddBsMgY=; b=NcQqSH6d
 h3Fp4+leIb+c33yUIUs7EebcoURtdlSZlKZ7kl0UyYYIhII2fsEARm3atFBmAx2j
 W5h+t268Hc+s29dJE6tIGpJ3S2hkPF9w8F96zbNC5V84LUN8IbsLKJsptwfqUcpM
 ZX0QwCBm4gSnk09Njxb/WYmWwrZHAr1qeJzti+KzZAiKwyi8F2w+hOsLwU/+TrOC
 ppryp++QYiJ9AuXIBlAD/8NECQsM06MG5POkZiiBDATwZ1Frme2HLhtB6JmnOl6/
 0Pbmh/nO4rtvOq2CaR7Wu5m/H1Wi4tFgNodiUhPJ8rJ5jpvF/Bxt+2jRnEjjMQPO
 NXIx1uTbgaATgg==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
 messagingengine.com; h=cc:content-type:date:from:in-reply-to
 :message-id:mime-version:references:subject:to:x-me-sender
 :x-me-sender:x-sasl-enc; s=fm1; bh=LCeldhoRwd0/iu3AkP0ITg+DDgNp2
 pvitXAfddBsMgY=; b=Erdj9J1fASrDdKj5BZG2P+g094SUKnH4q8RG3xKLm4m31
 T2gI/bLF857G0U/pPPGHWS0F24jkdoxW+qNV6aU9tGl8S+5jGddrR59F93upOasF
 gLBfCRbwA+zYFBWsRTkHcCHOSyffNTF4NOj/Ps1jpq1HRKYcgDNMG4gOY6+3ZGge
 wNWlEpLaBuOQ9iBVUwnDdoZb45zm774mYlkQRsQWWBOlxack/uvcqybUupatvu4t
 rM7xlk/4/SiR08PC64c437e3vmle9QkMlE6dmLeV1Fqm/zC6cSPXufguCFKSjSTP
 3lT3dn2CHljY5jsW+cs00cBm7Sx5OmScBow3NDixQ==
X-ME-Sender: <xms:NvtXWlKoQpavytFv4v9I2LA0oBD0kAhsOH9VbWy7j0e0B6GHl-GqmA>
Received: from localhost (cm-84.214.173.174.getinternet.no [84.214.173.174])
 by mail.messagingengine.com (Postfix) with ESMTPA id 388747E3D4;
 Thu, 11 Jan 2018 19:03:02 -0500 (EST)
From: Marius Bakke <mbakke@HIDDEN>
To: ng0 <ng0@HIDDEN>
Subject: Re: [bug#28004] Chromium
In-Reply-To: <20180109065800.j2gfid7o6a6db2fv@abyayala>
References: <87y3qvb15k.fsf@HIDDEN>
 <20171010131949.y43plpzxbppvrigr@abyayala> <87lgkha2cx.fsf@HIDDEN>
 <20171012195628.GA31843@HIDDEN> <87shensfq6.fsf@HIDDEN>
 <87o9p45bb6.fsf@HIDDEN> <20180104191648.custe7w3l57fvbac@abyayala>
 <87wp0s2ewl.fsf@HIDDEN> <20180109065800.j2gfid7o6a6db2fv@abyayala>
User-Agent: Notmuch/0.26 (https://notmuchmail.org) Emacs/25.3.1
 (x86_64-pc-linux-gnu)
Date: Fri, 12 Jan 2018 01:03:00 +0100
Message-ID: <876088eyff.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: multipart/signed; boundary="=-=-=";
 micalg=pgp-sha512; protocol="application/pgp-signature"
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 28004
Cc: 28004 <at> debbugs.gnu.org, ng0 <ng0@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -0.7 (/)

--=-=-=
Content-Type: text/plain
Content-Transfer-Encoding: quoted-printable

ng0 <ng0@HIDDEN> writes:

> Marius Bakke transcribed 39K bytes:
>
>> Testing and feedback welcome!
>>=20
>> Currently there are two "important" (blocking?) TODOs left:
>>=20
>> * Move the 'delete-bundled-software' phase to a source snippet.
>>   Repacking the ~500MiB compressed tarball is *really* expensive.  It
>>   should also aid the licensing situation.
>> * Delete the two default entries from the "most used" list on the New
>>   Tab page.  The first run will download thumbnails for these sites,
>>   leaking data.  One of them also leads to the disabled-by-default
>>   store, promoting non-free software.
>>=20
>> I'm optimistic that fixing the second item will make the browser not
>> leak *any* data at launch with the default configuration.  Which leads
>> to a third item: writing a system test that verifies that launching
>> Chromium does indeed not initiate any network traffic.
>>=20
>> Anyway, here is the latest patch:
>>=20
>
>> From f813b2d7ec0728a906720fa74bf9f442af6ab10d Mon Sep 17 00:00:00 2001
>> From: Marius Bakke <mbakke@HIDDEN>
>> Date: Wed, 12 Oct 2016 17:25:05 +0100
>> Subject: [PATCH] gnu: Add chromium.
>>=20
>> * gnu/packages/chromium.scm: New file.
>> * gnu/local.mk: Record it.
>
> I think you forgot a package:
>
> gnu/packages/chromium.scm:664:5: icu4c-59.1: unbound variable

Indeed.  This can now be changed to use the regular "icu4c" package.

Tangentially, these kinds of problems are typical with new Chromium
releases.  In 63 or later, system harfbuzz had to be disabled.  If we
are going to carry this package, changes like these *will* be normal.

Upstream only tests their releases with Clang, and with the bundled
versions of packages, regardless of the unbundling script.  Not great.

--=-=-=
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQEzBAEBCgAdFiEEu7At3yzq9qgNHeZDoqBt8qM6VPoFAlpX+zQACgkQoqBt8qM6
VPqWtAgAvnDlgruvslsmvlTIZriBXiLl5VCYvD14DNcagotW/7W+BzT4ne5XdLcL
5vEtd0p8hwX2St2FpYGq8FpcKbazLDuA9qWAvFg3bGY8hyHCwLYHXFSHMoodAZbV
wlKxTZuXlmEKek0Wn1FNuCgqbh/iDLsf6hJ0fGRzS04EupEwI2IWArhsalKzMSvC
tKYynIDSNzMkRgfw6+MJKngqxahVyH31nTjB98RGVm4vYwzvZTKgpkdT9EIIVPIm
jBG9DYwedeiSKFIF86ptVfmho/iV8D/XnzTSnCCC/k+tnJToMhK2eghyAshFIG4z
Px/idB9WdG/XpMVmBgMfC1eLC01fdw==
=4q8R
-----END PGP SIGNATURE-----
--=-=-=--




Information forwarded to guix-patches@HIDDEN:
bug#28004; Package guix-patches. Full text available.

Message received at 28004 <at> debbugs.gnu.org:


Received: (at 28004) by debbugs.gnu.org; 9 Jan 2018 06:58:07 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Jan 09 01:58:07 2018
Received: from localhost ([127.0.0.1]:41994 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1eYnrL-0005YB-FG
	for submit <at> debbugs.gnu.org; Tue, 09 Jan 2018 01:58:07 -0500
Received: from aibo.runbox.com ([91.220.196.211]:41966)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <ng0@HIDDEN>) id 1eYnrK-0005Y1-01
 for 28004 <at> debbugs.gnu.org; Tue, 09 Jan 2018 01:58:06 -0500
Received: from [10.9.9.211] (helo=mailfront11.runbox.com)
 by mailtransmit02.runbox with esmtp (Exim 4.86_2)
 (envelope-from <ng0@HIDDEN>)
 id 1eYnrI-0000IO-QY; Tue, 09 Jan 2018 07:58:04 +0100
Received: from dslb-088-078-094-182.088.078.pools.vodafone-ip.de
 ([88.78.94.182] helo=localhost)
 by mailfront11.runbox.com with esmtpsa (uid:892961 )
 (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82)
 id 1eYnrF-0006lP-9E; Tue, 09 Jan 2018 07:58:01 +0100
Date: Tue, 9 Jan 2018 06:58:00 +0000
From: ng0 <ng0@HIDDEN>
To: Marius Bakke <mbakke@HIDDEN>
Subject: Re: [bug#28004] Chromium
Message-ID: <20180109065800.j2gfid7o6a6db2fv@abyayala>
References: <87y3qvb15k.fsf@HIDDEN>
 <20171010131949.y43plpzxbppvrigr@abyayala> <87lgkha2cx.fsf@HIDDEN>
 <20171012195628.GA31843@HIDDEN> <87shensfq6.fsf@HIDDEN>
 <87o9p45bb6.fsf@HIDDEN>
 <20180104191648.custe7w3l57fvbac@abyayala>
 <87wp0s2ewl.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: multipart/signed; micalg=pgp-sha512;
 protocol="application/pgp-signature"; boundary="q76mfb3shwiuk5qr"
Content-Disposition: inline
In-Reply-To: <87wp0s2ewl.fsf@HIDDEN>
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 28004
Cc: 28004 <at> debbugs.gnu.org, ng0 <ng0@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -0.7 (/)


--q76mfb3shwiuk5qr
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

Marius Bakke transcribed 39K bytes:

> Testing and feedback welcome!
>=20
> Currently there are two "important" (blocking?) TODOs left:
>=20
> * Move the 'delete-bundled-software' phase to a source snippet.
>   Repacking the ~500MiB compressed tarball is *really* expensive.  It
>   should also aid the licensing situation.
> * Delete the two default entries from the "most used" list on the New
>   Tab page.  The first run will download thumbnails for these sites,
>   leaking data.  One of them also leads to the disabled-by-default
>   store, promoting non-free software.
>=20
> I'm optimistic that fixing the second item will make the browser not
> leak *any* data at launch with the default configuration.  Which leads
> to a third item: writing a system test that verifies that launching
> Chromium does indeed not initiate any network traffic.
>=20
> Anyway, here is the latest patch:
>=20

> From f813b2d7ec0728a906720fa74bf9f442af6ab10d Mon Sep 17 00:00:00 2001
> From: Marius Bakke <mbakke@HIDDEN>
> Date: Wed, 12 Oct 2016 17:25:05 +0100
> Subject: [PATCH] gnu: Add chromium.
>=20
> * gnu/packages/chromium.scm: New file.
> * gnu/local.mk: Record it.

I think you forgot a package:

gnu/packages/chromium.scm:664:5: icu4c-59.1: unbound variable



--=20
GnuPG: A88C8ADD129828D7EAC02E52E22F9BBFEE348588
GnuPG: https://c.n0.is/ng0_pubkeys/tree/keys
  WWW: https://n0.is/a/  ::  https://ea.n0.is

--q76mfb3shwiuk5qr
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQIzBAABCgAdFiEEqIyK3RKYKNfqwC5S4i+bv+40hYgFAlpUZ/gACgkQ4i+bv+40
hYg+Xw/9HiYWwK9A98bhaH660mjWErXctm2ji130kuet22b/Y7KbyjL/ShmcOB/B
Bz7q7QcCTqsU7e1WMlFoIeeBMi7wKcMQxY5EnM7F1DfQkiKpIJF7XhXgPNq/EOHy
sHpUiI1pfbvtL+l6MVf7iCyzvveHC/iidt2eZczdAAGMTJoJ8psm3SK/Bg9kb24U
Y3o/GyXXpa6jx5hKN65aGlp/Pl8iAtFhzPlgwiHv8FKDzpUjhMKS2nAG53or2CiK
fvYwdVrxxkrgxqQnyg8ql42zY+O6YvT+xa26PyQUhnZW18NO2L3hDs6TnqCGB+kv
WA+3rjVzpVjMDJpTK1HOfY9YgZx+op7TBBGRujLhexbV32Cuwb3zQgDfRZSHaWN6
nW0lGWrVixNsDE/M0l+liItjh97ogU0kApyOmqKGDrWgo9x4bbglZHhYXMMqRinH
nLDvbPVNcmyKe71S92qdzZIPukwYpOCwpDsmZR9HHXdqCDpzOUQXhDb+leJBI2Bq
vJUiHB/QEhxn0l/G1xadjNUaLmz/euL7Xo4MGwMc1wikvP/LTGH4GMD3OMMEJ517
3cV1w0bYULL4cBTKIzpZ1SaYEJCDun3b87r57foYXI2lO8gSekCz7ay63VUhq6fj
1ISeqsNrejJSGTfHHaNHqSAxdw/m5K/KOEZtLKIMcMICkfPBS5I=
=OSHa
-----END PGP SIGNATURE-----

--q76mfb3shwiuk5qr--




Information forwarded to guix-patches@HIDDEN:
bug#28004; Package guix-patches. Full text available.

Message received at 28004 <at> debbugs.gnu.org:


Received: (at 28004) by debbugs.gnu.org; 8 Jan 2018 23:40:15 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon Jan 08 18:40:15 2018
Received: from localhost ([127.0.0.1]:41897 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1eYh1a-00038l-Ob
	for submit <at> debbugs.gnu.org; Mon, 08 Jan 2018 18:40:14 -0500
Received: from out3-smtp.messagingengine.com ([66.111.4.27]:41361)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <mbakke@HIDDEN>) id 1eYh1Z-00038d-Ip
 for 28004 <at> debbugs.gnu.org; Mon, 08 Jan 2018 18:40:14 -0500
Received: from compute5.internal (compute5.nyi.internal [10.202.2.45])
 by mailout.nyi.internal (Postfix) with ESMTP id 0D02020754;
 Mon,  8 Jan 2018 18:40:13 -0500 (EST)
Received: from frontend1 ([10.202.2.160])
 by compute5.internal (MEProxy); Mon, 08 Jan 2018 18:40:13 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=fastmail.com; h=
 cc:content-type:date:from:in-reply-to:message-id:mime-version
 :references:subject:to:x-me-sender:x-me-sender:x-sasl-enc; s=
 fm1; bh=ly+/nCpppfCZ0+ujSwDzK91s4HPYbLSFOiPebTNkOjM=; b=zGvo4T5w
 XjQc6i0azv9/vDPoe99Cmi7mekkHpxXxZeBd578bn7/Rwy9Dx0GPbsNHe6axdUlR
 6XbbhBpD/V/kyMO23AMuuecErYfpPudq1Soh7wJHyZLC0+PbWIw2cdnLBHYOr747
 PrNwTv0n+m3aKp9QAXwVVmvLXx09wbk01RUschlm+XKAJBx6Y8FSqKbsG6RDipd6
 oHzyvM0ysOC8mc+C8/9TyWPvPqAbeTHUSm4E6nbsGemaTwgTNYIebfHt2V+vTHfk
 17okJl29NWaFZAANda1D6ctEzvB9aZP/aXimzGI4IaoYeDQXwqGp/yHbk9UvVryc
 OmM2/NU7NnBfDA==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
 messagingengine.com; h=cc:content-type:date:from:in-reply-to
 :message-id:mime-version:references:subject:to:x-me-sender
 :x-me-sender:x-sasl-enc; s=fm1; bh=ly+/nCpppfCZ0+ujSwDzK91s4HPYb
 LSFOiPebTNkOjM=; b=RbzKRWQUAGKZZQDJoezl4Vc3id0U2b1bCCu4JtNAxWknd
 cuG5vPPw1OKg3MJDUX+IMBo6AldddSxL05faZ//eK/rydg7W/Recvfar/Tu0y/79
 b5h74royFlTKYe8IYcs3LiLNsTA3OVc5DhOUHYhbRUCeMlz3hNbPk30+7fLPCy1h
 4BoHzo0z0lxnWAvbmmLQTg97ZYJ9ZYR2pVmbEWSQbTi4ag31MwIy/AB8MszuIO6m
 EpEP2ETVHIHl5vpfCC+uuJTGI8XbnxHhIq8T/1STMDyKeU85L1sIQIcjY3uJeTyU
 KjBMI2EXVJaNguvnRj5zTg1q757cd5xoaoJRvQ8mg==
X-ME-Sender: <xms:XAFUWj65AgvdmEcmX__Zpuv5jSqCXWLU7ry0TGK9eaKB4-F4PuMmpQ>
Received: from localhost (cm-84.214.173.174.getinternet.no [84.214.173.174])
 by mail.messagingengine.com (Postfix) with ESMTPA id 86CFE7E300;
 Mon,  8 Jan 2018 18:40:12 -0500 (EST)
From: Marius Bakke <mbakke@HIDDEN>
To: ng0 <ng0@HIDDEN>
Subject: Re: [bug#28004] Chromium
In-Reply-To: <20180108232042.nqjurjr2bcfl2yyc@abyayala>
References: <87y3qvb15k.fsf@HIDDEN>
 <20171010131949.y43plpzxbppvrigr@abyayala> <87lgkha2cx.fsf@HIDDEN>
 <20171012195628.GA31843@HIDDEN> <87shensfq6.fsf@HIDDEN>
 <87o9p45bb6.fsf@HIDDEN> <20180104191648.custe7w3l57fvbac@abyayala>
 <87wp0s2ewl.fsf@HIDDEN> <20180108232042.nqjurjr2bcfl2yyc@abyayala>
User-Agent: Notmuch/0.25.3 (https://notmuchmail.org) Emacs/25.3.1
 (x86_64-pc-linux-gnu)
Date: Tue, 09 Jan 2018 00:40:09 +0100
Message-ID: <87vagb3oo6.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: multipart/signed; boundary="=-=-=";
 micalg=pgp-sha512; protocol="application/pgp-signature"
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 28004
Cc: 28004 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -0.7 (/)

--=-=-=
Content-Type: text/plain

ng0 <ng0@HIDDEN> writes:

> Many thanks for your ongoing work with this (and the patience :))
> As this is 63, you you are keeping track of Debian, right? I tried
> to package 64 a couple of days ago because I wanted the workaround
> for some of the recent security clusterfucks, but Debian is still
> on 63 :/
> I hope they'll update their patchset soon.

I track the upstream stable branch, which is currently 63.

https://www.chromestatus.com/features/schedule

(see also <https://chromereleases.googleblog.com/> for updates)

--=-=-=
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQEzBAEBCgAdFiEEu7At3yzq9qgNHeZDoqBt8qM6VPoFAlpUAVoACgkQoqBt8qM6
VPok2QgAvDcEaANEPdl0Jmoy2Ds6ZVfs5dkkFNQ1CukK5rcp4SWpnM7kn5GEc+3m
qLLFAmzLVpPjL6MVnw6/4FF4NFyZuDjNcfW1PkbMGU6F06dd9dclo3TsdfVvtSmQ
qJ8r2uPiOUQgkcxfqt85YUjHbguPvLluusykN5HeuF85w4J8scIJ9l9ZbqJTj0Xz
aMd83lx7x3ggd1RToPR5Y4rTHv6AvdQ4R3GQbU/ngnPXhEjSNyVvbGN2Id4PwRyd
F7YYX0SgGrEn1P7SPvGfQWdcZfe5xea5BuIZ/3z9FQ9k61J3rU9nUga3FHTH+EGH
Ne1FgA3HnXA6CDeUGJ6IZnVLQuxGtw==
=DXgb
-----END PGP SIGNATURE-----
--=-=-=--




Information forwarded to guix-patches@HIDDEN:
bug#28004; Package guix-patches. Full text available.

Message received at 28004 <at> debbugs.gnu.org:


Received: (at 28004) by debbugs.gnu.org; 8 Jan 2018 23:21:12 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon Jan 08 18:21:12 2018
Received: from localhost ([127.0.0.1]:41880 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1eYgj1-0002eu-Ev
	for submit <at> debbugs.gnu.org; Mon, 08 Jan 2018 18:21:12 -0500
Received: from aibo.runbox.com ([91.220.196.211]:37208)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <ng0@HIDDEN>) id 1eYgiu-0002e1-1q
 for 28004 <at> debbugs.gnu.org; Mon, 08 Jan 2018 18:21:02 -0500
Received: from [10.9.9.210] (helo=mailfront10.runbox.com)
 by mailtransmit03.runbox with esmtp (Exim 4.86_2)
 (envelope-from <ng0@HIDDEN>)
 id 1eYgio-00013T-5r; Tue, 09 Jan 2018 00:20:50 +0100
Received: from dslb-178-001-037-057.178.001.pools.vodafone-ip.de
 ([178.1.37.57] helo=localhost)
 by mailfront10.runbox.com with esmtpsa (uid:892961 )
 (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82)
 id 1eYgih-0000Dd-UT; Tue, 09 Jan 2018 00:20:45 +0100
Date: Mon, 8 Jan 2018 23:20:42 +0000
From: ng0 <ng0@HIDDEN>
To: Marius Bakke <mbakke@HIDDEN>
Subject: Re: [bug#28004] Chromium
Message-ID: <20180108232042.nqjurjr2bcfl2yyc@abyayala>
References: <87y3qvb15k.fsf@HIDDEN>
 <20171010131949.y43plpzxbppvrigr@abyayala> <87lgkha2cx.fsf@HIDDEN>
 <20171012195628.GA31843@HIDDEN> <87shensfq6.fsf@HIDDEN>
 <87o9p45bb6.fsf@HIDDEN>
 <20180104191648.custe7w3l57fvbac@abyayala>
 <87wp0s2ewl.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: multipart/signed; micalg=pgp-sha512;
 protocol="application/pgp-signature"; boundary="iszsxhleyobozczu"
Content-Disposition: inline
In-Reply-To: <87wp0s2ewl.fsf@HIDDEN>
X-Spam-Score: -0.0 (/)
X-Debbugs-Envelope-To: 28004
Cc: 28004 <at> debbugs.gnu.org, Ludovic =?utf-8?Q?Court=C3=A8s?= <ludo@HIDDEN>,
 ng0 <ng0@HIDDEN>, Leo Famulari <leo@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: 0.0 (/)


--iszsxhleyobozczu
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

Marius Bakke transcribed 39K bytes:
> ng0 <ng0@HIDDEN> writes:
>=20
> >> +             (substitute* "chrome/common/chrome_paths.cc"
> >> +               (("/usr/share/chromium/extensions")
> >> +                ;; TODO: Add ~/.guix-profile.
> >> +                "/run/current-system/profile/share/chromium/extension=
s"))
> >
> > What's the idea behind this? Did you test it? Do you have any guix buil=
d-system
> > using Chromium extensions as an example? So far this completely disable=
s the
> > installation of any plugins and addons.
>=20
> The idea is to eventually be able to distribute extensions with Guix.  I
> added this path mostly to document it, but don't see how keeping the
> default makes a difference.  If you can place an extension in
> /usr/share, you can also copy it to the system profile through your
> config.scm, or symlink this location on a foreign distribution.
>=20
> >> +                 (mkdir-p bin)
> >> +                 ;; Add a thin wrapper to prevent the user from inadv=
ertently
> >> +                 ;; installing non-free software through the Web Stor=
e.
> >> +                 ;; TODO: Discover extensions from the profile and pa=
ss
> >> +                 ;; something like "--disable-extensions-except=3D...=
".
> >
> > Same question here.
>=20
> The Web Store has serious freedom issues, thus we can not enable it by
> default.  Enabling it *must* be a conscious choice by the end user.
>=20
> The TODO here is inspired by Debians wrapper script, which enumerates
> the location where apt places extensions, and gives that list to
> "--disable-extensions-except".
>=20
> > If you need help, there's at least 3 users of Chromium now. I'd like to=
 read

Actually more than 3: I have to make chromium accessible for work we agreed
on in GNU Taler (where the "How should we package extensions in a way that
works" comes in important, not just as a PoC/TODO).

> > your ideas on how to solve the TODOs, aswell as: Do you have any unpush=
ed
> > progress? Maybe we can team collaborate on this huge browser.
>=20
> I do maintain this patch, but unfortunately not in a public repository.

Ah, ok.

> I've attached the latest iteration here (sorry for squashed).

Thanks

> New since the last time are some fixes from the "Inox patchset" that
> resolves most of the privacy issues.  Namely removing the "login
> wizard", changing to sensible defaults, and forcing the "classic" New
> Tab Page that does not load a search engine.

Cool!

> Also, all patches have been moved to remote origins.
>=20
> Testing and feedback welcome!

I'll build it tomorrow or tonight (whenever my build of linux-mainline to
search for fixes for the i915 issue finishes) and report back.
So far I'um using your version 58and it works for me :)

> Currently there are two "important" (blocking?) TODOs left:
>=20
> * Move the 'delete-bundled-software' phase to a source snippet.
>   Repacking the ~500MiB compressed tarball is *really* expensive.  It

Yep. It takes a verrry long time, I've noticed this when I started
working on Chromium.

>   should also aid the licensing situation.
> * Delete the two default entries from the "most used" list on the New
>   Tab page.  The first run will download thumbnails for these sites,
>   leaking data.  One of them also leads to the disabled-by-default
>   store, promoting non-free software.
>=20
> I'm optimistic that fixing the second item will make the browser not
> leak *any* data at launch with the default configuration.  Which leads
> to a third item: writing a system test that verifies that launching
> Chromium does indeed not initiate any network traffic.
>=20
> Anyway, here is the latest patch:
>=20

> From f813b2d7ec0728a906720fa74bf9f442af6ab10d Mon Sep 17 00:00:00 2001
> From: Marius Bakke <mbakke@HIDDEN>
> Date: Wed, 12 Oct 2016 17:25:05 +0100
> Subject: [PATCH] gnu: Add chromium.
>=20
> * gnu/packages/chromium.scm: New file.
> * gnu/local.mk: Record it.
> ---
>  gnu/local.mk              |   1 +
>  gnu/packages/chromium.scm | 733 ++++++++++++++++++++++++++++++++++++++++=
++++++
>  2 files changed, 734 insertions(+)
>  create mode 100644 gnu/packages/chromium.scm
>=20
> diff --git a/gnu/local.mk b/gnu/local.mk
> index d4e841921..529fdd2be 100644
> --- a/gnu/local.mk
> +++ b/gnu/local.mk
> @@ -89,6 +89,7 @@ GNU_SYSTEM_MODULES =3D				\
>    %D%/packages/check.scm			\
>    %D%/packages/chemistry.scm			\
>    %D%/packages/chez.scm				\
> +  %D%/packages/chromium.scm			\
>    %D%/packages/ci.scm				\
>    %D%/packages/cinnamon.scm			\
>    %D%/packages/cmake.scm			\
> diff --git a/gnu/packages/chromium.scm b/gnu/packages/chromium.scm
> new file mode 100644
> index 000000000..78cfb3097
> --- /dev/null
> +++ b/gnu/packages/chromium.scm
> @@ -0,0 +1,733 @@
> +;;; GNU Guix --- Functional package management for GNU
> +;;; Copyright =C2=A9 2016, 2017 Marius Bakke <mbakke@HIDDEN>
> +;;;
> +;;; This file is part of GNU Guix.
> +;;;
> +;;; GNU Guix is free software; you can redistribute it and/or modify it
> +;;; under the terms of the GNU General Public License as published by
> +;;; the Free Software Foundation; either version 3 of the License, or (at
> +;;; your option) any later version.
> +;;;
> +;;; GNU Guix is distributed in the hope that it will be useful, but
> +;;; WITHOUT ANY WARRANTY; without even the implied warranty of
> +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
> +;;; GNU General Public License for more details.
> +;;;
> +;;; You should have received a copy of the GNU General Public License
> +;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
> +
> +(define-module (gnu packages chromium)
> +  #:use-module ((guix licenses) #:prefix license:)
> +  #:use-module (guix packages)
> +  #:use-module (guix download)
> +  #:use-module (guix git-download)
> +  #:use-module (guix utils)
> +  #:use-module (guix build-system gnu)
> +  #:use-module (gnu packages)
> +  #:use-module (gnu packages assembly)
> +  #:use-module (gnu packages base)
> +  #:use-module (gnu packages bison)
> +  #:use-module (gnu packages compression)
> +  #:use-module (gnu packages cups)
> +  #:use-module (gnu packages curl)
> +  #:use-module (gnu packages databases)
> +  #:use-module (gnu packages fontutils)
> +  #:use-module (gnu packages ghostscript)
> +  #:use-module (gnu packages gl)
> +  #:use-module (gnu packages glib)
> +  #:use-module (gnu packages gnome)
> +  #:use-module (gnu packages gnuzilla)
> +  #:use-module (gnu packages gperf)
> +  #:use-module (gnu packages gtk)
> +  #:use-module (gnu packages icu4c)
> +  #:use-module (gnu packages image)
> +  #:use-module (gnu packages libevent)
> +  #:use-module (gnu packages libffi)
> +  #:use-module (gnu packages libusb)
> +  #:use-module (gnu packages linux)
> +  #:use-module (gnu packages kerberos)
> +  #:use-module (gnu packages ninja)
> +  #:use-module (gnu packages node)
> +  #:use-module (gnu packages pciutils)
> +  #:use-module (gnu packages photo)
> +  #:use-module (gnu packages pkg-config)
> +  #:use-module (gnu packages protobuf)
> +  #:use-module (gnu packages pulseaudio)
> +  #:use-module (gnu packages python)
> +  #:use-module (gnu packages python-web)
> +  #:use-module (gnu packages regex)
> +  #:use-module (gnu packages serialization)
> +  #:use-module (gnu packages speech)
> +  #:use-module (gnu packages tls)
> +  #:use-module (gnu packages valgrind)
> +  #:use-module (gnu packages version-control)
> +  #:use-module (gnu packages video)
> +  #:use-module (gnu packages xiph)
> +  #:use-module (gnu packages xml)
> +  #:use-module (gnu packages xdisorg)
> +  #:use-module (gnu packages xorg))
> +
> +(define (strip-directory-prefix pathspec)
> +  "Return everything after the last '/' in PATHSPEC."
> +  (let ((index (string-rindex pathspec #\/)))
> +    (if index (string-drop pathspec (+ 1 index))
> +        pathspec)))
> +
> +(define (chromium-patch-file-name pathspec)
> +  (let ((patch-name (strip-directory-prefix pathspec)))
> +    (if (string-prefix? "chromium-" patch-name)
> +        patch-name
> +        (string-append "chromium-" patch-name))))
> +
> +;; https://anonscm.debian.org/cgit/pkg-chromium/pkg-chromium.git/tree/de=
bian/patches
> +(define (debian-patch pathspec revision hash)
> +  (origin
> +    (method url-fetch)
> +    (uri (string-append
> +          "https://anonscm.debian.org/cgit/pkg-chromium/pkg-chromium.git"
> +          "/plain/debian/patches/" pathspec "?id=3D" revision))
> +    (sha256 (base32 hash))
> +    (file-name (chromium-patch-file-name pathspec))))
> +
> +;; https://gitweb.gentoo.org/repo/gentoo.git/tree/www-client/chromium/fi=
les
> +(define (gentoo-patch pathspec revision hash)
> +  (origin
> +    (method url-fetch)
> +    (uri (string-append
> +          "https://gitweb.gentoo.org/repo/gentoo.git/plain/www-client"
> +          "/chromium/files/" pathspec "?id=3D" revision))
> +    (sha256 (base32 hash))
> +    (file-name (chromium-patch-file-name pathspec))))
> +
> +;; https://github.com/gcarq/inox-patchset
> +(define (inox-patch pathspec revision hash)
> +  (origin
> +    (method url-fetch)
> +    (uri (string-append "https://raw.githubusercontent.com/gcarq/inox-pa=
tchset/"
> +                        revision "/" pathspec))
> +    (sha256 (base32 hash))
> +    (file-name (chromium-patch-file-name pathspec))))
> +
> +(define opus+custom
> +  (package (inherit opus)
> +           (arguments
> +            `(;; Opus Custom is an optional extension of the Opus
> +              ;; specification that allows for unsupported frame
> +              ;; sizes. Chromium requires that this is enabled.
> +              #:configure-flags '("--enable-custom-modes")
> +              ,@(package-arguments opus)))))
> +
> +;; Chromium since 58 depends on an unreleased libvpx. So, we
> +;; package the latest master branch as of 2018-01-07.
> +(define libvpx+experimental
> +  (package
> +    (inherit libvpx)
> +    (source (origin
> +              (method git-fetch)
> +              (uri (git-reference
> +                    (url "https://chromium.googlesource.com/webm/libvpx")
> +                    (commit "bed28a55f593efd3a71a3a9d05cf8bb25d15fa44")))
> +              (file-name "libvpx-for-chromium-checkout")
> +              (sha256
> +               (base32
> +                "0h01vmb8awzrb2xwqaz215v73yjdjf67hzdm2yfcz4h4qrvwf817"))=
))
> +    ;; TODO: Make libvpx configure flags overrideable.
> +    (arguments
> +     `(#:phases
> +       (modify-phases %standard-phases
> +         (replace 'configure
> +           (lambda* (#:key outputs #:allow-other-keys)
> +             (setenv "CONFIG_SHELL" (which "bash"))
> +             (let ((out (assoc-ref outputs "out")))
> +               (setenv "LDFLAGS"
> +                       (string-append "-Wl,-rpath=3D" out "/lib"))
> +               (zero? (system* "./configure"
> +                               "--enable-shared"
> +                               "--as=3Dyasm"
> +                               ;; Limit size to avoid CVE-2015-1258
> +                               "--size-limit=3D16384x16384"
> +                               ;; Spatial SVC is an experimental VP9 enc=
oder
> +                               ;; used by some packages (i.e. Chromium).
> +                               "--enable-experimental"
> +                               "--enable-spatial-svc"
> +                               (string-append "--prefix=3D" out)))))))
> +       #:tests? #f)))) ; No tests.
> +
> +(define %chromium-gn-bootstrap.patch
> +  (gentoo-patch "chromium-gn-bootstrap-r17.patch"
> +                "5c9cf110bd61fa287a5c536760b5d8ed13f65d52"
> +                "12wsq3bs46mvr7cinxvqjmbzymigm8yzf478r08y9l6sd3qij4yq"))
> +
> +(define %chromium-gcc-compat.patch
> +  (gentoo-patch "chromium-gcc5-r4.patch"
> +                "1c5423aab094796b3da7a2905f02cbdcdd6a7742"
> +                "18s152pkqzzw6grxj1m6mp3pc2x3ha2gyayw5hf2nhranak5wlkg"))
> +
> +(define %chromium-webkit-gcc-compat.patch
> +  (gentoo-patch "chromium-gcc5-r5.patch"
> +                "1c5423aab094796b3da7a2905f02cbdcdd6a7742"
> +                "0z7rggizzg85wfr8zhw0yfwd3q69lsh3yp297s939jgzp66cwwkw"))
> +
> +(define %chromium-webrtc-gcc-compat.patch
> +  (gentoo-patch "chromium-webrtc-r0.patch"
> +                "1c5423aab094796b3da7a2905f02cbdcdd6a7742"
> +                "0qj5b4w9kav51ylpdf38vm5w7p2gx4qp8p45vrfggp7miicg9cmw"))
> +
> +(define %chromium-system-nspr.patch
> +  (debian-patch "system/nspr.patch"
> +                "debian/63.0.3239.40-1"
> +                "07a0q3khz77gk0rxzp965pjzhly5r08k019pinss18xc1caj971s"))
> +
> +(define %chromium-system-libevent.patch
> +  (debian-patch "system/event.patch"
> +                "debian/63.0.3239.40-1"
> +                "0604ia06w40zn66d85in03xg3hd6144y8b222kzyc9nzhq3xm2pc"))
> +
> +(define %chromium-system-icu.patch
> +  (debian-patch "system/icu.patch"
> +                "debian/63.0.3239.40-1"
> +                "0kf77d8lyma3w0xpgfv2k0c741zp6ii08gzllfja6d5s59c15ylv"))
> +
> +(define %chromium-disable-api-keys-warning.patch
> +  (debian-patch "disable/google-api-warning.patch"
> +                "36794e57f1f97068640c6845dbeb9291155893c0"
> +                "11llghxm0a75kb8fnpy6ky8ix4f1kk7n0c0zfcpwxsx05pask11m"))
> +
> +(define %chromium-external-components.patch
> +  (debian-patch "disable/external-components.patch"
> +                "debian/63.0.3239.40-1"
> +                "1i3b801hjafxv7djk7cl7nj2skxid0vysf12yjr364db949f164l"))
> +
> +(define %chromium-duckduckgo.patch
> +  (inox-patch "0011-add-duckduckgo-search-engine.patch"
> +              "5af0e6187c22471b8cb803f6dda6738f23a530e7"
> +              "0p8x98g71ngkd3wbl5q36wrl18ff185sfrr5fcwjbgrv3v7r6ra7"))
> +
> +;; Don't start a "Login Wizard" at first launch.
> +(define %chromium-first-run.patch
> +  (inox-patch "0018-disable-first-run-behaviour.patch"
> +              "3336bb286ea054271ac2199cf374e96c64ed53cf"
> +              "1y4zsqqf2125jkb1phwy9g5hcbd9xhyv5lr4xcaly66rpdzx2ayb"))
> +
> +;; Use privacy-preserving defaults.
> +(define %chromium-default-preferences.patch
> +  (inox-patch "0006-modify-default-prefs.patch"
> +              "3336bb286ea054271ac2199cf374e96c64ed53cf"
> +              "1h8ycmn00yvciq3r5jcdqmsl4grqv8izgwi6a20kijz2baxxr888"))
> +
> +;; Recent versions of Chromium may load a remote search engine on the
> +;; New Tab Page, causing unnecessary and involuntary network traffic.
> +(define %chromium-restore-classic-ntp.patch
> +  (inox-patch "0008-restore-classic-ntp.patch"
> +              "2f60b788bff89bde11ac802d4c19093661cd23f7"
> +              "00icvb0r1p3s7i2xy8kv1lpam96cxgn6c3s9bc6wv3dpi3d722p2"))
> +
> +(define-public chromium
> +  (package
> +    (name "chromium")
> +    (version "63.0.3239.132")
> +    (synopsis "Graphical web browser")
> +    (source (origin
> +              (method url-fetch)
> +              (uri (string-append "https://commondatastorage.googleapis.=
com/"
> +                                  "chromium-browser-official/chromium-"
> +                                  version ".tar.xz"))
> +              (sha256
> +               (base32
> +                "139x3cbc5pa14x69493ic8i2ank12c9fwiq6pqm11aps88n6ri44"))
> +              (patches (list ;%chromium-gn-bootstrap.patch
> +                             %chromium-gcc-compat.patch
> +                             %chromium-webkit-gcc-compat.patch
> +                             %chromium-webrtc-gcc-compat.patch
> +                             %chromium-duckduckgo.patch
> +                             %chromium-default-preferences.patch
> +                             %chromium-first-run.patch
> +                             %chromium-restore-classic-ntp.patch
> +                             %chromium-system-icu.patch
> +                             %chromium-system-nspr.patch
> +                             %chromium-system-libevent.patch
> +                             %chromium-disable-api-keys-warning.patch))
> +              (modules '((srfi srfi-1)
> +                         (guix build utils)))
> +              (snippet
> +               '(begin
> +                  ;; Replace GN files from third_party with shims for bu=
ilding
> +                  ;; against system libraries.  Keep this list in sync w=
ith
> +                  ;; "build/linux/unbundle/replace_gn_files.py".
> +                  (for-each (lambda (pair)
> +                              (let ((source (string-append
> +                                             "build/linux/unbundle/" (ca=
r pair)))
> +                                    (dest (cdr pair)))
> +                                (copy-file source dest)))
> +                            (list
> +                             '("ffmpeg.gn" . "third_party/ffmpeg/BUILD.g=
n")
> +                             '("flac.gn" . "third_party/flac/BUILD.gn")
> +                             '("freetype.gn" . "third_party/freetype/BUI=
LD.gn")
> +                             ;; XXX: This broke in 63.
> +                             ;;'("harfbuzz-ng.gn" . "third_party/harfbuz=
z-ng/BUILD.gn")
> +                             '("icu.gn" . "third_party/icu/BUILD.gn")
> +                             '("libdrm.gn" . "third_party/libdrm/BUILD.g=
n")
> +                             '("libevent.gn" . "base/third_party/libeven=
t/BUILD.gn")
> +                             '("libjpeg.gn" .
> +                               "build/secondary/third_party/libjpeg_turb=
o/BUILD.gn")
> +                             '("libpng.gn" . "third_party/libpng/BUILD.g=
n")
> +                             '("libvpx.gn" . "third_party/libvpx/BUILD.g=
n")
> +                             '("libwebp.gn" . "third_party/libwebp/BUILD=
=2Egn")
> +                             ;;'("libxml.gn" . "third_party/libxml/BUILD=
=2Egn") ;TODO
> +                             '("libxslt.gn" . "third_party/libxslt/BUILD=
=2Egn")
> +                             '("openh264.gn" . "third_party/openh264/BUI=
LD.gn")
> +                             '("opus.gn" . "third_party/opus/BUILD.gn")
> +                             '("re2.gn" . "third_party/re2/BUILD.gn")
> +                             '("snappy.gn" . "third_party/snappy/BUILD.g=
n")
> +                             '("yasm.gn" . "third_party/yasm/yasm_assemb=
le.gni")
> +                             '("zlib.gn" . "third_party/zlib/BUILD.gn")))
> +                  #t))))
> +    (build-system gnu-build-system)
> +    (arguments
> +     `(#:tests? #f
> +       ;; FIXME: There is a "gn" option specifically for setting -rpath,=
 but
> +       ;; it's not recognized when passed.
> +       #:validate-runpath? #f
> +       #:modules ((srfi srfi-26)
> +                  (ice-9 ftw)
> +                  (ice-9 regex)
> +                  (guix build gnu-build-system)
> +                  (guix build utils))
> +       #:phases
> +       (modify-phases %standard-phases
> +         (add-after 'unpack 'remove-bundled-software
> +           (lambda _
> +             (let ((keep-libs
> +                    (list
> +                     ;; Third party folders that cannot be deleted yet.
> +                     "base/third_party/dmg_fp"
> +                     "base/third_party/dynamic_annotations"
> +                     "base/third_party/icu"
> +                     "base/third_party/libevent"
> +                     "base/third_party/nspr"
> +                     "base/third_party/superfasthash"
> +                     "base/third_party/symbolize" ; glog
> +                     "base/third_party/xdg_mime"
> +                     "base/third_party/xdg_user_dirs"
> +                     "buildtools/third_party/libc++"
> +                     "chrome/third_party/mozilla_security_manager"
> +                     "courgette/third_party"
> +                     "net/third_party/mozilla_security_manager"
> +                     "net/third_party/nss"
> +                     "third_party/adobe/flash/flapper_version.h"
> +                     ;; FIXME: This is used in:
> +                     ;; * ui/webui/resources/js/analytics.js
> +                     ;; * ui/file_manager/
> +                     "third_party/analytics"
> +                     "third_party/angle"
> +                     "third_party/angle/src/common/third_party/base"
> +                     "third_party/angle/src/common/third_party/smhasher"
> +                     "third_party/angle/src/third_party/compiler"
> +                     "third_party/angle/src/third_party/libXNVCtrl"
> +                     "third_party/angle/src/third_party/trace_event"
> +                     "third_party/blink"
> +                     "third_party/boringssl"
> +                     "third_party/breakpad"
> +                     "third_party/brotli"
> +                     "third_party/cacheinvalidation"
> +                     "third_party/catapult"
> +                     "third_party/catapult/common/py_vulcanize/third_par=
ty/rcssmin"
> +                     "third_party/catapult/common/py_vulcanize/third_par=
ty/rjsmin"
> +                     "third_party/catapult/third_party/polymer"
> +                     "third_party/catapult/tracing/third_party/d3"
> +                     "third_party/catapult/tracing/third_party/gl-matrix"
> +                     "third_party/catapult/tracing/third_party/jszip"
> +                     "third_party/catapult/tracing/third_party/mannwhitn=
eyu"
> +                     "third_party/catapult/tracing/third_party/oboe"
> +                     "third_party/catapult/tracing/third_party/pako"
> +                     "third_party/ced"
> +                     "third_party/cld_3"
> +                     "third_party/crc32c"
> +                     "third_party/cros_system_api"
> +                     "third_party/dom_distiller_js"
> +                     "third_party/fips181"
> +                     "third_party/flatbuffers"
> +                     ;; XXX Needed by pdfium since 59.
> +                     "third_party/freetype"
> +                     "third_party/glslang-angle"
> +                     "third_party/google_input_tools"
> +                     "third_party/google_input_tools/third_party/closure=
_library"
> +                     (string-append "third_party/google_input_tools/thir=
d_party"
> +                                    "/closure_library/third_party/closur=
e")
> +                     "third_party/googletest"
> +                     "third_party/harfbuzz-ng" ;XXX why is this required=
 in 63+
> +                     "third_party/hunspell"
> +                     "third_party/iccjpeg"
> +                     "third_party/inspector_protocol"
> +                     "third_party/jinja2"
> +                     "third_party/jstemplate"
> +                     "third_party/khronos"
> +                     "third_party/leveldatabase"
> +                     "third_party/libXNVCtrl"
> +                     "third_party/libaddressinput"
> +                     "third_party/libjingle_xmpp"
> +                     "third_party/libphonenumber"
> +                     "third_party/libsecret" ;FIXME: needs pkg-config su=
pport.
> +                     "third_party/libsrtp"   ;TODO: Requires libsrtp@2.
> +                     "third_party/libudev"
> +                     "third_party/libwebm"
> +                     "third_party/libxml" ;FIXME: Unbundle (again).
> +                     "third_party/libyuv"
> +                     "third_party/lss"
> +                     "third_party/lzma_sdk"
> +                     "third_party/markupsafe"
> +                     "third_party/mesa"
> +                     "third_party/modp_b64"
> +                     "third_party/mt19937ar"
> +                     "third_party/node"
> +                     "third_party/node/node_modules/polymer-bundler/lib/=
third_party/UglifyJS2"
> +                     "third_party/openmax_dl"
> +                     "third_party/ots"
> +                     "third_party/pdfium"
> +                     "third_party/pdfium/third_party"
> +                     "third_party/ply"
> +                     "third_party/polymer"
> +                     "third_party/protobuf"
> +                     "third_party/protobuf/third_party/six"
> +                     "third_party/qcms"
> +                     "third_party/sfntly"
> +                     "third_party/skia"
> +                     "third_party/skia/third_party/vulkan"
> +                     "third_party/skia/third_party/gif"
> +                     "third_party/smhasher"
> +                     "third_party/speech-dispatcher"
> +                     "third_party/spirv-headers"
> +                     "third_party/spirv-tools-angle"
> +                     "third_party/sqlite"
> +                     "third_party/swiftshader"
> +                     "third_party/swiftshader/third_party"
> +                     "third_party/usb_ids"
> +                     "third_party/usrsctp"
> +                     "third_party/vulkan"
> +                     "third_party/vulkan-validation-layers"
> +                     "third_party/WebKit"
> +                     "third_party/web-animations-js"
> +                     "third_party/webrtc"
> +                     "third_party/widevine/cdm/widevine_cdm_version.h"
> +                     "third_party/widevine/cdm/widevine_cdm_common.h"
> +                     "third_party/woff2"
> +                     "third_party/xdg-utils"
> +                     "third_party/yasm/run_yasm.py"
> +                     "third_party/zlib/google"
> +                     "url/third_party/mozilla"
> +                     "v8/src/third_party/valgrind"
> +                     "v8/third_party/inspector_protocol")))
> +               ;; FIXME: implement as source snippet. This traverses
> +               ;; any "third_party" directory and deletes files that are:
> +               ;; * not ending with ".gn" or ".gni"; or
> +               ;; * not explicitly named as argument (folder or file).
> +               (zero? (apply system* "python"
> +                             "build/linux/unbundle/remove_bundled_librar=
ies.py"
> +                             "--do-remove" keep-libs)))))
> +         (add-after 'remove-bundled-software 'patch-stuff
> +           (lambda* (#:key inputs #:allow-other-keys)
> +             (substitute* "printing/cups_config_helper.py"
> +               (("cups_config =3D.*")
> +                (string-append "cups_config =3D '" (assoc-ref inputs "cu=
ps")
> +                               "/bin/cups-config'\n")))
> +
> +             (substitute*
> +                 '("base/process/launch_posix.cc"
> +                   "base/third_party/dynamic_annotations/dynamic_annotat=
ions.c"
> +                   "sandbox/linux/seccomp-bpf/sandbox_bpf.cc"
> +                   "sandbox/linux/services/credentials.cc"
> +                   "sandbox/linux/services/namespace_utils.cc"
> +                   "sandbox/linux/services/syscall_wrappers.cc"
> +                   "sandbox/linux/syscall_broker/broker_host.cc")
> +               (("include \"base/third_party/valgrind/") "include \"valg=
rind/"))
> +
> +             (for-each (lambda (file)
> +                         (substitute* file
> +                           ;; Fix opus include path.
> +                           ;; Do not substitute opus_private.h.
> +                           (("#include \"opus\\.h\"")
> +                            "#include \"opus/opus.h\"")
> +                           (("#include \"opus_custom\\.h\"")
> +                            "#include \"opus/opus_custom.h\"")
> +                           (("#include \"opus_defines\\.h\"")
> +                            "#include \"opus/opus_defines.h\"")
> +                           (("#include \"opus_multistream\\.h\"")
> +                            "#include \"opus/opus_multistream.h\"")
> +                           (("#include \"opus_types\\.h\"")
> +                            "#include \"opus/opus_types.h\"")))
> +                       (append (find-files "third_party/opus/src/celt")
> +                               (find-files "third_party/opus/src/src")
> +                               (find-files (string-append "third_party/w=
ebrtc/modules"
> +                                                          "/audio_coding=
/codecs/opus"))))
> +
> +             (substitute* "chrome/common/chrome_paths.cc"
> +               (("/usr/share/chromium/extensions")
> +                ;; TODO: Add ~/.guix-profile.
> +                "/run/current-system/profile/share/chromium/extensions"))
> +
> +             (substitute*
> +                 "third_party/breakpad/breakpad/src/common/linux/libcurl=
_wrapper.h"
> +               (("include \"third_party/curl") "include \"curl"))
> +             (substitute* "media/base/decode_capabilities.cc"
> +               (("third_party/libvpx/source/libvpx/") ""))
> +
> +             ;; We don't cross compile most packages, so get rid of the
> +             ;; unnecessary ARCH-linux-gnu* prefix.
> +             (substitute* "build/toolchain/linux/BUILD.gn"
> +               (("aarch64-linux-gnu-") "")
> +               (("arm-linux-gnueabihf-") ""))
> +             #t))
> +         (replace 'configure
> +           (lambda* (#:key inputs outputs #:allow-other-keys)
> +             (let ((gn-flags
> +                    (list
> +                     ;; See tools/gn/docs/cookbook.md and
> +                     ;; https://www.chromium.org/developers/gn-build-con=
figuration
> +                     ;; for usage. Run "./gn args . --list" in the Relea=
se
> +                     ;; directory for an exhaustive list of supported fl=
ags.
> +                     "is_debug=3Dfalse"
> +                     "is_official_build=3Dfalse"
> +                     "is_clang=3Dfalse"
> +                     "use_gold=3Dfalse"
> +                     "linux_use_bundled_binutils=3Dfalse"
> +                     "use_custom_libcxx=3Dfalse"
> +                     "use_sysroot=3Dfalse"
> +                     "goma_dir=3D\"\""
> +                     "enable_precompiled_headers=3Dfalse"
> +                     "use_jumbo_build=3Dtrue"        ;speeds up build
> +                     ;; Use a deterministic version identifier.
> +                     "override_build_date=3D\"01 01 2000 05:00:00\""
> +                     "use_unofficial_version_number=3Dfalse"
> +                     ;; Disable debugging features to save space.
> +                     "remove_webcore_debug_symbols=3Dtrue"
> +                     "enable_iterator_debugging=3Dfalse"
> +                     ;; Don't fail when using deprecated ffmpeg features.
> +                     "treat_warnings_as_errors=3Dfalse"
> +                     "enable_nacl=3Dfalse"
> +                     "enable_nacl_nonsfi=3Dfalse"
> +                     "use_allocator=3D\"none\""     ;don't use tcmalloc
> +                     ;; Don't add any API keys. End users can set them i=
n the
> +                     ;; environment if necessary.
> +                     ;; https://www.chromium.org/developers/how-tos/api-=
keys
> +                     "use_official_google_api_keys=3Dfalse"
> +                     ;; Disable "field trials".
> +                     "fieldtrial_testing_like_official_build=3Dtrue"
> +
> +                     "use_system_freetype=3Dtrue"
> +                     ;; FIXME: Try enabling this for 63+.
> +                     ;;"use_system_harfbuzz=3Dtrue"
> +                     "use_system_libjpeg=3Dtrue"
> +                     "use_system_lcms2=3Dtrue"
> +                     "use_system_zlib=3Dtrue"
> +                     ;; This is currently not supported on Linux:
> +                     ;; https://bugs.chromium.org/p/chromium/issues/deta=
il?id=3D22208
> +                     ;; "use_system_sqlite=3Dtrue"
> +                     "use_gconf=3Dfalse"         ; deprecated by gsettin=
gs
> +                     "use_gnome_keyring=3Dfalse" ; deprecated by libsecr=
et
> +                     "use_gtk3=3Dtrue"
> +                     "use_openh264=3Dtrue"
> +                     "use_xkbcommon=3Dtrue"
> +                     "link_pulseaudio=3Dtrue"
> +
> +                     ;; Don't arbitrarily restrict formats supported by =
system ffmpeg.
> +                     "proprietary_codecs=3Dtrue"
> +                     "ffmpeg_branding=3D\"Chrome\""
> +
> +                     ;; WebRTC stuff.
> +                     "rtc_use_h264=3Dtrue"
> +                     ;; Don't use bundled sources.
> +                     "rtc_build_json=3Dfalse"
> +                     "rtc_build_libevent=3Dfalse"
> +                     "rtc_build_libvpx=3Dfalse"
> +                     "rtc_build_opus=3Dfalse"
> +                     "rtc_build_ssl=3Dfalse"
> +                     ;; TODO: Package these.
> +                     "rtc_build_libsrtp=3Dtrue" ; 2.0
> +                     "rtc_build_libyuv=3Dtrue"
> +                     "rtc_build_openmax_dl=3Dtrue"
> +                     "rtc_build_usrsctp=3Dtrue"
> +                     (string-append "rtc_jsoncpp_root=3D\""
> +                                    (assoc-ref inputs "jsoncpp")
> +                                    "/include/jsoncpp/json\"")
> +                     (string-append "rtc_ssl_root=3D\""
> +                                    (assoc-ref inputs "openssl")
> +                                    "/include/openssl\""))))
> +
> +               ;; XXX: How portable is this.
> +               (mkdir-p "third_party/node/linux/node-linux-x64")
> +               (symlink (string-append (assoc-ref inputs "node") "/bin")
> +                        "third_party/node/linux/node-linux-x64/bin")
> +
> +               (setenv "CC" "gcc")
> +               (setenv "CXX" "g++")
> +               ;; TODO: pre-compile instead. Avoids a race condition.
> +               (setenv "PYTHONDONTWRITEBYTECODE" "1")
> +               (and
> +                ;; Build the "gn" tool.
> +                (zero? (system* "python"
> +                                "tools/gn/bootstrap/bootstrap.py" "-s" "=
-v"))
> +                ;; Generate ninja build files.
> +                (zero? (system* "./out/Release/gn" "gen" "out/Release"
> +                                (string-append "--args=3D"
> +                                               (string-join gn-flags " "=
))))))))
> +         (replace 'build
> +           (lambda* (#:key outputs #:allow-other-keys)
> +             (zero? (system* "ninja" "-C" "out/Release"
> +                             "-j" (number->string (parallel-job-count))
> +                             "chrome"))))
> +         (replace 'install
> +           (lambda* (#:key inputs outputs #:allow-other-keys)
> +             (let* ((out            (assoc-ref outputs "out"))
> +                    (bin            (string-append out "/bin"))
> +                    (exe            (string-append bin "/chromium"))
> +                    (lib            (string-append out "/lib"))
> +                    (man            (string-append out "/share/man/man1"=
))
> +                    (applications   (string-append out "/share/applicati=
ons"))
> +                    (install-regexp (make-regexp "\\.(bin|pak)$"))
> +                    (locales        (string-append lib "/locales"))
> +                    (resources      (string-append lib "/resources"))
> +                    (gtk+           (assoc-ref inputs "gtk+"))
> +                    (mesa           (assoc-ref inputs "mesa"))
> +                    (nss            (assoc-ref inputs "nss"))
> +                    (udev           (assoc-ref inputs "udev"))
> +                    (sh             (which "sh")))
> +
> +               (substitute* '("chrome/app/resources/manpage.1.in"
> +                              "chrome/installer/linux/common/desktop.tem=
plate")
> +                 (("@@MENUNAME@@") "Chromium")
> +                 (("@@PACKAGE@@") "chromium")
> +                 (("/usr/bin/@@USR_BIN_SYMLINK_NAME@@") exe))
> +               (mkdir-p man)
> +               (copy-file "chrome/app/resources/manpage.1.in"
> +                          (string-append man "/chromium.1"))
> +               (mkdir-p applications)
> +               (copy-file "chrome/installer/linux/common/desktop.templat=
e"
> +                          (string-append applications "/chromium.desktop=
"))
> +
> +               (with-directory-excursion "out/Release"
> +                 (for-each (lambda (file)
> +                             (install-file file lib))
> +                           (scandir "." (cut regexp-exec install-regexp =
<>)))
> +                 (copy-file "chrome" (string-append lib "/chromium"))
> +
> +                 ;; TODO: Install icons from "../../chrome/app/themes" i=
nto
> +                 ;; "out/share/icons/hicolor/$size".
> +                 (install-file
> +                  "product_logo_48.png"
> +                  (string-append out "/share/icons/48x48/chromium.png"))
> +
> +                 (copy-recursively "locales" locales)
> +                 (copy-recursively "resources" resources)
> +
> +                 (mkdir-p bin)
> +                 ;; Add a thin wrapper to prevent the user from inadvert=
ently
> +                 ;; installing non-free software through the Web Store.
> +                 ;; TODO: Discover extensions from the profile and pass
> +                 ;; something like "--disable-extensions-except=3D...".
> +                 (call-with-output-file exe
> +                   (lambda (port)
> +                     (format port
> +                             "#!~a~@
> +                             if [ -z \"$CHROMIUM_ENABLE_WEB_STORE\" ]~@
> +                             then~@
> +                               CHROMIUM_FLAGS=3D\" \\~@
> +                                 --disable-background-networking \\~@
> +                                 --disable-extensions \\~@
> +                               \"~@
> +                             fi~@
> +                             exec ~a $CHROMIUM_FLAGS \"$@\"~%"
> +                             sh (string-append lib "/chromium"))))
> +                 (chmod exe #o755)
> +
> +                 (wrap-program exe
> +                   ;; TODO: Get these in RUNPATH.
> +                   `("LD_LIBRARY_PATH" ":" prefix
> +                     (,(string-append lib ":" nss "/lib/nss:" gtk+ "/lib=
:"
> +                                      mesa "/lib:" udev "/lib")))
> +                   ;; Avoid file manager crash. See <https://bugs.gnu.or=
g/26593>.
> +                   `("XDG_DATA_DIRS" ":" prefix (,(string-append gtk+ "/=
share"))))
> +                 #t)))))))
> +    (native-inputs
> +     `(("bison" ,bison)
> +       ("git" ,git)                     ;last_commit_position.py
> +       ("gperf" ,gperf)
> +       ("ninja" ,ninja)
> +       ("node" ,node)
> +       ("pkg-config" ,pkg-config)
> +       ("which" ,which)
> +       ("yasm" ,yasm)
> +
> +       ("python-beautifulsoup4" ,python2-beautifulsoup4)
> +       ("python-html5lib" ,python2-html5lib)
> +       ("python" ,python-2)))
> +    (inputs
> +     `(("alsa-lib" ,alsa-lib)
> +       ("atk" ,atk)
> +       ("cups" ,cups)
> +       ("curl" ,curl)
> +       ("dbus" ,dbus)
> +       ("dbus-glib" ,dbus-glib)
> +       ("expat" ,expat)
> +       ("flac" ,flac)
> +       ("ffmpeg" ,ffmpeg)
> +       ("fontconfig" ,fontconfig)
> +       ("freetype" ,freetype)
> +       ("gdk-pixbuf" ,gdk-pixbuf)
> +       ("glib" ,glib)
> +       ("gtk+-2" ,gtk+-2)
> +       ("gtk+" ,gtk+)
> +       ("harfbuzz" ,harfbuzz)
> +       ("icu4c" ,icu4c-59.1)
> +       ("jsoncpp" ,jsoncpp)
> +       ("lcms" ,lcms)
> +       ("libevent" ,libevent)
> +       ("libffi" ,libffi)
> +       ("libjpeg-turbo" ,libjpeg-turbo)
> +       ("libpng" ,libpng)
> +       ("libusb" ,libusb)
> +       ("libvpx" ,libvpx+experimental)
> +       ("libwebp" ,libwebp)
> +       ("libx11" ,libx11)
> +       ("libxcb" ,libxcb)
> +       ("libxcomposite" ,libxcomposite)
> +       ("libxcursor" ,libxcursor)
> +       ("libxdamage" ,libxdamage)
> +       ("libxext" ,libxext)
> +       ("libxfixes" ,libxfixes)
> +       ("libxi" ,libxi)
> +       ("libxkbcommon" ,libxkbcommon)
> +       ("libxml2" ,libxml2)
> +       ("libxrandr" ,libxrandr)
> +       ("libxrender" ,libxrender)
> +       ("libxscrnsaver" ,libxscrnsaver)
> +       ("libxslt" ,libxslt)
> +       ("libxtst" ,libxtst)
> +       ("mesa" ,mesa)
> +       ("minizip" ,minizip)
> +       ("mit-krb5" ,mit-krb5)
> +       ("nss" ,nss)
> +       ("openh264" ,openh264)
> +       ("openssl" ,openssl)
> +       ("opus" ,opus+custom)
> +       ("pango" ,pango)
> +       ("pciutils" ,pciutils)
> +       ("protobuf" ,protobuf)
> +       ("pulseaudio" ,pulseaudio)
> +       ("re2" ,re2)
> +       ("snappy" ,snappy)
> +       ("speech-dispatcher" ,speech-dispatcher)
> +       ("sqlite" ,sqlite)
> +       ("udev" ,eudev)
> +       ("valgrind" ,valgrind)))
> +    (home-page "https://www.chromium.org/")
> +    (description
> +     "Chromium is a web browser using the @code{Blink} rendering engine.=
")
> +    ;; Chromium is developed as BSD-3, but bundles a large number of thi=
rd-party
> +    ;; software with other licenses. For full information, see chrome://=
credits.
> +    (license (list license:bsd-3
> +                   license:bsd-2
> +                   license:expat
> +                   license:asl2.0
> +                   license:mpl2.0
> +                   license:public-domain
> +                   license:lgpl2.1+))))
> --=20
> 2.15.1
>=20


Many thanks for your ongoing work with this (and the patience :))
As this is 63, you you are keeping track of Debian, right? I tried
to package 64 a couple of days ago because I wanted the workaround
for some of the recent security clusterfucks, but Debian is still
on 63 :/
I hope they'll update their patchset soon.

--=20
GnuPG: A88C8ADD129828D7EAC02E52E22F9BBFEE348588
GnuPG: https://c.n0.is/ng0_pubkeys/tree/keys
  WWW: https://n0.is/a/  ::  https://ea.n0.is

--iszsxhleyobozczu
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQIzBAABCgAdFiEEqIyK3RKYKNfqwC5S4i+bv+40hYgFAlpT/MoACgkQ4i+bv+40
hYjbrQ//Zjn3rfUb3Q59OwOO0JE2rGEzFxTF3jCDI3vqiZSIMNcadFVh9bqovElj
kyJSMznAPMt/tysticouvpO4nOe8mnPT15E6+LbYfHM1RIEvp/wlliUQhgGVbPQZ
YA/Jn8PNpJmibh8EKVFzqvYH4eYZ7RvRChqPDpaDKTZpl6qjIwHe9lAzX+N8nky/
oSS3d+qYq1f8j3UzhbP/3qGHxkHS+mD/ee0NqrMd8kaQ4jUJ2cZFAlzuWrszaefF
gSXw+hTPuXlv0lqGQEV9AFg5nrk86n3o1cNjfAIZpsbC3pZGnJ6mlnzlvdn/wLAm
CZ7oeQStZEbvQcFAfsdc5IefZubMSLo+D5ha0toeQpBslmfzORep+3l/6ubN2Dgn
q0lidy4mr6YWyTfzoMnBJFnkWyGUnUs8lxXwcizhT719pWNcTmxvgA6LRqIYZbhV
ujIFb+VkzcuQw3wsm8Tn7+K8mFuKNS2rwQGKeuuo73IrvPAki4HylxpSJ5rpK2Rk
kQTt78OaJbYpB1MfbarIknDJxmMBrLLX8emTwrhZk8BDKcn2WxRE6DT9a5V5Urw1
oBkOLQBT56nyRzRvPEFG5Uvi9uZUZzpJDnALKpU2Of0DE9GUuDWaXWNxcqyB7trc
hf87C7YW4EbVE58uksIx2EZUX/QVTgNrOJVQHwM4WyQJSCDNu6M=
=Lewy
-----END PGP SIGNATURE-----

--iszsxhleyobozczu--




Information forwarded to guix-patches@HIDDEN:
bug#28004; Package guix-patches. Full text available.

Message received at 28004 <at> debbugs.gnu.org:


Received: (at 28004) by debbugs.gnu.org; 8 Jan 2018 21:56:46 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon Jan 08 16:56:46 2018
Received: from localhost ([127.0.0.1]:41818 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1eYfPG-0000eN-Rm
	for submit <at> debbugs.gnu.org; Mon, 08 Jan 2018 16:56:44 -0500
Received: from out3-smtp.messagingengine.com ([66.111.4.27]:54459)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <mbakke@HIDDEN>) id 1eYfPB-0000eB-Jj
 for 28004 <at> debbugs.gnu.org; Mon, 08 Jan 2018 16:56:33 -0500
Received: from compute5.internal (compute5.nyi.internal [10.202.2.45])
 by mailout.nyi.internal (Postfix) with ESMTP id 1ED8720DCC;
 Mon,  8 Jan 2018 16:56:29 -0500 (EST)
Received: from frontend2 ([10.202.2.161])
 by compute5.internal (MEProxy); Mon, 08 Jan 2018 16:56:29 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=fastmail.com; h=
 cc:content-type:date:from:in-reply-to:message-id:mime-version
 :references:subject:to:x-me-sender:x-me-sender:x-sasl-enc; s=
 fm1; bh=D7CEKLBIO7ehVEO6ITsejBvNEDqC59NMK28C6HmL2Jo=; b=xr/BJcSs
 8c8WjwU9nWDiNseUzTqwpyb5IAR4m7tO+sk2PbrC0vIhpdXkTFmQ//XUa5MJeilT
 1bh/3JPU4tV8VBComs0OThcg91lEegdAPV8AXtxktfJrtRUQ4OfYdUr4mONPixMh
 HkOthVMFYEY7Z80aJtQLdKnmGD0y4rx+UmhApNViWXl8PqnecR42u5OSQ+Ot87dl
 3MahriPNoQ1mSFICosqu6lgQCM7mbSUxI67Qxeh5ytyoTwWfHEetdf2iS9x2Sqlb
 pV+DAZNilJY0DMcNMhzT4Ekkw9ZsIqux+8OwYwrdDkfihpuez2PrbGqEreNyn2V8
 NEiHgSxAcu/VTg==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
 messagingengine.com; h=cc:content-type:date:from:in-reply-to
 :message-id:mime-version:references:subject:to:x-me-sender
 :x-me-sender:x-sasl-enc; s=fm1; bh=D7CEKLBIO7ehVEO6ITsejBvNEDqC5
 9NMK28C6HmL2Jo=; b=TXQPDeIhFak0VhGlZHGxQy3xPCK4xOAiP8/L2DTH+iSrC
 CCvlQh7FsjaWAMHi6HDV0/AVk1habA7F1jcXAdpXZzH1pxz4OK22dzfcd0Y9GeL0
 44ewM7FY1cb6RnReQ531dBFEHfEwtWFpI3IP97jPZfGNJkIYKo74fGNKtB0TSs3T
 nFrmHULLWzCbB8MsPwIZpEQX8ofNkvi37U0DBU5yo2Xbu/nHUkifPecFiuYgI7/7
 ZVcvM5SkEtyVjB7hGBCgYjm6T04j9kX0iv7rayJjqXdt3j7awcvA2Jqa6t4Z80UD
 dj2eyYxB6TyXFuxLZr6YPFeqRAKFdJwbAPDHHt4eg==
X-ME-Sender: <xms:DOlTWgQZA1hHOnwtX2-3MgvpbeO8dVMqmIaiPIbIg32XCehJjHtenw>
Received: from localhost (cm-84.214.173.174.getinternet.no [84.214.173.174])
 by mail.messagingengine.com (Postfix) with ESMTPA id 61117247FC;
 Mon,  8 Jan 2018 16:56:28 -0500 (EST)
From: Marius Bakke <mbakke@HIDDEN>
To: ng0 <ng0@HIDDEN>
Subject: Re: [bug#28004] Chromium
In-Reply-To: <20180104191648.custe7w3l57fvbac@abyayala>
References: <87y3qvb15k.fsf@HIDDEN>
 <20171010131949.y43plpzxbppvrigr@abyayala> <87lgkha2cx.fsf@HIDDEN>
 <20171012195628.GA31843@HIDDEN> <87shensfq6.fsf@HIDDEN>
 <87o9p45bb6.fsf@HIDDEN> <20180104191648.custe7w3l57fvbac@abyayala>
User-Agent: Notmuch/0.25.3 (https://notmuchmail.org) Emacs/25.3.1
 (x86_64-pc-linux-gnu)
Date: Mon, 08 Jan 2018 22:56:26 +0100
Message-ID: <87wp0s2ewl.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: multipart/signed; boundary="==-=-=";
 micalg=pgp-sha512; protocol="application/pgp-signature"
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 28004
Cc: 28004 <at> debbugs.gnu.org, Ludovic =?utf-8?Q?Court=C3=A8s?= <ludo@HIDDEN>,
 ng0 <ng0@HIDDEN>, Leo Famulari <leo@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: 0.0 (/)

--==-=-=
Content-Type: multipart/mixed; boundary="=-=-="

--=-=-=
Content-Type: text/plain

ng0 <ng0@HIDDEN> writes:

>> +             (substitute* "chrome/common/chrome_paths.cc"
>> +               (("/usr/share/chromium/extensions")
>> +                ;; TODO: Add ~/.guix-profile.
>> +                "/run/current-system/profile/share/chromium/extensions"))
>
> What's the idea behind this? Did you test it? Do you have any guix build-system
> using Chromium extensions as an example? So far this completely disables the
> installation of any plugins and addons.

The idea is to eventually be able to distribute extensions with Guix.  I
added this path mostly to document it, but don't see how keeping the
default makes a difference.  If you can place an extension in
/usr/share, you can also copy it to the system profile through your
config.scm, or symlink this location on a foreign distribution.

>> +                 (mkdir-p bin)
>> +                 ;; Add a thin wrapper to prevent the user from inadvertently
>> +                 ;; installing non-free software through the Web Store.
>> +                 ;; TODO: Discover extensions from the profile and pass
>> +                 ;; something like "--disable-extensions-except=...".
>
> Same question here.

The Web Store has serious freedom issues, thus we can not enable it by
default.  Enabling it *must* be a conscious choice by the end user.

The TODO here is inspired by Debians wrapper script, which enumerates
the location where apt places extensions, and gives that list to
"--disable-extensions-except".

> If you need help, there's at least 3 users of Chromium now. I'd like to read
> your ideas on how to solve the TODOs, aswell as: Do you have any unpushed
> progress? Maybe we can team collaborate on this huge browser.

I do maintain this patch, but unfortunately not in a public repository.
I've attached the latest iteration here (sorry for squashed).

New since the last time are some fixes from the "Inox patchset" that
resolves most of the privacy issues.  Namely removing the "login
wizard", changing to sensible defaults, and forcing the "classic" New
Tab Page that does not load a search engine.

Also, all patches have been moved to remote origins.

Testing and feedback welcome!

Currently there are two "important" (blocking?) TODOs left:

* Move the 'delete-bundled-software' phase to a source snippet.
  Repacking the ~500MiB compressed tarball is *really* expensive.  It
  should also aid the licensing situation.
* Delete the two default entries from the "most used" list on the New
  Tab page.  The first run will download thumbnails for these sites,
  leaking data.  One of them also leads to the disabled-by-default
  store, promoting non-free software.

I'm optimistic that fixing the second item will make the browser not
leak *any* data at launch with the default configuration.  Which leads
to a third item: writing a system test that verifies that launching
Chromium does indeed not initiate any network traffic.

Anyway, here is the latest patch:


--=-=-=
Content-Type: text/x-patch; charset=utf-8
Content-Disposition: attachment; filename=0001-gnu-Add-chromium.patch
Content-Transfer-Encoding: quoted-printable

From=20f813b2d7ec0728a906720fa74bf9f442af6ab10d Mon Sep 17 00:00:00 2001
From: Marius Bakke <mbakke@HIDDEN>
Date: Wed, 12 Oct 2016 17:25:05 +0100
Subject: [PATCH] gnu: Add chromium.

* gnu/packages/chromium.scm: New file.
* gnu/local.mk: Record it.
=2D--
 gnu/local.mk              |   1 +
 gnu/packages/chromium.scm | 733 ++++++++++++++++++++++++++++++++++++++++++=
++++
 2 files changed, 734 insertions(+)
 create mode 100644 gnu/packages/chromium.scm

diff --git a/gnu/local.mk b/gnu/local.mk
index d4e841921..529fdd2be 100644
=2D-- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -89,6 +89,7 @@ GNU_SYSTEM_MODULES =3D				\
   %D%/packages/check.scm			\
   %D%/packages/chemistry.scm			\
   %D%/packages/chez.scm				\
+  %D%/packages/chromium.scm			\
   %D%/packages/ci.scm				\
   %D%/packages/cinnamon.scm			\
   %D%/packages/cmake.scm			\
diff --git a/gnu/packages/chromium.scm b/gnu/packages/chromium.scm
new file mode 100644
index 000000000..78cfb3097
=2D-- /dev/null
+++ b/gnu/packages/chromium.scm
@@ -0,0 +1,733 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright =C2=A9 2016, 2017 Marius Bakke <mbakke@HIDDEN>
+;;;
+;;; This file is part of GNU Guix.
+;;;
+;;; GNU Guix is free software; you can redistribute it and/or modify it
+;;; under the terms of the GNU General Public License as published by
+;;; the Free Software Foundation; either version 3 of the License, or (at
+;;; your option) any later version.
+;;;
+;;; GNU Guix is distributed in the hope that it will be useful, but
+;;; WITHOUT ANY WARRANTY; without even the implied warranty of
+;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+;;; GNU General Public License for more details.
+;;;
+;;; You should have received a copy of the GNU General Public License
+;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
+
+(define-module (gnu packages chromium)
+  #:use-module ((guix licenses) #:prefix license:)
+  #:use-module (guix packages)
+  #:use-module (guix download)
+  #:use-module (guix git-download)
+  #:use-module (guix utils)
+  #:use-module (guix build-system gnu)
+  #:use-module (gnu packages)
+  #:use-module (gnu packages assembly)
+  #:use-module (gnu packages base)
+  #:use-module (gnu packages bison)
+  #:use-module (gnu packages compression)
+  #:use-module (gnu packages cups)
+  #:use-module (gnu packages curl)
+  #:use-module (gnu packages databases)
+  #:use-module (gnu packages fontutils)
+  #:use-module (gnu packages ghostscript)
+  #:use-module (gnu packages gl)
+  #:use-module (gnu packages glib)
+  #:use-module (gnu packages gnome)
+  #:use-module (gnu packages gnuzilla)
+  #:use-module (gnu packages gperf)
+  #:use-module (gnu packages gtk)
+  #:use-module (gnu packages icu4c)
+  #:use-module (gnu packages image)
+  #:use-module (gnu packages libevent)
+  #:use-module (gnu packages libffi)
+  #:use-module (gnu packages libusb)
+  #:use-module (gnu packages linux)
+  #:use-module (gnu packages kerberos)
+  #:use-module (gnu packages ninja)
+  #:use-module (gnu packages node)
+  #:use-module (gnu packages pciutils)
+  #:use-module (gnu packages photo)
+  #:use-module (gnu packages pkg-config)
+  #:use-module (gnu packages protobuf)
+  #:use-module (gnu packages pulseaudio)
+  #:use-module (gnu packages python)
+  #:use-module (gnu packages python-web)
+  #:use-module (gnu packages regex)
+  #:use-module (gnu packages serialization)
+  #:use-module (gnu packages speech)
+  #:use-module (gnu packages tls)
+  #:use-module (gnu packages valgrind)
+  #:use-module (gnu packages version-control)
+  #:use-module (gnu packages video)
+  #:use-module (gnu packages xiph)
+  #:use-module (gnu packages xml)
+  #:use-module (gnu packages xdisorg)
+  #:use-module (gnu packages xorg))
+
+(define (strip-directory-prefix pathspec)
+  "Return everything after the last '/' in PATHSPEC."
+  (let ((index (string-rindex pathspec #\/)))
+    (if index (string-drop pathspec (+ 1 index))
+        pathspec)))
+
+(define (chromium-patch-file-name pathspec)
+  (let ((patch-name (strip-directory-prefix pathspec)))
+    (if (string-prefix? "chromium-" patch-name)
+        patch-name
+        (string-append "chromium-" patch-name))))
+
+;; https://anonscm.debian.org/cgit/pkg-chromium/pkg-chromium.git/tree/debi=
an/patches
+(define (debian-patch pathspec revision hash)
+  (origin
+    (method url-fetch)
+    (uri (string-append
+          "https://anonscm.debian.org/cgit/pkg-chromium/pkg-chromium.git"
+          "/plain/debian/patches/" pathspec "?id=3D" revision))
+    (sha256 (base32 hash))
+    (file-name (chromium-patch-file-name pathspec))))
+
+;; https://gitweb.gentoo.org/repo/gentoo.git/tree/www-client/chromium/files
+(define (gentoo-patch pathspec revision hash)
+  (origin
+    (method url-fetch)
+    (uri (string-append
+          "https://gitweb.gentoo.org/repo/gentoo.git/plain/www-client"
+          "/chromium/files/" pathspec "?id=3D" revision))
+    (sha256 (base32 hash))
+    (file-name (chromium-patch-file-name pathspec))))
+
+;; https://github.com/gcarq/inox-patchset
+(define (inox-patch pathspec revision hash)
+  (origin
+    (method url-fetch)
+    (uri (string-append "https://raw.githubusercontent.com/gcarq/inox-patc=
hset/"
+                        revision "/" pathspec))
+    (sha256 (base32 hash))
+    (file-name (chromium-patch-file-name pathspec))))
+
+(define opus+custom
+  (package (inherit opus)
+           (arguments
+            `(;; Opus Custom is an optional extension of the Opus
+              ;; specification that allows for unsupported frame
+              ;; sizes. Chromium requires that this is enabled.
+              #:configure-flags '("--enable-custom-modes")
+              ,@(package-arguments opus)))))
+
+;; Chromium since 58 depends on an unreleased libvpx. So, we
+;; package the latest master branch as of 2018-01-07.
+(define libvpx+experimental
+  (package
+    (inherit libvpx)
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://chromium.googlesource.com/webm/libvpx")
+                    (commit "bed28a55f593efd3a71a3a9d05cf8bb25d15fa44")))
+              (file-name "libvpx-for-chromium-checkout")
+              (sha256
+               (base32
+                "0h01vmb8awzrb2xwqaz215v73yjdjf67hzdm2yfcz4h4qrvwf817"))))
+    ;; TODO: Make libvpx configure flags overrideable.
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (replace 'configure
+           (lambda* (#:key outputs #:allow-other-keys)
+             (setenv "CONFIG_SHELL" (which "bash"))
+             (let ((out (assoc-ref outputs "out")))
+               (setenv "LDFLAGS"
+                       (string-append "-Wl,-rpath=3D" out "/lib"))
+               (zero? (system* "./configure"
+                               "--enable-shared"
+                               "--as=3Dyasm"
+                               ;; Limit size to avoid CVE-2015-1258
+                               "--size-limit=3D16384x16384"
+                               ;; Spatial SVC is an experimental VP9 encod=
er
+                               ;; used by some packages (i.e. Chromium).
+                               "--enable-experimental"
+                               "--enable-spatial-svc"
+                               (string-append "--prefix=3D" out)))))))
+       #:tests? #f)))) ; No tests.
+
+(define %chromium-gn-bootstrap.patch
+  (gentoo-patch "chromium-gn-bootstrap-r17.patch"
+                "5c9cf110bd61fa287a5c536760b5d8ed13f65d52"
+                "12wsq3bs46mvr7cinxvqjmbzymigm8yzf478r08y9l6sd3qij4yq"))
+
+(define %chromium-gcc-compat.patch
+  (gentoo-patch "chromium-gcc5-r4.patch"
+                "1c5423aab094796b3da7a2905f02cbdcdd6a7742"
+                "18s152pkqzzw6grxj1m6mp3pc2x3ha2gyayw5hf2nhranak5wlkg"))
+
+(define %chromium-webkit-gcc-compat.patch
+  (gentoo-patch "chromium-gcc5-r5.patch"
+                "1c5423aab094796b3da7a2905f02cbdcdd6a7742"
+                "0z7rggizzg85wfr8zhw0yfwd3q69lsh3yp297s939jgzp66cwwkw"))
+
+(define %chromium-webrtc-gcc-compat.patch
+  (gentoo-patch "chromium-webrtc-r0.patch"
+                "1c5423aab094796b3da7a2905f02cbdcdd6a7742"
+                "0qj5b4w9kav51ylpdf38vm5w7p2gx4qp8p45vrfggp7miicg9cmw"))
+
+(define %chromium-system-nspr.patch
+  (debian-patch "system/nspr.patch"
+                "debian/63.0.3239.40-1"
+                "07a0q3khz77gk0rxzp965pjzhly5r08k019pinss18xc1caj971s"))
+
+(define %chromium-system-libevent.patch
+  (debian-patch "system/event.patch"
+                "debian/63.0.3239.40-1"
+                "0604ia06w40zn66d85in03xg3hd6144y8b222kzyc9nzhq3xm2pc"))
+
+(define %chromium-system-icu.patch
+  (debian-patch "system/icu.patch"
+                "debian/63.0.3239.40-1"
+                "0kf77d8lyma3w0xpgfv2k0c741zp6ii08gzllfja6d5s59c15ylv"))
+
+(define %chromium-disable-api-keys-warning.patch
+  (debian-patch "disable/google-api-warning.patch"
+                "36794e57f1f97068640c6845dbeb9291155893c0"
+                "11llghxm0a75kb8fnpy6ky8ix4f1kk7n0c0zfcpwxsx05pask11m"))
+
+(define %chromium-external-components.patch
+  (debian-patch "disable/external-components.patch"
+                "debian/63.0.3239.40-1"
+                "1i3b801hjafxv7djk7cl7nj2skxid0vysf12yjr364db949f164l"))
+
+(define %chromium-duckduckgo.patch
+  (inox-patch "0011-add-duckduckgo-search-engine.patch"
+              "5af0e6187c22471b8cb803f6dda6738f23a530e7"
+              "0p8x98g71ngkd3wbl5q36wrl18ff185sfrr5fcwjbgrv3v7r6ra7"))
+
+;; Don't start a "Login Wizard" at first launch.
+(define %chromium-first-run.patch
+  (inox-patch "0018-disable-first-run-behaviour.patch"
+              "3336bb286ea054271ac2199cf374e96c64ed53cf"
+              "1y4zsqqf2125jkb1phwy9g5hcbd9xhyv5lr4xcaly66rpdzx2ayb"))
+
+;; Use privacy-preserving defaults.
+(define %chromium-default-preferences.patch
+  (inox-patch "0006-modify-default-prefs.patch"
+              "3336bb286ea054271ac2199cf374e96c64ed53cf"
+              "1h8ycmn00yvciq3r5jcdqmsl4grqv8izgwi6a20kijz2baxxr888"))
+
+;; Recent versions of Chromium may load a remote search engine on the
+;; New Tab Page, causing unnecessary and involuntary network traffic.
+(define %chromium-restore-classic-ntp.patch
+  (inox-patch "0008-restore-classic-ntp.patch"
+              "2f60b788bff89bde11ac802d4c19093661cd23f7"
+              "00icvb0r1p3s7i2xy8kv1lpam96cxgn6c3s9bc6wv3dpi3d722p2"))
+
+(define-public chromium
+  (package
+    (name "chromium")
+    (version "63.0.3239.132")
+    (synopsis "Graphical web browser")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "https://commondatastorage.googleapis.co=
m/"
+                                  "chromium-browser-official/chromium-"
+                                  version ".tar.xz"))
+              (sha256
+               (base32
+                "139x3cbc5pa14x69493ic8i2ank12c9fwiq6pqm11aps88n6ri44"))
+              (patches (list ;%chromium-gn-bootstrap.patch
+                             %chromium-gcc-compat.patch
+                             %chromium-webkit-gcc-compat.patch
+                             %chromium-webrtc-gcc-compat.patch
+                             %chromium-duckduckgo.patch
+                             %chromium-default-preferences.patch
+                             %chromium-first-run.patch
+                             %chromium-restore-classic-ntp.patch
+                             %chromium-system-icu.patch
+                             %chromium-system-nspr.patch
+                             %chromium-system-libevent.patch
+                             %chromium-disable-api-keys-warning.patch))
+              (modules '((srfi srfi-1)
+                         (guix build utils)))
+              (snippet
+               '(begin
+                  ;; Replace GN files from third_party with shims for buil=
ding
+                  ;; against system libraries.  Keep this list in sync with
+                  ;; "build/linux/unbundle/replace_gn_files.py".
+                  (for-each (lambda (pair)
+                              (let ((source (string-append
+                                             "build/linux/unbundle/" (car =
pair)))
+                                    (dest (cdr pair)))
+                                (copy-file source dest)))
+                            (list
+                             '("ffmpeg.gn" . "third_party/ffmpeg/BUILD.gn")
+                             '("flac.gn" . "third_party/flac/BUILD.gn")
+                             '("freetype.gn" . "third_party/freetype/BUILD=
.gn")
+                             ;; XXX: This broke in 63.
+                             ;;'("harfbuzz-ng.gn" . "third_party/harfbuzz-=
ng/BUILD.gn")
+                             '("icu.gn" . "third_party/icu/BUILD.gn")
+                             '("libdrm.gn" . "third_party/libdrm/BUILD.gn")
+                             '("libevent.gn" . "base/third_party/libevent/=
BUILD.gn")
+                             '("libjpeg.gn" .
+                               "build/secondary/third_party/libjpeg_turbo/=
BUILD.gn")
+                             '("libpng.gn" . "third_party/libpng/BUILD.gn")
+                             '("libvpx.gn" . "third_party/libvpx/BUILD.gn")
+                             '("libwebp.gn" . "third_party/libwebp/BUILD.g=
n")
+                             ;;'("libxml.gn" . "third_party/libxml/BUILD.g=
n") ;TODO
+                             '("libxslt.gn" . "third_party/libxslt/BUILD.g=
n")
+                             '("openh264.gn" . "third_party/openh264/BUILD=
.gn")
+                             '("opus.gn" . "third_party/opus/BUILD.gn")
+                             '("re2.gn" . "third_party/re2/BUILD.gn")
+                             '("snappy.gn" . "third_party/snappy/BUILD.gn")
+                             '("yasm.gn" . "third_party/yasm/yasm_assemble=
.gni")
+                             '("zlib.gn" . "third_party/zlib/BUILD.gn")))
+                  #t))))
+    (build-system gnu-build-system)
+    (arguments
+     `(#:tests? #f
+       ;; FIXME: There is a "gn" option specifically for setting -rpath, b=
ut
+       ;; it's not recognized when passed.
+       #:validate-runpath? #f
+       #:modules ((srfi srfi-26)
+                  (ice-9 ftw)
+                  (ice-9 regex)
+                  (guix build gnu-build-system)
+                  (guix build utils))
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'remove-bundled-software
+           (lambda _
+             (let ((keep-libs
+                    (list
+                     ;; Third party folders that cannot be deleted yet.
+                     "base/third_party/dmg_fp"
+                     "base/third_party/dynamic_annotations"
+                     "base/third_party/icu"
+                     "base/third_party/libevent"
+                     "base/third_party/nspr"
+                     "base/third_party/superfasthash"
+                     "base/third_party/symbolize" ; glog
+                     "base/third_party/xdg_mime"
+                     "base/third_party/xdg_user_dirs"
+                     "buildtools/third_party/libc++"
+                     "chrome/third_party/mozilla_security_manager"
+                     "courgette/third_party"
+                     "net/third_party/mozilla_security_manager"
+                     "net/third_party/nss"
+                     "third_party/adobe/flash/flapper_version.h"
+                     ;; FIXME: This is used in:
+                     ;; * ui/webui/resources/js/analytics.js
+                     ;; * ui/file_manager/
+                     "third_party/analytics"
+                     "third_party/angle"
+                     "third_party/angle/src/common/third_party/base"
+                     "third_party/angle/src/common/third_party/smhasher"
+                     "third_party/angle/src/third_party/compiler"
+                     "third_party/angle/src/third_party/libXNVCtrl"
+                     "third_party/angle/src/third_party/trace_event"
+                     "third_party/blink"
+                     "third_party/boringssl"
+                     "third_party/breakpad"
+                     "third_party/brotli"
+                     "third_party/cacheinvalidation"
+                     "third_party/catapult"
+                     "third_party/catapult/common/py_vulcanize/third_party=
/rcssmin"
+                     "third_party/catapult/common/py_vulcanize/third_party=
/rjsmin"
+                     "third_party/catapult/third_party/polymer"
+                     "third_party/catapult/tracing/third_party/d3"
+                     "third_party/catapult/tracing/third_party/gl-matrix"
+                     "third_party/catapult/tracing/third_party/jszip"
+                     "third_party/catapult/tracing/third_party/mannwhitney=
u"
+                     "third_party/catapult/tracing/third_party/oboe"
+                     "third_party/catapult/tracing/third_party/pako"
+                     "third_party/ced"
+                     "third_party/cld_3"
+                     "third_party/crc32c"
+                     "third_party/cros_system_api"
+                     "third_party/dom_distiller_js"
+                     "third_party/fips181"
+                     "third_party/flatbuffers"
+                     ;; XXX Needed by pdfium since 59.
+                     "third_party/freetype"
+                     "third_party/glslang-angle"
+                     "third_party/google_input_tools"
+                     "third_party/google_input_tools/third_party/closure_l=
ibrary"
+                     (string-append "third_party/google_input_tools/third_=
party"
+                                    "/closure_library/third_party/closure")
+                     "third_party/googletest"
+                     "third_party/harfbuzz-ng" ;XXX why is this required i=
n 63+
+                     "third_party/hunspell"
+                     "third_party/iccjpeg"
+                     "third_party/inspector_protocol"
+                     "third_party/jinja2"
+                     "third_party/jstemplate"
+                     "third_party/khronos"
+                     "third_party/leveldatabase"
+                     "third_party/libXNVCtrl"
+                     "third_party/libaddressinput"
+                     "third_party/libjingle_xmpp"
+                     "third_party/libphonenumber"
+                     "third_party/libsecret" ;FIXME: needs pkg-config supp=
ort.
+                     "third_party/libsrtp"   ;TODO: Requires libsrtp@2.
+                     "third_party/libudev"
+                     "third_party/libwebm"
+                     "third_party/libxml" ;FIXME: Unbundle (again).
+                     "third_party/libyuv"
+                     "third_party/lss"
+                     "third_party/lzma_sdk"
+                     "third_party/markupsafe"
+                     "third_party/mesa"
+                     "third_party/modp_b64"
+                     "third_party/mt19937ar"
+                     "third_party/node"
+                     "third_party/node/node_modules/polymer-bundler/lib/th=
ird_party/UglifyJS2"
+                     "third_party/openmax_dl"
+                     "third_party/ots"
+                     "third_party/pdfium"
+                     "third_party/pdfium/third_party"
+                     "third_party/ply"
+                     "third_party/polymer"
+                     "third_party/protobuf"
+                     "third_party/protobuf/third_party/six"
+                     "third_party/qcms"
+                     "third_party/sfntly"
+                     "third_party/skia"
+                     "third_party/skia/third_party/vulkan"
+                     "third_party/skia/third_party/gif"
+                     "third_party/smhasher"
+                     "third_party/speech-dispatcher"
+                     "third_party/spirv-headers"
+                     "third_party/spirv-tools-angle"
+                     "third_party/sqlite"
+                     "third_party/swiftshader"
+                     "third_party/swiftshader/third_party"
+                     "third_party/usb_ids"
+                     "third_party/usrsctp"
+                     "third_party/vulkan"
+                     "third_party/vulkan-validation-layers"
+                     "third_party/WebKit"
+                     "third_party/web-animations-js"
+                     "third_party/webrtc"
+                     "third_party/widevine/cdm/widevine_cdm_version.h"
+                     "third_party/widevine/cdm/widevine_cdm_common.h"
+                     "third_party/woff2"
+                     "third_party/xdg-utils"
+                     "third_party/yasm/run_yasm.py"
+                     "third_party/zlib/google"
+                     "url/third_party/mozilla"
+                     "v8/src/third_party/valgrind"
+                     "v8/third_party/inspector_protocol")))
+               ;; FIXME: implement as source snippet. This traverses
+               ;; any "third_party" directory and deletes files that are:
+               ;; * not ending with ".gn" or ".gni"; or
+               ;; * not explicitly named as argument (folder or file).
+               (zero? (apply system* "python"
+                             "build/linux/unbundle/remove_bundled_librarie=
s.py"
+                             "--do-remove" keep-libs)))))
+         (add-after 'remove-bundled-software 'patch-stuff
+           (lambda* (#:key inputs #:allow-other-keys)
+             (substitute* "printing/cups_config_helper.py"
+               (("cups_config =3D.*")
+                (string-append "cups_config =3D '" (assoc-ref inputs "cups=
")
+                               "/bin/cups-config'\n")))
+
+             (substitute*
+                 '("base/process/launch_posix.cc"
+                   "base/third_party/dynamic_annotations/dynamic_annotatio=
ns.c"
+                   "sandbox/linux/seccomp-bpf/sandbox_bpf.cc"
+                   "sandbox/linux/services/credentials.cc"
+                   "sandbox/linux/services/namespace_utils.cc"
+                   "sandbox/linux/services/syscall_wrappers.cc"
+                   "sandbox/linux/syscall_broker/broker_host.cc")
+               (("include \"base/third_party/valgrind/") "include \"valgri=
nd/"))
+
+             (for-each (lambda (file)
+                         (substitute* file
+                           ;; Fix opus include path.
+                           ;; Do not substitute opus_private.h.
+                           (("#include \"opus\\.h\"")
+                            "#include \"opus/opus.h\"")
+                           (("#include \"opus_custom\\.h\"")
+                            "#include \"opus/opus_custom.h\"")
+                           (("#include \"opus_defines\\.h\"")
+                            "#include \"opus/opus_defines.h\"")
+                           (("#include \"opus_multistream\\.h\"")
+                            "#include \"opus/opus_multistream.h\"")
+                           (("#include \"opus_types\\.h\"")
+                            "#include \"opus/opus_types.h\"")))
+                       (append (find-files "third_party/opus/src/celt")
+                               (find-files "third_party/opus/src/src")
+                               (find-files (string-append "third_party/web=
rtc/modules"
+                                                          "/audio_coding/c=
odecs/opus"))))
+
+             (substitute* "chrome/common/chrome_paths.cc"
+               (("/usr/share/chromium/extensions")
+                ;; TODO: Add ~/.guix-profile.
+                "/run/current-system/profile/share/chromium/extensions"))
+
+             (substitute*
+                 "third_party/breakpad/breakpad/src/common/linux/libcurl_w=
rapper.h"
+               (("include \"third_party/curl") "include \"curl"))
+             (substitute* "media/base/decode_capabilities.cc"
+               (("third_party/libvpx/source/libvpx/") ""))
+
+             ;; We don't cross compile most packages, so get rid of the
+             ;; unnecessary ARCH-linux-gnu* prefix.
+             (substitute* "build/toolchain/linux/BUILD.gn"
+               (("aarch64-linux-gnu-") "")
+               (("arm-linux-gnueabihf-") ""))
+             #t))
+         (replace 'configure
+           (lambda* (#:key inputs outputs #:allow-other-keys)
+             (let ((gn-flags
+                    (list
+                     ;; See tools/gn/docs/cookbook.md and
+                     ;; https://www.chromium.org/developers/gn-build-confi=
guration
+                     ;; for usage. Run "./gn args . --list" in the Release
+                     ;; directory for an exhaustive list of supported flag=
s.
+                     "is_debug=3Dfalse"
+                     "is_official_build=3Dfalse"
+                     "is_clang=3Dfalse"
+                     "use_gold=3Dfalse"
+                     "linux_use_bundled_binutils=3Dfalse"
+                     "use_custom_libcxx=3Dfalse"
+                     "use_sysroot=3Dfalse"
+                     "goma_dir=3D\"\""
+                     "enable_precompiled_headers=3Dfalse"
+                     "use_jumbo_build=3Dtrue"        ;speeds up build
+                     ;; Use a deterministic version identifier.
+                     "override_build_date=3D\"01 01 2000 05:00:00\""
+                     "use_unofficial_version_number=3Dfalse"
+                     ;; Disable debugging features to save space.
+                     "remove_webcore_debug_symbols=3Dtrue"
+                     "enable_iterator_debugging=3Dfalse"
+                     ;; Don't fail when using deprecated ffmpeg features.
+                     "treat_warnings_as_errors=3Dfalse"
+                     "enable_nacl=3Dfalse"
+                     "enable_nacl_nonsfi=3Dfalse"
+                     "use_allocator=3D\"none\""     ;don't use tcmalloc
+                     ;; Don't add any API keys. End users can set them in =
the
+                     ;; environment if necessary.
+                     ;; https://www.chromium.org/developers/how-tos/api-ke=
ys
+                     "use_official_google_api_keys=3Dfalse"
+                     ;; Disable "field trials".
+                     "fieldtrial_testing_like_official_build=3Dtrue"
+
+                     "use_system_freetype=3Dtrue"
+                     ;; FIXME: Try enabling this for 63+.
+                     ;;"use_system_harfbuzz=3Dtrue"
+                     "use_system_libjpeg=3Dtrue"
+                     "use_system_lcms2=3Dtrue"
+                     "use_system_zlib=3Dtrue"
+                     ;; This is currently not supported on Linux:
+                     ;; https://bugs.chromium.org/p/chromium/issues/detail=
?id=3D22208
+                     ;; "use_system_sqlite=3Dtrue"
+                     "use_gconf=3Dfalse"         ; deprecated by gsettings
+                     "use_gnome_keyring=3Dfalse" ; deprecated by libsecret
+                     "use_gtk3=3Dtrue"
+                     "use_openh264=3Dtrue"
+                     "use_xkbcommon=3Dtrue"
+                     "link_pulseaudio=3Dtrue"
+
+                     ;; Don't arbitrarily restrict formats supported by sy=
stem ffmpeg.
+                     "proprietary_codecs=3Dtrue"
+                     "ffmpeg_branding=3D\"Chrome\""
+
+                     ;; WebRTC stuff.
+                     "rtc_use_h264=3Dtrue"
+                     ;; Don't use bundled sources.
+                     "rtc_build_json=3Dfalse"
+                     "rtc_build_libevent=3Dfalse"
+                     "rtc_build_libvpx=3Dfalse"
+                     "rtc_build_opus=3Dfalse"
+                     "rtc_build_ssl=3Dfalse"
+                     ;; TODO: Package these.
+                     "rtc_build_libsrtp=3Dtrue" ; 2.0
+                     "rtc_build_libyuv=3Dtrue"
+                     "rtc_build_openmax_dl=3Dtrue"
+                     "rtc_build_usrsctp=3Dtrue"
+                     (string-append "rtc_jsoncpp_root=3D\""
+                                    (assoc-ref inputs "jsoncpp")
+                                    "/include/jsoncpp/json\"")
+                     (string-append "rtc_ssl_root=3D\""
+                                    (assoc-ref inputs "openssl")
+                                    "/include/openssl\""))))
+
+               ;; XXX: How portable is this.
+               (mkdir-p "third_party/node/linux/node-linux-x64")
+               (symlink (string-append (assoc-ref inputs "node") "/bin")
+                        "third_party/node/linux/node-linux-x64/bin")
+
+               (setenv "CC" "gcc")
+               (setenv "CXX" "g++")
+               ;; TODO: pre-compile instead. Avoids a race condition.
+               (setenv "PYTHONDONTWRITEBYTECODE" "1")
+               (and
+                ;; Build the "gn" tool.
+                (zero? (system* "python"
+                                "tools/gn/bootstrap/bootstrap.py" "-s" "-v=
"))
+                ;; Generate ninja build files.
+                (zero? (system* "./out/Release/gn" "gen" "out/Release"
+                                (string-append "--args=3D"
+                                               (string-join gn-flags " "))=
))))))
+         (replace 'build
+           (lambda* (#:key outputs #:allow-other-keys)
+             (zero? (system* "ninja" "-C" "out/Release"
+                             "-j" (number->string (parallel-job-count))
+                             "chrome"))))
+         (replace 'install
+           (lambda* (#:key inputs outputs #:allow-other-keys)
+             (let* ((out            (assoc-ref outputs "out"))
+                    (bin            (string-append out "/bin"))
+                    (exe            (string-append bin "/chromium"))
+                    (lib            (string-append out "/lib"))
+                    (man            (string-append out "/share/man/man1"))
+                    (applications   (string-append out "/share/application=
s"))
+                    (install-regexp (make-regexp "\\.(bin|pak)$"))
+                    (locales        (string-append lib "/locales"))
+                    (resources      (string-append lib "/resources"))
+                    (gtk+           (assoc-ref inputs "gtk+"))
+                    (mesa           (assoc-ref inputs "mesa"))
+                    (nss            (assoc-ref inputs "nss"))
+                    (udev           (assoc-ref inputs "udev"))
+                    (sh             (which "sh")))
+
+               (substitute* '("chrome/app/resources/manpage.1.in"
+                              "chrome/installer/linux/common/desktop.templ=
ate")
+                 (("@@MENUNAME@@") "Chromium")
+                 (("@@PACKAGE@@") "chromium")
+                 (("/usr/bin/@@USR_BIN_SYMLINK_NAME@@") exe))
+               (mkdir-p man)
+               (copy-file "chrome/app/resources/manpage.1.in"
+                          (string-append man "/chromium.1"))
+               (mkdir-p applications)
+               (copy-file "chrome/installer/linux/common/desktop.template"
+                          (string-append applications "/chromium.desktop"))
+
+               (with-directory-excursion "out/Release"
+                 (for-each (lambda (file)
+                             (install-file file lib))
+                           (scandir "." (cut regexp-exec install-regexp <>=
)))
+                 (copy-file "chrome" (string-append lib "/chromium"))
+
+                 ;; TODO: Install icons from "../../chrome/app/themes" into
+                 ;; "out/share/icons/hicolor/$size".
+                 (install-file
+                  "product_logo_48.png"
+                  (string-append out "/share/icons/48x48/chromium.png"))
+
+                 (copy-recursively "locales" locales)
+                 (copy-recursively "resources" resources)
+
+                 (mkdir-p bin)
+                 ;; Add a thin wrapper to prevent the user from inadverten=
tly
+                 ;; installing non-free software through the Web Store.
+                 ;; TODO: Discover extensions from the profile and pass
+                 ;; something like "--disable-extensions-except=3D...".
+                 (call-with-output-file exe
+                   (lambda (port)
+                     (format port
+                             "#!~a~@
+                             if [ -z \"$CHROMIUM_ENABLE_WEB_STORE\" ]~@
+                             then~@
+                               CHROMIUM_FLAGS=3D\" \\~@
+                                 --disable-background-networking \\~@
+                                 --disable-extensions \\~@
+                               \"~@
+                             fi~@
+                             exec ~a $CHROMIUM_FLAGS \"$@\"~%"
+                             sh (string-append lib "/chromium"))))
+                 (chmod exe #o755)
+
+                 (wrap-program exe
+                   ;; TODO: Get these in RUNPATH.
+                   `("LD_LIBRARY_PATH" ":" prefix
+                     (,(string-append lib ":" nss "/lib/nss:" gtk+ "/lib:"
+                                      mesa "/lib:" udev "/lib")))
+                   ;; Avoid file manager crash. See <https://bugs.gnu.org/=
26593>.
+                   `("XDG_DATA_DIRS" ":" prefix (,(string-append gtk+ "/sh=
are"))))
+                 #t)))))))
+    (native-inputs
+     `(("bison" ,bison)
+       ("git" ,git)                     ;last_commit_position.py
+       ("gperf" ,gperf)
+       ("ninja" ,ninja)
+       ("node" ,node)
+       ("pkg-config" ,pkg-config)
+       ("which" ,which)
+       ("yasm" ,yasm)
+
+       ("python-beautifulsoup4" ,python2-beautifulsoup4)
+       ("python-html5lib" ,python2-html5lib)
+       ("python" ,python-2)))
+    (inputs
+     `(("alsa-lib" ,alsa-lib)
+       ("atk" ,atk)
+       ("cups" ,cups)
+       ("curl" ,curl)
+       ("dbus" ,dbus)
+       ("dbus-glib" ,dbus-glib)
+       ("expat" ,expat)
+       ("flac" ,flac)
+       ("ffmpeg" ,ffmpeg)
+       ("fontconfig" ,fontconfig)
+       ("freetype" ,freetype)
+       ("gdk-pixbuf" ,gdk-pixbuf)
+       ("glib" ,glib)
+       ("gtk+-2" ,gtk+-2)
+       ("gtk+" ,gtk+)
+       ("harfbuzz" ,harfbuzz)
+       ("icu4c" ,icu4c-59.1)
+       ("jsoncpp" ,jsoncpp)
+       ("lcms" ,lcms)
+       ("libevent" ,libevent)
+       ("libffi" ,libffi)
+       ("libjpeg-turbo" ,libjpeg-turbo)
+       ("libpng" ,libpng)
+       ("libusb" ,libusb)
+       ("libvpx" ,libvpx+experimental)
+       ("libwebp" ,libwebp)
+       ("libx11" ,libx11)
+       ("libxcb" ,libxcb)
+       ("libxcomposite" ,libxcomposite)
+       ("libxcursor" ,libxcursor)
+       ("libxdamage" ,libxdamage)
+       ("libxext" ,libxext)
+       ("libxfixes" ,libxfixes)
+       ("libxi" ,libxi)
+       ("libxkbcommon" ,libxkbcommon)
+       ("libxml2" ,libxml2)
+       ("libxrandr" ,libxrandr)
+       ("libxrender" ,libxrender)
+       ("libxscrnsaver" ,libxscrnsaver)
+       ("libxslt" ,libxslt)
+       ("libxtst" ,libxtst)
+       ("mesa" ,mesa)
+       ("minizip" ,minizip)
+       ("mit-krb5" ,mit-krb5)
+       ("nss" ,nss)
+       ("openh264" ,openh264)
+       ("openssl" ,openssl)
+       ("opus" ,opus+custom)
+       ("pango" ,pango)
+       ("pciutils" ,pciutils)
+       ("protobuf" ,protobuf)
+       ("pulseaudio" ,pulseaudio)
+       ("re2" ,re2)
+       ("snappy" ,snappy)
+       ("speech-dispatcher" ,speech-dispatcher)
+       ("sqlite" ,sqlite)
+       ("udev" ,eudev)
+       ("valgrind" ,valgrind)))
+    (home-page "https://www.chromium.org/")
+    (description
+     "Chromium is a web browser using the @code{Blink} rendering engine.")
+    ;; Chromium is developed as BSD-3, but bundles a large number of third=
-party
+    ;; software with other licenses. For full information, see chrome://cr=
edits.
+    (license (list license:bsd-3
+                   license:bsd-2
+                   license:expat
+                   license:asl2.0
+                   license:mpl2.0
+                   license:public-domain
+                   license:lgpl2.1+))))
=2D-=20
2.15.1


--=-=-=--

--==-=-=
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQEzBAEBCgAdFiEEu7At3yzq9qgNHeZDoqBt8qM6VPoFAlpT6QoACgkQoqBt8qM6
VPpUtwgAq+kfYJHXhUn4kFeWpKffMt3woWyztcTHYrKaoqGIwpnR41+/tom/8yf2
qsdcmoD7p632w/ZrFtuDKhq28IriFi0cHZqmnacZU2Y1/9+UlQf7DmQYO2RdV5Rl
RNlAFVSO+vhuAzMTwhXePAg1vDHWUGpF/vuy6GTyzhehoG/bKIY+t0xIaAL4ViBI
6/Lw/Fh/+QfCruGHs4x58sG0CMQM38xdrsK4hQS/ywX1Sz0zPSzckXlnthb0E18q
VzHqBAh80EOGZ3NubX9u46gW0d+n4vlgtGlY4RirUBJ3TZKVsrN604bpV+LNSs4p
pY7dXovy62hkYISj0J3Ax3e3ZbrOTg==
=u9L2
-----END PGP SIGNATURE-----
--==-=-=--




Information forwarded to guix-patches@HIDDEN:
bug#28004; Package guix-patches. Full text available.

Message received at 28004 <at> debbugs.gnu.org:


Received: (at 28004) by debbugs.gnu.org; 4 Jan 2018 19:17:13 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Jan 04 14:17:13 2018
Received: from localhost ([127.0.0.1]:35994 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1eXB0k-0007E1-On
	for submit <at> debbugs.gnu.org; Thu, 04 Jan 2018 14:17:13 -0500
Received: from aibo.runbox.com ([91.220.196.211]:54030)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <ng0@HIDDEN>) id 1eXB0b-0007DP-CR
 for 28004 <at> debbugs.gnu.org; Thu, 04 Jan 2018 14:17:04 -0500
Received: from [10.9.9.211] (helo=mailfront11.runbox.com)
 by mailtransmit03.runbox with esmtp (Exim 4.86_2)
 (envelope-from <ng0@HIDDEN>)
 id 1eXB0V-0008KO-Lw; Thu, 04 Jan 2018 20:16:51 +0100
Received: from dslb-178-001-158-034.178.001.pools.vodafone-ip.de
 ([178.1.158.34] helo=localhost)
 by mailfront11.runbox.com with esmtpsa (uid:892961 )
 (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82)
 id 1eXB0T-0003QV-Pn; Thu, 04 Jan 2018 20:16:50 +0100
Date: Thu, 4 Jan 2018 19:16:48 +0000
From: ng0 <ng0@HIDDEN>
To: Marius Bakke <mbakke@HIDDEN>
Subject: Re: [bug#28004] Chromium
Message-ID: <20180104191648.custe7w3l57fvbac@abyayala>
References: <87y3qvb15k.fsf@HIDDEN>
 <20171010131949.y43plpzxbppvrigr@abyayala> <87lgkha2cx.fsf@HIDDEN>
 <20171012195628.GA31843@HIDDEN> <87shensfq6.fsf@HIDDEN>
 <87o9p45bb6.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: multipart/signed; micalg=pgp-sha512;
 protocol="application/pgp-signature"; boundary="a4wtjznlvype5xp3"
Content-Disposition: inline
In-Reply-To: <87o9p45bb6.fsf@HIDDEN>
X-Spam-Score: -0.0 (/)
X-Debbugs-Envelope-To: 28004
Cc: 28004 <at> debbugs.gnu.org, Ludovic =?utf-8?Q?Court=C3=A8s?= <ludo@HIDDEN>,
 ng0 <ng0@HIDDEN>, Leo Famulari <leo@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: 0.0 (/)


--a4wtjznlvype5xp3
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

Marius Bakke transcribed 37K bytes:
> Ludovic Court=C3=A8s <ludo@HIDDEN> writes:
>=20
> > I think we should make sure that our package does not call home in any
> > way.  That=E2=80=99s what I expect from a security- and privacy-conscio=
us
> > distro.
>=20
> Currently, it calls home at first launch, prompting for a login.  But
> I've verified that it does not send any unsolicited requests for
> subsequent startups, as long as the user does not change the
> command-line flags.
>=20
> Anyway I'm attaching the current iteration of this patch.  Chromium 62
> is out today, I'll try to update this weekend and will push it after
> that in lieu of other feedback.
>=20
> I would be very happy if someone managed to complete the 62 upgrade
> before me, however!  ;-)
>=20

> From d6e3ef7f28a9bc4ace0c52e09b1e4bdde84e01e0 Mon Sep 17 00:00:00 2001
> From: Marius Bakke <mbakke@HIDDEN>
> Date: Wed, 12 Oct 2016 17:25:05 +0100
> Subject: [PATCH] gnu: Add chromium.
=2E..
> +(define-public chromium
> +  (package
> +    (name "chromium")
=2E..
> +             (substitute* "chrome/common/chrome_paths.cc"
> +               (("/usr/share/chromium/extensions")
> +                ;; TODO: Add ~/.guix-profile.
> +                "/run/current-system/profile/share/chromium/extensions"))

What's the idea behind this? Did you test it? Do you have any guix build-sy=
stem
using Chromium extensions as an example? So far this completely disables the
installation of any plugins and addons.

> +
> +             (substitute* "breakpad/src/common/linux/libcurl_wrapper.h"
> +               (("include \"third_party/curl") "include \"curl"))
> +             (substitute* "media/base/decode_capabilities.cc"
> +               (("third_party/libvpx/source/libvpx/") ""))
> +
> +             ;; We don't cross compile most packages, so get rid of the
> +             ;; unnecessary ARCH-linux-gnu* prefix.
> +             (substitute* "build/toolchain/linux/BUILD.gn"
> +               (("aarch64-linux-gnu-") "")
> +               (("arm-linux-gnueabihf-") ""))
> +             #t))
> +         (replace 'configure
> +           (lambda* (#:key inputs outputs #:allow-other-keys)
> +             (let ((gn-flags
> +                    (list
> +                     ;; See tools/gn/docs/cookbook.md and
> +                     ;; https://www.chromium.org/developers/gn-build-con=
figuration
> +                     ;; for usage. Run "./gn args . --list" in the Relea=
se
> +                     ;; directory for an exhaustive list of supported fl=
ags.
> +                     "is_debug=3Dfalse"
> +                     "is_official_build=3Dfalse"
> +                     "is_clang=3Dfalse"
> +                     "use_gold=3Dfalse"
> +                     "linux_use_bundled_binutils=3Dfalse"
> +                     "use_custom_libcxx=3Dfalse"
> +                     "use_sysroot=3Dfalse"
> +                     "remove_webcore_debug_symbols=3Dtrue"
> +                     "enable_iterator_debugging=3Dfalse"
> +                     "override_build_date=3D\"01 01 2000 05:00:00\""
> +                     ;; Don't fail when using deprecated ffmpeg features.
> +                     "treat_warnings_as_errors=3Dfalse"
> +                     "enable_nacl=3Dfalse"
> +                     "enable_nacl_nonsfi=3Dfalse"
> +                     "use_allocator=3D\"none\"" ; Don't use tcmalloc.
> +                     ;; Don't add any API keys. End users can set them i=
n the
> +                     ;; environment if necessary.
> +                     ;; https://www.chromium.org/developers/how-tos/api-=
keys
> +                     "use_official_google_api_keys=3Dfalse"
> +                     ;; Disable "field trials".
> +                     "fieldtrial_testing_like_official_build=3Dtrue"
> +
> +                     "use_system_libjpeg=3Dtrue"
> +                     ;; This is currently not supported on Linux:
> +                     ;; https://bugs.chromium.org/p/chromium/issues/deta=
il?id=3D22208
> +                     ;; "use_system_sqlite=3Dtrue"
> +                     "use_gtk3=3Dtrue"
> +                     "use_gconf=3Dfalse"         ; deprecated by gsettin=
gs
> +                     "use_gnome_keyring=3Dfalse" ; deprecated by libsecr=
et
> +                     "use_xkbcommon=3Dtrue"
> +                     "link_pulseaudio=3Dtrue"
> +                     "use_openh264=3Dtrue"
> +
> +                     ;; Don't arbitrarily restrict formats supported by =
system ffmpeg.
> +                     "proprietary_codecs=3Dtrue"
> +                     "ffmpeg_branding=3D\"Chrome\""
> +
> +                     ;; WebRTC stuff.
> +                     "rtc_use_h264=3Dtrue"
> +                     ;; Don't use bundled sources.
> +                     "rtc_build_json=3Dfalse"
> +                     "rtc_build_libevent=3Dfalse"
> +                     "rtc_build_libjpeg=3Dfalse"
> +                     "rtc_build_libvpx=3Dfalse"
> +                     "rtc_build_opus=3Dfalse"
> +                     "rtc_build_ssl=3Dfalse"
> +                     ;; TODO: Package these.
> +                     "rtc_build_libsrtp=3Dtrue" ; 2.0
> +                     "rtc_build_libyuv=3Dtrue"
> +                     "rtc_build_openmax_dl=3Dtrue"
> +                     "rtc_build_usrsctp=3Dtrue"
> +                     (string-append "rtc_jsoncpp_root=3D\""
> +                                    (assoc-ref inputs "jsoncpp")
> +                                    "/include/jsoncpp/json\"")
> +                     (string-append "rtc_ssl_root=3D\""
> +                                    (assoc-ref inputs "openssl")
> +                                    "/include/openssl\""))))
> +
> +               ;; XXX: How portable is this.
> +               (mkdir-p "third_party/node/linux/node-linux-x64")
> +               (symlink (string-append (assoc-ref inputs "node") "/bin")
> +                        "third_party/node/linux/node-linux-x64/bin")
> +
> +               (setenv "CC" "gcc")
> +               (setenv "CXX" "g++")
> +               ;; TODO: pre-compile instead. Avoids a race condition.
> +               (setenv "PYTHONDONTWRITEBYTECODE" "1")
> +               (and
> +                ;; Build the "gn" tool.
> +                (zero? (system* "python"
> +                                "tools/gn/bootstrap/bootstrap.py" "-s" "=
-v"))
> +                ;; Generate ninja build files.
> +                (zero? (system* "./out/Release/gn" "gen" "out/Release"
> +                                (string-append "--args=3D"
> +                                               (string-join gn-flags " "=
))))))))
> +         (replace 'build
> +           (lambda* (#:key outputs #:allow-other-keys)
> +             (zero? (system* "ninja" "-C" "out/Release"
> +                             "-j" (number->string (parallel-job-count))
> +                             "chrome"))))
> +         (replace 'install
> +           (lambda* (#:key inputs outputs #:allow-other-keys)
> +             (let* ((out            (assoc-ref outputs "out"))
> +                    (bin            (string-append out "/bin"))
> +                    (exe            (string-append bin "/chromium"))
> +                    (lib            (string-append out "/lib"))
> +                    (man            (string-append out "/share/man/man1"=
))
> +                    (applications   (string-append out "/share/applicati=
ons"))
> +                    (install-regexp (make-regexp "\\.(so|bin|pak)$"))
> +                    (locales        (string-append lib "/locales"))
> +                    (resources      (string-append lib "/resources"))
> +                    (gtk+           (assoc-ref inputs "gtk+"))
> +                    (mesa           (assoc-ref inputs "mesa"))
> +                    (nss            (assoc-ref inputs "nss"))
> +                    (udev           (assoc-ref inputs "udev"))
> +                    (sh             (which "sh")))
> +
> +               (mkdir-p applications)
> +               (call-with-output-file (string-append applications
> +                                                     "/chromium.desktop")
> +                 (lambda (port)
> +                   (format port
> +                           "[Desktop Entry]~@
> +                           Name=3DChromium~@
> +                           Comment=3D~a~@
> +                           Exec=3D~a~@
> +                           Icon=3Dchromium.png~@
> +                           Type=3DApplication~%" ,synopsis exe)))
> +
> +               (with-directory-excursion "out/Release"
> +                 (for-each (lambda (file)
> +                             (install-file file lib))
> +                           (scandir "." (cut regexp-exec install-regexp =
<>)))
> +                 (copy-file "chrome" (string-append lib "/chromium"))
> +
> +                 ;; TODO: Install icons from "../../chrome/app/themes" i=
nto
> +                 ;; "out/share/icons/hicolor/$size".
> +                 (install-file
> +                  "product_logo_48.png"
> +                  (string-append out "/share/icons/48x48/chromium.png"))
> +
> +                 (copy-recursively "locales" locales)
> +                 (copy-recursively "resources" resources)
> +
> +                 (mkdir-p man)
> +                 (copy-file "chrome.1" (string-append man "/chromium.1"))
> +
> +                 (mkdir-p bin)
> +                 ;; Add a thin wrapper to prevent the user from inadvert=
ently
> +                 ;; installing non-free software through the Web Store.
> +                 ;; TODO: Discover extensions from the profile and pass
> +                 ;; something like "--disable-extensions-except=3D...".

Same question here.

If you need help, there's at least 3 users of Chromium now. I'd like to read
your ideas on how to solve the TODOs, aswell as: Do you have any unpushed
progress? Maybe we can team collaborate on this huge browser.

> +                 (call-with-output-file exe
> +                   (lambda (port)
> +                     (format port
> +                             "#!~a~@
> +                             CHROMIUM_FLAGS=3D\"--disable-background-net=
working\"~@
> +                             if [ -z \"$CHROMIUM_ENABLE_WEB_STORE\" ]~@
> +                             then~@
> +                                 CHROMIUM_FLAGS=3D\"$CHROMIUM_FLAGS --di=
sable-extensions\"~@
> +                             fi~@
> +                             exec ~a $CHROMIUM_FLAGS \"$@\"~%"
> +                             sh (string-append lib "/chromium"))))
> +                 (chmod exe #o755)
> +
> +                 (wrap-program exe
> +                   ;; TODO: Get these in RUNPATH.
> +                   `("LD_LIBRARY_PATH" ":" prefix
> +                     (,(string-append lib ":" nss "/lib/nss:" gtk+ "/lib=
:"
> +                                      mesa "/lib:" udev "/lib")))
> +                   ;; Avoid file manager crash. See <https://bugs.gnu.or=
g/26593>.
> +                   `("XDG_DATA_DIRS" ":" prefix (,(string-append gtk+ "/=
share"))))
> +                 #t)))))))



--=20
GnuPG: A88C8ADD129828D7EAC02E52E22F9BBFEE348588
GnuPG: https://c.n0.is/ng0_pubkeys/tree/keys
  WWW: https://n0.is/a/  ::  https://ea.n0.is

--a4wtjznlvype5xp3
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQIzBAABCgAdFiEEqIyK3RKYKNfqwC5S4i+bv+40hYgFAlpOfaAACgkQ4i+bv+40
hYgbwA/+MkmSWzs84ZAEAJC0cI8nvwE+cSplcQReUxebkDacVOykqBHti2cds3+l
cO7ovSd8U0VifKZ3j3HkR7UGxdRIfbwwrdQzcpm4TBe34LO0iXMGnRv26EgQ7HZQ
9cHjDHVaB8vmlH5IFZJu95K7dkgYiPu+BxbD9dYlr4V7c1KLs/aQflCnh9Ymcknd
7SyTfxr5XXgMd4BDZKerDTqa0ccdH57WujybEuzOmfRnH7L9Wr3tzQ7njh2qRLMZ
Aiz+P6KWfnnKOb9iaxvaK7YGH0B3yCl6yz/9D+0JYmZLQiwA3t2obqr1cwcZLrOv
OsZ+fwSPLqUaRvXlCskeZbmCT20XW142p5q9eo/BuMB38p99IgoiXKFnzrDDjWxv
mK8X56rodgjMdHI3HwEFDJ1E4MnLzfBQdMNusCTqrzTNd7SsgnYDChRFZc1Yshif
+J/83Izu4M7Aq6XXYzNMXLCmdtnGFCxBnYvkbImbvnEeK/WiSxHNbIVZsLUWudw1
QWyE4sJDT6K0lq9yOh0Bpm7v2AkgT4XprFIw61Ps4C8vj3pwcqhaw8DBera7GHQh
ZSJ5uf8GHSGGP1b7Ah8H6XAFEXveXaGFaKFSsJ7KwdGgOXVLjfMElAozfzTe8KJq
3UE+VwuoCTOnsGM5HMHOS2/c8gGriQ6Wf4YPC7uPeoODGthYzRk=
=J5lQ
-----END PGP SIGNATURE-----

--a4wtjznlvype5xp3--




Information forwarded to guix-patches@HIDDEN:
bug#28004; Package guix-patches. Full text available.

Message received at submit <at> debbugs.gnu.org:


Received: (at submit) by debbugs.gnu.org; 10 Nov 2017 11:33:29 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Nov 10 06:33:29 2017
Received: from localhost ([127.0.0.1]:33236 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1eD7Yr-0005C5-DY
	for submit <at> debbugs.gnu.org; Fri, 10 Nov 2017 06:33:29 -0500
Received: from eggs.gnu.org ([208.118.235.92]:40379)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <adfeno@HIDDEN>) id 1eD7Yn-0005Bk-Eg
 for submit <at> debbugs.gnu.org; Fri, 10 Nov 2017 06:33:21 -0500
Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)
 (envelope-from <adfeno@HIDDEN>) id 1eD7Yh-0006Sl-BB
 for submit <at> debbugs.gnu.org; Fri, 10 Nov 2017 06:33:16 -0500
X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org
X-Spam-Level: 
X-Spam-Status: No, score=0.8 required=5.0 tests=BAYES_50 autolearn=disabled
 version=3.3.2
Received: from lists.gnu.org ([2001:4830:134:3::11]:45937)
 by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32)
 (Exim 4.71) (envelope-from <adfeno@HIDDEN>)
 id 1eD7Yh-0006SR-7p
 for submit <at> debbugs.gnu.org; Fri, 10 Nov 2017 06:33:15 -0500
Received: from eggs.gnu.org ([2001:4830:134:3::10]:59568)
 by lists.gnu.org with esmtp (Exim 4.71)
 (envelope-from <adfeno@HIDDEN>) id 1eD7Yf-0002zl-Vn
 for guix-patches@HIDDEN; Fri, 10 Nov 2017 06:33:15 -0500
Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)
 (envelope-from <adfeno@HIDDEN>) id 1eD7Yc-0006OG-QF
 for guix-patches@HIDDEN; Fri, 10 Nov 2017 06:33:13 -0500
Received: from relay3-d.mail.gandi.net ([217.70.183.195]:34562)
 by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32)
 (Exim 4.71) (envelope-from <adfeno@HIDDEN>)
 id 1eD7Yc-0006Mo-K6
 for guix-patches@HIDDEN; Fri, 10 Nov 2017 06:33:10 -0500
X-Originating-IP: 181.221.145.22
Received: from adfeno-pc1 (unknown [181.221.145.22])
 (Authenticated sender: adfeno@HIDDEN)
 by relay3-d.mail.gandi.net (Postfix) with ESMTPSA id 8F891A80D7
 for <guix-patches@HIDDEN>; Fri, 10 Nov 2017 12:33:08 +0100 (CET)
From: Adonay Felipe Nogueira <adfeno@HIDDEN>
To: guix-patches@HIDDEN
Subject: Re: [bug#28004] Chromium
References: <87y3qvb15k.fsf@HIDDEN>
 <20171010131949.y43plpzxbppvrigr@abyayala> <87lgkha2cx.fsf@HIDDEN>
 <20171012195628.GA31843@HIDDEN> <87shensfq6.fsf@HIDDEN>
 <87o9p45bb6.fsf@HIDDEN> <87o9og4727.fsf@HIDDEN>
Date: Fri, 10 Nov 2017 09:33:05 -0200
In-Reply-To: <87o9og4727.fsf@HIDDEN> (Marius Bakke's message of "Mon, 06
 Nov 2017 00:52:32 +0100")
Message-ID: <877euy8j2m.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.3 (gnu/linux)
MIME-Version: 1.0
Content-Type: text/plain
X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic]
 [fuzzy]
X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x
X-Received-From: 2001:4830:134:3::11
X-Spam-Score: -4.1 (----)
X-Debbugs-Envelope-To: submit
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -4.1 (----)

As a continuation, directory-discuss started to discuss the Chromium
issue once again ([1]).

[1] <https://lists.gnu.org/archive/cgi-bin/namazu.cgi?query=%2Bsubject%3A%7BFSF+opinion+on+chromium%2C+QtWebEngine%2C+electron%7D&submit=Search%21&idxname=directory-discuss&max=20&result=normal&sort=date%3Alate>.

Marius Bakke <mbakke@HIDDEN> writes:

> I tried picking two other Debian patches[0][1] to see if it helped with
> the annoying splash screen and decided to verify whether the browser
> still "calls home" from a clean profile.  The last time I checked was
> many versions ago.
>
> After dismissing the sign-in dialog, the "New Tab Page" loads a regular
> Google search bar, and "pre-fills" two of the "most commonly used" slots
> with Chrome URLs, (still) downloading a bunch of data in the process.
>
> Not great, but maybe we could live with that if it was just for the
> first run (it wasn't; had to change search engine to prevent the New Tab
> Page from calling the mothership).
>
> To my great surprise, while watching tcpdump from a different window, it
> also called home *when I switched windows*.  Every time the Chromium
> window was activated, some data was sent to Google servers.
>
> Going into settings and toggling the "Use a prediction service to help
> complete searches and URLs typed in the address bar" option (to off)
> disabled that behaviour.
>
> Not very confidence-instilling.
>
> I'm going to try to incorporate the "Inox Patchset"[2], which is a set
> of patches that attempts to remove all such misfeatures from Chromium.
> They seem to have managed to stay on top of recent Chromium development,
> unlike two other prominent privacy-focused "forks", so I'm optimistic.
>
> But it might take some weeks before the next update.  Stay tuned..
>
> [0]
> <https://anonscm.debian.org/cgit/pkg-chromium/pkg-chromium.git/tree/debian/patches/disable/promo.patch>
> [1]
> <https://anonscm.debian.org/cgit/pkg-chromium/pkg-chromium.git/tree/debian/patches/disable/external-components.patch>
> [2] <https://github.com/gcarq/inox-patchset>




Information forwarded to guix-patches@HIDDEN:
bug#28004; Package guix-patches. Full text available.

Message received at 28004 <at> debbugs.gnu.org:


Received: (at 28004) by debbugs.gnu.org; 5 Nov 2017 23:52:39 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sun Nov 05 18:52:39 2017
Received: from localhost ([127.0.0.1]:52784 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1eBUiU-0008Ht-0l
	for submit <at> debbugs.gnu.org; Sun, 05 Nov 2017 18:52:38 -0500
Received: from out4-smtp.messagingengine.com ([66.111.4.28]:48325)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <mbakke@HIDDEN>) id 1eBUiR-0008Hk-IV
 for 28004 <at> debbugs.gnu.org; Sun, 05 Nov 2017 18:52:36 -0500
Received: from compute5.internal (compute5.nyi.internal [10.202.2.45])
 by mailout.nyi.internal (Postfix) with ESMTP id 98A872098B;
 Sun,  5 Nov 2017 18:52:34 -0500 (EST)
Received: from frontend2 ([10.202.2.161])
 by compute5.internal (MEProxy); Sun, 05 Nov 2017 18:52:34 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=fastmail.com; h=
 cc:content-type:date:from:in-reply-to:message-id:mime-version
 :references:subject:to:x-me-sender:x-me-sender:x-sasl-enc; s=
 fm1; bh=QkjyRDmu/VK68ei00aDDdCT/1bWbhSSeZfDPWsz7Be4=; b=Od0M/8s2
 W13aBNvF0ocvcXN4hIZyzA5xTsntxSj9bOGmoZ/KJZ9npiu4EZA7LeOUScQ6uJHd
 W1lwS4ikM4ttjmSSGpD1LoMEbAJ0rb0fM3+ka4uT1x6pzLrcNoJtgywnBaR1K4hN
 r9gtjwa/Y77nDeuLXGBHkKvu37orsB9axhw6BqZRhXFPx1Z/mGe9CNPzAjf0GSEp
 96738pB6pPnMIAIYjyeeKT78JLWo0BcUJAwvqrhDGkTjzf34qjk06qH1y645PE8x
 1BbE5g4Xm18c3572l0NQ6Tq98If2oo6EX/J1qNYfVH3v6zzLepU+z6YHItQiBzLe
 g5dxrggFUW/xAA==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
 messagingengine.com; h=cc:content-type:date:from:in-reply-to
 :message-id:mime-version:references:subject:to:x-me-sender
 :x-me-sender:x-sasl-enc; s=fm1; bh=QkjyRDmu/VK68ei00aDDdCT/1bWbh
 SSeZfDPWsz7Be4=; b=bCKmy0mnEESbBwbsbXjGXoD7TCwGhjAFE3BgufTUwxbmO
 2EbfNgZyR8OJ9zbdu5udfIbGuDre9tnpziIN2VpLmxGMZXSSX1IeyrhINA4uGGuT
 Db972G+hTQnWCU+D8bjNAgL3jXS3FYD+btdpbKnauYi03HTuho4h9/sy7ACiGfNg
 aM/9Imz0r0DmmdKSKpwIXObCQg4tdfrZuBnVP2un6KSsGfePgWUks5ivxQwGw43Y
 LnF+fNoKpMvIVr5lKp9uSHvxNisZbnTZsvCxHeYg6Se0Lyd7+oJe880SWBWeNmFE
 8kxzaMQOsB11dNgZH7uSlG0iaskmnQMmXUunLLm0g==
X-ME-Sender: <xms:QqT_WXi9S22GUeFCc__rTjBVdHSjdSvf104AVAbCAenSCtrXgyjyOA>
Received: from localhost (cm-84.214.173.174.getinternet.no [84.214.173.174])
 by mail.messagingengine.com (Postfix) with ESMTPA id 25D47248BA;
 Sun,  5 Nov 2017 18:52:34 -0500 (EST)
From: Marius Bakke <mbakke@HIDDEN>
To: Ludovic =?utf-8?Q?Court=C3=A8s?= <ludo@HIDDEN>, Leo Famulari
 <leo@HIDDEN>
Subject: Re: [bug#28004] Chromium
In-Reply-To: <87o9p45bb6.fsf@HIDDEN>
References: <87y3qvb15k.fsf@HIDDEN>
 <20171010131949.y43plpzxbppvrigr@abyayala> <87lgkha2cx.fsf@HIDDEN>
 <20171012195628.GA31843@HIDDEN> <87shensfq6.fsf@HIDDEN>
 <87o9p45bb6.fsf@HIDDEN>
User-Agent: Notmuch/0.25.1 (https://notmuchmail.org) Emacs/25.3.1
 (x86_64-pc-linux-gnu)
Date: Mon, 06 Nov 2017 00:52:32 +0100
Message-ID: <87o9og4727.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: multipart/signed; boundary="=-=-=";
 micalg=pgp-sha512; protocol="application/pgp-signature"
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 28004
Cc: 28004 <at> debbugs.gnu.org, ng0 <ng0@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -0.7 (/)

--=-=-=
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable

Marius Bakke <mbakke@HIDDEN> writes:

> Ludovic Court=C3=A8s <ludo@HIDDEN> writes:
>
>> I think we should make sure that our package does not call home in any
>> way.  That=E2=80=99s what I expect from a security- and privacy-conscious
>> distro.
>
> Currently, it calls home at first launch, prompting for a login.  But
> I've verified that it does not send any unsolicited requests for
> subsequent startups, as long as the user does not change the
> command-line flags.

I tried picking two other Debian patches[0][1] to see if it helped with
the annoying splash screen and decided to verify whether the browser
still "calls home" from a clean profile.  The last time I checked was
many versions ago.

After dismissing the sign-in dialog, the "New Tab Page" loads a regular
Google search bar, and "pre-fills" two of the "most commonly used" slots
with Chrome URLs, (still) downloading a bunch of data in the process.

Not great, but maybe we could live with that if it was just for the
first run (it wasn't; had to change search engine to prevent the New Tab
Page from calling the mothership).

To my great surprise, while watching tcpdump from a different window, it
also called home *when I switched windows*.  Every time the Chromium
window was activated, some data was sent to Google servers.

Going into settings and toggling the "Use a prediction service to help
complete searches and URLs typed in the address bar" option (to off)
disabled that behaviour.

Not very confidence-instilling.

I'm going to try to incorporate the "Inox Patchset"[2], which is a set
of patches that attempts to remove all such misfeatures from Chromium.
They seem to have managed to stay on top of recent Chromium development,
unlike two other prominent privacy-focused "forks", so I'm optimistic.

But it might take some weeks before the next update.  Stay tuned..

[0] <https://anonscm.debian.org/cgit/pkg-chromium/pkg-chromium.git/tree/deb=
ian/patches/disable/promo.patch>
[1] <https://anonscm.debian.org/cgit/pkg-chromium/pkg-chromium.git/tree/deb=
ian/patches/disable/external-components.patch>
[2] <https://github.com/gcarq/inox-patchset>

--=-=-=
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQEzBAEBCgAdFiEEu7At3yzq9qgNHeZDoqBt8qM6VPoFAln/pEAACgkQoqBt8qM6
VPq3VwgAycCAXzPEfUOb40FCNfmgCvYld4O8BdaTtDXhFj6DzMqdVXq3jNddGpDn
xMKRHZPCEKFAzNeh2a+YAW2m1isPnw6EQywJl4jXnMSUVhFUSZiNQB4NTTVxYeCL
Z51yjQcYBBfJvcS0b40V2Lq0Ij8LRu4rasrLQICiHtypFxoOToy5640P3KVP9nAL
re1Y6IUL57YUzc0kEkgpspb0hh2gNOQb7/tW9H5v15Ecd0vhF57SYil1H+GNRbac
7hCK5D4MbDeYobrXo4pwjh4FPjwwA66/jPU0xV9C7YLLok7Upxa448P40qxhg95G
BtMhSAlvts54B7X1RPcLY0gaSE8CIg==
=1ceO
-----END PGP SIGNATURE-----
--=-=-=--




Information forwarded to guix-patches@HIDDEN:
bug#28004; Package guix-patches. Full text available.

Message received at 28004 <at> debbugs.gnu.org:


Received: (at 28004) by debbugs.gnu.org; 24 Oct 2017 21:11:29 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Oct 24 17:11:28 2017
Received: from localhost ([127.0.0.1]:60304 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1e76To-0003qF-RS
	for submit <at> debbugs.gnu.org; Tue, 24 Oct 2017 17:11:28 -0400
Received: from out4-smtp.messagingengine.com ([66.111.4.28]:51889)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <mbakke@HIDDEN>) id 1e76Ti-0003q0-Va
 for 28004 <at> debbugs.gnu.org; Tue, 24 Oct 2017 17:11:19 -0400
Received: from compute5.internal (compute5.nyi.internal [10.202.2.45])
 by mailout.nyi.internal (Postfix) with ESMTP id 52B1C20D82;
 Tue, 24 Oct 2017 17:11:13 -0400 (EDT)
Received: from frontend1 ([10.202.2.160])
 by compute5.internal (MEProxy); Tue, 24 Oct 2017 17:11:13 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=fastmail.com; h=
 cc:content-type:date:from:in-reply-to:message-id:mime-version
 :references:subject:to:x-me-sender:x-me-sender:x-sasl-enc; s=
 fm1; bh=lNZsqpl0v/BGO6ZIiyZn+j/MogwkxIMaBqp2zZA5L5M=; b=yNyPRIfo
 wroUnJXVPbaFhhItXQ73OSFJlrOJAhvlFGGMhYm27xbYTIbIOJBl/iHjNm853GJB
 M1Rj0ykJOS6vzKTL1Mv1STMJrO3Uc69z82rUtU2FDnq2J3P7OFCRW1NOSgVCl88F
 dBF27kFSodm9i9C+0GKaJQJ+YXh05H8DMQC1XB8NTAwcVsSXbpOSyAYhTDV/45fy
 r0AiYMYled7jl4ycp0oedyH3HtLVybb3E/zBP54wwk9JZvp9XYFPGQbC+udiU9N+
 h1rr0eu4P0yAw7FLYNtOmQmZ/GPIdB3q24tC6VLqvUacnuDBFbq6CH7bpD9Q9YBW
 od3U/dgEleYmmA==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
 messagingengine.com; h=cc:content-type:date:from:in-reply-to
 :message-id:mime-version:references:subject:to:x-me-sender
 :x-me-sender:x-sasl-enc; s=fm1; bh=lNZsqpl0v/BGO6ZIiyZn+j/Mogwkx
 IMaBqp2zZA5L5M=; b=IJp/vxTonEbExDi85HdShfLVGnlQARAuqE1c81PDf0G/7
 K139o4hulKRe4V9ZvLnfDCChw6fyn0oaOYYASPlNNjU/yKbcM99EZecLrb2n5TAh
 LKH7o+H8cImZWdwW9YWnyrohaNrV1yz8gZ9aQa20pnMKKTxzad/kLqpyaw6y3Gca
 SDLSMdpPTdlNqZZsCYH9cbLDNtGTSKyqe+Yp4GQzXfxtWum9Rxg1r7g5qGcscZCn
 LqNM6x1OGiFrdwDciB0C+likwt3qEoD7CsRYaptu8JirDwR7VRXtlUigaphbG3LT
 k8RjRLZxAGj0Ink+EGQt4qYrg58xltdhCdcFu/J2w==
X-ME-Sender: <xms:cazvWeJsgD07OmYtxhG8BwzymLn72eDF6BJlynnsQq3V2T0XNQAAgg>
Received: from localhost (cm-84.214.173.174.getinternet.no [84.214.173.174])
 by mail.messagingengine.com (Postfix) with ESMTPA id 356B47FA6B;
 Tue, 24 Oct 2017 17:11:12 -0400 (EDT)
From: Marius Bakke <mbakke@HIDDEN>
To: Leo Famulari <leo@HIDDEN>
Subject: Re: [bug#28004] Chromium
In-Reply-To: <87o9p45bb6.fsf@HIDDEN>
References: <87y3qvb15k.fsf@HIDDEN>
 <20171010131949.y43plpzxbppvrigr@abyayala> <87lgkha2cx.fsf@HIDDEN>
 <20171012195628.GA31843@HIDDEN> <87shensfq6.fsf@HIDDEN>
 <87o9p45bb6.fsf@HIDDEN>
User-Agent: Notmuch/0.25.1 (https://notmuchmail.org) Emacs/25.3.1
 (x86_64-pc-linux-gnu)
Date: Tue, 24 Oct 2017 23:11:10 +0200
Message-ID: <87efpsz1xt.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: multipart/signed; boundary="==-=-=";
 micalg=pgp-sha512; protocol="application/pgp-signature"
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 28004
Cc: 28004 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: 0.0 (/)

--==-=-=
Content-Type: multipart/mixed; boundary="=-=-="

--=-=-=
Content-Type: text/plain

Marius Bakke <mbakke@HIDDEN> writes:

> Anyway I'm attaching the current iteration of this patch.  Chromium 62
> is out today, I'll try to update this weekend and will push it after
> that in lieu of other feedback.

Here is the interdiff for the 62 upgrade.  I mixed in some unrelated
changes after reading through Debians 61 refresh[0] and Archs 62
update[1], but overall it was straightforward (apart from the slow
hack-test-fix cycle).


--=-=-=
Content-Type: text/x-patch
Content-Disposition: inline; filename=chromium-62.diff
Content-Transfer-Encoding: quoted-printable

diff --git a/gnu/packages/chromium.scm b/gnu/packages/chromium.scm
index 5693b70ff..f5ee95c2f 100644
=2D-- a/gnu/packages/chromium.scm
+++ b/gnu/packages/chromium.scm
@@ -32,6 +32,7 @@
   #:use-module (gnu packages curl)
   #:use-module (gnu packages databases)
   #:use-module (gnu packages fontutils)
+  #:use-module (gnu packages ghostscript)
   #:use-module (gnu packages gl)
   #:use-module (gnu packages glib)
   #:use-module (gnu packages gnome)
@@ -84,7 +85,7 @@ HTTP(S) URI that returns a file with the given HASH."
               ,@(package-arguments opus)))))
=20
 ;; Chromium since 58 depends on an unreleased libvpx. So, we
=2D;; package the latest master branch as of 2017-10-12.
+;; package the latest master branch as of 2017-10-22.
 (define libvpx+experimental
   (package
     (inherit libvpx)
@@ -92,11 +93,11 @@ HTTP(S) URI that returns a file with the given HASH."
               (method git-fetch)
               (uri (git-reference
                     (url "https://chromium.googlesource.com/webm/libvpx")
=2D                    (commit "175b36cb6d2811c721d63277ba953ea817f32361")))
+                    (commit "b58259ab55674cb028898a0ac9e8fdd3cf1d4b39")))
               (file-name "libvpx-for-chromium-checkout")
               (sha256
                (base32
=2D                "1j8ni29mcj74lfsc0hsha22zzp24ig53iki0id5bdfhzl8q1rpyk"))=
))
+                "0grx2p7add0qyycqvqiv3djk0i37xrg75phszg5mwnwd3ijv3qzj"))))
     ;; TODO: Make libvpx configure flags overrideable.
     (arguments
      `(#:phases
@@ -122,27 +123,15 @@ HTTP(S) URI that returns a file with the given HASH."
 (define %chromium-gn-bootstrap.patch
   (remote-patch "chromium-gn-bootstrap.patch"
                 "https://gitweb.gentoo.org/repo/gentoo.git/plain/www-clien=
t/\
=2Dchromium/files/chromium-gn-bootstrap-r14.patch?id=3D\
=2D900e6203d4015711887137bcd03c913361dbf41f"
=2D                "1050abvq24s1a5vd97d5ljb8bmv0wcdgkj3vk0scygkr1954qy4q"))
=2D
=2D(define %chromium-gcc-compat.patch
=2D  (remote-patch "chromium-gcc-compat.patch"
=2D                "https://gitweb.gentoo.org/repo/gentoo.git/plain/www-cli=
ent/\
=2Dchromium/files/chromium-gcc-r1.patch?id=3D506399c6ac2ace6501429925a608db=
9d7e502bde"
=2D                "0n5bc1ckq83vlfzh5k3frh7cp7hyhxii89iq2v4jg46lblqgxkqi"))
+chromium/files/chromium-gn-bootstrap-r17.patch?id=3D\
+5c9cf110bd61fa287a5c536760b5d8ed13f65d52"
+                "12wsq3bs46mvr7cinxvqjmbzymigm8yzf478r08y9l6sd3qij4yq"))
=20
 (define %chromium-gcc-5-compat.patch
   (remote-patch "chromium-gcc-5-compat.patch"
                 "https://gitweb.gentoo.org/repo/gentoo.git/plain/www-clien=
t/\
=2Dchromium/files/chromium-gcc5-r1.patch?id=3D506399c6ac2ace6501429925a608d=
b9d7e502bde"
=2D                "0jz9sg24yzimcass3c3myynp3sf2c1rasrcwh7jn1gbbj4yp7j8v"))
=2D
=2D(define %chromium-atk-compat.patch
=2D  (remote-patch "chromium-atk-compat.patch"
=2D                "https://gitweb.gentoo.org/repo/gentoo.git/plain/www-cli=
ent/\
=2Dchromium/files/chromium-atk-r1.patch?id=3D506399c6ac2ace6501429925a608db=
9d7e502bde"
=2D                "13g9g1k9f3fqpgjhnlqvf5np6m58czr57zq1fqdf5y5nfyxrl3pw"))
+chromium/files/chromium-gcc5-r3.patch?id=3D5c9cf110bd61fa287a5c536760b5d8e=
d13f65d52"
+                "0qwl396w2bnc4ww71q3621chh9rfnw1m3w6nbd55sbhq8yz6jnx0"))
=20
 (define %chromium-system-nspr.patch
   (remote-patch "chromium-system-nspr.patch"
@@ -159,7 +148,7 @@ plain/debian/patches/system/event.patch?id=3D64458c4216=
edd82503dc9366e2f4d80ae7c76
 (define-public chromium
   (package
     (name "chromium")
=2D    (version "61.0.3163.100")
+    (version "62.0.3202.62")
     (synopsis "Graphical web browser")
     (source (origin
               (method url-fetch)
@@ -168,13 +157,12 @@ plain/debian/patches/system/event.patch?id=3D64458c42=
16edd82503dc9366e2f4d80ae7c76
                                   version ".tar.xz"))
               (sha256
                (base32
=2D                "06r89jim9cq87668ya8wwk69hh17rl04cj94nb9c28v6mj69cda1"))
+                "0qn3pjq5n3ri3qh25wg5gd2as5a8wlkncqvi975xsab771833pz8"))
               (patches (append (list %chromium-gn-bootstrap.patch
=2D                                     %chromium-atk-compat.patch
=2D                                     %chromium-gcc-compat.patch
                                      %chromium-gcc-5-compat.patch
                                      %chromium-system-nspr.patch
=2D                                     %chromium-system-libevent.patch)
+                                     %chromium-system-libevent.patch
+                                     )
                                (search-patches
                                 "chromium-system-icu.patch"
                                 "chromium-disable-api-keys-warning.patch"
@@ -271,6 +259,7 @@ plain/debian/patches/system/event.patch?id=3D64458c4216=
edd82503dc9366e2f4d80ae7c76
                      "third_party/catapult/tracing/third_party/oboe"
                      "third_party/ced"
                      "third_party/cld_3"
+                     "third_party/crc32c"
                      "third_party/cros_system_api"
                      "third_party/dom_distiller_js"
                      "third_party/fips181"
@@ -307,7 +296,7 @@ plain/debian/patches/system/event.patch?id=3D64458c4216=
edd82503dc9366e2f4d80ae7c76
                      "third_party/modp_b64"
                      "third_party/mt19937ar"
                      "third_party/node"
=2D                     "third_party/node/node_modules/vulcanize/third_part=
y/UglifyJS2"
+                     "third_party/node/node_modules/polymer-bundler/lib/th=
ird_party/UglifyJS2"
                      "third_party/openmax_dl"
                      "third_party/ots"
                      "third_party/pdfium" ;TODO: can be built standalone.
@@ -320,6 +309,7 @@ plain/debian/patches/system/event.patch?id=3D64458c4216=
edd82503dc9366e2f4d80ae7c76
                      "third_party/sfntly"
                      "third_party/skia"
                      "third_party/skia/third_party/vulkan"
+                     "third_party/skia/third_party/gif"
                      "third_party/smhasher"
                      ;; XXX the sources that include this are generated.
                      "third_party/speech-dispatcher"
@@ -419,9 +409,14 @@ plain/debian/patches/system/event.patch?id=3D64458c421=
6edd82503dc9366e2f4d80ae7c76
                      "linux_use_bundled_binutils=3Dfalse"
                      "use_custom_libcxx=3Dfalse"
                      "use_sysroot=3Dfalse"
+                     "goma_dir=3D\"\""
+                     "use_jumbo_build=3Dtrue"     ;speeds up compilation
+                     "enable_precompiled_headers=3Dfalse"
                      "remove_webcore_debug_symbols=3Dtrue"
                      "enable_iterator_debugging=3Dfalse"
+                     "exclude_unwind_tables=3Dtrue"
                      "override_build_date=3D\"01 01 2000 05:00:00\""
+                     "use_unofficial_version_number=3Dfalse"
                      ;; Don't fail when using deprecated ffmpeg features.
                      "treat_warnings_as_errors=3Dfalse"
                      "enable_nacl=3Dfalse"
@@ -433,8 +428,14 @@ plain/debian/patches/system/event.patch?id=3D64458c421=
6edd82503dc9366e2f4d80ae7c76
                      "use_official_google_api_keys=3Dfalse"
                      ;; Disable "field trials".
                      "fieldtrial_testing_like_official_build=3Dtrue"
+                     "enable_reading_list=3Dfalse"
+                     ;;"enable_reporting=3Dfalse"   ;XXX breaks the build
=20
+                     "use_openh264=3Dtrue"
+                     "use_system_freetype=3Dtrue"
                      "use_system_libjpeg=3Dtrue"
+                     "use_system_lcms2=3Dtrue"
+                     "use_system_zlib=3Dtrue"
                      ;; This is currently not supported on Linux:
                      ;; https://bugs.chromium.org/p/chromium/issues/detail=
?id=3D22208
                      ;; "use_system_sqlite=3Dtrue"
@@ -443,7 +444,6 @@ plain/debian/patches/system/event.patch?id=3D64458c4216=
edd82503dc9366e2f4d80ae7c76
                      "use_gnome_keyring=3Dfalse" ; deprecated by libsecret
                      "use_xkbcommon=3Dtrue"
                      "link_pulseaudio=3Dtrue"
=2D                     "use_openh264=3Dtrue"
=20
                      ;; Don't arbitrarily restrict formats supported by sy=
stem ffmpeg.
                      "proprietary_codecs=3Dtrue"
@@ -454,7 +454,6 @@ plain/debian/patches/system/event.patch?id=3D64458c4216=
edd82503dc9366e2f4d80ae7c76
                      ;; Don't use bundled sources.
                      "rtc_build_json=3Dfalse"
                      "rtc_build_libevent=3Dfalse"
=2D                     "rtc_build_libjpeg=3Dfalse"
                      "rtc_build_libvpx=3Dfalse"
                      "rtc_build_opus=3Dfalse"
                      "rtc_build_ssl=3Dfalse"
@@ -595,8 +594,9 @@ plain/debian/patches/system/event.patch?id=3D64458c4216=
edd82503dc9366e2f4d80ae7c76
        ("gtk+-2" ,gtk+-2)
        ("gtk+" ,gtk+)
        ("harfbuzz" ,harfbuzz)
=2D       ("icu4c" ,icu4c)
+       ("icu4c" ,icu4c-59.1)
        ("jsoncpp" ,jsoncpp)
+       ("lcms" ,lcms)
        ("libevent" ,libevent)
        ("libffi" ,libffi)
        ("libjpeg-turbo" ,libjpeg-turbo)
diff --git a/gnu/packages/icu4c.scm b/gnu/packages/icu4c.scm
index 55bc9f203..b12de6ff0 100644
=2D-- a/gnu/packages/icu4c.scm
+++ b/gnu/packages/icu4c.scm
@@ -80,6 +81,23 @@ C/C++ part.")
                          (origin-patches (package-source icu4c))
                          (search-patches "icu4c-CVE-2017-14952.patch")))))=
))
=20
+(define-public icu4c-59.1
+  (package
+    (inherit icu4c)
+    (version "59.1")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append
+                    "http://download.icu-project.org/files/icu4c/"
+                    version
+                    "/icu4c-"
+                    (string-map (lambda (x) (if (char=3D? x #\.) #\_ x)) v=
ersion)
+                    "-src.tgz"))
+              (patches (search-patches "icu4c-CVE-2017-14952.patch"))
+              (sha256
+               (base32
+                "1zkmbg2932ggvpgjp8pys0cj6z8bw087y8858009shkrjfpzscki"))))=
))
+
 (define-public java-icu4j
   (package
     (name "java-icu4j")

--=-=-=
Content-Type: text/plain


Below is the full patch for convenience.  I plan to commit it on Friday
or Saturday, after a cosmetic check.  Especially the description could
use some work, and the grouping of "configure flags".

One final note for future contributors is that Gentoo[2] is kind-of
upstream for Chromium, as ChromiumOS is based on Portage and I've seen
several Gentoo developers on the Chromium bug tracker.  They often have
early compatibility patches (e.g. when it invariably breaks with GCC).

[0] https://anonscm.debian.org/cgit/pkg-chromium/pkg-chromium.git/commit/?id=794aa1820460727711e534ea1042db7eebc1601d
[1] https://git.archlinux.org/svntogit/packages.git/commit/trunk?h=packages/chromium&id=6ebdd8085de0b7c8bbc66e47b937271ab4a85fbd
[2] https://gitweb.gentoo.org/repo/gentoo.git/tree/www-client/chromium


--=-=-=
Content-Type: text/x-patch; charset=utf-8
Content-Disposition: attachment; filename=0001-gnu-Add-chromium.patch
Content-Transfer-Encoding: quoted-printable

From=20021bccfd3fc3bf0e912d27cef9ca2de36346a379 Mon Sep 17 00:00:00 2001
From: Marius Bakke <mbakke@HIDDEN>
Date: Wed, 12 Oct 2016 17:25:05 +0100
Subject: [PATCH] gnu: Add chromium.

* gnu/packages/chromium.scm: New file.
* gnu/packages/patches/chromium-disable-api-keys-warning.patch,
  gnu/packages/patches/chromium-disable-third-party-cookies.patch,
  gnu/packages/patches/chromium-system-icu.patch: New files.
* gnu/local.mk: Record it.
* gnu/packages/icu4c.scm (icu-59.1): New variable.
=2D--
 gnu/local.mk                                       |   4 +
 gnu/packages/chromium.scm                          | 650 +++++++++++++++++=
++++
 gnu/packages/icu4c.scm                             |  18 +
 .../chromium-disable-api-keys-warning.patch        |  17 +
 .../chromium-disable-third-party-cookies.patch     |  13 +
 gnu/packages/patches/chromium-system-icu.patch     |  15 +
 6 files changed, 717 insertions(+)
 create mode 100644 gnu/packages/chromium.scm
 create mode 100644 gnu/packages/patches/chromium-disable-api-keys-warning.=
patch
 create mode 100644 gnu/packages/patches/chromium-disable-third-party-cooki=
es.patch
 create mode 100644 gnu/packages/patches/chromium-system-icu.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index f2044c985..274dcc87f 100644
=2D-- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -87,6 +87,7 @@ GNU_SYSTEM_MODULES =3D				\
   %D%/packages/certs.scm			\
   %D%/packages/check.scm			\
   %D%/packages/chez.scm				\
+  %D%/packages/chromium.scm			\
   %D%/packages/ci.scm				\
   %D%/packages/cinnamon.scm			\
   %D%/packages/cmake.scm			\
@@ -560,6 +561,9 @@ dist_patch_DATA =3D						\
   %D%/packages/patches/chicken-CVE-2017-6949.patch		\
   %D%/packages/patches/chicken-CVE-2017-11343.patch		\
   %D%/packages/patches/chmlib-inttypes.patch			\
+  %D%/packages/patches/chromium-disable-api-keys-warning.patch	\
+  %D%/packages/patches/chromium-disable-third-party-cookies.patch	\
+  %D%/packages/patches/chromium-system-icu.patch		\
   %D%/packages/patches/clang-libc-search-path.patch		\
   %D%/packages/patches/clang-3.8-libc-search-path.patch		\
   %D%/packages/patches/clisp-remove-failing-test.patch		\
diff --git a/gnu/packages/chromium.scm b/gnu/packages/chromium.scm
new file mode 100644
index 000000000..f5ee95c2f
=2D-- /dev/null
+++ b/gnu/packages/chromium.scm
@@ -0,0 +1,650 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright =C2=A9 2016, 2017 Marius Bakke <mbakke@HIDDEN>
+;;;
+;;; This file is part of GNU Guix.
+;;;
+;;; GNU Guix is free software; you can redistribute it and/or modify it
+;;; under the terms of the GNU General Public License as published by
+;;; the Free Software Foundation; either version 3 of the License, or (at
+;;; your option) any later version.
+;;;
+;;; GNU Guix is distributed in the hope that it will be useful, but
+;;; WITHOUT ANY WARRANTY; without even the implied warranty of
+;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+;;; GNU General Public License for more details.
+;;;
+;;; You should have received a copy of the GNU General Public License
+;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
+
+(define-module (gnu packages chromium)
+  #:use-module ((guix licenses) #:prefix license:)
+  #:use-module (guix packages)
+  #:use-module (guix download)
+  #:use-module (guix git-download)
+  #:use-module (guix utils)
+  #:use-module (guix build-system gnu)
+  #:use-module (gnu packages)
+  #:use-module (gnu packages assembly)
+  #:use-module (gnu packages base)
+  #:use-module (gnu packages bison)
+  #:use-module (gnu packages compression)
+  #:use-module (gnu packages cups)
+  #:use-module (gnu packages curl)
+  #:use-module (gnu packages databases)
+  #:use-module (gnu packages fontutils)
+  #:use-module (gnu packages ghostscript)
+  #:use-module (gnu packages gl)
+  #:use-module (gnu packages glib)
+  #:use-module (gnu packages gnome)
+  #:use-module (gnu packages gnuzilla)
+  #:use-module (gnu packages gperf)
+  #:use-module (gnu packages gtk)
+  #:use-module (gnu packages icu4c)
+  #:use-module (gnu packages image)
+  #:use-module (gnu packages libevent)
+  #:use-module (gnu packages libffi)
+  #:use-module (gnu packages libusb)
+  #:use-module (gnu packages linux)
+  #:use-module (gnu packages kerberos)
+  #:use-module (gnu packages ninja)
+  #:use-module (gnu packages node)
+  #:use-module (gnu packages pciutils)
+  #:use-module (gnu packages photo)
+  #:use-module (gnu packages pkg-config)
+  #:use-module (gnu packages protobuf)
+  #:use-module (gnu packages pulseaudio)
+  #:use-module (gnu packages python)
+  #:use-module (gnu packages regex)
+  #:use-module (gnu packages serialization)
+  #:use-module (gnu packages speech)
+  #:use-module (gnu packages tls)
+  #:use-module (gnu packages valgrind)
+  #:use-module (gnu packages version-control)
+  #:use-module (gnu packages video)
+  #:use-module (gnu packages xiph)
+  #:use-module (gnu packages xml)
+  #:use-module (gnu packages xdisorg)
+  #:use-module (gnu packages xorg))
+
+(define (remote-patch file-name uri hash)
+  "Return an <origin> object with the given FILE-NAME.  URI must be a FTP =
or
+HTTP(S) URI that returns a file with the given HASH."
+  (origin
+    (method url-fetch)
+    (uri uri)
+    (sha256 (base32 hash))
+    (file-name file-name)))
+
+(define opus+custom
+  (package (inherit opus)
+           (arguments
+            `(;; Opus Custom is an optional extension of the Opus
+              ;; specification that allows for unsupported frame
+              ;; sizes. Chromium requires that this is enabled.
+              #:configure-flags '("--enable-custom-modes")
+              ,@(package-arguments opus)))))
+
+;; Chromium since 58 depends on an unreleased libvpx. So, we
+;; package the latest master branch as of 2017-10-22.
+(define libvpx+experimental
+  (package
+    (inherit libvpx)
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://chromium.googlesource.com/webm/libvpx")
+                    (commit "b58259ab55674cb028898a0ac9e8fdd3cf1d4b39")))
+              (file-name "libvpx-for-chromium-checkout")
+              (sha256
+               (base32
+                "0grx2p7add0qyycqvqiv3djk0i37xrg75phszg5mwnwd3ijv3qzj"))))
+    ;; TODO: Make libvpx configure flags overrideable.
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (replace 'configure
+           (lambda* (#:key outputs #:allow-other-keys)
+             (setenv "CONFIG_SHELL" (which "bash"))
+             (let ((out (assoc-ref outputs "out")))
+               (setenv "LDFLAGS"
+                       (string-append "-Wl,-rpath=3D" out "/lib"))
+               (zero? (system* "./configure"
+                               "--enable-shared"
+                               "--as=3Dyasm"
+                               ;; Limit size to avoid CVE-2015-1258
+                               "--size-limit=3D16384x16384"
+                               ;; Spatial SVC is an experimental VP9 encod=
er
+                               ;; used by some packages (i.e. Chromium).
+                               "--enable-experimental"
+                               "--enable-spatial-svc"
+                               (string-append "--prefix=3D" out)))))))
+       #:tests? #f)))) ; No tests.
+
+(define %chromium-gn-bootstrap.patch
+  (remote-patch "chromium-gn-bootstrap.patch"
+                "https://gitweb.gentoo.org/repo/gentoo.git/plain/www-clien=
t/\
+chromium/files/chromium-gn-bootstrap-r17.patch?id=3D\
+5c9cf110bd61fa287a5c536760b5d8ed13f65d52"
+                "12wsq3bs46mvr7cinxvqjmbzymigm8yzf478r08y9l6sd3qij4yq"))
+
+(define %chromium-gcc-5-compat.patch
+  (remote-patch "chromium-gcc-5-compat.patch"
+                "https://gitweb.gentoo.org/repo/gentoo.git/plain/www-clien=
t/\
+chromium/files/chromium-gcc5-r3.patch?id=3D5c9cf110bd61fa287a5c536760b5d8e=
d13f65d52"
+                "0qwl396w2bnc4ww71q3621chh9rfnw1m3w6nbd55sbhq8yz6jnx0"))
+
+(define %chromium-system-nspr.patch
+  (remote-patch "chromium-system-nspr.patch"
+                "https://anonscm.debian.org/cgit/pkg-chromium/pkg-chromium=
.git/\
+plain/debian/patches/system/nspr.patch?id=3D64458c4216edd82503dc9366e2f4d8=
0ae7c763b0"
+                "0l69sq3w9n5zygykf1gfzp1zfb7gkjk62nnvbrmkn00gzq6cc643"))
+
+(define %chromium-system-libevent.patch
+  (remote-patch "chromium-system-libevent.patch"
+                "https://anonscm.debian.org/cgit/pkg-chromium/pkg-chromium=
.git/\
+plain/debian/patches/system/event.patch?id=3D64458c4216edd82503dc9366e2f4d=
80ae7c763b0"
+                "0vibc92kwycm8jlyfa49135nq0flm6gkrf8ic76m5rkraclijvn9"))
+
+(define-public chromium
+  (package
+    (name "chromium")
+    (version "62.0.3202.62")
+    (synopsis "Graphical web browser")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "https://commondatastorage.googleapis.co=
m/"
+                                  "chromium-browser-official/chromium-"
+                                  version ".tar.xz"))
+              (sha256
+               (base32
+                "0qn3pjq5n3ri3qh25wg5gd2as5a8wlkncqvi975xsab771833pz8"))
+              (patches (append (list %chromium-gn-bootstrap.patch
+                                     %chromium-gcc-5-compat.patch
+                                     %chromium-system-nspr.patch
+                                     %chromium-system-libevent.patch
+                                     )
+                               (search-patches
+                                "chromium-system-icu.patch"
+                                "chromium-disable-api-keys-warning.patch"
+                                "chromium-disable-third-party-cookies.patc=
h")))
+              (modules '((srfi srfi-1)
+                         (guix build utils)))
+              (snippet
+               '(begin
+                  ;; Replace GN files from third_party with shims for buil=
ding
+                  ;; against system libraries.  Keep this list in sync with
+                  ;; "build/linux/unbundle/replace_gn_files.py".
+                  (for-each (lambda (pair)
+                              (let ((source (string-append
+                                             "build/linux/unbundle/" (car =
pair)))
+                                    (dest (cdr pair)))
+                                (copy-file source dest)))
+                            (list
+                             '("ffmpeg.gn" . "third_party/ffmpeg/BUILD.gn")
+                             '("flac.gn" . "third_party/flac/BUILD.gn")
+                             '("freetype.gn" . "third_party/freetype/BUILD=
.gn")
+                             '("harfbuzz-ng.gn" . "third_party/harfbuzz-ng=
/BUILD.gn")
+                             '("icu.gn" . "third_party/icu/BUILD.gn")
+                             '("libdrm.gn" . "third_party/libdrm/BUILD.gn")
+                             '("libevent.gn" . "base/third_party/libevent/=
BUILD.gn")
+                             '("libjpeg.gn" .
+                               "build/secondary/third_party/libjpeg_turbo/=
BUILD.gn")
+                             '("libpng.gn" . "third_party/libpng/BUILD.gn")
+                             '("libvpx.gn" . "third_party/libvpx/BUILD.gn")
+                             '("libwebp.gn" . "third_party/libwebp/BUILD.g=
n")
+                             ;;'("libxml.gn" . "third_party/libxml/BUILD.g=
n") ;TODO
+                             '("libxslt.gn" . "third_party/libxslt/BUILD.g=
n")
+                             '("openh264.gn" . "third_party/openh264/BUILD=
.gn")
+                             '("opus.gn" . "third_party/opus/BUILD.gn")
+                             '("re2.gn" . "third_party/re2/BUILD.gn")
+                             '("snappy.gn" . "third_party/snappy/BUILD.gn")
+                             '("yasm.gn" . "third_party/yasm/yasm_assemble=
.gni")
+                             '("zlib.gn" . "third_party/zlib/BUILD.gn")))
+                  #t))))
+    (build-system gnu-build-system)
+    (arguments
+     `(#:tests? #f ; TODO: Maybe run --headless or something.
+       ;; FIXME: There is a "gn" option specifically for setting -rpath, b=
ut
+       ;; it's not recognized when passed.
+       #:validate-runpath? #f
+       #:modules ((srfi srfi-26)
+                  (ice-9 ftw)
+                  (ice-9 regex)
+                  (guix build gnu-build-system)
+                  (guix build utils))
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'remove-bundled-software
+           (lambda _
+             (let ((keep-libs
+                    (list
+                     ;; Third party folders that cannot be deleted yet.
+                     "base/third_party/dmg_fp"
+                     "base/third_party/dynamic_annotations"
+                     "base/third_party/icu"
+                     "base/third_party/libevent"
+                     "base/third_party/nspr"
+                     "base/third_party/superfasthash"
+                     "base/third_party/symbolize" ; glog
+                     "base/third_party/xdg_mime"
+                     "base/third_party/xdg_user_dirs"
+                     "buildtools/third_party/libc++"
+                     "chrome/third_party/mozilla_security_manager"
+                     "courgette/third_party"
+                     "net/third_party/mozilla_security_manager"
+                     "net/third_party/nss"
+                     "third_party/adobe/flash/flapper_version.h"
+                     ;; FIXME: This is used in:
+                     ;; * ui/webui/resources/js/analytics.js
+                     ;; * ui/file_manager/
+                     "third_party/analytics"
+                     "third_party/angle"
+                     "third_party/angle/src/common/third_party/base"
+                     "third_party/angle/src/common/third_party/murmurhash"
+                     "third_party/angle/src/third_party/compiler"
+                     "third_party/angle/src/third_party/libXNVCtrl"
+                     "third_party/angle/src/third_party/trace_event"
+                     "third_party/boringssl"
+                     "third_party/brotli"
+                     "third_party/cacheinvalidation"
+                     "third_party/catapult"
+                     "third_party/catapult/third_party/polymer"
+                     "third_party/catapult/third_party/py_vulcanize"
+                     "third_party/catapult/third_party/py_vulcanize/third_=
party/rcssmin"
+                     "third_party/catapult/third_party/py_vulcanize/third_=
party/rjsmin"
+                     "third_party/catapult/tracing/third_party/d3"
+                     "third_party/catapult/tracing/third_party/gl-matrix"
+                     "third_party/catapult/tracing/third_party/jszip"
+                     "third_party/catapult/tracing/third_party/mannwhitney=
u"
+                     "third_party/catapult/tracing/third_party/oboe"
+                     "third_party/ced"
+                     "third_party/cld_3"
+                     "third_party/crc32c"
+                     "third_party/cros_system_api"
+                     "third_party/dom_distiller_js"
+                     "third_party/fips181"
+                     "third_party/flatbuffers"
+                     ;; XXX Needed by pdfium since 59.
+                     "third_party/freetype"
+                     "third_party/glslang-angle"
+                     "third_party/google_input_tools"
+                     "third_party/google_input_tools/third_party/closure_l=
ibrary"
+                     (string-append "third_party/google_input_tools/third_=
party"
+                                    "/closure_library/third_party/closure")
+                     "third_party/googletest"
+                     "third_party/hunspell"
+                     "third_party/iccjpeg"
+                     "third_party/inspector_protocol"
+                     "third_party/jinja2"
+                     "third_party/jstemplate"
+                     "third_party/khronos"
+                     "third_party/leveldatabase"
+                     "third_party/libXNVCtrl"
+                     "third_party/libaddressinput"
+                     "third_party/libjingle_xmpp"
+                     "third_party/libphonenumber"
+                     "third_party/libsecret" ;FIXME: needs pkg-config supp=
ort.
+                     "third_party/libsrtp"   ;TODO: Requires libsrtp@2.
+                     "third_party/libudev"
+                     "third_party/libwebm"
+                     "third_party/libxml" ;FIXME: Unbundle (again).
+                     "third_party/libyuv"
+                     "third_party/lss"
+                     "third_party/lzma_sdk"
+                     "third_party/markupsafe"
+                     "third_party/mesa"
+                     "third_party/modp_b64"
+                     "third_party/mt19937ar"
+                     "third_party/node"
+                     "third_party/node/node_modules/polymer-bundler/lib/th=
ird_party/UglifyJS2"
+                     "third_party/openmax_dl"
+                     "third_party/ots"
+                     "third_party/pdfium" ;TODO: can be built standalone.
+                     "third_party/pdfium/third_party"
+                     "third_party/ply"
+                     "third_party/polymer"
+                     "third_party/protobuf"
+                     "third_party/protobuf/third_party/six"
+                     "third_party/qcms"
+                     "third_party/sfntly"
+                     "third_party/skia"
+                     "third_party/skia/third_party/vulkan"
+                     "third_party/skia/third_party/gif"
+                     "third_party/smhasher"
+                     ;; XXX the sources that include this are generated.
+                     "third_party/speech-dispatcher"
+                     "third_party/spirv-headers"
+                     "third_party/spirv-tools-angle"
+                     "third_party/sqlite"
+                     "third_party/swiftshader"
+                     "third_party/swiftshader/third_party"
+                     "third_party/usb_ids"
+                     "third_party/usrsctp"
+                     "third_party/vulkan"
+                     "third_party/vulkan-validation-layers"
+                     "third_party/WebKit"
+                     "third_party/web-animations-js"
+                     "third_party/webrtc"
+                     "third_party/widevine/cdm/widevine_cdm_version.h"
+                     "third_party/widevine/cdm/widevine_cdm_common.h"
+                     "third_party/woff2"
+                     "third_party/xdg-utils"
+                     "third_party/yasm/run_yasm.py"
+                     "third_party/zlib/google"
+                     "url/third_party/mozilla"
+                     "v8/src/third_party/valgrind"
+                     "v8/third_party/inspector_protocol")))
+               ;; FIXME: implement as source snippet. This traverses
+               ;; any "third_party" directory and deletes files that are:
+               ;; * not ending with ".gn" or ".gni"; or
+               ;; * not explicitly named as argument (folder or file).
+               (zero? (apply system* "python"
+                             "build/linux/unbundle/remove_bundled_librarie=
s.py"
+                             "--do-remove" keep-libs)))))
+         (add-after 'remove-bundled-software 'patch-stuff
+           (lambda* (#:key inputs #:allow-other-keys)
+             (substitute* "printing/cups_config_helper.py"
+               (("cups_config =3D.*")
+                (string-append "cups_config =3D '" (assoc-ref inputs "cups=
")
+                               "/bin/cups-config'\n")))
+
+             (substitute*
+                 '("base/process/launch_posix.cc"
+                   "base/tracked_objects.cc"
+                   "base/third_party/dynamic_annotations/dynamic_annotatio=
ns.c"
+                   "sandbox/linux/seccomp-bpf/sandbox_bpf.cc"
+                   "sandbox/linux/services/credentials.cc"
+                   "sandbox/linux/services/namespace_utils.cc"
+                   "sandbox/linux/services/syscall_wrappers.cc"
+                   "sandbox/linux/syscall_broker/broker_host.cc")
+               (("include \"base/third_party/valgrind/") "include \"valgri=
nd/"))
+
+             (for-each (lambda (file)
+                         (substitute* file
+                           ;; Fix opus include path.
+                           ;; Do not substitute opus_private.h.
+                           (("#include \"opus\\.h\"")
+                            "#include \"opus/opus.h\"")
+                           (("#include \"opus_custom\\.h\"")
+                            "#include \"opus/opus_custom.h\"")
+                           (("#include \"opus_defines\\.h\"")
+                            "#include \"opus/opus_defines.h\"")
+                           (("#include \"opus_multistream\\.h\"")
+                            "#include \"opus/opus_multistream.h\"")
+                           (("#include \"opus_types\\.h\"")
+                            "#include \"opus/opus_types.h\"")))
+                       (append (find-files "third_party/opus/src/celt")
+                               (find-files "third_party/opus/src/src")
+                               (find-files (string-append "third_party/web=
rtc/modules"
+                                                          "/audio_coding/c=
odecs/opus"))))
+
+             (substitute* "chrome/common/chrome_paths.cc"
+               (("/usr/share/chromium/extensions")
+                ;; TODO: Add ~/.guix-profile.
+                "/run/current-system/profile/share/chromium/extensions"))
+
+             (substitute* "breakpad/src/common/linux/libcurl_wrapper.h"
+               (("include \"third_party/curl") "include \"curl"))
+             (substitute* "media/base/decode_capabilities.cc"
+               (("third_party/libvpx/source/libvpx/") ""))
+
+             ;; We don't cross compile most packages, so get rid of the
+             ;; unnecessary ARCH-linux-gnu* prefix.
+             (substitute* "build/toolchain/linux/BUILD.gn"
+               (("aarch64-linux-gnu-") "")
+               (("arm-linux-gnueabihf-") ""))
+             #t))
+         (replace 'configure
+           (lambda* (#:key inputs outputs #:allow-other-keys)
+             (let ((gn-flags
+                    (list
+                     ;; See tools/gn/docs/cookbook.md and
+                     ;; https://www.chromium.org/developers/gn-build-confi=
guration
+                     ;; for usage. Run "./gn args . --list" in the Release
+                     ;; directory for an exhaustive list of supported flag=
s.
+                     "is_debug=3Dfalse"
+                     "is_official_build=3Dfalse"
+                     "is_clang=3Dfalse"
+                     "use_gold=3Dfalse"
+                     "linux_use_bundled_binutils=3Dfalse"
+                     "use_custom_libcxx=3Dfalse"
+                     "use_sysroot=3Dfalse"
+                     "goma_dir=3D\"\""
+                     "use_jumbo_build=3Dtrue"     ;speeds up compilation
+                     "enable_precompiled_headers=3Dfalse"
+                     "remove_webcore_debug_symbols=3Dtrue"
+                     "enable_iterator_debugging=3Dfalse"
+                     "exclude_unwind_tables=3Dtrue"
+                     "override_build_date=3D\"01 01 2000 05:00:00\""
+                     "use_unofficial_version_number=3Dfalse"
+                     ;; Don't fail when using deprecated ffmpeg features.
+                     "treat_warnings_as_errors=3Dfalse"
+                     "enable_nacl=3Dfalse"
+                     "enable_nacl_nonsfi=3Dfalse"
+                     "use_allocator=3D\"none\"" ; Don't use tcmalloc.
+                     ;; Don't add any API keys. End users can set them in =
the
+                     ;; environment if necessary.
+                     ;; https://www.chromium.org/developers/how-tos/api-ke=
ys
+                     "use_official_google_api_keys=3Dfalse"
+                     ;; Disable "field trials".
+                     "fieldtrial_testing_like_official_build=3Dtrue"
+                     "enable_reading_list=3Dfalse"
+                     ;;"enable_reporting=3Dfalse"   ;XXX breaks the build
+
+                     "use_openh264=3Dtrue"
+                     "use_system_freetype=3Dtrue"
+                     "use_system_libjpeg=3Dtrue"
+                     "use_system_lcms2=3Dtrue"
+                     "use_system_zlib=3Dtrue"
+                     ;; This is currently not supported on Linux:
+                     ;; https://bugs.chromium.org/p/chromium/issues/detail=
?id=3D22208
+                     ;; "use_system_sqlite=3Dtrue"
+                     "use_gtk3=3Dtrue"
+                     "use_gconf=3Dfalse"         ; deprecated by gsettings
+                     "use_gnome_keyring=3Dfalse" ; deprecated by libsecret
+                     "use_xkbcommon=3Dtrue"
+                     "link_pulseaudio=3Dtrue"
+
+                     ;; Don't arbitrarily restrict formats supported by sy=
stem ffmpeg.
+                     "proprietary_codecs=3Dtrue"
+                     "ffmpeg_branding=3D\"Chrome\""
+
+                     ;; WebRTC stuff.
+                     "rtc_use_h264=3Dtrue"
+                     ;; Don't use bundled sources.
+                     "rtc_build_json=3Dfalse"
+                     "rtc_build_libevent=3Dfalse"
+                     "rtc_build_libvpx=3Dfalse"
+                     "rtc_build_opus=3Dfalse"
+                     "rtc_build_ssl=3Dfalse"
+                     ;; TODO: Package these.
+                     "rtc_build_libsrtp=3Dtrue" ; 2.0
+                     "rtc_build_libyuv=3Dtrue"
+                     "rtc_build_openmax_dl=3Dtrue"
+                     "rtc_build_usrsctp=3Dtrue"
+                     (string-append "rtc_jsoncpp_root=3D\""
+                                    (assoc-ref inputs "jsoncpp")
+                                    "/include/jsoncpp/json\"")
+                     (string-append "rtc_ssl_root=3D\""
+                                    (assoc-ref inputs "openssl")
+                                    "/include/openssl\""))))
+
+               ;; XXX: How portable is this.
+               (mkdir-p "third_party/node/linux/node-linux-x64")
+               (symlink (string-append (assoc-ref inputs "node") "/bin")
+                        "third_party/node/linux/node-linux-x64/bin")
+
+               (setenv "CC" "gcc")
+               (setenv "CXX" "g++")
+               ;; TODO: pre-compile instead. Avoids a race condition.
+               (setenv "PYTHONDONTWRITEBYTECODE" "1")
+               (and
+                ;; Build the "gn" tool.
+                (zero? (system* "python"
+                                "tools/gn/bootstrap/bootstrap.py" "-s" "-v=
"))
+                ;; Generate ninja build files.
+                (zero? (system* "./out/Release/gn" "gen" "out/Release"
+                                (string-append "--args=3D"
+                                               (string-join gn-flags " "))=
))))))
+         (replace 'build
+           (lambda* (#:key outputs #:allow-other-keys)
+             (zero? (system* "ninja" "-C" "out/Release"
+                             "-j" (number->string (parallel-job-count))
+                             "chrome"))))
+         (replace 'install
+           (lambda* (#:key inputs outputs #:allow-other-keys)
+             (let* ((out            (assoc-ref outputs "out"))
+                    (bin            (string-append out "/bin"))
+                    (exe            (string-append bin "/chromium"))
+                    (lib            (string-append out "/lib"))
+                    (man            (string-append out "/share/man/man1"))
+                    (applications   (string-append out "/share/application=
s"))
+                    (install-regexp (make-regexp "\\.(so|bin|pak)$"))
+                    (locales        (string-append lib "/locales"))
+                    (resources      (string-append lib "/resources"))
+                    (gtk+           (assoc-ref inputs "gtk+"))
+                    (mesa           (assoc-ref inputs "mesa"))
+                    (nss            (assoc-ref inputs "nss"))
+                    (udev           (assoc-ref inputs "udev"))
+                    (sh             (which "sh")))
+
+               (mkdir-p applications)
+               (call-with-output-file (string-append applications
+                                                     "/chromium.desktop")
+                 (lambda (port)
+                   (format port
+                           "[Desktop Entry]~@
+                           Name=3DChromium~@
+                           Comment=3D~a~@
+                           Exec=3D~a~@
+                           Icon=3Dchromium.png~@
+                           Type=3DApplication~%" ,synopsis exe)))
+
+               (with-directory-excursion "out/Release"
+                 (for-each (lambda (file)
+                             (install-file file lib))
+                           (scandir "." (cut regexp-exec install-regexp <>=
)))
+                 (copy-file "chrome" (string-append lib "/chromium"))
+
+                 ;; TODO: Install icons from "../../chrome/app/themes" into
+                 ;; "out/share/icons/hicolor/$size".
+                 (install-file
+                  "product_logo_48.png"
+                  (string-append out "/share/icons/48x48/chromium.png"))
+
+                 (copy-recursively "locales" locales)
+                 (copy-recursively "resources" resources)
+
+                 (mkdir-p man)
+                 (copy-file "chrome.1" (string-append man "/chromium.1"))
+
+                 (mkdir-p bin)
+                 ;; Add a thin wrapper to prevent the user from inadverten=
tly
+                 ;; installing non-free software through the Web Store.
+                 ;; TODO: Discover extensions from the profile and pass
+                 ;; something like "--disable-extensions-except=3D...".
+                 (call-with-output-file exe
+                   (lambda (port)
+                     (format port
+                             "#!~a~@
+                             CHROMIUM_FLAGS=3D\"--disable-background-netwo=
rking\"~@
+                             if [ -z \"$CHROMIUM_ENABLE_WEB_STORE\" ]~@
+                             then~@
+                                 CHROMIUM_FLAGS=3D\"$CHROMIUM_FLAGS --disa=
ble-extensions\"~@
+                             fi~@
+                             exec ~a $CHROMIUM_FLAGS \"$@\"~%"
+                             sh (string-append lib "/chromium"))))
+                 (chmod exe #o755)
+
+                 (wrap-program exe
+                   ;; TODO: Get these in RUNPATH.
+                   `("LD_LIBRARY_PATH" ":" prefix
+                     (,(string-append lib ":" nss "/lib/nss:" gtk+ "/lib:"
+                                      mesa "/lib:" udev "/lib")))
+                   ;; Avoid file manager crash. See <https://bugs.gnu.org/=
26593>.
+                   `("XDG_DATA_DIRS" ":" prefix (,(string-append gtk+ "/sh=
are"))))
+                 #t)))))))
+    (native-inputs
+     `(("bison" ,bison)
+       ("git" ,git)                     ;last_commit_position.py
+       ("gperf" ,gperf)
+       ("ninja" ,ninja)
+       ("node" ,node)
+       ("pkg-config" ,pkg-config)
+       ("which" ,which)
+       ("yasm" ,yasm)
+
+       ("python-beautifulsoup4" ,python2-beautifulsoup4)
+       ("python-html5lib" ,python2-html5lib)
+       ("python" ,python-2)))
+    (inputs
+     `(("alsa-lib" ,alsa-lib)
+       ("atk" ,atk)
+       ("cups" ,cups)
+       ("curl" ,curl)
+       ("dbus" ,dbus)
+       ("dbus-glib" ,dbus-glib)
+       ("expat" ,expat)
+       ("flac" ,flac)
+       ("ffmpeg" ,ffmpeg)
+       ("fontconfig" ,fontconfig)
+       ("freetype" ,freetype)
+       ("gdk-pixbuf" ,gdk-pixbuf)
+       ("glib" ,glib)
+       ("gtk+-2" ,gtk+-2)
+       ("gtk+" ,gtk+)
+       ("harfbuzz" ,harfbuzz)
+       ("icu4c" ,icu4c-59.1)
+       ("jsoncpp" ,jsoncpp)
+       ("lcms" ,lcms)
+       ("libevent" ,libevent)
+       ("libffi" ,libffi)
+       ("libjpeg-turbo" ,libjpeg-turbo)
+       ("libpng" ,libpng)
+       ("libusb" ,libusb)
+       ("libvpx" ,libvpx+experimental)
+       ("libwebp" ,libwebp)
+       ("libx11" ,libx11)
+       ("libxcb" ,libxcb)
+       ("libxcomposite" ,libxcomposite)
+       ("libxcursor" ,libxcursor)
+       ("libxdamage" ,libxdamage)
+       ("libxext" ,libxext)
+       ("libxfixes" ,libxfixes)
+       ("libxi" ,libxi)
+       ("libxkbcommon" ,libxkbcommon)
+       ("libxml2" ,libxml2)
+       ("libxrandr" ,libxrandr)
+       ("libxrender" ,libxrender)
+       ("libxscrnsaver" ,libxscrnsaver)
+       ("libxslt" ,libxslt)
+       ("libxtst" ,libxtst)
+       ("mesa" ,mesa)
+       ("minizip" ,minizip)
+       ("mit-krb5" ,mit-krb5)
+       ("nss" ,nss)
+       ("openh264" ,openh264)
+       ("openssl" ,openssl)
+       ("opus" ,opus+custom)
+       ("pango" ,pango)
+       ("pciutils" ,pciutils)
+       ("protobuf" ,protobuf)
+       ("pulseaudio" ,pulseaudio)
+       ("re2" ,re2)
+       ("snappy" ,snappy)
+       ("speech-dispatcher" ,speech-dispatcher)
+       ("sqlite" ,sqlite)
+       ("udev" ,eudev)
+       ("valgrind" ,valgrind)))
+    (home-page "https://www.chromium.org/")
+    (description
+     "Chromium is a web browser using the @code{Blink} rendering engine.")
+    ;; Chromium is developed as BSD-3, but bundles a large number of third=
-party
+    ;; software with other licenses. For full information, see chrome://cr=
edits.
+    (license (list license:bsd-3
+                   license:bsd-2
+                   license:expat
+                   license:asl2.0
+                   license:mpl2.0
+                   license:public-domain
+                   license:lgpl2.1+))))
diff --git a/gnu/packages/icu4c.scm b/gnu/packages/icu4c.scm
index 55bc9f203..b12de6ff0 100644
=2D-- a/gnu/packages/icu4c.scm
+++ b/gnu/packages/icu4c.scm
@@ -4,6 +4,7 @@
 ;;; Copyright =C2=A9 2016 Efraim Flashner <efraim@HIDDEN>
 ;;; Copyright =C2=A9 2017 Cl=C3=A9ment Lassieur <clement@HIDDEN>
 ;;; Copyright =C2=A9 2017 Ricardo Wurmus <rekado@HIDDEN>
+;;; Copyright =C2=A9 2017 Marius Bakke <mbakke@HIDDEN>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -80,6 +81,23 @@ C/C++ part.")
                          (origin-patches (package-source icu4c))
                          (search-patches "icu4c-CVE-2017-14952.patch")))))=
))
=20
+(define-public icu4c-59.1
+  (package
+    (inherit icu4c)
+    (version "59.1")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append
+                    "http://download.icu-project.org/files/icu4c/"
+                    version
+                    "/icu4c-"
+                    (string-map (lambda (x) (if (char=3D? x #\.) #\_ x)) v=
ersion)
+                    "-src.tgz"))
+              (patches (search-patches "icu4c-CVE-2017-14952.patch"))
+              (sha256
+               (base32
+                "1zkmbg2932ggvpgjp8pys0cj6z8bw087y8858009shkrjfpzscki"))))=
))
+
 (define-public java-icu4j
   (package
     (name "java-icu4j")
diff --git a/gnu/packages/patches/chromium-disable-api-keys-warning.patch b=
/gnu/packages/patches/chromium-disable-api-keys-warning.patch
new file mode 100644
index 000000000..c7e219f40
=2D-- /dev/null
+++ b/gnu/packages/patches/chromium-disable-api-keys-warning.patch
@@ -0,0 +1,17 @@
+Disable warning about missing API keys.
+
+Copied from:
+
+https://anonscm.debian.org/cgit/pkg-chromium/pkg-chromium.git/tree/debian/=
patches/disable/google-api-warning.patch
+
+--- a/chrome/browser/ui/startup/startup_browser_creator_impl.cc
++++ b/chrome/browser/ui/startup/startup_browser_creator_impl.cc
+@@ -816,8 +816,6 @@ void StartupBrowserCreatorImpl::AddInfoB
+       !command_line_.HasSwitch(switches::kTestType) &&
+       !command_line_.HasSwitch(switches::kEnableAutomation)) {
+     chrome::ShowBadFlagsPrompt(browser);
+-    GoogleApiKeysInfoBarDelegate::Create(InfoBarService::FromWebContents(
+-        browser->tab_strip_model()->GetActiveWebContents()));
+     ObsoleteSystemInfoBarDelegate::Create(InfoBarService::FromWebContents(
+         browser->tab_strip_model()->GetActiveWebContents()));
+=20
diff --git a/gnu/packages/patches/chromium-disable-third-party-cookies.patc=
h b/gnu/packages/patches/chromium-disable-third-party-cookies.patch
new file mode 100644
index 000000000..0694c35f3
=2D-- /dev/null
+++ b/gnu/packages/patches/chromium-disable-third-party-cookies.patch
@@ -0,0 +1,13 @@
+Disable third party cookies by default.
+
+--- a/components/content_settings/core/browser/cookie_settings.cc
++++ b/components/content_settings/core/browser/cookie_settings.cc
+@@ -101,7 +101,7 @@ void CookieSettings::GetCookieSettings(
+ void CookieSettings::RegisterProfilePrefs(
+     user_prefs::PrefRegistrySyncable* registry) {
+   registry->RegisterBooleanPref(
+-      prefs::kBlockThirdPartyCookies, false,
++      prefs::kBlockThirdPartyCookies, true,
+       user_prefs::PrefRegistrySyncable::SYNCABLE_PREF);
+ }
+=20
diff --git a/gnu/packages/patches/chromium-system-icu.patch b/gnu/packages/=
patches/chromium-system-icu.patch
new file mode 100644
index 000000000..c35c1b75c
=2D-- /dev/null
+++ b/gnu/packages/patches/chromium-system-icu.patch
@@ -0,0 +1,15 @@
+description: maintain compatibility with system icu library
+author: Michael Gilbert <mgilbert@HIDDEN>
+
+--- a/BUILD.gn
++++ b/BUILD.gn
+@@ -657,8 +657,7 @@ group("gn_all") {
+     }
+   }
+=20
+-  if ((is_linux && !is_chromeos && !is_chromecast) || (is_win && use_drfu=
zz) ||
+-      (use_libfuzzer && is_mac)) {
++  if (false) {
+     deps +=3D [
+       "//testing/libfuzzer/fuzzers",
+       "//testing/libfuzzer/tests:libfuzzer_tests",
=2D-=20
2.14.3


--=-=-=--

--==-=-=
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQEzBAEBCgAdFiEEu7At3yzq9qgNHeZDoqBt8qM6VPoFAlnvrG4ACgkQoqBt8qM6
VPoBVAf/UbHKaag7cX0rOfVE+gMfe7MhXHLHsOI8gDTx5UXKqvta+hg5iWiEX2Of
AE0prNmx/u7DQc0MXVi3USpC1fmC8W6W/wI4L0rrgYDQzAyGqayNjVqiTIDB0CH/
iFaFSAMLoyy+oB5+IAAp7P0pLeCufIPxUcorMlzJ+snC7HEKtEItGLDFFkx6jWr4
MEaLLGVnd7RfgZmbO5bGei4sd8uLLwQ3xyPP4hBwLKBhgmcNsw8Ep6bHS0eMLzrn
bugXnAzrqzNcobUnFPvYDBXUe7RhfVJlY+2U378Kw/jpPq95qx+tyDBffWXY+U1x
fiFTjxeGlE/ezAdBOwxs2QWltSPb0w==
=IUER
-----END PGP SIGNATURE-----
--==-=-=--




Information forwarded to guix-patches@HIDDEN:
bug#28004; Package guix-patches. Full text available.

Message received at 28004 <at> debbugs.gnu.org:


Received: (at 28004) by debbugs.gnu.org; 19 Oct 2017 05:48:53 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Oct 19 01:48:53 2017
Received: from localhost ([127.0.0.1]:49016 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1e53hM-0006Nc-Oi
	for submit <at> debbugs.gnu.org; Thu, 19 Oct 2017 01:48:52 -0400
Received: from aibo.runbox.com ([91.220.196.211]:52600)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <ng0@HIDDEN>) id 1e53hJ-0006NR-J1
 for 28004 <at> debbugs.gnu.org; Thu, 19 Oct 2017 01:48:51 -0400
Received: from [10.9.9.210] (helo=mailfront10.runbox.com)
 by mailtransmit03.runbox with esmtp (Exim 4.86_2)
 (envelope-from <ng0@HIDDEN>)
 id 1e53hE-0003JW-Sd; Thu, 19 Oct 2017 07:48:44 +0200
Received: from [78.109.23.1] (helo=localhost)
 by mailfront10.runbox.com with esmtpsa (uid:892961 )
 (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82)
 id 1e53gv-0001dX-PB; Thu, 19 Oct 2017 07:48:26 +0200
Date: Thu, 19 Oct 2017 05:48:22 +0000
From: ng0 <ng0@HIDDEN>
To: Marius Bakke <mbakke@HIDDEN>
Subject: Re: [bug#28004] Chromium
Message-ID: <20171019054822.mka2hpj5bkgiuypd@abyayala>
References: <87y3qvb15k.fsf@HIDDEN>
 <20171010131949.y43plpzxbppvrigr@abyayala> <87lgkha2cx.fsf@HIDDEN>
 <20171012195628.GA31843@HIDDEN> <87shensfq6.fsf@HIDDEN>
 <87o9p45bb6.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: multipart/signed; micalg=pgp-sha512;
 protocol="application/pgp-signature"; boundary="pfilsqohjgqgqzmq"
Content-Disposition: inline
In-Reply-To: <87o9p45bb6.fsf@HIDDEN>
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 28004
Cc: 28004 <at> debbugs.gnu.org, Ludovic =?utf-8?Q?Court=C3=A8s?= <ludo@HIDDEN>,
 ng0 <ng0@HIDDEN>, Leo Famulari <leo@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -0.7 (/)


--pfilsqohjgqgqzmq
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

Marius Bakke transcribed 37K bytes:
> Ludovic Court=C3=A8s <ludo@HIDDEN> writes:
>=20
> > I think we should make sure that our package does not call home in any
> > way.  That=E2=80=99s what I expect from a security- and privacy-conscio=
us
> > distro.
>=20
> Currently, it calls home at first launch, prompting for a login.  But
> I've verified that it does not send any unsolicited requests for
> subsequent startups, as long as the user does not change the
> command-line flags.

Could the first launch just be a matter of changing what gets
displayed at first launch? At least that's my current plan
for meissa (my fork of Pale Moon), where the default is to
visit a tracker including homepage.
--=20
ng0
GnuPG: A88C8ADD129828D7EAC02E52E22F9BBFEE348588
GnuPG: https://dist.ng0.infotropique.org/dist/keys/
https://www.infotropique.org https://ng0.infotropique.org

--pfilsqohjgqgqzmq
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQIzBAABCgAdFiEEqIyK3RKYKNfqwC5S4i+bv+40hYgFAlnoPKYACgkQ4i+bv+40
hYh09RAAhelOJx69ja+YavLTuyPLHv4mNVveB/Ul3UMgyuuxL8F6+VjNt8knIRj0
AH90jfv+/iR5S2nngpl1IZJVsF8BZaRwueCSRgcDzlNrT0/YuT7Kh9wC9LCNLUXC
FHsGPLIr6Qbu8nV0lGdYgMn+fKn3iGUDFWwHG6JkYrA7/H/s1ZC/Rmb+SQY4y71H
2AEI1PmZ3H4E0MbMN4RQviXb82E6SeAh2DU8xWWEgI9u6w7FFj+zA5qLMG2aPvDa
egl/t7+FghWalo906BcwhmKQB7NZ9CqXqOGeoPjsFyvGxN3ORr0oWS+gd5k9hv5s
BpTfifCr7p3SHqwGNGos07eorO9sD/7L9hUQa3Oc+I3Bp5WCBSDDXzmtFYOoTKXw
rD3xntMTGDaN68K0MNm4EPffIZZZcVfgQd+/LjIyTLlyD0KxfDJT9jfFjDOk2F2O
R5CNuzhjD6S266Jga4LaAo0AHXHh3Oli7Nwcf+J97WY5IQ6jr6Uu99pqhbSocMrb
fZWnw6KKRkJ3ib+pBi7Ua1GxoV+FdtRgu0vXR4ZbRKutmAVELPA/PSu/YZGV3zl8
02B9aZVGLYsEU5JJ3+WdsHUDpFYcDbhtIqCRL2BZgbxds1XR60mHn5lWxQptmaDe
X+ozafIk2XdYN/XNBfrWSsfdTMOhvYsWRfEorIjDcAWnBrB6ds4=
=jfkQ
-----END PGP SIGNATURE-----

--pfilsqohjgqgqzmq--




Information forwarded to guix-patches@HIDDEN:
bug#28004; Package guix-patches. Full text available.

Message received at 28004 <at> debbugs.gnu.org:


Received: (at 28004) by debbugs.gnu.org; 18 Oct 2017 22:41:17 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed Oct 18 18:41:17 2017
Received: from localhost ([127.0.0.1]:48821 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1e4x1P-0006Va-BW
	for submit <at> debbugs.gnu.org; Wed, 18 Oct 2017 18:41:17 -0400
Received: from out4-smtp.messagingengine.com ([66.111.4.28]:36355)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <mbakke@HIDDEN>) id 1e4x1M-0006VR-GQ
 for 28004 <at> debbugs.gnu.org; Wed, 18 Oct 2017 18:41:05 -0400
Received: from compute5.internal (compute5.nyi.internal [10.202.2.45])
 by mailout.nyi.internal (Postfix) with ESMTP id 2F18820BE7;
 Wed, 18 Oct 2017 18:41:04 -0400 (EDT)
Received: from frontend2 ([10.202.2.161])
 by compute5.internal (MEProxy); Wed, 18 Oct 2017 18:41:04 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=fastmail.com; h=
 cc:content-type:date:from:in-reply-to:message-id:mime-version
 :references:subject:to:x-me-sender:x-me-sender:x-sasl-enc; s=
 fm1; bh=fCAkSGH+w9xlS6+kBle36pyUTnnc4v2l7rZpDmnslSc=; b=eATJMHSC
 6XjqhpJRSPCuYhteEKVRk3VwlpS6E+b4ZZmXMHclFd9ez8DD89Ggc1WaLBp0w5nE
 PMGbLavInawCR1MMOY/zF+hlKPJWwu85rF3YuQ3+VJEgjzQ71UKN8ntvBwg8nIKr
 7O9JfaauNaYS3bSQUZ3f9KQ2U/JS65Mv0FajBUCLoMgqYS645gjAOWu19J9yvUcc
 VLNptOvy+uXSl+bzdjbbV5SzsfDWLC5IusnMdjdKe9AjzhF8w3UJbTjOA5HkDJXQ
 bcrXwyNs+98c8lB817BfZPmNw07ZQ02XOf+ixixnygeske9sNocr6Zo+NdEHiqgb
 tMA3eRREDzYCdQ==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
 messagingengine.com; h=cc:content-type:date:from:in-reply-to
 :message-id:mime-version:references:subject:to:x-me-sender
 :x-me-sender:x-sasl-enc; s=fm1; bh=fCAkSGH+w9xlS6+kBle36pyUTnnc4
 v2l7rZpDmnslSc=; b=bZ6fEz6UqKrUXc/YB91ThAc3zGY9Yr16Xme/2yUtCc2sq
 KTwYSkYzcJqI3KIOBADkxYzXHuAOWpCm00mdzIvDFzfHuIUsCue5kVHeY53QSbWu
 bRwns6Lp8/G1IPhZV9znr6BEqbNUu8UrgatV3omOm+Fpoy4OICrMkMDeY+4J96RV
 +tWrXBssm1Oc8ICkA1D+qjBvWoMhoIN+EfguOQ49yZgqsgISX08kFZd+BnXNqHjo
 9o5pjBOuyxo3QllPtKhtRLSFNFA0LqS//nXFDGFrMuB5ZeEe9POdaf84s6tEgWfO
 WtFJHIRYnZI4PsHAJFMYeabz38eiyyvZ2s3Knmj3A==
X-ME-Sender: <xms:gNjnWeWFoYoFQHsZb1Q4yqfF5Va28q9SsKDXe_g0q8KAVUinhh5sGw>
Received: from localhost (cm-84.214.173.174.getinternet.no [84.214.173.174])
 by mail.messagingengine.com (Postfix) with ESMTPA id 2FA152473E;
 Wed, 18 Oct 2017 18:41:03 -0400 (EDT)
From: Marius Bakke <mbakke@HIDDEN>
To: Ludovic =?utf-8?Q?Court=C3=A8s?= <ludo@HIDDEN>, Leo Famulari
 <leo@HIDDEN>
Subject: Re: [bug#28004] Chromium
In-Reply-To: <87shensfq6.fsf@HIDDEN>
References: <87y3qvb15k.fsf@HIDDEN>
 <20171010131949.y43plpzxbppvrigr@abyayala> <87lgkha2cx.fsf@HIDDEN>
 <20171012195628.GA31843@HIDDEN> <87shensfq6.fsf@HIDDEN>
User-Agent: Notmuch/0.25.1 (https://notmuchmail.org) Emacs/25.3.1
 (x86_64-pc-linux-gnu)
Date: Thu, 19 Oct 2017 00:41:01 +0200
Message-ID: <87o9p45bb6.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: multipart/signed; boundary="==-=-=";
 micalg=pgp-sha512; protocol="application/pgp-signature"
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 28004
Cc: 28004 <at> debbugs.gnu.org, ng0 <ng0@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: 0.0 (/)

--==-=-=
Content-Type: multipart/mixed; boundary="=-=-="

--=-=-=
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable

Ludovic Court=C3=A8s <ludo@HIDDEN> writes:

> I think we should make sure that our package does not call home in any
> way.  That=E2=80=99s what I expect from a security- and privacy-conscious
> distro.

Currently, it calls home at first launch, prompting for a login.  But
I've verified that it does not send any unsolicited requests for
subsequent startups, as long as the user does not change the
command-line flags.

Anyway I'm attaching the current iteration of this patch.  Chromium 62
is out today, I'll try to update this weekend and will push it after
that in lieu of other feedback.

I would be very happy if someone managed to complete the 62 upgrade
before me, however!  ;-)


--=-=-=
Content-Type: text/x-patch; charset=utf-8
Content-Disposition: attachment; filename=0001-gnu-Add-chromium.patch
Content-Transfer-Encoding: quoted-printable

From=20d6e3ef7f28a9bc4ace0c52e09b1e4bdde84e01e0 Mon Sep 17 00:00:00 2001
From: Marius Bakke <mbakke@HIDDEN>
Date: Wed, 12 Oct 2016 17:25:05 +0100
Subject: [PATCH] gnu: Add chromium.

* gnu/packages/chromium.scm: New file.
* gnu/packages/patches/chromium-disable-api-keys-warning.patch,
  gnu/packages/patches/chromium-disable-third-party-cookies.patch,
  gnu/packages/patches/chromium-system-icu.patch: New files.
* gnu/local.mk: Record it.
=2D--
 gnu/local.mk                                       |   4 +
 gnu/packages/chromium.scm                          | 650 +++++++++++++++++=
++++
 .../chromium-disable-api-keys-warning.patch        |  17 +
 .../chromium-disable-third-party-cookies.patch     |  13 +
 gnu/packages/patches/chromium-system-icu.patch     |  15 +
 5 files changed, 699 insertions(+)
 create mode 100644 gnu/packages/chromium.scm
 create mode 100644 gnu/packages/patches/chromium-disable-api-keys-warning.=
patch
 create mode 100644 gnu/packages/patches/chromium-disable-third-party-cooki=
es.patch
 create mode 100644 gnu/packages/patches/chromium-system-icu.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index bb4724426..80be45d45 100644
=2D-- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -86,6 +86,7 @@ GNU_SYSTEM_MODULES =3D				\
   %D%/packages/certs.scm			\
   %D%/packages/check.scm			\
   %D%/packages/chez.scm				\
+  %D%/packages/chromium.scm			\
   %D%/packages/ci.scm				\
   %D%/packages/cmake.scm			\
   %D%/packages/cobol.scm			\
@@ -557,6 +558,9 @@ dist_patch_DATA =3D						\
   %D%/packages/patches/chicken-CVE-2017-6949.patch		\
   %D%/packages/patches/chicken-CVE-2017-11343.patch		\
   %D%/packages/patches/chmlib-inttypes.patch			\
+  %D%/packages/patches/chromium-disable-api-keys-warning.patch	\
+  %D%/packages/patches/chromium-disable-third-party-cookies.patch	\
+  %D%/packages/patches/chromium-system-icu.patch		\
   %D%/packages/patches/clang-libc-search-path.patch		\
   %D%/packages/patches/clang-3.8-libc-search-path.patch		\
   %D%/packages/patches/clisp-remove-failing-test.patch		\
diff --git a/gnu/packages/chromium.scm b/gnu/packages/chromium.scm
new file mode 100644
index 000000000..5693b70ff
=2D-- /dev/null
+++ b/gnu/packages/chromium.scm
@@ -0,0 +1,650 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright =C2=A9 2016, 2017 Marius Bakke <mbakke@HIDDEN>
+;;;
+;;; This file is part of GNU Guix.
+;;;
+;;; GNU Guix is free software; you can redistribute it and/or modify it
+;;; under the terms of the GNU General Public License as published by
+;;; the Free Software Foundation; either version 3 of the License, or (at
+;;; your option) any later version.
+;;;
+;;; GNU Guix is distributed in the hope that it will be useful, but
+;;; WITHOUT ANY WARRANTY; without even the implied warranty of
+;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+;;; GNU General Public License for more details.
+;;;
+;;; You should have received a copy of the GNU General Public License
+;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
+
+(define-module (gnu packages chromium)
+  #:use-module ((guix licenses) #:prefix license:)
+  #:use-module (guix packages)
+  #:use-module (guix download)
+  #:use-module (guix git-download)
+  #:use-module (guix utils)
+  #:use-module (guix build-system gnu)
+  #:use-module (gnu packages)
+  #:use-module (gnu packages assembly)
+  #:use-module (gnu packages base)
+  #:use-module (gnu packages bison)
+  #:use-module (gnu packages compression)
+  #:use-module (gnu packages cups)
+  #:use-module (gnu packages curl)
+  #:use-module (gnu packages databases)
+  #:use-module (gnu packages fontutils)
+  #:use-module (gnu packages gl)
+  #:use-module (gnu packages glib)
+  #:use-module (gnu packages gnome)
+  #:use-module (gnu packages gnuzilla)
+  #:use-module (gnu packages gperf)
+  #:use-module (gnu packages gtk)
+  #:use-module (gnu packages icu4c)
+  #:use-module (gnu packages image)
+  #:use-module (gnu packages libevent)
+  #:use-module (gnu packages libffi)
+  #:use-module (gnu packages libusb)
+  #:use-module (gnu packages linux)
+  #:use-module (gnu packages kerberos)
+  #:use-module (gnu packages ninja)
+  #:use-module (gnu packages node)
+  #:use-module (gnu packages pciutils)
+  #:use-module (gnu packages photo)
+  #:use-module (gnu packages pkg-config)
+  #:use-module (gnu packages protobuf)
+  #:use-module (gnu packages pulseaudio)
+  #:use-module (gnu packages python)
+  #:use-module (gnu packages regex)
+  #:use-module (gnu packages serialization)
+  #:use-module (gnu packages speech)
+  #:use-module (gnu packages tls)
+  #:use-module (gnu packages valgrind)
+  #:use-module (gnu packages version-control)
+  #:use-module (gnu packages video)
+  #:use-module (gnu packages xiph)
+  #:use-module (gnu packages xml)
+  #:use-module (gnu packages xdisorg)
+  #:use-module (gnu packages xorg))
+
+(define (remote-patch file-name uri hash)
+  "Return an <origin> object with the given FILE-NAME.  URI must be a FTP =
or
+HTTP(S) URI that returns a file with the given HASH."
+  (origin
+    (method url-fetch)
+    (uri uri)
+    (sha256 (base32 hash))
+    (file-name file-name)))
+
+(define opus+custom
+  (package (inherit opus)
+           (arguments
+            `(;; Opus Custom is an optional extension of the Opus
+              ;; specification that allows for unsupported frame
+              ;; sizes. Chromium requires that this is enabled.
+              #:configure-flags '("--enable-custom-modes")
+              ,@(package-arguments opus)))))
+
+;; Chromium since 58 depends on an unreleased libvpx. So, we
+;; package the latest master branch as of 2017-10-12.
+(define libvpx+experimental
+  (package
+    (inherit libvpx)
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://chromium.googlesource.com/webm/libvpx")
+                    (commit "175b36cb6d2811c721d63277ba953ea817f32361")))
+              (file-name "libvpx-for-chromium-checkout")
+              (sha256
+               (base32
+                "1j8ni29mcj74lfsc0hsha22zzp24ig53iki0id5bdfhzl8q1rpyk"))))
+    ;; TODO: Make libvpx configure flags overrideable.
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (repl