me
/
guix
Archived
1
0
Fork 0
Commit Graph

947 Commits (dfd9bb7b1ae6bfbc899f85040325e76478f8088e)

Author SHA1 Message Date
Ludovic Courtès 3f83c0b7c7
guix system: Add 'edit' sub-command.
* guix/scripts/system/edit.scm: New file.
* Makefile.am (MODULES): Add it.
* guix/scripts/system.scm (show-help): Mention "edit".
(actions): Add it.
(process-command): Handle it.
* doc/guix.texi (Invoking guix system): Document it.
* po/guix/POTFILES.in: Add guix/scripts/system/edit.scm.
2022-06-04 12:04:24 +02:00
Mathieu Othacehe d2c06bf2ff
platforms: Remove the s390x platform.
Turns out this platform doesn't have a bootstrap tarball and should be
considered as not supported for now.

* guix/platforms/s390.scm: Remove it.
* Makefile.am (MODULES): Adapt it.
* doc/guix.texi (Foreign Architectures): Ditto.
2022-05-25 17:11:32 +02:00
Mathieu Othacehe a9dcd60bc1
platforms: Remove the hurd module.
The hurd platform is now defined in the (guix platforms x86) module.

* guix/platforms/hurd.scm: Remove it.
* Makefile.am (MODULES): Adapt it.
2022-05-25 13:01:15 +02:00
Josselin Poiret dab819d5c4
Move (gnu platform) and (gnu platforms ...) to guix/.
* gnu/platform.scm:
* gnu/platforms/arm.scm:
* gnu/platforms/hurd.scm:
* gnu/platforms/mips.scm:
* gnu/platforms/powerpc.scm:
* gnu/platforms/riscv.scm:
* gnu/platforms/s390.scm:
* gnu/platforms/x86.scm: Move to guix/.

* Makefile.am:
* doc/guix.texi (Porting to a New Platform):
* etc/release-manifest.scm:
* gnu/ci.scm:
* gnu/image.scm:
* gnu/local.mk:
* gnu/packages/bioinformatics.scm:
* gnu/packages/bootstrap.scm:
* gnu/packages/cross-base.scm:
* gnu/packages/instrumentation.scm:
* gnu/packages/linux.scm:
* gnu/system/image.scm:
* gnu/system/images/hurd.scm:
* gnu/system/images/novena.scm:
* gnu/system/images/pine64.scm:
* gnu/system/images/pinebook-pro.scm:
* gnu/system/images/rock64.scm:
* guix/scripts/build.scm:
* guix/scripts/system.scm:
* guix/self.scm: Update (gnu platform...) to (guix platform...).

Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
2022-05-25 09:27:25 +02:00
Philip McGrath 903c82583e
import: Add Elm importer.
* guix/import/elm.scm, guix/scripts/import/elm.scm: New files.
* Makefile.am (MODULES): Add them.
* guix/scripts/import.scm (importers): Add "elm".
* doc/guix.texi (Invoking guix import): Document Elm importer.
* doc/contributing.texi (Elm Packages): Mention it.
* tests/elm.scm ("(guix import elm)"): New test group.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2022-05-22 01:07:52 +02:00
Philip McGrath aefcfdd0ae
guix: Add elm-build-system.
* gnu/packages/patches/elm-offline-package-registry.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/elm.scm (elm): Use it.
* guix/build-system/elm.scm, guix/build/elm-build-system.scm,
tests/elm.scm: New files.
* Makefile.scm (MODULES, SCM_TESTS): Add them.
* doc/guix.texi (Build Systems): Document 'elm-build-system'.
* doc/contributing.texi (Elm Packages): New section. Document naming
conventions and utilities.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2022-05-22 01:07:51 +02:00
Tobias Geerinckx-Rice 4b08526865
gnu: Remove linux-libre@4.4 configuration files.
This follows up on commit bc54947410.

* gnu/packages/aux-files/linux-libre/4.4-i686.conf,
gnu/packages/aux-files/linux-libre/4.4-x86_64.conf: Delete files.
* Makefile.am (AUX_FILES): Remove them.
2022-05-01 02:00:00 +02:00
Ludovic Courtès 3682bd4003
Add (guix least-authority).
* guix/least-authority.scm: New file.
* Makefile.am (MODULES): Add it.
* gnu/build/shepherd.scm (default-mounts): Make public.
2022-05-01 21:30:35 +02:00
Leo Famulari b6b2de2a0d
gnu: Remove linux-libre 5.16.
This kernel series is no longer supported upstream.

* gnu/packages/linux.scm (linux-libre-5.16-version,
linux-libre-5.16-gnu-revision, deblob-scripts-5.16, linux-libre-5.16-source,
linux-libre-headers-5.16, linux-libre-5.16): Remove variables.
(linux-libre-version, linux-libre-gnu-revision, linux-libre-pristine-source,
linux-libre-source, linux-libre, linux-libre-with-bpf): Use linux-libre 5.17.
* gnu/packages/aux-files/linux-libre/5.16-arm.conf,
gnu/packages/aux-files/linux-libre/5.16-arm64.conf,
gnu/packages/aux-files/linux-libre/5.16-i686.conf,
gnu/packages/aux-files/linux-libre/5.16-x86_64.conf: Delete files.
* Makefile.am (AUX_FILES): Remove them.
2022-04-23 13:45:46 -04:00
Ludovic Courtès c42b7baf13
shell: Add '--export-manifest'.
* guix/scripts/shell.scm (show-help, %options): Add '--export-manifest'.
(manifest-entry-version-prefix, manifest->code*)
(export-manifest): New procedures.
(guix-shell): Honor '--export-manifest'.
* tests/guix-shell-export-manifest.sh: New file.
* Makefile.am (SH_TESTS): Add it.
* doc/guix.texi (Invoking guix shell): Document '--export-manifest'.
(Invoking guix environment): Link to it.
(Invoking guix pack): Likewise.
2022-04-04 22:58:04 +02:00
Julien Lepiller ff194cb245
maint: Implement translation thresholds.
Do not download new translations for the cookbook and the manual when
they are below 10% completion, and remove existing translations when
they fall below 5%.

