Fixes <https://bugs.gnu.org/36876>.
Reported by Jesse Gibbons <jgibbons2357@gmail.com>.
Previously 'guix system delete-generations' or 'switch-generation' would
lose the extra bootloader menu entries specified in the current system's
configuration. This fixes that.
* guix/scripts/system.scm (reinstall-bootloader): Turn PARAMS into a
single <boot-parameters>. Adjust ENTRIES to include extra menu entries
specified in PARAMS.
This allows us to keep track of the extra menu entries specified in the
OS configuration.
* gnu/system.scm (<boot-parameters>)[bootloader-menu-entries]: New field.
(read-boot-parameters): Initialize it.
(operating-system-boot-parameters): Likewise.
(operating-system-boot-parameters-file): Serialize it.
* gnu/bootloader.scm (menu-entry->sexp, sexp->menu-entry): New
procedures.
* guix/lint.scm (report-tabulations, report-trailing-white-space)
(report-long-line, report-lone-parentheses): Return #f instead
of *unspecified* when there are no warnings.
(report-formatting-issues): Use 'filter-map' instead of 'map' + 'filter'.
* gnu/package/rednotebook.scm: New file.
* gnu/local.mk: Add it.
* gnu/packages/rednotebook.scm (rednotebook): New variable.
Signed-off-by: Nicolas Goaziou <mail@nicolasgoaziou.fr>
* gnu/packages/web-browsers.scm (sbcl-next): Deprecate for next.
* gnu/packages/web-browsers.scm (next): Update to 1.3.0.
[arguments]: Add phase to fix version number.
[inputs]: Update dependencies for 1.3.0.
* gnu/packages/web-browsers.scm (sbcl-next-download-manager): New variable.
It's a Common Lisp system dependency for `next', which is why we don't export
the package.
* gnu/packages/web-browsers.scm (next-gtk-webkit): Update to 1.3.0.
We hide the package because it is not usable on its own, it's a necessary
backend for the `next' package.
* guix/import/cran.scm (vcs-file?): New procedure.
(download): Support downloading from git.
(fetch-description): Add a clause for the 'git repository type.
(files-match-pattern?): New procedure.
(tarball-files-match-pattern?): Implement in terms of FILES-MATCH-PATTERN?.
(directory-needs-fortran?, directory-needs-zlib?,
directory-needs-pkg-config?): New procedures.
(needs-fortran?, needs-zlib?, needs-pkg-config?): Rename these procedures...
(tarball-needs-fortran?, tarball-needs-zlib?, tarball-needs-pkg-config?):
...to this, and use them.
(file-hash): New procedure.
(description->package): Handle the 'git repository type.
* guix/import/utils.scm (package->definition): Handle package expression
inside of a let.
* guix/scripts/import.scm (guix-import): Handle let expressions.
* doc/guix.texi (Invoking guix import): Document it.