Commit Graph

80477 Commits

Author SHA1 Message Date
Maxim Cournoyer
82daab4281
pack: Add support for the deb format.
* .dir-locals.el (scheme-mode)[gexp->derivation]: Define indentation rule.
* guix/scripts/pack.scm (debian-archive): New procedure.
(%formats): Register the new deb format.
(show-formats): Add it to the usage string.
* tests/pack.scm (%ar-bootstrap): New variable.
(deb archive with symlinks): New test.
* doc/guix.texi (Invoking guix pack): Document it.
* NEWS: Add news entry.
2021-06-29 14:53:21 -04:00
Maxim Cournoyer
8108c266dc
tests: pack: Fix compressor extension.
* tests/pack.scm (%gzip-compressor): Add the missing leading period to the
gzip compressor file extension.
2021-06-29 14:53:21 -04:00
Maxim Cournoyer
4f3bdc8f21
pack: Prevent duplicate files in tar archives.
Tar translate duplicate files in the archive into hard links.  These can cause
problems, as not every tool support them; for example dpkg doesn't.

* gnu/system/file-systems.scm (reduce-directories): New procedure.
(file-prefix?): Lift the restriction on file prefix.  The procedure can be
useful for comparing relative file names.  Adjust doc.
(file-name-depth): New procedure, extracted from ...
(btrfs-store-subvolume-file-name): ... here.
* guix/scripts/pack.scm (self-contained-tarball/builder): Use
reduce-directories.
* tests/file-systems.scm ("reduce-directories"): New test.
2021-06-29 14:53:21 -04:00
Maxim Cournoyer
6b0e55cde9
pack: Improve naming of the packs store file names.
Instead of just naming them by their pack type, add information from the
package(s) they contain to make it easier to differentiate them.

