Merge branch 'master' into staging
This commit is contained in:
		
						commit
						fa894b3f4d
					
				
					 34 changed files with 882 additions and 368 deletions
				
			
		| 
						 | 
				
			
			@ -36437,7 +36437,7 @@ This is the data type representing the configuration of rshiny.
 | 
			
		|||
@item @code{package} (default: @code{r-shiny})
 | 
			
		||||
The package to use.
 | 
			
		||||
 | 
			
		||||
@item @code{binary} (defaunlt @code{"rshiny"})
 | 
			
		||||
@item @code{binary} (default @code{"rshiny"})
 | 
			
		||||
The name of the binary or shell script located at @code{package/bin/} to
 | 
			
		||||
run when the service is run.
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -98,6 +98,18 @@ standard input is /dev/null."
 | 
			
		|||
             system*/console)
 | 
			
		||||
         program args))
 | 
			
		||||
 | 
			
		||||
(define (call-with-input-file file proc)
 | 
			
		||||
  "Like 'call-with-input-file', but pass O_CLOEXEC."
 | 
			
		||||
  (let ((port #f))
 | 
			
		||||
    (dynamic-wind
 | 
			
		||||
      (lambda ()
 | 
			
		||||
        (set! port (open file (logior O_RDONLY O_CLOEXEC))))
 | 
			
		||||
      (lambda ()
 | 
			
		||||
        (proc port))
 | 
			
		||||
      (lambda ()
 | 
			
		||||
        (close-port port)
 | 
			
		||||
        (set! port #f)))))
 | 
			
		||||
 | 
			
		||||
(define (bind-mount source target)
 | 
			
		||||
  "Bind-mount SOURCE at TARGET."
 | 
			
		||||
  (mount source target "" MS_BIND))
 | 
			
		||||
| 
						 | 
				
			
			@ -1183,7 +1195,8 @@ corresponds to the symbols listed in FLAGS."
 | 
			
		|||
                 (not (file-is-directory? source)))
 | 
			
		||||
            (unless (file-exists? target)
 | 
			
		||||
              (mkdir-p (dirname target))
 | 
			
		||||
              (call-with-output-file target (const #t)))
 | 
			
		||||
              (close-fdes
 | 
			
		||||
               (open-fdes target (logior O_WRONLY O_CREAT O_CLOEXEC))))
 | 
			
		||||
            (mkdir-p target))
 | 
			
		||||
 | 
			
		||||
        (cond
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1681,6 +1681,7 @@ dist_patch_DATA =						\
 | 
			
		|||
  %D%/packages/patches/python-3-fix-tests.patch			\
 | 
			
		||||
  %D%/packages/patches/python-3-hurd-configure.patch		\
 | 
			
		||||
  %D%/packages/patches/python-3-no-static-lib.patch		\
 | 
			
		||||
  %D%/packages/patches/python-apsw-3.39.2.1-test-fix.patch	\
 | 
			
		||||
  %D%/packages/patches/python-aionotify-0.2.0-py3.8.patch	\
 | 
			
		||||
  %D%/packages/patches/python-argcomplete-1.11.1-fish31.patch	\
 | 
			
		||||
  %D%/packages/patches/python-cross-compile.patch		\
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -74,7 +74,8 @@
 | 
			
		|||
  #:use-module (guix hg-download)
 | 
			
		||||
  #:use-module ((guix licenses) #:prefix license:)
 | 
			
		||||
  #:use-module (guix packages)
 | 
			
		||||
  #:use-module (guix utils))
 | 
			
		||||
  #:use-module (guix utils)
 | 
			
		||||
  #:use-module (ice-9 match))
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
(define-public mpfrcx
 | 
			
		||||
| 
						 | 
				
			
			@ -1009,10 +1010,39 @@ extends it by a set of algebraic capabilities.")
 | 
			
		|||
                  #t))))
 | 
			
		||||
    (build-system cmake-build-system)
 | 
			
		||||
    (arguments
 | 
			
		||||
     '(;; Turn off debugging symbols to save space.
 | 
			
		||||
     `(;; Turn off debugging symbols to save space.
 | 
			
		||||
       #:build-type "Release"
 | 
			
		||||
 | 
			
		||||
       #:modules ((ice-9 match)
 | 
			
		||||
                  (guix build utils)
 | 
			
		||||
                  (guix build cmake-build-system))
 | 
			
		||||
 | 
			
		||||
       #:phases (modify-phases %standard-phases
 | 
			
		||||
                  (add-after 'unpack 'disable-some-tests
 | 
			
		||||
                    ;; Not all platforms are well supported by the test suite.
 | 
			
		||||
                    (lambda _
 | 
			
		||||
                      ,@(match (%current-system)
 | 
			
		||||
                          ("i686-linux"
 | 
			
		||||
                           `((substitute* "test/CMakeLists.txt"
 | 
			
		||||
                               ((".*packetmath.*") ""))))
 | 
			
		||||
                          ("aarch64-linux"
 | 
			
		||||
                           `((substitute* "test/CMakeLists.txt"
 | 
			
		||||
                               ((".*array_cwise.*") "")
 | 
			
		||||
                               ((".*vectorization_logic.*") ""))))
 | 
			
		||||
                          ("armhf-linux"
 | 
			
		||||
                           `((substitute* "test/CMakeLists.txt"
 | 
			
		||||
                               ((".*geo_quaternion.*") "")
 | 
			
		||||
                               ((".*jacobisvd.*") "")
 | 
			
		||||
                               ((".*packetmath.*") "")
 | 
			
		||||
                               ((".*prec_inverse.*") "")
 | 
			
		||||
                               ((".*qr_colpivoting.*") "")
 | 
			
		||||
                               ((".*vectorization_logic.*") ""))))
 | 
			
		||||
                          ("riscv64-linux"
 | 
			
		||||
                           `((substitute* "test/CMakeLists.txt"
 | 
			
		||||
                               ((".*array_cwise.*") "")
 | 
			
		||||
                               ((".*geo_quaternion.*") ""))))
 | 
			
		||||
                          (_
 | 
			
		||||
                            '((display "No tests to disable on this architecture.\n"))))))
 | 
			
		||||
                  (replace 'check
 | 
			
		||||
                    (lambda* (#:key tests? #:allow-other-keys)
 | 
			
		||||
                      (let* ((cores  (parallel-job-count))
 | 
			
		||||
| 
						 | 
				
			
			@ -1101,6 +1131,11 @@ features, and more.")
 | 
			
		|||
                    (substitute* "unsupported/CMakeLists.txt"
 | 
			
		||||
                      (("add_subdirectory\\(test.*")
 | 
			
		||||
                       "# Do not build the tests for unsupported features.\n"))))))
 | 
			
		||||
      (arguments
 | 
			
		||||
       (substitute-keyword-arguments (package-arguments eigen)
 | 
			
		||||
         ((#:phases phases)
 | 
			
		||||
          `(modify-phases ,phases
 | 
			
		||||
             (delete 'disable-some-tests)))))
 | 
			
		||||
      (native-inputs
 | 
			
		||||
       (list gcc-7)))))
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -1129,7 +1164,12 @@ features, and more.")
 | 
			
		|||
                 '(begin
 | 
			
		||||
                    (substitute* "unsupported/CMakeLists.txt"
 | 
			
		||||
                      (("add_subdirectory\\(test.*")
 | 
			
		||||
                       "# Do not build the tests for unsupported features.\n")))))))))
 | 
			
		||||
                       "# Do not build the tests for unsupported features.\n"))))))
 | 
			
		||||
      (arguments
 | 
			
		||||
       (substitute-keyword-arguments (package-arguments eigen)
 | 
			
		||||
         ((#:phases phases)
 | 
			
		||||
          `(modify-phases ,phases
 | 
			
		||||
             (delete 'disable-some-tests))))))))
 | 
			
		||||
 | 
			
		||||
(define-public xtensor
 | 
			
		||||
  (package
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -51,7 +51,7 @@ supported content to the Kodi media center.")
 | 
			
		|||
(define ublock-origin
 | 
			
		||||
  (package
 | 
			
		||||
    (name "ublock-origin")
 | 
			
		||||
    (version "1.44.0")
 | 
			
		||||
    (version "1.44.2")
 | 
			
		||||
    (home-page "https://github.com/gorhill/uBlock")
 | 
			
		||||
    (source (origin
 | 
			
		||||
              (method git-fetch)
 | 
			
		||||
| 
						 | 
				
			
			@ -62,7 +62,7 @@ supported content to the Kodi media center.")
 | 
			
		|||
              (file-name (git-file-name name version))
 | 
			
		||||
              (sha256
 | 
			
		||||
               (base32
 | 
			
		||||
                "0sws7xd8nvxnzcyw92i9sc5xv3hpqw1kzdj9vm8bhfxlh042l7ly"))))
 | 
			
		||||
                "0hci19wv5sj4vph8k24bmcz7q74y1adyykwijqyga4p7h68jklw1"))))
 | 
			
		||||
    (build-system gnu-build-system)
 | 
			
		||||
    (outputs '("xpi" "firefox" "chromium"))
 | 
			
		||||
    (arguments
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1083,6 +1083,28 @@ Telemetry Transport (MQTT) publish-subscribe messaging protocol.")
 | 
			
		|||
    (home-page "https://github.com/awslabs/aws-c-mqtt")
 | 
			
		||||
    (license license:asl2.0)))
 | 
			
		||||
 | 
			
		||||
;; Note: there is another mimalloc embedded in rust-mimalloc (version 1.6.4).
 | 
			
		||||
(define-public mimalloc
 | 
			
		||||
  (package
 | 
			
		||||
    (name "mimalloc")
 | 
			
		||||
    (version "2.0.6")
 | 
			
		||||
    (source (origin
 | 
			
		||||
              (method git-fetch)
 | 
			
		||||
              (uri (git-reference
 | 
			
		||||
                    (url "https://github.com/microsoft/mimalloc")
 | 
			
		||||
                    (commit (string-append "v" version))))
 | 
			
		||||
              (file-name (git-file-name name version))
 | 
			
		||||
              (sha256
 | 
			
		||||
               (base32
 | 
			
		||||
                "05x2dl3zimflfj91ns3vrphmzpdlyyr230p9adqgfds101f16qmv"))))
 | 
			
		||||
    (build-system cmake-build-system)
 | 
			
		||||
    (arguments
 | 
			
		||||
     `(#:build-type "Release"))
 | 
			
		||||
    (synopsis "General purpose memory allocator")
 | 
			
		||||
    (description "@code{mimalloc} is a drop-in replacement for @code{malloc}.")
 | 
			
		||||
    (home-page "https://microsoft.github.io/mimalloc/")
 | 
			
		||||
    (license license:expat)))
 | 
			
		||||
 | 
			
		||||
;;; Factored out of the ck package so that it can be adjusted and called on
 | 
			
		||||
;;; the host side easily, without impacting the package definition.
 | 
			
		||||
(define (gnu-triplet->ck-machine target)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,7 @@
 | 
			
		|||
;;; GNU Guix --- Functional package management for GNU
 | 
			
		||||
;;; Copyright © 2021 Timmy Douglas <mail@timmydouglas.com>
 | 
			
		||||
;;; Copyright © 2022 Tobias Geerinckx-Rice <me@tobias.gr>
 | 
			
		||||
;;; Copyright © 2022 Zhu Zihao <all_but_last@163.com>
 | 
			
		||||
;;;
 | 
			
		||||
;;; This file is part of GNU Guix.
 | 
			
		||||
;;;
 | 
			
		||||
| 
						 | 
				
			
			@ -271,7 +272,7 @@ configure network interfaces in Linux containers.")
 | 
			
		|||
(define-public podman
 | 
			
		||||
  (package
 | 
			
		||||
    (name "podman")
 | 
			
		||||
    (version "3.4.4")
 | 
			
		||||
    (version "4.2.0")
 | 
			
		||||
    (source
 | 
			
		||||
     (origin
 | 
			
		||||
       (method git-fetch)
 | 
			
		||||
| 
						 | 
				
			
			@ -279,16 +280,19 @@ configure network interfaces in Linux containers.")
 | 
			
		|||
             (url "https://github.com/containers/podman")
 | 
			
		||||
             (commit (string-append "v" version))))
 | 
			
		||||
       (sha256
 | 
			
		||||
        (base32 "1q09qsl1wwiiy5njvb97n1j5f5jin4ckmzj5xbdfs28czb2kx3g5"))
 | 
			
		||||
        (base32 "00wyjppd11hznmals9ax4s2qjklj6p1vfz4jjkp50bk8q4blxfbj"))
 | 
			
		||||
       (file-name (git-file-name name version))))
 | 
			
		||||
 | 
			
		||||
    (build-system gnu-build-system)
 | 
			
		||||
    (arguments
 | 
			
		||||
     `(#:make-flags (list ,(string-append "CC=" (cc-for-target))
 | 
			
		||||
                          (string-append "PREFIX=" %output))
 | 
			
		||||
     (list
 | 
			
		||||
      #:make-flags
 | 
			
		||||
      #~(list #$(string-append "CC=" (cc-for-target))
 | 
			
		||||
              (string-append "PREFIX=" #$output))
 | 
			
		||||
      #:tests? #f                  ; /sys/fs/cgroup not set up in guix sandbox
 | 
			
		||||
      #:test-target "test"
 | 
			
		||||
       #:phases (modify-phases %standard-phases
 | 
			
		||||
      #:phases
 | 
			
		||||
      #~(modify-phases %standard-phases
 | 
			
		||||
          (delete 'configure)
 | 
			
		||||
          (add-after 'unpack 'set-env
 | 
			
		||||
            (lambda* (#:key inputs #:allow-other-keys)
 | 
			
		||||
| 
						 | 
				
			
			@ -312,11 +316,11 @@ configure network interfaces in Linux containers.")
 | 
			
		|||
                 (string-append "CATATONIT_PATH=" (which "true"))))
 | 
			
		||||
              (substitute* "vendor/github.com/containers/common/pkg/config/config_linux.go"
 | 
			
		||||
                (("/usr/local/libexec/podman")
 | 
			
		||||
                         (string-append (assoc-ref %outputs "out") "/bin")))
 | 
			
		||||
                 (string-append #$output "/bin")))
 | 
			
		||||
              (substitute* "vendor/github.com/containers/common/pkg/config/default.go"
 | 
			
		||||
                (("/usr/libexec/podman/conmon") (which "conmon"))
 | 
			
		||||
                (("/usr/local/libexec/cni")
 | 
			
		||||
                         (string-append (assoc-ref %build-inputs "cni-plugins")
 | 
			
		||||
                 (string-append #$(this-package-input "cni-plugins")
 | 
			
		||||
                                "/bin"))
 | 
			
		||||
                (("/usr/bin/crun") (which "crun"))))))))
 | 
			
		||||
    (inputs
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1023,7 +1023,7 @@ Google's C++ code base.")
 | 
			
		|||
  (let ((base abseil-cpp-20200923.3))
 | 
			
		||||
    (package/inherit base
 | 
			
		||||
      (name "abseil-cpp")
 | 
			
		||||
      (version "20220623.0")
 | 
			
		||||
      (version "20220623.1")
 | 
			
		||||
      (source (origin
 | 
			
		||||
                (method git-fetch)
 | 
			
		||||
                (uri (git-reference
 | 
			
		||||
| 
						 | 
				
			
			@ -1032,7 +1032,7 @@ Google's C++ code base.")
 | 
			
		|||
                (file-name (git-file-name name version))
 | 
			
		||||
                (sha256
 | 
			
		||||
                 (base32
 | 
			
		||||
                  "1kyvlpdkkh8spqrdh9yvq2d4ri46hwxljicy3i9mp7mk2rqcnyvj"))))
 | 
			
		||||
                  "0vxh2a74g4s45yr8kdjqnzl64k10qdlc0hbnn987a4cnwdj4bp9r"))))
 | 
			
		||||
      (arguments
 | 
			
		||||
       (substitute-keyword-arguments (package-arguments base)
 | 
			
		||||
         ((#:configure-flags flags)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -3540,18 +3540,22 @@ PickleShare.")
 | 
			
		|||
(define-public python-apsw
 | 
			
		||||
  (package
 | 
			
		||||
    (name "python-apsw")
 | 
			
		||||
    (version "3.39.2.0")
 | 
			
		||||
    (version "3.39.2.1")
 | 
			
		||||
    ;; The compressed release has fetching functionality disabled.
 | 
			
		||||
    (source
 | 
			
		||||
     (origin
 | 
			
		||||
       (method git-fetch)
 | 
			
		||||
       (uri (git-reference
 | 
			
		||||
             (url "https://github.com/rogerbinns/apsw")
 | 
			
		||||
             (commit version)))
 | 
			
		||||
       (file-name (git-file-name name version))
 | 
			
		||||
       (method url-fetch)
 | 
			
		||||
       (uri (string-append
 | 
			
		||||
             "https://github.com/rogerbinns/apsw/releases/download/"
 | 
			
		||||
             version "/apsw-" version ".zip"))
 | 
			
		||||
       (sha256
 | 
			
		||||
        (base32
 | 
			
		||||
         "0q7fnk8n3m5mpjzh6xyhj409k8sacdbjsfis98my9c50fdn5sr7y"))))
 | 
			
		||||
         "06x3qgg71xz8l3kz8gz04wkfp5f6zfrg476a4mm1c5hikqyw6ykj"))
 | 
			
		||||
       ;; Cherry-picked from upstream, remove when bumping to 3.39.3.
 | 
			
		||||
       (patches
 | 
			
		||||
        (search-patches "python-apsw-3.39.2.1-test-fix.patch"))))
 | 
			
		||||
    (build-system python-build-system)
 | 
			
		||||
    (native-inputs (list unzip))
 | 
			
		||||
    (inputs (list sqlite-next))         ;SQLite 3.39 required.
 | 
			
		||||
    (arguments
 | 
			
		||||
     (list #:phases
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -78,6 +78,7 @@
 | 
			
		|||
  #:use-module (gnu packages bdw-gc)
 | 
			
		||||
  #:use-module (gnu packages bison)
 | 
			
		||||
  #:use-module (gnu packages boost)
 | 
			
		||||
  #:use-module (gnu packages c)
 | 
			
		||||
  #:use-module (gnu packages check)
 | 
			
		||||
  #:use-module (gnu packages cmake)
 | 
			
		||||
  #:use-module (gnu packages commencement)
 | 
			
		||||
| 
						 | 
				
			
			@ -2895,6 +2896,97 @@ for the milling of PCBs.  It also includes an autoleveller for the automatic
 | 
			
		|||
dynamic calibration of the milling depth.")
 | 
			
		||||
     (license license:gpl3+))))
 | 
			
		||||
 | 
			
		||||
;; libdxfrw has no readme, no version release, no tags.  Initial commit says
 | 
			
		||||
;; "libdxfrw-0.6.3 import", but it shares no git history with "upstream"
 | 
			
		||||
;; https://github.com/codelibs/libdxfrw.  Both are difficult to package
 | 
			
		||||
;; separately as they don't install properly.  Copying in-tree instead of
 | 
			
		||||
;; #:recursive #t to avoid downloading the other bigger dependencies which
 | 
			
		||||
;; aren't needed.
 | 
			
		||||
(define libdxfrw-sources
 | 
			
		||||
  (origin
 | 
			
		||||
    (method git-fetch)
 | 
			
		||||
    (uri (git-reference (url
 | 
			
		||||
                         "https://github.com/solvespace/libdxfrw")
 | 
			
		||||
                        (commit
 | 
			
		||||
                         "0b7b7b709d9299565db603f878214656ef5e9ddf")))
 | 
			
		||||
    (sha256 (base32
 | 
			
		||||
             "0d2wjq81466m3hb5cffiy99vhx0irwwy47yfxp318k2q4cvd5z2a"))))
 | 
			
		||||
 | 
			
		||||
(define-public solvespace
 | 
			
		||||
  (let ((commit "70bde63cb32a7f049fa56cbdf924e2695fcb2916")
 | 
			
		||||
        (version "3.1"))
 | 
			
		||||
    (package
 | 
			
		||||
      (name "solvespace")
 | 
			
		||||
      (version version)
 | 
			
		||||
      (source (origin
 | 
			
		||||
                (method git-fetch)
 | 
			
		||||
                (uri (git-reference
 | 
			
		||||
                      (url "https://github.com/solvespace/solvespace")
 | 
			
		||||
                      (commit commit)))
 | 
			
		||||
                (file-name (git-file-name name version))
 | 
			
		||||
                (sha256
 | 
			
		||||
                 (base32
 | 
			
		||||
                  "1hbdln44k00a6vlklv2mq2c9zda3i9d5x0f7ks85w4v6zskhqnra"))))
 | 
			
		||||
      (build-system cmake-build-system)
 | 
			
		||||
      (native-inputs (list pkg-config gettext-minimal))
 | 
			
		||||
      (arguments
 | 
			
		||||
       (list
 | 
			
		||||
        #:build-type "Release"
 | 
			
		||||
        #:phases #~(modify-phases %standard-phases
 | 
			
		||||
                     (add-after 'unpack 'unpack-libdxfrw
 | 
			
		||||
                       (lambda _
 | 
			
		||||
                         (copy-recursively #$libdxfrw-sources
 | 
			
		||||
                                           "extlib/libdxfrw")))
 | 
			
		||||
                     (add-before 'configure 'embed-git-commit-hash
 | 
			
		||||
                       (lambda _
 | 
			
		||||
                         ;; `git describe` doesn't work here, so embed
 | 
			
		||||
                         ;; the commit hash directly in CMakeLists.txt as
 | 
			
		||||
                         ;; described instead.
 | 
			
		||||
                         (substitute* "CMakeLists.txt"
 | 
			
		||||
                           (("include\\(GetGitCommitHash\\)")
 | 
			
		||||
                            (string-append "set(GIT_COMMIT_HASH "
 | 
			
		||||
                                           #$commit ")")))))
 | 
			
		||||
                     (add-before 'configure 'use-packaged-mimalloc
 | 
			
		||||
                       (lambda _
 | 
			
		||||
                         (substitute* "CMakeLists.txt"
 | 
			
		||||
                           (("message\\(STATUS \"Using in-tree mimalloc\"\\)")
 | 
			
		||||
                            "message(STATUS \"Using guix packaged mimalloc\")")
 | 
			
		||||
                           (("add_subdirectory\\(extlib/mimalloc EXCLUDE_FROM_ALL\\)")
 | 
			
		||||
                            "find_package(mimalloc REQUIRED)")))))))
 | 
			
		||||
      (inputs (list cairo
 | 
			
		||||
                    eigen
 | 
			
		||||
                    freetype
 | 
			
		||||
                    gtkmm-3
 | 
			
		||||
                    json-c
 | 
			
		||||
                    libpng
 | 
			
		||||
                    libspnav            ;spaceware
 | 
			
		||||
                    mimalloc
 | 
			
		||||
                    mesa
 | 
			
		||||
                    zlib))
 | 
			
		||||
      (synopsis
 | 
			
		||||
       "Parametric 2D/3D @acronym{CAD, computer-aided design} software")
 | 
			
		||||
      (description
 | 
			
		||||
       "SOLVESPACE is a parametric 3D @acronym{CAD,
 | 
			
		||||
computer-aided design} tool.  Applications include:
 | 
			
		||||
 | 
			
		||||
@itemize
 | 
			
		||||
@item modeling 3D parts — draw with extrudes, revolves, helixes and
 | 
			
		||||
      Boolean (union / difference / intersection) operations
 | 
			
		||||
@item modeling 2D parts — draw the part as a single section,
 | 
			
		||||
      and export DXF, PDF, SVG; use 3D assembly to verify fit
 | 
			
		||||
@item 3D-printed parts — export the STL or other triangle mesh
 | 
			
		||||
      expected by most 3D printers
 | 
			
		||||
@item preparing CAM data — export 2D vector art for a waterjet
 | 
			
		||||
      machine or laser cutter; or generate STEP or STL, for import into
 | 
			
		||||
      third-party CAM software for machining
 | 
			
		||||
@item mechanism design — use the constraint solver to simulate planar
 | 
			
		||||
      or spatial linkages, with pin, ball, or slide joints
 | 
			
		||||
@item plane and solid geometry — replace hand-solved trigonometry and spreadsheets
 | 
			
		||||
      with a live dimensioned drawing
 | 
			
		||||
@end itemize")
 | 
			
		||||
      (home-page "https://solvespace.com/")
 | 
			
		||||
      (license license:gpl3+))))
 | 
			
		||||
 | 
			
		||||
(define-public syscall-intercept
 | 
			
		||||
  ;; Upstream provides no tag. Also, last version update is 4 years old.
 | 
			
		||||
  (let ((commit "304404581c57d43478438d175099d20260bae74e")
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -2735,7 +2735,7 @@ and readability.  This package bundles those icons into a font.")
 | 
			
		|||
(define-public font-lxgw-wenkai
 | 
			
		||||
  (package
 | 
			
		||||
    (name "font-lxgw-wenkai")
 | 
			
		||||
    (version "1.235.2")
 | 
			
		||||
    (version "1.240")
 | 
			
		||||
    (source (origin
 | 
			
		||||
              (method url-fetch)
 | 
			
		||||
              (uri (string-append
 | 
			
		||||
| 
						 | 
				
			
			@ -2743,7 +2743,7 @@ and readability.  This package bundles those icons into a font.")
 | 
			
		|||
                    version "/lxgw-wenkai-v" version ".tar.gz"))
 | 
			
		||||
              (sha256
 | 
			
		||||
               (base32
 | 
			
		||||
                "17li3xry4j4ccdnwz2pcnf0gv7c5mwq0h5fwvl7ar28brn2qgdbk"))))
 | 
			
		||||
                "1rg6i6fqs1b0b2g4kijimkyqbxfn6n8ac74rppsizq65n6crvfib"))))
 | 
			
		||||
    (build-system font-build-system)
 | 
			
		||||
    (home-page "https://lxgw.github.io/2021/01/28/Klee-Simpchin/")
 | 
			
		||||
    (synopsis "Simplified Chinese Imitation Song typeface")
 | 
			
		||||
| 
						 | 
				
			
			@ -2757,7 +2757,7 @@ within GB 2312, standard glyphs for Mainland China is used.")
 | 
			
		|||
  (package
 | 
			
		||||
    (inherit font-lxgw-wenkai)
 | 
			
		||||
    (name "font-lxgw-wenkai-tc")
 | 
			
		||||
    (version "0.920")
 | 
			
		||||
    (version "0.921")
 | 
			
		||||
    (source (origin
 | 
			
		||||
              (method url-fetch)
 | 
			
		||||
              (uri (string-append
 | 
			
		||||
| 
						 | 
				
			
			@ -2765,7 +2765,7 @@ within GB 2312, standard glyphs for Mainland China is used.")
 | 
			
		|||
                    version "/lxgw-wenkai-tc-v" version ".tar.gz"))
 | 
			
		||||
              (sha256
 | 
			
		||||
               (base32
 | 
			
		||||
                "1kysqzi19ldd1a3pd9axmggcbm1719myq6i6q6fdb1afscn272cp"))))
 | 
			
		||||
                "0s7zvb8i1f7ziw8r94l1f3rcv21b80dbgc43zjwz34s43465lwrb"))))
 | 
			
		||||
    (home-page "https://github.com/lxgw/LxgwWenKaitc")
 | 
			
		||||
    (synopsis "Traditional Chinese Imitation Song typeface")
 | 
			
		||||
    (description
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -12471,7 +12471,7 @@ profiler via Sysprof, debugging support, and more.")
 | 
			
		|||
(define-public komikku
 | 
			
		||||
  (package
 | 
			
		||||
    (name "komikku")
 | 
			
		||||
    (version "0.40.0")
 | 
			
		||||
    (version "0.41.0")
 | 
			
		||||
    (source
 | 
			
		||||
     (origin
 | 
			
		||||
       (method git-fetch)
 | 
			
		||||
| 
						 | 
				
			
			@ -12481,7 +12481,7 @@ profiler via Sysprof, debugging support, and more.")
 | 
			
		|||
       (file-name (git-file-name name version))
 | 
			
		||||
       (sha256
 | 
			
		||||
        (base32
 | 
			
		||||
         "12l6qks4kwi75ss61yx1f515nb30d987qw3yhi4a36w5xz721p5z"))))
 | 
			
		||||
         "17r059srxrx26w40swy47pdpyigyjdczp8550g4rfh86qs3ld4il"))))
 | 
			
		||||
    (build-system meson-build-system)
 | 
			
		||||
    (arguments
 | 
			
		||||
     `(#:glib-or-gtk? #t
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -33,6 +33,7 @@
 | 
			
		|||
  #:use-module (gnu packages file)
 | 
			
		||||
  #:use-module (gnu packages aidc)
 | 
			
		||||
  #:use-module (gnu packages autotools)
 | 
			
		||||
  #:use-module (gnu packages check)
 | 
			
		||||
  #:use-module (gnu packages compression)
 | 
			
		||||
  #:use-module (gnu packages crypto)
 | 
			
		||||
  #:use-module (gnu packages curl)
 | 
			
		||||
| 
						 | 
				
			
			@ -349,29 +350,35 @@ services.")
 | 
			
		|||
(define-public gnunet-scheme
 | 
			
		||||
  (package
 | 
			
		||||
    (name "gnunet-scheme")
 | 
			
		||||
    (version "0.2")
 | 
			
		||||
    (version "0.3")
 | 
			
		||||
    (source (origin
 | 
			
		||||
              (method git-fetch)
 | 
			
		||||
              (uri (git-reference
 | 
			
		||||
                    (url "https://git.gnunet.org/git/gnunet-scheme.git")
 | 
			
		||||
                    (commit (string-append "v" version))))
 | 
			
		||||
                    ;; Go three commits beyond the v0.3 tag, as these three
 | 
			
		||||
                    ;; commits work-around
 | 
			
		||||
                    ;; <https://debbugs.gnu.org/cgi/bugreport.cgi?bug=49623>.
 | 
			
		||||
                    (commit "f5dc44e66373c29f1c84ea89d8080939a8dfbfd2")))
 | 
			
		||||
              (file-name (git-file-name name version))
 | 
			
		||||
              (sha256
 | 
			
		||||
               (base32
 | 
			
		||||
                "0a11n58m346vs2khns2hfnxv8lbscf8aaqzhmq0d7nwdpn808nrp"))
 | 
			
		||||
                "0kvqbqijfyp3fhsqjyzwd7b3cm5khwv557wq196mv6rx47aaivgd"))
 | 
			
		||||
              (modules '((guix build utils)))
 | 
			
		||||
              ;; XXX: Work-around
 | 
			
		||||
              ;; <https://debbugs.gnu.org/cgi/bugreport.cgi?bug=49623>,
 | 
			
		||||
              ;; this can be removed once Guile > 3.0.7 is released.
 | 
			
		||||
              (snippet '(substitute* '("gnu/gnunet/config/parser.scm"
 | 
			
		||||
                                       "tests/config-parser.scm")
 | 
			
		||||
                          (("#\\{\\$\\{\\}\\}#") "#{${;};}#")
 | 
			
		||||
                          (("#\\{\\$\\{:-\\}\\}#") "#{${;:-};}#")
 | 
			
		||||
                          (("#\\{\\$\\{\\}\\}# #\\{\\$\\{:-\\}\\}#")
 | 
			
		||||
                           "#{$\\x7b;\\x7d;}# #{$\\x7b;:-\\x7d;}#")
 | 
			
		||||
                          (("'#\\{\\$\\{\\}\\}# '#\\{\\$\\{:-\\}\\}#")
 | 
			
		||||
                           "'#{$\\x7b;\\x7d;}# '#{$\\x7b;:-\\x7d;}#")))))
 | 
			
		||||
              (snippet
 | 
			
		||||
               ;; Unbundle dependencies.  TODO: build-aux/test-driver.scm
 | 
			
		||||
               ;; is bundled too, but it's not yet automatically copied by
 | 
			
		||||
               ;; autoreconf -i.
 | 
			
		||||
               #~(delete-file "build-aux/config.rpath"))))
 | 
			
		||||
    (build-system gnu-build-system)
 | 
			
		||||
    (arguments
 | 
			
		||||
     (list #:phases
 | 
			
		||||
           #~(modify-phases %standard-phases
 | 
			
		||||
               ;; For reproducibility, do not insert real timestamps in the PDF.
 | 
			
		||||
               (add-after 'unpack 'reproducible-timestamp
 | 
			
		||||
                 (lambda _
 | 
			
		||||
                   (substitute* "Makefile.am"
 | 
			
		||||
                     (("\\$\\(TEXMACS_CONVERT\\)")
 | 
			
		||||
                      "faketime -m -f '1970-01-01 00:00:00' $(TEXMACS_CONVERT)")))))))
 | 
			
		||||
    (inputs (list guile-3.0)) ;for pkg-config
 | 
			
		||||
    (propagated-inputs (list guile-bytestructures guile-gcrypt guile-pfds
 | 
			
		||||
                             guile-fibers-1.1))
 | 
			
		||||
| 
						 | 
				
			
			@ -382,6 +389,7 @@ services.")
 | 
			
		|||
                         guile-gcrypt
 | 
			
		||||
                         guile-pfds
 | 
			
		||||
                         guile-fibers-1.1
 | 
			
		||||
                         libfaketime
 | 
			
		||||
                         automake
 | 
			
		||||
                         autoconf
 | 
			
		||||
                         pkg-config
 | 
			
		||||
| 
						 | 
				
			
			@ -390,11 +398,19 @@ services.")
 | 
			
		|||
                         guile-quickcheck)) ;for tests
 | 
			
		||||
    (synopsis "Guile implementation of GNUnet client libraries")
 | 
			
		||||
    (description
 | 
			
		||||
     "This package provides Guile modules for connecting to the NSE (network
 | 
			
		||||
size estimation) and DHT (distributed hash table) services of GNUnet.  It also
 | 
			
		||||
has infrastructure for writing new GNUnet services and connecting to them and
 | 
			
		||||
can be used from multi-threaded environments.  It is not to be confused with
 | 
			
		||||
@code{guile-gnunet} -- @code{guile-gnunet} supports a different set of services.")
 | 
			
		||||
     "This package provides Guile modules for connecting to various
 | 
			
		||||
GNUnet services. It also has infrastructure for writing new GNUnet services and
 | 
			
		||||
connecting to them and can be used from multi-threaded environments.  It is not
 | 
			
		||||
to be confused with @code{guile-gnunet} -- @code{guile-gnunet} supports a different
 | 
			
		||||
set of services.
 | 
			
		||||
 | 
			
		||||
The following services are supported:
 | 
			
		||||
 | 
			
		||||
@itemize
 | 
			
		||||
@item NSE (network size estimation)
 | 
			
		||||
@item DHT (distributed hash table)
 | 
			
		||||
@item CADET (secure end-to-end communication between arbitrary peers)
 | 
			
		||||
@end itemize")
 | 
			
		||||
    ;; Most code is licensed as AGPL and a few modules are licensed as LGPL
 | 
			
		||||
    ;; or GPL.  Documentation is licensed as GFDL.
 | 
			
		||||
    (license (list license:agpl3+ license:gpl3+ license:fdl1.3+ license:lgpl3+))
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -2306,29 +2306,21 @@ a tetrahedral mesh, isovalue discretization and Lagrangian movement;
 | 
			
		|||
    (license license:lgpl3+)))
 | 
			
		||||
 | 
			
		||||
