Commit graph

1614 commits

Author SHA1 Message Date
Ludovic Courtès
7af417502c
doc: '--inherit' option can be repeated.
* doc/guix.texi (Invoking guix environment): Mention that '--inherit'
can be repeated.
2019-02-17 00:04:56 +01:00
Christopher Baines
8b9a7b26c2
services: Improve the upower-service-type.
Add a description and default value. Switch the documentation to mention the
service-type and the configuration record, rather than the upower-service
procedure.

* gnu/services/desktop.scm (upower-service-type)[description, default-value]:
Define these fields.
(%desktop-services): Change (upower-service) to (service upower-service-type).
* doc/guix.texi (Desktop Services): Update the upower service documentation.
2019-02-16 22:05:15 +00:00
Ludovic Courtès
e6e599fa01
environment: Add '--inherit'.
* guix/scripts/environment.scm (purify-environment): Add 'white-list'
parameter and honor it.
(create-environment): Add #:white-list parameter and honor it.
(launch-environment): Likewise.
(launch-environment/fork): Likewise.
(show-help, %options): Add '--inherit'.
(guix-environment): Define 'white-list' and pass it to
'launch-environment/fork'.
* tests/guix-environment.sh: Test '--inherit'.
* doc/guix.texi (Invoking guix environment): Document it.
2019-02-16 01:00:08 +01:00
Ludovic Courtès
d423d6892a
doc: Add a "Development" chapter.
* doc/guix.texi (Managing Software the Guix Way): Add reference to the
"Development" section.
(Invoking guix environment, Invoking guix pack): Move to...
(Development): ... here.  New node.
2019-02-13 16:19:54 +01:00
Ludovic Courtès
499b166d1c
guix system: Add 'delete-generations'.
* guix/scripts/package.scm (delete-matching-generations): Export.
* guix/scripts/system.scm (show-help): Add 'delete-generations'.
(process-command): Honor it.
(guix-system): Support it.
* doc/guix.texi (Invoking guix system): Document it.
2019-02-13 16:19:54 +01:00
Chris Marusich
b0a372637f
doc: Clarify channel file structure.
Suggested by Hartmut Goebel <h.goebel@crazy-compilers.com>.

* doc/guix.texi (Channels): Clarify how a channel author should structure the
files in their channel's Git repository.
2019-02-12 21:39:38 -08:00
Ludovic Courtès
50a93adc05
Merge branch 'staging' 2019-02-09 15:14:59 +01:00
Ludovic Courtès
024a6bfba9
guix build: '--with-branch' & co. fetch submodules.
* guix/scripts/build.scm (transform-package-source-branch)[replace]: Add
'recursive?' field to the new package.
2019-02-08 10:41:13 +01:00
Ludovic Courtès
9c6124f829
doc: Mention flag to get an ISO image.
* doc/guix.texi (Building the Installation Image): Add
'--file-system-type=iso9660'.
2019-02-07 15:46:45 +01:00
Danny Milosavljevic
89339a35bd
doc: Document how to enable qemu binfmt service and how to use it.
* doc/contributing.texi (Submitting Patches): Document how to enable qemu
binfmt service and how to use it.

Co-authored-by: Ricardo Wurmus <rekado@elephly.net>
2019-02-04 17:56:28 +01:00
Ludovic Courtès
f73ab814a5
doc: Show how to install Emacs, Guile, and Geiser.
* doc/contributing.texi (The Perfect Setup): Show "guix package -i"
command line.
2019-02-04 00:03:30 +01:00
Tobias Geerinckx-Rice
2049cbb326
doc: Update left-over references to lsh.
* doc/guix.texi (Using the Configuration System, Defining Services):
Refer to OpenSSH instead of lsh.
2019-02-01 17:39:51 +01:00
Marius Bakke
0747328e31
Merge branch 'master' into staging 2019-01-31 23:32:56 +01:00
Ludovic Courtès
796a4491fd
doc: Clarify 'sudo' vs. 'guix pull' and 'guix system reconfigure'.
* doc/guix.texi (Proceeding with the Installation): Clarify use of
"sudo" with "guix pull" and "guix system reconfigure".
2019-01-28 15:45:48 +01:00
Ludovic Courtès
280e9c2a26
doc: Update bit about GUIX_LD_WRAPPER_ALLOW_IMPURITIES.
This is a followup to d0a2db47fb.

