Commit Graph

986 Commits

Author SHA1 Message Date
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
Oleg Pykhalov bba0fa2499
Add guix-daemon Bash completion file.
* etc/completion/bash/guix-daemon: New file.
* Makefile.am (dist_bashcompletion_DATA): Add this.
2018-06-16 21:23:11 +03:00
Ludovic Courtès ea0a06cee2
Remove 'guix-register' and its traces.
* Makefile.am (SH_TESTS): Remove tests/guix-register.sh.
* build-aux/pre-inst-env.in (GUIX_REGISTER): Remove.
* gnu/build/install.scm (directives): Remove outdated comment.
* gnu/build/vm.scm (root-partition-initializer): Update comment.
* gnu/packages/package-management.scm (guix-register): Remove.
* guix/config.scm.in (%sbindir, %guix-register-program): Remove.
* guix/scripts/system.scm (install): Adjust docstring.
* guix/self.scm (make-config.scm): Remove #:guix.  Do not generate
%sbindir and %guix-register-program.
(specification->package): Remove "guix".
* nix/guix-register/guix-register.cc: Remove.
* nix/libstore/store-api.cc (decodeValidPathInfo): Remove.
* nix/libstore/store-api.hh (decodeValidPathInfo): Remove declaration.
* nix/local.mk (sbin_PROGRAMS, guix_register_SOURCES)
(guix_register_CPPFLAGS, guix_register_LDFLAGS): Remove.
* tests/guix-register.sh: Remove.
2018-06-14 11:17:00 +02:00
Ludovic Courtès c5a2e1ffcb
build: Require Guile-SQLite3.
The next commits make (sqlite3) an indirect dependency of (gnu build
install), which is itself used by (guix scripts system), hence this new
requirement.

* configure.ac: Error out when $guix_cv_have_recent_guile_sqlite3 is
false.  Remove HAVE_GUILE_SQLITE3 Automake conditional.
* Makefile.am (MODULES, SCM_TESTS): Remove HAVE_GUILE_SQLITE3 conditions.
* doc/guix.texi (Requirements): Add Guile-SQLite3.
* README: Ditto.
* gnu/packages/package-management.scm (guix)[propagated-inputs]: Add
GUILE-SQLITE3.
[arguments]: In 'wrap-program' phase, take guile-sqlite3 into account.
2018-06-14 11:16:58 +02:00
Ludovic Courtès 3931c76154
database: 'with-database' can now initialize new databases.
* nix/libstore/schema.sql: Rename to...
* guix/store/schema.sql: ... this.
* Makefile.am (nobase_dist_guilemodule_DATA): Add it.
* nix/local.mk (%D%/libstore/schema.sql.hh): Adjust accordingly.
* guix/store/database.scm (sql-schema): New variable.
(sqlite-exec, initialize-database, call-with-database): New procedures.
(with-database): Rewrite in terms of 'call-with-database'.
* tests/store-database.scm ("new database"): New test.
* guix/self.scm (compiled-guix)[*core-modules*]: Add 'schema.sql' to
 #:extra-files.
2018-06-14 11:16:58 +02:00
Mark H Weaver db89d31876
gnu: linux-libre: Update to 4.17.
* gnu/packages/linux.scm (%linux-libre-version): Update to 4.17.
(%linux-libre-hash): Update hash.
* gnu/packages/aux-files/linux-libre/4.16-arm.conf,
gnu/packages/aux-files/linux-libre/4.16-arm64.conf,
gnu/packages/aux-files/linux-libre/4.16-i686.conf,
gnu/packages/aux-files/linux-libre/4.16-x86_64.conf: Delete files.
* 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: New files.
* Makefile.am (AUX_FILES): Adjust accordingly.
2018-06-05 17:21:03 -04:00
Caleb Ristvedt bf5bf5778c
Add (guix store deduplication).
* guix/store/database.scm (register-path): Add #:deduplicate? and call
'deduplicate' when it's true.
(counting-wrapper-port, nar-sha256): Move to...
* guix/store/deduplication.scm: ... here.  New file.
* tests/store-deduplication.scm: New file.
* Makefile.am (STORE_MODULES): Add deduplication.scm.
(SCM_TESTS) [HAVE_GUILE_SQLITE3]: Add store-deduplication.scm.

