Commit Graph

958 Commits

Author SHA1 Message Date
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
Leo Famulari b819512ca2
gnu: Add linux-libre 5.11.
* 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-5.11):
New variables.
* gnu/packages/aux-files/linux-libre/5.11-x86_64.conf,
gnu/packages/aux-files/linux-libre/5.11-i686.conf,
gnu/packages/aux-files/linux-libre/5.11-arm.conf,
gnu/packages/aux-files/linux-libre/5.11-arm64.conf: New files.
* Makefile.am (AUX_FILES): Add them.
2021-02-16 16:01:48 -05:00
Simon South db6b9d2f4b
services: Add transmission-daemon service.
* gnu/services/file-sharing.scm: New file.
* gnu/local.mk (GNU_SYSTEM_MODULES): Add it.
* po/packages/POTFILES.in: Add it.
* tests/services/file-sharing.scm: New file.
* Makefile.am (SCM_TESTS): Add it.
* doc/guix.texi (File-Sharing Services): New section.

Signed-off-by: 宋文武 <iyzsong@member.fsf.org>
2021-02-12 15:11:36 +08:00
Danny Milosavljevic abd318ff4b
Merge branch 'master' into core-updates 2021-02-11 19:12:36 +01:00
Leo Prikler e1bdab4f0f
build-system: Add renpy-build-system.
* guix/build/renpy-build-system.scm: New file.
* guix/build-system/renpy.scm: New file.
* Makefile.am (MODULES): Add them here.
* doc/guix.texi (Build Systems): Document renpy-build-system.
2021-02-07 15:17:55 +01:00
Leo Famulari 29daa4dfb8
gnu: Remove leftover kernel configurations for linux-libre 5.9.
This is a followup to commit 8727870ff4.

* gnu/packages/aux-files/linux-libre/5.9-arm.conf,
gnu/packages/aux-files/linux-libre/5.9-arm64.conf,
gnu/packages/aux-files/linux-libre/5.9-i686.conf,
gnu/packages/aux-files/linux-libre/5.9-x86_64.conf: Delete files.
* Makefile.am (AUX_FILES): Remove them.
2021-02-03 19:47:24 -05:00
Christopher Baines e740cc6140
Merge branch 'master' into core-updates 2021-02-03 09:57:35 +00:00
Lars-Dominik Braun 09448c0994
build/python: Add a sanity check phase.
Add a new phase validating the usability of installed Python packages.

* gnu/packages/aux-files/python/sanity-check.py: New file.
* Makefile.am (AUX_FILES): Register it.
* guix/build-system/python.scm (sanity-check.py): New variable.
(lower): Add the script as an implicit input.
* guix/build/python-build-system.scm: Remove trailing #t.
(sanity-check): New phase.
(%standard-phases): Use it.
* tests/builders.scm: (make-python-dummy)
(dummy-ok, dummy-dummy-nosetuptools, dummy-fail-requirements)
(dummy-fail-import, dummy-fail-console-script): New variables.
("python-build-system: dummy-ok")
("python-build-system: dummy-dummy-nosetuptools")
("python-build-system: dummy-fail-requirements")
("python-build-system: dummy-fail-import")
("python-build-system: dummy-fail-console-script"): Add tests.
2021-02-01 11:53:43 -05:00
Maxim Cournoyer cb72f9a773
gnu: python: Replace PYTHONPATH by GUIX_PYTHONPATH.
Using PYTHONPATH as a mean to discover the Python packages had the following
issues:

        1. It is not versioned, so different versions of Python would clash if
        installed in a shared profile.

        2. It would interfere with the host Python site on foreign
        distributions, sometimes preventing a a user to login their GDM
        session (!).

        3. It would take precedence over user installed Python packages
        installed through pip.

        4. It would leak into Python virtualenvs, which are supposed to create
        isolated Python environments.

This changes fixes the above issues by making use of a sitecustomize.py
module.  The newly introduced GUIX_PYTHONPATH environment variable is read
from the environment, filtered for the current Python version of the
interpreter, and spliced in 'sys.path' just before Python's own site location,
which provides the expected behavior.

* gnu/packages/aux-files/python/sitecustomize.py: New file.
* Makefile.am: Register it.
* gnu/packages/python.scm (customize-site)
(guix-pythonpath-search-path): New procedures.
(python-2.7)[phases]{install-sitecustomize.py}: New phase.
[native-inputs]{sitecustomize.py}: New input.
[native-search-paths]: Replace PYTHONPATH with GUIX_PYTHONPATH.
(python-3.9)[native-search-paths]: Likewise.
[phases]{install-sitecustomize}: Override with correct version.
[native-search-paths]: Replace PYTHONPATH with GUIX_PYTHONPATH.
* gnu/packages/commencement.scm (python-boot0):
[phases]{install-sitecustomize}: Likewise.
[native-inputs]{sitecustomize.py}: New input.
[native-search-paths]: Replace PYTHONPATH with GUIX_PYTHONPATH.
* guix/build/python-build-system.scm (site-packages): Do not add a trailing
'/'.

squash! gnu: python: Replace PYTHONPATH by GUIX_PYTHONPATH.
2021-02-01 11:53:42 -05:00
Julien Lepiller b91165460e
Makefile.am: Add check-po rule.
* Makefile.am (make-check-po-rule): New definition.
Add top-level 'eval' and calls to 'make-check-po-rule' to generate
'check-po.DOMAIN' rules.
(check-po): New rule.
2021-01-28 16:41:16 +01:00
Julien Lepiller c891e7c828
Makefile.am: Normalize downloaded po files.
* Makefile.am (make-download-po-rule): Normalize po files.
2021-01-28 16:41:03 +01:00
Julien Lepiller ddfcc2141e
Makefile.am: Download po files from weblate.
* Makefile.am (download-po): Download from weblate.
2021-01-20 16:16:11 +01:00
Christopher Baines 681af17460
guix: Move narinfo code from substitute script to module.
This separation between the code for dealing with narinfos from the code doing
that for a purpose should make things clearer, and better support components
other that the substitute script in using this code.

This is just moving the code around, no code should have been significantly
changed.

* guix/scripts/substitute.scm (<narinfo>): Move record type to (guix narinfo).
(fields->alist, narinfo-hash-algorithm+value, narinfo-hash->sha256,
narinfo-signature->canonical-sexp, narinfo-maker, read-narinfo,
narinfo-sha256, valid-narinfo?, write-narinfo, narinfo->string,
string->narinfo, equivalent-narinfo?, supported-compression?,
compresses-better?, narinfo-best-uri): Move procedures to (guix narinfo).
(%compression-methods): Move variable to (guix narinfo).
* guix/narinfo.scm: New file.
* Makefile.am (MODULES): Add it.
* po/guix/POTFILES.in: Add 'guix/narinfo.scm'.
2021-01-16 11:51:03 +00:00
Maxim Cournoyer 01f0707207
Merge branch 'staging' into 'core-updates'.
Conflicts:

	gnu/local.mk
	gnu/packages/cmake.scm
	gnu/packages/curl.scm
	gnu/packages/gl.scm
	gnu/packages/glib.scm
	gnu/packages/guile.scm
	gnu/packages/node.scm
	gnu/packages/openldap.scm
	gnu/packages/package-management.scm
	gnu/packages/python-xyz.scm
	gnu/packages/python.scm
	gnu/packages/tls.scm
	gnu/packages/vpn.scm
	gnu/packages/xorg.scm
2021-01-13 23:45:53 -05:00
Ludovic Courtès 069d2bf200
tests: Run 'tests/offload.scm' only when BUILD_DAEMON_OFFLOAD is true.
Fixes:

  guix build -e '(@ (gnu packages package-management) guix-minimal)'

* Makefile.am (SCM_TESTS): Move 'tests/offload.scm' within "if
BUILD_DAEMON_OFFLOAD" conditional.
2021-01-09 00:00:49 +01:00
Ludovic Courtès 10612d6154
graph: Install JavaScript files.
Until now, 'guix graph --backend=d3js' wouldn't work outside the build
tree.

* d3.v3.js: Move to...
* guix/d3.v3.js: ... here.
* graph.js: Move to...
* guix/graph.js: ... here.
* Makefile.am (nobase_dist_guilemodule_DATA): Add them.
(EXTRA_DIST): Remove them.
* guix/graph.scm (emit-d3js-prologue, emit-d3js-epilogue): Adjust
'search-path' argument accordingly.
* guix/self.scm (compiled-guix)[*extra-modules*]: Pass them via #:extra-files.
2021-01-04 23:54:16 +01:00
Ludovic Courtès a016a451c4
maint: Remove unused '--with-nix-prefix' configure option.
* configure.ac: Remove '--with-nix-prefix' and 'NIX_PREFIX' variable.
* Makefile.am (AM_DISTCHECK_CONFIGURE_FLAGS): Remove '--with-nix-prefix'.
2020-12-27 17:12:06 +01:00
Efraim Flashner 53b51b44fd
gnu: vim: Automatically find vim plugins.
* gnu/packages/vim.scm (vim)[arguments]: Add new 'install-guix.vim phase
to install vendor specific vimrc.
* gnu/packages/aux-files/guix.vim: New file.
* Makefile.am (AUX_FILES): Register it.
2020-12-20 12:52:51 +02:00
Leo Famulari 66b5bc3191
gnu: linux-libre: Update to 5.10.1.
* gnu/packages/aux-files/linux-libre/5.10-arm.conf,
gnu/packages/aux-files/linux-libre/5.10-arm64.conf,
gnu/packages/aux-files/linux-libre/5.10-i686.conf,
gnu/packages/aux-files/linux-libre/5.10-x86_64.conf: New files.
* Makefile.am (AUX_FILES): Add them.
* gnu/packages/linux.scm (linux-libre-5.10-version, deblob-scripts-5.10,
linux-libre-5.10-pristine-source, linux-libre-5.10-source,
linux-libre-headers-5.10, linux-libre-5.10): New variables.
(linux-libre-version, linux-libre-pristine-source, linux-libre-source,
linux-libre, linux-libre-with-bpf): Update to 5.10.1.
2020-12-19 16:06:09 -05:00
Ludovic Courtès fd24754221
build: 'script/guix' uses our own 'guile' executable.
* Makefile.am (do_subst): Substitute @abs_top_builddir@.
* scripts/guix.in: Use it.
2020-12-11 19:06:53 +01:00
raingloom 64f032d73f
build-system: Add chicken-build-system.
* guix/build-system/chicken.scm: New file.
* guix/build/chicken-build-system.scm: New file.
* Makefile.am: Add them.
* doc/guix.texi: Document it.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2020-12-03 16:18:33 +01:00
Mathieu Othacehe 35a32fefb4
Make "guile-avahi" dependency optional.
* configure.ac (HAVE_GUILE_AVAHI): New conditional.
* Makefile.am (MODULES): Add "guix/avahi.scm" and "guix/scripts/discover.scm"
if HAVE_GUILE_AVAHI is set.
* guix/scripts/publish.scm: Autoload (guix avahi).
* guix/scripts/substitute.scm: Autoload (guix scripts discovery).
2020-11-29 19:22:05 +01:00
Christopher Baines ff01206345
Merge remote-tracking branch 'origin/master' into core-updates 2020-11-29 17:34:18 +00:00
Mathieu Othacehe 79f9dee3c4
Use substitute servers on the local network.
* guix/scripts/discover.scm: New file.
* Makefile.am (MODULES): Add it.
* nix/nix-daemon/guix-daemon.cc (options): Add "discover" option,
(parse-opt): parse it,
(main): start "guix discover" process when the option is set.
* guix/scripts/substitute.scm (%local-substitute-urls): New variable,
(substitute-urls): add it.
* gnu/services/base.scm (<guix-configuration>): Add "discover?"
field,
(guix-shepherd-service): honor it.
* doc/guix.texi (Invoking guix-daemon): Document "discover" option,
(Base Services): ditto.
2020-11-29 15:08:26 +01:00
Mathieu Othacehe 375cc7dea2
Add Avahi support.
* guix/avahi.scm: New file.
* Makefile.am (MODULES): Add it.
* configure.ac: Add Guile-Avahi dependency.
* doc/guix.texi (Requirements): Document it.
* gnu/packages/package-management.scm (guix)[native-inputs]: Add
"guile-avahi",
[propagated-inputs]: ditto.
* guix/self.scm (specification->package): Add guile-avahi.
(compiled-guix): Ditto.
2020-11-29 15:08:26 +01:00
Ludovic Courtès d403141037
maint: Install 'guix-daemon.cil' SELinux file.
Fixes <https://bugs.gnu.org/44649>.
Reported by Daniel Brooks <db48x@db48x.net>.

This is a followup to 6799e6e578, which
rightfully removed the '.cil' file from the distribution, but wrongfully
installed the '.cil.in' file instead of the '.cil' file.

* Makefile.am (nodist_selinux_policy_DATA): Remove ".in".
2020-11-16 17:14:45 +01:00
Ludovic Courtès c6e8f40f2c
maint: Rebuild '.version' when 'config.status' changes.
* Makefile.am ($(top_srcdir)/.version): Depend on 'config.status'.  Use
$(AM_V_GEN).
2020-11-13 22:48:34 +01:00
Ludovic Courtès 627e61f1a8
maint: Add '.guix-authorizations' to the distribution.
Reported by Vagrant Cascadian.