* doc/guix.texi (Application Setup)[The GCC toolchain]: Adjust bit
about GUIX_LD_WRAPPER_ALLOW_IMPURITIES.
2019-01-26 00:06:55 +01:00
Ludovic Courtès
1379319fe7
doc: Switch from "GuixSD" to "Guix System".
* doc/guix.texi (Introduction): Add footnote about the change from
"GuixSD" to "Guix System".
Replace occurrences of "GuixSD" with "Guix System", "Guix", "system", or
other appropriate phrases.
2019-01-26 00:06:55 +01:00
Ludovic Courtès
9b104bfeef
doc: Make /dev/kvm note more visible.
Suggested by Giovanni Biscuolo <g@xelera.eu>.

* doc/guix.texi (Invoking guix system): Move note about /dev/kvm access
to the beginning of the 'vm' action description.
2019-01-26 00:06:55 +01:00
Ricardo Wurmus
02d38bd3a2
Merge branch 'master' into staging 2019-01-25 15:20:25 +01:00
Ludovic Courtès
bd414e273c
weather: Add '--coverage'.
* guix/scripts/weather.scm (show-help, %options): Add '--coverage'.
(package-partition-boundary, package->output-mapping)
(substitute-oracle, report-package-coverage-per-system)
(report-package-coverage): New procedures.
(guix-weather): Honor '--coverage'.
* doc/guix.texi (Invoking guix weather): Document it.
2019-01-25 14:06:37 +01:00
Pierre Neidhardt
b1c4dafbf1
doc: Replace some cons* with beginner-friendly (append (list ...)).
* doc/guix.texi (Base Services): Do it.
2019-01-23 18:01:16 +01:00
Pierre Neidhardt
286749bd44
doc: Correct EFI-specific system configuration details.
* doc/guix.texi (Preparing for Installation): /boot/efi is arbitrary.
Mention /boot/efi consistently.
(Proceeding with the Installation): Make it explicit that the EFI mount point
must both be mounted and be specified in the system configuration.
2019-01-23 18:01:16 +01:00
Ricardo Wurmus
5aaef5c5de
Merge branch 'master' into staging 2019-01-23 12:08:27 +01:00
Ludovic Courtès
ce6236f419
doc: Move "Package Modules" under "Programming Interface".
* doc/guix.texi (Package Modules): Move to...
(Programming Interface): ... here.  Turn into a section.
2019-01-22 23:04:06 +01:00
Ludovic Courtès
afe7408e19
doc: Move "Packaging Guidelines" under "Contributing".
* doc/guix.texi (Packaging Guidelines): Move to...
* doc/contributing.texi (Packaging Guidelines): ... here.  Turn into a
section.  Adjust references to "Contributing".
2019-01-22 23:04:06 +01:00
Ludovic Courtès
83db020506
doc: Move "System Installation" right after "Installation".
* doc/guix.texi (System Installation): Move right after "Installation".
2019-01-22 23:04:06 +01:00
Ludovic Courtès
b40de030d1
doc: Move sections under "GNU Distribution" one level higher.
* doc/guix.texi (Introduction): Add note about Guix System.
[Managing Software the Guix Way]: New section heading.
[GNU Distribution]: New subsection of "Introduction".  Mention "Guix
System" rather than "GuixSD" and update the list of supported systems.
(GNU Distribution): Remove as a chapter.
(System Installation, System Configuration, Documentation)
(Installing Debugging Files, Security Updates, Package Modules)
(Packaging Guidelines, Bootstrapping, Porting): Turn these sections
into chapters.
2019-01-22 23:04:05 +01:00
Ludovic Courtès
f9e8a12379
store: Rename '&nix-error' to '&store-error'.
* guix/store.scm (&nix-error): Rename to...
(&store-error): ... this, and adjust users.
(&nix-connection-error): Rename to...
(&store-connection-error): ... this, and adjust users.
(&nix-protocol-error): Rename to...
(&store-protocol-error): ... this, adjust users.
(&nix-error, &nix-connection-error, &nix-protocol-error): Define these
condition types and their getters as deprecrated aliases.
* build-aux/run-system-tests.scm, guix/derivations.scm,
guix/grafts.scm, guix/scripts/challenge.scm,
guix/scripts/graph.scm, guix/scripts/lint.scm,
guix/scripts/offload.scm, guix/serialization.scm,
guix/ssh.scm, guix/tests.scm, guix/ui.scm,
tests/derivations.scm, tests/gexp.scm, tests/guix-daemon.sh,
tests/packages.scm, tests/store.scm, doc/guix.texi: Adjust to use the
new names.
2019-01-21 23:09:55 +01:00
Ludovic Courtès
3e2d4e69c3
Merge branch 'master' into staging 2019-01-20 22:12:10 +01:00
Ricardo Wurmus
65cd70ce42
services: openssh: Add escape hatch.
* gnu/services/ssh.scm (<openssh-configuration>)[extra-content]: New field.
* doc/guix.texi (Networking Services): Document it.
2019-01-17 17:58:35 +01:00
Mathieu Othacehe
2e7addd20b
doc: Document the graphical installer.
* doc/guix.texi (Preparing for Installation): Mention the graphical installer.
2019-01-17 14:04:21 +01:00
Damien Cassou
61b7f97177
doc: Add missing parameter to guix system reconfigure
* doc/guix.texi (Proceeding with the Installation): Mention that
  /etc/config.scm must be passed as parameter and that root is needed.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2019-01-16 14:07:38 +01:00