Co-authored-by: Ludovic Courtès <ludo@gnu.org>
2018-06-01 15:35:54 +02:00
Caleb Ristvedt 7f9d184d9b
Add (gnu store database).
* guix/config.scm.in (%store-database-directory): New variable.
* guix/store/database.scm: New file.
* tests/store-database.scm: New file.
* Makefile.am (STORE_MODULES): New variable.
(MODULES, MODULES_NOT_COMPILED): Adjust accordingly.
(SCM_TESTS) [HAVE_GUILE_SQLITE3]: Add tests/store-database.scm.

Co-authored-by: Ludovic Courtès <ludo@gnu.org>
2018-06-01 15:35:32 +02:00
Vagrant Cascadian 5a9dc4a807
gnu: linux-libre: Enable build for aarch64-linux.
* gnu/packages/linux.scm (%linux-compatible-systems): Add aarch64-linux.
  (linux-libre-4.14): Limit to x86_64-linux, i686-linux and armhf-linux.
* gnu/packages/aux-files/linux-libre/4.16-arm64.conf: New file.
* Makefile.am (AUX_FILES): Add 4.16-arm64.conf.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2018-05-21 00:12:02 +02:00
Ludovic Courtès 47a60325ca
pack: Add '--relocatable'.
* gnu/packages/aux-files/run-in-namespace.c: New file.
* Makefile.am (AUX_FILES): Add it.
* guix/scripts/pack.scm (<c-compiler>): New record type.
(c-compiler, bootstrap-c-compiler, c-compiler-compiler): New procedures.
(self-contained-tarball): Use
'relative-file-name' for the SOURCE -> TARGET symlink.
(docker-image): Add 'defmod' to please Geiser.
(wrapped-package, map-manifest-entries): New procedures.
(%options, show-help): Add --relocatable.
(guix-pack): Honor it.
2018-05-10 14:53:57 +02:00
Danny Milosavljevic 436515cdb8
build: Add the Android NDK build-system.
* guix/build-system/android-ndk.scm: New file.
* guix/build/android-ndk-build-system.scm: New file.
* Makefile.am: Add them.
2018-05-09 19:16:04 +02:00
Julien Lepiller 39764ef893
build: Use only one domain for guix-manual.
* Makefile.am (assert-no-store-file-names): Exclude guix-manual.
* po/doc/guix.pot po/doc/contributing.pot: Merge into...
* po/doc/guix-manual.pot: ...this.
* po/doc/guix.fr.po po/doc/contributing.fr.po: Merge into...
* po/doc/guix-manual.fr.po: ...this.
* doc/local.mk: Replace old file names.
* po/doc/local.mk: Replace old file names.
2018-04-29 21:42:14 +02:00
Ludovic Courtès 06c4778ae2
build: Add silent rules for Texinfo xref translation.
* Makefile.am (AM_V_POXREF, AM_V_POXREF_, AM_V_POXREF_0): New
variables.
* doc/local.mk ($(srcdir)/%D%/guix.%.texi)
($(srcdir)/%D%/contributing.%.texi): Use $(AM_V_POXREF).
2018-04-25 23:11:53 +02:00
Julien Lepiller b9fe8fd662
gnu: doc: Allow documentation to be translated.
* po/doc/contributing.pot: New file.
* po/doc/guix.pot: New file.
* po/doc/local.mk: New file.
* Makefile.am: Include it. Add gettext command. Add silent rules for po4a.
* configure.ac: Look for po4a-translate and po4a-updatepo.
* doc/local.mk: Add rules to generate translated texi files.
(TRANSLATED_INFO): New variable.
(BUILT_SOURCES, EXTRA_DIST, MAINTAINERCLEANFILES): Add it.
* .gitignore: Add generated files.
2018-04-19 21:30:30 +02:00
Mark H Weaver 99e892a562
gnu: linux-libre: Update to 4.16.1.
* gnu/packages/linux.scm (%linux-libre-version): Update to 4.16.1.
(%linux-libre-hash): Update hash.
* gnu/packages/aux-files/linux-libre/4.15-arm.conf,
gnu/packages/aux-files/linux-libre/4.15-i686.conf,
gnu/packages/aux-files/linux-libre/4.15-x86_64.conf: Delete files.
* gnu/packages/aux-files/linux-libre/4.16-arm.conf,
gnu/packages/aux-files/linux-libre/4.16-i686.conf,
gnu/packages/aux-files/linux-libre/4.16-x86_64.conf: New files.
* Makefile.am (AUX_FILES): Update accordingly.
2018-04-11 15:04:54 -04:00
Ludovic Courtès 351f384e57
cuirass: Add job specs for the modular Guix.
* build-aux/cuirass/guix-modular.scm: New file.
* Makefile.am (EXTRA_DIST): Add it.
2018-04-08 17:48:33 +02:00
Ludovic Courtès a1ec7540be
cuirass: Factorize hydra-to-cuirass CI job translation.
* build-aux/cuirass/gnu-system.scm: Move code to...
* build-aux/cuirass/hydra-to-cuirass.scm: ... here, and include it.
* Makefile.am (EXTRA_DIST): Add 'build-aux/cuirass/hydra-to-cuirass.scm'
and 'build-aux/cuirass/gnu-system.scm'.
2018-04-08 17:48:33 +02:00
Ludovic Courtès 2cfc8d6964
build: Add 'as-derivation' target.
* build-aux/compile-as-derivation.scm: New file.
* Makefile.am (as-derivation): New target.
(EXTRA_DIST): Add compile-as-derivation.scm.
2018-04-08 17:48:25 +02:00
Ludovic Courtès eaae07ec28
Add (guix self).
* guix/self.scm: New file.
* Makefile.am (MODULES): Add it.
* gnu/packages.scm (%distro-root-directory): Rewrite to try different
directories.
* guix/discovery.scm (guix): Export 'scheme-files'.
2018-04-08 17:41:08 +02:00
Ludovic Courtès c92e561299
build: Fix reference to non-existent 'bin/guix.in' in Makefile.am.
Fixes a regression introduced in
cba386c129.
Reported by Julien Lepiller <julien@lepiller.eu>.