* Makefile.am (EXTRA_DIST): Add .guix-authorizations.
2020-11-13 21:31:22 +01:00
Ludovic Courtès a30e7a72fc
maint: Use 'guix' instead of 'guile3.0-guix' for the binary tarball.
* Makefile.am (GUIX_FOR_BINARY_TARBALL): Change to 'guix'.
2020-11-13 09:13:56 +01:00
Maxim Cournoyer 3de898b43c
maint: update-guix-package: Optionally add sources to store.
Following discussions in <https://issues.guix.gnu.org/43893>, keeping a copy
of the updated package source is desirable when generating a release.

* build-aux/update-guix-package.scm (version-controlled?): Remove variable.
(call-with-temporary-git-worktree): Renamed from
'with-temporary-git-worktree'.  Update doc.  Do not change directory
implicitly.  Define as a procedure, not a syntax.
(keep-source-in-store): New procedure.
(main): Adjust to use with call-with-temporary-git-worktree.  Add the sources
to the store when GUIX_ALLOW_ME_TO_USE_PRIVATE_COMMIT is set.  Exit gracefully
when FIND-ORIGIN-REMOTE returns #f.
(%savannah-guix-git-repo-push-url-regexp): Adjust match for a potential colon
separator.
* Makefile.am (GUIX_ALLOW_ME_TO_USE_PRIVATE_COMMIT): Adjust.
* .dir-locals.el (scheme-mode): Remove entry for with-temporary-git-worktree.
* doc/contributing.texi (Updating the Guix Package): Update doc.

Co-authored-by: Ludovic Courtès <ludo@gnu.org>
2020-11-12 09:23:27 -05:00
Ludovic Courtès f68b3ba12d
guix build: Move transformation options to (guix transformations).
* guix/transformations.scm: New file.
* tests/scripts-build.scm: Rename to...
* tests/transformations.scm: ... this.
* Makefile.am (MODULES): Add 'guix/transformations.scm'.
(SCM_TESTS): Adjust to rename.
* guix/scripts/build.scm (numeric-extension?)
(tarball-base-name, <downloaded-file>, download-to-store*)
(compile-downloaded-file, package-with-source)
(transform-package-source, evaluate-replacement-specs)
(transform-package-inputs, transform-package-inputs/graft)
(%not-equal, package-git-url, evaluate-git-replacement-specs)
(transform-package-source-branch, transform-package-source-commit)
(transform-package-source-git-url, package-dependents/spec)
(package-toolchain-rewriting, transform-package-toolchain)
(transform-package-with-debug-info, transform-package-tests)
(%transformations, transformation-procedure, %transformation-options)
(show-transformation-options-help, options->transformation)
(package-transformations): Move to (guix transformations).
* guix/scripts/environment.scm: Adjust accordingly.
* guix/scripts/graph.scm: Likewise.
* guix/scripts/install.scm: Likewise.
* guix/scripts/pack.scm: Likewise.
* guix/scripts/package.scm: Likewise.
* guix/scripts/upgrade.scm: Likewise.
* po/guix/POTFILES.in: Add 'guix/transformations.scm'.
2020-10-31 23:16:43 +01:00
Ludovic Courtès 6799e6e578
maint: Include 'guix-daemon.cil.in' in the distribution.
* Makefile.am (dist_selinux_policy_DATA): Rename to...
(nodist_selinux_policy_DATA): ... this, and include '.cil.in' instead of
'.cil'.
2020-10-27 18:00:29 +01:00
Leo Famulari 23a110aa53
gnu: linux-libre: Update to 5.9.1.
* gnu/packages/aux-files/linux-libre/5.8-arm.conf,
gnu/packages/aux-files/linux-libre/5.8-arm64.conf,
gnu/packages/aux-files/linux-libre/5.8-i686.conf,
gnu/packages/aux-files/linux-libre/5.8-x86_64.conf: Delete files.
* gnu/packages/aux-files/linux-libre/5.9-arm.conf,
gnu/packages/aux-files/linux-libre/5.9-arm64.conf,
gnu/packages/aux-files/linux-libre/5.9-i686.conf,
gnu/packages/aux-files/linux-libre/5.9-x86_64.conf: New files.
* Makefile.am (AUX_FILES): Adjust accordingly.
* gnu/packages/linux.scm (linux-libre-5.8-version, deblob-scripts-5.8,
linux-libre-5.8-pristine-source, linux-libre-5.8-source,
linux-libre-headers-5.8, linux-libre-5.8): Remove variables.
(linux-libre-5.9-version, deblob-scripts-5.9, linux-libre-5.9-pristine-source,
linux-libre-5.9-source, linux-libre-headers-5.9, linux-libre-5.9): New
variables.
(linux-libre-version, linux-libre-pristine-source, linux-libre-source,
linux-libre): Point to linux-libre-5.9*.
(linux-libre-with-bpf): Use linux-libre-5.9.
2020-10-24 17:21:29 -04:00
Miguel Ángel Arruga Vivas ef6596a20c
build: Add GUIX_GIT_KEYRING variable for make authenticate.
* Makefile.am (GUIX_GIT_KEYRING): New variable.
(authenticate): Use GUIX_GIT_KEYRING to select the keyring branch
reference.
* doc/contributing.texi (Building from Git): Add an example about the
use of GUIX_GIT_KEYRING.
2020-10-24 17:38:58 +02:00
Maxim Cournoyer 5e2140511c
Merge branch 'staging'
Conflicts:
	gnu/packages/admin.scm
	gnu/packages/commencement.scm
	gnu/packages/gdb.scm
	gnu/packages/llvm.scm
	gnu/packages/package-management.scm
	gnu/packages/tls.scm
2020-10-19 13:11:40 -04:00
Miguel Ángel Arruga Vivas 9d449b945b
system: Add locale to boot-parameters.
* gnu/system.scm (define-module)[export]: Add boot-parameters-locale.
(<boot-parameters>)[locale]: New field.
[boot-parameters-locale]: New accessor.
(read-boot-parameters): Read locale field.
(operating-system-boot-parameters): Provide operating-system locale to
boot-parameters record.
(opeating-system-boot-parameters-file): Likewise.
* Makefile.am (SCM_TESTS): Add tests/boot-parameters.scm.
* tests/boot-parameters.scm: New test file.
2020-10-18 15:32:54 +02:00
Ludovic Courtès 880fe019ae
build: Use a 'guile' executable that doesn't warn about locales.
This gets rid of:

  guile: warning: failed to install locale

when running the 'guix' command on a foreign distro where 'GUIX_LOCPATH'
isn't set.

