publish: Write hashes in nix-base32 format.
* guix/scripts/publish.scm (narinfo-string): Use
'bytevector->nix-base32-string', not 'bytevector->base32-string'.
syscalls: Struct deserializer can now return arbitrary objects.
* guix/build/syscalls.scm (read-types): Add RETURN and VALUES parameters.
(define-c-struct): Add WRAP-FIELDS parameter and pass it to 'read-types'.
(sockaddr-in, sockaddr-in6): Add first argument that uses
'make-socket-address'.
(read-socket-address): Remove 'match' on the result of 'read-sockaddr-in'
and 'read-sockaddr-in6'.
download: Remove spurious warning about 'https_proxy'.
* guix/build/download.scm (open-connection-for-uri)[with-https-proxy]: Warn
about 'https_proxy' only when 'getenv' returns a non-empty string.
file-systems: Subsystem cgroups now depend on /sys/fs/cgroup.
* gnu/system/file-systems.scm (%control-groups): Define 'parent' variable.
Initialize the 'dependencies' field for all the subsystems.
file-systems: Add a 'dependencies' field to <file-system>.
* gnu/system/file-systems.scm (<file-system>)[dependencies]: New field.
* gnu/system.scm (other-file-system-services)[requirements]: Honor
'file-system-dependencies'.
* doc/guix.texi (File Systems): Document it.
gnu: Add Linux-Libre 4.0.8.
* gnu/packages/linux.scm (linux-libre-4.0): New variable.
system: Use the CRDA udev rules.
* gnu/services/base.scm (%base-services): Add CRDA to the #:rules of
'udev-service'.
* gnu/system/install.scm (installation-services): Likewise.
gnu: Add CRDA.
* gnu/packages/linux.scm (crda): New variable.
gnu: Add wireless-regdb.
* gnu/packages/linux.scm (wireless-regdb): New variable.
licenses: Add Fontana's copyleft-next.
* guix/licenses.scm (copyleft-next): New variable.
gnu: Add eog.
* gnu/packages/gnome.scm (eog): New variable.
gnu: Add exempi.
* gnu/packages/freedesktop.scm (exempi): New variable.
gnu: duplicity: Update to 0.6.26.
* gnu/packages/backup.scm (duplicity): Update to 0.6.26.
gnu: Add emacs-pdf-tools.
* gnu/packages/emacs.scm (emacs-pdf-tools): New variable.
Co-authored-by: Alex Kost <alezost@gmail.com>
system: Add 'kernel-arguments' field.
* gnu/system.scm (<operating-system>)[kernel-arguments]: New field.
(operating-system-grub.cfg): Honor it.
(operating-system-parameters-file): Add 'kernel-arguments' to the parameters
file.
* guix/scripts/system.scm (previous-grub-entries)[system->grub-entry]: Read
the 'kernel-arguments' field of the parameters file, when available.
* gnu/system/vm.scm (system-qemu-image/shared-store-script):
Use (operating-system-kernel-arguments os) in '-append'.
* doc/guix.texi (operating-system Reference): Document it.
system: Fix typo in 'PS1' in skeleton '.bashrc'.
* gnu/system/shadow.scm (default-skeletons): Move misplaced backslash.
gnu: Add gnome-common.
* gnu/packages/gnome.scm (gnome-common): New variable.
gnu: Add lxappearance.
* gnu/packages/lxde.scm: New file.
* gnu-system.am (GNU_SYSTEM_MODULES): Add it.
install: Reset the mtimes of all the files in the binary tarball.
* gnu/system/install.scm (self-contained-tarball): Pass "--mtime=@0". The
only files whose mtime was not already were those in /var/guix and
/gnu/store/.links.
file-systems: 'uuid' raises a syntax error for invalid UUIDs.
* gnu/system/file-systems.scm (uuid): Call 'syntax-violation' when
'string->uuid' returns #f.
* tests/file-systems.scm ("uuid, syntax error"): New test.