* Makefile.am (download-po): Implement translation thresholds.
2022-04-02 18:14:34 +02:00
Leo Famulari 943d4b775b
gnu: linux-libre: Add linux-libre 5.17.
* gnu/packages/linux.scm (linux-libre-5.17-version,
linux-libre-5.17-gnu-revision, deblob-scripts-5.17,
linux-libre-5.17-pristine-source, linux-libre-5.17-source,
linux-libre-headers-5.17, linux-libre-5.17): New variables.
* gnu/packages/aux-files/linux-libre/5.17-arm.conf,
gnu/packages/aux-files/linux-libre/5.17-arm64.conf,
gnu/packages/aux-files/linux-libre/5.17-i686.conf,
gnu/packages/aux-files/linux-libre/5.17-x86_64.conf: New files.
* Makefile.am (AUX_FILES): Add them.
2022-03-26 17:59:57 -04:00
Maxim Cournoyer a9429c8f22
Merge branch 'staging' into core-updates. 2022-03-21 23:39:43 -04:00
Ludovic Courtès 13ff4ae5b1
maint: 'assert-binaries-available' only checks ci.guix.gnu.org.
* Makefile.am (assert-binaries-available): Pass '--substitute-urls'.
2022-03-10 11:43:12 +01:00
Ludovic Courtès 049aefddb2
tests: Add (guix http-client) tests.
* tests/http-client.scm: New file.
* Makefile.am (SCM_TESTS): Add it.
* .dir-locals.el (scheme-mode): Add 'with-http-server'.
2022-03-06 22:49:46 +01:00
Maxim Cournoyer 0d41fe4855
Merge branch 'staging' into core-updates.
With "conflicts" resolved in (mostly in favor of master/staging):
	gnu/packages/admin.scm
	gnu/packages/gnuzilla.scm
	gnu/packages/gtk.scm
	gnu/packages/kerberos.scm
	gnu/packages/linux.scm
	guix/lint.scm
2022-01-25 23:48:37 -05:00
Leo Famulari 44c2211c64
gnu: Add linux-libre 5.16.2.
* gnu/packages/aux-files/linux-libre/5.16-arm.conf,
gnu/packages/aux-files/linux-libre/5.16-arm64.conf,
gnu/packages/aux-files/linux-libre/5.16-i686.conf,
gnu/packages/aux-files/linux-libre/5.16-x86_64.conf : New files.
* Makefile.am (AUX_FILES): Add them.
* gnu/packages/linux.scm (linux-libre-5.16-version,
linux-libre-5.16-gnu-revision, deblob-scripts-5.16,
linux-libre-5.16-pristine-source, linux-libre-5.16-source,
linux-libre-headers-5.16, linux-libre-5.16): New variables.
2022-01-26 13:17:41 -05:00
Maxime Devos 81f036bfd2
import/github: Test it.
* Makefile.am (SCM_TESTS): Register new tests.
* guix/import/github.scm
  (%github-api): New variable.
  (fetch-releases-or-tags): Use the new variable.
* tests/import-github.scm: New file with tests.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2022-01-16 23:56:56 +01:00
Liliana Marie Prikler 0f9e73841e
gnu: renpy: Move renpy command to aux-files.
* gnu/packages/aux-files/renpy/renpy.in: New file.
* gnu/packages/game-development.scm (renpy)[install]: Use renpy.in with
substitute*.
* Makefile.am (AUX_FILES): Add it here.
2022-01-15 09:41:59 +01:00
Sarah Morgensen 064c367716
guix hash: Extract file hashing procedures.
* guix/scripts/hash.scm (guix-hash)[vcs-file?] (nar-hash, default-hash):
  Extract hashing logic to...
* guix/hash.scm (vcs-file?, file-hash*): ... these new procedures in this
  new file.

Modified-by: Maxime Devos <maximedevos@telenet.be>
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2022-01-06 16:27:30 +01:00
Ludovic Courtès a644f88d28
Add (guix cpu).
* guix/cpu.scm: New file.
* Makefile.am (MODULES): Add it.
2022-01-01 15:23:24 +01:00
Leo Famulari ccd9d07de0
build: Fix typo in Makefile.
* Makefile.am (release): Fix tense of "produce"
2021-12-28 23:28:03 -05:00
Attila Lendvai 9ebc9ca070
tests: Move keys into ./tests/keys/ and add a third ed25519 key.
The third key will be used in an upcoming commit.

Rename public keys to .pub.

* guix/tests/gnupg.scm (%ed25519-3-public-key-file): New variable.
(%ed25519-3-secret-key-file): New variable.
(%ed25519-2-public-key-file): Renamed from %ed25519bis-public-key-file.
(%ed25519-2-secret-key-file): Renamed from %ed25519bis-secret-key-file.
* tests/keys/ed25519-3.key: New file.
* tests/keys/ed25519-3.sec: New file.

Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
2021-12-22 10:53:19 +01:00
Efraim Flashner 6ccf8ea81f
Merge branch 'master' into core-updates 2021-12-19 15:15:11 +02:00
Ricardo Wurmus 9bc0f45df5
Merge remote-tracking branch 'origin/master' into core-updates-frozen 2021-12-05 19:17:41 +01:00
Leo Famulari 0384bceadb
gnu: Remove linux-libre 5.14.
* gnu/packages/linux.scm (linux-libre-5.14-version,
linux-libre-5.14-gnu-revision, deblob-scripts-5.14,
linux-libre-5.14-pristine-source, linux-libre-5.14-source,
linux-libre-headers-5.14, linux-libre-5.14): Remove variables.
* gnu/packages/aux-files/linux-libre/5.14-arm.conf,
gnu/packages/aux-files/linux-libre/5.14-arm64.conf,
gnu/packages/aux-files/linux-libre/5.14-i686.conf,
gnu/packages/aux-files/linux-libre/5.14-x86_64.conf: Delete files.
* Makefile.am (AUX_FILES): Remove them.
2021-11-26 16:54:47 -05:00
Leo Famulari 14f6c21077
gnu: Add linux-libre 5.15.5.
* gnu/packages/linux.scm (linux-libre-5.15-version,
linux-libre-5.15-gnu-revision, deblob-scripts-5.15,
linux-libre-5.15-pristine-source, linux-libre-5.15-source,
linux-libre-headers-5.15, linux-libre-5.15): New variables.
* gnu/packages/aux-files/linux-libre/5.15-arm.conf,
gnu/packages/aux-files/linux-libre/5.15-arm64.conf,
gnu/packages/aux-files/linux-libre/5.15-i686.conf,
gnu/packages/aux-files/linux-libre/5.15-x86_64.conf: New files.
* Makefile.am (AUX_FILES): Add them
2021-11-26 16:54:47 -05:00
Efraim Flashner bc5155b952
Merge remote-tracking branch 'origin/master' into core-updates-frozen 2021-10-31 14:49:47 +02:00
Xinglu Chen 40acbaf078
Add tests for ‘guix home import’.
* tests/home-import.scm: New file.
* Makefile.am (SCM_TESTS): Add it.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2021-10-31 00:51:05 +02:00
Ludovic Courtès 80edb7df65
Add 'guix shell'.
* guix/scripts/shell.scm, tests/guix-shell.sh: New files.
* Makefile.am (MODULES): Add 'shell.scm'.
(SH_TESTS): Add 'tests/guix-shell.sh'.
* guix/scripts/environment.scm (show-environment-options-help): New
procedure.
(show-help): Use it.
(guix-environment*): New procedure.
(guix-environment): Use it.
* po/guix/POTFILES.in: Add it.
* doc/guix.texi (Features): Refer to "guix shell"
(Invoking guix package): Likewise.
(Development): Likewise.
(Invoking guix shell): New node.
(Invoking guix environment): Add deprecation warning.
(Debugging Build Failures): Use 'guix shell' in examples.
(Invoking guix container): Refer to 'guix shell'.
(Invoking guix processes, Virtualization Services): Adjust examples to
use 'guix shell'.
* doc/contributing.texi (Building from Git): Refer to 'guix shell'.
* etc/completion/bash/guix: Handle "shell".
2021-10-25 18:58:18 +02:00
Mathieu Othacehe e486b2b674
Merge remote-tracking branch 'signed/master' into core-updates 2021-10-18 14:37:26 +00:00
Julien Lepiller 0623138ffa
maint: Factorize po xref translation.
This ensures we use the same method in "make" as in "guix/self.scm".