Ludovic Courtès
2e04ab7147
services: avahi: Deprecate the 'avahi-service' procedure.
* gnu/services/avahi.scm (<avahi-configuration>): Export getters.  Add
default values.
(avahi-service-type)[default-value]: New field.
(avahi-service): Mark as deprecated.
* gnu/services/desktop.scm (%desktop-services): Use the 'service' form
instead of calling 'avahi-service'.
* gnu/tests/base.scm (%avahi-os): Likewise.
* doc/guix.texi (Base Services): Adjust example accordingly.
(Networking Services): Update accordingly.
2019-01-16 14:07:37 +01:00
Marius Bakke
6764f94317
Merge branch 'master' into staging 2019-01-13 01:40:04 +01:00
Ludovic Courtès
f1de676ea8
guix build: Re-purpose '--verbosity' and add '--debug'.
The previous '--verbosity' option was misleading and rarely what users
were looking for.  The new option provides a consistent way to choose
whether or not to display the build log.

* guix/scripts/build.scm (show-build-options-help): Remove "--verbosity"
and add "--debug".
(set-build-options-from-command-line): Use the 'debug key of OPTS for
 #:verbosity.
(%standard-build-options): Change "verbosity" to "debug".  Use
'string->number*' instead of 'string->number'.
(%default-options): Change 'verbosity to 'debug and add a 'verbosity
key.
(show-help): Add '--verbosity'.
(%options): Likewise, and change '--quiet' to set the 'verbosity key of
RESULT.
(guix-build): Use 'with-status-verbosity' instead of parameterizing
CURRENT-BUILD-OUTPUT-PORT, honor the 'verbosity key of OPTS, and remove
'quiet?'.
* guix/scripts/environment.scm (show-help, %options): Add '--verbosity'.
(%default-options): Add 'debug'.
(guix-environment): Honor the 'verbosity key of OPTS.
* guix/scripts/pack.scm (%default-options): Add 'debug.
(%options, show-help): Add '--verbosity'.
(guix-pack): Honor the 'verbosity key of OPTS.
* guix/scripts/package.scm (%default-options): Add 'debug.
(show-help, %options): Add '--verbosity'.  Mark '--verbose' as
deprecated and change it to set 'verbosity.
(guix-package): Honor the 'verbosity key of OPTS and remove 'verbose?'.
* guix/scripts/pull.scm (%default-options): Add 'debug.
(show-help, %options): Add '--verbosity'.
(guix-pull): Honor the 'verbosity key of OPTS.
* guix/scripts/system.scm (show-help, %options): Add '--verbosity'.
(%default-options): Add 'debug.
(guix-system): Honor the 'verbosity key of OPTS.
* guix/scripts/archive.scm (%default-options): Add 'debug,
'print-build-trace?, 'print-extended-build-trace?, and
'multiplexed-build-output?.
(show-help, %options): Add '--verbosity'.
(export-from-store): Remove call to 'set-build-options-from-command-line'.
(guix-archive): Wrap body in 'with-status-verbosity'. Add call to
'set-build-options-from-command-line.
* doc/guix.texi (Common Build Options): Document '--verbosity' and
'--debug'.
(Additional Build Options): Adjust description of '--quiet'.
2019-01-11 12:14:38 +01:00
Ludovic Courtès
84a2de36a1
services: Deprecate a few more service procedures.
These procedures were already either undocumented (and de facto
deprecated) or documented as deprecated or redundant.