(define-public f3d
 | 
			
		||||
  ;; There have been many improvements since the last tagged version (1.2.1,
 | 
			
		||||
  ;; released in December 2021), including support for the Alembic file
 | 
			
		||||
  ;; format.
 | 
			
		||||
  (let ((commit "46df21fe9409349917af5e6f7d1cb931f4c68e59")
 | 
			
		||||
        (revision "0"))
 | 
			
		||||
  (package
 | 
			
		||||
    (name "f3d")
 | 
			
		||||
      ;; F3D has not actually been tagged as 1.3.0-pre, but upstream commit
 | 
			
		||||
      ;; 401d4d27b2094568378c07f400fbad48b7af3168 updated the version string
 | 
			
		||||
      ;; to 1.3.0.
 | 
			
		||||
      (version (git-version "1.3.0-pre" revision commit))
 | 
			
		||||
    (version "1.3.1")
 | 
			
		||||
    (source
 | 
			
		||||
     (origin
 | 
			
		||||
       (method git-fetch)
 | 
			
		||||
       (uri (git-reference
 | 
			
		||||
             (url "https://github.com/f3d-app/f3d")
 | 
			
		||||
               (commit commit)))
 | 
			
		||||
             (commit (string-append "v" version))))
 | 
			
		||||
       (file-name (git-file-name name version))
 | 
			
		||||
       (sha256
 | 
			
		||||
          (base32 "0x0jw9vqf1b8pxh84xpr47hzcjynk07dp8q7r2xihh9cd00kglp1"))
 | 
			
		||||
        (base32 "0hdfgwf5d24ykab634xg4vv9r09nh96ss7hhnqnh5nmw4abhxzg7"))
 | 
			
		||||
       (modules '((guix build utils)))
 | 
			
		||||
       (snippet
 | 
			
		||||
          '(begin
 | 
			
		||||
        #~(begin
 | 
			
		||||
            (delete-file "application/cxxopts.hpp")
 | 
			
		||||
            (delete-file "application/json.hpp")
 | 
			
		||||
            (substitute* "application/F3DOptionsParser.cxx"
 | 
			
		||||
| 
						 | 
				
			
			@ -2361,7 +2353,7 @@ a tetrahedral mesh, isovalue discretization and Lagrangian movement;
 | 
			
		|||
              "-DF3D_GENERATE_MAN=ON"
 | 
			
		||||
              "-DF3D_INSTALL_DEFAULT_CONFIGURATION_FILE=ON"
 | 
			
		||||
              "-DF3D_INSTALL_DEFAULT_CONFIGURATION_FILE_IN_PREFIX=ON"
 | 
			
		||||
                "-DF3D_INSTALL_MIME_TYPES_FILE=ON"
 | 
			
		||||
              "-DF3D_INSTALL_MIME_TYPES_FILES=ON"
 | 
			
		||||
              "-DF3D_INSTALL_THUMBNAILER_FILES=ON"
 | 
			
		||||
              "-DF3D_MODULE_ALEMBIC=ON"
 | 
			
		||||
              "-DF3D_MODULE_ASSIMP=ON"
 | 
			
		||||
| 
						 | 
				
			
			@ -2394,9 +2386,9 @@ a tetrahedral mesh, isovalue discretization and Lagrangian movement;
 | 
			
		|||
           zlib))
 | 
			
		||||
    (home-page "https://f3d-app.github.io/f3d/")
 | 
			
		||||
    (synopsis "VTK-based 3D viewer")
 | 
			
		||||
      (description "F3D (pronounced @samp{/fɛd/}) is a VTK-based 3D viewer
 | 
			
		||||
with simple interaction mechanisms and which is fully controllable using
 | 
			
		||||
arguments on the command line.  It supports a range of file formats (including
 | 
			
		||||
animated glTF, STL, STEP, PLY, OBJ, FBX), and provides numerous rendering and
 | 
			
		||||
texturing options.")
 | 
			
		||||
      (license license:bsd-3))))
 | 
			
		||||
    (description "F3D (pronounced @samp{/fɛd/}) is a VTK-based 3D viewer with
 | 
			
		||||
simple interaction mechanisms and which is fully controllable using arguments
 | 
			
		||||
on the command line.  It supports a range of file formats (including animated
 | 
			
		||||
glTF, STL, STEP, PLY, OBJ, FBX), and provides numerous rendering and texturing
 | 
			
		||||
options.")
 | 
			
		||||
    (license license:bsd-3)))
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -2566,7 +2566,7 @@ shell scripts.  Example of how to use @code{yad} can be consulted at
 | 
			
		|||