* Makefile.am (EXTRA_DIST): Rename 'bin/guix.in' to 'scripts/guix.in'.
2018-03-31 23:30:50 +02:00
Ludovic Courtès c5e7bca248
build: Build (guix ci) and (guix scripts weather) when HAVE_GUILE_JSON.
* Makefile.am (MODULES): Move guix/ci.scm and guix/scripts/weather.scm
to the HAVE_GUILE_JSON-guarded block.
2018-03-28 17:06:33 +02:00
Ludovic Courtès b3517f3f9f
Add (guix ci).
* guix/ci.scm: New file.
* Makefile.am (MODULES): Add it.
2018-03-28 16:17:06 +02:00
Chris Marusich 272c070962
tests: Add tests for "guix pack".
* guix/scripts/pack.scm (bootstrap-xz): New variable.
  (%options) <--bootstrap>: New option.
  (show-help): Document the new --bootstrap option.
  (guix-pack): When --bootstrap is specified, use the bootstrap Guile,
  tar, and xz to build the pack, and do not use any profile hooks or
  locales.
* doc/guix.texi (Invoking guix pull): Document the new --bootstrap
  option.
* tests/guix-pack.sh: New file.
* Makefile.am (SH_TESTS): Add guix-pack.sh.
* gnu/packages/package-management.scm (guix) <inputs>: Add util-linux.
2018-03-24 03:04:07 +01:00
ng0 4a78fd4617
Correct name and Email for ng0.
* .mailmap: Correct name and Email for ng0.
* 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/emacs.scm, gnu/packages/enlightenment.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.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-crypto.scm, gnu/packages/python-web.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: Tobias Geerinckx-Rice <me@tobias.gr>
2018-03-20 17:17:58 +01:00
Ludovic Courtès f14c933df1
Add (guix glob).
* guix/glob.scm, tests/glob.scm: New files.
* Makefile.am (MODULES): Add guix/glob.scm.
(SCM_TESTS): Add tests/glob.scm.
2018-03-02 13:46:25 +01:00
Mark H Weaver efe2a2833c
Merge branch 'master' into core-updates 2018-02-09 01:46:34 -05:00
Ricardo Wurmus b617a9fe23
etc: Add SELinux policy for the daemon.
* etc/guix-daemon.cil.in: New file.
* Makefile.am (dist_selinux_policy_DATA): Define it.
* configure.ac: Handle --with-selinux-policy-dir.
* doc/guix.texi (SELinux Support): New section.
2018-02-07 15:41:23 +01:00
Marius Bakke bee7bb315c
Merge branch 'master' into core-updates 2018-02-01 13:18:47 +01:00
Mark H Weaver adbe6dea33
gnu: linux-libre: Update to 4.15, while retaining 4.14 LTS.
* gnu/packages/linux.scm (%linux-libre-version): Update to 4.15.
(%linux-libre-hash): Update hash.
(%linux-libre-arm-generic-4.14, %linux-libre-arm-omap2plus-4.14)
(%linux-libre-4.1-version, %linux-libre-4.1-hash): New variables.
* gnu/packages/aux-files/linux-libre/4.15-arm.conf,
gnu/packages/aux-files/linux-libre/4.15-i686.conf,
gnu/packages/aux-files/linux-libre/4.15-x86_64.conf: New files.
* Makefile.am (AUX_FILES): Add them.
2018-01-30 03:51:21 -05:00
Ricardo Wurmus 6f4e8693e7
etc: Add installation script.
* etc/guix-install.sh: New file.
* Makefile.am (EXTRA_DIST): Add it.
* doc/guix.texi (Binary Installation): Mention it.