* guix/scripts/pack.scm (define-with-source): New macro.
(manifest->friendly-name): Extract procedure from ...
(docker-image): ... here, now defined via the above macro.  Adjust REPOSITORY
argument value accordingly.
(guix-pack): Derive NAME using MANIFEST->FRIENDLY-NAME.
2021-06-29 14:53:21 -04:00
Maxim Cournoyer
f72aa3834b
pack: Fix typo.
* guix/scripts/pack.scm (self-contained-tarball/builder): Fix typo.
2021-06-29 14:53:21 -04:00
Maxim Cournoyer
7708c0b5e3
pack: Factorize base tar options.
* guix/docker.scm (%tar-determinism-options): Move to a new module and rename
to `tar-base-options'.  Adjust references accordingly.
* guix/build/pack.scm: New file.
* Makefile.am (MODULES): Register it.
* guix/scripts/pack.scm (self-contained-tarball/builder): Use it.
2021-06-29 14:53:21 -04:00
Maxim Cournoyer
91e8372838
pack: Extract builder code from self-contained-tarball.
This is made to allow reusing it for the debian-archive pack format, added in
a subsequent commit.

* guix/scripts/pack.scm (self-contained-tarball/builder): New procedure,
containing the build code extracted from self-contained-tarball.
(self-contained-tarball): Use the above procedure.
2021-06-29 14:53:20 -04:00
Mathieu Othacehe
e2ff126588
installer: Fix crash when deleting a free space partition.
Fixes: <https://issues.guix.gnu.org/49126>.

* gnu/installer/newt/partition.scm (run-disk-page): Fix the return value when
removing a free space partition.
2021-06-29 20:44:23 +02:00
Maxime Devos
5ef96ecaae
weather: Handle zero requested store items gracefully.
This can happen if the weather information of a package
is requested for an unsupported system.  For example,
try "guix weather icecat --system=aarch64-linux".

* guix/scripts/weather.scm
  (report-server-coverage): Do not divide by zero when zero
  store items are requested from a server.

Fixes: <https://issues.guix.gnu.org/49263>
Reported-By: Jack Hill <jackhill@jackhill.us>
Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
2021-06-29 20:11:56 +02:00
luhui
fda0959a14
services: kmscon: Add keyboard-layout fields.
* gnu/services/base.scm (<kmscon-configuration>): Add keyboard-layout fields.
* doc/guix.texi (Base Services): Document them.

Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
2021-06-29 19:01:25 +02:00
Thorsten Wilms
5ed105a8bb
gnu: Update caps-plugins-lv2.
* gnu/packages/audio.scm (caps-plugins-lv2): Update, since pull-request
has been merged, aside of other updates.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2021-06-29 12:37:33 +02:00
Xinglu Chen
2ad896751c
services: configuration: Allow specifying prefix for serializer names.
Sometimes two configurations might have the same types for their field values,
but the values might be serialized in two completely different
ways (e.g. because the two programs have different configuration languages).

An example of this would be the ‘serialize-boolean’ procedure in (gnu services
mail) and (gnu services getmail).  They both serialize a boolean value, but
because the Dovecot’s configuration language has a different syntax to the
configuration language for Getmail, two different procedures have to be
defined.

One way to workaround this would be to specify custom serializers for many
fields in order to separate the serialization of the values that have the same
type but serialize in different ways.  This could get very tedious, especially
if there are many configurations in the same module.

Another way would be to move one of the configurations to its own module, like
what was done with (gnu services getmail).  However, this would mean that
there would be multiple modules containing configurations for related
programs, e.g. we have (gnu services mail) and (gnu services getmail), it
doesn’t make much sense to keep the Getmail configuration in its own module.

This patch will allow one to write something like this:

  (define-configuration foo-configuration
    (bar
      (string "bob")
      "Option bar.")
    (prefix bar-))

and the value of the ‘bar’ field would be serialized using a procedure named
‘bar-serialize-string’ instead of just ‘serialize-string’.

* gnu/services/configuration.scm (define-maybe-helper): Accept ‘prefix’
argument for using serializer with custom prefix.
(define-maybe): Pattern match on ‘prefix’ literal.
(define-configuration-helper): Accept ‘prefix’ argument for using serializer
with custom prefix.
(define-configuration): Pattern match on ‘prefix’ literal.
* tests/services/configuration.scm ("serialize-configuration with prefix"):
New test.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2021-06-29 12:37:33 +02:00
zimoun
5d47f30e93
gnu: python2-wsgiproxy2: Remove package.
* gnu/packages/python-web.scm (python2-wsgiproxy2): Remove variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2021-06-29 12:37:33 +02:00
zimoun
1f2ea75aed
gnu: python2-sqlparse: Remove package.
* gnu/packages/databases.scm (python2-sqlparse): Remove variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2021-06-29 12:37:33 +02:00
zimoun
87b872d5c5
gnu: python2-scripttest: Remove package.
* gnu/packages/check.scm (python2-scripttest): Remove variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2021-06-29 12:37:32 +02:00
zimoun
24c7e0497d
gnu: python2-plotly: Remove package.
* gnu/packages/graph.scm (python2-plotly): Remove variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2021-06-29 12:37:32 +02:00
zimoun
846b1056e8
gnu: python2-rpython: Remove package.
* gnu/packages/python-xyz.scm (python2-rpython): Remove variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2021-06-29 12:37:32 +02:00
zimoun
81fa44f431
gnu: python2-roca-detect: Remove package.
* gnu/packages/python-crypto.scm (python2-roca-detect): Remove variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2021-06-29 12:37:32 +02:00
zimoun
61e88d28f4
gnu: python2-mapnik: Remove package.
* gnu/packages/geo.scm (python2-mapnik): Remove variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2021-06-29 12:37:32 +02:00
zimoun
d284e35196
gnu: python2-libadalang: Remove package.
* gnu/packages/ada.scm (python2-libadalang): Remove variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2021-06-29 12:37:31 +02:00
zimoun
3c1e1ec107
gnu: python2-larch: Remove package.
* gnu/packages/python-xyz.scm (python2-larch): Remove variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2021-06-29 12:37:31 +02:00
Ludovic Courtès
94bae22204
gnu: scotch: Update to 6.1.1.
* gnu/packages/maths.scm (scotch): Update to 6.1.1.
[native-inputs]: Add GFORTRAN.
[arguments]: Set 'FC' in 'Makefile.in'.
(scotch32)[arguments]: Likewise.
(scotch-shared)[arguments]: Likewise.
2021-06-29 12:37:31 +02:00
Ricardo Wurmus
4aa90cb4b3
gnu: Add r-cistopic-next.
* gnu/packages/bioconductor.scm (r-cistopic-next): New variable.
2021-06-29 12:28:44 +02:00
Ricardo Wurmus
05238ae30e
gnu: Add r-text2vec.
* gnu/packages/cran.scm (r-text2vec): New variable.
2021-06-29 12:28:44 +02:00
Ricardo Wurmus
1e9f4a86a7
gnu: Add r-rsparse.
* gnu/packages/cran.scm (r-rsparse): New variable.
2021-06-29 12:28:44 +02:00
Ricardo Wurmus
3ad0ec5fa7
gnu: Add r-float.
* gnu/packages/cran.scm (r-float): New variable.
2021-06-29 12:28:44 +02:00
Ricardo Wurmus
ae00ea94aa
gnu: Add r-mlapi.
* gnu/packages/cran.scm (r-mlapi): New variable.
2021-06-29 12:28:44 +02:00
David Dashyan
1be97fa9ce
gnu: Add pcl.
* gnu/packages/c.scm (pcl): New variable.

Signed-off-by: Efraim Flashner <efraim@flashner.co.il>
2021-06-29 10:15:49 +03:00
Giacomo Leidi
08110ecc2f
gnu: hunspell-dictionary: Update to 7.1.4.2.
* gnu/packages/hunspell.scm (hunspell-dict-it-it): Update to 7.1.4.2.

Signed-off-by: Efraim Flashner <efraim@flashner.co.il>
2021-06-29 09:35:34 +03:00
Tobias Geerinckx-Rice
87e1c2fd7e
Really revert commit a8b705252bdcb642999258859ada1c2f43706092.
I give up.
2021-06-29 06:44:12 +02:00
Tobias Geerinckx-Rice
7bd59795f1
gnu: egl-wayland: Update to 1.1.7.
* gnu/packages/graphics.scm (egl-wayland): Update to 1.1.7.
2021-06-29 06:25:56 +02:00
Tobias Geerinckx-Rice
ac5dd01c2e
gnu: remind: Update to 3.3.7.
* gnu/packages/calendar.scm (remind): Update to 3.3.7.
2021-06-29 06:25:56 +02:00
Tobias Geerinckx-Rice
5a5e39e69c
gnu: libavif: Update to 0.9.2.
* gnu/packages/image.scm (libavif): Update to 0.9.2.
2021-06-29 06:25:56 +02:00
Tobias Geerinckx-Rice
39492f8cd7
gnu: erofs-utils: Edit description.
* gnu/packages/linux.scm (erofs-utils)[synopsis]: Add missing article.
[description]: Mark up.
2021-06-29 06:25:49 +02:00
Tobias Geerinckx-Rice
fa50c9b072
gnu: erofs-utils: Update to 1.3.
* gnu/packages/linux.scm (erofs-utils): Update to 1.3.
2021-06-29 05:18:51 +02:00
Tobias Geerinckx-Rice
16c0380871
gnu: powerstat: Update to 0.02.26.
* gnu/packages/linux.scm (powerstat): Update to 0.02.26.
[arguments]: Remove obsolete 'respect-$prefix phase.
2021-06-29 05:18:51 +02:00
Tobias Geerinckx-Rice
1ef68130a3
gnu: man-pages: Update to 5.12.
* gnu/packages/man.scm (man-pages): Update to 5.12.
[arguments]: Follow switch to standard ‘mandir’ over ‘MANDIR’.  \o/
2021-06-29 05:18:51 +02:00
Tobias Geerinckx-Rice
5b9a769b23
gnu: photoflare: Update to 1.6.9.
* gnu/packages/photo.scm (photoflare): Update to 1.6.9.
2021-06-29 05:18:50 +02:00
Tobias Geerinckx-Rice
13d938bead
gnu: cgal: Remove duplicate licence directory.
* gnu/packages/graphics.scm (cgal)[arguments]: Set CGAL_INSTALL_DOC_DIR
to match Guix's own default in #:configure-flags.
2021-06-29 05:18:50 +02:00
Tobias Geerinckx-Rice
32037d8f34
gnu: cgal: Update to 5.2.2.
* gnu/packages/graphics.scm (cgal): Update to 5.2.2.
2021-06-29 05:18:50 +02:00
Tobias Geerinckx-Rice
7e435f6c23
gnu: gnuradio: Update to 3.9.2.0.
* gnu/packages/radio.scm (gnuradio): Update to 3.9.2.0.
2021-06-29 01:52:39 +02:00
Tobias Geerinckx-Rice
87c09ae73f
gnu: gnuradio: Build from Git sources.
* gnu/packages/radio.scm (gnuradio)[source]: Use GIT-FETCH and
GIT-FILE-NAME.
[arguments]: Add a new 'make-source-writable phase.
2021-06-29 01:52:39 +02:00
Tobias Geerinckx-Rice
54f0468fb5
Revert parts of "gnu: Add i7z."
This reverts parts of commit a8b705252bdcb642999258859ada1c2f43706092,
because it's apparently revert things day, and also I'm an idiot
2021-06-29 01:14:31 +02:00
Tobias Geerinckx-Rice
98a85c78af
gnu: libass: Update to 0.15.1.
* gnu/packages/video.scm (libass): Update to 0.15.1.
2021-06-29 01:08:18 +02:00
Tobias Geerinckx-Rice
624d477bc0
gnu: editorconfig-core-c: Update to 0.12.5.
* gnu/packages/text-editors.scm (editorconfig-core-c): Update to 0.12.5.
2021-06-29 01:08:17 +02:00
Tobias Geerinckx-Rice
10b5a201ba
gnu: librem-ec-acpi-linux-module: Fix licence.
* gnu/packages/linux.scm (librem-ec-acpi-linux-module)[license]: Remove plus.
2021-06-29 01:08:17 +02:00
Tobias Geerinckx-Rice
a8b705252b
gnu: Add i7z.
* gnu/packages/hardware.scm (i7z): New public variable.
2021-06-29 01:08:17 +02:00
Ludovic Courtès
05528dcd48
Revert "guix build: Autoload (gnu packages)."
This reverts commit fd62b4cf88578ebd8f42ccda94831a254425a329, which
would lead 'GUIX_PACKAGE_PATH' to be ignored for instance when using
'guix build -f file.scm', as shown by 'tests/guix-build.sh'.
2021-06-29 00:10:54 +02:00
Ludovic Courtès
fd62b4cf88
guix build: Autoload (gnu packages).
* guix/scripts/build.scm: Autoload (gnu packages).
2021-06-29 00:00:14 +02:00
Ludovic Courtès
f386a993ef
pull: Use SRFI-71 instead of SRFI-11.
* guix/scripts/pull.scm (display-new/upgraded-packages): Use SRFI-71 'let'.
2021-06-29 00:00:14 +02:00