* Makefile.am: Build guix/build/po.scm.
* build-aux/convert-xref.scm: New file.
* doc/local.mk (xref_command): Use it.
* guix/self.scm (translate-cross-references): Move it...
* guix/build/po.scm: Parse comments and flags separately to find fuzzy
flags.
(translate-cross-references): ...here.
(parse-tree->assoc): Ignore fuzzy entries.
2021-10-17 18:26:44 +02:00
Mathieu Othacehe a1eca979fb
Merge remote-tracking branch 'origin/master' into core-updates-frozen. 2021-10-12 17:46:23 +00:00
Oleg Pykhalov 5e68f7a7b3
tests: Add guix-home.sh.
* tests/guix-home.sh: New file.
* Makefile.am (SH_TESTS): Add this.
2021-10-09 19:24:19 +03:00
Tobias Geerinckx-Rice a1679b74c9
Revert the #51061 patch series for now.
This reverts commits f63c79bf76
..f86f7e24b39928247729020df0134e2e1c4cde62 for more chillax reviewing.

See <https://issues.guix.gnu.org/51061#32>.
2021-10-08 23:31:34 +02:00
Hartmut Goebel 1660253c3c
build-system: Add 'rebar3-build-system'.
* guix/build-system/rebar3.scm, guix/build/rebar3-build-system.scm: New files.
* Makefile.am (MODULES): Add them.
2021-10-07 22:35:28 +02:00
Hartmut Goebel d780d0a2bb
import: Add hex.pm importer.
hex.pm is a package repository for Erlang and Elixir.

* guix/scripts/import.scm (importers): Add "hexpm".
* guix/scripts/import/hexpm.scm, guix/import/hexpm.scm,
  guix/hexpm-download.scm: New files.
* guix/import/utils.scm (source-spec->object): Add "hexpm-fetch" to list of
  fetch methods.
* guix/upstream.scm (package-update/hexpm-fetch): New function.
  (%method-updates) Add it.
* Makefile.am: Add them.
2021-10-07 22:35:28 +02:00
Hartmut Goebel f63c79bf76
Add (guix extracting-download).
* guix/extracting-download.scm: New file
* Makefile.am (MODULES): Add it.
2021-10-07 22:24:23 +02:00
Maxime Devos fae2fcdbc9
build-system/mozilla: New build system.
* guix/build-system/mozilla.scm
  (lower-mozilla): New procedure.
  (mozilla-build-system): New variable.
* Makefile.am (MODULES): Add it.
* doc/guix.texi (Build Systems): Document it.

Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
2021-10-02 11:00:01 +00:00
Oleg Pykhalov 6ae4644984
Merge branch 'wip-guix-home' 2021-09-27 17:27:12 +03:00
Leo Famulari 3db282a161
gnu: linux-libre: Update to 5.14.7.
* gnu/packages/linux.scm (linux-libre-5.13-version,
linux-libre-5.13-gnu-revision, linux-libre-5.13-pristine-source,
linux-libre-5.13-source, linux-libre-headers-5.13, linux-libre-5.13): Remove
variables.
(linux-libre-version, linux-libre-gnu-revision, linux-libre-pristine-source,
linux-libre-source, linux-libre, linux-libre-with-bpf): Use 5.14.
* gnu/packages/aux-files/linux-libre/5.13-arm.conf,
gnu/packages/aux-files/linux-libre/5.13-arm64.conf,
gnu/packages/aux-files/linux-libre/5.13-i686.conf,
gnu/packages/aux-files/linux-libre/5.13-x86_64.conf: Delete files.
* Makefile.am (AUX_FILES): Remove them.
2021-09-22 14:47:56 -04:00
Xinglu Chen 59ee10754e
import: Add 'generic-git' updater.
* guix/git.scm (ls-remote-refs): New procedure.
* tests/git.scm ("remote-refs" "remote-refs: only tags"): New tests.
* guix/import/git.scm: New file.
* doc/guix.texi (Invoking guix refresh): Document it.
* tests/import-git.scm: New test file.
* Makefile.am (MODULES, SCM_TESTS): Register the new files.

Co-authored-by: Sarah Morgensen <iskarian@mgsn.dev>
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2021-09-18 19:37:45 +02:00
Marius Bakke 5c3cb22c9b
Merge branch 'master' into core-updates-frozen
Conflicts:
	gnu/packages/bioinformatics.scm
	gnu/packages/chez.scm
	gnu/packages/docbook.scm
	gnu/packages/ebook.scm
	gnu/packages/gnome.scm
	gnu/packages/linux.scm
	gnu/packages/networking.scm
	gnu/packages/python-web.scm
	gnu/packages/python-xyz.scm
	gnu/packages/tex.scm
	gnu/packages/version-control.scm
	gnu/packages/xml.scm
	guix/build-system/dune.scm
	guix/build-system/go.scm
	guix/build-system/linux-module.scm
	guix/packages.scm