* gnu/services/base.scm (guix-service, guix-publish-service): Mark as
deprecated.
* gnu/services/mcron.scm (mcron-service): Likewise.
* gnu/services/networking.scm (tor-service): Likewise.
* doc/guix.texi (Scheduled Job Execution): Remove 'mcron-service' and
adjust example.
(Networking Services): Remove 'tor-service'.
* gnu/tests/base.scm (%mcron-os): Use 'mcron-service-type' instead of
'mcron-service'.
* gnu/tests/networking.scm (%tor-os): Use 'tor-service-type' instead of
'tor-service'.
* tests/guix-system.sh: Likewise.
2019-01-11 12:14:38 +01:00
Danny Milosavljevic
8af4c335e3
services: Add docker.
* gnu/services/docker.scm: New file.
* gnu/local.mk (GNU_SYSTEM_MODULES): Add it.
* doc/guix.texi (Miscellaneous Services): Document the service.
2019-01-10 03:00:55 +01:00
Ludovic Courtès
0991fd5336
build: Require Guile 2.2.
* configure.ac: Require Guile 2.2.
* README: Adjust accordingly.
* doc/guix.texi (Requirements): Likewise.
* gnu/packages/package-management.scm (guile2.0-guix): Deprecate.
(guix-minimal): Inherit from GUIX, not from GUILE2.0-GUIX.
2019-01-09 14:47:53 +01:00
Efraim Flashner
0e28967250
Merge remote-tracking branch 'origin/master' into staging 2019-01-09 10:52:41 +02:00
Ricardo Wurmus
6df4d8338d
doc: Recommend using the installer script.
* doc/guix.texi (Installation): Make it clear that the installer script is the
recommended, easy way to install Guix.
2019-01-08 18:49:13 +01:00
Marius Bakke
af8fd11bed
Merge branch 'master' into staging 2018-12-27 15:44:38 +01:00
Efraim Flashner
c180017b6f
lint: Check for unstable tarballs.
* guix/scripts/lint.scm (check-source-unstable-tarball): New procedure.
(%checkers): Add it.
* tests/lint.scm ("source-unstable-tarball", "source-unstable-tarball:
source #f", "source-unstable-tarball: valid", "source-unstable-tarball:
package named archive", "source-unstable-tarball: not-github",
"source-unstable-tarball: git-fetch"): New tests.
* doc/guix.texi (Invoking guix lint): Document it.
2018-12-27 14:55:54 +02:00
Ludovic Courtès
5923102f7b
pull: Add '--system'.
* guix/scripts/pull.scm (%options): Add '--system'.
(guix-pull): Honor it.
* doc/guix.texi (Invoking guix pull): Document it.
2018-12-27 12:08:25 +01:00
Marius Bakke
2bfcdbce51
Merge branch 'master' into staging 2018-12-26 16:03:09 +01:00
Ludovic Courtès
ed7b44370f
offload: Use (guix inferior) instead of (ssh dist node).
Using inferiors and thus 'guix repl' simplifies setup on build
machines (no need to worry about GUILE_LOAD_PATH etc.)