Co-authored-by: sharlatan <sharlatanus@gmail.com>
2018-01-30 03:48:04 +01:00
Mark H Weaver a102d359a6
Merge branch 'master' into core-updates 2018-01-23 17:01:07 -05:00
Mathieu Lirzin cba386c129
build: Expand ‘scripts/guix’ at Make time.
This moves the complexity of Autotools variable expansion outside of the
application code.

* scripts/guix.in (config-lookup): Delete.
(maybe-augment-load-paths!, run-guix-main): Use fully expanded variables
instead of calling ‘config-lookup’.
* configure.ac: Don't use AC_CONFIG_FILES for ‘scripts/guix’.
Use AC_PROG_SED.
* Makefile.am (scripts/guix): New rule.
(do_subst): New variable.
(CLEANFILES, EXTRA_DIST): Adapt.

Co-authored-by: Ludovic Courtès <ludo@gnu.org>
2018-01-23 10:13:16 +01:00
Mark H Weaver e074a655dd
Merge branch 'master' into core-updates 2018-01-19 23:59:20 -05:00
ng0 b83fc85f9f
etc: Add completions for fish.
* etc/completion/fish/guix.fish: New file.
* Makefile.am: Register the file.
* configure.ac: Add the fish vendor-completions directory.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2018-01-16 16:00:20 +01:00
Marius Bakke 32cd878be0
Merge branch 'master' into core-updates 2017-12-19 01:42:40 +01:00
Mathieu Othacehe 9f1e39d1fc
system: examples: Add a template for BeagleBone Black.
* gnu/system/examples/beaglebone-black.tmpl: New file.
* Makefile.am (EXAMPLES): Add it.
* gnu/system/install.scm (/etc/configuration-files): Add it.
2017-12-18 15:28:14 +01:00
Ludovic Courtès b8396f96bf
profiles: Use (guix man-db) to create the manual database.
Fixes <https://bugs.gnu.org/29654>.
Reported by Ruud van Asseldonk <dev+guix@veniogames.com>.

This also speeds up database creation compared to "man-db
--create" (less than half the time, on a warm cache, for 19k pages.)

* guix/man-db.scm: New file.
* Makefile.am (MODULES_NOT_COMPILED): Add it.
* guix/profiles.scm (manual-database): Rewrite to use (guix man-db).
2017-12-17 16:19:00 +01:00
Ludovic Courtès 03870da819
Add (guix profiling).
* guix/profiling.scm: New file.
* Makefile.am (MODULES): Add it.
* guix/store.scm (record-operation): Use 'profiled?' and
'register-profiling-hook!'.
2017-12-12 18:11:22 +01:00
Marius Bakke 77181815ae
Merge branch 'master' into core-updates 2017-12-05 23:41:30 +01:00
Ludovic Courtès be5622e7f1
maint: Add 'berlin.guixsd.org.pub'.
* bayfront.guixsd.org.pub: Rename to...
* berlin.guixsd.org.pub: ... this.
* Makefile.am (dist_pkgdata_DATA): Adjust accordingly.
* gnu/services/base.scm (%default-authorized-guix-keys): Likewise.
2017-12-04 17:57:37 +01:00
Ludovic Courtès aa1d47e72e
maint: Let 'guix system vm-image' determine the right size.
* Makefile.am (GUIXSD_VM_IMAGE_BASE): Remove.
(release): Remoev --image-size argument to 'guix system vm-image'.
2017-12-04 16:35:43 +01:00
Ludovic Courtès 9d163ec133
maint: Add 'aarch64-linux' to the supported systems.
* Makefile.am (SUPPORTED_SYSTEMS): Add aarch64-linux.
2017-12-04 16:35:43 +01:00
Ludovic Courtès 3b6e7c703c
maint: Add the '.iso' extension to installation images.
* Makefile.am (release): Add the '.iso' suffix to image files.
* doc/guix.texi (USB Stick and DVD Installation): Adjust accordingly.
2017-12-04 16:35:43 +01:00
Arun Isaac 3d0aa7f70b
build-system: Add scons-build-system.
* guix/build-system/scons.scm: New file.
* guix/build/scons-build-system.scm: New file.
* Makefile.am (MODULES): Register them.
* doc/guix.texi (Build Systems): Add scons-build-system.
2017-11-30 18:19:31 +05:30
Ludovic Courtès cd295fbe17
Revert "Add (guix self) and use it when pulling."
This reverts commit 5f93d97005.