2021-09-17 01:25:52 +02:00
Ludovic Courtès 98712c14fe
etc: Add 'disarchive-manifest.scm'.
* etc/disarchive-manifest.scm: New file.
* Makefile.am (EXTRA_DIST): Add it.
2021-09-14 11:50:58 +02:00
Ludovic Courtès 3b758dd22d
etc: Add 'source-manifest.scm'.
* etc/source-manifest.scm: New file.
* Makefile.am (EXTRA_DIST): Add it.
2021-09-14 11:50:58 +02:00
Andrew Tropin 879abff4fd
scripts: home: Add import subcommand.
* guix/scripts/home/import.scm: New file.
* Makefile.am (MODULES): Add it.

Signed-off-by: Oleg Pykhalov <go.wigust@gmail.com>
2021-09-09 20:26:51 +03:00
Andrew Tropin 89e05a6955
scripts: Add 'guix home'.
* guix/scripts/home.scm: New file.
* Makefile.am (MODULES): Add it.

Signed-off-by: Oleg Pykhalov <go.wigust@gmail.com>
2021-09-09 20:26:51 +03:00
Ludovic Courtès d9dfbf886d
Merge branch 'master' into core-updates-frozen 2021-09-07 14:19:08 +02:00
Leo Famulari 8b2b027df9
gnu: Add linux-libre 5.14.1.
* gnu/packages/linux.scm (linux-libre-5.14-version, deblob-scripts-5.14,
linux-libre-5.14-pristine-source, linux-libre-5.14-source,
linux-libre-headers-5.14, linux-libre-5.14): New variables.
* gnu/packages/aux-files/linux-libre/5.14-arm.conf,
gnu/packages/aux-files/linux-libre/5.14-arm64.conf,
gnu/packages/aux-files/linux-libre/5.14-i686.conf,
gnu/packages/aux-files/linux-libre/5.14-x86_64.conf: New files.
* Makefile.am (AUX_FILES): Add them.
2021-09-06 22:27:43 -04:00
Marius Bakke c4133c43c7
Merge branch 'master' into core-updates-frozen
Conflicts:
	gnu/packages/algebra.scm
	gnu/packages/games.scm
	gnu/packages/golang.scm
	gnu/packages/kerberos.scm
	gnu/packages/mail.scm
	gnu/packages/python.scm
	gnu/packages/ruby.scm
	gnu/packages/scheme.scm
	gnu/packages/tex.scm
	gnu/packages/tls.scm
	gnu/packages/version-control.scm
2021-08-12 00:30:27 +02:00
Marius Bakke b029be2ee0
Merge branch 'master' into core-updates-frozen
Conflicts:
	gnu/packages/bioinformatics.scm
	gnu/packages/cmake.scm
	gnu/packages/curl.scm
	gnu/packages/emacs-xyz.scm
	gnu/packages/gpodder.scm
	gnu/packages/music.scm
	gnu/packages/patches/glibc-bootstrap-system.patch
	gnu/packages/python-xyz.scm
	gnu/packages/shells.scm
	gnu/packages/statistics.scm
2021-07-29 22:34:57 +02:00
Leo Famulari 4f108e4e5c
gnu: linux-libre: Update to 5.13.6.
* gnu/packages/linux.scm (linux-libre-5.12-version, deblob-scripts-5.12
linux-libre-5.12-pristine-source, linux-libre-5.12-source,
linux-libre-headers-5.12, linux-libre-5.12): Remove variables.
(linux-libre-version, linux-libre-pristine-source, linux-libre-source,
linux-libre): Update to the 5.13 kernel series.
(linux-libre-with-bpf): Update to 5.13 kernel series.
* gnu/packages/aux-files/linux-libre/5.12-arm.conf,
gnu/packages/aux-files/linux-libre/5.12-arm64.conf,
gnu/packages/aux-files/linux-libre/5.12-i686.conf,
gnu/packages/aux-files/linux-libre/5.12-x86_64.conf: Delete files.
* Makefile.am (AUX_FILES): Remove them.
2021-07-28 17:18:02 -04:00
Maxim Cournoyer 0f853ab773
build: Distribute tests/go.scm even when the host lacks guile-lib.
This is a follow-up commit to 38d337a5b7.

* Makefile.am (EXTRA_DIST)[!HAVE_GUILE_LIB]: Add tests/go.scm.

Reported-by: Chris Marusich <cmmarusich@gmail.com>
2021-08-27 14:59:21 -04:00
Maxime Devos 467e874a86
guix: Add ContentDB importer.
* guix/import/contentdb.scm: New file.
* guix/scripts/import/contentdb.scm: New file.
* tests/contentdb.scm: New file.
* Makefile.am (MODULES, SCM_TESTS): Register them.
* po/guix/POTFILES.in: Likewise.
* doc/guix.texi (Invoking guix import): Document it.

Signed-off-by: Leo Prikler <leo.prikler@student.tugraz.at>
2021-08-20 12:41:54 +02:00
Maxime Devos 3df485152c
build-system: Add 'minetest-mod-build-system'.
* guix/build-system/minetest.scm: New module.
* guix/build/minetest-build-system.scm: Likewise.
* Makefile.am (MODULES): Add them.
* doc/guix.texi (Build Systems): Document 'minetest-mod-build-system'.

Signed-off-by: Leo Prikler <leo.prikler@student.tugraz.at>
2021-08-20 12:41:54 +02:00
Maxim Cournoyer 10f554700c
Reinstate "services: Add a service for Jami."
This reverts commit 4673f81793, which reverted
commit 69dcc24c9f with the fix detailed below.

Thanks to Christopher Baines for reporting the failure and proposing a fix.

