aboutsummaryrefslogtreecommitdiff
ModeNameSize
-rw-r--r--.dir-locals.el10441logplainabout
-rw-r--r--.editorconfig311logplainabout
-rw-r--r--.gitattributes73logplainabout
-rw-r--r--.gitignore2724logplainabout
-rw-r--r--.guix-authorizations4793logplainabout
-rw-r--r--.guix-channel182logplainabout
-rw-r--r--.mailmap4976logplainabout
d---------.mumi34logplain
-rw-r--r--.patman279logplainabout
-rw-r--r--AUTHORS472logplainabout
-rw-r--r--CODE-OF-CONDUCT5321logplainabout
-rw-r--r--COPYING35147logplainabout
-rw-r--r--ChangeLog163logplainabout
-rw-r--r--HACKING748logplainabout
-rw-r--r--Makefile.am41725logplainabout
-rw-r--r--NEWS382196logplainabout
-rw-r--r--README4885logplainabout
-rw-r--r--ROADMAP3257logplainabout
-rw-r--r--THANKS2388logplainabout
-rw-r--r--TODO4360logplainabout
-rwxr-xr-xbootstrap844logplainabout
d---------build-aux688logplain
-rw-r--r--config-daemon.ac4406logplainabout
-rw-r--r--configure.ac8771logplainabout
d---------doc504logplain
d---------etc1204logplain
-rw-r--r--gnu.scm5289logplainabout
d---------gnu807logplain
-rw-r--r--guix.scm1452logplainabout
d---------guix3508logplain
d---------m435logplain
d---------nix282logplain
d---------po96logplain
d---------scripts35logplain
d---------tests4957logplain
e summary='file diffstat' width='100%'> -rw-r--r--gnu/installer/services.scm6
-rw-r--r--gnu/installer/steps.scm2
-rw-r--r--gnu/local.mk40
-rw-r--r--gnu/machine/ssh.scm3
-rw-r--r--gnu/packages/abduco.scm3
-rw-r--r--gnu/packages/accessibility.scm5
-rw-r--r--gnu/packages/acl.scm3
-rw-r--r--gnu/packages/admin.scm140
-rw-r--r--gnu/packages/algebra.scm35
-rw-r--r--gnu/packages/antivirus.scm4
-rw-r--r--gnu/packages/aspell.scm51
-rw-r--r--gnu/packages/astronomy.scm6
-rw-r--r--gnu/packages/audio.scm129
-rw-r--r--gnu/packages/aux-files/guile-launcher.c46
-rw-r--r--gnu/packages/aux-files/linux-libre/4.19-arm.conf3
-rw-r--r--gnu/packages/aux-files/linux-libre/4.19-arm64.conf3
-rw-r--r--gnu/packages/aux-files/linux-libre/4.19-i686.conf3
-rw-r--r--gnu/packages/aux-files/linux-libre/4.19-x86_64.conf3
-rw-r--r--gnu/packages/aux-files/linux-libre/5.4-arm.conf3
-rw-r--r--gnu/packages/aux-files/linux-libre/5.4-arm64.conf3
-rw-r--r--gnu/packages/aux-files/linux-libre/5.4-i686.conf3
-rw-r--r--gnu/packages/aux-files/linux-libre/5.4-x86_64.conf3
-rw-r--r--gnu/packages/aux-files/linux-libre/5.8-arm.conf3
-rw-r--r--gnu/packages/aux-files/linux-libre/5.8-arm64.conf3
-rw-r--r--gnu/packages/aux-files/linux-libre/5.8-i686.conf3
-rw-r--r--gnu/packages/aux-files/linux-libre/5.8-x86_64.conf3
-rw-r--r--gnu/packages/avahi.scm2
-rw-r--r--gnu/packages/axoloti.scm4
-rw-r--r--gnu/packages/backup.scm10
-rw-r--r--gnu/packages/base.scm8
-rw-r--r--gnu/packages/benchmark.scm4
-rw-r--r--gnu/packages/bioconductor.scm532
-rw-r--r--gnu/packages/bioinformatics.scm369
-rw-r--r--gnu/packages/boost.scm12
-rw-r--r--gnu/packages/bootloaders.scm4
-rw-r--r--gnu/packages/build-tools.scm6
-rw-r--r--gnu/packages/c.scm61
-rw-r--r--gnu/packages/calendar.scm55
-rw-r--r--gnu/packages/ccache.scm4
-rw-r--r--gnu/packages/cdrom.scm19
-rw-r--r--gnu/packages/certs.scm4
-rw-r--r--gnu/packages/check.scm34
-rw-r--r--gnu/packages/chicken.scm2
-rw-r--r--gnu/packages/chromium.scm192
-rw-r--r--gnu/packages/ci.scm31
-rw-r--r--gnu/packages/cluster.scm4
-rw-r--r--gnu/packages/code.scm95
-rw-r--r--gnu/packages/commencement.scm12
-rw-r--r--gnu/packages/compression.scm36
-rw-r--r--gnu/packages/conky.scm2
-rw-r--r--gnu/packages/cpp.scm85
-rw-r--r--gnu/packages/cran.scm507
-rw-r--r--gnu/packages/crates-graphics.scm2374
-rw-r--r--gnu/packages/crates-gtk.scm667
-rw-r--r--gnu/packages/crates-io.scm9222
-rw-r--r--gnu/packages/crypto.scm8
-rw-r--r--gnu/packages/cryptsetup.scm6
-rw-r--r--gnu/packages/cups.scm56
-rw-r--r--gnu/packages/databases.scm317
-rw-r--r--gnu/packages/datastructures.scm12
-rw-r--r--gnu/packages/debug.scm74
-rw-r--r--gnu/packages/dico.scm6
-rw-r--r--gnu/packages/dictionaries.scm4
-rw-r--r--gnu/packages/diffoscope.scm2
-rw-r--r--gnu/packages/disk.scm50
-rw-r--r--gnu/packages/django.scm840
-rw-r--r--gnu/packages/dns.scm147
-rw-r--r--gnu/packages/docker.scm87
-rw-r--r--gnu/packages/documentation.scm2
-rw-r--r--gnu/packages/easyrpg.scm4
-rw-r--r--gnu/packages/ebook.scm154
-rw-r--r--gnu/packages/education.scm44
-rw-r--r--gnu/packages/electronics.scm2
-rw-r--r--gnu/packages/elf.scm5
-rw-r--r--gnu/packages/elixir.scm6
-rw-r--r--gnu/packages/emacs-xyz.scm743
-rw-r--r--gnu/packages/emacs.scm42
-rw-r--r--gnu/packages/emulators.scm34
-rw-r--r--gnu/packages/engineering.scm32
-rw-r--r--gnu/packages/enlightenment.scm35
-rw-r--r--gnu/packages/entr.scm35
-rw-r--r--gnu/packages/fcitx.scm5
-rw-r--r--gnu/packages/file-systems.scm66
-rw-r--r--gnu/packages/finance.scm189
-rw-r--r--gnu/packages/fonts.scm39
-rw-r--r--gnu/packages/fontutils.scm16
-rw-r--r--gnu/packages/fpga.scm4
-rw-r--r--gnu/packages/freedesktop.scm98
-rw-r--r--gnu/packages/ftp.scm18
-rw-r--r--gnu/packages/game-development.scm42
-rw-r--r--gnu/packages/games.scm202
-rw-r--r--gnu/packages/gdb.scm67
-rw-r--r--gnu/packages/geo.scm20
-rw-r--r--gnu/packages/gettext.scm8
-rw-r--r--gnu/packages/glib.scm21
-rw-r--r--gnu/packages/gnome-xyz.scm2
-rw-r--r--gnu/packages/gnome.scm647
-rw-r--r--gnu/packages/gnu-pw-mgr.scm12
-rw-r--r--gnu/packages/gnucash.scm2
-rw-r--r--gnu/packages/gnuzilla.scm366
-rw-r--r--gnu/packages/golang.scm195
-rw-r--r--gnu/packages/gps.scm8
-rw-r--r--gnu/packages/graph.scm28
-rw-r--r--gnu/packages/graphics.scm34
-rw-r--r--gnu/packages/groff.scm20
-rw-r--r--gnu/packages/groovy.scm1404
-rw-r--r--gnu/packages/gstreamer.scm201
-rw-r--r--gnu/packages/gtk.scm12
-rw-r--r--gnu/packages/guile-xyz.scm38
-rw-r--r--gnu/packages/guile.scm10
-rw-r--r--gnu/packages/hardware.scm4
-rw-r--r--gnu/packages/haskell-apps.scm8
-rw-r--r--gnu/packages/haskell-check.scm7
-rw-r--r--gnu/packages/haskell-web.scm2
-rw-r--r--gnu/packages/haskell-xyz.scm4
-rw-r--r--gnu/packages/hurd.scm15
-rw-r--r--gnu/packages/hyperledger.scm2
-rw-r--r--gnu/packages/ibus.scm6
-rw-r--r--gnu/packages/idutils.scm2
-rw-r--r--gnu/packages/image-processing.scm51
-rw-r--r--gnu/packages/image.scm75
-rw-r--r--gnu/packages/imagemagick.scm4
-rw-r--r--gnu/packages/inkscape.scm5
-rw-r--r--gnu/packages/ipfs.scm4
-rw-r--r--gnu/packages/java.scm630
-rw-r--r--gnu/packages/julia.scm113
-rw-r--r--gnu/packages/kde-frameworks.scm2
-rw-r--r--gnu/packages/kde-internet.scm10
-rw-r--r--gnu/packages/kde-utils.scm10
-rw-r--r--gnu/packages/kde.scm37
-rw-r--r--gnu/packages/kodi.scm2
-rw-r--r--gnu/packages/language.scm42
-rw-r--r--gnu/packages/libcanberra.scm3
-rw-r--r--gnu/packages/libreoffice.scm48
-rw-r--r--gnu/packages/libusb.scm6
-rw-r--r--gnu/packages/linphone.scm2
-rw-r--r--gnu/packages/linux.scm292
-rw-r--r--gnu/packages/lisp-xyz.scm5794
-rw-r--r--gnu/packages/lisp.scm67
-rw-r--r--gnu/packages/llvm.scm187
-rw-r--r--gnu/packages/logging.scm15
-rw-r--r--gnu/packages/lua.scm186
-rw-r--r--gnu/packages/machine-learning.scm18
-rw-r--r--gnu/packages/mail.scm270
-rw-r--r--gnu/packages/markup.scm22
-rw-r--r--gnu/packages/maths.scm28
-rw-r--r--gnu/packages/matrix.scm5
-rw-r--r--gnu/packages/maven.scm33
-rw-r--r--gnu/packages/mercury.scm2
-rw-r--r--gnu/packages/mes.scm28
-rw-r--r--gnu/packages/messaging.scm96
-rw-r--r--gnu/packages/monitoring.scm39
-rw-r--r--gnu/packages/mpd.scm25
-rw-r--r--gnu/packages/mpi.scm10
-rw-r--r--gnu/packages/music.scm283
-rw-r--r--gnu/packages/nano.scm4
-rw-r--r--gnu/packages/networking.scm66
-rw-r--r--gnu/packages/nfs.scm3
-rw-r--r--gnu/packages/nss.scm66
-rw-r--r--gnu/packages/ntp.scm9
-rw-r--r--gnu/packages/ocaml.scm383
-rw-r--r--gnu/packages/onc-rpc.scm13
-rw-r--r--gnu/packages/openldap.scm4
-rw-r--r--gnu/packages/package-management.scm108
-rw-r--r--gnu/packages/parallel.scm16
-rw-r--r--gnu/packages/password-utils.scm14
-rw-r--r--gnu/packages/patches/clamav-system-tomsfastmath.patch53
-rw-r--r--gnu/packages/patches/clang-11.0-libc-search-path.patch89
-rw-r--r--gnu/packages/patches/dconf-meson-0.52.patch19
-rw-r--r--gnu/packages/patches/fplll-std-fenv.patch18
-rw-r--r--gnu/packages/patches/gnome-settings-daemon-gc.patch43
-rw-r--r--gnu/packages/patches/grim-revert-output-rotation.patch27
-rw-r--r--gnu/packages/patches/hplip-fix-bug-1898438.patch19
-rw-r--r--gnu/packages/patches/icecat-makeicecat.patch14
-rw-r--r--gnu/packages/patches/jamvm-1.5.1-aarch64-support.patch572
-rw-r--r--gnu/packages/patches/jamvm-1.5.1-armv7-support.patch (renamed from gnu/packages/patches/jamvm-arm.patch)0
-rw-r--r--gnu/packages/patches/jamvm-2.0.0-aarch64-support.patch645
-rw-r--r--gnu/packages/patches/jamvm-2.0.0-opcode-guard.patch35
-rw-r--r--gnu/packages/patches/java-antlr4-Add-standalone-generator.patch52
-rw-r--r--gnu/packages/patches/java-antlr4-fix-code-too-large.java90
-rw-r--r--gnu/packages/patches/java-tunnelvisionlabs-antlr-code-too-large.patch87
-rw-r--r--gnu/packages/patches/konversation-Fix-build-with-Qt-5.11.patch24
-rw-r--r--gnu/packages/patches/libcanberra-wayland-crash.patch55
-rw-r--r--gnu/packages/patches/libcyaml-libyaml-compat.patch51
-rw-r--r--gnu/packages/patches/libdrm-realpath-virtio.patch42
-rw-r--r--gnu/packages/patches/liblouisutdml-fix-tests.patch33
-rw-r--r--gnu/packages/patches/libsndfile-CVE-2017-12562.patch97
-rw-r--r--gnu/packages/patches/libsndfile-CVE-2017-8361-8363-8365.patch77
-rw-r--r--gnu/packages/patches/libsndfile-CVE-2017-8362.patch61
-rw-r--r--gnu/packages/patches/libsndfile-armhf-type-checks.patch42
-rw-r--r--gnu/packages/patches/lsh-fix-x11-forwarding.patch20
-rw-r--r--gnu/packages/patches/mailutils-fix-uninitialized-variable.patch26
-rw-r--r--gnu/packages/patches/mariadb-client-test-32bit.patch37
-rw-r--r--gnu/packages/patches/nginx-socket-cloexec.patch185
-rw-r--r--gnu/packages/patches/nss-3.56-pkgconfig.patch (renamed from gnu/packages/patches/nss-pkgconfig.patch)11
-rw-r--r--gnu/packages/patches/picard-fix-id3-rename-test.patch11
-rw-r--r--gnu/packages/patches/python-gst-fix-build-with-python-3.8.patch36
-rw-r--r--gnu/packages/patches/qemu-build-info-manual.patch139
-rw-r--r--gnu/packages/patches/samba-fix-fcntl-hint-detection.patch55
-rw-r--r--gnu/packages/patches/sbcl-graph-asdf-definitions.patch70
-rw-r--r--gnu/packages/patches/sunxi-tools-remove-sys-io.patch52
-rw-r--r--gnu/packages/patches/unison-fix-ocaml-4.08.patch81
-rw-r--r--gnu/packages/patches/xpra-4.0.4-norequests.patch39
-rw-r--r--gnu/packages/patchutils.scm19
-rw-r--r--gnu/packages/pciutils.scm4
-rw-r--r--gnu/packages/pdf.scm5
-rw-r--r--gnu/packages/perl-check.scm5
-rw-r--r--gnu/packages/perl.scm94
-rw-r--r--gnu/packages/photo.scm10
-rw-r--r--gnu/packages/php.scm10
-rw-r--r--gnu/packages/popt.scm16
-rw-r--r--gnu/packages/pretty-print.scm29
-rw-r--r--gnu/packages/prolog.scm6
-rw-r--r--gnu/packages/protobuf.scm11
-rw-r--r--gnu/packages/pulseaudio.scm37
-rw-r--r--gnu/packages/python-check.scm47
-rw-r--r--gnu/packages/python-crypto.scm127
-rw-r--r--gnu/packages/python-web.scm214
-rw-r--r--gnu/packages/python-xyz.scm749
-rw-r--r--gnu/packages/python.scm5
-rw-r--r--gnu/packages/qt.scm34
-rw-r--r--gnu/packages/radio.scm11
-rw-r--r--gnu/packages/rdesktop.scm24
-rw-r--r--gnu/packages/rdf.scm10
-rw-r--r--gnu/packages/ruby.scm13
-rw-r--r--gnu/packages/rust-apps.scm3
-rw-r--r--gnu/packages/rust.scm33
-rw-r--r--gnu/packages/sagemath.scm2
-rw-r--r--gnu/packages/samba.scm7
-rw-r--r--gnu/packages/security-token.scm4
-rw-r--r--gnu/packages/sequoia.scm8
-rw-r--r--gnu/packages/shells.scm18
-rw-r--r--gnu/packages/skarnet.scm30
-rw-r--r--gnu/packages/sphinx.scm51
-rw-r--r--gnu/packages/spice.scm7
-rw-r--r--gnu/packages/ssh.scm76
-rw-r--r--gnu/packages/sssd.scm2
-rw-r--r--gnu/packages/statistics.scm257
-rw-r--r--gnu/packages/suckless.scm4
-rw-r--r--gnu/packages/syndication.scm33
-rw-r--r--gnu/packages/task-management.scm68
-rw-r--r--gnu/packages/tbb.scm4
-rw-r--r--gnu/packages/terminals.scm44
-rw-r--r--gnu/packages/tex.scm155
-rw-r--r--gnu/packages/text-editors.scm8
-rw-r--r--gnu/packages/textutils.scm23
-rw-r--r--gnu/packages/tls.scm8
-rw-r--r--gnu/packages/tor.scm4
-rw-r--r--gnu/packages/toys.scm110
-rw-r--r--gnu/packages/tv.scm2
-rw-r--r--gnu/packages/uml.scm6
-rw-r--r--gnu/packages/valgrind.scm23
-rw-r--r--gnu/packages/version-control.scm43
-rw-r--r--gnu/packages/video.scm102
-rw-r--r--gnu/packages/vim.scm17
-rw-r--r--gnu/packages/virtualization.scm135
-rw-r--r--gnu/packages/vlang.scm89
-rw-r--r--gnu/packages/vpn.scm9
-rw-r--r--gnu/packages/vulkan.scm12
-rw-r--r--gnu/packages/web-browsers.scm85
-rw-r--r--gnu/packages/web.scm382
-rw-r--r--gnu/packages/webkit.scm5
-rw-r--r--gnu/packages/wget.scm7
-rw-r--r--gnu/packages/wm.scm97
-rw-r--r--gnu/packages/wv.scm20
-rw-r--r--gnu/packages/xdisorg.scm51
-rw-r--r--gnu/packages/xfce.scm4
-rw-r--r--gnu/packages/xiph.scm8
-rw-r--r--gnu/packages/xml.scm5
-rw-r--r--gnu/packages/xorg.scm73
-rw-r--r--gnu/services.scm7
-rw-r--r--gnu/services/base.scm18
-rw-r--r--gnu/services/cuirass.scm48
-rw-r--r--gnu/services/desktop.scm129
-rw-r--r--gnu/services/dict.scm2
-rw-r--r--gnu/services/dns.scm70
-rw-r--r--gnu/services/docker.scm20
-rw-r--r--gnu/services/ganeti.scm2
-rw-r--r--gnu/services/guix.scm437
-rw-r--r--gnu/services/messaging.scm12
-rw-r--r--gnu/services/networking.scm6
-rw-r--r--gnu/services/ssh.scm131
-rw-r--r--gnu/services/version-control.scm9
-rw-r--r--gnu/services/virtualization.scm154
-rw-r--r--gnu/services/web.scm27
-rw-r--r--gnu/services/xorg.scm3
-rw-r--r--gnu/system.scm55
-rw-r--r--gnu/system/examples/bare-hurd.tmpl9
-rw-r--r--gnu/system/examples/lightweight-desktop.tmpl4
-rw-r--r--gnu/system/file-systems.scm8
-rw-r--r--gnu/system/hurd.scm25
-rw-r--r--gnu/system/image.scm155
-rw-r--r--gnu/system/images/hurd.scm32
-rw-r--r--gnu/system/images/pine64.scm66
-rw-r--r--gnu/system/install.scm43
-rw-r--r--gnu/system/linux-container.scm59
-rw-r--r--gnu/tests/guix.scm75
-rw-r--r--gnu/tests/install.scm51
-rw-r--r--gnu/tests/virtualization.scm160
-rw-r--r--guix/build-system.scm35
-rw-r--r--guix/build-system/asdf.scm31
-rw-r--r--guix/build-system/haskell.scm5
-rw-r--r--guix/build/asdf-build-system.scm177
-rw-r--r--guix/build/cargo-build-system.scm8
-rw-r--r--guix/build/cargo-utils.scm5
-rw-r--r--guix/build/go-build-system.scm13
-rw-r--r--guix/build/hg.scm44
-rw-r--r--guix/build/lisp-utils.scm245
-rw-r--r--guix/build/svn.scm38
-rw-r--r--guix/channels.scm3
-rw-r--r--guix/cve.scm12
-rw-r--r--guix/describe.scm10
-rw-r--r--guix/gexp.scm33
-rw-r--r--guix/http-client.scm18
-rw-r--r--guix/import/cabal.scm2
-rw-r--r--guix/import/cpan.scm2
-rw-r--r--guix/import/opam.scm25
-rw-r--r--guix/import/stackage.scm4
-rw-r--r--guix/import/utils.scm14
-rw-r--r--guix/licenses.scm27
-rw-r--r--guix/lint.scm2
-rw-r--r--guix/openpgp.scm8
-rw-r--r--guix/packages.scm168
-rw-r--r--guix/scripts/authenticate.scm8
-rw-r--r--guix/scripts/build.scm222
-rw-r--r--guix/scripts/environment.scm17
-rw-r--r--guix/scripts/import/hackage.scm2
-rw-r--r--guix/scripts/offload.scm54
-rw-r--r--guix/scripts/pack.scm39
-rw-r--r--guix/scripts/package.scm43
-rw-r--r--guix/scripts/repl.scm13
-rwxr-xr-xguix/scripts/substitute.scm2
-rw-r--r--guix/scripts/system.scm118
-rw-r--r--guix/scripts/system/reconfigure.scm34
-rw-r--r--guix/scripts/upgrade.scm2
-rw-r--r--guix/self.scm50
-rw-r--r--guix/ui.scm9
-rw-r--r--nix/libstore/build.cc33
-rw-r--r--nix/local.mk17
-rw-r--r--po/doc/guix-manual.de.po26094
-rw-r--r--po/doc/guix-manual.es.po26138
-rw-r--r--po/doc/guix-manual.fr.po23550
-rw-r--r--po/doc/local.mk6
-rw-r--r--po/guix/Makevars4
-rw-r--r--po/guix/POTFILES.in1
-rw-r--r--po/guix/de.po1898
-rw-r--r--po/guix/eo.po5799
-rw-r--r--po/guix/es.po1906
-rw-r--r--po/guix/fr.po1875
-rw-r--r--po/guix/pt_BR.po1952
-rw-r--r--po/packages/Makevars4
-rw-r--r--po/packages/de.po11115
-rw-r--r--po/packages/eo.po28774
-rw-r--r--po/packages/fr.po11146
-rw-r--r--tests/boot-parameters.scm256
-rw-r--r--tests/channels.scm1
-rw-r--r--tests/containers.scm8
-rw-r--r--tests/guix-archive.sh9
-rw-r--r--tests/guix-authenticate.sh9
-rw-r--r--tests/guix-build-branch.sh3
-rw-r--r--tests/guix-build.sh60
-rw-r--r--tests/guix-daemon.sh2
-rw-r--r--tests/guix-download.sh12
-rw-r--r--tests/guix-environment-container.sh25
-rw-r--r--tests/guix-environment.sh8
-rw-r--r--tests/guix-gc.sh13
-rw-r--r--tests/guix-git-authenticate.sh5
-rw-r--r--tests/guix-graph.sh7
-rw-r--r--tests/guix-hash.sh12
-rw-r--r--tests/guix-lint.sh18
-rw-r--r--tests/guix-pack-relocatable.sh3
-rw-r--r--tests/guix-pack.sh3
-rw-r--r--tests/guix-package-aliases.sh20
-rw-r--r--tests/guix-package-net.sh9
-rw-r--r--tests/guix-package.sh66
-rw-r--r--tests/guix-repl.sh4
-rw-r--r--tests/guix-system.sh23
-rw-r--r--tests/opam.scm139
-rw-r--r--tests/openpgp.scm12
-rw-r--r--tests/packages.scm192
-rw-r--r--tests/scripts-build.scm108
414 files changed, 126686 insertions, 59155 deletions
diff --git a/.gitignore b/.gitignore
index f630444a0f..e2f745b42a 100644
--- a/.gitignore
+++ b/.gitignore
@@ -74,6 +74,7 @@
/etc/guix-publish.conf
/etc/guix-publish.service
/etc/init.d/guix-daemon
+/etc/openrc/guix-daemon
/guix-daemon
/guix/config.scm
/libformat.a
diff --git a/.guix-authorizations b/.guix-authorizations
index ee164083c8..fc52e3fc19 100644
--- a/.guix-authorizations
+++ b/.guix-authorizations
@@ -1,5 +1,5 @@
-;; This is the list of OpenPGP keys currently authorized to sign commits in
-;; this repository.
+;; This file, which is best viewed as -*- Scheme -*-, lists the OpenPGP keys
+;; currently authorized to sign commits in this repository.
(authorizations
(version 0)
@@ -84,6 +84,8 @@
(name "lfam"))
("2AE3 1395 932B E642 FC0E D99C 9BED 6EDA 32E5 B0BC"
(name "lsl88"))
+ ("8887 84C4 1459 ACCB 83E7 E84C 634C 6E89 79FA BEC2"
+ (name "m1gu3l"))
("CBF5 9755 CBE7 E7EF EF18 3FB1 DD40 9A15 D822 469D"
(name "marusich"))
("BBB0 2DDF 2CEA F6A8 0D1D E643 A2A0 6DF2 A33A 54FA"
diff --git a/Makefile.am b/Makefile.am
index 09eaaf36e2..eadb9bfd2c 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -47,6 +47,18 @@ scripts/guix: scripts/guix.in Makefile
$(AM_V_GEN)$(do_subst) < "$(srcdir)/$@.in" > "$@-t"
$(AM_V_at)chmod a+x,a-w "$@-t" && mv -f "$@-t" "$@"
+# This is our variant of the 'guile' executable, one that doesn't complain
+# about locales.
+pkglibexec_PROGRAMS = guile
+guile_SOURCES = gnu/packages/aux-files/guile-launcher.c
+guile_LDADD = $(GUILE_LIBS)
+guile_CFLAGS = $(GUILE_CFLAGS)
+
+# Have the 'guix' command refer to our 'guile'.
+install-exec-hook:
+ $(SED) -i "$(DESTDIR)$(bindir)/guix" \
+ -e 's,^#![[:graph:]]\+,#!$(pkglibexecdir)/guile,g'
+
nodist_noinst_SCRIPTS = \
pre-inst-env \
test-env
@@ -394,6 +406,7 @@ SCM_TESTS = \
tests/base16.scm \
tests/base32.scm \
tests/base64.scm \
+ tests/boot-parameters.scm \
tests/bournish.scm \
tests/builders.scm \
tests/build-utils.scm \
@@ -570,6 +583,7 @@ EXTRA_DIST += \
build-aux/hydra/guix-modular.scm \
build-aux/cuirass/gnu-system.scm \
build-aux/cuirass/guix-modular.scm \
+ build-aux/cuirass/hurd-manifest.scm \
build-aux/cuirass/hydra-to-cuirass.scm \
build-aux/check-final-inputs-self-contained.scm \
build-aux/check-channel-news.scm \
@@ -832,9 +846,8 @@ release: dist-with-updated-version
-v1 --no-grafts --fallback
for system in $(GUIX_SYSTEM_SUPPORTED_SYSTEMS) ; do \
image=`$(top_builddir)/pre-inst-env \
- guix system disk-image \
- --file-system-type=iso9660 \
- --label="GUIX_$${system}_$(VERSION)" \
+ guix system disk-image -t iso9660 \
+ --label="GUIX_$${system}_$(VERSION)" \
--system=$$system --fallback \
gnu/system/install.scm` ; \
if [ ! -f "$$image" ] ; then \
diff --git a/build-aux/cuirass/hurd-manifest.scm b/build-aux/cuirass/hurd-manifest.scm
new file mode 100644
index 0000000000..0be8943cd1
--- /dev/null
+++ b/build-aux/cuirass/hurd-manifest.scm
@@ -0,0 +1,74 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
+;;;
+;;; This file is part of GNU Guix.
+;;;
+;;; GNU Guix is free software; you can redistribute it and/or modify it
+;;; under the terms of the GNU General Public License as published by
+;;; the Free Software Foundation; either version 3 of the License, or (at
+;;; your option) any later version.
+;;;
+;;; GNU Guix is distributed in the hope that it will be useful, but
+;;; WITHOUT ANY WARRANTY; without even the implied warranty of
+;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;;; GNU General Public License for more details.
+;;;
+;;; You should have received a copy of the GNU General Public License
+;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
+
+;;; Commentary:
+;;;
+;;; This file defines a manifest with a selection of packages for Cuirass to
+;;; build for GNU/Hurd.
+;;;
+;;; Code:
+
+(use-modules (gnu)
+ (gnu system hurd)
+ (guix packages)
+ (guix utils)
+ (ice-9 match)
+ (srfi srfi-1))
+
+(use-package-modules
+ base commencement compression file gawk gdb gettext guile
+ hurd less m4 package-management python ssh version-control)
+
+(define (input->package input)
+ "Return the INPUT as package, or #f."
+ (match input
+ ((label (and (? package?) package))
+ package)
+ ((label (and (? package?) package . output))
+ (cons package output))
+ (_ #f)))
+
+(define guix-dependencies
+ (filter-map input->package
+ (fold alist-delete (package-direct-inputs guix)
+ '("glibc-utf8-locales" "graphviz" "po4a"))))
+
+(define (package-without-tests p)
+ (package/inherit p
+ (arguments
+ (substitute-keyword-arguments (package-arguments p)
+ ((#:tests? _ #f) #f)))))
+
+(packages->manifest
+ (cons*
+ ;; where it all starts
+ hello
+
+ ;; development utililities
+ diffutils file findutils gawk grep gzip less m4 openssh-sans-x tar xz
+
+ ;; development packages
+ gcc-toolchain gdb-minimal git-minimal gnu-make
+
+ ;; guix environment guix --without-tests=python-minimal --without-tests=gettext-minimal
+ (package-without-tests gettext-minimal)
+ (package-without-tests python-minimal)
+
+ (append
+ guix-dependencies
+ (delete guile-3.0 %base-packages/hurd))))
diff --git a/build-aux/hydra/guix-modular.scm b/build-aux/hydra/guix-modular.scm
index 8e07e7cd01..060b84b8ef 100644
--- a/build-aux/hydra/guix-modular.scm
+++ b/build-aux/hydra/guix-modular.scm
@@ -43,17 +43,25 @@ for SYSTEM. Use VERSION as the version identifier."
(define build
(primitive-load (string-append source "/build-aux/build-self.scm")))
- `((derivation . ,(derivation-file-name
- (run-with-store store
- (build source #:version version #:system system
- #:pull-version 1
- #:guile-version "2.2")))) ;the latest 2.2.x
- (description . "Modular Guix")
- (long-description
- . "This is the modular Guix package as produced by 'guix pull'.")
- (license . ,license:gpl3+)
- (home-page . ,%guix-home-page-url)
- (maintainers . (,%guix-bug-report-address)))))
+ (let ((drv (run-with-store store
+ (build source #:version version #:system system
+ #:pull-version 1
+ #:guile-version "2.2"))))
+ `((derivation . ,(derivation-file-name drv)) ;the latest 2.2.x
+ (log . ,(log-file store (derivation-file-name drv)))
+ (outputs . ,(filter-map (lambda (res)
+ (match res
+ ((name . path)
+ `(,name . ,path))))
+ (derivation->output-paths drv)))
+ (nix-name . ,(derivation-name drv))
+ (system . ,(derivation-system drv))
+ (description . "Modular Guix")
+ (long-description
+ . "This is the modular Guix package as produced by 'guix pull'.")
+ (license . ,license:gpl3+)
+ (home-page . ,%guix-home-page-url)
+ (maintainers . (,%guix-bug-report-address))))))
(define (hydra-jobs store arguments)
"Return Hydra jobs."
diff --git a/configure.ac b/configure.ac
index adca374619..6861112eaf 100644
--- a/configure.ac
+++ b/configure.ac
@@ -105,6 +105,9 @@ if test "x$GUILE_EFFECTIVE_VERSION" = "x2.2"; then
PKG_CHECK_MODULES([GUILE], [guile-2.2 >= 2.2.3])
fi
+dnl Get CFLAGS and LDFLAGS for libguile.
+GUILE_FLAGS
+
dnl Installation directories for .scm and .go files.
guilemoduledir="${datarootdir}/guile/site/$GUILE_EFFECTIVE_VERSION"
guileobjectdir="${libdir}/guile/$GUILE_EFFECTIVE_VERSION/site-ccache"
diff --git a/doc/build.scm b/doc/build.scm
index 97f4ab6b83..dac62493f4 100644
--- a/doc/build.scm
+++ b/doc/build.scm
@@ -33,6 +33,7 @@
(guix utils)
(git)
(gnu packages base)
+ (gnu packages compression)
(gnu packages gawk)
(gnu packages gettext)
(gnu packages guile)
@@ -40,7 +41,10 @@
(gnu packages iso-codes)
(gnu packages texinfo)
(gnu packages tex)
+ (ice-9 match)
+ (srfi srfi-1)
(srfi srfi-19)
+ (srfi srfi-26)
(srfi srfi-71))
(define file-append*
@@ -204,9 +208,168 @@ content=\"width=device-width, initial-scale=1\" />"))
(setenv "XFAIL_TESTS" "htmlprag.scm")
#t))))))))
+(define (normalize-language-code language) ;XXX: deduplicate
+ ;; Normalize LANGUAGE. For instance, "zh_CN" becomes "zh-cn".
+ (string-map (match-lambda
+ (#\_ #\-)
+ (chr chr))
+ (string-downcase language)))
+
+(define* (html-manual-identifier-index manual base-url
+ #:key
+ (name "html-manual-identifier-index"))
+ "Return an index of all the identifiers that appear in MANUAL, a
+makeinfo-generated manual. The index is a file that contains an alist; each
+key is an identifier and the associated value is the URL reference pointing to
+that identifier. The URL is constructed by concatenating BASE-URL to the
+actual file name."
+ (define build
+ (with-extensions (list guile-lib/htmlprag-fixed)
+ (with-imported-modules '((guix build utils))
+ #~(begin
+ (use-modules (guix build utils)
+ (htmlprag)
+ (srfi srfi-1)
+ (srfi srfi-26)
+ (ice-9 ftw)
+ (ice-9 match)
+ (ice-9 threads)
+ (ice-9 pretty-print))
+
+ (define file-url
+ (let ((prefix (string-append #$manual "/")))
+ (lambda (file)
+ ;; Return the URL for FILE.
+ (let ((file (string-drop file (string-length prefix)))
+ (base #$base-url))
+ (if (string-null? base)
+ file
+ (string-append base "/" file))))))
+
+ (define (underscore-decode str)
+ ;; Decode STR, an "underscore-encoded" string as produced by
+ ;; makeinfo for indexes, such as "_0025base_002dservices" for
+ ;; "%base-services".
+ (let loop ((str str)
+ (result '()))
+ (match (string-index str #\_)
+ (#f
+ (string-concatenate-reverse (cons str result)))
+ (index
+ (let ((char (string->number
+ (substring str (+ index 1) (+ index 5))
+ 16)))
+ (loop (string-drop str (+ index 5))
+ (append (list (string (integer->char char))
+ (string-take str index))
+ result)))))))
+
+ (define (anchor-id->key id)
+ ;; Convert ID, an anchor ID such as
+ ;; "index-pam_002dlimits_002dservice" to the corresponding key,
+ ;; "pam-limits-service" in this example. Drop the suffix of
+ ;; duplicate anchor IDs like "operating_002dsystem-1".
+ (let ((id (if (any (cut string-suffix? <> id)
+ '("-1" "-2" "-3" "-4" "-5"))
+ (string-drop-right id 2)
+ id)))
+ (underscore-decode
+ (string-drop id (string-length "index-")))))
+
+ (define* (collect-anchors file #:optional (anchors '()))
+ ;; Collect the anchors that appear in FILE, a makeinfo-generated
+ ;; file. Grab those from <dt> tags, which corresponds to
+ ;; Texinfo @deftp, @defvr, etc. Return ANCHORS augmented with
+ ;; more name/reference pairs.
+ (define string-or-entity?
+ (match-lambda
+ ((? string?) #t)
+ (('*ENTITY* _ ...) #t)
+ (_ #f)))
+
+ (define (worthy-entry? lst)
+ ;; Attempt to match:
+ ;; Scheme Variable: <strong>x</strong>
+ ;; but not:
+ ;; <code>cups-configuration</code> parameter: …
+ (let loop ((lst lst))
+ (match lst
+ (((? string-or-entity?) rest ...)
+ (loop rest))
+ ((('strong _ ...) _ ...)
+ #t)
+ (_ #f))))
+
+ (let ((shtml (call-with-input-file file html->shtml)))
+ (let loop ((shtml shtml)
+ (anchors anchors))
+ (match shtml
+ (('dt ('@ ('id id)) rest ...)
+ (if (and (string-prefix? "index-" id)
+ (worthy-entry? rest))
+ (alist-cons (anchor-id->key id)
+ (string-append (file-url file)
+ "#" id)
+ anchors)
+ anchors))
+ ((tag ('@ _ ...) body ...)
+ (fold loop anchors body))
+ ((tag body ...)
+ (fold loop anchors body))
+ (_ anchors)))))
+
+ (define (html-files directory)
+ ;; Return the list of HTML files under DIRECTORY.
+ (map (cut string-append directory "/" <>)
+ (scandir #$manual (lambda (file)
+ (string-suffix? ".html" file)))))
+
+ (define anchors
+ (sort (concatenate
+ (n-par-map (parallel-job-count)
+ (cut collect-anchors <>)
+ (html-files #$manual)))
+ (match-lambda*
+ (((key1 . url1) (key2 . url2))
+ (if (string=? key1 key2)
+ (string<? url1 url2)
+ (string<? key1 key2))))))
+
+ (call-with-output-file #$output
+ (lambda (port)
+ (display ";; Identifier index for the manual.\n\n"
+ port)
+ (pretty-print anchors port)))))))
+
+ (computed-file name build))
+
+(define* (html-identifier-indexes manual directory-suffix
+ #:key (languages %languages)
+ (manual-name %manual)
+ (base-url (const "")))
+ (map (lambda (language)
+ (let ((language (normalize-language-code language)))
+ (list language
+ (html-manual-identifier-index
+ (file-append manual "/" language directory-suffix)
+ (base-url language)
+ #:name (string-append manual-name "-html-index-"
+ language)))))
+ languages))
+
(define* (syntax-highlighted-html input
#:key
(name "highlighted-syntax")
+ (languages %languages)
+ (mono-node-indexes
+ (html-identifier-indexes input ""
+ #:languages
+ languages))
+ (split-node-indexes
+ (html-identifier-indexes input
+ "/html_node"
+ #:languages
+ languages))
(syntax-css-url
"/static/base/css/code.css"))
"Return a derivation called NAME that processes all the HTML files in INPUT
@@ -341,78 +504,6 @@ its <pre class=\"lisp\"> blocks (as produced by 'makeinfo --html')."
((? string? str)
str))))
- (define (underscore-decode str)
- ;; Decode STR, an "underscore-encoded" string as produced by
- ;; makeinfo for indexes, such as "_0025base_002dservices" for
- ;; "%base-services".
- (let loop ((str str)
- (result '()))
- (match (string-index str #\_)
- (#f
- (string-concatenate-reverse (cons str result)))
- (index
- (let ((char (string->number
- (substring str (+ index 1) (+ index 5))
- 16)))
- (loop (string-drop str (+ index 5))
- (append (list (string (integer->char char))
- (string-take str index))
- result)))))))
-
- (define (anchor-id->key id)
- ;; Convert ID, an anchor ID such as
- ;; "index-pam_002dlimits_002dservice" to the corresponding key,
- ;; "pam-limits-service" in this example. Drop the suffix of
- ;; duplicate anchor IDs like "operating_002dsystem-1".
- (let ((id (if (any (cut string-suffix? <> id)
- '("-1" "-2" "-3" "-4" "-5"))
- (string-drop-right id 2)
- id)))
- (underscore-decode
- (string-drop id (string-length "index-")))))
-
- (define* (collect-anchors file #:optional (vhash vlist-null))
- ;; Collect the anchors that appear in FILE, a makeinfo-generated
- ;; file. Grab those from <dt> tags, which corresponds to
- ;; Texinfo @deftp, @defvr, etc. Return VHASH augmented with
- ;; more name/reference pairs.
- (define string-or-entity?
- (match-lambda
- ((? string?) #t)
- (('*ENTITY* _ ...) #t)
- (_ #f)))
-
- (define (worthy-entry? lst)
- ;; Attempt to match:
- ;; Scheme Variable: <strong>x</strong>
- ;; but not:
- ;; <code>cups-configuration</code> parameter: …
- (let loop ((lst lst))
- (match lst
- (((? string-or-entity?) rest ...)
- (loop rest))
- ((('strong _ ...) _ ...)
- #t)
- (_ #f))))
-
- (let ((shtml (call-with-input-file file html->shtml)))
- (let loop ((shtml shtml)
- (vhash vhash))
- (match shtml
- (('dt ('@ ('id id)) rest ...)
- (if (and (string-prefix? "index-" id)
- (worthy-entry? rest))
- (vhash-cons (anchor-id->key id)
- (string-append (basename file)
- "#" id)
- vhash)
- vhash))
- ((tag ('@ _ ...) body ...)
- (fold loop vhash body))
- ((tag body ...)
- (fold loop vhash body))
- (_ vhash)))))
-
(define (process-html file anchors)
;; Parse FILE and perform syntax highlighting for its Scheme
;; snippets. Install the result to #$output.
@@ -444,38 +535,59 @@ its <pre class=\"lisp\"> blocks (as produced by 'makeinfo --html')."
(define (html? file stat)
(string-suffix? ".html" file))
+ (define language+node-anchors
+ (match-lambda
+ ((language files ...)
+ (cons language
+ (fold (lambda (file vhash)
+ (let ((alist (call-with-input-file file read)))
+ ;; Use 'fold-right' so that the first entry
+ ;; wins (e.g., "car" from "Pairs" rather than
+ ;; from "rnrs base" in the Guile manual).
+ (fold-right (match-lambda*
+ (((key . value) vhash)
+ (vhash-cons key value vhash)))
+ vhash
+ alist)))
+ vlist-null
+ files)))))
+
+ (define mono-node-anchors
+ ;; List of language/vhash pairs, where each vhash maps an
+ ;; identifier to the corresponding URL in a single-page manual.
+ (map language+node-anchors '#$mono-node-indexes))
+
+ (define multi-node-anchors
+ ;; Likewise for split-node manuals.
+ (map language+node-anchors '#$split-node-indexes))
+
;; Install a UTF-8 locale so we can process UTF-8 files.
(setenv "GUIX_LOCPATH"
#+(file-append glibc-utf8-locales "/lib/locale"))
(setlocale LC_ALL "en_US.utf8")
;; First process the mono-node 'guix.html' files.
- (n-par-for-each (parallel-job-count)
- (lambda (mono)
- (let ((anchors (collect-anchors mono)))
- (process-html mono anchors)))
- (find-files
- #$input
- "^guix(-cookbook|)(\\.[a-zA-Z_-]+)?\\.html$"))
-
- ;; Next process the multi-node HTML files in two phases: (1)
- ;; collect the list of anchors, and (2) perform
- ;; syntax-highlighting.
- (let* ((multi (find-files #$input "^html_node$"
- #:directories? #t))
- (anchors (n-par-map (parallel-job-count)
- (lambda (multi)
- (cons multi
- (fold collect-anchors vlist-null
- (find-files multi html?))))
- multi)))
- (n-par-for-each (parallel-job-count)
- (lambda (file)
- (let ((anchors (assoc-ref anchors (dirname file))))
- (process-html file anchors)))
- (append-map (lambda (multi)
- (find-files multi html?))
- multi)))
+ (for-each (match-lambda
+ ((language . anchors)
+ (let ((files (find-files
+ (string-append #$input "/" language)
+ "^guix(-cookbook|)(\\.[a-zA-Z_-]+)?\\.html$")))
+ (n-par-for-each (parallel-job-count)
+ (cut process-html <> anchors)
+ files))))
+ mono-node-anchors)
+
+ ;; Process the multi-node HTML files.
+ (for-each (match-lambda
+ ((language . anchors)
+ (let ((files (find-files
+ (string-append #$input "/" language
+ "/html_node")
+ "\\.html$")))
+ (n-par-for-each (parallel-job-count)
+ (cut process-html <> anchors)
+ files))))
+ multi-node-anchors)
;; Last, copy non-HTML files as is.
(for-each copy-as-is
@@ -486,6 +598,8 @@ its <pre class=\"lisp\"> blocks (as produced by 'makeinfo --html')."
(define* (html-manual source #:key (languages %languages)
(version "0.0")
(manual %manual)
+ (mono-node-indexes (map list languages))
+ (split-node-indexes (map list languages))
(date 1)
(options %makeinfo-html-options))
"Return the HTML manuals built from SOURCE for all LANGUAGES, with the given
@@ -574,6 +688,8 @@ makeinfo OPTIONS."
(let* ((name (string-append manual "-html-manual"))
(manual (computed-file name build)))
(syntax-highlighted-html manual
+ #:mono-node-indexes mono-node-indexes
+ #:split-node-indexes split-node-indexes
#:name (string-append name "-highlighted"))))
(define* (pdf-manual source #:key (languages %languages)
@@ -920,6 +1036,8 @@ languages:\n"
#:key (languages %languages)
(version "0.0")
(date (time-second (current-time time-utc)))
+ (mono-node-indexes (map list %languages))
+ (split-node-indexes (map list %languages))
(manual %manual))
"Return the union of the HTML and PDF manuals, as well as the indexes."
(directory-union (string-append manual "-manual")
@@ -930,7 +1048,12 @@ languages:\n"
#:version version
#:manual manual))
(list html-manual-indexes
- html-manual pdf-manual))
+ (lambda (source . args)
+ (apply html-manual source
+ #:mono-node-indexes mono-node-indexes
+ #:split-node-indexes split-node-indexes
+ args))
+ pdf-manual))
#:copy? #t))
(define (latest-commit+date directory)
@@ -944,17 +1067,143 @@ commit date (an integer)."
(values (oid->string oid) (commit-time commit))))
+;;;
+;;; Guile manual.
+;;;
+
+(define guile-manual
+ ;; The Guile manual as HTML, including both the mono-node "guile.html" and
+ ;; the split-node "html_node" directory.
+ (let ((guile guile-3.0-latest))
+ (computed-file (string-append "guile-manual-" (package-version guile))
+ (with-imported-modules '((guix build utils))
+ #~(begin
+ (use-modules (guix build utils)
+ (ice-9 match))
+
+ (setenv "PATH"
+ (string-append #+tar "/bin:"
+ #+xz "/bin:"
+ #+texinfo "/bin"))
+ (invoke "tar" "xf" #$(package-source guile))
+ (mkdir-p (string-append #$output "/en/html_node"))
+
+ (let* ((texi (find-files "." "^guile\\.texi$"))
+ (documentation (match texi
+ ((file) (dirname file)))))
+ (with-directory-excursion documentation
+ (invoke "makeinfo" "--html" "--no-split"
+ "-o" (string-append #$output
+ "/en/guile.html")
+ "guile.texi")
+ (invoke "makeinfo" "--html" "-o" "split"
+ "guile.texi")
+ (copy-recursively
+ "split"
+ (string-append #$output "/en/html_node")))))))))
+
+(define %guile-manual-base-url
+ "https://www.gnu.org/software/guile/manual")
+
+(define (for-all-languages index)
+ (map (lambda (language)
+ (list language index))
+ %languages))
+
+(define guile-mono-node-indexes
+ ;; The Guile manual is only available in English so use the same index in
+ ;; all languages.
+ (for-all-languages
+ (html-manual-identifier-index (file-append guile-manual "/en")
+ %guile-manual-base-url
+ #:name "guile-html-index-en")))
+
+(define guile-split-node-indexes
+ (for-all-languages
+ (html-manual-identifier-index (file-append guile-manual "/en/html_node")
+ (string-append %guile-manual-base-url
+ "/html_node")
+ #:name "guile-html-index-en")))
+
+(define (merge-index-alists alist1 alist2)
+ "Merge ALIST1 and ALIST2, both of which are list of tuples like:
+
+ (LANGUAGE INDEX1 INDEX2 ...)
+
+where LANGUAGE is a string like \"en\" and INDEX1 etc. are indexes as returned
+by 'html-identifier-indexes'."
+ (let ((languages (delete-duplicates
+ (append (match alist1
+ (((languages . _) ...)
+ languages))
+ (match alist2
+ (((languages . _) ...)
+ languages))))))
+ (map (lambda (language)
+ (cons language
+ (append (or (assoc-ref alist1 language) '())
+ (or (assoc-ref alist2 language) '()))))
+ languages)))
+
+
(let* ((root (canonicalize-path
(string-append (current-source-directory) "/..")))
- (commit date (latest-commit+date root)))
+ (commit date (latest-commit+date root))
+ (version (or (getenv "GUIX_MANUAL_VERSION")
+ (string-take commit 7)))
+ (select? (let ((vcs? (git-predicate root)))
+ (lambda (file stat)
+ (and (vcs? file stat)
+ ;; Filter out this file.
+ (not (string=? (basename file) "build.scm"))))))
+ (source (local-file root "guix" #:recursive? #t
+ #:select? select?)))
+
+ (define guix-manual
+ (html-manual source
+ #:manual "guix"
+ #:version version
+ #:date date))
+
+ (define guix-mono-node-indexes
+ ;; Alist of indexes for GUIX-MANUAL, where each key is a language code and
+ ;; each value is a file-like object containing the identifier index.
+ (html-identifier-indexes guix-manual ""
+ #:manual-name "guix"
+ #:base-url (if (string=? %manual "guix")
+ (const "")
+ (cut string-append "/manual/" <>))
+ #:languages %languages))
+
+ (define guix-split-node-indexes
+ ;; Likewise for the split-node variant of GUIX-MANUAL.
+ (html-identifier-indexes guix-manual "/html_node"
+ #:manual-name "guix"
+ #:base-url (if (string=? %manual "guix")
+ (const "")
+ (cut string-append "/manual/" <>
+ "/html_node"))
+ #:languages %languages))
+
+ (define mono-node-indexes
+ (merge-index-alists guix-mono-node-indexes guile-mono-node-indexes))
+
+ (define split-node-indexes
+ (merge-index-alists guix-split-node-indexes guile-split-node-indexes))
+
(format (current-error-port)
"building manual from work tree around commit ~a, ~a~%"
commit
(let* ((time (make-time time-utc 0 date))
(date (time-utc->date time)))
(date->string date "~e ~B ~Y")))
- (pdf+html-manual (local-file root "guix" #:recursive? #t
- #:select? (git-predicate root))
- #:version (or (getenv "GUIX_MANUAL_VERSION")
- (string-take commit 7))
+
+ (pdf+html-manual source
+ ;; Always use the identifier indexes of GUIX-MANUAL and
+ ;; GUILE-MANUAL. Both "guix" and "guix-cookbook" can
+ ;; contain links to definitions that appear in either of
+ ;; these two manuals.
+ #:mono-node-indexes mono-node-indexes
+ #:split-node-indexes split-node-indexes
+ #:version version
#:date date))
diff --git a/doc/contributing.texi b/doc/contributing.texi
index b18ffa1e57..af3601442e 100644
--- a/doc/contributing.texi
+++ b/doc/contributing.texi
@@ -121,8 +121,9 @@ more information.
Then, run @command{./configure} as usual. Make sure to pass
@code{--localstatedir=@var{directory}} where @var{directory} is the
@code{localstatedir} value used by your current installation (@pxref{The
-Store}, for information about this). We recommend to use the value
-@code{/var}.
+Store}, for information about this), usually @file{/var}. Note that you
+will probably not run @command{make install} at the end (you don't have
+to) but it's still important to pass the right @code{localstatedir}.
Finally, you have to invoke @code{make check} to run tests
(@pxref{Running the Test Suite}). If anything
@@ -159,13 +160,11 @@ with all the dependencies available (@pxref{Building from Git}), and then
simply prefix each command with
@command{./pre-inst-env} (the @file{pre-inst-env} script lives in the
top build tree of Guix; it is generated by @command{./configure}).
-An example@footnote{The @option{-E} flag to
-@command{sudo} guarantees that @code{GUILE_LOAD_PATH} is correctly set
-such that @command{guix-daemon} and the tools it uses can find the Guile
-modules they need.}:
+As an example, here is how you would build the @code{hello} package as
+defined in your working tree (this assumes @command{guix-daemon} is
+already running on your system; it's OK if it's a different version):
@example
-$ sudo -E ./pre-inst-env guix-daemon --build-users-group=guixbuild
$ ./pre-inst-env guix build hello
@end example
@@ -200,6 +199,17 @@ scheme@@(guile-user)> (length snakes)
$1 = 361
@end example
+If you are hacking on the daemon and its supporting code or if
+@command{guix-daemon} is not already running on your system, you can
+launch it straight from the build tree@footnote{The @option{-E} flag to
+@command{sudo} guarantees that @code{GUILE_LOAD_PATH} is correctly set
+such that @command{guix-daemon} and the tools it uses can find the Guile
+modules they need.}:
+
+@example
+$ sudo -E ./pre-inst-env guix-daemon --build-users-group=guixbuild
+@end example
+
The @command{pre-inst-env} script sets up all the environment variables
necessary to support this, including @env{PATH} and @env{GUILE_LOAD_PATH}.
@@ -353,7 +363,7 @@ Once your package builds correctly, please send us a patch
(@pxref{Submitting Patches}). Well, if you need help, we will be happy to
help you too. Once the patch is committed in the Guix repository, the
new package automatically gets built on the supported platforms by
-@url{@value{SUBSTITUTE-SERVER}, our continuous integration system}.
+@url{@value{SUBSTITUTE-URL}, our continuous integration system}.
@cindex substituter
Users can obtain the new package definition simply by running
@@ -1016,7 +1026,7 @@ changes). This branch is intended to be merged in @code{master} every
6 months or so.
@end table
-All these branches are @uref{@value{SUBSTITUTE-SERVER},
+All these branches are @uref{@value{SUBSTITUTE-URL},
tracked by our build farm} and merged into @code{master} once
everything has been successfully built. This allows us to fix issues
before they hit users, and to reduce the window during which pre-built
diff --git a/doc/guix-cookbook.texi b/doc/guix-cookbook.texi
index a783c0ae4c..581b8c3595 100644
--- a/doc/guix-cookbook.texi
+++ b/doc/guix-cookbook.texi
@@ -128,8 +128,9 @@ REPL.
@item
Scheme syntax boils down to a tree of expressions (or @emph{s-expression} in
Lisp lingo). An expression can be a literal such as numbers and strings, or a
-compound which is a parenthesized list of compounds and literals. @code{#t}
-and @code{#f} stand for the Booleans ``true'' and ``false'', respectively.
+compound which is a parenthesized list of compounds and literals. @code{#true}
+and @code{#false} (abbreviated @code{#t} and @code{#f}) stand for the
+Booleans ``true'' and ``false'', respectively.
Examples of valid expressions:
@@ -249,8 +250,10 @@ definitions.
@end lisp
@item
-The keyword syntax is @code{#:}; it is used to create unique identifiers.
-@pxref{Keywords,,, guile, GNU Guile Reference Manual}.
+@dfn{Keywords} are typically used to identify the named parameters of a
+procedure. They are prefixed by @code{#:} (hash, colon) followed by
+alphanumeric characters: @code{#:like-this}.
+@xref{Keywords,,, guile, GNU Guile Reference Manual}.
@item
The percentage @code{%} is typically used for read-only global variables in
@@ -791,11 +794,11 @@ another, more sophisticated package (slightly modified from the source):
(snippet '(begin
;; Remove bundled software.
(delete-file-recursively "deps")
- #t))))
+ #true))))
(build-system cmake-build-system)
(outputs '("out" "debug"))
(arguments
- `(#:tests? #t ; Run the test suite (this is the default)
+ `(#:tests? #true ; Run the test suite (this is the default)
#:configure-flags '("-DUSE_SHA1DC=ON") ; SHA-1 collision detection
#:phases
(modify-phases %standard-phases
@@ -806,12 +809,12 @@ another, more sophisticated package (slightly modified from the source):
(substitute* "tests/clar/fs.h"
(("/bin/cp") (which "cp"))
(("/bin/rm") (which "rm")))
- #t))
+ #true))
;; Run checks more verbosely.
(replace 'check
(lambda _ (invoke "./libgit2_clar" "-v" "-Q")))
(add-after 'unpack 'make-files-writable-for-tests
- (lambda _ (for-each make-file-writable (find-files "." ".*")))))))
+ (lambda _ (for-each make-file-writable (find-files "." ".*")))))))
(inputs
`(("libssh2" ,libssh2)
("http-parser" ,http-parser)
@@ -1029,7 +1032,7 @@ If you want to know more about what happens during those phases, consult the
associated procedures.
For instance, as of this writing the definition of @code{unpack} for the GNU build
-system is
+system is:
@lisp
(define* (unpack #:key source #:allow-other-keys)
@@ -1044,13 +1047,13 @@ working directory."
;; Preserve timestamps (set to the Epoch) on the copied tree so that
;; things work deterministically.
(copy-recursively source "."
- #:keep-mtime? #t))
+ #:keep-mtime? #true))
(begin
(if (string-suffix? ".zip" source)
(invoke "unzip" source)
(invoke "tar" "xvf" source))
(chdir (first-subdirectory "."))))
- #t)
+ #true)
@end lisp
Note the @code{chdir} call: it changes the working directory to where the source was
@@ -1066,16 +1069,16 @@ the following forms:
@itemize
@item
-@code{(add-before PHASE NEW-PHASE PROCEDURE)}: Run @code{PROCEDURE} named @code{NEW-PHASE} before @code{PHASE}.
+@code{(add-before @var{phase} @var{new-phase} @var{procedure})}: Run @var{procedure} named @var{new-phase} before @var{phase}.
@item
-@code{(add-after PHASE NEW-PHASE PROCEDURE)}: Same, but afterwards.
+@code{(add-after @var{phase} @var{new-phase} @var{procedure})}: Same, but afterwards.
@item
-@code{(replace PHASE PROCEDURE)}.
+@code{(replace @var{phase} @var{procedure})}.
@item
-@code{(delete PHASE)}.
+@code{(delete @var{phase})}.
@end itemize
-The @code{PROCEDURE} supports the keyword arguments @code{inputs} and @code{outputs}. Each
+The @var{procedure} supports the keyword arguments @code{inputs} and @code{outputs}. Each
input (whether @emph{native}, @emph{propagated} or not) and output directory is referenced
by their name in those variables. Thus @code{(assoc-ref outputs "out")} is the store
directory of the main output of the package. A phase procedure may look like
@@ -1083,16 +1086,16 @@ this:
@lisp
(lambda* (#:key inputs outputs #:allow-other-keys)
- (let (((bash-directory (assoc-ref inputs "bash"))
- (output-directory (assoc-ref outputs "out"))
- (doc-directory (assoc-ref outputs "doc"))
- ; ...
- #t)
+ (let ((bash-directory (assoc-ref inputs "bash"))
+ (output-directory (assoc-ref outputs "out"))
+ (doc-directory (assoc-ref outputs "doc")))
+ ;; ...
+ #true))
@end lisp
-The procedure must return @code{#t} on success. It's brittle to rely on the return
+The procedure must return @code{#true} on success. It's brittle to rely on the return
value of the last expression used to tweak the phase because there is no
-guarantee it would be a @code{#t}. Hence the trailing @code{#t} to ensure the right value
+guarantee it would be a @code{#true}. Hence the trailing @code{#true} to ensure the right value
is returned on success.
@subsubsection Code staging
@@ -1118,7 +1121,7 @@ Some of those functions can be found in
@samp{$GUIX_CHECKOUT/guix/guix/build/utils.scm}. Most of them mirror the behaviour
of the traditional Unix system commands:
-@table @asis
+@table @code
@item which
Like the @samp{which} system command.
@item find-files
@@ -1142,6 +1145,9 @@ then restore the previous working directory.
A ``@command{sed}-like'' function.
@end table
+@xref{Build Utilities,,, guix, GNU Guix Reference Manual}, for more
+information on these utilities.
+
@subsubsection Module prefix
The license in our last example needs a prefix: this is because of how the
@@ -1352,6 +1358,7 @@ reference.
* Running Guix on a Linode Server:: Running Guix on a Linode Server
* Setting up a bind mount:: Setting up a bind mount in the file-systems definition.
* Getting substitutes from Tor:: Configuring Guix daemon to get substitutes through Tor.
+* Setting up NGINX with Lua:: Configuring NGINX web-server to load Lua modules.
@end menu
@node Customizing the Kernel
@@ -1384,8 +1391,8 @@ creates a package.
#:key
;; A function that takes an arch and a variant.
;; See kernel-config for an example.
- (extra-version #f)
- (configuration-file #f)
+ (extra-version #false)
+ (configuration-file #false)
(defconfig "defconfig")
(extra-options %default-extra-linux-options)
(patches (list %boot-logo-patch)))
@@ -1428,7 +1435,7 @@ the @code{make-linux-libre} package definition:
(begin
(copy-file config ".config")
(chmod ".config" #o666))
- (invoke "make" ,defconfig))
+ (invoke "make" ,defconfig)))
@end lisp
Below is a sample kernel package. The @code{linux-libre} package is nothing
@@ -1459,7 +1466,7 @@ it:
@lisp
(define %default-extra-linux-options
`(;; https://lists.gnu.org/archive/html/guix-devel/2014-04/msg00039.html
- ("CONFIG_DEVPTS_MULTIPLE_INSTANCES" . #t)
+ ("CONFIG_DEVPTS_MULTIPLE_INSTANCES" . #true)
;; Modules required for initrd:
("CONFIG_NET_9P" . m)
("CONFIG_NET_9P_VIRTIO" . m)
@@ -1476,9 +1483,9 @@ it:
(string-join (map (match-lambda
((option . 'm)
(string-append option "=m"))
- ((option . #t)
+ ((option . #true)
(string-append option "=y"))
- ((option . #f)
+ ((option . #false)
(string-append option "=n")))
options)
"\n"))
@@ -1494,7 +1501,7 @@ And in the custom configure script from the `make-linux-libre` package:
(display extra-configuration port)
(close-port port))
-(invoke "make" "oldconfig"))))
+(invoke "make" "oldconfig")
@end lisp
So by not providing a configuration-file the @file{.config} starts blank, and
@@ -1865,7 +1872,7 @@ is below. Save the resulting file as @file{guix-config.scm}.
(bootloader
(bootloader
(inherit grub-bootloader)
- (installer #~(const #t))))))
+ (installer #~(const #true))))))
(file-systems (cons (file-system
(device "/dev/sda")
(mount-point "/")
@@ -1897,7 +1904,7 @@ is below. Save the resulting file as @file{guix-config.scm}.
(service openssh-service-type
(openssh-configuration
(openssh openssh-sans-x)
- (password-authentication? #f)
+ (password-authentication? #false)
(authorized-keys
`(("janedoe" ,(local-file "janedoe_rsa.pub"))
("root" ,(local-file "janedoe_rsa.pub"))))))
@@ -2113,6 +2120,63 @@ sudo herd set-http-proxy guix-daemon http://localhost:9250
guix build --substitute-urls=https://bp7o7ckwlewr4slm.onion …
@end example
+@node Setting up NGINX with Lua
+@section Setting up NGINX with Lua
+@cindex nginx, lua, openresty, resty
+
+NGINX could be extended with Lua scripts.
+
+Guix provides NGINX service with ability to load Lua module and specific
+Lua packages, and reply to requests by evaluating Lua scripts.
+
+The following example demonstrates system definition with configuration
+to evaluate @file{index.lua} Lua script on HTTP request to
+@uref{http://localhost/hello} endpoint:
+
+@example
+local shell = require "resty.shell"
+
+local stdin = ""
+local timeout = 1000 -- ms
+local max_size = 4096 -- byte
+
+local ok, stdout, stderr, reason, status =
+ shell.run([[/run/current-system/profile/bin/ls /tmp]], stdin, timeout, max_size)
+
+ngx.say(stdout)
+@end example
+
+@lisp
+(use-modules (gnu))
+(use-service-modules #;… web)
+(use-package-modules #;… lua)
+(operating-system
+ ;; …
+ (services
+ ;; …
+ (service nginx-service-type
+ (nginx-configuration
+ (modules
+ (list
+ (file-append nginx-lua-module "/etc/nginx/modules/ngx_http_lua_module.so")))
+ (lua-package-path (list lua-resty-core
+ lua-resty-lrucache
+ lua-resty-signal
+ lua-tablepool
+ lua-resty-shell))
+ (lua-package-cpath (list lua-resty-signal))
+ (server-blocks
+ (list (nginx-server-configuration
+ (server-name '("localhost"))
+ (listen '("80"))
+ (root "/etc")
+ (locations (list
+ (nginx-location-configuration
+ (uri "/hello")
+ (body (list #~(format #f "content_by_lua_file ~s;"
+ #$(local-file "index.lua"))))))))))))))
+@end lisp
+
@c *********************************************************************
@node Advanced package management
@chapter Advanced package management
diff --git a/doc/guix.texi b/doc/guix.texi
index 09ce8ae1af..6f4a3ac5cc 100644
--- a/doc/guix.texi
+++ b/doc/guix.texi
@@ -40,7 +40,7 @@ Copyright @copyright{} 2016, 2017, 2018, 2019, 2020 Julien Lepiller@*
Copyright @copyright{} 2016 Alex ter Weele@*
Copyright @copyright{} 2016, 2017, 2018, 2019 Christopher Baines@*
Copyright @copyright{} 2017, 2018, 2019 Clément Lassieur@*
-Copyright @copyright{} 2017, 2018 Mathieu Othacehe@*
+Copyright @copyright{} 2017, 2018, 2020 Mathieu Othacehe@*
Copyright @copyright{} 2017 Federico Beffa@*
Copyright @copyright{} 2017, 2018 Carlo Zancanaro@*
Copyright @copyright{} 2017 Thomas Danckaert@*
@@ -59,7 +59,7 @@ Copyright @copyright{} 2018 Oleg Pykhalov@*
Copyright @copyright{} 2018 Mike Gerwitz@*
Copyright @copyright{} 2018 Pierre-Antoine Rouby@*
Copyright @copyright{} 2018, 2019 Gábor Boskovits@*
-Copyright @copyright{} 2018, 2019 Florian Pelz@*
+Copyright @copyright{} 2018, 2019, 2020 Florian Pelz@*
Copyright @copyright{} 2018 Laura Lazzati@*
Copyright @copyright{} 2018 Alex Vong@*
Copyright @copyright{} 2019 Josh Holland@*
@@ -68,7 +68,7 @@ Copyright @copyright{} 2019 Ivan Petkov@*
Copyright @copyright{} 2019 Jakob L. Kreuze@*
Copyright @copyright{} 2019 Kyle Andrews@*
Copyright @copyright{} 2019 Alex Griffin@*
-Copyright @copyright{} 2019 Guillaume Le Vaillant@*
+Copyright @copyright{} 2019, 2020 Guillaume Le Vaillant@*
Copyright @copyright{} 2020 Leo Prikler@*
Copyright @copyright{} 2019, 2020 Simon Tournier@*
Copyright @copyright{} 2020 Wiktor Żelazny@*
@@ -80,6 +80,7 @@ Copyright @copyright{} 2020 Brice Waegeneire@*
Copyright @copyright{} 2020 R Veera Kumar@*
Copyright @copyright{} 2020 Pierre Langlois@*
Copyright @copyright{} 2020 pinoaffe@*
+Copyright @copyright{} 2020 André Batista@*
Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.3 or
@@ -146,6 +147,7 @@ Project}.
* System Installation:: Installing the whole operating system.
* Getting Started:: Your first steps.
* Package Management:: Package installation, upgrade, etc.
+* Channels:: Customizing the package collection.
* Development:: Guix-aided software development.
* Programming Interface:: Using Guix in Scheme.
* Utilities:: Package management commands.
@@ -178,6 +180,7 @@ Installation
* Setting Up the Daemon:: Preparing the build daemon's environment.
* Invoking guix-daemon:: Running the build daemon.
* Application Setup:: Application-specific setup.
+* Upgrading Guix:: Upgrading Guix and its build daemon.
Setting Up the Daemon
@@ -197,8 +200,6 @@ System Installation
* Installing Guix in a VM:: Guix System playground.
* Building the Installation Image:: How this comes to be.
-Getting Started
-
Manual Installation
* Keyboard Layout and Networking and Partitioning:: Initial setup.
@@ -212,7 +213,6 @@ Package Management
* Packages with Multiple Outputs:: Single source package, multiple outputs.
* Invoking guix gc:: Running the garbage collector.
* Invoking guix pull:: Fetching the latest Guix and distribution.
-* Channels:: Customizing the package collection.
* Invoking guix time-machine:: Running an older revision of Guix.
* Inferiors:: Interacting with another revision of Guix.
* Invoking guix describe:: Display information about your Guix revision.
@@ -227,17 +227,32 @@ Substitutes
* Substitution Failure:: What happens when substitution fails.
* On Trusting Binaries:: How can you trust that binary blob?
+Channels
+
+* Specifying Additional Channels:: Extending the package collection.
+* Using a Custom Guix Channel:: Using a customized Guix.
+* Replicating Guix:: Running the @emph{exact same} Guix.
+* Channel Authentication:: How Guix verifies what it fetches.
+* Creating a Channel:: How to write your custom channel.
+* Package Modules in a Sub-directory:: Specifying the channel's package modules location.
+* Declaring Channel Dependencies:: How to depend on other channels.
+* Specifying Channel Authorizations:: Defining channel authors authorizations.
+* Primary URL:: Distinguishing mirror to original.
+* Writing Channel News:: Communicating information to channel's users.
+
Development
* Invoking guix environment:: Setting up development environments.
* Invoking guix pack:: Creating software bundles.
* The GCC toolchain:: Working with languages supported by GCC.
+* Invoking guix git authenticate:: Authenticating Git repositories.
Programming Interface
* Package Modules:: Packages from the programmer's viewpoint.
* Defining Packages:: Defining new packages.
* Build Systems:: Specifying how packages are built.
+* Build Utilities:: Helpers for your package definitions and more.
* The Store:: Manipulating the package store.
* Derivations:: Low-level interface to package derivations.
* The Store Monad:: Purely functional interface to the store.
@@ -300,6 +315,7 @@ Services
* Scheduled Job Execution:: The mcron service.
* Log Rotation:: The rottlog service.
* Networking Services:: Network setup, SSH daemon, etc.
+* Unattended Upgrades:: Automated system upgrades.
* X Window:: Graphical display.
* Printing Services:: Local and remote printer support.
* Desktop Services:: D-Bus and desktop services.
@@ -310,6 +326,7 @@ Services
* Telephony Services:: Telephony services.
* Monitoring Services:: Monitoring services.
* Kerberos Services:: Kerberos services.
+* LDAP Services:: LDAP services.
* Web Services:: Web servers.
* Certificate Services:: TLS certificates via Let's Encrypt.
* DNS Services:: DNS daemons.
@@ -324,7 +341,7 @@ Services
* PAM Mount Service:: Service to mount volumes when logging in.
* Guix Services:: Services relating specifically to Guix.
* Linux Services:: Services tied to the Linux kernel.
-* Hurd Services:: Services specific to a Hurd System.
+* Hurd Services:: Services specific for a Hurd System.
* Miscellaneous Services:: Other services.
Defining Services
@@ -334,6 +351,11 @@ Defining Services
* Service Reference:: API reference.
* Shepherd Services:: A particular type of service.
+Bootstrapping
+
+* Reduced Binary Seed Bootstrap:: A Bootstrap worthy of GNU.
+* Preparing to Use the Bootstrap Binaries:: Building that what matters most.
+
@end detailmenu
@end menu
@@ -456,10 +478,10 @@ Packages are currently available on the following platforms:
@table @code
@item x86_64-linux
-Intel/AMD @code{x86_64} architecture, Linux-Libre kernel;
+Intel/AMD @code{x86_64} architecture, Linux-Libre kernel.
@item i686-linux
-Intel 32-bit architecture (IA32), Linux-Libre kernel;
+Intel 32-bit architecture (IA32), Linux-Libre kernel.
@item armhf-linux
ARMv7-A architecture with hard float, Thumb-2 and NEON,
@@ -469,6 +491,16 @@ and Linux-Libre kernel.
@item aarch64-linux
little-endian 64-bit ARMv8-A processors, Linux-Libre kernel.
+@item i586-gnu
+@uref{https://hurd.gnu.org, GNU/Hurd} on the Intel 32-bit architecture
+(IA32).
+
+This configuration is experimental and under development. The easiest
+way for you to give it a try is by setting up an instance of
+@code{hurd-vm-service-type} on your GNU/Linux machine
+(@pxref{transparent-emulation-qemu, @code{hurd-vm-service-type}}).
+@xref{Contributing}, on how to help!
+
@item mips64el-linux (deprecated)
little-endian 64-bit MIPS processors, specifically the Loongson series,
n32 ABI, and Linux-Libre kernel. This configuration is no longer fully
@@ -1056,11 +1088,33 @@ is requested, for instance via @code{guix build}, the daemon attempts to
offload it to one of the machines that satisfy the constraints of the
derivation, in particular its system types---e.g., @code{x86_64-linux}.
A single machine can have multiple system types, either because its
-architecture natively supports it, via emulation (@pxref{Transparent
-Emulation with QEMU}), or both. Missing prerequisites for the build are
+architecture natively supports it, via emulation
+(@pxref{transparent-emulation-qemu, Transparent Emulation with QEMU}),
+or both. Missing prerequisites for the build are
copied over SSH to the target machine, which then proceeds with the
build; upon success the output(s) of the build are copied back to the
-initial machine.
+initial machine. The offload facility comes with a basic scheduler that
+attempts to select the best machine. The best machine is chosen among
+the available machines based on criteria such as:
+
+@enumerate
+@item
+The availability of a build slot. A build machine can have as many
+build slots (connections) as the value of the @code{parallel-builds}
+field of its @code{build-machine} object.
+
+@item
+Its relative speed, as defined via the @code{speed} field of its
+@code{build-machine} object.
+
+@item
+Its load. The normalized machine load must be lower than a threshold
+value, configurable via the @code{overload-threshold} field of its
+@code{build-machine} object.
+
+@item
+Disk space availability. More than a 100 MiB must be available.
+@end enumerate
The @file{/etc/guix/machines.scm} file typically looks like this:
@@ -1164,6 +1218,13 @@ when transferring files to and from build machines.
File name of the Unix-domain socket @command{guix-daemon} is listening
to on that machine.
+@item @code{overload-threshold} (default: @code{0.6})
+The load threshold above which a potential offload machine is
+disregarded by the offload scheduler. The value roughly translates to
+the total processor usage of the build machine, ranging from 0.0 (0%) to
+1.0 (100%). It can also be disabled by setting
+@code{overload-threshold} to @code{#f}.
+
@item @code{parallel-builds} (default: @code{1})
The number of builds that may run in parallel on the machine.
@@ -2547,8 +2608,7 @@ The installation image described above was built using the @command{guix
system} command, specifically:
@example
-guix system disk-image --file-system-type=iso9660 \
- gnu/system/install.scm
+guix system disk-image -t iso9660 gnu/system/install.scm
@end example
Have a look at @file{gnu/system/install.scm} in the source tree,
@@ -2804,7 +2864,6 @@ guix install emacs-guix
* Packages with Multiple Outputs:: Single source package, multiple outputs.
* Invoking guix gc:: Running the garbage collector.
* Invoking guix pull:: Fetching the latest Guix and distribution.
-* Channels:: Customizing the package collection.
* Invoking guix time-machine:: Running an older revision of Guix.
* Inferiors:: Interacting with another revision of Guix.
* Invoking guix describe:: Display information about your Guix revision.
@@ -3082,6 +3141,29 @@ in the distribution currently installed. To update your distribution,
you should regularly run @command{guix pull} (@pxref{Invoking guix
pull}).
+@cindex package transformations, upgrades
+When upgrading, package transformations that were originally applied
+when creating the profile are automatically re-applied (@pxref{Package
+Transformation Options}). For example, assume you first installed Emacs
+from the tip of its development branch with:
+
+@example
+guix install emacs-next --with-branch=emacs-next=master
+@end example
+
+Next time you run @command{guix upgrade}, Guix will again pull the tip
+of the Emacs development branch and build @code{emacs-next} from that
+checkout.
+
+Note that transformation options such as @option{--with-branch} and
+@option{--with-source} depend on external state; it is up to you to
+ensure that they work as expected. You can also discard a
+transformations that apply to a package by running:
+
+@example
+guix install @var{package}
+@end example
+
@item --do-not-upgrade[=@var{regexp} @dots{}]
When used together with the @option{--upgrade} option, do @emph{not}
upgrade any packages whose name matches a @var{regexp}. For example, to
@@ -4181,473 +4263,6 @@ information.
In addition, @command{guix pull} supports all the common build options
(@pxref{Common Build Options}).
-@node Channels
-@section Channels
-
-@cindex channels
-@cindex @file{channels.scm}, configuration file
-@cindex configuration file for channels
-@cindex @command{guix pull}, configuration file
-@cindex configuration of @command{guix pull}
-Guix and its package collection are updated by running @command{guix pull}
-(@pxref{Invoking guix pull}). By default @command{guix pull} downloads and
-deploys Guix itself from the official GNU@tie{}Guix repository. This can be
-customized by defining @dfn{channels} in the
-@file{~/.config/guix/channels.scm} file. A channel specifies a URL and branch
-of a Git repository to be deployed, and @command{guix pull} can be instructed
-to pull from one or more channels. In other words, channels can be used
-to @emph{customize} and to @emph{extend} Guix, as we will see below.
-Before that, some security considerations.
-
-@subsection Channel Authentication
-
-@anchor{channel-authentication}
-@cindex authentication, of channel code
-The @command{guix pull} and @command{guix time-machine} commands
-@dfn{authenticate} the code retrieved from channels: they make sure each
-commit that is fetched is signed by an authorized developer. The goal
-is to protect from unauthorized modifications to the channel that would
-lead users to run malicious code.
-
-As a user, you must provide a @dfn{channel introduction} in your
-channels file so that Guix knows how to authenticate its first commit.
-A channel specification, including its introduction, looks something
-along these lines:
-
-@lisp
-(channel
- (name 'my-channel)
- (url "https://example.org/my-channel.git")
- (introduction
- (make-channel-introduction
- "6f0d8cc0d88abb59c324b2990bfee2876016bb86"
- (openpgp-fingerprint
- "CABB A931 C0FF EEC6 900D 0CFB 090B 1199 3D9A EBB5"))))
-@end lisp
-
-The specification above shows the name and URL of the channel. The call
-to @code{make-channel-introduction} above specifies that authentication
-of this channel starts at commit @code{6f0d8cc@dots{}}, which is signed
-by the OpenPGP key with fingerprint @code{CABB A931@dots{}}.
-
-For the main channel, called @code{guix}, you automatically get that
-information from your Guix installation. For other channels, include
-the channel introduction provided by the channel authors in your
-@file{channels.scm} file. Make sure you retrieve the channel
-introduction from a trusted source since that is the root of your trust.
-
-If you're curious about the authentication mechanics, read on!
-
-@subsection Using a Custom Guix Channel
-
-The channel called @code{guix} specifies where Guix itself---its command-line
-tools as well as its package collection---should be downloaded. For instance,
-suppose you want to update from your own copy of the Guix repository at
-@code{example.org}, and specifically the @code{super-hacks} branch, you can
-write in @code{~/.config/guix/channels.scm} this specification:
-
-@lisp
-;; Tell 'guix pull' to use my own repo.
-(list (channel
- (name 'guix)
- (url "https://example.org/my-guix.git")
- (branch "super-hacks")))
-@end lisp
-
-@noindent
-From there on, @command{guix pull} will fetch code from the @code{super-hacks}
-branch of the repository at @code{example.org}.
-
-@subsection Specifying Additional Channels
-
-@cindex extending the package collection (channels)
-@cindex personal packages (channels)
-@cindex channels, for personal packages
-You can also specify @emph{additional channels} to pull from. Let's say you
-have a bunch of custom package variants or personal packages that you think
-would make little sense to contribute to the Guix project, but would like to
-have these packages transparently available to you at the command line. You
-would first write modules containing those package definitions (@pxref{Package
-Modules}), maintain them in a Git repository, and then you and anyone else can
-use it as an additional channel to get packages from. Neat, no?
-
-@c What follows stems from discussions at
-@c <https://debbugs.gnu.org/cgi/bugreport.cgi?bug=22629#134> as well as
-@c earlier discussions on guix-devel@gnu.org.
-@quotation Warning
-Before you, dear user, shout---``woow this is @emph{soooo coool}!''---and
-publish your personal channel to the world, we would like to share a few words
-of caution:
-
-@itemize
-@item
-Before publishing a channel, please consider contributing your package
-definitions to Guix proper (@pxref{Contributing}). Guix as a project is open
-to free software of all sorts, and packages in Guix proper are readily
-available to all Guix users and benefit from the project's quality assurance
-process.
-
-@item
-When you maintain package definitions outside Guix, we, Guix developers,
-consider that @emph{the compatibility burden is on you}. Remember that
-package modules and package definitions are just Scheme code that uses various
-programming interfaces (APIs). We want to remain free to change these APIs to
-keep improving Guix, possibly in ways that break your channel. We never
-change APIs gratuitously, but we will @emph{not} commit to freezing APIs
-either.
-
-@item
-Corollary: if you're using an external channel and that channel breaks, please
-@emph{report the issue to the channel authors}, not to the Guix project.
-@end itemize
-
-You've been warned! Having said this, we believe external channels are a
-practical way to exert your freedom to augment Guix' package collection and to
-share your improvements, which are basic tenets of
-@uref{https://www.gnu.org/philosophy/free-sw.html, free software}. Please
-email us at @email{guix-devel@@gnu.org} if you'd like to discuss this.
-@end quotation
-
-To use a channel, write @code{~/.config/guix/channels.scm} to instruct
-@command{guix pull} to pull from it @emph{in addition} to the default Guix
-channel(s):
-
-@vindex %default-channels
-@lisp
-;; Add my personal packages to those Guix provides.
-(cons (channel
- (name 'my-personal-packages)
- (url "https://example.org/personal-packages.git"))
- %default-channels)
-@end lisp
-
-@noindent
-Note that the snippet above is (as always!)@: Scheme code; we use @code{cons} to
-add a channel the list of channels that the variable @code{%default-channels}
-is bound to (@pxref{Pairs, @code{cons} and lists,, guile, GNU Guile Reference
-Manual}). With this file in place, @command{guix pull} builds not only Guix
-but also the package modules from your own repository. The result in
-@file{~/.config/guix/current} is the union of Guix with your own package
-modules:
-
-@example
-$ guix pull --list-generations
-@dots{}
-Generation 19 Aug 27 2018 16:20:48
- guix d894ab8
- repository URL: https://git.savannah.gnu.org/git/guix.git
- branch: master
- commit: d894ab8e9bfabcefa6c49d9ba2e834dd5a73a300
- my-personal-packages dd3df5e
- repository URL: https://example.org/personal-packages.git
- branch: master
- commit: dd3df5e2c8818760a8fc0bd699e55d3b69fef2bb
- 11 new packages: my-gimp, my-emacs-with-cool-features, @dots{}
- 4 packages upgraded: emacs-racket-mode@@0.0.2-2.1b78827, @dots{}
-@end example
-
-@noindent
-The output of @command{guix pull} above shows that Generation@tie{}19 includes
-both Guix and packages from the @code{my-personal-packages} channel. Among
-the new and upgraded packages that are listed, some like @code{my-gimp} and
-@code{my-emacs-with-cool-features} might come from
-@code{my-personal-packages}, while others come from the Guix default channel.
-
-To create a channel, create a Git repository containing your own package
-modules and make it available. The repository can contain anything, but a
-useful channel will contain Guile modules that export packages. Once you
-start using a channel, Guix will behave as if the root directory of that
-channel's Git repository has been added to the Guile load path (@pxref{Load
-Paths,,, guile, GNU Guile Reference Manual}). For example, if your channel
-contains a file at @file{my-packages/my-tools.scm} that defines a Guile
-module, then the module will be available under the name @code{(my-packages
-my-tools)}, and you will be able to use it like any other module
-(@pxref{Modules,,, guile, GNU Guile Reference Manual}).
-
-@cindex dependencies, channels
-@cindex meta-data, channels
-@subsection Declaring Channel Dependencies
-
-Channel authors may decide to augment a package collection provided by other
-channels. They can declare their channel to be dependent on other channels in
-a meta-data file @file{.guix-channel}, which is to be placed in the root of
-the channel repository.
-
-The meta-data file should contain a simple S-expression like this:
-
-@lisp
-(channel
- (version 0)
- (dependencies
- (channel
- (name some-collection)
- (url "https://example.org/first-collection.git")
-
- ;; The 'introduction' bit below is optional: you would
- ;; provide it for dependencies that can be authenticated.
- (introduction
- (channel-introduction
- (version 0)
- (commit "a8883b58dc82e167c96506cf05095f37c2c2c6cd")
- (signer "CABB A931 C0FF EEC6 900D 0CFB 090B 1199 3D9A EBB5"))))
- (channel
- (name some-other-collection)
- (url "https://example.org/second-collection.git")
- (branch "testing"))))
-@end lisp
-
-In the above example this channel is declared to depend on two other channels,
-which will both be fetched automatically. The modules provided by the channel
-will be compiled in an environment where the modules of all these declared
-channels are available.
-
-For the sake of reliability and maintainability, you should avoid dependencies
-on channels that you don't control, and you should aim to keep the number of
-dependencies to a minimum.
-
-@cindex subdirectory, channels
-@subsection Package Modules in a Sub-directory
-
-As a channel author, you may want to keep your channel modules in a
-sub-directory. If your modules are in the sub-directory @file{guix}, you must
-add a meta-data file @file{.guix-channel} that contains:
-
-@lisp
-(channel
- (version 0)
- (directory "guix"))
-@end lisp
-
-@cindex channel authorizations
-@subsection Specifying Channel Authorizations
-
-@anchor{channel-authorizations}
-As we saw above, Guix ensures the source code it pulls from channels
-comes from authorized developers. As a channel author, you need to
-specify the list of authorized developers in the
-@file{.guix-authorizations} file in the channel's Git repository. The
-authentication rule is simple: each commit must be signed by a key
-listed in the @file{.guix-authorizations} file of its parent
-commit(s)@footnote{Git commits form a @dfn{directed acyclic graph}
-(DAG). Each commit can have zero or more parents; ``regular'' commits
-have one parent and merge commits have two parent commits. Read
-@uref{https://eagain.net/articles/git-for-computer-scientists/, @i{Git
-for Computer Scientists}} for a great overview.} The
-@file{.guix-authorizations} file looks like this:
-
-@lisp
-;; Example '.guix-authorizations' file.
-
-(authorizations
- (version 0) ;current file format version
-
- (("AD17 A21E F8AE D8F1 CC02 DBD9 F8AE D8F1 765C 61E3"
- (name "alice"))
- ("2A39 3FFF 68F4 EF7A 3D29 12AF 68F4 EF7A 22FB B2D5"
- (name "bob"))
- ("CABB A931 C0FF EEC6 900D 0CFB 090B 1199 3D9A EBB5"
- (name "charlie"))))
-@end lisp
-
-Each fingerprint is followed by optional key/value pairs, as in the
-example above. Currently these key/value pairs are ignored.
-
-This authentication rule creates a chicken-and-egg issue: how do we
-authenticate the first commit? Related to that: how do we deal with
-channels whose repository history contains unsigned commits and lack
-@file{.guix-authorizations}? And how do we fork existing channels?
-
-@cindex channel introduction
-Channel introductions answer these questions by describing the first
-commit of a channel that should be authenticated. The first time a
-channel is fetched with @command{guix pull} or @command{guix
-time-machine}, the command looks up the introductory commit and verifies
-that it is signed by the specified OpenPGP key. From then on, it
-authenticates commits according to the rule above.
-
-Additionally, your channel must provide all the OpenPGP keys that were
-ever mentioned in @file{.guix-authorizations}, stored as @file{.key}
-files, which can be either binary or ``ASCII-armored''. By default,
-those @file{.key} files are searched for in the branch named
-@code{keyring} but you can specify a different branch name in
-@code{.guix-channel} like so:
-
-@lisp
-(channel
- (version 0)
- (keyring-reference "my-keyring-branch"))
-@end lisp
-
-To summarize, as the author of a channel, there are three things you have
-to do to allow users to authenticate your code:
-
-@enumerate
-@item
-Export the OpenPGP keys of past and present committers with @command{gpg
---export} and store them in @file{.key} files, by default in a branch
-named @code{keyring} (we recommend making it an @dfn{orphan branch}).
-
-@item
-Introduce an initial @file{.guix-authorizations} in the channel's
-repository. Do that in a signed commit (@pxref{Commit Access}, for
-information on how to sign Git commits.)
-
-@item
-Advertise the channel introduction, for instance on your channel's web
-page. The channel introduction, as we saw above, is the commit/key
-pair---i.e., the commit that introduced @file{.guix-authorizations}, and
-the fingerprint of the OpenPGP used to sign it.
-@end enumerate
-
-Before pushing to your public Git repository, you can run @command{guix
-git-authenticate} to verify that you did sign all the commits you are
-about to push with an authorized key:
-
-@example
-guix git authenticate @var{commit} @var{signer}
-@end example
-
-@noindent
-where @var{commit} and @var{signer} are your channel introduction.
-@xref{Invoking guix git authenticate}, for details.
-
-Publishing a signed channel requires discipline: any mistake, such as an
-unsigned commit or a commit signed by an unauthorized key, will prevent
-users from pulling from your channel---well, that's the whole point of
-authentication! Pay attention to merges in particular: merge commits
-are considered authentic if and only if they are signed by a key present
-in the @file{.guix-authorizations} file of @emph{both} branches.
-
-@cindex primary URL, channels
-@subsection Primary URL
-
-Channel authors can indicate the primary URL of their channel's Git
-repository in the @file{.guix-channel} file, like so:
-
-@lisp
-(channel
- (version 0)
- (url "https://example.org/guix.git"))
-@end lisp
-
-This allows @command{guix pull} to determine whether it is pulling code
-from a mirror of the channel; when that is the case, it warns the user
-that the mirror might be stale and displays the primary URL. That way,
-users cannot be tricked into fetching code from a stale mirror that does
-not receive security updates.
-
-This feature only makes sense for authenticated repositories, such as
-the official @code{guix} channel, for which @command{guix pull} ensures
-the code it fetches is authentic.
-
-@cindex news, for channels
-@subsection Writing Channel News
-
-Channel authors may occasionally want to communicate to their users
-information about important changes in the channel. You'd send them all
-an email, but that's not convenient.
-
-Instead, channels can provide a @dfn{news file}; when the channel users
-run @command{guix pull}, that news file is automatically read and
-@command{guix pull --news} can display the announcements that correspond
-to the new commits that have been pulled, if any.
-
-To do that, channel authors must first declare the name of the news file
-in their @file{.guix-channel} file:
-
-@lisp
-(channel
- (version 0)
- (news-file "etc/news.txt"))
-@end lisp
-
-The news file itself, @file{etc/news.txt} in this example, must look
-something like this:
-
-@lisp
-(channel-news
- (version 0)
- (entry (tag "the-bug-fix")
- (title (en "Fixed terrible bug")
- (fr "Oh la la"))
- (body (en "@@emph@{Good news@}! It's fixed!")
- (eo "Certe ĝi pli bone funkcias nun!")))
- (entry (commit "bdcabe815cd28144a2d2b4bc3c5057b051fa9906")
- (title (en "Added a great package")
- (ca "Què vol dir guix?"))
- (body (en "Don't miss the @@code@{hello@} package!"))))
-@end lisp
-
-While the news file is using the Scheme syntax, avoid naming it with a
-@file{.scm} extension or else it will get picked up when building the
-channel and yield an error since it is not a valid module.
-Alternatively, you can move the channel module to a subdirectory and
-store the news file in another directory.
-
-The file consists of a list of @dfn{news entries}. Each entry is
-associated with a commit or tag: it describes changes made in this
-commit, possibly in preceding commits as well. Users see entries only
-the first time they obtain the commit the entry refers to.
-
-The @code{title} field should be a one-line summary while @code{body}
-can be arbitrarily long, and both can contain Texinfo markup
-(@pxref{Overview,,, texinfo, GNU Texinfo}). Both the title and body are
-a list of language tag/message tuples, which allows @command{guix pull}
-to display news in the language that corresponds to the user's locale.
-
-If you want to translate news using a gettext-based workflow, you can
-extract translatable strings with @command{xgettext} (@pxref{xgettext
-Invocation,,, gettext, GNU Gettext Utilities}). For example, assuming
-you write news entries in English first, the command below creates a PO
-file containing the strings to translate:
-
-@example
-xgettext -o news.po -l scheme -ken etc/news.txt
-@end example
-
-To sum up, yes, you could use your channel as a blog. But beware, this
-is @emph{not quite} what your users might expect.
-
-@subsection Replicating Guix
-
-@cindex pinning, channels
-@cindex replicating Guix
-@cindex reproducibility, of Guix
-The @command{guix pull --list-generations} output above shows precisely which
-commits were used to build this instance of Guix. We can thus replicate it,
-say, on another machine, by providing a channel specification in
-@file{~/.config/guix/channels.scm} that is ``pinned'' to these commits:
-
-@lisp
-;; Deploy specific commits of my channels of interest.
-(list (channel
- (name 'guix)
- (url "https://git.savannah.gnu.org/git/guix.git")
- (commit "6298c3ffd9654d3231a6f25390b056483e8f407c"))
- (channel
- (name 'my-personal-packages)
- (url "https://example.org/personal-packages.git")
- (commit "dd3df5e2c8818760a8fc0bd699e55d3b69fef2bb")))
-@end lisp
-
-The @command{guix describe --format=channels} command can even generate this
-list of channels directly (@pxref{Invoking guix describe}). The resulting
-file can be used with the -C options of @command{guix pull}
-(@pxref{Invoking guix pull}) or @command{guix time-machine}
-(@pxref{Invoking guix time-machine}).
-
-At this point the two machines run the @emph{exact same Guix}, with access to
-the @emph{exact same packages}. The output of @command{guix build gimp} on
-one machine will be exactly the same, bit for bit, as the output of the same
-command on the other machine. It also means both machines have access to all
-the source code of Guix and, transitively, to all the source code of every
-package it defines.
-
-This gives you super powers, allowing you to track the provenance of binary
-artifacts with very fine grain, and to reproduce software environments at
-will---some sort of ``meta reproducibility'' capabilities, if you will.
-@xref{Inferiors}, for another way to take advantage of these super powers.
-
@node Invoking guix time-machine
@section Invoking @command{guix time-machine}
@@ -5047,9 +4662,11 @@ the store.
@item --generate-key[=@var{parameters}]
@cindex signing, archives
Generate a new key pair for the daemon. This is a prerequisite before
-archives can be exported with @option{--export}. Note that this
-operation usually takes time, because it needs to gather enough entropy
-to generate the key pair.
+archives can be exported with @option{--export}. This
+operation is usually instantaneous but it can take time if the system's
+entropy pool needs to be refilled. On Guix System,
+@code{guix-service-type} takes care of generating this key pair the
+first boot.
The generated key pair is typically stored under @file{/etc/guix}, in
@file{signing-key.pub} (public key) and @file{signing-key.sec} (private
@@ -5113,6 +4730,508 @@ $ wget -O - \
@end table
+@c *********************************************************************
+@node Channels
+@chapter Channels
+
+@cindex channels
+@cindex @file{channels.scm}, configuration file
+@cindex configuration file for channels
+@cindex @command{guix pull}, configuration file
+@cindex configuration of @command{guix pull}
+Guix and its package collection are updated by running @command{guix pull}
+(@pxref{Invoking guix pull}). By default @command{guix pull} downloads and
+deploys Guix itself from the official GNU@tie{}Guix repository. This can be
+customized by defining @dfn{channels} in the
+@file{~/.config/guix/channels.scm} file. A channel specifies a URL and branch
+of a Git repository to be deployed, and @command{guix pull} can be instructed
+to pull from one or more channels. In other words, channels can be used
+to @emph{customize} and to @emph{extend} Guix, as we will see below.
+Guix is able to take into account security concerns and deal with authenticated
+updates.
+
+@menu
+* Specifying Additional Channels:: Extending the package collection.
+* Using a Custom Guix Channel:: Using a customized Guix.
+* Replicating Guix:: Running the @emph{exact same} Guix.
+* Channel Authentication:: How Guix verifies what it fetches.
+* Creating a Channel:: How to write your custom channel.
+* Package Modules in a Sub-directory:: Specifying the channel's package modules location.
+* Declaring Channel Dependencies:: How to depend on other channels.
+* Specifying Channel Authorizations:: Defining channel authors authorizations.
+* Primary URL:: Distinguishing mirror to original.
+* Writing Channel News:: Communicating information to channel's users.
+@end menu
+
+@node Specifying Additional Channels
+@section Specifying Additional Channels
+
+@cindex extending the package collection (channels)
+@cindex variant packages (channels)
+You can specify @emph{additional channels} to pull from. To use a channel, write
+@code{~/.config/guix/channels.scm} to instruct @command{guix pull} to pull from it
+@emph{in addition} to the default Guix channel(s):
+
+@vindex %default-channels
+@lisp
+;; Add variant packages to those Guix provides.
+(cons (channel
+ (name 'variant-packages)
+ (url "https://example.org/variant-packages.git"))
+ %default-channels)
+@end lisp
+
+@noindent
+Note that the snippet above is (as always!)@: Scheme code; we use @code{cons} to
+add a channel the list of channels that the variable @code{%default-channels}
+is bound to (@pxref{Pairs, @code{cons} and lists,, guile, GNU Guile Reference
+Manual}). With this file in place, @command{guix pull} builds not only Guix
+but also the package modules from your own repository. The result in
+@file{~/.config/guix/current} is the union of Guix with your own package
+modules:
+
+@example
+$ guix pull --list-generations
+@dots{}
+Generation 19 Aug 27 2018 16:20:48
+ guix d894ab8
+ repository URL: https://git.savannah.gnu.org/git/guix.git
+ branch: master
+ commit: d894ab8e9bfabcefa6c49d9ba2e834dd5a73a300
+ variant-packages dd3df5e
+ repository URL: https://example.org/variant-packages.git
+ branch: master
+ commit: dd3df5e2c8818760a8fc0bd699e55d3b69fef2bb
+ 11 new packages: variant-gimp, variant-emacs-with-cool-features, @dots{}
+ 4 packages upgraded: emacs-racket-mode@@0.0.2-2.1b78827, @dots{}
+@end example
+
+@noindent
+The output of @command{guix pull} above shows that Generation@tie{}19 includes
+both Guix and packages from the @code{variant-personal-packages} channel. Among
+the new and upgraded packages that are listed, some like @code{variant-gimp} and
+@code{variant-emacs-with-cool-features} might come from
+@code{variant-packages}, while others come from the Guix default channel.
+
+@node Using a Custom Guix Channel
+@section Using a Custom Guix Channel
+
+The channel called @code{guix} specifies where Guix itself---its command-line
+tools as well as its package collection---should be downloaded. For instance,
+suppose you want to update from another copy of the Guix repository at
+@code{example.org}, and specifically the @code{super-hacks} branch, you can
+write in @code{~/.config/guix/channels.scm} this specification:
+
+@lisp
+;; Tell 'guix pull' to use another repo.
+(list (channel
+ (name 'guix)
+ (url "https://example.org/another-guix.git")
+ (branch "super-hacks")))
+@end lisp
+
+@noindent
+From there on, @command{guix pull} will fetch code from the @code{super-hacks}
+branch of the repository at @code{example.org}. The authentication concern is
+addressed below ((@pxref{Channel Authentication}).
+
+@node Replicating Guix
+@section Replicating Guix
+
+@cindex pinning, channels
+@cindex replicating Guix
+@cindex reproducibility, of Guix
+The @command{guix pull --list-generations} output above shows precisely which
+commits were used to build this instance of Guix. We can thus replicate it,
+say, on another machine, by providing a channel specification in
+@file{~/.config/guix/channels.scm} that is ``pinned'' to these commits:
+
+@lisp
+;; Deploy specific commits of my channels of interest.
+(list (channel
+ (name 'guix)
+ (url "https://git.savannah.gnu.org/git/guix.git")
+ (commit "6298c3ffd9654d3231a6f25390b056483e8f407c"))
+ (channel
+ (name 'variant-packages)
+ (url "https://example.org/variant-packages.git")
+ (commit "dd3df5e2c8818760a8fc0bd699e55d3b69fef2bb")))
+@end lisp
+
+The @command{guix describe --format=channels} command can even generate this
+list of channels directly (@pxref{Invoking guix describe}). The resulting
+file can be used with the -C options of @command{guix pull}
+(@pxref{Invoking guix pull}) or @command{guix time-machine}
+(@pxref{Invoking guix time-machine}).
+
+At this point the two machines run the @emph{exact same Guix}, with access to
+the @emph{exact same packages}. The output of @command{guix build gimp} on
+one machine will be exactly the same, bit for bit, as the output of the same
+command on the other machine. It also means both machines have access to all
+the source code of Guix and, transitively, to all the source code of every
+package it defines.
+
+This gives you super powers, allowing you to track the provenance of binary
+artifacts with very fine grain, and to reproduce software environments at
+will---some sort of ``meta reproducibility'' capabilities, if you will.
+@xref{Inferiors}, for another way to take advantage of these super powers.
+
+@node Channel Authentication
+@section Channel Authentication
+
+@anchor{channel-authentication}
+@cindex authentication, of channel code
+The @command{guix pull} and @command{guix time-machine} commands
+@dfn{authenticate} the code retrieved from channels: they make sure each
+commit that is fetched is signed by an authorized developer. The goal
+is to protect from unauthorized modifications to the channel that would
+lead users to run malicious code.
+
+As a user, you must provide a @dfn{channel introduction} in your
+channels file so that Guix knows how to authenticate its first commit.
+A channel specification, including its introduction, looks something
+along these lines:
+
+@lisp
+(channel
+ (name 'some-channel)
+ (url "https://example.org/some-channel.git")
+ (introduction
+ (make-channel-introduction
+ "6f0d8cc0d88abb59c324b2990bfee2876016bb86"
+ (openpgp-fingerprint
+ "CABB A931 C0FF EEC6 900D 0CFB 090B 1199 3D9A EBB5"))))
+@end lisp
+
+The specification above shows the name and URL of the channel. The call
+to @code{make-channel-introduction} above specifies that authentication
+of this channel starts at commit @code{6f0d8cc@dots{}}, which is signed
+by the OpenPGP key with fingerprint @code{CABB A931@dots{}}.
+
+For the main channel, called @code{guix}, you automatically get that
+information from your Guix installation. For other channels, include
+the channel introduction provided by the channel authors in your
+@file{channels.scm} file. Make sure you retrieve the channel
+introduction from a trusted source since that is the root of your trust.
+
+If you're curious about the authentication mechanics, read on!
+
+@node Creating a Channel
+@section Creating a Channel
+
+@cindex personal packages (channels)
+@cindex channels, for personal packages
+Let's say you have a bunch of custom package variants or personal packages
+that you think would make little sense to contribute to the Guix project, but
+would like to have these packages transparently available to you at the
+command line. You would first write modules containing those package
+definitions (@pxref{Package Modules}), maintain them in a Git repository, and
+then you and anyone else can use it as an additional channel to get packages
+from. Neat, no?
+
+@c What follows stems from discussions at
+@c <https://debbugs.gnu.org/cgi/bugreport.cgi?bug=22629#134> as well as
+@c earlier discussions on guix-devel@gnu.org.
+@quotation Warning
+Before you, dear user, shout---``woow this is @emph{soooo coool}!''---and
+publish your personal channel to the world, we would like to share a few words
+of caution:
+
+@itemize
+@item
+Before publishing a channel, please consider contributing your package
+definitions to Guix proper (@pxref{Contributing}). Guix as a project is open
+to free software of all sorts, and packages in Guix proper are readily
+available to all Guix users and benefit from the project's quality assurance
+process.
+
+@item
+When you maintain package definitions outside Guix, we, Guix developers,
+consider that @emph{the compatibility burden is on you}. Remember that
+package modules and package definitions are just Scheme code that uses various
+programming interfaces (APIs). We want to remain free to change these APIs to
+keep improving Guix, possibly in ways that break your channel. We never
+change APIs gratuitously, but we will @emph{not} commit to freezing APIs
+either.
+
+@item
+Corollary: if you're using an external channel and that channel breaks, please
+@emph{report the issue to the channel authors}, not to the Guix project.
+@end itemize
+
+You've been warned! Having said this, we believe external channels are a
+practical way to exert your freedom to augment Guix' package collection and to
+share your improvements, which are basic tenets of
+@uref{https://www.gnu.org/philosophy/free-sw.html, free software}. Please
+email us at @email{guix-devel@@gnu.org} if you'd like to discuss this.
+@end quotation
+
+To create a channel, create a Git repository containing your own package
+modules and make it available. The repository can contain anything, but a
+useful channel will contain Guile modules that export packages. Once you
+start using a channel, Guix will behave as if the root directory of that
+channel's Git repository has been added to the Guile load path (@pxref{Load
+Paths,,, guile, GNU Guile Reference Manual}). For example, if your channel
+contains a file at @file{my-packages/my-tools.scm} that defines a Guile
+module, then the module will be available under the name @code{(my-packages
+my-tools)}, and you will be able to use it like any other module
+(@pxref{Modules,,, guile, GNU Guile Reference Manual}).
+
+As a channel author, consider bundling authentication material with your
+channel so that users can authenticate it. @xref{Channel
+Authentication}, and @ref{Specifying Channel Authorizations}, for info
+on how to do it.
+
+
+@node Package Modules in a Sub-directory
+@section Package Modules in a Sub-directory
+
+@cindex subdirectory, channels
+As a channel author, you may want to keep your channel modules in a
+sub-directory. If your modules are in the sub-directory @file{guix}, you must
+add a meta-data file @file{.guix-channel} that contains:
+
+@lisp
+(channel
+ (version 0)
+ (directory "guix"))
+@end lisp
+
+@node Declaring Channel Dependencies
+@section Declaring Channel Dependencies
+
+@cindex dependencies, channels
+@cindex meta-data, channels
+Channel authors may decide to augment a package collection provided by other
+channels. They can declare their channel to be dependent on other channels in
+a meta-data file @file{.guix-channel}, which is to be placed in the root of
+the channel repository.
+
+The meta-data file should contain a simple S-expression like this:
+
+@lisp
+(channel
+ (version 0)
+ (dependencies
+ (channel
+ (name 'some-collection)
+ (url "https://example.org/first-collection.git")
+
+ ;; The 'introduction' bit below is optional: you would
+ ;; provide it for dependencies that can be authenticated.
+ (introduction
+ (channel-introduction
+ (version 0)
+ (commit "a8883b58dc82e167c96506cf05095f37c2c2c6cd")
+ (signer "CABB A931 C0FF EEC6 900D 0CFB 090B 1199 3D9A EBB5"))))
+ (channel
+ (name 'some-other-collection)
+ (url "https://example.org/second-collection.git")
+ (branch "testing"))))
+@end lisp
+
+In the above example this channel is declared to depend on two other channels,
+which will both be fetched automatically. The modules provided by the channel
+will be compiled in an environment where the modules of all these declared
+channels are available.
+
+For the sake of reliability and maintainability, you should avoid dependencies
+on channels that you don't control, and you should aim to keep the number of
+dependencies to a minimum.
+
+@node Specifying Channel Authorizations
+@section Specifying Channel Authorizations
+
+@cindex channel authorizations
+@anchor{channel-authorizations}
+As we saw above, Guix ensures the source code it pulls from channels
+comes from authorized developers. As a channel author, you need to
+specify the list of authorized developers in the
+@file{.guix-authorizations} file in the channel's Git repository. The
+authentication rule is simple: each commit must be signed by a key
+listed in the @file{.guix-authorizations} file of its parent
+commit(s)@footnote{Git commits form a @dfn{directed acyclic graph}
+(DAG). Each commit can have zero or more parents; ``regular'' commits
+have one parent and merge commits have two parent commits. Read
+@uref{https://eagain.net/articles/git-for-computer-scientists/, @i{Git
+for Computer Scientists}} for a great overview.} The
+@file{.guix-authorizations} file looks like this:
+
+@lisp
+;; Example '.guix-authorizations' file.
+
+(authorizations
+ (version 0) ;current file format version
+
+ (("AD17 A21E F8AE D8F1 CC02 DBD9 F8AE D8F1 765C 61E3"
+ (name "alice"))
+ ("2A39 3FFF 68F4 EF7A 3D29 12AF 68F4 EF7A 22FB B2D5"
+ (name "bob"))
+ ("CABB A931 C0FF EEC6 900D 0CFB 090B 1199 3D9A EBB5"
+ (name "charlie"))))
+@end lisp
+
+Each fingerprint is followed by optional key/value pairs, as in the
+example above. Currently these key/value pairs are ignored.
+
+This authentication rule creates a chicken-and-egg issue: how do we
+authenticate the first commit? Related to that: how do we deal with
+channels whose repository history contains unsigned commits and lack
+@file{.guix-authorizations}? And how do we fork existing channels?
+
+@cindex channel introduction
+Channel introductions answer these questions by describing the first
+commit of a channel that should be authenticated. The first time a
+channel is fetched with @command{guix pull} or @command{guix
+time-machine}, the command looks up the introductory commit and verifies
+that it is signed by the specified OpenPGP key. From then on, it
+authenticates commits according to the rule above.
+
+Additionally, your channel must provide all the OpenPGP keys that were
+ever mentioned in @file{.guix-authorizations}, stored as @file{.key}
+files, which can be either binary or ``ASCII-armored''. By default,
+those @file{.key} files are searched for in the branch named
+@code{keyring} but you can specify a different branch name in
+@code{.guix-channel} like so:
+
+@lisp
+(channel
+ (version 0)
+ (keyring-reference "my-keyring-branch"))
+@end lisp
+
+To summarize, as the author of a channel, there are three things you have
+to do to allow users to authenticate your code:
+
+@enumerate
+@item
+Export the OpenPGP keys of past and present committers with @command{gpg
+--export} and store them in @file{.key} files, by default in a branch
+named @code{keyring} (we recommend making it an @dfn{orphan branch}).
+
+@item
+Introduce an initial @file{.guix-authorizations} in the channel's
+repository. Do that in a signed commit (@pxref{Commit Access}, for
+information on how to sign Git commits.)
+
+@item
+Advertise the channel introduction, for instance on your channel's web
+page. The channel introduction, as we saw above, is the commit/key
+pair---i.e., the commit that introduced @file{.guix-authorizations}, and
+the fingerprint of the OpenPGP used to sign it.
+@end enumerate
+
+Before pushing to your public Git repository, you can run @command{guix
+git-authenticate} to verify that you did sign all the commits you are
+about to push with an authorized key:
+
+@example
+guix git authenticate @var{commit} @var{signer}
+@end example
+
+@noindent
+where @var{commit} and @var{signer} are your channel introduction.
+@xref{Invoking guix git authenticate}, for details.
+
+Publishing a signed channel requires discipline: any mistake, such as an
+unsigned commit or a commit signed by an unauthorized key, will prevent
+users from pulling from your channel---well, that's the whole point of
+authentication! Pay attention to merges in particular: merge commits
+are considered authentic if and only if they are signed by a key present
+in the @file{.guix-authorizations} file of @emph{both} branches.
+
+@node Primary URL
+@section Primary URL
+
+@cindex primary URL, channels
+Channel authors can indicate the primary URL of their channel's Git
+repository in the @file{.guix-channel} file, like so:
+
+@lisp
+(channel
+ (version 0)
+ (url "https://example.org/guix.git"))
+@end lisp
+
+This allows @command{guix pull} to determine whether it is pulling code
+from a mirror of the channel; when that is the case, it warns the user
+that the mirror might be stale and displays the primary URL. That way,
+users cannot be tricked into fetching code from a stale mirror that does
+not receive security updates.
+
+This feature only makes sense for authenticated repositories, such as
+the official @code{guix} channel, for which @command{guix pull} ensures
+the code it fetches is authentic.
+
+@node Writing Channel News
+@section Writing Channel News
+
+@cindex news, for channels
+Channel authors may occasionally want to communicate to their users
+information about important changes in the channel. You'd send them all
+an email, but that's not convenient.
+
+Instead, channels can provide a @dfn{news file}; when the channel users
+run @command{guix pull}, that news file is automatically read and
+@command{guix pull --news} can display the announcements that correspond
+to the new commits that have been pulled, if any.
+
+To do that, channel authors must first declare the name of the news file
+in their @file{.guix-channel} file:
+
+@lisp
+(channel
+ (version 0)
+ (news-file "etc/news.txt"))
+@end lisp
+
+The news file itself, @file{etc/news.txt} in this example, must look
+something like this:
+
+@lisp
+(channel-news
+ (version 0)
+ (entry (tag "the-bug-fix")
+ (title (en "Fixed terrible bug")
+ (fr "Oh la la"))
+ (body (en "@@emph@{Good news@}! It's fixed!")
+ (eo "Certe ĝi pli bone funkcias nun!")))
+ (entry (commit "bdcabe815cd28144a2d2b4bc3c5057b051fa9906")
+ (title (en "Added a great package")
+ (ca "Què vol dir guix?"))
+ (body (en "Don't miss the @@code@{hello@} package!"))))
+@end lisp
+
+While the news file is using the Scheme syntax, avoid naming it with a
+@file{.scm} extension or else it will get picked up when building the
+channel and yield an error since it is not a valid module.
+Alternatively, you can move the channel module to a subdirectory and
+store the news file in another directory.
+
+The file consists of a list of @dfn{news entries}. Each entry is
+associated with a commit or tag: it describes changes made in this
+commit, possibly in preceding commits as well. Users see entries only
+the first time they obtain the commit the entry refers to.
+
+The @code{title} field should be a one-line summary while @code{body}
+can be arbitrarily long, and both can contain Texinfo markup
+(@pxref{Overview,,, texinfo, GNU Texinfo}). Both the title and body are
+a list of language tag/message tuples, which allows @command{guix pull}
+to display news in the language that corresponds to the user's locale.
+
+If you want to translate news using a gettext-based workflow, you can
+extract translatable strings with @command{xgettext} (@pxref{xgettext
+Invocation,,, gettext, GNU Gettext Utilities}). For example, assuming
+you write news entries in English first, the command below creates a PO
+file containing the strings to translate:
+
+@example
+xgettext -o news.po -l scheme -ken etc/news.txt
+@end example
+
+To sum up, yes, you could use your channel as a blog. But beware, this
+is @emph{not quite} what your users might expect.
+
@c *********************************************************************
@node Development
@@ -5420,8 +5539,9 @@ device.
@item --link-profile
@itemx -P
For containers, link the environment profile to @file{~/.guix-profile}
-within the container. This is equivalent to running the command
-@samp{ln -s $GUIX_ENVIRONMENT ~/.guix-profile} within the container.
+within the container and set @code{GUIX_ENVIRONMENT} to that.
+This is equivalent to making @file{~/.guix-profile} a symlink to the
+actual profile within the container.
Linking will fail and abort the environment if the directory already
exists, which will certainly be the case if @command{guix environment}
was invoked in the user's home directory.
@@ -5716,7 +5836,7 @@ direct syscalls are not intercepted either, leading to erratic behavior.
@vindex GUIX_EXECUTION_ENGINE
When running a wrapped program, you can explicitly request one of the
execution engines listed above by setting the
-@code{GUIX_EXECUTION_ENGINE} environment variable accordingly.
+@env{GUIX_EXECUTION_ENGINE} environment variable accordingly.
@end quotation
@cindex entry point, for Docker images
@@ -5966,6 +6086,7 @@ package definitions.
* Package Modules:: Packages from the programmer's viewpoint.
* Defining Packages:: Defining new packages.
* Build Systems:: Specifying how packages are built.
+* Build Utilities:: Helpers for your package definitions and more.
* The Store:: Manipulating the package store.
* Derivations:: Low-level interface to package derivations.
* The Store Monad:: Purely functional interface to the store.
@@ -6122,6 +6243,10 @@ represents the familiar GNU Build System, where packages may be
configured, built, and installed with the usual @code{./configure &&
make && make check && make install} command sequence.
+When you start packaging non-trivial software, you may need tools to
+manipulate those build phases, manipulate files, and so on. @xref{Build
+Utilities}, for more on this.
+
@item
The @code{arguments} field specifies options for the build system
(@pxref{Build Systems}). Here it is interpreted by
@@ -6236,12 +6361,12 @@ transformation is @dfn{input rewriting}, whereby the dependency tree of
a package is rewritten by replacing specific inputs by others:
@deffn {Scheme Procedure} package-input-rewriting @var{replacements} @
- [@var{rewrite-name}]
+ [@var{rewrite-name}] [#:deep? #t]
Return a procedure that, when passed a package, replaces its direct and
-indirect dependencies (but not its implicit inputs) according to
-@var{replacements}. @var{replacements} is a list of package pairs; the
-first element of each pair is the package to replace, and the second one
-is the replacement.
+indirect dependencies, including implicit inputs when @var{deep?} is
+true, according to @var{replacements}. @var{replacements} is a list of
+package pairs; the first element of each pair is the package to replace,
+and the second one is the replacement.
Optionally, @var{rewrite-name} is a one-argument procedure that takes
the name of a package and returns its new name after rewrite.
@@ -6270,12 +6395,13 @@ This is exactly what the @option{--with-input} command-line option does
The following variant of @code{package-input-rewriting} can match packages to
be replaced by name rather than by identity.
-@deffn {Scheme Procedure} package-input-rewriting/spec @var{replacements}
-Return a procedure that, given a package, applies the given @var{replacements} to
-all the package graph (excluding implicit inputs). @var{replacements} is a list of
-spec/procedures pair; each spec is a package specification such as @code{"gcc"} or
-@code{"guile@@2"}, and each procedure takes a matching package and returns a
-replacement for that package.
+@deffn {Scheme Procedure} package-input-rewriting/spec @var{replacements} [#:deep? #t]
+Return a procedure that, given a package, applies the given
+@var{replacements} to all the package graph, including implicit inputs
+unless @var{deep?} is false. @var{replacements} is a list of
+spec/procedures pair; each spec is a package specification such as
+@code{"gcc"} or @code{"guile@@2"}, and each procedure takes a matching
+package and returns a replacement for that package.
@end deffn
The example above could be rewritten this way:
@@ -6294,10 +6420,11 @@ A more generic procedure to rewrite a package dependency graph is
@code{package-mapping}: it supports arbitrary changes to nodes in the
graph.
-@deffn {Scheme Procedure} package-mapping @var{proc} [@var{cut?}]
+@deffn {Scheme Procedure} package-mapping @var{proc} [@var{cut?}] [#:deep? #f]
Return a procedure that, given a package, applies @var{proc} to all the packages
depended on and returns the resulting package. The procedure stops recursion
-when @var{cut?} returns true for a given package.
+when @var{cut?} returns true for a given package. When @var{deep?} is true, @var{proc} is
+applied to implicit inputs as well.
@end deffn
@menu
@@ -6370,21 +6497,22 @@ this area (@pxref{Invoking guix lint}).
@anchor{package-propagated-inputs}
Lastly, @code{propagated-inputs} is similar to @code{inputs}, but the
-specified packages will be automatically installed alongside the package
+specified packages will be automatically installed to profiles
+(@pxref{Features, the role of profiles in Guix}) alongside the package
they belong to (@pxref{package-cmd-propagated-inputs, @command{guix
package}}, for information on how @command{guix package} deals with
propagated inputs).
-For example this is necessary when a C/C++ library needs headers of
-another library to compile, or when a pkg-config file refers to another
-one @i{via} its @code{Requires} field.
+For example this is necessary when packaging a C/C++ library that needs
+headers of another library to compile, or when a pkg-config file refers
+to another one @i{via} its @code{Requires} field.
Another example where @code{propagated-inputs} is useful is for languages
that lack a facility to record the run-time search path akin to the
@code{RUNPATH} of ELF files; this includes Guile, Python, Perl, and
-more. To ensure that libraries written in those languages can find
-library code they depend on at run time, run-time dependencies must be
-listed in @code{propagated-inputs} rather than @code{inputs}.
+more. When packaging libraries written in those languages, ensure they
+can find library code they depend on at run time by listing run-time
+dependencies in @code{propagated-inputs} rather than @code{inputs}.
@item @code{outputs} (default: @code{'("out")})
The list of output names of the package. @xref{Packages with Multiple
@@ -6447,6 +6575,35 @@ cross-compiling:
It is an error to refer to @code{this-package} outside a package definition.
@end deffn
+Because packages are regular Scheme objects that capture a complete
+dependency graph and associated build procedures, it is often useful to
+write procedures that take a package and return a modified version
+thereof according to some parameters. Below are a few examples.
+
+@cindex tool chain, choosing a package's tool chain
+@deffn {Scheme Procedure} package-with-c-toolchain @var{package} @var{toolchain}
+Return a variant of @var{package} that uses @var{toolchain} instead of
+the default GNU C/C++ toolchain. @var{toolchain} must be a list of
+inputs (label/package tuples) providing equivalent functionality, such
+as the @code{gcc-toolchain} package.
+
+The example below returns a variant of the @code{hello} package built
+with GCC@tie{}10.x and the rest of the GNU tool chain (Binutils and the
+GNU C Library) instead of the default tool chain:
+
+@lisp
+(let ((toolchain (specification->package "gcc-toolchain@@10")))
+ (package-with-c-toolchain hello `(("toolchain" ,toolchain))))
+@end lisp
+
+The build tool chain is part of the @dfn{implicit inputs} of
+packages---it's usually not listed as part of the various ``inputs''
+fields and is instead pulled in by the build system. Consequently, this
+procedure works by changing the build system of @var{package} so that it
+pulls in @var{toolchain} instead of the defaults. @ref{Build Systems},
+for more on build systems.
+@end deffn
+
@node origin Reference
@subsection @code{origin} Reference
@@ -6583,6 +6740,9 @@ ornamentation---in other words, a bag is a lower-level representation of
a package, which includes all the inputs of that package, including some
that were implicitly added by the build system. This intermediate
representation is then compiled to a derivation (@pxref{Derivations}).
+The @code{package-with-c-toolchain} is an example of a way to change the
+implicit inputs that a package's build system pulls in (@pxref{package
+Reference, @code{package-with-c-toolchain}}).
Build systems accept an optional list of @dfn{arguments}. In package
definitions, these are passed @i{via} the @code{arguments} field
@@ -6662,7 +6822,8 @@ The list of phases used for a particular package can be changed with the
@end example
means that all the phases described above will be used, except the
-@code{configure} phase.
+@code{configure} phase. @xref{Build Utilities}, for more info on
+@code{modify-phases} and build phases in general.
In addition, this build system ensures that the ``standard'' environment
for GNU packages is available. This includes tools such as GCC, libc,
@@ -6751,30 +6912,27 @@ Additionally, the corresponding source package should be labeled using
the same convention as python packages (see @ref{Python Modules}), using
the @code{cl-} prefix.
-For binary packages, each system should be defined as a Guix package.
-If one package @code{origin} contains several systems, package variants
-can be created in order to build all the systems. Source packages,
-which use @code{asdf-build-system/source}, may contain several systems.
-
In order to create executable programs and images, the build-side
procedures @code{build-program} and @code{build-image} can be used.
-They should be called in a build phase after the @code{create-symlinks}
-phase, so that the system which was just built can be used within the
-resulting image. @code{build-program} requires a list of Common Lisp
-expressions to be passed as the @code{#:entry-program} argument.
-
-If the system is not defined within its own @file{.asd} file of the same
-name, then the @code{#:asd-file} parameter should be used to specify
-which file the system is defined in. Furthermore, if the package
-defines a system for its tests in a separate file, it will be loaded
-before the tests are run if it is specified by the
+They should be called in a build phase after the
+@code{create-asdf-configuration} phase, so that the system which was
+just built can be used within the resulting image. @code{build-program}
+requires a list of Common Lisp expressions to be passed as the
+@code{#:entry-program} argument.
+
+By default, all the @file{.asd} files present in the sources are read to
+find system definitions. The @code{#:asd-files} parameter can be used
+to specify the list of @file{.asd} files to read. Furthermore, if the
+package defines a system for its tests in a separate file, it will be
+loaded before the tests are run if it is specified by the
@code{#:test-asd-file} parameter. If it is not set, the files
@code{<system>-tests.asd}, @code{<system>-test.asd}, @code{tests.asd},
and @code{test.asd} will be tried if they exist.
If for some reason the package must be named in a different way than the
-naming conventions suggest, the @code{#:asd-system-name} parameter can
-be used to specify the name of the system.
+naming conventions suggest, or if several systems must be compiled, the
+@code{#:asd-systems} parameter can be used to specify the list of system
+names.
@end defvr
@@ -6800,8 +6958,8 @@ In its @code{configure} phase, this build system will make any source inputs
specified in the @code{#:cargo-inputs} and @code{#:cargo-development-inputs}
parameters available to cargo. It will also remove an included
@code{Cargo.lock} file to be recreated by @code{cargo} during the
-@code{build} phase. The @code{install} phase installs any crate the binaries
-if they are defined by the crate.
+@code{build} phase. The @code{install} phase installs the binaries
+defined by the crate.
@end defvr
@@ -7047,7 +7205,7 @@ implements the build procedure used by @uref{https://julialang.org/,
julia} packages, which essentially is similar to running @samp{julia -e
'using Pkg; Pkg.add(package)'} in an environment where
@env{JULIA_LOAD_PATH} contains the paths to all Julia package inputs.
-Tests are run not run.
+Tests are run with @code{Pkg.test}.
Julia packages require the source @code{file-name} to be the real name of the
package, correctly capitalized.
@@ -7499,6 +7657,294 @@ with @code{build-expression->derivation} (@pxref{Derivations,
@code{build-expression->derivation}}).
@end defvr
+@node Build Utilities
+@section Build Utilities
+
+As soon as you start writing non-trivial package definitions
+(@pxref{Defining Packages}) or other build actions
+(@pxref{G-Expressions}), you will likely start looking for helpers for
+``shell-like'' actions---creating directories, copying and deleting
+files recursively, manipulating build phases, and so on. The
+@code{(guix build utils)} module provides such utility procedures.
+
+Most build systems load @code{(guix build utils)} (@pxref{Build
+Systems}). Thus, when writing custom build phases for your package
+definitions, you can usually assume those procedures are in scope.
+
+When writing G-expressions, you can import @code{(guix build utils)} on
+the ``build side'' using @code{with-imported-modules} and then put it in
+scope with the @code{use-modules} form (@pxref{Using Guile Modules,,,
+guile, GNU Guile Reference Manual}):
+
+@lisp
+(with-imported-modules '((guix build utils)) ;import it
+ (computed-file "empty-tree"
+ #~(begin
+ ;; Put it in scope.
+ (use-modules (guix build utils))
+
+ ;; Happily use its 'mkdir-p' procedure.
+ (mkdir-p (string-append #$output "/a/b/c")))))
+@end lisp
+
+The remainder of this section is the reference for most of the utility
+procedures provided by @code{(guix build utils)}.
+
+@c TODO Document what's missing.
+
+@subsection Dealing with Store File Names
+
+This section documents procedures that deal with store file names.
+
+@deffn {Scheme Procedure} %store-directory
+Return the directory name of the store.
+@end deffn
+
+@deffn {Scheme Procedure} store-file-name? @var{file}
+Return true if @var{file} is in the store.
+@end deffn
+
+@deffn {Scheme Procedure} strip-store-file-name @var{file}
+Strip the @file{/gnu/store} and hash from @var{file}, a store file name.
+The result is typically a @code{"@var{package}-@var{version}"} string.
+@end deffn
+
+@deffn {Scheme Procedure} package-name->name+version @var{name}
+Given @var{name}, a package name like @code{"foo-0.9.1b"}, return two
+values: @code{"foo"} and @code{"0.9.1b"}. When the version part is
+unavailable, @var{name} and @code{#f} are returned. The first hyphen
+followed by a digit is considered to introduce the version part.
+@end deffn
+
+@subsection File Types
+
+The procedures below deal with files and file types.
+
+@deffn {Scheme Procedure} directory-exists? @var{dir}
+Return @code{#t} if @var{dir} exists and is a directory.
+@end deffn
+
+@deffn {Scheme Procedure} executable-file? @var{file}
+Return @code{#t} if @var{file} exists and is executable.
+@end deffn
+
+@deffn {Scheme Procedure} symbolic-link? @var{file}
+Return @code{#t} if @var{file} is a symbolic link (aka. a ``symlink'').
+@end deffn
+
+@deffn {Scheme Procedure} elf-file? @var{file}
+@deffnx {Scheme Procedure} ar-file? @var{file}
+@deffnx {Scheme Procedure} gzip-file? @var{file}
+Return @code{#t} if @var{file} is, respectively, an ELF file, an
+@code{ar} archive (such as a @file{.a} static library), or a gzip file.
+@end deffn
+
+@deffn {Scheme Procedure} reset-gzip-timestamp @var{file} [#:keep-mtime? #t]
+If @var{file} is a gzip file, reset its embedded timestamp (as with
+@command{gzip --no-name}) and return true. Otherwise return @code{#f}.
+When @var{keep-mtime?} is true, preserve @var{file}'s modification time.
+@end deffn
+
+@subsection File Manipulation
+
+The following procedures and macros help create, modify, and delete
+files. They provide functionality comparable to common shell utilities
+such as @command{mkdir -p}, @command{cp -r}, @command{rm -r}, and
+@command{sed}. They complement Guile's extensive, but low-level, file
+system interface (@pxref{POSIX,,, guile, GNU Guile Reference Manual}).
+
+@deffn {Scheme Syntax} with-directory-excursion @var{directory} @var{body}@dots{}
+Run @var{body} with @var{directory} as the process's current directory.
+
+Essentially, this macro changes the current directory to @var{directory}
+before evaluating @var{body}, using @code{chdir} (@pxref{Processes,,,
+guile, GNU Guile Reference Manual}). It changes back to the initial
+directory when the dynamic extent of @var{body} is left, be it @i{via}
+normal procedure return or @i{via} a non-local exit such as an
+exception.
+@end deffn
+
+@deffn {Scheme Procedure} mkdir-p @var{dir}
+Create directory @var{dir} and all its ancestors.
+@end deffn
+
+@deffn {Scheme Procedure} install-file @var{file} @var{directory}
+Create @var{directory} if it does not exist and copy @var{file} in there
+under the same name.
+@end deffn
+
+@deffn {Scheme Procedure} make-file-writable @var{file}
+Make @var{file} writable for its owner.
+@end deffn
+
+@deffn {Scheme Procedure} copy-recursively @var{source} @var{destination} @
+ [#:log (current-output-port)] [#:follow-symlinks? #f] [#:keep-mtime? #f]
+Copy @var{source} directory to @var{destination}. Follow symlinks if
+@var{follow-symlinks?} is true; otherwise, just preserve them. When
+@var{keep-mtime?} is true, keep the modification time of the files in
+@var{source} on those of @var{destination}. Write verbose output to the
+@var{log} port.
+@end deffn
+
+@deffn {Scheme Procedure} delete-file-recursively @var{dir} @
+ [#:follow-mounts? #f]
+Delete @var{dir} recursively, like @command{rm -rf}, without following
+symlinks. Don't follow mount points either, unless @var{follow-mounts?}
+is true. Report but ignore errors.
+@end deffn
+
+@deffn {Scheme Syntax} substitute* @var{file} @
+ ((@var{regexp} @var{match-var}@dots{}) @var{body}@dots{}) @dots{}
+Substitute @var{regexp} in @var{file} by the string returned by
+@var{body}. @var{body} is evaluated with each @var{match-var} bound to
+the corresponding positional regexp sub-expression. For example:
+
+@lisp
+(substitute* file
+ (("hello")
+ "good morning\n")
+ (("foo([a-z]+)bar(.*)$" all letters end)
+ (string-append "baz" letter end)))
+@end lisp
+
+Here, anytime a line of @var{file} contains @code{hello}, it is replaced
+by @code{good morning}. Anytime a line of @var{file} matches the second
+regexp, @code{all} is bound to the complete match, @code{letters} is bound
+to the first sub-expression, and @code{end} is bound to the last one.
+
+When one of the @var{match-var} is @code{_}, no variable is bound to the
+corresponding match substring.
+
+Alternatively, @var{file} may be a list of file names, in which case
+they are all subject to the substitutions.
+
+Be careful about using @code{$} to match the end of a line; by itself it
+won't match the terminating newline of a line.
+@end deffn
+
+@subsection File Search
+
+@cindex file, searching
+This section documents procedures to search and filter files.
+
+@deffn {Scheme Procedure} file-name-predicate @var{regexp}
+Return a predicate that returns true when passed a file name whose base
+name matches @var{regexp}.
+@end deffn
+
+@deffn {Scheme Procedure} find-files @var{dir} [@var{pred}] @
+ [#:stat lstat] [#:directories? #f] [#:fail-on-error? #f]
+Return the lexicographically sorted list of files under @var{dir} for
+which @var{pred} returns true. @var{pred} is passed two arguments: the
+absolute file name, and its stat buffer; the default predicate always
+returns true. @var{pred} can also be a regular expression, in which
+case it is equivalent to @code{(file-name-predicate @var{pred})}.
+@var{stat} is used to obtain file information; using @code{lstat} means
+that symlinks are not followed. If @var{directories?} is true, then
+directories will also be included. If @var{fail-on-error?} is true,
+raise an exception upon error.
+@end deffn
+
+Here are a few examples where we assume that the current directory is
+the root of the Guix source tree:
+
+@lisp
+;; List all the regular files in the current directory.
+(find-files ".")
+@result{} ("./.dir-locals.el" "./.gitignore" @dots{})
+
+;; List all the .scm files under gnu/services.
+(find-files "gnu/services" "\\.scm$")
+@result{} ("gnu/services/admin.scm" "gnu/services/audio.scm" @dots{})
+
+;; List ar files in the current directory.
+(find-files "." (lambda (file stat) (ar-file? file)))
+@result{} ("./libformat.a" "./libstore.a" @dots{})
+@end lisp
+
+@deffn {Scheme Procedure} which @var{program}
+Return the complete file name for @var{program} as found in
+@code{$PATH}, or @code{#f} if @var{program} could not be found.
+@end deffn
+
+@subsection Build Phases
+
+@cindex build phases
+The @code{(guix build utils)} also contains tools to manipulate
+@dfn{build phases} as found in @code{gnu-build-system} and in fact most
+build systems (@pxref{Build Systems}). Build phases are represented as
+association lists or ``alists'' (@pxref{Association Lists,,, guile, GNU
+Guile Reference Manual}) where each key is a symbol for the name of the
+phase, and the associated value is a procedure that accepts an arbitrary
+number of arguments.
+
+Guile core and the @code{(srfi srfi-1)} module both provide tools to
+manipulate alists. The @code{(guix build utils)} module complements
+those with tools written with build phases in mind.
+
+@cindex build phases, modifying
+@deffn {Scheme Syntax} modify-phases @var{phases} @var{clause}@dots{}
+Modify @var{phases} sequentially as per each @var{clause}, which may
+have one of the following forms:
+
+@lisp
+(delete @var{old-phase-name})
+(replace @var{old-phase-name} @var{new-phase})
+(add-before @var{old-phase-name} @var{new-phase-name} @var{new-phase})
+(add-after @var{old-phase-name} @var{new-phase-name} @var{new-phase})
+@end lisp
+
+Where every @var{phase-name} above is an expression evaluating to a
+symbol, and @var{new-phase} an expression evaluating to a procedure.
+@end deffn
+
+The example below is taken from the definition of the @code{grep}
+package. It adds a phase to run after the @code{install} phase, called
+@code{fix-egrep-and-fgrep}. That phase is a procedure (@code{lambda*}
+is for anonymous procedures) that takes a @code{#:outputs} keyword
+argument and ignores extra keyword arguments (@pxref{Optional
+Arguments,,, guile, GNU Guile Reference Manual}, for more on
+@code{lambda*} and optional and keyword arguments.) The phase uses
+@code{substitute*} to modify the installed @file{egrep} and @file{fgrep}
+scripts so that they refer to @code{grep} by its absolute file name:
+
+@lisp
+(modify-phases %standard-phases
+ (add-after 'install 'fix-egrep-and-fgrep
+ ;; Patch 'egrep' and 'fgrep' to execute 'grep' via its
+ ;; absolute file name instead of searching for it in $PATH.
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (bin (string-append out "/bin")))
+ (substitute* (list (string-append bin "/egrep")
+ (string-append bin "/fgrep"))
+ (("^exec grep")
+ (string-append "exec " bin "/grep")))
+ #t))))
+@end lisp
+
+In the example below, phases are modified in two ways: the standard
+@code{configure} phase is deleted, presumably because the package does
+not have a @file{configure} script or anything similar, and the default
+@code{install} phase is replaced by one that manually copies the
+executable files to be installed:
+
+@lisp
+(modify-phases %standard-phases
+ (delete 'configure) ;no 'configure' script
+ (replace 'install
+ (lambda* (#:key outputs #:allow-other-keys)
+ ;; The package's Makefile doesn't provide an "install"
+ ;; rule so do it by ourselves.
+ (let ((bin (string-append (assoc-ref outputs "out")
+ "/bin")))
+ (install-file "footswitch" bin)
+ (install-file "scythe" bin)
+ #t))))
+@end lisp
+
+@c TODO: Add more examples.
+
@node The Store
@section The Store
@@ -9051,11 +9497,9 @@ Non-deterministic build processes are a problem because they make it
practically impossible for users to @emph{verify} whether third-party
binaries are genuine. @xref{Invoking guix challenge}, for more.
-Note that, currently, the differing build results are not kept around,
-so you will have to manually investigate in case of an error---e.g., by
-stashing one of the build results with @code{guix archive --export}
-(@pxref{Invoking guix archive}), then rebuilding, and finally comparing
-the two results.
+When used in conjunction with @option{--keep-failed}, the differing
+output is kept in the store, under @file{/gnu/store/@dots{}-check}.
+This makes it easy to look for differences between the two results.
@item --no-offload
Do not use offload builds to other machines (@pxref{Daemon Offload
@@ -9140,6 +9584,10 @@ This is a convenient way to create customized packages on the fly
without having to type in the definitions of package variants
(@pxref{Defining Packages}).
+Package transformation options are preserved across upgrades:
+@command{guix upgrade} attempts to apply transformation options
+initially used when creating the profile to the upgraded packages.
+
@table @code
@item --with-source=@var{source}
@@ -9226,6 +9674,44 @@ must be compatible. If @var{replacement} is somehow incompatible with
@var{package}, then the resulting package may be unusable. Use with
care!
+@cindex tool chain, changing the build tool chain of a package
+@item --with-c-toolchain=@var{package}=@var{toolchain}
+This option changes the compilation of @var{package} and everything that
+depends on it so that they get built with @var{toolchain} instead of the
+default GNU tool chain for C/C++.
+
+Consider this example:
+
+@example
+guix build octave-cli \
+ --with-c-toolchain=fftw=gcc-toolchain@@10 \
+ --with-c-toolchain=fftwf=gcc-toolchain@@10
+@end example
+
+The command above builds a variant of the @code{fftw} and @code{fftwf}
+packages using version 10 of @code{gcc-toolchain} instead of the default
+tool chain, and then builds a variant of the GNU@tie{}Octave
+command-line interface using them. GNU@tie{}Octave itself is also built
+with @code{gcc-toolchain@@10}.
+
+This other example builds the Hardware Locality (@code{hwloc}) library
+and its dependents up to @code{intel-mpi-benchmarks} with the Clang C
+compiler:
+
+@example
+guix build --with-c-toolchain=hwloc=clang-toolchain \
+ intel-mpi-benchmarks
+@end example
+
+@quotation Note
+There can be application binary interface (ABI) incompatibilities among
+tool chains. This is particularly true of the C++ standard library and
+run-time support libraries such as that of OpenMP. By rebuilding all
+dependents with the same tool chain, @option{--with-c-toolchain} minimizes
+the risks of incompatibility but cannot entirely eliminate them. Choose
+@var{package} wisely.
+@end quotation
+
@item --with-git-url=@var{package}=@var{url}
@cindex Git, using the latest commit
@cindex latest commit, building
@@ -9275,6 +9761,34 @@ guix build --with-branch=guile-sqlite3=master cuirass
This is similar to @option{--with-branch}, except that it builds from
@var{commit} rather than the tip of a branch. @var{commit} must be a valid
Git commit SHA1 identifier or a tag.
+
+@cindex test suite, skipping
+@item --without-tests=@var{package}
+Build @var{package} without running its tests. This can be useful in
+situations where you want to skip the lengthy test suite of a
+intermediate package, or if a package's test suite fails in a
+non-deterministic fashion. It should be used with care because running
+the test suite is a good way to ensure a package is working as intended.
+
+Turning off tests leads to a different store item. Consequently, when
+using this option, anything that depends on @var{package} must be
+rebuilt, as in this example:
+
+@example
+guix install --without-tests=python python-notebook
+@end example
+
+The command above installs @code{python-notebook} on top of
+@code{python} built without running its test suite. To do so, it also
+rebuilds everything that depends on @code{python}, including
+@code{python-notebook} itself.
+
+Internally, @option{--without-tests} relies on changing the
+@code{#:tests?} option of a package's @code{check} phase (@pxref{Build
+Systems}). Note that some packages use a customized @code{check} phase
+that does not respect a @code{#:tests? #f} setting. Therefore,
+@option{--without-tests} has no effect on these packages.
+
@end table
@node Additional Build Options
@@ -9890,7 +10404,7 @@ package expressions for all those packages that are not yet in Guix.
When @option{--archive=bioconductor} is added, metadata is imported from
@uref{https://www.bioconductor.org/, Bioconductor}, a repository of R
-packages for for the analysis and comprehension of high-throughput
+packages for the analysis and comprehension of high-throughput
genomic data in bioinformatics.
Information is extracted from the @file{DESCRIPTION} file contained in the
@@ -11954,11 +12468,15 @@ following in your operating system declaration:
(guix-service-type config =>
(guix-configuration
(inherit config)
- (use-substitutes? #f)
- (extra-options '("--gc-keep-derivations"))))
+ ;; Fetch substitutes from example.org.
+ (substitute-urls
+ (list "https://example.org/guix"
+ "https://ci.guix.gnu.org"))))
(mingetty-service-type config =>
(mingetty-configuration
- (inherit config)))))
+ (inherit config)
+ ;; Automatially log in as "guest".
+ (auto-login "guest")))))
(operating-system
;; @dots{}
@@ -12756,8 +13274,19 @@ User accounts and groups are entirely managed through the
"audio" ;sound card
"video" ;video devices such as webcams
"cdrom")) ;the good ol' CD-ROM
- (comment "Bob's sister")
- (home-directory "/home/alice"))
+ (comment "Bob's sister"))
+@end lisp
+
+Here's a user account that uses a different shell and a custom home
+directory (the default would be @file{"/home/bob"}):
+
+@lisp
+(user-account
+ (name "bob")
+ (group "users")
+ (comment "Alice's bro")
+ (shell (file-append zsh "/bin/zsh"))
+ (home-directory "/home/robert"))
@end lisp
When booting or upon completion of @command{guix system reconfigure},
@@ -12802,7 +13331,19 @@ if it does not exist yet.
@item @code{shell} (default: Bash)
This is a G-expression denoting the file name of a program to be used as
-the shell (@pxref{G-Expressions}).
+the shell (@pxref{G-Expressions}). For example, you would refer to the
+Bash executable like this:
+
+@lisp
+(file-append bash "/bin/bash")
+@end lisp
+
+@noindent
+... and to the Zsh executable like that:
+
+@lisp
+(file-append zsh "/bin/zsh")
+@end lisp
@item @code{system?} (default: @code{#f})
This Boolean value indicates whether the account is a ``system''
@@ -14608,7 +15149,7 @@ It takes the following parameters:
@item @code{wpa-supplicant} (default: @code{wpa-supplicant})
The WPA Supplicant package to use.
-@item @code{requirement} (default: @code{'(user-processes dbus-system loopback syslogd)}
+@item @code{requirement} (default: @code{'(user-processes loopback syslogd)}
List of services that should be started before WPA Supplicant starts.
@item @code{dbus?} (default: @code{#t})
@@ -15188,6 +15729,9 @@ example:
This is the configuration record for OpenSSH's @command{sshd}.
@table @asis
+@item @code{openssh} (default @var{openssh})
+The Openssh package to use.
+
@item @code{pid-file} (default: @code{"/var/run/sshd.pid"})
Name of the file where @command{sshd} writes its PID.
@@ -15449,6 +15993,81 @@ may cause undefined behaviour.
@end table
@end deftp
+@cindex WebSSH
+@deffn {Scheme Variable} webssh-service-type
+This is the type for the @uref{https://webssh.huashengdun.org/, WebSSH}
+program that runs a web SSH client. WebSSH can be run manually from the
+command-line by passing arguments to the binary @command{wssh} from the
+package @code{webssh}, but it can also be run as a Guix service. This
+latter use case is documented here.
+
+For example, to specify a service running WebSSH on loopback interface
+on port @code{8888} with reject policy with a list of allowed to
+connection hosts, and NGINX as a reverse-proxy to this service listening
+for HTTPS connection, add this call to the operating system's
+@code{services} field:
+
+@lisp
+(service webssh-service-type
+ (webssh-configuration (address "127.0.0.1")
+ (port 8888)
+ (policy 'reject)
+ (known-hosts '("localhost ecdsa-sha2-nistp256 AAAA…"
+ "127.0.0.1 ecdsa-sha2-nistp256 AAAA…"))))
+
+(service nginx-service-type
+ (nginx-configuration
+ (server-blocks
+ (list
+ (nginx-server-configuration
+ (inherit %webssh-configuration-nginx)
+ (server-name '("webssh.example.com"))
+ (listen '("443 ssl"))
+ (ssl-certificate (letsencrypt-certificate "webssh.example.com"))
+ (ssl-certificate-key (letsencrypt-key "webssh.example.com"))
+ (locations
+ (cons (nginx-location-configuration
+ (uri "/.well-known")
+ (body '("root /var/www;")))
+ (nginx-server-configuration-locations %webssh-configuration-nginx))))))))
+@end lisp
+@end deffn
+
+@deftp {Data Type} webssh-configuration
+Data type representing the configuration for @code{webssh-service}.
+
+@table @asis
+@item @code{package} (default: @var{webssh})
+@code{webssh} package to use.
+
+@item @code{user-name} (default: @var{"webssh"})
+User name or user ID that file transfers to and from that module should take
+place.
+
+@item @code{group-name} (default: @var{"webssh"})
+Group name or group ID that will be used when accessing the module.
+
+@item @code{address} (default: @var{#f})
+IP address on which @command{webssh} listens for incoming connections.
+
+@item @code{port} (default: @var{8888})
+TCP port on which @command{webssh} listens for incoming connections.
+
+@item @code{policy} (default: @var{#f})
+Connection policy. @var{reject} policy requires to specify @var{known-hosts}.
+
+@item @code{known-hosts} (default: @var{'()})
+List of hosts which allowed for SSH connection from @command{webssh}.
+
+@item @code{log-file} (default: @file{"/var/log/webssh.log"})
+Name of the file where @command{rsync} writes its log file.
+
+@item @code{log-level} (default: @var{#f})
+Logging level.
+
+@end table
+@end deftp
+
@defvr {Scheme Variable} %facebook-host-aliases
This variable contains a string for use in @file{/etc/hosts}
(@pxref{Host Names,,, libc, The GNU C Library Reference Manual}). Each
@@ -17165,6 +17784,8 @@ their default values are:
@code{suspend}
@item handle-lid-switch-docked
@code{ignore}
+@item handle-lid-switch-external-power
+@code{ignore}
@item power-key-ignore-inhibited?
@code{#f}
@item suspend-key-ignore-inhibited?
@@ -17530,10 +18151,10 @@ List of settings to set in @file{daemon.conf}, formatted just like
@var{client-conf}.
@item @var{script-file} (default: @code{(file-append pulseaudio "/etc/pulse/default.pa")})
-Script file to use as as @file{default.pa}.
+Script file to use as @file{default.pa}.
@item @var{system-script-file} (default: @code{(file-append pulseaudio "/etc/pulse/system.pa")})
-Script file to use as as @file{system.pa}.
+Script file to use as @file{system.pa}.
@end table
@end deftp
@@ -19531,7 +20152,8 @@ Mailutils Manual}, for details.
@cindex jabber
@cindex XMPP
The @code{(gnu services messaging)} module provides Guix service
-definitions for messaging services: currently only Prosody is supported.
+definitions for messaging services. Currently it provides the following
+services:
@subsubheading Prosody Service
@@ -19721,7 +20343,7 @@ can create such a file with:
@end deftypevr
@deftypevr {@code{ssl-configuration} parameter} maybe-string curve
-Curve for Elliptic curve Diffie-Hellman. Prosody's default is
+Curve for Elliptic curve Diffie-Hellman. Prosody's default is
@samp{"secp384r1"}.
@end deftypevr
@@ -21661,7 +22283,29 @@ names of loadable modules, as in this example:
(modules
(list
(file-append nginx-accept-language-module "\
-/etc/nginx/modules/ngx_http_accept_language_module.so")))
+/etc/nginx/modules/ngx_http_accept_language_module.so")
+ (file-append nginx-lua-module "\
+/etc/nginx/modules/ngx_http_lua_module.so")))
+@end lisp
+
+@item @code{lua-package-path} (default: @code{'()})
+List of nginx lua packages to load. This should be a list of package
+names of loadable lua modules, as in this example:
+
+@lisp
+(lua-package-path (list lua-resty-core
+ lua-resty-lrucache
+ lua-resty-signal
+ lua-tablepool
+ lua-resty-shell))
+@end lisp
+
+@item @code{lua-package-cpath} (default: @code{'()})
+List of nginx lua C packages to load. This should be a list of package
+names of loadable lua C modules, as in this example:
+
+@lisp
+(lua-package-cpath (list lua-resty-signal))
@end lisp
@item @code{global-directives} (default: @code{'((events . ()))})
@@ -22664,7 +23308,7 @@ This type has the following parameters:
@table @asis
@item @code{id} (default: @code{""})
-An identifier for ether configuration fields to refer to this key. IDs must be
+An identifier for other configuration fields to refer to this key. IDs must be
unique and must not be empty.
@item @code{address} (default: @code{'()})
@@ -23154,6 +23798,60 @@ disables caching.
@item @code{negative-cache?} (default: @code{#t})
When false, disable negative caching.
+@item @code{tftp-enable?} (default: @code{#f})
+Whether to enable the built-in TFTP server.
+
+@item @code{tftp-no-fail?} (default: @code{#f})
+If true, does not fail dnsmasq if the TFTP server could not start up.
+
+@item @code{tftp-single-port?} (default: @code{#f})
+Whether to use only one single port for TFTP.
+
+@item @code{tftp-secure?} (default: @code{#f})
+If true, only files owned by the user running the dnsmasq process are accessible.
+
+If dnsmasq is being run as root, different rules apply:
+@code{tftp-secure?} has no effect, but only files which have the
+world-readable bit set are accessible.
+
+@item @code{tftp-max} (default: @code{#f})
+If set, sets the maximal number of concurrent connections allowed.
+
+@item @code{tftp-mtu} (default: @code{#f})
+If set, sets the MTU for TFTP packets to that value.
+
+@item @code{tftp-no-blocksize?} (default: @code{#f})
+If true, stops the TFTP server from negotiating the blocksize with a client.
+
+@item @code{tftp-lowercase?} (default: @code{#f})
+Whether to convert all filenames in TFTP requests to lowercase.
+
+@item @code{tftp-port-range} (default: @code{#f})
+If set, fixes the dynamical ports (one per client) to the given range
+(@code{"<start>,<end>"}).
+
+@item @code{tftp-root} (default: @code{/var/empty,lo})
+Look for files to transfer using TFTP relative to the given directory.
+When this is set, TFTP paths which include ".." are rejected, to stop clients
+getting outside the specified root. Absolute paths (starting with /) are
+allowed, but they must be within the tftp-root. If the optional interface
+argument is given, the directory is only used for TFTP requests via that
+interface.
+
+@item @code{tftp-unique-root} (default: @code{#f})
+If set, add the IP or hardware address of the TFTP client as a path component
+on the end of the TFTP-root. Only valid if a TFTP root is set and the
+directory exists. Defaults to adding IP address (in standard dotted-quad
+format).
+
+For instance, if --tftp-root is "/tftp" and client 1.2.3.4 requests file
+"myfile" then the effective path will be "/tftp/1.2.3.4/myfile" if
+/tftp/1.2.3.4 exists or /tftp/myfile otherwise. When "=mac" is specified
+it will append the MAC address instead, using lowercase zero padded digits
+separated by dashes, e.g.: 01-02-03-04-aa-bb Note that resolving MAC
+addresses is only possible if the client is in the local network or obtained
+a DHCP lease from dnsmasq.
+
@end table
@end deftp
@@ -23909,6 +24607,14 @@ Location of the log file.
@item @code{web-log-file} (default: @code{"/var/log/cuirass-web.log"})
Location of the log file used by the web interface.
+@item @code{queries-log-file} (default: @code{#f})
+Location of the SQL queries log file. By default, SQL queries logging is
+disabled.
+
+@item @code{web-queries-log-file} (default: @code{#f})
+Location of the web SQL queries log file. By default, web SQL queries
+logging is disabled.
+
@item @code{cache-directory} (default: @code{"/var/cache/cuirass"})
Location of the repository cache.
@@ -24593,7 +25299,7 @@ mixer, the @code{null} mixer (allows setting the volume, but with no
effect; this can be used as a trick to implement an external mixer
External Mixer) or no mixer (@code{none}).
-@item @code{extra-options} (default: @code{'()"})
+@item @code{extra-options} (default: @code{'()})
An association list of option symbols to string values to be appended to
the audio output configuration.
@@ -24618,13 +25324,14 @@ an HTTP audio streaming output.
@node Virtualization Services
-@subsection Virtualization services
+@subsection Virtualization Services
The @code{(gnu services virtualization)} module provides services for
the libvirt and virtlog daemons, as well as other virtualization-related
services.
@subsubheading Libvirt daemon
+
@code{libvirtd} is the server side daemon component of the libvirt
virtualization management system. This daemon runs on host servers
and performs required management tasks for virtualized guests.
@@ -24651,7 +25358,7 @@ Libvirt package.
@deftypevr {@code{libvirt-configuration} parameter} boolean listen-tls?
Flag listening for secure TLS connections on the public TCP/IP port.
-must set @code{listen} for this to have any effect.
+You must set @code{listen} for this to have any effect.
It is necessary to setup a CA and issue server certificates before using
this capability.
@@ -24661,28 +25368,28 @@ Defaults to @samp{#t}.
@end deftypevr
@deftypevr {@code{libvirt-configuration} parameter} boolean listen-tcp?
-Listen for unencrypted TCP connections on the public TCP/IP port. must
+Listen for unencrypted TCP connections on the public TCP/IP port. You must
set @code{listen} for this to have any effect.
Using the TCP socket requires SASL authentication by default. Only SASL
mechanisms which support data encryption are allowed. This is
-DIGEST_MD5 and GSSAPI (Kerberos5)
+DIGEST_MD5 and GSSAPI (Kerberos5).
Defaults to @samp{#f}.
@end deftypevr
@deftypevr {@code{libvirt-configuration} parameter} string tls-port
-Port for accepting secure TLS connections This can be a port number, or
-service name
+Port for accepting secure TLS connections. This can be a port number,
+or service name.
Defaults to @samp{"16514"}.
@end deftypevr
@deftypevr {@code{libvirt-configuration} parameter} string tcp-port
-Port for accepting insecure TCP connections This can be a port number,
-or service name
+Port for accepting insecure TCP connections. This can be a port number,
+or service name.
Defaults to @samp{"16509"}.
@@ -24994,7 +25701,7 @@ Defaults to @samp{3}.
Logging filters.
A filter allows to select a different logging level for a given category
-of logs The format for a filter is one of:
+of logs. The format for a filter is one of:
@itemize @bullet
@item
@@ -25325,7 +26032,8 @@ Maximum number of backup files to keep.
Defaults to @samp{3}
@end deftypevr
-@node Transparent Emulation with QEMU
+
+@anchor{transparent-emulation-qemu}
@subsubheading Transparent Emulation with QEMU
@cindex emulation
@@ -25335,6 +26043,8 @@ emulation of program binaries built for different architectures---e.g.,
it allows you to transparently execute an ARMv7 program on an x86_64
machine. It achieves this by combining the @uref{https://www.qemu.org,
QEMU} emulator and the @code{binfmt_misc} feature of the kernel Linux.
+This feature only allows you to emulate GNU/Linux on a different
+architecture, but see below for GNU/Hurd support.
@defvr {Scheme Variable} qemu-binfmt-service-type
This is the type of the QEMU/binfmt service for transparent emulation.
@@ -25419,16 +26129,41 @@ Return the name of @var{platform}---a string such as @code{"arm"}.
@cindex childhurd
Service @code{hurd-vm} provides support for running GNU/Hurd in a
-virtual machine (VM), a so-called ``Childhurd''. The virtual machine is
-a Shepherd service that can be referred to by the names @code{hurd-vm}
-and @code{childhurd} and be controlled with commands such as:
+virtual machine (VM), a so-called @dfn{childhurd}. This service is meant
+to be used on GNU/Linux and the given GNU/Hurd operating system
+configuration is cross-compiled. The virtual machine is a Shepherd
+service that can be referred to by the names @code{hurd-vm} and
+@code{childhurd} and be controlled with commands such as:
@example
herd start hurd-vm
herd stop childhurd
@end example
-The given GNU/Hurd operating system configuration is cross-compiled.
+When the service is running, you can view its console by connecting to
+it with a VNC client, for example with:
+
+@example
+guix environment --ad-hoc tigervnc-client -- \
+ vncviewer localhost:5900
+@end example
+
+The default configuration (see @code{hurd-vm-configuration} below)
+spawns a secure shell (SSH) server in your GNU/Hurd system, which QEMU
+(the virtual machine emulator) redirects to port 10222 on the host.
+Thus, you can connect over SSH to the childhurd with:
+
+@example
+ssh root@@localhost -p 10022
+@end example
+
+The childhurd is volatile and stateless: it starts with a fresh root
+file system every time you restart it. By default though, all the files
+under @file{/etc/childhurd} on the host are copied as is to the root
+file system of the childhurd when it boots. This allows you to
+initialize ``secrets'' inside the VM: SSH host keys, authorized
+substitute keys, and so on---see the explanation of @code{secret-root}
+below.
@defvr {Scheme Variable} hurd-vm-service-type
This is the type of the Hurd in a Virtual Machine service. Its value
@@ -25489,15 +26224,17 @@ By default, it produces
@lisp
'("--device" "rtl8139,netdev=net0"
"--netdev" "user,id=net0\
- ,hostfwd=tcp:127.0.0.1:<secrets-port>-:1004\
- ,hostfwd=tcp:127.0.0.1:<ssh-port>-:2222\
- ,hostfwd=tcp:127.0.0.1:<vnc-port>-:5900")
+ ,hostfwd=tcp:127.0.0.1:@var{secrets-port}-:1004\
+ ,hostfwd=tcp:127.0.0.1:@var{ssh-port}-:2222\
+ ,hostfwd=tcp:127.0.0.1:@var{vnc-port}-:5900")
@end lisp
-with forwarded ports
+
+with forwarded ports:
+
@example
-<ssh-port>: @code{(+ 11004 (* 1000 @var{ID}))}
-<ssh-port>: @code{(+ 10022 (* 1000 @var{ID}))}
-<vnc-port>: @code{(+ 15900 (* 1000 @var{ID}))}
+@var{secrets-port}: @code{(+ 11004 (* 1000 @var{ID}))}
+@var{ssh-port}: @code{(+ 10022 (* 1000 @var{ID}))}
+@var{vnc-port}: @code{(+ 15900 (* 1000 @var{ID}))}
@end example
@item @code{secret-root} (default: @file{/etc/childhurd})
@@ -25510,10 +26247,11 @@ If the @file{/etc/childhurd} directory does not exist, the
@code{secret-service} running in the Childhurd will be sent an empty
list of secrets.
-Typical use to populate @file{"/etc/childhurd"} with a tree of
-non-volatile secrets, like so
+By default, the service automatically populates @file{/etc/childhurd}
+with the following non-volatile secrets, unless they already exist:
@example
+/etc/childhurd/etc/guix/acl
/etc/childhurd/etc/guix/signing-key.pub
/etc/childhurd/etc/guix/signing-key.sec
/etc/childhurd/etc/ssh/ssh_host_ed25519_key
@@ -25522,8 +26260,32 @@ non-volatile secrets, like so
/etc/childhurd/etc/ssh/ssh_host_ecdsa_key.pub
@end example
-to be sent to the Childhurd, including permissions.
+These files are automatically sent to the guest Hurd VM when it boots,
+including permissions.
+@cindex childhurd, offloading
+@cindex Hurd, offloading
+Having these files in place means that only a couple of things are
+missing to allow the host to offload @code{i586-gnu} builds to the
+childhurd:
+
+@enumerate
+@item
+Authorizing the childhurd's key on the host so that the host accepts
+build results coming from the childhurd, which can be done like so:
+
+@example
+guix archive --authorize < \
+ /etc/childhurd/etc/guix/signing-key.pub
+@end example
+
+@item
+Adding the childhurd to @file{/etc/guix/machines.scm} (@pxref{Daemon
+Offload Setup}).
+@end enumerate
+
+We're working towards making that happen automatically---get in touch
+with us at @email{guix-devel@@gnu.org} to discuss it!
@end table
@end deftp
@@ -25536,7 +26298,7 @@ the @code{--snapshot} flag using something along these lines:
(service hurd-vm-service-type
(hurd-vm-configuration
(image (const "/out/of/store/writable/hurd.img"))
- (options '("--hda"))))
+ (options '())))
@end lisp
@subsubheading Ganeti
@@ -26115,7 +26877,7 @@ When true, the daemon performs additional logging for debugging purposes.
@defvr {Scheme Variable} ganeti-watcher-service-type
@command{ganeti-watcher} is a script designed to run periodically and ensure
the health of a cluster. It will automatically restart instances that have
-stopped without Ganetis consent, and repairs DRBD links in case a node has
+stopped without Ganeti's consent, and repairs DRBD links in case a node has
rebooted. It also archives old cluster jobs and restarts Ganeti daemons
that are not running. If the cluster parameter @code{ensure_node_health}
is set, the watcher will also shutdown instances and DRBD devices if the
@@ -27493,6 +28255,168 @@ The complete list of possible options can be found in the man page for
@node Guix Services
@subsection Guix Services
+@subsubheading Guix Build Coordinator
+The @uref{https://git.cbaines.net/guix/build-coordinator/,Guix Build
+Coordinator} aids in distributing derivation builds among machines
+running an @dfn{agent}. The build daemon is still used to build the
+derivations, but the Guix Build Coordinator manages allocating builds
+and working with the results.
+
+@quotation Note
+This service is considered experimental. Configuration options may be
+changed in a backwards-incompatible manner, and not all features have
+been thorougly tested.
+@end quotation
+
+The Guix Build Coordinator consists of one @dfn{coordinator}, and one or
+more connected @dfn{agent} processes. The coordinator process handles
+clients submitting builds, and allocating builds to agents. The agent
+processes talk to a build daemon to actually perform the builds, then
+send the results back to the coordinator.
+
+There is a script to run the coordinator component of the Guix Build
+Coordinator, but the Guix service uses a custom Guile script instead, to
+provide better integration with G-expressions used in the configuration.
+
+@defvar {Scheme Variable} guix-build-coordinator-service-type
+Service type for the Guix Build Coordinator. Its value must be a
+@code{guix-build-coordinator-configuration} object.
+@end defvar
+
+@deftp {Data Type} guix-build-coordinator-configuration
+Data type representing the configuration of the Guix Build Coordinator.
+
+@table @asis
+@item @code{package} (default: @code{guix-build-coordinator})
+The Guix Build Coordinator package to use.
+
+@item @code{user} (default: @code{"guix-build-coordinator"})
+The system user to run the service as.
+
+@item @code{group} (default: @code{"guix-build-coordinator"})
+The system group to run the service as.
+
+@item @code{database-uri-string} (default: @code{"sqlite:///var/lib/guix-build-coordinator/guix_build_coordinator.db"})
+The URI to use for the database.
+
+@item @code{agent-communication-uri} (default: @code{"http://0.0.0.0:8745"})
+The URI describing how to listen to requests from agent processes.
+
+@item @code{client-communication-uri} (default: @code{"http://127.0.0.1:8746"})
+The URI describing how to listen to requests from clients. The client
+API allows submitting builds and currently isn't authenticated, so take
+care when configuring this value.
+
+@item @code{allocation-strategy} (default: @code{#~basic-build-allocation-strategy})
+A G-expression for the allocation strategy to be used. This is a
+procedure that takes the datastore as an argument and populates the
+allocation plan in the database.
+
+@item @code{hooks} (default: @var{'()})
+An association list of hooks. These provide a way to execute arbitrary
+code upon certain events, like a build result being processed.
+
+@item @code{guile} (default: @code{guile-3.0-latest})
+The Guile package with which to run the Guix Build Coordinator.
+
+@end table
+@end deftp
+
+@defvar {Scheme Variable} guix-build-coordinator-agent-service-type
+Service type for a Guix Build Coordinator agent. Its value must be a
+@code{guix-build-coordinator-agent-configuration} object.
+@end defvar
+
+@deftp {Data Type} guix-build-coordinator-agent-configuration
+Data type representing the configuration a Guix Build Coordinator agent.
+
+@table @asis
+@item @code{package} (default: @code{guix-build-coordinator})
+The Guix Build Coordinator package to use.
+
+@item @code{user} (default: @code{"guix-build-coordinator-agent"})
+The system user to run the service as.
+
+@item @code{coordinator} (default: @code{"http://localhost:8745"})
+The URI to use when connecting to the coordinator.
+
+@item @code{uuid}
+The UUID of the agent. This should be generated by the coordinator
+process, stored in the coordinator database, and used by the intended
+agent.
+
+@item @code{password} (default: @code{#f})
+The password to use when connecting to the coordinator. A file to read
+the password from can also be specified, and this is more secure.
+
+@item @code{password-file} (default: @code{#f})
+A file containing the password to use when connecting to the
+coordinator.
+
+@item @code{systems} (default: @var{#f})
+The systems for which this agent should fetch builds. The agent process
+will use the current system it's running on as the default.
+
+@item @code{max-parallel-builds} (default: @code{1})
+The number of builds to perform in parallel.
+
+@item @code{derivation-substitute-urls} (default: @code{1})
+URLs from which to attempt to fetch substitutes for derivations, if the
+derivations aren't already available.
+
+@item @code{non-derivation-substitute-urls} (default: @code{1})
+URLs from which to attempt to fetch substitutes for build inputs, if the
+input store items aren't already available.
+
+@end table
+@end deftp
+
+The Guix Build Coordinator package contains a script to query an
+instance of the Guix Data Service for derivations to build, and then
+submit builds for those derivations to the coordinator. The service
+type below assists in running this script. This is an additional tool
+that may be useful when building derivations contained within an
+instance of the Guix Data Service.
+
+@defvar {Scheme Variable} guix-build-coordinator-queue-builds-service-type
+Service type for the
+guix-build-coordinator-queue-builds-from-guix-data-service script. Its
+value must be a @code{guix-build-coordinator-queue-builds-configuration}
+object.
+@end defvar
+
+@deftp {Data Type} guix-build-coordinator-queue-builds-configuration
+Data type representing the options to the queue builds from guix data
+service script.
+
+@table @asis
+@item @code{package} (default: @code{guix-build-coordinator})
+The Guix Build Coordinator package to use.
+
+@item @code{user} (default: @code{"guix-build-coordinator-queue-builds"})
+The system user to run the service as.
+
+@item @code{coordinator} (default: @code{"http://localhost:8745"})
+The URI to use when connecting to the coordinator.
+
+@item @code{systems} (default: @code{#f})
+The systems for which to fetch derivations to build.
+
+@item @code{systems-and-targets} (default: @code{#f})
+An association list of system and target pairs for which to fetch
+derivations to build.
+
+@item @code{guix-data-service} (default: @code{"https://data.guix.gnu.org"})
+The Guix Data Service instance from which to query to find out about
+derivations to build.
+
+@item @code{processed-commits-file} (default: @code{"/var/cache/guix-build-coordinator-queue-builds/processed-commits"})
+A file to record which commits have been processed, to avoid needlessly
+processing them again if the service is restarted.
+
+@end table
+@end deftp
+
@subsubheading Guix Data Service
The @uref{http://data.guix.gnu.org,Guix Data Service} processes, stores
and provides data about GNU Guix. This includes information about
@@ -27667,22 +28591,22 @@ This is the data type representing the configuration for the zram-device
service.
@table @asis
-@item @code{size} (default @var{"1G"})
+@item @code{size} (default @code{"1G"})
This is the amount of space you wish to provide for the zram device. It
accepts a string and can be a number of bytes or use a suffix, eg.:
-@var{"512M"} or @var{1024000}.
-@item @code{compression-algorithm} (default @var{'lzo})
+@code{"512M"} or @code{1024000}.
+@item @code{compression-algorithm} (default @code{'lzo})
This is the compression algorithm you wish to use. It is difficult to
list all the possible compression options, but common ones supported by
-Guix's Linux Libre Kernel include @var{'lzo}, @var{'lz4} and @var{'zstd}.
-@item @code{memory-limit} (default @var{0})
+Guix's Linux Libre Kernel include @code{'lzo}, @code{'lz4} and @code{'zstd}.
+@item @code{memory-limit} (default @code{0})
This is the maximum amount of memory which the zram device can use.
Setting it to '0' disables the limit. While it is generally expected
that compression will be 2:1, it is possible that uncompressable data
can be written to swap and this is a method to limit how much memory can
be used. It accepts a string and can be a number of bytes or use a
-suffix, eg.: @var{"2G"}.
-@item @code{priority} (default @var{-1})
+suffix, eg.: @code{"2G"}.
+@item @code{priority} (default @code{-1})
This is the priority of the swap device created from the zram device.
@code{swapon} accepts values between -1 and 32767, with higher values
indicating higher priority. Higher priority swap will generally be used
@@ -27997,7 +28921,10 @@ This is the data type representing the configuration of Docker and Containerd.
@table @asis
@item @code{package} (default: @code{docker})
-The Docker package to use.
+The Docker daemon package to use.
+
+@item @code{package} (default: @code{docker-cli})
+The Docker client package to use.
@item @code{containerd} (default: @var{containerd})
The Containerd package to use.
@@ -28092,7 +29019,7 @@ The @code{(gnu services science)} module provides the following service.
@defvr {Scheme Variable} rshiny-service-type
This is a type of service which is used to run a webapp created with
-@code{r-shiny}. This service sets the @code{R_LIBS_USER} environment
+@code{r-shiny}. This service sets the @env{R_LIBS_USER} environment
variable and runs the provided script to call @code{runApp}.
@deftp {Data Type} rshiny-configuration
@@ -28647,7 +29574,15 @@ The type of a bootloader configuration declaration.
@cindex BIOS, bootloader
The bootloader to use, as a @code{bootloader} object. For now
@code{grub-bootloader}, @code{grub-efi-bootloader},
-@code{extlinux-bootloader} and @code{u-boot-bootloader} are supported.
+@code{grub-efi-netboot-bootloader}, @code{extlinux-bootloader} and
+@code{u-boot-bootloader} are supported.
+
+@cindex ARM, bootloaders
+@cindex AArch64, bootloaders
+Available bootloaders are described in @code{(gnu bootloader @dots{})}
+modules. In particular, @code{(gnu bootloader u-boot)} contains definitions
+of bootloaders for a wide range of ARM and AArch64 systems, using the
+@uref{https://www.denx.de/wiki/U-Boot/, U-Boot bootloader}.
@vindex grub-efi-bootloader
@code{grub-efi-bootloader} allows to boot on modern systems using the
@@ -28659,12 +29594,52 @@ when you boot it on your system.
@code{grub-bootloader} allows you to boot in particular Intel-based machines
in ``legacy'' BIOS mode.
-@cindex ARM, bootloaders
-@cindex AArch64, bootloaders
-Available bootloaders are described in @code{(gnu bootloader @dots{})}
-modules. In particular, @code{(gnu bootloader u-boot)} contains definitions
-of bootloaders for a wide range of ARM and AArch64 systems, using the
-@uref{https://www.denx.de/wiki/U-Boot/, U-Boot bootloader}.
+@vindex grub-efi-netboot-bootloader
+@code{grub-efi-netboot-bootloader} allows you to boot your system over network
+through TFTP. In combination with an NFS root file system this allows you to
+build a diskless Guix system.
+
+The installation of the @code{grub-efi-netboot-bootloader} generates the content
+of the TFTP root directory at @code{target}
+(@pxref{Bootloader Configuration, @code{target}}), to be served by a TFTP server.
+ You may want to mount your TFTP server directory onto @code{target} to move the
+required files to the TFTP server automatically.
+
+If you plan to use an NFS root file system as well (actually if you mount the
+store from an NFS share), then the TFTP server needs to serve the file
+@file{/boot/grub/grub.cfg} and other files from the store (like GRUBs background
+image, the kernel (@pxref{operating-system Reference, @code{kernel}}) and the
+initrd (@pxref{operating-system Reference, @code{initrd}})), too. All these
+files from the store will be accessed by GRUB through TFTP with their normal
+store path, for example as
+@file{tftp://tftp-server/gnu/store/…-initrd/initrd.cpio.gz}.
+
+Two symlinks are created to make this possible. The first symlink is
+@code{target}@file{/efi/Guix/boot/grub/grub.cfg} pointing to
+@file{../../../boot/grub/grub.cfg},
+where @code{target} may be @file{/boot}. In this case the link is not leaving
+the served TFTP root directory, but otherwise it does. The second link is
+@code{target}@file{/gnu/store} and points to @file{../gnu/store}. This link
+is leaving the served TFTP root directory.
+
+The assumption behind all this is that you have an NFS server exporting the root
+file system for your Guix system, and additionally a TFTP server exporting your
+@code{target} directory—usually @file{/boot}—from that same root file system for
+your Guix system. In this constellation the symlinks will work.
+
+For other constellations you will have to program your own bootloader installer,
+which then takes care to make necessary files from the store accessible through
+TFTP, for example by copying them into the TFTP root directory at @code{target}.
+
+It is important to note that symlinks pointing outside the TFTP root directory
+may need to be allowed in the configuration of your TFTP server. Further the
+store link exposes the whole store through TFTP. Both points need to be
+considered carefully for security aspects.
+
+Beside the @code{grub-efi-netboot-bootloader}, the already mentioned TFTP and
+NFS servers, you also need a properly configured DHCP server to make the booting
+over netboot possible. For all this we can currently only recommend you to look
+for instructions about @acronym{PXE, Preboot eXecution Environment}.
@item @code{target}
This is a string denoting the target onto which to install the
@@ -28675,7 +29650,9 @@ The interpretation depends on the bootloader in question. For
the bootloader @command{installer} command, such as @code{/dev/sda} or
@code{(hd0)} (@pxref{Invoking grub-install,,, grub, GNU GRUB Manual}). For
@code{grub-efi-bootloader}, it should be the mount point of the EFI file
-system, usually @file{/boot/efi}.
+system, usually @file{/boot/efi}. For @code{grub-efi-netboot-bootloader},
+@code{target} should be the mount point corresponding to the TFTP root
+directory of your TFTP server.
@item @code{menu-entries} (default: @code{()})
A possibly empty list of @code{menu-entry} objects (see below), denoting
@@ -28837,7 +29814,7 @@ Data type representing the configuration of the GRUB theme.
@table @asis
@item @code{gfxmode} (default: @code{'("auto")})
-The GRUB @code{gfxmode} to set (a list of screen resolution strings, see
+The GRUB @code{gfxmode} to set (a list of screen resolution strings,
@pxref{gfxmode,,, grub, GNU GRUB manual}).
@end table
@end deftp
@@ -29158,24 +30135,28 @@ a value. Docker images are built to contain exactly what they need, so
the @option{--image-size} option is ignored in the case of
@code{docker-image}.
-You can specify the root file system type by using the
-@option{--file-system-type} option. It defaults to @code{ext4}. When its
-value is @code{iso9660}, the @option{--label} option can be used to specify
-a volume ID with @code{disk-image}.
+The @code{disk-image} command can produce various image types. The
+image type can be selected using the @command{--image-type} option. It
+defaults to @code{raw}. When its value is @code{iso9660}, the
+@option{--label} option can be used to specify a volume ID with
+@code{disk-image}.
-When using @code{vm-image}, the returned image is in qcow2 format, which
-the QEMU emulator can efficiently use. @xref{Running Guix in a VM},
-for more information on how to run the image in a virtual machine.
-
-When using @code{disk-image}, a raw disk image is produced; it can be
-copied as is to a USB stick, for instance. Assuming @code{/dev/sdc} is
-the device corresponding to a USB stick, one can copy the image to it
-using the following command:
+When using the @code{raw} image type, a raw disk image is produced; it
+can be copied as is to a USB stick, for instance. Assuming
+@code{/dev/sdc} is the device corresponding to a USB stick, one can copy
+the image to it using the following command:
@example
# dd if=$(guix system disk-image my-os.scm) of=/dev/sdc status=progress
@end example
+The @code{--list-image-types} command lists all the available image
+types.
+
+When using @code{vm-image}, the returned image is in qcow2 format, which
+the QEMU emulator can efficiently use. @xref{Running Guix in a VM},
+for more information on how to run the image in a virtual machine.
+
When using @code{docker-image}, a Docker image is produced. Guix builds
the image from scratch, not from a pre-existing Docker base image. As a
result, it contains @emph{exactly} what you define in the operating
@@ -29277,17 +30258,17 @@ information, one can rebuild the image to make sure it really contains
what it pretends to contain; or they could use that to derive a variant
of the image.
-@item --file-system-type=@var{type}
+@item --image-type=@var{type}
@itemx -t @var{type}
-For the @code{disk-image} action, create a file system of the given
-@var{type} on the image.
+For the @code{disk-image} action, create an image with given @var{type}.
-When this option is omitted, @command{guix system} uses @code{ext4}.
+When this option is omitted, @command{guix system} uses the @code{raw}
+image type.
@cindex ISO-9660 format
@cindex CD image format
@cindex DVD image format
-@option{--file-system-type=iso9660} produces an ISO-9660 image, suitable
+@option{--image-type=iso9660} produces an ISO-9660 image, suitable
for burning on CDs and DVDs.
@item --image-size=@var{size}
@@ -29496,7 +30477,8 @@ a Virtual Private Server (VPS) provider. In such a case, a different
Do note that you first need to generate a key pair on the coordinator machine
to allow the daemon to export signed archives of files from the store
-(@pxref{Invoking guix archive}).
+(@pxref{Invoking guix archive}), though this step is automatic on Guix
+System:
@example
# guix archive --generate-key
@@ -29886,7 +30868,7 @@ A service of this type is instantiated like this:
(service guix-service-type
(guix-configuration
(build-accounts 5)
- (use-substitutes? #f)))
+ (extra-options '("--gc-keep-derivations"))))
@end lisp
The second argument to the @code{service} form is a value representing
diff --git a/etc/committer.scm.in b/etc/committer.scm.in
index 2f247835f3..ebe6b96bcc 100755
--- a/etc/committer.scm.in
+++ b/etc/committer.scm.in
@@ -175,8 +175,8 @@ corresponding to the top-level definition containing the staged changes."
(let ((old-values (get-values old field))
(new-values (get-values new field)))
(or (equal? old-values new-values)
- (let ((removed (lset-difference eq? old-values new-values))
- (added (lset-difference eq? new-values old-values)))
+ (let ((removed (lset-difference equal? old-values new-values))
+ (added (lset-difference equal? new-values old-values)))
(format port
"[~a]: ~a~%" field
(match (list (map symbol->string removed)
diff --git a/etc/completion/bash/guix b/etc/completion/bash/guix
index 98d20484f7..fdbdf46810 100644
--- a/etc/completion/bash/guix
+++ b/etc/completion/bash/guix
@@ -27,8 +27,9 @@ _guix_complete_command ()
if [ -z "$_guix_commands" ]
then
# Cache the list of commands to speed things up.
- _guix_commands="$(guix --help 2> /dev/null \
- | grep '^ ' | cut -c 2-)"
+ _guix_commands="$(guix --help 2> /dev/null \
+ | grep '^ ' \
+ | sed '-es/^ *\([a-z-]\+\).*$/\1/g')"
fi
COMPREPLY=($(compgen -W "$_guix_commands" -- "$word_at_point"))
}
@@ -181,7 +182,7 @@ _guix_complete ()
*)
if _guix_is_command "package"
then
- if _guix_is_dash_L || _guix_is_dash_m
+ if _guix_is_dash_L || _guix_is_dash_m || _guix_is_dash_p
then
_guix_complete_file
elif _guix_is_removing
diff --git a/etc/guix-install.sh b/etc/guix-install.sh
index aa77d42615..7f0dd00e53 100755
--- a/etc/guix-install.sh
+++ b/etc/guix-install.sh
@@ -4,6 +4,8 @@
# Copyright © 2018 Ricardo Wurmus <rekado@elephly.net>
# Copyright © 2018 Efraim Flashner <efraim@flashner.co.il>
# Copyright © 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
+# Copyright © 2020 Morgan Smith <Morgan.J.Smith@outlook.com>
+# Copyright © 2020 Simon Tournier <zimon.toutoune@gmail.com>
#
# This file is part of GNU Guix.
#
@@ -53,6 +55,7 @@ REQUIRE=(
PAS=$'[ \033[32;1mPASS\033[0m ] '
ERR=$'[ \033[31;1mFAIL\033[0m ] '
+WAR=$'[ \033[33;1mWARN\033[0m ] '
INF="[ INFO ] "
DEBUG=0
@@ -150,6 +153,10 @@ chk_init_sys()
_msg "${INF}init system is: sysv-init"
INIT_SYS="sysv-init"
return 0
+ elif [[ $(openrc --version 2>/dev/null) =~ \(OpenRC\) ]]; then
+ _msg "${INF}init system is: OpenRC"
+ INIT_SYS="openrc"
+ return 0
else
INIT_SYS="NA"
_err "${ERR}Init system could not be detected."
@@ -194,6 +201,19 @@ chk_sys_arch()
ARCH_OS="${arch}-${os}"
}
+chk_sys_nscd()
+{ # Check if nscd is up and suggest to start it or install it
+ if [ "$(type -P pidof)" ]; then
+ if [ ! "$(pidof nscd)" ]; then
+ _msg "${WAR}We recommend installing and/or starting your distribution 'nscd' service"
+ _msg "${WAR}Please read 'info guix \"Application Setup\"' about \"Name Service Switch\""
+ fi
+ else
+ _msg "${INF}We cannot determine if your distribution 'nscd' service is running"
+ _msg "${INF}Please read 'info guix \"Application Setup\"' about \"Name Service Switch\""
+ fi
+}
+
# ------------------------------------------------------------------------------
#+MAIN
@@ -212,7 +232,7 @@ guix_get_bin_list()
| sort -Vu)")
latest_ver="$(echo "$bin_ver_ls" \
- | grep -oP "([0-9]{1,2}\.){2}[0-9]{1,2}" \
+ | grep -oE "([0-9]{1,2}\.){2}[0-9]{1,2}" \
| tail -n1)"
default_ver="guix-binary-${latest_ver}.${ARCH_OS}"
@@ -268,8 +288,7 @@ sys_create_store()
_debug "--- [ $FUNCNAME ] ---"
cd "$tmp_path"
- tar --warning=no-timestamp \
- --extract \
+ tar --extract \
--file "$pkg" &&
_msg "${PAS}unpacked archive"
@@ -384,6 +403,16 @@ sys_enable_guix_daemon()
service guix-daemon start; } &&
_msg "${PAS}enabled Guix daemon via sysv"
;;
+ openrc)
+ { mkdir -p /etc/init.d;
+ cp "${ROOT_HOME}/.config/guix/current/etc/openrc/guix-daemon" \
+ /etc/init.d/guix-daemon;
+ chmod 775 /etc/init.d/guix-daemon;
+
+ rc-update add guix-daemon default &&
+ rc-service guix-daemon start; } &&
+ _msg "${PAS}enabled Guix daemon via OpenRC"
+ ;;
NA|*)
_msg "${ERR}unsupported init system; run the daemon manually:"
echo " ${ROOT_HOME}/.config/guix/current/bin/guix-daemon --build-users-group=guixbuild"
@@ -445,6 +474,26 @@ export XDG_DATA_DIRS="$GUIX_PROFILE/share:${XDG_DATA_DIRS:-/usr/local/share/:/us
EOF
}
+sys_create_shell_completion()
+{ # Symlink supported shell completions system-wide
+
+ var_guix=/var/guix/profiles/per-user/root/current-guix
+ bash_completion=/etc/bash_completion.d
+ zsh_completion=/usr/share/zsh/site-functions
+ fish_completion=/usr/share/fish/vendor_completions.d
+
+ { # Just in case
+ for dir_shell in $bash_completion $zsh_completion $fish_completion; do
+ [ -d "$dir_shell" ] || mkdir -p $dir_shell
+ done;
+
+ ln -sf ${var_guix}/etc/bash_completion.d/* "$bash_completion";
+ ln -sf ${var_guix}/share/zsh/site-functions/* "$zsh_completion";
+ ln -sf ${var_guix}/share/fish/vendor_completions.d/* "$fish_completion"; } &&
+ _msg "${PAS}installed shell completion"
+}
+
+
welcome()
{
cat<<"EOF"
@@ -488,6 +537,7 @@ main()
chk_gpg_keyring
chk_init_sys
chk_sys_arch
+ chk_sys_nscd
_msg "${INF}system is ${ARCH_OS}"
@@ -502,6 +552,7 @@ main()
sys_enable_guix_daemon
sys_authorize_build_farms
sys_create_init_profile
+ sys_create_shell_completion
_msg "${INF}cleaning up ${tmp_path}"
rm -r "${tmp_path}"
diff --git a/etc/news.scm b/etc/news.scm
index 1ef238ca2d..f1887b60c3 100644
--- a/etc/news.scm
+++ b/etc/news.scm
@@ -2,6 +2,11 @@
;;
;; Copyright © 2019, 2020 Ludovic Courtès <ludo@gnu.org>
;; Copyright © 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
+;; Copyright © 2019, 2020 Miguel Ángel Arruga Vivas <rosen644835@gmail.com>
+;; Copyright © 2019, 2020 Konrad Hinsen <konrad.hinsen@fastmail.net>
+;; Copyright © 2019, 2020 Julien Lepiller <julien@lepiller.eu>
+;; Copyright © 2019, 2020 Florian Pelz <pelzflorian@pelzflorian.de>
+;; Copyright © 2020 Marius Bakke <mbakke@fastmail.com>
;; Copyright © 2020 Mathieu Othacehe <m.othacehe@gmail.com>
;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
;; Copyright © 2020 Maxim Cournoyer <maxim.cournoyer@gmail.com>
@@ -13,8 +18,297 @@
(channel-news
(version 0)
+ (entry (commit "abd7a474615353149a44f4504f0b4b248dcc0716")
+ (title (en "New @option{--with-c-toolchain} package transformation option")
+ (de "Neue Paketumwandlungsoption @option{--with-c-toolchain}")
+ (fr "Nouvelle option de transformation @option{--with-c-toolchain}"))
+ (body
+ (en "The new @option{--with-c-toolchain} package transformation
+options provides an easy way for developers to rebuild their favorite packages
+with the C/C++ tool chain of their choice instead of the default one.
+
+For example, the following command rebuilds the @code{fftw} and @code{fftwf}
+packages as well as every package that depends on them, up to and including
+@code{octave-cli}, using GCC version 10 (currently GCC 7.5 is used by
+default):
+
+@example
+guix build octave-cli \\
+ --with-c-toolchain=fftw=gcc-toolchain@@10 \\
+ --with-c-toolchain=fftwf=gcc-toolchain@@10
+@end example
+
+Run @command{info \"(guix) Package Transformation Options\"} for more info.")
+ (de "Die neue Paketumwandlungsoption @option{--with-c-toolchain}
+bietet Entwicklern die Möglichkeit, leicht ihre Lieblingspakete mit der
+selbstgewählten Toolchain für C/C++ anstelle der vorgegebenen neu zu
+erstellen.
+
+Zum Beispiel werden mit folgendem Befehl die Pakete @code{fftw} und
+@code{fftwf} sowie alle davon abhängigen Pakete bis einschließlich
+@code{octave-cli} mit Version 10 der GCC erstellt (vorgegeben wäre zurzeit,
+GCC 7.5 zu benutzen):
+
+@example
+guix build octave-cli \\
+ --with-c-toolchain=fftw=gcc-toolchain@@10 \\
+ --with-c-toolchain=fftwf=gcc-toolchain@@10
+@end example
+
+Führen Sie für mehr Informationen @command{info \"(guix.de)
+Paketumwandlungsoptionen\"} aus.")
+ (fr "La nouvelle option de transformation de paquets
+@option{--with-c-toolchain} permet aux développeur·euses de recompiler leurs
+paquets préférés avec la chaîne d'outils C/C++ de leur choix à la place de
+celle par défaut.
+
+Par exemple, la commande ci-dessous recompile @code{fftw}, @code{fftwf} et
+tous les paquets qui en dépendent, jusqu'à @code{octave-cli} inclus, avec GCC
+10 (actuellement c'est GCC 7.5 qui est utilisé par défaut):
+
+@example
+guix build octave-cli \\
+ --with-c-toolchain=fftw=gcc-toolchain@@10 \\
+ --with-c-toolchain=fftwf=gcc-toolchain@@10
+@end example
+
+Voir @command{info \"(guix.fr) Options de transformation de paquets\"} pour
+plus de détails.")))
+
+ (entry (commit "8e1907a72430aa989125b053573ef0897c480697")
+ (title (en "Package transformation options now recorded in profiles")
+ (es "Las opciones de transformación de paquetes ahora se
+quedan registradas en el perfil")
+ (de "Paketumwandlungsoptionen werden nun in Profilen gesichert")
+ (fr "Options de transformation sauvegardées dans les profils"))
+ (body
+ (en "When installing packages in a profile, package transformation
+options such as @option{--with-input} are now recorded in the profile. When
+you eventually run @command{guix upgrade}, those transformations will be
+automatically applied to the upgraded packages.
+
+Run @command{info \"(guix) Package Transformation Options\"} for more info.")
+ (es "Si durante la instalación de paquetes en un perfil se utilizaron
+opciones de transformación de paquetes, como por ejemplo
+@option{--with-input}, éstas se registran en el perfil. Cuando vuelva a
+ejecutar @command{guix upgrade}, dichas transformaciones se aplicarán
+automáticamente a los paquetes actualizados.
+
+Ejecute @command{info \"(guix.es) Opciones de transformación de paquetes\"}
+para obtener más información.")
+ (de "Wenn Sie ein Paket in ein Profil installieren, werden nun
+Paketumwandlungsoptionen wie @option{--with-input} im Profil gespeichert.
+Sobald Sie später @command{guix upgrade} ausführen, werden dieselben
+Umwandlungen automatisch auf die aktualisierten Pakete angewandt.
+
+Führen Sie für mehr Informationen @command{info \"(guix.de)
+Paketumwandlungsoptionen\"} aus.")
+ (fr "Lorsqu'on installe des paquets dans un profil, les options de
+transformation telles que @option{--with-input} sont désormais enregistrées
+dans le profil. Quand on le met plus tard à jour avec @command{guix upgrade},
+ces transformations sont automatiquement appliquées aux nouveaux paquets.
+
+Voir @command{info \"(guix.fr) Options de transformation de paquets\"} pour
+plus de détails.")))
+
+ (entry (commit "313f492657f1d0863c641fa5ee7f5b7028e27c94")
+ (title (en "New @option{--image-type} option for @command{guix system disk-image}.")
+ (es "Nueva opción @option{--image-type} para @command{guix system disk-image}.")
+ (de "Neue Option @option{--image-type} für @command{guix system disk-image}.")
+ (fr "Nouvelle option @option{--image-type} pour @command{guix system disk-image}."))
+ (body
+ (en "The @option{--file-system-type} option for @command{guix system
+disk-image} command has been replaced by the new @option{--image-type} option.
+By default, @code{raw} disk images are produced, but @code{hurd-qcow2},
+@code{hurd-raw}, @code{uncompressed-iso9660} and @code{iso9660} image types
+are also available.
+
+The @option{--list-image-types} option lists all the available image types.")
+ (es "La opción @option{--file-system-type} de @command{guix system
+disk-image} se ha sustituido por la nueva opción @option{--image-type}. De
+manera predeterminada se producen imágenes en formato crudo (@code{raw}) pero
+también están disponibles los tipos de imagen @code{hurd-qcow2},
+@code{hurd-raw}, @code{uncompressed-iso9660} y @code{iso9660}.
+
+La opción @option{--list-image-types} muestra una lista con todos los tipos
+de imagen disponibles.")
+ (de "Anstelle der Befehlszeilenoption @option{--file-system-type} für
+@command{guix system disk-image} gibt es nun die neue Option
+@option{--image-type}. In der Vorgabeeinstellung @code{raw} werden rohe
+Disk-Images erzeugt, aber es können auch die Abbildtypen @code{hurd-qcow2},
+@code{hurd-raw}, @code{uncompressed-iso9660} und @code{iso9660} ausgewählt
+werden.
+
+Mit der Option @option{--list-image-types} werden alle verfügbaren Abbildtypen
+aufgelistet.")
+ (fr "L'option @option{--file-system-type} pour la commande
+@command{guix system disk-image} a été remplacée par la nouvelle option
+@option{--image-type}. Par défaut, l'option @code{raw}, produisant des images
+disque brutes est sélectionnée. Les options @code{hurd-qcow2},
+@code{hurd-raw}, @code{uncompressed-iso9660} et @code{iso9660} sont également
+disponibles.
+
+La nouvelle option @option{--list-image-types} énumère les types d'image
+disponibles.")))
+
+ (entry (commit "8819551c8d2a12cd4e84e09b51e434d05a012c9d")
+ (title (en "Package transformations now apply to implicit inputs")
+ (es "Las transformaciones de paquetes ahora afectan también
+a las dependencias implícitas")
+ (de "Paketumwandlungen betreffen jetzt auch implizite Eingaben")
+ (fr "Les transformations de paquets s'appliquent aux
+dépendances implicites"))
+ (body
+ (en "Package transformation options such as @option{--with-branch},
+@option{--with-input}, and so on now apply to implicit inputs---previously
+only a package's explicit inputs would be affected. This allows for things
+such as replacing the Python dependency of a package that uses
+@code{python-build-system}:
+
+@example
+guix install --with-input=python=python2 python-itsdangerous
+@end example
+
+Another example is grafting a different version of the GNU C
+Library (@code{glibc} is an implicit input of almost all the packages and is
+``deep down'' in the dependency graph):
+
+@example
+guix build --with-graft=glibc=glibc@@2.31 hello
+@end example
+
+Run @command{info \"(guix) Package Transformation Options\"} for more
+info.")
+ (es "Las opciones de transformación de paquetes como
+@option{--with-branch}, @option{--with-input}, etcétera, ahora también
+influyen en las entradas implícitas---antes únicamente las entradas explícitas
+del paquete se veían afectadas. Esto permite, por ejemplo, sustituir la
+dependencia en python de un paquete que use @code{python-build-system}:
+
+@example
+guix install --with-input=python=python2 python-itsdangerous
+@end example
+
+Otro ejemplo podría ser el injerto de una versión diferente de la biblioteca
+de C de GNU (@code{glibc} es una entrada implícita de casi todos los paquetes
+y ``muy abajo'' en el grafo de dependencias):
+
+@example
+guix build --with-graft=glibc=glibc@@2.31 hello
+@end example
+
+Ejecute @command{info \"(guix.es) Opciones de transformación de paquetes\"}
+para obtener más información.")
+ (de "Paketumwandlungsoptionen wie @option{--with-branch},
+@option{--with-input} und so weiter betreffen nun auch implizite Eingaben —
+zuvor haben sie sich nur auf die expliziten Eingaben eines Pakets
+ausgewirkt. Dadurch kann jetzt zum Beispiel die Python-Abhängigkeit eines
+Pakets, welches @code{python-build-system} benutzt, ersetzt werden:
+
+@example
+guix install --with-input=python=python2 python-itsdangerous
+@end example
+
+Ein weiteres Beispiel ist, mit einer anderen Version der GNU-C-Bibliothek zu
+veredeln (@code{glibc} ist eine implizite Eingabe fast aller Pakete und steckt
+„ganz tief“ im Abhängigkeitsgraphen):
+
+@example
+guix build --with-graft=glibc=glibc@@2.31 hello
+@end example
+
+Führen Sie für mehr Informationen @command{info \"(guix.de)
+Paketumwandlungsoptionen\"} aus.")
+ (fr "Les options de transformation de paquets telles que
+@option{--with-branch} et @option{--with-input} s'appliquent désormais aux
+dépendances implicites — jusque là seules les dépendances explicites des
+paquets étaient prises en compte. Cela permet certaines choses telles que
+remplacer la dépendance sur Python d'un paquet utilisant
+@code{python-build-system} :
+
+@example
+guix install --with-input=python=python2 python-itsdangerous
+@end example
+
+Un autre exemple est la possibilité de greffer une version différente de la
+bibliothèque C GNU (la @code{glibc} est une dépendance implicite de tous les
+paquets et se trouve « tout en bas » du graphe de dépendance) :
+
+@example
+guix build --with-graft=glibc=glibc@@2.31 hello
+@end example
+
+Voir @command{info \"(guix.fr) Options de transformation de paquets\"} pour
+plus de détails.")))
+
+ (entry (commit "f458cfbcc54ed87b1a87dd9e150ea276f17eab74")
+ (title (en "New @option{--without-tests} transformation option")
+ (es "Nueva opción de transformación @option{--without-tests}")
+ (de "Neue Paketumwandlungsoption @option{--without-tests}")
+ (fr "Nouvelle option de transformation @option{--without-tests}"))
+ (body
+ (en "The new @option{--without-tests} package transformation option
+instructs Guix to skip the test suite of a given package. In the example
+below, @code{guile-gcrypt} is built using a variant of @code{automake} itself
+built without running its (lengthy) test suite:
+
+@example
+guix build guile-gcrypt --without-tests=automake
+@end example
+
+This is primarily useful as a way to speed up development cycles, or to work
+around flaky test suites---skipping tests can hide real issues, so use with
+care. Run @command{info \"(guix) Package Transformation Options\"} for more
+info.")
+ (es "La nueva opción de transformación de paquetes
+@option{--without-tests} indica a Guix que omita la batería de pruebas del
+paquete proporcionado. En el siguiente ejemplo @code{guile-gcrypt} se
+construye usando una variación de @code{automake}, la cual se ha construido
+sin ejecutar su (larga) batería de pruebas:
+
+@example
+guix build guile-gcrypt --without-tests=automake
+@end example
+
+Esto es principalmente útil como una forma de acelerar ciclos de desarrollo o
+de omitir temporalmente baterías de pruebas problemáticas---omitir las pruebas
+puede ocultar problemas reales, por lo que debe usarse con precaución.
+Ejecute @command{info \"(guix.es) Opciones de transformación de paquetes\"}
+para obtener más información.")
+ (de "Mit der neuen Paketumwandlungsoption @option{--without-tests}
+wird Guix angewiesen, den Testkatalog des angegebenen Pakets zu
+überspringen. Im folgenden Beispiel wird @code{guile-gcrypt} mit einer
+Variante von @code{automake} erstellt, die wiederum ohne Durchlauf ihres (viel
+Zeit in Anspruch nehmenden) Testkatalogs erstellt wird:
+
+@example
+guix build guile-gcrypt --without-tests=automake
+@end example
+
+Der hauptsächliche Nutzen liegt in der Beschleunigung von Entwicklungszyklen
+oder im Umgehen unzuverlässiger Testkataloge. Allerdings kann das Überspringen
+dazu führen, dass echte Probleme verborgen bleiben. Setzen Sie es mit Bedacht
+ein. Führen Sie @command{info \"(guix.de) Paketumwandlungsoptionen\"} aus, um
+mehr Informationen zu erhalten.")
+ (fr "La nouvelle option de transformation de paquets
+@option{--without-tests} demande à Guix de sauter la suite de tests d'un
+paquet. Dans l'exemple ci-dessous, @code{guile-gcrypt} est construit en
+utilisant une variante de @code{automake} construite sans lancer sa suite de
+tests :
+
+@example
+guix build guile-gcrypt --without-tests=automake
+@end example
+
+Cette option est surtout intéressante pour raccourcir le cycle de
+développement ou pour contourner une suite de tests qui n'est pas
+fiable — sauter les tests peut cacher des vrais problèmes, à utiliser avec
+précaution donc. Voir @command{info \"(guix.fr) Options de transformation de
+paquets\"} pour plus de détails.")))
+
(entry (commit "a98712785e0b042a290420fd74e5a4a5da4fc68f")
(title (en "New @command{guix git authenticate} command")
+ (es "Nueva orden @command{guix git authenticate}")
(de "Neuer Befehl @command{guix git authenticate}")
(fr "Nouvelle commande @command{guix git authenticate}"))
(body
@@ -30,6 +324,20 @@ to allow people to authenticate code fetched from your repository.
Run @command{info \"(guix) Invoking guix git authenticate\"} for more info,
and see @uref{https://guix.gnu.org/blog/2020/securing-updates/} for details on
these mechanisms.")
+ (es "La nueva orden @command{guix git authenticate} comprueba la
+validez de un repositorio git verificando las firmas de las revisiones y
+comprobando que todas las firmas están autorizadas, exactamente igual que
+@command{guix pull}.
+
+Esta orden es principalmente útil para desarrolladoras de canales. Permite
+asegurar, antes de subir nada al repositorio remoto, que el canal contiene
+únicamente revisiones firmadas por claves autorizadas. No obstante esta orden
+es útil siempre que use git y quiera que otras personas puedan verificar el
+código obtenido de su repositorio.
+
+Ejecute @command{info \"(guix.es) Invocación de guix git authenticate\"}
+para obtener más información y vea detalles sobre estos mecanismos en
+ @uref{https://guix.gnu.org/blog/2020/securing-updates/}.")
(de "Mit dem neuen Befehl @command{guix git authenticate} können Sie
ein Git-Repository authentifizieren. Dazu werden alle Commit-Signaturen
verifiziert und geprüft, dass jede von einer autorisierten Quelle kommt, genau
@@ -62,6 +370,7 @@ pour en savoir plus sur ces mécanismes.")))
(entry (commit "43badf261f4688c8a7a7a9004a4bff8acb205835")
(title (en "@command{guix pull} authenticates channels")
+ (es "@command{guix pull} verifica los canales")
(de "@command{guix pull} authentifiziert Kanäle")
(fr "@command{guix pull} authentifie les canaux"))
(body
@@ -74,6 +383,16 @@ repository and from attempts to ship malicious code to users.
This feature is currently limited to the @code{guix} channel but will soon be
available to third-party channel authors.")
+ (es "Las ordenes @command{guix pull} y @command{guix time-machine}
+ahora verifican el código fuente que obtienen, a menos que se proporcione la
+opción @option{--disable-authentication}. Lo que esto significa es que Guix se
+asegura de que cada revisión que recibe está firmada criptográficamente por
+una desarrolladora autorizada. Esto le protege de intentos de modificación del
+repositorio de Guix y de entregas de código con malas intenciones sobre las
+usuarias.
+
+Esta característica está limitada actualmente al canal @code{guix} pero pronto
+estará disponible para autoras de canales independientes.")
(de "Die Befehle @command{guix pull} und @command{guix time-machine}
prüfen nun die Authentizität des heruntergeladenen Quellcodes, außer wenn die
neue Befehlszeilenoption @option{--disable-authentication} angegeben
@@ -97,6 +416,7 @@ Cette fonctionnalité n'est actuellement disponible que pour le canal
(entry (commit "c924e541390f9595d819edc33c19d979917c15ec")
(title (en "@command{guix repl} adds support for running Guile scripts")
+ (es "@command{guix repl} puede ejecutar guiones de Guile")
(de "@command{guix repl} kann Guile-Skripte ausführen")
(fr "@command{guix repl} permet d'exécuter des scripts en langage Guile"))
(body
@@ -110,6 +430,18 @@ guix repl -- my-script,scm --option1 --option2=option-arg arg1 arg2
@end example
Run @command{info \"(guix) Invoking guix repl\"} for more information.")
+ (es "La orden @command{guix repl} ahora se puede usar para
+ejecutar guiones de Guile. En comparación con únicamente la ejecución
+de la orden @command{guile}, @command{guix repl} garantiza que todos
+los módulos de Guix y sus dependencias están disponibles en la ruta
+ de búsqueda. Los guiones se ejecutan de este modo:
+
+@example
+guix repl -- mi-guion.scm --opcion1 --opcion2=param-op2 param1 param2
+@end example
+
+Ejecute @command{info \"(guix.es) Invocación de guix repl\"} para obtener
+más información.")
(de "Der Befehl @command{guix repl} kann jetzt zur Ausführung von
Guile-Skripten verwendet werden. Im Vergleich zum Befehl
@command{guile} garantiert @command{guix repl}, dass alle Guix-Module und
@@ -136,6 +468,7 @@ Exécutez @command{info \"(guix.fr) Invoquer guix repl\"} pour plus d'informatio
(entry (commit "b460ba7992a0b4af2ddb5927dcf062784539ef7b")
(title (en "Add support to boot from a Btrfs subvolume")
+ (es "Implementado el arranque desde un subvolumen de Btrfs")
(de "Unterstützung für Systemstart von einem
Btrfs-Unterlaufwerk hinzugefügt")
(fr "Ajout du support pour démarrer depuis un sous-volume Btrfs")
@@ -146,6 +479,11 @@ operating system declaration now takes into account the use of a Btrfs
subvolume for the partition holding @file{/gnu/store}. Run the command
@command{info \"(guix) Btrfs file system\"} for more information and
examples.")
+ (es "El fichero de configuración de GRUB producido por la
+declaración de sistema operativo ahora tiene en cuenta el uso de
+subvolúmenes de Btrfs en la partición que contiene @file{/gnu/store}.
+Ejecute la orden @command{info \"(guix.es) Sistema de ficheros Btrfs\"}
+ para obtener más información y ejemplos.")
(de "Für die Erzeugung einer GRUB-Konfigurationsdatei aus einer
Betriebssystemdeklaration kann jetzt ein Btrfs-Unterlaufwerk („Subvolume“) für
die Partition mit @file{/gnu/store} angegeben werden. Führen Sie
@@ -165,6 +503,8 @@ voorbeelden.")))
(entry (commit "6456232164890dbf5aa20394ee24637feb4b7b9e")
(title (en "@command{guix pack -RR} introduces a new execution
engine")
+ (es "@command{guix pack -RR} introduce un nuevo motor
+de ejecución")
(de "@command{guix pack -RR} führt neuen Ausführungstreiber
ein"))
(body
@@ -185,6 +525,26 @@ export GUIX_EXECUTION_ENGINE
@end example
Run @command{info \"(guix) Invoking guix pack\"} for more information.")
+ (es "La orden @command{guix pack -RR} le permite crear un
+archivador tar que contiene @dfn{binarios reposicionables}. Hasta ahora
+dichos binarios dependían o bien de los ``espacios de nombres de usuarias
+sin privilegios'' de Linux o en PRoot, cuando estos no estaban
+implementados. No obstante, PRoot introduce una sobrecarga significativa
+en algunos escenarios de trabajo.
+
+Para estos casos @command{guix pack -RR} introduce una tercera opción
+basada en una extensión al enlazador de tiempo de ejecución de GNU (ld.so)
+y en Fakechroot, lo que conlleva muy poca sobrecarga. Puede seleccionar
+la opción más rápida cuando ejecute un binario reposicionable de esta
+manera:
+
+@example
+GUIX_EXECUTION_ENGINE=performance
+export GUIX_EXECUTION_ENGINE
+@end example
+
+Ejecute @command{info \"(guix.es) Invocación de guix pack\"} para
+obtener más información.")
(de "Mit dem Befehl @command{guix pack -RR} können Sie einen Tarball
mit @dfn{verschieblichen Binärdateien} erzeugen (englisch „Relocatable
Binaries“). Bisher wurden diese entweder in „unprivilegierten
@@ -209,6 +569,7 @@ mehr wissen wollen.")))
(entry (commit "88a96c568c47c97d05d883ada5afbc4e1200b10f")
(title (en "New @option{--path} option for @command{guix graph}")
+ (es "Nueva opción @option{--path} para @command{guix graph}")
(de "Neue Option @option{--path} für @command{guix graph}"))
(body
(en "The @command{guix graph} command has a new @option{--path}
@@ -221,6 +582,18 @@ guix graph --path libreoffice libunistring
@end example
Run @code{info \"(guix) Invoking guix graph\"} for more information.")
+ (es "La orden @command{guix graph} tiene una nueva opción
+@option{--path} que le indica que debe mostrar la ruta más corta entre dos
+paquetes, derivaciones o elementos del almacén. Por ejemplo, la siguiente
+orden muestra la ruta más corta desde el paquete @code{libreoffice} hasta
+@code{libunistring}:
+
+@example
+guix graph --path libreoffice libunistring
+@end example
+
+Ejecute @code{info \"(guix.es) Invocación de guix graph\"} para obtener más
+información.")
(de "Der Befehl @command{guix graph} verfügt über eine neue
Befehlszeilenoption @option{--path}, die ihn den kürzesten Pfad zwischen zwei
Paketen, Ableitungen oder Store-Objekten ausgeben lässt. Zum Beispiel zeigt
diff --git a/etc/openrc/guix-daemon.in b/etc/openrc/guix-daemon.in
new file mode 100644
index 0000000000..110a58b88d
--- /dev/null
+++ b/etc/openrc/guix-daemon.in
@@ -0,0 +1,28 @@
+#!/sbin/openrc-run
+# GNU Guix --- Functional package management for GNU
+# Copyright © 2020 Morgan Smith <Morgan.J.Smith@outlook.com>
+#
+# This file is part of GNU Guix.
+#
+# GNU Guix is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3 of the License, or (at
+# your option) any later version.
+#
+# GNU Guix is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
+
+export GUIX_LOCPATH=@localstatedir@/guix/profiles/per-user/root/guix-profile/lib/locale
+export LC_ALL=en_US.utf8
+command="@localstatedir@/guix/profiles/per-user/root/current-guix/bin/guix-daemon"
+command_args="--build-users-group=guixbuild"
+command_background="yes"
+pidfile="/var/run/guix-daemon.pid"
+
+output_log="/var/log/guix-daemon-stdout.log"
+error_log="/var/log/guix-daemon-stderr.log"
diff --git a/etc/release-manifest.scm b/etc/release-manifest.scm
index caa200c673..7f54fe8768 100644
--- a/etc/release-manifest.scm
+++ b/etc/release-manifest.scm
@@ -1,5 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2020 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -53,6 +54,7 @@ TARGET."
(append (map specification->package
'("xorg-server" "xfce" "gnome" "mate" "enlightenment"
"openbox" "awesome" "i3-wm" "ratpoison"
+ "emacs" "emacs-exwm" "emacs-desktop-environment"
"xlockmore" "slock" "libreoffice"
"connman" "network-manager" "network-manager-applet"
"openssh" "ntp" "tor"
diff --git a/gnu/bootloader/grub.scm b/gnu/bootloader/grub.scm
index f69bf8ed4d..611580a350 100644
--- a/gnu/bootloader/grub.scm
+++ b/gnu/bootloader/grub.scm
@@ -4,6 +4,7 @@
;;; Copyright © 2017 Leo Famulari <leo@famulari.name>
;;; Copyright © 2017, 2020 Mathieu Othacehe <m.othacehe@gmail.com>
;;; Copyright © 2019, 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
+;;; Copyright © 2019 Miguel Ángel Arruga Vivas <rosen644835@gmail.com>
;;; Copyright © 2020 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2020 Stefan <stefan-guix@vodafonemail.de>
;;;
@@ -23,14 +24,17 @@
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu bootloader grub)
+ #:use-module (guix build union)
#:use-module (guix records)
- #:use-module ((guix utils) #:select (%current-system))
+ #:use-module (guix store)
+ #:use-module (guix utils)
#:use-module (guix gexp)
#:use-module (gnu artwork)
#:use-module (gnu bootloader)
#:use-module (gnu system uuid)
#:use-module (gnu system file-systems)
#:use-module (gnu system keyboard)
+ #:use-module (gnu system locale)
#:use-module (gnu packages bootloaders)
#:autoload (gnu packages gtk) (guile-cairo guile-rsvg)
#:autoload (gnu packages xorg) (xkeyboard-config)
@@ -46,8 +50,11 @@
grub-theme-color-highlight
grub-theme-gfxmode
+ install-grub-efi-netboot
+
grub-bootloader
grub-efi-bootloader
+ grub-efi-netboot-bootloader
grub-mkrescue-bootloader
grub-minimal-bootloader
@@ -297,9 +304,11 @@ code."
(file-system-label->string label)))
((? (lambda (device)
(and (string? device) (string-contains device ":/"))) nfs-uri)
- ;; This assumes that if your root file system is on NFS, then
- ;; you also want to load your grub extra files, kernel and initrd
- ;; from there.
+ ;; If the device is an NFS share, then we assume that the expected
+ ;; file on that device (e.g. the GRUB background image or the kernel)
+ ;; has to be loaded over the network. Otherwise we would need an
+ ;; additional device information for some local disk to look for that
+ ;; file, which we do not have.
;;
;; We explicitly set "root=(tftp)" here even though if grub.cfg
;; had been loaded via TFTP, Grub would have set "root=(tftp)"
@@ -327,6 +336,7 @@ code."
(define* (grub-configuration-file config entries
#:key
+ (locale #f)
(system (%current-system))
(old-entries '())
store-directory-prefix)
@@ -391,6 +401,20 @@ menuentry ~s {
#:store-directory-prefix store-directory-prefix
#:port #~port)))
+ (define locale-config
+ #~(let ((locale #$(and locale
+ (locale-definition-source
+ (locale-name->definition locale)))))
+ (when locale
+ (format port "\
+# Localization configuration.
+if search --file --set boot_partition /grub/grub.cfg; then
+ set locale_dir=(${boot_partition})/grub/locale
+else
+ set locale_dir=/boot/grub/locale
+fi
+set lang=~a~%" locale))))
+
(define keyboard-layout-config
(let* ((layout (bootloader-configuration-keyboard-layout config))
(grub (bootloader-package
@@ -415,6 +439,7 @@ keymap ~a~%" #$keymap))))
# will be lost upon reconfiguration.
")
#$(sugar)
+ #$locale-config
#$keyboard-layout-config
(format port "
set default=~a
@@ -528,6 +553,99 @@ fi~%"))))
"--bootloader-id=Guix"
"--efi-directory" target-esp))))
+(define (install-grub-efi-netboot subdir)
+ "Define a grub-efi-netboot bootloader installer for installation in SUBDIR,
+which is usually efi/Guix or efi/boot."
+ (let* ((system (string-split (nix-system->gnu-triplet
+ (or (%current-target-system)
+ (%current-system)))
+ #\-))
+ (arch (first system))
+ (boot-efi-link (match system
+ ;; These are the supportend systems and the names
+ ;; defined by the UEFI standard for removable media.
+ (("i686" _ ...) "/bootia32.efi")
+ (("x86_64" _ ...) "/bootx64.efi")
+ (("arm" _ ...) "/bootarm.efi")
+ (("aarch64" _ ...) "/bootaa64.efi")
+ (("riscv" _ ...) "/bootriscv32.efi")
+ (("riscv64" _ ...) "/bootriscv64.efi")
+ ;; Other systems are not supported, although defined.
+ ;; (("riscv128" _ ...) "/bootriscv128.efi")
+ ;; (("ia64" _ ...) "/bootia64.efi")
+ ((_ ...) #f)))
+ (core-efi (string-append
+ ;; This is the arch dependent file name of GRUB, e.g.
+ ;; i368-efi/core.efi or arm64-efi/core.efi.
+ (match arch
+ ("i686" "i386")
+ ("aarch64" "arm64")
+ ("riscv" "riscv32")
+ (_ arch))
+ "-efi/core.efi")))
+ (with-imported-modules
+ '((guix build union))
+ #~(lambda (bootloader target mount-point)
+ "Install the BOOTLOADER, which must be the package grub, as e.g.
+bootx64.efi or bootaa64.efi into SUBDIR, which is usually efi/Guix or efi/boot,
+below the directory TARGET for the system whose root is mounted at MOUNT-POINT.
+
+MOUNT-POINT is the last argument in 'guix system init /etc/config.scm mnt/point'
+or '/' for other 'guix system' commands.
+
+TARGET is the target argument given to the bootloader-configuration in
+
+(operating-system
+ (bootloader (bootloader-configuration
+ (target \"/boot\")
+ …))
+ …)
+
+TARGET is required to be an absolute directory name, usually mounted via NFS,
+and finally needs to be provided by a TFTP server as the TFTP root directory.
+
+GRUB will load tftp://server/SUBDIR/grub.cfg and this file will instruct it to
+load more files from the store like tftp://server/gnu/store/…-linux…/Image.
+
+To make this possible two symlinks will be created. The first symlink points
+relatively form MOUNT-POINT/TARGET/SUBDIR/grub.cfg to
+MOUNT-POINT/boot/grub/grub.cfg, and the second symlink points relatively from
+MOUNT-POINT/TARGET/%store-prefix to MOUNT-POINT/%store-prefix.
+
+It is important to note that these symlinks need to be relativ, as the absolute
+paths on the TFTP server side are unknown.
+
+It is also important to note that both symlinks will point outside the TFTP root
+directory and that the TARGET/%store-prefix symlink makes the whole store
+accessible via TFTP. Possibly the TFTP server must be configured
+to allow accesses outside its TFTP root directory. This may need to be
+considered for security aspects."
+ (use-modules ((guix build union) #:select (symlink-relative)))
+ (let* ((net-dir (string-append mount-point target "/"))
+ (sub-dir (string-append net-dir #$subdir "/"))
+ (store (string-append mount-point (%store-prefix)))
+ (store-link (string-append net-dir (%store-prefix)))
+ (grub-cfg (string-append mount-point "/boot/grub/grub.cfg"))
+ (grub-cfg-link (string-append sub-dir (basename grub-cfg)))
+ (boot-efi-link (string-append sub-dir #$boot-efi-link)))
+ ;; Prepare the symlink to the store.
+ (mkdir-p (dirname store-link))
+ (false-if-exception (delete-file store-link))
+ (symlink-relative store store-link)
+ ;; Prepare the symlink to the grub.cfg, which points into the store.
+ (mkdir-p (dirname grub-cfg-link))
+ (false-if-exception (delete-file grub-cfg-link))
+ (symlink-relative grub-cfg grub-cfg-link)
+ ;; Install GRUB, which refers to the grub.cfg, with support for
+ ;; encrypted partitions,
+ (setenv "GRUB_ENABLE_CRYPTODISK" "y")
+ (invoke/quiet (string-append bootloader "/bin/grub-mknetdir")
+ (string-append "--net-directory=" net-dir)
+ (string-append "--subdir=" #$subdir))
+ ;; Prepare the bootloader symlink, which points to core.efi of GRUB.
+ (false-if-exception (delete-file boot-efi-link))
+ (symlink #$core-efi boot-efi-link))))))
+
;;;
@@ -560,6 +678,12 @@ fi~%"))))
(name 'grub-efi)
(package grub-efi)))
+(define grub-efi-netboot-bootloader
+ (bootloader
+ (inherit grub-efi-bootloader)
+ (name 'grub-efi-netboot-bootloader)
+ (installer (install-grub-efi-netboot "efi/Guix"))))
+
(define grub-mkrescue-bootloader
(bootloader
(inherit grub-efi-bootloader)
diff --git a/gnu/bootloader/u-boot.scm b/gnu/bootloader/u-boot.scm
index 1da9d04eb2..c57d4964c8 100644
--- a/gnu/bootloader/u-boot.scm
+++ b/gnu/bootloader/u-boot.scm
@@ -45,7 +45,7 @@
u-boot-wandboard-bootloader))
(define install-u-boot
- #~(lambda (bootloader device mount-point)
+ #~(lambda (bootloader root-index image)
(if bootloader
(error "Failed to install U-Boot"))))
@@ -56,74 +56,74 @@
;; the MLO and is expected at 0x60000. Write both first stage ("MLO") and
;; second stage ("u-boot.img") images, read in BOOTLOADER directory, to the
;; specified DEVICE.
- #~(lambda (bootloader device mount-point)
+ #~(lambda (bootloader root-index image)
(let ((mlo (string-append bootloader "/libexec/MLO"))
(u-boot (string-append bootloader "/libexec/u-boot.img")))
(write-file-on-device mlo (* 256 512)
- device (* 256 512))
+ image (* 256 512))
(write-file-on-device u-boot (* 1024 512)
- device (* 768 512)))))
+ image (* 768 512)))))
(define install-allwinner-u-boot
- #~(lambda (bootloader device mount-point)
+ #~(lambda (bootloader root-index image)
(let ((u-boot (string-append bootloader
"/libexec/u-boot-sunxi-with-spl.bin")))
(write-file-on-device u-boot (stat:size (stat u-boot))
- device (* 8 1024)))))
+ image (* 8 1024)))))
(define install-allwinner64-u-boot
- #~(lambda (bootloader device mount-point)
+ #~(lambda (bootloader root-index image)
(let ((spl (string-append bootloader "/libexec/spl/sunxi-spl.bin"))
(u-boot (string-append bootloader "/libexec/u-boot.itb")))
(write-file-on-device spl (stat:size (stat spl))
- device (* 8 1024))
+ image (* 8 1024))
(write-file-on-device u-boot (stat:size (stat u-boot))
- device (* 40 1024)))))
+ image (* 40 1024)))))
(define install-imx-u-boot
- #~(lambda (bootloader device mount-point)
+ #~(lambda (bootloader root-index image)
(let ((spl (string-append bootloader "/libexec/SPL"))
(u-boot (string-append bootloader "/libexec/u-boot.img")))
(write-file-on-device spl (stat:size (stat spl))
- device (* 1 1024))
+ image (* 1 1024))
(write-file-on-device u-boot (stat:size (stat u-boot))
- device (* 69 1024)))))
+ image (* 69 1024)))))
(define install-puma-rk3399-u-boot
- #~(lambda (bootloader device mount-point)
+ #~(lambda (bootloader root-index image)
(let ((spl (string-append bootloader "/libexec/u-boot-spl.rksd"))
(u-boot (string-append bootloader "/libexec/u-boot.itb")))
(write-file-on-device spl (stat:size (stat spl))
- device (* 64 512))
+ image (* 64 512))
(write-file-on-device u-boot (stat:size (stat u-boot))
- device (* 512 512)))))
+ image (* 512 512)))))
(define install-firefly-rk3399-u-boot
- #~(lambda (bootloader device mount-point)
+ #~(lambda (bootloader root-index image)
(let ((idb (string-append bootloader "/libexec/idbloader.img"))
(u-boot (string-append bootloader "/libexec/u-boot.itb")))
(write-file-on-device idb (stat:size (stat idb))
- device (* 64 512))
+ image (* 64 512))
(write-file-on-device u-boot (stat:size (stat u-boot))
- device (* 16384 512)))))
+ image (* 16384 512)))))
(define install-rock64-rk3328-u-boot
- #~(lambda (bootloader device mount-point)
+ #~(lambda (bootloader root-index image)
(let ((idb (string-append bootloader "/libexec/idbloader.img"))
(u-boot (string-append bootloader "/libexec/u-boot.itb")))
(write-file-on-device idb (stat:size (stat idb))
- device (* 64 512))
+ image (* 64 512))
(write-file-on-device u-boot (stat:size (stat u-boot))
- device (* 16384 512)))))
+ image (* 16384 512)))))
(define install-rockpro64-rk3399-u-boot
- #~(lambda (bootloader device mount-point)
+ #~(lambda (bootloader root-index image)
(let ((idb (string-append bootloader "/libexec/idbloader.img"))
(u-boot (string-append bootloader "/libexec/u-boot.itb")))
(write-file-on-device idb (stat:size (stat idb))
- device (* 64 512))
+ image (* 64 512))
(write-file-on-device u-boot (stat:size (stat u-boot))
- device (* 16384 512)))))
+ image (* 16384 512)))))
(define install-pinebook-pro-rk3399-u-boot install-rockpro64-rk3399-u-boot)
@@ -138,28 +138,29 @@
(inherit extlinux-bootloader)
(name 'u-boot)
(package #f)
- (installer install-u-boot)))
+ (installer #f)
+ (disk-image-installer install-u-boot)))
(define u-boot-beaglebone-black-bootloader
(bootloader
(inherit u-boot-bootloader)
(package u-boot-am335x-boneblack)
- (installer install-beaglebone-black-u-boot)))
+ (disk-image-installer install-beaglebone-black-u-boot)))
(define u-boot-allwinner-bootloader
(bootloader
(inherit u-boot-bootloader)
- (installer install-allwinner-u-boot)))
+ (disk-image-installer install-allwinner-u-boot)))
(define u-boot-allwinner64-bootloader
(bootloader
(inherit u-boot-bootloader)
- (installer install-allwinner64-u-boot)))
+ (disk-image-installer install-allwinner64-u-boot)))
(define u-boot-imx-bootloader
(bootloader
(inherit u-boot-bootloader)
- (installer install-imx-u-boot)))
+ (disk-image-installer install-imx-u-boot)))
(define u-boot-nintendo-nes-classic-edition-bootloader
(bootloader
@@ -196,7 +197,7 @@
(bootloader
(inherit u-boot-bootloader)
(package u-boot-firefly-rk3399)
- (installer install-firefly-rk3399-u-boot)))
+ (disk-image-installer install-firefly-rk3399-u-boot)))
(define u-boot-mx6cuboxi-bootloader
(bootloader
@@ -232,25 +233,25 @@
(bootloader
(inherit u-boot-bootloader)
(package u-boot-puma-rk3399)
- (installer install-puma-rk3399-u-boot)))
+ (disk-image-installer install-puma-rk3399-u-boot)))
(define u-boot-rock64-rk3328-bootloader
;; SD and eMMC use the same format
(bootloader
(inherit u-boot-bootloader)
(package u-boot-rock64-rk3328)
- (installer install-rock64-rk3328-u-boot)))
+ (disk-image-installer install-rock64-rk3328-u-boot)))
(define u-boot-rockpro64-rk3399-bootloader
;; SD and eMMC use the same format
(bootloader
(inherit u-boot-bootloader)
(package u-boot-rockpro64-rk3399)
- (installer install-rockpro64-rk3399-u-boot)))
+ (disk-image-installer install-rockpro64-rk3399-u-boot)))
(define u-boot-pinebook-pro-rk3399-bootloader
;; SD and eMMC use the same format
(bootloader
(inherit u-boot-bootloader)
(package u-boot-pinebook-pro-rk3399)
- (installer install-pinebook-pro-rk3399-u-boot)))
+ (disk-image-installer install-pinebook-pro-rk3399-u-boot)))
diff --git a/gnu/build/bootloader.scm b/gnu/build/bootloader.scm
index 498022f6db..5ec839f902 100644
--- a/gnu/build/bootloader.scm
+++ b/gnu/build/bootloader.scm
@@ -22,6 +22,8 @@
#:use-module (guix utils)
#:use-module (ice-9 binary-ports)
#:use-module (ice-9 format)
+ #:use-module (rnrs io ports)
+ #:use-module (rnrs io simple)
#:export (write-file-on-device
install-efi-loader))
@@ -35,11 +37,14 @@
(call-with-input-file file
(lambda (input)
(let ((bv (get-bytevector-n input size)))
- (call-with-output-file device
- (lambda (output)
- (seek output offset SEEK_SET)
- (put-bytevector output bv))
- #:binary #t)))))
+ (call-with-port
+ (open-file-output-port device
+ (file-options no-truncate no-create)
+ (buffer-mode block)
+ (native-transcoder))
+ (lambda (output)
+ (seek output offset SEEK_SET)
+ (put-bytevector output bv)))))))
;;;
diff --git a/gnu/build/hurd-boot.scm b/gnu/build/hurd-boot.scm
index adc8b4ce16..e66d4d1ba8 100644
--- a/gnu/build/hurd-boot.scm
+++ b/gnu/build/hurd-boot.scm
@@ -211,6 +211,9 @@ set."
("dev/vcs" ("/hurd/console"))
("dev/tty" ("/hurd/magic" "tty") #o666)
+ ;; 'fd_to_filename' in libc expects it.
+ ("dev/fd" ("/hurd/magic" "--directory" "fd") #o555)
+
("dev/tty1" ("/hurd/term" "/dev/tty1" "hurdio" "/dev/vcs/1/console")
#o666)
("dev/tty2" ("/hurd/term" "/dev/tty2" "hurdio" "/dev/vcs/2/console")
@@ -240,10 +243,10 @@ set."
(for-each scope-set-translator devices)
(false-if-EEXIST (symlink "/dev/random" (scope "dev/urandom")))
- (mkdir* "dev/fd")
(false-if-EEXIST (symlink "/dev/fd/0" (scope "dev/stdin")))
(false-if-EEXIST (symlink "/dev/fd/1" (scope "dev/stdout")))
(false-if-EEXIST (symlink "/dev/fd/2" (scope "dev/stderr")))
+ (false-if-EEXIST (symlink "crash-dump-core" (scope "servers/crash")))
;; Make sure /etc/mtab is a symlink to /proc/mounts.
(false-if-exception (delete-file (scope "etc/mtab")))
diff --git a/gnu/build/image.scm b/gnu/build/image.scm
index b6bf259f1b..ff63039c16 100644
--- a/gnu/build/image.scm
+++ b/gnu/build/image.scm
@@ -37,6 +37,7 @@
#:use-module (srfi srfi-34)
#:use-module (srfi srfi-35)
#:export (make-partition-image
+ convert-disk-image
genimage
initialize-efi-partition
initialize-root-partition
@@ -120,13 +121,22 @@ ROOT directory to populate the image."
(format (current-error-port)
"Unsupported partition type~%.")))))
-(define* (genimage config target)
+(define (convert-disk-image image format output)
+ "Convert IMAGE to OUTPUT according to the given FORMAT."
+ (case format
+ ((compressed-qcow2)
+ (begin
+ (invoke "qemu-img" "convert" "-c" "-f" "raw"
+ "-O" "qcow2" image output)))
+ (else
+ (copy-file image output))))
+
+(define* (genimage config)
"Use genimage to generate in TARGET directory, the image described in the
given CONFIG file."
;; genimage needs a 'root' directory.
(mkdir "root")
- (invoke "genimage" "--config" config
- "--outputpath" target))
+ (invoke "genimage" "--config" config))
(define* (register-closure prefix closure
#:key
diff --git a/gnu/build/linux-container.scm b/gnu/build/linux-container.scm
index 2d4de788df..4a8bed5a9a 100644
--- a/gnu/build/linux-container.scm
+++ b/gnu/build/linux-container.scm
@@ -170,7 +170,8 @@ for the process."
(pivot-root root put-old)
(chdir "/")
(umount "real-root" MNT_DETACH)
- (rmdir "real-root")))
+ (rmdir "real-root")
+ (chmod "/" #o755)))
(define* (initialize-user-namespace pid host-uids
#:key (guest-uid 0) (guest-gid 0))
diff --git a/gnu/build/secret-service.scm b/gnu/build/secret-service.scm
index 781651e90d..46dcf1b9c3 100644
--- a/gnu/build/secret-service.scm
+++ b/gnu/build/secret-service.scm
@@ -35,44 +35,86 @@
;;;
;;; Code:
-(define* (secret-service-send-secrets port secret-root #:key (retry 60))
- "Copy all files under SECRET-ROOT using TCP to secret-service listening at
-local PORT. If connect fails, sleep 1s and retry RETRY times."
+(define-syntax log
+ (lambda (s)
+ "Log the given message."
+ (syntax-case s ()
+ ((_ fmt args ...)
+ (with-syntax ((fmt (string-append "secret service: "
+ (syntax->datum #'fmt))))
+ ;; Log to the current output port. That way, when
+ ;; 'secret-service-send-secrets' is called from shepherd, output goes
+ ;; to syslog.
+ #'(format (current-output-port) fmt args ...))))))
+(define* (secret-service-send-secrets port secret-root
+ #:key (retry 60)
+ (handshake-timeout 120))
+ "Copy all files under SECRET-ROOT using TCP to secret-service listening at
+local PORT. If connect fails, sleep 1s and retry RETRY times; once connected,
+wait for at most HANDSHAKE-TIMEOUT seconds for handshake to complete. Return
+#f on failure."
(define (file->file+size+mode file-name)
(let ((stat (stat file-name))
(target (substring file-name (string-length secret-root))))
(list target (stat:size stat) (stat:mode stat))))
- (format (current-error-port) "sending secrets to ~a~%" port)
+ (define (send-files sock)
+ (let* ((files (if secret-root (find-files secret-root) '()))
+ (files-sizes-modes (map file->file+size+mode files))
+ (secrets `(secrets
+ (version 0)
+ (files ,files-sizes-modes))))
+ (write secrets sock)
+ (for-each (lambda (file)
+ (call-with-input-file file
+ (lambda (input)
+ (dump-port input sock))))
+ files)))
+
+ (log "sending secrets to ~a~%" port)
(let ((sock (socket AF_INET SOCK_STREAM 0))
(addr (make-socket-address AF_INET INADDR_LOOPBACK port)))
- ;; connect to wait for port
+ ;; Connect to QEMU on the forwarded port. The 'connect' call succeeds as
+ ;; soon as QEMU is ready, even if there's no server listening on the
+ ;; forward port inside the guest.
(let loop ((retry retry))
(catch 'system-error
(cute connect sock addr)
(lambda (key . args)
(when (zero? retry)
(apply throw key args))
- (format (current-error-port) "retrying connection~%")
+ (log "retrying connection [~a attempts left]~%"
+ (- retry 1))
(sleep 1)
(loop (1- retry)))))
- (format (current-error-port) "connected! sending files in ~s %~"
- secret-root)
- (let* ((files (if secret-root (find-files secret-root) '()))
- (files-sizes-modes (map file->file+size+mode files))
- (secrets `(secrets
- (version 0)
- (files ,files-sizes-modes))))
- (write secrets sock)
- (for-each (compose (cute dump-port <> sock)
- (cute open-input-file <>))
- files))))
+ (log "connected; waiting for handshake...~%")
+
+ ;; Wait for "hello" message from the server. This is the only way to know
+ ;; that we're really connected to the server inside the guest.
+ (match (select (list sock) '() '() handshake-timeout)
+ (((_) () ())
+ (match (read sock)
+ (('secret-service-server ('version version ...))
+ (log "sending files from ~s...~%" secret-root)
+ (send-files sock)
+ (log "done sending files to port ~a~%" port)
+ (close-port sock)
+ secret-root)
+ (x
+ (log "invalid handshake ~s~%" x)
+ (close-port sock)
+ #f)))
+ ((() () ()) ;timeout
+ (log "timeout while sending files to ~a~%" port)
+ (close-port sock)
+ #f))))
(define (secret-service-receive-secrets port)
"Listen to local PORT and wait for a secret service client to send secrets.
-Write them to the file system."
+Write them to the file system. Return the list of files installed on success,
+and #f otherwise."
(define (wait-for-client port)
;; Wait for a TCP connection on PORT. Note: We cannot use the
@@ -81,16 +123,26 @@ Write them to the file system."
(let ((sock (socket AF_INET SOCK_STREAM 0)))
(bind sock AF_INET INADDR_ANY port)
(listen sock 1)
- (format (current-error-port)
- "waiting for secrets on port ~a...~%"
- port)
- (match (accept sock)
- ((client . address)
- (format (current-error-port) "client connection from ~a~%"
+ (log "waiting for secrets on port ~a...~%" port)
+ (match (select (list sock) '() '() 60)
+ (((_) () ())
+ (match (accept sock)
+ ((client . address)
+ (log "client connection from ~a~%"
(inet-ntop (sockaddr:fam address)
(sockaddr:addr address)))
+
+ ;; Send a "hello" message. This allows the client running on the
+ ;; host to know that it's now actually connected to server running
+ ;; in the guest.
+ (write '(secret-service-server (version 0)) client)
+ (force-output client)
+ (close-port sock)
+ client)))
+ ((() () ())
+ (log "did not receive any secrets; time out~%")
(close-port sock)
- client))))
+ #f))))
;; TODO: Remove when (@ (guix build utils) dump-port) has a 'size'
;; parameter.
@@ -115,23 +167,24 @@ Write them to the file system."
(('secrets ('version 0)
('files ((files sizes modes) ...)))
(for-each (lambda (file size mode)
- (format (current-error-port)
- "installing file '~a' (~a bytes)...~%"
- file size)
+ (log "installing file '~a' (~a bytes)...~%"
+ file size)
(mkdir-p (dirname file))
(call-with-output-file file
(lambda (output)
(dump port output size)
(chmod file mode))))
- files sizes modes))
+ files sizes modes)
+ (log "received ~a secret files~%" (length files))
+ files)
(_
- (format (current-error-port)
- "invalid secrets received~%")
+ (log "invalid secrets received~%")
#f)))
- (let* ((port (wait-for-client port))
- (result (read-secrets port)))
- (close-port port)
+ (let* ((port (wait-for-client port))
+ (result (and=> port read-secrets)))
+ (when port
+ (close-port port))
result))
;;; secret-service.scm ends here
diff --git a/gnu/build/shepherd.scm b/gnu/build/shepherd.scm
index 65141bd60f..91646288d5 100644
--- a/gnu/build/shepherd.scm
+++ b/gnu/build/shepherd.scm
@@ -1,5 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2017, 2018, 2019, 2020 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2020 Mathieu Othacehe <othacehe@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -196,11 +197,16 @@ namespace, in addition to essential bind-mounts such /proc."
#:allow-other-keys
#:rest args)
"This is a variant of 'fork+exec-command' procedure, that joins the
-namespaces of process PID beforehand."
- (container-excursion* pid
- (lambda ()
- (apply fork+exec-command command
- (strip-keyword-arguments '(#:pid) args)))))
+namespaces of process PID beforehand. If there is no support for containers,
+on Hurd systems for instance, fallback to direct forking."
+ (let ((container-support?
+ (file-exists? "/proc/self/ns"))
+ (fork-proc (lambda ()
+ (apply fork+exec-command command
+ (strip-keyword-arguments '(#:pid) args)))))
+ (if container-support?
+ (container-excursion* pid fork-proc)
+ (fork-proc))))
;; Local Variables:
;; eval: (put 'container-excursion* 'scheme-indent-function 1)
diff --git a/gnu/ci.scm b/gnu/ci.scm
index 0ce32ef8d8..bf9952a450 100644
--- a/gnu/ci.scm
+++ b/gnu/ci.scm
@@ -1,6 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020 Ludovic Courtès <ludo@gnu.org>
-;;; Copyright © 2017 Jan Nieuwenhuizen <janneke@gnu.org>
+;;; Copyright © 2017, 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2018, 2019 Clément Lassieur <clement@lassieur.org>
;;; Copyright © 2020 Julien Lepiller <julien@lepiller.eu>
;;;
@@ -56,6 +56,7 @@
#:use-module (gnu system vm)
#:use-module (gnu system install)
#:use-module (gnu system images hurd)
+ #:use-module (gnu system images pine64)
#:use-module (gnu tests)
#:use-module (srfi srfi-1)
#:use-module (srfi srfi-26)
@@ -75,28 +76,36 @@
#:optional (package-derivation package-derivation))
"Convert PACKAGE to an alist suitable for Hydra."
(parameterize ((%graft? #f))
- `((derivation . ,(derivation-file-name
- (package-derivation store package system
- #:graft? #f)))
- (description . ,(package-synopsis package))
- (long-description . ,(package-description package))
-
- ;; XXX: Hydra ignores licenses that are not a <license> structure or a
- ;; list thereof.
- (license . ,(let loop ((license (package-license package)))
- (match license
- ((? license?)
- (license-name license))
- ((lst ...)
- (map loop license)))))
-
- (home-page . ,(package-home-page package))
- (maintainers . ("bug-guix@gnu.org"))
- (max-silent-time . ,(or (assoc-ref (package-properties package)
- 'max-silent-time)
- 3600)) ;1 hour by default
- (timeout . ,(or (assoc-ref (package-properties package) 'timeout)
- 72000))))) ;20 hours by default
+ (let ((drv (package-derivation store package system
+ #:graft? #f)))
+ `((derivation . ,(derivation-file-name drv))
+ (log . ,(log-file store (derivation-file-name drv)))
+ (outputs . ,(filter-map (lambda (res)
+ (match res
+ ((name . path)
+ `(,name . ,path))))
+ (derivation->output-paths drv)))
+ (nix-name . ,(derivation-name drv))
+ (system . ,(derivation-system drv))
+ (description . ,(package-synopsis package))
+ (long-description . ,(package-description package))
+
+ ;; XXX: Hydra ignores licenses that are not a <license> structure or a
+ ;; list thereof.
+ (license . ,(let loop ((license (package-license package)))
+ (match license
+ ((? license?)
+ (license-name license))
+ ((lst ...)
+ (map loop license)))))
+
+ (home-page . ,(package-home-page package))
+ (maintainers . ("bug-guix@gnu.org"))
+ (max-silent-time . ,(or (assoc-ref (package-properties package)
+ 'max-silent-time)
+ 3600)) ;1 hour by default
+ (timeout . ,(or (assoc-ref (package-properties package) 'timeout)
+ 72000)))))) ;20 hours by default
(define (package-job store job-name package system)
"Return a job called JOB-NAME that builds PACKAGE on SYSTEM."
@@ -195,12 +204,21 @@ SYSTEM."
'("x86_64-linux" "i686-linux"))
(define %guix-system-images
- (list hurd-barebones-disk-image))
+ (list hurd-barebones-qcow2-image
+ pine64-barebones-raw-image))
(define (image-jobs store system)
"Return a list of jobs that build images for SYSTEM."
(define (->alist drv)
`((derivation . ,(derivation-file-name drv))
+ (log . ,(log-file store (derivation-file-name drv)))
+ (outputs . ,(filter-map (lambda (res)
+ (match res
+ ((name . path)
+ `(,name . ,path))))
+ (derivation->output-paths drv)))
+ (nix-name . ,(derivation-name drv))
+ (system . ,(derivation-system drv))
(description . "Stand-alone image of the GNU system")
(long-description . "This is a demo stand-alone image of the GNU
system.")
@@ -304,6 +322,14 @@ system.")
(system-test-value test))))
`((derivation . ,(derivation-file-name drv))
+ (log . ,(log-file store (derivation-file-name drv)))
+ (outputs . ,(filter-map (lambda (res)
+ (match res
+ ((name . path)
+ `(,name . ,path))))
+ (derivation->output-paths drv)))
+ (nix-name . ,(derivation-name drv))
+ (system . ,(derivation-system drv))
(description . ,(format #f "Guix '~a' system test"
(system-test-name test)))
(long-description . ,(system-test-description test))
@@ -333,6 +359,14 @@ system.")
"Return Hydra jobs to build the self-contained Guix binary tarball."
(define (->alist drv)
`((derivation . ,(derivation-file-name drv))
+ (log . ,(log-file store (derivation-file-name drv)))
+ (outputs . ,(filter-map (lambda (res)
+ (match res
+ ((name . path)
+ `(,name . ,path))))
+ (derivation->output-paths drv)))
+ (nix-name . ,(derivation-name drv))
+ (system . ,(derivation-system drv))
(description . "Stand-alone binary Guix tarball")
(long-description . "This is a tarball containing binaries of Guix and
all its dependencies, and ready to be installed on \"foreign\" distributions.")
@@ -511,20 +545,16 @@ Return #f if no such checkout is found."
(cross-jobs store system)))
((hello)
;; Build hello package only.
- (if (string=? system (%current-system))
- (let ((hello (specification->package "hello")))
- (list (package-job store (job-name hello) hello system)))
- '()))
+ (let ((hello (specification->package "hello")))
+ (list (package-job store (job-name hello) hello system))))
((list)
;; Build selected list of packages only.
- (if (string=? system (%current-system))
- (let* ((names (assoc-ref arguments 'subset))
- (packages (map specification->package names)))
- (map (lambda (package)
- (package-job store (job-name package)
- package system))
- packages))
- '()))
+ (let* ((names (assoc-ref arguments 'subset))
+ (packages (map specification->package names)))
+ (map (lambda (package)
+ (package-job store (job-name package)
+ package system))
+ packages)))
((manifests)
;; Build packages in the list of manifests.
(let* ((manifests (arguments->manifests arguments))
diff --git a/gnu/image.scm b/gnu/image.scm
index dc66f2c533..a60d83b175 100644
--- a/gnu/image.scm
+++ b/gnu/image.scm
@@ -39,7 +39,14 @@
image-partitions
image-compression?
image-volatile-root?
- image-substitutable?))
+ image-substitutable?
+
+ image-type
+ image-type?
+ image-type-name
+ image-type-constructor
+
+ os->image))
;;;
@@ -84,3 +91,23 @@
(default #t))
(substitutable? image-substitutable? ;boolean
(default #t)))
+
+
+;;;
+;;; Image type.
+;;;
+
+(define-record-type* <image-type>
+ image-type make-image-type
+ image-type?
+ (name image-type-name) ;symbol
+ (constructor image-type-constructor)) ;<operating-system> -> <image>
+
+
+;;;
+;;; Image creation.
+;;;
+
+(define* (os->image os #:key type)
+ (let ((constructor (image-type-constructor type)))
+ (constructor os)))
diff --git a/gnu/installer.scm b/gnu/installer.scm
index 5c3192d7a6..f401b242f8 100644
--- a/gnu/installer.scm
+++ b/gnu/installer.scm
@@ -71,7 +71,7 @@
(_ #f)))
(define* (build-compiled-file name locale-builder)
- "Return a file-like object that evalutes the gexp LOCALE-BUILDER and store
+ "Return a file-like object that evaluates the gexp LOCALE-BUILDER and store
its result in the scheme file NAME. The derivation will also build a compiled
version of this file."
(define set-utf8-locale
@@ -308,7 +308,8 @@ selected keymap."
;; translated.
#~(begin
(bindtextdomain "guix" (string-append #$guix "/share/locale"))
- (textdomain "guix")))
+ (textdomain "guix")
+ (setlocale LC_ALL "")))
(define set-installer-path
;; Add the specified binary to PATH for later use by the installer.
diff --git a/gnu/installer/connman.scm b/gnu/installer/connman.scm
index 386f431ced..2f33b58453 100644
--- a/gnu/installer/connman.scm
+++ b/gnu/installer/connman.scm
@@ -180,7 +180,7 @@ Return the corresponding association list of '((KEY . VALUE) (KEY2 . VALUE2)
(define (connman-state)
"Return the state of connman. The nominal states are 'offline, 'idle,
'ready, 'oneline. If an unexpected state is read, 'unknown is
-returned. Finally, an error is raised if the comman output could not be
+returned. Finally, an error is raised if the connman output could not be
parsed, usually because the connman daemon is not responding."
(let* ((output (connman "state"))
(state-keys (parse-keys output)))
diff --git a/gnu/installer/newt.scm b/gnu/installer/newt.scm
index a24a152984..fdab721b2f 100644
--- a/gnu/installer/newt.scm
+++ b/gnu/installer/newt.scm
@@ -107,7 +107,7 @@ problem. The backtrace is displayed below. Please report it by email to \
(run-user-page))
(define (partition-page)
- (run-partioning-page))
+ (run-partitioning-page))
(define (services-page)
(run-services-page))
diff --git a/gnu/installer/newt/locale.scm b/gnu/installer/newt/locale.scm
index 7108e2960b..bfd89aca2c 100644
--- a/gnu/installer/newt/locale.scm
+++ b/gnu/installer/newt/locale.scm
@@ -106,7 +106,7 @@ symbol.")
territory, codeset and modifier. Use SUPPORTED-LOCALES as the list of glibc
available locales. ISO639-LANGUAGES is an association list associating a
locale code to a locale name. ISO3166-TERRITORIES is an association list
-associating a territory code with a territory name. The formated locale, under
+associating a territory code with a territory name. The formatted locale, under
glibc format is returned."
(define (break-on-locale-found locales)
diff --git a/gnu/installer/newt/partition.scm b/gnu/installer/newt/partition.scm
index 54d595f54e..ed38287fe8 100644
--- a/gnu/installer/newt/partition.scm
+++ b/gnu/installer/newt/partition.scm
@@ -32,7 +32,7 @@
#:use-module (srfi srfi-35)
#:use-module (newt)
#:use-module (parted)
- #:export (run-partioning-page))
+ #:export (run-partitioning-page))
(define (button-exit-action)
"Raise the &installer-step-abort condition."
@@ -725,7 +725,7 @@ by pressing the Exit button.~%~%")))
(run-disk-page result-disks new-user-partitions
#:guided? guided?)))))
-(define (run-partioning-page)
+(define (run-partitioning-page)
"Run a page asking the user for a partitioning method."
(define (run-page devices)
(let* ((items
diff --git a/gnu/installer/newt/services.scm b/gnu/installer/newt/services.scm
index 4f32d9077b..6d431cb4bb 100644
--- a/gnu/installer/newt/services.scm
+++ b/gnu/installer/newt/services.scm
@@ -1,6 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2018 Mathieu Othacehe <m.othacehe@gmail.com>
;;; Copyright © 2019 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -40,7 +41,7 @@ choose the one to use on the log-in screen.")
#:items items
#:selection (map system-service-recommended? items)
#:item->text system-service-name ;no i18n for DE names
- #:checkbox-tree-height 8
+ #:checkbox-tree-height 9
#:exit-button-callback-procedure
(lambda ()
(raise
diff --git a/gnu/installer/parted.scm b/gnu/installer/parted.scm
index ff5f6afd19..b0c73b837e 100644
--- a/gnu/installer/parted.scm
+++ b/gnu/installer/parted.scm
@@ -1201,13 +1201,13 @@ the FS-TYPE field set to 'swap, return the empty list if none found."
user-partitions))
(define (start-swapping user-partitions)
- "Start swaping on <user-partition> records with FS-TYPE equal to 'swap."
+ "Start swapping on <user-partition> records with FS-TYPE equal to 'swap."
(let* ((swap-user-partitions (find-swap-user-partitions user-partitions))
(swap-devices (map user-partition-file-name swap-user-partitions)))
(for-each swapon swap-devices)))
(define (stop-swapping user-partitions)
- "Stop swaping on <user-partition> records with FS-TYPE equal to 'swap."
+ "Stop swapping on <user-partition> records with FS-TYPE equal to 'swap."
(let* ((swap-user-partitions (find-swap-user-partitions user-partitions))
(swap-devices (map user-partition-file-name swap-user-partitions)))
(for-each swapoff swap-devices)))
diff --git a/gnu/installer/services.scm b/gnu/installer/services.scm
index dbac79196d..ec5ea30594 100644
--- a/gnu/installer/services.scm
+++ b/gnu/installer/services.scm
@@ -1,6 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2018 Mathieu Othacehe <m.othacehe@gmail.com>
;;; Copyright © 2019 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -82,6 +83,11 @@
(name "ratpoison")
(packages '((specification->package "ratpoison")
(specification->package "xterm"))))
+ (desktop-environment
+ (name "Emacs EXWM")
+ (packages '((specification->package "emacs")
+ (specification->package "emacs-exwm")
+ (specification->package "emacs-desktop-environment"))))
;; Networking.
(system-service
diff --git a/gnu/installer/steps.scm b/gnu/installer/steps.scm
index 0b6d8e4649..16d74c207f 100644
--- a/gnu/installer/steps.scm
+++ b/gnu/installer/steps.scm
@@ -88,7 +88,7 @@
(rewind-strategy 'previous)
(menu-proc (const #f)))
"Run the COMPUTE procedure of all <installer-step> records in STEPS
-sequencially. If the &installer-step-abort condition is raised, fallback to a
+sequentially. If the &installer-step-abort condition is raised, fallback to a
previous install-step, accordingly to the specified REWIND-STRATEGY.
REWIND-STRATEGY possible values are 'previous, 'menu and 'start. If 'previous
diff --git a/gnu/local.mk b/gnu/local.mk
index a5f9039e9e..922c1c518b 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -144,6 +144,8 @@ GNU_SYSTEM_MODULES = \
%D%/packages/cppi.scm \
%D%/packages/cran.scm \
%D%/packages/crates-io.scm \
+ %D%/packages/crates-graphics.scm \
+ %D%/packages/crates-gtk.scm \
%D%/packages/cross-base.scm \
%D%/packages/crypto.scm \
%D%/packages/cryptsetup.scm \
@@ -646,6 +648,7 @@ GNU_SYSTEM_MODULES = \
%D%/system/vm.scm \
\
%D%/system/images/hurd.scm \
+ %D%/system/images/pine64.scm \
\
%D%/machine.scm \
\
@@ -858,6 +861,7 @@ dist_patch_DATA = \
%D%/packages/patches/clang-7.0-libc-search-path.patch \
%D%/packages/patches/clang-9.0-libc-search-path.patch \
%D%/packages/patches/clang-10.0-libc-search-path.patch \
+ %D%/packages/patches/clang-11.0-libc-search-path.patch \
%D%/packages/patches/clang-runtime-asan-build-fixes.patch \
%D%/packages/patches/clang-runtime-esan-build-fixes.patch \
%D%/packages/patches/clang-runtime-9-libsanitizer-mode-field.patch \
@@ -894,7 +898,6 @@ dist_patch_DATA = \
%D%/packages/patches/dbus-c++-gcc-compat.patch \
%D%/packages/patches/dbus-c++-threading-mutex.patch \
%D%/packages/patches/dbxfs-remove-sentry-sdk.patch \
- %D%/packages/patches/dconf-meson-0.52.patch \
%D%/packages/patches/debops-constants-for-external-program-names.patch \
%D%/packages/patches/debops-debops-defaults-fall-back-to-less.patch \
%D%/packages/patches/dee-vapi.patch \
@@ -969,6 +972,7 @@ dist_patch_DATA = \
%D%/packages/patches/foomatic-filters-CVE-2015-8560.patch \
%D%/packages/patches/fontconfig-hurd-path-max.patch \
%D%/packages/patches/fpc-reproducibility.patch \
+ %D%/packages/patches/fplll-std-fenv.patch \
%D%/packages/patches/freedink-engine-fix-sdl-hints.patch \
%D%/packages/patches/freeimage-unbundle.patch \
%D%/packages/patches/fuse-overlapping-headers.patch \
@@ -1069,6 +1073,7 @@ dist_patch_DATA = \
%D%/packages/patches/gmp-faulty-test.patch \
%D%/packages/patches/gnome-shell-theme.patch \
%D%/packages/patches/gnome-shell-disable-test.patch \
+ %D%/packages/patches/gnome-settings-daemon-gc.patch \
%D%/packages/patches/gnome-todo-delete-esource-duplicate.patch \
%D%/packages/patches/gnome-tweaks-search-paths.patch \
%D%/packages/patches/gnupg-default-pinentry.patch \
@@ -1084,6 +1089,7 @@ dist_patch_DATA = \
%D%/packages/patches/gpsbabel-qstring.patch \
%D%/packages/patches/grantlee-merge-theme-dirs.patch \
%D%/packages/patches/grep-timing-sensitive-test.patch \
+ %D%/packages/patches/grim-revert-output-rotation.patch \
%D%/packages/patches/grocsvs-dont-use-admiral.patch \
%D%/packages/patches/gromacs-tinyxml2.patch \
%D%/packages/patches/groovy-add-exceptionutilsgenerator.patch \
@@ -1132,6 +1138,7 @@ dist_patch_DATA = \
%D%/packages/patches/hubbub-sort-entities.patch \
%D%/packages/patches/hurd-cross.patch \
%D%/packages/patches/hurd-xattr.patch \
+ %D%/packages/patches/hplip-fix-bug-1898438.patch \
%D%/packages/patches/hplip-remove-imageprocessor.patch \
%D%/packages/patches/hydra-disable-darcs-test.patch \
%D%/packages/patches/icecat-makeicecat.patch \
@@ -1155,8 +1162,14 @@ dist_patch_DATA = \
%D%/packages/patches/json-c-0.13-CVE-2020-12762.patch \
%D%/packages/patches/json-c-0.12-CVE-2020-12762.patch \
%D%/packages/patches/jacal-fix-texinfo.patch \
+ %D%/packages/patches/jamvm-1.5.1-aarch64-support.patch \
+ %D%/packages/patches/jamvm-1.5.1-armv7-support.patch \
+ %D%/packages/patches/jamvm-2.0.0-aarch64-support.patch \
%D%/packages/patches/jamvm-2.0.0-disable-branch-patching.patch \
- %D%/packages/patches/jamvm-arm.patch \
+ %D%/packages/patches/jamvm-2.0.0-opcode-guard.patch \
+ %D%/packages/patches/java-antlr4-Add-standalone-generator.patch \
+ %D%/packages/patches/java-antlr4-fix-code-too-large.java \
+ %D%/packages/patches/java-tunnelvisionlabs-antlr-code-too-large.patch \
%D%/packages/patches/java-apache-ivy-port-to-latest-bouncycastle.patch \
%D%/packages/patches/java-commons-collections-fix-java8.patch \
%D%/packages/patches/java-jeromq-fix-tests.patch \
@@ -1198,7 +1211,6 @@ dist_patch_DATA = \
%D%/packages/patches/kodi-increase-test-timeout.patch \
%D%/packages/patches/kodi-set-libcurl-ssl-parameters.patch \
%D%/packages/patches/kodi-skip-test-449.patch \
- %D%/packages/patches/konversation-Fix-build-with-Qt-5.11.patch \
%D%/packages/patches/laby-make-install.patch \
%D%/packages/patches/lcalc-default-parameters-1.patch \
%D%/packages/patches/lcalc-default-parameters-2.patch \
@@ -1219,14 +1231,14 @@ dist_patch_DATA = \
%D%/packages/patches/libbase-use-own-logging.patch \
%D%/packages/patches/libbonobo-activation-test-race.patch \
%D%/packages/patches/libcanberra-sound-theme-freedesktop.patch \
- %D%/packages/patches/libdrm-realpath-virtio.patch \
+ %D%/packages/patches/libcanberra-wayland-crash.patch \
+ %D%/packages/patches/libcyaml-libyaml-compat.patch \
%D%/packages/patches/libgeotiff-adapt-test-script-for-proj-6.2.patch \
%D%/packages/patches/libgit2-mtime-0.patch \
%D%/packages/patches/libgnome-encoding.patch \
%D%/packages/patches/libgnomeui-utf8.patch \
%D%/packages/patches/libjxr-fix-function-signature.patch \
%D%/packages/patches/libjxr-fix-typos.patch \
- %D%/packages/patches/liblouisutdml-fix-tests.patch \
%D%/packages/patches/libofa-ftbfs-1.diff \
%D%/packages/patches/libofa-curl.diff \
%D%/packages/patches/libofa-ftbfs-2.diff \
@@ -1244,10 +1256,6 @@ dist_patch_DATA = \
%D%/packages/patches/libmygpo-qt-missing-qt5-modules.patch \
%D%/packages/patches/libqalculate-3.8.0-libcurl-ssl-fix.patch \
%D%/packages/patches/libquicktime-ffmpeg.patch \
- %D%/packages/patches/libsndfile-armhf-type-checks.patch \
- %D%/packages/patches/libsndfile-CVE-2017-8361-8363-8365.patch \
- %D%/packages/patches/libsndfile-CVE-2017-8362.patch \
- %D%/packages/patches/libsndfile-CVE-2017-12562.patch \
%D%/packages/patches/libtar-CVE-2013-4420.patch \
%D%/packages/patches/libtgvoip-disable-sse2.patch \
%D%/packages/patches/libtgvoip-disable-webrtc.patch \
@@ -1283,6 +1291,7 @@ dist_patch_DATA = \
%D%/packages/patches/lm-sensors-hwmon-attrs.patch \
%D%/packages/patches/lrcalc-includes.patch \
%D%/packages/patches/lrzip-CVE-2017-8842.patch \
+ %D%/packages/patches/lsh-fix-x11-forwarding.patch \
%D%/packages/patches/lua-CVE-2014-5461.patch \
%D%/packages/patches/lua-pkgconfig.patch \
%D%/packages/patches/lua51-liblua-so.patch \
@@ -1291,8 +1300,8 @@ dist_patch_DATA = \
%D%/packages/patches/luajit-no_ldconfig.patch \
%D%/packages/patches/luit-posix.patch \
%D%/packages/patches/lvm2-static-link.patch \
+ %D%/packages/patches/mailutils-fix-uninitialized-variable.patch \
%D%/packages/patches/make-impure-dirs.patch \
- %D%/packages/patches/mariadb-client-test-32bit.patch \
%D%/packages/patches/mars-install.patch \
%D%/packages/patches/mars-sfml-2.3.patch \
%D%/packages/patches/maxima-defsystem-mkdir.patch \
@@ -1351,9 +1360,10 @@ dist_patch_DATA = \
%D%/packages/patches/nfs4-acl-tools-0.3.7-fixpaths.patch \
%D%/packages/patches/ngircd-handle-zombies.patch \
%D%/packages/patches/network-manager-plugin-path.patch \
+ %D%/packages/patches/nginx-socket-cloexec.patch \
%D%/packages/patches/nsis-env-passthru.patch \
%D%/packages/patches/nss-increase-test-timeout.patch \
- %D%/packages/patches/nss-pkgconfig.patch \
+ %D%/packages/patches/nss-3.56-pkgconfig.patch \
%D%/packages/patches/ntfs-3g-CVE-2019-9755.patch \
%D%/packages/patches/nvi-assume-preserve-path.patch \
%D%/packages/patches/nvi-dbpagesize-binpower.patch \
@@ -1400,6 +1410,7 @@ dist_patch_DATA = \
%D%/packages/patches/pango-skip-libthai-test.patch \
%D%/packages/patches/pciutils-hurd-configure.patch \
%D%/packages/patches/ppsspp-disable-upgrade-and-gold.patch \
+ %D%/packages/patches/samba-fix-fcntl-hint-detection.patch \
%D%/packages/patches/sdl-pango-api_additions.patch \
%D%/packages/patches/sdl-pango-blit_overflow.patch \
%D%/packages/patches/sdl-pango-fillrect_crash.patch \
@@ -1407,6 +1418,7 @@ dist_patch_DATA = \
%D%/packages/patches/sdl-pango-matrix_declarations.patch \
%D%/packages/patches/sdl-pango-sans-serif.patch \
%D%/packages/patches/sqlite-hurd.patch \
+ %D%/packages/patches/sunxi-tools-remove-sys-io.patch \
%D%/packages/patches/patchutils-test-perms.patch \
%D%/packages/patches/patch-hurd-path-max.patch \
%D%/packages/patches/perl-autosplit-default-time.patch \
@@ -1421,6 +1433,7 @@ dist_patch_DATA = \
%D%/packages/patches/perl-module-pluggable-search.patch \
%D%/packages/patches/perl-reproducible-build-date.patch \
%D%/packages/patches/perl-www-curl-remove-symbol.patch \
+ %D%/packages/patches/picard-fix-id3-rename-test.patch \
%D%/packages/patches/picprog-non-intel-support.patch \
%D%/packages/patches/pidgin-add-search-path.patch \
%D%/packages/patches/pidgin-libnm.patch \
@@ -1481,7 +1494,6 @@ dist_patch_DATA = \
%D%/packages/patches/python2-larch-coverage-4.0a6-compatibility.patch \
%D%/packages/patches/python-configobj-setuptools.patch \
%D%/packages/patches/python-flask-restful-werkzeug-compat.patch \
- %D%/packages/patches/python-gst-fix-build-with-python-3.8.patch \
%D%/packages/patches/python-keras-integration-test.patch \
%D%/packages/patches/python-pep8-stdlib-tokenize-compat.patch \
%D%/packages/patches/python-pyfakefs-remove-bad-test.patch \
@@ -1506,6 +1518,7 @@ dist_patch_DATA = \
%D%/packages/patches/python-unittest2-remove-argparse.patch \
%D%/packages/patches/python-waitress-fix-tests.patch \
%D%/packages/patches/pypy3-7.3.1-fix-tests.patch \
+ %D%/packages/patches/qemu-build-info-manual.patch \
%D%/packages/patches/qemu-glibc-2.27.patch \
%D%/packages/patches/qrcodegen-cpp-make-install.patch \
%D%/packages/patches/qt4-ldflags.patch \
@@ -1555,7 +1568,6 @@ dist_patch_DATA = \
%D%/packages/patches/rust-reproducible-builds.patch \
%D%/packages/patches/rust-openssl-sys-no-vendor.patch \
%D%/packages/patches/rxvt-unicode-escape-sequences.patch \
- %D%/packages/patches/sbcl-graph-asdf-definitions.patch \
%D%/packages/patches/scalapack-blacs-mpi-deprecations.patch \
%D%/packages/patches/scheme48-tests.patch \
%D%/packages/patches/scotch-build-parallelism.patch \
@@ -1625,6 +1637,7 @@ dist_patch_DATA = \
%D%/packages/patches/ucx-tcp-iface-ioctl.patch \
%D%/packages/patches/udiskie-no-appindicator.patch \
%D%/packages/patches/ungoogled-chromium-system-nspr.patch \
+ %D%/packages/patches/unison-fix-ocaml-4.08.patch \
%D%/packages/patches/unknown-horizons-python-3.8-distro.patch \
%D%/packages/patches/unzip-CVE-2014-8139.patch \
%D%/packages/patches/unzip-CVE-2014-8140.patch \
@@ -1688,6 +1701,7 @@ dist_patch_DATA = \
%D%/packages/patches/xplanet-1.3.1-libimage_gif.c.patch \
%D%/packages/patches/xplanet-1.3.1-xpUtil-Add2017LeapSecond.cpp.patch \
%D%/packages/patches/xpra-4.0.1-systemd-run.patch \
+ %D%/packages/patches/xpra-4.0.4-norequests.patch \
%D%/packages/patches/xsane-fix-memory-leak.patch \
%D%/packages/patches/xsane-fix-pdf-floats.patch \
%D%/packages/patches/xsane-fix-snprintf-buffer-length.patch \
diff --git a/gnu/machine/ssh.scm b/gnu/machine/ssh.scm
index 35b42add48..5020bd362f 100644
--- a/gnu/machine/ssh.scm
+++ b/gnu/machine/ssh.scm
@@ -480,6 +480,8 @@ an environment type of 'managed-host."
(raise roll-back-failure)))
(entries -> (map boot-parameters->menu-entry
(list (second boot-parameters))))
+ (locale -> (boot-parameters-locale
+ (second boot-parameters)))
(old-entries -> (map boot-parameters->menu-entry
(drop boot-parameters 2)))
(bootloader -> (operating-system-bootloader
@@ -489,6 +491,7 @@ an environment type of 'managed-host."
(bootloader-configuration-bootloader
bootloader))
bootloader entries
+ #:locale locale
#:old-entries old-entries)))
(remote-result (machine-remote-eval machine remote-exp)))
(when (eqv? 'error remote-result)
diff --git a/gnu/packages/abduco.scm b/gnu/packages/abduco.scm
index 37d2f37773..19671d14c9 100644
--- a/gnu/packages/abduco.scm
+++ b/gnu/packages/abduco.scm
@@ -19,6 +19,7 @@
(define-module (gnu packages abduco)
#:use-module (guix build-system gnu)
+ #:use-module (guix utils)
#:use-module (guix download)
#:use-module (guix licenses)
#:use-module (guix packages))
@@ -37,7 +38,7 @@
"1x1m58ckwsprljgmdy93mvgjyg9x3cqrzdf3mysp0mx97zhhj2f9"))))
(build-system gnu-build-system)
(arguments
- `(#:make-flags (list "CC=gcc"
+ `(#:make-flags (list (string-append "CC=" ,(cc-for-target))
(string-append "PREFIX=" (assoc-ref %outputs "out")))
#:phases (modify-phases %standard-phases
(delete 'configure)
diff --git a/gnu/packages/accessibility.scm b/gnu/packages/accessibility.scm
index 14ce805aef..5180f88bae 100644
--- a/gnu/packages/accessibility.scm
+++ b/gnu/packages/accessibility.scm
@@ -3,6 +3,7 @@
;;; Copyright © 2017 Stefan Reichör <stefan@xsteve.at>
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2019 Andrew Miloradovsky <andrew@interpretmath.pw>
+;;; Copyright © 2020 Efraim Flashner <efraim@flashner.co.il>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -272,7 +273,7 @@ available to help to click.")
`(("hidapi" ,hidapi)))
(arguments
`(#:tests? #f ; no tests
- #:make-flags (list "CC=gcc")
+ #:make-flags (list (string-append "CC=" ,(cc-for-target)))
#:phases (modify-phases %standard-phases
(delete 'configure)
;; Install target in the Makefile does not work for Guix
@@ -308,7 +309,7 @@ devices have vendorId:productId = 0c45:7403 or 0c45:7404.")
(arguments
`(#:tests? #f ; none included
#:make-flags
- (list "CC=gcc"
+ (list (string-append "CC=" ,(cc-for-target))
(string-append "prefix=" (assoc-ref %outputs "out")))
#:phases
(modify-phases %standard-phases
diff --git a/gnu/packages/acl.scm b/gnu/packages/acl.scm
index bcab125164..4e90703d81 100644
--- a/gnu/packages/acl.scm
+++ b/gnu/packages/acl.scm
@@ -5,6 +5,7 @@
;;; Copyright © 2017 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2019 Marius Bakke <mbakke@fastmail.com>
+;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -25,6 +26,7 @@
#:use-module (guix licenses)
#:use-module (gnu packages attr)
#:use-module (gnu packages base)
+ #:use-module (gnu packages hurd)
#:use-module (gnu packages gettext)
#:use-module (gnu packages perl)
#:use-module (guix packages)
@@ -49,6 +51,7 @@
`(#:modules ((ice-9 ftw)
,@%gnu-build-system-modules)
#:configure-flags '("--disable-static")
+ #:tests? ,(not (hurd-target?))
#:phases
(modify-phases %standard-phases
;; XXX After repacking the sources the timestamps are reset to the
diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm
index a6aaeba1ea..81ddeaca77 100644
--- a/gnu/packages/admin.scm
+++ b/gnu/packages/admin.scm
@@ -9,7 +9,7 @@
;;; Copyright © 2016, 2017 Leo Famulari <leo@famulari.name>
;;; Copyright © 2016 Pjotr Prins <pjotr.guix@thebird.nl>
;;; Copyright © 2016, 2017 Ricardo Wurmus <rekado@elephly.net>
-;;; Copyright © 2016, 2017, 2018, 2019 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2016, 2017, 2018, 2019, 2020 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 Peter Feigl <peter.feigl@nexoid.at>
;;; Copyright © 2016 John J. Foerch <jjfoerch@earthlink.net>
;;; Copyright © 2016, 2017 Nikita <nikita@n0.is>
@@ -443,7 +443,7 @@ graphs and can export its output to different formats.")
(define-public facter
(package
(name "facter")
- (version "4.0.35")
+ (version "4.0.43")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -452,7 +452,7 @@ graphs and can export its output to different formats.")
(file-name (git-file-name name version))
(sha256
(base32
- "1f203g2hp96cp8w4x1myhqdj5j09z9s23kylwkrxr69fjhn0vhnb"))))
+ "0ppzr7vsl6iw8x82c4g60mx1vz06nzwcy8byablhg0n0g6qa3pb0"))))
(build-system ruby-build-system)
(arguments
`(#:phases
@@ -514,7 +514,7 @@ or via the @code{facter} Ruby library.")
(define-public htop
(package
(name "htop")
- (version "3.0.1")
+ (version "3.0.2")
(source
(origin
(method git-fetch)
@@ -522,7 +522,7 @@ or via the @code{facter} Ruby library.")
(url "https://github.com/htop-dev/htop")
(commit version)))
(sha256
- (base32 "0kjlphdvwwbj91kk91s4ksc954d3c2bznddzx2223jmb1bn9rcsa"))
+ (base32 "1qmqhbnc5yw4brd24yrp85k09770c1c00nl03mkv5pdz2bvqivk7"))
(file-name (git-file-name name version))))
(build-system gnu-build-system)
(inputs
@@ -834,7 +834,7 @@ would need and has several interesting built-in capabilities.")
(define-public netcat-openbsd
(package
(name "netcat-openbsd")
- (version "1.217-1")
+ (version "1.217-2")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -843,12 +843,12 @@ would need and has several interesting built-in capabilities.")
(file-name (git-file-name name version))
(sha256
(base32
- "0kcvi3pav2fdx5c22psjv5dggk4cmrqiaq2cklhqngsk4a7vrjan"))))
+ "19sr52ix14w344pv13ppb0c1wyg5dxhic1fw2q0s3qfmx57b9hhp"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; no test suite
#:make-flags
- (list "CC=gcc")
+ (list (string-append "CC=" ,(cc-for-target)))
#:phases
(modify-phases %standard-phases
(delete 'configure)
@@ -1404,7 +1404,7 @@ system administrator.")
(define-public sudo
(package
(name "sudo")
- (version "1.9.2")
+ (version "1.9.3p1")
(source (origin
(method url-fetch)
(uri
@@ -1414,25 +1414,19 @@ system administrator.")
version ".tar.gz")))
(sha256
(base32
- "05432672iilb7s52j9l9xzrlambb1wg3k7qvf5973i41y40x563w"))
+ "17mldsg5d08s23cskmjxfa81ibnqw3slgf3l4023j72ywi9xxffw"))
(modules '((guix build utils)))
(snippet
'(begin
(delete-file-recursively "lib/zlib")
#t))))
(build-system gnu-build-system)
- (outputs (list "out" "python"))
+ (outputs (list "out"))
(arguments
`(#:configure-flags
(list (string-append "--docdir=" (assoc-ref %outputs "out")
"/share/doc/" ,name "-" ,version)
- ;; XXX: Disable Python support when cross-compiling because
- ;; 'configure' tries to run 'python', which fails.
- ,(if (%current-target-system)
- "--disable-python"
- "--enable-python") ; for plug-ins written in ~
-
"--with-logpath=/var/log/sudo.log"
"--with-rundir=/var/run/sudo" ; must be cleaned up at boot time
"--with-vardir=/var/db/sudo"
@@ -1479,34 +1473,19 @@ system administrator.")
(substitute* "plugins/sudoers/Makefile.in"
(("^pre-install:" match)
(string-append match "\ndisabled-" match)))
- #t))
- (add-after 'install 'separate-python-output
- (lambda* (#:key target outputs #:allow-other-keys)
- (let ((out (assoc-ref outputs "out"))
- (out:python (assoc-ref outputs "python")))
- (if target
- (mkdir-p (string-append out:python "/empty"))
- (for-each
- (lambda (file)
- (let ((old (string-append out "/" file))
- (new (string-append out:python "/" file)))
- (mkdir-p (dirname new))
- (rename-file old new)))
- (list "libexec/sudo/python_plugin.so"
- "libexec/sudo/python_plugin.la")))
- #t))))
+ #t)))
;; XXX: The 'testsudoers' test series expects user 'root' to exist, but
;; the chroot's /etc/passwd doesn't have it. Turn off the tests.
#:tests? #f))
(native-inputs
- `(("groff" ,groff)))
+ ;; XXX TODO: Remove on next rebuild cycle.
+ (if (hurd-target?)
+ '()
+ `(("groff" ,groff))))
(inputs
`(("coreutils" ,coreutils)
("linux-pam" ,linux-pam)
- ,@(if (%current-target-system)
- '()
- `(("python" ,python)))
("zlib" ,zlib)))
(home-page "https://www.sudo.ws/")
(synopsis "Run commands as root")
@@ -1837,21 +1816,24 @@ network, which causes enabled computers to power on.")
(define-public dmidecode
(package
(name "dmidecode")
- (version "3.2")
- (source (origin
- (method url-fetch)
- (uri (string-append
- "mirror://savannah/dmidecode/dmidecode-"
- version ".tar.xz"))
- (sha256
- (base32
- "1pcfhcgs2ifdjwp7amnsr3lq95pgxpr150bjhdinvl505px0cw07"))))
+ (version "3.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://savannah/dmidecode/dmidecode-"
+ version ".tar.xz"))
+ (sha256
+ (base32 "0m8lzg9rf1qssasiix672bxk5qwms90561g8hfkkhk31h2kkgiw2"))))
(build-system gnu-build-system)
(arguments
- '(#:phases (modify-phases %standard-phases (delete 'configure))
- #:tests? #f ; no 'check' target
- #:make-flags (list (string-append "prefix="
- (assoc-ref %outputs "out")))))
+ `(#:tests? #f ; no 'check' target
+ #:make-flags
+ (list (string-append "CC=" ,(cc-for-target))
+ (string-append "prefix="
+ (assoc-ref %outputs "out")))
+ #:phases
+ (modify-phases %standard-phases
+ (delete 'configure)))) ; no configure script
(home-page "https://www.nongnu.org/dmidecode/")
(synopsis "Read hardware information from the BIOS")
(description
@@ -2613,14 +2595,14 @@ done with the @code{auditctl} utility.")
(define-public nmap
(package
(name "nmap")
- (version "7.80")
+ (version "7.91")
(source (origin
(method url-fetch)
(uri (string-append "https://nmap.org/dist/nmap-" version
".tar.bz2"))
(sha256
(base32
- "1aizfys6l9f9grm82bk878w56mg0zpkfns3spzj157h98875mypw"))
+ "001kb5xadqswyw966k2lqi6jr6zz605jpp9w4kmm272if184pk0q"))
(modules '((guix build utils)))
(snippet
'(begin
@@ -2698,7 +2680,7 @@ advanced netcat implementation (ncat), a utility for comparing scan
results (ndiff), and a packet generation and response analysis tool (nping).")
;; This package uses nmap's bundled versions of libdnet and liblinear, which
;; both use a 3-clause BSD license.
- (license (list license:nmap license:bsd-3))))
+ (license (list license:npsl license:bsd-3))))
(define-public dstat
(package
@@ -2718,9 +2700,8 @@ results (ndiff), and a packet generation and response analysis tool (nping).")
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; no make check
- #:make-flags (let ((out (assoc-ref %outputs "out")))
- (list (string-append "DESTDIR=" out)
- "prefix=/"))
+ #:make-flags
+ (list (string-append "prefix=" (assoc-ref %outputs "out")))
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'fix-python3-DeprecationWarning
@@ -2952,6 +2933,8 @@ Kerberos and Heimdal and FAST is supported with recent MIT Kerberos.")
(commit (string-append "v" version))))
(sha256
(base32 "04f3jqg8ww4jxsf9c6ddcdgy2xbhkyp0b3l5f1hvvbv94p81rjxd"))
+ (patches
+ (search-patches "sunxi-tools-remove-sys-io.patch"))
(modules '((guix build utils)))
(snippet
;; Remove binaries contained in the tarball which are only for the
@@ -3595,7 +3578,7 @@ Python loading in HPC environments.")
(let ((real-name "inxi"))
(package
(name "inxi-minimal")
- (version "3.1.06-1")
+ (version "3.1.07-1")
(source
(origin
(method git-fetch)
@@ -3604,7 +3587,7 @@ Python loading in HPC environments.")
(commit version)))
(file-name (git-file-name real-name version))
(sha256
- (base32 "0h65n03q9kdsv0i1q5f88i11iv79ca7fqq97rdkzkmiqb4whhnm2"))))
+ (base32 "0hs4m2vmfc6srscaz72r6zpkn6n7msgzlps376ks38gj1l103xfn"))))
(build-system trivial-build-system)
(inputs
`(("bash" ,bash-minimal)
@@ -4105,3 +4088,44 @@ the system configuration; hosts only works when using the Guix package manager
on a foreign distro. @command{hosts} works with existing hosts files and
entries, providing commands to add, remove, comment, and search.")
(license license:expat)))
+
+(define-public nmrpflash
+ (package
+ (name "nmrpflash")
+ (version "0.9.14")
+ (source
+ (origin
+ (method git-fetch)
+ (uri
+ (git-reference
+ (url "https://github.com/jclehner/nmrpflash.git")
+ (commit (string-append "v" version))))
+ (sha256
+ (base32 "1fdjrxhjs96rdclbkld57xarf592slhkp79h46z833npxpn12ck1"))
+ (file-name (git-file-name name version))))
+ (build-system gnu-build-system)
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("libnl" ,libnl)
+ ("libpcap" ,libpcap)))
+ (arguments
+ `(#:tests? #f ; None exist
+ #:make-flags
+ (list (string-append "CC=" ,(cc-for-target))
+ (string-append "PREFIX=" (assoc-ref %outputs "out")))
+ #:phases
+ (modify-phases %standard-phases
+ (delete 'configure)
+ (add-before 'install 'prepare-install
+ (lambda* (#:key outputs #:allow-other-keys)
+ (mkdir-p (string-append (assoc-ref outputs "out") "/bin"))
+ #t)))))
+ (home-page "https://github.com/jclehner/nmrpflash")
+ (synopsis "Netgear unbrick utility")
+ (description "This package provides a utility to flash a new firmware
+image to a Netgear device. It has been tested on Netgear EX2700, EX6120,
+EX6150v2, DNG3700v2, R6100, R6220, R7000, D7000, WNR3500, R6400, R6800,
+R8000, R8500, WNDR3800, but is likely to be compatible with many other
+Netgear devices.")
+ (license license:gpl3+)))
diff --git a/gnu/packages/algebra.scm b/gnu/packages/algebra.scm
index 318d653618..b712d3a869 100644
--- a/gnu/packages/algebra.scm
+++ b/gnu/packages/algebra.scm
@@ -48,6 +48,7 @@
#:use-module (gnu packages maths)
#:use-module (gnu packages mpi)
#:use-module (gnu packages multiprecision)
+ #:use-module (gnu packages ocaml)
#:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages pulseaudio)
@@ -123,15 +124,15 @@ greatest common divisor operations.")
(define-public cm
(package
(name "cm")
- (version "0.3")
+ (version "0.3.1")
(source (origin
(method url-fetch)
(uri (string-append
- "http://www.multiprecision.org/cm/download/cm-"
+ "http://www.multiprecision.org/downloads/cm-"
version ".tar.gz"))
(sha256
(base32
- "1nf5kr0nqmhbzrsrinky18z0ighjpsmb5cr8zyg8jf04bfbyrfmc"))))
+ "0qq6b1kwb1byj8ws33ya5awq0ilkpm32037pi1l4cf2737fg9m42"))))
(build-system gnu-build-system)
(propagated-inputs
`(("mpfrcx" ,mpfrcx)
@@ -151,12 +152,7 @@ line applications.")
(define-public fplll
(package
(name "fplll")
- ;; The most recent version 5.3.3 fails in the configure phase:
- ;; ./configure: line 12956: syntax error near unexpected token `LIBQD,'
- ;; ./configure: line 12956: ` PKG_CHECK_MODULES(LIBQD, qd, have_libqd="yes",'
- ;; The error disappears when adding qd as an input; but this is
- ;; supposed to be an optional input.
- (version "5.3.2")
+ (version "5.3.3")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -165,13 +161,15 @@ line applications.")
(file-name (git-file-name name version))
(sha256
(base32
- "00iyz218ywspizjiimrjdcqvdqmrsb2367zyy3vkmypnf9i9l680"))))
+ "06nyfidagp8pc2kfcw88ldgb2b1xm0a8z31n0sln7j72ihlmd8zj"))
+ (patches (search-patches "fplll-std-fenv.patch"))))
(build-system gnu-build-system)
(native-inputs
`(("autoconf" ,autoconf)
("automake" ,automake)
- ("libtool" ,libtool)))
- (inputs
+ ("libtool" ,libtool)
+ ("pkg-config" ,pkg-config)))
+ (propagated-inputs ; header files pulled in by fplll/defs.h
`(("gmp" ,gmp)
("mpfr" ,mpfr)))
(home-page "https://github.com/fplll/fplll")
@@ -357,7 +355,7 @@ precision.")
(define-public giac
(package
(name "giac")
- (version "1.6.0-7")
+ (version "1.6.0-25")
(source
(origin
(method url-fetch)
@@ -369,7 +367,7 @@ precision.")
"~parisse/debian/dists/stable/main/source/"
"giac_" version ".tar.gz"))
(sha256
- (base32 "1pvgp137zcl0rbhdn1j41xxfml7fp771a7x4ph8qrhhlx0hxzn3p"))))
+ (base32 "11kik2csdg9wy0npiih21kaag0nc89i9ldgk7ak7gvf9ycddm6mh"))))
(build-system gnu-build-system)
(arguments
`(#:modules ((ice-9 ftw)
@@ -380,7 +378,8 @@ precision.")
(add-after 'unpack 'patch-bin-cp
;; Some Makefiles contain hard-coded "/bin/cp".
(lambda _
- (substitute* (find-files "doc" "^Makefile")
+ (substitute* (cons "micropython-1.12/xcas/Makefile"
+ (find-files "doc" "^Makefile"))
(("/bin/cp") (which "cp")))
#t))
(add-after 'unpack 'disable-failing-test
@@ -409,7 +408,7 @@ precision.")
(delete-file (string-append out "/bin/xcasnew"))
#t))))))
(inputs
-;;; TODO: Add libnauty.
+ ;; TODO: Add libnauty, unbundle "libmicropython.a".
`(("fltk" ,fltk)
("glpk" ,glpk)
("gmp" ,gmp)
@@ -433,6 +432,8 @@ precision.")
(native-inputs
`(("bison" ,bison)
("flex" ,flex)
+ ("hevea" ,hevea)
+ ("python" ,python-wrapper)
("readline" ,readline)
("texlive" ,texlive-tiny)))
(home-page "https://www-fourier.ujf-grenoble.fr/~parisse/giac.html")
@@ -1554,7 +1555,7 @@ structure constants of Schubert polynomials.")
"0akwhhz9b40bz6lrfxpamp7r7wkk48p455qbn04mfnl9a1l6db8x"))))
(build-system gnu-build-system)
(inputs
- `(("gmp", gmp)
+ `(("gmp" ,gmp)
("cblas" ,openblas))) ; or any other BLAS library; the documentation
; mentions ATLAS in particular
(arguments
diff --git a/gnu/packages/antivirus.scm b/gnu/packages/antivirus.scm
index c7bf911ae7..fa62173572 100644
--- a/gnu/packages/antivirus.scm
+++ b/gnu/packages/antivirus.scm
@@ -44,14 +44,14 @@
(define-public clamav
(package
(name "clamav")
- (version "0.102.4")
+ (version "0.103.0")
(source (origin
(method url-fetch)
(uri (string-append "https://www.clamav.net/downloads/production/"
"clamav-" version ".tar.gz"))
(sha256
(base32
- "06rrzyrhnr0rswryijpbbzywr6387rv8qjq8sb8cl3h2d1m45ggf"))
+ "0ih5x1rscg2m64y0z20njj7435q8k7ss575cfw7aipdzfx979a9j"))
(modules '((guix build utils)))
(snippet
'(begin
diff --git a/gnu/packages/aspell.scm b/gnu/packages/aspell.scm
index daefbd01bd..7d3c2ef1c3 100644
--- a/gnu/packages/aspell.scm
+++ b/gnu/packages/aspell.scm
@@ -9,6 +9,8 @@
;;; Copyright © 2019 Jens Mølgaard <jens@zete.tk>
;;; Copyright © 2020 Timotej Lazar <timotej.lazar@araneo.si>
;;; Copyright © 2020 Marcin Karpezo <sirmacik@wioo.waw.pl>
+;;; Copyright © 2020 Jonathan Brielmaier <jonathan.brielmaier@web.de>
+;;; Copyright © 2020 Jakub Kądziołka <kuba@kadziolka.net>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -33,7 +35,9 @@
#:use-module (guix utils)
#:use-module (gnu packages)
#:use-module (gnu packages base)
+ #:use-module (gnu packages bison)
#:use-module (gnu packages compression)
+ #:use-module (gnu packages ncurses)
#:use-module (gnu packages perl)
#:use-module (ice-9 match))
@@ -457,3 +461,50 @@ under permissive licensing terms. See the 'Copyright' file."))))
(define-word-list-dictionary hunspell-dict-en-us
"en_US"
(synopsis "Hunspell dictionary for United States English"))
+
+(define-public ispell
+ (package
+ (name "ispell")
+ (version "3.4.00")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "https://www.cs.hmc.edu/~geoff/tars/ispell-"
+ version ".tar.gz"))
+ (sha256
+ (base32
+ "1hmfnz55qzfpz7lz0r3m4kkv31smir92ks9s5l1iiwimhr2jxi2x"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:parallel-build? #f
+ #:tests? #f ; no tests
+ #:phases
+ (modify-phases %standard-phases
+ (replace 'configure
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ ;; Based on local.h.linux
+ (let* ((grep (assoc-ref inputs "grep"))
+ (out (assoc-ref outputs "out")))
+ (call-with-output-file "local.h"
+ (lambda (port)
+ (format port "#define MINIMENU~%")
+ (format port "#define USG~%")
+ (format port "#define HAS_RENAME~%")
+ (format port "#define CC \"gcc\"~%")
+ (format port "#define POUNDBANG \"#!~a\"~%" (which "sh"))
+ (format port "#define EGREPCMD \"~a/bin/grep -Ei\"~%" grep)
+ (format port "#define BINDIR \"~a/bin\"~%" out)
+ (format port "#define LIBDIR \"~a/lib/ispell\"~%" out)
+ (format port "#define MAN1DIR \"~a/share/man/man1\"~%" out)
+ (format port "#define MAN45DIR \"~a/share/man/man5\"~%" out))))
+ #t)))))
+ (inputs
+ `(("grep" ,grep)
+ ("ncurses" ,ncurses)))
+ (native-inputs
+ `(("bison" ,bison)))
+ (synopsis "Interactive spell-checking tool for Unix")
+ (description "Ispell is an interactive spell-checking tool supporting many
+European languages.")
+ (home-page "https://www.cs.hmc.edu/~geoff/ispell.html")
+ (license bsd-3)))
diff --git a/gnu/packages/astronomy.scm b/gnu/packages/astronomy.scm
index 785d281887..18ed96f7fd 100644
--- a/gnu/packages/astronomy.scm
+++ b/gnu/packages/astronomy.scm
@@ -159,7 +159,7 @@ programs for the manipulation and analysis of astronomical data.")
(define-public stellarium
(package
(name "stellarium")
- (version "0.20.2")
+ (version "0.20.3")
(source
(origin
(method url-fetch)
@@ -167,7 +167,7 @@ programs for the manipulation and analysis of astronomical data.")
"/releases/download/v" version
"/stellarium-" version ".tar.gz"))
(sha256
- (base32 "16symz212vjvhfabh39a68qf7d0rm574c6djlibj2qd1q9jgj3j0"))))
+ (base32 "0z5r7b1ac43l330xphxnw54xg7jm87ajix8yl4hkq82cs5ja7097"))))
(build-system cmake-build-system)
(inputs
`(("qtbase" ,qtbase)
@@ -328,7 +328,7 @@ Mechanics, Astrometry and Astrodynamics library.")
("freetype" ,freetype)
("pango" ,pango)
("giflib" ,giflib)
- ("libjpeg", libjpeg-turbo)
+ ("libjpeg" ,libjpeg-turbo)
("libpng" ,libpng)
("libtiff" ,libtiff)
("netpbm" ,netpbm)
diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm
index 38ee4f8bcc..8a0c0fce2b 100644
--- a/gnu/packages/audio.scm
+++ b/gnu/packages/audio.scm
@@ -33,6 +33,7 @@
;;; Copyright © 2020 Jonathan Frederickson <jonathan@terracrypt.net>
;;; Copyright © 2020 Giacomo Leidi <goodoldpaul@autistici.org>
;;; Copyright © 2020 Vinicius Monego <monego@posteo.net>
+;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -1046,7 +1047,7 @@ tools (analyzer, mono/stereo tools, crossovers).")
`(("lv2" ,lv2)))
;; home-page of the original LADSPA version: http://quitte.de/dsp/caps.html
(home-page "https://github.com/moddevices/caps-lv2")
- (synopsis "LV2 port of the CAPS audio plugin colection")
+ (synopsis "LV2 port of the CAPS audio plugin collection")
(description
"LV2 port of CAPS, a collection of audio plugins comprising basic virtual
guitar amplification and a small range of classic effects, signal processors and
@@ -1631,7 +1632,7 @@ follower.")
(define-public fluidsynth
(package
(name "fluidsynth")
- (version "2.1.4")
+ (version "2.1.5")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -1640,7 +1641,7 @@ follower.")
(file-name (git-file-name name version))
(sha256
(base32
- "1r3khwyw57ybg5m4x0rvdzq7hgw2484sd52k6bm19akbw8yicfna"))))
+ "0ccpq4p1h1g53ng3961g3lh590qnwvpzwdzpl6ai4j6iazq0bh73"))))
(build-system cmake-build-system)
(arguments
'(#:tests? #f ; no check target
@@ -2030,7 +2031,7 @@ synchronous execution of all clients, and low latency operation.")
(define-public jack-2
(package (inherit jack-1)
(name "jack2")
- (version "1.9.13")
+ (version "1.9.14")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/jackaudio/jack2/releases/"
@@ -2039,7 +2040,7 @@ synchronous execution of all clients, and low latency operation.")
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
- "1d1d403jn4366mqig6g8ghr8057b3rn7gs26b5p3rkal34j20qw2"))))
+ "0z11hf55a6mi8h50hfz5wry9pshlwl4mzfwgslghdh40cwv342m2"))))
(build-system waf-build-system)
(arguments
`(#:tests? #f ; no check target
@@ -2049,6 +2050,10 @@ synchronous execution of all clients, and low latency operation.")
(modify-phases %standard-phases
(add-before 'configure 'set-linkflags
(lambda _
+ ;; Ensure -lstdc++ is the tail of LDFLAGS or the simdtests.cpp
+ ;; will not link with undefined reference to symbol
+ ;; '__gxx_personality_v0@@CXXABI_1.3'
+ (setenv "LDFLAGS" "-lstdc++")
;; Add $libdir to the RUNPATH of all the binaries.
(substitute* "wscript"
((".*CFLAGS.*-Wall.*" m)
@@ -2676,20 +2681,21 @@ different audio devices such as ALSA or PulseAudio.")
(define-public qjackctl
(package
(name "qjackctl")
- (version "0.5.9")
+ (version "0.6.3")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/qjackctl/qjackctl/"
version "/qjackctl-" version ".tar.gz"))
(sha256
(base32
- "1saywsda9m124rmjp7i3n0llryaliabjxhqhvqr6dm983qy7pypk"))))
+ "0zbb4jlx56qvcqyhx34mbagkqf3wbxgj84hk0ppf5cmcrxv67d4x"))))
(build-system gnu-build-system)
(arguments
'(#:tests? #f)) ; no check target
(inputs
`(("jack" ,jack-1)
("alsa-lib" ,alsa-lib)
+ ("portaudio" ,portaudio)
("qtbase" ,qtbase)
("qtx11extras" ,qtx11extras)))
(native-inputs
@@ -3054,6 +3060,32 @@ that toolkit will work in all hosts that use Suil automatically.
Suil currently supports every combination of Gtk, Qt, and X11.")
(license license:isc)))
+(define-public libebur128
+ (package
+ (name "libebur128")
+ (version "1.2.4")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/jiixyj/libebur128")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0n81rnm8dm1zmibkr2v3q79rsd609y0dbbsrbay18njcjva88p0g"))))
+ (build-system cmake-build-system)
+ (arguments
+ `(;; Tests require proprietary .wav files. See
+ ;; https://github.com/jiixyj/libebur128/issues/82.
+ #:tests? #f
+ #:configure-flags '("-DBUILD_STATIC_LIBS=OFF")))
+ (home-page "https://github.com/jiixyj/libebur128")
+ (synopsis "Library implementing the EBU R 128 loudness standard")
+ (description
+ "@code{libebur128} is a C library that implements the EBU R 128 standard
+for loudness normalisation.")
+ (license license:expat)))
+
(define-public timidity++
(package
(name "timidity++")
@@ -3298,7 +3330,7 @@ Tracker 3 S3M and Impulse Tracker IT files.")
(define-public soundtouch
(package
(name "soundtouch")
- (version "2.1.2")
+ (version "2.2")
(source
(origin
(method git-fetch)
@@ -3307,7 +3339,7 @@ Tracker 3 S3M and Impulse Tracker IT files.")
(commit version)))
(file-name (git-file-name name version))
(sha256
- (base32 "174wgm3s0inmbnkrlnspxjwm2014qhjhkbdqa5r8rbfi0nzqxzsz"))))
+ (base32 "12i6yg8vvqwyk412lxl2krbfby6hnxld8qxy0k4m5xp4g94jiq4p"))))
(build-system gnu-build-system)
(native-inputs
`(("autoconf" ,autoconf)
@@ -3959,10 +3991,31 @@ mixers.")
(define-public python2-pyalsaaudio
(package-with-python2 python-pyalsaaudio))
+(define-public ldacbt
+ (package
+ (name "ldacbt")
+ (version "2.0.2.3")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "https://github.com/EHfive/ldacBT"
+ "/releases/download/v" version
+ "/ldacBT-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1d65dms4klzql29abi15i90f41h523kl6mxrz9hi6p5vg37fxn2b"))))
+ (build-system cmake-build-system)
+ (arguments `(#:tests? #f)) ; no check target
+ (home-page "https://github.com/EHfive/ldacBT/")
+ (synopsis "LDAC Bluetooth encoder and ABR library")
+ (description "This package provides an encoder for the LDAC
+high-resolution Bluetooth audio streaming codec for streaming at up to 990
+kbps at 24 bit/96 kHz.")
+ (license license:asl2.0)))
+
(define-public bluez-alsa
(package
(name "bluez-alsa")
- (version "2.0.0")
+ (version "3.0.0")
(source (origin
;; The tarballs are mere snapshots and don't contain a
;; bootstrapped build system.
@@ -3973,11 +4026,12 @@ mixers.")
(file-name (git-file-name name version))
(sha256
(base32
- "08mppgnjf1j2733bk9yf0cny6rfxxwiys0s62lz2zd2lpdl6d9lz"))))
+ "1jlsgxyqfhncfhx1sy3ry0dp6p95kd4agh7g2b7g51h0c4cv74h8"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags
- (list (string-append "--with-alsaplugindir="
+ (list "--enable-ldac"
+ (string-append "--with-alsaplugindir="
(assoc-ref %outputs "out")
"/lib/alsa-lib")
(string-append "--with-dbusconfdir="
@@ -3993,6 +4047,7 @@ mixers.")
("bluez" ,bluez)
("dbus" ,dbus)
("glib" ,glib)
+ ("ldacbt" ,ldacbt)
("libbsd" ,libbsd)
("ncurses" ,ncurses)
("ortp" ,ortp)
@@ -4464,6 +4519,36 @@ supports both of ID3v1/v2 and APEv2 tags.")
(home-page "http://tausoft.org/")
(license license:gpl2+)))
+(define-public libsoundio
+ (package
+ (name "libsoundio")
+ (version "2.0.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/andrewrk/libsoundio")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "12l4rvaypv87vigdrmjz48d4d6sq4gfxf5asvnc4adyabxb73i4x"))))
+ (build-system cmake-build-system)
+ (arguments
+ `(#:tests? #f)) ;no tests included
+ (inputs
+ `(("alsa-lib" ,alsa-lib)
+ ("jack" ,jack-1)
+ ("pulseaudio" ,pulseaudio)))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (home-page "http://libsound.io")
+ (synopsis "C library for real-time audio input and output")
+ (description "@code{libsoundio} is a C library providing audio input and
+output. The API is suitable for real-time software such as digital audio
+workstations as well as consumer software such as music players.")
+ (license license:expat)))
+
(define-public redkite
(package
(name "redkite")
@@ -4483,7 +4568,7 @@ supports both of ID3v1/v2 and APEv2 tags.")
(inputs
`(("cairo" ,cairo)))
(native-inputs
- `(("pkg-config", pkg-config)))
+ `(("pkg-config" ,pkg-config)))
(synopsis "Small GUI toolkit")
(description "Redkite is a small GUI toolkit developed in C++17 and
inspired from other well known GUI toolkits such as Qt and GTK. It is
@@ -4629,7 +4714,7 @@ in the package.")
`(("libsamplerate" ,libsamplerate)
("libsndfile" ,libsndfile)))
(native-inputs
- `(("pkg-config", pkg-config)))
+ `(("pkg-config" ,pkg-config)))
(synopsis "Library for reading and resampling audio files")
(description "libaudec is a wrapper library over ffmpeg, sndfile and
libsamplerate for reading and resampling audio files, based on Robin Gareus'
@@ -4657,11 +4742,11 @@ libsamplerate for reading and resampling audio files, based on Robin Gareus'
`("-Delf-tests=true" ; for checking symbol visibility
"-Donline-tests=true"))) ; for checking URI existence
(inputs
- `(("curl", curl)
- ("libelf", libelf)
- ("lilv", lilv)))
+ `(("curl" ,curl)
+ ("libelf" ,libelf)
+ ("lilv" ,lilv)))
(native-inputs
- `(("pkg-config", pkg-config)))
+ `(("pkg-config" ,pkg-config)))
(synopsis "LV2 plugin lint tool")
(description "lv2lint is an LV2 lint-like tool that checks whether a
given plugin and its UI(s) match up with the provided metadata and adhere
@@ -4692,11 +4777,11 @@ to well-known best practices.")
(modify-phases %standard-phases
(delete 'configure))))
(inputs
- `(("jalv", jalv)
- ("lilv", lilv)))
+ `(("jalv" ,jalv)
+ ("lilv" ,lilv)))
(native-inputs
- `(("help2man", help2man)
- ("pkg-config", pkg-config)))
+ `(("help2man" ,help2man)
+ ("pkg-config" ,pkg-config)))
(synopsis "Documentation generator for LV2 plugins")
(description
"lv2toweb allows the user to create an xhtml page with information
diff --git a/gnu/packages/aux-files/guile-launcher.c b/gnu/packages/aux-files/guile-launcher.c
new file mode 100644
index 0000000000..886ede2846
--- /dev/null
+++ b/gnu/packages/aux-files/guile-launcher.c
@@ -0,0 +1,46 @@
+/* GNU Guix --- Functional package management for GNU
+ Copyright 1996-1997,2000-2001,2006,2008,2011,2013,2018
+ Free Software Foundation, Inc.
+ Copyright (C) 2020 Ludovic Courtès <ludo@gnu.org>
+
+ This file is part of GNU Guix.
+
+ GNU Guix is free software; you can redistribute it and/or modify it
+ under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 3 of the License, or (at
+ your option) any later version.
+
+ GNU Guix is distributed in the hope that it will be useful, but
+ WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. */
+
+/* This file implements a variant of the 'guile' executable that does not
+ complain about locale issues. */
+
+#include <locale.h>
+#include <libguile.h>
+
+static void
+inner_main (void *unused, int argc, char **argv)
+{
+ scm_shell (argc, argv);
+}
+
+int
+main (int argc, char **argv)
+{
+ /* Try to install the current locale; remain silent if it fails. */
+ if (setlocale (LC_ALL, "") == NULL)
+ /* The 'guix pull'-provided 'guix' includes at least en_US.utf8 so use
+ that. That gives us UTF-8 support for 'scm_to_locale_string', etc.,
+ which is always preferable over the C locale. */
+ setlocale (LC_ALL, "en_US.utf8");
+
+ scm_install_gmp_memory_functions = 1;
+ scm_boot_guile (argc, argv, inner_main, 0);
+ return 0; /* never reached */
+}
diff --git a/gnu/packages/aux-files/linux-libre/4.19-arm.conf b/gnu/packages/aux-files/linux-libre/4.19-arm.conf
index 32d288b0f4..ee5916b278 100644
--- a/gnu/packages/aux-files/linux-libre/4.19-arm.conf
+++ b/gnu/packages/aux-files/linux-libre/4.19-arm.conf
@@ -1023,7 +1023,8 @@ CONFIG_XFRM_IPCOMP=m
CONFIG_NET_KEY=m
CONFIG_NET_KEY_MIGRATE=y
# CONFIG_SMC is not set
-# CONFIG_XDP_SOCKETS is not set
+CONFIG_XDP_SOCKETS=y
+CONFIG_XDP_SOCKETS_DIAG=m
CONFIG_INET=y
CONFIG_IP_MULTICAST=y
CONFIG_IP_ADVANCED_ROUTER=y
diff --git a/gnu/packages/aux-files/linux-libre/4.19-arm64.conf b/gnu/packages/aux-files/linux-libre/4.19-arm64.conf
index 76bd266ec6..852ae64ee1 100644
--- a/gnu/packages/aux-files/linux-libre/4.19-arm64.conf
+++ b/gnu/packages/aux-files/linux-libre/4.19-arm64.conf
@@ -966,7 +966,8 @@ CONFIG_XFRM_IPCOMP=m
CONFIG_NET_KEY=m
CONFIG_NET_KEY_MIGRATE=y
# CONFIG_SMC is not set
-# CONFIG_XDP_SOCKETS is not set
+CONFIG_XDP_SOCKETS=y
+CONFIG_XDP_SOCKETS_DIAG=m
CONFIG_INET=y
CONFIG_IP_MULTICAST=y
CONFIG_IP_ADVANCED_ROUTER=y
diff --git a/gnu/packages/aux-files/linux-libre/4.19-i686.conf b/gnu/packages/aux-files/linux-libre/4.19-i686.conf
index 0fb07d5231..d01e74d8c7 100644
--- a/gnu/packages/aux-files/linux-libre/4.19-i686.conf
+++ b/gnu/packages/aux-files/linux-libre/4.19-i686.conf
@@ -1053,7 +1053,8 @@ CONFIG_XFRM_IPCOMP=m
CONFIG_NET_KEY=m
# CONFIG_NET_KEY_MIGRATE is not set
# CONFIG_SMC is not set
-# CONFIG_XDP_SOCKETS is not set
+CONFIG_XDP_SOCKETS=y
+CONFIG_XDP_SOCKETS_DIAG=m
CONFIG_INET=y
CONFIG_IP_MULTICAST=y
CONFIG_IP_ADVANCED_ROUTER=y
diff --git a/gnu/packages/aux-files/linux-libre/4.19-x86_64.conf b/gnu/packages/aux-files/linux-libre/4.19-x86_64.conf
index 49a349f249..dd9469039c 100644
--- a/gnu/packages/aux-files/linux-libre/4.19-x86_64.conf
+++ b/gnu/packages/aux-files/linux-libre/4.19-x86_64.conf
@@ -1063,7 +1063,8 @@ CONFIG_XFRM_IPCOMP=m
CONFIG_NET_KEY=m
# CONFIG_NET_KEY_MIGRATE is not set
# CONFIG_SMC is not set
-# CONFIG_XDP_SOCKETS is not set
+CONFIG_XDP_SOCKETS=y
+CONFIG_XDP_SOCKETS_DIAG=m
CONFIG_INET=y
CONFIG_IP_MULTICAST=y
CONFIG_IP_ADVANCED_ROUTER=y
diff --git a/gnu/packages/aux-files/linux-libre/5.4-arm.conf b/gnu/packages/aux-files/linux-libre/5.4-arm.conf
index 7c9ab94719..12654de3c6 100644
--- a/gnu/packages/aux-files/linux-libre/5.4-arm.conf
+++ b/gnu/packages/aux-files/linux-libre/5.4-arm.conf
@@ -1034,7 +1034,8 @@ CONFIG_XFRM_IPCOMP=m
CONFIG_NET_KEY=m
CONFIG_NET_KEY_MIGRATE=y
# CONFIG_SMC is not set
-# CONFIG_XDP_SOCKETS is not set
+CONFIG_XDP_SOCKETS=y
+CONFIG_XDP_SOCKETS_DIAG=m
CONFIG_INET=y
CONFIG_IP_MULTICAST=y
CONFIG_IP_ADVANCED_ROUTER=y
diff --git a/gnu/packages/aux-files/linux-libre/5.4-arm64.conf b/gnu/packages/aux-files/linux-libre/5.4-arm64.conf
index 6520d1ddf2..45cfdaa85c 100644
--- a/gnu/packages/aux-files/linux-libre/5.4-arm64.conf
+++ b/gnu/packages/aux-files/linux-libre/5.4-arm64.conf
@@ -1008,7 +1008,8 @@ CONFIG_XFRM_IPCOMP=m
CONFIG_NET_KEY=m
CONFIG_NET_KEY_MIGRATE=y
# CONFIG_SMC is not set
-# CONFIG_XDP_SOCKETS is not set
+CONFIG_XDP_SOCKETS=y
+CONFIG_XDP_SOCKETS_DIAG=m
CONFIG_INET=y
CONFIG_IP_MULTICAST=y
CONFIG_IP_ADVANCED_ROUTER=y
diff --git a/gnu/packages/aux-files/linux-libre/5.4-i686.conf b/gnu/packages/aux-files/linux-libre/5.4-i686.conf
index 3727f9d486..cc2d8dde01 100644
--- a/gnu/packages/aux-files/linux-libre/5.4-i686.conf
+++ b/gnu/packages/aux-files/linux-libre/5.4-i686.conf
@@ -1027,7 +1027,8 @@ CONFIG_XFRM_IPCOMP=m
CONFIG_NET_KEY=m
# CONFIG_NET_KEY_MIGRATE is not set
# CONFIG_SMC is not set
-# CONFIG_XDP_SOCKETS is not set
+CONFIG_XDP_SOCKETS=y
+CONFIG_XDP_SOCKETS_DIAG=m
CONFIG_INET=y
CONFIG_IP_MULTICAST=y
CONFIG_IP_ADVANCED_ROUTER=y
diff --git a/gnu/packages/aux-files/linux-libre/5.4-x86_64.conf b/gnu/packages/aux-files/linux-libre/5.4-x86_64.conf
index be7a603af1..2e2804879a 100644
--- a/gnu/packages/aux-files/linux-libre/5.4-x86_64.conf
+++ b/gnu/packages/aux-files/linux-libre/5.4-x86_64.conf
@@ -1044,7 +1044,8 @@ CONFIG_XFRM_IPCOMP=m
CONFIG_NET_KEY=m
# CONFIG_NET_KEY_MIGRATE is not set
# CONFIG_SMC is not set
-# CONFIG_XDP_SOCKETS is not set
+CONFIG_XDP_SOCKETS=y
+CONFIG_XDP_SOCKETS_DIAG=m
CONFIG_INET=y
CONFIG_IP_MULTICAST=y
CONFIG_IP_ADVANCED_ROUTER=y
diff --git a/gnu/packages/aux-files/linux-libre/5.8-arm.conf b/gnu/packages/aux-files/linux-libre/5.8-arm.conf
index bd274d1553..1e42bcdc82 100644
--- a/gnu/packages/aux-files/linux-libre/5.8-arm.conf
+++ b/gnu/packages/aux-files/linux-libre/5.8-arm.conf
@@ -1056,7 +1056,8 @@ CONFIG_XFRM_IPCOMP=m
CONFIG_NET_KEY=m
CONFIG_NET_KEY_MIGRATE=y
# CONFIG_SMC is not set
-# CONFIG_XDP_SOCKETS is not set
+CONFIG_XDP_SOCKETS=y
+CONFIG_XDP_SOCKETS_DIAG=m
CONFIG_INET=y
CONFIG_IP_MULTICAST=y
CONFIG_IP_ADVANCED_ROUTER=y
diff --git a/gnu/packages/aux-files/linux-libre/5.8-arm64.conf b/gnu/packages/aux-files/linux-libre/5.8-arm64.conf
index 1e58a3c717..42cc1f2eb9 100644
--- a/gnu/packages/aux-files/linux-libre/5.8-arm64.conf
+++ b/gnu/packages/aux-files/linux-libre/5.8-arm64.conf
@@ -1048,7 +1048,8 @@ CONFIG_XFRM_IPCOMP=m
CONFIG_NET_KEY=m
CONFIG_NET_KEY_MIGRATE=y
# CONFIG_SMC is not set
-# CONFIG_XDP_SOCKETS is not set
+CONFIG_XDP_SOCKETS=y
+CONFIG_XDP_SOCKETS_DIAG=m
CONFIG_INET=y
CONFIG_IP_MULTICAST=y
CONFIG_IP_ADVANCED_ROUTER=y
diff --git a/gnu/packages/aux-files/linux-libre/5.8-i686.conf b/gnu/packages/aux-files/linux-libre/5.8-i686.conf
index f73c41b6d5..d8f88f0570 100644
--- a/gnu/packages/aux-files/linux-libre/5.8-i686.conf
+++ b/gnu/packages/aux-files/linux-libre/5.8-i686.conf
@@ -1035,7 +1035,8 @@ CONFIG_XFRM_IPCOMP=m
CONFIG_NET_KEY=m
# CONFIG_NET_KEY_MIGRATE is not set
# CONFIG_SMC is not set
-# CONFIG_XDP_SOCKETS is not set
+CONFIG_XDP_SOCKETS=y
+CONFIG_XDP_SOCKETS_DIAG=m
CONFIG_INET=y
CONFIG_IP_MULTICAST=y
CONFIG_IP_ADVANCED_ROUTER=y
diff --git a/gnu/packages/aux-files/linux-libre/5.8-x86_64.conf b/gnu/packages/aux-files/linux-libre/5.8-x86_64.conf
index cd2706357d..930008eeb9 100644
--- a/gnu/packages/aux-files/linux-libre/5.8-x86_64.conf
+++ b/gnu/packages/aux-files/linux-libre/5.8-x86_64.conf
@@ -1061,7 +1061,8 @@ CONFIG_XFRM_IPCOMP=m
CONFIG_NET_KEY=m
# CONFIG_NET_KEY_MIGRATE is not set
# CONFIG_SMC is not set
-# CONFIG_XDP_SOCKETS is not set
+CONFIG_XDP_SOCKETS=y
+CONFIG_XDP_SOCKETS_DIAG=m
CONFIG_INET=y
CONFIG_IP_MULTICAST=y
CONFIG_IP_ADVANCED_ROUTER=y
diff --git a/gnu/packages/avahi.scm b/gnu/packages/avahi.scm
index 602f9d7997..b2aeeadf47 100644
--- a/gnu/packages/avahi.scm
+++ b/gnu/packages/avahi.scm
@@ -74,7 +74,7 @@
("expat" ,expat)
("gdbm" ,gdbm)
("glib" ,glib)
- ("libcap" ,libcap) ;to enable chroot support in avahi-daemon
+ ("libcap" ,libcap-2.31) ;to enable chroot support in avahi-daemon
("libdaemon" ,libdaemon)
("libevent" ,libevent)))
(native-inputs
diff --git a/gnu/packages/axoloti.scm b/gnu/packages/axoloti.scm
index ba49a9d0f0..2a5cf8e0fc 100644
--- a/gnu/packages/axoloti.scm
+++ b/gnu/packages/axoloti.scm
@@ -527,7 +527,7 @@ patcher application.")))
(install-file "dist/Axoloti.jar" share)
;; Install old firmware
- (let ((target (string-append share "/old_firmware/"))
+ (let ((target (string-append share "/old_firmware/firmware-1.0.12"))
(old-firmware
(string-append (assoc-ref inputs "axoloti-runtime")
"/share/axoloti/firmware/")))
@@ -557,7 +557,7 @@ patcher application.")))
toolchain
"/arm-none-eabi/include:"
toolchain
- "/arm-none-eabi/include/arm-none-eabi/armv7e-m")))
+ "/arm-none-eabi/include/arm-none-eabi/thumb/v7e-m")))
(display
(string-append "#!" (which "sh") "\n"
"export CROSS_CPATH=" includes "\n"
diff --git a/gnu/packages/backup.scm b/gnu/packages/backup.scm
index 051b200631..770bb23a9c 100644
--- a/gnu/packages/backup.scm
+++ b/gnu/packages/backup.scm
@@ -569,13 +569,13 @@ detection, and lossless compression.")
(define-public borg
(package
(name "borg")
- (version "1.1.13")
+ (version "1.1.14")
(source
(origin
(method url-fetch)
(uri (pypi-uri "borgbackup" version))
(sha256
- (base32 "089q3flmwbz7dc28zlscwylf64kgck3jf1n6lqpwww8hlrk8cjhn"))
+ (base32 "1fpdj73cgp96xwasdcifxl7q2pr1my2f4vfdjpv771llri3hgfvx"))
(modules '((guix build utils)))
(snippet
'(begin
@@ -606,7 +606,7 @@ detection, and lossless compression.")
#t))))
(build-system python-build-system)
(arguments
- `(#:modules ((srfi srfi-26) ; for cut
+ `(#:modules ((srfi srfi-26) ; for cut
(guix build utils)
(guix build python-build-system))
#:phases
@@ -1066,7 +1066,7 @@ other storage medium. Subsequent incremental backups can then be layered on
top of the full backup. The restore command performs the inverse function of
dump; it can restore a full backup of a file system. Single files and
directory subtrees may also be restored from full or partial backups in
-interractive mode.")
+interactive mode.")
(license license:bsd-3)))
(define-public burp
@@ -1103,7 +1103,7 @@ interractive mode.")
(native-inputs
`(("autoconf" ,autoconf)
("automake" ,automake)
- ("check" ,check)
+ ("check" ,check-0.14)
("pkg-config" ,pkg-config)))
(home-page "https://burp.grke.org")
(synopsis "Differential backup and restore")
diff --git a/gnu/packages/base.scm b/gnu/packages/base.scm
index 7cc4325384..cc10a4b673 100644
--- a/gnu/packages/base.scm
+++ b/gnu/packages/base.scm
@@ -339,7 +339,7 @@ used to apply commands with arbitrarily long arguments.")
,@(if (and (not (%current-target-system))
(member (%current-system)
(package-supported-systems libcap)))
- `(("libcap" ,libcap)) ;capability support in 'ls', etc.
+ `(("libcap" ,libcap-2.31)) ;capability support in 'ls', etc.
'())))
(native-inputs
;; Perl is needed to run tests in native builds, and to run the bundled
@@ -1238,7 +1238,7 @@ command.")
(define-public tzdata
(package
(name "tzdata")
- (version "2020a")
+ (version "2020b")
(source (origin
(method url-fetch)
(uri (string-append
@@ -1246,7 +1246,7 @@ command.")
version ".tar.gz"))
(sha256
(base32
- "18lrp0zh8m931jjlrv8lvjas4ka5dfkzdbwnbw5lwd2dlbn62wal"))))
+ "02g88pbw82zr36x9dz5ib4sq6bfq253yx5hbhnfyhp143naky1cv"))))
(build-system gnu-build-system)
(arguments
'(#:tests? #f
@@ -1296,7 +1296,7 @@ command.")
version ".tar.gz"))
(sha256
(base32
- "0sfnlqw1p93r7klny69rwr94fh22mz632h52phgzfgg01q9gfakx"))))))
+ "1nj3zvqpy5lm6w365p9ynz4i5arq4fiy8ldq55v4z9p49nagivs7"))))))
(home-page "https://www.iana.org/time-zones")
(synopsis "Database of current and historical time zones")
(description "The Time Zone Database (often called tz or zoneinfo)
diff --git a/gnu/packages/benchmark.scm b/gnu/packages/benchmark.scm
index f61fb86f75..f9648b5f7c 100644
--- a/gnu/packages/benchmark.scm
+++ b/gnu/packages/benchmark.scm
@@ -46,14 +46,14 @@
(define-public fio
(package
(name "fio")
- (version "3.22")
+ (version "3.23")
(source (origin
(method url-fetch)
(uri (string-append "https://brick.kernel.dk/snaps/"
"fio-" version ".tar.bz2"))
(sha256
(base32
- "0f2x917600y6k0xs34ixgfjm4v1ylbh8svpkqi07xy3474g5s2rv"))))
+ "0cy32431hv0i84yrryna5byj4r610n6i1rm8nfflnrznbf051axs"))))
(build-system gnu-build-system)
(arguments
'(#:test-target "test"
diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm
index a9f8ff21c5..f30f2fd117 100644
--- a/gnu/packages/bioconductor.scm
+++ b/gnu/packages/bioconductor.scm
@@ -4,6 +4,8 @@
;;; Copyright © 2017, 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2019 Simon Tournier <zimon.toutoune@gmail.com>
;;; Copyright © 2020 Peter Lo <peterloleungyau@gmail.com>
+;;; Copyright © 2020 Mădălin Ionel Patrașcu <madalinionel.patrascu@mdc-berlin.de>
+;;; Copyright © 2020 Jakub Kądziołka <kuba@kadziolka.net>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -1113,7 +1115,7 @@ how the coverage distributed across the genome.")
(propagated-inputs
`(("r-biobase" ,r-biobase)
("r-biocgenerics" ,r-biocgenerics)
- ("r-fastcluster", r-fastcluster)
+ ("r-fastcluster" ,r-fastcluster)
("r-ggplot2" ,r-ggplot2)
("r-gviz" ,r-gviz)
("r-plyr" ,r-plyr)
@@ -1607,14 +1609,14 @@ problems in genomics, brain imaging, astrophysics, and data mining.")
(define-public r-diffbind
(package
(name "r-diffbind")
- (version "2.16.0")
+ (version "2.16.2")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "DiffBind" version))
(sha256
(base32
- "1mwqgljya1c7r2dfrdds3nswn9bn1l3ak1wavbpv4lbv3nkmykn5"))))
+ "11y9kigdikqcd0cnksh306nsaadak0kgivk7773mv3yszrxxwzj1"))))
(properties `((upstream-name . "DiffBind")))
(build-system r-build-system)
(inputs
@@ -1795,14 +1797,14 @@ determining dependencies between variables, code improvement suggestions.")
(define-public r-chippeakanno
(package
(name "r-chippeakanno")
- (version "3.22.3")
+ (version "3.22.4")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "ChIPpeakAnno" version))
(sha256
(base32
- "0q3f55hh0a2hl96272js6gagmgps9cxs8s13pf6fii64rzaz5m7y"))))
+ "0wxgjdikinkqj7jvs2725ak0291q6zhikyf1c93w8cngwvd9i1gq"))))
(properties `((upstream-name . "ChIPpeakAnno")))
(build-system r-build-system)
(propagated-inputs
@@ -2705,13 +2707,13 @@ gene and isoform level using RNA-seq data")
(define-public r-karyoploter
(package
(name "r-karyoploter")
- (version "1.14.0")
+ (version "1.14.1")
(source (origin
(method url-fetch)
(uri (bioconductor-uri "karyoploteR" version))
(sha256
(base32
- "0h0gk4xd95k5phy6qcsv7j931d7gk3p24i2fg4mz5dsk110lpifs"))))
+ "1wlnzkq58baqj9854nzf5rbglchb2xy4wsp3s0q8xfq8v0p3baxf"))))
(build-system r-build-system)
(propagated-inputs
`(("r-annotationdbi" ,r-annotationdbi)
@@ -2734,7 +2736,7 @@ gene and isoform level using RNA-seq data")
(home-page "https://bioconductor.org/packages/karyoploteR/")
(synopsis "Plot customizable linear genomes displaying arbitrary data")
(description "This package creates karyotype plots of arbitrary genomes and
-offers a complete set of functions to plot arbitrary data on them. It mimicks
+offers a complete set of functions to plot arbitrary data on them. It mimics
many R base graphics functions coupling them with a coordinate change function
automatically mapping the chromosome and data coordinates into the plot
coordinates.")
@@ -3626,14 +3628,14 @@ information about samples and features can be added to the plot.")
(define-public r-gosemsim
(package
(name "r-gosemsim")
- (version "2.14.1")
+ (version "2.14.2")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "GOSemSim" version))
(sha256
(base32
- "0v4q9xr1cm5xr08pgbzrss41kh3yz7xyh31n55l0sjmr1629ykln"))))
+ "02r7m1x6g8bb7q8l0hpvakdzdv5v1nplhx5lbiy798a7c3xg895b"))))
(properties `((upstream-name . "GOSemSim")))
(build-system r-build-system)
(propagated-inputs
@@ -3672,7 +3674,7 @@ sets of GO terms, gene products and gene clusters.")
(description
"Genome wide studies of translational control is emerging as a tool to
study various biological conditions. The output from such analysis is both
-the mRNA level (e.g. cytosolic mRNA level) and the levl of mRNA actively
+the mRNA level (e.g. cytosolic mRNA level) and the level of mRNA actively
involved in translation (the actively translating mRNA level) for each mRNA.
The standard analysis of such data strives towards identifying differential
translational between two or more sample classes - i.e. differences in
@@ -4362,14 +4364,14 @@ position-specific scores within R and Bioconductor.")
(define-public r-atacseqqc
(package
(name "r-atacseqqc")
- (version "1.12.4")
+ (version "1.12.5")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "ATACseqQC" version))
(sha256
(base32
- "1gs9862hhh4gr1akij6ykhcj29s9dzg1vnj87hqrm19dfgl43qbh"))))
+ "1103daz82k97vzmxjmf7jwm2nd3w8i0jwplrsi9996bkih11qwbf"))))
(properties `((upstream-name . "ATACseqQC")))
(build-system r-build-system)
(propagated-inputs
@@ -4841,7 +4843,7 @@ a more complex way than the simple GC content. Instead, the base types (A, T,
G or C) at each position along the probe determine the affinity of each probe.
The parameters of the position-specific base contributions to the probe
affinity is estimated in an NSB experiment in which only NSB but no
-gene-specific bidning is expected.")
+gene-specific binding is expected.")
;; Any version of the LGPL
(license license:lgpl2.1+)))
@@ -5060,14 +5062,14 @@ based on @dfn{Continuous Wavelet Transform} (CWT).")
(define-public r-xcms
(package
(name "r-xcms")
- (version "3.10.1")
+ (version "3.10.2")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "xcms" version))
(sha256
(base32
- "1aa11gy1v7kkamv3hsnvdx715q8f1saw9p664j6wifyjj0hx13kn"))))
+ "0sk53jcl7sjrpw2ncdpl8sw1b1j9mizlrj517rinr1qrbm6lsn8f"))))
(build-system r-build-system)
(propagated-inputs
`(("r-biobase" ,r-biobase)
@@ -7159,14 +7161,14 @@ data.")
(define-public r-activedriverwgs
(package
(name "r-activedriverwgs")
- (version "1.1.0")
+ (version "1.1.1")
(source
(origin
(method url-fetch)
(uri (cran-uri "ActiveDriverWGS" version))
(sha256
(base32
- "0l6h0f54zjvcx19ngq3kp01dypsjqf28vssjm8yzccmpyacfypag"))))
+ "06mvakdc8d2pn91p0sr4ixc561s4ia5h1cvd1p7pqd6s50dy4say"))))
(properties
`((upstream-name . "ActiveDriverWGS")))
(build-system r-build-system)
@@ -7245,14 +7247,14 @@ gene expression.")
(define-public r-bgx
(package
(name "r-bgx")
- (version "1.54.0")
+ (version "1.54.1")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "bgx" version))
(sha256
(base32
- "0r67a6m5hrnsxgk0f57hl5yaagi2wai2kpfyjjlhrck4rlm1sjcx"))))
+ "0a10fg9n5p024jrmbis102gqpbz23sc6vdn1sal2697hlxikzb46"))))
(properties `((upstream-name . "bgx")))
(build-system r-build-system)
(propagated-inputs
@@ -7476,7 +7478,7 @@ networks and estimated fluxes can be visualized with hypergraphs.")
safety and convenience features to the @code{filebacked.big.matrix} class from
the @code{bigmemory} package. @code{BigMatrix} protects against segfaults by
monitoring and gracefully restoring the connection to on-disk data and it also
-protects against accidental data modification with a filesystem-based
+protects against accidental data modification with a file-system-based
permissions system. Utilities are provided for using @code{BigMatrix}-derived
classes as @code{assayData} matrices within the @code{Biobase} package's
@code{eSet} family of classes. @code{BigMatrix} provides some optimizations
@@ -8185,14 +8187,14 @@ truncated data.")
(define-public r-interval
(package
(name "r-interval")
- (version "1.1-0.1")
+ (version "1.1-0.7")
(source
(origin
(method url-fetch)
(uri (cran-uri "interval" version))
(sha256
(base32
- "1lln9jkli28i4wivwzqrsxvv2n15560f7msjy5gssrm45vxrxms8"))))
+ "1b31lh0sv7lzy76230djipahxa10lblbr37kdiigr6hp3dd1xmz9"))))
(properties `((upstream-name . "interval")))
(build-system r-build-system)
(propagated-inputs
@@ -8212,14 +8214,14 @@ plot them, and perform logrank or Wilcoxon type tests.")
(define-public r-fhtest
(package
(name "r-fhtest")
- (version "1.4")
+ (version "1.5")
(source
(origin
(method url-fetch)
(uri (cran-uri "FHtest" version))
(sha256
(base32
- "1wsn0j9ydpp9nfswiqg21p09kgkvaq8fh0y0h8syqgizah7i8vs2"))))
+ "00mql2r4f5hxhdqf27q3x9s5rz2zzakx2myym97b1w1s7c5znl4q"))))
(properties `((upstream-name . "FHtest")))
(build-system r-build-system)
(propagated-inputs
@@ -8242,3 +8244,483 @@ with:
@end itemize
")
(license license:gpl2+)))
+
+(define-public r-fourcseq
+ (package
+ (name "r-fourcseq")
+ (version "1.22.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (bioconductor-uri "FourCSeq" version))
+ (sha256
+ (base32 "14q1ijnqnbd9xs60sfvyqjfiypjrvhacpwp2v85yfhcxw870cx5b"))))
+ (properties `((upstream-name . "FourCSeq")))
+ (build-system r-build-system)
+ (propagated-inputs
+ `(("r-biobase" ,r-biobase)
+ ("r-biostrings" ,r-biostrings)
+ ("r-deseq2" ,r-deseq2)
+ ("r-fda" ,r-fda)
+ ("r-genomicalignments" ,r-genomicalignments)
+ ("r-genomicranges" ,r-genomicranges)
+ ("r-ggbio" ,r-ggbio)
+ ("r-ggplot2" ,r-ggplot2)
+ ("r-gtools" ,r-gtools)
+ ("r-lsd" ,r-lsd)
+ ("r-matrix" ,r-matrix)
+ ("r-reshape2" ,r-reshape2)
+ ("r-rsamtools" ,r-rsamtools)
+ ("r-rtracklayer" ,r-rtracklayer)
+ ("r-summarizedexperiment" ,r-summarizedexperiment)))
+ (native-inputs
+ `(("r-knitr" ,r-knitr)))
+ (home-page
+ "https://bioconductor.org/packages/release/bioc/html/FourCSeq.html")
+ (synopsis "Analysis of multiplexed 4C sequencing data")
+ (description
+ "This package is an R package dedicated to the analysis of (multiplexed)
+4C sequencing data. @code{r-fourcseq} provides a pipeline to detect specific
+interactions between DNA elements and identify differential interactions
+between conditions. The statistical analysis in R starts with individual bam
+files for each sample as inputs. To obtain these files, the package contains
+a Python script to demultiplex libraries and trim off primer sequences. With
+a standard alignment software the required bam files can be then be
+generated.")
+ (license license:gpl3+)))
+
+(define-public r-preprocesscore
+ (package
+ (name "r-preprocesscore")
+ (version "1.50.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (bioconductor-uri "preprocessCore" version))
+ (sha256
+ (base32
+ "0q1406kswylc8zn5k3wyd34p34pfzbhi1ggkfsh30zcjp6adbwjl"))))
+ (properties
+ `((upstream-name . "preprocessCore")))
+ (build-system r-build-system)
+ (home-page "https://github.com/bmbolstad/preprocessCore")
+ (synopsis "Collection of pre-processing functions")
+ (description
+ "This package provides a library of core pre-processing and normalization
+routines.")
+ (license license:lgpl2.0+)))
+
+;; This is a CRAN package, but it depends on preprocessorcore, which is a
+;; Bioconductor package.
+(define-public r-wgcna
+ (package
+ (name "r-wgcna")
+ (version "1.69")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (cran-uri "WGCNA" version))
+ (sha256
+ (base32
+ "022hkprnrafvggi8pkjffkvk1qlnibmbbxxrni00wkrdbga5589f"))))
+ (properties `((upstream-name . "WGCNA")))
+ (build-system r-build-system)
+ (propagated-inputs
+ `(("r-annotationdbi" ,r-annotationdbi)
+ ("r-doparallel" ,r-doparallel)
+ ("r-dynamictreecut" ,r-dynamictreecut)
+ ("r-fastcluster" ,r-fastcluster)
+ ("r-foreach" ,r-foreach)
+ ("r-go-db" ,r-go-db)
+ ("r-hmisc" ,r-hmisc)
+ ("r-impute" ,r-impute)
+ ("r-rcpp" ,r-rcpp)
+ ("r-survival" ,r-survival)
+ ("r-matrixstats" ,r-matrixstats)
+ ("r-preprocesscore" ,r-preprocesscore)))
+ (home-page
+ "http://www.genetics.ucla.edu/labs/horvath/CoexpressionNetwork/Rpackages/WGCNA/")
+ (synopsis "Weighted correlation network analysis")
+ (description
+ "This package provides functions necessary to perform Weighted
+Correlation Network Analysis on high-dimensional data. It includes functions
+for rudimentary data cleaning, construction and summarization of correlation
+networks, module identification and functions for relating both variables and
+modules to sample traits. It also includes a number of utility functions for
+data manipulation and visualization.")
+ (license license:gpl2+)))
+
+(define-public r-rgraphviz
+ (package
+ (name "r-rgraphviz")
+ (version "2.32.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (bioconductor-uri "Rgraphviz" version))
+ (sha256
+ (base32
+ "1calpvzgcz6v7s4x6bf35kj83sga95zjp7x87p5d3qnbv7q2wz5y"))))
+ (properties `((upstream-name . "Rgraphviz")))
+ (build-system r-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'make-reproducible
+ (lambda _
+ ;; The replacement value is taken from src/graphviz/builddate.h
+ (substitute* "src/graphviz/configure"
+ (("VERSION_DATE=.*")
+ "VERSION_DATE=20200427.2341\n"))
+ #t)))))
+ ;; FIXME: Rgraphviz bundles the sources of an older variant of
+ ;; graphviz. It does not build with the latest version of graphviz, so
+ ;; we do not add graphviz to the inputs.
+ (inputs `(("zlib" ,zlib)))
+ (propagated-inputs
+ `(("r-graph" ,r-graph)))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (home-page "https://bioconductor.org/packages/Rgraphviz")
+ (synopsis "Plotting capabilities for R graph objects")
+ (description
+ "This package interfaces R with the graphviz library for plotting R graph
+objects from the @code{graph} package.")
+ (license license:epl1.0)))
+
+(define-public r-fithic
+ (package
+ (name "r-fithic")
+ (version "1.14.0")
+ (source (origin
+ (method url-fetch)
+ (uri (bioconductor-uri "FitHiC" version))
+ (sha256
+ (base32
+ "1dffkdxm08wq4kjd9j2v2625x3p6vbrk33a2zx94pwpgkghr72yp"))))
+ (properties `((upstream-name . "FitHiC")))
+ (build-system r-build-system)
+ (propagated-inputs
+ `(("r-data-table" ,r-data-table)
+ ("r-fdrtool" ,r-fdrtool)
+ ("r-rcpp" ,r-rcpp)))
+ (native-inputs
+ `(("r-knitr" ,r-knitr)))
+ (home-page "https://bioconductor.org/packages/FitHiC")
+ (synopsis "Confidence estimation for intra-chromosomal contact maps")
+ (description
+ "Fit-Hi-C is a tool for assigning statistical confidence estimates to
+intra-chromosomal contact maps produced by genome-wide genome architecture
+assays such as Hi-C.")
+ (license license:gpl2+)))
+
+(define-public r-hitc
+ (package
+ (name "r-hitc")
+ (version "1.32.0")
+ (source (origin
+ (method url-fetch)
+ (uri (bioconductor-uri "HiTC" version))
+ (sha256
+ (base32
+ "1jx2pfa7sbdz7xi466lz1h5xv126g56z73n0a5l2wrq28k47qaxy"))))
+ (properties `((upstream-name . "HiTC")))
+ (build-system r-build-system)
+ (propagated-inputs
+ `(("r-biostrings" ,r-biostrings)
+ ("r-genomeinfodb" ,r-genomeinfodb)
+ ("r-genomicranges" ,r-genomicranges)
+ ("r-iranges" ,r-iranges)
+ ("r-matrix" ,r-matrix)
+ ("r-rcolorbrewer" ,r-rcolorbrewer)
+ ("r-rtracklayer" ,r-rtracklayer)))
+ (home-page "https://bioconductor.org/packages/HiTC")
+ (synopsis "High throughput chromosome conformation capture analysis")
+ (description
+ "The HiTC package was developed to explore high-throughput \"C\" data
+such as 5C or Hi-C. Dedicated R classes as well as standard methods for
+quality controls, normalization, visualization, and further analysis are also
+provided.")
+ (license license:artistic2.0)))
+
+(define-public r-hdf5array
+ (package
+ (name "r-hdf5array")
+ (version "1.16.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (bioconductor-uri "HDF5Array" version))
+ (sha256
+ (base32
+ "01767v90nl0499jcicpxngbbs0af5p9c5aasi5va01w3v5bnqddn"))))
+ (properties `((upstream-name . "HDF5Array")))
+ (build-system r-build-system)
+ (inputs
+ `(("zlib" ,zlib)))
+ (propagated-inputs
+ `(("r-biocgenerics" ,r-biocgenerics)
+ ("r-delayedarray" ,r-delayedarray)
+ ("r-iranges" ,r-iranges)
+ ("r-matrix" ,r-matrix)
+ ("r-rhdf5" ,r-rhdf5)
+ ("r-rhdf5lib" ,r-rhdf5lib)
+ ("r-s4vectors" ,r-s4vectors)))
+ (home-page "https://bioconductor.org/packages/HDF5Array")
+ (synopsis "HDF5 back end for DelayedArray objects")
+ (description "This package provides an array-like container for convenient
+access and manipulation of HDF5 datasets. It supports delayed operations and
+block processing.")
+ (license license:artistic2.0)))
+
+(define-public r-rhdf5lib
+ (package
+ (name "r-rhdf5lib")
+ (version "1.10.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (bioconductor-uri "Rhdf5lib" version))
+ (sha256
+ (base32
+ "0f45sqrvzj6x4mckalyp8366hm8v0rrmzklx3xd4gs6l2wallcn9"))
+ (modules '((guix build utils)))
+ (snippet
+ '(begin
+ ;; Delete bundled binaries
+ (delete-file-recursively "src/wininclude/")
+ (delete-file-recursively "src/winlib-4.9.3/")
+ (delete-file-recursively "src/winlib-8.3.0/")
+ (delete-file "src/hdf5small_cxx_hl_1.10.6.tar.gz")
+ #t))))
+ (properties `((upstream-name . "Rhdf5lib")))
+ (build-system r-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'do-not-use-bundled-hdf5
+ (lambda* (#:key inputs #:allow-other-keys)
+ (for-each delete-file '("configure" "configure.ac"))
+ ;; Do not make other packages link with the proprietary libsz.
+ (substitute* "R/zzz.R"
+ ((" \"%s/libsz.a\"") ""))
+ (with-directory-excursion "src"
+ (invoke "tar" "xvf" (assoc-ref inputs "hdf5-source"))
+ (rename-file (string-append "hdf5-" ,(package-version hdf5-1.10))
+ "hdf5")
+ ;; Remove timestamp and host system information to make
+ ;; the build reproducible.
+ (substitute* "hdf5/src/libhdf5.settings.in"
+ (("Configured on: @CONFIG_DATE@")
+ "Configured on: Guix")
+ (("Uname information:.*")
+ "Uname information: Linux\n")
+ ;; Remove unnecessary store reference.
+ (("C Compiler:.*")
+ "C Compiler: GCC\n"))
+ (rename-file "Makevars.in" "Makevars")
+ (substitute* "Makevars"
+ (("@ZLIB_LIB@") "-lz")
+ (("@ZLIB_INCLUDE@") "")
+ (("HDF5_CXX_LIB=.*")
+ (string-append "HDF5_CXX_LIB="
+ (assoc-ref inputs "hdf5") "/lib/libhdf5_cpp.a\n"))
+ (("HDF5_LIB=.*")
+ (string-append "HDF5_LIB="
+ (assoc-ref inputs "hdf5") "/lib/libhdf5.a\n"))
+ (("HDF5_CXX_INCLUDE=.*") "HDF5_CXX_INCLUDE=./hdf5/c++/src\n")
+ (("HDF5_INCLUDE=.*") "HDF5_INCLUDE=./hdf5/src\n")
+ (("HDF5_HL_INCLUDE=.*") "HDF5_HL_INCLUDE=./hdf5/hl/src\n")
+ (("HDF5_HL_CXX_INCLUDE=.*") "HDF5_HL_CXX_INCLUDE=./hdf5/hl/c++/src\n")
+ (("HDF5_HL_LIB=.*")
+ (string-append "HDF5_HL_LIB="
+ (assoc-ref inputs "hdf5") "/lib/libhdf5_hl.a\n"))
+ (("HDF5_HL_CXX_LIB=.*")
+ (string-append "HDF5_HL_CXX_LIB="
+ (assoc-ref inputs "hdf5") "/lib/libhdf5_hl_cpp.a\n"))
+ ;; szip is non-free software
+ (("cp \"\\$\\{SZIP_LIB\\}.*") "")
+ (("PKG_LIBS =.*") "PKG_LIBS = -lz -lhdf5\n")))
+ #t)))))
+ (inputs
+ `(("zlib" ,zlib)))
+ (propagated-inputs
+ `(("hdf5" ,hdf5-1.10)))
+ (native-inputs
+ `(("hdf5-source" ,(package-source hdf5-1.10))
+ ("r-knitr" ,r-knitr)))
+ (home-page "https://bioconductor.org/packages/Rhdf5lib")
+ (synopsis "HDF5 library as an R package")
+ (description "This package provides C and C++ HDF5 libraries for use in R
+packages.")
+ (license license:artistic2.0)))
+
+(define-public r-beachmat
+ (package
+ (name "r-beachmat")
+ (version "2.4.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (bioconductor-uri "beachmat" version))
+ (sha256
+ (base32
+ "1vl6jbf9ia78cm4ikdb8vz04jv4b46zhvg5i006c63a9pzw7zhxi"))))
+ (build-system r-build-system)
+ (propagated-inputs
+ `(("r-biocgenerics" ,r-biocgenerics)
+ ("r-delayedarray" ,r-delayedarray)
+ ("r-matrix" ,r-matrix)))
+ (native-inputs
+ `(("r-knitr" ,r-knitr)))
+ (home-page "https://bioconductor.org/packages/beachmat")
+ (synopsis "Compiling Bioconductor to handle each matrix type")
+ (description "This package provides a consistent C++ class interface for a
+variety of commonly used matrix types, including sparse and HDF5-backed
+matrices.")
+ (license license:gpl3)))
+
+(define-public r-singlecellexperiment
+ (package
+ (name "r-singlecellexperiment")
+ (version "1.10.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (bioconductor-uri "SingleCellExperiment" version))
+ (sha256
+ (base32
+ "092wvk11n7pa234vlwhxm3gdi4k3sbnz1splhxalbdhz3jf02zfp"))))
+ (properties
+ `((upstream-name . "SingleCellExperiment")))
+ (build-system r-build-system)
+ (propagated-inputs
+ `(("r-biocgenerics" ,r-biocgenerics)
+ ("r-s4vectors" ,r-s4vectors)
+ ("r-summarizedexperiment" ,r-summarizedexperiment)))
+ (native-inputs
+ `(("r-knitr" ,r-knitr)))
+ (home-page "https://bioconductor.org/packages/SingleCellExperiment")
+ (synopsis "S4 classes for single cell data")
+ (description "This package defines an S4 class for storing data from
+single-cell experiments. This includes specialized methods to store and
+retrieve spike-in information, dimensionality reduction coordinates and size
+factors for each cell, along with the usual metadata for genes and
+libraries.")
+ (license license:gpl3)))
+
+(define-public r-scater
+ (package
+ (name "r-scater")
+ (version "1.16.2")
+ (source (origin
+ (method url-fetch)
+ (uri (bioconductor-uri "scater" version))
+ (sha256
+ (base32
+ "1pa5wvgjb30rw1vsjwbnn07ss3sc5n8ck5d7khdby4r2s9177s33"))))
+ (build-system r-build-system)
+ (propagated-inputs
+ `(("r-beachmat" ,r-beachmat)
+ ("r-biocgenerics" ,r-biocgenerics)
+ ("r-biocneighbors" ,r-biocneighbors)
+ ("r-biocparallel" ,r-biocparallel)
+ ("r-biocsingular" ,r-biocsingular)
+ ("r-delayedarray" ,r-delayedarray)
+ ("r-delayedmatrixstats" ,r-delayedmatrixstats)
+ ("r-ggbeeswarm" ,r-ggbeeswarm)
+ ("r-ggplot2" ,r-ggplot2)
+ ("r-matrix" ,r-matrix)
+ ("r-rcpp" ,r-rcpp)
+ ("r-rlang" ,r-rlang)
+ ("r-s4vectors" ,r-s4vectors)
+ ("r-singlecellexperiment" ,r-singlecellexperiment)
+ ("r-summarizedexperiment" ,r-summarizedexperiment)
+ ("r-viridis" ,r-viridis)))
+ (native-inputs
+ `(("r-knitr" ,r-knitr)))
+ (home-page "https://github.com/davismcc/scater")
+ (synopsis "Single-cell analysis toolkit for gene expression data in R")
+ (description "This package provides a collection of tools for doing
+various analyses of single-cell RNA-seq gene expression data, with a focus on
+quality control.")
+ (license license:gpl2+)))
+
+(define-public r-scran
+ (package
+ (name "r-scran")
+ (version "1.16.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (bioconductor-uri "scran" version))
+ (sha256
+ (base32
+ "1gm4ys4aq8h1pn45k1rxk384wjyf55izivw8kgxbrflj6j4xvvsv"))))
+ (build-system r-build-system)
+ (propagated-inputs
+ `(("r-beachmat" ,r-beachmat)
+ ("r-bh" ,r-bh)
+ ("r-biocgenerics" ,r-biocgenerics)
+ ("r-biocneighbors" ,r-biocneighbors)
+ ("r-biocparallel" ,r-biocparallel)
+ ("r-biocsingular" ,r-biocsingular)
+ ("r-delayedarray" ,r-delayedarray)
+ ("r-delayedmatrixstats" ,r-delayedmatrixstats)
+ ("r-dqrng" ,r-dqrng)
+ ("r-edger" ,r-edger)
+ ("r-igraph" ,r-igraph)
+ ("r-iranges" ,r-iranges)
+ ("r-limma" ,r-limma)
+ ("r-matrix" ,r-matrix)
+ ("r-rcpp" ,r-rcpp)
+ ("r-s4vectors" ,r-s4vectors)
+ ("r-scater" ,r-scater)
+ ("r-singlecellexperiment" ,r-singlecellexperiment)
+ ("r-statmod" ,r-statmod)
+ ("r-summarizedexperiment" ,r-summarizedexperiment)))
+ (native-inputs
+ `(("r-knitr" ,r-knitr)))
+ (home-page "https://bioconductor.org/packages/scran")
+ (synopsis "Methods for single-cell RNA-Seq data analysis")
+ (description "This package implements a variety of low-level analyses of
+single-cell RNA-seq data. Methods are provided for normalization of
+cell-specific biases, assignment of cell cycle phase, and detection of highly
+variable and significantly correlated genes.")
+ (license license:gpl3)))
+
+(define-public r-delayedmatrixstats
+ (package
+ (name "r-delayedmatrixstats")
+ (version "1.10.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (bioconductor-uri "DelayedMatrixStats" version))
+ (sha256
+ (base32
+ "046sam0rz42ph0m7jz7v3bck7d3h2mp45gzywh5dvc1qkjq6fdxx"))))
+ (properties
+ `((upstream-name . "DelayedMatrixStats")))
+ (build-system r-build-system)
+ (propagated-inputs
+ `(("r-biocparallel" ,r-biocparallel)
+ ("r-delayedarray" ,r-delayedarray)
+ ("r-hdf5array" ,r-hdf5array)
+ ("r-iranges" ,r-iranges)
+ ("r-matrix" ,r-matrix)
+ ("r-matrixstats" ,r-matrixstats)
+ ("r-s4vectors" ,r-s4vectors)))
+ (native-inputs
+ `(("r-knitr" ,r-knitr)))
+ (home-page "https://github.com/PeteHaitch/DelayedMatrixStats")
+ (synopsis "Functions that apply to rows and columns of DelayedMatrix objects")
+ (description
+ "This package provides a port of the @code{matrixStats} API for use with
+@code{DelayedMatrix} objects from the @code{DelayedArray} package. It
+contains high-performing functions operating on rows and columns of
+@code{DelayedMatrix} objects, e.g. @code{colMedians}, @code{rowMedians},
+@code{colRanks}, @code{rowRanks}, @code{colSds}, and @code{rowSds}. Functions
+are optimized per data type and for subsetted calculations such that both
+memory usage and processing time is minimized.")
+ (license license:expat)))
diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm
index ffa2618458..0d5e6e3d20 100644
--- a/gnu/packages/bioinformatics.scm
+++ b/gnu/packages/bioinformatics.scm
@@ -11,7 +11,7 @@
;;; Copyright © 2017 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2018 Joshua Sierles, Nextjournal <joshua@nextjournal.com>
;;; Copyright © 2018 Gábor Boskovits <boskovits@gmail.com>
-;;; Copyright © 2018, 2019 Mădălin Ionel Patrașcu <madalinionel.patrascu@mdc-berlin.de>
+;;; Copyright © 2018, 2019, 2020 Mădălin Ionel Patrașcu <madalinionel.patrascu@mdc-berlin.de>
;;; Copyright © 2019 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2019 Brian Leung <bkleung89@gmail.com>
;;; Copyright © 2019 Brett Gilio <brettg@gnu.org>
@@ -4225,6 +4225,13 @@ performance.")
(base32
"16ljv43sc3fxmv63w7b2ff8m1s7h89xhazwmbm1bicz8axq8fjz0"))))
(build-system gnu-build-system)
+ ;; Let htslib translate "gs://" and "s3://" to regular https links with
+ ;; "--enable-gcs" and "--enable-s3". For these options to work, we also
+ ;; need to set "--enable-libcurl".
+ (arguments
+ `(#:configure-flags '("--enable-gcs"
+ "--enable-libcurl"
+ "--enable-s3")))
(inputs
`(("curl" ,curl)
("openssl" ,openssl)))
@@ -4496,7 +4503,7 @@ sequencing tag position and orientation.")
(define-public mafft
(package
(name "mafft")
- (version "7.394")
+ (version "7.471")
(source (origin
(method url-fetch)
(uri (string-append
@@ -4505,7 +4512,7 @@ sequencing tag position and orientation.")
(file-name (string-append name "-" version ".tgz"))
(sha256
(base32
- "0bacjkxfg944p5khhyh5rd4y7wkjc9qk4v2jjj442sqlq0f8ar7b"))))
+ "0r1973fx2scq4712zdqfy67wkzqj0c0bhrdy4jxhvq40mdxyry30"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; no automated tests, though there are tests in the read me
@@ -4568,7 +4575,7 @@ sequencing tag position and orientation.")
("gawk" ,gawk)
("grep" ,grep)
("coreutils" ,coreutils)))
- (home-page "http://mafft.cbrc.jp/alignment/software/")
+ (home-page "https://mafft.cbrc.jp/alignment/software/")
(synopsis "Multiple sequence alignment program")
(description
"MAFFT offers a range of multiple alignment methods for nucleotide and
@@ -4576,7 +4583,7 @@ protein sequences. For instance, it offers L-INS-i (accurate; for alignment
of <~200 sequences) and FFT-NS-2 (fast; for alignment of <~30,000
sequences).")
(license (license:non-copyleft
- "http://mafft.cbrc.jp/alignment/software/license.txt"
+ "https://mafft.cbrc.jp/alignment/software/license.txt"
"BSD-3 with different formatting"))))
(define-public mash
@@ -7539,13 +7546,13 @@ also known as views, in a controlled vocabulary.")
(define-public r-biocstyle
(package
(name "r-biocstyle")
- (version "2.16.0")
+ (version "2.16.1")
(source (origin
(method url-fetch)
(uri (bioconductor-uri "BiocStyle" version))
(sha256
(base32
- "07rjl2n4sazdg581zh7w3yykzphgr2gpz41ba4ryqs7347vh9nbf"))))
+ "09sz2bnbfbj8wz16k0q8xrvag9fldxqyp5vbg9pvd9skh28hv7c7"))))
(properties
`((upstream-name . "BiocStyle")))
(build-system r-build-system)
@@ -8848,13 +8855,13 @@ of gene-level counts.")
(define-public r-rhdf5
(package
(name "r-rhdf5")
- (version "2.32.2")
+ (version "2.32.3")
(source (origin
(method url-fetch)
(uri (bioconductor-uri "rhdf5" version))
(sha256
(base32
- "1v6ygi0avh3gmaj2ld2nr7vww4ipw39b5kqci9w27i3ja985lb8j"))))
+ "0fnx60dpf6s2qwq48lg98g18g8k7wgm66pw0kamlbb7l2hnwycvf"))))
(build-system r-build-system)
(propagated-inputs
`(("r-rhdf5lib" ,r-rhdf5lib)))
@@ -10272,14 +10279,14 @@ interval to data view, mismatch pileup, and several splicing summaries.")
(define-public r-gqtlbase
(package
(name "r-gqtlbase")
- (version "1.20.0")
+ (version "1.20.4")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "gQTLBase" version))
(sha256
(base32
- "06xvzp4fn3qfa46ggg8kxi267gbyd821vvx4040173xkqxpr0g5j"))))
+ "1ly14vhhqxjpbxjypi6ppd37dycabdhf4ny4nsvp9969k418zv41"))))
(properties `((upstream-name . "gQTLBase")))
(build-system r-build-system)
(propagated-inputs
@@ -10599,343 +10606,6 @@ EMBL-EBI GWAS catalog.")
visualizations for publication-quality multi-panel figures.")
(license license:gpl2+)))
-(define-public r-fithic
- (package
- (name "r-fithic")
- (version "1.14.0")
- (source (origin
- (method url-fetch)
- (uri (bioconductor-uri "FitHiC" version))
- (sha256
- (base32
- "1dffkdxm08wq4kjd9j2v2625x3p6vbrk33a2zx94pwpgkghr72yp"))))
- (properties `((upstream-name . "FitHiC")))
- (build-system r-build-system)
- (propagated-inputs
- `(("r-data-table" ,r-data-table)
- ("r-fdrtool" ,r-fdrtool)
- ("r-rcpp" ,r-rcpp)))
- (native-inputs
- `(("r-knitr" ,r-knitr)))
- (home-page "https://bioconductor.org/packages/FitHiC")
- (synopsis "Confidence estimation for intra-chromosomal contact maps")
- (description
- "Fit-Hi-C is a tool for assigning statistical confidence estimates to
-intra-chromosomal contact maps produced by genome-wide genome architecture
-assays such as Hi-C.")
- (license license:gpl2+)))
-
-(define-public r-hitc
- (package
- (name "r-hitc")
- (version "1.32.0")
- (source (origin
- (method url-fetch)
- (uri (bioconductor-uri "HiTC" version))
- (sha256
- (base32
- "1jx2pfa7sbdz7xi466lz1h5xv126g56z73n0a5l2wrq28k47qaxy"))))
- (properties `((upstream-name . "HiTC")))
- (build-system r-build-system)
- (propagated-inputs
- `(("r-biostrings" ,r-biostrings)
- ("r-genomeinfodb" ,r-genomeinfodb)
- ("r-genomicranges" ,r-genomicranges)
- ("r-iranges" ,r-iranges)
- ("r-matrix" ,r-matrix)
- ("r-rcolorbrewer" ,r-rcolorbrewer)
- ("r-rtracklayer" ,r-rtracklayer)))
- (home-page "https://bioconductor.org/packages/HiTC")
- (synopsis "High throughput chromosome conformation capture analysis")
- (description
- "The HiTC package was developed to explore high-throughput \"C\" data
-such as 5C or Hi-C. Dedicated R classes as well as standard methods for
-quality controls, normalization, visualization, and further analysis are also
-provided.")
- (license license:artistic2.0)))
-
-(define-public r-hdf5array
- (package
- (name "r-hdf5array")
- (version "1.16.1")
- (source
- (origin
- (method url-fetch)
- (uri (bioconductor-uri "HDF5Array" version))
- (sha256
- (base32
- "01767v90nl0499jcicpxngbbs0af5p9c5aasi5va01w3v5bnqddn"))))
- (properties `((upstream-name . "HDF5Array")))
- (build-system r-build-system)
- (inputs
- `(("zlib" ,zlib)))
- (propagated-inputs
- `(("r-biocgenerics" ,r-biocgenerics)
- ("r-delayedarray" ,r-delayedarray)
- ("r-iranges" ,r-iranges)
- ("r-matrix" ,r-matrix)
- ("r-rhdf5" ,r-rhdf5)
- ("r-rhdf5lib" ,r-rhdf5lib)
- ("r-s4vectors" ,r-s4vectors)))
- (home-page "https://bioconductor.org/packages/HDF5Array")
- (synopsis "HDF5 back end for DelayedArray objects")
- (description "This package provides an array-like container for convenient
-access and manipulation of HDF5 datasets. It supports delayed operations and
-block processing.")
- (license license:artistic2.0)))
-
-(define-public r-rhdf5lib
- (package
- (name "r-rhdf5lib")
- (version "1.10.1")
- (source
- (origin
- (method url-fetch)
- (uri (bioconductor-uri "Rhdf5lib" version))
- (sha256
- (base32
- "0f45sqrvzj6x4mckalyp8366hm8v0rrmzklx3xd4gs6l2wallcn9"))
- (modules '((guix build utils)))
- (snippet
- '(begin
- ;; Delete bundled binaries
- (delete-file-recursively "src/wininclude/")
- (delete-file-recursively "src/winlib-4.9.3/")
- (delete-file-recursively "src/winlib-8.3.0/")
- (delete-file "src/hdf5small_cxx_hl_1.10.6.tar.gz")
- #t))))
- (properties `((upstream-name . "Rhdf5lib")))
- (build-system r-build-system)
- (arguments
- `(#:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'do-not-use-bundled-hdf5
- (lambda* (#:key inputs #:allow-other-keys)
- (for-each delete-file '("configure" "configure.ac"))
- ;; Do not make other packages link with the proprietary libsz.
- (substitute* "R/zzz.R"
- ((" \"%s/libsz.a\"") ""))
- (with-directory-excursion "src"
- (invoke "tar" "xvf" (assoc-ref inputs "hdf5-source"))
- (rename-file (string-append "hdf5-" ,(package-version hdf5-1.10))
- "hdf5")
- ;; Remove timestamp and host system information to make
- ;; the build reproducible.
- (substitute* "hdf5/src/libhdf5.settings.in"
- (("Configured on: @CONFIG_DATE@")
- "Configured on: Guix")
- (("Uname information:.*")
- "Uname information: Linux\n")
- ;; Remove unnecessary store reference.
- (("C Compiler:.*")
- "C Compiler: GCC\n"))
- (rename-file "Makevars.in" "Makevars")
- (substitute* "Makevars"
- (("@ZLIB_LIB@") "-lz")
- (("@ZLIB_INCLUDE@") "")
- (("HDF5_CXX_LIB=.*")
- (string-append "HDF5_CXX_LIB="
- (assoc-ref inputs "hdf5") "/lib/libhdf5_cpp.a\n"))
- (("HDF5_LIB=.*")
- (string-append "HDF5_LIB="
- (assoc-ref inputs "hdf5") "/lib/libhdf5.a\n"))
- (("HDF5_CXX_INCLUDE=.*") "HDF5_CXX_INCLUDE=./hdf5/c++/src\n")
- (("HDF5_INCLUDE=.*") "HDF5_INCLUDE=./hdf5/src\n")
- (("HDF5_HL_INCLUDE=.*") "HDF5_HL_INCLUDE=./hdf5/hl/src\n")
- (("HDF5_HL_CXX_INCLUDE=.*") "HDF5_HL_CXX_INCLUDE=./hdf5/hl/c++/src\n")
- (("HDF5_HL_LIB=.*")
- (string-append "HDF5_HL_LIB="
- (assoc-ref inputs "hdf5") "/lib/libhdf5_hl.a\n"))
- (("HDF5_HL_CXX_LIB=.*")
- (string-append "HDF5_HL_CXX_LIB="
- (assoc-ref inputs "hdf5") "/lib/libhdf5_hl_cpp.a\n"))
- ;; szip is non-free software
- (("cp \"\\$\\{SZIP_LIB\\}.*") "")
- (("PKG_LIBS =.*") "PKG_LIBS = -lz -lhdf5\n")))
- #t)))))
- (inputs
- `(("zlib" ,zlib)))
- (propagated-inputs
- `(("hdf5" ,hdf5-1.10)))
- (native-inputs
- `(("hdf5-source" ,(package-source hdf5-1.10))
- ("r-knitr" ,r-knitr)))
- (home-page "https://bioconductor.org/packages/Rhdf5lib")
- (synopsis "HDF5 library as an R package")
- (description "This package provides C and C++ HDF5 libraries for use in R
-packages.")
- (license license:artistic2.0)))
-
-(define-public r-beachmat
- (package
- (name "r-beachmat")
- (version "2.4.0")
- (source
- (origin
- (method url-fetch)
- (uri (bioconductor-uri "beachmat" version))
- (sha256
- (base32
- "1vl6jbf9ia78cm4ikdb8vz04jv4b46zhvg5i006c63a9pzw7zhxi"))))
- (build-system r-build-system)
- (propagated-inputs
- `(("r-biocgenerics" ,r-biocgenerics)
- ("r-delayedarray" ,r-delayedarray)
- ("r-matrix" ,r-matrix)))
- (native-inputs
- `(("r-knitr" ,r-knitr)))
- (home-page "https://bioconductor.org/packages/beachmat")
- (synopsis "Compiling Bioconductor to handle each matrix type")
- (description "This package provides a consistent C++ class interface for a
-variety of commonly used matrix types, including sparse and HDF5-backed
-matrices.")
- (license license:gpl3)))
-
-(define-public r-singlecellexperiment
- (package
- (name "r-singlecellexperiment")
- (version "1.10.1")
- (source
- (origin
- (method url-fetch)
- (uri (bioconductor-uri "SingleCellExperiment" version))
- (sha256
- (base32
- "092wvk11n7pa234vlwhxm3gdi4k3sbnz1splhxalbdhz3jf02zfp"))))
- (properties
- `((upstream-name . "SingleCellExperiment")))
- (build-system r-build-system)
- (propagated-inputs
- `(("r-biocgenerics" ,r-biocgenerics)
- ("r-s4vectors" ,r-s4vectors)
- ("r-summarizedexperiment" ,r-summarizedexperiment)))
- (native-inputs
- `(("r-knitr" ,r-knitr)))
- (home-page "https://bioconductor.org/packages/SingleCellExperiment")
- (synopsis "S4 classes for single cell data")
- (description "This package defines an S4 class for storing data from
-single-cell experiments. This includes specialized methods to store and
-retrieve spike-in information, dimensionality reduction coordinates and size
-factors for each cell, along with the usual metadata for genes and
-libraries.")
- (license license:gpl3)))
-
-(define-public r-scater
- (package
- (name "r-scater")
- (version "1.16.2")
- (source (origin
- (method url-fetch)
- (uri (bioconductor-uri "scater" version))
- (sha256
- (base32
- "1pa5wvgjb30rw1vsjwbnn07ss3sc5n8ck5d7khdby4r2s9177s33"))))
- (build-system r-build-system)
- (propagated-inputs
- `(("r-beachmat" ,r-beachmat)
- ("r-biocgenerics" ,r-biocgenerics)
- ("r-biocneighbors" ,r-biocneighbors)
- ("r-biocparallel" ,r-biocparallel)
- ("r-biocsingular" ,r-biocsingular)
- ("r-delayedarray" ,r-delayedarray)
- ("r-delayedmatrixstats" ,r-delayedmatrixstats)
- ("r-ggbeeswarm" ,r-ggbeeswarm)
- ("r-ggplot2" ,r-ggplot2)
- ("r-matrix" ,r-matrix)
- ("r-rcpp" ,r-rcpp)
- ("r-rlang" ,r-rlang)
- ("r-s4vectors" ,r-s4vectors)
- ("r-singlecellexperiment" ,r-singlecellexperiment)
- ("r-summarizedexperiment" ,r-summarizedexperiment)
- ("r-viridis" ,r-viridis)))
- (native-inputs
- `(("r-knitr" ,r-knitr)))
- (home-page "https://github.com/davismcc/scater")
- (synopsis "Single-cell analysis toolkit for gene expression data in R")
- (description "This package provides a collection of tools for doing
-various analyses of single-cell RNA-seq gene expression data, with a focus on
-quality control.")
- (license license:gpl2+)))
-
-(define-public r-scran
- (package
- (name "r-scran")
- (version "1.16.0")
- (source
- (origin
- (method url-fetch)
- (uri (bioconductor-uri "scran" version))
- (sha256
- (base32
- "1gm4ys4aq8h1pn45k1rxk384wjyf55izivw8kgxbrflj6j4xvvsv"))))
- (build-system r-build-system)
- (propagated-inputs
- `(("r-beachmat" ,r-beachmat)
- ("r-bh" ,r-bh)
- ("r-biocgenerics" ,r-biocgenerics)
- ("r-biocneighbors" ,r-biocneighbors)
- ("r-biocparallel" ,r-biocparallel)
- ("r-biocsingular" ,r-biocsingular)
- ("r-delayedarray" ,r-delayedarray)
- ("r-delayedmatrixstats" ,r-delayedmatrixstats)
- ("r-dqrng" ,r-dqrng)
- ("r-edger" ,r-edger)
- ("r-igraph" ,r-igraph)
- ("r-iranges" ,r-iranges)
- ("r-limma" ,r-limma)
- ("r-matrix" ,r-matrix)
- ("r-rcpp" ,r-rcpp)
- ("r-s4vectors" ,r-s4vectors)
- ("r-scater" ,r-scater)
- ("r-singlecellexperiment" ,r-singlecellexperiment)
- ("r-statmod" ,r-statmod)
- ("r-summarizedexperiment" ,r-summarizedexperiment)))
- (native-inputs
- `(("r-knitr" ,r-knitr)))
- (home-page "https://bioconductor.org/packages/scran")
- (synopsis "Methods for single-cell RNA-Seq data analysis")
- (description "This package implements a variety of low-level analyses of
-single-cell RNA-seq data. Methods are provided for normalization of
-cell-specific biases, assignment of cell cycle phase, and detection of highly
-variable and significantly correlated genes.")
- (license license:gpl3)))
-
-(define-public r-delayedmatrixstats
- (package
- (name "r-delayedmatrixstats")
- (version "1.10.1")
- (source
- (origin
- (method url-fetch)
- (uri (bioconductor-uri "DelayedMatrixStats" version))
- (sha256
- (base32
- "046sam0rz42ph0m7jz7v3bck7d3h2mp45gzywh5dvc1qkjq6fdxx"))))
- (properties
- `((upstream-name . "DelayedMatrixStats")))
- (build-system r-build-system)
- (propagated-inputs
- `(("r-biocparallel" ,r-biocparallel)
- ("r-delayedarray" ,r-delayedarray)
- ("r-hdf5array" ,r-hdf5array)
- ("r-iranges" ,r-iranges)
- ("r-matrix" ,r-matrix)
- ("r-matrixstats" ,r-matrixstats)
- ("r-s4vectors" ,r-s4vectors)))
- (native-inputs
- `(("r-knitr" ,r-knitr)))
- (home-page "https://github.com/PeteHaitch/DelayedMatrixStats")
- (synopsis "Functions that apply to rows and columns of DelayedMatrix objects")
- (description
- "This package provides a port of the @code{matrixStats} API for use with
-@code{DelayedMatrix} objects from the @code{DelayedArray} package. It
-contains high-performing functions operating on rows and columns of
-@code{DelayedMatrix} objects, e.g. @code{colMedians}, @code{rowMedians},
-@code{colRanks}, @code{rowRanks}, @code{colSds}, and @code{rowSds}. Functions
-are optimized per data type and for subsetted calculations such that both
-memory usage and processing time is minimized.")
- (license license:expat)))
-
(define-public r-dropbead
(let ((commit "d746c6f3b32110428ea56d6a0001ce52a251c247")
(revision "2"))
@@ -11484,7 +11154,6 @@ models. TADbit is complemented by TADkit for visualizing 3D models.")
("tcsh" ,tcsh)
("perl" ,perl)
("libpng" ,libpng)
- ("mariadb" ,mariadb "lib")
("mariadb-dev" ,mariadb "dev")
("openssl" ,openssl-1.0)))
(home-page "https://genome.cse.ucsc.edu/index.html")
@@ -15881,7 +15550,7 @@ than is possible with plain-text methods alone.")
(propagated-inputs
`(("libxml2" ,libxml2)))
(native-inputs
- `(("check" ,check)
+ `(("check" ,check-0.14)
("swig" ,swig)))
(home-page "http://sbml.org/Software/libSBML")
(synopsis "Process SBML files and data streams")
diff --git a/gnu/packages/boost.scm b/gnu/packages/boost.scm
index ddbb95b049..709b10fba0 100644
--- a/gnu/packages/boost.scm
+++ b/gnu/packages/boost.scm
@@ -3,7 +3,7 @@
;;; Copyright © 2014, 2015, 2018 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2015 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2016 Eric Bavier <bavier@member.fsf.org>
-;;; Copyright © 2015, 2019 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2015, 2019, 2020 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2017 Thomas Danckaert <post@thomasdanckaert.be>
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018 Arun Isaac <arunisaac@systemreboot.net>
@@ -41,6 +41,7 @@
#:use-module (guix build-system trivial)
#:use-module (gnu packages)
#:use-module (gnu packages compression)
+ #:use-module (gnu packages hurd)
#:use-module (gnu packages icu4c)
#:use-module (gnu packages perl)
#:use-module (gnu packages python)
@@ -132,6 +133,15 @@
,(%current-target-system)))))
'())
+ ;; Change an #ifdef __MACH__ that really targets macOS.
+ ;; TODO: Inline this on the next rebuild cycle.
+ ,@(if (hurd-target?)
+ '((substitute* "boost/test/utils/timer.hpp"
+ (("defined\\(__MACH__\\)")
+ "(defined __MACH__ && !defined __GNU__)"))
+ #t)
+ '())
+
(invoke "./bootstrap.sh"
(string-append "--prefix=" out)
;; Auto-detection looks for ICU only in traditional
diff --git a/gnu/packages/bootloaders.scm b/gnu/packages/bootloaders.scm
index 769238203c..d1de5cea4e 100644
--- a/gnu/packages/bootloaders.scm
+++ b/gnu/packages/bootloaders.scm
@@ -465,7 +465,6 @@ tree binary files. These are board description files used by Linux and BSD.")
("python" ,python)
("python-coverage" ,python-coverage)
("python-pytest" ,python-pytest)
- ("sdl2" ,sdl2)
("swig" ,swig)))
(build-system gnu-build-system)
(home-page "https://www.denx.de/wiki/U-Boot/")
@@ -478,6 +477,9 @@ also initializes the boards (RAM etc).")
(package
(inherit u-boot)
(name "u-boot-tools")
+ (native-inputs
+ `(("sdl2" ,sdl2)
+ ,@(package-native-inputs u-boot)))
(arguments
`(#:make-flags '("HOSTCC=gcc")
#:test-target "tests"
diff --git a/gnu/packages/build-tools.scm b/gnu/packages/build-tools.scm
index 319688a20d..6bff33eba5 100644
--- a/gnu/packages/build-tools.scm
+++ b/gnu/packages/build-tools.scm
@@ -111,8 +111,8 @@ generate such a compilation database.")
(license license:gpl3+)))
(define-public gn
- (let ((commit "eb997b5ab9c3f1ba6a2c52072785884864a84eae")
- (revision "1794")) ;as returned by `git describe`, used below
+ (let ((commit "e327ffdc503815916db2543ec000226a8df45163")
+ (revision "1819")) ;as returned by `git describe`, used below
(package
(name "gn")
(version (git-version "0.0" revision commit))
@@ -122,7 +122,7 @@ generate such a compilation database.")
(uri (git-reference (url home-page) (commit commit)))
(sha256
(base32
- "1vfkcy34wqhg7wsk7jdzhgnnzwim10wgbxv5bnavxzjcs871i2xa"))
+ "0kvlfj3www84zp1vmxh76x8fdjm9hyk8lkh2vdsidafpmm75fphr"))
(file-name (git-file-name name version))))
(build-system gnu-build-system)
(arguments
diff --git a/gnu/packages/c.scm b/gnu/packages/c.scm
index 25bc78e6bf..493d99387c 100644
--- a/gnu/packages/c.scm
+++ b/gnu/packages/c.scm
@@ -8,7 +8,7 @@
;;; Copyright © 2019 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2020 Marius Bakke <marius@gnu.org>
-;;; Copyright @ 2020 Katherine Cox-Buday <cox.katherine.e@gmail.com>
+;;; Copyright © 2020 Katherine Cox-Buday <cox.katherine.e@gmail.com>
;;; Copyright © 2020 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;;
;;; This file is part of GNU Guix.
@@ -40,6 +40,7 @@
#:use-module (gnu packages perl)
#:use-module (gnu packages texinfo)
#:use-module (gnu packages guile)
+ #:use-module (gnu packages lua)
#:use-module (gnu packages multiprecision)
#:use-module (gnu packages pcre)
#:use-module (gnu packages python)
@@ -257,6 +258,64 @@ string formatting and autoresizing, option and config file parsing, type
checking casts and more.")
(license license:lgpl2.1+)))
+(define-public libwuya
+ ;; This commit is the one before "wuy_pool.h" was removed from libwuya,
+ ;; which libleak currently requires.
+ (let ((revision "1")
+ (commit "883502041044f4616cfbf75c8f2bb60059f704a9"))
+ (package
+ (name "libwuya")
+ (version (git-version "0.0" revision commit))
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/WuBingzheng/libwuya")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1xrsqbgr13g2v0ag165ryp7xrwzv41xfygzk2a3445ca98c1qpdc"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:tests? #f ;no test suite
+ #:phases (modify-phases %standard-phases
+ (add-after 'unpack 'patch-lua-includes
+ (lambda _
+ (substitute* '("wuy_cflua.h" "wuy_cflua.c")
+ (("<lua5\\.1/") "<"))
+ #t))
+ (add-after 'unpack 'add--fPIC-to-CFLAGS
+ (lambda _
+ (substitute* "Makefile"
+ (("CFLAGS[^\n]*" all)
+ (string-append all " -fPIC")))
+ #t))
+ (add-before 'build 'set-CC
+ (lambda _
+ (setenv "CC" "gcc")
+ #t))
+ (delete 'configure) ;no configure script
+ (replace 'install
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (include-dir (string-append out "/include"))
+ (headers (find-files "." "\\.h$")))
+ (for-each (lambda (h)
+ (install-file h include-dir))
+ headers)
+ (install-file "libwuya.a" (string-append out "/lib"))
+ #t))))))
+ (inputs `(("lua" ,lua)))
+ (home-page "https://github.com/WuBingzheng/libwuya/")
+ (synopsis "C library implementing various data structures")
+ (description "The @code{libwuya} library implements data structures such
+as dictionaries, skip lists, and memory pools.")
+ ;; There is no clear information as to what license this is distributed
+ ;; under, but it is included (bundled) with libleak from the same author
+ ;; under the GNU GPL v2 or later license, so use this here until it is
+ ;; clarified (see: https://github.com/WuBingzheng/libwuya/issues/2).
+ (license license:gpl2+))))
+
(define-public packcc
(package
(name "packcc")
diff --git a/gnu/packages/calendar.scm b/gnu/packages/calendar.scm
index 9987ae1bf8..e4fb7abcd6 100644
--- a/gnu/packages/calendar.scm
+++ b/gnu/packages/calendar.scm
@@ -9,6 +9,7 @@
;;; Copyright © 2020 Marius Bakke <mbakke@fastmail.com
;;; Copyright © 2020 Brendan Tildesley <mail@brendan.scot>
;;; Copyright © 2020 Tanguy Le Carrour <tanguy@bioneland.org>
+;;; Copyright © 2020 Peng Mei Yu <pengmeiyu@riseup.net>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -37,6 +38,7 @@
#:use-module (gnu packages base)
#:use-module (gnu packages check)
#:use-module (gnu packages dav)
+ #:use-module (gnu packages docbook)
#:use-module (gnu packages freedesktop)
#:use-module (gnu packages glib)
#:use-module (gnu packages gnome)
@@ -124,12 +126,20 @@ the <tz.h> library for handling time zones and leap seconds.")
(build-system cmake-build-system)
(arguments
'(#:tests? #f ; test suite appears broken
+ #:parallel-build? #f ;may cause GIR generation failure
#:configure-flags '("-DSHARED_ONLY=true"
;; required by evolution-data-server
"-DGOBJECT_INTROSPECTION=true"
"-DICAL_GLIB_VAPI=true")
#:phases
(modify-phases %standard-phases
+ (add-after 'unpack 'patch-docbook-reference
+ (lambda* (#:key inputs #:allow-other-keys)
+ (substitute* "doc/reference/libical-glib/libical-glib-docs.sgml.in"
+ (("http://www.oasis-open.org/docbook/xml/4.3/")
+ (string-append (assoc-ref inputs "docbook-xml")
+ "/xml/dtd/docbook/")))
+ #t))
(add-before 'configure 'patch-paths
(lambda* (#:key inputs #:allow-other-keys)
;; TODO: libical 3.1.0 supports using TZDIR instead of a hard-coded
@@ -144,7 +154,8 @@ the <tz.h> library for handling time zones and leap seconds.")
(("\\\"/usr/share/lib/zoneinfo\\\"") "")))
#t)))))
(native-inputs
- `(("gobject-introspection" ,gobject-introspection)
+ `(("docbook-xml" ,docbook-xml-4.3)
+ ("gobject-introspection" ,gobject-introspection)
("gtk-doc" ,gtk-doc)
("perl" ,perl)
("pkg-config" ,pkg-config)
@@ -339,3 +350,45 @@ DebConf, FrOSCon, Grazer LinuxTage, and the CCC congresses.
ConfClerk is targeted at mobile devices but works on any system running Qt.")
(license (list license:gpl2+
license:lgpl3)))) ; or cc-by3.0 for src/icons/*
+
+(define-public ccal
+ (package
+ (name "ccal")
+ (version "2.5.3")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "http://ccal.chinesebay.com/ccal/ccal-"
+ version ".tar.gz"))
+ (sha256
+ (base32
+ "15nza1d1lvk3dp0wcl53wsd32yhbgyzznha092mh5kh5z74vsk1x"))))
+ (build-system gnu-build-system)
+ (arguments
+ '(#:phases
+ (modify-phases %standard-phases
+ (replace 'configure
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let ((out (assoc-ref outputs "out")))
+ (substitute* "Makefile"
+ (("/usr/local/bin")
+ (string-append out "/bin"))
+ (("/usr/local/man")
+ (string-append out "/share/man"))))
+ #t))
+ (add-after 'install 'install-manuals
+ (lambda _
+ (invoke "make" "install-man"))))
+ ;; no tests
+ #:tests? #f))
+ (home-page "http://ccal.chinesebay.com/ccal/ccal.htm")
+ (synopsis "Command line program for Chinese calendar")
+ (description "@command{ccal} is a command line program which writes a
+Gregorian calendar together with Chinese calendar to standard output. Its
+usage is similar to the @command{cal} program. In addition to console output,
+it can also generate Encapsulated Postscript and HTML table outputs for use in
+do-it-yourself calendars and web pages. It supports both simplified and
+traditional Chinese characters.")
+ ;; Both licenses are in use in various source files. Note that
+ ;; COPYING.LESSER specifies LGPL 3.0, but all source files say
+ ;; 'Lesser GPL version 2 or later'.
+ (license (list license:gpl2+ license:lgpl2.1+))))
diff --git a/gnu/packages/ccache.scm b/gnu/packages/ccache.scm
index 5a1128f44c..c5b9790f27 100644
--- a/gnu/packages/ccache.scm
+++ b/gnu/packages/ccache.scm
@@ -30,14 +30,14 @@
(define-public ccache
(package
(name "ccache")
- (version "3.7.11")
+ (version "3.7.12")
(source
(origin
(method url-fetch)
(uri (string-append "https://github.com/ccache/ccache/releases/download/v"
version "/ccache-" version ".tar.xz"))
(sha256
- (base32 "0s1g0ylrayzax68xlqnxx46f5bhvr2pcm1yzswmj0kcs14404icd"))))
+ (base32 "005liq8csgxdn7m9hj2ah07hishww855p8sc96y1hrnwc21lwbx0"))))
(build-system gnu-build-system)
(native-inputs `(("perl" ,perl) ; for test/run
("which" ,(@ (gnu packages base) which))))
diff --git a/gnu/packages/cdrom.scm b/gnu/packages/cdrom.scm
index 6dee19fb29..766f62fc9f 100644
--- a/gnu/packages/cdrom.scm
+++ b/gnu/packages/cdrom.scm
@@ -737,16 +737,15 @@ information is written to standard error.")
(define-public asunder
(package
(name "asunder")
- (version "2.9.6")
- (source (origin
- (method url-fetch)
- (uri
- (string-append "http://www.littlesvr.ca/asunder/releases/asunder-"
- version
- ".tar.bz2"))
- (sha256
- (base32
- "1ycnd82lh7qy1pcbngd4b41s16j9hnm2kyfrncg4cwr3bfk7yg7a"))))
+ (version "2.9.7")
+ (source
+ (origin
+ (method url-fetch)
+ (uri
+ (string-append "http://www.littlesvr.ca/asunder/releases/asunder-"
+ version ".tar.bz2"))
+ (sha256
+ (base32 "1x3l308ss0iqhz90qyjb94gyd8b4piyrm2nzjmg5kf049k9prjf1"))))
(build-system glib-or-gtk-build-system)
(arguments
'(#:out-of-source? #f
diff --git a/gnu/packages/certs.scm b/gnu/packages/certs.scm
index 7f4dca5f56..0cb20467ab 100644
--- a/gnu/packages/certs.scm
+++ b/gnu/packages/certs.scm
@@ -76,7 +76,7 @@
(define-public nss-certs
(package
(name "nss-certs")
- (version "3.52.1")
+ (version "3.57")
(source (origin
(method url-fetch)
(uri (let ((version-with-underscores
@@ -87,7 +87,7 @@
"nss-" version ".tar.gz")))
(sha256
(base32
- "0y4jb9095f7bbgw7d7kvzm4c3g4p5i6y68fwhb8wlkpb7b1imj5w"))))
+ "10n3pncg6k81ikjz12la147rppwqn57bkrdl9gb820w6pq0nra2m"))))
(build-system gnu-build-system)
(outputs '("out"))
(native-inputs
diff --git a/gnu/packages/check.scm b/gnu/packages/check.scm
index a7db915597..3e93e3c12a 100644
--- a/gnu/packages/check.scm
+++ b/gnu/packages/check.scm
@@ -135,7 +135,7 @@ like Jasmine or Mocha.")
(define-public check
(package
(name "check")
- (version "0.14.0")
+ (version "0.15.2")
(source
(origin
(method url-fetch)
@@ -143,7 +143,7 @@ like Jasmine or Mocha.")
version "/check-" version ".tar.gz"))
(sha256
(base32
- "02zkfiyklckmivrfvdsrlzvzphkdsgjrz3igncw05dv5pshhq3xx"))))
+ "02m25y9m46pb6n46s51av62kpd936lkfv3b13kfpckgvmh5lxpm8"))))
(build-system gnu-build-system)
(home-page "https://libcheck.github.io/check/")
(synopsis "Unit test framework for C")
@@ -156,7 +156,19 @@ faults or other signals. The output from unit tests can be used within
source code editors and IDEs.")
(license license:lgpl2.1+)))
-;; Some packages require this older version. Removed once no longer needed.
+;; Some packages require older versions. Removed once no longer needed.
+(define-public check-0.14
+ (package
+ (inherit check)
+ (version "0.14.0")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "https://github.com/libcheck/check/releases"
+ "/download/" version "/check-" version ".tar.gz"))
+ (sha256
+ (base32
+ "02zkfiyklckmivrfvdsrlzvzphkdsgjrz3igncw05dv5pshhq3xx"))))))
+
(define-public check-0.12
(package
(inherit check)
@@ -337,7 +349,7 @@ a multi-paradigm automated test framework for C++ and Objective-C.")
(define-public catch-framework2
(package
(name "catch2")
- (version "2.13.0")
+ (version "2.13.2")
(home-page "https://github.com/catchorg/Catch2")
(source (origin
(method git-fetch)
@@ -347,7 +359,7 @@ a multi-paradigm automated test framework for C++ and Objective-C.")
(file-name (git-file-name name version))
(sha256
(base32
- "0i4w0c9280a5fyi00mvvf13wlnfzyifr487n1iyr30zvvj5s5f1h"))))
+ "100r0kmra8jmra2hv92lzvwcmphpaiccwvq3lpdsa5b7hailhach"))))
(build-system cmake-build-system)
(inputs
`(("python" ,python-wrapper)))
@@ -924,13 +936,13 @@ and many external plugins.")
(package
(inherit (strip-python2-variant python-pytest))
(name "python2-pytest")
- (version "4.6.9")
+ (version "4.6.11")
(source (origin
(method url-fetch)
(uri (pypi-uri "pytest" version))
(sha256
(base32
- "0fgkmpc31nzy97fxfrkqbzycigdwxwwmninx3qhkzp81migggs0r"))))
+ "0ls3pqr86xgif6bphsb6wrww9r2vc7p7a2naq8zcq8115wwq5yjh"))))
(build-system python-build-system)
(arguments
`(#:python ,python-2
@@ -1562,14 +1574,14 @@ have failed since the last commit or what tests are currently failing.")))
(define-public python-coverage
(package
(name "python-coverage")
- (version "5.0.3")
+ (version "5.2.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "coverage" version))
(sha256
(base32
- "1vrg8panqw79pswg52ygbrff3wdnxarrd9qz6c64ah0c4h2cmbvp"))))
+ "16z8i18msgs8k74n73dj9x49wzkl0vk4vq8k5pl1bsj70y7b4k53"))))
(build-system python-build-system)
(arguments
;; FIXME: 95 tests failed, 539 passed, 6 skipped, 2 errors.
@@ -2681,7 +2693,7 @@ provides a simple way to achieve this.")
(define-public umockdev
(package
(name "umockdev")
- (version "0.14.2")
+ (version "0.14.3")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/martinpitt/umockdev/"
@@ -2689,7 +2701,7 @@ provides a simple way to achieve this.")
"umockdev-" version ".tar.xz"))
(sha256
(base32
- "1nh6xsssmssmk0lxp9c9dmq3wzlpbpkg77nmmd09csbpybibgxfp"))))
+ "15smnxwplk48nas2c8ji6a5fqcsh770f1yl5nc2j5iprjspbm4mg"))))
(build-system gnu-build-system)
(arguments
`(#:phases
diff --git a/gnu/packages/chicken.scm b/gnu/packages/chicken.scm
index 7b86a58012..729cf25a6c 100644
--- a/gnu/packages/chicken.scm
+++ b/gnu/packages/chicken.scm
@@ -59,7 +59,7 @@
;; Parallel builds are not supported, as noted in README.
#:parallel-build? #f))
- (propagated-inputs `(("gcc-toolchain", gcc-toolchain)))
+ (propagated-inputs `(("gcc-toolchain" ,gcc-toolchain)))
(home-page "https://www.call-cc.org/")
(synopsis "R5RS Scheme implementation that compiles native code via C")
(description
diff --git a/gnu/packages/chromium.scm b/gnu/packages/chromium.scm
index cc75c3201a..7bc69c7386 100644
--- a/gnu/packages/chromium.scm
+++ b/gnu/packages/chromium.scm
@@ -83,6 +83,9 @@
"base/third_party/symbolize" ;BSD-3
"base/third_party/xdg_mime" ;LGPL2.0+ or Academic 2.0
"base/third_party/xdg_user_dirs" ;Expat
+ ;; XXX: Chromium requires a newer C++ standard library. Remove this when
+ ;; the default GCC is 9 or later.
+ "buildtools/third_party/libc++" ;ASL2.0, with LLVM exceptions
"chrome/third_party/mozilla_security_manager" ;MPL-1.1/GPL2+/LGPL2.1+
"courgette/third_party/bsdiff" ;BSD-2, BSD protection license
"courgette/third_party/divsufsort" ;Expat
@@ -111,7 +114,6 @@
"third_party/boringssl/src/third_party/fiat" ;Expat
"third_party/breakpad" ;BSD-3
"third_party/brotli" ;Expat
- "third_party/cacheinvalidation" ;ASL2.0
"third_party/catapult" ;BSD-3
"third_party/catapult/common/py_vulcanize/third_party/rcssmin" ;ASL2.0
"third_party/catapult/common/py_vulcanize/third_party/rjsmin" ;ASL2.0
@@ -139,9 +141,15 @@
"third_party/depot_tools/owners.py" ;BSD-3
"third_party/devtools-frontend" ;BSD-3
"third_party/devtools-frontend/src/front_end/third_party/acorn" ;Expat
+ "third_party/devtools-frontend/src/front_end/third_party/chromium" ;BSD-3
"third_party/devtools-frontend/src/front_end/third_party/codemirror" ;Expat
"third_party/devtools-frontend/src/front_end/third_party/fabricjs" ;Expat
+ "third_party/devtools-frontend/src/front_end/third_party/i18n" ;ASL2.0
+ "third_party/devtools-frontend/src/front_end/third_party/intl-messageformat" ;BSD-3
"third_party/devtools-frontend/src/front_end/third_party/lighthouse" ;ASL2.0
+ "third_party/devtools-frontend/src/front_end/third_party/lit-html" ;BSD-3
+ "third_party/devtools-frontend/src/front_end/third_party/lodash-isequal" ;Expat
+ "third_party/devtools-frontend/src/front_end/third_party/marked" ;Expat, BSD-3
"third_party/devtools-frontend/src/front_end/third_party/wasmparser" ;ASL2.0
"third_party/devtools-frontend/src/third_party/axe-core" ;MPL2.0
"third_party/devtools-frontend/src/third_party/pyjson5" ;ASL2.0
@@ -159,6 +167,8 @@
"third_party/iccjpeg" ;IJG
"third_party/inspector_protocol" ;BSD-3
"third_party/jinja2" ;BSD-3
+ ;; XXX: Unbundle this when switching back to libstdc++.
+ "third_party/jsoncpp" ;Public Domain or Expat
"third_party/jstemplate" ;ASL2.0
"third_party/khronos" ;Expat, SGI
"third_party/leveldatabase" ;BSD-3
@@ -175,6 +185,11 @@
"third_party/libsrtp" ;BSD-3
"third_party/libsync" ;ASL2.0
"third_party/libudev" ;LGPL2.1+
+
+ ;; FIXME: build/linux/unbundle/libvpx.gn does not work for all users.
+ "third_party/libvpx" ;BSD-3
+ "third_party/libvpx/source/libvpx/third_party/x86inc" ;Expat
+
"third_party/libwebm" ;BSD-3
"third_party/libxml/chromium" ;BSD-3
"third_party/libyuv" ;BSD-3
@@ -186,6 +201,7 @@
"third_party/metrics_proto" ;BSD-3
"third_party/modp_b64" ;BSD-3
"third_party/nasm" ;BSD-2
+ "third_party/nearby" ;ASL2.0
"third_party/node" ;Expat
"third_party/node/node_modules/polymer-bundler/lib/third_party/UglifyJS2" ;BSD-2
"third_party/one_euro_filter" ;BSD-3
@@ -208,9 +224,13 @@
"third_party/protobuf/third_party/six" ;Expat
"third_party/pyjson5" ;ASL2.0
"third_party/qcms" ;Expat
+ ;; XXX: System re2 cannot be used when Chromium uses libc++ because the re2
+ ;; ABI relies on libstdc++ internals. See build/linux/unbundle/re2.gn.
+ "third_party/re2" ;BSD-3
"third_party/rnnoise" ;BSD-3
"third_party/s2cellid" ;ASL2.0
"third_party/schema_org" ;CC-BY-SA3.0
+ "third_party/securemessage" ;ASL2.0
"third_party/skia" ;BSD-3
"third_party/skia/include/third_party/skcms" ;BSD-3
"third_party/skia/third_party/skcms" ;BSD-3
@@ -222,12 +242,13 @@
"third_party/sqlite" ;Public domain
"third_party/swiftshader" ;ASL2.0
"third_party/swiftshader/third_party/astc-encoder" ;ASL2.0
- "third_party/swiftshader/third_party/llvm-7.0" ;NCSA
+ "third_party/swiftshader/third_party/llvm-10.0" ;ASL2.0, with LLVM exception
"third_party/swiftshader/third_party/llvm-subzero" ;NCSA
"third_party/swiftshader/third_party/marl" ;ASL2.0
"third_party/swiftshader/third_party/subzero" ;NCSA
"third_party/swiftshader/third_party/SPIRV-Headers" ;X11-style
"third_party/tcmalloc/chromium" ;BSD-3
+ "third_party/ukey2" ;ASL2.0
"third_party/usb_ids" ;BSD-3
"third_party/usrsctp" ;BSD-2
"third_party/vulkan_memory_allocator" ;Expat
@@ -246,8 +267,10 @@
"third_party/widevine/cdm/widevine_cdm_version.h" ;BSD-3
"third_party/widevine/cdm/widevine_cdm_common.h" ;BSD-3
"third_party/woff2" ;ASL2.0
+ "third_party/xcbproto" ;X11
"third_party/xdg-utils" ;Expat
"third_party/zlib/google" ;BSD-3
+ "third_party/zxcvbn-cpp" ;Expat
"url/third_party/mozilla" ;BSD-3, MPL1.1/GPL2+/LGPL2.1+
"v8/src/third_party/siphash" ;Public domain
"v8/src/third_party/utf8-decoder" ;Expat
@@ -258,27 +281,9 @@
(define %blacklisted-files
;; 'third_party/blink/perf_tests/resources/svg/HarveyRayner.svg' carries a
;; nonfree license according to LICENSES in the same directory. As we don't
- ;; run the Blink performance tests, just remove everything to save ~24MiB.
+ ;; run the Blink performance tests, just remove everything to save ~70MiB.
'("third_party/blink/perf_tests"))
-(define (gentoo-patch name revision hash)
- (origin
- (method url-fetch)
- (uri (string-append "https://gitweb.gentoo.org/repo/gentoo.git/plain"
- "/www-client/chromium/files/" name "?id=" revision))
- (file-name (string-append "ungoogled-" name))
- (sha256 (base32 hash))))
-
-;; This repository contains libstdc++ compatibility patches for Chromium.
-(define (chromium-gcc-patchset commit hash)
- (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/stha09/chromium-patches")
- (commit commit)))
- (file-name (git-file-name "chromium-gcc-patches" commit))
- (sha256 (base32 hash))))
-
(define (debian-patch name revision hash)
(origin
(method url-fetch)
@@ -289,38 +294,34 @@
(string-append "ungoogled-chromium-" category "-" name))))
(sha256 (base32 hash))))
-(define %ungoogled-revision "57244cdfc21dc05910862152d91cc528103c988a")
-(define %debian-revision "debian/83.0.4103.116-3")
-(define %gentoo-revision "f3f649046d31ebdbc8c4a302b2384504eff78027")
-
-(define %gentoo-patches
- ;; This patch is necessary for compatibility with FFmpeg 4.3.
- (list (gentoo-patch "chromium-84-mediaalloc.patch" %gentoo-revision
- "0snxdc4nb8ykzncz62vpsl8hgxpy24m17mycx67i2gckmrpslzzv")))
+(define (arch-patch name revision hash)
+ (origin
+ (method url-fetch)
+ (uri (string-append "https://raw.githubusercontent.com/archlinux"
+ "/svntogit-packages/" revision "/trunk/" name))
+ (sha256 (base32 hash))))
-(define %chromium-gcc-patches
- (chromium-gcc-patchset
- "chromium-84-patchset-3"
- "0l05gx3pn703n47anjwsl5sjcqw8kaxmivf7llax97kj3k6d127v"))
+(define %chromium-version "86.0.4240.75")
+(define %ungoogled-revision "c34a56db4c121238fface560e21531b6199ce5dd")
+(define %debian-revision "debian/84.0.4147.105-1")
+(define %arch-revision "2cbe439471932d30ff2c8ded6b3dfd51b312bbc9")
(define %debian-patches
(list (debian-patch "system/zlib.patch" %debian-revision
- "0bp2vh1cgmwjrn1zkpphkd3bs662s23xwdhy3abm9cfjvwrj117n")
- (debian-patch "system/jsoncpp.patch" %debian-revision
- "0d95brl4a5y5w142yd0rvf59z513h7chsz0vnm034d6lqf22ahwf")
+ "09vqgs37w9ycc7par14wa7rnvmg9bm0z9pqg6fyl3iqvpghyjyr4")
(debian-patch "system/openjpeg.patch" %debian-revision
"0zd6v5njx1pc7i0y6mslxvpx5j4cq01mmyx55qcqx8qzkm0gm48j")))
(define %arch-patches
- (list (origin
- (method url-fetch)
- (uri "https://git.archlinux.org/svntogit/packages.git/plain/trunk/\
-chromium-fix-vaapi-on-intel.patch?h=packages/chromium\
-&id=93b5b90621b4827084288197c6e0e09b987b372a")
- (file-name "ungoogled-chromium-fix-vaapi-on-intel.patch")
- (sha256
- (base32
- "16jbjjf4d9jp52rdrrxx5vm69nx3w0qrijgjpwapnmcif13z55g4")))))
+ (list (arch-patch "check-for-enable-accelerated-video-decode-on-Linux.patch"
+ %arch-revision
+ "12qj23dcp2g2ivyfyj13m4fzf68nllb9djwcxf1h195gn8wkml03")
+ (arch-patch "only-fall-back-to-the-i965-driver-if-we-re-on-iHD.patch"
+ %arch-revision
+ "0073qjp0dp9kj2ix2j6cxrima01rpdpkcjj9crxlb9b43b4cc53m")
+ (arch-patch "fix-invalid-end-iterator-usage-in-CookieMonster.patch"
+ %arch-revision
+ "1p1wy3dfncw0hhz77a1km0xjhix69ksgbpa569qz86nv76jbgn39")))
(define %ungoogled-origin
(origin
@@ -331,7 +332,7 @@ chromium-fix-vaapi-on-intel.patch?h=packages/chromium\
(string-take %ungoogled-revision 7)))
(sha256
(base32
- "15a1xpmabdxr1mn61m0jm9a5l987rxdji8b1b6zy39mr636vcwfi"))))
+ "18p9a7qffmy8m03nqva7maalgil13lj2mn0s56v3crbs4wk4lalj"))))
;; This is a source 'snippet' that does the following:
;; *) Applies various patches for unbundling purposes and libstdc++ compatibility.
@@ -354,20 +355,18 @@ chromium-fix-vaapi-on-intel.patch?h=packages/chromium\
(for-each (lambda (patch)
(invoke "patch" "-p1" "--force" "--input"
patch "--no-backup-if-mismatch"))
- (append
- '#+%gentoo-patches '#+%debian-patches '#+%arch-patches
- (find-files #$%chromium-gcc-patches "\\.patch$")
- '#+(list (local-file
- (search-patch
- "ungoogled-chromium-system-nspr.patch")))))
+ (append '#+%debian-patches '#+%arch-patches
+ '#+(list (local-file
+ (search-patch
+ "ungoogled-chromium-system-nspr.patch")))))
(with-directory-excursion #+%ungoogled-origin
(format #t "Ungooglifying...~%")
(force-output)
(invoke "python" "utils/prune_binaries.py" chromium-dir
"pruning.list")
- (invoke "python" "utils/patches.py" "apply"
- chromium-dir "patches")
+ (invoke "python" "utils/patches.py" "apply" chromium-dir
+ "patches")
(invoke "python" "utils/domain_substitution.py" "apply" "-r"
"domain_regex.list" "-f" "domain_substitution.list"
"-c" "/tmp/domainscache.tar.gz" chromium-dir))
@@ -396,8 +395,8 @@ chromium-fix-vaapi-on-intel.patch?h=packages/chromium\
(invoke "python" "build/linux/unbundle/replace_gn_files.py"
"--system-libraries" "ffmpeg" "flac" "fontconfig"
"freetype" "harfbuzz-ng" "icu" "libdrm" "libevent"
- "libjpeg" "libpng" "libvpx" "libwebp" "libxml"
- "libxslt" "openh264" "opus" "re2" "snappy" "zlib")
+ "libjpeg" "libpng" "libwebp" "libxml" "libxslt"
+ "openh264" "opus" "snappy" "zlib")
#t))))
(define opus+custom
@@ -412,16 +411,6 @@ chromium-fix-vaapi-on-intel.patch?h=packages/chromium\
`(cons "--enable-custom-modes"
,flags))))))
-;; Chromium still has Python2-only code, so we need this special Python 2
-;; variant of xcb-proto.
-(define xcb-proto/python2
- (package/inherit
- xcb-proto
- (name "python2-xcb-proto")
- (native-inputs
- `(("pkg-config" ,pkg-config)
- ("python" ,python-2)))))
-
;; 'make-ld-wrapper' can only work with an 'ld' executable, so we need
;; this trick to make it wrap 'lld'.
(define (make-lld-wrapper lld)
@@ -450,7 +439,7 @@ chromium-fix-vaapi-on-intel.patch?h=packages/chromium\
(define-public ungoogled-chromium
(package
(name "ungoogled-chromium")
- (version (string-append "84.0.4147.125-0."
+ (version (string-append %chromium-version "-0."
(string-take %ungoogled-revision 7)))
(synopsis "Graphical web browser")
(source (origin
@@ -460,7 +449,7 @@ chromium-fix-vaapi-on-intel.patch?h=packages/chromium\
(car (string-split version #\-)) ".tar.xz"))
(sha256
(base32
- "1xdg9pnnvbzasmra09rl7wdrir61rfcqml46jj7kv39drwk9chwq"))
+ "1ddw4p9zfdzhi5hrd8x14k4w326znljzprnpfi2f917rlpnl2ynx"))
(modules '((guix build utils)))
(snippet (force ungoogled-chromium-snippet))))
(build-system gnu-build-system)
@@ -470,8 +459,6 @@ chromium-fix-vaapi-on-intel.patch?h=packages/chromium\
#:validate-runpath? #f
#:modules ((guix build gnu-build-system)
(guix build utils)
- (ice-9 ftw)
- (ice-9 regex)
(srfi srfi-26))
#:configure-flags
;; See tools/gn/docs/cookbook.md and
@@ -486,7 +473,6 @@ chromium-fix-vaapi-on-intel.patch?h=packages/chromium\
(string-append "max_jobs_per_link="
(number->string (parallel-job-count)))
"clang_use_chrome_plugins=false"
- "use_custom_libcxx=false"
"use_sysroot=false"
"goma_dir=\"\""
"enable_nacl=false"
@@ -505,16 +491,13 @@ chromium-fix-vaapi-on-intel.patch?h=packages/chromium\
"enable_vr=false"
"enable_widevine=false"
;; Disable type-checking for the Web UI to avoid a Java dependency.
- "closure_compile=false"
+ "enable_js_type_check=false"
;; Define a custom toolchain that simply looks up CC, AR and
;; friends from the environment.
"custom_toolchain=\"//build/toolchain/linux/unbundle:default\""
"host_toolchain=\"//build/toolchain/linux/unbundle:default\""
- (string-append "xcbproto_path=\""
- (assoc-ref %build-inputs "xcb-proto") "/share/xcb\"")
-
;; Prefer system libraries.
"use_system_freetype=true"
"use_system_harfbuzz=true"
@@ -547,16 +530,13 @@ chromium-fix-vaapi-on-intel.patch?h=packages/chromium\
;; WebRTC stuff.
"rtc_use_h264=true"
;; Don't use bundled sources.
- "rtc_build_json=false"
+ "rtc_build_json=true" ;FIXME: libc++ std::string ABI difference
"rtc_build_libevent=false"
"rtc_build_libvpx=false"
"rtc_build_opus=false"
"rtc_build_ssl=false"
"rtc_build_libsrtp=true" ;FIXME: fails to find headers
"rtc_build_usrsctp=true" ;TODO: package this
- (string-append "rtc_jsoncpp_root=\""
- (assoc-ref %build-inputs "jsoncpp")
- "/include/jsoncpp/json\"")
(string-append "rtc_ssl_root=\""
(assoc-ref %build-inputs "openssl")
"/include/openssl\""))
@@ -564,12 +544,6 @@ chromium-fix-vaapi-on-intel.patch?h=packages/chromium\
(modify-phases %standard-phases
(add-after 'unpack 'patch-stuff
(lambda _
- ;; Fix build with newer re2. Taken from:
- ;; https://chromium-review.googlesource.com/c/chromium/src/+/2145261
- (substitute* "components/autofill/core/browser/address_rewriter.cc"
- (("options\\.set_utf8\\(true\\)")
- "options.set_encoding(RE2::Options::EncodingUTF8)"))
-
(substitute*
'("base/process/launch_posix.cc"
"base/third_party/dynamic_annotations/dynamic_annotations.c"
@@ -615,10 +589,8 @@ chromium-fix-vaapi-on-intel.patch?h=packages/chromium\
(substitute*
"third_party/breakpad/breakpad/src/common/linux/libcurl_wrapper.h"
- (("include \"third_party/curl") "include \"curl"))
-
- (substitute* "third_party/webrtc/rtc_base/strings/json.h"
- (("#include \"third_party/jsoncpp/") "#include \"json/"))
+ (("include \"third_party/curl")
+ "include \"curl"))
(substitute* '("components/viz/common/gpu/vulkan_context_provider.h"
"components/viz/common/resources/resource_format_utils.h"
@@ -628,17 +600,6 @@ chromium-fix-vaapi-on-intel.patch?h=packages/chromium\
(substitute* "third_party/skia/include/gpu/vk/GrVkVulkan.h"
(("include/third_party/vulkan/") ""))
- ;; Building chromedriver embeds some files using the ZIP
- ;; format which doesn't support timestamps before
- ;; 1980. Therefore, advance the timestamps of the files
- ;; which are included so that building chromedriver
- ;; works.
- (let ((circa-1980 (* 10 366 24 60 60)))
- (for-each (lambda (file)
- (utime file circa-1980 circa-1980))
- '("chrome/test/chromedriver/extension/background.js"
- "chrome/test/chromedriver/extension/manifest.json")))
-
#t))
(add-after 'patch-stuff 'add-absolute-references
(lambda* (#:key inputs #:allow-other-keys)
@@ -660,10 +621,23 @@ chromium-fix-vaapi-on-intel.patch?h=packages/chromium\
(add-before 'configure 'prepare-build-environment
(lambda* (#:key inputs #:allow-other-keys)
- ;; Make sure the right build tools are used.
+ ;; Define the GN toolchain.
(setenv "AR" "llvm-ar") (setenv "NM" "llvm-nm")
(setenv "CC" "clang") (setenv "CXX" "clang++")
+ (let ((gcc (assoc-ref inputs "gcc")))
+ ;; Remove the default compiler from CPLUS_INCLUDE_PATH to
+ ;; prevent header conflict with the bundled libcxx.
+ (setenv "CPLUS_INCLUDE_PATH"
+ (string-join
+ (delete (string-append gcc "/include/c++")
+ (string-split (getenv "CPLUS_INCLUDE_PATH")
+ #\:))
+ ":"))
+ (format #t
+ "environment variable `CPLUS_INCLUDE_PATH' changed to ~a~%"
+ (getenv "CPLUS_INCLUDE_PATH")))
+
(setenv "CXXFLAGS"
(string-join
'(;; Do not optimize away null pointer safety checks.
@@ -728,7 +702,10 @@ chromium-fix-vaapi-on-intel.patch?h=packages/chromium\
(lib (string-append out "/lib"))
(man (string-append out "/share/man/man1"))
(applications (string-append out "/share/applications"))
- (install-regexp (make-regexp "\\.(bin|pak|so)$"))
+ (libs '("chrome_100_percent.pak"
+ "chrome_200_percent.pak"
+ "resources.pak"
+ "v8_context_snapshot.bin"))
(locales (string-append lib "/locales"))
(resources (string-append lib "/resources"))
(preferences (assoc-ref inputs "master-preferences"))
@@ -753,9 +730,7 @@ chromium-fix-vaapi-on-intel.patch?h=packages/chromium\
(copy-file preferences (string-append lib "/master_preferences"))
(with-directory-excursion "out/Release"
- (for-each (lambda (file)
- (install-file file lib))
- (scandir "." (cut regexp-exec install-regexp <>)))
+ (for-each (cut install-file <> lib) libs)
(copy-file "chrome" (string-append lib "/chromium"))
(copy-recursively "locales" locales)
@@ -785,7 +760,7 @@ chromium-fix-vaapi-on-intel.patch?h=packages/chromium\
#t))))))
(native-inputs
`(("bison" ,bison)
- ("clang" ,clang-10)
+ ("clang" ,clang-11)
("gn" ,gn)
("gperf" ,gperf)
("ld-wrapper" ,(make-lld-wrapper lld))
@@ -817,7 +792,6 @@ chromium-fix-vaapi-on-intel.patch?h=packages/chromium\
("gtk+" ,gtk+)
("harfbuzz" ,harfbuzz)
("icu4c" ,icu4c-67)
- ("jsoncpp" ,jsoncpp)
("lcms" ,lcms)
("libevent" ,libevent)
("libffi" ,libffi)
@@ -851,13 +825,11 @@ chromium-fix-vaapi-on-intel.patch?h=packages/chromium\
("pango" ,pango)
("pciutils" ,pciutils)
("pulseaudio" ,pulseaudio)
- ("re2" ,re2)
("snappy" ,snappy)
("speech-dispatcher" ,speech-dispatcher)
("udev" ,eudev)
("valgrind" ,valgrind)
- ("vulkan-headers" ,vulkan-headers)
- ("xcb-proto" ,xcb-proto/python2)))
+ ("vulkan-headers" ,vulkan-headers)))
;; Building Chromium takes ... a very long time. On a single core, a busy
;; mid-end x86 system may need more than 24 hours to complete the build.
diff --git a/gnu/packages/ci.scm b/gnu/packages/ci.scm
index 5f7baebe20..517b20f448 100644
--- a/gnu/packages/ci.scm
+++ b/gnu/packages/ci.scm
@@ -39,6 +39,7 @@
#:use-module (gnu packages perl)
#:use-module (gnu packages perl-compression)
#:use-module (gnu packages pkg-config)
+ #:use-module (gnu packages sqlite)
#:use-module (gnu packages tls)
#:use-module (gnu packages texinfo)
#:use-module (gnu packages version-control)
@@ -46,9 +47,29 @@
#:use-module (gnu packages xml)
#:use-module (guix build-system gnu))
+;; Guile-Sqlite3 package adding SQL query logging support.
+;; Remove it when next Guile-Sqlite3 release is out.
+(define-public guile-sqlite3-dev
+ (let ((commit "22ef45d268de7707cbbb943c404f9b0c1668e2e1")
+ (revision "1"))
+ (package
+ (inherit guile-sqlite3)
+ (name "guile-sqlite3")
+ (version (git-version "0.1.2" revision commit))
+ (home-page "https://notabug.org/mothacehe/guile-sqlite3.git")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url home-page)
+ (commit commit)))
+ (sha256
+ (base32
+ "1q90f8zhw9n1c39szd2ba7aj5fi92m09pnlv0z7jbhnnjam5jwcd"))
+ (file-name (string-append name "-" version "-checkout")))))))
+
(define-public cuirass
- (let ((commit "cf11b73db00678b45b70108768138d0fb74d9506")
- (revision "45"))
+ (let ((commit "df2d13621f4b2ace33a460746e704115b7b1541e")
+ (revision "53"))
(package
(name "cuirass")
(version (git-version "0.0.1" revision commit))
@@ -60,7 +81,7 @@
(file-name (git-file-name name version))
(sha256
(base32
- "1f7jqnscy8vjqrpgl4cyynrvbx6zp3slsd82fykap6qvvwwn7xj8"))))
+ "1vgb1wl1rkijm1vv5chqllf4i5w1j7g02xqlaf2xmqjh2phy5dxa"))))
(build-system gnu-build-system)
(arguments
'(#:modules ((guix build utils)
@@ -122,11 +143,11 @@
`("GUILE_LOAD_COMPILED_PATH" ":" prefix (,objs)))
#t))))))
(inputs
- `(("guile" ,@(assoc-ref (package-native-inputs guix) "guile"))
+ `(("guile" ,guile-3.0/libgc-7)
("guile-fibers" ,guile-fibers)
("guile-gcrypt" ,guile-gcrypt)
("guile-json" ,guile-json-4)
- ("guile-sqlite3" ,guile-sqlite3)
+ ("guile-sqlite3" ,guile-sqlite3-dev)
("guile-git" ,guile-git)
("guile-zlib" ,guile-zlib)
;; FIXME: this is propagated by "guile-git", but it needs to be among
diff --git a/gnu/packages/cluster.scm b/gnu/packages/cluster.scm
index 5241ed1296..17ce23da66 100644
--- a/gnu/packages/cluster.scm
+++ b/gnu/packages/cluster.scm
@@ -39,7 +39,7 @@
(define-public drbd-utils
(package
(name "drbd-utils")
- (version "9.13.1")
+ (version "9.15.0")
(source (origin
(method url-fetch)
;; Older releases are moved to /archive. List it first because in
@@ -51,7 +51,7 @@
"/utils/drbd-utils-" version ".tar.gz")))
(sha256
(base32
- "0di55y0vzaw8jhcgz0fakww03h1gpg4a5q1zklxhjw3dwzjvysnk"))
+ "0jh7zdxpbjkq53pmrn0jfn33abi4vs8axp55h5256czwc2gfb6z8"))
(modules '((guix build utils)))
(snippet
'(begin
diff --git a/gnu/packages/code.scm b/gnu/packages/code.scm
index 3eaefc4e89..6d348308ac 100644
--- a/gnu/packages/code.scm
+++ b/gnu/packages/code.scm
@@ -233,7 +233,7 @@ COCOMO model or user-provided parameters.")
(define-public cloc
(package
(name "cloc")
- (version "1.86")
+ (version "1.88")
(source
(origin
(method git-fetch)
@@ -242,7 +242,7 @@ COCOMO model or user-provided parameters.")
(commit version)))
(file-name (git-file-name name version))
(sha256
- (base32 "082gj2b3x11bilz8c572dd60vn6n0fhld5zhi7wk7g1wy9wlgm9w"))))
+ (base32 "1ixgswzbzv63bl50gb2kgaqr0jcicjz6w610hi9fal1i7744zraw"))))
(build-system gnu-build-system)
(inputs
`(("coreutils" ,coreutils)
@@ -470,60 +470,53 @@ stack traces.")
(license license:gpl3+)))
(define-public lcov
- ;; Use a recent commit from upstream since the latest official release
- ;; (1.14) doesn't support GCC 9 (see:
- ;; https://github.com/linux-test-project/lcov/issues/58).
- (let* ((commit "40580cd65909bc8324ae09b36bca2e178652ff3f")
- (revision "0")
- (version (git-version "1.14" revision commit)))
- (package
- (name "lcov")
- (version "1.14")
- (source (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/linux-test-project/lcov")
- (commit commit)))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "0shgmh6fzhnj1qfdl90jgjmlbb1ih1qh879dca8hc58yggy3hqgb"))))
- (build-system gnu-build-system)
- (arguments
- '(#:test-target "test"
- #:make-flags (list (string-append "PREFIX="
- (assoc-ref %outputs "out")))
- #:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'patch-pwd
- ;; Lift the requirement of having a shell in PATH.
- (lambda _
- (substitute* "bin/geninfo"
- (("qw/abs_path/")
- "qw/abs_path getcwd/"))
- (substitute* '("bin/lcov" "bin/geninfo")
- (("`pwd`")
- "getcwd()"))
- #t))
- (delete 'configure) ;no configure script
- (add-after 'install 'wrap
- (lambda* (#:key outputs #:allow-other-keys)
- (let ((out (assoc-ref outputs "out")))
- (wrap-program (string-append out "/bin/geninfo")
- `("PERL5LIB" ":" prefix (,(getenv "PERL5LIB")))))
- #t)))))
- (inputs `(("perl" ,perl)
- ("perl-json" ,perl-json)
- ("perl-perlio-gzip" ,perl-perlio-gzip)))
- (home-page "http://ltp.sourceforge.net/coverage/lcov.php")
- (synopsis "Code coverage tool that enhances GNU gcov")
- (description "LCOV is an extension of @command{gcov}, a tool part of the
+ (package
+ (name "lcov")
+ (version "1.15")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "https://github.com/linux-test-project/lcov"
+ "/releases/download/v" version
+ "/lcov-" version ".tar.gz"))
+ (sha256
+ (base32 "0fh5z0q5wg2jxr2nn5w7321y0zg9rwk75j3k5hnamjdy6gxa5kf1"))))
+ (build-system gnu-build-system)
+ (arguments
+ '(#:test-target "test"
+ #:make-flags (list (string-append "PREFIX="
+ (assoc-ref %outputs "out")))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'patch-pwd
+ ;; Lift the requirement of having a shell in PATH.
+ (lambda _
+ (substitute* "bin/geninfo"
+ (("qw/abs_path/")
+ "qw/abs_path getcwd/"))
+ (substitute* '("bin/lcov" "bin/geninfo")
+ (("`pwd`")
+ "getcwd()"))
+ #t))
+ (delete 'configure) ;no configure script
+ (add-after 'install 'wrap
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let ((out (assoc-ref outputs "out")))
+ (wrap-program (string-append out "/bin/geninfo")
+ `("PERL5LIB" ":" prefix (,(getenv "PERL5LIB")))))
+ #t)))))
+ (inputs `(("perl" ,perl)
+ ("perl-io-compress" ,perl-io-compress)
+ ("perl-json" ,perl-json)))
+ (home-page "http://ltp.sourceforge.net/coverage/lcov.php")
+ (synopsis "Code coverage tool that enhances GNU gcov")
+ (description "LCOV is an extension of @command{gcov}, a tool part of the
GNU@tie{}Binutils, which provides information about what parts of a program
are actually executed (i.e., \"covered\") while running a particular test
case. The extension consists of a set of Perl scripts which build on the
textual @command{gcov} output to implement the following enhanced
functionality such as HTML output.")
- (license license:gpl2+))))
+ (license license:gpl2+)))
(define-public kcov
(package
diff --git a/gnu/packages/commencement.scm b/gnu/packages/commencement.scm
index e5a4caa95c..4bd50032af 100644
--- a/gnu/packages/commencement.scm
+++ b/gnu/packages/commencement.scm
@@ -381,7 +381,7 @@ $MES -e '(mescc)' module/mescc.scm -- \"$@\"
(inputs '())
(propagated-inputs '())
(native-inputs
- `(("nyacc-source" ,(origin (inherit (package-source nyacc))
+ `(("nyacc-source" ,(origin (inherit (package-source nyacc-0.99))
(snippet #f)))
("mes" ,%bootstrap-mes-rewired)
("mescc-tools" ,%bootstrap-mescc-tools)
@@ -477,7 +477,7 @@ $MES -e '(mescc)' module/mescc.scm -- \"$@\"
(propagated-inputs '())
(native-inputs
`(("mes" ,mes-boot)
- ("nyacc-source" ,(origin (inherit (package-source nyacc))
+ ("nyacc-source" ,(origin (inherit (package-source nyacc-0.99))
(snippet #f)))
("mescc-tools" ,%bootstrap-mescc-tools)
,@(%boot-gash-inputs)))
@@ -3842,8 +3842,12 @@ COREUTILS-FINAL vs. COREUTILS, etc."
"libc-static")))
#t))))
- (native-search-paths (package-native-search-paths gcc))
- (search-paths (package-search-paths gcc))
+ (native-search-paths
+ (append (package-native-search-paths gcc)
+ (package-native-search-paths libc))) ;GUIX_LOCPATH
+ (search-paths
+ (append (package-search-paths gcc)
+ (package-search-paths libc)))
(license (package-license gcc))
(synopsis "Complete GCC tool chain for C/C++ development")
diff --git a/gnu/packages/compression.scm b/gnu/packages/compression.scm
index 506a33184a..c51b8c671a 100644
--- a/gnu/packages/compression.scm
+++ b/gnu/packages/compression.scm
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012, 2013, 2014, 2015, 2017, 2019 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2012, 2013, 2014, 2015, 2017, 2019, 2020 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2013 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2014, 2015, 2018 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2015 Taylan Ulrich Bayırlı/Kammer <taylanbayirli@gmail.com>
@@ -28,6 +28,7 @@
;;; Copyright © 2020 Björn Höfling <bjoern.hoefling@bjoernhoefling.de>
;;; Copyright © 2020 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2020 Lars-Dominik Braun <lars@6xq.net>
+;;; Copyright © 2020 Guillaume Le Vaillant <glv@posteo.net>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -803,7 +804,7 @@ decompression of some loosely related file formats used by Microsoft.")
("valgrind" ,valgrind)))
(arguments
`(#:test-target "test"
- #:make-flags (list "CC=gcc"
+ #:make-flags (list (string-append "CC=" ,(cc-for-target))
(string-append "prefix=" (assoc-ref %outputs "out")))
#:phases (modify-phases %standard-phases
(delete 'configure) ;no configure script
@@ -1769,7 +1770,8 @@ Clzip is intended to be fully compatible with the regular lzip package.")
(build-system gnu-build-system)
(arguments
`(#:configure-flags
- (list "CC=gcc"
+ (list (string-append "CC=" ,(cc-for-target))
+ "--disable-static"
"--enable-shared"))) ; only static (.a) is built by default
(home-page "https://www.nongnu.org/lzip/lzlib.html")
(synopsis "Lzip data compression C library")
@@ -2256,3 +2258,31 @@ computations.")
with their error correction data losslessly rearranged for better compression,
to their original, binary CD format.")
(license license:gpl3+)))
+
+(define-public tarlz
+ (package
+ (name "tarlz")
+ (version "0.17")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://savannah/lzip/tarlz/"
+ "tarlz-" version ".tar.lz"))
+ (sha256
+ (base32 "0gpdm6z9pdr5bn31kxg73wm686hhpb5pdf5782pbl5a4xqqhqj90"))))
+ (build-system gnu-build-system)
+ (native-inputs
+ `(("lzip" ,lzip)))
+ (inputs
+ `(("lzlib" ,lzlib)))
+ (home-page "https://www.nongnu.org/lzip/tarlz.html")
+ (synopsis "Combination of the tar archiver and the lzip compressor")
+ (description
+ "Tarlz is a massively parallel (multi-threaded) combined implementation of
+the tar archiver and the lzip compressor. Tarlz creates, lists, and extracts
+archives in a simplified and safer variant of the POSIX pax format compressed
+with lzip, keeping the alignment between tar members and lzip members. The
+resulting multimember tar.lz archive is fully backward compatible with standard
+tar tools like GNU tar, which treat it like any other tar.lz archive. Tarlz
+can append files to the end of such compressed archives.")
+ (license license:gpl2+)))
diff --git a/gnu/packages/conky.scm b/gnu/packages/conky.scm
index 6bae336b1c..0df6d1f760 100644
--- a/gnu/packages/conky.scm
+++ b/gnu/packages/conky.scm
@@ -79,7 +79,7 @@
("libxext" ,libxext)
("libxft" ,libxft)
("libxinerama" ,libxinerama)
- ("pulseaudio", pulseaudio)
+ ("pulseaudio" ,pulseaudio)
("lua" ,lua)
("ncurses" ,ncurses)
("curl" ,curl)))
diff --git a/gnu/packages/cpp.scm b/gnu/packages/cpp.scm
index 003883e1a5..f51e83283f 100644
--- a/gnu/packages/cpp.scm
+++ b/gnu/packages/cpp.scm
@@ -14,6 +14,7 @@
;;; Copyright © 2020 Marius Bakke <marius@gnu.org>
;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de>
;;; Copyright © 2020 Alexandros Theodotou <alex@zrythm.org>
+;;; Copyright © 2020 Greg Hogan <code@greghogan.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -40,12 +41,22 @@
#:use-module (guix build-system python)
#:use-module (gnu packages)
#:use-module (gnu packages autotools)
+ #:use-module (gnu packages boost)
#:use-module (gnu packages check)
#:use-module (gnu packages code)
#:use-module (gnu packages compression)
+ #:use-module (gnu packages crypto)
+ #:use-module (gnu packages gcc)
+ #:use-module (gnu packages libevent)
+ #:use-module (gnu packages libunwind)
+ #:use-module (gnu packages linux)
#:use-module (gnu packages llvm)
+ #:use-module (gnu packages logging)
+ #:use-module (gnu packages maths)
#:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config)
+ #:use-module (gnu packages popt)
+ #:use-module (gnu packages pretty-print)
#:use-module (gnu packages tls)
#:use-module (gnu packages web))
@@ -361,7 +372,7 @@ intuitive syntax and trivial integration.")
(define-public xtl
(package
(name "xtl")
- (version "0.6.18")
+ (version "0.6.19")
(source (origin
(method git-fetch)
(uri
@@ -370,7 +381,7 @@ intuitive syntax and trivial integration.")
(commit version)))
(sha256
(base32
- "0s9gnv1wq0cmpw878dmx0lnci86895hhdrwyc9x8lfbc1hr7ypnh"))
+ "1g98lfrp13fqfqrirg0rw90m7bajmjmy12yhrlj5jzwcby4dfs81"))
(file-name (git-file-name name version))))
(native-inputs
`(("googletest" ,googletest)
@@ -647,3 +658,73 @@ Google's C++ code base.")
a zero-dependency C++ header-only parser combinator library for creating
parsers according to a Parsing Expression Grammar (PEG).")
(license license:expat)))
+
+(define-public cxxopts
+ (package
+ (name "cxxopts")
+ (version "2.2.1")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/jarro2783/cxxopts")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0d3y747lsh1wkalc39nxd088rbypxigm991lk3j91zpn56whrpha"))))
+ (build-system cmake-build-system)
+ (synopsis "Lightweight C++ command line option parser")
+ (description
+ "A lightweight header-only C++ option parser library, supporting the
+standard GNU style syntax for options.")
+ (home-page "https://github.com/jarro2783/cxxopts/wiki")
+ (license license:expat)))
+
+(define-public folly
+ (package
+ (name "folly")
+ (version "2020.10.05.00")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/facebook/folly")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0q4w4cvjxffc462hvs8h4zryq4965j7015zvkwagcm6cj6wmz3cn"))))
+ (build-system cmake-build-system)
+ (arguments
+ '(;; Tests must be explicitly enabled
+ ;;#:configure-flags '("-DBUILD_TESTS=ON")))
+ ;; Leave tests disabled; see https://github.com/facebook/folly/issues/1456
+ #:tests? #f))
+ (propagated-inputs
+ `(("boost" ,boost)
+ ("gflags" ,gflags)
+ ("glog" ,glog)
+ ("liburing" ,liburing)))
+ (inputs
+ `(("bzip2" ,bzip2)
+ ("double-conversion" ,double-conversion)
+ ("fmt" ,fmt)
+ ("libaio" ,libaio)
+ ("libevent" ,libevent)
+ ("libiberty" ,libiberty)
+ ("libsodium" ,libsodium)
+ ("libunwind" ,libunwind)
+ ("lz4" ,lz4)
+ ("openssl" ,openssl)
+ ("snappy" ,snappy)
+ ("zlib" ,zlib)
+ ("zstd" ,zstd "lib")))
+ (native-inputs
+ `(("googletest" ,googletest)))
+ (synopsis "Collection of C++ components complementing the standard library")
+ (description
+ "Folly (acronymed loosely after Facebook Open Source Library) is a library
+of C++14 components that complements @code{std} and Boost.")
+ (home-page "https://github.com/facebook/folly/wiki")
+ ;; 32-bit is not supported: https://github.com/facebook/folly/issues/103
+ (supported-systems '("aarch64-linux" "x86_64-linux"))
+ (license license:asl2.0)))
diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm
index a39c0e64cb..cc75136a3a 100644
--- a/gnu/packages/cran.scm
+++ b/gnu/packages/cran.scm
@@ -17,7 +17,7 @@
;;; Copyright © 2018 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2018, 2019 Brett Gilio <brettg@gnu.org>
;;; Copyright © 2019 Nicolò Balzarotti <anothersms@gmail.com>
-;;; Copyright © 2019 Wiktor Żelazny <wzelazny@vurv.cz>
+;;; Copyright © 2019, 2020 Wiktor Żelazny <wzelazny@vurv.cz>
;;; Copyright © 2019 Arne Babenhauserheide <arne_bab@web.de>
;;; Copyright © 2019, 2020 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2020 Todor Kondić <tk.code@protonmail.com>
@@ -29,6 +29,8 @@
;;; Copyright © 2020 Lars-Dominik Braun <ldb@leibniz-psychology.org>
;;; Copyright © 2020 Vinicius Monego <monego@posteo.net>
;;; Copyright © 2020 Antoine Côté <antoine.cote@posteo.net>
+;;; Copyright © 2020 Arun Isaac <arunisaac@systemreboot.net>
+;;; Copyright © 2020 Magali Lemes <magalilemes00@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -89,6 +91,7 @@
#:use-module (gnu packages pulseaudio) ;libsndfile
#:use-module (gnu packages python)
#:use-module (gnu packages python-xyz)
+ #:use-module (gnu packages sqlite)
#:use-module (gnu packages statistics)
#:use-module (gnu packages tcl)
#:use-module (gnu packages tls)
@@ -99,14 +102,14 @@
(define-public r-rticles
(package
(name "r-rticles")
- (version "0.15")
+ (version "0.16")
(source
(origin
(method url-fetch)
(uri (cran-uri "rticles" version))
(sha256
(base32
- "0svh2bcqnlqdxdpw5afz1b980i2q13k8cxpq6flfqbi3dlwf3h8l"))))
+ "1ca3k5sdy9mnm6frcimqwf5k18j14wn69x5iagjnjwhq711l8dv0"))))
(properties `((upstream-name . "rticles")))
(build-system r-build-system)
(propagated-inputs
@@ -989,18 +992,20 @@ directory.")
(define-public r-htmlwidgets
(package
(name "r-htmlwidgets")
- (version "1.5.1")
+ (version "1.5.2")
(source (origin
(method url-fetch)
(uri (cran-uri "htmlwidgets" version))
(sha256
(base32
- "10fp306l1nybkah6jrlrqwwdb6zvklbddp8i3w9v9naj8la5jbnl"))))
+ "0072wlkl58lav3qszzqw6pmx8qra4784r0yb6rx4lg7rbrik6335"))))
(build-system r-build-system)
(propagated-inputs
`(("r-htmltools" ,r-htmltools)
("r-jsonlite" ,r-jsonlite)
("r-yaml" ,r-yaml)))
+ (native-inputs
+ `(("r-knitr" ,r-knitr)))
(home-page "https://github.com/ramnathv/htmlwidgets")
(synopsis "HTML Widgets for R")
(description
@@ -1012,13 +1017,13 @@ applications.")
(define-public r-htmltable
(package
(name "r-htmltable")
- (version "2.0.1")
+ (version "2.1.0")
(source
(origin
(method url-fetch)
(uri (cran-uri "htmlTable" version))
(sha256
- (base32 "0ma52kajzxfg9w811d6ldhghzn9xhyr8bh7k5v265k82bzx7rac6"))))
+ (base32 "1gzh0bdxi55p1ckxv4k0a41b1j0grwv2w3lkqz4c3gkw66dk6ja0"))))
(properties `((upstream-name . "htmlTable")))
(build-system r-build-system)
(propagated-inputs
@@ -2409,14 +2414,14 @@ compare different dendrograms to one another.")
(define-public r-getoptlong
(package
(name "r-getoptlong")
- (version "1.0.2")
+ (version "1.0.3")
(source
(origin
(method url-fetch)
(uri (cran-uri "GetoptLong" version))
(sha256
(base32
- "1p89v2qzqfxyrmqzkv245716n9i4bllnq77a6gw811mgdhxbd51l"))))
+ "142gi3ifpcz1rhqrbw4wh326jn2q61s659wkzf92ys4dybs43dky"))))
(properties `((upstream-name . "GetoptLong")))
(build-system r-build-system)
(inputs
@@ -3171,19 +3176,21 @@ available in a vignette.")
(define-public r-lava
(package
(name "r-lava")
- (version "1.6.7")
+ (version "1.6.8")
(source
(origin
(method url-fetch)
(uri (cran-uri "lava" version))
(sha256
(base32
- "0ffzxbb8pvfh1m6j61az4ga37snyhylq2941fyc76w7w9i2sixv3"))))
+ "0jdmjjs894mfncswmzz7sa6cy7hqbqii5fcvl3zqkmzpbadb2za2"))))
(build-system r-build-system)
(propagated-inputs
`(("r-numderiv" ,r-numderiv)
("r-squarem" ,r-squarem)
("r-survival" ,r-survival)))
+ (native-inputs
+ `(("r-knitr" ,r-knitr)))
(home-page "https://github.com/kkholst/lava")
(synopsis "Latent variable models")
(description
@@ -3322,8 +3329,7 @@ dimensioned arrays.")
(properties `((upstream-name . "RMySQL")))
(build-system r-build-system)
(inputs
- `(("mariadb" ,mariadb "lib")
- ("mariadb-dev" ,mariadb "dev")
+ `(("mariadb-dev" ,mariadb "dev")
("zlib" ,zlib)))
(propagated-inputs
`(("r-dbi" ,r-dbi)))
@@ -3401,7 +3407,7 @@ Optimization problems by using the simplex algorithm.")
("r-rcpp" ,r-rcpp)
("r-rcppprogress" ,r-rcppprogress)))
(home-page "http://geometry.r-forge.r-project.org/")
- (synopsis "Mesh generation and surface tesselation")
+ (synopsis "Mesh generator and surface tessellator")
(description
"This package makes the qhull library available in R, in a similar manner
as in Octave. Qhull computes convex hulls, Delaunay triangulations, halfspace
@@ -3525,14 +3531,14 @@ problems as well as resampling based estimators of prediction error.")
(define-public r-psych
(package
(name "r-psych")
- (version "2.0.8")
+ (version "2.0.9")
(source
(origin
(method url-fetch)
(uri (cran-uri "psych" version))
(sha256
(base32
- "0ymds7ql2dv994m73h68dnhbsws8bl09p2rqvl6xsq6c6xr0yryg"))))
+ "0wdh580a0psbdil28n0d85hnp42wmn11hcbnihjq8r7h54drgzpn"))))
(build-system r-build-system)
(propagated-inputs
`(("r-lattice" ,r-lattice)
@@ -3578,14 +3584,14 @@ by base R methods related to model fitting.")
(define-public r-broom
(package
(name "r-broom")
- (version "0.7.0")
+ (version "0.7.1")
(source
(origin
(method url-fetch)
(uri (cran-uri "broom" version))
(sha256
(base32
- "0bq8w1ckrladzck2g0mgiyjdrzi06kbqalk5q3pfvj1607fdv3d5"))))
+ "12xnpmm1cyhksv4gwcrwgrpw7c0xf1c7chlpng9lk8arifbfvqpg"))))
(build-system r-build-system)
(propagated-inputs
`(("r-backports" ,r-backports)
@@ -3743,7 +3749,7 @@ color labels, layout, etc.")
(description
"This package implements an approximate string matching version of R's
native @code{match} function. It can calculate various string distances based
-on edits (Damerau-Levenshtein, Hamming, Levenshtein, optimal sting alignment),
+on edits (Damerau-Levenshtein, Hamming, Levenshtein, optimal string alignment),
qgrams (q- gram, cosine, jaccard distance) or heuristic metrics (Jaro,
Jaro-Winkler). An implementation of soundex is provided as well. Distances
can be computed between character vectors while taking proper care of encoding
@@ -3986,14 +3992,14 @@ programming} (SQP) based solver).")
(define-public r-hardyweinberg
(package
(name "r-hardyweinberg")
- (version "1.6.6")
+ (version "1.6.8")
(source
(origin
(method url-fetch)
(uri (cran-uri "HardyWeinberg" version))
(sha256
(base32
- "1qn1bbzfk4w3mqrzisshw5xx7x249sgmj6qdi39lkqb58a4mf4kh"))))
+ "0b6j1mkpr7ck2nr9fmpnsjdv29jc6vg4b91cg50skmcgky1j0zi7"))))
(properties `((upstream-name . "HardyWeinberg")))
(build-system r-build-system)
(propagated-inputs
@@ -4186,14 +4192,14 @@ modeling for empirical income distributions.")
(define-public r-vcd
(package
(name "r-vcd")
- (version "1.4-7")
+ (version "1.4-8")
(source
(origin
(method url-fetch)
(uri (cran-uri "vcd" version))
(sha256
(base32
- "16aj688nhlcvdxzfsqh4s375v8f8vl8997dl8h1xg29b42nv52gc"))))
+ "030yyhpzsj4ivwrla7p9kgvmyjh6b8fr7czf678ykxjj64ccnvr3"))))
(build-system r-build-system)
(propagated-inputs
`(("r-colorspace" ,r-colorspace)
@@ -4232,14 +4238,14 @@ of Eigenmatrices} (JADE).")
(define-public r-dtw
(package
(name "r-dtw")
- (version "1.21-3")
+ (version "1.22-3")
(source
(origin
(method url-fetch)
(uri (cran-uri "dtw" version))
(sha256
(base32
- "02hyhx1sy5h3vzh9zixy18a7d47df4k5d0wyflcvlcbsbcl6p90s"))))
+ "004gm4mzgdzdj807j3bwqsv5lizmnmz5jq514bdjshhkysnzjz6z"))))
(build-system r-build-system)
(propagated-inputs `(("r-proxy" ,r-proxy)))
(home-page "http://dtw.r-forge.r-project.org/")
@@ -4522,14 +4528,14 @@ Markdown documents.")
(define-public r-seriation
(package
(name "r-seriation")
- (version "1.2-8")
+ (version "1.2-9")
(source
(origin
(method url-fetch)
(uri (cran-uri "seriation" version))
(sha256
(base32
- "1zbdxq0s5rc5v307b69fw9k52m0654ls7pf22lh35ggirig6lwsk"))))
+ "1glxn098ar1v96xlwp85kjxzfd1nyfzp2f82x5z3fm87yv57k4lb"))))
(build-system r-build-system)
(propagated-inputs
`(("r-cluster" ,r-cluster)
@@ -4556,13 +4562,13 @@ iVAT).")
(define-public r-xfun
(package
(name "r-xfun")
- (version "0.17")
+ (version "0.18")
(source
(origin
(method url-fetch)
(uri (cran-uri "xfun" version))
(sha256
- (base32 "1zd5qi1rrz3b1lpisapa2yscanz39ghaamf28g7aq3z9ai2a2ymj"))))
+ (base32 "0iqh9b0a5wlc4lmqf7r169h4m2xji5l1viwwi47qf094rl5r3ddr"))))
(build-system r-build-system)
;; knitr itself depends on xfun
#;
@@ -4706,14 +4712,14 @@ terminals.")
(define-public r-tinytex
(package
(name "r-tinytex")
- (version "0.25")
+ (version "0.26")
(source
(origin
(method url-fetch)
(uri (cran-uri "tinytex" version))
(sha256
(base32
- "0zbhzxxjlkdj9byxyab477p7cnws5y87nyg989lkzarxdc7dglza"))))
+ "02b0v8ydbfspma3rgsdpkf2cm6jl9qm3l9jsrl0xng482b06bb0q"))))
(build-system r-build-system)
(propagated-inputs
`(("r-xfun" ,r-xfun)))
@@ -4774,22 +4780,44 @@ complementary pairs stability selection with improved error bounds
arbitrary user specified variable selection approaches.")
(license license:gpl2)))
+(define-public r-rle
+ (package
+ (name "r-rle")
+ (version "0.9.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (cran-uri "rle" version))
+ (sha256
+ (base32
+ "0sagl0jggg40lihzy7pfq4593rfvc3b3f7g6ggi85s7n18qvwg40"))))
+ (properties `((upstream-name . "rle")))
+ (build-system r-build-system)
+ (home-page "https://cran.r-project.org/web/packages/rle/")
+ (synopsis "Common functions for run-length encoded vectors")
+ (description
+ "This package provides common @code{base} and @code{stats} methods for
+@code{rle} objects, aiming to make it possible to treat them transparently as
+vectors.")
+ (license license:gpl3)))
+
(define-public r-statnet-common
(package
(name "r-statnet-common")
- (version "4.3.0")
+ (version "4.4.1")
(source
(origin
(method url-fetch)
(uri (cran-uri "statnet.common" version))
(sha256
(base32
- "0ng90i0wm9wlyhjbnmnylc1bbqw396p1dr7f402dyry9x9ck6jl3"))))
+ "1z89an46xcl1d7dacj4irhk6pkajdz7v85b2347vczwdf622pksf"))))
(properties
`((upstream-name . "statnet.common")))
(build-system r-build-system)
(propagated-inputs
- `(("r-coda" ,r-coda)))
+ `(("r-coda" ,r-coda)
+ ("r-rle" ,r-rle)))
(home-page "https://statnet.org")
(synopsis "R scripts and utilities used by the Statnet software")
(description "This package provides non-statistical utilities used by the
@@ -5201,14 +5229,14 @@ interface.")
(define-public r-trend
(package
(name "r-trend")
- (version "1.1.3")
+ (version "1.1.4")
(source
(origin
(method url-fetch)
(uri (cran-uri "trend" version))
(sha256
(base32
- "0bj40acr1sc7vfxdcsdja3g28xsmrclmgb3n94p89gfjcgp8nv1d"))))
+ "1mr5g5gaxiqj6x83ngcbwwh57vhrhcz0x9dh0rmvs9y2ivk29ccs"))))
(build-system r-build-system)
(propagated-inputs
`(("r-extradistr" ,r-extradistr)))
@@ -5471,15 +5499,17 @@ Memorial-Sloan-Kettering Cancer Center (MSKCC).")
(define-public r-import
(package
(name "r-import")
- (version "1.1.0")
+ (version "1.2.0")
(source
(origin
(method url-fetch)
(uri (cran-uri "import" version))
(sha256
(base32
- "0blf9539rbfwcmw8zsb4k58slb4pdnc075v34vmyjw752fznhcji"))))
+ "018s0x224gqnv4cjfh0fwliyfg6ma9vslmwybrlizfsmqcc5wp37"))))
(build-system r-build-system)
+ (native-inputs
+ `(("r-knitr" ,r-knitr)))
(home-page "https://github.com/smbache/import")
(synopsis "Import mechanism for R")
(description
@@ -6053,14 +6083,14 @@ additional external tools on any platform.")
(define-public r-openxlsx
(package
(name "r-openxlsx")
- (version "4.1.5")
+ (version "4.2.2")
(source
(origin
(method url-fetch)
(uri (cran-uri "openxlsx" version))
(sha256
(base32
- "0wkpa3wsd8rs0pib7cp67iv0s6jn99frcrw7clypqxmvvdwyb9kq"))))
+ "12sjarcmbdww6jmkcqy8c6id94zv3lwmm15ns1y0xj3ipr8qmphb"))))
(build-system r-build-system)
(propagated-inputs
`(("r-rcpp" ,r-rcpp)
@@ -6388,14 +6418,14 @@ Python to R they are converted back to R types.")
(define-public r-bibtex
(package
(name "r-bibtex")
- (version "0.4.2.2")
+ (version "0.4.2.3")
(source
(origin
(method url-fetch)
(uri (cran-uri "bibtex" version))
(sha256
(base32
- "140hkjzdp3033cvji861rd06z1ixgpnn4n5amygqsmhnixk8ff07"))))
+ "0vdwx6808r73pk15263f33bkqbfmb08d8jkmr4d7h4ml414ikbbv"))))
(build-system r-build-system)
(propagated-inputs `(("r-stringr" ,r-stringr)))
(home-page "https://github.com/romainfrancois/bibtex")
@@ -7126,14 +7156,14 @@ other add-on packages.")
(define-public r-insight
(package
(name "r-insight")
- (version "0.9.5")
+ (version "0.9.6")
(source
(origin
(method url-fetch)
(uri (cran-uri "insight" version))
(sha256
(base32
- "0853kq4j8kic8z2gh5mxfqkwxjs4bdphlajzyvxka7af4r04bfmi"))))
+ "15mws316qfbq3nn6gb7s0m0a6jk2zi056g43yqiw4gp2ar92wd0h"))))
(build-system r-build-system)
(native-inputs
`(("r-knitr" ,r-knitr)))
@@ -7154,14 +7184,14 @@ information are missing.")
(define-public r-sjlabelled
(package
(name "r-sjlabelled")
- (version "1.1.6")
+ (version "1.1.7")
(source
(origin
(method url-fetch)
(uri (cran-uri "sjlabelled" version))
(sha256
(base32
- "0xvb0yi7c7wiiqjbnbisyb2cjinm11i373jacfv1yzyc9cznzyzq"))))
+ "0d3fsjd2gxchv8mlx9l5pf8xvkmx4pgvizam83f3qss07bmvpzwg"))))
(build-system r-build-system)
(propagated-inputs
`(("r-insight" ,r-insight)))
@@ -7482,14 +7512,14 @@ Group (Non-)Overlap considerations.")
(define-public r-deriv
(package
(name "r-deriv")
- (version "4.0.1")
+ (version "4.1.0")
(source
(origin
(method url-fetch)
(uri (cran-uri "Deriv" version))
(sha256
(base32
- "16rq65x1xhxvqwn4p427divay3b9fgam2lxccxb8529adnrxmw6p"))))
+ "1n5d10g9qv4fvl8q0q6yc0mzdbba10jniid6k3br3bfqvdp2a4pq"))))
(properties `((upstream-name . "Deriv")))
(build-system r-build-system)
(home-page "https://cran.r-project.org/web/packages/Deriv")
@@ -8916,14 +8946,14 @@ observation.")
(define-public r-sandwich
(package
(name "r-sandwich")
- (version "2.5-1")
+ (version "3.0-0")
(source
(origin
(method url-fetch)
(uri (cran-uri "sandwich" version))
(sha256
(base32
- "1mk685b9wq7k566pbml52rj96i5h6b3vf215k9picgmq296nzvyv"))))
+ "0afm6snak7r11dxyl3qirqdjah6d9pdv4afmxwam1nq9bqxyb3w2"))))
(build-system r-build-system)
(propagated-inputs
`(("r-zoo" ,r-zoo)))
@@ -8961,14 +8991,14 @@ packages maintained by Torsten Hothorn.")
(define-public r-multcomp
(package
(name "r-multcomp")
- (version "1.4-13")
+ (version "1.4-14")
(source
(origin
(method url-fetch)
(uri (cran-uri "multcomp" version))
(sha256
(base32
- "1nszi22rcc551yc75h9cdfkdqsxw1rz30vadazmpyzihp1bh63yk"))))
+ "14a55isy1sp745s109nirlk5fryy144cri6dl8y9d9wjhfxz336a"))))
(build-system r-build-system)
(propagated-inputs
`(("r-codetools" ,r-codetools)
@@ -8989,14 +9019,14 @@ Hothorn, Westfall, 2010, CRC Press).")
(define-public r-emmeans
(package
(name "r-emmeans")
- (version "1.5.0")
+ (version "1.5.1")
(source
(origin
(method url-fetch)
(uri (cran-uri "emmeans" version))
(sha256
(base32
- "09nap4aazpbsswqzk0d4kjngwd8sib222s31yd08sd1sqw432c6k"))))
+ "05z3vvykn56g50zhzsphdhfjzdw8g8xfindcas08hbhv5y7izhs8"))))
(build-system r-build-system)
(propagated-inputs
`(("r-estimability" ,r-estimability)
@@ -9309,14 +9339,14 @@ results using @code{ggplot2}.")
(define-public r-effectsize
(package
(name "r-effectsize")
- (version "0.3.2")
+ (version "0.3.3")
(source
(origin
(method url-fetch)
(uri (cran-uri "effectsize" version))
(sha256
(base32
- "0h9f260gb8707pcssf8dq7dakpq1ggkxr5kpbrbl8sn8h3qbvws9"))))
+ "00c9j6lc58ls1vrwlpzk3h1lgvxpkcrh7b4ym6kmy4fg4f08izp7"))))
(properties `((upstream-name . "effectsize")))
(build-system r-build-system)
(propagated-inputs
@@ -9336,13 +9366,13 @@ conversion of indices such as Cohen's d, r, odds, etc.")
(define-public r-sjplot
(package
(name "r-sjplot")
- (version "2.8.4")
+ (version "2.8.5")
(source
(origin
(method url-fetch)
(uri (cran-uri "sjPlot" version))
(sha256
- (base32 "0b7k0mshkk8k26w11xbxkb5v0klhq279zn2xdz83cn8k791xkqyd"))))
+ (base32 "07fwa6ga9430irk68g9wcfpn9g24pf8qc2i127nrydm865y7ri24"))))
(properties `((upstream-name . "sjPlot")))
(build-system r-build-system)
(propagated-inputs
@@ -9466,14 +9496,14 @@ terminals that do not support Unicode.")
(define-public r-usethis
(package
(name "r-usethis")
- (version "1.6.1")
+ (version "1.6.3")
(source
(origin
(method url-fetch)
(uri (cran-uri "usethis" version))
(sha256
(base32
- "0vwxsnq615mwc706a4a71gyy0hmvnllbh249gzm7vl3ym5cr0cv0"))))
+ "09lk04kycvf5x9ggrb6pwc7bx5mzqxwialm2w9vn1a0w0gh2gcfc"))))
(build-system r-build-system)
(propagated-inputs
`(("r-cli" ,r-cli)
@@ -9689,14 +9719,14 @@ users.")
(define-public r-lsei
(package
(name "r-lsei")
- (version "1.2-0.1")
+ (version "1.3-0")
(source
(origin
(method url-fetch)
(uri (cran-uri "lsei" version))
(sha256
(base32
- "1rvzdb33x9ykl5qfwxkps1iylxqzlf1qla3l88420nbq7pxp7m87"))))
+ "1dka0rigfw4vj809qma2dkiwjb3nw5635ynnba5cm299cn7hb2b2"))))
(build-system r-build-system)
(native-inputs
`(("gfortran" ,gfortran)))
@@ -9712,14 +9742,14 @@ problems into least squares ones first.")
(define-public r-npsurv
(package
(name "r-npsurv")
- (version "0.4-0.1")
+ (version "0.5-0")
(source
(origin
(method url-fetch)
(uri (cran-uri "npsurv" version))
(sha256
(base32
- "09nxibp93bp9v8qcx0gnazk7fkvyh0fq9vlgxl639m6ndr7fwp88"))))
+ "1ihxhb42cga1hssj2jv4ah0f4hlwsky899ij5261fzh1wxvdp1xw"))))
(build-system r-build-system)
(propagated-inputs
`(("r-lsei" ,r-lsei)))
@@ -9829,14 +9859,14 @@ analysing multivariate abundance data in community ecology.")
(define-public r-afex
(package
(name "r-afex")
- (version "0.27-2")
+ (version "0.28-0")
(source
(origin
(method url-fetch)
(uri (cran-uri "afex" version))
(sha256
(base32
- "0qsmcddy4449qjj3ajmqvdiqdkhkswmz5dqf150wxwq897p3bvf2"))))
+ "0c47bq2llzw2b4avhkxyhmf1m2zjh9jsjiw2kww9n1bhwqsyr4ci"))))
(build-system r-build-system)
(propagated-inputs
`(("r-car" ,r-car)
@@ -10411,14 +10441,14 @@ components).")
(define-public r-fftwtools
(package
(name "r-fftwtools")
- (version "0.9-8")
+ (version "0.9-9")
(source
(origin
(method url-fetch)
(uri (cran-uri "fftwtools" version))
(sha256
(base32
- "1nqvpzda281rxi1cmwajxxsn3sc3gz7scv8bvs5jm34kf36whha6"))))
+ "0h8lyl2i6zq16ir7xnfj9dhyivxvwikm8lml19s8s8jx95z3n9x9"))))
(build-system r-build-system)
(inputs `(("fftw" ,fftw)))
(home-page "https://github.com/krahim/fftwtools")
@@ -11377,14 +11407,14 @@ preparing, executing, and processing HTTP requests.")
(define-public r-bigrquery
(package
(name "r-bigrquery")
- (version "1.3.1")
+ (version "1.3.2")
(source
(origin
(method url-fetch)
(uri (cran-uri "bigrquery" version))
(sha256
(base32
- "0mq03sqv5lkyn3dlxvyd6lqqwnryfdaqh05pjvngzp194fxmd9cy"))))
+ "16whccv7f94vf57dvbbrhdskz3nnbmpa11a14kp7aynckldlfy0v"))))
(build-system r-build-system)
(propagated-inputs
`(("r-assertthat" ,r-assertthat)
@@ -11410,14 +11440,14 @@ preparing, executing, and processing HTTP requests.")
(define-public r-gmp
(package
(name "r-gmp")
- (version "0.6-0")
+ (version "0.6-1")
(source
(origin
(method url-fetch)
(uri (cran-uri "gmp" version))
(sha256
(base32
- "1c9vpr6j6h5f6dm9l535nscl66rvr8sba5az2kswjhmzwb9xpjxc"))))
+ "11rl7qmfrpp1974f0vzsi3zjyx147wlb82ydxak2b60khfvhrn90"))))
(build-system r-build-system)
(arguments
'(#:phases
@@ -11935,13 +11965,13 @@ Differences with other sparse matrix packages are:
(define-public r-fields
(package
(name "r-fields")
- (version "11.4")
+ (version "11.5")
(source
(origin
(method url-fetch)
(uri (cran-uri "fields" version))
(sha256
- (base32 "0x8hbl0rn7gnhn7w45wd757g9in27884qr6vy30xrk150qaq941y"))))
+ (base32 "1mgg5l6w4yvz7cccgfz3h19k11ng1s1hy26rl2h215gnfb24mnga"))))
(build-system r-build-system)
(propagated-inputs
`(("r-maps" ,r-maps)
@@ -11960,14 +11990,14 @@ covariance functions for large data sets.")
(define-public r-spatialextremes
(package
(name "r-spatialextremes")
- (version "2.0-8")
+ (version "2.0-9")
(source
(origin
(method url-fetch)
(uri (cran-uri "SpatialExtremes" version))
(sha256
(base32
- "0r2byz5xxc46zqnigdax28q7446ibmzmsmi10lmm2hdks3ml6sl3"))))
+ "1mhn1c8n3bmgf0fjyac3wji4790zswzkqliqcv3n8kv9806crb0y"))))
(properties
`((upstream-name . "SpatialExtremes")))
(build-system r-build-system)
@@ -12384,14 +12414,14 @@ subsetting.")
(define-public r-globals
(package
(name "r-globals")
- (version "0.12.5")
+ (version "0.13.0")
(source
(origin
(method url-fetch)
(uri (cran-uri "globals" version))
(sha256
(base32
- "1ha8iasgijp4q3v2b0b17y1wh7cd3nvzd9b03w49qm2bidkaf68m"))))
+ "0gqh7dbd38wqyjy9qm85v5k60vld97pyc46wf4xkgi4mr7y0ixg3"))))
(build-system r-build-system)
(propagated-inputs
`(("r-codetools" ,r-codetools)))
@@ -12408,14 +12438,14 @@ them in distributed compute environments.")
(define-public r-future
(package
(name "r-future")
- (version "1.18.0")
+ (version "1.19.1")
(source
(origin
(method url-fetch)
(uri (cran-uri "future" version))
(sha256
(base32
- "01fp8kgjf0k6c83q1w3dy9z90g72cc9d0004d1qw6n1j65nwxg4f"))))
+ "12f483h7g172ygafbg7h43vykv0f7xz9miwqf5q8dyv7gpgqi5fl"))))
(build-system r-build-system)
(propagated-inputs
`(("r-digest" ,r-digest)
@@ -12887,14 +12917,14 @@ to easily call your own custom JavaScript functions from R.")
(define-public r-colourpicker
(package
(name "r-colourpicker")
- (version "1.0")
+ (version "1.1.0")
(source
(origin
(method url-fetch)
(uri (cran-uri "colourpicker" version))
(sha256
(base32
- "0z3v2083g7kwdp21x9s2n1crfh24agpdq3yxkcdzc2awn2pwpnpi"))))
+ "1qjispj7i12m02js5cm5xlgn5lyff0kc5ybz6lbknz8q5lkbdyrd"))))
(build-system r-build-system)
(arguments
`(#:modules ((guix build utils)
@@ -12935,7 +12965,8 @@ to easily call your own custom JavaScript functions from R.")
("r-shiny" ,r-shiny)
("r-shinyjs" ,r-shinyjs)))
(native-inputs
- `(("uglify-js" ,uglify-js)
+ `(("r-knitr" ,r-knitr)
+ ("uglify-js" ,uglify-js)
("js-jquery"
,(origin
(method url-fetch)
@@ -13927,7 +13958,8 @@ tessellation.")
(inputs
`(("gdal" ,gdal)
("geos" ,geos)
- ("proj" ,proj.4)
+ ("proj" ,proj)
+ ("sqlite" ,sqlite)
("zlib" ,zlib)))
(propagated-inputs
`(("r-classint" ,r-classint)
@@ -14027,13 +14059,13 @@ also provided to illustrate various methods.")
(define-public r-pegas
(package
(name "r-pegas")
- (version "0.13")
+ (version "0.14")
(source
(origin
(method url-fetch)
(uri (cran-uri "pegas" version))
(sha256
- (base32 "002i7s4g0nhnq0v05gs0yssqiyhpq2f7rw2rhn31hsbgxc86frvy"))))
+ (base32 "0lr06gajzdanj8ax91kgpxsj863m367v2s1z5gnxps3999n0xybx"))))
(build-system r-build-system)
(propagated-inputs
`(("r-adegenet" ,r-adegenet)
@@ -14477,44 +14509,6 @@ authoring books and technical documents with R Markdown.")
that accept short and long options.")
(license license:gpl2+)))
-(define-public r-wgcna
- (package
- (name "r-wgcna")
- (version "1.69")
- (source
- (origin
- (method url-fetch)
- (uri (cran-uri "WGCNA" version))
- (sha256
- (base32
- "022hkprnrafvggi8pkjffkvk1qlnibmbbxxrni00wkrdbga5589f"))))
- (properties `((upstream-name . "WGCNA")))
- (build-system r-build-system)
- (propagated-inputs
- `(("r-annotationdbi" ,r-annotationdbi)
- ("r-doparallel" ,r-doparallel)
- ("r-dynamictreecut" ,r-dynamictreecut)
- ("r-fastcluster" ,r-fastcluster)
- ("r-foreach" ,r-foreach)
- ("r-go-db" ,r-go-db)
- ("r-hmisc" ,r-hmisc)
- ("r-impute" ,r-impute)
- ("r-rcpp" ,r-rcpp)
- ("r-survival" ,r-survival)
- ("r-matrixstats" ,r-matrixstats)
- ("r-preprocesscore" ,r-preprocesscore)))
- (home-page
- "http://www.genetics.ucla.edu/labs/horvath/CoexpressionNetwork/Rpackages/WGCNA/")
- (synopsis "Weighted correlation network analysis")
- (description
- "This package provides functions necessary to perform Weighted
-Correlation Network Analysis on high-dimensional data. It includes functions
-for rudimentary data cleaning, construction and summarization of correlation
-networks, module identification and functions for relating both variables and
-modules to sample traits. It also includes a number of utility functions for
-data manipulation and visualization.")
- (license license:gpl2+)))
-
(define-public r-kernlab
(package
(name "r-kernlab")
@@ -14829,20 +14823,21 @@ the XKCD web comic.")
(define-public r-msigdbr
(package
(name "r-msigdbr")
- (version "7.1.1")
+ (version "7.2.1")
(source
(origin
(method url-fetch)
(uri (cran-uri "msigdbr" version))
(sha256
(base32
- "0jvi49qa7616s58p0rx66pcw7h12rc8kgcg9225jk7pc3934hnzh"))))
+ "1rc2p9vw57pn4prmfgay4w18qd53ggq7wxfsi9kp7w25ciip1dq1"))))
(build-system r-build-system)
(propagated-inputs
`(("r-dplyr" ,r-dplyr)
("r-magrittr" ,r-magrittr)
("r-rlang" ,r-rlang)
- ("r-tibble" ,r-tibble)))
+ ("r-tibble" ,r-tibble)
+ ("r-tidyselect" ,r-tidyselect)))
(native-inputs
`(("r-knitr" ,r-knitr)))
(home-page "https://github.com/igordot/msigdbr")
@@ -15219,14 +15214,14 @@ discriminant analysis for the purpose of classifying high dimensional data.")
(define-public r-ggvis
(package
(name "r-ggvis")
- (version "0.4.5")
+ (version "0.4.6")
(source
(origin
(method url-fetch)
(uri (cran-uri "ggvis" version))
(sha256
(base32
- "091i9f17912j8qcyxppjgwzjnyqj7769ixs9d2gjg6f2clskqdw2"))))
+ "1k40mkfxj66qvwbsp849maihv6vxkdprhhzjkwffwn0lwl78lsz1"))))
(build-system r-build-system)
(propagated-inputs
`(("r-assertthat" ,r-assertthat)
@@ -15756,17 +15751,18 @@ code edited with @code{RStudio IDE}, @code{Emacs} and @code{Vim}.")
(define-public r-sctransform
(package
(name "r-sctransform")
- (version "0.2.1")
+ (version "0.3")
(source
(origin
(method url-fetch)
(uri (cran-uri "sctransform" version))
(sha256
(base32
- "07v3lzccsrkh1glfxd1q20r8f8gl9ls5az0s1dvxm4vcls0hlhyn"))))
+ "1vyjxzghfvw57pwncvkfg3lbcsqfdsiplh1h4vscxpnd3872nrq3"))))
(build-system r-build-system)
(propagated-inputs
- `(("r-future-apply" ,r-future-apply)
+ `(("r-future" ,r-future)
+ ("r-future-apply" ,r-future-apply)
("r-ggplot2" ,r-ggplot2)
("r-gridextra" ,r-gridextra)
("r-mass" ,r-mass)
@@ -16175,14 +16171,14 @@ includes data sets from oceanography.")
(define-public r-ggfortify
(package
(name "r-ggfortify")
- (version "0.4.10")
+ (version "0.4.11")
(source
(origin
(method url-fetch)
(uri (cran-uri "ggfortify" version))
(sha256
(base32
- "0wmcwp63h90v3f00ixszvis4z28im621jickvc0wgi6qvjvnayq0"))))
+ "1wfm7l9bz6msh7rflgfv9dgbxh1ikz2ay0v7sgk9nkc24y6lhbpk"))))
(build-system r-build-system)
(propagated-inputs
`(("r-dplyr" ,r-dplyr)
@@ -16535,7 +16531,7 @@ guaranteeing well-connected communities.\" <arXiv:1810.08473>.")
"The @code{ggplot2} package provides a strong API for sequentially
building up a plot, but does not concern itself with composition of multiple
plots. Patchwork is a package that expands the API to allow for arbitrarily
-complex composition of plots by providing mathmatical operators for combining
+complex composition of plots by providing mathematical operators for combining
multiple plots.")
(license license:expat)))
@@ -16659,13 +16655,13 @@ function and interfaces to external frameworks.")
(define-public r-covr
(package
(name "r-covr")
- (version "3.5.0")
+ (version "3.5.1")
(source
(origin
(method url-fetch)
(uri (cran-uri "covr" version))
(sha256
- (base32 "1pvr95h7jg9hqq1qq1cccy323pkxldrwafl08151cc410499k4fb"))))
+ (base32 "0v5cv3cw2kpdr6wxmkbd3wclavr17zipypdcb10hhmpa4cvgqk55"))))
(properties `((upstream-name . "covr")))
(build-system r-build-system)
(propagated-inputs
@@ -16692,14 +16688,14 @@ both R code and compiled C/C++/FORTRAN code.")
(define-public r-systemfonts
(package
(name "r-systemfonts")
- (version "0.3.1")
+ (version "0.3.2")
(source
(origin
(method url-fetch)
(uri (cran-uri "systemfonts" version))
(sha256
(base32
- "0ldxgcayyisp2gcbv4xw9zpb48bp4czi8016kq5nqdqhv1qb3sz0"))))
+ "12hdvv66kkd3b4rs82blc3c4ifz2dw1048sqpkbz6vkk1zqpc53x"))))
(properties `((upstream-name . "systemfonts")))
(build-system r-build-system)
(propagated-inputs
@@ -16840,14 +16836,14 @@ in pipelines.")
(define-public r-parameters
(package
(name "r-parameters")
- (version "0.8.5")
+ (version "0.8.6")
(source
(origin
(method url-fetch)
(uri (cran-uri "parameters" version))
(sha256
(base32
- "1vax5p1znq2ddbks2i614hbrnn2x6x71942xx49p813qk8dh284l"))))
+ "0z4qy62pxiwnsgi77ydymlc12ss9p9gbqljik2h0rwlmkpmk016w"))))
(properties `((upstream-name . "parameters")))
(build-system r-build-system)
(propagated-inputs
@@ -16869,18 +16865,18 @@ effect size.")
(define-public r-rgdal
(package
(name "r-rgdal")
- (version "1.5-16")
+ (version "1.5-17")
(source
(origin
(method url-fetch)
(uri (cran-uri "rgdal" version))
(sha256
- (base32 "0rwlsafqxgqflfid4ciaa9qz3f75fgw8hilhaqj558gdxg8bzigp"))))
+ (base32 "16vk3a8azbqhv4m598i78hs9m1nlfcls6lx011v0wgiw6ksq64zw"))))
(properties `((upstream-name . "rgdal")))
(build-system r-build-system)
(inputs
`(("gdal" ,gdal)
- ("proj.4" ,proj.4)
+ ("proj" ,proj)
("zlib" ,zlib)))
(propagated-inputs
`(("r-sp" ,r-sp)))
@@ -17123,14 +17119,14 @@ structural data.")
(define-public r-bios2cor
(package
(name "r-bios2cor")
- (version "2.1")
+ (version "2.2")
(source
(origin
(method url-fetch)
(uri (cran-uri "Bios2cor" version))
(sha256
(base32
- "04wk1cjrrxhpv1kdhd67r1qvjv268xxi0z0r105wy912110z9m6x"))))
+ "1wkj9vr33m9jilidil9jpw5rzr3pf7gkimxdvch22ks4bgkx7l1w"))))
(properties `((upstream-name . "Bios2cor")))
(build-system r-build-system)
(propagated-inputs
@@ -18028,14 +18024,14 @@ See e.g. Gentle (2003) @url{doi:10.1007/b97336}.")
(define-public r-lhs
(package
(name "r-lhs")
- (version "1.0.2")
+ (version "1.1.1")
(source
(origin
(method url-fetch)
(uri (cran-uri "lhs" version))
(sha256
(base32
- "0n0i1hr9gmc0hfcs2cvpjvdfgm6k26rhcq3q22r8ic0gfj953572"))))
+ "1p4h03qlijs2a59wfd4rlvdlb9i87pw2zm8xsjd6yzz8vlm9yglh"))))
(properties `((upstream-name . "lhs")))
(build-system r-build-system)
(propagated-inputs `(("r-rcpp" ,r-rcpp)))
@@ -18051,14 +18047,14 @@ Latin Hypercube Samples.")
(define-public r-acebayes
(package
(name "r-acebayes")
- (version "1.9")
+ (version "1.10")
(source
(origin
(method url-fetch)
(uri (cran-uri "acebayes" version))
(sha256
(base32
- "1imfwm1vpbb24vfmfn1nljhmaz8429mwjihw34892p387s8h7xz2"))))
+ "11bffz430gdfdaxjx3simig66vhynmx6l1ylac4q2shcmj52nx73"))))
(properties `((upstream-name . "acebayes")))
(build-system r-build-system)
(propagated-inputs
@@ -19654,7 +19650,7 @@ on distances rather than on unit x variables.")
"This package provides tools for depth functions methodology applied to
multivariate analysis. Besides allowing calculation of depth values and
depth-based location estimators, the package includes functions or drawing
-contour plots and perspective plots of depth functions. Euclidian and
+contour plots and perspective plots of depth functions. Euclidean and
spherical depths are supported.")
(license license:gpl2)))
@@ -19907,14 +19903,14 @@ generation for the Poisson binomial distribution.")
(define-public r-diagram
(package
(name "r-diagram")
- (version "1.6.4")
+ (version "1.6.5")
(source
(origin
(method url-fetch)
(uri (cran-uri "diagram" version))
(sha256
(base32
- "0f6ffprn5k0ir1s7m9s7izc64aa17r3gnygagz5bihrlsvawaavw"))))
+ "1r3lyl0h7mk9cfg8smr3jydfkjdawaphnxibkxfjqa7029vkxh79"))))
(properties `((upstream-name . "diagram")))
(build-system r-build-system)
(propagated-inputs
@@ -20485,14 +20481,14 @@ Norwegian, Portuguese, Romanian, Russian, Spanish, Swedish and Turkish.")
(define-public r-quanteda
(package
(name "r-quanteda")
- (version "2.1.1")
+ (version "2.1.2")
(source
(origin
(method url-fetch)
(uri (cran-uri "quanteda" version))
(sha256
(base32
- "1wlrd7g2b459pnkqhihxhn74f37py1c9pxrdzp5xzp4mnbdxcsj8"))))
+ "13rjwgmg5v1dbryrs9ifyy76s5ib6wrbrm2y5af44vhf1h6p9cvy"))))
(properties `((upstream-name . "quanteda")))
(build-system r-build-system)
(propagated-inputs
@@ -20561,14 +20557,14 @@ Gibbs sampling by Xuan-Hieu Phan and co-authors.")
(define-public r-stm
(package
(name "r-stm")
- (version "1.3.5")
+ (version "1.3.6")
(source
(origin
(method url-fetch)
(uri (cran-uri "stm" version))
(sha256
(base32
- "1yyfxaxqc6yq0yq68zhdnhpwpvsyp71dlmivn7zxixfmp932s6cn"))))
+ "0qwq4nin2n9fjd06852r8k7arvcgh46kcfb3lm21swgx6j8bgrhb"))))
(properties `((upstream-name . "stm")))
(build-system r-build-system)
(propagated-inputs
@@ -20770,14 +20766,14 @@ least squares.")
(define-public r-regsem
(package
(name "r-regsem")
- (version "1.5.2")
+ (version "1.6.2")
(source
(origin
(method url-fetch)
(uri (cran-uri "regsem" version))
(sha256
(base32
- "0ch057010xfsw0nqcsarzakdbiplvxaldyqlbbacspqs65ax1yk7"))))
+ "14nrzyrkrijdrr4jwkri5zra2wh36w68wy6xs600l2z1633h2lmn"))))
(properties `((upstream-name . "regsem")))
(build-system r-build-system)
(propagated-inputs
@@ -20785,6 +20781,8 @@ least squares.")
("r-rcpp" ,r-rcpp)
("r-rcpparmadillo" ,r-rcpparmadillo)
("r-rsolnp" ,r-rsolnp)))
+ (native-inputs
+ `(("r-knitr" ,r-knitr)))
(home-page "https://cran.r-project.org/package=regsem")
(synopsis "Regularized structural equation modeling")
(description
@@ -20839,14 +20837,14 @@ and analyze Stan models.")
(define-public r-rpf
(package
(name "r-rpf")
- (version "1.0.4")
+ (version "1.0.5")
(source
(origin
(method url-fetch)
(uri (cran-uri "rpf" version))
(sha256
(base32
- "17crcgsbcsh0c00n7bgdqfnd7n1vzz7drfxjs7d18253yl5x44pl"))))
+ "0kz7i7g3l16irz6bxgnkxdmmd931m1fk6rl72dvs21ir5brr010l"))))
(properties `((upstream-name . "rpf")))
(build-system r-build-system)
(propagated-inputs
@@ -21937,7 +21935,7 @@ appropriate dog and cat images for many status codes.")
(build-system r-build-system)
(propagated-inputs
`(("r-stringr" ,r-stringr)
- ("r-magrittr", r-magrittr)))
+ ("r-magrittr" ,r-magrittr)))
(home-page "https://github.com/stefano-meschiari/latex2exp/")
(synopsis "Use LaTeX expressions in plots")
(description "@code{latex2exp} parses and converts LaTeX math formulas to
@@ -22141,7 +22139,7 @@ general, via different versions of bridge sampling.")
(description
"This package provides different approaches for selecting the threshold
in generalized Pareto distributions. Most of them are based on minimizing the
-AMSE-criterion or atleast by reducing the bias of the assumed GPD-model.
+AMSE-criterion or at least by reducing the bias of the assumed GPD-model.
Others are heuristically motivated by searching for stable sample paths, i.e.
a nearly constant region of the tail index estimator with respect to k, which
is the number of data in the tail. The third class is motivated by graphical
@@ -22174,14 +22172,14 @@ is also implemented here.")
(define-public r-aws
(package
(name "r-aws")
- (version "2.4-3")
+ (version "2.5")
(source
(origin
(method url-fetch)
(uri (cran-uri "aws" version))
(sha256
(base32
- "0ccm8ffjf8bylhfr64j9wzi49hzigz4bs172pvkb0bi4d5vdr0l5"))))
+ "1mwg1q7l4a07g5aa9c6kh3fpl9lakk01pbzlk7ixbpy12yfvj9nm"))))
(properties
`((upstream-name . "aws")))
(build-system r-build-system)
@@ -22338,21 +22336,22 @@ infinite-precision rational arithmetic.")
(define-public r-rxnat
(package
(name "r-rxnat")
- (version "1.0.12")
+ (version "1.0.14")
(source
(origin
(method url-fetch)
(uri (cran-uri "Rxnat" version))
(sha256
(base32
- "06w99b5lvpycykzlga6grw33zkajwbb04s89s37wy9zxy42vc4cb"))))
+ "00fl68pa0c2vy4xlny67pn41lzgm7b97wgg3dwm6z35izca62l11"))))
(properties
`((upstream-name . "Rxnat")))
(build-system r-build-system)
(propagated-inputs
`(("r-dplyr" ,r-dplyr)
("r-httr" ,r-httr)
- ("r-rcurl" ,r-rcurl)))
+ ("r-rcurl" ,r-rcurl)
+ ("r-tibble" ,r-tibble)))
(native-inputs
`(("r-knitr" ,r-knitr)))
(home-page "https://cran.r-project.org/web/packages/Rxnat/")
@@ -22575,50 +22574,6 @@ Try a demo of the LSD by running @code{demotour()}.")
;; Either version
(license (list license:gpl2 license:gpl3))))
-(define-public r-fourcseq
- (package
- (name "r-fourcseq")
- (version "1.22.1")
- (source
- (origin
- (method url-fetch)
- (uri (bioconductor-uri "FourCSeq" version))
- (sha256
- (base32 "14q1ijnqnbd9xs60sfvyqjfiypjrvhacpwp2v85yfhcxw870cx5b"))))
- (properties `((upstream-name . "FourCSeq")))
- (build-system r-build-system)
- (propagated-inputs
- `(("r-biobase" ,r-biobase)
- ("r-biostrings" ,r-biostrings)
- ("r-deseq2" ,r-deseq2)
- ("r-fda" ,r-fda)
- ("r-genomicalignments" ,r-genomicalignments)
- ("r-genomicranges" ,r-genomicranges)
- ("r-ggbio" ,r-ggbio)
- ("r-ggplot2" ,r-ggplot2)
- ("r-gtools" ,r-gtools)
- ("r-lsd" ,r-lsd)
- ("r-matrix" ,r-matrix)
- ("r-reshape2" ,r-reshape2)
- ("r-rsamtools" ,r-rsamtools)
- ("r-rtracklayer" ,r-rtracklayer)
- ("r-summarizedexperiment" ,r-summarizedexperiment)))
- (native-inputs
- `(("r-knitr" ,r-knitr)))
- (home-page
- "https://bioconductor.org/packages/release/bioc/html/FourCSeq.html")
- (synopsis "Analysis of multiplexed 4C sequencing data")
- (description
- "This package is an R package dedicated to the analysis of (multiplexed)
-4C sequencing data. @code{r-fourcseq} provides a pipeline to detect specific
-interactions between DNA elements and identify differential interactions
-between conditions. The statistical analysis in R starts with individual bam
-files for each sample as inputs. To obtain these files, the package contains
-a Python script to demultiplex libraries and trim off primer sequences. With
-a standard alignment software the required bam files can be then be
-generated.")
- (license license:gpl3+)))
-
(define-public r-phylogram
(package
(name "r-phylogram")
@@ -22786,14 +22741,14 @@ incremented as outlined at @url{http://semver.org}.")
(define-public r-binman
(package
(name "r-binman")
- (version "0.1.1")
+ (version "0.1.2")
(source
(origin
(method url-fetch)
(uri (cran-uri "binman" version))
(sha256
(base32
- "0hm0h285p4v9lhrqjy8s22f1s1vmfpfla5iaycpj8vw3qb3632az"))))
+ "00l7m98h41r67gf0qxqis3vx63j7wylnk9vlgcyk41szkrz8ikkc"))))
(properties `((upstream-name . "binman")))
(build-system r-build-system)
(propagated-inputs
@@ -23138,14 +23093,14 @@ formal inference.")
(define-public r-gaston
(package
(name "r-gaston")
- (version "1.5.6")
+ (version "1.5.7")
(source
(origin
(method url-fetch)
(uri (cran-uri "gaston" version))
(sha256
(base32
- "1bx6iqfjb9lf3vn0z7v8wjv9m7issvqsnymm4qsgl3622s6qz6rg"))))
+ "14z94dpln4dvgrv2w7w9ik7h6rpvbf02qhq1hqzx8c2cndzxr21i"))))
(properties `((upstream-name . "gaston")))
(build-system r-build-system)
(inputs `(("zlib" ,zlib)))
@@ -23166,14 +23121,14 @@ for linear mixed models (AIREML).")
(define-public r-cpp11
(package
(name "r-cpp11")
- (version "0.2.1")
+ (version "0.2.2")
(source
(origin
(method url-fetch)
(uri (cran-uri "cpp11" version))
(sha256
(base32
- "1113y61lj4cg1d2yjavdx9zih5rzb4pnxmj5v3sr4bhzlxz2scda"))))
+ "1b1h7kjl3xrd4nfly7wd6v8mbyancm632r4k37pafs8xi6cqm848"))))
(properties `((upstream-name . "cpp11")))
(build-system r-build-system)
(native-inputs `(("r-knitr" ,r-knitr)))
@@ -23744,14 +23699,14 @@ more.")
(define-public r-workflows
(package
(name "r-workflows")
- (version "0.1.3")
+ (version "0.2.0")
(source
(origin
(method url-fetch)
(uri (cran-uri "workflows" version))
(sha256
(base32
- "1d5njd1xdl8kghlbar4acgl9hxq83p6k7yks592cvakmcz7f853m"))))
+ "1mj0ibl6myzw5vl5n4gcfy7fz8wd1755kp8sdy18isxg8h5h23ya"))))
(properties `((upstream-name . "workflows")))
(build-system r-build-system)
(propagated-inputs
@@ -23761,7 +23716,8 @@ more.")
("r-glue" ,r-glue)
("r-hardhat" ,r-hardhat)
("r-parsnip" ,r-parsnip)
- ("r-rlang" ,r-rlang)))
+ ("r-rlang" ,r-rlang)
+ ("r-tidyselect" ,r-tidyselect)))
(native-inputs
`(("r-knitr" ,r-knitr)))
(home-page "https://github.com/tidymodels/workflows")
@@ -23836,25 +23792,81 @@ to a data set such as confusion matrices, class probability curve summaries,
and regression metrics (e.g., RMSE).")
(license license:gpl2)))
+(define-public r-warp
+ (package
+ (name "r-warp")
+ (version "0.1.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (cran-uri "warp" version))
+ (sha256
+ (base32
+ "16bmym91h0sbbh4iqasqs0f4kp3jqlm3sqgc356mznhxwnsm8dm2"))))
+ (properties `((upstream-name . "warp")))
+ (build-system r-build-system)
+ (native-inputs `(("r-knitr" ,r-knitr)))
+ (home-page "https://github.com/DavisVaughan/warp")
+ (synopsis "Group dates")
+ (description
+ "This package provides tooling to group dates by a variety of periods
+including: yearly, monthly, by second, by week of the month, and more. The
+groups are defined in such a way that they also represent the distance between
+dates in terms of the period. This extracts valuable information that can be
+used in further calculations that rely on a specific temporal spacing between
+observations.")
+ (license license:expat)))
+
+(define-public r-slider
+ (package
+ (name "r-slider")
+ (version "0.1.5")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (cran-uri "slider" version))
+ (sha256
+ (base32
+ "1x4jwfxam4czfkb1s5qds5krfw1h2p5a4rh6f5z4yvhsv0d81xck"))))
+ (properties `((upstream-name . "slider")))
+ (build-system r-build-system)
+ (propagated-inputs
+ `(("r-glue" ,r-glue)
+ ("r-rlang" ,r-rlang)
+ ("r-vctrs" ,r-vctrs)
+ ("r-warp" ,r-warp)))
+ (native-inputs `(("r-knitr" ,r-knitr)))
+ (home-page "https://github.com/DavisVaughan/slider")
+ (synopsis "Sliding window functions")
+ (description
+ "This package provides type-stable rolling window functions over any R
+data type. Cumulative and expanding windows are also supported. For more
+advanced usage, an index can be used as a secondary vector that defines how
+sliding windows are to be created.")
+ (license license:expat)))
+
(define-public r-rsample
(package
(name "r-rsample")
- (version "0.0.7")
+ (version "0.0.8")
(source
(origin
(method url-fetch)
(uri (cran-uri "rsample" version))
(sha256
(base32
- "0s6hgq0rcv3ianyidq3n9z34y5ww51gaggqkwmwns9yyxmwfjcm8"))))
+ "1psmxk16d4bz1v05x0gb9hn4brkdjxw8hjbxmj62snichnix3q3i"))))
(properties `((upstream-name . "rsample")))
(build-system r-build-system)
(propagated-inputs
`(("r-dplyr" ,r-dplyr)
+ ("r-ellipsis" ,r-ellipsis)
("r-furrr" ,r-furrr)
("r-generics" ,r-generics)
+ ("r-modeldata" ,r-modeldata)
("r-purrr" ,r-purrr)
("r-rlang" ,r-rlang)
+ ("r-slider" ,r-slider)
("r-tibble" ,r-tibble)
("r-tidyr" ,r-tidyr)
("r-tidyselect" ,r-tidyselect)
@@ -23891,14 +23903,14 @@ Design} (SFD) and to test their quality.")
(define-public r-dials
(package
(name "r-dials")
- (version "0.0.8")
+ (version "0.0.9")
(source
(origin
(method url-fetch)
(uri (cran-uri "dials" version))
(sha256
(base32
- "0jxmlcy20y57chflx91fqz6c4pbdckzr7jirq4s72vp723avrr4p"))))
+ "0g9wj2py4wz703rh4p7hk8qxqnkm7zyrypv4qz4vaqziazjsmxks"))))
(properties `((upstream-name . "dials")))
(build-system r-build-system)
(propagated-inputs
@@ -24003,14 +24015,14 @@ models without involving a test set.")
(define-public r-tidypredict
(package
(name "r-tidypredict")
- (version "0.4.6")
+ (version "0.4.7")
(source
(origin
(method url-fetch)
(uri (cran-uri "tidypredict" version))
(sha256
(base32
- "1fx1nr8fry3nwy2391g26zkqakdf8f3j7zyrihbc0qhscvbdskiy"))))
+ "0z0wr0ssl1h0smr9431cy1ik5kxfy1nvkdcyyq9c0355h828hybh"))))
(properties `((upstream-name . "tidypredict")))
(build-system r-build-system)
(propagated-inputs
@@ -24019,7 +24031,9 @@ models without involving a test set.")
("r-knitr" ,r-knitr)
("r-purrr" ,r-purrr)
("r-rlang" ,r-rlang)
- ("r-tibble" ,r-tibble)))
+ ("r-stringr" ,r-stringr)
+ ("r-tibble" ,r-tibble)
+ ("r-tidyr" ,r-tidyr)))
(native-inputs
`(("r-knitr" ,r-knitr)))
(home-page "https://tidypredict.tidymodels.org")
@@ -24125,14 +24139,14 @@ vignettes in all common formats.")
(define-public r-tidytext
(package
(name "r-tidytext")
- (version "0.2.5")
+ (version "0.2.6")
(source
(origin
(method url-fetch)
(uri (cran-uri "tidytext" version))
(sha256
(base32
- "0kwbpffdnqrb6hgrrmrfnx890imbzvp5bs6sj1k72if28qijarm5"))))
+ "0xmjkab7p13ncfglf3a9hvndf8fh96mmxw3l7hcpbnaq9qkiwk29"))))
(properties `((upstream-name . "tidytext")))
(build-system r-build-system)
(propagated-inputs
@@ -24437,13 +24451,13 @@ as allowing spectra with different resolutions.")
(define-public r-seurat
(package
(name "r-seurat")
- (version "3.2.1")
+ (version "3.2.2")
(source (origin
(method url-fetch)
(uri (cran-uri "Seurat" version))
(sha256
(base32
- "0jipc4xpmx56jzc31w6nsl77ah8x8wq7jclg2mxhjql4ixkwmz54"))))
+ "048vnj0c3mrwhr6yq3jqhgnkg68w99nj1ccsmgnd8rl694w26spj"))))
(properties `((upstream-name . "Seurat")))
(build-system r-build-system)
(propagated-inputs
@@ -24584,3 +24598,32 @@ enrichment analysis (GSEA) calculation with or without the absolute filtering.
Without filtering, users can perform (original) two-tailed or one-tailed
absolute GSEA.")
(license license:gpl2)))
+
+(define-public r-calculus
+ (package
+ (name "r-calculus")
+ (version "0.2.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (cran-uri "calculus" version))
+ (sha256
+ (base32
+ "0hs7hzjl6xjza20v9zx9a1piywxa6w3h2rskr52d1dcbc0vwhinp"))))
+ (properties `((upstream-name . "calculus")))
+ (build-system r-build-system)
+ (propagated-inputs
+ `(("r-rcpp" ,r-rcpp)))
+ (home-page "https://github.com/guidotti/calculus")
+ (synopsis "High dimensional numerical and symbolic calculus")
+ (description
+ "Efficient C++ optimized functions for numerical and symbolic calculus.
+It includes basic symbolic arithmetic, tensor calculus, Einstein summing
+convention, fast computation of the Levi-Civita symbol and generalized
+Kronecker delta, Taylor series expansion, multivariate Hermite polynomials,
+accurate high-order derivatives, differential operators (Gradient, Jacobian,
+Hessian, Divergence, Curl, Laplacian) and numerical integration in arbitrary
+orthogonal coordinate systems: cartesian, polar, spherical, cylindrical,
+parabolic or user defined by custom scale factors.")
+ (license license:gpl3)))
+
diff --git a/gnu/packages/crates-graphics.scm b/gnu/packages/crates-graphics.scm
new file mode 100644
index 0000000000..9193479092
--- /dev/null
+++ b/gnu/packages/crates-graphics.scm
@@ -0,0 +1,2374 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2020 Valentin Ignatev <valentignatev@gmail.com>
+;;; Copyright © 2020 Hartmut Goebel <h.goebel@crazy-compilers.com>
+;;; Copyright © 2020 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2020 John Soo <jsoo1@asu.edu>
+;;; Copyright © 2020 Gabriel Arazas <foo.dogsquared@gmail.com>
+;;; Copyright © 2020 Raghav Gururajan <raghavgururajan@disroot.org>
+;;; Copyright © 2020 Danny Milosavljevic <dannym@scratchpost.org>
+;;; Copyright © 2020 Tobias Geerinckx-Rice <me@tobias.gr>
+;;; Copyright © 2020 Leo Famulari <leo@famulari.name>
+;;;
+;;; This file is part of GNU Guix.
+;;;
+;;; GNU Guix is free software; you can redistribute it and/or modify it
+;;; under the terms of the GNU General Public License as published by
+;;; the Free Software Foundation; either version 3 of the License, or (at
+;;; your option) any later version.
+;;;
+;;; GNU Guix is distributed in the hope that it will be useful, but
+;;; WITHOUT ANY WARRANTY; without even the implied warranty of
+;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;;; GNU General Public License for more details.
+;;;
+;;; You should have received a copy of the GNU General Public License
+;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
+
+(define-module (gnu packages crates-graphics)
+ #:use-module (guix build-system cargo)
+ #:use-module (guix download)
+ #:use-module ((guix licenses) #:prefix license:)
+ #:use-module (guix packages)
+ #:use-module (gnu packages)
+ #:use-module (gnu packages crates-io)
+ #:use-module (gnu packages freedesktop)
+ #:use-module (gnu packages llvm)
+ #:use-module (gnu packages pkg-config)
+ #:use-module (gnu packages python)
+ #:use-module (gnu packages video))
+
+;;;
+;;; Please: Try to add new module packages in alphabetic order.
+
+(define-public rust-andrew-0.2
+ (package
+ (name "rust-andrew")
+ (version "0.2.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "andrew" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0pmklwcwy8g1jras46fz8xcny779zfqpg4riksrbdhkjk3w0jzwv"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-line-drawing" ,rust-line-drawing-0.7)
+ ("rust-rusttype" ,rust-rusttype-0.7)
+ ("rust-walkdir" ,rust-walkdir-2)
+ ("rust-xdg" ,rust-xdg-2.2)
+ ("rust-xml-rs" ,rust-xml-rs-0.8))
+ #:cargo-development-inputs
+ (("rust-smithay-client-toolkit" ,rust-smithay-client-toolkit-0.4))))
+ (inputs
+ `(("wayland" ,wayland)))
+ (home-page "https://github.com/trimental/andrew")
+ (synopsis "Provides convenient drawing of objects to buffers")
+ (description
+ "The @code{andrew} crate provides convenient drawing of objects such as
+shapes, lines and text to buffers.")
+ (license license:expat)))
+
+(define-public rust-ansi-colours-1
+ (package
+ (name "rust-ansi-colours")
+ (version "1.0.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "ansi_colours" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1dnqmpk68mzvncj37jlv0362kdgsgjxg010c6psagimgh4m303qx"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-cc" ,rust-cc-1))
+ #:cargo-development-inputs
+ (("rust-delta-e" ,rust-delta-e-0.2)
+ ("rust-lab" ,rust-lab-0.4))))
+ (home-page "https://github.com/mina86/ansi_colours")
+ (synopsis "Palette converter between true-colour and ANSI terminal")
+ (description
+ "@code{ansi_colours} is a library which converts between 24-bit sRGB
+colours and 8-bit colour palette used by ANSI terminals such as @code{xterm} on
+@code{rxvt-unicode} in 256-colour mode.
+The most common use case is when using 24-bit colours in a terminal emulator
+which only support 8-bit colour palette. This package allows true-colours to be
+approximated by values supported by the terminal.")
+ (license license:lgpl3+)))
+
+(define-public rust-ansi-term-0.12
+ (package
+ (name "rust-ansi-term")
+ (version "0.12.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "ansi_term" version))
+ (file-name (string-append name "-" version ".crate"))
+ (sha256
+ (base32
+ "1ljmkbilxgmhavxvxqa7qvm6f3fjggi7q2l3a72q9x0cxjvrnanm"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-serde" ,rust-serde-1)
+ ("rust-winapi" ,rust-winapi-0.3))
+ #:cargo-development-inputs
+ (("rust-doc-comment" ,rust-doc-comment-0.3)
+ ("rust-regex" ,rust-regex-1)
+ ("rust-serde-json" ,rust-serde-json-1))))
+ (home-page "https://github.com/ogham/rust-ansi-term")
+ (synopsis "Library for ANSI terminal colours and styles")
+ (description
+ "This is a library for controlling colours and formatting, such as red bold
+text or blue underlined text, on ANSI terminals.")
+ (license license:expat)))
+
+(define-public rust-ansi-term-0.11
+ (package
+ (inherit rust-ansi-term-0.12)
+ (name "rust-ansi-term")
+ (version "0.11.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "ansi_term" version))
+ (file-name (string-append name "-" version ".crate"))
+ (sha256
+ (base32
+ "16wpvrghvd0353584i1idnsgm0r3vchg8fyrm0x8ayv1rgvbljgf"))))
+ (arguments
+ `(#:skip-build? #t
+ #:cargo-inputs
+ (("rust-winapi" ,rust-winapi-0.3))))))
+
+(define-public rust-ansi-term-0.9
+ (package
+ (inherit rust-ansi-term-0.11)
+ (name "rust-ansi-term")
+ (version "0.9.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "ansi_term" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1xif1bh938qpfc3d0f9xgidibpm65xix11w9gszwqnia00q7rb13"))))
+ (arguments `())))
+
+(define-public rust-aom-sys-0.1
+ (package
+ (name "rust-aom-sys")
+ (version "0.1.4")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "aom-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1bqcpkycv1d67r6jcl9npfbw6rkl829rdq9w6vlpb0rjqxp0xzsn"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bindgen" ,rust-bindgen-0.53)
+ ("rust-metadeps" ,rust-metadeps-1.1))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'set-environmental-variable
+ (lambda* (#:key inputs #:allow-other-keys)
+ (let ((clang (assoc-ref inputs "libclang")))
+ (setenv "LIBCLANG_PATH"
+ (string-append clang "/lib")))
+ #t)))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("libaom" ,libaom)
+ ("libclang" ,clang)
+ ("llvm" ,llvm)))
+ (home-page "https://github.com/rust-av/aom-rs")
+ (synopsis "FFI bindings to aom")
+ (description "This package provides FFI bindings to aom.")
+ (license license:expat)))
+
+(define-public rust-ascii-canvas-2
+ (package
+ (name "rust-ascii-canvas")
+ (version "2.0.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "ascii-canvas" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32 "0a9s8vrbc5jr6ry5ygjyfqmbs9gyya1v6dsxzsczpai8z4nvg3pz"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:skip-build? #t ;; TODO: failes due to an unresolved import
+ #:cargo-inputs
+ (("rust-term" ,rust-term-0.5))))
+ (home-page "https://github.com/nikomatsakis/ascii-canvas")
+ (synopsis "Simple canvas for drawing lines and styled text and emitting to
+the terminal")
+ (description "@code{ASCII} canvas is a simple Rust library that allows you
+to draw lines and colored text and then write them to the terminal. It uses
+the term library to handle the ANSI nonsense and hence it works on Windows,
+Mac, and Unix.")
+ (license (list license:asl2.0 license:expat))))
+
+(define-public rust-cgl-0.3
+ (package
+ (name "rust-cgl")
+ (version "0.3.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "cgl" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1zs7skrsyrsm759vfy2cygkx52fx91b567a12bpaz1sf4d8hbv8c"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:skip-build? #t ; only available on macOS
+ #:cargo-inputs (("rust-libc" ,rust-libc-0.2))))
+ (home-page "https://github.com/servo/cgl-rs")
+ (synopsis "Rust bindings for CGL on Mac")
+ (description "Rust bindings for CGL on Mac.")
+ (license (list license:expat license:asl2.0))))
+
+(define-public rust-cgl-0.2
+ (package
+ (inherit rust-cgl-0.3)
+ (name "rust-cgl")
+ (version "0.2.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "cgl" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0j8ayr8pbwvyv6l8r7m5z197rs3pqn97085w9j4rfn7yfh5yrrsm"))))
+ (arguments
+ `(#:skip-build? #t ; only available on macOS
+ #:cargo-inputs
+ (("rust-gleam" ,rust-gleam-0.6)
+ ("rust-libc" ,rust-libc-0.2))))))
+
+(define-public rust-cgmath-0.17
+ (package
+ (name "rust-cgmath")
+ (version "0.17.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "cgmath" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1rvgila6ivr0dh1bxza450a4yfwdi2pwj3h1vnwg0jy4xk6l8f98"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:skip-build? #t ; Crate won't build without glium.
+ #:cargo-inputs
+ (("rust-approx" ,rust-approx-0.3)
+ ("rust-mint" ,rust-mint-0.5)
+ ("rust-num-traits" ,rust-num-traits-0.2)
+ ("rust-rand" ,rust-rand-0.6)
+ ("rust-serde" ,rust-serde-1)
+ ("rust-simd" ,rust-simd-0.2))
+ #:cargo-development-inputs
+ (;("rust-glium" ,rust-glium-0.23)
+ ("rust-serde-json" ,rust-serde-json-1))))
+ (home-page "https://github.com/brendanzab/cgmath")
+ (synopsis "Linear algebra and mathematics library")
+ (description
+ "This package provides a linear algebra and mathematics library
+for computer graphics.")
+ (license license:asl2.0)))
+
+(define-public rust-cgmath-0.16
+ (package
+ (inherit rust-cgmath-0.17)
+ (name "rust-cgmath")
+ (version "0.16.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "cgmath" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "07754c03v3srzf64ghsl3fggrdi4kjy6l3vyq2d2wfjfixybb934"))))
+ (arguments
+ `(#:skip-build? #t ; Crate won't build without glium.
+ #:cargo-inputs
+ (("rust-approx" ,rust-approx-0.1)
+ ("rust-mint" ,rust-mint-0.5)
+ ("rust-num-traits" ,rust-num-traits-0.1)
+ ("rust-rand" ,rust-rand-0.4)
+ ("rust-serde" ,rust-serde-1)
+ ("rust-simd" ,rust-simd-0.2))
+ #:cargo-development-inputs
+ (;("rust-glium" ,rust-glium-0.19)
+ ("rust-serde-json" ,rust-serde-json-1))))))
+
+(define-public rust-core-graphics-0.17
+ (package
+ (name "rust-core-graphics")
+ (version "0.17.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "core-graphics" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1acm3vygngnilzlr6klym5ywh7kfzh2xxrh2l41152hwmdl0jyan"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:skip-build? #t ; only for macOS
+ #:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-core-foundation" ,rust-core-foundation-0.6)
+ ("rust-foreign-types" ,rust-foreign-types-0.3)
+ ("rust-libc" ,rust-libc-0.2))))
+ (home-page "https://github.com/servo/core-graphics-rs")
+ (synopsis "Bindings to Core Graphics for macOS")
+ (description
+ "Bindings to Core Graphics for macOS.")
+ (license (list license:expat license:asl2.0))))
+
+(define-public rust-core-video-sys-0.1
+ (package
+ (name "rust-core-video-sys")
+ (version "0.1.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "core-video-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1l59cg88482hkl95ssb30ac9x65hpbdsmxz9s5r6y222jlhnbh4d"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:skip-build? #t ; only for macOS
+ #:cargo-inputs
+ (("rust-cfg-if" ,rust-cfg-if-0.1)
+ ("rust-core-foundation-sys" ,rust-core-foundation-sys-0.6)
+ ("rust-core-graphics" ,rust-core-graphics-0.17)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-metal" ,rust-metal-0.14)
+ ("rust-objc" ,rust-objc-0.2))))
+ (home-page "https://github.com/luozijun/rust-core-video-sys")
+ (synopsis "Bindings to CoreVideo.framework for macOS and iOS")
+ (description "Bindings to CoreVideo.framework for macOS and iOS.")
+ (license license:expat)))
+
+(define-public rust-dav1d-sys-0.3
+ (package
+ (name "rust-dav1d-sys")
+ (version "0.3.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "dav1d-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1jdxhnlxcml6jd67lx78ifzkn1xm18zfk4li7vjdh3fa61i073kx"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bindgen" ,rust-bindgen-0.54)
+ ("rust-metadeps" ,rust-metadeps-1.1))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'set-environmental-variable
+ (lambda* (#:key inputs #:allow-other-keys)
+ (let ((clang (assoc-ref inputs "libclang")))
+ (setenv "LIBCLANG_PATH"
+ (string-append clang "/lib")))
+ #t)))))
+ (inputs
+ `(("dav1d" ,dav1d)
+ ("pkg-config" ,pkg-config)
+ ("libclang" ,clang)
+ ("llvm" ,llvm)))
+ (home-page "https://github.com/rust-av/dav1d-rs")
+ (synopsis "FFI bindings to dav1d")
+ (description "This package provides FFI bindings to dav1d.")
+ (license license:expat)))
+
+(define-public rust-euclid-0.20
+ (package
+ (name "rust-euclid")
+ (version "0.20.10")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "euclid" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0c3hbl0kvc53k6nws0v9d46hi0giza1j079sqx2bgl4wfw65nshc"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-mint" ,rust-mint-0.5)
+ ("rust-num-traits" ,rust-num-traits-0.2)
+ ("rust-serde" ,rust-serde-1))
+ #:cargo-development-inputs
+ (("rust-serde-test" ,rust-serde-test-1))))
+ (home-page "https://github.com/servo/euclid")
+ (synopsis "Geometry primitives")
+ (description "Geometry primitives written in Rust.")
+ (license (list license:expat license:asl2.0))))
+
+(define-public rust-gfx-0.18
+ (package
+ (name "rust-gfx")
+ (version "0.18.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gfx" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0nqmxqi3x4ni0g78g77a6aldrv8cfvzhnpqhxyd2ap4aa3wldph1"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:skip-build? #t
+ #:cargo-inputs
+ (("rust-log" ,rust-log-0.4)
+ ("rust-mint" ,rust-mint-0.5)
+ ("rust-draw-state" ,rust-draw-state-0.8)
+ ("rust-gfx-core" ,rust-gfx-core-0.9))))
+ (home-page "https://github.com/gfx-rs/gfx")
+ (synopsis "High-performance, bindless graphics API")
+ (description
+ "This package provides a high-performance, bindless graphics API.")
+ (license license:asl2.0)))
+
+(define-public rust-gfx-core-0.9
+ (package
+ (name "rust-gfx-core")
+ (version "0.9.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gfx_core" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0haldr99n12d90vqgvl77n59hywlklhdff85j2aljaz1yapdvyvm"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:skip-build? #t
+ #:cargo-inputs
+ (("rust-log" ,rust-log-0.4)
+ ("rust-mint" ,rust-mint-0.5)
+ ("rust-draw-state" ,rust-draw-state-0.8)
+ ("rust-serde" ,rust-serde-1)
+ ("rust-bitflags" ,rust-bitflags-1))))
+ (home-page "https://github.com/gfx-rs/gfx")
+ (synopsis "Core library of Gfx-rs")
+ (description "This package is a core library of Gfx-rs.")
+ (license license:asl2.0)))
+
+(define-public rust-gfx-device-gl-0.16
+ (package
+ (name "rust-gfx-device-gl")
+ (version "0.16.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gfx_device_gl" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1g5yg19jvxdmviljyakhd6253bnb2qg7v8iscf48ihc0ldgki70h"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:skip-build? #t
+ #:cargo-inputs
+ (("rust-log" ,rust-log-0.4)
+ ("rust-gfx-gl" ,rust-gfx-gl-0.6)
+ ("rust-gfx-core" ,rust-gfx-core-0.9))))
+ (home-page "https://github.com/gfx-rs/gfx")
+ (synopsis "OpenGL backend for gfx-rs")
+ (description "This package provides the openGL backend for gfx-rs.")
+ (license license:asl2.0)))
+
+(define-public rust-gfx-gl-0.6
+ (package
+ (name "rust-gfx-gl")
+ (version "0.6.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gfx_gl" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0ppzj4bgjawdqz3fvnscqk8lnmgh95pwzh0v96vwy809cxj83lzj"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:skip-build? #t
+ #:cargo-inputs
+ (("rust-gl-generator" ,rust-gl-generator-0.14))))
+ (home-page "https://github.com/gfx-rs/gfx_gl")
+ (synopsis "OpenGL bindings for gfx, based on gl-rs")
+ (description
+ "This package provides OpenGL bindings for gfx, based on gl-rs.")
+ (license license:asl2.0)))
+
+(define-public rust-gif-0.10
+ (package
+ (name "rust-gif")
+ (version "0.10.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gif" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1bw174f7civdfgryvc8pvyhicpr96hzdajnda4s3y8iv3ch907a7"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:tests? #f ; tests not included in release
+ #:cargo-inputs
+ (("rust-color-quant" ,rust-color-quant-1.0)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-lzw" ,rust-lzw-0.10))
+ #:cargo-development-inputs
+ (("rust-glob" ,rust-glob-0.3))))
+ (home-page "https://github.com/image-rs/image-gif")
+ (synopsis "GIF decoder and encoder")
+ (description "This package provides a GIF decoder and encoder in Rust.")
+ (license (list license:expat license:asl2.0))))
+
+(define-public rust-gl-0.11
+ (package
+ (name "rust-gl")
+ (version "0.11.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gl" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1wcqpyhck0xriffkmgmldy33lwk2044hb4l02d44vm4fbvicin6p"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:skip-build? #t
+ #:cargo-inputs
+ (("rust-gl-generator" ,rust-gl-generator-0.10))))
+ (home-page "https://github.com/brendanzab/gl-rs/")
+ (synopsis "OpenGL bindings for rust")
+ (description "This package provides OpenGL bindings for rust.")
+ (license license:asl2.0)))
+
+(define-public rust-gl-generator-0.14
+ (package
+ (name "rust-gl-generator")
+ (version "0.14.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gl-generator" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0k8j1hmfnff312gy7x1aqjzcm8zxid7ij7dlb8prljib7b1dz58s"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-khronos-api" ,rust-khronos-api-3)
+ ("rust-log" ,rust-log-0.4)
+ ("rust-xml-rs" ,rust-xml-rs-0.8))))
+ (home-page "https://github.com/brendanzab/gl-rs/")
+ (synopsis "Code generators for bindings to the Khronos OpenGL APIs")
+ (description
+ "Code generators for creating bindings to the Khronos OpenGL APIs.")
+ (license license:asl2.0)))
+
+(define-public rust-gl-generator-0.13
+ (package
+ (inherit rust-gl-generator-0.14)
+ (name "rust-gl-generator")
+ (version "0.13.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gl-generator" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0jpqjqpyrl73sf8y20p5rv50qz8glnsvv9infg8h4vi52zgbp66a"))))))
+
+(define-public rust-gl-generator-0.11
+ (package
+ (inherit rust-gl-generator-0.13)
+ (name "rust-gl-generator")
+ (version "0.11.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gl-generator" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1gdchvay0k0g931b2ki33mkfixcw4radk5b8sqsm29rahxg3v8ir"))))))
+
+(define-public rust-gl-generator-0.10
+ (package
+ (name "rust-gl-generator")
+ (version "0.10.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gl_generator" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0146yd4i9wbgfrhnkc04w7n7civbanznc0q87skp6v7p7hbszzx0"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:skip-build? #t
+ #:cargo-inputs
+ (("rust-log" ,rust-log-0.4)
+ ("rust-xml-rs" ,rust-xml-rs-0.8)
+ ("rust-khronos-api" ,rust-khronos-api-3))))
+ (home-page "https://github.com/brendanzab/gl-rs/")
+ (synopsis
+ "Code generators for creating bindings to the Khronos OpenGL APIs")
+ (description
+ "Code generators for creating bindings to the Khronos OpenGL APIs.")
+ (license license:asl2.0)))
+
+(define-public rust-gleam-0.6
+ (package
+ (name "rust-gleam")
+ (version "0.6.19")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gleam" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1iazvk3kvw3620gm6x8hy2x1lz51k04acl78cr3ppryhk5y0vqfa"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-gl-generator" ,rust-gl-generator-0.13))))
+ (home-page "https://github.com/servo/gleam")
+ (synopsis "Generated OpenGL bindings and wrapper for Servo")
+ (description
+ "Generated OpenGL bindings and wrapper for Servo.")
+ (license (list license:asl2.0 license:expat))))
+
+(define-public rust-glutin-0.22
+ (package
+ (name "rust-glutin")
+ (version "0.22.0-alpha5")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "glutin" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0lilr4f335m1fq1acmshd51zblfaglw1hha6lhalnc1fw3cg0aag"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-android-glue" ,rust-android-glue-0.2)
+ ("rust-cgl" ,rust-cgl-0.3)
+ ("rust-cocoa" ,rust-cocoa-0.19)
+ ("rust-core-foundation" ,rust-core-foundation-0.6)
+ ("rust-core-graphics" ,rust-core-graphics-0.17)
+ ("rust-glutin-egl-sys" ,rust-glutin-egl-sys-0.1)
+ ("rust-glutin-emscripten-sys" ,rust-glutin-emscripten-sys-0.1)
+ ("rust-glutin-gles2-sys" ,rust-glutin-gles2-sys-0.1)
+ ("rust-glutin-glx-sys" ,rust-glutin-glx-sys-0.1)
+ ("rust-glutin-wgl-sys" ,rust-glutin-wgl-sys-0.1)
+ ("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-libloading" ,rust-libloading-0.5)
+ ("rust-log" ,rust-log-0.4)
+ ("rust-objc" ,rust-objc-0.2)
+ ("rust-osmesa-sys" ,rust-osmesa-sys-0.1)
+ ("rust-parking-lot" ,rust-parking-lot-0.9)
+ ("rust-wayland-client" ,rust-wayland-client-0.23)
+ ("rust-winapi" ,rust-winapi-0.3)
+ ("rust-winit" ,rust-winit-0.20))))
+ (home-page "https://github.com/tomaka/glutin")
+ (synopsis
+ "Cross-platform OpenGL context provider")
+ (description
+ "Cross-platform OpenGL context provider.")
+ (license license:asl2.0)))
+
+(define-public rust-glutin-0.21
+ (package
+ (inherit rust-glutin-0.22)
+ (name "rust-glutin")
+ (version "0.21.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "glutin" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1ggyyqn7dvz4yx5ygqfvnxwfb78wvdm5y6xqw5my1b4x61dv6wak"))))
+ (arguments
+ `(#:cargo-inputs
+ (("rust-android-glue" ,rust-android-glue-0.2)
+ ("rust-cgl" ,rust-cgl-0.2)
+ ("rust-cocoa" ,rust-cocoa-0.18)
+ ("rust-core-foundation" ,rust-core-foundation-0.6)
+ ("rust-core-graphics" ,rust-core-graphics-0.17)
+ ("rust-glutin-egl-sys" ,rust-glutin-egl-sys-0.1)
+ ("rust-glutin-emscripten-sys" ,rust-glutin-emscripten-sys-0.1)
+ ("rust-glutin-gles2-sys" ,rust-glutin-gles2-sys-0.1)
+ ("rust-glutin-glx-sys" ,rust-glutin-glx-sys-0.1)
+ ("rust-glutin-wgl-sys" ,rust-glutin-wgl-sys-0.1)
+ ("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-libloading" ,rust-libloading-0.5)
+ ("rust-objc" ,rust-objc-0.2)
+ ("rust-osmesa-sys" ,rust-osmesa-sys-0.1)
+ ("rust-parking-lot" ,rust-parking-lot-0.9)
+ ("rust-wayland-client" ,rust-wayland-client-0.21)
+ ("rust-winapi" ,rust-winapi-0.3)
+ ("rust-winit" ,rust-winit-0.19))))))
+
+(define-public rust-glutin-egl-sys-0.1
+ (package
+ (name "rust-glutin-egl-sys")
+ (version "0.1.4")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "glutin-egl-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0k1x1frdp4wp47qkai8zzmgqxzpfcn7780m29qgd92lbnbrxwbkp"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-winapi" ,rust-winapi-0.3)
+ ("rust-gl-generator" ,rust-gl-generator-0.13))))
+ (home-page "https://github.com/rust-windowing/glutin")
+ (synopsis "Egl bindings for glutin")
+ (description "The egl bindings for glutin.")
+ (license license:asl2.0)))
+
+(define-public rust-glutin-emscripten-sys-0.1
+ (package
+ (name "rust-glutin-emscripten-sys")
+ (version "0.1.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "glutin_emscripten_sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1ix0jmm8p5if4qarzdfl5mz9rbq4hhgqarakb3bzwvyz13dkynr4"))))
+ (build-system cargo-build-system)
+ (home-page "https://github.com/tomaka/glutin")
+ (synopsis "Emscripten bindings for glutin")
+ (description "The emscripten bindings for glutin.")
+ (license license:asl2.0)))
+
+(define-public rust-glutin-gles2-sys-0.1
+ (package
+ (name "rust-glutin-gles2-sys")
+ (version "0.1.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "glutin_gles2_sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1pswvl5zyqmqwzjr674yzslj0al2xbqsp2ai9ggb9qbshlq6r6c9"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-objc" ,rust-objc-0.2)
+ ("rust-gl-generator" ,rust-gl-generator-0.11))))
+ (home-page "https://github.com/tomaka/glutin")
+ (synopsis "The gles2 bindings for glutin")
+ (description "The gles2 bindings for glutin.")
+ (license license:asl2.0)))
+
+(define-public rust-glutin-glx-sys-0.1
+ (package
+ (name "rust-glutin-glx-sys")
+ (version "0.1.5")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "glutin-glx-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0mxs3mil68xqqb49466n5rpwpcllj6fwqjgrcrzzmz26bv5ab40j"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-x11-dl" ,rust-x11-dl-2)
+ ("rust-gl-generator" ,rust-gl-generator-0.11))))
+ (home-page "https://github.com/tomaka/glutin")
+ (synopsis "Glx bindings for glutin")
+ (description "The glx bindings for glutin.")
+ (license license:asl2.0)))
+
+(define-public rust-glutin-wgl-sys-0.1
+ (package
+ (name "rust-glutin-wgl-sys")
+ (version "0.1.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "glutin-wgl-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "08chlfzpj59q36qm212i4k879gvjzha7i90q90fds8pw3v4vn0gq"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-gl-generator" ,rust-gl-generator-0.11))))
+ (home-page "https://github.com/tomaka/glutin")
+ (synopsis "Wgl bindings for glutin")
+ (description "The wgl bindings for glutin.")
+ (license license:asl2.0)))
+
+(define-public rust-image-0.23
+ (package
+ (name "rust-image")
+ (version "0.23.6")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "image" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1d2a80k7pwqshliqi5fw1dwkz7q9zd6pjnwpw8zxc1v4xhzmbc5m"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:tests? #f ; Some test images are missing from the release.
+ #:cargo-inputs
+ (("rust-bytemuck" ,rust-bytemuck-1)
+ ("rust-byteorder" ,rust-byteorder-1)
+ ("rust-gif" ,rust-gif-0.10)
+ ("rust-jpeg-decoder" ,rust-jpeg-decoder-0.1)
+ ("rust-num-iter" ,rust-num-iter-0.1)
+ ("rust-num-rational" ,rust-num-rational-0.3)
+ ("rust-num-traits" ,rust-num-traits-0.2)
+ ("rust-png" ,rust-png-0.16)
+ ("rust-scoped-threadpool" ,rust-scoped-threadpool-0.1)
+ ("rust-tiff" ,rust-tiff-0.5))
+ #:cargo-development-inputs
+ (("rust-crc32fast" ,rust-crc32fast-1)
+ ("rust-criterion" ,rust-criterion-0.3)
+ ("rust-glob" ,rust-glob-0.3)
+ ("rust-num-complex" ,rust-num-complex-0.3)
+ ("rust-quickcheck" ,rust-quickcheck-0.9))))
+ (home-page "https://github.com/image-rs/image")
+ (synopsis "Imaging library written in Rust")
+ (description
+ "Imaging library written in Rust. Provides basic filters and decoders
+for the most common image formats.")
+ (license license:expat)))
+
+(define-public rust-image-0.22
+ (package
+ (inherit rust-image-0.23)
+ (name "rust-image")
+ (version "0.22.5")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "image" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0jpbd0p1q7xx6395ba9ikz2k4cfp26qczisa8m2v15w3hzd2mv88"))))
+ (arguments
+ `(#:tests? #f ; Some test images are missing from the release.
+ #:cargo-inputs
+ (("rust-byteorder" ,rust-byteorder-1)
+ ("rust-gif" ,rust-gif-0.10)
+ ("rust-jpeg-decoder" ,rust-jpeg-decoder-0.1)
+ ("rust-num-iter" ,rust-num-iter-0.1)
+ ("rust-num-rational" ,rust-num-rational-0.2)
+ ("rust-num-traits" ,rust-num-traits-0.2)
+ ("rust-png" ,rust-png-0.15)
+ ("rust-scoped-threadpool" ,rust-scoped-threadpool-0.1)
+ ("rust-tiff" ,rust-tiff-0.3))
+ #:cargo-development-inputs
+ (("rust-crc32fast" ,rust-crc32fast-1)
+ ("rust-glob" ,rust-glob-0.3)
+ ("rust-num-complex" ,rust-num-complex-0.2)
+ ("rust-quickcheck" ,rust-quickcheck-0.9))))))
+
+(define-public rust-image-0.21
+ (package
+ (inherit rust-image-0.22)
+ (name "rust-image")
+ (version "0.21.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "image" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1sv534xp8yyn7jj0q6yn2bgng1350f962g81sv8v7c6pgi31wdrm"))))
+ (arguments
+ `(#:cargo-inputs
+ (("rust-byteorder" ,rust-byteorder-1)
+ ("rust-gif" ,rust-gif-0.10)
+ ("rust-jpeg-decoder" ,rust-jpeg-decoder-0.1)
+ ("rust-lzw" ,rust-lzw-0.10)
+ ("rust-num-iter" ,rust-num-iter-0.1)
+ ("rust-num-rational" ,rust-num-rational-0.2)
+ ("rust-num-traits" ,rust-num-traits-0.2)
+ ("rust-png" ,rust-png-0.14)
+ ("rust-scoped-threadpool" ,rust-scoped-threadpool-0.1)
+ ("rust-tiff" ,rust-tiff-0.2))
+ #:cargo-development-inputs
+ (("rust-glob" ,rust-glob-0.3)
+ ("rust-num-complex" ,rust-num-complex-0.2)
+ ("rust-quickcheck" ,rust-quickcheck-0.6))))))
+
+(define-public rust-image-0.20
+ (package
+ (inherit rust-image-0.21)
+ (name "rust-image")
+ (version "0.20.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "image" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "01058n0jcw25pq5shn7lkvywv8c28xsxb3nwwyb4r16ijm1mnrj4"))))
+ (arguments
+ `(#:cargo-inputs
+ (("rust-byteorder" ,rust-byteorder-1)
+ ("rust-gif" ,rust-gif-0.10)
+ ("rust-jpeg-decoder" ,rust-jpeg-decoder-0.1)
+ ("rust-lzw" ,rust-lzw-0.10)
+ ("rust-num-iter" ,rust-num-iter-0.1)
+ ("rust-num-rational" ,rust-num-rational-0.2)
+ ("rust-num-traits" ,rust-num-traits-0.2)
+ ("rust-png" ,rust-png-0.12)
+ ("rust-scoped-threadpool" ,rust-scoped-threadpool-0.1)
+ ("rust-tiff" ,rust-tiff-0.2))
+ #:cargo-development-inputs
+ (("rust-glob" ,rust-glob-0.2)
+ ("rust-num-complex" ,rust-num-complex-0.2)
+ ("rust-quickcheck" ,rust-quickcheck-0.6))))))
+
+(define-public rust-jpeg-decoder-0.1
+ (package
+ (name "rust-jpeg-decoder")
+ (version "0.1.18")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "jpeg-decoder" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0lc428qgffh2a1agkq0p26mvf9rjaiswpywy5883j99mqypg0mh2"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:tests? #f ; Some test files missing.
+ #:cargo-inputs
+ (("rust-byteorder" ,rust-byteorder-1)
+ ("rust-rayon" ,rust-rayon-1))
+ #:cargo-development-inputs
+ (("rust-criterion" ,rust-criterion-0.3)
+ ("rust-png" ,rust-png-0.14)
+ ("rust-walkdir" ,rust-walkdir-2))))
+ (home-page "https://github.com/image-rs/jpeg-decoder")
+ (synopsis "JPEG decoder")
+ (description "JPEG decoder written in Rust.")
+ (license (list license:expat license:asl2.0))))
+
+(define-public rust-line-drawing-0.7
+ (package
+ (name "rust-line-drawing")
+ (version "0.7.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "line_drawing" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1fcna7hq1g1kkkqy07hydscx5d2zgb6gskz3vnsvsif8h8ysvisw"))))
+ (build-system cargo-build-system)
+ (arguments
+ ;; This version does not specify any versions on dependants.
+ `(#:tests? #f ; Cannot compile line_drawing for the test suite.
+ #:cargo-inputs
+ (("rust-num-traits" ,rust-num-traits-0.2))
+ #:cargo-development-inputs
+ (("rust-bresenham" ,rust-bresenham-0.1)
+ ("rust-image" ,rust-image-0.22) ; 0.17?
+ ("rust-rand" ,rust-rand-0.6))))
+ (home-page "https://github.com/expenses/line_drawing")
+ (synopsis "Collection of line-drawing algorithms")
+ (description
+ "This package provides a collection of line-drawing algorithms for use in
+graphics and video games.")
+ (license license:expat)))
+
+(define-public rust-lyon-geom-0.14
+ (package
+ (name "rust-lyon-geom")
+ (version "0.14.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "lyon_geom" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "178z4cqqmyw0rsabbgx9phkjxjzcnq0604062lqjlq87k063216a"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:skip-build? #t
+ #:cargo-inputs
+ (("rust-num-traits" ,rust-num-traits-0.2)
+ ("rust-euclid" ,rust-euclid-0.20)
+ ("rust-arrayvec" ,rust-arrayvec-0.4)
+ ("rust-serde" ,rust-serde-1))))
+ (home-page "https://github.com/nical/lyon")
+ (synopsis "2D graphics rendering on the GPU using tessellation")
+ (description
+ "This package provides 2D graphics rendering on the GPU using tessellation.")
+ (license (list license:expat license:asl2.0))))
+
+(define-public rust-lyon-path-0.14
+ (package
+ (name "rust-lyon-path")
+ (version "0.14.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "lyon_path" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0qk8x46w0sf6j04l6gvhgn9kr4ymcqkmkh67w8wqahm54jn5gjqb"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:skip-build? #t
+ #:cargo-inputs
+ (("rust-lyon-geom" ,rust-lyon-geom-0.14)
+ ("rust-serde" ,rust-serde-1))))
+ (home-page "https://github.com/nical/lyon")
+ (synopsis "Types and utilities to store, build and iterate over 2D paths")
+ (description
+ "Types and utilities to store, build and iterate over 2D paths.")
+ (license (list license:expat license:asl2.0))))
+
+(define-public rust-osmesa-sys-0.1
+ (package
+ (name "rust-osmesa-sys")
+ (version "0.1.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "osmesa-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0fq1q1zcgfb0qydrg9r2738jlwc4hqxgb9vj11z72bjxx7kfrkw8"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-shared-library" ,rust-shared-library-0.1))))
+ (home-page "https://crates.io/crates/osmesa-sys")
+ (synopsis "OSMesa library bindings for Rust")
+ (description "This package provides OSMesa library bindings for Rust.")
+ (license license:cc0)))
+
+(define-public rust-piston-0.49
+ (package
+ (name "rust-piston")
+ (version "0.49.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "piston" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1y0rbw92mzagqmwk79wv9axq0m7aid0s0d5cppyzh33wrxhdl3xj"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:skip-build? #t
+ #:cargo-inputs
+ (("rust-pistoncore-input" ,rust-pistoncore-input-0.28)
+ ("rust-pistoncore-window" ,rust-pistoncore-window-0.44)
+ ("rust-pistoncore-event-loop" ,rust-pistoncore-event-loop-0.49))))
+ (home-page "https://github.com/PistonDevelopers/piston")
+ (synopsis "Piston game engine core libraries")
+ (description
+ "The Piston game engine core libraries.")
+ (license license:expat)))
+
+(define-public rust-piston-float-1.0
+ (package
+ (name "rust-piston-float")
+ (version "1.0.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "piston-float" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0r35aasycms79hf2vf1ap40kkp8ywgl4hmfkf762dq8jwd3vw07r"))))
+ (build-system cargo-build-system)
+ (arguments `(#:skip-build? #t))
+ (home-page
+ "https://github.com/pistondevelopers/float")
+ (synopsis
+ "Traits for generic floats in game development")
+ (description
+ "Traits for generic floats in game development")
+ (license license:expat)))
+
+(define-public rust-piston-gfx-texture-0.40
+ (package
+ (name "rust-piston-gfx-texture")
+ (version "0.40.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "piston-gfx_texture" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1nr5awdgk3njfvfanszrv4gxz93f6skid1c8yijswccygripchqz"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:skip-build? #t
+ #:cargo-inputs
+ (("rust-gfx" ,rust-gfx-0.18)
+ ("rust-image" ,rust-image-0.22)
+ ("rust-piston-texture" ,rust-piston-texture-0.8)
+ ("rust-gfx-core" ,rust-gfx-core-0.9))))
+ (home-page "https://github.com/pistondevelopers/gfx_texture")
+ (synopsis
+ "Gfx texture representation that works nicely with Piston libraries")
+ (description "This package provides a Gfx texture representation that works
+nicely with Piston libraries.")
+ (license license:expat)))
+
+(define-public rust-piston-graphics-api-version-0.2
+ (package
+ (name "rust-piston-graphics-api-version")
+ (version "0.2.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "piston-graphics_api_version" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1b5p6s45jqv057lpbxkiq3yrdjjhvcynmi2vjf8292rf0yh4hky5"))))
+ (build-system cargo-build-system)
+ (arguments `(#:skip-build? #t))
+ (home-page
+ "https://github.com/PistonDevelopers/graphics_api_version")
+ (synopsis
+ "A library for storing graphics API versions")
+ (description
+ "This package provides a library for storing graphics API versions")
+ (license license:expat)))
+
+(define-public rust-piston-shaders-graphics2d-0.3
+ (package
+ (name "rust-piston-shaders-graphics2d")
+ (version "0.3.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "piston-shaders_graphics2d" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1dhh9bv4q19gdnj9d1nqq0yrvzs6gcn0c5j1p1f3xzyzq7d1gg4p"))))
+ (build-system cargo-build-system)
+ (arguments `(#:skip-build? #t))
+ (home-page
+ "https://github.com/PistonDevelopers/shaders")
+ (synopsis "Shaders for 2D graphics in Rust")
+ (description "Shaders for 2D graphics in Rust")
+ (license license:expat)))
+
+(define-public rust-piston-texture-0.8
+ (package
+ (name "rust-piston-texture")
+ (version "0.8.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "piston-texture" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1pcv5my49b8xzqcb87wqh2ndgvr4s9ipys96s0h9j2plxrj3bjb2"))))
+ (build-system cargo-build-system)
+ (arguments `(#:skip-build? #t))
+ (home-page
+ "https://github.com/pistondevelopers/texture")
+ (synopsis "A generic library for textures")
+ (description
+ "This package provides a generic library for textures")
+ (license license:expat)))
+
+(define-public rust-piston-viewport-1.0
+ (package
+ (name "rust-piston-viewport")
+ (version "1.0.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "piston-viewport" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "16378hcy41b7x3zj2z4har0wq6fl4r62kf9p106jjl8hg2dv3aq1"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:skip-build? #t
+ #:cargo-inputs
+ (("rust-piston-float" ,rust-piston-float-1.0))))
+ (home-page "https://github.com/PistonDevelopers/viewport")
+ (synopsis "Library for storing viewport information")
+ (description
+ "This package provides a library for storing viewport information.")
+ (license license:expat)))
+
+(define-public rust-piston-window-0.105
+ (package
+ (name "rust-piston-window")
+ (version "0.105.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "piston_window" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "05n2905gkp5ck25kbq95ia6pj1xz63dpp247jz3xcw1d41xpvi95"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:skip-build? #t
+ #:cargo-inputs
+ (("rust-gfx-device-gl" ,rust-gfx-device-gl-0.16)
+ ("rust-gfx" ,rust-gfx-0.18)
+ ("rust-piston2d-graphics" ,rust-piston2d-graphics-0.35)
+ ("rust-piston" ,rust-piston-0.49)
+ ("rust-shader-version" ,rust-shader-version-0.6)
+ ("rust-pistoncore-glutin-window" ,rust-pistoncore-glutin-window-0.63)
+ ("rust-piston2d-gfx-graphics" ,rust-piston2d-gfx-graphics-0.66)
+ ("rust-piston-texture" ,rust-piston-texture-0.8))))
+ (home-page "https://github.com/pistondevelopers/piston_window")
+ (synopsis "Official Piston window wrapper for the Piston game engine")
+ (description
+ "The official Piston window wrapper for the Piston game engine.")
+ (license license:expat)))
+
+(define-public rust-piston2d-gfx-graphics-0.66
+ (package
+ (name "rust-piston2d-gfx-graphics")
+ (version "0.66.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "piston2d-gfx_graphics" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1pmlkf5rl6pr0c1lqm0059xwj9pwlws7gaq9w6r9d916di6fzki1"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:skip-build? #t
+ #:cargo-inputs
+ (("rust-gfx" ,rust-gfx-0.18)
+ ("rust-piston-shaders-graphics2d" ,rust-piston-shaders-graphics2d-0.3)
+ ("rust-piston-gfx-texture" ,rust-piston-gfx-texture-0.40)
+ ("rust-shader-version" ,rust-shader-version-0.6)
+ ("rust-draw-state" ,rust-draw-state-0.8))))
+ (home-page "https://github.com/PistonDevelopers/gfx_graphics")
+ (synopsis "Gfx 2D back-end for the Piston game engine")
+ (description
+ "This package provides a Gfx 2D back-end for the Piston game engine.")
+ (license license:expat)))
+
+(define-public rust-piston2d-graphics-0.35
+ (package
+ (name "rust-piston2d-graphics")
+ (version "0.35.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "piston2d-graphics" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1dx2fanxc2pj76hc5l72x0fh4qg9gchjlr8rmbhdk6jpggcmq56g"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:skip-build? #t
+ #:cargo-inputs
+ (("rust-interpolation" ,rust-interpolation-0.2)
+ ("rust-rusttype" ,rust-rusttype-0.7)
+ ("rust-piston-texture" ,rust-piston-texture-0.8)
+ ("rust-piston-viewport" ,rust-piston-viewport-1.0)
+ ("rust-read-color" ,rust-read-color-1.0)
+ ("rust-vecmath" ,rust-vecmath-1.0)
+ ("rust-fnv" ,rust-fnv-1))))
+ (home-page "https://github.com/pistondevelopers/graphics")
+ (synopsis "Library for 2D graphics that works with multiple back-ends")
+ (description "This package provides a library for 2D graphics that works
+with multiple back-ends.")
+ (license license:expat)))
+
+(define-public rust-pistoncore-event-loop-0.49
+ (package
+ (name "rust-pistoncore-event-loop")
+ (version "0.49.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "pistoncore-event_loop" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1h9ij9vx42xg39198yxdlpk842pli5jqm2kwswiv3bqqcji0fwsm"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:skip-build? #t
+ #:cargo-inputs
+ (("rust-pistoncore-input" ,rust-pistoncore-input-0.28)
+ ("rust-pistoncore-window" ,rust-pistoncore-window-0.44))))
+ (home-page "https://github.com/PistonDevelopers/piston")
+ (synopsis "Piston event loop for games and interactive applications")
+ (description "This package provides a Piston event loop for games and
+interactive applications.")
+ (license license:expat)))
+
+(define-public rust-pistoncore-glutin-window-0.63
+ (package
+ (name "rust-pistoncore-glutin-window")
+ (version "0.63.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "pistoncore-glutin_window" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0dhbyxarv5i742d400bmqdqq3f8c25kcgcg0xavrc18dc913rixc"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:skip-build? #t
+ #:cargo-inputs
+ (("rust-gl" ,rust-gl-0.11)
+ ("rust-glutin" ,rust-glutin-0.21)
+ ("rust-pistoncore-input" ,rust-pistoncore-input-0.28)
+ ("rust-pistoncore-window" ,rust-pistoncore-window-0.44)
+ ("rust-shader-version" ,rust-shader-version-0.6))))
+ (home-page "https://github.com/pistondevelopers/glutin_window")
+ (synopsis "Piston window back-end using the Glutin library")
+ (description
+ "This package provides a Piston window back-end using the Glutin library.")
+ (license license:expat)))
+
+(define-public rust-pistoncore-input-0.28
+ (package
+ (name "rust-pistoncore-input")
+ (version "0.28.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "pistoncore-input" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1rrcz9px098m3nx98gvrvzirfdp3vg03cblfkcrp4wnvswc0hwq5"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:skip-build? #t
+ #:cargo-inputs
+ (("rust-piston-viewport" ,rust-piston-viewport-1.0)
+ ("rust-serde" ,rust-serde-1)
+ ("rust-serde-derive" ,rust-serde-derive-1)
+ ("rust-bitflags" ,rust-bitflags-1))))
+ (home-page "https://github.com/PistonDevelopers/piston")
+ (synopsis "Structure for user input")
+ (description
+ "This package provides a structure for user input.")
+ (license license:expat)))
+
+(define-public rust-pistoncore-window-0.44
+ (package
+ (name "rust-pistoncore-window")
+ (version "0.44.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "pistoncore-window" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "18qy3nnpb9jczvkiyzzznamck0pzgiyi6073jrkldnci6b3in10q"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:skip-build? #t
+ #:cargo-inputs
+ (("rust-piston-graphics-api-version"
+ ,rust-piston-graphics-api-version-0.2)
+ ("rust-pistoncore-input" ,rust-pistoncore-input-0.28))))
+ (home-page "https://github.com/PistonDevelopers/piston")
+ (synopsis "Library for window abstraction")
+ (description
+ "This package provides a library for window abstraction.")
+ (license license:expat)))
+
+(define-public rust-png-0.16
+ (package
+ (name "rust-png")
+ (version "0.16.6")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "png" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1393s3v3kg4bxnn86d7yn2vyz8xj6g64ighdfkc3vzpsg5sbyl61"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:skip-build? #t
+ #:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-crc32fast" ,rust-crc32fast-1)
+ ("rust-deflate" ,rust-deflate-0.8)
+ ("rust-miniz-oxide" ,rust-miniz-oxide-0.3))
+ #:cargo-development-inputs
+ (("rust-criterion" ,rust-criterion-0.3)
+ ("rust-getopts" ,rust-getopts-0.2)
+ ;; TODO: glium has many cyclic dependencies with other packages
+ ;; ("rust-glium" ,rust-glium-0.24)
+ ("rust-glob" ,rust-glob-0.3)
+ ("rust-rand" ,rust-rand-0.7)
+ ("rust-term" ,rust-term-0.6))))
+ (home-page "https://github.com/image-rs/image-png.git")
+ (synopsis "PNG decoding and encoding library in pure Rust")
+ (description
+ "PNG decoding and encoding library in pure Rust.")
+ (license (list license:expat license:asl2.0))))
+
+(define-public rust-png-0.15
+ (package
+ (inherit rust-png-0.16)
+ (name "rust-png")
+ (version "0.15.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "png" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "10x2qkhyfnm3si5vgx77r2ik811gaap7ahi825wfxgsb0lirm1gg"))))
+ (arguments
+ `(#:skip-build? #t
+ #:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-crc32fast" ,rust-crc32fast-1)
+ ("rust-deflate" ,rust-deflate-0.7)
+ ("rust-inflate" ,rust-inflate-0.4))
+ #:cargo-development-inputs
+ (("rust-getopts" ,rust-getopts-0.2)
+ ;; TODO: glium has many cyclic dependencies with other packages
+ ;;("rust-glium" ,rust-glium-0.24)
+ ("rust-glob" ,rust-glob-0.3)
+ ("rust-rand" ,rust-rand-0.7)
+ ("rust-term" ,rust-term-0.6))))))
+
+(define-public rust-png-0.14
+ (package
+ (inherit rust-png-0.15)
+ (name "rust-png")
+ (version "0.14.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "png" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0nf3a8r9p9zrj4x30b48f7yv18dz9xkmrq9b3lnzmpnhzn0z9nk3"))))
+ (arguments
+ `(#:skip-build? #t
+ #:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-deflate" ,rust-deflate-0.7)
+ ("rust-inflate" ,rust-inflate-0.4)
+ ("rust-num-iter" ,rust-num-iter-0.1))
+ #:cargo-development-inputs
+ (("rust-getopts" ,rust-getopts-0.2)
+ ;; TODO: glium has many cyclic dependencies with other packages
+ ;; ("rust-glium" ,rust-glium-0.22)
+ ("rust-glob" ,rust-glob-0.2)
+ ("rust-rand" ,rust-rand-0.5)
+ ("rust-term" ,rust-term-0.4))))))
+
+(define-public rust-png-0.12
+ (package
+ (inherit rust-png-0.14)
+ (name "rust-png")
+ (version "0.12.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "png" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0nqlc8lqf8ncv3kj0gzlxwli61dbbxcjlrp176kvilw4sl09cjzm"))))
+ (arguments
+ `(#:skip-build? #t
+ #:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-deflate" ,rust-deflate-0.7)
+ ("rust-inflate" ,rust-inflate-0.4)
+ ("rust-num-iter" ,rust-num-iter-0.1))
+ #:cargo-development-inputs
+ (("rust-getopts" ,rust-getopts-0.2)
+ ;; TODO: gluum has many cyclic dependencies with other packages
+ ;; ("rust-glium" ,rust-glium-0.21)
+ ("rust-glob" ,rust-glob-0.2)
+ ("rust-term" ,rust-term-0.4))))))
+
+(define-public rust-raw-window-handle-0.3
+ (package
+ (name "rust-raw-window-handle")
+ (version "0.3.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "raw-window-handle" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "04c2wir7qq3g2b143yav52a1g5ack8ffqx2bpmrn9bc0dix1li0a"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs (("rust-libc" ,rust-libc-0.2))))
+ (home-page "https://github.com/rust-windowing/raw-window-handle")
+ (synopsis "Interoperability library for Rust Windowing applications")
+ (description
+ "Interoperability library for Rust Windowing applications.")
+ (license license:expat)))
+
+(define-public rust-resize-0.3
+ (package
+ (name "rust-resize")
+ (version "0.3.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "resize" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1ai83laz5yvg4r7z9q8d1m0vq0fqj2ycyprw5fxzxyzaj3im7rmr"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-development-inputs
+ (("rust-png" ,rust-png-0.15))))
+ (home-page "https://github.com/PistonDevelopers/resize")
+ (synopsis "Simple image resampling library in pure Rust")
+ (description
+ "This package provides a simple image resampling library in pure Rust.")
+ (license license:expat)))
+
+(define-public rust-rgb-0.8
+ (package
+ (name "rust-rgb")
+ (version "0.8.20")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "rgb" version))
+ (file-name (string-append name "-" version ".crate"))
+ (sha256
+ (base32
+ "1620mn5dp1rr9fpvd9wbr3b8l2g4zrij8zjri1x34cg1bas59vwh"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bytemuck" ,rust-bytemuck-1)
+ ("rust-serde" ,rust-serde-1))
+ #:cargo-development-inputs
+ (("rust-serde-json" ,rust-serde-json-1))))
+ (home-page "https://lib.rs/crates/rgb")
+ (synopsis "Struct for sharing pixels between crates")
+ (description
+ "This package provides @code{struct RGB/RGBA/etc.} for sharing pixels
+between crates + convenience methods for color manipulation. It allows no-copy
+high-level interoperability. It also adds common convenience methods and
+implements standard Rust traits to make `RGB`/`RGBA` pixels and slices
+first-class Rust objects.")
+ (license license:expat)))
+
+(define-public rust-smithay-client-toolkit-0.6
+ (package
+ (name "rust-smithay-client-toolkit")
+ (version "0.6.4")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "smithay-client-toolkit" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0m20687zs36l6xak2s5k9s7qp78ly8xfjpbmrhacp7whfn4hx5lk"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-andrew" ,rust-andrew-0.2)
+ ("rust-bitflags" ,rust-bitflags-1)
+ ("rust-dlib" ,rust-dlib-0.4)
+ ("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-memmap" ,rust-memmap-0.7)
+ ("rust-nix" ,rust-nix-0.14)
+ ("rust-wayland-client" ,rust-wayland-client-0.23)
+ ("rust-wayland-protocols" ,rust-wayland-protocols-0.23))
+ #:cargo-development-inputs
+ (("rust-byteorder" ,rust-byteorder-1)
+ ("rust-image" ,rust-image-0.21)
+ ("rust-wayland-client" ,rust-wayland-client-0.23))))
+ (home-page "https://github.com/smithay/client-toolkit")
+ (synopsis "Toolkit for making client wayland applications")
+ (description
+ "Toolkit for making client wayland applications.")
+ (license license:expat)))
+
+(define-public rust-smithay-client-toolkit-0.4
+ (package
+ (inherit rust-smithay-client-toolkit-0.6)
+ (name "rust-smithay-client-toolkit")
+ (version "0.4.6")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "smithay-client-toolkit" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1yj8yzd0lhqpsgq0x4iikl9a02q2hnkky81brk938alv0ibqrjrc"))))
+ (arguments
+ `(#:cargo-inputs
+ (("rust-andrew" ,rust-andrew-0.2)
+ ("rust-bitflags" ,rust-bitflags-1)
+ ("rust-dlib" ,rust-dlib-0.4)
+ ("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-memmap" ,rust-memmap-0.7)
+ ("rust-nix" ,rust-nix-0.14)
+ ("rust-wayland-client" ,rust-wayland-client-0.21)
+ ("rust-wayland-commons" ,rust-wayland-commons-0.21)
+ ("rust-wayland-protocols" ,rust-wayland-protocols-0.21))
+ #:cargo-development-inputs
+ (("rust-byteorder" ,rust-byteorder-1)
+ ("rust-image" ,rust-image-0.20)
+ ("rust-wayland-client" ,rust-wayland-client-0.21))))))
+
+(define-public rust-smithay-clipboard-0.3
+ (package
+ (name "rust-smithay-clipboard")
+ (version "0.3.6")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "smithay-clipboard" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1h7qhcx44cgwncgpn5llky0c56vgsg9mqrkybb2z37vsxxia4rwn"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-nix" ,rust-nix-0.14)
+ ("rust-smithay-client-toolkit" ,rust-smithay-client-toolkit-0.6))
+ #:cargo-development-inputs
+ (("rust-andrew" ,rust-andrew-0.2))))
+ (inputs
+ `(("wayland" ,wayland)))
+ (home-page "https://github.com/smithay/smithay-clipboard")
+ (synopsis
+ "Provides access to the wayland clipboard for client applications")
+ (description
+ "This package provides access to the wayland clipboard for client applications.")
+ (license license:expat)))
+
+(define-public rust-tiff-0.5
+ (package
+ (name "rust-tiff")
+ (version "0.5.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "tiff" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0bzzvxcx21pzryxgd7x7a1himiqs2y4k55754wzlr56sqj3qlfrz"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:tests? #f ; not all test files included
+ #:cargo-inputs
+ (("rust-byteorder" ,rust-byteorder-1)
+ ("rust-lzw" ,rust-lzw-0.10)
+ ("rust-miniz-oxide" ,rust-miniz-oxide-0.3))))
+ (home-page "https://github.com/image-rs/image-tiff")
+ (synopsis
+ "TIFF decoding and encoding library in pure Rust")
+ (description
+ "TIFF decoding and encoding library in pure Rust.")
+ (license license:expat)))
+
+(define-public rust-tiff-0.3
+ (package
+ (inherit rust-tiff-0.5)
+ (name "rust-tiff")
+ (version "0.3.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "tiff" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0zgmbny2f8rssqmjdfvnysy0vqwcvlwl6q9f5yixhavlqk7w5dyp"))))
+ (arguments
+ `(#:tests? #f ; Tests images not included with release.
+ #:cargo-inputs
+ (("rust-byteorder" ,rust-byteorder-1)
+ ("rust-lzw" ,rust-lzw-0.10)
+ ("rust-num-derive" ,rust-num-derive-0.2)
+ ("rust-num-traits" ,rust-num-traits-0.2))
+ #:cargo-development-inputs
+ (("rust-tempfile" ,rust-tempfile-3))))))
+
+(define-public rust-tiff-0.2
+ (package
+ (inherit rust-tiff-0.3)
+ (name "rust-tiff")
+ (version "0.2.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "tiff" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1kn7psgpacns337vvqh272rkqwnakmjd51rc7ygwnc03ibr38j0y"))))
+ (arguments
+ `(#:cargo-inputs
+ (("rust-byteorder" ,rust-byteorder-1)
+ ("rust-lzw" ,rust-lzw-0.10)
+ ("rust-num-derive" ,rust-num-derive-0.2)
+ ("rust-num-traits" ,rust-num-traits-0.2))))))
+
+(define-public rust-wayland-client-0.23
+ (package
+ (name "rust-wayland-client")
+ (version "0.23.6")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "wayland-client" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1nmw2kz70llc5mxwzg6bglnqy0qnyr9224zjmq9czazgw3mq045g"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-calloop" ,rust-calloop-0.4)
+ ("rust-downcast-rs" ,rust-downcast-rs-1.1)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-mio" ,rust-mio-0.6)
+ ("rust-nix" ,rust-nix-0.14)
+ ("rust-wayland-commons" ,rust-wayland-commons-0.23)
+ ("rust-wayland-sys" ,rust-wayland-sys-0.23)
+ ("rust-wayland-scanner" ,rust-wayland-scanner-0.23))
+ #:cargo-development-inputs
+ (("rust-byteorder" ,rust-byteorder-1)
+ ("rust-tempfile" ,rust-tempfile-3))))
+ (home-page "https://github.com/smithay/wayland-rs")
+ (synopsis
+ "Rust bindings to the standard C implementation of the wayland protocol")
+ (description
+ "This package provides Rust bindings to the standard C implementation of
+the wayland protocol, client side.")
+ (license license:expat)))
+
+(define-public rust-wayland-client-0.21
+ (package
+ (inherit rust-wayland-client-0.23)
+ (name "rust-wayland-client")
+ (version "0.21.13")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "wayland-client" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "04r7dy074hhdalsi1day482wvmczr40hg7qvrnzkgxpakrgkx5j9"))))
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-calloop" ,rust-calloop-0.4)
+ ("rust-downcast-rs" ,rust-downcast-rs-1.1)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-mio" ,rust-mio-0.6)
+ ("rust-nix" ,rust-nix-0.14)
+ ("rust-wayland-commons" ,rust-wayland-commons-0.21)
+ ("rust-wayland-sys" ,rust-wayland-sys-0.21)
+ ("rust-wayland-scanner" ,rust-wayland-scanner-0.21))
+ #:cargo-development-inputs
+ (("rust-byteorder" ,rust-byteorder-1)
+ ("rust-tempfile" ,rust-tempfile-3))))))
+
+(define-public rust-wayland-commons-0.23
+ (package
+ (name "rust-wayland-commons")
+ (version "0.23.6")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "wayland-commons" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1nyvcs6xxxzqgh0wvc7z0fgi89bf3h9p4qrbf77bnfbwlb8v0rmv"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-nix" ,rust-nix-0.14)
+ ("rust-wayland-sys" ,rust-wayland-sys-0.23))))
+ (home-page "https://github.com/smithay/wayland-rs")
+ (synopsis
+ "Common types and structures used by wayland-client and wayland-server")
+ (description
+ "Common types and structures used by wayland-client and wayland-server.")
+ (license license:expat)))
+
+(define-public rust-wayland-commons-0.21
+ (package
+ (inherit rust-wayland-commons-0.23)
+ (name "rust-wayland-commons")
+ (version "0.21.13")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "wayland-commons" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1v1jpcsnn6cwwy5ii5pdl58i6b9slmi8mn4my4fpwrlbfsb8ih20"))))
+ (arguments
+ `(#:cargo-inputs
+ (("rust-nix" ,rust-nix-0.14)
+ ("rust-wayland-sys" ,rust-wayland-sys-0.21))))))
+
+(define-public rust-wayland-protocols-0.23
+ (package
+ (name "rust-wayland-protocols")
+ (version "0.23.6")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "wayland-protocols" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1ygwbzqlnks5xzafka3c8ag6k92g2h6ygj2xsmvjfx2n6rj8dhkc"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-wayland-client" ,rust-wayland-client-0.23)
+ ("rust-wayland-commons" ,rust-wayland-commons-0.23)
+ ("rust-wayland-server" ,rust-wayland-server-0.23)
+ ("rust-wayland-scanner" ,rust-wayland-scanner-0.23))))
+ (home-page "https://github.com/smithay/wayland-rs")
+ (synopsis
+ "Generated API for the officials wayland protocol extensions")
+ (description
+ "Generated API for the officials wayland protocol extensions.")
+ (license license:expat)))
+
+(define-public rust-wayland-protocols-0.21
+ (package
+ (inherit rust-wayland-protocols-0.23)
+ (name "rust-wayland-protocols")
+ (version "0.21.13")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "wayland-protocols" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0i91yh3nxk9llhly2ly3nvlfx0lbpvyq919cgmnyx3j25bmf5zaa"))))
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-wayland-client" ,rust-wayland-client-0.21)
+ ("rust-wayland-commons" ,rust-wayland-commons-0.21)
+ ("rust-wayland-server" ,rust-wayland-server-0.21)
+ ("rust-wayland-sys" ,rust-wayland-sys-0.21)
+ ("rust-wayland-scanner" ,rust-wayland-scanner-0.21))))))
+
+(define-public rust-wayland-scanner-0.23
+ (package
+ (name "rust-wayland-scanner")
+ (version "0.23.6")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "wayland-scanner" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0g8wcphykjrcpslznyi3qccx1pckw97rckq5b295nfbg6r3j5c4k"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-proc-macro2" ,rust-proc-macro2-0.4)
+ ("rust-quote" ,rust-quote-0.6)
+ ("rust-xml-rs" ,rust-xml-rs-0.8))))
+ (home-page "https://github.com/smithay/wayland-rs")
+ (synopsis "Generate Rust APIs from XML Wayland protocol files")
+ (description
+ "Wayland Scanner generates Rust APIs from XML Wayland protocol files.
+It is intended for use with wayland-sys. You should only need this crate if
+you are working on custom Wayland protocol extensions.
+Look at the wayland-client crate for usable bindings.")
+ (license license:expat)))
+
+(define-public rust-wayland-scanner-0.21
+ (package
+ (inherit rust-wayland-scanner-0.23)
+ (name "rust-wayland-scanner")
+ (version "0.21.13")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "wayland-scanner" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "17mp49v7w0p0x5ry628lj2llljnwkr9aj9g4bqqhfibid32jhf5z"))))))
+
+(define-public rust-wayland-server-0.23
+ (package
+ (name "rust-wayland-server")
+ (version "0.23.6")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "wayland-server" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1ccsalq6gnf07klnbjx2dxcbibhw03rqsgi578p913s3zsjlcg8a"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-calloop" ,rust-calloop-0.4)
+ ("rust-downcast-rs" ,rust-downcast-rs-1.1)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-mio" ,rust-mio-0.6)
+ ("rust-nix" ,rust-nix-0.14)
+ ("rust-wayland-commons" ,rust-wayland-commons-0.23)
+ ("rust-wayland-sys" ,rust-wayland-sys-0.23)
+ ("rust-wayland-scanner" ,rust-wayland-scanner-0.23))))
+ (home-page "https://github.com/smithay/wayland-rs")
+ (synopsis
+ "Bindings to the standard C implementation of the wayland protocol")
+ (description
+ "This package provides Rust bindings to the standard C implementation of
+the wayland protocol, server side.")
+ (license license:expat)))
+
+(define-public rust-wayland-server-0.21
+ (package
+ (inherit rust-wayland-server-0.23)
+ (name "rust-wayland-server")
+ (version "0.21.13")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "wayland-server" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0ayn4wlrpg0fw04prri9awpkjvbzjil0d3l3a8zs9pdbnspvw6ah"))))
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-calloop" ,rust-calloop-0.4)
+ ("rust-downcast-rs" ,rust-downcast-rs-1.1)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-mio" ,rust-mio-0.6)
+ ("rust-nix" ,rust-nix-0.14)
+ ("rust-wayland-commons" ,rust-wayland-commons-0.21)
+ ("rust-wayland-sys" ,rust-wayland-sys-0.21)
+ ("rust-wayland-scanner" ,rust-wayland-scanner-0.21))))))
+
+(define-public rust-wayland-sys-0.23
+ (package
+ (name "rust-wayland-sys")
+ (version "0.23.6")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "wayland-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1x2qafvj8hd2x5qfaan2dfpw9amg0f5g9sqrkdy7qvbddsl8jknr"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-dlib" ,rust-dlib-0.4)
+ ("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-libc" ,rust-libc-0.2))))
+ (home-page "https://github.com/smithay/wayland-rs")
+ (synopsis "FFI bindings to the various libwayland-*.so libraries")
+ (description
+ "FFI bindings to the various libwayland-*.so libraries.
+You should only need this crate if you are working on custom wayland
+protocol extensions. Look at the crate wayland-client for usable bindings.")
+ (license license:expat)))
+
+(define-public rust-wayland-sys-0.21
+ (package
+ (inherit rust-wayland-sys-0.23)
+ (name "rust-wayland-sys")
+ (version "0.21.13")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "wayland-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0a0ndgkg98pvmkv44yya4f7mxzjaxylknqh64bpa05w0azyv02jj"))))))
+
+(define-public rust-winit-0.20
+ (package
+ (name "rust-winit")
+ (version "0.20.0-alpha6")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "winit" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1g5cchl97zcg525j6jdr77yby8cmhwv1qqwcd3sf4l4zl263195z"))
+ (patches
+ (list
+ (origin
+ (method url-fetch)
+ (uri "https://github.com/rust-windowing/winit/commit/d1c6506865c7bddbb5fb4d80a613e43ddc1370b5.patch")
+ (file-name (string-append name "-fix-bindings.patch"))
+ (sha256
+ (base32
+ "03q4bvdq86kii53d0vsywv08g8vqirf9h1lz2cl6rcc7gjfynpds")))))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-android-glue" ,rust-android-glue-0.2)
+ ("rust-bitflags" ,rust-bitflags-1)
+ ("rust-calloop" ,rust-calloop-0.4)
+ ("rust-cocoa" ,rust-cocoa-0.19)
+ ("rust-core-foundation" ,rust-core-foundation-0.6)
+ ("rust-core-graphics" ,rust-core-graphics-0.17)
+ ("rust-core-video-sys" ,rust-core-video-sys-0.1)
+ ("rust-dispatch" ,rust-dispatch-0.1)
+ ("rust-instant" ,rust-instant-0.1)
+ ("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-log" ,rust-log-0.4)
+ ("rust-objc" ,rust-objc-0.2)
+ ("rust-parking-lot" ,rust-parking-lot-0.10)
+ ("rust-percent-encoding" ,rust-percent-encoding-2)
+ ("rust-raw-window-handle" ,rust-raw-window-handle-0.3)
+ ("rust-serde" ,rust-serde-1)
+ ("rust-smithay-client-toolkit" ,rust-smithay-client-toolkit-0.6)
+ ("rust-stdweb" ,rust-stdweb-0.4)
+ ("rust-wasm-bindgen" ,rust-wasm-bindgen-0.2)
+ ("rust-wayland-client" ,rust-wayland-client-0.23)
+ ("rust-web-sys" ,rust-web-sys-0.3)
+ ("rust-winapi" ,rust-winapi-0.3)
+ ("rust-x11-dl" ,rust-x11-dl-2))
+ #:cargo-development-inputs
+ (("rust-console-log" ,rust-console-log-0.1)
+ ("rust-env-logger" ,rust-env-logger-0.5)
+ ("rust-image" ,rust-image-0.21))))
+ (home-page "https://github.com/rust-windowing/winit")
+ (synopsis
+ "Cross-platform window creation library")
+ (description
+ "Cross-platform window creation library.")
+ (license license:asl2.0)))
+
+(define-public rust-winit-0.19
+ (package
+ (inherit rust-winit-0.20)
+ (name "rust-winit")
+ (version "0.19.5")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "winit" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1a4lnfyvlc4jabhs30wlmkgdjv7qhbplmyp833kl7ykjni5yp5hy"))))
+ (arguments
+ `(#:cargo-inputs
+ (("rust-android-glue" ,rust-android-glue-0.2)
+ ("rust-backtrace" ,rust-backtrace-0.3)
+ ("rust-bitflags" ,rust-bitflags-1)
+ ("rust-cocoa" ,rust-cocoa-0.18)
+ ("rust-core-foundation" ,rust-core-foundation-0.6)
+ ("rust-core-graphics" ,rust-core-graphics-0.17)
+ ("rust-image" ,rust-image-0.21)
+ ("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-log" ,rust-log-0.4)
+ ("rust-objc" ,rust-objc-0.2)
+ ("rust-parking-lot" ,rust-parking-lot-0.9)
+ ("rust-percent-encoding" ,rust-percent-encoding-2)
+ ("rust-raw-window-handle" ,rust-raw-window-handle-0.3)
+ ("rust-serde" ,rust-serde-1)
+ ("rust-smithay-client-toolkit" ,rust-smithay-client-toolkit-0.4)
+ ("rust-wayland-client" ,rust-wayland-client-0.21)
+ ("rust-winapi" ,rust-winapi-0.3)
+ ("rust-x11-dl" ,rust-x11-dl-2))))))
+
+(define-public rust-x11-2
+ (package
+ (name "rust-x11")
+ (version "2.18.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "x11" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0dg2d0yrqmwg6prpxkw3vpmwzwxnaki2cn0v64ylh5gp4cqpws9r"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-libc" ,rust-libc-0.2)
+ ("rust-pkg-config" ,rust-pkg-config-0.3))))
+ (home-page "https://github.com/erlepereira/x11-rs.git")
+ (synopsis "X11 library bindings for Rust")
+ (description "X11 library bindings for Rust.")
+ (license license:cc0)))
+
+(define-public rust-x11-clipboard-0.4
+ (package
+ (name "rust-x11-clipboard")
+ (version "0.4.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "x11-clipboard" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0nqdnswiyj28b1izjp5rzbc67cxpb5c8p4vh1xyndkirzs84vqqk"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:tests? #f ; Tests require display server.
+ #:cargo-inputs (("rust-xcb" ,rust-xcb-0.9))))
+ (native-inputs
+ `(("python" ,python)))
+ (home-page "https://github.com/quininer/x11-clipboard")
+ (synopsis "x11 clipboard support for Rust")
+ (description "This package provides x11 clipboard support for Rust.")
+ (license license:expat)))
+
+(define-public rust-x11-dl-2
+ (package
+ (name "rust-x11-dl")
+ (version "2.18.5")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "x11-dl" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32 "1y7yq4sfvv56shk4v3s7gvlrwk9d0migj622fl4i4c5klpiq3y9b"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-maybe-uninit" ,rust-maybe-uninit-2.0)
+ ("rust-pkg-config" ,rust-pkg-config-0.3))))
+ (home-page "https://github.com/erlepereira/x11-rs.git")
+ (synopsis "X11 library bindings for Rust")
+ (description "This package provides X11 library bindings for Rust.")
+ (license license:cc0)))
+
+(define-public rust-y4m-0.5
+ (package
+ (name "rust-y4m")
+ (version "0.5.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "y4m" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1933677by64y06zfgip2yq8b2dza8xnljhaksx93czq90b54kscz"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-development-inputs
+ (("rust-resize" ,rust-resize-0.3))))
+ (home-page "https://github.com/image-rs/y4m")
+ (synopsis "YUV4MPEG2 (.y4m) Encoder/Decoder.")
+ (description "YUV4MPEG2 (.y4m) Encoder/Decoder.")
+ (license license:expat)))
diff --git a/gnu/packages/crates-gtk.scm b/gnu/packages/crates-gtk.scm
new file mode 100644
index 0000000000..41b9a51a33
--- /dev/null
+++ b/gnu/packages/crates-gtk.scm
@@ -0,0 +1,667 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2020 Efraim Flashner <efraim@flashner.co.il>
+;;;
+;;; This file is part of GNU Guix.
+;;;
+;;; GNU Guix is free software; you can redistribute it and/or modify it
+;;; under the terms of the GNU General Public License as published by
+;;; the Free Software Foundation; either version 3 of the License, or (at
+;;; your option) any later version.
+;;;
+;;; GNU Guix is distributed in the hope that it will be useful, but
+;;; WITHOUT ANY WARRANTY; without even the implied warranty of
+;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;;; GNU General Public License for more details.
+;;;
+;;; You should have received a copy of the GNU General Public License
+;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
+
+(define-module (gnu packages crates-gtk)
+ #:use-module (guix build-system cargo)
+ #:use-module (guix download)
+ #:use-module ((guix licenses) #:prefix license:)
+ #:use-module (guix packages)
+ #:use-module (gnu packages)
+ #:use-module (gnu packages crates-io)
+ #:use-module (gnu packages crates-graphics)
+ #:use-module (gnu packages glib)
+ #:use-module (gnu packages gtk))
+
+;;;
+;;; Please: Try to add new module packages in alphabetic order.
+;;;
+
+(define-public rust-cairo-rs-0.8
+ (package
+ (name "rust-cairo-rs")
+ (version "0.8.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "cairo-rs" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "11303v1fv6hsc9n70ak380gknkf0098phpcxqdhkmahqjsx4jw0m"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-cairo-sys-rs" ,rust-cairo-sys-rs-0.9)
+ ("rust-glib" ,rust-glib-0.9)
+ ("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-libc" ,rust-libc-0.2))
+ #:cargo-development-inputs
+ (("rust-gtk-rs-lgpl-docs" ,rust-gtk-rs-lgpl-docs-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))))
+ (inputs
+ `(("cairo" ,cairo)))
+ (home-page "https://gtk-rs.org/")
+ (synopsis "Rust bindings for the Cairo library")
+ (description
+ "Rust bindings for the Cairo library.")
+ (license license:expat)))
+
+(define-public rust-cairo-rs-0.7
+ (package
+ (inherit rust-cairo-rs-0.8)
+ (name "rust-cairo-rs")
+ (version "0.7.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "cairo-rs" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "171m98g41avp5mmshqir4ka21napp7ma5fx45wi9mw5hwdyv8pg0"))))
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-cairo-sys-rs" ,rust-cairo-sys-rs-0.9)
+ ("rust-glib" ,rust-glib-0.8)
+ ("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-gtk-rs-lgpl-docs" ,rust-gtk-rs-lgpl-docs-0.1))
+ #:cargo-development-inputs
+ (("rust-tempfile" ,rust-tempfile-3))))))
+
+(define-public rust-cairo-sys-rs-0.9
+ (package
+ (name "rust-cairo-sys-rs")
+ (version "0.9.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "cairo-sys-rs" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0qsdy6s57yvscg2rfm7wdqrlhzbn1aq9lhk3dy1vw5f7r81blrgz"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-winapi" ,rust-winapi-0.3)
+ ("rust-x11" ,rust-x11-2)
+ ("rust-pkg-config" ,rust-pkg-config-0.3))))
+ (inputs
+ `(("cairo" ,cairo)))
+ (home-page "https://gtk-rs.org/")
+ (synopsis "FFI bindings to libcairo")
+ (description "This package provides FFI bindings to libcairo.")
+ (license license:expat)))
+
+(define-public rust-gdk-pixbuf-0.8
+ (package
+ (name "rust-gdk-pixbuf")
+ (version "0.8.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gdk-pixbuf" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1mxxca0fkcw2rsd3kl3nvlb8ys4cgxqx4n5isjbv0adk8q624j72"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-gdk-pixbuf-sys" ,rust-gdk-pixbuf-sys-0.9)
+ ("rust-gio" ,rust-gio-0.8)
+ ("rust-gio-sys" ,rust-gio-sys-0.9)
+ ("rust-glib" ,rust-glib-0.9)
+ ("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-gtk-rs-lgpl-docs" ,rust-gtk-rs-lgpl-docs-0.1))
+ #:cargo-development-inputs
+ (("rust-gir-format-check" ,rust-gir-format-check-0.1))))
+ (inputs
+ `(("gdk-pixbuf" ,gdk-pixbuf)))
+ (home-page "https://gtk-rs.org/")
+ (synopsis "Rust bindings for the GdkPixbuf library")
+ (description
+ "Rust bindings for the GdkPixbuf library.")
+ (license license:expat)))
+
+(define-public rust-gdk-pixbuf-0.7
+ (package
+ (inherit rust-gdk-pixbuf-0.8)
+ (name "rust-gdk-pixbuf")
+ (version "0.7.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gdk-pixbuf" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1k2g3w2p57m68bi5sldvkmgjgslgqswrjsijjhqaibdvw67409lp"))))
+ (arguments
+ `(#:cargo-inputs
+ (("rust-fragile" ,rust-fragile-0.3)
+ ("rust-futures-preview" ,rust-futures-preview-0.3)
+ ("rust-gdk-pixbuf-sys" ,rust-gdk-pixbuf-sys-0.9)
+ ("rust-gio" ,rust-gio-0.7)
+ ("rust-gio-sys" ,rust-gio-sys-0.9)
+ ("rust-glib" ,rust-glib-0.8)
+ ("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-gtk-rs-lgpl-docs" ,rust-gtk-rs-lgpl-docs-0.1))
+ #:cargo-development-inputs
+ (("rust-gir-format-check" ,rust-gir-format-check-0.1))))))
+
+(define-public rust-gdk-pixbuf-sys-0.9
+ (package
+ (name "rust-gdk-pixbuf-sys")
+ (version "0.9.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gdk-pixbuf-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1c2andpjb10y7bahh6nxnksh9m3g5qh4mgq9znx634cy1831p6fq"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:tests? #f ; tests not included in release
+ #:cargo-inputs
+ (("rust-gio-sys" ,rust-gio-sys-0.9)
+ ("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pkg-config" ,rust-pkg-config-0.3))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))))
+ (inputs
+ `(("gdk-pixbuf" ,gdk-pixbuf)))
+ (home-page "https://gtk-rs.org/")
+ (synopsis "FFI bindings to libgdk_pixbuf-2.0")
+ (description "This package provides FFI bindings to @code{libgdk_pixbuf-2.0}.")
+ (license license:expat)))
+
+(define-public rust-gio-0.8
+ (package
+ (name "rust-gio")
+ (version "0.8.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gio" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "19cnla2ya0mi6wwaabd5mxbq2kzq46dg6jq2z19rpqyc2na0zl8c"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:tests? #f ; Not all files included in the tarball.
+ #:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-futures-channel" ,rust-futures-channel-0.3)
+ ("rust-futures-core" ,rust-futures-core-0.3)
+ ("rust-futures-io" ,rust-futures-io-0.3)
+ ("rust-futures-util" ,rust-futures-util-0.3)
+ ("rust-gio-sys" ,rust-gio-sys-0.9)
+ ("rust-glib" ,rust-glib-0.9)
+ ("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-gtk-rs-lgpl-docs" ,rust-gtk-rs-lgpl-docs-0.1))
+ #:cargo-development-inputs
+ (("rust-gir-format-check" ,rust-gir-format-check-0.1)
+ ("rust-serial-test" ,rust-serial-test-0.1)
+ ("rust-serial-test-derive" ,rust-serial-test-derive-0.1))))
+ (inputs
+ `(("glib" ,glib)))
+ (home-page "https://gtk-rs.org/")
+ (synopsis "Rust bindings for the Gio library")
+ (description "Rust bindings for the Gio library.")
+ (license license:expat)))
+
+(define-public rust-gio-0.7
+ (package
+ (inherit rust-gio-0.8)
+ (name "rust-gio")
+ (version "0.7.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gio" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1qv0wc1hqyb81c03h81s3xrl9jslrw23fr4yhygxbhih9k9vaqb2"))))
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-fragile" ,rust-fragile-0.3)
+ ("rust-futures-preview" ,rust-futures-preview-0.3)
+ ("rust-gio-sys" ,rust-gio-sys-0.9)
+ ("rust-glib" ,rust-glib-0.8)
+ ("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-gtk-rs-lgpl-docs" ,rust-gtk-rs-lgpl-docs-0.1))
+ #:cargo-development-inputs
+ (("rust-gir-format-check" ,rust-gir-format-check-0.1))))))
+
+(define-public rust-gio-sys-0.9
+ (package
+ (name "rust-gio-sys")
+ (version "0.9.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gio-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "049rafihxp3maxg3fwj6062ni9dcfilvhfq6ibnfgsmr89925bag"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:tests? #f ; Some test libraries not included in release.
+ #:cargo-inputs
+ (("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pkg-config" ,rust-pkg-config-0.3))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))))
+ (inputs
+ `(("glib" ,glib)))
+ (home-page "http://gtk-rs.org/")
+ (synopsis "FFI bindings to libgio-2.0")
+ (description "This package provides FFI bindings to libgio-2.0.")
+ (license license:expat)))
+
+(define-public rust-gir-format-check-0.1
+ (package
+ (name "rust-gir-format-check")
+ (version "0.1.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gir-format-check" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0znl4qcgmg0656zk9vjkwdn9wj1zpkd0m0l5jnzmahd80ii7vf4b"))))
+ (build-system cargo-build-system)
+ (home-page "https://github.com/gtk-rs/gir-format-check")
+ (synopsis "File format checker")
+ (description "File format checker in Rust.")
+ (license license:expat)))
+
+(define-public rust-glib-0.9
+ (package
+ (name "rust-glib")
+ (version "0.9.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "glib" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1h3100mf7kdfxibjz5na0sqzbd2mcsyd8pzivn3666w414x5gys0"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-futures-channel" ,rust-futures-channel-0.3)
+ ("rust-futures-core" ,rust-futures-core-0.3)
+ ("rust-futures-executor" ,rust-futures-executor-0.3)
+ ("rust-futures-preview" ,rust-futures-preview-0.3)
+ ("rust-futures-task" ,rust-futures-task-0.3)
+ ("rust-futures-util" ,rust-futures-util-0.3)
+ ("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-libc" ,rust-libc-0.2))
+ #:cargo-development-inputs
+ (("rust-tempfile" ,rust-tempfile-3))))
+ (inputs
+ `(("glib" ,glib)))
+ (home-page "https://gtk-rs.org/")
+ (synopsis "Rust bindings for the GLib library")
+ (description
+ "Rust bindings for the GLib library.")
+ (license license:expat)))
+
+(define-public rust-glib-0.8
+ (package
+ (inherit rust-glib-0.9)
+ (name "rust-glib")
+ (version "0.8.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "glib" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0ysy87zrwyzhfpf3d8rkyyr3amwj85wky05fsl7kx95s84l269xy"))))
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-futures-preview" ,rust-futures-preview-0.3)
+ ("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-libc" ,rust-libc-0.2))
+ #:cargo-development-inputs
+ (("rust-tempfile" ,rust-tempfile-3))))))
+
+(define-public rust-glib-sys-0.9
+ (package
+ (name "rust-glib-sys")
+ (version "0.9.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "glib-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1qhnwfqqcp63mx4q9744rfkq78g6ky2j8ppsxxgw0ipl08w6z1cm"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:tests? #f ; Some test libraries not included in release.
+ #:cargo-inputs
+ (("rust-libc" ,rust-libc-0.2)
+ ("rust-pkg-config" ,rust-pkg-config-0.3))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))))
+ (inputs
+ `(("glib" ,glib)))
+ (home-page "http://gtk-rs.org/")
+ (synopsis "FFI bindings to libglib-2.0")
+ (description "This package provides FFI bindings to libglib-2.0.")
+ (license license:expat)))
+
+(define-public rust-gobject-sys-0.9
+ (package
+ (name "rust-gobject-sys")
+ (version "0.9.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gobject-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1nakflbp3gjaas4fw7sn3p1p32khyfpcq1h06z7yqd10yq2ail9i"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:tests? #f ; Some test libraries not included in release.
+ #:cargo-inputs
+ (("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pkg-config" ,rust-pkg-config-0.3))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))))
+ (inputs
+ `(("glib" ,glib)))
+ (home-page "http://gtk-rs.org/")
+ (synopsis "FFI bindings to libgobject-2.0")
+ (description "This package provides FFI bindings to libgobject-2.0.")
+ (license license:expat)))
+
+(define-public rust-gtk-rs-lgpl-docs-0.1
+ (package
+ (name "rust-gtk-rs-lgpl-docs")
+ (version "0.1.15")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gtk-rs-lgpl-docs" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "06b1j64zg0xmhwfkyhzh3y0apclg6qihn3f7s1bd7kgjmkia4jlr"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-rustdoc-stripper" ,rust-rustdoc-stripper-0.1))))
+ (home-page "https://gtk-rs.org/")
+ (synopsis "LGPL-licensed docs for Gtk-rs crates")
+ (description
+ "LGPL-licensed docs for Gtk-rs crates.")
+ (license license:lgpl2.0)))
+
+(define-public rust-pango-0.8
+ (package
+ (name "rust-pango")
+ (version "0.8.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "pango" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0xq50950il3228grzs4xvc5s6phxcl5l50grz6syvs0vixr6p70y"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-glib" ,rust-glib-0.9)
+ ("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pango-sys" ,rust-pango-sys-0.9)
+ ("rust-gtk-rs-lgpl-docs" ,rust-gtk-rs-lgpl-docs-0.1))
+ #:cargo-development-inputs
+ (("rust-gir-format-check" ,rust-gir-format-check-0.1))))
+ (inputs
+ `(("pango" ,pango)))
+ (home-page "https://gtk-rs.org/")
+ (synopsis "Rust bindings for the Pango library")
+ (description
+ "Rust bindings for the Pango library.")
+ (license license:expat)))
+
+(define-public rust-pango-0.7
+ (package
+ (inherit rust-pango-0.8)
+ (name "rust-pango")
+ (version "0.7.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "pango" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "11np7nxb69g3kid2l78b7k519x1wk1c3f9yy7swgzy24n5qs0grr"))))
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-glib" ,rust-glib-0.8)
+ ("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pango-sys" ,rust-pango-sys-0.9)
+ ("rust-gtk-rs-lgpl-docs" ,rust-gtk-rs-lgpl-docs-0.1))
+ #:cargo-development-inputs
+ (("rust-gir-format-check" ,rust-gir-format-check-0.1))))))
+
+(define-public rust-pango-sys-0.9
+ (package
+ (name "rust-pango-sys")
+ (version "0.9.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "pango-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0zdynikh6jrfa31fpmbrwnz46a57idci73zzkf0z0g3vj223vfc6"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:tests? #f ; Some test files not included in release.
+ #:cargo-inputs
+ (("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pkg-config" ,rust-pkg-config-0.3))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))))
+ (inputs
+ `(("pango" ,pango)))
+ (home-page "https://gtk-rs.org/")
+ (synopsis "FFI bindings to libpango-1.0")
+ (description "This package provides FFI bindings to @code{libpango-1.0}.")
+ (license license:expat)))
+
+(define-public rust-pangocairo-0.9
+ (package
+ (name "rust-pangocairo")
+ (version "0.9.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "pangocairo" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0bap3h78hdqdyln58349qjjbcv45m8a0a16c4n9fprdj1my0gldx"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-cairo-rs" ,rust-cairo-rs-0.8)
+ ("rust-cairo-sys-rs" ,rust-cairo-sys-rs-0.9)
+ ("rust-glib" ,rust-glib-0.9)
+ ("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pango" ,rust-pango-0.8)
+ ("rust-pango-sys" ,rust-pango-sys-0.9)
+ ("rust-pangocairo-sys" ,rust-pangocairo-sys-0.10)
+ ("rust-gtk-rs-lgpl-docs" ,rust-gtk-rs-lgpl-docs-0.1))
+ #:cargo-development-inputs
+ (("rust-gir-format-check" ,rust-gir-format-check-0.1))))
+ (inputs
+ `(("gtk+" ,gtk+)))
+ (home-page "http://gtk-rs.org/")
+ (synopsis "Rust bindings for the PangoCairo library")
+ (description
+ "Rust bindings for the PangoCairo library.")
+ (license license:expat)))
+
+(define-public rust-pangocairo-0.8
+ (package
+ (inherit rust-pangocairo-0.9)
+ (name "rust-pangocairo")
+ (version "0.8.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "pangocairo" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0qjiwsp73x3w0493dzycyjzxnzwq7ixwmf1ccr5r41pjhxbnk1kl"))))
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-cairo-rs" ,rust-cairo-rs-0.7)
+ ("rust-cairo-sys-rs" ,rust-cairo-sys-rs-0.9)
+ ("rust-glib" ,rust-glib-0.8)
+ ("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-gobject-sys" ,rust-gobject-sys-0.9)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pango" ,rust-pango-0.7)
+ ("rust-pango-sys" ,rust-pango-sys-0.9)
+ ("rust-pangocairo-sys" ,rust-pangocairo-sys-0.10)
+ ("rust-gtk-rs-lgpl-docs" ,rust-gtk-rs-lgpl-docs-0.1))
+ #:cargo-development-inputs
+ (("rust-gir-format-check" ,rust-gir-format-check-0.1))))))
+
+(define-public rust-pangocairo-sys-0.10
+ (package
+ (name "rust-pangocairo-sys")
+ (version "0.10.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "pangocairo-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1zlyf5vajarnxg5034b8qa5w5zajv96lfvlgiki26svpmcqip4m3"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-cairo-sys-rs" ,rust-cairo-sys-rs-0.9)
+ ("rust-glib-sys" ,rust-glib-sys-0.9)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-pango-sys" ,rust-pango-sys-0.9)
+ ("rust-pkg-config" ,rust-pkg-config-0.3))
+ #:cargo-development-inputs
+ (("rust-shell-words" ,rust-shell-words-0.1)
+ ("rust-tempfile" ,rust-tempfile-3))))
+ (inputs
+ `(("gtk+" ,gtk+)))
+ (home-page "https://gtk-rs.org/")
+ (synopsis "FFI bindings to libgtk-3")
+ (description "This package provides FFI bindings to libgtk-3.")
+ (license license:expat)))
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 0f0f0c28c9..5b4767a779 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -8,6 +8,9 @@
;;; Copyright © 2019, 2020 Hartmut Goebel <h.goebel@crazy-compilers.com>
;;; Copyright © 2020 Jakub Kądziołka <kuba@kadziolka.net>
;;; Copyright © 2020 Leo Famulari <leo@famulari.name>
+;;; Copyright © 2020 Gabriel Arazas <foo.dogsquared@gmail.com>
+;;; Copyright © 2020 André Batista <nandre@riseup.net>
+;;; Copyright © 2020 Arun Isaac <arunisaac@systemreboot.net>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -27,17 +30,19 @@
(define-module (gnu packages crates-io)
#:use-module (guix build-system cargo)
#:use-module (guix download)
+ #:use-module (guix git-download)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
+ #:use-module (guix utils)
#:use-module (gnu packages)
- #:use-module (gnu packages base)
+ #:use-module (gnu packages cmake)
#:use-module (gnu packages compression)
+ #:use-module (gnu packages crates-graphics)
+ #:use-module (gnu packages crates-gtk)
#:use-module (gnu packages curl)
+ #:use-module (gnu packages databases)
#:use-module (gnu packages fontutils)
- #:use-module (gnu packages freedesktop)
#:use-module (gnu packages gettext)
- #:use-module (gnu packages glib)
- #:use-module (gnu packages gtk)
#:use-module (gnu packages jemalloc)
#:use-module (gnu packages llvm)
#:use-module (gnu packages multiprecision)
@@ -49,7 +54,6 @@
#:use-module (gnu packages sqlite)
#:use-module (gnu packages ssh)
#:use-module (gnu packages tls)
- #:use-module (gnu packages video)
#:use-module (gnu packages version-control)
#:use-module (gnu packages web)
#:use-module (gnu packages xml)
@@ -106,7 +110,7 @@ library in Rust.")
("rust-cpp-demangle" ,rust-cpp-demangle-0.2)
("rust-gimli" ,rust-gimli-0.20)
("rust-smallvec" ,rust-smallvec-1)
- ("rust-lazycell" ,rust-lazycell-1.2))
+ ("rust-lazycell" ,rust-lazycell-1))
#:cargo-development-inputs
(("rust-backtrace" ,rust-backtrace-0.3)
("rust-clap" ,rust-clap-2)
@@ -141,7 +145,7 @@ Rust, using gimli.")
("rust-fallible-iterator" ,rust-fallible-iterator-0.2)
("rust-gimli" ,rust-gimli-0.18)
("rust-intervaltree" ,rust-intervaltree-0.2)
- ("rust-lazycell" ,rust-lazycell-1.2)
+ ("rust-lazycell" ,rust-lazycell-1)
("rust-object" ,rust-object-0.12)
("rust-rustc-demangle" ,rust-rustc-demangle-0.1)
("rust-smallvec" ,rust-smallvec-0.6))
@@ -169,7 +173,7 @@ Rust, using gimli.")
(arguments
`(#:cargo-inputs
(("rust-compiler-builtins" ,rust-compiler-builtins-0.1)
- ("rust-rustc-std-workspace-core" ,rust-rustc-std-workspace-core-1.0))
+ ("rust-rustc-std-workspace-core" ,rust-rustc-std-workspace-core-1))
#:cargo-development-inputs
(("rust-bencher" ,rust-bencher-0.1)
("rust-rand" ,rust-rand-0.4))))
@@ -181,19 +185,157 @@ the Rust programming language.")
(license (list license:bsd-3
license:zlib))))
+(define-public rust-aead-0.3
+ (package
+ (name "rust-aead")
+ (version "0.3.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "aead" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0c8388alvivcj4qkxgh4s4l6fbczn3p8wc0pnar6crlfvcdmvjbz"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-blobby" ,rust-blobby-0.3)
+ ("rust-generic-array" ,rust-generic-array-0.14)
+ ("rust-heapless" ,rust-heapless-0.5))))
+ (home-page "https://github.com/RustCrypto/traits")
+ (synopsis "Traits for Authenticated Encryption with Associated Data (AEAD)
+algorithms")
+ (description "This package provides traits for Authenticated Encryption
+with Associated Data (AEAD) algorithms.")
+ (license (list license:expat license:asl2.0))))
+
+(define-public rust-aes-0.4
+ (package
+ (name "rust-aes")
+ (version "0.4.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "aes" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1xgsp2bn5llsppald60iw4497gaspslg0a8hknhniiz4zmki607p"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-aes-soft" ,rust-aes-soft-0.4)
+ ("rust-aesni" ,rust-aesni-0.7)
+ ("rust-block-cipher" ,rust-block-cipher-0.7))
+ #:cargo-development-inputs
+ (("rust-block-cipher" ,rust-block-cipher-0.7))))
+ (home-page "https://github.com/RustCrypto/block-ciphers")
+ (synopsis "Facade for AES (Rijndael) block ciphers implementations")
+ (description "This package provides a facade for AES (Rijndael) block
+ciphers implementations.")
+ (license (list license:expat license:asl2.0))))
+
+(define-public rust-aes-gcm-0.6
+ (package
+ (name "rust-aes-gcm")
+ (version "0.6.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "aes-gcm" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1lga8my3zlc0b1nhcpc1hrbykfm014fqs6d64bwrjqii05w01xc6"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-aead" ,rust-aead-0.3)
+ ("rust-aes" ,rust-aes-0.4)
+ ("rust-block-cipher" ,rust-block-cipher-0.7)
+ ("rust-ghash" ,rust-ghash-0.3)
+ ("rust-subtle" ,rust-subtle-2)
+ ("rust-zeroize" ,rust-zeroize-1))
+ #:cargo-development-inputs
+ (("rust-criterion" ,rust-criterion-0.3)
+ ("rust-criterion-cycles-per-byte"
+ ,rust-criterion-cycles-per-byte-0.1)
+ ("rust-hex-literal" ,rust-hex-literal-0.2))))
+ (home-page "https://github.com/RustCrypto/AEADs")
+ (synopsis "AES-GCM (Galois/Counter Mode) Authenticated Encryption")
+ (description "This package provides a pure Rust implementation of the
+AES-GCM (Galois/Counter Mode) Authenticated Encryption with Associated
+Data (AEAD) Cipher with optional architecture-specific hardware
+acceleration.")
+ (license (list license:asl2.0 license:expat))))
+
+(define-public rust-aes-soft-0.4
+ (package
+ (name "rust-aes-soft")
+ (version "0.4.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "aes-soft" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "19szsg0qqxq42k7bj5p3svb147n8wxy9a20n4g7mcl2fwrz689a9"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-block-cipher" ,rust-block-cipher-0.7)
+ ("rust-byteorder" ,rust-byteorder-1)
+ ("rust-opaque-debug" ,rust-opaque-debug-0.2))
+ #:cargo-development-inputs
+ (("rust-block-cipher" ,rust-block-cipher-0.7))))
+ (home-page "https://github.com/RustCrypto/block-ciphers")
+ (synopsis "Bit-sliced implementation of AES (Rijndael) block ciphers")
+ (description "This package provides a bit-sliced implementation of
+AES (Rijndael) block ciphers.")
+ (license (list license:expat license:asl2.0))))
+
+(define-public rust-aesni-0.7
+ (package
+ (name "rust-aesni")
+ (version "0.7.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "aesni" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0r6j0mjkyqnwvgib01cvrwfw8rlx1biw75234niv723n1fdx6l6h"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-block-cipher" ,rust-block-cipher-0.7)
+ ("rust-opaque-debug" ,rust-opaque-debug-0.2)
+ ("rust-stream-cipher" ,rust-stream-cipher-0.4))
+ #:cargo-development-inputs
+ (("rust-block-cipher" ,rust-block-cipher-0.7)
+ ("rust-stream-cipher" ,rust-stream-cipher-0.4))))
+ (home-page "https://github.com/RustCrypto/block-ciphers")
+ (synopsis "AES (Rijndael) block ciphers implementation using AES-NI")
+ (description "This package provides an implementation of AES (Rijndael)
+block ciphers using AES-NI.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-afl-0.8
(package
(name "rust-afl")
(version "0.8.0")
(source
- (origin
- (method url-fetch)
- (uri (crate-uri "afl" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "1rw11hycfjhqbc7z1smn75m0sczq519msjwimxh7b8s6n4pzk5r7"))))
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "afl" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1rw11hycfjhqbc7z1smn75m0sczq519msjwimxh7b8s6n4pzk5r7"))))
(build-system cargo-build-system)
(arguments
`(#:skip-build? #t
@@ -254,6 +396,62 @@ the Rust programming language.")
(base32
"0g2chc18ji7qxi0d03n2ai140qdcww958v5si6rcjnnhmri1vyfb"))))))
+(define-public rust-ahash-0.4
+ (package
+ (name "rust-ahash")
+ (version "0.4.4")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "ahash" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "06bxygcis4pfx0axi1ld0lclg8mf4plywdy7fnkyw2hrhcb74rkd"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-const-random" ,rust-const-random-0.1))
+ #:cargo-development-inputs
+ (("rust-criterion" ,rust-criterion-0.3)
+ ("rust-fnv" ,rust-fnv-1)
+ ("rust-fxhash" ,rust-fxhash-0.2)
+ ("rust-hex" ,rust-hex-0.3)
+ ("rust-no-panic" ,rust-no-panic-0.1)
+ ("rust-rand" ,rust-rand-0.6)
+ ("rust-seahash" ,rust-seahash-3))))
+ (home-page "https://github.com/tkaitchuck/ahash")
+ (synopsis "Non-cryptographic hash function using AES-NI")
+ (description "This package provides a non-cryptographic hash function
+using AES-NI for high performance.")
+ (license (list license:expat license:asl2.0))))
+
+(define-public rust-ahash-0.3
+ (package
+ (inherit rust-ahash-0.4)
+ (name "rust-ahash")
+ (version "0.3.8")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "ahash" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "05qjnr0wccch0gg2kghg0xyh8qd5gfqd15q9dd6r1lamcs375zg8"))))
+ (arguments
+ `(#:cargo-inputs
+ (("rust-const-random" ,rust-const-random-0.1))
+ #:cargo-development-inputs
+ (("rust-criterion" ,rust-criterion-0.3)
+ ("rust-fnv" ,rust-fnv-1)
+ ("rust-fxhash" ,rust-fxhash-0.2)
+ ("rust-hex" ,rust-hex-0.3)
+ ("rust-no-panic" ,rust-no-panic-0.1)
+ ("rust-rand" ,rust-rand-0.6)
+ ("rust-seahash" ,rust-seahash-3))))))
+
(define-public rust-aho-corasick-0.7
(package
(name "rust-aho-corasick")
@@ -390,38 +588,51 @@ code that is generic with regard to the algebraic entity types.")
@code{alga} crate.")
(license license:asl2.0)))
-(define-public rust-andrew-0.2
+(define-public rust-alloc-no-stdlib-2
(package
- (name "rust-andrew")
+ (name "rust-alloc-no-stdlib")
+ (version "2.0.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "alloc-no-stdlib" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "19lhmi73fii1b6vrzh23vvp5yjqm33cb94h9yz17pn25b51yr4ji"))))
+ (build-system cargo-build-system)
+ (home-page "https://github.com/dropbox/rust-alloc-no-stdlib")
+ (synopsis "Dynamic allocator that may be used with or without the stdlib")
+ (description "This package provides a dynamic allocator that may be used
+with or without the stdlib. This allows a package with nostd to allocate
+memory dynamically and be used either with a custom allocator, items on the
+stack, or by a package that wishes to simply use Box<>. It also provides
+options to use calloc or a mutable global variable for pre-zeroed memory.")
+ (license license:bsd-3)))
+
+(define-public rust-alloc-no-stdlib-2.0 rust-alloc-no-stdlib-2)
+
+(define-public rust-alloc-stdlib-0.2
+ (package
+ (name "rust-alloc-stdlib")
(version "0.2.1")
(source
(origin
(method url-fetch)
- (uri (crate-uri "andrew" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
+ (uri (crate-uri "alloc-stdlib" version))
+ (file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
- "0pmklwcwy8g1jras46fz8xcny779zfqpg4riksrbdhkjk3w0jzwv"))))
+ "1hj3r1x88aajnvigdck0diygj2isc90wa271kkj1swgiq3nxfzk9"))))
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs
- (("rust-bitflags" ,rust-bitflags-1)
- ("rust-line-drawing" ,rust-line-drawing-0.7)
- ("rust-rusttype" ,rust-rusttype-0.7)
- ("rust-walkdir" ,rust-walkdir-2)
- ("rust-xdg" ,rust-xdg-2.2)
- ("rust-xml-rs" ,rust-xml-rs-0.8))
- #:cargo-development-inputs
- (("rust-smithay-client-toolkit" ,rust-smithay-client-toolkit-0.4))))
- (inputs
- `(("wayland" ,wayland)))
- (home-page "https://github.com/trimental/andrew")
- (synopsis "Provides convenient drawing of objects to buffers")
- (description
- "The @code{andrew} crate provides convenient drawing of objects such as
-shapes, lines and text to buffers.")
- (license license:expat)))
+ (("rust-alloc-no-stdlib" ,rust-alloc-no-stdlib-2.0))))
+ (home-page "https://github.com/dropbox/rust-alloc-no-stdlib")
+ (synopsis "A dynamic allocator example that may be used with the stdlib")
+ (description "This package provides a dynamic allocator example that may
+be used with the stdlib.")
+ (license license:bsd-3)))
(define-public rust-android-glue-0.2
(package
@@ -442,52 +653,6 @@ shapes, lines and text to buffers.")
(description "This package provides the glue for the Android JNI.")
(license license:expat)))
-(define-public rust-ansi-term-0.12
- (package
- (name "rust-ansi-term")
- (version "0.12.1")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "ansi_term" version))
- (file-name (string-append name "-" version ".crate"))
- (sha256
- (base32
- "1ljmkbilxgmhavxvxqa7qvm6f3fjggi7q2l3a72q9x0cxjvrnanm"))))
- (build-system cargo-build-system)
- (arguments
- `(#:cargo-inputs
- (("rust-serde" ,rust-serde-1)
- ("rust-winapi" ,rust-winapi-0.3))
- #:cargo-development-inputs
- (("rust-doc-comment" ,rust-doc-comment-0.3)
- ("rust-regex" ,rust-regex-1)
- ("rust-serde-json" ,rust-serde-json-1))))
- (home-page "https://github.com/ogham/rust-ansi-term")
- (synopsis "Library for ANSI terminal colours and styles")
- (description
- "This is a library for controlling colours and formatting, such as red bold
-text or blue underlined text, on ANSI terminals.")
- (license license:expat)))
-
-(define-public rust-ansi-term-0.11
- (package
- (inherit rust-ansi-term-0.12)
- (name "rust-ansi-term")
- (version "0.11.0")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "ansi_term" version))
- (file-name (string-append name "-" version ".crate"))
- (sha256
- (base32
- "16wpvrghvd0353584i1idnsgm0r3vchg8fyrm0x8ayv1rgvbljgf"))))
- (arguments
- `(#:skip-build? #t
- #:cargo-inputs
- (("rust-winapi" ,rust-winapi-0.3))))))
-
(define-public rust-antidote-1.0
(package
(name "rust-antidote")
@@ -527,52 +692,15 @@ text or blue underlined text, on ANSI terminals.")
`(#:skip-build? #t
#:cargo-development-inputs
(("rust-futures" ,rust-futures-0.3)
- ("rust-rustversion" ,rust-rustversion-1.0)
- ("rust-thiserror" ,rust-thiserror-1.0)
- ("rust-trybuild" ,rust-trybuild-1.0))))
+ ("rust-rustversion" ,rust-rustversion-1)
+ ("rust-thiserror" ,rust-thiserror-1)
+ ("rust-trybuild" ,rust-trybuild-1))))
(home-page "https://github.com/dtolnay/anyhow")
(synopsis "Flexible concrete Error type")
(description "This package provides a flexible concrete Error type built on
@code{std::error::Error}.")
(license (list license:expat license:asl2.0))))
-(define-public rust-aom-sys-0.1
- (package
- (name "rust-aom-sys")
- (version "0.1.4")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "aom-sys" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "1bqcpkycv1d67r6jcl9npfbw6rkl829rdq9w6vlpb0rjqxp0xzsn"))))
- (build-system cargo-build-system)
- (arguments
- `(#:cargo-inputs
- (("rust-bindgen" ,rust-bindgen-0.53)
- ("rust-metadeps" ,rust-metadeps-1.1))
- #:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'set-environmental-variable
- (lambda* (#:key inputs #:allow-other-keys)
- (let ((clang (assoc-ref inputs "libclang")))
- (setenv "LIBCLANG_PATH"
- (string-append clang "/lib")))
- #t)))))
- (native-inputs
- `(("pkg-config" ,pkg-config)))
- (inputs
- `(("libaom" ,libaom)
- ("libclang" ,clang)
- ("llvm" ,llvm)))
- (home-page "https://github.com/rust-av/aom-rs")
- (synopsis "FFI bindings to aom")
- (description "This package provides FFI bindings to aom.")
- (license license:expat)))
-
(define-public rust-approx-0.3
(package
(name "rust-approx")
@@ -655,7 +783,7 @@ text or blue underlined text, on ANSI terminals.")
("rust-itertools" ,rust-itertools-0.8)
("rust-model" ,rust-model-0.1)
("rust-num-cpus" ,rust-num-cpus-1)
- ("rust-once-cell" ,rust-once-cell-1.2)
+ ("rust-once-cell" ,rust-once-cell-1)
("rust-proptest" ,rust-proptest-0.8)
("rust-version-sync" ,rust-version-sync-0.8))))
(home-page "https://github.com/vorner/arc-swap")
@@ -725,7 +853,7 @@ that runs on Argon2.")
(define-public rust-arrayref-0.3
(package
(name "rust-arrayref")
- (version "0.3.5")
+ (version "0.3.6")
(source
(origin
(method url-fetch)
@@ -734,11 +862,10 @@ that runs on Argon2.")
(string-append name "-" version ".tar.gz"))
(sha256
(base32
- "1vphy316jbgmgckk4z7m8csvlyc8hih9w95iyq48h8077xc2wf0d"))))
+ "0i6m1l3f73i0lf0cjdf5rh3xpvxydyhfbakq7xx7bkrp5qajgid4"))))
(build-system cargo-build-system)
(arguments
- `(#:skip-build? #t
- #:cargo-development-inputs
+ `(#:cargo-development-inputs
(("rust-quickcheck" ,rust-quickcheck-0.6))))
(home-page "https://github.com/droundy/arrayref")
(synopsis "Macros to take array references of slices")
@@ -800,6 +927,31 @@ ArrayVec and ArrayString.")
("rust-matches" ,rust-matches-0.1)
("rust-serde-test" ,rust-serde-test-1))))))
+(define-public rust-as-slice-0.1
+ (package
+ (name "rust-as-slice")
+ (version "0.1.4")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "as-slice" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1rmhdfj11va424163d6r79wbgf2043i2p37s59ky6x2v8wiiqkdv"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-generic-array-0.14" ,rust-generic-array-0.14)
+ ("rust-generic-array-0.13" ,rust-generic-array-0.13)
+ ("rust-generic-array-0.12" ,rust-generic-array-0.12)
+ ("rust-stable-deref-trait" ,rust-stable-deref-trait-1))))
+ (home-page "https://github.com/japaric/as-slice")
+ (synopsis "AsSlice and AsMutSlice traits")
+ (description "This package provides @code{AsSlice} and @code{AsMutSlice}
+traits.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-ascii-1.0
(package
(name "rust-ascii")
@@ -847,31 +999,6 @@ standard library.")
("rust-serde" ,rust-serde-1)
("rust-serde-test" ,rust-serde-test-1))))))
-(define-public rust-ascii-canvas-2
- (package
- (name "rust-ascii-canvas")
- (version "2.0.0")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "ascii-canvas" version))
- (file-name (string-append name "-" version ".tar.gz"))
- (sha256
- (base32 "0a9s8vrbc5jr6ry5ygjyfqmbs9gyya1v6dsxzsczpai8z4nvg3pz"))))
- (build-system cargo-build-system)
- (arguments
- `(#:skip-build? #t ;; TODO: failes due to an unresolved import
- #:cargo-inputs
- (("rust-term" ,rust-term-0.5))))
- (home-page "https://github.com/nikomatsakis/ascii-canvas")
- (synopsis "Simple canvas for drawing lines and styled text and emitting to
-the terminal")
- (description "@code{ASCII} canvas is a simple Rust library that allows you
-to draw lines and colored text and then write them to the terminal. It uses
-the term library to handle the ANSI nonsense and hence it works on Windows,
-Mac, and Unix.")
- (license (list license:asl2.0 license:expat))))
-
(define-public rust-assert-cli-0.6
(package
(name "rust-assert-cli")
@@ -887,8 +1014,8 @@ Mac, and Unix.")
(arguments
`(#:tests? #f ;; requires `printenv`, but installing coreutils doesn't help
#:cargo-inputs
- (("rust-colored" ,rust-colored-1.9)
- ("rust-difference" ,rust-difference-2.0)
+ (("rust-colored" ,rust-colored-1)
+ ("rust-difference" ,rust-difference-2)
("rust-environment" ,rust-environment-0.1)
("rust-failure" ,rust-failure-0.1)
("rust-failure-derive" ,rust-failure-derive-0.1)
@@ -952,9 +1079,9 @@ Mac, and Unix.")
#:cargo-development-inputs
(("rust-docmatic" ,rust-docmatic-0.1))))
(home-page "https://github.com/assert-rs/assert_fs")
- (synopsis "Filesystem fixtures and assertions for testing")
+ (synopsis "File system fixtures and assertions for testing")
(description
- "Filesystem fixtures and assertions for testing.")
+ "File system fixtures and assertions for testing.")
(license (list license:expat license:asl2.0))))
(define-public rust-assert-matches-1.3
@@ -1002,18 +1129,109 @@ Mac, and Unix.")
(description "This package provides a libsyntax ast builder.")
(license (list license:expat license:asl2.0))))
+(define-public rust-async-compression-0.3
+ (package
+ (name "rust-async-compression")
+ (version "0.3.5")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "async-compression" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "164dfy1wrl9qbj95rvcpkfbrkpz3c1s7mk288sv9cwp7rj5pc8ch"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-brotli" ,rust-brotli-3)
+ ("rust-bytes" ,rust-bytes-0.5)
+ ("rust-bzip2" ,rust-bzip2-0.3)
+ ("rust-flate2" ,rust-flate2-1)
+ ("rust-futures-core" ,rust-futures-core-0.3)
+ ("rust-futures-io" ,rust-futures-io-0.3)
+ ("rust-memchr" ,rust-memchr-2)
+ ("rust-pin-project-lite" ,rust-pin-project-lite-0.1)
+ ("rust-tokio" ,rust-tokio-0.2)
+ ("rust-xz2" ,rust-xz2-0.1)
+ ("rust-zstd" ,rust-zstd-0.5)
+ ("rust-zstd-safe" ,rust-zstd-safe-2))
+ #:cargo-development-inputs
+ (("rust-bytes" ,rust-bytes-0.5)
+ ("rust-futures" ,rust-futures-0.3)
+ ("rust-futures-test" ,rust-futures-test-0.3)
+ ("rust-ntest" ,rust-ntest-0.3)
+ ("rust-proptest" ,rust-proptest-0.9)
+ ("rust-proptest-derive" ,rust-proptest-derive-0.1)
+ ("rust-rand" ,rust-rand-0.7)
+ ("rust-timebomb" ,rust-timebomb-0.1)
+ ("rust-tokio" ,rust-tokio-0.2))))
+ (home-page "https://github.com/Nemo157/async-compression")
+ (synopsis "Adaptors between compression crates and Rust's modern asynchronous IO types")
+ (description "This package provides adaptors between compression crates
+and Rust's modern asynchronous IO types.")
+ (license (list license:expat license:asl2.0))))
+
+(define-public rust-async-trait-0.1
+ (package
+ (name "rust-async-trait")
+ (version "0.1.40")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "async-trait" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "10x7jcg8xqvkmqyz11117aw959p4af5gq1cpf022b9f0hl6j6z38"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-proc-macro2" ,rust-proc-macro2-1)
+ ("rust-quote" ,rust-quote-1)
+ ("rust-syn" ,rust-syn-1))
+ #:cargo-development-inputs
+ (("rust-rustversion" ,rust-rustversion-1)
+ ("rust-tracing" ,rust-tracing-0.1)
+ ("rust-tracing-attributes" ,rust-tracing-attributes-0.1)
+ ("rust-tracing-futures" ,rust-tracing-futures-0.2)
+ ("rust-trybuild" ,rust-trybuild-1))))
+ (home-page "https://github.com/dtolnay/async-trait")
+ (synopsis "Type erasure for async trait methods")
+ (description "This package provides type erasure for async trait
+methods.")
+ (license (list license:expat license:asl2.0))))
+
+(define-public rust-atom-0.3
+ (package
+ (name "rust-atom")
+ (version "0.3.5")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "atom" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1qig9fcdqf07mzzpkicm5wgxv0zpr28njdsqf708wxq27yf6k1iw"))))
+ (build-system cargo-build-system)
+ (home-page "https://github.com/slide-rs/atom")
+ (synopsis "A safe abstraction around AtomicPtr")
+ (description "This package provides a safe abstraction around AtomicPtr.")
+ (license license:asl2.0)))
+
(define-public rust-atty-0.2
(package
(name "rust-atty")
(version "0.2.14")
(source
- (origin
- (method url-fetch)
- (uri (crate-uri "atty" version))
- (file-name (string-append name "-" version ".crate"))
- (sha256
- (base32
- "1s7yslcs6a28c5vz7jwj63lkfgyx8mx99fdirlhi9lbhhzhrpcyr"))))
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "atty" version))
+ (file-name (string-append name "-" version ".crate"))
+ (sha256
+ (base32
+ "1s7yslcs6a28c5vz7jwj63lkfgyx8mx99fdirlhi9lbhhzhrpcyr"))))
(build-system cargo-build-system)
(arguments
`(#:skip-build? #t
@@ -1129,6 +1347,25 @@ in Rust.")
("rust-serde-json" ,rust-serde-json-1)
("rust-streaming-stats" ,rust-streaming-stats-0.2))))))
+(define-public rust-az-1
+ (package
+ (name "rust-az")
+ (version "1.0.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "az" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0sb51w9pjcqb315dg6zv9wwqj1q2fldcc3xmfv0bhkmajiyx9g79"))))
+ (build-system cargo-build-system)
+ (home-page "https://gitlab.com/tspiteri/az")
+ (synopsis "Casts and checked casts")
+ (description "This crate provides casts and checked casts.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-backtrace-0.3
(package
(name "rust-backtrace")
@@ -1157,7 +1394,7 @@ in Rust.")
("rust-memmap" ,rust-memmap-0.7)
("rust-rustc-demangle" ,rust-rustc-demangle-0.1)
("rust-rustc-serialize" ,rust-rustc-serialize-0.3)
- ("rust-rustc-std-workspace-core" ,rust-rustc-std-workspace-core-1.0)
+ ("rust-rustc-std-workspace-core" ,rust-rustc-std-workspace-core-1)
("rust-serde" ,rust-serde-1)
("rust-winapi" ,rust-winapi-0.3))))
(home-page "https://github.com/rust-lang/backtrace-rs")
@@ -1168,6 +1405,21 @@ in Rust.")
trace (backtrace) at runtime in a Rust program.")
(license (list license:asl2.0 license:expat))))
+(define-public rust-backtrace-0.3.35
+ (package
+ (inherit rust-backtrace-0.3)
+ (name "rust-backtrace")
+ (version "0.3.35")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "backtrace" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0mfwbb6832rh1za304w8x37bvs9fjbybpmmz0iksqfzsaf108w8k"))))))
+
(define-public rust-backtrace-sys-0.1
(package
(name "rust-backtrace-sys")
@@ -1185,7 +1437,7 @@ trace (backtrace) at runtime in a Rust program.")
`(#:cargo-inputs
(("rust-libc" ,rust-libc-0.2)
("rust-compiler-builtins" ,rust-compiler-builtins-0.1)
- ("rust-rustc-std-workspace-core" ,rust-rustc-std-workspace-core-1.0)
+ ("rust-rustc-std-workspace-core" ,rust-rustc-std-workspace-core-1)
("rust-cc" ,rust-cc-1))))
(home-page "https://github.com/rust-lang/backtrace-rs")
(synopsis "Bindings to the libbacktrace gcc library")
@@ -1197,7 +1449,7 @@ trace (backtrace) at runtime in a Rust program.")
(define-public rust-base64-0.12
(package
(name "rust-base64")
- (version "0.12.2")
+ (version "0.12.3")
(source
(origin
(method url-fetch)
@@ -1206,7 +1458,7 @@ trace (backtrace) at runtime in a Rust program.")
(string-append name "-" version ".tar.gz"))
(sha256
(base32
- "0ryc48pp8dpx3rl1dcwn723dyfgifi4imh1f6kwd95lcqh6sy8z2"))
+ "1zq33had71xh48n17g4kqs96szhx3yh7qibzwi4fk217n3vz0h9l"))
(modules '((guix build utils)))
(snippet
'(begin
@@ -1257,7 +1509,7 @@ trace (backtrace) at runtime in a Rust program.")
"13k6bvd3n6dm7jqn9x918w65dd9xhx454bqphbnv0bkd6n9dj98b"))))
(arguments
`(#:cargo-inputs
- (("rust-byteorder" ,rust-byteorder-1.3))
+ (("rust-byteorder" ,rust-byteorder-1))
#:cargo-development-inputs
(("rust-criterion" ,rust-criterion-0.2)
("rust-rand" ,rust-rand-0.4))))))
@@ -1276,7 +1528,7 @@ trace (backtrace) at runtime in a Rust program.")
(base32 "0hs62r35bgxslawyrn1vp9rmvrkkm76fqv0vqcwd048vs876r7a8"))))
(arguments
`(#:cargo-inputs
- (("rust-byteorder" ,rust-byteorder-1.3)
+ (("rust-byteorder" ,rust-byteorder-1)
("rust-safemem" ,rust-safemem-0.3))
#:cargo-development-inputs
(("rust-rand" ,rust-rand-0.4))))))
@@ -1353,6 +1605,32 @@ and no more (caveat: black_box is still missing!).")
tracebacks.")
(license (list license:expat license:asl2.0))))
+(define-public rust-bigdecimal-0.2
+ (package
+ (name "rust-bigdecimal")
+ (version "0.2.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "bigdecimal" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0fd5chyy76y4qb043w1bbgz1v22f9hw5703f5r90ac5hwqk3qh6c"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-num-bigint" ,rust-num-bigint-0.3)
+ ("rust-num-integer" ,rust-num-integer-0.1)
+ ("rust-num-traits" ,rust-num-traits-0.2)
+ ("rust-serde" ,rust-serde-1))
+ #:cargo-development-inputs
+ (("rust-serde-json" ,rust-serde-json-1))))
+ (home-page "https://github.com/akubera/bigdecimal-rs")
+ (synopsis "Arbitrary precision decimal numbers")
+ (description "This package provides arbitrary precision decimal numbers.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-bincode-1
(package
(name "rust-bincode")
@@ -1370,7 +1648,7 @@ tracebacks.")
(arguments
`(#:cargo-inputs
(("rust-serde" ,rust-serde-1)
- ("rust-byteorder" ,rust-byteorder-1.3))
+ ("rust-byteorder" ,rust-byteorder-1))
#:cargo-development-inputs
(("rust-serde-bytes" ,rust-serde-bytes-0.11)
("rust-serde-derive" ,rust-serde-derive-1))))
@@ -1382,8 +1660,63 @@ tracebacks.")
that uses Serde for transforming structs into bytes and vice versa!")
(license license:expat)))
+(define-public rust-bindgen-0.55
+ (package
+ (name "rust-bindgen")
+ (version "0.55.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "bindgen" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0hxlvy9q9984rr3rqaxwmgxjrd9wh11mcc161hv3shz6b7jkrcbm"))))
+ (build-system cargo-build-system)
+ (inputs
+ `(("clang" ,clang)))
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-cexpr" ,rust-cexpr-0.4)
+ ("rust-cfg-if" ,rust-cfg-if-0.1)
+ ("rust-clang-sys" ,rust-clang-sys-1)
+ ("rust-clap" ,rust-clap-2)
+ ("rust-env-logger" ,rust-env-logger-0.7)
+ ("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-lazycell" ,rust-lazycell-1)
+ ("rust-log" ,rust-log-0.4)
+ ("rust-peeking-take-while" ,rust-peeking-take-while-0.1)
+ ("rust-proc-macro2" ,rust-proc-macro2-1)
+ ("rust-quote" ,rust-quote-1)
+ ("rust-regex" ,rust-regex-1)
+ ("rust-rustc-hash" ,rust-rustc-hash-1)
+ ("rust-shlex" ,rust-shlex-0.1)
+ ("rust-which" ,rust-which-3))
+ #:cargo-development-inputs
+ (("rust-clap" ,rust-clap-2)
+ ("rust-diff" ,rust-diff-0.1)
+ ("rust-shlex" ,rust-shlex-0.1))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'enable-unstable-features
+ (lambda _
+ (setenv "RUSTC_BOOTSTRAP" "1")
+ #t))
+ (add-before 'configure 'configure-clang
+ (lambda* (#:key inputs #:allow-other-keys)
+ (setenv "LIBCLANG_PATH" (string-append (assoc-ref inputs "clang")
+ "/lib"))
+ #t)))))
+ (home-page "https://rust-lang.github.io/rust-bindgen/")
+ (synopsis "Generate Rust FFI bindings to C and C++ libraries.")
+ (description "This package can be used to automatically generate Rust FFI
+bindings to C and C++ libraries.")
+ (license license:bsd-3)))
+
(define-public rust-bindgen-0.54
(package
+ (inherit rust-bindgen-0.55)
(name "rust-bindgen")
(version "0.54.1")
(source
@@ -1406,15 +1739,15 @@ that uses Serde for transforming structs into bytes and vice versa!")
("rust-clap" ,rust-clap-2)
("rust-env-logger" ,rust-env-logger-0.7)
("rust-lazy-static" ,rust-lazy-static-1)
- ("rust-lazycell" ,rust-lazycell-1.2)
+ ("rust-lazycell" ,rust-lazycell-1)
("rust-log" ,rust-log-0.4)
("rust-peeking-take-while" ,rust-peeking-take-while-0.1)
("rust-proc-macro2" ,rust-proc-macro2-1)
("rust-quote" ,rust-quote-1)
("rust-regex" ,rust-regex-1)
- ("rust-rustc-hash" ,rust-rustc-hash-1.1)
+ ("rust-rustc-hash" ,rust-rustc-hash-1)
("rust-shlex" ,rust-shlex-0.1)
- ("rust-which" ,rust-which-3.1))
+ ("rust-which" ,rust-which-3))
#:cargo-development-inputs
(("rust-clap" ,rust-clap-2)
("rust-diff" ,rust-diff-0.1)
@@ -1428,13 +1761,7 @@ that uses Serde for transforming structs into bytes and vice versa!")
(string-append clang "/lib")))
#t)))))
(inputs
- `(("libclang" ,clang)))
- (home-page "https://rust-lang.github.io/rust-bindgen/")
- (synopsis
- "Automatically generates Rust FFI bindings to C and C++ libraries")
- (description
- "Automatically generates Rust FFI bindings to C and C++ libraries.")
- (license license:bsd-3)))
+ `(("libclang" ,clang)))))
(define-public rust-bindgen-0.53
(package
@@ -1459,15 +1786,15 @@ that uses Serde for transforming structs into bytes and vice versa!")
("rust-clap" ,rust-clap-2)
("rust-env-logger" ,rust-env-logger-0.7)
("rust-lazy-static" ,rust-lazy-static-1)
- ("rust-lazycell" ,rust-lazycell-1.2)
+ ("rust-lazycell" ,rust-lazycell-1)
("rust-log" ,rust-log-0.4)
("rust-peeking-take-while" ,rust-peeking-take-while-0.1)
("rust-proc-macro2" ,rust-proc-macro2-1)
("rust-quote" ,rust-quote-1)
("rust-regex" ,rust-regex-1)
- ("rust-rustc-hash" ,rust-rustc-hash-1.1)
+ ("rust-rustc-hash" ,rust-rustc-hash-1)
("rust-shlex" ,rust-shlex-0.1)
- ("rust-which" ,rust-which-3.1))
+ ("rust-which" ,rust-which-3))
#:cargo-development-inputs
(("rust-clap" ,rust-clap-2)
("rust-diff" ,rust-diff-0.1)
@@ -1507,13 +1834,13 @@ that uses Serde for transforming structs into bytes and vice versa!")
("rust-env-logger" ,rust-env-logger-0.7)
("rust-proc-macro2" ,rust-proc-macro2-1)
("rust-quote" ,rust-quote-1)
- ("rust-rustc-hash" ,rust-rustc-hash-1.1)
+ ("rust-rustc-hash" ,rust-rustc-hash-1)
("rust-bitflags" ,rust-bitflags-1)
- ("rust-lazycell" ,rust-lazycell-1.2)
+ ("rust-lazycell" ,rust-lazycell-1)
("rust-regex" ,rust-regex-1)
("rust-lazy-static" ,rust-lazy-static-1)
("rust-clap" ,rust-clap-2)
- ("rust-which" ,rust-which-3.1))
+ ("rust-which" ,rust-which-3))
#:cargo-development-inputs
(("rust-clap" ,rust-clap-2)
("rust-diff" ,rust-diff-0.1)
@@ -1553,12 +1880,12 @@ that uses Serde for transforming structs into bytes and vice versa!")
("rust-env-logger" ,rust-env-logger-0.6)
("rust-proc-macro2" ,rust-proc-macro2-1)
("rust-quote" ,rust-quote-1)
- ("rust-rustc-hash" ,rust-rustc-hash-1.1)
+ ("rust-rustc-hash" ,rust-rustc-hash-1)
("rust-bitflags" ,rust-bitflags-1)
("rust-regex" ,rust-regex-1)
("rust-lazy-static" ,rust-lazy-static-1)
("rust-clap" ,rust-clap-2)
- ("rust-which" ,rust-which-3.1))
+ ("rust-which" ,rust-which-3))
#:cargo-development-inputs
(("rust-clap" ,rust-clap-2)
("rust-diff" ,rust-diff-0.1)
@@ -1729,6 +2056,27 @@ that uses Serde for transforming structs into bytes and vice versa!")
"This package provides a set of bits.")
(license (list license:asl2.0 license:expat))))
+(define-public rust-bit-set-0.4
+ (package
+ (inherit rust-bit-set-0.5)
+ (name "rust-bit-set")
+ (version "0.4.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "bit-set" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0320hhcbr73yzjpj2237vw2zq728yg7vmzb8dardg04ff4263gyr"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bit-vec" ,rust-bit-vec-0.4))
+ #:cargo-development-inputs
+ (("rust-rand" ,rust-rand-0.3))))))
+
(define-public rust-bit-vec-0.5
(package
(name "rust-bit-vec")
@@ -1755,6 +2103,24 @@ that uses Serde for transforming structs into bytes and vice versa!")
"This package provides a vector of bits.")
(license (list license:expat license:asl2.0))))
+(define-public rust-bit-vec-0.4
+ (package
+ (inherit rust-bit-vec-0.5)
+ (name "rust-bit-vec")
+ (version "0.4.4")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "bit-vec" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0pw902a8ail0k64a7092a8vngfzsq7xkj2r22hz6q1z62s5zzd02"))))
+ (arguments
+ `(#:cargo-development-inputs
+ (("rust-rand" ,rust-rand-0.3))))))
+
(define-public rust-bitflags-1
(package
(name "rust-bitflags")
@@ -1775,6 +2141,21 @@ behave like a set of bitflags.")
(license (list license:asl2.0
license:expat))))
+(define-public rust-bitflags-0.9
+ (package
+ (inherit rust-bitflags-1)
+ (name "rust-bitflags")
+ (version "0.9.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "bitflags" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "19dk39gfwmhi3iy1x0wgml1fv1bkb525ywy25zwihbm063i05zaf"))))))
+
(define-public rust-bitflags-0.8
(package
(inherit rust-bitflags-1)
@@ -1891,7 +2272,7 @@ behave like a set of bitflags.")
("rust-clippy" ,rust-clippy-0.0)
("rust-constant-time-eq" ,rust-constant-time-eq-0.1))
#:cargo-development-inputs
- (("rust-data-encoding" ,rust-data-encoding-2.1))))
+ (("rust-data-encoding" ,rust-data-encoding-2))))
(home-page "https://github.com/cesarb/blake2-rfc")
(synopsis "Rust implementation of BLAKE2 based on RFC 7693")
(description
@@ -1945,12 +2326,36 @@ BLAKE2bp hash functions.")
(home-page "https://github.com/blas-lapack-rs/blas-sys")
(synopsis "Bindings to BLAS (Fortran)")
(description
- "Ths package provides bindings to BLAS (Fortran).")
+ "This package provides bindings to BLAS (Fortran).")
(license (list license:asl2.0
license:expat))))
+(define-public rust-blobby-0.3
+ (package
+ (name "rust-blobby")
+ (version "0.3.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "blobby" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1s2f3a7lx5rd26554d9940basff7qpyf1y8gkc309cgc8csmalpw"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-development-inputs
+ (("rust-hex" ,rust-hex-0.3))))
+ (home-page "https://github.com/RustCrypto/utils")
+ (synopsis "Iterator over simple binary blob storage")
+ (description "This package provides an iterator over simple binary blob
+storage.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-blobby-0.1
(package
+ (inherit rust-blobby-0.3)
(name "rust-blobby")
(version "0.1.2")
(source
@@ -1966,15 +2371,10 @@ BLAKE2bp hash functions.")
(arguments
`(#:skip-build? #t
#:cargo-inputs
- (("rust-byteorder" ,rust-byteorder-1.3))
+ (("rust-byteorder" ,rust-byteorder-1))
#:cargo-development-inputs
- (("rust-byteorder" ,rust-byteorder-1.3)
- ("rust-hex" ,rust-hex-0.3))))
- (home-page "https://github.com/RustCrypto/utils")
- (synopsis "Iterator over simple binary blob storage")
- (description
- "Iterator over simple binary blob storage.")
- (license (list license:asl2.0 license:expat))))
+ (("rust-byteorder" ,rust-byteorder-1)
+ ("rust-hex" ,rust-hex-0.3))))))
(define-public rust-block-0.1
(package
@@ -2042,7 +2442,7 @@ extension of blocks.")
`(#:cargo-inputs
(("rust-block-padding" ,rust-block-padding-0.1)
("rust-byte-tools" ,rust-byte-tools-0.3)
- ("rust-byteorder" ,rust-byteorder-1.3)
+ ("rust-byteorder" ,rust-byteorder-1)
("rust-generic-array" ,rust-generic-array-0.14))))))
(define-public rust-block-buffer-0.7
@@ -2063,9 +2463,54 @@ extension of blocks.")
`(#:cargo-inputs
(("rust-block-padding" ,rust-block-padding-0.1)
("rust-byte-tools" ,rust-byte-tools-0.3)
- ("rust-byteorder" ,rust-byteorder-1.3)
+ ("rust-byteorder" ,rust-byteorder-1)
("rust-generic-array" ,rust-generic-array-0.12))))))
+(define-public rust-block-cipher-0.7
+ (package
+ (name "rust-block-cipher")
+ (version "0.7.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "block-cipher" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "043zgfz1x4sxkdcsyabrcr440fcwhfpcqqa54jm7zp35wx4n84zs"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-blobby" ,rust-blobby-0.1)
+ ("rust-generic-array" ,rust-generic-array-0.14))))
+ (home-page "https://github.com/RustCrypto/traits")
+ (synopsis "Traits for description of block ciphers")
+ (description "This package provides traits for description of block
+ciphers.")
+ (license (list license:expat license:asl2.0))))
+
+(define-public rust-block-cipher-trait-0.4
+ (package
+ (name "rust-block-cipher-trait")
+ (version "0.4.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "block-cipher-trait" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "10qmg8vphqmfllb9a2yx6s7r66jh1wh33clhsawq7ikg2wgz2p6q"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-generic-array" ,rust-generic-array-0.8))))
+ (home-page "https://github.com/RustCrypto/block-ciphers")
+ (synopsis "Block cipher algorithms")
+ (description "This package provides a collection of block cipher
+algorithms. This package is deprecated. Please use block-cipher instead")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-block-padding-0.2
(package
(name "rust-block-padding")
@@ -2126,6 +2571,58 @@ extension of blocks.")
Bresenham's line algorithm.")
(license license:expat)))
+(define-public rust-brotli-3
+ (package
+ (name "rust-brotli")
+ (version "3.3.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "brotli" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0gk1g3fx1vps2ic8kh5n32gzq9h5w1j3ff6lvjm171ph428r2abz"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-alloc-no-stdlib" ,rust-alloc-no-stdlib-2)
+ ("rust-alloc-stdlib" ,rust-alloc-stdlib-0.2)
+ ("rust-brotli-decompressor" ,rust-brotli-decompressor-2)
+ ("rust-packed-simd" ,rust-packed-simd-0.3)
+ ("rust-sha2" ,rust-sha2-0.8))))
+ (home-page "https://github.com/dropbox/rust-brotli")
+ (synopsis "Brotli compressor and decompressor")
+ (description "This package provides a brotli compressor and decompressor
+with no dependency on the rust stdlib. This makes it suitable for embedded
+devices and kernels.")
+ (license (list license:bsd-3 license:expat))))
+
+(define-public rust-brotli-decompressor-2
+ (package
+ (name "rust-brotli-decompressor")
+ (version "2.3.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "brotli-decompressor" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1v7l1sa63ix1aq8h0k1ijvxvb5w796hz154b9aw0xn6lp31y2lhh"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:tests? #f ; not all test files included
+ #:cargo-inputs
+ (("rust-alloc-no-stdlib" ,rust-alloc-no-stdlib-2.0)
+ ("rust-alloc-stdlib" ,rust-alloc-stdlib-0.2))))
+ (home-page "https://github.com/dropbox/rust-brotli-decompressor")
+ (synopsis "Brotli decompressor")
+ (description "This package provides a brotli decompressor with no
+dependency on the rust stdlib. This makes it suitable for embedded devices
+and kernels.")
+ (license (list license:bsd-3 license:expat))))
+
(define-public rust-bstr-0.2
(package
(name "rust-bstr")
@@ -2174,6 +2671,25 @@ UTF-8.")
(base32
"0nzi9vqhl56ws8gq39f3aj4qjrr4l3g5lbkkcj8xq1x4cb74wq2r"))))))
+(define-public rust-build-const-0.2
+ (package
+ (name "rust-build-const")
+ (version "0.2.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "build_const" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0faz882spx9474cszay2djmb0lghbwq51qayabcar1s7g4r2l29r"))))
+ (build-system cargo-build-system)
+ (home-page "https://crates.io/crates/build_const")
+ (synopsis "Create importable constants from build.rs or a script")
+ (description "This package provides a library for creating importable
+constants from build.rs or a script.")
+ (license license:expat)))
+
(define-public rust-bumpalo-3
(package
(name "rust-bumpalo")
@@ -2362,7 +2878,7 @@ in a byte slice, fast.")
(license
(list license:zlib license:asl2.0 license:expat))))
-(define-public rust-byteorder-1.3
+(define-public rust-byteorder-1
(package
(name "rust-byteorder")
(version "1.3.4")
@@ -2392,7 +2908,7 @@ little-endian.")
(define-public rust-byteorder-0.5
(package
- (inherit rust-byteorder-1.3)
+ (inherit rust-byteorder-1)
(name "rust-byteorder")
(version "0.5.3")
(source
@@ -2449,8 +2965,8 @@ little-endian.")
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs
- (("rust-byteorder" ,rust-byteorder-1.3)
- ("rust-either" ,rust-either-1.5)
+ (("rust-byteorder" ,rust-byteorder-1)
+ ("rust-either" ,rust-either-1)
("rust-iovec" ,rust-iovec-0.1)
("rust-serde" ,rust-serde-1))
#:cargo-development-inputs
@@ -2563,7 +3079,7 @@ exposed as Reader/Writer streams.")
(arguments
`(#:skip-build? #t
#:cargo-inputs
- (("rust-byteorder" ,rust-byteorder-1.3)
+ (("rust-byteorder" ,rust-byteorder-1)
("rust-lazy-static" ,rust-lazy-static-1)
("rust-ppv-lite86" ,rust-ppv-lite86-0.2)
("rust-stream-cipher" ,rust-stream-cipher-0.3))
@@ -2575,93 +3091,6 @@ exposed as Reader/Writer streams.")
"The ChaCha family of stream ciphers.")
(license (list license:asl2.0 license:expat))))
-(define-public rust-cairo-rs-0.8
- (package
- (name "rust-cairo-rs")
- (version "0.8.1")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "cairo-rs" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "11303v1fv6hsc9n70ak380gknkf0098phpcxqdhkmahqjsx4jw0m"))))
- (build-system cargo-build-system)
- (arguments
- `(#:cargo-inputs
- (("rust-bitflags" ,rust-bitflags-1)
- ("rust-cairo-sys-rs" ,rust-cairo-sys-rs-0.9)
- ("rust-glib" ,rust-glib-0.9)
- ("rust-glib-sys" ,rust-glib-sys-0.9)
- ("rust-gobject-sys" ,rust-gobject-sys-0.9)
- ("rust-libc" ,rust-libc-0.2))
- #:cargo-development-inputs
- (("rust-gtk-rs-lgpl-docs" ,rust-gtk-rs-lgpl-docs-0.1)
- ("rust-tempfile" ,rust-tempfile-3))))
- (inputs
- `(("cairo" ,cairo)))
- (home-page "https://gtk-rs.org/")
- (synopsis "Rust bindings for the Cairo library")
- (description
- "Rust bindings for the Cairo library.")
- (license license:expat)))
-
-(define-public rust-cairo-rs-0.7
- (package
- (inherit rust-cairo-rs-0.8)
- (name "rust-cairo-rs")
- (version "0.7.1")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "cairo-rs" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "171m98g41avp5mmshqir4ka21napp7ma5fx45wi9mw5hwdyv8pg0"))))
- (arguments
- `(#:cargo-inputs
- (("rust-bitflags" ,rust-bitflags-1)
- ("rust-cairo-sys-rs" ,rust-cairo-sys-rs-0.9)
- ("rust-glib" ,rust-glib-0.8)
- ("rust-glib-sys" ,rust-glib-sys-0.9)
- ("rust-gobject-sys" ,rust-gobject-sys-0.9)
- ("rust-libc" ,rust-libc-0.2)
- ("rust-gtk-rs-lgpl-docs" ,rust-gtk-rs-lgpl-docs-0.1))
- #:cargo-development-inputs
- (("rust-tempfile" ,rust-tempfile-3))))))
-
-(define-public rust-cairo-sys-rs-0.9
- (package
- (name "rust-cairo-sys-rs")
- (version "0.9.2")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "cairo-sys-rs" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "0qsdy6s57yvscg2rfm7wdqrlhzbn1aq9lhk3dy1vw5f7r81blrgz"))))
- (build-system cargo-build-system)
- (arguments
- `(#:cargo-inputs
- (("rust-glib-sys" ,rust-glib-sys-0.9)
- ("rust-libc" ,rust-libc-0.2)
- ("rust-winapi" ,rust-winapi-0.3)
- ("rust-x11" ,rust-x11-2)
- ("rust-pkg-config" ,rust-pkg-config-0.3))))
- (inputs
- `(("cairo" ,cairo)))
- (home-page "https://gtk-rs.org/")
- (synopsis "FFI bindings to libcairo")
- (description "This package provides FFI bindings to libcairo.")
- (license license:expat)))
-
(define-public rust-calloop-0.4
(package
(name "rust-calloop")
@@ -2688,7 +3117,7 @@ exposed as Reader/Writer streams.")
("rust-mio-extras" ,rust-mio-extras-2)
("rust-nix" ,rust-nix-0.14))
#:cargo-development-inputs
- (("rust-lazycell" ,rust-lazycell-1.2))))
+ (("rust-lazycell" ,rust-lazycell-1))))
(home-page "https://github.com/Smithay/calloop")
(synopsis "Callback-based event loop")
(description
@@ -3084,7 +3513,7 @@ archive to be linked into Rustcode.")
(arguments
`(#:cargo-inputs
(("rust-compiler-builtins" ,rust-compiler-builtins-0.1)
- ("rust-rustc-std-workspace-core" ,rust-rustc-std-workspace-core-1.0))))
+ ("rust-rustc-std-workspace-core" ,rust-rustc-std-workspace-core-1))))
(home-page "https://github.com/alexcrichton/cfg-if")
(synopsis "Define an item depending on parameters")
(description "This package provides a macro to ergonomically define an item
@@ -3093,112 +3522,10 @@ depending on a large number of #[cfg] parameters. Structured like an
(license (list license:asl2.0
license:expat))))
-(define-public rust-cgl-0.3
- (package
- (name "rust-cgl")
- (version "0.3.2")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "cgl" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "1zs7skrsyrsm759vfy2cygkx52fx91b567a12bpaz1sf4d8hbv8c"))))
- (build-system cargo-build-system)
- (arguments
- `(#:skip-build? #t ; only available on macOS
- #:cargo-inputs (("rust-libc" ,rust-libc-0.2))))
- (home-page "https://github.com/servo/cgl-rs")
- (synopsis "Rust bindings for CGL on Mac")
- (description "Rust bindings for CGL on Mac.")
- (license (list license:expat license:asl2.0))))
-
-(define-public rust-cgl-0.2
- (package
- (inherit rust-cgl-0.3)
- (name "rust-cgl")
- (version "0.2.3")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "cgl" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "0j8ayr8pbwvyv6l8r7m5z197rs3pqn97085w9j4rfn7yfh5yrrsm"))))
- (arguments
- `(#:skip-build? #t ; only available on macOS
- #:cargo-inputs
- (("rust-gleam" ,rust-gleam-0.6)
- ("rust-libc" ,rust-libc-0.2))))))
-
-(define-public rust-cgmath-0.17
- (package
- (name "rust-cgmath")
- (version "0.17.0")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "cgmath" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "1rvgila6ivr0dh1bxza450a4yfwdi2pwj3h1vnwg0jy4xk6l8f98"))))
- (build-system cargo-build-system)
- (arguments
- `(#:skip-build? #t ; Crate won't build without glium.
- #:cargo-inputs
- (("rust-approx" ,rust-approx-0.3)
- ("rust-mint" ,rust-mint-0.5)
- ("rust-num-traits" ,rust-num-traits-0.2)
- ("rust-rand" ,rust-rand-0.6)
- ("rust-serde" ,rust-serde-1)
- ("rust-simd" ,rust-simd-0.2))
- #:cargo-development-inputs
- (;("rust-glium" ,rust-glium-0.23)
- ("rust-serde-json" ,rust-serde-json-1))))
- (home-page "https://github.com/brendanzab/cgmath")
- (synopsis "Linear algebra and mathematics library")
- (description
- "This package provides a linear algebra and mathematics library
-for computer graphics.")
- (license license:asl2.0)))
-
-(define-public rust-cgmath-0.16
- (package
- (inherit rust-cgmath-0.17)
- (name "rust-cgmath")
- (version "0.16.1")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "cgmath" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "07754c03v3srzf64ghsl3fggrdi4kjy6l3vyq2d2wfjfixybb934"))))
- (arguments
- `(#:skip-build? #t ; Crate won't build without glium.
- #:cargo-inputs
- (("rust-approx" ,rust-approx-0.1)
- ("rust-mint" ,rust-mint-0.5)
- ("rust-num-traits" ,rust-num-traits-0.1)
- ("rust-rand" ,rust-rand-0.4)
- ("rust-serde" ,rust-serde-1)
- ("rust-simd" ,rust-simd-0.2))
- #:cargo-development-inputs
- (;("rust-glium" ,rust-glium-0.19)
- ("rust-serde-json" ,rust-serde-json-1))))))
-
(define-public rust-chrono-0.4
(package
(name "rust-chrono")
- (version "0.4.11")
+ (version "0.4.13")
(source
(origin
(method url-fetch)
@@ -3207,7 +3534,7 @@ for computer graphics.")
(string-append name "-" version ".tar.gz"))
(sha256
(base32
- "1cmmxamkzzs36zncqjjr7qm7xkb6zyrkjslnlj3axdgqki84y2c0"))))
+ "1dm0q1kmk2vq5djwhp1j9cm4aa38wr9vy1i1w19p2y0nj4188kf7"))))
(build-system cargo-build-system)
(arguments
`(#:skip-build? #t
@@ -3257,8 +3584,42 @@ for computer graphics.")
"This package provides current CI environment information.")
(license license:asl2.0)))
+(define-public rust-clang-sys-1
+ (package
+ (name "rust-clang-sys")
+ (version "1.0.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "clang-sys" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0695kfrqx7n091fzm6msbqg2q2kyhka64q08lm63f3l9d964i8cx"))))
+ (build-system cargo-build-system)
+ (inputs
+ `(("libclang" ,clang)))
+ (arguments
+ `(#:cargo-inputs
+ (("rust-glob" ,rust-glob-0.3)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-libloading" ,rust-libloading-0.6))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'configure 'configure-clang
+ (lambda* (#:key inputs #:allow-other-keys)
+ (setenv "LIBCLANG_PATH"
+ (string-append (assoc-ref inputs "libclang")
+ "/lib"))
+ #t)))))
+ (home-page "https://github.com/KyleMayes/clang-sys")
+ (synopsis "Rust bindings for libclang")
+ (description "This package provides Rust bindings for libclang.")
+ (license license:asl2.0)))
+
(define-public rust-clang-sys-0.29
(package
+ (inherit rust-clang-sys-1)
(name "rust-clang-sys")
(version "0.29.3")
(source
@@ -3282,14 +3643,7 @@ for computer graphics.")
(let ((clang (assoc-ref inputs "libclang")))
(setenv "LIBCLANG_PATH"
(string-append clang "/lib")))
- #t)))))
- (inputs
- `(("libclang" ,clang)))
- (home-page "https://github.com/KyleMayes/clang-sys")
- (synopsis "Rust bindings for libclang")
- (description
- "This package provides Rust bindings for @code{libclang}.")
- (license license:asl2.0)))
+ #t)))))))
(define-public rust-clang-sys-0.28
(package
@@ -3520,10 +3874,10 @@ colorization.")
pitfalls in Rust.")
(license (list license:expat license:asl2.0))))
-(define-public rust-cloudabi-0.0
+(define-public rust-cloudabi-0.1
(package
(name "rust-cloudabi")
- (version "0.0.3")
+ (version "0.1.0")
(source
(origin
(method url-fetch)
@@ -3531,18 +3885,35 @@ pitfalls in Rust.")
(file-name (string-append name "-" version ".crate"))
(sha256
(base32
- "0kxcg83jlihy0phnd2g8c2c303px3l2p3pkjz357ll6llnd5pz6x"))))
+ "0rv4yf5jlldfkynzrw687s00f4x12ypw7axv71vawhy6h4i52i23"))))
(build-system cargo-build-system)
(arguments
`(#:skip-build? #t
#:cargo-inputs
(("rust-bitflags" ,rust-bitflags-1))))
- (home-page "https://nuxi.nl/cloudabi/")
+ (home-page "https://cloudabi.org/")
(synopsis "Low level interface to CloudABI")
- (description
- "Low level interface to CloudABI. Contains all syscalls and related types.")
+ (description "This package provides a low level interface to CloudABI. It
+contains all syscalls and related types.")
(license license:bsd-2)))
+(define-public rust-cloudabi-0.0
+ (package
+ (inherit rust-cloudabi-0.1)
+ (name "rust-cloudabi")
+ (version "0.0.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "cloudabi" version))
+ (file-name (string-append name "-" version ".crate"))
+ (sha256
+ (base32
+ "0kxcg83jlihy0phnd2g8c2c303px3l2p3pkjz357ll6llnd5pz6x"))))
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1))))))
+
(define-public rust-cloudflare-zlib-sys-0.2
(package
(name "rust-cloudflare-zlib-sys")
@@ -3661,7 +4032,7 @@ CMAKE environmental variable is set.")
"Color quantization library to reduce n colors to 256 colors.")
(license license:expat)))
-(define-public rust-colored-1.9
+(define-public rust-colored-1
(package
(name "rust-colored")
(version "1.9.3")
@@ -3698,7 +4069,7 @@ CMAKE environmental variable is set.")
(license license:mpl2.0)))
(define-public rust-colored-1.9.1
- (package/inherit rust-colored-1.9
+ (package/inherit rust-colored-1
(name "rust-colored")
(version "1.9.1")
(source
@@ -3727,7 +4098,7 @@ CMAKE environmental variable is set.")
(arguments
`(#:skip-build? #t
#:cargo-inputs
- (("rust-rustc-std-workspace-core" ,rust-rustc-std-workspace-core-1.0)
+ (("rust-rustc-std-workspace-core" ,rust-rustc-std-workspace-core-1)
("rust-cc" ,rust-cc-1))))
(home-page "https://github.com/rust-lang/compiler-builtins")
(synopsis "Compiler intrinsics used by the Rust compiler")
@@ -3957,6 +4328,71 @@ that logs panics to @code{console.error}.")
the browser's console.")
(license (list license:expat license:asl2.0))))
+(define-public rust-const-fn-0.4
+ (package
+ (name "rust-const-fn")
+ (version "0.4.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "const-fn" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1wnhzyrhfcaawnzi172k98cfawwi5zwqql7pg0nz2qlccm6dz46f"))))
+ (build-system cargo-build-system)
+ (home-page "https://github.com/taiki-e/const_fn")
+ (synopsis "Generate const functions with conditional compilations")
+ (description "This package provides an attribute for easy generation of
+const functions with conditional compilations.")
+ (license (list license:asl2.0 license:expat))))
+
+(define-public rust-const-random-0.1
+ (package
+ (name "rust-const-random")
+ (version "0.1.8")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "const-random" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0sp1ang5sh27fq5b7g9fdwpq4d5s17ymj7khfzax4bbvffngj6ig"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-const-random-macro" ,rust-const-random-macro-0.1)
+ ("rust-proc-macro-hack" ,rust-proc-macro-hack-0.5))))
+ (home-page "https://github.com/tkaitchuck/constrandom")
+ (synopsis "Compile time random number generation")
+ (description "This package provides compile time random number
+generation.")
+ (license (list license:expat license:asl2.0))))
+
+(define-public rust-const-random-macro-0.1
+ (package
+ (name "rust-const-random-macro")
+ (version "0.1.8")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "const-random-macro" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0ykc9riajn6bijvw46092gp18vrbky3y1cjpgjgx57a5xc3cdr15"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-getrandom" ,rust-getrandom-0.1)
+ ("rust-proc-macro-hack" ,rust-proc-macro-hack-0.5))))
+ (home-page "https://github.com/tkaitchuck/constrandom")
+ (synopsis "Procedural macro used by const-random")
+ (description "This package provides the procedural macro used by
+@code{rust-const-random}.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-constant-time-eq-0.1
(package
(name "rust-constant-time-eq")
@@ -4010,6 +4446,92 @@ It is inspired by the Linux kernel's @code{crypto_memneq}.")
semantics than those provided by @code{as} or @code{From}/@code{Into}.")
(license license:expat)))
+(define-public rust-cordic-0.1
+ (package
+ (name "rust-cordic")
+ (version "0.1.4")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "cordic" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "13zvqn6c8d8lp18p9ik10q100wfsyv2m2n4fca16laq3yw7r231m"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:skip-build? #t ; rust-fixed fails to build
+ #:cargo-inputs (("rust-fixed" ,rust-fixed-1))))
+ (home-page "https://github.com/sebcrozet/cordic")
+ (synopsis "Special functions for fixed-point numbers using the CORDIC method")
+ (description "This package provides special functions for fixed-point
+numbers using the CORDIC method.")
+ (license license:bsd-3)))
+
+(define-public rust-cookie-0.14
+ (package
+ (name "rust-cookie")
+ (version "0.14.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "cookie" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1q56fl2cqrci9ksa80d7g220phq02nf1yfbvxkpk9g1p95ma2wqk"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-aes-gcm" ,rust-aes-gcm-0.6)
+ ("rust-base64" ,rust-base64-0.12)
+ ("rust-hkdf" ,rust-hkdf-0.9)
+ ("rust-hmac" ,rust-hmac-0.8)
+ ("rust-percent-encoding" ,rust-percent-encoding-2)
+ ("rust-rand" ,rust-rand-0.7)
+ ("rust-sha2" ,rust-sha2-0.9)
+ ("rust-time" ,rust-time-0.2))
+ #:cargo-development-inputs
+ (("rust-version-check" ,rust-version-check-0.9))))
+ (home-page "https://github.com/SergioBenitez/cookie-rs")
+ (synopsis "HTTP cookie parsing and cookie jar management")
+ (description "This package provides HTTP cookie parsing and cookie jar
+management. It supports signed and private (encrypted, authenticated) jars.")
+ (license (list license:expat license:asl2.0))))
+
+(define-public rust-cookie-store-0.12
+ (package
+ (name "rust-cookie-store")
+ (version "0.12.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "cookie_store" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1lqhmdwgnyvi1mjmw4rbgd02fwav4aabpg4vcld23d8c9g5dy61q"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-cookie" ,rust-cookie-0.14)
+ ("rust-idna" ,rust-idna-0.2)
+ ("rust-indexmap" ,rust-indexmap-1)
+ ("rust-log" ,rust-log-0.4)
+ ("rust-publicsuffix" ,rust-publicsuffix-1)
+ ("rust-serde" ,rust-serde-1)
+ ("rust-serde-json" ,rust-serde-json-1)
+ ("rust-time" ,rust-time-0.2)
+ ("rust-url" ,rust-url-2))
+ #:cargo-development-inputs
+ (("rust-env-logger" ,rust-env-logger-0.7)
+ ("rust-pretty-assertions" ,rust-pretty-assertions-0.6))))
+ (home-page "https://github.com/pfernie/cookie_store")
+ (synopsis "Cookie storage and retrieval")
+ (description "This package implements cookie storage and retrieval.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-core-arch-0.1
(package
(name "rust-core-arch")
@@ -4036,10 +4558,10 @@ semantics than those provided by @code{as} or @code{From}/@code{Into}.")
intrinsics.")
(license (list license:expat license:asl2.0))))
-(define-public rust-core-foundation-0.6
+(define-public rust-core-foundation-0.7
(package
(name "rust-core-foundation")
- (version "0.6.4")
+ (version "0.7.0")
(source
(origin
(method url-fetch)
@@ -4048,70 +4570,77 @@ intrinsics.")
(string-append name "-" version ".tar.gz"))
(sha256
(base32
- "0va97wf49c8dzm9c8pgyk1jn7z21rl0bj1syf2zz5m2z2hzy1f95"))))
+ "0wbias8f0m5kyn2pcksi0h58fdslams6nmf16w78fgn42dx4rljp"))))
(build-system cargo-build-system)
(arguments
- `(#:skip-build? #t ; only for macOS
+ `(#:skip-build? #t
#:cargo-inputs
(("rust-chrono" ,rust-chrono-0.4)
- ("rust-core-foundation-sys" ,rust-core-foundation-sys-0.6)
+ ("rust-core-foundation-sys" ,rust-core-foundation-sys-0.7)
("rust-libc" ,rust-libc-0.2)
("rust-uuid" ,rust-uuid-0.5))))
(home-page "https://github.com/servo/core-foundation-rs")
- (synopsis
- "Bindings to Core Foundation for macOS")
- (description
- "Bindings to Core Foundation for macOS.")
+ (synopsis "Bindings to Core Foundation for macOS")
+ (description "This package provides bindings to Core Foundation for
+macOS.")
(license (list license:expat license:asl2.0))))
-(define-public rust-core-foundation-sys-0.6
+(define-public rust-core-foundation-0.6
(package
- (name "rust-core-foundation-sys")
- (version "0.6.2")
+ (inherit rust-core-foundation-0.7)
+ (name "rust-core-foundation")
+ (version "0.6.4")
(source
- (origin
- (method url-fetch)
- (uri (crate-uri "core-foundation-sys" version))
- (file-name (string-append name "-" version ".crate"))
- (sha256
- (base32
- "0fzsw1j9g1x598yhwklg59l15hwzc0pyvs01w9fg2kin4598mjp7"))))
- (build-system cargo-build-system)
- (arguments '(#:skip-build? #t))
- (home-page "https://github.com/servo/core-foundation-rs")
- (synopsis "Bindings to Core Foundation for OS X")
- (description
- "Bindings to Core Foundation for OS X.")
- (license (list license:asl2.0
- license:expat))))
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "core-foundation" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0va97wf49c8dzm9c8pgyk1jn7z21rl0bj1syf2zz5m2z2hzy1f95"))))
+ (arguments
+ `(#:tests? #f
+ #:cargo-inputs
+ (("rust-chrono" ,rust-chrono-0.4)
+ ("rust-core-foundation-sys" ,rust-core-foundation-sys-0.6)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-uuid" ,rust-uuid-0.5))))))
-(define-public rust-core-graphics-0.17
+(define-public rust-core-foundation-sys-0.7
(package
- (name "rust-core-graphics")
- (version "0.17.3")
+ (name "rust-core-foundation-sys")
+ (version "0.7.2")
(source
(origin
(method url-fetch)
- (uri (crate-uri "core-graphics" version))
+ (uri (crate-uri "core-foundation-sys" version))
(file-name
(string-append name "-" version ".tar.gz"))
(sha256
(base32
- "1acm3vygngnilzlr6klym5ywh7kfzh2xxrh2l41152hwmdl0jyan"))))
+ "1ghrg46h4ci306agr2vwm28w6gb5l455nzp61y2zkhwfs49p4nis"))))
(build-system cargo-build-system)
- (arguments
- `(#:skip-build? #t ; only for macOS
- #:cargo-inputs
- (("rust-bitflags" ,rust-bitflags-1)
- ("rust-core-foundation" ,rust-core-foundation-0.6)
- ("rust-foreign-types" ,rust-foreign-types-0.3)
- ("rust-libc" ,rust-libc-0.2))))
- (home-page "https://github.com/servo/core-graphics-rs")
- (synopsis "Bindings to Core Graphics for macOS")
- (description
- "Bindings to Core Graphics for macOS.")
+ (home-page "https://github.com/servo/core-foundation-rs")
+ (synopsis "Bindings to Core Foundation for macOS")
+ (description "This package provides bindings to Core Foundation for
+macOS.")
(license (list license:expat license:asl2.0))))
+(define-public rust-core-foundation-sys-0.6
+ (package
+ (inherit rust-core-foundation-sys-0.7)
+ (name "rust-core-foundation-sys")
+ (version "0.6.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "core-foundation-sys" version))
+ (file-name (string-append name "-" version ".crate"))
+ (sha256
+ (base32
+ "0fzsw1j9g1x598yhwklg59l15hwzc0pyvs01w9fg2kin4598mjp7"))))))
+
(define-public rust-core-text-13
(package
(name "rust-core-text")
@@ -4139,36 +4668,6 @@ intrinsics.")
"Bindings to the Core Text framework.")
(license (list license:expat license:asl2.0))))
-(define-public rust-core-video-sys-0.1
- (package
- (name "rust-core-video-sys")
- (version "0.1.3")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "core-video-sys" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "1l59cg88482hkl95ssb30ac9x65hpbdsmxz9s5r6y222jlhnbh4d"))))
- (build-system cargo-build-system)
- (arguments
- `(#:skip-build? #t ; only for macOS
- #:cargo-inputs
- (("rust-cfg-if" ,rust-cfg-if-0.1)
- ("rust-core-foundation-sys" ,rust-core-foundation-sys-0.6)
- ("rust-core-graphics" ,rust-core-graphics-0.17)
- ("rust-libc" ,rust-libc-0.2)
- ("rust-metal" ,rust-metal-0.14)
- ("rust-objc" ,rust-objc-0.2))))
- (home-page "https://github.com/luozijun/rust-core-video-sys")
- (synopsis
- "Bindings to CoreVideo.framework for macOS and iOS")
- (description
- "Bindings to CoreVideo.framework for macOS and iOS.")
- (license license:expat)))
-
(define-public rust-cpp-demangle-0.2
(package
(name "rust-cpp-demangle")
@@ -4252,7 +4751,29 @@ to @code{is_x86_feature_detected}.")
"Library for retrieving and interacting with the crates.io index.")
(license license:asl2.0)))
-(define-public rust-crc32fast-1.2
+(define-public rust-crc-1
+ (package
+ (name "rust-crc")
+ (version "1.8.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "crc" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1sqal6gm6lbj7f45iv3rw2s9w3pvvha8v970y51s7k7mwy6m8qyn"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-build-const" ,rust-build-const-0.2))))
+ (home-page "https://crates.io/crates/crc")
+ (synopsis "Rust implementation of CRC(16, 32, 64)")
+ (description "This package provides a Rust implementation of CRC(16, 32,
+64) with support for various standards.")
+ (license (list license:expat license:asl2.0))))
+
+(define-public rust-crc32fast-1
(package
(name "rust-crc32fast")
(version "1.2.0")
@@ -4284,7 +4805,7 @@ to @code{is_x86_feature_detected}.")
(define-public rust-criterion-0.3
(package
(name "rust-criterion")
- (version "0.3.1")
+ (version "0.3.3")
(source
(origin
(method url-fetch)
@@ -4293,7 +4814,7 @@ to @code{is_x86_feature_detected}.")
(string-append name "-" version ".tar.gz"))
(sha256
(base32
- "1lgpr82rlmg6rm4gr3c3pla2xgxnakbf8w9sabjsig8jkikmbiqz"))))
+ "1n24l95pgjig4nfhgm3vn9gxb49ky5ylr8390scl7wbcxk7agnkh"))))
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs
@@ -4302,22 +4823,24 @@ to @code{is_x86_feature_detected}.")
("rust-clap" ,rust-clap-2)
("rust-criterion-plot" ,rust-criterion-plot-0.4)
("rust-csv" ,rust-csv-1.1)
- ("rust-itertools" ,rust-itertools-0.8)
+ ("rust-itertools" ,rust-itertools-0.9)
("rust-lazy-static" ,rust-lazy-static-1)
("rust-num-traits" ,rust-num-traits-0.2)
("rust-oorandom" ,rust-oorandom-11.1)
("rust-plotters" ,rust-plotters-0.2)
("rust-rayon" ,rust-rayon-1)
+ ("rust-regex" ,rust-regex-1)
("rust-serde" ,rust-serde-1)
+ ("rust-serde-cbor" ,rust-serde-cbor-0.11)
("rust-serde-derive" ,rust-serde-derive-1)
("rust-serde-json" ,rust-serde-json-1)
- ("rust-tinytemplate" ,rust-tinytemplate-1.0)
+ ("rust-tinytemplate" ,rust-tinytemplate-1)
("rust-walkdir" ,rust-walkdir-2))
#:cargo-development-inputs
(("rust-approx" ,rust-approx-0.3)
("rust-quickcheck" ,rust-quickcheck-0.9)
("rust-rand" ,rust-rand-0.7)
- ("rust-tempdir" ,rust-tempdir-0.3))))
+ ("rust-tempfile" ,rust-tempfile-3))))
(home-page "https://bheisler.github.io/criterion.rs/book/index.html")
(synopsis "Statistics-driven micro-benchmarking library")
(description
@@ -4357,7 +4880,7 @@ to @code{is_x86_feature_detected}.")
("rust-serde" ,rust-serde-1)
("rust-serde-derive" ,rust-serde-derive-1)
("rust-serde-json" ,rust-serde-json-1)
- ("rust-tinytemplate" ,rust-tinytemplate-1.0)
+ ("rust-tinytemplate" ,rust-tinytemplate-1)
("rust-walkdir" ,rust-walkdir-2))
#:cargo-development-inputs
(("rust-approx" ,rust-approx-0.3)
@@ -4365,10 +4888,32 @@ to @code{is_x86_feature_detected}.")
("rust-rand" ,rust-rand-0.6)
("rust-tempdir" ,rust-tempdir-0.3))))))
+(define-public rust-criterion-cycles-per-byte-0.1
+ (package
+ (name "rust-criterion-cycles-per-byte")
+ (version "0.1.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "criterion-cycles-per-byte" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "15iw8zvyilx6k3a7z79vpzmpm6kkyds4c1ng3jlwfc43axd4hd4d"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-criterion" ,rust-criterion-0.3))))
+ (home-page "https://crates.io/crates/criterion-cycles-per-byte")
+ (synopsis "Measure time with CPU cycles for criterion")
+ (description "This package lets you measure time with CPU cycles for
+criterion.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-criterion-plot-0.4
(package
(name "rust-criterion-plot")
- (version "0.4.1")
+ (version "0.4.3")
(source
(origin
(method url-fetch)
@@ -4377,12 +4922,12 @@ to @code{is_x86_feature_detected}.")
(string-append name "-" version ".tar.gz"))
(sha256
(base32
- "0id5sfww0hjxlzvkzacdlgbls3lxza8iysqljr7j7s2qxbh1a7m0"))))
+ "17c8v5fv064181yspagkdcfd6jhs7233ba6g94bbl7v0xjnzw8p0"))))
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs
(("rust-cast" ,rust-cast-0.2)
- ("rust-itertools" ,rust-itertools-0.8))
+ ("rust-itertools" ,rust-itertools-0.9))
#:cargo-development-inputs
(("rust-itertools-num" ,rust-itertools-num-0.1)
("rust-num-complex" ,rust-num-complex-0.2)
@@ -4408,7 +4953,7 @@ to @code{is_x86_feature_detected}.")
"13pv09z4ryp70qyzablkibwa2mh6c2852qq1sjr9wjigvwnj3ybn"))))
(arguments
`(#:cargo-inputs
- (("rust-byteorder" ,rust-byteorder-1.3)
+ (("rust-byteorder" ,rust-byteorder-1)
("rust-cast" ,rust-cast-0.2)
("rust-itertools" ,rust-itertools-0.8))
#:cargo-development-inputs
@@ -4569,7 +5114,7 @@ to @code{is_x86_feature_detected}.")
("rust-lazy-static" ,rust-lazy-static-1)
("rust-maybe-uninit" ,rust-maybe-uninit-2.0)
("rust-memoffset" ,rust-memoffset-0.5)
- ("rust-scopeguard" ,rust-scopeguard-1.0))
+ ("rust-scopeguard" ,rust-scopeguard-1))
#:cargo-development-inputs
(("rust-rand" ,rust-rand-0.6))))
(home-page
@@ -4599,7 +5144,7 @@ to @code{is_x86_feature_detected}.")
("rust-crossbeam-utils" ,rust-crossbeam-utils-0.6)
("rust-lazy-static" ,rust-lazy-static-1)
("rust-memoffset" ,rust-memoffset-0.5)
- ("rust-scopeguard" ,rust-scopeguard-1.0))
+ ("rust-scopeguard" ,rust-scopeguard-1))
#:cargo-development-inputs
(("rust-rand" ,rust-rand-0.6))))))
@@ -4792,19 +5337,68 @@ Code} (MAC) algorithms.")
("rust-generic-array" ,rust-generic-array-0.12)
("rust-subtle" ,rust-subtle-1.0))))))
+(define-public rust-crypto-mac-0.4
+ (package
+ (name "rust-crypto-mac")
+ (version "0.4.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "crypto-mac" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "160ixpghhz5kz16f38kzcyv6lx8wmi4cgbhlhq4nazf678iib43p"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-constant-time-eq" ,rust-constant-time-eq-0.1)
+ ("rust-generic-array" ,rust-generic-array-0.8))))
+ (home-page "https://github.com/RustCrypto/traits")
+ (synopsis "Trait for Message Authentication Code (MAC) algorithms")
+ (description "This package provides traits for Message Authentication
+Code (MAC) algorithms.")
+ (license (list license:expat license:asl2.0))))
+
+(define-public rust-crypto-tests-0.5
+ (package
+ (name "rust-crypto-tests")
+ (version "0.5.5")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "crypto-tests" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "08yrh40a9ll4k29ppizg2yjf96i6s3i9pbkhxp60y8arar93134v"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-block-cipher-trait" ,rust-block-cipher-trait-0.4)
+ ("rust-crypto-mac" ,rust-crypto-mac-0.4)
+ ("rust-digest" ,rust-digest-0.6)
+ ("rust-generic-array" ,rust-generic-array-0.8))))
+ (home-page "https://github.com/RustCrypto/utils")
+ (synopsis "Test helpers for cryptographic algorithms")
+ (description "This package provides test helpers for cryptographic
+algorithms.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-cssparser-0.27
(package
(name "rust-cssparser")
(version "0.27.2")
(source
- (origin
- (method url-fetch)
- (uri (crate-uri "cssparser" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "02nbm690rmkaz1ca0383qq7mc1g066w3s85f17pdihnda79njjvm"))))
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "cssparser" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "02nbm690rmkaz1ca0383qq7mc1g066w3s85f17pdihnda79njjvm"))))
(build-system cargo-build-system)
(arguments
`(#:tests? #f ; Not all files included in the tarball.
@@ -4820,7 +5414,7 @@ Code} (MAC) algorithms.")
("rust-smallvec" ,rust-smallvec-1)
("rust-syn" ,rust-syn-1))
#:cargo-development-inputs
- (("rust-difference" ,rust-difference-2.0)
+ (("rust-difference" ,rust-difference-2)
("rust-encoding-rs" ,rust-encoding-rs-0.8)
("rust-serde-json" ,rust-serde-json-1))))
(home-page "https://github.com/servo/rust-cssparser")
@@ -4860,7 +5454,7 @@ Code} (MAC) algorithms.")
("rust-quote" ,rust-quote-1)
("rust-syn" ,rust-syn-1))
#:cargo-development-inputs
- (("rust-difference" ,rust-difference-2.0)
+ (("rust-difference" ,rust-difference-2)
("rust-encoding-rs" ,rust-encoding-rs-0.8)
("rust-serde-json" ,rust-serde-json-1))))))
@@ -4987,27 +5581,43 @@ Code} (MAC) algorithms.")
"Bare bones CSV parsing with no_std support.")
(license (list license:unlicense license:expat))))
-(define-public rust-ct-logs-0.3
+(define-public rust-ct-logs-0.7
(package
(name "rust-ct-logs")
- (version "0.3.0")
+ (version "0.7.0")
(source
(origin
(method url-fetch)
(uri (crate-uri "ct-logs" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
- (base32 "1f0885ws3p49xh6dfgnhh7zjw9h4rhs9ljs8i9cnkhifzz98784f"))))
+ (base32
+ "0bk7pbmkjm18cgccm4a76vyn3wkaf2z4bh0jy9fk3dl4188i73lc"))))
(build-system cargo-build-system)
(arguments
- `(#:cargo-inputs
- (("rust-sct" ,rust-sct-0.3))))
+ `(#:cargo-inputs (("rust-sct" ,rust-sct-0.6))))
(home-page "https://github.com/ctz/ct-logs")
(synopsis "Google's list of Certificate Transparency logs")
(description "This package contains Google's list of Certificate
Transparency logs for use with sct crate.")
(license (list license:asl2.0 license:isc license:expat))))
+(define-public rust-ct-logs-0.3
+ (package
+ (inherit rust-ct-logs-0.7)
+ (name "rust-ct-logs")
+ (version "0.3.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "ct-logs" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32 "1f0885ws3p49xh6dfgnhh7zjw9h4rhs9ljs8i9cnkhifzz98784f"))))
+ (arguments
+ `(#:cargo-inputs
+ (("rust-sct" ,rust-sct-0.3))))))
+
(define-public rust-ctor-0.1
(package
(name "rust-ctor")
@@ -5060,6 +5670,25 @@ Transparency logs for use with sct crate.")
"This package provides an easy Ctrl-C handler for Rust projects.")
(license (list license:expat license:asl2.0))))
+(define-public rust-cty-0.2
+ (package
+ (name "rust-cty")
+ (version "0.2.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "cty" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1qvkdnkxmd7g6fwhmv26zxqi0l7b9cd4d7h1knylvjyh43bc04vk"))))
+ (build-system cargo-build-system)
+ (home-page "https://github.com/japaric/cty")
+ (synopsis "Type aliases to C types")
+ (description "This package provides type aliases to C types like c_int for
+use with bindgen.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-curl-sys-0.4
(package
(name "rust-curl-sys")
@@ -5215,7 +5844,47 @@ reading attributes into structs when implementing custom derives.")
reading attributes into structs when implementing custom derives.")
(license license:expat)))
-(define-public rust-data-encoding-2.1
+(define-public rust-dashmap-3
+ (package
+ (name "rust-dashmap")
+ (version "3.11.10")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "dashmap" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1ddrjj4khb0s263pw278g5dvbhaid40611h123s9w5shr0phw9hg"))
+ (modules '((guix build utils)))
+ (snippet
+ '(begin
+ ;; Enable unstable features
+ (substitute* "src/lib.rs"
+ (("#!\\[cfg_attr" all)
+ (string-append "#![feature(map_get_key_value)]" "\n"
+ "#![feature(inner_deref)]" "\n"
+ all)))
+ #t))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-ahash" ,rust-ahash-0.3)
+ ("rust-hashbrown" ,rust-hashbrown-0.8)
+ ("rust-serde" ,rust-serde-1))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'enable-unstable-features
+ (lambda _
+ (setenv "RUSTC_BOOTSTRAP" "1")
+ #t)))))
+ (home-page "https://github.com/xacrimon/dashmap")
+ (synopsis "Blazing fast concurrent HashMap for Rust")
+ (description "This package implements a blazing fast concurrent HashMap
+for Rust.")
+ (license license:expat)))
+
+(define-public rust-data-encoding-2
(package
(name "rust-data-encoding")
(version "2.1.2")
@@ -5296,42 +5965,6 @@ hexadecimal, base32, and base64.")
and arithmetic.")
(license license:expat)))
-(define-public rust-dav1d-sys-0.3
- (package
- (name "rust-dav1d-sys")
- (version "0.3.2")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "dav1d-sys" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "1jdxhnlxcml6jd67lx78ifzkn1xm18zfk4li7vjdh3fa61i073kx"))))
- (build-system cargo-build-system)
- (arguments
- `(#:cargo-inputs
- (("rust-bindgen" ,rust-bindgen-0.54)
- ("rust-metadeps" ,rust-metadeps-1.1))
- #:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'set-environmental-variable
- (lambda* (#:key inputs #:allow-other-keys)
- (let ((clang (assoc-ref inputs "libclang")))
- (setenv "LIBCLANG_PATH"
- (string-append clang "/lib")))
- #t)))))
- (inputs
- `(("dav1d" ,dav1d)
- ("pkg-config" ,pkg-config)
- ("libclang" ,clang)
- ("llvm" ,llvm)))
- (home-page "https://github.com/rust-av/dav1d-rs")
- (synopsis "FFI bindings to dav1d")
- (description "This package provides FFI bindings to dav1d.")
- (license license:expat)))
-
(define-public rust-decimal-2.0
(package
(name "rust-decimal")
@@ -5380,7 +6013,7 @@ and arithmetic.")
`(#:tests? #f ; not all test files included
#:cargo-inputs
(("rust-adler32" ,rust-adler32-1)
- ("rust-byteorder" ,rust-byteorder-1.3)
+ ("rust-byteorder" ,rust-byteorder-1)
("rust-gzip-header" ,rust-gzip-header-0.3))
#:cargo-development-inputs
(("rust-miniz-oxide" ,rust-miniz-oxide-0.3))))
@@ -5407,9 +6040,9 @@ and arithmetic.")
(arguments
`(#:cargo-inputs
(("rust-adler32" ,rust-adler32-1)
- ("rust-byteorder" ,rust-byteorder-1.3)
+ ("rust-byteorder" ,rust-byteorder-1)
("rust-gzip-header" ,rust-gzip-header-0.3)
- ("rust-flate2" ,rust-flate2-1.0))))))
+ ("rust-flate2" ,rust-flate2-1))))))
(define-public rust-defmac-0.2
(package
@@ -5444,6 +6077,29 @@ and arithmetic.")
(base32
"17giv0n0n1r64z0dahfvkjy3ys517jxyhs8sd9lmgvcljpjyryxa"))))))
+(define-public rust-delta-e-0.2
+ (package
+ (name "rust-delta-e")
+ (version "0.2.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "delta_e" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "18rxibmi27ark8vj367qm2iqmv5x293l8fm9ang4y2sv3l251sf5"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs (("rust-lab" ,rust-lab-0.7))))
+ (home-page "https://github.com/elliotekj/DeltaE")
+ (synopsis "Pure Rust implementation of the CIEDE2000 algorithm")
+ (description "DeltaE is a pure-Rust implementation of the
+@url{http://en.wikipedia.org/wiki/Color_difference#CIEDE2000, CIEDE2000}
+algorithm which serves to quantify the difference between two colors.")
+ (license license:expat)))
+
(define-public rust-demo-hack-0.0
(package
(name "rust-demo-hack")
@@ -5600,6 +6256,29 @@ for arbitrary structs.")
#:cargo-development-inputs
(("rust-pretty-assertions" ,rust-pretty-assertions-0.2))))))
+(define-public rust-derive-error-chain-0.10
+ (package
+ (name "rust-derive-error-chain")
+ (version "0.10.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "derive-error-chain" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0jnybrpiq5jzx69xq74cwxply36js02z14y9sym8sf2iwsnsk71w"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-quote" ,rust-quote-0.3)
+ ("rust-syn" ,rust-syn-0.14))))
+ (home-page "https://github.com/Arnavion/derive-error-chain")
+ (synopsis "Macros 1.1 implementation of error-chain")
+ (description "This package provides a Macros 1.1 implementation of
+error-chain.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-derive-more-0.99
(package
(name "rust-derive-more")
@@ -5661,6 +6340,126 @@ traits for both structs and enums.")
structs and enums.")
(license license:expat)))
+(define-public rust-dialoguer-0.6
+ (package
+ (name "rust-dialoguer")
+ (version "0.6.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "dialoguer" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0f31ahy6myg2vz9xrdmp0vx0m7x427a1wxpgrgwhxd0rgfpqdapl"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-console" ,rust-console-0.11)
+ ("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-tempfile" ,rust-tempfile-3))))
+ (home-page "https://github.com/mitsuhiko/dialoguer")
+ (synopsis "Library for command line prompts")
+ (description
+ "This package provides a library for command line prompts and the like.")
+ (license license:expat)))
+
+(define-public rust-dialoguer-0.3
+ (package
+ (inherit rust-dialoguer-0.6)
+ (name "rust-dialoguer")
+ (version "0.3.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "dialoguer" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1a9gqvqp83gg4jbm286q5ab3l44zyyzlsdaiqmw8x4k80fdc5l8s"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-test-flags '("--lib")
+ #:cargo-inputs
+ (("rust-console" ,rust-console-0.11)
+ ("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-tempfile" ,rust-tempfile-2))))))
+
+(define-public rust-diesel-1
+ (package
+ (name "rust-diesel")
+ (version "1.4.5")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "diesel" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "134dy6gdbv30q388gsp5777w2qh63hdqsim1j8s1aylpmggfjb9y"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bigdecimal" ,rust-bigdecimal-0.2)
+ ("rust-bitflags" ,rust-bitflags-1)
+ ("rust-byteorder" ,rust-byteorder-1)
+ ("rust-chrono" ,rust-chrono-0.4)
+ ("rust-diesel-derives" ,rust-diesel-derives-1.4)
+ ("rust-ipnetwork" ,rust-ipnetwork-0.17)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-libsqlite3-sys" ,rust-libsqlite3-sys-0.15)
+ ("rust-mysqlclient-sys" ,rust-mysqlclient-sys-0.2)
+ ("rust-num-bigint" ,rust-num-bigint-0.3)
+ ("rust-num-integer" ,rust-num-integer-0.1)
+ ("rust-num-traits" ,rust-num-traits-0.2)
+ ("rust-pq-sys" ,rust-pq-sys-0.4)
+ ("rust-quickcheck" ,rust-quickcheck-0.4)
+ ("rust-r2d2" ,rust-r2d2)
+ ("rust-serde-json" ,rust-serde-json-1)
+ ("rust-time" ,rust-time-0.1)
+ ("rust-url" ,rust-url-1)
+ ("rust-uuid" ,rust-uuid-0.7))
+ #:cargo-development-inputs
+ (("rust-cfg-if" ,rust-cfg-if-0.1)
+ ("rust-dotenv" ,rust-dotenv-0.10)
+ ("rust-quickcheck" ,rust-quickcheck-0.4)
+ ("rust-tempdir" ,rust-tempdir-0.3))))
+ (home-page "https://diesel.rs")
+ (synopsis "A safe, extensible ORM and Query Builder")
+ (description "This package provides a safe, extensible ORM and Query
+Builder for PostgreSQL, SQLite, and MySQL.")
+ (license (list license:expat license:asl2.0))))
+
+(define-public rust-diesel-derives-1.4
+ (package
+ (name "rust-diesel-derives")
+ (version "1.4.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "diesel_derives" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1lsq133fwk0zj8xvxhdxqgg0xs31zf3abnwdyshaf0ldca7hkxa5"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-proc-macro2" ,rust-proc-macro2-1)
+ ("rust-quote" ,rust-quote-1)
+ ("rust-syn" ,rust-syn-1))
+ #:cargo-development-inputs
+ (("rust-cfg-if" ,rust-cfg-if-0.1)
+ ("rust-diesel" ,rust-diesel-1)
+ ("rust-dotenv" ,rust-dotenv-0.10))))
+ (home-page "https://diesel.rs")
+ (synopsis "Crate internal to Diesel")
+ (description "You should not use this crate directly, it is internal to
+Diesel.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-diff-0.1
(package
(name "rust-diff")
@@ -5687,7 +6486,7 @@ structs and enums.")
"An LCS based slice and string diffing implementation.")
(license (list license:expat license:asl2.0))))
-(define-public rust-difference-2.0
+(define-public rust-difference-2
(package
(name "rust-difference")
(version "2.0.0")
@@ -5715,7 +6514,7 @@ structs and enums.")
(license license:expat)))
(define-public rust-difference-1
- (package/inherit rust-difference-2.0
+ (package/inherit rust-difference-2
(name "rust-difference")
(version "1.0.0")
(source
@@ -5776,6 +6575,28 @@ structs and enums.")
(("rust-blobby" ,rust-blobby-0.1)
("rust-generic-array" ,rust-generic-array-0.13))))))
+(define-public rust-digest-0.6
+ (package
+ (name "rust-digest")
+ (version "0.6.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "digest" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "02mgf8z4hi96w9nl2zb5w3k6lqbhjgv5z8hhyv2b7x7kavqrpcp5"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-generic-array" ,rust-generic-array-0.8))))
+ (home-page "https://github.com/RustCrypto/traits")
+ (synopsis "Traits for cryptographic hash functions")
+ (description "This package provides traits for cryptographic hash
+functions.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-directories-3
(package
(name "rust-directories")
@@ -6162,19 +6983,62 @@ O(1)-in-practice, if not in theory, but obviously not as fast as a
non-persistent vector.")
(license (list license:asl2.0 license:expat))))
+(define-public rust-dotenv-0.15
+ (package
+ (name "rust-dotenv")
+ (version "0.15.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "dotenv" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "13ysjx7n2bqxxqydvnnbdwgik7i8n6h5c1qhr9g11x6cxnnhpjbp"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-clap" ,rust-clap-2))
+ #:cargo-development-inputs
+ (("rust-tempfile" ,rust-tempfile-3))))
+ (home-page "https://github.com/dotenv-rs/dotenv")
+ (synopsis "@code{dotenv} implementation for Rust")
+ (description "This package provides a @code{dotenv} implementation for
+Rust.")
+ (license license:expat)))
+
+(define-public rust-dotenv-0.10
+ (package
+ (inherit rust-dotenv-0.15)
+ (name "rust-dotenv")
+ (version "0.10.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "dotenv" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1ww0wfnilz4cy789fni06gckm45xsb9fplrih26l4qyi4jxy5w6n"))))
+ (arguments
+ `(#:cargo-inputs
+ (("rust-derive-error-chain" ,rust-derive-error-chain-0.10)
+ ("rust-error-chain" ,rust-error-chain-0.10)
+ ("rust-regex" ,rust-regex-0.2))))))
+
(define-public rust-draw-state-0.8
(package
(name "rust-draw-state")
(version "0.8.0")
(source
- (origin
- (method url-fetch)
- (uri (crate-uri "draw_state" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "0lfng4fz9x7bwsmzv9r20ply10w0iid6vfcrhx292s6hw8vrbkrk"))))
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "draw_state" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0lfng4fz9x7bwsmzv9r20ply10w0iid6vfcrhx292s6hw8vrbkrk"))))
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs
@@ -6263,7 +7127,7 @@ floating-point primitives to an @code{io::Write}.")
`(#:skip-build? #t
#:cargo-inputs
(("rust-libc" ,rust-libc-0.2)
- ("rust-once-cell" ,rust-once-cell-1.2)
+ ("rust-once-cell" ,rust-once-cell-1)
("rust-os-pipe" ,rust-os-pipe-0.8)
("rust-shared-child" ,rust-shared-child-0.3))
#:cargo-development-inputs
@@ -6328,7 +7192,7 @@ floating-point primitives to an @code{io::Write}.")
"Levenshtein edit distance between strings, a measure for similarity.")
(license license:asl2.0)))
-(define-public rust-either-1.5
+(define-public rust-either-1
(package
(name "rust-either")
(version "1.5.3")
@@ -6665,6 +7529,31 @@ Standard.")
"Streaming transcoding for encoding_rs.")
(license (list license:asl2.0 license:expat))))
+(define-public rust-enum-as-inner-0.3
+ (package
+ (name "rust-enum-as-inner")
+ (version "0.3.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "enum-as-inner" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "15gmpgywijda93lkq7hf2y53h66sqkhzabzbxich288xm6b00pvw"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-heck" ,rust-heck-0.3)
+ ("rust-proc-macro2" ,rust-proc-macro2-1)
+ ("rust-quote" ,rust-quote-1)
+ ("rust-syn" ,rust-syn-1))))
+ (home-page "https://github.com/bluejekyll/enum-as-inner")
+ (synopsis "Proc-macro for deriving inner field accessor functions on enums")
+ (description "This package provides a proc-macro for deriving inner field
+accessor functions on enums.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-env-logger-0.7
(package
(name "rust-env-logger")
@@ -6871,7 +7760,7 @@ variables.")
("rust-proc-macro-error" ,rust-proc-macro-error-0.4)
("rust-proc-macro2" ,rust-proc-macro2-1)
("rust-syn" ,rust-syn-1)
- ("rust-rustversion" ,rust-rustversion-1.0)
+ ("rust-rustversion" ,rust-rustversion-1)
("rust-quote" ,rust-quote-1))
#:cargo-development-inputs
(("rust-skeptic" ,rust-skeptic-0.13))))
@@ -7022,32 +7911,6 @@ variables.")
(description "Cargo API written in Paris.")
(license (list license:expat license:asl2.0))))
-(define-public rust-euclid-0.20
- (package
- (name "rust-euclid")
- (version "0.20.10")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "euclid" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "0c3hbl0kvc53k6nws0v9d46hi0giza1j079sqx2bgl4wfw65nshc"))))
- (build-system cargo-build-system)
- (arguments
- `(#:cargo-inputs
- (("rust-mint" ,rust-mint-0.5)
- ("rust-num-traits" ,rust-num-traits-0.2)
- ("rust-serde" ,rust-serde-1))
- #:cargo-development-inputs
- (("rust-serde-test" ,rust-serde-test-1))))
- (home-page "https://github.com/servo/euclid")
- (synopsis "Geometry primitives")
- (description "Geometry primitives written in Rust.")
- (license (list license:expat license:asl2.0))))
-
(define-public rust-expat-sys-2.1
(package
(name "rust-expat-sys")
@@ -7229,7 +8092,7 @@ provides implementations for @code{HashMap} and @code{HashSet}.")
(arguments
`(#:cargo-inputs
(("rust-chrono" ,rust-chrono-0.4)
- ("rust-colored" ,rust-colored-1.9)
+ ("rust-colored" ,rust-colored-1)
("rust-libc" ,rust-libc-0.2)
("rust-log" ,rust-log-0.4)
("rust-reopen" ,rust-reopen-0.3)
@@ -7265,7 +8128,7 @@ provides implementations for @code{HashMap} and @code{HashSet}.")
("rust-reopen" ,rust-reopen-0.3)
("rust-log" ,rust-log-0.4)
("rust-chrono" ,rust-chrono-0.4)
- ("rust-colored" ,rust-colored-1.9)
+ ("rust-colored" ,rust-colored-1)
("rust-syslog" ,rust-syslog-3.3)
("rust-syslog" ,rust-syslog-4.0))
#:cargo-development-inputs
@@ -7331,6 +8194,38 @@ cross platform API.")
(license (list license:asl2.0
license:expat))))
+(define-public rust-fixed-1
+ (package
+ (name "rust-fixed")
+ (version "1.2.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "fixed" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0p0v4jjgbbvp91sl8rkfqb2hldaxbzv89mzwmp8753mlrfqwn185"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:skip-build? #t
+ #:cargo-inputs
+ (("rust-az" ,rust-az-1)
+ ("rust-half" ,rust-half-1)
+ ("rust-num-traits" ,rust-num-traits-0.2)
+ ("rust-serde" ,rust-serde-1)
+ ("rust-typenum" ,rust-typenum-1))
+ #:cargo-development-inputs
+ (("rust-criterion" ,rust-criterion-0.3)
+ ("rust-num-traits" ,rust-num-traits-0.2)
+ ("rust-rand" ,rust-rand-0.7)
+ ("rust-rand-xoshiro" ,rust-rand-xoshiro-0.4))))
+ (home-page "https://gitlab.com/tspiteri/fixed")
+ (synopsis "Rust fixed-point numbers")
+ (description "This package provides fixed-point numbers in Rust.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-fixedbitset-0.2
(package
(name "rust-fixedbitset")
@@ -7384,7 +8279,7 @@ cross platform API.")
("rust-serde" ,rust-serde-1)
("rust-serde-derive" ,rust-serde-derive-1)
("rust-serde-json" ,rust-serde-json-1)
- ("rust-thread-id" ,rust-thread-id-3.3))))
+ ("rust-thread-id" ,rust-thread-id-3))))
(home-page "https://github.com/llogiq/flame")
(synopsis "Profiling and flamegraph library")
(description "A profiling and flamegraph library.")
@@ -7416,7 +8311,7 @@ cross platform API.")
"A procedural macro to insert @code{flame::start_guard(_)} calls.")
(license license:asl2.0)))
-(define-public rust-flate2-1.0
+(define-public rust-flate2-1
(package
(name "rust-flate2")
(version "1.0.14")
@@ -7436,7 +8331,7 @@ cross platform API.")
(("rust-cfg-if" ,rust-cfg-if-0.1)
("rust-cloudflare-zlib-sys"
,rust-cloudflare-zlib-sys-0.2)
- ("rust-crc32fast" ,rust-crc32fast-1.2)
+ ("rust-crc32fast" ,rust-crc32fast-1)
("rust-futures" ,rust-futures-0.1)
("rust-libc" ,rust-libc-0.2)
("rust-libz-sys" ,rust-libz-sys-1)
@@ -7459,10 +8354,10 @@ Reader/Writer streams. Contains bindings for zlib, deflate, and gzip-based
streams.")
(license (list license:expat license:asl2.0))))
-(define-public rust-float-cmp-0.6
+(define-public rust-float-cmp-0.8
(package
(name "rust-float-cmp")
- (version "0.6.0")
+ (version "0.8.0")
(source
(origin
(method url-fetch)
@@ -7471,7 +8366,7 @@ streams.")
(string-append name "-" version ".tar.gz"))
(sha256
(base32
- "0zb1lv3ga18vsnpjjdg87yazbzvmfwwllj3aiid8660rp3qw8qns"))))
+ "1i56hnzjn5pmrcm47fwkmfxiihk7wz5vvcgpb0kpfhzkqi57y9p1"))))
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs (("rust-num-traits" ,rust-num-traits-0.2))))
@@ -7481,6 +8376,21 @@ streams.")
"Floating point approximate comparison traits in Rust.")
(license license:expat)))
+(define-public rust-float-cmp-0.6
+ (package
+ (inherit rust-float-cmp-0.8)
+ (name "rust-float-cmp")
+ (version "0.6.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "float-cmp" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0zb1lv3ga18vsnpjjdg87yazbzvmfwwllj3aiid8660rp3qw8qns"))))))
+
(define-public rust-float-cmp-0.5
(package
(inherit rust-float-cmp-0.6)
@@ -7536,6 +8446,55 @@ streams.")
"This package provides a total ordering for floating-point numbers.")
(license (list license:asl2.0 license:expat))))
+(define-public rust-fluid-0.4
+ (package
+ (name "rust-fluid")
+ (version "0.4.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "fluid" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "04qgdc4lx934158icx9rvs0v6lyvirmb0brllvz38hj9fsaqfbsp"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-colored" ,rust-colored-1)
+ ("rust-fluid-attributes" ,rust-fluid-attributes-0.4)
+ ("rust-num-traits" ,rust-num-traits-0.2))))
+ (home-page "https://crates.io/crates/fluid")
+ (synopsis "Human readable test library")
+ (description "This package provides a human readable test library.")
+ (license license:asl2.0)))
+
+(define-public rust-fluid-attributes-0.4
+ (package
+ (name "rust-fluid-attributes")
+ (version "0.4.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "fluid_attributes" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1i67vcas0gr64bc8spprlfp7m7msv1jyspghgq1q8f0qrnvy8px8"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:tests? #f
+ #:cargo-inputs
+ (("rust-proc-macro2" ,rust-proc-macro2-0.4)
+ ("rust-quote" ,rust-quote-0.6)
+ ("rust-syn" ,rust-syn-0.15)
+ ("rust-uuid" ,rust-uuid-0.7))))
+ (home-page "https://gitlab.com/Boiethios/fluid-rs/wikis")
+ (synopsis "Proc macro attributes for the fluid crate")
+ (description "This package provides proc macro attributes for the fluid
+crate.")
+ (license license:asl2.0)))
+
(define-public rust-fnv-1
(package
(name "rust-fnv")
@@ -7588,7 +8547,7 @@ implementation that is more efficient for smaller hash keys.")
("rust-memmap" ,rust-memmap-0.7)
("rust-dwrote" ,rust-dwrote-0.9)
("rust-dirs" ,rust-dirs-1.0)
- ("rust-byteorder" ,rust-byteorder-1.3)
+ ("rust-byteorder" ,rust-byteorder-1)
("rust-lazy-static" ,rust-lazy-static-1)
("rust-core-text" ,rust-core-text-13)
("rust-walkdir" ,rust-walkdir-2))))
@@ -7872,7 +8831,7 @@ duplication.")
(build-system cargo-build-system)
(arguments '(#:skip-build? #t))
(home-page "https://github.com/webdesus/fs_extra")
- (synopsis "Extra filesystem methods")
+ (synopsis "Extra file system methods")
(description "Expanding opportunities standard library @code{std::fs} and
@code{std::io}. Recursively copy folders with recept information about
process and much more.")
@@ -8491,6 +9450,34 @@ futures-rs library.")
(description "Tools for working with tasks.")
(license (list license:expat license:asl2.0))))
+(define-public rust-futures-test-0.3
+ (package
+ (name "rust-futures-test")
+ (version "0.3.5")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "futures-test" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0v9r2mmgdbm0x4gppd5jzf4rss7439ivkqwi604m0r2il3zap6ci"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-futures-core" ,rust-futures-core-0.3)
+ ("rust-futures-executor" ,rust-futures-executor-0.3)
+ ("rust-futures-io" ,rust-futures-io-0.3)
+ ("rust-futures-task" ,rust-futures-task-0.3)
+ ("rust-futures-util" ,rust-futures-util-0.3)
+ ("rust-once-cell" ,rust-once-cell-1)
+ ("rust-pin-utils" ,rust-pin-utils-0.1))))
+ (home-page "https://rust-lang.github.io/futures-rs")
+ (synopsis "Test components built off futures-rs")
+ (description "This package provides common utilities for testing
+components built off futures-rs.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-futures-timer-0.1
(package
(name "rust-futures-timer")
@@ -8599,12 +9586,11 @@ library.")
"037mb9ichariqi45xm6mz0b11pa92gj38ba0409z3iz239sns6y3"))))
(build-system cargo-build-system)
(arguments
- `(#:skip-build? #t
- #:cargo-inputs
- (("rust-byteorder" ,rust-byteorder-1.3))
+ `(#:cargo-inputs
+ (("rust-byteorder" ,rust-byteorder-1))
#:cargo-development-inputs
(("rust-fnv" ,rust-fnv-1)
- ("rust-seahash" ,rust-seahash-3.0))))
+ ("rust-seahash" ,rust-seahash-3))))
(home-page "https://github.com/cbreeden/fxhash")
(synopsis "Hashing algorithm from hasher used in FireFox and Rustc")
(description
@@ -8614,25 +9600,29 @@ derived from an internal hasher used in FireFox and Rustc.")
(define-public rust-gcc-0.3
(package
- (inherit rust-cc-1)
(name "rust-gcc")
(version "0.3.55")
(source
(origin
(method url-fetch)
(uri (crate-uri "gcc" version))
- (file-name (string-append name "-" version ".crate"))
+ (file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"1hng1sajn4r67hndvhjysswz8niayjwvcj42zphpxzhbz89kjpwg"))))
(build-system cargo-build-system)
+ (arguments
+ `(#:tests? #f ; gcc-test folder missing from release tarball.
+ #:cargo-inputs
+ (("rust-rayon" ,rust-rayon-0.8))
+ #:cargo-development-inputs
+ (("rust-tempdir" ,rust-tempdir-0.3))))
(home-page "https://github.com/alexcrichton/cc-rs")
(synopsis "Library to compile C/C++ code into a Rust library/application")
(description
"This package provides a build-time dependency for Cargo build scripts to
assist in invoking the native C compiler to compile native C code into a static
archive to be linked into Rustcode.")
- (properties '((hidden? . #t)))
(license (list license:asl2.0
license:expat))))
@@ -8661,101 +9651,6 @@ archive to be linked into Rustcode.")
API library @code{gdi32}.")
(license license:expat)))
-(define-public rust-gdk-pixbuf-0.8
- (package
- (name "rust-gdk-pixbuf")
- (version "0.8.0")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "gdk-pixbuf" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "1mxxca0fkcw2rsd3kl3nvlb8ys4cgxqx4n5isjbv0adk8q624j72"))))
- (build-system cargo-build-system)
- (arguments
- `(#:cargo-inputs
- (("rust-gdk-pixbuf-sys" ,rust-gdk-pixbuf-sys-0.9)
- ("rust-gio" ,rust-gio-0.8)
- ("rust-gio-sys" ,rust-gio-sys-0.9)
- ("rust-glib" ,rust-glib-0.9)
- ("rust-glib-sys" ,rust-glib-sys-0.9)
- ("rust-gobject-sys" ,rust-gobject-sys-0.9)
- ("rust-libc" ,rust-libc-0.2)
- ("rust-gtk-rs-lgpl-docs" ,rust-gtk-rs-lgpl-docs-0.1))
- #:cargo-development-inputs
- (("rust-gir-format-check" ,rust-gir-format-check-0.1))))
- (inputs
- `(("gdk-pixbuf" ,gdk-pixbuf)))
- (home-page "https://gtk-rs.org/")
- (synopsis "Rust bindings for the GdkPixbuf library")
- (description
- "Rust bindings for the GdkPixbuf library.")
- (license license:expat)))
-
-(define-public rust-gdk-pixbuf-0.7
- (package
- (inherit rust-gdk-pixbuf-0.8)
- (name "rust-gdk-pixbuf")
- (version "0.7.0")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "gdk-pixbuf" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "1k2g3w2p57m68bi5sldvkmgjgslgqswrjsijjhqaibdvw67409lp"))))
- (arguments
- `(#:cargo-inputs
- (("rust-fragile" ,rust-fragile-0.3)
- ("rust-futures-preview" ,rust-futures-preview-0.3)
- ("rust-gdk-pixbuf-sys" ,rust-gdk-pixbuf-sys-0.9)
- ("rust-gio" ,rust-gio-0.7)
- ("rust-gio-sys" ,rust-gio-sys-0.9)
- ("rust-glib" ,rust-glib-0.8)
- ("rust-glib-sys" ,rust-glib-sys-0.9)
- ("rust-gobject-sys" ,rust-gobject-sys-0.9)
- ("rust-libc" ,rust-libc-0.2)
- ("rust-gtk-rs-lgpl-docs" ,rust-gtk-rs-lgpl-docs-0.1))
- #:cargo-development-inputs
- (("rust-gir-format-check" ,rust-gir-format-check-0.1))))))
-
-(define-public rust-gdk-pixbuf-sys-0.9
- (package
- (name "rust-gdk-pixbuf-sys")
- (version "0.9.1")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "gdk-pixbuf-sys" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "1c2andpjb10y7bahh6nxnksh9m3g5qh4mgq9znx634cy1831p6fq"))))
- (build-system cargo-build-system)
- (arguments
- `(#:tests? #f ; tests not included in release
- #:cargo-inputs
- (("rust-gio-sys" ,rust-gio-sys-0.9)
- ("rust-glib-sys" ,rust-glib-sys-0.9)
- ("rust-gobject-sys" ,rust-gobject-sys-0.9)
- ("rust-libc" ,rust-libc-0.2)
- ("rust-pkg-config" ,rust-pkg-config-0.3))
- #:cargo-development-inputs
- (("rust-shell-words" ,rust-shell-words-0.1)
- ("rust-tempfile" ,rust-tempfile-3))))
- (inputs
- `(("gdk-pixbuf" ,gdk-pixbuf)))
- (home-page "https://gtk-rs.org/")
- (synopsis "FFI bindings to libgdk_pixbuf-2.0")
- (description "This package provides FFI bindings to @code{libgdk_pixbuf-2.0}.")
- (license license:expat)))
-
(define-public rust-generator-0.6
(package
(name "rust-generator")
@@ -8848,6 +9743,27 @@ API library @code{gdi32}.")
(base32
"1v5jg7djicq34nbiv1dwaki71gkny002wyy9qfn3y0hfmrs053y6"))))))
+(define-public rust-generic-array-0.8
+ (package
+ (inherit rust-generic-array-0.12)
+ (name "rust-generic-array")
+ (version "0.8.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "generic-array" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1wi6rlx3dmrvl26yxm4z5n68kyj2ikk4nllk1kazw2ik9scnkszw"))))
+ (arguments
+ `(#:cargo-inputs
+ (("rust-nodrop" ,rust-nodrop-0.1)
+ ("rust-serde" ,rust-serde-1)
+ ("rust-typenum" ,rust-typenum-1))
+ #:cargo-development-inputs
+ (("rust-serde-json" ,rust-serde-json-1))))))
+
(define-public rust-genmesh-0.6
(package
(name "rust-genmesh")
@@ -8886,10 +9802,9 @@ API library @code{gdi32}.")
"1mgb3qvivi26gs6ihqqhh8iyhp3vgxri6vwyrwg28w0xqzavznql"))))
(build-system cargo-build-system)
(arguments
- `(#:skip-build? #t
- #:cargo-inputs
+ `(#:cargo-inputs
(("rust-unicode-width" ,rust-unicode-width-0.1)
- ("rust-rustc-std-workspace-core" ,rust-rustc-std-workspace-core-1.0)
+ ("rust-rustc-std-workspace-core" ,rust-rustc-std-workspace-core-1)
("rust-rustc-std-workspace-std" ,rust-rustc-std-workspace-std-1.0))
#:cargo-development-inputs
(("rust-log" ,rust-log-0.3))))
@@ -8923,7 +9838,7 @@ API library @code{gdi32}.")
("rust-log" ,rust-log-0.4)
("rust-stdweb" ,rust-stdweb-0.4)
("rust-wasi" ,rust-wasi-0.9)
- ("rust-rustc-std-workspace-core" ,rust-rustc-std-workspace-core-1.0))))
+ ("rust-rustc-std-workspace-core" ,rust-rustc-std-workspace-core-1))))
(home-page "https://github.com/rust-random/getrandom")
(synopsis "Retrieve random data from system source")
(description
@@ -8931,10 +9846,10 @@ API library @code{gdi32}.")
retrieving random data from system source.")
(license (list license:expat license:asl2.0))))
-(define-public rust-gettext-rs-0.4
+(define-public rust-gettext-rs-0.5
(package
(name "rust-gettext-rs")
- (version "0.4.4")
+ (version "0.5.0")
(source
(origin
(method url-fetch)
@@ -8943,12 +9858,12 @@ retrieving random data from system source.")
(string-append name "-" version ".tar.gz"))
(sha256
(base32
- "0z6fcsn1g3w9mlgfj6ln6qvqf8610w3zwvk6g062h657v114lifz"))))
+ "1qc9a63i54b9ad3jx951hn7xb6xf76c9f3hmi2cdy2m7rhczm58v"))))
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs
(("rust-gettext-sys" ,rust-gettext-sys-0.19)
- ("rust-locale-config" ,rust-locale-config-0.2))
+ ("rust-locale-config" ,rust-locale-config-0.3))
#:phases
(modify-phases %standard-phases
(add-after 'configure 'use-system-gettext
@@ -8963,6 +9878,32 @@ retrieving random data from system source.")
(description "This package provides GNU Gettext FFI bindings for Rust.")
(license license:expat)))
+(define-public rust-gettext-rs-0.4
+ (package
+ (inherit rust-gettext-rs-0.5)
+ (name "rust-gettext-rs")
+ (version "0.4.4")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "gettext-rs" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0z6fcsn1g3w9mlgfj6ln6qvqf8610w3zwvk6g062h657v114lifz"))))
+ (arguments
+ `(#:cargo-inputs
+ (("rust-gettext-sys" ,rust-gettext-sys-0.19)
+ ("rust-locale-config" ,rust-locale-config-0.2))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'configure 'use-system-gettext
+ (lambda* (#:key inputs #:allow-other-keys)
+ (let ((gettext (assoc-ref inputs "gettext")))
+ (setenv "GETTEXT_SYSTEM" gettext)
+ #t))))))))
+
(define-public rust-gettext-sys-0.19
(package
(name "rust-gettext-sys")
@@ -9028,134 +9969,30 @@ retrieving random data from system source.")
@acronym{GFA, Graphical Fragment Assembly} format.")
(license license:expat)))
-(define-public rust-gfx-0.18
- (package
- (name "rust-gfx")
- (version "0.18.2")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "gfx" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "0nqmxqi3x4ni0g78g77a6aldrv8cfvzhnpqhxyd2ap4aa3wldph1"))))
- (build-system cargo-build-system)
- (arguments
- `(#:skip-build? #t
- #:cargo-inputs
- (("rust-log" ,rust-log-0.4)
- ("rust-mint" ,rust-mint-0.5)
- ("rust-draw-state" ,rust-draw-state-0.8)
- ("rust-gfx-core" ,rust-gfx-core-0.9))))
- (home-page "https://github.com/gfx-rs/gfx")
- (synopsis "High-performance, bindless graphics API")
- (description
- "This package provides a high-performance, bindless graphics API.")
- (license license:asl2.0)))
-
-(define-public rust-gfx-core-0.9
- (package
- (name "rust-gfx-core")
- (version "0.9.2")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "gfx_core" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "0haldr99n12d90vqgvl77n59hywlklhdff85j2aljaz1yapdvyvm"))))
- (build-system cargo-build-system)
- (arguments
- `(#:skip-build? #t
- #:cargo-inputs
- (("rust-log" ,rust-log-0.4)
- ("rust-mint" ,rust-mint-0.5)
- ("rust-draw-state" ,rust-draw-state-0.8)
- ("rust-serde" ,rust-serde-1)
- ("rust-bitflags" ,rust-bitflags-1))))
- (home-page "https://github.com/gfx-rs/gfx")
- (synopsis "Core library of Gfx-rs")
- (description "This package is a core library of Gfx-rs.")
- (license license:asl2.0)))
-
-(define-public rust-gfx-device-gl-0.16
- (package
- (name "rust-gfx-device-gl")
- (version "0.16.2")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "gfx_device_gl" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "1g5yg19jvxdmviljyakhd6253bnb2qg7v8iscf48ihc0ldgki70h"))))
- (build-system cargo-build-system)
- (arguments
- `(#:skip-build? #t
- #:cargo-inputs
- (("rust-log" ,rust-log-0.4)
- ("rust-gfx-gl" ,rust-gfx-gl-0.6)
- ("rust-gfx-core" ,rust-gfx-core-0.9))))
- (home-page "https://github.com/gfx-rs/gfx")
- (synopsis "OpenGL backend for gfx-rs")
- (description "This package provides the openGL backend for gfx-rs.")
- (license license:asl2.0)))
-
-(define-public rust-gfx-gl-0.6
- (package
- (name "rust-gfx-gl")
- (version "0.6.1")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "gfx_gl" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "0ppzj4bgjawdqz3fvnscqk8lnmgh95pwzh0v96vwy809cxj83lzj"))))
- (build-system cargo-build-system)
- (arguments
- `(#:skip-build? #t
- #:cargo-inputs
- (("rust-gl-generator" ,rust-gl-generator-0.14))))
- (home-page "https://github.com/gfx-rs/gfx_gl")
- (synopsis "OpenGL bindings for gfx, based on gl-rs")
- (description
- "This package provides OpenGL bindings for gfx, based on gl-rs.")
- (license license:asl2.0)))
-
-(define-public rust-gif-0.10
+(define-public rust-ghash-0.3
(package
- (name "rust-gif")
- (version "0.10.3")
+ (name "rust-ghash")
+ (version "0.3.0")
(source
(origin
(method url-fetch)
- (uri (crate-uri "gif" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
+ (uri (crate-uri "ghash" version))
+ (file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
- "1bw174f7civdfgryvc8pvyhicpr96hzdajnda4s3y8iv3ch907a7"))))
+ "0c957q9sk1q93pqqfvhcmflfm1zvbr14aznfpm25kqd6i437zqnn"))))
(build-system cargo-build-system)
(arguments
- `(#:tests? #f ; tests not included in release
- #:cargo-inputs
- (("rust-color-quant" ,rust-color-quant-1.0)
- ("rust-libc" ,rust-libc-0.2)
- ("rust-lzw" ,rust-lzw-0.10))
+ `(#:cargo-inputs
+ (("rust-polyval" ,rust-polyval-0.4)
+ ("rust-zeroize" ,rust-zeroize-1))
#:cargo-development-inputs
- (("rust-glob" ,rust-glob-0.3))))
- (home-page "https://github.com/image-rs/image-gif")
- (synopsis "GIF decoder and encoder")
- (description "This package provides a GIF decoder and encoder in Rust.")
+ (("rust-hex-literal" ,rust-hex-literal-0.1))))
+ (home-page "https://github.com/RustCrypto/universal-hashes")
+ (synopsis "Universal hash over GF(2^128)")
+ (description "This package provides a universal hash over GF(2^128) useful
+for constructing a Message Authentication Code (MAC), as in the AES-GCM
+authenticated encryption cipher.")
(license (list license:expat license:asl2.0))))
(define-public rust-gimli-0.20
@@ -9179,10 +10016,10 @@ retrieving random data from system source.")
,rust-fallible-iterator-0.2)
("rust-arrayvec" ,rust-arrayvec-0.5)
("rust-stable-deref-trait"
- ,rust-stable-deref-trait-1.1)
+ ,rust-stable-deref-trait-1)
("rust-smallvec" ,rust-smallvec-1)
("rust-indexmap" ,rust-indexmap-1)
- ("rust-byteorder" ,rust-byteorder-1.3))))
+ ("rust-byteorder" ,rust-byteorder-1))))
(home-page "https://github.com/gimli-rs/gimli")
(synopsis "Library for reading and writing the DWARF debugging format")
(description
@@ -9206,10 +10043,10 @@ retrieving random data from system source.")
(arguments
`(#:cargo-inputs
(("rust-arrayvec" ,rust-arrayvec-0.4)
- ("rust-byteorder" ,rust-byteorder-1.3)
+ ("rust-byteorder" ,rust-byteorder-1)
("rust-fallible-iterator" ,rust-fallible-iterator-0.2)
("rust-indexmap" ,rust-indexmap-1)
- ("rust-stable-deref-trait" ,rust-stable-deref-trait-1.1))
+ ("rust-stable-deref-trait" ,rust-stable-deref-trait-1))
#:cargo-development-inputs
(("rust-crossbeam" ,rust-crossbeam-0.7)
("rust-getopts" ,rust-getopts-0.2)
@@ -9227,125 +10064,6 @@ retrieving random data from system source.")
DWARF debugging format.")
(license (list license:asl2.0 license:expat))))
-(define-public rust-gio-0.8
- (package
- (name "rust-gio")
- (version "0.8.1")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "gio" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "19cnla2ya0mi6wwaabd5mxbq2kzq46dg6jq2z19rpqyc2na0zl8c"))))
- (build-system cargo-build-system)
- (arguments
- `(#:tests? #f ; Not all files included in the tarball.
- #:cargo-inputs
- (("rust-bitflags" ,rust-bitflags-1)
- ("rust-futures-channel" ,rust-futures-channel-0.3)
- ("rust-futures-core" ,rust-futures-core-0.3)
- ("rust-futures-io" ,rust-futures-io-0.3)
- ("rust-futures-util" ,rust-futures-util-0.3)
- ("rust-gio-sys" ,rust-gio-sys-0.9)
- ("rust-glib" ,rust-glib-0.9)
- ("rust-glib-sys" ,rust-glib-sys-0.9)
- ("rust-gobject-sys" ,rust-gobject-sys-0.9)
- ("rust-lazy-static" ,rust-lazy-static-1)
- ("rust-libc" ,rust-libc-0.2)
- ("rust-gtk-rs-lgpl-docs" ,rust-gtk-rs-lgpl-docs-0.1))
- #:cargo-development-inputs
- (("rust-gir-format-check" ,rust-gir-format-check-0.1)
- ("rust-serial-test" ,rust-serial-test-0.1)
- ("rust-serial-test-derive" ,rust-serial-test-derive-0.1))))
- (inputs
- `(("glib" ,glib)))
- (home-page "https://gtk-rs.org/")
- (synopsis "Rust bindings for the Gio library")
- (description "Rust bindings for the Gio library.")
- (license license:expat)))
-
-(define-public rust-gio-0.7
- (package
- (inherit rust-gio-0.8)
- (name "rust-gio")
- (version "0.7.0")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "gio" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "1qv0wc1hqyb81c03h81s3xrl9jslrw23fr4yhygxbhih9k9vaqb2"))))
- (arguments
- `(#:cargo-inputs
- (("rust-bitflags" ,rust-bitflags-1)
- ("rust-fragile" ,rust-fragile-0.3)
- ("rust-futures-preview" ,rust-futures-preview-0.3)
- ("rust-gio-sys" ,rust-gio-sys-0.9)
- ("rust-glib" ,rust-glib-0.8)
- ("rust-glib-sys" ,rust-glib-sys-0.9)
- ("rust-gobject-sys" ,rust-gobject-sys-0.9)
- ("rust-lazy-static" ,rust-lazy-static-1)
- ("rust-libc" ,rust-libc-0.2)
- ("rust-gtk-rs-lgpl-docs" ,rust-gtk-rs-lgpl-docs-0.1))
- #:cargo-development-inputs
- (("rust-gir-format-check" ,rust-gir-format-check-0.1))))))
-
-(define-public rust-gio-sys-0.9
- (package
- (name "rust-gio-sys")
- (version "0.9.1")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "gio-sys" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "049rafihxp3maxg3fwj6062ni9dcfilvhfq6ibnfgsmr89925bag"))))
- (build-system cargo-build-system)
- (arguments
- `(#:tests? #f ; Some test libraries not included in release.
- #:cargo-inputs
- (("rust-glib-sys" ,rust-glib-sys-0.9)
- ("rust-gobject-sys" ,rust-gobject-sys-0.9)
- ("rust-libc" ,rust-libc-0.2)
- ("rust-pkg-config" ,rust-pkg-config-0.3))
- #:cargo-development-inputs
- (("rust-shell-words" ,rust-shell-words-0.1)
- ("rust-tempfile" ,rust-tempfile-3))))
- (inputs
- `(("glib" ,glib)))
- (home-page "http://gtk-rs.org/")
- (synopsis "FFI bindings to libgio-2.0")
- (description "This package provides FFI bindings to libgio-2.0.")
- (license license:expat)))
-
-(define-public rust-gir-format-check-0.1
- (package
- (name "rust-gir-format-check")
- (version "0.1.1")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "gir-format-check" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "0znl4qcgmg0656zk9vjkwdn9wj1zpkd0m0l5jnzmahd80ii7vf4b"))))
- (build-system cargo-build-system)
- (home-page "https://github.com/gtk-rs/gir-format-check")
- (synopsis "File format checker")
- (description "File format checker in Rust.")
- (license license:expat)))
-
(define-public rust-git2-0.11
(package
(name "rust-git2")
@@ -9368,13 +10086,13 @@ DWARF debugging format.")
("rust-log" ,rust-log-0.4)
("rust-openssl-probe" ,rust-openssl-probe-0.1)
("rust-openssl-sys" ,rust-openssl-sys-0.9)
- ("rust-url" ,rust-url-2.1))
+ ("rust-url" ,rust-url-2))
#:cargo-development-inputs
(("rust-docopt" ,rust-docopt-1.1)
("rust-serde" ,rust-serde-1)
("rust-serde-derive" ,rust-serde-derive-1)
("rust-tempfile" ,rust-tempfile-3)
- ("rust-thread-id" ,rust-thread-id-3.3)
+ ("rust-thread-id" ,rust-thread-id-3)
("rust-time" ,rust-time-0.1))))
(native-inputs
`(("libgit2" ,libgit2)
@@ -9412,234 +10130,15 @@ reading and writing git repositories.")
("rust-log" ,rust-log-0.4)
("rust-openssl-probe" ,rust-openssl-probe-0.1)
("rust-openssl-sys" ,rust-openssl-sys-0.9)
- ("rust-url" ,rust-url-1.7))
+ ("rust-url" ,rust-url-1))
#:cargo-development-inputs
(("rust-docopt" ,rust-docopt-1.1)
("rust-serde" ,rust-serde-1)
("rust-serde-derive" ,rust-serde-derive-1)
("rust-tempdir" ,rust-tempdir-0.3)
- ("rust-thread-id" ,rust-thread-id-3.3)
+ ("rust-thread-id" ,rust-thread-id-3)
("rust-time" ,rust-time-0.1))))))
-(define-public rust-gl-0.11
- (package
- (name "rust-gl")
- (version "0.11.0")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "gl" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "1wcqpyhck0xriffkmgmldy33lwk2044hb4l02d44vm4fbvicin6p"))))
- (build-system cargo-build-system)
- (arguments
- `(#:skip-build? #t
- #:cargo-inputs
- (("rust-gl-generator" ,rust-gl-generator-0.10))))
- (home-page "https://github.com/brendanzab/gl-rs/")
- (synopsis "OpenGL bindings for rust")
- (description "This package provides OpenGL bindings for rust.")
- (license license:asl2.0)))
-
-(define-public rust-gl-generator-0.14
- (package
- (name "rust-gl-generator")
- (version "0.14.0")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "gl-generator" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "0k8j1hmfnff312gy7x1aqjzcm8zxid7ij7dlb8prljib7b1dz58s"))))
- (build-system cargo-build-system)
- (arguments
- `(#:cargo-inputs
- (("rust-khronos-api" ,rust-khronos-api-3)
- ("rust-log" ,rust-log-0.4)
- ("rust-xml-rs" ,rust-xml-rs-0.8))))
- (home-page "https://github.com/brendanzab/gl-rs/")
- (synopsis "Code generators for bindings to the Khronos OpenGL APIs")
- (description
- "Code generators for creating bindings to the Khronos OpenGL APIs.")
- (license license:asl2.0)))
-
-(define-public rust-gl-generator-0.13
- (package
- (inherit rust-gl-generator-0.14)
- (name "rust-gl-generator")
- (version "0.13.1")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "gl-generator" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "0jpqjqpyrl73sf8y20p5rv50qz8glnsvv9infg8h4vi52zgbp66a"))))))
-
-(define-public rust-gl-generator-0.11
- (package
- (inherit rust-gl-generator-0.13)
- (name "rust-gl-generator")
- (version "0.11.0")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "gl-generator" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "1gdchvay0k0g931b2ki33mkfixcw4radk5b8sqsm29rahxg3v8ir"))))))
-
-(define-public rust-gl-generator-0.10
- (package
- (name "rust-gl-generator")
- (version "0.10.0")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "gl_generator" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "0146yd4i9wbgfrhnkc04w7n7civbanznc0q87skp6v7p7hbszzx0"))))
- (build-system cargo-build-system)
- (arguments
- `(#:skip-build? #t
- #:cargo-inputs
- (("rust-log" ,rust-log-0.4)
- ("rust-xml-rs" ,rust-xml-rs-0.8)
- ("rust-khronos-api" ,rust-khronos-api-3))))
- (home-page "https://github.com/brendanzab/gl-rs/")
- (synopsis
- "Code generators for creating bindings to the Khronos OpenGL APIs")
- (description
- "Code generators for creating bindings to the Khronos OpenGL APIs.")
- (license license:asl2.0)))
-
-(define-public rust-gleam-0.6
- (package
- (name "rust-gleam")
- (version "0.6.19")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "gleam" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "1iazvk3kvw3620gm6x8hy2x1lz51k04acl78cr3ppryhk5y0vqfa"))))
- (build-system cargo-build-system)
- (arguments
- `(#:cargo-inputs
- (("rust-gl-generator" ,rust-gl-generator-0.13))))
- (home-page "https://github.com/servo/gleam")
- (synopsis "Generated OpenGL bindings and wrapper for Servo")
- (description
- "Generated OpenGL bindings and wrapper for Servo.")
- (license (list license:asl2.0 license:expat))))
-
-(define-public rust-glib-0.9
- (package
- (name "rust-glib")
- (version "0.9.3")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "glib" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "1h3100mf7kdfxibjz5na0sqzbd2mcsyd8pzivn3666w414x5gys0"))))
- (build-system cargo-build-system)
- (arguments
- `(#:cargo-inputs
- (("rust-bitflags" ,rust-bitflags-1)
- ("rust-futures-channel" ,rust-futures-channel-0.3)
- ("rust-futures-core" ,rust-futures-core-0.3)
- ("rust-futures-executor" ,rust-futures-executor-0.3)
- ("rust-futures-preview" ,rust-futures-preview-0.3)
- ("rust-futures-task" ,rust-futures-task-0.3)
- ("rust-futures-util" ,rust-futures-util-0.3)
- ("rust-glib-sys" ,rust-glib-sys-0.9)
- ("rust-gobject-sys" ,rust-gobject-sys-0.9)
- ("rust-lazy-static" ,rust-lazy-static-1)
- ("rust-libc" ,rust-libc-0.2))
- #:cargo-development-inputs
- (("rust-tempfile" ,rust-tempfile-3))))
- (inputs
- `(("glib" ,glib)))
- (home-page "https://gtk-rs.org/")
- (synopsis "Rust bindings for the GLib library")
- (description
- "Rust bindings for the GLib library.")
- (license license:expat)))
-
-(define-public rust-glib-0.8
- (package
- (inherit rust-glib-0.9)
- (name "rust-glib")
- (version "0.8.2")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "glib" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "0ysy87zrwyzhfpf3d8rkyyr3amwj85wky05fsl7kx95s84l269xy"))))
- (arguments
- `(#:cargo-inputs
- (("rust-bitflags" ,rust-bitflags-1)
- ("rust-futures-preview" ,rust-futures-preview-0.3)
- ("rust-glib-sys" ,rust-glib-sys-0.9)
- ("rust-gobject-sys" ,rust-gobject-sys-0.9)
- ("rust-lazy-static" ,rust-lazy-static-1)
- ("rust-libc" ,rust-libc-0.2))
- #:cargo-development-inputs
- (("rust-tempfile" ,rust-tempfile-3))))))
-
-(define-public rust-glib-sys-0.9
- (package
- (name "rust-glib-sys")
- (version "0.9.1")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "glib-sys" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "1qhnwfqqcp63mx4q9744rfkq78g6ky2j8ppsxxgw0ipl08w6z1cm"))))
- (build-system cargo-build-system)
- (arguments
- `(#:tests? #f ; Some test libraries not included in release.
- #:cargo-inputs
- (("rust-libc" ,rust-libc-0.2)
- ("rust-pkg-config" ,rust-pkg-config-0.3))
- #:cargo-development-inputs
- (("rust-shell-words" ,rust-shell-words-0.1)
- ("rust-tempfile" ,rust-tempfile-3))))
- (inputs
- `(("glib" ,glib)))
- (home-page "http://gtk-rs.org/")
- (synopsis "FFI bindings to libglib-2.0")
- (description "This package provides FFI bindings to libglib-2.0.")
- (license license:expat)))
-
(define-public rust-glium-0.25
(package
(name "rust-glium")
@@ -9692,7 +10191,7 @@ OpenGL's old and error-prone API.")
"0x25wfr7vg3mzxc9x05dcphvd3nwlcmbnxrvwcvrrdwplcrrk4cv"))))
(build-system cargo-build-system)
(arguments
- `(#:skip-build? #t
+ `(#:tests? #f
#:cargo-development-inputs
(("rust-tempdir" ,rust-tempdir-0.3))))
(home-page "https://github.com/rust-lang-nursery/glob")
@@ -9753,249 +10252,57 @@ the process of matching one or more glob patterns against a single candidate
path simultaneously, and returning all of the globs that matched.")
(license (list license:expat license:unlicense))))
-(define-public rust-globwalk-0.5
+(define-public rust-globwalk-0.8
(package
(name "rust-globwalk")
- (version "0.5.0")
+ (version "0.8.0")
(source
- (origin
- (method url-fetch)
- (uri (crate-uri "globwalk" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "09axyql26s09z60sgi3y3lkin9swy2b5km3b0v6mm84xhlljxyl9"))))
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "globwalk" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0ihld70ngnri1qd8sd61099yfzcl6iqn17rfa102q1bl6ck710hp"))))
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs
- (("rust-ignore" ,rust-ignore-0.4)
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-ignore" ,rust-ignore-0.4)
("rust-walkdir" ,rust-walkdir-2))
#:cargo-development-inputs
- (("rust-docmatic" ,rust-docmatic-0.1)
+ (("rust-backtrace" ,rust-backtrace-0.3.35)
+ ("rust-docmatic" ,rust-docmatic-0.1)
("rust-tempdir" ,rust-tempdir-0.3))))
(home-page "https://github.com/gilnaa/globwalk")
(synopsis "Glob-matched recursive file system walking")
- (description
- "Glob-matched recursive file system walking.")
+ (description "This package provides glob-matched recursive file system
+walking. Based on both @code{rust-walkdir} and @code{rust-ignore}, this crate
+inherits many goodies from both, such as limiting search depth and amount of
+open file descriptors.")
(license license:expat)))
-(define-public rust-glutin-0.22
- (package
- (name "rust-glutin")
- (version "0.22.0-alpha5")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "glutin" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "0lilr4f335m1fq1acmshd51zblfaglw1hha6lhalnc1fw3cg0aag"))))
- (build-system cargo-build-system)
- (arguments
- `(#:cargo-inputs
- (("rust-android-glue" ,rust-android-glue-0.2)
- ("rust-cgl" ,rust-cgl-0.3)
- ("rust-cocoa" ,rust-cocoa-0.19)
- ("rust-core-foundation" ,rust-core-foundation-0.6)
- ("rust-core-graphics" ,rust-core-graphics-0.17)
- ("rust-glutin-egl-sys" ,rust-glutin-egl-sys-0.1)
- ("rust-glutin-emscripten-sys" ,rust-glutin-emscripten-sys-0.1)
- ("rust-glutin-gles2-sys" ,rust-glutin-gles2-sys-0.1)
- ("rust-glutin-glx-sys" ,rust-glutin-glx-sys-0.1)
- ("rust-glutin-wgl-sys" ,rust-glutin-wgl-sys-0.1)
- ("rust-lazy-static" ,rust-lazy-static-1)
- ("rust-libloading" ,rust-libloading-0.5)
- ("rust-log" ,rust-log-0.4)
- ("rust-objc" ,rust-objc-0.2)
- ("rust-osmesa-sys" ,rust-osmesa-sys-0.1)
- ("rust-parking-lot" ,rust-parking-lot-0.9)
- ("rust-wayland-client" ,rust-wayland-client-0.23)
- ("rust-winapi" ,rust-winapi-0.3)
- ("rust-winit" ,rust-winit-0.20))))
- (home-page "https://github.com/tomaka/glutin")
- (synopsis
- "Cross-platform OpenGL context provider")
- (description
- "Cross-platform OpenGL context provider.")
- (license license:asl2.0)))
-
-(define-public rust-glutin-0.21
- (package
- (inherit rust-glutin-0.22)
- (name "rust-glutin")
- (version "0.21.2")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "glutin" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "1ggyyqn7dvz4yx5ygqfvnxwfb78wvdm5y6xqw5my1b4x61dv6wak"))))
- (arguments
- `(#:cargo-inputs
- (("rust-android-glue" ,rust-android-glue-0.2)
- ("rust-cgl" ,rust-cgl-0.2)
- ("rust-cocoa" ,rust-cocoa-0.18)
- ("rust-core-foundation" ,rust-core-foundation-0.6)
- ("rust-core-graphics" ,rust-core-graphics-0.17)
- ("rust-glutin-egl-sys" ,rust-glutin-egl-sys-0.1)
- ("rust-glutin-emscripten-sys" ,rust-glutin-emscripten-sys-0.1)
- ("rust-glutin-gles2-sys" ,rust-glutin-gles2-sys-0.1)
- ("rust-glutin-glx-sys" ,rust-glutin-glx-sys-0.1)
- ("rust-glutin-wgl-sys" ,rust-glutin-wgl-sys-0.1)
- ("rust-lazy-static" ,rust-lazy-static-1)
- ("rust-libloading" ,rust-libloading-0.5)
- ("rust-objc" ,rust-objc-0.2)
- ("rust-osmesa-sys" ,rust-osmesa-sys-0.1)
- ("rust-parking-lot" ,rust-parking-lot-0.9)
- ("rust-wayland-client" ,rust-wayland-client-0.21)
- ("rust-winapi" ,rust-winapi-0.3)
- ("rust-winit" ,rust-winit-0.19))))))
-
-(define-public rust-glutin-egl-sys-0.1
- (package
- (name "rust-glutin-egl-sys")
- (version "0.1.4")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "glutin-egl-sys" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "0k1x1frdp4wp47qkai8zzmgqxzpfcn7780m29qgd92lbnbrxwbkp"))))
- (build-system cargo-build-system)
- (arguments
- `(#:cargo-inputs
- (("rust-winapi" ,rust-winapi-0.3)
- ("rust-gl-generator" ,rust-gl-generator-0.13))))
- (home-page "https://github.com/rust-windowing/glutin")
- (synopsis "Egl bindings for glutin")
- (description "The egl bindings for glutin.")
- (license license:asl2.0)))
-
-(define-public rust-glutin-emscripten-sys-0.1
- (package
- (name "rust-glutin-emscripten-sys")
- (version "0.1.0")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "glutin_emscripten_sys" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "1ix0jmm8p5if4qarzdfl5mz9rbq4hhgqarakb3bzwvyz13dkynr4"))))
- (build-system cargo-build-system)
- (home-page "https://github.com/tomaka/glutin")
- (synopsis "Emscripten bindings for glutin")
- (description "The emscripten bindings for glutin.")
- (license license:asl2.0)))
-
-(define-public rust-glutin-gles2-sys-0.1
- (package
- (name "rust-glutin-gles2-sys")
- (version "0.1.3")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "glutin_gles2_sys" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "1pswvl5zyqmqwzjr674yzslj0al2xbqsp2ai9ggb9qbshlq6r6c9"))))
- (build-system cargo-build-system)
- (arguments
- `(#:cargo-inputs
- (("rust-objc" ,rust-objc-0.2)
- ("rust-gl-generator" ,rust-gl-generator-0.11))))
- (home-page "https://github.com/tomaka/glutin")
- (synopsis "The gles2 bindings for glutin")
- (description "The gles2 bindings for glutin.")
- (license license:asl2.0)))
-
-(define-public rust-glutin-glx-sys-0.1
- (package
- (name "rust-glutin-glx-sys")
- (version "0.1.5")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "glutin-glx-sys" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "0mxs3mil68xqqb49466n5rpwpcllj6fwqjgrcrzzmz26bv5ab40j"))))
- (build-system cargo-build-system)
- (arguments
- `(#:cargo-inputs
- (("rust-x11-dl" ,rust-x11-dl-2)
- ("rust-gl-generator" ,rust-gl-generator-0.11))))
- (home-page "https://github.com/tomaka/glutin")
- (synopsis "Glx bindings for glutin")
- (description "The glx bindings for glutin.")
- (license license:asl2.0)))
-
-(define-public rust-glutin-wgl-sys-0.1
+(define-public rust-globwalk-0.5
(package
- (name "rust-glutin-wgl-sys")
- (version "0.1.3")
+ (inherit rust-globwalk-0.8)
+ (name "rust-globwalk")
+ (version "0.5.0")
(source
(origin
(method url-fetch)
- (uri (crate-uri "glutin-wgl-sys" version))
+ (uri (crate-uri "globwalk" version))
(file-name
(string-append name "-" version ".tar.gz"))
(sha256
(base32
- "08chlfzpj59q36qm212i4k879gvjzha7i90q90fds8pw3v4vn0gq"))))
- (build-system cargo-build-system)
+ "09axyql26s09z60sgi3y3lkin9swy2b5km3b0v6mm84xhlljxyl9"))))
(arguments
`(#:cargo-inputs
- (("rust-gl-generator" ,rust-gl-generator-0.11))))
- (home-page "https://github.com/tomaka/glutin")
- (synopsis "Wgl bindings for glutin")
- (description "The wgl bindings for glutin.")
- (license license:asl2.0)))
-
-(define-public rust-gobject-sys-0.9
- (package
- (name "rust-gobject-sys")
- (version "0.9.1")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "gobject-sys" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "1nakflbp3gjaas4fw7sn3p1p32khyfpcq1h06z7yqd10yq2ail9i"))))
- (build-system cargo-build-system)
- (arguments
- `(#:tests? #f ; Some test libraries not included in release.
- #:cargo-inputs
- (("rust-glib-sys" ,rust-glib-sys-0.9)
- ("rust-libc" ,rust-libc-0.2)
- ("rust-pkg-config" ,rust-pkg-config-0.3))
+ (("rust-ignore" ,rust-ignore-0.4)
+ ("rust-walkdir" ,rust-walkdir-2))
#:cargo-development-inputs
- (("rust-shell-words" ,rust-shell-words-0.1)
- ("rust-tempfile" ,rust-tempfile-3))))
- (inputs
- `(("glib" ,glib)))
- (home-page "http://gtk-rs.org/")
- (synopsis "FFI bindings to libgobject-2.0")
- (description "This package provides FFI bindings to libgobject-2.0.")
- (license license:expat)))
+ (("rust-docmatic" ,rust-docmatic-0.1)
+ ("rust-tempdir" ,rust-tempdir-0.3))))))
(define-public rust-goblin-0.2
(package
@@ -10284,29 +10591,6 @@ standard printing of search results, similar to grep itself.")
"Fast line oriented regex searching as a library.")
(license (list license:unlicense license:expat))))
-(define-public rust-gtk-rs-lgpl-docs-0.1
- (package
- (name "rust-gtk-rs-lgpl-docs")
- (version "0.1.15")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "gtk-rs-lgpl-docs" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "06b1j64zg0xmhwfkyhzh3y0apclg6qihn3f7s1bd7kgjmkia4jlr"))))
- (build-system cargo-build-system)
- (arguments
- `(#:cargo-inputs
- (("rust-rustdoc-stripper" ,rust-rustdoc-stripper-0.1))))
- (home-page "https://gtk-rs.org/")
- (synopsis "LGPL-licensed docs for Gtk-rs crates")
- (description
- "LGPL-licensed docs for Gtk-rs crates.")
- (license license:lgpl2.0)))
-
(define-public rust-gzip-header-0.3
(package
(name "rust-gzip-header")
@@ -10323,7 +10607,7 @@ standard printing of search results, similar to grep itself.")
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs
- (("rust-crc32fast" ,rust-crc32fast-1.2))))
+ (("rust-crc32fast" ,rust-crc32fast-1))))
(home-page "https://github.com/oyvindln/gzip-header")
(synopsis "Decoding and encoding the header part of gzip files")
(description
@@ -10331,8 +10615,53 @@ standard printing of search results, similar to grep itself.")
of gzip files based on the gzip header implementation in the @code{flate2} crate.")
(license (list license:expat license:asl2.0))))
+(define-public rust-h2-0.2
+ (package
+ (name "rust-h2")
+ (version "0.2.6")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "h2" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0lvdrzn43iikl521dlrb7z96lsmy7l6nnm35ylf00q7dmq5rwgwr"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bytes" ,rust-bytes-0.5)
+ ("rust-fnv" ,rust-fnv-1)
+ ("rust-futures-core" ,rust-futures-core-0.3)
+ ("rust-futures-sink" ,rust-futures-sink-0.3)
+ ("rust-futures-util" ,rust-futures-util-0.3)
+ ("rust-http" ,rust-http-0.2)
+ ("rust-indexmap" ,rust-indexmap-1)
+ ("rust-slab" ,rust-slab-0.4)
+ ("rust-tokio" ,rust-tokio-0.2)
+ ("rust-tokio-util" ,rust-tokio-util-0.3)
+ ("rust-tracing" ,rust-tracing-0.1))
+ #:cargo-development-inputs
+ (("rust-env-logger" ,rust-env-logger-0.5)
+ ("rust-hex" ,rust-hex-0.2)
+ ("rust-quickcheck" ,rust-quickcheck-0.4)
+ ("rust-rand" ,rust-rand-0.3)
+ ("rust-rustls" ,rust-rustls-0.16)
+ ("rust-serde" ,rust-serde-1)
+ ("rust-serde-json" ,rust-serde-json-1)
+ ("rust-tokio" ,rust-tokio-0.2)
+ ("rust-tokio-rustls" ,rust-tokio-rustls-0.12)
+ ("rust-walkdir" ,rust-walkdir-1)
+ ("rust-webpki" ,rust-webpki-0.21)
+ ("rust-webpki-roots" ,rust-webpki-roots-0.17))))
+ (home-page "https://github.com/hyperium/h2")
+ (synopsis "HTTP/2.0 client and server")
+ (description "This package provides an HTTP/2.0 client and server.")
+ (license license:expat)))
+
(define-public rust-h2-0.1
(package
+ (inherit rust-h2-0.2)
(name "rust-h2")
(version "0.1.26")
(source
@@ -10342,11 +10671,10 @@ of gzip files based on the gzip header implementation in the @code{flate2} crate
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32 "0qn457y8xh03p7c7cpk76r22gqpyqxc58g5022j3iya7d0j4rcx5"))))
- (build-system cargo-build-system)
(arguments
`(#:skip-build? #t ;; TODO missing indirect dependency
#:cargo-inputs
- (("rust-byteorder" ,rust-byteorder-1.3)
+ (("rust-byteorder" ,rust-byteorder-1)
("rust-bytes" ,rust-bytes-0.4)
("rust-fnv" ,rust-fnv-1)
("rust-futures" ,rust-futures-0.1)
@@ -10368,16 +10696,12 @@ of gzip files based on the gzip header implementation in the @code{flate2} crate
("rust-tokio-rustls" ,rust-tokio-rustls-0.12)
("rust-walkdir" ,rust-walkdir-1)
("rust-webpki" ,rust-webpki-0.21)
- ("rust-webpki-roots" ,rust-webpki-roots-0.17))))
- (home-page "https://github.com/hyperium/h2")
- (synopsis "HTTP/2.0 client and server")
- (description "This packages provides a HTTP/2.0 client and server.")
- (license license:expat)))
+ ("rust-webpki-roots" ,rust-webpki-roots-0.17))))))
-(define-public rust-half-1.3
+(define-public rust-half-1
(package
(name "rust-half")
- (version "1.3.0")
+ (version "1.6.0")
(source
(origin
(method url-fetch)
@@ -10386,11 +10710,17 @@ of gzip files based on the gzip header implementation in the @code{flate2} crate
(string-append name "-" version ".tar.gz"))
(sha256
(base32
- "0diqajg3mgar511hxswl4kgqqz9a026yvn3103x5h2smknlc4lwk"))))
+ "0xq1qkbfwnxv72b2fakgi5ai0j8arw38whwxgxs3rp1fz28anvyk"))))
(build-system cargo-build-system)
(arguments
- `(#:skip-build? #t
- #:cargo-inputs (("rust-serde" ,rust-serde-1))))
+ `(#:cargo-inputs
+ (("rust-serde" ,rust-serde-1))
+ #:cargo-development-inputs
+ (("rust-criterion" ,rust-criterion-0.3)
+ ("rust-quickcheck" ,rust-quickcheck-0.9)
+ ("rust-quickcheck-macros" ,rust-quickcheck-macros-0.9)
+ ("rust-rand" ,rust-rand-0.7)
+ ("rust-version-sync" ,rust-version-sync-0.8))))
(home-page "https://github.com/starkat99/half-rs")
(synopsis "Half-precision floating point f16 type")
(description
@@ -10417,8 +10747,8 @@ IEEE 754-2008 binary16 type.")
#:cargo-inputs
(("rust-hashbrown" ,rust-hashbrown-0.5)
("rust-log" ,rust-log-0.4)
- ("rust-pest" ,rust-pest-2.1)
- ("rust-pest-derive" ,rust-pest-derive-2.1)
+ ("rust-pest" ,rust-pest-2)
+ ("rust-pest-derive" ,rust-pest-derive-2)
("rust-quick-error" ,rust-quick-error-1.2)
("rust-serde" ,rust-serde-1)
("rust-serde-json" ,rust-serde-json-1)
@@ -10436,8 +10766,90 @@ IEEE 754-2008 binary16 type.")
the template engine that renders the official Rust website")
(license license:expat)))
+(define-public rust-hash32-0.1
+ (package
+ (name "rust-hash32")
+ (version "0.1.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "hash32" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1k7lv7hsbzv14pz90cxay6v7avh6d6kcrra0rsc45b33dvw1l16l"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-byteorder" ,rust-byteorder-1))
+ #:cargo-development-inputs
+ (("rust-hash32-derive" ,rust-hash32-derive-0.1))))
+ (home-page "https://github.com/japaric/hash32")
+ (synopsis "32-bit hashing machinery")
+ (description "This package provides 32-bit hashing machinery.")
+ (license (list license:expat license:asl2.0))))
+
+(define-public rust-hash32-derive-0.1
+ (package
+ (name "rust-hash32-derive")
+ (version "0.1.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "hash32-derive" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "18lrlxycq45kaz0l688shxnhgh3ryjp3zn0n6vfcs5sa2nyyzh7b"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-proc-macro2" ,rust-proc-macro2-0.3)
+ ("rust-quote" ,rust-quote-0.5)
+ ("rust-syn" ,rust-syn-0.13))))
+ (home-page "https://github.com/japaric/hash32")
+ (synopsis "Macros 1.1 implementation of @code{#[derive(Hash32)]}")
+ (description "This package provides a macros 1.1 implementation of
+@code{#[derive(Hash32)]}.")
+ (license (list license:expat license:asl2.0))))
+
+(define-public rust-hashbrown-0.8
+ (package
+ (name "rust-hashbrown")
+ (version "0.8.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "hashbrown" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "09y86zmf59n6ys9yf2bvg9ckwwa1ijv2i3flkz45iqkwfmh7i6xb"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-ahash" ,rust-ahash-0.3)
+ ("rust-compiler-builtins" ,rust-compiler-builtins-0.1)
+ ("rust-rayon" ,rust-rayon-1)
+ ("rust-rustc-std-workspace-alloc" ,rust-rustc-std-workspace-alloc-1)
+ ("rust-rustc-std-workspace-core" ,rust-rustc-std-workspace-core-1)
+ ("rust-serde" ,rust-serde-1))
+ #:cargo-development-inputs
+ (("rust-doc-comment" ,rust-doc-comment-0.3)
+ ("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-rand" ,rust-rand-0.7)
+ ("rust-rayon" ,rust-rayon-1)
+ ("rust-rustc-hash" ,rust-rustc-hash-1.0)
+ ("rust-serde-test" ,rust-serde-test-1))))
+ (home-page "https://github.com/rust-lang/hashbrown")
+ (synopsis "Rust port of Google's SwissTable hash map")
+ (description "This package provides a Rust port of Google's SwissTable
+hash map.")
+ (license (list license:asl2.0 license:expat))))
+
(define-public rust-hashbrown-0.5
(package
+ (inherit rust-hashbrown-0.8)
(name "rust-hashbrown")
(version "0.5.0")
(source
@@ -10449,39 +10861,63 @@ the template engine that renders the official Rust website")
(sha256
(base32
"0lr3gsicplw7czapsscmii87hgzpvxf5ch92v7pi95xsipxl3pp1"))))
- (build-system cargo-build-system)
(arguments
`(#:skip-build? #t
#:cargo-inputs
(("rust-compiler-builtins" ,rust-compiler-builtins-0.1)
("rust-rayon" ,rust-rayon-1)
- ("rust-rustc-std-workspace-alloc" ,rust-rustc-std-workspace-alloc-1.0)
- ("rust-rustc-std-workspace-core" ,rust-rustc-std-workspace-core-1.0)
+ ("rust-rustc-std-workspace-alloc" ,rust-rustc-std-workspace-alloc-1)
+ ("rust-rustc-std-workspace-core" ,rust-rustc-std-workspace-core-1)
("rust-serde" ,rust-serde-1))
#:cargo-development-inputs
(("rust-lazy-static" ,rust-lazy-static-1)
("rust-rand" ,rust-rand-0.5)
("rust-rayon" ,rust-rayon-1)
- ("rust-rustc-hash" ,rust-rustc-hash-1.1)
- ("rust-serde-test" ,rust-serde-test-1))))
- (home-page "https://github.com/rust-lang/hashbrown")
- (synopsis "Rust port of Google's SwissTable hash map")
- (description
- "This package provides a Rust port of Google's SwissTable hash map.")
- (license (list license:asl2.0 license:expat))))
+ ("rust-rustc-hash" ,rust-rustc-hash-1)
+ ("rust-serde-test" ,rust-serde-test-1))))))
+
+(define-public rust-heapless-0.5
+ (package
+ (name "rust-heapless")
+ (version "0.5.5")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "heapless" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1h1d6s1f9zn0rz2vkdn0b42kcnkmlpd90yhfyqqhpirv38ws5a3k"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-as-slice" ,rust-as-slice-0.1)
+ ("rust-generic-array" ,rust-generic-array-0.13)
+ ("rust-hash32" ,rust-hash32-0.1)
+ ("rust-serde" ,rust-serde-1)
+ ("rust-stable-deref-trait" ,rust-stable-deref-trait-1)
+ ("rust-ufmt-write" ,rust-ufmt-write-0.1))
+ #:cargo-development-inputs
+ (("rust-scoped-threadpool" ,rust-scoped-threadpool-0.1)
+ ("rust-ufmt" ,rust-ufmt-0.1))))
+ (home-page "https://github.com/japaric/heapless")
+ (synopsis "@code{statice} friendly data structures")
+ (description "This package provides @code{static} friendly data structures
+that don't require dynamic memory allocation.")
+ (license (list license:expat license:asl2.0))))
(define-public rust-heapsize-0.4
(package
(name "rust-heapsize")
(version "0.4.2")
(source
- (origin
- (method url-fetch)
- (uri (crate-uri "heapsize" version))
- (file-name (string-append name "-" version ".crate"))
- (sha256
- (base32
- "0q94q9ppqjgrw71swiyia4hgby2cz6dldp7ij57nkvhd6zmfcy8n"))))
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "heapsize" version))
+ (file-name (string-append name "-" version ".crate"))
+ (sha256
+ (base32
+ "0q94q9ppqjgrw71swiyia4hgby2cz6dldp7ij57nkvhd6zmfcy8n"))))
(build-system cargo-build-system)
(arguments
`(#:skip-build? #t
@@ -10580,7 +11016,7 @@ consistent, and reasonably well performing.")
#:cargo-inputs
(("rust-compiler-builtins" ,rust-compiler-builtins-0.1)
("rust-libc" ,rust-libc-0.2)
- ("rust-rustc-std-workspace-core" ,rust-rustc-std-workspace-core-1.0))))
+ ("rust-rustc-std-workspace-core" ,rust-rustc-std-workspace-core-1))))
(home-page "https://github.com/hermitcore/rusty-hermit")
(synopsis "Small interface to call functions from RustyHermit")
(description
@@ -10723,6 +11159,35 @@ compile time.")
`(#:cargo-inputs
(("rust-proc-macro-hack" ,rust-proc-macro-hack-0.4))))))
+(define-public rust-hkdf-0.9
+ (package
+ (name "rust-hkdf")
+ (version "0.9.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "hkdf" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1jdvmf8aadk3s0kn9kk3dj00nprjk9glks5f8dm55r43af34j4gy"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-digest" ,rust-digest-0.9)
+ ("rust-hmac" ,rust-hmac-0.8))
+ #:cargo-development-inputs
+ (("rust-bencher" ,rust-bencher-0.1)
+ ("rust-crypto-tests" ,rust-crypto-tests-0.5)
+ ("rust-hex" ,rust-hex-0.4)
+ ("rust-sha-1" ,rust-sha-1-0.9)
+ ("rust-sha2" ,rust-sha2-0.9))))
+ (home-page "https://github.com/RustCrypto/KDFs/")
+ (synopsis "HMAC-based Extract-and-Expand Key Derivation Function (HKDF)")
+ (description "This package provides a HMAC-based Extract-and-Expand Key
+Derivation Function (HKDF).")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-hmac-0.8
(package
(name "rust-hmac")
@@ -10900,7 +11365,7 @@ Hash-based Message Authentication Code}.")
("rust-indexmap" ,rust-indexmap-1)
("rust-quickcheck" ,rust-quickcheck-0.9)
("rust-rand" ,rust-rand-0.7)
- ("rust-seahash" ,rust-seahash-3.0)
+ ("rust-seahash" ,rust-seahash-3)
("rust-serde" ,rust-serde-1)
("rust-serde-json" ,rust-serde-json-1))))
(home-page "https://github.com/hyperium/http")
@@ -10931,7 +11396,7 @@ requests and responses.")
(("rust-indexmap" ,rust-indexmap-1)
("rust-quickcheck" ,rust-quickcheck-0.6)
("rust-rand" ,rust-rand-0.4)
- ("rust-seahash" ,rust-seahash-3.0)
+ ("rust-seahash" ,rust-seahash-3)
("rust-serde" ,rust-serde-1)
("rust-serde-json" ,rust-serde-json-1))))))
@@ -11003,7 +11468,7 @@ or response body.")
"Simple and lightweight HTTP client with built-in HTTPS support.")
(license license:expat)))
-(define-public rust-httparse-1.3
+(define-public rust-httparse-1
(package
(name "rust-httparse")
(version "1.3.3")
@@ -11027,6 +11492,25 @@ or response body.")
"This package provides a tiny, safe, speedy, zero-copy HTTP/1.x parser.")
(license (list license:asl2.0 license:expat))))
+(define-public rust-humansize-1
+ (package
+ (name "rust-humansize")
+ (version "1.1.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "humansize" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0piadmwjah1jv6q288im4za9szlgalzjyq2811w35i6gg9ib5jmn"))))
+ (build-system cargo-build-system)
+ (home-page "https://github.com/LeopoldArkham/humansize")
+ (synopsis "Represent file sizes in a human-readable format")
+ (description "This package provides a configurable crate to easily
+represent file sizes in a human-readable format.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-humantime-2
(package
(name "rust-humantime")
@@ -11077,8 +11561,59 @@ SystemTime}}.")
("rust-rand" ,rust-rand-0.4)
("rust-time" ,rust-time-0.1))))))
+(define-public rust-hyper-0.13
+ (package
+ (name "rust-hyper")
+ (version "0.13.7")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "hyper" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1symcnba2y03b8lj6xp2wd994lk3xyk3wizacjg5s60njzfshs1y"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bytes" ,rust-bytes-0.5)
+ ("rust-futures-channel" ,rust-futures-channel-0.3)
+ ("rust-futures-core" ,rust-futures-core-0.3)
+ ("rust-futures-util" ,rust-futures-util-0.3)
+ ("rust-h2" ,rust-h2-0.2)
+ ("rust-http" ,rust-http-0.2)
+ ("rust-http-body" ,rust-http-body-0.3)
+ ("rust-httparse" ,rust-httparse-1)
+ ("rust-itoa" ,rust-itoa-0.4)
+ ("rust-pin-project" ,rust-pin-project-0.4)
+ ("rust-socket2" ,rust-socket2-0.3)
+ ("rust-time" ,rust-time-0.1)
+ ("rust-tokio" ,rust-tokio-0.2)
+ ("rust-tower-service" ,rust-tower-service-0.3)
+ ("rust-tracing" ,rust-tracing-0.1)
+ ("rust-want" ,rust-want-0.3))
+ #:cargo-development-inputs
+ (("rust-futures-util" ,rust-futures-util-0.3)
+ ("rust-matches" ,rust-matches-0.1)
+ ("rust-num-cpus" ,rust-num-cpus-1)
+ ("rust-pretty-env-logger" ,rust-pretty-env-logger-0.4)
+ ("rust-serde" ,rust-serde-1)
+ ("rust-serde-derive" ,rust-serde-derive-1)
+ ("rust-serde-json" ,rust-serde-json-1)
+ ("rust-spmc" ,rust-spmc-0.3)
+ ("rust-tokio" ,rust-tokio-0.2)
+ ("rust-tokio-test" ,rust-tokio-test-0.2)
+ ("rust-tokio-util" ,rust-tokio-util-0.3)
+ ("rust-tower-util" ,rust-tower-util-0.3)
+ ("rust-url" ,rust-url-1))))
+ (home-page "https://hyper.rs")
+ (synopsis "Fast and correct HTTP library.")
+ (description "This package provides a fast and correct HTTP library.")
+ (license license:expat)))
+
(define-public rust-hyper-0.12
(package
+ (inherit rust-hyper-0.13)
(name "rust-hyper")
(version "0.12.35")
(source
@@ -11088,7 +11623,6 @@ SystemTime}}.")
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32 "1xnm8zi4bdjqhlnx3238kx8yjf29jjd1ww54apcql7wf8g8nxglx"))))
- (build-system cargo-build-system)
(arguments
`(#:skip-build? #t ;; fails due to some missing example file
#:cargo-inputs
@@ -11098,7 +11632,7 @@ SystemTime}}.")
("rust-h2" ,rust-h2-0.1)
("rust-http" ,rust-http-0.1)
("rust-http-body" ,rust-http-body-0.1)
- ("rust-httparse" ,rust-httparse-1.3)
+ ("rust-httparse" ,rust-httparse-1)
("rust-iovec" ,rust-iovec-0.1)
("rust-itoa" ,rust-itoa-0.4)
("rust-log" ,rust-log-0.4)
@@ -11124,23 +11658,55 @@ SystemTime}}.")
("rust-spmc" ,rust-spmc-0.3)
("rust-tokio-fs" ,rust-tokio-fs-0.1)
("rust-tokio-mockstream" ,rust-tokio-mockstream-1)
- ("rust-url" ,rust-url-1.7))))
- (home-page "https://hyper.rs")
- (synopsis "Fast and correct HTTP library")
- (description "This package provides a fast and correct HTTP library.")
- (license license:expat)) )
+ ("rust-url" ,rust-url-1))))))
-(define-public rust-hyper-tls-0.3
+(define-public rust-hyper-rustls-0.21
+ (package
+ (name "rust-hyper-rustls")
+ (version "0.21.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "hyper-rustls" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1dmbj15fx6qyg26hji2jm7q9y383090jy3z9zjn5xs4f7v43qx1p"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bytes" ,rust-bytes-0.5)
+ ("rust-ct-logs" ,rust-ct-logs-0.7)
+ ("rust-futures-util" ,rust-futures-util-0.3)
+ ("rust-hyper" ,rust-hyper-0.13)
+ ("rust-log" ,rust-log-0.4)
+ ("rust-rustls" ,rust-rustls-0.18)
+ ("rust-rustls-native-certs" ,rust-rustls-native-certs-0.4)
+ ("rust-tokio" ,rust-tokio-0.2)
+ ("rust-tokio-rustls" ,rust-tokio-rustls-0.14)
+ ("rust-webpki" ,rust-webpki-0.21)
+ ("rust-webpki-roots" ,rust-webpki-roots-0.20))
+ #:cargo-development-inputs
+ (("rust-tokio" ,rust-tokio-0.2))))
+ (home-page "https://github.com/ctz/hyper-rustls")
+ (synopsis "Rustls+hyper integration for pure rust HTTPS")
+ (description "This package provides Rustls+hyper integration for pure rust
+HTTPS.")
+ (license
+ (list license:asl2.0 license:isc license:expat))))
+
+(define-public rust-hyper-tls-0.4
(package
(name "rust-hyper-tls")
- (version "0.3.2")
+ (version "0.4.3")
(source
(origin
(method url-fetch)
(uri (crate-uri "hyper-tls" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
- (base32 "0kqp4sz8613j6nv375wfj3gh95ff4nb6a3rb1f2vbx0almm0v01s"))))
+ (base32
+ "1vcfyz7dxavf4brns15afmj5fxz88lbn05rrpbfqsnybdp2sqyfr"))))
(build-system cargo-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)))
@@ -11148,17 +11714,40 @@ SystemTime}}.")
`(("openssl" ,openssl)))
(arguments
`(#:cargo-inputs
+ (("rust-bytes" ,rust-bytes-0.5)
+ ("rust-hyper" ,rust-hyper-0.13)
+ ("rust-native-tls" ,rust-native-tls-0.2)
+ ("rust-tokio" ,rust-tokio-0.2)
+ ("rust-tokio-tls" ,rust-tokio-tls-0.3))
+ #:cargo-development-inputs
+ (("rust-tokio" ,rust-tokio-0.2))))
+ (home-page "https://hyper.rs")
+ (synopsis "Default TLS implementation for use with hyper")
+ (description "This package provides the default TLS implementation for use
+with hyper.")
+ (license (list license:expat license:asl2.0))))
+
+(define-public rust-hyper-tls-0.3
+ (package
+ (inherit rust-hyper-tls-0.4)
+ (name "rust-hyper-tls")
+ (version "0.3.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "hyper-tls" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32 "0kqp4sz8613j6nv375wfj3gh95ff4nb6a3rb1f2vbx0almm0v01s"))))
+ (arguments
+ `(#:cargo-inputs
(("rust-bytes" ,rust-bytes-0.4)
("rust-futures" ,rust-futures-0.1)
("rust-hyper" ,rust-hyper-0.12)
("rust-native-tls" ,rust-native-tls-0.2)
("rust-tokio-io" ,rust-tokio-io-0.1))
#:cargo-development-inputs
- (("rust-tokio" ,rust-tokio-0.1))))
- (home-page "https://hyper.rs")
- (synopsis "Default TLS implementation for use with hyper")
- (description "Default TLS implementation for use with hyper")
- (license (list license:expat license:asl2.0))))
+ (("rust-tokio" ,rust-tokio-0.1))))))
(define-public rust-ident-case-1
(package
@@ -11233,6 +11822,25 @@ SystemTime}}.")
(("rust-rustc-serialize" ,rust-rustc-serialize-0.3)
("rust-rustc-test" ,rust-rustc-test-0.3))))))
+(define-public rust-if-chain-1
+ (package
+ (name "rust-if-chain")
+ (version "1.0.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "if_chain" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0zgcn31bahnsmsjc0cgk0cy38p8sfjs79yvi6rjs5zz5b5xhqdn3"))))
+ (build-system cargo-build-system)
+ (home-page "https://github.com/lfairy/if_chain")
+ (synopsis "Macro for writing nested @code{if let} expressions")
+ (description "This package provides a macro for writing nested @code{if
+let} expressions.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-ignore-0.4
(package
(name "rust-ignore")
@@ -11268,140 +11876,6 @@ SystemTime}}.")
ignore files such as .gitignore against file paths.")
(license (list license:unlicense license:expat))))
-(define-public rust-image-0.23
- (package
- (name "rust-image")
- (version "0.23.6")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "image" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "1d2a80k7pwqshliqi5fw1dwkz7q9zd6pjnwpw8zxc1v4xhzmbc5m"))))
- (build-system cargo-build-system)
- (arguments
- `(#:tests? #f ; Some test images are missing from the release.
- #:cargo-inputs
- (("rust-bytemuck" ,rust-bytemuck-1)
- ("rust-byteorder" ,rust-byteorder-1.3)
- ("rust-gif" ,rust-gif-0.10)
- ("rust-jpeg-decoder" ,rust-jpeg-decoder-0.1)
- ("rust-num-iter" ,rust-num-iter-0.1)
- ("rust-num-rational" ,rust-num-rational-0.3)
- ("rust-num-traits" ,rust-num-traits-0.2)
- ("rust-png" ,rust-png-0.16)
- ("rust-scoped-threadpool" ,rust-scoped-threadpool-0.1)
- ("rust-tiff" ,rust-tiff-0.5))
- #:cargo-development-inputs
- (("rust-crc32fast" ,rust-crc32fast-1.2)
- ("rust-criterion" ,rust-criterion-0.3)
- ("rust-glob" ,rust-glob-0.3)
- ("rust-num-complex" ,rust-num-complex-0.3)
- ("rust-quickcheck" ,rust-quickcheck-0.9))))
- (home-page "https://github.com/image-rs/image")
- (synopsis "Imaging library written in Rust")
- (description
- "Imaging library written in Rust. Provides basic filters and decoders
-for the most common image formats.")
- (license license:expat)))
-
-(define-public rust-image-0.22
- (package
- (inherit rust-image-0.23)
- (name "rust-image")
- (version "0.22.5")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "image" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "0jpbd0p1q7xx6395ba9ikz2k4cfp26qczisa8m2v15w3hzd2mv88"))))
- (arguments
- `(#:tests? #f ; Some test images are missing from the release.
- #:cargo-inputs
- (("rust-byteorder" ,rust-byteorder-1.3)
- ("rust-gif" ,rust-gif-0.10)
- ("rust-jpeg-decoder" ,rust-jpeg-decoder-0.1)
- ("rust-num-iter" ,rust-num-iter-0.1)
- ("rust-num-rational" ,rust-num-rational-0.2)
- ("rust-num-traits" ,rust-num-traits-0.2)
- ("rust-png" ,rust-png-0.15)
- ("rust-scoped-threadpool" ,rust-scoped-threadpool-0.1)
- ("rust-tiff" ,rust-tiff-0.3))
- #:cargo-development-inputs
- (("rust-crc32fast" ,rust-crc32fast-1.2)
- ("rust-glob" ,rust-glob-0.3)
- ("rust-num-complex" ,rust-num-complex-0.2)
- ("rust-quickcheck" ,rust-quickcheck-0.9))))))
-
-(define-public rust-image-0.21
- (package
- (inherit rust-image-0.22)
- (name "rust-image")
- (version "0.21.3")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "image" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "1sv534xp8yyn7jj0q6yn2bgng1350f962g81sv8v7c6pgi31wdrm"))))
- (arguments
- `(#:cargo-inputs
- (("rust-byteorder" ,rust-byteorder-1.3)
- ("rust-gif" ,rust-gif-0.10)
- ("rust-jpeg-decoder" ,rust-jpeg-decoder-0.1)
- ("rust-lzw" ,rust-lzw-0.10)
- ("rust-num-iter" ,rust-num-iter-0.1)
- ("rust-num-rational" ,rust-num-rational-0.2)
- ("rust-num-traits" ,rust-num-traits-0.2)
- ("rust-png" ,rust-png-0.14)
- ("rust-scoped-threadpool" ,rust-scoped-threadpool-0.1)
- ("rust-tiff" ,rust-tiff-0.2))
- #:cargo-development-inputs
- (("rust-glob" ,rust-glob-0.3)
- ("rust-num-complex" ,rust-num-complex-0.2)
- ("rust-quickcheck" ,rust-quickcheck-0.6))))))
-
-(define-public rust-image-0.20
- (package
- (inherit rust-image-0.21)
- (name "rust-image")
- (version "0.20.1")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "image" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "01058n0jcw25pq5shn7lkvywv8c28xsxb3nwwyb4r16ijm1mnrj4"))))
- (arguments
- `(#:cargo-inputs
- (("rust-byteorder" ,rust-byteorder-1.3)
- ("rust-gif" ,rust-gif-0.10)
- ("rust-jpeg-decoder" ,rust-jpeg-decoder-0.1)
- ("rust-lzw" ,rust-lzw-0.10)
- ("rust-num-iter" ,rust-num-iter-0.1)
- ("rust-num-rational" ,rust-num-rational-0.2)
- ("rust-num-traits" ,rust-num-traits-0.2)
- ("rust-png" ,rust-png-0.12)
- ("rust-scoped-threadpool" ,rust-scoped-threadpool-0.1)
- ("rust-tiff" ,rust-tiff-0.2))
- #:cargo-development-inputs
- (("rust-glob" ,rust-glob-0.2)
- ("rust-num-complex" ,rust-num-complex-0.2)
- ("rust-quickcheck" ,rust-quickcheck-0.6))))))
-
(define-public rust-indexmap-1
(package
(name "rust-indexmap")
@@ -11461,6 +11935,31 @@ or numerical index. A corresponding hash set type is also provided.")
(description "This package provides DEFLATE decoding.")
(license license:expat)))
+(define-public rust-inflector-0.11
+ (package
+ (name "rust-inflector")
+ (version "0.11.4")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "Inflector" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1lqmcni21ifzyq41fhz6k1j2b23cmsx469s4g4sf01l78miqqhzy"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-regex" ,rust-regex-1))))
+ (home-page "https://github.com/whatisinternet/inflector")
+ (synopsis "String based inflections for Rust")
+ (description "This package adds String based inflections for Rust. Snake,
+kebab, camel, sentence, class, title and table cases as well as ordinalize,
+deordinalize, demodulize, foreign key, and pluralize/singularize are supported
+as both traits and pure functions acting on String types.")
+ (license license:bsd-2)))
+
(define-public rust-inotify-0.7
(package
(name "rust-inotify")
@@ -11541,8 +12040,40 @@ in Rust.")
"This package provides inotify bindings for the Rust programming language.")
(license license:isc)))
+(define-public rust-insta-0.16
+ (package
+ (name "rust-insta")
+ (version "0.16.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "insta" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1vhqlirp75nx8qalz87qk2wjs7mzwxww0n09n2ircgw1phd94zk1"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-backtrace" ,rust-backtrace-0.3)
+ ("rust-console" ,rust-console-0.11)
+ ("rust-difference" ,rust-difference-2)
+ ("rust-globwalk" ,rust-globwalk-0.8)
+ ("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-pest" ,rust-pest-2)
+ ("rust-pest-derive" ,rust-pest-derive-2)
+ ("rust-ron" ,rust-ron-0.5)
+ ("rust-serde" ,rust-serde-1)
+ ("rust-serde-json" ,rust-serde-json-1)
+ ("rust-serde-yaml" ,rust-serde-yaml-0.8))))
+ (home-page "https://github.com/mitsuhiko/insta")
+ (synopsis "Snapshot testing library for Rust")
+ (description "This package provides a snapshot testing library for Rust.")
+ (license license:asl2.0)))
+
(define-public rust-insta-0.8
(package
+ (inherit rust-insta-0.16)
(name "rust-insta")
(version "0.8.1")
(source
@@ -11554,33 +12085,27 @@ in Rust.")
(sha256
(base32
"17rvqw9xm61prncbqi3cplphr3l2dl85sljdpyr3fz2mqjgbdfwb"))))
- (build-system cargo-build-system)
(arguments
`(#:skip-build? #t
#:cargo-inputs
(("rust-chrono" ,rust-chrono-0.4)
("rust-ci-info" ,rust-ci-info-0.3)
("rust-console" ,rust-console-0.7)
- ("rust-difference" ,rust-difference-2.0)
+ ("rust-difference" ,rust-difference-2)
("rust-failure" ,rust-failure-0.1)
("rust-lazy-static" ,rust-lazy-static-1)
- ("rust-pest" ,rust-pest-2.1)
- ("rust-pest-derive" ,rust-pest-derive-2.1)
+ ("rust-pest" ,rust-pest-2)
+ ("rust-pest-derive" ,rust-pest-derive-2)
("rust-ron" ,rust-ron-0.4)
("rust-serde" ,rust-serde-1)
("rust-serde-json" ,rust-serde-json-1)
("rust-serde-yaml" ,rust-serde-yaml-0.8)
- ("rust-uuid" ,rust-uuid-0.7))))
- (home-page "https://github.com/mitsuhiko/insta")
- (synopsis "Snapshot testing library for Rust")
- (description
- "This package provides a snapshot testing library for Rust.")
- (license license:asl2.0)))
+ ("rust-uuid" ,rust-uuid-0.7))))))
(define-public rust-instant-0.1
(package
(name "rust-instant")
- (version "0.1.2")
+ (version "0.1.4")
(source
(origin
(method url-fetch)
@@ -11589,13 +12114,15 @@ in Rust.")
(string-append name "-" version ".tar.gz"))
(sha256
(base32
- "1bwca9fr29a1pyimfl94q6m6k2l57ljw1hhhvjafzs1zkqlnqd3c"))))
+ "10k1170waz1na056wvjvkps3lz28z9pc8kp8vpy4kpp53i5a4xvp"))))
(build-system cargo-build-system)
(arguments
- `(#:skip-build? #t
+ `(#:tests? #f ; Issue during the wasm test.
#:cargo-inputs
- (("rust-stdweb" ,rust-stdweb-0.4)
+ (("rust-js-sys" ,rust-js-sys-0.3)
+ ("rust-stdweb" ,rust-stdweb-0.4)
("rust-time" ,rust-time-0.1)
+ ("rust-wasm-bindgen" ,rust-wasm-bindgen-0.2)
("rust-web-sys" ,rust-web-sys-0.3))
#:cargo-development-inputs
(("rust-wasm-bindgen-test" ,rust-wasm-bindgen-test-0.2))))
@@ -11702,6 +12229,147 @@ immutable interval tree.")
(license (list license:asl2.0
license:expat))))
+(define-public rust-ipconfig-0.2
+ (package
+ (name "rust-ipconfig")
+ (version "0.2.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "ipconfig" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1mzsagc6bk3i3fpggqlq8am5rxn4hgs297rsaya90w79xj5g3qpp"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-socket2" ,rust-socket2-0.3)
+ ("rust-widestring" ,rust-widestring-0.4)
+ ("rust-winapi" ,rust-winapi-0.3)
+ ("rust-winreg" ,rust-winreg-0.6))))
+ (home-page "https://github.com/liranringel/ipconfig")
+ (synopsis "Get network adapters and configuration information for Windows")
+ (description "This package lets you get network adapters information and
+network configuration for Windows.")
+ (license (list license:expat license:asl2.0))))
+
+(define-public rust-is-macro-0.1
+ (package
+ (name "rust-is-macro")
+ (version "0.1.8")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "is-macro" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1vjh4sdpvx1kdf1znyk3b54gkyk7f8lsasc47ypkksp3r4ypz004"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-inflector" ,rust-inflector-0.11)
+ ("rust-pmutil" ,rust-pmutil-0.5)
+ ("rust-proc-macro2" ,rust-proc-macro2-1)
+ ("rust-quote" ,rust-quote-1)
+ ("rust-syn" ,rust-syn-1))))
+ (home-page "https://github.com/kdy1/is-macro")
+ (synopsis "Create methods to use custom enum like Option/Result")
+ (description "This package lets you easily create methods to use a custom
+enum like Option/Result.")
+ (license license:expat)))
+
+(define-public rust-ipnet-2
+ (package
+ (name "rust-ipnet")
+ (version "2.3.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "ipnet" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0db147nh8jnxr23yxa7hwqn7dcjivdqi3aq4mgf2zgkqqqa2zgj7"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-serde" ,rust-serde-1))
+ #:cargo-development-inputs
+ (("rust-serde-test" ,rust-serde-test-1))))
+ (home-page "https://github.com/krisprice/ipnet")
+ (synopsis "Work with IPv4 and IPv6 network addresses")
+ (description "This package provides types and useful methods for working
+with IPv4 and IPv6 network addresses, commonly called IP prefixes. The new
+IpNet, Ipv4Net, and Ipv6Net types build on the existing IpAddr, Ipv4Addr, and
+Ipv6Addr types already provided in Rust's standard library and align to their
+design to stay consistent. The module also provides useful traits that extend
+Ipv4Addr and Ipv6Addr with methods for Add, Sub, BitAnd, and BitOr operations.
+The module only uses stable feature so it is guaranteed to compile using the
+stable toolchain.")
+ (license (list license:expat license:asl2.0))))
+
+(define-public rust-ipnetwork-0.17
+ (package
+ (name "rust-ipnetwork")
+ (version "0.17.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "ipnetwork" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0sviri9ksb3cmhx3h0rcfy8pvpx7f0cx5ba1z87ydvf07amymhq2"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-serde" ,rust-serde-1))
+ #:cargo-development-inputs
+ (("rust-criterion" ,rust-criterion-0.3)
+ ("rust-serde-derive" ,rust-serde-derive-1)
+ ("rust-serde-json" ,rust-serde-json-1))))
+ (home-page "https://crates.io/crates/ipnetwork")
+ (synopsis "Work with IP CIDRs in Rust")
+ (description "This package provides a library to work with IP CIDRs in
+Rust.")
+ (license (list license:expat license:asl2.0))))
+
+(define-public rust-is-executable
+ (package
+ (name "rust-is-executable")
+ (version "0.1.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "is_executable" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0xy516afjh79a0d53j9v4w5mgi2s0r6f6qynnyz8g0dwi8xmab9h"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(;; One test tries to invoke 'cargo readme' which does not exist and aborts.
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'patch-test
+ (lambda _
+ (substitute* "tests/tests.rs"
+ (("panic!\\(\"Run `cargo readme > README.md` to update README.md\"\\)")
+ "return;"))
+ #t)))
+ #:cargo-inputs
+ (("rust-diff" ,rust-diff-0.1)
+ ("rust-winapi" ,rust-winapi-0.3))))
+ (home-page "https://github.com/fitzgen/is_executable")
+ (synopsis "Find executable files at path")
+ (description
+ "This package provides a small helper function which determines
+whether or not a given path points to an executable file.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-iso8601-0.1
(package
(name "rust-iso8601")
@@ -11741,7 +12409,7 @@ immutable interval tree.")
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs
- (("rust-either" ,rust-either-1.5))
+ (("rust-either" ,rust-either-1))
#:cargo-development-inputs
(("rust-criterion" ,rust-criterion-0.3)
("rust-permutohedron" ,rust-permutohedron-0.2)
@@ -11779,7 +12447,7 @@ immutable interval tree.")
(arguments
`(#:skip-build? #t
#:cargo-inputs
- (("rust-either" ,rust-either-1.5))
+ (("rust-either" ,rust-either-1))
#:cargo-development-inputs
(("rust-permutohedron" ,rust-permutohedron-0.2)
("rust-quickcheck" ,rust-quickcheck-0.7)
@@ -11800,7 +12468,7 @@ immutable interval tree.")
"03cpsj26xmyamcalclqzr1i700vwx8hnbgxbpjvs354f8mnr8iqd"))))
(arguments
`(#:cargo-inputs
- (("rust-either" ,rust-either-1.5))
+ (("rust-either" ,rust-either-1))
#:cargo-development-inputs
(("rust-permutohedron" ,rust-permutohedron-0.2)
("rust-quickcheck" ,rust-quickcheck-0.5))))))
@@ -11821,7 +12489,7 @@ immutable interval tree.")
(arguments
`(#:tests? #f ; Tests fail to compile
#:cargo-inputs
- (("rust-either" ,rust-either-1.5))
+ (("rust-either" ,rust-either-1))
#:cargo-development-inputs
(("rust-permutohedron" ,rust-permutohedron-0.2)
("rust-quickcheck" ,rust-quickcheck-0.4))))))
@@ -12070,34 +12738,6 @@ primitives to an @code{io::Write}.")
"An implementation of the GNU make jobserver for Rust.")
(license (list license:expat license:asl2.0))))
-(define-public rust-jpeg-decoder-0.1
- (package
- (name "rust-jpeg-decoder")
- (version "0.1.18")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "jpeg-decoder" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "0lc428qgffh2a1agkq0p26mvf9rjaiswpywy5883j99mqypg0mh2"))))
- (build-system cargo-build-system)
- (arguments
- `(#:tests? #f ; Some test files missing.
- #:cargo-inputs
- (("rust-byteorder" ,rust-byteorder-1.3)
- ("rust-rayon" ,rust-rayon-1))
- #:cargo-development-inputs
- (("rust-criterion" ,rust-criterion-0.3)
- ("rust-png" ,rust-png-0.14)
- ("rust-walkdir" ,rust-walkdir-2))))
- (home-page "https://github.com/image-rs/jpeg-decoder")
- (synopsis "JPEG decoder")
- (description "JPEG decoder written in Rust.")
- (license (list license:expat license:asl2.0))))
-
(define-public rust-js-sys-0.3
(package
(name "rust-js-sys")
@@ -12220,6 +12860,74 @@ currently supports parsing (fully conformant parser), formatting and comparing
language tags.")
(license license:expat)))
+(define-public rust-lab-0.8
+ (package
+ (name "rust-lab")
+ (version "0.8.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "lab" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1ysnbviwi35mq6xyz9c59mpgigyfp4s4y2mispxzrms4vk83bx15"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-development-inputs
+ (("rust-approx" ,rust-approx-0.3)
+ ("rust-criterion" ,rust-criterion-0.3)
+ ("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-pretty-assertions" ,rust-pretty-assertions-0.6)
+ ("rust-rand" ,rust-rand-0.5))))
+ (home-page "https://github.com/TooManyBees/lab")
+ (synopsis "Convert RGB to CIE-LAB for Rust")
+ (description
+ "This package contains tools for converting RGB colors to the CIE-LAB color
+space, and comparing differences in color.")
+ (license license:expat)))
+
+(define-public rust-lab-0.7
+ (package
+ (inherit rust-lab-0.8)
+ (name "rust-lab")
+ (version "0.7.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "lab" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0g692d489lq01pv3mzfhxd98j0r22lw28l6bk112m74djlfzxdmw"))))
+ (arguments
+ `(#:tests? #f ; test suite assumes avx2 support
+ #:cargo-development-inputs
+ (("rust-criterion" ,rust-criterion-0.3)
+ ("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-pretty-assertions" ,rust-pretty-assertions-0.6)
+ ("rust-rand" ,rust-rand-0.5))))))
+
+(define-public rust-lab-0.4
+ (package
+ (inherit rust-lab-0.8)
+ (name "rust-lab")
+ (version "0.4.4")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "lab" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0h4ig5bvzmwlzd74zj7b4sh7kzi3c6mjjnw7yjz8ijxvr4mrcr1s"))))
+ (arguments
+ `(#:cargo-development-inputs
+ (("rust-rand" ,rust-rand-0.3))))))
+
(define-public rust-lalrpop-0.17
(package
(name "rust-lalrpop")
@@ -12363,7 +13071,7 @@ requires non-const function calls to be computed.")
"05vl1h4b0iv800grsdyc3fg2bq29p70wjav6zpjvxxd5i8d6s66g"))))
(arguments '())))
-(define-public rust-lazycell-1.2
+(define-public rust-lazycell-1
(package
(name "rust-lazycell")
(version "1.2.1")
@@ -12463,7 +13171,7 @@ requires non-const function calls to be computed.")
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs
- (("rust-rustc-std-workspace-core" ,rust-rustc-std-workspace-core-1.0))))
+ (("rust-rustc-std-workspace-core" ,rust-rustc-std-workspace-core-1))))
(home-page "https://github.com/rust-lang/libc")
(synopsis "Raw FFI bindings to platform libraries like libc")
(description
@@ -12498,21 +13206,92 @@ values of all the exported APIs match the platform that libc is compiled for.")
macros on libc without stdlib.")
(license (list license:asl2.0 license:expat))))
+(define-public rust-libflate-1
+ (package
+ (name "rust-libflate")
+ (version "1.0.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "libflate" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0jarv5ildsm0ci4prd4gz7fqypifhp9xk34z9w49rchx7q1ckfp9"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-adler32" ,rust-adler32-1)
+ ("rust-crc32fast" ,rust-crc32fast-1)
+ ("rust-libflate-lz77" ,rust-libflate-lz77-1)
+ ("rust-rle-decode-fast" ,rust-rle-decode-fast-1))
+ #:cargo-development-inputs
+ (("rust-clap" ,rust-clap-2))))
+ (home-page "https://github.com/sile/libflate")
+ (synopsis "DEFLATE algorithm and related formats (ZLIB, GZIP)")
+ (description "This package provides a Rust implementation of DEFLATE
+algorithm and related formats (ZLIB, GZIP).")
+ (license license:expat)))
+
+(define-public rust-libflate-0.1
+ (package
+ (inherit rust-libflate-1)
+ (name "rust-libflate")
+ (version "0.1.27")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "libflate" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1p8z839c5lpl0g01mf8iglys9lgcjxw6xjw56crhwp8z7gs5s4yr"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-adler32" ,rust-adler32-1)
+ ("rust-crc32fast" ,rust-crc32fast-1)
+ ("rust-rle-decode-fast" ,rust-rle-decode-fast-1)
+ ("rust-take-mut" ,rust-take-mut-0.2))
+ #:cargo-development-inputs
+ (("rust-clap" ,rust-clap-2))))))
+
+(define-public rust-libflate-lz77-1
+ (package
+ (name "rust-libflate-lz77")
+ (version "1.0.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "libflate_lz77" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "06xir79gmp97mdnlnjclk5zlzgkf5s6qvwilcd4gq9j9gngz11ij"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-development-inputs
+ (("rust-libflate" ,rust-libflate-0.1))))
+ (home-page "https://github.com/sile/libflate")
+ (synopsis "LZ77 encoder for libflate crate")
+ (description "This package provides a LZ77 encoder for libflate crate.")
+ (license license:expat)))
+
(define-public rust-libgit2-sys-0.10
(package
(name "rust-libgit2-sys")
(version "0.10.0")
(source
- (origin
- (method url-fetch)
- (uri (crate-uri "libgit2-sys" version))
- (file-name (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "0l9fvki7qxsl97vgzqwlv75nl213a5vxw7b1jaik97ala356pv6r"))
- (modules '((guix build utils)))
- (snippet
- '(begin (delete-file-recursively "libgit2") #t))))
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "libgit2-sys" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0l9fvki7qxsl97vgzqwlv75nl213a5vxw7b1jaik97ala356pv6r"))
+ (modules '((guix build utils)))
+ (snippet
+ '(begin (delete-file-recursively "libgit2") #t))))
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs
@@ -12585,6 +13364,39 @@ macros on libc without stdlib.")
("rust-cc" ,rust-cc-1)
("rust-pkg-config" ,rust-pkg-config-0.3))))))
+(define-public rust-libloading-0.6
+ (package
+ (name "rust-libloading")
+ (version "0.6.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "libloading" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1ygliqa518jjxwa5ih4b2f8m984ib596vxmjb28pa5lb8zqdhhr4"))
+ (modules '((guix build utils)))
+ (snippet
+ '(begin
+ ;; Enable unstable features
+ (substitute* "src/lib.rs"
+ (("//! A memory" all)
+ (string-append "#![feature(non_exhaustive)]\n" all)))))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-cfg-if" ,rust-cfg-if-0.1)
+ ("rust-winapi" ,rust-winapi-0.3))
+ #:cargo-development-inputs
+ (("rust-libc" ,rust-libc-0.2)
+ ("rust-static-assertions" ,rust-static-assertions-1))))
+ (home-page "https://github.com/nagisa/rust_libloading/")
+ (synopsis "Safer binding to dynamic library loading utilities")
+ (description "This package provides a safer binding to dynamic library
+loading utilities.")
+ (license license:isc)))
+
(define-public rust-libloading-0.5
(package
(name "rust-libloading")
@@ -12674,6 +13486,31 @@ functions and static variables these libraries contain.")
(base32
"16pc0gx4gkg0q2s1ssq8268brn14j8344623vwhadmivc4lsmivz"))))))
+(define-public rust-libmimalloc-sys-0.1
+ (package
+ (name "rust-libmimalloc-sys")
+ (version "0.1.18")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "libmimalloc-sys" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0bbm03687j9fspvk6nqspmjlvchlvbxydl0mrc1x9i1k6kqiy5c2"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-cty" ,rust-cty-0.2)
+ ("rust-cmake" ,rust-cmake-0.1))))
+ (native-inputs
+ `(("cmake" ,cmake-minimal)))
+ (home-page "https://github.com/purpleprotocol/mimalloc_rust")
+ (synopsis "Sys crate wrapping the mimalloc allocator")
+ (description "This package provides a sys crate wrapping the mimalloc
+allocator.")
+ (license license:expat)))
+
(define-public rust-libnghttp2-sys-0.1
(package
(name "rust-libnghttp2-sys")
@@ -12779,36 +13616,6 @@ known as zlib).")
(license (list license:asl2.0
license:expat))))
-(define-public rust-line-drawing-0.7
- (package
- (name "rust-line-drawing")
- (version "0.7.0")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "line_drawing" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "1fcna7hq1g1kkkqy07hydscx5d2zgb6gskz3vnsvsif8h8ysvisw"))))
- (build-system cargo-build-system)
- (arguments
- ;; This version does not specify any versions on dependants.
- `(#:tests? #f ; Cannot compile line_drawing for the test suite.
- #:cargo-inputs
- (("rust-num-traits" ,rust-num-traits-0.2))
- #:cargo-development-inputs
- (("rust-bresenham" ,rust-bresenham-0.1)
- ("rust-image" ,rust-image-0.22) ; 0.17?
- ("rust-rand" ,rust-rand-0.6))))
- (home-page "https://github.com/expenses/line_drawing")
- (synopsis "Collection of line-drawing algorithms")
- (description
- "This package provides a collection of line-drawing algorithms for use in
-graphics and video games.")
- (license license:expat)))
-
(define-public rust-line-wrap-0.1
(package
(name "rust-line-wrap")
@@ -13018,32 +13825,45 @@ by inspecting the system for user preference.")
("rust-regex" ,rust-regex-1)
("rust-winapi" ,rust-winapi-0.3))))))
-(define-public rust-lock-api-0.3
+(define-public rust-lock-api-0.4
(package
(name "rust-lock-api")
- (version "0.3.4")
+ (version "0.4.1")
(source
(origin
(method url-fetch)
(uri (crate-uri "lock_api" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
+ (file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
- "0xgc5dzmajh0akbh5d6d7rj9mh5rzpk74pyrc946v2ixgakj9nn4"))))
+ "0716z2rs0kydmd1818kqp4641dfkqzr0rpbnrpxhabxylp2pq918"))))
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs
(("rust-owning-ref" ,rust-owning-ref-0.4)
- ("rust-scopeguard" ,rust-scopeguard-1.0)
+ ("rust-scopeguard" ,rust-scopeguard-1)
("rust-serde" ,rust-serde-1))))
(home-page "https://github.com/Amanieu/parking_lot")
- (synopsis
- "Wrappers to create fully-featured Mutex and RwLock types")
- (description
- "This package provides wrappers to create fully-featured @code{Mutex} and
-@code{RwLock} types. It is compatible with @code{no_std}.")
- (license (list license:expat license:asl2.0))))
+ (synopsis "Wrappers to create fully-featured Mutex and RwLock types")
+ (description "This package provides wrappers to create fully-featured
+@code{Mutex} and @code{RwLock} types. It is compatible with @code{no_std}.")
+ (license (list license:asl2.0 license:expat))))
+
+(define-public rust-lock-api-0.3
+ (package
+ (inherit rust-lock-api-0.4)
+ (name "rust-lock-api")
+ (version "0.3.4")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "lock_api" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0xgc5dzmajh0akbh5d6d7rj9mh5rzpk74pyrc946v2ixgakj9nn4"))))
+ (build-system cargo-build-system)))
(define-public rust-lock-api-0.2
(package
@@ -13192,6 +14012,41 @@ by inspecting the system for user preference.")
("rust-serde-derive" ,rust-serde-derive-1)
("rust-serde-json" ,rust-serde-json-1))))))
+(define-public rust-lopdf-0.25
+ (package
+ (name "rust-lopdf")
+ (version "0.25.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "lopdf" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1yb4yj1a8a88w78hz9msg65xbkyx5n4d9gm1xb2c67zaj1xvyw1i"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-chrono" ,rust-chrono-0.4)
+ ("rust-dtoa" ,rust-dtoa-0.4)
+ ("rust-encoding" ,rust-encoding-0.2)
+ ("rust-flate2" ,rust-flate2-1)
+ ("rust-image" ,rust-image-0.20)
+ ("rust-itoa" ,rust-itoa-0.4)
+ ("rust-linked-hash-map" ,rust-linked-hash-map-0.4)
+ ("rust-log" ,rust-log-0.4)
+ ("rust-lzw" ,rust-lzw-0.10)
+ ("rust-nom" ,rust-nom-5)
+ ("rust-pom" ,rust-pom-3)
+ ("rust-rayon" ,rust-rayon-1)
+ ("rust-time" ,rust-time-0.1))))
+ (home-page "https://github.com/J-F-Liu/lopdf")
+ (synopsis "Rust library for PDF document manipulation")
+ (description
+ "This package provides a Rust library for PDF document manipulation.")
+ (license license:expat)))
+
(define-public rust-lru-cache-0.1
(package
(name "rust-lru-cache")
@@ -13254,58 +14109,6 @@ key-value pairs.")
(base32
"0jxsgkn378kxkiqdshdjdclw5wwp2xaz45cqd3yw85fhn8a38fza"))))))
-(define-public rust-lyon-geom-0.14
- (package
- (name "rust-lyon-geom")
- (version "0.14.1")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "lyon_geom" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "178z4cqqmyw0rsabbgx9phkjxjzcnq0604062lqjlq87k063216a"))))
- (build-system cargo-build-system)
- (arguments
- `(#:skip-build? #t
- #:cargo-inputs
- (("rust-num-traits" ,rust-num-traits-0.2)
- ("rust-euclid" ,rust-euclid-0.20)
- ("rust-arrayvec" ,rust-arrayvec-0.4)
- ("rust-serde" ,rust-serde-1))))
- (home-page "https://github.com/nical/lyon")
- (synopsis "2D graphics rendering on the GPU using tessellation")
- (description
- "This package provides 2D graphics rendering on the GPU using tessellation.")
- (license (list license:expat license:asl2.0))))
-
-(define-public rust-lyon-path-0.14
- (package
- (name "rust-lyon-path")
- (version "0.14.0")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "lyon_path" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "0qk8x46w0sf6j04l6gvhgn9kr4ymcqkmkh67w8wqahm54jn5gjqb"))))
- (build-system cargo-build-system)
- (arguments
- `(#:skip-build? #t
- #:cargo-inputs
- (("rust-lyon-geom" ,rust-lyon-geom-0.14)
- ("rust-serde" ,rust-serde-1))))
- (home-page "https://github.com/nical/lyon")
- (synopsis "Types and utilities to store, build and iterate over 2D paths")
- (description
- "Types and utilities to store, build and iterate over 2D paths.")
- (license (list license:expat license:asl2.0))))
-
(define-public rust-lzma-sys-0.1
(package
(name "rust-lzma-sys")
@@ -13767,10 +14570,10 @@ compression function.")
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs
- (("rust-byteorder" ,rust-byteorder-1.3)
+ (("rust-byteorder" ,rust-byteorder-1)
("rust-memmap" ,rust-memmap-0.7)
("rust-parking-lot" ,rust-parking-lot-0.9)
- ("rust-rustc-hash" ,rust-rustc-hash-1.1))))
+ ("rust-rustc-hash" ,rust-rustc-hash-1))))
(home-page "https://github.com/rust-lang/measureme")
(synopsis "Support crate for rustc's self-profiling feature")
(description
@@ -14031,6 +14834,28 @@ for Rust structs.")
(description "Rust bindings for Metal.")
(license (list license:expat license:asl2.0))))
+(define-public rust-mimalloc-0.1
+ (package
+ (name "rust-mimalloc")
+ (version "0.1.20")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "mimalloc" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0x74b6jv6pxfl6bh44bnch6ajm3l5z3zq8w8mqlscbq8d77rnx80"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-libmimalloc-sys" ,rust-libmimalloc-sys-0.1))))
+ (home-page "https://crates.io/crates/mimalloc")
+ (synopsis "Performance and security oriented drop-in allocator")
+ (description "This package provides a performance and security oriented
+drop-in allocator.")
+ (license license:expat)))
+
(define-public rust-mime-0.3
(package
(name "rust-mime")
@@ -14052,6 +14877,32 @@ for Rust structs.")
(license (list license:asl2.0
license:expat))))
+(define-public rust-mime-guess-2
+ (package
+ (name "rust-mime-guess")
+ (version "2.0.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "mime_guess" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "04pjpbl90z4yn0cmifvwgf4mqznciw6b095k626q96bxx71d9116"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-mime" ,rust-mime-0.3)
+ ("rust-unicase" ,rust-unicase-2))
+ #:cargo-development-inputs
+ (("rust-criterion" ,rust-criterion-0.3)
+ ("rust-unicase" ,rust-unicase-2))))
+ (home-page "https://github.com/abonander/mime_guess")
+ (synopsis "Detect a file's MIME type by its extension")
+ (description "This package provides a simple crate for detection of a
+file's MIME type by its extension.")
+ (license license:expat)))
+
(define-public rust-miniz-oxide-0.3
(package
(name "rust-miniz-oxide")
@@ -14108,7 +14959,7 @@ streaming API for miniz_oxide.")
(arguments
`(#:skip-build? #t
#:cargo-inputs
- (("rust-crc32fast" ,rust-crc32fast-1.2)
+ (("rust-crc32fast" ,rust-crc32fast-1)
("rust-libc" ,rust-libc-0.2)
("rust-miniz-oxide" ,rust-miniz-oxide-0.2))
#:cargo-development-inputs
@@ -14245,7 +15096,7 @@ drop-in replacement for miniz.")
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs
- (("rust-lazycell" ,rust-lazycell-1.2)
+ (("rust-lazycell" ,rust-lazycell-1)
("rust-log" ,rust-log-0.4)
("rust-mio" ,rust-mio-0.6)
("rust-slab" ,rust-slab-0.4))))
@@ -14409,6 +15260,59 @@ checking.")
"Chaining APIs for both self -> Self and &mut self methods.")
(license license:expat)))
+(define-public rust-multi-default-trait-impl-0.1
+ (package
+ (name "rust-multi-default-trait-impl")
+ (version "0.1.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "multi-default-trait-impl" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1r6y5zb6kg655zi02yk4amkwsgds5ay9ag1dk30cls7rn3dlvvqs"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-proc-macro2" ,rust-proc-macro2-1)
+ ("rust-quote" ,rust-quote-1)
+ ("rust-syn" ,rust-syn-1))))
+ (home-page "https://github.com/hainish/multi-default-trait-impl")
+ (synopsis "Define multiple implementations of trait")
+ (description
+ "This library contains two attribute macros: @code{default_trait_impl}
+which defines a default trait implementation, and @code{trait_impl} which uses
+a default trait implementation you've defined.")
+ (license license:lgpl2.1+)))
+
+(define-public rust-mysqlclient-sys-0.2
+ (package
+ (name "rust-mysqlclient-sys")
+ (version "0.2.4")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "mysqlclient-sys" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "11ggkcbfnmp81amc9g0j98dk17fnmqcp9smgm9w401286kckg5ky"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-pkg-config" ,rust-pkg-config-0.3)
+ ("rust-vcpkg" ,rust-vcpkg-0.2))))
+ (native-inputs
+ `(("mariadb" ,mariadb "lib")))
+ (home-page "https://github.com/sgrif/mysqlclient-sys")
+ (synopsis "Auto-generated rust bindings for libmysqlclient")
+ (description "This package provides auto-generated rust bindings for
+libmysqlclient.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-nasm-rs-0.1
(package
(name "rust-nasm-rs")
@@ -14432,10 +15336,10 @@ checking.")
(description "Run NASM during your Cargo build.")
(license (list license:expat license:asl2.0))))
-(define-public rust-nalgebra-0.19
+(define-public rust-nalgebra-0.21
(package
(name "rust-nalgebra")
- (version "0.19.0")
+ (version "0.21.1")
(source
(origin
(method url-fetch)
@@ -14444,7 +15348,7 @@ checking.")
(string-append name "-" version ".tar.gz"))
(sha256
(base32
- "0i87k57nav221lnr9z7ljlwxh8073qsx33bajdm146y00q805fqa"))))
+ "11ili22n4ffgcjbgvbjqmpbd67qrl2acqbpymg6z7d2h7my19dnn"))))
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs
@@ -14457,16 +15361,18 @@ checking.")
("rust-num-complex" ,rust-num-complex-0.2)
("rust-num-rational" ,rust-num-rational-0.2)
("rust-num-traits" ,rust-num-traits-0.2)
- ("rust-pest" ,rust-pest-2.1)
- ("rust-pest-derive" ,rust-pest-derive-2.1)
+ ("rust-pest" ,rust-pest-2)
+ ("rust-pest-derive" ,rust-pest-derive-2)
("rust-quickcheck" ,rust-quickcheck-0.9)
("rust-rand" ,rust-rand-0.7)
("rust-rand-distr" ,rust-rand-distr-0.2)
("rust-serde" ,rust-serde-1)
("rust-serde-derive" ,rust-serde-derive-1)
+ ("rust-simba" ,rust-simba-0.1)
("rust-typenum" ,rust-typenum-1))
#:cargo-development-inputs
- (("rust-rand-xorshift" ,rust-rand-xorshift-0.2)
+ (("rust-rand-isaac" ,rust-rand-isaac-0.2)
+ ("rust-rand-xorshift" ,rust-rand-xorshift-0.2)
("rust-serde-json" ,rust-serde-json-1))))
(home-page "https://nalgebra.org")
(synopsis "Linear algebra library")
@@ -14475,6 +15381,43 @@ checking.")
statically-sized or dynamically-sized matrices.")
(license license:bsd-3)))
+(define-public rust-nalgebra-0.19
+ (package
+ (inherit rust-nalgebra-0.21)
+ (name "rust-nalgebra")
+ (version "0.19.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "nalgebra" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0i87k57nav221lnr9z7ljlwxh8073qsx33bajdm146y00q805fqa"))))
+ (arguments
+ `(#:cargo-inputs
+ (("rust-abomonation" ,rust-abomonation-0.7)
+ ("rust-alga" ,rust-alga-0.9)
+ ("rust-approx" ,rust-approx-0.3)
+ ("rust-generic-array" ,rust-generic-array-0.13)
+ ("rust-matrixmultiply" ,rust-matrixmultiply-0.2)
+ ("rust-mint" ,rust-mint-0.5)
+ ("rust-num-complex" ,rust-num-complex-0.2)
+ ("rust-num-rational" ,rust-num-rational-0.2)
+ ("rust-num-traits" ,rust-num-traits-0.2)
+ ("rust-pest" ,rust-pest-2)
+ ("rust-pest-derive" ,rust-pest-derive-2)
+ ("rust-quickcheck" ,rust-quickcheck-0.9)
+ ("rust-rand" ,rust-rand-0.7)
+ ("rust-rand-distr" ,rust-rand-distr-0.2)
+ ("rust-serde" ,rust-serde-1)
+ ("rust-serde-derive" ,rust-serde-derive-1)
+ ("rust-typenum" ,rust-typenum-1))
+ #:cargo-development-inputs
+ (("rust-rand-xorshift" ,rust-rand-xorshift-0.2)
+ ("rust-serde-json" ,rust-serde-json-1))))))
+
(define-public rust-nalgebra-0.18
(package
(inherit rust-nalgebra-0.19)
@@ -14500,8 +15443,8 @@ statically-sized or dynamically-sized matrices.")
("rust-num-complex" ,rust-num-complex-0.2)
("rust-num-rational" ,rust-num-rational-0.2)
("rust-num-traits" ,rust-num-traits-0.2)
- ("rust-pest" ,rust-pest-2.1)
- ("rust-pest-derive" ,rust-pest-derive-2.1)
+ ("rust-pest" ,rust-pest-2)
+ ("rust-pest-derive" ,rust-pest-derive-2)
("rust-quickcheck" ,rust-quickcheck-0.8)
("rust-rand" ,rust-rand-0.6)
("rust-serde" ,rust-serde-1)
@@ -14534,6 +15477,112 @@ statically-sized or dynamically-sized matrices.")
IO of Windows's named pipes.")
(license (list license:expat license:asl2.0))))
+(define-public rust-napi-0.5
+ (package
+ (name "rust-napi")
+ (version "0.5.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "napi" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0mp0di7zv1r9gn3r3pmqnyy6q94akd9d6bl1p7m76nm9hgj9rw56"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-encoding-rs" ,rust-encoding-rs-0.8)
+ ("rust-futures" ,rust-futures-0.3)
+ ("rust-napi-sys" ,rust-napi-sys-0.4)
+ ("rust-once-cell" ,rust-once-cell-1)
+ ("rust-serde" ,rust-serde-1)
+ ("rust-serde-json" ,rust-serde-json-1)
+ ("rust-tokio" ,rust-tokio-0.2))
+ #:cargo-development-inputs
+ (("rust-napi-build" ,rust-napi-build-0.2))))
+ (home-page "https://github.com/napi-rs/napi-rs")
+ (synopsis "N-API bindings")
+ (description "This package provides N-API bindings.")
+ (license license:expat)))
+
+(define-public rust-napi-build-0.2
+ (package
+ (name "rust-napi-build")
+ (version "0.2.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "napi-build" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1z02mlw1wa01fjpjnqns3f3vxacbg1jnk98hcg3pgwp5xy3zdyqq"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-cfg-if" ,rust-cfg-if-0.1)
+ ("rust-reqwest" ,rust-reqwest-0.10))))
+ (home-page "https://github.com/napi-rs/napi-rs")
+ (synopsis "N-API build support")
+ (description "This package provides N-API build support.")
+ (license license:expat)))
+
+(define-public rust-napi-derive-0.5
+ (package
+ (name "rust-napi-derive")
+ (version "0.5.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "napi-derive" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0kkgpzw4i6f0zkg80v9vhr7y5rg25q3kv67029i1gcgsrxlqx4zi"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-proc-macro2" ,rust-proc-macro2-1)
+ ("rust-quote" ,rust-quote-1)
+ ("rust-syn" ,rust-syn-1))))
+ (home-page "https://github.com/napi-rs/napi-rs")
+ (synopsis "N-API procedural macros")
+ (description "This package provides N-API procedural macros.")
+ (license license:expat)))
+
+(define-public rust-napi-sys-0.4
+ (package
+ (name "rust-napi-sys")
+ (version "0.4.7")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "napi-sys" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0cjirf6n4i2lw65iaww8d4hahv3cbfm5ka9hlansvnbfgzwadzq9"))))
+ (build-system cargo-build-system)
+ (inputs
+ `(("openssl" ,openssl)))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bindgen" ,rust-bindgen-0.55)
+ ("rust-semver" ,rust-semver-0.10)
+ ("rust-tar" ,rust-tar-0.4))
+ #:cargo-development-inputs
+ (("rust-flate2" ,rust-flate2-1)
+ ("rust-glob" ,rust-glob-0.3)
+ ("rust-regex" ,rust-regex-1)
+ ("rust-reqwest" ,rust-reqwest-0.10))))
+ (home-page "https://github.com/napi-rs/napi-rs")
+ (synopsis "NodeJS N-API raw binding")
+ (description "This package provides a NodeJS N-API raw binding.")
+ (license license:expat)))
+
(define-public rust-native-tls-0.2
(package
(name "rust-native-tls")
@@ -14627,30 +15676,6 @@ types as proposed in RFC 1158.")
(license (list license:asl2.0
license:expat))))
-(define-public rust-netlib-src-0.7
- (package
- (name "rust-netlib-src")
- (version "0.7.4")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "netlib-src" version))
- (file-name (string-append name "-" version ".crate"))
- (sha256
- (base32
- "112hwfw1zzdj10h3j213xxqjrq38iygb3nb3ijay65ycmrg819s4"))))
- (build-system cargo-build-system)
- ;(inputs
- ; `(("gfortran:lib" ,gfortran "lib")
- ; ("lapack" ,lapack)))
- (home-page "https://github.com/blas-lapack-rs/netlib-src")
- (synopsis "Source of BLAS and LAPACK via Netlib")
- (description
- "The package provides a source of BLAS and LAPACK via Netlib.")
- (properties '((hidden? . #t)))
- (license (list license:asl2.0
- license:expat))))
-
(define-public rust-nettle-7
(package
(name "rust-nettle")
@@ -14676,7 +15701,7 @@ types as proposed in RFC 1158.")
(("rust-getrandom" ,rust-getrandom-0.1)
("rust-libc" ,rust-libc-0.2)
("rust-nettle-sys" ,rust-nettle-sys-2)
- ("rust-thiserror" ,rust-thiserror-1.0))
+ ("rust-thiserror" ,rust-thiserror-1))
#:cargo-development-inputs
(("rust-bindgen" ,rust-bindgen-0.51)
("rust-pkg-config" ,rust-pkg-config-0.3))
@@ -15078,15 +16103,91 @@ with all line endings.")
#:cargo-development-inputs
(("rust-tempfile" ,rust-tempfile-3))))
(home-page "https://github.com/passcod/notify")
- (synopsis "Cross-platform filesystem notification library")
+ (synopsis "Cross-platform file system notification library")
(description
- "Cross-platform filesystem notification library.")
+ "Cross-platform file system notification library.")
(license license:cc0)))
-(define-public rust-num-0.2
+(define-public rust-ntest-0.3
+ (package
+ (name "rust-ntest")
+ (version "0.3.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "ntest" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "04cljndihkcqqwj061bgpnxyv7wqbd3f91ag1b3ryrayn7rrclxv"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-ntest-test-cases" ,rust-ntest-test-cases-0.3)
+ ("rust-ntest-timeout" ,rust-ntest-timeout-0.3)
+ ("rust-timebomb" ,rust-timebomb-0.1))
+ #:cargo-development-inputs
+ (("rust-ntest-test-cases" ,rust-ntest-test-cases-0.3)
+ ("rust-ntest-timeout" ,rust-ntest-timeout-0.3)
+ ("rust-timebomb" ,rust-timebomb-0.1))))
+ (home-page "https://github.com/becheran/ntest")
+ (synopsis "Testing framework for Rust")
+ (description "This package provides a testing framework for Rust which
+enhances the built-in library with some useful features.")
+ (license license:expat)))
+
+(define-public rust-ntest-test-cases-0.3
+ (package
+ (name "rust-ntest-test-cases")
+ (version "0.3.4")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "ntest_test_cases" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0b67m368599b2zgwx19psqz6n3m9m5532h1257x6vz1pym3gd2na"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-proc-macro2" ,rust-proc-macro2-1)
+ ("rust-quote" ,rust-quote-1)
+ ("rust-syn" ,rust-syn-1))))
+ (home-page "https://github.com/becheran/ntest")
+ (synopsis "Test cases for ntest framework")
+ (description "This package provides test cases for ntest framework.")
+ (license license:expat)))
+
+(define-public rust-ntest-timeout-0.3
+ (package
+ (name "rust-ntest-timeout")
+ (version "0.3.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "ntest_timeout" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0klryn3rgjxnq3cv6j8bwcsr0b7zw3x216h63144v22aja18p0g0"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-proc-macro2" ,rust-proc-macro2-1)
+ ("rust-quote" ,rust-quote-1)
+ ("rust-syn" ,rust-syn-1)
+ ("rust-timebomb" ,rust-timebomb-0.1))))
+ (home-page "https://github.com/becheran/ntest")
+ (synopsis "Timeout attribute for the ntest framework")
+ (description "This package provides a timeout attribute for the ntest
+framework.")
+ (license license:expat)))
+
+(define-public rust-num-0.3
(package
(name "rust-num")
- (version "0.2.1")
+ (version "0.3.0")
(source
(origin
(method url-fetch)
@@ -15095,15 +16196,15 @@ with all line endings.")
(string-append name "-" version ".tar.gz"))
(sha256
(base32
- "0dhcvhprvvx1iaaq7sxlgxw5awmj8dibni8vhizi59zyz4q60lxq"))))
+ "0jng6s3i51k3227id2z8h348l2da8x3jq4p3az9slkxwj5hifgmb"))))
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs
- (("rust-num-bigint" ,rust-num-bigint-0.2)
- ("rust-num-complex" ,rust-num-complex-0.2)
+ (("rust-num-bigint" ,rust-num-bigint-0.3)
+ ("rust-num-complex" ,rust-num-complex-0.3)
("rust-num-integer" ,rust-num-integer-0.1)
("rust-num-iter" ,rust-num-iter-0.1)
- ("rust-num-rational" ,rust-num-rational-0.2)
+ ("rust-num-rational" ,rust-num-rational-0.3)
("rust-num-traits" ,rust-num-traits-0.2))))
(home-page "https://github.com/rust-num/num")
(synopsis "Collection of numeric types and traits for Rust")
@@ -15112,6 +16213,29 @@ with all line endings.")
including bigint, complex, rational, range iterators, generic integers, and more.")
(license (list license:expat license:asl2.0))))
+(define-public rust-num-0.2
+ (package
+ (inherit rust-num-0.3)
+ (name "rust-num")
+ (version "0.2.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "num" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0dhcvhprvvx1iaaq7sxlgxw5awmj8dibni8vhizi59zyz4q60lxq"))))
+ (arguments
+ `(#:cargo-inputs
+ (("rust-num-bigint" ,rust-num-bigint-0.2)
+ ("rust-num-complex" ,rust-num-complex-0.2)
+ ("rust-num-integer" ,rust-num-integer-0.1)
+ ("rust-num-iter" ,rust-num-iter-0.1)
+ ("rust-num-rational" ,rust-num-rational-0.2)
+ ("rust-num-traits" ,rust-num-traits-0.2))))))
+
(define-public rust-num-0.1
(package
(inherit rust-num-0.2)
@@ -15310,7 +16434,7 @@ including bigint, complex, rational, range iterators, generic integers, and more
(define-public rust-num-derive-0.3
(package
(name "rust-num-derive")
- (version "0.3.0")
+ (version "0.3.2")
(source
(origin
(method url-fetch)
@@ -15319,14 +16443,16 @@ including bigint, complex, rational, range iterators, generic integers, and more
(string-append name "-" version ".tar.gz"))
(sha256
(base32
- "0imprwv8cs01k46g56ajlvc97dp8kz51y2vn6cp9jkw1c6r1b2qc"))))
+ "1czs5215ypgbwg0qgy2i515xj3vfcgm8fw7gi4gmwsyv3a2bj2bg"))))
(build-system cargo-build-system)
(arguments
- `(#:skip-build? #t
- #:cargo-inputs
+ `(#:cargo-inputs
(("rust-proc-macro2" ,rust-proc-macro2-1)
("rust-syn" ,rust-syn-1)
- ("rust-quote" ,rust-quote-1))))
+ ("rust-quote" ,rust-quote-1))
+ #:cargo-development-inputs
+ (("rust-num" ,rust-num-0.3)
+ ("rust-num-traits" ,rust-num-traits-0.2))))
(home-page "https://github.com/rust-num/num-derive")
(synopsis "Numeric syntax extensions")
(description "This package provides numeric syntax extensions.")
@@ -15362,16 +16488,16 @@ including bigint, complex, rational, range iterators, generic integers, and more
(define-public rust-num-integer-0.1
(package
(name "rust-num-integer")
- (version "0.1.42")
+ (version "0.1.43")
(source
(origin
(method url-fetch)
(uri (crate-uri "num-integer" version))
(file-name
- (string-append name "-" version ".crate"))
+ (string-append name "-" version ".tar.gz"))
(sha256
(base32
- "1fpw8yr9xwsf3qrh91rm7mzqaiwlc2dmnalsxv9pr9w1klpacviz"))))
+ "0nw79ynfvw8br6yncv27pw65y2vw2z7m3kv9g2hinm1dcrz4ancd"))))
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs
@@ -15387,15 +16513,15 @@ including bigint, complex, rational, range iterators, generic integers, and more
(define-public rust-num-iter-0.1
(package
(name "rust-num-iter")
- (version "0.1.40")
+ (version "0.1.41")
(source
(origin
(method url-fetch)
(uri (crate-uri "num-iter" version))
- (file-name (string-append name "-" version ".crate"))
+ (file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
- "005wif3bk23b5jdg7l0cprzqzyc4jg0xjyzyykciv2ci08581c6z"))))
+ "17sb142lhmpsq17cf9wrffjh8vjk901axxf55565r6cgfiy6nvks"))))
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs
@@ -15483,7 +16609,7 @@ including bigint, complex, rational, range iterators, generic integers, and more
(define-public rust-num-traits-0.2
(package
(name "rust-num-traits")
- (version "0.2.11")
+ (version "0.2.12")
(source
(origin
(method url-fetch)
@@ -15492,7 +16618,7 @@ including bigint, complex, rational, range iterators, generic integers, and more
(string-append name "-" version ".crate"))
(sha256
(base32
- "15khrlm1bra50nd48ijl1vln13m9xg4fxzghf28jp16ic5zf8ay6"))))
+ "04fnzwlnn6fcy09jjbi9l7bj5dvg657x5c2sjgwfb3pl0z67n9mc"))))
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs
@@ -15729,8 +16855,8 @@ Foundation framework.")
("rust-scroll" ,rust-scroll-0.10)
("rust-parity-wasm" ,rust-parity-wasm-0.41)
("rust-uuid" ,rust-uuid-0.8)
- ("rust-flate2" ,rust-flate2-1.0)
- ("rust-crc32fast" ,rust-crc32fast-1.2)
+ ("rust-flate2" ,rust-flate2-1)
+ ("rust-crc32fast" ,rust-crc32fast-1)
("rust-indexmap" ,rust-indexmap-1))))
(home-page "https://github.com/gimli-rs/object")
(synopsis "Unified interface for reading and writing object file formats")
@@ -15755,7 +16881,7 @@ writing object file formats.")
(arguments
`(#:skip-build? #t
#:cargo-inputs
- (("rust-flate2" ,rust-flate2-1.0)
+ (("rust-flate2" ,rust-flate2-1)
("rust-goblin" ,rust-goblin-0.0)
("rust-parity-wasm" ,rust-parity-wasm-0.40)
("rust-scroll" ,rust-scroll-0.9)
@@ -15888,10 +17014,10 @@ You probably don't want to link to this crate directly; instead check out the
@code{onig} crate.")
(license license:expat)))
-(define-public rust-once-cell-1.2
+(define-public rust-once-cell-1
(package
(name "rust-once-cell")
- (version "1.2.0")
+ (version "1.4.1")
(source
(origin
(method url-fetch)
@@ -15900,14 +17026,13 @@ You probably don't want to link to this crate directly; instead check out the
(string-append name "-" version ".tar.gz"))
(sha256
(base32
- "1vdz8xlg3r05w3wfjimnc347hgm54i5nrqf72r4mlp0fcdplh7w9"))))
+ "1ba56vr8n85xgajnn78pg6iag4inwil3mqg90wi5jaz6xzkm23i6"))))
(build-system cargo-build-system)
(arguments
- `(#:skip-build? #t
- #:cargo-inputs
- (("rust-parking-lot" ,rust-parking-lot-0.9))
+ `(#:cargo-inputs
+ (("rust-parking-lot" ,rust-parking-lot-0.11))
#:cargo-development-inputs
- (("rust-crossbeam-utils" ,rust-crossbeam-utils-0.6)
+ (("rust-crossbeam-utils" ,rust-crossbeam-utils-0.7)
("rust-lazy-static" ,rust-lazy-static-1)
("rust-regex" ,rust-regex-1))))
(home-page "https://github.com/matklad/once_cell")
@@ -15918,7 +17043,7 @@ You probably don't want to link to this crate directly; instead check out the
(define-public rust-once-cell-0.1
(package
- (inherit rust-once-cell-1.2)
+ (inherit rust-once-cell-1)
(name "rust-once-cell")
(version "0.1.8")
(source
@@ -16322,32 +17447,10 @@ under its new name.")
"Utility to activate escape codes in Windows' CMD and PowerShell.")
(license license:expat)))
-(define-public rust-osmesa-sys-0.1
- (package
- (name "rust-osmesa-sys")
- (version "0.1.2")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "osmesa-sys" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "0fq1q1zcgfb0qydrg9r2738jlwc4hqxgb9vj11z72bjxx7kfrkw8"))))
- (build-system cargo-build-system)
- (arguments
- `(#:cargo-inputs
- (("rust-shared-library" ,rust-shared-library-0.1))))
- (home-page "https://crates.io/crates/osmesa-sys")
- (synopsis "OSMesa library bindings for Rust")
- (description "This package provides OSMesa library bindings for Rust.")
- (license license:cc0)))
-
(define-public rust-owning-ref-0.4
(package
(name "rust-owning-ref")
- (version "0.4.0")
+ (version "0.4.1")
(source
(origin
(method url-fetch)
@@ -16355,11 +17458,11 @@ under its new name.")
(file-name (string-append name "-" version ".crate"))
(sha256
(base32
- "04zgwy77lin8qz398s6g44467pd6kjhbrlqifkia5rkr47mbi929"))))
+ "1kjj9m28wjv452jw49p1mp3d8ql058x78v4bz00avr7rvsnmpxbg"))))
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs
- (("rust-stable-deref-trait" ,rust-stable-deref-trait-1.1))))
+ (("rust-stable-deref-trait" ,rust-stable-deref-trait-1))))
(home-page "https://github.com/Kimundi/owning-ref-rs")
(synopsis "Create references that carry their owner with them")
(description
@@ -16476,196 +17579,6 @@ normally prevent moving a type that has been borrowed from.")
"Automatically implement traits from the palette crate.")
(license (list license:expat license:asl2.0))))
-(define-public rust-pango-0.8
- (package
- (name "rust-pango")
- (version "0.8.0")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "pango" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "0xq50950il3228grzs4xvc5s6phxcl5l50grz6syvs0vixr6p70y"))))
- (build-system cargo-build-system)
- (arguments
- `(#:cargo-inputs
- (("rust-bitflags" ,rust-bitflags-1)
- ("rust-glib" ,rust-glib-0.9)
- ("rust-glib-sys" ,rust-glib-sys-0.9)
- ("rust-gobject-sys" ,rust-gobject-sys-0.9)
- ("rust-lazy-static" ,rust-lazy-static-1)
- ("rust-libc" ,rust-libc-0.2)
- ("rust-pango-sys" ,rust-pango-sys-0.9)
- ("rust-gtk-rs-lgpl-docs" ,rust-gtk-rs-lgpl-docs-0.1))
- #:cargo-development-inputs
- (("rust-gir-format-check" ,rust-gir-format-check-0.1))))
- (inputs
- `(("pango" ,pango)))
- (home-page "https://gtk-rs.org/")
- (synopsis "Rust bindings for the Pango library")
- (description
- "Rust bindings for the Pango library.")
- (license license:expat)))
-
-(define-public rust-pango-0.7
- (package
- (inherit rust-pango-0.8)
- (name "rust-pango")
- (version "0.7.0")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "pango" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "11np7nxb69g3kid2l78b7k519x1wk1c3f9yy7swgzy24n5qs0grr"))))
- (arguments
- `(#:cargo-inputs
- (("rust-bitflags" ,rust-bitflags-1)
- ("rust-glib" ,rust-glib-0.8)
- ("rust-glib-sys" ,rust-glib-sys-0.9)
- ("rust-gobject-sys" ,rust-gobject-sys-0.9)
- ("rust-lazy-static" ,rust-lazy-static-1)
- ("rust-libc" ,rust-libc-0.2)
- ("rust-pango-sys" ,rust-pango-sys-0.9)
- ("rust-gtk-rs-lgpl-docs" ,rust-gtk-rs-lgpl-docs-0.1))
- #:cargo-development-inputs
- (("rust-gir-format-check" ,rust-gir-format-check-0.1))))))
-
-(define-public rust-pango-sys-0.9
- (package
- (name "rust-pango-sys")
- (version "0.9.1")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "pango-sys" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "0zdynikh6jrfa31fpmbrwnz46a57idci73zzkf0z0g3vj223vfc6"))))
- (build-system cargo-build-system)
- (arguments
- `(#:tests? #f ; Some test files not included in release.
- #:cargo-inputs
- (("rust-glib-sys" ,rust-glib-sys-0.9)
- ("rust-gobject-sys" ,rust-gobject-sys-0.9)
- ("rust-libc" ,rust-libc-0.2)
- ("rust-pkg-config" ,rust-pkg-config-0.3))
- #:cargo-development-inputs
- (("rust-shell-words" ,rust-shell-words-0.1)
- ("rust-tempfile" ,rust-tempfile-3))))
- (inputs
- `(("pango" ,pango)))
- (home-page "https://gtk-rs.org/")
- (synopsis "FFI bindings to libpango-1.0")
- (description "This package provides FFI bindings to @code{libpango-1.0}.")
- (license license:expat)))
-
-(define-public rust-pangocairo-0.9
- (package
- (name "rust-pangocairo")
- (version "0.9.0")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "pangocairo" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "0bap3h78hdqdyln58349qjjbcv45m8a0a16c4n9fprdj1my0gldx"))))
- (build-system cargo-build-system)
- (arguments
- `(#:cargo-inputs
- (("rust-bitflags" ,rust-bitflags-1)
- ("rust-cairo-rs" ,rust-cairo-rs-0.8)
- ("rust-cairo-sys-rs" ,rust-cairo-sys-rs-0.9)
- ("rust-glib" ,rust-glib-0.9)
- ("rust-glib-sys" ,rust-glib-sys-0.9)
- ("rust-gobject-sys" ,rust-gobject-sys-0.9)
- ("rust-libc" ,rust-libc-0.2)
- ("rust-pango" ,rust-pango-0.8)
- ("rust-pango-sys" ,rust-pango-sys-0.9)
- ("rust-pangocairo-sys" ,rust-pangocairo-sys-0.10)
- ("rust-gtk-rs-lgpl-docs" ,rust-gtk-rs-lgpl-docs-0.1))
- #:cargo-development-inputs
- (("rust-gir-format-check" ,rust-gir-format-check-0.1))))
- (inputs
- `(("gtk+" ,gtk+)))
- (home-page "http://gtk-rs.org/")
- (synopsis "Rust bindings for the PangoCairo library")
- (description
- "Rust bindings for the PangoCairo library.")
- (license license:expat)))
-
-(define-public rust-pangocairo-0.8
- (package
- (inherit rust-pangocairo-0.9)
- (name "rust-pangocairo")
- (version "0.8.0")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "pangocairo" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "0qjiwsp73x3w0493dzycyjzxnzwq7ixwmf1ccr5r41pjhxbnk1kl"))))
- (arguments
- `(#:cargo-inputs
- (("rust-bitflags" ,rust-bitflags-1)
- ("rust-cairo-rs" ,rust-cairo-rs-0.7)
- ("rust-cairo-sys-rs" ,rust-cairo-sys-rs-0.9)
- ("rust-glib" ,rust-glib-0.8)
- ("rust-glib-sys" ,rust-glib-sys-0.9)
- ("rust-gobject-sys" ,rust-gobject-sys-0.9)
- ("rust-libc" ,rust-libc-0.2)
- ("rust-pango" ,rust-pango-0.7)
- ("rust-pango-sys" ,rust-pango-sys-0.9)
- ("rust-pangocairo-sys" ,rust-pangocairo-sys-0.10)
- ("rust-gtk-rs-lgpl-docs" ,rust-gtk-rs-lgpl-docs-0.1))
- #:cargo-development-inputs
- (("rust-gir-format-check" ,rust-gir-format-check-0.1))))))
-
-(define-public rust-pangocairo-sys-0.10
- (package
- (name "rust-pangocairo-sys")
- (version "0.10.1")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "pangocairo-sys" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "1zlyf5vajarnxg5034b8qa5w5zajv96lfvlgiki26svpmcqip4m3"))))
- (build-system cargo-build-system)
- (arguments
- `(#:cargo-inputs
- (("rust-cairo-sys-rs" ,rust-cairo-sys-rs-0.9)
- ("rust-glib-sys" ,rust-glib-sys-0.9)
- ("rust-libc" ,rust-libc-0.2)
- ("rust-pango-sys" ,rust-pango-sys-0.9)
- ("rust-pkg-config" ,rust-pkg-config-0.3))
- #:cargo-development-inputs
- (("rust-shell-words" ,rust-shell-words-0.1)
- ("rust-tempfile" ,rust-tempfile-3))))
- (inputs
- `(("gtk+" ,gtk+)))
- (home-page "https://gtk-rs.org/")
- (synopsis "FFI bindings to libgtk-3")
- (description "This package provides FFI bindings to libgtk-3.")
- (license license:expat)))
-
(define-public rust-parity-tokio-ipc-0.4
(package
(name "rust-parity-tokio-ipc")
@@ -16743,6 +17656,33 @@ deserialization, and interpreter in Rust.")
(license (list license:asl2.0
license:expat))))
+(define-public rust-parking-lot-0.11
+ (package
+ (name "rust-parking-lot")
+ (version "0.11.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "parking_lot" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0cw73942xhxb7a49mp9gkjnlwc8acr30wpfs8zk758icz92ki2d4"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-instant" ,rust-instant-0.1)
+ ("rust-lock-api" ,rust-lock-api-0.4)
+ ("rust-parking-lot-core" ,rust-parking-lot-core-0.8))
+ #:cargo-development-inputs
+ (("rust-bincode" ,rust-bincode-1)
+ ("rust-rand" ,rust-rand-0.7))))
+ (home-page "https://github.com/Amanieu/parking_lot")
+ (synopsis "More compact and efficient implementations of the standard synchronization primitives")
+ (description "This package provides more compact and efficient
+implementations of the standard synchronization primitives.")
+ (license (list license:asl2.0 license:expat))))
+
(define-public rust-parking-lot-0.10
(package
(name "rust-parking-lot")
@@ -16751,8 +17691,7 @@ deserialization, and interpreter in Rust.")
(origin
(method url-fetch)
(uri (crate-uri "parking_lot" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
+ (file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"0pjhcbyk6n0g6jsr6s9nf4x8wribm1b2yf8fgc8drbqa77mh99yk"))))
@@ -16847,8 +17786,40 @@ synchronization primitives.")
("rust-rand" ,rust-rand-0.4)
("rust-rustc-version" ,rust-rustc-version-0.2))))))
+(define-public rust-parking-lot-core-0.8
+ (package
+ (name "rust-parking-lot-core")
+ (version "0.8.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "parking_lot_core" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "16yazfg3sq9mz6cfdkhgbv8yvc1kkasyhys4y7r3g16hgmralqf3"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-backtrace" ,rust-backtrace-0.3)
+ ("rust-cfg-if" ,rust-cfg-if-0.1)
+ ("rust-cloudabi" ,rust-cloudabi-0.1)
+ ("rust-instant" ,rust-instant-0.1)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-petgraph" ,rust-petgraph-0.5)
+ ("rust-redox-syscall" ,rust-redox-syscall-0.1)
+ ("rust-smallvec" ,rust-smallvec-1)
+ ("rust-thread-id" ,rust-thread-id-3)
+ ("rust-winapi" ,rust-winapi-0.3))))
+ (home-page "https://github.com/Amanieu/parking_lot")
+ (synopsis "API for creating custom synchronization primitives")
+ (description "This package provides an advanced API for creating custom
+synchronization primitives.")
+ (license (list license:asl2.0 license:expat))))
+
(define-public rust-parking-lot-core-0.7
(package
+ (inherit rust-parking-lot-core-0.8)
(name "rust-parking-lot-core")
(version "0.7.2")
(source
@@ -16860,7 +17831,6 @@ synchronization primitives.")
(sha256
(base32
"18s0cw5y32447c06fhg2mp3xfng22fn1h9fpx3il98sbimv7r36m"))))
- (build-system cargo-build-system)
(arguments
`(#:cargo-inputs
(("rust-backtrace" ,rust-backtrace-0.3)
@@ -16870,13 +17840,8 @@ synchronization primitives.")
("rust-petgraph" ,rust-petgraph-0.5)
("rust-redox-syscall" ,rust-redox-syscall-0.1)
("rust-smallvec" ,rust-smallvec-1)
- ("rust-thread-id" ,rust-thread-id-3.3)
- ("rust-winapi" ,rust-winapi-0.3))))
- (home-page "https://github.com/Amanieu/parking_lot")
- (synopsis "API for creating custom synchronization primitives")
- (description
- "An advanced API for creating custom synchronization primitives in Rust.")
- (license (list license:asl2.0 license:expat))))
+ ("rust-thread-id" ,rust-thread-id-3)
+ ("rust-winapi" ,rust-winapi-0.3))))))
(define-public rust-parking-lot-core-0.6
(package
@@ -16903,7 +17868,7 @@ synchronization primitives.")
("rust-rand" ,rust-rand-0.4)
("rust-redox-syscall" ,rust-redox-syscall-0.1)
("rust-smallvec" ,rust-smallvec-0.6)
- ("rust-thread-id" ,rust-thread-id-3.3)
+ ("rust-thread-id" ,rust-thread-id-3)
("rust-winapi" ,rust-winapi-0.3))
#:cargo-development-inputs
(("rust-rustc-version" ,rust-rustc-version-0.2))))))
@@ -16921,7 +17886,20 @@ synchronization primitives.")
(string-append name "-" version ".tar.gz"))
(sha256
(base32
- "1317j5a1yd03baza2kqqrxb4kr1vxa7rckw4frksl2vrncfcp26b"))))))
+ "1317j5a1yd03baza2kqqrxb4kr1vxa7rckw4frksl2vrncfcp26b"))))
+ (arguments
+ `(#:cargo-inputs
+ (("rust-backtrace" ,rust-backtrace-0.3)
+ ("rust-cfg-if" ,rust-cfg-if-0.1)
+ ("rust-cloudabi" ,rust-cloudabi-0.0)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-petgraph" ,rust-petgraph-0.4)
+ ("rust-rand" ,rust-rand-0.6)
+ ("rust-redox-syscall" ,rust-redox-syscall-0.1)
+ ("rust-smallvec" ,rust-smallvec-0.6)
+ ("rust-thread-id" ,rust-thread-id-3)
+ ("rust-winapi" ,rust-winapi-0.3)
+ ("rust-rustc-version" ,rust-rustc-version-0.2))))))
(define-public rust-parking-lot-core-0.4
(package
@@ -16936,10 +17914,49 @@ synchronization primitives.")
(string-append name "-" version ".tar.gz"))
(sha256
(base32
- "1jcq8aq4wv9y5fip7jg12jdwjd5g5r3x857xdma8vcin769cgj4l"))))))
+ "1jcq8aq4wv9y5fip7jg12jdwjd5g5r3x857xdma8vcin769cgj4l"))))
+ (arguments
+ `(#:cargo-inputs
+ (("rust-backtrace" ,rust-backtrace-0.3)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-petgraph" ,rust-petgraph-0.4)
+ ("rust-rand" ,rust-rand-0.6)
+ ("rust-smallvec" ,rust-smallvec-0.6)
+ ("rust-thread-id" ,rust-thread-id-3)
+ ("rust-winapi" ,rust-winapi-0.3)
+ ("rust-rustc-version" ,rust-rustc-version-0.2))))))
+
+(define-public rust-partial-io-0.3
+ (package
+ (name "rust-partial-io")
+ (version "0.3.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "partial-io" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0b9a2bvqmaj2r4rkbshjsg8zzvp23b67qfvj2y6jwjckrn6zhb38"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-futures" ,rust-futures-0.1)
+ ("rust-quickcheck" ,rust-quickcheck-0.6)
+ ("rust-tokio-io" ,rust-tokio-io-0.1))
+ #:cargo-development-inputs
+ (("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-quickcheck" ,rust-quickcheck-0.6)
+ ("rust-tokio-core" ,rust-tokio-core-0.1))))
+ (home-page "https://github.com/facebookincubator/rust-partial-io")
+ (synopsis "Helpers to test partial, interrupted and would-block I/O operations")
+ (description "This package provides helpers to test partial, interrupted
+and would-block I/O operations.")
+ (license license:expat)))
(define-public rust-partial-io-0.2
(package
+ (inherit rust-partial-io-0.3)
(name "rust-partial-io")
(version "0.2.5")
(source
@@ -16951,7 +17968,6 @@ synchronization primitives.")
(sha256
(base32
"03iynvayh11a4mckhwflm5y1qmnkw5m3b20gzi1crpasndy3h8xx"))))
- (build-system cargo-build-system)
(arguments
`(#:cargo-inputs
(("rust-futures" ,rust-futures-0.1)
@@ -16961,11 +17977,6 @@ synchronization primitives.")
(("rust-lazy-static" ,rust-lazy-static-0.2)
("rust-quickcheck" ,rust-quickcheck-0.4)
("rust-tokio-core" ,rust-tokio-core-0.1))))
- (home-page "https://github.com/facebookincubator/rust-partial-io")
- (synopsis
- "Helpers to test partial, interrupted and would-block I/O operations")
- (description
- "Helpers to test partial, interrupted and would-block I/O operations.")
(license license:bsd-3)))
(define-public rust-paste-0.1
@@ -16987,8 +17998,8 @@ synchronization primitives.")
(("rust-paste-impl" ,rust-paste-impl-0.1)
("rust-proc-macro-hack" ,rust-proc-macro-hack-0.5))
#:cargo-development-inputs
- (("rust-rustversion" ,rust-rustversion-1.0)
- ("rust-trybuild" ,rust-trybuild-1.0))))
+ (("rust-rustversion" ,rust-rustversion-1)
+ ("rust-trybuild" ,rust-trybuild-1))))
(home-page "https://github.com/dtolnay/paste")
(synopsis "Macros for all your token pasting needs")
(description
@@ -17021,6 +18032,25 @@ synchronization primitives.")
"Implementation detail of the paste crate.")
(license (list license:asl2.0 license:expat))))
+(define-public rust-path-clean-0.1
+ (package
+ (name "rust-path-clean")
+ (version "0.1.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "path-clean" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1pcgqxw0mgg3ha5hi5xkjhyjf488bw5rw1g3qlr9awbq4szh3fpc"))))
+ (build-system cargo-build-system)
+ (home-page "https://github.com/danreeves/path-clean")
+ (synopsis "Rust implementation of cleanname or path.Clean")
+ (description "This package provides a Rust implementation of cleanname or
+path.Clean.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-pbkdf2-0.4
(package
(name "rust-pbkdf2")
@@ -17073,7 +18103,7 @@ in pure Rust.")
(arguments
`(#:cargo-inputs
(("rust-base64" ,rust-base64-0.9)
- ("rust-byteorder" ,rust-byteorder-1.3)
+ ("rust-byteorder" ,rust-byteorder-1)
("rust-crypto-mac" ,rust-crypto-mac-0.7)
("rust-hmac" ,rust-hmac-0.7)
("rust-rand" ,rust-rand-0.5)
@@ -17188,7 +18218,7 @@ the @code{take_while} predicate returned false after dropping the @code{by_ref}.
(("rust-peg-macros" ,rust-peg-macros-0.6)
("rust-peg-runtime" ,rust-peg-runtime-0.6))
#:cargo-development-inputs
- (("rust-trybuild" ,rust-trybuild-1.0))))
+ (("rust-trybuild" ,rust-trybuild-1))))
(home-page "https://github.com/kevinmehall/rust-peg")
(synopsis "Simple Parsing Expression Grammar (PEG) parser generator")
(description
@@ -17261,7 +18291,7 @@ procedural macros for rust-peg. To use rust-peg, see the peg package.")
runtime support for rust-peg grammars. To use rust-peg, see the peg crate.")
(license license:expat)))
-(define-public rust-percent-encoding-2.1
+(define-public rust-percent-encoding-2
(package
(name "rust-percent-encoding")
(version "2.1.0")
@@ -17282,7 +18312,7 @@ runtime support for rust-peg grammars. To use rust-peg, see the peg crate.")
(define-public rust-percent-encoding-1.0
(package
- (inherit rust-percent-encoding-2.1)
+ (inherit rust-percent-encoding-2)
(name "rust-percent-encoding")
(version "1.0.1")
(source
@@ -17317,7 +18347,7 @@ algorithm.")
(license (list license:asl2.0
license:expat))))
-(define-public rust-pest-2.1
+(define-public rust-pest-2
(package
(name "rust-pest")
(version "2.1.1")
@@ -17342,7 +18372,7 @@ algorithm.")
(description "The Elegant Parser.")
(license (list license:asl2.0 license:expat))))
-(define-public rust-pest-derive-2.1
+(define-public rust-pest-derive-2
(package
(name "rust-pest-derive")
(version "2.1.0")
@@ -17359,7 +18389,7 @@ algorithm.")
(arguments
`(#:skip-build? #t
#:cargo-inputs
- (("rust-pest" ,rust-pest-2.1)
+ (("rust-pest" ,rust-pest-2)
("rust-pest-generator" ,rust-pest-generator-2.1))))
(home-page "https://pest.rs/")
(synopsis "Pest's derive macro")
@@ -17383,7 +18413,7 @@ algorithm.")
(arguments
`(#:skip-build? #t
#:cargo-inputs
- (("rust-pest" ,rust-pest-2.1)
+ (("rust-pest" ,rust-pest-2)
("rust-pest-meta" ,rust-pest-meta-2.1)
("rust-proc-macro2" ,rust-proc-macro2-1)
("rust-quote" ,rust-quote-1)
@@ -17411,7 +18441,7 @@ algorithm.")
`(#:skip-build? #t
#:cargo-inputs
(("rust-maplit" ,rust-maplit-1.0)
- ("rust-pest" ,rust-pest-2.1)
+ ("rust-pest" ,rust-pest-2)
("rust-sha-1" ,rust-sha-1-0.8))))
(home-page "https://pest.rs")
(synopsis "Pest meta language parser and validator")
@@ -17756,11 +18786,14 @@ function data structures.")
(base32
"1q5pg0ms6szz6b5h26h4k40zb76zbwwjgyigac4wly9qngdj4yl5"))))
(build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-libc" ,rust-libc-0.2)
+ ("rust-gcc" ,rust-gcc-0.3))))
(home-page "https://github.com/reem/rust-pico-sys")
(synopsis "Bindings to the PicoHTTPParser")
(description
"This package provides bindings to the PicoHTTPParser.")
- (properties '((hidden? . #t)))
(license license:expat)))
(define-public rust-pin-utils-0.1
@@ -17782,368 +18815,6 @@ function data structures.")
(license (list license:asl2.0
license:expat))))
-(define-public rust-piston-0.49
- (package
- (name "rust-piston")
- (version "0.49.0")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "piston" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "1y0rbw92mzagqmwk79wv9axq0m7aid0s0d5cppyzh33wrxhdl3xj"))))
- (build-system cargo-build-system)
- (arguments
- `(#:skip-build? #t
- #:cargo-inputs
- (("rust-pistoncore-input" ,rust-pistoncore-input-0.28)
- ("rust-pistoncore-window" ,rust-pistoncore-window-0.44)
- ("rust-pistoncore-event-loop" ,rust-pistoncore-event-loop-0.49))))
- (home-page "https://github.com/PistonDevelopers/piston")
- (synopsis "Piston game engine core libraries")
- (description
- "The Piston game engine core libraries.")
- (license license:expat)))
-
-(define-public rust-piston-float-1.0
- (package
- (name "rust-piston-float")
- (version "1.0.0")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "piston-float" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "0r35aasycms79hf2vf1ap40kkp8ywgl4hmfkf762dq8jwd3vw07r"))))
- (build-system cargo-build-system)
- (arguments `(#:skip-build? #t))
- (home-page
- "https://github.com/pistondevelopers/float")
- (synopsis
- "Traits for generic floats in game development")
- (description
- "Traits for generic floats in game development")
- (license license:expat)))
-
-(define-public rust-piston-gfx-texture-0.40
- (package
- (name "rust-piston-gfx-texture")
- (version "0.40.0")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "piston-gfx_texture" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "1nr5awdgk3njfvfanszrv4gxz93f6skid1c8yijswccygripchqz"))))
- (build-system cargo-build-system)
- (arguments
- `(#:skip-build? #t
- #:cargo-inputs
- (("rust-gfx" ,rust-gfx-0.18)
- ("rust-image" ,rust-image-0.22)
- ("rust-piston-texture" ,rust-piston-texture-0.8)
- ("rust-gfx-core" ,rust-gfx-core-0.9))))
- (home-page "https://github.com/pistondevelopers/gfx_texture")
- (synopsis
- "Gfx texture representation that works nicely with Piston libraries")
- (description "This package provides a Gfx texture representation that works
-nicely with Piston libraries.")
- (license license:expat)))
-
-(define-public rust-piston-graphics-api-version-0.2
- (package
- (name "rust-piston-graphics-api-version")
- (version "0.2.0")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "piston-graphics_api_version" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "1b5p6s45jqv057lpbxkiq3yrdjjhvcynmi2vjf8292rf0yh4hky5"))))
- (build-system cargo-build-system)
- (arguments `(#:skip-build? #t))
- (home-page
- "https://github.com/PistonDevelopers/graphics_api_version")
- (synopsis
- "A library for storing graphics API versions")
- (description
- "This package provides a library for storing graphics API versions")
- (license license:expat)))
-
-(define-public rust-piston-shaders-graphics2d-0.3
- (package
- (name "rust-piston-shaders-graphics2d")
- (version "0.3.1")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "piston-shaders_graphics2d" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "1dhh9bv4q19gdnj9d1nqq0yrvzs6gcn0c5j1p1f3xzyzq7d1gg4p"))))
- (build-system cargo-build-system)
- (arguments `(#:skip-build? #t))
- (home-page
- "https://github.com/PistonDevelopers/shaders")
- (synopsis "Shaders for 2D graphics in Rust")
- (description "Shaders for 2D graphics in Rust")
- (license license:expat)))
-
-(define-public rust-piston-texture-0.8
- (package
- (name "rust-piston-texture")
- (version "0.8.0")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "piston-texture" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "1pcv5my49b8xzqcb87wqh2ndgvr4s9ipys96s0h9j2plxrj3bjb2"))))
- (build-system cargo-build-system)
- (arguments `(#:skip-build? #t))
- (home-page
- "https://github.com/pistondevelopers/texture")
- (synopsis "A generic library for textures")
- (description
- "This package provides a generic library for textures")
- (license license:expat)))
-
-(define-public rust-piston-viewport-1.0
- (package
- (name "rust-piston-viewport")
- (version "1.0.0")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "piston-viewport" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "16378hcy41b7x3zj2z4har0wq6fl4r62kf9p106jjl8hg2dv3aq1"))))
- (build-system cargo-build-system)
- (arguments
- `(#:skip-build? #t
- #:cargo-inputs
- (("rust-piston-float" ,rust-piston-float-1.0))))
- (home-page "https://github.com/PistonDevelopers/viewport")
- (synopsis "Library for storing viewport information")
- (description
- "This package provides a library for storing viewport information.")
- (license license:expat)))
-
-(define-public rust-piston-window-0.105
- (package
- (name "rust-piston-window")
- (version "0.105.0")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "piston_window" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "05n2905gkp5ck25kbq95ia6pj1xz63dpp247jz3xcw1d41xpvi95"))))
- (build-system cargo-build-system)
- (arguments
- `(#:skip-build? #t
- #:cargo-inputs
- (("rust-gfx-device-gl" ,rust-gfx-device-gl-0.16)
- ("rust-gfx" ,rust-gfx-0.18)
- ("rust-piston2d-graphics" ,rust-piston2d-graphics-0.35)
- ("rust-piston" ,rust-piston-0.49)
- ("rust-shader-version" ,rust-shader-version-0.6)
- ("rust-pistoncore-glutin-window" ,rust-pistoncore-glutin-window-0.63)
- ("rust-piston2d-gfx-graphics" ,rust-piston2d-gfx-graphics-0.66)
- ("rust-piston-texture" ,rust-piston-texture-0.8))))
- (home-page "https://github.com/pistondevelopers/piston_window")
- (synopsis "Official Piston window wrapper for the Piston game engine")
- (description
- "The official Piston window wrapper for the Piston game engine.")
- (license license:expat)))
-
-(define-public rust-piston2d-gfx-graphics-0.66
- (package
- (name "rust-piston2d-gfx-graphics")
- (version "0.66.0")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "piston2d-gfx_graphics" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "1pmlkf5rl6pr0c1lqm0059xwj9pwlws7gaq9w6r9d916di6fzki1"))))
- (build-system cargo-build-system)
- (arguments
- `(#:skip-build? #t
- #:cargo-inputs
- (("rust-gfx" ,rust-gfx-0.18)
- ("rust-piston-shaders-graphics2d" ,rust-piston-shaders-graphics2d-0.3)
- ("rust-piston-gfx-texture" ,rust-piston-gfx-texture-0.40)
- ("rust-shader-version" ,rust-shader-version-0.6)
- ("rust-draw-state" ,rust-draw-state-0.8))))
- (home-page "https://github.com/PistonDevelopers/gfx_graphics")
- (synopsis "Gfx 2D back-end for the Piston game engine")
- (description
- "This package provides a Gfx 2D back-end for the Piston game engine.")
- (license license:expat)))
-
-(define-public rust-piston2d-graphics-0.35
- (package
- (name "rust-piston2d-graphics")
- (version "0.35.0")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "piston2d-graphics" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "1dx2fanxc2pj76hc5l72x0fh4qg9gchjlr8rmbhdk6jpggcmq56g"))))
- (build-system cargo-build-system)
- (arguments
- `(#:skip-build? #t
- #:cargo-inputs
- (("rust-interpolation" ,rust-interpolation-0.2)
- ("rust-rusttype" ,rust-rusttype-0.7)
- ("rust-piston-texture" ,rust-piston-texture-0.8)
- ("rust-piston-viewport" ,rust-piston-viewport-1.0)
- ("rust-read-color" ,rust-read-color-1.0)
- ("rust-vecmath" ,rust-vecmath-1.0)
- ("rust-fnv" ,rust-fnv-1))))
- (home-page "https://github.com/pistondevelopers/graphics")
- (synopsis "Library for 2D graphics that works with multiple back-ends")
- (description "This package provides a library for 2D graphics that works
-with multiple back-ends.")
- (license license:expat)))
-
-(define-public rust-pistoncore-event-loop-0.49
- (package
- (name "rust-pistoncore-event-loop")
- (version "0.49.0")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "pistoncore-event_loop" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "1h9ij9vx42xg39198yxdlpk842pli5jqm2kwswiv3bqqcji0fwsm"))))
- (build-system cargo-build-system)
- (arguments
- `(#:skip-build? #t
- #:cargo-inputs
- (("rust-pistoncore-input" ,rust-pistoncore-input-0.28)
- ("rust-pistoncore-window" ,rust-pistoncore-window-0.44))))
- (home-page "https://github.com/PistonDevelopers/piston")
- (synopsis "Piston event loop for games and interactive applications")
- (description "This package provides a Piston event loop for games and
-interactive applications.")
- (license license:expat)))
-
-(define-public rust-pistoncore-glutin-window-0.63
- (package
- (name "rust-pistoncore-glutin-window")
- (version "0.63.0")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "pistoncore-glutin_window" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "0dhbyxarv5i742d400bmqdqq3f8c25kcgcg0xavrc18dc913rixc"))))
- (build-system cargo-build-system)
- (arguments
- `(#:skip-build? #t
- #:cargo-inputs
- (("rust-gl" ,rust-gl-0.11)
- ("rust-glutin" ,rust-glutin-0.21)
- ("rust-pistoncore-input" ,rust-pistoncore-input-0.28)
- ("rust-pistoncore-window" ,rust-pistoncore-window-0.44)
- ("rust-shader-version" ,rust-shader-version-0.6))))
- (home-page "https://github.com/pistondevelopers/glutin_window")
- (synopsis "Piston window back-end using the Glutin library")
- (description
- "This package provides a Piston window back-end using the Glutin library.")
- (license license:expat)))
-
-(define-public rust-pistoncore-input-0.28
- (package
- (name "rust-pistoncore-input")
- (version "0.28.0")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "pistoncore-input" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "1rrcz9px098m3nx98gvrvzirfdp3vg03cblfkcrp4wnvswc0hwq5"))))
- (build-system cargo-build-system)
- (arguments
- `(#:skip-build? #t
- #:cargo-inputs
- (("rust-piston-viewport" ,rust-piston-viewport-1.0)
- ("rust-serde" ,rust-serde-1)
- ("rust-serde-derive" ,rust-serde-derive-1)
- ("rust-bitflags" ,rust-bitflags-1))))
- (home-page "https://github.com/PistonDevelopers/piston")
- (synopsis "Structure for user input")
- (description
- "This package provides a structure for user input.")
- (license license:expat)))
-
-(define-public rust-pistoncore-window-0.44
- (package
- (name "rust-pistoncore-window")
- (version "0.44.0")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "pistoncore-window" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "18qy3nnpb9jczvkiyzzznamck0pzgiyi6073jrkldnci6b3in10q"))))
- (build-system cargo-build-system)
- (arguments
- `(#:skip-build? #t
- #:cargo-inputs
- (("rust-piston-graphics-api-version"
- ,rust-piston-graphics-api-version-0.2)
- ("rust-pistoncore-input" ,rust-pistoncore-input-0.28))))
- (home-page "https://github.com/PistonDevelopers/piston")
- (synopsis "Library for window abstraction")
- (description
- "This package provides a library for window abstraction.")
- (license license:expat)))
-
(define-public rust-pin-project-0.4
(package
(name "rust-pin-project")
@@ -18202,8 +18873,8 @@ interactive applications.")
(build-system cargo-build-system)
(arguments
`(#:cargo-development-inputs
- (("rust-rustversion" ,rust-rustversion-1.0)
- ("rust-trybuild" ,rust-trybuild-1.0))))
+ (("rust-rustversion" ,rust-rustversion-1)
+ ("rust-trybuild" ,rust-trybuild-1))))
(home-page "https://github.com/taiki-e/pin-project-lite")
(synopsis "Lightweight version of pin-project written with declarative
macros")
@@ -18279,7 +18950,7 @@ used in Cargo build scripts.")
("rust-xml-rs" ,rust-xml-rs-0.8)
("rust-serde" ,rust-serde-1)
("rust-humantime" ,rust-humantime-1)
- ("rust-byteorder" ,rust-byteorder-1.3))))
+ ("rust-byteorder" ,rust-byteorder-1))))
(home-page "https://github.com/ebarnard/rust-plist/")
(synopsis "Rusty plist parser")
(description
@@ -18347,6 +19018,29 @@ both WASM and native applications")
"Lazily evaluated, order-independent plugins for extensible types.")
(license license:expat)))
+(define-public rust-pmutil-0.5
+ (package
+ (name "rust-pmutil")
+ (version "0.5.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "pmutil" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0170zgziivri4qsch682pga3qq3z4wpr4wngzr5f9jyc97ayb51q"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-proc-macro2" ,rust-proc-macro2-1)
+ ("rust-quote" ,rust-quote-1)
+ ("rust-syn" ,rust-syn-1))))
+ (home-page "https://github.com/kdy1/rust-pmutil")
+ (synopsis "Utils for proc-macro")
+ (description "This package provides utils for proc-macro.")
+ (license (list license:asl2.0 license:expat))))
+
(define-public rust-pnacl-build-helper-1.4
(package
(name "rust-pnacl-build-helper")
@@ -18372,127 +19066,6 @@ both WASM and native applications")
"Build script helper for building PNaCl/NaCl C/CXX libraries from source")
(license license:mpl2.0)))
-(define-public rust-png-0.16
- (package
- (name "rust-png")
- (version "0.16.6")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "png" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "1393s3v3kg4bxnn86d7yn2vyz8xj6g64ighdfkc3vzpsg5sbyl61"))))
- (build-system cargo-build-system)
- (arguments
- `(#:skip-build? #t
- #:cargo-inputs
- (("rust-bitflags" ,rust-bitflags-1)
- ("rust-crc32fast" ,rust-crc32fast-1.2)
- ("rust-deflate" ,rust-deflate-0.8)
- ("rust-miniz-oxide" ,rust-miniz-oxide-0.3))
- #:cargo-development-inputs
- (("rust-criterion" ,rust-criterion-0.3)
- ("rust-getopts" ,rust-getopts-0.2)
- ;; TODO: glium has many cyclic dependencies with other packages
- ;; ("rust-glium" ,rust-glium-0.24)
- ("rust-glob" ,rust-glob-0.3)
- ("rust-rand" ,rust-rand-0.7)
- ("rust-term" ,rust-term-0.6))))
- (home-page "https://github.com/image-rs/image-png.git")
- (synopsis "PNG decoding and encoding library in pure Rust")
- (description
- "PNG decoding and encoding library in pure Rust.")
- (license (list license:expat license:asl2.0))))
-
-(define-public rust-png-0.15
- (package
- (inherit rust-png-0.16)
- (name "rust-png")
- (version "0.15.3")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "png" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "10x2qkhyfnm3si5vgx77r2ik811gaap7ahi825wfxgsb0lirm1gg"))))
- (arguments
- `(#:skip-build? #t
- #:cargo-inputs
- (("rust-bitflags" ,rust-bitflags-1)
- ("rust-crc32fast" ,rust-crc32fast-1.2)
- ("rust-deflate" ,rust-deflate-0.7)
- ("rust-inflate" ,rust-inflate-0.4))
- #:cargo-development-inputs
- (("rust-getopts" ,rust-getopts-0.2)
- ;; TODO: glium has many cyclic dependencies with other packages
- ;;("rust-glium" ,rust-glium-0.24)
- ("rust-glob" ,rust-glob-0.3)
- ("rust-rand" ,rust-rand-0.7)
- ("rust-term" ,rust-term-0.6))))))
-
-(define-public rust-png-0.14
- (package
- (inherit rust-png-0.15)
- (name "rust-png")
- (version "0.14.1")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "png" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "0nf3a8r9p9zrj4x30b48f7yv18dz9xkmrq9b3lnzmpnhzn0z9nk3"))))
- (arguments
- `(#:skip-build? #t
- #:cargo-inputs
- (("rust-bitflags" ,rust-bitflags-1)
- ("rust-deflate" ,rust-deflate-0.7)
- ("rust-inflate" ,rust-inflate-0.4)
- ("rust-num-iter" ,rust-num-iter-0.1))
- #:cargo-development-inputs
- (("rust-getopts" ,rust-getopts-0.2)
- ;; TODO: glium has many cyclic dependencies with other packages
- ;; ("rust-glium" ,rust-glium-0.22)
- ("rust-glob" ,rust-glob-0.2)
- ("rust-rand" ,rust-rand-0.5)
- ("rust-term" ,rust-term-0.4))))))
-
-(define-public rust-png-0.12
- (package
- (inherit rust-png-0.14)
- (name "rust-png")
- (version "0.12.0")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "png" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "0nqlc8lqf8ncv3kj0gzlxwli61dbbxcjlrp176kvilw4sl09cjzm"))))
- (arguments
- `(#:skip-build? #t
- #:cargo-inputs
- (("rust-bitflags" ,rust-bitflags-1)
- ("rust-deflate" ,rust-deflate-0.7)
- ("rust-inflate" ,rust-inflate-0.4)
- ("rust-num-iter" ,rust-num-iter-0.1))
- #:cargo-development-inputs
- (("rust-getopts" ,rust-getopts-0.2)
- ;; TODO: gluum has many cyclic dependencies with other packages
- ;; ("rust-glium" ,rust-glium-0.21)
- ("rust-glob" ,rust-glob-0.2)
- ("rust-term" ,rust-term-0.4))))))
-
(define-public rust-pocket-resources-0.3
(package
(name "rust-pocket-resources")
@@ -18532,6 +19105,55 @@ applications.")
"Additional trait for Read and Write to read and write Plain Old Data.")
(license (list license:expat license:asl2.0))))
+(define-public rust-polyval-0.4
+ (package
+ (name "rust-polyval")
+ (version "0.4.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "polyval" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1p0765j30qxr50zh74aflafx540xkxqb7pv8kw7fvcssnm1039fr"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-cfg-if" ,rust-cfg-if-0.1)
+ ("rust-universal-hash" ,rust-universal-hash-0.4)
+ ("rust-zeroize" ,rust-zeroize-1))
+ #:cargo-development-inputs
+ (("rust-criterion" ,rust-criterion-0.3)
+ ("rust-criterion-cycles-per-byte"
+ ,rust-criterion-cycles-per-byte-0.1)
+ ("rust-hex-literal" ,rust-hex-literal-0.1))))
+ (home-page "https://github.com/RustCrypto/universal-hashes")
+ (synopsis "GHASH-like universal hash")
+ (description "POLYVAL is a GHASH-like universal hash over GF(2^128) useful
+for constructing a Message Authentication Code (MAC).")
+ (license (list license:asl2.0 license:expat))))
+
+(define-public rust-pom-3
+ (package
+ (name "rust-pom")
+ (version "3.2.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "pom" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1v14c2p1irblagnljkw4n0f1w5r8mbybzycz0j1f5y79h0kikqh7"))))
+ (build-system cargo-build-system)
+ (home-page "https://github.com/J-F-Liu/pom")
+ (synopsis "PEG parser combinators using operator overloading without macros")
+ (description "This package provides a PEG parser combinators using operator
+overloading without macros in Rust.")
+ (license license:expat)))
+
(define-public rust-ppv-lite86-0.2
(package
(name "rust-ppv-lite86")
@@ -18552,6 +19174,31 @@ for x86.")
(license (list license:asl2.0
license:expat))))
+(define-public rust-pq-sys-0.4
+ (package
+ (name "rust-pq-sys")
+ (version "0.4.6")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "pq-sys" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1npz9756283pjq3lcpwss8xh1rw4sx8f6dz8cxdg90h5bbp5xhka"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-pkg-config" ,rust-pkg-config-0.3)
+ ("rust-vcpkg" ,rust-vcpkg-0.2))))
+ (native-inputs
+ `(("postgresql" ,postgresql)))
+ (home-page "https://crates.io/crates/pq-sys")
+ (synopsis "Auto-generated rust bindings for libpq")
+ (description "This package provides auto-generated rust bindings for
+libpq.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-precomputed-hash-0.1
(package
(name "rust-precomputed-hash")
@@ -18592,7 +19239,7 @@ dependency to expose a precomputed hash.")
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs
- (("rust-difference" ,rust-difference-2.0)
+ (("rust-difference" ,rust-difference-2)
("rust-float-cmp" ,rust-float-cmp-0.6)
("rust-normalize-line-endings" ,rust-normalize-line-endings-0.3)
("rust-predicates-core" ,rust-predicates-core-1)
@@ -18673,7 +19320,7 @@ dependency to expose a precomputed hash.")
(("rust-ctor" ,rust-ctor-0.1)
("rust-output-vt100" ,rust-output-vt100-0.1)
("rust-ansi-term" ,rust-ansi-term-0.11)
- ("rust-difference" ,rust-difference-2.0))))
+ ("rust-difference" ,rust-difference-2))))
(home-page "https://github.com/colin-kiegel/rust-pretty-assertions")
(synopsis "Drop-in replacements for assert_eq! and assert_ne!")
(description
@@ -18681,6 +19328,27 @@ dependency to expose a precomputed hash.")
replacements, adding colorful diffs.")
(license (list license:expat license:asl2.0))))
+(define-public rust-pretty-assertions-0.4
+ (package
+ (inherit rust-pretty-assertions-0.6)
+ (name "rust-pretty-assertions")
+ (version "0.4.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "pretty_assertions" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1llxlnhh4qz9kda27v6nllgzvgi1fv08i3djfk4zn6zlw8c53si8"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:tests? #f
+ #:cargo-inputs
+ (("rust-ansi-term" ,rust-ansi-term-0.9)
+ ("rust-difference" ,rust-difference-1))))))
+
(define-public rust-pretty-assertions-0.2
(package
(name "rust-pretty-assertions")
@@ -18845,9 +19513,9 @@ formatted tables in terminal.")
(arguments
`(#:cargo-development-inputs
(("rust-quote" ,rust-quote-1)
- ("rust-rustversion" ,rust-rustversion-1.0)
+ ("rust-rustversion" ,rust-rustversion-1)
("rust-syn" ,rust-syn-1)
- ("rust-trybuild" ,rust-trybuild-1.0)
+ ("rust-trybuild" ,rust-trybuild-1)
("rust-demo-hack" ,rust-demo-hack-0.0)
("rust-demo-hack-impl" ,rust-demo-hack-impl-0.0))))
(home-page "https://github.com/dtolnay/proc-macro-hack")
@@ -18923,7 +19591,7 @@ formatted tables in terminal.")
(define-public rust-proc-macro2-1
(package
(name "rust-proc-macro2")
- (version "1.0.10")
+ (version "1.0.21")
(source
(origin
(method url-fetch)
@@ -18931,7 +19599,7 @@ formatted tables in terminal.")
(file-name (string-append name "-" version ".crate"))
(sha256
(base32
- "1qxbnl8i3a5b2nxb8kdxbq6kj3pd1ckhm35wm7z3jd7n5wlns96z"))))
+ "0b1azz1c2a3rap1kfz2sjinv7narfhssazaq39axvwwlvwb8bqin"))))
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs
@@ -19031,7 +19699,7 @@ macro use case.")
`(#:cargo-inputs
(("rust-bit-set" ,rust-bit-set-0.5)
("rust-bitflags" ,rust-bitflags-1)
- ("rust-byteorder" ,rust-byteorder-1.3)
+ ("rust-byteorder" ,rust-byteorder-1)
("rust-lazy-static" ,rust-lazy-static-1)
("rust-num-traits" ,rust-num-traits-0.2)
("rust-quick-error" ,rust-quick-error-1.2)
@@ -19071,7 +19739,7 @@ macro use case.")
#:cargo-inputs
(("rust-bit-set" ,rust-bit-set-0.5)
("rust-bitflags" ,rust-bitflags-1)
- ("rust-byteorder" ,rust-byteorder-1.3)
+ ("rust-byteorder" ,rust-byteorder-1)
("rust-lazy-static" ,rust-lazy-static-1)
("rust-num-traits" ,rust-num-traits-0.2)
("rust-quick-error" ,rust-quick-error-1.2)
@@ -19110,6 +19778,59 @@ macro use case.")
#:cargo-development-inputs
(("rust-regex" ,rust-regex-0.2))))))
+(define-public rust-proptest-0.3
+ (package
+ (inherit rust-proptest-0.7)
+ (name "rust-proptest")
+ (version "0.3.4")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "proptest" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "15633iq8x3x0im5vyij2gr8ncpflv4fa9w63rh94k20xhzv4m308"))))
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bit-set" ,rust-bit-set-0.4)
+ ("rust-lazy-static" ,rust-lazy-static-0.2)
+ ("rust-quick-error" ,rust-quick-error-1.2)
+ ("rust-rand" ,rust-rand-0.3)
+ ("rust-regex-syntax" ,rust-regex-syntax-0.4))
+ #:cargo-development-inputs
+ (("rust-regex" ,rust-regex-0.2))))))
+
+(define-public rust-proptest-derive-0.1
+ (package
+ (name "rust-proptest-derive")
+ (version "0.1.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "proptest-derive" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0nziczbm7w0jisjrd216hh2j45fs5m363ga7r6nawwxcxlbxn7nk"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-proc-macro2" ,rust-proc-macro2-0.4)
+ ("rust-quote" ,rust-quote-0.6)
+ ("rust-syn" ,rust-syn-0.15))
+ #:cargo-development-inputs
+ (("rust-compiletest-rs" ,rust-compiletest-rs-0.3)
+ ("rust-criterion" ,rust-criterion-0.2)
+ ("rust-proptest" ,rust-proptest-0.9))))
+ (home-page
+ "https://altsysrq.github.io/proptest-book/proptest-derive/index.html")
+ (synopsis "Custom-derive for the Arbitrary trait of proptest")
+ (description "This package provides a Custom-derive for the Arbitrary
+trait of proptest.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-psm-0.1
(package
(name "rust-psm")
@@ -19133,6 +19854,35 @@ macro use case.")
stack pointer and inspect the properties of the stack.")
(license (list license:isc license:asl2.0))))
+(define-public rust-publicsuffix-1
+ (package
+ (name "rust-publicsuffix")
+ (version "1.5.4")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "publicsuffix" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0yvmjpywfyypfr17kxiwy6ssykgv8nmcdhfakas6548pfn8a9fiv"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-error-chain" ,rust-error-chain-0.12)
+ ("rust-idna" ,rust-idna-0.2)
+ ("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-native-tls" ,rust-native-tls-0.2)
+ ("rust-regex" ,rust-regex-1)
+ ("rust-url" ,rust-url-2))
+ #:cargo-development-inputs
+ (("rust-rspec" ,rust-rspec-1))))
+ (home-page "https://github.com/rushmorem/publicsuffix")
+ (synopsis "Domain name parsing and email address validation")
+ (description "This package provides robust domain name parsing and RFC
+compliant email address validation.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-pulldown-cmark-0.4
(package
(name "rust-pulldown-cmark")
@@ -19191,6 +19941,26 @@ stack pointer and inspect the properties of the stack.")
"This package provides a pull parser for CommonMark.")
(license license:expat)))
+(define-public rust-pulldown-cmark-0.1
+ (package
+ (inherit rust-pulldown-cmark-0.2)
+ (name "rust-pulldown-cmark")
+ (version "0.1.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "pulldown-cmark" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0ckflr6w5vfvgb2xnzbnph9b6c0k8cfncm4a8bjzmbbcv9fgizfn"))))
+ (arguments
+ `(#:tests? #f
+ #:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-0.9)
+ ("rust-getopts" ,rust-getopts-0.2))))))
+
(define-public rust-pulldown-cmark-0.0.8
(package/inherit rust-pulldown-cmark-0.4
(name "rust-pulldown-cmark")
@@ -19208,6 +19978,28 @@ stack pointer and inspect the properties of the stack.")
(("rust-bitflags" ,rust-bitflags-0.5)
("rust-getopts" ,rust-getopts-0.2))))))
+(define-public rust-pulse-0.5
+ (package
+ (name "rust-pulse")
+ (version "0.5.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "pulse" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1w4skcnwmavm8ra9blf1hy7bc9grnin2kziiyc18lsnrr2v14mk5"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-atom" ,rust-atom-0.3)
+ ("rust-time" ,rust-time-0.1))))
+ (home-page "https://github.com/csherratt/pulse")
+ (synopsis "Async wake signals library")
+ (description "This package provides a library for async wake signals.")
+ (license license:asl2.0)))
+
(define-public rust-quantiles-0.7
(package
(name "rust-quantiles")
@@ -19476,10 +20268,10 @@ integers, floats, tuples, booleans, lists, strings, options and results.")
(base32
"1vb4acppaavlnchzc1jmn5wlkgir9x9gmhgp97bavyxxqxgsg1nh"))))))
-(define-public rust-quickcheck-macros-0.8
+(define-public rust-quickcheck-macros-0.9
(package
(name "rust-quickcheck-macros")
- (version "0.8.0")
+ (version "0.9.1")
(source
(origin
(method url-fetch)
@@ -19488,21 +20280,43 @@ integers, floats, tuples, booleans, lists, strings, options and results.")
(string-append name "-" version ".tar.gz"))
(sha256
(base32
- "0b3mhn0xcrdd3fkbkx3rghhivwzwil8w991ngp6gaj70l72c3pyp"))))
+ "0zsb9b4jpg7qvbiym4v8y9pgqk7p1g4f5hn9gp0fnzz9v1pib330"))))
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs
- (("rust-proc-macro2" ,rust-proc-macro2-0.4)
- ("rust-quote" ,rust-quote-0.6)
- ("rust-syn" ,rust-syn-0.15))
+ (("rust-proc-macro2" ,rust-proc-macro2-1)
+ ("rust-quote" ,rust-quote-1)
+ ("rust-syn" ,rust-syn-1))
#:cargo-development-inputs
- (("rust-quickcheck" ,rust-quickcheck-0.8))))
+ (("rust-quickcheck" ,rust-quickcheck-0.9))))
(home-page "https://github.com/BurntSushi/quickcheck")
(synopsis "Macro attribute for quickcheck")
(description
"This package provides a macro attribute for quickcheck.")
(license (list license:unlicense license:expat))))
+(define-public rust-quickcheck-macros-0.8
+ (package
+ (inherit rust-quickcheck-macros-0.9)
+ (name "rust-quickcheck-macros")
+ (version "0.8.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "quickcheck_macros" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0b3mhn0xcrdd3fkbkx3rghhivwzwil8w991ngp6gaj70l72c3pyp"))))
+ (arguments
+ `(#:cargo-inputs
+ (("rust-proc-macro2" ,rust-proc-macro2-0.4)
+ ("rust-quote" ,rust-quote-0.6)
+ ("rust-syn" ,rust-syn-0.15))
+ #:cargo-development-inputs
+ (("rust-quickcheck" ,rust-quickcheck-0.8))))))
+
(define-public rust-quote-1
(package
(name "rust-quote")
@@ -19520,8 +20334,8 @@ integers, floats, tuples, booleans, lists, strings, options and results.")
`(#:cargo-inputs
(("rust-proc-macro2" ,rust-proc-macro2-1))
#:cargo-development-inputs
- (("rust-rustversion" ,rust-rustversion-1.0)
- ("rust-trybuild" ,rust-trybuild-1.0))))
+ (("rust-rustversion" ,rust-rustversion-1)
+ ("rust-trybuild" ,rust-trybuild-1))))
(home-page "https://github.com/dtolnay/quote")
(synopsis "Quasi-quoting macro quote!(...)")
(description "Quasi-quoting macro quote!(...)")
@@ -19577,6 +20391,29 @@ integers, floats, tuples, booleans, lists, strings, options and results.")
"0yhnnix4dzsv8y4wwz4csbnqjfh73al33j35msr10py6cl5r4vks"))))
(arguments '())))
+(define-public rust-r2d2
+ (package
+ (name "rust-r2d2")
+ (version "0.8.9")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "r2d2" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0vxjgh83bss63mkx308p16iwl33s80c781p422f3r5w0p315np2l"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-log" ,rust-log-0.4)
+ ("rust-parking-lot" ,rust-parking-lot-0.11)
+ ("rust-scheduled-thread-pool" ,rust-scheduled-thread-pool-0.2))))
+ (home-page "https://github.com/sfackler/r2d2")
+ (synopsis "A generic connection pool")
+ (description "This package provides a generic connection pool.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-racer-cargo-metadata-0.1
(package
(name "rust-racer-cargo-metadata")
@@ -19627,6 +20464,28 @@ Racer.")
fashion. It is mostly used in Racer.")
(license license:expat)))
+(define-public rust-radix-fmt-1
+ (package
+ (name "rust-radix-fmt")
+ (version "1.0.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "radix_fmt" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "09jlq152iwn56215kghqby4pi8vamhg0nzcb9any5b5782cjl26f"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-development-inputs
+ (("rust-fluid" ,rust-fluid-0.4))))
+ (home-page "https://gitlab.com/Boiethios/radix_fmt_rs")
+ (synopsis "Format a number in an arbitrary radix")
+ (description "This package lets you format a number in an arbitrary
+radix.")
+ (license license:asl2.0)))
+
(define-public rust-rand-0.7
(package
(name "rust-rand")
@@ -20215,7 +21074,7 @@ random number generators.")
"07w3qgrac8r356lz5vqff42rly6yd9vs3g5lx5pbn13rcmb05rqb"))))
(arguments
`(#:cargo-inputs
- (("rust-byteorder" ,rust-byteorder-1.3)
+ (("rust-byteorder" ,rust-byteorder-1)
("rust-rand-core" ,rust-rand-core-0.5)
("rust-serde" ,rust-serde-1))
#:cargo-development-inputs
@@ -20238,33 +21097,11 @@ random number generators.")
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs
- (("rust-byteorder" ,rust-byteorder-1.3)
+ (("rust-byteorder" ,rust-byteorder-1)
("rust-rand-core" ,rust-rand-core-0.3))
#:cargo-development-inputs
(("rust-rand" ,rust-rand-0.6))))))
-(define-public rust-raw-window-handle-0.3
- (package
- (name "rust-raw-window-handle")
- (version "0.3.3")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "raw-window-handle" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "04c2wir7qq3g2b143yav52a1g5ack8ffqx2bpmrn9bc0dix1li0a"))))
- (build-system cargo-build-system)
- (arguments
- `(#:cargo-inputs (("rust-libc" ,rust-libc-0.2))))
- (home-page "https://github.com/rust-windowing/raw-window-handle")
- (synopsis "Interoperability library for Rust Windowing applications")
- (description
- "Interoperability library for Rust Windowing applications.")
- (license license:expat)))
-
(define-public rust-rawpointer-0.2
(package
(name "rust-rawpointer")
@@ -20345,7 +21182,7 @@ accessors.")
`(#:cargo-inputs
(("rust-autocfg" ,rust-autocfg-1.0)
("rust-crossbeam-deque" ,rust-crossbeam-deque-0.7)
- ("rust-either" ,rust-either-1.5)
+ ("rust-either" ,rust-either-1)
("rust-rayon-core" ,rust-rayon-core-1))
#:cargo-development-inputs
(("rust-docopt" ,rust-docopt-1.1)
@@ -20509,7 +21346,7 @@ owned memory.")
(define-public rust-redox-syscall-0.1
(package
(name "rust-redox-syscall")
- (version "0.1.56")
+ (version "0.1.57")
(source
(origin
(method url-fetch)
@@ -20517,7 +21354,7 @@ owned memory.")
(file-name (string-append name "-" version ".crate"))
(sha256
(base32
- "110y7dyfm2vci4x5vk7gr0q551dvp31npl99fnsx2fb17wzwcf94"))))
+ "1kh59fpwy33w9nwd5iyc283yglq8pf2s41hnhvl48iax9mz0zk21"))))
(build-system cargo-build-system)
(arguments '(#:skip-build? #t))
(home-page "https://gitlab.redox-os.org/redox-os/syscall")
@@ -20594,8 +21431,8 @@ functionality.")
`(#:cargo-inputs
(("rust-ref-cast-impl" ,rust-ref-cast-impl-1.0))
#:cargo-development-inputs
- (("rust-rustversion" ,rust-rustversion-1.0)
- ("rust-trybuild" ,rust-trybuild-1.0))))
+ (("rust-rustversion" ,rust-rustversion-1)
+ ("rust-trybuild" ,rust-trybuild-1))))
(home-page "https://github.com/dtolnay/ref-cast")
(synopsis "Safely cast &T to &U")
(description
@@ -20621,7 +21458,7 @@ functionality.")
(("rust-ref-cast-impl" ,rust-ref-cast-impl-0.2))
#:cargo-development-inputs
(("rust-rustversion" ,rust-rustversion-0.1)
- ("rust-trybuild" ,rust-trybuild-1.0))))
+ ("rust-trybuild" ,rust-trybuild-1))))
(home-page "https://github.com/dtolnay/ref-cast")
(synopsis "Safely cast &T to &U")
(description
@@ -20773,7 +21610,7 @@ uses finite automata and guarantees linear time matching on all inputs.")
`(#:skip-build? #t
#:cargo-inputs
(("rust-fst" ,rust-fst-0.4)
- ("rust-byteorder" ,rust-byteorder-1.3)
+ ("rust-byteorder" ,rust-byteorder-1)
("rust-regex-syntax" ,rust-regex-syntax-0.6))
#:cargo-development-inputs
(("rust-bstr" ,rust-bstr-0.2)
@@ -20866,6 +21703,29 @@ uses finite automata and guarantees linear time matching on all inputs.")
(("rust-quickcheck" ,rust-quickcheck-0.2)
("rust-rand" ,rust-rand-0.3))))))
+(define-public rust-relative-path-1
+ (package
+ (name "rust-relative-path")
+ (version "1.3.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "relative_path" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "152zdks8chgsq4vmp562bx6whvixm7gzivab1cf8rs1r634ggbv5"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-serde" ,rust-serde-1))
+ #:cargo-development-inputs
+ (("rust-serde" ,rust-serde-1))))
+ (home-page "https://docs.rs/crate/relative-path/")
+ (synopsis "Portable, relative paths for Rust")
+ (description "This package provides portable, relative paths for Rust.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-remove-dir-all-0.5
(package
(name "rust-remove-dir-all")
@@ -20923,28 +21783,71 @@ uses finite automata and guarantees linear time matching on all inputs.")
(description "File reopening utility.")
(license (list license:asl2.0 license:expat))))
-(define-public rust-resize-0.3
+(define-public rust-reqwest-0.10
(package
- (name "rust-resize")
- (version "0.3.1")
+ (name "rust-reqwest")
+ (version "0.10.8")
(source
- (origin
- (method url-fetch)
- (uri (crate-uri "resize" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "1ai83laz5yvg4r7z9q8d1m0vq0fqj2ycyprw5fxzxyzaj3im7rmr"))))
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "reqwest" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "07nnj0qzj8g64iagx7xzk02493yqdahqy49xa2vkif6pqmxa3sp9"))))
(build-system cargo-build-system)
(arguments
- `(#:cargo-development-inputs
- (("rust-png" ,rust-png-0.15))))
- (home-page "https://github.com/PistonDevelopers/resize")
- (synopsis "Simple image resampling library in pure Rust")
- (description
- "This package provides a simple image resampling library in pure Rust.")
- (license license:expat)))
+ `(#:cargo-inputs
+ (("rust-async-compression" ,rust-async-compression-0.3)
+ ("rust-base64" ,rust-base64-0.12)
+ ("rust-bytes" ,rust-bytes-0.5)
+ ("rust-cookie" ,rust-cookie-0.14)
+ ("rust-cookie-store" ,rust-cookie-store-0.12)
+ ("rust-encoding-rs" ,rust-encoding-rs-0.8)
+ ("rust-futures-core" ,rust-futures-core-0.3)
+ ("rust-futures-util" ,rust-futures-util-0.3)
+ ("rust-http" ,rust-http-0.2)
+ ("rust-http-body" ,rust-http-body-0.3)
+ ("rust-hyper" ,rust-hyper-0.13)
+ ("rust-hyper-rustls" ,rust-hyper-rustls-0.21)
+ ("rust-hyper-tls" ,rust-hyper-tls-0.4)
+ ("rust-ipnet" ,rust-ipnet-2)
+ ("rust-js-sys" ,rust-js-sys-0.3)
+ ("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-log" ,rust-log-0.4)
+ ("rust-mime" ,rust-mime-0.3)
+ ("rust-mime-guess" ,rust-mime-guess-2)
+ ("rust-native-tls" ,rust-native-tls-0.2)
+ ("rust-percent-encoding" ,rust-percent-encoding-2)
+ ("rust-pin-project-lite" ,rust-pin-project-lite-0.1)
+ ("rust-rustls" ,rust-rustls-0.18)
+ ("rust-serde" ,rust-serde-1)
+ ("rust-serde-json" ,rust-serde-json-1)
+ ("rust-serde-urlencoded" ,rust-serde-urlencoded-0.6)
+ ("rust-time" ,rust-time-0.2)
+ ("rust-tokio" ,rust-tokio-0.2)
+ ("rust-tokio-rustls" ,rust-tokio-rustls-0.14)
+ ("rust-tokio-socks" ,rust-tokio-socks-0.2)
+ ("rust-tokio-tls" ,rust-tokio-tls-0.3)
+ ("rust-trust-dns-resolver" ,rust-trust-dns-resolver-0.19)
+ ("rust-url" ,rust-url-2)
+ ("rust-wasm-bindgen" ,rust-wasm-bindgen-0.2)
+ ("rust-wasm-bindgen-futures" ,rust-wasm-bindgen-futures-0.4)
+ ("rust-web-sys" ,rust-web-sys-0.3)
+ ("rust-webpki-roots" ,rust-webpki-roots-0.19)
+ ("rust-winreg" ,rust-winreg-0.7))
+ #:cargo-development-inputs
+ (("rust-brotli" ,rust-brotli-3)
+ ("rust-doc-comment" ,rust-doc-comment-0.3)
+ ("rust-env-logger" ,rust-env-logger-0.7)
+ ("rust-hyper" ,rust-hyper-0.13)
+ ("rust-libflate" ,rust-libflate-1)
+ ("rust-serde" ,rust-serde-1)
+ ("rust-tokio" ,rust-tokio-0.2))))
+ (home-page "https://github.com/seanmonstar/reqwest")
+ (synopsis "High level HTTP client library")
+ (description "This package provides a high level HTTP client library.")
+ (license (list license:expat license:asl2.0))))
(define-public rust-resolv-conf-0.6
(package
@@ -20971,33 +21874,23 @@ uses finite automata and guarantees linear time matching on all inputs.")
(license (list license:asl2.0
license:expat))))
-(define-public rust-rgb-0.8
+(define-public rust-retain-mut-0.1
(package
- (name "rust-rgb")
- (version "0.8.20")
+ (name "rust-retain-mut")
+ (version "0.1.1")
(source
(origin
(method url-fetch)
- (uri (crate-uri "rgb" version))
- (file-name (string-append name "-" version ".crate"))
+ (uri (crate-uri "retain_mut" version))
+ (file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
- "1620mn5dp1rr9fpvd9wbr3b8l2g4zrij8zjri1x34cg1bas59vwh"))))
+ "0cgmm1q7sr31r9wk7syh53ipgqpl37jzsvahdhmwrsi6mmcdc1g0"))))
(build-system cargo-build-system)
- (arguments
- `(#:cargo-inputs
- (("rust-bytemuck" ,rust-bytemuck-1)
- ("rust-serde", rust-serde-1))
- #:cargo-development-inputs
- (("rust-serde-json" ,rust-serde-json-1))))
- (home-page "https://lib.rs/crates/rgb")
- (synopsis "Struct for sharing pixels between crates")
- (description
- "This package provides @code{struct RGB/RGBA/etc.} for sharing pixels
-between crates + convenience methods for color manipulation. It allows no-copy
-high-level interoperability. It also adds common convenience methods and
-implements standard Rust traits to make `RGB`/`RGBA` pixels and slices
-first-class Rust objects.")
+ (home-page "https://github.com/upsuper/retain_mut")
+ (synopsis "Mutable borrow for the retain predicate")
+ (description "This package provides retain_mut method that has the same
+functionality as retain but gives mutable borrow to the predicate.")
(license license:expat)))
(define-public rust-ring-0.16
@@ -21102,8 +21995,33 @@ your own implementation.")
Rust Language Server.")
(license (list license:expat license:asl2.0))))
+(define-public rust-ron-0.5
+ (package
+ (name "rust-ron")
+ (version "0.5.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "ron" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256 (base32 "1mb2bavvp8jg5wx0kx9n45anrsbjwhjzddim987bjaa11hg45kif"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-base64" ,rust-base64-0.10)
+ ("rust-bitflags" ,rust-bitflags-1)
+ ("rust-serde" ,rust-serde-1))
+ #:cargo-development-inputs
+ (("rust-serde-bytes" ,rust-serde-bytes-0.10)
+ ("rust-serde-json" ,rust-serde-json-1))))
+ (home-page "https://github.com/ron-rs/ron")
+ (synopsis "Rusty Object Notation")
+ (description "This package provides Rusty Object Notation (RON).")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-ron-0.4
(package
+ (inherit rust-ron-0.5)
(name "rust-ron")
(version "0.4.2")
(source
@@ -21115,7 +22033,6 @@ Rust Language Server.")
(sha256
(base32
"13ypx80ac1minrmn9w9sgnbxlknwiv7qhx5n50azh0s484j2mx8p"))))
- (build-system cargo-build-system)
(arguments
`(#:skip-build? #t
#:cargo-inputs
@@ -21124,12 +22041,7 @@ Rust Language Server.")
("rust-serde" ,rust-serde-1))
#:cargo-development-inputs
(;("rust-serde-bytes" ,rust-serde-bytes-0.10)
- ("rust-serde-json" ,rust-serde-json-1))))
- (home-page "https://github.com/ron-rs/ron")
- (synopsis "Rusty Object Notation")
- (description "Rusty Object Notation.")
- (license (list license:asl2.0
- license:expat))))
+ ("rust-serde-json" ,rust-serde-json-1))))))
(define-public rust-rspec-1
(package
@@ -21146,7 +22058,7 @@ Rust Language Server.")
(arguments
`(#:skip-build? #t ;; TODO unpackaged dev-dependencies
#:cargo-inputs
- (("rust-colored" ,rust-colored-1.9)
+ (("rust-colored" ,rust-colored-1)
("rust-derive-new" ,rust-derive-new-0.5)
("rust-derive-builder" ,rust-derive-builder-0.5)
("rust-expectest" ,rust-expectest-0.9)
@@ -21198,7 +22110,7 @@ console applications.")
(arguments
`(#:cargo-inputs
(("rust-bitflags" ,rust-bitflags-1)
- ("rust-byteorder" ,rust-byteorder-1.3)
+ ("rust-byteorder" ,rust-byteorder-1)
("rust-chrono" ,rust-chrono-0.4)
("rust-csv" ,rust-csv-1.1)
("rust-fallible-iterator" ,rust-fallible-iterator-0.2)
@@ -21210,7 +22122,7 @@ console applications.")
("rust-memchr" ,rust-memchr-2)
("rust-serde-json" ,rust-serde-json-1)
("rust-time" ,rust-time-0.1)
- ("rust-url" ,rust-url-1.7)
+ ("rust-url" ,rust-url-1)
("rust-uuid" ,rust-uuid-0.7))
#:cargo-development-inputs
(("rust-lazy-static" ,rust-lazy-static-1)
@@ -21506,11 +22418,11 @@ It is automatically published using the compiler repository at
("rust-rustc-ap-graphviz" ,rust-rustc-ap-graphviz-654)
("rust-rustc-ap-rustc-index" ,rust-rustc-ap-rustc-index-654)
("rust-rustc-ap-serialize" ,rust-rustc-ap-serialize-654)
- ("rust-rustc-hash" ,rust-rustc-hash-1.1)
+ ("rust-rustc-hash" ,rust-rustc-hash-1)
("rust-rustc-rayon" ,rust-rustc-rayon-0.3)
("rust-rustc-rayon-core" ,rust-rustc-rayon-core-0.3)
("rust-smallvec" ,rust-smallvec-1)
- ("rust-stable-deref-trait" ,rust-stable-deref-trait-1.1)
+ ("rust-stable-deref-trait" ,rust-stable-deref-trait-1)
("rust-winapi" ,rust-winapi-0.3))))
(home-page "https://github.com/alexcrichton/rustc-auto-publish")
(synopsis "Automatically published versions of rustc data structures")
@@ -21719,7 +22631,7 @@ It is automatically published using the compiler repository at
`(#:skip-build? #t
#:cargo-inputs
(("rust-compiler-builtins" ,rust-compiler-builtins-0.1)
- ("rust-rustc-std-workspace-core" ,rust-rustc-std-workspace-core-1.0))))
+ ("rust-rustc-std-workspace-core" ,rust-rustc-std-workspace-core-1))))
(home-page "https://github.com/alexcrichton/rustc-demangle")
(synopsis "Rust compiler symbol demangling")
(description
@@ -21727,7 +22639,7 @@ It is automatically published using the compiler repository at
(license (list license:asl2.0
license:expat))))
-(define-public rust-rustc-hash-1.1
+(define-public rust-rustc-hash-1
(package
(name "rust-rustc-hash")
(version "1.1.0")
@@ -21748,6 +22660,20 @@ It is automatically published using the compiler repository at
"This package provides a speedy, non-cryptographic hash used in rustc.")
(license (list license:asl2.0 license:expat))))
+(define-public rust-rustc-hash-1.0
+ (package
+ (inherit rust-rustc-hash-1)
+ (name "rust-rustc-hash")
+ (version "1.0.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "rustc-hash" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1f4cnbcmz2c3zjidqszc9c4fip37ch4xl74nkkp9dw291j5zqh3m"))))))
+
(define-public rust-rustc-rayon-0.3
(package
(name "rust-rustc-rayon")
@@ -21766,7 +22692,7 @@ It is automatically published using the compiler repository at
`(#:tests? #f
#:cargo-inputs
(("rust-crossbeam-deque" ,rust-crossbeam-deque-0.7)
- ("rust-either" ,rust-either-1.5)
+ ("rust-either" ,rust-either-1)
("rust-rustc-rayon-core" ,rust-rustc-rayon-core-0.3))
#:cargo-development-inputs
(("rust-doc-comment" ,rust-doc-comment-0.3)
@@ -21850,7 +22776,7 @@ decoding.")
(license (list license:asl2.0
license:expat))))
-(define-public rust-rustc-std-workspace-alloc-1.0
+(define-public rust-rustc-std-workspace-alloc-1
(package
(name "rust-rustc-std-workspace-alloc")
(version "1.0.0")
@@ -21870,7 +22796,7 @@ decoding.")
(description "This package is a Rust workspace hack.")
(license (list license:asl2.0 license:expat))))
-(define-public rust-rustc-std-workspace-core-1.0
+(define-public rust-rustc-std-workspace-core-1
(package
(name "rust-rustc-std-workspace-core")
(version "1.0.0")
@@ -22034,7 +22960,7 @@ rustc compiler.")
("rust-serde" ,rust-serde-1)
("rust-serde-json" ,rust-serde-json-1))
#:cargo-development-inputs
- (("rust-difference" ,rust-difference-2.0)
+ (("rust-difference" ,rust-difference-2)
("rust-duct" ,rust-duct-0.13)
("rust-env-logger" ,rust-env-logger-0.6)
("rust-log" ,rust-log-0.4)
@@ -22046,8 +22972,70 @@ rustc compiler.")
"Automatically apply the suggestions made by rustc.")
(license (list license:expat license:asl2.0))))
+(define-public rust-rustls-0.18
+ (package
+ (name "rust-rustls")
+ (version "0.18.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "rustls" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "108cf3bfw5high066shz9xrfv4jz7djdmnwqs3kwx4wfypf2c4ax"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-base64" ,rust-base64-0.12)
+ ("rust-log" ,rust-log-0.4)
+ ("rust-ring" ,rust-ring-0.16)
+ ("rust-sct" ,rust-sct-0.6)
+ ("rust-webpki" ,rust-webpki-0.21))
+ #:cargo-development-inputs
+ (("rust-criterion" ,rust-criterion-0.3)
+ ("rust-env-logger" ,rust-env-logger-0.7)
+ ("rust-log" ,rust-log-0.4)
+ ("rust-webpki-roots" ,rust-webpki-roots-0.20))))
+ (home-page "https://github.com/ctz/rustls")
+ (synopsis "Modern TLS library written in Rust.")
+ (description "This package provides a modern TLS library written in
+Rust.")
+ (license
+ (list license:asl2.0 license:isc license:expat))))
+
+(define-public rust-rustls-0.17
+ (package
+ (inherit rust-rustls-0.18)
+ (name "rust-rustls")
+ (version "0.17.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "rustls" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1q8m835viqrf4bbd2fa8rnmaj48fkd984saxf0238hb8blgs7m60"))))
+ (arguments
+ `(#:cargo-inputs
+ (("rust-base64" ,rust-base64-0.11)
+ ("rust-log" ,rust-log-0.4)
+ ("rust-ring" ,rust-ring-0.16)
+ ("rust-sct" ,rust-sct-0.6)
+ ("rust-webpki" ,rust-webpki-0.21))
+ #:cargo-development-inputs
+ (("rust-criterion" ,rust-criterion-0.3)
+ ("rust-env-logger" ,rust-env-logger-0.7)
+ ("rust-log" ,rust-log-0.4)
+ ("rust-tempfile" ,rust-tempfile-3)
+ ("rust-webpki-roots" ,rust-webpki-roots-0.19))))))
+
(define-public rust-rustls-0.16
(package
+ (inherit rust-rustls-0.17)
(name "rust-rustls")
(version "0.16.0")
(source
@@ -22057,7 +23045,6 @@ rustc compiler.")
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32 "17n0fx3fpkg4fhpdplrdhkissnl003kj90vzbqag11vkpyqihnmj"))))
- (build-system cargo-build-system)
(arguments
`(#:tests? #f ;; 1/114 tests fail (test file not found)
#:cargo-inputs
@@ -22071,11 +23058,7 @@ rustc compiler.")
("rust-env-logger" ,rust-env-logger-0.6)
("rust-log" ,rust-log-0.4)
("rust-tempfile" ,rust-tempfile-3)
- ("rust-webpki-roots" ,rust-webpki-roots-0.17))))
- (home-page "https://github.com/ctz/rustls")
- (synopsis "Modern TLS library written in Rust")
- (description "This package provides a modern TLS library written in Rust.")
- (license (list license:asl2.0 license:isc license:expat))))
+ ("rust-webpki-roots" ,rust-webpki-roots-0.17))))))
(define-public rust-rustls-0.12
(package/inherit rust-rustls-0.16
@@ -22109,6 +23092,38 @@ rustc compiler.")
("rust-serde-derive" ,rust-serde-derive-1)
("rust-webpki-roots" ,rust-webpki-roots-0.14))))))
+(define-public rust-rustls-native-certs-0.4
+ (package
+ (name "rust-rustls-native-certs")
+ (version "0.4.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "rustls-native-certs" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1f2rkvdkz92qcmwryyqiw9phkqkf95g4962ljpfq5nkjfsd477b2"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-openssl-probe" ,rust-openssl-probe-0.1)
+ ("rust-rustls" ,rust-rustls-0.18)
+ ("rust-schannel" ,rust-schannel-0.1)
+ ("rust-security-framework"
+ ,rust-security-framework-1))
+ #:cargo-development-inputs
+ (("rust-ring" ,rust-ring-0.16)
+ ("rust-untrusted" ,rust-untrusted-0.7)
+ ("rust-webpki" ,rust-webpki-0.21)
+ ("rust-webpki-roots" ,rust-webpki-roots-0.20))))
+ (home-page "https://github.com/ctz/rustls-native-certs")
+ (synopsis "Use the platform native certificate store with rustls")
+ (description "@code{rustls-native-certs} allows rustls to use the platform
+native certificate store.")
+ (license
+ (list license:asl2.0 license:isc license:expat))))
+
(define-public rust-rusttype-0.8
(package
(name "rust-rusttype")
@@ -22134,7 +23149,7 @@ rustc compiler.")
("rust-linked-hash-map" ,rust-linked-hash-map-0.5)
("rust-num-cpus" ,rust-num-cpus-1)
("rust-ordered-float" ,rust-ordered-float-1.0)
- ("rust-rustc-hash" ,rust-rustc-hash-1.1)
+ ("rust-rustc-hash" ,rust-rustc-hash-1)
("rust-stb-truetype" ,rust-stb-truetype-0.3))))
(home-page "https://gitlab.redox-os.org/redox-os/rusttype")
(synopsis "Pure Rust alternative to libraries like FreeType")
@@ -22171,7 +23186,7 @@ font rendering.")
("rust-lazy-static" ,rust-lazy-static-1)
("rust-unicode-normalization" ,rust-unicode-normalization-0.1))))))
-(define-public rust-rustversion-1.0
+(define-public rust-rustversion-1
(package
(name "rust-rustversion")
(version "1.0.2")
@@ -22395,6 +23410,27 @@ paths point to the same file.")
server functionality.")
(license license:expat)))
+(define-public rust-scheduled-thread-pool-0.2
+ (package
+ (name "rust-scheduled-thread-pool")
+ (version "0.2.5")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "scheduled-thread-pool" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1mz7s21q1d7xn9j15dlhhv1y86q2r2z6hpax5nh3y1q42byp8vyw"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-parking-lot" ,rust-parking-lot-0.11))))
+ (home-page "https://github.com/sfackler/scheduled-thread-pool")
+ (synopsis "A scheduled thread pool")
+ (description "This package provides a scheduled thread pool.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-scoped-threadpool-0.1
(package
(name "rust-scoped-threadpool")
@@ -22460,10 +23496,10 @@ library's old @code{scoped_thread_local!} macro for providing scoped access to
(base32
"0a2bn9d2mb07c6l16sadijy4p540g498zddfxyiq4rsqpwrglbrk"))))))
-(define-public rust-scopeguard-1.0
+(define-public rust-scopeguard-1
(package
(name "rust-scopeguard")
- (version "1.0.0")
+ (version "1.1.0")
(source
(origin
(method url-fetch)
@@ -22471,9 +23507,8 @@ library's old @code{scoped_thread_local!} macro for providing scoped access to
(file-name (string-append name "-" version ".crate"))
(sha256
(base32
- "03aay84r1f6w87ckbpj6cc4rnsxkxcfs13n5ynxjia0qkgjiabml"))))
+ "1kbqm85v43rq92vx7hfiay6pmcga03vrjbbfwqpyj3pwsg3b16nj"))))
(build-system cargo-build-system)
- (arguments '(#:skip-build? #t))
(home-page "https://github.com/bluss/scopeguard")
(synopsis "Scope guard which will run a closure even out of scope")
(description "This package provides a RAII scope guard that will run a
@@ -22484,9 +23519,24 @@ with one of the implemented strategies.")
(license (list license:asl2.0
license:expat))))
+(define-public rust-scopeguard-1.0
+ (package
+ (inherit rust-scopeguard-1)
+ (name "rust-scopeguard")
+ (version "1.0.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "scopeguard" version))
+ (file-name (string-append name "-" version ".crate"))
+ (sha256
+ (base32
+ "03aay84r1f6w87ckbpj6cc4rnsxkxcfs13n5ynxjia0qkgjiabml"))))
+ (arguments '(#:skip-build? #t))))
+
(define-public rust-scopeguard-0.3
(package
- (inherit rust-scopeguard-1.0)
+ (inherit rust-scopeguard-1)
(name "rust-scopeguard")
(version "0.3.3")
(source
@@ -22546,7 +23596,7 @@ with one of the implemented strategies.")
`(#:cargo-inputs
(("rust-base64" ,rust-base64-0.9)
("rust-byte-tools" ,rust-byte-tools-0.3)
- ("rust-byteorder" ,rust-byteorder-1.3)
+ ("rust-byteorder" ,rust-byteorder-1)
("rust-hmac" ,rust-hmac-0.7)
("rust-pbkdf2" ,rust-pbkdf2-0.3)
("rust-rand" ,rust-rand-0.5)
@@ -22598,7 +23648,7 @@ endian-aware Read/Write traits for byte buffers.")
(("rust-scroll-derive" ,rust-scroll-derive-0.9)
("rust-rustc-version" ,rust-rustc-version-0.2))
#:cargo-development-inputs
- (("rust-byteorder" ,rust-byteorder-1.3)
+ (("rust-byteorder" ,rust-byteorder-1)
("rust-rayon" ,rust-rayon-1))))
(home-page "https://github.com/m4b/scroll")
(synopsis "Read/Write traits for byte buffers")
@@ -22705,7 +23755,7 @@ Pwrite traits from the scroll crate.")
(("rust-cc" ,rust-cc-1))))))
-(define-public rust-seahash-3.0
+(define-public rust-seahash-3
(package
(name "rust-seahash")
(version "3.0.7")
@@ -22748,8 +23798,38 @@ proven statistical guarantees.")
"This package provides a library for section-style testing.")
(license license:expat)))
+(define-public rust-security-framework-1
+ (package
+ (name "rust-security-framework")
+ (version "1.0.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "security-framework" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0axwlax65j1f79rsm4ylc8rc6p2knbi3dgnpbdq7a1bzh5k2hl5d"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1)
+ ("rust-core-foundation" ,rust-core-foundation-0.7)
+ ("rust-core-foundation-sys" ,rust-core-foundation-sys-0.7)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-security-framework-sys" ,rust-security-framework-sys-1))
+ #:cargo-development-inputs
+ (("rust-hex" ,rust-hex-0.4)
+ ("rust-tempdir" ,rust-tempdir-0.3))))
+ (home-page "https://lib.rs/crates/security_framework")
+ (synopsis "@code{Security.framework} bindings for macOS and iOS")
+ (description "This package provides @code{Security.framework} bindings for
+macOS and iOS.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-security-framework-0.3
(package
+ (inherit rust-security-framework-1)
(name "rust-security-framework")
(version "0.3.4")
(source
@@ -22761,7 +23841,6 @@ proven statistical guarantees.")
(sha256
(base32
"1pqn79cl9njnnhsmjvvphkzx8is5jhfd8bhxpllgvrgggjfl5wlf"))))
- (build-system cargo-build-system)
(arguments
`(#:tests? #f ; Some test files not included in release.
#:cargo-inputs
@@ -22771,16 +23850,61 @@ proven statistical guarantees.")
("rust-security-framework-sys" ,rust-security-framework-sys-0.3))
#:cargo-development-inputs
(("rust-hex" ,rust-hex-0.4)
- ("rust-tempdir" ,rust-tempdir-0.3))))
- (home-page "https://lib.rs/crates/security_framework")
- (synopsis
- "Security.framework bindings for macOS and iOS")
- (description
- "Security.framework bindings for macOS and iOS.")
+ ("rust-tempdir" ,rust-tempdir-0.3))))))
+
+(define-public rust-security-framework-0.2
+ (package
+ (inherit rust-security-framework-0.3)
+ (name "rust-security-framework")
+ (version "0.2.4")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "security-framework" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0gw3xxg8yzbjb4ny5cy07gky177c1nbgpxqjsw3hfzpfgrxji9bz"))))
+ (arguments
+ `(#:cargo-inputs
+ (("rust-core-foundation"
+ ,rust-core-foundation-0.6)
+ ("rust-core-foundation-sys"
+ ,rust-core-foundation-sys-0.6)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-security-framework-sys"
+ ,rust-security-framework-sys-0.2))
+ #:cargo-development-inputs
+ (("rust-hex" ,rust-hex-0.3)
+ ("rust-tempdir" ,rust-tempdir-0.3))))))
+
+(define-public rust-security-framework-sys-1
+ (package
+ (name "rust-security-framework-sys")
+ (version "1.0.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "security-framework-sys" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1iynsjz53lqkkw4zbq8l99xn799chbx90lsmrlfnsyxii14v1kji"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-core-foundation-sys" ,rust-core-foundation-sys-0.7)
+ ("rust-libc" ,rust-libc-0.2))))
+ (home-page "https://lib.rs/crates/security-framework-sys")
+ (synopsis "Low-level FFI bindings to Apple @code{Security.framework}")
+ (description "This package provides low level FFI bindings to Apple
+@code{Security.framework}.")
(license (list license:expat license:asl2.0))))
(define-public rust-security-framework-sys-0.3
(package
+ (inherit rust-security-framework-sys-1)
(name "rust-security-framework-sys")
(version "0.3.3")
(source
@@ -22794,13 +23918,25 @@ proven statistical guarantees.")
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs
- (("rust-core-foundation-sys" ,rust-core-foundation-sys-0.6))))
- (home-page "https://lib.rs/crates/security-framework-sys")
- (synopsis "Apple `Security.framework` low-level FFI bindings")
- (description
- "Apple @code{Security.framework} low-level FFI bindings.")
- (license (list license:asl2.0
- license:expat))))
+ (("rust-core-foundation-sys" ,rust-core-foundation-sys-0.6))))))
+
+(define-public rust-security-framework-sys-0.2
+ (package
+ (inherit rust-security-framework-sys-0.3)
+ (name "rust-security-framework-sys")
+ (version "0.2.4")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "security-framework-sys" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "07zv0szz2kfy1hn251h0qsq0q9i1zia768d8vzril1g6xarj7mcj"))))
+ (arguments
+ `(#:cargo-inputs
+ (("rust-core-foundation-sys" ,rust-core-foundation-sys-0.6)
+ ("rust-libc" ,rust-libc-0.2))))))
(define-public rust-selectors-0.22
(package
@@ -22868,6 +24004,33 @@ proven statistical guarantees.")
(description "Rust semaphore library.")
(license license:expat)))
+(define-public rust-semver-0.10
+ (package
+ (name "rust-semver")
+ (version "0.10.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "semver" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1401i88135h2paxwvf0b51hf585rdzxa8yxg7j800gk2z8lfqk1r"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-diesel" ,rust-diesel-1)
+ ("rust-semver-parser" ,rust-semver-parser-0.7)
+ ("rust-serde" ,rust-serde-1))
+ #:cargo-development-inputs
+ (("rust-serde-derive" ,rust-serde-derive-1)
+ ("rust-serde-json" ,rust-serde-json-1))))
+ (home-page "https://docs.rs/crate/semver/")
+ (synopsis "Semantic version parsing and comparison")
+ (description "This package provides semantic version parsing and
+comparison.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-semver-0.9
(package
(name "rust-semver")
@@ -22935,7 +24098,7 @@ proven statistical guarantees.")
(define-public rust-serde-1
(package
(name "rust-serde")
- (version "1.0.105")
+ (version "1.0.116")
(source
(origin
(method url-fetch)
@@ -22943,11 +24106,10 @@ proven statistical guarantees.")
(file-name (string-append name "-" version ".crate"))
(sha256
(base32
- "1zrj157dxvmymp5ii60anap2qqks4pkr3fwsp71wi3sv4nzzn1z7"))))
+ "19bhld1qyjs4qr3rd6dmzmy13imb6a1qbinb2fjqd0yjh6pmgzln"))))
(build-system cargo-build-system)
(arguments
- `(#:skip-build? #t
- #:cargo-inputs
+ `(#:cargo-inputs
(("rust-serde-derive" ,rust-serde-derive-1))
#:cargo-development-inputs
(("rust-serde-derive" ,rust-serde-derive-1))))
@@ -23087,6 +24249,21 @@ proven statistical guarantees.")
"Optimized handling of @code{&[u8]} and @code{Vec<u8>} for Serde.")
(license (list license:expat license:asl2.0))))
+(define-public rust-serde-bytes-0.10
+ (package
+ (inherit rust-serde-bytes-0.11)
+ (name "rust-serde-bytes")
+ (version "0.10.5")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "serde_bytes" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "127c9br02ygajs4z3bw850i48nc25f4yn7kmh21wqd3z7nlbiyyy"))))))
+
(define-public rust-serde-cbor-0.11
(package
(name "rust-serde-cbor")
@@ -23103,7 +24280,7 @@ proven statistical guarantees.")
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs
- (("rust-half" ,rust-half-1.3)
+ (("rust-half" ,rust-half-1)
("rust-serde" ,rust-serde-1))
#:cargo-development-inputs
(("rust-serde-derive" ,rust-serde-derive-1))))
@@ -23129,8 +24306,8 @@ proven statistical guarantees.")
(arguments
`(#:skip-build? #t
#:cargo-inputs
- (("rust-byteorder" ,rust-byteorder-1.3)
- ("rust-half" ,rust-half-1.3)
+ (("rust-byteorder" ,rust-byteorder-1)
+ ("rust-half" ,rust-half-1)
("rust-serde" ,rust-serde-1))
#:cargo-development-inputs
(("rust-serde-derive" ,rust-serde-derive-1))))))
@@ -23191,7 +24368,7 @@ for the serde framework.")
(define-public rust-serde-derive-1
(package
(name "rust-serde-derive")
- (version "1.0.105")
+ (version "1.0.116")
(source
(origin
(method url-fetch)
@@ -23199,11 +24376,10 @@ for the serde framework.")
(file-name (string-append name "-" version ".crate"))
(sha256
(base32
- "1y5gzwpy8yjv9pwh1js11vr18nfz4gg1g2kmyr6p58hvavy00pdc"))))
+ "1s4sbl32lk1afxryfax73clvq22lwzdgzljb7f3mgr6q1wvscc7n"))))
(build-system cargo-build-system)
(arguments
- `(#:skip-build? #t
- #:cargo-inputs
+ `(#:cargo-inputs
(("rust-proc-macro2" ,rust-proc-macro2-1)
("rust-quote" ,rust-quote-1)
("rust-syn" ,rust-syn-1))
@@ -23265,11 +24441,11 @@ for the serde framework.")
("rust-serde" ,rust-serde-1))
#:cargo-development-inputs
(;("rust-automod" ,rust-automod-0.1)
- ("rust-rustversion" ,rust-rustversion-1.0)
+ ("rust-rustversion" ,rust-rustversion-1)
("rust-serde-bytes" ,rust-serde-bytes-0.11)
("rust-serde-derive" ,rust-serde-derive-1)
;("rust-serde-stacker" ,rust-serde-stacker-0.1)
- ("rust-trybuild" ,rust-trybuild-1.0))))
+ ("rust-trybuild" ,rust-trybuild-1))))
(home-page "https://github.com/serde-rs/json")
(synopsis "JSON serialization file format")
(description
@@ -23340,7 +24516,7 @@ for the serde framework.")
(define-public rust-serde-test-1
(package
(name "rust-serde-test")
- (version "1.0.105")
+ (version "1.0.113")
(source
(origin
(method url-fetch)
@@ -23349,11 +24525,10 @@ for the serde framework.")
(string-append name "-" version ".tar.gz"))
(sha256
(base32
- "1vnp0wld20z1wjr8qp2hxcy6yh2zhicg1mfb0qrzxgwq2a4n6raa"))))
+ "02s7zjs12m5abk13j5farc00rzissk1anpl015vawpzz914jsan3"))))
(build-system cargo-build-system)
(arguments
- `(#:skip-build? #t
- #:cargo-inputs
+ `(#:cargo-inputs
(("rust-serde" ,rust-serde-1))
#:cargo-development-inputs
(("rust-serde" ,rust-serde-1)
@@ -23412,6 +24587,32 @@ for the serde framework.")
((", path = \"../serde\"") ""))
#t)))))))
+(define-public rust-serde-urlencoded-0.6
+ (package
+ (name "rust-serde-urlencoded")
+ (version "0.6.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "serde_urlencoded" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "15rcwfkff0md5i231m2ym5756ksw1mkh5b5g2rw72wsc5mzdgicy"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-dtoa" ,rust-dtoa-0.4)
+ ("rust-itoa" ,rust-itoa-0.4)
+ ("rust-serde" ,rust-serde-1)
+ ("rust-url" ,rust-url-2))
+ #:cargo-development-inputs
+ (("rust-serde-derive" ,rust-serde-derive-1))))
+ (home-page "https://github.com/nox/serde_urlencoded")
+ (synopsis "x-www-form-urlencoded meets serde")
+ (description "x-www-form-urlencoded meets serde.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-serde-yaml-0.8
(package
(name "rust-serde-yaml")
@@ -23506,7 +24707,7 @@ for the serde framework.")
`(#:cargo-inputs
(("rust-nodrop" ,rust-nodrop-0.1)
("rust-serde" ,rust-serde-1)
- ("rust-stable-deref-trait" ,rust-stable-deref-trait-1.1))))
+ ("rust-stable-deref-trait" ,rust-stable-deref-trait-1))))
(home-page "https://github.com/servo/servo")
(synopsis "Fork of std::sync::Arc with some extra functionality")
(description
@@ -24044,6 +25245,39 @@ words, like Python's shlex.")
(description "Backend crate for signal-hook.")
(license (list license:asl2.0 license:expat))))
+(define-public rust-simba-0.1
+ (package
+ (name "rust-simba")
+ (version "0.1.5")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "simba" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1chz3abrvrj4qz86gwrrzajsl5zcc2l0dhxi39mymbgscw9ip4zv"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-approx" ,rust-approx-0.3)
+ ("rust-cordic" ,rust-cordic-0.1)
+ ("rust-decimal" ,rust-decimal-2.0)
+ ("rust-fixed" ,rust-fixed-1)
+ ("rust-num-complex" ,rust-num-complex-0.2)
+ ("rust-num-traits" ,rust-num-traits-0.2)
+ ("rust-packed-simd" ,rust-packed-simd-0.3)
+ ("rust-paste" ,rust-paste-0.1)
+ ("rust-rand" ,rust-rand-0.7)
+ ("rust-wide" ,rust-wide-0.4))))
+ (home-page "https://github.com/dimforge/simba")
+ (synopsis "SIMD algebra for Rust")
+ (description "This package provides a set of mathematical traits to
+facilitate the use of SIMD-based @dfn{Array of Struct of Array} (AoSoA) storage
+pattern in Rust.")
+ (license license:bsd-3)))
+
(define-public rust-simd-0.2
(package
(name "rust-simd")
@@ -24365,99 +25599,6 @@ stack.")
#:cargo-development-inputs
(("rust-bincode" ,rust-bincode-1))))))
-(define-public rust-smithay-client-toolkit-0.6
- (package
- (name "rust-smithay-client-toolkit")
- (version "0.6.4")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "smithay-client-toolkit" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "0m20687zs36l6xak2s5k9s7qp78ly8xfjpbmrhacp7whfn4hx5lk"))))
- (build-system cargo-build-system)
- (arguments
- `(#:cargo-inputs
- (("rust-andrew" ,rust-andrew-0.2)
- ("rust-bitflags" ,rust-bitflags-1)
- ("rust-dlib" ,rust-dlib-0.4)
- ("rust-lazy-static" ,rust-lazy-static-1)
- ("rust-memmap" ,rust-memmap-0.7)
- ("rust-nix" ,rust-nix-0.14)
- ("rust-wayland-client" ,rust-wayland-client-0.23)
- ("rust-wayland-protocols" ,rust-wayland-protocols-0.23))
- #:cargo-development-inputs
- (("rust-byteorder" ,rust-byteorder-1.3)
- ("rust-image" ,rust-image-0.21)
- ("rust-wayland-client" ,rust-wayland-client-0.23))))
- (home-page "https://github.com/smithay/client-toolkit")
- (synopsis "Toolkit for making client wayland applications")
- (description
- "Toolkit for making client wayland applications.")
- (license license:expat)))
-
-(define-public rust-smithay-client-toolkit-0.4
- (package
- (inherit rust-smithay-client-toolkit-0.6)
- (name "rust-smithay-client-toolkit")
- (version "0.4.6")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "smithay-client-toolkit" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "1yj8yzd0lhqpsgq0x4iikl9a02q2hnkky81brk938alv0ibqrjrc"))))
- (arguments
- `(#:cargo-inputs
- (("rust-andrew" ,rust-andrew-0.2)
- ("rust-bitflags" ,rust-bitflags-1)
- ("rust-dlib" ,rust-dlib-0.4)
- ("rust-lazy-static" ,rust-lazy-static-1)
- ("rust-memmap" ,rust-memmap-0.7)
- ("rust-nix" ,rust-nix-0.14)
- ("rust-wayland-client" ,rust-wayland-client-0.21)
- ("rust-wayland-commons" ,rust-wayland-commons-0.21)
- ("rust-wayland-protocols" ,rust-wayland-protocols-0.21))
- #:cargo-development-inputs
- (("rust-byteorder" ,rust-byteorder-1.3)
- ("rust-image" ,rust-image-0.20)
- ("rust-wayland-client" ,rust-wayland-client-0.21))))))
-
-(define-public rust-smithay-clipboard-0.3
- (package
- (name "rust-smithay-clipboard")
- (version "0.3.6")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "smithay-clipboard" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "1h7qhcx44cgwncgpn5llky0c56vgsg9mqrkybb2z37vsxxia4rwn"))))
- (build-system cargo-build-system)
- (arguments
- `(#:cargo-inputs
- (("rust-nix" ,rust-nix-0.14)
- ("rust-smithay-client-toolkit" ,rust-smithay-client-toolkit-0.6))
- #:cargo-development-inputs
- (("rust-andrew" ,rust-andrew-0.2))))
- (inputs
- `(("wayland" ,wayland)))
- (home-page "https://github.com/smithay/smithay-clipboard")
- (synopsis
- "Provides access to the wayland clipboard for client applications")
- (description
- "This package provides access to the wayland clipboard for client applications.")
- (license license:expat)))
-
(define-public rust-socket2-0.3
(package
(name "rust-socket2")
@@ -24512,6 +25653,50 @@ track of where each new file and line starts.")
(license (list license:asl2.0
license:expat))))
+(define-public rust-sourcemap-6
+ (package
+ (name "rust-sourcemap")
+ (version "6.0.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "sourcemap" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1sv1rxc6d2rfvd5xrqzqq0i2y0z1q7sqj3wm9krxbggcccj1y0vf"))
+ (modules '((guix build utils)))
+ (snippet
+ '(begin
+ ;; Enable unstable features
+ (substitute* "src/lib.rs"
+ (("//! This library" all)
+ (string-append "#![feature(inner_deref)]" "\n" all)))
+ #t))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-base64" ,rust-base64-0.11)
+ ("rust-if-chain" ,rust-if-chain-1)
+ ("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-regex" ,rust-regex-1)
+ ("rust-scroll" ,rust-scroll-0.10)
+ ("rust-serde" ,rust-serde-1)
+ ("rust-serde-json" ,rust-serde-json-1)
+ ("rust-url" ,rust-url-2))
+ #:cargo-development-inputs
+ (("rust-rustc-version" ,rust-rustc-version-0.2))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'enable-unstable-features
+ (lambda _
+ (setenv "RUSTC_BOOTSTRAP" "1")
+ #t)))))
+ (home-page "https://github.com/getsentry/rust-sourcemap")
+ (synopsis "Basic sourcemap handling for Rust")
+ (description "This package provides basic sourcemap handling for Rust.")
+ (license license:bsd-3)))
+
(define-public rust-speculate-0.1
(package
(name "rust-speculate")
@@ -24619,7 +25804,29 @@ initializers are available.")
"This package provides a single-producer single-consumer lock-free buffer.")
(license license:expat)))
-(define-public rust-stable-deref-trait-1.1
+(define-public rust-st-map-0.1
+ (package
+ (name "rust-st-map")
+ (version "0.1.4")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "st-map" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1l820pisfi134v3wy0na480wl7rf69kgxzvmgc560ngqb0xb3biw"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-arrayvec" ,rust-arrayvec-0.5)
+ ("rust-static-map-macro" ,rust-static-map-macro-0.2))))
+ (home-page "https://github.com/kdy1/rust-static-map")
+ (synopsis "Runtime for a stack-alocated map")
+ (description "This package provides a runtime for a stack-alocated map.")
+ (license license:expat)))
+
+(define-public rust-stable-deref-trait-1
(package
(name "rust-stable-deref-trait")
(version "1.1.1")
@@ -24698,6 +25905,27 @@ deeply recursive algorithms that may accidentally blow the stack.")
"StackVec: vector-like facade for stack-allocated arrays.")
(license (list license:asl2.0 license:expat))))
+(define-public rust-standback-0.2
+ (package
+ (name "rust-standback")
+ (version "0.2.10")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "standback" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1rnqv9dbq9c4nz7097v0f1d04fjwwsvvyy8rmz8lg1szxahix9rk"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-development-inputs
+ (("rust-version-check" ,rust-version-check-0.9))))
+ (home-page "https://github.com/jhpratt/standback")
+ (synopsis "New standard library, old compiler")
+ (description "New standard library, old compiler.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-static-assertions-1
(package
(name "rust-static-assertions")
@@ -24732,6 +25960,31 @@ are met.")
(base32
"1lw33i89888yb3x29c6dv4mrkg3534n0rlg3r7qzh4p58xmv6gkz"))))))
+(define-public rust-static-map-macro-0.2
+ (package
+ (name "rust-static-map-macro")
+ (version "0.2.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "static-map-macro" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1zcm28d46dggdpbn06xlpa274z25l228cmzxpc8qh8s8y43kwl6m"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-pmutil" ,rust-pmutil-0.5)
+ ("rust-proc-macro2" ,rust-proc-macro2-1)
+ ("rust-quote" ,rust-quote-1)
+ ("rust-syn" ,rust-syn-1))))
+ (home-page "https://github.com/kdy1/rust-static-map")
+ (synopsis "Macro to create a stack-alocated map")
+ (description "This package provides a macro to create a stack-alocated
+map.")
+ (license license:expat)))
+
(define-public rust-stb-truetype-0.3
(package
(name "rust-stb-truetype")
@@ -24749,7 +26002,7 @@ are met.")
(arguments
`(#:tests? #f ; tests not included in release
#:cargo-inputs
- (("rust-byteorder" ,rust-byteorder-1.3)
+ (("rust-byteorder" ,rust-byteorder-1)
("rust-libm" ,rust-libm-0.2))
#:cargo-development-inputs
(("rust-approx" ,rust-approx-0.3))))
@@ -24760,6 +26013,28 @@ are met.")
in @code{stb_truetype.h} from C to Rust.")
(license (list license:expat license:asl2.0))))
+(define-public rust-std-prelude-0.2
+ (package
+ (name "rust-std-prelude")
+ (version "0.2.12")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "std_prelude" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1ghcwnhnqn3rphyhlknmxpj5clzqva46z1vh25k5bpzzan2ff1w2"))))
+ (build-system cargo-build-system)
+ (home-page "https://github.com/vitiral/std_prelude")
+ (synopsis
+ "Prelude that the rust stdlib should have always had")
+ (description
+ "A package that simply uses all of the items often included in a Rust
+codebase.")
+ (license license:expat)))
+
(define-public rust-stdweb-0.4
(package
(name "rust-stdweb")
@@ -24904,8 +26179,63 @@ crate.")
(license (list license:asl2.0
license:expat))))
+(define-public rust-stfu8-0.2
+ (package
+ (name "rust-stfu8")
+ (version "0.2.4")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "stfu8" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0xyv4axwc9rihg3f5fjdy7s0ahnz1iq6lq06blwkq2ihwcrh9xsb"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-regex" ,rust-regex-0.2))
+ #:cargo-development-inputs
+ (("rust-pretty-assertions" ,rust-pretty-assertions-0.4)
+ ("rust-proptest" ,rust-proptest-0.3))))
+ (home-page "https://github.com/vitiral/stfu8")
+ (synopsis "Sorta Text Format in UTF-8")
+ (description
+ "STFU-8 is a hacky text encoding/decoding protocol for files that
+partially uses UTF-8. Its primary purpose is to allow a human to visualize and
+edit data that is mostly UTF-8. It will encode all non-UTF8-compliant bytes as
+longform text (e.g., ESC becomes @code{r\x1B}) and tries to encode ill-formed
+UTF-8.")
+ (license (list license:expat license:asl2.0))))
+
+(define-public rust-stream-cipher-0.4
+ (package
+ (name "rust-stream-cipher")
+ (version "0.4.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "stream-cipher" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "120y04k3d2jyfnvyrlf38x6bf0yckyk30c7zf8v8qaq4fjcyvy09"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-blobby" ,rust-blobby-0.1)
+ ("rust-block-cipher" ,rust-block-cipher-0.7)
+ ("rust-generic-array" ,rust-generic-array-0.14))))
+ (home-page "https://github.com/RustCrypto/traits")
+ (synopsis "Stream cipher traits")
+ (description "This package provides stream cipher traits.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-stream-cipher-0.3
(package
+ (inherit rust-stream-cipher-0.4)
(name "rust-stream-cipher")
(version "0.3.0")
(source
@@ -24917,16 +26247,11 @@ crate.")
(sha256
(base32
"1g1nd8r6pph70rzk5yyvg7a9ji7pkap9ddiqpp4v9xa9ys0bqqc8"))))
- (build-system cargo-build-system)
(arguments
`(#:skip-build? #t
#:cargo-inputs
(("rust-blobby" ,rust-blobby-0.1)
- ("rust-generic-array" ,rust-generic-array-0.13))))
- (home-page "https://github.com/RustCrypto/traits")
- (synopsis "Stream cipher traits")
- (description "Stream cipher traits.")
- (license (list license:asl2.0 license:expat))))
+ ("rust-generic-array" ,rust-generic-array-0.13))))))
(define-public rust-streaming-stats-0.2
(package
@@ -25351,10 +26676,123 @@ cryptographic implementations.")
(description "Custom derive for sval.")
(license (list license:asl2.0 license:expat))))
+(define-public rust-swc-1
+ (package
+ (name "rust-swc")
+ (version "1.2.24")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/swc-project/swc")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1w9al035x0gmard80vqvah8sy8szs6bnd1ynnyssiiylzg7vhyyv"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-ansi-term" ,rust-ansi-term-0.12)
+ ("rust-base64" ,rust-base64-0.12)
+ ("rust-console-error-panic-hook" ,rust-console-error-panic-hook-0.1)
+ ("rust-crc" ,rust-crc-1)
+ ("rust-darling" ,rust-darling-0.10)
+ ("rust-dashmap" ,rust-dashmap-3)
+ ("rust-either" ,rust-either-1)
+ ("rust-fxhash" ,rust-fxhash-0.2)
+ ("rust-is-macro" ,rust-is-macro-0.1)
+ ("rust-jemallocator" ,rust-jemallocator-0.3)
+ ("rust-log" ,rust-log-0.4)
+ ("rust-mimalloc" ,rust-mimalloc-0.1)
+ ("rust-napi" ,rust-napi-0.5)
+ ("rust-napi-build" ,rust-napi-build-0.2)
+ ("rust-napi-derive" ,rust-napi-derive-0.5)
+ ("rust-nom" ,rust-nom-5)
+ ("rust-once-cell" ,rust-once-cell-1)
+ ("rust-parking-lot" ,rust-parking-lot-0.7)
+ ("rust-path-clean" ,rust-path-clean-0.1)
+ ("rust-petgraph" ,rust-petgraph-0.5)
+ ("rust-proc-macro2" ,rust-proc-macro2-1)
+ ("rust-radix-fmt" ,rust-radix-fmt-1)
+ ("rust-regex" ,rust-regex-1)
+ ("rust-relative-path" ,rust-relative-path-1)
+ ("rust-retain-mut" ,rust-retain-mut-0.1)
+ ("rust-scoped-tls" ,rust-scoped-tls-1.0)
+ ("rust-st-map" ,rust-st-map-0.1)
+ ("rust-string-cache" ,rust-string-cache-0.8)
+ ("rust-walkdir" ,rust-walkdir-2)
+ ("rust-wasm-bindgen-futures" ,rust-wasm-bindgen-futures-0.4))
+ #:cargo-development-inputs
+ (("rust-anyhow" ,rust-anyhow-1.0)
+ ("rust-env-logger" ,rust-env-logger-0.7)
+ ("rust-num-bigint" ,rust-num-bigint-0.2)
+ ("rust-pretty-assertions" ,rust-pretty-assertions-0.6)
+ ("rust-pretty-env-logger" ,rust-pretty-env-logger-0.3)
+ ("rust-serde" ,rust-serde-1)
+ ("rust-serde-json" ,rust-serde-json-1)
+ ("rust-sourcemap" ,rust-sourcemap-6)
+ ("rust-string-cache-codegen" ,rust-string-cache-codegen-0.5)
+ ("rust-tempfile" ,rust-tempfile-3))
+ #:tests? #f ;; tests env_query_chrome_71 and project_env fail
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'enable-unstable-features
+ (lambda _
+ (setenv "RUSTC_BOOTSTRAP" "1")
+ (substitute* "ecmascript/jsdoc/src/lib.rs"
+ (("pub use self" all)
+ (string-append "#![feature(non_exhaustive)]\n" all)))
+ (substitute* "ecmascript/parser/src/lib.rs"
+ (("//! es2019" all)
+ (string-append "#![feature(non_exhaustive)]
+#![feature(mem_take)]
+#![feature(proc_macro_hygiene)]
+" all)))
+ (substitute* "ecmascript/transforms/src/lib.rs"
+ (("#!\\[cfg_attr" all)
+ (string-append "#![feature(mem_take)]\n" all)))
+ #t))
+ (add-after 'enable-unstable-features 'patch-build-failures
+ (lambda _
+ (chmod ".cargo/config" 420)
+ (substitute* "ecmascript/transforms/macros/src/lib.rs"
+ (("use proc_macro::")
+ "extern crate proc_macro;\nuse proc_macro::"))
+ (substitute* "common/src/errors/emitter.rs"
+ ((" #\\[cfg\\(feature = \"tty-emitter\"\\)\\]\n") ""))
+ #t)))))
+ (home-page "https://swc.rs/")
+ (synopsis "Typescript/javascript compiler")
+ (description "@code{rust-swc} is a typescript/javascript compiler. It
+consumes a javascript or typescript file which uses recently added features
+like async-await and emits javascript code which can be executed on old
+browsers.")
+ (license (list license:expat
+ license:asl2.0))))
+
+(define-public rust-syn-test-suite-0
+ (package
+ (name "rust-syn-test-suite")
+ (version "0.0.0+test")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "syn-test-suite" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1d9ffrbgci1qjdcpvgrsg3sh24qdsdh66zcsvn5prrk05ycn3mm0"))))
+ (build-system cargo-build-system)
+ (home-page "https://github.com/dtolnay/syn")
+ (synopsis "Test suite of the syn crate")
+ (description "This package provides the test suite of the syn crate.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-syn-1
(package
(name "rust-syn")
- (version "1.0.17")
+ (version "1.0.40")
(source
(origin
(method url-fetch)
@@ -25362,7 +26800,7 @@ cryptographic implementations.")
(file-name (string-append name "-" version ".crate"))
(sha256
(base32
- "00xvf772ys4fj9fr8kplmsqb9if215dsipi3nv54aw9q7xkfpw0d"))))
+ "0l437lsnv289y64pgl2mfvr1vgrb2hix5bb5a4rbjncvqly7sgwn"))))
(build-system cargo-build-system)
(arguments
`(#:skip-build? #t
@@ -25372,12 +26810,13 @@ cryptographic implementations.")
("rust-quote" ,rust-quote-1))
#:cargo-development-inputs
(("rust-anyhow" ,rust-anyhow-1.0)
- ("rust-flate2" ,rust-flate2-1.0)
- ;("rust-insta" ,rust-insta-0.12)
+ ("rust-flate2" ,rust-flate2-1)
+ ("rust-insta" ,rust-insta-0.16)
("rust-rayon" ,rust-rayon-1)
("rust-ref-cast" ,rust-ref-cast-1.0)
("rust-regex" ,rust-regex-1)
- ;("rust-reqwest" ,rust-reqwest-0.10)
+ ("rust-reqwest" ,rust-reqwest-0.10)
+ ("rust-syn-test-suite" ,rust-syn-test-suite-0)
("rust-tar" ,rust-tar-0.4)
("rust-termcolor" ,rust-termcolor-1)
("rust-walkdir" ,rust-walkdir-2))))
@@ -25415,6 +26854,53 @@ cryptographic implementations.")
("rust-walkdir" ,rust-walkdir-2))))
(properties '())))
+(define-public rust-syn-0.14
+ (package
+ (inherit rust-syn-0.15)
+ (name "rust-syn")
+ (version "0.14.9")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "syn" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0hgpgi8lcvkfd5jnma5fxq41ycb9kna635b4c2wl4z1rmbnfj6i6"))))
+ (arguments
+ `(#:cargo-inputs
+ (("rust-proc-macro2" ,rust-proc-macro2-0.4)
+ ("rust-quote" ,rust-quote-0.6)
+ ("rust-unicode-xid" ,rust-unicode-xid-0.1))
+ #:cargo-development-inputs
+ (("rust-rayon" ,rust-rayon-1)
+ ("rust-walkdir" ,rust-walkdir-2))))))
+
+(define-public rust-syn-0.13
+ (package
+ (inherit rust-syn-0.14)
+ (name "rust-syn")
+ (version "0.13.11")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "syn" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "16qvx8qyb5v4vjbg9rk8848bw6x4i6vzs8v7f4n1v9pkj9ibzy8l"))))
+ (arguments
+ `(#:tests? #f
+ #:cargo-inputs
+ (("rust-proc-macro2" ,rust-proc-macro2-0.3)
+ ("rust-quote" ,rust-quote-0.5)
+ ("rust-unicode-xid" ,rust-unicode-xid-0.1))
+ #:cargo-development-inputs
+ (("rust-rayon" ,rust-rayon-1)
+ ("rust-walkdir" ,rust-walkdir-2))))))
+
(define-public rust-syn-0.11
(package
(inherit rust-syn-0.15)
@@ -25603,11 +27089,11 @@ cryptographic implementations.")
("rust-regex-syntax" ,rust-regex-syntax-0.6)
("rust-serde" ,rust-serde-1)
("rust-serde-derive" ,rust-serde-derive-1)
- ("rust-flate2" ,rust-flate2-1.0)
+ ("rust-flate2" ,rust-flate2-1)
("rust-serde-json" ,rust-serde-json-1)
("rust-fnv" ,rust-fnv-1)
("rust-bitflags" ,rust-bitflags-1)
- ("rust-lazycell" ,rust-lazycell-1.2)
+ ("rust-lazycell" ,rust-lazycell-1)
("rust-bincode" ,rust-bincode-1)
("rust-lazy-static" ,rust-lazy-static-1)
("rust-walkdir" ,rust-walkdir-2)
@@ -25740,7 +27226,7 @@ syntax extension expansion.")
`(#:skip-build? #t
#:cargo-inputs
(("rust-bitflags" ,rust-bitflags-1)
- ("rust-byteorder" ,rust-byteorder-1.3)
+ ("rust-byteorder" ,rust-byteorder-1)
("rust-failure" ,rust-failure-0.1)
("rust-libc" ,rust-libc-0.2)
("rust-walkdir" ,rust-walkdir-2))))
@@ -25767,7 +27253,7 @@ syntax extension expansion.")
(arguments
`(#:skip-build? #t ; Unsupported on Linux.
#:cargo-inputs
- (("rust-byteorder" ,rust-byteorder-1.3)
+ (("rust-byteorder" ,rust-byteorder-1)
("rust-errno" ,rust-errno-0.2)
("rust-libc" ,rust-libc-0.2))))))
@@ -25823,6 +27309,24 @@ syntax extension expansion.")
(description "Send log messages to syslog.")
(license license:expat)))
+(define-public rust-take-mut-0.2
+ (package
+ (name "rust-take-mut")
+ (version "0.2.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "take_mut" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0q2d7w6nd5bl7bay5csq065sjg8fw0jcx6hl1983cpzf25fh0r7p"))))
+ (build-system cargo-build-system)
+ (home-page "https://github.com/Sgeo/take_mut")
+ (synopsis "Take a T from a &mut T temporarily")
+ (description "This package lets you temporarily take a T from a &mut T.")
+ (license license:expat)))
+
(define-public rust-takeable-option-0.4
(package
(name "rust-takeable-option")
@@ -25980,6 +27484,28 @@ directories.")
(license (list license:asl2.0
license:expat))))
+(define-public rust-tempfile-2
+ (package
+ (inherit rust-tempfile-3)
+ (name "rust-tempfile")
+ (version "2.2.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "tempfile" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1q61byf232rra0vqxp4qp10wwwqsqqd45qjj80ql5f34vgljzkhi"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-kernel32-sys" ,rust-kernel32-sys-0.2)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-rand" ,rust-rand-0.3)
+ ("rust-redox-syscall" ,rust-redox-syscall-0.1)
+ ("rust-winapi" ,rust-winapi-0.2))))))
+
(define-public rust-tendril-0.4
(package
(name "rust-tendril")
@@ -26050,7 +27576,7 @@ directories.")
"0hkgjrfisj6zjwz525639pmsvzhlc48a0h65nw87qrdp6jihdlgd"))))
(arguments
`(#:cargo-inputs
- (("rust-byteorder" ,rust-byteorder-1.3)
+ (("rust-byteorder" ,rust-byteorder-1)
("rust-dirs" ,rust-dirs-1.0)
("rust-winapi" ,rust-winapi-0.3))))))
@@ -26286,6 +27812,20 @@ bindings are a small wrapper around the raw C functions, which converts integer
return values to @code{std::io::Result} to indicate success or failure.")
(license license:expat)))
+(define-public rust-termios-0.2
+ (package
+ (inherit rust-termios-0.3)
+ (name "rust-termios")
+ (version "0.2.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "termios" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0fk8nl0rmk43jrh6hjz6c6d83ri7l6fikag6lh0ffz3di9cwznfm"))))))
+
(define-public rust-test-assembler-0.1
(package
(name "rust-test-assembler")
@@ -26303,7 +27843,7 @@ return values to @code{std::io::Result} to indicate success or failure.")
(arguments
`(#:skip-build? #t
#:cargo-inputs
- (("rust-byteorder" ,rust-byteorder-1.3))))
+ (("rust-byteorder" ,rust-byteorder-1))))
(home-page "https://github.com/luser/rust-test-assembler")
(synopsis "Build complex binary streams")
(description
@@ -26348,11 +27888,22 @@ unstable language features.")
(origin
(method url-fetch)
(uri (crate-uri "textwrap" version))
- (file-name (string-append name "-" version ".crate"))
+ (file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"0q5hky03ik3y50s9sz25r438bc4nwhqc6dqwynv4wylc807n29nk"))))
(build-system cargo-build-system)
+ (arguments
+ `(#:skip-build? #t
+ #:cargo-inputs
+ (;("rust-hyphenation" ,rust-hyphenation-0.7)
+ ("rust-term-size" ,rust-term-size-0.3)
+ ("rust-unicode-width" ,rust-unicode-width-0.1))
+ #:cargo-development-inputs
+ (;("rust-lipsum" ,rust-lipsum-0.6)
+ ("rust-rand" ,rust-rand-0.6)
+ ("rust-rand-xorshift" ,rust-rand-xorshift-0.1)
+ ("rust-version-sync" ,rust-version-sync-0.6))))
(home-page "https://github.com/mgeisler/textwrap")
(synopsis "Library for word wrapping, indenting, and dedenting strings")
(description
@@ -26360,7 +27911,6 @@ unstable language features.")
strings. You can use it to format strings (such as help and error messages)
for display in commandline applications. It is designed to be efficient and
handle Unicode characters correctly.")
- (properties '((hidden? . #t)))
(license license:expat)))
(define-public rust-thin-slice-0.1
@@ -26384,7 +27934,7 @@ handle Unicode characters correctly.")
"An owned slice that packs the slice storage into a single word when possible.")
(license license:mpl2.0)))
-(define-public rust-thiserror-1.0
+(define-public rust-thiserror-1
(package
(name "rust-thiserror")
(version "1.0.9")
@@ -26405,8 +27955,8 @@ handle Unicode characters correctly.")
#:cargo-development-inputs
(("rust-anyhow" ,rust-anyhow-1.0)
("rust-ref-cast" ,rust-ref-cast-1.0)
- ("rust-rustversion" ,rust-rustversion-1.0)
- ("rust-trybuild" ,rust-trybuild-1.0))))
+ ("rust-rustversion" ,rust-rustversion-1)
+ ("rust-trybuild" ,rust-trybuild-1))))
(home-page "https://github.com/dtolnay/thiserror")
(synopsis "derive(Error)")
(description "This package provides @code{derive(Error)} in Rust.")
@@ -26438,7 +27988,7 @@ handle Unicode characters correctly.")
@code{thiserror} crate.")
(license (list license:expat license:asl2.0))))
-(define-public rust-thread-id-3.3
+(define-public rust-thread-id-3
(package
(name "rust-thread-id")
(version "3.3.0")
@@ -26466,7 +28016,7 @@ different for every thread.")
(define-public rust-thread-id-2.0
(package
- (inherit rust-thread-id-3.3)
+ (inherit rust-thread-id-3)
(name "rust-thread-id")
(version "2.0.0")
(source
@@ -26564,82 +28114,42 @@ fixed set of worker threads.")
(license (list license:asl2.0
license:expat))))
-(define-public rust-tiff-0.5
+(define-public rust-time-0.2
(package
- (name "rust-tiff")
- (version "0.5.0")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "tiff" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "0bzzvxcx21pzryxgd7x7a1himiqs2y4k55754wzlr56sqj3qlfrz"))))
- (build-system cargo-build-system)
- (arguments
- `(#:tests? #f ; not all test files included
- #:cargo-inputs
- (("rust-byteorder" ,rust-byteorder-1.3)
- ("rust-lzw" ,rust-lzw-0.10)
- ("rust-miniz-oxide" ,rust-miniz-oxide-0.3))))
- (home-page "https://github.com/image-rs/image-tiff")
- (synopsis
- "TIFF decoding and encoding library in pure Rust")
- (description
- "TIFF decoding and encoding library in pure Rust.")
- (license license:expat)))
-
-(define-public rust-tiff-0.3
- (package
- (inherit rust-tiff-0.5)
- (name "rust-tiff")
- (version "0.3.1")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "tiff" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "0zgmbny2f8rssqmjdfvnysy0vqwcvlwl6q9f5yixhavlqk7w5dyp"))))
- (arguments
- `(#:tests? #f ; Tests images not included with release.
- #:cargo-inputs
- (("rust-byteorder" ,rust-byteorder-1.3)
- ("rust-lzw" ,rust-lzw-0.10)
- ("rust-num-derive" ,rust-num-derive-0.2)
- ("rust-num-traits" ,rust-num-traits-0.2))
- #:cargo-development-inputs
- (("rust-tempfile" ,rust-tempfile-3))))))
-
-(define-public rust-tiff-0.2
- (package
- (inherit rust-tiff-0.3)
- (name "rust-tiff")
- (version "0.2.2")
+ (name "rust-time")
+ (version "0.2.19")
(source
(origin
(method url-fetch)
- (uri (crate-uri "tiff" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
+ (uri (crate-uri "time" version))
+ (file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
- "1kn7psgpacns337vvqh272rkqwnakmjd51rc7ygwnc03ibr38j0y"))))
+ "18bhl0nmfyd8drksskw830ybw9pr47pisfn4245wabqijgys3hc0"))))
+ (build-system cargo-build-system)
(arguments
`(#:cargo-inputs
- (("rust-byteorder" ,rust-byteorder-1.3)
- ("rust-lzw" ,rust-lzw-0.10)
- ("rust-num-derive" ,rust-num-derive-0.2)
- ("rust-num-traits" ,rust-num-traits-0.2))))))
+ (("rust-const-fn" ,rust-const-fn-0.4)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-rand" ,rust-rand-0.7)
+ ("rust-serde" ,rust-serde-1)
+ ("rust-standback" ,rust-standback-0.2)
+ ("rust-stdweb" ,rust-stdweb-0.4)
+ ("rust-time-macros" ,rust-time-macros-0.1)
+ ("rust-winapi" ,rust-winapi-0.3))
+ #:cargo-development-inputs
+ (("rust-version-check" ,rust-version-check-0.9))))
+ (home-page "https://github.com/time-rs/time")
+ (synopsis "Date and time library")
+ (description "This package provides a date and time library. It is fully
+interoperable with the standard library, and is mostly compatible with
+@code{#![no_std]}.")
+ (license (list license:expat license:asl2.0))))
(define-public rust-time-0.1
(package
(name "rust-time")
- (version "0.1.42")
+ (version "0.1.43")
(source
(origin
(method url-fetch)
@@ -26647,7 +28157,7 @@ fixed set of worker threads.")
(file-name (string-append name "-" version ".crate"))
(sha256
(base32
- "0vsbvsz0ryxb35dy9j4anxvy8zlaplmjmi0a4z4l64bc135cz3fv"))))
+ "0f14wrgxj7ya2v4msg5mni7046bsm2angm7cn3pd3yv04gpm12na"))))
(build-system cargo-build-system)
(arguments
`(#:skip-build? #t
@@ -26667,10 +28177,81 @@ in Rust.")
(license (list license:asl2.0
license:expat))))
-(define-public rust-tinytemplate-1.0
+(define-public rust-time-macros-0.1
+ (package
+ (name "rust-time-macros")
+ (version "0.1.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "time-macros" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0bdbxjgbxb81xgy08h5dh4qvwy95sy9x8g1y31g11g4my3lvdscs"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-proc-macro-hack" ,rust-proc-macro-hack-0.5)
+ ("rust-time-macros-impl" ,rust-time-macros-impl-0.1))))
+ (home-page "https://github.com/time-rs/time")
+ (synopsis "Procedural macros for the time crate")
+ (description "This package provides procedural macros for the time
+crate.")
+ (license (list license:expat license:asl2.0))))
+
+(define-public rust-time-macros-impl-0.1
+ (package
+ (name "rust-time-macros-impl")
+ (version "0.1.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "time-macros-impl" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1ymqhvnvry3giiw45xvarlgagl8hnd6cz4alkz32fq5dvwgbxhz5"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-proc-macro-hack" ,rust-proc-macro-hack-0.5)
+ ("rust-proc-macro2" ,rust-proc-macro2-1)
+ ("rust-quote" ,rust-quote-1)
+ ("rust-standback" ,rust-standback-0.2)
+ ("rust-syn" ,rust-syn-1))))
+ (home-page "https://github.com/time-rs/time")
+ (synopsis "Procedural macros for the time crate")
+ (description "This package provides procedural macros for the time
+crate.")
+ (license (list license:expat license:asl2.0))))
+
+(define-public rust-timebomb-0.1
+ (package
+ (name "rust-timebomb")
+ (version "0.1.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "timebomb" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0fl8bxi9bf5bv44i1afii63695cx4jlki869v0kp01ipnvs8c23z"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-pulse" ,rust-pulse-0.5)
+ ("rust-time" ,rust-time-0.2))))
+ (home-page "https://github.com/csherratt/timebomb")
+ (synopsis "Timeout mechanism for unit tests")
+ (description "This package provides a timeout mechanism for unit tests.")
+ (license license:asl2.0)))
+
+(define-public rust-tinytemplate-1
(package
(name "rust-tinytemplate")
- (version "1.0.3")
+ (version "1.1.0")
(source
(origin
(method url-fetch)
@@ -26679,7 +28260,7 @@ in Rust.")
(string-append name "-" version ".tar.gz"))
(sha256
(base32
- "06ipxjwl1w6synvql8b50qxbqv0w04agvmmfqcdynr9ygmkcd8sp"))))
+ "0by1k1hdz6jgv4ykd0izirwsm6p3qb6s9g1jb4ffqg500ihcfgbd"))))
(build-system cargo-build-system)
(arguments
`(#:skip-build? #t
@@ -26698,7 +28279,7 @@ in Rust.")
(define-public rust-tinyvec-0.3
(package
(name "rust-tinyvec")
- (version "0.3.3")
+ (version "0.3.4")
(source
(origin
(method url-fetch)
@@ -26707,7 +28288,7 @@ in Rust.")
(string-append name "-" version ".tar.gz"))
(sha256
(base32
- "1vgg2z317kq75bpd0nfda2v507qjpd7g2cjahjgivn2s78nkv5ak"))))
+ "05vijqpckjsnbv07rwadwcny4pkcq7z1wi9ikl7p3ib7s9qy1313"))))
(build-system cargo-build-system)
(arguments
`(#:cargo-development-inputs
@@ -26716,7 +28297,7 @@ in Rust.")
(synopsis "Tiny vec-like types for Rust")
(description
"A 100% safe crate of vec-like types.")
- (license license:zlib)))
+ (license (list license:zlib license:asl2.0 license:expat))))
(define-public rust-tokio-0.2
(package
@@ -26799,10 +28380,10 @@ backed applications.")
("rust-tokio-uds" ,rust-tokio-uds-0.2))
#:cargo-development-inputs
(("rust-env-logger" ,rust-env-logger-0.5)
- ("rust-flate2" ,rust-flate2-1.0)
+ ("rust-flate2" ,rust-flate2-1)
("rust-futures-cpupool" ,rust-futures-cpupool-0.1)
("rust-http" ,rust-http-0.1)
- ("rust-httparse" ,rust-httparse-1.3)
+ ("rust-httparse" ,rust-httparse-1)
("rust-libc" ,rust-libc-0.2)
("rust-num-cpus" ,rust-num-cpus-1)
("rust-serde" ,rust-serde-1)
@@ -26831,7 +28412,7 @@ backed applications.")
(arguments
`(#:cargo-inputs
(("rust-bytes" ,rust-bytes-0.4)
- ("rust-either" ,rust-either-1.5)
+ ("rust-either" ,rust-either-1)
("rust-futures" ,rust-futures-0.1))
#:cargo-development-inputs
(("rust-tokio-mock-task" ,rust-tokio-mock-task-0.1))))
@@ -26897,10 +28478,10 @@ backed applications.")
("rust-tokio-timer" ,rust-tokio-timer-0.2))
#:cargo-development-inputs
(("rust-env-logger" ,rust-env-logger-0.4)
- ("rust-flate2" ,rust-flate2-1.0)
+ ("rust-flate2" ,rust-flate2-1)
("rust-futures-cpupool" ,rust-futures-cpupool-0.1)
("rust-http" ,rust-http-0.1)
- ("rust-httparse" ,rust-httparse-1.3)
+ ("rust-httparse" ,rust-httparse-1)
("rust-libc" ,rust-libc-0.2)
("rust-num-cpus" ,rust-num-cpus-1)
("rust-serde" ,rust-serde-1)
@@ -26942,6 +28523,37 @@ Foundation for the rest of the tokio crates.")
the current thread.")
(license license:expat)))
+(define-public rust-tokio-executor-0.2
+ (package
+ (name "rust-tokio-executor")
+ (version "0.2.0-alpha.6")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "tokio-executor" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1j67p4g9y20bvlbphjmpfzc0yy8clhmz6wza6hw94iciyvncxscy"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-crossbeam-channel" ,rust-crossbeam-channel-0.3)
+ ("rust-crossbeam-deque" ,rust-crossbeam-deque-0.7)
+ ("rust-crossbeam-queue" ,rust-crossbeam-queue-0.1)
+ ("rust-crossbeam-utils" ,rust-crossbeam-utils-0.6)
+ ("rust-futures-core-preview" ,rust-futures-core-preview-0.3)
+ ("rust-futures-util-preview" ,rust-futures-util-preview-0.3)
+ ("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-num-cpus" ,rust-num-cpus-1)
+ ("rust-slab" ,rust-slab-0.4)
+ ("rust-tokio-sync" ,rust-tokio-sync-0.2)
+ ("rust-tracing" ,rust-tracing-0.1))))
+ (home-page "https://github.com/tokio-rs/tokio")
+ (synopsis "Future execution primitives")
+ (description "This package provides future execution primitives.")
+ (license license:expat)))
+
;; Cyclic dependency with rust-tokio.
(define-public rust-tokio-executor-0.1
(package
@@ -26997,8 +28609,8 @@ the current thread.")
("rust-tokio-codec" ,rust-tokio-codec-0.1)
("rust-tokio-io" ,rust-tokio-io-0.1))))
(home-page "https://tokio.rs")
- (synopsis "Filesystem API for Tokio")
- (description "Filesystem API for Tokio.")
+ (synopsis "File system API for Tokio")
+ (description "File system API for Tokio.")
(license license:expat)))
;; Cyclic dependencies with tokio and tokio-current-thread
@@ -27155,6 +28767,32 @@ applications backed by buffers.")
Tokio.")
(license (list license:expat license:asl2.0))))
+(define-public rust-tokio-openssl-0.4
+ (package
+ (name "rust-tokio-openssl")
+ (version "0.4.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "tokio-openssl" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "15751d47984ncvllagz35ldl10ifr8555wixvsg6k3i0yk2hhjrw"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-openssl" ,rust-openssl-0.10)
+ ("rust-tokio" ,rust-tokio-0.2))
+ #:cargo-development-inputs
+ (("rust-futures" ,rust-futures-0.3)
+ ("rust-tokio" ,rust-tokio-0.2))))
+ (home-page "https://github.com/alexcrichton/tokio-openssl")
+ (synopsis "SSL streams for Tokio backed by OpenSSL")
+ (description "This package is an implementation of SSL streams for Tokio
+backed by OpenSSL.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-tokio-process-0.2
(package
(name "rust-tokio-process")
@@ -27233,8 +28871,71 @@ futures.")
"Event loop that drives Tokio I/O resources.")
(license license:expat)))
+(define-public rust-tokio-rustls-0.14
+ (package
+ (name "rust-tokio-rustls")
+ (version "0.14.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "tokio-rustls" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "16l8kx3j7i3jxq36qs3hnmys6cd2zqcixc1n0kf3kymwanr32a71"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(;; These tests require network access.
+ #:cargo-test-flags '("--release" "--" "--skip=tls12" "--skip=modern")
+ #:cargo-inputs
+ (("rust-bytes" ,rust-bytes-0.5)
+ ("rust-futures-core" ,rust-futures-core-0.3)
+ ("rust-rustls" ,rust-rustls-0.18)
+ ("rust-tokio" ,rust-tokio-0.2)
+ ("rust-webpki" ,rust-webpki-0.21))
+ #:cargo-development-inputs
+ (("rust-futures-util" ,rust-futures-util-0.3)
+ ("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-tokio" ,rust-tokio-0.2)
+ ("rust-webpki-roots" ,rust-webpki-roots-0.20))))
+ (home-page "https://github.com/tokio-rs/tls")
+ (synopsis "Asynchronous TLS/SSL streams for Tokio")
+ (description "This package provides asynchronous TLS/SSL streams for Tokio
+using Rustls.")
+ (license (list license:expat license:asl2.0))))
+
+(define-public rust-tokio-rustls-0.13
+ (package
+ (inherit rust-tokio-rustls-0.14)
+ (name "rust-tokio-rustls")
+ (version "0.13.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "tokio-rustls" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1d2iy01v5psvm0ygcflzjna7zwgwk36w36bfr6mqf1vpsah65jqm"))))
+ (arguments
+ `(;; These tests require network access.
+ #:cargo-test-flags '("--release" "--" "--skip=tls12" "--skip=modern")
+ #:cargo-inputs
+ (("rust-bytes" ,rust-bytes-0.5)
+ ("rust-futures-core" ,rust-futures-core-0.3)
+ ("rust-rustls" ,rust-rustls-0.17)
+ ("rust-tokio" ,rust-tokio-0.2)
+ ("rust-webpki" ,rust-webpki-0.21))
+ #:cargo-development-inputs
+ (("rust-futures-util" ,rust-futures-util-0.3)
+ ("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-tokio" ,rust-tokio-0.2)
+ ("rust-webpki-roots" ,rust-webpki-roots-0.19))))
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-tokio-rustls-0.12
(package
+ (inherit rust-tokio-rustls-0.13)
(name "rust-tokio-rustls")
(version "0.12.2")
(source
@@ -27244,7 +28945,6 @@ futures.")
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32 "1k6rpw4nmgsamh8vbf8xqrf4rr5sqs18i93561bydflajz0gw6hl"))))
- (build-system cargo-build-system)
(arguments
`(;; These tests require network access.
#:cargo-test-flags '("--release" "--" "--skip=tls12" "--skip=modern")
@@ -27259,10 +28959,6 @@ futures.")
("rust-lazy-static" ,rust-lazy-static-1)
("rust-tokio" ,rust-tokio-0.2)
("rust-webpki-roots" ,rust-webpki-roots-0.18))))
- (home-page "https://github.com/quininer/tokio-rustls")
- (synopsis "Asynchronous TLS/SSL streams for Tokio using Rustls")
- (description "This package provides asynchronous TLS/SSL streams for Tokio
-using Rustls.")
(license (list license:expat license:asl2.0))))
(define-public rust-tokio-signal-0.2
@@ -27301,8 +28997,63 @@ using Rustls.")
futures.")
(license license:expat)))
+(define-public rust-tokio-socks-0.2
+ (package
+ (name "rust-tokio-socks")
+ (version "0.2.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "tokio-socks" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1bwdjafbbs0907w42dl899inykflz4gbm026wh097q151s57i5qr"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bytes" ,rust-bytes-0.4)
+ ("rust-either" ,rust-either-1)
+ ("rust-futures" ,rust-futures-0.3)
+ ("rust-thiserror" ,rust-thiserror-1)
+ ("rust-tokio" ,rust-tokio-0.2))
+ #:cargo-development-inputs
+ (("rust-hyper" ,rust-hyper-0.13)
+ ("rust-once-cell" ,rust-once-cell-1)
+ ("rust-tokio" ,rust-tokio-0.2))))
+ (home-page "https://github.com/sticnarf/tokio-socks")
+ (synopsis "Asynchronous SOCKS proxy support for Rust")
+ (description "This package provides asynchronous SOCKS proxy support for
+Rust.")
+ (license license:expat)))
+
+(define-public rust-tokio-sync-0.2
+ (package
+ (name "rust-tokio-sync")
+ (version "0.2.0-alpha.6")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "tokio-sync" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1lirf9s9pibgv8cypqzlddy8q9bxfp4z29qfx83p83slhnvaw6jg"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-fnv" ,rust-fnv-1)
+ ("rust-futures-core-preview" ,rust-futures-core-preview-0.3)
+ ("rust-futures-sink-preview" ,rust-futures-sink-preview-0.3)
+ ("rust-futures-util-preview" ,rust-futures-util-preview-0.3))))
+ (home-page "https://tokio.rs")
+ (synopsis "Synchronization utilities")
+ (description "This package provides synchronization utilities.")
+ (license license:expat)))
+
(define-public rust-tokio-sync-0.1
(package
+ (inherit rust-tokio-sync-0.2)
(name "rust-tokio-sync")
(version "0.1.6")
(source
@@ -27314,7 +29065,6 @@ futures.")
(sha256
(base32
"1ryalh7dcmnz46xj1va8aaw3if6vd4mj87r67dqvrqhpyf7j8qi1"))))
- (build-system cargo-build-system)
(arguments
`(#:skip-build? #t
#:cargo-inputs
@@ -27324,11 +29074,7 @@ futures.")
(("rust-env-logger" ,rust-env-logger-0.6)
("rust-loom" ,rust-loom-0.1)
("rust-tokio" ,rust-tokio-0.1)
- ("rust-tokio-mock-task" ,rust-tokio-mock-task-0.1))))
- (home-page "https://tokio.rs")
- (synopsis "Synchronization utilities")
- (description "Synchronization utilities.")
- (license license:expat)))
+ ("rust-tokio-mock-task" ,rust-tokio-mock-task-0.1))))))
(define-public rust-tokio-test-0.2
(package
@@ -27454,6 +29200,39 @@ pool.")
(description "Timer facilities for Tokio.")
(license license:expat)))
+(define-public rust-tokio-tls-0.3
+ (package
+ (name "rust-tokio-tls")
+ (version "0.3.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "tokio-tls" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0hv375949532p32d0w6bm2f6d3r0d00mcdzqjjqlzcmkszyg8w4s"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-native-tls" ,rust-native-tls-0.2)
+ ("rust-tokio" ,rust-tokio-0.2))
+ #:cargo-development-inputs
+ (("rust-cfg-if" ,rust-cfg-if-0.1)
+ ("rust-env-logger" ,rust-env-logger-0.6)
+ ("rust-futures" ,rust-futures-0.3)
+ ("rust-openssl" ,rust-openssl-0.10)
+ ("rust-schannel" ,rust-schannel-0.1)
+ ("rust-security-framework" ,rust-security-framework-0.2)
+ ("rust-tokio" ,rust-tokio-0.2)
+ ("rust-tokio-util" ,rust-tokio-util-0.3)
+ ("rust-winapi" ,rust-winapi-0.3))))
+ (home-page "https://tokio.rs")
+ (synopsis "TLS/SSL streams for Tokio")
+ (description "An implementation of TLS/SSL streams for Tokio giving an
+implementation of TLS for nonblocking I/O streams.")
+ (license license:expat)))
+
(define-public rust-tokio-trace-core-0.2
(package
(name "rust-tokio-trace-core")
@@ -27543,10 +29322,43 @@ pool.")
(description "Unix Domain sockets for Tokio.")
(license license:expat)))
+(define-public rust-tokio-util-0.3
+ (package
+ (name "rust-tokio-util")
+ (version "0.3.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "tokio-util" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "16b48dl6sbc9x944jgjvsd65ab1w2c2qcziddbrbwv1b3y4l50my"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:tests? #f
+ #:cargo-inputs
+ (("rust-bytes" ,rust-bytes-0.5)
+ ("rust-futures-core" ,rust-futures-core-0.3)
+ ("rust-futures-io" ,rust-futures-io-0.3)
+ ("rust-futures-sink" ,rust-futures-sink-0.3)
+ ("rust-log" ,rust-log-0.4)
+ ("rust-pin-project-lite" ,rust-pin-project-lite-0.1)
+ ("rust-tokio" ,rust-tokio-0.2))
+ #:cargo-development-inputs
+ (("rust-futures" ,rust-futures-0.3)
+ ("rust-tokio" ,rust-tokio-0.2)
+ ("rust-tokio-test" ,rust-tokio-test-0.2))))
+ (home-page "https://tokio.rs")
+ (synopsis "Additional utilities for working with Tokio")
+ (description "This package provides additional utilities for working with
+Tokio.")
+ (license license:expat)))
+
(define-public rust-toml-0.5
(package
(name "rust-toml")
- (version "0.5.6")
+ (version "0.5.7")
(source
(origin
(method url-fetch)
@@ -27554,11 +29366,10 @@ pool.")
(file-name (string-append name "-" version ".crate"))
(sha256
(base32
- "06n7j8z63hj6g0kj2x6sqwxnm4q3s0q5d873bdk41vqy1cb2vjgz"))))
+ "0iannv6pb226h0q9vlqg7hdn36fs146yrahw016n107g1fxlbkvm"))))
(build-system cargo-build-system)
(arguments
- `(#:skip-build? #t
- #:cargo-inputs
+ `(#:cargo-inputs
(("rust-indexmap" ,rust-indexmap-1)
("rust-serde" ,rust-serde-1))
#:cargo-development-inputs
@@ -27574,6 +29385,27 @@ serializing Rust structures.")
(license (list license:asl2.0
license:expat))))
+(define-public rust-toml-0.4
+ (package
+ (inherit rust-toml-0.5)
+ (name "rust-toml")
+ (version "0.4.10")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "toml" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "07qilkzinn8z13vq2sss65n2lza7wrmqpvkbclw919m3f7y691km"))))
+ (arguments
+ `(#:cargo-inputs
+ (("rust-serde" ,rust-serde-1))
+ #:cargo-development-inputs
+ (("rust-serde-derive" ,rust-serde-derive-1)
+ ("rust-serde-json" ,rust-serde-json-1))))))
+
(define-public rust-toml-0.2
(package
(name "rust-toml")
@@ -27599,13 +29431,175 @@ serializing Rust structures.")
"This package provides a native Rust encoder and decoder of TOML-formatted
files and streams. Provides implementations of the standard
Serialize/Deserialize traits for TOML data to facilitate deserializing and
-serializing Rust str")
- (license (list license:expat license:asl2.0))))
+serializing Rust structures.")
+ (license (list license:asl2.0
+ license:expat))))
+
+(define-public rust-tower-layer-0.3
+ (package
+ (name "rust-tower-layer")
+ (version "0.3.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "tower-layer" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1p6i9rn5d98wsx6hi4hbxh2xqh2clwz0blcm6jrqiciq4rpnapd3"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-development-inputs
+ (("rust-tower-service" ,rust-tower-service-0.3))))
+ (home-page "https://github.com/tower-rs/tower")
+ (synopsis "Easy composition between @code{Service}s")
+ (description "This package decorates a @code{Service} to allow easy
+composition between @code{Service}s.")
+ (license license:expat)))
+
+(define-public rust-tower-service-0.3
+ (package
+ (name "rust-tower-service")
+ (version "0.3.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "tower-service" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0q4q53w82w1wd71x7vbspg2l3jicb6al2w1qdwxmnjrz8jzvd1z9"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-development-inputs
+ (("rust-http" ,rust-http-0.1))))
+ (home-page "https://github.com/tower-rs/tower")
+ (synopsis "Asynchronous, request / response based, client or server.")
+ (description "This package provides a trait representing an asynchronous,
+request/response based, client or server.")
+ (license license:expat)))
+
+(define-public rust-tower-test-0.3
+ (package
+ (name "rust-tower-test")
+ (version "0.3.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "tower-test" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1j2k07g3z8ascq7r30bmw3b75v8lhd63mhfl60y59a74q71bp94v"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-futures-util" ,rust-futures-util-0.3)
+ ("rust-pin-project" ,rust-pin-project-0.4)
+ ("rust-tokio" ,rust-tokio-0.2)
+ ("rust-tokio-test" ,rust-tokio-test-0.2)
+ ("rust-tower-layer" ,rust-tower-layer-0.3)
+ ("rust-tower-service" ,rust-tower-service-0.3))
+ #:cargo-development-inputs
+ (("rust-tokio" ,rust-tokio-0.2))))
+ (home-page "https://github.com/tower-rs/tower")
+ (synopsis "Utilities for writing client and server @code{Service} tests")
+ (description "This package provides utilities for writing client and
+server @code{Service} tests.")
+ (license license:expat)))
+
+(define-public rust-tower-util-0.3
+ (package
+ (name "rust-tower-util")
+ (version "0.3.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "tower-util" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0x4np2s7h891spvxaarcyainj12a7gvnh7jif9y80cvdh8ckq2fi"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-futures-core" ,rust-futures-core-0.3)
+ ("rust-futures-util" ,rust-futures-util-0.3)
+ ("rust-pin-project" ,rust-pin-project-0.4)
+ ("rust-tower-service" ,rust-tower-service-0.3))
+ #:cargo-development-inputs
+ (("rust-tokio" ,rust-tokio-0.2)
+ ("rust-tokio-test" ,rust-tokio-test-0.2)
+ ("rust-tower-test" ,rust-tower-test-0.3))))
+ (home-page "https://github.com/tower-rs/tower")
+ (synopsis "Utilities for working with @code{Service}")
+ (description "This package provides utilities for working with
+@code{Service}.")
+ (license license:expat)))
+
+(define-public rust-tracing-0.1
+ (package
+ (name "rust-tracing")
+ (version "0.1.20")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "tracing" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0hwgbyflibmsz7x6v7ndchnx1qvv43pg18419ji2y7pflzkmngbi"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-cfg-if" ,rust-cfg-if-0.1)
+ ("rust-log" ,rust-log-0.4)
+ ("rust-tracing-attributes" ,rust-tracing-attributes-0.1)
+ ("rust-tracing-core" ,rust-tracing-core-0.1))
+ #:cargo-development-inputs
+ (("rust-criterion" ,rust-criterion-0.3)
+ ("rust-futures" ,rust-futures-0.1)
+ ("rust-log" ,rust-log-0.4))))
+ (home-page "https://tokio.rs")
+ (synopsis "Application-level tracing for Rust")
+ (description "@code{rust-tracing} is a framework for instrumenting Rust
+programs to collect structured, event-based diagnostic information.")
+ (license license:expat)))
+
+(define-public rust-tracing-attributes-0.1
+ (package
+ (name "rust-tracing-attributes")
+ (version "0.1.11")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "tracing-attributes" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1njady03jycfarjbmbhnrpsl6s9pd9knp50c4z70rnkq6gycrq40"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-proc-macro2" ,rust-proc-macro2-1)
+ ("rust-quote" ,rust-quote-1)
+ ("rust-syn" ,rust-syn-1))
+ #:cargo-development-inputs
+ (("rust-async-trait" ,rust-async-trait-0.1)
+ ("rust-tokio-test" ,rust-tokio-test-0.2)
+ ("rust-tracing" ,rust-tracing-0.1)
+ ("rust-tracing-core" ,rust-tracing-core-0.1)
+ ("rust-tracing-futures" ,rust-tracing-futures-0.2))))
+ (home-page "https://tokio.rs")
+ (synopsis "Automatically instrument functions")
+ (description "This package provides procedural macro attributes for
+automatically instrumenting functions.")
+ (license license:expat)))
(define-public rust-tracing-core-0.1
(package
(name "rust-tracing-core")
- (version "0.1.9")
+ (version "0.1.16")
(source
(origin
(method url-fetch)
@@ -27613,7 +29607,7 @@ serializing Rust str")
(file-name (string-append name "-" version ".crate"))
(sha256
(base32
- "0y0rcvvqq89yaiz0qdx88byxgz8j6hsm9slq8d5vvf3jwc8nz90k"))))
+ "16hisz8nvbav9q6r5lbar2baac097n33q7xqssifwsphy70ldksv"))))
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs
@@ -27625,6 +29619,37 @@ serializing Rust str")
(license (list license:asl2.0
license:expat))))
+(define-public rust-tracing-futures-0.2
+ (package
+ (name "rust-tracing-futures")
+ (version "0.2.4")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "tracing-futures" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0k4vd3jyqz9cx8rbwbp0p93qfp1w6rfk7sc6c1jh1ai18zqvcyxb"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-futures" ,rust-futures-0.3)
+ ("rust-futures-task" ,rust-futures-task-0.3)
+ ("rust-pin-project" ,rust-pin-project-0.4)
+ ("rust-tokio" ,rust-tokio-0.1)
+ ("rust-tokio-executor" ,rust-tokio-executor-0.1)
+ ("rust-tracing" ,rust-tracing-0.1))
+ #:cargo-development-inputs
+ (("rust-tokio" ,rust-tokio-0.1)
+ ("rust-tokio-test" ,rust-tokio-test-0.2)
+ ("rust-tracing-core" ,rust-tracing-core-0.1))))
+ (home-page "https://tokio.rs")
+ (synopsis "Utilities for instrumenting @code{futures} with @code{tracing}")
+ (description "This package provides utilities for instrumenting
+@code{futures} with @code{tracing}.")
+ (license license:expat)))
+
(define-public rust-traitobject-0.1
(package
(name "rust-traitobject")
@@ -27664,18 +29689,236 @@ serializing Rust str")
"This package provides a library for visualizing tree structured data.")
(license license:expat)))
+(define-public rust-trust-dns-https-0.19
+ (package
+ (name "rust-trust-dns-https")
+ (version "0.19.5")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "trust-dns-https" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0s6yiqy98wddc2vid0dypj4cdnvycd4vrrj6l9s7yymq0iqpky5g"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-backtrace" ,rust-backtrace-0.3)
+ ("rust-bytes" ,rust-bytes-0.5)
+ ("rust-data-encoding" ,rust-data-encoding-2)
+ ("rust-futures" ,rust-futures-0.3)
+ ("rust-h2" ,rust-h2-0.2)
+ ("rust-http" ,rust-http-0.2)
+ ("rust-log" ,rust-log-0.4)
+ ("rust-rustls" ,rust-rustls-0.17)
+ ("rust-thiserror" ,rust-thiserror-1)
+ ("rust-tokio" ,rust-tokio-0.2)
+ ("rust-tokio-rustls" ,rust-tokio-rustls-0.13)
+ ("rust-trust-dns-proto" ,rust-trust-dns-proto-0.19)
+ ("rust-trust-dns-rustls" ,rust-trust-dns-rustls-0.19)
+ ("rust-typed-headers" ,rust-typed-headers-0.2)
+ ("rust-webpki" ,rust-webpki-0.21)
+ ("rust-webpki-roots" ,rust-webpki-roots-0.19))
+ #:cargo-development-inputs
+ (("rust-env-logger" ,rust-env-logger-0.7)
+ ("rust-futures" ,rust-futures-0.3))))
+ (home-page "http://www.trust-dns.org/index.html")
+ (synopsis "DNS over HTTPS extension for the Trust-DNS client")
+ (description "Trust-DNS is a safe and secure DNS library. This is an
+extension for the Trust-DNS client to use DNS over HTTPS.")
+ (license (list license:expat license:asl2.0))))
+
+(define-public rust-trust-dns-native-tls-0.19
+ (package
+ (name "rust-trust-dns-native-tls")
+ (version "0.19.5")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "trust-dns-native-tls" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "173443yivsiyzvnai4h53v71br8jsz4zjwhp83q3x4hnh6306ymv"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-futures" ,rust-futures-0.3)
+ ("rust-native-tls" ,rust-native-tls-0.2)
+ ("rust-tokio" ,rust-tokio-0.2)
+ ("rust-tokio-tls" ,rust-tokio-tls-0.3)
+ ("rust-trust-dns-proto" ,rust-trust-dns-proto-0.19))))
+ (home-page "http://www.trust-dns.org/index.html")
+ (synopsis "native-tls extension for the Trust-DNS client")
+ (description "Trust-DNS is a safe and secure DNS library. This is an
+extension for the Trust-DNS client to use native-tls for TLS.")
+ (license (list license:expat license:asl2.0))))
+
+(define-public rust-trust-dns-openssl-0.19
+ (package
+ (name "rust-trust-dns-openssl")
+ (version "0.19.5")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "trust-dns-openssl" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0as4jzrscjlmgj04l2aa2lf09vpd0fg5v0vfz019ybxgiqn89g45"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-futures" ,rust-futures-0.3)
+ ("rust-openssl" ,rust-openssl-0.10)
+ ("rust-tokio" ,rust-tokio-0.2)
+ ("rust-tokio-openssl" ,rust-tokio-openssl-0.4)
+ ("rust-trust-dns-proto" ,rust-trust-dns-proto-0.19))
+ #:cargo-development-inputs
+ (("rust-openssl" ,rust-openssl-0.10)
+ ("rust-tokio" ,rust-tokio-0.2))))
+ (home-page "http://www.trust-dns.org/index.html")
+ (synopsis "tokio-openssl extension for the Trust-DNS client")
+ (description "Trust-DNS is a safe and secure DNS library. This is an
+extension for the Trust-DNS client to use tokio-openssl for TLS.")
+ (license (list license:expat license:asl2.0))))
+
+(define-public rust-trust-dns-proto-0.19
+ (package
+ (name "rust-trust-dns-proto")
+ (version "0.19.5")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "trust-dns-proto" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0a4zlv60kkbg1nvy3zh18fdg681z83yzppzy39rdkm7llqdhdmyd"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-async-trait" ,rust-async-trait-0.1)
+ ("rust-backtrace" ,rust-backtrace-0.3)
+ ("rust-data-encoding" ,rust-data-encoding-2)
+ ("rust-enum-as-inner" ,rust-enum-as-inner-0.3)
+ ("rust-futures" ,rust-futures-0.3)
+ ("rust-idna" ,rust-idna-0.2)
+ ("rust-js-sys" ,rust-js-sys-0.3)
+ ("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-log" ,rust-log-0.4)
+ ("rust-openssl" ,rust-openssl-0.10)
+ ("rust-rand" ,rust-rand-0.7)
+ ("rust-ring" ,rust-ring-0.16)
+ ("rust-serde" ,rust-serde-1)
+ ("rust-smallvec" ,rust-smallvec-1)
+ ("rust-socket2" ,rust-socket2-0.3)
+ ("rust-thiserror" ,rust-thiserror-1)
+ ("rust-tokio" ,rust-tokio-0.2)
+ ("rust-url" ,rust-url-2)
+ ("rust-wasm-bindgen" ,rust-wasm-bindgen-0.2))
+ #:cargo-development-inputs
+ (("rust-env-logger" ,rust-env-logger-0.7)
+ ("rust-futures" ,rust-futures-0.3)
+ ("rust-tokio" ,rust-tokio-0.2))))
+ (home-page "http://www.trust-dns.org/index.html")
+ (synopsis "Safe and secure DNS library")
+ (description "Trust-DNS is a safe and secure DNS library. This is the
+foundational DNS protocol library for all Trust-DNS projects.")
+ (license (list license:expat license:asl2.0))))
+
+(define-public rust-trust-dns-resolver-0.19
+ (package
+ (name "rust-trust-dns-resolver")
+ (version "0.19.5")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "trust-dns-resolver" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0xqv31gndybcrr5gi6jjp47qcvdxsc147s69a0y0nc6qqgyws8qg"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-backtrace" ,rust-backtrace-0.3)
+ ("rust-cfg-if" ,rust-cfg-if-0.1)
+ ("rust-futures" ,rust-futures-0.3)
+ ("rust-ipconfig" ,rust-ipconfig-0.2)
+ ("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-log" ,rust-log-0.4)
+ ("rust-lru-cache" ,rust-lru-cache-0.1)
+ ("rust-resolv-conf" ,rust-resolv-conf-0.6)
+ ("rust-rustls" ,rust-rustls-0.17)
+ ("rust-serde" ,rust-serde-1)
+ ("rust-smallvec" ,rust-smallvec-1)
+ ("rust-thiserror" ,rust-thiserror-1)
+ ("rust-tokio" ,rust-tokio-0.2)
+ ("rust-tokio-openssl" ,rust-tokio-openssl-0.4)
+ ("rust-tokio-rustls" ,rust-tokio-rustls-0.13)
+ ("rust-tokio-tls" ,rust-tokio-tls-0.3)
+ ("rust-trust-dns-https" ,rust-trust-dns-https-0.19)
+ ("rust-trust-dns-native-tls" ,rust-trust-dns-native-tls-0.19)
+ ("rust-trust-dns-openssl" ,rust-trust-dns-openssl-0.19)
+ ("rust-trust-dns-proto" ,rust-trust-dns-proto-0.19)
+ ("rust-trust-dns-rustls" ,rust-trust-dns-rustls-0.19)
+ ("rust-webpki-roots" ,rust-webpki-roots-0.19))
+ #:cargo-development-inputs
+ (("rust-env-logger" ,rust-env-logger-0.7)
+ ("rust-futures" ,rust-futures-0.3))))
+ (home-page "http://www.trust-dns.org/index.html")
+ (synopsis "Safe and secure DNS library")
+ (description "Trust-DNS is a safe and secure DNS library. This Resolver
+library uses the Client library to perform all DNS queries. The Resolver is
+intended to be a high-level library for any DNS record resolution see Resolver
+and AsyncResolver for supported resolution types. The Client can be used for
+other queries.")
+ (license (list license:expat license:asl2.0))))
+
+(define-public rust-trust-dns-rustls-0.19
+ (package
+ (name "rust-trust-dns-rustls")
+ (version "0.19.5")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "trust-dns-rustls" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1hj4fx2x4ncj7v8pf6bbn7634zq76hjigm1s2h6b6yjzzmz4yprn"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-futures" ,rust-futures-0.3)
+ ("rust-log" ,rust-log-0.4)
+ ("rust-rustls" ,rust-rustls-0.17)
+ ("rust-tokio" ,rust-tokio-0.2)
+ ("rust-tokio-rustls" ,rust-tokio-rustls-0.13)
+ ("rust-trust-dns-proto" ,rust-trust-dns-proto-0.19)
+ ("rust-webpki" ,rust-webpki-0.21))
+ #:cargo-development-inputs
+ (("rust-openssl" ,rust-openssl-0.10))))
+ (home-page "http://www.trust-dns.org/index.html")
+ (synopsis "rustls extension for the Trust-DNS client")
+ (description "Trust-DNS is a safe and secure DNS library. This is an
+extension for the Trust-DNS client to use rustls for TLS.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-try-from-0.3
(package
(name "rust-try-from")
(version "0.3.2")
(source
- (origin
- (method url-fetch)
- (uri (crate-uri "try_from" version))
- (file-name (string-append name "-" version ".crate"))
- (sha256
- (base32
- "12wdd4ja7047sd3rx70hv2056hyc8gcdllcx3a41g1rnw64kng98"))))
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "try_from" version))
+ (file-name (string-append name "-" version ".crate"))
+ (sha256
+ (base32
+ "12wdd4ja7047sd3rx70hv2056hyc8gcdllcx3a41g1rnw64kng98"))))
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs
@@ -27705,7 +29948,7 @@ serializing Rust str")
"This package provides a lightweight atomic lock.")
(license license:expat)))
-(define-public rust-trybuild-1.0
+(define-public rust-trybuild-1
(package
(name "rust-trybuild")
(version "1.0.23")
@@ -27773,6 +30016,32 @@ serializing Rust str")
"The arena, a fast but limited type of allocator.")
(license license:expat)))
+(define-public rust-typed-headers-0.2
+ (package
+ (name "rust-typed-headers")
+ (version "0.2.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "typed-headers" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0jm2xzvvml3a9hhvzf9q4v22l5ifrxrx2kspy7aymknckqgacy9i"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-base64" ,rust-base64-0.11)
+ ("rust-bytes" ,rust-bytes-0.5)
+ ("rust-chrono" ,rust-chrono-0.4)
+ ("rust-http" ,rust-http-0.2)
+ ("rust-mime" ,rust-mime-0.3))))
+ (home-page "https://github.com/sfackler/typed-headers")
+ (synopsis "Typed HTTP header serialization and deserialization")
+ (description "This package provides typed HTTP header serialization and
+deserialization.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-typemap-0.3
(package
(name "rust-typemap")
@@ -27886,6 +30155,72 @@ with the Unicode character database.")
(license (list license:asl2.0
license:expat))))
+(define-public rust-ufmt-0.1
+ (package
+ (name "rust-ufmt")
+ (version "0.1.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "ufmt" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1844qwbmc4m69nfi6xmdcdf4fmjjvypi9rpfg3wgilvrxykwwzif"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-proc-macro-hack" ,rust-proc-macro-hack-0.5)
+ ("rust-ufmt-macros" ,rust-ufmt-macros-0.1)
+ ("rust-ufmt-write" ,rust-ufmt-write-0.1))))
+ (home-page "https://crates.io/crates/ufmt")
+ (synopsis "Faster and panic-free alternative to @code{core::fmt}")
+ (description "This package provides a (6-40x) smaller, (2-9x) faster and
+panic-free alternative to @code{core::fmt}.")
+ (license (list license:expat license:asl2.0))))
+
+(define-public rust-ufmt-macros-0.1
+ (package
+ (name "rust-ufmt-macros")
+ (version "0.1.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "ufmt-macros" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0sf0z9f6kjw5h15xd1hlj46dgri59lqwin1fxrcdradzl8s3x0gd"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-proc-macro-hack" ,rust-proc-macro-hack-0.5)
+ ("rust-proc-macro2" ,rust-proc-macro2-1)
+ ("rust-quote" ,rust-quote-1)
+ ("rust-syn" ,rust-syn-1))))
+ (home-page "https://github.com/japaric/ufmt")
+ (synopsis "μfmt macros")
+ (description "This package provides μfmt macros.")
+ (license (list license:expat license:asl2.0))))
+
+(define-public rust-ufmt-write-0.1
+ (package
+ (name "rust-ufmt-write")
+ (version "0.1.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "ufmt-write" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0sdx0r6ah9xr3nydrqxj01v25sb956c0jk5rqf6f5i9fnkb2wyp8"))))
+ (build-system cargo-build-system)
+ (home-page "https://github.com/japaric/ufmt")
+ (synopsis "μfmt's uWrite trait")
+ (description "This package provides @code{μfmt}'s @code{uWrite} trait.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-unchecked-index-0.2
(package
(name "rust-unchecked-index")
@@ -28047,20 +30382,20 @@ boundaries according to Unicode Standard Annex #29 rules.")
(define-public rust-unicode-width-0.1
(package
(name "rust-unicode-width")
- (version "0.1.7")
+ (version "0.1.8")
(source
(origin
(method url-fetch)
(uri (crate-uri "unicode-width" version))
- (file-name (string-append name "-" version ".crate"))
+ (file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
- "0yflmxkxmm89ckrb3sz58whn491aycrj8cxra0hzzlb72x9rvana"))))
+ "1qxizyi6xbcqyi4z79p523ywvmgsfcgfqb3zv3c8i6x1jcc5jdwk"))))
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs
(("rust-compiler-builtins" ,rust-compiler-builtins-0.1)
- ("rust-rustc-std-workspace-core" ,rust-rustc-std-workspace-core-1.0)
+ ("rust-rustc-std-workspace-core" ,rust-rustc-std-workspace-core-1)
("rust-rustc-std-workspace-std" ,rust-rustc-std-workspace-std-1.0))))
(home-page "https://github.com/unicode-rs/unicode-width")
(synopsis "Determine displayed width according to Unicode rules")
@@ -28137,6 +30472,28 @@ whitespace from a string.")
(license (list license:asl2.0
license:expat))))
+(define-public rust-universal-hash-0.4
+ (package
+ (name "rust-universal-hash")
+ (version "0.4.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "universal-hash" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "00hljq64l0p68yrncvyww4cdgkzpzl49vrlnj57kwblkak3b49l3"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-generic-array" ,rust-generic-array-0.14)
+ ("rust-subtle" ,rust-subtle-2))))
+ (home-page "https://github.com/RustCrypto/traits")
+ (synopsis "Trait for universal hash functions")
+ (description "This package provides traits for universal hash functions.")
+ (license (list license:expat license:asl2.0))))
+
(define-public rust-unix-socket-0.5
(package
(name "rust-unix-socket")
@@ -28238,7 +30595,7 @@ untrusted inputs in Rust.")
(sha256
(base32 "0byf88b7ca1kb5aap8f6npp6xncvg95dnma8ipmnmd4n9r5izkam"))))))
-(define-public rust-url-2.1
+(define-public rust-url-2
(package
(name "rust-url")
(version "2.1.1")
@@ -28257,7 +30614,7 @@ untrusted inputs in Rust.")
#:cargo-inputs
(("rust-idna" ,rust-idna-0.2)
("rust-matches" ,rust-matches-0.1)
- ("rust-percent-encoding" ,rust-percent-encoding-2.1)
+ ("rust-percent-encoding" ,rust-percent-encoding-2)
("rust-serde" ,rust-serde-1))
#:cargo-development-inputs
(("rust-bencher" ,rust-bencher-0.1)
@@ -28269,9 +30626,9 @@ untrusted inputs in Rust.")
"URL library for Rust, based on the WHATWG URL Standard.")
(license (list license:asl2.0 license:expat))))
-(define-public rust-url-1.7
+(define-public rust-url-1
(package
- (inherit rust-url-2.1)
+ (inherit rust-url-2)
(name "rust-url")
(version "1.7.2")
(source
@@ -28525,7 +30882,7 @@ Unix users and groups.")
(arguments
`(#:skip-build? #t
#:cargo-inputs
- (("rust-byteorder" ,rust-byteorder-1.3)
+ (("rust-byteorder" ,rust-byteorder-1)
("rust-md5" ,rust-md5-0.6)
("rust-rand" ,rust-rand-0.6)
("rust-serde" ,rust-serde-1)
@@ -28726,7 +31083,7 @@ If that fails, no determination is made, and calls return None.")
("rust-semver-parser" ,rust-semver-parser-0.9)
("rust-syn" ,rust-syn-0.15)
("rust-toml" ,rust-toml-0.5)
- ("rust-url" ,rust-url-1.7))))
+ ("rust-url" ,rust-url-1))))
(home-page "https://github.com/mgeisler/version-sync")
(synopsis
"Ensure that version numbers are updated when the crate version changes")
@@ -28735,6 +31092,36 @@ If that fails, no determination is made, and calls return None.")
updated when the crate version changes.")
(license license:expat)))
+(define-public rust-version-sync-0.6
+ (package
+ (inherit rust-version-sync-0.8)
+ (name "rust-version-sync")
+ (version "0.6.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "version-sync" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0n33s4s4k9sy7rhlrf9lwwyqkjrgwnpfjsz0xzhfh3d3w33jaiq8"))
+ (modules '((guix build utils)))
+ (snippet
+ '(begin (substitute* "Cargo.toml"
+ (("~1.1") "1.1"))
+ #t))))
+ (arguments
+ `(#:cargo-inputs
+ (("rust-itertools" ,rust-itertools-0.7)
+ ("rust-lazy-static" ,rust-lazy-static-1)
+ ("rust-pulldown-cmark" ,rust-pulldown-cmark-0.1)
+ ("rust-regex" ,rust-regex-1)
+ ("rust-semver-parser" ,rust-semver-parser-0.9)
+ ("rust-syn" ,rust-syn-0.15)
+ ("rust-toml" ,rust-toml-0.4)
+ ("rust-url" ,rust-url-1))))))
+
(define-public rust-void-1
(package
(name "rust-void")
@@ -28900,6 +31287,32 @@ specified across Unix and Windows platforms.")
("rust-rand" ,rust-rand-0.3)
("rust-rustc-serialize" ,rust-rustc-serialize-0.3))))))
+(define-public rust-want-0.3
+ (package
+ (name "rust-want")
+ (version "0.3.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "want" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "181b2zmwfq389x9n2g1n37cvcvvdand832zz6v8i1l8wrdlaks0w"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-log" ,rust-log-0.4)
+ ("rust-try-lock" ,rust-try-lock-0.2))
+ #:cargo-development-inputs
+ (("rust-tokio-executor" ,rust-tokio-executor-0.2)
+ ("rust-tokio-sync" ,rust-tokio-sync-0.2))))
+ (home-page "https://github.com/seanmonstar/want")
+ (synopsis "Detect when another future wants a result")
+ (description "This package lets you detect when another future wants a
+result.")
+ (license license:expat)))
+
(define-public rust-want-0.2
(package
(name "rust-want")
@@ -28941,8 +31354,8 @@ specified across Unix and Windows platforms.")
`(#:skip-build? #t
#:cargo-inputs
(("rust-compiler-builtins" ,rust-compiler-builtins-0.1)
- ("rust-rustc-std-workspace-alloc" ,rust-rustc-std-workspace-alloc-1.0)
- ("rust-rustc-std-workspace-core" ,rust-rustc-std-workspace-core-1.0))))
+ ("rust-rustc-std-workspace-alloc" ,rust-rustc-std-workspace-alloc-1)
+ ("rust-rustc-std-workspace-core" ,rust-rustc-std-workspace-core-1))))
(home-page "https://github.com/bytecodealliance/wasi")
(synopsis "Experimental WASI API bindings for Rust")
(description
@@ -29034,6 +31447,32 @@ in Rust.")
"Backend code generation of the wasm-bindgen tool.")
(license (list license:expat license:asl2.0))))
+(define-public rust-wasm-bindgen-console-logger-0.1
+ (package
+ (name "rust-wasm-bindgen-console-logger")
+ (version "0.1.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "wasm-bindgen-console-logger" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1vc506dhrk2yl0snkcn45s5adndq9wj7ipxb7awbbxzswxss4c3m"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-log" ,rust-log-0.4)
+ ("rust-wasm-bindgen" ,rust-wasm-bindgen-0.2))))
+ (home-page "https://github.com/blm768/wasm-bindgen-console-logger")
+ (synopsis "Rust log and JavaScript console logging integration")
+ (description
+ "This package provides a logging facility that integrates the
+log crate with JavaScript console logging functions with the help of
+wasm-bindgen.")
+ (license license:cc0)))
+
(define-public rust-wasm-bindgen-futures-0.4
(package
(name "rust-wasm-bindgen-futures")
@@ -29112,7 +31551,7 @@ in Rust.")
("rust-wasm-bindgen-macro-support"
,rust-wasm-bindgen-macro-support-0.2))
#:cargo-development-inputs
- (("rust-trybuild" ,rust-trybuild-1.0)
+ (("rust-trybuild" ,rust-trybuild-1)
("rust-wasm-bindgen" ,rust-wasm-bindgen-0.2)
("rust-wasm-bindgen-futures" ,rust-wasm-bindgen-futures-0.4))))
(home-page "https://rustwasm.github.io/wasm-bindgen/")
@@ -29345,310 +31784,6 @@ attribute that is not in the shared backend crate.")
"Support for parsing WebIDL specific to wasm-bindgen.")
(license (list license:expat license:asl2.0))))
-(define-public rust-wayland-client-0.23
- (package
- (name "rust-wayland-client")
- (version "0.23.6")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "wayland-client" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "1nmw2kz70llc5mxwzg6bglnqy0qnyr9224zjmq9czazgw3mq045g"))))
- (build-system cargo-build-system)
- (arguments
- `(#:cargo-inputs
- (("rust-bitflags" ,rust-bitflags-1)
- ("rust-calloop" ,rust-calloop-0.4)
- ("rust-downcast-rs" ,rust-downcast-rs-1.1)
- ("rust-libc" ,rust-libc-0.2)
- ("rust-mio" ,rust-mio-0.6)
- ("rust-nix" ,rust-nix-0.14)
- ("rust-wayland-commons" ,rust-wayland-commons-0.23)
- ("rust-wayland-sys" ,rust-wayland-sys-0.23)
- ("rust-wayland-scanner" ,rust-wayland-scanner-0.23))
- #:cargo-development-inputs
- (("rust-byteorder" ,rust-byteorder-1.3)
- ("rust-tempfile" ,rust-tempfile-3))))
- (home-page "https://github.com/smithay/wayland-rs")
- (synopsis
- "Rust bindings to the standard C implementation of the wayland protocol")
- (description
- "This package provides Rust bindings to the standard C implementation of
-the wayland protocol, client side.")
- (license license:expat)))
-
-(define-public rust-wayland-client-0.21
- (package
- (inherit rust-wayland-client-0.23)
- (name "rust-wayland-client")
- (version "0.21.13")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "wayland-client" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "04r7dy074hhdalsi1day482wvmczr40hg7qvrnzkgxpakrgkx5j9"))))
- (arguments
- `(#:cargo-inputs
- (("rust-bitflags" ,rust-bitflags-1)
- ("rust-calloop" ,rust-calloop-0.4)
- ("rust-downcast-rs" ,rust-downcast-rs-1.1)
- ("rust-libc" ,rust-libc-0.2)
- ("rust-mio" ,rust-mio-0.6)
- ("rust-nix" ,rust-nix-0.14)
- ("rust-wayland-commons" ,rust-wayland-commons-0.21)
- ("rust-wayland-sys" ,rust-wayland-sys-0.21)
- ("rust-wayland-scanner" ,rust-wayland-scanner-0.21))
- #:cargo-development-inputs
- (("rust-byteorder" ,rust-byteorder-1.3)
- ("rust-tempfile" ,rust-tempfile-3))))))
-
-(define-public rust-wayland-commons-0.23
- (package
- (name "rust-wayland-commons")
- (version "0.23.6")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "wayland-commons" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "1nyvcs6xxxzqgh0wvc7z0fgi89bf3h9p4qrbf77bnfbwlb8v0rmv"))))
- (build-system cargo-build-system)
- (arguments
- `(#:cargo-inputs
- (("rust-nix" ,rust-nix-0.14)
- ("rust-wayland-sys" ,rust-wayland-sys-0.23))))
- (home-page "https://github.com/smithay/wayland-rs")
- (synopsis
- "Common types and structures used by wayland-client and wayland-server")
- (description
- "Common types and structures used by wayland-client and wayland-server.")
- (license license:expat)))
-
-(define-public rust-wayland-commons-0.21
- (package
- (inherit rust-wayland-commons-0.23)
- (name "rust-wayland-commons")
- (version "0.21.13")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "wayland-commons" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "1v1jpcsnn6cwwy5ii5pdl58i6b9slmi8mn4my4fpwrlbfsb8ih20"))))
- (arguments
- `(#:cargo-inputs
- (("rust-nix" ,rust-nix-0.14)
- ("rust-wayland-sys" ,rust-wayland-sys-0.21))))))
-
-(define-public rust-wayland-protocols-0.23
- (package
- (name "rust-wayland-protocols")
- (version "0.23.6")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "wayland-protocols" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "1ygwbzqlnks5xzafka3c8ag6k92g2h6ygj2xsmvjfx2n6rj8dhkc"))))
- (build-system cargo-build-system)
- (arguments
- `(#:cargo-inputs
- (("rust-bitflags" ,rust-bitflags-1)
- ("rust-wayland-client" ,rust-wayland-client-0.23)
- ("rust-wayland-commons" ,rust-wayland-commons-0.23)
- ("rust-wayland-server" ,rust-wayland-server-0.23)
- ("rust-wayland-scanner" ,rust-wayland-scanner-0.23))))
- (home-page "https://github.com/smithay/wayland-rs")
- (synopsis
- "Generated API for the officials wayland protocol extensions")
- (description
- "Generated API for the officials wayland protocol extensions.")
- (license license:expat)))
-
-(define-public rust-wayland-protocols-0.21
- (package
- (inherit rust-wayland-protocols-0.23)
- (name "rust-wayland-protocols")
- (version "0.21.13")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "wayland-protocols" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "0i91yh3nxk9llhly2ly3nvlfx0lbpvyq919cgmnyx3j25bmf5zaa"))))
- (arguments
- `(#:cargo-inputs
- (("rust-bitflags" ,rust-bitflags-1)
- ("rust-wayland-client" ,rust-wayland-client-0.21)
- ("rust-wayland-commons" ,rust-wayland-commons-0.21)
- ("rust-wayland-server" ,rust-wayland-server-0.21)
- ("rust-wayland-sys" ,rust-wayland-sys-0.21)
- ("rust-wayland-scanner" ,rust-wayland-scanner-0.21))))))
-
-(define-public rust-wayland-scanner-0.23
- (package
- (name "rust-wayland-scanner")
- (version "0.23.6")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "wayland-scanner" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "0g8wcphykjrcpslznyi3qccx1pckw97rckq5b295nfbg6r3j5c4k"))))
- (build-system cargo-build-system)
- (arguments
- `(#:cargo-inputs
- (("rust-proc-macro2" ,rust-proc-macro2-0.4)
- ("rust-quote" ,rust-quote-0.6)
- ("rust-xml-rs" ,rust-xml-rs-0.8))))
- (home-page "https://github.com/smithay/wayland-rs")
- (synopsis "Generate Rust APIs from XML Wayland protocol files")
- (description
- "Wayland Scanner generates Rust APIs from XML Wayland protocol files.
-It is intended for use with wayland-sys. You should only need this crate if
-you are working on custom Wayland protocol extensions.
-Look at the wayland-client crate for usable bindings.")
- (license license:expat)))
-
-(define-public rust-wayland-scanner-0.21
- (package
- (inherit rust-wayland-scanner-0.23)
- (name "rust-wayland-scanner")
- (version "0.21.13")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "wayland-scanner" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "17mp49v7w0p0x5ry628lj2llljnwkr9aj9g4bqqhfibid32jhf5z"))))))
-
-(define-public rust-wayland-server-0.23
- (package
- (name "rust-wayland-server")
- (version "0.23.6")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "wayland-server" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "1ccsalq6gnf07klnbjx2dxcbibhw03rqsgi578p913s3zsjlcg8a"))))
- (build-system cargo-build-system)
- (arguments
- `(#:cargo-inputs
- (("rust-bitflags" ,rust-bitflags-1)
- ("rust-calloop" ,rust-calloop-0.4)
- ("rust-downcast-rs" ,rust-downcast-rs-1.1)
- ("rust-libc" ,rust-libc-0.2)
- ("rust-mio" ,rust-mio-0.6)
- ("rust-nix" ,rust-nix-0.14)
- ("rust-wayland-commons" ,rust-wayland-commons-0.23)
- ("rust-wayland-sys" ,rust-wayland-sys-0.23)
- ("rust-wayland-scanner" ,rust-wayland-scanner-0.23))))
- (home-page "https://github.com/smithay/wayland-rs")
- (synopsis
- "Bindings to the standard C implementation of the wayland protocol")
- (description
- "This package provides Rust bindings to the standard C implementation of
-the wayland protocol, server side.")
- (license license:expat)))
-
-(define-public rust-wayland-server-0.21
- (package
- (inherit rust-wayland-server-0.23)
- (name "rust-wayland-server")
- (version "0.21.13")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "wayland-server" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "0ayn4wlrpg0fw04prri9awpkjvbzjil0d3l3a8zs9pdbnspvw6ah"))))
- (arguments
- `(#:cargo-inputs
- (("rust-bitflags" ,rust-bitflags-1)
- ("rust-calloop" ,rust-calloop-0.4)
- ("rust-downcast-rs" ,rust-downcast-rs-1.1)
- ("rust-libc" ,rust-libc-0.2)
- ("rust-mio" ,rust-mio-0.6)
- ("rust-nix" ,rust-nix-0.14)
- ("rust-wayland-commons" ,rust-wayland-commons-0.21)
- ("rust-wayland-sys" ,rust-wayland-sys-0.21)
- ("rust-wayland-scanner" ,rust-wayland-scanner-0.21))))))
-
-(define-public rust-wayland-sys-0.23
- (package
- (name "rust-wayland-sys")
- (version "0.23.6")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "wayland-sys" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "1x2qafvj8hd2x5qfaan2dfpw9amg0f5g9sqrkdy7qvbddsl8jknr"))))
- (build-system cargo-build-system)
- (arguments
- `(#:cargo-inputs
- (("rust-dlib" ,rust-dlib-0.4)
- ("rust-lazy-static" ,rust-lazy-static-1)
- ("rust-libc" ,rust-libc-0.2))))
- (home-page "https://github.com/smithay/wayland-rs")
- (synopsis "FFI bindings to the various libwayland-*.so libraries")
- (description
- "FFI bindings to the various libwayland-*.so libraries.
-You should only need this crate if you are working on custom wayland
-protocol extensions. Look at the crate wayland-client for usable bindings.")
- (license license:expat)))
-
-(define-public rust-wayland-sys-0.21
- (package
- (inherit rust-wayland-sys-0.23)
- (name "rust-wayland-sys")
- (version "0.21.13")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "wayland-sys" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "0a0ndgkg98pvmkv44yya4f7mxzjaxylknqh64bpa05w0azyv02jj"))))))
-
(define-public rust-web-sys-0.3
(package
(name "rust-web-sys")
@@ -29721,25 +31856,56 @@ Verification.")
#:cargo-development-inputs
(("rust-base64" ,rust-base64-0.9))))))
-(define-public rust-webpki-roots-0.18
+(define-public rust-webpki-roots-0.20
(package
(name "rust-webpki-roots")
- (version "0.18.0")
+ (version "0.20.0")
(source
(origin
(method url-fetch)
(uri (crate-uri "webpki-roots" version))
- (file-name (string-append name "-" version ".tar.gz"))
- (sha256
- (base32 "1d4ss607rgi9pj01zzqa13c1p3m35z314yh6lmjaj4kzvwv5gkci"))))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "17qpmyym1lsi967b4nc3112nb13ism8731bhjqd9hlajafkxw80g"))))
(build-system cargo-build-system)
(arguments
- `(#:cargo-inputs (("rust-webpki" ,rust-webpki-0.21))))
+ `(#:cargo-inputs
+ (("rust-webpki" ,rust-webpki-0.21))))
(home-page "https://github.com/ctz/webpki-roots")
(synopsis "Mozilla's CA root certificates for use with webpki")
- (description "Mozilla's CA root certificates for use with webpki")
+ (description "This package provides Mozilla's CA root certificates for use
+with webpki.")
(license license:mpl2.0)))
+(define-public rust-webpki-roots-0.19
+ (package
+ (inherit rust-webpki-roots-0.20)
+ (name "rust-webpki-roots")
+ (version "0.19.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "webpki-roots" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0fapdqwbfv0kncplpvbgnr0bjd5a9krlpij9jdzk0mvaa6vz9vzq"))))))
+
+(define-public rust-webpki-roots-0.18
+ (package
+ (inherit rust-webpki-roots-0.19)
+ (name "rust-webpki-roots")
+ (version "0.18.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "webpki-roots" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32 "1d4ss607rgi9pj01zzqa13c1p3m35z314yh6lmjaj4kzvwv5gkci"))))))
+
(define-public rust-webpki-roots-0.17
(package/inherit rust-webpki-roots-0.18
(name "rust-webpki-roots")
@@ -29790,7 +31956,7 @@ Verification.")
"This package provides a WebIDL Parser.")
(license license:expat)))
-(define-public rust-which-3.1
+(define-public rust-which-3
(package
(name "rust-which")
(version "3.1.1")
@@ -29865,6 +32031,31 @@ Locate installed executable in cross platforms.")
#:cargo-development-inputs
(("rust-tempdir" ,rust-tempdir-0.3))))))
+(define-public rust-wide-0.4
+ (package
+ (name "rust-wide")
+ (version "0.4.6")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "wide" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0ad75vnzygj8qfcl1l9n4wi93xmqzvhqlpqn4hfayrwbn6wa69aq"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-bytemuck" ,rust-bytemuck-1))))
+ (home-page "https://github.com/Lokathor/wide")
+ (synopsis "Rust for wide blocks")
+ (description "This crate has data types for blocks of primitives packed
+together and used as a single unit. This works very well with SIMD/vector
+hardware of various targets. Both in terms of explicit SIMD usage and also in
+terms of allowing LLVM's auto-vectorizer to do its job.")
+ (license license:zlib)))
+
(define-public rust-widestring-0.4
(package
(name "rust-widestring")
@@ -30039,102 +32230,6 @@ color in a Windows console.")
(license (list license:unlicense
license:expat))))
-(define-public rust-winit-0.20
- (package
- (name "rust-winit")
- (version "0.20.0-alpha6")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "winit" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "1g5cchl97zcg525j6jdr77yby8cmhwv1qqwcd3sf4l4zl263195z"))
- (patches
- (list
- (origin
- (method url-fetch)
- (uri "https://github.com/rust-windowing/winit/commit/d1c6506865c7bddbb5fb4d80a613e43ddc1370b5.patch")
- (file-name (string-append name "-fix-bindings.patch"))
- (sha256
- (base32
- "03q4bvdq86kii53d0vsywv08g8vqirf9h1lz2cl6rcc7gjfynpds")))))))
- (build-system cargo-build-system)
- (arguments
- `(#:cargo-inputs
- (("rust-android-glue" ,rust-android-glue-0.2)
- ("rust-bitflags" ,rust-bitflags-1)
- ("rust-calloop" ,rust-calloop-0.4)
- ("rust-cocoa" ,rust-cocoa-0.19)
- ("rust-core-foundation" ,rust-core-foundation-0.6)
- ("rust-core-graphics" ,rust-core-graphics-0.17)
- ("rust-core-video-sys" ,rust-core-video-sys-0.1)
- ("rust-dispatch" ,rust-dispatch-0.1)
- ("rust-instant" ,rust-instant-0.1)
- ("rust-lazy-static" ,rust-lazy-static-1)
- ("rust-libc" ,rust-libc-0.2)
- ("rust-log" ,rust-log-0.4)
- ("rust-objc" ,rust-objc-0.2)
- ("rust-parking-lot" ,rust-parking-lot-0.10)
- ("rust-percent-encoding" ,rust-percent-encoding-2.1)
- ("rust-raw-window-handle" ,rust-raw-window-handle-0.3)
- ("rust-serde" ,rust-serde-1)
- ("rust-smithay-client-toolkit" ,rust-smithay-client-toolkit-0.6)
- ("rust-stdweb" ,rust-stdweb-0.4)
- ("rust-wasm-bindgen" ,rust-wasm-bindgen-0.2)
- ("rust-wayland-client" ,rust-wayland-client-0.23)
- ("rust-web-sys" ,rust-web-sys-0.3)
- ("rust-winapi" ,rust-winapi-0.3)
- ("rust-x11-dl" ,rust-x11-dl-2))
- #:cargo-development-inputs
- (("rust-console-log" ,rust-console-log-0.1)
- ("rust-env-logger" ,rust-env-logger-0.5)
- ("rust-image" ,rust-image-0.21))))
- (home-page "https://github.com/rust-windowing/winit")
- (synopsis
- "Cross-platform window creation library")
- (description
- "Cross-platform window creation library.")
- (license license:asl2.0)))
-
-(define-public rust-winit-0.19
- (package
- (inherit rust-winit-0.20)
- (name "rust-winit")
- (version "0.19.5")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "winit" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "1a4lnfyvlc4jabhs30wlmkgdjv7qhbplmyp833kl7ykjni5yp5hy"))))
- (arguments
- `(#:cargo-inputs
- (("rust-android-glue" ,rust-android-glue-0.2)
- ("rust-backtrace" ,rust-backtrace-0.3)
- ("rust-bitflags" ,rust-bitflags-1)
- ("rust-cocoa" ,rust-cocoa-0.18)
- ("rust-core-foundation" ,rust-core-foundation-0.6)
- ("rust-core-graphics" ,rust-core-graphics-0.17)
- ("rust-image" ,rust-image-0.21)
- ("rust-lazy-static" ,rust-lazy-static-1)
- ("rust-libc" ,rust-libc-0.2)
- ("rust-log" ,rust-log-0.4)
- ("rust-objc" ,rust-objc-0.2)
- ("rust-parking-lot" ,rust-parking-lot-0.9)
- ("rust-percent-encoding" ,rust-percent-encoding-2.1)
- ("rust-raw-window-handle" ,rust-raw-window-handle-0.3)
- ("rust-serde" ,rust-serde-1)
- ("rust-smithay-client-toolkit" ,rust-smithay-client-toolkit-0.4)
- ("rust-wayland-client" ,rust-wayland-client-0.21)
- ("rust-winapi" ,rust-winapi-0.3)
- ("rust-x11-dl" ,rust-x11-dl-2))))))
-
(define-public rust-winpty-sys-0.4
(package
(name "rust-winpty-sys")
@@ -30159,6 +32254,33 @@ color in a Windows console.")
(description "Rust winpty bindings.")
(license license:expat)))
+(define-public rust-winreg-0.7
+ (package
+ (name "rust-winreg")
+ (version "0.7.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "winreg" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0sdxcyvda4v1v6a0k1j2v1400z3ng323k9a56gxvkq51x21dn801"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-chrono" ,rust-chrono-0.4)
+ ("rust-serde" ,rust-serde-1)
+ ("rust-winapi" ,rust-winapi-0.3))
+ #:cargo-development-inputs
+ (("rust-rand" ,rust-rand-0.3)
+ ("rust-serde-derive" ,rust-serde-derive-1))))
+ (home-page "https://github.com/gentoo90/winreg-rs")
+ (synopsis "Rust bindings to the MS Windows Registry API")
+ (description "This package provides Rust bindings to MS Windows Registry
+API.")
+ (license license:expat)))
+
(define-public rust-winreg-0.6
(package
(name "rust-winreg")
@@ -30236,77 +32358,6 @@ color in a Windows console.")
"Contains function definitions for the Windows API library ws2_32.")
(license license:expat)))
-(define-public rust-x11-2
- (package
- (name "rust-x11")
- (version "2.18.1")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "x11" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "0dg2d0yrqmwg6prpxkw3vpmwzwxnaki2cn0v64ylh5gp4cqpws9r"))))
- (build-system cargo-build-system)
- (arguments
- `(#:cargo-inputs
- (("rust-libc" ,rust-libc-0.2)
- ("rust-pkg-config" ,rust-pkg-config-0.3))))
- (home-page "https://github.com/erlepereira/x11-rs.git")
- (synopsis "X11 library bindings for Rust")
- (description "X11 library bindings for Rust.")
- (license license:cc0)))
-
-(define-public rust-x11-clipboard-0.4
- (package
- (name "rust-x11-clipboard")
- (version "0.4.0")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "x11-clipboard" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "0nqdnswiyj28b1izjp5rzbc67cxpb5c8p4vh1xyndkirzs84vqqk"))))
- (build-system cargo-build-system)
- (arguments
- `(#:tests? #f ; Tests require display server.
- #:cargo-inputs (("rust-xcb" ,rust-xcb-0.9))))
- (native-inputs
- `(("python" ,python)))
- (home-page "https://github.com/quininer/x11-clipboard")
- (synopsis "x11 clipboard support for Rust")
- (description "This package provides x11 clipboard support for Rust.")
- (license license:expat)))
-
-(define-public rust-x11-dl-2
- (package
- (name "rust-x11-dl")
- (version "2.18.5")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "x11-dl" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32 "1y7yq4sfvv56shk4v3s7gvlrwk9d0migj622fl4i4c5klpiq3y9b"))))
- (build-system cargo-build-system)
- (arguments
- `(#:cargo-inputs
- (("rust-lazy-static" ,rust-lazy-static-1)
- ("rust-libc" ,rust-libc-0.2)
- ("rust-maybe-uninit" ,rust-maybe-uninit-2.0)
- ("rust-pkg-config" ,rust-pkg-config-0.3))))
- (home-page "https://github.com/erlepereira/x11-rs.git")
- (synopsis "X11 library bindings for Rust")
- (description "This package provides X11 library bindings for Rust.")
- (license license:cc0)))
-
(define-public rust-xattr-0.2
(package
(name "rust-xattr")
@@ -30327,7 +32378,7 @@ color in a Windows console.")
#:cargo-development-inputs
(("rust-tempfile" ,rust-tempfile-3))))
(home-page "https://github.com/Stebalien/xattr")
- (synopsis "Unix extended filesystem attributes")
+ (synopsis "Unix extended file system attributes")
(description
"This package provide a small library for setting, getting, and listing
extended attributes.")
@@ -30418,6 +32469,29 @@ to XDG Base Directory specification.")
(description "An XML library in pure Rust.")
(license license:expat)))
+(define-public rust-xml-rs-0.7
+ (package
+ (name "rust-xml-rs")
+ (version "0.7.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "xml-rs" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1hp9kf80y9qm3aiqg5psyshqfkcrjgifbcm2c2nc5qlzs80vc71w"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-test-flags '("--release" "--lib")
+ #:cargo-inputs
+ (("rust-bitflags" ,rust-bitflags-1))))
+ (home-page "https://github.com/netvl/xml-rs")
+ (synopsis "XML library in pure Rust")
+ (description "An XML library in pure Rust.")
+ (license license:expat)))
+
(define-public rust-xml5ever-0.16
(package
(name "rust-xml5ever")
@@ -30448,27 +32522,37 @@ to XDG Base Directory specification.")
"Push based streaming parser for xml.")
(license (list license:expat license:asl2.0))))
-(define-public rust-y4m-0.5
+(define-public rust-xz2-0.1
(package
- (name "rust-y4m")
- (version "0.5.3")
+ (name "rust-xz2")
+ (version "0.1.6")
(source
- (origin
- (method url-fetch)
- (uri (crate-uri "y4m" version))
- (file-name
- (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "1933677by64y06zfgip2yq8b2dza8xnljhaksx93czq90b54kscz"))))
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "xz2" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0v4jb0193gx8s1kvd2ajsgh0ffmwhqhfmrrw1n1h2z7w6jgqcyf1"))))
(build-system cargo-build-system)
(arguments
- `(#:cargo-development-inputs
- (("rust-resize" ,rust-resize-0.3))))
- (home-page "https://github.com/image-rs/y4m")
- (synopsis "YUV4MPEG2 (.y4m) Encoder/Decoder.")
- (description "YUV4MPEG2 (.y4m) Encoder/Decoder.")
- (license license:expat)))
+ `(#:tests? #f ; Not all files included in the tarball.
+ #:cargo-inputs
+ (("rust-futures" ,rust-futures-0.1)
+ ("rust-lzma-sys" ,rust-lzma-sys-0.1)
+ ("rust-tokio-io" ,rust-tokio-io-0.1))
+ #:cargo-development-inputs
+ (("rust-quickcheck" ,rust-quickcheck-0.7)
+ ("rust-rand" ,rust-rand-0.5)
+ ("rust-tokio-core" ,rust-tokio-core-0.1))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)
+ ("xz" ,xz)))
+ (home-page "https://github.com/alexcrichton/xz2-rs")
+ (synopsis "Rust bindings to liblzma")
+ (description "This package provides Rust bindings to liblzma providing
+Read/Write streams as well as low-level in-memory encoding and decoding.")
+ (license (list license:expat license:asl2.0))))
(define-public rust-yaml-rust-0.4
(package
@@ -30601,8 +32685,8 @@ implementation that works everywhere, even WASM!")
(arguments
`(#:cargo-inputs
(("rust-bzip2" ,rust-bzip2-0.3)
- ("rust-crc32fast" ,rust-crc32fast-1.2)
- ("rust-flate2" ,rust-flate2-1.0)
+ ("rust-crc32fast" ,rust-crc32fast-1)
+ ("rust-flate2" ,rust-flate2-1)
("rust-podio" ,rust-podio-0.1)
("rust-time" ,rust-time-0.1))
#:cargo-development-inputs
@@ -30632,10 +32716,244 @@ implementation that works everywhere, even WASM!")
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs
- (("rust-byteorder" ,rust-byteorder-1.3)
+ (("rust-byteorder" ,rust-byteorder-1)
("rust-datetime" ,rust-datetime-0.4))))
(home-page "https://github.com/rust-datetime/zoneinfo-compiled/")
(synopsis "Library for parsing compiled zoneinfo files")
(description
"This package provides a library for parsing compiled zoneinfo files.")
(license license:expat)))
+
+(define-public rust-zstd-0.5
+ (package
+ (name "rust-zstd")
+ (version "0.5.3+zstd.1.4.5")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "zstd" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1n0cgj9i3dk90kn7jcahq5fligqrjfzmnq08hfg71yhyfypjxcq1"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-futures" ,rust-futures-0.1)
+ ("rust-tokio-io" ,rust-tokio-io-0.1)
+ ("rust-zstd-safe" ,rust-zstd-safe-2.0.5))
+ #:cargo-development-inputs
+ (("rust-clap" ,rust-clap-2)
+ ("rust-humansize" ,rust-humansize-1)
+ ("rust-partial-io" ,rust-partial-io-0.3)
+ ("rust-quickcheck" ,rust-quickcheck-0.6)
+ ("rust-walkdir" ,rust-walkdir-2))))
+ (home-page "https://github.com/gyscos/zstd-rs")
+ (synopsis "Binding to the zstd compression library")
+ (description "This package provides a binding to the zstd compression
+library.")
+ (license license:expat)))
+
+(define-public rust-zstd-safe-2
+ (package
+ (name "rust-zstd-safe")
+ (version "2.0.5+zstd.1.4.5")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "zstd-safe" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0m8h1x030cj5bj7zxxf6gdp91bp0ays2vi9rlqllgxi71lp69yqw"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-libc" ,rust-libc-0.2)
+ ("rust-zstd-sys" ,rust-zstd-sys-1.4.17))))
+ (home-page "https://github.com/gyscos/zstd-rs")
+ (synopsis "Safe low-level bindings to the zstd compression library")
+ (description "This package provides afe low-level bindings to the zstd
+compression library.")
+ (license (list license:expat license:asl2.0))))
+
+(define-public rust-zstd-safe-2.0.5 rust-zstd-safe-2)
+
+;; TODO: Unbundle zstd.
+(define-public rust-zstd-sys-1
+ (package
+ (name "rust-zstd-sys")
+ (version "1.4.17+zstd.1.4.5")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "zstd-sys" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "06zhk1j5v1sm04xxrw72lgzyi1wcq7kvj6vbd4ibamph9mj4k4mq"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-libc" ,rust-libc-0.2)
+ ("rust-bindgen" ,rust-bindgen-0.54)
+ ("rust-cc" ,rust-cc-1)
+ ("rust-glob" ,rust-glob-0.3)
+ ("rust-itertools" ,rust-itertools-0.9)
+ ("rust-pkg-config" ,rust-pkg-config-0.3))))
+ (home-page "https://github.com/gyscos/zstd-rs")
+ (synopsis "Low-level bindings to the zstd compression library")
+ (description "This package provides low-level Rust bindings to the zstd
+compression library.")
+ (license (list license:expat license:asl2.0))))
+
+(define-public rust-zstd-sys-1.4.17 rust-zstd-sys-1)
+
+(define-public rust-packed-struct
+ (package
+ (name "rust-packed-struct")
+ (version "0.3.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "packed_struct" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "10b2fmxchmcigwagnhi42frj74dl02wyv0xwmbr9839qfh7gijlh"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-serde" ,rust-serde-1)
+ ("rust-serde-derive" ,rust-serde-derive-1))))
+ (home-page "http://www.hashmismatch.net/libraries/packed-struct/")
+ (synopsis "Binary-level structure packing and unpacking generator")
+ (description "This package provides bit-level packing an unpacking
+of structs. The library provides a meta-programming approach, using
+attributes to define fields and how they should be packed. The resulting
+trait implementations provide safe packing, unpacking and runtime debugging
+formatters with per-field documentation generated for each structure.
+
+@itemize
+@item Plain Rust structures, decorated with attributes
+@item MSB or LSB integers of user-defined bit widths
+@item Primitive enum code generation helper
+@item MSB0 or LSB0 bit positioning
+@item Documents the field's packing table
+@item Runtime packing visualization
+@item Nested packed types
+@item Arrays of packed structures as fields
+@item Reserved fields, their bits are always 0 or 1
+@end itemize")
+ ;; User can choose either license.
+ (license (list license:expat license:asl2.0))))
+
+(define-public rust-xmltree-0.8
+ (package
+ (name "rust-xmltree")
+ (version "0.8.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "xmltree" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0w0y0jz7lhxg05ca6ngfj0lj8sbrjh4vaqv13q7qaqkhs7lsx3pz"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-indexmap" ,rust-indexmap-1)
+ ("rust-xml-rs" ,rust-xml-rs-0.7))))
+ (home-page #f)
+ (synopsis
+ "Parse an XML file into a simple tree-like structure")
+ (description
+ "Parse an XML file into a simple tree-like structure")
+ (license license:expat)))
+
+(define-public rust-svd-parser-0.9
+ (package
+ (name "rust-svd-parser")
+ (version "0.9.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "svd-parser" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1qhvdz3k76i3sfypcy8c84hhb8sqixrckba21kalzcpgy6an45ml"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-anyhow" ,rust-anyhow-1.0)
+ ("rust-either" ,rust-either-1)
+ ("rust-serde" ,rust-serde-1)
+ ("rust-thiserror" ,rust-thiserror-1)
+ ("rust-xmltree" ,rust-xmltree-0.8))
+ #:cargo-development-inputs
+ (("rust-serde-json" ,rust-serde-json-1))))
+ (home-page #f)
+ (synopsis "A CMSIS-SVD file parser")
+ (description
+ "This package provides a CMSIS-SVD file parser")
+ (license (list license:expat license:asl2.0))))
+
+(define-public rust-inflections-1.1
+ (package
+ (name "rust-inflections")
+ (version "1.1.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "inflections" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0yl3gas612q25c72lwf04405i87yxr02vgv3ckcnz2fyvhpmhmx2"))))
+ (build-system cargo-build-system)
+ (home-page #f)
+ (synopsis
+ "High performance inflection transformation library for changing properties of words like the case.")
+ (description
+ "High performance inflection transformation library for changing properties of words like the case.")
+ (license license:expat)))
+
+(define-public svd2rust
+ (package
+ (name "svd2rust")
+ (version "0.17.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "svd2rust" version))
+ (file-name
+ (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0850pn92a5pmrlavdsm4s9wgrgx9gz0vylf9i594nj8sixmddjd9"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs
+ (("rust-cast" ,rust-cast-0.2)
+ ("rust-clap" ,rust-clap-2)
+ ("rust-env-logger" ,rust-env-logger-0.7)
+ ("rust-error-chain" ,rust-error-chain-0.12)
+ ("rust-inflections" ,rust-inflections-1.1)
+ ("rust-log" ,rust-log-0.4)
+ ("rust-proc-macro2" ,rust-proc-macro2-0.4)
+ ("rust-quote" ,rust-quote-1)
+ ("rust-svd-parser" ,rust-svd-parser-0.9)
+ ("rust-syn" ,rust-syn-1))))
+ (home-page #f)
+ (synopsis
+ "Generate Rust register maps (`struct`s) from SVD files")
+ (description
+ "Generate Rust register maps (`struct`s) from SVD files")
+ (license (list license:expat license:asl2.0))))
diff --git a/gnu/packages/crypto.scm b/gnu/packages/crypto.scm
index 68531ea16e..348e9103ff 100644
--- a/gnu/packages/crypto.scm
+++ b/gnu/packages/crypto.scm
@@ -143,7 +143,7 @@ communication, encryption, decryption, signatures, etc.")
(define-public signify
(package
(name "signify")
- (version "29")
+ (version "30")
(home-page "https://github.com/aperezdc/signify")
(source (origin
(method url-fetch)
@@ -151,7 +151,7 @@ communication, encryption, decryption, signatures, etc.")
"/download/v" version "/signify-" version ".tar.xz"))
(sha256
(base32
- "1bzcax5kb4lr0rmpmrdpq5q0iq6b2dxzpl56li8aanbkck1c7hd9"))))
+ "11l67j04gyxnlw6zrzsygqs5cgsc1sww1rh0apl05yay131hd17n"))))
(build-system gnu-build-system)
;; TODO Build with libwaive (described in README.md), to implement something
;; like OpenBSD's pledge().
@@ -359,10 +359,10 @@ secure operations. ")
(base32
"0lj38ldh8vzi11wp4ghw4k0fkwp0s04zv8k8d473p1snmbh7mx98"))))
(inputs
- `(("openssl" ,openssl))) ; It needs: openssl/{bn,pem,rsa,sha}.h
+ `(("openssl" ,openssl-1.0))) ; for openssl/{bn,pem,rsa,sha}.h
(build-system gnu-build-system)
(arguments
- `(#:make-flags (list "CC=gcc"
+ `(#:make-flags (list (string-append "CC=" ,(cc-for-target))
(string-append "PREFIX=" (assoc-ref %outputs "out"))
(string-append "INSTALL=" "install"))
;; XXX: make test would run a !VERY! long hashing of names with the use
diff --git a/gnu/packages/cryptsetup.scm b/gnu/packages/cryptsetup.scm
index 57333ea13d..a12ac93b25 100644
--- a/gnu/packages/cryptsetup.scm
+++ b/gnu/packages/cryptsetup.scm
@@ -1,7 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2016 Ludovic Courtès <ludo@gnu.org>
-;;; Copyright © 2019 Tobias Geerinckx-Rice <me@tobias.gr>
+;;; Copyright © 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -35,7 +35,7 @@
(define-public cryptsetup
(package
(name "cryptsetup")
- (version "2.3.3")
+ (version "2.3.4")
(source (origin
(method url-fetch)
(uri (string-append "mirror://kernel.org/linux/utils/cryptsetup/v"
@@ -43,7 +43,7 @@
"/cryptsetup-" version ".tar.xz"))
(sha256
(base32
- "1pw2bq4nv2z3xyycckxkbp7dp9kkp2n6bspna3plryg277z4zjiv"))))
+ "0wrpz2fzbsszmsgxxbssxjgylpyiindh24z8g13m2fxmjsxyw5lx"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags
diff --git a/gnu/packages/cups.scm b/gnu/packages/cups.scm
index 179a32ef8a..f13fc2f132 100644
--- a/gnu/packages/cups.scm
+++ b/gnu/packages/cups.scm
@@ -418,16 +418,17 @@ should only be used as part of the Guix cups-pk-helper service.")
(define-public hplip
(package
(name "hplip")
- (version "3.20.6")
+ (version "3.20.9")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/hplip/hplip/" version
"/hplip-" version ".tar.gz"))
(sha256
(base32
- "083w58wpvvm6sir6rf5dwx3r0rman9sv1zpl26chl0a88crjsjy6"))
+ "1prdbp410405xrfggjc7y34nzljg7jnbgjzalgv4khwwma4i299n"))
(modules '((guix build utils)))
- (patches (search-patches "hplip-remove-imageprocessor.patch"))
+ (patches (search-patches "hplip-fix-bug-1898438.patch"
+ "hplip-remove-imageprocessor.patch"))
(snippet
'(begin
;; Delete non-free blobs: .so files, pre-compiled
@@ -468,10 +469,7 @@ should only be used as part of the Guix cups-pk-helper service.")
(assoc-ref %outputs "out") "/lib")
;; Disable until mime.types merging works (FIXME).
"--disable-fax-build"
- "--enable-hpcups-install"
"--enable-new-hpcups"
- "--enable-cups_ppd_install"
- "--enable-cups_drv_install"
;; TODO add foomatic drv install eventually.
;; TODO --enable-policykit eventually.
,(string-append "--with-cupsfilterdir="
@@ -752,20 +750,19 @@ HP@tie{}LaserJet, and possibly other printers. See @file{README} for details.")
(define-public escpr
(package
(name "escpr")
- (version "1.6.30")
+ (version "1.7.7")
;; XXX: This currently works. But it will break as soon as a newer
;; version is available since the URLs for older versions are not
;; preserved. An alternative source will be added as soon as
;; available.
- (source (origin
- (method url-fetch)
- ;; The uri has to be chopped up in order to satisfy guix lint.
- (uri (string-append "https://download3.ebz.epson.net/dsc/f/03/00/08/18/20/"
- "e94de600e28e510c1cfa158929d8b2c0aadc8aa0/"
- "epson-inkjet-printer-escpr-1.6.30-1lsb3.2.tar.gz"))
- (sha256
- (base32
- "0m8pyfkixisp0vclwxj340isn15zzisal0v2xvv66kxfd68dzf12"))))
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "https://download3.ebz.epson.net/dsc/f/03/00/10/49/18/"
+ "f3016be6120a7271a6d9cb64872f817bce1920b8/"
+ "epson-inkjet-printer-escpr-1.7.7-1lsb3.2.tar.gz"))
+ (sha256
+ (base32 "0khdf2a9iwh9aplj2gzyzl53yyfnfv0kszk3p018jnirl5l475ld"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags
@@ -774,13 +771,30 @@ HP@tie{}LaserJet, and possibly other printers. See @file{README} for details.")
,(string-append "--with-cupsfilterdir="
(assoc-ref %outputs "out") "/lib/cups/filter")
,(string-append "--with-cupsppddir="
- (assoc-ref %outputs "out") "/share/ppd"))))
- (inputs `(("cups" ,cups-minimal)))
+ (assoc-ref %outputs "out") "/share/cups/model"))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'patch-autotools-version-requirement
+ (lambda _
+ (substitute* "aclocal.m4"
+ (("1\\.15")
+ ,(package-version automake)))
+ (substitute* "configure"
+ (("^(ACLOCAL=).*" _ match)
+ (string-append match "aclocal"))
+ (("^(AUTOMAKE=).*" _ match)
+ (string-append match "automake")))
+ #t)))))
+ (native-inputs
+ `(("autoconf" ,autoconf)
+ ("automake" ,automake)))
+ (inputs
+ `(("cups" ,cups-minimal)))
(synopsis "ESC/P-R printer driver")
(description
- "This package provides a filter for the Common UNIX Printing
-System (CUPS). It offers high-quality printing with Seiko Epson color ink jet
-printers. It can only be used with printers that support the Epson ESC/P-R
+ "This package provides a filter for @acronym{CUPS, the Common UNIX Printing
+System} that offers high-quality printing with Seiko@tie{}Epson color ink jet
+printers. It can be used only with printers that support the Epson@tie{}ESC/P-R
language.")
(home-page "http://download.ebz.epson.net/dsc/search/01/search")
(license license:gpl2+)))
diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm
index fe9978587c..91cf4f7174 100644
--- a/gnu/packages/databases.scm
+++ b/gnu/packages/databases.scm
@@ -44,6 +44,7 @@
;;; Copyright © 2020 Lars-Dominik Braun <ldb@leibniz-psychology.org>
;;; Copyright © 2020 Guy Fleury Iteriteka <gfleury@disroot.org>
;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de>
+;;; Copyright © 2020 Vinicius Monego <monego@posteo.net>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -128,6 +129,7 @@
#:use-module (guix download)
#:use-module (guix bzr-download)
#:use-module (guix git-download)
+ #:use-module (guix hg-download)
#:use-module (guix build-system emacs)
#:use-module (guix build-system gnu)
#:use-module (guix build-system go)
@@ -716,7 +718,7 @@ Language.")
(define-public mariadb
(package
(name "mariadb")
- (version "10.1.45")
+ (version "10.5.6")
(source (origin
(method url-fetch)
(uri (string-append "https://downloads.mariadb.com/MariaDB"
@@ -724,8 +726,7 @@ Language.")
version ".tar.gz"))
(sha256
(base32
- "1mfs0x4c0z7d306n128dxdawk3llk25vxif5zwl20fv1z5qhz3wx"))
- (patches (search-patches "mariadb-client-test-32bit.patch"))
+ "1i257h0zdypdfj5wkg6ck9pxlkph0jvjs92k22pjr6gnx5lxs1gz"))
(modules '((guix build utils)))
(snippet
'(begin
@@ -743,8 +744,8 @@ Language.")
(for-each (lambda (file)
(unless (string-suffix? "CMakeLists.txt" file)
(delete-file file)))
- (append (find-files "extra/yassl")
- (find-files "pcre") (find-files "zlib")))
+ (append (find-files "extra/wolfssl")
+ (find-files "zlib")))
#t))))
(build-system cmake-build-system)
(outputs '("out" "lib" "dev"))
@@ -798,29 +799,20 @@ Language.")
"-DINSTALL_SHAREDIR=share")
#:phases
(modify-phases %standard-phases
- ,@(if (string-prefix? "arm" (%current-system))
- ;; XXX: Because of the GCC 5 input, we need to hide GCC 7 from
- ;; CPLUS_INCLUDE_PATH so that its headers do not shadow GCC 5.
- '((add-after 'set-paths 'hide-default-gcc
- (lambda* (#:key inputs #:allow-other-keys)
- (let ((gcc (assoc-ref inputs "gcc")))
- (setenv "CPLUS_INCLUDE_PATH"
- (string-join
- (delete (string-append gcc "/include/c++")
- (string-split (getenv "CPLUS_INCLUDE_PATH")
- #\:))
- ":"))
- #t))))
- '())
- (add-after 'unpack 'fix-pcre-detection
+ (add-after 'unpack 'adjust-output-references
(lambda _
- ;; The bundled PCRE in MariaDB has a patch that was upstreamed
- ;; in version 8.34. Unfortunately the upstream patch behaves
- ;; slightly differently and the build system fails to detect it.
- ;; See <https://bugs.exim.org/show_bug.cgi?id=2173>.
- ;; XXX: Consider patching PCRE instead.
- (substitute* "cmake/pcre.cmake"
- ((" OR NOT PCRE_STACK_SIZE_OK") ""))
+ ;; The build system invariably prepends $CMAKE_INSTALL_PREFIX
+ ;; to other variables such as $INSTALL_INCLUDEDIR, which does
+ ;; not work when the latter uses an absolute file name.
+ (substitute* "libmariadb/mariadb_config/mariadb_config.c.in"
+ (("@CMAKE_INSTALL_PREFIX@/@INSTALL_INCLUDEDIR@")
+ "@INSTALL_INCLUDEDIR@"))
+ (substitute* "libmariadb/mariadb_config/libmariadb.pc.in"
+ (("\\$\\{prefix\\}/@INSTALL_INCLUDEDIR@")
+ "@INSTALL_INCLUDEDIR@"))
+ (substitute* "include/CMakeLists.txt"
+ (("\\\\\\$\\{CMAKE_INSTALL_PREFIX\\}/\\$\\{INSTALL_INCLUDEDIR\\}")
+ "${INSTALL_INCLUDEDIR}"))
#t))
(add-after 'unpack 'adjust-tests
(lambda _
@@ -828,6 +820,7 @@ Language.")
'(;; These fail because root@hostname == root@localhost in
;; the build environment, causing a user count mismatch.
;; See <https://jira.mariadb.org/browse/MDEV-7761>.
+ "funcs_1.is_columns_mysql"
"main.join_cache"
"main.explain_non_select"
"main.stat_tables"
@@ -836,20 +829,7 @@ Language.")
;; This file contains a time bomb which makes it fail after
;; 2030-12-31. See <https://bugs.gnu.org/34351> for details.
- "main.mysqldump"
-
- ;; FIXME: This test fails on i686:
- ;; -myisampack: Can't create/write to file (Errcode: 17 "File exists")
- ;; +myisampack: Can't create/write to file (Errcode: 17 "File exists)
- ;; When running "myisampack --join=foo/t3 foo/t1 foo/t2"
- ;; (all three tables must exist and be identical)
- ;; in a loop it produces the same error around 1/240 times.
- ;; montywi on #maria suggested removing the real_end check in
- ;; "strings/my_vsnprintf.c" on line 503, yet it still does not
- ;; reach the ending quote occasionally. Disable it for now.
- "main.myisampack"
- ;; FIXME: This test fails on armhf-linux:
- "mroonga/storage.index_read_multiple_double"))
+ "main.mysqldump"))
;; This file contains a list of known-flaky tests for this
;; release. Append our own items.
@@ -860,9 +840,10 @@ Language.")
disabled-tests)
(close-port unstable-tests)
- ;; XXX: This test fails because it expects a latin1 charset and
+ ;; XXX: These fail because they expect a latin1 charset and
;; collation. See <https://jira.mariadb.org/browse/MDEV-21264>.
- (substitute* "mysql-test/r/gis_notembedded.result"
+ (substitute* '("mysql-test/main/gis_notembedded.result"
+ "mysql-test/main/system_mysql_db.result")
(("latin1_swedish_ci") "utf8_general_ci")
(("\tlatin1") "\tutf8"))
@@ -895,6 +876,10 @@ Language.")
"--testcase-timeout=40"
"--suite-timeout=600"
"--parallel" (number->string (parallel-job-count))
+ ;; Skip the replication tests: they are very I/O
+ ;; intensive and frequently causes indeterministic
+ ;; failures even on powerful hardware.
+ "--skip-rpl"
"--skip-test-list=unstable-tests"))
(format #t "test suite not run~%"))
#t))
@@ -905,56 +890,57 @@ Language.")
(dev (assoc-ref outputs "dev"))
(lib (assoc-ref outputs "lib"))
(openssl (assoc-ref inputs "openssl")))
- (substitute* (string-append out "/bin/mysql_install_db")
+ (substitute* (list (string-append out "/bin/mariadb-install-db")
+ (string-append out "/bin/mysql_install_db"))
(("basedir=\"\"")
- (string-append "basedir=\"" out "\"")))
+ (string-append "basedir=\"" out "\""))
+ (("\\$basedir/share/mysql")
+ (string-append lib "/share/mysql")))
+
;; Remove unneeded files for testing.
(with-directory-excursion lib
(for-each delete-file-recursively
- '("data" "mysql-test" "sql-bench"))
+ '("mysql-test" "sql-bench"))
;; And static libraries.
(for-each delete-file (find-files "lib" "\\.a$")))
(with-directory-excursion out
(delete-file "share/man/man1/mysql-test-run.pl.1")
;; Delete huge and unnecessary executables.
- (for-each delete-file (find-files "bin" "(test|embedded)")))
+ (for-each delete-file (find-files "bin" "test$")))
(mkdir-p (string-append dev "/share"))
(mkdir-p (string-append dev "/bin"))
+ (rename-file (string-append lib "/bin/mariadbd")
+ (string-append out "/bin/mariadbd"))
(rename-file (string-append lib "/bin/mysqld")
(string-append out "/bin/mysqld"))
- (rename-file (string-append lib "/share/pkgconfig")
- (string-append dev "/share/pkgconfig"))
+ (mkdir-p (string-append dev "/lib"))
+ (rename-file (string-append lib "/lib/pkgconfig")
+ (string-append dev "/lib/pkgconfig"))
+ (rename-file (string-append lib "/bin/mariadb_config")
+ (string-append dev "/bin/mariadb_config"))
(rename-file (string-append out "/bin/mysql_config")
(string-append dev "/bin/mysql_config"))
-
- (substitute* (string-append out "/bin/mysql_install_db")
- (("\\$basedir/share/mysql")
- (string-append lib "/share/mysql")))
-
;; Embed an absolute reference to OpenSSL in mysql_config
;; and the pkg-config file to avoid propagation.
+ ;; XXX: how to do this for mariadb_config.c.in?
(substitute* (list (string-append dev "/bin/mysql_config")
- (string-append dev "/share/pkgconfig/mariadb.pc"))
+ (string-append dev "/lib/pkgconfig/mariadb.pc"))
(("-lssl -lcrypto" all)
(string-append "-L" openssl "/lib " all)))
#t))))))
(native-inputs
`(("bison" ,bison)
- ;; XXX: On armhf, use GCC 5 to work around <https://bugs.gnu.org/37605>.
- ,@(if (string-prefix? "armhf" (%current-system))
- `(("gcc@5", gcc-5))
- '())
("perl" ,perl)))
(inputs
`(("jemalloc" ,jemalloc)
("libaio" ,libaio)
("libxml2" ,libxml2)
("ncurses" ,ncurses)
- ("openssl" ,openssl-1.0)
+ ("openssl" ,openssl)
("pam" ,linux-pam)
- ("pcre" ,pcre)
+ ("pcre2" ,pcre2)
("xz" ,xz)
("zlib" ,zlib)))
;; The test suite is very resource intensive and can take more than three
@@ -970,7 +956,7 @@ as a drop-in replacement of MySQL.")
(define-public mariadb-connector-c
(package
(name "mariadb-connector-c")
- (version "3.1.9")
+ (version "3.1.10")
(source (origin
(method url-fetch)
(uri (string-append
@@ -979,7 +965,7 @@ as a drop-in replacement of MySQL.")
version "-src.tar.gz"))
(sha256
(base32
- "1izjzf7yzjqzlk8dkp327fa9lawsv2hnnlnr7g5lshyx5azrk38h"))))
+ "13v5z4w1cl890lnr2fbwbziw638lqw2aga45vdq1z0cyrc9mcgmg"))))
(inputs
`(("openssl" ,openssl)))
(build-system cmake-build-system)
@@ -1139,7 +1125,7 @@ organized in a hash table or B+ tree.")
(native-inputs `(("bc" ,bc)
("bash:include" ,bash "include")
- ("check" ,check)
+ ("check" ,check-0.14)
("libuuid" ,util-linux)
("pkg-config" ,pkg-config)))
@@ -1343,7 +1329,7 @@ for example from a shell script.")
(define-public sqitch
(package
(name "sqitch")
- (version "1.0.0")
+ (version "1.1.0")
(source
(origin
(method url-fetch)
@@ -1351,7 +1337,7 @@ for example from a shell script.")
"mirror://cpan/authors/id/D/DW/DWHEELER/App-Sqitch-v"
version ".tar.gz"))
(sha256
- (base32 "0p4wraqiscvwmmsvfqfy65blgsilwpvd9zj4d2zvm2xdx70ncr7l"))))
+ (base32 "1ayiwg9kh3w0nbacbcln7h944z94vq5vnnd5diz86033bpbnq57f"))))
(build-system perl-build-system)
(arguments
'(#:phases
@@ -1383,6 +1369,7 @@ for example from a shell script.")
("perl-test-file" ,perl-test-file)
("perl-test-file-contents" ,perl-test-file-contents)
("perl-test-mockmodule" ,perl-test-mockmodule)
+ ("perl-test-mockobject" ,perl-test-mockobject)
("perl-test-nowarnings" ,perl-test-nowarnings)
("perl-test-warn" ,perl-test-warn)))
(inputs
@@ -1391,7 +1378,9 @@ for example from a shell script.")
("perl-config-gitlike" ,perl-config-gitlike)
("perl-datetime" ,perl-datetime)
("perl-datetime-timezone" ,perl-datetime-timezone)
+ ("perl-dbd-mysql" ,perl-dbd-mysql)
("perl-dbd-pg" ,perl-dbd-pg)
+ ("perl-dbd-sqlite" ,perl-dbd-sqlite)
("perl-dbi" ,perl-dbi)
("perl-devel-stacktrace" ,perl-devel-stacktrace)
("perl-encode-locale" ,perl-encode-locale)
@@ -1738,7 +1727,7 @@ columns, primary keys, unique constraints and relationships.")
(define-public perl-dbd-sqlite
(package
(name "perl-dbd-sqlite")
- (version "1.64")
+ (version "1.66")
(source (origin
(method url-fetch)
(uri (string-append
@@ -1746,7 +1735,7 @@ columns, primary keys, unique constraints and relationships.")
version ".tar.gz"))
(sha256
(base32
- "00gz5aw3xrr92lf9nfk0dhmy7a8jzmxhznddd9b0a8w4a1xqzbpl"))))
+ "1zljln5nh61gj3k22a1fv2vhx5l83waizmarwkh77hk6kzzmvrw9"))))
(build-system perl-build-system)
(inputs `(("sqlite" ,sqlite)))
(propagated-inputs `(("perl-dbi" ,perl-dbi)))
@@ -1777,7 +1766,7 @@ module, and nothing else.")
(synopsis "Parse and utilize MySQL's /etc/my.cnf and ~/.my.cnf files")
(description
"@code{MySQL::Config} emulates the @code{load_defaults} function from
-libmysqlclient. It will fill an aray with long options, ready to be parsed by
+libmysqlclient. It will fill an array with long options, ready to be parsed by
@code{Getopt::Long}.")
(license license:perl-license)))
@@ -1898,7 +1887,7 @@ valid SQL query.")
(define-public unixodbc
(package
(name "unixodbc")
- (version "2.3.7")
+ (version "2.3.9")
(source (origin
(method url-fetch)
(uri
@@ -1906,7 +1895,7 @@ valid SQL query.")
"ftp://ftp.unixodbc.org/pub/unixODBC/unixODBC-"
version ".tar.gz"))
(sha256
- (base32 "0xry3sg497wly8f7715a7gwkn2k36bcap0mvzjw74jj53yx6kwa5"))))
+ (base32 "01xj65d02i3yjy7p9z08y9jakcs5szmz4rask868n7387nn3x0sj"))))
(build-system gnu-build-system)
(synopsis "Data source abstraction library")
(description "Unixodbc is a library providing an API with which to access
@@ -2120,14 +2109,14 @@ database.")
(define-public perl-db-file
(package
(name "perl-db-file")
- (version "1.853")
+ (version "1.855")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://cpan/authors/id/P/PM/PMQS/DB_File-"
version ".tar.gz"))
(sha256
- (base32 "1y967si45vj0skip1hnhicbv9da29fv6qcfwnsbnvj06n36mkj6h"))))
+ (base32 "0q599h7g4jkzks5dxf1zifx9k7l9vif26r2dlgkzxkg6bfif5zyr"))))
(build-system perl-build-system)
(inputs `(("bdb" ,bdb)))
(native-inputs `(("perl-test-pod" ,perl-test-pod)))
@@ -2140,8 +2129,7 @@ database.")
(("/usr/local/BerkeleyDB") (assoc-ref inputs "bdb")))
#t)))))
(home-page "https://metacpan.org/release/DB_File")
- (synopsis
- "Perl5 access to Berkeley DB version 1.x")
+ (synopsis "Perl5 access to Berkeley DB version 1.x")
(description
"The DB::File module provides Perl bindings to the Berkeley DB version 1.x.")
(license license:perl-license)))
@@ -2450,13 +2438,13 @@ etc., and an SQL engine for performing simple SQL queries.")
(define-public python-lmdb
(package
(name "python-lmdb")
- (version "0.99")
+ (version "1.0.0")
(source (origin
(method url-fetch)
(uri (pypi-uri "lmdb" version))
(sha256
(base32
- "12fwlzfd82471ss9xzbqwcqc6f5miy51y72y2yya9j5cm9589szr"))
+ "1di1gj2agbxwqqwrpk4w58dpfah0kl10ha20s63dlqdd1bgzydj1"))
(modules '((guix build utils)))
(snippet
;; Delete bundled lmdb source files.
@@ -2475,6 +2463,7 @@ etc., and an SQL engine for performing simple SQL queries.")
(add-before 'build 'use-system-lmdb
(lambda* (#:key inputs #:allow-other-keys)
(let ((lmdb (assoc-ref inputs "lmdb")))
+ (setenv "LMDB_PURE" "set") ; don't apply env-copy-txn.patch
(setenv "LMDB_FORCE_SYSTEM" "set")
(setenv "LMDB_INCLUDEDIR" (string-append lmdb "/include"))
(setenv "LMDB_LIBDIR" (string-append lmdb "/lib"))
@@ -2632,13 +2621,13 @@ Database API 2.0T.")
(define-public python-sqlalchemy
(package
(name "python-sqlalchemy")
- (version "1.3.18")
+ (version "1.3.20")
(source
(origin
(method url-fetch)
(uri (pypi-uri "SQLAlchemy" version))
(sha256
- (base32 "1rwc6ss1cnz3kxx0p9p6xw0w79r8qw03lcc29k31yb3rcigvfbys"))))
+ (base32 "18b9am7bsqc4nj3d2h5r93i002apczxfvpfpcqbd6f0385zmrwnj"))))
(build-system python-build-system)
(native-inputs
`(("python-cython" ,python-cython) ; for C extensions
@@ -2712,16 +2701,57 @@ You might also want to install the following optional dependencies:
(define-public python2-sqlalchemy-utils
(package-with-python2 python-sqlalchemy-utils))
+(define-public python-alchemy-mock
+ (package
+ (name "python-alchemy-mock")
+ (version "0.4.3")
+ (home-page "https://github.com/miki725/alchemy-mock")
+ (source (origin
+ (method url-fetch)
+ (uri (pypi-uri "alchemy-mock" version))
+ (sha256
+ (base32
+ "0ylxygl3bcdapzz529n8wgk7vx9gjwb3ism564ypkpd7dbsw653r"))))
+ (build-system python-build-system)
+ (arguments
+ '(#:phases (modify-phases %standard-phases
+ (replace 'check
+ (lambda _
+ ;; Create pytest.ini that adds doctest options to
+ ;; prevent test failure. Taken from tox.ini.
+ (call-with-output-file "pytest.ini"
+ (lambda (port)
+ (format port "[pytest]
+doctest_optionflags=IGNORE_EXCEPTION_DETAIL
+")))
+ (invoke "pytest" "-vv" "--doctest-modules"
+ "alchemy_mock/"))))))
+ (native-inputs
+ `(("python-mock" ,python-mock)
+ ("python-pytest" ,python-pytest)))
+ (propagated-inputs
+ `(("python-six" ,python-six)
+ ("python-sqlalchemy" ,python-sqlalchemy)))
+ (synopsis "Mock helpers for SQLAlchemy")
+ (description
+ "This package provides mock helpers for SQLAlchemy that makes it easy
+to mock an SQLAlchemy session while preserving the ability to do asserts.
+
+Normally Normally SQLAlchemy's expressions cannot be easily compared as
+comparison on binary expression produces yet another binary expression, but
+this library provides functions to facilitate such comparisons.")
+ (license license:expat)))
+
(define-public python-alembic
(package
(name "python-alembic")
- (version "1.4.2")
+ (version "1.4.3")
(source
(origin
(method url-fetch)
(uri (pypi-uri "alembic" version))
(sha256
- (base32 "1gsdrzx9h7wfva200qvvsc9sn4w79mk2vs0bbnzjhxi1jw2b0nh3"))))
+ (base32 "0if2dgb088clk738p26bwk50735h6jpd2kacdgc5capv2hiz6d2k"))))
(build-system python-build-system)
(arguments
'(#:phases (modify-phases %standard-phases
@@ -2897,13 +2927,13 @@ designed to be easy and intuitive to use.")
(define-public python-psycopg2
(package
(name "python-psycopg2")
- (version "2.8.5")
+ (version "2.8.6")
(source
(origin
(method url-fetch)
(uri (pypi-uri "psycopg2" version))
(sha256
- (base32 "06081jk9srkd4ra9j8b93x9ld3a2yxsbsf5bbbcivbm1yx065m7p"))))
+ (base32 "0hzmk6b1hb5riqkljr5xics6p4zbvmis6knbczb7zhq7273zc8zv"))))
(build-system python-build-system)
(arguments
;; Tests would require a postgresql database "psycopg2_test"
@@ -2948,27 +2978,51 @@ database).")
(define-public python2-sadisplay
(package-with-python2 python-sadisplay))
+(define-public yoyo-migrations
+ (package
+ (name "yoyo-migrations")
+ (version "7.2.0")
+ (source
+ (origin
+ ;; We use the upstream repository, as the tests are not included in the
+ ;; PyPI releases.
+ (method hg-fetch)
+ (uri (hg-reference
+ (url "https://hg.sr.ht/~olly/yoyo")
+ (changeset (string-append "v" version "-release"))))
+ (file-name (string-append name "-" version "-checkout"))
+ (sha256
+ (base32 "0q2z9bgdj3wyix7yvqsayfs21grp5av8ilh411lgmjhigszkvhcq"))))
+ (build-system python-build-system)
+ (arguments
+ ;; XXX: Tests require a connection to some pgsql database and psycopg
+ ;; fails to connect to it.
+ '(#:tests? #f))
+ (propagated-inputs
+ `(("python-sqlparse" ,python-sqlparse)
+ ("python-tabulate" ,python-tabulate)))
+ (home-page "https://ollycope.com/software/yoyo/latest/")
+ (synopsis "Database migrations with SQL")
+ (description
+ "Yoyo is a database schema migration tool. Migrations are written as SQL
+files or Python scripts that define a list of migration steps.")
+ (license license:asl2.0)))
+
(define-public python-mysqlclient
(package
(name "python-mysqlclient")
- (version "1.3.13")
+ (version "2.0.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "mysqlclient" version))
(sha256
(base32
- "0kv4a1icwdav8jpl7qvnr931lw5h3v22ids6lwq6qpi1hjzf33pz"))))
+ "1rf5l8hazs3v18hmcrm90z3hi9wxv553ipwd5l6kj8j7l6p7abzv"))))
(build-system python-build-system)
- (native-inputs
- `(("nose" ,python-nose)
- ("mock" ,python-mock)
- ("py.test" ,python-pytest)))
+ (arguments '(#:tests? #f)) ;XXX: requires a live database
(inputs
- `(("mysql" ,mariadb "lib")
- ("mysql-dev" ,mariadb "dev")
- ("libz" ,zlib)
- ("openssl" ,openssl)))
+ `(("mysql-dev" ,mariadb "dev")))
(home-page "https://github.com/PyMySQL/mysqlclient-python")
(synopsis "MySQLdb is an interface to the popular MySQL database server for Python")
(description "MySQLdb is an interface to the popular MySQL database server
@@ -2980,9 +3034,6 @@ for Python. The design goals are:
@end enumerate")
(license license:gpl2)))
-(define-public python2-mysqlclient
- (package-with-python2 python-mysqlclient))
-
(define-public python-hiredis
(package
(name "python-hiredis")
@@ -3042,13 +3093,13 @@ reasonable substitute.")
(define-public python-redis
(package
(name "python-redis")
- (version "3.3.8")
+ (version "3.5.3")
(source
(origin
(method url-fetch)
(uri (pypi-uri "redis" version))
(sha256
- (base32 "0fyxzqax7lcwzwhvnz0i0q6v62hxyv1mv52ywx3bpff9a2vjz8lq"))))
+ (base32 "18h5b87g15x3j6pb1h2q27ri37p2qpvc9n2wgn5yl3b6m3y0qzhf"))))
(build-system python-build-system)
;; Tests require a running Redis server.
(arguments '(#:tests? #f))
@@ -3067,14 +3118,35 @@ reasonable substitute.")
(define-public python-rq
(package
(name "python-rq")
- (version "0.13.0")
+ (version "1.5.2")
(source
(origin
- (method url-fetch)
- (uri (pypi-uri "rq" version))
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/rq/rq")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
(sha256
- (base32 "0xvapd2bxnyq480i48bdkddzlqmv2axbsq85rlfy8k3al8zxxxrf"))))
+ (base32 "0ikqmpq0g1qiqwd7ar1286l4hqjb6aj2wr844gihhb8ijzwhp8va"))))
(build-system python-build-system)
+ (arguments
+ '(#:phases (modify-phases %standard-phases
+ (add-before 'check 'start-redis
+ (lambda _
+ (invoke "redis-server" "--daemonize" "yes")))
+ (replace 'check
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let ((out (assoc-ref outputs "out")))
+ ;; Drop test that needs the SDK for Sentry.io.
+ (delete-file "tests/test_sentry.py")
+ ;; Ensure 'rq' and 'rqworker' ends up on PATH.
+ (setenv "PATH" (string-append out "/bin:"
+ (getenv "PATH")))
+ (invoke "pytest" "-vv")))))))
+ (native-inputs
+ `(("python-mock" ,python-mock)
+ ("python-pytest" ,python-pytest)
+ ("redis" ,redis)))
(propagated-inputs
`(("python-click" ,python-click)
("python-redis" ,python-redis)))
@@ -3089,6 +3161,44 @@ is designed to have a low barrier to entry.")
(define-public python2-rq
(package-with-python2 python-rq))
+(define-public python-rq-scheduler
+ (package
+ (name "python-rq-scheduler")
+ (version "0.10.0")
+ (home-page "https://github.com/rq/rq-scheduler")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url home-page)
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0xg6yazqs5kbr2ayvhvljs1h5vgx5k5dds613fmhswln7gglf9hk"))))
+ (build-system python-build-system)
+ (arguments
+ '(#:phases (modify-phases %standard-phases
+ (add-before 'check 'start-redis
+ (lambda _
+ (invoke "redis-server" "--daemonize" "yes")))
+ (replace 'check
+ (lambda _
+ (substitute* "run_tests.py"
+ (("/usr/bin/env")
+ (which "env")))
+ (invoke "./run_tests.py"))))))
+ (native-inputs
+ `(("redis" ,redis)
+ ("which" ,which)))
+ (propagated-inputs
+ `(("python-croniter" ,python-croniter)
+ ("python-rq" ,python-rq)))
+ (synopsis "Job scheduling capabilities for RQ (Redis Queue)")
+ (description
+ "This package provides job scheduling capabilities to @code{python-rq}
+(Redis Queue).")
+ (license license:expat)))
+
(define-public python-trollius-redis
(package
(name "python-trollius-redis")
@@ -3593,8 +3703,7 @@ The drivers officially supported by @code{libdbi} are:
("sqlite" ,sqlite)
("odbc" ,unixodbc)
("boost" ,boost)
- ("mariadb:dev" ,mariadb "dev")
- ("mariadb:lib" ,mariadb "lib")))
+ ("mariadb:dev" ,mariadb "dev")))
(arguments
`(#:tests? #f ; Tests may require running database management systems.
#:phases
diff --git a/gnu/packages/datastructures.scm b/gnu/packages/datastructures.scm
index 3203f91608..cd4126b22d 100644
--- a/gnu/packages/datastructures.scm
+++ b/gnu/packages/datastructures.scm
@@ -37,14 +37,16 @@
(name "gdsl")
(version "1.8")
(source (origin
- (method url-fetch)
- (uri (string-append "http://download.gna.org/gdsl/"
- "gdsl-" version ".tar.gz"))
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://example.org") ;only hosted on Software Heritage
+ (commit "6adb53be8b8f9f2e4bbfc92d357eedeefb4c7430")))
+ (file-name (git-file-name name version))
(sha256
(base32
- "1v64jvlnj8jfpphphgjgb36p0kv50kwfyqncf0y12f16v8ydyiaw"))))
+ "0a52g12d9sf9hhcyvwfd7xdazj2a9i9jh97cnlqf2ymvwnvjk1g0"))))
(build-system gnu-build-system)
- (home-page "http://home.gna.org/gdsl/")
+ (home-page "https://web.archive.org/web/20170502005430/http://home.gna.org/gdsl/")
(synopsis "Generic data structures library")
(description "The Generic Data Structures Library (GDSL) is a collection
of routines for generic data structures manipulation. It is a re-entrant
diff --git a/gnu/packages/debug.scm b/gnu/packages/debug.scm
index 2f58f8e972..9dc32c70f4 100644
--- a/gnu/packages/debug.scm
+++ b/gnu/packages/debug.scm
@@ -6,6 +6,7 @@
;;; Copyright © 2019 Pkill -9 <pkill9@runbox.com>
;;; Copyright © 2020 Vincent Legoll <vincent.legoll@gmail.com>
;;; Copyright © 2020 Morgan Smith <Morgan.J.Smith@outlook.com>
+;;; Copyright © 2020 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -36,6 +37,7 @@
#:use-module (gnu packages base)
#:use-module (gnu packages bash)
#:use-module (gnu packages bison)
+ #:use-module (gnu packages c)
#:use-module (gnu packages code)
#:use-module (gnu packages compression)
#:use-module (gnu packages flex)
@@ -624,6 +626,78 @@ GDB/x86 features like hardware data watchpoints, makes debugging much more
fun.")
(license license:expat)))
+(define-public libbacktrace
+ ;; There are no releases nor tags.
+ (let ((revision "1")
+ (commit "5009c113981431ae1843ebd29d6ad24eb32fc1b2"))
+ (package
+ (name "libbacktrace")
+ (version (git-version "1.0" revision commit))
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/ianlancetaylor/libbacktrace")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0663zjpfpnsyv9h3pbp7cgmg9gz79n68bqpdl97y6i0jsx93v1zg"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:make-flags '("CFLAGS=-fPIC")))
+ (home-page "https://github.com/ianlancetaylor/libbacktrace")
+ (synopsis "C library for producing symbolic backtraces")
+ (description "The @code{libbacktrace} library can be linked into a C/C++
+program to produce symbolic backtraces.")
+ (license license:bsd-3))))
+
+(define-public libleak
+ (package
+ (name "libleak")
+ (version "0.3.5")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/WuBingzheng/libleak")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1p8mb0hcfp8hdv1klv6rrpkn2zlhjxgkxbbjsk8kszxv7ijln87d"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:tests? #f ;no test suite
+ #:parallel-build? #f ;jobserver unavailable
+ #:phases (modify-phases %standard-phases
+ (add-after 'unpack 'unbundle-libwuya
+ (lambda _
+ (substitute* "Makefile"
+ ((".*make -C libwuya.*") ""))
+ #t))
+ (add-before 'build 'set-CC
+ (lambda _
+ (setenv "CC" "gcc")
+ #t))
+ (delete 'configure) ;no configure script
+ (replace 'install
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out")))
+ (install-file "libleak.so" (string-append out "/lib"))
+ #t))))))
+ (inputs `(("libbacktrace" ,libbacktrace)
+ ("libwuya" ,libwuya)))
+ (home-page "https://github.com/WuBingzheng/libleak")
+ (synopsis "Memory leaks detection tool")
+ (description "The libleak tool detects memory leaks by hooking memory
+functions such as @code{malloc}. It comes as a shared object to be pre-loaded
+via @code{LD_PRELOAD} when launching the application. It prints the full call
+stack at suspicious memory leak points. Modifying or recompiling the target
+program is not required, and the detection can be enabled or disabled while
+the target application is running. The overhead incurred by libleak is
+smaller than that of other tools such as Valgrind, and it aims to be easier to
+use than similar tools like @command{mtrace}.")
+ (license license:gpl2+)))
+
(define-public mspdebug
(package
(name "mspdebug")
diff --git a/gnu/packages/dico.scm b/gnu/packages/dico.scm
index 44a7a21b6b..ec897d1a8a 100644
--- a/gnu/packages/dico.scm
+++ b/gnu/packages/dico.scm
@@ -1,7 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2015, 2016, 2018 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2016, 2018 Efraim Flashner <efraim@flashner.co.il>
-;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
+;;; Copyright © 2018, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2020 Vincent Legoll <vincent.legoll@gmail.com>
;;;
;;; This file is part of GNU Guix.
@@ -39,14 +39,14 @@
(define-public dico
(package
(name "dico")
- (version "2.9")
+ (version "2.10")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnu/dico/dico-"
version ".tar.xz"))
(sha256
(base32
- "0i9xqhy3h5nlizcmav4mv5ay8ivdgn4l4k0k7fxix3fsc87nijyr"))))
+ "0qag47mzs00d53hnrmh381r0jay42766vp5xrffmzmsn2307x8vl"))))
(build-system gnu-build-system)
(arguments
'(#:configure-flags (list (string-append "--with-guile-site-dir=" %output
diff --git a/gnu/packages/dictionaries.scm b/gnu/packages/dictionaries.scm
index ddc0440d73..f60b3f38d6 100644
--- a/gnu/packages/dictionaries.scm
+++ b/gnu/packages/dictionaries.scm
@@ -205,14 +205,14 @@ It comes with a German-English dictionary with approximately 270,000 entries.")
(define-public grammalecte
(package
(name "grammalecte")
- (version "1.12.0")
+ (version "1.12.2")
(source
(origin
(method url-fetch/zipbomb)
(uri (string-append "https://grammalecte.net/grammalecte/zip/"
"Grammalecte-fr-v" version ".zip"))
(sha256
- (base32 "1aifa7rj8zyxgk5cgmlgcws2hip7a7y6sr7kddjdnpfgdgy4jjgh"))))
+ (base32 "1qny2l5dr08pfj2dnzmvm5gmwqz8m879ryxfaw4k8dhaacrrrf62"))))
(build-system python-build-system)
(home-page "https://grammalecte.net")
(synopsis "French spelling and grammar checker")
diff --git a/gnu/packages/diffoscope.scm b/gnu/packages/diffoscope.scm
index 9480f1f226..3e7ab7d7ba 100644
--- a/gnu/packages/diffoscope.scm
+++ b/gnu/packages/diffoscope.scm
@@ -254,7 +254,7 @@ install.")
(inputs
`(("python-debian" ,python-debian)
("python-distro" ,python-distro)
- ("python-libarchive-c", python-libarchive-c)
+ ("python-libarchive-c" ,python-libarchive-c)
("python-rstr" ,python-rstr)))
(native-inputs
`(("diffoscope" ,diffoscope)
diff --git a/gnu/packages/disk.scm b/gnu/packages/disk.scm
index 79e187e283..235df8ce9e 100644
--- a/gnu/packages/disk.scm
+++ b/gnu/packages/disk.scm
@@ -689,7 +689,7 @@ passphrases.")
(define-public ndctl
(package
(name "ndctl")
- (version "69")
+ (version "70.1")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -698,7 +698,7 @@ passphrases.")
(file-name (git-file-name name version))
(sha256
(base32
- "1l7p0ycj27d4z07gf9qp796xpg16kfsg3rwx6plhilbhip1as4w7"))))
+ "09ymdibcr18vpmyf2n0xrnzgccfvr7iy3p2l5lbh7cgz7djyl5wq"))))
(build-system gnu-build-system)
(native-inputs
`(("asciidoc" ,asciidoc)
@@ -1038,6 +1038,50 @@ of choice for all light thinking Unix addicts!")
(home-page "https://savannah.nongnu.org/projects/hddtemp/")
(synopsis "Report the temperature of hard drives from S.M.A.R.T. information")
(description "@command{hddtemp} is a small utility that gives you the
-temperature of your hard drive by reading S.M.A.R.T. informations (for drives
+temperature of your hard drive by reading S.M.A.R.T. information (for drives
that support this feature).")
(license license:gpl2+)))
+
+(define-public memkind
+ (package
+ (name "memkind")
+ (version "1.10.1")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/memkind/memkind.git")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "11iz887f3cp5pzf1bzm644wzab8gkbhz3b7x1w6pcps71yd94ylj"))))
+ (build-system gnu-build-system)
+ (inputs
+ `(;; memkind patched jemalloc to add je_arenalookupx,
+ ;; je_check_reallocatex--i.e. they forked jemalloc.
+ ;("jemalloc" ,jemalloc)
+ ("ndctl" ,ndctl)
+ ("numactl" ,numactl)))
+ (native-inputs
+ `(("autoconf" ,autoconf)
+ ("automake" ,automake)
+ ("libtool" ,libtool)))
+ (arguments
+ `(#:tests? #f ; Tests require a NUMA-enabled system.
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'build 'autogen-jemalloc
+ (lambda _
+ (with-directory-excursion "jemalloc"
+ (substitute* "Makefile.in"
+ (("/bin/sh") (which "sh")))
+ (invoke "autoconf")
+ (substitute* "configure"
+ (("/bin/sh") (which "sh"))))
+ #t)))))
+ (home-page "https://github.com/memkind/memkind")
+ (synopsis "Heap manager with memory kinds (for NUMA)")
+ (description "This package provides a user-extensible heap manager
+built on top of jemalloc which enables control of memory characteristics
+and a partitioning of the heap between kinds of memory (for NUMA).")
+ (license license:bsd-3)))
diff --git a/gnu/packages/django.scm b/gnu/packages/django.scm
index 2370de62f5..43339720f2 100644
--- a/gnu/packages/django.scm
+++ b/gnu/packages/django.scm
@@ -6,6 +6,7 @@
;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2018 Vijayalakshmi Vedantham <vijimay12@gmail.com>
;;; Copyright © 2019 Sam <smbaines8@gmail.com>
+;;; Copyright © 2020 Marius Bakke <marius@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -33,6 +34,7 @@
#:use-module (gnu packages databases)
#:use-module (gnu packages check)
#:use-module (gnu packages geo)
+ #:use-module (gnu packages openldap)
#:use-module (gnu packages python)
#:use-module (gnu packages python-compression)
#:use-module (gnu packages python-crypto)
@@ -45,43 +47,55 @@
(define-public python-django
(package
(name "python-django")
- (version "1.11.29")
+ (version "3.1.1")
(source (origin
(method url-fetch)
(uri (pypi-uri "Django" version))
(sha256
(base32
- "171jsi54fbnxzi2n3l4hkdmmwfnfrwacs180rw59l0bqcvxsw022"))))
+ "0bzwy58hrxbsh7szak1yfh7qvvfnpdpi8ay1x7d3pvbkm1f15j2r"))))
(build-system python-build-system)
(arguments
- '(#:modules ((srfi srfi-1)
- (guix build python-build-system)
- (guix build utils))
- #:phases
+ '(#:phases
(modify-phases %standard-phases
- (add-before 'check 'set-tzdir
+ (add-before 'check 'pre-check
(lambda* (#:key inputs #:allow-other-keys)
;; The test-suite tests timezone-dependent functions, thus tzdata
;; needs to be available.
(setenv "TZDIR"
(string-append (assoc-ref inputs "tzdata")
"/share/zoneinfo"))
- #t))
- (replace 'check
- (lambda* (#:key inputs #:allow-other-keys)
- (setenv "PYTHONPATH"
- (string-append ".:" (getenv "PYTHONPATH")))
+
+ ;; Disable test for incorrect timezone: it only raises the
+ ;; expected error when /usr/share/zoneinfo exists, even though
+ ;; the machinery gracefully falls back to TZDIR. According to
+ ;; django/conf/__init__.py, lack of /usr/share/zoneinfo is
+ ;; harmless, so just ignore this test.
+ (substitute* "tests/settings_tests/tests.py"
+ ((".*def test_incorrect_timezone.*" all)
+ (string-append " @unittest.skipIf(True, 'Disabled by Guix')\n"
+ all)))
+
+ ;; Preserve the PYTHONPATH created by Guix when running the tests.
(substitute* "tests/admin_scripts/tests.py"
(("python_path = \\[")
(string-append "python_path = ['"
- (find (lambda (entry)
- (string-prefix?
- (assoc-ref inputs "python-pytz")
- entry))
- (string-split (getenv "PYTHONPATH")
- #\:))
+ (string-join
+ (string-split (getenv "PYTHONPATH") #\:)
+ "','")
"', ")))
- (invoke "python" "tests/runtests.py"))))))
+
+ #t))
+ (replace 'check
+ (lambda _
+ (with-directory-excursion "tests"
+ (setenv "PYTHONPATH"
+ (string-append "..:" (getenv "PYTHONPATH")))
+ (invoke "python" "runtests.py"
+ ;; By default tests run in parallel, which may cause
+ ;; various race conditions. Run sequentially for
+ ;; consistent results.
+ "--parallel=1")))))))
;; TODO: Install extras/django_bash_completion.
(native-inputs
`(("tzdata" ,tzdata-for-tests)
@@ -95,12 +109,16 @@
("python-pillow" ,python-pillow)
("python-pyyaml" ,python-pyyaml)
;; optional for tests: ("python-selenium" ,python-selenium)
- ("python-sqlparse" ,python-sqlparse)
("python-tblib" ,python-tblib)))
(propagated-inputs
`(("python-argon2-cffi" ,python-argon2-cffi)
+ ("python-asgiref" ,python-asgiref)
("python-bcrypt" ,python-bcrypt)
- ("python-pytz" ,python-pytz)))
+ ("python-pytz" ,python-pytz)
+
+ ;; This input is not strictly required, but in practice many Django
+ ;; libraries need it for test suites and similar.
+ ("python-sqlparse" ,python-sqlparse)))
(home-page "https://www.djangoproject.com/")
(synopsis "High-level Python Web framework")
(description
@@ -109,26 +127,27 @@ development and clean, pragmatic design. It provides many tools for building
any Web site. Django focuses on automating as much as possible and adhering
to the @dfn{don't repeat yourself} (DRY) principle.")
(license license:bsd-3)
- (properties `((python2-variant . ,(delay python2-django))
- (cpe-name . "django")))))
+ (properties `((cpe-name . "django")))))
-(define-public python2-django
- (let ((base (package-with-python2 (strip-python2-variant python-django))))
- (package
- (inherit base)
- (native-inputs
- `(;; Test requirements for Python 2 taken from
- ;; tests/requirements/py3.txt: enum34 and mock.
- ("python2-enum34" ,python2-enum34)
- ("python2-mock" ,python2-mock)
- ;; When adding memcached mind: for Python 2 memcached <= 1.53 is
- ;; required.
- ,@(package-native-inputs base))))))
+(define-public python-django-2.2
+ (package
+ (inherit python-django)
+ (version "2.2.16")
+ (source (origin
+ (method url-fetch)
+ (uri (pypi-uri "Django" version))
+ (sha256
+ (base32
+ "1535g2r322cl4x52fb0dmzlbg23539j2wx6027j54p22xvjlbkv2"))))
+ (native-inputs
+ `(;; XXX: In 2.2 and 3.0, selenium is required for the test suite.
+ ("python-selenium" ,python-selenium)
+ ,@(package-native-inputs python-django)))))
(define-public python-django-extensions
(package
(name "python-django-extensions")
- (version "2.1.6")
+ (version "3.0.6")
(source
(origin
(method git-fetch)
@@ -139,18 +158,18 @@ to the @dfn{don't repeat yourself} (DRY) principle.")
(file-name (string-append name "-" version))
(sha256
(base32
- "0p4qrdinrv6indczlc8dcnm528i5fzmcn9xk1ja7ycfkyk5x6j5w"))))
+ "0sra6hazqvspxd1pnx5cj7gia1rkaz3hn06ib4wd0frc167f5afy"))))
(build-system python-build-system)
(arguments
- '(#:tests? #f)) ;TODO collected 378 items / 3 errors / 1 skipped
+ '(#:tests? #f)) ;XXX: requires a Postgres or MySQL database
(propagated-inputs
`(("python-six" ,python-six)
("python-vobject" ,python-vobject)
("python-werkzeug" ,python-werkzeug)
- ("python-dateutil" ,python-dateutil)
- ("python-django" ,python-django)))
+ ("python-dateutil" ,python-dateutil)))
(native-inputs
- `(("python-mock" ,python-mock)
+ `(("python-django" ,python-django)
+ ("python-mock" ,python-mock)
("python-factory-boy" ,python-factory-boy)
("python-tox" ,python-tox)
("python-pytest" ,python-pytest)
@@ -168,21 +187,37 @@ commands, additional database fields and admin extensions.")
(define-public python-django-simple-math-captcha
(package
(name "python-django-simple-math-captcha")
- (version "1.0.7")
+ (version "1.0.9")
+ (home-page "https://github.com/alsoicode/django-simple-math-captcha")
(source (origin
- (method url-fetch)
- (uri (pypi-uri "django-simple-math-captcha" version))
+ (method git-fetch)
+ (uri (git-reference
+ (url home-page)
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
(sha256
(base32
- "0906hms6y6znjhpd0g4wmzv9vcla4brkdpsm4zha9zdj8g5vq2hd"))))
+ "0fhy9k8haqa1296v0qpg1b5w7y3pyw9qi9z9laj5ijry1gk35qaw"))))
(build-system python-build-system)
(arguments
- ;; FIXME: Upstream uses a 'runtests.py' script that is not
- ;; present in the pypi tarball.
- '(#:tests? #f))
+ '(#:phases (modify-phases %standard-phases
+ (add-after 'unpack 'patch-six-imports
+ (lambda _
+ ;; Django no longer bundles six, adjust the imports
+ ;; accordingly. The six dependency can likely be
+ ;; removed in the next version.
+ (substitute* (find-files "." "\\.py$")
+ (("from django\\.utils import six")
+ "import six"))
+ #t))
+ (replace 'check
+ (lambda _
+ (invoke "python" "runtests.py"))))))
+ (native-inputs
+ `(("python-django" ,python-django)
+ ("python-mock" ,python-mock)))
(propagated-inputs
- `(("python-django" ,python-django)))
- (home-page "https://github.com/alsoicode/django-simple-math-captcha")
+ `(("python-six" ,python-six)))
(synopsis "Easy-to-use math field/widget captcha for Django forms")
(description
"A multi-value-field that presents a human answerable question,
@@ -190,25 +225,20 @@ with no settings.py configuration necessary, but instead can be configured
with arguments to the field constructor.")
(license license:asl2.0)))
-(define-public python2-django-simple-math-captcha
- (package-with-python2 python-django-simple-math-captcha))
-
(define-public python-django-classy-tags
(package
(name "python-django-classy-tags")
- (version "1.0.0")
+ (version "2.0.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "django-classy-tags" version))
(sha256
(base32
- "1cayqddvxd5prhybqi77lif2z4j7mmfmxgc61pq9i82q5gy2asmd"))))
+ "1javam3zqi3y3j0r490mm61v48yh75jaha99gb7lsxkaz6yri7fm"))))
(build-system python-build-system)
- (arguments '(#:tests? #f)) ; Test script not distributed with release.
- (propagated-inputs
- `(("python-django" ,python-django)
- ("python-six" ,python-six)))
+ ;; FIXME: How to make the test templates available to Django?
+ (arguments '(#:tests? #f))
(home-page "https://github.com/divio/django-classy-tags")
(synopsis "Class based template tags for Django")
(description
@@ -221,14 +251,14 @@ when coding custom template tags.")
(define-public python-django-taggit
(package
(name "python-django-taggit")
- (version "1.1.0")
+ (version "1.3.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "django-taggit" version))
(sha256
(base32
- "044fzcpmns90kaxdi49qczlam4xsi8rl73rpfwvxx1gkcqzidgq1"))))
+ "0bbkabbs77z229ps0800gxfhf75yagp4x4j5jzfysbac3zvkp0sa"))))
(build-system python-build-system)
(arguments
'(#:phases
@@ -237,10 +267,10 @@ when coding custom template tags.")
(lambda _
(invoke "python3" "-m" "django" "test" "--settings=tests.settings"))))))
(propagated-inputs
- `(("python-django" ,python-django)
- ("python-isort" ,python-isort)))
+ `(("python-isort" ,python-isort)))
(native-inputs
- `(("python-pytest" ,python-pytest)
+ `(("python-django" ,python-django)
+ ("python-pytest" ,python-pytest)
("python-mock" ,python-mock)))
(home-page
"https://github.com/jazzband/django-taggit")
@@ -262,9 +292,10 @@ when coding custom template tags.")
(base32
"14gzp5cv24z0qhxb7f7k7v9jgzpaj4n8yhjq83ynpx8183fs1rz4"))))
(build-system python-build-system)
+ (native-inputs
+ `(("python-django" ,python-django)))
(propagated-inputs
- `(("python-django" ,python-django)
- ("python-pillow" ,python-pillow)))
+ `(("python-pillow" ,python-pillow)))
(home-page "https://github.com/SmileyChris/easy-thumbnails")
(synopsis "Easy thumbnails for Django")
(description
@@ -277,26 +308,43 @@ size and quality.")
(define-public python-pytest-django
(package
(name "python-pytest-django")
- (version "3.1.2")
+ (version "3.10.0")
(source (origin
(method url-fetch)
(uri (pypi-uri "pytest-django" version))
(sha256
(base32
- "02932m2sr8x22m4az8syr8g835g4ak77varrnw71n6xakmdcr303"))))
+ "19nvqsb7b9kz3ikpb50m8ppf7mfhzrapdxsqd5hhd1pdfz8dprjd"))))
(build-system python-build-system)
(arguments
- `(#:tests? #f ; FIXME: How to run tests?
- #:phases
+ `(#:phases
(modify-phases %standard-phases
- (add-after 'unpack 'patch-setuppy
- (lambda _
- (substitute* "setup.py"
- (("setuptools_scm==1.11.1") "setuptools_scm"))
+ (replace 'check
+ (lambda* (#:key tests? inputs outputs #:allow-other-keys)
+ (if tests?
+ (begin
+ (add-installed-pythonpath inputs outputs)
+ (setenv "PYTHONPATH"
+ (string-append ".:" ;for pytest_django_test
+ (getenv "PYTHONPATH")))
+ (setenv "PYTEST_DJANGO_TEST_RUNNER" "pytest")
+ (setenv "DJANGO_SETTINGS_MODULE"
+ "pytest_django_test.settings_sqlite_file")
+ (invoke "pytest" "-vv" "-k"
+ ;; FIXME: these tests fail to locate Django templates ...
+ (string-append "not test_django_not_loaded_without_settings"
+ " and not test_settings"
+ ;; ... and this does not discover
+ ;; 'pytest_django_test'.
+ " and not test_urls_cache_is_cleared")))
+ (format #t "test suite not run~%"))
#t)))))
(native-inputs
`(("python-django" ,python-django)
- ("python-setuptools-scm" ,python-setuptools-scm)))
+ ("python-setuptools-scm" ,python-setuptools-scm)
+
+ ;; For tests.
+ ("python-pytest-xdist" ,python-pytest-xdist)))
(propagated-inputs
`(("python-pytest" ,python-pytest)))
(home-page "https://pytest-django.readthedocs.org/")
@@ -305,9 +353,6 @@ size and quality.")
useful tools for testing Django applications and projects.")
(license license:bsd-3)))
-(define-public python2-pytest-django
- (package-with-python2 python-pytest-django))
-
(define-public python-django-haystack
(package
(name "python-django-haystack")
@@ -335,11 +380,10 @@ useful tools for testing Django applications and projects.")
"/lib"))
#t)))
#:tests? #f)) ; OSError: libgdal.so.27: cannot open shared object file
- (propagated-inputs
- `(("python-django" ,python-django)))
(native-inputs
`(("gdal" ,gdal)
("python-coverage" ,python-coverage)
+ ("python-django" ,python-django)
("python-dateutil" ,python-dateutil)
("python-geopy" ,python-geopy)
("python-mock" ,python-mock)
@@ -359,13 +403,13 @@ your code.")
(define-public python-django-filter
(package
(name "python-django-filter")
- (version "1.1.0")
+ (version "2.3.0")
(source (origin
(method url-fetch)
(uri (pypi-uri "django-filter" version))
(sha256
(base32
- "0slpfqfhnjrzlrb6vmswyhrzn01p84s16j2x1xib35gg4fxg23pc"))))
+ "1bz5qzdk9pk4a2lp2yacrdnqmkv24vxnz4k3lykrnpc3b7bkvrhi"))))
(build-system python-build-system)
(arguments
'(#:phases
@@ -387,20 +431,17 @@ filter down a queryset based on a model’s fields, displaying the form to let
them do this.")
(license license:bsd-3)))
-(define-public python2-django-filter
- (package-with-python2 python-django-filter))
-
(define-public python-django-allauth
(package
(name "python-django-allauth")
- (version "0.40.0")
+ (version "0.42.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "django-allauth" version))
(sha256
(base32
- "12f5gjidcpb7a0d1f601k0c5dcdmb6fg9sfn7xn5j8zfsg29y63a"))))
+ "0c0x8izvrnjhrr48w6pwsfk9ddbi6yfxg7v3hh5dm1vz1d0hjwpi"))))
(build-system python-build-system)
(arguments
'(#:phases
@@ -415,9 +456,8 @@ them do this.")
("python-requests" ,python-requests)
("python-requests-oauthlib" ,python-requests-oauthlib)))
(native-inputs
- `(("python-mock" ,python-mock)))
- (inputs
- `(("python-django" ,python-django)))
+ `(("python-django" ,python-django)
+ ("python-mock" ,python-mock)))
(home-page "https://github.com/pennersr/django-allauth")
(synopsis "Set of Django applications addressing authentication")
(description
@@ -426,13 +466,10 @@ registration, account management as well as 3rd party (social)
account authentication.")
(license license:expat)))
-(define-public python2-django-allauth
- (package-with-python2 python-django-allauth))
-
(define-public python-django-debug-toolbar
(package
(name "python-django-debug-toolbar")
- (version "1.10.1")
+ (version "2.2")
(source
(origin
(method git-fetch)
@@ -442,13 +479,13 @@ account authentication.")
(file-name (git-file-name name version))
(sha256
(base32
- "0zr6yjsms97wlvvd17rdbrx01irkg887dn9x70c1hzfjmfvp9afk"))))
+ "14069rlgjd5g724iaglai0nc636g9km4ba56r4j3k84chibqzn03"))))
(build-system python-build-system)
(propagated-inputs
- `(("python-sqlparse" ,python-sqlparse)
- ("python-django" ,python-django)))
+ `(("python-sqlparse" ,python-sqlparse)))
(native-inputs
- `(("python-django-jinja" ,python-django-jinja)
+ `(("python-django" ,python-django)
+ ("python-django-jinja" ,python-django-jinja)
("python-html5lib" ,python-html5lib)))
(arguments
'(#:phases
@@ -464,17 +501,42 @@ account authentication.")
request and response as a toolbar on the rendered page.")
(license license:bsd-3)))
+(define-public python-django-debug-toolbar-alchemy
+ (package
+ (name "python-django-debug-toolbar-alchemy")
+ (version "0.1.5")
+ (home-page "https://github.com/miki725/django-debug-toolbar-alchemy")
+ (source (origin
+ (method url-fetch)
+ (uri (pypi-uri "django-debug-toolbar-alchemy" version))
+ (sha256
+ (base32
+ "1kmpzghnsc247bc1dl22s4y62k9ijgy1pjms227018h5a4frsa5b"))))
+ (build-system python-build-system)
+ (arguments '(#:tests? #f)) ;XXX: 'make check' does "echo TODO"
+ (propagated-inputs
+ `(("python-django-debug-toolbar" ,python-django-debug-toolbar)
+ ("python-jsonplus" ,python-jsonplus)
+ ("python-six" ,python-six)
+ ("python-sqlalchemy" ,python-sqlalchemy)))
+ (synopsis "Django Debug Toolbar panel for SQLAlchemy")
+ (description
+ "This package completely mimics the default Django Debug Toolbar SQL
+panel (internally it is actually subclassed), but instead of displaying
+queries done via the Django ORM, SQLAlchemy generated queries are displayed.")
+ (license license:expat)))
+
(define-public python-django-gravatar2
(package
(name "python-django-gravatar2")
- (version "1.4.2")
+ (version "1.4.4")
(source
(origin
(method url-fetch)
(uri (pypi-uri "django-gravatar2" version))
(sha256
(base32
- "1qsv40xywbqsf4mkrmsswrpzqd7nfljxpfiim9an2z3dykn5rka6"))))
+ "1vn921fb6jjx7rf5dzhy66rkb71nwmh9ydd0xs9ys72icw4jh4y8"))))
(build-system python-build-system)
(arguments
'(;; TODO: The django project for the tests is missing from the release.
@@ -488,44 +550,22 @@ request and response as a toolbar on the rendered page.")
templatetags and a full test suite.")
(license license:expat)))
-(define-public python2-django-gravatar2
- (package-with-python2 python-django-gravatar2))
-
(define-public python-django-assets
(package
(name "python-django-assets")
- (version "0.12")
+ (version "2.0")
(source (origin
(method url-fetch)
(uri (pypi-uri "django-assets" version))
(sha256
(base32
- "0y0007fvkn1rdlj2g0y6k1cnkx53kxab3g8i85i0rd58k335p365"))))
+ "0fc6i77faxxv1gjlp06lv3kw64b5bhdiypaygfxh5djddgk83fwa"))))
(build-system python-build-system)
- (arguments
- `(#:phases
- (modify-phases %standard-phases
- (add-before 'check 'fix-tests
- (lambda _
- (begin
- ;; https://github.com/miracle2k/django-assets/issues/87
- (substitute* "tests/__init__.py"
- (("settings.configure.*")
- (string-append
- "settings.configure(\n"
- "INSTALLED_APPS=['django_assets', "
- "'django.contrib.staticfiles'],\n"
- "TEMPLATES=[{'BACKEND': "
- "'django.template.backends.django.DjangoTemplates'}],\n"
- ")\n")))
- ;; These tests fail
- (substitute* "tests/test_django.py"
- (("TestLoader") "NoTestLoader"))))))))
(native-inputs
- `(("python-nose" ,python-nose)))
- (propagated-inputs
`(("python-django" ,python-django)
- ("python-webassets" ,python-webassets)))
+ ("python-nose" ,python-nose)))
+ (propagated-inputs
+ `(("python-webassets" ,python-webassets)))
(home-page "https://github.com/miracle2k/django-assets")
(synopsis "Asset management for Django")
(description
@@ -534,13 +574,10 @@ files. Integrates the webassets library with Django, adding support for
merging, minifying and compiling CSS and Javascript files.")
(license license:bsd-2)))
-(define-public python2-django-assets
- (package-with-python2 python-django-assets))
-
(define-public python-django-jinja
(package
(name "python-django-jinja")
- (version "2.4.1")
+ (version "2.6.0")
(source
(origin
(method git-fetch)
@@ -550,11 +587,10 @@ merging, minifying and compiling CSS and Javascript files.")
(file-name (git-file-name name version))
(sha256
(base32
- "1fcrxlznlq1xvl26y3j1r22vvy6m08r5l97xi2wj50rdmxhfvhis"))))
+ "06ldbkfkm6sc0p9sqpjph06gxrqpj78ih3dc2yik2fcba2y5mak1"))))
(build-system python-build-system)
(propagated-inputs
- `(("python-django" ,python-django)
- ("python-jinja2" ,python-jinja2)
+ `(("python-jinja2" ,python-jinja2)
("python-pytz" ,python-pytz)
("python-django-pipeline" ,python-django-pipeline)))
(arguments
@@ -578,47 +614,20 @@ provides certain advantages over the builtin Jinja2 backend in Django, for
example, explicit calls to callables from templates and better performance.")
(license license:bsd-3)))
+;; JSONField is now built-in to Django, obsoleting this package.
(define-public python-django-jsonfield
- (package
- (name "python-django-jsonfield")
- (version "1.0.3")
- (source (origin
- (method url-fetch)
- (uri (pypi-uri "jsonfield" version))
- (sha256
- (base32
- "19x4lak0hg9c20r7mvf27w7i8r6i4sg2g0ypmlmp2665fnk76zvy"))))
- (build-system python-build-system)
- (arguments
- `(#:phases
- (modify-phases %standard-phases
- (add-before 'check 'fix-tests
- (lambda _
- (substitute* "jsonfield/tests.py"
- (("django.forms.util") "django.forms.utils")))))))
- (propagated-inputs
- `(("python-django" ,python-django)))
- (home-page "https://github.com/bradjasper/django-jsonfield")
- (synopsis "Store validated JSON in your model")
- (description
- "Django-jsonfield is a reusable Django field that allows you to store
-validated JSON in your model. It silently takes care of serialization. To
-use, simply add the field to one of your models.")
- (license license:expat)))
-
-(define-public python2-django-jsonfield
- (package-with-python2 python-django-jsonfield))
+ (deprecated-package "python-django-jsonfield" python-django))
(define-public python-dj-database-url
(package
(name "python-dj-database-url")
- (version "0.4.2")
+ (version "0.5.0")
(source (origin
(method url-fetch)
(uri (pypi-uri "dj-database-url" version))
(sha256
(base32
- "024zbkc5rli4hia9lz9g8kf1zxhb2gwawj5abf67i7gf8n22v0x6"))))
+ "0qs16g5y3lflxibsl8gwkwap21crhmmv98l60rdq6x1wawgypsja"))))
(build-system python-build-system)
(home-page "https://github.com/kennethreitz/dj-database-url")
(synopsis "Use Database URLs in your Django Application")
@@ -631,24 +640,30 @@ dictionary, populated with all the data specified in your URL. There is also a
conn_max_age argument to easily enable Django’s connection pool.")
(license license:bsd-2)))
-(define-public python2-dj-database-url
- (package-with-python2 python-dj-database-url))
-
(define-public python-django-picklefield
(package
(name "python-django-picklefield")
- (version "2.1.1")
+ (version "3.0.1")
+ (home-page "https://github.com/gintas/django-picklefield")
+ ;; Use a git checkout because the PyPI release lacks tests.
(source
(origin
- (method url-fetch)
- (uri (pypi-uri "django-picklefield" version))
+ (method git-fetch)
+ (uri (git-reference
+ (url home-page)
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
(sha256
(base32
- "0imncys5s3vsy2q79nn7k5d670da1xgmcr9gmhn06fry6ibf39b7"))))
+ "0ni7bc86k0ra4pc8zv451pzlpkhs1nyil1sq9jdb4m2mib87b5fk"))))
(build-system python-build-system)
- (propagated-inputs `(("python-django" ,python-django)))
- (native-inputs `(("python-tox" ,python-tox)))
- (home-page "https://github.com/gintas/django-picklefield")
+ (arguments
+ '(#:phases (modify-phases %standard-phases
+ (replace 'check
+ (lambda _
+ (invoke "python" "-m" "django" "test" "-v2"
+ "--settings=tests.settings"))))))
+ (native-inputs `(("python-django" ,python-django)))
(synopsis "Pickled object field for Django")
(description "Pickled object field for Django")
(license license:expat)))
@@ -656,23 +671,17 @@ conn_max_age argument to easily enable Django’s connection pool.")
(define-public python-django-bulk-update
(package
(name "python-django-bulk-update")
- (version "1.1.10")
+ (version "2.2.0")
(source (origin
(method url-fetch)
(uri (pypi-uri "django-bulk-update" version))
(sha256
(base32
- "0mbng9m7swfc0dnidipbzlxfhlfjrv755dlnha5s4m9mgdxb1fhc"))))
+ "0dxkmrm3skyw82i0qa8vklxw1ma1y308kh9w2hcnvhpacn5cxdss"))))
(build-system python-build-system)
(arguments
- ;; tests don't support django 1.10, but the module seems to work.
+ ;; XXX: Tests require a Postgres database.
`(#:tests? #f))
- (native-inputs
- `(("six" ,python-six)
- ("jsonfield" ,python-django-jsonfield)
- ("python-dj-database-url" ,python-dj-database-url)))
- (propagated-inputs
- `(("python-django" ,python-django)))
(home-page "https://github.com/aykut/django-bulk-update")
(synopsis "Simple bulk update over Django ORM or with helper function")
(description
@@ -680,34 +689,30 @@ conn_max_age argument to easily enable Django’s connection pool.")
project aims to bulk update given objects using one query over Django ORM.")
(license license:expat)))
-(define-public python2-django-bulk-update
- (package-with-python2 python-django-bulk-update))
-
(define-public python-django-contact-form
(package
(name "python-django-contact-form")
- (version "1.3")
+ (version "1.8.1")
(source (origin
(method url-fetch)
(uri (pypi-uri "django-contact-form" version))
(sha256
(base32
- "0az590y56k5ahv4sixrkn54d3a8ig2q2z9pl6s3m4f533mx2gj17"))))
+ "1zv7bcjfrg32gcsq3bclkld79l6mcy2wcvlj81h7q2ppv1wm8vqs"))))
(build-system python-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(replace 'check
(lambda _
- ;; the next version will need "make test"
- (invoke "flake8" "contact_form")
- (invoke "coverage" "run" "contact_form/runtests.py")
- (invoke "coverage" "report" "-m" "--fail-under" "0"))))))
+ (setenv "PYTHONPATH"
+ (string-append "./build/lib:"
+ (getenv "PYTHONPATH")))
+ (invoke "coverage" "run" "--source" "contact_form"
+ "runtests.py"))))))
(native-inputs
`(("python-coverage" ,python-coverage)
- ("python-flake8" ,python-flake8)))
- (propagated-inputs
- `(("python-django" ,python-django)))
+ ("python-django" ,python-django)))
(home-page "https://github.com/ubernostrum/django-contact-form")
(synopsis "Contact form for Django")
(description
@@ -715,22 +720,21 @@ project aims to bulk update given objects using one query over Django ORM.")
for Django sites.")
(license license:bsd-3)))
-(define-public python2-django-contact-form
- (package-with-python2 python-django-contact-form))
-
(define-public python-django-contrib-comments
(package
(name "python-django-contrib-comments")
- (version "1.8.0")
+ (version "1.9.2")
(source (origin
(method url-fetch)
(uri (pypi-uri "django-contrib-comments" version))
(sha256
(base32
- "0bxsgw8jrkhg6r5s0z6ksfi4w8yknaqb1s9acmxd9pm3pnsnp5kx"))))
+ "0ccdiv784a5vnpfal36km4dyg12340rwhpr0riyy0k89wfnjn8yi"))))
(build-system python-build-system)
- (propagated-inputs
+ (native-inputs
`(("python-django" ,python-django)))
+ (propagated-inputs
+ `(("python-six" ,python-six)))
(home-page "https://github.com/django/django-contrib-comments")
(synopsis "Comments framework")
(description
@@ -740,53 +744,17 @@ used to attach comments to any model, so you can use it for comments on blog
entries, photos, book chapters, or anything else.")
(license license:bsd-3)))
-(define-public python2-django-contrib-comments
- (package-with-python2 python-django-contrib-comments))
-
-(define-public python-django-overextends
- (package
- (name "python-django-overextends")
- (version "0.4.3")
- (source (origin
- (method url-fetch)
- (uri (pypi-uri "django-overextends" version))
- (sha256
- (base32
- "0qc2pcf3i56pmfxh2jw7k3pgljd8xzficmkl2541n7bkcbngqfzm"))))
- (build-system python-build-system)
- (arguments
- `(#:phases
- (modify-phases %standard-phases
- (replace 'check
- (lambda _ (invoke "./test_project/manage.py" "test"))))))
- (propagated-inputs
- `(("python-django" ,python-django)))
- (native-inputs
- `(("sphinx-me" ,python-sphinx-me)))
- (home-page "https://github.com/stephenmcd/django-overextends")
- (synopsis "Circular template inheritance")
- (description
- "A Django reusable app providing the overextends template tag, a drop-in
-replacement for Django's extends tag, which allows you to use circular template
-inheritance. The primary use-case for overextends is to simultaneously
-override and extend templates from other reusable apps, in your own Django
-project.")
- (license license:bsd-2)))
-
-(define-public python2-django-overextends
- (package-with-python2 python-django-overextends))
-
(define-public python-django-pipeline
(package
(name "python-django-pipeline")
- (version "1.6.14")
+ (version "2.0.5")
(source
(origin
(method url-fetch)
(uri (pypi-uri "django-pipeline" version))
(sha256
(base32
- "1a207y71r7za033ira0qmh2yrgp5rq0l04gw2fg9b8jri7sslrzg"))))
+ "19vrbd5s12qw4qlg5n8ldv7zz2rs5y2sdid1i7lvgp92m71dayvc"))))
(build-system python-build-system)
(arguments
'(#:phases
@@ -806,8 +774,10 @@ project.")
(getenv "PYTHONPATH")))
(setenv "DJANGO_SETTINGS_MODULE" "tests.settings")
(invoke "django-admin" "test" "tests"))))))))
+ (native-inputs
+ `(("python-django" ,python-django)))
(propagated-inputs
- `(("python-django" ,python-django)
+ `(("python-css-html-js-minify" ,python-css-html-js-minify)
("python-slimit" ,python-slimit)
("python-jsmin" ,python-jsmin)))
(home-page
@@ -822,13 +792,13 @@ support, and optional data-URI image and font embedding.")
(define-public python-django-redis
(package
(name "python-django-redis")
- (version "4.10.0")
+ (version "4.12.1")
(source (origin
(method url-fetch)
(uri (pypi-uri "django-redis" version))
(sha256
(base32
- "1rxcwnv9ik0swkwvfqdi9i9baw6n8if5pj6q63fjh4p9chw3j2xg"))))
+ "0qvsm8yjchl0d3i7g20wba6px9lb5gv8kp3fcnr6hr0y0b3qjr9h"))))
(build-system python-build-system)
(arguments
`(#:phases
@@ -839,33 +809,30 @@ support, and optional data-URI image and font embedding.")
(with-directory-excursion "tests"
(invoke "python" "runtests.py")))))))
(native-inputs
- `(("python-fakeredis" ,python-fakeredis)
+ `(("python-django" ,python-django)
+ ("python-fakeredis" ,python-fakeredis)
("python-hiredis" ,python-hiredis)
("python-mock" ,python-mock)
("python-msgpack" ,python-msgpack)
("redis" ,redis)))
(propagated-inputs
- `(("python-django" ,python-django)
- ("python-redis" ,python-redis)))
+ `(("python-redis" ,python-redis)))
(home-page "https://github.com/niwibe/django-redis")
(synopsis "Full featured redis cache backend for Django")
(description
"Full featured redis cache backend for Django.")
(license license:bsd-3)))
-(define-public python2-django-redis
- (package-with-python2 python-django-redis))
-
(define-public python-django-rq
(package
(name "python-django-rq")
- (version "1.3.1")
+ (version "2.3.2")
(source (origin
(method url-fetch)
(uri (pypi-uri "django-rq" version))
(sha256
(base32
- "1ips1ikv5qhgwb58ssn496vgqg9qv6jinwmwbrg9l3s75fskd1l5"))))
+ "0lksnjn3q3f7y72bj2yr8870w28a5b6x0vjnd9nhpq2ah6xfz6pf"))))
(build-system python-build-system)
(arguments
`(#:phases
@@ -877,11 +844,13 @@ support, and optional data-URI image and font embedding.")
"--settings=django_rq.tests.settings"
"--pythonpath=."))))))
(native-inputs
- `(("python-mock" ,python-mock)
+ `(("python-django" ,python-django)
+ ("python-django-redis" ,python-django-redis)
+ ("python-mock" ,python-mock)
+ ("python-rq-scheduler" ,python-rq-scheduler)
("redis" ,redis)))
(propagated-inputs
- `(("python-django" ,python-django)
- ("python-rq" ,python-rq)))
+ `(("python-rq" ,python-rq)))
(home-page "https://github.com/ui/django-rq")
(synopsis "Django integration with RQ")
(description
@@ -890,37 +859,26 @@ Django-RQ is a simple app that allows you to configure your queues in django's
settings.py and easily use them in your project.")
(license license:expat)))
-(define-public python2-django-rq
- (package-with-python2 python-django-rq))
-
(define-public python-django-q
(package
(name "python-django-q")
- (version "1.3.2")
+ (version "1.3.3")
(source
(origin
(method url-fetch)
(uri (pypi-uri "django-q" version))
(sha256
(base32
- "0ac3rjxv37bn97a62ly8b7qvbv765z6paiinzpwxx83nal2icc42"))))
+ "1fs29767940akbsn3vdzw2rqnn9v77b0b55bi7fvydny1rk7fw6y"))))
(build-system python-build-system)
- (arguments
- '(#:phases
- (modify-phases %standard-phases
- (replace 'check
- (lambda _
- (setenv "DJANGO_SETTINGS_MODULE" "django_q.tests.settings")
- (invoke "django-admin" "test" "django_q.tests"
- "--pythonpath=."))))))
+ ;; FIXME: Tests require disque, Redis, MongoDB, Docker.
+ (arguments '(#:tests? #f))
+ (native-inputs
+ `(("python-django" ,python-django)))
(propagated-inputs
`(("python-arrow" ,python-arrow)
("python-blessed" ,python-blessed)
- ("python-django" ,python-django)
("python-django-picklefield" ,python-django-picklefield)))
- (native-inputs
- `(("python-django-redis" ,python-django-redis)
- ("python-pytest-django" ,python-pytest-django)))
(home-page "https://django-q.readthedocs.io/")
(synopsis "Multiprocessing distributed task queue for Django")
(description
@@ -931,20 +889,25 @@ using Python multiprocessing.")
(define-public python-django-sortedm2m
(package
(name "python-django-sortedm2m")
- (version "1.3.3")
+ (version "3.0.2")
(source (origin
(method url-fetch)
(uri (pypi-uri "django-sortedm2m" version))
(sha256
(base32
- "0axf765i7b3c2s83nlph47asi8s071dhq8l7y382v1pw785s22vi"))))
+ "0z0yymmrr2l5cznqbzwziw624df0qsiflvbpqwrpan52nww3dk4a"))))
(build-system python-build-system)
(arguments
- ;; no tests.
- `(#:tests? #f))
- (propagated-inputs
+ `(#:phases (modify-phases %standard-phases
+ (replace 'check
+ (lambda _
+ (setenv "PYTHONPATH" (string-append "./test_project:"
+ "./build/lib:.:"
+ (getenv "PYTHONPATH")))
+ (invoke "django-admin.py" "test" "--settings=settings"))))))
+ (native-inputs
`(("python-django" ,python-django)))
- (home-page "https://github.com/gregmuellegger/django-sortedm2m")
+ (home-page "https://github.com/jazzband/django-sortedm2m")
(synopsis "Drop-in replacement for django's own ManyToManyField")
(description
"Sortedm2m is a drop-in replacement for django's own ManyToManyField.
@@ -952,23 +915,27 @@ The provided SortedManyToManyField behaves like the original one but remembers
the order of added relations.")
(license license:bsd-3)))
-(define-public python2-django-sortedm2m
- (package-with-python2 python-django-sortedm2m))
-
(define-public python-django-appconf
(package
(name "python-django-appconf")
- (version "1.0.3")
+ (version "1.0.4")
(source (origin
(method url-fetch)
(uri (pypi-uri "django-appconf" version))
(sha256
(base32
- "1qw0p9qh78bvkgi38ba58djwn0rd5j1lrkg2c2wk5wb7snj3rw9m"))))
+ "101k8nkc7xlffpjdi2qbrp9pc4v8hzvmkzi12qp7vms39asxwn5y"))))
(build-system python-build-system)
- (propagated-inputs
- `(("python-django" ,python-django)
- ("python-six" ,python-six)))
+ (arguments
+ '(#:phases (modify-phases %standard-phases
+ (replace 'check
+ (lambda _
+ (setenv "PYTHONPATH" (string-append ".:"
+ (getenv "PYTHONPATH")))
+ (setenv "DJANGO_SETTINGS_MODULE" "tests.test_settings")
+ (invoke "django-admin.py" "test" "-v2"))))))
+ (native-inputs
+ `(("python-django" ,python-django)))
(home-page "https://github.com/django-compressor/django-appconf")
(synopsis "Handle configuration defaults of packaged Django apps")
(description
@@ -979,105 +946,42 @@ django-appconf and can't easily be used as a replacement. The similarity in
name is purely coincidental.")
(license license:bsd-3)))
-(define-public python2-django-appconf
- (package-with-python2 python-django-appconf))
-
(define-public python-django-statici18n
(package
(name "python-django-statici18n")
- (version "1.3.0")
+ (version "1.9.0")
+ (home-page "https://github.com/zyegfryed/django-statici18n")
(source (origin
- (method url-fetch)
- (uri (pypi-uri "django-statici18n" version))
+ (method git-fetch)
+ (uri (git-reference
+ (url home-page)
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
(sha256
(base32
- "0alcf4g1nv69njhq5k3qw4mfl2k6dc18bik5nk0g1mnp3m8zyz7k"))))
+ "1p3myp2im6c87yc05alh91jyahqws5lcw3zzdsj4dh8lx9s9cgpf"))))
(build-system python-build-system)
- (propagated-inputs
+ (arguments
+ '(#:phases (modify-phases %standard-phases
+ (replace 'check
+ (lambda _
+ (setenv "PYTHONPATH"
+ (string-append "./tests/test_project:./build/lib:"
+ (getenv "PYTHONPATH")))
+ (setenv "DJANGO_SETTINGS_MODULE" "project.settings")
+ (invoke "pytest" "-vv"))))))
+ (native-inputs
`(("python-django" ,python-django)
- ("django-appconf" ,python-django-appconf)))
- (home-page "https://github.com/zyegfryed/django-statici18n")
+ ("python-pytest" ,python-pytest)
+ ("python-pytest-django" ,python-pytest-django)))
+ (propagated-inputs
+ `(("django-appconf" ,python-django-appconf)))
(synopsis "Generate JavaScript catalog to static files")
(description
"A Django app that provides helper for generating JavaScript catalog to
static files.")
(license license:bsd-3)))
-(define-public python2-django-statici18n
- (package-with-python2 python-django-statici18n))
-
-(define-public pootle
- (package
- (name "pootle")
- (version "2.8.2")
- (source
- (origin
- (method url-fetch)
- (uri (pypi-uri "Pootle" version ".tar.bz2"))
- (sha256
- (base32
- "1ng8igq0alsqzasgxdh3fb23581anyzp121h9041pwdzzv98kn4m"))))
- (build-system python-build-system)
- (arguments
- `(; pootle supports only python2.
- #:python ,python-2
- ;; tests are not run and fail with "pytest_pootle/data/po/.tmp: No such
- ;; file or directory". If we create this directory,
- ;; pytest_pootle/data/po/terminology.po is missing.
- #:tests? #f
- #:phases
- (modify-phases %standard-phases
- (add-before 'build 'fix-requirements
- (lambda _
- (substitute* "Pootle.egg-info/requires.txt"
- (("1.7.3") "1.8.0")
- (("2.0.0") "2.1.0"))
- (substitute* "requirements/tests.txt"
- (("==3.0.6") ">=3.0.6"))
- (substitute* "requirements/base.txt"
- (("1.7.3") "1.8.0")
- (("2.0.0") "2.1.0")))))))
- (propagated-inputs
- `(("django-allauth" ,python2-django-allauth)
- ("django-assets" ,python2-django-assets)
- ("django-bulk-update" ,python2-django-bulk-update)
- ("django-contact-form" ,python2-django-contact-form)
- ("django-contrib-comments" ,python2-django-contrib-comments)
- ("django-overextends" ,python2-django-overextends)
- ("django-redis" ,python2-django-redis)
- ("django-rq" ,python2-django-rq)
- ("django-sortedm2m" ,python2-django-sortedm2m)
- ("django-statici18n" ,python2-django-statici18n)
- ("babel" ,python2-babel)
- ("cssmin" ,python2-cssmin)
- ("diff-match-patch" ,python2-diff-match-patch)
- ("dirsync" ,python2-dirsync)
- ("elasticsearch" ,python2-elasticsearch)
- ("jsonfield" ,python2-django-jsonfield)
- ("lxml" ,python2-lxml)
- ("dateutil" ,python2-dateutil)
- ("levenshtein" ,python2-levenshtein)
- ("mysqlclient" ,python2-mysqlclient)
- ("psycopg2" ,python2-psycopg2)
- ("pytz" ,python2-pytz)
- ("rq" ,python2-rq)
- ("scandir" ,python2-scandir)
- ("stemming" ,python2-stemming)
- ("translate-toolkit" ,python2-translate-toolkit)))
- (native-inputs
- `(("python2-pytest" ,python2-pytest)
- ("python2-pytest-django" ,python2-pytest-django)
- ("python2-pytest-catchlog" ,python2-pytest-catchlog)
- ("python2-pytest-cov" ,python2-pytest-cov)
- ("python2-factory-boy" ,python2-factory-boy)))
- (home-page "https://pootle.translatehouse.org/")
- (synopsis "Community localization server")
- (description
- "Pootle is an online translation and localization tool. It works to
-lower the barrier of entry, providing tools to enable teams to work towards
-higher quality while welcoming newcomers.")
- (license license:gpl3+)))
-
(define-public python-django-tagging
(package
(name "python-django-tagging")
@@ -1104,63 +1008,47 @@ higher quality while welcoming newcomers.")
(description "This package provides a generic tagging application for
Django projects, which allows association of a number of tags with any
@code{Model} instance and makes retrieval of tags simple.")
- (properties `((python2-variant . ,(delay python2-django-tagging))))
(license license:bsd-3)))
-(define-public python2-django-tagging
- (let ((base (package-with-python2
- (strip-python2-variant python-django-tagging))))
- (package
- (inherit base)
- (version "0.4.6")
- (source
- (origin
- (method url-fetch)
- (uri (pypi-uri "django-tagging" version))
- (sha256
- (base32
- "0s7b4v45j783yaxs7rni10k24san0ya77nqz4s7zdf3jhfpk42r1")))))))
-
(define-public python-djangorestframework
(package
(name "python-djangorestframework")
- (version "3.7.7")
+ (version "3.11.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "djangorestframework" version))
(sha256
(base32
- "11qv117gqwswxjljs7wafxg1hyzzlx3qrviwlk9hw41bsbl997lz"))))
+ "0chbl1d0m1x23mmpdj7y85k3n32lpxrhcdl07ywnylfj9dd2vl3d"))))
(build-system python-build-system)
(arguments
'(;; No included tests
#:tests? #f))
- (propagated-inputs
- `(("python-django" ,python-django)))
(home-page "https://www.django-rest-framework.org")
(synopsis "Toolkit for building Web APIs with Django")
(description
"The Django REST framework is for building Web APIs with Django. It
-provides features like a web browseable API and authentication policies.")
+provides features like a Web-browsable API and authentication policies.")
(license license:bsd-2)))
(define-public python-django-sekizai
(package
(name "python-django-sekizai")
- (version "1.1.0")
+ (version "2.0.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "django-sekizai" version))
(sha256
(base32
- "1nc4sv109valdn6azmgm2j01k7khxy2wnji84z63x7fxsikfdxp2"))))
+ "0vrkli625b5s1wldri3dyrfvqbxg7zxy2pg0rpjixw3b1ndz0ag8"))))
(build-system python-build-system)
(arguments '(#:tests? #f)) ; Tests not included with release.
+ (native-inputs
+ `(("python-django" ,python-django)))
(propagated-inputs
- `(("python-django" ,python-django)
- ("python-django-classy-tags" ,python-django-classy-tags)
+ `(("python-django-classy-tags" ,python-django-classy-tags)
("python-six" ,python-six)))
(home-page "https://github.com/divio/django-sekizai")
(synopsis "Template blocks for Django projects")
@@ -1177,19 +1065,19 @@ a single block.")
(define-public python-django-crispy-forms
(package
(name "python-django-crispy-forms")
- (version "1.7.2")
+ (version "1.9.2")
(source
(origin
(method url-fetch)
(uri (pypi-uri "django-crispy-forms" version))
(sha256
(base32
- "0pv7y648i8iz7mf64gkjizpbx5d01ap2s4vqqa30n38if6wvlljr"))))
+ "0fxlf233f49hjax786p4r650rd0ilvhnpyvw8hv1d1aqnkxy1wgj"))))
(build-system python-build-system)
(arguments
'(;; No included tests
#:tests? #f))
- (propagated-inputs
+ (native-inputs
`(("python-django" ,python-django)))
(home-page
"http://github.com/maraujop/django-crispy-forms")
@@ -1247,20 +1135,162 @@ template tag.")
(define-public python-django-override-storage
(package
(name "python-django-override-storage")
- (version "0.1.6")
+ (version "0.3.0")
+ (home-page "https://github.com/danifus/django-override-storage")
(source
(origin
- (method url-fetch)
- (uri (pypi-uri "django-override-storage" version))
+ (method git-fetch)
+ (uri (git-reference
+ (url home-page)
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
(sha256
- (base32 "022arq94lxnlyykn8wvfnkykhi2dldnsn93pa2i41na551i0wpiv"))))
+ (base32 "081kzfk7mmybhihvc92d3hsdg0r2k20ydq88fs1fgd348sq1ax51"))))
(build-system python-build-system)
- (propagated-inputs
- `(("python-django" ,python-django)))
- (home-page
- "https://github.com/danifus/django-override-storage")
+ (arguments
+ '(#:phases (modify-phases %standard-phases
+ (replace 'check
+ (lambda _
+ (invoke "python" "runtests.py"))))))
+ (native-inputs
+ `(("python-django" ,python-django)
+ ("python-mock" ,python-mock)))
(synopsis "Django test helpers to manage file storage side effects")
(description
"This project provides tools to help reduce the side effects of using
FileFields during tests.")
(license license:expat)))
+
+(define-public python-django-auth-ldap
+ (package
+ (name "python-django-auth-ldap")
+ (version "2.2.0")
+ (source (origin
+ (method url-fetch)
+ (uri (pypi-uri "django-auth-ldap" version))
+ (sha256
+ (base32
+ "1gq49l5lv6ar6yf73c8pix8n7md4109yq31s5jfk64w6n1rigbqi"))))
+ (build-system python-build-system)
+ (arguments
+ '(#:phases (modify-phases %standard-phases
+ (replace 'check
+ (lambda* (#:key inputs #:allow-other-keys)
+ (let ((openldap (assoc-ref inputs "openldap")))
+ ;; The tests need 'slapd' which is installed to the
+ ;; libexec directory of OpenLDAP.
+ (setenv "SLAPD" (string-append openldap "/libexec/slapd"))
+ (setenv "SCHEMA"
+ (string-append openldap "/etc/openldap/schema"))
+ (invoke "python" "-m" "django" "test"
+ "--settings" "tests.settings")))))))
+ (native-inputs
+ `(("openldap" ,openldap)
+ ("python-django" ,python-django)
+ ("python-mock" ,python-mock)))
+ (propagated-inputs
+ `(("python-ldap" ,python-ldap)))
+ (home-page "https://github.com/django-auth-ldap/django-auth-ldap")
+ (synopsis "Django LDAP authentication backend")
+ (description
+ "This packages provides a LDAP authentication backend for Django.")
+ (license license:bsd-2)))
+
+(define-public python-django-logging-json
+ (package
+ (name "python-django-logging-json")
+ (version "1.15")
+ (source (origin
+ (method url-fetch)
+ (uri (pypi-uri "django-logging-json" version))
+ (sha256
+ (base32
+ "06041a8icazzp73kg93c7k1ska12wvkq7fpcad0l0sm1qnxx5yx7"))))
+ (build-system python-build-system)
+ (arguments '(#:tests? #f)) ;no tests
+ (native-inputs
+ `(("python-django" ,python-django)))
+ (propagated-inputs
+ `(("python-certifi" ,python-certifi)
+ ("python-elasticsearch" ,python-elasticsearch)
+ ("python-six" ,python-six)))
+ (home-page "https://github.com/cipriantarta/django-logging")
+ (synopsis "Log requests/responses in various formats")
+ (description
+ "This package provides a Django library that logs request, response,
+and exception details in a JSON document. It can also send logs directly
+to ElasticSearch.")
+ (license license:bsd-2)))
+
+(define-public python-django-netfields
+ (package
+ (name "python-django-netfields")
+ (version "1.2.2")
+ (source (origin
+ (method url-fetch)
+ (uri (pypi-uri "django-netfields" version))
+ (sha256
+ (base32
+ "1c47azr5am0q8g45x0fbn0cay7vyrack6n7k6siliw1j2p0gzi7s"))))
+ (build-system python-build-system)
+ (arguments '(#:tests? #f)) ;XXX: Requires a running PostgreSQL server
+ (native-inputs
+ `(("python-django" ,python-django)))
+ (propagated-inputs
+ `(("python-ipaddress" ,python-ipaddress)
+ ("python-netaddr" ,python-netaddr)
+ ("python-six" ,python-six)))
+ (home-page "https://github.com/jimfunk/django-postgresql-netfields")
+ (synopsis "PostgreSQL netfields implementation for Django")
+ (description
+ "This package provides mappings for the PostgreSQL @code{INET} and
+@code{CIDR} fields for use in Django projects.")
+ (license license:bsd-3)))
+
+(define-public python-django-url-filter
+ (package
+ (name "python-django-url-filter")
+ (version "0.3.15")
+ (home-page "https://github.com/miki725/django-url-filter")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference (url home-page) (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0r4zhqhs8y6cnplwyvcb0zpijizw1ifnszs38n4w8138657f9026"))))
+ (build-system python-build-system)
+ (arguments
+ '(#:tests? #f ;FIXME: Django raises "Apps aren't loaded yet"!?
+ #:phases (modify-phases %standard-phases
+ (add-before 'check 'loosen-requirements
+ (lambda _
+ ;; Do not depend on compatibility package for old
+ ;; Python versions.
+ (substitute* "requirements.txt"
+ (("enum-compat") ""))
+ #t))
+ (replace 'check
+ (lambda* (#:key tests? #:allow-other-keys)
+ (if tests?
+ (begin
+ (setenv "PYTHONPATH"
+ (string-append "./build/lib:.:"
+ (getenv "PYTHONPATH")))
+ (setenv "DJANGO_SETTINGS_MODULE"
+ "test_project.settings")
+ (invoke "pytest" "-vv" "--doctest-modules"
+ "tests/" "url_filter/"))
+ (format #t "test suite not run~%")))))))
+ (native-inputs
+ `(("python-django" ,python-django)))
+ (propagated-inputs
+ `(("python-cached-property" ,python-cached-property)
+ ("python-six" ,python-six)))
+ (synopsis "Filter data via human-friendly URLs")
+ (description
+ "The main goal of Django URL Filter is to provide an easy URL interface
+for filtering data. It allows the user to safely filter by model attributes
+and also allows to specify the lookup type for each filter (very much like
+Django's filtering system in ORM).")
+ (license license:expat)))
diff --git a/gnu/packages/dns.scm b/gnu/packages/dns.scm
index 8bb34111d2..a27b670d8c 100644
--- a/gnu/packages/dns.scm
+++ b/gnu/packages/dns.scm
@@ -17,6 +17,7 @@
;;; Copyright © 2020 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2020 Leo Famulari <leo@famulari.name>
;;; Copyright © 2020 Brice Waegeneire <brice@waegenei.re>
+;;; Copyright © 2020 Simon South <simon@simonsouth.net>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -45,6 +46,7 @@
#:use-module (gnu packages compression)
#:use-module (gnu packages crypto)
#:use-module (gnu packages datastructures)
+ #:use-module (gnu packages elf)
#:use-module (gnu packages flex)
#:use-module (gnu packages freedesktop)
#:use-module (gnu packages gcc)
@@ -65,9 +67,11 @@
#:use-module (gnu packages protobuf)
#:use-module (gnu packages python)
#:use-module (gnu packages python-xyz)
+ #:use-module (gnu packages ragel)
#:use-module (gnu packages shells)
#:use-module (gnu packages sphinx)
#:use-module (gnu packages swig)
+ #:use-module (gnu packages texinfo)
#:use-module (gnu packages tls)
#:use-module (gnu packages web)
#:use-module (gnu packages xml)
@@ -313,7 +317,7 @@ and BOOTP/TFTP for network booting of diskless machines.")
(package
(name "bind")
;; When updating, check whether isc-dhcp's bundled copy should be as well.
- (version "9.16.6")
+ (version "9.16.7")
(source (origin
(method url-fetch)
(uri (string-append
@@ -321,7 +325,7 @@ and BOOTP/TFTP for network booting of diskless machines.")
"/bind-" version ".tar.xz"))
(sha256
(base32
- "1jvi6ms51vyrhpflx05xlb7gblyd59zsyj28b8s3pl3xnkrv0rxm"))))
+ "1l8lhgnkj3fnl1101bs3pzj5gv2x5m9ahvrbyscsc9mxxc91hzcz"))))
(build-system gnu-build-system)
(outputs `("out" "utils"))
(inputs
@@ -529,14 +533,14 @@ asynchronous fashion.")
(define-public nsd
(package
(name "nsd")
- (version "4.3.2")
+ (version "4.3.3")
(source
(origin
(method url-fetch)
(uri (string-append "https://www.nlnetlabs.nl/downloads/nsd/nsd-"
version ".tar.gz"))
(sha256
- (base32 "0ac3mbn5z4nc18782m9aswdpi2m9f4665vidw0ciyigdh0pywp2v"))))
+ (base32 "0lgdiqnkfvy245h6kkiqic586qjwmg51lsfs86vlc0kwjwddiijz"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags
@@ -756,16 +760,16 @@ served by AS112. Stub and forward zones are supported.")
(define-public yadifa
(package
(name "yadifa")
- (version "2.3.9")
+ (version "2.3.10")
(source
- (let ((build "8497"))
+ (let ((build "9729"))
(origin
(method url-fetch)
(uri
(string-append "http://cdn.yadifa.eu/sites/default/files/releases/"
"yadifa-" version "-" build ".tar.gz"))
(sha256
- (base32 "0xvyr91sfgzkpw6g3h893ldbwnki3w2472n56rr18w67qghs1sa5")))))
+ (base32 "0azaignqmylfdzr4x02s8y3pkn4f0xkpz3d1pkiiz8mwk92zgybn")))))
(build-system gnu-build-system)
(native-inputs
`(("which" ,which)))
@@ -803,44 +807,63 @@ Extensions} (DNSSEC).")
(define-public knot
(package
(name "knot")
- (version "2.9.6")
+ (version "3.0.1")
(source
(origin
- (method url-fetch)
- (uri (string-append "https://secure.nic.cz/files/knot-dns/"
- "knot-" version ".tar.xz"))
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://gitlab.nic.cz/knot/knot-dns")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
(sha256
- (base32 "1rxjjisr6rz1wa4279ghvj5zzhgyjhncmb9dkzqm8nw2qs1jhx5z"))
+ (base32 "10mlzldxqvbaw78nghkr0s73rlbpz9wg16z14321xw2l9xfibkad"))
(modules '((guix build utils)))
(snippet
'(begin
- ;; Delete bundled libraries.
- (with-directory-excursion "src/contrib"
- (delete-file-recursively "lmdb"))
+ ;; Remove Ragel-generated C files. We'll recreate them below.
+ (for-each delete-file (find-files "." "\\.c\\.[gt]."))
+ (delete-file "src/libknot/yparser/ypbody.c")
+ ;; Remove bundled library to ensure we always use the system's.
+ (delete-file-recursively "src/contrib/libbpf")
#t))))
(build-system gnu-build-system)
- (native-inputs
- `(("pkg-config" ,pkg-config)))
- (inputs
- `(("fstrm" ,fstrm)
- ("gnutls" ,gnutls)
- ("jansson" ,jansson)
- ("libcap-ng" ,libcap-ng)
- ("libedit" ,libedit)
- ("libidn" ,libidn)
- ("liburcu" ,liburcu)
- ("lmdb" ,lmdb)
- ("ncurses" ,ncurses)
- ("protobuf-c" ,protobuf-c)))
+ (outputs (list "out" "doc" "lib" "tools"))
(arguments
- `(#:phases
+ `(#:configure-flags
+ (list (string-append "--docdir=" (assoc-ref %outputs "doc")
+ "/share/" ,name "-" ,version)
+ (string-append "--infodir=" (assoc-ref %outputs "doc")
+ "/share/info")
+ (string-append "--libdir=" (assoc-ref %outputs "lib") "/lib")
+ "--sysconfdir=/etc"
+ "--localstatedir=/var"
+ "--enable-dnstap" ; let tools read/write capture files
+ "--enable-fastparser" ; disabled by default when .git/ exists
+ "--enable-xdp=auto" ; XXX [=yes] currently means =embedded
+ "--with-module-dnstap=yes") ; detailed query capturing & logging
+ #:phases
(modify-phases %standard-phases
+ (add-after 'unpack 'link-missing-libbpf-dependency
+ ;; Linking against -lbpf later would fail to find -lz: libbpf.pc has
+ ;; zlib in its Requires.private (not Requires) field. Add it here.
+ (lambda _
+ (substitute* "configure.ac"
+ (("enable_xdp=yes" match)
+ (string-append match "\nlibbpf_LIBS=\"$libbpf_LIBS -lz\"")))
+ #true))
+ (add-before 'bootstrap 'update-parser
+ (lambda _
+ (with-directory-excursion "src"
+ (invoke "sh" "../scripts/update-parser.sh"))))
(add-before 'configure 'disable-directory-pre-creation
(lambda _
;; Don't install empty directories like ‘/etc’ outside the store.
;; This is needed even when using ‘make config_dir=... install’.
(substitute* "src/Makefile.in" (("\\$\\(INSTALL\\) -d") "true"))
#t))
+ (add-after 'build 'build-info
+ (lambda _
+ (invoke "make" "info")))
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
@@ -848,15 +871,51 @@ Extensions} (DNSSEC).")
(etc (string-append doc "/examples/etc")))
(invoke "make"
(string-append "config_dir=" etc)
- "install")))))
- #:configure-flags
- (list "--sysconfdir=/etc"
- "--localstatedir=/var"
- "--enable-dnstap" ; let tools read/write capture files
- "--with-module-dnstap=yes" ; detailed query capturing & logging
- (string-append "--with-bash-completions="
- (assoc-ref %outputs "out")
- "/etc/bash_completion.d"))))
+ "install"))))
+ (add-after 'install 'install-info
+ (lambda _
+ (invoke "make" "install-info")))
+ (add-after 'install 'break-circular-:lib->:out-reference
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let ((lib (assoc-ref outputs "lib")))
+ (for-each (lambda (file)
+ (substitute* file
+ (("(prefix=).*" _ assign)
+ (string-append assign lib "\n"))))
+ (find-files lib "\\.pc$"))
+ #true)))
+ (add-after 'install 'split-:tools
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (tools (assoc-ref outputs "tools")))
+ (mkdir-p (string-append tools "/share/man"))
+ (rename-file (string-append out "/bin")
+ (string-append tools "/bin"))
+ (rename-file (string-append out "/share/man/man1")
+ (string-append tools "/share/man/man1"))
+ #true))))))
+ (native-inputs
+ `(("autoconf" ,autoconf)
+ ("automake" ,automake)
+ ("libtool" ,libtool)
+ ("pkg-config" ,pkg-config)
+ ("python-sphinx" ,python-sphinx)
+ ("ragel" ,ragel)
+ ("texinfo" ,texinfo)))
+ (inputs
+ `(("fstrm" ,fstrm)
+ ("gnutls" ,gnutls)
+ ("jansson" ,jansson)
+ ("libbpf" ,libbpf)
+ ("libcap-ng" ,libcap-ng)
+ ("libedit" ,libedit)
+ ("libelf" ,libelf)
+ ("libidn" ,libidn)
+ ("libnghttp2" ,nghttp2 "lib")
+ ("liburcu" ,liburcu)
+ ("lmdb" ,lmdb)
+ ("ncurses" ,ncurses)
+ ("protobuf-c" ,protobuf-c)))
(home-page "https://www.knot-dns.cz/")
(synopsis "Authoritative DNS name server")
(description "Knot DNS is an authoritative name server for the @dfn{Domain
@@ -878,14 +937,14 @@ synthesis, and on-the-fly re-configuration.")
(define-public knot-resolver
(package
(name "knot-resolver")
- (version "4.3.0")
+ (version "5.1.3")
(source (origin
(method url-fetch)
(uri (string-append "https://secure.nic.cz/files/knot-resolver/"
"knot-resolver-" version ".tar.xz"))
(sha256
(base32
- "09ffmqx79lv5psr433x4n946njgsn071b9b7161pcb9bmrqz380c"))))
+ "12s5070nqqf599s1mb6rjas2as481rjf751qk5yrz6p34y885k90"))))
(build-system meson-build-system)
(arguments
'(#:configure-flags '("-Ddoc=enabled")
@@ -927,16 +986,12 @@ synthesis, and on-the-fly re-configuration.")
(inputs
`(("fstrm" ,fstrm)
("gnutls" ,gnutls)
- ("knot" ,knot)
+ ("knot:lib" ,knot "lib")
("libuv" ,libuv)
("lmdb" ,lmdb)
("luajit" ,luajit)
;; TODO: Add optional lua modules: basexx and psl.
- ("lua-bitop" ,lua5.1-bitop)
- ("lua-cqueues" ,lua5.1-cqueues)
- ("lua-filesystem" ,lua5.1-filesystem)
- ("lua-sec" ,lua5.1-sec)
- ("lua-socket" ,lua5.1-socket)))
+ ("lua-bitop" ,lua5.1-bitop)))
(home-page "https://www.knot-resolver.cz/")
(synopsis "Caching validating DNS resolver")
(description
diff --git a/gnu/packages/docker.scm b/gnu/packages/docker.scm
index bc7e02ec46..b130298a04 100644
--- a/gnu/packages/docker.scm
+++ b/gnu/packages/docker.scm
@@ -5,6 +5,7 @@
;;; Copyright © 2019 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de>
;;; Copyright © 2020 Katherine Cox-Buday <cox.katherine.e@gmail.com>
+;;; Copyright © 2020 Jesse Dowell <jessedowell@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -48,6 +49,8 @@
#:use-module (gnu packages version-control)
#:use-module (gnu packages virtualization))
+;; Note - when changing Docker versions it is important to update the versions
+;; of several associated packages (docker-libnetwork and go-sctp).
(define %docker-version "19.03.12")
(define-public python-docker
@@ -190,41 +193,40 @@ Python without keeping their credentials in a Docker configuration file.")
`(#:import-path "github.com/containerd/containerd"
#:phases
(modify-phases %standard-phases
- (add-before 'build 'chdir
- (lambda _
- (chdir "src/github.com/containerd/containerd")
- #t))
(add-after 'chdir 'patch-paths
- (lambda* (#:key inputs outputs #:allow-other-keys)
+ (lambda* (#:key inputs import-path outputs #:allow-other-keys)
;; TODO: Patch "socat", "unpigz".
- (substitute* "./runtime/v1/linux/runtime.go"
- (("defaultRuntime[ \t]*=.*")
- (string-append "defaultRuntime = \""
- (assoc-ref inputs "runc")
- "/sbin/runc\"\n"))
- (("defaultShim[ \t]*=.*")
- (string-append "defaultShim = \""
- (assoc-ref outputs "out")
- "/bin/containerd-shim\"\n")))
- (substitute* "./vendor/github.com/containerd/go-runc/runc.go"
- (("DefaultCommand[ \t]*=.*")
- (string-append "DefaultCommand = \""
- (assoc-ref inputs "runc")
- "/sbin/runc\"\n")))
- (substitute* "vendor/github.com/containerd/continuity/testutil/loopback/loopback_linux.go"
- (("exec\\.Command\\(\"losetup\"") ; )
- (string-append "exec.Command(\""
- (assoc-ref inputs "util-linux")
- "/sbin/losetup\""))) ;)
- #t))
+ (with-directory-excursion (string-append "src/" import-path)
+ (substitute* "./runtime/v1/linux/runtime.go"
+ (("defaultRuntime[ \t]*=.*")
+ (string-append "defaultRuntime = \""
+ (assoc-ref inputs "runc")
+ "/sbin/runc\"\n"))
+ (("defaultShim[ \t]*=.*")
+ (string-append "defaultShim = \""
+ (assoc-ref outputs "out")
+ "/bin/containerd-shim\"\n")))
+ (substitute* "./vendor/github.com/containerd/go-runc/runc.go"
+ (("DefaultCommand[ \t]*=.*")
+ (string-append "DefaultCommand = \""
+ (assoc-ref inputs "runc")
+ "/sbin/runc\"\n")))
+ (substitute* "vendor/github.com/containerd/continuity/testutil/loopback/loopback_linux.go"
+ (("exec\\.Command\\(\"losetup\"") ; )
+ (string-append "exec.Command(\""
+ (assoc-ref inputs "util-linux")
+ "/sbin/losetup\""))) ;)
+ #t)))
(replace 'build
- (lambda* (#:key (make-flags '()) #:allow-other-keys)
- (apply invoke "make" make-flags)))
+ (lambda* (#:key import-path (make-flags '()) #:allow-other-keys)
+ (with-directory-excursion (string-append "src/" import-path)
+ (apply invoke "make" make-flags))))
(replace 'install
- (lambda* (#:key outputs (make-flags '()) #:allow-other-keys)
- (let* ((out (assoc-ref outputs "out")))
- (apply invoke "make" (string-append "DESTDIR=" out) "install"
- make-flags)))))))
+ (lambda* (#:key import-path outputs (make-flags '()) #:allow-other-keys)
+ (with-directory-excursion (string-append "src/" import-path)
+ (let* ((out (assoc-ref outputs "out")))
+ (apply invoke "make" (string-append "DESTDIR=" out) "install"
+ make-flags))))))))
(inputs
`(("btrfs-progs" ,btrfs-progs)
("libseccomp" ,libseccomp)
@@ -246,22 +248,25 @@ network attachments.")
(define docker-libnetwork
;; There are no recent release for libnetwork, so choose the last commit of
;; the branch that Docker uses, as can be seen in the Docker source file
- ;; 'hack/dockerfile/install/proxy.installer'.
- (let ((commit "4725f2163fb214a6312f3beae5991f838ec36326")
- (version "18.09")
+ ;; 'hack/dockerfile/install/proxy.installer'. NOTE - It is important that
+ ;; this version is kept in sync with the version of Docker being used.
+ ;; This commit is the "bump_19.03" branch, as mentioned in Docker's vendor.conf.
+ (let ((commit "026aabaa659832804b01754aaadd2c0f420c68b6")
+ (version (version-major+minor %docker-version))
(revision "1"))
(package
(name "docker-libnetwork")
- (version (git-version version "1" commit))
+ (version (git-version version revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/docker/libnetwork")
+ ;; Redirected from github.com/docker/libnetwork.
+ (url "https://github.com/moby/libnetwork")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
- "1zpnxki8qfzha6ljahpwd3vkzmjhsvkmf73w6crm4ilxxw5vnpfb"))
+ "0bli21vn5v7bssw3ydym4jfdjsldhb47fld88kng7d138wl70lkw"))
;; Delete bundled ("vendored") free software source code.
(modules '((guix build utils)))
(snippet '(begin
@@ -269,8 +274,8 @@ network attachments.")
#t))))
(build-system go-build-system)
(arguments
- `(#:import-path "github.com/docker/libnetwork/"))
- (home-page "https://github.com/docker/libnetwork/")
+ `(#:import-path "github.com/moby/libnetwork/"))
+ (home-page "https://github.com/moby/libnetwork/")
(synopsis "Networking for containers")
(description "Libnetwork provides a native Go implementation for
connecting containers. The goal of @code{libnetwork} is to deliver a robust
@@ -514,6 +519,7 @@ built-in registry server of Docker.")
#t))
(replace 'configure
(lambda _
+ (setenv "DOCKER_BUILDTAGS" "seccomp")
(setenv "DOCKER_GITCOMMIT" (string-append "v" ,%docker-version))
(setenv "VERSION" (string-append ,%docker-version "-ce"))
;; Automatically use bundled dependencies.
@@ -651,8 +657,7 @@ provisioning etc.")
(string-append etc "/fish/completions"))
(install-file "zsh/_docker"
(string-append etc "/zsh/site-functions")))
- (chdir "build")
- (install-file "docker" out-bin)
+ (install-file "build/docker" out-bin)
#t))))))
(native-inputs
`(("go" ,go)
diff --git a/gnu/packages/documentation.scm b/gnu/packages/documentation.scm
index 9c30fc832a..6532bb4704 100644
--- a/gnu/packages/documentation.scm
+++ b/gnu/packages/documentation.scm
@@ -273,7 +273,7 @@ and to some extent D.")
(description
"DOC++ is a documentation system for C, C++, IDL, and Java. It can
generate both TeX output for high-quality hardcopies or HTML output for online
-brwosing. The documentation is extracted directly from the C/C++/IDL source
+browsing. The documentation is extracted directly from the C/C++/IDL source
or Java class files.")
(license gpl2+)))
diff --git a/gnu/packages/easyrpg.scm b/gnu/packages/easyrpg.scm
index 7bd5935b19..591be38448 100644
--- a/gnu/packages/easyrpg.scm
+++ b/gnu/packages/easyrpg.scm
@@ -76,7 +76,7 @@ It can read and write LCF and XML files.")
(define-public easyrpg-player
(package
(name "easyrpg-player")
- (version "0.6.2.1")
+ (version "0.6.2.3")
(source (origin
(method url-fetch)
(uri (string-append
@@ -84,7 +84,7 @@ It can read and write LCF and XML files.")
"/easyrpg-player-" version ".tar.gz"))
(sha256
(base32
- "1bai0mxjw1qvl2vcwgssycbyn0crk0b5l69ld9rawcs2nczb44s5"))))
+ "1lahbhgyhky0hgd3xwhgg2nm8mfa9p2i1fzxi00561hnk2ya86pm"))))
(build-system gnu-build-system)
(arguments
'(#:configure-flags
diff --git a/gnu/packages/ebook.scm b/gnu/packages/ebook.scm
index b7c78b6a64..1609a631b7 100644
--- a/gnu/packages/ebook.scm
+++ b/gnu/packages/ebook.scm
@@ -4,8 +4,9 @@
;;; Copyright © 2016, 2017 Alex Griffin <a@ajgrf.com>
;;; Copyright © 2017, 2019, 2020 Brendan Tildesley <mail@brendan.scot>
;;; Copyright © 2017 Roel Janssen <roel@gnu.org>
-;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
+;;; Copyright © 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2020 Marius Bakke <mbakke@fastmail.com>
+;;; Copyright © 2020 Vinicius Monego <monego@posteo.net>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -26,26 +27,32 @@
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
#:use-module (guix download)
+ #:use-module (guix utils)
#:use-module (guix git-download)
#:use-module (guix build-system gnu)
+ #:use-module (guix build-system meson)
#:use-module (guix build-system python)
#:use-module (gnu packages)
#:use-module (gnu packages compression)
#:use-module (gnu packages curl)
#:use-module (gnu packages databases)
+ #:use-module (gnu packages file)
#:use-module (gnu packages fonts)
#:use-module (gnu packages fontutils)
#:use-module (gnu packages freedesktop)
#:use-module (gnu packages fribidi)
#:use-module (gnu packages gcc)
+ #:use-module (gnu packages gettext)
#:use-module (gnu packages gtk)
#:use-module (gnu packages gnome)
#:use-module (gnu packages glib)
+ #:use-module (gnu packages gstreamer)
#:use-module (gnu packages icu4c)
#:use-module (gnu packages image)
#:use-module (gnu packages javascript)
#:use-module (gnu packages libusb)
#:use-module (gnu packages libreoffice)
+ #:use-module (gnu packages music)
#:use-module (gnu packages pdf)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages python)
@@ -245,29 +252,7 @@
"--path-to-mathjax" (string-append
(assoc-ref inputs "js-mathjax")
"/share/javascript/mathjax"))
- (invoke "python2" "setup.py" "rapydscript")))
- (replace 'wrap
- ;; Here we wrap PYTHONPATH exactly as it would be in
- ;; python-build-system, plus the addition of
- ;; QTWEBENGINEPROCESS_PATH, fixing a bug where Calibre would not
- ;; find Qtwebengine.
- (lambda* (#:key inputs outputs #:allow-other-keys)
- (let* ((out (assoc-ref outputs "out"))
- (bin (string-append out "/bin"))
- (python (assoc-ref inputs "python"))
- (site-packages
- (cons (string-append out "/lib/python"
- (python-version python)
- "/site-packages")
- (search-path-as-string->list (getenv "PYTHONPATH"))))
- (qtwebengineprocess
- (string-append (assoc-ref inputs "qtwebengine")
- "/lib/qt5/libexec/QtWebEngineProcess")))
- (for-each (lambda (program)
- (wrap-program program
- `("QTWEBENGINEPROCESS_PATH" = (,qtwebengineprocess))
- `("PYTHONPATH" prefix ,site-packages)))
- (find-files bin ".")))
+ (invoke "python2" "setup.py" "rapydscript")
#t))
(add-after 'install 'install-man-pages
(lambda* (#:key outputs #:allow-other-keys)
@@ -285,6 +270,28 @@
"/share/fonts/truetype")))
(delete-file-recursively font-dest)
(symlink font-src font-dest))
+ #t))
+ ;; Make run-time dependencies available to the binaries.
+ (add-after 'wrap 'wrap-program
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (let ((out (assoc-ref outputs "out"))
+ (qtwebengine (assoc-ref inputs "qtwebengine")))
+ (with-directory-excursion (string-append out "/bin")
+ (for-each
+ (lambda (binary)
+ (wrap-program binary
+ ;; Make QtWebEngineProcess available.
+ `("QTWEBENGINEPROCESS_PATH" ":" =
+ ,(list (string-append
+ qtwebengine
+ "/lib/qt5/libexec/QtWebEngineProcess")))))
+ ;; Wrap all the binaries shipping with the package, except
+ ;; for the wrappings created during the 'wrap standard
+ ;; phase. This extends existing .calibre-real wrappers
+ ;; rather than create ..calibre-real-real-s. For more
+ ;; information see: https://issues.guix.gnu.org/43249.
+ (find-files "." (lambda (file stat)
+ (not (wrapper? file)))))))
#t)))))
(home-page "https://calibre-ebook.com/")
(synopsis "E-book library management software")
@@ -405,6 +412,105 @@ following formats:
@end enumerate")
(license license:gpl2+)))
+(define-public cozy
+ (package
+ (name "cozy")
+ (version "0.7.2")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/geigi/cozy")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0fmbddi4ga0bppwg3rm3yjmf7jgqc6zfslmavnr1pglbzkjhy9fs"))))
+ (build-system meson-build-system)
+ (arguments
+ `(#:glib-or-gtk? #t
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'patch-desktop-file
+ (lambda _
+ (substitute* "data/com.github.geigi.cozy.desktop.in"
+ (("Exec=com.github.geigi.cozy") "Exec=cozy"))
+ #t))
+ (add-after 'install 'patch-executable-name
+ (lambda* (#:key outputs #:allow-other-keys)
+ (with-directory-excursion
+ (string-append (assoc-ref outputs "out") "/bin")
+ (rename-file "com.github.geigi.cozy" "cozy"))
+ #t))
+ (add-after 'wrap 'wrap-libs
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (pylib (string-append
+ out "/lib/python"
+ ,(version-major+minor
+ (package-version python))
+ "/site-packages"))
+ (gi-typelib-path (getenv "GI_TYPELIB_PATH"))
+ (gst-plugin-path (getenv "GST_PLUGIN_SYSTEM_PATH"))
+ (libmagic-path (string-append
+ (assoc-ref %build-inputs "file")
+ "/lib"))
+ (python-path (getenv "PYTHONPATH")))
+ (wrap-program (string-append out "/bin/cozy")
+ `("LD_LIBRARY_PATH" ":" prefix (,libmagic-path))
+ `("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path))
+ `("GST_PLUGIN_SYSTEM_PATH" ":" prefix (,gst-plugin-path))
+ `("PYTHONPATH" ":" prefix (,python-path ,pylib))))
+ #t)))))
+ (native-inputs
+ `(("desktop-file-utils" ,desktop-file-utils)
+ ("gettext" ,gettext-minimal)
+ ("glib:bin" ,glib "bin")
+ ("gobject-introspection" ,gobject-introspection)
+ ("gtk+:bin" ,gtk+ "bin")
+ ("pkg-config" ,pkg-config)
+ ("python" ,python-wrapper)))
+ (inputs
+ `(("file" ,file)
+ ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
+ ("gst-libav" ,gst-libav)
+ ("gst-plugins-bad" ,gst-plugins-bad)
+ ("gst-plugins-good" ,gst-plugins-good)
+ ("gst-plugins-ugly" ,gst-plugins-ugly)
+ ("gtk+" ,gtk+)
+ ("python-apsw" ,python-apsw)
+ ("python-distro" ,python-distro)
+ ("python-gst" ,python-gst)
+ ("python-mutagen" ,python-mutagen)
+ ("python-packaging" ,python-packaging)
+ ("python-peewee" ,python-peewee)
+ ("python-pycairo" ,python-pycairo)
+ ("python-pygobject" ,python-pygobject)
+ ("python-pytz" ,python-pytz)
+ ("python-requests" ,python-requests)))
+ (home-page "https://cozy.geigi.de/")
+ (synopsis "Modern audiobook player using GTK+")
+ (description
+ "Cozy is a modern audiobook player written in GTK+.
+
+Some of the current features:
+
+@itemize
+@item Import your audiobooks into Cozy to browse them comfortably
+@item Sort your audio books by author, reader & name
+@item Remembers your playback position
+@item Sleep timer
+@item Playback speed control
+@item Search your library
+@item Offline mode
+@item Add multiple storage locations
+@item Drag & Drop to import new audio books
+@item Support for DRM free mp3, m4a (aac, ALAC, …), flac, ogg, opus, wav files
+@item Mpris integration (Media keys & playback info for desktop environment)
+@end itemize")
+ ;; TODO: Unbundle python-inject.
+ (license (list license:gpl3+ ;cozy
+ license:asl2.0)))) ;python-inject (bundled dependency)
+
(define-public xchm
(package
(name "xchm")
diff --git a/gnu/packages/education.scm b/gnu/packages/education.scm
index 32807fa05f..d91c086581 100644
--- a/gnu/packages/education.scm
+++ b/gnu/packages/education.scm
@@ -2,7 +2,7 @@
;;; Copyright © 2016 Danny Milosavljevic <dannym@scratchpost.org>
;;; Copyright © 2016, 2017 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2016 Hartmut Goebel <h.goebel@crazy-compilers.com>
-;;; Copyright © 2017, 2018, 2019 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2017, 2018, 2019, 2020 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018, 2019, 2020 Nicolas Goaziou <mail@nicolasgoaziou.fr>
;;; Copyright © 2020 Robert Smith <robertsmith@posteo.net>
@@ -275,7 +275,7 @@ easy.")
(define-public snap
(package
(name "snap")
- (version "6.1.4")
+ (version "6.2.1")
(source
(origin
(method git-fetch)
@@ -284,7 +284,7 @@ easy.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
- (base32 "0qvnm5jg2hlf32say531m8nmp3aib93mqnllw1g289s58fzk5li6"))))
+ (base32 "163pskgrssw0l6c73lrdx613fridnv0162lscl4xqx9sgg7hfaxh"))))
(build-system trivial-build-system)
(arguments
`(#:modules ((guix build utils))
@@ -613,14 +613,14 @@ Portuguese, Spanish and Italian.")
(define-public fet
(package
(name "fet")
- (version "5.46.1")
+ (version "5.47.0")
(source
(origin
(method url-fetch)
(uri (string-append "https://www.lalescu.ro/liviu/fet/download/"
"fet-" version ".tar.bz2"))
(sha256
- (base32 "1sakzizjsyjn6705zl283i81zxn1gxskg2i4jv7iq75vw3nzm6kv"))))
+ (base32 "1a4mzzd6qy7hpb3yvmf922dbrqrzacz60ld8dsds78m018jf9gaj"))))
(build-system gnu-build-system)
(arguments
`(#:phases
@@ -956,30 +956,30 @@ floating through space.")
(define-public mdk
(package
(name "mdk")
- (version "1.2.10")
+ (version "1.2.11")
(source
- (origin
- (method url-fetch)
- (uri (string-append "mirror://gnu/mdk/v1.2.10/mdk-"
- version ".tar.gz"))
- (sha256
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://gnu/mdk/v" version "/mdk-"
+ version ".tar.gz"))
+ (sha256
(base32
- "1rwcq2b5vvv7318j92nxc5dayj27dpfhzc4rjiv4ccvsc0x35x5h"))))
- (build-system gnu-build-system)
+ "0rrac91ynya4jrhv14j9vvn21c5z80hi1zmmdxjb0d9zz6i7kjgb"))))
+ (build-system gnu-build-system)
(arguments
`(#:configure-flags (list "--enable-gui=yes" "-with-readline=yes")))
(native-inputs
`(("flex" ,flex)
- ("pkg-config" ,pkg-config)
("intltool" ,intltool)
- ("ncurses" ,ncurses)))
- (inputs
- `(("readline" ,readline)
- ("glib" ,glib)
- ("gtk+" ,gtk+)
- ("pango" ,pango)
- ("libglade" ,libglade)))
- (home-page "https://www.gnu.org/software/mdk/")
+ ("pkg-config" ,pkg-config)))
+ (inputs
+ `(("glib" ,glib)
+ ("gtk+" ,gtk+)
+ ("libglade" ,libglade)
+ ("ncurses" ,ncurses)
+ ("pango" ,pango)
+ ("readline" ,readline)))
+ (home-page "https://www.gnu.org/software/mdk/")
(synopsis "Virtual development environment for Knuth's MIX")
(description
"GNU MDK is the Mix Development Kit, an emulation of the pedagogical
diff --git a/gnu/packages/electronics.scm b/gnu/packages/electronics.scm
index d21ec61039..3f9ca33ede 100644
--- a/gnu/packages/electronics.scm
+++ b/gnu/packages/electronics.scm
@@ -88,7 +88,7 @@ to take care of the OS-specific details when writing software that uses serial p
"/share/doc/libsigrokdecode"))
#t)))))
(native-inputs
- `(("check" ,check)
+ `(("check" ,check-0.14)
("doxygen" ,doxygen)
("graphviz" ,graphviz)
("pkg-config" ,pkg-config)))
diff --git a/gnu/packages/elf.scm b/gnu/packages/elf.scm
index 3aabc6e927..48558d5f14 100644
--- a/gnu/packages/elf.scm
+++ b/gnu/packages/elf.scm
@@ -7,6 +7,7 @@
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2020 Mark Wielaard <mark@klomp.org>
+;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -214,7 +215,7 @@ static analysis of the ELF binaries at hand.")
(define-public patchelf
(package
(name "patchelf")
- (version "0.10")
+ (version "0.11")
(source (origin
(method url-fetch)
(uri (string-append
@@ -223,7 +224,7 @@ static analysis of the ELF binaries at hand.")
"/patchelf-" version ".tar.bz2"))
(sha256
(base32
- "1wzwvnlyf853hw9zgqq5522bvf8gqadk8icgqa41a5n7593csw7n"))))
+ "16ms3ijcihb88j3x6cl8cbvhia72afmfcphczb9cfwr0gbc22chx"))))
(build-system gnu-build-system)
(arguments
'(#:phases
diff --git a/gnu/packages/elixir.scm b/gnu/packages/elixir.scm
index 1b881862a9..8a2b6b302c 100644
--- a/gnu/packages/elixir.scm
+++ b/gnu/packages/elixir.scm
@@ -27,7 +27,8 @@
#:use-module (guix git-download)
#:use-module (guix packages)
#:use-module (gnu packages)
- #:use-module (gnu packages erlang))
+ #:use-module (gnu packages erlang)
+ #:use-module (gnu packages version-control))
(define-public elixir
(package
@@ -99,7 +100,8 @@
#t))
(delete 'configure))))
(inputs
- `(("erlang" ,erlang)))
+ `(("erlang" ,erlang)
+ ("git" ,git)))
(home-page "https://elixir-lang.org/")
(synopsis "Elixir programming language")
(description "Elixir is a dynamic, functional language used to build
diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index 342adc6dd0..da11838ea9 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -78,6 +78,9 @@
;;; Copyright © 2020 Eric Bavier <bavier@posteo.net>
;;; Copyright © 2020 Morgan Smith <Morgan.J.Smith@outlook.com>
;;; Copyright © 2020 Peng Mei Yu <i@pengmeiyu.com>
+;;; Copyright © 2020 Niklas Eklund <niklas.eklund@posteo.net>
+;;; Copyright © 2020 Marco Grassi <marco.au.grassi98@protonmail.com>
+;;; Copyright © 2020 Tomás Ortín Fernández <tomasortin@mailbox.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -195,16 +198,16 @@
(define-public emacs-geiser
(package
(name "emacs-geiser")
- (version "0.11.2")
- (source (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://gitlab.com/jaor/geiser/")
- (commit version)))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "1khi1bghsjx6cs5acizmlbw9z19s4qycnji9krdbn42cbpv0rysv"))))
+ (version "0.12")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://gitlab.com/jaor/geiser/")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0n718xpys7v94zaf9lpmsx97qgn6qxif1acr718wyvpmfr4hiv08"))))
(build-system gnu-build-system)
(arguments
'(#:phases
@@ -216,7 +219,8 @@
"/share/emacs/site-lisp/"
"geiser-autoloads.el"))
#t)))))
- (inputs `(("guile" ,guile-2.2)))
+ (inputs
+ `(("guile" ,guile-2.2)))
(native-inputs
`(("emacs" ,emacs-minimal)
("autoconf" ,autoconf)
@@ -262,14 +266,14 @@ using geiser.")
(define-public emacs-hyperbole
(package
(name "emacs-hyperbole")
- (version "7.1.2")
+ (version "7.1.3")
(source
(origin
(method url-fetch)
(uri (string-append "https://elpa.gnu.org/packages/"
"hyperbole-" version ".tar"))
(sha256
- (base32 "1bspmqnbniwr9385wh823dsr5fgch5qnlkf45s4vi0nvg8jdccp1"))
+ (base32 "0bizibn4qgxqp89fyik6p47s9hss1g932mg8k7pznn3kkhj5c8rh"))
(patches
(search-patches "emacs-hyperbole-toggle-messaging.patch"))))
(build-system emacs-build-system)
@@ -379,29 +383,33 @@ configuration files, such as .gitattributes, .gitignore, and .git/config.")
(license license:gpl3+)))
(define-public emacs-with-editor
- (package
- (name "emacs-with-editor")
- (version "2.9.4")
- (source
- (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/magit/with-editor")
- (commit (string-append "v" version))))
- (file-name (git-file-name name version))
- (sha256
- (base32 "1z3214zjf3dassb31k14gq4nbr3q8g5x87ydfah28hm4j08v0wb3"))))
- (build-system emacs-build-system)
- (propagated-inputs
- `(("emacs-dash" ,emacs-dash)))
- (home-page "https://github.com/magit/with-editor")
- (synopsis "Emacs library for using Emacsclient as EDITOR")
- (description
- "This package provides an Emacs library to use the Emacsclient as
+ ;; This commit fixes an (magit) issue with emacs 28, see
+ ;; https://lists.gnu.org/archive/html/help-gnu-emacs/2020-10/msg00211.html
+ (let ((commit "c4768f51c7415119519b4626d8643d60e584098c")
+ (revision "1"))
+ (package
+ (name "emacs-with-editor")
+ (version (git-version "2.9.4" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/magit/with-editor")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "01ysb9pnscpmingay6njdywkqgj4hn5l5d9igsg3x7p7061jwwix"))))
+ (build-system emacs-build-system)
+ (propagated-inputs
+ `(("emacs-dash" ,emacs-dash)))
+ (home-page "https://github.com/magit/with-editor")
+ (synopsis "Emacs library for using Emacsclient as EDITOR")
+ (description
+ "This package provides an Emacs library to use the Emacsclient as
@code{$EDITOR} of child processes, making sure they know how to call home.
For remote processes a substitute is provided, which communicates with Emacs
on stdout instead of using a socket as the Emacsclient does.")
- (license license:gpl3+)))
+ (license license:gpl3+))))
(define-public emacs-libgit
(let ((commit "0ef8b13aef011a98b7da756e4f1ce3bb18e4d55a")
@@ -932,16 +940,16 @@ replacement.")
(define-public emacs-haskell-mode
(package
(name "emacs-haskell-mode")
- (version "17.1")
+ (version "17.2")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/haskell/haskell-mode")
- (commit (string-append "v" version))))
+ (commit version)))
(file-name (git-file-name name version))
(sha256
- (base32 "0izcasi2v02zh08c863h43m8mmsldzy8pck43cllrfn0zf24v2qn"))))
+ (base32 "0zxbacqzr84krmhqpvzndnvlcjh1gs1x20ys0dykgd7chyhci5j5"))))
(propagated-inputs
`(("emacs-dash" ,emacs-dash)))
(native-inputs
@@ -1724,14 +1732,14 @@ mode, Rmail, Gnus, MH-E, and VM). BBDB is fully customizable.")
(define-public emacs-bluetooth
(package
(name "emacs-bluetooth")
- (version "0.1.2")
+ (version "0.2")
(source
(origin
(method url-fetch)
(uri (string-append "https://elpa.gnu.org/packages/"
"bluetooth-" version ".el"))
(sha256
- (base32 "1vp2vpyq0ybjni35ics1mg1kiwgvc7x12dlmvygy78sqp52sfkcv"))))
+ (base32 "1dq04p6ms0zx4awlypp4crkz7dzal4xg8ac7p8fqacz196rczssp"))))
(build-system emacs-build-system)
(inputs
`(("bluez" ,bluez)))
@@ -1766,6 +1774,32 @@ always indented. It reindents after every change, making it more reliable
than @code{electric-indent-mode}.")
(license license:gpl2+)))
+(define-public emacs-gcmh
+ ;; No tagged release upstream.
+ (let ((commit "84c43a4c0b41a595ac6e299fa317d2831813e580")
+ (revision "0"))
+ (package
+ (name "emacs-gcmh")
+ (version (git-version "0.1" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://gitlab.com/koral/gcmh")
+ (commit commit)))
+ (sha256
+ (base32 "1r3wiqhrzh7wvqy484nl031fd4bn4cpvkv9646s4cjgvnnnv7jz3"))
+ (file-name (git-file-name name version))))
+ (build-system emacs-build-system)
+ (home-page "https://gitlab.com/koral/gcmh")
+ (synopsis "Emacs Garbage Collector Magic Hack")
+ (description
+ "This package enforces a sneaky @dfn{garbage collector} (GC) strategy
+to minimize GC interference with the activity. During normal use a high GC
+threshold is set. When idling GC is immediately triggered and a low threshold
+is set.")
+ (license license:gpl3+))))
+
(define-public emacs-ctrlf
(package
(name "emacs-ctrlf")
@@ -1921,14 +1955,14 @@ as a library for other Emacs packages.")
(define-public emacs-auctex
(package
(name "emacs-auctex")
- (version "12.2.4")
+ (version "12.2.5")
(source
(origin
(method url-fetch)
(uri (string-append "https://elpa.gnu.org/packages/"
"auctex-" version ".tar"))
(sha256
- (base32 "1yz2h692mr35zgqwlxdq8rzv8n0jixhpaqmbiki00hlysm4zh9py"))))
+ (base32 "1288n0yna36g2h15gk34gvllifx4qms48355j8l2cafabvkffiph"))))
(build-system emacs-build-system)
;; We use 'emacs' because AUCTeX requires dbus at compile time
;; ('emacs-minimal' does not provide dbus).
@@ -2316,24 +2350,27 @@ written in the Go programming language.")
(license license:bsd-3)))
(define-public emacs-google-maps
- (package
- (name "emacs-google-maps")
- (version "1.0.0")
- (source (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/jd/google-maps.el")
- (commit version)))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "183igr5lp20zcqi7rc01fk76sfxdhksd74i11v16gdsifdkjimd0"))))
- (build-system emacs-build-system)
- (home-page "https://github.com/jd/google-maps.el")
- (synopsis "Access Google Maps from Emacs")
- (description "The @code{google-maps} package displays Google
-Maps directly inside Emacs.")
- (license license:gpl3+)))
+ ;; There has been no new release tag since 2013.
+ (let ((commit "2eb16ff609f5a9f8d02c15238a111fbb7db6c146")
+ (revision "1"))
+ (package
+ (name "emacs-google-maps")
+ (version (git-version "1.0.0" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/jd/google-maps.el")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1bl0dnksbf14d0xcnvdy9qpvzc5c8jwkxpmfvgayj6djikxnw2md"))))
+ (build-system emacs-build-system)
+ (home-page "https://github.com/jd/google-maps.el")
+ (synopsis "Access Google Maps from Emacs")
+ (description "The @code{google-maps} package displays Google Maps
+directly inside Emacs. It requires a Google Map Static API key to function.")
+ (license license:gpl3+))))
(define-public emacs-graphviz-dot-mode
(package
@@ -2800,7 +2837,7 @@ running Extempore process, and more.")
(description "This package provides many, but not all of the editing
primitives in the Kakoune editor. Unlike Evil mode for Vim, this is a very
shallow emulation, which seeks to do as little work as possible, leveraging
-Emacs native editing commmands and the work of other packages wherever
+Emacs native editing commands and the work of other packages wherever
possible.")
(license license:expat))))
@@ -2878,16 +2915,16 @@ a command.")
(define-public emacs-olivetti
(package
(name "emacs-olivetti")
- (version "1.8.1")
- (source (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/rnkn/olivetti")
- (commit (string-append "v" version))))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "1fbj9s49y5yx5i429awv9rybacfgvhwp7v5h0zw67bpgx4qs44pa"))))
+ (version "1.11.1")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/rnkn/olivetti")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0rghxjdzyfykd4qc2zkavvbyf9xc899k1b8hbk890f1y3vakqvqz"))))
(build-system emacs-build-system)
(home-page "https://github.com/rnkn/olivetti")
(synopsis "Emacs minor mode for a nice writing environment")
@@ -2985,6 +3022,27 @@ strings.")
Stack Overflow, Super User, and other StackExchange sites.")
(license license:gpl3+))))
+(define-public emacs-toc-org
+ (package
+ (name "emacs-toc-org")
+ (version "1.1.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/snosov1/toc-org")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0lk0rji85a1c0c5r9an0fdvsm4n4jyixsknmr8ywha3lfmc2p0l8"))))
+ (build-system emacs-build-system)
+ (home-page "https://github.com/snosov1/toc-org")
+ (synopsis "Table of Contents generator for Emacs Org mode")
+ (description
+ "This package generates a table of contents when saving in Org and
+Markdown files.")
+ (license license:gpl2+)))
+
(define-public emacs-toml-mode
(let ((version "0.1.3")
(revision "0")
@@ -3059,7 +3117,7 @@ files and directories.")
(define-public emacs-fountain-mode
(package
(name "emacs-fountain-mode")
- (version "3.2.2")
+ (version "3.3.0")
(source
(origin
(method git-fetch)
@@ -3068,7 +3126,7 @@ files and directories.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
- (base32 "0rwdwbw9cq8ljvbmgmz9izank8dqjki79l1bw127lli69fs72gyi"))))
+ (base32 "04jrv6i4ah3i8c9hcd9wyaw2vrxr46f50qb9qwna2v7qa5vaway3"))))
(build-system emacs-build-system)
(home-page "https://github.com/rnkn/fountain-mode")
(synopsis "Major mode for screenwriting in Fountain markup")
@@ -3261,16 +3319,16 @@ This package also includes relevant snippets for yasnippet.")
(define-public emacs-gdscript-mode
(package
(name "emacs-gdscript-mode")
- (version "1.2.0")
+ (version "1.4.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/godotengine/emacs-gdscript-mode")
- (commit (string-append "v" version))))
+ (commit version)))
(file-name (git-file-name name version))
(sha256
- (base32 "02by4bvdayldbjlz6jkp36m5rgcy2h5bwhqx2cj7wma6xf6cw3lf"))))
+ (base32 "09q0himrz7a6xgz0jmcl85qc5xhk5fwi6d2vw1n8qaiavm96ksdy"))))
(build-system emacs-build-system)
(home-page "https://github.com/godotengine/emacs-gdscript-mode")
(synopsis "GDScript support and syntax highlighting in Emacs")
@@ -3792,6 +3850,30 @@ particular, the minor mode works quite well with Org or Markdown modes, or
other markup language major modes.")
(license license:gpl3+))))
+(define-public emacs-standard-dirs
+ (package
+ (name "emacs-standard-dirs")
+ (version "2.0.0")
+ (home-page "https://github.com/lafrenierejm/standard-dirs.el")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url home-page)
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0r814qcrhvx4qlx4sdzwdmrhiryslqclx0bnpp0qcrbx6g8qfl25"))))
+ (build-system emacs-build-system)
+ (propagated-inputs
+ `(("emacs-f" ,emacs-f)
+ ("emacs-s" ,emacs-s)))
+ (synopsis "Platform-specific paths for config, cache, and other data")
+ (description
+ "This package provides platform-specific paths for reading and writing
+configuration, cache, and other data.")
+ (license license:gpl3+)))
+
(define-public emacs-string-inflection
(package
(name "emacs-string-inflection")
@@ -4095,6 +4177,30 @@ read from small to large monitors by using colors, a prefix feature, and smart
truncation.")
(license license:gpl2+)))
+(define-public emacs-sqlite
+ ;; XXX: There is no tagged commit.
+ (let ((commit "dad42b8bbca4994be1871343dd18fd6528ee5797")
+ (revision "0"))
+ (package
+ (name "emacs-sqlite")
+ (build-system emacs-build-system)
+ (version (git-version "1.0" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://gitlab.com/cnngimenez/sqlite.el")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "06ln4vijl8kii3nzc5cscgsadx1fqgxksflijd3ain83bn8g4wrd"))))
+ (home-page "https://gitlab.com/cnngimenez/sqlite.el")
+ (synopsis "SQLite interface for Emacs Lisp")
+ (description "Emacs SQLite is a simple SQLite interface for connecting
+and retrieving information using the SQLite program through Elisp programming.
+It is not intended as a user interface.")
+ (license license:gpl3+))))
+
(define-public emacs-sr-speedbar
(let ((commit "77a83fb50f763a465c021eca7343243f465b4a47")
(revision "0"))
@@ -4143,7 +4249,7 @@ the speedbar window.")
(define-public emacs-shx
(package
(name "emacs-shx")
- (version "1.4.0")
+ (version "1.5.0")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -4151,15 +4257,10 @@ the speedbar window.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
- (base32 "0p9b621rgy34r1hl9xfzxh4xpx9gpsr3n330ypfxhlr0s5754j73"))))
+ (base32 "1cb5w6p9gnfxgh8qp7yj2f5ibpk1b4b5af3ynldaaj6yfpa8hqzn"))))
(build-system emacs-build-system)
(arguments
- `(#:phases
- (modify-phases %standard-phases
- ;; A docstring provides examples of mapping hosts to programs in /bin.
- ;; These examples are valid as-is.
- (delete 'patch-el-files))
- #:tests? #t
+ `(#:tests? #t
#:test-command
'("emacs" "--batch" "--quiet"
"--script" "test/script.el")))
@@ -5275,6 +5376,29 @@ commands and highlighting.")
;; indicates GPL3.
(license license:gpl3)))
+(define-public emacs-sbt-mode
+ (package
+ (name "emacs-sbt-mode")
+ (version "2.0.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/hvesalai/emacs-sbt-mode")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0lv9ridzk9x6rkf7lj21srnszypyq04vqg05vl10zhpz1yqlnbjd"))))
+ (build-system emacs-build-system)
+ (home-page "https://github.com/hvesalai/emacs-sbt-mode")
+ (synopsis "Basic functionality for interacting with sbt inside Emacs")
+ (description
+ "This mode provides basic functionality required for successfully
+interacting with sbt inside Emacs. The core functionality includes
+interacting with the sbt shell and Scala console, compiling code and
+navigation to errors.")
+ (license license:gpl3+)))
+
(define-public emacs-scheme-complete
(let ((commit "9b5cf224bf2a5994bc6d5b152ff487517f1a9bb5"))
(package
@@ -5554,6 +5678,59 @@ This provides a basic API and common UI widgets such as popup tooltips
and popup menus.")
(license license:gpl3+)))
+(define-public emacs-python-black
+ (package
+ (name "emacs-python-black")
+ (version "1.0.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/wbolster/emacs-python-black")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0fjnd85nlkck156dj6cahk8chhgkbgl2kwywqzi8bl4yj700m4dk"))))
+ (build-system emacs-build-system)
+ (propagated-inputs
+ `(("emacs-dash" ,emacs-dash)
+ ("emacs-reformatter" ,emacs-reformatter)
+ ("python-black-macchiato" ,python-black-macchiato)))
+ (arguments `(#:tests? #f))
+ (home-page "https://github.com/wbolster/emacs-python-black")
+ (synopsis "Reformat Python code via @code{python-black}")
+ (description
+ "This package makes it easy to reformat Python code using
+@code{python-black} and @code{python-black-macchiato} for entire and partial
+buffers, respectively.")
+ (license license:bsd-3)))
+
+(define-public emacs-py-isort
+ (package
+ (name "emacs-py-isort")
+ (version "2016.1")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/paetzke/py-isort.el")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "08i55gv392wc12x8v3dca0dmz8a8p9ljsqhyajsb6qv1k120wqhx"))))
+ (build-system emacs-build-system)
+ (arguments
+ `(#:tests? #f)) ;tests fail with "emacs: standard input is not a tty"
+ (propagated-inputs
+ `(("python-isort" ,python-isort)))
+ (home-page "https://github.com/paetzke/py-isort.el")
+ (synopsis "Sort the imports in Python buffers")
+ (description
+ "This package provides commands and a minor mode to sort Python imports
+using @code{python-isort}.")
+ (license license:gpl3+)))
+
(define-public emacs-python-environment
(package
(name "emacs-python-environment")
@@ -6764,15 +6941,14 @@ line program.")
(define-public emacs-rudel
(package
(name "emacs-rudel")
- (version "0.3.1")
+ (version "0.3.2")
(source
(origin
(method url-fetch)
(uri (string-append "https://elpa.gnu.org/packages/rudel-"
version ".tar"))
(sha256
- (base32
- "0glqa68g509p0s2vcc0i8kzlddnc9brd9jqhnm5rzxz4i050cvnz"))))
+ (base32 "03hcvpp6ykavidwn5x48gs986w1i5icvh7ks6p74pdaagpgw4jmk"))))
(build-system emacs-build-system)
(home-page "http://rudel.sourceforge.net/")
(synopsis "Collaborative editing framework")
@@ -7089,6 +7265,31 @@ called. If there are more, each window will have its first character
highlighted. Pressing that character will switch to that window.")
(license license:gpl3+)))
+(define-public emacs-windsize
+ ;; There is no proper release. The base version is extracted from the
+ ;; "Version" keyword in the main file.
+ (let ((revision "1")
+ (commit "62c2846bbe95b0a73e996c75e4a644d05f57aaaa"))
+ (package
+ (name "emacs-windsize")
+ (version (git-version "0.1" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/grammati/windsize")
+ (commit commit)))
+ (sha256
+ (base32 "13kfrmv3vmkfanxv9nym5v43hx5p7xkgqmx65zcxh4gcbaham1mi"))))
+ (build-system emacs-build-system)
+ (home-page "https://github.com/grammati/windsize")
+ (synopsis "Easy resizing of Emacs windows")
+ (description
+ "This package allows moving the borders of the active window
+with the arrow keys. It prefers to move the right or bottom border when
+possible, and falls back to moving the left or top border otherwise.")
+ (license license:gpl3+))))
+
(define-public emacs-iedit
;; Last release version was in 2016.
(let ((commit "e2c100cdd67b7d82835d281ac2cd1bf4f374bc8f")
@@ -7361,7 +7562,7 @@ asynchronously, with Counsel and Ivy. Simply call
(define-public emacs-counsel-projectile
(package
(name "emacs-counsel-projectile")
- (version "0.3.0")
+ (version "0.3.1")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -7370,7 +7571,7 @@ asynchronously, with Counsel and Ivy. Simply call
(file-name (git-file-name name version))
(sha256
(base32
- "1inc4ndl0ysfwvxk4avbgpj4qi9rc93da6476a5c81xmwpsv8wmq"))))
+ "1k4n5lw6wwbgpwv0dg9dw0bjzi0hvbgkzrs1zmq36yhfz6y8gwnh"))))
(build-system emacs-build-system)
(propagated-inputs
`(("emacs-counsel" ,emacs-counsel)
@@ -7427,6 +7628,29 @@ be removed from the front. This type of data structure is sometimes called an
\"output-restricted deque\".")
(license license:gpl3+)))
+(define-public emacs-quickrun
+ (package
+ (name "emacs-quickrun")
+ (version "2.3.1")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/emacsorphanage/quickrun")
+ (commit version)))
+ (sha256
+ (base32 "0a1n2v09h0n7d9p2izflqqang4ny0b46dlqvmxvkkik4bb6f4wcz"))
+ (file-name (git-file-name name version))))
+ (build-system emacs-build-system)
+ (home-page "https://github.com/emacsorphanage/quickrun")
+ (synopsis "Execute editing buffer and show its output quickly")
+ (description
+ "This package evaluates the content of a buffer, or region, and displays
+the result. Quickrun executes not only script languages (Perl, Ruby, Python
+etc), but also compiling languages (C, C++, Go, Java etc) and markup
+languages.")
+ (license license:gpl3+)))
+
(define-public emacs-pkg-info
(package
(name "emacs-pkg-info")
@@ -7814,7 +8038,7 @@ in Emacs.")
(define-public emacs-edit-indirect
(package
(name "emacs-edit-indirect")
- (version "0.1.5")
+ (version "0.1.6")
(source
(origin
(method git-fetch)
@@ -7823,14 +8047,13 @@ in Emacs.")
(commit version)))
(file-name (git-file-name name version))
(sha256
- (base32
- "0by1x53pji39fjrj5bd446kz831nv0vdgw2jqasbym4pc1p2947r"))))
+ (base32 "189nvmlkki1jfszm9i0crbb1p4nzgmbly0wpvpg0i8vmw7vrpl40"))))
(build-system emacs-build-system)
(home-page "https://github.com/Fanael/edit-indirect")
(synopsis "Edit regions in separate buffers")
(description "This package allows you to edit regions in separate buffers,
like @code{org-edit-src-code} but for arbitrary regions.")
- (license license:gpl3+)))
+ (license license:bsd-2)))
(define-public emacs-projectile
(package
@@ -9062,33 +9285,31 @@ using package inferred style.")
(license license:gpl3+))))
(define-public emacs-lua-mode
- (let ((commit "35b6e4c20b8b4eaf783ccc8e613d0dd06dbd165c")
- (revision "0"))
- (package
- (name "emacs-lua-mode")
- (version (git-version "20200508" revision commit))
- (home-page "https://github.com/immerrr/lua-mode/")
- (source (origin
- (method git-fetch)
- (uri (git-reference
- (url home-page)
- (commit commit)))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "1hai6rqjm5py0bp57nhggmj9qigwdj3a46ngacpnjc1qmy9kkgfk"))))
- (build-system emacs-build-system)
- (arguments
- `(#:tests? #t
- #:test-command '("buttercup" "-l" "lua-mode.el")))
- (native-inputs
- `(("emacs-buttercup" ,emacs-buttercup)
- ("lua" ,lua)))
- (synopsis "Major mode for lua")
- (description
- "This Emacs package provides a mode for @uref{https://www.lua.org/,
+ (package
+ (name "emacs-lua-mode")
+ (version "20201010")
+ (home-page "https://github.com/immerrr/lua-mode/")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url home-page)
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0zf43f7fkrgki6pbc09zak975p4jx1yf3ipfs38hypfl9s5d6xrf"))))
+ (build-system emacs-build-system)
+ (arguments
+ `(#:tests? #t
+ #:test-command '("buttercup" "-l" "lua-mode.el")))
+ (native-inputs
+ `(("emacs-buttercup" ,emacs-buttercup)
+ ("lua" ,lua)))
+ (synopsis "Major mode for lua")
+ (description
+ "This Emacs package provides a mode for @uref{https://www.lua.org/,
Lua programming language}.")
- (license license:gpl2+))))
+ (license license:gpl2+)))
(define-public emacs-ebuild-mode
(package
@@ -9612,14 +9833,14 @@ distribution, primarily targeting Clojure users")
(define-public emacs-orgalist
(package
(name "emacs-orgalist")
- (version "1.12")
+ (version "1.13")
(source
(origin
(method url-fetch)
(uri (string-append "https://elpa.gnu.org/packages/"
"orgalist-" version ".el"))
(sha256
- (base32 "1hwm7j0hbv2pg9w885ky1c9qga3grcfq8v216jv2ivkw8xzavysd"))))
+ (base32 "1wkxc5kcy1g4lx6pd78pa8znncjyl9zyhsvz7wpp56qmhq4hlav3"))))
(build-system emacs-build-system)
(home-page "https://elpa.gnu.org/packages/orgalist.html")
(synopsis "Manage Org-like lists in non-Org buffers")
@@ -9677,13 +9898,13 @@ passive voice.")
(name "emacs-org")
;; emacs-org-contrib inherits from this package. Please update it as
;; well.
- (version "9.3.8")
+ (version "9.4")
(source
(origin
(method url-fetch)
(uri (string-append "https://elpa.gnu.org/packages/org-" version ".tar"))
(sha256
- (base32 "1az00pi9rw3ibx4061jyqr6ll27kvs99yvd7nk5dckjh0ajd0gni"))))
+ (base32 "1awkrh3y90q7c0as3327rqj0zylf5cpjzr1pyvbzymli16irhwb6"))))
(build-system emacs-build-system)
(arguments
`(#:phases
@@ -9708,14 +9929,18 @@ programming and reproducible research.")
(package
(inherit emacs-org)
(name "emacs-org-contrib")
- (version "20200907")
+ (version "20200914")
(source
(origin
(method url-fetch)
(uri (string-append "https://orgmode.org/elpa/"
"org-plus-contrib-" version ".tar"))
(sha256
- (base32 "1rgk3pwhsmbmwlncg60ahwrrkm1ks4xpwy2wzv9q7myl1aihjj54"))))
+ (base32 "1naq25g4d95cx29axx428rnpc4m9hd0j7w1l0vqwkdjyr5qfj0ab"))
+ ;; ob-sclang.el is packaged separately to avoid the dependency on
+ ;; SuperCollider and qtwebengine.
+ (modules '((guix build utils)))
+ (snippet '(begin (delete-file "ob-sclang.el") #t))))
(arguments
`(#:modules ((guix build emacs-build-system)
(guix build utils)
@@ -9742,8 +9967,7 @@ programming and reproducible research.")
(propagated-inputs
`(("arduino-mode" ,emacs-arduino-mode)
("cider" ,emacs-cider)
- ("org" ,emacs-org)
- ("scel" ,emacs-scel)))
+ ("org" ,emacs-org)))
(synopsis "Contributed packages to Org mode")
(description "Org is an Emacs mode for keeping notes, maintaining TODO
lists, and project planning with a fast and effective plain-text system.
@@ -9751,6 +9975,28 @@ lists, and project planning with a fast and effective plain-text system.
This package is equivalent to org-plus-contrib, but only includes additional
files that you would find in @file{contrib/} from the git repository.")))
+(define-public emacs-ob-sclang
+ (package
+ (inherit emacs-org-contrib)
+ (name "emacs-ob-sclang")
+ (source
+ (origin (inherit (package-source emacs-org-contrib))
+ (modules '((guix build utils)))
+ (snippet
+ '(begin
+ (for-each (lambda (file)
+ (unless (equal? file "./ob-sclang.el")
+ (delete-file file)))
+ (find-files "." "\\.el"))
+ #t))))
+ (propagated-inputs
+ `(("org" ,emacs-org)
+ ("scel" ,emacs-scel)))
+ (synopsis "Org Babel support for SuperCollider")
+ (description "This package adds support for evaluating @code{sclang}
+Org mode source blocks. It is extracted from the @code{emacs-org-contrib}
+package.")))
+
(define-public emacs-org-edna
(package
(name "emacs-org-edna")
@@ -11063,7 +11309,7 @@ function to be used by other frontend programs.")
(home-page "https://github.com/tumashu/pyim-basedict")
(synopsis "Input method dictionary of pyim")
(description "Pyim-basedict is the default pinyin input method dictionary,
-containing words from the rime project.")
+containing words from the Rime project.")
(license license:gpl2+)))
(define-public emacs-pyim
@@ -11095,14 +11341,14 @@ and cangjie.")
(define-public emacs-posframe
(package
(name "emacs-posframe")
- (version "0.8.0")
+ (version "0.8.1")
(source
(origin
(method url-fetch)
(uri (string-append "https://elpa.gnu.org/packages/"
"posframe-" version ".el"))
(sha256
- (base32 "1vzaiiw2pxa0zrc2bkaxljpr4035xrh3d8z3l5f0jvp72cnq49kp"))))
+ (base32 "01s9lc1liaxfpnfw183a320blp7cv6qg8gh2r22w4wkzi1yrcbb7"))))
(build-system emacs-build-system)
;; emacs-minimal does not include the function font-info.
(arguments
@@ -11300,6 +11546,25 @@ It should enable you to implement low-level X11 applications.")
of XELB.")
(license license:gpl3+)))
+(define-public emacs-xelb-no-x-toolkit
+ (package
+ (inherit emacs-xelb)
+ (name "emacs-xelb-no-x-toolkit")
+ (arguments
+ (substitute-keyword-arguments (package-arguments emacs-xelb)
+ ((#:emacs emacs) `,emacs-no-x-toolkit)))))
+
+(define-public emacs-exwm-no-x-toolkit
+ (package
+ (inherit emacs-exwm)
+ (name "emacs-exwm-no-x-toolkit")
+ (synopsis "Emacs X window manager (without an X toolkit)")
+ (propagated-inputs
+ `(("emacs-xelb-no-x-toolkit" ,emacs-xelb-no-x-toolkit)))
+ (arguments
+ (substitute-keyword-arguments (package-arguments emacs-exwm)
+ ((#:emacs emacs) `,emacs-no-x-toolkit)))))
+
(define-public emacs-switch-window
(package
(name "emacs-switch-window")
@@ -12932,7 +13197,7 @@ buffer.")
(description "@code{eless} provides a combination of Bash script
and a minimal Emacs view-mode.
-Feautures:
+Features:
@itemize
@item Independent of a user’s Emacs config.
@@ -14280,18 +14545,15 @@ timestamps by providing a @code{ts} struct.")
(define-public emacs-peg
(package
(name "emacs-peg")
- (version "0.6")
- (source (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/emacsmirror/peg")
- (commit version)))
- (sha256
- (base32
- "0kjz7ch4bn0m4v9zgqyqcrsasnqc5c5drv2hp22j7rnbb7ny0q3n"))
- (file-name (git-file-name name version))))
+ (version "1.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "https://elpa.gnu.org/packages/peg-" version ".tar"))
+ (sha256
+ (base32 "0skr5dz9k34r409hisnj37n1b7n62l3md0glnfx578xkbmxlpcxl"))))
(build-system emacs-build-system)
- (home-page "https://github.com/emacsmirror/peg/")
+ (home-page "https://elpa.gnu.org/packages/peg.html")
(synopsis "Parsing Expression Grammars in Elisp")
(description "This package provides a macro that parses the current buffer
according to a parsing expression grammar.")
@@ -15251,7 +15513,7 @@ until the top-level form is no longer a macro call.")
(define-public emacs-beginend
(package
(name "emacs-beginend")
- (version "2.1.0")
+ (version "2.2.0")
(source
(origin
(method git-fetch)
@@ -15260,7 +15522,7 @@ until the top-level form is no longer a macro call.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
- (base32 "1ic5z3qb5sc3mjrjdlg0rqm2l59a43gwnakagns4cilln2a3xdg8"))))
+ (base32 "1r9033zlx2q2dk3bjz004flxdiw79qiswq0zqdjnlzwassvk0f35"))))
;; TODO: Run tests.
(build-system emacs-build-system)
(inputs
@@ -15742,7 +16004,7 @@ downloading manager for Emacs.")
(define-public emacs-helpful
(package
(name "emacs-helpful")
- (version "0.17")
+ (version "0.18")
(source
(origin
(method git-fetch)
@@ -15751,7 +16013,7 @@ downloading manager for Emacs.")
(commit version)))
(file-name (git-file-name name version))
(sha256
- (base32 "0v2y0x9pwi08y2mgjjiw5brfb5haa7pbmy4540glw904ffxxcblj"))))
+ (base32 "0gdjxykqkal2x765mi51m99i5ql23i1fy909wy4mzj5ajhjfgqcc"))))
(build-system emacs-build-system)
(propagated-inputs
`(("emacs-elisp-refs" ,emacs-elisp-refs)
@@ -15964,10 +16226,10 @@ Magit.")
(license license:gpl3+)))
(define-public emacs-lice-el
- (let ((commit "4339929927c62bd636f89bb39ea999d18d269250"))
+ (let ((commit "482e58ab83fff86ed754b00be27b62a219597e7c"))
(package
(name "emacs-lice-el")
- (version (git-version "0.2" "1" commit))
+ (version (git-version "0.2" "2" commit))
(source (origin
(method git-fetch)
(uri (git-reference
@@ -15976,8 +16238,26 @@ Magit.")
(file-name (git-file-name name version))
(sha256
(base32
- "0879z761b7gajkhq176ps745xpdrivch349crransv8fnsc759yb"))))
+ "0yxkjyhfk8kpr8yqz54gdx6xwkj4s8bnbz60162jh12crj0bs5n7"))))
(build-system emacs-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'patch-template-directory
+ (lambda* (#:key outputs #:allow-other-keys)
+ (chmod "lice.el" #o666)
+ (emacs-substitute-variables "lice.el"
+ ("lice:system-template-directory"
+ (string-append (assoc-ref outputs "out")
+ "/share/emacs-lice-el/template")))
+ #t))
+ (add-after 'install 'install-templates
+ (lambda* (#:key outputs #:allow-other-keys)
+ (copy-recursively
+ "template"
+ (string-append (assoc-ref outputs "out")
+ "/share/emacs-lice-el/template"))
+ #t)))))
(home-page "https://github.com/buzztaiki/lice-el")
(synopsis "License and header template for Emacs")
(description "@code{lice.el} provides following features:
@@ -16924,6 +17204,27 @@ visiting the bookmark, a new @code{eshell} session will be opened in the
appropriate directory if no @code{eshell} session is active.")
(license license:gpl3+)))
+(define-public emacs-eshell-syntax-highlighting
+ (package
+ (name "emacs-eshell-syntax-highlighting")
+ (version "0.2")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/akreisher/eshell-syntax-highlighting")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0id27874wsb5y169030x8g1ldpa1mnskv1s2j3ygqiyh5fvpfash"))))
+ (build-system emacs-build-system)
+ (home-page "https://github.com/akreisher/eshell-syntax-highlighting")
+ (synopsis "Add syntax highlighting to Eshell")
+ (description
+ "This package highlights user commands at the Eshell interactive prompt
+to provide feedback on the validity of commands and syntax.")
+ (license license:gpl3+)))
+
(define-public emacs-eshell-z
(package
(name "emacs-eshell-z")
@@ -19478,8 +19779,8 @@ stored playlists.")
(define-public emacs-vterm
(let ((version "0")
- (revision "2")
- (commit "f41849c2c9c1899f22d1c3d4f871ec47c82627ce"))
+ (revision "3")
+ (commit "14e4afdfc160b2e625c3e483d169786ac00cb4fe"))
(package
(name "emacs-vterm")
(version (git-version version revision commit))
@@ -19491,7 +19792,7 @@ stored playlists.")
(file-name (git-file-name name version))
(sha256
(base32
- "1b5s1101n7a2lnpkbadm1h4k6z295fpijx0rdpmd05dkhyarax6n"))))
+ "0wl613rxw493i3397n34qwqnd5fkyqrnn1fx3y2040xhvjl9rx70"))))
(build-system emacs-build-system)
(arguments
`(#:modules ((guix build emacs-build-system)
@@ -19616,7 +19917,7 @@ according to their use.")
(define-public emacs-dtrt-indent
(package
(name "emacs-dtrt-indent")
- (version "0.8")
+ (version "1.2")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -19625,7 +19926,7 @@ according to their use.")
(file-name (git-file-name name version))
(sha256
(base32
- "0pgf0pvqd8k4yzhdn2df9lp0y8hmlm2ccrh07jivwlccs95pcz7z"))))
+ "0p5v5xwr0s59hv3s0f85byafphc85qv76g41crad9fhnxzab9rly"))))
(build-system emacs-build-system)
(home-page "https://github.com/jscheid/dtrt-indent")
(synopsis "Minor mode that guesses the indentation offset")
@@ -21861,7 +22162,7 @@ it forcibly
(define-public emacs-elpher
(package
(name "emacs-elpher")
- (version "2.9.1")
+ (version "2.10.2")
(source
(origin
(method git-fetch)
@@ -21870,7 +22171,7 @@ it forcibly
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
- (base32 "0vyqmv7dycmad1726yb6yizd21x3kkz5cj33mca11r8nh38f1qzp"))))
+ (base32 "0xqiisirpvw4ka9417pq4r73x937wl3qbf8cpn2i03akm8d58smd"))))
(build-system emacs-build-system)
(native-inputs
`(("texinfo" ,texinfo)))
@@ -22906,6 +23207,52 @@ icon support, git integration, and several other utilities.")
(home-page "https://github.com/seagle0128/doom-modeline/")
(license license:gpl3+)))
+(define-public emacs-mood-line
+ (package
+ (name "emacs-mood-line")
+ (version "1.2.4")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://gitlab.com/jessieh/mood-line")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0fh9j9fkgl433nykfzjnzap5labi4sdndfk1nv4f904ij69pmvxb"))))
+ (build-system emacs-build-system)
+ (home-page "https://gitlab.com/jessieh/mood-line")
+ (synopsis "Minimal mode-line for Emacs")
+ (description
+ "Mood-line is a minimal Emacs mode-line configuration that aims to
+replicate some of the features of the Doom modeline package.")
+ (license license:gpl2+)))
+
+(define-public emacs-frames-only-mode
+ (package
+ (name "emacs-frames-only-mode")
+ (version "1.0.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/davidshepherd7/frames-only-mode")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0y0sdjixaxvywrlp2sw51wnczhk51q1svl5aghbk9rkxpwv9ys9v"))))
+ (build-system emacs-build-system)
+ (propagated-inputs
+ `(("emacs-dash" ,emacs-dash)
+ ("emacs-s" ,emacs-s)))
+ (home-page "https://github.com/davidshepherd7/frames-only-mode")
+ (synopsis "Use frames instead of Emacs windows")
+ (description
+ "This is an Emacs global minor mode to use Emacs frames instead of Emacs'
+internal windowing system. This combines particularly well with tiling window
+managers such as XMonad.")
+ (license license:gpl3+)))
+
(define-public emacs-shrink-path
(package
(name "emacs-shrink-path")
@@ -23121,30 +23468,26 @@ interface.")
(license license:gpl3+))))
(define-public emacs-ivy-posframe
- (let ((commit "ae9bafe94fe6b77b6fe45766ae6172646f6a5d50"))
- (package
- (name "emacs-ivy-posframe")
- (version (git-version "0.1.0" "1" commit))
- (source
- (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/tumashu/ivy-posframe")
- (commit commit)))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "1j6yns5d7lh2v1nfcznrirl7qicdli9csciqvfgj4gkh72a97pw1"))))
- (build-system emacs-build-system)
- (propagated-inputs
- `(("emacs-posframe" ,emacs-posframe)
- ("emacs-ivy" ,emacs-ivy)))
- (home-page "https://github.com/tumashu/ivy-posframe")
- (synopsis "Pop a posframe (a child frame) to show Ivy candidates")
- (description
- "This package provides an Emacs Ivy extension, which let Ivy use
+ (package
+ (name "emacs-ivy-posframe")
+ (version "0.5.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "https://elpa.gnu.org/packages/"
+ "ivy-posframe-" version ".el"))
+ (sha256
+ (base32 "1yi5avbgk143xs82yqiia7yhh6jjjm22lpmwaq0ysw5mdpazjxfa"))))
+ (build-system emacs-build-system)
+ (propagated-inputs
+ `(("emacs-ivy" ,emacs-ivy)
+ ("emacs-posframe" ,emacs-posframe)))
+ (home-page "https://github.com/tumashu/ivy-posframe")
+ (synopsis "Pop a posframe (a child frame) to show Ivy candidates")
+ (description
+ "This package provides an Emacs Ivy extension, which let Ivy use
posframe to show its candidate menu.")
- (license license:gpl3+))))
+ (license license:gpl3+)))
(define-public emacs-shackle
(let ((commit "7ccbe513852a1d1700b698547efca14b8940319d")
@@ -23783,7 +24126,7 @@ files and subdirectories when appropriate.")
(define-public emacs-meson-mode
(package
(name "emacs-meson-mode")
- (version "0.2")
+ (version "0.3")
(source
(origin
(method git-fetch)
@@ -23792,7 +24135,7 @@ files and subdirectories when appropriate.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
- (base32 "1720b3hpfqd989zrgcns51jbjrv4vzl9di9mccl55vkmkbqzfin0"))))
+ (base32 "0hlqvq3j4f6g16nj3bm2wbkncn8hv8c8iqd0sch3w80wwqnr622y"))))
(build-system emacs-build-system)
(home-page "https://github.com/wentasah/meson-mode")
(synopsis "Major mode for Meson build system files")
@@ -24046,7 +24389,7 @@ Files} (@url{http://tools.ietf.org/html/rfc4180}).")
(define-public emacs-org-journal
(package
(name "emacs-org-journal")
- (version "2.0.0")
+ (version "2.1.1")
(source
(origin
(method git-fetch)
@@ -24055,7 +24398,7 @@ Files} (@url{http://tools.ietf.org/html/rfc4180}).")
(commit version)))
(file-name (git-file-name name version))
(sha256
- (base32 "18dqd0jy2x530lk0h4fcn9cld9qh4w7b3vxa60fpiia628vsv1dg"))))
+ (base32 "1p9i6v3bwi1ab576vc9qg1ki91197d6nkkg857s52zsan1zlkzzw"))))
(build-system emacs-build-system)
(home-page "https://github.com/bastibe/org-journal")
(synopsis "Simple Org mode journaling mode")
@@ -24489,7 +24832,7 @@ picked up when copy-pasting text from buffer to buffer.")
(define-public emacs-org-webring
(package
(name "emacs-org-webring")
- (version "1.6")
+ (version "1.9")
(source
(origin
(method git-fetch)
@@ -24499,7 +24842,7 @@ picked up when copy-pasting text from buffer to buffer.")
(file-name (git-file-name name version))
(sha256
(base32
- "00d7jqsbfa08rhyv3ry87rgy9ikv233spn4rz0d3riy0bp7b7j6b"))))
+ "09lm2h5d6xcdwilbmi6xs4qz33d0442m9iys9k36q9vhhakl7w4x"))))
(build-system emacs-build-system)
(arguments
`(#:phases
@@ -24549,7 +24892,7 @@ displayed for sharing.")
buffer on an active webserver to which the user has SSH access.
It is similar in purpose to services such as Gist or Pastebin,
but is much simpler since it assumes the user has access to a
-publically-accessible HTTP server.")
+publicly-accessible HTTP server.")
(license license:gpl3+))))
(define-public emacs-company-reftex
@@ -24576,3 +24919,35 @@ publically-accessible HTTP server.")
label references and citations in LaTeX. It is based on RefTeX, which is
included with Emacs.")
(license license:gpl3+)))
+
+(define-public emacs-html-to-hiccup
+ ;; Package has no release. Version is extracted from "Version:" keyword in
+ ;; main file.
+ (let ((commit "50a52e2b0d13d865187acdf775b8203d5003f2f1")
+ (revision "0"))
+ (package
+ (name "emacs-html-to-hiccup")
+ (version (git-version "1" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/plexus/html-to-hiccup")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1qi092mw2n08v6yr0j6hlpx0pnlcnhxjqbsrlw9pn4yin6zk91yp"))))
+ (build-system emacs-build-system)
+ (propagated-inputs
+ `(("dash" ,emacs-dash)
+ ("s" ,emacs-s)))
+ (home-page "https://github.com/plexus/html-to-hiccup")
+ (synopsis "Turn HTML into Hiccup syntax")
+ (description
+ "This is an Emacs package that turns HTML into Hiccup syntax
+which is a popular notation to use when doing Clojure/ClojureScript
+web development.")
+ ;; There is a conflict between the repository official LICENSE
+ ;; file and the header of the main elisp file which indicates
+ ;; that it is licensed under the GPL version 3 or later.
+ (license (list license:mpl2.0 license:gpl3+)))))
diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm
index 03c28ee7a7..4963379d74 100644
--- a/gnu/packages/emacs.scm
+++ b/gnu/packages/emacs.scm
@@ -196,11 +196,16 @@
(lambda* (#:key outputs #:allow-other-keys)
;; Directly copy emacs-X.Y to emacs, so that it is not wrapped
;; twice. This also fixes a minor issue, where WMs would not be
- ;; able to track emacs back to emacs.desktop.
+ ;; able to track emacs back to emacs.desktop. The version is
+ ;; accessed using using THIS-PACKAGE so it "just works" for
+ ;; inherited Emacs packages of different versions.
(with-directory-excursion (assoc-ref outputs "out")
(copy-file (string-append
"bin/emacs-"
- ,(version-major+minor (package-version emacs)))
+ ,(let ((this-version (package-version this-package)))
+ (or (false-if-exception
+ (version-major+minor+point this-version))
+ (version-major+minor this-version))))
"bin/emacs")
#t)))
(add-before 'reset-gzip-timestamps 'make-compressed-files-writable
@@ -279,11 +284,10 @@ languages.")
(define-public emacs-next
(let ((commit "2ea34662c20f71d35dd52a5ed996542c7386b9cb")
- (revision "0")
- (emacs-version "28.0.50.1"))
+ (revision "0"))
(package/inherit emacs
(name "emacs-next")
- (version (git-version emacs-version revision commit))
+ (version (git-version "28.0.50" revision commit))
(source
(origin
(inherit (package-source emacs))
@@ -295,24 +299,20 @@ languages.")
(sha256
(base32
"0igjm9kwiswn2dpiy2k9xikbdfc7njs07ry48fqz70anljj8y7y3"))))
- (arguments
- (substitute-keyword-arguments (package-arguments emacs)
- ((#:phases phases)
- `(modify-phases ,phases
- (replace 'strip-double-wrap
- (lambda* (#:key outputs #:allow-other-keys)
- ;; Directly copy emacs-X.Y to emacs, so that it is not wrapped
- ;; twice. This also fixes a minor issue, where WMs would not be
- ;; able to track emacs back to emacs.desktop.
- (with-directory-excursion (assoc-ref outputs "out")
- (copy-file (string-append
- "bin/emacs-"
- ,(version-major+minor+point (package-version emacs-next)))
- "bin/emacs")
- #t)))))))
(native-inputs
`(("autoconf" ,autoconf)
- ,@(package-native-inputs emacs))))))
+ ,@(package-native-inputs emacs)))
+ (native-search-paths
+ (list (search-path-specification
+ (variable "EMACSLOADPATH")
+ ;; The versioned entry is for the Emacs' builtin libraries.
+ (files (list "share/emacs/site-lisp"
+ (string-append "share/emacs/"
+ (version-major+minor+point version)
+ "/lisp"))))
+ (search-path-specification
+ (variable "INFOPATH")
+ (files '("share/info"))))))))
(define-public emacs-minimal
;; This is the version that you should use as an input to packages that just
diff --git a/gnu/packages/emulators.scm b/gnu/packages/emulators.scm
index d20027dba0..0ce04dfaa5 100644
--- a/gnu/packages/emulators.scm
+++ b/gnu/packages/emulators.scm
@@ -53,6 +53,7 @@
#:use-module (gnu packages fonts)
#:use-module (gnu packages fontutils)
#:use-module (gnu packages freedesktop)
+ #:use-module (gnu packages fribidi)
#:use-module (gnu packages game-development)
#:use-module (gnu packages gcc)
#:use-module (gnu packages gettext)
@@ -1327,34 +1328,20 @@ multi-system game/emulator system.")
(define-public scummvm
(package
(name "scummvm")
- (version "2.1.2")
+ (version "2.2.0")
(source
(origin
(method url-fetch)
(uri (string-append "http://www.scummvm.org/frs/scummvm/" version
"/scummvm-" version ".tar.xz"))
(sha256
- (base32 "1c4fz1nfg0nqnqx9iipayhzcsiqdmfxm2i95nw9dbhshhsdnrhf4"))))
+ (base32 "11vknasm5dna2vqr6gk343qynh7nhsq3kf60zayarn1vb5z6as8l"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ;require "git"
#:configure-flags (list "--enable-release") ;for optimizations
#:phases
(modify-phases %standard-phases
- (add-after 'unpack 'fix-build
- ;; XXX: The following works around a build failure introduced when
- ;; Fluidsynth was updated to version 2.1. It has been applied
- ;; upstream as 68758a879e0c8ecc0d40962516d4e808aa4e15e5 and can be
- ;; removed once this commit makes it into a release.
- (lambda _
- (substitute* "audio/softsynth/fluidsynth.cpp"
- (("#include <fluidsynth.h>") "")
- (("#include \"common/scummsys.h\"") "#include \"config.h\"")
- (("#include \"common/config-manager.h\"" line)
- (string-append "#include <fluidsynth.h>\n"
- "#include \"common/scummsys.h\"\n"
- line)))
- #t))
(replace 'configure
;; configure does not work followed by both "SHELL=..." and
;; "CONFIG_SHELL=..."; set environment variables instead
@@ -1374,6 +1361,7 @@ multi-system game/emulator system.")
("faad2" ,faad2)
("fluidsynth" ,fluidsynth)
("freetype" ,freetype)
+ ("fribidi" ,fribidi)
("liba52" ,liba52)
("libflac" ,flac)
("libjpeg-turbo" ,libjpeg-turbo)
@@ -1397,7 +1385,7 @@ play them on systems for which they were never designed!")
(define-public mame
(package
(name "mame")
- (version "0.224")
+ (version "0.225")
(source
(origin
(method git-fetch)
@@ -1406,7 +1394,7 @@ play them on systems for which they were never designed!")
(commit (apply string-append "mame" (string-split version #\.)))))
(file-name (git-file-name name version))
(sha256
- (base32 "0dpg4hz2f1wlp0rmk5c5xq57fy0sblh97z3l66p814wkgzap4bhx"))
+ (base32 "1n61v1yqmc69399khcm8gdabqaz8rwwj822m8vm5mbyxnw92icqg"))
(modules '((guix build utils)))
(snippet
;; Remove bundled libraries.
@@ -1891,7 +1879,7 @@ framework based on QEMU.")
(define-public ppsspp
(package
(name "ppsspp")
- (version "1.10")
+ (version "1.10.3")
(source
(origin
(method git-fetch)
@@ -1899,7 +1887,7 @@ framework based on QEMU.")
(url "https://github.com/hrydgard/ppsspp")
(commit (string-append "v" version))))
(sha256
- (base32 "02yx1w0ygclnmdl0imsvgj24lkzi55wvxkf47q617j0jgrqhy8yl"))
+ (base32 "0znxlbj6cfw7gn0naay0mzhc0k5saw8nrwpspcn7gap1023p06w2"))
(file-name (git-file-name name version))
(patches
(search-patches "ppsspp-disable-upgrade-and-gold.patch"))
@@ -1950,7 +1938,7 @@ framework based on QEMU.")
" spirv-cross-reflect spirv-cross-util")))
(substitute* "ext/CMakeLists.txt"
(("add_subdirectory\\(glew\\)") "")
- (("add_subdirectory\\(glslang\\)") "")
+ (("add_subdirectory\\(glslang( [A-Z_]*)*\\)") "")
(("add_subdirectory\\(snappy\\)") "")
(("add_subdirectory\\(SPIRV-Cross-build\\)") ""))
;; Finally, we can delete the bundled sources.
@@ -1993,14 +1981,14 @@ framework based on QEMU.")
;; TODO: unbundle armips.
("armips-source" ,(package-source armips))
("lang"
- ,(let ((commit "d184ba2b607a03435be579406b816c90add334e6"))
+ ,(let ((commit "1c64b8fbd3cb6bd87935eb53f302f7de6f86e209"))
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/hrydgard/ppsspp-lang")
(commit commit)))
(sha256
- (base32 "0s003x6247nx09qd6a1jz1l2hsk5d6k1zmh8mg3m6hjjhvbvd9j9"))
+ (base32 "0rprn3yd8xfrvi0fm62sgpqa8n73jk7zmlscp8cp0h2fawqpiamd"))
(file-name (git-file-name "ppsspp-lang" commit)))))
("tests"
,(let ((commit "328b839c7243e7f733f9eae88d059485e3d808e7"))
diff --git a/gnu/packages/engineering.scm b/gnu/packages/engineering.scm
index a01548b1b7..14d3de88ba 100644
--- a/gnu/packages/engineering.scm
+++ b/gnu/packages/engineering.scm
@@ -20,6 +20,7 @@
;;; Copyright © 2020 Ekaitz Zarraga <ekaitz@elenq.tech>
;;; Copyright © 2020 B. Wilson <elaexuotee@wilsonb.com>
;;; Copyright © 2020 Vinicius Monego <monego@posteo.net>
+;;; Copyright © 2020 Morgan Smith <Morgan.J.Smith@outlook.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -426,16 +427,16 @@ optimizer; and it can produce photorealistic and design review images.")
(define-public pcb-rnd
(package (inherit pcb)
(name "pcb-rnd")
- (version "2.2.3")
+ (version "2.2.4")
(source (origin
(method url-fetch)
(uri (string-append "http://repo.hu/projects/pcb-rnd/releases/"
"pcb-rnd-" version ".tar.gz"))
(sha256
(base32
- "0j650498d87b4xsggzc0xlk73k0hhj43wfy45qz2lcn0xc3bks1m"))))
+ "06ylc2rd4yvzp3krk62q9dbi13h0yq1x257fbjkh10vfjn0ga5c2"))))
(arguments
- `(#:tests? #f ; no check target
+ `(#:tests? #f ; no check target
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'cc-is-gcc
@@ -1328,21 +1329,26 @@ developed at MIT to model electromagnetic systems.")
(define-public adms
(package
(name "adms")
- (version "2.3.6")
+ (version "2.3.7")
(source (origin
- (method url-fetch)
- (uri
- (string-append
- "mirror://sourceforge/mot-adms/adms-source/"
- (version-major+minor version) "/adms-" version ".tar.gz"))
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/Qucs/ADMS")
+ (commit (string-append "release-" version))))
+ (file-name (git-file-name name version))
(sha256
(base32
- "1rn98l6jxcjhi6ai5f7p588khra9z80m0m0lql4n4sb7773fh1vk"))))
+ "0i37c9k6q1iglmzp9736rrgsnx7sw8xn3djqbbjw29zsyl3pf62c"))))
(build-system gnu-build-system)
(native-inputs
- `(("flex" ,flex)
- ("bison" ,bison)))
- (home-page "https://sourceforge.net/projects/mot-adms")
+ `(("autoconf" ,autoconf)
+ ("automake" ,automake)
+ ("bison" ,bison)
+ ("flex" ,flex)
+ ("libtool" ,libtool)
+ ("perl" ,perl)
+ ("perl-xml-libxml" ,perl-xml-libxml)))
+ (home-page "https://github.com/Qucs/ADMS")
(synopsis "Automatic device model synthesizer")
(description
"ADMS is a code generator that converts electrical compact device models
diff --git a/gnu/packages/enlightenment.scm b/gnu/packages/enlightenment.scm
index dc3114d58b..ed15cd28d2 100644
--- a/gnu/packages/enlightenment.scm
+++ b/gnu/packages/enlightenment.scm
@@ -31,7 +31,6 @@
#:use-module (guix build-system python)
#:use-module (gnu packages)
#:use-module (gnu packages algebra)
- #:use-module (gnu packages avahi)
#:use-module (gnu packages bittorrent)
#:use-module (gnu packages check)
#:use-module (gnu packages code)
@@ -69,7 +68,7 @@
(define-public efl
(package
(name "efl")
- (version "1.24.3")
+ (version "1.25.1")
(source (origin
(method url-fetch)
(uri (string-append
@@ -77,10 +76,10 @@
version ".tar.xz"))
(sha256
(base32
- "0ajwc8lmay5ai7nsrp778g393h0p4h98p4c22gic2w61fgkcd5fy"))))
+ "0svybbrvpf6q955y6fclxh3md64z0dgmh0x54x2j60503hhs071m"))))
(build-system meson-build-system)
(native-inputs
- `(("check" ,check)
+ `(("check" ,check-0.14)
("gettext" ,gettext-minimal)
("pkg-config" ,pkg-config)))
(inputs
@@ -115,8 +114,7 @@
(propagated-inputs
;; All these inputs are in package config files in section
;; Requires.private.
- `(("avahi" ,avahi)
- ("dbus" ,dbus)
+ `(("dbus" ,dbus)
("elogind" ,elogind)
("eudev" ,eudev)
("fontconfig" ,fontconfig)
@@ -137,13 +135,9 @@
("wayland" ,wayland)
("zlib" ,zlib)))
(arguments
- `(#:configure-flags '("-Dsystemd=false"
- "-Delogind=true"
- "-Dembedded-lz4=false"
- "-Devas-loaders-disabler=json"
+ `(#:configure-flags '("-Dembedded-lz4=false"
"-Dbuild-examples=false"
"-Decore-imf-loaders-disabler=scim"
- "-Davahi=true"
"-Dglib=true"
"-Dmount-path=/run/setuid-programs/mount"
"-Dunmount-path=/run/setuid-programs/umount"
@@ -164,6 +158,7 @@
(let ((curl (assoc-ref inputs "curl"))
(pulse (assoc-ref inputs "pulseaudio"))
(sndfile (assoc-ref inputs "libsndfile"))
+ (elogind (assoc-ref inputs "elogind"))
(lib "/lib/"))
(substitute* "src/lib/ecore_con/ecore_con_url_curl.c"
(("libcurl.so.?" libcurl) ; libcurl.so.[45]
@@ -173,6 +168,9 @@
(string-append pulse lib libpulse))
(("libsndfile.so.1" libsnd)
(string-append sndfile lib libsnd)))
+ (substitute* "src/lib/elput/elput_logind.c"
+ (("libelogind.so.0" libelogind)
+ (string-append elogind "/lib/" libelogind)))
#t)))
(add-after 'unpack 'fix-install-paths
(lambda _
@@ -181,6 +179,8 @@
"install_dir: join_paths(dir_data, 'dbus-1', 'services'))\n"))
(substitute* "src/tests/elementary/meson.build"
(("dir_data") "meson.source_root(), 'test-output'"))
+ (substitute* "data/eo/meson.build"
+ (("'usr', 'lib'") "'./' + dir_lib"))
#t))
(add-after 'unpack 'set-home-directory
;; FATAL: Cannot create run dir '/homeless-shelter/.run' - errno=2
@@ -385,7 +385,7 @@ embedded systems.")
(define-public python-efl
(package
(name "python-efl")
- (version "1.24.0")
+ (version "1.25.0")
(source
(origin
(method url-fetch)
@@ -393,7 +393,7 @@ embedded systems.")
"python/python-efl-" version ".tar.xz"))
(sha256
(base32
- "1vk1cdd959gia4a9qzyq56a9zw3lqf9ck66k8c9g3c631mp5cfpy"))
+ "0bk161xwlz4dlv56r68xwkm8snzfifaxd1j7w2wcyyk4fgvnvq4r"))
(modules '((guix build utils)))
;; Remove files generated by Cython
(snippet
@@ -470,7 +470,7 @@ Libraries stack (eo, evas, ecore, edje, emotion, ethumb and elementary).")
(lambda _ (setenv "HOME" "/tmp") #t)))
#:tests? #f)) ; tests require running dbus service
(native-inputs
- `(("check" ,check)
+ `(("check" ,check-0.14)
("gettext" ,gettext-minimal)
("pkg-config" ,pkg-config)))
(inputs
@@ -566,19 +566,20 @@ directories.
(define-public evisum
(package
(name "evisum")
- (version "0.5.4")
+ (version "0.5.6")
(source
(origin
(method url-fetch)
(uri (string-append "https://download.enlightenment.org/rel/apps/"
"evisum/evisum-" version ".tar.xz"))
(sha256
- (base32 "1ip3w2d476g45sivqvm1madfyqmkni9q2i99qqxk53859jgs91pa"))))
+ (base32 "1l8pym7738kncvic5ga03sj9d5igigvmcxa9lbg47z2yvdjwzv97"))))
(build-system meson-build-system)
(arguments
'(#:tests? #f)) ; no tests
(native-inputs
- `(("pkg-config" ,pkg-config)))
+ `(("gettext" ,gettext-minimal)
+ ("pkg-config" ,pkg-config)))
(inputs
`(("efl" ,efl)))
(home-page "https://www.enlightenment.org")
diff --git a/gnu/packages/entr.scm b/gnu/packages/entr.scm
index cacb5ab7f5..49e1060b5f 100644
--- a/gnu/packages/entr.scm
+++ b/gnu/packages/entr.scm
@@ -2,7 +2,7 @@
;;; Copyright © 2016 Matthew Jordan <matthewjordandevops@yandex.com>
;;; Copyright © 2016 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2019 Ricardo Wurmus <rekado@elephly.net>
-;;; Copyright © 2019 Tobias Geerinckx-Rice <me@tobias.gr>
+;;; Copyright © 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2020 Jakub Kądziołka <kuba@kadziolka.net>
;;;
;;; This file is part of GNU Guix.
@@ -21,23 +21,26 @@
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu packages entr)
+ #:use-module (gnu packages base)
+ #:use-module (gnu packages bash)
#:use-module (gnu packages ncurses)
#:use-module (guix licenses)
#:use-module (guix packages)
#:use-module (guix download)
- #:use-module (guix build-system gnu))
+ #:use-module (guix build-system gnu)
+ #:use-module (guix utils))
(define-public entr
(package
(name "entr")
- (version "4.2")
+ (version "4.6")
(source (origin
(method url-fetch)
(uri (string-append "http://entrproject.org/code/entr-"
version ".tar.gz"))
(sha256
(base32
- "0w2xkf77jikcjh15fp9g7661ss30pz3jbnh261vqpaqavwah4c17"))))
+ "0vcflgagna2gdlpjsd6748c73j2829xlhm276mi838zl1n121phn"))))
(build-system gnu-build-system)
(arguments
`(#:test-target "test"
@@ -47,20 +50,24 @@
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(setenv "CONFIG_SHELL" (which "bash"))
- (setenv "CC" (which "gcc"))
- (setenv "DESTDIR" (string-append out "/"))
- (setenv "PREFIX" "")
- (setenv "MANPREFIX" "man")
+ (setenv "CC" ,(cc-for-target))
+ (setenv "PREFIX" out)
+ (setenv "MANPREFIX" (string-append out "/man"))
(invoke "./configure"))))
(add-before 'build 'remove-fhs-file-names
- (lambda _
+ (lambda* (#:key inputs #:allow-other-keys)
(substitute* "entr.c"
- (("/bin/sh") (which "sh"))
- (("/bin/cat") (which "cat"))
- (("/usr/bin/clear") (which "clear")))
+ (("/bin/sh" command)
+ (string-append (assoc-ref inputs "bash") command))
+ (("/bin/cat" command)
+ (string-append (assoc-ref inputs "coreutils") command))
+ (("/usr(/bin/clear)" _ command)
+ (string-append (assoc-ref inputs "ncurses") command)))
#t)))))
- ;; ncurses provides the `clear' binary
- (inputs `(("ncurses" ,ncurses)))
+ (inputs
+ `(("bash" ,bash)
+ ("coreutils" ,coreutils)
+ ("ncurses" ,ncurses)))
(home-page "http://entrproject.org/")
(synopsis "Run arbitrary commands when files change")
(description
diff --git a/gnu/packages/fcitx.scm b/gnu/packages/fcitx.scm
index 279a9c8186..d52edf1750 100644
--- a/gnu/packages/fcitx.scm
+++ b/gnu/packages/fcitx.scm
@@ -1,6 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2015 Sou Bunnbu <iyzsong@gmail.com>
;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
+;;; Copyright © 2020 Zhu Zihao <all_but_last@163.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -97,14 +98,14 @@ by the different predictive algorithms.")
(define-public fcitx
(package
(name "fcitx")
- (version "4.2.9.7")
+ (version "4.2.9.8")
(source (origin
(method url-fetch)
(uri (string-append "http://download.fcitx-im.org/fcitx/"
"fcitx-" version "_dict.tar.xz"))
(sha256
(base32
- "13vg7yzfq0vj2r8zdf9ly3n243nwwggkhd5qv3z6yqdyj0m3ncyg"))))
+ "1iik80l7g8yk9iwsls6nl9whwgm0sj8i7s6s0bz4c5anl35iaddw"))))
(build-system cmake-build-system)
(outputs '("out" "gtk2" "gtk3"))
(arguments
diff --git a/gnu/packages/file-systems.scm b/gnu/packages/file-systems.scm
index b8612ac3b2..6ceaad4fd1 100644
--- a/gnu/packages/file-systems.scm
+++ b/gnu/packages/file-systems.scm
@@ -5,6 +5,7 @@
;;; Copyright © 2018 Leo Famulari <leo@famulari.name>
;;; Copyright © 2019, 2020 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2020 Raghav Gururajan <raghavgururajan@disroot.org>
+;;; Copyright © 2020 Morgan Smith <Morgan.J.Smith@outlook.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -141,6 +142,46 @@ large and/or frequently changing (network) environment.")
(license (list license:bsd-3 ; modules/cyrus-sasl.c
license:gpl2+)))) ; the rest
+(define-public bindfs
+ (package
+ (name "bindfs")
+ (version "1.14.8")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "https://bindfs.org/downloads/bindfs-"
+ version ".tar.gz"))
+ (sha256
+ (base32
+ "15y4brlcrqhxl6z73785m0dr1vp2q3wc6xss08x9jjr0apzmmjp5"))))
+ (build-system gnu-build-system)
+ (arguments
+ ;; XXX: The tests have no hope of passing until there is a "nogroup"
+ ;; entry (or at least some group to which the guix builder does
+ ;; not belong) in the /etc/group file of the build environment.
+ ;; Currently we do not have such a group. Disable tests for now.
+ '(#:tests? #f))
+ (native-inputs
+ ;; Native inputs to run the tests
+ ;; ("ruby" ,ruby)
+ ;; ("valgrind" ,valgrind)
+ ;; ("which" ,which)
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("fuse" ,fuse)))
+ (home-page "https://bindfs.org")
+ (synopsis "Bind mount a directory and alter permission bits")
+ (description
+ "@command{bindfs} is a FUSE filesystem for mounting a directory to
+another location, similar to @command{mount --bind}. It can be used for:
+@itemize
+@item Making a directory read-only.
+@item Making all executables non-executable.
+@item Sharing a directory with a list of users (or groups).
+@item Modifying permission bits using rules with chmod-like syntax.
+@item Changing the permissions with which files are created.
+@end itemize ")
+ (license license:gpl2+)))
+
(define-public fsarchiver
(package
(name "fsarchiver")
@@ -504,8 +545,8 @@ non-determinism in the build process.")
(lambda _ (invoke "./autogen.sh"))))))
(native-inputs
`(("pkg-config" ,pkg-config)
- ("libtirpc", libtirpc)
- ("rpcsvc-proto", rpcsvc-proto)
+ ("libtirpc" ,libtirpc)
+ ("rpcsvc-proto" ,rpcsvc-proto)
("python-2" ,python-2) ; must be version 2
("flex" ,flex)
("bison" ,bison)
@@ -515,15 +556,15 @@ non-determinism in the build process.")
("cmocka" ,cmocka)))
(inputs
`(("acl" ,acl)
- ("fuse", fuse)
+ ("fuse" ,fuse)
("openssl" ,openssl)
("liburcu" ,liburcu)
("libuuid" ,util-linux "lib")
("libxml2" ,libxml2)
("readline" ,readline)
("zlib" ,zlib)
- ("libaio", libaio)
- ("rdma-core", rdma-core)))
+ ("libaio" ,libaio)
+ ("rdma-core" ,rdma-core)))
(home-page "https://www.gluster.org")
(synopsis "Distributed file system")
(description "GlusterFS is a distributed scalable network file system
@@ -768,7 +809,7 @@ community.")
(define-public mergerfs
(package
(name "mergerfs")
- (version "2.29.0")
+ (version "2.31.0")
(source
(origin
(method url-fetch)
@@ -776,7 +817,7 @@ community.")
version "/mergerfs-" version ".tar.gz"))
(sha256
(base32
- "17gizw4vgbqqjd2ykkfpp276942jb5qclp0lkiwkmq1yjgyjqfmk"))))
+ "0k4asbg5n9dhy5jpjkw6simqqnr1zira2y4i71cq05091dfwm90p"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; No tests exist.
@@ -797,8 +838,9 @@ community.")
;; The Makefile does not allow overriding PREFIX via make variables.
(substitute* '("Makefile" "libfuse/Makefile")
(("= /usr/local") (string-append "= " (assoc-ref outputs "out")))
+ (("= /sbin") "= $(EXEC_PREFIX)/sbin")
;; cannot chown as build user
- (("chown root:root") "true"))
+ (("chown root(:root)?") "true"))
#t)))))
;; mergerfs bundles a heavily modified copy of libfuse.
(inputs `(("util-linux" ,util-linux)))
@@ -813,8 +855,8 @@ is similar to mhddfs, unionfs, and aufs.")
))))
(define-public mergerfs-tools
- (let ((commit "c926779d87458d103f3b674603bf97801ae2486d")
- (revision "1"))
+ (let ((commit "480296ed03d1c3c7909697d7ef96d35840ee26b8")
+ (revision "2"))
(package
(name "mergerfs-tools")
;; No released version exists.
@@ -828,7 +870,7 @@ is similar to mhddfs, unionfs, and aufs.")
(file-name (git-file-name name version))
(sha256
(base32
- "04hhwcib0xv4cf1mkj8zrp2aqpxkncml9iqg4m1mz6a5zhzsk0vm"))))
+ "0xr06gi4xcr832rzy0hkp5c1n231s7w5iq1nkjvx9kvm0dl7chpq"))))
(build-system copy-build-system)
(inputs
`(("python" ,python)
@@ -917,5 +959,5 @@ Dropbox API v2.")
(synopsis "User-space file system for Dropbox")
(description
"@code{dbxfs} allows you to mount your Dropbox folder as if it were a
-local filesystem using FUSE.")
+local file system using FUSE.")
(license license:gpl3+)))
diff --git a/gnu/packages/finance.scm b/gnu/packages/finance.scm
index 111069cb08..182d38c1a9 100644
--- a/gnu/packages/finance.scm
+++ b/gnu/packages/finance.scm
@@ -173,14 +173,14 @@ line client and a client based on Qt.")
(define-public homebank
(package
(name "homebank")
- (version "5.4.2")
+ (version "5.4.3")
(source (origin
(method url-fetch)
(uri (string-append "http://homebank.free.fr/public/homebank-"
version ".tar.gz"))
(sha256
(base32
- "0bkjvd819kw9cwmr3macggbg8yil3yc8v2za8pjrl6g746s89kn6"))))
+ "02wd569viwy6ncy0144z9nxr3zmpl4shkqhz7zzwyky4gknxf8lj"))))
(build-system glib-or-gtk-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)
@@ -480,7 +480,7 @@ other machines/servers. Electrum does not download the Bitcoin blockchain.")
(define-public electron-cash
(package
(name "electron-cash")
- (version "4.1.0")
+ (version "4.1.1")
(source
(origin
(method git-fetch)
@@ -489,14 +489,14 @@ other machines/servers. Electrum does not download the Bitcoin blockchain.")
(commit version)))
(file-name (git-file-name name version))
(sha256
- (base32 "1ccfm6kkmbkvykfdzrisxvr0lx9kgq4l43ixk6v3xnvhnbfwz4s2"))))
+ (base32 "1fllz2s20lg4hrppzmnlgjy9mrq7gaq66l2apb3vz1avzvsjw3gm"))))
(build-system python-build-system)
(inputs
`(("libevent" ,libevent)
- ("libsecp256k1", libsecp256k1-bitcoin-cash)
+ ("libsecp256k1" ,libsecp256k1-bitcoin-cash)
("openssl" ,openssl)
("python-cython" ,python-cython)
- ("python-dateutil", python-dateutil)
+ ("python-dateutil" ,python-dateutil)
("python-dnspython" ,python-dnspython)
("python-ecdsa" ,python-ecdsa)
("python-hidapi" ,python-hidapi)
@@ -555,7 +555,7 @@ other machines/servers. Electroncash does not download the Bitcoin Cash blockch
;; the system's dynamically linked library.
(package
(name "monero")
- (version "0.16.0.3")
+ (version "0.17.1.0")
(source
(origin
(method git-fetch)
@@ -575,7 +575,7 @@ other machines/servers. Electroncash does not download the Bitcoin Cash blockch
"external/unbound"))
#t))
(sha256
- (base32 "1r9x3712vhb24dxxirfiwj5f9x0h4m7x0ngiiavf5983dfdlgz33"))))
+ (base32 "1cngniv7sndy8r0fcfgk737640k53q3kwd36g891p5igcb985qdw"))))
(build-system cmake-build-system)
(native-inputs
`(("doxygen" ,doxygen)
@@ -605,7 +605,6 @@ other machines/servers. Electroncash does not download the Bitcoin Cash blockch
#:configure-flags
(list "-DARCH=default"
"-DBUILD_TESTS=ON"
- "-DBUILD_GUI_DEPS=ON"
(string-append "-DReadline_ROOT_DIR="
(assoc-ref %build-inputs "readline")))
#:phases
@@ -651,17 +650,11 @@ other machines/servers. Electroncash does not download the Bitcoin Cash blockch
(invoke "tests/unit_tests/unit_tests"
(string-append "--gtest_filter=-"
excluded-unit-tests)))))
- (add-after 'install 'install-librandomx
- (lambda* (#:key outputs #:allow-other-keys)
- (let ((lib (string-append (assoc-ref outputs "out") "/lib")))
- (install-file "external/randomx/librandomx.a" lib)
- #t)))
- (add-after 'install 'delete-dead-links
+ (add-after 'install 'delete-unused-files
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
- (delete-file (string-append out "/lib/libprotobuf.so"))
- (delete-file (string-append out "/lib/libusb-1.0.so"))
- #t))))))
+ (delete-file-recursively (string-append out "/include")))
+ #t)))))
(home-page "https://web.getmonero.org/")
(synopsis "Command-line interface to the Monero currency")
(description
@@ -672,7 +665,7 @@ the Monero command line client and daemon.")
(define-public monero-gui
(package
(name "monero-gui")
- (version "0.16.0.3")
+ (version "0.17.1.0")
(source
(origin
(method git-fetch)
@@ -681,21 +674,15 @@ the Monero command line client and daemon.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
- (base32 "0iwjp8x5swy8i8pzrlm5v55awhm54cf48pm1vz98lcq361lhfzk6"))))
+ (base32 "07r78ipv4g3i6z822kq380vi3qwlb958rccsy6lyybkhj9y0rx84"))))
(build-system qt-build-system)
(native-inputs
- `(("monero-source" ,(package-source monero))
- ("pkg-config" ,pkg-config)
- ("qttools" ,qttools)))
+ `(,@(package-native-inputs monero)
+ ("monero-source" ,(package-source monero))))
(inputs
- `(("boost" ,boost)
- ("hidapi" ,hidapi)
+ `(,@(package-inputs monero)
("libgcrypt" ,libgcrypt)
- ("libsodium" ,libsodium)
- ("libunwind" ,libunwind)
- ("libusb" ,libusb)
- ("openssl" ,openssl)
- ("protobuf" ,protobuf)
+ ("monero" ,monero)
("qtbase" ,qtbase)
("qtdeclarative" ,qtdeclarative)
("qtgraphicaleffects" ,qtgraphicaleffects)
@@ -704,78 +691,54 @@ the Monero command line client and daemon.")
("qtquickcontrols" ,qtquickcontrols)
("qtquickcontrols2",qtquickcontrols2)
("qtsvg" ,qtsvg)
- ("qtxmlpatterns" ,qtxmlpatterns)
- ("unbound" ,unbound)))
- (propagated-inputs
- `(("monero" ,monero)))
+ ("qtxmlpatterns" ,qtxmlpatterns)))
(arguments
`(#:tests? #f ; No tests
+ #:configure-flags
+ (list "-DARCH=default"
+ "-DENABLE_PASS_STRENGTH_METER=ON"
+ (string-append "-DReadline_ROOT_DIR="
+ (assoc-ref %build-inputs "readline"))
+ "-DCMAKE_BUILD_TYPE=Release")
#:phases
(modify-phases %standard-phases
- (add-after 'unpack 'get-monero-extra-files
- ;; Some headers and GnuPG public keys of the monero package source
- ;; code are required to build the GUI.
+ (add-after 'unpack 'extract-monero-sources
+ ;; Some of the monero package source code is required
+ ;; to build the GUI.
(lambda* (#:key inputs #:allow-other-keys)
- (invoke "tar" "-xv" "--wildcards" "--strip-components=1"
+ (invoke "tar" "-xv" "--strip-components=1"
"-C" "monero"
- "-f" (assoc-ref inputs "monero-source")
- "*.asc" "*.h")
+ "-f" (assoc-ref inputs "monero-source"))
#t))
- (add-after 'get-monero-extra-files 'fix-makefile-vars
+ (add-after 'extract-monero-sources 'fix-build
(lambda _
+ (substitute* "monero/src/version.cpp.in"
+ (("@VERSION_IS_RELEASE@")
+ "false"))
+ (substitute* "src/version.js.in"
+ (("@VERSION_TAG_GUI@")
+ ,version))
(substitute* "src/zxcvbn-c/makefile"
(("\\?=") "="))
#t))
- (add-after 'fix-makefile-vars 'fix-paths
- (lambda* (#:key inputs outputs #:allow-other-keys)
- (let ((boost (assoc-ref inputs "boost"))
- (monero (assoc-ref inputs "monero"))
- (openssl (assoc-ref inputs "openssl"))
- (qttools (assoc-ref inputs "qttools"))
- (out (assoc-ref outputs "out")))
- (substitute* "monero-wallet-gui.pro"
- (("-L/usr/local/lib")
- "")
- (("-L/usr/local/opt/openssl/lib")
- (string-append "-L" openssl "/lib"))
- (("-L/usr/local/opt/boost/lib")
- (string-append "-L" boost "/lib"))
- (("\\$\\$\\[QT_INSTALL_BINS\\]/lrelease")
- (string-append qttools "/bin/lrelease"))
- (("\\$\\$\\[QT_INSTALL_BINS\\]/lupdate")
- (string-append qttools "/bin/lupdate")))
- (substitute* "deployment.pri"
- (("/opt/\\$\\$\\{TARGET\\}/bin")
- (string-append out "/bin")))
- (substitute* "src/daemon/DaemonManager.cpp"
- (("QApplication::applicationDirPath\\(\\) \\+ \"/monerod")
- (string-append "\"" monero "/bin/monerod")))
- #t)))
- (add-after 'fix-paths 'make-qt-deterministic
- (lambda _
- (setenv "QT_RCC_SOURCE_DATE_OVERRIDE" "1")
- #t))
- (add-after 'make-qt-deterministic 'fix-version
+ (add-before 'configure 'generate-zxcvbn-c-header
(lambda _
- (substitute* "build.sh"
- (("echo .*> version.js")
- ""))
- (with-output-to-file "version.js"
- (lambda _
- (format #t
- "var GUI_VERSION = \"~a\"~@
- var GUI_MONERO_VERSION = \"~a\"~%"
- ,version
- ,(package-version monero))))
+ (invoke "make" "-C" "src/zxcvbn-c" "dict-src.h")))
+ (replace 'install
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let ((bin (string-append (assoc-ref outputs "out") "/bin")))
+ (mkdir-p bin)
+ (install-file "../build/bin/monero-wallet-gui" bin))
#t))
- (replace 'configure
- (lambda _
- (mkdir-p "build")
- (chdir "build")
- (invoke "qmake" "../monero-wallet-gui.pro" "CONFIG+=release")))
- (add-before 'build 'build-zxcvbn-c
- (lambda _
- (invoke "make" "-C" "../src/zxcvbn-c"))))))
+ (add-after 'qt-wrap 'install-monerod-link
+ ;; The monerod program must be available so that monero-wallet-gui
+ ;; can start a Monero daemon if necessary.
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (symlink (string-append (assoc-ref inputs "monero")
+ "/bin/monerod")
+ (string-append (assoc-ref outputs "out")
+ "/bin/monerod"))
+ #t)))))
(home-page "https://web.getmonero.org/")
(synopsis "Graphical user interface for the Monero currency")
(description
@@ -1061,7 +1024,7 @@ amongst which a great number of VAT and other tax numbers,
personal identity and company identification codes,
international standard numbers (ISBN, IBAN, EAN, etc.)
and various other formats.
-The module also inclused implementations of the Verhoeff,
+The module also includes implementations of the Verhoeff,
Luhn and family of ISO/IEC 7064 check digit algorithms. ")
(license license:lgpl2.1+)))
@@ -1071,26 +1034,18 @@ Luhn and family of ISO/IEC 7064 check digit algorithms. ")
(define-public python-duniterpy
(package
(name "python-duniterpy")
- (version "0.57.0")
+ (version "0.60.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "duniterpy" version))
(sha256
- (base32 "0rw2c7r9gcqhymp82gbk1ky45zqbypsi2q5x4vdwjc6g00kh7h6l"))))
+ (base32 "0djn6ykmqbp8l2xbg6z8r7rkz9ijgygp2pr0gc6i7dsrlsqmjh32"))))
(build-system python-build-system)
(arguments
- ;; FIXME: Tests fail with: "ModuleNotFoundError: No module named
- ;; 'tests'". Not sure how to handle this.
- `(#:tests? #f
- #:phases
- (modify-phases %standard-phases
- ;; "setup.py" tries to open missing "requirements.txt".
- (add-after 'unpack 'ignore-missing-file
- (lambda _
- (substitute* "setup.py"
- (("open\\('requirements\\.txt'\\)") "[]"))
- #t)))))
+ ;; FIXME: Tests fail with: "TypeError: block_uid() missing 1 required
+ ;; positional argument: 'value'".
+ `(#:tests? #f))
(propagated-inputs
`(("aiohttp" ,python-aiohttp)
("attrs" ,python-attrs)
@@ -1399,7 +1354,7 @@ entity management.")
(define-public bitcoin-unlimited
(package
(name "bitcoin-unlimited")
- (version "1.9.0.0")
+ (version "1.9.0.1")
(source
(origin
(method git-fetch)
@@ -1408,7 +1363,7 @@ entity management.")
(commit (string-append "BCHunlimited" version))))
(file-name (git-file-name name version))
(sha256
- (base32 "1a64h7mcqdra4ahnw1nycp4ysx308ymgbl4yn5fj5jfaszdzvy0h"))))
+ (base32 "1pan24g3d5csa004d7zvlizj4mv58ly5i579341isp944phl3g5v"))))
(build-system gnu-build-system)
(native-inputs
`(("autoconf" ,autoconf)
@@ -1443,32 +1398,20 @@ entity management.")
"/bin/lrelease")
(string-append "ac_cv_path_LUPDATE="
(assoc-ref %build-inputs "qttools")
- "/bin/lupdate"))
+ "/bin/lupdate")
+ "--disable-static")
#:phases
(modify-phases %standard-phases
- (add-after 'unpack 'fix-build
- (lambda _
- ;; The 'stack' header was not included in unlimited.cpp, which
- ;; caused the build to fail.
- (substitute* "src/unlimited.cpp"
- (("#include <queue>" all)
- (string-append all "\n#include <stack>")))
- #t))
(add-after 'unpack 'fix-tests
(lambda _
- ;; TODO: Find why txvalidationcache_tests fails and
- ;; utilprocess_tests never ends. Disable for now.
+ ;; Disable utilprocess_tests because it never ends.
+ ;; It looks like it tries to start /bin/sleep and waits until it
+ ;; is in the list of running processes, but /bin/sleep doesn't
+ ;; exist.
(substitute* "src/Makefile.test.include"
- (("test/txvalidationcache_tests.cpp")
- "")
(("test/utilprocess_tests.cpp")
""))
#t))
- (add-before 'configure 'make-qt-deterministic
- (lambda _
- ;; Make Qt deterministic.
- (setenv "QT_RCC_SOURCE_DATE_OVERRIDE" "1")
- #t))
(add-before 'check 'set-home
(lambda _
(setenv "HOME" (getenv "TMPDIR")) ; tests write to $HOME
diff --git a/gnu/packages/fonts.scm b/gnu/packages/fonts.scm
index c7ce03b2b7..f39c529beb 100644
--- a/gnu/packages/fonts.scm
+++ b/gnu/packages/fonts.scm
@@ -23,7 +23,7 @@
;;; Copyright © 2017 Mohammed Sadiq <sadiq@sadiqpk.org>
;;; Copyright © 2018 Charlie Ritter <chewzerita@posteo.net>
;;; Copyright © 2018 Gabriel Hondet <gabrielhondet@gmail.com>
-;;; Copyright © 2019 Jens Mølgaard <jens@zete.tk>
+;;; Copyright © 2019, 2020 Jens Mølgaard <jens@zete.tk>
;;; Copyright © 2019 Nicolas Goaziou <mail@nicolasgoaziou.fr>
;;; Copyright © 2019 Baptiste Strazzulla <bstrazzull@hotmail.fr>
;;; Copyright © 2019 Alva <alva@skogen.is>
@@ -951,19 +951,16 @@ designed to work well in user interface environments.")
(define-public font-adobe-source-sans-pro
(package
(name "font-adobe-source-sans-pro")
- (version "2.040R-ro-1.090R-it")
+ (version "3.028R")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/adobe-fonts/source-sans-pro")
- (commit (regexp-substitute/global
- ;; The upstream tag uses "/" between the roman and italic
- ;; versions, so substitute our "-" separator here.
- #f "R-ro-" version 'pre "R-ro/" 'post))))
+ (commit version)))
(file-name (git-file-name name version))
(sha256
- (base32 "1lzin2hfwidbvhps7shs201p1bpxy6220xmhhprv9fc8bknd4c45"))))
+ (base32 "0lgjqi4d5p1q1z00ad807v5qy4z54gmp7jpdaypc0rxk8czv6zq7"))))
(build-system font-build-system)
(home-page "https://github.com/adobe-fonts/source-sans-pro")
(synopsis
@@ -976,19 +973,16 @@ work well in user interface (UI) environments.")
(define-public font-adobe-source-serif-pro
(package
(name "font-adobe-source-serif-pro")
- (version "2.007R-ro-1.007R-it")
+ (version "3.001R")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/adobe-fonts/source-serif-pro")
- (commit (regexp-substitute/global
- ;; The upstream tag uses "/" between the roman and italic
- ;; versions, so substitute our "-" separator here.
- #f "R-ro-" version 'pre "R-ro/" 'post))))
+ (commit version)))
(file-name (git-file-name name version))
(sha256
- (base32 "1vvzfhjpi47m84bzkapylkd5fri8bdm8qng2hiylmmlw0wk4gpas"))))
+ (base32 "1z0pjvx0jpjwb8vzvc6l5gzlg0mqax4v9pizqcxx82l0ydlfh5bj"))))
(build-system font-build-system)
(home-page "https://github.com/adobe-fonts/source-serif-pro")
(synopsis
@@ -1154,14 +1148,14 @@ later hand-tweaked with the gbdfed(1) editor:
(define-public font-comic-neue
(package
(name "font-comic-neue")
- (version "2.5")
+ (version "2.51")
(source (origin
(method url-fetch/zipbomb)
(uri (string-append
"http://www.comicneue.com/comic-neue-" version ".zip"))
(sha256
(base32
- "1ng0m0zs7qr91qy5ff0l01l27npr76961c6zfkxnhxf68zpwz5k4"))))
+ "0883542v915crz98v1ij6smgy40dg6gxwsid3j5nbmmqjf69kpal"))))
(build-system font-build-system)
(arguments
`(#:phases
@@ -1742,7 +1736,7 @@ This package provides the TrueType fonts.")
(define-public font-jetbrains-mono
(package
(name "font-jetbrains-mono")
- (version "2.001")
+ (version "2.002")
(source
(origin
(method url-fetch)
@@ -1750,17 +1744,16 @@ This package provides the TrueType fonts.")
(string-append "https://download.jetbrains.com/fonts/"
"JetBrainsMono-" version ".zip"))
(sha256
- (base32 "0r3dk3kn536rik4mvpcjin9mwmifl3v8mawvb4a5l59pww0vcxzq"))))
+ (base32 "0lcsl718jhkqgld1xqll7fsv8j968jlf292541fkqxwm8i5g93sn"))))
(build-system font-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
- (replace 'install-license-files
- (lambda* (#:key outputs #:allow-other-keys)
- (let* ((out (assoc-ref outputs "out"))
- (doc (string-append out "/share/doc/" ,name "-" ,version)))
- (install-file "../LICENSE" doc)
- #t))))))
+ (add-before 'install-license-files 'change-directory-to-archive-root
+ ;; Find the LICENSE file outside of the default subdirectory.
+ (lambda _
+ (chdir "..")
+ #t)))))
(home-page "https://www.jetbrains.com/lp/mono/")
(synopsis "Mono typeface for developers")
(description
diff --git a/gnu/packages/fontutils.scm b/gnu/packages/fontutils.scm
index f6c8dc51f4..f55d43db3a 100644
--- a/gnu/packages/fontutils.scm
+++ b/gnu/packages/fontutils.scm
@@ -303,7 +303,7 @@ work with most software requiring Type 1 fonts.")
(inputs
`(("brotli" ,google-brotli)))
(synopsis "Libraries and tools for WOFF2 font format")
- (description "WOFF2 provides libraires and tools to handle the Web Open
+ (description "WOFF2 provides libraries and tools to handle the Web Open
Font Format (WOFF).")
(home-page "https://w3c.github.io/woff/woff2/")
(license license:expat)))
@@ -556,6 +556,7 @@ using the above tables.")
(package
(name "libspiro")
(version "20190731")
+ (replacement libspiro-20200505)
(source
(origin
(method url-fetch)
@@ -574,6 +575,19 @@ smooth contours with constant curvature at the spline joins.")
(license license:gpl2+)
(home-page "http://libspiro.sourceforge.net/")))
+(define libspiro-20200505
+ (package
+ (inherit libspiro)
+ (version "20200505")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "https://github.com/fontforge/libspiro/releases"
+ "/download/" version "/libspiro-dist-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0j8fmyj4wz6mqk17dqs6f8jx0i52n68gv5px17qbrjnbilg9mih6"))))))
+
(define-public libuninameslist
(package
(name "libuninameslist")
diff --git a/gnu/packages/fpga.scm b/gnu/packages/fpga.scm
index f07c7260f7..c43b0059dc 100644
--- a/gnu/packages/fpga.scm
+++ b/gnu/packages/fpga.scm
@@ -340,7 +340,7 @@ FOSS FPGA place and route tool.")
(define-public gtkwave
(package
(name "gtkwave")
- (version "3.3.106")
+ (version "3.3.107")
(source
(origin
(method url-fetch)
@@ -350,7 +350,7 @@ FOSS FPGA place and route tool.")
(string-append "http://gtkwave.sourceforge.net/"
"gtkwave-" version ".tar.gz")))
(sha256
- (base32 "1pyij6dlmapjyzrmn255fkf8gyhz8i4vaipd75a68i2bnq021nn8"))))
+ (base32 "1ibnhn7w1awalsbndbb5nilbmih3i3dwfry95mq5sn221l5n7zj8"))))
(build-system gnu-build-system)
(native-inputs
`(("gperf" ,gperf)
diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm
index 481cb3cd1d..5519f04b11 100644
--- a/gnu/packages/freedesktop.scm
+++ b/gnu/packages/freedesktop.scm
@@ -286,14 +286,14 @@ freedesktop.org project.")
;; Updating this will rebuild over 700 packages through libinput-minimal.
(package
(name "libinput")
- (version "1.15.5")
+ (version "1.16.2")
(source (origin
(method url-fetch)
(uri (string-append "https://freedesktop.org/software/libinput/"
"libinput-" version ".tar.xz"))
(sha256
(base32
- "15ww4jl3lcxyi8m8idg8canklbqv729gnwpkz7r98c1w8a7zq3m9"))))
+ "1ab0q4iya07kvjd2g1vzamj9h57qldi15h3b8324vg3szr88qggw"))))
(build-system meson-build-system)
(arguments
`(#:configure-flags '("-Ddocumentation=false")
@@ -372,7 +372,7 @@ the freedesktop.org XDG Base Directory specification.")
(define-public elogind
(package
(name "elogind")
- (version "243.4")
+ (version "243.7")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -381,7 +381,7 @@ the freedesktop.org XDG Base Directory specification.")
(file-name (git-file-name name version))
(sha256
(base32
- "141frvgyk4fafcxsix94qc0d9ffrwksld8lqq4hq6xsgjlvv0mrs"))))
+ "1ccj3cbs9nsfg497wg195in1a7b9csm1jdm7z6q7vvx1ynpjxlxz"))))
(build-system meson-build-system)
(arguments
`(#:configure-flags
@@ -420,14 +420,6 @@ the freedesktop.org XDG Base Directory specification.")
(("join_paths\\(bindir, 'pkttyagent'\\)")
"'\"/run/current-system/profile/bin/pkttyagent\"'"))
#t))
- (add-after 'unpack 'adjust-dbus-socket-address
- (lambda _
- ;; Look for the D-Bus socket in /var/run instead of /run. Remove
- ;; this for versions > 243.4.
- (substitute* "src/libelogind/sd-bus/bus-internal.h"
- (("=/run/dbus/system_bus_socket")
- "=/var/run/dbus/system_bus_socket"))
- #t))
(add-after 'unpack 'adjust-tests
(lambda _
;; This test tries to copy some bytes from /usr/lib/os-release,
@@ -738,14 +730,14 @@ Python.")
(define-public wayland
(package
(name "wayland")
- (version "1.17.0")
+ (version "1.18.0")
(source (origin
(method url-fetch)
(uri (string-append "https://wayland.freedesktop.org/releases/"
name "-" version ".tar.xz"))
(sha256
(base32
- "194ibzwpdcn6fvk4xngr4bf5axpciwg2bj82fdvz88kfmjw13akj"))))
+ "0k995rn96xkplrapz5k648j651wc43kq817xk1x8280h16gsfxa6"))))
(build-system gnu-build-system)
(arguments
`(#:parallel-tests? #f))
@@ -774,7 +766,7 @@ applications, X servers (rootless or fullscreen) or other display servers.")
(define-public wayland-protocols
(package
(name "wayland-protocols")
- (version "1.18")
+ (version "1.20")
(source (origin
(method url-fetch)
(uri (string-append
@@ -782,7 +774,7 @@ applications, X servers (rootless or fullscreen) or other display servers.")
"wayland-protocols-" version ".tar.xz"))
(sha256
(base32
- "1cvl93h83ymbfhb567jv5gzyq08181w7c46rsw4xqqqpcvkvfwrx"))))
+ "1rsdgvkkvxs3cjhpl6agvbkm53vm7k8rg127j9y2vn33m2hvg0lp"))))
(build-system gnu-build-system)
(inputs
`(("wayland" ,wayland)))
@@ -796,7 +788,7 @@ applications, X servers (rootless or fullscreen) or other display servers.")
(define-public waylandpp
(package
(name "waylandpp")
- (version "0.2.7")
+ (version "0.2.8")
(home-page "https://github.com/NilsBrause/waylandpp")
(source (origin
(method git-fetch)
@@ -804,10 +796,10 @@ applications, X servers (rootless or fullscreen) or other display servers.")
(file-name (git-file-name name version))
(sha256
(base32
- "1r4m0xhvwpcqxrqvp3hz1bzlkxqj2jiymd5r6hj8xjzz536hyprz"))))
+ "1kxiqab48p0n97pwg8c2zx56wqq32m3rcq7qd2pjj33ipcanb3qq"))))
(build-system cmake-build-system)
(arguments
- `(#:tests? #f)) ;no tests
+ `(#:tests? #f)) ; no tests
(native-inputs
`(("pkg-config" ,pkg-config)))
(inputs
@@ -909,41 +901,39 @@ multiplexer to the KMS/DRM Linux kernel devices.")
(license license:expat)))
(define-public wev
- ;; There simple tool has no version or release yet.
- (let ((commit "cee3dfb2a8b40ee303611018c68ae182d84a7f46"))
- (package
- (name "wev")
- (version (string-append "2020-02-06-" (string-take commit 8)))
- (source (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://git.sr.ht/~sircmpwn/wev")
- (commit commit)))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "0l71v3fzgiiv6xkk365q1l08qvaymxd4kpaya6r2g8yzkr7i2hms"))))
- (build-system gnu-build-system)
- (arguments
- `(#:tests? #f ; no tests
- #:make-flags
- (list "CC=gcc" (string-append "PREFIX=" (assoc-ref %outputs "out")))
- #:phases
- (modify-phases %standard-phases
- (delete 'configure))))
- (native-inputs
- `(("pkg-config" ,pkg-config)
- ("scdoc" ,scdoc)))
- (inputs
- `(("libxkbcommon" ,libxkbcommon)
- ("wayland" ,wayland)
- ("wayland-protocols" ,wayland-protocols)))
- (home-page "https://git.sr.ht/~sircmpwn/wev")
- (synopsis "Wayland event viewer")
- (description "Wev is a tool that opens a window, printing all events
+ (package
+ (name "wev")
+ (version "1.0.0")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://git.sr.ht/~sircmpwn/wev")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0l71v3fzgiiv6xkk365q1l08qvaymxd4kpaya6r2g8yzkr7i2hms"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:tests? #f ; no tests
+ #:make-flags
+ (list "CC=gcc" (string-append "PREFIX=" (assoc-ref %outputs "out")))
+ #:phases
+ (modify-phases %standard-phases
+ (delete 'configure))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)
+ ("scdoc" ,scdoc)))
+ (inputs
+ `(("libxkbcommon" ,libxkbcommon)
+ ("wayland" ,wayland)
+ ("wayland-protocols" ,wayland-protocols)))
+ (home-page "https://git.sr.ht/~sircmpwn/wev")
+ (synopsis "Wayland event viewer")
+ (description "Wev is a tool that opens a window, printing all events
sent to a Wayland window, such as key presses. It is analogous to the X11 tool
XEv.")
- (license license:expat))))
+ (license license:expat)))
(define-public exempi
(package
@@ -1398,7 +1388,7 @@ wish to perform colour calibration.")
(define-public libfprint
(package
(name "libfprint")
- (version "1.90.1")
+ (version "1.90.3")
(source
(origin
(method git-fetch)
@@ -1407,7 +1397,7 @@ wish to perform colour calibration.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
- (base32 "0fdaak7qjr9b4482g7fhhqpyfdqpxq5kpmyzkp7f5i7qq2ynb78a"))))
+ (base32 "1fs0qrfrqnvc6kcsg81l5p89n8jnsx9dr1pzxpb8ghwas8c9v52i"))))
(build-system meson-build-system)
(arguments
'(#:configure-flags
diff --git a/gnu/packages/ftp.scm b/gnu/packages/ftp.scm
index 651e732ab3..b178063556 100644
--- a/gnu/packages/ftp.scm
+++ b/gnu/packages/ftp.scm
@@ -170,20 +170,25 @@ as required.")
(define-public libfilezilla
(package
(name "libfilezilla")
- (version "0.16.0")
+ (version "0.24.1")
(source
(origin
(method url-fetch)
(uri (string-append "https://download.filezilla-project.org/"
"libfilezilla/libfilezilla-" version ".tar.bz2"))
(sha256
- (base32 "1fd71vmllzvljff5l5ka5wnzbdsxx4i54dpxpklydmbsqpilnv1v"))))
+ (base32 "1zfnqbn14dx0fl45mfaznr5n5xsxy1kx8z9f80fppbqn37pb9mgx"))))
(build-system gnu-build-system)
+ (arguments
+ `(#:configure-flags
+ (list "--disable-static")))
(native-inputs
`(("cppunit" ,cppunit)
+ ("gettext" ,gettext-minimal)
("pkg-config" ,pkg-config)))
(inputs
- `(("nettle" ,nettle)))
+ `(("gnutls" ,gnutls)
+ ("nettle" ,nettle)))
(home-page "https://lib.filezilla-project.org")
(synopsis "Cross-platform C++ library used by Filezilla client")
(description
@@ -208,20 +213,21 @@ output.
(define-public filezilla
(package
(name "filezilla")
- (version "3.42.1")
+ (version "3.50.0")
(source
(origin
(method url-fetch)
(uri (string-append "https://download.filezilla-project.org/client/"
"FileZilla_" version "_src.tar.bz2"))
(sha256
- (base32 "083ycsycwy1szhp3mzf998wsqa74hmdxdsy07x6k81vp2cxjxijg"))))
+ (base32 "042w2f5cf8g9cr7d3m6294ygx7jggcria9502jnql855khk8gnz0"))))
(build-system gnu-build-system)
(arguments
;; Don't let filezilla phone home to check for updates.
'(#:configure-flags '("--disable-autoupdatecheck")))
(native-inputs
- `(("gettext" ,gettext-minimal)
+ `(("cppunit" ,cppunit)
+ ("gettext" ,gettext-minimal)
("pkg-config" ,pkg-config)
("xdg-utils" ,xdg-utils)))
(inputs
diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm
index c8e0e94099..96ed2f9da4 100644
--- a/gnu/packages/game-development.scm
+++ b/gnu/packages/game-development.scm
@@ -317,14 +317,13 @@ provide connectivity for client applications written in any language.")
(define-public nml
(package
(name "nml")
- (version "0.5.2")
+ (version "0.5.3")
(source
(origin
(method url-fetch)
(uri (pypi-uri "nml" version))
(sha256
- (base32
- "1lwf5sc5qqzrkxfx5wkkj3yh2j2nzh5r599ly5psy8yw92km24hy"))))
+ (base32 "0l5pfs8q7jrl3xscqq7pnwh5h5d17fsyjy7xspkc73sa0ayjm9jx"))))
(build-system python-build-system)
;; TODO: Fix test that fails with
;; "AttributeError: partially initialized module 'nml.nmlop' has no
@@ -486,6 +485,35 @@ clone.")
;; under BSD-2.
(license license:gpl2+)))
+(define-public tsukundere
+ (package
+ (name "tsukundere")
+ (version "0.2.0")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://gitlab.com/leoprikler/tsukundere")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0qmqch8hh7vsa8qaz853vwbkz0krb106955dnz8dsl7skbm5jpn6"))))
+ (build-system gnu-build-system)
+ (native-inputs
+ `(("autoconf" ,autoconf-wrapper)
+ ("automake" ,automake)
+ ("guile" ,guile-3.0)
+ ("pkg-config" ,pkg-config)))
+ (propagated-inputs
+ `(("guile-sdl2" ,guile3.0-sdl2)))
+ (home-page "https://gitlab.com/leoprikler/tsukundere")
+ (synopsis "Visual novel engine")
+ (description "Tsukundere is a game engine geared heavily towards the
+development of visual novels, written on top of Guile-SDL2. It is still
+experimental and at the time of writing contains little more than the Guile
+modules, that make up its runtime.")
+ (license license:lgpl3+)))
+
(define-public sfml
(package
(name "sfml")
@@ -581,7 +609,7 @@ sounds from presets such as \"explosion\" or \"powerup\".")
(define-public surgescript
(package
(name "surgescript")
- (version "0.5.4.3")
+ (version "0.5.4.4")
(source
(origin
(method git-fetch)
@@ -590,7 +618,7 @@ sounds from presets such as \"explosion\" or \"powerup\".")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
- (base32 "13q81439zg1bn7gskligskjgcfq0rdapp6f3llmrlk48vnyq49s0"))))
+ (base32 "1vck1wk6r6jrrw5xzpqldplz601dfgpk5s5p45fam00nfsid0p7p"))))
(build-system cmake-build-system)
(arguments
'(#:configure-flags
@@ -1528,7 +1556,7 @@ games.")
(define-public godot
(package
(name "godot")
- (version "3.2.2")
+ (version "3.2.3")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -1537,7 +1565,7 @@ games.")
(file-name (git-file-name name version))
(sha256
(base32
- "1libz83mbyrkbbsmmi8z2rydv3ls0w9r4vb5v6diqqwn7ka8z804"))
+ "19vrp5lhyvxbm6wjxzn28sn3i0s8j08ca7nani8l1nrhvlc8wi0v"))
(modules '((guix build utils)
(ice-9 ftw)
(srfi srfi-1)))
diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
index f6819873df..af13dc3c5a 100644
--- a/gnu/packages/games.scm
+++ b/gnu/packages/games.scm
@@ -429,7 +429,9 @@ physics settings to tweak as well.")
(build-system cmake-build-system)
(arguments
`(#:tests? #f ;no test
- #:configure-flags '("-DDATADIR=share/astromenace")
+ #:configure-flags (list (string-append "-DDATADIR="
+ (assoc-ref %outputs "out")
+ "/share/astromenace"))
#:phases
(modify-phases %standard-phases
(replace 'install
@@ -1811,58 +1813,63 @@ Every puzzle has a complete solution, although there may be more than one.")
(license license:gpl2+)))
(define-public retux
- (package
- (name "retux")
- (version "1.4")
- (source (origin
- (method url-fetch)
- (uri (string-append "https://github.com/retux-game/retux/"
- "releases/download/v"
- (version-major+minor version) "/retux-"
- version "-src.tar.gz"))
- (sha256
- (base32
- "1hxy1pvlxhk0ci3wh2i3mmr82faqdjnnxsiwwr5gcr93nfnw9w5f"))))
- (build-system python-build-system)
- (arguments
- `(#:tests? #f ; no check target
- #:phases
- (modify-phases %standard-phases
- ;; no setup.py script
- (delete 'build)
- (replace 'install
- (lambda* (#:key outputs #:allow-other-keys)
- (let* ((out (assoc-ref outputs "out"))
- (bin (string-append out "/bin"))
- (data (string-append out "/share/retux")))
- (mkdir-p bin)
+ (let ((release "1.4.1")
+ (revision 1))
+ (package
+ (name "retux")
+ (version (if (zero? revision)
+ release
+ (string-append release "-"
+ (number->string revision))))
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "https://github.com/retux-game/retux/"
+ "releases/download/v"
+ version "/retux-"
+ release "-src.tar.gz"))
+ (sha256
+ (base32
+ "1vrldg2qh2gqfswj7vkpc589ldrrjd903j6cnfdik9zh0jhlq4h2"))))
+ (build-system python-build-system)
+ (arguments
+ `(#:tests? #f ; no check target
+ #:phases
+ (modify-phases %standard-phases
+ ;; no setup.py script
+ (delete 'build)
+ (replace 'install
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (bin (string-append out "/bin"))
+ (data (string-append out "/share/retux")))
+ (mkdir-p bin)
- (substitute* "retux.py"
- ;; Use the correct data directory.
- (("os\\.path\\.join\\(os\\.path\\.dirname\\(__file__\\), \"data\"\\),")
- (string-append "\"" data "\",")))
+ (substitute* "retux.py"
+ ;; Use the correct data directory.
+ (("os\\.path\\.join\\(os\\.path\\.dirname\\(__file__\\), \"data\"\\),")
+ (string-append "\"" data "\",")))
- (copy-file "retux.py" (string-append bin "/retux"))
- (copy-recursively "data" data)
- #t))))))
- (inputs
- `(("python-sge-pygame" ,python-sge-pygame)
- ("python-six" ,python-six)
- ("python-xsge" ,python-xsge)))
- (home-page "https://retux-game.github.io/")
- (synopsis "Action platformer game")
- (description
- "ReTux is an action platformer loosely inspired by the Mario games,
+ (copy-file "retux.py" (string-append bin "/retux"))
+ (copy-recursively "data" data)
+ #t))))))
+ (inputs
+ `(("python-sge-pygame" ,python-sge-pygame)
+ ("python-six" ,python-six)
+ ("python-xsge" ,python-xsge)))
+ (home-page "https://retux-game.github.io/")
+ (synopsis "Action platformer game")
+ (description
+ "ReTux is an action platformer loosely inspired by the Mario games,
utilizing the art assets from the @code{SuperTux} project.")
- ;; GPL version 3 or later is the license for the code and some art.
- ;; The rest of the licenses are for the art exclusively, as listed in
- ;; data/LICENSES.
- (license (list license:cc0
- license:cc-by3.0
- license:cc-by-sa3.0
- license:cc-by-sa4.0
- license:gpl2+
- license:gpl3+))))
+ ;; GPL version 3 or later is the license for the code and some art.
+ ;; The rest of the licenses are for the art exclusively, as listed in
+ ;; data/LICENSES.
+ (license (list license:cc0
+ license:cc-by3.0
+ license:cc-by-sa3.0
+ license:cc-by-sa4.0
+ license:gpl2+
+ license:gpl3+)))))
(define-public roguebox-adventures
(package
@@ -2721,7 +2728,7 @@ interface or via an external visual interface such as GNU XBoard.")
(ftp-directory . "/chess")))
(license license:gpl3+)))
-(define freedink-engine
+(define-public freedink-engine
(package
(name "freedink-engine")
(version "109.6")
@@ -2751,7 +2758,16 @@ interface or via an external visual interface such as GNU XBoard.")
(invoke "autoreconf")
;; Build fails when autom4te.cache exists.
(delete-file-recursively "autom4te.cache")
- #t)))))
+ #t))
+ (add-after 'install 'delete-freedinkedit-desktop
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let ((out (assoc-ref outputs "out")))
+ ;; freedinkedit does not know where to find freedink data
+ ;; freedink data is read-only, so it cannot be edited anyway.
+ ;; TODO: fix freedink.desktop
+ (delete-file-recursively (string-append
+ out "/share/applications"))
+ #t))))))
(native-inputs `(("autoconf" ,autoconf)
("automake" ,automake)
("cxxtest" ,cxxtest)
@@ -2773,7 +2789,7 @@ game data files but it also supports user-produced game mods or \"D-Mods\".
To that extent, it also includes a front-end for managing all of your D-Mods.")
(license license:gpl3+)))
-(define freedink-data
+(define-public freedink-data
(package
(name "freedink-data")
(version "1.08.20190120")
@@ -3459,15 +3475,15 @@ This game is based on the GPL version of the famous game TuxRacer.")
(define-public supertuxkart
(package
(name "supertuxkart")
- (version "1.1")
+ (version "1.2")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/supertuxkart/SuperTuxKart/"
- version "/supertuxkart-" version "-src.tar.xz"))
+ version "/SuperTuxKart-" version "-src.tar.xz"))
(sha256
(base32
- "1s0ai07g3sswck9mr0142989mrgzzq1njc1qxk5als5b245jpc79"))
+ "0dvx56hmy6wdhl7m9dw8zc1n3jqfp05gnxl6zs1rbfdyzl5dybh5"))
(modules '((guix build utils)))
(snippet
;; Delete bundled library sources
@@ -3475,12 +3491,9 @@ This game is based on the GPL version of the famous game TuxRacer.")
;; Supertuxkart uses modified versions of the Irrlicht engine
;; and the bullet library. The developers gave an explanation
;; here: http://forum.freegamedev.net/viewtopic.php?f=17&t=3906
- ;; FIXME: try to unbundle angelscript and libraqm
+ ;; FIXME: try to unbundle angelscript, libmcpp and libraqm
(for-each delete-file-recursively
- '("lib/zlib"
- "lib/libpng"
- "lib/jpeglib"
- "lib/glew"
+ '("lib/glew"
"lib/wiiuse"
"lib/enet"))
#t))))
@@ -3489,34 +3502,31 @@ This game is based on the GPL version of the famous game TuxRacer.")
`(#:tests? #f ; no check target
#:configure-flags
(list "-DUSE_WIIUSE=0"
- ;; Do not use the bundled zlib, glew and enet.
- "-DNO_IRR_COMPILE_WITH_ZLIB_=TRUE"
"-DUSE_SYSTEM_GLEW=TRUE"
"-DUSE_SYSTEM_ENET=TRUE"
;; In order to use the system ENet library, IPv6 support (added in
;; SuperTuxKart version 1.1) must be disabled.
"-DUSE_IPV6=FALSE"
;; FIXME: needs libopenglrecorder
- "-DBUILD_RECORDER=0"
- ;; Irrlicht returns an integer instead of a boolean
- "-DCMAKE_C_FLAGS=-fpermissive")))
+ "-DBUILD_RECORDER=0")))
(inputs
- `(("glew" ,glew)
- ("zlib" ,zlib)
- ("openal" ,openal)
- ("libvorbis" ,libvorbis)
+ `(("curl" ,curl)
("freetype" ,freetype)
("fribidi" ,fribidi)
+ ("glew" ,glew)
("harfbuzz" ,harfbuzz)
- ("mesa" ,mesa)
+ ("libvorbis" ,libvorbis)
("libx11" ,libx11)
("libxrandr" ,libxrandr)
- ("curl" ,curl)
+ ("mesa" ,mesa)
+ ("openal" ,openal)
+ ("sdl2" ,sdl2)
+ ("zlib" ,zlib)
;; The following input is needed to build the bundled and modified
;; version of irrlicht.
+ ("enet" ,enet)
("libjpeg" ,libjpeg-turbo)
- ("openssl" ,openssl)
- ("enet" ,enet)))
+ ("openssl" ,openssl)))
(native-inputs
`(("pkg-config" ,pkg-config)))
(home-page "https://supertuxkart.net/Main_Page")
@@ -3904,7 +3914,7 @@ engine. When you start it you will be prompted to download a graphics set.")
(home-page "http://dev.openttdcoop.org/projects/opengfx")
(synopsis "Base graphics set for OpenTTD")
(description
- "The OpenGFX projects is an implementation of the OpenTTD base grahics
+ "The OpenGFX project is an implementation of the OpenTTD base graphics
set that aims to ensure the best possible out-of-the-box experience.
OpenGFX provides you with...
@@ -4785,7 +4795,7 @@ of war. Widelands also offers an Artificial Intelligence to challenge you.")
(define-public starfighter
(package
(name "starfighter")
- (version "2.3.2")
+ (version "2.3.3")
(source (origin
(method url-fetch)
(uri (string-append
@@ -4794,7 +4804,7 @@ of war. Widelands also offers an Artificial Intelligence to challenge you.")
version "-src.tar.gz"))
(sha256
(base32
- "1nvi277cazsw36b6nhd5nmk0cjvm71rlxasy24mf18j7fsvq9vp8"))))
+ "0jz2lgvmp299nks6ajg2yxbx4xcaxlc4cpfr61861p7m7z2nv84y"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)))
@@ -5073,7 +5083,7 @@ a style similar to the original Super Mario games.")
(define-public tintin++
(package
(name "tintin++")
- (version "2.02.02")
+ (version "2.02.04")
(source
(origin
(method url-fetch)
@@ -5081,7 +5091,7 @@ a style similar to the original Super Mario games.")
(string-drop-right version 1)
"/tintin-" version ".tar.gz"))
(sha256
- (base32 "11ylbp8ip7dwmh4gzb53z147pcfxkl3lwhyy8ngyn2zc634vdn65"))))
+ (base32 "1w1y20vqcikg59gnbxjbhyq2yanwqz1a6wp8vd1qnmil240id4j7"))))
(inputs
`(("gnutls" ,gnutls)
("pcre" ,pcre)
@@ -7172,7 +7182,7 @@ original.")
("pkg-config" ,pkg-config)))
(inputs
`(("cmocka" ,cmocka)
- ("perl-env-path", perl-env-path)
+ ("perl-env-path" ,perl-env-path)
("perl-inline" ,perl-inline)
("perl-inline-c" ,perl-inline-c)
("perl-string-shellquote" ,perl-string-shellquote)
@@ -7767,7 +7777,7 @@ their own levels.")
(define-public libmanette
(package
(name "libmanette")
- (version "0.2.4")
+ (version "0.2.5")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/libmanette/"
@@ -7775,7 +7785,7 @@ their own levels.")
"libmanette-" version ".tar.xz"))
(sha256
(base32
- "1xrc6rh73v5w3kbkflzv1yg8sbxk4wf06hfk95raxhxlssza9q2g"))))
+ "0awsl0d34k3w18jdiyh377r7qi00s4kmh5gc97vx9jy0h22f01l0"))))
(build-system meson-build-system)
(native-inputs
`(("glib" ,glib "bin") ; for glib-compile-resources
@@ -10168,7 +10178,7 @@ This package is part of the KDE games module.")
`(("extra-cmake-modules" ,extra-cmake-modules)
("kdoctools" ,kdoctools)))
(inputs
- `(("karchive", karchive)
+ `(("karchive" ,karchive)
("kconfig" ,kconfig)
("kconfigwidgets" ,kconfigwidgets)
("kcoreaddons" ,kcoreaddons)
@@ -10314,7 +10324,7 @@ This package is part of the KDE games module.")
`(("extra-cmake-modules" ,extra-cmake-modules)
("kdoctools" ,kdoctools)))
(inputs
- `(("kcompletion", kcompletion)
+ `(("kcompletion" ,kcompletion)
("kconfig" ,kconfig)
("kconfigwidgets" ,kconfigwidgets)
("kcoreaddons" ,kcoreaddons)
@@ -10706,7 +10716,7 @@ This package is part of the KDE games module.")
("kdbusaddons" ,kdbusaddons)
("ki18n" ,ki18n)
("kio" ,kio)
- ("knewstuff", knewstuff)
+ ("knewstuff" ,knewstuff)
("ktextwidgets" ,ktextwidgets)
("kxmlgui" ,kxmlgui)
("libkdegames" ,libkdegames)
@@ -11399,7 +11409,7 @@ etc. You can also play games on FICS or against an engine.")
(define-public stockfish
(package
(name "stockfish")
- (version "11")
+ (version "12")
(source
(origin
(method git-fetch)
@@ -11408,8 +11418,15 @@ etc. You can also play games on FICS or against an engine.")
(commit (string-append "sf_" version))))
(file-name (git-file-name name version))
(sha256
- (base32 "12mppipinymj8s1ipq9a7is453vncly49c32ym9wvyklsgyxfzlk"))))
+ (base32 "0vcymbwp5nf114pp3ax40s21ki5dckda15vmhr77d1mnq3fn0l32"))))
(build-system gnu-build-system)
+ (inputs
+ `(("neural-network"
+ ,(origin
+ (method url-fetch)
+ (uri "https://tests.stockfishchess.org/api/nn/nn-82215d0fd0df.nnue")
+ (sha256
+ (base32 "1r4yqrh4di05syyhl84hqcz84djpbd605b27zhbxwg6zs07ms8c2"))))))
(arguments
`(#:tests? #f
#:make-flags (list "-C" "src"
@@ -11425,10 +11442,17 @@ etc. You can also play games on FICS or against an engine.")
("mips64el-linux" "general-64")
(_ "general-32"))))
#:phases (modify-phases %standard-phases
- (delete 'configure))))
+ (delete 'configure)
+ ;; The official neural network file is needed for building
+ ;; and is embedded in the resulting binary.
+ (add-after 'unpack 'copy-net
+ (lambda* (#:key inputs #:allow-other-keys)
+ (copy-file (assoc-ref inputs "neural-network")
+ "src/nn-82215d0fd0df.nnue")
+ #t)))))
(synopsis "Strong chess engine")
(description
- "Stockfish is a very strong chess engines. It is much stronger than the
+ "Stockfish is a very strong chess engine. It is much stronger than the
best human chess grandmasters. It can be used with UCI-compatible GUIs like
ChessX.")
(home-page "https://stockfishchess.org/")
diff --git a/gnu/packages/gdb.scm b/gnu/packages/gdb.scm
index 11e0bb3e76..9b96fd180b 100644
--- a/gnu/packages/gdb.scm
+++ b/gnu/packages/gdb.scm
@@ -41,17 +41,18 @@
#:use-module (guix build-system gnu)
#:use-module (srfi srfi-1))
-(define-public gdb-9.1
+(define-public gdb
(package
(name "gdb")
- (version "9.1")
+ (version "9.2")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnu/gdb/gdb-"
version ".tar.xz"))
+ (patches (search-patches "gdb-hurd.patch"))
(sha256
(base32
- "0dqp1p7w836iwijg1zb4a784n0j4pyjiw5v6h8fg5lpx6b40x7k9"))))
+ "0mf5fn8v937qwnal4ykn3ji1y2sxk0fa1yfqi679hxmpg6pdf31n"))))
(build-system gnu-build-system)
(arguments
@@ -71,20 +72,14 @@
#t))
(add-after
'install 'remove-libs-already-in-binutils
- (lambda* (#:key inputs outputs
- ;; TODO: Inline the native-inputs addition and
- ;; below usage in the next rebuild cycle.
- ,@(if (%current-target-system)
- '(native-inputs)
- '())
+ (lambda* (#:key native-inputs inputs outputs
#:allow-other-keys)
;; Like Binutils, GDB installs libbfd, libopcodes, etc.
;; However, this leads to collisions when both are
;; installed, and really is none of its business,
;; conceptually. So remove them.
- (let* ((binutils ,@(if (%current-target-system)
- '((assoc-ref native-inputs "binutils"))
- '((assoc-ref inputs "binutils"))))
+ (let* ((binutils (or (assoc-ref inputs "binutils")
+ (assoc-ref native-inputs "binutils")))
(out (assoc-ref outputs "out"))
(files1 (with-directory-excursion binutils
(append (find-files "lib")
@@ -117,10 +112,16 @@
`(("texinfo" ,texinfo)
("dejagnu" ,dejagnu)
("pkg-config" ,pkg-config)
- ,@(if (hurd-target?) `(("mig" ,mig)) '())))
- ;; TODO: Add support for the GDB_DEBUG_FILE_DIRECTORY environment variable
- ;; in GDB itself instead of relying on some glue code in the Guix-provided
- ;; .gdbinit file.
+ ,@(if (hurd-target?)
+ ;; When cross-compiling from x86_64-linux, make sure to use a
+ ;; 32-bit MiG because we assume target i586-pc-gnu.
+ `(("mig" ,(if (%current-target-system)
+ mig/32-bit
+ mig)))
+ '())))
+ ;; TODO: Add support for the GDB_DEBUG_FILE_DIRECTORY environment
+ ;; variable in GDB itself instead of relying on some glue code in
+ ;; the Guix-provided .gdbinit file.
(native-search-paths (list (search-path-specification
(variable "GDB_DEBUG_FILE_DIRECTORY")
(files '("lib/debug")))))
@@ -134,11 +135,18 @@ the program is running to try to fix bugs. It can be used to debug programs
written in C, C++, Ada, Objective-C, Pascal and more.")
(license gpl3+)))
+(define-public gdb-minimal
+ (package/inherit
+ gdb
+ (name "gdb-minimal")
+ (inputs (fold alist-delete (package-inputs gdb)
+ '("libxml2" "ncurses" "python-wrapper" "source-highlight")))))
+
;; This version of GDB is required by some of the Rust compilers, see
;; <https://bugs.gnu.org/37810>.
(define-public gdb-8.2
(package
- (inherit gdb-9.1)
+ (inherit gdb)
(version "8.2.1")
(source (origin
(method url-fetch)
@@ -147,28 +155,3 @@ written in C, C++, Ada, Objective-C, Pascal and more.")
(sha256
(base32
"00i27xqawjv282a07i73lp1l02n0a3ywzhykma75qg500wll6sha"))))))
-
-(define-public gdb
- ;; This is the fixed version that packages depend on. Update it rarely
- ;; enough to avoid massive rebuilds.
- gdb-9.1)
-
-(define-public gdb-9.2
- (package
- (inherit gdb)
- (version "9.2")
- (source (origin
- (method url-fetch)
- (uri (string-append "mirror://gnu/gdb/gdb-"
- version ".tar.xz"))
- (patches (search-patches "gdb-hurd.patch"))
- (sha256
- (base32
- "0mf5fn8v937qwnal4ykn3ji1y2sxk0fa1yfqi679hxmpg6pdf31n"))))))
-
-(define-public gdb-minimal
- (package/inherit
- gdb-9.2
- (name "gdb-minimal")
- (inputs (fold alist-delete (package-inputs gdb)
- '("libxml2" "ncurses" "python-wrapper" "source-highlight")))))
diff --git a/gnu/packages/geo.scm b/gnu/packages/geo.scm
index 291b928338..09afa658c7 100644
--- a/gnu/packages/geo.scm
+++ b/gnu/packages/geo.scm
@@ -1277,7 +1277,7 @@ to the OSM opening hours specification.")
(define-public josm
(package
(name "josm")
- (version "16812")
+ (version "17013")
(source (origin
(method svn-fetch)
(uri (svn-reference
@@ -1286,7 +1286,7 @@ to the OSM opening hours specification.")
(recursive? #f)))
(sha256
(base32
- "131ly6ah9ygrah1wq1h2199v4hyzgflnh62ychs4jqvy9wz0dal6"))
+ "12mcqswjijvx2n7hz7lnx83i3vjr5ib58cazqin10hczcwnd778q"))
(file-name (string-append name "-" version "-checkout"))
(modules '((guix build utils)))
(snippet
@@ -1761,7 +1761,7 @@ track your position right from your laptop.")
license:zlib))))
(define-public grass
- (let* ((version "7.8.2")
+ (let* ((version "7.8.4")
(majorminor (string-join (list-head (string-split version #\.) 2) ""))
(grassxx (string-append "grass" majorminor)))
(package
@@ -1773,10 +1773,10 @@ track your position right from your laptop.")
(uri (string-append "https://grass.osgeo.org/" grassxx
"/source/grass-" version ".tar.gz"))
(sha256
- (base32 "1fwsm99kz0bxvjk7442qq1h45ikrmhba8bqclafb61gqg1q6ymrk"))))
+ (base32 "1yfghvp522ijww3n3l5xarjbc21rm0gmlgr3lvwxrv23bvxmllyr"))))
(build-system gnu-build-system)
(inputs
- `(("bzip2", bzip2)
+ `(("bzip2" ,bzip2)
("cairo" ,cairo)
("fftw" ,fftw)
("freetype" ,freetype)
@@ -1865,8 +1865,14 @@ track your position right from your laptop.")
(symlink (string-append dir "/lib")
(string-append out "/lib")))
#t))
- (add-after 'install-links 'wrap-python
- (assoc-ref python:%standard-phases 'wrap)))))
+ (add-after 'install-links 'python:wrap
+ (assoc-ref python:%standard-phases 'wrap))
+ (add-after 'python:wrap 'wrap-with-python-interpreter
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let ((out (assoc-ref outputs "out")))
+ (wrap-program (string-append out "/bin/" ,grassxx)
+ `("GRASS_PYTHON" = (,(which "python3"))))
+ #t))))))
(synopsis "GRASS Geographic Information System")
(description
"GRASS (Geographic Resources Analysis Support System), is a Geographic
diff --git a/gnu/packages/gettext.scm b/gnu/packages/gettext.scm
index 4166cee248..c955a0d286 100644
--- a/gnu/packages/gettext.scm
+++ b/gnu/packages/gettext.scm
@@ -9,6 +9,7 @@
;;; Copyright © 2017 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2019 Miguel <rosen644835@gmail.com>
+;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -34,6 +35,7 @@
#:use-module (guix build-system perl)
#:use-module (gnu packages docbook)
#:use-module (gnu packages emacs)
+ #:use-module (gnu packages hurd)
#:use-module (gnu packages libunistring)
#:use-module (gnu packages ncurses)
#:use-module (gnu packages perl)
@@ -106,7 +108,11 @@
#t)))))
;; When tests fail, we want to know the details.
- #:make-flags '("VERBOSE=yes")))
+ #:make-flags '("VERBOSE=yes"
+ ,@(if (hurd-target?)
+ ;; Linking to libgettextlib.so makes test-raise fail
+ '("XFAIL_TESTS=test-raise")
+ '()))))
(home-page "https://www.gnu.org/software/gettext/")
(synopsis
"Tools and documentation for translation (used to build other packages)")
diff --git a/gnu/packages/glib.scm b/gnu/packages/glib.scm
index cfbe81f20f..c45c7d4937 100644
--- a/gnu/packages/glib.scm
+++ b/gnu/packages/glib.scm
@@ -624,21 +624,6 @@ It also contains adaptor classes for connection of dissimilar callbacks and
has an ease of use unmatched by other C++ callback libraries.")
(license license:lgpl2.1+)))
-(define-public libsigc++-2
- (package
- (inherit libsigc++)
- (name "libsigc++")
- (version "2.10.3")
- (source
- (origin
- (method url-fetch)
- (uri
- (string-append "mirror://gnome/sources/libsigc++/"
- (version-major+minor version) "/"
- name "-" version ".tar.xz"))
- (sha256
- (base32 "11j7j1jv4z58d9s7jvl42fnqa1dzl4idgil9r45cjv1w673dys0b"))))))
-
(define glibmm
(package
(name "glibmm")
@@ -697,7 +682,7 @@ useful for C++.")
(sha256
(base32 "1v6lp23fr2qh4zshcnm28sn29j3nzgsvcqj2nhmrnvamipjq4lm7"))))
(propagated-inputs
- `(("libsigc++" ,libsigc++-2)
+ `(("libsigc++" ,libsigc++)
("glib" ,glib)))))
(define-public python2-pygobject-2
@@ -955,7 +940,7 @@ programming language. It also contains the utility
(define-public appstream-glib
(package
(name "appstream-glib")
- (version "0.7.17")
+ (version "0.7.18")
(source (origin
(method url-fetch)
(uri (string-append "https://people.freedesktop.org/~hughsient/"
@@ -963,7 +948,7 @@ programming language. It also contains the utility
"appstream-glib-" version ".tar.xz"))
(sha256
(base32
- "0jg58m1p5xfrh8zkpqhhg00nqs727z5i1qy6sb0a3vyc98fyk9vw"))))
+ "00j0kkgf224nzmrha72g8pd72mymhph7vaisj35i4ffy7cpd47na"))))
(build-system meson-build-system)
(native-inputs
`(("gettext" ,gettext-minimal)
diff --git a/gnu/packages/gnome-xyz.scm b/gnu/packages/gnome-xyz.scm
index 75ba0f5636..7f3ae41d17 100644
--- a/gnu/packages/gnome-xyz.scm
+++ b/gnu/packages/gnome-xyz.scm
@@ -234,7 +234,7 @@ some media players, are meant to run long-term in the background even after you
close their window. These applications remain accessible by adding an icon to
the GNOME Shell Legacy Tray. However, the Legacy Tray was removed in GNOME
3.26. TopIcons Redux brings those icons back into the top panel so that it's
-easier to keep track of apps running in the backround.")
+easier to keep track of applications running in the background.")
(license license:gpl2+)))
(define-public gnome-shell-extension-dash-to-dock
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index 85b95a7507..4e7427fdb9 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -74,6 +74,7 @@
(define-module (gnu packages gnome)
#:use-module (gnu packages)
#:use-module (gnu packages admin)
+ #:use-module (gnu packages aidc)
#:use-module (gnu packages aspell)
#:use-module (gnu packages autotools)
#:use-module (gnu packages avahi)
@@ -89,6 +90,8 @@
#:use-module (gnu packages cmake)
#:use-module (gnu packages compression)
#:use-module (gnu packages crates-io)
+ #:use-module (gnu packages crates-graphics)
+ #:use-module (gnu packages crates-gtk)
#:use-module (gnu packages cups)
#:use-module (gnu packages curl)
#:use-module (gnu packages cyrus-sasl)
@@ -105,6 +108,7 @@
#:use-module (gnu packages fontutils)
#:use-module (gnu packages freedesktop)
#:use-module (gnu packages game-development)
+ #:use-module (gnu packages gcc)
#:use-module (gnu packages gettext)
#:use-module (gnu packages ghostscript)
#:use-module (gnu packages gimp)
@@ -357,8 +361,8 @@ services.")
("libsoup" ,libsoup)
("libxml2" ,libxml2)))
(synopsis "Glib library for feeds")
- (description "LibGRSS is a Glib abstaction to handle feeds in RSS, Atom and
-other formats.")
+ (description "LibGRSS is a Glib abstraction to handle feeds in RSS, Atom,
+and other formats.")
(home-page "https://wiki.gnome.org/Projects/Libgrss")
(license license:lgpl3+)))
@@ -986,7 +990,7 @@ freedesktop.org desktop notification specification.")
(define-public mm-common
(package
(name "mm-common")
- (version "1.0.1")
+ (version "1.0.2")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/mm-common/"
@@ -994,7 +998,7 @@ freedesktop.org desktop notification specification.")
"mm-common-" version ".tar.xz"))
(sha256
(base32
- "1jasx9a9g7nqf7jcv3mrg4qh5cp9sq724jxjaz4wa1dzmxsxg8i8"))))
+ "07b4s5ckcz9q5gwx8vchim19mhfgl8wysqwi30pndks3m4zrzad2"))))
(build-system meson-build-system)
(arguments
`(#:phases
@@ -1299,7 +1303,7 @@ and implementation of UPnP A/V profiles.")
`(("gdk-pixbuf" ,gdk-pixbuf)
("gettext" ,gettext-minimal)
("gobject-introspection" ,gobject-introspection)
- ("gtk+:doc", gtk+ "doc")
+ ("gtk+:doc" ,gtk+ "doc")
("vala" ,vala)))
(synopsis "Media art library for the GNOME desktop")
(description
@@ -1663,6 +1667,44 @@ uses duplicity as the backend, which supports incremental backups and storage
either on a local, or remote machine via a number of methods.")
(license license:gpl3+)))
+(define-public gnome-commander
+ (package
+ (name "gnome-commander")
+ (version "1.10.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://gnome/sources/" name "/"
+ (version-major+minor version) "/"
+ "gnome-commander-" version ".tar.xz"))
+ (sha256
+ (base32 "0bis36awb73vhkncq8yr0qlnyaxynqkvmyqbg57ijqwd0m8hh4zg"))))
+ (build-system glib-or-gtk-build-system)
+ (native-inputs
+ `(("desktop-file-utils" ,desktop-file-utils)
+ ("gcc" ,gcc-8) ;required for -Wcast-function-type
+ ("gettext" ,gettext-minimal)
+ ("glib:bin" ,glib "bin")
+ ("gobject-introspection" ,gobject-introspection)
+ ("googletest" ,googletest)
+ ("intltool" ,intltool)
+ ("itstool" ,itstool)
+ ("libtool" ,libtool)
+ ("pkg-config" ,pkg-config)))
+ (inputs
+ `(("gconf" ,gconf)
+ ("gnome-vfs" ,gnome-vfs)
+ ("gtk+" ,gtk+-2)
+ ("libxml2" ,libxml2)))
+ (home-page "https://gcmd.github.io/")
+ (synopsis "Two-pane graphical file manager for the GNOME desktop")
+ (description
+ "GNOME Commander is a two-pane graphical file manager using GNOME
+libraries. It aims to fulfill the demands of more advanced users who
+like to focus on file management, their work through special applications
+and running smart commands.")
+ (license license:gpl2+)))
+
(define-public gnome-user-docs
(package
(name "gnome-user-docs")
@@ -1961,7 +2003,7 @@ commonly used macros.")
("telepathy-glib" ,telepathy-glib)
("vala" ,vala)))
(propagated-inputs
- `(("folks", folks)
+ `(("folks" ,folks)
("telepathy-mission-control" ,telepathy-mission-control)))
(synopsis "GNOME's integrated address book")
(description
@@ -2501,6 +2543,104 @@ on the GNOME Desktop with a single simple application.")
for settings shared by various components of the GNOME desktop.")
(license license:lgpl2.1+)))
+(define-public python-liblarch
+ (package
+ (name "python-liblarch")
+ (version "3.0.1")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/getting-things-gnome/liblarch")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0xv2mfvyzipbny3iz8vll77wsqxfwh28xj6bj1ff0l452waph45m"))))
+ (build-system python-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'start-xserver
+ (lambda* (#:key inputs #:allow-other-keys)
+ (system (format #f "~a/bin/Xvfb :1 &"
+ (assoc-ref inputs "xorg-server")))
+ (setenv "DISPLAY" ":1")
+ #t)))))
+ (native-inputs
+ `(("xorg-server" ,xorg-server-for-tests)))
+ (inputs
+ `(("gtk+" ,gtk+)))
+ (propagated-inputs
+ `(("python-pygobject" ,python-pygobject)))
+ (home-page "https://wiki.gnome.org/Projects/liblarch")
+ (synopsis "Library to easily handle complex data structures")
+ (description
+ "Liblarch is a Python library built to easily handle data structures such
+as lists, trees and acyclic graphs. There's also a GTK binding that will
+allow you to use your data structure in a @code{Gtk.Treeview}.
+
+Liblarch support multiple views of one data structure and complex filtering.
+That way, you have a clear separation between your data themselves (Model)
+and how they are displayed (View).")
+ (license license:lgpl3+)))
+
+(define-public gtg
+ (package
+ (name "gtg")
+ (version "0.4")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/getting-things-gnome/gtg")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0r28vyr88rj3kd3cg4gj7sd29wadjchi92wzmbx67d4hlg25h8kk"))))
+ (build-system meson-build-system)
+ (arguments
+ `(#:glib-or-gtk? #t
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'glib-or-gtk-wrap 'python-and-gi-wrap
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let ((prog (string-append (assoc-ref outputs "out")
+ "/bin/gtg"))
+ (pylib (string-append (assoc-ref outputs "out")
+ "/lib/python"
+ ,(version-major+minor
+ (package-version python))
+ "/site-packages")))
+ (wrap-program prog
+ `("PYTHONPATH" = (,(getenv "PYTHONPATH") ,pylib))
+ `("GI_TYPELIB_PATH" = (,(getenv "GI_TYPELIB_PATH"))))
+ #t))))))
+ (native-inputs
+ `(("desktop-file-utils" ,desktop-file-utils)
+ ("gettext" ,gettext-minimal)
+ ("glib:bin" ,glib "bin")
+ ("gobject-introspection" ,gobject-introspection)
+ ("gtk+:bin" ,gtk+ "bin")
+ ("pkg-config" ,pkg-config)))
+ (inputs
+ `(("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
+ ("gtk+" ,gtk+)
+ ("python-dbus" ,python-dbus)
+ ("python-liblarch" ,python-liblarch)
+ ("python-pycairo" ,python-pycairo)
+ ("python-pygobject" ,python-pygobject)
+ ("python-pyxdg" ,python-pyxdg)))
+ (home-page "https://wiki.gnome.org/Apps/GTG")
+ (synopsis "Personal organizer for the GNOME desktop")
+ (description
+ "Getting Things GNOME! (GTG) is a personal tasks and TODO list items
+organizer for the GNOME desktop environment inspired by the Getting Things
+Done (GTD) methodology. GTG is designed with flexibility, adaptability,
+and ease of use in mind so it can be used as more than just GTD software.
+GTG is intended to help you track everything you need to do and need to
+know, from small tasks to large projects.")
+ (license license:gpl3+)))
+
(define-public icon-naming-utils
(package
(name "icon-naming-utils")
@@ -3066,7 +3206,7 @@ library.")
(define-public librsvg-next
(package
(name "librsvg")
- (version "2.48.8")
+ (version "2.50.1")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/librsvg/"
@@ -3074,7 +3214,7 @@ library.")
"librsvg-" version ".tar.xz"))
(sha256
(base32
- "14i6xzghcidv64cyd3g0wdjbl82rph737yxn9s3x29nzpcjs707l"))
+ "02csvx2nzygh8kyal2qiy3y6xb7d52vszxxr37dzav704a9pkncv"))
(modules '((guix build utils)))
(snippet
'(begin (delete-file-recursively "vendor")
@@ -3086,6 +3226,7 @@ library.")
((guix build cargo-build-system)
(guix build utils)
((guix build gnu-build-system) #:prefix gnu:))
+ #:rust ,rust-1.40
#:cargo-inputs
(("rust-bitflags" ,rust-bitflags-1)
("rust-cairo-rs" ,rust-cairo-rs-0.8)
@@ -3093,9 +3234,8 @@ library.")
("rust-cast" ,rust-cast-0.2)
("rust-cssparser" ,rust-cssparser-0.27)
("rust-data-url" ,rust-data-url-0.1)
- ("rust-downcast-rs" ,rust-downcast-rs-1.1)
("rust-encoding" ,rust-encoding-0.2)
- ("rust-float-cmp" ,rust-float-cmp-0.6)
+ ("rust-float-cmp" ,rust-float-cmp-0.8)
("rust-gdk-pixbuf" ,rust-gdk-pixbuf-0.8)
("rust-gdk-pixbuf-sys" ,rust-gdk-pixbuf-sys-0.9)
("rust-gio" ,rust-gio-0.8)
@@ -3103,14 +3243,14 @@ library.")
("rust-glib" ,rust-glib-0.9)
("rust-glib-sys" ,rust-glib-sys-0.9)
("rust-gobject-sys" ,rust-gobject-sys-0.9)
- ("rust-itertools" ,rust-itertools-0.8)
+ ("rust-itertools" ,rust-itertools-0.9)
("rust-language-tags" ,rust-language-tags-0.2)
("rust-libc" ,rust-libc-0.2)
("rust-locale-config" ,rust-locale-config-0.3)
("rust-markup5ever" ,rust-markup5ever-0.10)
- ("rust-nalgebra" ,rust-nalgebra-0.19)
+ ("rust-nalgebra" ,rust-nalgebra-0.21)
("rust-num-traits" ,rust-num-traits-0.2)
- ("rust-once-cell" ,rust-once-cell-1.2)
+ ("rust-once-cell" ,rust-once-cell-1)
("rust-pkg-config" ,rust-pkg-config-0.3)
("rust-pango" ,rust-pango-0.8)
("rust-pango-sys" ,rust-pango-sys-0.9)
@@ -3120,11 +3260,20 @@ library.")
("rust-rgb" ,rust-rgb-0.8)
("rust-regex" ,rust-regex-1)
("rust-selectors" ,rust-selectors-0.22)
- ("rust-url" ,rust-url-2.1)
+ ("rust-string-cache" ,rust-string-cache-0.8)
+ ("rust-tinyvec" ,rust-tinyvec-0.3)
+ ("rust-url" ,rust-url-2)
("rust-xml5ever" ,rust-xml5ever-0.16))
#:cargo-development-inputs
- (("rust-cairo-rs" ,rust-cairo-rs-0.8)
- ("rust-criterion" ,rust-criterion-0.3))
+ (("rust-assert-cmd" ,rust-assert-cmd-1)
+ ("rust-cairo-rs" ,rust-cairo-rs-0.8)
+ ("rust-chrono" ,rust-chrono-0.4)
+ ("rust-criterion" ,rust-criterion-0.3)
+ ("rust-float-cmp" ,rust-float-cmp-0.8)
+ ("rust-lopdf" ,rust-lopdf-0.25)
+ ("rust-png" ,rust-png-0.16)
+ ("rust-predicates" ,rust-predicates-1)
+ ("rust-tempfile" ,rust-tempfile-3))
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'patch-docbook-xml
@@ -3177,6 +3326,31 @@ library.")
#t))
(replace 'build
(assoc-ref gnu:%standard-phases 'build))
+ (add-before 'check 'ignore-failing-tests
+ ;; stderr=```/tmp/guix-build-.../librsvg-2.50.1/rsvg-convert: line 150: ls: command not found
+ (lambda _
+ (substitute* "tests/src/cmdline/rsvg_convert.rs"
+ (("fn background_color_option_invalid_color_yields_error" all)
+ (string-append "#[ignore] " all))
+ (("fn empty_input_yields_error" all)
+ (string-append "#[ignore] " all))
+ (("fn empty_svg_yields_error" all)
+ (string-append "#[ignore] " all))
+ (("fn env_source_data_epoch_empty" all)
+ (string-append "#[ignore] " all))
+ (("fn env_source_data_epoch_no_digits" all)
+ (string-append "#[ignore] " all))
+ (("fn env_source_data_epoch_trailing_garbage" all)
+ (string-append "#[ignore] " all))
+ (("fn export_id_option_error" all)
+ (string-append "#[ignore] " all))
+ (("fn huge_zoom_factor_yields_error" all)
+ (string-append "#[ignore] " all))
+ (("fn multiple_input_files_not_allowed_for_png_output" all)
+ (string-append "#[ignore] " all))
+ (("fn stylesheet_option_error" all)
+ (string-append "#[ignore] " all)))
+ #t))
(replace 'check
(lambda* args
((assoc-ref gnu:%standard-phases 'check)
@@ -3796,14 +3970,14 @@ Hints specification (EWMH).")
(define-public goffice
(package
(name "goffice")
- (version "0.10.47")
+ (version "0.10.48")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/goffice/"
(version-major+minor version) "/"
"goffice-" version ".tar.xz"))
(sha256
- (base32 "0xmigfdzvmlpa0fw79mf3xwchmxc8rlidryn5syv8bz7msmrb215"))))
+ (base32 "1z6f3q8fxkd1ysqrwdxdi0844zqa00vjpf07gq8mh3kal8picfd4"))))
(build-system gnu-build-system)
(outputs '("out"
"doc")) ; 4.0 MiB of gtk-doc
@@ -3860,7 +4034,7 @@ Hints specification (EWMH).")
(define-public gnumeric
(package
(name "gnumeric")
- (version "1.12.46")
+ (version "1.12.48")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/gnumeric/"
@@ -3868,7 +4042,7 @@ Hints specification (EWMH).")
"gnumeric-" version ".tar.xz"))
(sha256
(base32
- "1qdmw2dp7rmq8fmjapgwaks7ajh270wm6kyvlxlzwbgmg8vngp4z"))))
+ "14556b0vyxdvdwjlin0rv7jk0vq4nplbmvp9j89bhkfk84xf7k2p"))))
(build-system glib-or-gtk-build-system)
(arguments
`(;; The gnumeric developers don't worry much about failing tests.
@@ -3896,8 +4070,8 @@ Hints specification (EWMH).")
("librsvg" ,librsvg)
("libxml2" ,libxml2)
("libxslt" ,libxslt)
- ("python" ,python-2)
- ("python2-pygobject" ,python2-pygobject)
+ ("python" ,python)
+ ("python-pygobject" ,python-pygobject)
("zlib" ,zlib)))
(native-inputs
`(("bison" ,bison)
@@ -3957,7 +4131,7 @@ engineering.")
(define-public seahorse
(package
(name "seahorse")
- (version "3.34")
+ (version "3.36.2")
(source
(origin
(method url-fetch)
@@ -3965,8 +4139,7 @@ engineering.")
(version-major+minor version) "/" name "-"
version ".tar.xz"))
(sha256
- (base32
- "16sfnqrdlr5xx6kixx2ln1mva7nngjlw1k3f5n454vyaigffjh2v"))))
+ (base32 "16wmxxppgcgfj8zkagcny5af1c81x32ysm9d6j9f2k7bmik21ss5"))))
(build-system meson-build-system)
(arguments
'(#:glib-or-gtk? #t
@@ -3986,6 +4159,7 @@ engineering.")
("openldap" ,openldap)
("openssh" ,openssh)
("avahi" ,avahi)
+ ("libhandy" ,libhandy-0.0)
("libpwquality" ,libpwquality)
("libsecret" ,libsecret)
("libsoup" ,libsoup)))
@@ -4207,17 +4381,16 @@ and RDP protocols.")
(define-public dconf
(package
(name "dconf")
- (version "0.34.0")
+ (version "0.36.0")
(source (origin
(method url-fetch)
(uri (string-append
"mirror://gnome/sources/" name "/"
(version-major+minor version) "/"
name "-" version ".tar.xz"))
- (patches (search-patches "dconf-meson-0.52.patch"))
(sha256
(base32
- "0lnsl85cp2vpzgp8pkf6l6yd2i3lp02jdvga1icfa78j2smr8fll"))))
+ "0bfs069pjv6lhp7xrzmrhz3876ay2ryqxzc6mlva1hhz34ibprlz"))))
(build-system meson-build-system)
(propagated-inputs
;; In Requires of dconf.pc.
@@ -4236,10 +4409,17 @@ and RDP protocols.")
("pkg-config" ,pkg-config)
("vala" ,vala)))
(arguments
- `(#:tests? #f ; To contact dbus it needs to load /var/lib/dbus/machine-id
- ; or /etc/machine-id.
- #:glib-or-gtk? #t
- #:configure-flags '("-Denable-gtk-doc=true")))
+ `(#:glib-or-gtk? #t
+ #:configure-flags '("-Denable-gtk-doc=true")
+ #:phases (modify-phases %standard-phases
+ (add-after 'unpack 'increase-test-timeout
+ (lambda _
+ ;; On big-memory systems, the engine test may take
+ ;; much longer than the default of 30 seconds.
+ (substitute* "tests/meson.build"
+ (("test\\(unit_test\\[0\\], exe" all)
+ (string-append all ", timeout : 90")))
+ #t)))))
(home-page "https://developer.gnome.org/dconf/")
(synopsis "Low-level GNOME configuration system")
(description "Dconf is a low-level configuration system. Its main purpose
@@ -4562,7 +4742,7 @@ and the GLib main loop, to integrate well with GNOME applications.")
(define-public libsecret
(package
(name "libsecret")
- (version "0.20.3")
+ (version "0.20.4")
(source (origin
(method url-fetch)
(uri (string-append
@@ -4571,7 +4751,7 @@ and the GLib main loop, to integrate well with GNOME applications.")
"libsecret-" version ".tar.xz"))
(sha256
(base32
- "1r4habxdzmn02id324m0m4mg5isf22q1z436bg3vjjmcz1b3rjsg"))))
+ "0a4xnfmraxchd9cq5ai66j12jv2vrgjmaaxz25kl031jvda4qnij"))))
(build-system gnu-build-system)
(outputs '("out" "doc"))
(arguments
@@ -4597,6 +4777,8 @@ and the GLib main loop, to integrate well with GNOME applications.")
(propagated-inputs
`(("glib" ,glib))) ; required by libsecret-1.pc
(inputs
+ ;; The ‘build’ phase complains about missing docbook-xml-4.2 but adding it
+ ;; doesn't seem to affect the build result.
`(("docbook-xsl" ,docbook-xsl)
("libgcrypt" ,libgcrypt)
("libxml2" ,libxml2))) ; for XML_CATALOG_FILES
@@ -4927,7 +5109,7 @@ output devices.")
("gobject-introspection" ,gobject-introspection)
("modem-manager" ,modem-manager)
("libnotify" ,libnotify)
- ("gtk-doc", gtk-doc)
+ ("gtk-doc" ,gtk-doc)
("intltool" ,intltool)))
(inputs
`(("avahi" ,avahi)
@@ -5114,7 +5296,8 @@ services for numerous locations.")
name "-" version ".tar.xz"))
(sha256
(base32
- "07y1gbicz0pbxmdgwrdzyc4byy30wfwpbqgvnx27gnpqmc5s50cr"))))
+ "07y1gbicz0pbxmdgwrdzyc4byy30wfwpbqgvnx27gnpqmc5s50cr"))
+ (patches (search-patches "gnome-settings-daemon-gc.patch"))))
(build-system meson-build-system)
(arguments
`(#:glib-or-gtk? #t
@@ -5127,6 +5310,21 @@ services for numerous locations.")
(string-append "-Dc_link_args=-Wl,-rpath="
(assoc-ref %outputs "out")
"/lib/gnome-settings-daemon-3.0"))
+
+ #:phases (modify-phases %standard-phases
+ (add-before 'configure 'set-baobab-file-name
+ (lambda* (#:key inputs #:allow-other-keys)
+ ;; Hard-code the file name of Baobab instead of looking
+ ;; it up in $PATH. This ensures users get the "Examine"
+ ;; button in the low disk space notification of GDM even
+ ;; if they don't have GNOME in their main profile.
+ (let ((baobab (assoc-ref inputs "baobab")))
+ (substitute* "plugins/housekeeping/gsd-disk-space.c"
+ (("g_find_program_in_path \\(DISK_SPACE_ANALYZER\\)")
+ (string-append "g_strdup (\"" baobab
+ "/bin/baobab\")")))
+ #t))))
+
;; Color management test can't reach the colord system service.
#:tests? #f))
(native-inputs
@@ -5139,6 +5337,7 @@ services for numerous locations.")
("docbook-xsl" ,docbook-xsl)))
(inputs
`(("alsa-lib" ,alsa-lib)
+ ("baobab" ,baobab)
("colord" ,colord)
("libgudev" ,libgudev)
("upower" ,upower)
@@ -6224,14 +6423,14 @@ almost all of them.")
(define-public eolie
(package
(name "eolie")
- (version "0.9.98.1")
+ (version "0.9.99")
(source (origin
(method url-fetch)
(uri (string-append "https://adishatz.org/eolie/eolie-"
version ".tar.xz"))
(sha256
(base32
- "1d844zva5w4p9pnp9c2g7zyb4vayr2g2drf78spxsdlc5lbd7lqr"))))
+ "0zj5v7wxqj7c20bmil127ah0vnjfzvvf6kzz82b9ip3846h43j02"))))
(build-system meson-build-system)
(arguments
`(#:glib-or-gtk? #t
@@ -7850,7 +8049,7 @@ libxml2.")
("xmllint" ,libxml2)))
(inputs
`(("accountsservice" ,accountsservice)
- ("check" ,check) ; for testing
+ ("check" ,check-0.14) ;for testing
("elogind" ,elogind)
("gnome-session" ,gnome-session)
("gnome-settings-daemon" ,gnome-settings-daemon)
@@ -7895,7 +8094,7 @@ usage and information about running processes.")
(define-public gnome-bluetooth
(package
(name "gnome-bluetooth")
- (version "3.34.0")
+ (version "3.34.2")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/"
@@ -7903,7 +8102,7 @@ usage and information about running processes.")
name "-" version ".tar.xz"))
(sha256
(base32
- "1bvbxcsjkyl0givy8nfm7112bq3c0vn1v89fdk2pip714dsfcrz8"))))
+ "0lmjvb49vgr4jjplrisv6pi29jsn1q42715i6c5a0p9ad3gawyyv"))))
(build-system meson-build-system)
(native-inputs
`(("glib:bin" ,glib "bin") ; for gdbus-codegen, etc.
@@ -8887,6 +9086,75 @@ specified duration and save it as a GIF encoded animated image file.")
(home-page "https://git.gnome.org/browse/byzanz")
(license license:gpl2+))))
+(define-public authenticator
+ (package
+ (name "authenticator")
+ (version "3.32.2")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://gitlab.gnome.org/World/Authenticator")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1c4r9rnrz5gazrfg0z2rcwax4nscs7z391bcjcl74k6ln3blwzpr"))))
+ (build-system meson-build-system)
+ (arguments
+ `(#:glib-or-gtk? #t
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'glib-or-gtk-wrap 'python-and-gi-wrap
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (let ((prog (string-append (assoc-ref outputs "out")
+ "/bin/authenticator"))
+ (pylib (string-append (assoc-ref outputs "out")
+ "/lib/python"
+ ,(version-major+minor
+ (package-version python))
+ "/site-packages")))
+ (wrap-program prog
+ `("PYTHONPATH" = (,(getenv "PYTHONPATH") ,pylib))
+ `("GI_TYPELIB_PATH" = (,(getenv "GI_TYPELIB_PATH"))))
+ #t))))))
+ (native-inputs
+ `(("desktop-file-utils" ,desktop-file-utils)
+ ("gettext" ,gettext-minimal)
+ ("glib:bin" ,glib "bin")
+ ("gobject-introspection" ,gobject-introspection)
+ ("gtk+:bin" ,gtk+ "bin")
+ ("pkg-config" ,pkg-config)))
+ (inputs
+ `(("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
+ ("gtk+" ,gtk+)
+ ("libhandy" ,libhandy-0.0)
+ ("libsecret" ,libsecret)
+ ("python-beautifulsoup4" ,python-beautifulsoup4)
+ ("python-pillow" ,python-pillow)
+ ("python-pyfavicon" ,python-pyfavicon)
+ ("python-pygobject" ,python-pygobject)
+ ("python-pyotp" ,python-pyotp)
+ ("python-pyzbar" ,python-pyzbar)
+ ("yoyo-migrations" ,yoyo-migrations)
+ ("zbar" ,zbar)))
+ (home-page "https://gitlab.gnome.org/World/Authenticator/")
+ (synopsis "Two-factor authentication application built for GNOME")
+ (description
+ "Authenticator is a two-factor authentication (2FA) application built for
+the GNOME desktop environment.
+
+Features:
+
+@itemize
+@item QR code scanner
+@item Beautiful UI
+@item Huge database of more than 560 supported services
+@item Keep your PIN tokens secure by locking the application with a password
+@item Automatically fetch an image for services using their favicon
+@item The possibility to add new services
+@end itemize")
+ (license license:gpl3+)))
+
(define-public gsound
(package
(name "gsound")
@@ -9937,14 +10205,14 @@ views can be printed as PDF or PostScript files, or exported to HTML.")
(define-public lollypop
(package
(name "lollypop")
- (version "1.2.32")
+ (version "1.4.2")
(source
(origin
(method url-fetch)
(uri (string-append "https://adishatz.org/lollypop/"
"lollypop-" version ".tar.xz"))
(sha256
- (base32 "1ng9492k8754vlqggbfsyzbmfdx4w17fzc4ad21fr92710na0w5a"))))
+ (base32 "1hfl68gkvqy5kxlmrsalz78mw1bs1yvqvy2rhg7pzgwiazsdvwzz"))))
(build-system meson-build-system)
(arguments
`(#:imported-modules
@@ -9979,6 +10247,7 @@ views can be printed as PDF or PostScript files, or exported to HTML.")
("gst-plugins-base" ,gst-plugins-base)
("libnotify" ,libnotify)
("libsecret" ,libsecret)
+ ("libhandy" ,libhandy)
("libsoup" ,libsoup)
("python" ,python)
("python-beautifulsoup4" ,python-beautifulsoup4)
@@ -10006,7 +10275,7 @@ automatically and it can stream songs from online music services and charts.")
(define-public gnome-video-effects
(package
(name "gnome-video-effects")
- (version "0.4.3")
+ (version "0.5.0")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/"
@@ -10014,14 +10283,10 @@ automatically and it can stream songs from online music services and charts.")
version ".tar.xz"))
(sha256
(base32
- "06c2f1kihyhawap1s3zg5w7q7fypsybkp7xry4hxkdz4mpsy0zjs"))))
- (build-system glib-or-gtk-build-system)
- (arguments
- `(#:out-of-source? #f))
+ "1j6h98whgkcxrh30bwvnxvyqxrxchgpdgqhl0j71xz7x72dqxijd"))))
+ (build-system meson-build-system)
(native-inputs
- `(("glib:bin" ,glib "bin")
- ("intltool" ,intltool)
- ("gettext" ,gettext-minimal)
+ `(("gettext" ,gettext-minimal)
("pkg-config" ,pkg-config)))
(home-page "https://wiki.gnome.org/Projects/GnomeVideoEffects")
(synopsis "Video effects for Cheese and other GNOME applications")
@@ -10033,7 +10298,7 @@ photo-booth-like software, such as Cheese.")
(define-public cheese
(package
(name "cheese")
- (version "3.34.0")
+ (version "3.38.0")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/"
@@ -10041,7 +10306,7 @@ photo-booth-like software, such as Cheese.")
version ".tar.xz"))
(sha256
(base32
- "0wvyc9wb0avrprvm529m42y5fkv3lirdphqydc9jw0c8mh05d1ni"))))
+ "0vyim2avlgq3a48rgdfz5g21kqk11mfb53b2l883340v88mp7ll8"))))
(arguments
`(#:glib-or-gtk? #t
;; Tests require GDK.
@@ -10054,6 +10319,15 @@ photo-booth-like software, such as Cheese.")
(substitute* "meson_post_install.py"
(("gtk-update-icon-cache") (which "true")))
#t))
+ (add-after 'unpack 'patch-docbook-xml
+ (lambda* (#:key inputs #:allow-other-keys)
+ ;; Avoid a network connection attempt during the build.
+ (substitute* '("docs/reference/cheese.xml"
+ "docs/reference/cheese-docs.xml")
+ (("http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd")
+ (string-append (assoc-ref inputs "docbook-xml")
+ "/xml/dtd/docbook/docbookx.dtd")))
+ #t))
(add-after 'install 'wrap-cheese
(lambda* (#:key inputs outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out"))
@@ -10064,6 +10338,7 @@ photo-booth-like software, such as Cheese.")
(build-system meson-build-system)
(native-inputs
`(("docbook-xsl" ,docbook-xsl)
+ ("docbook-xml" ,docbook-xml-4.3)
("glib:bin" ,glib "bin")
("gtk-doc" ,gtk-doc)
("intltool" ,intltool)
@@ -10096,6 +10371,60 @@ photo-booth-like software, such as Cheese.")
apply fancy special effects and lets you share the fun with others.")
(license license:gpl2+)))
+(define-public passwordsafe
+ (package
+ (name "passwordsafe")
+ (version "3.99.2")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://gitlab.gnome.org/World/PasswordSafe")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0pi2l4gwf8paxm858mxrcsk5nr0c0zw5ycax40mghndb6b1qmmhf"))))
+ (build-system meson-build-system)
+ (arguments
+ `(#:glib-or-gtk? #t
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'glib-or-gtk-wrap 'python-and-gi-wrap
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let ((prog (string-append (assoc-ref outputs "out")
+ "/bin/gnome-passwordsafe"))
+ (pylib (string-append (assoc-ref outputs "out")
+ "/lib/python"
+ ,(version-major+minor
+ (package-version python))
+ "/site-packages")))
+ (wrap-program prog
+ `("PYTHONPATH" = (,(getenv "PYTHONPATH") ,pylib))
+ `("GI_TYPELIB_PATH" = (,(getenv "GI_TYPELIB_PATH"))))
+ #t))))))
+ (native-inputs
+ `(("desktop-file-utils" ,desktop-file-utils)
+ ("gettext" ,gettext-minimal)
+ ("glib:bin" ,glib "bin")
+ ("gobject-introspection" ,gobject-introspection)
+ ("gtk+:bin" ,gtk+ "bin")
+ ("pkg-config" ,pkg-config)))
+ (inputs
+ `(("glib" ,glib)
+ ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
+ ("gtk+" ,gtk+)
+ ("libhandy" ,libhandy-0.0)
+ ("libpwquality" ,libpwquality)
+ ("python-pygobject" ,python-pygobject)
+ ("python-pykeepass" ,python-pykeepass)))
+ (home-page "https://gitlab.gnome.org/World/PasswordSafe")
+ (synopsis "Password manager for the GNOME desktop")
+ (description
+ "Password Safe is a password manager which makes use of the KeePass v4
+format. It integrates perfectly with the GNOME desktop and provides an easy
+and uncluttered interface for the management of password databases.")
+ (license license:gpl3+)))
+
(define-public sound-juicer
(package
(name "sound-juicer")
@@ -10769,6 +11098,44 @@ versions of Adwaita, Adwaita-dark and HighContrast themes. It also provides
index files needed for Adwaita to be used outside of GNOME.")
(license license:lgpl2.1+)))
+(define-public gnote
+ (package
+ (name "gnote")
+ (version "3.38.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://gnome/sources/" name "/"
+ (version-major+minor version) "/"
+ "gnote-" version ".tar.xz"))
+ (sha256
+ (base32 "1ingbaw4d8vpjn083xvzqw7kz8z0k2bx7msk78pbzd68bwgkadpx"))))
+ (build-system glib-or-gtk-build-system)
+ (native-inputs
+ `(("desktop-file-utils" ,desktop-file-utils)
+ ("glib:bin" ,glib "bin")
+ ("gobject-introspection" ,gobject-introspection)
+ ("intltool" ,intltool)
+ ("itstool" ,itstool)
+ ("pkg-config" ,pkg-config)
+ ("unittest-cpp" ,unittest-cpp))) ;FIXME: not found by pkg-config
+ (inputs
+ `(("glibmm" ,glibmm)
+ ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
+ ("gspell" ,gspell)
+ ("gtk+" ,gtk+)
+ ("gtkmm" ,gtkmm)
+ ("libsecret" ,libsecret)
+ ("libuuid" ,util-linux "lib")
+ ("libxml2" ,libxml2)
+ ("libxslt" ,libxslt)))
+ (synopsis "Note-taking application for the GNOME desktop")
+ (description
+ "Gnote is a note-taking application written for the GNOME desktop
+environment.")
+ (home-page "https://wiki.gnome.org/Apps/Gnote")
+ (license license:gpl3+)))
+
(define-public polari
(package
(name "polari")
@@ -11004,6 +11371,49 @@ designed to work with various laser/ink-jet peel-off label and business
card sheets that you’ll find at most office supply stores.")
(license license:gpl3+)))
+;; Version 3.38.0 is out but requires tepl>=5 which requires glib>=2.64.
+(define-public gnome-latex
+ (package
+ (name "gnome-latex")
+ (version "3.36.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://gnome/sources/" name "/"
+ (version-major+minor version) "/"
+ "gnome-latex-" version ".tar.xz"))
+ (sha256
+ (base32 "1869kr1zhcp04mzbi67lwgk497w840dbbc7427i9yh9b9s7j6mqn"))))
+ (build-system glib-or-gtk-build-system)
+ (native-inputs
+ `(("gettext" ,gettext-minimal)
+ ("glib:bin" ,glib "bin")
+ ("gobject-introspection" ,gobject-introspection)
+ ("gtk-doc" ,gtk-doc)
+ ("intltool" ,intltool)
+ ("itstool" ,itstool)
+ ("pkg-config" ,pkg-config)
+ ("vala" ,vala)))
+ (inputs
+ `(("amtk" ,amtk)
+ ("dconf" ,dconf)
+ ("glib" ,glib)
+ ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
+ ("gspell" ,gspell)
+ ("gtk+" ,gtk+)
+ ("gtksourceview" ,gtksourceview)
+ ("libgee" ,libgee)
+ ("tepl" ,tepl)
+ ("uchardet" ,uchardet)))
+ (home-page "https://wiki.gnome.org/Apps/GNOME-LaTeX")
+ (synopsis "LaTeX editor for the GNOME desktop")
+ (description
+ "GNOME LaTeX is a LaTeX editor for the GNOME desktop. It has features
+such as build tools, completion of LaTeX commands, structure navigation,
+symbol tables, document templates, project management, spell-checking, menus
+and toolbars.")
+ (license license:gpl3+)))
+
(define-public libratbag
(package
(name "libratbag")
@@ -11375,7 +11785,7 @@ integrated profiler via Sysprof, debugging support, and more.")
(define-public komikku
(package
(name "komikku")
- (version "0.19.0")
+ (version "0.21.1")
(source
(origin
(method git-fetch)
@@ -11385,7 +11795,7 @@ integrated profiler via Sysprof, debugging support, and more.")
(file-name (git-file-name name version))
(sha256
(base32
- "16d7k500nd9klnjqqcgk3glhv2sy78yndkz3n0x7lynvblsy45kk"))))
+ "17ss5k2hnymk6xyx1dy3q0y2pwcld78cw7d0cs9c0hnhskh5dirh"))))
(build-system meson-build-system)
(arguments
`(#:glib-or-gtk? #t
@@ -11438,3 +11848,130 @@ integrated profiler via Sysprof, debugging support, and more.")
(description "Komikku is an online/offline manga reader for GNOME,
developed with the aim of being used with the Librem 5 phone.")
(license license:gpl3+)))
+
+(define-public libgda
+ (package
+ (name "libgda")
+ (version "5.2.9")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://gitlab.gnome.org/GNOME/libgda.git/")
+ (commit "LIBGDA_5_2_9")))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "122anbk15vj2dfxrw7s48b6zwlpp7cyppshxizynvf3zmc0ygw3j"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:configure-flags '("--enable-vala")
+ ;; There's a race between check_cnc_lock and check_threaded_cnc
+ ;; in tests/multi-threading.
+ #:parallel-tests? #f
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'fix-glade-install
+ (lambda _
+ (substitute* "configure.ac"
+ (("`\\$PKG_CONFIG --variable=catalogdir gladeui-2\\.0`")
+ "${datadir}/glade/catalogs")
+ (("`\\$PKG_CONFIG --variable=pixmapdir gladeui-2\\.0`")
+ "${datadir}/glade/pixmaps"))
+ #t))
+ (add-before 'check 'pre-check
+ (lambda* (#:key inputs #:allow-other-keys)
+ ;; Tests require a running X server.
+ (system "Xvfb :1 &")
+ (setenv "DISPLAY" ":1")
+ #t))
+ (add-after 'install 'symlink-glade-module
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((shlib "libgda-ui-5.0.so")
+ (out (assoc-ref outputs "out"))
+ (out/lib (string-append out "/lib"))
+ (moduledir (string-append out/lib "/glade/modules")))
+ (mkdir-p moduledir)
+ (symlink (string-append out/lib "/" shlib)
+ (string-append moduledir "/" shlib))
+ #t))))))
+ (propagated-inputs
+ `(("libxml2" ,libxml2))) ; required by libgda-5.0.pc
+ (inputs
+ `(("glib" ,glib)
+ ("glade" ,glade3)
+ ("gtk+" ,gtk+)
+ ("libsecret" ,libsecret)
+ ("libxslt" ,libxslt)
+ ("openssl" ,openssl)
+ ("vala" ,vala)))
+ (native-inputs
+ `(("autoconf" ,autoconf)
+ ("automake" ,automake)
+ ("glib:bin" ,glib "bin")
+ ("gnome-common" ,gnome-common)
+ ("gobject-introspection" ,gobject-introspection)
+ ("gtk-doc" ,gtk-doc)
+ ("intltool" ,intltool)
+ ("libtool" ,libtool)
+ ("pkg-config" ,pkg-config)
+ ("vala" ,vala)
+ ("which" ,which)
+ ("xorg-server" ,xorg-server-for-tests)
+ ("yelp-tools" ,yelp-tools)))
+ (home-page "https://gitlab.gnome.org/GNOME/libgda")
+ (synopsis "Uniform data access")
+ (description
+ "GNU Data Access (GDA) is an attempt to provide uniform access to
+different kinds of data sources (databases, information servers, mail spools,
+etc). It is a complete architecture that provides all you need to access
+your data.")
+ (license license:lgpl2.1+)))
+
+(define-public gtranslator
+ (package
+ (name "gtranslator")
+ (version "3.36.0")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "mirror://gnome/sources/" name "/"
+ (version-major+minor version) "/"
+ name "-" version ".tar.xz"))
+ (sha256
+ (base32
+ "1lxd2nkji4jk8g2xmyc1a1r3ww710ddk91zh9psmx8xlb4xivaid"))))
+ (build-system meson-build-system)
+ (inputs
+ `(("json-glib" ,json-glib)
+ ("jsonrpc-glib" ,jsonrpc-glib)
+ ("gettext" ,gettext-minimal)
+ ("glib" ,glib)
+ ("gtk+" ,gtk+)
+ ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
+ ("gspell" ,gspell)
+ ("libdazzle" ,libdazzle)
+ ("libgda" ,libgda)
+ ("libsoup" ,libsoup)))
+ (native-inputs
+ `(("glib:bin" ,glib "bin")
+ ("itstool" ,itstool)
+ ("pkg-config" ,pkg-config)))
+ (propagated-inputs
+ `(("gtksourceview" ,gtksourceview))) ; required for source view
+ (arguments
+ `(#:build-type "release"
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'skip-gtk-update-icon-cache
+ (lambda _
+ (substitute* "build-aux/meson/meson_post_install.py"
+ (("gtk-update-icon-cache") (which "true")))
+ #t)))))
+ (home-page "https://wiki.gnome.org/Apps/Gtranslator")
+ (synopsis "Translation making program")
+ (description
+ "gtranslator is a quite comfortable gettext po/po.gz/(g)mo files editor
+for the GNOME 3.x platform with many features. It aims to be a very complete
+editing environment for translation issues within the GNU gettext/GNOME desktop
+world.")
+ (license license:gpl3+)))
diff --git a/gnu/packages/gnu-pw-mgr.scm b/gnu/packages/gnu-pw-mgr.scm
index 6eb8224cef..321a7f87d7 100644
--- a/gnu/packages/gnu-pw-mgr.scm
+++ b/gnu/packages/gnu-pw-mgr.scm
@@ -1,7 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
-;;; Copyright © 2016, 2018 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2016, 2018, 2020 Efraim Flashner <efraim@flashner.co.il>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -30,7 +30,7 @@
(define-public gnu-pw-mgr
(package
(name "gnu-pw-mgr")
- (version "2.4.2")
+ (version "2.7")
(source
(origin
(method url-fetch)
@@ -38,7 +38,7 @@
version ".tar.xz"))
(sha256
(base32
- "1yvdzc5w37qrjrkby5699ygj9bhkvgi3zk9k9jcjry1j6b7wdl17"))))
+ "1ra8in91qx6n8jydb8kwl2rnqaa2hix5pyawn6nvyqs815h9gx17"))))
(build-system gnu-build-system)
(arguments
'(#:phases
@@ -47,6 +47,12 @@
(lambda _
(substitute* "tests/dom.test"
(("/usr/bin/printf") (which "printf")))
+ #t))
+ (add-before 'check 'pre-check
+ (lambda _
+ ;; In build environment, There is no /dev/tty
+ (substitute* "tests/base.test"
+ (("/dev/tty") "/dev/null"))
#t)))))
(native-inputs
`(("which" ,which)))
diff --git a/gnu/packages/gnucash.scm b/gnu/packages/gnucash.scm
index 43aad3ed02..8f58ce332a 100644
--- a/gnu/packages/gnucash.scm
+++ b/gnu/packages/gnucash.scm
@@ -293,7 +293,7 @@ applications and libraries. It is used by AqBanking.")
("gnutls" ,gnutls)))
(native-inputs
`(("pkg-config" ,pkg-config)
- ("gettext-minimal", gettext-minimal)
+ ("gettext-minimal" ,gettext-minimal)
("libltdl" ,libltdl)))
(home-page "https://www.aquamaniac.de/sites/aqbanking/index.php")
(synopsis "Interface for online banking tasks")
diff --git a/gnu/packages/gnuzilla.scm b/gnu/packages/gnuzilla.scm
index 7d6ed6b11a..06b00038bd 100644
--- a/gnu/packages/gnuzilla.scm
+++ b/gnu/packages/gnuzilla.scm
@@ -1,6 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013, 2015 Andreas Enge <andreas@enge.fr>
-;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2018, 2019 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2014, 2015, 2016, 2017, 2018, 2019, 2020 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2015 Sou Bunnbu <iyzsong@gmail.com>
;;; Copyright © 2016, 2017, 2018, 2019 Efraim Flashner <efraim@flashner.co.il>
@@ -418,9 +418,9 @@ in C/C++.")
(method hg-fetch)
(uri (hg-reference
(url "https://hg.mozilla.org/l10n/compare-locales/")
- (changeset "RELEASE_3_3_0")))
+ (changeset "RELEASE_8_0_0")))
(file-name "mozilla-compare-locales")
- (sha256 (base32 "0biazbq7vbi99b99rfn4szwyx032dkpi09c9z4zs6f1br0f86iy1"))))
+ (sha256 (base32 "0052wq92sg4i776x407b5838jx9h3phl9xy69m2q34f31n3gdyk2"))))
(define (mozilla-locale locale changeset hash-string)
(origin
@@ -440,108 +440,102 @@ in C/C++.")
(mozilla-locales
;; sha256 changeset locale
;;---------------------------------------------------------------------------
- ("0pybx6j2ycbrr1xmv0spv19sd8a1dyzcs8kf6pzn71w8y6kiagcf" "35959cf2343c" "ach")
- ("0dixmkha738w7fkx20nx95xkfyrqb9vczpy6m03qnqfvb76xaxj5" "e8dc1010f909" "af")
- ("124j09va25gwfxdzyfixrli0skxv53c7niagjyp7g3a3kcv2lbhc" "4c67f6b96a7b" "an")
- ("0flgqll3xx0ym0zj0w9j2jw3fmhs6h9m4l5da6m0bpnk5ff80r06" "34cbea5f44a5" "ar")
- ("0kdb1yqfbfz508f4p77z3p1v6fwy190vs5ipj58hgdixjgbxkqay" "b4790b27633c" "ast")
- ("1vm5xw6wg12pygswd3p0qpkaxyryah6nif5n15chb4sb42c1gqcm" "96d341bf49d4" "az")
- ("1j2qrrws51qij6haz5b77n5vzqhsxgs1ppqqw4mdrkacwvz4ciwh" "4adaede00646" "be")
- ("0ydr8f9lbd51prgcbjb5yacb461j8va0s5bqfs0rnglkvhmk6ard" "d1140972aefe" "bg")
- ("0wyw90zjp8kpd1gljng00in9wr2cf59ww6z002lgx5k4gibnqcfd" "2b3ce92c2310" "bn")
- ("0kkq621h1qdmimyrmms9g5p70m54z2ddw4cd962nqbkrnmabq9vn" "426896350893" "br")
- ("0vibhnb3cbpbgf10db04g6vm372kb9i27p0jkwif019f7qprswd8" "7463f339ce07" "bs")
- ("1l8cn2fqfvx7bswzfy9vavv8cd32ha9ygdxxdbxi64wcgw0f80bf" "dab3f05125e4" "ca")
- ("0fik17y8zyg9w82lq501ic73a53c0q9r8v4zgn9bnzgsygig8qpq" "ebb9d989275a" "cak")
- ("0sj29v6144h39wzb4rvxph3cwgvs4gzkgpr0463d3fcs6jdi0kjs" "522352780348" "cs")
- ("1nz8jlx62l69jcdi59hlk8jysm15sh3d1cxqginjmx7w351wsidm" "0791b954c333" "cy")
- ("1vc01q1vlq26xm1vm1x0119jawxxp975p9k8ashmiwncl1bvqb48" "121f5f876f4c" "da")
- ("1iqny61rg57banfbbskc2y3pr6d35fabnxmynv7vxm9jd86pndz3" "95fb3e99a2bc" "de")
- ("06v9j8acx5h8za7m65v6qm0wjbkx6vm46m8sigcp69phyg3fjc96" "90e681b74587" "dsb")
- ("0lbk90x2dxdbh63fycqxspx6jqq2zlzys6grg45balw8yyvzqrkz" "58ba4c13fd42" "el")
- ("0c2ypvy0z8g78s5158v6h9khckq1xps34r5wbiiciix289m43dgl" "8953d8c98a30" "en-CA")
- ("0z3riz3w2z6p710p90ridmwwam4snnz5mn90gd4jc1h2n7vc9mr0" "5a2b9bca3f52" "en-GB")
- ("102gn3h4ap8c3x1p7vfc88vapkfiz6264y6byhxy1axxjk3x3a77" "e87cb1c61d6e" "eo")
- ("148wj6wsx0aq7cpaxk8njj7cb1wfjr2m96dgxq6b3qcv781ldvjn" "5db15fdf95d5" "es-AR")
- ("0r11d8vzvbyz17n371byvkrnszcv1zhr7rg64i58xra3y6d7is7n" "ce2ee0e51a92" "es-CL")
- ("1xmqa8p7lpqvkgg879hfnmf6kxcpawjk8z31cdzfp1hrdlmxg8n7" "7346617620f3" "es-ES")
- ("0jxv3jh2018lnybr9mzqrffvwmr87yab9bh8lxqjj294fxw1hrxm" "687f05eb0c58" "es-MX")
- ("1rpgv7pajv4xldsn1xxsia5j72vn3x8zl5wmbzkyw56lvn9fckvf" "839a5029c496" "et")
- ("0hxp4fr3y05rkpamdb1hlmybn6d3bv3rcawjm3axbpqxbyfdpfzc" "54e8d87230c9" "eu")
- ("1y50knymnmcihw8bhvahicc386mjm6dx4hx0j6fv8sl23wzx2h9m" "c5ffca960f9c" "fa")
- ("0pj9zgi0c3yl3myhvb5afiijayp2lqzhlk630ahxn5hgjgkz0lx7" "75c000a8538d" "ff")
- ("199jg0zv7wp1cq0ik2hf84j99jx5vq2jwac0gaayvjzkh2z83jqr" "f11b2e689e7b" "fi")
- ("1vxkiwwni7470ywy99arxxa56ljkhjrhxslsp1l1l61g6gdbbspr" "49ec4f791806" "fr")
- ("0d8gwdcj0jpjv03nhjds8jrg86pg371xpylaibwri76wlyl7m54i" "faa761a5cfdc" "fy-NL")
- ("0nipbxx11a2sjadzhbi88vgknw5hzr4nqy2722q3kc1212jbi754" "5bd9466f9f9d" "ga-IE")
- ("0bay8mrm65cvmnvqpwqgzr0h3cb18ifzg5kbsbxcvdfm9xv0zi9g" "a4f6a47e82dd" "gd")
- ("00kn5w3nnpw1pxg6hhrn9asf9hgpjd6ia4038iwzcqs68w887qcy" "6c2aa01ada4e" "gl")
- ("0jj13i0ach85c975vaz2rr83mibs29ipssa7qsjkb0y2ch6xya1k" "c2d607e36cb5" "gn")
- ("1nhqbgzilcb0pr7941dxkhg079bf8v7ldikp1s5xli34wf9sabm2" "f34465d6ac1c" "gu-IN")
- ("11bh0541d996cfin1zy72l66753q94i4idgv2waf0h40h9g3z1bm" "c2ecb2762274" "he")
- ("1lslji7hh5lx5ig1xgfjh4cdindsgh3n2a7qlvzwz96gda43lvv4" "94d2bb10ee03" "hi-IN")
- ("1nx5yw00l25i3m3grdm29mi9mi7h0cy5qx02pypir754pk3hiwcc" "08df0d94edd5" "hr")
- ("19yc9dk2pwqycynmx58d1ik6x4mnyfxscgr6sg676dpl613xd7nq" "21b614e77025" "hsb")
- ("0l3z64jlx6b6ivk1b5hwqyx9hm1m5721ywnb2m4zmg3g9fw4vn7f" "f82cad7170af" "hu")
- ("1sn0dxbbf2zwcpybwcw77qb4p0hf6fxapnsnn4avaab5g55dlgz4" "d94c30920396" "hy-AM")
- ("0c92cqxrhv4317kirmhpjk7mrq44yn6fp3v6syxnhz7xwxnhshjm" "6a5f176b0626" "ia")
- ("03gyg9gqsd6pwb9nydglhm46fi2wk2p2qygmhmrf8hnav3ba7n0r" "94e4302e0f85" "id")
- ("0ky8aaps92mn56rvkwn0i13wg8av8hzi1fvr0ahqhjcpj5sfgdwq" "eca348a59888" "is")
- ("01py0sfg7nljcsgpivryrvai4p4wzbcvhgc2ymr19r579nv1vw7g" "d541a6197359" "it")
- ("0iv7vmj43njmi7g1gjzsv68ax4j502d2wnkvbfz1rx11lrqs7yw1" "a5ab3a1d95b7" "ja")
- ("1sr9ccshcw6agbj4hbnpblxixb1jz0m36glas6f9ahxmi7m605si" "63763ffa5a94" "ja-JP-mac")
- ("1as33pzcsdkynrj16dv7w642vl6plbhk650am4l5djwm64f2rgms" "aa83e8555ddc" "ka")
- ("1jwaqb5qps3i5y9iw8l2hrwa0n8lfnx1k9x0p54y3jkh6p3q3fzc" "0e0e25c26247" "kab")
- ("0cjfiwv0q5i8d7fpwb4m2w5ahq687dqjlwlicgpa443yi2zsxr4s" "33117723ceb1" "kk")
- ("0k5b56cv39aaxf9r0p9c27f3fp6yq2ffd4w6qmd0ibpl69sm629d" "aff7b2a7825e" "km")
- ("1a0zg96jgq4zn9cz0h2qwc0vv1fbkfzs5qrgabg62wqgz286jvvv" "ea91638cb1dd" "kn")
- ("0jhmv2n3yx55r6fg3myg7j1c1nhsv25g016m6lh2j023xbr723gp" "88821009b5b3" "ko")
- ("06bybgv4m4i7r9p0qld65j31vbrnljhsdj649dl93msv2r69ilif" "88685d5f07b3" "lij")
- ("1bzjf8smw6ngi88j5g3fawrg54m8fifbhshwjbgkpj7rnrpjgh4w" "e046c7ffa7d0" "lt")
- ("18dmzmpavijb7fwzffas0j5nb6byqp8h6ki7hhf6qb35diqgfq6n" "c520ef4f576c" "lv")
- ("055zf7xj5h1h8mzxj1cjzhngpcvg2p5vs2dmffsa5zfprj02d0dm" "9e43723f18ad" "mk")
- ("1496fbyyzcl075gzcd3xy50h9jyhnzgb544k1scji56yhyfajacb" "ce615fef92c1" "mr")
- ("1wc1q8ksry181pvnysqsq4dhhsg5adw5vgqafmmq5sf6i2bwn2z0" "4fefe88cfaee" "ms")
- ("0awf6mrdwdhy2yvxynssvp1zg1nc2fqbmg2d2bhjcib69zx944xw" "3987a06866fd" "my")
- ("1hycvz7i4jd40hfs5abx6sgfdkafg0jhdgqih9b7lb08aqcl35pj" "2b3b8997d9a1" "nb-NO")
- ("048z1ib46izwryyy8l1x71kq4775n7l2ilbskhsyrbxqryma13k8" "f25324281615" "ne-NP")
- ("1qkxqpyr4la9bn1bqsgc2h9869arglh9n2kwpkq6722jzdbynkz2" "04c7d32c57f6" "nl")
- ("08gnmdll55dbqj7qs63gq1kljbvg24nzns6q4m0av3sszsic0jv5" "5587520e5019" "nn-NO")
- ("1yh2p4ipj5p2b7gh0xxj0n7ndvwn5bw2773ibrh7vz932mkzhhjn" "499386b02695" "oc")
- ("0kjbnixjzv9hvyba4ll20gs76vx84pviy134fvpjp9lfjpnpib55" "31c01c325675" "pa-IN")
- ("0g61imvr4639bbydyi0kwc1il7l1gzlfij4ywx7hdcmq2x6vgb9v" "fb5f3b8dea09" "pl")
- ("13n68d7z94d7943m6fwl4kizbqm3wp82xz69vng4w9vyqlvv7d41" "9a541cbdc748" "pt-BR")
- ("1j8afvrl1afmj2zixrp91rrhag5w4xw90raca1ic6mxyih9kvdi4" "edc959a685c2" "pt-PT")
- ("0wf4a6q9nvcmam2g8ksbymjdnrz59pdr5nirfpjprfhifjmxx4nn" "d2699db715cd" "rm")
- ("1k9qalir5pbh490w1mxyq31yhy9hbxsyrrk11hwlwlgn6syp9nvp" "b5460a9017bc" "ro")
- ("1avy6wyfa5lbvy36wai6mwhhh6x1y8a0jyjk8hvjn52yfxj1gypk" "59ffa8ad047a" "ru")
- ("1cakhm4jxcw1ij0l1vhxw74hsp5wg68i3319dkdncyyc5a2s1qv9" "8b3c8a7ebdfa" "si")
- ("0s534r09bqdfvw3q17y9b1035kzzlafjv656v73mqhyz3fkffsx5" "cb39dc77980e" "sk")
- ("1s58vgmnb9aiaiaqwwcivq3iyzpzj527w2aqh2nrh6xmaw7f43sr" "17d7969b1d9a" "sl")
- ("147qm7x5z8rkf24jpqvkdlqg0fjz1l3zwnaxvkh9y2jpzv7m0x7z" "c55b0e9ff99d" "son")
- ("0nn4r1rxi8cy7x9nmn5ljd8gcsn2rjl2ma2j7waxkafkm4rs6n20" "2bb3808072da" "sq")
- ("0jsb01b94z7qbm59yaj56nb7yx7a6hpgw8v6nzwhbvmnmcsird4p" "c323c0d02d61" "sr")
- ("1n7vv9y4sk3gig56rgfd2jk8jr2160grxk31bd1wkm7fvbndd259" "4220ce487cbc" "sv-SE")
- ("06270mq7gajxfrsb8gqd25v2dac68ask5vvlh6kkkp3hrgy02vid" "6a1dbc2fe1d3" "ta")
- ("10az7pd3npa7n8wq0qywvsj2qrx9592i2wffs3rnc1fviv1i1q0y" "028505b5ecd1" "te")
- ("0yj0c3iyibb3jyypvyiyhbr9asxa48v0nq21kcf9gphi8fnyp5if" "e44d38b6a67b" "th")
- ("1qc4nvhw834lx7p304fxma0fjdr4xfj4lf69dhh6biqz795lx45p" "1e0771d95708" "tr")
- ("1g4y2yq5xp61ncy7c08j7fqqr1jc0m1hjxmbg5659wzif3b3dkg4" "e3c96943e98f" "uk")
- ("1zbi28z1c3p5il7ndixyjsv4nrimzq36zjvlmq10am38ycqr9df8" "f35da1b02691" "ur")
- ("1jrxjjj8k771y0wljqbadxdj4pasg0771jmg4l3hvpgs929i3j9g" "6fd2084b3efe" "uz")
- ("1f8sqgxzgqmw6vzjv3f49lg43q09i3j62f471864vr71815agl8n" "33b5dfd0cd63" "vi")
- ("0ssnsbxw3q5k88fa081gkn1mbqn4j7bm6vb7yvz6h44j214xkz9x" "2d87c0740715" "xh")
- ("0kd3mrvvgczhsmw4rvpxxxc71bb469ayr8r4azf7gc0y5nmlm950" "a2b6625688d3" "zh-CN")
- ("0qy1asyfplkyc89z3g3gfm7b32aka92350b3ayv9d9dcgwxmfdwz" "4d6e959a13d1" "zh-TW")))
-
-(define (mozilla-patch file-name changeset hash)
- "Return an origin for CHANGESET from the mozilla-esr60 repository."
- (origin
- (method url-fetch)
- (uri (string-append "https://hg.mozilla.org/releases/mozilla-esr60/raw-rev/"
- changeset))
- (sha256 (base32 hash))
- (file-name file-name)))
+ ("1q1p7nl97478hkf1msbbcdh98k6fn87xwqihbw8np00ll5gk9k4v" "97cf3c155484" "ach")
+ ("0sajpblp639l448xywx7xlybjr5dm0rfrzx511a8pa9wn7dma4mf" "46929b4dda4e" "af")
+ ("04s756aaf1yyli1dn1vfdjymgyjs1pz2n7jvz76j27x4nzdgss7l" "96ffd2b04ba3" "an")
+ ("16nw7slm7irsnjf81r6zl273kbzri8sdbimzgzxwm0vh6xr61rgs" "1c4231166ddf" "ar")
+ ("0i0qrj4j8zjv55cisbmr21dp8mz933hc9wkpn3abz5k5pn84gpry" "bc4384b8be78" "ast")
+ ("1r77mmwg9x1jfa7g5lqa31rgyfrnix1zj80ibn5rq9gyhhsdrwbd" "dd56aead51fa" "az")
+ ("1kzjpy5bnvps8di72ksynhbhc9bpw1ml6hvphm74z8dz55ai4c18" "9d2bff64ddfb" "be")
+ ("1fygvjgph3siknfm7l0fh9y4ava72z1rxkip1zgmcdgq7jz8wzpf" "3808f4fe4db6" "bg")
+ ("1x9nlqia441xh04rhkmkw6qrgpwnyqw0grrf5n2qw96939wnmgl7" "5ca8752ed8df" "bn")
+ ("18yyxqzab44bgqx7h052d5nxyhv0l5bidgr16z1b3ak2crsfyx9q" "4c5d30ca9bf2" "br")
+ ("11bschjz7pgsm4r1qan5l4s3nkzm5jb0kivpp186wd1xsjci5bjb" "cf2478a7eae1" "bs")
+ ("12bak64nl6qi092l55xv330vh38mfsicrrf4wi693nn7zqb3mbpw" "4aa2cc349211" "ca")
+ ("0p97d7pnxqs971rr5c57i6cw3mx1mp3iasa0xdmdk0zpz9pjd3s4" "806914072144" "ca-valencia")
+ ("1rligf98h9r16mw3r3n5jalzi74xn2dnh6hkiixp7s2bvhjicwa4" "db2163383129" "cak")
+ ("18y5j8ljh72mj2nbx0m64mi3fyjbwyx992i004sv3zvs4d4z18w4" "d1d09eedddde" "cs")
+ ("12i4m9q6f8sl8arm8ja4gs4sl9m59p3kddlqi68srpz9mk66rqxz" "1caf58c64227" "cy")
+ ("16wacsd23zd4j0yi6vbj033wylia8hlpswx949x5hy1h9817j4vn" "9ef3b56aa243" "da")
+ ("1ddxnqpfi1wnciwmzkvvjinb51h22bg70r0dn7db17q64p4271rk" "a050b0eaec0a" "de")
+ ("0gw5h52rw3bc2lwffnv845sjwwj22gmabchmpa1rw2y6087dc7zk" "613135cb0759" "dsb")
+ ("0v17da37w1kbs73i6xql4c9xng6rfachyylpy3w8hpibpvi7i30n" "903db7c76b31" "el")
+ ("0ky1nj4kp070nriw0igsa64l39plcv2365zl8lqpbydyp6clwc3m" "6bb74673e9aa" "en-CA")
+ ("15jck6si2l4h5lrs8zjx56y97p70njpi26nnq6xfmvj1dk5qb4g2" "c06bd83a9295" "en-GB")
+ ("1gc400n8j8qk70vdw7fkf4m9yviia35cmj6361pxnyvsjrgm4qvm" "ae0fda5114c4" "eo")
+ ("0y01lahdrd3krsh6nrr3iw36r2x4advh5qw54vf92w11l3aiyvfz" "0c294dc9ce40" "es-AR")
+ ("16jjbsfa62dxk36ccziv7nmh26c1s0b05960in6zs5nnfrv4yh35" "7c30b2981fb4" "es-CL")
+ ("0qh8c8f8dsv1v56n1mcpn84l39bpnqfl8v8iacq12zh322srr549" "ad1444f4f833" "es-ES")
+ ("1vh3hm5r4ch6mk3ymbk12b9rppwc75fmbi0i7cml82kxsi77bzw5" "0a26cdb23536" "es-MX")
+ ("159l92jxx48lgba1g8ig3mdzhwsf3jpg3nx1g9blq4majk5hqr6q" "65a38a830795" "et")
+ ("1ha8y1wbgb66dqm26x1q2xwygy7bblkjz40y9vh5d2qlpr3fn0av" "21e0930b221d" "eu")
+ ("0rq4pcw6klm0bbljm1wdfvna8bpa35cm47hh2s63i2xdax4scahf" "5a4bb020cf09" "fa")
+ ("1py2594gsvpgrxnplz278ffb7grsf384kzjskrl1zyps0jw8fb1x" "4a4f712cd4aa" "ff")
+ ("1dyd55ngsglp1w2gh0yaacwb0vsq23gdvnj76f2x6g39h1li9s0z" "9c51cd915e2b" "fi")
+ ("0kimwivpq6pr63jh1k9fszsv8bi8vns3scg76mmnvbhh2ca8q7wj" "4f9e24a696ee" "fr")
+ ("1sbbnnp12lgy5qan2kix02942830b1969bd7jxrv7piwqfch9i06" "9e21a0eeb5b1" "fy-NL")
+ ("0dsvvyfrzkx5h44gqgdci7arb8h4lq48w20cnr8fc7j17grvnkzz" "999a995bc09d" "ga-IE")
+ ("1487msbsgrfzmyijhf6a4wbqdjpd7b7ki9nwrjjjjlnbw0h0ljpb" "6a9ddcab3240" "gd")
+ ("1kzc4fwr18kgisdzba2acj1ag8mxbifqpk5p30jv68nmvqfsvl8d" "51eb5e352db9" "gl")
+ ("13gy3wn44kcxr7j3sbl69fp415875f4vb0gm91hx0fysqlvryhcs" "b9de1ffe3224" "gn")
+ ("0w5nvzpjn5vr35c1852rlff581vpy71nc096cz125852kyqkzkc3" "5b3307475ada" "gu-IN")
+ ("1ycakc4qpy9vcy50j3ricryjfnjr9v3a5ijj6bbfl4y6aks157fy" "c742df968ffd" "he")
+ ("1b2jf83c500wm5wcdnijq0b7y4m8n6271smq8pygahn5nq17f0gq" "1a3039a52b8a" "hi-IN")
+ ("19bbw8ix5m83cf4yarcmjl7jqa8xfabwqnh3nj6vi52rwvn7whk5" "8dc50e269ef3" "hr")
+ ("12rrsvgg6bb2h8fhni7jbx8pv983q8ym5fhfjim957n9q2yp5db6" "67e40f48dec7" "hsb")
+ ("0apyh713p3hrlj8041xwblcssahbmsqp9v9hbmb50ayf4z850kr1" "40073a597b1b" "hu")
+ ("0q0r076lq250d3vmnz9d92wj137c2v8i362c2avmkgp5zr3mcl0z" "2ea33335afdb" "hy-AM")
+ ("0qza33gdc1i9259dwd2f7vd78s0a6rg34aqdkhcn7f2l6ybw6xd6" "930041db15eb" "ia")
+ ("1211h0gp7gianh3qf76w04gfzk4n2bnyc9i8dviyz0vh4cjbx11m" "08811a49b41c" "id")
+ ("12lcr841g1j7453s7gb51vrvxmshx4ha3h1jx4vh8wr891xv8l6a" "2f7a8d31e0ba" "is")
+ ("1x585g0r2kcv0d3phnxx85bk5g0pi1yl0hwp4idv19yc9hslr04s" "188357cc04b4" "it")
+ ("09v35g9v7j6x0p1hggydm3a1rmq2fh4z7g1l88z3w5k6wq2nhj1b" "45cee0ba4771" "ja")
+ ("0prs3vycfvvaffjigdgyxiq41ak2rc34lnan5a6cwdqjgy7z450s" "d60a19d9bf17" "ja-JP-mac")
+ ("1nskzm8rgczrbgcxlzzq5zqdfd456ad0cylq27nf0wjiyq6kjzcm" "00cb00e78672" "ka")
+ ("0g6zznmhiam172nm7g2qzfpk415mna8kiihm73z2sdns64xb3ymg" "77a293a4bced" "kab")
+ ("17dld9lrym7rpvpvnkssivp4wx1f11zpk86wczbq1h52qgd70p55" "2c9b33a56d5d" "kk")
+ ("1nlzl8930c8ql3yq425wyqlxvq8arrjv20xpm5g7yfxd54av89ac" "9cddd42af05c" "km")
+ ("07hkrcdksvrqk816yimd036dlw15nc4sjk4gmw16ywbp093v0mqq" "e0c2969a8398" "kn")
+ ("08aqggvk3qbv5bzks9i1iba9akhkpm01d2c9k0zf41mpr2r5yfg2" "827567d0dafc" "ko")
+ ("0vagaiwy80bs1k3gkacshlzb5zchkcshx0ypwirvayc63sw4yl8l" "694b2a24e868" "lij")
+ ("1r43kp1kzahrbza0hiyavqplk9h08pzsb6rpjy79jr6l1iqb89sy" "d6728db7e060" "lt")
+ ("0sq2wbsj79xl7fi454k6q5xdhxyck1whjz315rv37vphqpx86b9b" "61e9b33f4d94" "lv")
+ ("0q8jxg1af22hs9wjdf0jd3bqk4rafxyzvsjl35k75am7l2y1fl3c" "9e482f6dd72c" "mk")
+ ("1zsfzjrzbc58d30a9yz12h5vphywgpw8xg6y6zn3677a785dvr20" "1fd2763336a4" "mr")
+ ("1rzygkkpn1a59daygd3hdaqph2np6sqvpgh68j0xr4il958ymnsm" "67ddab62dab4" "ms")
+ ("16jp6w5gizfxs7jvncg3ly13m59vqvh4rlmjd0q23m5g5ff9sklc" "3ed015b51bf3" "my")
+ ("1wfv023j67lb4iyf49fsknwm4z3xy0xqcf25b2nzanggxj26n01x" "d01801233a8f" "nb-NO")
+ ("1946vfia58vbjfippb5pfsskbjj95w7hb340smn6ry2vmza99mxp" "582defb08fb2" "ne-NP")
+ ("12w5ywh4c3s55y3zqc48cp1gcpwwjg444yfh1bghhhb9ni1xkh5i" "05f6359a29a6" "nl")
+ ("17jb076320cgkw1ypwmws2vjxsqlv2ww8aaisa3j334vbrw1m4zx" "50b41a1ddded" "nn-NO")
+ ("1y840j0v5zdgj94cbacy6j1snf44rynmzxq3yk8i26arcar62akl" "a6a138531a44" "oc")
+ ("0jq1hq4xhqxpa26r8pb1bgbaljgfkhn9l6p5pbnslkllpbh70q6l" "e70a3afaef25" "pa-IN")
+ ("1hih138skwy2gb8q10ngg6zalrk3aa3d549mg79gqzxbi5zy19fw" "e035f33389eb" "pl")
+ ("1hhif4hx4k351wm1bzykzycfzb5q8msxmiwh5r1cy32rh8wkxwhh" "54098495f37f" "pt-BR")
+ ("0gkjs12rxjml1m3mljskpz1gr6aph0c31nwpwdqybfg54w9qslib" "3fdf021f624e" "pt-PT")
+ ("0anyvwd9v6mr8y3ww33s6qnxkawqn5lz65vrxx3m3kzky63ai1xk" "794f9374eb87" "rm")
+ ("1p4drj25gsfv7lwgm5saazh38iqrh53952n8i4bmxpn0nadbm2n5" "71ce18bcf6cc" "ro")
+ ("17yssf4axd3zvncl4ka4wkfnwcn0z0arp3390vb9cps67na29p36" "3a9587227699" "ru")
+ ("0xk6rksspcw1222v4rgk5a6gzrpx64k29hm7p9qkqwd70s34yj46" "c020582a72ce" "si")
+ ("1ax5ibydyn7sj208r66zcxlcr8dxdqrw28vqyjif4jx583rp4lfp" "745a699b7f51" "sk")
+ ("13rin7hm1dv8g0hbcv8mp2hiwpk1k5bhzvkqpqajkkik4lx523mc" "8e437e2351ef" "sl")
+ ("0yh5jkl5zw3f7x1w2w6zfj3dyvcl4wj1zv4di7qsq2nl2yyizf7x" "2d99e2eff94f" "son")
+ ("0vzq7s27jsdbw5k59wfykysg1kd8w229ab5d4zjdf30l59igkahh" "69bbdf07bd80" "sq")
+ ("1mwivvs8vrk6vjq6i33kwlrlisra7dy35521ayps9p2rz2dll4rr" "215df5c5125c" "sr")
+ ("0g97yz1rg5cfflj8vvq3sqliyvm06x818z9yldfh5rjg1y6n9fjd" "8be00a1a50d4" "sv-SE")
+ ("0ii02jn3lh2i6d0s95whx9aj6w3x8axc7w1rlzj0lc2s9n52krz3" "170a84339dbe" "ta")
+ ("1ss7symad2crapxjqc0xhc0n17l79r5vf7flvkgk7npjky4vb7nv" "72a79a304f7f" "te")
+ ("11iqmg8zamgscnvs4n2xpw3g9azn6w38qs313wiwm86pyx6694ss" "8e91ce3064c5" "th")
+ ("1zgkvn9flb8by62ip9r3gmpgxwgkww1zhml5mwa0djq3ppfdgi1c" "0f914d0cda56" "tl")
+ ("1filkhdak6dbrd83q602x1qw1703nlm53nm9gcyab8s16gsx6ylz" "62ca6a8eaeba" "tr")
+ ("0cgagdy0ixprk3knczdmkqxkmx4ybmshhh0956kxbd0iab0dfcf6" "f110ccac4cde" "trs")
+ ("1f1ghk67zwnwc5x3nk82vcv94nf8glngkfya1hg074q3088sj9pa" "56c0102d5f1c" "uk")
+ ("0iyw1b2jjylkdwxv9sxvj4ikxl64sx612b2dvvmf1di8bw86w74r" "7d53bce5ae98" "ur")
+ ("1q83cp5pfgs8l03zirwi8r5qp8qyh4zvxdx1ilgaqqlyg42yql7c" "9b500e1a054d" "uz")
+ ("1d4nkybz2hk64ay04k965b9lc5nhhpmzcs5ww3b6q4n93rf9c2z7" "2a000025928a" "vi")
+ ("1cnrsfnyl3sw3sxsggmjwydvphb2diy0vzknvxdhpnvq3ln18hga" "74724087c25b" "xh")
+ ("1j6l66v1xw27z8w78mpsnmqgv8m277mf4r0hgqcrb4zx7xc2vqyy" "527e5e090608" "zh-CN")
+ ("1frwx35klpyz3sdwrkz7945ivb2dwaawhhyfnz4092h9hn7rc4ky" "6cd366ad2947" "zh-TW")))
(define* (computed-origin-method gexp-promise hash-algo hash
#:optional (name "source")
@@ -556,8 +550,8 @@ from forcing GEXP-PROMISE."
#:system system
#:guile-for-build guile)))
-(define %icecat-version "68.12.0-guix0-preview1")
-(define %icecat-build-id "20200825000000") ;must be of the form YYYYMMDDhhmmss
+(define %icecat-version "78.3.1-guix0-preview1")
+(define %icecat-build-id "20200926000000") ;must be of the form YYYYMMDDhhmmss
;; 'icecat-source' is a "computed" origin that generates an IceCat tarball
;; from the corresponding upstream Firefox ESR tarball, using the 'makeicecat'
@@ -579,11 +573,11 @@ from forcing GEXP-PROMISE."
"firefox-" upstream-firefox-version ".source.tar.xz"))
(sha256
(base32
- "1k17pi4zh9hrvkzbw4rzzw879a15hpvwriylp75wl22rl7r2nsdf"))))
+ "1savwk91vhvg096w289xwpjvqbbd2ibfad90081hirlzd1kpvljz"))))
- (upstream-icecat-base-version "68.12.0") ; maybe older than base-version
+ (upstream-icecat-base-version "78.3.1") ; maybe older than base-version
;;(gnuzilla-commit (string-append "v" upstream-icecat-base-version))
- (gnuzilla-commit "15a7c3d991a670b6489d4f432b52a188358f4ca5")
+ (gnuzilla-commit "cd2af837fce69145effef83def6993d244887b03")
(gnuzilla-source
(origin
(method git-fetch)
@@ -595,12 +589,16 @@ from forcing GEXP-PROMISE."
(string-take gnuzilla-commit 8)))
(sha256
(base32
- "0n7p067yay413iy0gzprz0xrdkcxj5f8ywhkcghhhzw1nwajckba"))))
+ "0266gp8vs4avlfdnr8dj7b47msxv1vkd0xpnifp04v4scvgj0yaj"))))
- (makeicecat-patch
- (local-file (search-patch "icecat-makeicecat.patch")))
+ ;; 'search-patch' returns either a valid file name or #f, so wrap it
+ ;; in 'assume-valid-file-name' to avoid 'local-file' warnings.
(gnuzilla-fixes-patch
- (local-file (search-patch "icecat-use-older-reveal-hidden-html.patch"))))
+ (local-file (assume-valid-file-name
+ (search-patch "icecat-use-older-reveal-hidden-html.patch"))))
+ (makeicecat-patch
+ (local-file (assume-valid-file-name
+ (search-patch "icecat-makeicecat.patch")))))
(origin
(method computed-origin-method)
@@ -645,9 +643,9 @@ from forcing GEXP-PROMISE."
(with-directory-excursion "/tmp/gnuzilla"
(make-file-writable "makeicecat")
(invoke "patch" "--force" "--no-backup-if-mismatch"
- "-p1" "--input" #+makeicecat-patch)
- (invoke "patch" "--force" "--no-backup-if-mismatch"
"-p1" "--input" #+gnuzilla-fixes-patch)
+ (invoke "patch" "--force" "--no-backup-if-mismatch"
+ "-p1" "--input" #+makeicecat-patch)
(patch-shebang "makeicecat")
(substitute* "makeicecat"
(("^FFMAJOR=(.*)" all ffmajor)
@@ -738,16 +736,16 @@ from forcing GEXP-PROMISE."
("glib" ,glib)
("gtk+" ,gtk+)
("gtk+-2" ,gtk+-2)
- ("graphite2" ,graphite2)
+ ;; UNBUNDLE-ME! ("graphite2" ,graphite2)
("pango" ,pango)
("freetype" ,freetype)
- ("harfbuzz" ,harfbuzz)
+ ;; UNBUNDLE-ME! ("harfbuzz" ,harfbuzz)
("libcanberra" ,libcanberra)
("libgnome" ,libgnome)
("libjpeg-turbo" ,libjpeg-turbo)
- ("libogg" ,libogg)
- ;; ("libtheora" ,libtheora) ; wants theora-1.2, not yet released
- ("libvorbis" ,libvorbis)
+ ;; UNBUNDLE-ME! ("libogg" ,libogg)
+ ;; UNBUNDLE-ME! ("libtheora" ,libtheora) ; wants theora-1.2, not yet released
+ ;; UNBUNDLE-ME! ("libvorbis" ,libvorbis)
("libxft" ,libxft)
("libevent" ,libevent)
("libxinerama" ,libxinerama)
@@ -756,8 +754,8 @@ from forcing GEXP-PROMISE."
("libxt" ,libxt)
("libffi" ,libffi)
("ffmpeg" ,ffmpeg)
- ("libvpx" ,libvpx)
- ("icu4c" ,icu4c)
+ ;; UNBUNDLE-ME! ("libvpx" ,libvpx)
+ ("icu4c" ,icu4c-67)
("pixman" ,pixman)
("pulseaudio" ,pulseaudio)
("mesa" ,mesa)
@@ -767,11 +765,11 @@ from forcing GEXP-PROMISE."
;; UNBUNDLE-ME! ("nspr" ,nspr)
;; UNBUNDLE-ME! ("nss" ,nss)
("shared-mime-info" ,shared-mime-info)
- ("sqlite" ,sqlite)
- ("startup-notification" ,startup-notification)
+ ;; UNBUNDLE-ME! ("sqlite" ,sqlite)
("unzip" ,unzip)
("zip" ,zip)
- ("zlib" ,zlib)))
+ ;; UNBUNDLE-ME! ("zlib" ,zlib)
+ ))
(native-inputs
;; The following patches are specific to the Guix packaging of IceCat,
;; and therefore we prefer to leave them out of 'source', which should be
@@ -787,13 +785,13 @@ from forcing GEXP-PROMISE."
("patch" ,(canonical-package patch))
- ("rust" ,rust)
- ("cargo" ,rust "cargo")
- ("rust-cbindgen" ,rust-cbindgen)
+ ("rust" ,rust-1.41)
+ ("cargo" ,rust-1.41 "cargo")
+ ("rust-cbindgen" ,rust-cbindgen-0.14)
("llvm" ,llvm)
("clang" ,clang)
("perl" ,perl)
- ("node" ,node)
+ ("node" ,node-10.22)
("python" ,python)
("python-2" ,python-2)
("python2-pysqlite" ,python2-pysqlite)
@@ -812,22 +810,21 @@ from forcing GEXP-PROMISE."
;; practice somehow. See <http://hydra.gnu.org/build/378133>.
#:validate-runpath? #f
- #:configure-flags `("--enable-default-toolkit=cairo-gtk3"
+ #:configure-flags `("--enable-default-toolkit=cairo-gtk3-wayland"
"--with-distribution-id=org.gnu"
- ;; Do not require addons in the global app
- ;; directory to be signed by Mozilla.
- "--with-unsigned-addon-scopes=app"
+ ;; Do not require addons in the global app or
+ ;; system directories to be signed by Mozilla.
+ "--with-unsigned-addon-scopes=app,system"
+ "--allow-addon-sideload"
- "--enable-startup-notification"
"--enable-pulseaudio"
"--disable-tests"
"--disable-updater"
"--disable-crashreporter"
"--disable-eme"
- "--disable-gconf"
;; Building with debugging symbols takes ~5GiB, so
;; disable it.
@@ -853,22 +850,22 @@ from forcing GEXP-PROMISE."
"--enable-official-branding"
;; Avoid bundled libraries.
- "--with-system-zlib"
- "--with-system-bz2"
"--with-system-jpeg" ; must be libjpeg-turbo
+ ;; UNBUNDLE-ME! "--with-system-zlib"
+ ;; UNBUNDLE-ME! "--with-system-bz2"
;; UNBUNDLE-ME! "--with-system-libevent"
;; UNBUNDLE-ME! "--with-system-ogg"
;; UNBUNDLE-ME! "--with-system-vorbis"
;; UNBUNDLE-ME! "--with-system-theora" ; wants theora-1.2, not yet released
;; UNBUNDLE-ME! "--with-system-libvpx"
"--with-system-icu"
-
+
;; See <https://bugs.gnu.org/32833>
;; and related comments in the
;; 'remove-bundled-libraries' phase below.
;; UNBUNDLE-ME! "--with-system-nspr"
;; UNBUNDLE-ME! "--with-system-nss"
-
+
;; UNBUNDLE-ME! "--with-system-harfbuzz"
;; UNBUNDLE-ME! "--with-system-graphite2"
"--enable-system-pixman"
@@ -951,8 +948,8 @@ from forcing GEXP-PROMISE."
;; * speex
;;
"modules/freetype2"
- "modules/zlib"
;; "media/libjpeg" ; needed for now, because media/libjpeg/moz.build is referenced from config/external/moz.build
+ ;; UNBUNDLE-ME! "modules/zlib"
;; UNBUNDLE-ME! "ipc/chromium/src/third_party/libevent"
;; UNBUNDLE-ME! "media/libvpx"
;; UNBUNDLE-ME! "media/libogg"
@@ -1017,10 +1014,31 @@ from forcing GEXP-PROMISE."
(lambda _
(use-modules (guix build cargo-utils))
(let ((null-hash "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"))
- (substitute* '("Cargo.lock" "gfx/wr/Cargo.lock")
- (("(\"checksum .* = )\".*\"" all name)
- (string-append name "\"" null-hash "\"")))
- (generate-all-checksums "third_party/rust"))
+ (for-each (lambda (file)
+ (format #t "patching checksums in ~a~%" file)
+ (substitute* file
+ (("^checksum = \".*\"")
+ (string-append "checksum = \"" null-hash "\""))))
+ (find-files "." "Cargo.lock$"))
+ (for-each generate-all-checksums
+ '("services"
+ "js"
+ "third_party/rust"
+ "dom/media"
+ "dom/webauthn"
+ "toolkit"
+ "gfx"
+ "storage"
+ "modules"
+ "xpcom/rust"
+ "media"
+ "mozglue/static/rust"
+ "netwerk"
+ "remote"
+ "intl"
+ "servo"
+ "security/manager/ssl"
+ "build")))
#t))
(replace 'configure
;; configure does not work followed by both "SHELL=..." and
@@ -1120,6 +1138,10 @@ from forcing GEXP-PROMISE."
(libxscrnsaver-lib (string-append libxscrnsaver "/lib")))
(wrap-program (car (find-files lib "^icecat$"))
`("XDG_DATA_DIRS" prefix (,gtk-share))
+ ;; The following line is commented out because the icecat
+ ;; package on guix has been observed to be unstable when
+ ;; using wayland, and the bundled extensions stop working.
+ ;; `("MOZ_ENABLE_WAYLAND" = ("1"))
`("LD_LIBRARY_PATH" prefix (,pulseaudio-lib ,mesa-lib ,libxscrnsaver-lib)))
#t))))))
(home-page "https://www.gnu.org/software/gnuzilla/")
@@ -1129,7 +1151,7 @@ from forcing GEXP-PROMISE."
software, which does not recommend non-free plugins and addons. It also
features built-in privacy-protecting features.
-WARNING: IceCat 68 has not yet been released by the upstream IceCat project.
+WARNING: IceCat 78 has not yet been released by the upstream IceCat project.
This is a preview release, and does not currently meet the privacy-respecting
standards of the IceCat project.")
(license license:mpl2.0) ;and others, see toolkit/content/license.html
@@ -1139,11 +1161,11 @@ standards of the IceCat project.")
(cpe-version . ,(first (string-split version #\-)))))))
;; Update this together with icecat!
-(define %icedove-build-id "20200825000000") ;must be of the form YYYYMMDDhhmmss
+(define %icedove-build-id "20201007000000") ;must be of the form YYYYMMDDhhmmss
(define-public icedove
(package
(name "icedove")
- (version "68.12.0")
+ (version "78.3.2")
(source icecat-source)
(properties
`((cpe-name . "thunderbird_esr")))
@@ -1169,10 +1191,15 @@ standards of the IceCat project.")
(lambda _
(use-modules (guix build cargo-utils))
(let ((null-hash "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"))
- (substitute* '("Cargo.lock" "gfx/wr/Cargo.lock")
- (("(\"checksum .* = )\".*\"" all name)
- (string-append name "\"" null-hash "\"")))
- (generate-all-checksums "third_party/rust"))
+ (for-each (lambda (file)
+ (format #t "patching checksums in ~a~%" file)
+ (substitute* file
+ (("^checksum = \".*\"")
+ (string-append "checksum = \"" null-hash "\""))))
+ (find-files "." "Cargo.lock$"))
+ (for-each generate-all-checksums
+ '("third_party/rust"
+ "toolkit/library/rust")))
#t))
;; Fixes issue where each installation directory generates its own profile.
;; See e.g. https://trac.torproject.org/projects/tor/ticket/31457
@@ -1214,12 +1241,10 @@ standards of the IceCat project.")
(("mozilla.org") "guix.gnu.org")))
;; Remove other mentions of Thunderbird in user-visible text.
(with-directory-excursion "comm/mail/base/content"
- (substitute* '("newInstallPage.xhtml"
- "overrides/app-license-name.html"
- "newInstall.xul")
+ (substitute* '("overrides/app-license-name.html")
(("Thunderbird") "Icedove")))
(with-directory-excursion "comm/mail/components/"
- (substitute* '("mailGlue.js"
+ (substitute* '("MailGlue.jsm"
"extensions/schemas/addressBook.json"
"extensions/schemas/tabs.json"
"extensions/schemas/cloudFile.json"
@@ -1229,14 +1254,9 @@ standards of the IceCat project.")
"im/messages/mail/Info.plist"
"enterprisepolicies/moz.build"
"enterprisepolicies/helpers/moz.build"
- "enterprisepolicies/schemas/moz.build"
- "preferences/chat.inc.xul")
+ "enterprisepolicies/schemas/moz.build")
(("Thunderbird") "Icedove")))
- (substitute* "comm/calendar/lightning/lightning-packager.mk"
- (("ifeq \\(thunderbird")
- "ifeq (icedove"))
(substitute* '("comm/mailnews/base/prefs/content/accountUtils.js"
- "comm/mailnews/extensions/newsblog/content/feed-subscriptions.js"
"comm/common/src/customizeToolbar.js")
(("AppConstants.MOZ_APP_NAME (.)= \"thunderbird" _ e)
(format #f "AppConstants.MOZ_APP_NAME ~a= \"icedove" e)))
@@ -1309,8 +1329,7 @@ standards of the IceCat project.")
"ac_add_options --disable-debug\n"
"ac_add_options --disable-debug-symbols\n"
"ac_add_options --disable-elf-hack\n"
- "ac_add_options --disable-gconf\n"
- "ac_add_options --disable-ion\n"
+ "ac_add_options --disable-jit\n"
"ac_add_options --disable-necko-wifi\n"
"ac_add_options --disable-official-branding\n"
"ac_add_options --disable-tests\n"
@@ -1318,16 +1337,13 @@ standards of the IceCat project.")
"ac_add_options --disable-webrtc\n"
"ac_add_options --enable-application=comm/mail\n"
"ac_add_options --enable-calendar\n"
- "ac_add_options --enable-content-sandbox\n"
"ac_add_options --enable-default-toolkit=\"cairo-gtk3\"\n"
"ac_add_options --enable-optimize\n"
"ac_add_options --enable-pulseaudio\n"
"ac_add_options --enable-release\n"
- "ac_add_options --enable-startup-notification\n"
"ac_add_options --enable-strip\n"
"ac_add_options --enable-system-ffi\n"
"ac_add_options --enable-system-pixman\n"
- "ac_add_options --enable-system-sqlite\n"
"ac_add_options --prefix=" out "\n"
"ac_add_options --with-clang-path=" (assoc-ref %build-inputs "clang") "/bin/clang\n"
"ac_add_options --with-distribution-id=org.gnu\n"
@@ -1398,7 +1414,7 @@ standards of the IceCat project.")
("gtk+" ,gtk+)
("gtk+-2" ,gtk+-2)
("hunspell" ,hunspell)
- ("icu4c" ,icu4c)
+ ("icu4c" ,icu4c-67)
("libcanberra" ,libcanberra)
("libevent" ,libevent)
("libffi" ,libffi)
@@ -1429,28 +1445,28 @@ standards of the IceCat project.")
;; in the Thunderbird release tarball. We don't use the release
;; tarball because it duplicates the Icecat sources and only adds the
;; "comm" directory, which is provided by this repository.
- ,(let ((changeset "b41cdff70b185358d9c4c1d4a36cfad15a24f001"))
+ ,(let ((changeset "6ee0e0ff64f4ccda9c478426d0b5d15cd583f8e6"))
(origin
(method hg-fetch)
(uri (hg-reference
- (url "https://hg.mozilla.org/releases/comm-esr68")
+ (url "https://hg.mozilla.org/releases/comm-esr78")
(changeset changeset)))
(file-name (string-append "thunderbird-" version "-checkout"))
(sha256
(base32
- "1xvky8p5r41mxdyg9amydy94p51wmmdwdz0zq2vzspr9viixf7xm")))))
+ "0w8p35x53g5anck69xnpn688600n2pyx9c7y640szl1ssdsgch82")))))
("autoconf" ,autoconf-2.13)
- ("cargo" ,rust "cargo")
+ ("cargo" ,rust-1.41 "cargo")
("clang" ,clang)
("llvm" ,llvm)
("nasm" ,nasm)
- ("node" ,node)
+ ("node" ,node-10.22)
("perl" ,perl)
("pkg-config" ,pkg-config)
("python" ,python)
("python2" ,python-2.7)
- ("rust" ,rust)
- ("rust-cbindgen" ,rust-cbindgen)
+ ("rust" ,rust-1.41)
+ ("rust-cbindgen" ,rust-cbindgen-0.14)
("which" ,which)
("yasm" ,yasm)))
(home-page "https://www.thunderbird.net")
diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index 8723592b51..0c9b269c2a 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -12,13 +12,16 @@
;;; Copyright © 2018 Tomáš Čech <sleep_walker@gnu.org>
;;; Copyright © 2018 Pierre-Antoine Rouby <pierre-antoine.rouby@inria.fr>
;;; Copyright © 2018 Pierre Neidhardt <mail@ambrevar.xyz>
-;;; Copyright @ 2018, 2019, 2020 Katherine Cox-Buday <cox.katherine.e@gmail.com>
-;;; Copyright @ 2019 Giovanni Biscuolo <g@xelera.eu>
-;;; Copyright @ 2019, 2020 Alex Griffin <a@ajgrf.com>
+;;; Copyright © 2018, 2019, 2020 Katherine Cox-Buday <cox.katherine.e@gmail.com>
+;;; Copyright © 2019 Giovanni Biscuolo <g@xelera.eu>
+;;; Copyright © 2019, 2020 Alex Griffin <a@ajgrf.com>
;;; Copyright © 2019, 2020 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2020 Jack Hill <jackhill@jackhill.us>
;;; Copyright © 2020 Jakub Kądziołka <kuba@kadziolka.net>
;;; Copyright © 2020 Nicolas Goaziou <mail@nicolasgoaziou.com>
+;;; Copyright © 2020 Ryan Prior <rprior@protonmail.com>
+;;; Copyright © 2020 Marius Bakke <marius@gnu.org>
+;;; Copyright © 2020 raingloom <raingloom@riseup.net>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -146,6 +149,11 @@
("os/os_test.go" "(.+)(TestHostname.+)")
("time/format_test.go" "(.+)(TestParseInSydney.+)")
+ ;; XXX: This test fails with tzdata 2020b and newer. Later
+ ;; Go releases work fine, so just disable this for the
+ ;; bootstrap Go.
+ ("time/example_test.go" "(.+)(ExampleParseInLocation.+)")
+
("os/exec/exec_test.go" "(.+)(TestEcho.+)")
("os/exec/exec_test.go" "(.+)(TestCommandRelativeName.+)")
("os/exec/exec_test.go" "(.+)(TestCatStdin.+)")
@@ -559,6 +567,30 @@ per-goroutine.")
(home-page "https://github.com/jtolds/gls")
(license license:expat)))
+(define-public go-github-com-saracen-walker
+ (package
+ (name "go-github-com-saracen-walker")
+ (version "0.1.1")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/saracen/walker")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1rq1lrp99lx7k1ysbfznn4c1iagnxdhb4lnnklsadnnzi3gvygqz"))))
+ (build-system go-build-system)
+ (arguments
+ `(#:import-path "github.com/saracen/walker"))
+ (inputs
+ `(("go-golang-org-x-sync" ,go-golang-org-x-sync)))
+ (home-page "https://github.com/saracen/walker")
+ (synopsis "Faster, parallel version of Go's filepath.Walk")
+ (license license:expat)
+ (description "The @code{walker} function is a faster, parallel version, of
+@code{filepath.Walk}")))
+
(define-public go-github-com-tj-docopt
(package
(name "go-github-com-tj-docopt")
@@ -741,9 +773,39 @@ for the Go language.")
processing.")
(license license:bsd-3))))
+(define-public go-golang-org-x-sync
+ (let ((commit "6e8e738ad208923de99951fe0b48239bfd864f28")
+ (revision "1"))
+ (package
+ (name "go-golang-org-x-sync")
+ (version (git-version "0.0.0" revision commit))
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://go.googlesource.com/sync")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1avk27pszd5l5df6ff7j78wgla46ir1hhy2jwfl9a3c0ys602yx9"))))
+ (build-system go-build-system)
+ (arguments
+ `(#:import-path "golang.org/x/sync"
+ #:tests? #f
+ ;; Source-only package
+ #:phases
+ (modify-phases %standard-phases
+ (delete 'build))))
+ (synopsis "Additional Go concurrency primitives")
+ (description "This package provides Go concurrency primitives in addition
+to the ones provided by the language and “sync” and “sync/atomic”
+packages.")
+ (home-page "https://go.googlesource.com/sync/")
+ (license license:bsd-3))))
+
(define-public go-golang-org-x-sys
- (let ((commit "c709ea063b76879dc9915358f55d4d77c16ab6d5")
- (revision "6"))
+ (let ((commit "05986578812163b26672dabd9b425240ae2bb0ad")
+ (revision "7"))
(package
(name "go-golang-org-x-sys")
(version (git-version "0.0.0" revision commit))
@@ -755,7 +817,7 @@ processing.")
(file-name (git-file-name name version))
(sha256
(base32
- "15nq53a6kcqchng4j0d1pjw0m6hny6126nhjdwqw5n9dzh6a226d"))))
+ "1q2rxb6z5l6pmlckjsz2l0b8lw7bqgk6frhzbmi1dv0y5irb2ka7"))))
(build-system go-build-system)
(arguments
`(#:import-path "golang.org/x/sys"
@@ -2822,7 +2884,7 @@ cross-compilation.")
(synopsis "Walk a value in Go using reflection")
(description "reflectwalk is a Go library for \"walking\" a value in Go
using reflection, in the same way a directory tree can be \"walked\" on the
-filesystem. Walking a complex structure can allow you to do manipulations on
+file system. Walking a complex structure can allow you to do manipulations on
unknown structures such as those decoded from JSON.")
(license license:expat)))
@@ -3295,6 +3357,32 @@ format in Go.")
(home-page "https://github.com/kr/pretty")
(license license:expat)))
+(define-public go-github-com-kylelemons-godebug
+ (package
+ (name "go-github-com-kylelemons-godebug")
+ (version "1.1.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/kylelemons/godebug")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0dkk3friykg8p6wgqryx6745ahhb9z1j740k7px9dac6v5xjp78c"))))
+ (build-system go-build-system)
+ (arguments
+ '(#:import-path "github.com/kylelemons/godebug/diff"
+ #:unpack-path "github.com/kylelemons/godebug"))
+ (home-page "https://github.com/kylelemons/godebug")
+ (synopsis "Pretty printer for Go values.")
+ (description
+ "This package will pretty print a compact representation of a Go data
+structure. It can also produce a much more verbose, one-item-per-line
+representation suitable for computing diffs.")
+ (license license:asl2.0)))
+
(define-public go-github-com-kr-text
(package
(name "go-github-com-kr-text")
@@ -5237,11 +5325,11 @@ errors (warnings).")
(native-inputs
`(("go-gopkg-in-check-v1" ,go-gopkg-in-check-v1)))
(home-page "https://github.com/go-git/go-billy/")
- (synopsis "Filesystem abstraction for Go")
- (description "Billy implements an interface based on the os standard
-library, allowing to develop applications without dependency on the underlying
-storage. Makes it virtually free to implement mocks and testing over
-filesystem operations.")
+ (synopsis "File system abstraction for Go")
+ (description "Billy implements an interface based on the OS's standard
+library to develop applications without depending on the underlying storage.
+This makes it virtually free to implement mocks and testing over
+file system operations.")
(license license:asl2.0)))
(define-public go-github-com-jbenet-go-context
@@ -5656,3 +5744,86 @@ Included are the following:
except that it adds convenience functions that use the fmt package to format
error messages.")
(license license:bsd-3)))
+
+(define-public go-github-com-arceliar-phony
+ (let ((commit "d0c68492aca0bd4b5c5c8e0452c9b4c8af923eaf")
+ (revision "0"))
+ (package
+ (name "go-github-com-arceliar-phony")
+ (version (git-version "0.0.0" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/Arceliar/phony")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0876y0hlb1zh8hn0pxrb5zfdadvaqmqwlr66p19yl2a76galz992"))))
+ (arguments
+ '(#:import-path "github.com/Arceliar/phony"))
+ (build-system go-build-system)
+ (home-page "https://github.com/Arceliar/phony")
+ (synopsis "Very minimal actor model library")
+ (description "Phony is a very minimal actor model library for Go,
+inspired by the causal messaging system in the Pony programming language.")
+ (license license:expat))))
+
+(define-public go-github-com-cheggaaa-pb
+ (package
+ (name "go-github-com-cheggaaa-pb")
+ (version "3.0.4")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/cheggaaa/pb/")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0xhsv9yf3fz918ay6w0d87jnb3hk9vxvi16jk172kqq26x7jixd0"))))
+ (build-system go-build-system)
+ (arguments
+ '(#:import-path "github.com/cheggaaa/pb/"))
+ (propagated-inputs
+ `(("go-github-com-fatih-color" ,go-github-com-fatih-color)
+ ("go-github-com-mattn-go-colorable" ,go-github-com-mattn-go-colorable)
+ ("go-github.com-mattn-go-runewidth" ,go-github.com-mattn-go-runewidth)
+ ("go-golang-org-x-sys" ,go-golang-org-x-sys)))
+ (native-inputs
+ `(("go-github-com-mattn-go-isatty" ,go-github-com-mattn-go-isatty)))
+ (home-page "https://github.com/cheggaaa/pb/")
+ (synopsis "Console progress bar for Go")
+ (description "This package is a Go library that draws progress bars on
+the terminal.")
+ (license license:bsd-3)))
+
+(define-public go-github-com-gologme-log
+ ;; this is the same as v1.2.0, only the LICENSE file changed
+ (let ((commit "720ba0b3ccf0a91bc6018c9967a2479f93f56a55"))
+ (package
+ (name "go-github-com-gologme-log")
+ (version "1.2.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/gologme/log")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0z3gs5ngv2jszp42ypp3ai0pn410v3b2m674g73ma7vsbn2yjk1n"))))
+ (build-system go-build-system)
+ (arguments
+ '(#:import-path "github.com/gologme/log"))
+ (home-page "https://github.com/gologme/log/")
+ (synopsis
+ "Fork of the golang built in log package to add support for levels")
+ (description "This package is a drop in replacement for the built-in Go
+log package. All the functionality of the built-in package still exists and
+is unchanged. This package contains a series of small enhancements and
+additions.")
+ (license license:bsd-3))))
diff --git a/gnu/packages/gps.scm b/gnu/packages/gps.scm
index 92ba884f46..fcb6ffc9bb 100644
--- a/gnu/packages/gps.scm
+++ b/gnu/packages/gps.scm
@@ -151,7 +151,7 @@ between two other data points.")
(define-public gama
(package
(name "gama")
- (version "2.09")
+ (version "2.10")
(source
(origin
(method url-fetch)
@@ -159,7 +159,7 @@ between two other data points.")
version ".tar.gz"))
(sha256
(base32
- "0c1b28frl6109arj09v4zr1xs859krn8871mkvis517g5pb55dc9"))))
+ "14im3ahh849rildvs4qsk009jywf9w84vcmh7w44ajmlwcw7xiys"))))
(build-system gnu-build-system)
(arguments '(#:parallel-tests? #f)) ; race condition
(native-inputs
@@ -179,7 +179,7 @@ coordinates as well as partial support for adjustments in global coordinate syst
(define-public gpxsee
(package
(name "gpxsee")
- (version "7.30")
+ (version "7.34")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -188,7 +188,7 @@ coordinates as well as partial support for adjustments in global coordinate syst
(file-name (git-file-name name version))
(sha256
(base32
- "09gajwqc30r9a2sn972qdx3gx0gki9n0zafq986hn6zsr3z43mfs"))))
+ "0cdq2bqgkcqcyvasnrlgpl97b0kfi65iq2q6yy7dpp9xw4w764b1"))))
(build-system gnu-build-system)
(arguments
'(#:phases
diff --git a/gnu/packages/graph.scm b/gnu/packages/graph.scm
index a307fee808..db390fed5e 100644
--- a/gnu/packages/graph.scm
+++ b/gnu/packages/graph.scm
@@ -121,34 +121,6 @@ more.")
(home-page "https://pypi.org/project/python-igraph/")
(synopsis "Python bindings for the igraph network analysis library")))
-(define-public r-rgraphviz
- (package
- (name "r-rgraphviz")
- (version "2.32.0")
- (source
- (origin
- (method url-fetch)
- (uri (bioconductor-uri "Rgraphviz" version))
- (sha256
- (base32
- "1calpvzgcz6v7s4x6bf35kj83sga95zjp7x87p5d3qnbv7q2wz5y"))))
- (properties `((upstream-name . "Rgraphviz")))
- (build-system r-build-system)
- ;; FIXME: Rgraphviz bundles the sources of an older variant of
- ;; graphviz. It does not build with the latest version of graphviz, so
- ;; we do not add graphviz to the inputs.
- (inputs `(("zlib" ,zlib)))
- (propagated-inputs
- `(("r-graph" ,r-graph)))
- (native-inputs
- `(("pkg-config" ,pkg-config)))
- (home-page "https://bioconductor.org/packages/Rgraphviz")
- (synopsis "Plotting capabilities for R graph objects")
- (description
- "This package interfaces R with the graphviz library for plotting R graph
-objects from the @code{graph} package.")
- (license license:epl1.0)))
-
(define-public r-rbiofabric
(let ((commit "666c2ae8b0a537c006592d067fac6285f71890ac")
(revision "1"))
diff --git a/gnu/packages/graphics.scm b/gnu/packages/graphics.scm
index cf52984183..d0bf577139 100644
--- a/gnu/packages/graphics.scm
+++ b/gnu/packages/graphics.scm
@@ -22,6 +22,7 @@
;;; Copyright © 2020 Nicolas Goaziou <mail@nicolasgoaziou.fr>
;;; Copyright © 2020 Raghav Gururajan <raghavgururajan@disroot.org>
;;; Copyright © 2020 Maxim Cournoyer <maxim.cournoyer@gmail.com>
+;;; Copyright © 2020 Gabriel Arazas <foo.dogsquared@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -614,6 +615,39 @@ NOTE: This older version of Blender is the last release that does not require
OpenGL 3. It is retained for use with older computers.")
(license license:gpl2+)))
+(define-public goxel
+ (package
+ (name "goxel")
+ (version "0.10.6")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/guillaumechereau/goxel")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1wmxy5wfk1xrqgz0y0zcr4vkddylqc70cv4vzk117x6whjnldsm3"))))
+ (build-system gnu-build-system)
+ (arguments
+ '(#:tests? #f
+ #:phases (modify-phases %standard-phases (delete 'configure))
+ #:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out"))
+ "release")))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("gtk3" ,gtk+)
+ ("glfw" ,glfw)
+ ("scons" ,scons)))
+ (home-page "https://goxel.xyz/")
+ (synopsis "Voxel editor")
+ (description
+ "Goxel is a voxel editor that features unlimited scene size, unlimited
+history buffer, 24-bit RGB colors, layers, procedural rendering, ray tracing,
+and export to various formats including the format used by Magicavoxel.")
+ (license license:gpl3+)))
+
(define-public assimp
(package
(name "assimp")
diff --git a/gnu/packages/groff.scm b/gnu/packages/groff.scm
index 3a44497594..0803a2a7f5 100644
--- a/gnu/packages/groff.scm
+++ b/gnu/packages/groff.scm
@@ -3,7 +3,7 @@
;;; Copyright © 2014 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2016 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2017 Ludovic Courtès <ludo@gnu.org>
-;;; Copyright © 2019 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2019, 2020 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2019 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2019 Mathieu Othacehe <m.othacehe@gmail.com>
;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de>
@@ -191,17 +191,21 @@ is usually the formatter of \"man\" documentation pages.")
(build-system gnu-build-system)
(arguments
`(#:test-target "test"
- #:make-flags
- (list (string-append "INSTALLDIR="
- (assoc-ref %outputs "out") "/bin"))
#:phases
(modify-phases %standard-phases
(delete 'configure)
- (add-before 'install 'pre-install
+ (replace 'install
(lambda* (#:key outputs #:allow-other-keys)
- (mkdir-p (string-append (assoc-ref outputs "out")
- "/bin"))
- #t)))))
+ (let ((out (assoc-ref outputs "out")))
+ (install-file "roffit" (string-append out "/bin"))
+ (install-file "roffit.1" (string-append out "/share/man/man1"))
+ #t)))
+ (add-after 'install 'wrap-program
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let ((out (assoc-ref outputs "out")))
+ (wrap-program (string-append out "/bin/roffit")
+ `("PERL5LIB" ":" prefix (,(getenv "PERL5LIB"))))
+ #t))))))
(native-inputs `(("html-tree" ,perl-html-tree))) ; for test
(inputs
`(("perl" ,perl)))
diff --git a/gnu/packages/groovy.scm b/gnu/packages/groovy.scm
index e21c4e3775..c44a17b59e 100644
--- a/gnu/packages/groovy.scm
+++ b/gnu/packages/groovy.scm
@@ -31,7 +31,7 @@
(define java-groovy-bootstrap
(package
(name "java-groovy-bootstrap")
- (version "2.4.15")
+ (version "3.0.5")
(source
(origin
(method git-fetch)
@@ -43,57 +43,69 @@
version)))))
(file-name (git-file-name name version))
(sha256
- (base32 "1q4cplimr18j93zz92kgq8b6wdv0p9svr7cdr47q8b2mbjpd0x3j"))
+ (base32 "00556qxjmcn3a3xhfy6n0zw3d69mnw72vzm2rb6n4ihzkk7579nm"))
(patches
(search-patches "groovy-add-exceptionutilsgenerator.patch"))))
(build-system ant-build-system)
(arguments
`(#:jar-name "groovy.jar"
- #:source-dir "src/main:subprojects/groovy-test/src/main/java"
+ #:source-dir "src/main/java:src/main/antlr2:subprojects/parser-antlr4/src/main/java:src/antlr"
#:test-dir "src/test"
#:tests? #f
- #:jdk ,icedtea-8
+ #:jdk ,openjdk9
#:main-class "groovy.ui.GroovyMain"
#:phases
(modify-phases %standard-phases
- (add-before 'build 'fix-java8
- ;; Fix "Reference to plus is ambiguous"
- (lambda _
- (substitute* "src/main/org/codehaus/groovy/runtime/DefaultGroovyMethods.java"
- (("toList\\(left\\)")
- "(List<T>)toList(left)"))
- #t))
(add-before 'build 'generate-parsers
(lambda _
- (with-directory-excursion "src/main/org/codehaus/groovy/antlr/java"
+ (with-directory-excursion "src/main/antlr2/org/codehaus/groovy/antlr/java"
(invoke "antlr" "java.g"))
- (with-directory-excursion "src/main/org/codehaus/groovy/antlr"
+ (with-directory-excursion "src/main/antlr2/org/codehaus/groovy/antlr"
(mkdir "parser")
(with-directory-excursion "parser"
(invoke "antlr" "../groovy.g")))
+ (invoke "antlr4" "-lib" "src/antlr"
+ "-package" "org.apache.groovy.parser.antlr4"
+ "-visitor" "-no-listener" "src/antlr/GroovyLexer.g4")
+ (invoke "antlr4" "-lib" "src/antlr"
+ "-package" "org.apache.groovy.parser.antlr4"
+ "-visitor" "-no-listener" "src/antlr/GroovyParser.g4")
#t))
(add-before 'build 'generate-exception-utils
(lambda _
(invoke "javac" "-cp" (getenv "CLASSPATH")
+ "-source" "1.8" "-target" "1.8"
"config/ant/src/org/codehaus/groovy/ExceptionUtilsGenerator.java")
(invoke "java" "-cp" (string-append (getenv "CLASSPATH")
":config/ant/src")
"org.codehaus.groovy.ExceptionUtilsGenerator"
"build/classes/org/codehaus/groovy/runtime/ExceptionUtils.class")
+ #t))
+ (add-before 'build 'set-source-level
+ (lambda _
+ (substitute* "build.xml"
+ (("<javac") "<javac source=\"1.8\" target=\"1.8\""))
#t)))))
(native-inputs
- `(("java-junit" ,java-junit)
+ `(("antlr2" ,antlr2)
+ ("antlr4" ,java-tunnelvisionlabs-antlr4)
+ ("java-jsr305" ,java-jsr305)
+ ("java-junit" ,java-junit)
("java-hamcrest-core" ,java-hamcrest-core)
- ("antlr2" ,antlr2)
("java-jmock-1" ,java-jmock-1)
("java-xmlunit-legacy" ,java-xmlunit-legacy)))
(inputs
- `(("java-commons-cli" ,java-commons-cli)
- ("java-asm" ,java-asm)
+ `(("java-antlr4-runtime" ,java-tunnelvisionlabs-antlr4-runtime)
+ ("java-antlr4-runtime-annotations"
+ ,java-tunnelvisionlabs-antlr4-runtime-annotations)
+ ("java-asm" ,java-asm-8)
+ ("java-asm-util" ,java-asm-util-8)
("java-classpathx-servletapi" ,java-classpathx-servletapi)
- ("java-xstream" ,java-xstream)
+ ("java-commons-cli" ,java-commons-cli)
("java-jansi" ,java-jansi)
- ("java-jline-2" ,java-jline-2)))
+ ("java-jline-2" ,java-jline-2)
+ ("java-picocli" ,java-picocli)
+ ("java-xstream" ,java-xstream)))
(home-page "http://groovy-lang.org/")
(synopsis "Groovy's java bootstrap")
(description "This package contains the java bootstrap that is used to build
@@ -106,26 +118,25 @@ groovy submodules.")
(name "groovy-bootstrap")
(arguments
`(#:jar-name "groovy.jar"
- #:jdk ,icedtea-8
+ #:jdk ,openjdk9
;Requires groovy-xml and logback-classic which are circular dependencies
#:tests? #f
#:phases
(modify-phases %standard-phases
- (add-before 'build 'fix-java8
- ;; Fix "Reference to plus is ambiguous"
- (lambda _
- (substitute* "src/main/org/codehaus/groovy/runtime/DefaultGroovyMethods.java"
- (("toList\\(left\\)")
- "(List<T>)toList(left)"))
- #t))
(add-before 'build 'generate-parser
(lambda _
- (with-directory-excursion "src/main/org/codehaus/groovy/antlr/java"
+ (with-directory-excursion "src/main/antlr2/org/codehaus/groovy/antlr/java"
(invoke "antlr" "java.g"))
- (with-directory-excursion "src/main/org/codehaus/groovy/antlr"
+ (with-directory-excursion "src/main/antlr2/org/codehaus/groovy/antlr"
(mkdir "parser")
(with-directory-excursion "parser"
(invoke "antlr" "../groovy.g")))
+ (invoke "antlr4" "-lib" "src/antlr"
+ "-package" "org.apache.groovy.parser.antlr4"
+ "-visitor" "-no-listener" "src/antlr/GroovyLexer.g4")
+ (invoke "antlr4" "-lib" "src/antlr"
+ "-package" "org.apache.groovy.parser.antlr4"
+ "-visitor" "-no-listener" "src/antlr/GroovyParser.g4")
#t))
(add-before 'build 'generate-exception-utils
(lambda _
@@ -141,19 +152,19 @@ groovy submodules.")
(mkdir-p "target/classes/org/codehaus/groovy/runtime")
(mkdir-p "target/classes/META-INF")
(invoke "javac" "-cp" (getenv "CLASSPATH")
- "src/main/org/codehaus/groovy/tools/DgmConverter.java")
+ "src/main/java/org/codehaus/groovy/tools/DgmConverter.java")
(invoke "java" "-cp" (string-append (getenv "CLASSPATH")
- ":src/main")
+ ":src/main/java")
"org.codehaus.groovy.tools.DgmConverter")
#t))
(add-before 'build 'copy-resources
(lambda _
- (with-directory-excursion "src/main"
+ (with-directory-excursion "src/main/java"
(for-each (lambda (file)
- (mkdir-p (string-append "../../target/classes/"
+ (mkdir-p (string-append "../../../target/classes/"
(dirname file)))
(copy-file file
- (string-append "../../target/classes/"
+ (string-append "../../../target/classes/"
file)))
(find-files "." ".*.(txt|properties|xml|html)")))
#t))
@@ -162,6 +173,7 @@ groovy submodules.")
(mkdir-p "build/jar")
(apply invoke "java" "-cp" (getenv "CLASSPATH")
"org.codehaus.groovy.tools.FileSystemCompiler"
+ "-cp" (getenv "CLASSPATH")
"-d" "target/classes"
"-j"; joint compilation
(find-files "src/main"
@@ -186,7 +198,7 @@ is used to build the groovy submodules written in groovy.")))
(name "groovy-tests-bootstrap")
(arguments
`(#:jar-name "groovy-tests-bootstrap.jar"
- #:jdk ,icedtea-8
+ #:jdk ,openjdk9
#:tests? #f; no tests
#:phases
(modify-phases %standard-phases
@@ -196,17 +208,20 @@ is used to build the groovy submodules written in groovy.")))
(mkdir-p "build/jar")
(apply invoke "java" "-cp" (getenv "CLASSPATH")
"org.codehaus.groovy.tools.FileSystemCompiler"
+ "-cp" (getenv "CLASSPATH")
"-d" "build/classes"
"-j"; joint compilation
(append
(find-files "src/test" "TestSupport.java")
(find-files "src/test" "HeadlessTestSupport.java")
+ (find-files "src/test" "AstAssert.groovy")
(find-files "src/test" "XmlAssert.java")))
(invoke "jar" "-cf" "build/jar/groovy-tests-bootstrap.jar"
"-C" "build/classes" ".")
#t)))))
(inputs
`(("groovy-test" ,groovy-test)
+ ("groovy-parser-antlr4" ,groovy-parser-antlr4)
,@(package-inputs groovy-bootstrap)))
(native-inputs
`(("groovy-bootstrap" ,groovy-bootstrap)
@@ -215,14 +230,15 @@ is used to build the groovy submodules written in groovy.")))
(description "This package contains three classes required for testing
other groovy submodules.")))
-(define groovy-test
+(define (groovy-subproject name)
(package
(inherit groovy-bootstrap)
- (name "groovy-test")
+ (name name)
(arguments
- `(#:jar-name "groovy-test.jar"
- #:jdk ,icedtea-8
- #:test-dir "subprojects/groovy-test/src/test"
+ `(#:jar-name ,(string-append name ".jar")
+ #:test-dir ,(string-append name "/src/test")
+ #:test-include (list "**/*Test.java" "**/*.groovy")
+ #:jdk ,openjdk9
#:phases
(modify-phases %standard-phases
(replace 'build
@@ -231,839 +247,531 @@ other groovy submodules.")))
(mkdir-p "build/jar")
(apply invoke "java" "-cp" (getenv "CLASSPATH")
"org.codehaus.groovy.tools.FileSystemCompiler"
- "-d" "build/classes" "-j"; joint compilation
- (find-files "subprojects/groovy-test/src/main"
- ".*\\.(groovy|java)$"))
- (invoke "jar" "-cf" "build/jar/groovy-test.jar"
+ "-cp" (getenv "CLASSPATH")
+ "-d" "build/classes" "-j"
+ (append
+ (find-files ,(string-append "subprojects/" name "/src/main/java")
+ ".*\\.(groovy|java)$")
+ (find-files ,(string-append "subprojects/" name "/src/main/groovy")
+ ".*\\.(groovy|java)$")))
+ (invoke "jar" "-cf" ,(string-append "build/jar/" name ".jar")
"-C" "build/classes" ".")
#t))
- (replace 'check
- (lambda _
- (mkdir-p "build/test-classes")
- (substitute* "build.xml"
- (("depends=\"compile-tests\"") "depends=\"\"")
- (("}/java") "}/groovy"))
- (apply invoke "java" "-cp"
- (string-append (getenv "CLASSPATH") ":build/classes")
- "org.codehaus.groovy.tools.FileSystemCompiler"
- "-d" "build/test-classes" "-j"
- (append (find-files "subprojects/groovy-test/src/test"
- ".*\\.(groovy|java)$")))
- (invoke "ant" "check")
- #t)))))
- (native-inputs
- `(("groovy-bootstrap" ,groovy-bootstrap)
- ,@(package-native-inputs java-groovy-bootstrap)))
- (synopsis "Groovy test submodule")
- (description "This package contains the test submodules used to test
-other groovy submodules.")))
-
-(define groovy-xml
- (package
- (inherit groovy-bootstrap)
- (name "groovy-xml")
- (arguments
- `(#:jar-name "groovy-xml.jar"
- #:jdk ,icedtea-8
- #:test-dir "src/test"
- #:phases
- (modify-phases %standard-phases
- (add-before 'configure 'chdir
- (lambda _
- (chdir "subprojects/groovy-xml")
- #t))
- (replace 'build
+ (add-before 'build 'copy-resources
(lambda _
- (mkdir-p "build/classes")
- (mkdir-p "build/jar")
- (apply invoke "java" "-cp" (getenv "CLASSPATH")
- "org.codehaus.groovy.tools.FileSystemCompiler"
- "-d" "build/classes" "-j"; joint compilation
- (find-files "src/main" ".*\\.(groovy|java)$"))
- (invoke "jar" "-cf" "build/jar/groovy-xml.jar"
- "-C" "build/classes" ".")
+ (let ((resource-dir ,(string-append "subprojects/" name
+ "/src/main/resources")))
+ (when (file-exists? resource-dir)
+ (copy-recursively resource-dir "build/classes")))
#t))
(replace 'check
- (lambda _
- (mkdir-p "build/test-classes")
- (substitute* "build.xml"
- (("depends=\"compile-tests\"") "depends=\"\"")
- (("}/java") "}/groovy"))
- (apply invoke "java" "-cp"
- (string-append (getenv "CLASSPATH") ":build/classes")
- "org.codehaus.groovy.tools.FileSystemCompiler"
- "-d" "build/test-classes" "-j"
- (append (find-files "src/test" ".*\\.(groovy|java)$")))
- (invoke "ant" "check")
- #t)))))
- (native-inputs
- `(("groovy-bootstrap" ,groovy-bootstrap)
- ("groovy-test" ,groovy-test)
- ("groovy-tests-bootstrap" ,groovy-tests-bootstrap)
- ,@(package-native-inputs java-groovy-bootstrap)))
- (synopsis "Groovy XML")
- (description "This package contains XML-related utilities for groovy.")))
+ (lambda* (#:key tests? #:allow-other-keys)
+ (when tests?
+ (mkdir-p "build/test-classes")
+ (substitute* "build.xml"
+ (("depends=\"compile-tests\"") "depends=\"\"")
+ (("}/java") "}/"))
+ (apply invoke "java" "-cp"
+ (string-append (getenv "CLASSPATH") ":build/classes")
+ "org.codehaus.groovy.tools.FileSystemCompiler" "-cp"
+ (string-append (getenv "CLASSPATH") ":build/classes")
+ "-d" "build/test-classes" "-j"
+ (append
+ (find-files ,(string-append "subprojects/" name "/src/test/java")
+ ".*\\.(groovy|java)$")
+ (find-files ,(string-append "subprojects/" name "/src/test/groovy")
+ ".*\\.(groovy|java)$")))
+ (invoke "ant" "check"))
+ #t)))))))
+
+(define groovy-parser-antlr4
+ (let ((base (groovy-subproject "parser-antlr4")))
+ (package
+ (inherit base)
+ (name "groovy-parser-antlr4")
+ (arguments
+ `(#:tests? #f
+ ,@(substitute-keyword-arguments (package-arguments base)
+ ((#:phases phases)
+ `(modify-phases ,phases
+ (add-before 'build 'generate-parser
+ (lambda _
+ (invoke "antlr4" "-lib" "src/antlr"
+ "-package" "org.apache.groovy.parser.antlr4"
+ "-visitor" "-no-listener" "src/antlr/GroovyLexer.g4")
+ (invoke "antlr4" "-lib" "src/antlr"
+ "-package" "org.apache.groovy.parser.antlr4"
+ "-visitor" "-no-listener" "src/antlr/GroovyParser.g4")
+ (for-each
+ (lambda (file)
+ (install-file file
+ "subprojects/parser-antlr4/src/main/java/org/apache/groovy/parser/antlr4"))
+ (find-files "src/antlr" ".*.java$"))
+ #t)))))))
+ (native-inputs
+ `(("groovy-bootstrap" ,groovy-bootstrap)
+ ,@(package-native-inputs java-groovy-bootstrap)))
+ (synopsis "Groovy antlr4 parser submodule")
+ (description "This package contains the new parser Parrot for Groovy, which
+is based on Antlr4. The new parser can parse Groovy source code and construct
+the related AST, which is almost identical to the one generated by the old
+parser. Currently all features of Groovy are available."))))
+
+(define groovy-test
+ (let ((base (groovy-subproject "groovy-test")))
+ (package
+ (inherit base)
+ (arguments
+ `(;#:tests? #f
+ ,@(package-arguments base)))
+ (synopsis "Groovy test submodule")
+ (description "This package contains the test submodules used to test
+other groovy submodules."))))
+
+(define groovy-xml
+ (let ((base (groovy-subproject "groovy-xml")))
+ (package
+ (inherit base)
+ (native-inputs
+ `(("groovy-test" ,groovy-test)
+ ("groovy-tests-bootstrap" ,groovy-tests-bootstrap)
+ ,@(package-native-inputs base)))
+ (inputs
+ `(("groovy-parser-antlr4" ,groovy-parser-antlr4)
+ ,@(package-inputs base)))
+ (synopsis "Groovy XML")
+ (description "This package contains XML-related utilities for groovy."))))
(define groovy-templates
- (package
- (inherit groovy-bootstrap)
- (name "groovy-templates")
- (arguments
- `(#:jar-name "groovy-templates.jar"
- #:jdk ,icedtea-8
- #:test-dir "subprojects/groovy-templates/src/test"
- #:tests? #f;Requires spock-framework which is a circular dependency
- #:phases
- (modify-phases %standard-phases
- (replace 'build
- (lambda _
- (mkdir-p "build/classes")
- (mkdir-p "build/jar")
- (apply invoke "java" "-cp" (getenv "CLASSPATH")
- "org.codehaus.groovy.tools.FileSystemCompiler"
- "-d" "build/classes" "-j"; joint compilation
- (find-files "subprojects/groovy-templates/src/main"
- ".*\\.(groovy|java)$"))
- (invoke "jar" "-cf" "build/jar/groovy-templates.jar"
- "-C" "build/classes" ".")
- #t)))))
- (inputs
- `(("groovy-xml" ,groovy-xml)
- ,@(package-inputs groovy-bootstrap)))
- (native-inputs
- `(("groovy-bootstrap" ,groovy-bootstrap)
- ("groovy-test" ,groovy-test)
- ("groovy-tests-bootstrap" ,groovy-tests-bootstrap)
- ,@(package-native-inputs java-groovy-bootstrap)))
- (synopsis "Groovy template engine")
- (description "This package contains a template framework which is
+ (let ((base (groovy-subproject "groovy-templates")))
+ (package
+ (inherit base)
+ (arguments
+ `(#:tests? #f;Requires spock-framework which is a circular dependency
+ ,@(substitute-keyword-arguments (package-arguments base)
+ ((#:phases phases)
+ `(modify-phases ,phases
+ ;; These annotations are used for QA, but do not affect build output.
+ ;; They require findbugs, which we don't have yet.
+ (add-before 'build 'remove-annotation
+ (lambda _
+ (substitute* '("subprojects/groovy-templates/src/main/groovy/groovy/text/StreamingTemplateEngine.java"
+ "subprojects/groovy-templates/src/main/groovy/groovy/text/TemplateEngine.java")
+ (("import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;") "")
+ (("@SuppressFBWarnings.*") ""))
+ #t)))))))
+ (inputs
+ `(("groovy-xml" ,groovy-xml)
+ ,@(package-inputs base)))
+ (native-inputs
+ `(("groovy-bootstrap" ,groovy-bootstrap)
+ ("groovy-test" ,groovy-test)
+ ("groovy-tests-bootstrap" ,groovy-tests-bootstrap)
+ ,@(package-native-inputs base)))
+ (synopsis "Groovy template engine")
+ (description "This package contains a template framework which is
well-suited to applications where the text to be generated follows the form of
-a static template.")))
+a static template."))))
(define groovy-groovydoc
- (package
- (inherit groovy-bootstrap)
- (name "groovy-groovydoc")
- (arguments
- `(#:jar-name "groovy-groovydoc.jar"
- #:jdk ,icedtea-8
- #:test-dir "subprojects/groovy-groovydoc/src/test"
- #:tests? #f; Requires groovy-ant which is a circular dependency
- #:phases
- (modify-phases %standard-phases
- (add-before 'build 'copy-resources
- (lambda _
- (copy-recursively "subprojects/groovy-groovydoc/src/main/resources"
- "build/classes")
- #t))
- (replace 'build
- (lambda _
- (mkdir-p "build/classes")
- (mkdir-p "build/jar")
- (apply invoke "java" "-cp" (getenv "CLASSPATH")
- "org.codehaus.groovy.tools.FileSystemCompiler"
- "-d" "build/classes"
- "-j"; joint compilation
- (find-files "subprojects/groovy-groovydoc/src/main"
- ".*\\.(groovy|java)$"))
- (invoke "jar" "-cf" "build/jar/groovy-groovydoc.jar"
- "-C" "build/classes" ".")
- #t)))))
- (inputs
- `(("groovy-templates" ,groovy-templates)
- ,@(package-inputs groovy-bootstrap)))
- (native-inputs
- `(("groovy-bootstrap" ,groovy-bootstrap)
- ("groovy-test" ,groovy-test)
- ("groovy-tests-bootstrap" ,groovy-tests-bootstrap)
- ,@(package-native-inputs java-groovy-bootstrap)))
- (synopsis "Groovy documentation generation")
- (description "This package contains the groovy documentation generator,
-similar to javadoc.")))
+ (let ((base (groovy-subproject "groovy-groovydoc")))
+ (package
+ (inherit base)
+ (arguments
+ `(#:tests? #f; Requires groovy-ant which is a circular dependency
+ ,@(package-arguments base)))
+ (inputs
+ `(("groovy-templates" ,groovy-templates)
+ ("groovy-parser-antlr4" ,groovy-parser-antlr4)
+ ("java-javaparser" ,java-javaparser)
+ ,@(package-inputs groovy-bootstrap)))
+ (native-inputs
+ `(("groovy-bootstrap" ,groovy-bootstrap)
+ ("groovy-test" ,groovy-test)
+ ("groovy-tests-bootstrap" ,groovy-tests-bootstrap)
+ ,@(package-native-inputs java-groovy-bootstrap)))
+ (synopsis "Groovy documentation generation")
+ (description "This package contains the groovy documentation generator,
+similar to javadoc."))))
(define groovy-ant
- (package
- (inherit groovy-bootstrap)
- (name "groovy-ant")
- (arguments
- `(#:jar-name "groovy-ant.jar"
- #:jdk ,icedtea-8
- #:test-dir "src/test"
- ;; FIXME: Excluding all tests because they fail
- #:test-exclude (list
- "**/GroovyTest.java"
- "**/GroovycTest.java")
- #:phases
- (modify-phases %standard-phases
- (add-before 'configure 'chdir
- (lambda _
- (chdir "subprojects/groovy-ant")
- #t))
- (add-before 'build 'copy-resources
- (lambda _
- (copy-recursively "src/main/resources" "build/classes")
- #t))
- (replace 'build
- (lambda _
- (mkdir-p "build/classes")
- (mkdir-p "build/jar")
- (apply invoke "java" "-cp" (getenv "CLASSPATH")
- "org.codehaus.groovy.tools.FileSystemCompiler"
- "-d" "build/classes" "-j"; joint compilation
- (find-files "src/main" ".*\\.(groovy|java)$"))
- (invoke "jar" "-cf" "build/jar/groovy-ant.jar"
- "-C" "build/classes" ".")
- #t))
- (replace 'check
- (lambda _
- (mkdir-p "build/test-classes")
- (substitute* "build.xml"
- (("depends=\"compile-tests\"") "depends=\"\"")
- (("}/java") "}/groovy"))
- (apply invoke "java" "-cp"
- (string-append (getenv "CLASSPATH") ":build/classes")
- "org.codehaus.groovy.tools.FileSystemCompiler"
- "-d" "build/test-classes" "-j"
- (find-files "src/test" ".*\\.(groovy|java)$"))
- (invoke "ant" "check")
- #t)))))
- (inputs
- `(("groovy-groovydoc" ,groovy-groovydoc)
- ,@(package-inputs groovy-bootstrap)))
- (native-inputs
- `(("groovy-bootstrap" ,groovy-bootstrap)
- ("groovy-xml" ,groovy-xml)
- ("groovy-test" ,groovy-test)
- ("groovy-tests-bootstrap" ,groovy-tests-bootstrap)
- ,@(package-native-inputs java-groovy-bootstrap)))
- (synopsis "Groovy ant tasks")
- (description "This package contains groovy-related ant tasks definitions.")))
+ (let ((base (groovy-subproject "groovy-ant")))
+ (package
+ (inherit base)
+ (arguments
+ `(;#:tests? #f;Requires spock-framework which is a circular dependency
+ #:ant ,ant/java8; ant is actually a dependency of this package, and we need 1.10
+ ,@(substitute-keyword-arguments (package-arguments base)
+ ((#:phases phases)
+ `(modify-phases ,phases
+ ;; These annotations are used for QA, but do not affect build output.
+ ;; They require findbugs, which we don't have yet.
+ (add-before 'build 'remove-annotation
+ (lambda _
+ (substitute* (find-files "subprojects/groovy-ant"
+ ".*.java$")
+ (("import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;") "")
+ (("@SuppressFBWarnings.*") ""))
+ #t)))))))
+ (inputs
+ `(("groovy-groovydoc" ,groovy-groovydoc)
+ ("java-asm-tree" ,java-asm-tree-8)
+ ("java-asm-analysis" ,java-asm-analysis-8)
+ ,@(package-inputs base)))
+ (native-inputs
+ `(("ant-junit" ,ant-junit)
+ ("groovy-bootstrap" ,groovy-bootstrap)
+ ("groovy-xml" ,groovy-xml)
+ ("groovy-test" ,groovy-test)
+ ("groovy-tests-bootstrap" ,groovy-tests-bootstrap)
+ ,@(package-native-inputs base)))
+ (synopsis "Groovy ant tasks")
+ (description "This package contains groovy-related ant tasks definitions."))))
+
+(define groovy-astbuilder
+ (let ((base (groovy-subproject "groovy-astbuilder")))
+ (package
+ (inherit base)
+ (arguments
+ (substitute-keyword-arguments (package-arguments base)
+ ((#:phases phases)
+ `(modify-phases ,phases
+ (delete 'copy-resources)
+ (add-after 'build 'copy-resources
+ (lambda _
+ (copy-recursively
+ "subprojects/groovy-astbuilder/src/main/resources"
+ "build/classes")
+ (substitute* "build.xml"
+ (("depends=\"compile,") "depends=\""))
+ (invoke "ant" "jar")
+ #t))))))
+ (inputs
+ `(("groovy-bootstrap" ,groovy-bootstrap)
+ ,@(package-inputs base)))
+ (native-inputs
+ `(("groovy-test" ,groovy-test)
+ ("groovy-tests-bootstrap" ,groovy-tests-bootstrap)
+ ,@(package-native-inputs base)))
+ (synopsis "Transformation to capture ASTBuilder from code statements")
+ (description "This package contains an AST transformation for use with
+ASTBuilder when building \"from string\" Groovy statements."))))
(define groovy-bsf
- (package
- (inherit groovy-bootstrap)
- (name "groovy-bsf")
- (arguments
- `(#:jar-name "groovy-bsf.jar"
- #:jdk ,icedtea-8
- #:test-dir "src/test"
- #:test-exclude (list
+ (let ((base (groovy-subproject "groovy-bsf")))
+ (package
+ (inherit base)
+ (arguments
+ `(#:test-exclude (list
;; exception from Groovy: org.codehaus.groovy.runtime.InvokerInvocationException:
;; groovy.lang.MissingMethodException: No signature of method:
;; java.util.ArrayList.each() is applicable for argument types:
;; (groovy.script.MapFromList$_doit_closure1) values:
;; [groovy.script.MapFromList$_doit_closure1@17e554d5]
"**/BSFTest.java")
- #:phases
- (modify-phases %standard-phases
- (add-before 'configure 'chdir
- (lambda _
- (chdir "subprojects/groovy-bsf")
- #t))
- (replace 'build
- (lambda _
- (mkdir-p "build/classes")
- (mkdir-p "build/jar")
- (apply invoke "java" "-cp" (getenv "CLASSPATH")
- "org.codehaus.groovy.tools.FileSystemCompiler"
- "-d" "build/classes" "-j"; joint compilation
- (find-files "src/main" ".*\\.(groovy|java)$"))
- (invoke "jar" "-cf" "build/jar/groovy-bsf.jar"
- "-C" "build/classes" ".")
- #t))
- (replace 'check
- (lambda _
- (mkdir-p "build/test-classes")
- (substitute* "build.xml"
- (("depends=\"compile-tests\"") "depends=\"\""))
- (apply invoke "java" "-cp"
- (string-append (getenv "CLASSPATH") ":build/classes")
- "org.codehaus.groovy.tools.FileSystemCompiler"
- "-d" "build/test-classes" "-j"
- (find-files "src/test" ".*\\.(groovy|java)$"))
- (invoke "ant" "check")
- #t)))))
- (inputs
- `(("java-commons-bsf" ,java-commons-bsf)
- ,@(package-inputs groovy-bootstrap)))
- (native-inputs
- `(("groovy-bootstrap" ,groovy-bootstrap)
- ("groovy-test" ,groovy-test)
- ("groovy-tests-bootstrap" ,groovy-tests-bootstrap)
- ("java-commons-logging-minimal" ,java-commons-logging-minimal)
- ,@(package-native-inputs java-groovy-bootstrap)))
- (synopsis "Groovy BSF engine")
- (description "This package defines the BSF engine for using Groovy inside
-any @dfn{Bean Scripting Framework} (BSF) application.")))
+ ,@(package-arguments base)))
+ (inputs
+ `(("java-commons-bsf" ,java-commons-bsf)
+ ,@(package-inputs base)))
+ (native-inputs
+ `(("groovy-bootstrap" ,groovy-bootstrap)
+ ("groovy-test" ,groovy-test)
+ ("groovy-tests-bootstrap" ,groovy-tests-bootstrap)
+ ("java-commons-logging-minimal" ,java-commons-logging-minimal)
+ ,@(package-native-inputs base)))
+ (synopsis "Groovy BSF engine")
+ (description "This package defines the BSF engine for using Groovy inside
+any @dfn{Bean Scripting Framework} (BSF) application."))))
+
+(define groovy-cli-commons
+ (let ((base (groovy-subproject "groovy-cli-commons")))
+ (package
+ (inherit base)
+ (inputs
+ `(("groovy-bootstrap" ,groovy-bootstrap)
+ ,@(package-inputs base)))
+ (native-inputs
+ `(("groovy-test" ,groovy-test)
+ ,@(package-native-inputs base)))
+ (synopsis "Groovy CLI common classes")
+ (description "This package defines common classes for dealing with
+command-line arguments in Groovy."))))
+
+(define groovy-cli-picocli
+ (let ((base (groovy-subproject "groovy-cli-picocli")))
+ (package
+ (inherit base)
+ (inputs
+ `(("groovy-bootstrap" ,groovy-bootstrap)
+ ("java-picocli" ,java-picocli)
+ ,@(package-inputs base)))
+ (native-inputs
+ `(("groovy-test" ,groovy-test)
+ ,@(package-native-inputs base)))
+ (synopsis "Groovy CLI classes that use picocli")
+ (description "This package defines classes for dealing with command-line
+arguments in Groovy using the picocli library."))))
(define groovy-swing
- (package
- (inherit groovy-bootstrap)
- (name "groovy-swing")
- (arguments
- `(#:jar-name "groovy-swing.jar"
- #:jdk ,icedtea-8
- ;; FIXME: tests are not run
- #:test-dir "src/test"
- #:phases
- (modify-phases %standard-phases
- (add-before 'configure 'chdir
- (lambda _
- (chdir "subprojects/groovy-swing")
- #t))
- (replace 'build
- (lambda _
- (mkdir-p "build/classes")
- (mkdir-p "build/jar")
- (apply invoke "java" "-cp" (getenv "CLASSPATH")
- "org.codehaus.groovy.tools.FileSystemCompiler"
- "-d" "build/classes" "-j"; joint compilation
- (find-files "src/main" ".*\\.(groovy|java)$"))
- (invoke "jar" "-cf" "build/jar/groovy-swing.jar"
- "-C" "build/classes" ".")
- #t))
- (replace 'check
- (lambda _
- (mkdir-p "build/test-classes")
- (substitute* "src/test/groovy/groovy/util/GroovySwingTestCase.groovy"
- (("HeadlessTestSupport.headless") "isHeadless()"))
- (substitute* "build.xml"
- (("depends=\"compile-tests\"") "depends=\"\"")
- (("}/java") "}/groovy"))
- (apply invoke "java" "-cp"
- (string-append (getenv "CLASSPATH") ":build/classes")
- "org.codehaus.groovy.tools.FileSystemCompiler"
- "-d" "build/test-classes" "-j"
- (find-files "src/test" ".*\\.(groovy|java)$"))
- (invoke "ant" "check")
- #t)))))
- (native-inputs
- `(("groovy-bootstrap" ,groovy-bootstrap)
- ("groovy-test" ,groovy-test)
- ("groovy-tests-bootstrap" ,groovy-tests-bootstrap)
- ("java-commons-logging-minimal" ,java-commons-logging-minimal)
- ,@(package-native-inputs java-groovy-bootstrap)))
- (synopsis "Groovy graphical library")
- (description "This package contains the groovy bindings to Java Swing, a
-library used to build graphical interfaces.")))
+ (let ((base (groovy-subproject "groovy-swing")))
+ (package
+ (inherit base)
+ (arguments
+ (substitute-keyword-arguments (package-arguments base)
+ ((#:phases phases)
+ `(modify-phases ,phases
+ (add-before 'check 'fix-test
+ (lambda _
+ (substitute*
+ "subprojects/groovy-swing/src/test/groovy/groovy/swing/GroovySwingTestCase.groovy"
+ (("HeadlessTestSupport.headless") "isHeadless()"))
+ #t))))))
+ (native-inputs
+ `(("groovy-bootstrap" ,groovy-bootstrap)
+ ("groovy-test" ,groovy-test)
+ ("groovy-tests-bootstrap" ,groovy-tests-bootstrap)
+ ("java-commons-logging-minimal" ,java-commons-logging-minimal)
+ ,@(package-native-inputs base)))
+ (synopsis "Groovy graphical library")
+ (description "This package contains the groovy bindings to Java Swing, a
+library used to build graphical interfaces."))))
(define groovy-console
- (package
- (inherit groovy-bootstrap)
- (name "groovy-console")
- (arguments
- `(#:jar-name "groovy-console.jar"
- #:jdk ,icedtea-8
- ;; FIXME: tests are not run
- #:test-dir "src/test"
- #:phases
- (modify-phases %standard-phases
- (add-before 'configure 'chdir
- (lambda _
- (chdir "subprojects/groovy-console")
- #t))
- (add-before 'build 'copy-resources
- (lambda _
- (copy-recursively "src/main/resources" "build/classes")
- #t))
- (replace 'build
- (lambda _
- (mkdir-p "build/classes")
- (mkdir-p "build/jar")
- (apply invoke "java" "-cp" (getenv "CLASSPATH")
- "org.codehaus.groovy.tools.FileSystemCompiler"
- "-d" "build/classes" "-j"; joint compilation
- (find-files "src/main" ".*\\.(groovy|java)$"))
- (invoke "jar" "-cf" "build/jar/groovy-console.jar"
- "-C" "build/classes" ".")
- #t))
- (replace 'check
- (lambda _
- (mkdir-p "build/test-classes")
- (substitute* "build.xml"
- (("depends=\"compile-tests\"") "depends=\"\"")
- (("}/java") "}/groovy"))
- (substitute*
- "../groovy-swing/src/test/groovy/groovy/util/GroovySwingTestCase.groovy"
- (("HeadlessTestSupport.headless") "isHeadless()"))
- (apply invoke "java" "-cp"
- (string-append (getenv "CLASSPATH") ":build/classes")
- "org.codehaus.groovy.tools.FileSystemCompiler"
- "-d" "build/test-classes" "-j"
- (append
- (find-files "../groovy-swing/src/test" ".*\\.(groovy|java)$")
- (find-files "src/test" ".*\\.(groovy|java)$")))
- (invoke "ant" "check")
- #t)))))
- (inputs
- `(("groovy-swing" ,groovy-swing)
- ("groovy-templates" ,groovy-templates)
- ,@(package-inputs groovy-bootstrap)))
- (native-inputs
- `(("groovy-bootstrap" ,groovy-bootstrap)
- ("groovy-test" ,groovy-test)
- ("groovy-tests-bootstrap" ,groovy-tests-bootstrap)
- ("java-commons-logging-minimal" ,java-commons-logging-minimal)
- ,@(package-native-inputs java-groovy-bootstrap)))
- (synopsis "Groovy graphical interface")
- (description "This package contains a graphical interface to run groovy.")))
+ (let ((base (groovy-subproject "groovy-console")))
+ (package
+ (inherit base)
+ (arguments
+ (substitute-keyword-arguments (package-arguments base)
+ ((#:phases phases)
+ `(modify-phases ,phases
+ (add-before 'check 'build-swing
+ (lambda _
+ (substitute*
+ "subprojects/groovy-swing/src/test/groovy/groovy/swing/GroovySwingTestCase.groovy"
+ (("HeadlessTestSupport.headless") "isHeadless()"))
+ (mkdir-p "build/test-classes")
+ (apply invoke "java" "-cp"
+ (string-append (getenv "CLASSPATH") ":build/classes")
+ "org.codehaus.groovy.tools.FileSystemCompiler" "-cp"
+ (string-append (getenv "CLASSPATH") ":build/classes")
+ "-d" "build/test-classes" "-j"
+ (append
+ (find-files "subprojects/groovy-swing/src/test/java"
+ ".*\\.(groovy|java)$")
+ (find-files "subprojects/groovy-swing/src/test/groovy"
+ ".*\\.(groovy|java)$")))
+ #t))))))
+ (inputs
+ `(("groovy-swing" ,groovy-swing)
+ ("groovy-templates" ,groovy-templates)
+ ,@(package-inputs base)))
+ (native-inputs
+ `(("groovy-bootstrap" ,groovy-bootstrap)
+ ("groovy-test" ,groovy-test)
+ ("groovy-tests-bootstrap" ,groovy-tests-bootstrap)
+ ("java-commons-logging-minimal" ,java-commons-logging-minimal)
+ ,@(package-native-inputs base)))
+ (synopsis "Groovy graphical interface")
+ (description "This package contains a graphical interface to run groovy."))))
+
+(define groovy-datetime
+ (let ((base (groovy-subproject "groovy-datetime")))
+ (package
+ (inherit base)
+ (native-inputs
+ `(("groovy-test" ,groovy-test)
+ ,@(package-native-inputs base)))
+ (synopsis "Date/Time API for Groovy")
+ (description "This package defines new Groovy methods which appear on
+normal JDK Date/Time API (@code{java.time}) classes inside the Groovy
+environment."))))
+
+(define groovy-dateutil
+ (let ((base (groovy-subproject "groovy-dateutil")))
+ (package
+ (inherit base)
+ (native-inputs
+ `(("groovy-test" ,groovy-test)
+ ,@(package-native-inputs base)))
+ (synopsis "Date and Calendar API for Groovy")
+ (description "This package defines new groovy methods which appear on
+normal JDK Date and Calendar classes inside the Groovy environment."))))
(define groovy-docgenerator
- (package
- (inherit groovy-bootstrap)
- (name "groovy-docgenerator")
- (arguments
- `(#:jar-name "groovy-docgenerator.jar"
- #:jdk ,icedtea-8
- #:tests? #f; No tests
- #:phases
- (modify-phases %standard-phases
- (add-before 'configure 'chdir
- (lambda _
- (chdir "subprojects/groovy-docgenerator")
- #t))
- (add-before 'build 'copy-resources
- (lambda _
- (copy-recursively "src/main/resources" "build/classes")
- #t))
- (replace 'build
- (lambda _
- (mkdir-p "build/classes")
- (mkdir-p "build/jar")
- (apply invoke "java" "-cp" (getenv "CLASSPATH")
- "org.codehaus.groovy.tools.FileSystemCompiler"
- "-d" "build/classes" "-j"; joint compilation
- (find-files "src/main" ".*\\.(groovy|java)$"))
- (invoke "jar" "-cf" "build/jar/groovy-docgenerator.jar"
- "-C" "build/classes" ".")
- #t)))))
- (inputs
- `(("groovy-templates" ,groovy-templates)
- ("groovy-swing" ,groovy-swing)
- ("java-qdox-1.12" ,java-qdox-1.12)
- ,@(package-inputs groovy-bootstrap)))
- (native-inputs
- `(("groovy-bootstrap" ,groovy-bootstrap)
- ("groovy-test" ,groovy-test)
- ("groovy-tests-bootstrap" ,groovy-tests-bootstrap)
- ,@(package-native-inputs java-groovy-bootstrap)))
- (synopsis "Groovy documentation generation")
- (description "This package contains a command line tool to generate
-documentation for groovy applications.")))
+ (let ((base (groovy-subproject "groovy-docgenerator")))
+ (package
+ (inherit base)
+ (arguments
+ `(#:tests? #f; No tests
+ ,@(package-arguments base)))
+ (inputs
+ `(("groovy-templates" ,groovy-templates)
+ ("groovy-swing" ,groovy-swing)
+ ("java-qdox-1.12" ,java-qdox-1.12)
+ ,@(package-inputs base)))
+ (native-inputs
+ `(("groovy-bootstrap" ,groovy-bootstrap)
+ ("groovy-test" ,groovy-test)
+ ("groovy-tests-bootstrap" ,groovy-tests-bootstrap)
+ ,@(package-native-inputs base)))
+ (synopsis "Groovy documentation generation")
+ (description "This package contains a command line tool to generate
+documentation for groovy applications."))))
(define groovy-groovysh
- (package
- (inherit groovy-bootstrap)
- (name "groovy-groovysh")
- (arguments
- `(#:jar-name "groovy-groovysh.jar"
- #:test-dir "src/test"
- #:jdk ,icedtea-8
- #:phases
- (modify-phases %standard-phases
- (add-before 'configure 'chdir
- (lambda _
- (chdir "subprojects/groovy-groovysh")
- #t))
- (add-before 'build 'copy-resources
- (lambda _
- (copy-recursively "src/main/resources" "build/classes")
- #t))
- (replace 'build
- (lambda _
- (mkdir-p "build/classes")
- (mkdir-p "build/jar")
- (apply invoke "java" "-cp" (getenv "CLASSPATH")
- "org.codehaus.groovy.tools.FileSystemCompiler"
- "-d" "build/classes" "-j"; joint compilation
- (find-files "src/main" ".*\\.(groovy|java)$"))
- (invoke "jar" "-cf" "build/jar/groovy-groovysh.jar"
- "-C" "build/classes" ".")
- #t))
- (replace 'check
- (lambda _
- (mkdir-p "build/test-classes")
- (substitute* "build.xml"
- (("depends=\"compile-tests\"") "depends=\"\"")
- (("}/java") "}/groovy"))
- (apply invoke "java" "-cp"
- (string-append (getenv "CLASSPATH") ":build/classes")
- "org.codehaus.groovy.tools.FileSystemCompiler"
- "-d" "build/test-classes" "-j"
- (append (find-files "src/test" ".*\\.(groovy|java)$")))
- (invoke "ant" "check")
- #t)))))
- (inputs
- `(("groovy-xml" ,groovy-xml)
- ("groovy-console" ,groovy-console)
- ,@(package-inputs groovy-bootstrap)))
- (native-inputs
- `(("groovy-bootstrap" ,groovy-bootstrap)
- ("groovy-test" ,groovy-test)
- ("groovy-tests-bootstrap" ,groovy-tests-bootstrap)
- ,@(package-native-inputs java-groovy-bootstrap)))
- (synopsis "Groovy REPL")
- (description "This package contains the Groovy REPL.")))
+ (let ((base (groovy-subproject "groovy-groovysh")))
+ (package
+ (inherit base)
+ (inputs
+ `(("groovy-xml" ,groovy-xml)
+ ("groovy-console" ,groovy-console)
+ ,@(package-inputs base)))
+ (native-inputs
+ `(("groovy-bootstrap" ,groovy-bootstrap)
+ ("groovy-test" ,groovy-test)
+ ("groovy-tests-bootstrap" ,groovy-tests-bootstrap)
+ ,@(package-native-inputs base)))
+ (synopsis "Groovy REPL")
+ (description "This package contains the Groovy REPL."))))
(define groovy-jmx
- (package
- (inherit groovy-bootstrap)
- (name "groovy-jmx")
- (arguments
- `(#:jar-name "groovy-jmx.jar"
- #:test-dir "src/test"
- #:jdk ,icedtea-8
- #:phases
- (modify-phases %standard-phases
- (add-before 'configure 'chdir
- (lambda _
- (chdir "subprojects/groovy-jmx")
- #t))
- (replace 'build
- (lambda _
- (mkdir-p "build/classes")
- (mkdir-p "build/jar")
- (apply invoke "java" "-cp" (getenv "CLASSPATH")
- "org.codehaus.groovy.tools.FileSystemCompiler"
- "-d" "build/classes" "-j"; joint compilation
- (find-files "src/main" ".*\\.(groovy|java)$"))
- (invoke "jar" "-cf" "build/jar/groovy-jmx.jar"
- "-C" "build/classes" ".")
- #t))
- (replace 'check
- (lambda _
- (mkdir-p "build/test-classes")
- (substitute* "build.xml"
- (("depends=\"compile-tests\"") "depends=\"\"")
- (("}/java") "}/groovy"))
- (apply invoke "java" "-cp"
- (string-append (getenv "CLASSPATH") ":build/classes")
- "org.codehaus.groovy.tools.FileSystemCompiler"
- "-d" "build/test-classes" "-j"
- (append (find-files "src/test" ".*\\.(groovy|java)$")))
- (invoke "ant" "check")
- #t)))))
- (native-inputs
- `(("groovy-bootstrap" ,groovy-bootstrap)
- ("groovy-test" ,groovy-test)
- ("groovy-tests-bootstrap" ,groovy-tests-bootstrap)
- ,@(package-native-inputs java-groovy-bootstrap)))
- (synopsis "Groovy JMX extension")
- (description "This package contains the JMX extension of Groovy, for
-management and monitoring of JVM-based solutions.")))
+ (let ((base (groovy-subproject "groovy-jmx")))
+ (package
+ (inherit base)
+ (native-inputs
+ `(("groovy-bootstrap" ,groovy-bootstrap)
+ ("groovy-test" ,groovy-test)
+ ("groovy-tests-bootstrap" ,groovy-tests-bootstrap)
+ ,@(package-native-inputs base)))
+ (synopsis "Groovy JMX extension")
+ (description "This package contains the JMX extension of Groovy, for
+management and monitoring of JVM-based solutions."))))
(define groovy-json
- (package
- (inherit groovy-bootstrap)
- (name "groovy-json")
- (arguments
- `(#:jar-name "groovy-json.jar"
- #:test-dir "src/test"
- #:jdk ,icedtea-8
- #:phases
- (modify-phases %standard-phases
- (add-before 'configure 'chdir
- (lambda _
- (chdir "subprojects/groovy-json")
- #t))
- (replace 'build
- (lambda _
- (mkdir-p "build/classes")
- (mkdir-p "build/jar")
- (apply invoke "java" "-cp" (getenv "CLASSPATH")
- "org.codehaus.groovy.tools.FileSystemCompiler"
- "-d" "build/classes" "-j"; joint compilation
- (find-files "src/main" ".*\\.(groovy|java)$"))
- (invoke "jar" "-cf" "build/jar/groovy-json.jar"
- "-C" "build/classes" ".")
- #t))
- (replace 'check
- (lambda _
- (mkdir-p "build/test-classes")
- (substitute* "build.xml"
- (("depends=\"compile-tests\"") "depends=\"\"")
- (("}/java") "}/groovy"))
- (apply invoke "java" "-cp"
- (string-append (getenv "CLASSPATH") ":build/classes")
- "org.codehaus.groovy.tools.FileSystemCompiler"
- "-d" "build/test-classes" "-j"
- (append (find-files "src/test" ".*\\.(groovy|java)$")))
- (invoke "ant" "check")
- #t)))))
- (native-inputs
- `(("groovy-bootstrap" ,groovy-bootstrap)
- ("groovy-test" ,groovy-test)
- ("groovy-tests-bootstrap" ,groovy-tests-bootstrap)
- ,@(package-native-inputs java-groovy-bootstrap)))
- (synopsis "Groovy JSON")
- (description "This package contains JSON-related utilities for groovy.")))
+ (let ((base (groovy-subproject "groovy-json")))
+ (package
+ (inherit base)
+ (native-inputs
+ `(("groovy-bootstrap" ,groovy-bootstrap)
+ ("groovy-test" ,groovy-test)
+ ("groovy-tests-bootstrap" ,groovy-tests-bootstrap)
+ ,@(package-native-inputs base)))
+ (synopsis "Groovy JSON")
+ (description "This package contains JSON-related utilities for groovy."))))
(define groovy-jsr223
- (package
- (inherit groovy-bootstrap)
- (name "groovy-jsr223")
- (arguments
- `(#:jar-name "groovy-jsr223.jar"
- #:test-dir "src/test"
- #:jdk ,icedtea-8
- #:phases
- (modify-phases %standard-phases
- (add-before 'configure 'chdir
- (lambda _
- (chdir "subprojects/groovy-jsr223")
- #t))
- (add-before 'build 'copy-resources
- (lambda _
- (copy-recursively "src/main/resources" "build/classes")
- #t))
- (replace 'build
- (lambda _
- (mkdir-p "build/classes")
- (mkdir-p "build/jar")
- (apply invoke "java" "-cp" (getenv "CLASSPATH")
- "org.codehaus.groovy.tools.FileSystemCompiler"
- "-d" "build/classes" "-j"; joint compilation
- (find-files "src/main" ".*\\.(groovy|java)$"))
- (invoke "jar" "-cf" "build/jar/groovy-jsr223.jar"
- "-C" "build/classes" ".")
- #t))
- (replace 'check
- (lambda _
- (mkdir-p "build/test-classes")
- (substitute* "build.xml"
- (("depends=\"compile-tests\"") "depends=\"\"")
- (("}/java") "}/groovy"))
- (apply invoke "java" "-cp"
- (string-append (getenv "CLASSPATH") ":build/classes")
- "org.codehaus.groovy.tools.FileSystemCompiler"
- "-d" "build/test-classes" "-j"
- (append (find-files "src/test" ".*\\.(groovy|java)$")))
- (invoke "ant" "check")
- #t)))))
- (native-inputs
- `(("groovy-bootstrap" ,groovy-bootstrap)
- ("groovy-test" ,groovy-test)
- ("groovy-tests-bootstrap" ,groovy-tests-bootstrap)
- ,@(package-native-inputs java-groovy-bootstrap)))
- (synopsis "Groovy's own JSR223 implementation")
- (description "This package contains Groovy's own JSR223 implementation. This
-module is used for interaction between Groovy and Java code.")))
+ (let ((base (groovy-subproject "groovy-jsr223")))
+ (package
+ (inherit base)
+ (native-inputs
+ `(("groovy-bootstrap" ,groovy-bootstrap)
+ ("groovy-test" ,groovy-test)
+ ("groovy-tests-bootstrap" ,groovy-tests-bootstrap)
+ ,@(package-native-inputs base)))
+ (synopsis "Groovy's own JSR223 implementation")
+ (description "This package contains Groovy's own JSR223 implementation. This
+module is used for interaction between Groovy and Java code."))))
(define groovy-nio
- (package
- (inherit groovy-bootstrap)
- (name "groovy-nio")
- (arguments
- `(#:jar-name "groovy-nio.jar"
- #:test-dir "src/test"
- #:jdk ,icedtea-8
- #:tests? #f; Requires spock-framework
- #:phases
- (modify-phases %standard-phases
- (add-before 'configure 'chdir
- (lambda _
- (chdir "subprojects/groovy-nio")
- #t))
- (replace 'build
- (lambda _
- (mkdir-p "build/classes")
- (mkdir-p "build/jar")
- (apply invoke "java" "-cp" (getenv "CLASSPATH")
- "org.codehaus.groovy.tools.FileSystemCompiler"
- "-d" "build/classes" "-j"; joint compilation
- (find-files "src/main" ".*\\.(groovy|java)$"))
- (invoke "jar" "-cf" "build/jar/groovy-nio.jar"
- "-C" "build/classes" ".")
- #t)))))
- (native-inputs
- `(("groovy-bootstrap" ,groovy-bootstrap)
- ("groovy-test" ,groovy-test)
- ("groovy-tests-bootstrap" ,groovy-tests-bootstrap)
- ,@(package-native-inputs java-groovy-bootstrap)))
- (synopsis "Groovy input-output library")
- (description "This package implements an input/output library that extends
-the functionality of the common library of Java.")))
+ (let ((base (groovy-subproject "groovy-nio")))
+ (package
+ (inherit base)
+ (arguments
+ `(#:tests? #f; Require spock-framework
+ ,@(package-arguments base)))
+ (synopsis "Groovy input-output library")
+ (description "This package implements an input/output library that extends
+the functionality of the common library of Java."))))
(define groovy-servlet
- (package
- (inherit groovy-bootstrap)
- (name "groovy-servlet")
- (arguments
- `(#:jar-name "groovy-servlet.jar"
- #:test-dir "src/test"
- #:jdk ,icedtea-8
- #:phases
- (modify-phases %standard-phases
- (add-before 'configure 'chdir
- (lambda _
- (chdir "subprojects/groovy-servlet")
- #t))
- (replace 'build
- (lambda _
- (mkdir-p "build/classes")
- (mkdir-p "build/jar")
- (apply invoke "java" "-cp" (getenv "CLASSPATH")
- "org.codehaus.groovy.tools.FileSystemCompiler"
- "-d" "build/classes"
- "-j"; joint compilation
- (find-files "src/main" ".*\\.(groovy|java)$"))
- (invoke "jar" "-cf" "build/jar/groovy-servlet.jar"
- "-C" "build/classes" ".")
- #t))
- (replace 'check
- (lambda _
- (mkdir-p "build/test-classes")
- (substitute* "build.xml"
- (("depends=\"compile-tests\"") "depends=\"\"")
- (("}/java") "}/groovy"))
- (apply invoke "java" "-cp"
- (string-append (getenv "CLASSPATH") ":build/classes")
- "org.codehaus.groovy.tools.FileSystemCompiler"
- "-d" "build/test-classes"
- "-j"
- (append (find-files "src/test" ".*\\.(groovy|java)$")))
- (invoke "ant" "check")
- #t)))))
- (inputs
- `(("groovy-templates" ,groovy-templates)
- ("groovy-xml" ,groovy-xml)
- ,@(package-inputs groovy-bootstrap)))
- (native-inputs
- `(("groovy-bootstrap" ,groovy-bootstrap)
- ("groovy-json" ,groovy-json)
- ("groovy-test" ,groovy-test)
- ("groovy-tests-bootstrap" ,groovy-tests-bootstrap)
- ,@(package-native-inputs java-groovy-bootstrap)))
- (synopsis "Groovy's servlet implementation")
- (description "This package contains a library to create groovlets, Groovy's
-version of Java servlets.")))
+ (let ((base (groovy-subproject "groovy-servlet")))
+ (package
+ (inherit base)
+ (inputs
+ `(("groovy-templates" ,groovy-templates)
+ ("groovy-xml" ,groovy-xml)
+ ,@(package-inputs base)))
+ (native-inputs
+ `(("groovy-bootstrap" ,groovy-bootstrap)
+ ("groovy-json" ,groovy-json)
+ ("groovy-test" ,groovy-test)
+ ("groovy-tests-bootstrap" ,groovy-tests-bootstrap)
+ ,@(package-native-inputs base)))
+ (synopsis "Groovy's servlet implementation")
+ (description "This package contains a library to create groovlets, Groovy's
+version of Java servlets."))))
(define groovy-sql
- (package
- (inherit groovy-bootstrap)
- (name "groovy-sql")
- (arguments
- `(#:jar-name "groovy-sql.jar"
- #:test-dir "src/test"
- #:tests? #f;TODO: Requires hsqldb
- #:jdk ,icedtea-8
- #:phases
- (modify-phases %standard-phases
- (add-before 'configure 'chdir
- (lambda _
- (chdir "subprojects/groovy-sql")
- #t))
- (replace 'build
- (lambda _
- (mkdir-p "build/classes")
- (mkdir-p "build/jar")
- (apply invoke "java" "-cp" (getenv "CLASSPATH")
- "org.codehaus.groovy.tools.FileSystemCompiler"
- "-d" "build/classes" "-j"; joint compilation
- (find-files "src/main"
- ".*\\.(groovy|java)$"))
- (invoke "jar" "-cf" "build/jar/groovy-sql.jar"
- "-C" "build/classes" ".")
- #t)))))
- (native-inputs
- `(("groovy-bootstrap" ,groovy-bootstrap)
- ("groovy-test" ,groovy-test)
- ("groovy-tests-bootstrap" ,groovy-tests-bootstrap)
- ,@(package-native-inputs java-groovy-bootstrap)))
- (synopsis "Groovy SQL library")
- (description "This package contains a facade over Java's normal JDBC APIs
-providing greatly simplified resource management and result set handling.")))
+ (let ((base (groovy-subproject "groovy-sql")))
+ (package
+ (inherit base)
+ (arguments
+ `(#:tests? #f;TODO: Requires hsqldb
+ ,@(package-arguments base)))
+ (synopsis "Groovy SQL library")
+ (description "This package contains a facade over Java's normal JDBC APIs
+providing greatly simplified resource management and result set handling."))))
(define groovy-testng
- (package
- (inherit groovy-bootstrap)
- (name "groovy-testng")
- (arguments
- `(#:jar-name "groovy-testng.jar"
- #:tests? #f; No tests
- #:jdk ,icedtea-8
- #:phases
- (modify-phases %standard-phases
- (add-before 'configure 'chdir
- (lambda _
- (chdir "subprojects/groovy-testng")
- #t))
- (add-before 'build 'copy-resources
- (lambda _
- (copy-recursively "src/main/resources" "build/classes")
- #t))
- (replace 'build
- (lambda _
- (mkdir-p "build/classes")
- (mkdir-p "build/jar")
- (apply invoke "java" "-cp" (getenv "CLASSPATH")
- "org.codehaus.groovy.tools.FileSystemCompiler"
- "-d" "build/classes"
- "-j"; joint compilation
- (find-files "src/main" ".*\\.(groovy|java)$"))
- (invoke "jar" "-cf" "build/jar/groovy-testng.jar"
- "-C" "build/classes" ".")
- #t)))))
- (native-inputs
- `(("groovy-bootstrap" ,groovy-bootstrap)
- ("groovy-test" ,groovy-test)
- ("groovy-tests-bootstrap" ,groovy-tests-bootstrap)
- ,@(package-native-inputs java-groovy-bootstrap)))
- (synopsis "Groovy testing framework")
- (description "This package contains integration code for running TestNG
-tests in Groovy.")))
+ (let ((base (groovy-subproject "groovy-testng")))
+ (package
+ (inherit base)
+ (native-inputs
+ `(("groovy-bootstrap" ,groovy-bootstrap)
+ ("groovy-test" ,groovy-test)
+ ("groovy-tests-bootstrap" ,groovy-tests-bootstrap)
+ ,@(package-native-inputs base)))
+ (synopsis "Groovy testing framework")
+ (description "This package contains integration code for running TestNG
+tests in Groovy."))))
(define groovy-macro
- (package
- (inherit groovy-bootstrap)
- (name "groovy-macro")
- (arguments
- `(#:jar-name "groovy-macro.jar"
- #:test-dir "src/test"
- #:jdk ,icedtea-8
- #:phases
- (modify-phases %standard-phases
- (add-before 'configure 'chdir
- (lambda _
- (chdir "subprojects/groovy-macro")
- #t))
- (replace 'build
- (lambda _
- (mkdir-p "build/classes")
- (mkdir-p "build/jar")
- (apply invoke "java" "-cp" (getenv "CLASSPATH")
- "org.codehaus.groovy.tools.FileSystemCompiler"
- "-d" "build/classes" "-j"; joint compilation
- (find-files "src/main" ".*\\.(groovy|java)$"))
- (invoke "jar" "-cf" "build/jar/groovy-macro.jar"
- "-C" "build/classes" ".")
- #t))
- (replace 'check
- (lambda _
- (mkdir-p "build/test-classes")
- (substitute* "build.xml"
- (("depends=\"compile-tests\"") "depends=\"\"")
- (("}/java") "}/groovy"))
- (apply invoke "java" "-cp"
- (string-append (getenv "CLASSPATH") ":build/classes")
- "org.codehaus.groovy.tools.FileSystemCompiler"
- "-d" "build/test-classes" "-j"
- (append (find-files "src/test" ".*\\.(groovy|java)$")))
- (invoke "ant" "check")
- #t)))))
- (inputs
- `(("groovy-templates" ,groovy-templates)
- ("groovy-xml" ,groovy-xml)
- ,@(package-inputs groovy-bootstrap)))
- (native-inputs
- `(("groovy-bootstrap" ,groovy-bootstrap)
- ("groovy-json" ,groovy-json)
- ("groovy-test" ,groovy-test)
- ("groovy-tests-bootstrap" ,groovy-tests-bootstrap)
- ,@(package-native-inputs java-groovy-bootstrap)))
- (synopsis "Groovy macro processor")
- (description "This package contains a high-level library to create macro
-and modify groovy's @dfn{Abstract Syntax Tree} (AST).")))
+ (let ((base (groovy-subproject "groovy-macro")))
+ (package
+ (inherit base)
+ (arguments
+ (substitute-keyword-arguments (package-arguments base)
+ ((#:phases phases)
+ `(modify-phases ,phases
+ (delete 'copy-resources)
+ (add-after 'build 'copy-resources
+ (lambda _
+ (copy-recursively "subprojects/groovy-macro/src/main/resources"
+ "build/classes")
+ (substitute* "build.xml"
+ (("depends=\"compile,") "depends=\""))
+ (invoke "ant" "jar")
+ #t))))))
+ (inputs
+ `(("groovy-templates" ,groovy-templates)
+ ("groovy-xml" ,groovy-xml)
+ ,@(package-inputs base)))
+ (native-inputs
+ `(("groovy-bootstrap" ,groovy-bootstrap)
+ ("groovy-json" ,groovy-json)
+ ("groovy-test" ,groovy-test)
+ ("groovy-tests-bootstrap" ,groovy-tests-bootstrap)
+ ,@(package-native-inputs base)))
+ (synopsis "Groovy macro processor")
+ (description "This package contains a high-level library to create macro
+and modify groovy's @dfn{Abstract Syntax Tree} (AST)."))))
+
+(define groovy-yaml
+ (let ((base (groovy-subproject "groovy-yaml")))
+ (package
+ (inherit base)
+ (inputs
+ `(("groovy-json" ,groovy-json)
+ ("java-fasterxml-jackson-annotations" ,java-fasterxml-jackson-annotations)
+ ("java-fasterxml-jackson-core" ,java-fasterxml-jackson-core)
+ ("java-fasterxml-jackson-databind" ,java-fasterxml-jackson-databind)
+ ("java-fasterxml-jackson-dataformat-yaml" ,java-fasterxml-jackson-dataformat-yaml)
+ ,@(package-inputs base)))
+ (native-inputs
+ `(("groovy-test" ,groovy-test)
+ ,@(package-native-inputs base)))
+ (synopsis "Groovy YAML")
+ (description "This package contains YAML-related utilities for groovy."))))
(define-public groovy
(package
@@ -1071,7 +779,7 @@ and modify groovy's @dfn{Abstract Syntax Tree} (AST).")))
(name "groovy")
(arguments
`(#:tests? #f; No tests
- #:jdk ,icedtea-8
+ #:jdk ,openjdk9
#:phases
(modify-phases %standard-phases
(delete 'configure)
@@ -1089,7 +797,7 @@ and modify groovy's @dfn{Abstract Syntax Tree} (AST).")))
(("@GROOVYJAR@") "groovy.jar")
(("MAX_FD=\"maximum\"")
(string-append
- "MAX_FD=\"maximum\"\nJAVAHOME="
+ "MAX_FD=\"maximum\"\nJAVA_HOME="
(assoc-ref inputs "jdk"))))
;; Groovy uses class loading. It's not enough to put the class
;; in the loader's classpath, as it causes breakages:
@@ -1105,14 +813,17 @@ and modify groovy's @dfn{Abstract Syntax Tree} (AST).")))
(lambda (jar)
(symlink jar (string-append out-lib "/" (basename jar))))
(find-files (assoc-ref inputs input) ".*.jar")))
- '("groovy-bootstrap" "groovy-ant" "groovy-bsf"
- "groovy-console" "groovy-docgenerator"
- "groovy-groovydoc" "groovy-groovysh"
- "groovy-jmx" "groovy-json" "groovy-jsr223"
- "groovy-nio" "groovy-servlet" "groovy-sql"
+ '("groovy-bootstrap" "groovy-ant" "groovy-astbuilder"
+ "groovy-bsf" "groovy-cli-commons" "groovy-cli-picocli"
+ "groovy-console" "groovy-datetime" "groovy-dateutil"
+ "groovy-docgenerator" "groovy-groovydoc" "groovy-groovysh"
+ "groovy-jmx" "groovy-json" "groovy-jsr223" "groovy-nio"
+ "groovy-parser-antlr4" "groovy-servlet" "groovy-sql"
"groovy-swing" "groovy-templates" "groovy-testng"
- "groovy-xml" "java-commons-cli" "java-asm"
- "java-classpathx-servletapi" "java-xstream"
+ "groovy-xml" "groovy-yaml" "java-commons-cli"
+ "java-tunnelvisionlabs-antlr4-runtime" "java-asm"
+ "java-asm-analysis" "java-asm-tree" "java-asm-util"
+ "java-classpathx-servletapi" "java-xstream" "java-picocli"
"java-jansi" "java-jline-2"))
;; antlr.jar is present twice in antlr2. Symlink doesn't like
;; it, so we symlink it here.
@@ -1130,8 +841,13 @@ and modify groovy's @dfn{Abstract Syntax Tree} (AST).")))
(inputs
`(("groovy-bootstrap" ,groovy-bootstrap)
("groovy-ant" ,groovy-ant)
+ ("groovy-astbuilder" ,groovy-astbuilder)
("groovy-bsf" ,groovy-bsf)
+ ("groovy-cli-commons" ,groovy-cli-commons)
+ ("groovy-cli-picocli" ,groovy-cli-picocli)
("groovy-console" ,groovy-console)
+ ("groovy-datetime" ,groovy-datetime)
+ ("groovy-dateutil" ,groovy-dateutil)
("groovy-docgenerator" ,groovy-docgenerator)
("groovy-groovydoc" ,groovy-groovydoc)
("groovy-groovysh" ,groovy-groovysh)
@@ -1139,18 +855,26 @@ and modify groovy's @dfn{Abstract Syntax Tree} (AST).")))
("groovy-json" ,groovy-json)
("groovy-jsr223" ,groovy-jsr223)
("groovy-nio" ,groovy-nio)
+ ("groovy-parser-antlr4" ,groovy-parser-antlr4)
("groovy-servlet" ,groovy-servlet)
("groovy-sql" ,groovy-sql)
("groovy-swing" ,groovy-swing)
("groovy-templates" ,groovy-templates)
("groovy-testng" ,groovy-testng)
("groovy-xml" ,groovy-xml)
+ ("groovy-yaml" ,groovy-yaml)
+ ("java-tunnelvisionlabs-antlr4-runtime"
+ ,java-tunnelvisionlabs-antlr4-runtime)
("java-commons-cli" ,java-commons-cli)
- ("java-asm" ,java-asm)
+ ("java-asm" ,java-asm-8)
+ ("java-asm-analysis" ,java-asm-analysis-8)
+ ("java-asm-tree" ,java-asm-tree-8)
+ ("java-asm-util" ,java-asm-util-8)
("java-classpathx-servletapi" ,java-classpathx-servletapi)
- ("java-xstream" ,java-xstream)
+ ("java-picocli" ,java-picocli)
("java-jansi" ,java-jansi)
("java-jline-2" ,java-jline-2)
+ ("java-xstream" ,java-xstream)
("antlr2" ,antlr2)))
(synopsis "Programming language for the JVM")
(description "Apache Groovy is a powerful, optionally typed and dynamic
diff --git a/gnu/packages/gstreamer.scm b/gnu/packages/gstreamer.scm
index 7124e17518..0ab93e3a65 100644
--- a/gnu/packages/gstreamer.scm
+++ b/gnu/packages/gstreamer.scm
@@ -6,7 +6,7 @@
;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016, 2018 Leo Famulari <leo@famulari.name>
;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net>
-;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
+;;; Copyright © 2018, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2019, 2020 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2020 Leo Prikler <leo.prikler@student.tugraz.at>
;;;
@@ -33,6 +33,7 @@
#:use-module (guix build-system cmake)
#:use-module (guix build-system gnu)
#:use-module (guix build-system meson)
+ #:use-module (guix build-system trivial)
#:use-module (guix utils)
#:use-module (gnu packages)
#:use-module (gnu packages audio)
@@ -42,7 +43,6 @@
#:use-module (gnu packages cdrom)
#:use-module (gnu packages curl)
#:use-module (gnu packages compression)
- #:use-module (gnu packages docbook)
#:use-module (gnu packages documentation)
#:use-module (gnu packages elf)
#:use-module (gnu packages flex)
@@ -360,14 +360,14 @@ http://www.tux.org/~ricdude/overview.html")
(define-public orc
(package
(name "orc")
- (version "0.4.31")
+ (version "0.4.32")
(source (origin
(method url-fetch)
(uri (string-append "https://gstreamer.freedesktop.org/data/src/"
"orc/orc-" version ".tar.xz"))
(sha256
(base32
- "0xb0c7q3xv1ldmz5ipybazb01gy3cijj8622dcx7rbm9lq85zax0"))))
+ "1w0qmyj3v9sb2g7ff39pp38b9850y9hyy0bag26ifrby5f7ksvm6"))))
(build-system meson-build-system)
(arguments
`(#:phases
@@ -394,6 +394,58 @@ arrays of data.")
;; under the 3-clause BSD license, the rest is under 2-clause BSD license.
(license (list license:bsd-2 license:bsd-3))))
+(define-public gstreamer-docs
+ (package
+ (name "gstreamer-docs")
+ (version "1.18.0")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append
+ "https://gstreamer.freedesktop.org/src/gstreamer-docs"
+ "/gstreamer-docs-" version ".tar.xz"))
+ (sha256
+ (base32
+ "0x6ix6dj3ndc1y133xidb21a4bamdfjh88mxxxld05d78wd1ayda"))))
+ (build-system trivial-build-system)
+ (arguments
+ `(#:modules ((guix build utils))
+ #:builder
+ (begin
+ (use-modules ((guix build utils)))
+ (let* ((source (assoc-ref %build-inputs "source"))
+ (tar (assoc-ref %build-inputs "tar"))
+ (xz (assoc-ref %build-inputs "xz"))
+ (out (assoc-ref %outputs "out"))
+ (books (string-append out "/share/devhelp/books")))
+ (setenv "PATH" (string-append xz "/bin"))
+ (mkdir-p books)
+ (with-directory-excursion books
+ (invoke (string-append tar "/bin/tar") "-xvf" source
+ "--strip-components=3"
+ (string-append ,name "-" ,version
+ "/devhelp/books/GStreamer")))
+ #t))))
+ (native-inputs
+ `(("tar" ,tar)
+ ("xz" ,xz)))
+ (home-page "https://gstreamer.freedesktop.org/")
+ (synopsis "Developer documentation for GStreamer")
+ (description
+ "This package contains manuals, tutorials, and API reference for
+the GStreamer multimedia framework.")
+ ;; The documentation is covered by multiple licenses. Anything not
+ ;; explicitly mentioned below is LGPL2.1+. See README.md for details.
+ (license (list
+ ;; The tutorial code can be used with either of these licenses,
+ ;; at the users option.
+ license:lgpl2.1+ license:bsd-2 license:expat
+ ;; The developer manual and plugin writer guide carries
+ ;; the Open Publication License v1.0.
+ (license:fsf-free "https://opencontent.org/openpub/"
+ "The Open Publication License v1.0")
+ ;; Tutorials are covered by CC-BY-SA 4.0.
+ license:cc-by-sa4.0))))
+
;; Increase the test timeouts to accommodate slow or busy machines.
(define %common-gstreamer-phases
'((add-after 'unpack 'increase-test-timeout
@@ -408,7 +460,7 @@ arrays of data.")
(define-public gstreamer
(package
(name "gstreamer")
- (version "1.16.2")
+ (version "1.18.0")
(source
(origin
(method url-fetch)
@@ -417,9 +469,8 @@ arrays of data.")
version ".tar.xz"))
(sha256
(base32
- "0kp93622y29pck8asvil1fmzf55s2gx76wv475a6izc3cwj49w73"))))
+ "01bq1k0gj603zyhq975zl09q4zla12mxqvhmk9fyn2kcn12r5w0g"))))
(build-system meson-build-system)
- (outputs '("out" "doc"))
(arguments
`(#:phases
(modify-phases %standard-phases
@@ -437,23 +488,13 @@ arrays of data.")
(("tcase_add_test \\(tc_chain, test_stress_reschedule.*")
""))
#t)))
- '())
- (add-after 'install 'move-docs
- (lambda* (#:key outputs #:allow-other-keys)
- (let ((out (assoc-ref outputs "out"))
- (doc (assoc-ref outputs "doc")))
- (mkdir-p (string-append doc "/share"))
- (copy-recursively (string-append out "/share/gtk-doc")
- (string-append doc "/share/gtk-doc"))
- (delete-file-recursively (string-append out "/share/gtk-doc"))
- #t))))))
+ '()))))
(propagated-inputs `(("glib" ,glib))) ; required by gstreamer-1.0.pc.
(native-inputs
`(("bison" ,bison)
("flex" ,flex)
("glib" ,glib "bin")
("gobject-introspection" ,gobject-introspection)
- ("gtk-doc" ,gtk-doc)
("perl" ,perl)
("pkg-config" ,pkg-config)
("python-wrapper" ,python-wrapper)))
@@ -479,7 +520,7 @@ This package provides the core library and elements.")
(define-public gst-plugins-base
(package
(name "gst-plugins-base")
- (version "1.16.2")
+ (version "1.18.0")
(source
(origin
(method url-fetch)
@@ -487,7 +528,7 @@ This package provides the core library and elements.")
name "-" version ".tar.xz"))
(sha256
(base32
- "0sl1hxlyq46r02k7z70v09vx1gi4rcypqmzra9jid93lzvi76gmi"))))
+ "15vqvcy842vhbic3w7l4yvannzazdgwggzv2x8f9m02hm78vsakn"))))
(build-system meson-build-system)
(propagated-inputs
`(("glib" ,glib) ;required by gstreamer-sdp-1.0.pc
@@ -522,10 +563,7 @@ This package provides the core library and elements.")
("gobject-introspection" ,gobject-introspection)
("python-wrapper" ,python-wrapper)))
(arguments
- `(#:configure-flags '("-Dgl=disabled"
- ;; FIXME: Documentation fails to build without
- ;; enabling GL above, which causes other problems.
- "-Ddoc=false")
+ `(#:configure-flags '("-Dgl=disabled")
#:phases
(modify-phases %standard-phases
,@%common-gstreamer-phases
@@ -544,7 +582,7 @@ for the GStreamer multimedia library.")
(define-public gst-plugins-good
(package
(name "gst-plugins-good")
- (version "1.16.2")
+ (version "1.18.0")
(source
(origin
(method url-fetch)
@@ -553,22 +591,13 @@ for the GStreamer multimedia library.")
"https://gstreamer.freedesktop.org/src/" name "/"
name "-" version ".tar.xz"))
(sha256
- (base32 "068k3cbv1yf3gbllfdzqsg263kzwh21y8dpwr0wvgh15vapkpfs0"))))
+ (base32 "1b4b3a6fm2wyqpnx300pg1sz01m9qhfajadk3b7sbzisg8vvqab3"))))
(build-system meson-build-system)
(arguments
`(#:glib-or-gtk? #t ; To wrap binaries and/or compile schemas
#:phases
(modify-phases %standard-phases
- (add-after 'unpack 'patch-docbook-xml
- (lambda* (#:key inputs #:allow-other-keys)
- (with-directory-excursion "docs"
- (substitute* "plugins/gst-plugins-good-plugins-docs.sgml"
- (("http://www.oasis-open.org/docbook/xml/4.1.2/")
- (string-append (assoc-ref inputs "docbook-xml")
- "/xml/dtd/docbook/"))))
- #t))
- (add-before
- 'check 'pre-check
+ (add-before 'check 'pre-check
(lambda _
;; Tests require a running X server.
(system "Xvfb :1 +extension GLX &")
@@ -581,8 +610,7 @@ for the GStreamer multimedia library.")
(setenv "DBUS_FATAL_WARNINGS" "0")
#t)))))
(native-inputs
- `(("docbook-xml" ,docbook-xml-4.1.2)
- ("gettext" ,gettext-minimal)
+ `(("gettext" ,gettext-minimal)
("glib:bin" ,glib "bin")
("gobject-introspection" ,gobject-introspection)
("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
@@ -643,14 +671,14 @@ model to base your own plug-in on, here it is.")
(define-public gst-plugins-bad
(package
(name "gst-plugins-bad")
- (version "1.16.2")
+ (version "1.18.0")
(source (origin
(method url-fetch)
(uri (string-append "https://gstreamer.freedesktop.org/src/"
name "/" name "-" version ".tar.xz"))
(sha256
(base32
- "0x0y0hm0ga3zqi5q4090hw5sjh59y1ry9ak16qsaascm72i7mjzi"))))
+ "0pqqq5bs9fjwcmbwgsgxs2dx6gznhxs7ii5pmjkslr6xmlfap0pk"))))
(build-system meson-build-system)
(arguments
`(#:phases
@@ -667,20 +695,26 @@ model to base your own plug-in on, here it is.")
""))
#t)))
'())
- (add-after 'unpack 'disable-failing-test
- (lambda _
- ;; FIXME: Why is this failing.
- (substitute* "tests/check/meson.build"
- ((".*elements/dash_mpd\\.c.*")
- ""))
- #t)))))
+ (add-after 'unpack 'adjust-tests
+ (lambda* (#:key native-inputs inputs #:allow-other-keys)
+ (let ((gst-plugins-good (assoc-ref (or native-inputs inputs)
+ "gst-plugins-good")))
+ (substitute* "tests/check/meson.build"
+ ;; Make gst-plugin-good available for tests, see
+ ;; https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1426
+ (("'GST_PLUGIN_SYSTEM_PATH_1_0', ''")
+ (string-append "'GST_PLUGIN_SYSTEM_PATH_1_0', '"
+ gst-plugins-good "/lib/gstreamer-1.0'"))
+ ;; This test occasionally times out, see
+ ;; https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1412
+ ((".*elements/dtls\\.c.*") ""))
+ #t))))))
(propagated-inputs
`(("gst-plugins-base" ,gst-plugins-base)))
(native-inputs
`(("glib:bin" ,glib "bin") ; for glib-mkenums, etc.
("gobject-introspection" ,gobject-introspection)
- ;; TODO: Enable documentation for 1.18.
- ;;("gtk-doc" ,gtk-doc)
+ ("gst-plugins-good" ,gst-plugins-good) ;for tests
("pkg-config" ,pkg-config)
("python" ,python)))
(inputs
@@ -723,6 +757,8 @@ model to base your own plug-in on, here it is.")
;("qtdeclarative" ,qtdeclarative)
;("qtx11extras" ,qtx11extras)
("soundtouch" ,soundtouch)
+ ;; GStreamer is not yet compatible with srt > 1.4.1.
+ ("srt" ,srt-1.4.1)
("x265" ,x265)
("wayland" ,wayland)))
(home-page "https://gstreamer.freedesktop.org/")
@@ -735,7 +771,7 @@ par compared to the rest.")
(define-public gst-plugins-ugly
(package
(name "gst-plugins-ugly")
- (version "1.16.2")
+ (version "1.18.0")
(source
(origin
(method url-fetch)
@@ -743,22 +779,13 @@ par compared to the rest.")
(string-append "https://gstreamer.freedesktop.org/src/"
name "/" name "-" version ".tar.xz"))
(sha256
- (base32 "1jpvc32x6q01zjkfgh6gmq6aaikiyfwwnhj7bmvn52syhrdl202m"))))
+ (base32 "10p0nyzighvkciaspxnhlr7d7n4acrv96lf483i8l988bvj48rk8"))))
(build-system meson-build-system)
(arguments
`(#:glib-or-gtk? #t ; To wrap binaries and/or compile schemas
#:phases
(modify-phases %standard-phases
- (add-after 'unpack 'patch-docbook-xml
- (lambda* (#:key inputs #:allow-other-keys)
- (with-directory-excursion "docs"
- (substitute* "plugins/gst-plugins-ugly-plugins-docs.sgml"
- (("http://www.oasis-open.org/docbook/xml/4.1.2/")
- (string-append (assoc-ref inputs "docbook-xml")
- "/xml/dtd/docbook/"))))
- #t))
- (add-before
- 'check 'pre-check
+ (add-before 'check 'pre-check
(lambda _
;; Tests require a running X server.
(system "Xvfb :1 +extension GLX &")
@@ -771,8 +798,7 @@ par compared to the rest.")
(setenv "DBUS_FATAL_WARNINGS" "0")
#t)))))
(native-inputs
- `(("docbook-xml" ,docbook-xml-4.1.2)
- ("gettext" ,gettext-minimal)
+ `(("gettext" ,gettext-minimal)
("glib:bin" ,glib "bin")
("gobject-introspection" ,gobject-introspection)
("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
@@ -803,7 +829,7 @@ think twice about shipping them.")
(define-public gst-libav
(package
(name "gst-libav")
- (version "1.16.2")
+ (version "1.18.0")
(source
(origin
(method url-fetch)
@@ -812,28 +838,10 @@ think twice about shipping them.")
"https://gstreamer.freedesktop.org/src/" name "/"
name "-" version ".tar.xz"))
(sha256
- (base32 "1wpfilc98bad9nsv3y1qapxp35dvn2mvwvrmqwrsj58cf09gc967"))
- (modules '((guix build utils)))
- (snippet
- '(begin
- ;; Drop bundled ffmpeg.
- (delete-file-recursively "gst-libs/ext/libav")
- #t))))
+ (base32 "0sm0sfdlalimpkf7a7rk7whvyvmmfi2kly2z3q2j5z53x5f3zya2"))))
(build-system meson-build-system)
- (arguments
- `(#:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'patch-docbook-xml
- (lambda* (#:key inputs #:allow-other-keys)
- (with-directory-excursion "docs"
- (substitute* "plugins/gst-libav-plugins-docs.sgml"
- (("http://www.oasis-open.org/docbook/xml/4.1.2/")
- (string-append (assoc-ref inputs "docbook-xml")
- "/xml/dtd/docbook/"))))
- #t)))))
(native-inputs
- `(("docbook-xml" ,docbook-xml-4.1.2)
- ("perl" ,perl)
+ `(("perl" ,perl)
("pkg-config" ,pkg-config)
("python" ,python-wrapper)
("ruby" ,ruby)))
@@ -851,15 +859,15 @@ decoders, muxers, and demuxers provided by FFmpeg.")
(define-public gst-editing-services
(package
(name "gst-editing-services")
- (version "1.16.2")
+ (version "1.18.0")
(source (origin
(method url-fetch)
(uri (string-append
"https://gstreamer.freedesktop.org/src/" name "/"
- "gstreamer-editing-services-" version ".tar.xz"))
+ "gst-editing-services-" version ".tar.xz"))
(sha256
(base32
- "05hcf3prna8ajjnqd53221gj9syarrrjbgvjcbhicv0c38csc1hf"))))
+ "1a00f07v0yjqz1hydhgkjjarm4rk99yjicbz5wkfl5alhzag1bjd"))))
(build-system meson-build-system)
(arguments
;; FIXME: 16/22 failing tests.
@@ -886,7 +894,7 @@ non-linear editors.")
(define-public python-gst
(package
(name "python-gst")
- (version "1.16.2")
+ (version "1.18.0")
(source (origin
(method url-fetch)
(uri (string-append
@@ -894,9 +902,7 @@ non-linear editors.")
"gst-python-" version ".tar.xz"))
(sha256
(base32
- "1a48ca66izmm8hnp608jv5isg3jxb0vlfmhns0bg9nbkilag7390"))
- (patches
- (search-patches "python-gst-fix-build-with-python-3.8.patch"))))
+ "0ifx2s2j24sj2w5jm7cxyg1kinnhbxiz4x0qp3gnsjlwbawfigvn"))))
(build-system meson-build-system)
(arguments
`(#:modules ((guix build meson-build-system)
@@ -919,18 +925,7 @@ non-linear editors.")
(description
"This package contains GObject Introspection overrides for Python that can
be used by Python applications using GStreamer.")
- (license license:lgpl2.1+)
- (properties `((python2-variant . ,(delay python2-gst))))))
-
-(define-public python2-gst
- (package (inherit python-gst)
- (name "python2-gst")
- (native-inputs
- `(("pkg-config" ,pkg-config)
- ("python" ,python-2)))
- (propagated-inputs
- `(("gst-plugins-base" ,gst-plugins-base)
- ("python-pygobject" ,python2-pygobject)))))
+ (license license:lgpl2.1+)))
(define-public gst123
(package
diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index ff8547d00b..d378e6557b 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -824,7 +824,7 @@ application suites.")
(define-public gtk+
(package (inherit gtk+-2)
(name "gtk+")
- (version "3.24.20")
+ (version "3.24.23")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/"
@@ -832,7 +832,7 @@ application suites.")
name "-" version ".tar.xz"))
(sha256
(base32
- "1wqxkd3xnqwihcawncp9mkf9bv5a5fg5i4ahm6klpl782vvnkb1d"))
+ "1cg2vbwbcp7bc84ky0b69ipgdr9djhspnf5k8lajb8jphcj4v1jx"))
(patches (search-patches "gtk3-respect-GUIX_GTK3_PATH.patch"
"gtk3-respect-GUIX_GTK3_IM_MODULE_FILE.patch"))))
(propagated-inputs
@@ -1217,7 +1217,7 @@ library.")
(base32 "1xlfl0fm5mgv53lr8xjv2kqsk3bz67qkk6qzvbrqmbvbvvbqp9wp"))))
(propagated-inputs
`(("cairo" ,cairo)
- ("sigc++" ,libsigc++-2)))))
+ ("sigc++" ,libsigc++)))))
(define-public pangomm
(package
@@ -1613,7 +1613,7 @@ and routines to assist in editing internationalized text.")
(sha256
(base32 "08rpw9hkaprm4r853xy1d35i2af1pji8c3mzzl01mmwmyr9p0x8k"))))
(native-inputs `(("pkg-config" ,pkg-config)
- ("check" ,check)
+ ("check" ,check-0.14)
("gettext" ,gettext-minimal)
("glib:bin" ,glib "bin")
("xorg-server" ,xorg-server-for-tests)))
@@ -1899,14 +1899,14 @@ does not deal with windowing system surfaces, drawing, scene graphs, or input.")
(define-public spread-sheet-widget
(package
(name "spread-sheet-widget")
- (version "0.6")
+ (version "0.7")
(source
(origin
(method url-fetch)
(uri (string-append "https://alpha.gnu.org/gnu/ssw/"
"spread-sheet-widget-" version ".tar.gz"))
(sha256
- (base32 "08ck9l697xg8vpya5h07raq837i4pqxjqzx30vhscq4xpps2b8kj"))))
+ (base32 "09rzgp7gabnzab460x874a1ibgyjiibpwzsz5srn9zs6jv2jdxjb"))))
(build-system gnu-build-system)
(native-inputs
`(("glib" ,glib "bin") ; for glib-genmarshal, etc.
diff --git a/gnu/packages/guile-xyz.scm b/gnu/packages/guile-xyz.scm
index 3090c6078b..88c0586dc9 100644
--- a/gnu/packages/guile-xyz.scm
+++ b/gnu/packages/guile-xyz.scm
@@ -701,8 +701,8 @@ It has a nice, simple s-expression based syntax.")
(inputs `(("guile" ,guile-2.2)))))
(define-public guile-squee
- (let ((commit "a85902a92bf6f58a1d35fd974a01ade163deda8d")
- (revision "0"))
+ (let ((commit "7dcd22b54fd56c9e629489191bb27ac80ecea9db")
+ (revision "1"))
(package
(name "guile-squee")
(version (string-append "0-" revision "." (string-take commit 7)))
@@ -714,7 +714,7 @@ It has a nice, simple s-expression based syntax.")
(file-name (git-file-name name version))
(sha256
(base32
- "0p1lpsp4kx57j3ai1dkxilm4ziavzzx8wbbc42m3hpziq0a7qz5z"))))
+ "1568sk6ada7x9qpfhax0qq1bq93qll1q7nyjrb7h3c1c3lc9sc15"))))
(build-system guile-build-system)
(arguments
'(#:phases
@@ -845,8 +845,8 @@ Vicare Scheme and IronScheme. Right now it contains:
(license license:bsd-3)))
(define-public guile-prometheus
- (let ((commit "cbc6e1b03512443a03d66414c426adb8470b5f2b")
- (revision "0"))
+ (let ((commit "8980f39bafb3e59d6de17e7b311df4932e5b5182")
+ (revision "1"))
(package
(name "guile-prometheus")
(version (git-version "0" revision commit))
@@ -857,13 +857,14 @@ Vicare Scheme and IronScheme. Right now it contains:
(commit commit)))
(sha256
(base32
- "1k1qg4ia87w2ipnf8cpikdc67lxi5bmahkhgk2x0i9ibdyvqb7np"))
+ "04vwza78b5nq0szzxzvpnfjyfkb4pqf2w4dx3kz1f082n01xnwss"))
(file-name (string-append name "-" version "-checkout"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)
("autoconf" ,autoconf)
- ("automake" ,automake)))
+ ("automake" ,automake)
+ ("guile" ,guile-3.0)))
(inputs
`(("guile" ,guile-3.0)))
(home-page "https://git.cbaines.net/guile/prometheus")
@@ -1621,15 +1622,16 @@ The library is shipped with documentation in Info format and usage examples.")
(define-public guile-wisp
(package
(name "guile-wisp")
- (version "1.0.2")
+ (version "1.0.3")
(source (origin
- (method url-fetch)
- (uri (string-append "https://bitbucket.org/ArneBab/"
- "wisp/downloads/wisp-"
- version ".tar.gz"))
+ (method hg-fetch)
+ (uri (hg-reference
+ (url "https://hg.sr.ht/~arnebab/wisp")
+ (changeset (string-append "v" version))))
+ (file-name (git-file-name name version))
(sha256
(base32
- "03pz7pj9jyallynhflp5s7qax8dj1fs8la434wrfgz7g1kgjnvf6"))))
+ "10g97jz3ahpb5mg933ajsc3pa9jxlg14f42yf01qwx0dwq1b06d5"))))
(build-system gnu-build-system)
(arguments
`(#:modules ((guix build gnu-build-system)
@@ -1643,11 +1645,9 @@ The library is shipped with documentation in Info format and usage examples.")
(guix build emacs-utils))
#:phases
(modify-phases %standard-phases
- (add-after 'unpack 'support-guile-3.0
+ (replace 'bootstrap
(lambda _
- (substitute* "configure"
- (("_guile_versions_to_search=\"2.2")
- "_guile_versions_to_search=\"3.0 2.2"))
+ (invoke "autoreconf" "-vif")
#t))
(add-before 'configure 'patch-/usr/bin/env
(lambda _
@@ -1689,7 +1689,9 @@ The library is shipped with documentation in Info format and usage examples.")
(inputs
`(("guile" ,guile-3.0)))
(native-inputs
- `(("emacs" ,emacs-minimal)
+ `(("autoconf" ,autoconf)
+ ("automake" ,automake)
+ ("emacs" ,emacs-minimal)
("python" ,python)
("pkg-config" ,pkg-config)))
(synopsis "Whitespace to lisp syntax for Guile")
diff --git a/gnu/packages/guile.scm b/gnu/packages/guile.scm
index dd252179bb..912df146f1 100644
--- a/gnu/packages/guile.scm
+++ b/gnu/packages/guile.scm
@@ -411,11 +411,13 @@ GNU@tie{}Guile. Use the @code{(ice-9 readline)} module and call its
;; A procedure that rewrites the dependency tree of the given package to use
;; GUILE-2.0 instead of GUILE-3.0.
(package-input-rewriting `((,guile-3.0 . ,guile-2.0))
- (guile-variant-package-name "guile2.0")))
+ (guile-variant-package-name "guile2.0")
+ #:deep? #f))
(define package-for-guile-2.2
(package-input-rewriting `((,guile-3.0 . ,guile-2.2))
- (guile-variant-package-name "guile2.2")))
+ (guile-variant-package-name "guile2.2")
+ #:deep? #f))
(define-syntax define-deprecated-guile3.0-package
(lambda (s)
@@ -812,7 +814,7 @@ Guile's foreign function interface.")
(define-public guile-lzlib
(package
(name "guile-lzlib")
- (version "0.0.1")
+ (version "0.0.2")
(source
(origin
(method url-fetch)
@@ -822,7 +824,7 @@ Guile's foreign function interface.")
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
- "0rdmszn1qix085ci2mddwq5cypipc004fk7arrrkgn9bv39hazza"))))
+ "11sggvncyx08ssp1s5xii4d6nskh1qwqihnbpzzvkrs7sivxn8w6"))))
(build-system gnu-build-system)
(arguments
'(#:make-flags
diff --git a/gnu/packages/hardware.scm b/gnu/packages/hardware.scm
index 211a5a34ac..e4a8112a7d 100644
--- a/gnu/packages/hardware.scm
+++ b/gnu/packages/hardware.scm
@@ -52,14 +52,14 @@
(define-public ddcutil
(package
(name "ddcutil")
- (version "0.9.8")
+ (version "0.9.9")
(source
(origin
(method url-fetch)
(uri (string-append "https://www.ddcutil.com/tarballs/"
"ddcutil-" version ".tar.gz"))
(sha256
- (base32 "13ccxbqgyz4ah9jwbcylnfkgl8j3ida8xd00xkcq4xnfyyv5mg6v"))))
+ (base32 "0anyxy53k2613hq9glaad16llqlv6iim5p8gz0rs5pnpp8p00dg1"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)))
diff --git a/gnu/packages/haskell-apps.scm b/gnu/packages/haskell-apps.scm
index 07bf26669b..1de8b040f1 100644
--- a/gnu/packages/haskell-apps.scm
+++ b/gnu/packages/haskell-apps.scm
@@ -339,14 +339,14 @@ to @code{cabal repl}).")
(define-public git-annex
(package
(name "git-annex")
- (version "8.20200908")
+ (version "8.20201007")
(source
(origin
(method url-fetch)
(uri (string-append "https://hackage.haskell.org/package/"
"git-annex/git-annex-" version ".tar.gz"))
(sha256
- (base32 "1113inl10f4m0699ba2zglaqlfqvwhqjkqg6r6m1d5rqv5brswb1"))))
+ (base32 "0v11yc4kkxnzvwqry277dpjwlavinrjiagfw0ayhrfwd703j1y8a"))))
(build-system haskell-build-system)
(arguments
`(#:configure-flags
@@ -628,7 +628,7 @@ and mIRC chat codes.")
(define-public kmonad
(package
(name "kmonad")
- (version "0.4.0")
+ (version "0.4.1")
(source
(origin
(method git-fetch)
@@ -637,7 +637,7 @@ and mIRC chat codes.")
(commit version)))
(file-name (git-file-name name version))
(sha256
- (base32 "064gnzzcm6fnxfiildbjmgbdxkhqvp61zrl6qhkl1pgbn27j1mll"))))
+ (base32 "1rp880zxvrznx0y1k464wjrds441dpsz94syhrkaw5dnmxf74yjd"))))
(build-system haskell-build-system)
(arguments
`(#:phases
diff --git a/gnu/packages/haskell-check.scm b/gnu/packages/haskell-check.scm
index 7f7bc22da5..6176b95988 100644
--- a/gnu/packages/haskell-check.scm
+++ b/gnu/packages/haskell-check.scm
@@ -501,12 +501,9 @@ use HUnit assertions as QuickCheck properties.")
(base32
"0426j43af8v3qmdjjqxivazsvr3a2brac8yw09vpgpjkb2m0nmkv"))))
(build-system haskell-build-system)
- (arguments
- `(#:tests? #f)) ; FIXME: currently missing libraries used for tests.
(inputs
`(("ghc-random" ,ghc-random)
- ("ghc-splitmix" ,ghc-splitmix-bootstrap)
- ("ghc-tf-random" ,ghc-tf-random)))
+ ("ghc-splitmix" ,ghc-splitmix-bootstrap)))
(home-page "https://github.com/nick8325/quickcheck")
(synopsis "Automatic testing of Haskell programs")
(description
@@ -1033,7 +1030,7 @@ library's promised without anyone noticing.
This package provides a disciplined way of specifying such properties, and
have them checked by the compiler. This way, this checking can be part of the
-ususal development cycle and regressions caught early.
+regular development cycle and regressions caught early.
See the documentation in \"Test.Inspection\" or the project webpage for more
examples and more information.")
diff --git a/gnu/packages/haskell-web.scm b/gnu/packages/haskell-web.scm
index 98d163566c..a4269599f6 100644
--- a/gnu/packages/haskell-web.scm
+++ b/gnu/packages/haskell-web.scm
@@ -1349,7 +1349,7 @@ from Yesod.")
("ghc-hspec" ,ghc-hspec)))
(home-page "https://www.yesodweb.com")
(synopsis "Form handling support for Yesod Web Framework")
- (description "This Haskell package provies a set of basic form inputs such
+ (description "This Haskell package provides a set of basic form inputs such
as text, number, time, checkbox, select, textarea, etc through the
@code{Yesod.Form.Fields} module. Also, there is @code{Yesod.Form.Nic} module
providing richtext field using Nic editor. ")
diff --git a/gnu/packages/haskell-xyz.scm b/gnu/packages/haskell-xyz.scm
index f4af00283c..5b9da15630 100644
--- a/gnu/packages/haskell-xyz.scm
+++ b/gnu/packages/haskell-xyz.scm
@@ -5524,8 +5524,8 @@ Vim.")
(build-system haskell-build-system)
(home-page "https://hackage.haskell.org/package/hex")
(synopsis "Convert strings into hexadecimal and back")
- (description "This package provides conversion functions between
-bytestrings and their hexademical representation.")
+ (description "This package converts between bytestrings and their
+hexadecimal string representation.")
(license license:bsd-3)))
(define-public ghc-highlighting-kate
diff --git a/gnu/packages/hurd.scm b/gnu/packages/hurd.scm
index 98fe594b7f..47c7e17573 100644
--- a/gnu/packages/hurd.scm
+++ b/gnu/packages/hurd.scm
@@ -157,6 +157,17 @@ for other software in the GNU system that uses Mach-based inter-process
communication.")
(license gpl2+)))
+(define-public mig/32-bit
+ ;; When cross-compiling from x86_64-linux to i586-gnu, we need this 32-bit
+ ;; native MIG.
+ (package
+ (inherit mig)
+ (arguments
+ (substitute-keyword-arguments (package-arguments mig)
+ ((#:system _ #f)
+ "i686-linux")))
+ (properties `((hidden? . #t)))))
+
(define-public hurd-headers
;; Resort to a post-0.9 snapshot that provides the 'file_utimens' and
;; 'file_exec_paths' RPCs that glibc 2.28 expects.
@@ -536,9 +547,7 @@ exec ${system}/rc \"$@\"
("mig" ,(if (%current-target-system)
;; XXX: When targeting i586-pc-gnu, we need a 32-bit MiG,
;; hence this hack.
- (package
- (inherit mig)
- (arguments `(#:system "i686-linux")))
+ mig/32-bit
mig))
("perl" ,perl)
("texinfo" ,texinfo-4)
diff --git a/gnu/packages/hyperledger.scm b/gnu/packages/hyperledger.scm
index c1b8215584..82680cd5e4 100644
--- a/gnu/packages/hyperledger.scm
+++ b/gnu/packages/hyperledger.scm
@@ -141,7 +141,7 @@ Originally Ed25519 consists of three modules:
@itemize
@item digital signature algorithm itself
@item SHA512 hash function
-@item random number generator, to generate keypairs
+@item random number generator, to generate key pairs
@end itemize
This project offers at least two different C implementations for every
diff --git a/gnu/packages/ibus.scm b/gnu/packages/ibus.scm
index b48f21b551..ecf33cb570 100644
--- a/gnu/packages/ibus.scm
+++ b/gnu/packages/ibus.scm
@@ -300,7 +300,7 @@ Japanese language input in most graphical applications.")
(define-public librime
(package
(name "librime")
- (version "1.5.3")
+ (version "1.6.1")
(source
(origin
(method git-fetch)
@@ -310,7 +310,7 @@ Japanese language input in most graphical applications.")
(file-name (git-file-name name version))
(sha256
(base32
- "0xskhdhk7dgpc71r39pfzxi5vrlzy90aqj1gzv8nnapq91p2awhv"))
+ "1avmy2yyag22cl2j8085n5czsk93sxv440pdb3a2diwcxwwmzm9v"))
(modules '((guix build utils)))
(snippet
'(begin
@@ -330,6 +330,7 @@ Japanese language input in most graphical applications.")
#t)))))
(inputs
`(("boost" ,boost)
+ ("capnproto" ,capnproto)
("glog" ,glog)
("leveldb" ,leveldb)
("marisa" ,marisa)
@@ -337,6 +338,7 @@ Japanese language input in most graphical applications.")
("yaml-cpp" ,yaml-cpp)))
(native-inputs
`(("googletest" ,googletest)
+ ("pkg-config" ,pkg-config)
("xorgproto" ,xorgproto))) ; keysym.h
(home-page "https://rime.im/")
(synopsis "The core library of Rime Input Method Engine")
diff --git a/gnu/packages/idutils.scm b/gnu/packages/idutils.scm
index 81715591b4..26472c6900 100644
--- a/gnu/packages/idutils.scm
+++ b/gnu/packages/idutils.scm
@@ -1,6 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2012, 2013, 2015 Ludovic Courtès <ludo@gnu.org>
-;;; Copyright © 208 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2018 Efraim Flashner <efraim@flashner.co.il>
;;;
;;; This file is part of GNU Guix.
;;;
diff --git a/gnu/packages/image-processing.scm b/gnu/packages/image-processing.scm
index 9158e14938..e313b14ebf 100644
--- a/gnu/packages/image-processing.scm
+++ b/gnu/packages/image-processing.scm
@@ -11,6 +11,7 @@
;;; Copyright © 2020 Vincent Legoll <vincent.legoll@gmail.com>
;;; Copyright © 2020 Vinicius Monego <monego@posteo.net>
;;; Copyright © 2020 Pierre Neidhardt <mail@ambrevar.xyz>
+;;; Copyright © 2020 Brendan Tildesley <mail@brendan.scot>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -33,6 +34,7 @@
#:use-module (guix utils)
#:use-module (guix download)
#:use-module (guix git-download)
+ #:use-module (guix build-system qt)
#:use-module (guix build-system cmake)
#:use-module (guix build-system gnu)
#:use-module (gnu packages)
@@ -1011,7 +1013,54 @@ full-featured UI aimed at clinical researchers.")
(description "Metapixel is a program for generating photomosaics. It can
generate classical photomosaics, in which the source image is viewed as a
matrix of equally sized rectangles for each of which a matching image is
-substitued, as well as collage-style photomosaics, in which rectangular parts
+substituted, as well as collage-style photomosaics, in which rectangular parts
of the source image at arbitrary positions (i.e. not aligned to a matrix) are
substituted by matching images.")
(license license:gpl2))))
+
+(define-public scantailor-advanced
+ (let ((commit "3d1e74e6ace413733511086934a66f4e3f7a6027"))
+ (package
+ (name "scantailor-advanced")
+ (version (string-append "1.0.16-" (string-take commit 7)))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/4lex4/scantailor-advanced")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0kixwjb2x457dq7927hkh34c803p7yh1pmn6n61rk9shqrcg492h"))))
+ (build-system qt-build-system)
+ (native-inputs
+ `(("qttools" ,qttools)))
+ (inputs
+ `(("boost" ,boost)
+ ("libjpeg" ,libjpeg-turbo)
+ ("libpng" ,libpng)
+ ("libtiff" ,libtiff)
+ ("qtbase" ,qtbase)
+ ("qtsvg" ,qtsvg)
+ ("zlib" ,zlib)))
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ ;; Some tests require a display and fail with offscreen mode.
+ (add-after 'unpack 'disable-failing-tests
+ (lambda _
+ (setenv "ARGS" "--exclude-regex \"imageproc_.*\"")
+ #t)))))
+ (home-page "https://github.com/4lex4/scantailor-advanced")
+ (synopsis "Clean up scanned pages")
+ (description "Scan Tailor is an interactive post-processing tool for
+scanned pages. It performs operations such as page splitting, deskewing,
+adding/removing borders, and others. You give it raw scans, and you get pages
+ready to be printed or assembled into a PDF or DJVU file. Scanning, optical
+character recognition, and assembling multi-page documents are out of scope of
+this project.
+
+Scan Tailer Advanced is a fork of Scan Tailer that merges Scan Tailor Featured
+and Scan Tailor Enhanced versions as well as including many more bug fixes.")
+ (license license:gpl3+))))
diff --git a/gnu/packages/image.scm b/gnu/packages/image.scm
index cc865e2777..03bcf1a2fa 100644
--- a/gnu/packages/image.scm
+++ b/gnu/packages/image.scm
@@ -1,7 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013, 2017, 2019 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2013, 2015, 2016 Andreas Enge <andreas@enge.fr>
-;;; Copyright © 2014, 2015, 2016 Mark H Weaver <mhw@netris.org>
+;;; Copyright © 2014, 2015, 2016, 2020 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2014, 2015 Alex Kost <alezost@gmail.com>
;;; Copyright © 2014, 2016, 2017, 2018, 2019 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2015 Taylan Ulrich Bayırlı/Kammer <taylanbayirli@gmail.com>
@@ -130,7 +130,7 @@ code is Valgrind-clean and unit tested.")
(define-public libpng
(package
(name "libpng")
- (version "1.6.37")
+ (version "1.6.37") ; Remember to also update libpng-apng if possible!
(source (origin
(method url-fetch)
(uri (list (string-append "mirror://sourceforge/libpng/libpng16/"
@@ -163,7 +163,7 @@ library. It supports almost all PNG features and is extensible.")
(define-public libpng-apng
(package
(name "libpng-apng")
- (version "1.6.28")
+ (version "1.6.37")
(source
(origin
(method url-fetch)
@@ -177,7 +177,7 @@ library. It supports almost all PNG features and is extensible.")
"/libpng16/libpng-" version ".tar.xz")))
(sha256
(base32
- "0ylgyx93hnk38haqrh8prd3ax5ngzwvjqw5cxw7p9nxmwsfyrlyq"))))
+ "1jl8in381z0128vgxnvn33nln6hzckl7l7j9nqvkaf1m9n1p0pjh"))))
(build-system gnu-build-system)
(arguments
`(#:modules ((guix build gnu-build-system)
@@ -211,7 +211,7 @@ library. It supports almost all PNG features and is extensible.")
version "/libpng-" version "-apng.patch.gz"))
(sha256
(base32
- "0m5nv70n9903x3xzxw9qqc6sgf2rp106ha0x6gix0xf8wcrljaab"))))))
+ "1dh0250mw9b2hx7cdmnb2blk7ddl49n6vx8zz7jdmiwxy38v4fw2"))))))
(native-inputs
`(("libtool" ,libtool)))
;; libpng.la says "-lz", so propagate it.
@@ -337,7 +337,7 @@ Currently all documentation resides in @file{pnglite.h}.")
(define-public libimagequant
(package
(name "libimagequant")
- (version "2.12.5")
+ (version "2.12.6")
(source
(origin
(method git-fetch)
@@ -346,7 +346,7 @@ Currently all documentation resides in @file{pnglite.h}.")
(commit version)))
(file-name (git-file-name name version))
(sha256
- (base32 "0cp68w04ja5pv77ssfafsn958w9hh9zb8crrlb5j3gsrcmdc032k"))))
+ (base32 "00w7fny3xf14cfyhbdnmqyh9ddqdh1irvgzxd35a2z65kp7vnvj0"))))
(build-system gnu-build-system)
(arguments
'(#:tests? #f)) ; no check target
@@ -976,7 +976,7 @@ Metafile}, and @acronym{EMF+, Enhanced Metafile Plus} files.")
(define-public imlib2
(package
(name "imlib2")
- (version "1.6.1")
+ (version "1.7.0")
(source (origin
(method url-fetch)
(uri (string-append
@@ -984,8 +984,10 @@ Metafile}, and @acronym{EMF+, Enhanced Metafile Plus} files.")
"/imlib2-" version ".tar.bz2"))
(sha256
(base32
- "0v8n3dswx7rxqfd0q03xwc7j2w1mv8lv18rdxv487a1xw5vklfad"))))
+ "0zdk4afdrrr1539f2q15zja19j4wwfmpswzws2ffgflcnhywlxhr"))))
(build-system gnu-build-system)
+ (arguments
+ '(#:configure-flags (list "--disable-static")))
(native-inputs
`(("pkgconfig" ,pkg-config)))
(inputs
@@ -1410,7 +1412,7 @@ convert, manipulate, filter and display a wide variety of image formats.")
(define-public jasper
(package
(name "jasper")
- (version "2.0.20")
+ (version "2.0.22")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -1419,21 +1421,10 @@ convert, manipulate, filter and display a wide variety of image formats.")
(file-name (git-file-name name version))
(sha256
(base32
- "1bn4mg6l5afryrlyk3y7p3accdq113fis8hpwywy5g51ycablz3h"))))
+ "1qw96mwwd9xw21jg5s7njqgbam566skj93i81aflijy40s31dfwz"))))
(build-system cmake-build-system)
- (arguments
- `(#:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'disable-checking-disabled-things
- (lambda _
- ;; The MIF codec was disabled for security reasons in JasPer 2.0.20
- ;; but its test suite still assumes that the format is supported.
- (for-each delete-file
- (find-files "data/test" "\\.mif$")) ; for run_test_1
- (substitute* "test/bin/run_test_2"
- (("image_formats\\+=\\(mif\\)") ""))
- #t)))))
- (inputs `(("libjpeg" ,libjpeg-turbo)))
+ (inputs
+ `(("libjpeg" ,libjpeg-turbo)))
(synopsis "JPEG-2000 library")
(description "The JasPer Project is an initiative to provide a reference
implementation of the codec specified in the JPEG-2000 Part-1 standard (i.e.,
@@ -1542,33 +1533,6 @@ files (known as @dfn{steganography}). Neither color nor sample frequencies are
changed, making the embedding resistant against first-order statistical tests.")
(license license:gpl2+)))
-(define-public stb-image-for-extempore
- (let ((revision "1")
- (commit "152a250a702bf28951bb0220d63bc0c99830c498"))
- (package
- (name "stb-image-for-extempore")
- (version (string-append "0-" revision "." (string-take commit 9)))
- (source
- (origin (method git-fetch)
- (uri (git-reference
- (url "https://github.com/extemporelang/stb")
- (commit commit)))
- (sha256
- (base32
- "0y0aa20pj9311x2ii06zg8xs34idg14hfgldqc5ymizc6cf1qiqv"))
- (file-name (string-append name "-" version "-checkout"))))
- (build-system cmake-build-system)
- (arguments `(#:tests? #f)) ; no tests included
- ;; Extempore refuses to build on architectures other than x86_64
- (supported-systems '("x86_64-linux"))
- (home-page "https://github.com/extemporelang/stb")
- (synopsis "Image library for Extempore")
- (description
- "This package is a collection of assorted single-file libraries. Of
-all included libraries only the image loading and decoding library is
-installed as @code{stb_image}.")
- (license license:public-domain))))
-
(define-public optipng
(package
(name "optipng")
@@ -1950,7 +1914,8 @@ identical visual appearance.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
- (base32 "0fjmjq0ws9rlblkcqxxw2lv7zvvyi618jqzlnz5z9zb477jwdfib"))))
+ (base32 "0fjmjq0ws9rlblkcqxxw2lv7zvvyi618jqzlnz5z9zb477jwdfib"))
+ (patches (search-patches "grim-revert-output-rotation.patch"))))
(build-system meson-build-system)
(native-inputs `(("pkg-config" ,pkg-config)
("scdoc" ,scdoc)))
@@ -2181,12 +2146,12 @@ by AOM, including with alpha.")
`(("imlib2" ,imlib2)
("libtiff" ,libtiff)
("libpng" ,libpng)
- ("libungif", libungif)
- ("libjpeg", libjpeg-turbo)
+ ("libungif" ,libungif)
+ ("libjpeg" ,libjpeg-turbo)
("libwebp" ,libwebp)
("openjpeg" ,openjpeg)
("lcms" ,lcms)
- ("zlib", zlib)
+ ("zlib" ,zlib)
("glib" ,glib)
;; Support for gtk3 is in the testing stage.
("gtk+" ,gtk+-2)))
diff --git a/gnu/packages/imagemagick.scm b/gnu/packages/imagemagick.scm
index ccc0cfb493..e4efea4e45 100644
--- a/gnu/packages/imagemagick.scm
+++ b/gnu/packages/imagemagick.scm
@@ -48,14 +48,14 @@
;; The 7 release series has an incompatible API, while the 6 series is still
;; maintained. Don't update to 7 until we've made sure that the ImageMagick
;; users are ready for the 7-series API.
- (version "6.9.11-11")
+ (version "6.9.11-34")
(source (origin
(method url-fetch)
(uri (string-append "mirror://imagemagick/ImageMagick-"
version ".tar.xz"))
(sha256
(base32
- "1b67rrppvm04aqr76qky5h2a0j2d161h8kwa04fv611w5xwandr2"))))
+ "0acdjkkgjgpfcwj9h9zncywjjrrgb9sh0cvfn3jamjxh5byf638s"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags '("--with-frozenpaths" "--without-gcc-arch"
diff --git a/gnu/packages/inkscape.scm b/gnu/packages/inkscape.scm
index 85b0ba9fcf..4ac3cf3966 100644
--- a/gnu/packages/inkscape.scm
+++ b/gnu/packages/inkscape.scm
@@ -5,6 +5,7 @@
;;; Copyright © 2017, 2020 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2020 Maxim Cournoyer <maxim.cournoyer@gmail.com>
+;;; Copyright © 2020 Boris A. Dekshteyn <boris.dekshteyn@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -117,7 +118,7 @@ as the native format.")
(define-public inkscape-1.0
(package
(name "inkscape")
- (version "1.0")
+ (version "1.0.1")
(source
(origin
(method url-fetch)
@@ -126,7 +127,7 @@ as the native format.")
"inkscape-" version ".tar.xz"))
(sha256
(base32
- "1fwl7yjkykqb86555k4fm24inhc40mrvxqwgl2v2vi9alv8j7hc9"))
+ "1hjp5nnyx2m3miji6q4lcb6zgbi498v641dc7apkqqvayknrb4ng"))
(modules '((guix build utils)
(ice-9 format)))
(snippet
diff --git a/gnu/packages/ipfs.scm b/gnu/packages/ipfs.scm
index 222607b91a..417956a394 100644
--- a/gnu/packages/ipfs.scm
+++ b/gnu/packages/ipfs.scm
@@ -214,7 +214,7 @@ written in Go.")
(define-public go-ipfs
(package
(name "go-ipfs")
- (version "0.6.0")
+ (version "0.7.0")
(source
(origin
(method url-fetch/tarbomb)
@@ -222,7 +222,7 @@ written in Go.")
"https://dist.ipfs.io/go-ipfs/v" version
"/go-ipfs-source.tar.gz"))
(sha256
- (base32 "14bgq2j2bjjy0pspy2lsj5dm3w9rmfha0l8kyq5ig86yhc4nzn80"))
+ (base32 "1fkzwm4qxxpmbjammk6s5qcyjxivfa0ydqz4mpz1w756c4jq0jf3"))
(file-name (string-append name "-" version "-source"))))
(build-system go-build-system)
(arguments
diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index 3590ea9c1e..97bb0b5d41 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -37,6 +37,7 @@
#:use-module (guix hg-download)
#:use-module (guix git-download)
#:use-module (guix svn-download)
+ #:use-module ((guix build utils) #:select (alist-replace))
#:use-module (guix utils)
#:use-module (guix build-system ant)
#:use-module (guix build-system gnu)
@@ -290,7 +291,8 @@ language.")
(uri (string-append "mirror://sourceforge/jamvm/jamvm/"
"JamVM%20" version "/jamvm-"
version ".tar.gz"))
- (patches (search-patches "jamvm-arm.patch"))
+ (patches (search-patches "jamvm-1.5.1-aarch64-support.patch"
+ "jamvm-1.5.1-armv7-support.patch"))
(sha256
(base32
"06lhi03l3b0h48pc7x58bk9my2nrcf1flpmglvys3wyad6yraf36"))
@@ -306,13 +308,30 @@ language.")
(assoc-ref %build-inputs "classpath"))
"--disable-int-caching"
"--enable-runtime-reloc-checks"
- "--enable-ffi")))
+ "--enable-ffi")
+ #:phases
+ ,(if (string-prefix? "aarch64" (or (%current-system)
+ (%current-target-system)))
+ ;; Makefiles and the configure script need to be regenerated to
+ ;; incorporate support for AArch64.
+ '(modify-phases %standard-phases
+ (replace 'bootstrap
+ (lambda _ (invoke "autoreconf" "-vif"))))
+ '%standard-phases)))
(inputs
`(("classpath" ,classpath-bootstrap)
("jikes" ,jikes)
("libffi" ,libffi)
("zip" ,zip)
("zlib" ,zlib)))
+ (native-inputs
+ (if (string-prefix? "aarch64" (or (%current-system)
+ (%current-target-system)))
+ ;; Additional packages needed for autoreconf.
+ `(("autoconf" ,autoconf)
+ ("automake" ,automake)
+ ("libtool" ,libtool))
+ '()))
(home-page "http://jamvm.sourceforge.net/")
(synopsis "Small Java Virtual Machine")
(description "JamVM is a Java Virtual Machine conforming to the JVM
@@ -697,7 +716,8 @@ machine.")))
(file-name (string-append "classpath-" version "-checkout"))
(sha256
(base32
- "1v2rww76ww322mpg3s12a1kkc6gkp31bm9gcxs532h0wq285fiw4"))))
+ "1v2rww76ww322mpg3s12a1kkc6gkp31bm9gcxs532h0wq285fiw4"))
+ (patches (search-patches "classpath-aarch64-support.patch"))))
(arguments
`(#:make-flags
;; Ensure that the initial heap size is smaller than the maximum
@@ -763,7 +783,9 @@ machine.")))
(base32
"1nl0zxz8y5x8gwsrm7n32bry4dx8x70p8z3s9jbdvs8avyb8whkn"))
(patches
- (search-patches "jamvm-2.0.0-disable-branch-patching.patch"))
+ (search-patches "jamvm-2.0.0-disable-branch-patching.patch"
+ "jamvm-2.0.0-opcode-guard.patch"
+ "jamvm-2.0.0-aarch64-support.patch"))
(snippet
'(begin
;; Remove precompiled software.
@@ -771,9 +793,10 @@ machine.")))
#t))))
(build-system gnu-build-system)
(arguments
- `(#:configure-flags
- (list (string-append "--with-classpath-install-dir="
- (assoc-ref %build-inputs "classpath")))))
+ (substitute-keyword-arguments (package-arguments jamvm-1-bootstrap)
+ ((#:configure-flags _)
+ '(list (string-append "--with-classpath-install-dir="
+ (assoc-ref %build-inputs "classpath"))))))
(inputs
`(("classpath" ,classpath-devel)
("ecj-javac-wrapper" ,ecj-javac-wrapper)
@@ -2409,14 +2432,14 @@ new Date();"))
(define-public ant/java8
(package (inherit ant-bootstrap)
(name "ant")
- (version "1.10.1")
+ (version "1.10.8")
(source (origin
(method url-fetch)
(uri (string-append "mirror://apache/ant/source/apache-ant-"
version "-src.tar.gz"))
(sha256
(base32
- "10p3dh77lkzzzcy32dk9azljixzadp46fggjfbvgkl8mmb8cxxv8"))
+ "066k2isig5xm70cihj9p73hkp5w7h5zbfqz5kxb6cwr9cb86xl2k"))
(modules '((guix build utils)))
(snippet
'(begin
@@ -2444,7 +2467,7 @@ new Date();"))
;; "check" phase, because the dependency on "test-jar" would always
;; result in the tests to be run.
(substitute* "build.xml"
- (("depends=\"jars,test-jar\"") "depends=\"jars\""))
+ (("depends=\"jars,test-jar") "depends=\"jars"))
(invoke "bash" "bootstrap.sh"
(string-append "-Ddist.dir="
(assoc-ref outputs "out")))))))))
@@ -2457,14 +2480,14 @@ new Date();"))
;; requires Java 8.
(define-public ant
(package (inherit ant/java8)
- (version "1.9.9")
+ (version "1.9.15")
(source (origin
(method url-fetch)
(uri (string-append "mirror://apache/ant/source/apache-ant-"
version "-src.tar.gz"))
(sha256
(base32
- "1k28mka0m3isy9yr8gz84kz1f3f879rwaxrd44vdn9xbfwvwk86n"))))
+ "1xy30f1w5gaqk6g3f0vw7ygix4rb6032qkcw42y4z8wd9jihgygd"))))
(native-inputs
`(("jdk" ,icedtea-7 "jdk")
("zip" ,zip)
@@ -5118,6 +5141,72 @@ including java-asm.")
((#:tests? _) #f)))
(native-inputs `())))
+(define-public java-asm-8
+ (package
+ (inherit java-asm)
+ (version "8.0.1")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://gitlab.ow2.org/asm/asm")
+ (commit (string-append
+ "ASM_" (string-join (string-split version #\.)
+ "_")))))
+ (file-name (git-file-name "java-asm" version))
+ (sha256
+ (base32
+ "1s6j27zc1i76gh891w2g48b1c3abp9w8zp5j54yb1vm5h8djkd69"))))
+ (arguments
+ `(#:jar-name "asm8.jar"
+ #:source-dir "asm/src/main/java"
+ #:test-dir "asm/src/test"
+ ;; tests depend on junit5
+ #:tests? #f))
+ (propagated-inputs '())
+ (native-inputs '())))
+
+(define-public java-asm-tree-8
+ (package
+ (inherit java-asm-8)
+ (name "java-asm-tree")
+ (arguments
+ `(#:jar-name "asm-tree.jar"
+ #:source-dir "asm-tree/src/main/java"
+ #:test-dir "asm-tree/src/test"
+ ;; tests depend on junit5
+ #:tests? #f))
+ (inputs
+ `(("java-asm" ,java-asm-8)))))
+
+(define-public java-asm-analysis-8
+ (package
+ (inherit java-asm-8)
+ (name "java-asm-analysis")
+ (arguments
+ `(#:jar-name "asm-analysis.jar"
+ #:source-dir "asm-analysis/src/main/java"
+ #:test-dir "asm-analysis/src/test"
+ ;; tests depend on junit5
+ #:tests? #f))
+ (inputs
+ `(("java-asm" ,java-asm-8)
+ ("java-asm-tree" ,java-asm-tree-8)))))
+
+(define-public java-asm-util-8
+ (package
+ (inherit java-asm-8)
+ (name "java-asm-util")
+ (arguments
+ `(#:jar-name "asm-util8.jar"
+ #:source-dir "asm-util/src/main/java"
+ #:test-dir "asm-util/src/test"
+ ;; tests depend on junit5
+ #:tests? #f))
+ (inputs
+ `(("java-asm" ,java-asm-8)
+ ("java-asm-analysis" ,java-asm-analysis-8)
+ ("java-asm-tree" ,java-asm-tree-8)))))
+
(define-public java-cglib
(package
(name "java-cglib")
@@ -8146,6 +8235,410 @@ import org.antlr.grammar.v2.ANTLRTreePrinter;"))
(propagated-inputs
`(("stringtemplate" ,java-stringtemplate-3)))))
+(define-public java-treelayout
+ (package
+ (name "java-treelayout")
+ (version "1.0.3")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/abego/treelayout")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "18my8ql9b1y0n0zrvkih7xfhf3dpgfhyfifvkcfhmwcvw3divxak"))))
+ (build-system ant-build-system)
+ (arguments
+ `(#:jar-name (string-append ,name "-" ,version ".jar")
+ #:source-dir "org.abego.treelayout/src/main/java"
+ #:test-dir "org.abego.treelayout/src/test"))
+ (inputs
+ `(("java-junit" ,java-junit)))
+ (native-inputs
+ `(("java-hamcrest-core" ,java-hamcrest-core)))
+ (home-page "http://treelayout.sourceforge.net")
+ (synopsis "Tree Layout Algorithm in Java")
+ (description "TreeLayout creates tree layouts for arbitrary trees. It is
+not restricted to a specific output or format, but can be used for any kind of
+two dimensional diagram. Examples are Swing based components, SVG files, etc.
+This is possible because TreeLayout separates the layout of a tree from the
+actual rendering.")
+ (license license:bsd-3)))
+
+(define-public java-antlr4-runtime
+ (package
+ (name "java-antlr4-runtime")
+ (version "4.8")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/antlr/antlr4")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1qal3add26qxskm85nk7r758arladn5rcyjinmhlhznmpbbv9j8m"))
+ (patches
+ (search-patches "java-antlr4-Add-standalone-generator.patch"
+ "java-antlr4-fix-code-too-large.java"))))
+ (build-system ant-build-system)
+ (arguments
+ `(#:jar-name "java-antlr4-runtime.jar"
+ #:source-dir "runtime/Java/src/org"
+ #:tests? #f; tests depend on java-antlr4 itself
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'build 'copy-resources
+ (lambda _
+ (copy-recursively "runtime/Java/src/main/dot"
+ "build/classes")
+ #t)))))
+ (home-page "https://antlr.org")
+ (synopsis "ANTLR runtime library")
+ (description "This package contains the runtime library used with generated
+sources by ANTLR.")
+ (license license:bsd-3)))
+
+(define-public antlr4
+ (package
+ (inherit java-antlr4-runtime)
+ (name "antlr4")
+ (arguments
+ `(#:jar-name "antlr4.jar"
+ #:source-dir "tool/src"
+ #:test-dir "tool-testsuite/test:runtime-testsuite/test:runtime-testsuite/annotations/src"
+ #:test-include (list "**/Test*.java")
+ #:test-exclude (list
+ ;; no runnable method
+ "**/TestOutputReading.java"
+ ;; no @Test methods
+ "**/TestParserErrors.java"
+ "**/TestSemPredEvalParser.java"
+ "**/TestSets.java"
+ "**/TestListeners.java"
+ "**/TestParseTrees.java"
+ "**/TestParserExec.java"
+ "**/TestLexerErrors.java"
+ "**/TestPerformance.java"
+ "**/TestCompositeParsers.java"
+ "**/TestLexerExec.java"
+ "**/TestSemPredEvalLexer.java"
+ "**/TestLeftRecursion.java"
+ "**/TestFullContextParsing.java"
+ "**/TestCompositeLexers.java"
+ ;; Null pointer exception
+ "**/TestCompositeGrammars.java"
+ ;; Wrong assumption on emoji
+ "**/TestUnicodeData.java")
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'build 'fix-build.xml
+ (lambda _
+ ;; tests are not in a java subdirectory
+ (substitute* "build.xml"
+ (("\\$\\{test.home\\}/java") "${test.home}"))
+ #t))
+ ;; tests require to have a working antlr4 binary
+ (delete 'check)
+ (add-after 'bin-install 'check
+ (lambda _
+ (invoke "ant" "compile-tests")
+ (invoke "ant" "check" "-Dtest.home=runtime-testsuite/annotations/src")
+ (invoke "ant" "check" "-Dtest.home=runtime-testsuite/test")
+ (invoke "ant" "check" "-Dtest.home=tool-testsuite/test")
+ #t))
+ (add-before 'check 'remove-unrelated-languages
+ (lambda _
+ ;; There are tests for other languages that ANTLR can generate, but
+ ;; we don't have the infrastructure for that yet. Let's test Java
+ ;; generation only.
+ (for-each
+ (lambda (language)
+ (delete-file-recursively
+ (string-append "runtime-testsuite/test/org/antlr/v4/test/runtime/"
+ language)))
+ '("cpp" "csharp" "go" "javascript" "php" "python" "python2"
+ "python3" "swift"))
+ #t))
+ (add-before 'check 'generate-test-parsers
+ (lambda* (#:key outputs #:allow-other-keys)
+ (define (run-antlr dir filename package)
+ (invoke "antlr4" "-lib" dir "-visitor" "-no-listener"
+ "-package" package (string-append dir "/" filename)
+ "-Xlog"))
+ (setenv "PATH" (string-append (getenv "PATH") ":"
+ (assoc-ref outputs "out") "/bin"))
+ (run-antlr "runtime-testsuite/test/org/antlr/v4/test/runtime/java/api"
+ "Java.g4" "org.antlr.v4.test.runtime.java.api")
+ (run-antlr "runtime-testsuite/test/org/antlr/v4/test/runtime/java/api"
+ "VisitorBasic.g4" "org.antlr.v4.test.runtime.java.api")
+ (run-antlr "runtime-testsuite/test/org/antlr/v4/test/runtime/java/api"
+ "VisitorCalc.g4" "org.antlr.v4.test.runtime.java.api")
+ #t))
+ (add-before 'check 'remove-graphemes
+ (lambda _
+ ;; When running antlr on grahemes.g4, we get a runtime exception:
+ ;; set is empty. So delete the file that depends on it.
+ (delete-file
+ "runtime-testsuite/test/org/antlr/v4/test/runtime/java/api/perf/TimeLexerSpeed.java")
+ #t))
+ (add-after 'install 'bin-install
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (let ((jar (string-append (assoc-ref outputs "out") "/share/java"))
+ (bin (string-append (assoc-ref outputs "out") "/bin")))
+ (mkdir-p bin)
+ (with-output-to-file (string-append bin "/antlr4")
+ (lambda _
+ (display
+ (string-append "#!" (which "sh") "\n"
+ "java -cp " jar "/antlr4.jar:"
+ (string-join
+ (apply
+ append
+ (map
+ (lambda (input)
+ (find-files (assoc-ref inputs input)
+ ".*\\.jar"))
+ '("antlr3" "java-stringtemplate"
+ "java-antlr4-runtime" "java-treelayout"
+ "java-jsonp-api" "java-icu4j")))
+ ":")
+ " org.antlr.v4.Tool $*"))))
+ (chmod (string-append bin "/antlr4") #o755)
+ #t)))
+ (add-before 'build 'copy-resources
+ (lambda _
+ (copy-recursively "tool/resources/" "build/classes")
+ #t))
+ (add-before 'build 'generate-unicode
+ (lambda _
+ ;; First: build the generator
+ (invoke "javac" "-cp" (getenv "CLASSPATH")
+ "tool/src/org/antlr/v4/unicode/UnicodeRenderer.java"
+ "tool/src/org/antlr/v4/unicode/UnicodeDataTemplateController.java")
+ ;; Then use it
+ (invoke "java" "-cp" (string-append (getenv "CLASSPATH")
+ ":tool/src:runtime/Java")
+ "org.antlr.v4.unicode.UnicodeRenderer"
+ "tool/resources/org/antlr/v4/tool/templates"
+ "unicodedata"
+ "tool/src/org/antlr/v4/unicode/UnicodeData.java")
+ ;; It seems there is a bug with our ST4
+ (substitute* "tool/src/org/antlr/v4/unicode/UnicodeData.java"
+ (("\\\\>") ">"))
+ ;; Remove the additional file
+ (delete-file "tool/src/org/antlr/v4/unicode/UnicodeRenderer.java")
+ #t))
+ (add-before 'build 'generate-grammar
+ (lambda* (#:key inputs #:allow-other-keys)
+ (with-directory-excursion "tool/src/org/antlr/v4/parse"
+ (for-each (lambda (file)
+ (display file)
+ (newline)
+ (invoke "antlr3" file))
+ '("ANTLRLexer.g" "ANTLRParser.g" "BlockSetTransformer.g"
+ "GrammarTreeVisitor.g" "ATNBuilder.g"
+ "ActionSplitter.g" "LeftRecursiveRuleWalker.g")))
+ (with-directory-excursion "tool/src/org/antlr/v4/codegen"
+ (install-file "../parse/ANTLRParser.tokens" ".")
+ (display "SourceGenTriggers.g\n")
+ (invoke "antlr3" "SourceGenTriggers.g"))
+ #t)))))
+ (inputs
+ `(("antlr3" ,antlr3)
+ ("java-antlr4-runtime" ,java-antlr4-runtime)
+ ("java-icu4j" ,java-icu4j)
+ ("java-jsonp-api" ,java-jsonp-api)
+ ("java-stringtemplate" ,java-stringtemplate)
+ ("java-treelayout" ,java-treelayout)))
+ (native-inputs
+ `(("java-junit" ,java-junit)))
+ (synopsis "Parser and lexer generator in Java")
+ (description "ANTLR (ANother Tool for Language Recognition) is a powerful
+parser generator for reading, processing, executing, or translating structured
+text or binary files. It's widely used to build languages, tools, and
+frameworks. From a grammar, ANTLR generates a parser that can build and walk
+parse trees.")))
+
+(define-public java-antlr4-runtime-4.1
+ (package
+ (inherit java-antlr4-runtime)
+ (version "4.1")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/antlr/antlr4")
+ (commit version)))
+ (file-name (git-file-name "antlr4" version))
+ (sha256
+ (base32
+ "1i8hmx5an58cjyvhji0xgpvd6lq00z1k1mjys025q2wqc25wv4c1"))))
+ (arguments
+ (substitute-keyword-arguments (package-arguments java-antlr4-runtime)
+ ((#:phases phases)
+ `(modify-phases ,phases
+ (add-before 'configure 'chmod
+ (lambda _
+ (chmod "build.xml" #o644)
+ #t))))))
+ (inputs
+ `(("java-treelayout" ,java-treelayout)))))
+
+(define-public antlr4-4.1
+ (package
+ (inherit antlr4)
+ (version (package-version java-antlr4-runtime-4.1))
+ (source (package-source java-antlr4-runtime-4.1))
+ (arguments
+ (substitute-keyword-arguments (package-arguments antlr4)
+ ((#:test-dir _)
+ "tool/test")
+ ((#:test-exclude excludes)
+ `(list "**/TestParseErrors.java"
+ "**/TestTopologicalSort.java"
+ ,@excludes))
+ ((#:phases phases)
+ `(modify-phases ,phases
+ (delete 'generate-unicode)
+ (replace 'check
+ (lambda _
+ (invoke "ant" "check")
+ #t))
+ (add-before 'configure 'chmod
+ (lambda _
+ (chmod "build.xml" #o644)
+ #t))
+ (delete 'remove-graphemes)
+ (delete 'remove-unrelated-languages)
+ (delete 'generate-test-parsers)))))
+ (inputs
+ (alist-replace
+ "java-antlr4-runtime" (list java-antlr4-runtime-4.1)
+ (package-inputs antlr4)))))
+
+(define-public java-tunnelvisionlabs-antlr4-runtime-annotations
+ (package
+ (inherit java-antlr4-runtime)
+ (name "java-tunnelvisionlabs-antlr4-runtime-annotations")
+ (version "4.7.4")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/tunnelvisionlabs/antlr4")
+ (commit (string-append version "-opt"))))
+ (file-name (git-file-name "java-tunnelvisionlabs-antlr4" version))
+ (sha256
+ (base32
+ "1mf2lvvsszpialsk23ma83pwp50nd32lrbjpa847zlm5gmranbr8"))
+ (patches
+ (search-patches "java-antlr4-Add-standalone-generator.patch"
+ "java-tunnelvisionlabs-antlr-code-too-large.patch"))))
+ (arguments
+ `(#:jar-name "java-antlr4-runtime-annotations.jar"
+ #:source-dir "runtime/JavaAnnotations/src"
+ #:tests? #f; no tests
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'build 'copy-resources
+ (lambda _
+ (copy-recursively "runtime/JavaAnnotations/resources"
+ "build/classes")
+ #t))
+ (add-after 'copy-resources 'rebuild-jar
+ (lambda _
+ (invoke "ant" "jar")
+ #t)))))
+ (inputs '())
+ (native-inputs '())
+ (synopsis "Annotations for ANTLR's runtime library")
+ (description "This package contains annotations used during the build of
+the runtime library of ANTLR.")))
+
+;; the runtime of this library requires a lexer that is generated by antlr4.
+;; However, antlr4 itself requires this library at build and run-time. We
+;; use antlr4@4.1, the closest version of antlr that doesn't need this
+;; bootstrap process, to generate the lexer. The generated lexer is built
+;; for the 4.1 runtime, which is slightly different from this runtime.
+;; So, we build the runtime with antlr 4.1, with a broken xml lexer, that we
+;; use to build antlr4. We then re-use this antlr4 to build the runtime, and
+;; the proper, working, runtime to build antlr4 again.
+(define java-tunnelvisionlabs-antlr4-runtime-bootstrap
+ (package
+ (inherit java-antlr4-runtime)
+ (name "java-tunnelvisionlabs-antlr4-runtime")
+ (version (package-version java-tunnelvisionlabs-antlr4-runtime-annotations))
+ (source (package-source java-tunnelvisionlabs-antlr4-runtime-annotations))
+ (arguments
+ `(#:jar-name "java-antlr4-runtime.jar"
+ #:source-dir "runtime/Java/src"
+ #:tests? #f; tests require antlr4, but antlr4 depends on this package
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'build 'generate-xpath-lexer
+ (lambda _
+ (invoke "antlr4" "-lib" "runtime/Java/src/org/antlr/v4/runtime/tree/xpath"
+ "-visitor" "-no-listener"
+ "-package" "org.antlr.v4.runtime.tree.xpath"
+ "runtime/Java/src/org/antlr/v4/runtime/tree/xpath/XPathLexer.g4")
+ ;; Generated code is for an incompatible version of the runtime
+ (substitute* "runtime/Java/src/org/antlr/v4/runtime/tree/xpath/XPathLexer.java"
+ (("LexerATNSimulator\\(this,_ATN,_decisionToDFA,_sharedContextCache\\)")
+ "LexerATNSimulator(this,_ATN)"))
+ #t))
+ (add-before 'build 'copy-resources
+ (lambda _
+ (copy-recursively "runtime/Java/src/main/dot"
+ "build/classes")
+ #t)))))
+ (native-inputs
+ `(("antlr4" ,antlr4-4.1)
+ ("java-tunnelvisionlabs-antlr4-runtime-annotations"
+ ,java-tunnelvisionlabs-antlr4-runtime-annotations)))))
+
+(define java-tunnelvisionlabs-antlr4-bootstrap
+ (package
+ (inherit antlr4)
+ (name "java-tunnelvisionlabs-antlr4")
+ (version (package-version java-tunnelvisionlabs-antlr4-runtime-annotations))
+ (source (package-source java-tunnelvisionlabs-antlr4-runtime-annotations))
+ (arguments
+ (substitute-keyword-arguments (package-arguments antlr4)
+ ((#:test-dir _)
+ "tool/test:runtime-testsuite/src")
+ ((#:phases phases)
+ `(modify-phases ,phases
+ (delete 'remove-unrelated-languages)
+ (delete 'remove-graphemes)
+ (delete 'generate-test-parsers)
+ (delete 'check)))))
+ (native-inputs '())
+ (inputs
+ `(("antlr3" ,antlr3)
+ ("java-antlr4-runtime" ,java-tunnelvisionlabs-antlr4-runtime-bootstrap)
+ ("java-tunnelvisionlabs-antlr4-runtime-annotations"
+ ,java-tunnelvisionlabs-antlr4-runtime-annotations)
+ ("java-icu4j" ,java-icu4j)
+ ("java-jsonp-api" ,java-jsonp-api)
+ ("java-stringtemplate" ,java-stringtemplate)
+ ("java-treelayout" ,java-treelayout)))))
+
+(define-public java-tunnelvisionlabs-antlr4-runtime
+ (package
+ (inherit java-tunnelvisionlabs-antlr4-runtime-bootstrap)
+ (native-inputs
+ (alist-replace
+ "antlr4" (list java-tunnelvisionlabs-antlr4-bootstrap)
+ (package-native-inputs java-tunnelvisionlabs-antlr4-runtime-bootstrap)))))
+
+(define-public java-tunnelvisionlabs-antlr4
+ (package
+ (inherit java-tunnelvisionlabs-antlr4-bootstrap)
+ (inputs
+ (alist-replace
+ "java-antlr4-runtime" (list java-tunnelvisionlabs-antlr4-runtime)
+ (package-inputs java-tunnelvisionlabs-antlr4-bootstrap)))))
+
(define-public java-commons-cli-1.2
;; This is a bootstrap dependency for Maven2.
(package
@@ -9538,18 +10031,24 @@ make data-binding work.")
(name "java-hdrhistogram")
(version "2.1.9")
(source (origin
- (method url-fetch)
- (uri (string-append "https://github.com/HdrHistogram/HdrHistogram/"
- "archive/HdrHistogram-" version ".tar.gz"))
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/HdrHistogram/HdrHistogram")
+ (commit (string-append "HdrHistogram-" version))))
+ (file-name (git-file-name name version))
(sha256
(base32
- "1sicbmc3sr42nw93qbkb26q9rn33ag33k6k77phjc3j5h5gjffqv"))))
+ "1cw8aa1vk258k42xs6wpy72m4gbai540jq032qsa7c5586iawx2d"))))
(build-system ant-build-system)
(arguments
`(#:jar-name "java-hdrhistogram.jar"
#:source-dir "src/main/java"
#:phases
(modify-phases %standard-phases
+ (add-after 'unpack 'make-files-writable
+ (lambda _
+ (for-each make-file-writable (find-files "."))
+ #t))
(add-before 'configure 'set-version
(lambda _
(let* ((version-java "src/main/java/org/HdrHistogram/Version.java")
@@ -10717,7 +11216,7 @@ application components to create, send, receive, and read messages.")
`(("junit" ,java-junit)
("hamcrest" ,java-hamcrest-core)))
(home-page "https://javaee.github.io/javamail/")
- (synopsis "Mail-related functionnalities in Java")
+ (synopsis "Mail-related functionality in Java")
(description "The JavaMail API provides a platform-independent and
protocol-independent framework to build mail and messaging applications.")
;; General Public License Version 2 only ("GPL") or the Common Development
@@ -11994,7 +12493,7 @@ Java method invocation.")
(inputs
`(("java-native-access" ,java-native-access)))
(synopsis "Cross-platform mappings for jna")
- (description "java-native-access-platfrom has cross-platform mappings
+ (description "java-native-access-platform has cross-platform mappings
and mappings for a number of commonly used platform functions, including a
large number of Win32 mappings as well as a set of utility classes that
simplify native access.")))
@@ -12945,3 +13444,98 @@ in Java, usable from Groovy, Kotlin, Scala, etc.")
used in JVM-based languages. They serve as an additional documentation and
can be interpreted by IDEs and static analysis tools to improve code analysis.")
(license license:expat)))
+
+(define-public java-javaparser
+ (package
+ (name "java-javaparser")
+ (version "3.16.1")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/javaparser/javaparser")
+ (commit (string-append "javaparser-parent-" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1a4jk12ffa31fa0y8vda0739vpfj1206p0nha842b7bixbvwamv9"))
+ (modules '((guix build utils)))
+ (snippet
+ '(begin
+ (for-each delete-file
+ (find-files "." "\\.jar$"))
+ #t))))
+ (build-system ant-build-system)
+ (arguments
+ `(#:tests? #f; tests require jbehave and junit5
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'build 'fill-template
+ (lambda _
+ (with-directory-excursion "javaparser-core/src/main"
+ (copy-file "java-templates/com/github/javaparser/JavaParserBuild.java"
+ "java/com/github/javaparser/JavaParserBuild.java")
+ (substitute* "java/com/github/javaparser/JavaParserBuild.java"
+ (("\\$\\{project.version\\}") ,version)
+ (("\\$\\{project.name\\}") "javaparser")
+ (("\\$\\{project.build.finalName\\}") "javaparser")
+ (("\\$\\{maven.version\\}") "fake")
+ (("\\$\\{maven.build.version\\}") "fake")
+ (("\\$\\{build.timestamp\\}") "0")
+ (("\\$\\{java.vendor\\}") "Guix")
+ (("\\$\\{java.vendor.url\\}") "https://gnu.org/software/guix")
+ (("\\$\\{java.version\\}") "1.8")
+ (("\\$\\{os.arch\\}") "any")
+ (("\\$\\{os.name\\}") "GuixSD")
+ (("\\$\\{os.version\\}") "not available")))
+ #t))
+ (add-before 'build 'generate-javacc
+ (lambda _
+ (with-directory-excursion "javaparser-core/src/main/java"
+ (invoke "java" "javacc" "../javacc/java.jj"))
+ #t))
+ (add-before 'build 'copy-javacc-support
+ (lambda _
+ (with-directory-excursion "javaparser-core/src/main"
+ (copy-recursively "javacc-support" "java"))
+ #t))
+ (replace 'build
+ (lambda _
+ (define (build name)
+ (format #t "Building ~a~%" name)
+ (delete-file-recursively "build/classes")
+ (mkdir-p "build/classes")
+ (apply invoke "javac"
+ "-cp" (string-append (getenv "CLASSPATH") ":"
+ (string-join (find-files "build/jar" ".")
+ ":"))
+ "-d" "build/classes"
+ (find-files (string-append name "/src/main/java")
+ ".*.java"))
+ (invoke "jar" "-cf" (string-append "build/jar/" name ".jar")
+ "-C" "build/classes" "."))
+ (mkdir-p "build/classes")
+ (mkdir-p "build/test-classes")
+ (mkdir-p "build/jar")
+ (build "javaparser-core")
+ (build "javaparser-core-serialization")
+ (build "javaparser-core-generators")
+ (build "javaparser-core-metamodel-generator")
+ (build "javaparser-symbol-solver-core")
+ #t))
+ (replace 'install
+ (install-jars "build/jar")))))
+ (inputs
+ `(("java-guava" ,java-guava)
+ ("java-jboss-javassist" ,java-jboss-javassist)
+ ("java-jsonp-api" ,java-jsonp-api)))
+ (native-inputs
+ `(("javacc" ,javacc)))
+ (home-page "http://javaparser.org/")
+ (synopsis "Parser for Java")
+ (description
+ "This project contains a set of libraries implementing a Java 1.0 - Java
+11 Parser with advanced analysis functionalities.")
+ (license (list
+ ;; either lgpl or asl
+ license:lgpl3+
+ license:asl2.0))))
diff --git a/gnu/packages/julia.scm b/gnu/packages/julia.scm
index 78488a4e99..65fa726d92 100644
--- a/gnu/packages/julia.scm
+++ b/gnu/packages/julia.scm
@@ -2,6 +2,7 @@
;;; Copyright © 2015, 2016, 2017 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2016, 2020 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2020 Nicolò Balzarotti <nicolo@nixo.xyz>
+;;; Copyright © 2020 Tim Howes <timhowes@lavabit.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -53,7 +54,7 @@
(let ((commit "35b1504507a7a4168caae3d78db54d1121b121e1")
(revision "1"))
;; When upgrading Julia, also upgrade this. Get the commit from
- ;; https://github.com/JuliaLang/julia/blob/v1.4.1/deps/libuv.version
+ ;; https://github.com/JuliaLang/julia/blob/v1.5.2/deps/libuv.version
(package
(inherit libuv)
(name "libuv-julia")
@@ -103,7 +104,7 @@
"/deps/patches/" name ".patch"))
(define (julia-patch name sha)
- (let ((version "1.4.1"))
+ (let ((version "1.5.2"))
(origin (method url-fetch)
(uri (julia-patch-url version name))
(sha256 (base32 sha))
@@ -111,63 +112,52 @@
(define llvm-julia
(package
- (inherit llvm-8)
+ (inherit llvm-9)
(name "llvm-julia")
(source (origin
- (inherit (package-source llvm-8))
+ (inherit (package-source llvm-9))
;; Those patches are inside the Julia source repo.
;; They are _not_ Julia specific (https://github.com/julialang/julia#llvm)
;; but they are required to build Julia.
;; Discussion: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=919628
(patches
- (map (match-lambda
- ((name hash)
- (julia-patch name hash)))
- (list
- '("llvm-7.0-D44650"
- "1h55kkmkiisfj6sk956if2bcj9s0v6n5czn8dxb870vp5nccj3ir")
- '("llvm-6.0-DISABLE_ABI_CHECKS"
- "014fawd1ba7yckalypfld22zgic87x9nx3cim42zrwygywd36pyg")
- '("llvm-6.0-NVPTX-addrspaces"
- "1qdi2zmrjsrj0h84zv2vyly2hjcn4f67mfy0s1q353g4v4jkscqc")
- '("llvm-D27629-AArch64-large_model_6.0.1"
- "1qrshmlqvnasdyc158vfn3hnbigqph3lsq7acb9w8lwkpnnm2j4z")
- '("llvm8-D34078-vectorize-fdiv"
- "19spqc3xsazn1xs9gpcgv9ldadfkv49rmc5khl7sf1dlmhgi4602")
- '("llvm7-D50010-VNCoercion-ni"
- "18scg6aa036xa1508s7q93w9dvc5gp69fz6yl6fkh4yffw4gymw6")
- '("llvm-8.0-D50167-scev-umin"
- "0g9w2x8yryjdkihnrf18x0yi5bi14c5p8wffda1w732dr5ckzk94")
- '("llvm-D57118-powerpc"
- "0vxz5s0s9b625v1rv8lg1566yhxh1i91ydzmvy5s7njvzc7p19aw")
- '("llvm8-WASM-addrspaces"
- "1176agj9hh7csdm2lnklb42zcdsb3q6lx9jiyp2shn4p2678y76q")
- '("llvm-exegesis-mingw"
- "0ph1cj1j7arvf1xq2xcr7qf9g0cpdl14fincgr67vpi520zvd3vp")
- '("llvm-test-plugin-mingw"
- "12z738cnahbf6n381im7i0hxp1m6k9hrnfjlmq9sac46nxly9gnj")
- '("llvm-8.0-D66401-mingw-reloc"
- "15v3p5sznn979cfnd7gdn3nd701fd7xd5aks6lnj1mslvljlq3ls")
- '("llvm7-revert-D44485"
- "0f59kq3p3mpwsbmskypbi4zn01l6ig0x7v2rjp08k2r8z8m6fa8n")
- '("llvm-8.0-D63688-wasm-isLocal"
- "0i9wi5n63ip3802z6m7aj3p07hkqjlmp4vg4wq3xkf9f6w9rksab")
- '("llvm-8.0-D55758-tablegen-cond"
- "1l08mg7qigravi7plsq3yzya80fljnp95n8faddr29wbr2qr0655")
- '("llvm-8.0-D59389-refactor-wmma"
- "0rgrwk4xlwpk7yai2j7xadcfws93rmk2hhh44fysa88imvrbp478")
- '("llvm-8.0-D59393-mma-ptx63-fix"
- "094jcsxbcx9fljj623mgmc0rjpk12s2rs0di0ck0hakzhr8mbv5n")
- '("llvm-8.0-D66657-codegen-degenerate"
- "1n1ddx19h90bbpimdyd9dh8fsm6gb93xxyqm4ljkxa1k3cx2vm72")
- '("llvm-8.0-D71495-vectorize-freduce"
- "1zff08wvji9lnpskk4b3p5zyjsy5hhy23ynxjqlj9dw7jvvfrf0p")
- '("llvm-8.0-D75072-SCEV-add-type"
- "0amlyyndsc90ml2k6prdahf24q0j23nfmlbqf8gcqcxpl5sqq3i6")
- '("llvm-8.0-D65174-limit-merge-stores"
- "1ls5114fhgip9rbqabqc16mi367ra0k75ngc1vyqqhq1ghm9x7y9"))))))
+ (map (match-lambda
+ ((name hash)
+ (julia-patch name hash)))
+ (list
+ '("llvm-D27629-AArch64-large_model_6.0.1"
+ "1qrshmlqvnasdyc158vfn3hnbigqph3lsq7acb9w8lwkpnnm2j4z")
+ '("llvm8-D34078-vectorize-fdiv"
+ "19spqc3xsazn1xs9gpcgv9ldadfkv49rmc5khl7sf1dlmhgi4602")
+ '("llvm-7.0-D44650"
+ "1h55kkmkiisfj6sk956if2bcj9s0v6n5czn8dxb870vp5nccj3ir")
+ '("llvm9-D50010-VNCoercion-ni"
+ "1s1d3sjsiq4vxg7ncy5cz56zgy5vcq6ls3iqaiqkvr23wyryqmdx")
+ '("llvm-exegesis-mingw"
+ "0ph1cj1j7arvf1xq2xcr7qf9g0cpdl14fincgr67vpi520zvd3vp")
+ '("llvm-test-plugin-mingw"
+ "12z738cnahbf6n381im7i0hxp1m6k9hrnfjlmq9sac46nxly9gnj")
+ '("llvm7-revert-D44485"
+ "0f59kq3p3mpwsbmskypbi4zn01l6ig0x7v2rjp08k2r8z8m6fa8n")
+ '("llvm-8.0-D66657-codegen-degenerate"
+ "1n1ddx19h90bbpimdyd9dh8fsm6gb93xxyqm4ljkxa1k3cx2vm72")
+ '("llvm-8.0-D71495-vectorize-freduce"
+ "1zff08wvji9lnpskk4b3p5zyjsy5hhy23ynxjqlj9dw7jvvfrf0p")
+ '("llvm-D75072-SCEV-add-type"
+ "029a3fywsm233vf48mscina24idd50dc75wr70lmimrhwnw27p0z")
+ '("llvm-9.0-D65174-limit-merge-stores"
+ "04bff1mnblfj9mxfdwr1qdnw3i3szmp60gnhxwas5y68qg33z6j0")
+ '("llvm9-D71443-PPC-MC-redef-symbol"
+ "1c93nv7rgc9jg5mqrnvv08xib1789qvlql94fwggh18mp3b9hbgy")
+ '("llvm-9.0-D78196"
+ "08a43hyg7yyqjq2vmfsmppf34xcz60wq6y9zw5fdyhw2h1mcnmns")
+ '("llvm-julia-tsan-custom-as"
+ "0awh40kf6lm4wn1nsjd1bmhfwq7rqj811szanp2xkpspykw9hg9s")
+ '("llvm-9.0-D85499"
+ "0vxlr35srvbvihlgrxq15v6dylp90vgi0qahj22j01jgqmdasjkm"))))
+ (patch-flags '("-p1"))))
(arguments
- (substitute-keyword-arguments (package-arguments llvm-8)
+ (substitute-keyword-arguments (package-arguments llvm-9)
((#:configure-flags flags)
`(list ;; Taken from NixOS. Only way I could get libLLVM-6.0.so
"-DCMAKE_BUILD_TYPE=Release"
@@ -231,7 +221,7 @@ libraries. It is also a bit like @code{ldd} and @code{otool -L}.")
(define-public julia
(package
(name "julia")
- (version "1.4.1")
+ (version "1.5.2")
(source (origin
(method url-fetch)
(uri (string-append
@@ -239,7 +229,7 @@ libraries. It is also a bit like @code{ldd} and @code{otool -L}.")
version "/julia-" version ".tar.gz"))
(sha256
(base32
- "030aza3qj5zcinxbrbqgi7p64q6klwq2bhwccraarx7l0hg9lw3i"))
+ "08wazf3f1lb2c2c5s700kyak8llfqwki8xlnqyrbwmwxjj801p2n"))
(patches
(search-patches "julia-SOURCE_DATE_EPOCH-mtime.patch"))))
(build-system gnu-build-system)
@@ -344,16 +334,6 @@ libraries. It is also a bit like @code{ldd} and @code{otool -L}.")
"tests = filter(e->!in(e,[\"backtrace\",\"exceptions\",\"precompile\",
\"client\",\"stacktraces\"]),
testnames)"))
- ;; precompile test is broken, fixed in
- ;; fed29f893544d1dc8f86444c65d632c68168d0f3
- (substitute* "test/precompile.jl"
- (("@test !isdefined\\(Base.Nothing.name.mt")
- "# @test !isdefined(Base.Nothing.name.mt"))
- ;; When HOME is not set, julia calls uv_os_homedir, which in
- ;; turns call getpwuid_r. Add the HOME env variable to the
- ;; external julia call to fix this
- (substitute* "test/cmdlineargs.jl"
- (("\"JULIA_PROJECT\"") "\"HOME\"=>\"/tmp\", \"JULIA_PROJECT\""))
;; Marking the test as broken as it's a known bug:
;; https://github.com/JuliaLang/julia/issues/32377
(substitute* "stdlib/REPL/test/replcompletions.jl"
@@ -361,11 +341,16 @@ libraries. It is also a bit like @code{ldd} and @code{otool -L}.")
;; Dates has a similar bug:
;; https://github.com/JuliaLang/julia/issues/34655
(substitute* "stdlib/Dates/test/io.jl"
+ (("\"Dates.Date") "\"Date")
(("\"Dates.Time") "\"Time"))
;; Upstream bug I found when packaging
;; https://github.com/JuliaLang/julia/issues/35785
(substitute* "test/file.jl"
(("@test dirname\\(t\\) == d") "@test_broken dirname(t) == d"))
+ ;; Deprecation test fails with --depwarn=no
+ ;; https://github.com/JuliaLang/julia/issues/37673
+ (substitute* "test/Makefile"
+ (("./runtests.jl") "--depwarn=error ./runtests.jl"))
#t))
(add-after 'install 'make-wrapper
(lambda* (#:key inputs outputs #:allow-other-keys)
@@ -416,7 +401,7 @@ libraries. It is also a bit like @code{ldd} and @code{otool -L}.")
(assoc-ref %build-inputs "utf8proc")
"/include")
"USE_SYSTEM_LLVM=1"
- "LLVM_VER=8.0.0"
+ "LLVM_VER=9.0.1"
"USE_LLVM_SHLIB=1"
"USE_SYSTEM_LIBUNWIND=1"
diff --git a/gnu/packages/kde-frameworks.scm b/gnu/packages/kde-frameworks.scm
index d264ca5bbe..c4479de995 100644
--- a/gnu/packages/kde-frameworks.scm
+++ b/gnu/packages/kde-frameworks.scm
@@ -2215,7 +2215,7 @@ maintaining an index of the contents of your files.")
(home-page "https://community.kde.org/Frameworks")
(synopsis "Access usage statistics collected by the activity manager")
(description "The KActivitiesStats library provides a querying mechanism for
-the data that the activitiy manager collects - which documents have been opened
+the data that the activity manager collects---which documents have been opened
by which applications, and what documents have been linked to which activity.")
;; triple licensed
(license (list license:lgpl2.0+ license:lgpl2.1+ license:lgpl3+))))
diff --git a/gnu/packages/kde-internet.scm b/gnu/packages/kde-internet.scm
index f9cd29e9b8..6c576223e1 100644
--- a/gnu/packages/kde-internet.scm
+++ b/gnu/packages/kde-internet.scm
@@ -1,5 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2017, 2019, 2020 Hartmut Goebel <h.goebel@crazy-compilers.com>
+;;; Copyright © 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -177,15 +178,14 @@ This package is part of the KDE networking module.")
(define-public konversation
(package
(name "konversation")
- (version "1.7.5")
+ (version "1.7.6")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/konversation/" version
"/src/konversation-" version ".tar.xz"))
(sha256
- (base32 "0h098yhlp36ls6pdvs2r93ig8dv4fys62m0h6wxccprb0qrpbgv0"))
- (patches (search-patches "konversation-Fix-build-with-Qt-5.11.patch"))))
+ (base32 "14x0rs867grb1xjddycn9l6bfl3h3rp4cmx4zqd2gsvkihn4zlpx"))))
(build-system qt-build-system)
(native-inputs
`(("extra-cmake-modules" ,extra-cmake-modules)
@@ -297,7 +297,7 @@ Features are:
("libxml2" ,libxml2)
("libxstl" ,libxslt)
;; TODO: Mediastreamer
- ("openssl", openssl)
+ ("openssl" ,openssl)
("ortp" ,ortp)
("phonon" ,phonon)
("qca" ,qca)
@@ -403,7 +403,7 @@ This package is part of the KDE networking module.")
("knotifyconfig" ,knotifyconfig)
("kparts" ,kparts)
("kplotting" ,kplotting)
- ("kross", kross)
+ ("kross" ,kross)
("kwidgetsaddons" ,kwidgetsaddons)
("kwindowsystem" ,kwindowsystem)
("kxmlgui" ,kxmlgui)
diff --git a/gnu/packages/kde-utils.scm b/gnu/packages/kde-utils.scm
index 5e6a872314..00ef15b9d9 100644
--- a/gnu/packages/kde-utils.scm
+++ b/gnu/packages/kde-utils.scm
@@ -149,7 +149,7 @@ artists to web-designers to people with low vision.")
(inputs
`(("kauth" ,kauth)
("kcoreaddons" ,kcoreaddons)
- ("kconfigwidgets", kconfigwidgets)
+ ("kconfigwidgets" ,kconfigwidgets)
("kdbusaddons" ,kdbusaddons)
("ki18n" ,ki18n)
("kiconthemes" ,kiconthemes)
@@ -187,8 +187,8 @@ whom pressing buttons hurts.")
("kdoctools" ,kdoctools)))
(inputs
`(("kcompletion" ,kcompletion)
- ("kconfig", kconfig)
- ("kconfigwidgets", kconfigwidgets)
+ ("kconfig" ,kconfig)
+ ("kconfigwidgets" ,kconfigwidgets)
("kcoreaddons" ,kcoreaddons)
("kcrash" ,kcrash)
("ki18n" ,ki18n)
@@ -228,7 +228,7 @@ sentences to be re-spoken.")
(inputs
`(("kauth" ,kauth)
("kconfig" ,kconfig)
- ("kconfigwidgets", kconfigwidgets)
+ ("kconfigwidgets" ,kconfigwidgets)
("kcoreaddons" ,kcoreaddons)
("kcrash" ,kcrash)
("ki18n" ,ki18n)
@@ -289,7 +289,7 @@ twin-panel (commander-style) file manager, similar to Midnight Commander or
Total Commander
It provides all the file management features you could possibly want. Plus:
-extensive archive handling, mounted filesystem support, FTP, advanced search
+extensive archive handling, mounted file system support, FTP, advanced search
module, an internal viewer/editor, directory synchronisation, file content
comparisons, powerful batch renaming and much much more. It supports a wide
variety of archive formats and can handle other KIO slaves such as smb or
diff --git a/gnu/packages/kde.scm b/gnu/packages/kde.scm
index a9ac23e049..f0a5c62856 100644
--- a/gnu/packages/kde.scm
+++ b/gnu/packages/kde.scm
@@ -10,6 +10,7 @@
;;; Copyright © 2019, 2020 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2020 Marius Bakke <marius@gnu.org>
;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de>
+;;; Copyright © 2020 Prafulla Giri <pratheblackdiamond@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -134,7 +135,7 @@ This package contains GUI widgets for baloo.")
(list license:lgpl2.1+ license:fdl1.2+))))
(define-public kdenlive
- (let ((version "20.04.1"))
+ (let ((version "20.08.2"))
(package
(name "kdenlive")
(version version)
@@ -142,15 +143,15 @@ This package contains GUI widgets for baloo.")
(origin
(method git-fetch)
(uri (git-reference
- (url "https://anongit.kde.org/kdenlive.git")
+ (url "https://invent.kde.org/multimedia/kdenlive")
(commit (string-append "v" version))))
(file-name (string-append name "-" version "-checkout"))
(sha256
- (base32
- "0n0x34xmcn0k87rqnz0mk462b3al4gq56kn4m00rr428hafscdz7"))))
+ (base32 "1zcckv4wj12pvxjg85c8l67vi3amz79yv8mf7m4fbxnam3yxhy90"))))
(build-system cmake-build-system)
(native-inputs
`(("extra-cmake-modules" ,extra-cmake-modules)
+ ("pkg-config" ,pkg-config)
("qttools" ,qttools)))
(inputs
`(("shared-mime-info" ,shared-mime-info)
@@ -177,6 +178,9 @@ This package contains GUI widgets for baloo.")
("qtquickcontrols" ,qtquickcontrols)
("qtquickcontrols2" ,qtquickcontrols2)
("kiconthemes" ,kiconthemes)
+ ("breeze" ,breeze)
+ ("purpose" ,purpose)
+ ("qtwebkit" ,qtwebkit)
("qtgraphicaleffects" ,qtgraphicaleffects)
("kplotting" ,kplotting)))
(arguments
@@ -186,29 +190,23 @@ This package contains GUI widgets for baloo.")
(add-after 'install 'wrap-executable
(lambda* (#:key inputs outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
- (qtquickcontrols (assoc-ref inputs "qtquickcontrols"))
- (qtquickcontrols2 (assoc-ref inputs "qtquickcontrols2"))
(qtbase (assoc-ref inputs "qtbase"))
- (qtdeclarative (assoc-ref inputs "qtdeclarative"))
(frei0r (assoc-ref inputs "frei0r-plugins"))
(ffmpeg (assoc-ref inputs "ffmpeg"))
- (qml "/lib/qt5/qml"))
+ (breeze (assoc-ref inputs "breeze")))
(wrap-program (string-append out "/bin/kdenlive")
`("PATH" ":" prefix
,(list (string-append ffmpeg "/bin")))
+ `("XDG_DATA_DIRS" ":" prefix
+ ,(list (string-append breeze "/share")))
`("QT_PLUGIN_PATH" ":" prefix
- ,(map (lambda (label)
- (string-append (assoc-ref inputs label)
- "/lib/qt5/plugins/"))
- '("qtbase" "qtsvg")))
+ ,(list (getenv "QT_PLUGIN_PATH")))
`("FREI0R_PATH" ":" =
(,(string-append frei0r "/lib/frei0r-1/")))
`("QT_QPA_PLATFORM_PLUGIN_PATH" ":" =
(,(string-append qtbase "/lib/qt5/plugins/platforms")))
`("QML2_IMPORT_PATH" ":" prefix
- (,(string-append qtquickcontrols qml)
- ,(string-append qtquickcontrols2 qml)
- ,(string-append qtdeclarative qml)))
+ ,(list (getenv "QML2_IMPORT_PATH")))
`("MLT_PREFIX" ":" =
(,(assoc-ref inputs "mlt")))))
#t)))))
@@ -376,7 +374,7 @@ illustrate project schedules.")
(define-public krita
(package
(name "krita")
- (version "4.3.0")
+ (version "4.4.0")
(source (origin
(method url-fetch)
(uri (string-append
@@ -384,7 +382,7 @@ illustrate project schedules.")
"/krita-" version ".tar.gz"))
(sha256
(base32
- "1njbxv7b56if838gv7ydzm1sprgmaabnp0jlj0bxryxzfdy8hwfh"))))
+ "13r7x4gql5wp88hmpv9m6m3lh7gsybm4la48hqbjcb3iwiv86pzw"))))
(build-system cmake-build-system)
(arguments
`(#:tests? #f
@@ -447,7 +445,7 @@ illustrate project schedules.")
("openexr" ,openexr)
("perl" ,perl)
("poppler-qt5" ,poppler-qt5)
- ("qtbase" ,qtbase-for-krita)
+ ("qtbase" ,qtbase)
("qtdeclarative" ,qtdeclarative)
("qtmultimedia" ,qtmultimedia)
("qtsvg" ,qtsvg)
@@ -629,7 +627,10 @@ different notification systems.")
("qca" ,qca)
("qtbase" ,qtbase)
("qtdeclarative" ,qtdeclarative)
+ ("qtgraphicaleffects" ,qtgraphicaleffects)
("qtmultimedia" ,qtmultimedia)
+ ("qtquickcontrols" ,qtquickcontrols)
+ ("qtquickcontrols2" ,qtquickcontrols2)
("qtx11extras" ,qtx11extras)))
(home-page "https://community.kde.org/KDEConnect")
(synopsis "Enable your devices to communicate with each other")
diff --git a/gnu/packages/kodi.scm b/gnu/packages/kodi.scm
index 2edf5c0614..9ccdea46ef 100644
--- a/gnu/packages/kodi.scm
+++ b/gnu/packages/kodi.scm
@@ -435,7 +435,7 @@ alternatives. In compilers, this can reduce the cascade of secondary errors.")
("libxrender" ,libxrender)
("libxslt" ,libxslt)
("lzo" ,lzo)
- ("mariadb" ,mariadb "lib")
+ ("mariadb-dev" ,mariadb "lib")
("mariadb-dev" ,mariadb "dev")
("openssl" ,openssl)
("pcre" ,pcre)
diff --git a/gnu/packages/language.scm b/gnu/packages/language.scm
index 0c59cd1bf7..5ccc94167c 100644
--- a/gnu/packages/language.scm
+++ b/gnu/packages/language.scm
@@ -1,6 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2015, 2016 Eric Bavier <bavier@member.fsf.org>
-;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
+;;; Copyright © 2017, 2018, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018 Nikita <nikita@n0.is>
;;; Copyright © 2019 Alex Vong <alexvong1995@gmail.com>
;;; Copyright © 2020 Ricardo Wurmus <rekado@elephly.net>
@@ -56,7 +56,7 @@
(define-public liblouis
(package
(name "liblouis")
- (version "3.14.0")
+ (version "3.15.0")
(source
(origin
(method git-fetch)
@@ -66,7 +66,7 @@
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
- (base32 "0v6w8b9r994mkkbm2gqgd7k5yfmdhgbabh0j1gmn375nyvhy4qqh"))))
+ (base32 "1ljy5xsy7vf2r0ix0d7bqcr6qvr6897f8madsx9zlm1mrj31n5px"))))
(build-system gnu-build-system)
(outputs '("out" "bin" "doc" "python"))
(arguments
@@ -76,7 +76,6 @@
"--enable-ucs4")
#:phases
(modify-phases %standard-phases
- ;; To install the sub-package "python".
(add-after 'install 'install-python-extension
(lambda* (#:key outputs #:allow-other-keys)
(with-directory-excursion "python"
@@ -104,17 +103,13 @@ support a rule- or dictionary based approach. Tools for testing and debugging
tables are also included. Liblouis also supports math braille, Nemeth and
Marburg.")
(home-page "http://liblouis.org/")
- (license
- (list
- ;; Library
- lgpl2.1+
- ;; Tools
- gpl3+))))
+ (license (list lgpl2.1+ ; library
+ gpl3+)))) ; tools
(define-public liblouisutdml
(package
(name "liblouisutdml")
- (version "2.8.0")
+ (version "2.9.0")
(source
(origin
(method git-fetch)
@@ -124,15 +119,12 @@ Marburg.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
- (base32 "11xxky3crjm8bidfljzpqaz1m1i1m1yskmdpavf9b4jpf87nzjj2"))
- (patches
- (search-patches "liblouisutdml-fix-tests.patch"))))
+ (base32 "0c32cfcfp0lyfd655c9ihhh3p7lhrb9q3xbll7q5dw4km86gaq6w"))))
(build-system gnu-build-system)
(outputs '("out" "bin" "doc"))
(arguments
`(#:configure-flags
- (list
- "--disable-static")))
+ (list "--disable-static")))
(native-inputs
`(("autoconf" ,autoconf)
("automake" ,automake)
@@ -152,12 +144,8 @@ transcription services for xml, html and text documents. It translates into
appropriate braille codes and formats according to its style sheet and the
specifications in the document.")
(home-page "http://liblouis.org/")
- (license
- (list
- ;; Library
- lgpl3+
- ;; Tools
- gpl3+))))
+ (license (list lgpl3+ ; library
+ gpl3+)))) ; tools
(define-public libstemmer
(package
@@ -1065,7 +1053,7 @@ noun phrases, verb phrases, etc.).")
(define-public praat
(package
(name "praat")
- (version "6.1.16")
+ (version "6.1.27")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -1074,10 +1062,10 @@ noun phrases, verb phrases, etc.).")
(file-name (git-file-name name version))
(sha256
(base32
- "1rx4qvl0dd85x0r6pl0zk4bysx9ykxl05kywjr4pyvv6dvpswkrm"))))
+ "0wd2xy5shyk00d91yrif1c2xwzdl4i7qpdfa530f845yzn7k2ks1"))))
(build-system gnu-build-system)
(arguments
- `(#:tests? #f; no test target
+ `(#:tests? #f ; no test target
#:phases
(modify-phases %standard-phases
(replace 'configure
@@ -1100,7 +1088,7 @@ noun phrases, verb phrases, etc.).")
`(("pkg-config" ,pkg-config)))
(home-page "http://www.fon.hum.uva.nl/praat/")
(synopsis "Doing phonetics by computer")
- (description "Praat is a tool to perform phonetics tasks. It can do speach
-analysis (pitch, formant, intensity, ...), speach synthesis, labeling, segmenting
+ (description "Praat is a tool to perform phonetics tasks. It can do speech
+analysis (pitch, formant, intensity, ...), speech synthesis, labelling, segmenting
and manipulation.")
(license gpl2+)))
diff --git a/gnu/packages/libcanberra.scm b/gnu/packages/libcanberra.scm
index 32d1cd3605..2d08fb46e3 100644
--- a/gnu/packages/libcanberra.scm
+++ b/gnu/packages/libcanberra.scm
@@ -69,7 +69,8 @@
;; his pleasure.
(patch-flags '("-p0"))
(patches
- (search-patches "libcanberra-sound-theme-freedesktop.patch"))))
+ (search-patches "libcanberra-sound-theme-freedesktop.patch"
+ "libcanberra-wayland-crash.patch"))))
(build-system gnu-build-system)
(inputs
`(("alsa-lib" ,alsa-lib)
diff --git a/gnu/packages/libreoffice.scm b/gnu/packages/libreoffice.scm
index b85a3a60ac..fdc62e8825 100644
--- a/gnu/packages/libreoffice.scm
+++ b/gnu/packages/libreoffice.scm
@@ -10,7 +10,7 @@
;;; Copyright © 2017, 2018, 2019 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2017 Rutger Helling <rhelling@mykolab.com>
;;; Copyright © 2018, 2019 Ricardo Wurmus <rekado@elephly.net>
-;;; Copyright © 2018 Jonathan Brielmaier <jonathan.brielmaier@web.de>
+;;; Copyright © 2018, 2020 Jonathan Brielmaier <jonathan.brielmaier@web.de>
;;; Copyright © 2019 Chris Marusich <cmmarusich@gmail.com>
;;; Copyright © 2020 Marcin Karpezo <sirmacik@wioo.waw.pl>
;;;
@@ -42,6 +42,7 @@
#:use-module (ice-9 match)
#:use-module (gnu packages)
#:use-module (gnu packages aidc)
+ #:use-module (gnu packages aspell)
#:use-module (gnu packages autotools)
#:use-module (gnu packages base)
#:use-module (gnu packages bison)
@@ -712,14 +713,14 @@ text documents, vector drawings, presentations and spreadsheets.")
(define-public libmwaw
(package
(name "libmwaw")
- (version "0.3.15")
+ (version "0.3.16")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/libmwaw/libmwaw/libmwaw-"
version "/libmwaw-" version ".tar.xz"))
- (sha256 (base32
- "1cdhm9yhanyv3w4vr73zhgyynmkhhkp3dyld7m11jd2yy04vnh04"))))
+ (sha256
+ (base32 "0s0qvrmxzs8wv4304p7zx9mrasglyaszafqrfmaxwyr9lpdrwqqc"))))
(build-system gnu-build-system)
(native-inputs
`(("doxygen" ,doxygen)
@@ -739,14 +740,14 @@ spreadsheet documents.")
(define-public libstaroffice
(package
(name "libstaroffice")
- (version "0.0.6")
+ (version "0.0.7")
(source
(origin
(method url-fetch)
(uri (string-append "https://github.com/fosnola/libstaroffice/releases/download/"
version "/libstaroffice-" version ".tar.xz"))
(sha256 (base32
- "1i0ykl0c94lc1qzb5mbyf9jr7qw8p38ja424whmhgrllh7ny203b"))))
+ "1ny8411273k2bq7mnpmcvri3rd46b2j67wfypqkp3y8nhanv0kzr"))))
(build-system gnu-build-system)
(inputs
`(("librevenge" ,librevenge)
@@ -971,6 +972,41 @@ library.")
(license
(list license:gpl2 license:mpl1.1 license:cc-by4.0 license:lgpl2.1 license:asl2.0))))
+(define-public hunspell-dict-de
+ (package
+ (name "hunspell-dict-de")
+ (version "20161207")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "https://www.j3e.de/ispell/igerman98/dict/"
+ "igerman98-" version ".tar.bz2"))
+ (sha256
+ (base32 "1a3055hp2bc4q4nlg3gmg0147p3a1zlfnc65xiv2v9pyql1nya8p"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:make-flags '("hunspell/de_DE.dic")
+ #:phases
+ (modify-phases %standard-phases
+ (delete 'configure)
+ (replace 'install ;no install target
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (share (string-append out "/share/hunspell/")))
+ (install-file "hunspell/de_DE.aff" share)
+ (install-file "hunspell/de_DE.dic" share)
+ #t))))
+ #:tests? #f)) ; no tests
+ (native-inputs
+ `(("hunspell" ,hunspell)
+ ("ispell" ,ispell)
+ ("perl" ,perl)))
+ (synopsis "Hunspell dictionary for German (de_DE)")
+ (description "This package provides a dictionary for the Hunspell
+spell-checking library.")
+ (home-page "https://www.j3e.de/ispell/igerman98/")
+ (license (list license:gpl2 license:gpl3))))
+
(define-public hyphen
(package
(name "hyphen")
diff --git a/gnu/packages/libusb.scm b/gnu/packages/libusb.scm
index 5ebc066ac8..f109ca0d8b 100644
--- a/gnu/packages/libusb.scm
+++ b/gnu/packages/libusb.scm
@@ -6,7 +6,7 @@
;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 Theodoros Foradis <theodoros@foradis.org>
;;; Copyright © 2017 Jonathan Brielmaier <jonathan.brielmaier@web.de>
-;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
+;;; Copyright © 2018, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018 Vagrant Cascadian <vagrant@debian.org>
;;; Copyright © 2020 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2020 Christopher Howard <christopher@librehacker.com>
@@ -492,14 +492,14 @@ over USB.")
(define-public libmtp
(package
(name "libmtp")
- (version "1.1.17")
+ (version "1.1.18")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/libmtp/libmtp/" version
"/libmtp-" version ".tar.gz"))
(sha256
(base32
- "1p3r38nvdip40ab1h4scj3mzfjkx6kd14szjqyw9r6wz5pslr8zq"))))
+ "1w41l93yi0dmw218daiw36rylkc8rammxx37csh1ij24q18gx03j"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)))
diff --git a/gnu/packages/linphone.scm b/gnu/packages/linphone.scm
index a6492893c8..777485b9ea 100644
--- a/gnu/packages/linphone.scm
+++ b/gnu/packages/linphone.scm
@@ -483,7 +483,7 @@ including media capture, encoding and decoding, and rendering.")
`(("bctoolbox" ,bctoolbox)
("belcard" ,belcard)
("bellesip" ,belle-sip)
- ("bzrtp", bzrtp)
+ ("bzrtp" ,bzrtp)
("iconv" ,libiconv)
("glib" ,glib)
("gtk2" ,gtk+-2)
diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm
index f635c2343c..4e97ae9b5c 100644
--- a/gnu/packages/linux.scm
+++ b/gnu/packages/linux.scm
@@ -49,6 +49,8 @@
;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de>
;;; Copyright © 2020 Anders Thuné <asse.97@gmail.com>
;;; Copyright © 2020 Maxim Cournoyer <maxim.cournoyer@gmail.com>
+;;; Copyright © 2020 Greg Hogan <code@greghogan.com>
+;;; Copyright © 2020 Zhu Zihao <all_but_last@163.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -155,6 +157,7 @@
#:use-module (guix store)
#:use-module (guix monads)
#:use-module (guix utils)
+ #:use-module (guix deprecation) ;for libcap/next
#:use-module (srfi srfi-1)
#:use-module (srfi srfi-2)
#:use-module (srfi srfi-26)
@@ -195,9 +198,9 @@ defconfig. Return the appropriate make target if applicable, otherwise return
(method url-fetch)
(uri (string-append "https://linux-libre.fsfla.org"
"/pub/linux-libre/releases/" version "-gnu/"
- "deblob-" version))
+ "deblob-" (version-major+minor version)))
(file-name (string-append "linux-libre-deblob-"
- (version-major+minor version)))
+ version))
(sha256 deblob-hash))
(origin
(method url-fetch)
@@ -349,15 +352,15 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
;; The current "stable" kernel. That is, the most recently released major
;; version.
-(define-public linux-libre-5.8-version "5.8.7")
+(define-public linux-libre-5.8-version "5.8.15")
(define deblob-scripts-5.8
(linux-libre-deblob-scripts
linux-libre-5.8-version
(base32 "07z7sglyrfh0706icqqf3shadf638pvyid9386r661ds5lbsa2mw")
- (base32 "0j6jba5fcddqlb42f95gjl78jisfla4nswqila074gglcrbnl9q7")))
+ (base32 "0z28yj4f7hhc253hssslm6xl9sg92agbiw50jxb9y72d8zp6sksq")))
(define-public linux-libre-5.8-pristine-source
(let ((version linux-libre-5.8-version)
- (hash (base32 "1zhpzlhl2ykna2nc70m72wlgyv1pkvkpfssb4k8p5pwlkh1ga2vv")))
+ (hash (base32 "0hfnq4n902pws8sjxd1lsdxxa0v45g988imp73xnqfqv2d71r0bj")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-5.8)))
@@ -365,46 +368,46 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
;; The "longterm" kernels — the older releases with long-term upstream support.
;; Here are the support timelines:
;; <https://www.kernel.org/category/releases.html>
-(define-public linux-libre-5.4-version "5.4.64")
+(define-public linux-libre-5.4-version "5.4.71")
(define deblob-scripts-5.4
(linux-libre-deblob-scripts
- "5.4.63"
+ linux-libre-5.4-version
(base32 "0ckxn7k5zgcqk30dq943bnamr6a6zjbw2aqjl3x30f4kvh5f6k25")
- (base32 "1b3q88i2qfdxyvpi9f7jds0qlb8hfpw87mgia096ax6822c2cmyb")))
+ (base32 "1h6gbc9cfhb7dqx669iq26a23whka6km5av0ysk61aaz2z57vkrk")))
(define-public linux-libre-5.4-pristine-source
(let ((version linux-libre-5.4-version)
- (hash (base32 "1vymhl6p7i06gfgpw9iv75bvga5sj5kgv46i1ykqiwv6hj9w5lxr")))
+ (hash (base32 "1ivcimngj5h7lxslkrdljpfw9hfvdhrm8wrp7gp4d3gk7kpljw3k")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-5.4)))
-(define-public linux-libre-4.19-version "4.19.144")
+(define-public linux-libre-4.19-version "4.19.151")
(define deblob-scripts-4.19
(linux-libre-deblob-scripts
- "4.19.143"
+ linux-libre-4.19-version
(base32 "02zs405awaxydbapka4nz8h6lmnc0dahgczqsrs5s2bmzjyyqkcy")
(base32 "1jiaw0as1ippkrjdpd52657w5mz9qczg3y2hlra7m9k0xawwiqlf")))
(define-public linux-libre-4.19-pristine-source
(let ((version linux-libre-4.19-version)
- (hash (base32 "0jnj65bdy5y9lcj5zhrn4iaszpww8z41ac66j00l75sd931l1g9k")))
+ (hash (base32 "0vm3nsi9la3azxrsvndbd6fpz79pch7309f2144xyxszsk339cf7")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-4.19)))
-(define-public linux-libre-4.14-version "4.14.197")
+(define-public linux-libre-4.14-version "4.14.201")
(define deblob-scripts-4.14
(linux-libre-deblob-scripts
- "4.14.196"
+ linux-libre-4.14-version
(base32 "091jk9jkn9jf39bxpc7395bhcb7p96nkg3a8047380ki06lnfxh6")
(base32 "1qij18inijj6c3ma8hv98yjagnzxdxyn134da9fd23ky8q6hbvky")))
(define-public linux-libre-4.14-pristine-source
(let ((version linux-libre-4.14-version)
- (hash (base32 "029h46yki2hxdbn7afmnf3yar1pnwrpszx76irsa5mf8gnrasyp0")))
+ (hash (base32 "0nr3w5m7dz28v7qfhp99ih4c369qrhq751wfikbz8ga3di0dqa72")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-4.14)))
-(define-public linux-libre-4.9-version "4.9.235")
+(define-public linux-libre-4.9-version "4.9.239")
(define deblob-scripts-4.9
(linux-libre-deblob-scripts
linux-libre-4.9-version
@@ -412,12 +415,12 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(base32 "0fxajshb75siq39lj5h8xvhdj8lcmddkslwlyj65rhlwk6g2r4b2")))
(define-public linux-libre-4.9-pristine-source
(let ((version linux-libre-4.9-version)
- (hash (base32 "1hqcb3zw4546h6x5xy2mywdznha8813lx15mxbgfbvwm4qhsc9g6")))
+ (hash (base32 "0lfbn5amykvwz1svvxayzhsz1dvm4mgzsnq1g0wqffclxm148hr3")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-4.9)))
-(define-public linux-libre-4.4-version "4.4.235")
+(define-public linux-libre-4.4-version "4.4.239")
(define deblob-scripts-4.4
(linux-libre-deblob-scripts
linux-libre-4.4-version
@@ -425,7 +428,7 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(base32 "0hhin1jpfkd6nwrb6xqxjzl3hdxy4pn8a15hy2d3d83yw6pflbsf")))
(define-public linux-libre-4.4-pristine-source
(let ((version linux-libre-4.4-version)
- (hash (base32 "0w5pkv936zb0shjgnpv17gcp5n8f91djznzq54p6j1bl5q2qdyqd")))
+ (hash (base32 "03myd9ngmjmnddh4iqqsgcfg9rd11vyvwym38yh4m1p08j1zbg0k")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-4.4)))
@@ -1109,8 +1112,8 @@ RTL8812AU, RTL8821AU, and RTL8814AU chips.")
(license license:gpl2+))))
(define-public rtl8821ce-linux-module
- (let ((commit "69765eb288a8dfad3b055b906760b53e02ab1dea")
- (revision "0"))
+ (let ((commit "fe97b5003f2f3dd070f76ec38c00b83798c1cdea")
+ (revision "1"))
(package
(name "rtl8821ce-linux-module")
(version (git-version "0.0.0" revision commit))
@@ -1123,7 +1126,7 @@ RTL8812AU, RTL8821AU, and RTL8814AU chips.")
(file-name (git-file-name name version))
(sha256
(base32
- "17jiw25k74kv5lnvgycvj2g1n06hbrpjz6p4znk4a62g136rhn4s"))))
+ "10mrp63npbqb39c442vx8mra278hw7sczb3b6bjrpr3gan6ljshn"))))
(build-system linux-module-build-system)
(arguments
`(#:make-flags
@@ -1166,27 +1169,30 @@ between the CDemu userspace daemon and linux kernel.")
(license license:gpl2+)))
(define-public bbswitch-module
- (package
- (name "bbswitch-module")
- (version "0.8")
- (source (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/Bumblebee-Project/bbswitch")
- (commit (string-append "v" version))))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "1glch4j0x1dzlp2yrb67v2r5jg9609jb6p8m251y78m74advqw0l"))))
- (build-system linux-module-build-system)
- (arguments
- ;; No tests.
- `(#:tests? #f))
- (home-page "https://github.com/Bumblebee-Project/bbswitch")
- (synopsis "Kernel module that disables discrete Nvidia graphics cards")
- (description "The bbswitch module provides a way to toggle the Nvidia
+ ;; Use "develop" branch since stable release does not build on Linux >= 5.6.
+ ;; See https://github.com/Bumblebee-Project/bbswitch/issues/205.
+ (let ((commit "ddbd243638c7bc2baecf43a78aff46cdc12e9b2e"))
+ (package
+ (name "bbswitch-module")
+ (version (git-version "0.8" "1" commit))
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/Bumblebee-Project/bbswitch")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1pgldnza7mzd0flrxg4q69dwbq1fhl58m5c62ary5drb0xyf3lqb"))))
+ (build-system linux-module-build-system)
+ (arguments
+ ;; No tests.
+ `(#:tests? #f))
+ (home-page "https://github.com/Bumblebee-Project/bbswitch")
+ (synopsis "Kernel module that disables discrete Nvidia graphics cards")
+ (description "The bbswitch module provides a way to toggle the Nvidia
graphics card on Optimus laptops.")
- (license license:gpl2)))
+ (license license:gpl2))))
(define-public ddcci-driver-linux
(package
@@ -1271,7 +1277,7 @@ application by hooking GStreamer into the loopback device.")
(define-public linux-pam
(package
(name "linux-pam")
- (version "1.3.1")
+ (version "1.4.0")
(source
(origin
(method url-fetch)
@@ -1280,7 +1286,7 @@ application by hooking GStreamer into the loopback device.")
version "/Linux-PAM-" version ".tar.xz"))
(sha256
(base32
- "1nyh9kdi3knhxcbv5v4snya0g3gff0m671lnvqcbygw3rm77mx7g"))
+ "0d6hvz6lpkac08hw5wnlhfdm0fhqd0n6jf6v7fz3jhg6a6694vfd"))
(patches (search-patches "linux-pam-no-setfsuid.patch"))))
(build-system gnu-build-system)
@@ -2026,7 +2032,7 @@ intercept and print the system calls executed by the program.")
(define-public alsa-lib
(package
(name "alsa-lib")
- (version "1.2.2")
+ (version "1.2.3.2")
(source (origin
(method url-fetch)
(uri (string-append
@@ -2034,7 +2040,7 @@ intercept and print the system calls executed by the program.")
version ".tar.bz2"))
(sha256
(base32
- "1v5kb8jyvrpkvvq7dq8hfbmcj68lml97i4s0prxpfx2mh3c57s6q"))))
+ "05dyk856ppvqymazyk1cmpln53g88cq1wjpnsygqrvnamyvwa7z8"))))
(build-system gnu-build-system)
(arguments
'(#:configure-flags (list (string-append "LDFLAGS=-Wl,-rpath="
@@ -2050,14 +2056,14 @@ MIDI functionality to the Linux-based operating system.")
(define-public alsa-utils
(package
(name "alsa-utils")
- (version "1.2.2")
+ (version "1.2.3")
(source (origin
(method url-fetch)
(uri (string-append "ftp://ftp.alsa-project.org/pub/utils/"
name "-" version ".tar.bz2"))
(sha256
(base32
- "1wz460by17rmxrcydn583rd4lhj6wlvqs6x1j5pdzxn5g3app024"))))
+ "1ai1z4kf91b1m3qrpwqkc1af5vm2fkdkknqv95xdwf19q94aw6gz"))))
(build-system gnu-build-system)
(arguments
;; XXX: Disable man page creation until we have DocBook.
@@ -2268,7 +2274,7 @@ that the Ethernet protocol is much simpler than the IP protocol.")
(define-public iproute
(package
(name "iproute2")
- (version "5.8.0")
+ (version "5.9.0")
(source (origin
(method url-fetch)
(uri (string-append
@@ -2276,7 +2282,7 @@ that the Ethernet protocol is much simpler than the IP protocol.")
version ".tar.xz"))
(sha256
(base32
- "0vk4vickrpahdhl3zazr2qn2bf99v5549ncirjpwiy4h0a4izkfg"))))
+ "1kys6dmhrl43iaq95n5sh02p39d7bq8i5y672qrzgwnwpjaaqpd2"))))
(build-system gnu-build-system)
(arguments
`( ;; There is a test suite, but it wants network namespaces and sudo.
@@ -2402,7 +2408,7 @@ network hardware types (plipconfig, slattach) and advanced aspects of IP
configuration (iptunnel, ipmaddr).")
(license license:gpl2+))))
-(define-public libcap
+(define-public libcap-2.31
(package
(name "libcap")
(version "2.31")
@@ -2441,12 +2447,13 @@ Linux-based operating systems.")
;; License is BSD-3 or GPLv2, at the user's choice.
(license license:gpl2)))
-;; libcap 2.31 causes problems for 'fakeroot', so provide this newer variant.
+;; libcap 2.31 has problems with newer kernels, so provide this newer variant.
+;; Keep the old libcap around to avoid rebuilding 'coreutils' and 'avahi'.
;; To be merged with libcap on the next rebuild cycle.
-(define-public libcap/next
+(define-public libcap
(package
- (inherit libcap)
- (version "2.34")
+ (inherit libcap-2.31)
+ (version "2.44")
(source (origin
(method url-fetch)
(uri (string-append
@@ -2454,19 +2461,34 @@ Linux-based operating systems.")
"libcap2/libcap-" version ".tar.xz"))
(sha256
(base32
- "048n1gy2p48vl9hkrr9wymfxxcpwj2aslz2bv79nhl4m2lhd9kdf"))))))
+ "1qf80lifygbnxwvqjf8jz5j24n6fqqx4ixnkbf76xs2vrmcq664j"))))
+ (arguments
+ (substitute-keyword-arguments (package-arguments libcap-2.31)
+ ((#:phases phases)
+ `(modify-phases ,phases
+ (replace 'configure
+ (lambda _
+ ;; Add $libdir to the RUNPATH of executables.
+ (substitute* "Make.Rules"
+ (("LDFLAGS \\?= #-g")
+ (string-append "LDFLAGS ?= -Wl,-rpath="
+ %output "/lib")))
+ #t))))))))
+
+(define-deprecated libcap/next libcap)
+(export libcap/next)
(define-public bridge-utils
(package
(name "bridge-utils")
- (version "1.6")
+ (version "1.7")
(source
(origin
(method url-fetch)
- (uri (string-append "mirror://kernel.org/linux/utils/net/bridge-utils/"
- "bridge-utils-" version ".tar.xz"))
+ (uri (string-append "mirror://kernel.org/linux/kernel/people/shemminger/"
+ "bridge-utils/bridge-utils-" version ".tar.xz"))
(sha256
- (base32 "1j16kr44csyr4yqxly26l1yw2bh4nkiasgwvask2i2gvsnsyyryc"))))
+ (base32 "0zlrigizac2nfwgvksm92v4wafrpgxlbci3gwimc795ib7k8g6ck"))))
(build-system gnu-build-system)
;; The tarball lacks all the generated files.
@@ -2932,7 +2954,7 @@ compressed, transparent to other programs, without decompressing them.")
(define-public numactl
(package
(name "numactl")
- (version "2.0.13")
+ (version "2.0.14")
(source (origin
(method url-fetch)
(uri (string-append
@@ -2940,7 +2962,7 @@ compressed, transparent to other programs, without decompressing them.")
version "/numactl-" version ".tar.gz"))
(sha256
(base32
- "16lcypvcmx1ydkpi2s82kqhg13kak7qhpbnj8hd9bdbyhr5ja7lr"))))
+ "1xngddsph43bxljywahi9d44fxr022slsap4hh91w8xnq54d2sw2"))))
(build-system gnu-build-system)
(arguments
'(;; There's a 'test' target, but it requires NUMA support in the kernel
@@ -4621,7 +4643,7 @@ Bluetooth audio output devices like headphones or loudspeakers.")
(define-public bluez
(package
(name "bluez")
- (version "5.54")
+ (version "5.55")
(source (origin
(method url-fetch)
(uri (string-append
@@ -4629,7 +4651,7 @@ Bluetooth audio output devices like headphones or loudspeakers.")
version ".tar.xz"))
(sha256
(base32
- "1p2ncvjz6alr9n3l5wvq2arqgc7xjs6dqyar1l9jp0z8cfgapkb8"))))
+ "124v9s4y1s7s6klx5vlmzpk1jlr4x84ch7r7scm7x2f42dqp2qw8"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags
@@ -4638,6 +4660,8 @@ Bluetooth audio output devices like headphones or loudspeakers.")
"--localstatedir=/var"
"--enable-library"
"--disable-systemd"
+ ;; TODO: is this needed? Not installed by default since 5.55.
+ "--enable-hid2hci"
;; Install dbus/udev files to the correct location.
(string-append "--with-dbusconfdir=" out "/etc")
(string-append "--with-udevdir=" out "/lib/udev")))
@@ -5271,7 +5295,8 @@ supported.")
("fuse" ,fuse))) ;libuuid
(native-inputs `(("pkg-config" ,pkg-config)))
(arguments
- '(#:configure-flags (list "--exec-prefix=${prefix}"
+ '(#:configure-flags (list "--disable-static"
+ "--exec-prefix=${prefix}"
"--with-fuse=external" ;use our own FUSE
"--enable-mount-helper"
"--enable-posix-acls"
@@ -5706,14 +5731,14 @@ the default @code{nsswitch} and the experimental @code{umich_ldap}.")
(define-public mcelog
(package
(name "mcelog")
- (version "170")
+ (version "172")
(source (origin
(method url-fetch)
(uri (string-append "https://git.kernel.org/cgit/utils/cpu/mce/"
"mcelog.git/snapshot/v" version ".tar.gz"))
(sha256
(base32
- "1m11v1y7cvpm7hwsghj23z77ps1w5jzn8000iwiyxpb939h2km5l"))
+ "17666056masfly83791q831yzw6sy1m6rwkxw7sqgjrhchn9sc4w"))
(file-name (string-append name "-" version ".tar.gz"))
(modules '((guix build utils)))
(snippet
@@ -6011,10 +6036,8 @@ under GNU/Linux. Features include:
@item Light can automatically figure out the best controller to use, making
full use of underlying hardware.
@item It is possible to set a minimum brightness value, as some controllers
-set the screen to be pitch black at a vaĺue of 0 (or higher).
-@end itemize
-
-Light is the successor of lightscript.")
+set the screen to be pitch black at a value of 0 (or higher).
+@end itemize\n")
(license license:gpl3+)))
(define-public brightnessctl
@@ -6426,17 +6449,18 @@ available in the kernel Linux.")
(define-public cpuid
(package
(name "cpuid")
- (version "20200427")
+ (version "20201006")
(source (origin
(method url-fetch)
(uri (string-append "http://www.etallen.com/cpuid/cpuid-"
version ".src.tar.gz"))
(sha256
(base32
- "1m31238z2ya8f8pzpyklwp0ksf5xicqrw1z941hhhx913wzldaf1"))))
+ "19jnkh57f979b78ak5mpxmdvnkgc33r55cw9shgd2hc380b3zi8k"))))
(build-system gnu-build-system)
(arguments
- '(#:make-flags '("CC=gcc")
+ `(#:make-flags
+ (list (string-append "CC=" ,(cc-for-target)))
#:tests? #f ; no tests
#:phases (modify-phases %standard-phases
(delete 'configure) ; no configure script
@@ -7003,19 +7027,25 @@ the superuser to make device nodes.")
(define-public fakeroot
(package
(name "fakeroot")
- (version "1.24")
+ (version "1.25.3")
(source (origin
+ ;; There are no tags in the repository, so take this snapshot.
(method url-fetch)
(uri (string-append "https://deb.debian.org/debian/pool/main/f/"
"fakeroot/fakeroot_" version ".orig.tar.gz"))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
- "1vb6f93hjyqnwx8dc8mm3dgma7axgqk8s7sdsjs8l2rpc0qmn11f"))))
+ "0v4m3v1bdqvblwj3vqsb3mllgbci6dsgsydq6765nzvz6n1kd44f"))))
(build-system gnu-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
+ (replace 'bootstrap
+ (lambda _
+ ;; The "preroll" script takes care of Autoconf and also
+ ;; prepares the translated manuals.
+ (invoke "sh" "./preroll")))
(add-after 'configure 'patch-Makefile
(lambda _
;; Note: The root of the problem is already in "Makefile.am".
@@ -7055,21 +7085,21 @@ the superuser to make device nodes.")
;; We don't have an /etc/passwd entry for "root" - use numeric IDs.
(substitute* "test/compare-tar"
(("tar -tvf") "tar --numeric-owner -tvf"))
-
- ;; coreutils 8.32 changed 'ls' to use the statx() syscall instead
- ;; of lstat(). fakeroot 1.24 does not support the former, so
- ;; adjust these tests to use 'test -b' instead of 'ls' to test for
- ;; block device. See <https://bugs.gnu.org/41090>.
- (substitute* '("test/t.mknod" "test/t.chmod_dev")
- (("ls -ld? \\$tmp/hda3")
- "test -b $tmp/hda3 && echo block || echo fail"))
#t)))))
(native-inputs
- `(("acl" ,acl)
- ("sharutils" ,sharutils) ; for the tests
- ("xz" ,xz))) ; for the tests
+ `(;; For bootstrapping the package.
+ ("autoconf" ,autoconf)
+ ("automake" ,automake)
+ ("libtool" ,libtool)
+ ("gettext" ,gettext-minimal)
+ ("po4a" ,po4a)
+
+ ;; For tests.
+ ("sharutils" ,sharutils)
+ ("xz" ,xz)))
(inputs
- `(("libcap" ,libcap/next)
+ `(("acl" ,acl)
+ ("libcap" ,libcap)
("util-linux" ,util-linux)
("sed" ,sed)
("coreutils" ,coreutils)))
@@ -7201,7 +7231,7 @@ of Linux application development.")
(package
(inherit pipewire)
(name "pipewire")
- (version "0.3.10")
+ (version "0.3.13")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -7210,7 +7240,7 @@ of Linux application development.")
(file-name (git-file-name name version))
(sha256
(base32
- "1y293sfhhmzbgnlvs46bpiyimlii5nk71f8115qxs8sviwlsdr3w"))))
+ "19j5kmb7iaivkq2agfzncfm2qms41ckqi0ddxvhpc91ihwprdc5w"))))
(arguments
'(#:configure-flags
(list (string-append "-Dudevrulesdir=" (assoc-ref %outputs "out")
@@ -7366,16 +7396,16 @@ persistent over reboots.")
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)))
- (inputs
+ (propagated-inputs
+ ;; In Requires.private of libbpf.pc.
`(("libelf" ,libelf)
("zlib" ,zlib)))
(arguments
- `(#:tests? #f ; No tests
+ `(#:tests? #f ; no tests
#:make-flags
(list
- (string-append "PREFIX=''")
- (string-append "DESTDIR=" (assoc-ref %outputs "out"))
- (string-append "LIBDIR=/lib")
+ (string-append "PREFIX=" (assoc-ref %outputs "out"))
+ (string-append "LIBDIR=$(PREFIX)/lib")
(string-append
"CC=" (assoc-ref %build-inputs "gcc") "/bin/gcc"))
#:phases
@@ -7549,3 +7579,75 @@ created by Alastair Robertson.")
provide a serial device @code{/dev/ttyebus} with almost no latency upon
receiving. It is dedicated to the PL011 UART of the Raspberry Pi.")
(license license:gpl3+))))
+
+(define-public ipset
+ (package
+ (name "ipset")
+ (version "7.6")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "http://ipset.netfilter.org/ipset-" version ".tar.bz2"))
+ (sha256
+ (base32
+ "1ny2spcm6bmpj8vnazssg99k59impr7n84jzkdmdjly1m7548z8f"))))
+ (build-system gnu-build-system)
+ (inputs
+ `(("libmnl" ,libmnl)))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (arguments
+ `(#:configure-flags '("--with-kmod=no")))
+ (home-page "http://ipset.netfilter.org/")
+ (synopsis "Administration tool for IP sets")
+ (description "IP sets are a framework inside the Linux 2.4.x and 2.6.x kernel which
+can be administered by the ipset utility. Depending on the type,
+currently an IP set may store IP addresses, (TCP/UDP) port numbers or
+IP addresses with MAC addresses in a way which ensures lightning speed
+when matching an entry against a set.
+
+If you want to
+@itemize @bullet
+@item store multiple IP addresses or port numbers and match against the entire
+collection using a single iptables rule.
+@item dynamically update iptables rules against IP addresses or ports without
+performance penalty.
+@item express complex IP address and ports based rulesets with a single
+iptables rule and benefit from the speed of IP sets.
+@end itemize\n
+then IP sets may be the proper tool for you.")
+ (license license:gpl2+)))
+
+(define-public liburing
+ (package
+ (name "liburing")
+ (version "0.7")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://git.kernel.dk/liburing")
+ (commit (string-append "liburing-" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "15z44l7y4c6s6dlf7v8lq4znlsjbja2r4ifbni0l8cdcnq0w3zh3"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(;; Tests are dependent on kernel version and features
+ #:tests? #f
+ #:phases
+ (modify-phases %standard-phases
+ (replace 'configure
+ ;; configure fails if it is followed by SHELL, CONFIG_SHELL,
+ ;; --enable-fast-install, and --build
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let ((out (assoc-ref outputs "out")))
+ (setenv "SHELL" (which "sh"))
+ (setenv "CONFIG_SHELL" (which "sh"))
+ (invoke "./configure" (string-append "--prefix=" out))))))))
+ (home-page "https://github.com/axboe/liburing")
+ (synopsis "Interface to the Linux kernel @code{io_uring} interface")
+ (description "This is the io_uring library, liburing. liburing provides
+helpers to setup and teardown io_uring instances, and also a simplified
+interface for applications that don't need (or want) to deal with the full
+kernel side implementation.")
+ (license license:expat)))
diff --git a/gnu/packages/lisp-xyz.scm b/gnu/packages/lisp-xyz.scm
index f73709515f..1f0006964b 100644
--- a/gnu/packages/lisp-xyz.scm
+++ b/gnu/packages/lisp-xyz.scm
@@ -75,6 +75,7 @@
#:use-module (gnu packages webkit)
#:use-module (gnu packages xdisorg)
#:use-module (ice-9 match)
+ #:use-module (srfi srfi-1)
#:use-module (srfi srfi-19))
(define-public sbcl-alexandria
@@ -321,7 +322,18 @@ streams which are similar to string streams.")
(sha256
(base32 "0dwvr29diqzcg5n6jvbk2rnd90i05l7n828hhw99khmqd0kz7xsi"))))
(build-system asdf-build-system/sbcl)
- (native-inputs `(("flexi-streams" ,sbcl-flexi-streams)))
+ (native-inputs
+ `(("flexi-streams" ,sbcl-flexi-streams)))
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'disable-ppcre-unicode
+ ;; cl-ppcre and cl-ppcre-unicode are put in different packages
+ ;; to work around the circular dependency between edicl/cl-ppcre
+ ;; and edicl/cl-unicode.
+ (lambda _
+ (delete-file "cl-ppcre-unicode.asd")
+ #t)))))
(synopsis "Portable regular expression library for Common Lisp")
(description "CL-PPCRE is a portable regular expression library for Common
Lisp, which is compatible with perl. It is pretty fast, thread-safe, and
@@ -335,9 +347,9 @@ compatible with ANSI-compliant Common Lisp implementations.")
(define-public ecl-cl-ppcre
(sbcl-package->ecl-package sbcl-cl-ppcre))
-(define sbcl-cl-unicode-base
+(define-public sbcl-cl-unicode
(package
- (name "sbcl-cl-unicode-base")
+ (name "sbcl-cl-unicode")
(version "0.1.6")
(source (origin
(method git-fetch)
@@ -349,9 +361,8 @@ compatible with ANSI-compliant Common Lisp implementations.")
(base32
"0ykx2s9lqfl74p1px0ik3l2izd1fc9jd1b4ra68s5x34rvjy0hza"))))
(build-system asdf-build-system/sbcl)
- (arguments
- '(#:asd-file "cl-unicode.asd"
- #:asd-system-name "cl-unicode/base"))
+ (native-inputs
+ `(("flexi-streams" ,sbcl-flexi-streams)))
(inputs
`(("cl-ppcre" ,sbcl-cl-ppcre)))
(home-page "http://weitz.de/cl-unicode/")
@@ -361,23 +372,36 @@ is compatible with perl. It is pretty fast, thread-safe, and compatible with
ANSI-compliant Common Lisp implementations.")
(license license:bsd-2)))
-(define-public sbcl-cl-unicode
- (package
- (inherit sbcl-cl-unicode-base)
- (name "sbcl-cl-unicode")
- (inputs
- `(("cl-unicode/base" ,sbcl-cl-unicode-base)
- ,@(package-inputs sbcl-cl-unicode-base)))
- (native-inputs
- `(("flexi-streams" ,sbcl-flexi-streams)))
- (arguments '())))
-
(define-public ecl-cl-unicode
(sbcl-package->ecl-package sbcl-cl-unicode))
(define-public cl-unicode
(sbcl-package->cl-source-package sbcl-cl-unicode))
+(define-public sbcl-cl-ppcre-unicode
+ (package (inherit sbcl-cl-ppcre)
+ (name "sbcl-cl-ppcre-unicode")
+ (inputs
+ `(("sbcl-cl-ppcre" ,sbcl-cl-ppcre)
+ ("sbcl-cl-unicode" ,sbcl-cl-unicode)))
+ (arguments
+ `(#:tests? #f ; tests fail with "Component :CL-PPCRE-TEST not found"
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'disable-ppcre
+ ;; cl-ppcre and cl-ppcre-unicode are put in different packages
+ ;; to work around the circular dependency between edicl/cl-ppcre
+ ;; and edicl/cl-unicode.
+ (lambda _
+ (delete-file "cl-ppcre.asd")
+ #t)))))))
+
+(define-public cl-ppcre-unicode
+ (sbcl-package->cl-source-package sbcl-cl-ppcre-unicode))
+
+(define-public ecl-cl-ppcre-unicode
+ (sbcl-package->ecl-package sbcl-cl-ppcre-unicode))
+
(define-public sbcl-zpb-ttf
(package
(name "sbcl-zpb-ttf")
@@ -407,9 +431,9 @@ file.")
(define-public cl-zpb-ttf
(sbcl-package->cl-source-package sbcl-zpb-ttf))
-(define-public sbcl-cl-aa
+(define-public sbcl-cl-vectors
(package
- (name "sbcl-cl-aa")
+ (name "sbcl-cl-vectors")
(version "0.1.5")
(source
(origin
@@ -420,67 +444,17 @@ file.")
(base32
"04lhwi0kq8pkwhgd885pk80m1cp9sfvjjn5zj70s1dnckibhdmqh"))))
(build-system asdf-build-system/sbcl)
- (arguments '(#:asd-file "cl-aa.asd"))
- (home-page "http://projects.tuxee.net/cl-vectors/")
- (synopsis "Polygon rasterizer")
- (description
- "This is a Common Lisp library implementing the AA polygon rasterization
-algorithm from the @url{http://antigrain.com, Antigrain} project.")
- (license license:expat)))
-
-(define-public ecl-cl-aa
- (sbcl-package->ecl-package sbcl-cl-aa))
-
-(define-public cl-aa
- (sbcl-package->cl-source-package sbcl-cl-aa))
-
-(define-public sbcl-cl-paths
- (package
- (inherit sbcl-cl-aa)
- (name "sbcl-cl-paths")
- (arguments '(#:asd-file "cl-paths.asd"))
- (synopsis "Facilities to create and manipulate vectorial paths")
- (description
- "This package provides facilities to create and manipulate vectorial
-paths.")))
-
-(define-public ecl-cl-paths
- (sbcl-package->ecl-package sbcl-cl-paths))
-
-(define-public cl-paths
- (sbcl-package->cl-source-package sbcl-cl-paths))
-
-(define-public sbcl-cl-paths-ttf
- (package
- (inherit sbcl-cl-aa)
- (name "sbcl-cl-paths-ttf")
- (arguments '(#:asd-file "cl-paths-ttf.asd"))
(inputs
- `(("cl-paths" ,sbcl-cl-paths)
- ("zpb-ttf" ,sbcl-zpb-ttf)))
- (synopsis "Facilities to create and manipulate vectorial paths")
- (description
- "This package provides facilities to create and manipulate vectorial
-paths.")))
-
-(define-public ecl-cl-paths-ttf
- (sbcl-package->ecl-package sbcl-cl-paths-ttf))
-
-(define-public cl-paths-ttf
- (sbcl-package->cl-source-package sbcl-cl-paths-ttf))
-
-(define-public sbcl-cl-vectors
- (package
- (inherit sbcl-cl-aa)
- (name "sbcl-cl-vectors")
- (arguments '(#:asd-file "cl-vectors.asd"))
- (inputs
- `(("cl-aa" ,sbcl-cl-aa)
- ("cl-paths" ,sbcl-cl-paths)))
+ `(("zpb-ttf" ,sbcl-zpb-ttf)))
+ (arguments
+ '(#:asd-systems '("cl-vectors"
+ "cl-paths-ttf")))
+ (home-page "http://projects.tuxee.net/cl-vectors/")
(synopsis "Create, transform and render anti-aliased vectorial paths")
(description
"This is a pure Common Lisp library to create, transform and render
-anti-aliased vectorial paths.")))
+anti-aliased vectorial paths.")
+ (license license:expat)))
(define-public ecl-cl-vectors
(sbcl-package->ecl-package sbcl-cl-vectors))
@@ -508,7 +482,6 @@ anti-aliased vectorial paths.")))
(build-system asdf-build-system/sbcl)
(arguments
'(#:tests? #f ; spatial-trees.test requires spatial-trees.nns
- #:asd-file "spatial-trees.asd"
#:test-asd-file "spatial-trees.test.asd"))
(native-inputs
`(("fiveam" ,sbcl-fiveam)))
@@ -650,7 +623,6 @@ from other CLXes around the net.")
`(("clx" ,sbcl-clx)
("zpb-ttf" ,sbcl-zpb-ttf)
("cl-vectors" ,sbcl-cl-vectors)
- ("cl-paths-ttf" ,sbcl-cl-paths-ttf)
("cl-fad" ,sbcl-cl-fad)
("cl-store" ,sbcl-cl-store)
("trivial-features" ,sbcl-trivial-features)))
@@ -660,30 +632,19 @@ from other CLXes around the net.")
antialiased TrueType font rendering using CLX and XRender extension.")
(license license:expat))))
-(define-public sbcl-cl-ppcre-unicode
- (package (inherit sbcl-cl-ppcre)
- (name "sbcl-cl-ppcre-unicode")
- (arguments
- `(#:tests? #f ; tests fail with "Component :CL-PPCRE-TEST not found"
- #:asd-file "cl-ppcre-unicode.asd"))
- (inputs
- `(("sbcl-cl-ppcre" ,sbcl-cl-ppcre)
- ("sbcl-cl-unicode" ,sbcl-cl-unicode)))))
+(define-public cl-clx-truetype
+ (sbcl-package->cl-source-package sbcl-clx-truetype))
-(define-public ecl-cl-ppcre-unicode
- (sbcl-package->ecl-package sbcl-cl-ppcre-unicode))
+(define-public ecl-clx-truetype
+ (sbcl-package->ecl-package sbcl-clx-truetype))
-;; The slynk that users expect to install includes all of slynk's contrib
-;; modules. Therefore, we build the base module and all contribs first; then
-;; we expose the union of these as `sbcl-slynk'. The following variable
-;; describes the base module.
-(define sbcl-slynk-boot0
+(define-public sbcl-slynk
(let ((revision "3")
;; Update together with emacs-sly.
(commit "6a2f543cb21f14104c2253af5a1427b884a987ae"))
(package
- (name "sbcl-slynk-boot0")
- (version (string-append "1.0.0-beta-" revision "." (string-take commit 7)))
+ (name "sbcl-slynk")
+ (version (git-version "1.0.0-beta" revision commit))
(source
(origin
(method git-fetch)
@@ -693,7 +654,7 @@ antialiased TrueType font rendering using CLX and XRender extension.")
(commit commit)))
(sha256
(base32 "0wbpg9p9yg2hd62l15pvy50fk3hndq5zzyqlyyf04g368s895144"))
- (file-name (string-append "slynk-" version "-checkout"))
+ (file-name (git-file-name "slynk" version))
(modules '((guix build utils)
(ice-9 ftw)))
(snippet
@@ -724,9 +685,40 @@ antialiased TrueType font rendering using CLX and XRender extension.")
(scandir "slynk"))
#t))))
(build-system asdf-build-system/sbcl)
+ (outputs '("out" "image"))
(arguments
`(#:tests? #f ; No test suite
- #:asd-system-name "slynk"))
+ #:asd-systems '("slynk"
+ "slynk/arglists"
+ "slynk/util"
+ "slynk/fancy-inspector"
+ "slynk/package-fu"
+ "slynk/mrepl"
+ "slynk/trace-dialog"
+ "slynk/profiler"
+ "slynk/stickers"
+ "slynk/indentation"
+ "slynk/retro")
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'create-asdf-configuration 'build-image
+ (lambda* (#:key outputs #:allow-other-keys)
+ (build-image (string-append
+ (assoc-ref %outputs "image")
+ "/bin/slynk")
+ %outputs
+ #:dependencies '("slynk"
+ "slynk/arglists"
+ "slynk/util"
+ "slynk/fancy-inspector"
+ "slynk/package-fu"
+ "slynk/mrepl"
+ "slynk/trace-dialog"
+ "slynk/profiler"
+ "slynk/stickers"
+ "slynk/indentation"
+ "slynk/retro"))
+ #t)))))
(synopsis "Common Lisp IDE for Emacs")
(description "SLY is a fork of SLIME, an IDE backend for Common Lisp.
It also features a completely redesigned REPL based on Emacs's own
@@ -738,216 +730,18 @@ multiple inspectors with independent history.")
(properties `((cl-source-variant . ,(delay cl-slynk)))))))
(define-public cl-slynk
- (package
- (inherit (sbcl-package->cl-source-package sbcl-slynk-boot0))
- (name "cl-slynk")))
-
-(define ecl-slynk-boot0
- (sbcl-package->ecl-package sbcl-slynk-boot0))
-
-(define sbcl-slynk-arglists
- (package
- (inherit sbcl-slynk-boot0)
- (name "sbcl-slynk-arglists")
- (inputs `(("slynk" ,sbcl-slynk-boot0)))
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-slynk-boot0)
- ((#:asd-file _ "") "slynk.asd")
- ((#:asd-system-name _ #f) "slynk/arglists")))))
-
-(define ecl-slynk-arglists
- (sbcl-package->ecl-package sbcl-slynk-arglists))
-
-(define sbcl-slynk-util
- (package
- (inherit sbcl-slynk-boot0)
- (name "sbcl-slynk-util")
- (inputs `(("slynk" ,sbcl-slynk-boot0)))
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-slynk-boot0)
- ((#:asd-file _ "") "slynk.asd")
- ((#:asd-system-name _ #f) "slynk/util")))))
-
-(define ecl-slynk-util
- (sbcl-package->ecl-package sbcl-slynk-util))
-
-(define sbcl-slynk-fancy-inspector
- (package
- (inherit sbcl-slynk-arglists)
- (name "sbcl-slynk-fancy-inspector")
- (inputs `(("slynk-util" ,sbcl-slynk-util)
- ,@(package-inputs sbcl-slynk-arglists)))
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-slynk-arglists)
- ((#:asd-system-name _ #f) "slynk/fancy-inspector")))))
-
-(define ecl-slynk-fancy-inspector
- (sbcl-package->ecl-package sbcl-slynk-fancy-inspector))
-
-(define sbcl-slynk-package-fu
- (package
- (inherit sbcl-slynk-arglists)
- (name "sbcl-slynk-package-fu")
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-slynk-arglists)
- ((#:asd-system-name _ #f) "slynk/package-fu")))))
-
-(define ecl-slynk-package-fu
- (sbcl-package->ecl-package sbcl-slynk-package-fu))
-
-(define sbcl-slynk-mrepl
- (package
- (inherit sbcl-slynk-fancy-inspector)
- (name "sbcl-slynk-mrepl")
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-slynk-arglists)
- ((#:asd-system-name _ #f) "slynk/mrepl")))))
-
-(define ecl-slynk-mrepl
- (sbcl-package->ecl-package sbcl-slynk-mrepl))
-
-(define sbcl-slynk-trace-dialog
- (package
- (inherit sbcl-slynk-arglists)
- (name "sbcl-slynk-trace-dialog")
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-slynk-arglists)
- ((#:asd-system-name _ #f) "slynk/trace-dialog")))))
-
-(define ecl-slynk-trace-dialog
- (sbcl-package->ecl-package sbcl-slynk-trace-dialog))
-
-(define sbcl-slynk-profiler
- (package
- (inherit sbcl-slynk-arglists)
- (name "sbcl-slynk-profiler")
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-slynk-arglists)
- ((#:asd-system-name _ #f) "slynk/profiler")))))
-
-(define ecl-slynk-profiler
- (sbcl-package->ecl-package sbcl-slynk-profiler))
-
-(define sbcl-slynk-stickers
- (package
- (inherit sbcl-slynk-arglists)
- (name "sbcl-slynk-stickers")
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-slynk-arglists)
- ((#:asd-system-name _ #f) "slynk/stickers")))))
-
-(define ecl-slynk-stickers
- (sbcl-package->ecl-package sbcl-slynk-stickers))
-
-(define sbcl-slynk-indentation
- (package
- (inherit sbcl-slynk-arglists)
- (name "sbcl-slynk-indentation")
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-slynk-arglists)
- ((#:asd-system-name _ #f) "slynk/indentation")))))
-
-(define ecl-slynk-indentation
- (sbcl-package->ecl-package sbcl-slynk-indentation))
-
-(define sbcl-slynk-retro
- (package
- (inherit sbcl-slynk-arglists)
- (name "sbcl-slynk-retro")
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-slynk-arglists)
- ((#:asd-system-name _ #f) "slynk/retro")))))
-
-(define ecl-slynk-retro
- (sbcl-package->ecl-package sbcl-slynk-retro))
-
-(define slynk-systems
- '("slynk"
- "slynk-util"
- "slynk-arglists"
- "slynk-fancy-inspector"
- "slynk-package-fu"
- "slynk-mrepl"
- "slynk-profiler"
- "slynk-trace-dialog"
- "slynk-stickers"
- "slynk-indentation"
- "slynk-retro"))
-
-(define-public sbcl-slynk
- (package
- (inherit sbcl-slynk-boot0)
- (name "sbcl-slynk")
- (inputs
- `(("slynk" ,sbcl-slynk-boot0)
- ("slynk-util" ,sbcl-slynk-util)
- ("slynk-arglists" ,sbcl-slynk-arglists)
- ("slynk-fancy-inspector" ,sbcl-slynk-fancy-inspector)
- ("slynk-package-fu" ,sbcl-slynk-package-fu)
- ("slynk-mrepl" ,sbcl-slynk-mrepl)
- ("slynk-profiler" ,sbcl-slynk-profiler)
- ("slynk-trace-dialog" ,sbcl-slynk-trace-dialog)
- ("slynk-stickers" ,sbcl-slynk-stickers)
- ("slynk-indentation" ,sbcl-slynk-indentation)
- ("slynk-retro" ,sbcl-slynk-retro)))
- (native-inputs `(("sbcl" ,sbcl)))
- (build-system trivial-build-system)
- (source #f)
- (outputs '("out" "image"))
- (arguments
- `(#:modules ((guix build union)
- (guix build utils)
- (guix build lisp-utils))
- #:builder
- (begin
- (use-modules (ice-9 match)
- (srfi srfi-1)
- (guix build union)
- (guix build lisp-utils))
-
- (union-build
- (assoc-ref %outputs "out")
- (filter-map
- (match-lambda
- ((name . path)
- (if (string-prefix? "slynk" name) path #f)))
- %build-inputs))
-
- (prepend-to-source-registry
- (string-append (assoc-ref %outputs "out") "//"))
-
- (parameterize ((%lisp-type "sbcl")
- (%lisp (string-append (assoc-ref %build-inputs "sbcl")
- "/bin/sbcl")))
- (build-image (string-append
- (assoc-ref %outputs "image")
- "/bin/slynk")
- %outputs
- #:dependencies ',slynk-systems))
- #t)))))
+ (sbcl-package->cl-source-package sbcl-slynk))
(define-public ecl-slynk
- (package
- (inherit sbcl-slynk)
- (name "ecl-slynk")
- (inputs
- (map (match-lambda
- ((name pkg . _)
- (list name (sbcl-package->ecl-package pkg))))
- (package-inputs sbcl-slynk)))
- (native-inputs '())
- (outputs '("out"))
- (arguments
- '(#:modules ((guix build union))
- #:builder
- (begin
- (use-modules (ice-9 match)
- (guix build union))
- (match %build-inputs
- (((names . paths) ...)
- (union-build (assoc-ref %outputs "out")
- paths)
- #t)))))))
+ (let ((pkg (sbcl-package->ecl-package sbcl-slynk)))
+ (package
+ (inherit pkg)
+ (outputs '("out"))
+ (arguments
+ (substitute-keyword-arguments (package-arguments pkg)
+ ((#:phases phases)
+ `(modify-phases ,phases
+ (delete 'build-image))))))))
(define-public sbcl-parse-js
(let ((commit "fbadc6029bec7039602abfc06c73bb52970998f6")
@@ -975,6 +769,9 @@ JavaScript (ECMAScript 3). It has basic support for ECMAScript 5.")
(define-public cl-parse-js
(sbcl-package->cl-source-package sbcl-parse-js))
+(define-public ecl-parse-js
+ (sbcl-package->ecl-package sbcl-parse-js))
+
(define-public sbcl-parse-number
(package
(name "sbcl-parse-number")
@@ -1002,6 +799,9 @@ else @code{parse-number} signals an error of type @code{invalid-number}.")
(define-public cl-parse-number
(sbcl-package->cl-source-package sbcl-parse-number))
+(define-public ecl-parse-number
+ (sbcl-package->ecl-package sbcl-parse-number))
+
(define-public sbcl-iterate
(package
(name "sbcl-iterate")
@@ -1080,6 +880,9 @@ compressor. It works on data produced by @code{parse-js} to generate a
(define-public cl-uglify-js
(sbcl-package->cl-source-package sbcl-cl-uglify-js))
+(define-public ecl-cl-uglify-js
+ (sbcl-package->ecl-package sbcl-cl-uglify-js))
+
(define-public uglify-js
(package
(inherit sbcl-cl-uglify-js)
@@ -1095,9 +898,14 @@ compressor. It works on data produced by @code{parse-js} to generate a
(with-output-to-file script
(lambda _
(format #t "#!~a/bin/sbcl --script
+
(require :asdf)
- (push (truename \"~a/lib/sbcl\") asdf:*central-registry*)"
+ (asdf:initialize-source-registry
+ #p\"~a/etc/common-lisp/source-registry.conf.d/\")
+ (asdf:initialize-output-translations
+ #p\"~a/etc/common-lisp/asdf-output-translations.conf.d/\")"
(assoc-ref %build-inputs "sbcl")
+ (assoc-ref %build-inputs "sbcl-cl-uglify-js")
(assoc-ref %build-inputs "sbcl-cl-uglify-js"))
;; FIXME: cannot use progn here because otherwise it fails to
;; find cl-uglify-js.
@@ -1174,7 +982,9 @@ utilities that make it even easier to manipulate text in Common Lisp. It has
(sha256
(base32 "14pcahr8r2j3idhyy216zyw8jnj1dnrx0qbkkbdqkvwzign1ah4j"))))
(build-system asdf-build-system/sbcl)
- (arguments '(#:tests? #f))
+ (arguments
+ '(#:asd-files '("trivial-features.asd")
+ #:tests? #f))
(home-page "https://cliki.net/trivial-features")
(synopsis "Ensures consistency of @code{*FEATURES*} in Common Lisp")
(description "Trivial-features ensures that @code{*FEATURES*} is
@@ -1293,8 +1103,7 @@ GNU libiconv, but completely written in Common Lisp.")
(file-name (string-append "cl-yacc-" version "-checkout"))))
(build-system asdf-build-system/sbcl)
(arguments
- `(#:asd-file "yacc.asd"
- #:asd-system-name "yacc"))
+ `(#:asd-systems '("yacc")))
(synopsis "LALR(1) parser generator for Common Lisp, similar in spirit to Yacc")
(description
"CL-Yacc is a LALR(1) parser generator for Common Lisp, similar in spirit
@@ -1569,9 +1378,11 @@ C, C++, Java, Python, Erlang, Haskell, Objective-C, Diff, Webkit.")
(arguments
;; FIXME: We need to specify the name because the build-system thinks
;; "3" is a version marker.
- `(#:asd-system-name "3bmd"))
+ `(#:asd-systems '("3bmd"
+ "3bmd-ext-code-blocks")))
(inputs
- `(("esrap" ,sbcl-esrap)
+ `(("colorize" ,sbcl-colorize)
+ ("esrap" ,sbcl-esrap)
("split-sequence" ,sbcl-split-sequence)))
(synopsis "Markdown processor in Command Lisp using esrap parser")
(description
@@ -1586,29 +1397,6 @@ parsing, and grammar based on @command{peg-markdown}.")
(define-public ecl-3bmd
(sbcl-package->ecl-package sbcl-3bmd))
-(define-public sbcl-3bmd-ext-code-blocks
- (let ((commit "192ea13435b605a96ef607df51317056914cabbd"))
- (package
- (inherit sbcl-3bmd)
- (name "sbcl-3bmd-ext-code-blocks")
- (arguments
- `(#:asd-system-name "3bmd-ext-code-blocks"
- #:asd-file "3bmd-ext-code-blocks.asd"))
- (inputs
- `(("3bmd" ,sbcl-3bmd)
- ("colorize" ,sbcl-colorize)))
- (synopsis "3bmd extension which adds support for GitHub-style fenced
-code blocks")
- (description
- "3bmd extension which adds support for GitHub-style fenced code blocks,
-with @command{colorize} support."))))
-
-(define-public cl-3bmd-ext-code-blocks
- (sbcl-package->cl-source-package sbcl-3bmd-ext-code-blocks))
-
-(define-public ecl-3bmd-ext-code-blocks
- (sbcl-package->ecl-package sbcl-3bmd-ext-code-blocks))
-
(define-public sbcl-cl-fad
(package
(name "sbcl-cl-fad")
@@ -1810,19 +1598,13 @@ writing code that contains string literals that contain code themselves.")
(define-public ecl-pythonic-string-reader
(sbcl-package->ecl-package sbcl-pythonic-string-reader))
-;; SLIME does not have a ASDF system definition to build all of Swank. As a
-;; result, the asdf-build-system/sbcl will produce an almost empty package.
-;; Some work was done to fix this at
-;; https://github.com/sionescu/slime/tree/swank-asdf but it was never merged
-;; and is now lagging behind. Building SBCL fasls might not be worth the
-;; hassle, so let's just ship the source then.
-(define-public cl-slime-swank
+(define-public sbcl-slime-swank
(package
- (name "cl-slime-swank")
+ (name "sbcl-slime-swank")
(version "2.24")
(source
(origin
- (file-name (string-append name "-" version ".tar.gz"))
+ (file-name (git-file-name "slime-swank" version))
(method git-fetch)
(uri (git-reference
(url "https://github.com/slime/slime/")
@@ -1830,7 +1612,9 @@ writing code that contains string literals that contain code themselves.")
(sha256
(base32
"0js24x42m7b5iymb4rxz501dff19vav5pywnzv50b673rbkaaqvh"))))
- (build-system asdf-build-system/source)
+ (build-system asdf-build-system/sbcl)
+ (arguments
+ '(#:asd-systems '("swank")))
(home-page "https://github.com/slime/slime")
(synopsis "Common Lisp Swank server")
(description
@@ -1839,8 +1623,11 @@ processes that doesn't run under Emacs. Lisp processes created by
@command{M-x slime} automatically start the server.")
(license (list license:gpl2+ license:public-domain))))
-(define-public sbcl-slime-swank
- (deprecated-package "sbcl-slime-swank" cl-slime-swank))
+(define-public cl-slime-swank
+ (sbcl-package->cl-source-package sbcl-slime-swank))
+
+(define-public ecl-slime-swank
+ (sbcl-package->ecl-package sbcl-slime-swank))
(define-public sbcl-mgl-pax
(let ((commit "818448418d6b9de74620f606f5b23033c6082769"))
@@ -1860,16 +1647,12 @@ processes that doesn't run under Emacs. Lisp processes created by
(build-system asdf-build-system/sbcl)
(inputs
`(("3bmd" ,sbcl-3bmd)
- ("3bmd-ext-code-blocks" ,sbcl-3bmd-ext-code-blocks)
("babel" ,sbcl-babel)
("cl-fad" ,sbcl-cl-fad)
("ironclad" ,sbcl-ironclad)
("named-readtables" ,sbcl-named-readtables)
- ("pythonic-string-reader" ,sbcl-pythonic-string-reader)))
- (propagated-inputs
- ;; Packages having mgl-pax as input complain that it can't find
- ;; swank if we put it in inputs, so let's put it in propageted-inputs.
- `(("swank" ,cl-slime-swank)))
+ ("pythonic-string-reader" ,sbcl-pythonic-string-reader)
+ ("swank" ,sbcl-slime-swank)))
(synopsis "Exploratory programming environment and documentation generator")
(description
"PAX provides an extremely poor man's Explorable Programming
@@ -1893,7 +1676,13 @@ pretty, documentation is code.")
(sbcl-package->cl-source-package sbcl-mgl-pax))
(define-public ecl-mgl-pax
- (sbcl-package->ecl-package sbcl-mgl-pax))
+ (let ((pkg (sbcl-package->ecl-package sbcl-mgl-pax)))
+ (package
+ (inherit pkg)
+ (arguments
+ (substitute-keyword-arguments (package-arguments pkg)
+ ;; TODO: Find why the tests fail on ECL.
+ ((#:tests? _ #f) #f))))))
(define-public sbcl-lisp-unit
(let ((commit "89653a232626b67400bf9a941f9b367da38d3815"))
@@ -2116,10 +1905,10 @@ named color.")
(define-public ecl-cl-ansi-text
(sbcl-package->ecl-package sbcl-cl-ansi-text))
-(define-public sbcl-prove-asdf
+(define-public sbcl-prove
(let ((commit "4f9122bd393e63c5c70c1fba23070622317cfaa0"))
(package
- (name "sbcl-prove-asdf")
+ (name "sbcl-prove")
(version (git-version "1.0.0" "1" commit))
(source
(origin
@@ -2132,35 +1921,13 @@ named color.")
"07sbfw459z8bbjvx1qlmfa8qk2mvbjnnzi2mi0x72blaj8bkl4vc"))
(file-name (git-file-name "prove" version))))
(build-system asdf-build-system/sbcl)
- (arguments
- `(#:asd-file "prove-asdf.asd"))
- (synopsis "Test requirement for the Common Lisp 'prove' library")
+ (inputs
+ `(("alexandria" ,sbcl-alexandria)
+ ("cl-ppcre" ,sbcl-cl-ppcre)
+ ("cl-ansi-text" ,sbcl-cl-ansi-text)))
+ (synopsis "Yet another unit testing framework for Common Lisp")
(description
- "Test requirement for the Common Lisp @command{prove} library.")
- (home-page "https://github.com/fukamachi/prove")
- (license license:expat))))
-
-(define-public cl-prove-asdf
- (sbcl-package->cl-source-package sbcl-prove-asdf))
-
-(define-public ecl-prove-asdf
- (sbcl-package->ecl-package sbcl-prove-asdf))
-
-(define-public sbcl-prove
- (package
- (inherit sbcl-prove-asdf)
- (name "sbcl-prove")
- (inputs
- `(("alexandria" ,sbcl-alexandria)
- ("cl-ppcre" ,sbcl-cl-ppcre)
- ("cl-ansi-text" ,sbcl-cl-ansi-text)))
- (native-inputs
- `(("prove-asdf" ,sbcl-prove-asdf)))
- (arguments
- `(#:asd-file "prove.asd"))
- (synopsis "Yet another unit testing framework for Common Lisp")
- (description
- "This project was originally called @command{cl-test-more}.
+ "This project was originally called @command{cl-test-more}.
@command{prove} is yet another unit testing framework for Common Lisp. The
advantages of @command{prove} are:
@@ -2170,7 +1937,9 @@ advantages of @command{prove} are:
@item Extensible test reporters
@item Colorizes the report if it's available (note for SLIME)
@item Reports test durations
-@end itemize\n")))
+@end itemize\n")
+ (home-page "https://github.com/fukamachi/prove")
+ (license license:expat))))
(define-public cl-prove
(sbcl-package->cl-source-package sbcl-prove))
@@ -2198,8 +1967,7 @@ advantages of @command{prove} are:
`(("alexandria" ,sbcl-alexandria)
("babel" ,sbcl-babel)))
(native-inputs
- `(("prove" ,sbcl-prove)
- ("prove-asdf" ,sbcl-prove-asdf)))
+ `(("prove" ,sbcl-prove)))
(arguments
;; TODO: Tests don't find "proc-parse-test", why?
`(#:tests? #f))
@@ -2237,8 +2005,7 @@ pattern-matching-like, but a char-by-char procedural parser.")
`(("alexandria" ,sbcl-alexandria)
("babel" ,sbcl-babel)))
(native-inputs
- `(("prove" ,sbcl-prove)
- ("prove-asdf" ,sbcl-prove-asdf)))
+ `(("prove" ,sbcl-prove)))
(arguments
;; TODO: Tests don't find "proc-parse-test", why?
`(#:tests? #f))
@@ -2255,12 +2022,12 @@ values from a string in Common Lisp.")
(define-public ecl-parse-float
(sbcl-package->ecl-package sbcl-parse-float))
-(define-public sbcl-ascii-strings
+(define-public sbcl-cl-string-match
(let ((revision "1")
(changeset "5048480a61243e6f1b02884012c8f25cdbee6d97"))
(package
- (name "sbcl-ascii-strings")
- (version (string-append "0-" revision "." (string-take changeset 7)))
+ (name "sbcl-cl-string-match")
+ (version (git-version "0" revision changeset))
(source
(origin
(method hg-fetch)
@@ -2274,69 +2041,28 @@ values from a string in Common Lisp.")
(build-system asdf-build-system/sbcl)
(inputs
`(("alexandria" ,sbcl-alexandria)
- ("babel" ,sbcl-babel)))
+ ("babel" ,sbcl-babel)
+ ("iterate" ,sbcl-iterate)
+ ("jpl-queues" ,sbcl-jpl-queues)
+ ("jpl-util" ,sbcl-jpl-util)
+ ("mgl-pax" ,sbcl-mgl-pax)
+ ("parse-float" ,sbcl-parse-float)
+ ("proc-parse" ,sbcl-proc-parse)
+ ("yacc" ,sbcl-cl-yacc)))
+ ;; TODO: Tests are not evaluated properly.
+ (native-inputs
+ ;; For testing:
+ `(("lisp-unit" ,sbcl-lisp-unit)))
(arguments
- `(#:asd-file "ascii-strings.asd"))
- (synopsis "Operations on ASCII strings")
+ `(#:tests? #f))
+ (synopsis "Set of utilities to manipulate strings in Common Lisp")
(description
- "Operations on ASCII strings. Essentially this can be any kind of
-single-byte encoded strings.")
+ "@command{cl-strings} is a small, portable, dependency-free set of
+utilities that make it even easier to manipulate text in Common Lisp. It has
+100% test coverage and works at least on sbcl, ecl, ccl, abcl and clisp.")
(home-page "https://bitbucket.org/vityok/cl-string-match/")
(license license:bsd-3))))
-(define-public cl-ascii-strings
- (sbcl-package->cl-source-package sbcl-ascii-strings))
-
-(define-public ecl-ascii-strings
- (sbcl-package->ecl-package sbcl-ascii-strings))
-
-(define-public sbcl-simple-scanf
- (package
- (inherit sbcl-ascii-strings)
- (name "sbcl-simple-scanf")
- (inputs
- `(("alexandria" ,sbcl-alexandria)
- ("iterate" ,sbcl-iterate)
- ("proc-parse" ,sbcl-proc-parse)
- ("parse-float" ,sbcl-parse-float)))
- (arguments
- `(#:asd-file "simple-scanf.asd"))
- (synopsis "Simple scanf-like functionality implementation")
- (description
- "A simple scanf-like functionality implementation.")))
-
-(define-public cl-simple-scanf
- (sbcl-package->cl-source-package sbcl-simple-scanf))
-
-(define-public ecl-simple-scanf
- (sbcl-package->ecl-package sbcl-simple-scanf))
-
-(define-public sbcl-cl-string-match
- (package
- (inherit sbcl-ascii-strings)
- (name "sbcl-cl-string-match")
- (inputs
- `(("alexandria" ,sbcl-alexandria)
- ("ascii-strings" ,sbcl-ascii-strings)
- ("yacc" ,sbcl-cl-yacc)
- ("jpl-util" ,sbcl-jpl-util)
- ("jpl-queues" ,sbcl-jpl-queues)
- ("mgl-pax" ,sbcl-mgl-pax)
- ("iterate" ,sbcl-iterate)))
- ;; TODO: Tests are not evaluated properly.
- (native-inputs
- ;; For testing:
- `(("lisp-unit" ,sbcl-lisp-unit)
- ("simple-scanf" ,sbcl-simple-scanf)))
- (arguments
- `(#:tests? #f
- #:asd-file "cl-string-match.asd"))
- (synopsis "Portable, dependency-free set of utilities to manipulate strings in Common Lisp")
- (description
- "@command{cl-strings} is a small, portable, dependency-free set of
-utilities that make it even easier to manipulate text in Common Lisp. It has
-100% test coverage and works at least on sbcl, ecl, ccl, abcl and clisp.")))
-
(define-public cl-string-match
(sbcl-package->cl-source-package sbcl-cl-string-match))
@@ -2419,6 +2145,14 @@ Lisp programs. It parses URI according to the RFC 2396 specification.")
(base32
"0wdhfnzi4v6d97pggzj2aw55si94w4327br94jrmyvwf351wqjvv"))))
(build-system asdf-build-system/sbcl)
+ (inputs
+ `(("bordeaux-threads" ,sbcl-bordeaux-threads)))
+ (arguments
+ '(#:asd-systems '("queues"
+ "queues.simple-queue"
+ "queues.simple-cqueue"
+ "queues.priority-queue"
+ "queues.priority-cqueue")))
(home-page "https://github.com/oconnore/queues")
(synopsis "Common Lisp queue library")
(description
@@ -2432,93 +2166,9 @@ non-consing thread safe queues and fibonacci priority queues.")
(define-public ecl-queues
(sbcl-package->ecl-package sbcl-queues))
-(define-public sbcl-queues.simple-queue
- (package
- (inherit sbcl-queues)
- (name "sbcl-queues.simple-queue")
- (inputs
- `(("sbcl-queues" ,sbcl-queues)))
- (arguments
- `(#:asd-file "queues.simple-queue.asd"))
- (synopsis "Simple queue implementation")
- (description
- "This is a simple queue library for Common Lisp with features such as
-non-consing thread safe queues and fibonacci priority queues.")
- (license license:expat)))
-
-(define-public cl-queues.simple-queue
- (sbcl-package->cl-source-package sbcl-queues.simple-queue))
-
-(define-public ecl-queues.simple-queue
- (sbcl-package->ecl-package sbcl-queues.simple-queue))
-
-(define-public sbcl-queues.simple-cqueue
- (package
- (inherit sbcl-queues)
- (name "sbcl-queues.simple-cqueue")
- (inputs
- `(("sbcl-queues" ,sbcl-queues)
- ("sbcl-queues.simple-queue" ,sbcl-queues.simple-queue)
- ("bordeaux-threads" ,sbcl-bordeaux-threads)))
- (arguments
- `(#:asd-file "queues.simple-cqueue.asd"))
- (synopsis "Thread safe queue implementation")
- (description
- "This is a simple queue library for Common Lisp with features such as
-non-consing thread safe queues and fibonacci priority queues.")
- (license license:expat)))
-
-(define-public cl-queues.simple-cqueue
- (sbcl-package->cl-source-package sbcl-queues.simple-cqueue))
-
-(define-public ecl-queues.simple-cqueue
- (sbcl-package->ecl-package sbcl-queues.simple-cqueue))
-
-(define-public sbcl-queues.priority-queue
- (package
- (inherit sbcl-queues)
- (name "sbcl-queues.priority-queue")
- (inputs
- `(("sbcl-queues" ,sbcl-queues)))
- (arguments
- `(#:asd-file "queues.priority-queue.asd"))
- (synopsis "Priority queue (Fibonacci) implementation")
- (description
- "This is a simple queue library for Common Lisp with features such as
-non-consing thread safe queues and fibonacci priority queues.")
- (license license:expat)))
-
-(define-public cl-queues.priority-queue
- (sbcl-package->cl-source-package sbcl-queues.priority-queue))
-
-(define-public ecl-queues.priority-queue
- (sbcl-package->ecl-package sbcl-queues.priority-queue))
-
-(define-public sbcl-queues.priority-cqueue
- (package
- (inherit sbcl-queues)
- (name "sbcl-queues.priority-cqueue")
- (inputs
- `(("sbcl-queues" ,sbcl-queues)
- ("sbcl-queues.priority-queue" ,sbcl-queues.priority-queue)
- ("bordeaux-threads" ,sbcl-bordeaux-threads)))
- (arguments
- `(#:asd-file "queues.priority-cqueue.asd"))
- (synopsis "Thread safe fibonacci priority queue implementation")
- (description
- "This is a simple queue library for Common Lisp with features such as
-non-consing thread safe queues and fibonacci priority queues.")
- (license license:expat)))
-
-(define-public cl-queues.priority-cqueue
- (sbcl-package->cl-source-package sbcl-queues.priority-cqueue))
-
-(define-public ecl-queues.priority-cqueue
- (sbcl-package->ecl-package sbcl-queues.priority-cqueue))
-
-(define sbcl-cffi-bootstrap
+(define-public sbcl-cffi
(package
- (name "sbcl-cffi-bootstrap")
+ (name "sbcl-cffi")
(version "0.21.0")
(source
(origin
@@ -2531,12 +2181,14 @@ non-consing thread safe queues and fibonacci priority queues.")
(base32 "1qalargz9bhp850qv60ffwpdqi4xirzar4l3g6qcg8yc6xqf2cjk"))))
(build-system asdf-build-system/sbcl)
(inputs
- `(("libffi" ,libffi)
- ("alexandria" ,sbcl-alexandria)
+ `(("alexandria" ,sbcl-alexandria)
("babel" ,sbcl-babel)
+ ("libffi" ,libffi)
("trivial-features" ,sbcl-trivial-features)))
(native-inputs
- `(("pkg-config" ,pkg-config)))
+ `(("bordeaux-threads" ,sbcl-bordeaux-threads)
+ ("pkg-config" ,pkg-config)
+ ("rt" ,sbcl-rt)))
(arguments
'(#:phases
(modify-phases %standard-phases
@@ -2547,9 +2199,21 @@ non-consing thread safe queues and fibonacci priority queues.")
(assoc-ref inputs "libffi")
"/lib/" all)))
(substitute* "toolchain/c-toolchain.lisp"
- (("\"cc\"") (format #f "~S" (which "gcc")))))))
- #:asd-system-name "cffi"
- #:tests? #f))
+ (("\"cc\"") (format #f "~S" (which "gcc"))))))
+ (add-after 'build 'install-headers
+ (lambda* (#:key outputs #:allow-other-keys)
+ (install-file "grovel/common.h"
+ (string-append
+ (assoc-ref outputs "out")
+ "/include/grovel")))))
+ #:asd-files '("cffi.asd"
+ "cffi-toolchain.asd"
+ "cffi-grovel.asd"
+ "cffi-libffi.asd"
+ "cffi-uffi-compat.asd")
+ #:asd-systems '("cffi"
+ "cffi-libffi"
+ "cffi-uffi-compat")))
(home-page "https://common-lisp.net/project/cffi/")
(synopsis "Common Foreign Function Interface for Common Lisp")
(description "The Common Foreign Function Interface (CFFI)
@@ -2559,75 +2223,11 @@ in the CFFI-SYS package, and a portable frontend in the CFFI
package.")
(license license:expat)))
-(define-public sbcl-cffi-toolchain
- (package
- (inherit sbcl-cffi-bootstrap)
- (name "sbcl-cffi-toolchain")
- (inputs
- `(("libffi" ,libffi)
- ("sbcl-cffi" ,sbcl-cffi-bootstrap)))
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-cffi-bootstrap)
- ((#:asd-system-name _) #f)
- ((#:tests? _) #t)))))
-
-(define-public sbcl-cffi-libffi
- (package
- (inherit sbcl-cffi-toolchain)
- (name "sbcl-cffi-libffi")
- (inputs
- `(("cffi" ,sbcl-cffi-bootstrap)
- ("cffi-grovel" ,sbcl-cffi-grovel)
- ("trivial-features" ,sbcl-trivial-features)
- ("libffi" ,libffi)))))
-
-(define-public sbcl-cffi-grovel
- (package
- (inherit sbcl-cffi-toolchain)
- (name "sbcl-cffi-grovel")
- (inputs
- `(("libffi" ,libffi)
- ("cffi" ,sbcl-cffi-bootstrap)
- ("cffi-toolchain" ,sbcl-cffi-toolchain)
- ("alexandria" ,sbcl-alexandria)))
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-cffi-toolchain)
- ((#:phases phases)
- `(modify-phases ,phases
- (add-after 'build 'install-headers
- (lambda* (#:key outputs #:allow-other-keys)
- (install-file "grovel/common.h"
- (string-append
- (assoc-ref outputs "out")
- "/include/grovel"))))))))))
-
-(define-public sbcl-cffi
- (package
- (inherit sbcl-cffi-toolchain)
- (name "sbcl-cffi")
- (inputs (package-inputs sbcl-cffi-bootstrap))
- (native-inputs
- `(("cffi-grovel" ,sbcl-cffi-grovel)
- ("cffi-libffi" ,sbcl-cffi-libffi)
- ("rt" ,sbcl-rt)
- ("bordeaux-threads" ,sbcl-bordeaux-threads)
- ,@(package-native-inputs sbcl-cffi-bootstrap)))))
-
(define-public cl-cffi
(sbcl-package->cl-source-package sbcl-cffi))
-(define-public sbcl-cffi-uffi-compat
- (package
- (inherit sbcl-cffi-toolchain)
- (name "sbcl-cffi-uffi-compat")
- (native-inputs
- `(,@(package-inputs sbcl-cffi-bootstrap))) ; For fix-paths phase
- (inputs
- `(("cffi" ,sbcl-cffi)))
- (synopsis "UFFI Compatibility Layer for CFFI")))
-
-(define-public cl-cffi-uffi-compat
- (sbcl-package->cl-source-package sbcl-cffi-uffi-compat))
+(define-public ecl-cffi
+ (sbcl-package->ecl-package sbcl-cffi))
(define-public sbcl-cl-sqlite
(package
@@ -2652,8 +2252,7 @@ package.")
`(("fiveam" ,sbcl-fiveam)
("bordeaux-threads" ,sbcl-bordeaux-threads)))
(arguments
- `(#:asd-file "sqlite.asd"
- #:asd-system-name "sqlite"
+ `(#:asd-systems '("sqlite")
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'fix-paths
@@ -2671,6 +2270,9 @@ relational database engine.")
(define-public cl-sqlite
(sbcl-package->cl-source-package sbcl-cl-sqlite))
+(define-public ecl-cl-sqlite
+ (sbcl-package->ecl-package sbcl-cl-sqlite))
+
(define-public sbcl-parenscript
;; Source archives are overwritten on every release, we use the Git repo instead.
(let ((commit "7a1ac46353cecd144fc91915ba9f122aafcf4766"))
@@ -2856,11 +2458,11 @@ Lisp implementations.")
(define-public ecl-closer-mop
(sbcl-package->ecl-package sbcl-closer-mop))
-(define sbcl-cl-cffi-gtk-boot0
- (let ((commit "412d17214e092220c65a5660f5cbbd9cb69b8fe4"))
+(define-public sbcl-cl-cffi-gtk
+ (let ((commit "e9a46df65995d9a16e6c8dbdc1e09b775eb4a966"))
(package
- (name "sbcl-cl-cffi-gtk-boot0")
- (version (git-version "0.11.2" "1" commit))
+ (name "sbcl-cl-cffi-gtk")
+ (version (git-version "0.11.2" "2" commit))
(source
(origin
(method git-fetch)
@@ -2870,19 +2472,36 @@ Lisp implementations.")
(file-name (git-file-name "cl-cffi-gtk" version))
(sha256
(base32
- "0n997yhcnzk048nalx8ys62ja2ac8iv4mbn3mb55iapl0321hghn"))))
+ "04vix0gmqsj91lm975sx7jhlnz5gq1xf9jp873mp7c8frc5dk1jj"))))
(build-system asdf-build-system/sbcl)
+ (native-inputs
+ `(("fiveam" ,sbcl-fiveam)))
(inputs
- `(("iterate" ,sbcl-iterate)
+ `(("bordeaux-threads" ,sbcl-bordeaux-threads)
+ ("cairo" ,cairo)
("cffi" ,sbcl-cffi)
- ("trivial-features" ,sbcl-trivial-features)
+ ("closer-mop" ,sbcl-closer-mop)
+ ("gdk-pixbuf" ,gdk-pixbuf)
("glib" ,glib)
- ("cairo" ,cairo)
+ ("gtk" ,gtk+)
+ ("iterate" ,sbcl-iterate)
("pango" ,pango)
- ("gdk-pixbuf" ,gdk-pixbuf)
- ("gtk" ,gtk+)))
+ ("trivial-features" ,sbcl-trivial-features)
+ ("trivial-garbage" ,sbcl-trivial-garbage)))
(arguments
- `(#:phases
+ `(#:asd-files '("gtk/cl-cffi-gtk.asd"
+ "glib/cl-cffi-gtk-glib.asd"
+ "gobject/cl-cffi-gtk-gobject.asd"
+ "gio/cl-cffi-gtk-gio.asd"
+ "cairo/cl-cffi-gtk-cairo.asd"
+ "pango/cl-cffi-gtk-pango.asd"
+ "gdk-pixbuf/cl-cffi-gtk-gdk-pixbuf.asd"
+ "gdk/cl-cffi-gtk-gdk.asd")
+ #:test-asd-file "test/cl-cffi-gtk-test.asd"
+ ;; TODO: Tests fail with memory fault.
+ ;; See https://github.com/Ferada/cl-cffi-gtk/issues/24.
+ #:tests? #f
+ #:phases
(modify-phases %standard-phases
(add-after 'unpack 'fix-paths
(lambda* (#:key inputs #:allow-other-keys)
@@ -2917,228 +2536,17 @@ Lisp implementations.")
is a library for creating graphical user interfaces.")
(license license:lgpl3))))
-(define-public sbcl-cl-cffi-gtk-glib
- (package
- (inherit sbcl-cl-cffi-gtk-boot0)
- (name "sbcl-cl-cffi-gtk-glib")
- (inputs
- `(("bordeaux-threads" ,sbcl-bordeaux-threads)
- ,@(package-inputs sbcl-cl-cffi-gtk-boot0)))
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-cl-cffi-gtk-boot0)
- ((#:asd-file _ "") "glib/cl-cffi-gtk-glib.asd")))))
-
-(define-public sbcl-cl-cffi-gtk-gobject
- (package
- (inherit sbcl-cl-cffi-gtk-boot0)
- (name "sbcl-cl-cffi-gtk-gobject")
- (inputs
- `(("cl-cffi-gtk-glib" ,sbcl-cl-cffi-gtk-glib)
- ("trivial-garbage" ,sbcl-trivial-garbage)
- ("bordeaux-threads" ,sbcl-bordeaux-threads)
- ("closer-mop" ,sbcl-closer-mop)
- ,@(package-inputs sbcl-cl-cffi-gtk-boot0)))
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-cl-cffi-gtk-boot0)
- ((#:asd-file _ "") "gobject/cl-cffi-gtk-gobject.asd")
- ((#:phases phases)
- `(modify-phases ,phases
- (add-after 'install 'link-source
- ;; Since source is particularly heavy (16MiB+), let's reuse it
- ;; across the different components of cl-ffi-gtk.
- (lambda* (#:key inputs outputs #:allow-other-keys)
- (let ((glib-source (string-append (assoc-ref inputs "cl-cffi-gtk-glib")
- "/share/common-lisp/sbcl-source/"
- "cl-cffi-gtk-glib"))
- (out-source (string-append (assoc-ref outputs "out")
- "/share/common-lisp/sbcl-source/"
- "cl-cffi-gtk-gobject")))
- (delete-file-recursively out-source)
- (symlink glib-source out-source)
- #t)))))))))
-
-(define-public sbcl-cl-cffi-gtk-gio
- (package
- (inherit sbcl-cl-cffi-gtk-boot0)
- (name "sbcl-cl-cffi-gtk-gio")
- (inputs
- `(("cl-cffi-gtk-glib" ,sbcl-cl-cffi-gtk-glib)
- ("cl-cffi-gtk-gobject" ,sbcl-cl-cffi-gtk-gobject)
- ,@(package-inputs sbcl-cl-cffi-gtk-boot0)))
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-cl-cffi-gtk-boot0)
- ((#:asd-file _ "") "gio/cl-cffi-gtk-gio.asd")
- ((#:phases phases)
- `(modify-phases ,phases
- (add-after 'install 'link-source
- ;; Since source is particularly heavy (16MiB+), let's reuse it
- ;; across the different components of cl-ffi-gtk.
- (lambda* (#:key inputs outputs #:allow-other-keys)
- (let ((glib-source (string-append (assoc-ref inputs "cl-cffi-gtk-glib")
- "/share/common-lisp/sbcl-source/"
- "cl-cffi-gtk-glib"))
- (out-source (string-append (assoc-ref outputs "out")
- "/share/common-lisp/sbcl-source/"
- "cl-cffi-gtk-gio")))
- (delete-file-recursively out-source)
- (symlink glib-source out-source)
- #t)))))))))
-
-(define-public sbcl-cl-cffi-gtk-cairo
- (package
- (inherit sbcl-cl-cffi-gtk-boot0)
- (name "sbcl-cl-cffi-gtk-cairo")
- (inputs
- `(("cl-cffi-gtk-glib" ,sbcl-cl-cffi-gtk-glib)
- ,@(package-inputs sbcl-cl-cffi-gtk-boot0)))
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-cl-cffi-gtk-boot0)
- ((#:asd-file _ "") "cairo/cl-cffi-gtk-cairo.asd")
- ((#:phases phases)
- `(modify-phases ,phases
- (add-after 'install 'link-source
- ;; Since source is particularly heavy (16MiB+), let's reuse it
- ;; across the different components of cl-ffi-gtk.
- (lambda* (#:key inputs outputs #:allow-other-keys)
- (let ((glib-source (string-append (assoc-ref inputs "cl-cffi-gtk-glib")
- "/share/common-lisp/sbcl-source/"
- "cl-cffi-gtk-glib"))
- (out-source (string-append (assoc-ref outputs "out")
- "/share/common-lisp/sbcl-source/"
- "cl-cffi-gtk-cairo")))
- (delete-file-recursively out-source)
- (symlink glib-source out-source)
- #t)))))))))
-
-(define-public sbcl-cl-cffi-gtk-pango
- (package
- (inherit sbcl-cl-cffi-gtk-boot0)
- (name "sbcl-cl-cffi-gtk-pango")
- (inputs
- `(("cl-cffi-gtk-glib" ,sbcl-cl-cffi-gtk-glib)
- ("cl-cffi-gtk-gobject" ,sbcl-cl-cffi-gtk-gobject)
- ("cl-cffi-gtk-cairo" ,sbcl-cl-cffi-gtk-cairo)
- ,@(package-inputs sbcl-cl-cffi-gtk-boot0)))
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-cl-cffi-gtk-boot0)
- ((#:asd-file _ "") "pango/cl-cffi-gtk-pango.asd")
- ((#:phases phases)
- `(modify-phases ,phases
- (add-after 'install 'link-source
- ;; Since source is particularly heavy (16MiB+), let's reuse it
- ;; across the different components of cl-ffi-gtk.
- (lambda* (#:key inputs outputs #:allow-other-keys)
- (let ((glib-source (string-append (assoc-ref inputs "cl-cffi-gtk-glib")
- "/share/common-lisp/sbcl-source/"
- "cl-cffi-gtk-glib"))
- (out-source (string-append (assoc-ref outputs "out")
- "/share/common-lisp/sbcl-source/"
- "cl-cffi-gtk-pango")))
- (delete-file-recursively out-source)
- (symlink glib-source out-source)
- #t)))))))))
-
-(define-public sbcl-cl-cffi-gtk-gdk-pixbuf
- (package
- (inherit sbcl-cl-cffi-gtk-boot0)
- (name "sbcl-cl-cffi-gtk-gdk-pixbuf")
- (inputs
- `(("cl-cffi-gtk-gobject" ,sbcl-cl-cffi-gtk-gobject)
- ("cl-cffi-gtk-glib" ,sbcl-cl-cffi-gtk-glib)
- ,@(package-inputs sbcl-cl-cffi-gtk-boot0)))
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-cl-cffi-gtk-boot0)
- ((#:asd-file _ "") "gdk-pixbuf/cl-cffi-gtk-gdk-pixbuf.asd")
- ((#:phases phases)
- `(modify-phases ,phases
- (add-after 'install 'link-source
- ;; Since source is particularly heavy (16MiB+), let's reuse it
- ;; across the different components of cl-ffi-gtk.
- (lambda* (#:key inputs outputs #:allow-other-keys)
- (let ((glib-source (string-append (assoc-ref inputs "cl-cffi-gtk-glib")
- "/share/common-lisp/sbcl-source/"
- "cl-cffi-gtk-glib"))
- (out-source (string-append (assoc-ref outputs "out")
- "/share/common-lisp/sbcl-source/"
- "cl-cffi-gtk-gdk-pixbuf")))
- (delete-file-recursively out-source)
- (symlink glib-source out-source)
- #t)))))))))
-
-(define-public sbcl-cl-cffi-gtk-gdk
- (package
- (inherit sbcl-cl-cffi-gtk-boot0)
- (name "sbcl-cl-cffi-gtk-gdk")
- (inputs
- `(("cl-cffi-gtk-glib" ,sbcl-cl-cffi-gtk-glib)
- ("cl-cffi-gtk-gobject" ,sbcl-cl-cffi-gtk-gobject)
- ("cl-cffi-gtk-gio" ,sbcl-cl-cffi-gtk-gio)
- ("cl-cffi-gtk-gdk-pixbuf" ,sbcl-cl-cffi-gtk-gdk-pixbuf)
- ("cl-cffi-gtk-cairo" ,sbcl-cl-cffi-gtk-cairo)
- ("cl-cffi-gtk-pango" ,sbcl-cl-cffi-gtk-pango)
- ,@(package-inputs sbcl-cl-cffi-gtk-boot0)))
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-cl-cffi-gtk-boot0)
- ((#:asd-file _ "") "gdk/cl-cffi-gtk-gdk.asd")
- ((#:phases phases)
- `(modify-phases ,phases
- (add-after 'install 'link-source
- ;; Since source is particularly heavy (16MiB+), let's reuse it
- ;; across the different components of cl-ffi-gtk.
- (lambda* (#:key inputs outputs #:allow-other-keys)
- (let ((glib-source (string-append (assoc-ref inputs "cl-cffi-gtk-glib")
- "/share/common-lisp/sbcl-source/"
- "cl-cffi-gtk-glib"))
- (out-source (string-append (assoc-ref outputs "out")
- "/share/common-lisp/sbcl-source/"
- "cl-cffi-gtk-gdk")))
- (delete-file-recursively out-source)
- (symlink glib-source out-source)
- #t)))))))))
-
-(define-public sbcl-cl-cffi-gtk
- (package
- (inherit sbcl-cl-cffi-gtk-boot0)
- (name "sbcl-cl-cffi-gtk")
- (inputs
- `(("cl-cffi-gtk-glib" ,sbcl-cl-cffi-gtk-glib)
- ("cl-cffi-gtk-gobject" ,sbcl-cl-cffi-gtk-gobject)
- ("cl-cffi-gtk-gio" ,sbcl-cl-cffi-gtk-gio)
- ("cl-cffi-gtk-gdk" ,sbcl-cl-cffi-gtk-gdk)
- ,@(package-inputs sbcl-cl-cffi-gtk-boot0)))
- (native-inputs
- `(("fiveam" ,sbcl-fiveam)))
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-cl-cffi-gtk-boot0)
- ((#:asd-file _ "") "gtk/cl-cffi-gtk.asd")
- ((#:test-asd-file _ "") "test/cl-cffi-gtk-test.asd")
- ;; TODO: Tests fail with memory fault.
- ;; See https://github.com/Ferada/cl-cffi-gtk/issues/24.
- ((#:tests? _ #f) #f)
- ((#:phases phases)
- `(modify-phases ,phases
- (add-after 'install 'link-source
- ;; Since source is particularly heavy (16MiB+), let's reuse it
- ;; across the different components of cl-ffi-gtk.
- (lambda* (#:key inputs outputs #:allow-other-keys)
- (let ((glib-source (string-append (assoc-ref inputs "cl-cffi-gtk-glib")
- "/share/common-lisp/sbcl-source/"
- "cl-cffi-gtk-glib"))
- (out-source (string-append (assoc-ref outputs "out")
- "/share/common-lisp/sbcl-source/"
- "cl-cffi-gtk")))
- (delete-file-recursively out-source)
- (symlink glib-source out-source)
- #t)))))))))
-
(define-public cl-cffi-gtk
(sbcl-package->cl-source-package sbcl-cl-cffi-gtk))
+(define-public ecl-cl-cffi-gtk
+ (sbcl-package->ecl-package sbcl-cl-cffi-gtk))
+
(define-public sbcl-cl-webkit
- (let ((commit "dccf9d25de4e9a69f716f8ed9578e58963ead967"))
+ (let ((commit "04bb5703b68f4db9de71529b81896cc428ef54e1"))
(package
(name "sbcl-cl-webkit")
- (version (git-version "2.4" "5" commit))
+ (version (git-version "2.4" "8" commit))
(source
(origin
(method git-fetch)
@@ -3148,15 +2556,14 @@ is a library for creating graphical user interfaces.")
(file-name (git-file-name "cl-webkit" version))
(sha256
(base32
- "0cn43ks2mgqkfnalq1p997z6q5pr1sfvz99gvvr5fp7r1acn7v5w"))))
+ "12dzqgkvgwi97r8dbflslj7nsx7p6iavx82fs48nj9wf7ln1c87s"))))
(build-system asdf-build-system/sbcl)
(inputs
`(("cffi" ,sbcl-cffi)
("cl-cffi-gtk" ,sbcl-cl-cffi-gtk)
("webkitgtk" ,webkitgtk)))
(arguments
- `(#:asd-file "webkit2/cl-webkit2.asd"
- #:asd-system-name "cl-webkit2"
+ `(#:asd-systems '("cl-webkit2")
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'fix-paths
@@ -3177,6 +2584,9 @@ WebKit browsing engine.")
(define-public cl-webkit
(sbcl-package->cl-source-package sbcl-cl-webkit))
+(define-public ecl-cl-webkit
+ (sbcl-package->ecl-package sbcl-cl-webkit))
+
(define-public sbcl-lparallel
(package
(name "sbcl-lparallel")
@@ -3300,10 +2710,10 @@ portability, and boilerplate reduction in CSS.")
(sbcl-package->ecl-package sbcl-cl-css))
(define-public sbcl-portable-threads
- (let ((commit "c0e61a1faeb0583c80fd3f20b16cc4c555226920"))
+ (let ((commit "aa26bf38338a6b068bf8bfb3375d8d8c3b0a28df"))
(package
(name "sbcl-portable-threads")
- (version (git-version "2.3" "1" commit))
+ (version (git-version "2.3" "2" commit))
(source
(origin
(method git-fetch)
@@ -3312,14 +2722,13 @@ portability, and boilerplate reduction in CSS.")
(commit commit)))
(file-name (git-file-name "portable-threads" version))
(sha256
- (base32
- "03fmxyarc0xf4kavwkfa0a2spkyfrz6hbgbi9y4q7ny5aykdyfaq"))))
+ (base32 "058ksi07vfdmhrf5mdlc833s82m1rcqfja2266520m3r8bzs8bvs"))))
(build-system asdf-build-system/sbcl)
(arguments
`(;; Tests seem broken.
#:tests? #f))
(home-page "https://github.com/binghe/portable-threads")
- (synopsis "Portable threads (and scheduled and periodic functions) API for Common Lisp")
+ (synopsis "Portable threads API for Common Lisp")
(description
"Portable Threads (and Scheduled and Periodic Functions) API for Common
Lisp (from GBBopen project).")
@@ -3328,14 +2737,12 @@ Lisp (from GBBopen project).")
(define-public cl-portable-threads
(sbcl-package->cl-source-package sbcl-portable-threads))
-(define-public ecl-portable-threada
+(define-public ecl-portable-threads
(sbcl-package->ecl-package sbcl-portable-threads))
-(define sbcl-usocket-boot0
- ;; usocket's test rely on usocket-server which depends on usocket itself.
- ;; We break this cyclic dependency with -boot0 that packages usocket.
+(define-public sbcl-usocket
(package
- (name "sbcl-usocket-boot0")
+ (name "sbcl-usocket")
(version "0.8.3")
(source
(origin
@@ -3348,48 +2755,23 @@ Lisp (from GBBopen project).")
(base32
"0x746wr2324l6bn7skqzgkzcbj5kd0zp2ck0c8rldrw0rzabg826"))))
(build-system asdf-build-system/sbcl)
+ (native-inputs
+ `(("rt" ,sbcl-rt)))
(inputs
- `(("split-sequence" ,sbcl-split-sequence)))
+ `(("bordeaux-threads" ,sbcl-bordeaux-threads)
+ ("split-sequence" ,sbcl-split-sequence)))
(arguments
- `(#:tests? #f
- #:asd-system-name "usocket"))
+ `(#:tests? #f ; FIXME: Tests need network access?
+ #:asd-systems '("usocket"
+ "usocket-server")))
(home-page "https://common-lisp.net/project/usocket/")
- (synopsis "Universal socket library for Common Lisp (server side)")
+ (synopsis "Universal socket library for Common Lisp")
(description
"This library strives to provide a portable TCP/IP and UDP/IP socket
interface for as many Common Lisp implementations as possible, while keeping
the abstraction and portability layer as thin as possible.")
(license license:expat)))
-(define-public sbcl-usocket-server
- (package
- (inherit sbcl-usocket-boot0)
- (name "sbcl-usocket-server")
- (inputs
- `(("bordeaux-threads" ,sbcl-bordeaux-threads)
- ("usocket" ,sbcl-usocket-boot0)))
- (arguments
- '(#:asd-system-name "usocket-server"))
- (synopsis "Universal socket library for Common Lisp (server side)")))
-
-(define-public cl-usocket-server
- (sbcl-package->cl-source-package sbcl-usocket-server))
-
-(define-public ecl-socket-server
- (sbcl-package->ecl-package sbcl-usocket-server))
-
-(define-public sbcl-usocket
- (package
- (inherit sbcl-usocket-boot0)
- (name "sbcl-usocket")
- (arguments
- ;; FIXME: Tests need network access?
- `(#:tests? #f))
- (native-inputs
- ;; Testing only.
- `(("usocket-server" ,sbcl-usocket-server)
- ("rt" ,sbcl-rt)))))
-
(define-public cl-usocket
(sbcl-package->cl-source-package sbcl-usocket))
@@ -3472,10 +2854,10 @@ client and server.")
(sbcl-package->ecl-package sbcl-s-xml-rpc))
(define-public sbcl-trivial-clipboard
- (let ((commit "5af3415d1484e6d69a1b5c178f24680d9fd01796"))
+ (let ((commit "afcd3743b842f5a81fc86dba60f9db59970f49c5"))
(package
(name "sbcl-trivial-clipboard")
- (version (git-version "0.0.0.0" "2" commit))
+ (version (git-version "0.0.0.0" "3" commit))
(source
(origin
(method git-fetch)
@@ -3485,7 +2867,7 @@ client and server.")
(file-name (git-file-name "trivial-clipboard" version))
(sha256
(base32
- "1gb515z5yq6h5548pb1fwhmb0hhq1ssyb78pvxh4alq799xipxs9"))))
+ "1qfbvkzmvkbqpc5s3sx31c5653sy6qlcixafgzd10qpykb843prr"))))
(build-system asdf-build-system/sbcl)
(inputs
`(("xclip" ,xclip)))
@@ -3538,7 +2920,7 @@ client and server.")
(lambda* (#:key outputs #:allow-other-keys)
(let ((test-results (string-append (assoc-ref outputs "out")
"/share/common-lisp/"
- (%lisp-type) "-source"
+ (%lisp-type)
"/trivial-backtrace"
"/test-results")))
(when (file-exists? test-results)
@@ -3558,6 +2940,9 @@ backtrace portably.")
(define-public cl-trivial-backtrace
(sbcl-package->cl-source-package sbcl-trivial-backtrace))
+(define-public ecl-trivial-backtrace
+ (sbcl-package->ecl-package sbcl-trivial-backtrace))
+
(define-public sbcl-rfc2388
(let ((commit "591bcf7e77f2c222c43953a80f8c297751dc0c4e")
(revision "1"))
@@ -3585,6 +2970,9 @@ process form data posted with HTTP POST method using enctype
(define-public cl-rfc2388
(sbcl-package->cl-source-package sbcl-rfc2388))
+(define-public ecl-rfc2388
+ (sbcl-package->ecl-package sbcl-rfc2388))
+
(define-public sbcl-md5
(package
(name "sbcl-md5")
@@ -3661,9 +3049,12 @@ Development into CL+SSL was done by David Lichteblau.")
(define-public cl-cl+ssl
(sbcl-package->cl-source-package sbcl-cl+ssl))
+(define-public ecl-cl+ssl
+ (sbcl-package->ecl-package sbcl-cl+ssl))
+
(define-public sbcl-kmrcl
- (let ((version "1.109.0")
- (commit "5260068b2eb735af6796740c2db4955afac21636")
+ (let ((version "1.111")
+ (commit "4a27407aad9deb607ffb8847630cde3d041ea25a")
(revision "1"))
(package
(name "sbcl-kmrcl")
@@ -3676,57 +3067,58 @@ Development into CL+SSL was done by David Lichteblau.")
(commit commit)))
(file-name (git-file-name name version))
(sha256
- (base32 "1va7xjgzfv674bpsli674i7zj3f7wg5kxic41kz18r6hh4n52dfv"))))
+ (base32 "06gx04mah5nc8w78s0j8628divbf1s5w7af8w7pvzb2d5mgvrbd2"))))
(build-system asdf-build-system/sbcl)
- (arguments
- ;; Tests fail with: :FORCE and :FORCE-NOT arguments not allowed in a
- ;; nested call to ASDF/OPERATE:OPERATE unless identically to toplevel
- '(#:tests? #f))
(inputs
`(("sbcl-rt" ,sbcl-rt)))
(home-page "http://files.kpe.io/kmrcl/")
(synopsis "General utilities for Common Lisp programs")
(description
"KMRCL is a collection of utilities used by a number of Kevin
-Rosenberg's CL packages.")
+Rosenberg's Common Lisp packages.")
(license license:llgpl))))
(define-public cl-kmrcl
(sbcl-package->cl-source-package sbcl-kmrcl))
+(define-public ecl-kmrcl
+ (sbcl-package->ecl-package sbcl-kmrcl))
+
(define-public sbcl-cl-base64
- (package
- (name "sbcl-cl-base64")
- (version "3.3.4")
- (source
- (origin
- (method url-fetch)
- (uri (string-append "http://files.kpe.io/cl-base64/cl-base64-"
- version ".tar.gz"))
- (sha256
- (base32 "0pl4zwn5bf18dm8fh1kn1yshaa6kpmfrjyb33z9mq4raqmj3xpv2"))))
- (build-system asdf-build-system/sbcl)
- (arguments
- ;; Tests fail with: :FORCE and :FORCE-NOT arguments not allowed
- ;; in a nested call to ASDF/OPERATE:OPERATE unless identically
- ;; to toplevel
- '(#:tests? #f))
- (inputs
- `(("sbcl-ptester" ,sbcl-ptester)
- ("sbcl-kmrcl" ,sbcl-kmrcl)))
- (home-page "http://files.kpe.io/cl-base64/")
- (synopsis
- "Common Lisp package to encode and decode base64 with URI support")
- (description
- "This package provides highly optimized base64 encoding and decoding.
+ ;; 3.3.4 tests are broken, upstream fixes them.
+ (let ((commit "577683b18fd880b82274d99fc96a18a710e3987a"))
+ (package
+ (name "sbcl-cl-base64")
+ (version (git-version "3.3.4" "1" commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "http://git.kpe.io/cl-base64.git/")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "12jj54h0fs6n237cvnp8v6hn0imfksammq22ys6pi0gwz2w47rbj"))))
+ (build-system asdf-build-system/sbcl)
+ (native-inputs ; For tests.
+ `(("sbcl-ptester" ,sbcl-ptester)
+ ("sbcl-kmrcl" ,sbcl-kmrcl)))
+ (home-page "http://files.kpe.io/cl-base64/")
+ (synopsis
+ "Common Lisp package to encode and decode base64 with URI support")
+ (description
+ "This package provides highly optimized base64 encoding and decoding.
Besides conversion to and from strings, integer conversions are supported.
Encoding with Uniform Resource Identifiers is supported by using a modified
encoding table that uses only URI-compatible characters.")
- (license license:bsd-3)))
+ (license license:bsd-3))))
(define-public cl-base64
(sbcl-package->cl-source-package sbcl-cl-base64))
+(define-public ecl-cl-base64
+ (sbcl-package->ecl-package sbcl-cl-base64))
+
(define-public sbcl-chunga
(package
(name "sbcl-chunga")
@@ -3753,6 +3145,9 @@ defined in RFC 2616.")
(define-public cl-chunga
(sbcl-package->cl-source-package sbcl-chunga))
+(define-public ecl-chunga
+ (sbcl-package->ecl-package sbcl-chunga))
+
(define-public sbcl-cl-who
(let ((version "1.1.4")
(commit "2c08caa4bafba720409af9171feeba3f32e86d32")
@@ -3782,9 +3177,12 @@ WHO means \"with-html-output\" for want of a better acronym) is probably just
as good or bad as the next one.")
(license license:bsd-2))))
-(define-public cl-cl-who
+(define-public cl-who
(sbcl-package->cl-source-package sbcl-cl-who))
+(define-public ecl-cl-who
+ (sbcl-package->ecl-package sbcl-cl-who))
+
(define-public sbcl-chipz
(let ((version "0.8")
(commit "75dfbc660a5a28161c57f115adf74c8a926bfc4d")
@@ -3820,6 +3218,9 @@ the format used by the popular compression tool bzip2.")
(define-public cl-chipz
(sbcl-package->cl-source-package sbcl-chipz))
+(define-public ecl-chipz
+ (sbcl-package->ecl-package sbcl-chipz))
+
(define-public sbcl-drakma
(package
(name "sbcl-drakma")
@@ -3900,6 +3301,13 @@ connections (keep-alive), and SSL.")
(define-public cl-hunchentoot
(sbcl-package->cl-source-package sbcl-hunchentoot))
+(define-public ecl-hunchentoot
+ (package
+ (inherit (sbcl-package->ecl-package sbcl-hunchentoot))
+ (arguments
+ ;; Tests fail on ECL with 'Socket error in "socket": EINVAL'.
+ '(#:tests? #f))))
+
(define-public sbcl-trivial-types
(package
(name "sbcl-trivial-types")
@@ -3924,33 +3332,8 @@ PROPER-LIST, ASSOCIATION-LIST, PROPERTY-LIST and TUPLE.")
(define-public cl-trivial-types
(sbcl-package->cl-source-package sbcl-trivial-types))
-(define-public sbcl-cl-syntax
- (package
- (name "sbcl-cl-syntax")
- (version "0.0.3")
- (source
- (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/m2ym/cl-syntax")
- (commit "03f0c329bbd55b8622c37161e6278366525e2ccc")))
- (file-name (git-file-name "cl-syntax" version))
- (sha256
- (base32 "17ran8xp77asagl31xv8w819wafh6whwfc9p6dgx22ca537gyl4y"))))
- (build-system asdf-build-system/sbcl)
- (arguments
- '(#:asd-file "cl-syntax.asd"
- #:asd-system-name "cl-syntax"))
- (inputs `(("sbcl-trivial-types" ,sbcl-trivial-types)
- ("sbcl-named-readtables" ,sbcl-named-readtables)))
- (home-page "https://github.com/m2ym/cl-syntax")
- (synopsis "Reader Syntax Coventions for Common Lisp and SLIME")
- (description
- "CL-SYNTAX provides Reader Syntax Coventions for Common Lisp and SLIME.")
- (license license:llgpl)))
-
-(define-public cl-syntax
- (sbcl-package->cl-source-package sbcl-cl-syntax))
+(define-public ecl-trivial-types
+ (sbcl-package->ecl-package sbcl-trivial-types))
(define-public sbcl-cl-annot
(let ((commit "c99e69c15d935eabc671b483349a406e0da9518d")
@@ -3968,9 +3351,6 @@ PROPER-LIST, ASSOCIATION-LIST, PROPERTY-LIST and TUPLE.")
(sha256
(base32 "1wq1gs9jjd5m6iwrv06c2d7i5dvqsfjcljgbspfbc93cg5xahk4n"))))
(build-system asdf-build-system/sbcl)
- (arguments
- '(#:asd-file "cl-annot.asd"
- #:asd-system-name "cl-annot"))
(inputs
`(("sbcl-alexandria" ,sbcl-alexandria)))
(home-page "https://github.com/m2ym/cl-annot")
@@ -3982,41 +3362,43 @@ PROPER-LIST, ASSOCIATION-LIST, PROPERTY-LIST and TUPLE.")
(define-public cl-annot
(sbcl-package->cl-source-package sbcl-cl-annot))
-(define-public sbcl-cl-syntax-annot
- (package
- (inherit sbcl-cl-syntax)
- (name "sbcl-cl-syntax-annot")
- (arguments
- '(#:asd-file "cl-syntax-annot.asd"
- #:asd-system-name "cl-syntax-annot"))
- (inputs
- `(("sbcl-cl-syntax" ,sbcl-cl-syntax)
- ("sbcl-cl-annot" ,sbcl-cl-annot)))
- (synopsis "Common Lisp reader Syntax for cl-annot")
- (description
- "CL-SYNTAX provides reader syntax coventions for Common Lisp and
-@code{cl-annot}.")))
+(define-public ecl-cl-annot
+ (sbcl-package->ecl-package sbcl-cl-annot))
-(define-public cl-syntax-annot
- (sbcl-package->cl-source-package sbcl-cl-syntax-annot))
-
-(define-public sbcl-cl-syntax-interpol
+(define-public sbcl-cl-syntax
(package
- (inherit sbcl-cl-syntax)
- (name "sbcl-cl-syntax-interpol")
- (arguments
- '(#:asd-file "cl-syntax-interpol.asd"
- #:asd-system-name "cl-syntax-interpol"))
+ (name "sbcl-cl-syntax")
+ (version "0.0.3")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/m2ym/cl-syntax")
+ (commit "03f0c329bbd55b8622c37161e6278366525e2ccc")))
+ (file-name (git-file-name "cl-syntax" version))
+ (sha256
+ (base32 "17ran8xp77asagl31xv8w819wafh6whwfc9p6dgx22ca537gyl4y"))))
+ (build-system asdf-build-system/sbcl)
(inputs
- `(("sbcl-cl-syntax" ,sbcl-cl-syntax)
- ("sbcl-cl-interpol" ,sbcl-cl-interpol)))
- (synopsis "Common Lisp reader Syntax for cl-interpol")
+ `(("cl-annot" ,sbcl-cl-annot)
+ ("cl-interpol" ,sbcl-cl-interpol)
+ ("named-readtables" ,sbcl-named-readtables)
+ ("trivial-types" ,sbcl-trivial-types)))
+ (arguments
+ '(#:asd-systems '("cl-syntax"
+ "cl-syntax-annot"
+ "cl-syntax-interpol")))
+ (home-page "https://github.com/m2ym/cl-syntax")
+ (synopsis "Reader Syntax Coventions for Common Lisp and SLIME")
(description
- "CL-SYNTAX provides reader syntax coventions for Common Lisp and
-@code{cl-interpol}.")))
+ "CL-SYNTAX provides Reader Syntax Coventions for Common Lisp and SLIME.")
+ (license license:llgpl)))
+
+(define-public cl-syntax
+ (sbcl-package->cl-source-package sbcl-cl-syntax))
-(define-public cl-syntax-interpol
- (sbcl-package->cl-source-package sbcl-cl-syntax-interpol))
+(define-public ecl-cl-syntax
+ (sbcl-package->ecl-package sbcl-cl-syntax))
(define-public sbcl-cl-utilities
(let ((commit "dce2d2f6387091ea90357a130fa6d13a6776884b")
@@ -4035,9 +3417,7 @@ PROPER-LIST, ASSOCIATION-LIST, PROPERTY-LIST and TUPLE.")
(base32 "1r46v730yf96nk2vb24qmagv9x96xvd08abqwhf02ghgydv1a7z2"))))
(build-system asdf-build-system/sbcl)
(arguments
- '(#:asd-file "cl-utilities.asd"
- #:asd-system-name "cl-utilities"
- #:phases
+ '(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'fix-paths
(lambda* (#:key inputs #:allow-other-keys)
@@ -4060,6 +3440,9 @@ everywhere some dumb user might make a mistake.")
(define-public cl-utilities
(sbcl-package->cl-source-package sbcl-cl-utilities))
+(define-public ecl-cl-utilities
+ (sbcl-package->ecl-package sbcl-cl-utilities))
+
(define-public sbcl-map-set
(let ((commit "7b4b545b68b8")
(revision "1"))
@@ -4085,6 +3468,9 @@ addition, removal, and random selection.")
(define-public cl-map-set
(sbcl-package->cl-source-package sbcl-map-set))
+(define-public ecl-map-set
+ (sbcl-package->ecl-package sbcl-map-set))
+
(define-public sbcl-quri
(let ((commit "b53231c5f19446dd7c24b15a249fefa45ae94f9a")
(revision "2"))
@@ -4105,8 +3491,7 @@ addition, removal, and random selection.")
;; Tests fail with: Component QURI-ASD::QURI-TEST not found,
;; required by #<SYSTEM "quri">. Why?
'(#:tests? #f))
- (native-inputs `(("sbcl-prove-asdf" ,sbcl-prove-asdf)
- ("sbcl-prove" ,sbcl-prove)))
+ (native-inputs `(("sbcl-prove" ,sbcl-prove)))
(inputs `(("sbcl-babel" ,sbcl-babel)
("sbcl-split-sequence" ,sbcl-split-sequence)
("sbcl-cl-utilities" ,sbcl-cl-utilities)
@@ -4121,6 +3506,9 @@ Lisp. It is intended to be a replacement of PURI.")
(define-public cl-quri
(sbcl-package->cl-source-package sbcl-quri))
+(define-public ecl-quri
+ (sbcl-package->ecl-package sbcl-quri))
+
(define-public sbcl-myway
(let ((commit "286230082a11f879c18b93f17ca571c5f676bfb7")
(revision "1"))
@@ -4142,8 +3530,7 @@ Lisp. It is intended to be a replacement of PURI.")
;; by #<SYSTEM "myway">. Why?
'(#:tests? #f))
(native-inputs
- `(("sbcl-prove-asdf" ,sbcl-prove-asdf)
- ("sbcl-prove" ,sbcl-prove)))
+ `(("sbcl-prove" ,sbcl-prove)))
(inputs
`(("sbcl-cl-ppcre" ,sbcl-cl-ppcre)
("sbcl-quri" ,sbcl-quri)
@@ -4156,6 +3543,9 @@ Lisp. It is intended to be a replacement of PURI.")
(define-public cl-myway
(sbcl-package->cl-source-package sbcl-myway))
+(define-public ecl-myway
+ (sbcl-package->ecl-package sbcl-myway))
+
(define-public sbcl-xsubseq
(let ((commit "5ce430b3da5cda3a73b9cf5cee4df2843034422b")
(revision "1"))
@@ -4177,8 +3567,7 @@ Lisp. It is intended to be a replacement of PURI.")
;; required by #<SYSTEM "xsubseq">. Why?
'(#:tests? #f))
(native-inputs
- `(("sbcl-prove-asdf" ,sbcl-prove-asdf)
- ("sbcl-prove" ,sbcl-prove)))
+ `(("sbcl-prove" ,sbcl-prove)))
(home-page "https://github.com/fukamachi/xsubseq")
(synopsis "Efficient way to use \"subseq\"s in Common Lisp")
(description
@@ -4189,6 +3578,9 @@ effieiently.")
(define-public cl-xsubseq
(sbcl-package->cl-source-package sbcl-xsubseq))
+(define-public ecl-xsubseq
+ (sbcl-package->ecl-package sbcl-xsubseq))
+
(define-public sbcl-smart-buffer
(let ((commit "09b9a9a0b3abaa37abe9a730f5aac2643dca4e62")
(revision "1"))
@@ -4210,8 +3602,7 @@ effieiently.")
;; found, required by #<SYSTEM "smart-buffer">. Why?
`(#:tests? #f))
(native-inputs
- `(("sbcl-prove-asdf" ,sbcl-prove-asdf)
- ("sbcl-prove" ,sbcl-prove)))
+ `(("sbcl-prove" ,sbcl-prove)))
(inputs
`(("sbcl-xsubseq" ,sbcl-xsubseq)
("sbcl-flexi-streams" ,sbcl-flexi-streams)))
@@ -4225,6 +3616,9 @@ depending on content size.")
(define-public cl-smart-buffer
(sbcl-package->cl-source-package sbcl-smart-buffer))
+(define-public ecl-smart-buffer
+ (sbcl-package->ecl-package sbcl-smart-buffer))
+
(define-public sbcl-fast-http
(let ((commit "502a37715dcb8544cc8528b78143a942de662c5a")
(revision "2"))
@@ -4246,9 +3640,8 @@ depending on content size.")
;; required by #<SYSTEM "fast-http">. Why?
`(#:tests? #f))
(native-inputs
- `(("sbcl-prove-asdf" ,sbcl-prove-asdf)
- ("sbcl-prove" ,sbcl-prove)
- ("cl-syntax-interpol" ,sbcl-cl-syntax-interpol)))
+ `(("sbcl-prove" ,sbcl-prove)
+ ("cl-syntax" ,sbcl-cl-syntax)))
(inputs
`(("sbcl-alexandria" ,sbcl-alexandria)
("sbcl-proc-parse" ,sbcl-proc-parse)
@@ -4266,6 +3659,9 @@ Lisp.")
(define-public cl-fast-http
(sbcl-package->cl-source-package sbcl-fast-http))
+(define-public ecl-fast-http
+ (sbcl-package->ecl-package sbcl-fast-http))
+
(define-public sbcl-static-vectors
(package
(name "sbcl-static-vectors")
@@ -4282,8 +3678,7 @@ Lisp.")
(native-inputs
`(("sbcl-fiveam" ,sbcl-fiveam)))
(inputs
- `(("sbcl-cffi-grovel" ,sbcl-cffi-grovel)
- ("sbcl-cffi" ,sbcl-cffi)))
+ `(("sbcl-cffi" ,sbcl-cffi)))
(build-system asdf-build-system/sbcl)
(home-page "https://github.com/sionescu/static-vectors")
(synopsis "Allocate SIMPLE-ARRAYs in static memory")
@@ -4325,6 +3720,9 @@ Only minimal changes required to make your CLOS objects serializable.")
(define-public cl-marshal
(sbcl-package->cl-source-package sbcl-marshal))
+(define-public ecl-marshal
+ (sbcl-package->ecl-package sbcl-marshal))
+
(define-public sbcl-checkl
(let ((commit "80328800d047fef9b6e32dfe6bdc98396aee3cc9")
(revision "1"))
@@ -4345,7 +3743,8 @@ Only minimal changes required to make your CLOS objects serializable.")
;; Error while trying to load definition for system checkl-test from
;; pathname [...]/checkl-test.asd: The function CHECKL:DEFINE-TEST-OP
;; is undefined.
- '(#:tests? #f))
+ '(#:asd-files '("checkl.asd")
+ #:tests? #f))
(native-inputs
`(("sbcl-fiveam" ,sbcl-fiveam)))
(inputs
@@ -4363,6 +3762,9 @@ against the last run.")
(define-public cl-checkl
(sbcl-package->cl-source-package sbcl-checkl))
+(define-public ecl-checkl
+ (sbcl-package->ecl-package sbcl-checkl))
+
(define-public sbcl-fast-io
(let ((commit "603f4903dd74fb221859da7058ae6ca3853fe64b")
(revision "2"))
@@ -4383,7 +3785,8 @@ against the last run.")
;; Error while trying to load definition for system fast-io-test from
;; pathname [...]/fast-io-test.asd: The function CHECKL:DEFINE-TEST-OP
;; is undefined.
- '(#:tests? #f))
+ '(#:tests? #f
+ #:asd-files '("fast-io.asd")))
(native-inputs
`(("sbcl-fiveam" ,sbcl-fiveam)
("sbcl-checkl" ,sbcl-checkl)))
@@ -4402,6 +3805,9 @@ streams (though primarily the former, while wrapping the latter).")
(define-public cl-fast-io
(sbcl-package->cl-source-package sbcl-fast-io))
+(define-public ecl-fast-io
+ (sbcl-package->ecl-package sbcl-fast-io))
+
(define-public sbcl-jonathan
(let ((commit "1f448b4f7ac8265e56e1c02b32ce383e65316300")
(revision "1"))
@@ -4423,11 +3829,9 @@ streams (though primarily the former, while wrapping the latter).")
;; required by #<SYSTEM "jonathan">. Why?
`(#:tests? #f))
(native-inputs
- `(("sbcl-prove-asdf" ,sbcl-prove-asdf)
- ("sbcl-prove" ,sbcl-prove)))
+ `(("sbcl-prove" ,sbcl-prove)))
(inputs
`(("sbcl-cl-syntax" ,sbcl-cl-syntax)
- ("sbcl-cl-syntax-annot" ,sbcl-cl-syntax-annot)
("sbcl-fast-io" ,sbcl-fast-io)
("sbcl-proc-parse" ,sbcl-proc-parse)
("sbcl-cl-ppcre" ,sbcl-cl-ppcre)))
@@ -4442,6 +3846,9 @@ CCL.")
(define-public cl-jonathan
(sbcl-package->cl-source-package sbcl-jonathan))
+(define-public ecl-jonathan
+ (sbcl-package->ecl-package sbcl-jonathan))
+
(define-public sbcl-http-body
(let ((commit "dd01dc4f5842e3d29728552e5163acce8386eb73")
(revision "1"))
@@ -4463,8 +3870,7 @@ CCL.")
;; found, required by #<SYSTEM "http-body">. Why?
`(#:tests? #f))
(native-inputs
- `(("sbcl-prove-asdf" ,sbcl-prove-asdf)
- ("sbcl-prove" ,sbcl-prove)))
+ `(("sbcl-prove" ,sbcl-prove)))
(inputs
`(("sbcl-fast-http" ,sbcl-fast-http)
("sbcl-jonathan" ,sbcl-jonathan)
@@ -4480,6 +3886,9 @@ multipart/form-data.")
(define-public cl-http-body
(sbcl-package->cl-source-package sbcl-http-body))
+(define-public ecl-http-body
+ (sbcl-package->ecl-package sbcl-http-body))
+
(define-public sbcl-circular-streams
(let ((commit "e770bade1919c5e8533dd2078c93c3d3bbeb38df")
(revision "1"))
@@ -4514,46 +3923,59 @@ reset to 0 and you're able to read it again.")
(define-public cl-circular-streams
(sbcl-package->cl-source-package sbcl-circular-streams))
-(define-public sbcl-lack-request
+(define-public ecl-circular-streams
+ (sbcl-package->ecl-package sbcl-circular-streams))
+
+(define-public sbcl-lack
(let ((commit "abff8efeb0c3a848e6bb0022f2b8b7fa3a1bc88b")
(revision "1"))
(package
- (name "sbcl-lack-request")
- (version (git-version "0.1.0" revision commit))
- (source
- (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/fukamachi/lack")
- (commit commit)))
- (file-name (git-file-name "lack-request" version))
- (sha256
- (base32 "1avh4ygcj9xcx4m17nj0wnxxaisk26w4ljs2bibzxaln24x7pi85"))))
- (build-system asdf-build-system/sbcl)
- (arguments
- '(#:asd-file "lack-request.asd"
- #:asd-system-name "lack-request"
- #:test-asd-file "t-lack-request.asd"
- ;; XXX: Component :CLACK-TEST not found
- #:tests? #f))
- (native-inputs
- `(("sbcl-prove-asdf" ,sbcl-prove-asdf)
- ("sbcl-prove" ,sbcl-prove)))
- (inputs
- `(("sbcl-quri" ,sbcl-quri)
- ("sbcl-http-body" ,sbcl-http-body)
- ("sbcl-circular-streams" ,sbcl-circular-streams)))
- (home-page "https://github.com/fukamachi/lack")
- (synopsis "Lack, the core of Clack")
- (description
- "Lack is a Common Lisp library which allows web applications to be
+ (name "sbcl-lack")
+ (version (git-version "0.1.0" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/fukamachi/lack")
+ (commit commit)))
+ (file-name (git-file-name "lack" version))
+ (sha256
+ (base32 "1avh4ygcj9xcx4m17nj0wnxxaisk26w4ljs2bibzxaln24x7pi85"))))
+ (build-system asdf-build-system/sbcl)
+ (native-inputs
+ `(("prove" ,sbcl-prove)))
+ (inputs
+ `(("circular-streams" ,sbcl-circular-streams)
+ ("http-body" ,sbcl-http-body)
+ ("ironclad" ,sbcl-ironclad)
+ ("local-time" ,sbcl-local-time)
+ ("quri" ,sbcl-quri)
+ ("trivial-mimes" ,sbcl-trivial-mimes)))
+ (arguments
+ '(#:asd-systems '("lack"
+ "lack-request"
+ "lack-response"
+ "lack-component"
+ "lack-util"
+ "lack-middleware-backtrace"
+ "lack-middleware-static")
+ #:test-asd-file "t-lack.asd"
+ ;; XXX: Component :CLACK not found
+ #:tests? #f))
+ (home-page "https://github.com/fukamachi/lack")
+ (synopsis "Lack, the core of Clack")
+ (description
+ "Lack is a Common Lisp library which allows web applications to be
constructed of modular components. It was originally a part of Clack, however
it's going to be rewritten as an individual project since Clack v2 with
performance and simplicity in mind.")
- (license license:llgpl))))
+ (license license:llgpl))))
-(define-public cl-lack-request
- (sbcl-package->cl-source-package sbcl-lack-request))
+(define-public cl-lack
+ (sbcl-package->cl-source-package sbcl-lack))
+
+(define-public ecl-lack
+ (sbcl-package->ecl-package sbcl-lack))
(define-public sbcl-local-time
(let ((commit "62792705245168d3fc2e04164b9a143477284142")
@@ -4590,156 +4012,8 @@ Long Painful History of Time\".")
(define-public cl-local-time
(sbcl-package->cl-source-package sbcl-local-time))
-(define-public sbcl-lack-response
- (let ((commit "abff8efeb0c3a848e6bb0022f2b8b7fa3a1bc88b")
- (revision "1"))
- (package
- (name "sbcl-lack-response")
- (version (git-version "0.1.0" revision commit))
- (source
- (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/fukamachi/lack")
- (commit commit)))
- (file-name (git-file-name name version))
- (sha256
- (base32 "1avh4ygcj9xcx4m17nj0wnxxaisk26w4ljs2bibzxaln24x7pi85"))))
- (build-system asdf-build-system/sbcl)
- (arguments
- '(#:asd-file "lack-response.asd"
- #:asd-system-name "lack-response"
- ;; XXX: no tests for lack-response.
- #:tests? #f))
- (native-inputs
- `(("sbcl-prove-asdf" ,sbcl-prove-asdf)
- ("sbcl-prove" ,sbcl-prove)))
- (inputs
- `(("sbcl-quri" ,sbcl-quri)
- ("sbcl-http-body" ,sbcl-http-body)
- ("sbcl-circular-streams" ,sbcl-circular-streams)
- ("sbcl-local-time" ,sbcl-local-time)))
- (home-page "https://github.com/fukamachi/lack")
- (synopsis "Lack, the core of Clack")
- (description
- "Lack is a Common Lisp library which allows web applications to be
-constructed of modular components. It was originally a part of Clack, however
-it's going to be rewritten as an individual project since Clack v2 with
-performance and simplicity in mind.")
- (license license:llgpl))))
-
-(define-public cl-lack-response
- (sbcl-package->cl-source-package sbcl-lack-response))
-
-(define-public sbcl-lack-component
- (let ((commit "abff8efeb0c3a848e6bb0022f2b8b7fa3a1bc88b")
- (revision "1"))
- (package
- (name "sbcl-lack-component")
- (version (git-version "0.0.0" revision commit))
- (source
- (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/fukamachi/lack")
- (commit commit)))
- (file-name (git-file-name "lack-component" version))
- (sha256
- (base32 "1avh4ygcj9xcx4m17nj0wnxxaisk26w4ljs2bibzxaln24x7pi85"))))
- (build-system asdf-build-system/sbcl)
- (arguments
- '(#:asd-file "lack-component.asd"
- #:asd-system-name "lack-component"
- #:test-asd-file "t-lack-component.asd"
- ;; XXX: Component :LACK-TEST not found
- #:tests? #f))
- (native-inputs
- `(("prove-asdf" ,sbcl-prove-asdf)))
- (home-page "https://github.com/fukamachi/lack")
- (synopsis "Lack, the core of Clack")
- (description
- "Lack is a Common Lisp library which allows web applications to be
-constructed of modular components. It was originally a part of Clack, however
-it's going to be rewritten as an individual project since Clack v2 with
-performance and simplicity in mind.")
- (license license:llgpl))))
-
-(define-public cl-lack-component
- (sbcl-package->cl-source-package sbcl-lack-component))
-
-(define-public sbcl-lack-util
- (let ((commit "abff8efeb0c3a848e6bb0022f2b8b7fa3a1bc88b")
- (revision "1"))
- (package
- (name "sbcl-lack-util")
- (version (git-version "0.1.0" revision commit))
- (source
- (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/fukamachi/lack")
- (commit commit)))
- (file-name (git-file-name "lack-util" version))
- (sha256
- (base32 "1avh4ygcj9xcx4m17nj0wnxxaisk26w4ljs2bibzxaln24x7pi85"))))
- (build-system asdf-build-system/sbcl)
- (arguments
- '(#:asd-file "lack-util.asd"
- #:asd-system-name "lack-util"
- #:test-asd-file "t-lack-util.asd"
- ;; XXX: Component :LACK-TEST not found
- #:tests? #f))
- (native-inputs
- `(("prove-asdf" ,sbcl-prove-asdf)))
- (inputs
- `(("sbcl-ironclad" ,sbcl-ironclad)))
- (home-page "https://github.com/fukamachi/lack")
- (synopsis "Lack, the core of Clack")
- (description
- "Lack is a Common Lisp library which allows web applications to be
-constructed of modular components. It was originally a part of Clack, however
-it's going to be rewritten as an individual project since Clack v2 with
-performance and simplicity in mind.")
- (license license:llgpl))))
-
-(define-public cl-lack-util
- (sbcl-package->cl-source-package sbcl-lack-util))
-
-(define-public sbcl-lack-middleware-backtrace
- (let ((commit "abff8efeb0c3a848e6bb0022f2b8b7fa3a1bc88b")
- (revision "1"))
- (package
- (name "sbcl-lack-middleware-backtrace")
- (version (git-version "0.1.0" revision commit))
- (source
- (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/fukamachi/lack")
- (commit commit)))
- (file-name (git-file-name "lack-middleware-backtrace" version))
- (sha256
- (base32 "1avh4ygcj9xcx4m17nj0wnxxaisk26w4ljs2bibzxaln24x7pi85"))))
- (build-system asdf-build-system/sbcl)
- (arguments
- '(#:asd-file "lack-middleware-backtrace.asd"
- #:asd-system-name "lack-middleware-backtrace"
- #:test-asd-file "t-lack-middleware-backtrace.asd"
- ;; XXX: Component :LACK not found
- #:tests? #f))
- (native-inputs
- `(("prove-asdf" ,sbcl-prove-asdf)))
- (home-page "https://github.com/fukamachi/lack")
- (synopsis "Lack, the core of Clack")
- (description
- "Lack is a Common Lisp library which allows web applications to be
-constructed of modular components. It was originally a part of Clack, however
-it's going to be rewritten as an individual project since Clack v2 with
-performance and simplicity in mind.")
- (license license:llgpl))))
-
-(define-public cl-lack-middleware-backtrace
- (sbcl-package->cl-source-package sbcl-lack-middleware-backtrace))
+(define-public ecl-local-time
+ (sbcl-package->ecl-package sbcl-local-time))
(define-public sbcl-trivial-mimes
(let ((commit "303f8ac0aa6ca0bc139aa3c34822e623c3723fab")
@@ -4757,20 +4031,6 @@ performance and simplicity in mind.")
(sha256
(base32 "17jxgl47r695bvsb7wi3n2ws5rp1zzgvw0zii8cy5ggw4b4ayv6m"))))
(build-system asdf-build-system/sbcl)
- (arguments
- '(#:phases
- (modify-phases %standard-phases
- (add-after
- 'unpack 'fix-paths
- (lambda* (#:key inputs #:allow-other-keys)
- (let ((anchor "#p\"/etc/mime.types\""))
- (substitute* "mime-types.lisp"
- ((anchor all)
- (string-append
- anchor "\n"
- "(asdf:system-relative-pathname :trivial-mimes "
- "\"../../share/common-lisp/" (%lisp-type)
- "-source/trivial-mimes/mime.types\")")))))))))
(native-inputs
`(("stefil" ,sbcl-hu.dwim.stefil)))
(inputs
@@ -4788,83 +4048,6 @@ mime-type of a file.")
(define-public ecl-trivial-mimes
(sbcl-package->ecl-package sbcl-trivial-mimes))
-(define-public sbcl-lack-middleware-static
- (let ((commit "abff8efeb0c3a848e6bb0022f2b8b7fa3a1bc88b")
- (revision "1"))
- (package
- (name "sbcl-lack-middleware-static")
- (version (git-version "0.1.0" revision commit))
- (source
- (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/fukamachi/lack")
- (commit commit)))
- (file-name (git-file-name "lack-middleware-static" version))
- (sha256
- (base32 "1avh4ygcj9xcx4m17nj0wnxxaisk26w4ljs2bibzxaln24x7pi85"))))
- (build-system asdf-build-system/sbcl)
- (arguments
- '(#:asd-file "lack-middleware-static.asd"
- #:asd-system-name "lack-middleware-static"
- #:test-asd-file "t-lack-middleware-static.asd"
- ;; XXX: Component :LACK not found
- #:tests? #f))
- (native-inputs
- `(("prove-asdf" ,sbcl-prove-asdf)))
- (inputs
- `(("sbcl-ironclad" ,sbcl-ironclad)
- ("sbcl-trivial-mimes" ,sbcl-trivial-mimes)
- ("sbcl-local-time" ,sbcl-local-time)))
- (home-page "https://github.com/fukamachi/lack")
- (synopsis "Lack, the core of Clack")
- (description
- "Lack is a Common Lisp library which allows web applications to be
-constructed of modular components. It was originally a part of Clack, however
-it's going to be rewritten as an individual project since Clack v2 with
-performance and simplicity in mind.")
- (license license:llgpl))))
-
-(define-public cl-lack-middleware-static
- (sbcl-package->cl-source-package sbcl-lack-middleware-static))
-
-(define-public sbcl-lack
- (let ((commit "abff8efeb0c3a848e6bb0022f2b8b7fa3a1bc88b")
- (revision "1"))
- (package
- (name "sbcl-lack")
- (version (git-version "0.1.0" revision commit))
- (source
- (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/fukamachi/lack")
- (commit commit)))
- (file-name (git-file-name "lack" version))
- (sha256
- (base32 "1avh4ygcj9xcx4m17nj0wnxxaisk26w4ljs2bibzxaln24x7pi85"))))
- (build-system asdf-build-system/sbcl)
- (arguments
- '(#:test-asd-file "t-lack.asd"
- ;; XXX: Component :CLACK not found
- #:tests? #f))
- (native-inputs
- `(("prove-asdf" ,sbcl-prove-asdf)))
- (inputs
- `(("sbcl-lack-component" ,sbcl-lack-component)
- ("sbcl-lack-util" ,sbcl-lack-util)))
- (home-page "https://github.com/fukamachi/lack")
- (synopsis "Lack, the core of Clack")
- (description
- "Lack is a Common Lisp library which allows web applications to be
-constructed of modular components. It was originally a part of Clack, however
-it's going to be rewritten as an individual project since Clack v2 with
-performance and simplicity in mind.")
- (license license:llgpl))))
-
-(define-public cl-lack
- (sbcl-package->cl-source-package sbcl-lack))
-
(define-public sbcl-ningle
(let ((commit "50bd4f09b5a03a7249bd4d78265d6451563b25ad")
(revision "1"))
@@ -4908,15 +4091,11 @@ performance and simplicity in mind.")
fasl-files)
#t)))))
(native-inputs
- `(("sbcl-prove-asdf" ,sbcl-prove-asdf)
- ("sbcl-prove" ,sbcl-prove)))
+ `(("sbcl-prove" ,sbcl-prove)))
(inputs
`(("sbcl-cl-syntax" ,sbcl-cl-syntax)
- ("sbcl-cl-syntax-annot" ,sbcl-cl-syntax-annot)
("sbcl-myway" ,sbcl-myway)
- ("sbcl-lack-request" ,sbcl-lack-request)
- ("sbcl-lack-response" ,sbcl-lack-response)
- ("sbcl-lack-component" ,sbcl-lack-component)
+ ("sbcl-lack" ,sbcl-lack)
("sbcl-alexandria" ,sbcl-alexandria)
("sbcl-babel" ,sbcl-babel)))
(home-page "https://8arrow.org/ningle/")
@@ -4928,6 +4107,9 @@ performance and simplicity in mind.")
(define-public cl-ningle
(sbcl-package->cl-source-package sbcl-ningle))
+(define-public ecl-ningle
+ (sbcl-package->ecl-package sbcl-ningle))
+
(define-public sbcl-cl-fastcgi
(let ((commit "d576d20eeb12f225201074b28934ba395b15781a")
(revision "1"))
@@ -4973,72 +4155,49 @@ mostly Common Lisp implementation.")
(define-public ecl-cl-fastcgi
(sbcl-package->ecl-package sbcl-cl-fastcgi))
-(define clack-commit "e3e032843bb1220ab96263c411aa7f2feb4746e0")
-(define clack-revision "1")
-
(define-public sbcl-clack
- (package
- (name "sbcl-clack")
- (version (git-version "2.0.0" clack-revision clack-commit))
- (source
- (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/fukamachi/clack")
- (commit clack-commit)))
- (file-name (git-file-name name version))
- (sha256
- (base32 "1ymzs6qyrwhlj6cgqsnpyn6g5cbp7a3s1vgxwna20y2q7y4iacy0"))))
- (build-system asdf-build-system/sbcl)
- (inputs
- `(("sbcl-lack" ,sbcl-lack)
- ("sbcl-lack-middleware-backtrace" ,sbcl-lack-middleware-backtrace)
- ("sbcl-bordeaux-threads" ,sbcl-bordeaux-threads)))
- (home-page "https://github.com/fukamachi/clack")
- (synopsis "Web Application Environment for Common Lisp")
- (description
- "Clack is a web application environment for Common Lisp inspired by
+ (let ((commit "e3e032843bb1220ab96263c411aa7f2feb4746e0")
+ (revision "1"))
+ (package
+ (name "sbcl-clack")
+ (version (git-version "2.0.0" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/fukamachi/clack")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1ymzs6qyrwhlj6cgqsnpyn6g5cbp7a3s1vgxwna20y2q7y4iacy0"))))
+ (build-system asdf-build-system/sbcl)
+ (inputs
+ `(("alexandria" ,sbcl-alexandria)
+ ("bordeaux-threads" ,sbcl-bordeaux-threads)
+ ("cl-fastcgi" ,sbcl-cl-fastcgi)
+ ("flexi-streams" ,sbcl-flexi-streams)
+ ("hunchentoot" ,sbcl-hunchentoot)
+ ("lack" ,sbcl-lack)
+ ("split-sequence" ,sbcl-split-sequence)
+ ("usocket" ,sbcl-usocket)
+ ("quri" ,sbcl-quri)))
+ (arguments
+ '(#:asd-systems '("clack"
+ "clack-handler-fcgi"
+ "clack-socket"
+ "clack-handler-hunchentoot")))
+ (home-page "https://github.com/fukamachi/clack")
+ (synopsis "Web Application Environment for Common Lisp")
+ (description
+ "Clack is a web application environment for Common Lisp inspired by
Python's WSGI and Ruby's Rack.")
- (license license:llgpl)))
+ (license license:llgpl))))
(define-public cl-clack
(sbcl-package->cl-source-package sbcl-clack))
-(define-public sbcl-clack-handler-fcgi
- (package
- (inherit sbcl-clack)
- (name "sbcl-clack-handler-fcgi")
- (version (git-version "0.3.1" clack-revision clack-commit))
- (inputs
- `(("cl-fastcgi" ,sbcl-cl-fastcgi)
- ("alexandria" ,sbcl-alexandria)
- ("flexi-streams" ,sbcl-flexi-streams)
- ("usocket" ,sbcl-usocket)
- ("quri" ,sbcl-quri)))
- (synopsis "Web Application Environment for Common Lisp (FastCGI handler)")))
-
-(define-public cl-clack-handler-fcgi
- (sbcl-package->cl-source-package sbcl-clack-handler-fcgi))
-
-(define sbcl-clack-socket
- (package
- (inherit sbcl-clack)
- (name "sbcl-clack-socket")
- (version (git-version "0.1" clack-revision clack-commit))))
-
-(define-public sbcl-clack-handler-hunchentoot
- (package
- (inherit sbcl-clack)
- (name "sbcl-clack-handler-hunchentoot")
- (version (git-version "0.4.0" clack-revision clack-commit))
- (inputs
- `(("hunchentoot" ,sbcl-hunchentoot)
- ("clack-socket" ,sbcl-clack-socket)
- ("flexi-streams" ,sbcl-flexi-streams)
- ("bordeaux-threads" ,sbcl-bordeaux-threads)
- ("split-sequence" ,sbcl-split-sequence)
- ("alexandria" ,sbcl-alexandria)))
- (synopsis "Web Application Environment for Common Lisp (Hunchentoot handler)")))
+(define-public ecl-clack
+ (sbcl-package->ecl-package sbcl-clack))
(define-public sbcl-log4cl
(let ((commit "611e094458504b938d49de904eab141285328c7c")
@@ -5218,8 +4377,7 @@ the CFFI approach used by burgled-batteries, but has the same goal.")
(base32 "03g5qks4c59nmxa48pbslxkfh77h8hn8566jddp6m9pl15dzzpxd"))))
(build-system asdf-build-system/sbcl)
(arguments
- `(#:asd-file "parse-declarations-1.0.asd"
- #:asd-system-name "parse-declarations-1.0"))
+ `(#:asd-systems '("parse-declarations-1.0")))
(home-page "https://common-lisp.net/project/parse-declarations/")
(synopsis "Parse, filter, and build declarations")
(description
@@ -5263,7 +4421,7 @@ high-level way. This library provides such operators.")
;; MIT
(license license:expat))))
-(define-public cl-cl-quickcheck
+(define-public cl-quickcheck
(sbcl-package->cl-source-package sbcl-cl-quickcheck))
(define-public ecl-cl-quickcheck
@@ -5317,7 +4475,6 @@ high-level way. This library provides such operators.")
(inputs
`(("python" ,python)
("sbcl-cffi" ,sbcl-cffi)
- ("sbcl-cffi-grovel" ,sbcl-cffi-grovel)
("sbcl-alexandria" , sbcl-alexandria)
("sbcl-parse-declarations-1.0" ,sbcl-parse-declarations)
("sbcl-trivial-garbage" ,sbcl-trivial-garbage)))
@@ -5428,8 +4585,7 @@ basic everyday functions and macros.")
(arguments
;; Guix incorrectly assumes the "8" is part of the version
;; number and lobs it off.
- `(#:asd-file "trivial-utf-8.asd"
- #:asd-system-name "trivial-utf-8"))
+ `(#:asd-systems '("trivial-utf-8")))
(build-system asdf-build-system/sbcl)
(synopsis "UTF-8 input/output library")
(description
@@ -5508,13 +4664,12 @@ formats.")
(define-public ecl-swap-bytes
(sbcl-package->ecl-package sbcl-swap-bytes))
-(define-public sbcl-iolib.asdf
+(define-public sbcl-iolib
;; Latest release is from June 2017.
(let ((commit "7f5ea3a8457a29d224b24653c2b3657fb1898021")
(revision "2"))
(package
- (name "sbcl-iolib.asdf")
- (build-system asdf-build-system/sbcl)
+ (name "sbcl-iolib")
(version (git-version "0.8.3" revision commit))
(home-page "https://github.com/sionescu/iolib")
(source
@@ -5527,135 +4682,41 @@ formats.")
(sha256
(base32
"1bg5w7lm61hqk4b0svmri8a590q36z76jfa0sdgzb39r98c04w12"))))
+ (build-system asdf-build-system/sbcl)
(inputs
- `(("alexandria" ,sbcl-alexandria)))
+ `(("alexandria" ,sbcl-alexandria)
+ ("bordeaux-threads" ,sbcl-bordeaux-threads)
+ ("cffi" ,sbcl-cffi)
+ ("idna" ,sbcl-idna)
+ ("libfixposix" ,libfixposix)
+ ("split-sequence" ,sbcl-split-sequence)
+ ("swap-bytes" ,sbcl-swap-bytes)))
(arguments
- '(#:asd-file "iolib.asdf.asd"))
- (synopsis "ASDF component classes for IOLib, a Common Lisp I/O library")
+ '(#:asd-files '("iolib.asdf.asd"
+ "iolib.conf.asd"
+ "iolib.common-lisp.asd"
+ "iolib.base.asd"
+ "iolib.asd")
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'fix-paths
+ (lambda* (#:key inputs #:allow-other-keys)
+ (substitute* "src/syscalls/ffi-functions-unix.lisp"
+ (("\\(:default \"libfixposix\"\\)")
+ (string-append
+ "(:default \""
+ (assoc-ref inputs "libfixposix") "/lib/libfixposix\")")))
+ ;; Socket tests need Internet access, disable them.
+ (substitute* "iolib.asd"
+ (("\\(:file \"sockets\" :depends-on \\(\"pkgdcl\" \"defsuites\"\\)\\)")
+ "")))))))
+ (synopsis "Common Lisp I/O library")
(description "IOlib is to be a better and more modern I/O library than
the standard Common Lisp library. It contains a socket library, a DNS
resolver, an I/O multiplexer(which supports @code{select(2)}, @code{epoll(4)}
and @code{kqueue(2)}), a pathname library and file-system utilities.")
(license license:expat))))
-(define-public sbcl-iolib.conf
- (package
- (inherit sbcl-iolib.asdf)
- (name "sbcl-iolib.conf")
- (inputs
- `(("iolib.asdf" ,sbcl-iolib.asdf)))
- (arguments
- '(#:asd-file "iolib.conf.asd"))
- (synopsis "Compile-time configuration for IOLib, a Common Lisp I/O library")))
-
-(define-public sbcl-iolib.common-lisp
- (package
- (inherit sbcl-iolib.asdf)
- (name "sbcl-iolib.common-lisp")
- (inputs
- `(("iolib.asdf" ,sbcl-iolib.asdf)
- ("iolib.conf" ,sbcl-iolib.conf)))
- (arguments
- '(#:asd-file "iolib.common-lisp.asd"))
- (synopsis "Slightly modified Common Lisp for IOLib, a Common Lisp I/O library")))
-
-(define-public sbcl-iolib.base
- (package
- (inherit sbcl-iolib.asdf)
- (name "sbcl-iolib.base")
- (inputs
- `(("iolib.asdf" ,sbcl-iolib.asdf)
- ("iolib.conf" ,sbcl-iolib.conf)
- ("iolib.common-lisp" ,sbcl-iolib.common-lisp)
- ("split-sequence" ,sbcl-split-sequence)))
- (arguments
- '(#:asd-file "iolib.base.asd"))
- (synopsis "Base package for IOLib, a Common Lisp I/O library")))
-
-(define-public sbcl-iolib.grovel
- (deprecated-package "sbcl-iolib.grovel" sbcl-cffi-grovel))
-
-(define sbcl-iolib+syscalls
- (package
- (inherit sbcl-iolib.asdf)
- (name "sbcl-iolib+syscalls")
- (inputs
- `(("iolib.asdf" ,sbcl-iolib.asdf)
- ("iolib.conf" ,sbcl-iolib.conf)
- ("cffi-grovel" ,sbcl-cffi-grovel)
- ("iolib.base" ,sbcl-iolib.base)
- ("bordeaux-threads" ,sbcl-bordeaux-threads)
- ("idna" ,sbcl-idna)
- ("swap-bytes" ,sbcl-swap-bytes)
- ("libfixposix" ,libfixposix)
- ("cffi" ,sbcl-cffi)))
- (native-inputs
- `(("fiveam" ,sbcl-fiveam)))
- (arguments
- '(#:asd-file "iolib.asd"
- #:asd-system-name "iolib/syscalls"
- #:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'fix-paths
- (lambda* (#:key inputs #:allow-other-keys)
- (substitute* "src/syscalls/ffi-functions-unix.lisp"
- (("\\(:default \"libfixposix\"\\)")
- (string-append
- "(:default \""
- (assoc-ref inputs "libfixposix") "/lib/libfixposix\")")))
- ;; Socket tests need Internet access, disable them.
- (substitute* "iolib.asd"
- (("\\(:file \"sockets\" :depends-on \\(\"pkgdcl\" \"defsuites\"\\)\\)")
- "")))))))
- (synopsis "Common Lisp I/O library")))
-
-(define sbcl-iolib+multiplex
- (package
- (inherit sbcl-iolib+syscalls)
- (name "sbcl-iolib+multiplex")
- (inputs
- `(("iolib+syscalls" ,sbcl-iolib+syscalls)
- ,@(package-inputs sbcl-iolib+syscalls)))
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-iolib+syscalls)
- ((#:asd-system-name _) "iolib/multiplex")))))
-
-(define sbcl-iolib+streams
- (package
- (inherit sbcl-iolib+syscalls)
- (name "sbcl-iolib+streams")
- (inputs
- `(("iolib+multiplex" ,sbcl-iolib+multiplex)
- ,@(package-inputs sbcl-iolib+syscalls)))
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-iolib+syscalls)
- ((#:asd-system-name _) "iolib/streams")))))
-
-(define sbcl-iolib+sockets
- (package
- (inherit sbcl-iolib+syscalls)
- (name "sbcl-iolib+sockets")
- (inputs
- `(("iolib+syscalls" ,sbcl-iolib+syscalls)
- ("iolib+streams" ,sbcl-iolib+streams)
- ,@(package-inputs sbcl-iolib+syscalls)))
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-iolib+syscalls)
- ((#:asd-system-name _) "iolib/sockets")))))
-
-(define-public sbcl-iolib
- (package
- (inherit sbcl-iolib+syscalls)
- (name "sbcl-iolib")
- (inputs
- `(("iolib+multiplex" ,sbcl-iolib+multiplex)
- ("iolib+streams" ,sbcl-iolib+streams)
- ("iolib+sockets" ,sbcl-iolib+sockets)
- ,@(package-inputs sbcl-iolib+syscalls)))
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-iolib+syscalls)
- ((#:asd-system-name _) "iolib")))))
-
(define-public cl-iolib
(let ((parent (sbcl-package->cl-source-package sbcl-iolib)))
(package
@@ -5665,6 +4726,9 @@ and @code{kqueue(2)}), a pathname library and file-system utilities.")
`(("libfixposix" ,libfixposix)
,@(package-propagated-inputs parent))))))
+(define-public ecl-iolib
+ (sbcl-package->ecl-package sbcl-iolib))
+
(define-public sbcl-ieee-floats
(let ((commit "566b51a005e81ff618554b9b2f0b795d3b29398d")
(revision "1"))
@@ -5693,6 +4757,9 @@ floating point values to IEEE 754 binary representation.")
(define-public cl-ieee-floats
(sbcl-package->cl-source-package sbcl-ieee-floats))
+(define-public ecl-ieee-floats
+ (sbcl-package->ecl-package sbcl-ieee-floats))
+
(define sbcl-closure-common
(let ((commit "e3c5f5f454b72b01b89115e581c3c52a7e201e5c")
(revision "1"))
@@ -5720,14 +4787,12 @@ Closure is a reference to the web browser it was originally written for.")
;; TODO: License?
(license #f))))
-(define-public sbcl-cxml+xml
+(define-public sbcl-cxml
(let ((commit "00b22bf4c4cf11c993d5866fae284f95ab18e6bf")
(revision "1"))
(package
- (name "sbcl-cxml+xml")
- (build-system asdf-build-system/sbcl)
+ (name "sbcl-cxml")
(version (git-version "0.0.0" revision commit))
- (home-page "https://common-lisp.net/project/cxml/")
(source
(origin
(method git-fetch)
@@ -5738,81 +4803,24 @@ Closure is a reference to the web browser it was originally written for.")
(sha256
(base32
"13kif7rf3gqdycsk9zq0d7y0g9y81krkl0z87k0p2fkbjfgrph37"))))
- (inputs
- `(("closure-common" ,sbcl-closure-common)
- ("puri" ,sbcl-puri)
- ("trivial-gray-streams" ,sbcl-trivial-gray-streams)))
- (arguments
- `(#:asd-file "cxml.asd"
- #:asd-system-name "cxml/xml"))
- (synopsis "Common Lisp XML parser")
- (description "CXML implements a namespace-aware, validating XML 1.0
-parser as well as the DOM Level 2 Core interfaces. Two parser interfaces are
-offered, one SAX-like, the other similar to StAX.")
- (license license:llgpl))))
-
-(define sbcl-cxml+dom
- (package
- (inherit sbcl-cxml+xml)
- (name "sbcl-cxml+dom")
- (inputs
- `(("closure-common" ,sbcl-closure-common)
- ("puri" ,sbcl-puri)
- ("cxml+xml" ,sbcl-cxml+xml)))
- (arguments
- `(#:asd-file "cxml.asd"
- #:asd-system-name "cxml/dom"))))
-
-(define sbcl-cxml+klacks
- (package
- (inherit sbcl-cxml+xml)
- (name "sbcl-cxml+klacks")
- (inputs
- `(("closure-common" ,sbcl-closure-common)
- ("puri" ,sbcl-puri)
- ("cxml+xml" ,sbcl-cxml+xml)))
- (arguments
- `(#:asd-file "cxml.asd"
- #:asd-system-name "cxml/klacks"))))
-
-(define sbcl-cxml+test
- (package
- (inherit sbcl-cxml+xml)
- (name "sbcl-cxml+test")
- (inputs
- `(("closure-common" ,sbcl-closure-common)
- ("puri" ,sbcl-puri)
- ("cxml+xml" ,sbcl-cxml+xml)))
- (arguments
- `(#:asd-file "cxml.asd"
- #:asd-system-name "cxml/test"))))
-
-(define-public sbcl-cxml
- (package
- (inherit sbcl-cxml+xml)
- (name "sbcl-cxml")
+ (build-system asdf-build-system/sbcl)
(inputs
`(("closure-common" ,sbcl-closure-common)
("puri" ,sbcl-puri)
- ("trivial-gray-streams" ,sbcl-trivial-gray-streams)
- ("cxml+dom" ,sbcl-cxml+dom)
- ("cxml+klacks" ,sbcl-cxml+klacks)
- ("cxml+test" ,sbcl-cxml+test)))
- (arguments
- `(#:asd-file "cxml.asd"
- #:asd-system-name "cxml"
- #:phases
- (modify-phases %standard-phases
- (add-after 'build 'install-dtd
- (lambda* (#:key outputs #:allow-other-keys)
- (install-file "catalog.dtd"
- (string-append
- (assoc-ref outputs "out")
- "/lib/" (%lisp-type))))))))))
+ ("trivial-gray-streams" ,sbcl-trivial-gray-streams)))
+ (synopsis "Common Lisp XML parser")
+ (description "CXML implements a namespace-aware, validating XML 1.0
+parser as well as the DOM Level 2 Core interfaces. Two parser interfaces are
+offered, one SAX-like, the other similar to StAX.")
+ (home-page "https://common-lisp.net/project/cxml/")
+ (license license:llgpl))))
(define-public cl-cxml
(sbcl-package->cl-source-package sbcl-cxml))
+(define-public ecl-cxml
+ (sbcl-package->ecl-package sbcl-cxml))
+
(define-public sbcl-cl-reexport
(let ((commit "312f3661bbe187b5f28536cd7ec2956e91366c3b")
(revision "1"))
@@ -5844,6 +4852,9 @@ cookie headers, cookie creation, cookie jar creation and more.")
(define-public cl-reexport
(sbcl-package->cl-source-package sbcl-cl-reexport))
+(define-public ecl-cl-reexport
+ (sbcl-package->ecl-package sbcl-cl-reexport))
+
(define-public sbcl-cl-cookie
(let ((commit "cea55aed8b9ad25fafd13defbcb9fe8f41b29546")
(revision "1"))
@@ -5869,8 +4880,7 @@ cookie headers, cookie creation, cookie jar creation and more.")
("cl-ppcre" ,sbcl-cl-ppcre)
("local-time" ,sbcl-local-time)))
(native-inputs
- `(("prove-asdf" ,sbcl-prove-asdf)
- ("prove" ,sbcl-prove)))
+ `(("prove" ,sbcl-prove)))
(arguments
;; TODO: Tests fail because cl-cookie depends on cl-cookie-test.
`(#:tests? #f))
@@ -5882,6 +4892,9 @@ cookie headers, cookie creation, cookie jar creation and more.")
(define-public cl-cookie
(sbcl-package->cl-source-package sbcl-cl-cookie))
+(define-public ecl-cl-cookie
+ (sbcl-package->ecl-package sbcl-cl-cookie))
+
(define-public sbcl-dexador
(let ((commit "953090f04c4d1a9ee6632b90133cdc297b68badc")
(revision "1"))
@@ -5919,8 +4932,7 @@ cookie headers, cookie creation, cookie jar creation and more.")
("alexandria" ,sbcl-alexandria)))
(native-inputs
`(("prove" ,sbcl-prove)
- ("prove-asdf" ,sbcl-prove-asdf)
- ("lack-request" ,sbcl-lack-request)
+ ("lack" ,sbcl-lack)
("clack" ,sbcl-clack)
("babel" ,sbcl-babel)
("alexandria" ,sbcl-alexandria)
@@ -5989,6 +5001,9 @@ This library offers macros to deal with symbols from any namespace.")
(define-public cl-lisp-namespace
(sbcl-package->cl-source-package sbcl-lisp-namespace))
+(define-public ecl-lisp-namespace
+ (sbcl-package->ecl-package sbcl-lisp-namespace))
+
(define-public sbcl-trivial-cltl2
(let ((commit "8a3bda30dc25d2f65fcf514d0eb6e6db75252c61")
(revision "2"))
@@ -6017,6 +5032,9 @@ and it exports symbols from implementation-specific packages.")
(define-public cl-trivial-cltl2
(sbcl-package->cl-source-package sbcl-trivial-cltl2))
+(define-public ecl-trivial-cltl2
+ (sbcl-package->ecl-package sbcl-trivial-cltl2))
+
(define-public sbcl-introspect-environment
(let ((commit "fff42f8f8fd0d99db5ad6c5812e53de7d660020b")
(revision "1"))
@@ -6061,6 +5079,9 @@ can and/or provide reasonable defaults.")
(define-public cl-introspect-environment
(sbcl-package->cl-source-package sbcl-introspect-environment))
+(define-public ecl-introspect-environment
+ (sbcl-package->ecl-package sbcl-introspect-environment))
+
(define-public sbcl-type-i
(let ((commit "d34440ab4ebf5a46a58deccb35950b15670e3667")
(revision "2"))
@@ -6096,6 +5117,13 @@ the return type of a function.")
(define-public cl-type-i
(sbcl-package->cl-source-package sbcl-type-i))
+(define-public ecl-type-i
+ (package
+ (inherit (sbcl-package->ecl-package sbcl-type-i))
+ (arguments
+ ;; The tests get stuck indefinitly
+ '(#:tests? #f))))
+
(define-public sbcl-optima
(let ((commit "373b245b928c1a5cce91a6cb5bfe5dd77eb36195")
(revision "1"))
@@ -6131,6 +5159,9 @@ optimizing techniques widely used in the functional programming world.")
(define-public cl-optima
(sbcl-package->cl-source-package sbcl-optima))
+(define-public ecl-optima
+ (sbcl-package->ecl-package sbcl-optima))
+
(define-public sbcl-fare-quasiquote
(let ((commit "640d39a0451094071b3e093c97667b3947f43639")
(revision "1"))
@@ -6150,11 +5181,15 @@ optimizing techniques widely used in the functional programming world.")
(sha256
(base32 "1g6q11l50kgija9f55lzqpcwvaq0ljiw8v1j265hnyg6nahjwjvg"))))
(inputs
- `(("fare-utils" ,sbcl-fare-utils)))
+ `(("fare-utils" ,sbcl-fare-utils)
+ ("named-readtables" ,sbcl-named-readtables)
+ ("optima" ,sbcl-optima)))
(arguments
;; XXX: Circular dependencies: Tests depend on subsystems,
;; which depend on the main systems.
`(#:tests? #f
+ #:asd-systems '("fare-quasiquote"
+ "fare-quasiquote-extras")
#:phases
(modify-phases %standard-phases
;; XXX: Require 1.0.0 version of fare-utils, and we package some
@@ -6164,7 +5199,11 @@ optimizing techniques widely used in the functional programming world.")
(lambda _
(substitute* "fare-quasiquote.asd"
(("\\(:version \"fare-utils\" \"1.0.0\"\\)")
- "\"fare-utils\"")))))))
+ "\"fare-utils\""))
+ (substitute* "fare-quasiquote-optima.asd"
+ (("\\(:version \"optima\" \"1\\.0\"\\)")
+ "\"optima\""))
+ #t)))))
(synopsis "Pattern-matching friendly implementation of quasiquote")
(description "The main purpose of this n+2nd reimplementation of
quasiquote is enable matching of quasiquoted patterns, using Optima or
@@ -6174,222 +5213,97 @@ Trivia.")
(define-public cl-fare-quasiquote
(sbcl-package->cl-source-package sbcl-fare-quasiquote))
-(define-public sbcl-fare-quasiquote-optima
- (package
- (inherit sbcl-fare-quasiquote)
- (name "sbcl-fare-quasiquote-optima")
- (inputs
- `(("optima" ,sbcl-optima)
- ("fare-quasiquote" ,sbcl-fare-quasiquote)))
- (arguments
- '(#:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'patch-requirement
- (lambda _
- (substitute* "fare-quasiquote-optima.asd"
- (("\\(:version \"optima\" \"1\\.0\"\\)")
- "\"optima\""))
- #t)))))))
-
-(define-public cl-fare-quasiquote-optima
- (sbcl-package->cl-source-package sbcl-fare-quasiquote-optima))
-
-(define-public sbcl-fare-quasiquote-readtable
- (package
- (inherit sbcl-fare-quasiquote)
- (name "sbcl-fare-quasiquote-readtable")
- (inputs
- `(("fare-quasiquote" ,sbcl-fare-quasiquote)
- ("named-readtables" ,sbcl-named-readtables)))
- (description "The main purpose of this n+2nd reimplementation of
-quasiquote is enable matching of quasiquoted patterns, using Optima or
-Trivia.
-
-This package uses fare-quasiquote with named-readtable.")))
-
-(define-public cl-fare-quasiquote-readtable
- (sbcl-package->cl-source-package sbcl-fare-quasiquote-readtable))
-
-(define-public sbcl-fare-quasiquote-extras
- (package
- (inherit sbcl-fare-quasiquote)
- (name "sbcl-fare-quasiquote-extras")
- (build-system asdf-build-system/sbcl)
- (inputs
- `(("fare-quasiquote-optima" ,sbcl-fare-quasiquote-optima)
- ("fare-quasiquote-readtable" ,sbcl-fare-quasiquote-readtable)))
- (arguments
- `(#:phases
- (modify-phases %standard-phases
- (replace 'build
- (lambda* (#:key outputs #:allow-other-keys)
- (let* ((out (assoc-ref outputs "out"))
- (lib (string-append out "/lib/" (%lisp-type))))
- (mkdir-p lib)
- (install-file "fare-quasiquote-extras.asd" lib)
- (make-file-writable
- (string-append lib "/fare-quasiquote-extras.asd"))
- #t))))))
- (description "This library combines @code{fare-quasiquote-readtable} and
-@code{fare-quasiquote-optima}.")))
-
-(define-public cl-fare-quasiquote-extras
- (package
- (inherit cl-fare-quasiquote)
- (name "cl-fare-quasiquote-extras")
- (build-system asdf-build-system/source)
- (propagated-inputs
- `(("fare-quasiquote" ,cl-fare-quasiquote)
- ("fare-quasiquote-optima" ,cl-fare-quasiquote-optima)
- ("fare-quasiquote-readtable" ,cl-fare-quasiquote-readtable)))
- (description "This library combines @code{fare-quasiquote-readtable} and
-@code{fare-quasiquote-optima}.")))
+(define-public ecl-fare-quasiquote
+ (sbcl-package->ecl-package sbcl-fare-quasiquote))
-(define-public sbcl-trivia.level0
+;;; Split the trivia package in two to work around the circular dependency
+;;; between guicho271828/trivia and guicho271828/type-i.
+(define-public sbcl-trivia.trivial
(let ((commit "37698b47a14c2007630468de7a993694ef7bd475")
(revision "2"))
(package
- (name "sbcl-trivia.level0")
- (build-system asdf-build-system/sbcl)
+ (name "sbcl-trivia.trivial")
(version (git-version "0.0.0" revision commit))
- (home-page "https://github.com/guicho271828/trivia")
(source
(origin
(method git-fetch)
(uri (git-reference
- (url home-page)
+ (url "https://github.com/guicho271828/trivia")
(commit commit)))
- (file-name (git-file-name name version))
+ (file-name (git-file-name "trivia" version))
(sha256
(base32
"0rsbwbw3ipxxgr6zzhci12nilq8zky475kmhz1rcxy4q8a85vn72"))))
+ (build-system asdf-build-system/sbcl)
(inputs
- `(("alexandria" ,sbcl-alexandria)))
+ `(("alexandria" ,sbcl-alexandria)
+ ("closer-mop" ,sbcl-closer-mop)
+ ("lisp-namespace" ,sbcl-lisp-namespace)
+ ("trivial-cltl2" ,sbcl-trivial-cltl2)))
+ (arguments
+ '(#:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'fix-build
+ (lambda _
+ (for-each delete-file
+ '("trivia.balland2006.asd"
+ "trivia.ppcre.asd"
+ "trivia.quasiquote.asd"
+ "trivia.cffi.asd"
+ "trivia.asd"
+ "trivia.test.asd"))
+ #t)))))
(synopsis "Pattern matching in Common Lisp")
(description "Trivia is a pattern matching compiler that is compatible
with Optima, another pattern matching library for Common Lisp. It is meant to
be faster and more extensible than Optima.")
+ (home-page "https://github.com/guicho271828/trivia")
(license license:llgpl))))
-(define-public sbcl-trivia.level1
- (package
- (inherit sbcl-trivia.level0)
- (name "sbcl-trivia.level1")
- (inputs
- `(("trivia.level0" ,sbcl-trivia.level0)))
- (description "Trivia is a pattern matching compiler that is compatible
-with Optima, another pattern matching library for Common Lisp. It is meant to
-be faster and more extensible than Optima.
-
-This system contains the core patterns of Trivia.")))
-
-(define-public sbcl-trivia.level2
- (package
- (inherit sbcl-trivia.level0)
- (name "sbcl-trivia.level2")
- (inputs
- `(("trivia.level1" ,sbcl-trivia.level1)
- ("lisp-namespace" ,sbcl-lisp-namespace)
- ("trivial-cltl2" ,sbcl-trivial-cltl2)
- ("closer-mop" ,sbcl-closer-mop)))
- (description "Trivia is a pattern matching compiler that is compatible
-with Optima, another pattern matching library for Common Lisp. It is meant to
-be faster and more extensible than Optima.
+(define-public cl-trivia.trivial
+ (sbcl-package->cl-source-package sbcl-trivia.trivial))
-This system contains a non-optimized pattern matcher compatible with Optima,
-with extensible optimizer interface.")))
-
-(define-public sbcl-trivia.trivial
- (package
- (inherit sbcl-trivia.level0)
- (name "sbcl-trivia.trivial")
- (inputs
- `(("trivia.level2" ,sbcl-trivia.level2)))
- (description "Trivia is a pattern matching compiler that is compatible
-with Optima, another pattern matching library for Common Lisp. It is meant to
-be faster and more extensible than Optima.
-
-This system contains the base level system of Trivia with a trivial optimizer.")))
-
-(define-public sbcl-trivia.balland2006
- (package
- (inherit sbcl-trivia.level0)
- (name "sbcl-trivia.balland2006")
- (inputs
- `(("trivia.trivial" ,sbcl-trivia.trivial)
- ("iterate" ,sbcl-iterate)
- ("type-i" ,sbcl-type-i)
- ("alexandria" ,sbcl-alexandria)))
- (arguments
- ;; Tests are done in trivia itself.
- `(#:tests? #f))
- (description "Trivia is a pattern matching compiler that is compatible
-with Optima, another pattern matching library for Common Lisp. It is meant to
-be faster and more extensible than Optima.
-
-This system contains the base level system of Trivia with a trivial optimizer.")))
-
-(define-public sbcl-trivia.ppcre
- (package
- (inherit sbcl-trivia.level0)
- (name "sbcl-trivia.ppcre")
- (inputs
- `(("trivia.trivial" ,sbcl-trivia.trivial)
- ("cl-ppcre" ,sbcl-cl-ppcre)))
- (description "Trivia is a pattern matching compiler that is compatible
-with Optima, another pattern matching library for Common Lisp. It is meant to
-be faster and more extensible than Optima.
-
-This system contains the PPCRE extension.")))
-
-(define-public sbcl-trivia.quasiquote
- (package
- (inherit sbcl-trivia.level0)
- (name "sbcl-trivia.quasiquote")
- (inputs
- `(("trivia.trivial" ,sbcl-trivia.trivial)
- ("fare-quasiquote" ,sbcl-fare-quasiquote)
- ("fare-quasiquote-readtable" ,sbcl-fare-quasiquote-readtable)))
- (description "Trivia is a pattern matching compiler that is compatible
-with Optima, another pattern matching library for Common Lisp. It is meant to
-be faster and more extensible than Optima.
-
-This system contains the fare-quasiquote extension.")))
-
-(define-public sbcl-trivia.cffi
- (package
- (inherit sbcl-trivia.level0)
- (name "sbcl-trivia.cffi")
- (inputs
- `(("cffi" ,sbcl-cffi)
- ("trivia.trivial" ,sbcl-trivia.trivial)))
- (description "Trivia is a pattern matching compiler that is compatible
-with Optima, another pattern matching library for Common Lisp. It is meant to
-be faster and more extensible than Optima.
-
-This system contains the CFFI foreign slot access extension.")))
+(define-public ecl-trivia.trivial
+ (sbcl-package->ecl-package sbcl-trivia.trivial))
(define-public sbcl-trivia
(package
- (inherit sbcl-trivia.level0)
+ (inherit sbcl-trivia.trivial)
(name "sbcl-trivia")
- (inputs
- `(("trivia.balland2006" ,sbcl-trivia.balland2006)))
(native-inputs
`(("fiveam" ,sbcl-fiveam)
- ("trivia.ppcre" ,sbcl-trivia.ppcre)
- ("trivia.quasiquote" ,sbcl-trivia.quasiquote)
- ("trivia.cffi" ,sbcl-trivia.cffi)
("optima" ,sbcl-optima)))
- (arguments
- `(#:test-asd-file "trivia.test.asd"))
- (description "Trivia is a pattern matching compiler that is compatible
-with Optima, another pattern matching library for Common Lisp. It is meant to
-be faster and more extensible than Optima.")))
+ (inputs
+ `(("alexandria" ,sbcl-alexandria)
+ ("cffi" ,sbcl-cffi)
+ ("cl-ppcre" ,sbcl-cl-ppcre)
+ ("fare-quasiquote" ,sbcl-fare-quasiquote)
+ ("iterate" ,sbcl-iterate)
+ ("trivia.trivial" ,sbcl-trivia.trivial)
+ ("type-i" ,sbcl-type-i)))
+ (arguments
+ '(#:asd-systems '("trivia"
+ "trivia.ppcre"
+ "trivia.quasiquote"
+ "trivia.cffi")
+ #:test-asd-file "trivia.test.asd"
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'fix-build
+ (lambda _
+ (for-each delete-file
+ '("trivia.level0.asd"
+ "trivia.level1.asd"
+ "trivia.level2.asd"
+ "trivia.trivial.asd"))
+ #t)))))))
(define-public cl-trivia
(sbcl-package->cl-source-package sbcl-trivia))
+(define-public ecl-trivia
+ (sbcl-package->ecl-package sbcl-trivia))
+
(define-public sbcl-mk-string-metrics
(package
(name "sbcl-mk-string-metrics")
@@ -6424,6 +5338,9 @@ various string metrics in Common Lisp:
(define-public cl-mk-string-metrics
(sbcl-package->cl-source-package sbcl-mk-string-metrics))
+(define-public ecl-mk-string-metrics
+ (sbcl-package->ecl-package sbcl-mk-string-metrics))
+
(define-public sbcl-cl-str
(let ((commit "eb480f283e28802d67b35bf916506701152f9a2a"))
(package
@@ -6444,11 +5361,9 @@ various string metrics in Common Lisp:
("cl-ppcre-unicode" ,sbcl-cl-ppcre-unicode)
("cl-change-case" ,sbcl-cl-change-case)))
(native-inputs
- `(("prove" ,sbcl-prove)
- ("prove-asdf" ,sbcl-prove-asdf)))
+ `(("prove" ,sbcl-prove)))
(arguments
- `(#:asd-file "str.asd"
- #:asd-system-name "str"
+ `(#:asd-systems '("str")
#:test-asd-file "str.test.asd"))
(synopsis "Modern, consistent and terse Common Lisp string manipulation library")
(description "A modern and consistent Common Lisp string manipulation
@@ -6463,6 +5378,9 @@ arrows.")
(define-public cl-str
(sbcl-package->cl-source-package sbcl-cl-str))
+(define-public ecl-cl-str
+ (sbcl-package->ecl-package sbcl-cl-str))
+
(define-public sbcl-cl-xmlspam
(let ((commit "ea06abcca2a73a9779bcfb09081e56665f94e22a"))
(package
@@ -6495,15 +5413,17 @@ constructs can be used interchangeably with pattern matching, and the full
power of CXML is available when necessary.")
(license license:bsd-3))))
-;; TODO: dbus uses ASDF's package-inferred-system which is not supported by
-;; asdf-build-system/sbcl as of 2019-08-02. We should fix
-;; asdf-build-system/sbcl.
-(define-public cl-dbus
+(define-public cl-xmlspam
+ (sbcl-package->cl-source-package sbcl-cl-xmlspam))
+
+(define-public ecl-cl-xmlspam
+ (sbcl-package->ecl-package sbcl-cl-xmlspam))
+
+(define-public sbcl-dbus
(let ((commit "24b452df3a45ca5dc95015500f34baad175c981a")
(revision "1"))
(package
- (name "cl-dbus")
- (build-system asdf-build-system/source)
+ (name "sbcl-dbus")
(version (git-version "20190408" revision commit))
(home-page "https://github.com/death/dbus")
(source
@@ -6516,9 +5436,8 @@ power of CXML is available when necessary.")
(sha256
(base32
"0fw2q866yddbf23nk9pxphm9gsasx35vjyss82xzvndnjmzlqfl5"))))
- ;; Inputs must be propagated or else packages depending on this won't
- ;; have the necessary packages.
- (propagated-inputs
+ (build-system asdf-build-system/sbcl)
+ (inputs
`(("alexandria" ,sbcl-alexandria)
("trivial-garbage" ,sbcl-trivial-garbage)
("babel" ,sbcl-babel)
@@ -6532,6 +5451,12 @@ power of CXML is available when necessary.")
objects as well as send and notify other objects connected to a bus.")
(license license:bsd-2))))
+(define-public cl-dbus
+ (sbcl-package->cl-source-package sbcl-dbus))
+
+(define-public ecl-dbus
+ (sbcl-package->ecl-package sbcl-dbus))
+
(define-public sbcl-cl-hooks
(let ((commit "5b638083f3b4f1221a52631d9c8a0a265565cac7")
(revision "1"))
@@ -6616,8 +5541,7 @@ extension-points via the concept of hooks.")
"1fh8r7kf8s3hvqdg6b71b8p7w3v2kkga9bw8j3qqdxhzr6anpm0b"))))
(inputs
`(("bordeaux-threads" ,sbcl-bordeaux-threads)
- ("usocket" ,sbcl-usocket)
- ("usocket-server" ,sbcl-usocket-server)))
+ ("usocket" ,sbcl-usocket)))
(synopsis "Common Lisp abstraction layer over platform dependent functionality")
(description "@code{s-sysdeps} is an abstraction layer over platform
dependent functionality. This simple package is used as a building block in a
@@ -6731,7 +5655,11 @@ programming style and the efficiency of an iterative programming style.")
"0z30jr3lxz3cmi019fsl4lgcgwf0yqpn95v9zkkkwgymdrkd4lga"))))
(build-system asdf-build-system/sbcl)
(inputs
- `(("local-time" ,sbcl-local-time)))
+ `(("local-time" ,sbcl-local-time)
+ ("series" ,sbcl-series)))
+ (arguments
+ '(#:asd-systems '("periods"
+ "periods-series")))
(synopsis "Common Lisp library for manipulating date/time objects")
(description
"Periods is a Common Lisp library providing a set of utilities for
@@ -6746,26 +5674,6 @@ discontiguous ranges of time.")
(define-public ecl-periods
(sbcl-package->ecl-package sbcl-periods))
-(define-public sbcl-periods-series
- (package
- (inherit sbcl-periods)
- (name "sbcl-periods-series")
- (inputs
- `(("periods" ,sbcl-periods)
- ("series" ,sbcl-series)))
- (arguments
- '(#:asd-file "periods-series.asd"
- #:asd-system-name "periods-series"))
- (description
- "Periods-series is an extension of the periods Common Lisp library
-providing functions compatible with the series Common Lisp library.")))
-
-(define-public cl-periods-series
- (sbcl-package->cl-source-package sbcl-periods-series))
-
-(define-public ecl-periods-series
- (sbcl-package->ecl-package sbcl-periods-series))
-
(define-public sbcl-metatilities-base
(let ((commit "6eaa9e3ff0939a93a92109dd0fcd218de85417d5")
(revision "1"))
@@ -6820,7 +5728,8 @@ which implements a set of utilities.")
(inputs
`(("metatilities-base" ,sbcl-metatilities-base)))
(arguments
- '(#:phases
+ '(#:asd-files '("cl-containers.asd")
+ #:phases
(modify-phases %standard-phases
(add-after 'unpack 'relax-version-checks
(lambda _
@@ -6887,57 +5796,40 @@ on the XPTest package by Craig Brozensky and the JUnit package by Kent Beck.")
(define-public ecl-xlunit
(sbcl-package->ecl-package sbcl-xlunit))
-(define-public sbcl-fprog
+(define-public sbcl-cambl
(let ((commit "7016d1a98215f82605d1c158e7a16504ca1f4636")
(revision "1"))
(package
- (name "sbcl-fprog")
- (version (git-version "1.0.0" revision commit))
+ (name "sbcl-cambl")
+ (version (git-version "4.0.0" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/jwiegley/cambl")
(commit commit)))
- (file-name (git-file-name name version))
+ (file-name (git-file-name "cambl" version))
(sha256
- (base32
- "103mry04j2k9vznsxm7wcvccgxkil92cdrv52miwcmxl8daa4jiz"))))
+ (base32 "103mry04j2k9vznsxm7wcvccgxkil92cdrv52miwcmxl8daa4jiz"))))
(build-system asdf-build-system/sbcl)
- (synopsis "Functional programming utilities for Common Lisp")
- (description
- "@code{fprog} is a Common Lisp library allowing iteration over
-immutable lists sharing identical sublists.")
- (home-page "https://github.com/jwiegley/cambl")
- (license license:bsd-3))))
-
-(define-public cl-fprog
- (sbcl-package->cl-source-package sbcl-fprog))
-
-(define-public ecl-fprog
- (sbcl-package->ecl-package sbcl-fprog))
-
-(define-public sbcl-cambl
- (let ((commit "7016d1a98215f82605d1c158e7a16504ca1f4636")
- (revision "1"))
- (package
- (inherit sbcl-fprog)
- (name "sbcl-cambl")
- (version (git-version "4.0.0" revision commit))
(native-inputs
`(("xlunit" ,sbcl-xlunit)))
(inputs
`(("alexandria" ,sbcl-alexandria)
("cl-containers" ,sbcl-cl-containers)
("local-time" ,sbcl-local-time)
- ("periods" ,sbcl-periods)
- ("fprog" ,sbcl-fprog)))
+ ("periods" ,sbcl-periods)))
+ (arguments
+ '(#:asd-files '("fprog.asd"
+ "cambl.asd")))
(synopsis "Commoditized amounts and balances for Common Lisp")
(description
"CAMBL is a Common Lisp library providing a convenient facility for
working with commoditized values. It does not allow compound units (and so is
not suited for scientific operations) but does work rather nicely for the
-purpose of financial calculations."))))
+purpose of financial calculations.")
+ (home-page "https://github.com/jwiegley/cambl")
+ (license license:bsd-3))))
(define-public cl-cambl
(sbcl-package->cl-source-package sbcl-cambl))
@@ -6966,7 +5858,7 @@ purpose of financial calculations."))))
`(("cambl" ,sbcl-cambl)
("cl-ppcre" ,sbcl-cl-ppcre)
("local-time" ,sbcl-local-time)
- ("periods-series" ,sbcl-periods-series)))
+ ("periods" ,sbcl-periods)))
(arguments
'(#:phases
(modify-phases %standard-phases
@@ -7222,6 +6114,9 @@ of C+GObject libraries without the need of writing dedicated bindings.")
(define-public cl-gobject-introspection
(sbcl-package->cl-source-package sbcl-cl-gobject-introspection))
+(define-public ecl-cl-gobject-introspection
+ (sbcl-package->ecl-package sbcl-cl-gobject-introspection))
+
(define-public sbcl-string-case
(let ((commit "718c761e33749e297cd2809c7ba3ade1985c49f7")
(revision "0"))
@@ -7360,8 +6255,8 @@ implementation specific equivalent.")
(sbcl-package->ecl-package sbcl-trivial-macroexpand-all))
(define-public sbcl-serapeum
- (let ((commit "a2ca90cbdcb9f76c2822286110c7abe9ba5b76c2")
- (revision "2"))
+ (let ((commit "c5e352a9f04a84a93742193c01734f4fb31d9f82")
+ (revision "3"))
(package
(name "sbcl-serapeum")
(version (git-version "0.0.0" revision commit))
@@ -7375,19 +6270,18 @@ implementation specific equivalent.")
(file-name (git-file-name name version))
(sha256
(base32
- "1lrk2kf7qh5g6f8xvyg8wf89frzb5mw6m1jzgy46jy744f459i8q"))))
+ "16767pxl766c15jznr4srcbp7cnxf8w9lkyaqpp5w5crqymw84nw"))))
(build-system asdf-build-system/sbcl)
(inputs
`(("alexandria" ,sbcl-alexandria)
("trivia" ,sbcl-trivia)
- ("trivia.quasiquote" ,sbcl-trivia.quasiquote)
("split-sequence" ,sbcl-split-sequence)
("string-case" ,sbcl-string-case)
("parse-number" ,sbcl-parse-number)
("trivial-garbage" ,sbcl-trivial-garbage)
("bordeaux-threads" ,sbcl-bordeaux-threads)
("named-readtables" ,sbcl-named-readtables)
- ("fare-quasiquote-extras" ,sbcl-fare-quasiquote-extras)
+ ("fare-quasiquote" ,sbcl-fare-quasiquote)
("parse-declarations-1.0" ,sbcl-parse-declarations)
("global-vars" ,sbcl-global-vars)
("trivial-file-size" ,sbcl-trivial-file-size)
@@ -7413,6 +6307,9 @@ supplement, not a competitor, to Alexandria.")
(define-public cl-serapeum
(sbcl-package->cl-source-package sbcl-serapeum))
+(define-public ecl-serapeum
+ (sbcl-package->ecl-package sbcl-serapeum))
+
(define-public sbcl-arrows
(let ((commit "df7cf0067e0132d9697ac8b1a4f1b9c88d4f5382")
(revision "0"))
@@ -7593,11 +6490,8 @@ JSON interchange format.")
(inputs
`(("alexandria" ,sbcl-alexandria)
("iterate" ,sbcl-iterate)
- ("metabang-bind" ,sbcl-metabang-bind)))
- (propagated-inputs
- ;; Swank doesn't have a pre-compiled package, therefore we must
- ;; propagate its sources.
- `(("swank" ,cl-slime-swank)))
+ ("metabang-bind" ,sbcl-metabang-bind)
+ ("swank" ,sbcl-slime-swank)))
(arguments
'(#:phases
(modify-phases %standard-phases
@@ -7616,6 +6510,9 @@ interactive development.")
(define-public cl-stefil
(sbcl-package->cl-source-package sbcl-stefil))
+(define-public ecl-stefil
+ (sbcl-package->ecl-package sbcl-stefil))
+
(define-public sbcl-graph
(let ((commit "78bf9ec930d8eae4f0861b5be76765fb1e45e24f")
(revision "0"))
@@ -7632,19 +6529,22 @@ interactive development.")
(file-name (git-file-name name version))
(sha256
(base32
- "1qpij4xh8bqwc2myahpilcbh916v7vg0acz2fij14d3y0jm02h0g"))
- (patches (search-patches "sbcl-graph-asdf-definitions.patch"))))
+ "1qpij4xh8bqwc2myahpilcbh916v7vg0acz2fij14d3y0jm02h0g"))))
(build-system asdf-build-system/sbcl)
(native-inputs
`(("stefil" ,sbcl-stefil)))
(inputs
`(("alexandria" ,sbcl-alexandria)
("cl-heap" ,sbcl-cl-heap)
+ ("cl-ppcre" ,sbcl-cl-ppcre)
("curry-compose-reader-macros" ,sbcl-curry-compose-reader-macros)
("metabang-bind" ,sbcl-metabang-bind)
- ("named-readtables" ,sbcl-named-readtables)))
+ ("named-readtables" ,sbcl-named-readtables)
+ ("yason" ,sbcl-yason)))
(arguments
- '(#:test-asd-file "graph-test.asd"))
+ '(#:asd-systems '("graph"
+ "graph/dot"
+ "graph/json")))
(synopsis "Graph data structure and algorithms for Common Lisp")
(description
"The GRAPH Common Lisp library provides a data structures to represent
@@ -7656,39 +6556,8 @@ path, maximum flow, minimum spanning tree, etc.).")
(define-public cl-graph
(sbcl-package->cl-source-package sbcl-graph))
-(define-public sbcl-graph-dot
- (package
- (inherit sbcl-graph)
- (name "sbcl-graph-dot")
- (inputs
- `(("alexandria" ,sbcl-alexandria)
- ("cl-ppcre" ,sbcl-cl-ppcre)
- ("curry-compose-reader-macros" ,sbcl-curry-compose-reader-macros)
- ("graph" ,sbcl-graph)
- ("metabang-bind" ,sbcl-metabang-bind)
- ("named-readtables" ,sbcl-named-readtables)))
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-graph)
- ((#:asd-file _ "") "graph-dot.asd")
- ((#:asd-system-name _ #f) "graph-dot")))
- (synopsis "Serialize graphs to and from DOT format")))
-
-(define-public sbcl-graph-json
- (package
- (inherit sbcl-graph)
- (name "sbcl-graph-json")
- (inputs
- `(("alexandria" ,sbcl-alexandria)
- ("curry-compose-reader-macros" ,sbcl-curry-compose-reader-macros)
- ("graph" ,sbcl-graph)
- ("metabang-bind" ,sbcl-metabang-bind)
- ("named-readtables" ,sbcl-named-readtables)
- ("yason" ,sbcl-yason)))
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-graph)
- ((#:asd-file _ "") "graph-json.asd")
- ((#:asd-system-name _ #f) "graph-json")))
- (synopsis "Serialize graphs to and from JSON format")))
+(define-public ecl-graph
+ (sbcl-package->ecl-package sbcl-graph))
(define-public sbcl-trivial-indent
(let ((commit "2d016941751647c6cc5bd471751c2cf68861c94a")
@@ -7719,6 +6588,9 @@ results.")
(define-public cl-trivial-indent
(sbcl-package->cl-source-package sbcl-trivial-indent))
+(define-public ecl-trivial-indent
+ (sbcl-package->ecl-package sbcl-trivial-indent))
+
(define-public sbcl-documentation-utils
(let ((commit "98630dd5f7e36ae057fa09da3523f42ccb5d1f55")
(revision "0"))
@@ -7782,6 +6654,9 @@ macro. This library provides a set of simple utilities to help with that.")
(define-public cl-form-fiddle
(sbcl-package->cl-source-package sbcl-form-fiddle))
+(define-public ecl-form-fiddle
+ (sbcl-package->ecl-package sbcl-form-fiddle))
+
(define-public sbcl-parachute
(let ((commit "ca04dd8e43010a6dfffa26dbe1d62af86008d666")
(revision "0"))
@@ -7814,6 +6689,9 @@ Each test can contain a bunch of test forms that make up its body.")
(define-public cl-parachute
(sbcl-package->cl-source-package sbcl-parachute))
+(define-public ecl-parachute
+ (sbcl-package->ecl-package sbcl-parachute))
+
(define-public sbcl-array-utils
(let ((commit "f90eb9070d0b2205af51126a35033574725e5c56")
(revision "0"))
@@ -7846,6 +6724,9 @@ functions for arrays and vectors. Originally from Plump.")
(define-public cl-array-utils
(sbcl-package->cl-source-package sbcl-array-utils))
+(define-public ecl-array-utils
+ (sbcl-package->ecl-package sbcl-array-utils))
+
(define-public sbcl-plump
(let ((commit "34f890fe46efdebe7bb70d218f1937e98f632bf9")
(revision "1"))
@@ -7881,6 +6762,11 @@ your own classes.")
(define-public cl-plump
(sbcl-package->cl-source-package sbcl-plump))
+(define-public ecl-plump
+ (sbcl-package->ecl-package sbcl-plump))
+
+;;; Split the antik package in two to work around the circular dependency
+;;; between antik/antik and antik/gsll.
(define-public sbcl-antik-base
(let ((commit "e4711a69b3d6bf37b5727af05c3cfd03e8428ba3")
(revision "1"))
@@ -7900,13 +6786,31 @@ your own classes.")
(build-system asdf-build-system/sbcl)
(inputs
`(("alexandria" ,sbcl-alexandria)
+ ("cffi" ,sbcl-cffi)
("cl-ppcre" ,sbcl-cl-ppcre)
+ ("drakma" ,sbcl-drakma)
+ ("fare-utils" ,sbcl-fare-utils)
("iterate" ,sbcl-iterate)
("metabang-bind" ,sbcl-metabang-bind)
("named-readtables" ,sbcl-named-readtables)
- ("split-sequence" ,sbcl-split-sequence)))
+ ("split-sequence" ,sbcl-split-sequence)
+ ("static-vectors" ,sbcl-static-vectors)
+ ("trivial-garbage" ,sbcl-trivial-garbage)
+ ("trivial-utf-8" ,sbcl-trivial-utf-8)))
(native-inputs
`(("lisp-unit" ,sbcl-lisp-unit)))
+ (arguments
+ '(#:asd-systems '("antik-base"
+ "foreign-array")
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'fix-build
+ (lambda _
+ (for-each delete-file
+ '("antik.asd"
+ "physical-dimension.asd"
+ "science-data.asd"))
+ #t)))))
(synopsis "Scientific and engineering computation in Common Lisp")
(description
"Antik provides a foundation for scientific and engineering
@@ -7923,63 +6827,19 @@ computer known.")
(sbcl-package->cl-source-package sbcl-antik-base))
(define-public ecl-antik-base
- (sbcl-package->ecl-package sbcl-antik-base))
-
-(define-public sbcl-foreign-array
- (package
- (inherit sbcl-antik-base)
- (name "sbcl-foreign-array")
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-antik-base)
- ((#:asd-file _ "") "foreign-array.asd")
- ((#:asd-system-name _ #f) "foreign-array")))
- (inputs
- `(("antik-base" ,sbcl-antik-base)
- ("cffi" ,sbcl-cffi)
- ("trivial-garbage" ,sbcl-trivial-garbage)
- ("static-vectors" ,sbcl-static-vectors)))
- (synopsis "Common Lisp library providing access to foreign arrays")))
-
-(define-public cl-foreign-array
- (sbcl-package->cl-source-package sbcl-foreign-array))
-
-(define-public ecl-foreign-array
- (sbcl-package->ecl-package sbcl-foreign-array))
-
-(define-public sbcl-physical-dimension
- (package
- (inherit sbcl-antik-base)
- (name "sbcl-physical-dimension")
- (inputs
- `(("fare-utils" ,sbcl-fare-utils)
- ("foreign-array" ,sbcl-foreign-array)
- ("trivial-utf-8" ,sbcl-trivial-utf-8)))
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-antik-base)
- ((#:asd-file _ "") "physical-dimension.asd")
- ((#:asd-system-name _ #f) "physical-dimension")))
- (synopsis
- "Common Lisp library providing computations with physical units")))
-
-(define-public cl-physical-dimension
- (sbcl-package->cl-source-package sbcl-physical-dimension))
-
-(define-public sbcl-science-data
- (package
- (inherit sbcl-antik-base)
- (name "sbcl-science-data")
- (inputs
- `(("physical-dimension" ,sbcl-physical-dimension)
- ("drakma" ,sbcl-drakma)))
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-antik-base)
- ((#:asd-file _ "") "science-data.asd")
- ((#:asd-system-name _ #f) "science-data")))
- (synopsis
- "Common Lisp library for scientific and engineering numerical data")))
-
-(define-public cl-science-data
- (sbcl-package->cl-source-package sbcl-science-data))
+ (let ((pkg (sbcl-package->ecl-package sbcl-antik-base)))
+ (package
+ (inherit pkg)
+ (arguments
+ (substitute-keyword-arguments (package-arguments pkg)
+ ((#:phases phases)
+ `(modify-phases ,phases
+ (add-after 'unpack 'fix-readtable
+ (lambda _
+ (substitute* "input-output/readtable.lisp"
+ (("#-ccl")
+ "#-(or ccl ecl)"))
+ #t)))))))))
(define-public sbcl-gsll
(let ((commit "1a8ada22f9cf5ed7372d352b2317f4ccdb6ab308")
@@ -8002,9 +6862,8 @@ computer known.")
`(("lisp-unit" ,sbcl-lisp-unit)))
(inputs
`(("alexandria" ,sbcl-alexandria)
- ("cffi-grovel" ,sbcl-cffi-grovel)
- ("cffi-libffi" ,sbcl-cffi-libffi)
- ("foreign-array" ,sbcl-foreign-array)
+ ("antik-base" ,sbcl-antik-base)
+ ("cffi" ,sbcl-cffi)
("gsl" ,gsl)
("metabang-bind" ,sbcl-metabang-bind)
("trivial-features" ,sbcl-trivial-features)
@@ -8043,17 +6902,27 @@ intending to program in Lisp.")
(define-public cl-gsll
(sbcl-package->cl-source-package sbcl-gsll))
+(define-public ecl-gsll
+ (sbcl-package->ecl-package sbcl-gsll))
+
(define-public sbcl-antik
(package
(inherit sbcl-antik-base)
(name "sbcl-antik")
(inputs
- `(("gsll" ,sbcl-gsll)
- ("physical-dimension" ,sbcl-physical-dimension)))
+ `(("antik-base" ,sbcl-antik-base)
+ ("gsll" ,sbcl-gsll)))
(arguments
- (substitute-keyword-arguments (package-arguments sbcl-antik-base)
- ((#:asd-file _ "") "antik.asd")
- ((#:asd-system-name _ #f) "antik")))))
+ '(#:asd-systems '("antik"
+ "science-data")
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'fix-build
+ (lambda _
+ (for-each delete-file
+ '("antik-base.asd"
+ "foreign-array.asd"))
+ #t)))))))
(define-public cl-antik
(sbcl-package->cl-source-package sbcl-antik))
@@ -8096,13 +6965,11 @@ doesn't support them.")
(define-public ecl-cl-interpol
(sbcl-package->ecl-package sbcl-cl-interpol))
-(define sbcl-symbol-munger-boot0
- ;; There is a cyclical dependency between symbol-munger and lisp-unit2.
- ;; See https://github.com/AccelerationNet/symbol-munger/issues/4
- (let ((commit "cc2bb4b7acd454d756484aec81ba487648385fc3")
+(define-public sbcl-symbol-munger
+ (let ((commit "97598d4c3c53fd5da72ab78908fbd5d8c7a13416")
(revision "1"))
(package
- (name "sbcl-symbol-munger-boot0")
+ (name "sbcl-symbol-munger")
(version (git-version "0.0.1" revision commit))
(source
(origin
@@ -8113,16 +6980,15 @@ doesn't support them.")
(file-name (git-file-name name version))
(sha256
(base32
- "0diav5ricqsybqvbp4bkxyj3bn3v9n7xb2pqqc4vg1algsw2pyjl"))))
+ "0y8jywjy0ldyhp7bxf16fdvdd2qgqnd7nlhlqfpfnzxcqk4xy1km"))))
(build-system asdf-build-system/sbcl)
- (arguments
- `(#:asd-file "symbol-munger.asd"
- #:asd-system-name "symbol-munger"))
(inputs
- `(("iterate" ,sbcl-iterate)
- ("alexandria" ,sbcl-alexandria)))
- (native-inputs
- `(("lisp-unit" ,sbcl-lisp-unit)))
+ `(("alexandria" ,sbcl-alexandria)
+ ("iterate" ,sbcl-iterate)))
+ (arguments
+ ;; There is a cyclical dependency between symbol-munger and lisp-unit2.
+ ;; See https://github.com/AccelerationNet/symbol-munger/issues/4
+ '(#:tests? #f))
(synopsis
"Capitalization and spacing conversion functions for Common Lisp")
(description
@@ -8135,13 +7001,19 @@ and camel-case rules.")
;; See https://github.com/AccelerationNet/symbol-munger/issues/5
(license license:expat))))
-(define sbcl-lisp-unit2-boot0
+(define-public cl-symbol-munger
+ (sbcl-package->cl-source-package sbcl-symbol-munger))
+
+(define-public ecl-symbol-munger
+ (sbcl-package->ecl-package sbcl-symbol-munger))
+
+(define-public sbcl-lisp-unit2
;; There is a cyclical dependency between symbol-munger and lisp-unit2.
;; See https://github.com/AccelerationNet/symbol-munger/issues/4
(let ((commit "fb9721524d1e4e73abb223ee036d74ce14a5505c")
(revision "1"))
(package
- (name "sbcl-lisp-unit2-boot0")
+ (name "sbcl-lisp-unit2")
(version (git-version "0.2.0" revision commit))
(source
(origin
@@ -8154,14 +7026,11 @@ and camel-case rules.")
(base32
"1rsqy8y0jqll6xn9a593848f5wvd5ribv4csry1ly0hmdhfnqzlp"))))
(build-system asdf-build-system/sbcl)
- (arguments
- `(#:asd-file "lisp-unit2.asd"
- #:asd-system-name "lisp-unit2"))
(inputs
`(("alexandria" ,sbcl-alexandria)
("cl-interpol" ,sbcl-cl-interpol)
("iterate" ,sbcl-iterate)
- ("symbol-munger-boot0" ,sbcl-symbol-munger-boot0)))
+ ("symbol-munger" ,sbcl-symbol-munger)))
(synopsis "Test Framework for Common Lisp")
(description
"LISP-UNIT2 is a Common Lisp library that supports unit testing in the
@@ -8170,56 +7039,6 @@ by Chris Riesbeck.")
(home-page "https://github.com/AccelerationNet/lisp-unit2")
(license license:expat))))
-(define-public sbcl-symbol-munger
- (let ((commit "97598d4c3c53fd5da72ab78908fbd5d8c7a13416")
- (revision "1"))
- (package
- (name "sbcl-symbol-munger")
- (version (git-version "0.0.1" revision commit))
- (source
- (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/AccelerationNet/symbol-munger")
- (commit commit)))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "0y8jywjy0ldyhp7bxf16fdvdd2qgqnd7nlhlqfpfnzxcqk4xy1km"))))
- (build-system asdf-build-system/sbcl)
- (inputs
- `(("alexandria" ,sbcl-alexandria)
- ("iterate" ,sbcl-iterate)))
- (native-inputs
- `(("lisp-unit2-boot0" ,sbcl-lisp-unit2-boot0)))
- (synopsis
- "Capitalization and spacing conversion functions for Common Lisp")
- (description
- "This is a Common Lisp library to change the capitalization and spacing
-of a string or a symbol. It can convert to and from Lisp, english, underscore
-and camel-case rules.")
- (home-page "https://github.com/AccelerationNet/symbol-munger")
- ;; The package declares a BSD license, but all of the license
- ;; text is MIT.
- ;; See https://github.com/AccelerationNet/symbol-munger/issues/5
- (license license:expat))))
-
-(define-public cl-symbol-munger
- (sbcl-package->cl-source-package sbcl-symbol-munger))
-
-(define-public ecl-symbol-munger
- (sbcl-package->ecl-package sbcl-symbol-munger))
-
-(define-public sbcl-lisp-unit2
- (package
- (inherit sbcl-lisp-unit2-boot0)
- (name "sbcl-lisp-unit2")
- (inputs
- `(("alexandria" ,sbcl-alexandria)
- ("cl-interpol" ,sbcl-cl-interpol)
- ("iterate" ,sbcl-iterate)
- ("symbol-munger" ,sbcl-symbol-munger)))))
-
(define-public cl-lisp-unit2
(sbcl-package->cl-source-package sbcl-lisp-unit2))
@@ -8301,11 +7120,11 @@ sacrificing much in the way of power.")
(define-public ecl-external-program
(sbcl-package->ecl-package sbcl-external-program))
-(define sbcl-cl-ana-boot0
+(define-public sbcl-cl-ana
(let ((commit "fa7cee4c50aa1c859652813049ba0da7c18a0df9")
(revision "1"))
(package
- (name "sbcl-cl-ana-boot0")
+ (name "sbcl-cl-ana")
(version (git-version "0.0.0" revision commit))
(source
(origin
@@ -8315,9 +7134,38 @@ sacrificing much in the way of power.")
(commit commit)))
(file-name (git-file-name name version))
(sha256
- (base32
- "0mr47l57m276dbpap7irr4fcnk5fgknhf6mgv4043s8h73amk5qh"))))
+ (base32 "0mr47l57m276dbpap7irr4fcnk5fgknhf6mgv4043s8h73amk5qh"))))
(build-system asdf-build-system/sbcl)
+ (native-inputs
+ `(("cl-fad" ,sbcl-cl-fad)))
+ (inputs
+ `(("alexandria" ,sbcl-alexandria)
+ ("antik" ,sbcl-antik)
+ ("cffi" ,sbcl-cffi)
+ ("cl-csv" ,sbcl-cl-csv)
+ ("closer-mop" ,sbcl-closer-mop)
+ ("external-program" ,sbcl-external-program)
+ ("gsl" ,gsl)
+ ("gsll" ,sbcl-gsll)
+ ("hdf5" ,hdf5-parallel-openmpi)
+ ("iterate" ,sbcl-iterate)
+ ("libffi" ,libffi)
+ ("split-sequence" ,sbcl-split-sequence)))
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'fix-paths
+ (lambda* (#:key inputs #:allow-other-keys)
+ (substitute* "hdf-cffi/hdf-cffi.lisp"
+ (("/usr/lib/i386-linux-gnu/hdf5/serial/libhdf5.so")
+ (string-append (assoc-ref inputs "hdf5")
+ "/lib/libhdf5.so")))
+ (substitute* "gsl-cffi/gsl-cffi.lisp"
+ (("define-foreign-library gsl-cffi" all)
+ (string-append all " (:unix "
+ (assoc-ref inputs "gsl")
+ "/lib/libgsl.so)")))
+ #t)))))
(synopsis "Common Lisp data analysis library")
(description
"CL-ANA is a data analysis library in Common Lisp providing tabular and
@@ -8326,1060 +7174,6 @@ visualization.")
(home-page "https://github.com/ghollisjr/cl-ana")
(license license:gpl3))))
-(define-public sbcl-cl-ana.pathname-utils
- (package
- (inherit sbcl-cl-ana-boot0)
- (name "sbcl-cl-ana.pathname-utils")
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-cl-ana-boot0)
- ((#:asd-file _ "") "pathname-utils/cl-ana.pathname-utils.asd")
- ((#:asd-system-name _ #f) "cl-ana.pathname-utils")))))
-
-(define-public cl-ana.pathname-utils
- (sbcl-package->cl-source-package sbcl-cl-ana.pathname-utils))
-
-(define-public ecl-cl-ana.pathname-utils
- (sbcl-package->ecl-package sbcl-cl-ana.pathname-utils))
-
-(define-public sbcl-cl-ana.package-utils
- (package
- (inherit sbcl-cl-ana-boot0)
- (name "sbcl-cl-ana.package-utils")
- (inputs
- `(("alexandria" ,sbcl-alexandria)))
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-cl-ana-boot0)
- ((#:asd-file _ "") "package-utils/cl-ana.package-utils.asd")
- ((#:asd-system-name _ #f) "cl-ana.package-utils")))))
-
-(define-public cl-ana.package-utils
- (sbcl-package->cl-source-package sbcl-cl-ana.package-utils))
-
-(define-public ecl-cl-ana.package-utils
- (sbcl-package->ecl-package sbcl-cl-ana.package-utils))
-
-(define-public sbcl-cl-ana.string-utils
- (package
- (inherit sbcl-cl-ana-boot0)
- (name "sbcl-cl-ana.string-utils")
- (inputs
- `(("split-sequence" ,sbcl-split-sequence)))
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-cl-ana-boot0)
- ((#:asd-file _ "") "string-utils/cl-ana.string-utils.asd")
- ((#:asd-system-name _ #f) "cl-ana.string-utils")))))
-
-(define-public cl-ana.string-utils
- (sbcl-package->cl-source-package sbcl-cl-ana.string-utils))
-
-(define-public ecl-cl-ana.string-utils
- (sbcl-package->ecl-package sbcl-cl-ana.string-utils))
-
-(define-public sbcl-cl-ana.functional-utils
- (package
- (inherit sbcl-cl-ana-boot0)
- (name "sbcl-cl-ana.functional-utils")
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-cl-ana-boot0)
- ((#:asd-file _ "") "functional-utils/cl-ana.functional-utils.asd")
- ((#:asd-system-name _ #f) "cl-ana.functional-utils")))))
-
-(define-public cl-ana.functional-utils
- (sbcl-package->cl-source-package sbcl-cl-ana.functional-utils))
-
-(define-public ecl-cl-ana.functional-utils
- (sbcl-package->ecl-package sbcl-cl-ana.functional-utils))
-
-(define-public sbcl-cl-ana.list-utils
- (package
- (inherit sbcl-cl-ana-boot0)
- (name "sbcl-cl-ana.list-utils")
- (inputs
- `(("alexandria" ,sbcl-alexandria)
- ("cl-ana.functional-utils" ,sbcl-cl-ana.functional-utils)
- ("cl-ana.string-utils" ,sbcl-cl-ana.string-utils)))
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-cl-ana-boot0)
- ((#:asd-file _ "") "list-utils/cl-ana.list-utils.asd")
- ((#:asd-system-name _ #f) "cl-ana.list-utils")))))
-
-(define-public cl-ana.list-utils
- (sbcl-package->cl-source-package sbcl-cl-ana.list-utils))
-
-(define-public ecl-cl-ana.list-utils
- (sbcl-package->ecl-package sbcl-cl-ana.list-utils))
-
-(define-public sbcl-cl-ana.generic-math
- (package
- (inherit sbcl-cl-ana-boot0)
- (name "sbcl-cl-ana.generic-math")
- (inputs
- `(("cl-ana.list-utils" ,sbcl-cl-ana.list-utils)
- ("cl-ana.package-utils" ,sbcl-cl-ana.package-utils)))
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-cl-ana-boot0)
- ((#:asd-file _ "") "generic-math/cl-ana.generic-math.asd")
- ((#:asd-system-name _ #f) "cl-ana.generic-math")))))
-
-(define-public cl-ana.generic-math
- (sbcl-package->cl-source-package sbcl-cl-ana.generic-math))
-
-(define-public ecl-cl-ana.generic-math
- (sbcl-package->ecl-package sbcl-cl-ana.generic-math))
-
-(define-public sbcl-cl-ana.math-functions
- (package
- (inherit sbcl-cl-ana-boot0)
- (name "sbcl-cl-ana.math-functions")
- (inputs
- `(("cl-ana.generic-math" ,sbcl-cl-ana.generic-math)
- ("gsll" ,sbcl-gsll)))
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-cl-ana-boot0)
- ((#:asd-file _ "") "math-functions/cl-ana.math-functions.asd")
- ((#:asd-system-name _ #f) "cl-ana.math-functions")))))
-
-(define-public cl-ana.math-functions
- (sbcl-package->cl-source-package sbcl-cl-ana.math-functions))
-
-(define-public sbcl-cl-ana.calculus
- (package
- (inherit sbcl-cl-ana-boot0)
- (name "sbcl-cl-ana.calculus")
- (inputs
- `(("cl-ana.generic-math" ,sbcl-cl-ana.generic-math)))
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-cl-ana-boot0)
- ((#:asd-file _ "") "calculus/cl-ana.calculus.asd")
- ((#:asd-system-name _ #f) "cl-ana.calculus")))))
-
-(define-public cl-ana.calculus
- (sbcl-package->cl-source-package sbcl-cl-ana.calculus))
-
-(define-public ecl-cl-ana.calculus
- (sbcl-package->ecl-package sbcl-cl-ana.calculus))
-
-(define-public sbcl-cl-ana.symbol-utils
- (package
- (inherit sbcl-cl-ana-boot0)
- (name "sbcl-cl-ana.symbol-utils")
- (inputs
- `(("cl-ana.list-utils" ,sbcl-cl-ana.list-utils)))
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-cl-ana-boot0)
- ((#:asd-file _ "") "symbol-utils/cl-ana.symbol-utils.asd")
- ((#:asd-system-name _ #f) "cl-ana.symbol-utils")))))
-
-(define-public cl-ana.symbol-utils
- (sbcl-package->cl-source-package sbcl-cl-ana.symbol-utils))
-
-(define-public ecl-cl-ana.symbol-utils
- (sbcl-package->ecl-package sbcl-cl-ana.symbol-utils))
-
-(define-public sbcl-cl-ana.macro-utils
- (package
- (inherit sbcl-cl-ana-boot0)
- (name "sbcl-cl-ana.macro-utils")
- (inputs
- `(("alexandria" ,sbcl-alexandria)
- ("cl-ana.list-utils" ,sbcl-cl-ana.list-utils)
- ("cl-ana.string-utils" ,sbcl-cl-ana.string-utils)
- ("cl-ana.symbol-utils" ,sbcl-cl-ana.symbol-utils)
- ("split-sequence" ,sbcl-split-sequence)))
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-cl-ana-boot0)
- ((#:asd-file _ "") "macro-utils/cl-ana.macro-utils.asd")
- ((#:asd-system-name _ #f) "cl-ana.macro-utils")))))
-
-(define-public cl-ana.macro-utils
- (sbcl-package->cl-source-package sbcl-cl-ana.macro-utils))
-
-(define-public ecl-cl-ana.macro-utils
- (sbcl-package->ecl-package sbcl-cl-ana.macro-utils))
-
-(define-public sbcl-cl-ana.binary-tree
- (package
- (inherit sbcl-cl-ana-boot0)
- (name "sbcl-cl-ana.binary-tree")
- (inputs
- `(("cl-ana.functional-utils" ,sbcl-cl-ana.functional-utils)
- ("cl-ana.list-utils" ,sbcl-cl-ana.list-utils)
- ("cl-ana.macro-utils" ,sbcl-cl-ana.macro-utils)))
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-cl-ana-boot0)
- ((#:asd-file _ "") "binary-tree/cl-ana.binary-tree.asd")
- ((#:asd-system-name _ #f) "cl-ana.binary-tree")))))
-
-(define-public cl-ana.binary-tree
- (sbcl-package->cl-source-package sbcl-cl-ana.binary-tree))
-
-(define-public ecl-cl-ana.binary-tree
- (sbcl-package->ecl-package sbcl-cl-ana.binary-tree))
-
-(define-public sbcl-cl-ana.tensor
- (package
- (inherit sbcl-cl-ana-boot0)
- (name "sbcl-cl-ana.tensor")
- (inputs
- `(("alexandria" ,sbcl-alexandria)
- ("cl-ana.generic-math" ,sbcl-cl-ana.generic-math)
- ("cl-ana.list-utils" ,sbcl-cl-ana.list-utils)
- ("cl-ana.macro-utils" ,sbcl-cl-ana.macro-utils)
- ("cl-ana.symbol-utils" ,sbcl-cl-ana.symbol-utils)))
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-cl-ana-boot0)
- ((#:asd-file _ "") "tensor/cl-ana.tensor.asd")
- ((#:asd-system-name _ #f) "cl-ana.tensor")))))
-
-(define-public cl-ana.tensor
- (sbcl-package->cl-source-package sbcl-cl-ana.tensor))
-
-(define-public ecl-cl-ana.tensor
- (sbcl-package->ecl-package sbcl-cl-ana.tensor))
-
-(define-public sbcl-cl-ana.error-propogation
- (package
- (inherit sbcl-cl-ana-boot0)
- (name "sbcl-cl-ana.error-propogation")
- (inputs
- `(("cl-ana.generic-math" ,sbcl-cl-ana.generic-math)
- ("cl-ana.math-functions" ,sbcl-cl-ana.math-functions)))
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-cl-ana-boot0)
- ((#:asd-file _ "") "error-propogation/cl-ana.error-propogation.asd")
- ((#:asd-system-name _ #f) "cl-ana.error-propogation")))))
-
-(define-public cl-ana.error-propogation
- (sbcl-package->cl-source-package sbcl-cl-ana.error-propogation))
-
-(define-public sbcl-cl-ana.quantity
- (package
- (inherit sbcl-cl-ana-boot0)
- (name "sbcl-cl-ana.quantity")
- (inputs
- `(("alexandria" ,sbcl-alexandria)
- ("cl-ana.error-propogation" ,sbcl-cl-ana.error-propogation)
- ("cl-ana.generic-math" ,sbcl-cl-ana.generic-math)
- ("cl-ana.list-utils" ,sbcl-cl-ana.list-utils)
- ("cl-ana.macro-utils" ,sbcl-cl-ana.macro-utils)
- ("cl-ana.symbol-utils" ,sbcl-cl-ana.symbol-utils)))
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-cl-ana-boot0)
- ((#:asd-file _ "") "quantity/cl-ana.quantity.asd")
- ((#:asd-system-name _ #f) "cl-ana.quantity")))))
-
-(define-public cl-ana.quantity
- (sbcl-package->cl-source-package sbcl-cl-ana.quantity))
-
-(define-public sbcl-cl-ana.table
- (package
- (inherit sbcl-cl-ana-boot0)
- (name "sbcl-cl-ana.table")
- (inputs
- `(("alexandria" ,sbcl-alexandria)
- ("cl-ana.functional-utils" ,sbcl-cl-ana.functional-utils)
- ("cl-ana.list-utils" ,sbcl-cl-ana.list-utils)
- ("cl-ana.macro-utils" ,sbcl-cl-ana.macro-utils)
- ("cl-ana.string-utils" ,sbcl-cl-ana.string-utils)
- ("cl-ana.symbol-utils" ,sbcl-cl-ana.symbol-utils)))
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-cl-ana-boot0)
- ((#:asd-file _ "") "table/cl-ana.table.asd")
- ((#:asd-system-name _ #f) "cl-ana.table")))))
-
-(define-public cl-ana.table
- (sbcl-package->cl-source-package sbcl-cl-ana.table))
-
-(define-public ecl-cl-ana.table
- (sbcl-package->ecl-package sbcl-cl-ana.table))
-
-(define-public sbcl-cl-ana.table-utils
- (package
- (inherit sbcl-cl-ana-boot0)
- (name "sbcl-cl-ana.table-utils")
- (inputs
- `(("cl-ana.string-utils" ,sbcl-cl-ana.string-utils)
- ("cl-ana.symbol-utils" ,sbcl-cl-ana.symbol-utils)
- ("cl-ana.table" ,sbcl-cl-ana.table)))
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-cl-ana-boot0)
- ((#:asd-file _ "") "table-utils/cl-ana.table-utils.asd")
- ((#:asd-system-name _ #f) "cl-ana.table-utils")))))
-
-(define-public cl-ana.table-utils
- (sbcl-package->cl-source-package sbcl-cl-ana.table-utils))
-
-(define-public ecl-cl-ana.table-utils
- (sbcl-package->ecl-package sbcl-cl-ana.table-utils))
-
-(define-public sbcl-cl-ana.hdf-cffi
- (package
- (inherit sbcl-cl-ana-boot0)
- (name "sbcl-cl-ana.hdf-cffi")
- (inputs
- `(("cffi" ,sbcl-cffi)
- ("hdf5" ,hdf5-parallel-openmpi)))
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-cl-ana-boot0)
- ((#:asd-file _ "") "hdf-cffi/cl-ana.hdf-cffi.asd")
- ((#:asd-system-name _ #f) "cl-ana.hdf-cffi")
- ((#:phases phases '%standard-phases)
- `(modify-phases ,phases
- (add-after 'unpack 'fix-paths
- (lambda* (#:key inputs #:allow-other-keys)
- (substitute* "hdf-cffi/hdf-cffi.lisp"
- (("/usr/lib/i386-linux-gnu/hdf5/serial/libhdf5.so")
- (string-append
- (assoc-ref inputs "hdf5")
- "/lib/libhdf5.so")))))))))))
-
-(define-public cl-ana.hdf-cffi
- (sbcl-package->cl-source-package sbcl-cl-ana.hdf-cffi))
-
-(define-public ecl-cl-ana.hdf-cffi
- (sbcl-package->ecl-package sbcl-cl-ana.hdf-cffi))
-
-(define-public sbcl-cl-ana.int-char
- (package
- (inherit sbcl-cl-ana-boot0)
- (name "sbcl-cl-ana.int-char")
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-cl-ana-boot0)
- ((#:asd-file _ "") "int-char/cl-ana.int-char.asd")
- ((#:asd-system-name _ #f) "cl-ana.int-char")))))
-
-(define-public cl-ana.int-char
- (sbcl-package->cl-source-package sbcl-cl-ana.int-char))
-
-(define-public ecl-cl-ana.int-char
- (sbcl-package->ecl-package sbcl-cl-ana.int-char))
-
-(define-public sbcl-cl-ana.memoization
- (package
- (inherit sbcl-cl-ana-boot0)
- (name "sbcl-cl-ana.memoization")
- (inputs
- `(("alexandria" ,sbcl-alexandria)))
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-cl-ana-boot0)
- ((#:asd-file _ "") "memoization/cl-ana.memoization.asd")
- ((#:asd-system-name _ #f) "cl-ana.memoization")))))
-
-(define-public cl-ana.memoization
- (sbcl-package->cl-source-package sbcl-cl-ana.memoization))
-
-(define-public ecl-cl-ana.memoization
- (sbcl-package->ecl-package sbcl-cl-ana.memoization))
-
-(define-public sbcl-cl-ana.typespec
- (package
- (inherit sbcl-cl-ana-boot0)
- (name "sbcl-cl-ana.typespec")
- (inputs
- `(("alexandria" ,sbcl-alexandria)
- ("cffi" ,sbcl-cffi)
- ("cl-ana.int-char" ,sbcl-cl-ana.int-char)
- ("cl-ana.list-utils" ,sbcl-cl-ana.list-utils)
- ("cl-ana.memoization" ,sbcl-cl-ana.memoization)
- ("cl-ana.string-utils" ,sbcl-cl-ana.string-utils)
- ("cl-ana.symbol-utils" ,sbcl-cl-ana.symbol-utils)
- ("cl-ana.tensor" ,sbcl-cl-ana.tensor)))
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-cl-ana-boot0)
- ((#:asd-file _ "") "typespec/cl-ana.typespec.asd")
- ((#:asd-system-name _ #f) "cl-ana.typespec")))))
-
-(define-public cl-ana.typespec
- (sbcl-package->cl-source-package sbcl-cl-ana.typespec))
-
-(define-public ecl-cl-ana.typespec
- (sbcl-package->ecl-package sbcl-cl-ana.typespec))
-
-(define-public sbcl-cl-ana.hdf-typespec
- (package
- (inherit sbcl-cl-ana-boot0)
- (name "sbcl-cl-ana.hdf-typespec")
- (inputs
- `(("alexandria" ,sbcl-alexandria)
- ("cffi" ,sbcl-cffi)
- ("cl-ana.hdf-cffi" ,sbcl-cl-ana.hdf-cffi)
- ("cl-ana.list-utils" ,sbcl-cl-ana.list-utils)
- ("cl-ana.memoization" ,sbcl-cl-ana.memoization)
- ("cl-ana.string-utils" ,sbcl-cl-ana.string-utils)
- ("cl-ana.symbol-utils" ,sbcl-cl-ana.symbol-utils)
- ("cl-ana.typespec" ,sbcl-cl-ana.typespec)))
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-cl-ana-boot0)
- ((#:asd-file _ "") "hdf-typespec/cl-ana.hdf-typespec.asd")
- ((#:asd-system-name _ #f) "cl-ana.hdf-typespec")))))
-
-(define-public cl-ana.hdf-typespec
- (sbcl-package->cl-source-package sbcl-cl-ana.hdf-typespec))
-
-(define-public ecl-cl-ana.hdf-typespec
- (sbcl-package->ecl-package sbcl-cl-ana.hdf-typespec))
-
-(define-public sbcl-cl-ana.hdf-utils
- (package
- (inherit sbcl-cl-ana-boot0)
- (name "sbcl-cl-ana.hdf-utils")
- (inputs
- `(("alexandria" ,sbcl-alexandria)
- ("cffi" ,sbcl-cffi)
- ("cl-ana.hdf-cffi" ,sbcl-cl-ana.hdf-cffi)
- ("cl-ana.hdf-typespec" ,sbcl-cl-ana.hdf-typespec)
- ("cl-ana.macro-utils" ,sbcl-cl-ana.macro-utils)
- ("cl-ana.memoization" ,sbcl-cl-ana.memoization)
- ("cl-ana.pathname-utils" ,sbcl-cl-ana.pathname-utils)
- ("cl-ana.string-utils" ,sbcl-cl-ana.string-utils)
- ("cl-ana.typespec" ,sbcl-cl-ana.typespec)))
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-cl-ana-boot0)
- ((#:asd-file _ "") "hdf-utils/cl-ana.hdf-utils.asd")
- ((#:asd-system-name _ #f) "cl-ana.hdf-utils")))))
-
-(define-public cl-ana.hdf-utils
- (sbcl-package->cl-source-package sbcl-cl-ana.hdf-utils))
-
-(define-public ecl-cl-ana.hdf-utils
- (sbcl-package->ecl-package sbcl-cl-ana.hdf-utils))
-
-(define-public sbcl-cl-ana.typed-table
- (package
- (inherit sbcl-cl-ana-boot0)
- (name "sbcl-cl-ana.typed-table")
- (inputs
- `(("alexandria" ,sbcl-alexandria)
- ("cl-ana.list-utils" ,sbcl-cl-ana.list-utils)
- ("cl-ana.string-utils" ,sbcl-cl-ana.string-utils)
- ("cl-ana.symbol-utils" ,sbcl-cl-ana.symbol-utils)
- ("cl-ana.table" ,sbcl-cl-ana.table)
- ("cl-ana.typespec" ,sbcl-cl-ana.typespec)))
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-cl-ana-boot0)
- ((#:asd-file _ "") "typed-table/cl-ana.typed-table.asd")
- ((#:asd-system-name _ #f) "cl-ana.typed-table")))))
-
-(define-public cl-ana.typed-table
- (sbcl-package->cl-source-package sbcl-cl-ana.typed-table))
-
-(define-public ecl-cl-ana.typed-table
- (sbcl-package->ecl-package sbcl-cl-ana.typed-table))
-
-(define-public sbcl-cl-ana.hdf-table
- (package
- (inherit sbcl-cl-ana-boot0)
- (name "sbcl-cl-ana.hdf-table")
- (inputs
- `(("alexandria" ,sbcl-alexandria)
- ("cl-ana.binary-tree" ,sbcl-cl-ana.binary-tree)
- ("cl-ana.hdf-cffi" ,sbcl-cl-ana.hdf-cffi)
- ("cl-ana.hdf-typespec" ,sbcl-cl-ana.hdf-typespec)
- ("cl-ana.hdf-utils" ,sbcl-cl-ana.hdf-utils)
- ("cl-ana.list-utils" ,sbcl-cl-ana.list-utils)
- ("cl-ana.memoization" ,sbcl-cl-ana.memoization)
- ("cl-ana.table" ,sbcl-cl-ana.table)
- ("cl-ana.typed-table" ,sbcl-cl-ana.typed-table)
- ("cl-ana.typespec" ,sbcl-cl-ana.typespec)))
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-cl-ana-boot0)
- ((#:asd-file _ "") "hdf-table/cl-ana.hdf-table.asd")
- ((#:asd-system-name _ #f) "cl-ana.hdf-table")))))
-
-(define-public cl-ana.hdf-table
- (sbcl-package->cl-source-package sbcl-cl-ana.hdf-table))
-
-(define-public ecl-cl-ana.hdf-table
- (sbcl-package->ecl-package sbcl-cl-ana.hdf-table))
-
-(define-public sbcl-cl-ana.gsl-cffi
- (package
- (inherit sbcl-cl-ana-boot0)
- (name "sbcl-cl-ana.gsl-cffi")
- (inputs
- `(("cffi" ,sbcl-cffi)
- ("gsl" ,gsl)))
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-cl-ana-boot0)
- ((#:asd-file _ "") "gsl-cffi/cl-ana.gsl-cffi.asd")
- ((#:asd-system-name _ #f) "cl-ana.gsl-cffi")
- ((#:phases phases '%standard-phases)
- `(modify-phases ,phases
- (add-after 'unpack 'fix-paths
- (lambda* (#:key inputs #:allow-other-keys)
- (substitute* "gsl-cffi/gsl-cffi.lisp"
- (("define-foreign-library gsl-cffi" all)
- (string-append all " (:unix "
- (assoc-ref inputs "gsl")
- "/lib/libgsl.so)")))))))))))
-
-(define-public cl-ana.gsl-cffi
- (sbcl-package->cl-source-package sbcl-cl-ana.gsl-cffi))
-
-(define-public ecl-cl-ana.gsl-cffi
- (sbcl-package->ecl-package sbcl-cl-ana.gsl-cffi))
-
-(define-public sbcl-cl-ana.ntuple-table
- (package
- (inherit sbcl-cl-ana-boot0)
- (name "sbcl-cl-ana.ntuple-table")
- (inputs
- `(("alexandria" ,sbcl-alexandria)
- ("cffi" ,sbcl-cffi)
- ("cl-ana.gsl-cffi" ,sbcl-cl-ana.gsl-cffi)
- ("cl-ana.list-utils" ,sbcl-cl-ana.list-utils)
- ("cl-ana.table" ,sbcl-cl-ana.table)
- ("cl-ana.typed-table" ,sbcl-cl-ana.typed-table)
- ("cl-ana.typespec" ,sbcl-cl-ana.typespec)
- ("gsll" ,sbcl-gsll)))
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-cl-ana-boot0)
- ((#:asd-file _ "") "ntuple-table/cl-ana.ntuple-table.asd")
- ((#:asd-system-name _ #f) "cl-ana.ntuple-table")))))
-
-(define-public cl-ana.ntuple-table
- (sbcl-package->cl-source-package sbcl-cl-ana.ntuple-table))
-
-(define-public sbcl-cl-ana.csv-table
- (package
- (inherit sbcl-cl-ana-boot0)
- (name "sbcl-cl-ana.csv-table")
- (inputs
- `(("alexandria" ,sbcl-alexandria)
- ("antik" ,sbcl-antik)
- ("cl-ana.list-utils" ,sbcl-cl-ana.list-utils)
- ("cl-ana.table" ,sbcl-cl-ana.table)
- ("cl-csv" ,sbcl-cl-csv)
- ("iterate" ,sbcl-iterate)))
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-cl-ana-boot0)
- ((#:asd-file _ "") "csv-table/cl-ana.csv-table.asd")
- ((#:asd-system-name _ #f) "cl-ana.csv-table")))))
-
-(define-public cl-ana.csv-table
- (sbcl-package->cl-source-package sbcl-cl-ana.csv-table))
-
-(define-public sbcl-cl-ana.reusable-table
- (package
- (inherit sbcl-cl-ana-boot0)
- (name "sbcl-cl-ana.reusable-table")
- (inputs
- `(("alexandria" ,sbcl-alexandria)
- ("cl-ana.table" ,sbcl-cl-ana.table)))
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-cl-ana-boot0)
- ((#:asd-file _ "") "reusable-table/cl-ana.reusable-table.asd")
- ((#:asd-system-name _ #f) "cl-ana.reusable-table")))))
-
-(define-public cl-ana.reusable-table
- (sbcl-package->cl-source-package sbcl-cl-ana.reusable-table))
-
-(define-public ecl-cl-ana.reusable-table
- (sbcl-package->ecl-package sbcl-cl-ana.reusable-table))
-
-(define-public sbcl-cl-ana.linear-algebra
- (package
- (inherit sbcl-cl-ana-boot0)
- (name "sbcl-cl-ana.linear-algebra")
- (inputs
- `(("cl-ana.generic-math" ,sbcl-cl-ana.generic-math)
- ("cl-ana.list-utils" ,sbcl-cl-ana.list-utils)
- ("cl-ana.math-functions" ,sbcl-cl-ana.math-functions)
- ("cl-ana.tensor" ,sbcl-cl-ana.tensor)
- ("gsll" ,sbcl-gsll)))
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-cl-ana-boot0)
- ((#:asd-file _ "") "linear-algebra/cl-ana.linear-algebra.asd")
- ((#:asd-system-name _ #f) "cl-ana.linear-algebra")))))
-
-(define-public cl-ana.linear-algebra
- (sbcl-package->cl-source-package sbcl-cl-ana.linear-algebra))
-
-(define-public sbcl-cl-ana.lorentz
- (package
- (inherit sbcl-cl-ana-boot0)
- (name "sbcl-cl-ana.lorentz")
- (inputs
- `(("cl-ana.generic-math" ,sbcl-cl-ana.generic-math)
- ("cl-ana.linear-algebra" ,sbcl-cl-ana.linear-algebra)
- ("cl-ana.tensor" ,sbcl-cl-ana.tensor)
- ("iterate" ,sbcl-iterate)))
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-cl-ana-boot0)
- ((#:asd-file _ "") "lorentz/cl-ana.lorentz.asd")
- ((#:asd-system-name _ #f) "cl-ana.lorentz")))))
-
-(define-public cl-ana.lorentz
- (sbcl-package->cl-source-package sbcl-cl-ana.lorentz))
-
-(define-public sbcl-cl-ana.clos-utils
- (package
- (inherit sbcl-cl-ana-boot0)
- (name "sbcl-cl-ana.clos-utils")
- (inputs
- `(("cl-ana.list-utils" ,sbcl-cl-ana.list-utils)
- ("cl-ana.symbol-utils" ,sbcl-cl-ana.symbol-utils)
- ("cl-ana.tensor" ,sbcl-cl-ana.tensor)
- ("closer-mop" ,sbcl-closer-mop)))
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-cl-ana-boot0)
- ((#:asd-file _ "") "clos-utils/cl-ana.clos-utils.asd")
- ((#:asd-system-name _ #f) "cl-ana.clos-utils")))))
-
-(define-public cl-ana.clos-utils
- (sbcl-package->cl-source-package sbcl-cl-ana.clos-utils))
-
-(define-public ecl-cl-ana.clos-utils
- (sbcl-package->ecl-package sbcl-cl-ana.clos-utils))
-
-(define-public sbcl-cl-ana.hash-table-utils
- (package
- (inherit sbcl-cl-ana-boot0)
- (name "sbcl-cl-ana.hash-table-utils")
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-cl-ana-boot0)
- ((#:asd-file _ "") "hash-table-utils/cl-ana.hash-table-utils.asd")
- ((#:asd-system-name _ #f) "cl-ana.hash-table-utils")))))
-
-(define-public cl-ana.hash-table-utils
- (sbcl-package->cl-source-package sbcl-cl-ana.hash-table-utils))
-
-(define-public ecl-cl-ana.hash-table-utils
- (sbcl-package->ecl-package sbcl-cl-ana.hash-table-utils))
-
-(define-public sbcl-cl-ana.map
- (package
- (inherit sbcl-cl-ana-boot0)
- (name "sbcl-cl-ana.map")
- (inputs
- `(("cl-ana.hash-table-utils" ,sbcl-cl-ana.hash-table-utils)))
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-cl-ana-boot0)
- ((#:asd-file _ "") "map/cl-ana.map.asd")
- ((#:asd-system-name _ #f) "cl-ana.map")))))
-
-(define-public cl-ana.map
- (sbcl-package->cl-source-package sbcl-cl-ana.map))
-
-(define-public ecl-cl-ana.map
- (sbcl-package->ecl-package sbcl-cl-ana.map))
-
-(define-public sbcl-cl-ana.fitting
- (package
- (inherit sbcl-cl-ana-boot0)
- (name "sbcl-cl-ana.fitting")
- (inputs
- `(("alexandria" ,sbcl-alexandria)
- ("cl-ana.error-propogation" ,sbcl-cl-ana.error-propogation)
- ("cl-ana.generic-math" ,sbcl-cl-ana.generic-math)
- ("cl-ana.map" ,sbcl-cl-ana.map)
- ("cl-ana.math-functions" ,sbcl-cl-ana.math-functions)
- ("gsll" ,sbcl-gsll)))
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-cl-ana-boot0)
- ((#:asd-file _ "") "fitting/cl-ana.fitting.asd")
- ((#:asd-system-name _ #f) "cl-ana.fitting")))))
-
-(define-public cl-ana.fitting
- (sbcl-package->cl-source-package sbcl-cl-ana.fitting))
-
-(define-public sbcl-cl-ana.histogram
- (package
- (inherit sbcl-cl-ana-boot0)
- (name "sbcl-cl-ana.histogram")
- (inputs
- `(("alexandria" ,sbcl-alexandria)
- ("iterate" ,sbcl-iterate)
- ("cl-ana.binary-tree" ,sbcl-cl-ana.binary-tree)
- ("cl-ana.clos-utils" ,sbcl-cl-ana.clos-utils)
- ("cl-ana.fitting" ,sbcl-cl-ana.fitting)
- ("cl-ana.functional-utils" ,sbcl-cl-ana.functional-utils)
- ("cl-ana.generic-math" ,sbcl-cl-ana.generic-math)
- ("cl-ana.hash-table-utils" ,sbcl-cl-ana.hash-table-utils)
- ("cl-ana.list-utils" ,sbcl-cl-ana.list-utils)
- ("cl-ana.macro-utils" ,sbcl-cl-ana.macro-utils)
- ("cl-ana.map" ,sbcl-cl-ana.map)
- ("cl-ana.tensor" ,sbcl-cl-ana.tensor)))
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-cl-ana-boot0)
- ((#:asd-file _ "") "histogram/cl-ana.histogram.asd")
- ((#:asd-system-name _ #f) "cl-ana.histogram")))))
-
-(define-public cl-ana.histogram
- (sbcl-package->cl-source-package sbcl-cl-ana.histogram))
-
-(define-public sbcl-cl-ana.file-utils
- (package
- (inherit sbcl-cl-ana-boot0)
- (name "sbcl-cl-ana.file-utils")
- (inputs
- `(("external-program" ,sbcl-external-program)
- ("split-sequence" ,sbcl-split-sequence)))
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-cl-ana-boot0)
- ((#:asd-file _ "") "file-utils/cl-ana.file-utils.asd")
- ((#:asd-system-name _ #f) "cl-ana.file-utils")))))
-
-(define-public cl-ana.file-utils
- (sbcl-package->cl-source-package sbcl-cl-ana.file-utils))
-
-(define-public ecl-cl-ana.file-utils
- (sbcl-package->ecl-package sbcl-cl-ana.file-utils))
-
-(define-public sbcl-cl-ana.statistics
- (package
- (inherit sbcl-cl-ana-boot0)
- (name "sbcl-cl-ana.statistics")
- (inputs
- `(("cl-ana.generic-math" ,sbcl-cl-ana.generic-math)
- ("cl-ana.histogram" ,sbcl-cl-ana.histogram)
- ("cl-ana.list-utils" ,sbcl-cl-ana.list-utils)
- ("cl-ana.macro-utils" ,sbcl-cl-ana.macro-utils)
- ("cl-ana.map" ,sbcl-cl-ana.map)))
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-cl-ana-boot0)
- ((#:asd-file _ "") "statistics/cl-ana.statistics.asd")
- ((#:asd-system-name _ #f) "cl-ana.statistics")))))
-
-(define-public cl-ana.statistics
- (sbcl-package->cl-source-package sbcl-cl-ana.statistics))
-
-(define-public sbcl-cl-ana.gnuplot-interface
- (package
- (inherit sbcl-cl-ana-boot0)
- (name "sbcl-cl-ana.gnuplot-interface")
- (inputs
- `(("external-program" ,sbcl-external-program)))
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-cl-ana-boot0)
- ((#:asd-file _ "") "gnuplot-interface/cl-ana.gnuplot-interface.asd")
- ((#:asd-system-name _ #f) "cl-ana.gnuplot-interface")))))
-
-(define-public cl-ana.gnuplot-interface
- (sbcl-package->cl-source-package sbcl-cl-ana.gnuplot-interface))
-
-(define-public ecl-cl-ana.gnuplot-interface
- (sbcl-package->ecl-package sbcl-cl-ana.gnuplot-interface))
-
-(define-public sbcl-cl-ana.plotting
- (package
- (inherit sbcl-cl-ana-boot0)
- (name "sbcl-cl-ana.plotting")
- (inputs
- `(("alexandria" ,sbcl-alexandria)
- ("cl-ana.error-propogation" ,sbcl-cl-ana.error-propogation)
- ("cl-ana.functional-utils" ,sbcl-cl-ana.functional-utils)
- ("cl-ana.generic-math" ,sbcl-cl-ana.generic-math)
- ("cl-ana.gnuplot-interface" ,sbcl-cl-ana.gnuplot-interface)
- ("cl-ana.histogram" ,sbcl-cl-ana.histogram)
- ("cl-ana.list-utils" ,sbcl-cl-ana.list-utils)
- ("cl-ana.macro-utils" ,sbcl-cl-ana.macro-utils)
- ("cl-ana.map" ,sbcl-cl-ana.map)
- ("cl-ana.math-functions" ,sbcl-cl-ana.math-functions)
- ("cl-ana.pathname-utils" ,sbcl-cl-ana.pathname-utils)
- ("cl-ana.string-utils" ,sbcl-cl-ana.string-utils)
- ("cl-ana.tensor" ,sbcl-cl-ana.tensor)
- ("external-program" ,sbcl-external-program)
- ("split-sequence" ,sbcl-split-sequence)))
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-cl-ana-boot0)
- ((#:asd-file _ "") "plotting/cl-ana.plotting.asd")
- ((#:asd-system-name _ #f) "cl-ana.plotting")))))
-
-(define-public cl-ana.plotting
- (sbcl-package->cl-source-package sbcl-cl-ana.plotting))
-
-(define-public sbcl-cl-ana.table-viewing
- (package
- (inherit sbcl-cl-ana-boot0)
- (name "sbcl-cl-ana.table-viewing")
- (inputs
- `(("alexandria" ,sbcl-alexandria)
- ("cl-ana.generic-math" ,sbcl-cl-ana.generic-math)
- ("cl-ana.histogram" ,sbcl-cl-ana.histogram)
- ("cl-ana.macro-utils" ,sbcl-cl-ana.macro-utils)
- ("cl-ana.plotting" ,sbcl-cl-ana.plotting)
- ("cl-ana.string-utils" ,sbcl-cl-ana.string-utils)
- ("cl-ana.table" ,sbcl-cl-ana.table)))
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-cl-ana-boot0)
- ((#:asd-file _ "") "table-viewing/cl-ana.table-viewing.asd")
- ((#:asd-system-name _ #f) "cl-ana.table-viewing")))))
-
-(define-public cl-ana.table-viewing
- (sbcl-package->cl-source-package sbcl-cl-ana.table-viewing))
-
-(define-public sbcl-cl-ana.serialization
- (package
- (inherit sbcl-cl-ana-boot0)
- (name "sbcl-cl-ana.serialization")
- (inputs
- `(("cl-ana.error-propogation" ,sbcl-cl-ana.error-propogation)
- ("cl-ana.hdf-utils" ,sbcl-cl-ana.hdf-utils)
- ("cl-ana.hdf-table" ,sbcl-cl-ana.hdf-table)
- ("cl-ana.histogram" ,sbcl-cl-ana.histogram)
- ("cl-ana.int-char" ,sbcl-cl-ana.int-char)
- ("cl-ana.macro-utils" ,sbcl-cl-ana.macro-utils)
- ("cl-ana.typespec" ,sbcl-cl-ana.typespec)))
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-cl-ana-boot0)
- ((#:asd-file _ "") "serialization/cl-ana.serialization.asd")
- ((#:asd-system-name _ #f) "cl-ana.serialization")))))
-
-(define-public cl-ana.serialization
- (sbcl-package->cl-source-package sbcl-cl-ana.serialization))
-
-(define-public sbcl-cl-ana.makeres
- (package
- (inherit sbcl-cl-ana-boot0)
- (name "sbcl-cl-ana.makeres")
- (inputs
- `(("alexandria" ,sbcl-alexandria)
- ("cl-ana.error-propogation" ,sbcl-cl-ana.error-propogation)
- ("cl-ana.file-utils" ,sbcl-cl-ana.file-utils)
- ("cl-ana.functional-utils" ,sbcl-cl-ana.functional-utils)
- ("cl-ana.generic-math" ,sbcl-cl-ana.generic-math)
- ("cl-ana.hash-table-utils" ,sbcl-cl-ana.hash-table-utils)
- ("cl-ana.hdf-utils" ,sbcl-cl-ana.hdf-utils)
- ("cl-ana.histogram" ,sbcl-cl-ana.histogram)
- ("cl-ana.list-utils" ,sbcl-cl-ana.list-utils)
- ("cl-ana.macro-utils" ,sbcl-cl-ana.macro-utils)
- ("cl-ana.map" ,sbcl-cl-ana.map)
- ("cl-ana.memoization" ,sbcl-cl-ana.memoization)
- ("cl-ana.pathname-utils" ,sbcl-cl-ana.pathname-utils)
- ("cl-ana.plotting" ,sbcl-cl-ana.plotting)
- ("cl-ana.reusable-table" ,sbcl-cl-ana.reusable-table)
- ("cl-ana.serialization" ,sbcl-cl-ana.serialization)
- ("cl-ana.string-utils" ,sbcl-cl-ana.string-utils)
- ("cl-ana.symbol-utils" ,sbcl-cl-ana.symbol-utils)
- ("cl-ana.table" ,sbcl-cl-ana.table)
- ("external-program" ,sbcl-external-program)))
- (native-inputs
- `(("cl-fad" ,sbcl-cl-fad)))
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-cl-ana-boot0)
- ((#:asd-file _ "") "makeres/cl-ana.makeres.asd")
- ((#:asd-system-name _ #f) "cl-ana.makeres")))))
-
-(define-public cl-ana.makeres
- (sbcl-package->cl-source-package sbcl-cl-ana.makeres))
-
-(define-public sbcl-cl-ana.makeres-macro
- (package
- (inherit sbcl-cl-ana-boot0)
- (name "sbcl-cl-ana.makeres-macro")
- (inputs
- `(("cl-ana.list-utils" ,sbcl-cl-ana.list-utils)
- ("cl-ana.makeres" ,sbcl-cl-ana.makeres)))
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-cl-ana-boot0)
- ((#:asd-file _ "") "makeres-macro/cl-ana.makeres-macro.asd")
- ((#:asd-system-name _ #f) "cl-ana.makeres-macro")))))
-
-(define-public cl-ana.makeres-macro
- (sbcl-package->cl-source-package sbcl-cl-ana.makeres-macro))
-
-(define-public sbcl-cl-ana.makeres-block
- (package
- (inherit sbcl-cl-ana-boot0)
- (name "sbcl-cl-ana.makeres-block")
- (inputs
- `(("alexandria" ,sbcl-alexandria)
- ("cl-ana.list-utils" ,sbcl-cl-ana.list-utils)
- ("cl-ana.macro-utils" ,sbcl-cl-ana.macro-utils)
- ("cl-ana.makeres" ,sbcl-cl-ana.makeres)))
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-cl-ana-boot0)
- ((#:asd-file _ "") "makeres-block/cl-ana.makeres-block.asd")
- ((#:asd-system-name _ #f) "cl-ana.makeres-block")))))
-
-(define-public cl-ana.makeres-block
- (sbcl-package->cl-source-package sbcl-cl-ana.makeres-block))
-
-(define-public sbcl-cl-ana.makeres-progress
- (package
- (inherit sbcl-cl-ana-boot0)
- (name "sbcl-cl-ana.makeres-progress")
- (inputs
- `(("alexandria" ,sbcl-alexandria)
- ("cl-ana.generic-math" ,sbcl-cl-ana.generic-math)
- ("cl-ana.makeres" ,sbcl-cl-ana.makeres)))
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-cl-ana-boot0)
- ((#:asd-file _ "") "makeres-progress/cl-ana.makeres-progress.asd")
- ((#:asd-system-name _ #f) "cl-ana.makeres-progress")))))
-
-(define-public cl-ana.makeres-progress
- (sbcl-package->cl-source-package sbcl-cl-ana.makeres-progress))
-
-(define-public sbcl-cl-ana.makeres-table
- (package
- (inherit sbcl-cl-ana-boot0)
- (name "sbcl-cl-ana.makeres-table")
- (inputs
- `(("cl-ana.csv-table" ,sbcl-cl-ana.csv-table)
- ("cl-ana.hash-table-utils" ,sbcl-cl-ana.hash-table-utils)
- ("cl-ana.hdf-table" ,sbcl-cl-ana.hdf-table)
- ("cl-ana.hdf-utils" ,sbcl-cl-ana.hdf-utils)
- ("cl-ana.list-utils" ,sbcl-cl-ana.list-utils)
- ("cl-ana.macro-utils" ,sbcl-cl-ana.macro-utils)
- ("cl-ana.makeres" ,sbcl-cl-ana.makeres)
- ("cl-ana.makeres-macro" ,sbcl-cl-ana.makeres-macro)
- ("cl-ana.memoization" ,sbcl-cl-ana.memoization)
- ("cl-ana.ntuple-table" ,sbcl-cl-ana.ntuple-table)
- ("cl-ana.reusable-table" ,sbcl-cl-ana.reusable-table)
- ("cl-ana.string-utils" ,sbcl-cl-ana.string-utils)
- ("cl-ana.table" ,sbcl-cl-ana.table)))
- (native-inputs
- `(("cl-fad" ,sbcl-cl-fad)))
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-cl-ana-boot0)
- ((#:asd-file _ "") "makeres-table/cl-ana.makeres-table.asd")
- ((#:asd-system-name _ #f) "cl-ana.makeres-table")))))
-
-(define-public cl-ana.makeres-table
- (sbcl-package->cl-source-package sbcl-cl-ana.makeres-table))
-
-(define-public sbcl-cl-ana.makeres-graphviz
- (package
- (inherit sbcl-cl-ana-boot0)
- (name "sbcl-cl-ana.makeres-graphviz")
- (inputs
- `(("cl-ana.makeres" ,sbcl-cl-ana.makeres)
- ("external-program" ,sbcl-external-program)))
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-cl-ana-boot0)
- ((#:asd-file _ "") "makeres-graphviz/cl-ana.makeres-graphviz.asd")
- ((#:asd-system-name _ #f) "cl-ana.makeres-graphviz")))))
-
-(define-public cl-ana.makeres-graphviz
- (sbcl-package->cl-source-package sbcl-cl-ana.makeres-graphviz))
-
-(define-public sbcl-cl-ana.makeres-branch
- (package
- (inherit sbcl-cl-ana-boot0)
- (name "sbcl-cl-ana.makeres-branch")
- (inputs
- `(("alexandria" ,sbcl-alexandria)
- ("cl-ana.generic-math" ,sbcl-cl-ana.generic-math)
- ("cl-ana.hash-table-utils" ,sbcl-cl-ana.hash-table-utils)
- ("cl-ana.list-utils" ,sbcl-cl-ana.list-utils)
- ("cl-ana.map" ,sbcl-cl-ana.map)
- ("cl-ana.makeres" ,sbcl-cl-ana.makeres)))
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-cl-ana-boot0)
- ((#:asd-file _ "") "makeres-branch/cl-ana.makeres-branch.asd")
- ((#:asd-system-name _ #f) "cl-ana.makeres-branch")))))
-
-(define-public cl-ana.makeres-branch
- (sbcl-package->cl-source-package sbcl-cl-ana.makeres-branch))
-
-(define-public sbcl-cl-ana.makeres-utils
- (package
- (inherit sbcl-cl-ana-boot0)
- (name "sbcl-cl-ana.makeres-utils")
- (inputs
- `(("alexandria" ,sbcl-alexandria)
- ("cl-ana.file-utils" ,sbcl-cl-ana.file-utils)
- ("cl-ana.fitting" ,sbcl-cl-ana.fitting)
- ("cl-ana.functional-utils" ,sbcl-cl-ana.functional-utils)
- ("cl-ana.generic-math" ,sbcl-cl-ana.generic-math)
- ("cl-ana.histogram" ,sbcl-cl-ana.histogram)
- ("cl-ana.list-utils" ,sbcl-cl-ana.list-utils)
- ("cl-ana.macro-utils" ,sbcl-cl-ana.macro-utils)
- ("cl-ana.makeres" ,sbcl-cl-ana.makeres)
- ("cl-ana.map" ,sbcl-cl-ana.map)
- ("cl-ana.pathname-utils" ,sbcl-cl-ana.pathname-utils)
- ("cl-ana.plotting" ,sbcl-cl-ana.plotting)
- ("cl-ana.reusable-table" ,sbcl-cl-ana.reusable-table)
- ("cl-ana.string-utils" ,sbcl-cl-ana.string-utils)
- ("cl-ana.symbol-utils" ,sbcl-cl-ana.symbol-utils)
- ("cl-ana.table" ,sbcl-cl-ana.table)))
- (native-inputs
- `(("cl-fad" ,sbcl-cl-fad)))
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-cl-ana-boot0)
- ((#:asd-file _ "") "makeres-utils/cl-ana.makeres-utils.asd")
- ((#:asd-system-name _ #f) "cl-ana.makeres-utils")))))
-
-(define-public cl-ana.makeres-utils
- (sbcl-package->cl-source-package sbcl-cl-ana.makeres-utils))
-
-(define-public sbcl-cl-ana.statistical-learning
- (package
- (inherit sbcl-cl-ana-boot0)
- (name "sbcl-cl-ana.statistical-learning")
- (inputs
- `(("cl-ana.generic-math" ,sbcl-cl-ana.generic-math)
- ("cl-ana.functional-utils" ,sbcl-cl-ana.functional-utils)
- ("cl-ana.histogram" ,sbcl-cl-ana.histogram)
- ("cl-ana.linear-algebra" ,sbcl-cl-ana.linear-algebra)
- ("cl-ana.list-utils" ,sbcl-cl-ana.list-utils)
- ("cl-ana.macro-utils" ,sbcl-cl-ana.macro-utils)
- ("cl-ana.math-functions" ,sbcl-cl-ana.math-functions)
- ("cl-ana.map" ,sbcl-cl-ana.map)
- ("cl-ana.statistics" ,sbcl-cl-ana.statistics)))
- (native-inputs
- `(("cl-fad" ,sbcl-cl-fad)))
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-cl-ana-boot0)
- ((#:asd-file _ "")
- "statistical-learning/cl-ana.statistical-learning.asd")
- ((#:asd-system-name _ #f) "cl-ana.statistical-learning")))))
-
-(define-public cl-ana.statistical-learning
- (sbcl-package->cl-source-package sbcl-cl-ana.statistical-learning))
-
-(define-public sbcl-cl-ana
- (package
- (inherit sbcl-cl-ana-boot0)
- (name "sbcl-cl-ana")
- (inputs
- `(("cl-ana.binary-tree" ,sbcl-cl-ana.binary-tree)
- ("cl-ana.calculus" ,sbcl-cl-ana.calculus)
- ("cl-ana.clos-utils" ,sbcl-cl-ana.clos-utils)
- ("cl-ana.csv-table" ,sbcl-cl-ana.csv-table)
- ("cl-ana.error-propogation" ,sbcl-cl-ana.error-propogation)
- ("cl-ana.file-utils" ,sbcl-cl-ana.file-utils)
- ("cl-ana.fitting" ,sbcl-cl-ana.fitting)
- ("cl-ana.generic-math" ,sbcl-cl-ana.generic-math)
- ("cl-ana.hash-table-utils" ,sbcl-cl-ana.hash-table-utils)
- ("cl-ana.hdf-table" ,sbcl-cl-ana.hdf-table)
- ("cl-ana.histogram" ,sbcl-cl-ana.histogram)
- ("cl-ana.int-char" ,sbcl-cl-ana.int-char)
- ("cl-ana.linear-algebra" ,sbcl-cl-ana.linear-algebra)
- ("cl-ana.lorentz" ,sbcl-cl-ana.lorentz)
- ("cl-ana.map" ,sbcl-cl-ana.map)
- ("cl-ana.makeres" ,sbcl-cl-ana.makeres)
- ("cl-ana.makeres-block" ,sbcl-cl-ana.makeres-block)
- ("cl-ana.makeres-branch" ,sbcl-cl-ana.makeres-branch)
- ("cl-ana.makeres-graphviz" ,sbcl-cl-ana.makeres-graphviz)
- ("cl-ana.makeres-macro" ,sbcl-cl-ana.makeres-macro)
- ("cl-ana.makeres-progress" ,sbcl-cl-ana.makeres-progress)
- ("cl-ana.makeres-table" ,sbcl-cl-ana.makeres-table)
- ("cl-ana.makeres-utils" ,sbcl-cl-ana.makeres-utils)
- ("cl-ana.math-functions" ,sbcl-cl-ana.math-functions)
- ("cl-ana.ntuple-table" ,sbcl-cl-ana.ntuple-table)
- ("cl-ana.package-utils" ,sbcl-cl-ana.package-utils)
- ("cl-ana.pathname-utils" ,sbcl-cl-ana.pathname-utils)
- ("cl-ana.plotting" ,sbcl-cl-ana.plotting)
- ("cl-ana.quantity" ,sbcl-cl-ana.quantity)
- ("cl-ana.reusable-table" ,sbcl-cl-ana.reusable-table)
- ("cl-ana.serialization" ,sbcl-cl-ana.serialization)
- ("cl-ana.statistics" ,sbcl-cl-ana.statistics)
- ("cl-ana.statistical-learning" ,sbcl-cl-ana.statistical-learning)
- ("cl-ana.table" ,sbcl-cl-ana.table)
- ("cl-ana.table-utils" ,sbcl-cl-ana.table-utils)
- ("cl-ana.table-viewing" ,sbcl-cl-ana.table-viewing)
- ("cl-ana.tensor" ,sbcl-cl-ana.tensor)
- ("libffi" ,libffi)))
- (native-inputs
- `(("cl-fad" ,sbcl-cl-fad)))
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-cl-ana-boot0)
- ((#:asd-file _ "") "cl-ana.asd")
- ((#:asd-system-name _ #f) "cl-ana")))))
-
(define-public cl-ana
(sbcl-package->cl-source-package sbcl-cl-ana))
@@ -9515,6 +7309,13 @@ may contain sets, maps may be keyed by sets, etc.")
(define-public cl-fset
(sbcl-package->cl-source-package sbcl-fset))
+(define-public ecl-fset
+ (package
+ (inherit (sbcl-package->ecl-package sbcl-fset))
+ (arguments
+ ;; Tests fails on ECL with "The function FSET::MAKE-CHAR is undefined".
+ '(#:tests? #f))))
+
(define-public sbcl-cl-cont
(let ((commit "fc1fa7e6eb64894fdca13e688e6015fad5290d2a")
(revision "1"))
@@ -9648,7 +7449,6 @@ has a small codebase that's easy to understand and use.")
(inputs
`(("alexandria" ,sbcl-alexandria)
("cffi" ,sbcl-cffi)
- ("cffi-grovel" ,sbcl-cffi-grovel)
("libuv" ,libuv)))
(arguments
`(#:phases
@@ -9678,11 +7478,11 @@ has a small codebase that's easy to understand and use.")
(define-public ecl-cl-libuv
(sbcl-package->ecl-package sbcl-cl-libuv))
-(define-public sbcl-cl-async-base
+(define-public sbcl-cl-async
(let ((commit "f6423e44404a44434d803605e0d2e17199158e28")
(revision "1"))
(package
- (name "sbcl-cl-async-base")
+ (name "sbcl-cl-async")
(version (git-version "0.6.1" revision commit))
(source
(origin
@@ -9696,98 +7496,23 @@ has a small codebase that's easy to understand and use.")
"11xi9dxb8mjgwzrkj88i0xkgk26z9w9ddxzbv6xsvfc1d4x5cf4x"))))
(build-system asdf-build-system/sbcl)
(inputs
- `(("bordeaux-threads" ,sbcl-bordeaux-threads)
+ `(("babel" ,sbcl-babel)
+ ("bordeaux-threads" ,sbcl-bordeaux-threads)
("cffi" ,sbcl-cffi)
- ("cl-libuv" ,sbcl-cl-libuv)))
+ ("cl-libuv" ,sbcl-cl-libuv)
+ ("cl-ppcre" ,sbcl-cl-ppcre)
+ ("fast-io" ,sbcl-fast-io)
+ ("openssl" ,openssl)
+ ("static-vectors" ,sbcl-static-vectors)
+ ("trivial-features" ,sbcl-trivial-features)
+ ("trivial-gray-streams" ,sbcl-trivial-gray-streams)
+ ("vom" ,sbcl-vom)))
(arguments
- `(#:asd-file "cl-async.asd"))
- (synopsis "Base system for cl-async")
- (description
- "Cl-async is a library for general purpose, non-blocking programming in
-Common Lisp. It uses the libuv library as backend.")
- (home-page "https://orthecreedence.github.io/cl-async/")
- (license license:expat))))
-
-(define-public cl-async-base
- (sbcl-package->cl-source-package sbcl-cl-async-base))
-
-(define-public ecl-cl-async-base
- (sbcl-package->ecl-package sbcl-cl-async-base))
-
-(define-public sbcl-cl-async-util
- (package
- (inherit sbcl-cl-async-base)
- (name "sbcl-cl-async-util")
- (inputs
- `(("bordeaux-threads" ,sbcl-bordeaux-threads)
- ("cffi" ,sbcl-cffi)
- ("cl-async-base" ,sbcl-cl-async-base)
- ("cl-libuv" ,sbcl-cl-libuv)
- ("cl-ppcre" ,sbcl-cl-ppcre)
- ("fast-io" ,sbcl-fast-io)
- ("vom" ,sbcl-vom)))
- (synopsis "Internal utilities for cl-async")))
-
-(define-public cl-async-util
- (sbcl-package->cl-source-package sbcl-cl-async-util))
-
-(define-public ecl-cl-async-util
- (sbcl-package->ecl-package sbcl-cl-async-util))
-
-(define-public sbcl-cl-async
- (package
- (inherit sbcl-cl-async-base)
- (name "sbcl-cl-async")
- (inputs
- `(("babel" ,sbcl-babel)
- ("cffi" ,sbcl-cffi)
- ("cl-async-base" ,sbcl-cl-async-base)
- ("cl-async-util" ,sbcl-cl-async-util)
- ("cl-libuv" ,sbcl-cl-libuv)
- ("cl-ppcre" ,sbcl-cl-ppcre)
- ("static-vectors" ,sbcl-static-vectors)
- ("trivial-features" ,sbcl-trivial-features)
- ("trivial-gray-streams" ,sbcl-trivial-gray-streams)))
- (synopsis "Asynchronous operations for Common Lisp")))
-
-(define-public cl-async
- (sbcl-package->cl-source-package sbcl-cl-async))
-
-(define-public ecl-cl-async
- (sbcl-package->ecl-package sbcl-cl-async))
-
-(define-public sbcl-cl-async-repl
- (package
- (inherit sbcl-cl-async-base)
- (name "sbcl-cl-async-repl")
- (inputs
- `(("bordeaux-threads" ,sbcl-bordeaux-threads)
- ("cl-async" ,sbcl-cl-async)))
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-cl-async-base)
- ((#:asd-file _ "") "cl-async-repl.asd")))
- (synopsis "REPL integration for cl-async")))
-
-(define-public cl-async-repl
- (sbcl-package->cl-source-package sbcl-cl-async-repl))
-
-(define-public ecl-cl-async-repl
- (sbcl-package->ecl-package sbcl-cl-async-repl))
-
-(define-public sbcl-cl-async-ssl
- (package
- (inherit sbcl-cl-async-base)
- (name "sbcl-cl-async-ssl")
- (inputs
- `(("cffi" ,sbcl-cffi)
- ("cl-async" ,sbcl-cl-async)
- ("openssl" ,openssl)
- ("vom" ,sbcl-vom)))
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-cl-async-base)
- ((#:asd-file _ "") "cl-async-ssl.asd")
- ((#:phases phases '%standard-phases)
- `(modify-phases ,phases
+ `(#:asd-systems '("cl-async"
+ "cl-async-repl"
+ "cl-async-ssl")
+ #:phases
+ (modify-phases %standard-phases
(add-after 'unpack 'fix-paths
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "src/ssl/package.lisp"
@@ -9797,14 +7522,19 @@ Common Lisp. It uses the libuv library as backend.")
(("libssl\\.so")
(string-append (assoc-ref inputs "openssl")
"/lib/libssl.so")))
- #t))))))
- (synopsis "SSL wrapper around cl-async socket implementation")))
+ #t)))))
+ (synopsis "Asynchronous operations for Common Lisp")
+ (description
+ "Cl-async is a library for general purpose, non-blocking programming in
+Common Lisp. It uses the libuv library as backend.")
+ (home-page "https://orthecreedence.github.io/cl-async/")
+ (license license:expat))))
-(define-public cl-async-ssl
- (sbcl-package->cl-source-package sbcl-cl-async-ssl))
+(define-public cl-async
+ (sbcl-package->cl-source-package sbcl-cl-async))
-(define-public ecl-cl-async-ssl
- (sbcl-package->ecl-package sbcl-cl-async-ssl))
+(define-public ecl-cl-async
+ (sbcl-package->ecl-package sbcl-cl-async))
(define-public sbcl-blackbird
(let ((commit "d361f81c1411dec07f6c2dcb11c78f7aea9aaca8")
@@ -10006,21 +7736,30 @@ ZeroMQ.")
`(("imagemagick" ,imagemagick)
("tk" ,tk)))
(arguments
- `(#:asd-file "ltk/ltk.asd"
+ `(#:asd-systems '("ltk"
+ "ltk-mw"
+ "ltk-remote")
#:tests? #f
- #:phases (modify-phases %standard-phases
- (add-after 'unpack 'fix-paths
- (lambda* (#:key inputs #:allow-other-keys)
- (substitute* "ltk/ltk.lisp"
- (("#-freebsd \"wish\"")
- (string-append "#-freebsd \""
- (assoc-ref inputs "tk")
- "/bin/wish\""))
- (("do-execute \"convert\"")
- (string-append "do-execute \""
- (assoc-ref inputs "imagemagick")
- "/bin/convert\"")))
- #t)))))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'fix-paths
+ (lambda* (#:key inputs #:allow-other-keys)
+ (substitute* "ltk/ltk.lisp"
+ (("#-freebsd \"wish\"")
+ (string-append "#-freebsd \""
+ (assoc-ref inputs "tk")
+ "/bin/wish\""))
+ (("do-execute \"convert\"")
+ (string-append "do-execute \""
+ (assoc-ref inputs "imagemagick")
+ "/bin/convert\"")))
+ #t))
+ (add-after 'unpack 'fix-build
+ (lambda _
+ (substitute* "ltk/ltk-remote.lisp"
+ (("\\(:export")
+ "(:shadow #:raise) (:export"))
+ #t)))))
(synopsis "Common Lisp bindings for the Tk GUI toolkit")
(description
"LTK is a Common Lisp binding for the Tk graphics toolkit. It is written
@@ -10034,44 +7773,6 @@ in pure Common Lisp and does not require any Tk knowledge for its usage.")
(define-public ecl-ltk
(sbcl-package->ecl-package sbcl-ltk))
-(define-public sbcl-ltk-mw
- (package
- (inherit sbcl-ltk)
- (name "sbcl-ltk-mw")
- (inputs
- `(("ltk" ,sbcl-ltk)))
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-ltk)
- ((#:asd-file _) "ltk/ltk-mw.asd")
- ((#:phases _) '%standard-phases)))
- (synopsis "Extra widgets for LTK")
- (description
- "This is a collection of higher-level widgets built on top of LTK.")))
-
-(define-public cl-ltk-mw
- (sbcl-package->cl-source-package sbcl-ltk-mw))
-
-(define-public ecl-ltk-mw
- (sbcl-package->ecl-package sbcl-ltk-mw))
-
-(define-public sbcl-ltk-remote
- (package
- (inherit sbcl-ltk)
- (name "sbcl-ltk-remote")
- (inputs
- `(("ltk" ,sbcl-ltk)))
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-ltk)
- ((#:asd-file _) "ltk/ltk-remote.asd")
- ((#:phases _) '%standard-phases)))
- (synopsis "Remote GUI support for LTK")
- (description
- "This LTK extension allows the GUI to be displayed on a computer different
-from the one running the Lisp program by using a TCP connection.")))
-
-(define-public cl-ltk-remote
- (sbcl-package->cl-source-package sbcl-ltk-remote))
-
(define-public sbcl-cl-lex
(let ((commit "f2dbbe25ef553005fb402d9a6203180c3fa1093b")
(revision "1"))
@@ -10400,14 +8101,11 @@ them as PNG files.")
"/LICENSE")))
(inputs
`(("cffi" ,sbcl-cffi)
- ("cffi-grovel" ,sbcl-cffi-grovel)
("hdf5" ,hdf5-1.10)))
(native-inputs
`(("fiveam" ,sbcl-fiveam)))
(arguments
- `(#:asd-system-name "hdf5-cffi"
- #:asd-file "hdf5-cffi.asd"
- #:test-asd-file "hdf5-cffi.test.asd"
+ `(#:test-asd-file "hdf5-cffi.test.asd"
;; Tests depend on hdf5-cffi.examples.asd in addition to hdf5-cffi.asd,
;; I don't know if there is a way to tell asdf-build-system to load
;; an additional system first, so tests are disabled.
@@ -10458,9 +8156,7 @@ generation functions from the GSL library.")
(home-page "https://github.com/lvaruzza/cl-randist")
(license license:bsd-2)
(arguments
- `(#:asd-system-name "cl-randist"
- #:asd-file "cl-randist.asd"
- #:tests? #f))))
+ `(#:tests? #f))))
(define-public cl-randist
(sbcl-package->cl-source-package sbcl-cl-randist))
@@ -10492,9 +8188,7 @@ covered by the Common Lisp standard.")
(inputs
`(("documentation-utils" ,sbcl-documentation-utils)))
(arguments
- `(#:asd-system-name "float-features"
- #:asd-file "float-features.asd"
- #:tests? #f))))
+ `(#:tests? #f))))
(define-public cl-float-features
(sbcl-package->cl-source-package sbcl-float-features))
@@ -10532,9 +8226,7 @@ caching based on arguments (an expanded form of memoization).")
("symbol-munger" ,sbcl-symbol-munger)
("closer-mop" ,sbcl-closer-mop)))
(arguments
- `(#:asd-system-name "function-cache"
- #:asd-file "function-cache.asd"
- #:tests? #f))))
+ `(#:tests? #f))))
(define-public cl-function-cache
(sbcl-package->cl-source-package sbcl-function-cache))
@@ -10572,13 +8264,14 @@ the elements in compound type specifier, e.g. @code{dimensions} in
(native-inputs
`(("fiveam" ,sbcl-fiveam)))
(arguments
- `(#:asd-system-name "type-r"
- #:asd-file "type-r.asd"
- #:test-asd-file "type-r.test.asd")))))
+ `(#:test-asd-file "type-r.test.asd")))))
(define-public cl-type-r
(sbcl-package->cl-source-package sbcl-type-r))
+(define-public ecl-type-r
+ (sbcl-package->ecl-package sbcl-type-r))
+
(define-public sbcl-trivialib-type-unify
(let ((commit "62492ebf04db567dcf435ae84c50b7b8202ecf99")
(revision "1"))
@@ -10611,16 +8304,18 @@ correctly.")
(native-inputs
`(("fiveam" ,sbcl-fiveam)))
(arguments
- `(#:asd-system-name "trivialib.type-unify"
- #:asd-file "trivialib.type-unify.asd"
+ `(#:asd-systems '("trivialib.type-unify")
#:test-asd-file "trivialib.type-unify.test.asd")))))
(define-public cl-trivialib-type-unify
(sbcl-package->cl-source-package sbcl-trivialib-type-unify))
+(define-public ecl-trivialib-type-unify
+ (sbcl-package->ecl-package sbcl-trivialib-type-unify))
+
(define-public sbcl-specialized-function
- (let ((commit "b96b6afaf8358bf91cc0703e62a5a4ee20d2b7bc")
- (revision "1"))
+ (let ((commit "dee56d2d2b6ecd10500ad291c56217698604ec35")
+ (revision "2"))
(package
(name "sbcl-specialized-function")
(version (git-version "0.0.0" revision commit))
@@ -10632,8 +8327,7 @@ correctly.")
(commit commit)))
(file-name (git-file-name name version))
(sha256
- (base32
- "12j45ff0n26578vmfbhb9mfbdchw4wy023k0m2ppgl9s0z4bhjaj"))))
+ (base32 "1mcc7mmpbnmgnr1cl2jl5r1ai54gn7fbisv2c14sh9za5w4sib82"))))
(build-system asdf-build-system/sbcl)
(synopsis "Julia-like dispatch for Common Lisp")
(description
@@ -10653,13 +8347,15 @@ code. The main target of this macro is speed.")
(native-inputs
`(("fiveam" ,sbcl-fiveam)))
(arguments
- `(#:asd-system-name "specialized-function"
- #:asd-file "specialized-function.asd"
+ `(#:asd-files '("specialized-function.asd")
#:test-asd-file "specialized-function.test.asd")))))
(define-public cl-specialized-function
(sbcl-package->cl-source-package sbcl-specialized-function))
+(define-public ecl-specialized-function
+ (sbcl-package->ecl-package sbcl-specialized-function))
+
(define-public sbcl-constantfold
(let ((commit "0ff1d97a3fbcb89264f6a2af6ce62b73e7b421f4")
(revision "1"))
@@ -10691,16 +8387,18 @@ additional form that is considered as a candidate for a constant.")
(native-inputs
`(("fiveam" ,sbcl-fiveam)))
(arguments
- `(#:asd-system-name "constantfold"
- #:asd-file "constantfold.asd"
+ `(#:asd-files '("constantfold.asd")
#:test-asd-file "constantfold.test.asd")))))
(define-public cl-constantfold
(sbcl-package->cl-source-package sbcl-constantfold))
+(define-public ecl-constantfold
+ (sbcl-package->ecl-package sbcl-constantfold))
+
(define-public sbcl-gtype
- (let ((commit "42275e3606242ae91e9c8dfa30c18ced50a35b66")
- (revision "1"))
+ (let ((commit "2442e32485635525af278ebd8fa69a27d5b8cf18")
+ (revision "2"))
(package
(name "sbcl-gtype")
(version (git-version "0.1" revision commit))
@@ -10712,8 +8410,7 @@ additional form that is considered as a candidate for a constant.")
(commit commit)))
(file-name (git-file-name name version))
(sha256
- (base32
- "1f56dba998v945jcxhha391557n6md1ql25b7icfwwfivhmlaa9b"))))
+ (base32 "0hbkfdw00v7bsa6zbric34p5w6hfwxycccg8wc2faq0cxhsvpv9h"))))
(build-system asdf-build-system/sbcl)
(synopsis "C++/Julia-like parametric types in Common Lisp")
(description
@@ -10731,16 +8428,24 @@ type correctness in Common Lisp. It is based on CLtL2 extensions.")
(native-inputs
`(("fiveam" ,sbcl-fiveam)))
(arguments
- `(#:asd-system-name "gtype"
- #:asd-file "gtype.asd"
+ `(#:asd-files '("gtype.asd")
#:test-asd-file "gtype.test.asd")))))
(define-public cl-gtype
(sbcl-package->cl-source-package sbcl-gtype))
+(define-public ecl-gtype
+ (let ((pkg (sbcl-package->ecl-package sbcl-gtype)))
+ (package
+ (inherit pkg)
+ (arguments
+ (substitute-keyword-arguments (package-arguments pkg)
+ ;; The tests fail on ECL with a COMPILE-FILE-ERROR for t/package.lisp.
+ ((#:tests? _ #f) #f))))))
+
(define-public sbcl-numcl
- (let ((commit "1cf7dfa59f763a24a501092870e9c5ee745d0c17")
- (revision "1"))
+ (let ((commit "3e8d40bf774e070e7af1d3dbf01bc8c37dbebd3a")
+ (revision "2"))
(package
(name "sbcl-numcl")
(version (git-version "0.1.0" revision commit))
@@ -10752,8 +8457,7 @@ type correctness in Common Lisp. It is based on CLtL2 extensions.")
(commit commit)))
(file-name (git-file-name name version))
(sha256
- (base32
- "0i3jby9hf4ii7blivgyza80g0vmjfhk8537i5i7kqqk0i5sdnym2"))))
+ (base32 "1hqpr68f6xkxaj1hjjayyh97wcdmj51k20qrd3nsv1rcpmdc5ll4"))))
(build-system asdf-build-system/sbcl)
(synopsis "Numpy clone in Common Lisp")
(description
@@ -10778,13 +8482,23 @@ and usefulness, not speed. Track the progress at
(native-inputs
`(("fiveam" ,sbcl-fiveam)))
(arguments
- `(#:asd-system-name "numcl"
- #:asd-file "numcl.asd"
- #:test-asd-file "numcl.test.asd")))))
+ `(#:asd-files '("numcl.asd")
+ #:test-asd-file "numcl.test.asd"
+ ;; Tests fail on SBCL with "Heap exhausted, game over",
+ ;; but they pass on ECL.
+ #:tests? #f)))))
(define-public cl-numcl
(sbcl-package->cl-source-package sbcl-numcl))
+(define-public ecl-numcl
+ (let ((pkg (sbcl-package->ecl-package sbcl-numcl)))
+ (package
+ (inherit pkg)
+ (arguments
+ (substitute-keyword-arguments (package-arguments pkg)
+ ((#:tests? _ #f) #t))))))
+
(define-public sbcl-pzmq
(let ((commit "7c7390eedc469d033c72dc497984d1536ee75826")
(revision "1"))
@@ -10807,7 +8521,6 @@ and usefulness, not speed. Track the progress at
("let-plus" ,sbcl-let-plus)))
(inputs
`(("cffi" ,sbcl-cffi)
- ("cffi-grovel" ,sbcl-cffi-grovel)
("zeromq" ,zeromq)))
(arguments
`(#:phases (modify-phases %standard-phases
@@ -10945,11 +8658,14 @@ approach to templating.")
(define-public cl-mysql
(sbcl-package->cl-source-package sbcl-cl-mysql))
-(define-public sbcl-simple-date
+(define-public ecl-cl-mysql
+ (sbcl-package->ecl-package sbcl-cl-mysql))
+
+(define-public sbcl-postmodern
(let ((commit "74469b25bbda990ec9b77e0d0eccdba0cd7e721a")
(revision "1"))
(package
- (name "sbcl-simple-date")
+ (name "sbcl-postmodern")
(version (git-version "1.19" revision commit))
(source
(origin
@@ -10963,108 +8679,23 @@ approach to templating.")
(build-system asdf-build-system/sbcl)
(native-inputs
`(("fiveam" ,sbcl-fiveam)))
- (synopsis "Basic date and time objects for Common Lisp")
+ (inputs
+ `(("alexandria" ,sbcl-alexandria)
+ ("bordeaux-threads" ,sbcl-bordeaux-threads)
+ ("closer-mop" ,sbcl-closer-mop)
+ ("global-vars" ,sbcl-global-vars)
+ ("md5" ,sbcl-md5)
+ ("split-sequence" ,sbcl-split-sequence)
+ ("usocket" ,sbcl-usocket)))
+ (arguments
+ ;; TODO: Fix missing dependency errors for simple-date/postgres-glue,
+ ;; cl-postgres/tests and s-sql/tests.
+ `(#:tests? #f
+ #:asd-systems '("postmodern"
+ "simple-date/postgres-glue")))
+ (synopsis "Common Lisp library for interacting with PostgreSQL")
(description
- "@code{simple-date} is a very basic implementation of date and time
-objects, used to support storing and retrieving time-related SQL types.")
- (home-page "https://marijnhaverbeke.nl/postmodern/")
- (license license:zlib))))
-
-(define-public cl-simple-date
- (sbcl-package->cl-source-package sbcl-simple-date))
-
-(define-public ecl-simple-date
- (sbcl-package->ecl-package sbcl-simple-date))
-
-(define-public sbcl-cl-postgres
- (package
- (inherit sbcl-simple-date)
- (name "sbcl-cl-postgres")
- (native-inputs
- `(("fiveam" ,sbcl-fiveam)
- ("simple-date" ,sbcl-simple-date)))
- (inputs
- `(("md5" ,sbcl-md5)
- ("split-sequence" ,sbcl-split-sequence)
- ("usocket" ,sbcl-usocket)))
- (arguments
- `(#:tests? #f)) ; TODO: Break simple-date/postgres-glue circular dependency
- (synopsis "Common Lisp interface for PostgreSQL")
- (description
- "@code{cl-postgres} is a low-level library used for interfacing with
-a PostgreSQL server over a socket.")))
-
-(define-public cl-postgres
- (sbcl-package->cl-source-package sbcl-cl-postgres))
-
-(define-public ecl-cl-postgres
- (package
- (inherit (sbcl-package->ecl-package sbcl-cl-postgres))
- (arguments
- `(#:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'fix-ecl
- (lambda _
- (substitute* "cl-postgres.asd"
- (("\\) \"usocket\"") " :ecl) \"usocket\""))
- #t)))
- #:tests? #f))))
-
-(define-public sbcl-simple-date-postgres-glue
- (package
- (inherit sbcl-simple-date)
- (name "sbcl-simple-date-postgres-glue")
- (inputs
- `(("cl-postgres" ,sbcl-cl-postgres)
- ("simple-date" ,sbcl-simple-date)))
- (arguments
- `(#:asd-file "simple-date.asd"
- #:asd-system-name "simple-date/postgres-glue"))))
-
-(define-public cl-simple-date-postgres-glue
- (sbcl-package->cl-source-package sbcl-simple-date-postgres-glue))
-
-(define-public sbcl-s-sql
- (package
- (inherit sbcl-simple-date)
- (name "sbcl-s-sql")
- (inputs
- `(("alexandria" ,sbcl-alexandria)
- ("cl-postgres" ,sbcl-cl-postgres)))
- (arguments
- `(#:tests? #f)) ; TODO: Break postmodern circular dependency
- (synopsis "Lispy DSL for SQL")
- (description
- "@code{s-sql} is a Common Lisp library that can be used to compile
-s-expressions to strings of SQL code, escaping any Lisp values inside, and
-doing as much as possible of the work at compile time.")))
-
-(define-public cl-s-sql
- (sbcl-package->cl-source-package sbcl-s-sql))
-
-(define-public sbcl-postmodern
- (package
- (inherit sbcl-simple-date)
- (name "sbcl-postmodern")
- (native-inputs
- `(("fiveam" ,sbcl-fiveam)
- ("simple-date" ,sbcl-simple-date)
- ("simple-date-postgres-glue" ,sbcl-simple-date-postgres-glue)))
- (inputs
- `(("alexandria" ,sbcl-alexandria)
- ("bordeaux-threads" ,sbcl-bordeaux-threads)
- ("cl-postgres" ,sbcl-cl-postgres)
- ("closer-mop" ,sbcl-closer-mop)
- ("global-vars" ,sbcl-global-vars)
- ("s-sql" ,sbcl-s-sql)
- ("split-sequence" ,sbcl-split-sequence)))
- (arguments
- ;; TODO: Fix missing dependency errors for simple-date/postgres-glue,
- ;; cl-postgres/tests and s-sql/tests.
- `(#:tests? #f))
- (synopsis "Common Lisp library for interacting with PostgreSQL")
- (description
- "@code{postmodern} is a Common Lisp library for interacting with
+ "@code{postmodern} is a Common Lisp library for interacting with
PostgreSQL databases. It provides the following features:
@itemize
@@ -11074,11 +8705,29 @@ foreign libraries.
@item A syntax for mixing SQL and Lisp code.
@item Convenient support for prepared statements and stored procedures.
@item A metaclass for simple database-access objects.
-@end itemize\n")))
+@end itemize\n")
+ (home-page "https://marijnhaverbeke.nl/postmodern/")
+ (license license:zlib))))
(define-public cl-postmodern
(sbcl-package->cl-source-package sbcl-postmodern))
+(define-public ecl-postmodern
+ (package
+ (inherit (sbcl-package->ecl-package sbcl-postmodern))
+ (arguments
+ `(#:tests? #f
+ #:asd-systems '("postmodern"
+ "simple-date/postgres-glue")
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'fix-build
+ (lambda _
+ (substitute* "cl-postgres.asd"
+ (("\\) \"usocket\"")
+ " :ecl) \"usocket\""))
+ #t)))))))
+
(define-public sbcl-dbi
;; Master includes a breaking change which other packages depend on since
;; Quicklisp decided to follow it:
@@ -11097,12 +8746,22 @@ foreign libraries.
(sha256
(base32 "0r3n4rw12qqxad0cryym2ibm4ddl49gbq4ra227afibsr43nw5k3"))))
(build-system asdf-build-system/sbcl)
+ (native-inputs
+ `(("rove" ,sbcl-rove)
+ ("trivial-types" ,sbcl-trivial-types)))
(inputs
`(("bordeaux-threads" ,sbcl-bordeaux-threads)
+ ("cl-mysql" ,sbcl-cl-mysql)
+ ("cl-sqlite" ,sbcl-cl-sqlite)
("closer-mop" ,sbcl-closer-mop)
- ("split-sequence" ,sbcl-split-sequence)))
+ ("postmodern" ,sbcl-postmodern)
+ ("split-sequence" ,sbcl-split-sequence)
+ ("trivial-garbage" ,sbcl-trivial-garbage)))
(arguments
- `(#:tests? #f)) ; TODO: Break circular dependency with dbd-*
+ `(#:asd-systems '("dbi"
+ "dbd-mysql"
+ "dbd-postgres"
+ "dbd-sqlite3")))
(synopsis "Database independent interface for Common Lisp")
(description
"@code{dbi} is a Common Lisp library providing a database independent
@@ -11113,43 +8772,8 @@ interface for MySQL, PostgreSQL and SQLite.")
(define-public cl-dbi
(sbcl-package->cl-source-package sbcl-dbi))
-(define-public sbcl-dbd-mysql
- (package
- (inherit sbcl-dbi)
- (name "sbcl-dbd-mysql")
- (inputs
- `(("cl-mysql" ,sbcl-cl-mysql)
- ("dbi" ,sbcl-dbi)))
- (synopsis "Database driver for MySQL")))
-
-(define-public cl-dbd-mysql
- (sbcl-package->cl-source-package sbcl-dbd-mysql))
-
-(define-public sbcl-dbd-postgres
- (package
- (inherit sbcl-dbi)
- (name "sbcl-dbd-postgres")
- (inputs
- `(("cl-postgres" ,sbcl-cl-postgres)
- ("dbi" ,sbcl-dbi)
- ("trivial-garbage" ,sbcl-trivial-garbage)))
- (synopsis "Database driver for PostgreSQL")))
-
-(define-public cl-dbd-postgres
- (sbcl-package->cl-source-package sbcl-dbd-postgres))
-
-(define-public sbcl-dbd-sqlite3
- (package
- (inherit sbcl-dbi)
- (name "sbcl-dbd-sqlite3")
- (inputs
- `(("cl-sqlite" ,sbcl-cl-sqlite)
- ("dbi" ,sbcl-dbi)
- ("trivial-garbage" ,sbcl-trivial-garbage)))
- (synopsis "Database driver for SQLite3")))
-
-(define-public cl-dbd-sqlite3
- (sbcl-package->cl-source-package sbcl-dbd-sqlite3))
+(define-public ecl-dbi
+ (sbcl-package->ecl-package sbcl-dbi))
(define-public sbcl-uffi
(package
@@ -11167,6 +8791,7 @@ interface for MySQL, PostgreSQL and SQLite.")
(build-system asdf-build-system/sbcl)
(arguments
`(#:tests? #f ; TODO: Fix use of deprecated ASDF functions
+ #:asd-files '("uffi.asd")
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'fix-permissions
@@ -11188,10 +8813,8 @@ interface for MySQL, PostgreSQL and SQLite.")
;; asdf-build-system/source has its own phases and does not inherit
;; from asdf-build-system/sbcl phases.
(modify-phases %standard-phases/source
- (add-after 'unpack 'fix-permissions
- (lambda _
- (make-file-writable "doc/html.tar.gz")
- #t)))))))
+ ;; Already done in SBCL package.
+ (delete 'reset-gzip-timestamps))))))
(define-public sbcl-clsql
(package
@@ -11215,16 +8838,82 @@ interface for MySQL, PostgreSQL and SQLite.")
#t))))
(build-system asdf-build-system/sbcl)
(native-inputs
- `(("cffi-uffi-compat" ,sbcl-cffi-uffi-compat)
- ("rt" ,sbcl-rt)
- ("uffi" ,sbcl-uffi)))
+ `(("rt" ,sbcl-rt)))
+ (inputs
+ `(("cffi" ,sbcl-cffi)
+ ("md5" ,sbcl-md5)
+ ("mysql" ,mysql)
+ ("postgresql" ,postgresql)
+ ("postmodern" ,sbcl-postmodern)
+ ("sqlite" ,sqlite)
+ ("uffi" ,sbcl-uffi)
+ ("zlib" ,zlib)))
(arguments
- `(#:phases
+ `(#:asd-files '("clsql.asd"
+ "clsql-uffi.asd"
+ "clsql-sqlite3.asd"
+ "clsql-postgresql.asd"
+ "clsql-postgresql-socket3.asd"
+ "clsql-mysql.asd")
+ #:asd-systems '("clsql"
+ "clsql-sqlite3"
+ "clsql-postgresql"
+ "clsql-postgresql-socket3"
+ "clsql-mysql")
+ #:phases
(modify-phases %standard-phases
(add-after 'unpack 'fix-permissions
(lambda _
(make-file-writable "doc/html.tar.gz")
#t))
+ (add-after 'unpack 'fix-build
+ (lambda _
+ (substitute* "clsql-uffi.asd"
+ (("\\(:version uffi \"2.0\"\\)")
+ "uffi"))
+ (substitute* "db-postgresql/postgresql-api.lisp"
+ (("\\(data :cstring\\)")
+ "(data :string)"))
+ #t))
+ (add-after 'unpack 'fix-paths
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (substitute* "db-sqlite3/sqlite3-loader.lisp"
+ (("libsqlite3")
+ (string-append (assoc-ref inputs "sqlite")
+ "/lib/libsqlite3")))
+ (substitute* "db-postgresql/postgresql-loader.lisp"
+ (("libpq")
+ (string-append (assoc-ref inputs "postgresql")
+ "/lib/libpq")))
+ (let ((lib (string-append "#p\""
+ (assoc-ref outputs "out")
+ "/lib/\"")))
+ (substitute* "clsql-mysql.asd"
+ (("#p\"/usr/lib/clsql/clsql_mysql\\.so\"")
+ lib))
+ (substitute* "db-mysql/mysql-loader.lisp"
+ (("libmysqlclient" all)
+ (string-append (assoc-ref inputs "mysql") "/lib/" all))
+ (("clsql-mysql-system::\\*library-file-dir\\*")
+ lib)))
+ #t))
+ (add-before 'build 'build-helper-library
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (let* ((mysql (assoc-ref inputs "mysql"))
+ (inc-dir (string-append mysql "/include/mysql"))
+ (lib-dir (string-append mysql "/lib"))
+ (shared-lib-dir (string-append (assoc-ref outputs "out")
+ "/lib"))
+ (shared-lib (string-append shared-lib-dir
+ "/clsql_mysql.so")))
+ (mkdir-p shared-lib-dir)
+ (invoke "gcc" "-fPIC" "-shared"
+ "-I" inc-dir
+ "db-mysql/clsql_mysql.c"
+ "-Wl,-soname=clsql_mysql"
+ "-L" lib-dir "-lmysqlclient" "-lz"
+ "-o" shared-lib)
+ #t)))
(add-after 'unpack 'fix-tests
(lambda _
(substitute* "clsql.asd"
@@ -11250,9 +8939,9 @@ interfaces as well as a functional and an object oriented interface.")
("sqlite" ,sqlite)
("zlib" ,zlib)))
(propagated-inputs
- `(("cl-postgres" ,cl-postgres)
- ("cffi-uffi-compat" ,cl-cffi-uffi-compat)
+ `(("cffi" ,cl-cffi)
("md5" ,cl-md5)
+ ("postmodern" ,cl-postmodern)
("uffi" ,cl-uffi)))
(arguments
`(#:phases
@@ -11264,126 +8953,16 @@ interfaces as well as a functional and an object oriented interface.")
(make-file-writable "doc/html.tar.gz")
#t)))))))
-(define-public sbcl-clsql-uffi
- (package
- (inherit sbcl-clsql)
- (name "sbcl-clsql-uffi")
- (inputs
- `(("cffi-uffi-compat" ,sbcl-cffi-uffi-compat)
- ("clsql" ,sbcl-clsql)
- ("uffi" ,sbcl-uffi)))
- (synopsis "UFFI helper functions for Common Lisp SQL interface library")))
-
-(define-public sbcl-clsql-sqlite3
- (package
- (inherit sbcl-clsql)
- (name "sbcl-clsql-sqlite3")
- (inputs
- `(("clsql" ,sbcl-clsql)
- ("clsql-uffi" ,sbcl-clsql-uffi)
- ("sqlite" ,sqlite)))
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-clsql)
- ((#:phases phases '%standard-phases)
- `(modify-phases ,phases
- (add-after 'unpack 'fix-paths
- (lambda* (#:key inputs #:allow-other-keys)
- (substitute* "db-sqlite3/sqlite3-loader.lisp"
- (("libsqlite3")
- (string-append (assoc-ref inputs "sqlite")
- "/lib/libsqlite3")))
- #t))))))
- (synopsis "SQLite3 driver for Common Lisp SQL interface library")))
-
-(define-public sbcl-clsql-postgresql
- (package
- (inherit sbcl-clsql)
- (name "sbcl-clsql-postgresql")
- (inputs
- `(("clsql" ,sbcl-clsql)
- ("clsql-uffi" ,sbcl-clsql-uffi)
- ("postgresql" ,postgresql)))
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-clsql)
- ((#:phases phases '%standard-phases)
- `(modify-phases ,phases
- (add-after 'unpack 'fix-paths
- (lambda* (#:key inputs #:allow-other-keys)
- (substitute* "db-postgresql/postgresql-loader.lisp"
- (("libpq")
- (string-append (assoc-ref inputs "postgresql")
- "/lib/libpq")))
- #t))))))
- (synopsis "PostgreSQL driver for Common Lisp SQL interface library")))
-
-(define-public sbcl-clsql-postgresql-socket3
- (package
- (inherit sbcl-clsql)
- (name "sbcl-clsql-postgresql-socket3")
- (inputs
- `(("cl-postgres" ,sbcl-cl-postgres)
- ("clsql" ,sbcl-clsql)
- ("md5" ,sbcl-md5)))
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-clsql)
- ((#:phases phases '%standard-phases)
- `(modify-phases ,phases
- (add-after 'create-asd-file 'fix-asd-file
- (lambda* (#:key outputs #:allow-other-keys)
- (let* ((out (assoc-ref outputs "out"))
- (lib (string-append out "/lib/" (%lisp-type)))
- (asd (string-append lib "/clsql-postgresql-socket3.asd")))
- (substitute* asd
- (("CLSQL-POSTGRESQL-SOCKET-SYSTEM::")
- "")))
- #t))))))
- (synopsis "PostgreSQL driver for Common Lisp SQL interface library")))
-
-(define-public sbcl-clsql-mysql
- (package
- (inherit sbcl-clsql)
- (name "sbcl-clsql-mysql")
- (inputs
- `(("mysql" ,mysql)
- ("sbcl-clsql" ,sbcl-clsql)
- ("sbcl-clsql-uffi" ,sbcl-clsql-uffi)
- ("zlib" ,zlib)))
- (arguments
- (substitute-keyword-arguments (package-arguments sbcl-clsql)
- ((#:phases phases '%standard-phases)
- `(modify-phases ,phases
- (add-after 'unpack 'fix-paths
- (lambda* (#:key inputs outputs #:allow-other-keys)
- (let ((lib (string-append "#p\""
- (assoc-ref outputs "out")
- "/lib/\"")))
- (substitute* "clsql-mysql.asd"
- (("#p\"/usr/lib/clsql/clsql_mysql\\.so\"")
- lib))
- (substitute* "db-mysql/mysql-loader.lisp"
- (("libmysqlclient" all)
- (string-append (assoc-ref inputs "mysql") "/lib/" all))
- (("clsql-mysql-system::\\*library-file-dir\\*")
- lib)))
- #t))
- (add-before 'build 'build-helper-library
- (lambda* (#:key inputs outputs #:allow-other-keys)
- (let* ((mysql (assoc-ref inputs "mysql"))
- (inc-dir (string-append mysql "/include/mysql"))
- (lib-dir (string-append mysql "/lib"))
- (shared-lib-dir (string-append (assoc-ref outputs "out")
- "/lib"))
- (shared-lib (string-append shared-lib-dir
- "/clsql_mysql.so")))
- (mkdir-p shared-lib-dir)
- (invoke "gcc" "-fPIC" "-shared"
- "-I" inc-dir
- "db-mysql/clsql_mysql.c"
- "-Wl,-soname=clsql_mysql"
- "-L" lib-dir "-lmysqlclient" "-lz"
- "-o" shared-lib)
- #t)))))))
- (synopsis "MySQL driver for Common Lisp SQL interface library")))
+(define-public ecl-clsql
+ (let ((pkg (sbcl-package->ecl-package sbcl-clsql)))
+ (package
+ (inherit pkg)
+ (inputs
+ (alist-delete "uffi" (package-inputs pkg)))
+ (arguments
+ (substitute-keyword-arguments (package-arguments pkg)
+ ((#:asd-files asd-files '())
+ `(cons "clsql-cffi.asd" ,asd-files)))))))
(define-public sbcl-sycamore
(let ((commit "fd2820fec165ad514493426dea209728f64e6d18"))
@@ -11400,8 +8979,6 @@ interfaces as well as a functional and an object oriented interface.")
(sha256
(base32 "00bv1aj89q5vldmq92zp2364jq312zjq2mbd3iyz1s2b4widzhl7"))))
(build-system asdf-build-system/sbcl)
- (arguments
- `(#:asd-file "src/sycamore.asd"))
(inputs
`(("alexandria" ,sbcl-alexandria)
("cl-ppcre" ,sbcl-cl-ppcre)))
@@ -11424,6 +9001,9 @@ If features:
(define-public cl-sycamore
(sbcl-package->cl-source-package sbcl-sycamore))
+(define-public ecl-sycamore
+ (sbcl-package->ecl-package sbcl-sycamore))
+
(define-public sbcl-trivial-package-local-nicknames
(package
(name "sbcl-trivial-package-local-nicknames")
@@ -11449,6 +9029,9 @@ in DEFPACKAGE.")
(define-public cl-trivial-package-local-nicknames
(sbcl-package->cl-source-package sbcl-trivial-package-local-nicknames))
+(define-public ecl-trivial-package-local-nicknames
+ (sbcl-package->ecl-package sbcl-trivial-package-local-nicknames))
+
(define-public sbcl-enchant
(let ((commit "6af162a7bf10541cbcfcfa6513894900329713fa"))
(package
@@ -11488,6 +9071,9 @@ multiple checkers, including Aspell and Hunspell.")
(define-public cl-enchant
(sbcl-package->cl-source-package sbcl-enchant))
+(define-public ecl-enchant
+ (sbcl-package->ecl-package sbcl-enchant))
+
(define-public sbcl-cl-change-case
(let ((commit "5ceff2a5f8bd845b6cb510c6364176b27a238fd3"))
(package
@@ -11523,6 +9109,9 @@ PascalCase, snake_case, param-case, CONSTANT_CASE and more.")
(define-public cl-change-case
(sbcl-package->cl-source-package sbcl-cl-change-case))
+(define-public ecl-cl-change-case
+ (sbcl-package->ecl-package sbcl-cl-change-case))
+
(define-public sbcl-moptilities
(let ((commit "a436f16b357c96b82397ec018ea469574c10dd41"))
(package
@@ -11543,6 +9132,15 @@ PascalCase, snake_case, param-case, CONSTANT_CASE and more.")
`(("closer-mop" ,sbcl-closer-mop)))
(native-inputs
`(("lift" ,sbcl-lift)))
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'fix-tests
+ (lambda _
+ (substitute* "lift-standard.config"
+ ((":relative-to lift-test")
+ ":relative-to moptilities-test"))
+ #t)))))
(synopsis "Compatibility layer for Common Lisp MOP implementation differences")
(description
"MOP utilities provide a common interface between Lisps and make the
@@ -11568,29 +9166,12 @@ MOP easier to use.")
(sha256
(base32 "15viw5pi5sa7qq9b4n2rr3dj2jkqr180rh9z1lh8w3rgl42i2adc"))))
(build-system asdf-build-system/sbcl)
- (arguments
- `(#:phases
- (modify-phases %standard-phases
- ;; The cleanup phase moves files around but we need to keep the
- ;; directory structure for the grovel-generated library.
- (replace 'cleanup
- (lambda* (#:key outputs #:allow-other-keys)
- (let* ((out (assoc-ref outputs "out"))
- (lib (string-append out "/lib/sbcl/")))
- (delete-file-recursively (string-append lib "src"))
- (delete-file-recursively (string-append lib "tests"))
- (for-each delete-file
- (filter (lambda (file)
- (not (member (basename file) '("libosicat.so"))))
- (find-files (string-append lib "posix") ".*"))))
- #t)))))
(inputs
`(("alexandria" ,sbcl-alexandria)
("cffi" ,sbcl-cffi)
("trivial-features" ,sbcl-trivial-features)))
(native-inputs
- `(("cffi-grovel" ,sbcl-cffi-grovel)
- ("rt" ,sbcl-rt)))
+ `(("rt" ,sbcl-rt)))
(synopsis "Operating system interface for Common Lisp")
(description
"Osicat is a lightweight operating system interface for Common Lisp on
@@ -11601,6 +9182,9 @@ accompaniment to the standard ANSI facilities.")
(define-public cl-osicat
(sbcl-package->cl-source-package sbcl-osicat))
+(define-public ecl-osicat
+ (sbcl-package->ecl-package sbcl-osicat))
+
(define-public sbcl-clx-xembed
(let ((commit "a5c4b844d31ee68ffa58c933cc1cdddde6990743")
(revision "1"))
@@ -11619,7 +9203,7 @@ accompaniment to the standard ANSI facilities.")
(base32 "1abx4v36ycmfjdwpjk4hh8058ya8whwia7ds9vd96q2qsrs57f12"))))
(build-system asdf-build-system/sbcl)
(arguments
- `(#:asd-system-name "xembed"))
+ `(#:asd-systems '("xembed")))
(inputs
`(("sbcl-clx" ,sbcl-clx)))
(synopsis "CL(x) xembed protocol implementation ")
@@ -11649,7 +9233,7 @@ accompaniment to the standard ANSI facilities.")
"0rlswkf0siaabsvvch3dgxmg45fw5w8pd9b7ri2w7a298aya52z9"))))
(build-system asdf-build-system/sbcl)
(arguments
- '(#:asd-system-name "quantile-estimator"))
+ '(#:asd-files '("quantile-estimator.asd")))
(inputs
`(("alexandria" ,sbcl-alexandria)))
(home-page "https://github.com/deadtrickster/quantile-estimator.cl")
@@ -11685,9 +9269,29 @@ Streams in ICDE’05.")
(inputs
`(("alexandria" ,sbcl-alexandria)
("bordeaux-threads" ,sbcl-bordeaux-threads)
+ ("cffi" ,sbcl-cffi)
+ ("cl-fad" ,sbcl-cl-fad)
("cl-ppcre" ,sbcl-cl-ppcre)
+ ("drakma" ,sbcl-drakma)
+ ("hunchentoot" ,sbcl-hunchentoot)
("local-time" ,sbcl-local-time)
- ("quantile-estimator" ,sbcl-quantile-estimator)))
+ ("quantile-estimator" ,sbcl-quantile-estimator)
+ ("salza2" ,sbcl-salza2)
+ ("split-sequence" ,sbcl-split-sequence)
+ ("trivial-utf-8" ,sbcl-trivial-utf-8)))
+ (arguments
+ '(#:asd-files '("prometheus.asd"
+ "prometheus.collectors.sbcl.asd"
+ "prometheus.collectors.process.asd"
+ "prometheus.formats.text.asd"
+ "prometheus.exposers.hunchentoot.asd"
+ "prometheus.pushgateway.asd")
+ #:asd-systems '("prometheus"
+ "prometheus.collectors.sbcl"
+ "prometheus.collectors.process"
+ "prometheus.formats.text"
+ "prometheus.exposers.hunchentoot"
+ "prometheus.pushgateway")))
(home-page "https://github.com/deadtrickster/prometheus.cl")
(synopsis "Prometheus.io Common Lisp client")
(description "Prometheus.io Common Lisp client.")
@@ -11699,85 +9303,6 @@ Streams in ICDE’05.")
(define-public ecl-prometheus
(sbcl-package->ecl-package sbcl-prometheus))
-(define-public sbcl-prometheus.collectors.sbcl
- (package
- (inherit sbcl-prometheus)
- (name "sbcl-prometheus.collectors.sbcl")
- (inputs `(("prometheus" ,sbcl-prometheus)))
- (synopsis "Prometheus collector for SBCL metrics")
- (description "Prometheus collector for SBCL metrics.")))
-
-(define-public cl-prometheus.collectors.sbcl
- (sbcl-package->cl-source-package sbcl-prometheus.collectors.sbcl))
-
-(define-public sbcl-prometheus.collectors.process
- (package
- (inherit sbcl-prometheus)
- (name "sbcl-prometheus.collectors.process")
- (inputs
- `(("cffi" ,sbcl-cffi)
- ("cffi-grovel" ,sbcl-cffi-grovel)
- ("cl-fad" ,sbcl-cl-fad)
- ("prometheus" ,sbcl-prometheus)
- ("split-sequence" ,sbcl-split-sequence)))
- (synopsis "Prometheus collector for process metrics")
- (description "Prometheus collector for process metrics.")))
-
-(define-public cl-prometheus.collectors.process
- (sbcl-package->cl-source-package sbcl-prometheus.collectors.process))
-
-(define-public ecl-prometheus.collectors.process
- (sbcl-package->ecl-package sbcl-prometheus.collectors.process))
-
-(define-public sbcl-prometheus.formats.text
- (package
- (inherit sbcl-prometheus)
- (name "sbcl-prometheus.formats.text")
- (inputs
- `(("alexandria" ,sbcl-alexandria)
- ("prometheus" ,sbcl-prometheus)))
- (synopsis "Prometheus client text format")
- (description "Prometheus client text format.")))
-
-(define-public cl-prometheus.formats.text
- (sbcl-package->cl-source-package sbcl-prometheus.formats.text))
-
-(define-public ecl-prometheus.formats.text
- (sbcl-package->ecl-package sbcl-prometheus.formats.text))
-
-(define-public sbcl-prometheus.exposers.hunchentoot
- (package
- (inherit sbcl-prometheus)
- (name "sbcl-prometheus.exposers.hunchentoot")
- (inputs
- `(("hunchentoot" ,sbcl-hunchentoot)
- ("prometheus" ,sbcl-prometheus)
- ("prometheus.formats.text" ,sbcl-prometheus.formats.text)
- ("salza2" ,sbcl-salza2)
- ("trivial-utf-8" ,sbcl-trivial-utf-8)))
- (synopsis "Prometheus collector for Hunchentoot metrics")
- (description "Prometheus collector for Hunchentoot metrics")))
-
-(define-public cl-prometheus.exposers.hunchentoot
- (sbcl-package->cl-source-package sbcl-prometheus.exposers.hunchentoot))
-
-(define-public sbcl-prometheus.pushgateway
- (package
- (inherit sbcl-prometheus)
- (name "sbcl-prometheus.pushgateway")
- (inputs
- `(("drakma" ,sbcl-drakma)
- ("prometheus" ,sbcl-prometheus)
- ("prometheus.formats.text" ,sbcl-prometheus.formats.text)))
- (synopsis "Prometheus Pushgateway client")
- (description "Prometheus Pushgateway client.")))
-
-(define-public cl-prometheus.pushgateway
- (sbcl-package->cl-source-package sbcl-prometheus.pushgateway))
-
-(define-public ecl-prometheus.pushgateway
- (sbcl-package->ecl-package sbcl-prometheus.pushgateway))
-
(define-public sbcl-uuid
(let ((commit "e7d6680c3138385c0708f7aaf0c96622eeb140e8"))
(package
@@ -11842,9 +9367,6 @@ and active restarts.")
(define-public ecl-dissect
(sbcl-package->ecl-package sbcl-dissect))
-;; TODO: Uses ASDF's package-inferred-system which is not supported by
-;; asdf-build-system/sbcl as of 2020-05-21. We should fix
-;; asdf-build-system/sbcl.
(define-public sbcl-rove
(package
(name "sbcl-rove")
@@ -11928,14 +9450,13 @@ learn about each of the parameters.")
`(#:test-asd-file "sxql-test.asd"))
(inputs
`(("alexandria" ,sbcl-alexandria)
- ("cl-syntax-annot" ,sbcl-cl-syntax-annot)
+ ("cl-syntax" ,sbcl-cl-syntax)
("iterate" ,sbcl-iterate)
("optima" ,sbcl-optima)
("split-sequence" ,sbcl-split-sequence)
("trivial-types" ,sbcl-trivial-types)))
(native-inputs
- `(("prove" ,sbcl-prove)
- ("prove-asdf" ,sbcl-prove-asdf)))
+ `(("prove" ,sbcl-prove)))
(home-page "https://github.com/fukamachi/sxql")
(synopsis "SQL generator for Common Lisp")
(description "SQL generator for Common Lisp.")
@@ -11964,7 +9485,7 @@ learn about each of the parameters.")
"05ss4nz1jb9kb796295482b62w5cj29msfj8zis33sp2rw2vmv2g"))))
(build-system asdf-build-system/sbcl)
(arguments
- `(#:asd-system-name "1am"))
+ `(#:asd-systems '("1am")))
(home-page "https://github.com/lmj/1am")
(synopsis "Minimal testing framework for Common Lisp")
(description "A minimal testing framework for Common Lisp.")
@@ -12029,19 +9550,10 @@ tables.")
(substitute* "src/low-level/librdkafka-bindings.lisp"
(("librdkafka" all)
(string-append (assoc-ref inputs "librdkafka") "/lib/"
- all)))))
- (add-before 'cleanup 'move-bundle
- (lambda* (#:key outputs #:allow-other-keys)
- (let* ((out (assoc-ref outputs "out"))
- (actual (string-append out "/lib/sbcl/src/cl-rdkafka.fasl"))
- (expected (string-append
- out "/lib/sbcl/cl-rdkafka--system.fasl")))
- (copy-file actual expected)
- #t))))))
+ all))))))))
(inputs
`(("bordeaux-threads" ,sbcl-bordeaux-threads)
("cffi" ,sbcl-cffi)
- ("cffi-grovel" ,sbcl-cffi-grovel)
("librdkafka" ,librdkafka)
("lparallel" ,sbcl-lparallel)
("trivial-garbage" ,sbcl-trivial-garbage)))
@@ -12053,6 +9565,9 @@ tables.")
(define-public cl-rdkafka
(sbcl-package->cl-source-package sbcl-cl-rdkafka))
+(define-public ecl-cl-rdkafka
+ (sbcl-package->ecl-package sbcl-cl-rdkafka))
+
(define-public sbcl-acclimation
(let ((commit "4d51150902568fcd59335f4cc4cfa022df6116a5"))
(package
@@ -12083,10 +9598,13 @@ weight, temperature, names of physical quantitites, etc.")
(define-public cl-acclimation
(sbcl-package->cl-source-package sbcl-acclimation))
-(define-public sbcl-clump-2-3-tree
+(define-public ecl-acclimation
+ (sbcl-package->ecl-package sbcl-acclimation))
+
+(define-public sbcl-clump
(let ((commit "1ea4dbac1cb86713acff9ae58727dd187d21048a"))
(package
- (name "sbcl-clump-2-3-tree")
+ (name "sbcl-clump")
(version (git-version "0.0.0" "1" commit))
(source
(origin
@@ -12098,14 +9616,11 @@ weight, temperature, names of physical quantitites, etc.")
(sha256
(base32
"1639msyagsswj85gc0wd90jgh8588j3qg5q70by9s2brf2q6w4lh"))))
- (arguments
- '(#:asd-file "2-3-tree/clump-2-3-tree.asd"
- #:asd-system-name "clump-2-3-tree"))
(inputs
`(("acclimation" ,sbcl-acclimation)))
(build-system asdf-build-system/sbcl)
(home-page "https://github.com/robert-strandh/Clump")
- (synopsis "Implementation of 2-3 trees for Common Lisp")
+ (synopsis "Collection of tree implementations for Common Lisp")
(description "The purpose of this library is to provide a collection of
implementations of trees.
@@ -12119,34 +9634,16 @@ where the trees can be used as search trees or as trees that represent
sequences of objects.")
(license license:bsd-2))))
-(define-public sbcl-clump-binary-tree
- (package
- (inherit sbcl-clump-2-3-tree)
- (name "sbcl-clump-binary-tree")
- (arguments
- '(#:asd-file "Binary-tree/clump-binary-tree.asd"
- #:asd-system-name "clump-binary-tree"))
- (synopsis "Implementation of binary trees for Common Lisp")))
-
-(define-public sbcl-clump
- (package
- (inherit sbcl-clump-2-3-tree)
- (name "sbcl-clump")
- (arguments
- '(#:asd-file "clump.asd"
- #:asd-system-name "clump"))
- (inputs
- `(("clump-2-3-tree" ,sbcl-clump-2-3-tree)
- ("clump-binary-tree" ,sbcl-clump-binary-tree)))
- (synopsis "Collection of tree implementations for Common Lisp")))
-
(define-public cl-clump
(sbcl-package->cl-source-package sbcl-clump))
-(define-public sbcl-cluffer-base
+(define-public ecl-clump
+ (sbcl-package->ecl-package sbcl-clump))
+
+(define-public sbcl-cluffer
(let ((commit "4aad29c276a58a593064e79972ee4d77cae0af4a"))
(package
- (name "sbcl-cluffer-base")
+ (name "sbcl-cluffer")
(version (git-version "0.0.0" "1" commit))
(source
(origin
@@ -12158,12 +9655,10 @@ sequences of objects.")
(sha256
(base32
"1bcg13g7qb3dr8z50aihdjqa6miz5ivlc9wsj2csgv1km1mak2kj"))))
- (arguments
- '(#:asd-file "Base/cluffer-base.asd"
- #:asd-system-name "cluffer-base"))
- (inputs
- `(("acclimation" ,sbcl-acclimation)))
(build-system asdf-build-system/sbcl)
+ (inputs
+ `(("acclimation" ,sbcl-acclimation)
+ ("clump" ,sbcl-clump)))
(home-page "https://github.com/robert-strandh/cluffer")
(synopsis "Common Lisp library providing a protocol for text-editor buffers")
(description "Cluffer is a library for representing the buffer of a text
@@ -12172,64 +9667,12 @@ interact with the buffer contents in various ways, and it supplies different
implementations of those protocols for different purposes.")
(license license:bsd-2))))
-(define-public sbcl-cluffer-standard-line
- (package
- (inherit sbcl-cluffer-base)
- (name "sbcl-cluffer-standard-line")
- (arguments
- '(#:asd-file "Standard-line/cluffer-standard-line.asd"
- #:asd-system-name "cluffer-standard-line"))
- (inputs
- `(("cluffer-base" ,sbcl-cluffer-base)))))
-
-(define-public sbcl-cluffer-standard-buffer
- (package
- (inherit sbcl-cluffer-base)
- (name "sbcl-cluffer-standard-buffer")
- (arguments
- '(#:asd-file "Standard-buffer/cluffer-standard-buffer.asd"
- #:asd-system-name "cluffer-standard-buffer"))
- (inputs
- `(("cluffer-base" ,sbcl-cluffer-base)
- ("clump" ,sbcl-clump)))))
-
-(define-public sbcl-cluffer-simple-line
- (package
- (inherit sbcl-cluffer-base)
- (name "sbcl-cluffer-simple-line")
- (arguments
- '(#:asd-file "Simple-line/cluffer-simple-line.asd"
- #:asd-system-name "cluffer-simple-line"))
- (inputs
- `(("cluffer-base" ,sbcl-cluffer-base)))))
-
-(define-public sbcl-cluffer-simple-buffer
- (package
- (inherit sbcl-cluffer-base)
- (name "sbcl-cluffer-simple-buffer")
- (arguments
- '(#:asd-file "Simple-buffer/cluffer-simple-buffer.asd"
- #:asd-system-name "cluffer-simple-buffer"))
- (inputs
- `(("cluffer-base" ,sbcl-cluffer-base)))))
-
-(define-public sbcl-cluffer
- (package
- (inherit sbcl-cluffer-base)
- (name "sbcl-cluffer")
- (arguments
- '(#:asd-file "cluffer.asd"
- #:asd-system-name "cluffer"))
- (inputs
- `(("cluffer-base" ,sbcl-cluffer-base)
- ("cluffer-standard-line" ,sbcl-cluffer-standard-line)
- ("cluffer-standard-buffer" ,sbcl-cluffer-standard-buffer)
- ("cluffer-simple-line" ,sbcl-cluffer-simple-line)
- ("cluffer-simple-buffer" ,sbcl-cluffer-simple-buffer)))))
-
(define-public cl-cluffer
(sbcl-package->cl-source-package sbcl-cluffer))
+(define-public ecl-cluffer
+ (sbcl-package->ecl-package sbcl-cluffer))
+
(define-public sbcl-cl-libsvm-format
(let ((commit "3300f84fd8d9f5beafc114f543f9d83417c742fb")
(revision "0"))
@@ -12248,8 +9691,7 @@ implementations of those protocols for different purposes.")
"0284aj84xszhkhlivaigf9qj855fxad3mzmv3zfr0qzb5k0nzwrg"))))
(build-system asdf-build-system/sbcl)
(native-inputs
- `(("prove" ,sbcl-prove)
- ("prove-asdf" ,sbcl-prove-asdf)))
+ `(("prove" ,sbcl-prove)))
(inputs
`(("alexandria" ,sbcl-alexandria)))
(synopsis "LibSVM data format reader for Common Lisp")
@@ -12283,8 +9725,7 @@ format.")
"14x95rlg80ay5hv645ki57pqvy12v28hz4k1w0f6bsfi2rmpxchq"))))
(build-system asdf-build-system/sbcl)
(native-inputs
- `(("prove" ,sbcl-prove)
- ("prove-asdf" ,sbcl-prove-asdf)))
+ `(("prove" ,sbcl-prove)))
(inputs
`(("cl-libsvm-format" ,sbcl-cl-libsvm-format)
("cl-store" ,sbcl-cl-store)))
@@ -12323,7 +9764,6 @@ online linear classification written in Common Lisp.")
(build-system asdf-build-system/sbcl)
(native-inputs
`(("prove" ,sbcl-prove)
- ("prove-asdf" ,sbcl-prove-asdf)
("trivial-garbage" ,sbcl-trivial-garbage)))
(inputs
`(("alexandria" ,sbcl-alexandria)
@@ -12541,7 +9981,6 @@ wrappers of deflate streams. It currently does not handle compression.")
(inputs
`(("alexandria" ,sbcl-alexandria)
("cffi" ,sbcl-cffi)
- ("cffi-grovel" ,sbcl-cffi-grovel)
("freetype" ,freetype)
("trivial-garbage" ,sbcl-trivial-garbage)))
(arguments
@@ -12707,7 +10146,7 @@ than a few Kb.")
("trivial-features" ,sbcl-trivial-features)))
(arguments
;; FIXME: Without the following line, the build fails (see issue 41437).
- `(#:asd-system-name "3bz"))
+ `(#:asd-systems '("3bz")))
(home-page "https://github.com/3b/3bz")
(synopsis "Deflate decompression for Common Lisp")
(description
@@ -12817,6 +10256,8 @@ both from files on disk, or streams in memory.")
("retrospectiff" ,sbcl-retrospectiff)
("skippy" ,sbcl-skippy)
("zpng" ,sbcl-zpng)))
+ (arguments
+ '(#:asd-files '("opticl.asd")))
(home-page "https://github.com/slyrus/opticl")
(synopsis "Image processing library for Common Lisp")
(description
@@ -12827,11 +10268,14 @@ and saving 2-dimensional pixel-based images.")
(define-public cl-opticl
(sbcl-package->cl-source-package sbcl-opticl))
-(define-public sbcl-clim-lisp
+(define-public ecl-opticl
+ (sbcl-package->ecl-package sbcl-opticl))
+
+(define-public sbcl-mcclim
(let ((commit "27b4d7a667c9b3faa74cabcb57706b888314fff7")
(revision "0"))
(package
- (name "sbcl-clim-lisp")
+ (name "sbcl-mcclim")
(version (git-version "0.9.7" revision commit))
(source
(origin
@@ -12843,11 +10287,67 @@ and saving 2-dimensional pixel-based images.")
(sha256
(base32 "0jijfgkwas6xnpp5wiii6slcx9pgsalngacb8zm29x6pamx2193h"))))
(build-system asdf-build-system/sbcl)
+ (native-inputs
+ `(("fiveam" ,sbcl-fiveam)
+ ("pkg-config" ,pkg-config)))
(inputs
`(("alexandria" ,sbcl-alexandria)
+ ("babel" ,sbcl-babel)
+ ("bordeaux-threads" ,sbcl-bordeaux-threads)
+ ("cl-freetype2" ,sbcl-cl-freetype2)
+ ("cl-pdf" ,sbcl-cl-pdf)
+ ("cffi" ,sbcl-cffi)
+ ("cl-unicode" ,sbcl-cl-unicode)
+ ("cl-vectors" ,sbcl-cl-vectors)
("closer-mop" ,sbcl-closer-mop)
+ ("clx" ,sbcl-clx)
+ ("flexi-streams" ,sbcl-flexi-streams)
+ ("flexichain" ,sbcl-flexichain)
+ ("font-dejavu" ,font-dejavu)
+ ("fontconfig" ,fontconfig)
+ ("freetype" ,freetype)
+ ("harfbuzz" ,harfbuzz)
("log4cl" ,sbcl-log4cl)
- ("trivial-gray-streams" ,sbcl-trivial-gray-streams)))
+ ("opticl" ,sbcl-opticl)
+ ("spatial-trees" ,sbcl-spatial-trees)
+ ("swank" ,sbcl-slime-swank)
+ ("trivial-features" ,sbcl-trivial-features)
+ ("trivial-garbage" ,sbcl-trivial-garbage)
+ ("trivial-gray-streams" ,sbcl-trivial-gray-streams)
+ ("zpb-ttf" ,sbcl-zpb-ttf)))
+ (arguments
+ '(#:asd-systems '("mcclim"
+ "clim-examples")
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'fix-paths
+ (lambda* (#:key inputs #:allow-other-keys)
+ ;; mcclim-truetype uses DejaVu as default font and
+ ;; sets the path at build time.
+ (substitute* "Extensions/fonts/fontconfig.lisp"
+ (("/usr/share/fonts/truetype/dejavu/")
+ (string-append (assoc-ref inputs "font-dejavu")
+ "/share/fonts/truetype/")))
+ (substitute* "Extensions/fontconfig/src/functions.lisp"
+ (("libfontconfig\\.so")
+ (string-append (assoc-ref inputs "fontconfig")
+ "/lib/libfontconfig.so")))
+ (substitute* "Extensions/harfbuzz/src/functions.lisp"
+ (("libharfbuzz\\.so")
+ (string-append (assoc-ref inputs "harfbuzz")
+ "/lib/libharfbuzz.so")))
+ #t))
+ (add-after 'unpack 'fix-build
+ (lambda _
+ ;; The cffi-grovel system does not get loaded automatically,
+ ;; so we load it explicitly.
+ (substitute* "Extensions/fontconfig/mcclim-fontconfig.asd"
+ (("\\(asdf:defsystem #:mcclim-fontconfig" all)
+ (string-append "(asdf:load-system :cffi-grovel)\n" all)))
+ (substitute* "Extensions/harfbuzz/mcclim-harfbuzz.asd"
+ (("\\(asdf:defsystem #:mcclim-harfbuzz" all)
+ (string-append "(asdf:load-system :cffi-grovel)\n" all)))
+ #t)))))
(home-page "https://common-lisp.net/project/mcclim/")
(synopsis "Common Lisp GUI toolkit")
(description
@@ -12855,642 +10355,11 @@ and saving 2-dimensional pixel-based images.")
specification}, a toolkit for writing GUIs in Common Lisp.")
(license license:lgpl2.1+))))
-(define-public sbcl-clim-basic
- (package
- (inherit sbcl-clim-lisp)
- (name "sbcl-clim-basic")
- (inputs
- `(("alexandria" ,sbcl-alexandria)
- ("babel" ,sbcl-babel)
- ("bordeaux-threads" ,sbcl-bordeaux-threads)
- ("clim-lisp" ,sbcl-clim-lisp)
- ("flexichain" ,sbcl-flexichain)
- ("spatial-trees" ,sbcl-spatial-trees)
- ("trivial-features" ,sbcl-trivial-features)
- ("trivial-garbage" ,sbcl-trivial-garbage)))
- (arguments
- '(#:asd-file "Core/clim-basic/clim-basic.asd"))))
-
-(define-public sbcl-clim-core
- (package
- (inherit sbcl-clim-lisp)
- (name "sbcl-clim-core")
- (inputs
- `(("clim-basic" ,sbcl-clim-basic)))
- (arguments
- '(#:asd-file "Core/clim-core/clim-core.asd"))))
-
-(define-public sbcl-esa-mcclim
- (package
- (inherit sbcl-clim-lisp)
- (name "sbcl-esa-mcclim")
- (inputs
- `(("alexandria" ,sbcl-alexandria)
- ("clim-core" ,sbcl-clim-core)))
- (arguments
- '(#:asd-file "Libraries/ESA/esa-mcclim.asd"))))
-
-(define-public sbcl-mcclim-fonts
- (package
- (inherit sbcl-clim-lisp)
- (name "sbcl-mcclim-fonts")
- (inputs
- `(("clim-basic" ,sbcl-clim-basic)))
- (arguments
- '(#:asd-file "Extensions/fonts/mcclim-fonts.asd"))))
-
-(define-public sbcl-automaton
- (package
- (inherit sbcl-clim-lisp)
- (name "sbcl-automaton")
- (inputs
- `())
- (arguments
- '(#:asd-file "Libraries/Drei/cl-automaton/automaton.asd"))))
-
-(define-public sbcl-persistent
- (package
- (inherit sbcl-clim-lisp)
- (name "sbcl-persistent")
- (inputs
- `())
- (arguments
- '(#:asd-file "Libraries/Drei/Persistent/persistent.asd"))))
-
-(define-public sbcl-drei-mcclim
- (package
- (inherit sbcl-clim-lisp)
- (name "sbcl-drei-mcclim")
- (native-inputs
- `(("fiveam" ,sbcl-fiveam)))
- (inputs
- `(("automaton" ,sbcl-automaton)
- ("clim-core" ,sbcl-clim-core)
- ("esa-mcclim" ,sbcl-esa-mcclim)
- ("flexichain" ,sbcl-flexichain)
- ("mcclim-fonts" ,sbcl-mcclim-fonts)
- ("persistent" ,sbcl-persistent)
- ("swank" ,cl-slime-swank)))
- (arguments
- '(#:asd-file "Libraries/Drei/drei-mcclim.asd"))))
-
-(define-public sbcl-clim
- (package
- (inherit sbcl-clim-lisp)
- (name "sbcl-clim")
- (inputs
- `(("clim-core" ,sbcl-clim-core)
- ("drei-mcclim" ,sbcl-drei-mcclim)
- ("swank" ,cl-slime-swank))) ; For drei-mcclim
- (arguments
- '(#:asd-file "Core/clim/clim.asd"))))
-
-(define-public sbcl-mcclim-backend-common
- (package
- (inherit sbcl-clim-lisp)
- (name "sbcl-mcclim-backend-common")
- (native-inputs
- `(("fiveam" ,sbcl-fiveam)))
- (inputs
- `(("clim" ,sbcl-clim)
- ("swank" ,cl-slime-swank))) ; For drei-mcclim
- (arguments
- '(#:asd-file "Backends/common/mcclim-backend-common.asd"))))
-
-(define-public sbcl-mcclim-clx
- (package
- (inherit sbcl-clim-lisp)
- (name "sbcl-mcclim-clx")
- (inputs
- `(("alexandria" ,sbcl-alexandria)
- ("cl-unicode" ,sbcl-cl-unicode)
- ("clx" ,sbcl-clx)
- ("mcclim-backend-common" ,sbcl-mcclim-backend-common)
- ("mcclim-fonts" ,sbcl-mcclim-fonts)
- ("swank" ,cl-slime-swank))) ; For drei-mcclim
- (arguments
- '(#:asd-file "Backends/CLX/mcclim-clx.asd"))))
-
-(define-public sbcl-mcclim-fonts-truetype
- (package
- (inherit sbcl-clim-lisp)
- (name "sbcl-mcclim-fonts-truetype")
- (inputs
- `(("alexandria" ,sbcl-alexandria)
- ("cl-aa" ,sbcl-cl-aa)
- ("cl-paths-ttf" ,sbcl-cl-paths-ttf)
- ("cl-vectors" ,sbcl-cl-vectors)
- ("clim-basic" ,sbcl-clim-basic)
- ("font-dejavu" ,font-dejavu)
- ("zpb-ttf" ,sbcl-zpb-ttf)))
- (arguments
- '(#:asd-file "Extensions/fonts/mcclim-fonts.asd"
- #:asd-system-name "mcclim-fonts/truetype"
- #:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'fix-paths
- (lambda* (#:key inputs #:allow-other-keys)
- ;; mcclim-truetype uses DejaVu as default font and
- ;; sets the path at build time.
- (substitute* "Extensions/fonts/fontconfig.lisp"
- (("/usr/share/fonts/truetype/dejavu/")
- (string-append (assoc-ref inputs "font-dejavu")
- "/share/fonts/truetype/")))
- #t)))))))
-
-(define-public sbcl-mcclim-fonts-clx-truetype
- (package
- (inherit sbcl-clim-lisp)
- (name "sbcl-mcclim-fonts-clx-truetype")
- (inputs
- `(("mcclim-clx" ,sbcl-mcclim-clx)
- ("mcclim-fonts-truetype" ,sbcl-mcclim-fonts-truetype)
- ("swank" ,cl-slime-swank))) ; For drei-mcclim
- (arguments
- '(#:asd-file "./Extensions/fonts/mcclim-fonts.asd"
- #:asd-system-name "mcclim-fonts/clx-truetype"
- #:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'fix-asd-system-names
- (lambda _
- (substitute* "Extensions/fonts/mcclim-fonts.asd"
- ((":depends-on \\(#:mcclim-fonts/truetype")
- ":depends-on (#:mcclim-fonts-truetype"))
- #t)))))))
-
-(define-public sbcl-mcclim-clx-truetype
- (package
- (inherit sbcl-clim-lisp)
- (name "sbcl-mcclim-clx-truetype")
- (inputs
- `(("mcclim-clx" ,sbcl-mcclim-clx)
- ("mcclim-fonts-clx-truetype" ,sbcl-mcclim-fonts-clx-truetype)
- ("swank" ,cl-slime-swank))) ; For drei-mcclim
- (arguments
- '(#:asd-file "Backends/CLX/mcclim-clx.asd"
- #:asd-system-name "mcclim-clx/truetype"
- #:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'fix-asd-system-names
- (lambda _
- (substitute* "Backends/CLX/mcclim-clx.asd"
- (("mcclim-fonts/clx-truetype")
- "mcclim-fonts-clx-truetype"))
- #t)))))))
-
-(define-public sbcl-mcclim-fontconfig
- (package
- (inherit sbcl-clim-lisp)
- (name "sbcl-mcclim-fontconfig")
- (native-inputs
- `(("pkg-config" ,pkg-config)))
- (inputs
- `(("alexandria" ,sbcl-alexandria)
- ("cffi" ,sbcl-cffi)
- ("cffi-grovel" ,sbcl-cffi-grovel)
- ("fontconfig" ,fontconfig)))
- (arguments
- '(#:asd-file "Extensions/fontconfig/mcclim-fontconfig.asd"
- #:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'fix-paths
- (lambda* (#:key inputs #:allow-other-keys)
- (substitute* "Extensions/fontconfig/src/functions.lisp"
- (("libfontconfig\\.so")
- (string-append (assoc-ref inputs "fontconfig")
- "/lib/libfontconfig.so")))
- #t))
- (add-after 'unpack 'fix-build
- (lambda _
- ;; The cffi-grovel system does not get loaded automatically,
- ;; so we load it explicitly.
- (substitute* "Extensions/fontconfig/mcclim-fontconfig.asd"
- (("\\(asdf:defsystem #:mcclim-fontconfig" all)
- (string-append "(asdf:load-system :cffi-grovel)\n" all)))
- #t)))))))
-
-(define-public sbcl-mcclim-harfbuzz
- (package
- (inherit sbcl-clim-lisp)
- (name "sbcl-mcclim-harfbuzz")
- (native-inputs
- `(("pkg-config" ,pkg-config)))
- (inputs
- `(("alexandria" ,sbcl-alexandria)
- ("cffi" ,sbcl-cffi)
- ("cffi-grovel" ,sbcl-cffi-grovel)
- ("freetype" ,freetype)
- ("harfbuzz" ,harfbuzz)
- ("trivial-garbage" ,sbcl-trivial-garbage)))
- (arguments
- '(#:asd-file "Extensions/harfbuzz/mcclim-harfbuzz.asd"
- #:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'fix-paths
- (lambda* (#:key inputs #:allow-other-keys)
- (substitute* "Extensions/harfbuzz/src/functions.lisp"
- (("libharfbuzz\\.so")
- (string-append (assoc-ref inputs "harfbuzz")
- "/lib/libharfbuzz.so")))
- #t))
- (add-after 'unpack 'fix-build
- (lambda _
- ;; The cffi-grovel system does not get loaded automatically,
- ;; so we load it explicitly.
- (substitute* "Extensions/harfbuzz/mcclim-harfbuzz.asd"
- (("\\(asdf:defsystem #:mcclim-harfbuzz" all)
- (string-append "(asdf:load-system :cffi-grovel)\n" all)))
- #t)))))))
-
-(define-public sbcl-mcclim-fonts-clx-freetype
- (package
- (inherit sbcl-clim-lisp)
- (name "sbcl-mcclim-fonts-clx-freetype")
- (inputs
- `(("cl-freetype2" ,sbcl-cl-freetype2)
- ("mcclim-clx" ,sbcl-mcclim-clx)
- ("mcclim-fontconfig" ,sbcl-mcclim-fontconfig)
- ("mcclim-fonts" ,sbcl-mcclim-fonts)
- ("mcclim-harfbuzz" ,sbcl-mcclim-harfbuzz)
- ("swank" ,cl-slime-swank))) ; For drei-mcclim
- (arguments
- '(#:asd-file "Extensions/fonts/mcclim-fonts.asd"
- #:asd-system-name "mcclim-fonts/clx-freetype"))))
-
-(define-public sbcl-mcclim-clx-freetype
- (package
- (inherit sbcl-clim-lisp)
- (name "sbcl-mcclim-clx-freetype")
- (inputs
- `(("mcclim-clx" ,sbcl-mcclim-clx)
- ("mcclim-fonts-clx-freetype" ,sbcl-mcclim-fonts-clx-freetype)
- ("swank" ,cl-slime-swank))) ; For drei-mcclim
- (arguments
- '(#:asd-file "Backends/CLX/mcclim-clx.asd"
- #:asd-system-name "mcclim-clx/freetype"
- #:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'fix-asd-system-names
- (lambda _
- (substitute* "Backends/CLX/mcclim-clx.asd"
- (("mcclim-fonts/clx-freetype")
- "mcclim-fonts-clx-freetype"))
- #t)))))))
-
-(define-public sbcl-mcclim-render
- (package
- (inherit sbcl-clim-lisp)
- (name "sbcl-mcclim-render")
- (inputs
- `(("alexandria" ,sbcl-alexandria)
- ("cl-vectors" ,sbcl-cl-vectors)
- ("clim-basic" ,sbcl-clim-basic)
- ("mcclim-backend-common" ,sbcl-mcclim-backend-common)
- ("mcclim-fonts-truetype" ,sbcl-mcclim-fonts-truetype)
- ("swank" ,cl-slime-swank))) ; For drei-mcclim
- (arguments
- '(#:asd-file "Extensions/render/mcclim-render.asd"
- #:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'fix-asd-system-names
- (lambda _
- (substitute* "Extensions/render/mcclim-render.asd"
- (("mcclim-fonts/truetype")
- "mcclim-fonts-truetype"))
- #t)))))))
-
-(define-public sbcl-mcclim-clx-fb
- (package
- (inherit sbcl-clim-lisp)
- (name "sbcl-mcclim-clx-fb")
- (inputs
- `(("mcclim-backend-common" ,sbcl-mcclim-backend-common)
- ("mcclim-clx" ,sbcl-mcclim-clx)
- ("mcclim-render" ,sbcl-mcclim-render)
- ("swank" ,cl-slime-swank))) ; For drei-mcclim
- (arguments
- '(#:asd-file "Backends/CLX-fb/mcclim-clx-fb.asd"))))
-
-(define-public sbcl-mcclim-null
- (package
- (inherit sbcl-clim-lisp)
- (name "sbcl-mcclim-null")
- (inputs
- `(("clim" ,sbcl-clim)
- ("swank" ,cl-slime-swank))) ; For drei-mcclim
- (arguments
- '(#:asd-file "Backends/Null/mcclim-null.asd"))))
-
-(define-public sbcl-clim-postscript-font
- (package
- (inherit sbcl-clim-lisp)
- (name "sbcl-clim-postscript-font")
- (inputs
- `(("clim-basic" ,sbcl-clim-basic)
- ("mcclim-backend-common" ,sbcl-mcclim-backend-common)
- ("swank" ,cl-slime-swank))) ; For drei-mcclim
- (arguments
- '(#:asd-file "Backends/PostScript/clim-postscript-font.asd"))))
-
-(define-public sbcl-clim-postscript
- (package
- (inherit sbcl-clim-lisp)
- (name "sbcl-clim-postscript")
- (native-inputs
- `(("fiveam" ,sbcl-fiveam)))
- (inputs
- `(("clim-basic" ,sbcl-clim-basic)
- ("clim-postscript-font" ,sbcl-clim-postscript-font)
- ("swank" ,cl-slime-swank))) ; For drei-mcclim
- (arguments
- '(#:asd-file "Backends/PostScript/clim-postscript.asd"
- ;; Test suite disabled because of a dependency cycle.
- ;; The tests depend on mcclim/test-util, which depends on mcclim,
- ;; wich depends on mcclim/extensions, which depends on clim-postscript.
- #:tests? #f))))
-
-(define-public sbcl-clim-pdf
- (package
- (inherit sbcl-clim-lisp)
- (name "sbcl-clim-pdf")
- (native-inputs
- `(("fiveam" ,sbcl-fiveam)))
- (inputs
- `(("cl-pdf" ,sbcl-cl-pdf)
- ("clim-basic" ,sbcl-clim-basic)
- ("clim-postscript-font" ,sbcl-clim-postscript-font)
- ("flexi-streams" ,sbcl-flexi-streams)
- ("swank" ,cl-slime-swank))) ; For drei-mcclim
- (arguments
- '(#:asd-file "Backends/PDF/clim-pdf.asd"
- ;; Test suite disabled because of a dependency cycle.
- ;; The tests depend on mcclim/test-util, which depends on mcclim,
- ;; wich depends on mcclim/extensions, which depends on clim-pdf.
- #:tests? #f))))
-
-(define-public sbcl-mcclim-looks
- (package
- (inherit sbcl-clim-lisp)
- (name "sbcl-mcclim-looks")
- (inputs
- `(("clim" ,sbcl-clim)
- ("mcclim-clx" ,sbcl-mcclim-clx)
- ("mcclim-clx-fb" ,sbcl-mcclim-clx-fb)
- ("mcclim-clx-freetype" ,sbcl-mcclim-clx-freetype)
- ("mcclim-clx-truetype" ,sbcl-mcclim-clx-truetype)
- ("mcclim-null" ,sbcl-mcclim-null)
- ("swank" ,cl-slime-swank))) ; For drei-mcclim
- (arguments
- '(#:asd-file "mcclim.asd"
- #:asd-system-name "mcclim/looks"
- #:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'fix-asd-system-names
- (lambda _
- (substitute* "mcclim.asd"
- (("mcclim-clx/truetype")
- "mcclim-clx-truetype")
- (("mcclim-clx/freetype")
- "mcclim-clx-freetype"))
- #t)))))))
-
-(define-public sbcl-mcclim-franz
- (package
- (inherit sbcl-clim-lisp)
- (name "sbcl-mcclim-franz")
- (inputs
- `(("clim" ,sbcl-clim)
- ("swank" ,cl-slime-swank))) ; For drei-mcclim
- (arguments
- '(#:asd-file "Extensions/Franz/mcclim-franz.asd"))))
-
-(define-public sbcl-mcclim-bezier-core
- (package
- (inherit sbcl-clim-lisp)
- (name "sbcl-mcclim-bezier-core")
- (inputs
- `(("clim" ,sbcl-clim)
- ("clim-pdf" ,sbcl-clim-pdf)
- ("clim-postscript" ,sbcl-clim-postscript)
- ("mcclim-null" ,sbcl-mcclim-null)
- ("mcclim-render" ,sbcl-mcclim-render)
- ("swank" ,cl-slime-swank))) ; For drei-mcclim
- (arguments
- '(#:asd-file "Extensions/bezier/mcclim-bezier.asd"
- #:asd-system-name "mcclim-bezier/core"))))
-
-(define-public sbcl-mcclim-bezier-clx
- (package
- (inherit sbcl-clim-lisp)
- (name "sbcl-mcclim-bezier-clx")
- (inputs
- `(("clim" ,sbcl-clim)
- ("mcclim-bezier/core" ,sbcl-mcclim-bezier-core)
- ("mcclim-clx" ,sbcl-mcclim-clx)
- ("swank" ,cl-slime-swank))) ; For drei-mcclim
- (arguments
- '(#:asd-file "Extensions/bezier/mcclim-bezier.asd"
- #:asd-system-name "mcclim-bezier/clx"
- #:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'fix-asd-system-names
- (lambda _
- (substitute* "Extensions/bezier/mcclim-bezier.asd"
- (("mcclim-bezier/core\\)")
- "mcclim-bezier-core)"))
- #t)))))))
-
-(define-public sbcl-mcclim-bezier
- (package
- (inherit sbcl-clim-lisp)
- (name "sbcl-mcclim-bezier")
- (inputs
- `(("mcclim-bezier/clx" ,sbcl-mcclim-bezier-clx)
- ("mcclim-bezier/core" ,sbcl-mcclim-bezier-core)
- ("swank" ,cl-slime-swank))) ; For drei-mcclim
- (arguments
- '(#:asd-file "Extensions/bezier/mcclim-bezier.asd"
- #:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'fix-asd-system-names
- (lambda _
- (substitute* "Extensions/bezier/mcclim-bezier.asd"
- (("\\(#:mcclim-bezier/core")
- "(#:mcclim-bezier-core")
- (("#:mcclim-bezier/clx\\)\\)")
- "#:mcclim-bezier-clx))"))
- #t)))))))
-
-(define-public sbcl-mcclim-bitmaps
- (package
- (inherit sbcl-clim-lisp)
- (name "sbcl-mcclim-bitmaps")
- (inputs
- `(("clim-basic" ,sbcl-clim-basic)
- ("opticl" ,sbcl-opticl)))
- (arguments
- '(#:asd-file "Extensions/bitmap-formats/mcclim-bitmaps.asd"))))
-
-(define-public sbcl-conditional-commands
- (package
- (inherit sbcl-clim-lisp)
- (name "sbcl-conditional-commands")
- (inputs
- `(("clim-basic" ,sbcl-clim-basic)))
- (arguments
- '(#:asd-file "Extensions/conditional-commands/conditional-commands.asd"))))
-
-(define-public sbcl-mcclim-layouts-tab
- (package
- (inherit sbcl-clim-lisp)
- (name "sbcl-mcclim-layouts-tab")
- (inputs
- `(("clim" ,sbcl-clim)
- ("swank" ,cl-slime-swank))) ; For drei-mcclim
- (arguments
- '(#:asd-file "Extensions/layouts/mcclim-layouts.asd"
- #:asd-system-name "mcclim-layouts/tab"))))
-
-(define-public sbcl-mcclim-extensions
- (package
- (inherit sbcl-clim-lisp)
- (name "sbcl-mcclim-extensions")
- (inputs
- `(("clim-pdf" ,sbcl-clim-pdf)
- ("clim-postscript" ,sbcl-clim-postscript)
- ("conditional-commands" ,sbcl-conditional-commands)
- ("mcclim-bezier" ,sbcl-mcclim-bezier)
- ("mcclim-bitmaps" ,sbcl-mcclim-bitmaps)
- ("mcclim-franz" ,sbcl-mcclim-franz)
- ("mcclim-layouts-tab" ,sbcl-mcclim-layouts-tab)
- ("swank" ,cl-slime-swank))) ; For drei-mcclim
- (arguments
- '(#:asd-file "mcclim.asd"
- #:asd-system-name "mcclim/extensions"
- #:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'fix-asd-system-names
- (lambda _
- (substitute* "mcclim.asd"
- (("mcclim-layouts/tab")
- "mcclim-layouts-tab"))
- #t)))))))
-
-(define-public sbcl-mcclim
- (package
- (inherit sbcl-clim-lisp)
- (name "sbcl-mcclim")
- (native-inputs
- `(("fiveam" ,sbcl-fiveam)))
- (inputs
- `(("mcclim-looks" ,sbcl-mcclim-looks)
- ("mcclim-extensions" ,sbcl-mcclim-extensions)
- ("swank" ,cl-slime-swank))) ; For drei-mcclim
- (arguments
- '(#:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'fix-asd-system-names
- (lambda _
- (substitute* "mcclim.asd"
- ((":depends-on \\(\"mcclim/looks\" \"mcclim/extensions\"\\)")
- ":depends-on (\"mcclim-looks\" \"mcclim-extensions\")"))
- #t)))
- ;; Test suite disabled because of a dependency cycle.
- ;; The tests depend on mcclim/test-util, which depends on mcclim.
- #:tests? #f))))
-
(define-public cl-mcclim
- (let ((base (sbcl-package->cl-source-package sbcl-clim-lisp)))
- (package
- (inherit base)
- (name "cl-mcclim")
- (native-inputs
- `(("fiveam" ,cl-fiveam)
- ("pkg-config" ,pkg-config)))
- (inputs
- `(("alexandria" ,cl-alexandria)
- ("babel" ,cl-babel)
- ("bordeaux-threads" ,cl-bordeaux-threads)
- ("cffi" ,cl-cffi)
- ("cl-aa" ,cl-aa)
- ("cl-freetype2" ,cl-freetype2)
- ("cl-paths-ttf" ,cl-paths-ttf)
- ("cl-pdf" ,cl-pdf)
- ("cl-unicode" ,cl-unicode)
- ("cl-vectors" ,cl-vectors)
- ("closer-mop" ,cl-closer-mop)
- ("clx" ,cl-clx)
- ("flexi-streams" ,cl-flexi-streams)
- ("flexichain" ,cl-flexichain)
- ("fontconfig" ,fontconfig)
- ("freetype" ,freetype)
- ("harfbuzz" ,harfbuzz)
- ("log4cl" ,cl-log4cl)
- ("opticl" ,cl-opticl)
- ("spatial-trees" ,cl-spatial-trees)
- ("trivial-features" ,cl-trivial-features)
- ("trivial-garbage" ,cl-trivial-garbage)
- ("trivial-gray-streams" ,cl-trivial-gray-streams)
- ("swank" ,cl-slime-swank)
- ("zpb-ttf" ,cl-zpb-ttf))))))
-
-(define-public sbcl-mcclim-test-util
- (package
- (inherit sbcl-clim-lisp)
- (name "sbcl-mcclim-test-util")
- (inputs
- `(("fiveam" ,sbcl-fiveam)
- ("mcclim" ,sbcl-mcclim)
- ("swank" ,cl-slime-swank))) ; For drei-mcclim
- (arguments
- '(#:asd-file "mcclim.asd"
- #:asd-system-name "mcclim/test-util"))))
-
-(define-public sbcl-mcclim-raster-image
- (package
- (inherit sbcl-clim-lisp)
- (name "sbcl-mcclim-raster-image")
- (native-inputs
- `(("fiveam" ,sbcl-fiveam)
- ("mcclim-test-util" ,sbcl-mcclim-test-util)))
- (inputs
- `(("clim-basic" ,sbcl-clim-basic)
- ("mcclim-backend-common" ,sbcl-mcclim-backend-common)
- ("mcclim-render" ,sbcl-mcclim-render)
- ("swank" ,cl-slime-swank))) ; For drei-mcclim
- (arguments
- '(#:asd-file "Backends/RasterImage/mcclim-raster-image.asd"
- #:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'fix-asd-system-names
- (lambda _
- (substitute* "Backends/RasterImage/mcclim-raster-image.asd"
- (("mcclim/test-util")
- "mcclim-test-util"))
- #t)))))))
+ (sbcl-package->cl-source-package sbcl-mcclim))
-(define-public sbcl-clim-examples
- (package
- (inherit sbcl-clim-lisp)
- (name "sbcl-clim-examples")
- (inputs
- `(("alexandria" ,sbcl-alexandria)
- ("closer-mop" ,sbcl-closer-mop)
- ("mcclim" ,sbcl-mcclim)
- ("mcclim-bezier" ,sbcl-mcclim-bezier)
- ("mcclim-layouts-tab" ,sbcl-mcclim-layouts-tab)
- ("mcclim-raster-image" ,sbcl-mcclim-raster-image)
- ("swank" ,cl-slime-swank))) ; For drei-mcclim
- (arguments
- '(#:asd-file "Examples/clim-examples.asd"
- #:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'fix-asd-system-names
- (lambda _
- (substitute* "Examples/clim-examples.asd"
- (("mcclim-layouts/tab")
- "mcclim-layouts-tab"))
- #t)))))))
+(define-public ecl-mcclim
+ (sbcl-package->ecl-package sbcl-mcclim))
(define-public sbcl-cl-inflector
(let ((commit "f1ab16919ccce3bd82a0042677d9616dde2034fe")
@@ -13613,7 +10482,8 @@ package that includes a number of renames and shadows. ")
("metabang-bind" ,sbcl-metabang-bind)))
(home-page "http://dwim.hu/")
(synopsis "Common Lisp library shared by other hu.dwim systems")
- (description "")
+ (description "This package contains a support library for other
+hu.dwim systems.")
(license license:public-domain)))
(define-public cl-hu.dwim.common
@@ -13655,7 +10525,7 @@ simplify class and condition declarations. Features include:
@itemize
@item Automatically export all or select slots at compile time.
-@item Define the @code{:initarg} and @code{:accesor} automatically.
+@item Define the @code{:initarg} and @code{:accessor} automatically.
@item Specify a name transformer for both the @code{:initarg} and
@code{:accessor}, etc.
@item Specify the @code{:initform} as second slot value.
@@ -13746,11 +10616,11 @@ can separate configuration system from an implementation.")
(define-public ecl-envy
(sbcl-package->ecl-package sbcl-envy))
-(define sbcl-mito-core
+(define-public sbcl-mito
(let ((commit "d3b9e375ef364a65692da2185085a08c969ac88a")
(revision "1"))
(package
- (name "sbcl-mito-core")
+ (name "sbcl-mito")
(version (git-version "0.1" revision commit))
(home-page "https://github.com/fukamachi/mito")
(source
@@ -13763,76 +10633,21 @@ can separate configuration system from an implementation.")
(sha256
(base32 "08mncgzjnbbsf1a6am3l73iw4lyfvz5ldjg5g84awfaxml4p73mb"))))
(build-system asdf-build-system/sbcl)
+ (native-inputs
+ `(("prove" ,sbcl-prove)))
(inputs
- `(("dbi" ,sbcl-dbi)
- ("sxql" ,sbcl-sxql)
+ `(("alexandria" ,sbcl-alexandria)
("cl-ppcre" ,sbcl-cl-ppcre)
+ ("cl-reexport" ,sbcl-cl-reexport)
("closer-mop" ,sbcl-closer-mop)
+ ("dbi" ,sbcl-dbi)
("dissect" ,sbcl-dissect)
- ("optima" ,sbcl-optima)
- ("cl-reexport" ,sbcl-cl-reexport)
+ ("esrap" ,sbcl-esrap)
("local-time" ,sbcl-local-time)
- ("uuid" ,sbcl-uuid)
- ("alexandria" ,sbcl-alexandria)))
- (synopsis "ORM for Common Lisp with migrations and relationships support")
- (description "Mito is yet another object relational mapper, and it aims
-to be a successor of Integral.
-
-@itemize
-@item Support MySQL, PostgreSQL and SQLite3.
-@item Add id (serial/uuid primary key), created_at and updated_at by default
-like Ruby's ActiveRecord.
-@item Migrations.
-@item Database schema versioning.
-@end itemize\n")
- (license license:llgpl))))
-
-(define sbcl-mito-migration
- (package
- (inherit sbcl-mito-core)
- (name "sbcl-mito-migration")
- (inputs
- `(("mito-core" ,sbcl-mito-core)
- ("dbi" ,sbcl-dbi)
- ("sxql" ,sbcl-sxql)
- ("closer-mop" ,sbcl-closer-mop)
- ("cl-reexport" ,sbcl-cl-reexport)
- ("uuid" ,sbcl-uuid)
- ("alexandria" ,sbcl-alexandria)
- ("esrap" ,sbcl-esrap)))))
-
-(define sbcl-lack-middleware-mito
- (package
- (inherit sbcl-mito-core)
- (name "sbcl-lack-middleware-mito")
- (inputs
- `(("mito-core" ,sbcl-mito-core)
- ("dbi" ,sbcl-dbi)))
- (arguments
- '(#:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'fix-build
- (lambda _
- (substitute* "lack-middleware-mito.asd"
- (("cl-dbi") "dbi"))
- #t)))))))
-
-(define-public sbcl-mito
- (package
- (inherit sbcl-mito-core)
- (name "sbcl-mito")
- (inputs
- `(("mito-core" ,sbcl-mito-core)
- ("mito-migration" ,sbcl-mito-migration)
- ("lack-middleware-mito" ,sbcl-lack-middleware-mito)
- ("cl-reexport" ,sbcl-cl-reexport)))
- (native-inputs
- `(("prove" ,sbcl-prove)
- ("prove-asdf" ,sbcl-prove-asdf)
- ("dbd-mysql" ,sbcl-dbd-mysql)
- ("dbd-postgres" ,sbcl-dbd-postgres)
- ("dbd-sqlite3" ,sbcl-dbd-sqlite3)))
- (arguments
+ ("optima" ,sbcl-optima)
+ ("sxql" ,sbcl-sxql)
+ ("uuid" ,sbcl-uuid)))
+ (arguments
'(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'remove-non-functional-tests
@@ -13852,11 +10667,26 @@ like Ruby's ActiveRecord.
#t)))
;; TODO: While all enabled tests pass, the phase fails with:
;; Component MITO-ASD::MITO-TEST not found, required by #<SYSTEM "mito">
- #:tests? #f))))
+ #:tests? #f))
+ (synopsis "ORM for Common Lisp with migrations and relationships support")
+ (description "Mito is yet another object relational mapper, and it aims
+to be a successor of Integral.
+
+@itemize
+@item Support MySQL, PostgreSQL and SQLite3.
+@item Add id (serial/uuid primary key), created_at and updated_at by default
+like Ruby's ActiveRecord.
+@item Migrations.
+@item Database schema versioning.
+@end itemize\n")
+ (license license:llgpl))))
(define-public cl-mito
(sbcl-package->cl-source-package sbcl-mito))
+(define-public ecl-mito
+ (sbcl-package->ecl-package sbcl-mito))
+
(define-public sbcl-kebab
(let ((commit "e7f77644c4e46131e7b8039d191d35fe6211f31b")
(revision "1"))
@@ -13880,8 +10710,7 @@ like Ruby's ActiveRecord.
("cl-interpol" ,sbcl-cl-interpol)
("split-sequence" ,sbcl-split-sequence)))
(native-inputs
- `(("prove-asdf" ,sbcl-prove-asdf)
- ("prove" ,sbcl-prove)))
+ `(("prove" ,sbcl-prove)))
(arguments
;; Tests passes but the phase fails with
;; Component KEBAB-ASD::KEBAB-TEST not found, required by #<SYSTEM "kebab">.
@@ -13921,7 +10750,7 @@ camelCase, snake_case, kebab-case (lisp-case).")
("optima" ,sbcl-optima)
("trivial-types" ,sbcl-trivial-types)
("closer-mop" ,sbcl-closer-mop)
- ("cl-syntax-annot" ,sbcl-cl-syntax-annot)
+ ("cl-syntax" ,sbcl-cl-syntax)
("sxql" ,sbcl-sxql)
("dbi" ,sbcl-dbi)
("babel" ,sbcl-babel)
@@ -13931,9 +10760,7 @@ camelCase, snake_case, kebab-case (lisp-case).")
("kebab" ,sbcl-kebab)
("log4cl" ,sbcl-log4cl)))
(native-inputs
- `(("prove-asdf" ,sbcl-prove-asdf)
- ("prove" ,sbcl-prove)
- ("dbd-sqlite3" ,sbcl-dbd-sqlite3)))
+ `(("prove" ,sbcl-prove)))
(arguments
;; TODO: Tests fail with
;; While evaluating the form starting at line 22, column 0
@@ -14039,7 +10866,8 @@ that and not limited to a certain server or text format.")
("prove" ,sbcl-prove)))
(arguments
;; Tests depend on caveman, which in turns depends on cl-project.
- '(#:tests? #f))
+ '(#:tests? #f
+ #:asd-files '("cl-project.asd")))
(synopsis "Generate a skeleton for modern Common Lisp projects")
(description "This library provides a modern project skeleton generator.
In contract with other generators, CL-Project generates one package per file
@@ -14072,19 +10900,18 @@ can begin writing unit tests as soon as the project is generated.")
(build-system asdf-build-system/sbcl)
(inputs
`(("ningle" ,cl-ningle)
- ("lack-request" ,sbcl-lack-request)
- ("lack-response" ,sbcl-lack-response)
+ ("lack" ,sbcl-lack)
("cl-project" ,sbcl-cl-project)
("dbi" ,sbcl-dbi)
- ("cl-syntax-annot" ,sbcl-cl-syntax-annot)
+ ("cl-syntax" ,sbcl-cl-syntax)
("myway" ,sbcl-myway)
("quri" ,sbcl-quri)))
(native-inputs
`(("usocket" ,sbcl-usocket)
("dexador" ,sbcl-dexador)))
(arguments
- `(#:asd-file "caveman2.asd"
- #:asd-system-name "caveman2"
+ `(#:asd-files '("caveman2.asd")
+ #:asd-systems '("caveman2")
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'remove-v1
@@ -14120,3 +10947,88 @@ web applications. Caveman2 has three design goals:
(define-public ecl-caveman
(sbcl-package->ecl-package sbcl-caveman))
+
+(define-public sbcl-lambda-fiddle
+ (let ((commit "d16bba55acf6065b412f64ab8fdff679a4a32b1e") ;; no tagged branch
+ (revision "1"))
+ (package
+ (name "sbcl-lambda-fiddle")
+ (version (git-version "1.0.0" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/Shinmera/lambda-fiddle")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1zarj1pqjqmk95kdx1axkgpwy2wq3canczk7f9z5hvaw5an6gand"))))
+ (build-system asdf-build-system/sbcl)
+ (home-page "https://github.com/Shinmera/lambda-fiddle")
+ (synopsis "Collection of utilities to process lambda-lists")
+ (description "This collection of utilities is useful in contexts where
+you want a macro that uses lambda-lists in some fashion but need more precise
+processing.")
+ (license license:zlib))))
+
+(define-public cl-lambda-fiddle
+ (sbcl-package->cl-source-package sbcl-lambda-fiddle))
+
+(define-public ecl-lambda-fiddle
+ (sbcl-package->ecl-package sbcl-lambda-fiddle))
+
+(define-public sbcl-xmls
+ (let ((commit "18546f0850b1338e03997ffd1696add1cb1800d1") ;; no tagged branch
+ (revision "1"))
+ (package
+ (name "sbcl-xmls")
+ (version (git-version "3.0.2" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/rpgoldman/xmls")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1lmvfml2ldbb1wkhm25jqqk2bhwsz52hhcgljbnzj1xr8xhc3anp"))))
+ (native-inputs
+ `(("fiveam" ,sbcl-fiveam)))
+ (build-system asdf-build-system/sbcl)
+ (home-page "https://github.com/rpgoldman/xmls")
+ (synopsis "Non-validating XML parser for Common Lisp")
+ (description "Xmls is a self-contained, easily embedded parser that
+recognizes a useful subset of the XML spec. It provides a simple mapping from
+XML to Lisp structures or s-expressions and back.")
+ (license license:bsd-2))))
+
+(define-public cl-xmls
+ (sbcl-package->cl-source-package sbcl-xmls))
+
+(define-public ecl-xmls
+ (sbcl-package->ecl-package sbcl-xmls))
+
+(define-public sbcl-geco
+ (package
+ (name "sbcl-geco")
+ (version "2.01a")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "https://common-lisp.net/project/geco/download/"
+ "geco-" version ".tar.gz"))
+ (sha256
+ (base32 "0kk0bzr1019cfmf2b1jl1rk9shv3gx5z1znifxllg9mb98yqsgw0"))))
+ (build-system asdf-build-system/sbcl)
+ (home-page "https://common-lisp.net/project/geco/")
+ (synopsis "Genetic algorithm toolkit for Common Lisp")
+ (description
+ "GECO (Genetic Evolution through Combination of Objects) is an extensible,
+object-oriented framework for prototyping genetic algorithms in Common Lisp.")
+ (license license:lgpl2.1+)))
+
+(define-public cl-geco
+ (sbcl-package->cl-source-package sbcl-geco))
+
+(define-public ecl-geco
+ (sbcl-package->ecl-package sbcl-geco))
diff --git a/gnu/packages/lisp.scm b/gnu/packages/lisp.scm
index df901aa34f..c2114e6935 100644
--- a/gnu/packages/lisp.scm
+++ b/gnu/packages/lisp.scm
@@ -51,10 +51,8 @@
#:use-module (gnu packages admin)
#:use-module (gnu packages base)
#:use-module (gnu packages bdw-gc)
- #:use-module (gnu packages bison)
#:use-module (gnu packages compression)
#:use-module (gnu packages ed)
- #:use-module (gnu packages flex)
#:use-module (gnu packages fontutils)
#:use-module (gnu packages gcc)
#:use-module (gnu packages gettext)
@@ -78,21 +76,10 @@
#:use-module (gnu packages xorg)
#:use-module (ice-9 match))
-(define (asdf-substitutions lisp)
- ;; Prepend XDG_DATA_DIRS/LISP-bundle-systems to ASDF's
- ;; 'default-system-source-registry'.
- `((("\\(,dir \"systems/\"\\)\\)")
- (format #f
- "(,dir \"~a-bundle-systems\")))
-
- ,@(loop :for dir :in (xdg-data-dirs \"common-lisp/\")
- :collect `(:directory (,dir \"systems\"))"
- ,lisp))))
-
(define-public cl-asdf
(package
(name "cl-asdf")
- (version "3.3.3")
+ (version "3.3.4")
(source
(origin
(method url-fetch)
@@ -100,7 +87,7 @@
(string-append "https://common-lisp.net/project/asdf/archives/asdf-"
version ".lisp"))
(sha256
- (base32 "18lr6kxvzhr79c9rx3sdricz30aby866fj0m24w27zxsqlyvn3rd"))))
+ (base32 "1hpx30f6yrak15nw992k7x3pn75ahvjs04n4f134k68mhgs62km2"))))
(build-system trivial-build-system)
(arguments
`(#:modules ((guix build utils)
@@ -112,9 +99,29 @@
(let* ((out (string-append (assoc-ref %outputs "out")))
(asdf-install (string-append out %source-install-prefix
"/source/asdf/"))
- (asdf (string-append (assoc-ref %build-inputs "source"))))
+ (src-asdf (string-append (assoc-ref %build-inputs "source")))
+ (dst-asdf (string-append asdf-install "asdf.lisp")))
(mkdir-p asdf-install)
- (copy-file asdf (string-append asdf-install "asdf.lisp"))))))
+ (copy-file src-asdf dst-asdf)
+ ;; Patch ASDF to make it read the configuration files in all
+ ;; the direcories listed in '$XDG_CONFIG_DIRS' instead of just
+ ;; the first.
+ (substitute* dst-asdf
+ (("\\(xdg-config-pathname \\*source-registry-directory\\* direction\\)")
+ "`(:source-registry
+ ,@(loop
+ for dir in (xdg-config-dirs
+ \"common-lisp/source-registry.conf.d/\")
+ collect `(:include ,dir))
+ :inherit-configuration)")
+ (("\\(xdg-config-pathname \\*output-translations-directory\\* direction\\)")
+ "`(:output-translations
+ ,@(loop
+ for dir in (xdg-config-dirs
+ \"common-lisp/asdf-output-translations.conf.d/\")
+ collect `(:include ,dir))
+ :inherit-configuration)")))
+ #t)))
(home-page "https://common-lisp.net/project/asdf/")
(synopsis "Another System Definition Facility")
(description
@@ -261,10 +268,7 @@ interface to the Tk widget system.")
"/share/common-lisp/source/asdf/asdf.lisp"))
(out (string-append (assoc-ref outputs "out")))
(contrib-asdf "contrib/asdf/asdf.lisp"))
- (copy-file guix-asdf contrib-asdf)
- ;; Add ecl-bundle-systems to 'default-system-source-registry'.
- (substitute* contrib-asdf
- ,@(asdf-substitutions name)))
+ (copy-file guix-asdf contrib-asdf))
#t))
(add-after 'install 'wrap
(lambda* (#:key inputs outputs #:allow-other-keys)
@@ -298,7 +302,10 @@ interface to the Tk widget system.")
(native-search-paths
(list (search-path-specification
(variable "XDG_DATA_DIRS")
- (files '("share")))))
+ (files '("share")))
+ (search-path-specification
+ (variable "XDG_CONFIG_DIRS")
+ (files '("etc")))))
(home-page "http://ecls.sourceforge.net/")
(synopsis "Embeddable Common Lisp")
(description "ECL is an implementation of the Common Lisp language as
@@ -437,9 +444,7 @@ an interpreter, a compiler, a debugger, and much more.")
"/share/common-lisp/source/asdf/asdf.lisp"))
(out (string-append (assoc-ref outputs "out")))
(contrib-asdf "contrib/asdf/asdf.lisp"))
- (copy-file guix-asdf contrib-asdf)
- (substitute* contrib-asdf
- ,@(asdf-substitutions name)))
+ (copy-file guix-asdf contrib-asdf))
#t))
(add-before 'build 'patch-unix-tool-paths
(lambda* (#:key outputs inputs #:allow-other-keys)
@@ -546,7 +551,10 @@ an interpreter, a compiler, a debugger, and much more.")
(native-search-paths
(list (search-path-specification
(variable "XDG_DATA_DIRS")
- (files '("share")))))
+ (files '("share")))
+ (search-path-specification
+ (variable "XDG_CONFIG_DIRS")
+ (files '("etc")))))
(home-page "http://www.sbcl.org/")
(synopsis "Common Lisp implementation")
(description "Steel Bank Common Lisp (SBCL) is a high performance Common
@@ -801,7 +809,7 @@ enough to play the original mainframe Zork all the way through.")
(define-public txr
(package
(name "txr")
- (version "243")
+ (version "244")
(source
(origin
(method git-fetch)
@@ -810,7 +818,7 @@ enough to play the original mainframe Zork all the way through.")
(commit (string-append "txr-" version))))
(file-name (git-file-name name version))
(sha256
- (base32 "08rrl7ac6jnx0zfchzbpvs3qidrbjrl9c7p8s1wms90lp10i18ak"))))
+ (base32 "1bzhb1pms6gjzphbsimhwdyq46ik1m7sgldigg5l1q7bppg9r3i0"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags
@@ -832,9 +840,6 @@ enough to play the original mainframe Zork all the way through.")
"tests/017/realpath.expected")
(("/usr/bin") "/"))
#t)))))
- (native-inputs
- `(("bison" ,bison)
- ("flex" ,flex)))
(inputs
`(("libffi" ,libffi)))
(synopsis "General-purpose, multi-paradigm programming language")
diff --git a/gnu/packages/llvm.scm b/gnu/packages/llvm.scm
index ef7d65264c..127a8f5e55 100644
--- a/gnu/packages/llvm.scm
+++ b/gnu/packages/llvm.scm
@@ -80,7 +80,7 @@ as \"x86_64-linux\"."
("i686" => "X86")
("i586" => "X86"))))
-(define (llvm-download-uri component version)
+(define (llvm-uri component version)
(if (version>=? version "9.0.1")
(string-append "https://github.com/llvm/llvm-project/releases/download"
"/llvmorg-" version "/" component "-" version ".src.tar.xz")
@@ -94,7 +94,7 @@ as \"x86_64-linux\"."
(source
(origin
(method url-fetch)
- (uri (llvm-download-uri "llvm" version))
+ (uri (llvm-uri "llvm" version))
(sha256
(base32
"1wydhbp9kyjp5y0rc627imxgkgqiv3dfirbqil9dgpnbaw5y7n65"))))
@@ -157,7 +157,7 @@ of programming tools as well as libraries with equivalent functionality.")
(source
(origin
(method url-fetch)
- (uri (llvm-download-uri "compiler-rt" version))
+ (uri (llvm-uri "compiler-rt" version))
(sha256 (base32 hash))
(patches (map search-patch patches))))
(build-system cmake-build-system)
@@ -213,7 +213,7 @@ given PATCHES. When TOOLS-EXTRA is given, it must point to the
(source
(origin
(method url-fetch)
- (uri (llvm-download-uri (if (version>=? version "9.0.1")
+ (uri (llvm-uri (if (version>=? version "9.0.1")
"clang"
"cfe")
version))
@@ -476,6 +476,12 @@ code analysis tools.")
(((names . directories) ...)
(union-build out directories)))
+ ;; Create 'cc' and 'c++' so that one can use it as a
+ ;; drop-in replacement for the default tool chain and
+ ;; have configure scripts find the compiler.
+ (symlink "clang" (string-append out "/bin/cc"))
+ (symlink "clang++" (string-append out "/bin/c++"))
+
(union-build (assoc-ref %outputs "debug")
(list (assoc-ref %build-inputs
"libc-debug")))
@@ -484,7 +490,11 @@ code analysis tools.")
"libc-static")))
#t))))
- (native-search-paths (package-native-search-paths clang))
+ (native-search-paths
+ (append (package-native-search-paths clang)
+ (list (search-path-specification ;copied from glibc
+ (variable "GUIX_LOCPATH")
+ (files '("lib/locale"))))))
(search-paths (package-search-paths clang))
(license (package-license clang))
@@ -502,6 +512,101 @@ output), and Binutils.")
("libc-debug" ,glibc "debug")
("libc-static" ,glibc "static")))))
+(define-public llvm-11
+ (package
+ (name "llvm")
+ (version "11.0.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (llvm-uri "llvm" version))
+ (sha256
+ (base32
+ "0s94lwil98w7zb7cjrbnxli0z7gklb312pkw74xs1d6zk346hgwi"))))
+ (build-system cmake-build-system)
+ (outputs '("out" "opt-viewer"))
+ (native-inputs
+ `(("python" ,python-2) ;bytes->str conversion in clang>=3.7 needs python-2
+ ("perl" ,perl)))
+ (inputs
+ `(("libffi" ,libffi)))
+ (propagated-inputs
+ `(("zlib" ,zlib))) ;to use output from llvm-config
+ (arguments
+ `(#:configure-flags '("-DCMAKE_SKIP_BUILD_RPATH=FALSE"
+ "-DCMAKE_BUILD_WITH_INSTALL_RPATH=FALSE"
+ "-DBUILD_SHARED_LIBS:BOOL=TRUE"
+ "-DLLVM_ENABLE_FFI:BOOL=TRUE"
+ "-DLLVM_REQUIRES_RTTI=1" ; For some third-party utilities
+ "-DLLVM_INSTALL_UTILS=ON") ; Needed for rustc.
+
+ ;; Don't use '-g' during the build, to save space.
+ #:build-type "Release"
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'build 'shared-lib-workaround
+ ;; Even with CMAKE_SKIP_BUILD_RPATH=FALSE, llvm-tblgen
+ ;; doesn't seem to get the correct rpath to be able to run
+ ;; from the build directory. Set LD_LIBRARY_PATH as a
+ ;; workaround.
+ (lambda _
+ (setenv "LD_LIBRARY_PATH"
+ (string-append (getcwd) "/lib"))
+ #t))
+ (add-after 'install 'install-opt-viewer
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (opt-viewer-out (assoc-ref outputs "opt-viewer"))
+ (opt-viewer-share-dir (string-append opt-viewer-out "/share"))
+ (opt-viewer-dir (string-append opt-viewer-share-dir "/opt-viewer")))
+ (mkdir-p opt-viewer-share-dir)
+ (rename-file (string-append out "/share/opt-viewer")
+ opt-viewer-dir))
+ #t)))))
+ (home-page "https://www.llvm.org")
+ (synopsis "Optimizing compiler infrastructure")
+ (description
+ "LLVM is a compiler infrastructure designed for compile-time, link-time,
+runtime, and idle-time optimization of programs from arbitrary programming
+languages. It currently supports compilation of C and C++ programs, using
+front-ends derived from GCC 4.0.1. A new front-end for the C family of
+languages is in development. The compiler infrastructure includes mirror sets
+of programming tools as well as libraries with equivalent functionality.")
+ (license license:asl2.0))) ;with LLVM exceptions, see LICENSE.txt
+
+(define-public clang-runtime-11
+ (clang-runtime-from-llvm
+ llvm-11
+ "0d5j5l8phwqjjscmk8rmqn0i2i0abl537gdbkagl8fjpzy1gyjip"))
+
+(define-public clang-11
+ (clang-from-llvm llvm-11 clang-runtime-11
+ "02ajkij85966vd150iy246mv16dsaph1kfi0y8wnncp8w6nar5hg"
+ #:patches '("clang-11.0-libc-search-path.patch")
+ #:tools-extra
+ (origin
+ (method url-fetch)
+ (uri (llvm-uri "clang-tools-extra"
+ (package-version llvm-11)))
+ (sha256
+ (base32
+ "02bcwwn54661madhq4nxc069s7p7pj5gpqi8ww50w3anbpviilzy")))))
+
+(define-public clang-toolchain-11
+ (make-clang-toolchain clang-11))
+
+(define-public llvm-10
+ (package
+ (inherit llvm-11)
+ (version "10.0.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (llvm-uri "llvm" version))
+ (sha256
+ (base32
+ "1pwgm6cr0xr5a0hrbqs1zvsvvjvy0yq1y47c96804wcs795s90yz"))))))
+
(define-public clang-runtime-10
(clang-runtime-from-llvm
llvm-10
@@ -514,7 +619,7 @@ output), and Binutils.")
#:tools-extra
(origin
(method url-fetch)
- (uri (llvm-download-uri "clang-tools-extra"
+ (uri (llvm-uri "clang-tools-extra"
(package-version llvm-10)))
(sha256
(base32
@@ -530,7 +635,7 @@ output), and Binutils.")
(source
(origin
(method url-fetch)
- (uri (llvm-download-uri "llvm" version))
+ (uri (llvm-uri "llvm" version))
(sha256
(base32
"16hwp3qa54c3a3v7h8nlw0fh5criqh0hlr1skybyk0cz70gyx880"))
@@ -566,7 +671,7 @@ output), and Binutils.")
(version (package-version llvm-10))
(source (origin
(method url-fetch)
- (uri (llvm-download-uri "lld" version))
+ (uri (llvm-uri "lld" version))
(sha256
(base32
"0ynzi35r4fckvp6842alpd43qr810j3728yfslc66fk2mbh4j52r"))))
@@ -586,11 +691,11 @@ components which highly leverage existing libraries in the larger LLVM Project."
(define-public llvm-8
(package
- (inherit llvm)
+ (inherit llvm-9)
(version "8.0.0")
(source (origin
(method url-fetch)
- (uri (llvm-download-uri "llvm" version))
+ (uri (llvm-uri "llvm" version))
(sha256
(base32
"0k124sxkfhfi1rca6kzkdraf4axhx99x3cw2rk55056628dvwwl8"))))
@@ -616,7 +721,7 @@ components which highly leverage existing libraries in the larger LLVM Project."
(version "7.0.1")
(source (origin
(method url-fetch)
- (uri (llvm-download-uri "llvm" version))
+ (uri (llvm-uri "llvm" version))
(sha256
(base32
"16s196wqzdw4pmri15hadzqgdi926zln3an2viwyq0kini6zr3d3"))))))
@@ -641,7 +746,7 @@ components which highly leverage existing libraries in the larger LLVM Project."
(version "6.0.1")
(source (origin
(method url-fetch)
- (uri (llvm-download-uri "llvm" version))
+ (uri (llvm-uri "llvm" version))
(sha256
(base32
"1qpls3vk85lydi5b4axl0809fv932qgsqgdgrk098567z4jc7mmn"))))))
@@ -667,7 +772,7 @@ components which highly leverage existing libraries in the larger LLVM Project."
(source
(origin
(method url-fetch)
- (uri (llvm-download-uri "llvm" version))
+ (uri (llvm-uri "llvm" version))
(sha256
(base32
"1vi9sf7rx1q04wj479rsvxayb6z740iaz3qniwp266fgp5a07n8z"))))
@@ -699,7 +804,7 @@ components which highly leverage existing libraries in the larger LLVM Project."
(source
(origin
(method url-fetch)
- (uri (llvm-download-uri "llvm" version))
+ (uri (llvm-uri "llvm" version))
(sha256
(base32
"1ybmnid4pw2hxn12ax5qa5kl1ldfns0njg8533y3mzslvd5cx0kf"))))))
@@ -723,7 +828,7 @@ components which highly leverage existing libraries in the larger LLVM Project."
(source
(origin
(method url-fetch)
- (uri (llvm-download-uri "llvm" version))
+ (uri (llvm-uri "llvm" version))
(sha256
(base32
"1masakdp9g2dan1yrazg7md5am2vacbkb3nahb3dchpc1knr8xxy"))))))
@@ -747,7 +852,7 @@ components which highly leverage existing libraries in the larger LLVM Project."
(source
(origin
(method url-fetch)
- (uri (llvm-download-uri "llvm" version))
+ (uri (llvm-uri "llvm" version))
(sha256
(base32
"153vcvj8gvgwakzr4j0kndc0b7wn91c2g1vy2vg24s6spxcc23gn"))))))
@@ -769,7 +874,7 @@ components which highly leverage existing libraries in the larger LLVM Project."
(source
(origin
(method url-fetch)
- (uri (llvm-download-uri "llvm" version))
+ (uri (llvm-uri "llvm" version))
(patches
(search-patches "llvm-3.5-fix-clang-build-with-gcc5.patch"))
(sha256
@@ -811,19 +916,35 @@ components which highly leverage existing libraries in the larger LLVM Project."
"0846h8vn3zlc00jkmvrmy88gc6ql6014c02l4jv78fpvfigmgssg"
#:patches '("clang-3.5-libc-search-path.patch")))
-(define-public llvm-for-extempore
- (package (inherit llvm-3.8)
- (name "llvm-for-extempore")
- (source
- (origin
- (method url-fetch)
- (uri (string-append "http://extempore.moso.com.au/extras/"
- "llvm-3.8.0.src-patched-for-extempore.tar.xz"))
- (sha256
- (base32
- "1svdl6fxn8l01ni8mpm0bd5h856ahv3h9sdzgmymr6fayckjvqzs"))))
- ;; Extempore refuses to build on architectures other than x86_64
- (supported-systems '("x86_64-linux"))))
+;; Default LLVM and Clang version.
+(define-public llvm llvm-9)
+(define-public clang-runtime clang-runtime-9)
+(define-public clang clang-9)
+(define-public clang-toolchain clang-toolchain-9)
+
+(define-public lld
+ (package
+ (name "lld")
+ (version "11.0.0")
+ (source (origin
+ (method url-fetch)
+ (uri (llvm-uri "lld" version))
+ (sha256
+ (base32
+ "077xyh7sij6mhp4dc4kdcmp9whrpz332fa12rwxnzp3wgd5bxrzg"))))
+ (build-system cmake-build-system)
+ (inputs
+ `(("llvm" ,llvm-11)))
+ (arguments
+ `(#:build-type "Release"
+ ;; TODO: Tests require the lit tool, which isn't installed by the LLVM
+ ;; package.
+ #:tests? #f))
+ (home-page "https://lld.llvm.org/")
+ (synopsis "Linker from the LLVM project")
+ (description "LLD is a high-performance linker, built as a set of reusable
+components which highly leverage existing libraries in the larger LLVM Project.")
+ (license license:asl2.0))) ; With LLVM exception
(define-public libcxx
(package
@@ -832,7 +953,7 @@ components which highly leverage existing libraries in the larger LLVM Project."
(source
(origin
(method url-fetch)
- (uri (llvm-download-uri "libcxx" version))
+ (uri (llvm-uri "libcxx" version))
(sha256
(base32
"0d2bj5i6mk4caq7skd5nsdmz8c2m5w5anximl5wz3x32p08zz089"))))
@@ -872,7 +993,7 @@ use with Clang, targeting C++11, C++14 and above.")
(source
(origin
(inherit (package-source libcxx))
- (uri (llvm-download-uri "libcxx" version))
+ (uri (llvm-uri "libcxx" version))
(sha256
(base32
"0rzw4qvxp6qx4l4h9amrq02gp7hbg8lw4m0sy3k60f50234gnm3n"))))
@@ -925,7 +1046,7 @@ requirements according to version 1.1 of the OpenCL specification.")
(version "9.0.1")
(source (origin
(method url-fetch)
- (uri (llvm-download-uri "openmp" version))
+ (uri (llvm-uri "openmp" version))
(sha256
(base32
"1knafnpp0f7hylx8q20lkd6g1sf0flly572dayc5d5kghh7hd52w"))
diff --git a/gnu/packages/logging.scm b/gnu/packages/logging.scm
index bac9e18ea6..d7cd44b215 100644
--- a/gnu/packages/logging.scm
+++ b/gnu/packages/logging.scm
@@ -3,7 +3,7 @@
;;; Copyright © 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2017 Stefan Reichör <stefan@xsteve.at>
;;; Copyright © 2017 Eric Bavier <bavier@member.fsf.org>
-;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
+;;; Copyright © 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2019 Gábor Boskovits <boskovits@gmail.com>
;;; Copyright © 2019 Meiyo Peng <meiyo@riseup.net>
;;; Copyright © 2020 Marius Bakke <mbakke@fastmail.com>
@@ -165,9 +165,8 @@ commands, displaying the results via a web interface.")
(build-system gnu-build-system)
(arguments
`(#:make-flags
- (list "CC=gcc"
- "PREFIX="
- (string-append "DESTDIR="
+ (list (string-append "CC=" ,(cc-for-target))
+ (string-append "PREFIX="
(assoc-ref %outputs "out")))
#:phases
(modify-phases %standard-phases
@@ -178,14 +177,14 @@ commands, displaying the results via a web interface.")
(("ncursesw\\/panel.h") "panel.h")
(("ncursesw\\/ncurses.h") "ncurses.h")))
#t))
- (delete 'configure))
+ (delete 'configure)) ; no configure script
#:tests? #f)) ; no test suite (make check just runs cppcheck)
(inputs `(("ncurses" ,ncurses)))
(home-page "https://vanheusden.com/multitail/")
- (synopsis "Monitor multiple logfiles")
+ (synopsis "Monitor multiple log files")
(description
- "MultiTail allows you to monitor logfiles and command output in multiple
-windows in a terminal, colorize, filter and merge.")
+ "MultiTail can monitor, color, filter, and merge log files and command
+output in multiple windows in a terminal.")
(license license:gpl2+)))
(define-public spdlog
diff --git a/gnu/packages/lua.scm b/gnu/packages/lua.scm
index 5479b891bd..42ef24e381 100644
--- a/gnu/packages/lua.scm
+++ b/gnu/packages/lua.scm
@@ -8,7 +8,7 @@
;;; Copyright © 2016 doncatnip <gnopap@gmail.com>
;;; Copyright © 2016, 2017, 2019 Clément Lassieur <clement@lassieur.org>
;;; Copyright © 2016 José Miguel Sánchez García <jmi2k@openmailbox.org>
-;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
+;;; Copyright © 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018 Fis Trivial <ybbs.daans@hotmail.com>
;;; Copyright © 2020 Nicolas Goaziou <mail@nicolasgoaziou.fr>
;;; Copyright © 2020 Simon South <simon@simonsouth.net>
@@ -312,9 +312,8 @@ directory structure and file attributes.")
(lua-api-version ,(version-major+minor (package-version lua))))
(list "CC=gcc"
"CFLAGS='-D HAVE_SYS_SYSCTL_H=0'" ; sys/sysctl.h is deprecated
- (string-append "DESTDIR=" out)
- (string-append "LUA_APIS=" lua-api-version)
- "prefix="))
+ (string-append "prefix=" out)
+ (string-append "LUA_APIS=" lua-api-version)))
#:phases
(modify-phases %standard-phases
(delete 'configure)
@@ -880,3 +879,182 @@ on numbers.")
"Selene is a simple C++11 header-only library enabling seamless
interoperability between C++ and Lua programming language.")
(license license:zlib)))
+
+(define-public lua-resty-core
+ (package
+ (name "lua-resty-core")
+ (version "0.1.17")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/openresty/lua-resty-core")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "11fyli6yrg7b91nv9v2sbrc6y7z3h9lgf4lrrhcjk2bb906576a0"))))
+ (build-system trivial-build-system)
+ (arguments
+ `(#:modules ((guix build utils))
+ #:builder
+ (begin
+ (use-modules (guix build utils))
+ (let* ((luajit-major+minor ,(version-major+minor (package-version lua)))
+ (package-lua-resty (lambda (input output)
+ (mkdir-p (string-append output "/lib/lua"))
+ (copy-recursively (string-append input "/lib/resty")
+ (string-append output "/lib/lua/resty"))
+ (copy-recursively (string-append input "/lib/ngx")
+ (string-append output "/lib/ngx"))
+ (symlink (string-append output "/lib/lua/resty")
+ (string-append output "/lib/resty")))))
+ (package-lua-resty (assoc-ref %build-inputs "source")
+ (assoc-ref %outputs "out")))
+ #t)))
+ (home-page "https://github.com/openresty/lua-resty-core")
+ (synopsis "Lua API for NGINX")
+ (description "This package provides a FFI-based Lua API for
+@code{ngx_http_lua_module} or @code{ngx_stream_lua_module}.")
+ (license license:bsd-2)))
+
+(define-public lua-resty-lrucache
+ (package
+ (name "lua-resty-lrucache")
+ (version "0.09")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/openresty/lua-resty-lrucache")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1mwiy55qs8bija1kpgizmqgk15ijizzv4sa1giaz9qlqs2kqd7q2"))))
+ (build-system trivial-build-system)
+ (arguments
+ `(#:modules ((guix build utils))
+ #:builder
+ (begin
+ (use-modules (guix build utils))
+ (let* ((luajit-major+minor ,(version-major+minor (package-version lua)))
+ (package-lua-resty (lambda (input output)
+ (mkdir-p (string-append output "/lib/lua/" luajit-major+minor))
+ (copy-recursively (string-append input "/lib/resty")
+ (string-append output "/lib/lua/" luajit-major+minor "/resty"))
+ (symlink (string-append output "/lib/lua/" luajit-major+minor "/resty")
+ (string-append output "/lib/resty")))))
+ (package-lua-resty (assoc-ref %build-inputs "source")
+ (assoc-ref %outputs "out")))
+ #t)))
+ (home-page "https://github.com/openresty/lua-resty-lrucache")
+ (synopsis "Lua LRU cache based on the LuaJIT FFI")
+ (description
+ "This package provides Lua LRU cache based on the LuaJIT FFI.")
+ (license license:bsd-2)))
+
+(define-public lua-resty-signal
+ (package
+ (name "lua-resty-signal")
+ (version "0.02")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/openresty/lua-resty-signal")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "13y1pqn45y49mhqwywasfdsid46d0c33yi6mrnracbnmvyxz1cif"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:tests? #f ;TODO: Run the test suite.
+ #:make-flags (list "CC=gcc"
+ (string-append "PREFIX=" %output))
+ #:phases
+ (modify-phases %standard-phases
+ (delete 'configure)
+ (add-after 'install 'install-lua
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (use-modules (guix build utils))
+ (let* ((luajit-major+minor ,(version-major+minor (package-version lua)))
+ (package-lua-resty (lambda (input output)
+ (mkdir-p (string-append output "/lib/lua/" luajit-major+minor))
+ (copy-recursively (string-append input "/lib/resty")
+ (string-append output "/lib/lua/" luajit-major+minor "/resty"))
+ (symlink (string-append output "/lib/lua/" luajit-major+minor "/resty")
+ (string-append output "/lib/resty")))))
+ (package-lua-resty (assoc-ref inputs "source")
+ (assoc-ref outputs "out")))
+ #t)))))
+ (home-page "https://github.com/openresty/lua-resty-signal")
+ (synopsis "Lua library for killing or sending signals to Linux processes")
+ (description "This package provides Lua library for killing or sending
+signals to Linux processes.")
+ (license license:bsd-3)))
+
+(define-public lua-tablepool
+ (package
+ (name "lua-tablepool")
+ (version "0.01")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/openresty/lua-tablepool")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "03yjj3w6znvj6843prg84m0lkrn49l901f9hj9bgy3cj9s0awl6y"))))
+ (build-system trivial-build-system)
+ (arguments
+ `(#:modules ((guix build utils))
+ #:builder
+ (begin
+ (use-modules (guix build utils))
+ (let* ((luajit-major+minor ,(version-major+minor (package-version lua)))
+ (package-lua-resty (lambda (input output)
+ (mkdir-p (string-append output "/lib/lua/" luajit-major+minor))
+ (copy-recursively (string-append input "/lib")
+ (string-append output "/lib")))))
+ (package-lua-resty (assoc-ref %build-inputs "source")
+ (assoc-ref %outputs "out")))
+ #t)))
+ (home-page "https://github.com/openresty/lua-tablepool")
+ (synopsis "Lua table recycling pools for LuaJIT")
+ (description "This package provides Lua table recycling pools for LuaJIT.")
+ (license license:bsd-2)))
+
+(define-public lua-resty-shell
+ (package
+ (name "lua-resty-shell")
+ (version "0.03")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/openresty/lua-resty-shell")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1s6g04ip4hr97r2pd8ry3alq063604s9a3l0hn9nsidh81ps4dp7"))))
+ (build-system trivial-build-system)
+ (arguments
+ `(#:modules ((guix build utils))
+ #:builder
+ (begin
+ (use-modules (guix build utils))
+ (let* ((luajit-major+minor ,(version-major+minor (package-version lua)))
+ (package-lua-resty (lambda (input output)
+ (mkdir-p (string-append output "/lib/lua/" luajit-major+minor))
+ (copy-recursively (string-append input "/lib/resty")
+ (string-append output "/lib/lua/" luajit-major+minor "/resty"))
+ (symlink (string-append output "/lib/lua/" luajit-major+minor "/resty")
+ (string-append output "/lib/resty")))))
+ (package-lua-resty (assoc-ref %build-inputs "source")
+ (assoc-ref %outputs "out")))
+ #t)))
+ (home-page "https://github.com/openresty/lua-resty-shell")
+ (synopsis "Lua module for nonblocking system shell command executions")
+ (description "This package provides Lua module for nonblocking system
+shell command executions.")
+ (license license:bsd-3)))
diff --git a/gnu/packages/machine-learning.scm b/gnu/packages/machine-learning.scm
index 89345fa5fd..34b522c99b 100644
--- a/gnu/packages/machine-learning.scm
+++ b/gnu/packages/machine-learning.scm
@@ -16,6 +16,7 @@
;;; Copyright © 2020 Konrad Hinsen <konrad.hinsen@fastmail.net>
;;; Copyright © 2020 Edouard Klein <edk@beaver-labs.com>
;;; Copyright © 2020 Vinicius Monego <monego@posteo.net>
+;;; Copyright © 2020 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -330,8 +331,6 @@ networks) based on simulation of (stochastic) flow in graphs.")
(modify-phases %standard-phases
(add-before 'configure 'patch-paths
(lambda _
- (substitute* "configure"
- (("/bin/sh") (which "sh")))
(substitute* "setup.ml"
(("LDFLAGS=-fPIC")
(string-append "LDFLAGS=-fPIC\"; \"SHELL=" (which "sh")))
@@ -1932,13 +1931,14 @@ with image data, text data, and sequence data.")
;; These tests attempt to download data files from the internet.
(delete-file "tests/integration_tests/test_datasets.py")
(delete-file "tests/integration_tests/imagenet_utils_test.py")
-
- (setenv "PYTHONPATH"
- (string-append (getcwd) "/build/lib:"
- (getenv "PYTHONPATH")))
- (invoke "py.test" "-v"
- "-p" "no:cacheprovider"
- "--ignore" "keras/utils"))))))
+ ;; Backport https://github.com/keras-team/keras/pull/12479.
+ (substitute* "tests/keras/engine/test_topology.py"
+ (("np.ones\\(\\(3, 2\\)\\)")
+ "1."))
+ (invoke "python" "-m" "pytest"
+ ;; The following test fail only in the build container;
+ ;; skip it.
+ "-k" "not test_selu"))))))
(propagated-inputs
`(("python-h5py" ,python-h5py)
("python-keras-applications" ,python-keras-applications)
diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm
index 2244653724..5056098806 100644
--- a/gnu/packages/mail.scm
+++ b/gnu/packages/mail.scm
@@ -35,6 +35,7 @@
;;; Copyright © 2020 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de>
;;; Copyright © 2020 Alexey Abramov <levenson@mmer.org>
+;;; Copyright © 2020 Tim Gesthuizen <tim.gesthuizen@yahoo.de>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -141,6 +142,7 @@
#:use-module (guix git-download)
#:use-module (guix svn-download)
#:use-module (guix utils)
+ #:use-module (guix build-system glib-or-gtk)
#:use-module (guix build-system gnu)
#:use-module (guix build-system guile)
#:use-module (guix build-system perl)
@@ -197,7 +199,10 @@ example, modify the message headers or body, or encrypt or sign the message.")
version ".tar.xz"))
(sha256
(base32
- "17smrxjdgbbzbzakik30vj46q4iib85ksqhb82jr4vjp57akszh9"))))
+ "17smrxjdgbbzbzakik30vj46q4iib85ksqhb82jr4vjp57akszh9"))
+ (patches
+ ;; Fixes https://issues.guix.gnu.org/43088.
+ (search-patches "mailutils-fix-uninitialized-variable.patch"))))
(build-system gnu-build-system)
(arguments
`(#:phases
@@ -690,6 +695,54 @@ mailpack. What can alterMIME do?
(license (list (license:non-copyleft "file://LICENSE")
license:bsd-3))))
+(define-public ripmime
+ ;; Upstream does not tag or otherwise provide any releases (only a version
+ ;; number in the source)
+ (let ((commit "a556ffe08d620602475c976732e8e1a82f3169e9")
+ (revision "1"))
+ (package
+ (name "ripmime")
+ (version (git-version "1.4.0.10" revision commit))
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/inflex/ripMIME")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1z8ar8flvkd9q3ax4x28sj5pyq8ykk5pq249y967lj2406lxparh"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ ;; Source has no configure script
+ (delete 'configure)
+ ;; Buildcodes make the build non-reproducible; remove them
+ (add-after 'unpack 'strip-buildcodes
+ (lambda _
+ (substitute* "generate-buildcodes.sh"
+ (("`date \\+%s`") "0")
+ (("`date`") "0")
+ (("`uname -a`") "Guix"))
+ #t))
+ ;; https://github.com/inflex/ripMIME/pull/16 makes 'mkdir-p-bin-man unnecessary
+ (add-before 'install 'mkdir-p-bin-man
+ (lambda _
+ (mkdir-p (string-append (assoc-ref %outputs "out") "/bin"))
+ (mkdir-p (string-append (assoc-ref %outputs "out") "/man"))
+ #t)))
+ ;; Makefile has no tests
+ #:tests? #f
+ #:make-flags (list (string-append "LOCATION=" (assoc-ref %outputs "out"))
+ "CC=gcc")))
+ (synopsis "Extract attachments from MIME-encoded email")
+ (description
+ "ripMIME is a small program to extract the attached files out of a
+MIME-encoded email package.")
+ (home-page "https://github.com/inflex/ripMIME")
+ (license license:bsd-3))))
+
(define-public bogofilter
(package
(name "bogofilter")
@@ -725,7 +778,7 @@ and corrections. It is based on a Bayesian filter.")
(define-public offlineimap
(package
(name "offlineimap")
- (version "7.2.4")
+ (version "7.3.3")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -734,12 +787,14 @@ and corrections. It is based on a Bayesian filter.")
(file-name (git-file-name name version))
(sha256
(base32
- "0h5q5nk2p2vx86w6rrbs7v70h81dpqqr68x6l3klzl3m0yj9agb1"))))
+ "1gg8ry67i20qapj4z20am9bm67m2q28kixcj7ja75m897vhzarnq"))))
(build-system python-build-system)
(native-inputs
`(("asciidoc" ,asciidoc)))
- (inputs `(("python2-pysqlite" ,python2-pysqlite)
- ("python2-six" ,python2-six)))
+ (inputs
+ `(("python2-pysqlite" ,python2-pysqlite)
+ ("python2-rfc6555" ,python2-rfc6555)
+ ("python2-six" ,python2-six)))
(arguments
;; The setup.py script expects python-2.
`(#:python ,python-2
@@ -1158,7 +1213,7 @@ and search library.")
(base32 "1k2m44pj5i6vfhp9icdqs42chsp208llanc666p3d9nww8ngq2lb"))))
(build-system gnu-build-system)
(native-inputs
- `(("ghc-pandoc" ,ghc-pandoc)
+ `(("pandoc" ,pandoc)
("pkg-config" ,pkg-config)))
(inputs
`(("libcrypto" ,openssl)
@@ -1265,62 +1320,69 @@ compresses it.")
(define-public claws-mail
(package
(name "claws-mail")
- (version "3.17.6")
- (source (origin
- (method url-fetch)
- (uri (string-append
- "https://www.claws-mail.org/releases/claws-mail-" version
- ".tar.xz"))
- (sha256
- (base32
- "1s05qw0r0gqwvvkxvrrwbjkbi61dvilixiwrpgcq21qc9csc9r0m"))))
- (build-system gnu-build-system)
- (native-inputs `(("pkg-config" ,pkg-config)))
- (inputs `(("bogofilter" ,bogofilter)
- ("curl" ,curl)
- ("dbus-glib" ,dbus-glib)
- ("enchant" ,enchant)
- ("expat" ,expat)
- ("ghostscript" ,ghostscript)
- ("hicolor-icon-theme" ,hicolor-icon-theme)
- ("gnupg" ,gnupg)
- ("gnutls" ,gnutls)
- ("gpgme" ,gpgme)
- ("gtk" ,gtk+-2)
- ("libarchive" ,libarchive)
- ("libcanberra" ,libcanberra)
- ("libetpan" ,libetpan)
- ("libical" ,libical)
- ("libnotify" ,libnotify)
- ("libsm" ,libsm)
- ("libxml2" ,libxml2)
- ("perl" ,perl)
- ("python-2" ,python-2)
- ("mime-info" ,shared-mime-info)
- ("startup-notification" ,startup-notification)))
+ (version "3.17.7")
+ (source
+ (origin
+ (method url-fetch)
+ (uri
+ (string-append
+ "https://www.claws-mail.org/releases/claws-mail-"
+ version ".tar.xz"))
+ (sha256
+ (base32 "1j6x09621wng0lavh53nwzh9vqjzpspl8kh5azh7kbihpi4ldfb0"))))
+ (build-system glib-or-gtk-build-system)
(arguments
- '(#:configure-flags
- '("--enable-gnutls" "--enable-pgpmime-plugin" "--enable-enchant"
- "--enable-ldap")
- #:make-flags
- ;; Disable updating icon cache since it's done by the profile hook.
- ;; Conflict with other packages in the profile would be inevitable
- ;; otherwise.
- '("gtk_update_icon_cache=true")
- #:phases (modify-phases %standard-phases
- (add-before 'build 'patch-mime
- (lambda* (#:key inputs #:allow-other-keys)
- (substitute* "src/procmime.c"
- (("/usr/share/mime/globs")
- (string-append (assoc-ref inputs "mime-info")
- "/share/mime/globs"))))))))
+ `(#:configure-flags
+ (list
+ "--enable-gnutls"
+ "--enable-pgpmime-plugin"
+ "--enable-enchant"
+ "--enable-ldap")
+ #:make-flags
+ ;; Disable updating icon cache since it's done by the profile hook.
+ ;; Conflict with other packages in the profile would be inevitable
+ ;; otherwise.
+ (list
+ "gtk_update_icon_cache=true")
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'build 'patch-mime
+ (lambda* (#:key inputs #:allow-other-keys)
+ (substitute* "src/procmime.c"
+ (("/usr/share/mime/globs")
+ (string-append (assoc-ref inputs "mime-info")
+ "/share/mime/globs"))))))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("bogofilter" ,bogofilter)
+ ("curl" ,curl)
+ ("dbus-glib" ,dbus-glib)
+ ("enchant" ,enchant)
+ ("expat" ,expat)
+ ("ghostscript" ,ghostscript)
+ ("hicolor-icon-theme" ,hicolor-icon-theme)
+ ("gnupg" ,gnupg)
+ ("gnutls" ,gnutls)
+ ("gpgme" ,gpgme)
+ ("gtk" ,gtk+-2)
+ ("libarchive" ,libarchive)
+ ("libcanberra" ,libcanberra)
+ ("libetpan" ,libetpan)
+ ("libical" ,libical)
+ ("libnotify" ,libnotify)
+ ("libsm" ,libsm)
+ ("libxml2" ,libxml2)
+ ("perl" ,perl)
+ ("python-2" ,python-2)
+ ("mime-info" ,shared-mime-info)
+ ("startup-notification" ,startup-notification)))
(synopsis "GTK-based Email client")
- (description
- "Claws-Mail is an email client (and news reader) based on GTK+. The
-appearance and interface are designed to be familiar to new users coming from
-other popular email clients, as well as experienced users. Almost all commands
-are accessible with the keyboard. Plus, Claws-Mail is extensible via addons
-which can add many functionalities to the base client.")
+ (description "Claws-Mail is an email client (and news reader) based on GTK+.
+The appearance and interface are designed to be familiar to new users coming
+from other popular email clients, as well as experienced users. Almost all
+commands are accessible with the keyboard. Plus, Claws-Mail is extensible via
+addons which can add many functionalities to the base client.")
(home-page "https://www.claws-mail.org/")
(license license:gpl3+))) ; most files are actually public domain or x11
@@ -1661,7 +1723,7 @@ scripts to prevent embarrassing errors later on.")
"Technology for Resting Email Encrypted Storage (TREES) is a NaCL-based
Dovecot encryption plugin. This plugin adds individually encrypted mail
storage to the Dovecot IMAP server. It is inspired by Posteo's scrambler
-which uses OpenSSL and RSA keypairs. TREES works in a similar way, but uses
+which uses OpenSSL and RSA key pairs. TREES works in a similar way, but uses
the Sodium crypto library (based on NaCL).
How it works:
@@ -1914,14 +1976,14 @@ header.")
(define-public perl-email-sender
(package
(name "perl-email-sender")
- (version "1.300034")
+ (version "1.300035")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://cpan/authors/id/R/RJ/RJBS/"
"Email-Sender-" version ".tar.gz"))
(sha256
- (base32 "14aj9kqa9dr2bdhzn2qvjj2mffj8wjb5397z8qw7qg057fk3ib05"))))
+ (base32 "0yfssp3rqdx1dmgvnygarzgkpkhqm28r5sd0gh87ksk8yxndhjql"))))
(build-system perl-build-system)
(native-inputs
`(("perl-capture-tiny" ,perl-capture-tiny)))
@@ -2539,7 +2601,7 @@ transfer protocols.")
(description
"Sieve-connect lets you view, upload, edit, delete, and otherwise manage
Sieve scripts on any mail server that speaks the @dfn{ManageSieve} protocol,
-as specifed in RFC 5804.
+as specified in RFC 5804.
@dfn{Sieve} (RFC 5228) is a specialised language for e-mail filtering. Sieve
scripts are stored on the server and run whenever mail arrives. They can
@@ -2999,47 +3061,6 @@ installation on systems where resources are limited. Its features include:
(description
"This package contains libraries and templates for Django-based interfaces
interacting with Mailman.")
- (properties `((python2-variant . ,(delay python2-django-mailman3))))
- (license license:gpl3+)))
-
-;; This is the last version to support Python-2.
-(define-public python2-django-mailman3
- (package
- (name "python2-django-mailman3")
- (version "1.1.0")
- (source
- (origin
- (method url-fetch)
- (uri (pypi-uri "django-mailman3" version))
- (sha256
- (base32
- "1xjdkgfjwhgyrp5nxw65dcpcsr98ygj6856sp0bwkrmyxpd1xxk2"))))
- (build-system python-build-system)
- (arguments
- `(#:phases
- (modify-phases %standard-phases
- (replace 'check
- (lambda _
- (invoke "django-admin"
- "test"
- "--settings=django_mailman3.tests.settings_test"
- "django_mailman3"))))
- #:python ,python-2))
- (inputs
- `(("python2-django" ,python2-django)))
- (propagated-inputs
- `(("python2-requests" ,python2-requests)
- ("python2-requests-oauthlib" ,python2-requests-oauthlib)
- ("python2-openid" ,python2-openid)
- ("python2-mailmanclient" ,python2-mailmanclient)
- ("python2-django-allauth" ,python2-django-allauth)
- ("python2-django-gravatar2" ,python2-django-gravatar2)
- ("python2-pytz" ,python2-pytz)))
- (home-page "https://gitlab.com/mailman/django-mailman3")
- (synopsis "Django library for Mailman UIs")
- (description
- "Libraries and templates for Django-based interfaces
-interacting with Mailman.")
(license license:gpl3+)))
(define-public python-mailman-hyperkitty
@@ -3099,16 +3120,12 @@ which sends emails to HyperKitty, the official Mailman3 web archiver.")
(modify-phases %standard-phases
(replace 'check
(lambda _
- ;; It is unclear why this test fails.
- (substitute* "hyperkitty/tests/commands/test_import.py"
- (("def test_bad_content_type_part_two")
- "@SkipTest\n def test_bad_content_type_part_two"))
(setenv "PYTHONPATH" (string-append ".:" (getenv "PYTHONPATH")))
(invoke "example_project/manage.py" "test"
"--settings=hyperkitty.tests.settings_test"))))))
(propagated-inputs
`(("python-dateutil" ,python-dateutil)
- ("python-django" ,python-django)
+ ("python-django" ,python-django-2.2)
("python-django-compressor" ,python-django-compressor)
("python-django-extensions" ,python-django-extensions)
("python-django-gravatar2" ,python-django-gravatar2)
@@ -3213,28 +3230,35 @@ on the fly. Both programs are written in C and are very fast.")
(define-public swaks
(package
(name "swaks")
- (version "20190914.0")
+ (version "20201014.0")
(source
(origin
- (method url-fetch)
- (uri (string-append
- "https://jetmore.org/john/code/swaks/files/swaks-"
- version ".tar.gz"))
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/jetmore/swaks")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
(sha256
- (base32
- "12awq5z4sdd54cxprj834zajxhkpy4jwhzf1fhigcx1zbhdaacsp"))))
+ (base32 "131i2b1yxhnbqkfk4kky40pfanqw2c5lcgbnjhfqp5cvpawpk2ai"))))
(build-system perl-build-system)
(inputs
- `(("perl-net-dns" ,perl-net-dns)
- ("perl-net-ssleay" ,perl-net-ssleay)))
+ `(("perl-io-socket-inet6" ,perl-io-socket-inet6)
+ ("perl-net-dns" ,perl-net-dns)
+ ("perl-net-ssleay" ,perl-net-ssleay)
+ ("perl-socket6" ,perl-socket6))) ; used by perl-io-socket-inet6
(arguments
- `(#:tests? #f ; No tests
+ `(#:tests? #f ; no tests
#:phases
(modify-phases %standard-phases
+ (add-after 'unpack 'set-build_version
+ (lambda _
+ (substitute* "swaks"
+ (("\"DEVRELEASE\"") (format #f "\"~a\"" ,version)))
+ #true))
(delete 'configure)
(replace 'build
(lambda _
- (invoke "pod2man" "doc/ref.pod" "swaks.1")))
+ (invoke "pod2man" "doc/base.pod" "swaks.1")))
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
@@ -3262,7 +3286,7 @@ operators and scripters.")
(define-public alpine
(package
(name "alpine")
- (version "2.23.2")
+ (version "2.24")
(source
(origin
(method git-fetch)
@@ -3275,7 +3299,7 @@ operators and scripters.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
- (base32 "16ldmmcymrnpnbfc1kb2rhac7nzlc87wjawic4wfinkphd124d1y"))
+ (base32 "0d5ybnsv29gs8krl66db56avmssq28jlg0qj5i1wka05ncc3740d"))
(modules '((guix build utils)))
(snippet
'(begin
diff --git a/gnu/packages/markup.scm b/gnu/packages/markup.scm
index 56a920d873..af08774c70 100644
--- a/gnu/packages/markup.scm
+++ b/gnu/packages/markup.scm
@@ -3,7 +3,7 @@
;;; Copyright © 2015 David Thompson <davet@gnu.org>
;;; Copyright © 2016, 2019 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2017 Nikita <nikita@n0.is>
-;;; Copyright © 2017, 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
+;;; Copyright © 2017, 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2020 Marius Bakke <mbakke@fastmail.com>
;;;
;;; This file is part of GNU Guix.
@@ -30,9 +30,11 @@
#:use-module (guix build-system trivial)
#:use-module (guix build-system cmake)
#:use-module (guix build-system perl)
+ #:use-module (guix utils)
#:use-module (gnu packages compression)
#:use-module (gnu packages)
#:use-module (gnu packages perl)
+ #:use-module (gnu packages pkg-config)
#:use-module (gnu packages python)
#:use-module (gnu packages web))
@@ -112,7 +114,7 @@ convert it to structurally valid XHTML (or HTML).")
(define-public discount
(package
(name "discount")
- (version "2.2.4")
+ (version "2.2.7")
(source (origin
(method url-fetch)
(uri (string-append
@@ -120,10 +122,11 @@ convert it to structurally valid XHTML (or HTML).")
"discount/discount-" version ".tar.bz2"))
(sha256
(base32
- "199hwajpspqil0a4y3yxsmhdp2dm73gqkzfk4mrwzsmlq8y1xzbl"))))
+ "024mxv0gpvilyfczarcgy5m7h4lv6qvhjfpf5i73qkxhszjjn9mi"))))
(build-system gnu-build-system)
(arguments
`(#:test-target "test"
+ #:parallel-build? #f ; libmarkdown won't be built in time
#:make-flags (list
(string-append "LFLAGS=-L. -Wl,-rpath="
(assoc-ref %outputs "out") "/lib"))
@@ -138,10 +141,15 @@ convert it to structurally valid XHTML (or HTML).")
#t))
(replace 'configure
(lambda* (#:key inputs outputs #:allow-other-keys)
- (setenv "CC" "gcc")
- (invoke "./configure.sh"
- (string-append "--prefix=" (assoc-ref outputs "out"))
- "--shared"))))))
+ (let ((out (assoc-ref outputs "out")))
+ (setenv "CC" ,(cc-for-target))
+ ;; The ‘validate-runpath’ phase fails otherwise.
+ (setenv "LDFLAGS" (string-append "-Wl,-rpath=" out "/lib"))
+ (invoke "./configure.sh"
+ (string-append "--prefix=" out)
+ "--shared")))))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
(synopsis "Markdown processing library, written in C")
(description
"Discount is a markdown implementation, written in C. It provides a
diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm
index 1ed1e0511b..1c02a1ab0f 100644
--- a/gnu/packages/maths.scm
+++ b/gnu/packages/maths.scm
@@ -40,6 +40,7 @@
;;; Copyright © 2020 Nicolò Balzarotti <nicolo@nixo.xyz>
;;; Copyright © 2020 B. Wilson <elaexuotee@wilsonb.com>
;;; Copyright © 2020 Vinicius Monego <monego@posteo.net>
+;;; Copyright © 2020 Simon Tournier <zimon.toutoune@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -1183,7 +1184,7 @@ extremely large and complex data collections.")
(define-public hdf5-1.10
(package/inherit hdf5-1.8
- (version "1.10.6")
+ (version "1.10.7")
(source
(origin
(method url-fetch)
@@ -1197,7 +1198,7 @@ extremely large and complex data collections.")
(take (string-split version #\.) 2))
"/src/hdf5-" version ".tar.bz2")))
(sha256
- (base32 "1gf38x51128hn00744358w27xgzjk0ff4wra4yxh2lk804ck1mh9"))
+ (base32 "0pm5xxry55i0h7wmvc7svzdaa90rnk7h78rrjmnlkz2ygsn8y082"))
(patches (search-patches "hdf5-config-date.patch"))))))
(define-public hdf5
@@ -2156,7 +2157,7 @@ This is the certified version of the Open Cascade Technology (OCCT) library.")
(define-public gmsh
(package
(name "gmsh")
- (version "2.16.0")
+ (version "4.6.0")
(source
(origin
(method git-fetch)
@@ -2168,12 +2169,11 @@ This is the certified version of the Open Cascade Technology (OCCT) library.")
version)))))
(file-name (git-file-name name version))
(sha256
- (base32 "08rq4jajwmlpivnm9yifz2jhaivnz065lnk0h2zv773nwl9wf162"))
+ (base32 "0m0pjxcy1bnr7a20i11lh0ih159pphq9wsvfjr3sfx4y3lginz5y"))
(modules '((guix build utils)))
(snippet
- ;; Remove non-free METIS code
'(begin
- (delete-file-recursively "contrib/Metis")
+ (delete-file-recursively "contrib/metis")
#t))))
(build-system cmake-build-system)
(propagated-inputs
@@ -2184,14 +2184,15 @@ This is the certified version of the Open Cascade Technology (OCCT) library.")
("lapack" ,lapack)
("mesa" ,mesa)
("glu" ,glu)
- ("opencascade-oce" ,opencascade-oce)
+ ("metis" ,metis)
+ ("opencascade-occt" ,opencascade-occt)
("libx11" ,libx11)
("libxext" ,libxext)))
(inputs
`(("fontconfig" ,fontconfig)
("libxft" ,libxft)))
(arguments
- `(#:configure-flags `("-DENABLE_METIS:BOOL=OFF"
+ `(#:configure-flags `("-DENABLE_SYSTEM_CONTRIB:BOOL=ON"
"-DENABLE_BUILD_SHARED:BOOL=ON"
"-DENABLE_BUILD_DYNAMIC:BOOL=ON")))
(home-page "http://gmsh.info/")
@@ -3863,7 +3864,7 @@ Fresnel integrals, and similar related functions as well.")
(define-public suitesparse
(package
(name "suitesparse")
- (version "5.7.1")
+ (version "5.8.1")
(source
(origin
(method git-fetch)
@@ -3873,7 +3874,7 @@ Fresnel integrals, and similar related functions as well.")
(file-name (git-file-name name version))
(sha256
(base32
- "174p3l78kv9gaa0i5hflyai2ydwnjzh34k9938sl4aa3li0543s8"))
+ "0qjlyfxs8s48rs63c2fzspisgq1kk4bwkgnhmh125hgkdhrq2w1c"))
(patches (search-patches "suitesparse-mongoose-cmake.patch"))
(modules '((guix build utils)))
(snippet
@@ -3886,7 +3887,6 @@ Fresnel integrals, and similar related functions as well.")
'(#:tests? #f ;no "check" target
#:make-flags
(list "CC=gcc"
- "BLAS=-lblas"
"TBB=-ltbb"
"MY_METIS_LIB=-lmetis"
;; Flags for cmake (required to build GraphBLAS and Mongoose)
@@ -3908,6 +3908,8 @@ Fresnel integrals, and similar related functions as well.")
(inputs
`(("tbb" ,tbb)
("lapack" ,lapack)
+ ("gmp" ,gmp)
+ ("mpfr" ,mpfr)
("metis" ,metis)))
(native-inputs
`(("cmake" ,cmake-minimal)
@@ -5765,10 +5767,10 @@ compiled against the nauty library.")
"1j5aji1g2vmdvc0gqz45n2ll2l2f6czca04wiyfl5g3sm3a6vhvb"))))
(build-system gnu-build-system)
(native-inputs
- `(("m4", m4)))
+ `(("m4" ,m4)))
(inputs
`(("glpk" ,glpk)
- ("gmp", gmp)))
+ ("gmp" ,gmp)))
(home-page "https://www.bugseng.com/parma-polyhedra-library")
(synopsis
"Parma Polyhedra Library for computations with polyhedra")
diff --git a/gnu/packages/matrix.scm b/gnu/packages/matrix.scm
index 002c1b530d..83a0d478af 100644
--- a/gnu/packages/matrix.scm
+++ b/gnu/packages/matrix.scm
@@ -1,6 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2020 Alex ter Weele <alex.ter.weele@gmail.com>
;;; Copyright © 2020 Tobias Geerinckx-Rice <me@tobias.gr>
+;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -60,13 +61,13 @@ an LDAP server.")
(define-public synapse
(package
(name "synapse")
- (version "1.14.0")
+ (version "1.20.1")
(source (origin
(method url-fetch)
(uri (pypi-uri "matrix-synapse" version))
(sha256
(base32
- "09drdqcjvpk9s3hq5rx9yxsxq0wak5fg5gfaiqfnbnxav2c2v7kq"))))
+ "1sf36vwvy2f9jy6dldq6gqfmh60384i5j64s7yc131b4dp0n7lcw"))))
(build-system python-build-system)
;; TODO Run tests with ‘PYTHONPATH=. trial3 tests’.
(propagated-inputs
diff --git a/gnu/packages/maven.scm b/gnu/packages/maven.scm
index e0cc98d408..ad14c1aa62 100644
--- a/gnu/packages/maven.scm
+++ b/gnu/packages/maven.scm
@@ -2944,13 +2944,14 @@ projects.")
(name "maven-resources-plugin")
(version "3.1.0")
(source (origin
- (method url-fetch)
- (uri (string-append "https://github.com/apache/"
- "maven-resources-plugin/archive/"
- "maven-resources-plugin-" version ".tar.gz"))
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/apache/maven-resources-plugin")
+ (commit (string-append "maven-resources-plugin-" version))))
+ (file-name (git-file-name name version))
(sha256
(base32
- "1f5gnjg2xmqfxml6k0ydyd1sxxwzgnb24qn6avcc4mijwd8a84pl"))))
+ "090k5j2y7ak54czfjjg3v7pdmdlgd96fbs91d1fd3vslm9zzndg8"))))
(build-system ant-build-system)
(arguments
`(#:jar-name "maven-resources-plugin.jar"
@@ -3052,13 +3053,14 @@ components for supporting incremental build functionality in maven plugins.")
(name "maven-compiler-plugin")
(version "3.8.1")
(source (origin
- (method url-fetch)
- (uri (string-append "https://github.com/apache/"
- "maven-compiler-plugin/archive/"
- "maven-compiler-plugin-" version ".tar.gz"))
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/apache/maven-compiler-plugin")
+ (commit (string-append "maven-compiler-plugin-" version))))
+ (file-name (git-file-name name version))
(sha256
(base32
- "018d9qwc4cd6k7a8kvhvxjmzbzd2ifdf7m36wqjfq42010js1mv1"))))
+ "0jkbq02vykd09ws8k9bzqxv6fjrpmir8gcxydbmj05kkhl242bma"))))
(build-system ant-build-system)
(arguments
`(#:jar-name "maven-compiler-plugin.jar"
@@ -3620,13 +3622,14 @@ reports in two different file formats, plain text and xml.")))
(name "maven-jar-plugin")
(version "3.2.0")
(source (origin
- (method url-fetch)
- (uri (string-append "https://github.com/apache/"
- "maven-jar-plugin/archive/"
- "maven-jar-plugin-" version ".tar.gz"))
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/apache/maven-jar-plugin")
+ (commit (string-append "maven-jar-plugin-" version))))
+ (file-name (git-file-name name version))
(sha256
(base32
- "032042n3kfb4g5jf6khzxywn22xfy3jpx57lkq88xsv0lwx9np96"))))
+ "04y2rlmcabmc55ljqlkgbb5xx94a59cz1dvrnpfj1vzz024pqkyg"))))
(build-system ant-build-system)
(arguments
`(#:jar-name "maven-jar-plugin.jar"
diff --git a/gnu/packages/mercury.scm b/gnu/packages/mercury.scm
index a6ae451e63..bab8909862 100644
--- a/gnu/packages/mercury.scm
+++ b/gnu/packages/mercury.scm
@@ -138,7 +138,7 @@
(native-inputs
`(("texinfo" ,texinfo)
("flex" ,flex)
- ("tcsh", tcsh)
+ ("tcsh" ,tcsh)
("bison" ,bison)
("readline" ,readline)
("libatomic-ops" ,(package-source
diff --git a/gnu/packages/mes.scm b/gnu/packages/mes.scm
index 9ffbe33ab7..5ceb1c6151 100644
--- a/gnu/packages/mes.scm
+++ b/gnu/packages/mes.scm
@@ -64,7 +64,7 @@ extensive examples, including parsers for the Javascript and C99 languages.")
(home-page "https://savannah.nongnu.org/projects/nyacc")
(license (list gpl3+ lgpl3+))))
-(define-public nyacc
+(define-public nyacc-0.99
(package
(inherit nyacc-0.86)
(version "0.99.0")
@@ -95,6 +95,28 @@ extensive examples, including parsers for the Javascript and C99 languages.")
(inputs
`(("guile" ,guile-2.2)))))
+(define-public nyacc
+ (package
+ (inherit nyacc-0.99)
+ (version "1.03.0")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "mirror://savannah/nyacc/nyacc-"
+ version ".tar.gz"))
+ (sha256
+ (base32
+ "1vdiqpm3p0ndmpmkzcpkpjvgklfsk4wxrhkixdxbczpafdfl635p"))
+ (modules '((guix build utils)))
+ (snippet
+ '(begin
+ (substitute* "configure"
+ (("GUILE_GLOBAL_SITE=\\$prefix.*")
+ "GUILE_GLOBAL_SITE=\
+$prefix/share/guile/site/$GUILE_EFFECTIVE_VERSION\n"))
+ #t))))
+ (inputs
+ `(("guile" ,guile-3.0)))))
+
(define-public mes-0.19
;; Mes used for bootstrap.
(package
@@ -153,7 +175,7 @@ Guile.")
"0p1jsrrmcbc0zrvbvnjbb6iyxr0in71km293q8qj6gnar6bw09av"))))
(propagated-inputs
`(("mescc-tools" ,mescc-tools)
- ("nyacc" ,nyacc)))
+ ("nyacc" ,nyacc-0.99)))
(native-search-paths
(list (search-path-specification
(variable "C_INCLUDE_PATH")
@@ -185,7 +207,7 @@ Guile.")
("make" ,gnu-make)
("mes" ,mes)
("mescc-tools" ,mescc-tools)
- ("nyacc" ,nyacc)
+ ("nyacc" ,nyacc-0.99)
("sed" ,sed)
("tar" ,tar)))
(supported-systems '("i686-linux"))
diff --git a/gnu/packages/messaging.scm b/gnu/packages/messaging.scm
index f8bb673734..5e2a39fece 100644
--- a/gnu/packages/messaging.scm
+++ b/gnu/packages/messaging.scm
@@ -24,6 +24,7 @@
;;; Copyright © 2020 Reza Alizadeh Majd <r.majd@pantherx.org>
;;; Copyright © 2020 Jonathan Brielmaier <jonathan.brielmaier@web.de>
;;; Copyright © 2020 Mason Hock <chaosmonk@riseup.net>
+;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -350,49 +351,53 @@ access to servers running the Discord protocol.")
(license license:gpl2+)))
(define-public purple-mattermost
- (package
- (name "purple-mattermost")
- (version "1.2")
- (home-page "https://github.com/EionRobb/purple-mattermost")
- (source (origin
- (method git-fetch)
- (uri (git-reference (url home-page)
- (commit (string-append "v" version))))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "0fm49iv58l09qpy8vkca3am642fxiwcrrh6ykimyc2mas210b5g2"))))
- (build-system gnu-build-system)
- (arguments
- `(#:phases (modify-phases %standard-phases
- (replace 'configure
- (lambda* (#:key inputs outputs #:allow-other-keys)
- ;; Adjust the makefile to install files in the right
- ;; place.
- (let ((out (assoc-ref outputs "out")))
- (substitute* "Makefile"
- (("MATTERMOST_DEST = .*")
- (string-append "MATTERMOST_DEST = " out
- "/lib/purple-2\n")) ;XXX: hardcoded
- (("MATTERMOST_ICONS_DEST = .*")
- (string-append "MATTERMOST_ICONS_DEST = "
- out
- "/share/pixmaps/pidgin/protocols\n")))
- #t))))
- #:make-flags (list "CC=gcc"
- ,(string-append "PLUGIN_VERSION=" version))
- #:tests? #f))
- (inputs `(("glib" ,glib)
- ("json-glib" ,json-glib)
- ("discount" ,discount)
- ("pidgin" ,pidgin)))
- (native-inputs `(("pkg-config" ,pkg-config)))
- (synopsis "Purple plug-in to access Mattermost instant messaging")
- (description
- "Purple-Mattermost is a plug-in for Purple, the instant messaging library
+ ;; The latest release (1.2) only supports Mattermost's /api/v3. Choose a
+ ;; commit that supports /api/v4.
+ (let ((commit "158ce2052af9aaf3d1f6f045f0cfba276e0e91cf")
+ (revision "0"))
+ (package
+ (name "purple-mattermost")
+ (version (git-version "1.2" revision commit))
+ (home-page "https://github.com/EionRobb/purple-mattermost")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference (url home-page)
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1481zm20pnfq52ncg7hxayjq8cw3a6yh9m4jm1m5s8chsq04015l"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:phases (modify-phases %standard-phases
+ (replace 'configure
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ ;; Adjust the makefile to install files in the right
+ ;; place.
+ (let ((out (assoc-ref outputs "out")))
+ (substitute* "Makefile"
+ (("MATTERMOST_DEST = .*")
+ (string-append "MATTERMOST_DEST = " out
+ "/lib/purple-2\n")) ;XXX: hardcoded
+ (("MATTERMOST_ICONS_DEST = .*")
+ (string-append "MATTERMOST_ICONS_DEST = "
+ out
+ "/share/pixmaps/pidgin/protocols\n")))
+ #t))))
+ #:make-flags (list "CC=gcc"
+ ,(string-append "PLUGIN_VERSION=" version))
+ #:tests? #f))
+ (inputs `(("glib" ,glib)
+ ("json-glib" ,json-glib)
+ ("discount" ,discount)
+ ("pidgin" ,pidgin)))
+ (native-inputs `(("pkg-config" ,pkg-config)))
+ (synopsis "Purple plug-in to access Mattermost instant messaging")
+ (description
+ "Purple-Mattermost is a plug-in for Purple, the instant messaging library
used by Pidgin and Bitlbee, among others, to access
@uref{https://mattermost.com/, Mattermost} servers.")
- (license license:gpl3+)))
+ (license license:gpl3+))))
(define-public hexchat
(package
@@ -536,7 +541,7 @@ authentication.")
(build-system glib-or-gtk-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)
- ("check" ,check)
+ ("check" ,check-0.14)
("intltool" ,intltool)
("gconf" ,gconf)
("python" ,python-2)
@@ -874,6 +879,7 @@ on Axolotl and PEP.")
(package
(name "dino")
(version "0.1.0")
+ (outputs '("out" "debug"))
(source
(origin
(method url-fetch)
@@ -2070,6 +2076,7 @@ There is support for:
(package
(name "quaternion")
(version "0.0.9.4e")
+ (outputs '("out" "debug"))
(source
(origin
(method git-fetch)
@@ -2313,7 +2320,7 @@ support for high performance Telegram Bot creation.")
(define-public chatty
(package
(name "chatty")
- (version "0.1.10")
+ (version "0.1.16")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -2322,7 +2329,7 @@ support for high performance Telegram Bot creation.")
(file-name (git-file-name name version))
(sha256
(base32
- "0czvqwjzsb0rvmgrmbh97m1b35rnwl41j7q32z4fcqb7bschibql"))))
+ "085hb3ii1cy0jb3f0mim25v5r5w3gpfsdpjid5dmrpw4gi88aa2x"))))
(build-system meson-build-system)
(arguments
'(#:phases
@@ -2339,6 +2346,7 @@ support for high performance Telegram Bot creation.")
(inputs
`(("feedbackd" ,feedbackd)
("folks" ,folks)
+ ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
("libgcrypt" ,libgcrypt)
("libgee" ,libgee)
("libhandy" ,libhandy-0.0)
diff --git a/gnu/packages/monitoring.scm b/gnu/packages/monitoring.scm
index 16de32b306..30fe61ea00 100644
--- a/gnu/packages/monitoring.scm
+++ b/gnu/packages/monitoring.scm
@@ -330,49 +330,52 @@ caching them in memory for \"hot queries\" from the Graphite-Web application,
and persisting them to disk using the Whisper time-series library.")
(license license:asl2.0)))
-(define-public python2-graphite-web
+(define-public graphite-web
(package
- (name "python2-graphite-web")
- (version "1.0.2")
+ (name "graphite-web")
+ (version "1.1.7")
(source
(origin
(method url-fetch)
(uri (pypi-uri "graphite-web" version))
(sha256
(base32
- "0q8bwlj75jqyzmazfsi5sa26xl58ssa8wdxm2l4j0jqyn8xpfnmc"))))
+ "1l5a5rry9cakqxamvlx4xq63jifmncb6815bg9vy7fg1zyd3pjxk"))))
(build-system python-build-system)
(arguments
- `(#:python ,python-2 ; only supports Python 2
+ `(#:tests? #f ;XXX: not in PyPI release & requires database
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'relax-requirements
(lambda _
(substitute* "setup.py"
- (("0.4.3") ,(package-version python2-django-tagging))
- (("<1.9.99") (string-append "<="
- ,(package-version python2-django))))
+ ;; Allow newer versions of django-tagging.
+ (("django-tagging==")
+ "django-tagging>="))
#t))
;; Don't install to /opt
(add-after 'unpack 'do-not-install-to-/opt
(lambda _ (setenv "GRAPHITE_NO_PREFIX" "1") #t)))))
(propagated-inputs
- `(("python2-cairocffi" ,python2-cairocffi)
- ("python2-pytz" ,python2-pytz)
- ("python2-whisper" ,python2-whisper)
- ("python2-django" ,python2-django)
- ("python2-django-tagging" ,python2-django-tagging)
- ("python2-scandir" ,python2-scandir)
- ("python2-urllib3" ,python2-urllib3)
- ("python2-pyparsing" ,python2-pyparsing)
- ("python2-txamqp" ,python2-txamqp)))
- (home-page "http://graphiteapp.org/")
+ `(("python-cairocffi" ,python-cairocffi)
+ ("python-pytz" ,python-pytz)
+ ("python-whisper" ,python-whisper)
+ ("python-django" ,python-django-2.2)
+ ("python-django-tagging" ,python-django-tagging)
+ ("python-scandir" ,python-scandir)
+ ("python-urllib3" ,python-urllib3)
+ ("python-pyparsing" ,python-pyparsing)
+ ("python-txamqp" ,python-txamqp)))
+ (home-page "https://graphiteapp.org/")
(synopsis "Scalable realtime graphing system")
(description "Graphite is a scalable real-time graphing system that does
two things: store numeric time-series data, and render graphs of this data on
demand.")
(license license:asl2.0)))
+(define-public python2-graphite-web
+ (deprecated-package "python2-graphite-web" graphite-web))
+
(define-public python-prometheus-client
(package
(name "python-prometheus-client")
diff --git a/gnu/packages/mpd.scm b/gnu/packages/mpd.scm
index 032b1d1074..b0d3645b4a 100644
--- a/gnu/packages/mpd.scm
+++ b/gnu/packages/mpd.scm
@@ -7,6 +7,7 @@
;;; Copyright © 2016, 2018, 2019, 2020 Leo Famulari <leo@famulari.name>
;;; Copyright © 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2019 Evan Straw <evan.straw99@gmail.com>
+;;; Copyright © 2020 Ricardo Wurmus <rekado@elephly.net>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -37,6 +38,7 @@
#:use-module (gnu packages boost)
#:use-module (gnu packages gettext)
#:use-module (gnu packages gnome)
+ #:use-module (gnu packages gnupg)
#:use-module (gnu packages gtk)
#:use-module (gnu packages icu4c)
#:use-module (gnu packages readline)
@@ -92,7 +94,7 @@ interfacing MPD in the C, C++ & Objective C languages.")
(define-public mpd
(package
(name "mpd")
- (version "0.21.25")
+ (version "0.22")
(source (origin
(method url-fetch)
(uri
@@ -101,10 +103,10 @@ interfacing MPD in the C, C++ & Objective C languages.")
"/mpd-" version ".tar.xz"))
(sha256
(base32
- "00f2cm3sg0vi9gxb1yk35lyyh3fbabwim3mfnsz2syrjpw0sv810"))))
+ "0xlhwdbnww7gjw474j54j94iwrzbzlqvnv6chlkga6yh4pcl5rvx"))))
(build-system meson-build-system)
(arguments
- `(#:configure-flags '("-Ddocumentation=true"))) ;the default is 'false'...
+ `(#:configure-flags '("-Ddocumentation=enabled")))
(inputs `(("ao" ,ao)
("alsa-lib" ,alsa-lib)
("avahi" ,avahi)
@@ -183,7 +185,7 @@ player daemon.")
(define-public ncmpc
(package
(name "ncmpc")
- (version "0.39")
+ (version "0.41")
(source (origin
(method url-fetch)
(uri
@@ -192,7 +194,7 @@ player daemon.")
"/ncmpc-" version ".tar.xz"))
(sha256
(base32
- "1a0i1wm9287kd4nqii28dp84260063kyl726yjzxzr7vq8hf7sv4"))))
+ "1b0kxidz3h3anc006cjrrbb281zl75f1qaip4m3672pczdc2lwwa"))))
(build-system meson-build-system)
(arguments
`(#:configure-flags
@@ -249,18 +251,19 @@ sort playlists, and a local file system browser.")
(define-public mpdscribble
(package
(name "mpdscribble")
- (version "0.22")
+ (version "0.23")
(source (origin
(method url-fetch)
(uri (string-append "http://www.musicpd.org/download/mpdscribble/"
- version "/mpdscribble-" version ".tar.gz"))
+ version "/mpdscribble-" version ".tar.xz"))
(sha256
(base32
- "0f0ybx380x2z2g1qvdndpvcrhkrgsfqckhz3ryydq2w3pl12v27z"))))
- (build-system gnu-build-system)
- (inputs `(("libmpdclient" ,libmpdclient)
+ "0s66zqscb44p88cl3kcv5jkjcqsskcnrv7xgrjhzrchf2kcpwf53"))))
+ (build-system meson-build-system)
+ (inputs `(("boost" ,boost)
("curl" ,curl)
- ("glib" ,glib)))
+ ("libgcrypt" ,libgcrypt)
+ ("libmpdclient" ,libmpdclient)))
(native-inputs `(("pkg-config" ,pkg-config)))
(synopsis "MPD client for track scrobbling")
(description "mpdscribble is a Music Player Daemon client which submits
diff --git a/gnu/packages/mpi.scm b/gnu/packages/mpi.scm
index b39c50779a..06a82cce95 100644
--- a/gnu/packages/mpi.scm
+++ b/gnu/packages/mpi.scm
@@ -1,6 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2014, 2015, 2018, 2019 Eric Bavier <bavier@member.fsf.org>
-;;; Copyright © 2014, 2015, 2016, 2017, 2018, 2019 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2014, 2015, 2016, 2017, 2018, 2019, 2020 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2014 Ian Denhardt <ian@zenhack.net>
;;; Copyright © 2016 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2017 Dave Love <fx@gnu.org>
@@ -177,7 +177,7 @@ bind processes, and much more.")
(define-public openmpi
(package
(name "openmpi")
- (version "4.0.3")
+ (version "4.0.5")
(source
(origin
(method url-fetch)
@@ -185,7 +185,7 @@ bind processes, and much more.")
(version-major+minor version)
"/downloads/openmpi-" version ".tar.bz2"))
(sha256
- (base32 "00zxcw99gr5n693cmcmn4f6a47vx1ywna895p0x7p163v37gw0hl"))
+ (base32 "02f0r9d3xgs08svkmj8v7lzviyxqnkk4yd3z0wql550xnriki3y5"))
(patches (search-patches "openmpi-mtl-priorities.patch"))))
(build-system gnu-build-system)
(inputs
@@ -221,6 +221,10 @@ bind processes, and much more.")
"--with-hwloc=external"
"--with-libevent"
+ ;; Help 'orterun' and 'mpirun' find their tools
+ ;; under $prefix by default.
+ "--enable-mpirun-prefix-by-default"
+
;; InfiniBand support
"--enable-openib-control-hdr-padding"
"--enable-openib-dynamic-sl"
diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm
index a3e38dd1c8..830bc4dfbe 100644
--- a/gnu/packages/music.scm
+++ b/gnu/packages/music.scm
@@ -29,6 +29,8 @@
;;; Copyright © 2020 Lars-Dominik Braun <lars@6xq.net>
;;; Copyright © 2020 Giacomo Leidi <goodoldpaul@autistici.org>
;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de>
+;;; Copyright © 2020 Tanguy Le Carrour <tanguy@bioneland.org>
+;;; Copyright © 2020 Marius Bakke <marius@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -137,6 +139,7 @@
#:use-module (gnu packages rsync)
#:use-module (gnu packages sdl)
#:use-module (gnu packages sqlite)
+ #:use-module (gnu packages stb)
#:use-module (gnu packages tcl)
#:use-module (gnu packages texinfo)
#:use-module (gnu packages tex)
@@ -147,6 +150,7 @@
#:use-module (gnu packages vim) ;for 'xxd'
#:use-module (gnu packages web)
#:use-module (gnu packages wxwidgets)
+ #:use-module (gnu packages xdisorg)
#:use-module (gnu packages xml)
#:use-module (gnu packages xorg)
#:use-module (gnu packages xiph)
@@ -743,16 +747,64 @@ MusePack, Monkey's Audio, and WavPack files.")
" --mcpu=generic --attr=none")))
#t)))))
(inputs
- `(("llvm" ,llvm-for-extempore)
+ `(("llvm"
+ ,(package
+ (inherit llvm-3.8)
+ (name "llvm-for-extempore")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "http://extempore.moso.com.au/extras/"
+ "llvm-3.8.0.src-patched-for-extempore.tar.xz"))
+ (sha256
+ (base32
+ "1svdl6fxn8l01ni8mpm0bd5h856ahv3h9sdzgmymr6fayckjvqzs"))))))
("libffi" ,libffi)
("jack" ,jack-1)
("libsndfile" ,libsndfile)
("glfw" ,glfw)
("apr" ,apr)
- ("stb-image" ,stb-image-for-extempore)
+ ("stb-image"
+ ,(let ((revision "1")
+ (commit "152a250a702bf28951bb0220d63bc0c99830c498"))
+ (package
+ (inherit stb-image)
+ (name "stb-image-for-extempore")
+ (version (git-version "0" revision commit))
+ (source
+ (origin (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/extemporelang/stb")
+ (commit commit)))
+ (sha256
+ (base32
+ "0y0aa20pj9311x2ii06zg8xs34idg14hfgldqc5ymizc6cf1qiqv"))
+ (file-name (git-file-name name version))))
+ (build-system cmake-build-system)
+ (arguments `(#:tests? #f)) ;no tests included
+ (inputs '()))))
("kiss-fft" ,kiss-fft-for-extempore)
("nanovg" ,nanovg-for-extempore)
- ("portmidi" ,portmidi-for-extempore)
+ ("portmidi"
+ ,(let ((version "217")
+ (revision "0")
+ (commit "8602f548f71daf5ef638b2f7d224753400cb2158"))
+ (package
+ (inherit portmidi)
+ (name "portmidi-for-extempore")
+ (version (git-version version revision commit))
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/extemporelang/portmidi")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1qidzl1s3kzhczzm96rcd2ppn27a97k2axgfh1zhvyf0s52d7m4w"))))
+ (build-system cmake-build-system)
+ (arguments `(#:tests? #f)) ;no tests
+ (native-inputs '()))))
("assimp" ,assimp)
("alsa-lib" ,alsa-lib)
("portaudio" ,portaudio)
@@ -777,6 +829,75 @@ are helpful when working in problem spaces where timing is important (such as
audio and video).")
(license license:bsd-2)))
+(define-public surge-synth
+ (package
+ (name "surge-synth")
+ (version "1.7.1")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/surge-synthesizer/surge")
+ (commit (string-append "release_" version))
+ (recursive? #t))) ; build system expects modules to be there
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1jhk8iaqh89dnci4446b47315v2lc8gclraygk8m9jl20zpjxl0l"))))
+ (build-system cmake-build-system)
+ (arguments
+ `(#:tests? #f ; no tests included
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'replace-python
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (substitute* "CMakeLists.txt"
+ ((" python ")
+ (string-append " " (assoc-ref inputs "python")
+ "/bin/python3 ")))
+ #t))
+ (add-after 'unpack 'fix-data-directory-name
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (substitute* "src/common/SurgeStorage.cpp"
+ (("/usr") (assoc-ref outputs "out")))
+ #t))
+ (replace 'install ; no install target
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (let* ((src (assoc-ref inputs "source"))
+ (out (assoc-ref outputs "out"))
+ (share (string-append out "/share"))
+ (lib (string-append out "/lib"))
+ (lv2 (string-append lib "/lv2"))
+ (vst3 (string-append lib "/vst3")))
+ (mkdir-p lv2)
+ (mkdir-p vst3)
+ ;; Install LV2 plugin.
+ (copy-recursively "surge_products/Surge.lv2"
+ (string-append lv2 "/Surge.lv2"))
+ ;; Install VST3 plugin.
+ (copy-recursively "surge_products/Surge.vst3"
+ (string-append vst3 "/Surge.vst3"))
+ ;; Install data.
+ (copy-recursively (string-append src "/resources/data")
+ (string-append share "/Surge"))
+ #t))))))
+ (inputs
+ `(("cairo" ,cairo)
+ ("libxkbcommon" ,libxkbcommon)
+ ("python" ,python)
+ ("xcb-util" ,xcb-util)
+ ("xcb-util-cursor" ,xcb-util-cursor)
+ ("xcb-util-keysyms" ,xcb-util-keysyms)))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (home-page "https://surge-synthesizer.github.io/")
+ (synopsis "Synthesizer plugin")
+ (description
+ "Surge is a subtractive hybrid digital synthesizer. Each patch contains
+two @dfn{scenes} which are separate instances of the entire synthesis
+engine (except effects) that can be used for layering or split patches.")
+ (license license:gpl3+)))
+
(define-public klick
(package
(name "klick")
@@ -1233,7 +1354,7 @@ device supports.")
(define-public bsequencer
(package
(name "bsequencer")
- (version "1.6.0")
+ (version "1.8.0")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -1242,7 +1363,7 @@ device supports.")
(file-name (git-file-name name version))
(sha256
(base32
- "0w21kzq695xy4i1r6xvvh7sad5m0rlmdgc7ykmrlzfsm1252dz80"))))
+ "0w7iwzz2r4a699fi24qk71vv2k3jpl9ylzlgmvyc3rlgad0m01k1"))))
(build-system gnu-build-system)
(arguments
`(#:make-flags
@@ -1321,9 +1442,9 @@ B.Choppr is the successor of B.Slizr.")
(base32
"0kl6hrxmqrdf0195bfnzsa2h1073fgiqrfhg2276fm1954sm994v"))))
(inputs
- `(("cairo", cairo)
- ("libsndfile", libsndfile)
- ("lv2", lv2)))
+ `(("cairo" ,cairo)
+ ("libsndfile" ,libsndfile)
+ ("lv2" ,lv2)))
(synopsis "Pattern-controlled audio stream/sample re-sequencer LV2 plugin")
(description "B.Jumblr is a pattern-controlled audio stream / sample
re-sequencer LV2 plugin.")
@@ -1346,11 +1467,11 @@ re-sequencer LV2 plugin.")
(base32
"1c09acqrbd387ba41f8ch1qykdap5h6cg9if5pgd16i4dmjnpghj"))))
(inputs
- `(("cairo", cairo)
+ `(("cairo" ,cairo)
("fontconfig" ,fontconfig)
- ("libsndfile", libsndfile)
+ ("libsndfile" ,libsndfile)
("libx11" ,libx11)
- ("lv2", lv2)))
+ ("lv2" ,lv2)))
(home-page "https://github.com/sjaehn/BSchaffl")
(synopsis "Pattern-controlled MIDI amp & time stretch LV2 plugin")
(description "This package provides an LV2 plugin that allows for
@@ -1984,7 +2105,7 @@ export.")
(define-public pd
(package
(name "pd")
- (version "0.51-1")
+ (version "0.51-2")
(source (origin
(method url-fetch)
(uri
@@ -1992,7 +2113,7 @@ export.")
version ".src.tar.gz"))
(sha256
(base32
- "0imbha9h96vqa967cbmdj7kkx7zrs054n5w2bjnifxdzws3qbxf6"))))
+ "1jgklcnaxypc8hr5j6mng8dd4na4ygfdixsfch8b86glssddi6mh"))))
(build-system gnu-build-system)
(arguments
(let ((wish (string-append "wish" (version-major+minor
@@ -2113,29 +2234,6 @@ main purpose is to liberate raw audio rendering from audio and MIDI drivers.")
using a system-independent interface.")
(license license:expat)))
-(define-public portmidi-for-extempore
- (let ((version "217")
- (revision "0")
- (commit "8602f548f71daf5ef638b2f7d224753400cb2158"))
- (package (inherit portmidi)
- (name "portmidi-for-extempore")
- (version (git-version version revision commit))
- (source (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/extemporelang/portmidi")
- (commit commit)))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "1qidzl1s3kzhczzm96rcd2ppn27a97k2axgfh1zhvyf0s52d7m4w"))))
- (build-system cmake-build-system)
- (arguments `(#:tests? #f)) ; no tests
- (native-inputs '())
- ;; Extempore refuses to build on architectures other than x86_64
- (supported-systems '("x86_64-linux"))
- (home-page "https://github.com/extemporelang/portmidi/"))))
-
(define-public python-pyportmidi
(package
(name "python-pyportmidi")
@@ -2605,14 +2703,14 @@ from the command line.")
(define-public qtractor
(package
(name "qtractor")
- (version "0.9.16")
+ (version "0.9.17")
(source (origin
(method url-fetch)
(uri (string-append "https://downloads.sourceforge.net/qtractor/"
"qtractor-" version ".tar.gz"))
(sha256
(base32
- "1l19g7cvgb7gfjmaihnd899k5hhxyf4sz22380y830xjfs2fvqxc"))))
+ "0mcfli3wffz5a9pkpcxli03ysyrr53ij3569m81ck9h8pr7yng4b"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f)) ; no "check" target
@@ -2846,7 +2944,7 @@ event-based scripts for scrobbling, notifications, etc.")
(define-public picard
(package
(name "picard")
- (version "2.1.3")
+ (version "2.4.4")
(source (origin
(method url-fetch)
(uri (string-append
@@ -2854,7 +2952,8 @@ event-based scripts for scrobbling, notifications, etc.")
"picard/picard-" version ".tar.gz"))
(sha256
(base32
- "19w5k3bf4886gdycxjds9nkjvir0gwy2r5cqkz0lbls4ikk4y14f"))))
+ "1c5l7i43jaj3s4wklc0cba6nn2x9cmpcggk4q4h9m1bci2xilsiy"))
+ (patches (search-patches "picard-fix-id3-rename-test.patch"))))
(build-system python-build-system)
(arguments
'(#:use-setuptools? #f
@@ -2873,7 +2972,8 @@ event-based scripts for scrobbling, notifications, etc.")
(assoc-ref inputs "chromaprint") "/bin/fpcalc")))
#t)))))
(native-inputs
- `(("gettext" ,gettext-minimal)))
+ `(("gettext" ,gettext-minimal)
+ ("python-dateutil" ,python-dateutil)))
(inputs
`(("chromaprint" ,chromaprint)
("python-discid" ,python-discid)
@@ -2889,16 +2989,18 @@ formats, looking up tracks through metadata and audio fingerprints.")
(define-public python-mutagen
(package
(name "python-mutagen")
- (version "1.38")
+ (version "1.45.1")
(source (origin
(method url-fetch)
(uri (pypi-uri "mutagen" version))
(sha256
(base32
- "0rl7sxn1rcjl48fwga3dqf9f6pzspsny4ngxyf6pp337mrq0z693"))))
+ "1qdk6i8gyhbi1c4j5jmbfpac3q8sff2ysri1pnp7nb9wzcp615v3"))))
(build-system python-build-system)
(native-inputs
- `(("python-pytest" ,python-pytest)))
+ `(("python-pytest" ,python-pytest)
+ ("python-hypothesis" ,python-hypothesis)
+ ("python-flake8" ,python-flake8)))
(home-page "https://bitbucket.org/lazka/mutagen")
(synopsis "Read and write audio tags")
(description "Mutagen is a Python module to handle audio metadata. It
@@ -3085,6 +3187,13 @@ websites such as Libre.fm.")
(arguments
`(#:phases
(modify-phases %standard-phases
+ ;; Reported upstream: <https://github.com/beetbox/beets/issues/3771>.
+ ;; Disable the faulty test as the fix is unclear.
+ (add-after 'unpack 'disable-failing-tests
+ (lambda _
+ (substitute* "test/test_mediafile.py"
+ (("def test_read_audio_properties") "def _test_read_audio_properties"))
+ #t))
(add-after 'unpack 'set-HOME
(lambda _
(setenv "HOME" (string-append (getcwd) "/tmp"))
@@ -4085,7 +4194,7 @@ audio samples and various soft sythesizers. It can receive input from a MIDI ke
(define-public musescore
(package
(name "musescore")
- (version "3.5")
+ (version "3.5.1")
(source
(origin
(method git-fetch)
@@ -4094,7 +4203,7 @@ audio samples and various soft sythesizers. It can receive input from a MIDI ke
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
- (base32 "1s8767imzv9hclpzvvvsqb3iyiv4y2klr6agf95zwym2xafy8p26"))
+ (base32 "01jj6rbvbjxvmv6q13a22vfqp3id52a5mf2a1vzph2giz7pr313x"))
(modules '((guix build utils)))
(snippet
;; Un-bundle OpenSSL and remove unused libraries.
@@ -5005,7 +5114,7 @@ and reverb.")
(define-public lsp-plugins
(package
(name "lsp-plugins")
- (version "1.1.24")
+ (version "1.1.26")
(source
(origin
(method git-fetch)
@@ -5014,7 +5123,7 @@ and reverb.")
(commit (string-append "lsp-plugins-" version))))
(file-name (git-file-name name version))
(sha256
- (base32 "0rzgzkg6wvhjcf664i16nz4v30drgv80s34bhdflcjzx2x7ix5zk"))))
+ (base32 "1apw8zh3a3il4smkjji6bih4vbsymj0hjs10fgkrd4nazqkjvgyd"))))
(build-system gnu-build-system)
(arguments
`(#:make-flags
@@ -5025,18 +5134,18 @@ and reverb.")
(string-append "ETC_PATH=" (assoc-ref %outputs "out") "/etc"))
#:phases
(modify-phases %standard-phases
- (delete 'configure)) ; no configure
+ (delete 'configure)) ; no configure script
#:test-target "test"))
(inputs
- `(("cairo", cairo)
- ("hicolor-icon-theme", hicolor-icon-theme)
- ("jack", jack-1)
- ("ladspa", ladspa)
- ("libsndfile", libsndfile)
- ("lv2", lv2)
- ("mesa", mesa)))
+ `(("cairo" ,cairo)
+ ("hicolor-icon-theme" ,hicolor-icon-theme)
+ ("jack" ,jack-1)
+ ("ladspa" ,ladspa)
+ ("libsndfile" ,libsndfile)
+ ("lv2" ,lv2)
+ ("mesa" ,mesa)))
(native-inputs
- `(("pkg-config", pkg-config)))
+ `(("pkg-config" ,pkg-config)))
(synopsis "Audio plugin collection")
(description "LSP (Linux Studio Plugins) is a collection of audio
plugins available as LADSPA/LV2 plugins and as standalone JACK
@@ -5146,12 +5255,12 @@ as a whole to realisticly reproduce the features and flaws of the real deal.")
`(("pkg-config" ,pkg-config)
("xxd" ,xxd)))
(inputs
- `(("cairo", cairo)
- ("fftw", fftw)
- ("fftwf", fftwf)
- ("jack", jack-1)
- ("lv2", lv2)
- ("mesa", mesa)))
+ `(("cairo" ,cairo)
+ ("fftw" ,fftw)
+ ("fftwf" ,fftwf)
+ ("jack" ,jack-1)
+ ("lv2" ,lv2)
+ ("mesa" ,mesa)))
(synopsis "Realtime graphical spectrum analyzer")
(description "Spectacle is a real-time spectral analyzer using the
short-time Fourier transform, available as LV2 audio plugin and JACK client.")
@@ -5267,7 +5376,7 @@ ZaMultiComp, ZaMultiCompX2 and ZamSynth.")
(define-public geonkick
(package
(name "geonkick")
- (version "2.3.7")
+ (version "2.3.8")
(source
(origin
(method git-fetch)
@@ -5276,8 +5385,7 @@ ZaMultiComp, ZaMultiCompX2 and ZamSynth.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
- (base32
- "1wdcbwiyy6i5agq5lffkyilyc8mv1cc4mp9h0nybn240vb2flqc2"))))
+ (base32 "07809yy2q7dd6fcp0yndlg1vw2ca2zisnsplb3xrxvzdvrqlw910"))))
(build-system cmake-build-system)
(arguments
`(#:tests? #f ;no tests included
@@ -5445,12 +5553,12 @@ MIDI drums and comes as two separate drumkits: Black Pearl and Red Zeppelin.")
("freetype2" ,freetype)
("hicolor-icon-theme" ,hicolor-icon-theme)
("libxcursor" ,libxcursor)
- ("libxinerama", libxinerama)
- ("jack", jack-1)
+ ("libxinerama" ,libxinerama)
+ ("jack" ,jack-1)
("mesa" ,mesa)))
(native-inputs
`(("pkg-config" ,pkg-config)
- ("lv2", lv2)))
+ ("lv2" ,lv2)))
(home-page "https://tytel.org/helm/")
(synopsis "Polyphonic synth with lots of modulation")
(description "Helm is a cross-platform polyphonic synthesizer available standalone
@@ -5465,7 +5573,7 @@ and as an LV2 plugin.")
;; distros to make necessary changes to integrate the software into the
;; distribution.
(name "zrythm")
- (version "0.8.911")
+ (version "1.0.0-alpha.3.0.1")
(source
(origin
(method url-fetch)
@@ -5473,7 +5581,7 @@ and as an LV2 plugin.")
version ".tar.xz"))
(sha256
(base32
- "1xyp70sjc2k5pfdqbwqa988v86da0rmmyl8ry86bqv4ja80sc6g9"))))
+ "06025367x08y4g9grhcn35bk1dsrpgm04c8l8j50i3p49dl3s1n0"))))
(build-system meson-build-system)
(arguments
`(#:glib-or-gtk? #t
@@ -5485,15 +5593,8 @@ and as an LV2 plugin.")
"-Dgraphviz=enabled" ; for exporting routing graphs
"-Dguile=enabled" ; for Guile scripting
"-Djack=enabled" ; for JACK audio/MIDI backend
- "-Dsdl=enabled") ; for SDL audio backend (which uses ALSA)
- #:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'patch-xdg-open
- (lambda _
- (substitute* "src/utils/io.c"
- (("OPEN_DIR_CMD")
- (string-append "\"" (which "xdg-open") "\"")))
- #t)))))
+ "-Drtmidi=enabled" ; for RtMidi backend (ALSA sequencer)
+ "-Dsdl=enabled"))) ; for SDL audio backend (which uses ALSA)
(inputs
`(("alsa-lib" ,alsa-lib)
("jack" ,jack-1)
@@ -5775,9 +5876,9 @@ plugin and a standalone JACK application.")
"/lib/lv2")
"install"))))))
(inputs
- `(("lv2", lv2)))
+ `(("lv2" ,lv2)))
(native-inputs
- `(("pkg-config", pkg-config)))
+ `(("pkg-config" ,pkg-config)))
(synopsis "Audio plugin collection")
(description "TAP (Tom's Audio Processing) plugins is a collection of
audio effect plugins originally released as LADSPA plugins. This package
@@ -5833,9 +5934,9 @@ plugin and a standalone JACK application.")
(native-inputs
`(("pkg-config" ,pkg-config)))
(inputs
- `(("jack", jack-1)
- ("lv2", lv2)
- ("mesa", mesa)))
+ `(("jack" ,jack-1)
+ ("lv2" ,lv2)
+ ("mesa" ,mesa)))
(synopsis "Waveshaper plugin")
(description "Wolf Shaper is a waveshaper plugin with a graph editor.
It is provided as an LV2 plugin and as a standalone Jack application.")
@@ -5915,12 +6016,12 @@ It is provided as an LV2 plugin and as a standalone Jack application.")
(native-inputs
`(("pkg-config" ,pkg-config)))
(inputs
- `(("cairo", cairo)
- ("glu", glu)
- ("jack", jack-1)
- ("lv2", lv2)
- ("mesa", mesa)
- ("pango", pango)))
+ `(("cairo" ,cairo)
+ ("glu" ,glu)
+ ("jack" ,jack-1)
+ ("lv2" ,lv2)
+ ("mesa" ,mesa)
+ ("pango" ,pango)))
(synopsis "Audio plugin collection")
(description "Shiru plugins is a collection of audio plugins created
by Shiru, ported to LV2 by the Linux MAO project using the DISTRHO plugin
diff --git a/gnu/packages/nano.scm b/gnu/packages/nano.scm
index be8483b4e3..71ce4713f9 100644
--- a/gnu/packages/nano.scm
+++ b/gnu/packages/nano.scm
@@ -30,13 +30,13 @@
(define-public nano
(package
(name "nano")
- (version "5.2")
+ (version "5.3")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://gnu/nano/nano-" version ".tar.xz"))
(sha256
- (base32 "1qd7pn9g5dgzbfg4fb3nqxqgi2iqq0g6x33x8d1mx6mfw51xmhij"))))
+ (base32 "0lj3fcfzprmv9raydx8yq25lw81bs6g40rhd0fv9d6idcb7wphf5"))))
(build-system gnu-build-system)
(inputs
`(("gettext" ,gettext-minimal)
diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm
index 1c2e7cf979..de76406a31 100644
--- a/gnu/packages/networking.scm
+++ b/gnu/packages/networking.scm
@@ -13,7 +13,7 @@
;;; Copyright © 2016 Benz Schenk <benz.schenk@uzh.ch>
;;; Copyright © 2016, 2017 Pjotr Prins <pjotr.guix@thebird.nl>
;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
-;;; Copyright © 2017 Leo Famulari <leo@famulari.name>
+;;; Copyright © 2017, 2020 Leo Famulari <leo@famulari.name>
;;; Copyright © 2017, 2018, 2019, 2020 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2017, 2018, 2019 Rutger Helling <rhelling@mykolab.com>
;;; Copyright © 2017, 2019 Gábor Boskovits <boskovits@gmail.com>
@@ -39,6 +39,8 @@
;;; Copyright © 2020 Vincent Legoll <vincent.legoll@gmail.com>
;;; Copyright © 2020 Brice Waegeneire <brice@waegenei.re>
;;; Copyright © 2020 Jakub Kądziołka <kuba@kadziolka.net>
+;;; Copyright © 2020 Jesse Dowell <jessedowell@gmail.com>
+;;; Copyright © 2020 Hamzeh Nasajpour <h.nasajpour@pantherx.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -306,7 +308,7 @@ supported, including rtmp://, rtmpt://, rtmpe://, rtmpte://, and rtmps://.")
(define-public srt
(package
(name "srt")
- (version "1.4.1")
+ (version "1.4.2")
(source
(origin
(method git-fetch)
@@ -316,7 +318,7 @@ supported, including rtmp://, rtmpt://, rtmpe://, rtmpte://, and rtmps://.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
- (base32 "01xaq44j95kbgqfl41pnybvqy0yq6wd4wdw88ckylzf0nzp977xz"))))
+ (base32 "01nx3a35hzq2x0dvp2n2b86phpdy1z83kdraag7aq3hmc7f8iagg"))))
(build-system cmake-build-system)
(arguments
`(#:configure-flags
@@ -344,6 +346,24 @@ performance across unpredictable networks, such as the Internet.")
(home-page "https://www.srtalliance.org/")
(license license:mpl2.0)))
+;; FFmpeg, GStreamer, and VLC don't support SRT 1.4.2 yet.
+(define-public srt-1.4.1
+ (package
+ (inherit srt)
+ (name "srt")
+ (version "1.4.1")
+ (source
+ (origin
+ (method git-fetch)
+ (uri
+ (git-reference
+ (url "https://github.com/Haivision/srt.git")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "01xaq44j95kbgqfl41pnybvqy0yq6wd4wdw88ckylzf0nzp977xz"))))))
+
(define-public lksctp-tools
(package
(name "lksctp-tools")
@@ -418,7 +438,8 @@ at the link-layer level.")
(arguments
`(#:configure-flags
(list "-DNNG_ENABLE_COVERAGE=ON"
- "-DNNG_ENABLE_TLS=ON")
+ "-DNNG_ENABLE_TLS=ON"
+ "-DBUILD_SHARED_LIBS=ON")
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'disable-failing-tests
@@ -837,18 +858,17 @@ transparently check connection attempts against an access control list.")
(license (license:non-copyleft "file://DISCLAIMER"
"See the file DISCLAIMER in the distribution."))))
-
(define-public zeromq
(package
(name "zeromq")
- (version "4.3.2")
+ (version "4.3.3")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/zeromq/libzmq/releases"
"/download/v" version "/zeromq-" version ".tar.gz"))
(sha256
(base32
- "0qzp80ky4y2k7k1ya09v9gkivvfbz2km813snrb8jhnn634bbmzb"))))
+ "18km71p77jm1w7wly2a5mxvphjb0f2l6s08cg382x55f6zdqb4lx"))))
(build-system gnu-build-system)
(home-page "https://zeromq.org")
(synopsis "Library for message-based applications")
@@ -1021,14 +1041,14 @@ receiving NDP messages.")
(define-public ethtool
(package
(name "ethtool")
- (version "5.8")
+ (version "5.9")
(source (origin
(method url-fetch)
(uri (string-append "mirror://kernel.org/software/network/"
"ethtool/ethtool-" version ".tar.xz"))
(sha256
(base32
- "0ikmz36bdfwxscsfcgjmyzg70hwr8i3wpdhcp1vmk3q4ip858frg"))))
+ "0vwam1ay184z237vnl8ivb0rdjjbljp9pj3kjzhc6yzq180k4aai"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)))
@@ -1213,7 +1233,7 @@ test_parse_format_ipv(4(|_listen_all|_mapped_ipv6)|6)\\);")
#:test-target "test"))
(inputs `(("net-tools" ,net-tools)
("zlib" ,zlib)))
- (native-inputs `(("check" ,check)
+ (native-inputs `(("check" ,check-0.14)
("pkg-config" ,pkg-config)))
(home-page "https://code.kryo.se/iodine/")
(synopsis "Tunnel IPv4 data through a DNS server")
@@ -1269,14 +1289,14 @@ of the same name.")
(define-public wireshark
(package
(name "wireshark")
- (version "3.2.6")
+ (version "3.2.7")
(source
(origin
(method url-fetch)
(uri (string-append "https://www.wireshark.org/download/src/wireshark-"
version ".tar.xz"))
(sha256
- (base32 "1wmlbrym6l5fkvic596yx74jz1pn4pfjihsx341fxv5w76zfxcgb"))))
+ (base32 "1nkhglzxj05hwhgzrgan4glv0z67rmasf9djx1dmqicwdnw2z0xy"))))
(build-system cmake-build-system)
(arguments
`(#:phases
@@ -1436,8 +1456,9 @@ handling network namespaces in Go.")
(define-public go-sctp
;; docker-libnetwork-cmd-proxy requires this exact commit.
- (let ((commit "07191f837fedd2f13d1ec7b5f885f0f3ec54b1cb")
- (revision "1"))
+ ;; This commit is mentioned in docker-libnetwork-cmd-proxy's vendor.conf.
+ (let ((commit "6e2cb1366111dcf547c13531e3a263a067715847")
+ (revision "2"))
(package
(name "go-sctp")
(version (git-version "0.0.0" revision commit))
@@ -1449,10 +1470,11 @@ handling network namespaces in Go.")
(file-name (git-file-name name version))
(sha256
(base32
- "1mk9ncm10gwi5pn5wcw4skbyf4qg7n5qdf1mim4gf3mrckvi6g6h"))))
+ "1ba90fmpdwxa1ba4hrsjhi3gfy3pwmz7x8amw1p5dc9p5a7nnqrb"))))
(build-system go-build-system)
(arguments
- `(#:import-path "github.com/ishidawataru/sctp"))
+ `(#:tests? #f ; Test suite is flakey.
+ #:import-path "github.com/ishidawataru/sctp"))
(home-page "https://github.com/ishidawataru/sctp")
(synopsis "SCTP library for the Go programming language")
(description "This library provides methods for using the stream control
@@ -1788,7 +1810,7 @@ private (reserved).")
(define-public perl-net-dns
(package
(name "perl-net-dns")
- (version "1.24")
+ (version "1.27")
(source
(origin
(method url-fetch)
@@ -1799,7 +1821,7 @@ private (reserved).")
(string-append "mirror://cpan/authors/id/N/NL/NLNETLABS/Net-DNS-"
version ".tar.gz")))
(sha256
- (base32 "0qyy5k4k0llqjjmkkfg96919gqybdc1z5fy9047n9imidjxc59hi"))))
+ (base32 "0hdx5ajr34f39rycai090y9w8gq9v0shgziynaaj0rzk21vjfdpk"))))
(build-system perl-build-system)
(inputs
`(("perl-digest-hmac" ,perl-digest-hmac)))
@@ -2656,14 +2678,14 @@ can be whipped up with little effort.")
(define-public mtr
(package
(name "mtr")
- (version "0.93")
+ (version "0.94")
(source
(origin
(method url-fetch)
(uri (string-append "ftp://ftp.bitwizard.nl/mtr/"
"mtr-" version ".tar.gz"))
(sha256
- (base32 "03gid8g4r6a9r40855s4345xm1bylj2kfqkicjwxpmvvccyng712"))))
+ (base32 "1glxvlqskcmjkxlqk9i12hcfaxb389cx2n8ji7776gmix3aq4z1z"))))
(build-system gnu-build-system)
(inputs
`(("libcap" ,libcap)
@@ -3270,9 +3292,9 @@ communication over HTTP.")
("pcre2" ,pcre2)
("sobjectizer" ,sobjectizer)))
(propagated-inputs
- `(("asio", asio)
+ `(("asio" ,asio)
("fmt" ,fmt)
- ("http-parser", http-parser)))
+ ("http-parser" ,http-parser)))
(arguments
`(#:configure-flags '("-DRESTINIO_INSTALL=on")
#:tests? #f ; TODO: The tests are called from the root CMakelist, need RESTINIO_TEST=on.
diff --git a/gnu/packages/nfs.scm b/gnu/packages/nfs.scm
index 049de2c4b0..ba50ca5e01 100644
--- a/gnu/packages/nfs.scm
+++ b/gnu/packages/nfs.scm
@@ -62,7 +62,8 @@
(build-system gnu-build-system)
(arguments
`(#:configure-flags
- `("--without-tcp-wrappers"
+ `("--disable-static"
+ "--without-tcp-wrappers"
,(string-append "--with-start-statd="
(assoc-ref %outputs "out") "/sbin/start-statd")
,(string-append "--with-krb5=" (assoc-ref %build-inputs "mit-krb5"))
diff --git a/gnu/packages/nss.scm b/gnu/packages/nss.scm
index b19ad7e1e9..6e2ca883e0 100644
--- a/gnu/packages/nss.scm
+++ b/gnu/packages/nss.scm
@@ -4,6 +4,7 @@
;;; Copyright © 2016, 2017, 2018, 2019 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2020 Marius Bakke <mbakke@fastmail.com>
+;;; Copyright © 2020 Jonathan Brielmaier <jonathan.brielmaier@web.de>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -35,7 +36,7 @@
(define-public nspr
(package
(name "nspr")
- (version "4.25")
+ (version "4.29")
(source (origin
(method url-fetch)
(uri (string-append
@@ -43,7 +44,7 @@
version "/src/nspr-" version ".tar.gz"))
(sha256
(base32
- "0mjjk2b7ika3v4y99cnaqz3z1iq1a50r1psn9i3s87gr46z0khqb"))))
+ "10i5x637x0jqmdi47grkzgn56fg6770naa3wrhr4dmsrh3dnna12"))))
(build-system gnu-build-system)
(native-inputs
`(("perl" ,perl)))
@@ -72,7 +73,7 @@ in the Mozilla clients.")
(define-public nss
(package
(name "nss")
- (version "3.52.1")
+ (version "3.57")
(source (origin
(method url-fetch)
(uri (let ((version-with-underscores
@@ -83,9 +84,9 @@ in the Mozilla clients.")
"nss-" version ".tar.gz")))
(sha256
(base32
- "0y4jb9095f7bbgw7d7kvzm4c3g4p5i6y68fwhb8wlkpb7b1imj5w"))
+ "10n3pncg6k81ikjz12la147rppwqn57bkrdl9gb820w6pq0nra2m"))
;; Create nss.pc and nss-config.
- (patches (search-patches "nss-pkgconfig.patch"
+ (patches (search-patches "nss-3.56-pkgconfig.patch"
"nss-increase-test-timeout.patch"))
(modules '((guix build utils)))
(snippet
@@ -138,38 +139,29 @@ in the Mozilla clients.")
;; leading to test failures:
;; <https://bugzilla.mozilla.org/show_bug.cgi?id=609734>. To
;; work around that, set the time to roughly the release date.
- (invoke "faketime" "2020-02-01" "./nss/tests/all.sh")))
- (replace 'install
- (lambda* (#:key outputs #:allow-other-keys)
- (let* ((out (assoc-ref outputs "out"))
- (bin (string-append (assoc-ref outputs "bin") "/bin"))
- (inc (string-append out "/include/nss"))
- (lib (string-append out "/lib/nss"))
- (obj (match (scandir "dist" (cut string-suffix? "OBJ" <>))
- ((obj) (string-append "dist/" obj)))))
- ;; Install nss-config to $out/bin.
- (install-file (string-append obj "/bin/nss-config")
- (string-append out "/bin"))
- (delete-file (string-append obj "/bin/nss-config"))
- ;; Install nss.pc to $out/lib/pkgconfig.
- (install-file (string-append obj "/lib/pkgconfig/nss.pc")
- (string-append out "/lib/pkgconfig"))
- (delete-file (string-append obj "/lib/pkgconfig/nss.pc"))
- (rmdir (string-append obj "/lib/pkgconfig"))
- ;; Install other files.
- (copy-recursively "dist/public/nss" inc)
- (copy-recursively (string-append obj "/bin") bin)
- (copy-recursively (string-append obj "/lib") lib)
-
- ;; FIXME: libgtest1.so is installed in the above step, and it's
- ;; (unnecessarily) linked with several NSS libraries, but
- ;; without the needed rpaths, causing the 'validate-runpath'
- ;; phase to fail. Here we simply delete libgtest1.so, since it
- ;; seems to be used only during the tests.
- (delete-file (string-append lib "/libgtest1.so"))
- (delete-file (string-append lib "/libgtestutil.so"))
-
- #t))))))
+ (invoke "faketime" "2020-10-01" "./nss/tests/all.sh")))
+ (replace 'install
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (bin (string-append (assoc-ref outputs "bin") "/bin"))
+ (inc (string-append out "/include/nss"))
+ (lib (string-append out "/lib/nss"))
+ (obj (match (scandir "dist" (cut string-suffix? "OBJ" <>))
+ ((obj) (string-append "dist/" obj)))))
+ ;; Install nss-config to $out/bin.
+ (install-file (string-append obj "/bin/nss-config")
+ (string-append out "/bin"))
+ (delete-file (string-append obj "/bin/nss-config"))
+ ;; Install nss.pc to $out/lib/pkgconfig.
+ (install-file (string-append obj "/lib/pkgconfig/nss.pc")
+ (string-append out "/lib/pkgconfig"))
+ (delete-file (string-append obj "/lib/pkgconfig/nss.pc"))
+ (rmdir (string-append obj "/lib/pkgconfig"))
+ ;; Install other files.
+ (copy-recursively "dist/public/nss" inc)
+ (copy-recursively (string-append obj "/bin") bin)
+ (copy-recursively (string-append obj "/lib") lib)
+ #t))))))
(inputs
`(("sqlite" ,sqlite)
("zlib" ,zlib)))
diff --git a/gnu/packages/ntp.scm b/gnu/packages/ntp.scm
index 5fa7d55845..95d784c62a 100644
--- a/gnu/packages/ntp.scm
+++ b/gnu/packages/ntp.scm
@@ -43,14 +43,14 @@
(define-public chrony
(package
(name "chrony")
- (version "3.5.1")
+ (version "4.0")
(source
(origin
(method url-fetch)
(uri (string-append "https://download.tuxfamily.org/chrony/"
"chrony-" version ".tar.gz"))
(sha256
- (base32 "19ywl8a3lb2id7lcna5hp2g4pjnfwdc9ihr0fk6i9m45vdq2za0v"))))
+ (base32 "09f6w2x5h5kamb4rhcbaz911q1f730qdalgsn8s48yjyqlafl9xy"))))
(build-system gnu-build-system)
(arguments
`(#:modules ((srfi srfi-26)
@@ -80,7 +80,8 @@
(native-inputs
`(("pkg-config" ,pkg-config)))
(inputs
- `(("libcap" ,libcap/next)
+ `(("gnutls" ,gnutls)
+ ("libcap" ,libcap)
("libseccomp" ,libseccomp)
("nettle" ,nettle)))
(home-page "https://chrony.tuxfamily.org/")
@@ -143,7 +144,7 @@ time-stamping or reference clock, sub-microsecond accuracy is possible.")
;; to run as non-root (when invoked with '-u'.)
,@(if (string-suffix? "-linux"
(or (%current-target-system) (%current-system)))
- `(("libcap" ,libcap/next))
+ `(("libcap" ,libcap))
'())))
(arguments
`(#:phases
diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index 33c3fa0494..4cc530509a 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -329,7 +329,7 @@ Software distribution.")
(define-public ocaml-mccs
(package
(name "ocaml-mccs")
- (version "1.1+9")
+ (version "1.1+11")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -338,7 +338,7 @@ Software distribution.")
(file-name (git-file-name name version))
(sha256
(base32
- "1i0hhkrqi7rqlainlg5pc4hibbx6b5dp3x99gmav8c3sbfvlk9mc"))))
+ "1gsad5cj03256i36wdjqk5pg51pyd48rpjazf0gfaakrn8lk438g"))))
(build-system dune-build-system)
(propagated-inputs `(("ocaml-cudf" ,ocaml-cudf)))
(home-page "https://www.i3s.unice.fr/~cpjm/misc/")
@@ -429,14 +429,14 @@ repository-wide uninstallability checks.")
(home-page "https://opam.ocaml.org")
(synopsis "Parser and printer for the opam file syntax")
(description "This package contains a parser and a pretty-printer for
-the opam file fomat.")
+the opam file format.")
;; With static-linking exception
(license license:lgpl2.1+)))
(define-public opam
(package
(name "opam")
- (version "2.0.6")
+ (version "2.0.7")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -445,7 +445,7 @@ the opam file fomat.")
(file-name (git-file-name name version))
(sha256
(base32
- "1vyga2jllsfsikppxyzljm4isfnnnl8k0rb44h8xaddjzdg1d4m8"))))
+ "1p719ccn9wnzk6impsnwr809yh507h8f37dx9nn64b1hsyb5z8ax"))))
(build-system ocaml-build-system)
(arguments
`(#:configure-flags
@@ -541,7 +541,7 @@ Git-friendly development workflow.")
(define-public camlp5
(package
(name "camlp5")
- (version "7.12")
+ (version "7.13")
(source
(origin
(method git-fetch)
@@ -550,7 +550,7 @@ Git-friendly development workflow.")
(commit (string-append "rel" (string-delete #\. version)))))
(file-name (git-file-name name version))
(sha256
- (base32 "12ix5g15bys932hyf9gs637iz76m0ji9075d83jfdmx85q30llgf"))))
+ (base32 "1d9spy3f5ahixm8nxxk086kpslzva669a5scn49am0s7vx4i71kp"))))
(build-system gnu-build-system)
(inputs
`(("ocaml" ,ocaml)))
@@ -861,12 +861,13 @@ libpanel, librsvg and quartz.")
(file-name (git-file-name name version))
(sha256
(base32
- "1bykiyc0dc5pkw8x370qkg2kygq9pq7yqzsgczd3y13b6ivm4sdq"))))
+ "1bykiyc0dc5pkw8x370qkg2kygq9pq7yqzsgczd3y13b6ivm4sdq"))
+ (patches (search-patches "unison-fix-ocaml-4.08.patch"))))
(build-system gnu-build-system)
(outputs '("out"
"doc")) ; 1.9 MiB of documentation
(native-inputs
- `(("ocaml" ,ocaml-4.07)
+ `(("ocaml" ,ocaml-4.09)
;; For documentation
("ghostscript" ,ghostscript)
("texlive" ,texlive-tiny)
@@ -1212,8 +1213,7 @@ instances and printing them.")
"0gddzan4vzs0vklsxhirdjrvx3rp7hhh2yr20vi13nq8rwkn9w29"))))
(build-system dune-build-system)
(arguments
- `(#:jbuild? #t
- #:test-target "tests"))
+ `(#:test-target "tests"))
(propagated-inputs
`(("ounit" ,ocaml-ounit)
("qcheck" ,ocaml-qcheck)))
@@ -1253,10 +1253,10 @@ full_split, cut, rcut, etc..")
;; where it says `mit'.
(license license:expat)))
-(define-public dune
+(define dune-bootstrap
(package
(name "dune")
- (version "1.11.3")
+ (version "2.7.1")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -1265,17 +1265,19 @@ full_split, cut, rcut, etc..")
(file-name (git-file-name name version))
(sha256
(base32
- "0l4x0x2fz135pljv88zj8y6w1ninsqw0gn1mdxzprd6wbxbyn8wr"))))
+ "10qgx83fq8b522y9mpllrp0l5cgmr2bs5s7aix5img21hlbm34in"))))
(build-system ocaml-build-system)
(arguments
`(#:tests? #f; require odoc
- #:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out"))
+ #:make-flags (list "release"
+ (string-append "PREFIX=" (assoc-ref %outputs "out"))
(string-append "LIBDIR=" (assoc-ref %outputs "out")
"/lib/ocaml/site-lib"))
#:phases
(modify-phases %standard-phases
(replace 'configure
(lambda* (#:key outputs #:allow-other-keys)
+ (mkdir-p "src/dune")
(invoke "./configure")
#t)))))
(home-page "https://github.com/ocaml/dune")
@@ -1285,13 +1287,87 @@ release of Jane Street packages. It reads metadata from @file{dune} files
following a very simple s-expression syntax.")
(license license:expat)))
+(define-public dune-configurator
+ (package
+ (inherit dune-bootstrap)
+ (name "dune-configurator")
+ (build-system dune-build-system)
+ (arguments
+ `(#:package "dune-configurator"
+ #:dune ,dune-bootstrap
+ ; require ppx_expect
+ #:tests? #f))
+ (propagated-inputs
+ `(("ocaml-csexp" ,ocaml-csexp)))
+ (synopsis "")
+ (description "")))
+
+(define-public dune
+ (package
+ (inherit dune-bootstrap)
+ (propagated-inputs
+ `(("dune-configurator" ,dune-configurator)))
+ (properties `((ocaml4.07-variant . ,(delay ocaml4.07-dune))))))
+
(define-public ocaml4.07-dune
- (package-with-ocaml4.07 dune))
+ (package
+ (inherit (package-with-ocaml4.07 dune-bootstrap))
+ (version "1.11.3")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/ocaml/dune")
+ (commit version)))
+ (file-name (git-file-name "dune" version))
+ (sha256
+ (base32
+ "0l4x0x2fz135pljv88zj8y6w1ninsqw0gn1mdxzprd6wbxbyn8wr"))))))
+
+(define-public ocaml-csexp
+ (package
+ (name "ocaml-csexp")
+ (version "1.3.2")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/ocaml-dune/csexp")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "190zppgvdjgghmrnx67ayzzk86qdjy3yn5fcrcw08wsh93384pl0"))))
+ (build-system dune-build-system)
+ (arguments
+ `(#:tests? #f; FIXME: needs ppx_expect, but which version?
+ #:dune ,dune-bootstrap
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'build 'chmod
+ (lambda _
+ (for-each (lambda (file) (chmod file #o644)) (find-files "." ".*"))
+ #t)))))
+ (propagated-inputs
+ `(("ocaml-result" ,ocaml-result)))
+ (home-page "https://github.com/ocaml-dune/csexp")
+ (synopsis "Parsing and printing of S-expressions in Canonical form")
+ (description "This library provides minimal support for Canonical
+S-expressions. Canonical S-expressions are a binary encoding of
+S-expressions that is super simple and well suited for communication
+between programs.
+
+This library only provides a few helpers for simple applications. If
+you need more advanced support, such as parsing from more fancy input
+sources, you should consider copying the code of this library given
+how simple parsing S-expressions in canonical form is.
+
+To avoid a dependency on a particular S-expression library, the only
+module of this library is parameterised by the type of S-expressions.")
+ (license license:expat)))
(define-public ocaml-migrate-parsetree
(package
(name "ocaml-migrate-parsetree")
- (version "1.4.0")
+ (version "1.7.3")
(home-page "https://github.com/ocaml-ppx/ocaml-migrate-parsetree")
(source
(origin
@@ -1302,7 +1378,7 @@ following a very simple s-expression syntax.")
(file-name (git-file-name name version))
(sha256
(base32
- "0sv1p4615l8gpbah4ya2c40yr6fbvahvv3ks7zhrsgcwcq2ljyr2"))))
+ "0336vz0galjnsazbmkxjwdv1qvdqsx2rgrvp778xgq2fzasz45cx"))))
(build-system dune-build-system)
(arguments
`(#:tests? #f))
@@ -1320,7 +1396,7 @@ functions to the next and/or previous version.")
(define-public ocaml-ppx-tools-versioned
(package
(name "ocaml-ppx-tools-versioned")
- (version "5.2.3")
+ (version "5.4.0")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -1329,7 +1405,7 @@ functions to the next and/or previous version.")
(file-name (git-file-name name version))
(sha256
(base32
- "1hcmpnw26zf70a71r3d2c2c0mn8q084gdn1r36ynng6fv9hq6j0y"))))
+ "07lnj4yzwvwyh5fhpp1dxrys4ddih15jhgqjn59pmgxinbnddi66"))))
(build-system dune-build-system)
(arguments
`(#:test-target "."))
@@ -1362,8 +1438,14 @@ ocaml-migrate-parsetree")
(propagated-inputs
`(("ocaml-ppx-tools-versioned" ,ocaml-ppx-tools-versioned)))
(arguments
- `(#:tests? #f; Tests fail to build
- #:jbuild? #t))
+ `(#:package "bitstring"
+ #:tests? #f; Tests fail to build
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'build 'upgrade
+ (lambda _
+ (invoke "dune" "upgrade")
+ #t)))))
(home-page "https://github.com/xguerin/bitstring")
(synopsis "Bitstrings and bitstring matching for OCaml")
(description "Adds Erlang-style bitstrings and matching over bitstrings as
@@ -1376,7 +1458,7 @@ powerful.")
(define-public ocaml-result
(package
(name "ocaml-result")
- (version "1.4")
+ (version "1.5")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -1385,10 +1467,11 @@ powerful.")
(file-name (git-file-name name version))
(sha256
(base32
- "0hir97k9i72nfkm6kncxnqpyk400wlsxysbldgcvk0fd9pjnsc3p"))))
+ "166laj8qk7466sdl037c6cjs4ac571hglw4l5qpyll6df07h6a7q"))))
(build-system dune-build-system)
(arguments
- `(#:test-target "."))
+ `(#:test-target "."
+ #:dune ,dune-bootstrap))
(home-page "https://github.com/janestreet/result")
(synopsis "Compatibility Result module")
(description "Uses the new result type defined in OCaml >= 4.03 while
@@ -1475,7 +1558,8 @@ library.")
(build-system dune-build-system)
(arguments
`(#:ocaml ,ocaml-4.07
- #:findlib ,ocaml4.07-findlib))
+ #:findlib ,ocaml4.07-findlib
+ #:dune ,ocaml4.07-dune))
(native-inputs
`(("ocaml-base" ,ocaml4.07-base)
("ocaml-stdio" ,ocaml4.07-stdio)
@@ -1593,23 +1677,23 @@ most of the POSIX and GNU conventions.")
(define-public ocaml-fmt
(package
(name "ocaml-fmt")
- (version "0.8.5")
+ (version "0.8.9")
(source
(origin
(method url-fetch)
(uri (string-append "http://erratique.ch/software/fmt/releases/fmt-"
version ".tbz"))
(sha256 (base32
- "1zj9azcxcn6skmb69ykgmi9z8c50yskwg03wqgh87lypgjdcz060"))))
+ "0gkkkj4x678vxdda4xaw2dd44qjacavsvn5nx8gydfwah6pjbkxk"))))
(build-system ocaml-build-system)
(native-inputs
`(("ocamlbuild" ,ocamlbuild)
("opam" ,opam)
("topkg" ,ocaml-topkg)))
(propagated-inputs
- `(("result" ,ocaml-result)
- ("ocaml-uchar" ,ocaml-uchar)
- ("cmdliner" ,ocaml-cmdliner)))
+ `(("cmdliner" ,ocaml-cmdliner)
+ ("ocaml-stdlib-shims" ,ocaml-stdlib-shims)
+ ("ocaml-uchar" ,ocaml-uchar)))
(arguments `(#:tests? #f
#:build-flags (list "build" "--with-base-unix" "true"
"--with-cmdliner" "true")
@@ -1658,14 +1742,14 @@ immutability.")
(define-public ocaml-alcotest
(package
(name "ocaml-alcotest")
- (version "0.8.5")
+ (version "1.0.0")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/mirage/alcotest/releases/"
"download/" version "/alcotest-" version ".tbz"))
(sha256
(base32
- "0szwjxvaahgynsx0apj81jxj3ki6yz4is9mh2wkcbx66qy7n6fvb"))))
+ "1a43ilhwnj58pq3bi78ni46l9wh6klmmgfc93i94mvyx48bzzayx"))))
(build-system dune-build-system)
(arguments
`(#:package "alcotest"
@@ -1676,8 +1760,10 @@ immutability.")
`(("ocaml-astring" ,ocaml-astring)
("ocaml-cmdliner" ,ocaml-cmdliner)
("ocaml-fmt" ,ocaml-fmt)
- ("ocaml-result" ,ocaml-result)
- ("ocaml-uuidm" ,ocaml-uuidm)))
+ ("ocaml-re" ,ocaml-re)
+ ("ocaml-stdlib-shims" ,ocaml-stdlib-shims)
+ ("ocaml-uuidm" ,ocaml-uuidm)
+ ("ocaml-uutf" ,ocaml-uutf)))
(home-page "https://github.com/mirage/alcotest")
(synopsis "Lightweight OCaml test framework")
(description "Alcotest exposes simple interface to perform unit tests. It
@@ -1865,8 +1951,7 @@ locks or other synchronization primitives.")
"1n12i1rmn9cjn6p8yr6qn5dwbrwvym7ckr7bla04a1xnq8qlcyj7"))))
(build-system dune-build-system)
(arguments
- `(#:tests? #f; require lwt_ppx
- #:jbuild? #t))
+ `(#:tests? #f)); require lwt_ppx
(propagated-inputs
`(("lwt" ,ocaml-lwt)))
(properties `((upstream-name . "lwt_log")))
@@ -1879,14 +1964,14 @@ ocaml lwt.")
(define-public ocaml-logs
(package
(name "ocaml-logs")
- (version "0.6.2")
+ (version "0.7.0")
(source (origin
(method url-fetch)
(uri (string-append "http://erratique.ch/software/logs/releases/"
"logs-" version ".tbz"))
(sha256
(base32
- "1khbn7jqpid83zn8rvyh1x1sirls7zc878zj4fz985m5xlsfy853"))))
+ "1jnmd675wmsmdwyb5mx5b0ac66g4c6gpv5s4mrx2j6pb0wla1x46"))))
(build-system ocaml-build-system)
(arguments
`(#:tests? #f
@@ -2025,7 +2110,8 @@ representation of the data.")
`(#:tests? #f; no tests
#:package "gen"
#:ocaml ,ocaml-4.07
- #:findlib ,ocaml4.07-findlib))
+ #:findlib ,ocaml4.07-findlib
+ #:dune ,ocaml4.07-dune))
(propagated-inputs
`(("ocaml-odoc" ,ocaml4.07-odoc)))
(native-inputs
@@ -2070,7 +2156,8 @@ and consumable.")
(for-each (lambda (file) (chmod file #o644)) (find-files "." ".*"))
#t)))
#:ocaml ,ocaml-4.07
- #:findlib ,ocaml4.07-findlib))
+ #:findlib ,ocaml4.07-findlib
+ #:dune ,ocaml4.07-dune))
(native-inputs
`(("ocamlbuild" ,(package-with-ocaml4.07 ocamlbuild))))
(propagated-inputs
@@ -2233,7 +2320,7 @@ multitude of other network protocols (FTP/SMTP/RTSP/etc).")
(define-public ocaml-base64
(package
(name "ocaml-base64")
- (version "3.2.0")
+ (version "3.4.0")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -2242,8 +2329,19 @@ multitude of other network protocols (FTP/SMTP/RTSP/etc).")
(file-name (git-file-name name version))
(sha256
(base32
- "1ilw3zj0w6cq7i4pvr8m2kv5l5f2y9aldmv72drlwwns013b1gwy"))))
+ "0aa1m1sr8p1hgc10p96mij7p22r3qcysvzy6fz2jqamfgswchgqc"))))
(build-system dune-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-before 'build 'fix-dune
+ (lambda _
+ ;; This package expects dune 2, which unbundled its configurator
+ ;; module. We still use dune 1, so we need to let it know we need
+ ;; its internal module.
+ (substitute* "config/dune"
+ (("dune-configurator") "dune.configurator"))
+ #t)))))
(native-inputs
`(("ocaml-alcotest" ,ocaml-alcotest)
("ocaml-bos" ,ocaml-bos)
@@ -2577,9 +2675,9 @@ from the oasis build log
(home-page "https://github.com/mjambon/cppo")
(synopsis "Equivalent of the C preprocessor for OCaml programs")
(description "Cppo is an equivalent of the C preprocessor for OCaml
-programs. It allows the definition of simple macros and file inclusion. Cpp ois:
+programs. It allows the definition of simple macros and file inclusion. Cppo is:
@enumerate
-@item more OCaml-friendly than cpp
+@item more OCaml-friendly than @command{cpp}
@item easy to learn without consulting a manual
@item reasonably fast
@item simple to install and to maintain.
@@ -2751,7 +2849,8 @@ writing to these structures, and they are accessed via the Bigarray module.")
`(#:package "ezjsonm"
#:test-target "."
#:ocaml ,ocaml-4.07
- #:findlib ,ocaml4.07-findlib))
+ #:findlib ,ocaml4.07-findlib
+ #:dune ,ocaml4.07-dune))
(native-inputs
`(("ocaml-alcotest" ,(package-with-ocaml4.07 ocaml-alcotest))))
(propagated-inputs
@@ -2789,7 +2888,8 @@ JSON.")
(substitute* "lib/uri.ml"
(("Re.get") "Re.Group.get")))))
#:ocaml ,ocaml-4.07
- #:findlib ,ocaml4.07-findlib))
+ #:findlib ,ocaml4.07-findlib
+ #:dune ,ocaml4.07-dune))
(native-inputs
`(("ocaml-ounit" ,(package-with-ocaml4.07 ocaml-ounit))
("ocaml-ppx-sexp-conv" ,ocaml4.07-ppx-sexp-conv)))
@@ -2817,7 +2917,7 @@ JSON.")
"1fc95q2ypck6m6rv3kiawwilh5ac93v2hcp823mj608d5kj79xkb"))))
(build-system dune-build-system)
(arguments
- `(#:jbuild? #t
+ `(#:package "easy-format"
#:phases
(modify-phases %standard-phases
(add-before 'build 'make-writable
@@ -3117,7 +3217,8 @@ library is currently designed for Unicode Standard 3.2.")
(build-system dune-build-system)
(arguments
`(#:ocaml ,ocaml-4.07
- #:findlib ,ocaml4.07-findlib))
+ #:findlib ,ocaml4.07-findlib
+ #:dune ,ocaml4.07-dune))
(propagated-inputs
`(("ocaml-result" ,(package-with-ocaml4.07 ocaml-result))
("ocaml-camomile" ,(package-with-ocaml4.07 ocaml-camomile))))
@@ -3146,10 +3247,10 @@ function that follows the prototype of POSIX's wcwidth.")
(base32 "0pa9awinqr0plp4b2az78dwpvh01pwaljnn5ydg8mc6hi7rmir55"))))
(build-system dune-build-system)
(arguments
- `(#:jbuild? #t
- #:test-target "."
+ `(#:test-target "."
#:ocaml ,ocaml-4.07
- #:findlib ,ocaml4.07-findlib))
+ #:findlib ,ocaml4.07-findlib
+ #:dune ,ocaml4.07-dune))
(propagated-inputs
`(("ocaml-camomile" ,(package-with-ocaml4.07 ocaml-camomile))
("ocaml-charinfo-width" ,ocaml4.07-charinfo-width)
@@ -3179,7 +3280,8 @@ connect an engine to your inputs and rendering functions to get an editor.")
`(#:build-flags (list "--profile" "release")
#:tests? #f
#:ocaml ,ocaml-4.07
- #:findlib ,ocaml4.07-findlib))
+ #:findlib ,ocaml4.07-findlib
+ #:dune ,ocaml4.07-dune))
(propagated-inputs
`(("ocaml-lwt" ,(package-with-ocaml4.07 ocaml-lwt))
("ocaml-lwt-log" ,(package-with-ocaml4.07 ocaml-lwt-log))
@@ -3212,10 +3314,10 @@ instead of bindings to a C library.")
(base32 "1bl4943qpi3qy152dbdm5glhx19zsiylmn4rcxi8l66g58hikyjp"))))
(build-system dune-build-system)
(arguments
- `(#:jbuild? #t
- #:test-target "."
+ `(#:test-target "."
#:ocaml ,ocaml-4.07
- #:findlib ,ocaml4.07-findlib))
+ #:findlib ,ocaml4.07-findlib
+ #:dune ,ocaml4.07-dune))
(native-inputs
`(("cppo" ,(package-with-ocaml4.07 ocaml-cppo))))
(propagated-inputs
@@ -3517,12 +3619,13 @@ syntax checking on dedukti files.")
;see home page README for further information
`(#:tests? #f
#:ocaml ,ocaml-4.07
- #:findlib ,ocaml4.07-findlib))
+ #:findlib ,ocaml4.07-findlib
+ #:dune ,ocaml4.07-dune))
(inputs
`(("ocaml-base" ,ocaml4.07-base)
("ocaml-migrate-parsetree"
,(package-with-ocaml4.07 ocaml-migrate-parsetree))
- ("ocaml-compiler-libs" ,(package-with-ocaml4.07 ocaml-compiler-libs))
+ ("ocaml-compiler-libs" ,ocaml4.07-compiler-libs)
("ocaml-sexplib0" ,ocaml4.07-sexplib0)
("ocaml-stdio" ,ocaml4.07-stdio)
("ocaml-ppxlib" ,ocaml4.07-ppxlib)))
@@ -3590,7 +3693,8 @@ or quantified formulas.")
(arguments
`(#:test-target "."
#:ocaml ,ocaml-4.07
- #:findlib ,ocaml4.07-findlib))
+ #:findlib ,ocaml4.07-findlib
+ #:dune ,ocaml4.07-dune))
(synopsis "Parsing library based on Earley Algorithm")
(description "Earley is a parser combinator library base on Earley's
algorithm. It is intended to be used in conjunction with an OCaml syntax
@@ -3727,6 +3831,13 @@ serializers and deserializers from type definitions.")
(base32
"197xjp4vmzdymf2ndinw271ihpf45h04mx8gqj8ypspxdr5fj1a5"))))
(build-system dune-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-before 'build 'upgrade
+ (lambda _
+ (invoke "dune" "upgrade")
+ #t)))))
(inputs
`(("ocaml-fmt" ,ocaml-fmt)
("ocaml-astring" ,ocaml-astring)
@@ -3763,10 +3874,11 @@ format}. @code{craml} is released as a single binary (called @code{craml}).")
(native-inputs
`(("ocaml-findlib" ,ocaml-findlib)))
(arguments
- `(#:jbuild? #t
+ `(#:package "merlin"
#:tests? #f ;; Errors in tests in version 3.2.2
#:ocaml ,ocaml-4.07
- #:findlib ,ocaml4.07-findlib))
+ #:findlib ,ocaml4.07-findlib
+ #:dune ,ocaml4.07-dune))
(synopsis "Context sensitive completion for OCaml in Vim and Emacs")
(description "Merlin is an editor service that provides modern IDE
features for OCaml. Emacs and Vim support is provided out-of-the-box.
@@ -3912,7 +4024,8 @@ exclusion algorithms are typical examples of such systems.")
(arguments
`(#:tests? #f ;no tests
#:ocaml ,ocaml-4.07
- #:findlib ,ocaml4.07-findlib))
+ #:findlib ,ocaml4.07-findlib
+ #:dune ,ocaml4.07-dune))
(synopsis "Library containing the definition of S-expressions and some
base converters")
(description "Part of Jane Street's Core library The Core suite of
@@ -3938,7 +4051,8 @@ that was developed by Jane Street, the largest industrial user of OCaml.")
(build-system dune-build-system)
(arguments
`(#:ocaml ,ocaml-4.07
- #:findlib ,ocaml4.07-findlib))
+ #:findlib ,ocaml4.07-findlib
+ #:dune ,ocaml4.07-dune))
(inputs
`(("ocaml-sexplib0" ,ocaml4.07-sexplib0)))
(synopsis "S-expression parsing library")
@@ -3987,7 +4101,8 @@ parsexp_io.")
(build-system dune-build-system)
(arguments
`(#:ocaml ,ocaml-4.07
- #:findlib ,ocaml4.07-findlib))
+ #:findlib ,ocaml4.07-findlib
+ #:dune ,ocaml4.07-dune))
(propagated-inputs
`(("ocaml-num" ,(package-with-ocaml4.07 ocaml-num))
("ocaml-parsexp" ,ocaml4.07-parsexp)
@@ -4025,7 +4140,8 @@ functionality for parsing and pretty-printing s-expressions.")
(lambda _
(invoke "dune" "build" "@install" "--profile=release"))))
#:ocaml ,ocaml-4.07
- #:findlib ,ocaml4.07-findlib))
+ #:findlib ,ocaml4.07-findlib
+ #:dune ,ocaml4.07-dune))
(synopsis
"Full standard library replacement for OCaml")
(description
@@ -4040,9 +4156,9 @@ provided by companion libraries such as
@url{https://github.com/janestreet/stdio, ocaml-stdio}.")
(license license:expat)))
-(define-public ocaml-compiler-libs
+(define-public ocaml4.07-compiler-libs
(package
- (name "ocaml-compiler-libs")
+ (name "ocaml4.07-compiler-libs")
(version "0.11.0")
(home-page "https://github.com/janestreet/ocaml-compiler-libs")
(source
@@ -4057,7 +4173,10 @@ provided by companion libraries such as
"03jds7bszh8wwpfwxb3dg0gyr1j1872wxwx1xqhry5ir0i84bg0s"))))
(build-system dune-build-system)
(arguments
- '(#:tests? #f)) ;no tests
+ `(#:tests? #f ;no tests
+ #:ocaml ,ocaml-4.07
+ #:findlib ,ocaml4.07-findlib
+ #:dune ,ocaml4.07-dune))
(properties `((upstream-name . "ocaml-compiler-libs")))
(synopsis "Compiler libraries repackaged")
(description "This package simply repackages the OCaml compiler libraries
@@ -4087,7 +4206,8 @@ is now @code{Ocaml_common.Ast_helper}.")
(arguments
`(#:tests? #f ;no tests
#:ocaml ,ocaml-4.07
- #:findlib ,ocaml4.07-findlib))
+ #:findlib ,ocaml4.07-findlib
+ #:dune ,ocaml4.07-dune))
(synopsis "Standard IO library for OCaml")
(description
"Stdio implements simple input/output functionalities for OCaml. It
@@ -4140,7 +4260,7 @@ as part of the same ocaml-migrate-parsetree driver.")
(build-system dune-build-system)
(propagated-inputs
`(("ocaml-base" ,ocaml4.07-base)
- ("ocaml-compiler-libs" ,(package-with-ocaml4.07 ocaml-compiler-libs))
+ ("ocaml-compiler-libs" ,ocaml4.07-compiler-libs)
("ocaml-migrate-parsetree"
,(package-with-ocaml4.07 ocaml-migrate-parsetree))
("ocaml-ppx-derivers" ,(package-with-ocaml4.07 ocaml-ppx-derivers))
@@ -4168,7 +4288,8 @@ as part of the same ocaml-migrate-parsetree driver.")
all))))
#t)))
#:ocaml ,ocaml-4.07
- #:findlib ,ocaml4.07-findlib))
+ #:findlib ,ocaml4.07-findlib
+ #:dune ,ocaml4.07-dune))
(synopsis
"Base library and tools for ppx rewriters")
(description
@@ -4207,7 +4328,8 @@ OCaml AST in the OCaml syntax;
("ocaml-ppxlib" ,ocaml4.07-ppxlib)))
(arguments
`(#:ocaml ,ocaml-4.07
- #:findlib ,ocaml4.07-findlib))
+ #:findlib ,ocaml4.07-findlib
+ #:dune ,ocaml4.07-dune))
(properties `((upstream-name . "ppx_compare")))
(home-page "https://github.com/janestreet/ppx_compare")
(synopsis "Generation of comparison functions from types")
@@ -4236,7 +4358,8 @@ by making sure that you only compare comparable values.")
;; No tests
`(#:tests? #f
#:ocaml ,ocaml-4.07
- #:findlib ,ocaml4.07-findlib))
+ #:findlib ,ocaml4.07-findlib
+ #:dune ,ocaml4.07-dune))
(propagated-inputs
`(("ocaml-base" ,ocaml4.07-base)
("ocaml-migrate-parsetree"
@@ -4267,7 +4390,8 @@ of a record and create new record values.")
;; No tests
`(#:tests? #f
#:ocaml ,ocaml-4.07
- #:findlib ,ocaml4.07-findlib))
+ #:findlib ,ocaml4.07-findlib
+ #:dune ,ocaml4.07-dune))
(propagated-inputs
`(("ocaml-base" ,ocaml4.07-base)
("ocaml-migrate-parsetree"
@@ -4301,7 +4425,8 @@ standard library.")
("ocaml-ppxlib" ,ocaml4.07-ppxlib)))
(arguments
`(#:ocaml ,ocaml-4.07
- #:findlib ,ocaml4.07-findlib))
+ #:findlib ,ocaml4.07-findlib
+ #:dune ,ocaml4.07-dune))
(properties `((upstream-name . "ppx_fields_conv")))
(home-page "https://github.com/janestreet/ppx_fields_conv")
(synopsis "Generation of accessor and iteration functions for ocaml records")
@@ -4332,7 +4457,8 @@ new record values.")
("ocaml-ppxlib" ,ocaml4.07-ppxlib)))
(arguments
`(#:ocaml ,ocaml-4.07
- #:findlib ,ocaml4.07-findlib))
+ #:findlib ,ocaml4.07-findlib
+ #:dune ,ocaml4.07-dune))
(properties `((upstream-name . "ppx_sexp_conv")))
(home-page "https://github.com/janestreet/ppx_sexp_conv")
(synopsis "Generation of S-expression conversion functions from type definitions")
@@ -4362,14 +4488,15 @@ definitions.")
("ocaml-ppxlib" ,ocaml4.07-ppxlib)))
(arguments
`(#:ocaml ,ocaml-4.07
- #:findlib ,ocaml4.07-findlib))
+ #:findlib ,ocaml4.07-findlib
+ #:dune ,ocaml4.07-dune))
(properties
`((upstream-name . "ppx_variants_conv")))
(home-page
"https://github.com/janestreet/ppx_variants_conv")
(synopsis "Generation of accessor and iteration functions for OCaml variant types")
(description
- "This package generates accessors and interation functions for OCaml
+ "This package generates accessors and iteration functions for OCaml
variant types.")
(license license:asl2.0)))
@@ -4394,7 +4521,8 @@ variant types.")
("ocaml-ppxlib" ,ocaml4.07-ppxlib)))
(arguments
`(#:ocaml ,ocaml-4.07
- #:findlib ,ocaml4.07-findlib))
+ #:findlib ,ocaml4.07-findlib
+ #:dune ,ocaml4.07-dune))
(properties `((upstream-name . "ppx_custom_printf")))
(home-page "https://github.com/janestreet/ppx_custom_printf")
(synopsis "Printf-style format-strings for user-defined string conversion")
@@ -4426,7 +4554,8 @@ string conversion.")
,(package-with-ocaml4.07 ocaml-migrate-parsetree))))
(arguments
`(#:ocaml ,ocaml-4.07
- #:findlib ,ocaml4.07-findlib))
+ #:findlib ,ocaml4.07-findlib
+ #:dune ,ocaml4.07-dune))
(properties `((upstream-name . "bin_prot")))
(home-page "https://github.com/janestreet/bin_prot")
(synopsis "Binary protocol generator")
@@ -4492,7 +4621,8 @@ storage of large amounts of data.")
("ocaml-ppxlib" ,ocaml4.07-ppxlib)))
(arguments
`(#:ocaml ,ocaml-4.07
- #:findlib ,ocaml4.07-findlib))
+ #:findlib ,ocaml4.07-findlib
+ #:dune ,ocaml4.07-dune))
(properties `((upstream-name . "ppx_hash")))
(home-page "https://github.com/janestreet/ppx_hash")
(synopsis "Generation of hash functions from type expressions and definitions")
@@ -4517,7 +4647,8 @@ hash functions from type exrpessions and definitions.")
(arguments
`(#:tests? #f; no test suite
#:ocaml ,ocaml-4.07
- #:findlib ,ocaml4.07-findlib))
+ #:findlib ,ocaml4.07-findlib
+ #:dune ,ocaml4.07-dune))
(propagated-inputs
`(("ocaml-base" ,ocaml4.07-base)
("ocaml-migrate-parsetree"
@@ -4548,7 +4679,8 @@ many values).")
;; No tests
`(#:tests? #f
#:ocaml ,ocaml-4.07
- #:findlib ,ocaml4.07-findlib))
+ #:findlib ,ocaml4.07-findlib
+ #:dune ,ocaml4.07-dune))
(propagated-inputs
`(("ocaml-ppx-inline-test" ,ocaml4.07-ppx-inline-test)
("ocaml-migrate-parsetree"
@@ -4577,7 +4709,8 @@ many values).")
;; broken tests
`(#:tests? #f
#:ocaml ,ocaml-4.07
- #:findlib ,ocaml4.07-findlib))
+ #:findlib ,ocaml4.07-findlib
+ #:dune ,ocaml4.07-dune))
(propagated-inputs
`(("ocaml-base" ,ocaml4.07-base)
("ocaml-migrate-parsetree"
@@ -4606,7 +4739,8 @@ many values).")
(arguments
`(#:tests? #f
#:ocaml ,ocaml-4.07
- #:findlib ,ocaml4.07-findlib))
+ #:findlib ,ocaml4.07-findlib
+ #:dune ,ocaml4.07-dune))
(propagated-inputs `(("ocaml-base" ,ocaml4.07-base)))
(home-page "https://github.com/janestreet/typerep")
(synopsis "Typerep is a library for runtime types")
@@ -4628,7 +4762,8 @@ many values).")
(build-system dune-build-system)
(arguments
`(#:ocaml ,ocaml-4.07
- #:findlib ,ocaml4.07-findlib))
+ #:findlib ,ocaml4.07-findlib
+ #:dune ,ocaml4.07-dune))
(propagated-inputs
`(("ocaml-base" ,ocaml4.07-base)
("ocaml-ppx-here" ,ocaml4.07-ppx-here)
@@ -4658,7 +4793,8 @@ ocaml values.")
(build-system dune-build-system)
(arguments
`(#:ocaml ,ocaml-4.07
- #:findlib ,ocaml4.07-findlib))
+ #:findlib ,ocaml4.07-findlib
+ #:dune ,ocaml4.07-dune))
(propagated-inputs
`(("ocaml-base" ,ocaml4.07-base)
("ocaml-ppx-here" ,ocaml4.07-ppx-here)
@@ -4692,7 +4828,8 @@ context such as function arguments.")
;; No tests
`(#:tests? #f
#:ocaml ,ocaml-4.07
- #:findlib ,ocaml4.07-findlib))
+ #:findlib ,ocaml4.07-findlib
+ #:dune ,ocaml4.07-dune))
(propagated-inputs
`(("ocaml-migrate-parsetree"
,(package-with-ocaml4.07 ocaml-migrate-parsetree))
@@ -4721,7 +4858,8 @@ context such as function arguments.")
;; No tests
`(#:tests? #f
#:ocaml ,ocaml-4.07
- #:findlib ,ocaml4.07-findlib))
+ #:findlib ,ocaml4.07-findlib
+ #:dune ,ocaml4.07-dune))
(propagated-inputs
`(("ocaml-base" ,ocaml4.07-base)
("ocaml-migrate-parsetree"
@@ -4750,7 +4888,8 @@ else expression.")
(build-system dune-build-system)
(arguments
`(#:ocaml ,ocaml-4.07
- #:findlib ,ocaml4.07-findlib))
+ #:findlib ,ocaml4.07-findlib
+ #:dune ,ocaml4.07-dune))
(propagated-inputs
`(("ocaml-base" ,ocaml4.07-base)
("ocaml-stdio" ,ocaml4.07-stdio)
@@ -4778,7 +4917,8 @@ size, the version of the compiler, ...")
(build-system dune-build-system)
(arguments
`(#:ocaml ,ocaml-4.07
- #:findlib ,ocaml4.07-findlib))
+ #:findlib ,ocaml4.07-findlib
+ #:dune ,ocaml4.07-dune))
(propagated-inputs
`(("ocaml-base" ,ocaml4.07-base)
("ocaml-migrate-parsetree"
@@ -4806,7 +4946,8 @@ match expressions, and if expressions.")
(build-system dune-build-system)
(arguments
`(#:ocaml ,ocaml-4.07
- #:findlib ,ocaml4.07-findlib))
+ #:findlib ,ocaml4.07-findlib
+ #:dune ,ocaml4.07-dune))
(propagated-inputs
`(("ocaml-base" ,ocaml4.07-base)
("ocaml-ppx-here" ,ocaml4.07-ppx-here)
@@ -4835,7 +4976,8 @@ position.")
(build-system dune-build-system)
(arguments
`(#:ocaml ,ocaml-4.07
- #:findlib ,ocaml4.07-findlib))
+ #:findlib ,ocaml4.07-findlib
+ #:dune ,ocaml4.07-dune))
(propagated-inputs
`(("ocaml-base" ,ocaml4.07-base)
("ocaml-ppx-compare" ,ocaml4.07-ppx-compare)
@@ -4866,9 +5008,9 @@ useful errors on failure.")
"1wawsbjfkri4sw52n8xqrzihxc3xfpdicv3ahz83a1rsn4lb8j5q"))))
(build-system dune-build-system)
(arguments
- `(#:jbuild? #t
- #:ocaml ,ocaml-4.07
- #:findlib ,ocaml4.07-findlib))
+ `(#:ocaml ,ocaml-4.07
+ #:findlib ,ocaml4.07-findlib
+ #:dune ,ocaml4.07-dune))
(propagated-inputs
`(("ocaml-base" ,ocaml4.07-base)
("ocaml-ppx-assert" ,ocaml4.07-ppx-assert)
@@ -4911,7 +5053,8 @@ to denote the expected output.")
;; No tests
`(#:tests? #f
#:ocaml ,ocaml-4.07
- #:findlib ,ocaml4.07-findlib))
+ #:findlib ,ocaml4.07-findlib
+ #:dune ,ocaml4.07-dune))
(propagated-inputs
`(("ocaml-base" ,ocaml4.07-base)
("ocaml-migrate-parsetree"
@@ -4943,7 +5086,8 @@ packages.")
(arguments
`(#:test-target "."
#:ocaml ,ocaml-4.07
- #:findlib ,ocaml4.07-findlib))
+ #:findlib ,ocaml4.07-findlib
+ #:dune ,ocaml4.07-dune))
(propagated-inputs
`(("ocaml-base" ,ocaml4.07-base)
("ocaml-typerep" ,ocaml4.07-typerep)
@@ -4973,7 +5117,8 @@ from type definitions.")
(arguments
`(#:test-target "."
#:ocaml ,ocaml-4.07
- #:findlib ,ocaml4.07-findlib))
+ #:findlib ,ocaml4.07-findlib
+ #:dune ,ocaml4.07-dune))
(propagated-inputs
`(("ocaml-ppx-compare" ,ocaml4.07-ppx-compare)
("ocaml-ppx-enumerate" ,ocaml4.07-ppx-enumerate)
@@ -5010,7 +5155,8 @@ verification tool.")
;; Cyclic dependency with ocaml-ppx-jane
`(#:tests? #f
#:ocaml ,ocaml-4.07
- #:findlib ,ocaml4.07-findlib))
+ #:findlib ,ocaml4.07-findlib
+ #:dune ,ocaml4.07-dune))
(propagated-inputs
`(("ocaml-base" ,ocaml4.07-base)
("ocaml-bin-prot" ,ocaml4.07-bin-prot)
@@ -5041,7 +5187,8 @@ functions from type definitions.")
(arguments
`(#:test-target "."
#:ocaml ,ocaml-4.07
- #:findlib ,ocaml4.07-findlib))
+ #:findlib ,ocaml4.07-findlib
+ #:dune ,ocaml4.07-dune))
(propagated-inputs
`(("ocaml-ppx-assert" ,ocaml4.07-ppx-assert)
("ocaml-ppx-base" ,ocaml4.07-ppx-base)
@@ -5086,7 +5233,8 @@ driver including all standard Jane Street ppx rewriters.")
(build-system dune-build-system)
(arguments
`(#:ocaml ,ocaml-4.07
- #:findlib ,ocaml4.07-findlib))
+ #:findlib ,ocaml4.07-findlib
+ #:dune ,ocaml4.07-dune))
(propagated-inputs
`(("ocaml-base" ,ocaml4.07-base)
("ocaml-ppx-jane" ,ocaml4.07-ppx-jane)
@@ -5104,9 +5252,9 @@ This library implements a splittable pseudo-random number generator that sacrifi
cryptographic-quality randomness in favor of performance.")
(license license:asl2.0)))
-(define-public ocaml-jane-street-headers
+(define-public ocaml4.07-jane-street-headers
(package
- (name "ocaml-jane-street-headers")
+ (name "ocaml4.07-jane-street-headers")
(version "0.11.0")
(source (origin
(method url-fetch)
@@ -5118,7 +5266,10 @@ cryptographic-quality randomness in favor of performance.")
"0afhzm08l9v883fhpqqh2lmy7az609pxif40bp7x1sk8c0yszqsh"))))
(build-system dune-build-system)
(arguments
- `(#:test-target "."))
+ `(#:test-target "."
+ #:ocaml ,ocaml-4.07
+ #:findlib ,ocaml4.07-findlib
+ #:dune ,ocaml4.07-dune))
(home-page "https://github.com/janestreet/jane-street-headers")
(synopsis "Jane Street C header files")
(description "This package provides C header files shared between the
@@ -5142,7 +5293,8 @@ various Jane Street packages.")
;; No tests
`(#:tests? #f
#:ocaml ,ocaml-4.07
- #:findlib ,ocaml4.07-findlib))
+ #:findlib ,ocaml4.07-findlib
+ #:dune ,ocaml4.07-dune))
(propagated-inputs
`(("ocaml-base" ,ocaml4.07-base)
("ocaml-stdio" ,ocaml4.07-stdio)))
@@ -5185,7 +5337,8 @@ Configurator allows one to:
(("/bin/echo") (which "echo")))
#t)))
#:ocaml ,ocaml-4.07
- #:findlib ,ocaml4.07-findlib))
+ #:findlib ,ocaml4.07-findlib
+ #:dune ,ocaml4.07-dune))
(native-inputs
`(("ocaml-ppx-expect" ,ocaml4.07-ppx-expect)))
(home-page "https://github.com/janestreet/spawn")
@@ -5224,11 +5377,11 @@ thousands of times faster than fork.
"0pzl8n09z4f3i7z2wq4cjxfqrr8mj6xcdp7rbg0nxap2zdhjgvrq"))))
(build-system dune-build-system)
(arguments
- `(#:jbuild? #t
- ;; Require a cyclic dependency: core_extended
- #:tests? #f
+ `(#:package "core"
+ #:tests? #f; Require a cyclic dependency: core_extended
#:ocaml ,ocaml-4.07
- #:findlib ,ocaml4.07-findlib))
+ #:findlib ,ocaml4.07-findlib
+ #:dune ,ocaml4.07-dune))
(propagated-inputs
`(("ocaml-base" ,ocaml4.07-base)
("ocaml-configurator" ,ocaml4.07-configurator)
@@ -5267,14 +5420,14 @@ standard library that was developed by Jane Street.")
;; Cyclic dependency with ocaml-core
`(#:tests? #f
#:ocaml ,ocaml-4.07
- #:findlib ,ocaml4.07-findlib))
+ #:findlib ,ocaml4.07-findlib
+ #:dune ,ocaml4.07-dune))
(propagated-inputs
`(("ocaml-base" ,ocaml4.07-base)
("ocaml-bin-prot" ,ocaml4.07-bin-prot)
("ocaml-configurator" ,ocaml4.07-configurator)
("ocaml-fieldslib" ,ocaml4.07-fieldslib)
- ("ocaml-jane-street-headers"
- ,(package-with-ocaml4.07 ocaml-jane-street-headers))
+ ("ocaml-jane-street-headers" ,ocaml4.07-jane-street-headers)
("ocaml-ppx-assert" ,ocaml4.07-ppx-assert)
("ocaml-ppx-base" ,ocaml4.07-ppx-base)
("ocaml-ppx-hash" ,ocaml4.07-ppx-hash)
@@ -5374,7 +5527,7 @@ stream, and convert everything to UTF-8.")
("ocaml-markup" ,ocaml-markup)))
(native-inputs
`(("ocaml-alcotest" ,ocaml-alcotest)))
- (arguments `(#:jbuild? #t))
+ (arguments `(#:package "tyxml"))
(home-page "https://github.com/ocsigen/tyxml/")
(synopsis "TyXML is a library for building correct HTML and SVG documents")
(description "TyXML provides a set of convenient combinators that uses the
diff --git a/gnu/packages/onc-rpc.scm b/gnu/packages/onc-rpc.scm
index 8d0480622e..e4b03b7858 100644
--- a/gnu/packages/onc-rpc.scm
+++ b/gnu/packages/onc-rpc.scm
@@ -143,7 +143,7 @@ from the protocol files.")
(define-public libnsl
(package
(name "libnsl")
- (version "1.2.0")
+ (version "1.3.0")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -152,17 +152,10 @@ from the protocol files.")
(file-name (git-file-name name version))
(sha256
(base32
- "1chzqhcgh0yia9js8mh92cmhyka7rh32ql6b3mgdk26n94dqzs8b"))))
+ "1dayj5i4bh65gn7zkciacnwv2a0ghm6nn58d78rsi4zby4lyj5w5"))))
(build-system gnu-build-system)
(arguments
- `(#:configure-flags '("--disable-static")
- #:phases (modify-phases %standard-phases
- (add-before 'bootstrap 'gettextize
- (lambda _
- ;; Regenerate the bundled Makefile.in.in to avoid a
- ;; "gettext infrastructure mismatch" because the
- ;; existing version was generated by an older gettext.
- (invoke "gettextize" "-f"))))))
+ `(#:configure-flags '("--disable-static")))
(native-inputs
`(("autoconf" ,autoconf)
("automake" ,automake)
diff --git a/gnu/packages/openldap.scm b/gnu/packages/openldap.scm
index 3ac95c11df..9c9b1f07b3 100644
--- a/gnu/packages/openldap.scm
+++ b/gnu/packages/openldap.scm
@@ -177,14 +177,14 @@ an LDAP server.")
(define-public python-ldap
(package
(name "python-ldap")
- (version "3.1.0")
+ (version "3.3.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "python-ldap" version))
(sha256
(base32
- "1i97nwfnraylyn0myxlf3vciicrf5h6fymrcff9c00k581wmx5s1"))))
+ "198as30xy6p760niqps2zdvq2xcmr765h06pmda8fa9y077wl4a7"))))
(build-system python-build-system)
(arguments
`(#:phases
diff --git a/gnu/packages/package-management.scm b/gnu/packages/package-management.scm
index 30092e0933..d59859335a 100644
--- a/gnu/packages/package-management.scm
+++ b/gnu/packages/package-management.scm
@@ -50,6 +50,7 @@
#:use-module (gnu packages cpio)
#:use-module (gnu packages crypto)
#:use-module (gnu packages curl)
+ #:use-module (gnu packages databases)
#:use-module (gnu packages dbm)
#:use-module (gnu packages docbook)
#:use-module (gnu packages file)
@@ -130,8 +131,8 @@
;; Note: the 'update-guix-package.scm' script expects this definition to
;; start precisely like this.
(let ((version "1.1.0")
- (commit "44c6e6f590b706f1ecfea6a7e7406bbd7cb70736")
- (revision 25))
+ (commit "875c01f82dc5f2c4ca82952ea88b3240fbe8bede")
+ (revision 30))
(package
(name "guix")
@@ -143,11 +144,11 @@
(source (origin
(method git-fetch)
(uri (git-reference
- (url "https://git.savannah.gnu.org/r/guix.git")
+ (url "https://git.savannah.gnu.org/git/guix.git")
(commit commit)))
(sha256
(base32
- "17kmn9yrk9pxi88v4d48h9q3m5dpd2j0pf15fhxzh4k915jv8n6k"))
+ "0mh1hnrk84h5nzqp6aflh9ab3kxr5672c8bx44minzyd26177yik"))
(file-name (string-append "guix-" version "-checkout"))))
(build-system gnu-build-system)
(arguments
@@ -198,6 +199,13 @@
(string-append "sysvinitservicedir = \
$(prefix)/etc/init.d\n")))
+ ;; Install OpenRC init files to $(prefix)/etc rather
+ ;; than to /etc.
+ (substitute* "nix/local.mk"
+ (("^openrcservicedir = .*$")
+ (string-append "openrcservicedir = \
+$(prefix)/etc/init.d\n")))
+
(invoke "sh" "bootstrap")))
(add-before 'build 'use-host-compressors
(lambda* (#:key inputs target #:allow-other-keys)
@@ -418,7 +426,7 @@ the Nix package manager.")
(fold alist-delete (package-native-inputs guix)
'("po4a" "graphviz" "help2man")))
(inputs
- `(("gnutls" ,guile3.0-gnutls)
+ `(("gnutls" ,gnutls)
("guile-git" ,guile-git)
("guile-json" ,guile-json-3)
("guile-gcrypt" ,guile-gcrypt)
@@ -981,6 +989,92 @@ environments.")
;; and the fonts included in this package are licensed OFL1.1.
(license (list license:gpl3+ license:agpl3+ license:silofl1.1))))
+(define-public guix-build-coordinator
+ (let ((commit "e701d4d7f24a11d94cf504e7efbcee4e1091b092")
+ (revision "1"))
+ (package
+ (name "guix-build-coordinator")
+ (version (git-version "0" revision commit))
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://git.cbaines.net/git/guix/build-coordinator")
+ (commit commit)))
+ (sha256
+ (base32
+ "16f09sl527b6bgyxs2ybyjfncli60dwzg4v1c58h4hcl2zm8qx70"))
+ (file-name (string-append name "-" version "-checkout"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:modules (((guix build guile-build-system)
+ #:select (target-guile-effective-version))
+ ,@%gnu-build-system-modules)
+ #:imported-modules ((guix build guile-build-system)
+ ,@%gnu-build-system-modules)
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'build 'set-GUILE_AUTO_COMPILE
+ (lambda _
+ ;; To avoid warnings relating to 'guild'.
+ (setenv "GUILE_AUTO_COMPILE" "0")
+ #t))
+ (add-after 'install 'wrap-executable
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (bin (string-append out "/bin"))
+ (guile (assoc-ref inputs "guile"))
+ (version (target-guile-effective-version))
+ (scm (string-append out "/share/guile/site/" version))
+ (go (string-append out "/lib/guile/" version "/site-ccache")))
+ (for-each
+ (lambda (file)
+ (simple-format (current-error-port) "wrapping: ~A\n" file)
+ (wrap-program file
+ `("PATH" ":" prefix
+ (,bin
+ ;; Support building without sqitch as an input, as it
+ ;; can't be cross-compiled yet
+ ,@(or (and=> (assoc-ref inputs "sqitch")
+ list)
+ '())))
+ `("GUILE_LOAD_PATH" ":" prefix
+ (,scm ,(getenv "GUILE_LOAD_PATH")))
+ `("GUILE_LOAD_COMPILED_PATH" ":" prefix
+ (,go ,(getenv "GUILE_LOAD_COMPILED_PATH")))))
+ (find-files bin)))
+ #t))
+ (delete 'strip)))) ; As the .go files aren't compatible
+ (native-inputs
+ `(("pkg-config" ,pkg-config)
+ ("autoconf" ,autoconf)
+ ("automake" ,automake)
+
+ ;; Guile libraries are needed here for cross-compilation.
+ ("guile-json" ,guile-json-3)
+ ("guile-gcrypt" ,guile-gcrypt)
+ ("guix" ,guix)
+ ("guile-prometheus" ,guile-prometheus)
+ ("guile-fibers" ,guile-fibers)
+ ("guile" ,@(assoc-ref (package-native-inputs guix) "guile"))))
+ (inputs
+ `(("guile" ,@(assoc-ref (package-native-inputs guix) "guile"))
+ ("guile-fibers" ,guile-fibers)
+ ("guile-prometheus" ,guile-prometheus)
+ ("guile-gcrypt" ,guile-gcrypt)
+ ("guile-json" ,guile-json-3)
+ ("guile-lzlib" ,guile-lzlib)
+ ("guile-sqlite3" ,guile-sqlite3)
+ ("guix" ,guix)
+ ("sqlite" ,sqlite)
+ ("sqitch" ,sqitch)))
+ (home-page "https://git.cbaines.net/guix/build-coordinator/")
+ (synopsis "Tool to help build derivations")
+ (description
+ "The Guix Build Coordinator helps with performing lots of builds across
+potentially many machines, and with doing something with the results and
+outputs of those builds.")
+ (license license:gpl3+))))
+
(define-public guix-jupyter
(package
(name "guix-jupyter")
@@ -1148,7 +1242,7 @@ for packaging and deployment of cross-compiled Windows applications.")
(define-public libostree
(package
(name "libostree")
- (version "2020.6")
+ (version "2020.7")
(source
(origin
(method url-fetch)
@@ -1156,7 +1250,7 @@ for packaging and deployment of cross-compiled Windows applications.")
"https://github.com/ostreedev/ostree/releases/download/v"
(version-major+minor version) "/libostree-" version ".tar.xz"))
(sha256
- (base32 "0wk9fgj9jl25ns2hcgcb6j24k5mvfn13b02ka0p8l4hdh8c4hpc6"))))
+ (base32 "0clriq2ypz1fycd6mpjyrhzid44svzpzw0amnank593h69b216ax"))))
(build-system gnu-build-system)
(arguments
'(#:phases
diff --git a/gnu/packages/parallel.scm b/gnu/packages/parallel.scm
index 96968a5790..b600a1e5b2 100644
--- a/gnu/packages/parallel.scm
+++ b/gnu/packages/parallel.scm
@@ -4,7 +4,7 @@
;;; Copyright © 2015, 2016, 2017, 2018, 2020 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 Pjotr Prins <pjotr.guix@thebird.nl>
;;; Copyright © 2016 Andreas Enge <andreas@enge.fr>
-;;; Copyright © 2016 Ricardo Wurmus <rekado@elephly.net>
+;;; Copyright © 2016, 2020 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2016 Ben Woodcroft <donttrustben@gmail.com>
;;; Copyright © 2017, 2018 Rutger Helling <rhelling@mykolab.com>
;;; Copyright © 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
@@ -108,7 +108,7 @@ and they are executed on lists of files, hosts, users or other items.")
(define-public slurm
(package
(name "slurm")
- (version "19.05.3-2")
+ (version "20.02.5")
(source (origin
(method url-fetch)
(uri (string-append
@@ -116,7 +116,7 @@ and they are executed on lists of files, hosts, users or other items.")
version ".tar.bz2"))
(sha256
(base32
- "0qj4blfymrd2ry2qmb58l3jbr4jwygc3adcfw7my27rippcijlyc"))
+ "08qp60rxsny6fcx58xim88avx7f7h7q1vpq3lfw6nlha04r7lan3"))
(modules '((guix build utils)))
(snippet
'(begin
@@ -140,19 +140,19 @@ and they are executed on lists of files, hosts, users or other items.")
#t))))
;; FIXME: More optional inputs could be added,
;; in particular mysql and gtk+.
- (inputs `(("expect" ,expect)
- ("freeipmi" ,freeipmi)
+ (inputs `(("freeipmi" ,freeipmi)
("hwloc" ,hwloc-2 "lib")
("json-c" ,json-c)
("linux-pam" , linux-pam)
("munge" ,munge)
("numactl" ,numactl)
- ("perl" ,perl)
- ("python" ,python-wrapper)
("readline" ,readline)))
(native-inputs
`(("autoconf" ,autoconf)
- ("pkg-config" ,pkg-config)))
+ ("expect" ,expect)
+ ("perl" ,perl)
+ ("pkg-config" ,pkg-config)
+ ("python" ,python-wrapper)))
(build-system gnu-build-system)
(arguments
`(#:configure-flags
diff --git a/gnu/packages/password-utils.scm b/gnu/packages/password-utils.scm
index 85dbeef28f..c178c2de8d 100644
--- a/gnu/packages/password-utils.scm
+++ b/gnu/packages/password-utils.scm
@@ -28,6 +28,7 @@
;;; Copyright © 2020 Brice Waegeneire <brice@waegenei.re>
;;; Copyright © 2020 Jean-Baptiste Note <jean-baptiste.note@m4x.org>
;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de>
+;;; Copyright © 2020 Vinicius Monego <monego@posteo.net>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -381,8 +382,17 @@ them out, at the source.")
"13hw532fmzc5xjpy75d74rlfdlxf2a8ibb4hyy9c0s92wsgf0qsj"))))
(build-system gnu-build-system)
(arguments
- ;; XXX: have RUNPATH issue.
- '(#:configure-flags '("--disable-python-bindings")))
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-before 'configure 'set-LDFLAGS
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (setenv "LDFLAGS"
+ (string-append
+ "-Wl,-rpath="
+ (assoc-ref outputs "out") "/lib"))
+ #t)))))
+ (native-inputs
+ `(("python" ,python-wrapper)))
(inputs
`(("cracklib" ,cracklib)))
(synopsis "Password quality checker")
diff --git a/gnu/packages/patches/clamav-system-tomsfastmath.patch b/gnu/packages/patches/clamav-system-tomsfastmath.patch
index 2153723a76..99fbf9c6dc 100644
--- a/gnu/packages/patches/clamav-system-tomsfastmath.patch
+++ b/gnu/packages/patches/clamav-system-tomsfastmath.patch
@@ -1,8 +1,8 @@
From: Tobias Geerinckx-Rice <me@tobias.gr>
-Date: Sun, 24 Feb 2019 15:50:37 +0100
+Date: Sat, 03 Oct 2020 22:10:20 +0200
Subject: gnu: clamav: Add support for system tomsfastmath.
-Adjusted from the original for clamav 0.101.1:
+Adjusted from the original for clamav 0.103.0:
From 756ff89526b5ffaa7a4f49b1bbecf2ecbd6f85f9 Mon Sep 17 00:00:00 2001
From: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
@@ -19,9 +19,10 @@ Patch-Name: add-support-for-system-tomsfastmath.patch
5 files changed, 28 insertions(+), 4 deletions(-)
create mode 100644 m4/reorganization/libs/tomsfastmath.m4
---- a/configure.ac 1970-01-01 01:00:00.000000000 +0100
-+++ b/configure.ac 2019-02-24 15:47:14.076992864 +0100
-@@ -89,6 +89,7 @@
+diff -Naur a/configure.ac b/configure.ac
+--- a/configure.ac 1970-01-01 01:00:01.000000000 +0100
++++ b/configure.ac 2020-10-03 22:04:00.535448352 +0200
+@@ -94,6 +94,7 @@
m4_include([m4/reorganization/libs/json.m4])
m4_include([m4/reorganization/libs/pcre.m4])
m4_include([m4/reorganization/libs/libmspack.m4])
@@ -29,7 +30,7 @@ Patch-Name: add-support-for-system-tomsfastmath.patch
if test "x$use_internal_mspack" = "xno"; then
mspack_msg="External, $LIBMSPACK_CFLAGS $LIBMSPACK_LIBS"
-@@ -297,6 +298,7 @@
+@@ -361,6 +362,7 @@
fi
CL_MSG_STATUS([yara ],[$enable_yara],[$enable_yara])
CL_MSG_STATUS([fts ],[yes],[$lfs_fts_msg])
@@ -37,9 +38,9 @@ Patch-Name: add-support-for-system-tomsfastmath.patch
# Yep, downgrading the compiler avoids the bug too:
-diff -Naur clamav-0.101.1/libclamav/bignum.h clamav-0.101.1b/libclamav/bignum.h
---- a/libclamav/bignum.h 1970-01-01 01:00:00.000000000 +0100
-+++ b/libclamav/bignum.h 2019-02-24 15:46:36.216998323 +0100
+diff -Naur a/libclamav/bignum.h b/libclamav/bignum.h
+--- a/libclamav/bignum.h 1970-01-01 01:00:01.000000000 +0100
++++ b/libclamav/bignum.h 2020-10-03 22:04:00.535448352 +0200
@@ -1,9 +1,13 @@
#ifndef BIGNUM_H_
#define BIGNUM_H_
@@ -54,11 +55,11 @@ diff -Naur clamav-0.101.1/libclamav/bignum.h clamav-0.101.1b/libclamav/bignum.h
+
typedef fp_int mp_int;
#define mp_cmp fp_cmp
- #define mp_toradix_n(a,b,c,d) fp_toradix_n(a,b,c,d)
-diff -Naur clamav-0.101.1/libclamav/Makefile.am clamav-0.101.1b/libclamav/Makefile.am
---- a/libclamav/Makefile.am 1970-01-01 01:00:00.000000000 +0100
-+++ b/libclamav/Makefile.am 2019-02-24 15:46:36.216998323 +0100
-@@ -597,8 +597,10 @@
+ #define mp_toradix_n(a, b, c, d) fp_toradix_n(a, b, c, d)
+diff -Naur a/libclamav/Makefile.am b/libclamav/Makefile.am
+--- a/libclamav/Makefile.am 1970-01-01 01:00:01.000000000 +0100
++++ b/libclamav/Makefile.am 2020-10-03 22:06:42.705447754 +0200
+@@ -588,8 +588,10 @@
yara_clam.h
endif
@@ -68,23 +69,23 @@ diff -Naur clamav-0.101.1/libclamav/Makefile.am clamav-0.101.1b/libclamav/Makefi
+
+if !SYSTEM_TOMSFASTMATH
+libclamav_la_SOURCES += bignum_fast.h\
- tomsfastmath/addsub/fp_add.c\
- tomsfastmath/addsub/fp_add_d.c\
- tomsfastmath/addsub/fp_addmod.c\
-@@ -680,6 +682,10 @@
- tomsfastmath/sqr/fp_sqr_comba_generic.c\
- tomsfastmath/sqr/fp_sqr_comba_small_set.c\
+ tomsfastmath/addsub/fp_add.c\
+ tomsfastmath/addsub/fp_add_d.c\
+ tomsfastmath/addsub/fp_addmod.c\
+@@ -671,6 +673,10 @@
+ tomsfastmath/sqr/fp_sqr_comba_generic.c\
+ tomsfastmath/sqr/fp_sqr_comba_small_set.c\
tomsfastmath/sqr/fp_sqrmod.c
+else
+libclamav_la_CFLAGS += $(TOMSFASTMATH_CFLAGS)
+libclamav_la_LIBADD += $(TOMSFASTMATH_LIBS)
+endif
- .PHONY: version.h.tmp
+ .PHONY2: version.h.tmp
version.c: version.h
-diff -Naur clamav-0.101.1/libclamav/xdp.c clamav-0.101.1b/libclamav/xdp.c
---- a/libclamav/xdp.c 1970-01-01 01:00:00.000000000 +0100
-+++ b/libclamav/xdp.c 2019-02-24 15:46:36.216998323 +0100
+diff -Naur a/libclamav/xdp.c b/libclamav/xdp.c
+--- a/libclamav/xdp.c 1970-01-01 01:00:01.000000000 +0100
++++ b/libclamav/xdp.c 2020-10-03 22:04:00.535448352 +0200
@@ -52,7 +52,7 @@
#include "scanners.h"
#include "conv.h"
@@ -94,9 +95,9 @@ diff -Naur clamav-0.101.1/libclamav/xdp.c clamav-0.101.1b/libclamav/xdp.c
#include "filetypes.h"
static char *dump_xdp(cli_ctx *ctx, const char *start, size_t sz);
-diff -Naur clamav-0.101.1/m4/reorganization/libs/tomsfastmath.m4 clamav-0.101.1b/m4/reorganization/libs/tomsfastmath.m4
+diff -Naur a/m4/reorganization/libs/tomsfastmath.m4 b/m4/reorganization/libs/tomsfastmath.m4
--- a/m4/reorganization/libs/tomsfastmath.m4 1970-01-01 01:00:00.000000000 +0100
-+++ b/m4/reorganization/libs/tomsfastmath.m4 2019-02-24 15:46:36.216998323 +0100
++++ b/m4/reorganization/libs/tomsfastmath.m4 2020-10-03 22:04:00.535448352 +0200
@@ -0,0 +1,12 @@
+dnl Check for system tomsfastmath
+PKG_CHECK_MODULES([TOMSFASTMATH], [tomsfastmath], [have_system_tomsfastmath=yes], [have_system_tomsfastmath=no])
diff --git a/gnu/packages/patches/clang-11.0-libc-search-path.patch b/gnu/packages/patches/clang-11.0-libc-search-path.patch
new file mode 100644
index 0000000000..c014de179d
--- /dev/null
+++ b/gnu/packages/patches/clang-11.0-libc-search-path.patch
@@ -0,0 +1,89 @@
+Clang attempts to guess file names based on the OS and distro (yes!),
+but unfortunately, that doesn't work for us.
+
+This patch makes it easy to insert libc's $libdir so that Clang passes the
+correct absolute file name of crt1.o etc. to 'ld'. It also disables all
+the distro-specific stuff and removes the hard-coded FHS directory names
+to make sure Clang also works on non-Guix systems.
+
+diff --git a/lib/Driver/ToolChains/Gnu.cpp b/lib/Driver/ToolChains/Gnu.cpp
+--- a/lib/Driver/ToolChains/Gnu.cpp
++++ b/lib/Driver/ToolChains/Gnu.cpp
+@@ -2797,7 +2797,7 @@ void Generic_GCC::AddMultilibPaths(const Driver &D,
+ // the cross. Note that GCC does include some of these directories in some
+ // configurations but this seems somewhere between questionable and simply
+ // a bug.
+- if (StringRef(LibPath).startswith(SysRoot)) {
++ if (0) {
+ addPathIfExists(D, LibPath + "/" + MultiarchTriple, Paths);
+ addPathIfExists(D, LibPath + "/../" + OSLibDir, Paths);
+ }
+@@ -2811,6 +2811,10 @@ void Generic_GCC::AddMultiarchPaths(const Driver &D,
+ // Try walking via the GCC triple path in case of biarch or multiarch GCC
+ // installations with strange symlinks.
+ if (GCCInstallation.isValid()) {
++
++// The following code would end up adding things like
++// "/usr/lib/x86_64-unknown-linux-gnu/../../lib64" to the search path.
++#if 0
+ addPathIfExists(D,
+ SysRoot + "/usr/lib/" + GCCInstallation.getTriple().str() +
+ "/../../" + OSLibDir,
+@@ -2823,6 +2827,7 @@ void Generic_GCC::AddMultiarchPaths(const Driver &D,
+ D, GCCInstallation.getInstallPath() + BiarchSibling.gccSuffix(),
+ Paths);
+ }
++#endif // Guix
+
+ // See comments above on the multilib variant for details of why this is
+ // included even from outside the sysroot.
+diff --git a/lib/Driver/ToolChains/Linux.cpp b/lib/Driver/ToolChains/Linux.cpp
+--- a/lib/Driver/ToolChains/Linux.cpp
++++ b/lib/Driver/ToolChains/Linux.cpp
+@@ -219,6 +219,9 @@ Linux::Linux(const Driver &D, const llvm::Triple &Triple, const ArgList &Args)
+
+ Generic_GCC::PushPPaths(PPaths);
+
++// Comment out the distro-specific tweaks so that they don't bite when
++// using Guix on a foreign distro.
++#if 0
+ Distro Distro(D.getVFS(), Triple);
+
+ if (Distro.IsAlpineLinux() || Triple.isAndroid()) {
+@@ -284,6 +287,7 @@ Linux::Linux(const Driver &D, const llvm::Triple &Triple, const ArgList &Args)
+
+ if (IsAndroid || Distro.IsOpenSUSE())
+ ExtraOpts.push_back("--enable-new-dtags");
++#endif // Guix
+
+ // The selection of paths to try here is designed to match the patterns which
+ // the GCC driver itself uses, as this is part of the GCC-compatible driver.
+@@ -310,6 +314,8 @@ Linux::Linux(const Driver &D, const llvm::Triple &Triple, const ArgList &Args)
+ addPathIfExists(D, SysRoot + "/lib/" + MultiarchTriple, Paths);
+ addPathIfExists(D, SysRoot + "/lib/../" + OSLibDir, Paths);
+
++// This requires the commented distro tweaks above.
++#if 0
+ if (IsAndroid) {
+ // Android sysroots contain a library directory for each supported OS
+ // version as well as some unversioned libraries in the usual multiarch
+@@ -338,6 +344,7 @@ Linux::Linux(const Driver &D, const llvm::Triple &Triple, const ArgList &Args)
+ addPathIfExists(D, SysRoot + "/" + OSLibDir + "/" + ABIName, Paths);
+ addPathIfExists(D, SysRoot + "/usr/" + OSLibDir + "/" + ABIName, Paths);
+ }
++#endif // Guix
+
+ Generic_GCC::AddMultiarchPaths(D, SysRoot, OSLibDir, Paths);
+
+@@ -349,8 +356,9 @@ Linux::Linux(const Driver &D, const llvm::Triple &Triple, const ArgList &Args)
+ if (StringRef(D.Dir).startswith(SysRoot))
+ addPathIfExists(D, D.Dir + "/../lib", Paths);
+
+- addPathIfExists(D, SysRoot + "/lib", Paths);
+- addPathIfExists(D, SysRoot + "/usr/lib", Paths);
++ // Add libc's lib/ directory to the search path, so that crt1.o, crti.o,
++ // and friends can be found.
++ addPathIfExists(D, "@GLIBC_LIBDIR@", Paths);
+ }
+
+ ToolChain::CXXStdlibType Linux::GetDefaultCXXStdlibType() const {
diff --git a/gnu/packages/patches/dconf-meson-0.52.patch b/gnu/packages/patches/dconf-meson-0.52.patch
deleted file mode 100644
index c636edc108..0000000000
--- a/gnu/packages/patches/dconf-meson-0.52.patch
+++ /dev/null
@@ -1,19 +0,0 @@
-Fix build failure with Meson 0.52.
-
-Taken from upstream:
-https://gitlab.gnome.org/GNOME/dconf/commit/7ad890fb7a2ec90a777a756a1fa20a615ec7245e
-https://gitlab.gnome.org/GNOME/dconf/merge_requests/54
-
-diff --git a/client/meson.build b/client/meson.build
-index f3b7122cb05bfa7bb481c487e3cd052aa1ad58e5..de6387e2cac2aba12b83f2614c277bada434fd16 100644
---- a/client/meson.build
-+++ b/client/meson.build
-@@ -28,7 +28,7 @@ libdconf_client = static_library(
-
- libdconf_client_dep = declare_dependency(
- dependencies: gio_dep,
-- link_whole: libdconf_client,
-+ link_with: libdconf_client,
- )
-
- libdconf = shared_library(
diff --git a/gnu/packages/patches/fplll-std-fenv.patch b/gnu/packages/patches/fplll-std-fenv.patch
new file mode 100644
index 0000000000..aa2438f0c9
--- /dev/null
+++ b/gnu/packages/patches/fplll-std-fenv.patch
@@ -0,0 +1,18 @@
+See https://github.com/fplll/fplll/issues/444
+
+--- fplll-5.3.3-checkout.old/fplll/enum/enumerate_base.h 2020-09-23 13:55:27.833769823 +0200
++++ fplll-5.3.3-checkout/fplll/enum/enumerate_base.h 2020-09-23 13:56:14.313771769 +0200
+@@ -127,10 +127,10 @@
+ int rounding_backup;
+ void save_rounding()
+ {
+- rounding_backup = std::fegetround();
+- std::fesetround(FE_TONEAREST);
++ rounding_backup = fegetround();
++ fesetround(FE_TONEAREST);
+ }
+- void restore_rounding() { std::fesetround(rounding_backup); }
++ void restore_rounding() { fesetround(rounding_backup); }
+
+ inline bool next_pos_up()
+ {
diff --git a/gnu/packages/patches/gnome-settings-daemon-gc.patch b/gnu/packages/patches/gnome-settings-daemon-gc.patch
new file mode 100644
index 0000000000..688544b418
--- /dev/null
+++ b/gnu/packages/patches/gnome-settings-daemon-gc.patch
@@ -0,0 +1,43 @@
+This patch adds a "guix gc" button to the low disk space notification
+that 'gsd-housekeeping' emits.
+
+diff --git a/plugins/housekeeping/gsd-disk-space.c b/plugins/housekeeping/gsd-disk-space.c
+index bd3437e..89027d8 100644
+--- a/plugins/housekeeping/gsd-disk-space.c
++++ b/plugins/housekeeping/gsd-disk-space.c
+@@ -546,6 +546,21 @@ empty_trash_callback (NotifyNotification *n,
+ notify_notification_close (n, NULL);
+ }
+
++static void
++guix_gc_callback (NotifyNotification *n,
++ const char *action)
++{
++ const gchar *argv[] = { "guix", "gc", NULL };
++
++ g_assert (action != NULL);
++ g_assert (strcmp (action, "run-guix-gc") == 0);
++
++ g_spawn_async (NULL, (gchar **) argv, NULL, G_SPAWN_SEARCH_PATH,
++ NULL, NULL, NULL, NULL);
++
++ notify_notification_close (n, NULL);
++}
++
+ static void
+ on_notification_closed (NotifyNotification *n)
+ {
+@@ -591,6 +606,13 @@ ldsm_notify (const char *summary,
+ g_free);
+ }
+
++ notify_notification_add_action (notification,
++ "run-guix-gc",
++ _("Collect Unused Guix Items"),
++ (NotifyActionCallback) guix_gc_callback,
++ NULL,
++ NULL);
++
+ has_trash = ldsm_mount_has_trash (mount_path);
+
+ if (has_trash) {
diff --git a/gnu/packages/patches/grim-revert-output-rotation.patch b/gnu/packages/patches/grim-revert-output-rotation.patch
new file mode 100644
index 0000000000..cbf0a86502
--- /dev/null
+++ b/gnu/packages/patches/grim-revert-output-rotation.patch
@@ -0,0 +1,27 @@
+From 80b17ceaff90b81b28b44004d2aca4cc40f365be Mon Sep 17 00:00:00 2001
+From: Tobias Geerinckx-Rice <me@tobias.gr>
+Date: Fri, 2 Oct 2020 00:07:30 +0200
+Subject: [PATCH] Revert "Correct interpretation of output rotation"
+
+This reverts commit 8f9d60885ce2f9bd66cd93d3378dcb6866d4588a.
+It is incompatible with the current Sway version (1.4) in Guix.
+---
+ render.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/render.c b/render.c
+index 8f31e7e..a6b0b12 100644
+--- a/render.c
++++ b/render.c
+@@ -104,7 +104,7 @@ cairo_surface_t *render(struct grim_state *state, struct grim_box *geometry,
+ cairo_matrix_translate(&matrix,
+ (double)output->geometry.width / 2,
+ (double)output->geometry.height / 2);
+- cairo_matrix_rotate(&matrix, get_output_rotation(output->transform));
++ cairo_matrix_rotate(&matrix, -get_output_rotation(output->transform));
+ cairo_matrix_scale(&matrix,
+ (double)raw_output_width / output_width * output_flipped_x,
+ (double)raw_output_height / output_height * output_flipped_y);
+--
+2.28.0
+
diff --git a/gnu/packages/patches/hplip-fix-bug-1898438.patch b/gnu/packages/patches/hplip-fix-bug-1898438.patch
new file mode 100644
index 0000000000..7c095f9b2a
--- /dev/null
+++ b/gnu/packages/patches/hplip-fix-bug-1898438.patch
@@ -0,0 +1,19 @@
+From: Tobias Geerinckx-Rice <me@tobias.gr>
+Date: Sun, 04 Oct 2020 13:28:49 +0200
+Subject: [PATCH] gnu: hplip: Fix non-network builds (bug #1898438)
+
+Reported as <https://bugs.launchpad.net/hplip/+bug/1898438>.
+
+diff -Naur a/scan/sane/hpaio.c b/scan/sane/hpaio.c
+--- a/scan/sane/hpaio.c 1970-01-01 01:00:01.000000000 +0100
++++ b/scan/sane/hpaio.c 2020-10-04 13:26:34.665244052 +0200
+@@ -36,7 +36,9 @@
+ #include <string.h>
+ #include <cups/cups.h>
+ #include "hpmud.h"
++#ifdef HAVE_LIBNETSNMP
+ #include "avahiDiscovery.h"
++#endif
+ #include "hp_ipp.h"
+ #include "soap.h"
+ #include "soapht.h"
diff --git a/gnu/packages/patches/icecat-makeicecat.patch b/gnu/packages/patches/icecat-makeicecat.patch
index 265725ce36..c90950d5ef 100644
--- a/gnu/packages/patches/icecat-makeicecat.patch
+++ b/gnu/packages/patches/icecat-makeicecat.patch
@@ -25,7 +25,7 @@ index 8be2362..48716f2 100755
-wget -N https://ftp.mozilla.org/pub/mozilla.org/firefox/releases/${FFVERSION}esr/source/firefox-${FFVERSION}esr.source.tar.xz.asc
-gpg --recv-keys --keyserver keyserver.ubuntu.com 14F26682D0916CDD81E37B6D61B7B526D98F0353
-gpg --verify firefox-${FFVERSION}esr.source.tar.xz.asc
--echo -n ae692bf2a15908cacbb9d4c7ccf78525a87410ff3f13befedc1926f849bc27cc firefox-${FFVERSION}esr.source.tar.xz |sha256sum -c -
+-echo -n 5fd27d67689fe60803022035e556146d2dbce5e53d21c14d026fc31dd2e45be9 firefox-${FFVERSION}esr.source.tar.xz |sha256sum -c -
-
-echo Extracting Firefox tarball
-tar -xf firefox-${FFVERSION}esr.source.tar.xz
@@ -37,7 +37,7 @@ index 8be2362..48716f2 100755
+# wget -N https://ftp.mozilla.org/pub/mozilla.org/firefox/releases/${FFVERSION}esr/source/firefox-${FFVERSION}esr.source.tar.xz.asc
+# gpg --recv-keys --keyserver keyserver.ubuntu.com 14F26682D0916CDD81E37B6D61B7B526D98F0353
+# gpg --verify firefox-${FFVERSION}esr.source.tar.xz.asc
-+# echo -n ae692bf2a15908cacbb9d4c7ccf78525a87410ff3f13befedc1926f849bc27cc firefox-${FFVERSION}esr.source.tar.xz |sha256sum -c -
++# echo -n 5fd27d67689fe60803022035e556146d2dbce5e53d21c14d026fc31dd2e45be9 firefox-${FFVERSION}esr.source.tar.xz |sha256sum -c -
+#
+# echo Extracting Firefox tarball
+# tar -xf firefox-${FFVERSION}esr.source.tar.xz
@@ -63,9 +63,9 @@ index 8be2362..48716f2 100755
-
-mv l10n $SOURCEDIR
-
--hg clone http://hg.mozilla.org/l10n/compare-locales/
+-hg clone https://hg.mozilla.org/l10n/compare-locales/
-cd compare-locales/
--hg checkout RELEASE_3_3_0
+-hg checkout RELEASE_8_0_0
-cd ..
-rm compare-locales/.hg* compare-locales/.git* -rf
-mv compare-locales $SOURCEDIR/l10n
@@ -84,9 +84,9 @@ index 8be2362..48716f2 100755
+#
+# mv l10n $SOURCEDIR
+#
-+# hg clone http://hg.mozilla.org/l10n/compare-locales/
++# hg clone https://hg.mozilla.org/l10n/compare-locales/
+# cd compare-locales/
-+# hg checkout RELEASE_3_3_0
++# hg checkout RELEASE_8_0_0
+# cd ..
+# rm compare-locales/.hg* compare-locales/.git* -rf
+# mv compare-locales $SOURCEDIR/l10n
@@ -98,7 +98,7 @@ index 8be2362..48716f2 100755
shopt -s nullglob
for patch in $DATA/patches/*.patch; do
-@@ -603,6 +603,6 @@ sed 's/777/755/;' -i toolkit/crashreporter/google-breakpad/Makefile.in
+@@ -598,6 +598,6 @@ sed 's/777/755/;' -i toolkit/crashreporter/google-breakpad/Makefile.in
# Fix CVE-2012-3386
/bin/sed 's/chmod a+w/chmod u+w/' -i ./js/src/ctypes/libffi/Makefile.in ./toolkit/crashreporter/google-breakpad/Makefile.in ./toolkit/crashreporter/google-breakpad/src/third_party/glog/Makefile.in || true
diff --git a/gnu/packages/patches/jamvm-1.5.1-aarch64-support.patch b/gnu/packages/patches/jamvm-1.5.1-aarch64-support.patch
new file mode 100644
index 0000000000..8867d4f191
--- /dev/null
+++ b/gnu/packages/patches/jamvm-1.5.1-aarch64-support.patch
@@ -0,0 +1,572 @@
+From 9c83c3d3f443eb92f87dc87c7dcfe95577b95621 Mon Sep 17 00:00:00 2001
+From: Simon South <simon@simonsouth.net>
+Date: Thu, 28 May 2020 14:29:55 -0400
+Subject: [PATCH] Add support for aarch64 on GNU/Linux
+
+---
+ configure.ac | 10 +-
+ src/arch/Makefile.am | 2 +-
+ src/arch/aarch64.h | 110 ++++++++++++++++
+ src/os/linux/Makefile.am | 2 +-
+ src/os/linux/aarch64/Makefile.am | 28 ++++
+ src/os/linux/aarch64/callNative.S | 212 ++++++++++++++++++++++++++++++
+ src/os/linux/aarch64/dll_md.c | 59 +++++++++
+ src/os/linux/aarch64/init.c | 51 +++++++
+ 8 files changed, 469 insertions(+), 5 deletions(-)
+ create mode 100644 src/arch/aarch64.h
+ create mode 100644 src/os/linux/aarch64/Makefile.am
+ create mode 100644 src/os/linux/aarch64/callNative.S
+ create mode 100644 src/os/linux/aarch64/dll_md.c
+ create mode 100644 src/os/linux/aarch64/init.c
+
+diff --git a/configure.ac b/configure.ac
+index ccd530f..707f281 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -43,6 +43,7 @@ amd64-*-freebsd*) host_os=bsd libdl_needed=no ;;
+ arm*-*-linux*) host_cpu=arm host_os=linux ;;
+ arm*-*-openbsd*) host_cpu=arm host_os=bsd libdl_needed=no ;;
+ arm*-*-freebsd*) host_cpu=arm host_os=bsd libdl_needed=no ;;
++aarch64*-*-linux*) host_cpu=aarch64 host_os=linux ;;
+ powerpc*-*-linux*) host_cpu=powerpc host_os=linux ;;
+ powerpc*-*-openbsd*) host_cpu=powerpc host_os=bsd libdl_needed=no ;;
+ powerpc*-*-freebsd*) host_cpu=powerpc host_os=bsd libdl_needed=no ;;
+@@ -149,9 +150,11 @@ AC_ARG_ENABLE(runtime-reloc-checks,
+
+ AC_ARG_ENABLE(int-inlining,
+ [AS_HELP_STRING(--enable-int-inlining,enable inline threaded version of the interpreter
+- (by default enabled on x86_64, i386 and powerpc, disabled otherwise))],,
+- [if test "$host_cpu" = x86_64 -o "$host_cpu" = i386 -o "$host_cpu" = powerpc && \
+- test "$cross_compiling" = no -o "$enable_runtime_reloc_checks" != no; then
++ (by default enabled on x86_64, i386, powerpc and aarch64,
++ disabled otherwise))],,
++ [if test "$host_cpu" = x86_64 -o "$host_cpu" = i386 -o "$host_cpu" = powerpc -o \
++ "$host_cpu" = aarch64 && test "$cross_compiling" = no -o \
++ "$enable_runtime_reloc_checks" != no; then
+ enable_int_inlining=yes
+ else
+ enable_int_inlining=no
+@@ -298,6 +301,7 @@ AC_CONFIG_FILES(
+ src/os/linux/x86_64/Makefile \
+ src/os/linux/parisc/Makefile \
+ src/os/linux/mips/Makefile \
++ src/os/linux/aarch64/Makefile \
+ src/os/darwin/i386/Makefile \
+ src/os/darwin/arm/Makefile \
+ src/os/darwin/powerpc/Makefile \
+diff --git a/src/arch/Makefile.am b/src/arch/Makefile.am
+index 078c1de..afb26d1 100644
+--- a/src/arch/Makefile.am
++++ b/src/arch/Makefile.am
+@@ -19,4 +19,4 @@
+ ## Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ ##
+
+-EXTRA_DIST = powerpc.h arm.h i386.h x86_64.h parisc.h mips.h
++EXTRA_DIST = powerpc.h arm.h i386.h x86_64.h parisc.h mips.h aarch64.h
+diff --git a/src/arch/aarch64.h b/src/arch/aarch64.h
+new file mode 100644
+index 0000000..c96aa9f
+--- /dev/null
++++ b/src/arch/aarch64.h
+@@ -0,0 +1,110 @@
++/*
++ * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008
++ * Robert Lougher <rob@lougher.org.uk>.
++ * Copyright (C) 2020 Simon South <simon@simonsouth.net>.
++ *
++ * This file is part of JamVM.
++ *
++ * This program is free software; you can redistribute it and/or
++ * modify it under the terms of the GNU General Public License
++ * as published by the Free Software Foundation; either version 2,
++ * or (at your option) any later version.
++ *
++ * This program is distributed in the hope that it will be useful,
++ * but WITHOUT ANY WARRANTY; without even the implied warranty of
++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++ * GNU General Public License for more details.
++ *
++ * You should have received a copy of the GNU General Public License
++ * along with this program; if not, write to the Free Software
++ * Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
++ */
++
++#include <stdint.h>
++
++#define OS_ARCH "aarch64"
++
++#define HANDLER_TABLE_T static const void
++#define DOUBLE_1_BITS 0x3ff0000000000000LL
++
++#define READ_DBL(v,p,l) v = ((u8)p[0]<<56)|((u8)p[1]<<48)|((u8)p[2]<<40) \
++ |((u8)p[3]<<32)|((u8)p[4]<<24)|((u8)p[5]<<16) \
++ |((u8)p[6]<<8)|(u8)p[7]; p+=8
++
++/* Needed for i386 -- empty here */
++#define FPU_HACK
++
++#define COMPARE_AND_SWAP_64(addr, old_val, new_val) \
++({ \
++ int result, read_val; \
++ __asm__ __volatile__ (" \
++ 1: ldaxr %2, %1; \
++ cmp %2, %3; \
++ b.ne 2f; \
++ stlxr %w0, %4, %1; \
++ cmp %w0, wzr; \
++ b.ne 1b; \
++ 2: cset %w0, eq;" \
++ : "=&r" (result), "+Q" (*addr), "=&r" (read_val) \
++ : "r" (old_val), "r" (new_val) \
++ : "cc"); \
++ result; \
++})
++
++#define COMPARE_AND_SWAP(addr, old_val, new_val) \
++ COMPARE_AND_SWAP_64(addr, old_val, new_val)
++
++#define LOCKWORD_READ(addr) \
++({ \
++ uintptr_t result; \
++ __asm__ __volatile__ (" \
++ ldar %0, %1;" \
++ : "=r" (result) \
++ : "Q" (*addr) \
++ : "cc"); \
++ result; \
++})
++
++#define LOCKWORD_WRITE(addr, value) \
++({ \
++ __asm__ __volatile__ (" \
++ stlr %1, %0;" \
++ : "=Q" (*addr) \
++ : "r" (value) \
++ : "cc"); \
++})
++
++#define LOCKWORD_COMPARE_AND_SWAP(addr, old_val, new_val) \
++ COMPARE_AND_SWAP_64(addr, old_val, new_val)
++
++#define FLUSH_CACHE(addr, length) \
++{ \
++ uintptr_t start = (uintptr_t) (addr); \
++ uintptr_t end = start + length; \
++ uintptr_t i; \
++ \
++ for(i = start & aarch64_data_cache_line_mask; \
++ i < end; \
++ i += aarch64_data_cache_line_len) \
++ __asm__ ("dc cvau, %0" :: "r" (i)); \
++ \
++ __asm__ ("dsb ish"); \
++ \
++ for(i = start & aarch64_instruction_cache_line_mask; \
++ i < end; \
++ i += aarch64_instruction_cache_line_len) \
++ __asm__ ("ic ivau, %0" :: "r" (i)); \
++ \
++ __asm__ ("dsb ish; isb"); \
++}
++
++#define MBARRIER() __asm__ ("dmb ish" ::: "memory")
++#define UNLOCK_MBARRIER() __asm__ ("dmb ish" ::: "memory")
++#define JMM_LOCK_MBARRIER() __asm__ ("dmb ish" ::: "memory")
++#define JMM_UNLOCK_MBARRIER() JMM_LOCK_MBARRIER()
++
++/* Defined in src/os/linux/aarch64/init.c */
++extern unsigned char aarch64_data_cache_line_len;
++extern uintptr_t aarch64_data_cache_line_mask;
++extern unsigned char aarch64_instruction_cache_line_len;
++extern uintptr_t aarch64_instruction_cache_line_mask;
+diff --git a/src/os/linux/Makefile.am b/src/os/linux/Makefile.am
+index aa29be1..d582b97 100644
+--- a/src/os/linux/Makefile.am
++++ b/src/os/linux/Makefile.am
+@@ -20,7 +20,7 @@
+ ##
+
+ SUBDIRS = @arch@
+-DIST_SUBDIRS = powerpc arm i386 x86_64 parisc mips
++DIST_SUBDIRS = powerpc arm i386 x86_64 parisc mips aarch64
+
+ noinst_LTLIBRARIES = libos.la
+ libos_la_SOURCES = os.c
+diff --git a/src/os/linux/aarch64/Makefile.am b/src/os/linux/aarch64/Makefile.am
+new file mode 100644
+index 0000000..1024c3a
+--- /dev/null
++++ b/src/os/linux/aarch64/Makefile.am
+@@ -0,0 +1,28 @@
++##
++## Copyright (C) 2003, 2004, 2005, 2006, 2007, 2010, 2011, 2012
++## Robert Lougher <rob@lougher.org.uk>.
++##
++## File added by Simon South <simon@simonsouth.net>.
++##
++## This file is part of JamVM.
++##
++## This program is free software; you can redistribute it and/or
++## modify it under the terms of the GNU General Public License
++## as published by the Free Software Foundation; either version 2,
++## or (at your option) any later version.
++##
++## This program is distributed in the hope that it will be useful,
++## but WITHOUT ANY WARRANTY; without even the implied warranty of
++## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++## GNU General Public License for more details.
++##
++## You should have received a copy of the GNU General Public License
++## along with this program; if not, write to the Free Software
++## Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
++##
++
++noinst_LTLIBRARIES = libnative.la
++libnative_la_SOURCES = init.c dll_md.c callNative.S
++
++AM_CPPFLAGS = -I$(top_builddir)/src -I$(top_srcdir)/src
++AM_CCASFLAGS = -I$(top_builddir)/src
+diff --git a/src/os/linux/aarch64/callNative.S b/src/os/linux/aarch64/callNative.S
+new file mode 100644
+index 0000000..e067c4f
+--- /dev/null
++++ b/src/os/linux/aarch64/callNative.S
+@@ -0,0 +1,212 @@
++/*
++ * Copyright (C) 2008, 2009, 2011, 2012 Robert Lougher <rob@jamvm.org.uk>.
++ * Copyright (C) 2020 Simon South <simon@simonsouth.net>.
++ *
++ * This file is part of JamVM.
++ *
++ * This program is free software; you can redistribute it and/or
++ * modify it under the terms of the GNU General Public License
++ * as published by the Free Software Foundation; either version 2,
++ * or (at your option) any later version.
++ *
++ * This program is distributed in the hope that it will be useful,
++ * but WITHOUT ANY WARRANTY; without even the implied warranty of
++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++ * GNU General Public License for more details.
++ *
++ * You should have received a copy of the GNU General Public License
++ * along with this program; if not, write to the Free Software
++ * Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
++ */
++
++#include "config.h"
++
++#ifndef USE_FFI
++ .text
++ .arch armv8-a
++ .align 2
++ .global callJNIMethod
++ .type callJNIMethod,function
++
++/*
++ * Arguments passed in:
++ *
++ * x0 JNIEnv
++ * x1 class or NULL
++ * x2 sig
++ * w3 extra arg
++ * x4 ostack
++ * x5 function pntr
++ * w6 args count
++ */
++
++/* Register usage:
++ *
++ * x20 ostack
++ * x19 sig pntr
++ * x16 function pntr
++ * x15 ostack pntr
++ * x14 args pntr
++ * x13 float/double handler
++ * x12 int/long handler
++ * w11 fp regs remaining
++ * w10 int regs remaining
++ * x9 scratch
++ * x2-x7 outgoing int args
++ * x1 outgoing class or this pntr
++ * x0 outgoing JNIEnv (as passed in)
++ *
++ * d0 - d7 outgoing float args
++ */
++
++callJNIMethod:
++ stp x29, x30, [sp, #-32]!
++ mov x29, sp
++ stp x19, x20, [x29, #16]
++
++ sub sp, sp, w3 /* allocate room for stacked args */
++ mov x14, sp
++
++ mov x20, x4 /* preserve ostack */
++ add x19, x2, #1 /* init sig pntr -- skipping '(' */
++
++ mov x16, x5 /* save function pntr */
++ mov x15, x20 /* init ostack pntr */
++
++ adr x13, fp_reg_handlers-8
++ adr x12, int_reg_handlers-8
++
++ mov w11, #8 /* fp regs remaining */
++ mov w10, #6 /* int regs remaining */
++
++ cbnz x1, scan_sig /* is method non-static? */
++ ldr x1, [x15], #8 /* yes, load x1 with "this" */
++
++scan_sig:
++ ldrb w9, [x19], #1 /* get next sig char */
++
++ cmp w9, #41 /* ')' */
++ b.eq done
++
++ cmp w9, #74 /* 'J' */
++ b.eq long
++
++ cmp w9, #70 /* 'F' */
++ b.eq float
++
++ cmp w9, #68 /* 'D' */
++ b.eq double
++
++skip_brackets:
++ cmp w9, #91 /* '[' */
++ b.ne 1f
++ ldrb w9, [x19], #1
++ b skip_brackets
++1:
++ cmp w9, #76 /* 'L' */
++ b.ne int
++
++skip_ref:
++ ldrb w9, [x19], #1
++ cmp w9, #59 /* ';' */
++ b.ne skip_ref
++
++int:
++ ldr x9, [x15], #8
++ cbz w10, stack_push
++
++load_int_reg:
++ sub w10, w10, #1
++ add x12, x12, #8
++ br x12
++
++int_reg_handlers:
++ mov x2, x9
++ b scan_sig
++ mov x3, x9
++ b scan_sig
++ mov x4, x9
++ b scan_sig
++ mov x5, x9
++ b scan_sig
++ mov x6, x9
++ b scan_sig
++ mov x7, x9
++ b scan_sig
++
++long:
++ ldr x9, [x15], #16
++ cbz w10, stack_push
++ b load_int_reg
++
++float:
++ ldr w9, [x15], #8
++ cbz w11, stack_push
++ b load_fp_reg
++
++double:
++ ldr x9, [x15], #16
++ cbz w11, stack_push
++
++load_fp_reg:
++ sub w11, w11, #1
++ add x13, x13, #8
++ br x13
++
++fp_reg_handlers:
++ fmov d0, x9
++ b scan_sig
++ fmov d1, x9
++ b scan_sig
++ fmov d2, x9
++ b scan_sig
++ fmov d3, x9
++ b scan_sig
++ fmov d4, x9
++ b scan_sig
++ fmov d5, x9
++ b scan_sig
++ fmov d6, x9
++ b scan_sig
++ fmov d7, x9
++ b scan_sig
++
++stack_push:
++ str x9, [x14], #8
++ b scan_sig
++
++done:
++ /* Call the function */
++ blr x16
++
++ mov sp, x29 /* Pop argument area */
++
++ ldrb w9, [x19] /* Return type */
++
++ cmp w9, #86 /* 'V' */
++ b.eq return
++
++ cmp w9, #68 /* 'D' */
++ b.ne 2f
++ str d0, [x20], #16
++ b return
++2:
++ cmp w9, #70 /* 'F' */
++ b.ne 3f
++ str s0, [x20], #8
++ b return
++3:
++ cmp w9, #74 /* 'J' */
++ b.ne 4f
++ str x0, [x20], #16
++ b return
++4:
++ str x0, [x20], #8
++
++return:
++ mov x0, x20 /* return ostack */
++
++ ldp x19, x20, [x29, #16]
++ ldp x29, x30, [sp], #32
++ ret
++#endif
+diff --git a/src/os/linux/aarch64/dll_md.c b/src/os/linux/aarch64/dll_md.c
+new file mode 100644
+index 0000000..189f8a8
+--- /dev/null
++++ b/src/os/linux/aarch64/dll_md.c
+@@ -0,0 +1,59 @@
++/*
++ * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2010, 2011
++ * Robert Lougher <rob@jamvm.org.uk>.
++ * Copyright (C) 2020 Simon South <simon@simonsouth.net>.
++ *
++ * This file is part of JamVM.
++ *
++ * This program is free software; you can redistribute it and/or
++ * modify it under the terms of the GNU General Public License
++ * as published by the Free Software Foundation; either version 2,
++ * or (at your option) any later version.
++ *
++ * This program is distributed in the hope that it will be useful,
++ * but WITHOUT ANY WARRANTY; without even the implied warranty of
++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++ * GNU General Public License for more details.
++ *
++ * You should have received a copy of the GNU General Public License
++ * along with this program; if not, write to the Free Software
++ * Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
++ */
++
++#include "jam.h"
++
++#ifndef USE_FFI
++
++int nativeExtraArg(MethodBlock *mb) {
++ char *sig = mb->type;
++ int stack_args = 0;
++ int int_args = 6;
++ int fp_args = 8;
++
++ while(*++sig != ')')
++ switch(*sig) {
++ case 'F':
++ case 'D':
++ if(fp_args == 0)
++ stack_args += 8;
++ else
++ fp_args--;
++
++ default:
++ if(int_args == 0)
++ stack_args += 8;
++ else
++ int_args--;
++
++ if(*sig == '[')
++ while(*++sig == '[');
++ if(*sig == 'L')
++ while(*++sig != ';');
++ break;
++ }
++
++ /* Ensure the stack remains 16 byte aligned. */
++ return (stack_args + 15) & ~15;
++}
++
++#endif
+diff --git a/src/os/linux/aarch64/init.c b/src/os/linux/aarch64/init.c
+new file mode 100644
+index 0000000..e03b446
+--- /dev/null
++++ b/src/os/linux/aarch64/init.c
+@@ -0,0 +1,51 @@
++/*
++ * Copyright (C) 2003, 2004, 2005, 2006, 2007
++ * Robert Lougher <rob@lougher.org.uk>.
++ * Copyright (C) 2020 Simon South <simon@simonsouth.net>.
++ *
++ * This file is part of JamVM.
++ *
++ * This program is free software; you can redistribute it and/or
++ * modify it under the terms of the GNU General Public License
++ * as published by the Free Software Foundation; either version 2,
++ * or (at your option) any later version.
++ *
++ * This program is distributed in the hope that it will be useful,
++ * but WITHOUT ANY WARRANTY; without even the implied warranty of
++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++ * GNU General Public License for more details.
++ *
++ * You should have received a copy of the GNU General Public License
++ * along with this program; if not, write to the Free Software
++ * Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
++ */
++
++#include "arch/aarch64.h"
++
++/* Length in bytes of the smallest line in the host system's data cache */
++unsigned char aarch64_data_cache_line_len;
++
++/* Mask used to align a virtual address to a line in the data cache */
++uintptr_t aarch64_data_cache_line_mask;
++
++/* Length in bytes of the smallest line in the host system's instruction
++ cache */
++unsigned char aarch64_instruction_cache_line_len;
++
++/* Mask used to align a virtual address to a line in the instruction cache */
++uintptr_t aarch64_instruction_cache_line_mask;
++
++void initialisePlatform() {
++ unsigned int cache_type;
++
++ /* Extract information from the cache-type register, which describes aspects
++ of the host's cache configuration */
++ __asm__ ("mrs %0, ctr_el0" : "=r" (cache_type));
++
++ aarch64_data_cache_line_len = 4 << ((cache_type >> 16) & 0x0f);
++ aarch64_data_cache_line_mask = ~(aarch64_data_cache_line_len - 1);
++
++ aarch64_instruction_cache_line_len = 4 << (cache_type & 0x0f);
++ aarch64_instruction_cache_line_mask =
++ ~(aarch64_instruction_cache_line_len - 1);
++}
+--
+2.26.2
+
diff --git a/gnu/packages/patches/jamvm-arm.patch b/gnu/packages/patches/jamvm-1.5.1-armv7-support.patch
index 9e998e18db..9e998e18db 100644
--- a/gnu/packages/patches/jamvm-arm.patch
+++ b/gnu/packages/patches/jamvm-1.5.1-armv7-support.patch
diff --git a/gnu/packages/patches/jamvm-2.0.0-aarch64-support.patch b/gnu/packages/patches/jamvm-2.0.0-aarch64-support.patch
new file mode 100644
index 0000000000..b67d8b4584
--- /dev/null
+++ b/gnu/packages/patches/jamvm-2.0.0-aarch64-support.patch
@@ -0,0 +1,645 @@
+From a44154f7a18496cc3e5fc0b1b2ea69523ebc623a Mon Sep 17 00:00:00 2001
+From: Simon South <simon@simonsouth.net>
+Date: Mon, 1 Jun 2020 07:09:34 -0400
+Subject: [PATCH] Add support for aarch64 on GNU/Linux
+
+---
+ AUTHORS | 1 +
+ README | 2 +-
+ configure.ac | 7 +-
+ src/arch/Makefile.am | 2 +-
+ src/arch/aarch64.h | 147 +++++++++++++++++++++
+ src/jam.c | 3 +-
+ src/os/linux/Makefile.am | 2 +-
+ src/os/linux/aarch64/Makefile.am | 28 ++++
+ src/os/linux/aarch64/callNative.S | 212 ++++++++++++++++++++++++++++++
+ src/os/linux/aarch64/dll_md.c | 59 +++++++++
+ src/os/linux/aarch64/init.c | 51 +++++++
+ 11 files changed, 508 insertions(+), 6 deletions(-)
+ create mode 100644 src/arch/aarch64.h
+ create mode 100644 src/os/linux/aarch64/Makefile.am
+ create mode 100644 src/os/linux/aarch64/callNative.S
+ create mode 100644 src/os/linux/aarch64/dll_md.c
+ create mode 100644 src/os/linux/aarch64/init.c
+
+diff --git a/AUTHORS b/AUTHORS
+index e1334fe..6fd0eeb 100644
+--- a/AUTHORS
++++ b/AUTHORS
+@@ -1 +1,2 @@
+ Robert Lougher <rob@jamvm.org.uk>
++Simon South <simon@simonsouth.net>
+diff --git a/README b/README
+index c9d80bb..0e93d00 100644
+--- a/README
++++ b/README
+@@ -77,7 +77,7 @@ versions of JamVM also includes stubs for common method signatures.
+ The following platforms/architectures are recognised by configure. Those
+ marked with * must be configured to use libffi.
+
+-- Linux: x86, x86_64, ARM, PowerPC, PowerPC64(*), MIPS, HPPA
++- Linux: x86, x86_64, ARM, ARM64, PowerPC, PowerPC64(*), MIPS, HPPA
+ - FreeBSD: x86, x86_64, ARM, PowerPC, PowerPC64(*), SPARC(*)
+ - OpenBSD: x86, x86_64, ARM, PowerPC, PowerPC64(*), SPARC(*)
+ - Mac OS X/Darwin: x86, x86_64, ARM, PowerPC, PowerPC64
+diff --git a/configure.ac b/configure.ac
+index 138b7e6..e7051d7 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -46,6 +46,7 @@ x86_64-*-freebsd*) host_os=bsd libdl_needed=no ;;
+ arm*-*-linux*) host_cpu=arm host_os=linux interp_cflags=-marm ;;
+ arm*-*-openbsd*) host_cpu=arm host_os=bsd libdl_needed=no ;;
+ arm*-*-freebsd*) host_cpu=arm host_os=bsd libdl_needed=no ;;
++aarch64*-*-linux*) host_cpu=aarch64 host_os=linux ;;
+ powerpc*-*-linux*) host_cpu=powerpc host_os=linux ;;
+ powerpc*-*-openbsd*) host_cpu=powerpc host_os=bsd libdl_needed=no ;;
+ powerpc*-*-freebsd*) host_cpu=powerpc host_os=bsd libdl_needed=no ;;
+@@ -155,10 +156,11 @@ AC_ARG_ENABLE(runtime-reloc-checks,
+
+ AC_ARG_ENABLE(int-inlining,
+ [AS_HELP_STRING(--enable-int-inlining,enable inline threaded version of the interpreter
+- (by default enabled on x86_64, i386, powerpc, mips and arm,
++ (by default enabled on x86_64, i386, powerpc, mips, arm and aarch64,
+ disabled otherwise))],,
+ [if test "$host_cpu" = x86_64 -o "$host_cpu" = i386 -o "$host_cpu" = x86 -o \
+- "$host_cpu" = powerpc -o "$host_cpu" = arm -o "$host_cpu" = mips; then
++ "$host_cpu" = powerpc -o "$host_cpu" = arm -o "$host_cpu" = mips -o \
++ "$host_cpu" = aarch64; then
+ enable_int_inlining=yes
+ else
+ enable_int_inlining=no
+@@ -407,6 +409,7 @@ AC_CONFIG_FILES(
+ src/os/linux/x86_64/Makefile \
+ src/os/linux/parisc/Makefile \
+ src/os/linux/mips/Makefile \
++ src/os/linux/aarch64/Makefile \
+ src/os/darwin/i386/Makefile \
+ src/os/darwin/arm/Makefile \
+ src/os/darwin/powerpc/Makefile \
+diff --git a/src/arch/Makefile.am b/src/arch/Makefile.am
+index 7580a1b..4e2a4f9 100644
+--- a/src/arch/Makefile.am
++++ b/src/arch/Makefile.am
+@@ -19,4 +19,4 @@
+ ## Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ ##
+
+-EXTRA_DIST = powerpc.h arm.h i386.h x86_64.h parisc.h mips.h sparc.h
++EXTRA_DIST = powerpc.h arm.h i386.h x86_64.h parisc.h mips.h sparc.h aarch64.h
+diff --git a/src/arch/aarch64.h b/src/arch/aarch64.h
+new file mode 100644
+index 0000000..1912e79
+--- /dev/null
++++ b/src/arch/aarch64.h
+@@ -0,0 +1,147 @@
++/*
++ * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008
++ * Robert Lougher <rob@jamvm.org.uk>.
++ * Copyright (C) 2020 Simon South <simon@simonsouth.net>.
++ *
++ * This file is part of JamVM.
++ *
++ * This program is free software; you can redistribute it and/or
++ * modify it under the terms of the GNU General Public License
++ * as published by the Free Software Foundation; either version 2,
++ * or (at your option) any later version.
++ *
++ * This program is distributed in the hope that it will be useful,
++ * but WITHOUT ANY WARRANTY; without even the implied warranty of
++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++ * GNU General Public License for more details.
++ *
++ * You should have received a copy of the GNU General Public License
++ * along with this program; if not, write to the Free Software
++ * Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
++ */
++
++#include <stdint.h>
++
++#define OS_ARCH "aarch64"
++
++#define HANDLER_TABLE_T static const void
++#define DOUBLE_1_BITS 0x3ff0000000000000LL
++
++#define READ_DBL(v,p,l) v = ((u8)p[0]<<56)|((u8)p[1]<<48)|((u8)p[2]<<40) \
++ |((u8)p[3]<<32)|((u8)p[4]<<24)|((u8)p[5]<<16) \
++ |((u8)p[6]<<8)|(u8)p[7]; p+=8
++
++/* Needed for i386 -- empty here */
++#define FPU_HACK
++
++#define COMPARE_AND_SWAP_64(addr, old_val, new_val) \
++({ \
++ int result, read_val; \
++ __asm__ __volatile__ (" \
++ 1: ldaxr %2, %1; \
++ cmp %2, %3; \
++ b.ne 2f; \
++ stlxr %w0, %4, %1; \
++ cmp %w0, wzr; \
++ b.ne 1b; \
++ 2: cset %w0, eq;" \
++ : "=&r" (result), "+Q" (*addr), "=&r" (read_val) \
++ : "r" (old_val), "r" (new_val) \
++ : "cc"); \
++ result; \
++})
++
++#define COMPARE_AND_SWAP_32(addr, old_val, new_val) \
++({ \
++ int result, read_val; \
++ __asm__ __volatile__ (" \
++ 1: ldaxr %w2, %1; \
++ cmp %w2, %w3; \
++ b.ne 2f; \
++ stlxr %w0, %w4, %1; \
++ cmp %w0, wzr; \
++ b.ne 1b; \
++ 2: cset %w0, eq;" \
++ : "=&r" (result), "+Q" (*addr), "=&r" (read_val) \
++ : "r" (old_val), "r" (new_val) \
++ : "cc"); \
++ result; \
++})
++
++#define COMPARE_AND_SWAP(addr, old_val, new_val) \
++ COMPARE_AND_SWAP_64(addr, old_val, new_val)
++
++#define LOCKWORD_READ(addr) \
++({ \
++ uintptr_t result; \
++ __asm__ __volatile__ (" \
++ ldar %0, %1;" \
++ : "=r" (result) \
++ : "Q" (*addr) \
++ : "cc"); \
++ result; \
++})
++
++#define LOCKWORD_WRITE(addr, value) \
++({ \
++ __asm__ __volatile__ (" \
++ stlr %1, %0;" \
++ : "=Q" (*addr) \
++ : "r" (value) \
++ : "cc"); \
++})
++
++#define LOCKWORD_COMPARE_AND_SWAP(addr, old_val, new_val) \
++ COMPARE_AND_SWAP_64(addr, old_val, new_val)
++
++#define FLUSH_CACHE(addr, length) \
++{ \
++ uintptr_t start = (uintptr_t) (addr); \
++ uintptr_t end = start + length; \
++ uintptr_t i; \
++ \
++ for(i = start & aarch64_data_cache_line_mask; \
++ i < end; \
++ i += aarch64_data_cache_line_len) \
++ __asm__ ("dc cvau, %0" :: "r" (i)); \
++ \
++ __asm__ ("dsb ish"); \
++ \
++ for(i = start & aarch64_instruction_cache_line_mask; \
++ i < end; \
++ i += aarch64_instruction_cache_line_len) \
++ __asm__ ("ic ivau, %0" :: "r" (i)); \
++ \
++ __asm__ ("dsb ish; isb"); \
++}
++
++#define GEN_REL_JMP(target_addr, patch_addr, patch_size) \
++({ \
++ int patched = FALSE; \
++ \
++ if(patch_size >= 4) { \
++ /* Guard against the pointer difference being \
++ larger than the signed range */ \
++ long long offset = (uintptr_t)(target_addr) - \
++ (uintptr_t)(patch_addr); \
++ \
++ if(offset >= -1<<28 && offset < 1<<28) { \
++ *(uint32_t*)(patch_addr) = offset>>2 & 0x03ffffff \
++ | 0x14000000; \
++ patched = TRUE; \
++ } \
++ } \
++ patched; \
++})
++
++#define MBARRIER() __asm__ ("dmb ish" ::: "memory")
++#define RMBARRIER() __asm__ ("dmb ishld" ::: "memory")
++#define WMBARRIER() __asm__ ("dmb ishst" ::: "memory")
++#define JMM_LOCK_MBARRIER() __asm__ ("dmb ish" ::: "memory")
++#define JMM_UNLOCK_MBARRIER() JMM_LOCK_MBARRIER()
++
++/* Defined in src/os/linux/aarch64/init.c */
++extern unsigned char aarch64_data_cache_line_len;
++extern uintptr_t aarch64_data_cache_line_mask;
++extern unsigned char aarch64_instruction_cache_line_len;
++extern uintptr_t aarch64_instruction_cache_line_mask;
+diff --git a/src/jam.c b/src/jam.c
+index 052f84a..c97524a 100644
+--- a/src/jam.c
++++ b/src/jam.c
+@@ -98,7 +98,8 @@ void showUsage(char *name) {
+ void showVersionAndCopyright() {
+ printf("java version \"%s\"\n", JAVA_COMPAT_VERSION);
+ printf("JamVM version %s\n", VERSION);
+- printf("Copyright (C) 2003-2014 Robert Lougher <rob@jamvm.org.uk>\n\n");
++ printf("Copyright (C) 2003-2014 Robert Lougher <rob@jamvm.org.uk>\n");
++ printf("Portions Copyright (C) 2020 Simon South <simon@simonsouth.net>\n\n");
+ printf("This program is free software; you can redistribute it and/or\n");
+ printf("modify it under the terms of the GNU General Public License\n");
+ printf("as published by the Free Software Foundation; either version 2,\n");
+diff --git a/src/os/linux/Makefile.am b/src/os/linux/Makefile.am
+index 542094e..83e7dfe 100644
+--- a/src/os/linux/Makefile.am
++++ b/src/os/linux/Makefile.am
+@@ -20,7 +20,7 @@
+ ##
+
+ SUBDIRS = @arch@
+-DIST_SUBDIRS = powerpc arm i386 x86_64 parisc mips
++DIST_SUBDIRS = powerpc arm i386 x86_64 parisc mips aarch64
+
+ noinst_LTLIBRARIES = libos.la
+ libos_la_SOURCES = os.c
+diff --git a/src/os/linux/aarch64/Makefile.am b/src/os/linux/aarch64/Makefile.am
+new file mode 100644
+index 0000000..0e5134f
+--- /dev/null
++++ b/src/os/linux/aarch64/Makefile.am
+@@ -0,0 +1,28 @@
++##
++## Copyright (C) 2003, 2004, 2005, 2006, 2007, 2010, 2011, 2012
++## Robert Lougher <rob@jamvm.org.uk>.
++##
++## File added by Simon South <simon@simonsouth.net>.
++##
++## This file is part of JamVM.
++##
++## This program is free software; you can redistribute it and/or
++## modify it under the terms of the GNU General Public License
++## as published by the Free Software Foundation; either version 2,
++## or (at your option) any later version.
++##
++## This program is distributed in the hope that it will be useful,
++## but WITHOUT ANY WARRANTY; without even the implied warranty of
++## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++## GNU General Public License for more details.
++##
++## You should have received a copy of the GNU General Public License
++## along with this program; if not, write to the Free Software
++## Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
++##
++
++noinst_LTLIBRARIES = libnative.la
++libnative_la_SOURCES = init.c dll_md.c callNative.S
++
++AM_CPPFLAGS = -I$(top_builddir)/src -I$(top_srcdir)/src
++AM_CCASFLAGS = -I$(top_builddir)/src
+diff --git a/src/os/linux/aarch64/callNative.S b/src/os/linux/aarch64/callNative.S
+new file mode 100644
+index 0000000..e067c4f
+--- /dev/null
++++ b/src/os/linux/aarch64/callNative.S
+@@ -0,0 +1,212 @@
++/*
++ * Copyright (C) 2008, 2009, 2011, 2012 Robert Lougher <rob@jamvm.org.uk>.
++ * Copyright (C) 2020 Simon South <simon@simonsouth.net>.
++ *
++ * This file is part of JamVM.
++ *
++ * This program is free software; you can redistribute it and/or
++ * modify it under the terms of the GNU General Public License
++ * as published by the Free Software Foundation; either version 2,
++ * or (at your option) any later version.
++ *
++ * This program is distributed in the hope that it will be useful,
++ * but WITHOUT ANY WARRANTY; without even the implied warranty of
++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++ * GNU General Public License for more details.
++ *
++ * You should have received a copy of the GNU General Public License
++ * along with this program; if not, write to the Free Software
++ * Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
++ */
++
++#include "config.h"
++
++#ifndef USE_FFI
++ .text
++ .arch armv8-a
++ .align 2
++ .global callJNIMethod
++ .type callJNIMethod,function
++
++/*
++ * Arguments passed in:
++ *
++ * x0 JNIEnv
++ * x1 class or NULL
++ * x2 sig
++ * w3 extra arg
++ * x4 ostack
++ * x5 function pntr
++ * w6 args count
++ */
++
++/* Register usage:
++ *
++ * x20 ostack
++ * x19 sig pntr
++ * x16 function pntr
++ * x15 ostack pntr
++ * x14 args pntr
++ * x13 float/double handler
++ * x12 int/long handler
++ * w11 fp regs remaining
++ * w10 int regs remaining
++ * x9 scratch
++ * x2-x7 outgoing int args
++ * x1 outgoing class or this pntr
++ * x0 outgoing JNIEnv (as passed in)
++ *
++ * d0 - d7 outgoing float args
++ */
++
++callJNIMethod:
++ stp x29, x30, [sp, #-32]!
++ mov x29, sp
++ stp x19, x20, [x29, #16]
++
++ sub sp, sp, w3 /* allocate room for stacked args */
++ mov x14, sp
++
++ mov x20, x4 /* preserve ostack */
++ add x19, x2, #1 /* init sig pntr -- skipping '(' */
++
++ mov x16, x5 /* save function pntr */
++ mov x15, x20 /* init ostack pntr */
++
++ adr x13, fp_reg_handlers-8
++ adr x12, int_reg_handlers-8
++
++ mov w11, #8 /* fp regs remaining */
++ mov w10, #6 /* int regs remaining */
++
++ cbnz x1, scan_sig /* is method non-static? */
++ ldr x1, [x15], #8 /* yes, load x1 with "this" */
++
++scan_sig:
++ ldrb w9, [x19], #1 /* get next sig char */
++
++ cmp w9, #41 /* ')' */
++ b.eq done
++
++ cmp w9, #74 /* 'J' */
++ b.eq long
++
++ cmp w9, #70 /* 'F' */
++ b.eq float
++
++ cmp w9, #68 /* 'D' */
++ b.eq double
++
++skip_brackets:
++ cmp w9, #91 /* '[' */
++ b.ne 1f
++ ldrb w9, [x19], #1
++ b skip_brackets
++1:
++ cmp w9, #76 /* 'L' */
++ b.ne int
++
++skip_ref:
++ ldrb w9, [x19], #1
++ cmp w9, #59 /* ';' */
++ b.ne skip_ref
++
++int:
++ ldr x9, [x15], #8
++ cbz w10, stack_push
++
++load_int_reg:
++ sub w10, w10, #1
++ add x12, x12, #8
++ br x12
++
++int_reg_handlers:
++ mov x2, x9
++ b scan_sig
++ mov x3, x9
++ b scan_sig
++ mov x4, x9
++ b scan_sig
++ mov x5, x9
++ b scan_sig
++ mov x6, x9
++ b scan_sig
++ mov x7, x9
++ b scan_sig
++
++long:
++ ldr x9, [x15], #16
++ cbz w10, stack_push
++ b load_int_reg
++
++float:
++ ldr w9, [x15], #8
++ cbz w11, stack_push
++ b load_fp_reg
++
++double:
++ ldr x9, [x15], #16
++ cbz w11, stack_push
++
++load_fp_reg:
++ sub w11, w11, #1
++ add x13, x13, #8
++ br x13
++
++fp_reg_handlers:
++ fmov d0, x9
++ b scan_sig
++ fmov d1, x9
++ b scan_sig
++ fmov d2, x9
++ b scan_sig
++ fmov d3, x9
++ b scan_sig
++ fmov d4, x9
++ b scan_sig
++ fmov d5, x9
++ b scan_sig
++ fmov d6, x9
++ b scan_sig
++ fmov d7, x9
++ b scan_sig
++
++stack_push:
++ str x9, [x14], #8
++ b scan_sig
++
++done:
++ /* Call the function */
++ blr x16
++
++ mov sp, x29 /* Pop argument area */
++
++ ldrb w9, [x19] /* Return type */
++
++ cmp w9, #86 /* 'V' */
++ b.eq return
++
++ cmp w9, #68 /* 'D' */
++ b.ne 2f
++ str d0, [x20], #16
++ b return
++2:
++ cmp w9, #70 /* 'F' */
++ b.ne 3f
++ str s0, [x20], #8
++ b return
++3:
++ cmp w9, #74 /* 'J' */
++ b.ne 4f
++ str x0, [x20], #16
++ b return
++4:
++ str x0, [x20], #8
++
++return:
++ mov x0, x20 /* return ostack */
++
++ ldp x19, x20, [x29, #16]
++ ldp x29, x30, [sp], #32
++ ret
++#endif
+diff --git a/src/os/linux/aarch64/dll_md.c b/src/os/linux/aarch64/dll_md.c
+new file mode 100644
+index 0000000..189f8a8
+--- /dev/null
++++ b/src/os/linux/aarch64/dll_md.c
+@@ -0,0 +1,59 @@
++/*
++ * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2010, 2011
++ * Robert Lougher <rob@jamvm.org.uk>.
++ * Copyright (C) 2020 Simon South <simon@simonsouth.net>.
++ *
++ * This file is part of JamVM.
++ *
++ * This program is free software; you can redistribute it and/or
++ * modify it under the terms of the GNU General Public License
++ * as published by the Free Software Foundation; either version 2,
++ * or (at your option) any later version.
++ *
++ * This program is distributed in the hope that it will be useful,
++ * but WITHOUT ANY WARRANTY; without even the implied warranty of
++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++ * GNU General Public License for more details.
++ *
++ * You should have received a copy of the GNU General Public License
++ * along with this program; if not, write to the Free Software
++ * Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
++ */
++
++#include "jam.h"
++
++#ifndef USE_FFI
++
++int nativeExtraArg(MethodBlock *mb) {
++ char *sig = mb->type;
++ int stack_args = 0;
++ int int_args = 6;
++ int fp_args = 8;
++
++ while(*++sig != ')')
++ switch(*sig) {
++ case 'F':
++ case 'D':
++ if(fp_args == 0)
++ stack_args += 8;
++ else
++ fp_args--;
++
++ default:
++ if(int_args == 0)
++ stack_args += 8;
++ else
++ int_args--;
++
++ if(*sig == '[')
++ while(*++sig == '[');
++ if(*sig == 'L')
++ while(*++sig != ';');
++ break;
++ }
++
++ /* Ensure the stack remains 16 byte aligned. */
++ return (stack_args + 15) & ~15;
++}
++
++#endif
+diff --git a/src/os/linux/aarch64/init.c b/src/os/linux/aarch64/init.c
+new file mode 100644
+index 0000000..b21dc55
+--- /dev/null
++++ b/src/os/linux/aarch64/init.c
+@@ -0,0 +1,51 @@
++/*
++ * Copyright (C) 2003, 2004, 2005, 2006, 2007
++ * Robert Lougher <rob@jamvm.org.uk>.
++ * Copyright (C) 2020 Simon South <simon@simonsouth.net>.
++ *
++ * This file is part of JamVM.
++ *
++ * This program is free software; you can redistribute it and/or
++ * modify it under the terms of the GNU General Public License
++ * as published by the Free Software Foundation; either version 2,
++ * or (at your option) any later version.
++ *
++ * This program is distributed in the hope that it will be useful,
++ * but WITHOUT ANY WARRANTY; without even the implied warranty of
++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++ * GNU General Public License for more details.
++ *
++ * You should have received a copy of the GNU General Public License
++ * along with this program; if not, write to the Free Software
++ * Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
++ */
++
++#include "arch/aarch64.h"
++
++/* Length in bytes of the smallest line in the host system's data cache */
++unsigned char aarch64_data_cache_line_len;
++
++/* Mask used to align a virtual address to a line in the data cache */
++uintptr_t aarch64_data_cache_line_mask;
++
++/* Length in bytes of the smallest line in the host system's instruction
++ cache */
++unsigned char aarch64_instruction_cache_line_len;
++
++/* Mask used to align a virtual address to a line in the instruction cache */
++uintptr_t aarch64_instruction_cache_line_mask;
++
++void initialisePlatform() {
++ unsigned int cache_type;
++
++ /* Extract information from the cache-type register, which describes aspects
++ of the host's cache configuration */
++ __asm__ ("mrs %0, ctr_el0" : "=r" (cache_type));
++
++ aarch64_data_cache_line_len = 4 << ((cache_type >> 16) & 0x0f);
++ aarch64_data_cache_line_mask = ~(aarch64_data_cache_line_len - 1);
++
++ aarch64_instruction_cache_line_len = 4 << (cache_type & 0x0f);
++ aarch64_instruction_cache_line_mask =
++ ~(aarch64_instruction_cache_line_len - 1);
++}
+--
+2.26.2
+
diff --git a/gnu/packages/patches/jamvm-2.0.0-opcode-guard.patch b/gnu/packages/patches/jamvm-2.0.0-opcode-guard.patch
new file mode 100644
index 0000000000..5415c27a62
--- /dev/null
+++ b/gnu/packages/patches/jamvm-2.0.0-opcode-guard.patch
@@ -0,0 +1,35 @@
+From ca11b53896365c948426974cb90e8f71c70d123b Mon Sep 17 00:00:00 2001
+From: Simon South <simon@simonsouth.net>
+Date: Sun, 31 May 2020 20:36:43 -0400
+Subject: [PATCH] Guard floating-point opcodes with explicit memory barrier
+
+---
+ src/interp/engine/interp-inlining.h | 11 ++++++++++-
+ 1 file changed, 10 insertions(+), 1 deletion(-)
+
+diff --git a/src/interp/engine/interp-inlining.h b/src/interp/engine/interp-inlining.h
+index 3339b0e..4ee5c5a 100644
+--- a/src/interp/engine/interp-inlining.h
++++ b/src/interp/engine/interp-inlining.h
+@@ -78,8 +78,17 @@
+ 4.3, we need to insert a label, and ensure its address
+ is taken (to stop it being optimised out). However,
+ this reduces performance on PowerPC by approx 1 - 2%.
++
++ With gcc 5 and newer an asm statement with a "memory"
++ clobber argument explicitly sets a memory barrier for the
++ compiler, preventing it from reordering memory accesses
++ in a way that breaks decaching.
+ */
+-#if (__GNUC__ == 4) && (__GNUC_MINOR__ >= 3)
++#if (__GNUC__ > 4)
++#define DEF_GUARD_TABLE(level) /* none */
++#define GUARD(opcode, level) __asm__("" ::: "memory");
++#define GUARD_TBLS /* none */
++#elif (__GNUC__ == 4) && (__GNUC_MINOR__ >= 3)
+ #define DEF_GUARD_TABLE(level) DEF_HANDLER_TABLE(level, GUARD)
+ #define GUARD(opcode, level) label(opcode, level, GUARD)
+ #define GUARD_TBLS , HNDLR_TBLS(GUARD)
+--
+2.26.2
+
diff --git a/gnu/packages/patches/java-antlr4-Add-standalone-generator.patch b/gnu/packages/patches/java-antlr4-Add-standalone-generator.patch
new file mode 100644
index 0000000000..75b6dce39f
--- /dev/null
+++ b/gnu/packages/patches/java-antlr4-Add-standalone-generator.patch
@@ -0,0 +1,52 @@
+From 3b43b79da15be994348f13035474925ba592fe1f Mon Sep 17 00:00:00 2001
+From: Julien Lepiller <julien@lepiller.eu>
+Date: Fri, 15 Sep 2017 10:06:42 +0200
+Subject: [PATCH] Add standalone template generator
+
+---
+ tool/src/org/antlr/v4/unicode/UnicodeRenderer.java | 33 ++++++++++++++++++++++
+ 1 file changed, 33 insertions(+)
+ create mode 100644 tool/src/org/antlr/v4/unicode/UnicodeRenderer.java
+
+diff --git a/tool/src/org/antlr/v4/unicode/UnicodeRenderer.java b/tool/src/org/antlr/v4/unicode/UnicodeRenderer.java
+new file mode 100644
+index 0000000..9e53213
+--- /dev/null
++++ b/tool/src/org/antlr/v4/unicode/UnicodeRenderer.java
+@@ -0,0 +1,33 @@
++package org.antlr.v4.unicode;
++
++import org.stringtemplate.v4.*;
++import org.stringtemplate.v4.misc.ErrorBuffer;
++import org.antlr.v4.unicode.UnicodeDataTemplateController;
++
++import java.io.File;
++import java.io.FileWriter;
++import java.io.IOException;
++import java.util.Map;
++import java.util.Map.Entry;
++
++public class UnicodeRenderer extends UnicodeDataTemplateController {
++ public static void main(String[] arg)
++ throws IOException {
++ String inputdir = arg[0];
++ String input = arg[1];
++ String output = arg[2];
++
++ FileWriter fileWriter = new FileWriter(new File(output));
++ ErrorBuffer listener = new ErrorBuffer();
++
++ STGroupDir group = new STGroupDir(inputdir);
++ ST st = group.getInstanceOf(input);
++
++ for(Entry<String, Object> entry : getProperties().entrySet())
++ st.add(entry.getKey(), entry.getValue());
++
++ st.write(new AutoIndentWriter(fileWriter), listener);
++ fileWriter.flush();
++ fileWriter.close();
++ }
++}
+--
+2.13.5
+
diff --git a/gnu/packages/patches/java-antlr4-fix-code-too-large.java b/gnu/packages/patches/java-antlr4-fix-code-too-large.java
new file mode 100644
index 0000000000..9e9f92349d
--- /dev/null
+++ b/gnu/packages/patches/java-antlr4-fix-code-too-large.java
@@ -0,0 +1,90 @@
+From d22db2048534bdf3d9615117291f9d86564ff10d Mon Sep 17 00:00:00 2001
+From: Julien Lepiller <julien@lepiller.eu>
+Date: Sat, 19 Sep 2020 21:05:48 +0200
+Subject: [PATCH] Separate addPropertyAliases in two methods
+
+The quantity of data used to generate addPropertyAliases creates a big
+method, that is too big for java and results in "error: code too large".
+This is most likely due to added data between the expected version of
+icu and the actual version of icu in Guix.
+---
+ .../org/antlr/v4/tool/templates/unicodedata.st | 17 ++++++++++++++---
+ .../unicode/UnicodeDataTemplateController.java | 18 ++++++++++--------
+ 2 files changed, 24 insertions(+), 11 deletions(-)
+
+diff --git a/tool/resources/org/antlr/v4/tool/templates/unicodedata.st b/tool/resources/org/antlr/v4/tool/templates/unicodedata.st
+index 0f22c73..3573873 100644
+--- a/tool/resources/org/antlr/v4/tool/templates/unicodedata.st
++++ b/tool/resources/org/antlr/v4/tool/templates/unicodedata.st
+@@ -1,4 +1,4 @@
+-unicodedata(propertyCodePointRanges, propertyAliases) ::= <<
++unicodedata(propertyCodePointRanges, propertyAliasesA, propertyAliasesB) ::= <<
+ package org.antlr.v4.unicode;
+
+ import java.util.Arrays;
+@@ -15,7 +15,7 @@ import org.antlr.v4.runtime.misc.Interval;
+ */
+ public abstract class UnicodeData {
+ private static final Map\<String, IntervalSet\> propertyCodePointRanges = new HashMap\<\>(<length(propertyCodePointRanges)>);
+- private static final Map\<String, String\> propertyAliases = new HashMap\<\>(<length(propertyAliases)>);
++ private static final Map\<String, String\> propertyAliases = new HashMap\<\>(<length(propertyAliasesA)> + <length(propertyAliasesB)>);
+
+ // Work around Java 64k bytecode method limit by splitting up static
+ // initialization into one method per Unicode property
+@@ -30,9 +30,20 @@ static private void addProperty<i>() {
+ propertyCodePointRanges.put("<k>".toLowerCase(Locale.US), codePointRanges);
+ \}}; separator="\n\n">
+
++ // Property aliases
++ static private void addPropertyAliases1() {
++ <propertyAliasesA.keys:{ k | propertyAliases.put("<k>".toLowerCase(Locale.US), "<propertyAliasesA.(k)>".toLowerCase(Locale.US)); }; separator="\n">
++ }
++
++ // Property aliases
++ static private void addPropertyAliases2() {
++ <propertyAliasesB.keys:{ k | propertyAliases.put("<k>".toLowerCase(Locale.US), "<propertyAliasesB.(k)>".toLowerCase(Locale.US)); }; separator="\n">
++ }
++
+ // Property aliases
+ static private void addPropertyAliases() {
+- <propertyAliases.keys:{ k | propertyAliases.put("<k>".toLowerCase(Locale.US), "<propertyAliases.(k)>".toLowerCase(Locale.US)); }; separator="\n">
++ addPropertyAliases1();
++ addPropertyAliases2();
+ }
+
+ // Put it all together
+diff --git a/tool/src/org/antlr/v4/unicode/UnicodeDataTemplateController.java b/tool/src/org/antlr/v4/unicode/UnicodeDataTemplateController.java
+index da244a3..dc591cb 100644
+--- a/tool/src/org/antlr/v4/unicode/UnicodeDataTemplateController.java
++++ b/tool/src/org/antlr/v4/unicode/UnicodeDataTemplateController.java
+@@ -78,17 +78,19 @@ public abstract class UnicodeDataTemplateController {
+ addTR35ExtendedPictographicPropertyCodesToCodePointRanges(propertyCodePointRanges);
+ addEmojiPresentationPropertyCodesToCodePointRanges(propertyCodePointRanges);
+
+- Map<String, String> propertyAliases = new LinkedHashMap<>();
+- addUnicodeCategoryCodesToNames(propertyAliases);
+- addUnicodeBinaryPropertyCodesToNames(propertyAliases);
+- addUnicodeScriptCodesToNames(propertyAliases);
+- addUnicodeBlocksToNames(propertyAliases);
+- addUnicodeIntPropertyCodesToNames(propertyAliases);
+- propertyAliases.put("EP", "Extended_Pictographic");
++ Map<String, String> propertyAliases1 = new LinkedHashMap<>();
++ Map<String, String> propertyAliases2 = new LinkedHashMap<>();
++ addUnicodeCategoryCodesToNames(propertyAliases1);
++ addUnicodeBinaryPropertyCodesToNames(propertyAliases1);
++ addUnicodeScriptCodesToNames(propertyAliases1);
++ addUnicodeBlocksToNames(propertyAliases2);
++ addUnicodeIntPropertyCodesToNames(propertyAliases2);
++ propertyAliases2.put("EP", "Extended_Pictographic");
+
+ Map<String, Object> properties = new LinkedHashMap<>();
+ properties.put("propertyCodePointRanges", propertyCodePointRanges);
+- properties.put("propertyAliases", propertyAliases);
++ properties.put("propertyAliasesA", propertyAliases1);
++ properties.put("propertyAliasesB", propertyAliases2);
+ return properties;
+ }
+
+--
+2.28.0
+
diff --git a/gnu/packages/patches/java-tunnelvisionlabs-antlr-code-too-large.patch b/gnu/packages/patches/java-tunnelvisionlabs-antlr-code-too-large.patch
new file mode 100644
index 0000000000..7bdf05eb9c
--- /dev/null
+++ b/gnu/packages/patches/java-tunnelvisionlabs-antlr-code-too-large.patch
@@ -0,0 +1,87 @@
+From 56ae699a27eca52cc0bb14cbc9944b62136be52b Mon Sep 17 00:00:00 2001
+From: Julien Lepiller <julien@lepiller.eu>
+Date: Sun, 20 Sep 2020 21:07:29 +0200
+Subject: [PATCH] Separate addPropertyAliases in two methods
+
+The quantity of data used to generate addPropertyAliases creates a big
+method, that is too big for java and results in "error: code too large".
+This is most likely due to added data between the expected version of
+icu and the actual version of icu in Guix.
+---
+ .../org/antlr/v4/tool/templates/unicodedata.st | 15 ++++++++++++---
+ .../unicode/UnicodeDataTemplateController.java | 18 ++++++++++--------
+ 2 files changed, 22 insertions(+), 11 deletions(-)
+
+diff --git a/tool/resources/org/antlr/v4/tool/templates/unicodedata.st b/tool/resources/org/antlr/v4/tool/templates/unicodedata.st
+index f5052b7..125d15b 100644
+--- a/tool/resources/org/antlr/v4/tool/templates/unicodedata.st
++++ b/tool/resources/org/antlr/v4/tool/templates/unicodedata.st
+@@ -1,4 +1,4 @@
+-unicodedata(propertyCodePointRanges, propertyAliases) ::= <<
++unicodedata(propertyCodePointRanges, propertyAliasesA, propertyAliasesB) ::= <<
+ package org.antlr.v4.unicode;
+
+ import java.util.Arrays;
+@@ -17,7 +17,7 @@ public enum UnicodeData {
+ ;
+
+ private static final Map\<String, IntervalSet\> propertyCodePointRanges = new HashMap\<String, IntervalSet\>(<length(propertyCodePointRanges)>);
+- private static final Map\<String, String\> propertyAliases = new HashMap\<String, String\>(<length(propertyAliases)>);
++ private static final Map\<String, String\> propertyAliases = new HashMap\<String, String\>(<length(propertyAliasesA)> + <length(propertyAliasesB)>);
+
+ // Work around Java 64k bytecode method limit by splitting up static
+ // initialization into one method per Unicode property
+@@ -33,8 +33,17 @@ static private void addProperty<i>() {
+ \}}; separator="\n\n">
+
+ // Property aliases
++ static private void addPropertyAliasesA() {
++ <propertyAliasesA.keys:{ k | propertyAliases.put("<k>".toLowerCase(Locale.US), "<propertyAliasesA.(k)>".toLowerCase(Locale.US)); }; separator="\n">
++ }
++
++ static private void addPropertyAliasesB() {
++ <propertyAliasesB.keys:{ k | propertyAliases.put("<k>".toLowerCase(Locale.US), "<propertyAliasesB.(k)>".toLowerCase(Locale.US)); }; separator="\n">
++ }
++
+ static private void addPropertyAliases() {
+- <propertyAliases.keys:{ k | propertyAliases.put("<k>".toLowerCase(Locale.US), "<propertyAliases.(k)>".toLowerCase(Locale.US)); }; separator="\n">
++ addPropertyAliasesA();
++ addPropertyAliasesB();
+ }
+
+ // Put it all together
+diff --git a/tool/src/org/antlr/v4/unicode/UnicodeDataTemplateController.java b/tool/src/org/antlr/v4/unicode/UnicodeDataTemplateController.java
+index 570190c..692cee0 100644
+--- a/tool/src/org/antlr/v4/unicode/UnicodeDataTemplateController.java
++++ b/tool/src/org/antlr/v4/unicode/UnicodeDataTemplateController.java
+@@ -74,17 +74,19 @@ public abstract class UnicodeDataTemplateController {
+ addTR35ExtendedPictographicPropertyCodesToCodePointRanges(propertyCodePointRanges);
+ addEmojiPresentationPropertyCodesToCodePointRanges(propertyCodePointRanges);
+
+- Map<String, String> propertyAliases = new LinkedHashMap<String, String>();
+- addUnicodeCategoryCodesToNames(propertyAliases);
+- addUnicodeBinaryPropertyCodesToNames(propertyAliases);
+- addUnicodeScriptCodesToNames(propertyAliases);
+- addUnicodeBlocksToNames(propertyAliases);
+- addUnicodeIntPropertyCodesToNames(propertyAliases);
+- propertyAliases.put("EP", "Extended_Pictographic");
++ Map<String, String> propertyAliasesA = new LinkedHashMap<String, String>();
++ Map<String, String> propertyAliasesB = new LinkedHashMap<String, String>();
++ addUnicodeCategoryCodesToNames(propertyAliasesA);
++ addUnicodeBinaryPropertyCodesToNames(propertyAliasesA);
++ addUnicodeScriptCodesToNames(propertyAliasesA);
++ addUnicodeBlocksToNames(propertyAliasesB);
++ addUnicodeIntPropertyCodesToNames(propertyAliasesB);
++ propertyAliasesB.put("EP", "Extended_Pictographic");
+
+ Map<String, Object> properties = new LinkedHashMap<String, Object>();
+ properties.put("propertyCodePointRanges", propertyCodePointRanges);
+- properties.put("propertyAliases", propertyAliases);
++ properties.put("propertyAliasesA", propertyAliasesA);
++ properties.put("propertyAliasesB", propertyAliasesB);
+ return properties;
+ }
+
+--
+2.28.0
+
diff --git a/gnu/packages/patches/konversation-Fix-build-with-Qt-5.11.patch b/gnu/packages/patches/konversation-Fix-build-with-Qt-5.11.patch
deleted file mode 100644
index d9d29bbd1a..0000000000
--- a/gnu/packages/patches/konversation-Fix-build-with-Qt-5.11.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-From 4d0036617becc26a76fd021138c98aceec4c7b53 Mon Sep 17 00:00:00 2001
-From: Luca Beltrame <lbeltrame@kde.org>
-Date: Sun, 21 Jul 2019 09:14:32 +0200
-Subject: Fix build with Qt 5.13
-
----
- src/irc/outputfilter.cpp | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/src/irc/outputfilter.cpp b/src/irc/outputfilter.cpp
-index f9e6253..45d11fb 100644
---- a/src/irc/outputfilter.cpp
-+++ b/src/irc/outputfilter.cpp
-@@ -32,6 +32,7 @@
-
- #include <QStringList>
- #include <QFile>
-+#include <QMetaMethod>
- #include <QRegExp>
- #include <QTextCodec>
- #include <QByteArray>
---
-cgit v1.1
-
diff --git a/gnu/packages/patches/libcanberra-wayland-crash.patch b/gnu/packages/patches/libcanberra-wayland-crash.patch
new file mode 100644
index 0000000000..e347436bbe
--- /dev/null
+++ b/gnu/packages/patches/libcanberra-wayland-crash.patch
@@ -0,0 +1,55 @@
+# This patch comes from upstream commit c0620e432650e81062c1967cc669829dbd29b310.
+# gtk: Don't assume all GdkDisplays are GdkX11Displays: broadway/wayland
+
+--- src/canberra-gtk-module.c.orig
++++ src/canberra-gtk-module.c
+@@ -307,6 +307,11 @@ static gint window_get_desktop(GdkDisplay *d, GdkWindow *w) {
+ guchar *data = NULL;
+ gint ret = -1;
+
++#ifdef GDK_IS_X11_DISPLAY
++ if (!GDK_IS_X11_DISPLAY(d))
++ return 0;
++#endif
++
+ if (XGetWindowProperty(GDK_DISPLAY_XDISPLAY(d), GDK_WINDOW_XID(w),
+ gdk_x11_get_xatom_by_name_for_display(d, "_NET_WM_DESKTOP"),
+ 0, G_MAXLONG, False, XA_CARDINAL, &type_return,
+@@ -335,6 +340,11 @@ static gint display_get_desktop(GdkDisplay *d) {
+ guchar *data = NULL;
+ gint ret = -1;
+
++#ifdef GDK_IS_X11_DISPLAY
++ if (!GDK_IS_X11_DISPLAY(d))
++ return 0;
++#endif
++
+ if (XGetWindowProperty(GDK_DISPLAY_XDISPLAY(d), DefaultRootWindow(GDK_DISPLAY_XDISPLAY(d)),
+ gdk_x11_get_xatom_by_name_for_display(d, "_NET_CURRENT_DESKTOP"),
+ 0, G_MAXLONG, False, XA_CARDINAL, &type_return,
+@@ -365,6 +375,11 @@ static gboolean window_is_xembed(GdkDisplay *d, GdkWindow *w) {
+ gboolean ret = FALSE;
+ Atom xembed;
+
++#ifdef GDK_IS_X11_DISPLAY
++ if (!GDK_IS_X11_DISPLAY(d))
++ return FALSE;
++#endif
++
+ /* Gnome Panel applets are XEMBED windows. We need to make sure we
+ * ignore them */
+
+--- src/canberra-gtk.c.orig
++++ src/canberra-gtk.c
+@@ -185,6 +185,11 @@ static gint window_get_desktop(GdkDisplay *d, GdkWindow *w) {
+ guchar *data = NULL;
+ gint ret = -1;
+
++#ifdef GDK_IS_X11_DISPLAY
++ if (!GDK_IS_X11_DISPLAY(d))
++ return 0;
++#endif
++
+ if (XGetWindowProperty(GDK_DISPLAY_XDISPLAY(d), GDK_WINDOW_XID(w),
+ gdk_x11_get_xatom_by_name_for_display(d, "_NET_WM_DESKTOP"),
+ 0, G_MAXLONG, False, XA_CARDINAL, &type_return,
diff --git a/gnu/packages/patches/libcyaml-libyaml-compat.patch b/gnu/packages/patches/libcyaml-libyaml-compat.patch
new file mode 100644
index 0000000000..dcb8cb51b8
--- /dev/null
+++ b/gnu/packages/patches/libcyaml-libyaml-compat.patch
@@ -0,0 +1,51 @@
+Fix build against libyaml 0.2.5.
+
+Taken from upstream:
+https://github.com/tlsa/libcyaml/commit/0e947264b947f51f7ea785068637c4bfce5d4171
+
+diff --git a/test/units/save.c b/test/units/save.c
+--- a/test/units/save.c
++++ b/test/units/save.c
+@@ -3476,7 +3476,7 @@ static bool test_save_sequence_null_values_int(
+ ttest_report_ctx_t *report,
+ const cyaml_config_t *config)
+ {
+- static const unsigned char ref[] =
++ static const unsigned char ref1[] =
+ "---\n"
+ "- 7\n"
+ "- 6\n"
+@@ -3487,6 +3487,18 @@ static bool test_save_sequence_null_values_int(
+ "- \n"
+ "- 0\n"
+ "...\n";
++ /* As of libyaml 0.2.5, trailing spaces are not emitted. */
++ static const unsigned char ref2[] =
++ "---\n"
++ "- 7\n"
++ "- 6\n"
++ "- 5\n"
++ "-\n"
++ "- 3\n"
++ "- 2\n"
++ "-\n"
++ "- 0\n"
++ "...\n";
+ static const int d[] = { 7, 6, 5, 4, 3, 2, 1, 0 };
+ static const int *data[] = { d + 0, d + 1, d + 2, NULL,
+ d + 4, d + 5, NULL, d + 7, };
+@@ -3515,11 +3527,12 @@ static bool test_save_sequence_null_values_int(
+ return ttest_fail(&tc, cyaml_strerror(err));
+ }
+
+- if (len != YAML_LEN(ref) || memcmp(ref, buffer, len) != 0) {
++ if ((len != YAML_LEN(ref1) || memcmp(ref1, buffer, len) != 0) &&
++ (len != YAML_LEN(ref2) || memcmp(ref2, buffer, len) != 0)) {
+ return ttest_fail(&tc, "Bad data:\n"
+ "EXPECTED (%zu):\n\n%.*s\n\n"
+ "GOT (%zu):\n\n%.*s\n",
+- YAML_LEN(ref), YAML_LEN(ref), ref,
++ YAML_LEN(ref1), YAML_LEN(ref1), ref1,
+ len, len, buffer);
+ }
+
diff --git a/gnu/packages/patches/libdrm-realpath-virtio.patch b/gnu/packages/patches/libdrm-realpath-virtio.patch
deleted file mode 100644
index b7d85160b4..0000000000
--- a/gnu/packages/patches/libdrm-realpath-virtio.patch
+++ /dev/null
@@ -1,42 +0,0 @@
-Only check for for relative path on virtio devices. Otherwise it could
-break driver loading in some circumstances, notably the IceCat sandbox.
-
-https://gitlab.freedesktop.org/mesa/drm/-/issues/39
-
-Taken from upstream:
-https://gitlab.freedesktop.org/mesa/drm/-/commit/57df07572ce45a1b60bae6fb89770388d3abd6dd
-
-diff --git a/xf86drm.c b/xf86drm.c
---- a/xf86drm.c
-+++ b/xf86drm.c
-@@ -3103,15 +3103,18 @@ static int drmParseSubsystemType(int maj, int min)
- int subsystem_type;
-
- snprintf(path, sizeof(path), "/sys/dev/char/%d:%d/device", maj, min);
-- if (!realpath(path, real_path))
-- return -errno;
-- snprintf(path, sizeof(path), "%s", real_path);
-
- subsystem_type = get_subsystem_type(path);
-+ /* Try to get the parent (underlying) device type */
- if (subsystem_type == DRM_BUS_VIRTIO) {
-+ /* Assume virtio-pci on error */
-+ if (!realpath(path, real_path))
-+ return DRM_BUS_VIRTIO;
- strncat(path, "/..", PATH_MAX);
- subsystem_type = get_subsystem_type(path);
-- }
-+ if (subsystem_type < 0)
-+ return DRM_BUS_VIRTIO;
-+ }
- return subsystem_type;
- #elif defined(__OpenBSD__) || defined(__DragonFly__) || defined(__FreeBSD__)
- return DRM_BUS_PCI;
-@@ -3920,6 +3923,7 @@ process_device(drmDevicePtr *device, const char *d_name,
-
- switch (subsystem_type) {
- case DRM_BUS_PCI:
-+ case DRM_BUS_VIRTIO:
- return drmProcessPciDevice(device, node, node_type, maj, min,
- fetch_deviceinfo, flags);
- case DRM_BUS_USB:
diff --git a/gnu/packages/patches/liblouisutdml-fix-tests.patch b/gnu/packages/patches/liblouisutdml-fix-tests.patch
deleted file mode 100644
index 08d3db2c21..0000000000
--- a/gnu/packages/patches/liblouisutdml-fix-tests.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-From 52d44cdbc307d4e2ffc3ebe674745eb9d43ec337 Mon Sep 17 00:00:00 2001
-From: Christian Egli <christian.egli@sbs.ch>
-Date: Mon, 10 Aug 2020 16:08:17 +0200
-Subject: [PATCH] Some math over and under tests now actually pass
-
-with the newest liblouis
----
- tests/Makefile.am | 5 -----
- 1 file changed, 5 deletions(-)
-
-diff --git a/tests/Makefile.am b/tests/Makefile.am
-index 157b005..932a5d0 100644
---- a/tests/Makefile.am
-+++ b/tests/Makefile.am
-@@ -321,10 +321,6 @@ XFAIL_TESTS += \
- mathml_nemeth/mover_06.test \
- mathml_nemeth/mover_07.test \
- mathml_nemeth/mover_08.test \
-- mathml_nemeth/mover_09.test \
-- mathml_nemeth/mover_10.test \
-- mathml_nemeth/mover_11.test \
-- mathml_nemeth/mover_12.test \
- mathml_nemeth/mover_13.test \
- mathml_nemeth/mover_14.test \
- mathml_nemeth/mover_15.test \
-@@ -332,7 +328,6 @@ XFAIL_TESTS += \
- mathml_nemeth/munder_01.test \
- mathml_nemeth/munder_02.test \
- mathml_nemeth/munder_03.test \
-- mathml_nemeth/munder_04.test \
- mathml_nemeth/munder_05.test \
- mathml_nemeth/munder_06.test \
- mathml_nemeth/munder_07.test \
diff --git a/gnu/packages/patches/libsndfile-CVE-2017-12562.patch b/gnu/packages/patches/libsndfile-CVE-2017-12562.patch
deleted file mode 100644
index 58cb242b10..0000000000
--- a/gnu/packages/patches/libsndfile-CVE-2017-12562.patch
+++ /dev/null
@@ -1,97 +0,0 @@
-Fix CVE-2017-12562:
-
-https://github.com/erikd/libsndfile/issues/292
-https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-12562
-
-Patch copied from upstream source repository:
-
-https://github.com/erikd/libsndfile/commit/cf7a8182c2642c50f1cf90dddea9ce96a8bad2e8
-
-From cf7a8182c2642c50f1cf90dddea9ce96a8bad2e8 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?J=C3=B6rn=20Heusipp?= <osmanx@problemloesungsmaschine.de>
-Date: Wed, 14 Jun 2017 12:25:40 +0200
-Subject: [PATCH] src/common.c: Fix heap buffer overflows when writing strings
- in binheader
-
-Fixes the following problems:
- 1. Case 's' only enlarges the buffer by 16 bytes instead of size bytes.
- 2. psf_binheader_writef() enlarges the header buffer (if needed) prior to the
- big switch statement by an amount (16 bytes) which is enough for all cases
- where only a single value gets added. Cases 's', 'S', 'p' however
- additionally write an arbitrary length block of data and again enlarge the
- buffer to the required amount. However, the required space calculation does
- not take into account the size of the length field which gets output before
- the data.
- 3. Buffer size requirement calculation in case 'S' does not account for the
- padding byte ("size += (size & 1) ;" happens after the calculation which
- uses "size").
- 4. Case 'S' can overrun the header buffer by 1 byte when no padding is
- involved
- ("memcpy (&(psf->header.ptr [psf->header.indx]), strptr, size + 1) ;" while
- the buffer is only guaranteed to have "size" space available).
- 5. "psf->header.ptr [psf->header.indx] = 0 ;" in case 'S' always writes 1 byte
- beyond the space which is guaranteed to be allocated in the header buffer.
- 6. Case 's' can overrun the provided source string by 1 byte if padding is
- involved ("memcpy (&(psf->header.ptr [psf->header.indx]), strptr, size) ;"
- where "size" is "strlen (strptr) + 1" (which includes the 0 terminator,
- plus optionally another 1 which is padding and not guaranteed to be
- readable via the source string pointer).
-
-Closes: https://github.com/erikd/libsndfile/issues/292
----
- src/common.c | 15 +++++++--------
- 1 file changed, 7 insertions(+), 8 deletions(-)
-
-diff --git a/src/common.c b/src/common.c
-index 1a6204ca..6b2a2ee9 100644
---- a/src/common.c
-+++ b/src/common.c
-@@ -681,16 +681,16 @@ psf_binheader_writef (SF_PRIVATE *psf, const char *format, ...)
- /* Write a C string (guaranteed to have a zero terminator). */
- strptr = va_arg (argptr, char *) ;
- size = strlen (strptr) + 1 ;
-- size += (size & 1) ;
-
-- if (psf->header.indx + (sf_count_t) size >= psf->header.len && psf_bump_header_allocation (psf, 16))
-+ if (psf->header.indx + 4 + (sf_count_t) size + (sf_count_t) (size & 1) > psf->header.len && psf_bump_header_allocation (psf, 4 + size + (size & 1)))
- return count ;
-
- if (psf->rwf_endian == SF_ENDIAN_BIG)
-- header_put_be_int (psf, size) ;
-+ header_put_be_int (psf, size + (size & 1)) ;
- else
-- header_put_le_int (psf, size) ;
-+ header_put_le_int (psf, size + (size & 1)) ;
- memcpy (&(psf->header.ptr [psf->header.indx]), strptr, size) ;
-+ size += (size & 1) ;
- psf->header.indx += size ;
- psf->header.ptr [psf->header.indx - 1] = 0 ;
- count += 4 + size ;
-@@ -703,16 +703,15 @@ psf_binheader_writef (SF_PRIVATE *psf, const char *format, ...)
- */
- strptr = va_arg (argptr, char *) ;
- size = strlen (strptr) ;
-- if (psf->header.indx + (sf_count_t) size > psf->header.len && psf_bump_header_allocation (psf, size))
-+ if (psf->header.indx + 4 + (sf_count_t) size + (sf_count_t) (size & 1) > psf->header.len && psf_bump_header_allocation (psf, 4 + size + (size & 1)))
- return count ;
- if (psf->rwf_endian == SF_ENDIAN_BIG)
- header_put_be_int (psf, size) ;
- else
- header_put_le_int (psf, size) ;
-- memcpy (&(psf->header.ptr [psf->header.indx]), strptr, size + 1) ;
-+ memcpy (&(psf->header.ptr [psf->header.indx]), strptr, size + (size & 1)) ;
- size += (size & 1) ;
- psf->header.indx += size ;
-- psf->header.ptr [psf->header.indx] = 0 ;
- count += 4 + size ;
- break ;
-
-@@ -724,7 +723,7 @@ psf_binheader_writef (SF_PRIVATE *psf, const char *format, ...)
- size = (size & 1) ? size : size + 1 ;
- size = (size > 254) ? 254 : size ;
-
-- if (psf->header.indx + (sf_count_t) size > psf->header.len && psf_bump_header_allocation (psf, size))
-+ if (psf->header.indx + 1 + (sf_count_t) size > psf->header.len && psf_bump_header_allocation (psf, 1 + size))
- return count ;
-
- header_put_byte (psf, size) ;
diff --git a/gnu/packages/patches/libsndfile-CVE-2017-8361-8363-8365.patch b/gnu/packages/patches/libsndfile-CVE-2017-8361-8363-8365.patch
deleted file mode 100644
index 5f63231af0..0000000000
--- a/gnu/packages/patches/libsndfile-CVE-2017-8361-8363-8365.patch
+++ /dev/null
@@ -1,77 +0,0 @@
-Fix CVE-2017-{8361,8363,8365}:
-
-https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-8361
-https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-8363
-https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-8365
-
-Patch copied from upstream source repository:
-
-https://github.com/erikd/libsndfile/commit/fd0484aba8e51d16af1e3a880f9b8b857b385eb3
-
-From fd0484aba8e51d16af1e3a880f9b8b857b385eb3 Mon Sep 17 00:00:00 2001
-From: Erik de Castro Lopo <erikd@mega-nerd.com>
-Date: Wed, 12 Apr 2017 19:45:30 +1000
-Subject: [PATCH] FLAC: Fix a buffer read overrun
-
-Buffer read overrun occurs when reading a FLAC file that switches
-from 2 channels to one channel mid-stream. Only option is to
-abort the read.
-
-Closes: https://github.com/erikd/libsndfile/issues/230
----
- src/common.h | 1 +
- src/flac.c | 13 +++++++++++++
- src/sndfile.c | 1 +
- 3 files changed, 15 insertions(+)
-
-diff --git a/src/common.h b/src/common.h
-index 0bd810c3..e2669b6a 100644
---- a/src/common.h
-+++ b/src/common.h
-@@ -725,6 +725,7 @@ enum
- SFE_FLAC_INIT_DECODER,
- SFE_FLAC_LOST_SYNC,
- SFE_FLAC_BAD_SAMPLE_RATE,
-+ SFE_FLAC_CHANNEL_COUNT_CHANGED,
- SFE_FLAC_UNKOWN_ERROR,
-
- SFE_WVE_NOT_WVE,
-diff --git a/src/flac.c b/src/flac.c
-index 84de0e26..986a7b8f 100644
---- a/src/flac.c
-+++ b/src/flac.c
-@@ -434,6 +434,19 @@ sf_flac_meta_callback (const FLAC__StreamDecoder * UNUSED (decoder), const FLAC_
-
- switch (metadata->type)
- { case FLAC__METADATA_TYPE_STREAMINFO :
-+ if (psf->sf.channels > 0 && psf->sf.channels != (int) metadata->data.stream_info.channels)
-+ { psf_log_printf (psf, "Error: FLAC stream changed from %d to %d channels\n"
-+ "Nothing to be but to error out.\n" ,
-+ psf->sf.channels, metadata->data.stream_info.channels) ;
-+ psf->error = SFE_FLAC_CHANNEL_COUNT_CHANGED ;
-+ return ;
-+ } ;
-+
-+ if (psf->sf.channels > 0 && psf->sf.samplerate != (int) metadata->data.stream_info.sample_rate)
-+ { psf_log_printf (psf, "Warning: FLAC stream changed sample rates from %d to %d.\n"
-+ "Carrying on as if nothing happened.",
-+ psf->sf.samplerate, metadata->data.stream_info.sample_rate) ;
-+ } ;
- psf->sf.channels = metadata->data.stream_info.channels ;
- psf->sf.samplerate = metadata->data.stream_info.sample_rate ;
- psf->sf.frames = metadata->data.stream_info.total_samples ;
-diff --git a/src/sndfile.c b/src/sndfile.c
-index 41875610..e2a87be8 100644
---- a/src/sndfile.c
-+++ b/src/sndfile.c
-@@ -245,6 +245,7 @@ ErrorStruct SndfileErrors [] =
- { SFE_FLAC_INIT_DECODER , "Error : problem with initialization of the flac decoder." },
- { SFE_FLAC_LOST_SYNC , "Error : flac decoder lost sync." },
- { SFE_FLAC_BAD_SAMPLE_RATE, "Error : flac does not support this sample rate." },
-+ { SFE_FLAC_CHANNEL_COUNT_CHANGED, "Error : flac channel changed mid stream." },
- { SFE_FLAC_UNKOWN_ERROR , "Error : unknown error in flac decoder." },
-
- { SFE_WVE_NOT_WVE , "Error : not a WVE file." },
---
-2.12.2
-
diff --git a/gnu/packages/patches/libsndfile-CVE-2017-8362.patch b/gnu/packages/patches/libsndfile-CVE-2017-8362.patch
deleted file mode 100644
index 5fc52a377a..0000000000
--- a/gnu/packages/patches/libsndfile-CVE-2017-8362.patch
+++ /dev/null
@@ -1,61 +0,0 @@
-Fix CVE-2017-8362:
-
-https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-8362
-
-Patch copied from upstream source repository:
-
-https://github.com/erikd/libsndfile/commit/ef1dbb2df1c0e741486646de40bd638a9c4cd808
-
-From ef1dbb2df1c0e741486646de40bd638a9c4cd808 Mon Sep 17 00:00:00 2001
-From: Erik de Castro Lopo <erikd@mega-nerd.com>
-Date: Fri, 14 Apr 2017 15:19:16 +1000
-Subject: [PATCH] src/flac.c: Fix a buffer read overflow
-
-A file (generated by a fuzzer) which increased the number of channels
-from one frame to the next could cause a read beyond the end of the
-buffer provided by libFLAC. Only option is to abort the read.
-
-Closes: https://github.com/erikd/libsndfile/issues/231
----
- src/flac.c | 11 +++++++++--
- 1 file changed, 9 insertions(+), 2 deletions(-)
-
-diff --git a/src/flac.c b/src/flac.c
-index 5a4f8c21..e4f9aaa0 100644
---- a/src/flac.c
-+++ b/src/flac.c
-@@ -169,6 +169,14 @@ flac_buffer_copy (SF_PRIVATE *psf)
- const int32_t* const *buffer = pflac->wbuffer ;
- unsigned i = 0, j, offset, channels, len ;
-
-+ if (psf->sf.channels != (int) frame->header.channels)
-+ { psf_log_printf (psf, "Error: FLAC frame changed from %d to %d channels\n"
-+ "Nothing to do but to error out.\n" ,
-+ psf->sf.channels, frame->header.channels) ;
-+ psf->error = SFE_FLAC_CHANNEL_COUNT_CHANGED ;
-+ return 0 ;
-+ } ;
-+
- /*
- ** frame->header.blocksize is variable and we're using a constant blocksize
- ** of FLAC__MAX_BLOCK_SIZE.
-@@ -202,7 +210,6 @@ flac_buffer_copy (SF_PRIVATE *psf)
- return 0 ;
- } ;
-
--
- len = SF_MIN (pflac->len, frame->header.blocksize) ;
-
- if (pflac->remain % channels != 0)
-@@ -436,7 +443,7 @@ sf_flac_meta_callback (const FLAC__StreamDecoder * UNUSED (decoder), const FLAC_
- { case FLAC__METADATA_TYPE_STREAMINFO :
- if (psf->sf.channels > 0 && psf->sf.channels != (int) metadata->data.stream_info.channels)
- { psf_log_printf (psf, "Error: FLAC stream changed from %d to %d channels\n"
-- "Nothing to be but to error out.\n" ,
-+ "Nothing to do but to error out.\n" ,
- psf->sf.channels, metadata->data.stream_info.channels) ;
- psf->error = SFE_FLAC_CHANNEL_COUNT_CHANGED ;
- return ;
---
-2.12.2
-
diff --git a/gnu/packages/patches/libsndfile-armhf-type-checks.patch b/gnu/packages/patches/libsndfile-armhf-type-checks.patch
deleted file mode 100644
index 7e0c71c3f6..0000000000
--- a/gnu/packages/patches/libsndfile-armhf-type-checks.patch
+++ /dev/null
@@ -1,42 +0,0 @@
-This is a regression in 1.0.28 that causes a test failure on armhf.
-
-Upstream bug URL:
-
-https://github.com/erikd/libsndfile/issues/229
-
-Patch copied from upstream source repository:
-
-https://github.com/erikd/libsndfile/commit/9d470ee5577d3ccedb1c28c7e0a7295ba17feaf5
-
-From 9d470ee5577d3ccedb1c28c7e0a7295ba17feaf5 Mon Sep 17 00:00:00 2001
-From: Erik de Castro Lopo <erikd@mega-nerd.com>
-Date: Sun, 16 Apr 2017 17:54:17 +1000
-Subject: [PATCH] src/rf64.c: Fix varargs related bug
-
-C's <stargs.h> functionality isn't type checked so that passing an
-`sf_count_t` (64 bits) by mistake in place of a `unit32_t` can cause
-errors. This would be fine if it was an error on every architecture
-and platform, but its not. This particular problem only manifested
-on armhf and some other Arm architectures. It was not an issue on
-32 bit x86.
-
-I have now fixed variants of this same bug several times.
-
-Closes: https://github.com/erikd/libsndfile/issues/229
----
- src/rf64.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/rf64.c b/src/rf64.c
-index b3d637f..02dd904 100644
---- a/src/rf64.c
-+++ b/src/rf64.c
-@@ -742,7 +742,7 @@ rf64_write_header (SF_PRIVATE *psf, int calc_length)
-
- pad_size = psf->dataoffset - 16 - psf->header.indx ;
- if (pad_size >= 0)
-- psf_binheader_writef (psf, "m4z", PAD_MARKER, pad_size, make_size_t (pad_size)) ;
-+ psf_binheader_writef (psf, "m4z", PAD_MARKER, (unsigned int) pad_size, make_size_t (pad_size)) ;
-
- if (wpriv->rf64_downgrade && (psf->filelength < RIFF_DOWNGRADE_BYTES))
- psf_binheader_writef (psf, "tm8", data_MARKER, psf->datalength) ;
diff --git a/gnu/packages/patches/lsh-fix-x11-forwarding.patch b/gnu/packages/patches/lsh-fix-x11-forwarding.patch
new file mode 100644
index 0000000000..fd56a5bafd
--- /dev/null
+++ b/gnu/packages/patches/lsh-fix-x11-forwarding.patch
@@ -0,0 +1,20 @@
+--- a/src/server_x11.c 2016-08-01 11:58:54.714647794 +0200
++++ b/src/server_x11.c 2016-08-01 11:58:46.606563478 +0200
+@@ -151,7 +151,7 @@ DEFINE_COMMAND(open_forwarded_x11)
+ #define X11_MIN_DISPLAY 10
+ #define X11_MAX_DISPLAY 1000
+
+-/* FIXME: Create the /tmp/.X11-unix directory, if needed. Figure out
++/* FIXME: Figure out
+ * if and how we should use /tmp/.X17-lock. Consider using display
+ * "unix:17" instead of just ":17".
+ */
+@@ -253,6 +253,7 @@ open_x11_socket(struct ssh_channel *chan
+
+ old_umask = umask(0077);
+
++ mkdir(X11_SOCKET_DIR, S_IRWXU | S_IRWXG | S_IRWXO | S_ISVTX);
+ old_cd = lsh_pushd(X11_SOCKET_DIR, &dir, 0, 0);
+ if (old_cd < 0)
+ {
+
diff --git a/gnu/packages/patches/mailutils-fix-uninitialized-variable.patch b/gnu/packages/patches/mailutils-fix-uninitialized-variable.patch
new file mode 100644
index 0000000000..2a1c81648b
--- /dev/null
+++ b/gnu/packages/patches/mailutils-fix-uninitialized-variable.patch
@@ -0,0 +1,26 @@
+From 5ca6382fe8adb5bc436a6d873c8b86c69d5abfd1 Mon Sep 17 00:00:00 2001
+From: Sergey Poznyakoff <gray@gnu.org>
+Date: Sun, 13 Sep 2020 14:43:46 +0300
+Subject: [PATCH] Fix uninitialized variable in readmsg
+
+* readmsg/readmsg.c (main): Initialize weedc.
+---
+ readmsg/readmsg.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/readmsg/readmsg.c b/readmsg/readmsg.c
+index 9f305bb9c..3a9f420db 100644
+--- a/readmsg/readmsg.c
++++ b/readmsg/readmsg.c
+@@ -466,7 +466,7 @@ main (int argc, char **argv)
+ mu_mailbox_t mbox = NULL;
+ struct mu_wordsplit ws;
+ char **weedv;
+- int weedc;
++ int weedc = 0;
+ int unix_header = 0;
+
+ /* Native Language Support */
+--
+2.28.0
+
diff --git a/gnu/packages/patches/mariadb-client-test-32bit.patch b/gnu/packages/patches/mariadb-client-test-32bit.patch
deleted file mode 100644
index 02017e324d..0000000000
--- a/gnu/packages/patches/mariadb-client-test-32bit.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-From 93efa48a7b972fc463406603574a4d508eefe792 Mon Sep 17 00:00:00 2001
-From: Sergei Golubchik <serg@mariadb.org>
-Date: Sun, 13 May 2018 18:50:21 +0200
-Subject: [PATCH] fix failing main.mysql_client_test test on 32bit
-
-in `ulonglong=ulong*uint` multiplication
-is done in ulong, wrapping around on 32bit.
-
-This became visible after C/C changed the
-default charset to utf8, thus changing
-mbmaxlem from 1 to 3.
----
- tests/mysql_client_fw.c | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/tests/mysql_client_fw.c b/tests/mysql_client_fw.c
-index f69eb28a2871..4d036887629a 100644
---- a/tests/mysql_client_fw.c
-+++ b/tests/mysql_client_fw.c
-@@ -768,7 +768,7 @@ static void do_verify_prepare_field(MYSQL_RES *result,
- {
- MYSQL_FIELD *field;
- CHARSET_INFO *cs;
-- ulonglong expected_field_length;
-+ ulonglong expected_field_length= length;
-
- if (!(field= mysql_fetch_field_direct(result, no)))
- {
-@@ -777,7 +777,7 @@ static void do_verify_prepare_field(MYSQL_RES *result,
- }
- cs= get_charset(field->charsetnr, 0);
- DIE_UNLESS(cs);
-- if ((expected_field_length= length * cs->mbmaxlen) > UINT_MAX32)
-+ if ((expected_field_length*= cs->mbmaxlen) > UINT_MAX32)
- expected_field_length= UINT_MAX32;
- if (!opt_silent)
- {
diff --git a/gnu/packages/patches/nginx-socket-cloexec.patch b/gnu/packages/patches/nginx-socket-cloexec.patch
new file mode 100644
index 0000000000..985ce573b5
--- /dev/null
+++ b/gnu/packages/patches/nginx-socket-cloexec.patch
@@ -0,0 +1,185 @@
+diff --git a/auto/unix b/auto/unix
+index 10835f6c..b5b33bb3 100644
+--- a/auto/unix
++++ b/auto/unix
+@@ -990,3 +990,27 @@ ngx_feature_test='struct addrinfo *res;
+ if (getaddrinfo("localhost", NULL, NULL, &res) != 0) return 1;
+ freeaddrinfo(res)'
+ . auto/feature
++
++ngx_feature="SOCK_CLOEXEC support"
++ngx_feature_name="NGX_HAVE_SOCKET_CLOEXEC"
++ngx_feature_run=no
++ngx_feature_incs="#include <sys/types.h>
++ #include <sys/socket.h>"
++ngx_feature_path=
++ngx_feature_libs=
++ngx_feature_test="int fd;
++ fd = socket(AF_INET, SOCK_STREAM | SOCK_CLOEXEC, 0);"
++. auto/feature
++
++ngx_feature="FD_CLOEXEC support"
++ngx_feature_name="NGX_HAVE_FD_CLOEXEC"
++ngx_feature_run=no
++ngx_feature_incs="#include <sys/types.h>
++ #include <sys/socket.h>
++ #include <fcntl.h>"
++ngx_feature_path=
++ngx_feature_libs=
++ngx_feature_test="int fd;
++ fd = socket(AF_INET, SOCK_STREAM, 0);
++ fcntl(fd, F_SETFD, FD_CLOEXEC);"
++. auto/feature
+diff --git a/src/core/ngx_resolver.c b/src/core/ngx_resolver.c
+index cd55520c..438e0806 100644
+--- a/src/core/ngx_resolver.c
++++ b/src/core/ngx_resolver.c
+@@ -4466,8 +4466,14 @@ ngx_tcp_connect(ngx_resolver_connection_t *rec)
+ ngx_event_t *rev, *wev;
+ ngx_connection_t *c;
+
++#if (NGX_HAVE_SOCKET_CLOEXEC)
++ s = ngx_socket(rec->sockaddr->sa_family, SOCK_STREAM | SOCK_CLOEXEC, 0);
++
++#else
+ s = ngx_socket(rec->sockaddr->sa_family, SOCK_STREAM, 0);
+
++#endif
++
+ ngx_log_debug1(NGX_LOG_DEBUG_EVENT, &rec->log, 0, "TCP socket %d", s);
+
+ if (s == (ngx_socket_t) -1) {
+@@ -4494,6 +4500,15 @@ ngx_tcp_connect(ngx_resolver_connection_t *rec)
+ goto failed;
+ }
+
++#if (NGX_HAVE_FD_CLOEXEC)
++ if (ngx_cloexec(s) == -1) {
++ ngx_log_error(NGX_LOG_ALERT, &rec->log, ngx_socket_errno,
++ ngx_cloexec_n " failed");
++
++ goto failed;
++ }
++#endif
++
+ rev = c->read;
+ wev = c->write;
+
+diff --git a/src/event/ngx_event.h b/src/event/ngx_event.h
+index 19fec68..8c2f01a 100644
+--- a/src/event/ngx_event.h
++++ b/src/event/ngx_event.h
+@@ -73,6 +73,9 @@ struct ngx_event_s {
+ /* to test on worker exit */
+ unsigned channel:1;
+ unsigned resolver:1;
++#if (HAVE_SOCKET_CLOEXEC_PATCH)
++ unsigned skip_socket_leak_check:1;
++#endif
+
+ unsigned cancelable:1;
+
+diff --git a/src/event/ngx_event_accept.c b/src/event/ngx_event_accept.c
+index 77563709..5827b9d0 100644
+--- a/src/event/ngx_event_accept.c
++++ b/src/event/ngx_event_accept.c
+@@ -62,7 +62,9 @@ ngx_event_accept(ngx_event_t *ev)
+
+ #if (NGX_HAVE_ACCEPT4)
+ if (use_accept4) {
+- s = accept4(lc->fd, &sa.sockaddr, &socklen, SOCK_NONBLOCK);
++ s = accept4(lc->fd, &sa.sockaddr, &socklen,
++ SOCK_NONBLOCK | SOCK_CLOEXEC);
++
+ } else {
+ s = accept(lc->fd, &sa.sockaddr, &socklen);
+ }
+@@ -202,6 +204,16 @@ ngx_event_accept(ngx_event_t *ev)
+ ngx_close_accepted_connection(c);
+ return;
+ }
++
++#if (NGX_HAVE_FD_CLOEXEC)
++ if (ngx_cloexec(s) == -1) {
++ ngx_log_error(NGX_LOG_ALERT, ev->log, ngx_socket_errno,
++ ngx_cloexec_n " failed");
++ ngx_close_accepted_connection(c);
++ return;
++ }
++#endif
++
+ }
+ }
+
+diff --git a/src/event/ngx_event_connect.c b/src/event/ngx_event_connect.c
+index c5bb8068..cf33b1d2 100644
+--- a/src/event/ngx_event_connect.c
++++ b/src/event/ngx_event_connect.c
+@@ -38,8 +38,15 @@ ngx_event_connect_peer(ngx_peer_connection_t *pc)
+
+ type = (pc->type ? pc->type : SOCK_STREAM);
+
++#if (NGX_HAVE_SOCKET_CLOEXEC)
++ s = ngx_socket(pc->sockaddr->sa_family, type | SOCK_CLOEXEC, 0);
++
++#else
+ s = ngx_socket(pc->sockaddr->sa_family, type, 0);
+
++#endif
++
++
+ ngx_log_debug2(NGX_LOG_DEBUG_EVENT, pc->log, 0, "%s socket %d",
+ (type == SOCK_STREAM) ? "stream" : "dgram", s);
+
+@@ -80,6 +87,15 @@ ngx_event_connect_peer(ngx_peer_connection_t *pc)
+ goto failed;
+ }
+
++#if (NGX_HAVE_FD_CLOEXEC)
++ if (ngx_cloexec(s) == -1) {
++ ngx_log_error(NGX_LOG_ALERT, pc->log, ngx_socket_errno,
++ ngx_cloexec_n " failed");
++
++ goto failed;
++ }
++#endif
++
+ if (pc->local) {
+
+ #if (NGX_HAVE_TRANSPARENT_PROXY)
+diff --git a/src/os/unix/ngx_process_cycle.c b/src/os/unix/ngx_process_cycle.c
+index c4376a5..48e8fa8 100644
+--- a/src/os/unix/ngx_process_cycle.c
++++ b/src/os/unix/ngx_process_cycle.c
+@@ -1032,6 +1032,9 @@ ngx_worker_process_exit(ngx_cycle_t *cycle)
+ for (i = 0; i < cycle->connection_n; i++) {
+ if (c[i].fd != -1
+ && c[i].read
++#if (HAVE_SOCKET_CLOEXEC_PATCH)
++ && !c[i].read->skip_socket_leak_check
++#endif
+ && !c[i].read->accept
+ && !c[i].read->channel
+ && !c[i].read->resolver)
+diff --git a/src/os/unix/ngx_socket.h b/src/os/unix/ngx_socket.h
+index fcc51533..d1eebf47 100644
+--- a/src/os/unix/ngx_socket.h
++++ b/src/os/unix/ngx_socket.h
+@@ -38,6 +38,17 @@ int ngx_blocking(ngx_socket_t s);
+
+ #endif
+
++#if (NGX_HAVE_FD_CLOEXEC)
++
++#define ngx_cloexec(s) fcntl(s, F_SETFD, FD_CLOEXEC)
++#define ngx_cloexec_n "fcntl(FD_CLOEXEC)"
++
++/* at least FD_CLOEXEC is required to ensure connection fd is closed
++ * after execve */
++#define HAVE_SOCKET_CLOEXEC_PATCH 1
++
++#endif
++
+ int ngx_tcp_nopush(ngx_socket_t s);
+ int ngx_tcp_push(ngx_socket_t s);
+
diff --git a/gnu/packages/patches/nss-pkgconfig.patch b/gnu/packages/patches/nss-3.56-pkgconfig.patch
index e3145aa4cf..91b6aef604 100644
--- a/gnu/packages/patches/nss-pkgconfig.patch
+++ b/gnu/packages/patches/nss-3.56-pkgconfig.patch
@@ -7,7 +7,7 @@ Modifications:
Remove optional patching in nss/Makefile.
Include -L$libdir in output from "nss-config --libs".
-Later adapted to apply cleanly to nss-3.21.
+Later adapted to apply cleanly to nss-3.53.
--- nss-3.21/nss/config/Makefile
+++ nss-3.21/nss/config/Makefile
@@ -217,9 +217,12 @@ Later adapted to apply cleanly to nss-3.21.
+
--- nss-3.21/nss/manifest.mn
+++ nss-3.21/nss/manifest.mn
-@@ -10,4 +10,4 @@
-
+@@ -10,7 +10,7 @@
+
RELEASE = nss
-
+
-DIRS = coreconf lib cmd cpputil gtests
+DIRS = coreconf lib cmd cpputil gtests config
+
+ lib: coreconf
+ cmd: lib
diff --git a/gnu/packages/patches/picard-fix-id3-rename-test.patch b/gnu/packages/patches/picard-fix-id3-rename-test.patch
new file mode 100644
index 0000000000..3c4fa63c84
--- /dev/null
+++ b/gnu/packages/patches/picard-fix-id3-rename-test.patch
@@ -0,0 +1,11 @@
+Index: b/test/formats/test_id3.py
+===================================================================
+--- a/test/formats/test_id3.py
++++ b/test/formats/test_id3.py
+@@ -266,5 +266,5 @@
+ def test_rename_txxx_tags(self):
+ file_path = os.path.join('test', 'data', 'test-id3-rename-tags.mp3')
+- filename = self.copy_file_tmp(file_path, 'mp3')
++ filename = self.copy_file_tmp(file_path, '.mp3')
+ raw_metadata = load_raw(filename)
+ self.assertIn('TXXX:Artists', raw_metadata)
diff --git a/gnu/packages/patches/python-gst-fix-build-with-python-3.8.patch b/gnu/packages/patches/python-gst-fix-build-with-python-3.8.patch
deleted file mode 100644
index affa0e1317..0000000000
--- a/gnu/packages/patches/python-gst-fix-build-with-python-3.8.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-Fix build with Python 3.8 by also checking for python-3.X-embed.pc. Since
-Python 3.8 the normal checks don't include the Python libraries anymore and
-linking of the gst-python module would fail.
-
-See also https://github.com/mesonbuild/meson/issues/5629
-Fixes https://gitlab.freedesktop.org/gstreamer/gst-python/issues/28
-
-Patch based on upstream commit:
-
-https://gitlab.freedesktop.org/gstreamer/gst-python/-/commit/10707f437f2fc3632067c6a0efa4432f7ebaf362
-
-diff --git a/meson.build b/meson.build
-index 5f13b48..d7c7e66 100644
---- a/meson.build
-+++ b/meson.build
-@@ -23,7 +23,17 @@ pygobject_dep = dependency('pygobject-3.0', fallback: ['pygobject', 'pygobject_d
-
- pymod = import('python')
- python = pymod.find_installation(get_option('python'))
--python_dep = python.dependency(required : true)
-+pythonver = python.language_version()
-+if pythonver.version_compare('<3.0')
-+ error('Python2 is not supported anymore, please port your code to python3 (@0@ specified)'.format(python.language_version()))
-+endif
-+
-+# Workaround for https://github.com/mesonbuild/meson/issues/5629
-+# https://gitlab.freedesktop.org/gstreamer/gst-python/issues/28
-+python_dep = dependency('python-@0@-embed'.format(pythonver), version: '>=3', required: false)
-+if not python_dep.found()
-+ python_dep = python.dependency(required : true)
-+endif
-
- python_abi_flags = python.get_variable('ABIFLAGS', '')
- pylib_loc = get_option('libpython-dir')
---
-2.26.2
diff --git a/gnu/packages/patches/qemu-build-info-manual.patch b/gnu/packages/patches/qemu-build-info-manual.patch
new file mode 100644
index 0000000000..d57b26ea00
--- /dev/null
+++ b/gnu/packages/patches/qemu-build-info-manual.patch
@@ -0,0 +1,139 @@
+From 07303a0a4daa83a0555ac4abad7a5d65584307ad Mon Sep 17 00:00:00 2001
+From: Maxim Cournoyer <maxim.cournoyer@gmail.com>
+Date: Thu, 17 Sep 2020 13:28:19 -0400
+Subject: [PATCH] build: Build and install the info manual.
+
+Take advantage of the Sphinx texinfo backend to generate a QEMU info
+manual. The texinfo format allows for more structure and info readers
+provide more advanced navigation capabilities compared to manpages
+readers.
+
+* configure (infodir): Add the --infodir option, which allows
+configuring the directory under which the info manuals are installed.
+* docs/index.rst: Include the top level documents to prevent
+warnings (treated as errors by sphinx-build).
+* Makefile (sphinxdocs-info, $(MANUAL_BUILDDIR)/QEMU.texi)): New targets.
+(info): Depend on sphinxdocs-info.
+(install-doc): Install the info manual.
+---
+ Makefile | 13 +++++++++++--
+ configure | 7 +++++++
+ docs/index.rst | 2 ++
+ 3 files changed, 20 insertions(+), 2 deletions(-)
+
+diff --git a/Makefile b/Makefile
+index 13dd708c..da78612d 100644
+--- a/Makefile
++++ b/Makefile
+@@ -864,12 +864,14 @@ endef
+ # Note that we deliberately do not install the "devel" manual: it is
+ # for QEMU developers, and not interesting to our users.
+ .PHONY: install-sphinxdocs
+-install-sphinxdocs: sphinxdocs
++install-sphinxdocs: sphinxdocs sphinxdocs-info
+ $(call install-manual,interop)
+ $(call install-manual,specs)
+ $(call install-manual,system)
+ $(call install-manual,tools)
+ $(call install-manual,user)
++ $(INSTALL_DIR) "$(DESTDIR)$(infodir)"
++ $(INSTALL_DATA) $(MANUAL_BUILDDIR)/QEMU.info "$(DESTDIR)$(infodir)"
+
+ install-doc: $(DOCS) install-sphinxdocs
+ $(INSTALL_DIR) "$(DESTDIR)$(qemu_docdir)"
+@@ -1067,6 +1069,13 @@ sphinxdocs: $(MANUAL_BUILDDIR)/devel/index.html \
+ $(MANUAL_BUILDDIR)/tools/index.html \
+ $(MANUAL_BUILDDIR)/user/index.html
+
++# Build the complete info manual.
++.PHONE: sphinxdocs-info
++sphinxdocs-info: $(MANUAL_BUILDDIR)/QEMU.info
++
++$(MANUAL_BUILDDIR)/QEMU.texi: $(call manual-deps,*) $(wildcard $(SRC_PATH)/docs/*.rst)
++ $(call build-manual,,texinfo)
++
+ # Canned command to build a single manual
+ # Arguments: $1 = manual name, $2 = Sphinx builder ('html' or 'man')
+ # Note the use of different doctree for each (manual, builder) tuple;
+@@ -1126,7 +1135,7 @@ docs/interop/qemu-ga-qapi.texi: qga/qapi-generated/qga-qapi-doc.texi
+ @cp -p $< $@
+
+ html: docs/interop/qemu-qmp-ref.html docs/interop/qemu-ga-ref.html sphinxdocs
+-info: docs/interop/qemu-qmp-ref.info docs/interop/qemu-ga-ref.info
++info: docs/interop/qemu-qmp-ref.info docs/interop/qemu-ga-ref.info sphinxdocs-info
+ pdf: docs/interop/qemu-qmp-ref.pdf docs/interop/qemu-ga-ref.pdf
+ txt: docs/interop/qemu-qmp-ref.txt docs/interop/qemu-ga-ref.txt
+
+diff --git a/configure b/configure
+index 2acc4d14..3691bd2e 100755
+--- a/configure
++++ b/configure
+@@ -415,6 +415,7 @@ LDFLAGS_SHARED="-shared"
+ modules="no"
+ module_upgrades="no"
+ prefix="/usr/local"
++infodir="\${prefix}/share/info"
+ mandir="\${prefix}/share/man"
+ datadir="\${prefix}/share"
+ firmwarepath="\${prefix}/share/qemu-firmware"
+@@ -987,6 +988,7 @@ if test "$mingw32" = "yes" ; then
+ LIBS="-liberty $LIBS"
+ fi
+ prefix="c:/Program Files/QEMU"
++ infodir="\${prefix}"
+ mandir="\${prefix}"
+ datadir="\${prefix}"
+ qemu_docdir="\${prefix}"
+@@ -1087,6 +1089,8 @@ for opt do
+ static="yes"
+ QEMU_PKG_CONFIG_FLAGS="--static $QEMU_PKG_CONFIG_FLAGS"
+ ;;
++ --infodir=*) infodir="$optarg"
++ ;;
+ --mandir=*) mandir="$optarg"
+ ;;
+ --bindir=*) bindir="$optarg"
+@@ -1780,6 +1784,7 @@ Advanced options (experts only):
+ --smbd=SMBD use specified smbd [$smbd]
+ --with-git=GIT use specified git [$git]
+ --static enable static build [$static]
++ --infodir=PATH install info manual in PATH
+ --mandir=PATH install man pages in PATH
+ --datadir=PATH install firmware in PATH$confsuffix
+ --docdir=PATH install documentation in PATH$confsuffix
+@@ -6836,6 +6841,7 @@ echo "include directory $(eval echo $includedir)"
+ echo "config directory $(eval echo $sysconfdir)"
+ if test "$mingw32" = "no" ; then
+ echo "local state directory $(eval echo $local_statedir)"
++echo "Info manual directory $(eval echo $infodir)"
+ echo "Manual directory $(eval echo $mandir)"
+ echo "ELF interp prefix $interp_prefix"
+ else
+@@ -7059,6 +7065,7 @@ echo "bindir=$bindir" >> $config_host_mak
+ echo "libdir=$libdir" >> $config_host_mak
+ echo "libexecdir=$libexecdir" >> $config_host_mak
+ echo "includedir=$includedir" >> $config_host_mak
++echo "infodir=$infodir" >> $config_host_mak
+ echo "mandir=$mandir" >> $config_host_mak
+ echo "sysconfdir=$sysconfdir" >> $config_host_mak
+ echo "qemu_confdir=$qemu_confdir" >> $config_host_mak
+diff --git a/docs/index.rst b/docs/index.rst
+index 763e3d04..4f155b51 100644
+--- a/docs/index.rst
++++ b/docs/index.rst
+@@ -9,6 +9,7 @@ Welcome to QEMU's documentation!
+ .. toctree::
+ :maxdepth: 2
+ :caption: Contents:
++ :glob:
+
+ system/index
+ user/index
+@@ -16,3 +17,4 @@ Welcome to QEMU's documentation!
+ interop/index
+ specs/index
+ devel/index
++ *
+--
+2.28.0
+
diff --git a/gnu/packages/patches/samba-fix-fcntl-hint-detection.patch b/gnu/packages/patches/samba-fix-fcntl-hint-detection.patch
new file mode 100644
index 0000000000..b56c628537
--- /dev/null
+++ b/gnu/packages/patches/samba-fix-fcntl-hint-detection.patch
@@ -0,0 +1,55 @@
+From 454ccd986b61799908a6898a55d0480911f15306 Mon Sep 17 00:00:00 2001
+From: Ralph Boehme <slow@samba.org>
+Date: Mon, 21 Sep 2020 07:48:43 +0200
+Subject: [PATCH] s3: fix fcntl waf configure check
+
+RN: Fix fcntl waf configure check
+BUG: https://bugzilla.samba.org/show_bug.cgi?id=14503
+
+Signed-off-by: Ralph Boehme <slow@samba.org>
+Reviewed-by: Volker Lendecke <vl@samba.org>
+
+Autobuild-User(master): Volker Lendecke <vl@samba.org>
+Autobuild-Date(master): Mon Sep 21 07:26:54 UTC 2020 on sn-devel-184
+---
+ source3/wscript | 10 +++++-----
+ 1 file changed, 5 insertions(+), 5 deletions(-)
+
+diff --git a/source3/wscript b/source3/wscript
+index 840ed430c0f..d3ef346eecd 100644
+--- a/source3/wscript
++++ b/source3/wscript
+@@ -1244,7 +1244,7 @@ err:
+
+ int main(void)
+ {
+- uint64_t *hint, get_hint;
++ uint64_t hint, get_hint;
+ int fd;
+
+ fd = open(DATA, O_RDONLY | O_CREAT | O_EXCL);
+@@ -1252,8 +1252,8 @@ int main(void)
+ goto err;
+ }
+
+- *hint = RWH_WRITE_LIFE_SHORT;
+- int ret = fcntl(fd, F_SET_RW_HINT, hint);
++ hint = RWH_WRITE_LIFE_SHORT;
++ int ret = fcntl(fd, F_SET_RW_HINT, &hint);
+ if (ret == -1) {
+ goto err;
+ }
+@@ -1267,8 +1267,8 @@ int main(void)
+ goto err;
+ }
+
+- *hint = RWH_WRITE_LIFE_EXTREME;
+- ret = fcntl(fd, F_SET_FILE_RW_HINT, hint);
++ hint = RWH_WRITE_LIFE_EXTREME;
++ ret = fcntl(fd, F_SET_FILE_RW_HINT, &hint);
+ if (ret == -1) {
+ goto err;
+ }
+--
+2.28.0
+
diff --git a/gnu/packages/patches/sbcl-graph-asdf-definitions.patch b/gnu/packages/patches/sbcl-graph-asdf-definitions.patch
deleted file mode 100644
index ec17949675..0000000000
--- a/gnu/packages/patches/sbcl-graph-asdf-definitions.patch
+++ /dev/null
@@ -1,70 +0,0 @@
-commit 52ebece1243ae6900e414b6248b5145a28348eef
-Author: Guillaume Le Vaillant <glv@posteo.net>
-Date: Fri Oct 18 15:41:23 2019 +0200
-
- Use basic ASDF system definitions instead of package-inferred-system
-
-diff --git a/graph.asd b/graph.asd
-index 193b6e3..56afc8f 100644
---- a/graph.asd
-+++ b/graph.asd
-@@ -3,12 +3,10 @@
- :version "0.0.0"
- :author ("Eric Schulte <schulte.eric@gmail.com>" "Thomas Dye")
- :licence "GPL V3"
-- :class :package-inferred-system
-- :defsystem-depends-on (:asdf-package-system)
-+ :in-order-to ((test-op (test-op graph-test)))
- :depends-on (alexandria
- metabang-bind
- named-readtables
- curry-compose-reader-macros
-- graph/graph))
--
--(register-system-packages "femlisp-matlisp" '(:fl.matlisp))
-+ cl-heap)
-+ :components ((:file "graph")))
-diff --git a/graph-dot.asd b/graph-dot.asd
-new file mode 100644
-index 0000000..12aec7e
---- /dev/null
-+++ b/graph-dot.asd
-@@ -0,0 +1,8 @@
-+(defsystem :graph-dot
-+ :depends-on (alexandria
-+ metabang-bind
-+ named-readtables
-+ curry-compose-reader-macros
-+ cl-ppcre
-+ graph)
-+ :components ((:file "dot")))
-diff --git a/graph-json.asd b/graph-json.asd
-new file mode 100644
-index 0000000..e7d091f
---- /dev/null
-+++ b/graph-json.asd
-@@ -0,0 +1,8 @@
-+(defsystem :graph-json
-+ :depends-on (alexandria
-+ metabang-bind
-+ named-readtables
-+ curry-compose-reader-macros
-+ yason
-+ graph)
-+ :components ((:file "json")))
-diff --git a/graph-test.asd b/graph-test.asd
-new file mode 100644
-index 0000000..1e811e1
---- /dev/null
-+++ b/graph-test.asd
-@@ -0,0 +1,10 @@
-+(defsystem :graph-test
-+ :depends-on (alexandria
-+ metabang-bind
-+ named-readtables
-+ curry-compose-reader-macros
-+ graph
-+ stefil)
-+ :perform (test-op (o s)
-+ (uiop:symbol-call :graph/test 'test))
-+ :components ((:file "test")))
diff --git a/gnu/packages/patches/sunxi-tools-remove-sys-io.patch b/gnu/packages/patches/sunxi-tools-remove-sys-io.patch
new file mode 100644
index 0000000000..fc1e5ea28d
--- /dev/null
+++ b/gnu/packages/patches/sunxi-tools-remove-sys-io.patch
@@ -0,0 +1,52 @@
+From 783cbd59fcf086a9aaf603271823fb4ca71f0c55 Mon Sep 17 00:00:00 2001
+From: Danny Milosavljevic <dannym@scratchpost.org>
+Date: Thu, 8 Oct 2020 23:01:05 +0200
+Subject: [PATCH] meminfo: Replace sys/io.h by direct register accesses.
+See: https://github.com/linux-sunxi/sunxi-tools/pull/144
+
+Signed-off-by: Danny Milosavljevic <dannym@scratchpost.org>
+---
+ meminfo.c | 9 ++++-----
+ 1 file changed, 4 insertions(+), 5 deletions(-)
+
+diff --git a/meminfo.c b/meminfo.c
+index 0b0ff23..3b3a5df 100644
+--- a/meminfo.c
++++ b/meminfo.c
+@@ -22,7 +22,6 @@
+ #include <sys/mman.h>
+ #include <stdint.h>
+ #include <errno.h>
+-#include <sys/io.h>
+ #include <stdbool.h>
+
+ #include "common.h"
+@@ -74,24 +73,24 @@ static enum sunxi_soc_version soc_version;
+ unsigned int
+ sunxi_io_read(void *base, int offset)
+ {
+- return inl((unsigned long) (base + offset));
++ return *(volatile unsigned int*) (base + offset);
+ }
+
+ void
+ sunxi_io_write(void *base, int offset, unsigned int value)
+ {
+- outl(value, (unsigned long) (base + offset));
++ *(volatile unsigned int*) (base + offset) = value;
+ }
+
+ void
+ sunxi_io_mask(void *base, int offset, unsigned int value, unsigned int mask)
+ {
+- unsigned int tmp = inl((unsigned long) (base + offset));
++ unsigned int tmp = sunxi_io_read(base, offset);
+
+ tmp &= ~mask;
+ tmp |= value & mask;
+
+- outl(tmp, (unsigned long) (base + offset));
++ sunxi_io_write(base, offset, tmp);
+ }
+
+
diff --git a/gnu/packages/patches/unison-fix-ocaml-4.08.patch b/gnu/packages/patches/unison-fix-ocaml-4.08.patch
new file mode 100644
index 0000000000..811f590721
--- /dev/null
+++ b/gnu/packages/patches/unison-fix-ocaml-4.08.patch
@@ -0,0 +1,81 @@
+This patch is taken from the opam repository:
+https://github.com/ocaml/opam-repository/blob/master/packages/unison/unison.2.51.2/files/ocaml48.patch
+
+It fixes compatibility with changes introduced in OCaml 4.08.
+
+diff --git a/src/Makefile.OCaml b/src/Makefile.OCaml
+index 7cefa2e..378fc8b 100644
+--- a/src/Makefile.OCaml
++++ b/src/Makefile.OCaml
+@@ -272,7 +272,7 @@ endif
+
+ # Gtk GUI
+ ifeq ($(UISTYLE), gtk)
+- CAMLFLAGS+=-I +lablgtk
++ CAMLFLAGS+=-I $(LABLGTKLIB)
+ OCAMLOBJS+=pixmaps.cmo uigtk.cmo linkgtk.cmo
+ OCAMLLIBS+=lablgtk.cma
+ endif
+@@ -282,7 +282,7 @@ OCAMLFIND := $(shell command -v ocamlfind 2> /dev/null)
+
+ ifeq ($(UISTYLE), gtk2)
+ ifndef OCAMLFIND
+- CAMLFLAGS+=-I +lablgtk2
++ CAMLFLAGS+=-I $(LABLGTK2LIB)
+ else
+ CAMLFLAGS+=$(shell $(OCAMLFIND) query -i-format lablgtk2 )
+ endif
+diff --git a/src/files.ml b/src/files.ml
+index 5ff1881..1d1fbcc 100644
+--- a/src/files.ml
++++ b/src/files.ml
+@@ -734,7 +734,7 @@ let get_files_in_directory dir =
+ with End_of_file ->
+ dirh.System.closedir ()
+ end;
+- Sort.list (<) !files
++ List.sort String.compare !files
+
+ let ls dir pattern =
+ Util.convertUnixErrorsToTransient
+diff --git a/src/recon.ml b/src/recon.ml
+index 2c619bb..2412c18 100644
+--- a/src/recon.ml
++++ b/src/recon.ml
+@@ -661,8 +661,8 @@ let rec reconcile
+
+ (* Sorts the paths so that they will be displayed in order *)
+ let sortPaths pathUpdatesList =
+- Sort.list
+- (fun (p1, _) (p2, _) -> Path.compare p1 p2 <= 0)
++ List.sort
++ Path.compare
+ pathUpdatesList
+
+ let rec enterPath p1 p2 t =
+diff --git a/src/system/system_generic.ml b/src/system/system_generic.ml
+index 453027d..c2288b8 100755
+--- a/src/system/system_generic.ml
++++ b/src/system/system_generic.ml
+@@ -47,7 +47,7 @@ let open_out_gen = open_out_gen
+ let chmod = Unix.chmod
+ let chown = Unix.chown
+ let utimes = Unix.utimes
+-let link = Unix.link
++let link s d = Unix.link s d
+ let openfile = Unix.openfile
+ let opendir f =
+ let h = Unix.opendir f in
+diff --git a/src/uigtk2.ml b/src/uigtk2.ml
+index fbc5d8f..4e82cc2 100644
+--- a/src/uigtk2.ml
++++ b/src/uigtk2.ml
+@@ -94,7 +94,7 @@ let icon =
+ let icon =
+ let p = GdkPixbuf.create ~width:48 ~height:48 ~has_alpha:true () in
+ Gpointer.blit
+- (Gpointer.region_of_string Pixmaps.icon_data) (GdkPixbuf.get_pixels p);
++ (Gpointer.region_of_bytes Pixmaps.icon_data) (GdkPixbuf.get_pixels p);
+ p
+
+ let leftPtrWatch =
diff --git a/gnu/packages/patches/xpra-4.0.4-norequests.patch b/gnu/packages/patches/xpra-4.0.4-norequests.patch
new file mode 100644
index 0000000000..e545be7f1d
--- /dev/null
+++ b/gnu/packages/patches/xpra-4.0.4-norequests.patch
@@ -0,0 +1,39 @@
+Remove python-requests dependency, r27626 upstream.
+
+--- a/xpra/net/websockets/common.py (revision 27625)
++++ b/xpra/net/websockets/common.py (revision 27626)
+@@ -7,7 +7,6 @@
+ import uuid
+ from hashlib import sha1
+ from base64 import b64encode
+-from requests.structures import CaseInsensitiveDict
+
+ from xpra.os_util import strtobytes, bytestostr, monotonic_time
+ from xpra.log import Logger
+@@ -77,7 +76,7 @@
+ for line in lines:
+ parts = line.split(b": ", 1)
+ if len(parts)==2:
+- headers[parts[0]] = parts[1]
++ headers[parts[0].lower()] = parts[1]
+ return headers
+
+ def verify_response_headers(headers, key):
+@@ -84,14 +83,13 @@
+ log("verify_response_headers(%s)", headers)
+ if not headers:
+ raise Exception("no http headers found in response")
+- headers = CaseInsensitiveDict(headers)
+- upgrade = headers.get(b"Upgrade", b"")
++ upgrade = headers.get(b"upgrade", b"")
+ if upgrade!=b"websocket":
+ raise Exception("invalid http upgrade: '%s'" % upgrade)
+- protocol = headers.get(b"Sec-WebSocket-Protocol", b"")
++ protocol = headers.get(b"sec-websocket-protocol", b"")
+ if protocol!=b"binary":
+ raise Exception("invalid websocket protocol: '%s'" % protocol)
+- accept_key = headers.get(b"Sec-WebSocket-Accept", b"")
++ accept_key = headers.get(b"sec-websocket-accept", b"")
+ if not accept_key:
+ raise Exception("websocket accept key is missing")
+ expected_key = make_websocket_accept_hash(key)
diff --git a/gnu/packages/patchutils.scm b/gnu/packages/patchutils.scm
index c26977be1f..12dd472c68 100644
--- a/gnu/packages/patchutils.scm
+++ b/gnu/packages/patchutils.scm
@@ -321,7 +321,7 @@ you to figure out what is going on in that merge you keep avoiding.")
(define-public patchwork
(package
(name "patchwork")
- (version "2.1.5")
+ (version "2.2.2")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -330,7 +330,7 @@ you to figure out what is going on in that merge you keep avoiding.")
(file-name (git-file-name name version))
(sha256
(base32
- "1n4hfwlgmw6mj5kp261zfx47mgb0l7g2yzl1rf0rnm8x69lr3as6"))))
+ "1cr3lhm589zhvcgfm8gni036866k2livq1rcxbnigjxlw9p5znaf"))))
(build-system python-build-system)
(arguments
`(;; TODO: Tests require a running database
@@ -396,23 +396,10 @@ application = get_wsgi_application()\n") port)))))
(install-file file (string-append out "/bin")))
(list
(string-append out-site-packages
- "patchwork/bin/pwclient")
- (string-append out-site-packages
"patchwork/bin/parsemail.sh")
(string-append out-site-packages
"patchwork/bin/parsemail-batch.sh")))
- ;; Delete the symlink to pwclient, and replace it with the
- ;; actual file, as this can cause issues when serving the file
- ;; from a webserver.
- (let ((template-pwclient (string-append
- out-site-packages
- "patchwork/templates/patchwork/pwclient")))
- (delete-file template-pwclient)
- (copy-file (string-append out-site-packages
- "patchwork/bin/pwclient")
- template-pwclient))
-
;; Collect the static assets, this includes JavaScript, CSS and
;; fonts. This is a standard Django process when running a
;; Django application for regular use, and includes assets for
@@ -467,7 +454,7 @@ if __name__ == \"__main__\":
(inputs
`(("python-wrapper" ,python-wrapper)))
(propagated-inputs
- `(("python-django" ,python-django)
+ `(("python-django" ,python-django-2.2)
;; TODO: Make this configurable
("python-psycopg2" ,python-psycopg2)
("python-mysqlclient" ,python-mysqlclient)
diff --git a/gnu/packages/pciutils.scm b/gnu/packages/pciutils.scm
index c992988437..a5ed121c85 100644
--- a/gnu/packages/pciutils.scm
+++ b/gnu/packages/pciutils.scm
@@ -36,7 +36,7 @@
(define-public pciutils
(package
(name "pciutils")
- (version "3.6.4")
+ (version "3.7.0")
(source (origin
(method url-fetch)
(uri (string-append
@@ -45,7 +45,7 @@
(patches (search-patches "pciutils-hurd-configure.patch"))
(sha256
(base32
- "0mb0f2phdcmp4kfiqsszn2k6nlln0w160ffzrjjv4bbfjwrgfzzn"))))
+ "1ss0rnfsx8gvqjxaji4mvbhf9xyih4cadmgadbwwv8mnx1xvjh4x"))))
(build-system gnu-build-system)
(arguments
`(#:phases
diff --git a/gnu/packages/pdf.scm b/gnu/packages/pdf.scm
index 4c11111323..c9cce98e7f 100644
--- a/gnu/packages/pdf.scm
+++ b/gnu/packages/pdf.scm
@@ -18,6 +18,7 @@
;;; Copyright © 2019 Ben Sturmfels <ben@sturm.com.au>
;;; Copyright © 2019,2020 Hartmut Goebel <h.goebel@crazy-compilers.com>
;;; Copyright © 2020 Nicolas Goaziou <mail@nicolasgoaziou.fr>
+;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -580,7 +581,7 @@ by using the poppler rendering engine.")
(define-public zathura
(package
(name "zathura")
- (version "0.4.5")
+ (version "0.4.7")
(source (origin
(method url-fetch)
(uri
@@ -588,7 +589,7 @@ by using the poppler rendering engine.")
version ".tar.xz"))
(sha256
(base32
- "0b3nrcvykkpv2vm99kijnic2gpfzva520bsjlihaxandzfm9ff8c"))))
+ "1rx1fk9s556fk59lmqgvhwrmv71ashh89bx9adjq46wq5gzdn4p0"))))
(native-inputs `(("pkg-config" ,pkg-config)
("gettext" ,gettext-minimal)
("glib:bin" ,glib "bin")
diff --git a/gnu/packages/perl-check.scm b/gnu/packages/perl-check.scm
index 0aaae65573..cc7736ce18 100644
--- a/gnu/packages/perl-check.scm
+++ b/gnu/packages/perl-check.scm
@@ -1442,15 +1442,14 @@ from boxed blocks of test code.")
(define-public perl-test-utf8
(package
(name "perl-test-utf8")
- (version "1.01")
+ (version "1.02")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://cpan/authors/id/M/MA/MARKF/"
"Test-utf8-" version ".tar.gz"))
(sha256
- (base32
- "0yhvf735v334qqvp9zg7i66qyk6r4cbk5s2psv93d3fdd4bindzg"))))
+ (base32 "1mwbdgbbzm54v7wdw3l80bk73lr4z9i8274zlhjhp0s0b6fg10nz"))))
(build-system perl-build-system)
(native-inputs
`(("perl-module-install" ,perl-module-install)))
diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm
index bd6e746b67..ad84d63785 100644
--- a/gnu/packages/perl.scm
+++ b/gnu/packages/perl.scm
@@ -1,6 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017 Ludovic Courtès <ludo@gnu.org>
-;;; Copyright © 2013, 2019 Andreas Enge <andreas@enge.fr>
+;;; Copyright © 2013, 2019, 2020 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2015, 2016, 2017, 2019 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2015, 2016, 2017, 2019, 2020 Eric Bavier <bavier@posteo.net>
;;; Copyright © 2015 Eric Dvorsak <eric@dvorsak.fr>
@@ -27,6 +27,7 @@
;;; Copyright © 2020 Vincent Legoll <vincent.legoll@gmail.com>
;;; Copyright © 2020 Paul Garlick <pgarlick@tourbillion-technology.com>
;;; Copyright © 2020 Nicolas Goaziou <mail@nicolasgoaziou.fr>
+;;; Copyright © 2020 Malte Frank Gerdes <malte.f.gerdes@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -74,7 +75,8 @@
#:use-module (gnu packages sdl)
#:use-module (gnu packages textutils)
#:use-module (gnu packages video)
- #:use-module (gnu packages web))
+ #:use-module (gnu packages web)
+ #:use-module (gnu packages xorg))
;;;
;;; Please: Try to add new module packages in alphabetic order.
@@ -454,14 +456,14 @@ list manipulation routines.")
(define-public perl-async-interrupt
(package
(name "perl-async-interrupt")
- (version "1.25")
+ (version "1.26")
(source (origin
(method url-fetch)
(uri (string-append "mirror://cpan/authors/id/M/ML/MLEHMANN/"
"Async-Interrupt-" version ".tar.gz"))
(sha256
(base32
- "0jh94wj1b6a0cnni8prsb59g5lak5rfj2fw5ng96291zmz2yqp1w"))))
+ "0nq8wqy0gsnwhiw23wsp1dmgzzbf2q1asi85yd0d7cmg4haxsmib"))))
(build-system perl-build-system)
(native-inputs
`(("perl-canary-stability" ,perl-canary-stability)))
@@ -1961,7 +1963,7 @@ the caller.")
(synopsis "Extract data from Macintosh BinHex files")
(description
"BinHex is a format for transporting files safely through electronic
-mail, as short-lined, 7-bit, semi-compressed data streams. Ths module
+mail, as short-lined, 7-bit, semi-compressed data streams. This module
provides a means of converting those data streams back into into binary
data.")
(license license:perl-license)))
@@ -2211,7 +2213,7 @@ Password Generator\".")
(define-public perl-crypt-rijndael
(package
(name "perl-crypt-rijndael")
- (version "1.14")
+ (version "1.15")
(source
(origin
(method url-fetch)
@@ -2219,8 +2221,7 @@ Password Generator\".")
"mirror://cpan/authors/id/L/LE/LEONT/Crypt-Rijndael-"
version ".tar.gz"))
(sha256
- (base32
- "03l5nwq97a8q9na4dpd4m3r7vrwpranx225vw8xm40w7zvgw6lb4"))))
+ (base32 "0qs1b6ma4sj0ip5d8544fzgc1bbankc4qlmznp8hay8dk5arp650"))))
(build-system perl-build-system)
(home-page "https://metacpan.org/release/Crypt-Rijndael")
(synopsis "Crypt::CBC compliant Rijndael encryption module")
@@ -3812,24 +3813,15 @@ of the input. MD4 is described in RFC 1320.")
(define-public perl-digest-md5
(package
(name "perl-digest-md5")
- (version "2.55")
+ (version "2.58")
(source
(origin
(method url-fetch)
- (uri (string-append "mirror://cpan/authors/id/G/GA/GAAS/Digest-MD5-"
+ (uri (string-append "mirror://cpan/authors/id/T/TO/TODDR/Digest-MD5-"
version ".tar.gz"))
(sha256
- (base32
- "0g0fklbrm2krswc1xhp4iwn1dhqq71fqh2p5wm8xj9a4s6i9ic83"))))
+ (base32 "057psy6k7im0pr3344ny6k5rsnbqj8aizkmwgw53kbbngabh20kx"))))
(build-system perl-build-system)
- (arguments
- `(#:phases
- (modify-phases %standard-phases
- (add-after 'build 'set-permissions
- (lambda _
- ;; Make MD5.so read-write so it can be stripped.
- (chmod "blib/arch/auto/Digest/MD5/MD5.so" #o755)
- #t)))))
(home-page "https://metacpan.org/release/Digest-MD5")
(synopsis "Perl interface to the MD-5 algorithm")
(description
@@ -7870,6 +7862,64 @@ technology to store hierarchical information such as links to other
documents within a single file.")
(license (package-license perl))))
+(define-public perl-opengl
+ (package
+ (name "perl-opengl")
+ (version "0.70")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append
+ "mirror://cpan/authors/id/C/CH/CHM/OpenGL-"
+ version
+ ".tar.gz"))
+ (sha256
+ (base32
+ "1q3lz168q081iwl9jg21fbzhp9la79gav9mv6nmh2jab83s2l3mj"))))
+ (build-system perl-build-system)
+ (inputs `(("freeglut" ,freeglut)
+ ("libxi" ,libxi)
+ ("libxmu" ,libxmu)))
+ (arguments
+ '(#:tests? #f ; test.pl fails with our empty glversion.txt, while
+ ; the package still seems to work on the examples
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'configure 'glversion
+ ;; Building utils/glversion.txt fails, and is probably
+ ;; dependent on the graphics card in the build system.
+ ;; Replace it by a content-free file; while this breaks
+ ;; the tests, the examples in the examples/ subdirectory
+ ;; can be run.
+ (lambda _
+ (substitute* "Makefile.PL"
+ (("unlink") "# unlink") ; prevent utils/glversion.txt
+ ; from being deleted once...
+ (("\\.\"\\$make_ver clean\"") "")) ; ...and twice...
+ (substitute* "utils/Makefile"
+ (("all: glversion.txt") "all: ")) ; ...and thrice.
+ (call-with-output-file "utils/glversion.txt"
+ (lambda (port)
+ (display (string-append "FREEGLUT=\nGLUT=\nVERSION=\n"
+ "VENDOR=\nRENDERER=\n"
+ "EXTENSIONS=\n")
+ port)))
+ #t))
+ (add-before 'configure 'fix-library-flags
+ (lambda* (#:key inputs #:allow-other-keys)
+ (substitute* "Makefile.PL"
+ (("-L/usr/local/freeglut/lib")
+ (string-append "-L" (assoc-ref inputs "freeglut") "/lib\n"
+ "-L" (assoc-ref inputs "glu") "/lib\n"
+ "-L" (assoc-ref inputs "mesa") "/lib\n")))
+ #t)))))
+ (home-page "https://metacpan.org/release/OpenGL")
+ (synopsis
+ "Perl bindings to the OpenGL API, GLU, and GLUT/FreeGLUT")
+ (description "The package provides Perl bindings to OpenGL, GLU
+and FreeGLUT.")
+ (license (package-license perl))))
+
(define-public perl-package-anon
(package
(name "perl-package-anon")
@@ -8555,14 +8605,14 @@ and @code{deserialize_regexp}.")
(define-public perl-role-tiny-2
(package
(inherit perl-role-tiny)
- (version "2.001001")
+ (version "2.001004")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://cpan/authors/id/H/HA/HAARG/"
"Role-Tiny-" version ".tar.gz"))
(sha256
- (base32 "16yryg3cr14xw201gm8k8ci00hs60fy8lk2xhnaqa85n5m68flk8"))))))
+ (base32 "11qn516352yhi794www3ykwa9xv2gxpfnhn9jcn10x0ahl95gflj"))))))
(define-public perl-safe-isa
(package
diff --git a/gnu/packages/photo.scm b/gnu/packages/photo.scm
index 5f97d7e214..dbe18a025a 100644
--- a/gnu/packages/photo.scm
+++ b/gnu/packages/photo.scm
@@ -4,7 +4,7 @@
;;; Copyright © 2015, 2017 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2016, 2017, 2018, 2019 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2017 Roel Janssen <roel@gnu.org>
-;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
+;;; Copyright © 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018 Leo Famulari <leo@famulari.name>
;;; Copyright © 2020 Sebastian Schott <sschott@mailbox.org>
;;; Copyright © 2020 Vincent Legoll <vincent.legoll@gmail.com>
@@ -238,14 +238,14 @@ data as produced by digital cameras.")
(define-public libgphoto2
(package
(name "libgphoto2")
- (version "2.5.25")
+ (version "2.5.26")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/gphoto/libgphoto/"
version "/libgphoto2-" version ".tar.bz2"))
(sha256
(base32
- "0fkz2rx7xlmr6zl6f56hhxps6bx16dwcw5pyd8c2icf273s9h3kw"))))
+ "1m5wxap3x9z6x8s2gj3sw9lqwlmbgz00dv6z3h3qk15prfizwh3p"))))
(build-system gnu-build-system)
(native-inputs `(("pkg-config" ,pkg-config)))
(inputs
@@ -269,14 +269,14 @@ from digital cameras.")
(define-public gphoto2
(package
(name "gphoto2")
- (version "2.5.23")
+ (version "2.5.26")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/gphoto/gphoto/" version
"/gphoto2-" version ".tar.bz2"))
(sha256
(base32
- "1laqwhxr0xhbykmp0dhd3j4rr2lhj5y228s31afnqxp700hhk1yz"))))
+ "0bxbcn31xalsvjp8fra324hf2105y3ps7zlyfz11v71j0lxj2lvn"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)))
diff --git a/gnu/packages/php.scm b/gnu/packages/php.scm
index 18fc9f1b2c..9e34811969 100644
--- a/gnu/packages/php.scm
+++ b/gnu/packages/php.scm
@@ -60,7 +60,7 @@
(define-public php
(package
(name "php")
- (version "7.4.10")
+ (version "7.4.11")
(home-page "https://secure.php.net/")
(source (origin
(method url-fetch)
@@ -68,7 +68,7 @@
"php-" version ".tar.xz"))
(sha256
(base32
- "045h9zb0mw369n35gd4mp5yhwh62akp0s43vg255i122n400pnf2"))
+ "1knnw9b5hkxmisxclw384ic6bcihihhii51q0fyva8cwkdd6fcax"))
(modules '((guix build utils)))
(snippet
'(with-directory-excursion "ext"
@@ -311,7 +311,11 @@
;; ("ISO-8859-1"=>"UTF-8") unknown error.
"ext/standard/tests/file/bug43008.phpt"
;; Table data not created in sqlite(?).
- "ext/pdo_sqlite/tests/bug_42589.phpt"))
+ "ext/pdo_sqlite/tests/bug_42589.phpt"
+
+ ;; This tests whether microseconds ‘differ enough’ and
+ ;; fails inconsistently on ‘fast’ machines.
+ "ext/date/tests/bug73837.phpt"))
;; Skip tests requiring network access.
(setenv "SKIP_ONLINE_TESTS" "1")
diff --git a/gnu/packages/popt.scm b/gnu/packages/popt.scm
index df80f12077..11d2b1827d 100644
--- a/gnu/packages/popt.scm
+++ b/gnu/packages/popt.scm
@@ -59,27 +59,23 @@ line syntax.")
(define-public popt
(package
(name "popt")
- (version "1.16")
+ (version "1.18")
(source (origin
(method url-fetch)
- ;; The original rpm5.org domain is not accessible since
- ;; 2019-06-13, so use Debians copy of the tarball.
- (uri (string-append "https://deb.debian.org/debian/pool/main"
- "/p/popt/popt_" version ".orig.tar.gz"))
- ;; Ensure the file name stays the same to prevent rebuilds.
- (file-name (string-append "popt-" version ".tar.gz"))
+ (uri (string-append "http://ftp.rpm.org/popt/releases"
+ "/popt-1.x/popt-" version ".tar.gz"))
(sha256
(base32
- "1j2c61nn2n351nhj4d25mnf3vpiddcykq005w2h6kw79dwlysa77"))))
+ "1lf5zlj5rbg6s4bww7hbhpca97prgprnarx978vcwa0bl81vqnai"))))
(build-system gnu-build-system)
(arguments
'(#:phases
(modify-phases %standard-phases
(add-before 'configure 'patch-test
(lambda _
- (substitute* "test-poptrc.in"
+ (substitute* "tests/test-poptrc.in"
(("/bin/echo") (which "echo")))
- (substitute* "testit.sh" ; don't expect old libtool names
+ (substitute* "tests/testit.sh" ;don't expect old libtool names
(("lt-test1") "test1"))
#t)))))
(home-page "http://rpm5.org/files/popt/")
diff --git a/gnu/packages/pretty-print.scm b/gnu/packages/pretty-print.scm
index eeae472f08..b247cf21e1 100644
--- a/gnu/packages/pretty-print.scm
+++ b/gnu/packages/pretty-print.scm
@@ -1,8 +1,8 @@
;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2016, 2019 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2016, 2019, 2020 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com>
-;;; Copyright © 2017 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2017, 2020 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2017, 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2019 Meiyo Peng <meiyo@riseup.net>
;;; Copyright © 2020 Paul Garlick <pgarlick@tourbillion-technology.com>
@@ -190,6 +190,19 @@ to @code{IOStreams}.")
;; The library is bsd-2, but documentation and tests include other licenses.
(license (list bsd-2 bsd-3 psfl))))
+(define-public fmt-6
+ (package
+ (inherit fmt)
+ (name "fmt")
+ (version "6.2.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "https://github.com/fmtlib/fmt/releases/download/"
+ version "/fmt-" version ".zip"))
+ (sha256
+ (base32 "06l8g59frbsbwj15kg6x2bbn6p8yidh6wzsigdhbdjncvm1agzll"))))))
+
(define-public source-highlight
(package
(name "source-highlight")
@@ -217,6 +230,18 @@ to @code{IOStreams}.")
#:parallel-tests? #f ;There appear to be race conditions
#:phases
(modify-phases %standard-phases
+ ,@(if (%current-target-system)
+ ;; 'doc/Makefile.am' tries to run stuff even when
+ ;; cross-compiling. Explicitly skip it.
+ ;; XXX: Inline this on next rebuild cycle.
+ `((add-before 'build 'skip-doc-directory
+ (lambda _
+ (substitute* "Makefile"
+ (("^SUBDIRS = (.*) doc(.*)$" _ before after)
+ (string-append "SUBDIRS = " before
+ " " after "\n")))
+ #t)))
+ '())
(add-before 'check 'patch-test-files
(lambda _
;; Unpatch shebangs in test input so that source-highlight
diff --git a/gnu/packages/prolog.scm b/gnu/packages/prolog.scm
index 86b4bd2107..324b089f4b 100644
--- a/gnu/packages/prolog.scm
+++ b/gnu/packages/prolog.scm
@@ -86,7 +86,7 @@ manner. It also features an interactive interpreter.")
(define-public swi-prolog
(package
(name "swi-prolog")
- (version "8.3.5")
+ (version "8.3.9")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -96,7 +96,7 @@ manner. It also features an interactive interpreter.")
(file-name (git-file-name name version))
(sha256
(base32
- "14dga0gja45x1717fp1bwgf96nzc0zgb8x1lha0pb46jg1raa2da"))))
+ "0ixb8pc5s7q8q0njs8is1clpvik6jhhdcwnys7m9rpwdzgi10sjz"))))
(build-system cmake-build-system)
(arguments
`(#:parallel-build? #t
@@ -125,7 +125,7 @@ manner. It also features an interactive interpreter.")
("texinfo" ,texinfo)
("libarchive" ,libarchive)
("libunwind" ,libunwind)
- ("libjpeg", libjpeg-turbo)
+ ("libjpeg" ,libjpeg-turbo)
("libxft" ,libxft)
("fontconfig" ,fontconfig)
("perl" ,perl)
diff --git a/gnu/packages/protobuf.scm b/gnu/packages/protobuf.scm
index 63450c7d10..4e748e1f1d 100644
--- a/gnu/packages/protobuf.scm
+++ b/gnu/packages/protobuf.scm
@@ -162,7 +162,7 @@ internal RPC protocols and file formats.")
(define-public protobuf-c
(package
(name "protobuf-c")
- (version "1.3.2")
+ (version "1.3.3")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/protobuf-c/protobuf-c/"
@@ -170,7 +170,7 @@ internal RPC protocols and file formats.")
"/protobuf-c-" version ".tar.gz"))
(sha256
(base32
- "0x4ybd9rfd878p2imz0hb8zxfd7l60vbdw7cg84dnysr9kqm3wjk"))))
+ "0y3yaanq97si7iyld06p8w20m0shpj7sf4xwzbhhvijhxw36d592"))))
(build-system gnu-build-system)
(inputs `(("protobuf" ,protobuf)))
(native-inputs `(("pkg-config" ,pkg-config)))
@@ -233,18 +233,17 @@ mechanism for serializing structured data.")
(define-public python-pure-protobuf
(package
(name "python-pure-protobuf")
- (version "2.0.0")
+ (version "2.0.1")
(source
(origin
- ;; pypi is broken; has no tests
+ ;; The PyPI tarball is broken: it has no tests.
(method git-fetch)
(uri (git-reference
(url "https://github.com/eigenein/protobuf")
(commit version)))
(file-name (git-file-name name version))
(sha256
- (base32
- "0lgs99dpfyckz6spib419sl7jpdk2g54pcw0yg59gdcsd1f5zqgz"))))
+ (base32 "15dp5pvazd0jx4wzzh79080ah7hkpd3axh40al9vhzs2hf3v90hx"))))
(build-system python-build-system)
(native-inputs
`(("python-flake8" ,python-flake8)
diff --git a/gnu/packages/pulseaudio.scm b/gnu/packages/pulseaudio.scm
index 9522d023ad..d9e9488484 100644
--- a/gnu/packages/pulseaudio.scm
+++ b/gnu/packages/pulseaudio.scm
@@ -13,6 +13,7 @@
;;; Copyright © 2020 Amin Bandali <bandali@gnu.org>
;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de>
;;; Copyright © 2020 Pierre Neidhardt <mail@ambrevar.xyz>
+;;; Copyright © 2020 Marius Bakke <marius@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -70,25 +71,41 @@
(define-public libsndfile
(package
(name "libsndfile")
- (version "1.0.28")
+ (version "1.0.30")
(source (origin
(method url-fetch)
- (uri (string-append "http://www.mega-nerd.com/libsndfile/files/libsndfile-"
- version ".tar.gz"))
- (patches (search-patches "libsndfile-armhf-type-checks.patch"
- "libsndfile-CVE-2017-8361-8363-8365.patch"
- "libsndfile-CVE-2017-8362.patch"
- "libsndfile-CVE-2017-12562.patch"))
+ (uri (string-append "https://github.com/erikd/libsndfile"
+ "/releases/download/v" version
+ "/libsndfile-" version ".tar.bz2"))
(sha256
(base32
- "1afzm7jx34jhqn32clc5xghyjglccam2728yxlx37yj2y0lkkwqz"))))
+ "06k1wj3lwm7vf21s8yqy51k6nrkn9z610bj1gxb618ag5hq77wlx"))
+ (modules '((ice-9 textual-ports) (guix build utils)))
+ (snippet
+ '(begin
+ ;; Remove carriage returns (CRLF) to prevent bogus
+ ;; errors from bash like "$'\r': command not found".
+ (let ((data (call-with-input-file
+ "tests/pedantic-header-test.sh.in"
+ (lambda (port)
+ (string-join
+ (string-split (get-string-all port)
+ #\return))))))
+ (call-with-output-file "tests/pedantic-header-test.sh.in"
+ (lambda (port) (format port data))))
+
+ ;; While at it, fix hard coded executable name.
+ (substitute* "tests/test_wrapper.sh.in"
+ (("^/usr/bin/env") "env"))
+ #t))))
(build-system gnu-build-system)
(inputs
`(("libvorbis" ,libvorbis)
("libogg" ,libogg)
("flac" ,flac)))
(native-inputs
- `(("pkg-config" ,pkg-config)))
+ `(("pkg-config" ,pkg-config)
+ ("python" ,python)))
(home-page "http://www.mega-nerd.com/libsndfile/")
(synopsis "Reading and writing files containing sampled sound")
(description
@@ -224,7 +241,7 @@ rates.")
("eudev" ,eudev))) ;for the detection of hardware audio devices
(native-inputs
- `(("check" ,check)
+ `(("check" ,check-0.14)
("gettext" ,gettext-minimal)
("glib:bin" ,glib "bin")
("m4" ,m4)
diff --git a/gnu/packages/python-check.scm b/gnu/packages/python-check.scm
index c0de32b207..498f495584 100644
--- a/gnu/packages/python-check.scm
+++ b/gnu/packages/python-check.scm
@@ -2,7 +2,7 @@
;;; Copyright © 2019 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2019, 2020 Efraim Flashner <efraim@flashner.co.il>
-;;; Copyright © 2019 Maxim Cournoyer <maxim.cournoyer@gmail.com>
+;;; Copyright © 2019, 2020 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2019 Hartmut Goebel <h.goebel@crazy-compilers.com>
;;; Copyright © 2020 Julien Lepiller <julien@lepiller.eu>
;;; Copyright © 2020 Marius Bakke <mbakke@fastmail.com>
@@ -852,6 +852,26 @@ also ensuring that the notebooks are running without errors.")
variables in the @file{pytest.ini} file.")
(license license:expat)))
+(define-public python-pyux
+ (package
+ (name "python-pyux")
+ (version "0.0.6")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "pyux" version))
+ (sha256
+ (base32
+ "1i17xh4dy238ibrjdgh8vn78fk5q6dj37mcznpvdfzidj57js7ca"))))
+ (build-system python-build-system)
+ (arguments
+ `(#:tests? #f)) ;the mini test suite fails
+ (home-page "https://github.com/farizrahman4u/pyux")
+ (synopsis "Utility to check API integrity in Python libraries")
+ (description "The pyux utility allows to detect API changes in Python
+libraries.")
+ (license license:expat)))
+
(define-public python-codacy-coverage
(package
(name "python-codacy-coverage")
@@ -999,3 +1019,28 @@ any Python VM with basically no runtime overhead.")
;; Foundation License version 2: stdlib-samples/*, mypyc/lib-rt/pythonsupport.h and
;; mypyc/lib-rt/getargs.c
(license (list license:expat license:psfl))))
+
+(define-public python-robber
+ (package
+ (name "python-robber")
+ (version "1.1.5")
+ (source (origin
+ (method url-fetch)
+ (uri (pypi-uri "robber" version))
+ (sha256
+ (base32
+ "0xp5csgv2g9q38hscml6bc5i1nm4xy5lzqqiimm2drxsf0hw2nq5"))))
+ (build-system python-build-system)
+ ;; There are no tests in the tarball downloaded from PyPI.
+ ;; The last version tagged in Github (0.1.0) is older than the one on PyPI.
+ ;; Reported upstream: <https://github.com/vesln/robber.py/issues/20>.
+ (arguments '(#:tests? #f))
+ (propagated-inputs
+ `(("python-mock" ,python-mock)
+ ("python-termcolor" ,python-termcolor)))
+ ;; URL of the fork used to generate the package available on PyPI.
+ (home-page "https://github.com/EastAgile/robber.py")
+ (synopsis "Test-driven development (TDD) assertion library for Python")
+ (description "Robber is a Python assertion library for test-driven and
+behavior-driven development (TDD and BDD).")
+ (license license:expat)))
diff --git a/gnu/packages/python-crypto.scm b/gnu/packages/python-crypto.scm
index 22b1a1ebe3..228dd594b1 100644
--- a/gnu/packages/python-crypto.scm
+++ b/gnu/packages/python-crypto.scm
@@ -61,6 +61,7 @@
#:use-module (gnu packages swig)
#:use-module (gnu packages time)
#:use-module (gnu packages tls)
+ #:use-module (gnu packages xml)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (srfi srfi-1))
@@ -91,14 +92,14 @@ Python. It does not bind to libotr.")
(define-public python-base58
(package
(name "python-base58")
- (version "1.0.3")
+ (version "2.0.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "base58" version))
(sha256
(base32
- "0q1yr0n5jaf17xq98m7dma6z4rh8p19ch55l1s09gi3rk5ckqycs"))))
+ "0yfaqp76kbdb62hikr5n4jkkfjfmii89grwfy6sw3fmsv5hrap1n"))))
(build-system python-build-system)
(native-inputs
`(("python-pyhamcrest" ,python-pyhamcrest)))
@@ -141,13 +142,13 @@ Password Scheme\"} by Niels Provos and David Mazieres.")
(define-public python-passlib
(package
(name "python-passlib")
- (version "1.7.2")
+ (version "1.7.4")
(source
(origin
(method url-fetch)
(uri (pypi-uri "passlib" version))
(sha256
- (base32 "1a5ngap7kq0b4azq8nlfg6xg5bcl1i0v1sbynhmbr631jgpnqrld"))))
+ (base32 "015y5qaw9qnxr29lg60dml1g5rbqd4586wy5n8m41ib55gvm1zfy"))))
(build-system python-build-system)
(native-inputs
`(("python-nose" ,python-nose)))
@@ -157,8 +158,8 @@ Password Scheme\"} by Niels Provos and David Mazieres.")
`(#:phases
(modify-phases %standard-phases
(add-before 'check 'set-PYTHON_EGG_CACHE
- ;; some tests require access to "$HOME/.cython"
- (lambda* _ (setenv "PYTHON_EGG_CACHE" "/tmp") #t)))))
+ ;; Some tests require access to "$HOME/.cython".
+ (lambda _ (setenv "PYTHON_EGG_CACHE" "/tmp") #t)))))
(home-page "https://bitbucket.org/ecollins/passlib")
(synopsis "Comprehensive password hashing framework")
(description
@@ -286,7 +287,7 @@ Python interface around SSH networking concepts.")
(description
"This is an easy-to-use implementation of ECDSA cryptography (Elliptic
Curve Digital Signature Algorithm), implemented purely in Python. With this
-library, you can quickly create keypairs (signing key and verifying key), sign
+library, you can quickly create key pairs (signing key and verifying key), sign
messages, and verify the signatures. The keys and signatures are very short,
making them easy to handle and incorporate into other protocols.")
(license license:expat)))
@@ -497,14 +498,14 @@ is used by the Requests library to verify HTTPS requests.")
(define-public python-cryptography-vectors
(package
(name "python-cryptography-vectors")
- (version "2.9.2")
+ (version "3.1.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "cryptography_vectors" version))
(sha256
(base32
- "1d4iykcv7cn9j399hczlxm5pzxmqy6d80h3j16dkjwlmv3293b4r"))))
+ "1xp2j79c1y8qj4b97ygx451gzp8l4cp830hnvg3zw8j134bcaaam"))))
(build-system python-build-system)
(home-page "https://github.com/pyca/cryptography")
(synopsis "Test vectors for the cryptography package")
@@ -519,14 +520,14 @@ is used by the Requests library to verify HTTPS requests.")
(define-public python-cryptography
(package
(name "python-cryptography")
- (version "2.9.2")
+ (version "3.1.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "cryptography" version))
(sha256
(base32
- "0af25w5mkd6vwns3r6ai1w5ip9xp0ms9s261zzssbpadzdr05hx0"))))
+ "0z81q4d1nangw3r0v5f41mfl4d9r04qnbayl5ll5v5jpcfhwd7wx"))))
(build-system python-build-system)
(inputs
`(("openssl" ,openssl)))
@@ -741,18 +742,23 @@ ECB and OFB).")
(define-public python-asn1crypto
(package
(name "python-asn1crypto")
- (version "0.24.0")
+ (version "1.4.0")
(source
- (origin
+ (origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/wbond/asn1crypto")
- (commit version)))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "10lai2cs5mnz3gpaffbw1m7b885ls8328q5wxm35vfmcip1f0xmb"))))
+ (url "https://github.com/wbond/asn1crypto")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "19abibn6jw20mzi1ln4n9jjvpdka8ygm4m439hplyrdfqbvgm01r"))))
(build-system python-build-system)
+ (arguments
+ '(#:phases (modify-phases %standard-phases
+ (replace 'check
+ (lambda _
+ (invoke "python" "run.py" "tests"))))))
(home-page "https://github.com/wbond/asn1crypto")
(synopsis "ASN.1 parser and serializer in Python")
(description "asn1crypto is an ASN.1 parser and serializer with definitions
@@ -1060,6 +1066,53 @@ through the Engine interface.")
(propagated-inputs
`(("python2-typing" ,python2-typing))))))
+(define-public python-pykeepass
+ (package
+ (name "python-pykeepass")
+ (version "3.2.0")
+ (source
+ (origin
+ (method git-fetch)
+ ;; Source tarball on PyPI doesn't include tests.
+ (uri (git-reference
+ (url "https://github.com/libkeepass/pykeepass")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1wxbfpy7467mlnfsvmh685fhfnq4fki9y7yc9cylp30r5n3hisaj"))))
+ (build-system python-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'make-kdbx-writable
+ ;; Tests have to write to the .kdbx files in the test directory.
+ (lambda _
+ (with-directory-excursion "tests"
+ (for-each make-file-writable (find-files "."))
+ #t)))
+ (add-before 'build 'patch-requirements
+ (lambda _
+ ;; Update requirements from dependency==version
+ ;; to dependency>=version.
+ (substitute* "setup.py"
+ (("==") ">="))
+ #t)))))
+ (propagated-inputs
+ `(("python-argon2-cffi" ,python-argon2-cffi)
+ ("python-construct" ,python-construct)
+ ("python-dateutil" ,python-dateutil)
+ ("python-future" ,python-future)
+ ("python-lxml" ,python-lxml)
+ ("python-pycryptodome" ,python-pycryptodome)))
+ (home-page "https://github.com/libkeepass/pykeepass")
+ (synopsis "Python library to interact with keepass databases")
+ (description
+ "This library allows you to write entries to a KeePass database. It
+supports KDBX3 and KDBX4.")
+ ;; There are no copyright headers in the source code. The LICENSE file
+ ;; indicates GPL3.
+ (license license:gpl3+)))
+
(define-public python-pylibscrypt
(package
(name "python-pylibscrypt")
@@ -1133,6 +1186,26 @@ been constructed to maintain extensive documentation on how to use
@code{NaCl} as well as being completely portable.")
(license license:asl2.0)))
+(define-public python-pyotp
+ (package
+ (name "python-pyotp")
+ (version "2.4.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "pyotp" version))
+ (sha256
+ (base32 "0a1dx07y785xyl70h0vj6vssg13qfx11w04d0gz8h48qffsymv01"))))
+ (build-system python-build-system)
+ (home-page "https://github.com/pyauth/pyotp")
+ (synopsis "Python One Time Password Library")
+ (description
+ "PyOTP is a Python library for generating and verifying one-time
+passwords. It can be used to implement two-factor (2FA) or multi-factor
+(MFA) authentication methods in web applications and in other systems that
+require users to log in.")
+ (license license:expat)))
+
(define-public python-scrypt
(package
(name "python-scrypt")
@@ -1537,20 +1610,28 @@ signatures.")
(define-public python-pgpy
(package
(name "python-pgpy")
- (version "0.5.2")
+ (version "0.5.3")
(source
(origin
(method url-fetch)
(uri (pypi-uri "PGPy" version))
(sha256
- (base32
- "0i4lqhzdwkjkim3wab0kqadx28z3r5ixlh6qxj4lif4gif56c0m7"))))
+ (base32 "11rrq15gmn6qbahli7czflfcngjl7zyybjlvk732my6axnf2d754"))))
(build-system python-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (replace 'check
+ (lambda* (#:key tests? #:allow-other-keys)
+ (when tests?
+ (invoke "pytest")))))))
(native-inputs
`(("python-cryptography" ,python-cryptography)
("python-pyasn1" ,python-pyasn1)
+ ("python-pytest" ,python-pytest)
("python-singledispatch" ,python-singledispatch)
- ("python-six" ,python-six)))
+ ("python-six" ,python-six)
+ ("python-wheel" ,python-wheel)))
(home-page "https://github.com/SecurityInnovation/PGPy")
(synopsis "Python implementation of OpenPGP")
(description
diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index 7926539233..a0770df17d 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -38,6 +38,7 @@
;;; Copyright © 2020 Noisytoot <noisytoot@gmail.com>
;;; Copyright © 2020 Edouard Klein <edk@beaver-labs.com>
;;; Copyright © 2020 Vinicius Monego <monego@posteo.net>
+;;; Copyright © 2020 Konrad Hinsen <konrad.hinsen@fastmail.net>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -89,14 +90,13 @@
(define-public python-aiohttp
(package
(name "python-aiohttp")
- (version "3.6.2")
+ (version "3.6.3")
(source
(origin
(method url-fetch)
(uri (pypi-uri "aiohttp" version))
(sha256
- (base32
- "09pkw6f1790prnrq0k8cqgnf1qy57ll8lpmc6kld09q7zw4vi6i5"))
+ (base32 "0i9n7h8n06m2d8ryqyk4fv1si1m44ibq7blbfaxq46vx7jydg339"))
(patches (search-patches "python-aiohttp-3.6.2-no-warning-fail.patch"))))
(build-system python-build-system)
(arguments
@@ -222,6 +222,60 @@ The package includes a module with full coverage of JSON RPC versions 1.0 and
comes with a SOCKS proxy client.")
(license (list license:expat license:bsd-2))))
+(define-public python-asgiref
+ (package
+ (name "python-asgiref")
+ (version "3.2.10")
+ (source (origin
+ (method url-fetch)
+ (uri (pypi-uri "asgiref" version))
+ (sha256
+ (base32
+ "06kg3hnnvh7qg0w9amkvk1hd6n6bs055r04b7if6ipa7w4g92lby"))))
+ (build-system python-build-system)
+ (arguments
+ '(#:phases (modify-phases %standard-phases
+ (replace 'check
+ (lambda _
+ (setenv "PYTHONPATH"
+ (string-append "./build/lib:"
+ (getenv "PYTHONPATH")))
+ (invoke "pytest" "-vv"))))))
+ (native-inputs
+ `(("python-pytest" ,python-pytest)
+ ("python-pytest-asyncio" ,python-pytest-asyncio)))
+ (home-page "https://github.com/django/asgiref/")
+ (synopsis "ASGI specs, helper code, and adapters")
+ (description
+ "ASGI is a standard for Python asynchronous web apps and servers to
+communicate with each other, and positioned as an asynchronous successor to
+WSGI. This package includes libraries for implementing ASGI servers.")
+ (license license:bsd-3)))
+
+(define-public python-css-html-js-minify
+ (package
+ (name "python-css-html-js-minify")
+ (version "2.5.5")
+ (source (origin
+ (method url-fetch)
+ (uri (pypi-uri "css-html-js-minify" version ".zip"))
+ (sha256
+ (base32
+ "0v3l2dqdk2y4r6ax259gs4ij1zzm9yxg6491s6254vs9w3vi37sa"))))
+ (build-system python-build-system)
+ ;; XXX: The git repository has no tags, and the PyPI releases do not
+ ;; contain tests.
+ (arguments '(#:tests? #f))
+ (native-inputs `(("unzip" ,unzip)))
+ (home-page "https://github.com/juancarlospaco/css-html-js-minify")
+ (synopsis "CSS/HTML/JS minifier")
+ (description
+ "This package provides a single-file minifier for CSS, HTML, and JavaScript.")
+ ;; XXX: The README just says "GNU GPL and GNU LGPL and MIT". From
+ ;; <https://github.com/juancarlospaco/css-html-js-minify/issues/9> it
+ ;; looks like the user can choose a license.
+ (license (list license:gpl3+ license:lgpl3+ license:expat))))
+
(define-public python-falcon
(package
(name "python-falcon")
@@ -675,9 +729,9 @@ both of which are installed automatically if you install this library.")
(home-page
"https://github.com/html5lib/html5lib-python")
(synopsis
- "Python HTML parser based on the WHATWG HTML specifcation")
+ "Python HTML parser based on the WHATWG HTML specification")
(description
- "Html5lib is an HTML parser based on the WHATWG HTML specifcation
+ "Html5lib is an HTML parser based on the WHATWG HTML specification
and written in Python.")
(license license:expat)))
@@ -817,14 +871,14 @@ is Python’s.")
(define-public python-openid
(package
(name "python-openid")
- (version "3.1.0")
+ (version "3.2.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "python3-openid" version))
(sha256
(base32
- "00l5hrjh19740w00b3fnsqldnla41wbr2rics09dl4kyd1fkd3b2"))))
+ "1bxf9a3ny1js422j962zfzl4a9dhj192pvai05whn7j0iy9gdyrk"))))
(build-system python-build-system)
(arguments
`(#:phases
@@ -1879,16 +1933,71 @@ WebSocket usage in Python programs.")
"Purl is a Python package for handling URLs.")
(license license:expat)))
+(define-public python-apiron
+ (package
+ (name "python-apiron")
+ (version "5.1.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "apiron" version))
+ (sha256
+ (base32 "1qwbqn47sf0aqznj1snbv37v8ijx476qqkjf5l9pac7xjkxsr8qk"))))
+ (build-system python-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (replace 'check
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (add-installed-pythonpath inputs outputs)
+ (invoke "pytest" "-vv" "--cov" "-k"
+ ;; This test tries to connect to the internet.
+ "not test_call"))))))
+ (propagated-inputs
+ `(("python-requests" ,python-requests)))
+ (native-inputs
+ `(("python-pytest" ,python-pytest)
+ ("python-pytest-cov" ,python-pytest-cov)))
+ (home-page "https://github.com/ithaka/apiron")
+ (synopsis "Python wrapper for interacting with RESTful APIs")
+ (description
+ "@code{apiron} provides a declarative, structured configuration of
+services and endpoints with a unified interface for interacting with RESTful
+APIs.")
+ (license license:expat)))
+
+(define-public python-beren
+ (package
+ (name "python-beren")
+ (version "0.7.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "beren" version))
+ (sha256
+ (base32 "1v3mdwfqsyza892zvs124ym9w1bkng1j56b7l4dwfjir3723xcgf"))))
+ (build-system python-build-system)
+ (arguments
+ ;; The test tries to open a connection to a remote server.
+ `(#:tests? #f))
+ (propagated-inputs
+ `(("python-apiron" ,python-apiron)))
+ (home-page "https://github.com/teffalump/beren")
+ (synopsis "REST client for Orthanc DICOM servers")
+ (description
+ "@code{beren} provides a REST client for Orthanc, a DICOM server.")
+ (license license:gpl3+)))
+
(define-public python-requests
(package
(name "python-requests")
- (version "2.23.0")
+ (version "2.24.0")
(source (origin
(method url-fetch)
(uri (pypi-uri "requests" version))
(sha256
(base32
- "1rhpg0jb08v0gd7f19jjiwlcdnxpmqi1fhvw7r4s9avddi4kvx5k"))))
+ "06r3017hz0hzxv42gpg73l8xvdjbzw7q904ljvp36b5p3l9rlmdk"))))
(build-system python-build-system)
(propagated-inputs
`(("python-certifi" ,python-certifi)
@@ -2029,16 +2138,38 @@ with python-requests.")
`(;; FIXME: Some tests require network access.
#:tests? #f))))
+(define-public python-requests-ftp
+ (package
+ (name "python-requests-ftp")
+ (version "0.3.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "requests-ftp" version))
+ (sha256
+ (base32
+ "0yh5v21v36dsjsgv4y9dx4mmz35741l5jf6pbq9w19d8rfsww13m"))))
+ (build-system python-build-system)
+ (propagated-inputs
+ `(("python-requests" ,python-requests)))
+ (home-page
+ "https://github.com/Lukasa/requests-ftp")
+ (synopsis "FTP Transport Adapter for Requests")
+ (description
+ "Requests-FTP is an implementation of a simple FTP transport
+adapter for use with the Requests library.")
+ (license license:asl2.0)))
+
(define-public python-oauthlib
(package
(name "python-oauthlib")
- (version "3.0.1")
+ (version "3.1.0")
(source (origin
(method url-fetch)
(uri (pypi-uri "oauthlib" version))
(sha256
(base32
- "163jg4a8f7c5ki655grrr47kgljy12wri3qly7ijf64sk1fjrqqc"))))
+ "12gqnabwck30gdlpwm6af3s28qm9p2yc7b1w8s4fk9ncbz1irr5y"))))
(build-system python-build-system)
(arguments
`(#:phases (modify-phases %standard-phases
@@ -2113,7 +2244,6 @@ authenticated session objects providing things like keep-alive.")
("python-certifi" ,python-certifi)
("python-cryptography" ,python-cryptography)
("python-idna" ,python-idna)
- ("python-ipaddress" ,python-ipaddress)
("python-pyopenssl" ,python-pyopenssl)
("python-pysocks" ,python-pysocks)))
(home-page "https://urllib3.readthedocs.io/")
@@ -2122,6 +2252,7 @@ authenticated session objects providing things like keep-alive.")
"Urllib3 supports features left out of urllib and urllib2 libraries. It
can reuse the same socket connection for multiple requests, it can POST files,
supports url redirection and retries, and also gzip and deflate decoding.")
+ (properties `((python2-variant . ,(delay python2-urllib3))))
(license license:expat)))
;; Some software requires an older version of urllib3, notably Docker.
@@ -2137,7 +2268,12 @@ supports url redirection and retries, and also gzip and deflate decoding.")
(define-public python2-urllib3
- (package-with-python2 python-urllib3))
+ (let ((base (package-with-python2 (strip-python2-variant python-urllib3))))
+ (package/inherit
+ base
+ (propagated-inputs
+ `(("python-ipaddress" ,python2-ipaddress)
+ ,@(package-propagated-inputs base))))))
(define-public awscli
(package
@@ -2211,13 +2347,13 @@ and to spawn subprocesses to handle requests.")
(define-public python-pastedeploy
(package
(name "python-pastedeploy")
- (version "2.1.0")
+ (version "2.1.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "PasteDeploy" version))
(sha256
- (base32 "16qsq5y6mryslmbp5pn35x4z8z3ndp5rpgl42h226879nrw9hmg7"))))
+ (base32 "05s88qdjdwd9d9qs13fap7nqgxs7qs5qfzzjbrc5va13k2mxdskd"))))
(build-system python-build-system)
(arguments
'(#:test-target "pytest"))
@@ -3041,15 +3177,29 @@ for Flask.")
(define-public python-webassets
(package
(name "python-webassets")
- (version "0.12.1")
+ (version "2.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "webassets" version))
(sha256
(base32
- "1nrqkpb7z46h2b77xafxihqv3322cwqv6293ngaky4j3ff4cing7"))))
+ "1kc1042jydgk54xpgcp0r1ib4gys91nhy285jzfcxj3pfqrk4w8n"))))
(build-system python-build-system)
+ (arguments
+ '(#:phases (modify-phases %standard-phases
+ (add-before 'check 'disable-some-tests
+ (lambda _
+ ;; This test requires 'postcss' and 'babel' which are
+ ;; not yet available in Guix.
+ (delete-file "tests/test_filters.py")
+ #t))
+ (replace 'check
+ (lambda _
+ (setenv "PYTHONPATH"
+ (string-append "./build/lib:"
+ (getenv "PYTHONPATH")))
+ (invoke "pytest" "-vv"))))))
(native-inputs
`(("python-jinja2" ,python-jinja2)
("python-mock" ,python-mock)
@@ -3255,14 +3405,14 @@ authentication for Flask routes.")
(define-public python-uritemplate
(package
(name "python-uritemplate")
- (version "3.0.0")
+ (version "3.0.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "uritemplate" version))
(sha256
(base32
- "0781gm9g34wa0asc19dx81ng0nqq07igzv3bbvdqmz13pv7469n0"))))
+ "1bkwmgr0ia9gcn4bszs2xlvml79f0bi2s4a87xg22ky9rq8avy2s"))))
(build-system python-build-system)
(home-page "https://uritemplate.readthedocs.org")
(synopsis "Library to deal with URI Templates")
@@ -3972,7 +4122,7 @@ event loop. It is implemented in Cython and uses libuv under the hood.")
#t)))))
(native-inputs
`(("binutils" ,binutils) ;; for ctypes.util.find_library()
- ("python-aiohttp", python-aiohttp)
+ ("python-aiohttp" ,python-aiohttp)
("python-pytest" ,python-pytest)
("python-pytest-cov" ,python-pytest-cov)
("python-sphinx" ,python-sphinx)
@@ -4310,7 +4460,7 @@ and serve updated contents upon changes to the directory.")
(define-public python-httpcore
(package
(name "python-httpcore")
- (version "0.10.2")
+ (version "0.11.0")
(source
(origin
;; PyPI tarball does not contain tests.
@@ -4320,7 +4470,7 @@ and serve updated contents upon changes to the directory.")
(commit version)))
(file-name (git-file-name name version))
(sha256
- (base32 "00gn8nfv814rg6fj7xv97mrra3fvx6fzjcgx9y051ihm6hxljdsi"))))
+ (base32 "01bhajcxqgkdzg7b7x0fqs2lwcfsajlgqwi1nlxx58jss7g2kxn9"))))
(build-system python-build-system)
(arguments
`(#:phases
@@ -4385,7 +4535,7 @@ Some things HTTP Core does do:
(define-public python-httpx
(package
(name "python-httpx")
- (version "0.14.3")
+ (version "0.15.4")
(source
(origin
;; PyPI tarball does not contain tests.
@@ -4395,7 +4545,7 @@ Some things HTTP Core does do:
(commit version)))
(file-name (git-file-name name version))
(sha256
- (base32 "0mn8gqkgaij3s2pbwgrih20iq34f3f82dfvypaw3nnh7n63vna43"))))
+ (base32 "1qr91xw6jxynvihmw953bi5446ssm9ffmb2c4nhfa77v7883sp21"))))
(build-system python-build-system)
(arguments
`(#:phases
@@ -4403,8 +4553,16 @@ Some things HTTP Core does do:
(replace 'check
(lambda _
(invoke "pytest" "-vv" "-k"
- ;; This test tries to open an outgoing connection.
- "not test_connect_timeout[asyncio]"))))))
+ ;; These tests try to open an outgoing connection.
+ (string-append
+ "not test_connect_timeout"
+ " and not test_that_send_cause_async_client_to_be_not_"
+ "closed"
+ " and not test_that_async_client_caused_warning_when_"
+ "being_deleted"
+ " and not test_that_send_cause_client_to_be_not_closed"
+ " and not test_async_proxy_close"
+ " and not test_sync_proxy_close")))))))
(native-inputs
`(("python-autoflake" ,python-autoflake)
("python-black" ,python-black)
@@ -4430,7 +4588,7 @@ Some things HTTP Core does do:
("python-idna" ,python-idna)
("python-rfc3986" ,python-rfc3986)
("python-sniffio" ,python-sniffio)))
- (home-page "https://github.com/encode/httpx")
+ (home-page "https://www.python-httpx.org/")
(synopsis "HTTP client for Python")
(description
"HTTPX is a fully featured HTTP client for Python 3, which provides sync
@@ -4577,7 +4735,7 @@ major web browsers.")
("python-pytest-cov" ,python-pytest-cov)))
(arguments '(#:test-target "pytest"))
(home-page "https://docs.pylonsproject.org/projects/venusian")
- (synopsis "Library for defering decorator actions")
+ (synopsis "Library for deferring decorator actions")
(description
"Venusian is a library which allows framework authors to defer decorator
actions. Instead of taking actions when a function (or class) decorator is
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index b11080bde7..69aaaa1670 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -84,6 +84,9 @@
;;; Copyright © 2020 Vinicius Monego <monego@posteo.net>
;;; Copyright © 2020 Guy Fleury Iteriteka <gfleury@disroot.org>
;;; Copyright © 2020 Hendursaga <hendursaga@yahoo.com>
+;;; Copyright © 2020 Malte Frank Gerdes <malte.f.gerdes@gmail.com>
+;;; Copyright © 2020 Joseph LaFreniere <joseph@lafreniere.xyz>
+;;; Copyright © 2020 Tim Gesthuizen <tim.gesthuizen@yahoo.de>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -105,6 +108,7 @@
#:use-module (gnu packages)
#:use-module (gnu packages algebra)
#:use-module (gnu packages adns)
+ #:use-module (gnu packages aidc)
#:use-module (gnu packages attr)
#:use-module (gnu packages backup)
#:use-module (gnu packages bash)
@@ -129,6 +133,7 @@
#:use-module (gnu packages gsasl)
#:use-module (gnu packages gstreamer)
#:use-module (gnu packages gtk)
+ #:use-module (gnu packages haskell-xyz)
#:use-module (gnu packages icu4c)
#:use-module (gnu packages image)
#:use-module (gnu packages imagemagick)
@@ -506,14 +511,20 @@ pidof, tty, taskset, pmap.")
(define-public python-shapely
(package
(name "python-shapely")
- (version "1.6.4.post2")
+ (version "1.7.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "Shapely" version))
(sha256
(base32
- "03r42fmd9alp6r3q95ad6rldq2f7n1wimrw53zy5kpn33yv7pf64"))))
+ "0adiz4jwmwxk7k1awqifb1a9bj5x4nx4gglb5dz9liam21674h8n"))
+ (modules '((guix build utils)))
+ (snippet
+ '(begin
+ (delete-file "shapely/speedups/_speedups.c")
+ (delete-file "shapely/vectorized/_vectorized.c")
+ #t))))
(build-system python-build-system)
(native-inputs
`(("python-cython" ,python-cython)
@@ -532,12 +543,15 @@ pidof, tty, taskset, pmap.")
(let ((geos (assoc-ref inputs "geos"))
(glibc (assoc-ref inputs ,(if (%current-target-system)
"cross-libc" "libc"))))
- (substitute* "shapely/geos.py"
+ (substitute* '("shapely/geos.py" "shapely/_buildcfg.py")
(("_lgeos = load_dll\\('geos_c', fallbacks=.*\\)")
(string-append "_lgeos = load_dll('geos_c', fallbacks=['"
geos "/lib/libgeos_c.so'])"))
(("free = load_dll\\('c'\\)\\.free")
(string-append "free = load_dll('c', fallbacks=['"
+ glibc "/lib/libc.so.6']).free"))
+ (("free = load_dll\\('c', fallbacks=.*\\)\\.free")
+ (string-append "free = load_dll('c', fallbacks=['"
glibc "/lib/libc.so.6']).free"))))
#t)))))
(home-page "https://github.com/Toblerity/Shapely")
@@ -1612,18 +1626,18 @@ of @code{xmlfile}.")
(define-public python-openpyxl
(package
(name "python-openpyxl")
- (version "2.6.2")
+ (version "3.0.5")
(source
(origin
;; We use the upstream repository, as the tests are not included in the
;; PyPI releases.
(method hg-fetch)
(uri (hg-reference
- (url "https://bitbucket.org/openpyxl/openpyxl")
+ (url "https://foss.heptapod.net/openpyxl/openpyxl")
(changeset version)))
(file-name (string-append name "-" version "-checkout"))
(sha256
- (base32 "1qhij6kcvdxqjy4g6193nsv4q7fy8n4fwyd3c2z047idlm6s3j4w"))))
+ (base32 "0s6fgwwkcfz1bnrp5gjd4g2lcbl4a76147ylkrmkbabi2nf4xlli"))))
(build-system python-build-system)
(arguments
`(#:phases (modify-phases %standard-phases
@@ -1643,8 +1657,25 @@ of @code{xmlfile}.")
(description "This Python library allows reading and writing to the Excel XLSX, XLSM,
XLTX and XLTM file formats that are defined by the Office Open XML (OOXML)
standard.")
+ (properties `((python2-variant . ,(delay python2-openpyxl))))
(license license:expat)))
+(define-public python2-openpyxl
+ (let ((base (package-with-python2
+ (strip-python2-variant python-openpyxl))))
+ (package
+ (inherit base)
+ ;; This is the latest version that has python2 support
+ (version "2.6.4")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "openpyxl" version))
+ (sha256
+ (base32
+ "1qzjj8nwj4dn0mhq1j64f136afiqqb81lvqiikipz3g1g0b80lqx"))))
+ (arguments '(#:tests? #f))))) ; No test suite.
+
(define-public python-eventlet
(package
(name "python-eventlet")
@@ -3462,14 +3493,14 @@ text styles of documentation.")
(define-public python-pygments
(package
(name "python-pygments")
- (version "2.5.2")
+ (version "2.6.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "Pygments" version))
(sha256
(base32
- "1zmhnswy0wxfn0xprs9aqsvx2c3kmzfn2wx14q8cv3vpkxdamj4q"))))
+ "0i4gnd4q0mgkq0dp5wymn7ca8zjd8fgp63139svs6jf2c6h48wv4"))))
(build-system python-build-system)
(arguments
;; FIXME: Tests require sphinx, which depends on this.
@@ -3478,10 +3509,21 @@ text styles of documentation.")
(synopsis "Syntax highlighting")
(description
"Pygments is a syntax highlighting package written in Python.")
- (license license:bsd-2)))
+ (license license:bsd-2)
+ (properties `((python2-variant . ,(delay python2-pygments))))))
+;; Pygments 2.6 and later does not support Python 2.
(define-public python2-pygments
- (package-with-python2 python-pygments))
+ (let ((base (package-with-python2 (strip-python2-variant python-pygments))))
+ (package
+ (inherit base)
+ (version "2.5.2")
+ (source (origin
+ (method url-fetch)
+ (uri (pypi-uri "Pygments" version))
+ (sha256
+ (base32
+ "1zmhnswy0wxfn0xprs9aqsvx2c3kmzfn2wx14q8cv3vpkxdamj4q")))))))
(define-public python-bumpversion
(package
@@ -4066,6 +4108,27 @@ matching of file paths.")
(description "Black is the uncompromising Python code formatter.")
(license license:expat)))
+(define-public python-black-macchiato
+ (package
+ (name "python-black-macchiato")
+ (version "1.3.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "black-macchiato" version))
+ (sha256
+ (base32
+ "1drp5p697ni1xn5y2lbjpalgpkzy2i4cyxjj5pk4dxr0vk97dd7i"))))
+ (build-system python-build-system)
+ (propagated-inputs
+ `(("python-black" ,python-black)))
+ (home-page "https://github.com/wbolster/black-macchiato")
+ (synopsis "Partial @code{python-black} formatting")
+ (description
+ "This package is built on top the @{python-black} code formatter to
+enable formatting of partial files.")
+ (license license:bsd-3)))
+
(define-public python-blinker
(package
(name "python-blinker")
@@ -4158,14 +4221,14 @@ provides additional functionality on the produced Mallard documents.")
(define-public python-cython
(package
(name "python-cython")
- (version "0.29.17")
+ (version "0.29.21")
(source
(origin
(method url-fetch)
(uri (pypi-uri "Cython" version))
(sha256
(base32
- "1wnaz40hdw4mg5acz5gqb6bhjhn4cvfxg0xdzfy7aa6qn665hqb3"))))
+ "1bcwpra7c6k30yvic3sw2v3rq2dr40ypc4zqif6kr52mpn4wnyp5"))))
(build-system python-build-system)
;; we need the full python package and not just the python-wrapper
;; because we need libpython3.3m.so
@@ -5994,6 +6057,61 @@ memoizing PEG/Packrat parser in Python.")
(define-public python2-grako
(package-with-python2 python-grako))
+(define-public python-grandalf
+ (package
+ (name "python-grandalf")
+ (version "0.7")
+ (source
+ (origin
+ ;; There's no source tarball on PyPI.
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/bdcht/grandalf")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "03p8w8ljpb87qbyldm3s6b7qi30hfcn43h33iwlgqcf31fjsyr4g"))))
+ (build-system python-build-system)
+ (arguments
+ '(#:phases
+ (modify-phases %standard-phases
+ (replace 'check
+ (lambda _
+ (invoke "python" "setup.py" "pytest"))))))
+ (native-inputs
+ `(("python-pytest" ,python-pytest)
+ ("python-pytest-runner" ,python-pytest-runner)))
+ (propagated-inputs
+ `(("python-numpy" ,python-numpy)
+ ("python-ply" ,python-ply)))
+ (home-page "https://github.com/bdcht/grandalf")
+ (synopsis "Graph and drawing algorithms framework")
+ (description
+ "Grandalf is a Python package made for experimentations with graphs
+drawing algorithms. It is written in pure Python, and currently implements
+two layouts: the Sugiyama hierarchical layout and the force-driven or energy
+minimization approach. While not as fast or featured as graphviz or other
+libraries like OGDF (C++), it provides a way to walk and draw graphs no larger
+than thousands of nodes, while keeping the source code simple enough to tweak
+and hack any part of it for experimental purpose. With a total of about 1500
+lines of Python, the code involved in drawing the Sugiyama (dot) layout fits
+in less than 600 lines. The energy minimization approach is comprised of only
+250 lines!
+
+Grandalf does only 2 not-so-simple things:
+@itemize
+@item computing the nodes (x,y) coordinates (based on provided nodes
+dimensions, and a chosen layout)
+@item routing the edges with lines or nurbs
+@end itemize
+
+It doesn’t depend on any GTK/Qt/whatever graphics toolkit. This means that it
+will help you find where to draw things like nodes and edges, but it’s up to
+you to actually draw things with your favorite toolkit.")
+ ;; The user can choose either license.
+ (license (list license:gpl2 license:epl1.0))))
+
(define-public python-gridmap
(package
(name "python-gridmap")
@@ -7318,13 +7436,13 @@ interfaces in an easy and portable manner.")
(define-public python-networkx
(package
(name "python-networkx")
- (version "2.4")
+ (version "2.5")
(source
(origin
(method url-fetch)
(uri (pypi-uri "networkx" version))
(sha256
- (base32 "0r2wr7aqay9fwjrgk35fkjzk8lvvb4i4df7ndaqzkr4ndw5zzx7q"))))
+ (base32 "00hnii2lplig2s324k1hvi29pyfab6z7i22922f67jgv4da9ay3r"))))
(build-system python-build-system)
(arguments
'(#:phases (modify-phases %standard-phases
@@ -7514,15 +7632,17 @@ and statistical routines from scipy and statsmodels.")
(define-public python-mpmath
(package
(name "python-mpmath")
- (version "0.19")
+ (version "1.1.0")
(source (origin
(method url-fetch)
- (uri (string-append "http://mpmath.org/files/mpmath-"
- version ".tar.gz"))
+ (uri (pypi-uri "mpmath" version))
+ (file-name (git-file-name name version))
(sha256
(base32
- "08ijsr4ifrqv3cjc26mkw0dbvyygsa99in376hr4b96ddm1gdpb8"))))
+ "1xlrcja213jpfhw25q1jl5pl10w1a2cc68x1c4mkicxsbzhan5zw"))))
(build-system python-build-system)
+ (native-inputs
+ `(("python-pytest" ,python-pytest)))
(arguments
'(#:phases
(modify-phases %standard-phases
@@ -7566,27 +7686,22 @@ multiprecision arithmetic.")
(define-public python-sympy
(package
(name "python-sympy")
- (version "1.1.1")
+ (version "1.6.2")
(source
(origin
(method url-fetch)
- (uri (string-append
- "https://github.com/sympy/sympy/releases/download/sympy-"
- version "/sympy-" version ".tar.gz"))
+ (uri (pypi-uri "sympy" version))
(sha256
- (base32 "190n29sppw7g8ihilc5451y7jlfcaw56crqiqbf1jff43dlmfnxc"))))
+ (base32 "0247skhkxanczpqqdz6n9k1axgpwl665b25hyn9vgr060p4dryhw"))))
(build-system python-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
- ;; Run the core tests after installation. By default it would run
- ;; *all* tests, which take a very long time to complete and are known
- ;; to be flaky.
- (delete 'check)
- (add-after 'install 'check
+ (replace 'check
(lambda* (#:key outputs #:allow-other-keys)
- (invoke "python3" "-c" "import sympy; sympy.test(\"/core\")")
- #t)))))
+ (invoke
+ (or (which "python3") (which "python"))
+ "-c" "import sympy; sympy.test(\"/core\")"))))))
(propagated-inputs
`(("python-mpmath" ,python-mpmath)))
(home-page "https://www.sympy.org/")
@@ -7600,17 +7715,13 @@ as possible in order to be comprehensible and easily extensible.")
(define-public python2-sympy
(package
(inherit (package-with-python2 python-sympy))
- (arguments
- `(#:phases
- (modify-phases %standard-phases
- ;; Run the core tests after installation. By default it would run
- ;; *all* tests, which take a very long time to complete and are known
- ;; to be flaky.
- (delete 'check)
- (add-after 'install 'check
- (lambda* (#:key outputs #:allow-other-keys)
- (invoke "python" "-c" "import sympy; sympy.test(\"/core\")")
- #t)))))))
+ (version "1.5.1") ; last release for python2
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "sympy" version))
+ (sha256
+ (base32 "0zjfbxlkazzh9z22gf62azrkipb2xw7mpzjz3wl1az9893bh2yfp"))))))
(define-public python-q
(package
@@ -8033,13 +8144,13 @@ complexity of Python source code.")
(define-public python-flake8
(package
(name "python-flake8")
- (version "3.8.3")
+ (version "3.8.4")
(source (origin
(method url-fetch)
(uri (pypi-uri "flake8" version))
(sha256
(base32
- "02527892hh0qjivxaiphzalj7q32qkna1cqaikjs7c03mk5ryjzh"))))
+ "0fvcrsbyzjpcli8ldbpsdbpmf238nkvwc1dy4hy82lf63rvfinma"))))
(build-system python-build-system)
(arguments
`(#:phases
@@ -9116,14 +9227,14 @@ versions of Python.")
(define-public python-idna
(package
(name "python-idna")
- (version "2.9")
+ (version "2.10")
(source
(origin
(method url-fetch)
(uri (pypi-uri "idna" version))
(sha256
(base32
- "1jxp2pdi8y4asi7ka1zhx3yx09kv8kzj533f0ds7viz49b0x323m"))))
+ "1xmk3s92d2vq42684p61wixfmh3qpr2mw762w0n6662vhlpqf1xk"))))
(build-system python-build-system)
(home-page "https://github.com/kjd/idna")
(synopsis "Internationalized domain names in applications")
@@ -9154,7 +9265,7 @@ specification.")
(define-public python-libsass
(package
(name "python-libsass")
- (version "0.20.0")
+ (version "0.20.1")
(source
(origin
;; PyPI tarball is missing some test files.
@@ -9164,7 +9275,7 @@ specification.")
(commit version)))
(file-name (git-file-name name version))
(sha256
- (base32 "0h9rj4k9izkfdvli8ip72bbvh6a7bvrv5pxz6zay2bq235gpfgfc"))))
+ (base32 "1r0kgl7i6nnhgjl44sjw57k08gh2qr7l8slqih550dyxbf1akbxh"))))
(build-system python-build-system)
(arguments
`(#:phases
@@ -9177,10 +9288,7 @@ specification.")
(replace 'check
(lambda* (#:key inputs outputs #:allow-other-keys)
(add-installed-pythonpath inputs outputs)
- (invoke "pytest" "sasstests.py" "-k"
- ;; See https://github.com/sass/libsass/issues/3092.
- ;; This test may work in a future release of libsass.
- "not test_stack_trace_formatting"))))))
+ (invoke "pytest" "sasstests.py"))))))
(native-inputs
`(("python-pytest" ,python-pytest)
("python-werkzeug" ,python-werkzeug)))
@@ -10799,36 +10907,40 @@ Pytest but stripped of Pytest specific details.")
(define-public python-tox
(package
- (name "python-tox")
- (version "2.8.1")
- (source
- (origin
- (method url-fetch)
- (uri (pypi-uri "tox" version))
- (sha256
- (base32
- "1drp6mwm8wdypjym15ia8lwjxbhcksb9vzxg4ay5dh4ji57by2ny"))))
- (build-system python-build-system)
- (arguments
- ;; FIXME: Tests require pytest-timeout, which itself requires
- ;; pytest>=2.8.0 for installation.
- '(#:tests? #f))
- (propagated-inputs
- `(("python-pluggy" ,python-pluggy) ; >=0.3.0,<0.4.0
- ("python-py" ,python-py)
- ("python-virtualenv" ,python-virtualenv)))
- (native-inputs
- `(; FIXME: Missing: ("python-pytest-timeout" ,python-pytest-timeout)
- ("python-pytest" ,python-pytest) ; >= 2.3.5
- ("python-setuptools-scm" ,python-setuptools-scm)))
- (home-page "https://tox.readthedocs.io")
- (synopsis "Virtualenv-based automation of test activities")
- (description "Tox is a generic virtualenv management and test command line
+ (name "python-tox")
+ (version "3.20.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "tox" version))
+ (sha256
+ (base32
+ "0nk0nyzhzamcrvn0qqzzy54isxxqwdi28swml7a2ym78c3f9sqpb"))))
+ (build-system python-build-system)
+ (arguments
+ ;; FIXME: Tests require pytest-timeout, which itself requires
+ ;; pytest>=2.8.0 for installation.
+ '(#:tests? #f))
+ (propagated-inputs
+ `(("python-filelock" ,python-filelock)
+ ("python-packaging" ,python-packaging)
+ ("python-pluggy" ,python-pluggy)
+ ("python-py" ,python-py)
+ ("python-six" ,python-six)
+ ("python-toml" ,python-toml)
+ ("python-virtualenv" ,python-virtualenv)))
+ (native-inputs
+ `(; FIXME: Missing: ("python-pytest-timeout" ,python-pytest-timeout)
+ ("python-pytest" ,python-pytest) ; >= 2.3.5
+ ("python-setuptools-scm" ,python-setuptools-scm)))
+ (home-page "https://tox.readthedocs.io")
+ (synopsis "Virtualenv-based automation of test activities")
+ (description "Tox is a generic virtualenv management and test command line
tool. It can be used to check that a package installs correctly with
different Python versions and interpreters, or run tests in each type of
supported environment, or act as a frontend to continuous integration
servers.")
- (license license:expat)))
+ (license license:expat)))
(define-public python2-tox
(package-with-python2 python-tox))
@@ -10978,14 +11090,14 @@ python-xdo for newer bindings.)")
(define-public python-mako
(package
(name "python-mako")
- (version "1.1.2")
+ (version "1.1.3")
(source
(origin
(method url-fetch)
(uri (pypi-uri "Mako" version))
(sha256
(base32
- "17bd6r9ynp4hyfckkia0bb8gpd98f42jfl5rmzdpbld59bbcaf9i"))))
+ "09ywrmhr6gdyfx6d5727wwjnz73i6rklqcb4c14m7sqc830wi5c1"))))
(build-system python-build-system)
(arguments
`(#:phases (modify-phases %standard-phases
@@ -14433,7 +14545,7 @@ PKCS#5 v2.0 Password-Based Key Derivation is a key derivation function which
is part of the RSA Public Key Cryptography Standards series. The provided
implementation takes a password or a passphrase and a salt value (and
optionally a iteration count, a digest module, and a MAC module) and provides
-a file-like object from which an arbitrarly-sized key can be read.")
+a file-like object from which an arbitrarily-sized key can be read.")
(license license:expat)))
(define-public python2-pbkdf2
@@ -15368,18 +15480,18 @@ perform the operations required for synchronizing plain text.")
(define-public python-dirsync
(package
(name "python-dirsync")
- (version "2.2.3")
+ (version "2.2.5")
(source
(origin
(method url-fetch)
(uri (pypi-uri "dirsync" version))
(sha256
(base32
- "1r40fkanksagcszf1ag85mdr8w7rgc7196n6s1qlsk2abw6i7v0z"))))
+ "1gm82jddm1lkazdi8lfsl1b3vi1z0252ng60mzjym8irnv94qfhy"))))
(build-system python-build-system)
(propagated-inputs
`(("six" ,python-six)))
- (home-page "https://bitbucket.org/tkhyn/dirsync")
+ (home-page "https://github.com/tkhyn/dirsync")
(synopsis "Advanced directory tree synchronisation tool")
(description "Advanced directory tree synchronisation tool.")
(license license:expat)))
@@ -15933,6 +16045,51 @@ validation of URIs (see RFC 3986) and IRIs (see RFC 3987).")
(define-public python2-rfc3987
(package-with-python2 python-rfc3987))
+;; The latest commit contains fixes for building with both python3 and python2.
+(define-public python-rfc6555
+ (let ((commit "1a181b432312731f6742a5eb558dae4761d32361")
+ (revision "1"))
+ (package
+ (name "python-rfc6555")
+ (version (git-version "0.0.0" revision commit))
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/sethmlarson/rfc6555")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1bxl17j9vs69cshcqnlwamr03hnykxqnwz3mdgi6x3s2k4q18npp"))))
+ (build-system python-build-system)
+ (arguments
+ '(#:phases
+ (modify-phases %standard-phases
+ (replace 'check
+ (lambda* (#:key tests? #:allow-other-keys)
+ (if tests?
+ ;; Other tests require network access.
+ (invoke "pytest" "tests/test_ipv6.py")
+ #t))))))
+ (native-inputs
+ `(("python-pytest" ,python-pytest)))
+ (home-page "https://pypi.org/project/rfc6555/")
+ (synopsis "Python implementation of RFC 6555")
+ (description
+ "Python implementation of the Happy Eyeballs Algorithm described in RFC
+6555. Provided with a single file and dead-simple API to allow easy vendoring
+and integration into other projects.")
+ (properties `((python2-variant . ,(delay python2-rfc6555))))
+ (license license:asl2.0))))
+
+(define-public python2-rfc6555
+ (let ((base (package-with-python2
+ (strip-python2-variant python-rfc6555))))
+ (package
+ (inherit base)
+ (propagated-inputs
+ `(("python2-selectors2" ,python2-selectors2))))))
+
(define-public python-validators
(package
(name "python-validators")
@@ -16415,14 +16572,14 @@ requirements is not met.")
(define-public python-pysocks
(package
(name "python-pysocks")
- (version "1.7.0")
+ (version "1.7.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "PySocks" version))
(sha256
(base32
- "0z4p31bpqm893cf87qqgb30k7nwd8kqfjwwjm5cvxb6zbyj1w0yr"))))
+ "184sg65mbmih6ljblfsxcmq5js5l7dj3gpn618w9q5dy3rbh921z"))))
(build-system python-build-system)
(arguments `(#:tests? #f))
(home-page "https://github.com/Anorov/PySocks")
@@ -17142,6 +17299,31 @@ user's @file{~/Trash} directory.")
(string-append (getcwd) ":" (getenv "PYTHONPATH")))
#t))))))))
+(define-public python-pyfavicon
+ (package
+ (name "python-pyfavicon")
+ (version "0.1.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "pyfavicon" version))
+ (sha256
+ (base32 "15wfpa99hvcfsv8j0m8iprmydi2p4qkhm86qfx485244y0ia5mgx"))))
+ (build-system python-build-system)
+ (arguments
+ ;; There are no tests in the PyPI tarball and the tests from the
+ ;; repository require online data.
+ '(#:tests? #f))
+ (propagated-inputs
+ `(("python-aiohttp" ,python-aiohttp)
+ ("python-beautifulsoup4" ,python-beautifulsoup4)
+ ("python-pillow" ,python-pillow)))
+ (home-page "https://github.com/bilelmoussaoui/pyfavicon")
+ (synopsis "Async favicon fetcher")
+ (description
+ "@code{pyfavicon} is an async favicon fetcher.")
+ (license license:expat)))
+
(define-public python-yapf
(package
(name "python-yapf")
@@ -17303,6 +17485,58 @@ Week instances stringify to this form.")
(define-public python2-isoweek
(package-with-python2 python-isoweek))
+(define-public python-pyzbar
+ (package
+ (name "python-pyzbar")
+ (version "0.1.8")
+ (source
+ (origin
+ ;; There's no source tarball on PyPI.
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/NaturalHistoryMuseum/pyzbar")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1fqlfg5p2v9lzzzi0si2sz54lblprk6jjjhjw54b64lp58c1yhsl"))))
+ (build-system python-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'remove-failing-test
+ (lambda _
+ ;; This tests if find_library was called once, but we remove
+ ;; the call in the stage below to make the library find libzbar.
+ (delete-file "pyzbar/tests/test_zbar_library.py")
+ #t))
+ (add-before 'build 'set-library-file-name
+ (lambda* (#:key inputs #:allow-other-keys)
+ (let ((libzbar (assoc-ref inputs "zbar")))
+ (substitute* "pyzbar/zbar_library.py"
+ (("find_library\\('zbar'\\)")
+ (string-append "'" libzbar "/lib/libzbar.so.0'")))
+ #t))))))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)
+ ("python-numpy" ,python-numpy)
+ ("python-pillow" ,python-pillow)))
+ (inputs
+ `(("zbar" ,zbar)))
+ (home-page "https://github.com/NaturalHistoryMuseum/pyzbar/")
+ (synopsis "Read one-dimensional barcodes and QR codes")
+ (description
+ "Read one-dimensional barcodes and QR codes using the zbar library.
+
+Features:
+
+@itemize
+@item Pure python
+@item Works with PIL / Pillow images, OpenCV / numpy ndarrays, and raw bytes
+@item Decodes locations of barcodes
+@item No dependencies, other than the zbar library itself
+@end itemize")
+ (license license:expat)))
+
(define-public python-tokenize-rt
(package
(name "python-tokenize-rt")
@@ -18939,7 +19173,7 @@ with a non-list @code{cdr}.")
(description
"This Python module provides line editing functions similar to the default
Emacs-style ones of GNU Readline. Unlike the Python standard library's
-@code{readline} package, this one allows access to those capabilties in settings
+@code{readline} package, this one allows access to those capabilities in settings
outside of a standard command-line interface. It is especially well-suited to
interfacing with Urwid, due to a shared syntax for describing key inputs.
@@ -19242,13 +19476,13 @@ project.")
(define-public python-trio
(package
(name "python-trio")
- (version "0.16.0")
+ (version "0.17.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "trio" version))
(sha256
- (base32 "0g6gkwz6i05rm9ym4l4imxakzld7qcgxhb21kprilchcav87s1nz"))))
+ (base32 "0zcxirpdvvl54pbfkgw7vz984879xwvdygqfpggnam24is2zjp78"))))
(build-system python-build-system)
(arguments
`(#:phases
@@ -19434,6 +19668,27 @@ file-based data structures that are @code{mmap}ped into memory so that many
processes may share the same data.")
(license license:asl2.0)))
+(define-public python-croniter
+ (package
+ (name "python-croniter")
+ (version "0.3.34")
+ (source (origin
+ (method url-fetch)
+ (uri (pypi-uri "croniter" version))
+ (sha256
+ (base32
+ "0r79cx4v2dw4hzr0annkkxxis46c8hivq61sr39z6p7lcjsbk1ki"))))
+ (build-system python-build-system)
+ (propagated-inputs
+ `(("python-dateutil" ,python-dateutil)
+ ("python-natsort" ,python-natsort)))
+ (home-page "https://github.com/kiorky/croniter")
+ (synopsis "Iterate datetime objects with cron-like syntax")
+ (description
+ "@code{croniter} provides iteration for datetime object with cron-like
+format.")
+ (license license:expat)))
+
(define-public python-pylzma
(package
(name "python-pylzma")
@@ -19847,6 +20102,31 @@ hard (or impossible without root privileges) to set the state of the real
services to what you expect in your tests.")
(license license:lgpl3+)))
+(define-public python-jsonplus
+ (package
+ (name "python-jsonplus")
+ (version "0.8.0")
+ (home-page "https://github.com/randomir/jsonplus")
+ (source (origin
+ (method url-fetch)
+ (uri (pypi-uri "jsonplus" version))
+ (sha256
+ (base32
+ "05yv3dw813zwas9snz124k2hki49y268b3mx0gj9w7v1nrjmglq1"))))
+ (build-system python-build-system)
+ ;; XXX: No tests on PyPI, and the repository has no tags.
+ (arguments '(#:tests? #f))
+ (propagated-inputs
+ `(("python-dateutil" ,python-dateutil)
+ ("python-simplejson" ,python-simplejson)
+ ("python-sortedcontainers" ,python-sortedcontainers)))
+ (synopsis "Serialize Python types to/from JSON")
+ (description
+ "This package provides functionality to serialize arbitrary data types
+to and from JSON. Common data types are implemented and it is easy to
+register custom encoders and decoders.")
+ (license license:expat)))
+
(define-public python-ujson
(package
(name "python-ujson")
@@ -20040,11 +20320,11 @@ load balancing.")
`(("python-pytest" ,python-pytest)
("which" ,which)))
(home-page "https://pypi.org/project/pox/")
- (synopsis "Python utilities for filesystem exploration and automated builds")
+ (synopsis "Python utilities for file system exploration and automated builds")
(description
"Pox provides a collection of utilities for navigating and manipulating
-filesystems. This module is designed to facilitate some of the low level
-operating system interactions that are useful when exploring a filesystem on a
+file systems. This module is designed to facilitate some of the low-level
+operating system interactions that are useful when exploring a file system on a
remote host. Pox provides Python equivalents of several shell commands such
as @command{which} and @command{find}. These commands allow automated
discovery of what has been installed on an operating system, and where the
@@ -20244,12 +20524,23 @@ Notation (CSON).")
(invoke "python" "-X" "dev" "-m" "unittest" "-v" "test")))
(add-after 'unpack 'disable-tests
(lambda* _
- (substitute* "test/test_selector.py"
- ;; XXX: This test fails for unknown reason inside the build
- ;; environment.
+ ;; XXX: 7 tests fail out of 220. Disable them for now.
+ (substitute* (list "test/test_selector.py"
+ "test/test_mock.py")
(("def test_events_watched_outside_test_are_ignored")
"@unittest.skip('disabled by guix')
- def test_events_watched_outside_test_are_ignored")))))))
+ def test_events_watched_outside_test_are_ignored")
+ (("def test_awaited_from_autospec_mock.*" line)
+ (string-append line " return True\n"))
+ (("def test_create_autospec_on_coroutine_and_using_assert_methods.*" line)
+ (string-append line " return True\n"))
+ (("def test_patch_coroutine_with_multiple_scopes.*" line)
+ (string-append line " return True\n"))
+ (("def test_multiple_patches_on_coroutine.*" line)
+ (string-append line " return True\n"))
+ (("def test_patch_coroutine_only_when_running.*" line)
+ (string-append line " return True\n")))
+ #t)))))
(home-page "https://github.com/Martiusweb/asynctest")
(synopsis "Extension of unittest for testing asyncio libraries")
(description
@@ -20368,15 +20659,31 @@ tests.")
(define-public python-gssapi
(package
(name "python-gssapi")
- (version "1.6.5")
+ (version "1.6.9")
(source
(origin
(method url-fetch)
(uri (pypi-uri "gssapi" version))
(sha256
(base32
- "02i5s7998dg5kcr4m0xwamd8vjqk1816xbzldyp68l91f6bynwcr"))))
+ "1fa78pn5jzfbwf3y6mj4fc8sh11wjf1hwh5qv39cdlxb71qsq2hb"))))
(build-system python-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ ;; Work around
+ ;; https://github.com/pythongssapi/python-gssapi/issues/220.
+ (add-before 'check 'disable-failing-tests
+ (lambda _
+ (let ((reason "Disabled failing test (see: \
+https://github.com/pythongssapi/python-gssapi/issues/220)."))
+ (substitute* "gssapi/tests/test_high_level.py"
+ ((".*def test_add_with_impersonate.*" all)
+ (string-append all " self.skipTest('" reason "')\n")))
+ (substitute* "gssapi/tests/test_raw.py"
+ ((".*def test_.*impersonate_name.*" all)
+ (string-append all " self.skipTest('" reason "')\n")))
+ #t))))))
(propagated-inputs
`(("python-decorator" ,python-decorator)
("python-six" ,python-six)))
@@ -20393,7 +20700,7 @@ tests.")
(description
"Python-GSSAPI provides both low-level and high level wrappers around the
GSSAPI C libraries. While it focuses on the Kerberos mechanism, it should
-also be useable with other GSSAPI mechanisms.")
+also be usable with other GSSAPI mechanisms.")
(license license:isc)))
(define-public python-check-manifest
@@ -20469,8 +20776,8 @@ files. These files are used to translate strings in android apps.")
`(("python-pytest-cov" ,python-pytest-cov)
("python-pytest-timeout" ,python-pytest-timeout)))
(home-page "https://github.com/gorakhargosh/watchdog")
- (synopsis "Filesystem events monitoring")
- (description "This package provides a way to monitor filesystem events
+ (synopsis "File system events monitoring")
+ (description "This package provides a way to monitor file system events
such as a file modification and trigger an action. This is similar to inotify,
but portable.")
(license license:asl2.0)))
@@ -20741,13 +21048,13 @@ content models.")
;; Testing requires undocumented setup changes, and so testing is disabled here.
(arguments `(#:tests? #f))
(propagated-inputs
- `(("python-certifi", python-certifi)
- ("python-six", python-six)
- ("python-dateutil", python-dateutil)
- ("python-urllib3", python-urllib3)
- ("python-pyjwt", python-pyjwt)
- ("python-cryptography", python-cryptography)
- ("python-nose", python-nose)))
+ `(("python-certifi" ,python-certifi)
+ ("python-six" ,python-six)
+ ("python-dateutil" ,python-dateutil)
+ ("python-urllib3" ,python-urllib3)
+ ("python-pyjwt" ,python-pyjwt)
+ ("python-cryptography" ,python-cryptography)
+ ("python-nose" ,python-nose)))
(synopsis "DocuSign Python Client")
(description "The Official DocuSign Python Client Library used to interact
with the eSign REST API. Send, sign, and approve documents using this client.")
@@ -20770,9 +21077,9 @@ content models.")
`(("python-cffi" ,python-cffi)))
(home-page "https://github.com/xattr/xattr")
(synopsis
- "Python wrapper for extended filesystem attributes")
+ "Python wrapper for extended file system attributes")
(description "This package provides a Python wrapper for using extended
-filesystem attributes. Extended attributes extend the basic attributes of files
+file system attributes. Extended attributes extend the basic attributes of files
and directories in the file system. They are stored as name:data pairs
associated with file system objects (files, directories, symlinks, etc).")
(license license:expat)))
@@ -21375,6 +21682,37 @@ randomness (including real life dice) and different wordlists (including
cryptographically signed ones).")
(license license:gpl3+)))
+(define-public python-dictdiffer
+ (package
+ (name "python-dictdiffer")
+ (version "0.8.1")
+ (source (origin
+ (method url-fetch)
+ (uri (pypi-uri "dictdiffer" version))
+ (sha256
+ (base32
+ "1lk3qmy1hkaphk4n7ayfk0wl6m2yvd6r7qkam6yncqfzgkbc1phs"))))
+ (build-system python-build-system)
+ (native-inputs
+ `(("python-check-manifest" ,python-check-manifest)
+ ("python-coverage" ,python-coverage)
+ ("python-isort" ,python-isort)
+ ("python-mock" ,python-mock)
+ ("python-pydoctstyle" ,python-pydocstyle)
+ ("python-pytest-cache" ,python-pytest-cache)
+ ("python-pytest-cov" ,python-pytest-cov)
+ ("python-pytest-pep8" ,python-pytest-pep8)
+ ("python-pytest-runner" ,python-pytest-runner)
+ ("python-pytest" ,python-pytest)
+ ("python-setuptools-scm" ,python-setuptools-scm)
+ ("python-tox" ,python-tox)))
+ (home-page "https://github.com/inveniosoftware/dictdiffer")
+ (synopsis "Diff and patch Python dictionary objects")
+ (description
+ "Dictdiffer is a Python module that helps you to diff and patch
+dictionaries.")
+ (license license:expat)))
+
(define-public pyzo
(package
(name "pyzo")
@@ -21785,10 +22123,10 @@ RFC 3464.")
(home-page "https://flufli18n.readthedocs.io")
(synopsis "API for Python internationalization")
(description
- "This package provides a high level, convenient API for managing
-internationalization translation contexts in Python application. There is a
+ "This package provides a high-level, convenient API for managing
+internationalization/translation contexts in Python applications. There is a
simple API for single-context applications, such as command line scripts which
-only need to translate into one language during the entire course of thei
+only need to translate into one language during the entire course of their
execution. There is a more flexible, but still convenient API for multi-context
applications, such as servers, which may need to switch language contexts for
different tasks.")
@@ -21938,6 +22276,42 @@ dates in almost any string formats commonly found on web pages.")
(description "This package provides a parser for Python dependency files.")
(license license:expat)))
+(define-public python-dpath
+ (package
+ (name "python-dpath")
+ (version "2.0.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "dpath" version))
+ (sha256
+ (base32
+ "1ymi9ssk7i0mx3mviplf4csfvzibdd6wyj4qzj6s487n9xgnp85y"))))
+ (build-system python-build-system)
+ (native-inputs
+ `(("python-hypothesis" ,python-hypothesis)
+ ("python-mock" ,python-mock)
+ ("python-nose" ,python-nose)))
+ (arguments
+ '(#:phases
+ (modify-phases %standard-phases
+ (replace 'check
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (add-installed-pythonpath inputs outputs)
+ ;; This invokation is taken from tox.ini.
+ (invoke "nosetests" "-d" "-v" "tests/"))))))
+ (home-page "https://github.com/akesterson/dpath-python")
+ (synopsis "Filesystem-like pathing and searching for dictionaries")
+ (description
+ "@code{python-dpath} is a library for accessing and searching
+dictionaries via /slashed/paths ala xpath.
+
+Basically it lets you glob over a dictionary as if it were a filesystem. It
+allows you to specify globs (ala the bash eglob syntax, through some advanced
+fnmatch.fnmatch magic) to access dictionary elements, and provides some
+facility for filtering those results.")
+ (license license:expat)))
+
(define-public python-safety
(package
(name "python-safety")
@@ -21969,3 +22343,154 @@ dates in almost any string formats commonly found on web pages.")
(description "Safety checks installed dependencies for known vulnerabilities.
By default it uses the open Python vulnerability database Safety DB.")
(license license:expat)))
+
+(define-public python-pypandoc
+ (package
+ (name "python-pypandoc")
+ (version "1.5")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "pypandoc" version))
+ (sha256
+ (base32
+ "1zvn9764cf7kkjkmr9gw6wc8adpk06qxr1rhxwa9pg0zmdvrk90l"))))
+ (build-system python-build-system)
+ (inputs
+ `(("pandoc" ,pandoc)
+ ("pandoc-citeproc" ,pandoc-citeproc)))
+ (propagated-inputs
+ `(("wheel" ,python-wheel)))
+ (native-inputs
+ `(("texlive" ,(texlive-union (list texlive-amsfonts
+ texlive-fonts-ec
+ texlive-latex-hyperref
+ texlive-latex-oberdiek
+ texlive-lm
+ texlive-xcolor)))))
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'disable-tests
+ (lambda _
+ ;; Disable test requiring network access
+ (substitute* "tests.py"
+ (("test_basic_conversion_from_http_url")
+ "skip_test_basic_conversion_from_http_url"))
+ ;; Needed by texlive-union to generate fonts
+ (setenv "HOME" "/tmp")
+ #t)))))
+ (home-page "https://github.com/bebraw/pypandoc")
+ (synopsis "Python wrapper for pandoc")
+ (description "pypandoc is a thin Python wrapper around pandoc
+and pandoc-citeproc.")
+ (license license:expat)))
+
+(define-public python-rnc2rng
+ (package
+ (name "python-rnc2rng")
+ (version "2.6.4")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "rnc2rng" version))
+ (sha256
+ (base32
+ "1kmp3iwxxyzjsd47j2sprd47ihhkwhb3yydih3af5bbfq0ibh1w8"))))
+ (build-system python-build-system)
+ (propagated-inputs
+ `(("python-rply" ,python-rply)))
+ (arguments
+ `(#:phases (modify-phases %standard-phases
+ (replace 'check
+ (lambda _
+ (invoke "python" "test.py"))))))
+ (home-page "https://github.com/djc/rnc2rng")
+ (synopsis "Convert RELAX NG Compact to regular syntax")
+ (description
+ "This package provides the @command{rnc2rng} command-line tool as well as
+a Python library to convert RELAX NG schemata in Compact syntax (rnc) to
+equivalent schemata in the XML-based default RELAX NG syntax.")
+ (license license:expat)))
+
+(define-public python-citeproc-py
+ (package
+ (name "python-citeproc-py")
+ (version "0.5.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "citeproc-py" version))
+ (sha256
+ (base32
+ "00aaff50jy4j0nakdzq9258z1gzrac9baarli2ymgspj88jg5968"))))
+ (build-system python-build-system)
+ (propagated-inputs
+ `(("python-lxml" ,python-lxml)
+ ("python-rnc2rng" ,python-rnc2rng)))
+ (home-page
+ "https://github.com/brechtm/citeproc-py")
+ (synopsis "Citations and bibliography formatter")
+ (description
+ "Citeproc-py is a CSL processor for Python. It aims to implement the
+CSL 1.0.1 specification. citeproc-py can output styled citations and
+bibliographies in a number of different output formats. Currently supported
+are plain text, reStructuredText and HTML.")
+ (license license:bsd-2)))
+
+(define-public python-inform
+ (package
+ (name "python-inform")
+ (version "1.23.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "inform" version))
+ (sha256
+ (base32
+ "0dvc5klbnbryrvspp45nmlg02g40j7xspcz7lqsm0c0dj0z29zdz"))))
+ (build-system python-build-system)
+ (arguments
+ `(#:tests? #f)) ; PyPI tarball lacks tests
+ (native-inputs
+ `(("python-hypothesis" ,python-hypothesis)
+ ("python-pytest-cov" ,python-pytest-cov)
+ ("python-pytest-runner" ,python-pytest-runner)))
+ (propagated-inputs
+ `(("python-arrow" ,python-arrow)
+ ("python-six" ,python-six)))
+ (home-page "https://inform.readthedocs.io")
+ (synopsis "Print & logging utilities for communicating with user")
+ (description
+ "Inform is designed to display messages from programs that are typically run from
+a console. It provides a collection of ‘print’ functions that allow you to simply and
+cleanly print different types of messages.")
+ (license license:gpl3+)))
+
+(define-public python-nestedtext
+ (package
+ (name "python-nestedtext")
+ (version "1.0.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "nestedtext" version))
+ (sha256
+ (base32
+ "0xjx863n7yd1xmkwhy48lhmqrmlzgbx3civhk386hvrzyq4sx148"))))
+ (build-system python-build-system)
+ (arguments
+ `(#:tests? #f)) ; PyPI tarball lacks tests
+ (propagated-inputs
+ `(("python-inform" ,python-inform)))
+ (home-page "https://nestedtext.org")
+ (synopsis "Human readable and writable data interchange format")
+ (description
+ "NestedText is a file format for holding data that is to be entered, edited, or
+viewed by people. It allows data to be organized into a nested collection of
+dictionaries, lists, and strings. In this way it is similar to JSON and YAML, but
+without the complexity and risk of YAML and without the syntatic clutter of JSON.
+NestedText is both simple and natural. Only a small number of concepts and rules must
+be kept in mind when creating it. It is easily created, modified, or viewed with
+a text editor and easily understood and used by both programmers and non-programmers.")
+ (license license:expat))) ; MIT license
diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm
index 7936638794..d99ff18af2 100644
--- a/gnu/packages/python.scm
+++ b/gnu/packages/python.scm
@@ -592,7 +592,7 @@ To function properly, this package should not be installed together with the
(define-public micropython
(package
(name "micropython")
- (version "1.12")
+ (version "1.13")
(source
(origin
(method url-fetch)
@@ -600,8 +600,7 @@ To function properly, this package should not be installed together with the
"releases/download/v" version
"/micropython-" version ".tar.gz"))
(sha256
- (base32
- "1fl1dm2aay23hyqbarnv69qj7z2wljcvkwmvfwfac8yadcv05zcq"))
+ (base32 "0lfl7dv5v9rqckslrjqy5swjri29x1nj5d79wxnjys4sq6r2xcws"))
(modules '((guix build utils)))
(snippet
'(begin
diff --git a/gnu/packages/qt.scm b/gnu/packages/qt.scm
index 25f811ac70..aabbdc308f 100644
--- a/gnu/packages/qt.scm
+++ b/gnu/packages/qt.scm
@@ -195,7 +195,6 @@ system, and the core design of Django is reused in Grantlee.")
("libxslt" ,libxslt)
("libxtst" ,libxtst)
("mtdev" ,mtdev)
- ("mariadb" ,mariadb "lib")
("mariadb-dev" ,mariadb "dev")
("nss" ,nss)
("postgresql" ,postgresql)
@@ -346,7 +345,6 @@ developers using C++ or QML, a CSS & JavaScript like language.")
(define-public qtbase
(package
(name "qtbase")
- ;; TODO Remove ((gnu packages kde) qtbase-for-krita) when upgrading qtbase.
(version "5.14.2")
(source (origin
(method url-fetch)
@@ -359,7 +357,9 @@ developers using C++ or QML, a CSS & JavaScript like language.")
"12mjsahlma9rw3vz9a6b5h2s6ylg8b34hxc2vnlna5ll429fgfa8"))
;; Use TZDIR to avoid depending on package "tzdata".
(patches (search-patches "qtbase-use-TZDIR.patch"
- "qtbase-moc-ignore-gcc-macro.patch"))
+ "qtbase-moc-ignore-gcc-macro.patch"
+ "qtbase-absolute-runpath.patch"
+ "qtbase-fix-krita-deadlock.patch"))
(modules '((guix build utils)))
(snippet
;; corelib uses bundled harfbuzz, md4, md5, sha3
@@ -371,6 +371,7 @@ developers using C++ or QML, a CSS & JavaScript like language.")
"zlib"))
#t)))))
(build-system gnu-build-system)
+ (outputs '("out" "debug"))
(propagated-inputs
`(("mesa" ,mesa)
;; Use which the package, not the function
@@ -404,7 +405,6 @@ developers using C++ or QML, a CSS & JavaScript like language.")
("libxslt" ,libxslt)
("libxtst" ,libxtst)
("mtdev" ,mtdev)
- ("mariadb" ,mariadb "lib")
("mariadb-dev" ,mariadb "dev")
("nss" ,nss)
("openssl" ,openssl)
@@ -477,6 +477,9 @@ developers using C++ or QML, a CSS & JavaScript like language.")
"-opensource"
"-confirm-license"
+ ;; Later stripped into the :debug output.
+ "-force-debug-info"
+
;; These features require higher versions of Linux than the
;; minimum version of the glibc. See
;; src/corelib/global/minimum-linux_p.h. By disabling these
@@ -601,27 +604,6 @@ developers using C++ or QML, a CSS & JavaScript like language.")
;; qt used to refer to the monolithic Qt 5.x package
(define-deprecated qt qtbase)
-;; This variable is required by 'python-pyside-2-tools', which copies some
-;; qtbase executables that fail to run because RUNPATH refers to the
-;; wrong $ORIGIN. TODO: Merge with qtbase in the next rebuild cycle.
-(define qtbase/next
- (package
- (inherit qtbase)
- (source
- (origin
- (inherit (package-source qtbase))
- (patches (append (origin-patches (package-source qtbase))
- (search-patches "qtbase-absolute-runpath.patch")))))))
-
-(define-public qtbase-for-krita
- (hidden-package
- (package
- (inherit qtbase)
- (source (origin
- (inherit (package-source qtbase))
- (patches (append (origin-patches (package-source qtbase))
- (search-patches "qtbase-fix-krita-deadlock.patch"))))))))
-
(define-public qtsvg
(package (inherit qtbase)
(name "qtsvg")
@@ -2779,7 +2761,7 @@ generate Python bindings for your C or C++ code.")
(inputs
`(("python-pyside-2" ,python-pyside-2)
("python-shiboken-2" ,python-shiboken-2)
- ("qtbase" ,qtbase/next)))
+ ("qtbase" ,qtbase)))
(native-inputs
`(("python" ,python-wrapper)))
(arguments
diff --git a/gnu/packages/radio.scm b/gnu/packages/radio.scm
index e5b4724bd6..a8f57b6c17 100644
--- a/gnu/packages/radio.scm
+++ b/gnu/packages/radio.scm
@@ -159,15 +159,14 @@ this package. E.g.: @code{(udev-rules-service 'rtl-sdr rtl-sdr)}")
(define-public chirp
(package
(name "chirp")
- (version "20200430")
+ (version "20201014")
(source
(origin
(method url-fetch)
(uri (string-append "https://trac.chirp.danplanet.com/chirp_daily/daily-"
version "/chirp-daily-" version ".tar.gz"))
(sha256
- (base32
- "060fzplgmpfrk6wkfaasx7phpfk90mmylk6drbwzk4f9r1655vda"))))
+ (base32 "16x3ix2n7a9l7lln2pri1xfmhyfvvzxb0nr3h33iajqimbwckxj0"))))
(build-system python-build-system)
(inputs
`(("python2-libxml2" ,python2-libxml2)
@@ -1084,7 +1083,7 @@ from devices on the 433 MHz, 868 MHz, 315 MHz, 345 MHz and 915 MHz ISM bands.")
(define-public multimon-ng
(package
(name "multimon-ng")
- (version "1.1.8")
+ (version "1.1.9")
(source
(origin
(method git-fetch)
@@ -1093,13 +1092,13 @@ from devices on the 433 MHz, 868 MHz, 315 MHz, 345 MHz and 915 MHz ISM bands.")
(commit version)))
(file-name (git-file-name name version))
(sha256
- (base32 "1973xfyvzl1viz19zr83cgqlx5laxbjrca35rqabn6dlb6xb5xk8"))))
+ (base32 "01716cfhxfzsab9zjply9giaa4nn4b7rm3p3vizrwi7n253yiwm2"))))
(build-system cmake-build-system)
(inputs
`(("libx11" ,libx11)
("pulseaudio" ,pulseaudio)))
(arguments
- '(#:tests? #f)) ; No test suite
+ '(#:tests? #f)) ; no test suite
(home-page "https://github.com/EliasOenal/multimon-ng")
(synopsis "Decoder for digital radio transmission modes")
(description "Multimon-ng can decode several digital radio transmission
diff --git a/gnu/packages/rdesktop.scm b/gnu/packages/rdesktop.scm
index 2e364b2b8e..0fc63e8675 100644
--- a/gnu/packages/rdesktop.scm
+++ b/gnu/packages/rdesktop.scm
@@ -1,7 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2015 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2017 Thomas Danckaert <post@thomasdanckaert.be>
-;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
+;;; Copyright © 2018, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2019 Leo Famulari <leo@famulari.name>
;;; Copyright © 2019 Eric Bavier <bavier@member.fsf.org>
@@ -35,6 +35,7 @@
#:use-module (gnu packages glib)
#:use-module (gnu packages gstreamer)
#:use-module (gnu packages image)
+ #:use-module (gnu packages libusb)
#:use-module (gnu packages linux)
#:use-module (gnu packages nettle)
#:use-module (gnu packages pkg-config)
@@ -81,15 +82,16 @@ to remotely control a user's Windows desktop.")
(define-public freerdp
(package
(name "freerdp")
- (version "2.0.0-rc4")
- (source (origin
- (method git-fetch)
- (uri (git-reference
- (url "git://github.com/FreeRDP/FreeRDP.git")
- (commit version)))
- (file-name (git-file-name name version))
- (sha256
- (base32 "0546i0m2d4nz5jh84ngwzpcm3c43fp987jk6cynqspsmvapab6da"))))
+ (version "2.2.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "git://github.com/FreeRDP/FreeRDP.git")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "02zlg5r704zbryx09a5rjjf7q137kj16i9qh25dw9q1y69ri619n"))))
(build-system cmake-build-system)
(native-inputs
`(("docbook-xml" ,docbook-xml)
@@ -104,6 +106,7 @@ to remotely control a user's Windows desktop.")
("cups" ,cups)
("ffmpeg" ,ffmpeg)
("libjpeg" ,libjpeg-turbo)
+ ("libusb" ,libusb)
("libx11" ,libx11)
("libxkbcommon" ,libxkbcommon)
("libxkbfile" ,libxkbfile)
@@ -123,7 +126,6 @@ to remotely control a user's Windows desktop.")
`(#:build-type "RELEASE"
#:configure-flags
(list "-DWITH_JPEG=ON"
- "-DWITH_LIBSYSTEMD=OFF"
,@(if (string-prefix? "x86_64"
(or (%current-target-system)
(%current-system)))
diff --git a/gnu/packages/rdf.scm b/gnu/packages/rdf.scm
index b1906a6145..be426e102a 100644
--- a/gnu/packages/rdf.scm
+++ b/gnu/packages/rdf.scm
@@ -268,17 +268,17 @@ and triple stores.")
(define-public serd
(package
(name "serd")
- (version "0.30.4")
+ (version "0.30.6")
(source (origin
(method url-fetch)
(uri (string-append "https://download.drobilla.net/serd-"
version ".tar.bz2"))
(sha256
(base32
- "168rn3m32c59qbar120f83ibcnnd987ij9p053kybgl7cmm6358c"))))
+ "1vrprliknw9s0mz99dk7qf8i8xx38dd173q6b60332wxcm6cg8pm"))))
(build-system waf-build-system)
(arguments
- `(#:tests? #f ; no check target
+ `(#:tests? #f ; no check target
#:phases
(modify-phases %standard-phases
(add-before
@@ -302,14 +302,14 @@ ideal (e.g. in LV2 implementations or embedded applications).")
(define-public sord
(package
(name "sord")
- (version "0.16.4")
+ (version "0.16.6")
(source (origin
(method url-fetch)
(uri (string-append "https://download.drobilla.net/sord-"
version ".tar.bz2"))
(sha256
(base32
- "1mwh4qvp9q4vgrgg5bz9sgjhxscncrylf2b06h0q55ddwzs9hndi"))))
+ "0i4x49ckdi1d24kwp6rmnf2mz78sncdpq22xhv9kclq8frxg4yk6"))))
(build-system waf-build-system)
(arguments
`(#:tests? #f ; no check target
diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm
index 81269d28d9..42d4faa234 100644
--- a/gnu/packages/ruby.scm
+++ b/gnu/packages/ruby.scm
@@ -650,8 +650,8 @@ outcomes of a code example.")
(synopsis "Ripper-style abstract syntax tree to Ruby source generator")
(description "Sorcerer generates Ruby code from a Ripper-like abstract
syntax tree (i.e. S-Expressions). Sorcerer is targeted mainly at small
-snippets of Ruby code, expressable in a single line. Longer examples may be
-re-sourced, but they will be rendered in a single line format.")
+snippets of Ruby code, expressible in a single line. Longer examples may be
+re-sourced, but they will be rendered in a single-line format.")
(home-page "https://github.com/rspec-given/sorcerer")
(license license:expat)))
@@ -3753,8 +3753,7 @@ specs for Ruby implementations in ruby/spec.")
(invoke "rspec"))
#t)))))
(inputs
- `(("mariadb" ,mariadb "lib")
- ("mariadb-dev" ,mariadb "dev")
+ `(("mariadb-dev" ,mariadb "dev")
("zlib" ,zlib)))
(native-inputs
`(("ruby-rspec" ,ruby-rspec)
@@ -7750,7 +7749,7 @@ master/html-formatter/ruby")
(native-inputs
`(;; Use a untested version of aruba, to avoid a circular dependency, as
;; ruby-aruba depends on ruby-cucumber.
- ("ruby-aruba", ruby-aruba-without-tests)
+ ("ruby-aruba" ,ruby-aruba-without-tests)
("ruby-rspec" ,ruby-rspec)
("ruby-pry" ,ruby-pry)
("ruby-nokogiri" ,ruby-nokogiri)
@@ -8809,7 +8808,7 @@ display width of strings in Ruby.")
(native-inputs
`(("ruby-rdoc" ,ruby-rdoc)
("ruby-rspec" ,ruby-rspec)
- ("ruby-rubygems-tasks", ruby-rubygems-tasks)))
+ ("ruby-rubygems-tasks" ,ruby-rubygems-tasks)))
(synopsis "Ruby library to help check the Ruby version")
(description "@code{ruby_version} provides a @code{RubyVersion} module to simplify
checking for the right Ruby version in software.")
@@ -9921,7 +9920,7 @@ all known public suffixes.")
("bundler" ,bundler)
("ruby-idn-ruby" ,ruby-idn-ruby)
("ruby-sporkmonger-rack-mount" ,ruby-sporkmonger-rack-mount)
- ("ruby-rspec-its", ruby-rspec-its-minimal)
+ ("ruby-rspec-its" ,ruby-rspec-its-minimal)
("ruby-yard" ,ruby-yard)
("ruby-simplecov" ,ruby-simplecov)))
(propagated-inputs
diff --git a/gnu/packages/rust-apps.scm b/gnu/packages/rust-apps.scm
index 0700167521..fabb4e0380 100644
--- a/gnu/packages/rust-apps.scm
+++ b/gnu/packages/rust-apps.scm
@@ -29,6 +29,7 @@
#:use-module (guix packages)
#:use-module (gnu packages compression)
#:use-module (gnu packages crates-io)
+ #:use-module (gnu packages crates-graphics)
#:use-module (gnu packages documentation)
#:use-module (gnu packages jemalloc)
#:use-module (gnu packages pcre)
@@ -465,7 +466,7 @@ Example use cases:
Features:
@itemize @bullet
-@item Coalesces multiple filesystem events into one, for editors that
+@item Coalesces multiple file system events into one, for editors that
use swap/backup files during saving
@item By default, uses @code{.gitignore} and @code{.ignore} to determine which
files to ignore notifications for
diff --git a/gnu/packages/rust.scm b/gnu/packages/rust.scm
index d5914f012b..35a96b5754 100644
--- a/gnu/packages/rust.scm
+++ b/gnu/packages/rust.scm
@@ -4,11 +4,12 @@
;;; Copyright © 2016 Nikita <nikita@n0.is>
;;; Copyright © 2017 Ben Woodcroft <donttrustben@gmail.com>
;;; Copyright © 2017, 2018 Nikolai Merinov <nikolai.merinov@member.fsf.org>
-;;; Copyright © 2017, 2019 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2017, 2019, 2020 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018 Danny Milosavljevic <dannym+a@scratchpost.org>
;;; Copyright © 2019 Ivan Petkov <ivanppetkov@gmail.com>
;;; Copyright © 2020 Jakub Kądziołka <kuba@kadziolka.net>
+;;; Copyright © 2020 Pierre Langlois <pierre.langlois@gmx.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -421,7 +422,9 @@ test = { path = \"../libtest\" }
`(("bison" ,bison) ; For the tests
("cmake" ,cmake-minimal)
("flex" ,flex) ; For the tests
- ("gdb" ,gdb) ; For the tests
+ ;; FIXME: Rust 1.27 and some later versions require GDB 8.2 specifically.
+ ;; See <https://bugs.gnu.org/37810>. Use it on all Rusts for simplicity.
+ ("gdb" ,gdb-8.2) ; For the tests
("procps" ,procps) ; For the tests
("python-2" ,python-2)
("rustc-bootstrap" ,mrustc)
@@ -449,7 +452,7 @@ test = { path = \"../libtest\" }
(variable "LIBRARY_PATH")
(files '("lib" "lib64")))))
- (synopsis "Compiler for the Rust progamming language")
+ (synopsis "Compiler for the Rust programming language")
(description "Rust is a systems programming language that provides memory
safety and thread safety guarantees.")
(home-page "https://www.rust-lang.org")
@@ -614,7 +617,8 @@ jemalloc = \"" jemalloc "/lib/libjemalloc_pic.a" "\"
(lambda (file) (delete-manifest-file out file))
'("install.log"
"manifest-rust-docs"
- "manifest-rust-std-x86_64-unknown-linux-gnu"
+ ,(string-append "manifest-rust-std-"
+ (nix-system->gnu-triplet-for-rust))
"manifest-rustc"))
(for-each
(lambda (file) (delete-manifest-file cargo-out file))
@@ -756,6 +760,9 @@ jemalloc = \"" jemalloc "/lib/libjemalloc_pic.a" "\"
(patches (search-patches
"rust-coresimd-doctest.patch"
"rust-1.25-accept-more-detailed-gdb-lines.patch"))))
+ (inputs
+ (alist-replace "openssl" (list openssl)
+ (package-inputs base-rust)))
(arguments
(substitute-keyword-arguments (package-arguments base-rust)
((#:phases phases)
@@ -798,7 +805,6 @@ jemalloc = \"" jemalloc "/lib/libjemalloc_pic.a" "\"
(("fn finds_author_git") "#[ignore]\nfn finds_author_git")
(("fn finds_local_author_git") "#[ignore]\nfn finds_local_author_git"))
#t))
- ;; TODO(rebuild-rust): Remove this phase in rust-1.28 when rebuilding.
(add-after 'patch-cargo-tests 'disable-cargo-test-for-nightly-channel
(lambda* _
;; This test failed to work on "nightly" channel builds
@@ -827,11 +833,6 @@ jemalloc = \"" jemalloc "/lib/libjemalloc_pic.a" "\"
"rust-bootstrap-stage0-test.patch"
"rust-1.25-accept-more-detailed-gdb-lines.patch"
"rust-reproducible-builds.patch"))))
- (native-inputs
- ;; FIXME: Rust 1.27 and some later versions require GDB 8.2 specifically.
- ;; See <https://bugs.gnu.org/37810>.
- (alist-replace "gdb" (list gdb-8.2)
- (package-native-inputs base-rust)))
(arguments
(substitute-keyword-arguments (package-arguments base-rust)
((#:phases phases)
@@ -883,6 +884,8 @@ jemalloc = \"" jemalloc "/lib/libjemalloc_pic.a" "\"
(substitute* "src/test/run-pass/issue-44056.rs"
(("only-x86_64") "ignore-test"))
#t))
+ ;; This is no longer needed as of 1.28
+ (delete 'disable-cargo-test-for-nightly-channel)
;; The thinlto test should pass with llvm 6.
(delete 'disable-thinlto-test))))))))
@@ -1145,14 +1148,13 @@ move around."
(setenv "CARGO_HOME" cargo-home)
#t))))))))))
-;; TODO(rebuild-rust): Switch to LLVM 9 in 1.38 instead of 1.40.
(define-public rust-1.38
(let ((base-rust
(rust-bootstrapped-package rust-1.37 "1.38.0"
"101dlpsfkq67p0hbwx4acqq6n90dj4bbprndizpgh1kigk566hk4")))
(package
(inherit base-rust)
- #;(inputs
+ (inputs
(alist-replace "llvm" (list llvm-9)
(package-inputs base-rust)))
(arguments
@@ -1195,9 +1197,6 @@ move around."
"1ba9llwhqm49w7sz3z0gqscj039m53ky9wxzhaj11z6yg1ah15yx")))
(package
(inherit base-rust)
- (inputs
- (alist-replace "llvm" (list llvm-9)
- (package-inputs base-rust)))
(source
(origin
(inherit (package-source base-rust))
@@ -1252,8 +1251,6 @@ move around."
,(patch-command-exec-tests-phase
'(match (find-files "src/test" "command-exec\\.rs")
((file) file))))
- ;; TODO(rebuild-rust): The test in question got fixed long ago.
- (delete 'disable-cargo-test-for-nightly-channel)
;; The test got removed in commit 000fe63b6fc57b09828930cacbab20c2ee6e6d15
;; "Remove painful test that is not pulling its weight"
(delete 'remove-unsupported-tests)))))))))
@@ -1322,4 +1319,4 @@ move around."
"0a17jby2pd050s24cy4dfc0gzvgcl585v3vvyfilniyvjrqknsid"))
;; TODO(staging): Bump this variable to the latest packaged rust.
-(define-public rust rust-1.39)
+(define-public rust rust-1.45)
diff --git a/gnu/packages/sagemath.scm b/gnu/packages/sagemath.scm
index 8c837fdaeb..943e9ba5b9 100644
--- a/gnu/packages/sagemath.scm
+++ b/gnu/packages/sagemath.scm
@@ -59,7 +59,7 @@
`(("python-cysignals" ,python-cysignals)))
(inputs
`(("gmp" ,gmp)
- ("pari-gp", pari-gp)))
+ ("pari-gp" ,pari-gp)))
(home-page "https://cypari2.readthedocs.io/")
(synopsis
"Python interface to the number theory library libpari")
diff --git a/gnu/packages/samba.scm b/gnu/packages/samba.scm
index 84e389340b..76a9c01866 100644
--- a/gnu/packages/samba.scm
+++ b/gnu/packages/samba.scm
@@ -8,6 +8,7 @@
;;; Copyright © 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2019 Rutger Helling <rhelling@mykolab.com>
+;;; Copyright © 2020 Pierre Langlois <pierre.langlois@gmx.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -31,6 +32,7 @@
#:use-module (guix build-system gnu)
#:use-module (guix licenses)
#:use-module (guix utils)
+ #:use-module (gnu packages)
#:use-module (gnu packages acl)
#:use-module (gnu packages admin)
#:use-module (gnu packages autotools)
@@ -173,14 +175,15 @@ external dependencies.")
(define-public samba
(package
(name "samba")
- (version "4.12.3")
+ (version "4.12.7")
(source
(origin
(method url-fetch)
(uri (string-append "https://download.samba.org/pub/samba/stable/"
"samba-" version ".tar.gz"))
(sha256
- (base32 "09w7aap1cjc41ayhaksm1igc7p7gl40fad4a1l6q4ds9a2jbrb9z"))
+ (base32 "1lkgih0vrarf5zy6chspkwarqdylzwr63nxr3qjkpazrs86nlm9h"))
+ (patches (search-patches "samba-fix-fcntl-hint-detection.patch"))
(modules '((guix build utils)))
(snippet
'(begin
diff --git a/gnu/packages/security-token.scm b/gnu/packages/security-token.scm
index cf6bf18373..96e23518ec 100644
--- a/gnu/packages/security-token.scm
+++ b/gnu/packages/security-token.scm
@@ -197,14 +197,14 @@ with a PKCS #11 Cryptographic Token Interface.")
(define-public pcsc-lite
(package
(name "pcsc-lite")
- (version "1.8.26")
+ (version "1.9.0")
(source (origin
(method url-fetch)
(uri (string-append "https://pcsclite.apdu.fr/files/"
"pcsc-lite-" version ".tar.bz2"))
(sha256
(base32
- "1ndvvz0fgqwz70pijymsxmx25mzryb0zav1i8jjc067ndryvxdry"))))
+ "1y9f9zipnrmgiw0mxrvcgky8vfrcmg6zh40gbln5a93i2c1x8j01"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags '("--enable-usbdropdir=/var/lib/pcsc/drivers"
diff --git a/gnu/packages/sequoia.scm b/gnu/packages/sequoia.scm
index 714f2b5ab0..8f2b351031 100644
--- a/gnu/packages/sequoia.scm
+++ b/gnu/packages/sequoia.scm
@@ -83,7 +83,7 @@
("rust-dirs" ,rust-dirs-2.0)
;;("rust-failure" included
("rust-filetime" ,rust-filetime-0.2)
- ("rust-flate2" ,rust-flate2-1.0)
+ ("rust-flate2" ,rust-flate2-1)
("rust-fs2" ,rust-fs2-0.4)
("rust-futures" ,rust-futures-0.1)
("rust-http" ,rust-http-0.1)
@@ -98,7 +98,7 @@
("rust-native-tls" ,rust-native-tls-0.2)
("rust-nettle" ,rust-nettle-7)
("rust-parity-tokio-ipc" ,rust-parity-tokio-ipc-0.4)
- ("rust-percent-encoding" ,rust-percent-encoding-2.1)
+ ("rust-percent-encoding" ,rust-percent-encoding-2)
("rust-prettytable-rs" ,rust-prettytable-rs-0.8)
("rust-proc-macro2" ,rust-proc-macro2-1)
("rust-quickcheck" ,rust-quickcheck-0.9)
@@ -107,11 +107,11 @@
("rust-rusqlite" ,rust-rusqlite-0.19)
("rust-structopt" ,rust-structopt-0.3)
("rust-tempfile" ,rust-tempfile-3)
- ("rust-thiserror" ,rust-thiserror-1.0)
+ ("rust-thiserror" ,rust-thiserror-1)
("rust-tokio" ,rust-tokio-0.1)
("rust-tokio-core" ,rust-tokio-core-0.1)
("rust-unicode-normalization" ,rust-unicode-normalization-0.1)
- ("rust-url" ,rust-url-2.1)
+ ("rust-url" ,rust-url-2)
("rust-zbase32" ,rust-zbase32-0.1))
#:cargo-development-inputs
(("rust-bindgen" ,rust-bindgen-0.51) ;; FIXME for nettle-sys and rusqlite
diff --git a/gnu/packages/shells.scm b/gnu/packages/shells.scm
index 7868dc40f0..9e400eb27e 100644
--- a/gnu/packages/shells.scm
+++ b/gnu/packages/shells.scm
@@ -513,13 +513,13 @@ ksh, and tcsh.")
(define-public xonsh
(package
(name "xonsh")
- (version "0.9.21")
+ (version "0.9.23")
(source
(origin
(method url-fetch)
(uri (pypi-uri "xonsh" version))
(sha256
- (base32 "1mih5w73wp57fnf1vcxnfmm5d31vm7pz8fq5a9vw1ch3dv0yczl5"))
+ (base32 "165lx37kibsm56srg9rj7s950b0p7g4g8qhs2iikbcyinp303g35"))
(modules '((guix build utils)))
(snippet
`(begin
@@ -701,8 +701,9 @@ Its features include:
(home-page "https://github.com/rain-1/s")
(synopsis "Extremely minimal shell with the simplest syntax possible")
(description
- "S is a new shell that aims to be extremely simple.
-S does not implemnt the POSIX shell standard.
+ "S is a new shell that aims to be extremely simple. It does not
+implement the POSIX shell standard.
+
There are no globs or \"splatting\" where a variable $FOO turns into multiple
command line arguments. One token stays one token forever.
This is a \"no surprises\" straightforward approach.
@@ -813,15 +814,14 @@ Shell (pdksh).")
(define-public oil
(package
(name "oil")
- ;; https://www.oilshell.org/blog/2020/04/release-0.8.pre4.html#comment-on-version-numbering
- (version "0.8.pre6")
+ (version "0.8.2")
(source
(origin
(method url-fetch)
(uri (string-append "https://www.oilshell.org/download/oil-"
version ".tar.gz"))
(sha256
- (base32 "11nfwn5b1w74hv78065jg2zm45mqzi59381b0f649j7n3g7yp3iq"))))
+ (base32 "1m49darrs38x60zqi3sy1mh4a47qvwcyf7djrkzqwzwxsczxybgr"))))
(build-system gnu-build-system)
(arguments
`(#:strip-binaries? #f ; strip breaks the binary
@@ -830,7 +830,7 @@ Shell (pdksh).")
(replace 'configure
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
- (setenv "CC" "gcc")
+ (setenv "CC" ,(cc-for-target))
(substitute* "configure"
((" cc ") " $CC "))
(invoke "./configure" (string-append "--prefix=" out)
@@ -838,7 +838,7 @@ Shell (pdksh).")
(replace 'check
;; The tests are not distributed in the tarballs but upstream
;; recommends running this smoke test.
- ;; https://github.com/oilshell/oil/blob/release/0.8.pre6/INSTALL.txt#L38-L48
+ ;; https://github.com/oilshell/oil/blob/release/0.8.0/INSTALL.txt#L38-L48
(lambda _
(let* ((oil "_bin/oil.ovm"))
(invoke/quiet oil "osh" "-c" "echo hi")
diff --git a/gnu/packages/skarnet.scm b/gnu/packages/skarnet.scm
index 848a811d33..0e259d71f3 100644
--- a/gnu/packages/skarnet.scm
+++ b/gnu/packages/skarnet.scm
@@ -30,14 +30,14 @@
(define-public skalibs
(package
(name "skalibs")
- (version "2.9.2.1")
+ (version "2.9.3.0")
(source
(origin
(method url-fetch)
(uri (string-append "https://skarnet.org/software/skalibs/skalibs-"
version ".tar.gz"))
(sha256
- (base32 "0ff551181vv9d1z5sv7yg6n4b88ajcdircs4p4nif4yl7nsrj2r5"))))
+ (base32 "0i1vg3bh0w3bpj7cv0kzs6q9v2dd8wa2by8h8j39fh1qkl20f6ph"))))
(build-system gnu-build-system)
(arguments
'(#:tests? #f ; no tests exist
@@ -62,14 +62,14 @@ and file system operations. It is used by all skarnet.org software.")
(define-public execline
(package
(name "execline")
- (version "2.6.0.2")
+ (version "2.6.1.1")
(source
(origin
(method url-fetch)
(uri (string-append "https://skarnet.org/software/execline/execline-"
version ".tar.gz"))
(sha256
- (base32 "0wdg93hwpxxdqmsnd8j1nf3m2pf85n3rxaawzaih1y0ajyz6gwya"))))
+ (base32 "0mmsnai3bkyhng0cxdz6bf7d6b7kbsxs4p39m63215lz6kq0hhrr"))))
(build-system gnu-build-system)
(inputs `(("skalibs" ,skalibs)))
(arguments
@@ -104,14 +104,14 @@ complexity.")))
(define-public s6
(package
(name "s6")
- (version "2.9.1.0")
+ (version "2.9.2.0")
(source
(origin
(method url-fetch)
(uri (string-append "https://skarnet.org/software/s6/s6-"
version ".tar.gz"))
(sha256
- (base32 "1xqzl2wnvcmcyhppk7mc10h1ac7fkik3i6gpyliwpf3d5i9mkqh5"))))
+ (base32 "1pfxx50shncg2s47ic4kp02jh1cxfjq75j3mnxjagyzzz0mbfg9n"))))
(build-system gnu-build-system)
(inputs `(("skalibs" ,skalibs)
("execline" ,execline)))
@@ -150,14 +150,14 @@ functionality with a very small amount of code.")))
(define-public s6-dns
(package
(name "s6-dns")
- (version "2.3.2.0")
+ (version "2.3.3.0")
(source
(origin
(method url-fetch)
(uri (string-append "https://skarnet.org/software/s6-dns/s6-dns-"
version ".tar.gz"))
(sha256
- (base32 "09hyb1xv9glqq0yy7wy8hiwvlr78kwv552pags8ancgamag15di7"))))
+ (base32 "05l74ciflaahlgjpvy1g0slydwqclxgybxrkpvdddd2yzwc5kira"))))
(build-system gnu-build-system)
(inputs `(("skalibs" ,skalibs)))
(arguments
@@ -179,14 +179,14 @@ as an alternative to the BIND, djbdns or other DNS clients.")))
(define-public s6-networking
(package
(name "s6-networking")
- (version "2.3.1.2")
+ (version "2.3.2.0")
(source
(origin
(method url-fetch)
(uri (string-append "https://skarnet.org/software/s6-networking/s6-networking-"
version ".tar.gz"))
(sha256
- (base32 "1029bgwfmv903y5ji93j75m7p2jgchdxya1khxzb42q2z7yxnlyr"))))
+ (base32 "04kxj579pm4n5ifc3gfmrqj74vqqfqc82d69avzkn3yrc226mqxv"))))
(build-system gnu-build-system)
(inputs `(("skalibs" ,skalibs)
("execline" ,execline)
@@ -263,7 +263,7 @@ environment.")))
(define-public s6-portable-utils
(package
(name "s6-portable-utils")
- (version "2.2.2.4")
+ (version "2.2.3.0")
(source
(origin
(method url-fetch)
@@ -271,7 +271,7 @@ environment.")))
"https://skarnet.org/software/s6-portable-utils/s6-portable-utils-"
version ".tar.gz"))
(sha256
- (base32 "0494saavpqfa4v5kib69p186858yjy87hm5qm804a4xvq51wqbwm"))))
+ (base32 "063zwifigg2b3wsixdcz4h9yvr6fkqssvx0iyfsprjfmm1yapfi9"))))
(build-system gnu-build-system)
(inputs `(("skalibs" ,skalibs)))
(arguments
@@ -307,7 +307,7 @@ systems and other constrained environments, but they work everywhere.")))
(build-system gnu-build-system)
(inputs
`(("execline" ,execline)
- ("s6", s6)
+ ("s6" ,s6)
("skalibs" ,skalibs)))
(arguments
'(#:configure-flags
@@ -340,7 +340,7 @@ all the details.")))
(define-public s6-linux-utils
(package
(name "s6-linux-utils")
- (version "2.5.1.2")
+ (version "2.5.1.3")
(source
(origin
(method url-fetch)
@@ -348,7 +348,7 @@ all the details.")))
"https://skarnet.org/software/s6-linux-utils/s6-linux-utils-"
version ".tar.gz"))
(sha256
- (base32 "0w4jms9qyb5kx9zcyd3gzri60rrii2rbmh08s59ckg4awy27py86"))))
+ (base32 "0wbv02zxaami88xbj2zg63kspz05bbplswg0c6ncb5g9khf52wa4"))))
(build-system gnu-build-system)
(inputs `(("skalibs" ,skalibs)))
(arguments
diff --git a/gnu/packages/sphinx.scm b/gnu/packages/sphinx.scm
index f27f9d0176..5ba9594135 100644
--- a/gnu/packages/sphinx.scm
+++ b/gnu/packages/sphinx.scm
@@ -48,14 +48,14 @@
(define-public python-sphinx
(package
(name "python-sphinx")
- (version "2.3.1")
+ (version "3.1.2")
(source
(origin
(method url-fetch)
(uri (pypi-uri "Sphinx" version))
(sha256
(base32
- "19a28nsb0w4bs6k8rdfyk6vzrcwdpvhs2wq77rgpmww59yvndrz6"))))
+ "1zd8l4dh0v4p8m7s51xr001k09cq2023dd0953ygw7xa76dypnmr"))))
(build-system python-build-system)
(arguments
`(#:phases
@@ -99,52 +99,7 @@
for Python projects or other documents consisting of multiple reStructuredText
sources.")
(license license:bsd-2)
- (properties `((python2-variant . ,(delay python2-sphinx))))))
-
-;; Sphinx 2 does not support Python 2, so we stick with this older version here.
-;; Remove this package once python2-pbcore no longer requires it.
-(define-public python2-sphinx
- (let ((base (package-with-python2 (strip-python2-variant python-sphinx))))
- (package
- (inherit base)
- (version "1.7.7")
- (source (origin
- (method url-fetch)
- (uri (pypi-uri "Sphinx" version))
- (sha256
- (base32
- "0pkkbfj7cl157q550gcs45am5y78ps0h7q6455d64s1zmw01jlvi"))))
- (arguments
- (substitute-keyword-arguments (package-arguments base)
- ((#:phases phases)
- `(modify-phases ,phases
- (add-before 'check 'disable-broken-tests
- (lambda _
- ;; These tests are broken when using Python2:
- ;; <https://github.com/sphinx-doc/sphinx/issues/4710>.
- (for-each delete-file '("tests/test_api_translator.py"
- "tests/test_setup_command.py"))
- #t))))))
- (native-inputs `(("python2-mock" ,python2-mock)
- ("python2-enum34" ,python2-enum34)
- ,@(package-native-inputs base)))
- ;; Sphinx 2 has some dependencies that do not support Python 2, so
- ;; we keep our own propagated-inputs here instead of inheriting.
- (propagated-inputs `(("python2-pytz" ,python2-pytz)
- ("python2-typing" ,python2-typing)
- ("python2-imagesize" ,python2-imagesize)
- ("python2-sphinx-alabaster-theme"
- ,python2-sphinx-alabaster-theme)
- ("python2-babel" ,python2-babel-2.6)
- ("python2-snowballstemmer" ,python2-snowballstemmer)
- ("python2-docutils" ,python2-docutils-0.14)
- ("python2-jinja2" ,python2-jinja2)
- ("python2-packaging" ,python2-packaging)
- ("python2-pygments" ,python2-pygments)
- ("python2-requests" ,python2-requests)
- ("python2-six" ,python2-six)
- ("python2-sphinxcontrib-websupport"
- ,python2-sphinxcontrib-websupport))))))
+ (properties `((python2-variant . ,(delay python-sphinx))))))
(define-public python-sphinxcontrib-applehelp
(package
diff --git a/gnu/packages/spice.scm b/gnu/packages/spice.scm
index 4aff8dbf56..2fb587aa7a 100644
--- a/gnu/packages/spice.scm
+++ b/gnu/packages/spice.scm
@@ -102,7 +102,7 @@ system to use the host GPU to accelerate 3D rendering.")
(define-public spice-protocol
(package
(name "spice-protocol")
- (version "0.14.2")
+ (version "0.14.3")
(source (origin
(method url-fetch)
(uri (string-append
@@ -110,7 +110,7 @@ system to use the host GPU to accelerate 3D rendering.")
"spice-protocol-" version ".tar.xz"))
(sha256
(base32
- "1sgi9ksb781qs47pdbw0bmnyg8dgayn5xrzj6vzdy043nv466flg"))))
+ "0yj8k7gcirrsf21w0q6146n5g4nzn2pqky4p90n5760m5ayfb1pr"))))
(build-system meson-build-system)
(arguments
`(#:phases
@@ -144,11 +144,8 @@ which allows users to view a desktop computing environment.")
(build-system gnu-build-system)
(propagated-inputs
`(("gstreamer" ,gstreamer)
- ("gst-libav" ,gst-libav)
("gst-plugins-base" ,gst-plugins-base)
("gst-plugins-good" ,gst-plugins-good)
- ("gst-plugins-bad" ,gst-plugins-bad)
- ("gst-plugins-ugly" ,gst-plugins-ugly)
("spice-protocol" ,spice-protocol)
;; These are required by the pkg-config files.
diff --git a/gnu/packages/ssh.scm b/gnu/packages/ssh.scm
index 79f8256a3f..ca99235a01 100644
--- a/gnu/packages/ssh.scm
+++ b/gnu/packages/ssh.scm
@@ -57,6 +57,8 @@
#:use-module (gnu packages popt)
#:use-module (gnu packages protobuf)
#:use-module (gnu packages python)
+ #:use-module (gnu packages python-crypto)
+ #:use-module (gnu packages python-web)
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages readline)
#:use-module (gnu packages texinfo)
@@ -123,7 +125,7 @@ file names.
(define-public libssh
(package
(name "libssh")
- (version "0.9.4")
+ (version "0.9.5")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -131,7 +133,7 @@ file names.
(commit (string-append "libssh-" version))))
(sha256
(base32
- "0qr4vi3k1wv69c95d9j26fiv78pzyksaq8ccd76b8nxar5z1fbj6"))
+ "1b2klflmn0mdkcyjl4dqfg116bf9nhmqm4qla5cqa9xis89a5bn6"))
(file-name (git-file-name name version))))
(build-system cmake-build-system)
(outputs '("out" "debug"))
@@ -182,7 +184,7 @@ a server that supports the SSH-2 protocol.")
(define-public openssh
(package
(name "openssh")
- (version "8.3p1")
+ (version "8.4p1")
(source (origin
(method url-fetch)
(uri (string-append "mirror://openbsd/OpenSSH/portable/"
@@ -190,7 +192,7 @@ a server that supports the SSH-2 protocol.")
(patches (search-patches "openssh-hurd.patch"))
(sha256
(base32
- "1cl74ghi9y21dc3f4xa0qamb7dhwacbynh1ks9syprrg8zhgpgpj"))))
+ "091b3pxdlj47scxx6kkf4agkx8c8sdacdxx8m1dw1cby80pd40as"))))
(build-system gnu-build-system)
(native-inputs `(("groff" ,groff)
("pkg-config" ,pkg-config)))
@@ -592,10 +594,13 @@ basis for almost any application.")
(substitute* "src/testsuite/login-auth-test"
(("/bin/cat") "cat"))
- #t))))
+ #t))
+ (patches (search-patches "lsh-fix-x11-forwarding.patch"))))
(build-system gnu-build-system)
(native-inputs
- `(("m4" ,m4)
+ `(("autoconf" ,autoconf)
+ ("automake" ,automake)
+ ("m4" ,m4)
("guile" ,guile-2.0)
("gperf" ,gperf)
("psmisc" ,psmisc))) ; for `killall'
@@ -613,7 +618,8 @@ basis for almost any application.")
;; The server (lshd) invokes xauth when X11 forwarding is requested.
;; This adds 24 MiB (or 27%) to the closure of lsh.
- ("xauth" ,xauth)))
+ ("xauth" ,xauth)
+ ("libxau" ,libxau))) ;also required for x11-forwarding
(arguments
'(;; Skip the `configure' test that checks whether /dev/ptmx &
;; co. work as expected, because it relies on impurities (for
@@ -626,14 +632,20 @@ basis for almost any application.")
;; 'lsh_argp.h' checks HAVE_ARGP_PARSE but nothing
;; defines it.
"CPPFLAGS=-DHAVE_ARGP_PARSE")
-
- ;; FIXME: Tests won't run in a chroot, presumably because
- ;; /etc/profile is missing, and thus clients get an empty $PATH
- ;; and nothing works.
- #:tests? #f
-
#:phases
(modify-phases %standard-phases
+ (add-after 'unpack 'disable-failing-tests
+ (lambda _
+ ;; FIXME: Most tests won't run in a chroot, presumably because
+ ;; /etc/profile is missing, and thus clients get an empty $PATH
+ ;; and nothing works. Run only the subset that passes.
+ (delete-file "configure") ;force rebootstrap
+ (substitute* "src/testsuite/Makefile.am"
+ (("seed-test \\\\") ;prevent trailing slash
+ "seed-test")
+ (("^\t(lsh|daemon|tcpip|socks|lshg|lcp|rapid7|lshd).*test.*")
+ ""))
+ #t))
(add-before 'configure 'pre-configure
(lambda* (#:key inputs #:allow-other-keys)
(let* ((nettle (assoc-ref inputs "nettle"))
@@ -694,7 +706,7 @@ manipulating key files.")
(base32
"0q7fblaczb7kwbsz0gdy9267z0sllzgmf0c7z5c9mf88wv74ycn6"))))
(build-system gnu-build-system)
- (description "sshpass is a tool for non-interactivly performing password
+ (description "sshpass is a tool for non-interactively performing password
authentication with SSH's so-called @dfn{interactive keyboard password
authentication}.")
(license license:gpl2+)))
@@ -852,3 +864,39 @@ program doesn't depend on any cryptographic libraries. It's a simple,
single-threaded, standalone C program. It uses @code{poll()} to trap multiple
clients at a time.")
(license license:unlicense)))
+
+(define-public webssh
+ (package
+ (name "webssh")
+ (version "1.5.2")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/huashengdun/webssh")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1l4bwzaifsd6pl120d400qkhvaznj2ck1lvwg76ycb08jsk6gpaz"))))
+ (build-system python-build-system)
+ (propagated-inputs
+ `(("python-paramiko" ,python-paramiko)
+ ("python-tornado" ,python-tornado)))
+ (home-page "https://webssh.huashengdun.org/")
+ (synopsis "Web application to be used as an SSH client")
+ (description "This package provides a web application to be used as an SSH
+client.
+
+Features:
+@itemize @bullet
+@item SSH password authentication supported, including empty password.
+@item SSH public-key authentication supported, including DSA RSA ECDSA
+Ed25519 keys.
+@item Encrypted keys supported.
+@item Two-Factor Authentication (time-based one-time password) supported.
+@item Fullscreen terminal supported.
+@item Terminal window resizable.
+@item Auto detect the ssh server's default encoding.
+@item Modern browsers are supported.
+@end itemize")
+ (license license:expat)))
diff --git a/gnu/packages/sssd.scm b/gnu/packages/sssd.scm
index aa91424b4d..b2b5da96f8 100644
--- a/gnu/packages/sssd.scm
+++ b/gnu/packages/sssd.scm
@@ -164,7 +164,7 @@ fundamental object types for C.")
("tdb" ,tdb)
("tevent" ,tevent)))
(native-inputs
- `(("check" ,check)
+ `(("check" ,check-0.14)
("docbook-xsl" ,docbook-xsl)
("docbook-xml" ,docbook-xml)
("libxml2" ,libxml2) ; for xmllint
diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm
index 82f97c679e..71ff921c62 100644
--- a/gnu/packages/statistics.scm
+++ b/gnu/packages/statistics.scm
@@ -702,14 +702,14 @@ analysis.")
(define-public r-survival
(package
(name "r-survival")
- (version "3.2-3")
+ (version "3.2-7")
(source
(origin
(method url-fetch)
(uri (cran-uri "survival" version))
(sha256
(base32
- "07h76r2y23w889257krlijcw4n4d7ssx92x7i5qb1xyv5gyvl3rx"))))
+ "0ila864g5b9yhjhk3jirgdpi06sksc0axa78890dmkvyv9rwsmjk"))))
(build-system r-build-system)
(propagated-inputs
`(("r-matrix" ,r-matrix)))
@@ -1415,13 +1415,13 @@ emitter (http://pyyaml.org/wiki/LibYAML) for R.")
(define-public r-knitr
(package
(name "r-knitr")
- (version "1.29")
+ (version "1.30")
(source (origin
(method url-fetch)
(uri (cran-uri "knitr" version))
(sha256
(base32
- "00rcwiq8znmk5h4qgrwd0639xyb38iwbjykqjk3disz3kvrcvbn1"))))
+ "0gn9qwc5762a6j0iywfwhalni52g228dcy4bl4di6d52cqsv3ars"))))
(build-system r-build-system)
(propagated-inputs
`(("r-evaluate" ,r-evaluate)
@@ -1965,13 +1965,13 @@ inference for statistical models.")
(define-public r-coda
(package
(name "r-coda")
- (version "0.19-3")
+ (version "0.19-4")
(source (origin
(method url-fetch)
(uri (cran-uri "coda" version))
(sha256
(base32
- "1mn50bshky968gn4nf6vnkaa768fnvm1xmhkms7szwdw9341zpyk"))))
+ "13z5dwfpnyyhpsbpg4xr9g5c1685jhqj90f4x4qkcykr6kykqba2"))))
(build-system r-build-system)
(propagated-inputs
`(("r-lattice" ,r-lattice)))
@@ -2034,14 +2034,14 @@ files in R. It is built on top of the libxml2 C library.")
(define-public r-multitaper
(package
(name "r-multitaper")
- (version "1.0-14")
+ (version "1.0-15")
(source
(origin
(method url-fetch)
(uri (cran-uri "multitaper" version))
(sha256
(base32
- "04wd9bbhyx7697pfy0fpj02v1csr48hkpqj62h9p8a6w84ji4k68"))))
+ "1gm3wr8xqpqiby7q1dr3zxim77v0bvvrqi0hlazf5g3gnkrp2zc3"))))
(build-system r-build-system)
(native-inputs
`(("gfortran" ,gfortran)))
@@ -2100,14 +2100,14 @@ limited to R.")
(define-public r-backports
(package
(name "r-backports")
- (version "1.1.9")
+ (version "1.1.10")
(source
(origin
(method url-fetch)
(uri (cran-uri "backports" version))
(sha256
(base32
- "1mz3r6ad484xmx0i89gvmak4wzl4cp59gxdzirrci9znw1axrrvx"))))
+ "1pq16bf40zx441ylmqqqilj3xp39r707h56kwqp5yqklq9yln2z1"))))
(build-system r-build-system)
(home-page "https://cran.r-project.org/web/packages/backports")
(synopsis "Reimplementations of functions introduced since R 3.0.0")
@@ -2322,14 +2322,14 @@ collation, and NAMESPACE files.")
(define-public r-openssl
(package
(name "r-openssl")
- (version "1.4.2")
+ (version "1.4.3")
(source
(origin
(method url-fetch)
(uri (cran-uri "openssl" version))
(sha256
(base32
- "17fkc6pr8w5z3rpadg692a689p1v4j7xl5ak0y64is7c74cxgljx"))))
+ "0sc2skh1nz7jj65p0pq4a6bl8jza6lyi4zvmvwndzxfgivgh281l"))))
(build-system r-build-system)
(inputs
`(("libressl" ,libressl)))
@@ -2426,13 +2426,13 @@ informative error messages when it's not available.")
(define-public r-devtools
(package
(name "r-devtools")
- (version "2.3.1")
+ (version "2.3.2")
(source (origin
(method url-fetch)
(uri (cran-uri "devtools" version))
(sha256
(base32
- "100mgighf6vqsfwv2qw5rlnd5sfvcji9l9jrmx9ii28r9fd2gyas"))))
+ "0vcqs4c5dfjs2ddkclv3z7zzix2zrnrxvzax8hjvjszgp8362275"))))
(build-system r-build-system)
(propagated-inputs
`(("r-callr" ,r-callr)
@@ -2467,13 +2467,13 @@ tools to simplify the devolpment of R packages.")
(define-public r-withr
(package
(name "r-withr")
- (version "2.2.0")
+ (version "2.3.0")
(source (origin
(method url-fetch)
(uri (cran-uri "withr" version))
(sha256
(base32
- "10mmfffjbnb2zq5x0kqhhb4z6va4micc6pjzvlfji34gyhffa8ac"))))
+ "1837vjp35npjrnis1im5xrwj1swpgnms00gkjiz7296l8yckrh1c"))))
(build-system r-build-system)
(native-inputs
`(("r-knitr" ,r-knitr)))
@@ -2511,22 +2511,27 @@ time-of-day values, based on the @code{difftime} class.")
(define-public r-readr
(package
(name "r-readr")
- (version "1.3.1")
+ (version "1.4.0")
(source (origin
(method url-fetch)
(uri (cran-uri "readr" version))
(sha256
(base32
- "1wz496rw0ah433p755n3xac8gh7yzid4xgdjzd1a7wmpkgilvy9k"))))
+ "1fa67h4l9d30ig460xizgzl115i9pm3bk9dvsbrw6awbmf51ic82"))))
(build-system r-build-system)
(propagated-inputs
- `(("r-clipr" ,r-clipr)
+ `(("r-cli" ,r-cli)
+ ("r-clipr" ,r-clipr)
+ ("r-cpp11" ,r-cpp11)
("r-crayon" ,r-crayon)
- ("r-rcpp" ,r-rcpp)
("r-hms" ,r-hms)
+ ("r-lifecycle" ,r-lifecycle)
("r-tibble" ,r-tibble)
("r-r6" ,r-r6)
+ ("r-rlang" ,r-rlang)
("r-bh" ,r-bh)))
+ (native-inputs
+ `(("r-knitr" ,r-knitr)))
(home-page "https://github.com/hadley/readr")
(synopsis "Read tabular data")
(description
@@ -2690,18 +2695,17 @@ certain criterion, e.g., it contains a certain regular file.")
(define-public r-rmarkdown
(package
(name "r-rmarkdown")
- (version "2.3")
+ (version "2.4")
(source
(origin
(method url-fetch)
(uri (cran-uri "rmarkdown" version))
(sha256
- (base32 "0vdjq4kcyxkr2m27588kk6yi5g53symjshj4jz4n0j18wz53shji"))))
+ (base32 "1y2156w1abik8df8vl376ilv8s1jg8i0x2w4n4dwrnm3xxgp5kf0"))))
(properties `((upstream-name . "rmarkdown")))
(build-system r-build-system)
(propagated-inputs
- `(("r-base64enc" ,r-base64enc)
- ("r-evaluate" ,r-evaluate)
+ `(("r-evaluate" ,r-evaluate)
("r-htmltools" ,r-htmltools)
("r-jsonlite" ,r-jsonlite)
("r-knitr" ,r-knitr)
@@ -2806,13 +2810,13 @@ a column in data frame.")
(define-public r-rsqlite
(package
(name "r-rsqlite")
- (version "2.2.0")
+ (version "2.2.1")
(source (origin
(method url-fetch)
(uri (cran-uri "RSQLite" version))
(sha256
(base32
- "1m38sj8rwbf3p2lhqabcp7c7djk7s9ng37cz39yxk706v9pi4380"))))
+ "0lynli9144dzb9vhxssba20v7z5h2nirawpvvy8ykv4n3ir7qlsl"))))
(properties `((upstream-name . "RSQLite")))
(build-system r-build-system)
(propagated-inputs
@@ -2824,6 +2828,8 @@ a column in data frame.")
("r-bit64" ,r-bit64)
("r-blob" ,r-blob)
("r-pkgconfig" ,r-pkgconfig)))
+ (native-inputs
+ `(("r-knitr" ,r-knitr)))
(home-page "https://github.com/rstats-db/RSQLite")
(synopsis "SQLite interface for R")
(description
@@ -3604,13 +3610,13 @@ t-probabilities, quantiles, random deviates and densities.")
(define-public r-matrixstats
(package
(name "r-matrixstats")
- (version "0.56.0")
+ (version "0.57.0")
(source (origin
(method url-fetch)
(uri (cran-uri "matrixStats" version))
(sha256
(base32
- "09qgfv9x32x6ncgf19iy7yjp26fwy6p5wm8spc2xzfc0qhylmqrr"))))
+ "0hzkx7yi9ira476izsgw7r2bhv72ra4z2m9zr1i1f4ivrn3ihs7r"))))
(properties `((upstream-name . "matrixStats")))
(build-system r-build-system)
(native-inputs
@@ -4079,27 +4085,6 @@ framework, with additional code inspection and report generation tools.")
hierarchical clustering dendrograms.")
(license license:gpl2+)))
-(define-public r-preprocesscore
- (package
- (name "r-preprocesscore")
- (version "1.50.0")
- (source
- (origin
- (method url-fetch)
- (uri (bioconductor-uri "preprocessCore" version))
- (sha256
- (base32
- "0q1406kswylc8zn5k3wyd34p34pfzbhi1ggkfsh30zcjp6adbwjl"))))
- (properties
- `((upstream-name . "preprocessCore")))
- (build-system r-build-system)
- (home-page "https://github.com/bmbolstad/preprocessCore")
- (synopsis "Collection of pre-processing functions")
- (description
- "This package provides a library of core pre-processing and normalization
-routines.")
- (license license:lgpl2.0+)))
-
(define-public r-fastcluster
(package
(name "r-fastcluster")
@@ -4217,18 +4202,17 @@ including:
(define-public r-gplots
(package
(name "r-gplots")
- (version "3.0.4")
+ (version "3.1.0")
(source
(origin
(method url-fetch)
(uri (cran-uri "gplots" version))
(sha256
(base32
- "15ip3v4xiqzbanf8bc5fj90cbwdgixr72aj5jrp34jfdzdx0gxwg"))))
+ "05rislwgaw6v5dmhcwyvc04hi1fgaxrpb61f66kx483px45w6f24"))))
(build-system r-build-system)
(propagated-inputs
`(("r-catools" ,r-catools)
- ("r-gdata" ,r-gdata)
("r-gtools" ,r-gtools)
("r-kernsmooth" ,r-kernsmooth)))
(native-inputs
@@ -4927,14 +4911,14 @@ of the points.")
(define-public r-fpc
(package
(name "r-fpc")
- (version "2.2-7")
+ (version "2.2-8")
(source
(origin
(method url-fetch)
(uri (cran-uri "fpc" version))
(sha256
(base32
- "1xnp3j36hggfg675v39mnr6rgvp7i11pfng7nmyy3k2ldgklz0j9"))))
+ "07a125pji1flmybn6iidcnizwnqyl6chnrckxa5jp4qxxfdqx658"))))
(build-system r-build-system)
(propagated-inputs
`(("r-class" ,r-class)
@@ -5096,13 +5080,13 @@ using modular prediction and response module classes.")
(define-public r-quantreg
(package
(name "r-quantreg")
- (version "5.67")
+ (version "5.73")
(source
(origin
(method url-fetch)
(uri (cran-uri "quantreg" version))
(sha256
- (base32 "09hgch8x6x2k7wm17c0njp7l0r6rrrlcji60afrv19dm9r4596wr"))))
+ (base32 "0mjwwj3c7cfnprlh90ld0f1lll0mrqbx8mpnbfr7bvzg8h6072y4"))))
(build-system r-build-system)
(native-inputs
`(("gfortran" ,gfortran)))
@@ -5230,13 +5214,13 @@ Companion to Applied Regression, Third Edition, Sage.")
(define-public r-car
(package
(name "r-car")
- (version "3.0-9")
+ (version "3.0-10")
(source
(origin
(method url-fetch)
(uri (cran-uri "car" version))
(sha256
- (base32 "1clh8c7mj87i4hz27l16w76dpw7k4mlnjbgm9mbrhrfkv0lpb63c"))))
+ (base32 "1w95b7xm0bna3qm637pwyv4s7294ffz9dl153naprd79zv91dqqw"))))
(build-system r-build-system)
(propagated-inputs
`(("r-abind" ,r-abind)
@@ -5383,14 +5367,14 @@ multivariate case.")
(define-public r-tclust
(package
(name "r-tclust")
- (version "1.4-1")
+ (version "1.4-2")
(source
(origin
(method url-fetch)
(uri (cran-uri "tclust" version))
(sha256
(base32
- "17md6l9v9dl9b72l84df01b52h2xiynbcjm437mv9mzcr09fc2sb"))))
+ "1nb5iky4kc832627jf28lzj19wrvgwg5da6fyl3kyf0npmyx1p4m"))))
(build-system r-build-system)
;; These are all suggested packages, not build dependencies.
(propagated-inputs
@@ -5805,78 +5789,81 @@ Java package that provides routines for various statistical distributions.")
(license license:gpl2+)))
(define-public emacs-ess
- (package
- (name "emacs-ess")
- (version "18.10.2")
- (source (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/emacs-ess/ESS")
- (commit (string-append "v" version))))
- (sha256
- (base32
- "1yq41l2bicwjrc0b731iic20cpcnz6ppigri1jn621qv2qv22vy3"))
- (file-name (git-file-name name version))
- (modules '((guix build utils)))
- (snippet
- '(begin
- ;; Stop ESS from trying to bundle an external julia-mode.el.
- (substitute* "lisp/Makefile"
- (("^ess-julia.elc: julia-mode.elc") "")
- (("^all: julia-mode.el")
- "all:"))
- ;; Include *.el files in install target.
- (substitute* "lisp/Makefile"
- (("\t\\$\\(INSTALL) \\$\\(ELC\\) \\$\\(LISPDIR\\)" elc)
- (string-append "\t$(INSTALL) $(ELS) ess-autoloads.el "
- "$(LISPDIR)\n" elc)))
- ;; Only build docs in info format.
- (substitute* "doc/Makefile"
- (("all : info text")
- "all : info")
- (("install: install-info install-other-docs")
- "install: install-info"))
- ;; Stop install-info from trying to update the info directory.
- (substitute* "doc/Makefile"
- ((".*\\$\\(INFODIR\\)/dir.*") ""))
- ;; Fix roxygen preview test.
- (substitute* "test/ess-r-tests.el"
- (("Add together two numbers.\n")
- "Add together two numbers. ")
- (("##' add\\(10, 1\\)") "add(10, 1)"))
- #t))))
- (build-system gnu-build-system)
- (arguments
- (let ((base-directory "/share/emacs/site-lisp"))
- `(#:make-flags (list (string-append "PREFIX=" %output)
- (string-append "ETCDIR=" %output
- ,base-directory "/etc")
- (string-append "LISPDIR=" %output
- ,base-directory))
- #:phases
- (modify-phases %standard-phases
- (delete 'configure)
- (add-before 'build 'more-shebang-patching
- (lambda* (#:key inputs #:allow-other-keys)
- (substitute* "Makeconf"
- (("SHELL = /bin/sh")
- (string-append "SHELL = " (which "sh"))))
- #t))
- (replace 'check
- (lambda _
- (invoke "make" "test")))))))
- (inputs
- `(("emacs" ,emacs-minimal)
- ("r-minimal" ,r-minimal)))
- (native-inputs
- `(("perl" ,perl)
- ("r-roxygen2" ,r-roxygen2)
- ("texinfo" ,texinfo)))
- (propagated-inputs
- `(("emacs-julia-mode" ,emacs-julia-mode)))
- (home-page "https://ess.r-project.org/")
- (synopsis "Emacs mode for statistical analysis programs")
- (description "Emacs Speaks Statistics (ESS) is an add-on package for GNU
-Emacs. It is designed to support editing of scripts and interaction with
-various statistical analysis programs such as R, Julia, and JAGS.")
- (license license:gpl2+)))
+ ;; Latest release is old. This is not the latest commit either due to bug
+ ;; reported here: <https://github.com/emacs-ess/ESS/issues/987>.
+ (let ((commit "24da603184ce39246611dd5b8602e769d7ebd5bf")
+ (version "18.10.2")
+ (revision "0"))
+ (package
+ (name "emacs-ess")
+ (version (git-version version revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/emacs-ess/ESS")
+ (commit commit)))
+ (sha256
+ (base32 "0j98lv07nzwzd54d4dgcfz01wy5gj48m0mnirxzh5r45ik2myh1r"))
+ (file-name (git-file-name name version))
+ (modules '((guix build utils)))
+ (snippet
+ '(begin
+ ;; Stop ESS from trying to bundle an external julia-mode.el.
+ (substitute* "lisp/Makefile"
+ ((" \\$\\(JULIAS)") "")
+ (("\ttest.*julia-mode.*\\.el") ""))
+ ;; Only build docs in info format.
+ (substitute* "doc/Makefile"
+ (("all : info text")
+ "all : info")
+ (("install: install-info install-other-docs")
+ "install: install-info"))
+ ;; Stop install-info from trying to update the info directory.
+ (substitute* "doc/Makefile"
+ ((".*/dir.*") ""))
+ ;; Fix r-help-mode test.
+ (substitute* "test/ess-test-r.el"
+ (("\\(equal ess-help-object \"plot.default\")") "t"))
+ ;; Avoid generating ess-autoloads.el twice.
+ (substitute* "Makefile"
+ (("all: lisp doc etc autoloads")
+ "all: lisp doc etc"))
+ ;; Install to correct directories.
+ (substitute* "Makefile"
+ (("mkdir -p \\$\\(ESSDESTDIR)")
+ "$(MAKE) -C lisp install; $(MAKE) -C doc install")
+ (("\\$\\(INSTALL) -R \\./\\* \\$\\(ESSDESTDIR)/")
+ "$(MAKE) -C etc install"))
+ #t))))
+ (build-system gnu-build-system)
+ (arguments
+ (let ((base-directory "/share/emacs/site-lisp"))
+ `(#:make-flags (list (string-append "PREFIX=" %output)
+ (string-append "ETCDIR=" %output
+ ,base-directory "/etc")
+ (string-append "LISPDIR=" %output
+ ,base-directory)
+ (string-append "INFODIR=" %output
+ "/share/info"))
+ #:phases
+ (modify-phases %standard-phases
+ (delete 'configure)
+ (replace 'check
+ (lambda _ (invoke "make" "test")))))))
+ (native-inputs
+ `(("perl" ,perl)
+ ("r-roxygen2" ,r-roxygen2)
+ ("texinfo" ,texinfo)))
+ (inputs
+ `(("emacs" ,emacs-minimal)
+ ("r-minimal" ,r-minimal)))
+ (propagated-inputs
+ `(("emacs-julia-mode" ,emacs-julia-mode)))
+ (home-page "https://ess.r-project.org/")
+ (synopsis "Emacs mode for statistical analysis programs")
+ (description
+ "Emacs Speaks Statistics (ESS) is an add-on package for GNU Emacs. It
+is designed to support editing of scripts and interaction with various
+statistical analysis programs such as R, Julia, and JAGS.")
+ (license license:gpl3+))))
diff --git a/gnu/packages/suckless.scm b/gnu/packages/suckless.scm
index 51a82a58d9..7e297eb9ae 100644
--- a/gnu/packages/suckless.scm
+++ b/gnu/packages/suckless.scm
@@ -137,14 +137,14 @@ optimising the environment for the application in use and the task performed.")
(define-public dmenu
(package
(name "dmenu")
- (version "4.9")
+ (version "5.0")
(source (origin
(method url-fetch)
(uri (string-append "https://dl.suckless.org/tools/dmenu-"
version ".tar.gz"))
(sha256
(base32
- "0ia9nqr83bv6x247q30bal0v42chcj9qcjgv59xs6xj46m7iz5xk"))))
+ "1lvfxzg3chsgcqbc2vr0zic7vimijgmbvnspayx73kyvqi1f267y"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; no tests
diff --git a/gnu/packages/syndication.scm b/gnu/packages/syndication.scm
index eea6817ce6..82d3fa3a21 100644
--- a/gnu/packages/syndication.scm
+++ b/gnu/packages/syndication.scm
@@ -53,7 +53,7 @@
(define-public newsboat
(package
(name "newsboat")
- (version "2.20.1")
+ (version "2.21")
(source
(origin
(method url-fetch)
@@ -61,13 +61,7 @@
"/newsboat-" version ".tar.xz"))
(sha256
(base32
- "0rimjikni96m52vhymgsg1b9g99af6ggyzd1lpvhgqsznxwj0y42"))
- (modules '((guix build utils)))
- (snippet
- '(begin
- (substitute* "rust/libnewsboat/Cargo.toml"
- (("= 1.0.17") "1.0.17"))
- #t))))
+ "0ccwbb3maini18453wjqn8m3bd7zzm6dn5a9vpb8smxv8vfv6ihc"))))
(build-system cargo-build-system)
(native-inputs
`(("gettext" ,gettext-minimal)
@@ -77,7 +71,7 @@
("asciidoctor" ,ruby-asciidoctor)))
(inputs
`(("curl" ,curl)
- ("json-c" ,json-c-0.13)
+ ("json-c" ,json-c)
("libxml2" ,libxml2)
("ncurses" ,ncurses)
("stfl" ,stfl)
@@ -93,18 +87,15 @@
("rust-chrono" ,rust-chrono-0.4)
("rust-clap" ,rust-clap-2)
("rust-curl-sys" ,rust-curl-sys-0.4)
- ("rust-dirs" ,rust-dirs-2.0)
- ("rust-gettext-rs" ,rust-gettext-rs-0.4)
+ ("rust-gettext-rs" ,rust-gettext-rs-0.5)
("rust-gettext-sys" ,rust-gettext-sys-0.19)
+ ("rust-lazy-static" ,rust-lazy-static-1)
("rust-libc" ,rust-libc-0.2)
- ("rust-libz-sys" ,rust-libz-sys-1)
("rust-natord" ,rust-natord-1.0)
("rust-nom" ,rust-nom-5)
- ("rust-once-cell" ,rust-once-cell-1.2)
- ("rust-percent-encoding" ,rust-percent-encoding-2.1)
- ("rust-rand" ,rust-rand-0.6)
- ("rust-smallvec" ,rust-smallvec-0.6)
- ("rust-url" ,rust-url-2.1)
+ ("rust-once-cell" ,rust-once-cell-1)
+ ("rust-rand" ,rust-rand-0.7)
+ ("rust-url" ,rust-url-2)
("rust-unicode-width" ,rust-unicode-width-0.1)
("rust-xdg" ,rust-xdg-2.2))
#:cargo-development-inputs
@@ -119,6 +110,11 @@
(delete-file-recursively
(string-append vendor-dir "/" ,name "-" ,version ".tar.xz"))
#t))
+ (add-after 'unpack 'patch-source
+ (lambda _
+ (substitute* "Makefile"
+ (("Cargo.lock") ""))
+ #t))
(replace 'build
(lambda* args
((assoc-ref gnu:%standard-phases 'build)
@@ -169,6 +165,9 @@ file system, and many more features.")
'("asciidoctor" "openssl"))
;; For building documentation.
("asciidoc" ,asciidoc)))
+ (inputs
+ `(("json-c" ,json-c-0.13)
+ ,@(alist-delete "json-c" (package-inputs newsboat))))
(arguments
'(#:phases
(modify-phases %standard-phases
diff --git a/gnu/packages/task-management.scm b/gnu/packages/task-management.scm
index 601a3616f7..3c0efe13e2 100644
--- a/gnu/packages/task-management.scm
+++ b/gnu/packages/task-management.scm
@@ -1,5 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2015 Tomáš Čech <sleep_walker@suse.cz>
+;;; Copyright © 2020 Vinicius Monego <monego@posteo.net>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -19,11 +20,22 @@
(define-module (gnu packages task-management)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
+ #:use-module (gnu packages freedesktop)
+ #:use-module (gnu packages gettext)
+ #:use-module (gnu packages glib)
+ #:use-module (gnu packages gnome)
+ #:use-module (gnu packages gstreamer)
+ #:use-module (gnu packages gtk)
#:use-module (gnu packages linux)
#:use-module (gnu packages lua)
+ #:use-module (gnu packages pkg-config)
+ #:use-module (gnu packages python)
#:use-module (gnu packages tls)
#:use-module (guix download)
- #:use-module (guix build-system cmake))
+ #:use-module (guix git-download)
+ #:use-module (guix utils)
+ #:use-module (guix build-system cmake)
+ #:use-module (guix build-system meson))
(define-public taskwarrior
(package
@@ -59,3 +71,57 @@
Done time management method. It supports network synchronization, filtering
and querying data, exposing task data in multiple formats to other tools.")
(license license:expat)))
+
+(define-public blanket
+ (package
+ (name "blanket")
+ (version "0.3.1")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/rafaelmardojai/blanket/")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "13xip9b2p2ai2jchkck71c849s2rlxzfvlbsgpraw9hswi0rk0jg"))))
+ (build-system meson-build-system)
+ (arguments
+ `(#:glib-or-gtk? #t
+ #:tests? #f ;the "Validate appstream file" test fails
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'wrap 'wrap-libs
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (gi-typelib-path (getenv "GI_TYPELIB_PATH"))
+ (gst-plugin-path (getenv "GST_PLUGIN_SYSTEM_PATH"))
+ (python-path (getenv "PYTHONPATH")))
+ (wrap-program (string-append out "/bin/blanket")
+ `("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path))
+ `("GST_PLUGIN_SYSTEM_PATH" ":" prefix (,gst-plugin-path))
+ `("PYTHONPATH" ":" prefix (,python-path))))
+ #t)))))
+ (native-inputs
+ `(("desktop-file-utils" ,desktop-file-utils)
+ ("gettext" ,gettext-minimal)
+ ("glib:bin" ,glib "bin")
+ ("gobject-introspection" ,gobject-introspection)
+ ("gtk+:bin" ,gtk+ "bin")
+ ("pkg-config" ,pkg-config)))
+ (inputs
+ `(("appstream-glib" ,appstream-glib)
+ ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
+ ("gst-plugins-bad" ,gst-plugins-bad)
+ ("gst-plugins-good" ,gst-plugins-good) ;for ScaleTempo plugin
+ ("gtk+" ,gtk+)
+ ("libhandy" ,libhandy)
+ ("python-gst" ,python-gst)
+ ("python-pygobject" ,python-pygobject)))
+ (home-page "https://github.com/rafaelmardojai/blanket")
+ (synopsis "Ambient sound and noise player")
+ (description
+ "Blanket provides different ambient sounds and types of noise to listen
+to with the goal of improving your focus and enhancing your productivity.
+You can also use it to fall asleep in a noisy environment.")
+ (license license:gpl3+)))
diff --git a/gnu/packages/tbb.scm b/gnu/packages/tbb.scm
index a0bf631baa..5f1438667d 100644
--- a/gnu/packages/tbb.scm
+++ b/gnu/packages/tbb.scm
@@ -29,7 +29,7 @@
(define-public tbb
(package
(name "tbb")
- (version "2020.2")
+ (version "2020.3")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -38,7 +38,7 @@
(file-name (git-file-name name version))
(sha256
(base32
- "0h8kdxikpq2v4a2h9cj33ril9kj0ig47n0vvbd92wabkn442jwar"))
+ "0r9axsdlmacjlcnax4vkzg86nwf8lsx7wbqdi3wnryaxk0xvdcx6"))
(modules '((guix build utils)))
(snippet
'(begin
diff --git a/gnu/packages/terminals.scm b/gnu/packages/terminals.scm
index 57c84d7718..e596c1b81f 100644
--- a/gnu/packages/terminals.scm
+++ b/gnu/packages/terminals.scm
@@ -53,6 +53,7 @@
#:use-module (gnu packages cmake)
#:use-module (gnu packages compression)
#:use-module (gnu packages crates-io)
+ #:use-module (gnu packages crates-graphics)
#:use-module (gnu packages crypto)
#:use-module (gnu packages docbook)
#:use-module (gnu packages fontutils)
@@ -220,24 +221,29 @@ text-based approach to terminal recording.")
(package
(name "libtsm")
(version (git-version "0.0.0" revision commit))
- (source (origin
- (method git-fetch)
- ;; The freedesktop repository is no longer maintained.
- (uri (git-reference
- (url (string-append "https://github.com/Aetf/" name))
- (commit commit)))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "0mwn91i5h5d518i1s05y7hzv6bc13vzcvxszpfh77473iwg4wprx"))))
+ (source
+ (origin
+ (method git-fetch)
+ ;; The freedesktop repository is no longer maintained.
+ (uri (git-reference
+ (url (string-append "https://github.com/Aetf/" name))
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0mwn91i5h5d518i1s05y7hzv6bc13vzcvxszpfh77473iwg4wprx"))
+ (modules '((guix build utils)))
+ (snippet
+ '(begin
+ ;; Remove a bundled copy of libxkbcommon's xkbcommon-keysyms.h.
+ (delete-file-recursively "external/xkbcommon")
+ #t))))
(build-system cmake-build-system)
(arguments
`(#:configure-flags '("-DBUILD_TESTING=ON")))
(native-inputs
- `(("pkg-config" ,pkg-config)))
- (inputs
- `(("libxkbcommon" ,libxkbcommon)
- ("check" ,check)))
+ `(("check" ,check)
+ ("libxkbcommon" ,libxkbcommon) ; for xkbcommon-keysyms.h
+ ("pkg-config" ,pkg-config)))
(synopsis "Xterm state machine library")
(description "TSM is a state machine for DEC VT100-VT520 compatible
terminal emulators. It tries to support all common standards while keeping
@@ -426,7 +432,7 @@ to all types of devices that provide serial consoles.")
allowing different sounds to indicate different events. While it can be run
quite happily on the command line, its intended place of residence is within
scripts, notifying the user when something interesting occurs. Of course, it
-has no notion of what's interesing, but it's very good at that notifying part.")
+has no notion of what's interesting, but it's very good at that notifying part.")
(home-page "https://github.com/spkr-beep/beep")
(license license:gpl2+)))
@@ -731,7 +737,7 @@ programmer to write text-based user interfaces.")
(define-public go-github-com-junegunn-fzf
(package
(name "go-github-com-junegunn-fzf")
- (version "0.18.0")
+ (version "0.22.0")
(source
(origin
(method git-fetch)
@@ -741,7 +747,7 @@ programmer to write text-based user interfaces.")
(file-name (git-file-name name version))
(sha256
(base32
- "0pwpr4fpw56yzzkcabzzgbgwraaxmp7xzzmap7w1xsrkbj7dl2xl"))))
+ "0n0cy5q2r3dm1a3ivlzrv9c5d11awxlqim5b9x8zc85dlr73n35l"))))
(build-system go-build-system)
(arguments
`(#:import-path "github.com/junegunn/fzf"))
@@ -750,6 +756,8 @@ programmer to write text-based user interfaces.")
("go-github-com-mattn-go-shellwords" ,go-github-com-mattn-go-shellwords)
("go-github-com-mattn-go-isatty" ,go-github-com-mattn-go-isatty)
("go-github-com-gdamore-tcell" ,go-github-com-gdamore-tcell)
+ ("go-github-com-saracen-walker" ,go-github-com-saracen-walker)
+ ("go-golang.org-x-sync-errgroup" ,go-golang.org-x-sync-errgroup)
("go-golang-org-x-crypto" ,go-golang-org-x-crypto)))
(home-page "https://github.com/junegunn/fzf")
(synopsis "Command-line fuzzy-finder")
@@ -1175,7 +1183,7 @@ made by suckless.")
("rust-mio" ,rust-mio-0.6)
("rust-mio-extras" ,rust-mio-extras-2)
("rust-terminfo" ,rust-terminfo-0.6)
- ("rust-url" ,rust-url-2.1)
+ ("rust-url" ,rust-url-2)
("rust-vte" ,rust-vte-0.3)
("rust-nix" ,rust-nix-0.15)
("rust-miow" ,rust-miow-0.3)
diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm
index 1252ba031b..2623c256d5 100644
--- a/gnu/packages/tex.scm
+++ b/gnu/packages/tex.scm
@@ -7376,3 +7376,158 @@ subdivided bibliographies, such as bibliographies per chapter or
section.
@end enumerate\n")
(license license:lppl1.3c))))
+
+(define-public texlive-todonotes
+ (let ((template (simple-texlive-package
+ "texlive-todonotes"
+ (list "/doc/latex/todonotes/"
+ "/tex/latex/todonotes/")
+ (base32
+ "0lvxsskz4bdfxhd59hf77kiq8k4nh2spb66vc6hifdgi21z8r8wm")
+ #:trivial? #t)))
+ (package
+ (inherit template)
+ (propagated-inputs
+ `(("texlive-latex-pgf" ,texlive-latex-pgf)
+ ("texlive-latex-xkeyval" ,texlive-latex-xkeyval)))
+ (home-page "http://www.ctan.org/pkg/todonotes")
+ (synopsis "Marking things to do in a LaTeX document")
+ (description "The @code{todonotes} package lets the user mark
+things to do later, in a simple and visually appealing way. The
+package takes several options to enable customization and finetuning
+of the visual appearance.")
+ (license license:lppl1.3+))))
+
+(define-public texlive-units
+ (let ((template (simple-texlive-package
+ "texlive-units"
+ (list "/doc/latex/units/"
+ "/tex/latex/units/")
+ (base32
+ "1ia1vzy8dp7pdvmawwnmh9lmkajmpnnh62dixrjpb6mnxq118bfd")
+ #:trivial? #t)))
+ (package
+ (inherit template)
+ (home-page "http://www.ctan.org/pkg/units")
+ (synopsis "Typeset physical units and fractions")
+ (description "@code{units} is a package for typesetting physical
+units in a standard-looking way. The package is based upon
+@code{nicefrac}, a package for typing fractions. @code{nicefrac} is
+included in the @code{units} bundle.")
+ (license license:gpl3+))))
+
+(define-public texlive-microtype
+ (let ((template (simple-texlive-package
+ "texlive-microtype"
+ (list "/doc/latex/microtype/"
+ "/tex/latex/microtype/")
+ (base32
+ "0xmjpzbj4nqmnl5m7xx1bshdk2c8n57rmbvn0j479ypj4wdlq9iy")
+ #:trivial? #t)))
+ (package
+ (inherit template)
+ (home-page "http://www.ctan.org/pkg/microtype")
+ (synopsis "Subliminal refinements towards typographical perfection")
+ (description "@code{microtype} provides a LaTeX interface to the
+micro-typographic extensions that were introduced by pdfTeX and have
+since propagated to XeTeX and LuaTeX: most prominently character
+protrusion and font expansion, the adjustment of kerning and interword
+spacing, hyphenatable letterspacing and the possibility to disable all
+or selected ligatures. These features may be applied to customisable
+sets of fonts. All micro-typographic aspects of the fonts can be
+configured in a straight-forward and flexible way. Settings for
+various fonts are provided. An alternative package
+@code{letterspace}, which also works with plain TeX, is included in
+the bundle.")
+ (license license:lppl1.3c))))
+
+(define-public texlive-caption
+ (let ((template (simple-texlive-package
+ "texlive-caption"
+ (list "/doc/latex/caption/"
+ "/tex/latex/caption/")
+ (base32
+ "09gmh8yjj9f5zak8r18g87w9p5jn7flnvmlhxmvdq6992mbdc6hg")
+ #:trivial? #t)))
+ (package
+ (inherit template)
+ (home-page "http://www.ctan.org/pkg/caption")
+ (synopsis "Customising captions in floating environments")
+ (description "The @code{caption} package provides many ways to
+customise the captions in floating environments like figure and table.
+Facilities include rotating captions, sideways captions and continued
+captions (for tables or figures that come in several parts). A list
+of compatibility notes, for other packages, is provided in the
+documentation. The package also provides the \"caption outside
+float\" facility, in the same way that simpler packages like
+@code{capt-ofcapt-of} do. The package supersedes @code{caption2}.
+Packages @code{bicaption}, @code{ltcaption}, @code{newfloat},
+@code{subcaption} and @code{totalcount} are included in the bundle.")
+ (license license:lppl1.3+))))
+
+(define-public texlive-symbol
+ (package
+ (inherit (simple-texlive-package
+ "texlive-symbol"
+ (list "/dvips/symbol/"
+ "/fonts/afm/adobe/symbol/"
+ "/fonts/afm/urw/symbol/"
+ "/fonts/tfm/adobe/symbol/"
+ "/fonts/tfm/urw35vf/symbol/"
+ "/fonts/type1/urw/symbol/"
+ "/fonts/map/dvips/symbol/"
+ "/tex/latex/symbol/")
+ (base32
+ "01xiygb88xwi7rfvh1zrlxzi5pqb5fvylws5zzszg379iz4pyzwj")
+ #:trivial? #t))
+ (home-page "https://ctan.org/pkg/urw-base35")
+ (synopsis "URW Base 35 font pack for LaTeX")
+ (description "This package provides a drop-in replacement for the
+Symbol font from Adobe's basic set.")
+ (license license:gpl2)))
+
+(define-public texlive-mathpazo
+ (package
+ (inherit (simple-texlive-package
+ "texlive-mathpazo"
+ (list "/doc/latex/mathpazo/"
+ "/fonts/afm/public/mathpazo/"
+ "/fonts/tfm/public/mathpazo/"
+ "/fonts/type1/public/mathpazo/"
+ "/fonts/vf/public/mathpazo/")
+ (base32
+ "02in6hdnbnkz216mpy8g6fk3wmlls8nh5982vmg37vhbj77lk0rh")
+ #:trivial? #t))
+ (home-page "http://www.ctan.org/pkg/mathpazo")
+ (synopsis "Fonts to typeset mathematics to match Palatino")
+ (description "The Pazo Math fonts are a family of PostScript fonts
+suitable for typesetting mathematics in combination with the Palatino
+family of text fonts. The Pazo Math family is made up of five fonts
+provided in Adobe Type 1 format. These contain glyphs that are
+usually not available in Palatino and for which Computer Modern looks
+odd when combined with Palatino. These glyphs include the uppercase
+Greek alphabet in upright and slanted shapes, the lowercase Greek
+alphabet in slanted shape, several mathematical glyphs and the
+uppercase letters commonly used to represent various number sets.
+LaTeX macro support is provided in package @code{psnfss}.")
+ (license license:gpl3+)))
+
+(define-public texlive-fpl
+ (package
+ (inherit (simple-texlive-package
+ "texlive-fpl"
+ (list "/doc/fonts/fpl/"
+ "/source/fonts/fpl/"
+ "/fonts/afm/public/fpl/"
+ "/fonts/type1/public/fpl/")
+ (base32
+ "02gkl516z9kn8xqs269pdkqn37sxm8ib0pcs43s4rs2rhyyl5z68")
+ #:trivial? #t))
+ (home-page "https://www.ctan.org/pkg/fpl")
+ (synopsis "SC and OsF fonts for URW Palladio L")
+ (description "The FPL Fonts provide a set of SC/OsF fonts for URW
+Palladio L which are compatible with the Palatino SC/OsF fonts from
+Adobe. LaTeX use is enabled by the mathpazo package, which is part of
+the @code{psnfss} distribution.")
+ ;; Either LPPL version 1.0 or later, or GPL version 2
+ (license (list license:lppl1.0+ license:gpl2))))
diff --git a/gnu/packages/text-editors.scm b/gnu/packages/text-editors.scm
index 18f1c00da5..ed88c8de1c 100644
--- a/gnu/packages/text-editors.scm
+++ b/gnu/packages/text-editors.scm
@@ -227,7 +227,7 @@ bindings and many of the powerful features of GNU Emacs.")
(define-public jucipp
(package
(name "jucipp")
- (version "1.6.0")
+ (version "1.6.1")
(home-page "https://gitlab.com/cppit/jucipp")
(source (origin
(method git-fetch)
@@ -239,7 +239,7 @@ bindings and many of the powerful features of GNU Emacs.")
(recursive? #t)))
(file-name (git-file-name name version))
(sha256
- (base32 "177myy6qvjlb6j3f3i3xmfml5r3p9in8xzpvm0n59dn56s81gpnr"))))
+ (base32 "0lb477acqrm3fy3j6i7j9l68j48cnkrzi80588npwwjssqicy4g6"))))
(build-system cmake-build-system)
(arguments
`(#:configure-flags '("-DBUILD_TESTING=ON"
@@ -802,14 +802,14 @@ Octave. TeXmacs is completely extensible via Guile.")
(define-public scintilla
(package
(name "scintilla")
- (version "4.4.4")
+ (version "4.4.5")
(source
(origin
(method url-fetch)
(uri (let ((v (apply string-append (string-split version #\.))))
(string-append "https://www.scintilla.org/scintilla" v ".tgz")))
(sha256
- (base32 "1zjsb6iiqi4cw9r9md3xv8qyy86ssz11p680xn7vmllrxshxvs8y"))))
+ (base32 "1v1kyxj7rv5rxadbg8gl8wh1jafpy7zj0wr6dcyxq9209dl6h8ag"))))
(build-system gnu-build-system)
(arguments
`(#:make-flags (list "GTK3=1" "CC=gcc" "-Cgtk")
diff --git a/gnu/packages/textutils.scm b/gnu/packages/textutils.scm
index 6ee3442c76..7cbbe5f61d 100644
--- a/gnu/packages/textutils.scm
+++ b/gnu/packages/textutils.scm
@@ -5,7 +5,7 @@
;;; Copyright © 2015 Roel Janssen <roel@gnu.org>
;;; Copyright © 2016 Jelle Licht <jlicht@fsfe.org>
;;; Copyright © 2016 Alex Griffin <a@ajgrf.com>
-;;; Copyright © 2016, 2018, 2019 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2016, 2018, 2019, 2020 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 Nikita <nikita@n0.is>
;;; Copyright © 2016, 2020 Marius Bakke <marius@gnu.org>
;;; Copyright © 2017 Eric Bavier <bavier@member.fsf.org>
@@ -67,18 +67,19 @@
(define-public dos2unix
(package
(name "dos2unix")
- (version "7.4.1")
+ (version "7.4.2")
(source
(origin
(method url-fetch)
(uri (string-append "https://waterlan.home.xs4all.nl/dos2unix/"
"dos2unix-" version ".tar.gz"))
(sha256
- (base32 "08w6yywzirsxq8bh87jycvvw922ybhc2l426j2iqzliyn1h8mm8w"))))
+ (base32 "00dfsf4rfyjb5j12gan8xjiirm0asshdz6dmd3l34a7ays6wadb0"))))
(build-system gnu-build-system)
(arguments
- '(#:make-flags (list "CC=gcc"
- (string-append "prefix=" (assoc-ref %outputs "out")))
+ `(#:make-flags
+ (list (string-append "CC=" ,(cc-for-target))
+ (string-append "prefix=" (assoc-ref %outputs "out")))
#:phases
(modify-phases %standard-phases
(delete 'configure)))) ; no configure script
@@ -850,14 +851,14 @@ Filter, list, or split a tar file.
(name "java-rsyntaxtextarea")
(version "2.6.1")
(source (origin
- (method url-fetch)
- (uri (string-append "https://github.com/bobbylight/"
- "RSyntaxTextArea/archive/"
- version ".tar.gz"))
- (file-name (string-append name "-" version ".tar.gz"))
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/bobbylight/RSyntaxTextArea")
+ (commit version)))
+ (file-name (git-file-name name version))
(sha256
(base32
- "0c5mqg2klj5rvf8fhycrli8rf6s37l9p7a8knw9gpp65r1c120q2"))))
+ "0dyflzvxq2wvs0rgqfyi5yzzrb6r4bzw2dm8cl304dakxk38ddys"))))
(build-system ant-build-system)
(arguments
`(;; FIXME: some tests fail because locale resources cannot be found.
diff --git a/gnu/packages/tls.scm b/gnu/packages/tls.scm
index 517bf1dc3d..0f38d937d3 100644
--- a/gnu/packages/tls.scm
+++ b/gnu/packages/tls.scm
@@ -181,8 +181,8 @@ living in the same process.")
"0n0m93ymzd0q9hbknxc2ycanz49sqlkyyf73g9fk7n787llc7a0f"))))
(build-system gnu-build-system)
(arguments
- `(#:tests? ,(not (hurd-target?))
-
+ `(#:tests? ,(not (or (%current-target-system)
+ (hurd-target?)))
;; Ensure we don't keep a reference to the tools used for testing.
#:disallowed-references ,(if (hurd-target?)
'()
@@ -519,14 +519,14 @@ required structures.")
(define-public libressl
(package
(name "libressl")
- (version "3.0.2")
+ (version "3.1.4")
(source (origin
(method url-fetch)
(uri (string-append "mirror://openbsd/LibreSSL/"
"libressl-" version ".tar.gz"))
(sha256
(base32
- "13ir2lpxz8y1m151k7lrx306498nzfhwlvgkgv97v5cvywmifyyz"))))
+ "1dnbbnr43jashxivnafmh9gnn57c7ayva788ba03z633k6f18k21"))))
(build-system gnu-build-system)
(arguments
;; Do as if 'getentropy' was missing since older Linux kernels lack it
diff --git a/gnu/packages/tor.scm b/gnu/packages/tor.scm
index c852c54a5b..9bde4a4c23 100644
--- a/gnu/packages/tor.scm
+++ b/gnu/packages/tor.scm
@@ -54,14 +54,14 @@
(define-public tor
(package
(name "tor")
- (version "0.4.3.6")
+ (version "0.4.4.5")
(source (origin
(method url-fetch)
(uri (string-append "https://dist.torproject.org/tor-"
version ".tar.gz"))
(sha256
(base32
- "0qmcrkjip0ywq77232m73pjwqiaj0q2klwklqlpbw575shvhcbba"))))
+ "09lr6l98qmc69pzsi8r02z86v969dbfwjrwphfm3npknzq5a0p54"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags
diff --git a/gnu/packages/toys.scm b/gnu/packages/toys.scm
index 459c0c4953..6387e84a3d 100644
--- a/gnu/packages/toys.scm
+++ b/gnu/packages/toys.scm
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
+;;; Copyright © 2017, 2018, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2019 Jesse Gibbons <jgibbons2357+guix@gmail.com>
;;; Copyright © 2019, 2020 Timotej Lazar <timotej.lazar@araneo.si>
;;; Copyright © 2020 Efraim Flashner <efraim@flashner.co.il>
@@ -32,7 +32,8 @@
#:use-module (guix download)
#:use-module (guix git-download)
#:use-module ((guix licenses) #:prefix license:)
- #:use-module (guix packages))
+ #:use-module (guix packages)
+ #:use-module (guix utils))
(define-public sl
(package
@@ -77,52 +78,51 @@ typing @command{sl} instead of @command{ls}.")
"See LICENSE in the distribution."))))
(define-public filters
- (let ((version "2.55")
- (commit "c5c291916b52ed9e6418448a8eee30475fb9adcf"))
- (package
- (name "filters")
- (version "2.55")
- (source
- (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://git.joeyh.name/filters")
- (commit commit)))
- (file-name (git-file-name name version))
- (sha256
- (base32 "1gaigpda1w9wxfh8an3sam1hpacc1bhxl696w4yj0vzhc6izqvxs"))
- (modules '((guix build utils)))
- (snippet '(begin
- ;; kenny is under nonfree Artistic License (Perl) 1.0.
- (delete-file "kenny")
- (substitute* "Makefile"
- (("kenny")
- ""))))))
- (build-system gnu-build-system)
- (arguments
- `(#:make-flags
- (list "CC=gcc" (string-append "DESTDIR=" %output))
- #:phases
- (modify-phases %standard-phases
- (delete 'configure)
- (add-after 'unpack 'fix-install-directories
- (lambda _
- (substitute* "Makefile"
- (("/usr/games")
- "/bin/")
- (("/usr/share/")
- "/share/"))
- #t)))
- #:tests? #f)) ; no test suite
- (native-inputs
- `(("bison" ,bison)
- ("flex" ,flex)))
- (inputs
- `(("perl" ,perl)))
- (home-page "https://joeyh.name/code/filters/")
- (synopsis "Various amusing text filters")
- (description
- "The filters collection harks back to the late 1980s, when various text
+ (package
+ (name "filters")
+ (version "2.55")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "git://git.joeyh.name/filters")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1gaigpda1w9wxfh8an3sam1hpacc1bhxl696w4yj0vzhc6izqvxs"))
+ (modules '((guix build utils)))
+ (snippet '(begin
+ ;; kenny is under nonfree Artistic License (Perl) 1.0.
+ (delete-file "kenny")
+ (substitute* "Makefile"
+ (("kenny")
+ ""))))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:make-flags
+ (list (string-append "CC=" ,(cc-for-target))
+ (string-append "prefix=" (assoc-ref %outputs "out")))
+ #:phases
+ (modify-phases %standard-phases
+ (delete 'configure)
+ (add-after 'unpack 'respect-prefix
+ (lambda _
+ (substitute* "Makefile"
+ (("/usr/games")
+ "$(prefix)/bin/")
+ (("/usr")
+ "$(prefix)"))
+ #t)))
+ #:tests? #f)) ; no test suite
+ (native-inputs
+ `(("bison" ,bison)
+ ("flex" ,flex)))
+ (inputs
+ `(("perl" ,perl)))
+ (home-page "https://joeyh.name/code/filters/")
+ (synopsis "Various amusing text filters")
+ (description
+ "The filters collection harks back to the late 1980s, when various text
filters were written to munge written language in amusing ways. The earliest
and best known were legends such as the Swedish Chef filter and B1FF.
@@ -156,13 +156,13 @@ This package contains the following filter commands:
@end enumerate
The GNU project hosts a similar collection of filters, the GNU talkfilters.")
- (license ; see debian/copyright
- (list license:gpl2+ ; most of the filters
- license:gpl2 ; rasterman, ky00te.dir/* nethackify, pirate
- license:gpl3+ ; scramble, scottish
- license:public-domain ; jethro, kraut, ken, studly
- license:gpl1+ ; cockney, jive, nyc only say "gpl"
- license:expat))))) ; newspeak
+ (license ; see debian/copyright
+ (list license:gpl2+ ; most of the filters
+ license:gpl2 ; rasterman, ky00te.dir/* nethackify, pirate
+ license:gpl3+ ; scramble, scottish
+ license:public-domain ; jethro, kraut, ken, studly
+ license:gpl1+ ; cockney, jive, nyc only say "gpl"
+ license:expat)))) ; newspeak
(define-public xsnow
(package
diff --git a/gnu/packages/tv.scm b/gnu/packages/tv.scm
index 2196162956..88df5c90bf 100644
--- a/gnu/packages/tv.scm
+++ b/gnu/packages/tv.scm
@@ -1,6 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2015, 2016, 2017, 2018 Alex Kost <alezost@gmail.com>
-;;; Copyright © 208 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2018 Efraim Flashner <efraim@flashner.co.il>
;;;
;;; This file is part of GNU Guix.
;;;
diff --git a/gnu/packages/uml.scm b/gnu/packages/uml.scm
index ecf8fe0c45..2202316016 100644
--- a/gnu/packages/uml.scm
+++ b/gnu/packages/uml.scm
@@ -1,7 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2016 Theodoros Foradis <theodoros@foradis.org>
;;; Copyright © 2019 Arun Isaac <arunisaac@systemreboot.net>
-;;; Copyright © 2019 Tobias Geerinckx-Rice <me@tobias.gr>
+;;; Copyright © 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de>
;;;
;;; This file is part of GNU Guix.
@@ -31,14 +31,14 @@
(define-public plantuml
(package
(name "plantuml")
- (version "1.2020.15")
+ (version "1.2020.19")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/plantuml/"
version "/plantuml-" version ".tar.gz"))
(sha256
(base32
- "0n9zrdylc79kdzq7i42kd38bndrhgs7p24bmcm7l09nzv8w8j5r0"))))
+ "0ja2f72x2qd11pkgh1qj6k03yq9ljwsvd6lh84nndwhrbdj5vns7"))))
(build-system ant-build-system)
(arguments
`(#:tests? #f ; no tests
diff --git a/gnu/packages/valgrind.scm b/gnu/packages/valgrind.scm
index 75e852915e..4036bd461b 100644
--- a/gnu/packages/valgrind.scm
+++ b/gnu/packages/valgrind.scm
@@ -4,6 +4,7 @@
;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2016, 2020 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
+;;; Copyright © 2020 Marius Bakke <marius@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -32,7 +33,9 @@
(define-public valgrind
(package
(name "valgrind")
- (version "3.15.0")
+ ;; Note: check "guix refresh -l -e '(@ (gnu packages valgrind) valgrind)'"
+ ;; when updating this package to find which branch it should go to.
+ (version "3.16.1")
(source (origin
(method url-fetch)
(uri (list (string-append "https://sourceware.org/pub/valgrind"
@@ -41,7 +44,7 @@
"/valgrind-" version ".tar.bz2")))
(sha256
(base32
- "1ccawxrni8brcvwhygy12iprkvz409hbr9xkk1bd03gnm2fplz21"))
+ "1jik19rcd34ip8a5c9nv5wfj8k8maqb8cyclr4xhznq2gcpkl7y9"))
(patches (search-patches "valgrind-enable-arm.patch"))))
(build-system gnu-build-system)
(outputs '("doc" ;16 MB
@@ -70,9 +73,6 @@
(mkdir-p dest)
(rename-file orig dest)
#t))))))
- (inputs
- ;; GDB is needed to provide a sane default for `--db-command'.
- `(("gdb" ,gdb)))
(native-inputs
`(("perl" ,perl)))
(home-page "https://www.valgrind.org/")
@@ -82,4 +82,15 @@
tools. There are Valgrind tools that can automatically detect many memory
management and threading bugs, and profile your programs in detail. You can
also use Valgrind to build new tools.")
- (license gpl2+)))
+ (license gpl2+)
+
+ ;; Hide this variant so end users get the "interactive" Valgrind below.
+ (properties '((hidden? . #t)))))
+
+(define-public valgrind/interactive
+ (package/inherit
+ valgrind
+ (inputs
+ ;; GDB is needed to provide a sane default for `--db-command'.
+ `(("gdb" ,gdb)))
+ (properties '())))
diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm
index 2ee8247071..fe61bc8fce 100644
--- a/gnu/packages/version-control.scm
+++ b/gnu/packages/version-control.scm
@@ -7,7 +7,7 @@
;;; Copyright © 2014, 2015, 2016 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2014, 2016, 2019 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2015, 2016, 2017, 2018, 2019, 2020 Efraim Flashner <efraim@flashner.co.il>
-;;; Copyright © 2015, 2018 Kyle Meyer <kyle@kyleam.com>
+;;; Copyright © 2015, 2018, 2020 Kyle Meyer <kyle@kyleam.com>
;;; Copyright © 2015, 2017, 2018, 2020 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2016, 2017 Leo Famulari <leo@famulari.name>
;;; Copyright © 2016, 2017, 2018 Nikita <nikita@n0.is>
@@ -1901,14 +1901,14 @@ masters from remote CVS hosts.")
(define-public vc-dwim
(package
(name "vc-dwim")
- (version "1.9")
+ (version "1.10")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnu/vc-dwim/vc-dwim-"
version ".tar.xz"))
(sha256
(base32
- "0mf1dd7wdqxsm4fcfinfd7iadzarmzvg747pbsbi32qpavpk8gdf"))))
+ "0am6axxdvkm2vwgg0gjrd930yv4dlsdbf0rdv0zh5bhy1ir64rph"))))
(build-system gnu-build-system)
(inputs `(("perl" ,perl)))
(native-inputs
@@ -2269,6 +2269,43 @@ supports a large number of version control systems: Git, Subversion,
Mercurial, Bazaar, Darcs, CVS, Fossil, and Veracity.")
(license license:gpl2+)))
+(define-public grokmirror
+ (package
+ (name "grokmirror")
+ (version "2.0.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url (string-append "https://git.kernel.org/pub/scm/"
+ "utils/grokmirror/grokmirror.git"))
+ (commit (string-append "v" version))))
+ (file-name (string-append name "-" version "-checkout"))
+ (sha256
+ (base32 "1cs43vf87x8x5k5ncgiwiclc92a1dvxpg2z6lh6psaiip808gylp"))))
+ (build-system python-build-system)
+ (arguments
+ `(#:tests? #f ; no test suite
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'install 'install-manpages
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((man (string-append (assoc-ref outputs "out")
+ "/man/man1/")))
+ (mkdir-p man)
+ (for-each (lambda (file) (install-file file man))
+ (find-files "." "\\.1$")))
+ #t)))))
+ (propagated-inputs
+ `(("python-requests" ,python-requests)))
+ (home-page
+ "https://git.kernel.org/pub/scm/utils/grokmirror/grokmirror.git")
+ (synopsis "Framework to smartly mirror git repositories")
+ (description "Grokmirror enables replicating large git repository
+collections efficiently. Mirrors decide to clone and update repositories
+based on a manifest file published by servers.")
+ (license license:gpl3+)))
+
(define-public git-annex-remote-rclone
(package
(name "git-annex-remote-rclone")
diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm
index 8ebe7dbcdf..bd5367d439 100644
--- a/gnu/packages/video.scm
+++ b/gnu/packages/video.scm
@@ -96,6 +96,7 @@
#:use-module (gnu packages compression)
#:use-module (gnu packages cpp)
#:use-module (gnu packages crates-io)
+ #:use-module (gnu packages crates-graphics)
#:use-module (gnu packages curl)
#:use-module (gnu packages dejagnu)
#:use-module (gnu packages dns)
@@ -134,6 +135,7 @@
#:use-module (gnu packages ncurses)
#:use-module (gnu packages networking)
#:use-module (gnu packages ocr)
+ #:use-module (gnu packages pcre)
#:use-module (gnu packages perl)
#:use-module (gnu packages perl-check)
#:use-module (gnu packages perl-web)
@@ -524,7 +526,7 @@ applications by providing high-level classes for commonly required tasks.")
(define-public libde265
(package
(name "libde265")
- (version "1.0.6")
+ (version "1.0.7")
(source
(origin
(method git-fetch)
@@ -534,7 +536,7 @@ applications by providing high-level classes for commonly required tasks.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
- (base32 "0ipccyavlgf7hfzx1g8bvzg62xq10vcxvwgq70r3z3j6mdvmrzjp"))))
+ (base32 "0x7g9771457z49qvzpk4iswfhq018i0mzsflv9gg8if5hjqhfdp0"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags
@@ -697,14 +699,15 @@ old-fashioned output methods with powerful ascii-art renderer.")
(define-public celluloid
(package
(name "celluloid")
- (version "0.19")
+ (version "0.20")
(source
(origin
(method url-fetch)
- (uri (string-append "https://github.com/celluloid-player/celluloid/releases"
- "/download/v" version "/celluloid-" version ".tar.xz"))
+ (uri (string-append "https://github.com/celluloid-player/celluloid"
+ "/releases/download/v" version
+ "/celluloid-" version ".tar.xz"))
(sha256
- (base32 "1s3qkism96gi44incvsb6rqg255qcvjvw61ya7nw30md0sapj4sl"))))
+ (base32 "0kjjv2pcdvwcn4yi8kbpsca7pnx6cx6xdznv7ppqm0fssx68qyb3"))))
(build-system glib-or-gtk-build-system)
(native-inputs
`(("intltool" ,intltool)
@@ -878,14 +881,14 @@ H.264 (MPEG-4 AVC) video streams.")
(define-public mkvtoolnix
(package
(name "mkvtoolnix")
- (version "37.0.0")
+ (version "50.0.0")
(source
(origin
(method url-fetch)
(uri (string-append "https://mkvtoolnix.download/sources/"
"mkvtoolnix-" version ".tar.xz"))
(sha256
- (base32 "0r4d9318ymb9a0mkc0shi9p4kjy3m70s49v4f8dmjhvj63silhix"))
+ (base32 "09485qfbdirr9g536shglzdm271yipb1669r3dm3hxp46k0x59aq"))
(modules '((guix build utils)))
(snippet '(begin
;; Delete bundled libraries.
@@ -911,6 +914,7 @@ H.264 (MPEG-4 AVC) video streams.")
("libogg" ,libogg)
("libvorbis" ,libvorbis)
("lzo" ,lzo)
+ ("pcre2" ,pcre2)
("pugixml" ,pugixml)
("qtbase" ,qtbase)
("qtmultimedia" ,qtmultimedia)
@@ -1318,7 +1322,7 @@ libebml is a C++ library to read and write EBML files.")
(define-public libva
(package
(name "libva")
- (version "2.7.1")
+ (version "2.9.0")
(source
(origin
(method url-fetch)
@@ -1330,7 +1334,7 @@ libebml is a C++ library to read and write EBML files.")
(string-append "https://www.freedesktop.org/software/vaapi/releases/"
"libva/libva-" version "/libva-" version ".tar.bz2")))
(sha256
- (base32 "014av7ayyc624xfmr63xhbgg7nw8fynsswj1g2wmk4lnkyfz23x0"))))
+ (base32 "0jsq6ia3fzyzvq7lxsrn4a8kn2kx4z3v777xkxn6k4ny5lww2i73"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)))
@@ -1451,6 +1455,8 @@ operate properly.")
("sdl" ,sdl2)
("soxr" ,soxr)
("speex" ,speex)
+ ;; FFmpeg is not yet compatible with SRT > 1.4.1.
+ ("srt" ,srt-1.4.1)
("twolame" ,twolame)
("vidstab" ,vidstab)
("x265" ,x265)
@@ -1535,6 +1541,7 @@ operate properly.")
'())
"--enable-libsoxr"
"--enable-libspeex"
+ "--enable-libsrt"
"--enable-libtheora"
"--enable-libtwolame"
"--enable-libvidstab"
@@ -1826,6 +1833,8 @@ videoformats depend on the configuration flags of ffmpeg.")
("sdl-image" ,sdl-image)
("speex" ,speex)
("speexdsp" ,speexdsp)
+ ;; VLC is not yet compatible with SRT > 1.4.1.
+ ("srt" ,srt-1.4.1)
("taglib" ,taglib)
("twolame" ,twolame)
("unzip" ,unzip)
@@ -2125,9 +2134,8 @@ To load this plugin, specify the following option when starting mpv:
(define-public libvpx
(package
(name "libvpx")
- (version "1.8.2")
+ (version "1.9.0")
(source (origin
- ;; XXX: Upstream does not provide tarballs for > 1.6.1.
(method git-fetch)
(uri (git-reference
(url "https://chromium.googlesource.com/webm/libvpx")
@@ -2135,7 +2143,7 @@ To load this plugin, specify the following option when starting mpv:
(file-name (git-file-name name version))
(sha256
(base32
- "0gyq4fkbd2fv7m1mm9xrvn6rk6f4jsmbv8bnlhingmnrvyncnmnr"))
+ "16xv6ambc82g14h1y0q1vyy57wp6j9fbp0nk0wd5csnrw407rhry"))
(patches (search-patches "libvpx-CVE-2016-2818.patch"))))
(build-system gnu-build-system)
(arguments
@@ -2153,7 +2161,11 @@ To load this plugin, specify the following option when starting mpv:
;; The configure script does not understand some of the GNU
;; options, so we only add the flags specified above.
(apply invoke "./configure" configure-flags))))
- #:tests? #f)) ; no check target
+
+ ;; XXX: The test suite wants to download 871 files from a cloud storage
+ ;; service (see test/test-data.sha1). It is possible to specify a
+ ;; custom directory, but there seems to be no tarball with all files.
+ #:tests? #f))
(native-inputs
`(("perl" ,perl)
("yasm" ,yasm)))
@@ -2165,7 +2177,7 @@ To load this plugin, specify the following option when starting mpv:
(define-public youtube-dl
(package
(name "youtube-dl")
- (version "2020.09.14")
+ (version "2020.09.20")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/ytdl-org/youtube-dl/"
@@ -2173,7 +2185,7 @@ To load this plugin, specify the following option when starting mpv:
version ".tar.gz"))
(sha256
(base32
- "18wfhprbaszpxgqkac3hb050ngvdsaibbcifg88rkv5vc6bc2mq6"))))
+ "1pkw3hnkddk1kqv0in152q1k4jjgbmf2xvc9j3r5nd38z6f7j6mc"))))
(build-system python-build-system)
(arguments
;; The problem here is that the directory for the man page and completion
@@ -2184,6 +2196,16 @@ To load this plugin, specify the following option when starting mpv:
;; 'youtube-dl.bash-completion'.
`(#:tests? #f ; Many tests fail. The test suite can be run with pytest.
#:phases (modify-phases %standard-phases
+ (add-after 'unpack 'default-to-the-ffmpeg-input
+ (lambda _
+ ;; See <https://issues.guix.gnu.org/43418#5>.
+ ;; ffmpeg is big but required to request free formats
+ ;; from, e.g., YouTube so pull it in unconditionally.
+ ;; Continue respecting the --ffmpeg-location argument.
+ (substitute* "youtube_dl/postprocessor/ffmpeg.py"
+ (("\\.get\\('ffmpeg_location'\\)" match)
+ (format #f "~a or '~a'" match (which "ffmpeg"))))
+ #t))
(add-before 'install 'fix-the-data-directories
(lambda* (#:key outputs #:allow-other-keys)
(let ((prefix (assoc-ref outputs "out")))
@@ -2207,6 +2229,8 @@ To load this plugin, specify the following option when starting mpv:
(copy-file "youtube-dl.zsh"
(string-append zsh "/_youtube-dl"))
#t))))))
+ (inputs
+ `(("ffmpeg" ,ffmpeg)))
(synopsis "Download videos from YouTube.com and other sites")
(description
"Youtube-dl is a small command-line program to download videos from
@@ -2352,7 +2376,7 @@ audio, images) from the Web. It can use either mpv or vlc for playback.")
(define-public youtube-viewer
(package
(name "youtube-viewer")
- (version "3.7.8")
+ (version "3.7.9")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -2361,7 +2385,7 @@ audio, images) from the Web. It can use either mpv or vlc for playback.")
(file-name (git-file-name name version))
(sha256
(base32
- "1ckzzf35nbwlx5prvzjr52n28chyd479vhdk5w7vb2343az80mzi"))))
+ "16p0sa91h0zpqdpqmy348g6b9qj5f6qrbzrljn157vk00cg6mx18"))))
(build-system perl-build-system)
(native-inputs
`(("perl-module-build" ,perl-module-build)))
@@ -2374,6 +2398,7 @@ audio, images) from the Web. It can use either mpv or vlc for playback.")
("perl-libwww" ,perl-libwww)
("perl-lwp-protocol-https" ,perl-lwp-protocol-https)
("perl-lwp-useragent-cached" ,perl-lwp-useragent-cached)
+ ("perl-memoize" ,perl-memoize)
("perl-mozilla-ca" ,perl-mozilla-ca)
("perl-term-readline-gnu" ,perl-term-readline-gnu)
("perl-unicode-linebreak" ,perl-unicode-linebreak)
@@ -2980,7 +3005,7 @@ be used for realtime video capture via Linux-specific APIs.")
(define-public obs
(package
(name "obs")
- (version "25.0.8")
+ (version "26.0.2")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -2989,14 +3014,24 @@ be used for realtime video capture via Linux-specific APIs.")
(file-name (git-file-name name version))
(sha256
(base32
- "0j2k65q3wfyfxhvkl6icz4qy0s3kfqhksizy2i3ah7yml266axbj"))))
+ "1d502f80whh686mvq0yn6zpa5nvmnlzxwp5sjz43vpbbvhpbrdqj"))))
(build-system cmake-build-system)
(arguments
- `(#:tests? #f ; no test suite
- #:configure-flags
- (list (string-append "-DOBS_VERSION_OVERRIDE=" ,version))))
+ `(#:configure-flags
+ (list (string-append "-DOBS_VERSION_OVERRIDE=" ,version)
+ "-DENABLE_UNIT_TESTS=TRUE")
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'install 'wrap-executable
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let ((out (assoc-ref outputs "out"))
+ (plugin-path (getenv "QT_PLUGIN_PATH")))
+ (wrap-program (string-append out "/bin/obs")
+ `("QT_PLUGIN_PATH" ":" prefix (,plugin-path))))
+ #t)))))
(native-inputs
- `(("pkg-config" ,pkg-config)))
+ `(("cmocka" ,cmocka)
+ ("pkg-config" ,pkg-config)))
(inputs
`(("alsa-lib" ,alsa-lib)
("curl" ,curl)
@@ -3014,7 +3049,7 @@ be used for realtime video capture via Linux-specific APIs.")
("qtbase" ,qtbase)
("qtsvg" ,qtsvg)
("qtx11extras" ,qtx11extras)
- ("speex" ,speex)
+ ("speexdsp" ,speexdsp)
("v4l-utils" ,v4l-utils)
("zlib" ,zlib)))
(synopsis "Live streaming software")
@@ -3023,13 +3058,12 @@ video recording and live streaming. OBS supports capturing audio and video
from many input sources such as webcams, X11 (for screencasting), PulseAudio,
and JACK.")
(home-page "https://obsproject.com")
- (supported-systems '("x86_64-linux" "i686-linux"))
(license license:gpl2+)))
(define-public libvdpau
(package
(name "libvdpau")
- (version "1.3")
+ (version "1.4")
(source
(origin
(method git-fetch)
@@ -3039,7 +3073,7 @@ and JACK.")
(file-name (git-file-name name version))
(sha256
(base32
- "1fb1nh5apr9kzx9bm2lysjwpyva1s60b2l2p230nqgvb11q25hd2"))))
+ "1hc4mcrbr1yhfiy4zfd8wc2iiqbp90z6jswap0jia20vmyk5lqld"))))
(build-system meson-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)))
@@ -3585,7 +3619,7 @@ practically any type of media.")
(define-public libmediainfo
(package
(name "libmediainfo")
- (version "20.08")
+ (version "20.09")
(source (origin
(method url-fetch)
(uri (string-append "https://mediaarea.net/download/source/"
@@ -3593,7 +3627,7 @@ practically any type of media.")
name "_" version ".tar.xz"))
(sha256
(base32
- "19n8h9jq42b6r3dbag77fzwfksfywszmzpi636w87fvc1nqldlqj"))))
+ "15ni9pnch6688m72swwax109a7mg4a08yx75qknrx7qa6dbyhz6h"))))
;; TODO add a Big Buck Bunny webm for tests.
(native-inputs
`(("autoconf" ,autoconf)
@@ -3643,7 +3677,7 @@ MPEG-2, MPEG-4, DVD (VOB)...
(define-public mediainfo
(package
(name "mediainfo")
- (version "20.08")
+ (version "20.09")
(source (origin
(method url-fetch)
;; Warning: This source has proved unreliable 1 time at least.
@@ -3654,7 +3688,7 @@ MPEG-2, MPEG-4, DVD (VOB)...
name "_" version ".tar.xz"))
(sha256
(base32
- "1baf2dj5s3g1x4ssqli1b2r1203syk42m09zhp36qcinmfixv11l"))))
+ "0rqg9z7s5bk7vlvjrs4gackzg7ib05a0dffi2ihsjf5a7kw7wcir"))))
(native-inputs
`(("autoconf" ,autoconf)
("automake" ,automake)
@@ -4524,7 +4558,7 @@ result in several formats:
("rust-arrayvec" ,rust-arrayvec-0.5)
("rust-backtrace" ,rust-backtrace-0.3)
("rust-bitstream-io" ,rust-bitstream-io-0.8)
- ("rust-byteorder" ,rust-byteorder-1.3)
+ ("rust-byteorder" ,rust-byteorder-1)
("rust-cfg-if" ,rust-cfg-if-0.1)
("rust-clap" ,rust-clap-2)
("rust-console" ,rust-console-0.11)
@@ -4548,7 +4582,7 @@ result in several formats:
("rust-serde" ,rust-serde-1)
("rust-signal-hook" ,rust-signal-hook-0.1)
("rust-simd-helpers" ,rust-simd-helpers-0.1)
- ("rust-thiserror" ,rust-thiserror-1.0)
+ ("rust-thiserror" ,rust-thiserror-1)
("rust-toml" ,rust-toml-0.5)
("rust-y4m" ,rust-y4m-0.5)
("rust-cc" ,rust-cc-1)
diff --git a/gnu/packages/vim.scm b/gnu/packages/vim.scm
index 083f9da3a4..05136981ea 100644
--- a/gnu/packages/vim.scm
+++ b/gnu/packages/vim.scm
@@ -70,7 +70,7 @@
(define-public vim
(package
(name "vim")
- (version "8.2.1500")
+ (version "8.2.1852")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -79,7 +79,7 @@
(file-name (git-file-name name version))
(sha256
(base32
- "1f3ghv7g6khcvvs8irkxmskzc352xxmxw3wy0jq9q9r497v6p3ls"))))
+ "0nvcvvig5fc45smf4kh71jqyqafffgxzaizwqknk0h9vzl4k4h57"))))
(build-system gnu-build-system)
(arguments
`(#:test-target "test"
@@ -166,7 +166,7 @@ configuration files.")
(package (inherit vim)
(name "xxd")
(arguments
- `(#:make-flags '("CC=gcc")
+ `(#:make-flags (list ,(string-append "CC=" (cc-for-target)))
#:tests? #f ; there are none
#:phases
(modify-phases %standard-phases
@@ -499,8 +499,7 @@ commit or run any Git arbitrary command.")
'(#:install-plan
'(("autoload" "share/vim/vimfiles/")
("doc" "share/vim/vimfiles/")
- ("plugin" "share/vim/vimfiles/")
- ("t" "share/vim/vimfiles/"))))
+ ("plugin" "share/vim/vimfiles/"))))
(synopsis "Statusline for Vim")
(description
"@code{vim-airline} is an extensible statusline for Vim.
@@ -699,7 +698,7 @@ refactor Vim in order to:
(define-public vifm
(package
(name "vifm")
- (version "0.10.1")
+ (version "0.11")
(source
(origin
(method url-fetch)
@@ -710,7 +709,7 @@ refactor Vim in order to:
"vifm-" version ".tar.bz2")))
(sha256
(base32
- "0fyhxh7ndjn8fyjhj14ymkr3pjcs3k1xbs43g7xvvq85vdb6y04r"))))
+ "0rqyd424y0g5b5basw2ybb60r9gar4f40d1xgzr3c2dsy4jpwvyh"))))
(build-system gnu-build-system)
(arguments
'(#:configure-flags '("--disable-build-timestamp")
@@ -780,13 +779,13 @@ With the package comes a plugin to use vifm as a vim file selector.")
(define-public python-pynvim
(package
(name "python-pynvim")
- (version "0.4.1")
+ (version "0.4.2")
(source (origin
(method url-fetch)
(uri (pypi-uri "pynvim" version))
(sha256
(base32
- "0n2cx22lrmbq7xk7356lyn6k77ryqvkxplw9k0fglk35ckb1isam"))))
+ "13qgwkqbx012j5spis1aw8rb120rw0zphgjy1j58irax8r6j1ikb"))))
(build-system python-build-system)
(propagated-inputs
`(("python-greenlet" ,python-greenlet)
diff --git a/gnu/packages/virtualization.scm b/gnu/packages/virtualization.scm
index 8e634ba6c6..ac062dfa15 100644
--- a/gnu/packages/virtualization.scm
+++ b/gnu/packages/virtualization.scm
@@ -15,6 +15,7 @@
;;; Copyright © 2020 Brice Waegeneire <brice@waegenei.re>
;;; Copyright © 2020 Mathieu Othacehe <m.othacehe@gmail.com>
;;; Copyright © 2020 Marius Bakke <mbakke@fastmail.com>
+;;; Copyright © 2020 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -129,21 +130,19 @@
(define-public qemu
(package
(name "qemu")
- (version "5.0.0")
+ (version "5.1.0")
(source (origin
- (method url-fetch)
- (uri (string-append "https://download.qemu.org/qemu-"
- version ".tar.xz"))
- (sha256
- (base32
- "1dlcwyshdp94fwd30pddxf9bn2q8dfw5jsvry2gvdj551wmaj4rg"))))
+ (method url-fetch)
+ (uri (string-append "https://download.qemu.org/qemu-"
+ version ".tar.xz"))
+ (sha256
+ (base32
+ "1rd41wwlvp0vpialjp2czs6i3lsc338xc72l3zkbb7ixjfslw5y9"))
+ (patches (search-patches "qemu-build-info-manual.patch"))))
+ (outputs '("out" "doc")) ;4.7 MiB of HTML docs
(build-system gnu-build-system)
(arguments
- `(;; Running tests in parallel can occasionally lead to failures, like:
- ;; boot_sector_test: assertion failed (signature == SIGNATURE): (0x00000000 == 0x0000dead)
- #:parallel-tests? #f
-
- ;; FIXME: Disable tests on i686 to work around
+ `(;; FIXME: Disable tests on i686 to work around
;; <https://bugs.gnu.org/40527>.
#:tests? ,(or (%current-target-system)
(not (string=? "i686-linux" (%current-system))))
@@ -178,6 +177,24 @@
'("include")
input-directories)
#t)))
+ (add-after 'unpack 'disable-unusable-tests
+ (lambda _
+ (substitute* "tests/Makefile.include"
+ ;; Comment out the test-qga test, which needs /sys and
+ ;; fails within the build environment.
+ (("check-unit-.* tests/test-qga" all)
+ (string-append "# " all))
+ ;; Comment out the test-char test, which needs networking and
+ ;; fails within the build environment.
+ (("check-unit-.* tests/test-char" all)
+ (string-append "# " all)))
+ (substitute* "tests/qtest/Makefile.include"
+ ;; Disable the following test, which triggers a crash on some
+ ;; x86 CPUs (see https://issues.guix.info/43048 and
+ ;; https://bugs.launchpad.net/qemu/+bug/1896263).
+ (("check-qtest-i386-y \\+= bios-tables-test" all)
+ (string-append "# " all)))
+ #t))
(add-after 'patch-source-shebangs 'patch-/bin/sh-references
(lambda _
;; Ensure the executables created by these source files reference
@@ -188,7 +205,7 @@
#t))
(replace 'configure
(lambda* (#:key inputs outputs (configure-flags '())
- #:allow-other-keys)
+ #:allow-other-keys)
;; The `configure' script doesn't understand some of the
;; GNU options. Thus, add a new phase that's compatible.
(let ((out (assoc-ref outputs "out")))
@@ -218,23 +235,12 @@
,(string-append "--prefix=" out)
,(string-append "--sysconfdir=/etc")
,@configure-flags)))))
- (add-after 'install 'install-info
- (lambda* (#:key inputs outputs #:allow-other-keys)
- ;; Install the Info manual, unless Texinfo is missing.
- (when (assoc-ref inputs "texinfo")
- (let* ((out (assoc-ref outputs "out"))
- (dir (string-append out "/share/info")))
- (invoke "make" "info")
- (for-each (lambda (info)
- (install-file info dir))
- (find-files "." "\\.info"))))
- #t))
;; Create a wrapper for Samba. This allows QEMU to use Samba without
;; pulling it in as an input. Note that you need to explicitly install
;; Samba in your Guix profile for Samba support.
- (add-after 'install-info 'create-samba-wrapper
+ (add-after 'install 'create-samba-wrapper
(lambda* (#:key inputs outputs #:allow-other-keys)
- (let* ((out (assoc-ref %outputs "out"))
+ (let* ((out (assoc-ref outputs "out"))
(libexec (string-append out "/libexec")))
(call-with-output-file "samba-wrapper"
(lambda (port)
@@ -243,18 +249,14 @@ exec smbd $@")))
(chmod "samba-wrapper" #o755)
(install-file "samba-wrapper" libexec))
#t))
- (add-before 'check 'disable-unusable-tests
+ (add-after 'install 'move-html-doc
(lambda* (#:key inputs outputs #:allow-other-keys)
- (substitute* "tests/Makefile.include"
- ;; Comment out the test-qga test, which needs /sys and
- ;; fails within the build environment.
- (("check-unit-.* tests/test-qga" all)
- (string-append "# " all)))
- (substitute* "tests/Makefile.include"
- ;; Comment out the test-char test, which needs networking and
- ;; fails within the build environment.
- (("check-unit-.* tests/test-char" all)
- (string-append "# " all)))
+ (let* ((out (assoc-ref outputs "out"))
+ (doc (assoc-ref outputs "doc"))
+ (qemu-doc (string-append doc "/share/doc/qemu-" ,version)))
+ (mkdir-p qemu-doc)
+ (rename-file (string-append out "/share/doc/qemu")
+ (string-append qemu-doc "/html")))
#t)))))
(inputs ; TODO: Add optional inputs.
`(("alsa-lib" ,alsa-lib)
@@ -1516,18 +1518,19 @@ monitor/GPU.")
"-xvf" source))))
(replace 'build
(lambda* (#:key import-path #:allow-other-keys)
- (chdir (string-append "src/" import-path))
- ;; XXX: requires 'go-md2man'.
- ;; (invoke "make" "man")
- (invoke "make")))
+ (with-directory-excursion (string-append "src/" import-path)
+ ;; XXX: requires 'go-md2man'.
+ ;; (invoke "make" "man")
+ (invoke "make"))))
;; (replace 'check
;; (lambda _
;; (invoke "make" "localunittest")))
(replace 'install
- (lambda* (#:key outputs #:allow-other-keys)
- (let ((out (assoc-ref outputs "out")))
- (invoke "make" "install" "install-bash"
- (string-append "PREFIX=" out))))))))
+ (lambda* (#:key import-path outputs #:allow-other-keys)
+ (with-directory-excursion (string-append "src/" import-path)
+ (let ((out (assoc-ref outputs "out")))
+ (invoke "make" "install" "install-bash"
+ (string-append "PREFIX=" out)))))))))
(native-inputs
`(("pkg-config" ,pkg-config)))
(inputs
@@ -1571,14 +1574,15 @@ Open Container Initiative specification.")
"-xvf" source))))
(replace 'build
(lambda* (#:key import-path #:allow-other-keys)
- (chdir (string-append "src/" import-path))
- ;; TODO: build manpages with 'go-md2man'.
- (invoke "make" "SHELL=bash")))
+ (with-directory-excursion (string-append "src/" import-path)
+ ;; TODO: build manpages with 'go-md2man'.
+ (invoke "make" "SHELL=bash"))))
(replace 'install
- (lambda* (#:key outputs #:allow-other-keys)
+ (lambda* (#:key import-path outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(bindir (string-append out "/bin")))
- (install-file "umoci" bindir)
+ (install-file (string-append "src/" import-path "/umoci")
+ bindir)
#t))))))
(home-page "https://umo.ci/")
(synopsis "Tool for modifying Open Container images")
@@ -1590,16 +1594,16 @@ Open Container Initiative (OCI) image layout and its tagged images.")
(define-public skopeo
(package
(name "skopeo")
- (version "0.1.40")
+ (version "1.2.0")
(source (origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/projectatomic/skopeo")
+ (url "https://github.com/containers/skopeo")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
- "1bagirzdzjhicn5dr691092ac3q6lhz3xngjzgqiqkxnvpz7p6cn"))))
+ "1v7k3ki10i6082r7zswblyirx6zck674y6bw3plssw4p1l2611rd"))))
(build-system go-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)))
@@ -1613,22 +1617,23 @@ Open Container Initiative (OCI) image layout and its tagged images.")
("glib" ,glib)
("gpgme" ,gpgme)))
(arguments
- '(#:import-path "github.com/projectatomic/skopeo"
+ '(#:import-path "github.com/containers/skopeo"
#:install-source? #f
- #:tests? #f ; The tests require Docker
+ #:tests? #f ; The tests require Docker
#:phases
(modify-phases %standard-phases
(replace 'build
(lambda* (#:key import-path #:allow-other-keys)
- (chdir (string-append "src/" import-path))
- ;; TODO: build manpages with 'go-md2man'.
- (invoke "make" "binary-local")))
+ (with-directory-excursion (string-append "src/" import-path)
+ ;; TODO: build manpages with 'go-md2man'.
+ (invoke "make" "bin/skopeo"))))
(replace 'install
- (lambda* (#:key outputs #:allow-other-keys)
- (let ((out (assoc-ref outputs "out")))
- (invoke "make" "install-binary" "install-completions"
- (string-append "PREFIX=" out))))))))
- (home-page "https://github.com/projectatomic/skopeo")
+ (lambda* (#:key import-path outputs #:allow-other-keys)
+ (with-directory-excursion (string-append "src/" import-path)
+ (let ((out (assoc-ref outputs "out")))
+ (invoke "make" "install-binary" "install-completions"
+ (string-append "PREFIX=" out)))))))))
+ (home-page "https://github.com/containers/skopeo")
(synopsis "Interact with container images and container image registries")
(description
"@command{skopeo} is a command line utility providing various operations
@@ -1995,14 +2000,14 @@ administrators and developers in managing the database.")
(define-public osinfo-db
(package
(name "osinfo-db")
- (version "20200813")
+ (version "20201011")
(source (origin
(method url-fetch)
(uri (string-append "https://releases.pagure.org/libosinfo/osinfo-db-"
version ".tar.xz"))
(sha256
(base32
- "127lr4kvdy2b2lil7i0gbbxcf8vap0r6hxhnbmms4p7h2h0sdgri"))))
+ "1zzx5gsqgzg2zki6h8vl0h7kpcrk5i2s1qhz7gcb18s7g99px8aj"))))
(build-system trivial-build-system)
(arguments
`(#:modules ((guix build utils))
diff --git a/gnu/packages/vlang.scm b/gnu/packages/vlang.scm
index d1296c1c2f..e0b2e7bcfc 100644
--- a/gnu/packages/vlang.scm
+++ b/gnu/packages/vlang.scm
@@ -1,5 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2020 Ryan Prior <rprior@protonmail.com>
+;;; Copyright © 2020 Tobias Geerinckx-Rice <me@tobias.gr>
+;;; Copyright © 2020 Efraim Flashner <efraim@flashner.co.il>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -18,15 +20,20 @@
(define-module (gnu packages vlang)
#:use-module (gnu packages glib)
+ #:use-module (gnu packages node)
+ #:use-module (gnu packages sqlite)
+ #:use-module (gnu packages tls)
+ #:use-module (gnu packages xorg)
#:use-module (guix build-system gnu)
#:use-module (guix git-download)
#:use-module ((guix licenses) #:prefix license:)
+ #:use-module (guix utils)
#:use-module (guix packages))
-(define-public v
+(define-public vlang
(package
- (name "v")
- (version "0.1.27")
+ (name "vlang")
+ (version "0.1.29")
(source
(origin
(method git-fetch)
@@ -35,20 +42,18 @@
(commit version)))
(file-name (git-file-name name version))
(sha256
- (base32 "1d9qhacllvkqif42jaayixhjyhx7pzslh8p1yr5p19447q763fq1"))))
+ (base32 "1rqi7cah5nq8aggrib9xvdpfjxq20li91svv0w9yny6nn1ag7snx"))))
(build-system gnu-build-system)
(arguments
- '(#:tests? #f ; tests are broken in v 0.1.27
- #:make-flags
- `("CC=gcc"
- "GITCLEANPULL=true"
- "GITFASTCLONE=mkdir -p"
- "TCCREPO="
- "TMPTCC=tcc"
- ,(string-append "TMPVC=" (assoc-ref %build-inputs "vc"))
- "VCREPO="
- "VERBOSE=1"
- "V_ALWAYS_CLEAN_TMP=false")
+ `(#:make-flags
+ (list (string-append "CC=" ,(cc-for-target))
+ "TMPTCC=tcc"
+ (string-append "VC=" (assoc-ref %build-inputs "vc"))
+ "GITCLEANPULL=true"
+ "GITFASTCLONE=mkdir -p"
+ "TCCREPO="
+ "VCREPO="
+ "VERBOSE=1")
#:phases
(modify-phases %standard-phases
(delete 'configure)
@@ -56,22 +61,32 @@
(lambda _
(substitute* "Makefile"
(("rm -rf") "true")
- (("v self") "v -cc gcc cmd/v"))
+ (("v self") (string-append "v -cc " ,(cc-for-target) " cmd/v")))
#t))
- ;; A few tests are broken in v 0.1.27. This function should be
- ;; enabled to run tests in the next release.
- ;; (replace 'check
- ;; (lambda _
- ;; (let* ((tmpbin "tmp/bin")
- ;; (gcc (which "gcc")))
- ;; (mkdir-p tmpbin)
- ;; (symlink gcc (string-append tmpbin "/cc"))
- ;; (setenv "PATH" (string-append tmpbin ":" (getenv "PATH")))
- ;; (invoke "./v" "test-fixed"))
- ;; #t))
- (replace 'install
+ (add-before 'check 'delete-failing-tests
+ ;; XXX As always, these should eventually be fixed and run.
(lambda _
- (let* ((bin (string-append (assoc-ref %outputs "out") "/bin"))
+ (for-each delete-file
+ '("vlib/v/gen/x64/tests/x64_test.v"
+ "vlib/v/tests/repl/repl_test.v"
+ "vlib/v/tests/valgrind/valgrind_test.v"
+ "vlib/v/tests/valgrind/strings_and_arrays.vv"
+ "vlib/v/tests/live_test.v"
+ "vlib/net/websocket/ws_test.v"))
+ #t))
+ (replace 'check
+ (lambda* (#:key tests? #:allow-other-keys)
+ (let* ((bin "tmp/bin")
+ (gcc (which "gcc")))
+ (when tests?
+ (mkdir-p bin)
+ (symlink gcc (string-append bin "/cc"))
+ (setenv "PATH" (string-append bin ":" (getenv "PATH")))
+ (invoke "./v" "test-fixed")))
+ #t))
+ (replace 'install
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((bin (string-append (assoc-ref outputs "out") "/bin"))
(tools (string-append bin "/cmd/tools"))
(thirdparty (string-append bin "/thirdparty"))
(vlib (string-append bin "/vlib"))
@@ -90,7 +105,9 @@
`(("glib" ,glib)))
(native-inputs
`(("vc"
- ,(let ((vc-version "0884d7092f4c2a4f8ca16da6f1792efa235247be"))
+ ;; Versions are not consistently tagged, but the matching commit will
+ ;; probably have ‘v0.x.y’ in the commit message.
+ ,(let ((vc-version "b01d0fcda4b55861baa4be82e307cca4834b1641"))
;; v bootstraps from generated c source code from a dedicated
;; repository. It's readable, as generated source goes, and not at all
;; obfuscated, and it's about 15kb. The original source written in
@@ -104,10 +121,20 @@
(commit vc-version)))
(file-name (git-file-name "vc" vc-version))
(sha256
- (base32 "17bs09iwxfd0si70j48n9nd16gfgcj8imd0azypk3xzzbz4wybnz")))))))
+ (base32 "052gp5q2k31r3lci3rx4k0vy0vjdjva64xvrbbihn8lgmw63lc9f")))))
+
+ ;; For the tests.
+ ("libx11" ,libx11)
+ ("node" ,node)
+ ("openssl" ,openssl)
+ ("sqlite" ,sqlite)))
(home-page "https://vlang.io/")
(synopsis "Compiler for the V programming language")
(description
"V is a systems programming language. It provides memory safety and thread
safety guarantees with minimal abstraction.")
(license license:expat)))
+
+(define-public v
+ ;; We used to provide 'vlang' under the name 'v'.
+ (deprecated-package "v" vlang))
diff --git a/gnu/packages/vpn.scm b/gnu/packages/vpn.scm
index 12ead4b434..67f099d19e 100644
--- a/gnu/packages/vpn.scm
+++ b/gnu/packages/vpn.scm
@@ -338,10 +338,11 @@ traversing network address translators (@dfn{NAT}s) and firewalls.")
(build-system python-build-system)
(arguments '(#:tests? #f)) ; no tests in repo
(native-inputs
- `(("docopt" ,python-docopt)))
+ `(("python-docopt" ,python-docopt)))
(inputs
- `(("pythondialog" ,python-pythondialog)
- ("requests" ,python-requests)))
+ `(("python-jinja2" ,python-jinja2)
+ ("python-pythondialog" ,python-pythondialog)
+ ("python-requests" ,python-requests)))
(propagated-inputs
`(("openvpn" ,openvpn)
("dialog" ,dialog)))
@@ -405,7 +406,7 @@ private network between hosts on the internet.")
(native-inputs
`(("python-setuptools-scm" ,python-setuptools-scm)
;; For tests only.
- ("python-flake8", python-flake8)
+ ("python-flake8" ,python-flake8)
("python-mock" ,python-mock)
("python-pytest-cov" ,python-pytest-cov)
("python-pytest-runner" ,python-pytest-runner)))
diff --git a/gnu/packages/vulkan.scm b/gnu/packages/vulkan.scm
index fe37b59e26..7e622946e9 100644
--- a/gnu/packages/vulkan.scm
+++ b/gnu/packages/vulkan.scm
@@ -183,7 +183,7 @@ interpretation of the specifications for these languages.")
(define-public vulkan-headers
(package
(name "vulkan-headers")
- (version "1.2.141")
+ (version "1.2.148")
(source
(origin
(method git-fetch)
@@ -193,7 +193,7 @@ interpretation of the specifications for these languages.")
(file-name (git-file-name name version))
(sha256
(base32
- "10nmx6y4llllfcczyfz76amd0vkqv09dj952d19zkzmmgcval7zq"))))
+ "1c877npvmkv2qxac308m3x0ij3il7hy5xk3fwsfi7s9dcsaxi63j"))))
(build-system cmake-build-system)
(arguments
`(#:tests? #f)) ; No tests.
@@ -207,7 +207,7 @@ interpretation of the specifications for these languages.")
(define-public vulkan-loader
(package
(name "vulkan-loader")
- (version "1.2.140")
+ (version "1.2.148")
(source
(origin
(method git-fetch)
@@ -217,7 +217,7 @@ interpretation of the specifications for these languages.")
(file-name (git-file-name name version))
(sha256
(base32
- "0rhyz0qgp0i7pcx6wlvgwy7j33d4cs0xx39f0b6igpfk0vk70r1w"))))
+ "0rxh4q09k0pdl3xlvxdv5qkak4d7az25gijxr5w170fjnd8yfrhk"))))
(build-system cmake-build-system)
(arguments
`(#:phases (modify-phases %standard-phases
@@ -261,7 +261,7 @@ and the ICD.")
(define-public vulkan-tools
(package
(name "vulkan-tools")
- (version "1.2.140")
+ (version "1.2.148")
(source
(origin
(method git-fetch)
@@ -271,7 +271,7 @@ and the ICD.")
(file-name (git-file-name name version))
(sha256
(base32
- "08dk0q77kpycn4vv19jh3ig73gbq3psan246a7fss0nfxpiddg0j"))))
+ "1908fw4rvg5iaim8ph0c0bzhac6jplg8dhfs6dpxd1dapzwqllkf"))))
(build-system cmake-build-system)
(inputs
`(("glslang" ,glslang)
diff --git a/gnu/packages/web-browsers.scm b/gnu/packages/web-browsers.scm
index 205538ee27..3ea4f7f867 100644
--- a/gnu/packages/web-browsers.scm
+++ b/gnu/packages/web-browsers.scm
@@ -280,7 +280,7 @@ and the GTK+ toolkit.")
(define-public lynx
(package
(name "lynx")
- (version "2.8.9rel.1")
+ (version "2.9.0dev.6")
(source (origin
(method url-fetch)
(uri (string-append
@@ -288,7 +288,7 @@ and the GTK+ toolkit.")
"/lynx" version ".tar.bz2"))
(sha256
(base32
- "15cmyyma2kz1hfaa6mwjgli8zwdzq3jv0q2cl6nwzycjfwyijzrq"))))
+ "1cjkpwxc1r8x8q73bgh9a4skaph1bwa0anml6f6lvf7lh5zvxw3q"))))
(build-system gnu-build-system)
(native-inputs `(("pkg-config" ,pkg-config)
("perl" ,perl)))
@@ -344,7 +344,7 @@ access.")
(define-public qutebrowser
(package
(name "qutebrowser")
- (version "1.13.1")
+ (version "1.14.0")
(source
(origin
(method url-fetch)
@@ -352,7 +352,7 @@ access.")
"qutebrowser/releases/download/v" version "/"
"qutebrowser-" version ".tar.gz"))
(sha256
- (base32 "1n72dvrv4dch4i07lsis76p7g16a039fwx8rk7w8q9f60wgqb5i8"))))
+ (base32 "0jip413yvyhdaywz0iadc32aaanjnhbx1d1vwzx3z1xbgc4i9svn"))))
(build-system python-build-system)
(native-inputs
`(("python-attrs" ,python-attrs))) ; for tests
@@ -461,7 +461,7 @@ driven and does not detract you from your daily work.")
(name "nyxt")
;; Package the pre-release because latest stable 1.5.0 does not build
;; anymore.
- (version "2-pre-release-1")
+ (version "2-pre-release-2")
(source
(origin
(method git-fetch)
@@ -472,7 +472,7 @@ driven and does not detract you from your daily work.")
(commit version)))
(sha256
(base32
- "0aipsmzqnlkmy001cihz2jnc0hja8c10rm08jycxr05j3gx3qsxd"))
+ "0wqq8ppn0n7js3pxzzb36h0lf3r3gqhs2hi8h85c3n8a54hnbp8q"))
(file-name (git-file-name "nyxt" version))))
(build-system gnu-build-system)
(arguments
@@ -534,45 +534,42 @@ driven and does not detract you from your daily work.")
`(("prove" ,sbcl-prove)
("sbcl" ,sbcl)))
(inputs
- ;; We need to avoid sbcl-* inputs (sbcl-cl-cffi-gtk in particular) as they
- ;; seem to cause Nyxt to hang into a hogging process in about 10 minutes.
- ;; Probably an issue between CFFI and how we build SBCL packages.
- ;; See https://github.com/atlas-engineer/nyxt/issues/680.
- `(("alexandria" ,cl-alexandria)
- ("bordeaux-threads" ,cl-bordeaux-threads)
- ("cl-containers" ,cl-containers)
- ("cl-css" ,cl-css)
- ("cl-json" ,cl-json)
- ("cl-markup" ,cl-markup)
- ("cl-ppcre" ,cl-ppcre)
- ("cl-prevalence" ,cl-prevalence)
- ("closer-mop" ,cl-closer-mop)
- ("cluffer" ,cl-cluffer)
- ("dexador" ,cl-dexador)
- ("enchant" ,cl-enchant)
- ("fset" ,cl-fset)
- ("iolib" ,cl-iolib)
- ("local-time" ,cl-local-time)
- ("log4cl" ,cl-log4cl)
- ("lparallel" ,cl-lparallel)
- ("mk-string-metrics" ,cl-mk-string-metrics)
- ("moptilities" ,cl-moptilities)
- ("osicat" ,sbcl-osicat) ; SBCL version needed for libosicat.so.
- ("parenscript" ,cl-parenscript)
- ("plump" ,cl-plump)
- ("quri" ,cl-quri)
- ("serapeum" ,cl-serapeum)
- ("str" ,cl-str)
- ("swank" ,cl-slime-swank)
- ("trivia" ,cl-trivia)
- ("trivial-clipboard" ,cl-trivial-clipboard)
- ("trivial-features" ,cl-trivial-features)
- ("trivial-package-local-nicknames" ,cl-trivial-package-local-nicknames)
- ("trivial-types" ,cl-trivial-types)
- ("unix-opts" ,cl-unix-opts)
+ `(("alexandria" ,sbcl-alexandria)
+ ("bordeaux-threads" ,sbcl-bordeaux-threads)
+ ("cl-containers" ,sbcl-cl-containers)
+ ("cl-css" ,sbcl-cl-css)
+ ("cl-json" ,sbcl-cl-json)
+ ("cl-markup" ,sbcl-cl-markup)
+ ("cl-ppcre" ,sbcl-cl-ppcre)
+ ("cl-prevalence" ,sbcl-cl-prevalence)
+ ("closer-mop" ,sbcl-closer-mop)
+ ("cluffer" ,sbcl-cluffer)
+ ("dexador" ,sbcl-dexador)
+ ("enchant" ,sbcl-enchant)
+ ("fset" ,sbcl-fset)
+ ("hu.dwim.defclass-star" ,sbcl-hu.dwim.defclass-star)
+ ("iolib" ,sbcl-iolib)
+ ("local-time" ,sbcl-local-time)
+ ("log4cl" ,sbcl-log4cl)
+ ("lparallel" ,sbcl-lparallel)
+ ("mk-string-metrics" ,sbcl-mk-string-metrics)
+ ("moptilities" ,sbcl-moptilities)
+ ("osicat" ,sbcl-osicat)
+ ("parenscript" ,sbcl-parenscript)
+ ("plump" ,sbcl-plump)
+ ("quri" ,sbcl-quri)
+ ("serapeum" ,sbcl-serapeum)
+ ("str" ,sbcl-cl-str)
+ ("swank" ,sbcl-slime-swank)
+ ("trivia" ,sbcl-trivia)
+ ("trivial-clipboard" ,sbcl-trivial-clipboard)
+ ("trivial-features" ,sbcl-trivial-features)
+ ("trivial-package-local-nicknames" ,sbcl-trivial-package-local-nicknames)
+ ("trivial-types" ,sbcl-trivial-types)
+ ("unix-opts" ,sbcl-unix-opts)
;; WebKitGTK deps
- ("cl-cffi-gtk" ,cl-cffi-gtk)
- ("cl-webkit" ,cl-webkit)
+ ("cl-cffi-gtk" ,sbcl-cl-cffi-gtk)
+ ("cl-webkit" ,sbcl-cl-webkit)
("glib-networking" ,glib-networking)
("gsettings-desktop-schemas" ,gsettings-desktop-schemas)))
(synopsis "Extensible web-browser in Common Lisp")
diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm
index 473fe2ff97..5ca9cf19d0 100644
--- a/gnu/packages/web.scm
+++ b/gnu/packages/web.scm
@@ -45,6 +45,7 @@
;;; Copyright © 2018, 2019, 2020 Björn Höfling <bjoern.hoefling@bjoernhoefling.de>
;;; Copyright © 2020 Paul Garlick <pgarlick@tourbillion-technology.com>
;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de>
+;;; Copyright © 2020 Ryan Prior <rprior@protonmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -67,39 +68,39 @@
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix gexp)
- #:use-module (guix git-download)
#:use-module (guix cvs-download)
#:use-module (guix hg-download)
+ #:use-module (guix git-download)
#:use-module (guix utils)
- #:use-module (guix build-system gnu)
+ #:use-module (guix build-system ant)
+ #:use-module (guix build-system cmake)
#:use-module (guix build-system glib-or-gtk)
+ #:use-module (guix build-system gnu)
+ #:use-module (guix build-system go)
#:use-module (guix build-system perl)
- #:use-module (guix build-system cmake)
- #:use-module (guix build-system trivial)
#:use-module (guix build-system python)
- #:use-module (guix build-system ant)
#:use-module (guix build-system scons)
- #:use-module (guix build-system go)
+ #:use-module (guix build-system trivial)
#:use-module (gnu packages)
#:use-module (gnu packages admin)
#:use-module (gnu packages adns)
#:use-module (gnu packages apr)
+ #:use-module (gnu packages autotools)
+ #:use-module (gnu packages base)
+ #:use-module (gnu packages bison)
#:use-module (gnu packages boost)
#:use-module (gnu packages check)
- #:use-module (gnu packages documentation)
- #:use-module (gnu packages docbook)
- #:use-module (gnu packages emacs)
- #:use-module (gnu packages emacs-xyz)
- #:use-module (gnu packages autotools)
#:use-module (gnu packages compression)
#:use-module (gnu packages curl)
#:use-module (gnu packages cyrus-sasl)
#:use-module (gnu packages databases)
- #:use-module (gnu packages bison)
+ #:use-module (gnu packages docbook)
+ #:use-module (gnu packages documentation)
+ #:use-module (gnu packages emacs)
+ #:use-module (gnu packages emacs-xyz)
#:use-module (gnu packages flex)
#:use-module (gnu packages fontutils)
#:use-module (gnu packages freedesktop)
- #:use-module (gnu packages kerberos)
#:use-module (gnu packages gcc)
#:use-module (gnu packages gd)
#:use-module (gnu packages gettext)
@@ -113,11 +114,12 @@
#:use-module (gnu packages guile)
#:use-module (gnu packages guile-xyz)
#:use-module (gnu packages hurd)
+ #:use-module (gnu packages image)
#:use-module (gnu packages java)
#:use-module (gnu packages jemalloc)
- #:use-module (gnu packages image)
#:use-module (gnu packages imagemagick)
#:use-module (gnu packages kde)
+ #:use-module (gnu packages kerberos)
#:use-module (gnu packages libevent)
#:use-module (gnu packages libidn)
#:use-module (gnu packages libunistring)
@@ -132,19 +134,18 @@
#:use-module (gnu packages nss)
#:use-module (gnu packages openldap)
#:use-module (gnu packages openstack)
- #:use-module (gnu packages base)
#:use-module (gnu packages package-management)
+ #:use-module (gnu packages pcre)
#:use-module (gnu packages perl)
#:use-module (gnu packages perl-check)
#:use-module (gnu packages python)
#:use-module (gnu packages python-crypto)
#:use-module (gnu packages python-web)
#:use-module (gnu packages python-xyz)
- #:use-module (gnu packages pcre)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages qt)
- #:use-module (gnu packages readline)
#:use-module (gnu packages re2c)
+ #:use-module (gnu packages readline)
#:use-module (gnu packages sphinx)
#:use-module (gnu packages texinfo)
#:use-module (gnu packages textutils)
@@ -231,14 +232,14 @@ Interface} specification.")
;; ’stable’ and recommends that “in general you deploy the NGINX mainline
;; branch at all times” (https://www.nginx.com/blog/nginx-1-6-1-7-released/)
;; Consider updating the nginx-documentation package together with this one.
- (version "1.19.2")
+ (version "1.19.3")
(source (origin
(method url-fetch)
(uri (string-append "https://nginx.org/download/nginx-"
version ".tar.gz"))
(sha256
(base32
- "0wr4ss4gld7x717m4j3a6l6f7ijblrrd55y563lkwhvr7sqpn7vw"))))
+ "1w4dkq7bl5gyix3x0ap3d9lndh7zyvc3mscl693d4ybql57vgrci"))))
(build-system gnu-build-system)
(inputs `(("openssl" ,openssl)
("pcre" ,pcre)
@@ -254,31 +255,32 @@ Interface} specification.")
#t))
(replace 'configure
;; The configure script is hand-written, not from GNU autotools.
- (lambda* (#:key outputs #:allow-other-keys)
+ (lambda* (#:key configure-flags outputs #:allow-other-keys)
(let ((flags
- (list (string-append "--prefix=" (assoc-ref outputs "out"))
- "--with-http_ssl_module"
- "--with-http_v2_module"
- "--with-pcre-jit"
- "--with-debug"
- ;; Even when not cross-building, we pass the
- ;; --crossbuild option to avoid customizing for the
- ;; kernel version on the build machine.
- ,(let ((system "Linux") ; uname -s
- (release "3.2.0") ; uname -r
- ;; uname -m
- (machine (match (or (%current-target-system)
- (%current-system))
- ("x86_64-linux" "x86_64")
- ("i686-linux" "i686")
- ("mips64el-linux" "mips64")
- ;; Prevent errors when querying
- ;; this package on unsupported
- ;; platforms, e.g. when running
- ;; "guix package --search="
- (_ "UNSUPPORTED"))))
- (string-append "--crossbuild="
- system ":" release ":" machine)))))
+ (append (list (string-append "--prefix=" (assoc-ref outputs "out"))
+ "--with-http_ssl_module"
+ "--with-http_v2_module"
+ "--with-pcre-jit"
+ "--with-debug"
+ ;; Even when not cross-building, we pass the
+ ;; --crossbuild option to avoid customizing for the
+ ;; kernel version on the build machine.
+ ,(let ((system "Linux") ; uname -s
+ (release "3.2.0") ; uname -r
+ ;; uname -m
+ (machine (match (or (%current-target-system)
+ (%current-system))
+ ("x86_64-linux" "x86_64")
+ ("i686-linux" "i686")
+ ("mips64el-linux" "mips64")
+ ;; Prevent errors when querying
+ ;; this package on unsupported
+ ;; platforms, e.g. when running
+ ;; "guix package --search="
+ (_ "UNSUPPORTED"))))
+ (string-append "--crossbuild="
+ system ":" release ":" machine)))
+ configure-flags)))
(setenv "CC" "gcc")
(format #t "configure flags: ~s~%" flags)
(apply invoke "./configure" flags)
@@ -318,53 +320,11 @@ and as a proxy to reduce the load on back-end HTTP or mail servers.")
;; except for two source files which are bsd-4 licensed.
(license (list license:bsd-2 license:expat license:bsd-3 license:bsd-4))))
-(define nginx-xslscript
- (let ((revision 11)
- (changeset "01dc9ba12e1b"))
- (package
- (name "nginx-xslscript")
- (version
- (simple-format #f "2014-03-31-~A-~A" revision changeset))
- (source (origin
- (method hg-fetch)
- (uri (hg-reference
- (url "http://hg.nginx.org/xslscript")
- (changeset changeset)))
- (file-name (string-append name "-" version))
- (sha256
- (base32
- "0am8zvdx3jmiwkg5q07qjaw5r26r4i2v5i4yr8a1k0jgib6ii08g"))))
- (build-system gnu-build-system)
- (arguments
- '(#:tests? #f ; No test suite
- #:phases
- (modify-phases %standard-phases
- (delete 'configure)
- (delete 'build)
- (replace 'install
- (lambda* (#:key outputs #:allow-other-keys)
- (let ((out-bin (string-append
- (assoc-ref outputs "out")
- "/bin")))
- (mkdir-p out-bin)
- (copy-file "xslscript.pl"
- (string-append
- out-bin
- "/xslscript.pl"))
- #t))))))
- (home-page "http://hg.nginx.org/xslscript")
- (synopsis "XSLScript with NGinx specific modifications")
- (description
- "XSLScript is a terse notation for writing complex XSLT stylesheets.
-This is modified version, specifically intended for use with the NGinx
-documentation.")
- (license license:bsd-2))))
-
(define-public nginx-documentation
;; This documentation should be relevant for the current nginx package.
- (let ((version "1.19.2")
- (revision 2581)
- (changeset "324ca14c3003"))
+ (let ((version "1.19.3")
+ (revision 2603)
+ (changeset "94ebfbcd68bb"))
(package
(name "nginx-documentation")
(version (simple-format #f "~A-~A-~A" version revision changeset))
@@ -376,7 +336,7 @@ documentation.")
(file-name (string-append name "-" version))
(sha256
(base32
- "15bdbi6cjqhx8lqsyr3hnwagq2r80bsyh2im80ajmbfv7y47djqi"))))
+ "1yryharm4dkjnj424r7sy0rc28h8ypfyj8as255a42gmllkwl2pg"))))
(build-system gnu-build-system)
(arguments
'(#:tests? #f ; no test suite
@@ -549,6 +509,120 @@ supported at your website.")
;; binary:
(package-license nginx)))))))
+(define nginx-xslscript
+ (let ((revision 11)
+ (changeset "01dc9ba12e1b"))
+ (package
+ (name "nginx-xslscript")
+ (version
+ (simple-format #f "2014-03-31-~A-~A" revision changeset))
+ (source (origin
+ (method hg-fetch)
+ (uri (hg-reference
+ (url "http://hg.nginx.org/xslscript")
+ (changeset changeset)))
+ (file-name (string-append name "-" version))
+ (sha256
+ (base32
+ "0am8zvdx3jmiwkg5q07qjaw5r26r4i2v5i4yr8a1k0jgib6ii08g"))))
+ (build-system gnu-build-system)
+ (arguments
+ '(#:tests? #f ; No test suite
+ #:phases
+ (modify-phases %standard-phases
+ (delete 'configure)
+ (delete 'build)
+ (replace 'install
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let ((out-bin (string-append
+ (assoc-ref outputs "out")
+ "/bin")))
+ (mkdir-p out-bin)
+ (copy-file "xslscript.pl"
+ (string-append
+ out-bin
+ "/xslscript.pl"))
+ #t))))))
+ (home-page "http://hg.nginx.org/xslscript")
+ (synopsis "XSLScript with NGinx specific modifications")
+ (description
+ "XSLScript is a terse notation for writing complex XSLT stylesheets.
+This is modified version, specifically intended for use with the NGinx
+documentation.")
+ (license license:bsd-2))))
+
+(define nginx-socket-cloexec
+ (package
+ (inherit nginx)
+ (name "nginx-socket-cloexec") ;required for lua-resty-shell
+ (source
+ (origin
+ (inherit (package-source nginx))
+ (patches (append (search-patches "nginx-socket-cloexec.patch")
+ (origin-patches (package-source nginx))))))))
+
+(define-public nginx-lua-module
+ (package
+ (inherit nginx)
+ (name "nginx-lua-module")
+ (version "0.10.15")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/openresty/lua-nginx-module")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name "lua-nginx-module" version))
+ (sha256
+ (base32
+ "1j216isp0546hycklbr5wi8mlga5hq170hk7f2sm16sfavlkh5gz"))))
+ (build-system gnu-build-system)
+ (inputs
+ `(("nginx-sources" ,(package-source nginx-socket-cloexec))
+ ("luajit" ,luajit)
+ ,@(package-inputs nginx)))
+ (arguments
+ (substitute-keyword-arguments
+ `(#:configure-flags '("--add-dynamic-module=.")
+ #:make-flags '("modules")
+ #:modules ((guix build utils)
+ (guix build gnu-build-system)
+ (ice-9 popen)
+ (ice-9 regex)
+ (ice-9 textual-ports))
+ ,@(package-arguments nginx))
+ ((#:phases phases)
+ `(modify-phases ,phases
+ (add-after 'unpack 'unpack-nginx-sources
+ (lambda* (#:key inputs native-inputs #:allow-other-keys)
+ (begin
+ ;; The nginx source code is part of the module’s source.
+ (format #t "decompressing nginx source code~%")
+ (let ((tar (assoc-ref inputs "tar"))
+ (nginx-srcs (assoc-ref inputs "nginx-sources")))
+ (invoke (string-append tar "/bin/tar")
+ "xvf" nginx-srcs "--strip-components=1"))
+ #t)))
+ (add-before 'configure 'set-luajit-env
+ (lambda* (#:key inputs #:allow-other-keys)
+ (let ((luajit (assoc-ref inputs "luajit")))
+ (setenv "LUAJIT_LIB"
+ (string-append luajit "/lib"))
+ (setenv "LUAJIT_INC"
+ (string-append luajit "/include/luajit-2.1"))
+ #t)))
+ (replace 'install
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let ((modules-dir (string-append (assoc-ref outputs "out")
+ "/etc/nginx/modules")))
+ (install-file "objs/ngx_http_lua_module.so" modules-dir)
+ #t)))
+ (delete 'fix-root-dirs)
+ (delete 'install-man-page)))))
+ (synopsis "NGINX module for Lua programming language support")
+ (description "This NGINX module provides a scripting support with Lua
+programming language.")))
+
(define-public lighttpd
(package
(name "lighttpd")
@@ -1272,15 +1346,15 @@ perform the opening handshake in HTTP.")
(define-public libpsl
(package
(name "libpsl")
- (version "0.21.0")
+ (version "0.21.1")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/rockdaboot/libpsl/"
- "releases/download/libpsl-" version
+ "releases/download/" version
"/libpsl-" version ".tar.gz"))
(sha256
(base32
- "04pfagb7ppq3yibx4lhazd1v9nwkxdfkyy2rgcrmrf3mldsirga1"))))
+ "0k0d46bbh1jj2ll369f134vciplrzbqkg7fv9m62bl6lzghy2v5c"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)
@@ -1345,6 +1419,50 @@ used to validate and fix HTML data.")
(home-page "http://tidy.sourceforge.net/")
(license (license:x11-style "file:///include/tidy.h"))))
+(define-public esbuild
+ (package
+ (name "esbuild")
+ (version "0.7.14")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/evanw/esbuild")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1y5hqymv2r8r29f8vh8kgncj3wlkg4fzi0zlc7mgyss872ajkc7i"))
+ (modules '((guix build utils)))
+ (snippet
+ '(begin
+ ;; Remove prebuilt binaries
+ (delete-file-recursively "npm")
+ #t))))
+ (build-system go-build-system)
+ (arguments
+ '(#:import-path "github.com/evanw/esbuild/cmd/esbuild"
+ #:unpack-path "github.com/evanw/esbuild"
+ #:phases
+ (modify-phases %standard-phases
+ (replace 'check
+ (lambda* (#:key tests? unpack-path #:allow-other-keys)
+ (if tests?
+ (with-directory-excursion (string-append "src/" unpack-path)
+ (invoke "make" "test-go")))
+ #t)))))
+ (inputs
+ `(("go-golang-org-x-sys" ,go-golang-org-x-sys)))
+ (native-inputs
+ `(("go-github-com-kylelemons-godebug" ,go-github-com-kylelemons-godebug)))
+ (home-page "https://github.com/evanw/esbuild")
+ (synopsis "Bundler and minifier tool for JavaScript and TypeScript")
+ (description
+ "The esbuild tool provides a unified bundler, transpiler and
+minifier. It packages up JavaScript and TypeScript code, along with JSON
+and other data, for distribution on the web.")
+ (license license:expat)))
+
(define-public tinyproxy
(package
(name "tinyproxy")
@@ -1502,15 +1620,18 @@ hash/signatures.")
(define-public libyaml
(package
(name "libyaml")
- (version "0.2.4")
+ (version "0.2.5")
(source
(origin
(method url-fetch)
(uri (string-append "https://pyyaml.org/download/libyaml/yaml-"
version ".tar.gz"))
(sha256
- (base32 "0mq5wf17ifcwwxq3kbimhi53jn3fg23vcynqpzxjcz3vfjlfs2nq"))))
+ (base32
+ "1x4fcw13r3lqy8ndydr3ili87wicplw2awbcv6r21qgyfndswhn6"))))
(build-system gnu-build-system)
+ (arguments
+ '(#:configure-flags '("--disable-static")))
(home-page "https://pyyaml.org/wiki/LibYAML")
(synopsis "YAML 1.1 parser and emitter written in C")
(description
@@ -2629,15 +2750,14 @@ development server with Starman.")
(define-public perl-cgi
(package
(name "perl-cgi")
- (version "4.47")
+ (version "4.51")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://cpan/authors/id/L/LE/LEEJO/"
"CGI-" version ".tar.gz"))
(sha256
- (base32
- "1a9cylhqsm5icvbg09m21nj0xx4zy5gbk4p74npm1ch3qlryzyyr"))))
+ (base32 "02k0p8zwbn0fz9r39rg8jvbmky8fwdg6kznklzk557rg07kiblhb"))))
(build-system perl-build-system)
(native-inputs
`(("perl-test-deep" ,perl-test-deep)
@@ -2855,15 +2975,15 @@ RSS 0.91, RSS 1.0, RSS 2.0, Atom.")
(define-public perl-file-listing
(package
(name "perl-file-listing")
- (version "6.04")
+ (version "6.11")
(source (origin
(method url-fetch)
(uri (string-append
- "mirror://cpan/authors/id/G/GA/GAAS/File-Listing-"
+ "mirror://cpan/authors/id/P/PL/PLICEASE/File-Listing-"
version ".tar.gz"))
(sha256
(base32
- "1xcwjlnxaiwwpn41a5yi6nz95ywh3szq5chdxiwj36kqsvy5000y"))))
+ "0vmzw1mhv580flzkla80gvwfpficnhlbqr1dnlf9x50bw7n18k62"))))
(build-system perl-build-system)
(propagated-inputs
`(("perl-http-date" ,perl-http-date)))
@@ -3178,15 +3298,14 @@ and multipart/form-data.")
(define-public perl-http-cookiejar
(package
(name "perl-http-cookiejar")
- (version "0.008")
+ (version "0.010")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://cpan/authors/id/D/DA/DAGOLDEN/"
"HTTP-CookieJar-" version ".tar.gz"))
(sha256
- (base32
- "0rfw6avcralggs7bf7n86flvhaahxjnqzvpwszp0sk4z4wwy01wm"))))
+ (base32 "1l7mqsca4fmls7agzwmp6yq1x16y9jwq4114i6i75n654gl37qsn"))))
(build-system perl-build-system)
(native-inputs
`(("perl-test-deep" ,perl-test-deep)
@@ -3530,15 +3649,14 @@ algorithm specified in section 8.2.2.1 of the draft standard.")
(define-public perl-io-socket-ip
(package
(name "perl-io-socket-ip")
- (version "0.39")
+ (version "0.41")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://cpan/authors/id/P/PE/PEVANS/"
"IO-Socket-IP-" version ".tar.gz"))
(sha256
- (base32
- "15kv5g1yb4a345sk3r5wfr99f868lhfqkddzsgpqddvccfkhv58i"))))
+ (base32 "0ihlpxrkq1xrvhnq52nhghanskic718ch8kpp642afgq72i4b6l4"))))
(build-system perl-build-system)
(native-inputs `(("perl-module-build" ,perl-module-build)))
(home-page "https://metacpan.org/release/IO-Socket-IP")
@@ -3578,7 +3696,7 @@ select or poll.")
(define-public perl-libwww
(package
(name "perl-libwww")
- (version "6.41")
+ (version "6.49")
(source (origin
(method url-fetch)
(uri (string-append
@@ -3586,7 +3704,7 @@ select or poll.")
version ".tar.gz"))
(sha256
(base32
- "0jh67946fwd33ap3xy8df0421d2mr6lmhalhkf1p7dx2b7fil9wf"))))
+ "19k0cg4j4qz005a4ngy48z4r8dc99dxlpq8kvj7qnk15mvgd1r63"))))
(build-system perl-build-system)
(native-inputs
`(("perl-test-fatal" ,perl-test-fatal)
@@ -3715,7 +3833,7 @@ https schemed URLs with LWP.")
(home-page "https://metacpan.org/release/LWP-UserAgent-Cached")
(synopsis "Simple caching for LWP::UserAgent")
(description "LWP::UserAgent::Cached is an LWP::UserAgent subclass with
-cache support. It returns responses from the local filesystem if available
+cache support. It returns responses from the local file system, if available,
instead of making an HTTP request.")
(license license:perl-license)))
@@ -4073,14 +4191,14 @@ either mocked HTTP or a locally spawned server.")
(define-public perl-test-tcp
(package
(name "perl-test-tcp")
- (version "2.21")
+ (version "2.22")
(source
(origin
(method url-fetch)
- (uri (string-append "mirror://cpan/authors/id/K/KA/KAZUHO/"
+ (uri (string-append "mirror://cpan/authors/id/M/MI/MIYAGAWA/"
"Test-TCP-" version ".tar.gz"))
(sha256
- (base32 "1djnaw1yli0kcd7azchqnp59l62f6mp13q50xyrjirpaxhd51j32"))))
+ (base32 "0mvv9rqwrwlcfh8qrs0s47p85rhlnw15d4gbpyi802bddp0c6lry"))))
(build-system perl-build-system)
(propagated-inputs
`(("perl-test-sharedfork" ,perl-test-sharedfork)))
@@ -4986,7 +5104,7 @@ commenting.")
(native-inputs
`(("netsurf-buildsystem" ,netsurf-buildsystem)
("pkg-config" ,pkg-config)
- ("check" ,check))) ;for tests
+ ("check" ,check-0.14))) ;for tests
(arguments netsurf-buildsystem-arguments)
(home-page "https://www.netsurf-browser.org/projects/libwapcaplet/")
(synopsis "String internment library")
@@ -5035,6 +5153,7 @@ written in C. It is developed as part of the NetSurf project.")
(url "https://github.com/tlsa/libcyaml")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
+ (patches (search-patches "libcyaml-libyaml-compat.patch"))
(sha256
(base32 "0428p0rwq71nhh5nzcbapsbrjxa0x5l6h6ns32nxv7j624f0zd93"))))
(build-system gnu-build-system)
@@ -5052,7 +5171,7 @@ written in C. It is developed as part of the NetSurf project.")
(inputs
`(("libyaml" ,libyaml)))
(native-inputs
- `(("pkg-config", pkg-config)))
+ `(("pkg-config" ,pkg-config)))
(synopsis "C library for reading and writing YAML")
(description
"LibCYAML is a C library written in ISO C11 for reading and writing
@@ -5605,14 +5724,14 @@ tools like SSH (Secure Shell) to reach the outside world.")
(define-public stunnel
(package
(name "stunnel")
- (version "5.56")
+ (version "5.57")
(source
(origin
(method url-fetch)
(uri (string-append "https://www.stunnel.org/downloads/stunnel-"
version ".tar.gz"))
(sha256
- (base32 "08kb4gi9fzqngrczykvba6xhaxhq9m4wmdbhxvgrva5rasrvz13k"))))
+ (base32 "1q8gc05fiz7w55ws0whwzb94ffjnhzfppf1mhz1hf671vmrvjnmg"))))
(build-system gnu-build-system)
(native-inputs
;; For tests.
@@ -7409,6 +7528,37 @@ update an existing mirrored site, and resume interrupted downloads.
HTTrack is fully configurable, and has an integrated help system.")
(license license:gpl3+)))
+(define-public buku
+ (package
+ (name "buku")
+ (version "4.4")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "buku" version))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1g1xhdskfn72xaraqzz2v8dl2iza7bzfpn17z2wdrzkq3ih7yvgg"))))
+ (build-system python-build-system)
+ (arguments
+ `(#:tests? #f)) ;FIXME: many tests need network access
+ (inputs
+ `(("python-beautifulsoup4" ,python-beautifulsoup4)
+ ("python-certifi" ,python-certifi)
+ ("python-cryptography" ,python-cryptography)
+ ("python-html5lib" ,python-html5lib)
+ ("python-urllib3" ,python-urllib3)))
+ (home-page "https://github.com/jarun/buku")
+ (synopsis "Bookmark manager")
+ (description
+ "buku is a powerful bookmark manager written in Python3 and SQLite3.
+@command{buku} can auto-import bookmarks from your browser and present them
+in an interactive command-line interface that lets you compose and update
+bookmarks directly. It can also present them in a web interface with
+@command{bukuserver}.")
+ (license license:gpl3+)))
+
(define-public anonip
(package
(name "anonip")
diff --git a/gnu/packages/webkit.scm b/gnu/packages/webkit.scm
index d3fee105ef..7958375bed 100644
--- a/gnu/packages/webkit.scm
+++ b/gnu/packages/webkit.scm
@@ -224,14 +224,14 @@ acceleration in mind, leveraging common 3D graphics APIs for best performance.")
(define-public webkitgtk
(package
(name "webkitgtk")
- (version "2.28.4")
+ (version "2.30.1")
(source (origin
(method url-fetch)
(uri (string-append "https://www.webkitgtk.org/releases/"
"webkitgtk-" version ".tar.xz"))
(sha256
(base32
- "0r4lkk21pny2g4mmsw0ds14m5hhjys1l47gvy59dfgihr7l546c2"))
+ "1cfnsl5kvwrbclmp7v9q9ynrz702i9ncb6xmx6972dxpmpyrvi8p"))
(patches (search-patches "webkitgtk-share-store.patch"
"webkitgtk-bind-all-fonts.patch"))))
(build-system cmake-build-system)
@@ -242,6 +242,7 @@ acceleration in mind, leveraging common 3D graphics APIs for best performance.")
#:configure-flags (list
"-DPORT=GTK"
"-DENABLE_GTKDOC=ON" ; No doc by default
+ "-DUSE_SYSTEMD=OFF"
(string-append ; uses lib64 by default
"-DLIB_INSTALL_DIR="
(assoc-ref %outputs "out") "/lib")
diff --git a/gnu/packages/wget.scm b/gnu/packages/wget.scm
index 7950b3b729..1092237a03 100644
--- a/gnu/packages/wget.scm
+++ b/gnu/packages/wget.scm
@@ -4,6 +4,7 @@
;;; Copyright © 2016, 2017, 2019, 2020 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2017 Rutger Helling <rhelling@mykolab.com>
;;; Copyright © 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
+;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -56,10 +57,10 @@
(inputs
`(("gnutls" ,gnutls)
("libidn2" ,libidn2)
- ("libpsl" ,libpsl)
- ("lzip" ,lzip)))
+ ("libpsl" ,libpsl)))
(native-inputs
- `(("pkg-config" ,pkg-config)
+ `(("lzip" ,lzip)
+ ("pkg-config" ,pkg-config)
("perl" ,perl)
("python" ,python) ;for testenv suite
("perl-http-daemon" ,perl-http-daemon)
diff --git a/gnu/packages/wm.scm b/gnu/packages/wm.scm
index 15fbf43ec7..2fafee29a0 100644
--- a/gnu/packages/wm.scm
+++ b/gnu/packages/wm.scm
@@ -5,7 +5,7 @@
;;; Copyright © 2015 xd1le <elisp.vim@gmail.com>
;;; Copyright © 2015 Paul van der Walt <paul@denknerd.org>
;;; Copyright © 2016 Danny Milosavljevic <dannym@scratchpost.org>
-;;; Copyright © 2016, 2019 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2016, 2019, 2020 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 Al McElrath <hello@yrns.org>
;;; Copyright © 2016 Carlo Zancanaro <carlo@zancanaro.id.au>
;;; Copyright © 2016, 2017, 2018, 2019 Ludovic Courtès <ludo@gnu.org>
@@ -973,6 +973,9 @@ experience.")
(modify-phases %standard-phases
(add-before 'configure 'set-paths
(lambda* (#:key inputs #:allow-other-keys)
+ (substitute* "lib/awful/completion.lua"
+ (("/usr/bin/env")
+ ""))
;; The build process needs to load Cairo dynamically.
(let* ((cairo (string-append (assoc-ref inputs "cairo") "/lib"))
(lua-version ,(version-major+minor (package-version lua)))
@@ -1021,9 +1024,9 @@ experience.")
(lua-version ,(version-major+minor (package-version lua)))
(lua-lgi (assoc-ref inputs "lua-lgi")))
(wrap-program (string-append awesome "/bin/awesome")
- `("LUA_PATH" suffix
+ `("LUA_PATH" ";" suffix
(,(format #f "~a/share/lua/~a/?.lua" lua-lgi lua-version)))
- `("LUA_CPATH" suffix
+ `("LUA_CPATH" ";" suffix
(,(format #f "~a/lib/lua/~a/?.so" lua-lgi lua-version)))
`("GI_TYPELIB_PATH" ":" prefix (,(getenv "GI_TYPELIB_PATH")))
`("LD_LIBRARY_PATH" suffix (,cairo)))
@@ -1383,6 +1386,8 @@ modules for building a Wayland compositor.")
(define-public sway
(package
(name "sway")
+ ;; XXX When updating, check whether grim-revert-output-rotation.patch can
+ ;; be dropped from the grim package.
(version "1.4")
(source
(origin
@@ -1514,7 +1519,7 @@ modules for building a Wayland compositor.")
(define-public waybar
(package
(name "waybar")
- (version "0.9.3")
+ (version "0.9.4")
(source
(origin
(method git-fetch)
@@ -1523,10 +1528,10 @@ modules for building a Wayland compositor.")
(commit version)))
(file-name (git-file-name name version))
(sha256
- (base32 "0ks719khhg2zwpyiwa2079i6962qcxpapm28hmr4ckpsp2n659ck"))))
+ (base32 "038vnma7y7z81caywp45yr364bc1aq8d01j5vycyiyfv33nm76fy"))))
(build-system meson-build-system)
(inputs `(("date" ,date)
- ("fmt" ,fmt)
+ ("fmt" ,fmt-6)
("gtk-layer-shell" ,gtk-layer-shell)
("gtkmm" ,gtkmm)
("jsoncpp" ,jsoncpp)
@@ -1592,16 +1597,20 @@ compositors that support the layer-shell protocol.")
(base32 "1ha8803ll7472kqxsy2xz0v5d4sv8apmc9z631d67m31q0z1m9rz"))))
(build-system asdf-build-system/sbcl)
(native-inputs `(("fiasco" ,sbcl-fiasco)
- ("texinfo" ,texinfo)))
+ ("texinfo" ,texinfo)
+
+ ;; To build the manual.
+ ("autoconf" ,autoconf)
+ ("automake" ,automake)))
(inputs `(("cl-ppcre" ,sbcl-cl-ppcre)
("clx" ,sbcl-clx)
("alexandria" ,sbcl-alexandria)))
(outputs '("out" "lib"))
(arguments
- '(#:asd-system-name "stumpwm"
+ '(#:asd-systems '("stumpwm")
#:phases
(modify-phases %standard-phases
- (add-after 'create-symlinks 'build-program
+ (add-after 'create-asdf-configuration 'build-program
(lambda* (#:key outputs #:allow-other-keys)
(build-program
(string-append (assoc-ref outputs "out") "/bin/stumpwm")
@@ -1626,13 +1635,12 @@ compositors that support the layer-shell protocol.")
out)))
#t)))
(add-after 'install 'install-manual
- (lambda* (#:key outputs #:allow-other-keys)
- ;; The proper way to the manual is bootstrapping a full autotools
- ;; build system and running ‘./configure && make stumpwm.info’ to
- ;; do some macro substitution. We can get away with much less.
+ (lambda* (#:key (make-flags '()) outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(info (string-append out "/share/info")))
- (invoke "makeinfo" "stumpwm.texi.in")
+ (invoke "./autogen.sh")
+ (invoke "sh" "./configure" "SHELL=sh")
+ (apply invoke "make" "stumpwm.info" make-flags)
(install-file "stumpwm.info" info)
#t))))))
(synopsis "Window manager written in Common Lisp")
@@ -1670,20 +1678,15 @@ productive, customizable lisp based systems.")
(program (string-append out "/bin/stumpwm")))
(build-program program outputs
#:entry-program '((stumpwm:stumpwm) 0)
- #:dependencies '("stumpwm"
- ,@(@@ (gnu packages lisp-xyz) slynk-systems))
+ #:dependencies '("stumpwm" "slynk")
#:dependency-prefixes
(map (lambda (input) (assoc-ref inputs input))
'("stumpwm" "slynk")))
- ;; Remove unneeded file.
- (delete-file (string-append out "/bin/stumpwm-exec.fasl"))
#t)))
(delete 'copy-source)
(delete 'build)
(delete 'check)
- (delete 'create-asd-file)
- (delete 'cleanup)
- (delete 'create-symlinks)))))))
+ (delete 'cleanup)))))))
(define stumpwm-contrib
(let ((commit "920f8fc1488f7953f205e1dda4c2ecbbbda56d63")
@@ -1745,7 +1748,7 @@ productive, customizable lisp based systems.")
`(("stumpwm" ,stumpwm "lib")
("clx-truetype" ,sbcl-clx-truetype)))
(arguments
- '(#:asd-system-name "ttf-fonts"
+ '(#:asd-systems '("ttf-fonts")
#:tests? #f
#:phases
(modify-phases %standard-phases
@@ -1762,7 +1765,7 @@ rendering.")
(inherit stumpwm-contrib)
(name "sbcl-stumpwm-pass")
(arguments
- '(#:asd-system-name "pass"
+ '(#:asd-systems '("pass")
#:tests? #f
#:phases
(modify-phases %standard-phases
@@ -1779,7 +1782,7 @@ password-store into StumpWM.")
(inherit stumpwm-contrib)
(name "sbcl-stumpwm-globalwindows")
(arguments
- '(#:asd-system-name "globalwindows"
+ '(#:asd-systems '("globalwindows")
#:tests? #f
#:phases
(modify-phases %standard-phases
@@ -1796,7 +1799,7 @@ windows in the current X session.")
(inherit stumpwm-contrib)
(name "sbcl-stumpwm-swm-gaps")
(arguments
- '(#:asd-system-name "swm-gaps"
+ '(#:asd-systems '("swm-gaps")
#:tests? #f
#:phases
(modify-phases %standard-phases
@@ -1813,7 +1816,7 @@ between windows.")
(inherit stumpwm-contrib)
(name "sbcl-stumpwm-net")
(arguments
- '(#:asd-system-name "net"
+ '(#:asd-systems '("net")
#:tests? #f
#:phases
(modify-phases %standard-phases
@@ -1831,7 +1834,7 @@ between windows.")
(inherit stumpwm-contrib)
(name "sbcl-stumpwm-wifi")
(arguments
- '(#:asd-system-name "wifi"
+ '(#:asd-systems '("wifi")
#:tests? #f
#:phases
(modify-phases %standard-phases
@@ -1849,7 +1852,7 @@ between windows.")
(inherit stumpwm-contrib)
(name "sbcl-stumpwm-stumptray")
(arguments
- '(#:asd-system-name "stumptray"
+ '(#:asd-systems '("stumptray")
#:tests? #f
#:phases
(modify-phases %standard-phases
@@ -1871,7 +1874,7 @@ between windows.")
(inherit stumpwm-contrib)
(name "sbcl-stumpwm-kbd-layouts")
(arguments
- '(#:asd-system-name "kbd-layouts"
+ '(#:asd-systems '("kbd-layouts")
#:tests? #f
#:phases
(modify-phases %standard-phases
@@ -2039,3 +2042,39 @@ execute a shell command on a configurable action. The icons can be moved on
the desktop by dragging them, and the icons will remember their positions on
start-up.")
(license license:bsd-3)))
+
+(define-public xnotify
+ (package
+ (name "xnotify")
+ (version "0.5.0")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/phillbush/xnotify")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0ris7jhi7hgw7nxkwkn3zk7n3y4nvnnm6dbz0qs0g2srp2k67v7v"))))
+ (build-system gnu-build-system)
+ (inputs
+ `(("libx11" ,libx11)
+ ("libxft" ,libxft)
+ ("libxinerama" ,libxinerama)
+ ("imlib2" ,imlib2)))
+ (arguments
+ `(#:make-flags
+ (list (string-append "CC=" ,(cc-for-target))
+ (string-append "PREFIX=" %output)
+ (string-append "CFLAGS="
+ "-I" (assoc-ref %build-inputs "freetype")
+ "/include/freetype2"))
+ #:tests? #f ;no test suite
+ #:phases
+ (modify-phases %standard-phases
+ (delete 'configure))))
+ (home-page "https://github.com/phillbush/xnotify")
+ (synopsis "Displays a notification on the screen")
+ (description "XNotify receives a notification specification in stdin and
+shows a notification for the user on the screen.")
+ (license license:expat)))
diff --git a/gnu/packages/wv.scm b/gnu/packages/wv.scm
index 37881a4d0f..a8c0d3cbaf 100644
--- a/gnu/packages/wv.scm
+++ b/gnu/packages/wv.scm
@@ -1,7 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2014 Marek Benc <merkur32@gmail.com>
;;; Copyright © 2017 Leo Famulari <leo@famulari.name>
-;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
+;;; Copyright © 2018, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -33,14 +33,14 @@
(define-public wv
(package
(name "wv")
- (version "1.2.4")
- (source (origin
- (method url-fetch)
- (uri (string-append "mirror://sourceforge/wvware/wv/" version
- "/wv-" version ".tar.gz"))
- (sha256
- (base32
- "1mn2ax6qjy3pvixlnvbkn6ymy6y4l2wxrr4brjaczm121s8hjcb7"))))
+ (version "1.2.9")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "https://abiword.org/downloads/wv/"
+ version "/wv-" version ".tar.gz"))
+ (sha256
+ (base32 "17f16lkdv1c3amaz2hagiicih59ynpp4786k1m2qa1sw68xhswsc"))))
(build-system gnu-build-system)
(inputs
`(("glib" ,glib)
@@ -57,7 +57,7 @@
Word 9, 8, 7, and 6) to HTML or LaTeX. Word 2 documents can still be converted
to plain text but will lack formatting.
-Othe programs can use wv as a library to convert Word documents to other
+Other programs can use wv as a library to convert Word documents to other
formats. AbiWord uses it as its Word importer, and KWord uses concepts and
code from wv in theirs.")
(home-page "http://wvware.sourceforge.net/")
diff --git a/gnu/packages/xdisorg.scm b/gnu/packages/xdisorg.scm
index 44f903ccb0..be8d0234f9 100644
--- a/gnu/packages/xdisorg.scm
+++ b/gnu/packages/xdisorg.scm
@@ -40,6 +40,7 @@
;;; Copyright © 2020 Ivan Kozlov <kanichos@yandex.ru>
;;; Copyright © 2020 Brett Gilio <brettg@gnu.org>
;;; Copyright © 2020 Gabriel Arazas <foo.dogsquared@gmail.com>
+;;; Copyright © 2020 James Smith <jsubuntuxp@disroot.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -104,6 +105,7 @@
#:use-module (gnu packages xorg)
#:use-module (gnu packages fontutils)
#:use-module (gnu packages bison)
+ #:use-module (gnu packages sphinx)
#:use-module (ice-9 match))
;; packages outside the x.org system proper
@@ -322,18 +324,19 @@ avoiding password prompts when X11 forwarding has already been setup.")
(define-public libxkbcommon
(package
(name "libxkbcommon")
- (version "0.10.0")
+ (version "1.0.1")
(source (origin
(method url-fetch)
(uri (string-append "https://xkbcommon.org/download/libxkbcommon-"
version ".tar.xz"))
(sha256
(base32
- "1wmnl0hngn6vrqrya4r8hvimlkr4jag39yjprls4gyrqvh667hsp"))))
+ "13bcdf2xpjxwbghas0cr448z89qqki2ssgfgswc257y9859v4s5b"))))
(build-system meson-build-system)
(inputs
`(("libx11" ,libx11)
("libxcb" ,libxcb)
+ ("libxml2" ,libxml2)
("wayland" ,wayland)
("wayland-protocols" ,wayland-protocols)
("xkeyboard-config" ,xkeyboard-config)))
@@ -358,7 +361,8 @@ system applications; currently that includes Wayland, kmscon, GTK+, Qt,
Clutter, and more. Despite the name, it is not currently used by anything
X11 (yet).")
(license (license:x11-style "file://COPYING"
- "See 'COPYING' in the distribution."))))
+ "See 'COPYING' in the distribution."))
+ (properties '((cpe-name . "xkbcommon")))))
(define-public libfakekey
(package
@@ -498,7 +502,7 @@ rasterisation.")
(define-public libdrm
(package
(name "libdrm")
- (version "2.4.101")
+ (version "2.4.102")
(source (origin
(method url-fetch)
(uri (string-append
@@ -506,8 +510,7 @@ rasterisation.")
version ".tar.xz"))
(sha256
(base32
- "19vqbhqljhln0lrpnv3s7y3lkhsdcp76dl8bhqj3cis9ism1pwyx"))
- (patches (search-patches "libdrm-realpath-virtio.patch"))))
+ "0nx0bd9dhymdsd99v4ifib77yjirkvkxf5hzdkbr7qr8dhrzkjwb"))))
(build-system meson-build-system)
(arguments
`(#:configure-flags
@@ -984,7 +987,8 @@ compact configuration syntax.")
;; This sets the destination when installing the necessary terminal
;; capability data, which are not provided by 'ncurses'. See
;; https://lists.gnu.org/archive/html/bug-ncurses/2009-10/msg00031.html
- `(#:make-flags (list (string-append "TERMINFO="
+ `(#:configure-flags (list "--enable-256-color")
+ #:make-flags (list (string-append "TERMINFO="
(assoc-ref %outputs "out")
"/share/terminfo"))
#:phases
@@ -2436,7 +2440,7 @@ After selection, the clip is put onto the PRIMARY and CLIPBOARD X selections.")
("glib" ,glib "bin")
("pkg-config" ,pkg-config)))
(inputs
- `(("dbus-glib", dbus-glib)
+ `(("dbus-glib" ,dbus-glib)
("glib" ,glib)
("libx11" ,libx11)))
(home-page "https://github.com/qnikst/kbdd")
@@ -2515,3 +2519,34 @@ using @command{dmenu}.")
such as sway, similar to @command{rofi}.")
(home-page "https://hg.sr.ht/~scoopta/wofi")
(license license:gpl3+)))
+
+(define-public dex
+ (package
+ (name "dex")
+ (version "0.9.0")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url (string-append "https://github.com/jceb/dex"))
+ (commit (string-append "v" version))))
+ (sha256
+ (base32
+ "03aapcywnz4kl548cygpi25m8adwbmqlmwgxa66v4156ax9dqs86"))
+ (file-name (git-file-name name version))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out")))
+ #:phases
+ (modify-phases %standard-phases
+ (delete 'configure))
+ #:tests? #f))
+ (inputs
+ `(("python", python)))
+ (native-inputs
+ `(("python-sphinx" ,python-sphinx)))
+ (home-page "https://github.com/jceb/dex")
+ (synopsis "Execute DesktopEntry files")
+ (description
+ "@command{dex}, @dfn{DesktopEntry Execution}, is a program to generate
+and execute @file{.desktop} files of the Application type.")
+ (license license:gpl3+)))
diff --git a/gnu/packages/xfce.scm b/gnu/packages/xfce.scm
index ed584d8959..2b9c13e6c9 100644
--- a/gnu/packages/xfce.scm
+++ b/gnu/packages/xfce.scm
@@ -1396,7 +1396,7 @@ precedence rules, and the following functions and common constants.")
(define-public xfce4-cpufreq-plugin
(package
(name "xfce4-cpufreq-plugin")
- (version "1.2.1")
+ (version "1.2.2")
(source (origin
(method url-fetch)
(uri (string-append "https://archive.xfce.org/src/panel-plugins/"
@@ -1405,7 +1405,7 @@ precedence rules, and the following functions and common constants.")
"/xfce4-cpufreq-plugin-" version ".tar.bz2"))
(sha256
(base32
- "1dgmx3ygil51s1az298ly0gybcw8ln1dz8q8y9k207a0vk049q65"))))
+ "16748wxy8aa5cxga0dbfrq7kv40alg5yx967r2l6vjapv2w083sh"))))
(build-system gnu-build-system)
(native-inputs
`(("intltool" ,intltool)
diff --git a/gnu/packages/xiph.scm b/gnu/packages/xiph.scm
index fb3c06418b..2d80496330 100644
--- a/gnu/packages/xiph.scm
+++ b/gnu/packages/xiph.scm
@@ -86,14 +86,14 @@ periodic timestamps for seeking.")
(define libvorbis
(package
(name "libvorbis")
- (version "1.3.6")
+ (version "1.3.7")
(source (origin
(method url-fetch)
(uri (string-append "https://downloads.xiph.org/releases/vorbis/"
"libvorbis-" version ".tar.xz"))
(sha256
(base32
- "05dlzjkdpv46zb837wysxqyn8l636x3dw8v8ymlrwz2fg1dbn05g"))))
+ "0jwmf87x5sdis64rbv0l87mdpah1rbilkkxszipbzg128f9w8g5k"))))
(build-system gnu-build-system)
(propagated-inputs `(("libogg" ,libogg)))
(arguments `(#:configure-flags '("LDFLAGS=-lm"
@@ -494,7 +494,7 @@ things in between.")
(define-public libshout
(package
(name "libshout")
- (version "2.4.3")
+ (version "2.4.4")
(source (origin
(method url-fetch)
(uri (string-append
@@ -502,7 +502,7 @@ things in between.")
"libshout-" version ".tar.gz"))
(sha256
(base32
- "1zhdshas539cs8fsz8022ljxnnncr5lafhfd1dqr1gs125fzb2hd"))))
+ "1hz670a4pfpsb89b0mymy8nw4rx8x0vmh61gq6j1vbg70mfhrscc"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)))
diff --git a/gnu/packages/xml.scm b/gnu/packages/xml.scm
index e482312f3c..af2da1bbb6 100644
--- a/gnu/packages/xml.scm
+++ b/gnu/packages/xml.scm
@@ -24,6 +24,7 @@
;;; Copyright © 2019 Giacomo Leidi <goodoldpaul@autistici.org>
;;; Copyright © 2020 Paul Garlick <pgarlick@tourbillion-technology.com>
;;; Copyright © 2020 Edouard Klein <edk@beaver-labs.com>
+;;; Copyright © 2020 Brett Gilio <brettg@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -1432,7 +1433,7 @@ SAX2 APIs.")
(define-public xlsxio
(package
(name "xlsxio")
- (version "0.2.26")
+ (version "0.2.29")
(source
(origin
(method git-fetch)
@@ -1441,7 +1442,7 @@ SAX2 APIs.")
(commit version)))
(file-name (git-file-name name version))
(sha256
- (base32 "0j8jral3yc2aib2ykp527lyb62a1d9p7qmfbszy7iy3s65pkma9b"))))
+ (base32 "0jr6ggzhd8aakdvppcl8scy9j9jafg82zbzr4ih996sz8lrj90fn"))))
(native-inputs
`(("expat" ,expat)
("make" ,gnu-make)
diff --git a/gnu/packages/xorg.scm b/gnu/packages/xorg.scm
index 60e80e1fda..b1a4d4a9bd 100644
--- a/gnu/packages/xorg.scm
+++ b/gnu/packages/xorg.scm