'guix pull' would fail because (guix self) needs 'scheme-files'
from (guix discovery), which was not exported until now.
2017-11-21 23:53:10 +01:00
Ludovic Courtès 11a54b3d6e
hydra: Add jobs for the modular Guix.
* build-aux/hydra/guix-modular.scm: New file.
* Makefile.am (EXTRA_DIST): Add it.
2017-11-21 23:09:17 +01:00
Ludovic Courtès 5f93d97005
Add (guix self) and use it when pulling.
This mitigates <https://bugs.gnu.org/27284>.

* guix/self.scm: New file.
* Makefile.am (MODULES): Add it.
* build-aux/build-self.scm (libgcrypt, zlib, gzip, bzip2, xz)
(false-if-wrong-guile, package-for-current-guile, guile-json)
(guile-ssh, guile-git, guile-bytestructures): Remove.
(build): Rewrite to simply delegate to 'compiled-guix'.
* gnu/packages.scm (%distro-root-directory): Rewrite to try different
directories.
* guix/discovery.scm (guix): Export 'scheme-files'.
* guix/scripts/pull.scm (build-and-install): Split into...
(install-latest): ... this.  New procedure.  And...
(build-and-install): ... this, which now takes a monadic value argument.
(indirect-root-added): Remove.
(guix-pull): Call 'add-indirect-root'.  Call 'build-from-source' and
pass the result to 'build-and-install'.
2017-11-21 23:09:16 +01:00
Marius Bakke 2dd12924cf
Merge branch 'master' into core-updates 2017-11-19 15:01:00 +01:00
Mark H Weaver c114c9c5d8
gnu: linux-libre: Update to 4.14.
* gnu/packages/linux.scm (%linux-libre-version): Update to 4.14.
(%linux-libre-hash): Update hash.
* gnu/packages/aux-files/linux-libre/4.13-arm.conf,
gnu/packages/aux-files/linux-libre/4.13-i686.conf,
gnu/packages/aux-files/linux-libre/4.13-x86_64.conf: Delete files.
* gnu/packages/aux-files/linux-libre/4.14-arm.conf,
gnu/packages/aux-files/linux-libre/4.14-i686.conf,
gnu/packages/aux-files/linux-libre/4.14-x86_64.conf: New files.
* Makefile.am (AUX_FILES): Update accordingly.
2017-11-16 00:03:34 -05:00
Mathieu Othacehe cfbe7b7f4c
gnu: linux: Add linux-libre arm kernel.
* Makefile.am (AUX_FILES): Add arm config file.
* gnu/packages/aux-files/linux-libre/4.13-arm.conf: New file.
* gnu/packages/linux.scm (%intel-compatible-systems): Rename to
  %linux-compatible-systems and add "armhf-linux".
  (linux-libre): Adapt consequently.

