Commit graph

94485 commits

Author SHA1 Message Date
Julien Lepiller
36e0e198fe
gnu: Add ocaml-spawn.
* gnu/packages/ocaml.scm (ocaml-spawn): New variable.
(ocaml4.07-spawn): Inherit from it.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2022-04-11 11:56:03 +02:00
Julien Lepiller
d59abc336d
import: opam: Factor out source import.
This also ensures a package can be imported even when it does not
specify a URL.

* guix/import/opam.scm (opam->guix-source): New procedure.
(opam->guix-package): Use it.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2022-04-11 11:55:58 +02:00
Julien Lepiller
be7338d400
import: opam: Accept tabulations.
* guix/import/opam.scm (SP, SP2): Accept tabulation as whitespace.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2022-04-11 11:55:54 +02:00
pukkamustard
d79e10b7e0
gnu: ocaml-odoc: Update to 2.2.0-alpha.
* gnu/packages/ocaml.scm (ocaml-odoc): Update to 2.2.0-alpha.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2022-04-11 11:55:47 +02:00
Ludovic Courtès
7da907f90e
reconfigure: Fix typo on 'live-service-transient?'.
Fix typo introduced in e25eca35ff.

* guix/scripts/system/reconfigure.scm (running-services): Add question
mark to 'live-service-transient?.
2022-04-11 09:27:03 +02:00
Ludovic Courtès
f429596627
shepherd: 'fork+exec-command/container' always returns a PID.
Fixes a regression introduced in
938448bf40 whereby
'fork+exec-command/container' would return #t, then used as the running
value of the 'guix-daemon' service in the installer.  Upon installation
completion, stopping the 'guix-daemon' service would fail with
wrong-type-arg because that #t would be passed to the 'stop' method in
lieu of a PID.

* gnu/build/shepherd.scm (fork+exec-command/container): Return a PID
rather than #t.
2022-04-11 00:25:33 +02:00
Ludovic Courtès
ada530acb1
shepherd: 'exec-command*' has a valid default #:directory.
Fixes a regression introduced in
938448bf40 where 'exec-command*' could
get #:directory #f, in particular when called by
'fork+exec-command/container'.

* gnu/build/shepherd.scm (exec-command*): Add default value for #:directory.
2022-04-11 00:25:33 +02:00
Ludovic Courtès
dbde386794
tests: System tests really parameterize 'current-guix-package'.
Until now, 'current-guix-package' was parameterized in the wrong
context.  Thus, 'current-guix' would end up building a variant of the
'guix' package instead of the package returned by
'channel-source->package', which is much less expensive to build.

* etc/system-tests.scm (mparameterize): New macro.
(tests-for-current-guix): Change the 'value' field of each <system-test>
record to parameterize 'current-guix-package' for good.
2022-04-11 00:25:33 +02:00
Andrew Tropin
435e1cef00
home: symlink-manager: Handle non-existing directory during cleanup.
* gnu/home/services/symlink-manager.scm (update-symlinks-script): Handle
non-existing directory during cleanup.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2022-04-11 00:25:33 +02:00
Andrew Tropin
ac8e987ce2
home: shells: Rename zsh related functions.
* gnu/home/services/shells.scm (home-zsh-service-type): Make zsh related
private functions more consistently named.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2022-04-11 00:25:32 +02:00
Efraim Flashner
72abf9b9b8
gnu: jq: Only build with valgrind on supported systems.
* gnu/packages/web.scm (jq)[native-inputs]: Only include valgrind on
systems which it supports.
2022-04-10 20:49:34 +03:00
Efraim Flashner
96a132809f
gnu: smithwaterman: Fix cross-compiling.
The 'ar' matched the 'ar' in 'aarch64-linux-gnu' to unfun consequences.

* gnu/packages/bioinformatics.scm (smithwaterman)[arguments]: More
closely match the 'ar' and 'ld' commands when substituting them.
2022-04-10 20:49:33 +03:00
Guillaume Le Vaillant
81567f751b
gnu: llvm-3: Fix build.
* gnu/packages/llvm.scm (llvm-3.9)[arguments]: Use gexp. Add
  'shared-lib-workaround' phase.

