[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#46942: ci.guix.gnu.org is slow from my system
From: |
raid5atemyhomework |
Subject: |
bug#46942: ci.guix.gnu.org is slow from my system |
Date: |
Sat, 06 Mar 2021 00:23:36 +0000 |
Hi zimoun,
Thanks, this is a definite improvement and I have set both systems to use it as
the first item in `substitute-server`. I'll make a patch for the manual 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 up
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
`modify-services` on the base service list.
What the installer expects is that services will have their own `(service
<type> <config>)` entry, without modifying the base service type.
What I *want* to do would be to have an extensible
`guix-substitute-url-service-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-service-type` code into it.
* This is extensible; extensions provide a procedure which accepts a
`<guix-configuration>` record and outputs a `<guix-configuration>` record.
* `(compose (cut apply compose <>))`
* `(extend (lambda (config modifier) (modifier config)))`
* Create a new `guix-build-chroot-service-type` which just extends
`guix-daemon-service-type`:
* `(service-extension guix-daemon-service-type (lambda (build-chroots)
(lambda (guix-config) (guix-configuration (inherit guix-config)
(chroot-directories (append (guix-configuration-chroot-directories guix-config)
build-chroots))))))`
* `(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 general
pattern should be that basic system service types should be extensible by a
procedure that accepts an existing configuration record and returns a modified
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-chroot-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/ (SJTUG,
China)")) (type 'substitute-url) (snippet '((simple-service
guix-substitute-url-service-type (list
"https://mirrors.sjtug.sjtu.edu.cn/guix/")))))`
* `(system-service (name (G_ "https://ci.guix.gnu.org (Guix, Germany) - no
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/, will
always be set as a fallback, so even if the mirror goes down, you can still
upgrade from the main Guix substitute server.")`
Is that something that has any chance of getting accepted into Guix? I'd rather
not do any coding unless this has any chance at all of getting merged in.
Thanks
raid5atemyhomework
- bug#46942: ci.guix.gnu.org is slow from my system, (continued)
- bug#46942: ci.guix.gnu.org is slow from my system, Christopher Baines, 2021/03/05
- bug#46942: ci.guix.gnu.org is slow from my system, zimoun, 2021/03/05
- bug#46942: ci.guix.gnu.org is slow from my system, raid5atemyhomework, 2021/03/05
- bug#46942: ci.guix.gnu.org is slow from my system, raid5atemyhomework, 2021/03/05
- bug#46942: ci.guix.gnu.org is slow from my system, zimoun, 2021/03/05
- bug#46942: ci.guix.gnu.org is slow from my system, raid5atemyhomework, 2021/03/05
- bug#46942: ci.guix.gnu.org is slow from my system, zimoun, 2021/03/05
- bug#46942: ci.guix.gnu.org is slow from my system,
raid5atemyhomework <=
- bug#46942: ci.guix.gnu.org is slow from my system, zimoun, 2021/03/05
- bug#46942: ci.guix.gnu.org is slow from my system, raid5atemyhomework, 2021/03/14
- bug#46942: ci.guix.gnu.org is slow from my system, Maxime Devos, 2021/03/15
- bug#46942: ci.guix.gnu.org is slow from my system, raid5atemyhomework, 2021/03/15
- bug#46942: ci.guix.gnu.org is slow from my system, raid5atemyhomework, 2021/03/15
- bug#46942: ci.guix.gnu.org is slow from my system, raid5atemyhomework, 2021/03/16
bug#46942: ci.guix.gnu.org is slow from my system, Leo Famulari, 2021/03/05