Merge branch 'staging' into core-updates

This commit is contained in:
Marius Bakke 2022-09-16 19:11:43 +02:00
commit 7e0f2728a4
No known key found for this signature in database
GPG Key ID: A2A06DF2A33A54FA
37 changed files with 756 additions and 290 deletions

93
NEWS
View File

@ -5,6 +5,7 @@
Copyright © 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021 Ludovic Courtès <ludo@gnu.org> Copyright © 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021 Ludovic Courtès <ludo@gnu.org>
Copyright © 2016, 2017, 2018 Ricardo Wurmus <rekado@elephly.net> Copyright © 2016, 2017, 2018 Ricardo Wurmus <rekado@elephly.net>
Copyright © 2021, 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com> Copyright © 2021, 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com>
Copyright © 2022 Mathieu Othacehe <othacehe@gnu.org>
Copying and distribution of this file, with or without modification, Copying and distribution of this file, with or without modification,
are permitted in any medium without royalty provided the copyright are permitted in any medium without royalty provided the copyright
@ -16,8 +17,12 @@ Please send Guix bug reports to bug-guix@gnu.org.
** Package management ** Package management
*** New guix home command, for home environment management *** New guix home command, for home environment management
*** New guix shell command, the successor to guix environment *** New guix shell command, the successor to guix environment
*** New guix system edit command, to edit services
*** New deb format for the guix pack command *** New deb format for the guix pack command
*** New guix import minetest command, to import Minetest extensions *** New guix import minetest command, to import Minetest extensions
*** New guix import elm command, to import Elm packages
*** New guix import egg command, to import CHICKEN egg packages
*** New guix import hexpm command, to import Erlang and Elixir packages
*** New 'guix style' command, to auto-format package definitions *** New 'guix style' command, to auto-format package definitions
*** guix import texlive rewritten to use the TLPDB as its source *** guix import texlive rewritten to use the TLPDB as its source
*** guix import elpa now supports the non-GNU ELPA repository *** guix import elpa now supports the non-GNU ELPA repository
@ -25,26 +30,75 @@ Please send Guix bug reports to bug-guix@gnu.org.
*** guix import cran can now import a specific version *** guix import cran can now import a specific version
*** New updater (see guix refresh): generic-git *** New updater (see guix refresh): generic-git
*** guix graph has a new --max-depth option *** guix graph has a new --max-depth option
*** guix deploy has a new --execute option
*** --with-commit option now accepts strings returned by git describe *** --with-commit option now accepts strings returned by git describe
*** Align tabular data output by commands like guix package --list-available
*** Improved guix import go importer via a new PEG parser
*** Improved Software Heritage downloader
*** New 'web.archive.org download fall-back
*** Various performance enhancements
*** New --tune package transformation option
*** guix refresh -L option is repurposed to load-path modification
*** guix system image supersedes the docker-image sub-command
** Distribution ** Distribution
*** The installation script can now enable local substitute servers discovery *** The installation script can now enable local substitute servers discovery
*** More control over boot-time file system checks and repairs *** More control over boot-time file system checks and repairs
*** XFS file systems can be created by the installer and mounted by label/UUID *** XFS file systems can be created by the installer and mounted by label/UUID
*** New interface for declaring swap space *** New interface for declaring swap space
*** GNOME is now at version 42 *** GNOME is now at version 42
*** TeX Live is now at version 2021
*** Python is now faster thanks to being built with optimizations
*** The Rust bootstrap now starts from 1.54 instead of 1.19 *** The Rust bootstrap now starts from 1.54 instead of 1.19
*** Most Python 2 packages have been removed *** Most Python 2 packages have been removed
*** Guix now makes use of parallel xz compression *** Guix now makes use of parallel xz compression
*** Faster shared libraries discovery via a per-package dynamic linker cache *** Faster shared libraries discovery via a per-package dynamic linker cache
*** Build phases are no longer required to return a boolean *** Package inputs can now be plain package lists
*** Package inputs can now be provided without explicit labels
*** A package origin can now be a single file rather than an archive *** A package origin can now be a single file rather than an archive
*** Multiple Tex Live trees can now be used via GUIX_TEXMF *** Multiple Tex Live trees can now be used via GUIX_TEXMF
*** A new sanity-check phase detects packaging problems at build time *** A new sanity-check phase detects packaging problems at build time
*** G-Expressions can now be used to author build phases
*** Fetching sources can now fall-back to use Disarchive *** Fetching sources can now fall-back to use Disarchive
*** Improved CI and infrastructure
*** Multiple cross-compilation tooling addition and fixes
*** Many Qt 6 modules are now packaged
*** Configuring setuid programs is now more flexible
*** Add support for the XFS file system
*** Add partial support for LUKS2 headers when using GRUB
*** GDM now supports Wayland
*** Guix System static networking support is improved
*** The installer final configuration is prettified
*** The installer external command handling is improved
*** The installer now has a crash dump upload mechanism
*** Emacs now supports native compilation
*** GRUB bootloader now supports chain-loading
** Programming interfaces ** Programming interfaces
*** (guix records) now supports “field sanitizers” *** (guix records) now supports “field sanitizers”
*** Build phases are no longer required to return a boolean
*** G-Expressions can now be used to author build phases
*** Various improvements to the helpers in (gnu service configuration)
*** New modify-inputs macro to ease customizing a list of package inputs
*** New this-package-input and this-package-native-input macros
*** texlive-union is now deprecated in favor of texlive-updmap.cfg
*** New (guix cpu) module
*** New (guix least-authority) module
*** New (guix plaform) module
*** New (guix read-print) module
It provides a comment-preserving reader and a comment-preserving
pretty-printer smarter than (ice-9 pretty-print).
*** New channel-build-system
This build system lets you build Guix instances from channel specifications,
similar to how 'guix time-machine' would do it, as regular packages.
*** New elm-build-system
*** New rebar-build-system
*** New services
anonip, bitmask, fail2ban, gitile, greetd, jami, lightdm, log-cleanup,
nar-herder, opendht, rasdaemon, seatd, strongswan
** Noteworthy bug fixes ** Noteworthy bug fixes
*** Fall back to Software Heritage when cloning a channel *** Fall back to Software Heritage when cloning a channel
(<https://issues.guix.gnu.org/44187>) (<https://issues.guix.gnu.org/44187>)
@ -56,13 +110,42 @@ Please send Guix bug reports to bug-guix@gnu.org.
(<https://issues.guix.gnu.org/24937>) (<https://issues.guix.gnu.org/24937>)
*** File system flags are validated before system instantiation *** File system flags are validated before system instantiation
(<https://issues.guix.gnu.org/51425>) (<https://issues.guix.gnu.org/51425>)
*** Fonts can now be discovered in any profile *** Fonts can now be discovered in any profile via XDG_DATA_DIRS
(<https://issues.guix.gnu.org/31403>)
*** Python modules discovery no longer uses PYTHONPATH *** Python modules discovery no longer uses PYTHONPATH
*** Various Python reproducibility fixes *** Various Python reproducibility fixes
*** Installer now supports MSDOS disk labels on UEFI systems *** The installer now supports MSDOS disk labels on UEFI systems
(<https://issues.guix.gnu.org/47889>) (<https://issues.guix.gnu.org/47889>)
*** The installer can now properly mount FAT16 partitions
(<https://issues.guix.gnu.org/48419>)
*** The installer no longer crashes when deleting a free space partition
*** Emacs handles major upgrades better without a re-login *** Emacs handles major upgrades better without a re-login
(<https://bugs.gnu.org/47458>) (<https://bugs.gnu.org/47458>)
*** The bootloader configuration now accepts multiple targets
(<https://issues.guix.gnu.org/40997>.)
*** A file system mount point is always created when create? is true
(<https://issues.guix.gnu.org/40158>)
*** Build the man database only if man-db is in the profile
*** gdk-pixbuf now discovers pixbuf loaders via a search path
(<https://issues.guix.gnu.org/50957>)
*** Gitolite home directory permissions are fixed
(https://issues.guix.gnu.org/56444)
*** The man-db database is indexed via man pages names
(https://issues.guix.gnu.org/38838)
*** chfn can now change the user's full name
(https://issues.guix.gnu.org/52539)
*** Gnome settings Bluetooth panel is now working
(https://issues.guix.gnu.org/32166)
*** Inferiors are now caching store connections
(https://issues.guix.gnu.org/48007)
*** The installer doesn't segfault when removing an extended partition
*** The installer doesn't ship an older Guix revision
(https://issues.guix.gnu.org/53210)
*** The installer cannot proceed without any non-root user accounts
(https://issues.guix.gnu.org/54666)
*** <operating-system> compiler truly honors the 'system' argument
(https://issues.guix.gnu.org/55951)
* Changes in 1.3.0 (since 1.2.0) * Changes in 1.3.0 (since 1.2.0)
** Package management ** Package management
*** POWER9 (powerpc64le-linux) is now supported as a technology preview *** POWER9 (powerpc64le-linux) is now supported as a technology preview

View File

@ -178,7 +178,18 @@ QEMU monitor and to the guest's backdoor REPL."
(($ <marionette> command pid monitor (= force repl)) (($ <marionette> command pid monitor (= force repl))
(write exp repl) (write exp repl)
(newline repl) (newline repl)
(read repl)))) (with-exception-handler
(lambda (exn)
(simple-format
(current-error-port)
"error reading marionette response: ~A
remaining response: ~A\n"
exn
(get-line repl))
(raise-exception exn))
(lambda ()
(read repl))
#:unwind? #t))))
(define* (wait-for-file file marionette (define* (wait-for-file file marionette
#:key (timeout 10) (read 'read)) #:key (timeout 10) (read 'read))
@ -187,7 +198,14 @@ FILE has not shown up after TIMEOUT seconds, raise an error."
(match (marionette-eval (match (marionette-eval
`(let loop ((i ,timeout)) `(let loop ((i ,timeout))
(cond ((file-exists? ,file) (cond ((file-exists? ,file)
(cons 'success (call-with-input-file ,file ,read))) (cons 'success
(let ((content
(call-with-input-file ,file ,read)))
(if (eof-object? content)
;; #<eof> can't be read, so convert to the
;; empty string
""
content))))
((> i 0) ((> i 0)
(sleep 1) (sleep 1)
(loop (- i 1))) (loop (- i 1)))

View File

@ -1321,7 +1321,6 @@ dist_patch_DATA = \
%D%/packages/patches/jamvm-2.0.0-disable-branch-patching.patch \ %D%/packages/patches/jamvm-2.0.0-disable-branch-patching.patch \
%D%/packages/patches/jamvm-2.0.0-opcode-guard.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-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-tunnelvisionlabs-antlr-code-too-large.patch \
%D%/packages/patches/java-apache-ivy-port-to-latest-bouncycastle.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-commons-collections-fix-java8.patch \

View File

@ -3615,7 +3615,7 @@ stretching and pitch scaling of audio. This package contains the library.")
(base32 "0nvhdzy0m3bchk3dpnspv2f518p2v9fjcrv36z1sva1pv9a2g35w")))) (base32 "0nvhdzy0m3bchk3dpnspv2f518p2v9fjcrv36z1sva1pv9a2g35w"))))
(build-system cmake-build-system) (build-system cmake-build-system)
(native-inputs (native-inputs
(list catch-framework2)) (list catch2))
(inputs (inputs
(list fftw)) (list fftw))
(home-page "https://mixxxdj.github.io/libkeyfinder/") (home-page "https://mixxxdj.github.io/libkeyfinder/")

View File

@ -3792,7 +3792,7 @@ comment or quality sections.")
(inputs (inputs
(list gsl openblas zlib)) (list gsl openblas zlib))
(native-inputs (native-inputs
`(("catch" ,catch-framework2-1) `(("catch" ,catch2-1)
("perl" ,perl) ("perl" ,perl)
("shunit2" ,shunit2) ("shunit2" ,shunit2)
("which" ,which))) ("which" ,which)))

View File

@ -600,7 +600,12 @@ also initializes the boards (RAM etc).")
(("'cc'") "'gcc'")) (("'cc'") "'gcc'"))
(substitute* "tools/patman/test_util.py" (substitute* "tools/patman/test_util.py"
;; python3-coverage is simply called coverage in guix. ;; python3-coverage is simply called coverage in guix.
(("python3-coverage") "coverage")) (("python3-coverage") "coverage")
;; Don't require 100% coverage since it's brittle and can
;; fail with newer versions of coverage or dependencies.
(("raise ValueError\\('Test coverage failure'\\)")
"print('Continuing anyway since Guix does not care :O')"))
(substitute* "test/run" (substitute* "test/run"
;; Make it easier to find test failures. ;; Make it easier to find test failures.
(("#!/bin/bash") "#!/bin/bash -x") (("#!/bin/bash") "#!/bin/bash -x")

View File

@ -45,9 +45,11 @@
#:use-module (gnu packages check) #:use-module (gnu packages check)
#:use-module (gnu packages compression) #:use-module (gnu packages compression)
#:use-module (gnu packages cpp) #:use-module (gnu packages cpp)
#:use-module (gnu packages elf)
#:use-module (gnu packages linux) #:use-module (gnu packages linux)
#:use-module (gnu packages logging) #:use-module (gnu packages logging)
#:use-module (gnu packages lua) #:use-module (gnu packages lua)
#:use-module (gnu packages ninja)
#:use-module (gnu packages package-management) #:use-module (gnu packages package-management)
#:use-module (gnu packages pcre) #:use-module (gnu packages pcre)
#:use-module (gnu packages pkg-config) #:use-module (gnu packages pkg-config)
@ -62,7 +64,7 @@
#:use-module (gnu packages rpc) #:use-module (gnu packages rpc)
#:use-module (gnu packages sqlite) #:use-module (gnu packages sqlite)
#:use-module (gnu packages tls) #:use-module (gnu packages tls)
#:use-module (gnu packages ninja) #:use-module (gnu packages version-control)
#:use-module (guix build-system gnu) #:use-module (guix build-system gnu)
#:use-module (guix build-system python)) #:use-module (guix build-system python))
@ -342,6 +344,81 @@ resembles Python.")
;; TODO: Bump this in the next rebuild cycle. ;; TODO: Bump this in the next rebuild cycle.
(define-public meson meson-0.60) (define-public meson meson-0.60)
(define-public meson-python
(package
(name "meson-python")
(version "0.8.1")
(source (origin
(method url-fetch)
(uri (pypi-uri "meson_python" version))
(sha256
(base32
"0k2yn0iws1n184sdznzmfw4xgbqgq5cn02hpc7m0xdaxryj1ybs4"))))
(build-system python-build-system)
(arguments
(list #:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'avoid-ninja-dependency
(lambda _
;; Avoid dependency on the "ninja" PyPI distribution,
;; which is a meta-package that simply downloads and
;; installs ninja from the web ...
(substitute* "pyproject.toml"
(("'ninja',")
""))))
(replace 'build
(lambda _
;; ZIP does not support timestamps before 1980.
(setenv "SOURCE_DATE_EPOCH" "315532800")
(invoke "python" "-m" "build" "--wheel" "--no-isolation" ".")))
(replace 'install
(lambda _
(let ((whl (car (find-files "dist" "\\.whl$"))))
(invoke "pip" "--no-cache-dir" "--no-input"
"install" "--no-deps" "--prefix" #$output whl))))
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(invoke "pytest" "-vv" "tests" "-k"
(string-append
"not "
;; These tests require a git checkout.
(string-join '("test_contents_unstaged"
"test_no_pep621"
"test_pep621"
"test_dynamic_version"
"test_contents"
"test_contents_subdirs")
" and not ")))))))))
(propagated-inputs
(list meson-0.63 ;>=0.62 required
ninja
;; XXX: python-meson forcefully sets the RUNPATH of binaries
;; for vendoring purposes, and uses PatchELF for that(!). This
;; functionality is not useful in Guix, but removing this
;; dependency is tricky. There is discussion upstream about making
;; it optional, but for now we'll just carry it:
;; https://github.com/FFY00/meson-python/issues/125
patchelf
python-colorama
python-pyproject-metadata
python-tomli
python-wheel))
(native-inputs
(list python-pypa-build
python-wheel
;; For tests.
pkg-config
python-gitpython
python-pytest
python-pytest-mock))
(home-page "https://github.com/FFY00/mesonpy")
(synopsis "Meson-based build backend for Python")
(description
"meson-python is a PEP 517 build backend for Meson projects.")
(license license:expat)))
(define-public premake4 (define-public premake4
(package (package
(name "premake") (name "premake")

View File

@ -441,7 +441,7 @@ PyUnit and others.")
multi-paradigm automated test framework for C++ and Objective-C.") multi-paradigm automated test framework for C++ and Objective-C.")
(license license:boost1.0))) (license license:boost1.0)))
(define-public catch-framework2-1 (define-public catch2-1
(package (package
(name "catch2") (name "catch2")
(version "1.12.2") (version "1.12.2")
@ -470,7 +470,7 @@ multi-paradigm automated test framework for C++ and Objective-C.")
a multi-paradigm automated test framework for C++ and Objective-C.") a multi-paradigm automated test framework for C++ and Objective-C.")
(license license:boost1.0))) (license license:boost1.0)))
(define-public catch-framework2 (define-public catch2
(package (package
(name "catch2") (name "catch2")
(version "2.13.8") (version "2.13.8")

View File

@ -559,7 +559,7 @@ symmetries written in C. Spglib can be used to:
glm glm
netcdf)) netcdf))
(native-inputs (native-inputs
(list catch-framework2 python-setuptools)) (list catch2 python-setuptools))
(home-page "https://pymol.org") (home-page "https://pymol.org")
(synopsis "Molecular visualization system") (synopsis "Molecular visualization system")
(description "PyMOL is a capable molecular viewer and renderer. It can be (description "PyMOL is a capable molecular viewer and renderer. It can be

View File

@ -531,7 +531,7 @@ functions, class methods, and stl containers.
(modules '((guix build utils))) (modules '((guix build utils)))
(snippet '(delete-file-recursively "./test/thirdparty")))) (snippet '(delete-file-recursively "./test/thirdparty"))))
(inputs (inputs
(list catch-framework2-1)) (list catch2-1))
(build-system cmake-build-system) (build-system cmake-build-system)
(arguments (arguments
'(#:phases '(#:phases
@ -1264,7 +1264,7 @@ services including database, analytic, and machine learning technologies.")
(lambda _ (lambda _
(invoke "./tests")))))) (invoke "./tests"))))))
(native-inputs (native-inputs
(list catch-framework2)) (list catch2))
(synopsis "C++11/14/17 std::expected with functional-style extensions") (synopsis "C++11/14/17 std::expected with functional-style extensions")
(description "@code{std::expected} is proposed as the preferred way to (description "@code{std::expected} is proposed as the preferred way to
represent objects which will either have an expected value, or an unexpected represent objects which will either have an expected value, or an unexpected

View File

@ -10,6 +10,7 @@
;;; Copyright © 2020 Zheng Junjie <873216071@qq.com> ;;; Copyright © 2020 Zheng Junjie <873216071@qq.com>
;;; Copyright © 2021 la snesne <lasnesne@lagunposprasihopre.org> ;;; Copyright © 2021 la snesne <lasnesne@lagunposprasihopre.org>
;;; Copyright © 2021 Petr Hodina <phodina@protonmail.com> ;;; Copyright © 2021 Petr Hodina <phodina@protonmail.com>
;;; Copyright © 2021 Mathieu Laparie <mlaparie@disr.it>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -678,3 +679,43 @@ format documents, with the following features:
@item handling encrypted documents @item handling encrypted documents
@end itemize\n") @end itemize\n")
(license license:lgpl3+))) (license license:lgpl3+)))
(define-public python-ebooklib
(package
(name "python-ebooklib")
(version "0.17.1")
(source (origin
(method url-fetch)
(uri (pypi-uri "EbookLib" version))
(sha256
(base32
"1w972g0kmh9cdxf3kjr7v4k99wvv4lxv3rxkip39c08550nf48zy"))))
(build-system python-build-system)
(propagated-inputs (list python-lxml python-six))
(home-page "https://github.com/aerkalov/ebooklib")
(synopsis "Ebook library which can handle EPUB2/EPUB3 and Kindle format")
(description
"Ebook library which can handle EPUB2/EPUB3 and Kindle format.")
(license license:agpl3+)))
(define-public shirah
(package
(name "shirah")
(version "1.0.0")
(source (origin
(method url-fetch)
(uri (pypi-uri "shirah_reader" version))
(sha256
(base32
"0j15v435lz68c1mj5clfx5dmfyjc6jvvz2q8hqvv799mb2faj42y"))))
(build-system python-build-system)
(propagated-inputs (list python-beautifulsoup4 python-ebooklib
python-syllables python-termcolor))
(home-page "https://github.com/hallicopter/shirah-reader")
(synopsis "Terminal ebook reader with an optional RSVP mode")
(description
"@command{shirah} is a curses based terminal ebook reader that can
display ebooks in the usual way or with Rapid Serial Visual Presentation, a
method to enable speedreading by showing the text word by word at configurable
speeds.")
(license license:gpl2+)))

View File

@ -10,6 +10,7 @@
;;; Copyright © 2020 Jakub Kądziołka <kuba@kadziolka.net> ;;; Copyright © 2020 Jakub Kądziołka <kuba@kadziolka.net>
;;; Copyright © 2020 Prafulla Giri <pratheblackdiamond@gmail.com> ;;; Copyright © 2020 Prafulla Giri <pratheblackdiamond@gmail.com>
;;; Copyright © 2021 Nicolò Balzarotti <nicolo@nixo.xyz> ;;; Copyright © 2021 Nicolò Balzarotti <nicolo@nixo.xyz>
;;; Copyright © 2022 Luis Felipe López Acevedo <luis.felipe.la@protonmail.com>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -35,6 +36,7 @@
#:use-module (gnu packages compression) #:use-module (gnu packages compression)
#:use-module (gnu packages curl) #:use-module (gnu packages curl)
#:use-module (gnu packages databases) #:use-module (gnu packages databases)
#:use-module (gnu packages django)
#:use-module (gnu packages flex) #:use-module (gnu packages flex)
#:use-module (gnu packages fonts) #:use-module (gnu packages fonts)
#:use-module (gnu packages fontutils) #:use-module (gnu packages fontutils)
@ -45,6 +47,7 @@
#:use-module (gnu packages gnome) #:use-module (gnu packages gnome)
#:use-module (gnu packages golang) #:use-module (gnu packages golang)
#:use-module (gnu packages gtk) #:use-module (gnu packages gtk)
#:use-module (gnu packages gstreamer)
#:use-module (gnu packages image) #:use-module (gnu packages image)
#:use-module (gnu packages javascript) #:use-module (gnu packages javascript)
#:use-module (gnu packages kde) #:use-module (gnu packages kde)
@ -1075,3 +1078,75 @@ machine, and more.")
(description "Commandline client for exercism.io, a free service providing (description "Commandline client for exercism.io, a free service providing
mentored learning for programming languages.") mentored learning for programming languages.")
(license license:expat))) (license license:expat)))
(define-public mazo
(package
(name "mazo")
(version "1.0.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://gitlab.com/luis-felipe/mazo.git")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "06246380i5rxycniwg5syn0aldd2zy10cbqk1lgyc0qfqb2lyrwj"))))
(build-system python-build-system)
(arguments
`(#:use-setuptools? #f
#:phases
(modify-phases %standard-phases
(delete 'build)
(replace 'check
(lambda* (#:key tests? inputs outputs #:allow-other-keys)
(when tests?
(let* ((out (assoc-ref outputs "out"))
(home (string-append out "/tmp")))
(add-installed-pythonpath inputs outputs)
(setenv "HOME" home)
(invoke "python3" "manage.py" "test")))))
(replace 'install
(lambda* (#:key inputs outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(bin (string-append out "/bin"))
(script (string-append bin "/mazo"))
(share (string-append out "/share"))
(help (string-append share "/help/C/mazo"))
(icons (string-append
share
"/icons/hicolor/scalable/apps"))
(apps (string-append share "/applications"))
(site (string-append
(site-packages inputs outputs)
"/mazo")))
(mkdir-p help)
(mkdir-p bin)
(copy-file "mazo.py" script)
(chmod script #o555)
(install-file "icons/mazo.svg" icons)
(install-file "lugare.ulkeva.Mazo.desktop" apps)
(copy-recursively "help/C/mazo" help)
(copy-recursively "mazo" site)))))))
(native-inputs
(list python-django
python-django-cleanup
python-django-svg-image-form-field
python-pillow
python-pycairo))
(propagated-inputs
(list gstreamer
gtk+
python
python-django
python-django-cleanup
python-django-svg-image-form-field
python-pillow
python-pycairo
python-pygobject
yelp))
(home-page "https://luis-felipe.gitlab.io/mazo/")
(synopsis "Memorize concepts using multimedia flash cards")
(description "Mazo is a learning application that helps you memorize
simple concepts using multimedia flash cards and spaced reviews.")
(license license:public-domain)))

View File

@ -58,7 +58,7 @@
(base32 "0wbb6dwmzlsyy224y0liis0azgzwbjdvcyzc31pw1aw6vbp36na6")))) (base32 "0wbb6dwmzlsyy224y0liis0azgzwbjdvcyzc31pw1aw6vbp36na6"))))
(build-system cmake-build-system) (build-system cmake-build-system)
(native-inputs (native-inputs
(list catch-framework2 (list catch2
git-minimal git-minimal
perl perl
;;FIX-ME: Building with ronn fails. ;;FIX-ME: Building with ronn fails.

View File

@ -3218,7 +3218,7 @@ perform various useful functions such as:
;; with all of these. ;; with all of these.
(inputs (inputs
`(("boost" ,boost) `(("boost" ,boost)
("catch2" ,catch-framework2) ("catch2" ,catch2)
("cgal" ,cgal) ("cgal" ,cgal)
("eigen" ,eigen) ("eigen" ,eigen)
("embree" ,embree) ("embree" ,embree)

View File

@ -756,7 +756,7 @@ OpenType variant of these fonts.")
(define-public font-amiri (define-public font-amiri
(package (package
(name "font-amiri") (name "font-amiri")
(version "0.114") (version "0.117")
(source (origin (source (origin
(method git-fetch) (method git-fetch)
(uri (git-reference (uri (git-reference
@ -765,7 +765,7 @@ OpenType variant of these fonts.")
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"01d54i68pmy37fhvxv8kld3iqlc1m0vr871zd66y5y4c7kn2v7as")))) "1z2hdmny52bapakf96y5xfr29f8ax7q6nj651zrihnnhfdriqfx1"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
(list (list
@ -779,6 +779,7 @@ OpenType variant of these fonts.")
(assoc-ref font:%standard-phases 'install))))) (assoc-ref font:%standard-phases 'install)))))
(native-inputs (native-inputs
(list python-fonttools (list python-fonttools
python-glyphsets
python-pcpp python-pcpp
python-opentype-sanitizer python-opentype-sanitizer
python-sfdlib python-sfdlib

View File

@ -138,16 +138,22 @@ them as it goes.")
(define-public python-afdko (define-public python-afdko
(package (package
(name "python-afdko") (name "python-afdko")
(version "3.8.1") (version "3.9.1")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (pypi-uri "afdko" version)) (uri (pypi-uri "afdko" version))
(sha256 (sha256
(base32 "171r9f7n8fgz37dkcgpzj508lxfafcyzzx43ps12j1z2nk1sk905")) (base32 "0k1204vykgx32saa495s1lgmz1dixcp8bjiv486imx77killvm02"))
(modules '((guix build utils))) (modules '((guix build utils)))
(snippet (snippet
#~(begin #~(begin
(substitute*
"tests/buildcff2vf_data/expected_output/SHSansJPVFTest.ttx"
;; Adjust expected output to match newer fonttools. Taken from:
;; https://github.com/adobe-type-tools/afdko/commit/7c526390a10e
(("FDSelect format=\"3\"")
"FDSelect format=\"0\""))
(with-directory-excursion "c/makeotf/lib/hotconv" (with-directory-excursion "c/makeotf/lib/hotconv"
;; Delete ANTLR-generated code. ;; Delete ANTLR-generated code.
(for-each delete-file (for-each delete-file
@ -158,6 +164,27 @@ them as it goes.")
(list (list
#:phases #:phases
#~(modify-phases %standard-phases #~(modify-phases %standard-phases
(add-after 'unpack 'use-c++17
(lambda _
;; ANTLR4 4.10 and later require C++ 17.
(substitute* "CMakeLists.txt"
(("CMAKE_CXX_STANDARD 11")
"CMAKE_CXX_STANDARD 17"))))
(add-after 'unpack 'use-system-libxml2
(lambda _
;; XXX: These horrifying substitutions revert this upstream
;; PR: <https://github.com/adobe-type-tools/afdko/pull/1527>.
;; Hopefully it's only temporary..!
(substitute* (find-files "." "^CMakeLists.txt$")
(("\\(\\(NOT \\$\\{LibXml2_FOUND\\}\\) OR \
\"\\$\\{CMAKE_SYSTEM\\}\" MATCHES \"Linux\"\\)")
"(NOT ${LibXml2_FOUND})")
(("\\(\\(\\$\\{LibXml2_FOUND\\}\\) AND \
\\(NOT \"\\$\\{CMAKE_SYSTEM\\}\" MATCHES \"Linux\"\\)\\)")
"(${LibXml2_FOUND})"))
(substitute* "cmake/ExternalLibXML2.cmake"
(("set\\(LIBXML2_STATIC_INCLUDE_DIR")
"set(LIBXML2_INCLUDE_DIR)"))))
(add-after 'unpack 'patch-problematic-requirements (add-after 'unpack 'patch-problematic-requirements
(lambda _ (lambda _
(substitute* "requirements.txt" (substitute* "requirements.txt"
@ -177,7 +204,8 @@ them as it goes.")
(format #f "include_directories(SYSTEM ~a)" (format #f "include_directories(SYSTEM ~a)"
(search-input-directory inputs (search-input-directory inputs
"include/antlr4-runtime")))) "include/antlr4-runtime"))))
(substitute* "c/makeotf/lib/hotconv/CMakeLists.txt" (substitute* '("c/makeotf/lib/hotconv/CMakeLists.txt"
"c/makeotf/lib/cffread/CMakeLists.txt")
(("antlr4_static") (("antlr4_static")
"antlr4-runtime")))) "antlr4-runtime"))))
(add-after 'unpack 'regenerate-hotconv-grammar (add-after 'unpack 'regenerate-hotconv-grammar
@ -198,7 +226,8 @@ them as it goes.")
(lambda* (#:key tests? #:allow-other-keys) (lambda* (#:key tests? #:allow-other-keys)
(when tests? (when tests?
(setenv "HOME" "/tmp") (setenv "HOME" "/tmp")
(invoke "pytest" "-vv")))) (invoke "pytest" "-vv" "--dist" "loadfile" "-n"
(number->string (parallel-job-count))))))
(add-after 'check 'wrap (add-after 'check 'wrap
(assoc-ref %standard-phases 'wrap)) (assoc-ref %standard-phases 'wrap))
(add-before 'wrap 'wrap-PATH (add-before 'wrap 'wrap-PATH
@ -216,11 +245,16 @@ them as it goes.")
(list antlr4 (list antlr4
openjdk ;required by antlr4 openjdk ;required by antlr4
ninja ninja
pkg-config
python-pytest python-pytest
python-pytest-xdist
python-scikit-build python-scikit-build
python-setuptools-scm python-setuptools-scm
python-wheel)) python-wheel))
(inputs (list java-antlr4-runtime-cpp `(,util-linux "lib"))) (inputs
(list java-antlr4-runtime-cpp
libxml2
`(,util-linux "lib")))
(propagated-inputs (propagated-inputs
(list psautohint (list psautohint
python-booleanoperations python-booleanoperations
@ -349,13 +383,13 @@ Kit for OpenType (AFDKO) @command{tx} tool.")
(define-public python-compreffor (define-public python-compreffor
(package (package
(name "python-compreffor") (name "python-compreffor")
(version "0.5.1.post1") (version "0.5.2")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (pypi-uri "compreffor" version)) (uri (pypi-uri "compreffor" version))
(sha256 (sha256
(base32 "1r3wqd67qnz8p6irv68mvadqv1nklgzw53376iarw3pq4gxrma36")))) (base32 "0r6vlxrm73j719f5q3n6sy737p2424n7qam52am83p55j0fb9h5f"))))
(build-system python-build-system) (build-system python-build-system)
(arguments (arguments
(list (list
@ -405,13 +439,13 @@ converts any cubic curves to quadratic. The most useful function is probably
(define-public python-ufo2ft (define-public python-ufo2ft
(package (package
(name "python-ufo2ft") (name "python-ufo2ft")
(version "2.26.0") (version "2.28.0")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (pypi-uri "ufo2ft" version)) (uri (pypi-uri "ufo2ft" version))
(sha256 (sha256
(base32 "0a6iq5g6qdxj7nvip8nnf0mf8y5wmpd3wwq0dv7d4nm9bjrh0r6m")))) (base32 "068hm62s1iphyg66w96vgiif6ahpcsaf8fr44rk6jdf71f6fyqd5"))))
(build-system python-build-system) (build-system python-build-system)
(native-inputs (native-inputs
(list python-pytest python-pytest-runner python-setuptools-scm)) (list python-pytest python-pytest-runner python-setuptools-scm))
@ -436,13 +470,13 @@ to generate OpenType font binaries from Unified Font Objects (UFOs).")
(define-public python-fontmath (define-public python-fontmath
(package (package
(name "python-fontmath") (name "python-fontmath")
(version "0.9.1") (version "0.9.2")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (pypi-uri "fontMath" version ".zip")) (uri (pypi-uri "fontMath" version ".zip"))
(sha256 (sha256
(base32 "001756zxn2386dm4svgqjgw5026hvyacxl09b2qlk7s06phpcphw")))) (base32 "014407hpvqdx123g06i664qrfq86bf9l621x7jllpgqw3rqir2sc"))))
(build-system python-build-system) (build-system python-build-system)
(propagated-inputs (list python-fonttools)) (propagated-inputs (list python-fonttools))
(native-inputs (native-inputs
@ -509,13 +543,13 @@ implementing the pen protocol for manipulating glyphs.")
(hidden-package (hidden-package
(package (package
(name "python-fontparts-bootstrap") (name "python-fontparts-bootstrap")
(version "0.10.4") (version "0.10.8")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (pypi-uri "fontParts" version ".zip")) (uri (pypi-uri "fontParts" version ".zip"))
(sha256 (sha256
(base32 "1ic453q86s5hsw8mxnclk1vr4qp69fd67gywhv23zqwz9a7kb7lh")))) (base32 "0i5ww6yl9m74wnjd7gyvjkdh7m56haql4gv7lasmppdipay2209g"))))
(build-system python-build-system) (build-system python-build-system)
(propagated-inputs (propagated-inputs
(list python-booleanoperations (list python-booleanoperations
@ -540,6 +574,101 @@ process. FontParts is the successor of RoboFab.")
(alist-delete 'hidden? (alist-delete 'hidden?
(package-properties python-fontparts-bootstrap))))) (package-properties python-fontparts-bootstrap)))))
(define-public python-glyphslib
(package
(name "python-glyphslib")
(version "6.0.7")
(source (origin
(method url-fetch)
(uri (pypi-uri "glyphsLib" version))
(sha256
(base32
"0mkkwd09g76hvif603ij5aqicxh47zvhgyyd0pjcjmpdy6dr70yw"))))
(build-system python-build-system)
(arguments
(list
#:phases
#~(modify-phases %standard-phases
(replace 'build
(lambda _
;; The Zip format does not support pre-1980 time stamps.
(let ((circa-1980 (* 10 366 24 60 60)))
(setenv "SOURCE_DATE_EPOCH" (number->string circa-1980))
(invoke "python" "-m" "build" "--wheel" "--no-isolation" "."))))
(replace 'install
(lambda _
(let ((whl (car (find-files "dist" "\\.whl$"))))
(invoke "pip" "--no-cache-dir" "--no-input"
"install" "--no-deps" "--prefix" #$output whl))))
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(setenv "GUIX_PYTHONPATH"
(string-append (getcwd) ":" (getenv "GUIX_PYTHONPATH")))
(invoke "pytest" "-vv"
;; These fail because the test data has not yet been
;; updated for newer FontTools:
;; https://github.com/googlefonts/glyphsLib/issues/787
;; Re-enable for versions > 6.0.7.
"--ignore=tests/builder/designspace_gen_test.py"
"--ignore=tests/builder/interpolation_test.py"
)))))))
(native-inputs
(list python-pypa-build
python-setuptools-scm
python-wheel
;; For tests.
python-pytest
python-xmldiff))
(propagated-inputs
(list python-defcon
python-fonttools
python-openstep-plist
python-ufolib2
python-ufo2ft
python-ufonormalizer))
(home-page "https://github.com/googlefonts/glyphsLib")
(synopsis "Bridge Glyphs source files to UFOs")
(description
"This package provides a bridge from Glyphs source files (@file{.glyphs})
to UFOs and DesignSpace files via @code{defcon} and @code{designspaceLib}.")
(license license:asl2.0)))
(define-public python-glyphsets
(package
(name "python-glyphsets")
(version "0.5.2")
(source (origin
(method url-fetch)
(uri (pypi-uri "glyphsets" version))
(sha256
(base32
"1dc24i0hkd85gkkg3bqjhagjyw3xsqxazd86yh2l60c1wr5n9y6g"))))
(build-system python-build-system)
(arguments
(list #:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'loosen-version-constraints
(lambda _
(substitute* "setup.py"
(("setuptools_scm>=4,<6\\.1")
"setuptools_scm>=4"))))
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(invoke "pytest" "-vv" "tests/testglyphdata.py")
(invoke "pytest" "-vv" "tests/testusage.py")))))))
(native-inputs (list python-pytest python-setuptools-scm))
(propagated-inputs
(list python-defcon python-fonttools python-glyphslib))
(home-page "https://github.com/googlefonts/glyphsets/")
(synopsis "Evaluate coverage of glyph sets")
(description
"This package provides an API with data about glyph sets for many
different scripts and languages.")
(license license:asl2.0)))
(define-public python-opentype-sanitizer (define-public python-opentype-sanitizer
(package (package
(name "python-opentype-sanitizer") (name "python-opentype-sanitizer")
@ -1556,13 +1685,13 @@ API-compatible with defcon.")
(define-public python-defcon-bootstrap (define-public python-defcon-bootstrap
(package (package
(name "python-defcon-bootstrap") (name "python-defcon-bootstrap")
(version "0.10.0") (version "0.10.2")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (pypi-uri "defcon" version ".zip")) (uri (pypi-uri "defcon" version ".zip"))
(sha256 (sha256
(base32 "0g0bjwzdj6sskyh8snbxsxza3czdmvb807qv38mizx631cm8c2d0")))) (base32 "0i1a306b8c42dpbplwxj6ili2aac5lwq2ir6r1jswicysvk9dqxf"))))
(build-system python-build-system) (build-system python-build-system)
(propagated-inputs (list python-fontpens-bootstrap python-fonttools-full)) (propagated-inputs (list python-fontpens-bootstrap python-fonttools-full))
(native-inputs (native-inputs

View File

@ -58,7 +58,8 @@
#:use-module (gnu packages qt) #:use-module (gnu packages qt)
#:use-module (gnu packages boost) #:use-module (gnu packages boost)
#:use-module (gnu packages algebra) #:use-module (gnu packages algebra)
#:use-module (gnu packages libftdi)) #:use-module (gnu packages libftdi)
#:use-module (gnu packages libusb))
(define-public abc (define-public abc
(let ((commit "5ae4b975c49c") (let ((commit "5ae4b975c49c")
@ -584,3 +585,29 @@ libraries, optionally encrypted, into other simulators.")
hardware designs in Verilog.") hardware designs in Verilog.")
(home-page "https://zipcpu.com/") (home-page "https://zipcpu.com/")
(license license:lgpl3+)))) (license license:lgpl3+))))
(define-public openfpgaloader
(package
(name "openfpgaloader")
(version "0.9.0")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/trabucayre/openFPGALoader.git")
(commit (string-append "v" version))))
(file-name (string-append name "-" version "-checkout"))
(sha256
(base32
"1v3bwzhsrnsn304cqhd5azn68cl847qv8w8cb8bl7372jiqz5wqq"))))
(build-system cmake-build-system)
(native-inputs
(list pkg-config))
(inputs
(list libftdi libusb hidapi zlib))
(arguments
`(#:tests? #f)) ; No tests exist
(synopsis "Utility for programming FPGA")
(description "This package provides a program to transfer a bitstream
to an FPGA.")
(home-page "https://f4pga.org/")
(license license:asl2.0)))

View File

@ -65,6 +65,7 @@
#:use-module (gnu packages boost) #:use-module (gnu packages boost)
#:use-module (gnu packages build-tools) #:use-module (gnu packages build-tools)
#:use-module (gnu packages check) #:use-module (gnu packages check)
#:use-module (gnu packages cmake)
#:use-module (gnu packages compression) #:use-module (gnu packages compression)
#:use-module (gnu packages cpp) #:use-module (gnu packages cpp)
#:use-module (gnu packages cups) #:use-module (gnu packages cups)
@ -823,22 +824,59 @@ street bearings/orientations, and speed/travel time.")
(license license:expat))) (license license:expat)))
(define-public mapnik (define-public mapnik
;; There hasn't been a release since early 2021, and it fails to build with
;; Boost 1.77+.
(let ((commit "81103491b467e17218140f50bc0bb9dc8c1f0317")
(revision "0"))
(package (package
(name "mapnik") (name "mapnik")
(version "3.1.0") (version (git-version "3.1.0" revision commit))
(source (source
(origin (origin
(method url-fetch) (method git-fetch)
(uri (string-append "https://github.com/mapnik/mapnik/releases/download/v" (uri (git-reference
version "/mapnik-v" version ".tar.bz2")) (url "https://github.com/mapnik/mapnik")
(commit commit)
;; TODO: Un-bundle mapbox dependencies (not yet packaged).
(recursive? #t))) ;for mapbox dependencies and test data
(file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32 "094nam57bdd5nak88qy33z2p3kjahk3vk2nk56m5jkcr5d3hlnx2"))))
"0qb2irykja5qhr9apz9r230pcxap9v3j85fi98mj2xd9sa163ms3")))) (build-system qt-build-system)
(build-system scons-build-system) (arguments
(list
#:cmake cmake ;for FIND_PACKAGE_ARGS
#:configure-flags
#~(list (string-append "-DCMAKE_CXX_FLAGS=-I"
#$(this-package-native-input "catch2")
"/include/catch2"))
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'use-system-catch2
(lambda _
(substitute* "test/CMakeLists.txt"
(("GIT_TAG.*v2.13.7" all)
(string-append all "\n"
" FIND_PACKAGE_ARGS NAMES Catch2"))
(("^include.*Catch2_SOURCE_DIR.*contrib/Catch.cmake.*")
"include(Catch)\n"))))
(add-after 'unpack 'disable-problematic-tests
(lambda _
;; The 'ogr' test fails for unknown reasons. Mark it as
;; expected to fail (see:
;; https://github.com/mapnik/mapnik/issues/4329).
(substitute* "test/unit/datasource/ogr.cpp"
(("TEST_CASE\\(\"ogr\"" all)
(string-append all ", \"[!shouldfail]\""))))))))
(native-inputs
(list catch2
pkg-config
postgresql))
(inputs (inputs
(list boost (list boost
cairo cairo
freetype freetype
gdal
harfbuzz harfbuzz
icu4c icu4c
libjpeg-turbo libjpeg-turbo
@ -846,16 +884,9 @@ street bearings/orientations, and speed/travel time.")
libtiff libtiff
libwebp libwebp
libxml2 libxml2
proj.4 proj
sqlite sqlite
zlib)) zlib))
(native-inputs
(list pkg-config postgresql))
(arguments
`(#:scons-flags
(list "CC=gcc"
(string-append "PREFIX=" %output)
(string-append "CUSTOM_LDFLAGS=-Wl,-rpath=" %output "/lib"))))
(home-page "https://mapnik.org/") (home-page "https://mapnik.org/")
(synopsis "Toolkit for developing mapping applications") (synopsis "Toolkit for developing mapping applications")
(description "Mapnik is a toolkit for developing mapping applications. It (description "Mapnik is a toolkit for developing mapping applications. It
@ -874,7 +905,7 @@ development.")
;; deps/mapnik/sparsehash ;; deps/mapnik/sparsehash
license:bsd-3 license:bsd-3
;; deps/agg ;; deps/agg
(license:non-copyleft "file://deps/agg/copying"))))) (license:non-copyleft "file://deps/agg/copying"))))))
(define-public spatialite-gui (define-public spatialite-gui
(package (package

View File

@ -9730,8 +9730,10 @@ associations for GNOME.")
gobject-introspection gobject-introspection
gsettings-desktop-schemas gsettings-desktop-schemas
pkg-config)) pkg-config))
(inputs (propagated-inputs
(list rest-next)) ;; These dependencies are required by govirt-1.0.pc.
(list glib
rest-next))
(synopsis "GoVirt Library") (synopsis "GoVirt Library")
(description "GoVirt is a GObject wrapper for the oVirt REST API.") (description "GoVirt is a GObject wrapper for the oVirt REST API.")
(home-page "https://gitlab.gnome.org/GNOME/libgovirt") (home-page "https://gitlab.gnome.org/GNOME/libgovirt")

View File

@ -154,7 +154,7 @@
("unixodbc" ,unixodbc) ("unixodbc" ,unixodbc)
("zeromq" ,zeromq))) ("zeromq" ,zeromq)))
(native-inputs (native-inputs
`(("catch2" ,catch-framework2) `(("catch2" ,catch2)
("clang" ,clang-toolchain-6) ("clang" ,clang-toolchain-6)
("clang-runtime" ,clang-runtime-6) ("clang-runtime" ,clang-runtime-6)
("libcxx+libcxxabi" ,libcxx+libcxxabi-6))) ("libcxx+libcxxabi" ,libcxx+libcxxabi-6)))

View File

@ -8717,7 +8717,7 @@ actual rendering.")
(define-public java-antlr4-runtime (define-public java-antlr4-runtime
(package (package
(name "java-antlr4-runtime") (name "java-antlr4-runtime")
(version "4.8") (version "4.10.1")
(source (origin (source (origin
(method git-fetch) (method git-fetch)
(uri (git-reference (uri (git-reference
@ -8726,10 +8726,9 @@ actual rendering.")
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"1qal3add26qxskm85nk7r758arladn5rcyjinmhlhznmpbbv9j8m")) "0ldvd9jm4nrivaw7i7wh1q40q6xgzmzirsywiakbhg8sppagqlv7"))
(patches (patches
(search-patches "java-antlr4-Add-standalone-generator.patch" (search-patches "java-antlr4-Add-standalone-generator.patch"))))
"java-antlr4-fix-code-too-large.java"))))
(build-system ant-build-system) (build-system ant-build-system)
(arguments (arguments
`(#:jar-name "java-antlr4-runtime.jar" `(#:jar-name "java-antlr4-runtime.jar"
@ -8759,6 +8758,8 @@ sources by ANTLR.")
;; TODO: try to run the tests under ;; TODO: try to run the tests under
;; runtime-testsuite/test/org/antlr/v4/test/runtime/cpp with antlr4. ;; runtime-testsuite/test/org/antlr/v4/test/runtime/cpp with antlr4.
#:tests? #f ;no CMake test target #:tests? #f ;no CMake test target
;; TODO: Building the tests wants to download googletest.
#:configure-flags #~'("-DANTLR_BUILD_CPP_TESTS=OFF")
#:phases #:phases
#~(modify-phases %standard-phases #~(modify-phases %standard-phases
(add-after 'unpack 'chdir (add-after 'unpack 'chdir
@ -8787,10 +8788,12 @@ generated sources by ANTLR.")))
(arguments (arguments
`(#:jar-name "antlr4.jar" `(#:jar-name "antlr4.jar"
#:source-dir "tool/src" #:source-dir "tool/src"
#:test-dir "tool-testsuite/test:runtime-testsuite/test:runtime-testsuite/annotations/src" #:test-dir "tool-testsuite/test:runtime-testsuite/test"
#:test-include (list "**/Test*.java") #:test-include (list "**/Test*.java")
#:test-exclude (list #:test-exclude (list
;; no runnable method ;; These have no runnable methods and fail because
;; test-include above is too broad.
"**/TestContext.java"
"**/TestOutputReading.java" "**/TestOutputReading.java"
;; no @Test methods ;; no @Test methods
"**/TestParserErrors.java" "**/TestParserErrors.java"
@ -8808,9 +8811,7 @@ generated sources by ANTLR.")))
"**/TestFullContextParsing.java" "**/TestFullContextParsing.java"
"**/TestCompositeLexers.java" "**/TestCompositeLexers.java"
;; Null pointer exception ;; Null pointer exception
"**/TestCompositeGrammars.java" "**/TestCompositeGrammars.java")
;; Wrong assumption on emoji
"**/TestUnicodeData.java")
#:phases #:phases
(modify-phases %standard-phases (modify-phases %standard-phases
(add-before 'build 'fix-build.xml (add-before 'build 'fix-build.xml
@ -8824,7 +8825,6 @@ generated sources by ANTLR.")))
(add-after 'bin-install 'check (add-after 'bin-install 'check
(lambda _ (lambda _
(invoke "ant" "compile-tests") (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=runtime-testsuite/test")
(invoke "ant" "check" "-Dtest.home=tool-testsuite/test") (invoke "ant" "check" "-Dtest.home=tool-testsuite/test")
#t)) #t))

View File

@ -311,7 +311,7 @@ through a text-based interface.")
(define-public python-pyzabbix (define-public python-pyzabbix
(package (package
(name "python-pyzabbix") (name "python-pyzabbix")
(version "1.0.0") (version "1.2.1")
(home-page "https://github.com/lukecyca/pyzabbix") (home-page "https://github.com/lukecyca/pyzabbix")
;; No tests on PyPI, use the git checkout. ;; No tests on PyPI, use the git checkout.
(source (source
@ -321,26 +321,20 @@ through a text-based interface.")
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"146pv8bj6pv8max1lkm07560b9zcc268c927kff6rcib47qxfnn2")))) "0ad5xac67brmwc3wd0f87pjplly3cqyrz1dp725lzz2hrjgiaqi8"))))
(build-system python-build-system) (build-system python-build-system)
(arguments (arguments
'(#:phases (modify-phases %standard-phases '(#:phases (modify-phases %standard-phases
(add-after 'unpack 'patch
(lambda _
;; Permit newer versions of httpretty.
(substitute* "setup.py"
(("httpretty<0\\.8\\.7")
"httpretty"))))
(replace 'check (replace 'check
(lambda* (#:key tests? #:allow-other-keys) (lambda* (#:key tests? #:allow-other-keys)
(if tests? (if tests?
(invoke "nosetests") (invoke "pytest" "-vv" "tests")
(format #t "test suite not run~%"))))))) (format #t "test suite not run~%")))))))
(native-inputs (native-inputs
;; For tests. ;; For tests.
(list python-httpretty python-nose)) (list python-requests-mock python-pytest))
(propagated-inputs (propagated-inputs
(list python-requests python-semantic-version)) (list python-packaging python-requests))
(synopsis "Python interface to the Zabbix API") (synopsis "Python interface to the Zabbix API")
(description (description
"@code{pyzabbix} is a Python module for working with the Zabbix API.") "@code{pyzabbix} is a Python module for working with the Zabbix API.")

View File

@ -1378,7 +1378,7 @@ between different versions of ØMQ.")
(native-inputs (native-inputs
(list pkg-config)) (list pkg-config))
(inputs (inputs
(list catch-framework2 zeromq)) (list catch2 zeromq))
(home-page "https://zeromq.org") (home-page "https://zeromq.org")
(synopsis "C++ bindings for the ØMQ messaging library") (synopsis "C++ bindings for the ØMQ messaging library")
(description (description
@ -3603,7 +3603,7 @@ communication over HTTP.")
(build-system cmake-build-system) (build-system cmake-build-system)
(inputs ; TODO: Need to force-keep references on some inputs, e.g. boost. (inputs ; TODO: Need to force-keep references on some inputs, e.g. boost.
(list zlib (list zlib
catch-framework2 catch2
openssl openssl
boost boost
pcre pcre

View File

@ -116,7 +116,6 @@
(inputs (inputs
`(("keyutils" ,keyutils) `(("keyutils" ,keyutils)
("libevent" ,libevent) ("libevent" ,libevent)
("libnfsidmap" ,libnfsidmap)
("rpcsvc-proto" ,rpcsvc-proto) ;for 'rpcgen' ("rpcsvc-proto" ,rpcsvc-proto) ;for 'rpcgen'
("sqlite" ,sqlite) ("sqlite" ,sqlite)
("lvm2" ,lvm2) ("lvm2" ,lvm2)

View File

@ -1,90 +0,0 @@
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

View File

@ -42,6 +42,7 @@
#:use-module (gnu packages base) #:use-module (gnu packages base)
#:use-module (gnu packages bioinformatics) #:use-module (gnu packages bioinformatics)
#:use-module (gnu packages boost) #:use-module (gnu packages boost)
#:use-module (gnu packages build-tools)
#:use-module (gnu packages check) #:use-module (gnu packages check)
#:use-module (gnu packages cpp) #:use-module (gnu packages cpp)
#:use-module (gnu packages databases) #:use-module (gnu packages databases)
@ -75,52 +76,60 @@
(define-public python-scipy (define-public python-scipy
(package (package
(name "python-scipy") (name "python-scipy")
(version "1.8.0") (version "1.9.1")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (pypi-uri "scipy" version)) (uri (pypi-uri "scipy" version))
(sha256 (sha256
(base32 "1gghkwn93niyasm36333xbqrnn3yiadq9d97wnc9mg14nzbg5m1i")))) (base32 "1jcb94xal7w7ax80kaivqqics36v8smi4a3xngyxbrh0i538rli6"))))
(outputs '("out" "doc"))
(build-system python-build-system) (build-system python-build-system)
(arguments (arguments
(list (list
#:modules '((guix build utils)
(guix build python-build-system)
(ice-9 format))
#:phases #:phases
#~(modify-phases %standard-phases #~(modify-phases %standard-phases
(add-after 'unpack 'disable-pythran (add-after 'unpack 'loosen-requirements
(lambda _ (lambda _
(setenv "SCIPY_USE_PYTHRAN" "0"))) (substitute* "pyproject.toml"
(add-before 'build 'change-home-dir (("numpy==") "numpy>=")
(("meson==") "meson>="))))
(replace 'build
(lambda _ (lambda _
;; Change from /homeless-shelter to /tmp for write permission. ;; ZIP does not support timestamps before 1980.
(setenv "HOME" "/tmp"))) (setenv "SOURCE_DATE_EPOCH" "315532800")
(add-before 'build 'configure-openblas (invoke "python" "-m" "build" "--wheel" "--no-isolation" ".")))
(replace 'install
(lambda _ (lambda _
(call-with-output-file "site.cfg" (let ((whl (car (find-files "dist" "\\.whl$"))))
(lambda (port) (invoke "pip" "--no-cache-dir" "--no-input"
(format port "install" "--no-deps" "--prefix" #$output whl))))
"\ (replace 'check
[blas] (lambda* (#:key tests? #:allow-other-keys)
libraries = openblas (when tests?
library_dirs = ~a/lib ;; Step out of the source directory to avoid interference.
include_dirs = ~:*~a/include (with-directory-excursion "/tmp"
(invoke "python" "-c"
[atlas] (string-append
library_dirs = ~:*~a/lib "import scipy; scipy.test('fast', parallel="
atlas_libs = openblas~%" #$(this-package-input "openblas")))))) (number->string (parallel-job-count))
(add-before 'build 'parallelize-build ", verbose=2)"))))))
(lambda _ (add-after 'check 'install-doc
(setenv "NPY_NUM_BUILD_JOBS"
(number->string (parallel-job-count)))))
(add-before 'check 'install-doc
(lambda* (#:key outputs #:allow-other-keys) (lambda* (#:key outputs #:allow-other-keys)
(let* ((data (string-append (assoc-ref outputs "doc") "/share")) ;; FIXME: Documentation cannot be built because it requires
(doc (string-append data "/doc/" #$name "-" #$version)) ;; a newer version of pydata-sphinx-theme, which currently
(html (string-append doc "/html"))) ;; cannot build without internet access:
;; <https://github.com/pydata/pydata-sphinx-theme/issues/628>.
;; Keep the phase for easy testing.
(let ((sphinx-build (false-if-exception
(search-input-file input "bin/sphinx-build"))))
(if sphinx-build
(let* ((doc (assoc-ref outputs "doc"))
(data (string-append doc "/share"))
(docdir (string-append
data "/doc/"
#$(package-name this-package) "-"
#$(package-version this-package)))
(html (string-append docdir "/html")))
(with-directory-excursion "doc" (with-directory-excursion "doc"
;; Build doc. ;; Build doc.
(invoke "make" "html" (invoke "make" "html"
@ -130,26 +139,23 @@ atlas_libs = openblas~%" #$(this-package-input "openblas"))))))
(number->string (parallel-job-count)))) (number->string (parallel-job-count))))
;; Install doc. ;; Install doc.
(mkdir-p html) (mkdir-p html)
(copy-recursively "build/html" html))))) (copy-recursively "build/html" html)))
(replace 'check (format #t "sphinx-build not found, skipping~%"))))))))
(lambda* (#:key tests? #:allow-other-keys) (propagated-inputs
(when tests? (list python-numpy python-matplotlib python-pyparsing python-pythran))
(invoke "./runtests.py" "-vv" "--no-build" "--mode=fast"
"-j" (number->string (parallel-job-count)))))))))
(propagated-inputs (list python-numpy python-matplotlib python-pyparsing))
(inputs (list openblas pybind11)) (inputs (list openblas pybind11))
(native-inputs (native-inputs
(list gfortran (list gfortran
perl ;; XXX: Adding gfortran shadows GCC headers, causing a compilation
;; failure. Somehow also providing GCC works around it ...
gcc
meson-python
pkg-config
python-cython python-cython
python-numpydoc python-pypa-build
python-pydata-sphinx-theme
python-pytest python-pytest
python-pytest-xdist python-pytest-xdist
python-sphinx-4 python-threadpoolctl))
python-sphinx-panels
python-threadpoolctl
which))
(home-page "https://scipy.org/") (home-page "https://scipy.org/")
(synopsis "The Scipy library provides efficient numerical routines") (synopsis "The Scipy library provides efficient numerical routines")
(description "The SciPy library is one of the core packages that make up (description "The SciPy library is one of the core packages that make up

View File

@ -128,6 +128,7 @@
;;; Copyright © 2022 Marek Felšöci <marek@felsoci.sk> ;;; Copyright © 2022 Marek Felšöci <marek@felsoci.sk>
;;; Copyright © 2022 Hilton Chain <hako@ultrarare.space> ;;; Copyright © 2022 Hilton Chain <hako@ultrarare.space>
;;; Copyright © 2022 Tomasz Jeneralczyk <tj@schwi.pl> ;;; Copyright © 2022 Tomasz Jeneralczyk <tj@schwi.pl>
;;; Copyright © 2022 Mathieu Laparie <mlaparie@disr.it>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -10030,6 +10031,24 @@ function signatures.")
"This package provides a YAML template engine with Python expressions.") "This package provides a YAML template engine with Python expressions.")
(license license:expat))) (license license:expat)))
(define-public python-syllables
(package
(name "python-syllables")
(version "1.0.3")
(source (origin
(method url-fetch)
(uri (pypi-uri "syllables" version))
(sha256
(base32
"0wkl6h0rg6fbsxfp0a8fnibf3l4l6lbh6z12cvcilgb6qhxzpmv3"))))
(build-system python-build-system)
(home-page "https://github.com/prosegrinder/python-syllables")
(synopsis "Package for estimating the number of syllables in a word")
(description
"This package provides a Python package for estimating the number of
syllables in a word.")
(license license:gpl3)))
(define-public python-sympy (define-public python-sympy
(package (package
(name "python-sympy") (name "python-sympy")
@ -11559,6 +11578,40 @@ reading and writing MessagePack data.")
and MAC network addresses.") and MAC network addresses.")
(license license:bsd-3))) (license license:bsd-3)))
(define-public python-openstep-plist
(package
(name "python-openstep-plist")
(version "0.3.0")
(home-page "https://github.com/fonttools/openstep-plist")
(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
"1rxjgzh0p069ncsr2986rn32vhdqyq35irbqg2559jh18456mkca"))))
(build-system python-build-system)
(arguments
(list #:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'pretend-version
(lambda _
(setenv "SETUPTOOLS_SCM_PRETEND_VERSION"
#$(package-version this-package))))
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(invoke "pytest" "-vv")))))))
(native-inputs
(list python-cython python-pytest python-setuptools-scm))
(synopsis "OpenStep plist parser and writer")
(description
"This package provides a parser for the \"old style\" OpenStep property
list format (also known as ASCII plist), written in Cython.")
(license license:expat)))
(define-public python-wrapt (define-public python-wrapt
(package (package
(name "python-wrapt") (name "python-wrapt")
@ -22283,7 +22336,7 @@ user-space file systems in Python.")
;; The following dependencies are used for tests. ;; The following dependencies are used for tests.
("python-pytest" ,python-pytest) ("python-pytest" ,python-pytest)
("catch" ,catch-framework2-1) ("catch" ,catch2-1)
("eigen" ,eigen))) ("eigen" ,eigen)))
(arguments (arguments
`(#:configure-flags `(#:configure-flags

View File

@ -741,7 +741,7 @@ an unprivileged user.")
(arguments (arguments
;; These tests do not require any device to be connected ;; These tests do not require any device to be connected
'(#:configure-flags (list "-DCOMPILE_OFFLINE_TESTS=ON"))) '(#:configure-flags (list "-DCOMPILE_OFFLINE_TESTS=ON")))
(native-inputs (list catch-framework2 doxygen graphviz pkg-config)) (native-inputs (list catch2 doxygen graphviz pkg-config))
(inputs (list hidapi libusb)) (inputs (list hidapi libusb))
(home-page "https://github.com/Nitrokey/libnitrokey") (home-page "https://github.com/Nitrokey/libnitrokey")
(synopsis "Communication library for Nitrokey") (synopsis "Communication library for Nitrokey")
@ -765,7 +765,7 @@ an unprivileged user.")
(arguments (arguments
'(#:configure-flags (list "-DBUILD_TESTING=on"))) '(#:configure-flags (list "-DBUILD_TESTING=on")))
(native-inputs (list pkg-config qttools-5)) (native-inputs (list pkg-config qttools-5))
(inputs (list catch-framework2)) (inputs (list catch2))
(home-page "https://github.com/tplgy/cppcodec") (home-page "https://github.com/tplgy/cppcodec")
(synopsis "Header library to encode/decode base64, base64url, etc.") (synopsis "Header library to encode/decode base64, base64url, etc.")
(description "This package provides library to encode/decode base64, (description "This package provides library to encode/decode base64,

View File

@ -465,7 +465,7 @@ FFC is part of the FEniCS Project.")
("sundials" ,sundials-openmpi) ("sundials" ,sundials-openmpi)
("zlib" ,zlib))) ("zlib" ,zlib)))
(native-inputs (native-inputs
`(("catch" ,catch-framework2-1) `(("catch" ,catch2-1)
("pkg-config" ,pkg-config))) ("pkg-config" ,pkg-config)))
(propagated-inputs (propagated-inputs
`(("ffc" ,python-fenics-ffc) `(("ffc" ,python-fenics-ffc)

View File

@ -3,6 +3,7 @@
;;; Copyright © 20182021 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 20182021 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2019 Rutger Helling <rhelling@mykolab.com> ;;; Copyright © 2019 Rutger Helling <rhelling@mykolab.com>
;;; Copyright © 2019, 2020, 2022 Marius Bakke <marius@gnu.org> ;;; Copyright © 2019, 2020, 2022 Marius Bakke <marius@gnu.org>
;;; Copyright © 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -23,22 +24,26 @@
#:use-module (gnu packages) #:use-module (gnu packages)
#:use-module (gnu packages autotools) #:use-module (gnu packages autotools)
#:use-module (gnu packages base) #:use-module (gnu packages base)
#:use-module (gnu packages bash)
#:use-module (gnu packages compression) #:use-module (gnu packages compression)
#:use-module (gnu packages cyrus-sasl) #:use-module (gnu packages cyrus-sasl)
#:use-module (gnu packages gl) #:use-module (gnu packages gl)
#:use-module (gnu packages glib) #:use-module (gnu packages glib)
#:use-module (gnu packages gnome) #:use-module (gnu packages gnome)
#:use-module (gnu packages gettext)
#:use-module (gnu packages gstreamer) #:use-module (gnu packages gstreamer)
#:use-module (gnu packages gtk) #:use-module (gnu packages gtk)
#:use-module (gnu packages image) #:use-module (gnu packages image)
#:use-module (gnu packages libusb) #:use-module (gnu packages libusb)
#:use-module (gnu packages linux) #:use-module (gnu packages linux)
#:use-module (gnu packages nss) #:use-module (gnu packages nss)
#:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config) #:use-module (gnu packages pkg-config)
#:use-module (gnu packages pulseaudio) #:use-module (gnu packages pulseaudio)
#:use-module (gnu packages python) #:use-module (gnu packages python)
#:use-module (gnu packages security-token) #:use-module (gnu packages security-token)
#:use-module (gnu packages tls) #:use-module (gnu packages tls)
#:use-module (gnu packages virtualization)
#:use-module (gnu packages xorg) #:use-module (gnu packages xorg)
#:use-module (gnu packages xdisorg) #:use-module (gnu packages xdisorg)
#:use-module (gnu packages xiph) #:use-module (gnu packages xiph)
@ -369,35 +374,32 @@ share smart cards from client system to local or remote virtual machines.")
(define-public virt-viewer (define-public virt-viewer
(package (package
(name "virt-viewer") (name "virt-viewer")
(version "7.0") (version "11.0")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append (uri (string-append
"https://virt-manager.org/download/sources/virt-viewer/" "https://virt-manager.org/download/sources/virt-viewer/"
"virt-viewer-" version ".tar.gz")) "virt-viewer-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"00y9vi69sja4pkrfnvrkwsscm41bqrjzvp8aijb20pvg6ymczhj7")))) "1l5bv6x6j21l487mk3n93ai121gg62n6b069r2jpf72cbhra4gx4"))))
(build-system gnu-build-system) (build-system meson-build-system)
(inputs
(list gtk+ gtk-vnc libcap libxml2 spice-gtk))
(native-inputs (native-inputs
`(("glib:bin" ,glib "bin") (list `(,glib "bin")
("intltool" ,intltool) gettext-minimal
("pkg-config" ,pkg-config))) perl ;for pod2man
(arguments pkg-config
`(#:configure-flags python))
'("--with-spice-gtk") (inputs
#:phases (list bash-completion
(modify-phases %standard-phases gtk+
(add-after gtk-vnc
'install 'wrap-remote-viewer libcap
(lambda* (#:key inputs outputs #:allow-other-keys) libgovirt
(let ((out (assoc-ref outputs "out")) libvirt-glib
(gst-plugin-path (getenv "GST_PLUGIN_SYSTEM_PATH"))) libxml2
(wrap-program (string-append out "/bin/remote-viewer") spice-gtk
`("GST_PLUGIN_SYSTEM_PATH" ":" prefix (,gst-plugin-path)))) vte))
#t)))))
(synopsis "Graphical console client for virtual machines") (synopsis "Graphical console client for virtual machines")
(description "Graphical console client for virtual machines using SPICE or (description "Graphical console client for virtual machines using SPICE or
VNC.") VNC.")

View File

@ -387,7 +387,7 @@ Telegram project, for its use in telegram desktop client.")
(inputs (inputs
`(("alsa" ,alsa-lib) `(("alsa" ,alsa-lib)
("c++-gsl" ,c++-gsl) ("c++-gsl" ,c++-gsl)
("catch" ,catch-framework2) ("catch" ,catch2)
("codegen-source" ("codegen-source"
,(origin ,(origin
(method git-fetch) (method git-fetch)

View File

@ -784,9 +784,15 @@ old-fashioned output methods with powerful ascii-art renderer.")
"/celluloid-" version ".tar.xz")) "/celluloid-" version ".tar.xz"))
(sha256 (sha256
(base32 "0ns9xh582c8kajw4v2x5ap5jfiba3gxywqc2klc0v6fc3id1gqii")))) (base32 "0ns9xh582c8kajw4v2x5ap5jfiba3gxywqc2klc0v6fc3id1gqii"))))
(build-system glib-or-gtk-build-system) (build-system meson-build-system)
(native-inputs (native-inputs
(list intltool pkg-config)) (list
desktop-file-utils ; for update-desktop-database
intltool
`(,glib "bin") ; for glib-compile-resources
`(,gtk "bin") ; for gtk-update-icon-cache
pkg-config
python-wrapper)) ; for generate-authors.py
(inputs (inputs
(list gtk libadwaita libepoxy mpv)) (list gtk libadwaita libepoxy mpv))
(home-page "https://github.com/celluloid-player/celluloid") (home-page "https://github.com/celluloid-player/celluloid")

View File

@ -1517,7 +1517,7 @@ virtualization library.")
(list dconf (list dconf
gtk+ gtk+
gtk-vnc gtk-vnc
gtksourceview gtksourceview-4
libvirt libvirt
libvirt-glib libvirt-glib
libosinfo libosinfo

View File

@ -5717,14 +5717,14 @@ on the fly.")
(define-public hitch (define-public hitch
(package (package
(name "hitch") (name "hitch")
(version "1.7.2") (version "1.7.3")
(home-page "https://hitch-tls.org/") (home-page "https://hitch-tls.org/")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append home-page "source/hitch-" version ".tar.gz")) (uri (string-append home-page "source/hitch-" version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"118p3a8wjvr0yhldpd1zm7d2cmgaw4vmyz9ib8m64z18qsz5rmnw")))) "11wp50zs5irb5bj5xyanm060nlvna6ha328wqf6p2nvpbnaz86qs"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:phases (modify-phases %standard-phases `(#:phases (modify-phases %standard-phases

View File

@ -2893,7 +2893,7 @@ create layout indicator widgets.")
"1gxpgifzy0hnpd0ymw3r32amzr32z3bgb90ldjzl438p6h1q0i26")))) "1gxpgifzy0hnpd0ymw3r32amzr32z3bgb90ldjzl438p6h1q0i26"))))
(build-system cmake-build-system) (build-system cmake-build-system)
(native-inputs (native-inputs
(list catch-framework2)) (list catch2))
(arguments (arguments
`(#:configure-flags '("-DWITH_GIT_CATCH=off") `(#:configure-flags '("-DWITH_GIT_CATCH=off")
#:phases #:phases

View File

@ -1034,7 +1034,7 @@ include the @command{udisksctl} command, part of UDisks, and GNOME Disks."
'(ignore poweroff reboot halt kexec suspend hibernate hybrid-sleep lock)) '(ignore poweroff reboot halt kexec suspend hibernate hybrid-sleep lock))
(define (handle-action x) (define (handle-action x)
(if (unspecified? x) (if (unspecified? x)
"" ;empty serializer x ;let the unspecified value go through
(enum x handle-actions))) (enum x handle-actions)))
(define (sleep-list tokens) (define (sleep-list tokens)
(unless (valid-list? tokens char-set:user-name) (unless (valid-list? tokens char-set:user-name)
@ -1042,10 +1042,18 @@ include the @command{udisksctl} command, part of UDisks, and GNOME Disks."
(string-join tokens " ")) (string-join tokens " "))
(define-syntax ini-file-clause (define-syntax ini-file-clause
(syntax-rules () (syntax-rules ()
;; Produce an empty line when encountering an unspecified value. This
;; is better than an empty string value, which can, in some cases, cause
;; warnings such as "Failed to parse handle action setting".
((_ config (prop (parser getter))) ((_ config (prop (parser getter)))
(string-append prop "=" (parser (getter config)) "\n")) (let ((value (parser (getter config))))
(if (unspecified? value)
""
(string-append prop "=" value "\n"))))
((_ config str) ((_ config str)
(string-append str "\n")))) (if (unspecified? str)
""
(string-append str "\n")))))
(define-syntax-rule (ini-file config file clause ...) (define-syntax-rule (ini-file config file clause ...)
(plain-file file (string-append (ini-file-clause config clause) ...))) (plain-file file (string-append (ini-file-clause config clause) ...)))
(ini-file (ini-file

View File

@ -476,7 +476,7 @@ Access documentation at any time by pressing Alt-F2.\x1b[0m
;; non-functional: ;; non-functional:
;; <https://lists.gnu.org/archive/html/guix-devel/2019-03/msg00441.html>. ;; <https://lists.gnu.org/archive/html/guix-devel/2019-03/msg00441.html>.
;; Thus, blacklist it. ;; Thus, blacklist it.
(kernel-arguments '("quiet" "modprobe.blacklist=radeon")) (kernel-arguments '("quiet" "modprobe.blacklist=radeon,amdgpu"))
(file-systems (file-systems
;; Note: the disk image build code overrides this root file system with ;; Note: the disk image build code overrides this root file system with