Co-authored-by: Maxime Devos <maximedevos@telenet.be>
2022-04-10 19:22:43 +02:00
Leo Famulari
2299d2c896
gnu: linux-libre 5.10: Update to 5.10.110.
* gnu/packages/linux.scm (linux-libre-5.10-version): Update to 5.10.110.
(linux-libre-5.10-pristine-source): Update hash.
2022-04-10 01:18:04 -04:00
Leo Famulari
fec46d977a
gnu: linux-libre 5.15: Update to 5.15.33.
* gnu/packages/linux.scm (linux-libre-5.15-version): Update to 5.15.33.
(linux-libre-5.15-pristine-source): Update hash.
2022-04-10 01:18:04 -04:00
Leo Famulari
3d372cc2fe
gnu: linux-libre: Update to 5.16.19.
* gnu/packages/linux.scm (linux-libre-5.16-version): Update to 5.16.19.
(linux-libre-5.16-pristine-source): Update hash.
2022-04-10 01:18:04 -04:00
Leo Famulari
002928c663
gnu: linux-libre 5.17: Update to 5.17.2.
* gnu/packages/linux.scm (linux-libre-5.17-version): Update to 5.17.2.
(linux-libre-5.17-pristine-source): Update hash.
2022-04-10 01:17:58 -04:00
Ludovic Courtès
ec6a585ee2
services: Test 'shepherd-service-upgrade' with transient services.
This is a followup to eeb8ac43c8.

* tests/services.scm ("shepherd-service-upgrade: transient service"):
New test.
2022-04-10 01:24:30 +02:00
Ludovic Courtès
e25eca35ff
services: herd: Adjust to <live-service> changes.
This is a followup to a2c759c830.