(define-public dragon-drop
 | 
			
		||||
  (package
 | 
			
		||||
   (name "dragon-drop")
 | 
			
		||||
   (version "1.1.1")
 | 
			
		||||
   (version "1.2.0")
 | 
			
		||||
   (source (origin
 | 
			
		||||
             (method git-fetch)
 | 
			
		||||
             (uri
 | 
			
		||||
| 
						 | 
				
			
			@ -2576,7 +2576,7 @@ shell scripts.  Example of how to use @code{yad} can be consulted at
 | 
			
		|||
             (file-name (git-file-name name version))
 | 
			
		||||
             (sha256
 | 
			
		||||
              (base32
 | 
			
		||||
               "0fgzz39007fdjwq72scp0qygp2v3zc5f1xkm0sxaa8zxm25g1bra"))))
 | 
			
		||||
               "1cspkrr976mqi6cjkgrckdmjbgahnxmq267wn1zd7gamv64vm8f2"))))
 | 
			
		||||
   (build-system gnu-build-system)
 | 
			
		||||
   (inputs (list gtk+))
 | 
			
		||||
   (native-inputs (list pkg-config))
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -110,7 +110,7 @@
 | 
			
		|||
(define-public ytfzf
 | 
			
		||||
  (package
 | 
			
		||||
    (name "ytfzf")
 | 
			
		||||
    (version "2.3")
 | 
			
		||||
    (version "2.4.1")
 | 
			
		||||
    (home-page "https://github.com/pystardust/ytfzf")
 | 
			
		||||
    (source
 | 
			
		||||
     (origin
 | 
			
		||||
| 
						 | 
				
			
			@ -121,7 +121,7 @@
 | 
			
		|||
         (commit (string-append "v" version))))
 | 
			
		||||
       (file-name (git-file-name name version))
 | 
			
		||||
       (sha256
 | 
			
		||||
        (base32 "01prcg6gfwy1r49v92pkzxay9iadqqhpaxvn8jmij2jm5l50iynd"))))
 | 
			
		||||
        (base32 "198qhnjklrgrjs35ygym6sgx1ibwn6qrihfiginvmx38gdavdj4x"))))
 | 
			
		||||
    (build-system gnu-build-system)
 | 
			
		||||
    (arguments
 | 
			
		||||
     (list
 | 
			
		||||
| 
						 | 
				
			
			@ -162,6 +162,7 @@
 | 
			
		|||
           libnotify
 | 
			
		||||
           mpv
 | 
			
		||||
           ncurses
 | 
			
		||||
           perl                         ;for convert-ascii-escape.pl
 | 
			
		||||
           python-ueberzug
 | 
			
		||||
           sed
 | 
			
		||||
           util-linux
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -282,7 +282,7 @@ PostScript, and PDF.  Additional tools include the @command{man} viewer, and
 | 
			
		|||
        (base32 "12vb15gs56g8wl5nqlm4llr508brh4m2lfknhq4lizbxzqzawkb1"))))
 | 
			
		||||
    (build-system gnu-build-system)
 | 
			
		||||
    (arguments
 | 
			
		||||
     '(#:phases (modify-phases %standard-phases (delete 'configure))
 | 
			
		||||
     `(#:phases (modify-phases %standard-phases (delete 'configure))
 | 
			
		||||
 | 
			
		||||
       ;; The 'all' target depends on three targets that directly populate
 | 
			
		||||
       ;; $(MANDIR) based on its current contents.  Doing that in parallel
 | 
			
		||||
| 
						 | 
				
			
			@ -290,9 +290,7 @@ PostScript, and PDF.  Additional tools include the @command{man} viewer, and
 | 
			
		|||
       #:parallel-build? #f
 | 
			
		||||
 | 
			
		||||
       #:tests? #f
 | 
			
		||||
       #:make-flags (list (string-append "mandir="
 | 
			
		||||
                                         (assoc-ref %outputs "out")
 | 
			
		||||
                                         "/share/man"))))
 | 
			
		||||
       #:make-flags ,#~(list (string-append "mandir=" #$output "/share/man"))))
 | 
			
		||||
    (home-page "https://www.kernel.org/doc/man-pages/")
 | 
			
		||||
    (synopsis "Development manual pages from the Linux project")
 | 
			
		||||
    (description
 | 
			
		||||
| 
						 | 
				
			
			@ -302,6 +300,39 @@ Linux kernel and C library interfaces employed by user-space programs.")
 | 
			
		|||
    ;; Each man page has its own license; some are GPLv2+, some are MIT/X11.
 | 
			
		||||
    (license license:gpl2+)))
 | 
			
		||||
 | 
			
		||||
(define-public man-pages-posix
 | 
			
		||||
  (package
 | 
			
		||||
    (name "man-pages-posix")
 | 
			
		||||
    (version "2013-a")
 | 
			
		||||
    (source
 | 
			
		||||
     (origin
 | 
			
		||||
       (method url-fetch)
 | 
			
		||||
       (uri (string-append "mirror://kernel.org/linux/docs/man-pages/"
 | 
			
		||||
                           "man-pages-posix/man-pages-posix-" version
 | 
			
		||||
                           ".tar.xz"))
 | 
			
		||||
       (sha256
 | 
			
		||||
        (base32 "0258j05zdrxpgdj8nndbyi7bvrs8fxdksb0xbfrylzgzfmf3lqqr"))))
 | 
			
		||||
    (build-system gnu-build-system)
 | 
			
		||||
    (arguments
 | 
			
		||||
     `(#:tests? #f
 | 
			
		||||
       ;; The compress-documentation phase doesn't pick up on our manpages as
 | 
			
		||||
       ;; its regex doesn't support trailing letters, so manually compress.
 | 
			
		||||
       #:make-flags ,#~(list (string-append "prefix=" #$output) "gz")
 | 
			
		||||
       #:license-file-regexp "POSIX-COPYRIGHT"
 | 
			
		||||
       #:phases (modify-phases %standard-phases (delete 'configure))))
 | 
			
		||||
    (home-page "https://www.kernel.org/doc/man-pages/")
 | 
			
		||||
    (synopsis "Man pages from the POSIX.1-2013 standard")
 | 
			
		||||
    (description
 | 
			
		||||
     "This package provides excerpts from the POSIX.1-2008 and TC1 standards
 | 
			
		||||
(collectively, POSIX.1-2013) in manual page form.  While the Linux man-pages
 | 
			
		||||
project documents the system as it exists on Linux- and glibc-based systems,
 | 
			
		||||
this package documents the portable software API as nominally implemented by
 | 
			
		||||
many Unix-likes.")
 | 
			
		||||
    (license (license:fsdg-compatible "file://POSIX-COPYRIGHT"
 | 
			
		||||
                                      "Redistribution of this material is permitted so long as this
 | 
			
		||||
notice and the corresponding notices within each POSIX manual page are retained
 | 
			
		||||
on any distribution, and the nroff source is included."))))
 | 
			
		||||
 | 
			
		||||
(define-public help2man
 | 
			
		||||
  ;; TODO: Manual pages for languages not available from the implicit
 | 
			
		||||
  ;; input "locales" contain the original (English) text.
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -134,6 +134,7 @@
 | 
			
		|||
  #:use-module (gnu packages gtk)
 | 
			
		||||
  #:use-module (gnu packages guile)
 | 
			
		||||
  #:use-module (gnu packages haskell)
 | 
			
		||||
  #:use-module (gnu packages icu4c)
 | 
			
		||||
  #:use-module (gnu packages image)
 | 
			
		||||
  #:use-module (gnu packages imagemagick)
 | 
			
		||||
  #:use-module (gnu packages java)
 | 
			
		||||
| 
						 | 
				
			
			@ -476,7 +477,7 @@ playing your music.")
 | 
			
		|||
(define-public strawberry
 | 
			
		||||
  (package
 | 
			
		||||
    (name "strawberry")
 | 
			
		||||
    (version "1.0.7")
 | 
			
		||||
    (version "1.0.9")
 | 
			
		||||
    (source (origin
 | 
			
		||||
              (method git-fetch)
 | 
			
		||||
              (uri (git-reference
 | 
			
		||||
| 
						 | 
				
			
			@ -485,7 +486,7 @@ playing your music.")
 | 
			
		|||
              (file-name (git-file-name name version))
 | 
			
		||||
              (sha256
 | 
			
		||||
               (base32
 | 
			
		||||
                "17mfavbbzx7hp7j5n9i7c3rajy16jicarabrl174p4gjv4zpy2sc"))
 | 
			
		||||
                "0gm97sdz78s67rnyrs4ixg5dwv2haxdmb7s21yqb8axp624vvalp"))
 | 
			
		||||
              (modules '((guix build utils)
 | 
			
		||||
                         (ice-9 regex)))
 | 
			
		||||
              (snippet
 | 
			
		||||
| 
						 | 
				
			
			@ -542,6 +543,7 @@ playing your music.")
 | 
			
		|||
           gstreamer
 | 
			
		||||
           gst-plugins-base
 | 
			
		||||
           gst-plugins-good
 | 
			
		||||
           icu4c
 | 
			
		||||
           libcdio
 | 
			
		||||
           libmtp
 | 
			
		||||
           protobuf
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -63,6 +63,7 @@
 | 
			
		|||
  #:use-module (gnu packages dbm)
 | 
			
		||||
  #:use-module (gnu packages docbook)
 | 
			
		||||
  #:use-module (gnu packages file)
 | 
			
		||||
  #:use-module (gnu packages freedesktop)
 | 
			
		||||
  #:use-module (gnu packages flex)
 | 
			
		||||
  #:use-module (gnu packages gcc)
 | 
			
		||||
  #:use-module (gnu packages gettext)
 | 
			
		||||
| 
						 | 
				
			
			@ -1900,14 +1901,14 @@ the boot loader configuration.")
 | 
			
		|||
(define-public flatpak
 | 
			
		||||
  (package
 | 
			
		||||
    (name "flatpak")
 | 
			
		||||
    (version "1.12.7")
 | 
			
		||||
    (version "1.14.0")
 | 
			
		||||
    (source
 | 
			
		||||
     (origin
 | 
			
		||||
       (method url-fetch)
 | 
			
		||||
       (uri (string-append "https://github.com/flatpak/flatpak/releases/download/"
 | 
			
		||||
                           version "/flatpak-" version ".tar.xz"))
 | 
			
		||||
       (sha256
 | 
			
		||||
        (base32 "05lkpbjiwp69q924i1jfyk5frcqbdbv9kyzbqwm2hy723i9jmdbd"))
 | 
			
		||||
        (base32 "05bqy9kwmaj32y7f94fydcz3k63bsgn4mbcp4pglv8hffxrnj9wf"))
 | 
			
		||||
       (patches
 | 
			
		||||
        (search-patches "flatpak-fix-path.patch"
 | 
			
		||||
                        "flatpak-unset-gdk-pixbuf-for-sandbox.patch"))))
 | 
			
		||||
| 
						 | 
				
			
			@ -1976,8 +1977,10 @@ cp -r /tmp/locale/*/en_US.*")))
 | 
			
		|||
           socat
 | 
			
		||||
           which))
 | 
			
		||||
    (inputs
 | 
			
		||||
     (list appstream-glib
 | 
			
		||||
     (list appstream
 | 
			
		||||
           appstream-glib
 | 
			
		||||
           bubblewrap
 | 
			
		||||
           curl
 | 
			
		||||
           dconf
 | 
			
		||||
           fuse
 | 
			
		||||
           gdk-pixbuf
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
							
								
								
									
										27
									
								
								gnu/packages/patches/python-apsw-3.39.2.1-test-fix.patch
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										27
									
								
								gnu/packages/patches/python-apsw-3.39.2.1-test-fix.patch
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,27 @@
 | 
			
		|||
From 1111f902075169bd0d96cdd10607ef8499f0fed5 Mon Sep 17 00:00:00 2001
 | 
			
		||||
From: Roger Binns <rogerb@rogerbinns.com>
 | 
			
		||||
Date: Mon, 5 Sep 2022 07:12:25 -0700
 | 
			
		||||
Subject: [PATCH] Deal with mismatched SQLITE_ENABLE_COLUMN_METADATA
 | 
			
		||||
 | 
			
		||||
Address #363
 | 
			
		||||
---
 | 
			
		||||
 apsw/tests.py   | 2 +-
 | 
			
		||||
 1 files changed, 1 insertions(+), 1 deletion(-)
 | 
			
		||||
 | 
			
		||||
diff --git a/apsw/tests.py b/apsw/tests.py
 | 
			
		||||
index b4a94d3..256ead0 100644
 | 
			
		||||
--- a/apsw/tests.py
 | 
			
		||||
+++ b/apsw/tests.py
 | 
			
		||||
@@ -772,8 +772,8 @@ class APSW(unittest.TestCase):
 | 
			
		||||
         c.execute("drop table foo; create table foo (%s)" % (", ".join(["[%s] %s" % (n, t) for n, t in cols]), ))
 | 
			
		||||
         c.execute("insert into foo([x a space]) values(1)")
 | 
			
		||||
         c.execute("create temp table two(fred banana); insert into two values(7); create temp view three as select fred as [a space] from two")
 | 
			
		||||
-        has_full=any(o=="ENABLE_COLUMN_METADATA" or o.startswith("ENABLE_COLUMN_METADATA=") for o in apsw.compile_options)
 | 
			
		||||
+        has_full=any(o=="ENABLE_COLUMN_METADATA" or o.startswith("ENABLE_COLUMN_METADATA=") for o in apsw.compile_options) if apsw.using_amalgamation else hasattr(c, "description_full")
 | 
			
		||||
         for row in c.execute("select * from foo"):
 | 
			
		||||
             self.assertEqual(cols, c.getdescription())
 | 
			
		||||
             self.assertEqual(has_full, hasattr(c, "description_full"))
 | 
			
		||||
 | 
			
		||||
base-commit: f628374c5857d940067ef26c9ea4e85a08a94f76
 | 
			
		||||
--
 | 
			
		||||
2.37.2
 | 
			
		||||
| 
						 | 
				
			
			@ -1226,7 +1226,7 @@ aggregated sum and more.")
 | 
			
		|||
(define-public python-pyvista
 | 
			
		||||
  (package
 | 
			
		||||
    (name "python-pyvista")
 | 
			
		||||
    (version "0.35.2")
 | 
			
		||||
    (version "0.36.1")
 | 
			
		||||
    (source
 | 
			
		||||
     ;; The PyPI tarball does not contain the tests.
 | 
			
		||||
     ;; (However, we don't yet actually run the tests.)
 | 
			
		||||
| 
						 | 
				
			
			@ -1237,7 +1237,7 @@ aggregated sum and more.")
 | 
			
		|||
             (commit (string-append "v" version))))
 | 
			
		||||
       (file-name (git-file-name name version))
 | 
			
		||||
       (sha256
 | 
			
		||||
        (base32 "1qmxrhqm3ag736yb761jy1himwlr3p676xyqbry61h97dj11n6sq"))))
 | 
			
		||||
        (base32 "1kjilcrz2cyh67n79r8dpxrans99mlviz2whc6g7j8hgn7v14z2n"))))
 | 
			
		||||
    (build-system python-build-system)
 | 
			
		||||
    (propagated-inputs
 | 
			
		||||
     (list python-appdirs
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -29,7 +29,7 @@
 | 
			
		|||
;;; Copyright © 2016-2022 Marius Bakke <marius@gnu.org>
 | 
			
		||||
;;; Copyright © 2016, 2017, 2021, 2022 Stefan Reichör <stefan@xsteve.at>
 | 
			
		||||
;;; Copyright © 2016, 2017, 2019 Alex Vong <alexvong1995@gmail.com>
 | 
			
		||||
;;; Copyright © 2016, 2017, 2018, 2021 Arun Isaac <arunisaac@systemreboot.net>
 | 
			
		||||
;;; Copyright © 2016, 2017, 2018, 2021, 2022 Arun Isaac <arunisaac@systemreboot.net>
 | 
			
		||||
;;; Copyright © 2016, 2017, 2018, 2020, 2021 Julien Lepiller <julien@lepiller.eu>
 | 
			
		||||
;;; Copyright © 2016–2022 Tobias Geerinckx-Rice <me@tobias.gr>
 | 
			
		||||
;;; Copyright © 2016, 2017 Thomas Danckaert <post@thomasdanckaert.be>
 | 
			
		||||
| 
						 | 
				
			
			@ -10008,13 +10008,13 @@ function signatures.")
 | 
			
		|||
(define-public python-sympy
 | 
			
		||||
  (package
 | 
			
		||||
    (name "python-sympy")
 | 
			
		||||
    (version "1.10.1")
 | 
			
		||||
    (version "1.11.1")
 | 
			
		||||
    (source
 | 
			
		||||
     (origin
 | 
			
		||||
       (method url-fetch)
 | 
			
		||||
       (uri (pypi-uri "sympy" version))
 | 
			
		||||
       (sha256
 | 
			
		||||
        (base32 "0yvqb2fhrm81skl8s9znbkkjfb1a09n64qqlc1r225cyvzzywfar"))))
 | 
			
		||||
        (base32 "0n46x1rfy8c2a9za3yp2va5icigxj805f9fmiq8c1drwwvf808z3"))))
 | 
			
		||||
    (build-system python-build-system)
 | 
			
		||||
    (arguments
 | 
			
		||||
     `(#:phases
 | 
			
		||||
| 
						 | 
				
			
			@ -30739,3 +30739,40 @@ platform using the ActivityPub protocol.")
 | 
			
		|||
     "@code{python-lief} is a cross platform library which can parse, modify
 | 
			
		||||
and abstract ELF, PE and MachO formats.")
 | 
			
		||||
    (license license:asl2.0)))
 | 
			
		||||
 | 
			
		||||
(define-public python-pymonad
 | 
			
		||||
  (package
 | 
			
		||||
    (name "python-pymonad")
 | 
			
		||||
    (version "2.4.0")
 | 
			
		||||
    ;; The tests are incomplete in the PyPI archive.
 | 
			
		||||
    (source (origin
 | 
			
		||||
              (method git-fetch)
 | 
			
		||||
              (uri (git-reference
 | 
			
		||||
                    (url "https://github.com/jasondelaat/pymonad")
 | 
			
		||||
                    (commit (string-append "v" version))))
 | 
			
		||||
              (file-name (git-file-name name version))
 | 
			
		||||
              (sha256
 | 
			
		||||
               (base32
 | 
			
		||||
                "0ci1mpydldiyg9qv6d19ljhfh7wxlrl2k4mlvqd9bm7dqvpdjsx7"))))
 | 
			
		||||
    (build-system python-build-system)
 | 
			
		||||
    (arguments
 | 
			
		||||
     `(#:phases
 | 
			
		||||
       (modify-phases %standard-phases
 | 
			
		||||
         (replace 'check
 | 
			
		||||
           (lambda* (#:key tests? #:allow-other-keys)
 | 
			
		||||
             (when tests?
 | 
			
		||||
               (invoke "./run_tests.sh")))))))
 | 
			
		||||
    (home-page "https://github.com/jasondelaat/pymonad")
 | 
			
		||||
    (synopsis "Monadic style functional programming for Python")
 | 
			
		||||
    (description "@code{python-pymonad} implements data structures typically
 | 
			
		||||
available in purely functional or functional first programming languages such
 | 
			
		||||
as Haskell and F#.  Included are
 | 
			
		||||
 | 
			
		||||
@itemize
 | 
			
		||||
@item Monad and Monoid data types with several common monads such as Maybe and
 | 
			
		||||
State
 | 
			
		||||
@item Useful tools such as the @code{@@curry} decorator for defining curried
 | 
			
		||||
functions
 | 
			
		||||
@item Type annotations to help ensure correct usage
 | 
			
		||||
@end itemize")
 | 
			
		||||
    (license license:bsd-3)))
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -865,7 +865,7 @@ ease from the desktop to a microcontroller or embedded system.")
 | 
			
		|||
                    (substitute* '("lib_pypy/_md5.py"
 | 
			
		||||
                                   "lib_pypy/_sha1.py")
 | 
			
		||||
                      ((shebang-match-python) shebang-pypy3))))
 | 
			
		||||
                (copy-recursively dist-dir out)))))))
 | 
			
		||||
                (copy-recursively dist-dir #$output)))))))
 | 
			
		||||
    (native-inputs
 | 
			
		||||
     (list gzip
 | 
			
		||||
           nss-certs                    ; For ssl tests
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -24,6 +24,7 @@
 | 
			
		|||
;;; Copyright © 2021, 2022 Guillaume Le Vaillant <glv@posteo.net>
 | 
			
		||||
;;; Copyright © 2021 Nicolò Balzarotti <nicolo@nixo.xyz>
 | 
			
		||||
;;; Copyright © 2022 Foo Chuan Wei <chuanwei.foo@hotmail.com>
 | 
			
		||||
;;; Copyright © 2022 Zhu Zihao <all_but_last@163.com>
 | 
			
		||||
;;;
 | 
			
		||||
;;; This file is part of GNU Guix.
 | 
			
		||||
;;;
 | 
			
		||||
| 
						 | 
				
			
			@ -3751,6 +3752,9 @@ color-related widgets.")
 | 
			
		|||
     "QCustomPlot is a Qt C++ widget providing 2D plots, graphs and charts.")
 | 
			
		||||
    (license license:gpl3+)))
 | 
			
		||||
 | 
			
		||||
;; TODO: Split shiboken2 binding generator into a dedicated output.
 | 
			
		||||
;; This executable requires libxml2, libxslt, clang-toolchain at runtime.
 | 
			
		||||
;; The libshiboken library only requires Qt and Python at runtime.
 | 
			
		||||
(define-public python-shiboken-2
 | 
			
		||||
  (package
 | 
			
		||||
    (name "python-shiboken-2")
 | 
			
		||||
| 
						 | 
				
			
			@ -3773,11 +3777,12 @@ color-related widgets.")
 | 
			
		|||
           qtbase-5
 | 
			
		||||
           qtxmlpatterns))
 | 
			
		||||
    (arguments
 | 
			
		||||
     `(#:tests? #f
 | 
			
		||||
     (list
 | 
			
		||||
      #:tests? #f
 | 
			
		||||
      ;; FIXME: Building tests fails
 | 
			
		||||
       #:configure-flags '("-DBUILD_TESTS=off")
 | 
			
		||||
      #:configure-flags #~(list "-DBUILD_TESTS=off")
 | 
			
		||||
      #:phases
 | 
			
		||||
       (modify-phases %standard-phases
 | 
			
		||||
      #~(modify-phases %standard-phases
 | 
			
		||||
          (add-after 'unpack 'use-shiboken-dir-only
 | 
			
		||||
            (lambda _ (chdir "sources/shiboken2") #t))
 | 
			
		||||
          (add-before 'configure 'make-files-writable-and-update-timestamps
 | 
			
		||||
| 
						 | 
				
			
			@ -3793,8 +3798,8 @@ color-related widgets.")
 | 
			
		|||
                          (find-files ".")))
 | 
			
		||||
              #t))
 | 
			
		||||
          (add-before 'configure 'set-build-env
 | 
			
		||||
           (lambda* (#:key inputs #:allow-other-keys)
 | 
			
		||||
             (let ((llvm (assoc-ref inputs "clang-toolchain")))
 | 
			
		||||
            (lambda _
 | 
			
		||||
              (let ((llvm #$(this-package-input "clang-toolchain")))
 | 
			
		||||
                (setenv "CLANG_INSTALL_DIR" llvm)
 | 
			
		||||
                #t))))))
 | 
			
		||||
    (home-page "https://wiki.qt.io/Qt_for_Python")
 | 
			
		||||
| 
						 | 
				
			
			@ -3810,6 +3815,40 @@ color-related widgets.")
 | 
			
		|||
      license:lgpl3
 | 
			
		||||
      license:bsd-3))))
 | 
			
		||||
 | 
			
		||||
(define-public python-shiboken-6
 | 
			
		||||
  (package
 | 
			
		||||
    (inherit python-shiboken-2)
 | 
			
		||||
    (name "python-shiboken-6")
 | 
			
		||||
    (version "6.3.1")
 | 
			
		||||
    (source (origin
 | 
			
		||||
              (method url-fetch)
 | 
			
		||||
              (uri (string-append "https://download.qt.io/official_releases"
 | 
			
		||||
                                  "/QtForPython/pyside6/PySide6-" version
 | 
			
		||||
                                  "-src/pyside-setup-opensource-src-"
 | 
			
		||||
                                  version ".tar.xz"))
 | 
			
		||||
              (sha256
 | 
			
		||||
               (base32
 | 
			
		||||
                "0xwri69nnbhn6fajm7l045r0s0qv8nlq6qj8wcj87srli3b5xa75"))))
 | 
			
		||||
    (build-system cmake-build-system)
 | 
			
		||||
    (inputs
 | 
			
		||||
     (modify-inputs (package-inputs python-shiboken-2)
 | 
			
		||||
       (replace "qtbase" qtbase)
 | 
			
		||||
       (delete "qtxmlpatterns")))
 | 
			
		||||
    (arguments
 | 
			
		||||
     (substitute-keyword-arguments (package-arguments python-shiboken-2)
 | 
			
		||||
       ((#:phases p)
 | 
			
		||||
        #~(modify-phases #$p
 | 
			
		||||
            (replace 'use-shiboken-dir-only
 | 
			
		||||
              (lambda _ (chdir "sources/shiboken6") #t))))
 | 
			
		||||
       ((#:configure-flags flags)
 | 
			
		||||
        #~(cons*
 | 
			
		||||
           ;; The RUNPATH of shibokenmodule contains the entry in build
 | 
			
		||||
           ;; directory instead of install directory.
 | 
			
		||||
           "-DCMAKE_SKIP_RPATH=TRUE"
 | 
			
		||||
           (string-append "-DCMAKE_MODULE_LINKER_FLAGS=-Wl,-rpath="
 | 
			
		||||
                          #$output "/lib")
 | 
			
		||||
           #$flags))))))
 | 
			
		||||
 | 
			
		||||
(define-public python-pyside-2
 | 
			
		||||
  (package
 | 
			
		||||
    (name "python-pyside-2")
 | 
			
		||||
| 
						 | 
				
			
			@ -3817,10 +3856,7 @@ color-related widgets.")
 | 
			
		|||
    (source (package-source python-shiboken-2))
 | 
			
		||||
    (build-system cmake-build-system)
 | 
			
		||||
    (inputs
 | 
			
		||||
     (list libxml2
 | 
			
		||||
           libxslt
 | 
			
		||||
           clang-toolchain
 | 
			
		||||
           qtbase-5
 | 
			
		||||
     (list qtbase-5
 | 
			
		||||
           qtdatavis3d
 | 
			
		||||
           qtdeclarative-5
 | 
			
		||||
           qtlocation
 | 
			
		||||
| 
						 | 
				
			
			@ -3832,6 +3868,7 @@ color-related widgets.")
 | 
			
		|||
           qtsensors
 | 
			
		||||
           qtspeech
 | 
			
		||||
           qtsvg-5
 | 
			
		||||
           qttools-5
 | 
			
		||||
           qtwebchannel-5
 | 
			
		||||
           qtwebengine-5
 | 
			
		||||
           qtwebsockets-5
 | 
			
		||||
| 
						 | 
				
			
			@ -3840,36 +3877,36 @@ color-related widgets.")
 | 
			
		|||
    (propagated-inputs
 | 
			
		||||
     (list python-shiboken-2))
 | 
			
		||||
    (native-inputs
 | 
			
		||||
     `(("cmake" ,cmake-minimal)
 | 
			
		||||
       ("python" ,python-wrapper)
 | 
			
		||||
       ("qttools-5" ,qttools-5)
 | 
			
		||||
       ("which" ,which)))
 | 
			
		||||
     (list python-wrapper))
 | 
			
		||||
    (arguments
 | 
			
		||||
     `(#:tests? #f
 | 
			
		||||
     (list
 | 
			
		||||
      #:tests? #f
 | 
			
		||||
      ;; FIXME: Building tests fail.
 | 
			
		||||
      #:configure-flags
 | 
			
		||||
       (list "-DBUILD_TESTS=FALSE"
 | 
			
		||||
      #~(list "-DBUILD_TESTS=FALSE"
 | 
			
		||||
              (string-append "-DPYTHON_EXECUTABLE="
 | 
			
		||||
                            (assoc-ref %build-inputs "python")
 | 
			
		||||
                            "/bin/python"))
 | 
			
		||||
       #:modules ((guix build cmake-build-system)
 | 
			
		||||
                             (search-input-file %build-inputs
 | 
			
		||||
                                                "/bin/python")))
 | 
			
		||||
      #:modules '((guix build cmake-build-system)
 | 
			
		||||
                  (guix build utils)
 | 
			
		||||
                  (srfi srfi-1))
 | 
			
		||||
      #:phases
 | 
			
		||||
       (modify-phases %standard-phases
 | 
			
		||||
      #~(modify-phases %standard-phases
 | 
			
		||||
          (add-after 'unpack 'go-to-source-dir
 | 
			
		||||
            (lambda _ (chdir "sources/pyside2") #t))
 | 
			
		||||
          (add-after 'go-to-source-dir 'fix-qt-module-detection
 | 
			
		||||
           (lambda* (#:key inputs #:allow-other-keys)
 | 
			
		||||
            (lambda _
 | 
			
		||||
              ;; Activate qt module support even if it not in the same
 | 
			
		||||
              ;; directory as qtbase.
 | 
			
		||||
              (substitute* "../cmake_helpers/helpers.cmake"
 | 
			
		||||
                (("\\(\"\\$\\{found_basepath\\}\" GREATER \"0\"\\)")
 | 
			
		||||
                 "true"))
 | 
			
		||||
              ;; Add include directories for qt modules.
 | 
			
		||||
             (let ((dirs (map (lambda (name)
 | 
			
		||||
                                (string-append (assoc-ref inputs name)
 | 
			
		||||
                                               "/include/qt5"))
 | 
			
		||||
              (let ((dirs (map (lambda (path)
 | 
			
		||||
                                 (string-append path "/include/qt5"))
 | 
			
		||||
                               (list
 | 
			
		||||
                                #$@(map (lambda (name)
 | 
			
		||||
                                          (this-package-input name))
 | 
			
		||||
                                        '("qtdatavis3d"
 | 
			
		||||
                                          "qtdeclarative"
 | 
			
		||||
                                          "qtlocation"
 | 
			
		||||
| 
						 | 
				
			
			@ -3881,12 +3918,12 @@ color-related widgets.")
 | 
			
		|||
                                          "qtsensors"
 | 
			
		||||
                                          "qtspeech"
 | 
			
		||||
                                          "qtsvg"
 | 
			
		||||
                                "qttools-5"
 | 
			
		||||
                                          "qttools"
 | 
			
		||||
                                          "qtwebchannel"
 | 
			
		||||
                                          "qtwebengine"
 | 
			
		||||
                                          "qtwebsockets"
 | 
			
		||||
                                          "qtx11extras"
 | 
			
		||||
                                "qtxmlpatterns"))))
 | 
			
		||||
                                          "qtxmlpatterns"))))))
 | 
			
		||||
                (substitute* "cmake/Macros/PySideModules.cmake"
 | 
			
		||||
                  (("\\$\\{PATH_SEP\\}\\$\\{core_includes\\}" all)
 | 
			
		||||
                   (fold (lambda (dir paths)
 | 
			
		||||
| 
						 | 
				
			
			@ -3896,12 +3933,7 @@ color-related widgets.")
 | 
			
		|||
                (setenv "CXXFLAGS" (fold (lambda (dir paths)
 | 
			
		||||
                                           (string-append paths " -I" dir))
 | 
			
		||||
                                         ""
 | 
			
		||||
                                        dirs)))))
 | 
			
		||||
         (add-before 'configure 'set-clang-dir
 | 
			
		||||
           (lambda* (#:key inputs #:allow-other-keys)
 | 
			
		||||
             (let ((clang (assoc-ref inputs "clang-toolchain")))
 | 
			
		||||
               (setenv "CLANG_INSTALL_DIR" clang)
 | 
			
		||||
               #t))))))
 | 
			
		||||
                                         dirs))))))))
 | 
			
		||||
    (home-page "https://wiki.qt.io/Qt_for_Python")
 | 
			
		||||
    (synopsis
 | 
			
		||||
     "The Qt for Python product enables the use of Qt5 APIs in Python applications")
 | 
			
		||||
| 
						 | 
				
			
			@ -3923,6 +3955,78 @@ generate Python bindings for your C or C++ code.")
 | 
			
		|||
              license:gpl3
 | 
			
		||||
              license:gpl2))))
 | 
			
		||||
 | 
			
		||||
(define-public python-pyside-6
 | 
			
		||||
  (package
 | 
			
		||||
    (inherit python-pyside-2)
 | 
			
		||||
    (name "python-pyside-6")
 | 
			
		||||
    (version (package-version python-shiboken-6))
 | 
			
		||||
    (source (package-source python-shiboken-6))
 | 
			
		||||
    ;; TODO: Add more Qt components if available.
 | 
			
		||||
    (inputs
 | 
			
		||||
     (list qtbase
 | 
			
		||||
           qtdeclarative
 | 
			
		||||
           qtmultimedia
 | 
			
		||||
           qtnetworkauth
 | 
			
		||||
           qtpositioning
 | 
			
		||||
           qtsvg
 | 
			
		||||
           qttools
 | 
			
		||||
           qtwebchannel
 | 
			
		||||
           qtwebengine
 | 
			
		||||
           qtwebsockets))
 | 
			
		||||
    (propagated-inputs
 | 
			
		||||
     (list python-shiboken-6))
 | 
			
		||||
    (native-inputs
 | 
			
		||||
     (list python-wrapper))
 | 
			
		||||
    (arguments
 | 
			
		||||
     (list
 | 
			
		||||
      #:tests? #f
 | 
			
		||||
      #:configure-flags
 | 
			
		||||
      #~(list "-DBUILD_TESTS=FALSE"
 | 
			
		||||
              (string-append "-DPYTHON_EXECUTABLE="
 | 
			
		||||
                             (search-input-file %build-inputs
 | 
			
		||||
                                                "/bin/python")))
 | 
			
		||||
      #:phases
 | 
			
		||||
      #~(modify-phases %standard-phases
 | 
			
		||||
          (add-after 'unpack 'go-to-source-dir
 | 
			
		||||
            (lambda _ (chdir "sources/pyside6") #t))
 | 
			
		||||
          (add-after 'go-to-source-dir 'fix-qt-module-detection
 | 
			
		||||
            (lambda _
 | 
			
		||||
              (substitute* "cmake/PySideHelpers.cmake"
 | 
			
		||||
                (("\\(\"\\$\\{found_basepath\\}\" GREATER \"0\"\\)")
 | 
			
		||||
                 "true"))
 | 
			
		||||
              (let ((dirs (map (lambda (path)
 | 
			
		||||
                                 (string-append path "/include/qt6"))
 | 
			
		||||
                               (list
 | 
			
		||||
                                #$@(map (lambda (name)
 | 
			
		||||
                                          (this-package-input name))
 | 
			
		||||
                                        '("qtdeclarative"
 | 
			
		||||
                                          "qtmultimedia"
 | 
			
		||||
                                          "qtnetworkauth"
 | 
			
		||||
                                          "qtpositioning"
 | 
			
		||||
                                          "qtsvg"
 | 
			
		||||
                                          "qttools"
 | 
			
		||||
                                          "qtwebchannel"
 | 
			
		||||
                                          "qtwebengine"
 | 
			
		||||
                                          "qtwebsockets"))))))
 | 
			
		||||
                (substitute* "cmake/Macros/PySideModules.cmake"
 | 
			
		||||
                  (("set\\(shiboken_include_dir_list " all)
 | 
			
		||||
                   (string-append all (string-join dirs ";") " ")))
 | 
			
		||||
                (setenv "CXXFLAGS"
 | 
			
		||||
                        (string-join
 | 
			
		||||
                         (map (lambda (dir)
 | 
			
		||||
                                (string-append "-I" dir))
 | 
			
		||||
                              dirs)
 | 
			
		||||
                         " "))))))))
 | 
			
		||||
    (synopsis
 | 
			
		||||
     "The Qt for Python product enables the use of Qt6 APIs in Python applications")
 | 
			
		||||
    (description
 | 
			
		||||
     "The Qt for Python product enables the use of Qt6 APIs in Python
 | 
			
		||||
applications.  It lets Python developers utilize the full potential of Qt,
 | 
			
		||||
using the PySide6 module.  The PySide6 module provides access to the
 | 
			
		||||
individual Qt modules such as QtCore, QtGui,and so on.  Qt for Python also
 | 
			
		||||
comes with the Shiboken6 CPython binding code generator, which can be used to
 | 
			
		||||
generate Python bindings for your C or C++ code.")))
 | 
			
		||||
 | 
			
		||||
(define-public python-pyside-2-tools
 | 
			
		||||
  (package
 | 
			
		||||
    (name "python-pyside-2-tools")
 | 
			
		||||
| 
						 | 
				
			
			@ -3932,22 +4036,24 @@ generate Python bindings for your C or C++ code.")
 | 
			
		|||
    (inputs
 | 
			
		||||
     (list python-pyside-2 python-shiboken-2 qtbase-5))
 | 
			
		||||
    (native-inputs
 | 
			
		||||
     `(("python" ,python-wrapper)))
 | 
			
		||||
     (list python-wrapper))
 | 
			
		||||
    (arguments
 | 
			
		||||
     `(#:tests? #f
 | 
			
		||||
     (list
 | 
			
		||||
      #:tests? #f
 | 
			
		||||
      #:configure-flags
 | 
			
		||||
       (list "-DBUILD_TESTS=off"
 | 
			
		||||
      #~(list "-DBUILD_TESTS=off"
 | 
			
		||||
              (string-append "-DPYTHON_EXECUTABLE="
 | 
			
		||||
                            (assoc-ref %build-inputs "python")
 | 
			
		||||
                            "/bin/python"))
 | 
			
		||||
       #:phases (modify-phases %standard-phases
 | 
			
		||||
                             (search-input-file %build-inputs
 | 
			
		||||
                                                "/bin/python")))
 | 
			
		||||
      #:phases
 | 
			
		||||
      #~(modify-phases %standard-phases
 | 
			
		||||
          (add-after 'unpack 'go-to-source-dir
 | 
			
		||||
            (lambda _ (chdir "sources/pyside2-tools") #t)))))
 | 
			
		||||
    (home-page "https://wiki.qt.io/Qt_for_Python")
 | 
			
		||||
    (synopsis
 | 
			
		||||
     "Contains command line tools for PySide2")
 | 
			
		||||
     "Command line tools for PySide2")
 | 
			
		||||
    (description
 | 
			
		||||
     "Contains lupdate, rcc and uic tools for PySide2")
 | 
			
		||||
     "Python-pyside-2-tools contains lupdate, rcc and uic tools for PySide2")
 | 
			
		||||
    (license license:gpl2)))
 | 
			
		||||
 | 
			
		||||
(define-public libqglviewer
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -255,7 +255,7 @@
 | 
			
		|||
      ;; ^ This is downstream of https://github.com/racket/racket,
 | 
			
		||||
      ;; but it's designed to be a friendly landing place
 | 
			
		||||
      (synopsis "Tiny Racket for build scripts")
 | 
			
		||||
      (description "Zuo (作) is a tiny Racket with primitives for dealing
 | 
			
		||||
      (description "Zuo is a tiny Racket with primitives for dealing
 | 
			
		||||
with files and running processes.  It comes with a @command{make}-like
 | 
			
		||||
embedded DSL, which is used to build Racket itself.
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -38,6 +38,7 @@
 | 
			
		|||
  #:use-module (guix packages)
 | 
			
		||||
  #:use-module (guix download)
 | 
			
		||||
  #:use-module (guix git-download)
 | 
			
		||||
  #:use-module (guix build-system copy)
 | 
			
		||||
  #:use-module (guix build-system gnu)
 | 
			
		||||
  #:use-module (guix build-system go)
 | 
			
		||||
  #:use-module (guix build-system python)
 | 
			
		||||
| 
						 | 
				
			
			@ -145,6 +146,30 @@ chart.")
 | 
			
		|||
text.")
 | 
			
		||||
    (license license:gpl2)))
 | 
			
		||||
 | 
			
		||||
(define-public zsh-autopair
 | 
			
		||||
  (package
 | 
			
		||||
    (name "zsh-autopair")
 | 
			
		||||
    (version "1.0")
 | 
			
		||||
    (home-page "https://github.com/hlissner/zsh-autopair")
 | 
			
		||||
    (source (origin
 | 
			
		||||
              (method git-fetch)
 | 
			
		||||
              (uri (git-reference
 | 
			
		||||
                    (url "https://github.com/hlissner/zsh-autopair.git")
 | 
			
		||||
                    (commit (string-append "v" version))))
 | 
			
		||||
              (file-name (git-file-name name version))
 | 
			
		||||
              (sha256
 | 
			
		||||
               (base32
 | 
			
		||||
                "1h0vm2dgrmb8i2pvsgis3lshc5b0ad846836m62y8h3rdb3zmpy1"))))
 | 
			
		||||
    (build-system copy-build-system)
 | 
			
		||||
    (arguments
 | 
			
		||||
     '(#:install-plan '(("autopair.zsh"
 | 
			
		||||
                         "/share/zsh/plugins/zsh-autopair/zsh-autopair.zsh"))))
 | 
			
		||||
    (synopsis "Auto-close and delete matching delimiters in Zsh")
 | 
			
		||||
    (description
 | 
			
		||||
     "This Zsh plugin auto-closes, deletes, and skips over matching delimiters
 | 
			
		||||
in Zsh intelligently.")
 | 
			
		||||
    (license license:expat)))
 | 
			
		||||
 | 
			
		||||
(define-public zsh-autosuggestions
 | 
			
		||||
  (package
 | 
			
		||||
    (name "zsh-autosuggestions")
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -113,10 +113,10 @@ is in the public domain.")
 | 
			
		|||
(define-public sqlite-next
 | 
			
		||||
  (package
 | 
			
		||||
    (inherit sqlite)
 | 
			
		||||
    (version "3.39.1")
 | 
			
		||||
    (version "3.39.3")
 | 
			
		||||
    (source (origin
 | 
			
		||||
              (method url-fetch)
 | 
			
		||||
              (uri (sqlite-uri version 2022))
 | 
			
		||||
              (sha256
 | 
			
		||||
               (base32
 | 
			
		||||
                "1i0wjd1mig720q1gk9jkpw6h0mialbrlkfh8w8lans0czakygj47"))))))
 | 
			
		||||
                "1f922kq16g7f4h3gpzim78lvrp5xw9nvlvqw97s2qgxyh8qgns3q"))))))
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -180,7 +180,7 @@ multiple inheritance and public and private classes and variables.")
 | 
			
		|||
             #t)))
 | 
			
		||||
 | 
			
		||||
       #:test-target "test"))
 | 
			
		||||
    (home-page "http://expect.sourceforge.net/")
 | 
			
		||||
    (home-page "https://core.tcl-lang.org/expect/")
 | 
			
		||||
    (synopsis "Tool for automating interactive applications")
 | 
			
		||||
    (description
 | 
			
		||||
     "Expect is a tool for automating interactive applications such as
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -11589,3 +11589,97 @@ within ‘words’ that contain non-alphabetic characters (e.g., that include
 | 
			
		|||
underscores), and hyphenation of text typeset in monospaced (e.g., cmtt)
 | 
			
		||||
fonts.")
 | 
			
		||||
    (license license:lppl1.3c+)))
 | 
			
		||||
 | 
			
		||||
(define-public texlive-latex-lastpage
 | 
			
		||||
  (package
 | 
			
		||||
    (inherit (simple-texlive-package
 | 
			
		||||
              "texlive-latex-lastpage"
 | 
			
		||||
              (list "doc/latex/lastpage/"
 | 
			
		||||
                    "tex/latex/lastpage/")
 | 
			
		||||
              (base32 "0q6x743b8fkw9r82lrxy49f9xsg81bffynwvpnvpnp3h4mkafvdb")
 | 
			
		||||
              #:trivial? #t))
 | 
			
		||||
    (build-system texlive-build-system)
 | 
			
		||||
    (home-page "https://ctan.org/pkg/lastpage")
 | 
			
		||||
    (synopsis "Reference last page for Page N of M type footers")
 | 
			
		||||
    (description
 | 
			
		||||
     "This package enables referencing the number of pages in a LaTeX document
 | 
			
		||||
through the introduction of a new label which can be referenced like
 | 
			
		||||
@code{\\pageref{LastPage}} to give a reference to the last page of a document.
 | 
			
		||||
It is particularly useful in the page footer that says: Page N of M.")
 | 
			
		||||
    (license license:lppl1.3c+)))
 | 
			
		||||
 | 
			
		||||
(define-public texlive-latex-tabto-ltx
 | 
			
		||||
  (package
 | 
			
		||||
    (name "texlive-latex-tabto-ltx")
 | 
			
		||||
    (version (number->string %texlive-revision))
 | 
			
		||||
    (source (origin
 | 
			
		||||
              (method svn-fetch)
 | 
			
		||||
              (uri (svn-reference (url (string-append
 | 
			
		||||
                                        "svn://www.tug.org/texlive/tags/"
 | 
			
		||||
                                        %texlive-tag "/Master/texmf-dist/"
 | 
			
		||||
                                        "/tex/latex/tabto-ltx"))
 | 
			
		||||
                                  (revision %texlive-revision)))
 | 
			
		||||
              (file-name (string-append name "-" version "-checkout"))
 | 
			
		||||
              (sha256
 | 
			
		||||
               (base32
 | 
			
		||||
                "1vq9s3n0mdgx2w84bjdsqxp3vcasfb824agjy56713902li1g8vm"))))
 | 
			
		||||
    (build-system trivial-build-system)
 | 
			
		||||
    (arguments
 | 
			
		||||
     `(#:modules ((guix build utils))
 | 
			
		||||
       #:builder (begin
 | 
			
		||||
                   (use-modules (guix build utils))
 | 
			
		||||
                   (let ((target (string-append (assoc-ref %outputs "out")
 | 
			
		||||
                                  "/share/texmf-dist/tex/latex/tabto")))
 | 
			
		||||
                     (mkdir-p target)
 | 
			
		||||
                     (copy-recursively (assoc-ref %build-inputs "source")
 | 
			
		||||
                                       target) #t))))
 | 
			
		||||
    (home-page "https://ctan.org/pkg/tabto-ltx")
 | 
			
		||||
    (synopsis "``Tab'' to a measured position in the line")
 | 
			
		||||
    (description
 | 
			
		||||
     "This package provides @code{\\tabto{<length>}}, which moves the
 | 
			
		||||
typesetting position to @code{<length>} from the left margin of the paragraph.
 | 
			
		||||
If the typesetting position is already further along, @code{\\tabto} starts a
 | 
			
		||||
new line; the command @code{\\tabto*} will move position backwards if
 | 
			
		||||
necessary, so that previous text may be overwritten.  In addition, the command
 | 
			
		||||
@code{\\TabPositions} may be used to define a set of tabbing positions, after
 | 
			
		||||
which the command @code{\\tab} advances typesetting position to the next
 | 
			
		||||
defined ``tab stop''.")
 | 
			
		||||
    (license license:lppl1.3+)))
 | 
			
		||||
 | 
			
		||||
(define-public texlive-generic-soul
 | 
			
		||||
  (let ((template (simple-texlive-package
 | 
			
		||||
                   "texlive-generic-soul"
 | 
			
		||||
                   (list "/doc/generic/soul/"
 | 
			
		||||
                         "/tex/generic/soul/")
 | 
			
		||||
                   (base32
 | 
			
		||||
                    "11jdgvfpcv10y5j898495lf29k2m03x39v9jzb4v79w4cgxcmfps")
 | 
			
		||||
                   #:trivial? #t)))
 | 
			
		||||
    (package
 | 
			
		||||
      (inherit template)
 | 
			
		||||
      (home-page "http://www.ctan.org/pkg/soul")
 | 
			
		||||
      (synopsis "Hyphenation for letterspacing, underlining, and more")
 | 
			
		||||
      (description
 | 
			
		||||
       "@code{soul} enables hyphenatable spacing out (letterspacing),
 | 
			
		||||
underlining, striking out, etc., using the TeX hyphenation algorithm to find
 | 
			
		||||
the proper hyphens automatically.  The package also provides a mechanism that
 | 
			
		||||
can be used to implement similar tasks, that have to treat text syllable by
 | 
			
		||||
syllable.  The package itself does not support UTF-8 input in ordinary
 | 
			
		||||
(PDF)LaTeX; some UTF-8 support is offered by package @code{soulutf8}.")
 | 
			
		||||
      (license license:lppl))))
 | 
			
		||||
 | 
			
		||||
(define-public texlive-latex-totcount
 | 
			
		||||
  (package
 | 
			
		||||
    (inherit (simple-texlive-package
 | 
			
		||||
              "texlive-latex-totcount"
 | 
			
		||||
              (list "doc/latex/totcount/"
 | 
			
		||||
                    "tex/latex/totcount/")
 | 
			
		||||
              (base32 "0z4mijyk3z7555q8da41aiji602plis5z261z4rr1fl8sndhnhn1")
 | 
			
		||||
              #:trivial? #t))
 | 
			
		||||
    (build-system texlive-build-system)
 | 
			
		||||
    (home-page "https://ctan.org/pkg/totcount")
 | 
			
		||||
    (synopsis "Find the last value of a counter")
 | 
			
		||||
    (description
 | 
			
		||||
     "This package records the value that was last set, for any counter of
 | 
			
		||||
interest.  Since most such counters are simply incremented when they are
 | 
			
		||||
changed, the recorded value will usually be the maximum value.")
 | 
			
		||||
    (license license:lppl1.3c+)))
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -880,7 +880,7 @@ the message of the day, among other things."
 | 
			
		|||
                    (default #f))
 | 
			
		||||
  (no-hints?        agetty-no-hints?              ;Boolean
 | 
			
		||||
                    (default #f))
 | 
			
		||||
  (no-hostname?     agetty-no hostname?           ;Boolean
 | 
			
		||||
  (no-hostname?     agetty-no-hostname?           ;Boolean
 | 
			
		||||
                    (default #f))
 | 
			
		||||
  (long-hostname?   agetty-long-hostname?         ;Boolean
 | 
			
		||||
                    (default #f))
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -63,7 +63,8 @@
 | 
			
		|||
  (define vm
 | 
			
		||||
    (virtual-machine
 | 
			
		||||
     (operating-system os)
 | 
			
		||||
     (port-forwardings '((8000 . 2628)))))
 | 
			
		||||
     (port-forwardings '((8000 . 2628)))
 | 
			
		||||
     (memory-size 1024)))
 | 
			
		||||
 | 
			
		||||
  (define test
 | 
			
		||||
    (with-imported-modules '((gnu build marionette))
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,5 +1,5 @@
 | 
			
		|||
;;; GNU Guix --- Functional package management for GNU
 | 
			
		||||
;;; Copyright © 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021 Ludovic Courtès <ludo@gnu.org>
 | 
			
		||||
;;; Copyright © 2014-2022 Ludovic Courtès <ludo@gnu.org>
 | 
			
		||||
;;; Copyright © 2015 David Thompson <davet@gnu.org>
 | 
			
		||||
;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
 | 
			
		||||
;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
 | 
			
		||||
| 
						 | 
				
			
			@ -549,16 +549,17 @@ the last argument of `mknod'."
 | 
			
		|||
(define MNT_EXPIRE      4)
 | 
			
		||||
(define UMOUNT_NOFOLLOW 8)
 | 
			
		||||
 | 
			
		||||
(define-as-needed (mount source target type
 | 
			
		||||
(define-as-needed mount
 | 
			
		||||
  ;; XXX: '#:update-mtab?' is not implemented by core 'mount'.
 | 
			
		||||
  (let ((proc (syscall->procedure int "mount" `(* * * ,unsigned-long *))))
 | 
			
		||||
    (lambda* (source target type
 | 
			
		||||
                     #:optional (flags 0) options
 | 
			
		||||
                     #:key (update-mtab? #f))
 | 
			
		||||
      "Mount device SOURCE on TARGET as a file system TYPE.
 | 
			
		||||
Optionally, FLAGS may be a bitwise-or of the MS_* <sys/mount.h>
 | 
			
		||||
constants, and OPTIONS may be a string.  When FLAGS contains
 | 
			
		||||
MS_REMOUNT, SOURCE and TYPE are ignored.  When UPDATE-MTAB? is true,
 | 
			
		||||
update /etc/mtab.  Raise a 'system-error' exception on error."
 | 
			
		||||
  ;; XXX: '#:update-mtab?' is not implemented by core 'mount'.
 | 
			
		||||
  (let ((proc (syscall->procedure int "mount" `(* * * ,unsigned-long *))))
 | 
			
		||||
Optionally, FLAGS may be a bitwise-or of the MS_* <sys/mount.h> constants, and
 | 
			
		||||
OPTIONS may be a string.  When FLAGS contains MS_REMOUNT, SOURCE and TYPE are
 | 
			
		||||
ignored.  When UPDATE-MTAB? is true, update /etc/mtab.  Raise a 'system-error'
 | 
			
		||||
exception on error."
 | 
			
		||||
      (let-values (((ret err)
 | 
			
		||||
                    (proc (if source
 | 
			
		||||
                              (string->pointer source)
 | 
			
		||||
| 
						 | 
				
			
			@ -576,15 +577,14 @@ update /etc/mtab.  Raise a 'system-error' exception on error."
 | 
			
		|||
                 (list source target (strerror err))
 | 
			
		||||
                 (list err)))
 | 
			
		||||
        (when update-mtab?
 | 
			
		||||
        (augment-mtab source target type options)))))
 | 
			
		||||
          (augment-mtab source target type options))))))
 | 
			
		||||
 | 
			
		||||
(define-as-needed (umount target
 | 
			
		||||
                          #:optional (flags 0)
 | 
			
		||||
                          #:key (update-mtab? #f))
 | 
			
		||||
(define-as-needed umount
 | 
			
		||||
  ;; XXX: '#:update-mtab?' is not implemented by core 'umount'.
 | 
			
		||||
  (let ((proc (syscall->procedure int "umount2" `(* ,int)))) ;XXX
 | 
			
		||||
    (lambda* (target #:optional (flags 0) #:key (update-mtab? #f))
 | 
			
		||||
      "Unmount TARGET.  Optionally FLAGS may be one of the MNT_* or UMOUNT_*
 | 
			
		||||
constants from <sys/mount.h>."
 | 
			
		||||
  ;; XXX: '#:update-mtab?' is not implemented by core 'umount'.
 | 
			
		||||
  (let ((proc (syscall->procedure int "umount2" `(* ,int))))
 | 
			
		||||
      (let-values (((ret err)
 | 
			
		||||
                    (proc (string->pointer target) flags)))
 | 
			
		||||
        (unless (zero? ret)
 | 
			
		||||
| 
						 | 
				
			
			@ -592,7 +592,7 @@ constants from <sys/mount.h>."
 | 
			
		|||
                 (list target (strerror err))
 | 
			
		||||
                 (list err)))
 | 
			
		||||
        (when update-mtab?
 | 
			
		||||
        (remove-from-mtab target)))))
 | 
			
		||||
          (remove-from-mtab target))))))
 | 
			
		||||
 | 
			
		||||
;; Mount point information.
 | 
			
		||||
(define-record-type <mount>
 | 
			
		||||
| 
						 | 
				
			
			@ -732,17 +732,19 @@ current process."
 | 
			
		|||
(define-as-needed RB_SW_SUSPEND  #xd000fce2)
 | 
			
		||||
(define-as-needed RB_KEXEC       #x45584543)
 | 
			
		||||
 | 
			
		||||
(define-as-needed (reboot #:optional (cmd RB_AUTOBOOT))
 | 
			
		||||
(define-as-needed reboot
 | 
			
		||||
  (let ((proc (syscall->procedure int "reboot" (list int))))
 | 
			
		||||
    (lambda* (#:optional (cmd RB_AUTOBOOT))
 | 
			
		||||
      (let-values (((ret err) (proc cmd)))
 | 
			
		||||
        (unless (zero? ret)
 | 
			
		||||
          (throw 'system-error "reboot" "~S: ~A"
 | 
			
		||||
                 (list cmd (strerror err))
 | 
			
		||||
               (list err))))))
 | 
			
		||||
                 (list err)))))))
 | 
			
		||||
 | 
			
		||||
(define-as-needed (load-linux-module data #:optional (options ""))
 | 
			
		||||
(define-as-needed load-linux-module
 | 
			
		||||
  (let ((proc (syscall->procedure int "init_module"
 | 
			
		||||
                                  (list '* unsigned-long '*))))
 | 
			
		||||
    (lambda* (data #:optional (options ""))
 | 
			
		||||
      (let-values (((ret err)
 | 
			
		||||
                    (proc (bytevector->pointer data)
 | 
			
		||||
                          (bytevector-length data)
 | 
			
		||||
| 
						 | 
				
			
			@ -750,7 +752,7 @@ current process."
 | 
			
		|||
        (unless (zero? ret)
 | 
			
		||||
          (throw 'system-error "load-linux-module" "~A"
 | 
			
		||||
                 (list (strerror err))
 | 
			
		||||
               (list err))))))
 | 
			
		||||
                 (list err)))))))
 | 
			
		||||
 | 
			
		||||
(define (kernel? pid)
 | 
			
		||||
  "Return #t if PID designates a \"kernel thread\" rather than a normal
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -62,14 +62,16 @@ not be determined."
 | 
			
		|||
 | 
			
		||||
  (define (even-minor-version? version)
 | 
			
		||||
    (match (string-tokenize version %not-dot)
 | 
			
		||||
      (((= string->number major) (= string->number minor) micro)
 | 
			
		||||
      (((= string->number major) (= string->number minor) (= string->number micro))
 | 
			
		||||
       ;; This is for things like GLib, with version strings like "2.72.3".
 | 
			
		||||
       (and minor (even? minor)))
 | 
			
		||||
      (((= string->number major) . _)
 | 
			
		||||
       (and minor (even? minor) micro))
 | 
			
		||||
      (((= string->number major) (= string->number minor))
 | 
			
		||||
       ;; GNOME applications have version strings like "42.1" (only two
 | 
			
		||||
       ;; integers) and are not subject to the odd/even policy.  MAJOR should
 | 
			
		||||
       ;; be a valid number though.
 | 
			
		||||
       major)))
 | 
			
		||||
       ;; integers) and are not subject to the odd/even policy.  MAJOR and
 | 
			
		||||
       ;; MINOR should be valid numbers though; "43.alpha" is rejected.
 | 
			
		||||
       (and major minor))
 | 
			
		||||
      (_
 | 
			
		||||
       #f)))
 | 
			
		||||
 | 
			
		||||
  (define upstream-name
 | 
			
		||||
    ;; Some packages like "NetworkManager" have camel-case names.
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -74,33 +74,32 @@
 | 
			
		|||
   (variable "PATH")
 | 
			
		||||
   (files '("bin" "sbin"))))
 | 
			
		||||
 | 
			
		||||
(define-public $GUIX_EXTENSIONS_PATH
 | 
			
		||||
(define $GUIX_EXTENSIONS_PATH
 | 
			
		||||
  ;; 'GUIX_EXTENSIONS_PATH' is used by Guix to locate extension commands.
 | 
			
		||||
  ;; Like 'PATH', it's not attached to any package, so that users don't have
 | 
			
		||||
  ;; to install the 'guix' package (which is not supposed to be installed,
 | 
			
		||||
  ;; as it will mess up the 'guix pull' installation) or set the variable
 | 
			
		||||
  ;; manually.
 | 
			
		||||
  ;; Unlike 'PATH', it is attached to a package, Guix; however, it is
 | 
			
		||||
  ;; convenient to define it by default because the 'guix' package is not
 | 
			
		||||
  ;; supposed to be installed in a profile.
 | 
			
		||||
  (search-path-specification
 | 
			
		||||
   (variable "GUIX_EXTENSIONS_PATH")
 | 
			
		||||
   (files '("share/guix/extensions"))))
 | 
			
		||||
 | 
			
		||||
;; Two variables for certificates (see (guix)X.509 Certificates),
 | 
			
		||||
;; respected by 'openssl', possibly GnuTLS in the future
 | 
			
		||||
;; Two variables for certificates (info "(guix)X.509 Certificates"),
 | 
			
		||||
;; respected by OpenSSL and possibly GnuTLS in the future
 | 
			
		||||
;; (https://gitlab.com/gnutls/gnutls/-/merge_requests/1541)
 | 
			
		||||
;; and many of their dependents -- even some GnuTLS depepdents
 | 
			
		||||
;; and many of their dependents -- even some GnuTLS dependents
 | 
			
		||||
;; like Guile.  As they are not tied to a single package, define
 | 
			
		||||
;; them here to avoid duplication.
 | 
			
		||||
;;
 | 
			
		||||
;; Additionally, the 'native-search-paths' field is not thunked,
 | 
			
		||||
;; so doing (package-native-search-paths openssl)
 | 
			
		||||
;; could cause import cycle issues.
 | 
			
		||||
(define-public $SSL_CERT_DIR
 | 
			
		||||
(define $SSL_CERT_DIR
 | 
			
		||||
  (search-path-specification
 | 
			
		||||
   (variable "SSL_CERT_DIR")
 | 
			
		||||
   (separator #f)              ;single entry
 | 
			
		||||
   (files '("etc/ssl/certs"))))
 | 
			
		||||
 | 
			
		||||
(define-public $SSL_CERT_FILE
 | 
			
		||||
(define $SSL_CERT_FILE
 | 
			
		||||
  (search-path-specification
 | 
			
		||||
   (variable "SSL_CERT_FILE")
 | 
			
		||||
   (file-type 'regular)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Reference in a new issue