* guix/self.scm (compiled-guix) [*system-test-modules*]: Add the test data
files via the 'extra-files' argument.
* gnu/local.mk (dist_patch_DATA): Move the tests/data/jami-dummy-account.dat
file to...
* gnu/local.mk (MODULES_NOT_COMPILED): ... here.
2021-08-02 17:23:30 -04:00
Maxim Cournoyer 4673f81793
Revert "services: Add a service for Jami."
This reverts commit 69dcc24c9f.  It broke 'guix
pull'.
2021-08-02 15:48:59 -04:00
Maxim Cournoyer 69dcc24c9f
services: Add a service for Jami.
* gnu/services/telephony.scm (string-or-computed-file?)
(string-list?, account-fingerprint-list?): New procedures.
(maybe-string-list, maybe-account-fingerprint-list)
(maybe-boolean, maybe-string, jami-account-list): New configuration field
types.
(serialize-string-list, serialize-boolean, serialize-string)
(jami-account, jami-account->alist, jami-configuration)
(jami-account-list?, jami-account-list-maybe): New procedures.
(%jami-accounts): New variable.
(jami-configuration->command-line-arguments): New procedure.
(jami-dbus-session-activation, jami-shepherd-services): New procedures.
(jami-service-type): New variable.
* gnu/build/jami-service.scm: New file.
* gnu/tests/data/jami-dummy-account.dat: Likewise.
* gnu/tests/telephony.scm: Likewise.
* gnu/local.mk (GNU_SYSTEM_MODULES): Register them.
* Makefile.am (SCM_TESTS): Register the test file.
(dist_patch_DATA): Register the new data file.
* doc/guix.texi (Telephony Services): Document it.
2021-08-02 15:15:02 -04:00
Ludovic Courtès 0e47fcced4
Merge branch 'master' into core-updates 2021-07-18 19:50:01 +02:00
Maxime Devos 8456581375
build-system/meson: Support cross-compilation.
For cross-compilation, meson needs to be passed a
‘cross file’ with information on the architecture,
CPU type, endianness and operating system, and the
name of the cross-compiler binaries.

The new module (guix build meson-configuration) has
some utilities for writing these cross files, used
by 'make-cross-file' in a G-exp.  The values for
the cross file are generated by 'make-machine-alist'
and 'make-binaries-alist'.

'make-machine-alist' and 'make-binaries-alist' live
on the host side, such that new architectures and operating
systems can be added without causing rebuilds for old
architectures.

All operating systems and targets supported by Guix are
theoretically supported, but only aarch64-linux-gnu,
powerpc64le-linux-gnu and arm-linux-gnueabihf have been
tested.  i686-linux-gnu has also been tested with a previous
version of this patch series but required some changes
to 'cross-base.scm'.

This has been tested with:

$ ./pre-inst-env guix build glib --target=TARGET

* guix/build/meson-configuration.scm
  (write-section-header): New procedure.
  (write-assignment): New procedure.
  (write-assignments): New procedure.