* Makefile.am (pkglibexec_PROGRAMS, guile_SOURCES, guile_LDADD)
(guile_CFLAGS): New variables.
(install-exec-hook): New target.
(AUX_FILES): Remove 'guile-launcher.c'.
* configure.ac: Use 'GUILE_FLAGS'.
2020-10-05 23:19:19 +02:00
Ludovic Courtès 1d4ab335b2
self: Use a 'guile' that doesn't complain about locales.
Since commit ba48895899, selected UTF-8
locales are bundled.  However, because 'guix-command' is itself a Guile
script, users would still see Guile's warning, particularly on foreign
distros:

  $ LC_ALL=sdf guix foo
  guile: warning: failed to install locale
  hint: Consider installing the `glibc-utf8-locales' [...]

User commands would print that warning, but more importantly, each
invocation of 'guix substitute' would print it, even though
'guix-daemon.service' explicitly chooses "en_US.utf8", which is in
'glibc-utf8-locales'.  This leads to confusion since users would keep
seeing this message unless/until they realize they also need to install
'glibc-utf8-locales' in root's profile.

This patch gets rid of "guile: warning: ..." for a guix-pulled 'guix'
command.

* guix/self.scm (specification->package): Add "gcc-toolchain".
(quiet-guile): New procedure.
(guix-command): Use it.
* gnu/packages/aux-files/guile-launcher.c: New file.
* Makefile.am (AUX_FILES): Add it.
2020-10-05 23:19:19 +02:00
Jan (janneke) Nieuwenhuizen 45265d5541
cuirass: Distribute hurd-manifest.scm.
This is a follow-up to commit fdbf8a7a75.

* Makefile.am (EXTRA_DIST): Oops, add build-aux/cuirass/hurd-manifest.scm.
2020-10-04 15:12:04 +02:00
Mathieu Othacehe 313f492657
scripts: system: Add support for image-type.
* guix/scripts/system.scm (list-image-types): New procedure,
(%options): add "image-type" and "list-image-types" options, remove
"file-system-type" option,
(show-help): adapt accordingly,
(%default-options): also adapt, and set the default "image-type" to "raw",
(perform-action): add image-type argument and remove file-system-type argument,
(process-action):  adapt perform-action call,
(system-derivation-for-action): remove base-image
argument, add image-type argument, and use it to create the image passed to
"system-image".
* tests/guix-system.sh: Adapt accordingly and add a test for
"--list-image-types" command.
* doc/guix.texi (Building the Installation Image,
Invoking guix system): Adapt accordingly.

Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
2020-09-30 10:47:59 +02:00
Ludovic Courtès a08cb3ca95
Remove (guix build rpath).
This file was unused and is now superseded by (guix build gremlin).

* guix/build/rpath.scm: Remove.
* Makefile.am (MODULES): Remove it.
2020-09-19 17:28:46 +02:00
Ludovic Courtès b5eb901ab5
Remove (guix json) and require Guile-JSON 4.3.0+.
This is a followup to 4071879c86.

* guix/json.scm: Remove.
* Makefile.am (MODULES): Adjust accordingly.
* m4/guix.m4 (GUIX_CHECK_GUILE_JSON): Check for 'define-json-mapping'.
* doc/guix.texi (Requirements): Require Guile-JSON 4.3.0+.
* guix/ci.scm, guix/cve.scm, guix/import/cpan.scm,
guix/import/crate.scm, guix/swh.scm: Remove (guix json) import.
* guix/import/gem.scm, guix/import/pypi.scm: Likewise, and import (json).
* guix/self.scm (specification->package): Switch to GUILE-JSON-4.
* guix/git-download.scm (git-fetch): Likewise.
2020-09-08 00:47:35 +02:00
Danny Milosavljevic 3feb846420
Add (guix android-repo-download).
* guix/build/android-repo.scm: New file.
* guix/android-repo-download.scm: New file.
* Makefile.am (MODULES): Add them.
2020-09-02 13:51:38 +02:00
Julien Lepiller 7b2ac47687
Makefile.am: Set iso label.
* Makefile.am (release): Add version number in disk image label.
2020-08-31 16:12:36 +02:00
Leo Famulari b39541859d
gnu: Remove linux-libre 5.7.
The 5.7 kernel series is no longer supported upstream.

* gnu/packages/linux.scm (deblob-scripts-5.7, linux-libre-5.7-version,
linux-libre-5.7-pristine-source, linux-libre-5.7-source,
linux-libre-headers-5.7, linux-libre-5.7) Remove variables.
* gnu/packages/aux-files/linux-libre/5.7-arm.conf,
gnu/packages/aux-files/linux-libre/5.7-arm64.conf,
gnu/packages/aux-files/linux-libre/5.7-i686.conf,
gnu/packages/aux-files/linux-libre/5.7-x86_64.conf: Delete files.
* Makefile.am (AUX_FILES): Remove them.
2020-08-30 13:53:55 -04:00
Maxim Cournoyer 4b5a6fbc9b
offload: Modify the build-machine record to accept multiple systems.
* guix/scripts/offload.scm (<build-machine>)[systems]: New field.
[system]: Accessor changed to %build-machine-system.  Default to #f.
* guix/scripts/offload.scm (build-machine-system): Wrap %build-machine-system
with a deprecation warning.
(build-machine-systems): Access the new systems field or fallback to use
build-machine-system, for backward compatibility.
(machine-matches?): Adjust.
* tests/offload.scm: Add tests...
* Makefile.am (SCM_TESTS): ...and register them.
* doc/guix.texi (Daemon Offload Setup): Update doc.
2020-08-25 13:45:27 -04:00
Mathieu Othacehe 4c0c65acfa
Use "guile-zlib" and "guile-lzlib" instead of (guix config).
* Makefile.am (MODULES): Remove guix/zlib.scm and guix/lzlib.scm,
(SCM_TESTS): remove tests/zlib.scm, tests/lzlib.scm.
* build-aux/build-self.scm (make-config.scm): Remove unused %libz variable.
* configure.ac: Remove LIBZ and LIBLZ variables and check instead for
Guile-zlib and Guile-lzlib.
* doc/guix.texi ("Requirements"): Remove zlib requirement and add Guile-zlib
and Guile-lzlib instead.
* gnu/packages/package-management.scm (guix)[native-inputs]: Add "guile-zlib"
and "guile-lzlib",
[inputs]: remove "zlib" and "lzlib",
[propagated-inputs]: ditto,
[arguments]: add "guile-zlib" and "guile-lzlib" to Guile load path.
* guix/config.scm.in (%libz, %liblz): Remove them.
* guix/lzlib.scm: Remove it.
* guix/man-db.scm: Use (zlib) instead of (guix zlib).
* guix/profiles.scm (manual-database): Do not stub (guix config) in imported
modules list, instead add "guile-zlib" to the extension list.
* guix/scripts/publish.scm: Use (zlib) instead of (guix zlib) and (lzlib)
instead of (guix lzlib),
(string->compression-type, effective-compression): do not check for zlib and
lzlib availability.
* guix/scripts/substitute.scm (%compression-methods): Do not check for lzlib
availability.
* guix/self.scm (specification->package): Add "guile-zlib" and "guile-lzlib"
and remove "zlib" and "lzlib",
(compiled-guix): remove "zlib" and "lzlib" arguments and add guile-zlib and
guile-lzlib to the dependencies, also do not pass "zlib" and "lzlib" to
"make-config.scm" procedure,
(make-config.scm): remove "zlib" and "lzlib" arguments as well as %libz and
%liblz variables.
* guix/utils.scm (lzip-port): Use (lzlib) instead of (guix lzlib) and do not
check for lzlib availability.
* guix/zlib.scm: Remove it.
* m4/guix.m4 (GUIX_LIBZ_LIBDIR, GUIX_LIBLZ_FILE_NAME): Remove them.
* tests/lzlib.scm: Use (zlib) instead of (guix zlib) and (lzlib)
instead of (guix lzlib), and do not check for zlib and lzlib availability.
* tests/publish.scm: Ditto.
* tests/substitute.scm: Do not check for lzlib availability.
* tests/utils.scm: Ditto.
* tests/zlib.scm: Remove it.
2020-08-24 13:35:24 +02:00
Leo Famulari 7bb0527cef
gnu: linux-libre: Update to 5.8.2.
* gnu/packages/aux-files/linux-libre/5.8-arm.conf,
gnu/packages/aux-files/linux-libre/5.8-arm64.conf,
gnu/packages/aux-files/linux-libre/5.8-i686.conf,
gnu/packages/aux-files/linux-libre/5.8-x86_64.conf: New files.
* Makefile.am (AUX_FILES): Add them.
* gnu/packages/linux.scm (linux-libre-5.8): New variable.
(linux-libre-version, linux-libre-pristine-source, linux-libre-source,
linux-libre): Point to linux-libre-5.8*.
2020-08-21 17:59:42 -04:00
Leo Famulari 843344273c
gnu: linux-libre: Update to 5.7.12.
* gnu/packages/aux-files/linux-libre/5.7-arm.conf,
gnu/packages/aux-files/linux-libre/5.7-arm64.conf,
gnu/packages/aux-files/linux-libre/5.7-i686.conf,
gnu/packages/aux-files/linux-libre/5.7-x86_64.conf: New files.
* Makefile.am (AUX_FILES): Update accordingly.
* gnu/packages/linux.scm: (linux-libre-5.7): New variable.
(linux-libre-version, linux-libre-pristine-source)
(linux-libre-source, linux-libre): Point to linux-libre-5.7*.
2020-08-05 13:22:41 -04:00
Ludovic Courtès 1dba0b4557
maint: 'authenticate' runs the user's 'guix git authenticate'.
That way, we no longer run the code we want to authenticate.

* Makefile.am (authenticate): Remove "./pre-inst-env".
2020-07-27 12:06:37 +02:00
Julien Lepiller 55b90c9053
guix: Add maven-build-system.
* guix/build-system/maven.scm: New file.
* guix/build/maven-build-system.scm: New file.
* Makefile.am (MODULES): Add them.
* doc/guix.texi (Build Systems): Document the maven build system.
2020-07-17 04:21:22 +02:00
Julien Lepiller 3d3bc413b4
guix: java-utils: Add Maven-related phases.
* guix/build/maven/java.scm: New file.
* guix/build/maven/plugin.scm: New file.
* guix/build/maven/pom.scm: New file.
* Makefile.am (MODULES): Add them.
* guix/build-system/ant.scm (%ant-build-system-modules): Add them to the
build side.
* guix/build/java-utils.scm (generate-plugin.xml, install-pom-file)
(install-from-pom): New procedures.
2020-07-17 04:10:28 +02:00
Ludovic Courtès 96bf434c70
maint: Remove 'build-aux/git-authenticate.scm'.
* Makefile.am (channel_intro_commit, channel_intro_signer): New
variables.
(authenticate): Use it.
(EXTRA_DIST): Remove 'build-aux/git-authenticate.scm'.
* build-aux/git-authenticate.scm: Remove.
2020-07-11 12:33:10 +02:00
Ludovic Courtès a98712785e
Add 'guix git authenticate'.
* guix/scripts/git.scm, guix/scripts/git/authenticate.scm,
tests/guix-git-authenticate.sh: New files.
* Makefile.am (MODULES): Add the *.scm files.
(SH_TESTS): Add 'tests/guix-git-authenticate.sh'.
* doc/guix.texi (Channels)[Specifying Channel Authorizations]: Mention
'guix git authenticate'.
(Invoking guix git authenticate): New node.
* po/guix/POTFILES.in: Add 'guix/scripts/git.scm' and
'guix/scripts/git/authenticate.scm'.
2020-07-11 12:33:01 +02:00
Ludovic Courtès 4b9b8b2ec2
Add 'etc/historical-authorizations'.
* etc/historical-authorizations: New file.  Data extracted from
'build-aux/git-authenticate.scm'.
* Makefile.am (EXTRA_DIST): Add it.
2020-07-11 11:51:56 +02:00
Ludovic Courtès d283bb960f
maint: Remove traces of "berlin.guixsd.org".
The guixsd.org domain is no longer advertised since before in 1.0.0
release in May 2019.

* etc/substitutes/berlin.guixsd.org.pub: Rename to...
* etc/substitutes/berlin.guix.gnu.org.pub: ... this.
* etc/substitutes/ci.guix.gnu.org.pub,
etc/substitutes/ci.guix.info.pub: Adjust accordingly.
* gnu/services/base.scm (%default-authorized-guix-keys): Likewise.
* guix/build/download-nar.scm (urls-for-item): Likewise.
* guix/self.scm (miscellaneous-files): Likewise.
* Makefile.am (dist_pkgdata_DATA): Likewise.
2020-07-10 00:11:00 +02:00
Konrad Hinsen c924e54139
guix repl: Add script execution.
* guix/scripts/repl.scm: Add filename options for script execution.
* doc/guix.texi (Invoking guix repl): Document it.
* tests/guix-repl.sh: Test it.
* Makefile.am: (SH_TESTS): Add it.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2020-06-14 23:02:36 +02:00
Ludovic Courtès 5d95ac9178
maint: 'make authenticate' starts from v1.0.0.
* Makefile.am (commit_v1_0_1): Remove.
(commit_v1_0_0): New variable.
(authenticate): Use it.
2020-06-09 00:34:52 +02:00
Jan (janneke) Nieuwenhuizen 59bcffa314
system: examples: Add bare-hurd.tmpl.
* gnu/system/hurd.scm (%hurd-def%hurd-default-operating-system-kernel,
%hurd-default-operating-system): New exported variables.
* gnu/system/examples/bare-hurd.tmpl: New file.
* Makefile.am (EXAMPLES): Add it.
* tests/guix-system.sh: Add --target=i586-pc-gnu when testing it.
2020-06-08 13:51:19 +02:00
Ludovic Courtès c83eedba23
git-authenticate: Add tests.
* guix/tests/git.scm (call-with-environment-variables)
(with-environment-variables): Remove.
* guix/tests/git.scm (populate-git-repository): Add clauses for signed
commits and signed merges.
* guix/tests/gnupg.scm: New file.
* tests/git-authenticate.scm: New file.
* tests/ed25519bis.key, tests/ed25519bis.sec: New files.
* Makefile.am (dist_noinst_DATA): Add 'guix/tests/gnupg.scm'.
(SCM_TESTS): Add 'tests/git-authenticate.scm'.
(EXTRA_DIST): Add tests/ed25519bis.{key,sec}.
2020-06-05 22:54:06 +02:00
Ludovic Courtès 41f443c90a
Add (guix git-authenticate).
* build-aux/git-authenticate.scm (commit-signing-key)
(read-authorizations, commit-authorized-keys, authenticate-commit)
(load-keyring-from-blob, load-keyring-from-reference)
(authenticate-commits, authenticated-commit-cache-file)
(previously-authenticated-commits, cache-authenticated-commit): Remove.
* build-aux/git-authenticate.scm (git-authenticate): Pass
 #:default-authorizations to 'authenticate-commits'.
* guix/git-authenticate.scm: New file, with code taken from
'build-aux/git-authenticate.scm'.  Remove references to
'%historical-authorized-signing-keys' and add #:default-authorizations
parameter instead.
* Makefile.am (MODULES): Add it.
(authenticate): Depend on guix/git-authenticate.go.
2020-06-05 22:54:06 +02:00
Ludovic Courtès a1a3bd5f1f
maint: 'authenticate' depends on a couple of .go files.
* Makefile.am (authenticate): Add dependency on guix/{git,openpgp}.go.
2020-05-25 23:02:09 +02:00
Ludovic Courtès 1ad5209d90
maint: Add "make check-channel-news".
* build-aux/check-channel-news.scm: New file.
* Makefile.am (EXTRA_DIST): Add it.
(check-channel-news): New phony rule.
* doc/contributing.texi (Commit Access): Mention "make check-channel-news".
2020-05-22 00:35:23 +02:00
Ludovic Courtès 2050734717
channels: Move quirks and patches to (guix quirks).
* guix/channels.scm (apply-patches): Don't access <patch> record
directly; use 'applicable-patch?' and 'apply-patch' instead.
(<patch>, syscalls-reexports-local-variables?)
(guile-2.2.4, %quirks, %bug-41028-patch, %patches): Move to...
* guix/quirks.scm: ... here.  New file.
(apply-patch, applicable-patch?): New procedures.
2020-05-15 00:01:39 +02:00
Ludovic Courtès 6456232164
pack: Add relocation via ld.so and fakechroot.
* gnu/packages/aux-files/run-in-namespace.c (HAVE_EXEC_WITH_LOADER): New
macro.
(bind_mount): Rename to...
(mirror_directory): ... this.  Add 'firmlink' argument and use it
instead of calling mkdir/open/close/mount directly.
(bind_mount, make_symlink): New functions.
(exec_in_user_namespace): Adjust accordingly.
(exec_with_loader) [HAVE_EXEC_WITH_LOADER]: New function.
(exec_performance): New function.
(engines): Add them.
* guix/scripts/pack.scm (wrapped-package)[fakechroot-library]
[audit-module]: New procedures.
[audit-source]: New variable.
[build](elf-interpreter, elf-loader-compile-flags): New procedures.
(build-wrapper): Use them.
* tests/guix-pack-relocatable.sh: Test with
'GUIX_EXECUTION_ENGINE=fakechroot'.
* doc/guix.texi (Invoking guix pack): Document the 'performance' and
'fakechroot' engines.
* gnu/packages/aux-files/pack-audit.c: New file.
* Makefile.am (AUX_FILES): Add it.
2020-05-14 17:21:27 +02:00
nikita 3c986a7dc2
mailmap: Update entries for Nikita.
* .mailmap: change email and name for Nikita.
* Makefile.am, doc/guix.texi, etc/completion/fish/guix.fish,
gnu/packages/accessibility.scm, gnu/packages/admin.scm,
gnu/packages/audio.scm, gnu/packages/autotools.scm, gnu/packages/cdrom.scm,
gnu/packages/check.scm, gnu/packages/cinnamon.scm,
gnu/packages/compression.scm, gnu/packages/crypto.scm,
gnu/packages/databases.scm, gnu/packages/django.scm, gnu/packages/dns.scm,
gnu/packages/elixir.scm, gnu/packages/emacs-xyz.scm, gnu/packages/emacs.scm,
gnu/packages/enlightenment.scm, gnu/packages/erlang.scm,
gnu/packages/fonts.scm, gnu/packages/fontutils.scm, gnu/packages/forth.scm,
gnu/packages/fvwm.scm, gnu/packages/games.scm, gnu/packages/gl.scm,
gnu/packages/gnome.scm, gnu/packages/gnunet.scm, gnu/packages/gnupg.scm,
gnu/packages/gtk.scm, gnu/packages/guile-wm.scm, gnu/packages/guile-xyz.scm,
gnu/packages/haskell-apps.scm, gnu/packages/haskell-check.scm,
gnu/packages/haskell-crypto.scm, gnu/packages/haskell-xyz.scm,
gnu/packages/haskell.scm, gnu/packages/image-viewers.scm,
gnu/packages/image.scm, gnu/packages/irc.scm, gnu/packages/language.scm,
gnu/packages/libcanberra.scm, gnu/packages/linux.scm,
gnu/packages/lisp-xyz.scm, gnu/packages/lisp.scm, gnu/packages/lolcode.scm,
gnu/packages/lxde.scm, gnu/packages/lxqt.scm, gnu/packages/mail.scm,
gnu/packages/markup.scm, gnu/packages/mate.scm, gnu/packages/maths.scm,
gnu/packages/mc.scm, gnu/packages/messaging.scm, gnu/packages/music.scm,
gnu/packages/ncurses.scm, gnu/packages/networking.scm,
gnu/packages/nickle.scm, gnu/packages/openbox.scm, gnu/packages/pdf.scm,
gnu/packages/perl-check.scm, gnu/packages/perl.scm,
gnu/packages/python-compression.scm, gnu/packages/python-crypto.scm,
gnu/packages/python-web.scm, gnu/packages/python-xyz.scm,
gnu/packages/python.scm, gnu/packages/qt.scm, gnu/packages/ruby.scm,
gnu/packages/rust.scm, gnu/packages/scheme.scm,
gnu/packages/serialization.scm, gnu/packages/shells.scm,
gnu/packages/ssh.scm, gnu/packages/suckless.scm, gnu/packages/tbb.scm,
gnu/packages/telephony.scm, gnu/packages/text-editors.scm,
gnu/packages/textutils.scm, gnu/packages/time.scm, gnu/packages/tls.scm,
gnu/packages/tor.scm, gnu/packages/version-control.scm,
gnu/packages/video.scm, gnu/packages/vim.scm, gnu/packages/web.scm,
gnu/packages/wm.scm, gnu/packages/xdisorg.scm, gnu/packages/xfce.scm,
gnu/packages/xml.scm, gnu/packages/xorg.scm, gnu/services/certbot.scm,
gnu/services/desktop.scm, gnu/services/version-control.scm,
gnu/services/web.scm, guix/import/hackage.scm, guix/licenses.scm: Likewise.

Signed-off-by: Efraim Flashner <efraim@flashner.co.il>
2020-05-13 09:30:26 +03:00
Marius Bakke 87a40d7203
Merge branch 'master' into core-updates 2020-05-05 20:43:21 +02:00
Ludovic Courtès 43408e304f
Add (guix openpgp).
* guix/openpgp.scm, tests/openpgp.scm, tests/civodul.key,
tests/dsa.key, tests/ed25519.key, tests/rsa.key,
tests/ed25519.sec: New files.
* Makefile.am (MODULES): Add guix/openpgp.scm.
(SCM_TESTS): Add tests/openpgp.scm.
(EXTRA_DIST): Add tests/*.key and tests/ed25519.sec.
2020-05-04 09:56:12 +02:00
Marius Bakke 7abe35febe
Merge branch 'master' into core-updates 2020-04-19 16:53:01 +02:00
Ludovic Courtès 9d0b9c7c6c
maint: Provide the configuration file in the VM image.
This fixes a bug introduced in 362bcdb1b0
whereby the VM image would no longer contain /etc/config.scm, contrary
to what the manual says.

Reported by dbdude on #guix.

* Makefile.am (release): Pass '--save-provenance' to 'guix system
vm-image'.
* doc/guix.texi (Running Guix in a VM): Adjust file name accordingly.
2020-04-17 23:18:32 +02:00
Ludovic Courtès 1cfa6bcc2c
maint: Build binary tarball without '-K'.
This is a followup to 8b292ffd3c.

* Makefile.am (guix-binary.%.tar.xz): Remove '-K' to allow for offloading.
2020-04-17 13:03:01 +02:00
Marius Bakke bd21acf6c3
Merge branch 'master' into core-updates 2020-04-15 19:26:55 +02:00
Ludovic Courtès 08b14ab20e
maint: 'release' targets runs ./bootstrap for new version string.
Reported by Vagrant Cascadian <vagrant@debian.org>.

* Makefile.am (dist-with-updated-version): New target.
(release): Depend on 'dist-with-updated-version'.
2020-04-10 12:26:21 +02:00
Ludovic Courtès 98148830c0
maint: 'release' builds with '--fallback'.
* Makefile.am (guix-binary.%.tar.xz): Pass '--fallback' to 'guix pack'.
(release): Pass '--fallback' to 'guix build' and 'guix system'.
2020-04-09 16:32:38 +02:00
Ludovic Courtès 8b292ffd3c
maint: 'release' target no longer uses -K, to allow for offloading.
This is a followup to 2ce08a5d79.

* Makefile.am (release): Remove -K flag.
2020-04-09 13:18:13 +02:00
Ludovic Courtès 808084e9d1
maint: Binary tarball uses "guile3.0-guix", not "guix".
* Makefile.am (GUIX_FOR_BINARY_TARBALL): New variable.
(guix-binary.%.tar.xz): Use $(GUIX_FOR_BINARY_TARBALL) instead of
"guix".
(release): Likewise.
2020-04-09 11:52:23 +02:00
Marius Bakke 18af687037
Merge branch 'master' into core-updates
Conflicts:
	gnu/packages/icu4c.scm
	gnu/packages/man.scm
	gnu/packages/python-xyz.scm
	guix/scripts/environment.scm
	guix/scripts/pack.scm
	guix/scripts/package.scm
	guix/scripts/pull.scm
	guix/store.scm
2020-03-27 00:12:15 +01:00
Vagrant Cascadian 37f8c50cdc
gnu: linux-libre-arm-veyron: Deprecate package.
* gnu/packages/linux (linux-libre-arm-veyron): Mark as deprecated package.
  (kernel-config-veyron): Remove obsolete function.
* gnu/system/examples/asus-c201.tmpl: Update to use linux-libre-arm-generic.
* gnu/packages/aux-files/linux-libre/5.4-arm-veyron.conf: Delete file.
* Makefile.am (AUX_FILES): Update accordingly.
2020-03-22 20:55:37 -07:00
Marius Bakke 961d2ee269
Merge branch 'master' into core-updates 2020-03-14 13:13:40 +01:00
Ludovic Courtès f292c50191
maint: Add 'etc/release-manifest.scm'.
* etc/release-manifest.scm: New file.
* gnu/ci.scm (%cross-targets): Export.
* build-aux/check-available-binaries.scm: Remove.
* Makefile.am (EXTRA_DIST): Add 'etc/release-manifest.scm' and remove
'build-aux/check-available-binaries.scm'.
(assert-binaries-available): Rewrite using 'guix weather -m'.
2020-03-13 17:33:38 +01:00
Marius Bakke 50b99c90c8
Merge branch 'master' into core-updates 2020-03-10 20:50:02 +01:00
Ludovic Courtès 5ec4156bbc
tests: Add a manifest for system tests.
The manifest can be passed to 'guix build -m', 'guix weather -m', and so
on.  It can also be passed to an installed 'guix' (without
./pre-inst-env), with the exception so far of installation tests.

* build-aux/run-system-tests.scm: Remove.  Move interesting bits move
to...
* etc/system-tests.scm: ... here.  New file.
* Makefile.am (EXTRA_DIST): Remove 'build-aux/run-system-tests.scm' and
add 'etc/system-tests.scm'.
(check-system): Rewrite to run 'guix build -m etc/system-tests.scm'.
2020-03-05 16:33:38 +01:00
Marius Bakke ebb7cf9e21
Merge branch 'master' into core-updates 2020-03-04 23:16:17 +01:00
Pierre Neidhardt e90e64049c
build-system: Add copy-build-system.
* guix/build-system/copy.scm: New file.
* guix/build/copy-build-system.scm: New file.
* Makefile.am (MODULES): Add them.
* doc/guix.texi (Build Systems): Document 'copy-build-system'.
2020-02-21 10:53:11 +01:00
Timothy Sample 9c9407f746
Add (guix build gnu-bootstrap).
* guix/build/gnu-bootstrap.scm: New file.
* Makefile.am (MODULES): Add it.
2020-02-17 23:21:04 +01:00
Maxim Cournoyer d3e439e355
gnu: Add earlyoom-service-type.
* gnu/services/linux.scm: New file.
* tests/services/linux.scm: Add test.
* Makefile.am (SCM_TESTS): Register test.
* doc/guix.texi (Linux Services): Add a new section and document the new
service and its configuration.
2020-01-31 23:37:13 -05:00
Ludovic Courtès 1e43ab2c03
Add 'build-aux/git-authenticate.scm'.
* build-aux/git-authenticate.scm: New file.
* Makefile.am (EXTRA_DIST): Add it.
(commit_v1_0_1): New variable.
(authenticate): New target.
2019-12-27 13:52:49 +01:00
Mark H Weaver 952820c539
gnu: linux-libre: Update to 5.4.5.
* gnu/packages/aux-files/linux-libre/5.3-arm-veyron.conf,
gnu/packages/aux-files/linux-libre/5.3-arm.conf,
gnu/packages/aux-files/linux-libre/5.3-arm64.conf,
gnu/packages/aux-files/linux-libre/5.3-i686.conf,
gnu/packages/aux-files/linux-libre/5.3-x86_64.conf: Delete files.
* gnu/packages/aux-files/linux-libre/5.4-arm-veyron.conf,
gnu/packages/aux-files/linux-libre/5.4-arm.conf,
gnu/packages/aux-files/linux-libre/5.4-arm64.conf,
gnu/packages/aux-files/linux-libre/5.4-i686.conf,
gnu/packages/aux-files/linux-libre/5.4-x86_64.conf: New files.
* Makefile.am (AUX_FILES): Update accordingly.
* gnu/packages/patches/linux-libre-active-entropy.patch: Delete file.
* gnu/local.mk (dist_patch_DATA): Remove it.
* gnu/packages/linux.scm (deblob-scripts-5.3, linux-libre-5.3-version)
(linux-libre-5.3-pristine-source, linux-libre-5.3-source)
(linux-libre-headers-5.3, linux-libre-5.3): Remove variables.
(deblob-scripts-5.4, linux-libre-5.4-version)
(linux-libre-5.4-pristine-source, linux-libre-5.4-source)
(linux-libre-headers-5.4, linux-libre-5.4): New variables.
(linux-libre-version, linux-libre-pristine-source)
(linux-libre-source, linux-libre): Point to linux-libre-5.4*.
2019-12-18 23:07:44 -05:00
Mark H Weaver 812b0d497e
gnu: linux-libre: Remove orphaned 5.2.x kernel configurations.
This is a followup to commit 4845dee706.

* gnu/packages/aux-files/linux-libre/5.2-arm-veyron.conf,
gnu/packages/aux-files/linux-libre/5.2-arm.conf,
gnu/packages/aux-files/linux-libre/5.2-arm64.conf,
gnu/packages/aux-files/linux-libre/5.2-i686.conf,
gnu/packages/aux-files/linux-libre/5.2-x86_64.conf: Delete files.
* Makefile.am (AUX_FILES): Remove them.
2019-12-18 23:07:41 -05:00
Hartmut Goebel b6d852ce6d
guix: Add the 'qt' build system.
* guix/build-system/qt.scm, guix/build/qt-build-system.scm: New files.
* Makefile.am (MODULES): Add them.
* doc/guix.texi (Buiild systems): Add the new build system.
2019-12-01 20:24:47 +01:00
Konrad Hinsen f675f8dec7
Add 'guix time-machine'.
* guix/scripts/time-machine.scm: New file.
* Makefile.am: (MODULES): Add it.
* guix/scripts/pull.scm (channel-list): Export.
* guix/inferior.scm (cached-channel-instance): New procedure.
(inferior-for-channels): Use it.
* doc/guix.texi (Invoking guix time-machine): New section.
(Channels): Cross-reference it.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2019-11-15 23:28:17 +01:00
Ludovic Courtès 74afaa37d5
cve: Rewrite to read the JSON feed instead of the XML feed.
The XML feed was discontinued on Oct. 16th, 2019:

  <https://nvd.nist.gov/General/News/XML-Vulnerability-Feed-Retirement-Phase-3>

* guix/cve.scm (string->date*): New procedure.
(<cve-item>, <cve>, <cve-reference>): New record types.
(cpe-match->cve-configuration, configuration-data->cve-configurations)
(json->cve-items, version-matches?): New procedures.
(yearly-feed-uri): Change URL to refer to JSON feed.
(cpe->product-alist, %parse-vulnerability-feed)
(xml->vulnerabilities): Remove.
(cve-configuration->package-list, merge-package-lists)
(cve-item->vulnerability, json->vulnerabilities): New procedures.
(write-cache): Use 'json->vulnerabilities' instead of
'xml->vulnerabilities', and remove 'parameterize'.
(vulnerabilities->lookup-proc): Use 'version-matches?' when VERSION is
true.
* tests/cve.scm (%sample): Use 'tests/cve-sample.json'.
(%expected-vulnerabilities): Rewrite accordingly.
("json->cve-items", "cve-item-published-date")
("json->vulnerabilities"): New tests.
("xml->vulnerabilities"): Remove.
("vulnerabilities->lookup-proc"): Adjust to new vulnerabilities.
* tests/cve-sample.json: New file.
* tests/cve-sample.xml: Remove.
* Makefile.am (EXTRA_DIST): Adjust accordingly.
* doc/guix.texi (Invoking guix lint): Update nist.gov URLs.
2019-10-23 16:40:17 +02:00
Ricardo Wurmus e08902d3cb
Merge branch 'master' into core-updates 2019-10-06 22:02:20 +02:00
Tobias Geerinckx-Rice 9e34a5f3b2
gnu: linux-libre: Add version 5.3.1.
* gnu/packages/linux.scm (linux-libre-5.3-version)
(linux-libre-5.3-pristine-source, linux-libre-5.3-source)
(linux-libre-headers-5.3, linux-libre-5.3): New public variables.
* gnu/packages/aux-files/linux-libre/5.3-arm.conf,
gnu/packages/aux-files/linux-libre/5.3-arm-veyron.conf,
gnu/packages/aux-files/linux-libre/5.3-arm64.conf,
gnu/packages/aux-files/linux-libre/5.3-i686.conf,
gnu/packages/aux-files/linux-libre/5.3-x86_64.conf: New files.
* Makefile.am (AUX_FILES): Add them.
2019-10-01 22:40:05 +02:00
Ludovic Courtès 11da634a6e
Merge branch 'master' into core-updates 2019-09-24 10:11:38 +02:00
Ludovic Courtès 90ca791ab0
etc: Add channel news file.
* etc/news.scm: New file.
* Makefile.am (EXTRA_DIST): Add it.
2019-09-23 11:08:09 +02:00
Ludovic Courtès dcc90d1558
Add '.guix-channel' file.
* .guix-channel: New file.
* Makefile.am (EXTRA_DIST): Add it.
2019-09-23 10:41:30 +02:00
Ludovic Courtès 873f6f1334
git: Add 'commit-difference'.
* guix/git.scm (commit-closure, commit-difference): New procedures.
* guix/tests/git.scm, tests/git.scm: New files.
* Makefile.am (dist_noinst_DATA): Add guix/tests/git.scm.
(SCM_TESTS): Add tests/git.scm.
2019-09-23 10:38:43 +02:00
zimoun aeb51370da
guix package: Add 'guix show' alias.
* guix/scripts/show.scm: New file.
* Makefile.am (MODULES): Add it.
* po/guix/POTFILES.in: Add it.
* tests/guix-package-aliases.sh: Add test.
* doc/guix.texi (Invoking guix package): Document it and use it in a example.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2019-09-21 16:48:36 +02:00
Ricardo Wurmus 7bc46ecc34
doc: Add Guix Cookbook.
* .gitignore: Update ignore list.
* Makefile.am (assert-no-store-file-names): Exclude the cookbook.
* bootstrap: Generate po files for cookbook translations.
* doc/guix-cookbook.texi: New file.
* doc/local.mk (info_TEXINFOS): Add it; add a rule to build cookbook
translations.
* po/doc/local.mk (DOC_COOKBOOK_PO_FILES): New variable.
(EXTRA_DIST): Add cookbook pot file and po files.
(doc-po-update-cookbook-%): New target.
(doc-pot-update): Also update cookbook pot file.
(doc-po-update): Also update cookbook po files.
2019-09-18 11:38:14 +02:00
Ludovic Courtès 9ff87bb996
Merge branch 'master' into core-updates 2019-09-17 16:27:15 +02:00
Hartmut Goebel d1dce0c363
upstream: Move KDE updater into a separate module.
As it was done for (guix import gnome).

* guix/import/kde.scm: New file.
* Makefile.am (MODULES): Add it.
* guix/gnu-maintenance.scm (%kde-updater) (%kde-file-list-uri)
  (download.kde.org-files) (latest-kde-release): Remove.
2019-09-10 19:04:06 +02:00
Ludovic Courtès 0b2ea78173
maint: Placate 'assert-no-store-file-names'.
Reported by Vagrant Cascadian <vagrant@debian.org>.

* Makefile.am (assert-no-store-file-names): Exclude
"binutils-boot-2.20.1a.patch" since it contains a store file name as a
comment.
* gnu/packages/commencement.scm (glibc-mesboot0): Use an ellipsis
instead of an actual store file name in comment.
2019-09-08 23:03:43 +02:00
Maxim Cournoyer 5658ae8a0a
services: ntp: Support different NTP server types and options.
* gnu/services/networking.scm (ntp-server-types): New enum.
(<ntp-server>): New record type.
(ntp-server->string): New procedure.
(%ntp-servers): Define in terms of <htp-server> records.  Use the first
entrypoint server as a pool instead of a list of static servers.  This is more
resilient since a new server of the pool can be interrogated on every
request.  Add the 'iburst' options.
(ntp-configuration-servers): Define a custom accessor that warns but honors
the now deprecated server format.
(<ntp-configuration>): Use it.
(%openntpd-servers): New variable,
(<openntpd-configuration>): Use it, as a pool ('servers' field) instead of a
regular server.
* tests/networking.scm: New file.
* Makefile.am (SCM_TESTS): Register it.
* doc/guix.texi: Update documentation.
2019-09-08 23:15:31 +09:00
Mark H Weaver 65542a8852
Merge branch 'master' into core-updates 2019-09-06 20:46:00 -04:00
nixo a44a535ebe
build: Add julia-build-system.
* guix/build/julia-build-system.scm: New file.
* guix/build-system/julia.scm: New file.
* Makefile.am (MODULES): Add them.
* doc/guix.texi (Build Systems): Document julia-build-system.

Signed-off-by: Julien Lepiller <julien@lepiller.eu>
2019-09-04 22:17:38 +02:00
Ludovic Courtès 76073d29e1
Add (guix json).
* guix/swh.scm (define-json-reader, define-json-mapping): Move to...
* guix/json.scm: ... here.  New file.
* Makefile.am (MODULES): Add it.
2019-09-04 13:02:27 +02:00
Mark H Weaver 0481289cbc
Merge branch 'master' into core-updates 2019-08-29 17:19:18 -04:00
Ludovic Courtès 61a224adc3
maint: Add 'download-po' rule.
* Makefile.am (make-download-po-rule): New definition.
Add top-level 'eval' and calls to 'make-download-po-rule' to generate
'download-po.DOMAIN' rules.
(download-po): New rule.
2019-08-25 22:48:41 +02:00
Marius Bakke 6a2e54236e
Merge branch 'master' into core-updates 2019-07-31 14:28:56 +02:00
Jakob L. Kreuze 5c793753b3
guix system: Add 'reconfigure' module.
* guix/scripts/system/reconfigure.scm: New file.
* Makefile.am (MODULES): Add it.
* guix/scripts/system.scm (bootloader-installer-script): Export variable.
* gnu/machine/ssh.scm (switch-to-system, upgrade-shepherd-services)
(install-bootloader): Delete variable.
* gnu/machine/ssh.scm (deploy-managed-host): Rewrite procedure.
* gnu/services/herd.scm (live-service): Export variable.
* gnu/services/herd.scm (live-service-canonical-name): New variable.
* tests/services.scm (live-service): Delete variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2019-07-26 19:19:49 +02:00
Robert Vollmert 12277003d3
Makefile: Sort scheme tests alphabetically.
* Makefile.am (SCM_TESTS): Sort.

Signed-off-by: Efraim Flashner <efraim@flashner.co.il>
2019-07-23 09:55:05 +03:00
Marius Bakke ccad0e4d69
Merge branch 'master' into core-updates 2019-07-22 18:58:48 +02:00
Ludovic Courtès 96f1cbeff8
swh: Add basic tests.
* guix/swh.scm (%swh-base-url): Turn into a parameter and export it.
* tests/swh.scm: New file.
* Makefile.am (SCM_TESTS): Add it.
2019-07-22 11:53:39 +02:00
Ludovic Courtès 64de896a71
Merge branch 'master' into core-updates 2019-07-17 15:51:10 +02:00
Christopher Baines f363c836e0
lint: Move the linting code to a different module.
To try and move towards making programatic access to the linting code easier,
this commit separates out the linting script, from the linting functionality
that it uses.

* guix/scripts/lint.scm (emit-warnings): Alter to to not use match-lambda, as
<lint-warning> isn't accessible.
(<lint-warning>, lint-warning, make-lint-warning, lint-warning?,
lint-warning-message, lint-warning-message-text, lint-warning-message-data,
lint-warning-location, package-file, %make-warning make-warning,
<lint-checker>, lint-checker, make-lint-checker, lint-checker?,
lint-checker-name, lint-checker-description, lint-checker-check,
properly-starts-sentance?, starts-with-abbreviation?, %quoted-identifier-rx,
check-description-style, package-input-intersection,
check-inputs-should-be-native, check-inputs-should-not-be-an-input-at-all,
package-name-regexp, check-synopsis-style, probe-uri,
tls-certificate-error-string, validate-uri, check-home-page,
%distro-directory, check-patch-file-names, escape-quotes,
official-gnu-packages*, check-gnu-synopsis+description, origin-uris,
check-source, check-source-file-name, check-source-unstable-tarball,
check-mirror-url, check-github-url, check-derivation, check-license,
call-with-networking-fail-safe, with-networking-fail-safe,
current-vulnerabilities*, package-vulnerabilities, check-vulnerabilities,
check-for-updates, report-tabulations, report-trailing-white-space,
report-long-line, %hanging-paren-rx, report-lone-parantheses,
%formatting-reporters, report-formatting-issues, check-formatting, %checkers):
Move to…
* guix/lint.scm: … here
* po/guix/POTFILES.in: Add guix/lint.scm.
* Makefile.am: Add guix/lint.scm.
* tests/lint.scm: Change to import (guix lint), rather than (guix scripts lint).
2019-07-15 22:32:19 +01:00
Mark H Weaver be7eebe26d
gnu: linux-libre: Update to 5.2.
* gnu/packages/linux.scm (%linux-libre-version): Update to 5.2.
(%linux-libre-hash): Update hash.
* linux-libre-5.1: Rename to ...
* linux-libre-5.2: ... this.  Use %linux-libre-5.2-patches.
* linux-libre: Switch to linux-libre-5.2.
* linux-libre-arm-veyron, linux-libre-arm-generic, linux-libre-arm-omap2plus:
Use %linux-libre-5.2-patches.
* linux-libre-headers-5.1: Rename to ...
* linux-libre-headers-5.2: ... this.
* %linux-libre-5.1-patches: Rename to ...
* %linux-libre-5.2-patches: ... this.
* gnu/packages/aux-files/linux-libre/5.1-arm-veyron.conf,
gnu/packages/aux-files/linux-libre/5.1-arm.conf,
gnu/packages/aux-files/linux-libre/5.1-arm64.conf,
gnu/packages/aux-files/linux-libre/5.1-i686.conf,
gnu/packages/aux-files/linux-libre/5.1-x86_64.conf: Delete files.
* gnu/packages/aux-files/linux-libre/5.2-arm-veyron.conf,
gnu/packages/aux-files/linux-libre/5.2-arm.conf,
gnu/packages/aux-files/linux-libre/5.2-arm64.conf,
gnu/packages/aux-files/linux-libre/5.2-i686.conf,
gnu/packages/aux-files/linux-libre/5.2-x86_64.conf: New files.
* Makefile.am (AUX_FILES): Update accordingly.
2019-07-14 15:02:45 -04:00
Julien Lepiller a4bb189210
Revert "guix: node-build-system: Use guile-json instead of a custom parser."
The effect of this change was to import the (json parser) from the host
side into the build side. The solution here would be to do the equivalent
of ‘with-extensions’ for gexps. Since we don't use gexps for build
systems just yet, revert this for now.

This reverts commit 8eb0ba532e.
2019-07-14 20:18:07 +02:00
Julien Lepiller 8eb0ba532e
guix: node-build-system: Use guile-json instead of a custom parser.
* guix/build/json.scm: Remove file.
* Makefile.am: Remove it.
* guix/build/node-build-system.scm: Use (json parser) instead of (guix build json).
* guix/build-system/node.scm: Idem.
2019-07-14 14:57:46 +02:00
Jelle Licht 09a1f92f61
build: Add node-build-system.
* guix/build/node-build-system.scm: New file.
* guix/build-system/node.scm: New file.
* guix/build/json.scm: New file.
* doc/guix.texi: Document it.
* Makefile.am: Added new files.

Co-Authored-By: Julien Lepiller <julien@lepiller.eu>
2019-07-14 12:20:48 +02:00
Marius Bakke fb9a23a3f3
Merge branch 'master' into core-updates
Conflicts:
	gnu/local.mk
	gnu/packages/python-xyz.scm
	gnu/packages/xml.scm
	guix/gexp.scm
	po/guix/POTFILES.in
2019-07-12 01:03:53 +02:00
Ludovic Courtès 866822b738
build: Remove outdated 'release.nix'.
This file had been unmaintained and probably broken since ~2013.

* release.nix: Remove.
* Makefile.am (EXTRA_DIST): Adjust accordingly.
2019-07-07 15:48:17 +02:00
Ludovic Courtès ccadafdcef
build: Add 'doc/build.scm' to build on-line copies of the manual.
* doc/build.scm: New file.
* Makefile.am (EXTRA_DIST): Add it.
2019-07-07 15:48:17 +02:00
Jakob L. Kreuze 834b8a4110
Remove references to non-existent 'tests/machine.scm'.
* Makefile.am (SCM_TESTS): Remove 'tests/machine.scm' line.
2019-07-06 05:19:09 -04:00
Jakob L. Kreuze 5cbb832fb1
Add 'guix deploy'.
* guix/scripts/deploy.scm: New file.
* Makefile.am (MODULES): Add it.
2019-07-06 02:10:04 -04:00
Jakob L. Kreuze fa9edf09e9
gnu: Add machine type for deployment specifications.
* gnu/machine.scm: New file.
* gnu/machine/ssh.scm: New file.
* gnu/local.mk (GNU_SYSTEM_MODULES): Add it.
2019-07-06 02:10:04 -04:00
Ludovic Courtès 9d8ab8034e
Add (guix remote).
* guix/remote.scm: New file.
* Makefile.am (MODULES): Add it.
2019-07-04 18:05:02 +02:00
Ludovic Courtès 92a4087bf4
Add (guix repl).
* guix/scripts/repl.scm: Use (guix repl).
(self-quoting?, machine-repl): Remove.
* guix/repl.scm: New file.
* Makefile.am (MODULES): Add it.
2019-07-04 18:05:02 +02:00
Marius Bakke 4fb9165515
Merge branch 'staging' into core-updates 2019-07-02 20:18:16 +02:00
Tobias Geerinckx-Rice 3a8bfebed9
etc: Remove hydra.gnu.org.pub key.
* etc/substitutes/hydra.gnu.org.pub: Delete file.
* guix/self.scm (miscellaneous-files): Don't install it.
* Makefile.am (dist_pkgdata_DATA): Remove it.
* gnu/services/base.scm (%default-authorized-guix-keys): Likewise.
(hydra-key-authorization): Rename to…
(substitute-key-authorization): …this.  Adjust only call site.
2019-06-29 14:27:22 +02:00
Ludovic Courtès 92d00ca466
build: Remove 'gnu/packages/bootstrap' and its binaries.
* gnu/local.mk (bootstrapdir, bootstrap_i686_linuxdir)
(bootstrap_armhf_linuxdir, bootstrap_aarch64_linuxdir)
(bootstrap_mips64el_linuxdir, dist_bootstrap_i686_linux_DATA)
(dist_bootstrap_armhf_linux_DATA, dist_bootstrap_aarch64_linux_DATA)
(dist_bootstrap_mips64el_linux_DATA): Remove.
(set-bootstrap-executable-permissions): Remove target.
* Makefile.am (install-data-hook): Remove dependency on
'set-bootstrap-executable-permissions'.
* gnu/packages/bootstrap: Remove directory.
* tests/search-paths.scm ("evaluate-search-paths, separator is #f"):
Adjust to match .../aux-files/linux-libre.
2019-06-14 22:09:38 +02:00
Ludovic Courtès 1b5ee3bdaa
Add (guix diagnostics).
* guix/ui.scm (warning, info, report-error, leave)
(location->string, guix-warning-port, program-name)
(highlight-argument, %highlight-argument, define-diagnostic)
(%warning-color, %info-color, %error-color)
(print-diagnostic-prefix): Move to...
* guix/diagnostics.scm: ... here.  New file.
* Makefile.am (MODULES): Add it.
2019-06-03 23:18:47 +02:00
Ludovic Courtès 1b0d2b2afc
build: Add 'docker-image.tmpl' to the distribution.
Fixes <https://bugs.gnu.org/35774>.
Reported by Ting-Wei Lan <lantw44@gmail.com>.

* Makefile.am (EXAMPLES): Add docker-image.tmpl.
2019-05-18 12:03:11 +02:00
Mark H Weaver b40a36baff
gnu: linux-libre: Update to 5.1.
* gnu/packages/linux.scm (%linux-libre-version): Update to 5.1.
(%linux-libre-hash): Update hash.
(%linux-libre-5.0-patches): Rename to ...
(%linux-libre-5.1-patches): ... this.
(linux-libre, linux-libre-arm-generic, linux-libre-arm-veyron)
(linux-libre-arm-omap2plus): Use %linux-libre-5.1-patches.
(vhba-module): Move definition below the kernel packages.
* gnu/packages/aux-files/linux-libre/5.0-arm-veyron.conf,
gnu/packages/aux-files/linux-libre/5.0-arm.conf,
gnu/packages/aux-files/linux-libre/5.0-arm64.conf,
gnu/packages/aux-files/linux-libre/5.0-i686.conf,
gnu/packages/aux-files/linux-libre/5.0-x86_64.conf: Delete files.
* gnu/packages/aux-files/linux-libre/5.1-arm-veyron.conf,
gnu/packages/aux-files/linux-libre/5.1-arm.conf,
gnu/packages/aux-files/linux-libre/5.1-arm64.conf,
gnu/packages/aux-files/linux-libre/5.1-i686.conf,
gnu/packages/aux-files/linux-libre/5.1-x86_64.conf: New files.
* Makefile.am (AUX_FILES): Adjust accordingly.
2019-05-10 00:00:49 -04:00
Maxim Cournoyer 4ac69ea10f
Add (guix bzr-download).
* guix/bzr-download.scm, guix/build/bzr.scm,
etc/snippets/scheme-mode/guix-bzr-reference: New files.
* Makefile.am (MODULES): Add them.
* etc/snippets/scheme-mode/guix-origin: Add "bzr-fetch" to the origin choices.
2019-05-09 00:22:37 -04:00
Pierre Neidhardt fea338c6ca
Add (guix lzlib).
* guix/lzlib.scm, tests/lzlib.scm: New files.
* Makefile.am (MODULES): Add guix/lzlib.scm.
(SCM_TESTS): Add tests/lzlib.scm.
* m4/guix.m4 (GUIX_LIBLZ_LIBDIR): New macro.
* configure.ac (LIBLZ_LIBDIR): Use it.  Define and substitute
'LIBLZ'.
* guix/config.scm.in (%liblz): New variable.
* guix/self.scm (make-config.scm): Add TODO comment.

Co-authored-by: Ludovic Courtès <ludo@gnu.org>
2019-05-06 23:21:33 +02:00
Ludovic Courtès 757e633d57
build: Change default substitute server to "ci.guix.gnu.org".
* config-daemon.ac: Replace "ci.guix.info" with "ci.guix.gnu.org".
* doc/guix.texi (SUBSTITUTE-SERVER): Likewise.
* etc/substitutes/ci.guix.gnu.org.pub: New file.
* Makefile.am (dist_pkgdata_DATA): Add it.
* guix/scripts/build.scm (%default-log-urls): Update.
* guix/scripts/substitute.scm (%default-substitute-urls): Likewise.
* guix/store.scm (%default-substitute-urls): Likewise.
* guix/self.scm (miscellaneous-files): Add "ci.guix.gnu.org".
2019-05-01 11:05:47 +02:00
Ludovic Courtès 5dd0d1f8b3
Revert "maint: 'release' clears gettext-induced changes in doc/."
This reverts commit 24963c1307.

This change had become unnecessary since
9ca5ff882e.
2019-04-30 10:50:30 +02:00
Ludovic Courtès 1f1a00502e
build: 'assert-no-store-file-names' no longer depends on ChangeLog.
This reverts commit dfd248648f,
which effectively disabled 'ChangeLog' generation.

* Makefile.am (dist-hook): Depend on 'gen-ChangeLog', not
'$(distdir)/ChangeLog'.
(gen-ChangeLog): Remove dependency.  Use "ChangeLog.tmp" as the
temporary file name.
(assert-no-store-file-names): Remove dependency.  Exclude ChangeLog*.
2019-04-30 10:32:11 +02:00
Ludovic Courtès da56f10971
guix package: Add 'guix search' alias.
* guix/scripts/search.scm: New file.
* Makefile.am (MODULES): Add it.
* po/guix/POTFILES.in: Add it.
* tests/guix-package-aliases.sh: Add test.
* doc/guix.texi (Invoking guix package): Document it and use it in a
couple of examples.
2019-04-29 12:19:24 +02:00
Ludovic Courtès d824cfbabe
guix package: Add 'install', 'remove', and 'upgrade' aliases.
* guix/scripts/install.scm, guix/scripts/remove.scm,
guix/scripts/upgrade.scm, tests/guix-package-aliases.sh: New files.
* Makefile.am (MODULES, SH_TESTS): Add them.
* po/guix/POTFILES.in: Add them.
* guix/scripts/package.scm (guix-package): Split with...
(guix-package*): ... this.  New procedure.
* doc/guix.texi (Invoking guix package): Document them.
(Binary Installation, Application Setup, Package Management)
(Packages with Multiple Outputs, Package Modules)
(X.509 Certificates, Installing Debugging Files): Use 'guix install' in
simple examples.
* etc/completion/bash/guix (_guix_complete): Handle "install", "remove",
and "upgrade".
2019-04-29 10:13:44 +02:00
Julien Lepiller 554b30d2ac
self: Rebuild translated manuals.
* guix/self.scm (info-manual): Run po4a and related commands to generate
translated texi files before building translated manuals.
* guix/build/po.scm: New file.
* Makefile.am (MODULES_NOT_COMPILED): Add it.
2019-04-27 17:13:18 +02:00
Ludovic Courtès dbab5eb8f5
maint: Pass '--image-size=30G' to 'guix system vm-image'.
* Makefile.am (GUIX_SYSTEM_VM_IMAGE_FLAGS): New variable.
(release): Use it.
2019-04-27 15:08:17 +02:00
Ludovic Courtès 35a09fd9c1
maint: Build all the 'guix' packages in parallel.
Until now, the 'guix' package shipped in binary tarballs and system
images would be built sequentially for each system type, one at a time.
Now all of them can potentially be built in parallel.

* Makefile.am (system_flags): New function.
(release): Run "guix build guix" before "make binary-tarballs" and
before "guix system disk-image" to build all the 'guix' packages in
parallel.
2019-04-19 17:46:40 +02:00
Ludovic Courtès 24963c1307
maint: 'release' clears gettext-induced changes in doc/.
* Makefile.am (release): Run "git checkout ." in doc/
2019-04-19 17:46:40 +02:00
Danny Milosavljevic ce6312999f
Add (guix build-system linux-module).
* guix/build/linux-module-build-system.scm: New file.
* guix/build-system/linux-module.scm: New file.
* doc/guix.texi (Build Systems): Document it.
* Makefile.am (MODULES): Add them.
2019-04-11 17:50:18 +02:00
Ludovic Courtès 72eda0624b
Add (guix store roots).
* guix/store/roots.scm, tests/store-roots.scm: New files.
* Makefile.am (STORE_MODULES): Add guix/store/roots.scm.
(SCM_TESTS): Add tests/store-roots.scm.
2019-04-10 17:09:47 +02:00
Ludovic Courtès 5d9f9ad631
Add (guix colors).
* guix/colors.scm: New file.
* Makefile.am (MODULES): Add it.
* guix/ui.scm (color-table, color, colorize-string): Remove.
* guix/status.scm (isatty?*, color-output? color-rules): Remove.
2019-04-10 12:40:58 +02:00
Timothy Sample df2a96167f
gnu: Add example system configuration for asus-c201.
* gnu/system/examples/asus-c201.tmpl: New file.
* Makefile.am (EXAMPLES): Add it.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2019-04-03 18:21:43 +02:00
Vagrant Cascadian 1dbb9302c2
gnu: Add linux-libre-arm-veyron.
* gnu/packages/linux (linux-libre-arm-veyron): New variable.
  (kernel-config-veyron): function to find veyron config.
* gnu/packages/aux-files/linux-libre/5.0-arm-veyron.conf: New file.
* Makefile.am (AUX_FILES): Adjust accordingly.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2019-04-03 18:21:42 +02:00
Efraim Flashner 4e4c311465
build: Add rakudo-build-system.
* guix/build-system/rakudo.scm,
guix/build/rakudo-build-system.scm: New files.
* Makefile.am (MODULES): Add them.
* doc/guix.texi (Build System): Document it.
2019-03-23 22:26:48 +02:00
Arun Isaac ae031d453c
import: Add Launchpad updater.
* guix/import/launchpad.scm: New file.
* Makefile.am (MODULES): Register it.
* doc/guix.texi (Invoking guix refresh): Mention the Launchpad updater.
2019-03-18 20:55:55 +05:30
ng0 47956fa0c2
Correct name and email address for ng0.
* .mailmap, Makefile.am, doc/guix.de.texi, doc/guix.fr.texi,
doc/guix.texi, etc/completion/fish/guix.fish,
gnu/packages/accessibility.scm, gnu/packages/admin.scm,
gnu/packages/audio.scm, gnu/packages/autotools.scm,
gnu/packages/cdrom.scm, gnu/packages/check.scm,
gnu/packages/cinnamon.scm, gnu/packages/compression.scm,
gnu/packages/crypto.scm, gnu/packages/databases.scm,
gnu/packages/django.scm, gnu/packages/dns.scm, gnu/packages/elixir.scm,
gnu/packages/emacs-xyz.scm, gnu/packages/emacs.scm,
gnu/packages/enlightenment.scm, gnu/packages/erlang.scm,
gnu/packages/fonts.scm, gnu/packages/fontutils.scm,
gnu/packages/forth.scm, gnu/packages/fvwm.scm, gnu/packages/games.scm,
gnu/packages/gl.scm, gnu/packages/gnome.scm, gnu/packages/gnunet.scm,
gnu/packages/gnupg.scm, gnu/packages/gnuzilla.scm, gnu/packages/gtk.scm,
gnu/packages/guile-wm.scm,gnu/packages/guile-xyz.scm,
gnu/packages/haskell-check.scm, gnu/packages/haskell-crypto.scm,
gnu/packages/haskell.scm, gnu/packages/image-viewers.scm,
gnu/packages/image.scm, gnu/packages/irc.scm,
gnu/packages/language.scm, gnu/packages/libcanberra.scm,
gnu/packages/linux.scm, gnu/packages/lisp.scm, gnu/packages/lolcode.scm,
gnu/packages/lxde.scm, gnu/packages/lxqt.scm, gnu/packages/mail.scm,
gnu/packages/markup.scm, gnu/packages/mate.scm, gnu/packages/maths.scm,
gnu/packages/mc.scm, gnu/packages/messaging.scm, gnu/packages/music.scm,
gnu/packages/ncurses.scm, gnu/packages/networking.scm,
gnu/packages/nickle.scm, gnu/packages/openbox.scm, gnu/packages/pdf.scm,
gnu/packages/perl-check.scm, gnu/packages/perl.scm,
gnu/packages/python-compression.scm, gnu/packages/python-crypto.scm,
gnu/packages/python-web.scm, gnu/packages/python-xyz.scm,
gnu/packages/python.scm, gnu/packages/qt.scm, gnu/packages/ruby.scm,
gnu/packages/rust.scm, gnu/packages/scheme.scm,
gnu/packages/serialization.scm, gnu/packages/shells.scm,
gnu/packages/ssh.scm, gnu/packages/suckless.scm, gnu/packages/tbb.scm,
gnu/packages/telephony.scm, gnu/packages/text-editors.scm,
gnu/packages/textutils.scm, gnu/packages/time.scm, gnu/packages/tls.scm,
gnu/packages/tor.scm, gnu/packages/version-control.scm,
gnu/packages/video.scm, gnu/packages/vim.scm, gnu/packages/web.scm,
gnu/packages/wm.scm, gnu/packages/xdisorg.scm, gnu/packages/xfce.scm,
gnu/packages/xml.scm, gnu/packages/xorg.scm, gnu/services/certbot.scm,
gnu/services/desktop.scm, gnu/services/version-control.scm,
gnu/services/web.scm, guix/import/hackage.scm, guix/licenses.scm:
Correct name and email address for ng0.

Signed-off-by: Tobias Geerinckx-Rice <me@tobias.gr>
2019-03-18 15:05:08 +01:00
Ludovic Courtès 13f62aef2d
maint: Change Guix System file names from guixsd-*.
* Makefile.am (GUIXSD_SUPPORTED_SYSTEMS): Rename to...
(GUIX_SYSTEM_SUPPORTED_SYSTEMS): ... this.
(GUIXSD_VM_SYSTEMS): Rename to...
(GUIX_SYSTEM_VM_SYSTEMS): ... this.
(GUIXSD_IMAGE_BASE): Rename to...
(GUIX_SYSTEM_IMAGE_BASE): ... this.  Change "guixsd-" to "guix-system-".
(GUIXSD_VM_IMAGE_BASE): Rename to...
(GUIX_SYSTEM_VM_IMAGE_BASE): ... this.  Change "guixsd-" to
"guix-system-".
(release): Adjust accordingly.
* doc/guix.texi (USB Stick and DVD Installation)
(Installing Guix in a VM, Invoking guix system)
(Running Guix in a VM): Adjust file names accordingly.
2019-03-13 23:12:43 +01:00
Ludovic Courtès ec600e4544
Add (gnu build accounts).
* gnu/build/accounts.scm, tests/accounts.scm: New files.
* Makefile.am (SCM_TESTS): Add tests/accounts.scm.
* gnu/local.mk (GNU_SYSTEM_MODULES): Add build/accounts.scm.
2019-03-07 20:05:09 +01:00
Mark H Weaver 274fa49100
gnu: linux-libre: Update to 5.0.
* gnu/packages/linux.scm (%linux-libre-version): Update to 5.0.
(%linux-libre-hash): Update hash.
(%linux-libre-4.20-patches): Rename to ...
(%linux-libre-5.0-patches): ... this.
(linux-libre, linux-libre-arm-generic, linux-libre-arm-omap2plus):
Use %linux-libre-5.0-patches instead of %linux-libre-4.20-patches.
* gnu/packages/aux-files/linux-libre/4.20-arm.conf,
gnu/packages/aux-files/linux-libre/4.20-arm64.conf,
gnu/packages/aux-files/linux-libre/4.20-i686.conf,
gnu/packages/aux-files/linux-libre/4.20-x86_64.conf: Delete files.
* gnu/packages/aux-files/linux-libre/5.0-arm.conf,
gnu/packages/aux-files/linux-libre/5.0-arm64.conf,
gnu/packages/aux-files/linux-libre/5.0-i686.conf,
gnu/packages/aux-files/linux-libre/5.0-x86_64.conf: New files.
* Makefile.am (AUX_FILES): Adjust accordingly.
2019-03-06 17:51:55 -05:00
Ivan Petkov 7d141788b1
gnu: rust: Factor out "cargo-utils" from "cargo-build-system".
* guix/build/cargo-utils.scm: New file.
* Makefile.am (MODULES): Add it.
* guix/build-system/cargo.scm (%cargo-utils-modules): New variable.
(%cargo-build-system-modules): Use it.
* guix/build/cargo-build-system.scm (file-sha256, generate-checksums): Move
from here...
* guix/build/cargo-utils.scm: ...to here.
* gnu/packages/rust.scm (rust-1.19.0)[arguments]<#:imported-modules>: Use
%cargo-utils-modules.
<#:phases>[patch-cargo-checksums]: Use (guix build cargo-utils).
* gnu/packages/gnuzilla.scm (icecat):
[arguments]<#:imported-modules>: Use %cargo-utils-modules.
<#phases>[patch-cargo-checksums]: import (guix build cargo-utils).

Signed-off-by: Danny Milosavljevic <dannym@scratchpost.org>
2019-03-01 08:20:50 +01:00
Jonathan Brielmaier a7e70ec2a5
Add missing aux-file in Makefile.
Fixes installation of ungoogled-chromium on foreign distros.

This is a followup to commit f1e9de4d3a.

* Makefile.am (AUX_FILES): Add missing
gnu/packages/aux-files/chromium/master-preferences.json entry.

Signed-off-by: Leo Famulari <leo@famulari.name>
2019-02-21 15:34:12 -05:00
Eric Bavier 92becc3f15
build: clean-go: Do not warn about *.go files in "test-tmp".
* Makefile.am (clean-go): Ignore "test-tmp" directory.
2019-02-07 21:21:13 -06:00
Ludovic Courtès 787da810a0
Add (guix deprecation).
* guix/deprecation.scm: New file.
* Makefile.am (MODULES): Add it.
* po/guix/POTFILES.in: Add it.
2019-01-10 14:59:22 +01:00
Ludovic Courtès 46cf4cd676
Remove (guix build pull).
This module had been unused since commit
5f93d97005 (Oct. 2017).

* guix/build/pull.scm: Delete.
* Makefile.am (MODULES): Remove.
2019-01-07 14:40:59 +01:00
Mark H Weaver ff148ea5d6
gnu: linux-libre: Update to 4.20, while retaining 4.19 LTS.
* gnu/packages/linux.scm (%linux-libre-version): Update to 4.20.
(%linux-libre-hash): Update hash.
(%linux-libre-4.20-patches): New variable.
(linux-libre): Use %linux-libre-4.20-patches.
(%linux-libre-4.19-version, %linux-libre-4.19-hash)
(%linux-libre-4.19-patches, linux-libre-4.19): New variables.
(linux-libre-arm-generic, linux-libre-arm-omap2plus): Use
%linux-libre-4.20-patches.
(linux-libre-arm-generic-4.19, linux-libre-arm-omap2plus-4.19): New variables.
* gnu/packages/aux-files/linux-libre/4.20-arm.conf,
gnu/packages/aux-files/linux-libre/4.20-arm64.conf,
gnu/packages/aux-files/linux-libre/4.20-i686.conf,
gnu/packages/aux-files/linux-libre/4.20-x86_64.conf: New files.
* Makefile.am (AUX_FILES): Add them.
2019-01-01 11:22:58 -05:00
Julien Lepiller 6e8986c838
build: Add dune-build-system.
* guix/build/dune-build-system.scm,
  guix/build-system/dune.scm: New files.
* Makefile.am (MODULES): Add them.
* doc/guix.texi (Build Systems): Document dune-build-system.
* guix/build-system/ocaml.scm (lower, default-findlib, default-ocaml): Export
them.
(package-with-explicit-ocaml): Also transform packages built with
dune-build-system.
2018-12-18 22:16:23 +01:00
Ricardo Wurmus af12790bdd
guix: Add support for channel dependencies.
* guix/channels.scm (<channel-metadata>): New record.
(read-channel-metadata, channel-instance-dependencies): New procedures.
(latest-channel-instances): Include channel dependencies; add optional
argument PREVIOUS-CHANNELS.
(channel-instance-derivations): Build derivation for additional channels and
add it as dependency to the channel instance derivation.
* doc/guix.texi (Channels): Add subsection "Declaring Channel Dependencies".
* tests/channels.scm: New file.
* Makefile.am (SCM_TESTS): Add it.
2018-12-09 13:55:22 +01:00
Ludovic Courtès 0bc02becca
Remove most references to hydra.gnu.org.
* Makefile.am (assert-binaries-available): Don't mention hydra.gnu.org
in comment.
* build-aux/check-available-binaries.scm: Likewise.
* build-aux/check-final-inputs-self-contained.scm: Likewise.
* doc/guix.texi (SUBSTITUTE-SERVER): New variable.
Use it throughout instead of "mirror.hydra.gnu.org".
* doc/contributing.texi (Submitting Patches): Likewise.
* gnu/services/base.scm (hydra-key-authorization)
(guix-activation): Remove mentions of "hydra.gnu.org" in comments and
messages.
* gnu/system/install.scm (%installation-services): Likewise.
* guix/scripts/size.scm (guix-size): Likewise.
2018-12-04 10:57:56 +01:00
Ludovic Courtès 6a837b6062
etc: Add "ci.guix.info.pub" public key file.
* etc/substitutes/ci.guix.info.pub: New file.
* Makefile.am (dist_pkgdata_DATA): Add it.
* guix/self.scm (miscellaneous-files): Add
"share/guix/ci.guix.info.pub".
2018-12-04 10:57:56 +01:00
Eric Bavier 6776af04d4
Make Guile-JSON a required dependency.
* README (Requirements): Remove "optional" verbiage.
* doc/guix.texi (Requirements): Move Guile-JSON from optional to required.
* configure.ac (HAVE_GUILE_JSON): Remove Automake conditional.
(have_guile_json): Error if not "yes".
* Makefile.am (MODULE, SCM_TESTS)[HAVE_GUILE_JSON]: Add modules and tests
unconditionally.
* gnu/packages/package-mangement.scm (guix-minimal)[propagated-inputs]: Leave
guile-json input.
2018-12-02 17:56:05 -06:00
Ludovic Courtès 96915a448c
guix build: Add '--with-branch' transformation option.
* guix/scripts/build.scm (evaluate-git-replacement-specs)
(transform-package-source-branch): New procedures.
(%transformations, %transformation-options): Add 'with-branch'.
(show-transformation-options-help): Likewise.
* tests/guix-build-branch.sh: New file.
* Makefile.am (SH_TESTS): Add it.
* doc/guix.texi (Package Transformation Options): Document it.
2018-11-30 17:03:04 +01:00
Julien Lepiller 7565d40e1e
nls: Update documentation po and pot with `make dist`.
* Makefile.am: dist-hook depends on doc-po-update.
* po/doc/local.mk (doc-po-update): New target.
2018-11-28 22:23:55 +01:00
Ludovic Courtès de2bfe9029
Add (guix swh).
* guix/swh.scm: New file.
* Makefile.am (MODULES): Add it.
2018-11-26 11:10:20 +01:00
Ludovic Courtès e9926f80c6
build: Binary tarball now populates the "current-guix" profile.
* Makefile.am (guix-binary.%.tar.xz): Pass
'--profile-name=current-guix'.  Remove glibc and glibc-utf8-locales.
* doc/guix.texi (Binary Installation): Update accordingly.
* etc/guix-install.sh
* etc/guix-install.sh (sys_create_store, sys_enable_guix_daemon)
(sys_authorize_build_farms): Likewise.
* etc/guix-publish.conf.in, etc/guix-publish.service.in,
etc/guix-daemon.conf.in, etc/guix-daemon.service.in: Update file names
accordingly.
2018-11-23 15:42:01 +01:00
Ludovic Courtès 08f410834b
pack: Add '--profile-name'.
* guix/scripts/pack.scm (self-contained-tarball): Add #:profile-name and
honor it.
(squashfs-image, docker-image): Add #:profile-name.
(%default-options): Add 'profile-name'.
(%options, show-help): Add "--profile-name".
(guix-pack): Honor it.
* tests/guix-pack-localstatedir.sh: New file.
* Makefile.am (SH_TESTS): Add it.
* doc/guix.texi (Invoking guix pack): Document "--profile-name".
2018-11-23 15:42:01 +01:00
Ludovic Courtès 1e5b79e5d0
build: Add missing Clojure modules to the distribution.
* Makefile.am (MODULES): Add guix/build-system/clojure.scm and
guix/build/clojure-build-system.scm
2018-11-21 11:55:57 +01:00
Alex Vong 53f316ab90
guix: Add clojure-utils.
* guix/build/clojure-utils.scm: New file.
* gnu/packages/lisp.scm (clojure)[arguments]: Use it.
* Makefile.am (MODULES): Add it.
2018-11-19 12:05:19 +01:00
Ludovic Courtès b07014f55a
pack: Add test for '--relocatable'.
* tests/guix-pack-relocatable.sh: New file.
* Makefile.am (SH_TESTS): Add it.
2018-11-06 23:21:24 +01:00
Ludovic Courtès aa919fbc89
maint: Move substitute public keys to etc/substitutes.
* berlin.guixsd.org.pub, hydra.gnu.org.pub: Move to...
* etc/substitutes: ... here.  New directory.
* Makefile.am (dist_pkgdata_DATA): Adjust accordingly.
2018-11-06 00:04:11 +01:00
Ludovic Courtès 63eb2b899b
Add 'guix processes'.
* guix/scripts/processes.scm, tests/processes.scm: New files.
* Makefile.am (MODULES): Add the former.
(SCM_TESTS): Add the latter.
* po/guix/POTFILES.in: Add guix/scripts/processes.scm.
* doc/guix.texi (Invoking guix processes): New node.
(Invoking guix-daemon): Reference it.
2018-10-29 00:13:38 +01:00
Mark H Weaver ce7ceef37f
gnu: linux-libre: Update to 4.19.
* gnu/packages/linux.scm (%linux-libre-version): Update to 4.19.
(%linux-libre-hash): Update hash.
(%linux-libre-4.18-patches): Rename to ...
(%linux-libre-4.19-patches): ... this, and remove a patch that is
no longer needed.
(linux-libre, linux-libre-arm-generic, linux-libre-arm-omap2plus):
Use %linux-libre-4.19-patches instead of %linux-libre-4.18-patches.
* gnu/packages/aux-files/linux-libre/4.18-arm.conf,
gnu/packages/aux-files/linux-libre/4.18-arm64.conf,
gnu/packages/aux-files/linux-libre/4.18-i686.conf,
gnu/packages/aux-files/linux-libre/4.18-x86_64.conf: Remove files.
* gnu/packages/aux-files/linux-libre/4.19-arm.conf,
gnu/packages/aux-files/linux-libre/4.19-arm64.conf,
gnu/packages/aux-files/linux-libre/4.19-i686.conf,
gnu/packages/aux-files/linux-libre/4.19-x86_64.conf: New files.
* Makefile.am (AUX_FILES): Adjust accordingly.
2018-10-23 22:57:14 -04:00
Ludovic Courtès dc0f74e5fc
Add (guix status) and use it for pretty colored output.
* guix/progress.scm (progress-reporter/trace): New procedure.
(%progress-interval): New variable.
(progress-reporter/file): Use it.
* guix/scripts/build.scm (set-build-options-from-command-line): Pass
 #:print-extended-build-trace?.
(%default-options): Add 'print-extended-build-trace?'.
(guix-build): Parameterize CURRENT-TERMINAL-COLUMNS.  Use
'build-status-updater'.
* guix/scripts/environment.scm (%default-options): Add
'print-extended-build-trace?'.
(guix-environment): Wrap body in 'with-status-report'.
* guix/scripts/pack.scm (%default-options): Add 'print-build-trace?' and
'print-extended-build-trace?'.
(guix-pack): Wrap body in 'with-status-report'.
* guix/scripts/package.scm (%default-options, guix-package): Likewise.
* guix/scripts/system.scm (%default-options, guix-system): Likewise.
* guix/scripts/pull.scm (%default-options, guix-pull): Likewise.
* guix/scripts/substitute.scm (progress-report-port): Don't call STOP
when TOTAL is zero.
(process-substitution): Add #:print-build-trace? and honor it.
(guix-substitute)[print-build-trace?]: New variable.
Pass #:print-build-trace? to 'process-substitution'.
* guix/status.scm: New file.
* guix/store.scm (set-build-options): Add #:print-extended-build-trace?;
pass it into PAIRS.
(%protocol-version): Bump.
(protocol-version, nix-server-version): New procedures.
(current-store-protocol-version): New variable.
(with-store, build-things): Parameterize it.
* guix/ui.scm (build-output-port): Remove.
(colorize-string): Export.
* po/guix/POTFILES.in: Add guix/status.scm.
* tests/status.scm: New file.
* Makefile.am (SCM_TESTS): Add it.
* nix/libstore/worker-protocol.hh (PROTOCOL_VERSION): Bump to 0x162.
* nix/libstore/build.cc (DerivationGoal::registerOutputs)
(SubstitutionGoal::finished): Print a "@ hash-mismatch" trace before
throwing.
2018-09-27 23:21:53 +02:00
Ludovic Courtès bd7470185b
Add 'guix describe'.
* guix/scripts/describe.scm: New file.
* Makefile.am (MODULES): Add it.
(SH_TESTS): Add tests/guix-describe.sh.
* po/guix/POTFILES.in: Add it.
* guix/scripts/pull.scm (display-profile-content): Export.
* guix/describe.scm (current-profile, current-profile-entries): Export.
* tests/guix-describe.sh: New file.
* doc/guix.texi (Features): Mention 'guix pull' and provenance tracking.
(Invoking guix pull): Link to 'guix describe'.
(Channels): Likewise.
(Invoking guix describe): New node.
2018-09-07 11:40:22 +02:00
Ludovic Courtès ca71942445
Switch to Guile-Gcrypt.
This removes (guix hash) and (guix pk-crypto), which now live as part of
Guile-Gcrypt (version 0.1.0.)

* guix/gcrypt.scm, guix/hash.scm, guix/pk-crypto.scm,
tests/hash.scm, tests/pk-crypto.scm: Remove.
* configure.ac: Test for Guile-Gcrypt.  Remove LIBGCRYPT and
LIBGCRYPT_LIBDIR assignments.
* m4/guix.m4 (GUIX_ASSERT_LIBGCRYPT_USABLE): Remove.
* README: Add Guile-Gcrypt to the dependencies; move libgcrypt as
"required unless --disable-daemon".
* doc/guix.texi (Requirements): Likewise.
* gnu/packages/bash.scm, guix/derivations.scm, guix/docker.scm,
guix/git.scm, guix/http-client.scm, guix/import/cpan.scm,
guix/import/cran.scm, guix/import/crate.scm, guix/import/elpa.scm,
guix/import/gnu.scm, guix/import/hackage.scm,
guix/import/texlive.scm, guix/import/utils.scm, guix/nar.scm,
guix/pki.scm, guix/scripts/archive.scm,
guix/scripts/authenticate.scm, guix/scripts/download.scm,
guix/scripts/hash.scm, guix/scripts/pack.scm,
guix/scripts/publish.scm, guix/scripts/refresh.scm,
guix/scripts/substitute.scm, guix/store.scm,
guix/store/deduplication.scm, guix/tests.scm, tests/base32.scm,
tests/builders.scm, tests/challenge.scm, tests/cpan.scm,
tests/crate.scm, tests/derivations.scm, tests/gem.scm,
tests/nar.scm, tests/opam.scm, tests/pki.scm,
tests/publish.scm, tests/pypi.scm, tests/store-deduplication.scm,
tests/store.scm, tests/substitute.scm: Adjust imports.
* gnu/system/vm.scm: Likewise.
(guile-sqlite3&co): Rename to...
(gcrypt-sqlite3&co): ... this.  Add GUILE-GCRYPT.
(expression->derivation-in-linux-vm)[config]: Remove.
(iso9660-image)[config]: Remove.
(qemu-image)[config]: Remove.
(system-docker-image)[config]: Remove.
* guix/scripts/pack.scm: Adjust imports.
(guile-sqlite3&co): Rename to...
(gcrypt-sqlite3&co): ... this.  Add GUILE-GCRYPT.
(self-contained-tarball)[build]: Call 'make-config.scm' without
 #:libgcrypt argument.
(squashfs-image)[libgcrypt]: Remove.
[build]: Call 'make-config.scm' without #:libgcrypt.
(docker-image)[config, json]: Remove.
[build]: Add GUILE-GCRYPT to the extensions  Remove (guix config) from
the imported modules.
* guix/self.scm (specification->package): Remove "libgcrypt", add
"guile-gcrypt".
(compiled-guix): Remove #:libgcrypt.
[guile-gcrypt]: New variable.
[dependencies]: Add it.
[*core-modules*]: Remove #:libgcrypt from 'make-config.scm' call.
Add #:extensions.
[*config*]: Remove #:libgcrypt from 'make-config.scm' call.
(%dependency-variables): Remove %libgcrypt.
(make-config.scm): Remove #:libgcrypt.
* build-aux/build-self.scm (guile-gcrypt): New variable.
(make-config.scm): Remove #:libgcrypt.
(build-program)[fake-gcrypt-hash]: New variable.
Add (gcrypt hash) to the imported modules.  Adjust load path
assignments.
* gnu/packages/package-management.scm (guix)[propagated-inputs]: Add
GUILE-GCRYPT.
[arguments]: In 'wrap-program' phase, add GUILE-GCRYPT to the search
path.
2018-09-04 17:25:11 +02:00
Ludovic Courtès 0d39a3b989
Add (guix channels) and use it in (guix scripts pull).
* guix/channels.scm: New file.
* Makefile.am (MODULES): Add it.
* guix/scripts/pull.scm: Use it.
(%default-options): Remove 'repository-url' and 'ref'.
(show-help, %options): Add '--channels'.
(%self-build-file, %pull-version, build-from-source)
(whole-package-for-legacy, derivation->manifest-entry): Remove.  These
now exist in a similar form in (guix channels).
(build-and-install): Change 'source' to 'instances'.  Remove #:url,
 #:branch, and #:commit.  Rewrite using 'channel-instances->manifest'.
(channel-list): New procedure.
(guix-pull): Parameterize %REPOSITORY-CACHE-DIRECTORY.  Call
'honor-lets-encrypt-certificates!' unconditionally.  Load
~/.config/guix/channels.scm.  Rewrite to use (guix channels).
[use-le-certs?]: Remove.
* po/guix/POTFILES.in: Add (guix channels).
* doc/guix.texi (Invoking guix pull): Group the description of '--url',
'--commit', and '--branch'.  Remove mention of 'GUIX_PULL_URL'.  Add
references to "Channels".  Document '--channels'.
(Channels): New node.
(Defining Packages): Link to "Channels" instead of "Package Modules".
(Invoking guix edit): Link to "Package Modules" instead of "Defining
Packages".
(Package Modules): Document both GUIX_PACKAGE_PATH and channels.
2018-09-02 16:51:40 +02:00
Ludovic Courtès fe634eaf93
Add (guix describe) and use it to initialize '%package-search-path'.
* guix/describe.scm: New file.
* Makefile.am (MODULES): Add it.
* gnu/packages.scm (%default-package-module-path): New variable.
(%package-module-path): Honor 'package-path-entries'.
* build-aux/update-NEWS.scm (main): Use %DEFAULT-PACKAGE-MODULE-PATH
instead of (last (%package-module-path)).
2018-09-02 16:43:10 +02:00
Ludovic Courtès 93c333895a
grafts: Add (guix build debug-link) and use it.
Fixes <https://bugs.gnu.org/19973>.
Reported by Mark H Weaver <mhw@netris.org>.

* guix/build/debug-link.scm: New file.
* guix/build/graft.scm (%graft-hooks): New variable.
(graft): Add #:hooks and honor it.
* guix/grafts.scm (graft-derivation/shallow): Add (guix build
debug-link) and (guix elf) to #:modules.
* tests/debug-link.scm: New file.
* Makefile.am (MODULES): Add guix/build/debug-link.scm.
(SCM_TESTS): Add tests/debug-link.scm.
2018-08-24 18:01:05 +02:00
Mark H Weaver 3004f1c69b
gnu: linux-libre: Update to 4.18.1.
* gnu/packages/linux.scm (%linux-libre-version): Update to 4.18.1.
(%linux-libre-hash): Update hash.
(%linux-libre-patches): New variable.
(linux-libre): Add %linux-libre-patches.
* gnu/packages/aux-files/linux-libre/4.17-arm.conf,
gnu/packages/aux-files/linux-libre/4.17-arm64.conf,
gnu/packages/aux-files/linux-libre/4.17-i686.conf,
gnu/packages/aux-files/linux-libre/4.17-x86_64.conf: Delete files.
* gnu/packages/aux-files/linux-libre/4.18-arm.conf,
gnu/packages/aux-files/linux-libre/4.18-arm64.conf,
gnu/packages/aux-files/linux-libre/4.18-i686.conf,
gnu/packages/aux-files/linux-libre/4.18-x86_64.conf: New files.
* Makefile.am (AUX_FILES): Update accordingly.
2018-08-18 06:19:31 -04:00
Ludovic Courtès 2a3b1b3235
build-system: Add 'guile-build-system'.
* guix/build-system/guile.scm, guix/build/guile-build-system.scm: New
files.
* Makefile.am (MODULES): Add them.
* doc/guix.texi (Build Systems): Document 'guile-build-system'.
2018-07-23 12:25:31 +02:00
Ludovic Courtès 02d7e9417d
build: Remove copy of (srfi srfi-64).
SRFI-64 was added in Guile 2.0.10 and we require 2.0.13 or newer.

* Makefile.am (EXTRA_DIST): Remove srfi/*.
* srfi: Remove directory.
2018-07-18 00:22:33 +02:00
Ludovic Courtès 2ca299caf6
Add (guix inferior) and (guix scripts repl).
* guix/inferior.scm, guix/scripts/repl.scm, tests/inferior.scm: New
files.
* Makefile.am (MODULES): Add 'guix/scripts/repl.scm' and
'guix/inferior.scm'.
(SCM_TESTS): Add 'tests/inferior.scm'.
* doc/guix.texi (Invoking guix repl): New node.
2018-07-13 17:28:39 +02:00
Julien Lepiller b24443bff9
guix: Add opam importer.
* guix/scripts/import.scm (importers): Add opam.
* guix/scripts/import/opam.scm: New file.
* guix/import/opam.scm: New file.
* tests/opam.scm: New file.
* Makefile.am: Add them.
* doc/guix.texi (Invoking guix import): Document it.
2018-07-10 10:11:01 +02:00
Mark H Weaver cc78392923
gnu: Remove linux-libre@4.1.
* gnu/packages/linux.scm (linux-libre-4.1): Remove variable.
* gnu/packages/aux-files/linux-libre/4.1-i686.conf,
gnu/packages/aux-files/linux-libre/4.1-x86_64.conf: Delete files.
* Makefile.am (AUX_FILES): Remove them.
2018-07-04 19:30:06 -04:00