Furthermore, the 'guix repl -t machine' protocol running in a remote
pipe addresses several issues with the current implementation of nodes
and RREPLs in Guile-SSH: fewer round trips, doesn't leave a 'guile
--listen' process behind it, stateless (since a new process is started
each time), more efficient (the SSH channel can be reused), more
reliable (no 'pgrep', 'pkill', and shellology; see
<https://github.com/artyom-poptsov/guile-ssh/issues/11> as an example.)

* guix/ssh.scm (inferior-remote-eval): New procedure.
(send-files): Use it instead of 'make-node' and 'node-eval'.
* guix/scripts/offload.scm (node-guile-version): New procedure.
(node-free-disk-space, transfer-and-offload, node-load)
(choose-build-machine, assert-node-has-guix): Use 'remote-inferior'
instead of 'make-node' and 'inferior-eval' instead of 'node-eval'.
(assert-node-can-import, assert-node-can-export): Likewise, and add
'session' parameter.
(check-machine-availability): Likewise, and add calls to
'close-inferior' and 'disconnect!'.
(check-machine-status): Likewise.
* doc/guix.texi (Daemon Offload Setup): Remove bit related to 'guile' in
$PATH and $GUILE_LOAD_PATH; mention 'guix' alone.
2018-12-24 16:06:32 +01:00
Efraim Flashner
b599fed5b0
doc: Fix typo.
This is a follow-up to c39491829a

* doc/guix.texi (Invoking guix refresh): Fix texinfo markup
2018-12-24 12:39:20 +02:00
Efraim Flashner
c39491829a
scripts: refresh: Allow searching recursively.
* guix/scripts/refresh.scm (refresh-recursive, list-transitive): New
procedures.
(show-help): Document it.
(guix-refresh): Add flags and checks for new options.
* doc/guix.texi (Invoking guix refresh): Document new options.
2018-12-24 12:19:17 +02:00
Efraim Flashner
dcad57d5fc
services: Add quassel.
* gnu/services/messaging.scm (<quassel-configuration>): New record type.
(%quassel-account, %quassel-activation): New procedures.
(quassel-service-type): New variable.
* gnu/tests/messaging.scm (%test-quassel): New variable.
(run-quassel-test): New procedure.
* doc/guix.texi (Messaging): Document quassel service.
2018-12-24 11:18:36 +02:00
Arun Isaac
0865d8a8f6
guix: lint: Check for source URIs redirecting to GitHub.
* guix/scripts/lint.scm (check-github-uri): New procedure.
(%checkers): Add it.
* doc/guix.texi (Invoking guix lint): Document it.
* tests/lint.scm ("github-url", "github-url: one suggestion"): New tests.
2018-12-24 08:15:17 +05:30
Marius Bakke
02bf685d00
Merge branch 'master' into staging 2018-12-23 23:26:04 +01:00
Tobias Geerinckx-Rice
6f832eba1e
doc: Fix ‘serice’ -> ‘service’ typos.
* doc/guix.texi (Web Services): Fix typos.
2018-12-23 17:57:07 +01:00
Marius Bakke
f30830b2e6
Merge branch 'master' into staging 2018-12-22 15:26:30 +01:00
Ludovic Courtès
295430f0cf
doc: '--search' is case-insensitive.
Suggested by Chris Marusich <cmmarusich@gmail.com>.

* doc/guix.texi (Invoking guix package): Mention that --search is
case-insensitive.
2018-12-21 23:50:13 +01: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
Ludovic Courtès
65c8a04370
doc: Remove stale reference to 'hydra.gnu.org'.
Reported by Thomas Schmitt <scdbackup@gmx.net>.

* doc/guix.texi (Binary Installation): Refer to SUBSTITUTE-SERVER, not
to 'hydra.gnu.org'.
2018-12-18 16:04:25 +01:00
swedebugia
bd5a81f9b8
guix system: Clarify the three strategies available.
* guix/scripts/system.scm (show-help): Clarify the three choices.
* doc/guix.texi (Invoking guix system): Add 3 @cindex to make on-error=strategy
easier to find.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2018-12-18 16:04:25 +01:00
Ludovic Courtès
4d55431d89
doc: Fix typo in '.guix-channel' example.
* doc/guix.texi (Channels): Remove extra quote in '.guix-channel'
example.
2018-12-18 16:04:25 +01:00
Jelle Licht
b8d5fbd86f
doc: Replace 'https-port' with 'listen' in nginx php example.
* doc/guix.texi (Web Services): Update accordingly.
2018-12-18 14:50:47 +01:00
Ludovic Courtès
a93c160631
environment: Support package transformation options.
Fixes <https://bugs.gnu.org/33776>.
Reported by Adrien Guilbaud <adrien.guilbaud@inria.fr>.

* guix/scripts/environment.scm (show-help): Add call to
'show-transformation-options-help'.
(%options): Add %TRANSFORMATION-OPTIONS.
(options/resolve-packages): Add 'store' parameter.
[transform, package->manifest-entry*]: New procedures.
Use 'package->manifest-entry*' instead of 'package->manifest-entry'.
(guix-environment): Move definition of 'manifest' within 'with-store'.
* tests/guix-environment.sh: Add test.
2018-12-17 23:33:42 +01:00
Ludovic Courtès
bafcf1f32f
services: udev: Add 'rules' action.
* gnu/services/base.scm (udev-shepherd-service): Add 'actions' field.
* doc/guix.texi (Base Services): Move "@end deffn" after 'udev-service'
definition.  Mention 'herd rules udev'.
2018-12-17 23:33:42 +01:00
Oleg Pykhalov
85c07cff9c
services: monitoring: Add 'zabbix-front-end'.
* gnu/services/monitoring.scm (nginx-server-configuration-list?,
serialize-nginx-server-configuration-list, zabbix-front-end-configuration,
zabbix-front-end-config, zabbix-front-end-activation,
generate-zabbix-front-end-documentation): New procedures.
(%zabbix-front-end-configuration-nginx, %maintenance.inc.php,
zabbix-front-end-service-type): New variables.
* doc/guix.texi (Monitoring Services): Document this.
2018-12-17 22:09:11 +03:00
Oleg Pykhalov
e517161d6b
services: php-fpm: Add 'timezone' configuration.
* gnu/services/web.scm: (<php-fpm-configuration>)[timezone]: New record field.
(default-php-fpm-config, php-fpm-shepherd-service, php-fpm-activation): Use
this.
* doc/guix.texi (Web Services): Document this.
2018-12-17 22:09:10 +03:00
Oleg Pykhalov
6106d7cae4
services: monitoring: Add 'zabbix-agent'.
* gnu/services/monitoring.scm (zabbix-server-service-type,
zabbix-agent-account, zabbix-agent-activation, zabbix-agent-config-file,
zabbix-agent-shepherd-service, generate-zabbix-agent-documentation): New
procedures.
(zabbix-agent-service-type): New 'service-type'.
* gnu/tests/monitoring.scm (run-zabbix-server-test): Test 'zabbix-agent'.
(%zabbix-os): Add 'zabbix-agent' service.
* doc/guix.texi (Monitoring Services): Document 'zabbix-agent'.
2018-12-17 22:09:10 +03:00
Oleg Pykhalov
6b1c4179e2
services: monitoring: Add 'zabbix-server'.
* gnu/services/monitoring.scm (uglify-field-name, serialize-field,
serialize-number, serialize-list, serialize-string, group?, serialize-group,
include-files?, serialize-include-files, zabbix-server-account,
zabbix-server-config-file, zabbix-server-activation,
zabbix-server-shepherd-service, generate-zabbix-server-documentation,
extra-options, serialize-extra-options): New procedures.
(zabbix-server-service-type): New variable.
* gnu/tests/monitoring.scm (%psql-user-create-zabbix,
%psql-db-zabbix-create-script, %psql-db-create-zabbix, %psql-db-import-zabbix,
%zabbix-os, %test-zabbix): New variables.
(run-zabbix-server-test): New procedure.
* doc/guix.texi (Monitoring Services): Document 'zabbix-server'.

squash! services: monitoring: Add 'zabbix-server'.
2018-12-17 22:09:10 +03:00
Pierre Neidhardt
0afeb7468c
doc: Replace @command by @code for packages
* doc/contributing.texi (Submitting Patches): Replace @command by @code for
  packages.
2018-12-15 19:21:08 +01:00
Pierre Neidhardt
024e358cb9
doc: Merge "discourage use of texlive" with existing paragraph on "guix size"
* doc/contributing.texi (Submitting Patches): Merge "discourage use of
  texlive" with existing paragraph on "guix size".
2018-12-15 00:20:35 +01:00
Pierre Neidhardt
dc56dc025d
doc: Discourage the use of texlive as input
* doc/contributing.texi (Submitting Patches): Discourage the use of texlive as
  input.
2018-12-14 23:32:39 +01:00
Marius Bakke
12878d12ac
Merge branch 'master' into staging 2018-12-12 22:00:52 +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
Marius Bakke
fbb7b04a85
Merge branch 'master' into staging 2018-12-09 00:18:32 +01:00
Ludovic Courtès
bd3e1f1694
doc: Update "Limitations".
* doc/guix.texi (Limitations): Update package count.
2018-12-05 00:08:28 +01:00
Ludovic Courtès
606b1a1e6b
doc: Update substitute server.
Fixes an accidental revert in commit
0a5fa004f7.

* doc/guix.texi (SUBSTITUTE-SERVER): Really change to ci.guix.info.
2018-12-04 15:28:07 +01:00
Ludovic Courtès
0a5fa004f7
build: Default to https://ci.guix.info for substitutes.
* config-daemon.ac (guix_substitute_urls): Always default to
"https://ci.guix.info".
* doc/guix.texi (SUBSTITUTE-SERVER): Switch to ci.guix.info.
* guix/scripts/build.scm (%default-log-urls): Likewise.
* guix/scripts/substitute.scm (%default-substitute-urls): Likewise.
* guix/store.scm (%default-substitute-urls): Likewise.
2018-12-04 10:57:56 +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
Marius Bakke
99f63f011d
Merge branch 'master' into staging 2018-12-03 19:15:17 +01:00
Eric Bavier
a8fdca11d8
doc: Remove footnotes about guile-json requirements.
Follow-up to 6efccabe4e.

* doc/guix.texi (Invoking guix import)[pypi, gem, cpan, json]: Remove
footnotes mentioning requirement for Guile-JSON.
2018-12-03 08:56:06 -06: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
Miguel Ángel Arruga Vivas
f31e586b58
doc: Typos in guix.texi manual.
* doc/guix.texi (USB Stick and DVD Installation): use @var{system}
consistently.
(Proceeding with the Installation): use @email markup instead of @file.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2018-12-02 23:28:49 +01:00
Ludovic Courtès
793dcd8c67
nls: Update 'de' translation of the manual. 2018-12-02 23:08:47 +01:00
Julien Lepiller
adfb167f12
nls: Update 'fr' translation. 2018-12-02 14:31:20 +01:00
Nicolas Goaziou
0afb908c50
doc: Even more spacing typos.
* doc/guix.texi (Binary Installation):
(Invoking guix pack):
(Build Systems):
(Invoking guix graph):
(Invoking guix environment):
(Networking Services):
(Mail Services):
(Web Services):
(Invoking guix system): Prevent Texinfo from ending a sentence too early.
2018-12-02 10:19:40 +01:00
Nicolas Goaziou
be34131b9e
doc: Fix more spacing typos.
* doc/guix.texi (Channels):
(Additional Build Options):
(Invoking guix lint):
(Base Services):
(Networking Services):
(Mail Services):
(Messaging Services):
(Web Services):
(Certificate Services):
(Version Control Services):
(Python Modules): Prevent Texinfo from ending a sentence too early.
2018-12-02 10:13:30 +01:00
Nicolas Goaziou
b2e5048c0c
doc: Fix typo.
* doc/guix.texi (Invoking guix refresh): Prevent spurious space after "e.g.".
2018-12-02 10:03:47 +01:00
Julien Lepiller
a52461ded1
doc: Fix typo.
* doc/guix.texi (Networking Services): Fix double `the`.
2018-12-01 23:56:22 +01:00
Ludovic Courtès
b18f7234aa
guix build: Add '--with-commit'.
* guix/git.scm (<git-checkout>)[commit]: New field.
(git-checkout-compiler): Honor it.
* guix/scripts/build.scm (evaluate-git-replacement-specs): Add 'proc'
parameter and honor it.
(transform-package-source-branch)[replace]: New procedure.
Adjust 'evaluate-git-replacement-specs' accordingly.
(transform-package-source-commit): New procedure.
(%transformations, %transformation-options)
(show-transformation-options-help): Add 'with-commit'.
* tests/guix-build-branch.sh: Add test.
* doc/guix.texi (Package Transformation Options): Document it.
2018-11-30 17:03:04 +01: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
Ludovic Courtès
8856f409d1
derivations: Add properties.
* guix/derivations.scm (derivation): Add #:properties parameter.
[user+system-env-vars]: Honor it.
(derivation-properties): New procedure.
(build-expression->derivation): Add #:properties and pass it to
'derivation'.
* guix/gexp.scm (gexp->derivation): Likewise.
* tests/derivations.scm ("derivation-properties"): New test.
* tests/gexp.scm ("gexp->derivation properties"): New test.
* doc/guix.texi (Derivations, G-Expressions): Adjust accordingly.
2018-11-28 10:39:58 +01:00
Ludovic Courtès
0c17f72070
services: openssh: Install OpenSSH in the system profile.
This ensures one can scp to or from the GuixSD machine that uses the
service.

* gnu/services/ssh.scm (openssh-service-type)[extensions]: Add
PROFILE-SERVICE-TYPE extension.
* gnu/system/examples/bare-bones.tmpl <packages>: Remove OPENSSH.
* doc/guix.texi (Using the Configuration System): Adjust accordingly.
2018-11-26 11:10:20 +01:00
Ludovic Courtès
bb640d6133
daemon: Ignore '--keep-failed' for TCP/IP clients.
* nix/nix-daemon/nix-daemon.cc (performOp) <wopSetOptions>: When
'isRemoteConnection' is true, set 'settings.keepFailed' to zero.
* doc/guix.texi (Common Build Options): Document this behavior.
2018-11-24 19:52:16 +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
60e1c1099f
Update Guile-SQLite3 URL everywhere.
* README: Update Guile-SQLite3 URL.
* doc/guix.texi (Requirements): Likewise.
* guix/store/database.scm (sqlite-exec): Likewise.
* m4/guix.m4 (GUIX_CHECK_GUILE_SQLITE3): Likewise.
2018-11-23 15:42:00 +01:00
Oleg Pykhalov
85e9c4b919
describe: Add recutils format.
* guix/scripts/describe.scm (channel->recutils): New procedure.
(display-checkout-info, display-profile-info): Use this.
(%options): Add 'recutils' option.
* doc/guix.texi (Invoking guix describe): Document this.
2018-11-22 21:17:55 +03:00
Oleg Pykhalov
81a40ee0cb
describe: Add json format.
* guix/scripts/describe.scm (channel->json): New procedure.
(display-checkout-info, display-profile-info): Use this.
(%options): Add 'json' option.
* doc/guix.texi (Invoking guix describe): Document this.
2018-11-22 21:17:54 +03:00
Oleg Pykhalov
1255400faa
describe: Add profile option.
* guix/scripts/describe.scm (%options): Add profile option.
(show-help): Document this.
(display-checkout-info): Check for profile argument.
* doc/guix.texi (Invoking guix describe): Document this.
2018-11-21 14:41:13 +03:00
Alex Vong
df730f6757
build-system: Add 'clojure-build-system'.
* guix/build-system/clojure.scm, guix/build/clojure-build-system.scm: New
files.
* guix/build/clojure-utils.scm (@*, @@*): New macros.
(%source-dirs, %test-dirs, %compile-dir, %main-class, %omit-source?,
%aot-include, %aot-exclude, %tests?, %test-include, %test-exclude,
%clojure-regex): New variables.
(package-name->jar-names, canonicalize-relative-path, find-files*,
file-sans-extension, relative-path->clojure-lib-string, find-clojure-libs,
compiled-from?, include-list\exclude-list, eval-with-clojure, create-jar):
New procedures.
* Makefile.am (MODULES): Add them.
* doc/guix.texi (Build Systems): Document 'clojure-build-system'.
2018-11-19 12:07:44 +01:00
Ludovic Courtès
e34ae75dc1
linux-initrd: Return file-like objects instead of monadic values.
This is an incompatible change visible to users via the 'initrd' field
of 'operating-system'.  However, assuming the user's 'initrd' value
tail-calls to 'raw-initrd' or 'base-initrd', the switch to non-monadic
style is invisible.

* gnu/system/linux-initrd.scm (expression->initrd): Use 'computed-file'
instead of 'gexp->derivation'.
(raw-initrd, base-initrd): Adjust docstring to mention non-monadic
return.
* gnu/system/vm.scm (expression->derivation-in-linux-vm): Adjust
accordingly.
* gnu/system.scm (operating-system-directory-base-entries)
(operating-system-initrd-file)
(operating-system-boot-parameters): Adjust accordingly.
* doc/guix.texi (operating-system Reference)
(Initial RAM Disk): Update.
2018-11-18 23:37:44 +01:00
Ludovic Courtès
bca6396749
doc: Mention that ./pre-inst-env is generated.
Suggested by swedebugia <swedebugia@riseup.net>.

* doc/contributing.texi (Running Guix Before It Is Installed): Mention
that ./pre-inst-env is generated.
2018-11-16 23:16:05 +01:00
Ludovic Courtès
54ca1a375b
doc: Recommend pool.sks-keyservers.net.
pgp.mit.edu appears to be unreliable these days.

* doc/guix.texi (KEY-SERVER): New variable.
(Binary Installation, USB Stick and DVD Installation): Use it in 'gpg
--recv-keys' example.
2018-11-16 23:02:18 +01:00
Giovanni Biscuolo
c61f36f368
doc: Fix typo in connman config.
* doc/guix.texi (Networking Services): Fix typo in connman config
"disable-vpn?" parameter documentation, semantic is inverted.

Signed-off-by: Efraim Flashner <efraim@flashner.co.il>
2018-11-15 20:11:36 +02:00
Ludovic Courtès
d3f75179e5
services: nscd: Add 'invalidate' and 'statistics' actions.
* gnu/services/base.scm (nscd-action-procedure, nscd-actions): New
procedures.
(nscd-shepherd-service): Add 'modules' and 'actions' fields.
* gnu/tests/base.scm (run-basic-test)["nscd invalidate action"]
["nscd invalidate action, wrong table"]: New tests.
* doc/guix.texi (Services): Mention 'herd doc nscd action'.
(Base Services): Document the actions.
2018-11-13 14:59:45 +01:00