* guix/build-system/meson.scm
  (target-hurd?): New predicate.
  (make-machine-alist): New procedure.
  (make-binaries-alist): New procedure.
  (make-cross-file): New procedure.
  (meson-cross-build): New procedure.
  (lower)[build-inputs]: Add standard cross packages when cross-compiling.
  Do not include regular 'inputs' when cross-compiling.
  (lower)[host-inputs]: Include 'inputs' when cross-compiling.
  (lower)[target-inputs]: Add cross packages when cross-compiling.
  (lower)[build]: Call 'meson-cross-build' instead of 'cross-build'
  when cross-compiling.
  (lower)[target]: Set it.
  (lower)[private-keywords]: Do not remove #:target when cross-compiling.

Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
2021-07-14 15:57:40 +02:00
Leo Famulari 627db5611d
gnu: Add linux-libre 5.13.
* gnu/packages/linux.scm (linux-libre-5.13-version, deblob-scripts-5.13,
linux-libre-5.13-pristine-source, linux-libre-5.13-source,
linux-libre-headers-5.13, linux-libre-5.13): New variables.
* gnu/packages/aux-files/linux-libre/5.13-arm.conf,
gnu/packages/aux-files/linux-libre/5.13-arm64.conf,
gnu/packages/aux-files/linux-libre/5.13-i686.conf,
gnu/packages/aux-files/linux-libre/5.13-x86_64.conf: New files.
* Makefile.am (AUX_FILES): Add them.
2021-07-13 13:15:59 -04:00
Ludovic Courtès f23803af20
Add 'guix style'.
* guix/scripts/style.scm, tests/style.scm: New files.
* Makefile.am (MODULES, SCM_TESTS): Add them.
* po/guix/POTFILES.in: Add 'guix/scripts/style.scm'.
* doc/guix.texi (Invoking guix style): New node.
(package Reference): Reference it.
(Invoking guix lint): Likewise.
2021-07-11 00:49:15 +02:00
Maxim Cournoyer 7708c0b5e3
pack: Factorize base tar options.
* guix/docker.scm (%tar-determinism-options): Move to a new module and rename
to `tar-base-options'.  Adjust references accordingly.
* guix/build/pack.scm: New file.
* Makefile.am (MODULES): Register it.
* guix/scripts/pack.scm (self-contained-tarball/builder): Use it.
2021-06-29 14:53:21 -04:00
Ludovic Courtès 0a02abde88
build: Build guix.scm and gnu.scm.
Fixes a regression introduced in
ef82ba9dd9 that was causing these two
files to not be built.  In turn, 'tests/inferior.scm' would determine
the wrong %TOP-BUILDDIR value, causing the "&inferior-exception" test to
fail because for lack of an inferior stack trace.

* Makefile.am (MODULES_CORE): Add guix.scm.
(MODULES_SYSTEM): Add gnu.scm.
2021-06-25 15:12:06 +02:00
Ludovic Courtès ef82ba9dd9
build: Makefile splits Scheme compilation in four steps.
Fixes <https://bugs.gnu.org/48963>.
Reported by Julien Lepiller <julien@lepiller.eu>.

This reduces peak memory consumption to something less unreasonable.

* Makefile.am (make-go): Depend on 'make-*-go' targets; remove body.
(guile-compilation-rule): New function.
(MODULES_CORE, MODULES_PACKAGES, MODULES_SYSTEM, MODULES_CLI): New
variables.
<top level>: Call 'guile-compilation-rule' 4 times.
* build-aux/compile-all.scm <top level>: Expect "--total" and
"--processed".  Take them into account when displaying progress
reports.
2021-06-23 23:35:27 +02:00
Marius Bakke 6f9a80b331
Merge branch 'master' into core-updates
Note: this merge actually changes the 'curl' and 'python-attrs' derivations,
as part of solving caf4a7a277 and
12964df69a respectively.

4604d43c0e (gnu: gnutls@3.6.16: Fix cross-compilation.) was ignored because it
cannot currently be tested.

 Conflicts:
	gnu/local.mk
	gnu/packages/aidc.scm
	gnu/packages/boost.scm
	gnu/packages/curl.scm
	gnu/packages/nettle.scm
	gnu/packages/networking.scm
	gnu/packages/python-xyz.scm
	gnu/packages/tls.scm
2021-06-19 17:38:47 +02:00
Christopher Baines 26499816a9
etc: Add "bordeaux.guix.gnu.org.pub" public key file.
* etc/substitutes/bordeaux.guix.gnu.org.pub: New file.
* Makefile.am (dist_pkgdata_DATA): Add it.
* guix/self.scm (miscellaneous-files): Add
"share/guix/bordeaux.guix.gnu.org.pub".
2021-06-07 11:31:17 +01:00
Marius Bakke 8d59c262ad
Merge branch 'master' into core-updates
Conflicts:
	gnu/local.mk
	gnu/packages/algebra.scm
	gnu/packages/bioinformatics.scm
	gnu/packages/curl.scm
	gnu/packages/docbook.scm
	gnu/packages/emacs-xyz.scm
	gnu/packages/maths.scm
	gnu/packages/plotutils.scm
	gnu/packages/python-web.scm
	gnu/packages/python-xyz.scm
	gnu/packages/radio.scm
	gnu/packages/readline.scm
	gnu/packages/tls.scm
	gnu/packages/xml.scm
	gnu/packages/xorg.scm
2021-06-06 21:16:32 +02:00
Xinglu Chen bdc298ecee
import: Add CHICKEN egg importer.
* guix/import/egg.scm: New file.
* guix/scripts/import/egg.scm: New file.
* tests/egg.scm: New file.
* Makefile.am (MODULES, SCM_TESTS): Register them.
* po/guix/POTFILES.in: Likewise.
* guix/scripts/import.scm (importers): Add egg importer.
* doc/guix.texi (Invoking guix import, Invoking guix refresh): Document it.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2021-06-03 13:05:18 +02:00
Marius Bakke 4ea6852c5f
Merge branch 'master' into core-updates 2021-05-22 17:21:57 +02:00
Leo Famulari ed5a75c730
gnu: linux-libre: Update to 5.12.5.
* gnu/packages/linux.scm (linux-libre-5.11-version, deblob-scripts-5.11,
linux-libre-5.11-pristine-source, linux-libre-5.11-source,
linux-libre-headers-5.11, linux-libre-5.11): Remove variables.
(linux-libre-version, linux-libre-pristine-source, linux-libre-source,
linux-libre): Update to the 5.12 kernel series.
(linux-libre-with-bpf): Update to the 5.12 kernel series.
* gnu/packages/aux-files/linux-libre/5.11-arm.conf,
gnu/packages/aux-files/linux-libre/5.11-arm64.conf,
gnu/packages/aux-files/linux-libre/5.11-i686.conf,
gnu/packages/aux-files/linux-libre/5.11-x86_64.conf: Delete files.
* Makefile.am (AUX_FILES): Remove them.
2021-05-21 11:40:12 -04:00
Ludovic Courtès 25487c3fe6
Merge branch 'master' into core-updates 2021-05-15 22:55:24 +02:00
Maxim Cournoyer 38d337a5b7
tests: Conditionally include tests/go.scm.
The Go importer module requires a recent guile-glib; the test should only be
run when such requirement is met.

* Makefile.am (SCM_TESTS)[HAVE_GUILE_LIB]: Add tests/go.scm only if this
condition is met.

Reported-by: Chris Marusich <cmmarusich@gmail.com>
2021-05-15 08:40:00 -04:00
Maxim Cournoyer b7cbca221f
Merge branch 'version-1.3.0' 2021-05-11 22:42:59 -04:00
Marius Bakke f034264204
Merge branch 'master' into core-updates
Conflicts:
	gnu/local.mk
	gnu/packages/bioinformatics.scm
	gnu/packages/django.scm
	gnu/packages/gtk.scm
	gnu/packages/llvm.scm
	gnu/packages/python-web.scm
	gnu/packages/python.scm
	gnu/packages/tex.scm
	guix/build-system/asdf.scm
	guix/build/emacs-build-system.scm
	guix/profiles.scm
2021-05-09 21:29:46 +02:00
Leo Famulari a21355bd10
gnu: Add linux-libre 5.12.2.
* gnu/packages/linux.scm (linux-libre-5.12-version, deblob-scripts-5.12,
linux-libre-5.12-pristine-source, linux-libre-5.12-source,
linux-libre-headers-5.12, linux-libre-5.12): New variables.
* gnu/packages/aux-files/linux-libre/5.12-arm.conf,
gnu/packages/aux-files/linux-libre/5.12-arm64.conf,
gnu/packages/aux-files/linux-libre/5.12-i686.conf,
gnu/packages/aux-files/linux-libre/5.12-x86_64.conf: New files.
* Makefile.am (AUX_FILES): Add them.
2021-05-08 18:41:45 -04:00
Maxim Cournoyer a77e3a5846
services: configuration: Add tests.
* tests/services/configuration.scm: New file.
* Makefile.am (SCM_TESTS): Register it.
2021-05-08 01:04:31 -04:00
Maxim Cournoyer b1b41a23f4
build: Do not compress the (already compressed) VM qcow2 images.
The qcow2 format supports compression, and the qcow2 type supported by 'guix
system image' produces compressed qcow2 images.

* Makefile.am (release): Do not re-compress the qcow2 VM images with xz.
* doc/guix.texi (Running Guix in a VM): Adjust VM image URL.
2021-05-05 16:31:06 -04:00
Maxim Cournoyer 6e71e71952
maint: Remove a workaround in Makefile.am.
This workaround was made obsolete by commit a23789bbbd, which prevented the PO
files from being spuriously updated upon running 'make'.

* Makefile.am (release) <git checkout>: Remove command.
2021-05-05 16:31:06 -04:00
Ludovic Courtès 82c0f34c7e
maint: Do not xz-compress ISO images.
The xz-compressed image is 23% smaller than the original ISO image (with
built-in zlib compression), but the extra decompression step is
unconventional and often a hindrance for users.  See discussion at
<https://lists.gnu.org/archive/html/guix-devel/2021-04/msg00497.html>.

* Makefile.am (release): Do not compress ISO images.
* doc/guix.texi (USB Stick and DVD Installation): Remove ".xz" suffix
from URL and file name.
(Copying to a USB Stick, Burning on a DVD): Remove introductory words,
@enumerate, and first item.

Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2021-05-03 22:41:36 -04:00
Maxim Cournoyer f995f710e8
build: Replace the doc-po-update prerequisite by doc-pot-update.
What is really required for the dist target is the presence of the
auto-generated .pot files; updating the PO files is not necessary nor
desirable (it causes spurious changes in the tree).

* Makefile.am (dist) <doc-po-update>: Replace prerequisite with...
<doc-pot-update>: ... this one.
2021-05-03 09:29:44 -04:00
Julien Lepiller 283d4960a4
Makefile: Reimplement `download-po` target.
The weblate API rate limit is very close to the number of files we need
to download.  The previous implementation did not add new translations.

* Makefile.am (download-po): Update target.
(make-download-po-rule, make-check-po-rule): Remove functions.
2021-05-03 09:29:44 -04:00
Julien Lepiller 45549e9f31
Makefile: Reimplement `download-po` target.
The weblate API rate limit is very close to the number of files we need
to download.  The previous implementation did not add new translations.

* Makefile.am (download-po): Update target.
(make-download-po-rule, make-check-po-rule): Remove functions.
2021-05-01 14:16:27 +02:00
Maxim Cournoyer 868113126c
build: Have the release target depend on 'all'.
Otherwise, the scripts/guix wrapper may not be present, which would cause the
user's guix wrapper to be used, which in turn would manipulate GUILE_LOAD_PATH
in a way that would cause its Guix modules to take precedence over those of
the tree, with confusion ensuing.

* Makefile.am (release): Add 'all' as a prerequisite.
2021-04-29 14:09:23 -04:00
Maxim Cournoyer ebf5d77eab
build: Add the qcow2 file extension to the VM image.
Including the extension of the format type of the image is not only useful to
the user, but also to software.  One example is GNOME Boxes, which will reject
an image with an unknown file extension.

This should be fixed more definitely in Guix, where the output of the VM image
derivation would already have the correct file extension but for now this will
do.

* Makefile.am (release): Add .qcow2 to the file extension of the VM images.
2021-04-29 14:09:22 -04:00
Maxim Cournoyer 54dc9d36fa
build: Update and add new comments for the release target.
* Makefile.am (release): Update and add new comments.
2021-04-29 14:09:22 -04:00
Maxim Cournoyer c8b1799fd7
Makefile.am: Remove the GUIX_FOR_BINARY_TARBALL variable.
There is no use case where the Guix package is not named 'guix'.

* Makefile.am (GUIX_FOR_BINARY_TARBALL): Remove variable and replace its uses
by 'guix'.
2021-04-29 14:09:22 -04:00
Ludovic Courtès c59cc2383d
import: Remove Nix importer.
This importer has suffered from bitrot and no longer works with current
Nix and Nixpkgs.  See <https://bugs.gnu.org/32339> and
<https://bugs.gnu.org/36255>.

* guix/import/snix.scm, guix/scripts/import/nix.scm,
tests/snix.scm: Remove.
* Makefile.am (MODULES, SCM_TESTS): Remove them.
* guix/scripts/import.scm (importers): Remove "nix".
* build-aux/test-env.in: Remove NIXPKGS variable.
* configure.ac: Remove '--with-nixpkgs' option.
* doc/guix.texi (Invoking guix import): Remove bit about "guix import
nix".
* etc/completion/fish/guix.fish: Likewise.
2021-04-25 14:34:09 +02:00
Maxim Cournoyer 7aeef7ee3d
build: Use guix system image instead of disk-image, vm-image.
These older system actions are deprecated and cause warnings to be emitted.

* Makefile.am (release) <guix system disk-image>
<guix system vm-image>: Replace by...
<guix system image>: ... this.  Specify the type of the VM image as qcow2.
2021-04-23 23:37:10 -04:00
Maxim Cournoyer b3f4df3f71
build: Add doc-update-po as a prerequisite to the dist target.
Otherwise 'make dist' would fail with the message: "No rule to make target
'po/doc/guix-manual.pot', needed by 'distdir-am'.  Stop.".

* Makefile.am (dist) <doc-po-update>: Add prerequisite.
(dist-hook) <doc-po-update>: Remove prerequisite.
2021-04-23 21:32:46 -04:00
Ludovic Courtès d95168321f
import: Remove Nix importer.
This importer has suffered from bitrot and no longer works with current
Nix and Nixpkgs.  See <https://bugs.gnu.org/32339> and
<https://bugs.gnu.org/36255>.

* guix/import/snix.scm, guix/scripts/import/nix.scm,
tests/snix.scm: Remove.
* Makefile.am (MODULES, SCM_TESTS): Remove them.
* guix/scripts/import.scm (importers): Remove "nix".
* build-aux/test-env.in: Remove NIXPKGS variable.
* configure.ac: Remove '--with-nixpkgs' option.
* doc/guix.texi (Invoking guix import): Remove bit about "guix import
nix".
* etc/completion/fish/guix.fish: Likewise.
2021-04-20 12:13:16 +02:00
Efraim Flashner fcc39864db
Merge remote-tracking branch 'origin/master' into core-updates
Conflicts:
	gnu/local.mk
	gnu/packages/boost.scm
	gnu/packages/chez.scm
	gnu/packages/compression.scm
	gnu/packages/crates-io.scm
	gnu/packages/docbook.scm
	gnu/packages/engineering.scm
	gnu/packages/gcc.scm
	gnu/packages/gl.scm
	gnu/packages/gtk.scm
	gnu/packages/nettle.scm
	gnu/packages/python-check.scm
	gnu/packages/python-xyz.scm
	gnu/packages/radio.scm
	gnu/packages/rust.scm
	gnu/packages/sqlite.scm
	guix/build-system/node.scm
2021-04-16 14:39:48 +03:00
Ludovic Courtès b18f45c21f
Add (guix ipfs).
This module allows for communicating with the IPFS
gateway over the HTTP interface.  The commit has been
cherry-picked from <https://issues.guix.gnu.org/33899>.

The procedures for adding and restoring file trees have
been removed as according to a reply issue 33899, a different
format will be used.  The procedure 'add-data' has been
exported as it will be used in the system test for IPFS.

* guix/ipfs.scm: New file.
* Makefile.am (MODULES): Add it.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2021-04-12 18:42:22 +02:00
Efraim Flashner 2aab587f84
Merge remote-tracking branch 'origin/master' into core-updates 2021-03-24 20:50:44 +02:00
Chris Marusich a16eb6c5f9
Add powerpc64le-linux as a supported Guix architecture.
This makes powerpc64le-linux a supported architecture for Guix, but not for
Guix System.

* Makefile.am (SUPPORTED_SYSTEMS): Add an entry for powerpc64le-linux.
* etc/guix-install.sh (chk_sys_arch): Same.
* guix/packages.scm (%supported-systems): Same.
* m4/guix.m4 (GUIX_ASSERT_SUPPORTED_SYSTEM): Same.
* tests/guix-build.sh (all_systems): Same.
2021-03-23 23:19:57 -07:00
Mathieu Othacehe 33bb89c939
ci: Remove hydra support.
This removes hydra support to use Cuirass as the only continuous integration
system.

* build-aux/hydra/gnu-system.scm: Remove it.
* build-aux/hydra/guix-modular.scm: Ditto.
* build-aux/hydra/guix.scm: Ditto.
* build-aux/cuirass/hydra-to-cuirass.scm: Ditto.
* Makefile.am (EXTRA_DIST): Update it.
(hydra-jobs.scm): Remove it.
(cuirass-jobs.scm): Update it.
* build-aux/hydra/evaluate.scm: Move it to ...
* build-aux/cuirass/evaluate.scm: ... here.
* build-aux/cuirass/guix-modular.scm: Remove it.
* build-aux/cuirass/gnu-system.scm: Ditto.
* guix/packages.scm (%hydra-supported-systems): Rename it to ...
(%cuirass-supported-systems): ... this variable.
* build-aux/check-final-inputs-self-contained: Adapt it.
* etc/release-manifest.scm: Ditto.
* gnu/ci.scm (package->alist): Remove it.
(derivation->job): New procedure.
(package-job, package-cross-job, cross-jobs, image-jobs, system-test-jobs,
tarball-jobs): Use it.
(guix-jobs): New procedure.
(hydra-jobs): Rename it to ...
(cuirass-jobs): ... this procedure.
2021-03-10 19:41:15 +01:00
Katherine Cox-Buday 02e2e093e8
import: Add Go importer.
This patch adds a 'guix import go' command.

* doc/guix.texi (Requirements): Mention Guile-Lib dependency.
(Invoking guix import): Document 'guix import go'.
* gnu/packages/package-management.scm (guix)[inputs, propagated-inputs]:
Add GUILE-LIB.
* guix/self.scm (compiled-guix)[guile-lib]: New variable.
[dependencies]: Add it.
(specification->package): Add "guile-lib".
* guix/build-system/go.scm (go-version->git-ref): New procedure.
* guix/import/go.scm, guix/scripts/import/go.scm, tests/go.scm: New files.
* guix/scripts/import.scm: Declare subcommand guix import go
* po/guix/POTFILES.in: Add 'guix/scripts/import/go.scm'.
* Makefile.am (MODULES): Add 'guix/import/go.scm' and
'guix/scripts/import/go.scm'.
(SCM_TESTS): Add 'tests/go.scm'.

Co-Authored-By: Helio Machado <0x2b3bfa0@gmail.com>
Co-Authored-By: Francois Joulaud <francois.joulaud@radiofrance.com>
Co-Authored-By: Maxim Cournoyer <maxim.cournoyer@gmail.com>
Co-Authored-by: Ludovic Courtès <ludo@gnu.org>
2021-03-10 18:01:48 +01:00
Mathieu Othacehe 76bea3f8bc
ci: Remove hydra support.
This removes hydra support to use Cuirass as the only continuous integration
system.

* build-aux/hydra/gnu-system.scm: Remove it.
* build-aux/hydra/guix-modular.scm: Ditto.
* build-aux/hydra/guix.scm: Ditto.
* build-aux/cuirass/hydra-to-cuirass.scm: Ditto.
* Makefile.am (EXTRA_DIST): Update it.
(hydra-jobs.scm): Remove it.
(cuirass-jobs.scm): Update it.
* build-aux/hydra/evaluate.scm: Move it to ...
* build-aux/cuirass/evaluate.scm: ... here.
* build-aux/cuirass/guix-modular.scm: Remove it.
* build-aux/cuirass/gnu-system.scm: Ditto.
* guix/packages.scm (%hydra-supported-systems): Rename it to ...
(%cuirass-supported-systems): ... this variable.
* build-aux/check-final-inputs-self-contained: Adapt it.
* etc/release-manifest.scm: Ditto.
* gnu/ci.scm (package->alist): Remove it.
(derivation->job): New procedure.
(package-job, package-cross-job, cross-jobs, image-jobs, system-test-jobs,
tarball-jobs): Use it.
(guix-jobs): New procedure.
(hydra-jobs): Rename it to ...
(cuirass-jobs): ... this procedure.
2021-03-10 08:49:48 +01:00
Christopher Baines a8448da0f4
Merge branch 'master' into core-updates 2021-03-06 00:18:30 +00:00
Christopher Baines 112692c0d5
guix: Split (guix substitutes) from (guix scripts substitute).
This means there's a module for working with substitutes, rather than all the
code sitting in the script. The need for this can be seen with the weather and
challenge scripts, that now don't have to use code from the substitute script,
but can instead use the substitute module.

The separation here between the actual functionality of the substitute script
and the underlying functionality used both there and elsewhere should make
maintenance easier moving forward.

This commit just moves code, none of the code should have been changed
significantly.

* guix/scripts/substitute.scm (%narinfo-cache-directory, %narinfo-ttl,
%narinfo-negative-ttl, %narinfo-transient-error-ttl, %unreachable-hosts): Move
variables to guix/substitutes.scm.
(narinfo-cache-file, cached-narinfo, cache-narinfo!, narinfo-request,
read-to-eof, call-with-connection-error-handling, fetch-narinfos,
lookup-narinfos, lookup-narinfos/diverse): Move procedures to
guix/substitutes.scm.
* guix/substitutes.scm: New file.
* Makefile.am: Add it.
* guix/narinfo.scm: Remove redundant module.
* guix/scripts/challenge.scm: Change (guix scripts substitute) to (guix
substitutes).
* guix/scripts/weather.scm: Change (guix scripts substitute) to (guix
substitutes).
2021-03-05 21:06:03 +00:00