From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp0 ([2001:41d0:2:c151::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms11 with LMTPS id wLSUGa/LQmBmHAAA0tVLHw (envelope-from ) for ; Sat, 06 Mar 2021 00:24:15 +0000 Received: from aspmx2.migadu.com ([2001:41d0:2:c151::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp0 with LMTPS id iAJqFa/LQmBtMgAA1q6Kng (envelope-from ) for ; Sat, 06 Mar 2021 00:24:15 +0000 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx2.migadu.com (Postfix) with ESMTPS id 8207E25778 for ; Sat, 6 Mar 2021 01:24:14 +0100 (CET) Received: from localhost ([::1]:48272 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1lIKjs-0000yV-Ak for larch@yhetil.org; Fri, 05 Mar 2021 19:24:12 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:40510) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lIKji-0000ou-Do for bug-guix@gnu.org; Fri, 05 Mar 2021 19:24:02 -0500 Received: from debbugs.gnu.org ([209.51.188.43]:52385) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1lIKji-0001Kn-4t for bug-guix@gnu.org; Fri, 05 Mar 2021 19:24:02 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1lIKjh-0000l6-VR for bug-guix@gnu.org; Fri, 05 Mar 2021 19:24:01 -0500 X-Loop: help-debbugs@gnu.org Subject: bug#46942: ci.guix.gnu.org is slow from my system Resent-From: raid5atemyhomework Original-Sender: "Debbugs-submit" Resent-CC: bug-guix@gnu.org Resent-Date: Sat, 06 Mar 2021 00:24:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 46942 X-GNU-PR-Package: guix X-GNU-PR-Keywords: To: zimoun Cc: "pengmeiyu@riseup.net" , "46942@debbugs.gnu.org" <46942@debbugs.gnu.org> Received: via spool by 46942-submit@debbugs.gnu.org id=B46942.16149902342897 (code B ref 46942); Sat, 06 Mar 2021 00:24:01 +0000 Received: (at 46942) by debbugs.gnu.org; 6 Mar 2021 00:23:54 +0000 Received: from localhost ([127.0.0.1]:35698 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lIKjZ-0000ke-Ls for submit@debbugs.gnu.org; Fri, 05 Mar 2021 19:23:54 -0500 Received: from mail-40135.protonmail.ch ([185.70.40.135]:34622) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lIKjW-0000kN-Bj for 46942@debbugs.gnu.org; Fri, 05 Mar 2021 19:23:51 -0500 Date: Sat, 06 Mar 2021 00:23:36 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=protonmail.com; s=protonmail; t=1614990220; bh=Q2Zesaetg5QUULWUysTH3glNApNZPqBn+1bkhj1Q5rg=; h=Date:To:From:Cc:Reply-To:Subject:In-Reply-To:References:From; b=lUIMomecZS7ckFGe/Q663H2iCvkBdg2lyiDMG3vYijAfd970iiUUMWTQj/ci06IIC ncWPrl7znoefHTzZNzUF98xV18b3Ac5y5EC+T4CjB+wAb4HaiZR2e28uA9mxAbXJQI 4FZkEGGJ5VmY8S/XU9oNxgZ9SKf2Naa+9mKg4Pow= Message-ID: In-Reply-To: <8bR3l7i5BPTQzCRF0BRGqsXMNe-DIM0QlFFj7qG-SJd7Z-KgPdvdlM5ZkhFlX8GVqQSocUgx9WCBthzbVrgZ5c2zMBegDmhCj-_1rjQ_oiY=@protonmail.com> References: <86a6rh7oyr.fsf@gmail.com> <86r1ktsaw3.fsf@gmail.com> <8bR3l7i5BPTQzCRF0BRGqsXMNe-DIM0QlFFj7qG-SJd7Z-KgPdvdlM5ZkhFlX8GVqQSocUgx9WCBthzbVrgZ5c2zMBegDmhCj-_1rjQ_oiY=@protonmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: bug-guix@gnu.org List-Id: Bug reports for GNU Guix List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-guix-bounces+larch=yhetil.org@gnu.org Sender: "bug-Guix" Reply-to: raid5atemyhomework X-ACL-Warn: , raid5atemyhomework From: raid5atemyhomework via Bug reports for GNU Guix X-Migadu-Flow: FLOW_IN ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1614990254; h=from:from:sender:sender:reply-to:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding:resent-cc: resent-from:resent-sender:resent-message-id:in-reply-to:in-reply-to: references:references:list-id:list-help:list-unsubscribe: list-subscribe:list-post:dkim-signature; bh=Q2Zesaetg5QUULWUysTH3glNApNZPqBn+1bkhj1Q5rg=; b=OF5VOwO3YvV6cWmJFjtOueVHlwcaRwMz1KU/iWGJv3oYJDFkSwb1Tyrxzhe1OS8Hsnn5/v OPyOR29dMD1td3sZ3sxvpu+wybxvoinQgYOxApX3wvWxBlCRYhGA5Apr8oQH99Csp8+l37 YkTJLzTIrnVGf6Fop0fzA92uL136CoaWEMy5rUmikXsSYM4J2M75yui3DCq4FcUnx71ZK2 SplGuQyQ+KlKxtfHB81IlYyXqJ7ZOjQbCZB4tkIKDexmgZ+woIe20kq+hX1TWNbc2XehVq 4KkssfNEvLl7graBVcwR7qkL1bOGLoRwqWBp5zEcu0kDQ3/0enVRg7Oa5ywSig== ARC-Seal: i=1; s=key1; d=yhetil.org; t=1614990254; a=rsa-sha256; cv=none; b=uUWnxm3cz1uClbWwyyWyIN8ySlczVu1zi5HUZUf4STZioZj7xpIBDGWrt3CE69RtJymst+ BoG4RiJJh8XlrRP5GMlYAqsM8rsZorsyUaD6hEk/b5uZbbxfImMB3n5ybNumIdWa1Y9pu9 UZosNMu8a6Z8EyvrHuR95uz0SfoMG5ikBqLU4ZYPq91I86OsuR0kQjMWXm5LuSaMZP8lcr EB4KJnYtBmgJpYRetLWbuNEuLiMGSO8seD1NGusvRMOX+SmtYEscfRhdONLwOLWmrdsvDm ApomF7LHALeM9fzIre9zEpDEbIojG0FxK4rudJku5pF1Y/M6nLWZdy47fJB23g== ARC-Authentication-Results: i=1; aspmx2.migadu.com; dkim=fail ("headers rsa verify failed") header.d=protonmail.com header.s=protonmail header.b=lUIMomec; spf=pass (aspmx2.migadu.com: domain of bug-guix-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=bug-guix-bounces@gnu.org X-Migadu-Spam-Score: -2.87 Authentication-Results: aspmx2.migadu.com; dkim=fail ("headers rsa verify failed") header.d=protonmail.com header.s=protonmail header.b=lUIMomec; dmarc=pass (policy=none) header.from=gnu.org; spf=pass (aspmx2.migadu.com: domain of bug-guix-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=bug-guix-bounces@gnu.org X-Migadu-Queue-Id: 8207E25778 X-Spam-Score: -2.87 X-Migadu-Scanner: scn0.migadu.com X-TUID: cQWMLlnTaUBj Hi zimoun, Thanks, this is a definite improvement and I have set both systems to use i= t as the first item in `substitute-server`. I'll make a patch for the manua= l at least, then close this issue once that patch is accepted. So I was thinking of modifying the installer so at least some page offers u= p options for mirrors. However, because of the way the installer works, it = would have to be done by `(gnu installer services)`, which does not use `mo= dify-services` on the base service list. What the installer expects is that services will have their own `(service <= type> )` entry, without modifying the base service type. What I *want* to do would be to have an extensible `guix-substitute-url-ser= vice-type`. Unfortunately the existing `guix-service-type` accepts a list = of build directories to `chroot`. So here's a sketch: * Create a new `guix-daemon-service-type` and move most of the `guix-servic= e-type` code into it. * This is extensible; extensions provide a procedure which accepts a `` record and outputs a `` record. * `(compose (cut apply compose <>))` * `(extend (lambda (config modifier) (modifier config)))` * Create a new `guix-build-chroot-service-type` which just extends `guix-da= emon-service-type`: * `(service-extension guix-daemon-service-type (lambda (build-chroots) (l= ambda (guix-config) (guix-configuration (inherit guix-config) (chroot-direc= tories (append (guix-configuration-chroot-directories guix-config) build-ch= roots))))))` * `(define-deprecated guix-service-type guix-build-chroot-service-type)` * I mean seriously why does Guix assume only one configuration field of a= base system service is usefully extensible, it seems to me that the genera= l pattern should be that basic system service types should be extensible by= a procedure that accepts an existing configuration record and returns a mo= dified configuration record, then just define individual service types for = each list-of-foo field of the configuration record to make a convenient way= to extend such lists. * Create a new `guix-substitute-url-service-type` similar to `guix-build-ch= root-service-type`, which prepends a list of substitute URLs to the one in = the configuration. Then finally in the installer side: * in `(gnu installer services)` add something like: * `(system-service (name (G_ "https://mirrors.sjtug.sjtu.edu.cn/guix/ (SJ= TUG, China)")) (type 'substitute-url) (snippet '((simple-service guix-subst= itute-url-service-type (list "https://mirrors.sjtug.sjtu.edu.cn/guix/")))))= ` * `(system-service (name (G_ "https://ci.guix.gnu.org (Guix, Germany) - n= o mirror") (type 'substitute-url) (snippet '())))` * In `(gnu installer newt services)`, add a page for substitute URL mirrors= , probably a `run-listbox-selection-page`. * `(G_ "You can select a mirror that is nearer to you for faster updating= of packages. The main Guix substitute server, https://ci.guix.gnu.org/, wi= ll always be set as a fallback, so even if the mirror goes down, you can st= ill upgrade from the main Guix substitute server.")` Is that something that has any chance of getting accepted into Guix? I'd ra= ther not do any coding unless this has any chance at all of getting merged = in. Thanks raid5atemyhomework