* guix/scripts/system/reconfigure.scm (running-services): Fill in the
'transient?' field of <live-service>.
* tests/services.scm ("shepherd-service-upgrade: one unchanged, one upgraded, one new")
("shepherd-service-upgrade: service depended on is not unloaded")
("shepherd-service-upgrade: obsolete services that depend on each
other"): Adjust calls to 'live-service'.
2022-04-10 01:15:13 +02:00
Michael Rohleder
d10cee7865
gnu: strawberry: Update to 1.0.3.
* gnu/packages/music.scm (strawberry): Update to 1.0.3.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2022-04-10 00:17:41 +02:00
Luis Felipe
e1c040b7b3
doc: package Reference: Mention syntax of package-description.
* doc/guix.texi (package Reference) <description>: Mention that the
string is in Texinfo syntax.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2022-04-10 00:17:41 +02:00
jgart
cec2ec4440
doc: guix: Add missing article "a".
* doc/guix.texi (Essential Home Services): Add missing article "a".

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2022-04-10 00:17:40 +02:00
itd
b0d3f42372
gnu: efivar: Fix build errors on i686-linux.
* gnu/packages/patches/efivar-211.patch: New patch.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/linux.scm (efivar)[source]<origin>: Use it.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2022-04-10 00:17:40 +02:00
Andrew Tropin
d6b9a3faa8
home: symlink-manager: Use no-follow version of file-exists?.
* gnu/home/services/symlink-manager.scm (update-symlinks-script): Use
no-follow version of file-exists?.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2022-04-10 00:17:40 +02:00
Ludovic Courtès
eeb8ac43c8
services: shepherd: Do not unload transient services.
Fixes <https://issues.guix.gnu.org/54812>.

Starting with Shepherd 0.9.0 and the use of 'make-inetd-constructor' in
commit 808b9e8504, systems might be
running transient Shepherd services such as those corresponding to SSH
connections.  Before this change, 'shepherd-service-upgrade' would have
those transient services in the list of services to unload; concretely,
that would lead all SSH connections to be closed upon 'guix system
reconfigure'.

* gnu/services/shepherd.scm (shepherd-service-upgrade): Remove transient
services to TO-UNLOAD.
2022-04-10 00:17:40 +02:00
Ludovic Courtès
a2c759c830
services: herd: Report whether a service is transient.
* gnu/services/herd.scm (<live-service>)[transient?]: New field.
(current-services): Check the value of 'transient?'.  Call
'resolve-transients'.
(resolve-transients): New procedure.
2022-04-10 00:17:40 +02:00
Marius Bakke
975966ba09
gnu: Zabbix: Update to 6.0.3.
* gnu/packages/monitoring.scm (zabbix-agentd): Update to 6.0.3.
2022-04-09 16:09:50 +02:00
Marius Bakke
aa5716703f
gnu: ganeti: Update to 3.0.2.
* gnu/packages/patches/ganeti-haskell-compat.patch,
gnu/packages/patches/ganeti-sphinx-compat.patch: Delete files.
* gnu/local.mk (dist_patch_DATA): Adjust accordingly.
* gnu/packages/virtualization.scm (ganeti): Update to 3.0.2.
[source](patches): Remove obsolete.
[arguments]: Remove obsolete phases.  Disable one more test.
2022-04-09 14:27:43 +02:00
Marius Bakke
dce0249f18
gnu: ganeti: Fix test failure with PyYAML 6.0.
This fixes a regression that was introduced in
27720d0fe1.

* gnu/packages/patches/ganeti-pyyaml-compat.patch: New file.
* gnu/local.mk (dist_patch_DATA): Adjust accordingly.
* gnu/packages/virtualization.scm (ganeti)[source](patches): Add it.
2022-04-09 14:27:43 +02:00
Vagrant Cascadian
47b6451eb5
gnu: libxmlb: Update to 0.3.8.
* gnu/packages/xlm.scm (libxmlb): Update to 0.3.8.
2022-04-08 20:34:49 -07:00
Vagrant Cascadian
a720c900cc
gnu: reprotest: Update to 0.7.20.
* gnu/packages/diffoscope.scm (reprotest): Update to 0.7.20.
2022-04-08 15:32:34 -07:00
Vagrant Cascadian
55b5ad2eeb
gnu: diffoscope: Update to 209.
* gnu/packages/diffoscope.scm (diffoscope): Update to 209.
2022-04-08 15:32:31 -07:00
Ludovic Courtès
0996d48d0e
services: rottlog: Keep fewer "guix-daemon.log" files.
* gnu/services/admin.scm (%default-rotations): For "guix-daemon.log",
add 'options' field.
2022-04-09 00:30:40 +02:00
Ludovic Courtès
090ebc5ff9
guix describe: Add missing import.
Fixes a regression introduced in
d4e858763c.

* guix/scripts/describe.scm: Add missing autoload.
2022-04-09 00:29:24 +02:00
Ludovic Courtès
13307c198b
diagnostics: Turn diagnostic locations into hyperlinks.
* guix/diagnostics.scm (print-diagnostic-prefix): Use
'location->hyperlink' when 'supports-hyperlinks?' returns true.
2022-04-08 23:59:48 +02:00
Ludovic Courtès
3da62bf5aa
ui: Move 'location->hyperlink' to (guix diagnostics).
* guix/ui.scm (location->hyperlink): Move to...
* guix/diagnostics.scm: ... here.
* guix/scripts/system/search.scm: Adjust imports accordingly.
2022-04-08 23:59:48 +02:00
Ludovic Courtès
d4e858763c
ui: Move hyperlink facilities to (guix colors).
* guix/ui.scm (supports-hyperlinks?, file-hyperlink, hyperlink): Move to...
* guix/colors.scm: ... here.
* guix/scripts/home.scm, guix/scripts/system.scm,
guix/scripts/system/search.scm: Adjust imports accordingly.
2022-04-08 23:59:48 +02:00
Olivier Dion
a62873af7c
gnu: emacs-geiser: Add dependency on Project.
* gnu/packages/emacs-xyz.scm (emacs-geiser)[propagated-inputs]: Add
emacs-project.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2022-04-08 23:59:48 +02:00
Brian Kubisiak
1d0e57fab8
gnu: lsof: Fix invalid G-Expression.
Cross-compiling lsof is failing with an "invalid G-expression input"
error. Fix this by using a quoted list.

* gnu/packages/lsof.scm (lsof): Fix invalid G-Expression.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2022-04-08 23:59:48 +02:00
Ludovic Courtès
b38e053513
doc: Build an empty index if the manual is missing.
That way, the "sk" index for 'guix-manual' is empty, because
'guix-manual' lacks an "sk" translation.

* doc/build.scm (html-manual-identifier-index)[build](html-files):
Gracefully handle 'scandir' returning #f.
2022-04-08 23:59:48 +02:00
Ludovic Courtès
0d0e2165ea
doc: Allow different translations for 'guix-cookbook' and 'guix-manual'.
Previously, 'guix-manual-text-domain' could be passed the cookbook
language list as its second argument.  Thus, it started failing when the
set of cookbook languages was no longer a subset of the manual
languages, starting with commit
93bfd4d9c7, which removed "sk" from
'guix-manual' but kept it for 'guix-cookbook'.

* doc/build.scm (%manual-languages, %cookbook-languages): New
variables.
(%languages): Use them.
(guix-manual-text-domain): Give LANGUAGES a valid default value.
(localization-helper-module): Remove optional argument to
'guix-manual-text-domain'.
2022-04-08 22:56:02 +02:00
Andrew Tropin
20645d8467
home: Add home-xdg-data-files-service-type.
* gnu/home/services.scm (home-xdg-data-files-service-type): New variable.
* gnu/home/services/symlink-manager.scm (update-symlinks-script): Add a proper
handling for XDG_DATA_HOME value.
* gnu/home/services/xdg.scm (home-xdg-mime-applications-service-type): Use
home-xdg-data-files service.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2022-04-08 20:13:48 +02:00
Andrew Tropin
5832d9fb60
home: symlink-manager: Remove appending of leading dot.
* gnu/home/services.scm (xdg-configuration-files-directory): Add leading dot.
* gnu/home/services.scm (xdg-configuration-files-service-type): Change name.
* gnu/home/services/shells.scm (add-shell-profile-file,
zsh-get-configuration-files, add-zsh-dot-configuration,
add-zsh-xdg-configuration, add-bash-configuration): Add leading dots.
* gnu/home/services/symlink-manager.scm (update-symlinks-script): Remove
leading dot.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2022-04-08 20:13:45 +02:00
Ludovic Courtès
868da34d54
doc: Fix cookbook URLs in htmlxref.cnf.
Reported by Greg Hogan <code@greghogan.com>.

* doc/htmlxref.cnf (GUIX_ROOT): New variable.
(GUIX, GUIX_COOKBOOK): Adjust.
2022-04-08 19:59:25 +02:00
Ludovic Courtès
6e747c3d50
doc: cookbook: Fix cross-reference to SICP.
Reported by Greg Hogan <code@greghogan.com>.

* doc/guix-cookbook.texi (A Scheme Crash Course): Fix xref to SICP.
2022-04-08 19:55:42 +02:00
Ludovic Courtès
63a11f92d1
doc: cookbook: Fix cross-reference to the manual.
Reported by Greg Hogan <code@greghogan.com>.

* doc/guix-cookbook.texi (Extended example): Fix node name in xref to
"package Reference".
2022-04-08 19:55:37 +02:00
Ludovic Courtès
f239b9d788
tests: Add "encrypted-home-os" installation test.
* gnu/tests/install.scm (%encrypted-home-os)
(%encrypted-home-installation-script)
(enter-luks-passphrase-for-home)
(%test-encrypted-home-os): New variables.
2022-04-08 18:14:35 +02:00
Ludovic Courtès
dcb0e54a4f
file-systems: Invoke fsck tools with 'system*/tty'.
This ensures those programs, if invoked by shepherd (where standard
input is /dev/null), can still interact with the user if needed.

* gnu/build/file-systems.scm (check-ext2-file-system)
(check-bcachefs-file-system, check-btrfs-file-system):
(check-fat-file-system, check-jfs-file-system):
(check-f2fs-file-system, check-ntfs-file-system):
(check-xfs-file-system): Use 'system*/tty' instead of 'system*'.
2022-04-08 18:14:35 +02:00
Ludovic Courtès
931f13840b
mapped-devices: Ensure 'cryptsetup open' gets a tty.
Fixes <https://issues.guix.gnu.org/54770>.
Regression introduced in 400c9ed3d7.

Previously, for an encrypted /home (say), "cryptsetup open" would be
invoked by shepherd, with /dev/null as its standard input.  It would
thus run in non-interactive mode and, instead of asking for a
passphrase, fail with:

  Nothing to read on input.

This change ensures it runs in interactive mode.

* gnu/build/file-systems.scm (system*/console, system*/tty): New
procedures.
* gnu/system/mapped-devices.scm (open-luks-device): Use 'system*/tty'
instead of 'system*'.
2022-04-08 18:14:35 +02:00
Ludovic Courtès
df473496ed
system: hurd: Fix bogus 'initrd-modules' field.
Reported by kitzman on #guix.

* gnu/system/hurd.scm (%hurd-default-operating-system)[initrd-modules]:
Set to the empty list.
2022-04-08 18:14:35 +02:00