The config file for arm is taken from debian armmp kernel. It's a generic
firmware for ARMv7 multiplatform compatible SoCs.
2017-11-09 20:35:11 +01:00
Ludovic Courtès 37eed374d9
ui: Introduce (guix i18n).
* guix/ui.scm (G_, N_, _P, %gettext-domain, %package-text-domain): Move
to...
* guix/i18n.scm: ... here.  New file.
2017-11-08 22:31:58 +01:00
Eric Bavier 89618fa8b8
build: Conditionally build json importer.
* Makefile.am (MODULES): Add guix/scripts/import/json.scm when HAVE_GUILE_JSON.
2017-11-06 17:27:43 -06:00
Marius Bakke ca4fd41de8
Merge branch 'master' into core-updates 2017-10-24 22:00:23 +02:00
Ludovic Courtès 2890ad332f
build: Factorize module compilation in (guix build compile).
* guix/build/compile.scm: New file.
* Makefile.am (MODULES): Add it.
* build-aux/compile-all.scm: Use it.
(warnings, file->module, load-module-file)
(%default-optimizations, %lightweight-optimizations)
(optimization-options, compile-file*): Remove.
<top level>: Use 'compile-files'.
* guix/build/pull.scm (%default-optimizations)
(%lightweight-optimizations, optimization-options): Remove.
(build-guix): Rewrite as a call to 'compile-files'.
* guix/discovery.scm (file-name->module-name): Export.
2017-10-22 22:09:00 -07:00
Marius Bakke 119a749db9
Merge branch 'master' into core-updates 2017-10-22 20:12:52 +02:00
Ludovic Courtès 37ce440dcf
download: Download a nar when a VCS checkout fails.
Fixes <https://bugs.gnu.org/28709>.

* guix/build/download-nar.scm: New file.
* Makefile.am (MODULES): Add it.
* guix/cvs-download.scm (cvs-fetch)[zlib, config.scm, modules]: New
variables.
[build]: Use MODULES.  Add call to 'download-nar'.
* guix/git-download.scm (git-fetch): Likewise.
* guix/hg-download.scm (hg-fetch): Likewise.
2017-10-19 23:21:49 +02:00
Ludovic Courtès 8c3488259e
Add (guix progress).
Among other things, this removes (guix utils), (guix ui), (guix config),
etc. from the closure of (guix build download), as was the case since
798648515b.

* guix/utils.scm (<progress-reporter>, call-with-progress-reporter):
Move to...
* guix/progress.scm: ... here.  New file.
* Makefile.am (MODULES): Add it.
* guix/build/download.scm (current-terminal-columns)
(nearest-exact-integer, duration->seconds, seconds->string)
(byte-count->string, progress-bar, string-pad-middle)
(rate-limited, progress-reporter/file, dump-port*)
(time-monotonic): Move to progress.scm.
* guix/scripts/download.scm: Adjust accordingly.
* guix/scripts/substitute.scm: Likewise.
2017-10-19 23:21:49 +02:00
Thomas Danckaert 8cff2e7aed
Merge 'master' into core-updates 2017-10-16 19:52:30 +02:00
Leo Famulari 91525b486c
build: Add the Go build system.
* guix/build-system/go.scm,
guix/build/go-build-system.scm: New files.
* Makefile.am (MODULES): Add new files.
* doc/guix.texi (Build Systems): Document the go-build-system.
2017-10-12 21:22:40 -04:00
Efraim Flashner 64df08f0cf
Merge remote-tracking branch 'origin/master' into core-updates 2017-10-01 22:16:22 +03:00
Jan Nieuwenhuizen 454caca8e6
cuirass: Add 'cuirass-jobs.scm' target to compute the Cuirass jobs.
* build-aux/hydra/evaluate.scm: Support "cuirass" command line option.
* Makefile.am (cuirass-jobs.scm): New target.
2017-09-28 17:39:54 +02:00
Ricardo Wurmus fb1db38547
import: Add JSON importer.
* doc/guix.texi (Invoking guix import): Document it.
* guix/scripts/import/json.scm: New file.
* Makefile.am (MODULES): Add it.
* guix/scripts/import.scm (importers): Add json importer.
2017-09-28 13:10:11 +02:00
Ricardo Wurmus 68a91a183b
import: Add package->code.
* guix/import/print.scm: New file.
* tests/print.scm: New file.
* Makefile.am (SCM_TESTS): Add new test file.
(MODULES): Add print.scm.
2017-09-28 13:10:10 +02:00
Ludovic Courtès a95ddf0d07
build: Build (guix import gnome) only when we have Guile-JSON.
* Makefile.am (MODULES): Move guix/import/gnome.scm under "if
HAVE_GUILE_JSON".
2017-09-26 09:29:00 +02:00
Ludovic Courtès c1d8b3b3b5
upstream: Add new GNOME updater.
Partly fixes <https://bugs.gnu.org/28159>.
Reported by Hartmut Goebel <h.goebel@crazy-compilers.com>.

