Commit graph

7648 commits

Author SHA1 Message Date
Ricardo Wurmus
53555dac1c
guix: Update Bioconductor version to 3.19.
* guix/build-system/r.scm (bioconductor-uri): Use 3.19 URL.
* guix/import/cran.scm (%bioconductor-version): Set to 3.19.

Change-Id: I7a2c4dfcdb2c4cdfef581f823d87e73acc163549
2024-05-08 12:53:14 +02:00
Ludovic Courtès
49232eff56
packages: ‘sanitize-inputs’ does not add labels when unnecessary.
Fixes a bug introduced in 402d0a9b9d
whereby labels would be added in cases like:

  (inputs (list `("label" ,whatever)))

This idiom is found for example in the ‘nmon’ package.

* guix/packages.scm (add-input-labels): Call ‘maybe-add-input-labels’
instead of (map add-input-label …).

Change-Id: I3e86d4607f19482a4e461ef8e7a20cde2a41ead7
2024-05-05 12:06:23 +02:00
Ludovic Courtès
402d0a9b9d
packages: Reduce code bloat due to list allocation in input fields.
* guix/packages.scm (add-input-labels): New procedure.
(sanitize-inputs): Add case for (list …).

Change-Id: Ice8241508ded51efd38867b97ca19c262b8c4363
2024-05-04 19:14:25 +02:00
Ludovic Courtès
76127069e0
packages: ‘define-public’ replacement calls ‘module-export!’ directly.
This reduces code bloat and loading overhead for package modules, which
use ‘define-public’ extensively.

* guix/packages.scm (define-public*): Use ‘define’ followed by
‘module-export!’ directly instead of ‘define-public’.

Change-Id: I7f56d46b391c1e3eeeb0b9a08a9d34b5de341245
2024-05-04 19:14:24 +02:00
Ludovic Courtès
c14b8636fb
records: Do not inline the constructor.
Struct initialization uses one instruction per field, which contributes
to code bloat in the case of package modules.  With this change, the
‘.rtl-text’ section of ‘gnu/packages/tex.go’ goes from 7,334,508 B to
6,356,592 B (-13%; -7% on the whole file size), which alone is still
larger than the source file (4,2 MB).

* guix/records.scm (make-syntactic-constructor)[record-inheritance]: Use
CTOR instead of ‘make-struct/no-tail’.
Pass ABI-COOKIE as the first argument to CTOR.
(define-record-type*): Define CTOR-PROCEDURE and pass it to
‘make-syntactic-constructor’.

Change-Id: Ifd7b4e884e9fbf21c43fb4c3ad963126ef5cb476
2024-05-04 19:14:24 +02:00
Ludovic Courtès
b011ef4378
packages: Reduce bloat induced by ‘sanitize-inputs’.
At -O1, peval does the bulk of the optimization work and it cannot
reduce things like (null? (list 1 2)), unlike what happens in CPS at
-O2.  Thus, reduce the part of ‘sanitize-inputs’ that’s inlined.

* guix/packages.scm (maybe-add-input-labels): New procedure.
(sanitize-inputs): Turn into a macro; use ‘maybe-add-input-labels’.

Change-Id: Id2283bb5a2f5d714722200bdcfe0b0bfa606923f
2024-05-04 19:14:24 +02:00
Ludovic Courtès
2f93e1682a
records: Do not inline throws for ABI mismatches.
* guix/records.scm (record-abi-mismatch-error): New procedure.
(abi-check): Use it.

Change-Id: I49936599716e117b8fbf26fb9d8f462bbbb8e88b
2024-05-04 19:14:24 +02:00
Ludovic Courtès
8d1d98a3aa
git authenticate: Install pre-push and post-checkout hooks.
* guix/scripts/git/authenticate.scm (install-hooks): New procedure.
(guix-git-authenticate): Use it.
* doc/guix.texi (Invoking guix git authenticate): Document it.

Change-Id: I4464a33193186e85b476a12740e54412bd58429c
2024-05-01 17:26:19 +02:00
Ludovic Courtès
1a5041a502
git authenticate: Print something upon success.
Until now the command would be silent and exit with 0.

* guix/scripts/git/authenticate.scm (guix-git-authenticate): Print
something upon success.

Change-Id: I08d086c35df6ac74ee847df0479660293c68987d
2024-05-01 17:26:19 +02:00
Ludovic Courtès
88573dd928
git authenticate: Discover the repository.
This allows one to run ‘guix git authenticate’ from a sub-directory of
the checkout.

* guix/scripts/git/authenticate.scm (%default-options): Remove
‘directory’ key.
(guix-git-authenticate): Use ‘repository-discover’ when ‘directory’
option is missing.

Change-Id: Ifada00d559254971ed7eeb8c0a8d4ae74ff3defc
2024-05-01 17:26:18 +02:00
Ludovic Courtès
7b4bf4ee88
git authenticate: Record introduction and keyring in ‘.git/config’.
* guix/scripts/git/authenticate.scm (%default-options): Remove
‘keyring-reference’.
(config-value, configured-introduction, configured-keyring-reference)
(configured?, record-configuration, current-branch): New procedures.
(guix-git-authenticate)[missing-arguments]: New procedure.
Use ‘configured-introduction’ when zero arguments are given.
Use ‘configured-keyring-reference’ when ‘-k’ is not passed.  Add call to
‘record-configuration’.
* doc/guix.texi (Invoking guix git authenticate): Document it.

Change-Id: I66e111a83f50407b52da71662629947f83a78bbc
2024-05-01 17:26:18 +02:00
Ludovic Courtès
5d2d081af0
svn-download: Add dependency on tar+gzip for SWH retrieval.
Fixes a bug whereby ‘swh-download-directory-by-nar-hash’ would fail due
to ‘tar’ not being found in $PATH:

  $ GUIX_DOWNLOAD_METHODS=swh guix build -S texlive-geometry --check
  In execvp of tar: No such file or directory
  SWH: found directory with nar-sha256 hash 217e1c8d33aa6fd063f205453a946509b059b85fa7e8d32b7e80054d5e6e5c26 at 'swh:1:dir:ccb56476fb36b2ba0298e57f2b2e69c735ac0a2f'
  […]

* guix/svn-download.scm (svn-fetch)[tar+gzip]: New variable.
[build]: Use it.
(svn-multi-fetch): Likewise.

Change-Id: I37ba9824a5feb6d38f85743519cbd2b2c3e1a9e8
2024-05-01 17:26:18 +02:00
Nicolas Graves
5f03cfacd8
import: beautify-description: Fix ". ." case.
* guix/import/utils.scm (beautify-description): Ensure the matched
string pre is long enough not to fail.

Change-Id: I3172d9a41350b98222cd9ab758487485f26650b3
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2024-04-29 23:56:29 +02:00
Ludovic Courtès
a15db2ee50
pack: ‘-R’ (once) does not include fakechroot fallback.
Previously, ‘guix pack -R’ would build a wrapper containing both the
“userns” and “fakechroot” engines, instead of providing nothing but the
“userns” engine as the manual says.  This patch fixes it.

* guix/scripts/pack.scm (wrapped-package): Add #:fakechroot?
[build]: When FAKECHROOT? is false, ‘elf-loader-compile-flags’ always
returns '().

Change-Id: Ic75cc8c36bf0a3881f299b274d78bd9fc2d4e2bb
2024-04-29 22:54:15 +02:00
Ludovic Courtès
f7f31c8595
publish: Catch all compression errors.
* guix/scripts/publish.scm (swallow-zlib-error): Remove.
(exception-with-kind-and-args?): New variable.
(swallow-compression-error): New macro.
(http-write): Use it instead of ‘swallow-zlib-error’.

Change-Id: I835a1eddd9686741d48365ed37f82b1e1d6f6bdd
2024-04-28 23:19:40 +02:00
Jean-Pierre De Jesus DIAZ
9a60894156
guix: Add xtensa-ath9k-elf platform.
* Makefile.am (MODULES): Add guix/platforms/xtensa.scm.
* guix/platforms/xtensa.scm (xtensa-ath9k-elf): New variable.
* doc/guix.texi: Add xtensa-ath9k-elf documentation.

Change-Id: I51eef245142ed58613340c16d4bf7266e6bf6adb
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2024-04-17 12:13:02 +02:00
Giacomo Leidi
320f28390f
import: github: Recognize more URLs.
Fixes <https://issues.guix.gnu.org/66396>.

This allows more packages to be refreshed, such as launchmon, love,
retux, preseq, edgar, antlr3, and runc.

* guix/import/github.scm (updated-github-url)[updated-url]: Add
additional heuristics to Github url updater.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Change-Id: I6409b3f61872a954f53480afd63b307d16d0b9c0
2024-04-17 12:13:01 +02:00
Ludovic Courtès
8a74bb8030
Autoload (gcrypt hash).
* guix/derivations.scm: Autoload (guix utils) and (gcrypt hash).
* guix/git.scm, guix/store.scm: Autoload (gcrypt hash).

Change-Id: I6145231d41c61f2d8c36e28f29e91074910bdd15
2024-04-15 22:36:42 +02:00
Ludovic Courtès
ee975926ec
Autoload (guix build syscalls).
* guix/discovery.scm, guix/git.scm, guix/nar.scm,
guix/scripts.scm, guix/scripts/build.scm: Autoload (guix build syscalls).
* guix/packages.scm: Autoload (guix build utils).

Change-Id: Ia7703b5f46e55fbfadff63b13c35bfe097ce2220
2024-04-15 22:36:42 +02:00
Ludovic Courtès
657107cb90
ui: Delay use of (guix build syscalls).
This ensures (guix build syscalls) is loaded only when needed.

* guix/ui.scm (%text-width): Unconditionally alias ‘*line-width*’.
Remove initialization.
<top level>: Remove code for Guile < 2.2.7.
(package->recutils): Change default #:width to (terminal-columns).

Change-Id: I990a1b5b0f20a6243e47e314d1d3d4f8298b7151
2024-04-15 22:36:42 +02:00
Ludovic Courtès
44de6d3990
guix: Delay loading of (gnutls).
(web …) modules pull in (gnutls) indirectly.  Arrange to load them
lazily, thereby reducing I/O and allocations when GnuTLS is not needed
such as when running ‘guix describe’ or ‘guix shell’ on a cache hit.

* guix/download.scm: Autoload (web uri).
* guix/scripts/describe.scm: Likewise.
* guix/store.scm: Likewise.
(%default-substitute-urls): Remove ‘resolve-interface’ call and use
https URLs unconditionally.

Change-Id: Ide470c556a14866e8740966d25821df487a79859
2024-04-15 22:36:42 +02:00
Ludovic Courtès
54be7795b5
utils: Don’t re-export ‘call-with-temporary-output-file’.
* guix/utils.scm: Remove re-export of ‘call-with-temporary-output-file’.
Autoload a number of modules.
* guix/download.scm, guix/import/hackage.scm,
guix/import/hexpm.scm, guix/import/opam.scm,
guix/import/pypi.scm, tests/cpio.scm, tests/egg.scm,
tests/opam.scm, tests/publish.scm, tests/store-database.scm,
tests/utils.scm: Adjust imports accordingly.

Change-Id: I3f5e94631397996a30be2ea4ff8b50a3371e8ee7
2024-04-15 22:36:42 +02:00
Ludovic Courtès
6dc238f261
guix system: Autoload some more.
* guix/scripts/system.scm: Autoload more modules.

Change-Id: I665857109bbfd1e3755135daacc01affcb3eb2eb
2024-04-15 22:36:42 +02:00
Ludovic Courtès
276e658943
channels: Autoload (git …) modules.
Autoloading Guile-Git is important in cases where (guix channels) is
used for little more than the <channel> definition.  This is the case,
for example, of ‘guix describe’ or ‘guix shell’.

This reduces from 177 to 121 the number of .go files loaded when
running:

  ./pre-inst-env strace -e openat -o /tmp/log.strace \
     guix describe -p /var/guix/profiles/per-user/$USER/current-guix
  grep 'openat.*\.go.* = [0-9]' < /tmp/log.strace |wc -l

Likewise, it reduces the max RSS (as measured by ‘time -f %M guix
describe -p …’) from 54 to 37 MiB.

* guix/channels.scm: Autoload (git …) modules.

Change-Id: Ia58a99c865bf0f6fe461a1e71390d075e760f8d6
2024-04-15 22:36:42 +02:00
Ludovic Courtès
96d2de0185
git: Add ‘tag->commit’ and use it in (guix channels).
* guix/git.scm (tag->commit): New procedure, taken from…
(resolve-reference): … here.  Use it in the ‘tag’ case.
* guix/channels.scm (resolve-channel-news-entry-tag): Use ‘tag->commit’
instead of custom code.

Change-Id: I46ea387345dc1b695ce0702991a52d0cde29e2f0
2024-04-15 22:36:41 +02:00
Ludovic Courtès
088e181c0a
channels: Move ‘commit-short-id’ to (guix git).
* guix/channels.scm (commit-short-id): Move to…
* guix/git.scm (commit-short-id): … here.

Change-Id: If4b34b1d82b1aa5068d157f26e57e8aecc967061
2024-04-15 22:36:41 +02:00
Ludovic Courtès
a57518484e
git: Add ‘repository-info’ and use it in (guix channels).
* guix/git.scm (repository-info): New procedure.
* guix/channels.scm (repository->guix-channel): Use it instead of local
code.

Change-Id: I74c758c73a22e16031571ca4271cc9cab0492f6e
2024-04-15 22:36:41 +02:00
Ludovic Courtès
3cadb61963
channels: Use SRFI-71 instead of SRFI-11.
* guix/channels.scm (latest-channel-instance): Use SRFI-71.

Change-Id: I73531c98b3034e228006ed91518cc7bfedc784fd
2024-04-15 22:36:41 +02:00
Ludovic Courtès
b30b838d50
gexp: Add #:guile parameter to ‘gexp->file’ and ‘scheme-file’.
This brings ‘gexp->file’ in line with its documentation and mirrors
what’s done for ‘gexp->script’ and ‘program-file’.

Fixes <https://issues.guix.gnu.org/69401>.

* guix/gexp.scm (gexp->file): Add #:guile, as was already documented.
(<scheme-file>)[guile]: New field.
(scheme-file): Add #:guile.
(scheme-file-compiler): Honor ‘guile’ field.
* tests/gexp.scm ("gexp->file")
("gexp->file + file-append", "gexp->file + #:splice?")
("gexp->file, cross-compilation")
("gexp->file, cross-compilation with default target")
Add #:guile to ‘gexp->file’ calls.
("gexp-modules deletes duplicates")
("gexp->derivation & with-imported-module & computed module")
("gexp->derivation & with-extensions", "scheme-file"): Likewise for
‘scheme-file’ calls.

Change-Id: I47536063d5e411e561ec321e535267e92dd06044

Reported-by: Efraim Flashner <efraim@flashner.co.il>
Change-Id: I58d653c7fbe65c665bafcbd332ac9b264ddeab64
2024-04-08 00:05:48 +02:00
Ludovic Courtès
a7f15c9ecf
reconfigure: /run/current-system points to generation.
* guix/scripts/system/reconfigure.scm (switch-system-program): Set
‘GUIX_NEW_SYSTEM’ to GENERATION rather than OS, for consistency with
what ‘boot-system’ does.
* gnu/tests/reconfigure.scm (run-switch-to-system-test)
["script activated the new generation"]: Adjust accordingly.

Change-Id: I57b693606a41b8c952df32bbdc2b9120c6dbfd6a
2024-04-08 00:05:48 +02:00
Ian Eure
298aed72a2
gnu: open-ssh-session: Don’t require public key.
Public keys aren’t required for client connections, and this binding is
unused.  The behavior of assuming a ".pub"-suffixed file exists in the same
directory as the secret key is undocumented and surprising.

* guix/scripts/offload.scm (open-ssh-session): Delete `public' binding.

Signed-off-by: Christopher Baines <mail@cbaines.net>
Change-Id: I9b532be2abe68dae0323e4ef6e1ceab1e5603359
2024-04-07 19:43:07 +01:00
Christopher Baines
acd3cb258f
guix: nar: Update path-id to valid-path-id.
To match the change in (guix store database).

* guix/nar.scm (finalize-store-file): Update path-id to valid-path-id.

Change-Id: I69255c7acc1ea4e4855a4621bfcec54f595dd24d
2024-04-07 19:32:33 +01:00
Wojtek Kosior
c3dfb14f9b
store: database: Use correct function name in assertion.
* guix/store/database.scm (register-valid-path): Replace "sqlite-register"
with "register-valid-path" as argument to `assert-integer'.

Change-Id: Id93687e90d0a806d715006ca0b2498a1d10cfba6
Signed-off-by: Christopher Baines <mail@cbaines.net>
2024-04-07 19:07:26 +01:00
Wojtek Kosior
a3c28d7f7e
scripts: system: Rename `sqlite-register'.
* guix/scripts/system.scm (define-module): #:autoload `register-valid-path'
instead of `sqlite-register'.
(copy-item): Call it with the new name.

Change-Id: I24f71f822a5f400a47adee43f61184a4fbcb9741
Signed-off-by: Christopher Baines <mail@cbaines.net>
2024-04-07 19:07:15 +01:00
Zheng Junjie
91ad8a1444
build: qt-utils: Use QML_IMPORT_PATH2 for Qt 5 (fixup).
This follows a499d1772d ("build: qt-utils: Use
QML_IMPORT_PATH for Qt 6.").

* guix/build/qt-utils.scm (variables-for-wrapping): Use QML_IMPORT_PATH2 when
the Qt major version is <= 6, QML_IMPORT_PATH otherwise.

Change-Id: I2dd1d426aef117105708cc4004078deaa28c15cd
Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2024-04-06 11:42:56 -04:00
Ludovic Courtès
d6a3818761
build-system/channel: Add support for additional channels.
Until now, ‘channel-build-system’ would assume a single channel, the
‘guix’ channel.  This change lets users specify additional channels
using the #:channels parameter.

* guix/build-system/channel.scm (build-channels): Add #:channels and
honor it.
(channel-build-system): In ‘lower’, add #:channels and honor it.
* doc/guix.texi (Build Systems): Document it.

Change-Id: I36c1d19cbeee02a4d1144de089b78df0390774a0
2024-04-05 18:21:23 +02:00
Ludovic Courtès
96802f490d
ssh: ‘open-ssh-session’ displays the port number upon error.
* guix/ssh.scm (open-ssh-session): Show the port number in error message.

Change-Id: I18a3dc54223bb29782dcdd43d3252c720525c31d
2024-04-04 15:48:47 +02:00
Maxim Cournoyer
a499d1772d
build: qt-utils: Use QML_IMPORT_PATH for Qt 6.
* guix/build/qt-utils.scm (variables-for-wrapping): Use QML_IMPORT_PATH
instead of QML2_IMPORT_PATH when the major version is greater or equal to 6.

Change-Id: I3480b540d3c0caafd3cc3d6574442dc97f540953
2024-04-03 18:05:10 -04:00
Christopher Baines
c9cd16c630
store: database: Rename a couple of procedures.
These names should be more descriptive.

* guix/store/database.scm (path-id): Rename to select-valid-path-id.
(sqlite-register): Rename to register-valid-path.
(register-items): Update accordingly.

Change-Id: I6d4a14d4cde9d71ab34d6ffdbfbfde51b2c0e1db
2024-04-03 17:30:53 +01:00
Christopher Baines
c6cc9aeb87
store: database: Refactor sqlite-register.
The update-or-insert procedure name was unhelpfully generic, and these changes
should improve the code readability.

* guix/store/database.scm (update-or-insert): Remove procedure and inline
functionality in to sqlite-register.

Change-Id: Ifab0cdb7972d095460cc1f79b8b2f0e9b958059c
2024-04-03 17:30:43 +01:00
Christopher Baines
511d68c71d
store: database: Stop finalizing prepared statements.
Especially since we're asking for these to be cached.

Management of prepared statements isn't trivial, since you don't want to keep
them forever as this can lead to poor query performance, but I don't think
that finalizing them immediately is the right solution.

Change-Id: I61706b4d09d771835bb8f074b8f6a6ee871f5e2d

* guix/store/database.scm (sqlite-step-and-reset): New procedure.
(last-insert-row, path-id, update-or-insert, add-references): Don't finalize
prepared statements.

Change-Id: I2a2c6deb43935d67df9e43000a5105343d72b3e6
2024-04-03 17:18:39 +01:00
Christopher Baines
cdd4a0c3c9
store: database: Inline SQL to where it's used.
This makes the code easier to read, as you don't have to keep jumping between
the two places.

* guix/store/database.scm (path-id-sql, update-sql, insert-sql,
add-reference-sql): Remove variables.
(path-id, update-or-insert, add-references): Include SQL.

Change-Id: I53b4ab973be8d0cd10a0f35ba25972f1c9680353
2024-04-03 17:18:39 +01:00
Christopher Baines
b914fb9b70
store: database: Remove with-statement and associated code.
I think using dynamic-wind to finalize all statements is the wrong
approach. Firstly it would be good to allow reseting statements rather than
finalizing them. Then for the problem of handling errors, the approach I've
settled on in the build coordinator is to close the database connection, since
that'll trigger guile-sqlite3 to finalize all the cached statements.

This reverts commit 5d6e225528.

* .dir-locals.el (scheme-mode): Remove with-statement.
* guix/store/database.scm (call-with-statement): Remove procedure.
(with-statement): Remove syntax rule.
(call-with-transaction, last-insert-row-id, path-id, update-or-insert,
add-references): Don't use with-statement.

Change-Id: I2fd976b3f12ec8105cc56350933a953cf53647e8
2024-04-03 17:18:38 +01:00
Christopher Baines
22fa92cf28
store: database: Remove call-with-savepoint and associated code.
While care does need to be taken with making updates or inserts to the
ValidPaths table, I think that trying to ensure this within update-or-insert
is the wrong approach. Instead, when working with the store database, only one
connection should be used to make changes to the database and those changes
should happen in transactions that ideally begin immediately.

This reverts commit 37545de4a3.

* .dir-locals.el (scheme-mode): Remove entries for call-with-savepoint and
call-with-retrying-savepoint.
* guix/store/database.scm (call-with-savepoint, call-with-retrying-savepoint):
Remove procedures.
(update-or-insert): Remove use of call-with-savepoint.

Change-Id: I2f986e8623d8235a90c40d5f219c1292c1ab157b
2024-04-03 17:18:38 +01:00
Christopher Baines
ecbab97f07
scripts: substitute: Replace some leave calls with raise.
These calls happen inside of with-error-handling, so the effect should be the
same, but this opens up the possibility of using this code in a program that
doesn't want to exit when one of these error conditions is met.

Change-Id: I15d963615d85d419559fa0f4333fa4dc1dfbfd3b

* guix/scripts/substitute.scm (download-nar, process-substitution): Use raise
formatted-message rather than leave.

Change-Id: Idd0880206b69e3903e19e0536b87d65a52c200d5
2024-04-03 17:18:38 +01:00
Christopher Baines
dcf0cca8d7
scripts: substitute: Allow not using with-timeout in download-nar.
I don't think the approach of using SIGALARM here for the timeout will work
well in all cases (e.g. when using Guile Fibers), so make it possible to avoid
this.

* guix/scripts/substitute.scm (download-nar): Pass the fetch timeout in as an
option.

Change-Id: I8cbe6cdfa10cdaa7d41974cbea56a95f5efecfe6
2024-04-03 17:18:38 +01:00
Christopher Baines
d9276a46bf
scripts: substitute: Remove side effect warning from network-error?.
Instead, display the warning from process-substitution and
process-substitution/fallback in the relevant places.

I'm looking at this because I want to make the substitute code less tied to
the script and usable in the Guile guix-daemon.

* guix/scripts/substitute.scm (network-error?): Move warning to…
(process-substitution/fallback, process-substitution): here.

Change-Id: I082b482c0e6ec7e02a8d437ba22dcefca5c40787
2024-04-03 17:18:38 +01:00
Christopher Baines
ac19e038b4
Switch order of the default substitute servers.
The aim here is to improve the user experience.  There's anecdotal evidence
that the network performance for bordeaux is better compared to ci at least
for some users, and I don't know of any issues with rate limiting or access
restriction for bordeaux compared to ci.  It also has IPv6 support.

Additionally, bordeaux generally had more substitutes than ci, particularly
for aarch64-linux and armhf-linux.  This change will offer a very slight
speedup for those substitutes that only bordeaux has.

Bordeaux has been a default substitute server for nearly 3 years now and I
think this change is overdue.  I'm also hopeful that we'll be able to build on
the testing regarding mirrors for bordeaux, and that'll allow potentially
improving the hosting setup (through providing more redundancy) and further
improving substitute fetching for users who currently have issues with
substitute access.

* config-daemon.ac: Switch substitute urls order.
* doc/guix.texi: Ditto.
* etc/guix-install.sh: Ditto.
* gnu/installer/newt/network.scm (wait-service-online): Ditto.
* guix/store.scm (%default-substitute-urls): Ditto.

Change-Id: I4f6d93ae1fc8b03d80b47b18b5749a51f1fde17b
Signed-off-by: Christopher Baines <mail@cbaines.net>
2024-04-03 17:18:38 +01:00
Ludovic Courtès
7bc1f7be62
ui: Autoload some more.
* guix/ui.scm: Autoload a number of modules.

Change-Id: I22d4f719dae73594499522ce6dc8464948f564ec
2024-03-31 18:39:57 +02:00
Liliana Marie Prikler
72ca1a336a
Merge branch 'emacs-team' 2024-03-30 10:02:52 +01:00