* guix/import/gnome.scm: New file.
* Makefile.am (MODULES): Add it.
* guix/gnu-maintenance.scm (latest-gnome-release)
(%gnome-updater): Remove.
2017-09-26 00:35:06 +02:00
Peter Mikkelsen 07c101e221
build-system: Add 'meson-build-system'.
* Makefile.am (MODULES): Add 'guix/build-system/meson.scm' and
'guix/build/meson-build-system.scm'.
* guix/build-system/meson.scm: New file.
* guix/build/meson-build-system.scm: New file.
* doc/guix.texi (Build Systems): Add 'meson-build-system'.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-09-16 18:07:00 +02:00
Ludovic Courtès 0649321d91
guix system: Add 'search' command.
* guix/scripts/system.scm (resolve-subcommand): New procedure.
(process-command): Handle 'search'.
(guix-system): Likewise.
(show-help): Augment.
* guix/scripts/system/search.scm: New file.
* po/guix/POTFILES.in: Add it.
* Makefile.am (MODULES): Add it.
* guix/ui.scm (%text-width): Export.
* doc/guix.texi (Invoking guix system): Document it.
(Service Types and Services): Mention 'guix system search'.
* tests/guix-system.sh: Test it.
2017-09-16 17:47:46 +02:00
Ludovic Courtès 8f3b63b5d7
uuid: Move tests to 'tests/uuid.scm'.
* tests/file-systems.scm ("uuid->string", "string->uuid")
("uuid", "uuid, syntax error"): Move to...
* tests/uuid.scm: ... here.  New file.
("uuid, ISO-9660, format preserved"): New test.
2017-09-14 00:10:13 +02:00
Mark H Weaver 6bd1c41e87
gnu: linux-libre: Update to 4.13.
* gnu/packages/linux.scm (%linux-libre-version): Update to 4.13.
(%linux-libre-hash): Update hash.
* gnu/packages/aux-files/linux-libre/4.12-i686.conf,
gnu/packages/aux-files/linux-libre/4.12-x86_64.conf: Delete files.
* gnu/packages/aux-files/linux-libre/4.13-i686.conf,
gnu/packages/aux-files/linux-libre/4.13-x86_64.conf: New files.
* Makefile.am (AUX_FILES): Adjust accordingly.
2017-09-04 05:31:07 -04:00
Ludovic Courtès 4f024ef318
build: Remove code to download the Guile bootstrap tarball.
* build-aux/download.scm: Remove.
* Makefile.am (EXTRA_DIST): Remove it.
(check-system): Remove dependency on $(BOOTSTRAP_GUILE_TARBALLS).
* gnu/local.mk (nodist_bootstrap_x86_64_linux_DATA)
(nodist_bootstrap_i686_linux_DATA, nodist_bootstrap_armhf_linux_DATA)
(nodist_bootstrap_aarch64_linux_DATA, nodist_bootstrap_mips64el_linux_DATA)
(BOOTSTRAP_GUILE_TARBALLS, DISTCLEANFILES, DOWNLOAD_FILE)
(%D%/packages/bootstrap/x86_64-linux/guile-2.0.9.tar.xz)
(%D%/packages/bootstrap/i686-linux/guile-2.0.9.tar.xz)
(%D%/packages/bootstrap/armhf-linux/guile-2.0.11.tar.xz)
(%D%/packages/bootstrap/aarch64-linux/guile-2.0.14.tar.xz)
(%D%/packages/bootstrap/mips64el-linux/guile-2.0.9.tar.xz): Remove.
* build-aux/test-env.in: Add "guix download" invocation when
gnu/packages/bootstrap/guile* exists.
2017-08-28 23:51:16 +02:00
Danny Milosavljevic d79013f66a
maint: Create an ISO9660 installation image in the 'release' target.
* Makefile.am (GUIXSD_IMAGE_BASE): Adapt target file name.
(release): Use file-system-type iso9660.
* doc/guix.texi: Document installation from DVD.
2017-08-19 04:38:15 +02:00
Ricardo Wurmus 88c8f247e5
build: Add minify build system.
* guix/build-system/minify.scm: New file.
* guix/build/minify-build-system: New file.
* Makefile.am (MODULES): Add new files.
* doc/guix.texi (Build Systems): Document minify-build-system.
2017-08-04 11:23:52 +02:00
Ludovic Courtès 7441f1dbd7
build: Make Guile-Git a hard requirement.
* configure.ac: Error out when (git) is missing.
* doc/guix.texi (Requirements): Mention Guile-Git.
* Makefile.am (MODULES): Add guix/git.scm unconditionally.
2017-08-02 00:03:59 +02:00