From 4ae910ab6a076b087458cbb1739d8ff1ba17eb0b Mon Sep 17 00:00:00 2001 From: Andy Tai Date: Sat, 6 Apr 2024 16:06:42 +0100 Subject: gnu: cpio: Update to 2.15. * gnu/packages/cpio.scm (cpio): Update to 2.15. Reviewed-by: Dale Mellor Signed-off-by: Christopher Baines Change-Id: I0a74b8b40376fd97de24125dbe92a55727c6135e --- gnu/packages/cpio.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/cpio.scm b/gnu/packages/cpio.scm index 2f7a7b2363..273d280285 100644 --- a/gnu/packages/cpio.scm +++ b/gnu/packages/cpio.scm @@ -29,14 +29,14 @@ (define-module (gnu packages cpio) (define-public cpio (package (name "cpio") - (version "2.13") + (version "2.15") (source (origin (method url-fetch) (uri (string-append "mirror://gnu/cpio/cpio-" version ".tar.bz2")) (sha256 (base32 - "0vbgnhkawdllgnkdn6zn1f56fczwk0518krakz2qbwhxmv2vvdga")) + "1nvmj2mc3nagpig75sgzvkqgzg1p01wgnlw54v4ix6ijgjwi0xlk")) (modules '((guix build utils))) (snippet '(begin -- cgit v1.2.3 From 191a4bfe1a4adfa2683281fd5c08c6c0e17899ad Mon Sep 17 00:00:00 2001 From: Wilko Meyer Date: Sun, 7 Apr 2024 22:46:30 +0200 Subject: gnu: glmark2: Update to 2023.01. * gnu/packages/gl.scm (glmark2): Update to 2023.01. Change-Id: Ia3a468d5da28801fc9c13de6995ca6599bbbb87c Signed-off-by: Christopher Baines --- gnu/packages/gl.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/gl.scm b/gnu/packages/gl.scm index f8dc8c1d9d..2894497022 100644 --- a/gnu/packages/gl.scm +++ b/gnu/packages/gl.scm @@ -1172,7 +1172,7 @@ (define-public mojoshader-with-viewport-flip (define-public glmark2 (package (name "glmark2") - (version "2021.12") + (version "2023.01") (source (origin (method git-fetch) (uri (git-reference @@ -1181,7 +1181,7 @@ (define-public glmark2 (file-name (git-file-name name version)) (sha256 (base32 - "1aydqbrg9i74s19rrdrsscx94m885yvc43v3sdqlgyh675ms98jb")))) + "094dr0ljg1hq6wymw2hb3369p4g91sn5c2qf554dl0dbdbjdqasq")))) (build-system meson-build-system) (arguments '(#:tests? #f ; no check target -- cgit v1.2.3 From ac3f7bad6768283a6a9e3739b9e893adcf03556e Mon Sep 17 00:00:00 2001 From: Andy Tai Date: Sun, 7 Apr 2024 18:23:34 -0700 Subject: gnu: stow: Update to 2.4.0. * gnu/packages/package-management.scm (stow): Update to 2.4.0. Change-Id: Icc5b81b98fc3dc53d03430fa90c2793e7ef8970d Signed-off-by: Christopher Baines --- gnu/packages/package-management.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/package-management.scm b/gnu/packages/package-management.scm index 289ee7e8d6..247807c394 100644 --- a/gnu/packages/package-management.scm +++ b/gnu/packages/package-management.scm @@ -899,14 +899,14 @@ (define-public nix (define-public stow (package (name "stow") - (version "2.3.1") + (version "2.4.0") (source (origin (method url-fetch) (uri (string-append "mirror://gnu/stow/stow-" version ".tar.gz")) (sha256 (base32 - "0jrxy12ywn7smdzdnvwzjw77l6knx6jkj2rckgykg1dpf6bdkm89")))) + "07bn3n5n8spl2vabgyl8db5dyp690qn3x92ij4ynvayyck7ngvbg")))) (build-system gnu-build-system) (inputs (list perl)) -- cgit v1.2.3 From cf29c427e90bd82556addf67885c276e067ce121 Mon Sep 17 00:00:00 2001 From: Simon Tournier Date: Mon, 8 Apr 2024 14:49:56 +0200 Subject: gnu: python-deeptools: Update to 3.5.5. * gnu/packages/bioinformatics.scm (python-deeptools): Update to 3.5.5. [build-system]: Replace by pyproject-build-system. [arguments]: Add phase that fixes 'test/test_tools.py'. Change-Id: Ibb51939275c96df2c4a1e248a03d683f2f4904ac Signed-off-by: Christopher Baines --- gnu/packages/bioinformatics.scm | 23 +++++++++++++++++++---- 1 file changed, 19 insertions(+), 4 deletions(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 7861987704..452ec1d829 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -4615,7 +4615,7 @@ (define-public python-deeptoolsintervals (define-public python-deeptools (package (name "python-deeptools") - (version "3.4.3") + (version "3.5.5") (source (origin (method git-fetch) (uri (git-reference @@ -4624,8 +4624,23 @@ (define-public python-deeptools (file-name (git-file-name name version)) (sha256 (base32 - "0l09vyynz6s6w7fnyd94rpys4a6aja6kp4gli64pngdxdz3md1nl")))) - (build-system python-build-system) + "0mgcs03amrd5157drbm6ikdg0m0szrn9xbflariz2zrrnqpsai6s")))) + (build-system pyproject-build-system) + (arguments + (list + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'fix-test + (lambda _ + (substitute* "deeptools/test/test_tools.py" + (("e_ver = _p") + "e_ver = \".\" + _p + \"-real\"")) + (substitute* "deeptools/multiBigwigSummary.py" + (("version='multiBigwigSummary") + "version='%(prog)s")) + (substitute* "deeptools/plotCoverage.py" + (("version='plotCoverage") + "version='%(prog)s"))))))) (native-inputs (list python-mock python-nose)) (propagated-inputs @@ -4637,7 +4652,7 @@ (define-public python-deeptools python-pysam python-scipy python-deeptoolsintervals - python-plotly-2.4.1)) + python-plotly)) (home-page "https://pypi.org/project/deepTools/") (synopsis "Useful tools for exploring deep sequencing data") (description "This package addresses the challenge of handling large amounts -- cgit v1.2.3 From 3ee46d58a47ca24d6d8eac16c2c553763d8c998d Mon Sep 17 00:00:00 2001 From: VÖRÖSKŐI András Date: Mon, 8 Apr 2024 20:56:45 +0200 Subject: gnu: tracy: Update to 0.10. * gnu/packages/profiling.scm (tracy, tracy-wayland): Update to 0.10. Change-Id: Iee2d306e97aff88575286e2da78430be8014b35c Signed-off-by: Christopher Baines --- gnu/packages/profiling.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/profiling.scm b/gnu/packages/profiling.scm index 3615eb417c..3862dc2e22 100644 --- a/gnu/packages/profiling.scm +++ b/gnu/packages/profiling.scm @@ -401,7 +401,7 @@ (define-public scorep-openmpi (make-scorep openmpi)) (define-public tracy-wayland (package (name "tracy-wayland") - (version "0.9.1") + (version "0.10") (source (origin (method git-fetch) @@ -410,7 +410,7 @@ (define-public tracy-wayland (commit (string-append "v" version)))) (sha256 (base32 - "1znw1r1c4vrb9vrsr08gcwynpjda8xxmb3923yykpymw2hsm0n9b")) + "1w50bckvs1nn68amzrkyrh769dhmlhk7w00kr8ac5h9ryk349p8c")) (file-name (git-file-name "tracy" version)) (modules '((guix build utils))) (snippet -- cgit v1.2.3 From 83e39340eaa416c1fd6a96f0aa95d907af27a05f Mon Sep 17 00:00:00 2001 From: "Andre A. Gomes" Date: Mon, 8 Apr 2024 22:35:59 +0300 Subject: gnu: nyxt: Update to 3.11.6. * gnu/packages/web-browsers.scm (nyxt): Update to 3.11.6. Signed-off-by: Christopher Baines --- gnu/packages/web-browsers.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/web-browsers.scm b/gnu/packages/web-browsers.scm index 543f67acb8..b3b785c5f0 100644 --- a/gnu/packages/web-browsers.scm +++ b/gnu/packages/web-browsers.scm @@ -594,7 +594,7 @@ (define-public vimb (define-public nyxt (package (name "nyxt") - (version "3.11.5") + (version "3.11.6") (source (origin (method git-fetch) @@ -603,7 +603,7 @@ (define-public nyxt (commit version))) (sha256 (base32 - "1f7pvh5bzkasbcfydd82pg7qn987ysbxk3j58dxzq2nzi05s0y4p")) + "0q7kf1a42gfvgv54hwhgiyvnsi6qhjdl1k88c3wxr1bj4ffhpvm3")) (file-name (git-file-name name version)))) (build-system gnu-build-system) (arguments -- cgit v1.2.3 From ff5ef67110b6b4cf9dd165876ed53ece5b8514a7 Mon Sep 17 00:00:00 2001 From: Wilko Meyer Date: Tue, 9 Apr 2024 00:27:34 +0200 Subject: gnu: diffoscope: Update to 263. * gnu/packages/diffoscope.scm (diffoscope): Update to 263. Change-Id: I8c9fce87dcf78fbc0f5ed319fa9e8b6d2e37fee1 Signed-off-by: Christopher Baines --- gnu/packages/diffoscope.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/diffoscope.scm b/gnu/packages/diffoscope.scm index 5bbb4f51e2..bceb465d5b 100644 --- a/gnu/packages/diffoscope.scm +++ b/gnu/packages/diffoscope.scm @@ -74,7 +74,7 @@ (define-module (gnu packages diffoscope) (define-public diffoscope (package (name "diffoscope") - (version "261") + (version "263") (source (origin (method git-fetch) @@ -83,7 +83,7 @@ (define-public diffoscope (commit version))) (file-name (git-file-name name version)) (sha256 - (base32 "0v56i2wyc4p843crl5b5w6j1awhp1a6xbfb92hm0pp8558f1h76i")))) + (base32 "1bq45gyn214hf9brnn5xlj9xvcg6p0yr8cc2p153f93pgzsyqlg4")))) (build-system python-build-system) (arguments (list -- cgit v1.2.3 From 4d1079b9c91f470ad0046cf72428728c75d8a52a Mon Sep 17 00:00:00 2001 From: Wilko Meyer Date: Wed, 18 Oct 2023 11:37:59 +0200 Subject: gnu: Add go-github-com-lestrrat-go-envload. * gnu/packages/golang-xyz.scm (go-github-com-lestrrat-go-envload): New variable. Signed-off-by: Sharlatan Hellseher Change-Id: I6bdf0b026779556bf5a0a89de0c7e868f13c286d --- gnu/packages/golang-xyz.scm | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/gnu/packages/golang-xyz.scm b/gnu/packages/golang-xyz.scm index dfd4190a7d..649bd76a72 100644 --- a/gnu/packages/golang-xyz.scm +++ b/gnu/packages/golang-xyz.scm @@ -1657,6 +1657,34 @@ (define-public go-github-com-kballard-go-shellquote (home-page "https://github.com/kballard/go-shellquote") (license license:expat)))) +(define-public go-github-com-lestrrat-go-envload + (package + (name "go-github-com-lestrrat-go-envload") + (version "0.0.0-20180220234015-a3eb8ddeffcc") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/lestrrat-go/envload") + (commit (go-version->git-ref version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0hlhvygfg67w8pqmjl91124zggnz6m750vjmmjlf8ys63nv3na05")))) + (build-system go-build-system) + (arguments + (list + #:import-path "github.com/lestrrat-go/envload")) + (native-inputs + (list go-github-com-stretchr-testify)) + (home-page "https://github.com/lestrrat-go/envload") + (synopsis "Restore and load environment variables") + (description + "This package implements a Perl5 like @code{temporary} variable, for +applications requiring reloading of configuration from environment variables +or during the tests temporarily change the value of an environment variable in +Golang.") + (license license:expat))) + (define-public go-github-com-lib-pq (package (name "go-github-com-lib-pq") -- cgit v1.2.3 From 152b636f88d4867c8c3e62cdb37ece6a1375dc80 Mon Sep 17 00:00:00 2001 From: Wilko Meyer Date: Wed, 18 Oct 2023 11:38:00 +0200 Subject: gnu: Add go-github-com-lestrrat-go-strftime. * gnu/packages/golang-xyz.scm (go-github-com-lestrrat-go-strftime): New variable. Signed-off-by: Sharlatan Hellseher Change-Id: I8f4fcc42608357c409dc38e63c1b2b1d3083b268 --- gnu/packages/golang-xyz.scm | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) diff --git a/gnu/packages/golang-xyz.scm b/gnu/packages/golang-xyz.scm index 649bd76a72..e469c0007d 100644 --- a/gnu/packages/golang-xyz.scm +++ b/gnu/packages/golang-xyz.scm @@ -1685,6 +1685,42 @@ (define-public go-github-com-lestrrat-go-envload Golang.") (license license:expat))) +(define-public go-github-com-lestrrat-go-strftime + (package + (name "go-github-com-lestrrat-go-strftime") + (version "1.0.6") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/lestrrat-go/strftime") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1iqzxmj3ijldjf99acy44qrrzvfxzn0vza3m0c9bw46bg8v1wsyc")))) + (build-system go-build-system) + (arguments + (list + #:import-path "github.com/lestrrat-go/strftime" + #:phases #~(modify-phases %standard-phases + (add-after 'unpack 'remove-benchmarks + (lambda* (#:key import-path #:allow-other-keys) + (delete-file-recursively + (string-append "src/" import-path "/bench"))))))) + (native-inputs + (list go-github-com-stretchr-testify)) + (propagated-inputs + (list go-github-com-pkg-errors + go-github-com-lestrrat-go-envload)) + (home-page "https://github.com/lestrrat-go/strftime") + (synopsis "Strftime for Golang") + (description + "This package provides a Golang library implementing the conversion of +date and time information from a given calendar time to a character string +according to a format string. It is optimized for scenarios where the same +pattern is called repeatedly.") + (license license:expat))) + (define-public go-github-com-lib-pq (package (name "go-github-com-lib-pq") -- cgit v1.2.3 From fd38158d7ff8cf39760f994c3fe1111002af833a Mon Sep 17 00:00:00 2001 From: Wilko Meyer Date: Wed, 18 Oct 2023 11:38:03 +0200 Subject: gnu: Add go-github-com-johnkerl-lumin. * gnu/packages/golang-xyz.scm (go-github-com-johnkerl-lumin): New variable. Signed-off-by: Sharlatan Hellseher --- gnu/packages/golang-xyz.scm | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/gnu/packages/golang-xyz.scm b/gnu/packages/golang-xyz.scm index e469c0007d..bf177e9419 100644 --- a/gnu/packages/golang-xyz.scm +++ b/gnu/packages/golang-xyz.scm @@ -1527,6 +1527,33 @@ (define-public go-github-com-jinzhu-copier struct to another.") (license license:expat))) +(define-public go-github-com-johnkerl-lumin + (package + (name "go-github-com-johnkerl-lumin") + (version "1.0.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/johnkerl/lumin") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1liv27pxi79q4yr1bd0wgsx31ixw53ipsgs2kp0asxj2d6z4hpiz")))) + (build-system go-build-system) + (arguments + (list + #:import-path "github.com/johnkerl/lumin")) + (home-page "https://github.com/johnkerl/lumin") + (synopsis "Command-line tool to highlight matches in files") + (description + "@command{lumin} is a simple command-line program which highlights matches +to a specified pattern (string or regex) in the specified files. This is like +@code{grep} with @code{--color}, except that @code{lumin} shows all lines, not +just matching lines. This package proviedes a CLI tool and @code{colors} +library.") + (license license:bsd-2))) + (define-public go-github-com-josharian-intern (package (name "go-github-com-josharian-intern") -- cgit v1.2.3 From d43b4d77581c6e330ff974d5c2108bbe09735ba4 Mon Sep 17 00:00:00 2001 From: Wilko Meyer Date: Wed, 18 Oct 2023 11:38:23 +0200 Subject: gnu: Add go-github-com-facette-natsort. * gnu/packages/golang-xyz.scm (go-github-com-facette-natsort): New variable. Signed-off-by: Sharlatan Hellseher Change-Id: I23ab432b5a7f35d2f3144cfd68cfff75683eb592 --- gnu/packages/golang-xyz.scm | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/gnu/packages/golang-xyz.scm b/gnu/packages/golang-xyz.scm index bf177e9419..9968bc9516 100644 --- a/gnu/packages/golang-xyz.scm +++ b/gnu/packages/golang-xyz.scm @@ -29,6 +29,7 @@ ;;; Copyright © 2023 Sergey Trofimov ;;; Copyright © 2023 Thomas Ieong ;;; Copyright © 2023 Timo Wilken +;;; Copyright © 2023 Wilko Meyer ;;; Copyright © 2024 Artyom V. Poptsov ;;; Copyright © 2024 Troy Figiel ;;; @@ -1089,6 +1090,31 @@ (define-public go-github-com-elliotchance-orderedmap for @code{Set}, @code{Get}, @code{Delete} and @code{Len}.") (license license:expat))) +(define-public go-github-com-facette-natsort + (package + (name "go-github-com-facette-natsort") + (version "0.0.0-20181210072756-2cd4dd1e2dcb") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/facette/natsort") + (commit (go-version->git-ref version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0kfas7nq7cfrbaqvpmifg2p8v8z0d2kdqjb7p9y6r0rpdzl2zy6p")))) + (build-system go-build-system) + (arguments + (list + #:import-path "github.com/facette/natsort")) + (home-page "https://github.com/facette/natsort") + (synopsis "Natural strings sorting in Go") + (description + "This package provides an implementation of +@url{https://web.archive.org/web/20210803201519/http://davekoelle.com/alphanum.html,the +Alphanum Algorithm} developed by Dave Koelle in Go.") + (license license:bsd-3))) + (define-public go-github-com-gabriel-vasile-mimetype (package (name "go-github-com-gabriel-vasile-mimetype") -- cgit v1.2.3 From e8d3d5224ebd200a025a514a558fb63c60701332 Mon Sep 17 00:00:00 2001 From: Wilko Meyer Date: Wed, 18 Oct 2023 11:38:20 +0200 Subject: gnu: Add miller. * gnu/packages/textutils.scm (miller): New variable. Signed-off-by: Sharlatan Hellseher Change-Id: Ic381b5e28e561382c49f843aa1baadf2d2d6f294 --- gnu/packages/textutils.scm | 55 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 55 insertions(+) diff --git a/gnu/packages/textutils.scm b/gnu/packages/textutils.scm index ff42f748ea..e5cb96d524 100644 --- a/gnu/packages/textutils.scm +++ b/gnu/packages/textutils.scm @@ -69,6 +69,7 @@ (define-module (gnu packages textutils) #:use-module (gnu packages golang) #:use-module (gnu packages golang-build) #:use-module (gnu packages golang-check) + #:use-module (gnu packages golang-compression) #:use-module (gnu packages golang-crypto) #:use-module (gnu packages golang-xyz) #:use-module (gnu packages java) @@ -1535,6 +1536,60 @@ (define-public csvdiff (define-public go-github-com-aswinkarthik-csvdiff (deprecated-package "go-github-com-aswinkarthik-csvdiff" csvdiff)) +(define-public miller + (package + (name "miller") + (version "6.12.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/johnkerl/miller") + (commit (go-version->git-ref version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "195lgayq5z7ndag3w495fs618pkrhz426kg0kp3s5sa68vr1madp")))) + (build-system go-build-system) + (arguments + (list + #:go go-1.19 + #:install-source? #f + #:import-path "github.com/johnkerl/miller/cmd/mlr" + #:unpack-path "github.com/johnkerl/miller" + #:phases + #~(modify-phases %standard-phases + ;; TODO: Build all provided documentation. + (add-after 'install 'install-man-pages + (lambda* (#:key unpack-path #:allow-other-keys) + (with-directory-excursion (string-append "src/" unpack-path) + (invoke "make" (string-append "PREFIX=" #$output) + "-C" "man" "install"))))))) + (native-inputs + (list go-github-com-facette-natsort + go-github-com-johnkerl-lumin + go-github-com-kballard-go-shellquote + go-github-com-klauspost-compress + go-github-com-lestrrat-go-strftime + go-github-com-mattn-go-isatty + ;; Optional, not packed in Guix + ;; go-github-com-nine-lives-later-go-windows-terminal-sequences + go-github-com-pkg-profile + go-github-com-stretchr-testify + go-golang-org-x-sys + go-golang-org-x-term + go-golang-org-x-text + python-wrapper + python-mkdocs-material + ruby)) + (home-page "https://miller.readthedocs.io/") + (synopsis "Text-formatted data processing tool") + (description + "Miller (@command{mlr}) is like @command{awk}, @command{sed}, +@command{cut}, @command{join}, and @command{sort} for data formats such as +CSV, TSV, JSON, JSON Lines, and positionally-indexed. It supports format +conversion and pretty-printing.") + (license license:bsd-2))) + (define-public ack (package (name "ack") -- cgit v1.2.3 From 0f3f787043ab0aa01b2fc3679c2e72ed70675ba3 Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Tue, 9 Apr 2024 16:16:47 +0100 Subject: gnu: csvdiff: Adjust inputs. * gnu/packages/textutils.scm (csvdiff): Adjust inputs. [arguments]: Swap to list style, do not install sources. [native-inputs]: Swap from propagated-inputs to native-inputs. Remove indirect Golang modules: go-github-com-mattn-go-colorable, go-github-com-oneofone-xxhash, go-github-com-spaolacci-murmur3, and go-golang-org-x-sys. Change-Id: I903d8869b8c468c15a2e78a565bcaaf34594e34b --- gnu/packages/textutils.scm | 18 ++++++++---------- 1 file changed, 8 insertions(+), 10 deletions(-) diff --git a/gnu/packages/textutils.scm b/gnu/packages/textutils.scm index e5cb96d524..b87c65cb89 100644 --- a/gnu/packages/textutils.scm +++ b/gnu/packages/textutils.scm @@ -1505,17 +1505,15 @@ (define-public csvdiff "0cd1ikxsypjqisfnmr7zix3g7x8p892w77086465chyd39gpk97b")))) (build-system go-build-system) (arguments - '(#:import-path "github.com/aswinkarthik/csvdiff")) - (propagated-inputs - (list go-golang-org-x-sys - go-github-com-stretchr-testify - go-github-com-spf13-cobra - go-github-com-spf13-afero - go-github-com-spaolacci-murmur3 - go-github-com-mattn-go-colorable + (list + #:install-source? #f + #:import-path "github.com/aswinkarthik/csvdiff")) + (native-inputs + (list go-github-com-cespare-xxhash go-github-com-fatih-color - go-github-com-cespare-xxhash - go-github-com-oneofone-xxhash)) + go-github-com-spf13-afero + go-github-com-spf13-cobra + go-github-com-stretchr-testify)) (home-page "https://github.com/aswinkarthik/csvdiff") (synopsis "Fast diff tool for comparing CSV files") (description "@code{csvdiff} is a diff tool to compute changes between two -- cgit v1.2.3 From eed3fcceed0a62838fa927275e7867a3e4c3d2d8 Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Tue, 9 Apr 2024 16:48:00 +0100 Subject: gnu: vale: Refresh package style. * gnu/packages/textutils.scm (vale): [source]: Remove some packaged module from vendor. [arguments]: Move above native-inputs. Swap to list style, do not install source. [description]: Fix indentation. Change-Id: I3efbffc74e76ba2c88467bfc7e79b06d4d05ee18 --- gnu/packages/textutils.scm | 22 ++++++++++++++++------ 1 file changed, 16 insertions(+), 6 deletions(-) diff --git a/gnu/packages/textutils.scm b/gnu/packages/textutils.scm index b87c65cb89..02a75a0aba 100644 --- a/gnu/packages/textutils.scm +++ b/gnu/packages/textutils.scm @@ -1433,23 +1433,33 @@ (define-public vale (commit (string-append "v" version)))) (sha256 (base32 "0d07fwha2220m8j24h527xl0gnl3svvyaywflgk5292d6g49ach2")) - (file-name (git-file-name name version)))) + (file-name (git-file-name name version)) + (modules '((guix build utils))) + ;; Remove some vendor modules. + ;; TODO: Pack all of them and remove vendor directory completely. + (snippet + '(for-each + delete-file-recursively + (list "vendor/github.com/mitchellh/mapstructure" + "vendor/github.com/olekukonko/tablewriter" + "vendor/github.com/spf13/afero" + "vendor/github.com/urfave/cli"))))) (build-system go-build-system) + (arguments + (list #:install-source? #f + #:import-path "github.com/errata-ai/vale")) (native-inputs (list go-github-com-mitchellh-mapstructure go-github-com-olekukonko-tablewriter go-github-com-spf13-afero go-github-com-urfave-cli)) - (arguments - `(#:import-path "github.com/errata-ai/vale" - #:install-source? #f)) (home-page "https://github.com/errata-ai/vale") (synopsis "Fully customizable syntax-aware linter that focuses on your style") (description "Vale is a fully extensible linter that focuses on your own writing style by making use of rules in individual YAML files. It is syntax-aware on markup -languages such as HTML, Markdown, Asciidoc, and reStructuredText. The community -around it also has a list of style guides implemented with Vale in +languages such as HTML, Markdown, Asciidoc, and reStructuredText. The +community around it also has a list of style guides implemented with Vale in @url{https://github.com/errata-ai/styles, their styles repo}.") (license license:expat))) -- cgit v1.2.3 From 9a4c57f55f644ccd52d0d810f1db04f8c85ad8b9 Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Tue, 9 Apr 2024 17:01:16 +0100 Subject: gnu: vale: Unbundle more packages. * gnu/packages/textutils.scm (vale): [source]: Remove more vendored modules. [native-inputs]: Add go-github-com-fatih-color, go-github-com-gobwas-glob, go-github-com-mitchellh-go-homedir, go-github-com-yuin-goldmark, go-golang-org-x-net-html, go-gopkg-in-ini-v1, and go-gopkg-in-yaml-v2. Change-Id: Ia7e87888fd286b54157382d01c8a3ca8475e3cb0 --- gnu/packages/textutils.scm | 27 ++++++++++++++++++++++----- 1 file changed, 22 insertions(+), 5 deletions(-) diff --git a/gnu/packages/textutils.scm b/gnu/packages/textutils.scm index 02a75a0aba..38452339c0 100644 --- a/gnu/packages/textutils.scm +++ b/gnu/packages/textutils.scm @@ -1435,24 +1435,41 @@ (define-public vale (base32 "0d07fwha2220m8j24h527xl0gnl3svvyaywflgk5292d6g49ach2")) (file-name (git-file-name name version)) (modules '((guix build utils))) - ;; Remove some vendor modules. + ;; Remove some available vendor modules. ;; TODO: Pack all of them and remove vendor directory completely. (snippet '(for-each delete-file-recursively - (list "vendor/github.com/mitchellh/mapstructure" + (list "vendor/github.com/fatih/color" + "vendor/github.com/mitchellh/mapstructure" + "vendor/github.com/gobwas/glob" + "vendor/github.com/mitchellh/go-homedir" "vendor/github.com/olekukonko/tablewriter" "vendor/github.com/spf13/afero" - "vendor/github.com/urfave/cli"))))) + "vendor/github.com/urfave/cli" + "vendor/github.com/yuin/goldmark" + "vendor/golang.org/x/net/html" + "vendor/gopkg.in/ini.v1" + "vendor/gopkg.in/yaml.v2"))))) (build-system go-build-system) (arguments (list #:install-source? #f #:import-path "github.com/errata-ai/vale")) (native-inputs - (list go-github-com-mitchellh-mapstructure + (list go-github-com-fatih-color + go-github-com-mitchellh-mapstructure + go-github-com-gobwas-glob + ;; go-github-com-jdkato-prose + ;; go-github-com-jdkato-regexp + go-github-com-mitchellh-go-homedir go-github-com-olekukonko-tablewriter + ;; go-github-com-remeh-sizedwaitgroup go-github-com-spf13-afero - go-github-com-urfave-cli)) + go-github-com-urfave-cli + go-github-com-yuin-goldmark + go-golang-org-x-net-html + go-gopkg-in-ini-v1 + go-gopkg-in-yaml-v2)) (home-page "https://github.com/errata-ai/vale") (synopsis "Fully customizable syntax-aware linter that focuses on your style") (description -- cgit v1.2.3 From 9a1abc1352b772e7062a170083344f4803280979 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Tue, 9 Apr 2024 12:03:34 +0300 Subject: gnu: netpbm: Fix build on powerpc-linux. * gnu/packages/netpbm.scm (netpbm)[arguments]: Adjust the 'setup-check phase to skip 2 tests when building for powerpc-linux. Change-Id: Ie8f23bed0f5d442df3a19e227bbdc3a17fa77511 --- gnu/packages/netpbm.scm | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/gnu/packages/netpbm.scm b/gnu/packages/netpbm.scm index 489a3c7a43..ce00df9479 100644 --- a/gnu/packages/netpbm.scm +++ b/gnu/packages/netpbm.scm @@ -2,6 +2,7 @@ ;;; Copyright © 2013, 2015 Andreas Enge ;;; Copyright © 2015, 2016, 2021 Ludovic Courtès ;;; Copyright © 2019, 2020 Tobias Geerinckx-Rice +;;; Copyright © 2024 Efraim Flashner ;;; ;;; This file is part of GNU Guix. ;;; @@ -32,7 +33,8 @@ (define-module (gnu packages netpbm) #:use-module (guix build-system gnu) #:use-module ((guix licenses) #:select (gpl2)) #:use-module (guix packages) - #:use-module (guix svn-download)) + #:use-module (guix svn-download) + #:use-module (guix utils)) (define-public netpbm (package @@ -158,6 +160,12 @@ (define-syntax drop (("pnmremap1.test") "") (("gif-roundtrip.test") "") + ;; These two tests fail on powerpc-linux. + ,@(if (target-ppc32?) + `((("pbmtog3\\.test") "") + (("g3-roundtrip\\.test") "")) + '()) + ;; These two tests started failing in netpbm-10.78.3. (("jpeg-roundtrip.test") "") (("pbmtext.test") "") -- cgit v1.2.3 From d6a6af892a3c212a088dc518547829994f945625 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Tue, 9 Apr 2024 16:10:26 -0400 Subject: .guix-authorizations: Remove Raghav Gururajan due to inactivity. * .guix-authorizations: Remove raghavgururajan. Change-Id: Iec45c971c4ec4cd1721d9b6299dc44bc7bb1a94e --- .guix-authorizations | 2 -- 1 file changed, 2 deletions(-) diff --git a/.guix-authorizations b/.guix-authorizations index c52aa39755..be6de58d71 100644 --- a/.guix-authorizations +++ b/.guix-authorizations @@ -85,8 +85,6 @@ (;; primary: "7E9F 5BF6 1680 4367 127B 7A87 F9E6 9FB8 5A75 54F1" "A420 7B56 C255 109F 2CB3 157E 4990 97AE 5EA8 15D9" (name "podiki")) - ("CD2D 5EAA A98C CB37 DA91 D6B0 5F58 1664 7F8B E551" - (name "raghavgururajan")) ("BCA6 89B6 3655 3801 C3C6 2150 197A 5888 235F ACAC" (name "rekado")) (;; From commit cc51c03ff867d4633505354819c6d88af88bf919 (March 2020). -- cgit v1.2.3 From 0945e9f17a3fa77cf42665d7487a555adf76b4e8 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Tue, 9 Apr 2024 16:16:36 -0400 Subject: .guix-authorizations: Remove Björn Höfling due to inactivity. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * .guix-authorizations: Remove hoebjo. Change-Id: I270cef605de30e1924749ad143f166cca0b54e8d --- .guix-authorizations | 2 -- 1 file changed, 2 deletions(-) diff --git a/.guix-authorizations b/.guix-authorizations index be6de58d71..0622098bff 100644 --- a/.guix-authorizations +++ b/.guix-authorizations @@ -40,8 +40,6 @@ (;; primary: "220F 98D9 5E86 204C 0036 DA7B 6DEC 4360 408B 4185" "F4C2 D1DF 3FDE EA63 D1D3 0776 ACC6 6D09 CA52 8292" (name "hako")) - ("2219 43F4 9E9F 276F 9499 3382 BF28 6CB6 593E 5FFD" - (name "hoebjo")) ("B943 509D 633E 80DD 27FC 4EED 634A 8DFF D3F6 31DF" (name "htgoebel")) (;; primary: "66A5 6D9C 9A98 BE7F 719A B401 2652 5665 AE72 7D37" -- cgit v1.2.3 From cff5ecaf67ea2f598a332a7b650ec8647ff624f5 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Tue, 9 Apr 2024 16:19:03 -0400 Subject: teams: Remove Raghav Gururajan from their teams due to inactivity. * etc/teams.scm (Raghav Gururajan): Remove from the GNOME and MENTORS teams. Change-Id: Ic1a583f08636f4cfd34635ab04091844b9957e08 --- etc/teams.scm | 4 ---- 1 file changed, 4 deletions(-) diff --git a/etc/teams.scm b/etc/teams.scm index 570793b539..f384ef7de0 100755 --- a/etc/teams.scm +++ b/etc/teams.scm @@ -663,10 +663,6 @@ (define-member (person "Simon Tournier" "zimon.toutoune@gmail.com") julia core mentors) -(define-member (person "Raghav Gururajan" - "rg@raghavgururajan.name") - gnome mentors) - (define-member (person "宋文武" "iyzsong@envs.net") games localization lxqt qt xfce) -- cgit v1.2.3 From 8bfa49444d688fd39d66dfa7d8a5d8fc04b3b571 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Tue, 9 Apr 2024 16:20:31 -0400 Subject: teams: Remove Björn Höfling from their team due to inactivity. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * etc/teams.scm (Björn Höfling): Remove from the JAVA team. Change-Id: I384e4aebff18485ea5c5bf444a46dc88a64af72d --- etc/teams.scm | 4 ---- 1 file changed, 4 deletions(-) diff --git a/etc/teams.scm b/etc/teams.scm index f384ef7de0..d537e83efc 100755 --- a/etc/teams.scm +++ b/etc/teams.scm @@ -595,10 +595,6 @@ (define-member (person "Tobias Geerinckx-Rice" "me@tobias.gr") core kernel mentors) -(define-member (person "Björn Höfling" - "bjoern.hoefling@bjoernhoefling.de") - java) - (define-member (person "Leo Famulari" "leo@famulari.name") kernel) -- cgit v1.2.3 From 9acc0567254c8b5bcdca79287660019da7fdada4 Mon Sep 17 00:00:00 2001 From: 宋文武 Date: Wed, 10 Apr 2024 19:25:17 +0800 Subject: gnu: kdelibs4support: Fix tests. Reported in: * gnu/packages/kde-frameworks.scm (kdelibs4support)[source]: Add snippet. Change-Id: I12e16b8003e9b7e857492e51105d7c3580e1c35f --- gnu/packages/kde-frameworks.scm | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/gnu/packages/kde-frameworks.scm b/gnu/packages/kde-frameworks.scm index f487ac9a30..95c0f95e8c 100644 --- a/gnu/packages/kde-frameworks.scm +++ b/gnu/packages/kde-frameworks.scm @@ -3670,7 +3670,16 @@ (define-public kdelibs4support (version-major+minor version) "/portingAids/" name "-" version ".tar.xz")) (sha256 - (base32 "17473him2fjfcw5f88diarqac815wsakfyb9fka82a4qqh9l41mc")))) + (base32 "17473him2fjfcw5f88diarqac815wsakfyb9fka82a4qqh9l41mc")) + (modules '((guix build utils))) + (snippet + '(substitute* "autotests/kmimetypetest.cpp" + ;; Adjust the test for shared-mime-info changes: + ;; https://gitlab.freedesktop.org/xdg/shared-mime-info/-/issues/202 + ;; https://gitlab.freedesktop.org/xdg/shared-mime-info/-/merge_requests/255 + (("empty document") "Empty document") + (("Bzip archive") "Bzip2 archive") + (("<< \"application/x-bzip") "<< \"application/x-bzip2"))))) (build-system cmake-build-system) (native-inputs (list dbus -- cgit v1.2.3 From a1a13268b7da93d8cfd3ce3abf2cbb3cd894e1ab Mon Sep 17 00:00:00 2001 From: Sughosha Date: Sun, 7 Apr 2024 08:51:54 +0530 Subject: gnu: falkon: Enable KDE Frameworks Integration plugin. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/kde-internet.scm (falkon)[inputs]: Add kcoreaddons and kcrash. Change-Id: I5cacc660daea8167bb072c41875d29fbf2caf74b Signed-off-by: 宋文武 --- gnu/packages/kde-internet.scm | 2 ++ 1 file changed, 2 insertions(+) diff --git a/gnu/packages/kde-internet.scm b/gnu/packages/kde-internet.scm index 4c519b93fd..b9d3502b09 100644 --- a/gnu/packages/kde-internet.scm +++ b/gnu/packages/kde-internet.scm @@ -140,6 +140,8 @@ (define-public falkon (list extra-cmake-modules pkg-config qttools-5)) (inputs (list karchive + kcoreaddons + kcrash ki18n kio kwallet -- cgit v1.2.3 From db49eed2d3b1982c13582a8710782b4091868711 Mon Sep 17 00:00:00 2001 From: Zheng Junjie Date: Wed, 13 Mar 2024 22:09:05 +0800 Subject: gnu: plasma: Fix QtQuickControls2 theme. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Suggested in . * gnu/packages/kde-plasma.scm (plasma)[propagated-inputs]: Add qqc2-desktop-style. Change-Id: I6bbed3ddaa339c25a996b6ab74acbc3179e28269 Signed-off-by: 宋文武 --- gnu/packages/kde-plasma.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/kde-plasma.scm b/gnu/packages/kde-plasma.scm index 1d41d35a56..a1c17d3346 100644 --- a/gnu/packages/kde-plasma.scm +++ b/gnu/packages/kde-plasma.scm @@ -1474,7 +1474,7 @@ (define-public plasma (mkdir #$output)))) ;; TODO: cleanup, check what is no need (propagated-inputs (list kdeclarative ;; require by sddm breeze theme - + qqc2-desktop-style ; qtquickcontrols2 theme baloo breeze-icons ; default mouse icon breeze -- cgit v1.2.3 From 525beb6c379352ee6e6fa7e91e3f85f41219c653 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 9 Apr 2024 18:45:23 +0200 Subject: gnu: Add r-trycatchlog. * gnu/packages/cran.scm (r-trycatchlog): New variable. Change-Id: I092c8ada3e139e21e07f000041a5e2fc345af977 --- gnu/packages/cran.scm | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 8207f09725..df3771c214 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -9683,6 +9683,27 @@ (define-public r-truncdist packages are automatically available for truncation.") (license license:gpl2+))) +(define-public r-trycatchlog + (package + (name "r-trycatchlog") + (version "1.3.1") + (source + (origin + (method url-fetch) + (uri (cran-uri "tryCatchLog" version)) + (sha256 + (base32 "0k40a48qzwmardjnkf0h5s5zryivzvdanz61kxdqdfqlil19ma0d")))) + (properties `((upstream-name . "tryCatchLog"))) + (build-system r-build-system) + (native-inputs (list r-knitr)) + (home-page "https://github.com/aryoda/tryCatchLog") + (synopsis "Advanced tryCatch and try functions") + (description + "This package provides advanced @code{tryCatch} and @code{try} functions +for better error handling (logging, stack trace with source code references +and support for post-mortem analysis via dump files).") + (license license:gpl3))) + (define-public r-rsolnp (package (name "r-rsolnp") -- cgit v1.2.3 From 467e13ce50e94cb5c646cd03c3937c97956975b1 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 9 Apr 2024 18:46:42 +0200 Subject: gnu: Add r-pki. * gnu/packages/cran.scm (r-pki): New variable. Change-Id: Ic8bd9a449b040e66093939e2d64b05e4f97f9bd3 --- gnu/packages/cran.scm | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index df3771c214..b9ce40432b 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -6619,6 +6619,30 @@ (define-public r-pkgload you to rapidly iterate while developing a package.") (license license:gpl3))) +(define-public r-pki + (package + (name "r-pki") + (version "0.1-12") + (source + (origin + (method url-fetch) + (uri (cran-uri "PKI" version)) + (sha256 + (base32 "0nidg6l9nrmpyimi502fydy22r247w9i4ngb2xdbxjvfhr17m0xd")))) + (properties `((upstream-name . "PKI"))) + (build-system r-build-system) + (inputs (list openssl zlib)) + (propagated-inputs (list r-base64enc)) + (native-inputs (list pkg-config)) + (home-page "http://www.rforge.net/PKI") + (synopsis "Public Key Infrastucture for R based on the X.509 standard") + (description + "This is a package containing Public Key Infrastucture functions such as +verifying certificates, RSA encryption and signing, which can be used to build +PKI infrastructure and perform cryptographic tasks.") + ;; Either of these licenses. + (license (list license:gpl2 license:gpl3)))) + (define-public r-pvclust (package (name "r-pvclust") -- cgit v1.2.3 From daf31b4043e5378d2fb3105f48c2a51ccc9b4d3e Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 9 Apr 2024 18:45:29 +0200 Subject: gnu: r-valr: Update to 0.8.0. * gnu/packages/bioconductor.scm (r-valr): Update to 0.8.0. Change-Id: I9d5a7d2c3600f82db4b291af1485f9d075d26627 --- gnu/packages/bioconductor.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm index 0beef9ace4..35427ef624 100644 --- a/gnu/packages/bioconductor.scm +++ b/gnu/packages/bioconductor.scm @@ -12023,14 +12023,14 @@ (define-public r-tximport (define-public r-valr (package (name "r-valr") - (version "0.7.0") + (version "0.8.0") (source (origin (method url-fetch) (uri (cran-uri "valr" version)) (sha256 (base32 - "038s5n8cbffpb9132rpw7q82cxfzlsc86fcywhv63c8szm5g9nrk")))) + "0jf47yfi8dr8mgqv1gbl2kd7wgyiwsnipiwfdhf9l346yg9aj96l")))) (build-system r-build-system) (propagated-inputs (list r-broom -- cgit v1.2.3 From a82e38586a8a02fc1e3783a3b988daceec5c7fab Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 9 Apr 2024 18:45:29 +0200 Subject: gnu: r-codedepends: Update to 0.6.6. * gnu/packages/bioconductor.scm (r-codedepends): Update to 0.6.6. [native-inputs]: Add r-knitr. Change-Id: I38378f3c7406166007da48eed749526d6ddb9277 --- gnu/packages/bioconductor.scm | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm index 35427ef624..8b3fec2390 100644 --- a/gnu/packages/bioconductor.scm +++ b/gnu/packages/bioconductor.scm @@ -13006,18 +13006,19 @@ (define-public r-pepsnmr (define-public r-codedepends (package (name "r-codedepends") - (version "0.6.5") + (version "0.6.6") (source (origin (method url-fetch) (uri (cran-uri "CodeDepends" version)) (sha256 (base32 - "0l7kiv3awx50glf5cs841b4zzsff1ml90f0zr868ygvwsr4ps1hq")))) + "0msq5ksjqp2pjzl6f1vizw53gdf5lz520bpdr5dbjwz5mc1mp0bz")))) (properties `((upstream-name . "CodeDepends"))) (build-system r-build-system) (propagated-inputs (list r-codetools r-graph r-xml)) + (native-inputs (list r-knitr)) (home-page "https://cran.r-project.org/web/packages/CodeDepends") (synopsis "Analysis of R code for reproducible research and code comprehension") (description -- cgit v1.2.3 From e3cf4366c90e70cd84cf934176a4089101bccd0e Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 9 Apr 2024 18:45:29 +0200 Subject: gnu: r-broom-helpers: Update to 1.15.0. * gnu/packages/cran.scm (r-broom-helpers): Update to 1.15.0. Change-Id: I7761a057a694119f56c3e2bd5dd6f0702136d975 --- gnu/packages/cran.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index b9ce40432b..720dd62bda 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -279,13 +279,13 @@ (define-public r-brio (define-public r-broom-helpers (package (name "r-broom-helpers") - (version "1.14.0") + (version "1.15.0") (source (origin (method url-fetch) (uri (cran-uri "broom.helpers" version)) (sha256 - (base32 "14vaqxv12yrvqllp8552nx68wk2qfjcy1iy7bajkspgdpwsjzhfd")))) + (base32 "0gm9k2d73p6bhcmzc43qgy6v27pi036369dldz77hd5h5i95hp7c")))) (properties `((upstream-name . "broom.helpers"))) (build-system r-build-system) (propagated-inputs (list r-broom -- cgit v1.2.3 From 49fc4644df4fad61dd7879480872e3e5406e03db Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 9 Apr 2024 18:45:30 +0200 Subject: gnu: r-ggstats: Update to 0.6.0. * gnu/packages/cran.scm (r-ggstats): Update to 0.6.0. Change-Id: I9997cc7342f829339b8461d609d84dc76057692b --- gnu/packages/cran.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 720dd62bda..a8ccd611bf 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -1083,13 +1083,13 @@ (define-public r-ggfittext (define-public r-ggstats (package (name "r-ggstats") - (version "0.5.1") + (version "0.6.0") (source (origin (method url-fetch) (uri (cran-uri "ggstats" version)) (sha256 - (base32 "1jcydapwarl1cxinm80rjmmli8vmlid8alnh6w484bh7nwzmcsic")))) + (base32 "103d1d4azdiaf5i2dgr23wrx6svc0aq85axrfj0v2b2lkwial2pq")))) (properties `((upstream-name . "ggstats"))) (build-system r-build-system) (propagated-inputs (list r-broom-helpers -- cgit v1.2.3 From 86a28d0370090084e89e1e8296a9ba0cdf7fc0ee Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 9 Apr 2024 18:45:30 +0200 Subject: gnu: r-ggstatsplot: Update to 0.12.3. * gnu/packages/cran.scm (r-ggstatsplot): Update to 0.12.3. Change-Id: If7ff6313571682ef2380acaca82038539dbca48c --- gnu/packages/cran.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index a8ccd611bf..a6298bb095 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -1117,13 +1117,13 @@ (define-public r-ggstats (define-public r-ggstatsplot (package (name "r-ggstatsplot") - (version "0.12.2") + (version "0.12.3") (source (origin (method url-fetch) (uri (cran-uri "ggstatsplot" version)) (sha256 (base32 - "0nriqsfk48ijkkg06i87zp2frp7yz3c4gfmfgfig6v8mcmj19zwr")))) + "0lm48b664nin8f32a3xpqvc95cizi27sls5m4vrymfz3aarcwrxr")))) (properties `((upstream-name . "ggstatsplot"))) (build-system r-build-system) (propagated-inputs (list r-correlation -- cgit v1.2.3 From c94de5b451753cb72fd57d65ea104600b374075c Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 9 Apr 2024 18:45:30 +0200 Subject: gnu: r-rticles: Update to 0.27. * gnu/packages/cran.scm (r-rticles): Update to 0.27. Change-Id: I7191c908b8df1c98293daa152927a77b91e8dac7 --- gnu/packages/cran.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index a6298bb095..b377623827 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -1792,14 +1792,14 @@ (define-public r-wheatmap (define-public r-rticles (package (name "r-rticles") - (version "0.26") + (version "0.27") (source (origin (method url-fetch) (uri (cran-uri "rticles" version)) (sha256 (base32 - "0v1sji223iifqmq9hakr1wcgzfca52nvmh3vbi6s6d309qc77vkk")))) + "1a5i8vzcf058dqk30yir3ngs02f17s4d0b0px31pxa0d1ak1yfh7")))) (properties `((upstream-name . "rticles"))) (build-system r-build-system) (propagated-inputs -- cgit v1.2.3 From 91d23c1acc62e26b0212cd1909d0baebcc4f826f Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 9 Apr 2024 18:45:30 +0200 Subject: gnu: r-secretbase: Update to 0.4.0. * gnu/packages/cran.scm (r-secretbase): Update to 0.4.0. Change-Id: I60499def8f224bb93944448e0c23186641c2c892 --- gnu/packages/cran.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index b377623827..90a477207b 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -3996,13 +3996,13 @@ (define-public r-rvest (define-public r-secretbase (package (name "r-secretbase") - (version "0.3.0.1") + (version "0.4.0") (source (origin (method url-fetch) (uri (cran-uri "secretbase" version)) (sha256 - (base32 "0mhfkkl35g10lgz4llm017f2jbgp7vmgi0g301r4agx1iqj5g51w")))) + (base32 "0b05js4vh6pkkiqms2qmipy5pq96q1i5grb951skk0h953cmwf11")))) (properties `((upstream-name . "secretbase"))) (build-system r-build-system) (home-page "https://shikokuchuo.net/secretbase/") -- cgit v1.2.3 From 00515e7e69f92a94aafa1f0592914619fdff0fa6 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 9 Apr 2024 18:45:30 +0200 Subject: gnu: r-htmltools: Update to 0.5.8.1. * gnu/packages/cran.scm (r-htmltools): Update to 0.5.8.1. Change-Id: Ib40ad8eb79e10247d306196894ad4e03c04a582e --- gnu/packages/cran.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 90a477207b..1ea32250a5 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -4625,13 +4625,13 @@ (define-public r-howmany (define-public r-htmltools (package (name "r-htmltools") - (version "0.5.8") + (version "0.5.8.1") (source (origin (method url-fetch) (uri (cran-uri "htmltools" version)) (sha256 (base32 - "15g6ygpz9qfbf2ihapm5vyh8jwddhba6yikgvnara2wdrqcfp71n")))) + "0xpi2g87vwanp0kbs22j90pa2bban3nwrdjdb3257hq6xj9j5xpr")))) (build-system r-build-system) (propagated-inputs (list r-base64enc r-digest r-fastmap r-rlang)) -- cgit v1.2.3 From 1b3a417cb62821efdd3c7f2e5b0667aad90fb7be Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 9 Apr 2024 18:45:31 +0200 Subject: gnu: r-pvclust: Update to 2.2-0. * gnu/packages/cran.scm (r-pvclust): Update to 2.2-0. Change-Id: Ia3397baada3ca9ca0546be7d717f96004c214566 --- gnu/packages/cran.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 1ea32250a5..298abe62b5 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -6661,7 +6661,7 @@ (define-public r-pvclust resampling for assessing the uncertainty in hierarchical cluster analysis. It provides an AU (approximately unbiased) P-value as well as a BP (bootstrap probability) value for each cluster in a dendrogram.") - (license license:gpl2+))) + (license license:gpl2+))) (define-public r-rcpp (package -- cgit v1.2.3 From c6c846c0444361a8fb04aa859150a307c45ba5e4 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 9 Apr 2024 18:45:31 +0200 Subject: gnu: r-hardyweinberg: Update to 1.7.8. * gnu/packages/cran.scm (r-hardyweinberg): Update to 1.7.8. [native-inputs]: Add r-knitr and r-rmarkdown. Change-Id: I877343e49057c8218adcfcf44ad42c26556829fb --- gnu/packages/cran.scm | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 298abe62b5..6844775b85 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -9754,18 +9754,19 @@ (define-public r-rsolnp (define-public r-hardyweinberg (package (name "r-hardyweinberg") - (version "1.7.7") + (version "1.7.8") (source (origin (method url-fetch) (uri (cran-uri "HardyWeinberg" version)) (sha256 (base32 - "058bfb43i2vjrc2iy3q3izlijw2hh61rl47c9gcf327xlp9x6wnh")))) + "1wddy32zljyya37isqb54sqhpp07s2kizjl36i08pj37bbza7yac")))) (properties `((upstream-name . "HardyWeinberg"))) (build-system r-build-system) (propagated-inputs (list r-mice r-nnet r-rcpp r-rsolnp r-shape)) + (native-inputs (list r-knitr r-rmarkdown)) (home-page "https://cran.r-project.org/package=HardyWeinberg") (synopsis "Statistical tests and graphics for Hardy-Weinberg equilibrium") (description -- cgit v1.2.3 From e5acdf788b1b4bc23e448b9acd6810ab2f4c4a00 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 9 Apr 2024 18:45:31 +0200 Subject: gnu: r-argparser: Update to 0.7.2. * gnu/packages/cran.scm (r-argparser): Update to 0.7.2. Change-Id: I2dd93ed20822070b92fe48d4400eb4e87543d5a2 --- gnu/packages/cran.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 6844775b85..b2944447b4 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -10291,14 +10291,14 @@ (define-public r-cli (define-public r-argparser (package (name "r-argparser") - (version "0.7.1") + (version "0.7.2") (source (origin (method url-fetch) (uri (cran-uri "argparser" version)) (sha256 (base32 - "0xcl0ivsbc4iw8s7027q4cx68j6s5lihbby0xa9pmlv4wjmcvdr6")))) + "0j9hnbyzbyzclgm4qwyqqkrqcrblxfm190489sgcvr5i7vg2smr8")))) (build-system r-build-system) (home-page "https://bitbucket.org/djhshih/argparser") (synopsis "Command-line argument parser") -- cgit v1.2.3 From 560a720df1b87a8f19fa579c357f5b2d0819e440 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 9 Apr 2024 18:45:31 +0200 Subject: gnu: r-smoother: Update to 1.3. * gnu/packages/cran.scm (r-smoother): Update to 1.3. Change-Id: Ia428b5c8c2896cfdae1445d0dbbe19e75c23ac77 --- gnu/packages/cran.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index b2944447b4..ec86cb7283 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -12624,14 +12624,14 @@ (define-public r-fnn (define-public r-smoother (package (name "r-smoother") - (version "1.1") + (version "1.3") (source (origin (method url-fetch) (uri (cran-uri "smoother" version)) (sha256 (base32 - "0nqr1bvlr5bnasqg74zmknjjl4x28kla9h5cxpga3kq5z215pdci")))) + "0xw28qv8f5i05ajx32njnql6hql5njqyc47wcq6c75cxiv44ppz8")))) (build-system r-build-system) (propagated-inputs (list r-ttr)) -- cgit v1.2.3 From 36d643ae21b7e82746a0db955d9f06f6381e6a92 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 9 Apr 2024 18:45:31 +0200 Subject: gnu: r-promises: Update to 1.3.0. * gnu/packages/cran.scm (r-promises): Update to 1.3.0. Change-Id: I50c005b222d1beac05e14bf98e719c5e0b06eaf4 --- gnu/packages/cran.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index ec86cb7283..51f3c495b5 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -13120,14 +13120,14 @@ (define-public r-later (define-public r-promises (package (name "r-promises") - (version "1.2.1") + (version "1.3.0") (source (origin (method url-fetch) (uri (cran-uri "promises" version)) (sha256 (base32 - "1gp55inqbbj0ifm4n0j5h8854a9v109xpikyhwv7b8lyydns5q1w")))) + "1lzs65csxaq26d1g37qjjgxzm418xv52c3ccpk0l0cxkpbrrs87q")))) (build-system r-build-system) (propagated-inputs (list r-fastmap -- cgit v1.2.3 From 98d1cce5fae988b414f9843db1849814436b0883 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 9 Apr 2024 18:45:32 +0200 Subject: gnu: r-ggstance: Update to 0.3.7. * gnu/packages/cran.scm (r-ggstance): Update to 0.3.7. Change-Id: I29c3f248afc717cf6e623db1d9a6e3cd19fe055f --- gnu/packages/cran.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 51f3c495b5..a3447994c2 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -15658,13 +15658,13 @@ (define-public r-abctools (define-public r-ggstance (package (name "r-ggstance") - (version "0.3.6") + (version "0.3.7") (source (origin (method url-fetch) (uri (cran-uri "ggstance" version)) (sha256 - (base32 "0wk3gbi5365sndi02gwd4c33vcrj5p8cfwakwjg010y5hgxx96nd")))) + (base32 "0v25si348qdp68887yx4d652rsz8w5lfabwaq1nvglrhs6s4f9js")))) (build-system r-build-system) (propagated-inputs (list r-cli r-ggplot2 r-plyr r-rlang r-withr)) -- cgit v1.2.3 From 9d81a735f65b3ce545cb6f0b90cd9798f59238e0 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 9 Apr 2024 18:45:32 +0200 Subject: gnu: r-emmeans: Update to 1.10.1. * gnu/packages/cran.scm (r-emmeans): Update to 1.10.1. Change-Id: I8d072fdf667a6a267ddc4aeb173db6b88996ff85 --- gnu/packages/cran.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index a3447994c2..e812a2e2ee 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -17232,14 +17232,14 @@ (define-public r-multcompview (define-public r-emmeans (package (name "r-emmeans") - (version "1.10.0") + (version "1.10.1") (source (origin (method url-fetch) (uri (cran-uri "emmeans" version)) (sha256 (base32 - "1vq7abyirrrpx00d464pgva2i17f3wxx08f4rc23bl331s3lsx23")))) + "175az87aj2zrjsi94vvca612krbhry7yqq6l03ybq31jhj7vc2fa")))) (build-system r-build-system) (propagated-inputs (list r-estimability r-mvtnorm r-numderiv)) -- cgit v1.2.3 From e5a28ad5314c9d74af91ce02da8eb148019a6462 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 9 Apr 2024 18:45:32 +0200 Subject: gnu: r-tmb: Update to 1.9.11. * gnu/packages/cran.scm (r-tmb): Update to 1.9.11. Change-Id: I2168b4a7452ae277eacd7414049ee6fd1429c3ca --- gnu/packages/cran.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index e812a2e2ee..2849062b2c 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -17369,14 +17369,14 @@ (define-public r-bayesplot (define-public r-tmb (package (name "r-tmb") - (version "1.9.10") + (version "1.9.11") (source (origin (method url-fetch) (uri (cran-uri "TMB" version)) (sha256 (base32 - "1cc34zxn2x88fbh4clgbzia36800i30pdlywbkwc26zm50nsxpwi")))) + "07z9565rn64k3ysvcgq6s792qg1v102gd9in5ifigm140zc4l45j")))) (properties `((upstream-name . "TMB"))) (build-system r-build-system) (propagated-inputs -- cgit v1.2.3 From affff3c220c8be391f2a8e590fd858bc532ff806 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 9 Apr 2024 18:45:32 +0200 Subject: gnu: r-nor1mix: Update to 1.3-3. * gnu/packages/cran.scm (r-nor1mix): Update to 1.3-3. Change-Id: Ie05b87763a47339c713b3a3c9d4f5c4238f26bd9 --- gnu/packages/cran.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 2849062b2c..d0dc3712c5 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -22787,14 +22787,14 @@ (define-public r-zim (define-public r-nor1mix (package (name "r-nor1mix") - (version "1.3-2") + (version "1.3-3") (source (origin (method url-fetch) (uri (cran-uri "nor1mix" version)) (sha256 (base32 - "0252kqhdsp374isc59pm1c6dmsb16jibpnsp1bpyh4k5mg73cdj6")))) + "0vh7vlvijska09rm0cb2lakwhjm38mc4daksc2zniyj7r3wd1gwp")))) (build-system r-build-system) (home-page "https://cran.r-project.org/web/packages/nor1mix/") (synopsis "Normal (1-d) mixture models") -- cgit v1.2.3 From 00b9a0b7661566a370f6ee941797f9ee7b1235dc Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 9 Apr 2024 18:45:32 +0200 Subject: gnu: r-styler: Update to 1.10.3. * gnu/packages/cran.scm (r-styler): Update to 1.10.3. Change-Id: I59909dfd5534863eef1a8502dd76c9c172914d56 --- gnu/packages/cran.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index d0dc3712c5..325bb7798a 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -26175,14 +26175,14 @@ (define-public r-sctransform (define-public r-styler (package (name "r-styler") - (version "1.10.2") + (version "1.10.3") (source (origin (method url-fetch) (uri (cran-uri "styler" version)) (sha256 (base32 - "043v9xwm72jqrrzzmjgrkf34lncjnn69650ks72z7rjb1wqmbh56")))) + "0hfspw1q40jqla238dw86iyf0lyk1agc19flwvf9nrm824hw5fdd")))) (build-system r-build-system) ;; This is needed by R.cache. (arguments -- cgit v1.2.3 From 9c5e2a760425c94d40319784e8887445640b7406 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 9 Apr 2024 18:45:33 +0200 Subject: gnu: r-dae: Update to 3.2.25. * gnu/packages/cran.scm (r-dae): Update to 3.2.25. [propagated-inputs]: Add r-trycatchlog. Change-Id: I9dfc382185a6f83586fcfa35c9969036cf66193a --- gnu/packages/cran.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 325bb7798a..c4a5c2b13c 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -26454,14 +26454,14 @@ (define-public r-ibreakdown (define-public r-dae (package (name "r-dae") - (version "3.2.21") + (version "3.2.25") (source (origin (method url-fetch) (uri (cran-uri "dae" version)) (sha256 (base32 - "0j47d4r4mpkfaz29h7iiijmzi7fj7nysg8pd9c79h160h1lww9yx")))) + "168kisjgfc8cp7j6frgpci7qxw548rynpi9wv008k8hfszkfkgny")))) (build-system r-build-system) (arguments '(#:phases @@ -26470,7 +26470,7 @@ (define-public r-dae ;; Needed for vignette builder (lambda _ (setenv "HOME" "/tmp")))))) (propagated-inputs - (list r-ggplot2 r-ggpubr r-plyr)) + (list r-ggplot2 r-ggpubr r-plyr r-trycatchlog)) (native-inputs (list r-r-rsp)) ; vignette builder (home-page "http://chris.brien.name") -- cgit v1.2.3 From 1fc8488c95c78fa5a9a6fef41270045d6d29bb68 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 9 Apr 2024 18:45:33 +0200 Subject: gnu: r-proxyc: Update to 0.4.1. * gnu/packages/cran.scm (r-proxyc): Update to 0.4.1. [inputs]: Add tbb. [propagated-inputs]: Remove r-rcppparallel. Change-Id: I091b340d9defc5876ab7187b7f890cb839fb23b8 --- gnu/packages/cran.scm | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index c4a5c2b13c..13ff96bf8a 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -31649,19 +31649,20 @@ (define-public r-xmisc (define-public r-proxyc (package (name "r-proxyc") - (version "0.3.4") + (version "0.4.1") (source (origin (method url-fetch) (uri (cran-uri "proxyC" version)) (sha256 (base32 - "1skq5cxd0kh2pccfg4h9bis4wbqb6zm04q4iwfa6dqml6hyiv7gk")))) + "1a124nzxldc6687kvgkg41dqfbqb7yqdgm9dj5fj8g4bax9qcgg8")))) (properties `((upstream-name . "proxyC"))) (build-system r-build-system) (native-inputs (list r-knitr)) + (inputs (list tbb)) (propagated-inputs - (list r-matrix r-rcpp r-rcpparmadillo r-rcppparallel)) + (list r-matrix r-rcpp r-rcpparmadillo)) (home-page "https://cran.r-project.org/package=proxyC") (synopsis "Compute proximity in large sparse matrices") (description -- cgit v1.2.3 From 7bd16ee23b7459fa742cf46099c7aa5cdd95653b Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 9 Apr 2024 18:45:33 +0200 Subject: gnu: r-quanteda: Update to 4.0.1. * gnu/packages/cran.scm (r-quanteda): Update to 4.0.1. [inputs]: Add tbb. [propagated-inputs]: Remove r-rcppparallel; add r-lifecycle. [native-inputs]: Add pkg-config. Change-Id: I988b076f65801c9e9f7ebe3fa6d19566aea6308a --- gnu/packages/cran.scm | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 13ff96bf8a..c3c14e8855 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -31767,31 +31767,32 @@ (define-public r-snowballc (define-public r-quanteda (package (name "r-quanteda") - (version "3.3.1") + (version "4.0.1") (source (origin (method url-fetch) (uri (cran-uri "quanteda" version)) (sha256 (base32 - "0rj13m0fmk0h9akmqwwp7nkwrvym7sj97jgvjr4mvi3sglq451b2")))) + "0m0iw7vm9v7dcrh9yd56kr0vagas1czqgbn2ybyxg86nwcrl73qq")))) (properties `((upstream-name . "quanteda"))) (build-system r-build-system) (propagated-inputs (list r-fastmatch r-jsonlite + r-lifecycle r-magrittr r-matrix r-rcpp r-rcpparmadillo - r-rcppparallel r-snowballc r-stopwords r-stringi r-xml2 r-yaml)) + (inputs (list tbb)) (native-inputs - (list r-knitr)) + (list pkg-config r-knitr)) (home-page "https://quanteda.io") (synopsis "Quantitative analysis of textual data") (description -- cgit v1.2.3 From d3bb68db27bf22241bf60c67eddd6cd859c56945 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 9 Apr 2024 18:45:33 +0200 Subject: gnu: r-rsconnect: Update to 1.2.2. * gnu/packages/cran.scm (r-rsconnect): Update to 1.2.2. [propagated-inputs]: Add r-pki. Change-Id: I6dcc1b5566be6117e957366f66e0af35c2242718 --- gnu/packages/cran.scm | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index c3c14e8855..5fa31f83cb 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -32681,14 +32681,14 @@ (define-public r-packrat (define-public r-rsconnect (package (name "r-rsconnect") - (version "1.2.1") + (version "1.2.2") (source (origin (method url-fetch) (uri (cran-uri "rsconnect" version)) (sha256 (base32 - "0snfzr2xf91630hd2w1q9yy09vlfdy4dzb9gc8g14nq9hh34h999")))) + "19n0j7g2yy45qp5zgs5lz1cm1d7p6d0h8bwqcsfp9mnr2zzc0yr5")))) (properties `((upstream-name . "rsconnect"))) (build-system r-build-system) (propagated-inputs @@ -32699,6 +32699,7 @@ (define-public r-rsconnect r-lifecycle r-openssl r-packrat + r-pki r-renv r-rlang r-rstudioapi -- cgit v1.2.3 From 81392d15c14bd3aa64491837ded89469c70ec91f Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 9 Apr 2024 18:45:34 +0200 Subject: gnu: r-scatterpie: Update to 0.2.2. * gnu/packages/cran.scm (r-scatterpie): Update to 0.2.2. Change-Id: Iefea7b841a419a129ed69d436b80bf59a7ec8c3f --- gnu/packages/cran.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 5fa31f83cb..ad0cc39d97 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -34074,14 +34074,14 @@ (define-public r-mstate (define-public r-scatterpie (package (name "r-scatterpie") - (version "0.2.1") + (version "0.2.2") (source (origin (method url-fetch) (uri (cran-uri "scatterpie" version)) (sha256 (base32 - "0wfrckyvy4zw34qdvgg1gwqfdi1xhs63v3gfwa4akm7ifd1canlb")))) + "1q36g6rqggrysnjqarxbyjw3y3z244k0zh1a49w6j4149k8qc462")))) (properties `((upstream-name . "scatterpie"))) (build-system r-build-system) (propagated-inputs -- cgit v1.2.3 From 704eb72d6b5ca69e5071616b787ff27cf4db925c Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 9 Apr 2024 18:45:34 +0200 Subject: gnu: r-stars: Update to 0.6-5. * gnu/packages/cran.scm (r-stars): Update to 0.6-5. Change-Id: I459475640f0626136c7c1b72528f9e38f7dd1b19 --- gnu/packages/cran.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index ad0cc39d97..88e7e70cb2 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -38952,14 +38952,14 @@ (define-public r-lwgeom (define-public r-stars (package (name "r-stars") - (version "0.6-4") + (version "0.6-5") (source (origin (method url-fetch) (uri (cran-uri "stars" version)) (sha256 (base32 - "0mqd2dfa8jhxjmfphvv3rkw2lri5sz49042asj5lyln3wkylqjj2")))) + "1b5gs0qa8097f2mvz4rgl46wrvk1rbbbi2a4s901hdg4bkr15jsg")))) (properties `((upstream-name . "stars"))) (build-system r-build-system) (propagated-inputs -- cgit v1.2.3 From 223cdffad2a732bda88bd2668823237d95c78660 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 9 Apr 2024 18:45:34 +0200 Subject: gnu: r-delaporte: Update to 8.4.0. * gnu/packages/cran.scm (r-delaporte): Update to 8.4.0. Change-Id: Iaa241222b4c4d84bb9ded7603f7e5cdf857e40be --- gnu/packages/cran.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 88e7e70cb2..4fe257e6c1 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -39140,14 +39140,14 @@ (define-public r-btm (define-public r-delaporte (package (name "r-delaporte") - (version "8.3.0") + (version "8.4.0") (source (origin (method url-fetch) (uri (cran-uri "Delaporte" version)) (sha256 (base32 - "1g499xrb3hhd9xrzbxm1d911hm06mfn119xxmcr6f47vsz15ksvy")))) + "1jqz2qxig35rhmwvazmsl3a081dylfq2jfz3bjpj61y4c55mnwar")))) (properties `((upstream-name . "Delaporte"))) (build-system r-build-system) (native-inputs (list gfortran)) -- cgit v1.2.3 From 085cefc3b3c486bc6e0f35cefc3e6df1abbd830f Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 9 Apr 2024 18:45:34 +0200 Subject: gnu: r-knitr: Update to 1.46. * gnu/packages/statistics.scm (r-knitr): Update to 1.46. Change-Id: I0f6cfb86353558514fdb0e50f5626ad493e5bf1f --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index e076cdba44..6f8851d53b 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -1624,13 +1624,13 @@ (define-public r-yaml (define-public r-knitr (package (name "r-knitr") - (version "1.45") + (version "1.46") (source (origin (method url-fetch) (uri (cran-uri "knitr" version)) (sha256 (base32 - "1yw4fnzm8lvh6kpcdlvr1fahz7421h5mmaris58zlgn57fjxwbpf")))) + "0ng8kw79csvcg46lsm3yf147jh6rf91jbj8qlryaihd8jcyc6lcg")))) (build-system r-build-system) (propagated-inputs (list r-evaluate r-highr r-xfun r-yaml)) -- cgit v1.2.3 From dfbe337d3be88d38da674be535c267a9c36cdb83 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 9 Apr 2024 18:45:34 +0200 Subject: gnu: r-rcpparmadillo: Update to 0.12.8.2.0. * gnu/packages/statistics.scm (r-rcpparmadillo): Update to 0.12.8.2.0. Change-Id: I094907765b56a97e59fbfd3a871def732c1965cd --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 6f8851d53b..8be9d1a9ae 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -3184,13 +3184,13 @@ (define-public r-latticeextra (define-public r-rcpparmadillo (package (name "r-rcpparmadillo") - (version "0.12.8.1.0") + (version "0.12.8.2.0") (source (origin (method url-fetch) (uri (cran-uri "RcppArmadillo" version)) (sha256 (base32 - "0ax4812dm33c67ckd902qabis3dgqmpkchk4s30bshnfv4fxx1z2")))) + "0w1c0mpqqf6m2gk4221kjxx299bs4qpxn867fgnkpg69kj3mh8gd")))) (properties `((upstream-name . "RcppArmadillo"))) (build-system r-build-system) (propagated-inputs -- cgit v1.2.3 From b7f1c1ae81bf85832fc658c0cbf3aebb1fc9e908 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 9 Apr 2024 18:45:34 +0200 Subject: gnu: r-dt: Update to 0.33. * gnu/packages/statistics.scm (r-dt): Update to 0.33. Change-Id: Ice2557633414595dfd4d55d996fa83a7d80a0b3a --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 8be9d1a9ae..a55d931d12 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -3834,13 +3834,13 @@ (define-public r-dt "datatables-extensions/Buttons")))) (package (name "r-dt") - (version "0.32") + (version "0.33") (source (origin (method url-fetch) (uri (cran-uri "DT" version)) (sha256 (base32 - "0nvj2bc441b9h13085fa7q281f86lgx4k0d8lr64xgdpbmbvkl21")) + "1f17gdqjk1aj7vwjvv3363k8lnsvc6ssh4s3gy1prnz33kdxlig1")) (modules '((guix build utils) (ice-9 match))) (snippet -- cgit v1.2.3 From 7a6aede61e698bc3c5a57eb898bd37591158f89c Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 9 Apr 2024 23:55:05 +0200 Subject: gnu: r-bambu: Update to 3.4.1. * gnu/packages/bioconductor.scm (r-bambu): Update to 3.4.1. Change-Id: I888802cc0b75876378c59abba72442bb5927010a --- gnu/packages/bioconductor.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm index 8b3fec2390..1102f992b7 100644 --- a/gnu/packages/bioconductor.scm +++ b/gnu/packages/bioconductor.scm @@ -4529,13 +4529,13 @@ (define-public r-badregionfinder (define-public r-bambu (package (name "r-bambu") - (version "3.4.0") + (version "3.4.1") (source (origin (method url-fetch) (uri (bioconductor-uri "bambu" version)) (sha256 (base32 - "02pcab8jfwlx4y00yky63anba61bb1h884m0f6ajvasfpgl30w6i")))) + "0j2ivn93dpn7xas0bzfxhwmqzxzscgc3sjkx85y5v2ra1i6jy5k7")))) (properties `((upstream-name . "bambu"))) (build-system r-build-system) (propagated-inputs -- cgit v1.2.3 From 58e69ac117c00676d892077f82815ff28532f09f Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 9 Apr 2024 23:55:05 +0200 Subject: gnu: r-annotationhub: Update to 3.10.1. * gnu/packages/bioconductor.scm (r-annotationhub): Update to 3.10.1. Change-Id: Ibe0b4d197a17514072febc97ef8eac684d884b67 --- gnu/packages/bioconductor.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm index 1102f992b7..2575553380 100644 --- a/gnu/packages/bioconductor.scm +++ b/gnu/packages/bioconductor.scm @@ -6646,14 +6646,14 @@ (define-public r-annotationforge (define-public r-annotationhub (package (name "r-annotationhub") - (version "3.10.0") + (version "3.10.1") (source (origin (method url-fetch) (uri (bioconductor-uri "AnnotationHub" version)) (sha256 (base32 - "1mx3vip1rx5lq0vnkxpmkyksnq4vygmww85vxq3spr0fah1pwnkr")))) + "12vc573gmg8bwcfa268yq7npg7mivhngx4lx16nzan56rqb475yx")))) (properties `((upstream-name . "AnnotationHub"))) (build-system r-build-system) (propagated-inputs -- cgit v1.2.3 From aef6e9501bd5e16bff77b508c5060bc5eb5cb996 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 9 Apr 2024 23:55:05 +0200 Subject: gnu: r-gsva: Update to 1.50.2. * gnu/packages/bioconductor.scm (r-gsva): Update to 1.50.2. Change-Id: I24cb1b80f6afc34c970f402292a326e7ec592534 --- gnu/packages/bioconductor.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm index 2575553380..eff255eb11 100644 --- a/gnu/packages/bioconductor.scm +++ b/gnu/packages/bioconductor.scm @@ -8221,13 +8221,13 @@ (define-public r-gseabase (define-public r-gsva (package (name "r-gsva") - (version "1.50.1") + (version "1.50.2") (source (origin (method url-fetch) (uri (bioconductor-uri "GSVA" version)) (sha256 (base32 - "0ld0bbl6ar3yhi6ncg9d8q60hg4m4v5kphl044fw63l19ixln7cf")))) + "1xgp311wh7ykvnk7nh5xik1kp2b2r08vx595znmzn28fc8rz62b1")))) (properties `((upstream-name . "GSVA"))) (build-system r-build-system) (propagated-inputs (list r-biobase -- cgit v1.2.3 From 6b1c49d07b9a6ceb5cb9b2aaa8364a1a7077db02 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 9 Apr 2024 23:55:06 +0200 Subject: gnu: r-seqarray: Update to 1.42.4. * gnu/packages/bioconductor.scm (r-seqarray): Update to 1.42.4. Change-Id: I3663ed7550bdd11e2f23b0497c7bbeb2d5c6cd41 --- gnu/packages/bioconductor.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm index eff255eb11..6153758fbe 100644 --- a/gnu/packages/bioconductor.scm +++ b/gnu/packages/bioconductor.scm @@ -10952,13 +10952,13 @@ (define-public r-scry (define-public r-seqarray (package (name "r-seqarray") - (version "1.42.3") + (version "1.42.4") (source (origin (method url-fetch) (uri (bioconductor-uri "SeqArray" version)) (sha256 (base32 - "1500vwsgdxdaafp2fb0252c0hhpz3lhrniv21nb7xnky7mbr7lk6")))) + "0k7g4wkj1l35pjy6gb3bdlmz5g8q2d596glj09ggm73aaj3z4m9d")))) (properties `((upstream-name . "SeqArray"))) (build-system r-build-system) (propagated-inputs (list r-biostrings -- cgit v1.2.3 From 1f2308ab3059674db549d676b04922df08664453 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 9 Apr 2024 23:55:06 +0200 Subject: gnu: r-monocle: Update to 2.30.1. * gnu/packages/bioconductor.scm (r-monocle): Update to 2.30.1. [propagated-inputs]: Remove r-qlcmatrix. Change-Id: Id3876045fe925a82892cd2dbe7f56a0b475f2226 --- gnu/packages/bioconductor.scm | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm index 6153758fbe..9b44ed8edc 100644 --- a/gnu/packages/bioconductor.scm +++ b/gnu/packages/bioconductor.scm @@ -14494,14 +14494,14 @@ (define-public r-mast (define-public r-monocle (package (name "r-monocle") - (version "2.30.0") + (version "2.30.1") (source (origin (method url-fetch) (uri (bioconductor-uri "monocle" version)) (sha256 (base32 - "0i1qnmiaf3gf8955nlqzd81xzg4siliq154k699jmsz0fyyykia1")))) + "0hb2s58xx5cmrn3wlppay7275mln8r5y5dsnvpcps3s6xcab00rm")))) (build-system r-build-system) (propagated-inputs (list r-biobase @@ -14524,7 +14524,6 @@ (define-public r-monocle r-pheatmap r-plyr r-proxy - r-qlcmatrix r-rann r-rcpp r-reshape2 -- cgit v1.2.3 From 5a95cf76e1d0f9fdff5b232b42337c657b76d1d4 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 9 Apr 2024 23:55:06 +0200 Subject: gnu: r-bioconcotk: Update to 1.22.2. * gnu/packages/bioconductor.scm (r-bioconcotk): Update to 1.22.2. Change-Id: I473dc8d160d6f04eb3d90b747395d6ff73e3e9db --- gnu/packages/bioconductor.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm index 9b44ed8edc..27ece61f2a 100644 --- a/gnu/packages/bioconductor.scm +++ b/gnu/packages/bioconductor.scm @@ -20752,14 +20752,14 @@ (define-public r-multiassayexperiment (define-public r-bioconcotk (package (name "r-bioconcotk") - (version "1.22.0") + (version "1.22.2") (source (origin (method url-fetch) (uri (bioconductor-uri "BiocOncoTK" version)) (sha256 (base32 - "1xymgfiv9abyaq5s7m683ml8a1ls9mqvbh9qjiz3jqbbpvmsm502")))) + "0yx32yj9bw78nhbv1yvgs26sxdmnava1a89g9hs4ai26c1hy150s")))) (properties `((upstream-name . "BiocOncoTK"))) (build-system r-build-system) (propagated-inputs -- cgit v1.2.3 From c1c9d6b3cdf5955f1bf5fded2a0c496ce2e631f1 Mon Sep 17 00:00:00 2001 From: Vagrant Cascadian Date: Wed, 10 Apr 2024 13:37:23 -0700 Subject: gnu: diffoscope: Avoid skipping several tests. * gnu/packages/diffoscope.scm (diffoscope)[native-inputs]: Add perl. --- gnu/packages/diffoscope.scm | 2 ++ 1 file changed, 2 insertions(+) diff --git a/gnu/packages/diffoscope.scm b/gnu/packages/diffoscope.scm index bceb465d5b..3db52e5008 100644 --- a/gnu/packages/diffoscope.scm +++ b/gnu/packages/diffoscope.scm @@ -52,6 +52,7 @@ (define-module (gnu packages diffoscope) #:use-module (gnu packages pascal) #:use-module (gnu packages patchutils) #:use-module (gnu packages pdf) + #:use-module (gnu packages perl) #:use-module (gnu packages python-check) #:use-module (gnu packages python-web) #:use-module (gnu packages python-xyz) @@ -199,6 +200,7 @@ (define (bin command) openssh openssl p7zip + perl pgpdump poppler python-jsbeautifier -- cgit v1.2.3 From d564e04dedbba18744f1071b48b09f190ef4d5ad Mon Sep 17 00:00:00 2001 From: Nicolas Goaziou Date: Thu, 11 Apr 2024 10:29:29 +0200 Subject: gnu: emacs-ess: Fix build. * gnu/packages/statistics.scm (emacs-ess)[arguments]<#:phases>: Re-instate DISABLE-ETESTS function, which properly disables some tests in the "ess-test-r-eval.el" file. Change-Id: I71a6683e9e561f03658f871cabd0cbb36c298199 --- gnu/packages/statistics.scm | 24 ++++++++++++++++++++---- 1 file changed, 20 insertions(+), 4 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index a55d931d12..ba8ff10059 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -6888,19 +6888,35 @@ (define-public emacs-ess (((string-append "^\\(ert-deftest " test-name ".*") all) (string-append all "(skip-unless nil)\n")) - ...))))) + ...)))) + (disable-etests ;different test syntax + (syntax-rules () + ((_ file ()) + (syntax-error "test names list must not be empty")) + ((_ file (test-name ...)) + (emacs-batch-edit-file file + '(progn + (mapc (lambda (test) + (goto-char (point-min)) + (search-forward + (format "etest-deftest %s " test)) + (beginning-of-line) + (kill-sexp)) + (list test-name ...)) + (basic-save-buffer))))))) (disable-tests (list "test/ess-test-inf.el" "test/ess-test-r.el") ("ess--derive-connection-path" "ess-eval-line-test" "ess-eval-region-test" "ess-mock-remote-process" - "ess-r-eval-sink-freeze-test" - "ess-r-eval-ns-env-roxy-tracebug-test" "ess-r-load-ESSR-github-fetch-no" "ess-r-load-ESSR-github-fetch-yes" "ess-set-working-directory-test" - "ess-test-r-startup-directory"))))) + "ess-test-r-startup-directory")) + (disable-etests "test/ess-test-r-eval.el" + ("ess-r-eval-ns-env-roxy-tracebug-test" + "ess-r-eval-sink-freeze-test"))))) (replace 'check (lambda* (#:key tests? #:allow-other-keys) (when tests? (invoke "make" "test")))))))) -- cgit v1.2.3 From 68202bcc439dd4ec2a5c839b35a0631f27eb0a90 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Thu, 11 Apr 2024 12:14:59 +0200 Subject: gnu: pt-scotch: Include so ‘parmetis.h’ is usable. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Fixes a bug when building ‘superlu-dist’ where ‘int32_t’ would be undefined. * gnu/packages/maths.scm (scotch)[source]: Add ‘snippet’. Change-Id: Id5beb2034d762727458821b93568e5b733184c00 --- gnu/packages/maths.scm | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index 03760f3f3e..92a9600e09 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -12,7 +12,7 @@ ;;; Copyright © 2015 Fabian Harfert ;;; Copyright © 2016 Roel Janssen ;;; Copyright © 2016, 2018, 2020, 2021 Kei Kebreau -;;; Copyright © 2016-2023 Ludovic Courtès +;;; Copyright © 2016-2024 Ludovic Courtès ;;; Copyright © 2016 Leo Famulari ;;; Copyright © 2016, 2017 Thomas Danckaert ;;; Copyright © 2017, 2018, 2019, 2020, 2021 Paul Garlick @@ -4502,7 +4502,14 @@ (define-public scotch (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "0rbc51albpd2923dkirpkj8rfkic6rsvwqqnv1mmsk391zhk3amr")))) + (base32 "0rbc51albpd2923dkirpkj8rfkic6rsvwqqnv1mmsk391zhk3amr")) + (modules '((guix build utils))) + (snippet + #~(substitute* "src/libscotchmetis/library_parmetis.h" + (("typedef DUMMYINT SCOTCH_Num" all) + ;; 'DUMMYINT' is typically replaced by 'int32_t'. Include + ;; to get that type definition. + (string-append "#include \n" all "\n")))))) (build-system cmake-build-system) (inputs (list zlib)) -- cgit v1.2.3 From cd96573b73e53bf53c0efad965f925f106259764 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Thu, 11 Apr 2024 12:16:08 +0200 Subject: gnu: superlu-dist: Fix linking with the ParMETIS shim of pt-scotch. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/maths.scm (superlu-dist)[arguments]: Adjust library names to match current ‘scotch’. Change-Id: If64094c058cc3be58435fe1c47cc99fb0a9e1fff --- gnu/packages/maths.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index 92a9600e09..cc42ce7902 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -4458,8 +4458,8 @@ (define-public superlu-dist "-DTPL_LAPACK_LIBRARIES=-lopenblas" (string-append "-DTPL_PARMETIS_LIBRARIES=" (string-join - '("ptscotchparmetis" "ptscotch" "ptscotcherr" - "scotchmetis" "scotch" "scotcherr") + '("ptscotchparmetisv3" "ptscotcherr" + "scotchmetisv3" "scotcherr") ";")) (string-append "-DTPL_PARMETIS_INCLUDE_DIRS=" (assoc-ref %build-inputs "parmetis") -- cgit v1.2.3 From f4dcf3018ebe2f14e5872d6462a45ba817a5f38d Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Thu, 11 Apr 2024 12:24:21 +0200 Subject: gnu: gdb: Update to 14.2. * gnu/packages/gdb.scm (gdb-14): Update to 14.2. Change-Id: Iddf941655fe5550f6cd01978fd7998f193957ee1 --- gnu/packages/gdb.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/gdb.scm b/gnu/packages/gdb.scm index d0e72f9176..f832202d18 100644 --- a/gnu/packages/gdb.scm +++ b/gnu/packages/gdb.scm @@ -148,14 +148,14 @@ (define-public gdb/pinned (define-public gdb-14 (package (inherit gdb/pinned) - (version "14.1") + (version "14.2") (source (origin (method url-fetch) (uri (string-append "mirror://gnu/gdb/gdb-" version ".tar.xz")) (sha256 (base32 - "106v7rj72km56mb2ssjsyjfix3yn4f3wqr7lpzy52d0lfq9gavfn")))) + "0wkprsjyyh204fdjlkaz20k847l88i9y8m9zqsv15vcd3l3dhk9d")))) (properties '()))) (define-public gdb -- cgit v1.2.3 From cba4c9f16143df7f4c32638e7ffa9bc7f822a165 Mon Sep 17 00:00:00 2001 From: Sébastien Lerique Date: Sat, 6 Apr 2024 10:08:54 +0100 Subject: gnu: speech-dispatcher: Update to 0.11.5. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/speech.scm (speech-dispatcher): Update to 0.11.5. [source]: Switch to git-fetch. [native-inputs]: Add autoconf, automake, libtool. [inputs]: Add python-xdg. Reviewed-by: Dale Mellor Change-Id: If323f17bac54da427be1a09d847de50842717a01 Signed-off-by: Ludovic Courtès --- gnu/packages/speech.scm | 25 +++++++++++++++++-------- 1 file changed, 17 insertions(+), 8 deletions(-) diff --git a/gnu/packages/speech.scm b/gnu/packages/speech.scm index 9939d2f165..36b67ccd93 100644 --- a/gnu/packages/speech.scm +++ b/gnu/packages/speech.scm @@ -8,6 +8,7 @@ ;;; Copyright © 2020 Nicolas Goaziou ;;; Copyright © 2020 Efraim Flashner ;;; Copyright © 2021 qblade +;;; Copyright © 2024 Sébastien Lerique ;;; ;;; This file is part of GNU Guix. ;;; @@ -51,6 +52,7 @@ (define-module (gnu packages speech) #:use-module (gnu packages pkg-config) #:use-module (gnu packages pulseaudio) #:use-module (gnu packages python) + #:use-module (gnu packages python-xyz) #:use-module (gnu packages swig) #:use-module (gnu packages texinfo) #:use-module (gnu packages textutils)) @@ -236,15 +238,16 @@ (define-public mitlm (define-public speech-dispatcher (package (name "speech-dispatcher") - (version "0.11.4") + (version "0.11.5") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/brailcom/speechd/releases" - "/download/" version "/speech-dispatcher-" - version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/brailcom/speechd") + (commit version))) + (file-name (git-file-name name version)) (sha256 (base32 - "1fb6ypnr8r3905b68bbplg1qcaw3f6br2yzxkk4bb79dnwdj42cc")))) + "0z2rb1yi06v145sr2h69rxbxzrsfrk198cw6bgpf8wj2njfh3555")))) (build-system gnu-build-system) (arguments `(#:configure-flags '("--disable-static" @@ -253,7 +256,12 @@ (define-public speech-dispatcher "--with-voxin=no" "--with-ibmtts=no" "--with-kali=no" "--with-baratinoo=no"))) (native-inputs - (list gettext-minimal pkg-config texinfo)) + (list autoconf + automake + gettext-minimal + libtool + pkg-config + texinfo)) (inputs (list dotconf espeak-ng @@ -261,7 +269,8 @@ (define-public speech-dispatcher libltdl libsndfile pulseaudio - python)) + python + python-xdg)) (synopsis "Common interface to speech synthesizers") (description "The Speech Dispatcher project provides a high-level device independent layer for access to speech synthesis through a simple, -- cgit v1.2.3 From 8b65da6ac8ea5c0a5cb428e47b1bd8841ffef3fc Mon Sep 17 00:00:00 2001 From: Christina O'Donnell Date: Wed, 3 Apr 2024 23:46:32 +0100 Subject: gnu: Add markdeep. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu packages/documentation.scm (markdeep): New variable. Change-Id: I34303377f50740ba357c1bb299c9434079a6e23d Signed-off-by: Ludovic Courtès --- gnu/packages/documentation.scm | 68 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 68 insertions(+) diff --git a/gnu/packages/documentation.scm b/gnu/packages/documentation.scm index 83c4313bd7..507a326f6e 100644 --- a/gnu/packages/documentation.scm +++ b/gnu/packages/documentation.scm @@ -37,6 +37,7 @@ (define-module (gnu packages documentation) #:use-module (guix git-download) #:use-module (guix build-system gnu) #:use-module (guix build-system cmake) + #:use-module (guix build-system copy) #:use-module (guix build-system perl) #:use-module (guix build-system python) #:use-module (guix build-system qt) @@ -57,11 +58,13 @@ (define-module (gnu packages documentation) #:use-module (gnu packages graphviz) #:use-module (gnu packages gettext) #:use-module (gnu packages glib) + #:use-module (gnu packages javascript) #:use-module (gnu packages perl) #:use-module (gnu packages pkg-config) #:use-module (gnu packages qt) #:use-module (gnu packages sqlite) #:use-module (gnu packages sphinx) + #:use-module (gnu packages uglifyjs) #:use-module (gnu packages xml) #:use-module (gnu packages xorg)) @@ -453,3 +456,68 @@ (define-public zeal (description "Zeal is a simple offline documentation browser inspired by Dash.") (license license:gpl3+)))) + +(define-public markdeep + (package + (name "markdeep") + (version "1.16") + (home-page "https://casual-effects.com/markdeep/") + (source + (origin (method git-fetch) + (uri (git-reference + (url "https://github.com/morgan3d/markdeep") + (commit (string-append "v0" version)))) + (sha256 + (base32 "05bvw3993xh1260ckclwk4jw38hvgiff0b2940ryhbhz0p1k41l8")))) + (build-system copy-build-system) + (arguments + (list #:modules '((guix build utils) + (guix build copy-build-system) + (ice-9 popen)) + #:install-plan ''(("." "/share/markdeep/")) + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'patch-urls + (lambda _ + (for-each (lambda (filename) + + (substitute* filename + ;; Don't include a reference to the remote version. + (("") + "") + (("MATHJAX_URL = .*$") + ;; Use our local copy of mathjax + (string-append "MATHJAX_URL = 'file://" #$js-mathjax + "/share/javascript/es5/tex-mml-chtml.js'")))) + (find-files "." (lambda (file stat) + (string-suffix? ".js" file)))))) + (add-before 'install 'minify + (lambda _ + (for-each (lambda (filename) + (let ((minified-filename + (string-append + (string-drop-right filename 3) + ".min.js"))) + (format #t "~a -> ~a~%" filename minified-filename) + (let ((minified (open-pipe* OPEN_READ + "uglifyjs" filename))) + (call-with-output-file minified-filename + (lambda (port) + (dump-port minified port))) + + (let ((exit (close-pipe minified))) + (unless (zero? exit) + (error "uglifyjs failed" exit)))))) + (find-files "latest" + (lambda (path stat) + (and (string-suffix? ".js" path) + (not (string-suffix? ".min.js" + path))))))))))) + (inputs (list js-mathjax)) + (native-inputs (list uglifyjs)) + (synopsis "Tool for displaying markdown documents in a web-browser") + (description "Markdeep is a technology for writing plain text documents that can +be displayed in any web browser, whether local or remote. It supports diagrams, +calendars, equations, and other features as extensions of Markdown syntax.") + (license license:bsd-2))) -- cgit v1.2.3 From f607663864dc021ed9ac84a1b755f02201ccd359 Mon Sep 17 00:00:00 2001 From: Christina O'Donnell Date: Wed, 3 Apr 2024 23:46:34 +0100 Subject: gnu: Add stddoc. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/documentation.scm (stddoc): New variable. Change-Id: I0f60126ef78a45733ad7395352e9bad49561437b Signed-off-by: Ludovic Courtès --- gnu/packages/documentation.scm | 57 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 57 insertions(+) diff --git a/gnu/packages/documentation.scm b/gnu/packages/documentation.scm index 507a326f6e..12fbaf1d0c 100644 --- a/gnu/packages/documentation.scm +++ b/gnu/packages/documentation.scm @@ -521,3 +521,60 @@ (define-public markdeep be displayed in any web browser, whether local or remote. It supports diagrams, calendars, equations, and other features as extensions of Markdown syntax.") (license license:bsd-2))) + +(define-public stddoc + (let ((commit "6eef9deaf2e36bae812f50e448a8012b3e5efb14") + (revision "1")) + (package + (name "stddoc") + (version (git-version "1.0.2" revision commit)) + (home-page "https://github.com/r-lyeh/stddoc.c") + (source + (origin + (method git-fetch) + (uri (git-reference + (url home-page) + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 "06phjp7wbf4x1sagxwfapgv6iyiixmijxxbg2clb48kyvjg5mlwn")) + (snippet #~(delete-file "stddoc.c.html")))) + (build-system gnu-build-system) + (arguments + (list #:tests? #f ; no tests + #:phases + #~(modify-phases %standard-phases + (replace 'configure + (lambda _ + (substitute* "stddoc.c" + ;; Note: For some reason quote characters are being + ;; inserted into urls and tags, eg. + ;; 'https://morgan3d.github.io/m""arkdeep/latest/markdeep.min.js?' + (("https://casual-effects.com/m\"*arkdeep/latest/") + (string-append #$markdeep "/share/markdeep/latest/")) + (("https://morgan3d.github.io/m\"*arkdeep/latest/") + (string-append #$markdeep "/share/markdeep/latest/"))))) + (replace 'build + (lambda _ + (invoke #$(cc-for-target) + "-O2" "-g" "-o" "stddoc" "stddoc.c") + (with-input-from-file "stddoc.c" + (lambda _ + (with-output-to-file "stddoc.c.html" + (lambda _ + (invoke #$(if (%current-target-system) + "stddoc" + "./stddoc")))))))) + (replace 'install + (lambda _ + (install-file "stddoc" + (string-append #$output "/bin")) + (install-file "stddoc.c.html" + (string-append #$output + "/share/doc"))))))) + (native-inputs (if (%current-target-system) (list this-package) '())) + (synopsis "Documentation generator for multiple programming languages") + (description "@code{stddoc.c} is a tiny documentation generator with many +supported programming languages. Markdeep code comments are extracted from stdin and +printed into stdout as a HTML file.") + (license license:unlicense)))) -- cgit v1.2.3 From ce2d140c5b15a84fbff2b7f0e1fda12fe21a0f66 Mon Sep 17 00:00:00 2001 From: Antero Mejr Date: Wed, 3 Apr 2024 23:46:35 +0100 Subject: gnu: Add nuklear. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/toolkits.scm (nuklear): New variable. Signed-off-by: Ludovic Courtès --- gnu/packages/toolkits.scm | 49 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) diff --git a/gnu/packages/toolkits.scm b/gnu/packages/toolkits.scm index 9d002ecab1..3ba3399899 100644 --- a/gnu/packages/toolkits.scm +++ b/gnu/packages/toolkits.scm @@ -19,6 +19,7 @@ ;;; along with GNU Guix. If not, see . (define-module (gnu packages toolkits) + #:use-module (gnu packages documentation) #:use-module (gnu packages fontutils) #:use-module (gnu packages gl) #:use-module (gnu packages sdl) @@ -27,6 +28,7 @@ (define-module (gnu packages toolkits) #:use-module (guix packages) #:use-module (guix utils) #:use-module (guix build-system gnu) + #:use-module (guix build-system python) #:use-module (guix git-download)) (define-public imgui @@ -181,3 +183,50 @@ (define-public imgui-1.86 (inputs (modify-inputs (package-inputs imgui) (delete "freetype"))))) + +(define-public nuklear + (package + (name "nuklear") + (version "4.12.0") + (home-page "https://github.com/Immediate-Mode-UI/Nuklear") + (source (origin + (method git-fetch) + (uri (git-reference + (url home-page) + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "13cswwdys4hqdvbm4g4b9l269i16s7c4204j16v67ghj3b4mjifg")) + (snippet #~(begin (delete-file "nuklear.h") + (delete-file "doc/index.html"))))) + (build-system python-build-system) + (arguments + (list #:tests? #f ;no tests + #:phases #~(modify-phases %standard-phases + (delete 'configure) + (replace 'build + (lambda _ + (with-directory-excursion "src" + (invoke "./paq.sh")) + (with-directory-excursion "doc" + (with-input-from-file "../nuklear.h" + (lambda _ + (with-output-to-file "index.html" + (lambda _ + (invoke "stddoc")))))))) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (install-file "nuklear.h" + (string-append #$output "/include")) + (install-file "doc/index.html" + (string-append #$output + "/share/doc"))))))) + (native-inputs (list stddoc)) + (synopsis "Graphical user interface toolkit written in ANSI C") + (description "This package provides an immediate-mode graphical user +interface toolkit. It was designed as an embeddable user interface +for applications and does not have any dependencies, a default render backend +or OS window/input handling. The library is self contained in one single header +file and can be used either in header only mode or in implementation mode.") + (license (list license:unlicense license:expat)))) -- cgit v1.2.3 From 43719864cfdfdea0dcae451af519da629c5ddd86 Mon Sep 17 00:00:00 2001 From: Ahmad Draidi Date: Tue, 9 Apr 2024 20:56:50 +0400 Subject: gnu: Add durden. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/arcan.scm (durden): New variable. * gnu/packages/patches/durden-shadow-arcan.patch: New file. * gnu/local.mk: Register it. Change-Id: I3ea34563c74c227eed40f4ad50d23713c45ce70b Signed-off-by: Ludovic Courtès --- gnu/local.mk | 1 + gnu/packages/arcan.scm | 73 +++++++++++++++++++++++++- gnu/packages/patches/durden-shadow-arcan.patch | 42 +++++++++++++++ 3 files changed, 115 insertions(+), 1 deletion(-) create mode 100644 gnu/packages/patches/durden-shadow-arcan.patch diff --git a/gnu/local.mk b/gnu/local.mk index 255bb870e9..81ea687b61 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1120,6 +1120,7 @@ dist_patch_DATA = \ %D%/packages/patches/dune-common-skip-failing-tests.patch \ %D%/packages/patches/dune-grid-add-missing-include-cassert.patch \ %D%/packages/patches/dune-istl-fix-solver-playground.patch \ + %D%/packages/patches/durden-shadow-arcan.patch \ %D%/packages/patches/dvd+rw-tools-add-include.patch \ %D%/packages/patches/dynaconf-unvendor-deps.patch \ %D%/packages/patches/dyninst-fix-glibc-compatibility.patch \ diff --git a/gnu/packages/arcan.scm b/gnu/packages/arcan.scm index c4dfa8da3e..f86e8206e5 100644 --- a/gnu/packages/arcan.scm +++ b/gnu/packages/arcan.scm @@ -1,7 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2019 L p R n d n ;;; Copyright © 2021 Guillaume Le Vaillant -;;; Copyright © 2023 Ahmad Draidi +;;; Copyright © 2023, 2024 Ahmad Draidi ;;; ;;; This file is part of GNU Guix. ;;; @@ -20,6 +20,7 @@ (define-module (gnu packages arcan) #:use-module (guix build-system cmake) + #:use-module (guix build-system copy) #:use-module (guix build-system meson) #:use-module (guix build-system gnu) #:use-module (guix gexp) @@ -27,8 +28,10 @@ (define-module (gnu packages arcan) #:use-module ((guix licenses) #:prefix license:) #:use-module (guix packages) #:use-module (guix utils) + #:use-module (gnu packages) #:use-module (gnu packages audio) #:use-module (gnu packages autotools) + #:use-module (gnu packages base) #:use-module (gnu packages bash) #:use-module (gnu packages compression) #:use-module (gnu packages databases) @@ -183,6 +186,74 @@ (define-public arcan-sdl "-DSTATIC_FREETYPE=off" "-DSHMIF_TUI_ACCEL=on"))))) (synopsis "Combined display server, multimedia framework and game engine (SDL)"))) +(define-public durden + ;; Match Arcan 0.6.3 + (let ((commit "a8938b9c835f55bedc2c42aec4ddc5c9739eb949") + (revision "1")) + (package + (name "durden") + (version (git-version "0.6.1" revision commit)) + (source + (origin + (method git-fetch) + (file-name (git-file-name name version)) + (uri (git-reference + (url "https://github.com/letoram/durden") + (commit commit))) + (sha256 + (base32 "1ybi6x2kwn597kjqycrqmlvp6z79yv2jfwzgx937wcckm55xlpvk")) + (patches (search-patches "durden-shadow-arcan.patch")))) + (build-system copy-build-system) + (arguments + (list + #:install-plan #~'(("durden/" "share/arcan/appl/durden/") + ("util/" "share/arcan/appl/durden/util/") + ("distr/durden" "bin/durden")) + #:phases #~(modify-phases %standard-phases + (add-after 'unpack 'patch-paths + (lambda* (#:key inputs outputs #:allow-other-keys) + (substitute* "distr/durden" + (("/usr/share/\\$applname") + (string-append (assoc-ref outputs "out") + "/share/arcan/appl")) + (("@ARCAN_STORE_PATH@") + (string-append (assoc-ref inputs "arcan") + "/bin/arcan")) + (("([\\([:blank:]]+)basename " _ separator) + (string-append separator + (assoc-ref inputs "coreutils") + "/bin/basename ")) + (("([\\([:blank:]]+)date " _ separator) + (string-append separator + (assoc-ref inputs "coreutils") + "/bin/date ")) + (("([\\([:blank:]]+)ln " _ separator) + (string-append separator + (assoc-ref inputs "coreutils") + "/bin/ln ")) + (("([\\([:blank:]]+)mkdir " _ separator) + (string-append separator + (assoc-ref inputs "coreutils") + "/bin/mkdir ")) + (("([\\([:blank:]]+)true; " _ separator) + (string-append separator + (assoc-ref inputs "coreutils") + "/bin/true; ")) + (("([\\([:blank:]]+)\\[ " _ separator) + (string-append separator + (assoc-ref inputs "coreutils") + "/bin/[ ")))))))) + (inputs (list arcan coreutils)) + (home-page "https://durden.arcan-fe.com/") + (synopsis "Desktop Environment for Arcan") + (description + "Durden is a desktop environment for the Arcan Display Server. +It serves both as a reference showcase on how to take advantage of some of the +features in Arcan, and as an entry to the advanced-user side of the desktop +environment spectrum.") + (license (list license:bsd-3 license:expat license:cc-by3.0 + license:cc-by4.0 license:asl2.0))))) + (define-public xarcan (package (name "xarcan") diff --git a/gnu/packages/patches/durden-shadow-arcan.patch b/gnu/packages/patches/durden-shadow-arcan.patch new file mode 100644 index 0000000000..b666a6d7e3 --- /dev/null +++ b/gnu/packages/patches/durden-shadow-arcan.patch @@ -0,0 +1,42 @@ +From 157524b7cb76c5044a27f4a9e373ee04a9da3c71 Mon Sep 17 00:00:00 2001 +From: Ahmad Draidi +Date: Tue, 9 Apr 2024 18:26:52 +0400 +Subject: [PATCH] Use arcan from setuid-programs if available + +--- + distr/durden | 10 ++++++++-- + 1 file changed, 8 insertions(+), 2 deletions(-) + +diff --git a/distr/durden b/distr/durden +index ab431ce..8672556 100755 +--- a/distr/durden ++++ b/distr/durden +@@ -1,5 +1,11 @@ + #!/bin/sh + ++if [ -n "$(command -v /run/setuid-programs/arcan 2>/dev/null)" ]; then ++ ARCAN_CMD="/run/setuid-programs/arcan" ++else ++ ARCAN_CMD="@ARCAN_STORE_PATH@" ++fi ++ + arcan_base=${HOME}/.arcan + applname="$(basename $0)" + distargs="" +@@ -98,11 +104,11 @@ while true; do + starttime=$(date +%s) + + if [ -d "${arcan_logpath}" ]; then +- if arcan ${distargs} -b "$applname" "$applname" "$@" >"${arcan_logpath}/${applname}_${starttime}.log" 2>&1; then ++ if "${ARCAN_CMD}" ${distargs} -b "$applname" "$applname" "$@" >"${arcan_logpath}/${applname}_${starttime}.log" 2>&1; then + exit + fi + else +- if arcan ${distargs} -b "$applname" "$applname" "$@"; then ++ if "${ARCAN_CMD}" ${distargs} -b "$applname" "$applname" "$@"; then + exit + fi + fi +-- +2.41.0 + -- cgit v1.2.3 From b9657803342007dc930e935cb056c34b6d615e04 Mon Sep 17 00:00:00 2001 From: Philip McGrath Date: Mon, 1 Apr 2024 02:51:06 -0400 Subject: gnu: zuo: Update to 1.9. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Zuo now has tagged releases independent of the Racket release cycle. * gnu/packages/patches/racket-zuo-bin-sh.patch: Move to ... * gnu/packages/patches/zuo-bin-sh.patch: ... this file, and refresh it. * gnu/local.mk (dist_patch_DATA): Update accordingly. * gnu/packages/racket/scm (%racket-origin)[patches]: Likewise. * gnu/packages/patches/racket-chez-scheme-bin-sh.patch: Refresh patch. * gnu/packages/patches/racket-rktio-bin-sh.patch: Likewise. * gnu/packages/racket/scm (%zuo-version): Move to ... (zuo)[version]: ... this field, and update to 1.9. [source]: Change to the repository where Zuo releases are tagged. [arguments]: Stop supplying '#:phases'. Change-Id: Ia82c0f7a8e4696ae08e30965e3f4ec85673b86e5 Signed-off-by: Ludovic Courtès --- gnu/local.mk | 4 +- .../patches/racket-chez-scheme-bin-sh.patch | 21 +++--- gnu/packages/patches/racket-rktio-bin-sh.patch | 17 +++-- gnu/packages/patches/racket-zuo-bin-sh.patch | 74 -------------------- gnu/packages/patches/zuo-bin-sh.patch | 79 ++++++++++++++++++++++ gnu/packages/racket.scm | 54 +++++++-------- 6 files changed, 130 insertions(+), 119 deletions(-) delete mode 100644 gnu/packages/patches/racket-zuo-bin-sh.patch create mode 100644 gnu/packages/patches/zuo-bin-sh.patch diff --git a/gnu/local.mk b/gnu/local.mk index 81ea687b61..7d7c8d9561 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -2001,7 +2001,6 @@ dist_patch_DATA = \ %D%/packages/patches/racket-chez-scheme-bin-sh.patch \ %D%/packages/patches/racket-backport-8.11-layered-docs.patch \ %D%/packages/patches/racket-rktio-bin-sh.patch \ - %D%/packages/patches/racket-zuo-bin-sh.patch \ %D%/packages/patches/remake-impure-dirs.patch \ %D%/packages/patches/restartd-update-robust.patch \ %D%/packages/patches/restic-0.9.6-fix-tests-for-go1.15.patch \ @@ -2244,7 +2243,8 @@ dist_patch_DATA = \ %D%/packages/patches/zig-do-not-link-against-librt.patch \ %D%/packages/patches/zig-use-baseline-cpu-by-default.patch \ %D%/packages/patches/zig-use-system-paths.patch \ - %D%/packages/patches/zsh-egrep-failing-test.patch + %D%/packages/patches/zsh-egrep-failing-test.patch \ + %D%/packages/patches/zuo-bin-sh.patch MISC_DISTRO_FILES = \ %D%/packages/ld-wrapper.in diff --git a/gnu/packages/patches/racket-chez-scheme-bin-sh.patch b/gnu/packages/patches/racket-chez-scheme-bin-sh.patch index 331b4f244b..e77c26f303 100644 --- a/gnu/packages/patches/racket-chez-scheme-bin-sh.patch +++ b/gnu/packages/patches/racket-chez-scheme-bin-sh.patch @@ -1,4 +1,4 @@ -From f86370295c5bb14d4bb93d0ccfa37a2b79f19f25 Mon Sep 17 00:00:00 2001 +From 5398e6d3305def343a009aba7c5f8915851c4115 Mon Sep 17 00:00:00 2001 From: Philip McGrath Date: Wed, 24 Aug 2022 19:55:14 -0400 Subject: [PATCH] Chez Scheme: patch s_process for "/bin/sh" on Guix @@ -14,17 +14,22 @@ then `s_process` will call `execl` with the file specified by `_PATH_BSHELL` instead of "/bin/sh". Checking that the path specified by `_PATH_BSHELL` exists safeguards -against obscure errors if attempting to use stand-alone executables -built by the patched Racket in non-Guix envoronments. +against obscure errors if attempting to use the patched Chez Scheme +or executables it builds in non-Guix envoronments. This patch does not change the behavior of `s_system`, which relies on `system` from the C library. --- + +Notes: + See also chez-scheme-bin-sh.patch, racket-rktio-bin-sh.patch, + and zuo-bin-sh.patch. + racket/src/ChezScheme/c/prim5.c | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) diff --git a/racket/src/ChezScheme/c/prim5.c b/racket/src/ChezScheme/c/prim5.c -index 82bbf8d687..be8f603447 100644 +index 90b087f125..284f063f8b 100644 --- a/racket/src/ChezScheme/c/prim5.c +++ b/racket/src/ChezScheme/c/prim5.c @@ -27,6 +27,12 @@ @@ -40,7 +45,7 @@ index 82bbf8d687..be8f603447 100644 /* locally defined functions */ static INT s_errno(void); static IBOOL s_addr_in_heap(uptr x); -@@ -861,6 +867,17 @@ static ptr s_process(char *s, IBOOL stderrp) { +@@ -875,6 +881,17 @@ static ptr s_process(char *s, IBOOL stderrp) { INT tofds[2], fromfds[2], errfds[2]; struct sigaction act, oint_act; @@ -58,7 +63,7 @@ index 82bbf8d687..be8f603447 100644 if (pipe(tofds)) S_error("process","cannot open pipes"); if (pipe(fromfds)) { -@@ -897,7 +914,9 @@ static ptr s_process(char *s, IBOOL stderrp) { +@@ -911,7 +928,9 @@ static ptr s_process(char *s, IBOOL stderrp) { } } #endif /* __GNU__ Hurd */ @@ -70,7 +75,7 @@ index 82bbf8d687..be8f603447 100644 /*NOTREACHED*/ } else { -base-commit: 87eee6e2adb8c6bc11e60619c706fa6295096085 +base-commit: 78fef00d4d16a79fdf6ab31924b3a80cadf4b368 -- -2.32.0 +2.41.0 diff --git a/gnu/packages/patches/racket-rktio-bin-sh.patch b/gnu/packages/patches/racket-rktio-bin-sh.patch index ec6f0d9c56..d777c0979a 100644 --- a/gnu/packages/patches/racket-rktio-bin-sh.patch +++ b/gnu/packages/patches/racket-rktio-bin-sh.patch @@ -1,4 +1,4 @@ -From 6a553f24439fe64fd3a2f0b5902f00590ca4241f Mon Sep 17 00:00:00 2001 +From 5e546a30789e5c9b3c94674b94cb63e16ee2e951 Mon Sep 17 00:00:00 2001 From: Philip McGrath Date: Thu, 4 Mar 2021 04:11:50 -0500 Subject: [PATCH] rktio: patch rktio_process for "/bin/sh" on Guix @@ -28,11 +28,16 @@ Checking that the path specified by `_PATH_BSHELL` exists safeguards against obscure errors if attempting to use stand-alone executables built by the patched Racket in non-Guix envoronments. --- + +Notes: + See also chez-scheme-bin-sh.patch, racket-chez-scheme-bin-sh.patch, + and zuo-bin-sh.patch. + racket/src/rktio/rktio_process.c | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/racket/src/rktio/rktio_process.c b/racket/src/rktio/rktio_process.c -index fafaf728c1..796ebc59ce 100644 +index 862850d93a..87daafef76 100644 --- a/racket/src/rktio/rktio_process.c +++ b/racket/src/rktio/rktio_process.c @@ -9,6 +9,7 @@ @@ -43,7 +48,7 @@ index fafaf728c1..796ebc59ce 100644 # ifdef USE_ULIMIT # include # endif -@@ -1301,12 +1302,14 @@ int rktio_process_allowed_flags(rktio_t *rktio) +@@ -1358,12 +1359,14 @@ int rktio_process_allowed_flags(rktio_t *rktio) /*========================================================================*/ rktio_process_result_t *rktio_process(rktio_t *rktio, @@ -59,7 +64,7 @@ index fafaf728c1..796ebc59ce 100644 rktio_process_result_t *result; intptr_t to_subprocess[2], from_subprocess[2], err_subprocess[2]; int pid; -@@ -1333,6 +1336,18 @@ rktio_process_result_t *rktio_process(rktio_t *rktio, +@@ -1390,6 +1393,18 @@ rktio_process_result_t *rktio_process(rktio_t *rktio, int i; #endif @@ -79,7 +84,7 @@ index fafaf728c1..796ebc59ce 100644 to_subprocess[0] = -1; to_subprocess[1] = -1; -base-commit: 9d228d16fb99c274c964e5bef93e97333888769f +base-commit: 78fef00d4d16a79fdf6ab31924b3a80cadf4b368 -- -2.32.0 +2.41.0 diff --git a/gnu/packages/patches/racket-zuo-bin-sh.patch b/gnu/packages/patches/racket-zuo-bin-sh.patch deleted file mode 100644 index bcdcb8e963..0000000000 --- a/gnu/packages/patches/racket-zuo-bin-sh.patch +++ /dev/null @@ -1,74 +0,0 @@ -From 73d9b77a11b4516905caf579abb559736f715ea6 Mon Sep 17 00:00:00 2001 -From: Philip McGrath -Date: Mon, 11 Apr 2022 20:43:18 -0400 -Subject: [PATCH] Zuo: patch zuo_process for "/bin/sh" on Guix - -If: - - 1. The nonstandard but ubiquitous macro `_PATH_BSHELL` from - is defined; and - - 2. `zuo_process` is called with the exact path "/bin/sh"; and - - 3. The path specified by `_PATH_BSHELL` exists; - -then `zuo_process` will execute the file specified by `_PATH_BSHELL` -instead of "/bin/sh". - -Checking that the path specified by `_PATH_BSHELL` exists safeguards -against obscure errors if attempting to use stand-alone executables -built by the patched Racket in non-Guix envoronments. ---- - racket/src/zuo/zuo.c | 20 ++++++++++++++++++-- - 1 file changed, 18 insertions(+), 2 deletions(-) - -diff --git a/racket/src/zuo/zuo.c b/racket/src/zuo/zuo.c -index 17f161826d..c4fb3929bb 100644 ---- a/racket/src/zuo/zuo.c -+++ b/racket/src/zuo/zuo.c -@@ -15,6 +15,7 @@ - #include - #include - #ifdef ZUO_UNIX -+# include /* PATCHED for Guix */ - # include - # include - # include -@@ -5730,7 +5731,10 @@ static void zuo_pipe(zuo_raw_handle_t *_r, zuo_raw_handle_t *_w) - zuo_t *zuo_process(zuo_t *command_and_args) - { - const char *who = "process"; -- zuo_t *command = _zuo_car(command_and_args); -+ /* BEGIN PATCH for Guix */ -+ zuo_t *_guix_orig_command = _zuo_car(command_and_args); -+ zuo_t *command; -+ /* END PATCH for Guix */ - zuo_t *args = _zuo_cdr(command_and_args), *rev_args = z.o_null; - zuo_t *options = z.o_empty_hash, *opt; - zuo_t *dir, *l, *p_handle, *result; -@@ -5741,7 +5745,19 @@ zuo_t *zuo_process(zuo_t *command_and_args) - void *env; - int as_child, exact_cmdline; - -- check_path_string(who, command); -+ /* BEGIN PATCH for Guix */ -+ check_path_string(who, _guix_orig_command); -+#if defined(_PATH_BSHELL) -+ command = -+ ((z.o_false == zuo_string_eql(_guix_orig_command, zuo_string("/bin/sh"))) -+ || (z.o_false == zuo_stat(zuo_string(_PATH_BSHELL), z.o_false, z.o_true))) -+ ? _guix_orig_command -+ : zuo_string(_PATH_BSHELL); -+#else -+ command = _guix_orig_command; -+#endif -+ /* END PATCH for Guix */ -+ - for (l = args; l->tag == zuo_pair_tag; l = _zuo_cdr(l)) { - zuo_t *a = _zuo_car(l); - if (a == z.o_null) { - -base-commit: 87eee6e2adb8c6bc11e60619c706fa6295096085 --- -2.32.0 - diff --git a/gnu/packages/patches/zuo-bin-sh.patch b/gnu/packages/patches/zuo-bin-sh.patch new file mode 100644 index 0000000000..92e3774424 --- /dev/null +++ b/gnu/packages/patches/zuo-bin-sh.patch @@ -0,0 +1,79 @@ +From cd6bed5d22ea9cb7bae2be134d5d04433fc8e313 Mon Sep 17 00:00:00 2001 +From: Philip McGrath +Date: Mon, 11 Apr 2022 20:43:18 -0400 +Subject: [PATCH] patch zuo_process for "/bin/sh" on Guix + +If: + + 1. The nonstandard but ubiquitous macro `_PATH_BSHELL` from + is defined; and + + 2. `zuo_process` is called with the exact path "/bin/sh"; and + + 3. The path specified by `_PATH_BSHELL` exists; + +then `zuo_process` will execute the file specified by `_PATH_BSHELL` +instead of "/bin/sh". + +Checking that the path specified by `_PATH_BSHELL` exists safeguards +against obscure errors if attempting to use the patched Zuo +or derived executables in non-Guix envoronments. +--- + +Notes: + See also chez-scheme-bin-sh.patch, racket-chez-scheme-bin-sh.patch, + racket-rktio-bin-sh.patch. + + zuo.c | 20 ++++++++++++++++++-- + 1 file changed, 18 insertions(+), 2 deletions(-) + +diff --git a/zuo.c b/zuo.c +index d4163eb..bfc5484 100644 +--- a/zuo.c ++++ b/zuo.c +@@ -16,6 +16,7 @@ + #include + #include + #ifdef ZUO_UNIX ++# include /* PATCHED for Guix */ + # include + # include + # include +@@ -5949,7 +5950,10 @@ static void zuo_pipe(zuo_raw_handle_t *_r, zuo_raw_handle_t *_w) + zuo_t *zuo_process(zuo_t *command_and_args) + { + const char *who = "process"; +- zuo_t *command = _zuo_car(command_and_args); ++ /* BEGIN PATCH for Guix */ ++ zuo_t *_guix_orig_command = _zuo_car(command_and_args); ++ zuo_t *command; ++ /* END PATCH for Guix */ + zuo_t *args = _zuo_cdr(command_and_args), *rev_args = z.o_null; + zuo_t *options = z.o_empty_hash, *opt; + zuo_t *dir, *l, *p_handle, *result; +@@ -5960,7 +5964,19 @@ zuo_t *zuo_process(zuo_t *command_and_args) + void *env; + int as_child, exact_cmdline; + +- check_path_string(who, command); ++ /* BEGIN PATCH for Guix */ ++ check_path_string(who, _guix_orig_command); ++#if defined(_PATH_BSHELL) ++ command = ++ ((z.o_false == zuo_string_eql(_guix_orig_command, zuo_string("/bin/sh"))) ++ || (z.o_false == zuo_stat(zuo_string(_PATH_BSHELL), z.o_false, z.o_true))) ++ ? _guix_orig_command ++ : zuo_string(_PATH_BSHELL); ++#else ++ command = _guix_orig_command; ++#endif ++ /* END PATCH for Guix */ ++ + for (l = args; l->tag == zuo_pair_tag; l = _zuo_cdr(l)) { + zuo_t *a = _zuo_car(l); + if (a == z.o_null) { + +base-commit: a0faa82c8383d206aa38d21462ca4ae699851a0b +-- +2.41.0 + diff --git a/gnu/packages/racket.scm b/gnu/packages/racket.scm index 5c863f1afd..6e19be1da3 100644 --- a/gnu/packages/racket.scm +++ b/gnu/packages/racket.scm @@ -2,7 +2,7 @@ ;;; Copyright © 2013-2016, 2018, 2020-2022 Ludovic Courtès ;;; Copyright © 2017, 2018, 2019, 2020 Tobias Geerinckx-Rice ;;; Copyright © 2020 Pierre Neidhardt -;;; Copyright © 2021, 2022, 2023 Philip McGrath +;;; Copyright © 2021-2024 Philip McGrath ;;; Copyright © 2021 jgart ;;; ;;; This file is part of GNU Guix. @@ -192,7 +192,6 @@ (define-module (gnu packages racket) ;; CODE: (define %racket-version "8.11.1") ; Remember to update chez-scheme-for-racket! -(define %zuo-version "1.7") ; defined in racket/src/zuo/zuo.c (define %racket-commit (string-append "v" %racket-version)) (define %racket-origin @@ -206,8 +205,7 @@ (define %racket-origin (file-name (git-file-name "racket" %racket-version)) (patches (search-patches "racket-chez-scheme-bin-sh.patch" "racket-backport-8.11-layered-docs.patch" - "racket-rktio-bin-sh.patch" - "racket-zuo-bin-sh.patch")) + "racket-rktio-bin-sh.patch")) (modules '((guix build utils))) (snippet #~(begin @@ -229,30 +227,28 @@ (define %racket-origin (define-public zuo - (let ((revision #f)) - (package - (name "zuo") - (version (string-append %zuo-version - "-racket" - %racket-version - (if revision "-guix" "") - (or revision ""))) - (source %racket-origin) - (outputs '("out" "debug")) - (build-system gnu-build-system) - (arguments - (list - #:out-of-source? #t - #:phases - #~(modify-phases %standard-phases - (add-after 'unpack 'chdir - (lambda args - (chdir "racket/src/zuo")))))) - (home-page "https://github.com/racket/zuo") - ;; ^ 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 + (package + (name "zuo") + (version "1.9") ; defined in racket/src/zuo/zuo.c or the following + #;(displayln (~a (hash-ref (runtime-env) 'version) "." + (hash-ref (runtime-env) 'minor-version))) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/racket/zuo") + (commit (string-append "v" version)))) + (sha256 + (base32 "0zasir33nx1qi1ciz9dn6h8k39i443lr6apw5d1i6mjmhpzxmdhp")) + (file-name (git-file-name name version)) + (patches (search-patches "zuo-bin-sh.patch")))) + (outputs '("out" "debug")) + (build-system gnu-build-system) + (arguments + (list + #:out-of-source? #t)) + (home-page "https://github.com/racket/zuo") + (synopsis "Tiny Racket for build scripts") + (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. @@ -261,7 +257,7 @@ (define-public zuo and expansion of the file content. That's how the @command{make}-like DSL is defined, and even the base Zuo language is defined by layers of @code{#lang}s. One of the early layers implements macros.") - (license (list license:asl2.0 license:expat))))) + (license (list license:asl2.0 license:expat)))) (define racket-vm-common-configure-flags -- cgit v1.2.3 From 5b5d18e29d6ade2d097875d55d2ceb28c80986b2 Mon Sep 17 00:00:00 2001 From: Philip McGrath Date: Mon, 1 Apr 2024 02:51:07 -0400 Subject: gnu: racket: Update to 8.12. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit All of Racket's changes to Chez Scheme have been merged upstream. They are the basis for the Chez Scheme 10.0.0 release. For the forseeable future, Racket will continue to depend on a specific pre-release version of Chez Scheme as part of Racket's "ABI": see upstream discussion at . * gnu/packages/chez.scm (chez-configure): Change to define a phase to run the Chez Scheme configure script, renaming the old definition to ... (configure-chezschemelibdirs): ... this new variable. (chez-srfi, chez-matchable, chez-irregex, chez-fmt, chez-mit) (chez-scmutils)[arguments]<#:phases>: Update accordingly. (unpack-nanopass+stex): Replace with ... (unpack-nanopass): ... this new variable. (chez-scheme)[arguments]<#:phases>: Inline old definition of 'unpack-nanopass+stex' to facilitate transition. (chez-scheme-for-racket): Stop inheriting from 'chez-scheme'. [version]: Update to 9.9.9-pre-release.23. [outputs]: Add "debug" output. [native-inputs]: Add 'texlive-enumitem' for native builds. For cross builds, omit TeX-related inputs and add this-package:doc. [inputs, native-search-paths, home-page]: Rewrite without inheritance. [arguments]: Likewise, and adjust for upstream changes. [synopsis, description]: Rewrite to reflect upstreaming of Racket's changes to Chez Scheme. (chez-scheme-for-racket-bootstrap-bootfiles): Stop inheriting from 'chez-scheme-bootstrap-bootfiles'. [arguments]: Rewrite without inheritance. Use `make cross.boot` instead of broken experimental script for cross builds. [home-page]: Use bootstrapping Racket package instead of archived Git repository. [description]: Rewrite to reflect upstreaming of Racket's changes to Chez Scheme. * gnu/packages/patches/racket-backport-8.11-layered-docs.patch: Delete file. * gnu/packages/patches/racket-backport-8.12-chez-configure.patch: New file. * gnu/local.mk (dist_patch_DATA): Update accordingly. * gnu/packages/racket.scm (%racket-origin)[patches]: Likewise. [snippet]: Also unbundle Zuo and potential pre-built boot files. (%racket-version): Update to 8.12. (racket-vm-cs)[arguments]<#:phases>: Use 'unpack-nanopass' instead of 'unpack-nanopass+stex'. (racket)[inputs] : Update hashes. : Likewise, and remove obsolete snippet. Change-Id: I11e7f44be37c60c91b03d246a50e75e418bd0672 Signed-off-by: Ludovic Courtès --- gnu/local.mk | 4 +- gnu/packages/chez.scm | 522 ++++++++++++--------- .../racket-backport-8.11-layered-docs.patch | 36 -- .../racket-backport-8.12-chez-configure.patch | 423 +++++++++++++++++ gnu/packages/racket.scm | 61 +-- 5 files changed, 761 insertions(+), 285 deletions(-) delete mode 100644 gnu/packages/patches/racket-backport-8.11-layered-docs.patch create mode 100644 gnu/packages/patches/racket-backport-8.12-chez-configure.patch diff --git a/gnu/local.mk b/gnu/local.mk index 7d7c8d9561..ef2b64a7c0 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -41,7 +41,7 @@ # Copyright © 2020, 2023 Vinicius Monego # Copyright © 2021 Björn Höfling # Copyright © 2021 Greg Hogan -# Copyright © 2021, 2022, 2023 Philip McGrath +# Copyright © 2021-2024 Philip McGrath # Copyright © 2021 Arun Isaac # Copyright © 2021 Sharlatan Hellseher # Copyright © 2021 Dmitry Polyakov @@ -1999,7 +1999,7 @@ dist_patch_DATA = \ %D%/packages/patches/rpcbind-CVE-2017-8779.patch \ %D%/packages/patches/rtags-separate-rct.patch \ %D%/packages/patches/racket-chez-scheme-bin-sh.patch \ - %D%/packages/patches/racket-backport-8.11-layered-docs.patch \ + %D%/packages/patches/racket-backport-8.12-chez-configure.patch \ %D%/packages/patches/racket-rktio-bin-sh.patch \ %D%/packages/patches/remake-impure-dirs.patch \ %D%/packages/patches/restartd-update-robust.patch \ diff --git a/gnu/packages/chez.scm b/gnu/packages/chez.scm index 2811cf3e01..f651cdce0c 100644 --- a/gnu/packages/chez.scm +++ b/gnu/packages/chez.scm @@ -4,7 +4,7 @@ ;;; Copyright © 2017, 2019 Tobias Geerinckx-Rice ;;; Copyright © 2019 Brett Gilio ;;; Copyright © 2020 Brendan Tildesley -;;; Copyright © 2021, 2022, 2023 Philip McGrath +;;; Copyright © 2021-2024 Philip McGrath ;;; ;;; This file is part of GNU Guix. ;;; @@ -51,7 +51,7 @@ (define-module (gnu packages chez) #:export (chez-scheme-for-system racket-cs-native-supported-system? nix-system->pbarch-machine-type - unpack-nanopass+stex)) + unpack-nanopass)) ;; Commentary: ;; @@ -273,19 +273,14 @@ (define* (racket-cs-native-supported-system? #:optional ;; Chez Scheme: ;; - -(define unpack-nanopass+stex - #~(begin - (copy-recursively - (dirname (search-input-file %build-inputs - "lib/chez-scheme/nanopass.ss")) - "nanopass" - #:keep-mtime? #t) - (mkdir-p "stex") - (with-output-to-file "stex/Mf-stex" - (lambda () - ;; otherwise, it will try to download submodules - (display "# to placate ../configure"))))) +(define unpack-nanopass + #~(lambda* (#:key inputs native-inputs #:allow-other-keys) + (with-directory-excursion (if (directory-exists? "racket/src/ChezScheme") + "racket/src/ChezScheme" + ".") + (symlink (dirname (search-input-file (or native-inputs inputs) + "lib/chez-scheme/nanopass.ss")) + "nanopass")))) (define-public chez-scheme (package @@ -357,7 +352,17 @@ (define-public chez-scheme #~(modify-phases %standard-phases (add-after 'unpack 'unpack-nanopass+stex (lambda args - #$unpack-nanopass+stex)) + (begin + (copy-recursively + (dirname (search-input-file %build-inputs + "lib/chez-scheme/nanopass.ss")) + "nanopass" + #:keep-mtime? #t) + (mkdir-p "stex") + (with-output-to-file "stex/Mf-stex" + (lambda () + ;; otherwise, it will try to download submodules + (display "# to placate ../configure")))))) (add-after 'unpack-nanopass+stex 'unpack-bootfiles (lambda* (#:key native-inputs inputs #:allow-other-keys) (when (directory-exists? "boot") @@ -462,152 +467,226 @@ (define* (stex-make #:optional (suffix "")) and 32-bit PowerPC architectures.") (license asl2.0))) +(define chez-configure + ;; The custom Chez 'configure' script doesn't allow unrecognized flags, such + ;; as those automatically added by `gnu-build-system`. This replacement + ;; phase uses only the explicitly provided `#:configure-flags`. + #~(lambda* (#:key inputs (configure-flags '()) out-of-source? + #:allow-other-keys) + (let* ((abs-srcdir (getcwd)) + (srcdir (if out-of-source? + (string-append "../" (basename abs-srcdir)) + "."))) + (format #t "source directory: ~s (relative from build: ~s)~%" + abs-srcdir srcdir) + (when out-of-source? + (begin + (mkdir "../build") + (chdir "../build"))) + (format #t "build directory: ~s~%" (getcwd)) + (format #t "configure flags: ~s~%" configure-flags) + (apply invoke + (string-append srcdir "/configure") + configure-flags)))) + (define-public chez-scheme-for-racket (package - (inherit chez-scheme) (name "chez-scheme-for-racket") - (version "9.9.9-pre-release.18") - ;; The version should match `scheme-version`. - ;; See racket/src/ChezScheme/s/cmacros.ss c. line 360. - ;; It will always be different than the upstream version! - ;; When updating, remember to also update %racket-version in racket.scm. - (source #f) ; avoid problematic cycle with racket.scm - (inputs - (let ((inputs (modify-inputs (package-inputs chez-scheme) - (replace "chez-scheme-bootstrap-bootfiles" - chez-scheme-for-racket-bootstrap-bootfiles) - (delete "libx11" "util-linux:lib")))) - (if (racket-cs-native-supported-system?) - inputs - (modify-inputs inputs - (prepend libffi))))) - (native-inputs - (let ((native-inputs (modify-inputs (package-native-inputs chez-scheme) - (prepend zuo)))) - (if (%current-target-system) - (modify-inputs native-inputs - (prepend this-package)) - native-inputs))) + ;; The version should match `(scheme-version-number #t)`. + ;; See s/cmacros.ss c. line 360. + (version "9.9.9-pre-release.23") + (source #f) + (build-system gnu-build-system) + (inputs `(,@(if (racket-cs-native-supported-system?) + '() + (list libffi)) + ,chez-scheme-for-racket-bootstrap-bootfiles + ,lz4 + ,ncurses ;<-- for expeditor + ,zlib)) + (native-inputs `(,@(if (%current-target-system) + (list this-package + `(,this-package "doc")) + (list stex-bootstrap + (texlive-updmap.cfg + (list texlive-enumitem)))) + ,chez-nanopass-bootstrap + ,zuo)) + (native-search-paths + (list (search-path-specification + (variable "CHEZSCHEMELIBDIRS") + (files '("lib/chez-scheme"))))) + (outputs '("out" "debug" "doc")) (arguments - (substitute-keyword-arguments (package-arguments chez-scheme) - ((#:out-of-source? _ #f) - #t) - ((#:configure-flags cfg-flags #~'()) - #~`("--disable-x11" - "--threads" ;; ok to potentially duplicate - #$(string-append "-m=" (or (racket-cs-native-supported-system?) - (nix-system->pbarch-machine-type))) - ;; ^ could skip -m= for non-cross non-pbarch builds - #$@(if (racket-cs-native-supported-system?) - #~() - ;; not inferred on non-native platforms: see - ;; https://racket.discourse.group/t/950/9 - #~("--enable-libffi" - "CFLAGS=-g -O2 -D_REENTRANT -pthread" - "LIBS=-lm -ldl -lrt -lffi -lncurses")) - #$@(if (%current-target-system) - (list (string-append "--toolprefix=" - (%current-target-system) - "-")) - '()) - ,@(let* ((chez+version (strip-store-file-name #$output)) - (doc-prefix (assoc-ref %outputs "doc")) - (doc-dir (string-append doc-prefix - "/share/doc/" - chez+version))) - (list (string-append "--installcsug=" - doc-dir - "/csug") - (string-append "--installreleasenotes=" - doc-dir - "/release_notes"))) - ,@#$cfg-flags)) - ((#:make-flags mk-flags #~'()) - #~(cons* (string-append "ZUO=" - #+(this-package-native-input "zuo") - "/bin/zuo") - (string-append "STEXLIB=" - #+(this-package-native-input "stex") - "/lib/stex") - #$mk-flags)) - ((#:phases those-phases #~%standard-phases) - #~(let* ((those-phases #$those-phases) - (gnu:unpack (assoc-ref those-phases 'unpack)) - (gnu:build (assoc-ref those-phases 'build))) - (modify-phases those-phases - (replace 'build - ;; need to override target for cross-compilation - ;; https://racket.discourse.group/t/950/19 - (lambda* (#:key target (make-flags '()) (parallel-build? #t) - #:allow-other-keys) - (gnu:build #:make-flags (if target - (cons "kernel" make-flags) - make-flags) - #:parallel-build? parallel-build?))) - (replace 'install-docs - (lambda* (#:key native-inputs (make-flags '()) - #:allow-other-keys) - ;; The tests for 'native-inputs' are cross-compilation - ;; workarounds that would be better to address upstream: - ;; see . - (when native-inputs - (substitute* "Makefile" - (("install-docs: build \\$[(]ZUO[)]") - "install-docs: $(ZUO)"))) - (apply invoke - "make" - "install-docs" - (if native-inputs - (cons (string-append - "Scheme=" - (search-input-file native-inputs - "/bin/scheme")) - make-flags) - make-flags)))) - (replace 'unpack - (lambda args - (gnu:unpack #:source #$(or (package-source this-package) - (package-source racket-vm-bc))))) - (add-after 'unpack 'chdir - (lambda args - (chdir "racket/src/ChezScheme")))))))) - (supported-systems %supported-systems) - (home-page "https://github.com/racket/ChezScheme") - ;; ^ This is downstream of https://github.com/racket/racket, - ;; but it's designed to be a friendly landing place for people - ;; who want a ChezScheme-shaped repositroy. - (synopsis "Variant of Chez Scheme extended for Racket") - (description "This variant of Chez Scheme is extended to support the -implementation of Racket. It may be useful on platforms that are not yet -supported by upstream Chez Scheme. - -Main additions to Chez Scheme in the Racket variant: -@itemize @bullet -@item -AArch64 and RV64G (RISC-V) code generation -@item -Portable bytecode (@code{pb}) mode, which is mainly useful for bootstrapping a -build on any platform, but can also be used on platforms without native-code -generation, compiled via Emscripten, linked with @code{libffi}, or used with -bytecode partially compiled to C -@item -Unboxed floating-point arithmetic and flvectors -@item -Faster multiplication and division for large exact numbers -@item -Type reconstruction during optimization (especially for safe code) -@item -Continuation marks -@item -Parallel garbage collection, in-place garbage collection for old-generation -objects (instead of always copying), and reachability-based memory -accounting -@item -Ordered finalization, immobile (but collectable) objects, weak/ephemeron -generic hash tables, and reference bytevectors -@item -Easier bootstrapping via old versions of Chez Scheme -@end itemize") + (list + #:modules + '((guix build gnu-build-system) + (guix build utils) + (ice-9 ftw) + (ice-9 match) + (srfi srfi-34)) + #:out-of-source? #t + ;; Intermittent failures: https://github.com/cisco/ChezScheme/issues/809 + #:tests? #f + #:test-target "test" ; test-one test-some-fast test-some test test-more + #:configure-flags + #~`(,@(let* ((chez+version (strip-store-file-name #$output)) + (doc-dir (string-append #$output:doc + "/share/doc/" + chez+version))) + (list (string-append "--installcsug=" + doc-dir + "/csug") + (string-append "--installreleasenotes=" + doc-dir + "/release_notes"))) + ,(string-append "--installprefix=" #$output) + #$@(if (%current-target-system) + (list (string-append "--toolprefix=" + (%current-target-system) + "-")) + '()) + ,@(if (false-if-exception + (search-input-directory %build-inputs "/include/X11")) + '() + '("--disable-x11")) + #$(string-append "-m=" (or (racket-cs-native-supported-system?) + (nix-system->pbarch-machine-type))) + ;; ^ could skip -m= for non-cross non-pbarch builds + #$@(if (racket-cs-native-supported-system?) + #~() + ;; not inferred on non-native platforms: see + ;; https://racket.discourse.group/t/950/9 + #~("--enable-libffi" + "CFLAGS+=-g -D_REENTRANT -pthread" + "LIBS+=-lm -ldl -lrt -lncurses")) + ,(string-append "STEXLIB=" + (or (false-if-exception + (search-input-directory %build-inputs + "/lib/stex")) + "/GuixNotUsingStex")) + "ZUO=zuo" + "ZLIB=-lz" + "LZ4=-llz4" + ;; Guix will do 'compress-man-pages', + ;; and letting Chez try caused an error (at one point) + "--nogzip-man-pages") + #:phases + #~(modify-phases %standard-phases + (replace 'unpack + (let ((unpack (assoc-ref %standard-phases 'unpack))) + (lambda args + (unpack #:source #$(or (package-source this-package) + (package-source racket-vm-bc)))))) + (add-after 'unpack 'unpack-nanopass + #$unpack-nanopass) + (add-after 'unpack-nanopass 'maybe-chdir + (lambda args + (when (directory-exists? "racket/src/ChezScheme") + (chdir "racket/src/ChezScheme")))) + (add-after 'maybe-chdir 'unpack-bootfiles + (lambda* (#:key native-inputs inputs #:allow-other-keys) + (when (directory-exists? "boot") + (delete-file-recursively "boot")) + (copy-recursively + (search-input-directory inputs "lib/chez-scheme-bootfiles") + "boot"))) + (replace 'configure + #$chez-configure) + (add-after 'configure 'configure-environment-variables + (lambda args + ;; mats/6.ms needs HOME to be set: + (setenv "HOME" "/tmp"))) + (replace 'build + ;; need to override target for cross-compilation + ;; https://racket.discourse.group/t/950/19 + (let ((gnu:build (assoc-ref %standard-phases 'build))) + (lambda* (#:key target (make-flags '()) (parallel-build? #t) + #:allow-other-keys) + (gnu:build #:make-flags (if target + (cons "kernel" make-flags) + make-flags) + #:parallel-build? parallel-build?)))) + (add-before 'check 'build-docs + ;; Building the documentation requires stex and a running scheme. + ;; This comes BEFORE 'check because the test suite may take on the + ;; order of an hour (without parallelism), so we want to get any + ;; other errors first. + ;; TODO: Improve cross support upstream: currently, it tries to + ;; run the cross-compiled scheme. + (lambda* (#:key native-inputs (make-flags '()) #:allow-other-keys) + #$(if (%current-target-system) + #~(format #t "not building docs for cross~%") + #~(apply invoke "make" "docs" make-flags)))) + ;; The binary file name is called "scheme" as is the one from + ;; MIT/GNU Scheme. We add a symlink to use in case both are + ;; installed. + (add-after 'install 'install-symlink + (lambda* (#:key outputs #:allow-other-keys) + (let* ((bin-dir + (dirname (search-input-file outputs "/bin/scheme"))) + (boot-dir + (match (find-files (string-append bin-dir "/../lib") + "scheme.boot") + ((scheme.boot) + (dirname scheme.boot))))) + (for-each (lambda (dir) + (with-directory-excursion dir + (symlink "./scheme" "chez-scheme") + (when (file-exists? "scheme.boot") + (symlink "./scheme.boot" "chez-scheme.boot")))) + (list bin-dir boot-dir))))) + (add-after 'install-symlink 'install-docs + ;; TODO: Improve cross support upstream. + ;; The `install-docs` target has a Zuo dependency on the `docs` + ;; target, so we have the same problem as the build-docs phase. + (lambda* (#:key native-inputs (make-flags '()) #:allow-other-keys) + #$(if (%current-target-system) + #~(let* ((rel + (string-append "share/doc/" + (strip-store-file-name #$output))) + (found/csug + (search-input-directory + native-inputs (string-append rel "/csug"))) + (found (substring found/csug + 0 + (- (string-length found/csug) + (string-length "/csug")))) + (dest (string-append #$output:doc "/" rel))) + (mkdir-p dest) + (with-directory-excursion dest + (for-each (lambda (f) + (symlink (string-append found "/" f) + f)) + '("csug" "csug.pdf" + "release_notes" "release_notes.pdf")))) + #~(apply invoke "make" "install-docs" make-flags)))) + (add-after 'install-docs 'link-doc-pdfs + ;; otherwise, it's hard to notice them in a forest of HTML files + ;; TODO: improve cross support upstream. + (lambda* (#:key outputs #:allow-other-keys) + #$(if (%current-target-system) + #~(format #t "nothing to be done for cross~%") + #~(with-directory-excursion + (string-append (or (assoc-ref outputs "doc") + (assoc-ref outputs "out")) + "/share/doc/" + (strip-store-file-name #$output)) + (symlink "release_notes/release_notes.pdf" + "release_notes.pdf") + (match (find-files + "csug" + "csug.*\\.pdf$" ;; embeded version number + #:fail-on-error? #t) + ((pth) + (symlink pth + "csug.pdf")))))))))) + (home-page "https://cisco.github.io/ChezScheme/") + (synopsis "Bootstrapping version of Chez Scheme") + (description + "This is the precise pre-release version of Chez Scheme from a specific +Racket release. It is used to build Racket and to bootstrap the released +version of Chez Scheme.") (license asl2.0))) ;; @@ -646,58 +725,70 @@ (define-public chez-scheme-bootstrap-bootfiles (define-public chez-scheme-for-racket-bootstrap-bootfiles (package - (inherit chez-scheme-bootstrap-bootfiles) (name "chez-scheme-for-racket-bootstrap-bootfiles") (version (package-version chez-scheme-for-racket)) (source #f) ; avoid problematic cycle with racket.scm (native-inputs - (cons* chez-nanopass-bootstrap - (if (%current-target-system) - (list zuo - chez-scheme-for-racket) - (list racket-vm-bc)))) + (cons chez-nanopass-bootstrap + (if (%current-target-system) + (list zuo + chez-scheme-for-racket) + (list racket-vm-bc)))) + (build-system copy-build-system) (arguments - (substitute-keyword-arguments - (package-arguments chez-scheme-bootstrap-bootfiles) - ((#:phases those-phases #~%standard-phases) - #~(let* ((those-phases #$those-phases) - (unpack (assoc-ref those-phases 'unpack))) - (modify-phases those-phases - (replace 'unpack - (lambda args - (unpack #:source #$(or (package-source this-package) - (package-source racket-vm-bc))))) - (add-after 'unpack 'chdir - (lambda args - (chdir "racket/src/ChezScheme"))) - (add-after 'chdir 'unpack-nanopass+stex - (lambda args - #$unpack-nanopass+stex)) - (add-before 'install 'build - (lambda* (#:key native-inputs inputs #:allow-other-keys) - #$(cond - ((%current-target-system) - ;; cross-compiling - #~(invoke - (search-input-file (or native-inputs inputs) - "/bin/zuo") - "makefiles/boot.zuo" - (search-input-file (or native-inputs inputs) - "/bin/scheme") - #$(or (racket-cs-native-supported-system?) - (nix-system->pbarch-machine-type)))) - (else - ;; bootstrapping - #~(invoke - (search-input-file (or native-inputs inputs) - "/opt/racket-vm/bin/racket") - "../rktboot/main.rkt")))))))))) - (supported-systems - (package-supported-systems chez-scheme-for-racket)) - (home-page "https://github.com/racket/ChezScheme") - ;; ^ This is downstream of https://github.com/racket/racket, - ;; but it's designed to be a friendly landing place for people - ;; who want a ChezScheme-shaped repositroy. + (list + #:install-plan + #~`(("boot/" "lib/chez-scheme-bootfiles")) + #:phases + #~(modify-phases %standard-phases + (replace 'unpack + (let ((unpack (assoc-ref %standard-phases 'unpack))) + (lambda args + (unpack #:source #$(or (package-source this-package) + (package-source racket-vm-bc)))))) + (add-after 'unpack 'unpack-nanopass + #$unpack-nanopass) + (add-after 'unpack-nanopass 'chdir + (lambda args + (chdir "racket/src/ChezScheme"))) + (add-before 'install 'build + #$(cond + ((%current-target-system) + ;; cross-compiling + ;; TODO: share more of this with upstream, once we figure out + ;; how best to manage running Chez as a cross-compiler and the + ;; unfortate cycle with %racket-origin. + #~(lambda* (#:key native-inputs inputs (parallel-build? #t) + #:allow-other-keys) + (invoke "./configure" + "--force" ; don't complain about missing bootfiles + #$(string-append + "-m=" (or (racket-cs-native-supported-system?) + (nix-system->pbarch-machine-type))) + "ZUO=zuo" + ;; ignore submodules: + "ZLIB=-lz" + "LZ4=-llz4" + "STEXLIB=/GuixNotUsingStex") + (apply invoke + "make" + `(,@(if parallel-build? + `("-j" ,(number->string + (parallel-job-count))) + '()) + ,(string-append "SCHEME=" + (search-input-file + (or native-inputs inputs) + "/bin/scheme")) + "cross.boot")))) + (else + ;; bootstrapping + #~(lambda* (#:key native-inputs inputs #:allow-other-keys) + (invoke + (search-input-file (or native-inputs inputs) + "/opt/racket-vm/bin/racket") + "../rktboot/main.rkt")))))))) + (home-page "https://pkgs.racket-lang.org/package/cs-bootstrap") (synopsis "Chez Scheme bootfiles bootstrapped by Racket") (description "Chez Scheme is a self-hosting compiler: building it requires ``bootfiles'' containing the Scheme-implemented portions compiled for @@ -709,11 +800,8 @@ (define-public chez-scheme-for-racket-bootstrap-bootfiles Scheme compiler purely from source into Racket and apply the compiler to itself, thus bootstrapping Chez Scheme. Bootstrapping takes about 10 times as long as using an existing Chez Scheme, but @code{cs-bootstrap} supports Racket -7.1 and later, including the Racket BC variant. - -Note that the generated bootfiles are specific to Racket's fork of Chez -Scheme, and @code{cs-bootstrap} does not currently support building upstream -Chez Scheme."))) +7.1 and later, including the Racket BC variant.") + (license asl2.0))) ;; ;; Chez's bootstrap dependencies: @@ -935,7 +1023,7 @@ (define-public chez-nanopass ;; Help function for Chez Scheme to add the current path to ;; CHEZSCHEMELIBDIRS. -(define chez-configure +(define configure-chezschemelibdirs #~(lambda _ (let ((chez-env (getenv "CHEZSCHEMELIBDIRS"))) (setenv "CHEZSCHEMELIBDIRS" @@ -975,7 +1063,7 @@ (define-public chez-srfi #:test-target "test" #:phases #~(modify-phases %standard-phases (replace 'configure - #$chez-configure)))) + #$configure-chezschemelibdirs)))) (home-page "https://github.com/fedeinthemix/chez-srfi") (synopsis "SRFI libraries for Chez Scheme") (description @@ -1159,7 +1247,7 @@ (define-public chez-matchable #:test-target "test" #:phases #~(modify-phases %standard-phases (replace 'configure - #$chez-configure)))) + #$configure-chezschemelibdirs)))) (synopsis "Portable hygienic pattern matcher for Scheme") (description "This package provides a superset of the popular Scheme @code{match} package by Andrew Wright, written in fully portable @@ -1191,7 +1279,7 @@ (define-public chez-irregex #:test-target "test" #:phases #~(modify-phases %standard-phases (replace 'configure - #$chez-configure)))) + #$configure-chezschemelibdirs)))) (home-page "https://github.com/fedeinthemix/chez-irregex") (synopsis "Portable regular expression library for Scheme") (description "This package provides a portable and efficient @@ -1223,7 +1311,7 @@ (define-public chez-fmt #:phases #~(modify-phases %standard-phases (replace 'configure - #$chez-configure) + #$configure-chezschemelibdirs) (replace 'build (lambda* (#:key (make-flags '()) #:allow-other-keys) (apply invoke "make" "chez-build" make-flags))) @@ -1285,7 +1373,7 @@ (define string->uninterned-symbol #:test-target "test" #:phases #~(modify-phases %standard-phases (replace 'configure - #$chez-configure)))) + #$configure-chezschemelibdirs)))) (synopsis "MIT/GNU Scheme compatibility library for Chez Scheme") (description "This package provides a set of MIT/GNU Scheme compatibility libraries for Chez Scheme. The main goal was to provide the functionality @@ -1320,7 +1408,7 @@ (define-public chez-scmutils #:phases #~(modify-phases %standard-phases (replace 'configure - #$chez-configure) + #$configure-chezschemelibdirs) ;; Since the documentation is lacking, we install the source ;; code. For things to work correctly we have to replace ;; relative paths by absolute ones in 'include' forms. This diff --git a/gnu/packages/patches/racket-backport-8.11-layered-docs.patch b/gnu/packages/patches/racket-backport-8.11-layered-docs.patch deleted file mode 100644 index 07f105bb24..0000000000 --- a/gnu/packages/patches/racket-backport-8.11-layered-docs.patch +++ /dev/null @@ -1,36 +0,0 @@ -From 1d8dbdf408db9e99f1382323477561d5148cd451 Mon Sep 17 00:00:00 2001 -From: Philip McGrath -Date: Fri, 20 Oct 2023 17:19:50 -0400 -Subject: [PATCH] racket-index: fix release.scrbl for layered installations -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Configure the release notes page to be rendered separately at every -installation layer. Otherwise, rendering documentation for packages -installed in a new layer might try to write to `release/in.sxref` -in the parent layer’s docs directory. - -Related to https://github.com/videolang/video/issues/67 -Related to https://issues.guix.gnu.org/56534 - -(cherry picked from commit 85f21854c0a41564b755fbe180fe6b85de6c4730) ---- - pkgs/racket-index/scribblings/main/info.rkt | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/pkgs/racket-index/scribblings/main/info.rkt b/pkgs/racket-index/scribblings/main/info.rkt -index 75c507848a..a6a3798f7c 100644 ---- a/pkgs/racket-index/scribblings/main/info.rkt -+++ b/pkgs/racket-index/scribblings/main/info.rkt -@@ -6,4 +6,4 @@ - ("local-redirect.scrbl" (depends-all-main no-depend-on every-main-layer) (omit) "local-redirect" 1 10) - ("license.scrbl" () (omit)) - ("acks.scrbl" () (omit)) -- ("release.scrbl" (depends-all-main no-depend-on) (omit)))) -+ ("release.scrbl" (depends-all-main no-depend-on every-main-layer) (omit)))) - -base-commit: c3a502c0ae9f4d615bfd85fc7d88b781826bbb09 --- -2.41.0 - diff --git a/gnu/packages/patches/racket-backport-8.12-chez-configure.patch b/gnu/packages/patches/racket-backport-8.12-chez-configure.patch new file mode 100644 index 0000000000..483948fec9 --- /dev/null +++ b/gnu/packages/patches/racket-backport-8.12-chez-configure.patch @@ -0,0 +1,423 @@ +From 82157f5b3fb9f71ad7fc978c428d423d06a4a0df Mon Sep 17 00:00:00 2001 +From: Philip McGrath +Date: Wed, 28 Feb 2024 19:41:22 -0500 +Subject: [PATCH 1/2] Chez Scheme: Repairs and improvements for building with + external dependencies + +* configure: support `ZUO=` + +Supplying `ZUO=` skips the submodule check in `configure` +and configures the generated makefile not to build or remove Zuo. + +* configure: support `STEXLIB=` + +For compatibility with older scripts, when not explicitly configured, +continue to honor the `STEXLIB` environment variable at build time. + +(cherry picked from commit 694fbd47a125c7fde10a328c6fda199dac19f802) +--- + racket/src/ChezScheme/BUILDING | 5 ++-- + racket/src/ChezScheme/build.zuo | 13 +++++++--- + racket/src/ChezScheme/configure | 27 ++++++++++++++++++++- + racket/src/ChezScheme/makefiles/Makefile.in | 6 ++--- + 4 files changed, 40 insertions(+), 11 deletions(-) + +diff --git a/racket/src/ChezScheme/BUILDING b/racket/src/ChezScheme/BUILDING +index 50fde27771..2df29b5bd8 100644 +--- a/racket/src/ChezScheme/BUILDING ++++ b/racket/src/ChezScheme/BUILDING +@@ -155,7 +155,8 @@ information on the supported options. + The generated makefile mostly just ensures that a `zuo` executable is + built in a `bin` directory, and then it defers the actual build work + to `zuo`, which uses the "main.zuo" file. If you have `zuo` installed, +-you can use `zuo` directly instead of `make`. In general, instead of ++you can use `zuo` directly instead of `make`: in that case, you may ++wish to use `./configure ZUO=`. In general, instead of + the command `make X` to build target `X` as described below, you can + use `zuo . X` (or `bin/zuo . X` after `bin/zuo` is built). + +@@ -339,7 +340,7 @@ The makefile supports several targets: + * `make clean` + + Removes all built elements from the workarea, and then removes +- `bin/zuo`. ++ `bin/zuo` (unless configured with `ZUO=`). + + + WINDOWS VIA COMMAND PROMPT +diff --git a/racket/src/ChezScheme/build.zuo b/racket/src/ChezScheme/build.zuo +index a211632a89..432cc6e5a1 100644 +--- a/racket/src/ChezScheme/build.zuo ++++ b/racket/src/ChezScheme/build.zuo +@@ -218,10 +218,15 @@ + token)) + + (define stexlib +- (let ((found (assoc "STEXLIB" (hash-ref (runtime-env) 'env)))) +- (if found +- (cdr found) +- (at-source "stex")))) ++ (let ([configured (hash-ref config 'STEXLIB "")] ++ [env (assoc "STEXLIB" (hash-ref (runtime-env) 'env))]) ++ (cond ++ [(not (equal? "" configured)) ++ configured] ++ [env ++ (cdr env)] ++ [else ++ (at-source "stex")]))) + (define stex-sources + (source-tree stexlib)) + +diff --git a/racket/src/ChezScheme/configure b/racket/src/ChezScheme/configure +index 721d1d1335..f88c6f7625 100755 +--- a/racket/src/ChezScheme/configure ++++ b/racket/src/ChezScheme/configure +@@ -93,6 +93,7 @@ default_warning_flags="-Wpointer-arith -Wall -Wextra -Wno-implicit-fallthrough" + CFLAGS_ADD= + zlibLib= + LZ4Lib= ++STEXLIB= + Kernel=KernelLib + buildKernelOnly=no + enableFrompb=yes +@@ -102,6 +103,7 @@ empetite=no + moreBootFiles= + preloadBootFiles= + alwaysUseBootFile= ++zuoExternal= + + CONFIG_UNAME=`uname` + +@@ -442,6 +444,12 @@ while [ $# != 0 ] ; do + LZ4=*) + LZ4Lib=`echo $1 | sed -e 's/^LZ4=//'` + ;; ++ STEXLIB=*) ++ STEXLIB=`echo $1 | sed -e 's/^STEXLIB=//'` ++ ;; ++ ZUO=*) ++ zuoExternal=`echo $1 | sed -e 's/^ZUO=//'` ++ ;; + *) + echo "option '$1' unrecognized or missing an argument; try $0 --help" + exit 1 +@@ -667,6 +675,8 @@ if [ "$help" = "yes" ]; then + echo " STRIP= executable stripper" + echo " ZLIB= link to instead of own zlib" + echo " LZ4= link to instead of own LZ4" ++ echo " STEXLIB= build docs with instead of own stex" ++ echo " ZUO= build with instead of own Zuo" + echo "" + echo "Available machine types: $machs" + echo "" +@@ -869,6 +879,16 @@ if [ "$addflags" = "yes" ] ; then + fi + fi + ++if [ "${zuoExternal}" = "" ] ; then ++ ZUO="bin/zuo" ++ RM_ZUO="rm -f bin/zuo" ++ ZUO_TARGET="bin/zuo" ++else ++ ZUO="${zuoExternal}" ++ RM_ZUO="@echo 'Not cleaning external ${zuoExternal}'" ++ ZUO_TARGET="DoNotBuildZuo" ++fi ++ + # more compile and link flags for c/Mf-unix and mats/Mf-unix + mdinclude= + mdcppflags= +@@ -1039,7 +1059,7 @@ cp "$srcdir"/makefiles/buildmain.zuo main.zuo + # Some idea, but in the workarea, so it refers to "workarea.zuo" here: + cp "$srcdir"/makefiles/workmain.zuo $w/main.zuo + +-# The content of "$w/Makefile" records configuration decisions, ++# The content of "$w/Mf-config" records configuration decisions, + # and the Zuo build script takes it from there + cat > $w/Mf-config << END + srcdir=$srcdir +@@ -1075,6 +1095,7 @@ cursesLib=$cursesLib + ncursesLib=$ncursesLib + zlibLib=$zlibLib + LZ4Lib=$LZ4Lib ++STEXLIB=$STEXLIB + warningFlags=$warningFlags + Kernel=$Kernel + installscriptname=$installscriptname +@@ -1086,6 +1107,10 @@ preloadBootFiles=$preloadBootFiles + alwaysUseBootFile=$alwaysUseBootFile + relativeBootFiles=$relativeBootFiles + ++ZUO=$ZUO ++RM_ZUO=$RM_ZUO ++ZUO_TARGET=$ZUO_TARGET ++ + InstallBin=$installbin + InstallLib=$installlib + InstallMan=$installman/man1 +diff --git a/racket/src/ChezScheme/makefiles/Makefile.in b/racket/src/ChezScheme/makefiles/Makefile.in +index cfdd0230a3..4865bf2e2f 100644 +--- a/racket/src/ChezScheme/makefiles/Makefile.in ++++ b/racket/src/ChezScheme/makefiles/Makefile.in +@@ -3,8 +3,6 @@ workarea=$(w) + + include $(workarea)/Mf-config + +-ZUO=bin/zuo +- + .PHONY: build + build: $(ZUO) + + $(ZUO) $(workarea) MAKE="$(MAKE)" +@@ -140,9 +138,9 @@ pkg: $(ZUO) + .PHONY: clean + clean: $(ZUO) + + $(ZUO) $(workarea) clean MAKE="$(MAKE)" +- rm -f bin/zuo ++ $(RM_ZUO) + + # Using `+` here means that $(ZUO) gets built even if `-n`/`--dry-run` is provided to `make` +-$(ZUO): $(srcdir)/../zuo/zuo.c ++$(ZUO_TARGET): $(srcdir)/../zuo/zuo.c + + mkdir -p bin + + $(CC_FOR_BUILD) -DZUO_LIB_PATH='"'"$(upsrcdir)/../zuo/lib"'"' -o $(ZUO) $(srcdir)/../zuo/zuo.c + +base-commit: 78fef00d4d16a79fdf6ab31924b3a80cadf4b368 +-- +2.41.0 + + +From e2bc69c5ce7437dd9a1b30ac1b12b3a56872c491 Mon Sep 17 00:00:00 2001 +From: Matthew Flatt +Date: Sun, 10 Mar 2024 09:13:40 -0600 +Subject: [PATCH 2/2] Chez Scheme: adjust `configure ZUO=` support + +Continuing from 694fbd47a1, adjust the generated makefile so the +supplied `` is not a makefile dependency. That way, `ZUO=zuo` +works if `zuo` is installed and the current build directory is not the +source directory. (The `zuo` executable is a dependency in a real and +relevant sense, but not in the sense of dependencies that we normally +track in makefiles.) + +Also adapt the makefile for the case that `ZUO=...` is not supplied +and the build directory is not the source directory, in which case +`ZUO_LIB_PATH` needs to be relative to the source directory. + +Using `make ZUO=zuo` can also work, but in that case, `bin/zuo` is +still built as a dependency. It's possible that some portable makefile +magic could overcome that limitation, but it doesn't seem important. + +(cherry picked from commit 28157ba88d48fe645563f46f6c00d6626b3428fa) +--- + racket/src/ChezScheme/configure | 3 + + racket/src/ChezScheme/makefiles/Makefile.in | 70 +++++++++++---------- + 2 files changed, 40 insertions(+), 33 deletions(-) + +diff --git a/racket/src/ChezScheme/configure b/racket/src/ChezScheme/configure +index f88c6f7625..201dbe580f 100755 +--- a/racket/src/ChezScheme/configure ++++ b/racket/src/ChezScheme/configure +@@ -881,10 +881,12 @@ fi + + if [ "${zuoExternal}" = "" ] ; then + ZUO="bin/zuo" ++ ZUO_DEP="${ZUO}" + RM_ZUO="rm -f bin/zuo" + ZUO_TARGET="bin/zuo" + else + ZUO="${zuoExternal}" ++ ZUO_DEP="" + RM_ZUO="@echo 'Not cleaning external ${zuoExternal}'" + ZUO_TARGET="DoNotBuildZuo" + fi +@@ -1108,6 +1110,7 @@ alwaysUseBootFile=$alwaysUseBootFile + relativeBootFiles=$relativeBootFiles + + ZUO=$ZUO ++ZUO_DEP=$ZUO_DEP + RM_ZUO=$RM_ZUO + ZUO_TARGET=$ZUO_TARGET + +diff --git a/racket/src/ChezScheme/makefiles/Makefile.in b/racket/src/ChezScheme/makefiles/Makefile.in +index 4865bf2e2f..5ce237178e 100644 +--- a/racket/src/ChezScheme/makefiles/Makefile.in ++++ b/racket/src/ChezScheme/makefiles/Makefile.in +@@ -4,51 +4,55 @@ workarea=$(w) + include $(workarea)/Mf-config + + .PHONY: build +-build: $(ZUO) ++build: $(ZUO_DEP) + + $(ZUO) $(workarea) MAKE="$(MAKE)" + + .PHONY: run +-run: $(ZUO) ++run: $(ZUO_DEP) + + $(ZUO) $(workarea) run + + .PHONY: kernel +-kernel: $(ZUO) ++kernel: $(ZUO_DEP) + + $(ZUO) $(workarea) kernel MAKE="$(MAKE)" + + .PHONY: install +-install: $(ZUO) ++install: $(ZUO_DEP) + $(ZUO) $(workarea) install MAKE="$(MAKE)" + + .PHONY: uninstall +-uninstall: $(ZUO) ++uninstall: $(ZUO_DEP) + + $(ZUO) $(workarea) uninstall MAKE="$(MAKE)" + +-.PHONY: test +-test: $(ZUO) +- + $(ZUO) $(workarea) test MAKE="$(MAKE)" ++.PHONY: test-one ++test-one: $(ZUO_DEP) ++ + $(ZUO) $(workarea) test-one MAKE="$(MAKE)" + + .PHONY: test-some-fast +-test-some-fast: $(ZUO) ++test-some-fast: $(ZUO_DEP) + + $(ZUO) $(workarea) test-some-fast MAKE="$(MAKE)" + + .PHONY: test-some +-test-some: $(ZUO) ++test-some: $(ZUO_DEP) + + $(ZUO) $(workarea) test-some MAKE="$(MAKE)" + ++.PHONY: test ++test: $(ZUO_DEP) ++ + $(ZUO) $(workarea) test MAKE="$(MAKE)" ++ + .PHONY: test-more +-test-more: $(ZUO) ++test-more: $(ZUO_DEP) + + $(ZUO) $(workarea) test-more MAKE="$(MAKE)" + + .PHONY: coverage +-coverage: $(ZUO) ++coverage: $(ZUO_DEP) + + $(ZUO) $(workarea) coverage MAKE="$(MAKE)" + + .PHONY: bootfiles +-bootfiles: $(ZUO) ++bootfiles: $(ZUO_DEP) + + $(ZUO) $(workarea) bootfiles MAKE="$(MAKE)" + + .PHONY: reset +-reset: $(ZUO) ++reset: $(ZUO_DEP) + + $(ZUO) $(workarea) reset MAKE="$(MAKE)" + + # Supply XM= to build boot files for +@@ -57,86 +61,86 @@ boot: + + $(ZUO) $(workarea) boot "$(XM)" MAKE="$(MAKE)" + + # `.boot` as alias for `boot XM=` +-%.boot: $(ZUO) ++%.boot: $(ZUO_DEP) + + $(ZUO) $(workarea) boot $* MAKE="$(MAKE)" + + .PHONY: auto.boot +-auto.boot: $(ZUO) ++auto.boot: $(ZUO_DEP) + + $(ZUO) $(workarea) boot MAKE="$(MAKE)" + + SCHEME=scheme + + .PHONY: cross.boot +-cross.boot: $(ZUO) ++cross.boot: $(ZUO_DEP) + + $(ZUO) $(workarea) boot SCHEME="$(SCHEME)" MAKE="$(MAKE)" + + .PHONY: re.boot +-re.boot: $(ZUO) ++re.boot: $(ZUO_DEP) + + $(ZUO) $(workarea) reboot SCHEME="$(SCHEME)" + + # Supply XM= to build boot files for + # with o=3 d=0 for the cross compiler, and only after + # building the kernel for the configured machine + .PHONY: bootquick +-bootquick: $(ZUO) ++bootquick: $(ZUO_DEP) + + $(ZUO) $(workarea) bootquick "$(XM)" MAKE="$(MAKE)" + + # `.bootquick` as alias for `boot XM=` +-%.bootquick: $(ZUO) ++%.bootquick: $(ZUO_DEP) + + $(ZUO) $(workarea) bootquick $* MAKE="$(MAKE)" + +-auto.bootquick: $(ZUO) ++auto.bootquick: $(ZUO_DEP) + + $(ZUO) $(workarea) bootquick MAKE="$(MAKE)" + + # Supply XM=-.bootpbchunk to repackage boot files for + # with pbchunk sources, including additional + # boot files + .PHONY: bootpbchunk +-bootpbchunk: $(ZUO) ++bootpbchunk: $(ZUO_DEP) + + $(ZUO) $(workarea) bootpbchunk "$(XM)" $(ARGS) MAKE="$(MAKE)" + + # `.bootpbchunk` as alias for `pbchunk XM=` +-%.bootpbchunk: $(ZUO) ++%.bootpbchunk: $(ZUO_DEP) + + $(ZUO) $(workarea) bootpbchunk $* $(ARGS) MAKE="$(MAKE)" + + .PHONY: docs +-docs: build $(ZUO) ++docs: build $(ZUO_DEP) + + $(ZUO) $(workarea) docs MAKE="$(MAKE)" + + .PHONY: csug +-csug: build $(ZUO) ++csug: build $(ZUO_DEP) + + $(ZUO) $(workarea) csug MAKE="$(MAKE)" + + .PHONY: release_notes +-release_notes: build $(ZUO) ++release_notes: build $(ZUO_DEP) + + $(ZUO) $(workarea) release_notes MAKE="$(MAKE)" + + .PHONY: install-docs +-install-docs: build $(ZUO) ++install-docs: build $(ZUO_DEP) + + $(ZUO) $(workarea) install-docs MAKE="$(MAKE)" + + .PHONY: install-csug +-install-csug: build $(ZUO) ++install-csug: build $(ZUO_DEP) + + $(ZUO) $(workarea) install-csug MAKE="$(MAKE)" + + .PHONY: install-release_notes +-install-release_notes: build $(ZUO) ++install-release_notes: build $(ZUO_DEP) + + $(ZUO) $(workarea) install-release_notes MAKE="$(MAKE)" + + .PHONY: bintar +-bintar: $(ZUO) ++bintar: $(ZUO_DEP) + + $(ZUO) $(workarea) bintar MAKE="$(MAKE)" + + .PHONY: rpm +-rpm: $(ZUO) ++rpm: $(ZUO_DEP) + + $(ZUO) $(workarea) rpm MAKE="$(MAKE)" + + .PHONY: pkg +-pkg: $(ZUO) ++pkg: $(ZUO_DEP) + + $(ZUO) $(workarea) pkg MAKE="$(MAKE)" + + .PHONY: clean +-clean: $(ZUO) ++clean: $(ZUO_DEP) + + $(ZUO) $(workarea) clean MAKE="$(MAKE)" + $(RM_ZUO) + +-- +2.41.0 + diff --git a/gnu/packages/racket.scm b/gnu/packages/racket.scm index 6e19be1da3..d366f89845 100644 --- a/gnu/packages/racket.scm +++ b/gnu/packages/racket.scm @@ -105,7 +105,9 @@ (define-module (gnu packages racket) ;; 'distro-build' package to assemble custom Racket distributions. (Again, ;; the makefile just delegates to Zuo.) It is not part of Racket source ;; distributions: the root of a source distribution is basically 'racket/src' -;; with some extra package sources and configuration added. +;; with some extra package sources and configuration added. In fact, the +;; top-level 'Makefile' and the 'distro-build' package are what create Racket +;; source distributions. ;; ;; A ''minimal Racket'' installation includes two packages: 'base', which is a ;; sort of bridge between the current ``built-in'' collections and the package @@ -191,7 +193,7 @@ (define-module (gnu packages racket) ;; ;; CODE: -(define %racket-version "8.11.1") ; Remember to update chez-scheme-for-racket! +(define %racket-version "8.12") ; Remember to update chez-scheme-for-racket! (define %racket-commit (string-append "v" %racket-version)) (define %racket-origin @@ -201,16 +203,16 @@ (define %racket-origin (url "https://github.com/racket/racket") (commit %racket-commit))) (sha256 - (base32 "1iny1mn1lw07lj6h704ch5g2q1nsf0h88dgwqrlxhf8pwj4i76gl")) + (base32 "1f52yadmrsd2ddry47s68kxig185a58n19j23458wkck19nawjz5")) (file-name (git-file-name "racket" %racket-version)) (patches (search-patches "racket-chez-scheme-bin-sh.patch" - "racket-backport-8.11-layered-docs.patch" + "racket-backport-8.12-chez-configure.patch" "racket-rktio-bin-sh.patch")) (modules '((guix build utils))) (snippet #~(begin (use-modules (guix build utils)) - ;; Unbundle Chez submodules. + ;; Unbundle Chez submodules and boot files. (with-directory-excursion "racket/src/ChezScheme" ;; TODO: consider putting this in a (guix ...) or (guix build ...) ;; module so it can be shared with the upstream Chez Scheme origin @@ -218,10 +220,14 @@ (define %racket-origin (for-each (lambda (dir) (when (directory-exists? dir) (delete-file-recursively dir))) - '("stex" - "nanopass" + '("boot" "lz4" - "zlib"))) + "nanopass" + "stex" + "zlib" + "zuo"))) + ;; Unbundle Zuo. + (delete-file-recursively "racket/src/zuo") ;; Unbundle libffi. (delete-file-recursively "racket/src/bc/foreign/libffi"))))) @@ -445,10 +451,8 @@ (define-public racket-vm-cs (substitute-keyword-arguments (package-arguments racket-vm-cgc) ((#:phases those-phases #~%standard-phases) #~(modify-phases #$those-phases - (add-after 'unpack 'unpack-nanopass+stex - (lambda args - (with-directory-excursion "racket/src/ChezScheme" - #$unpack-nanopass+stex))))) + (add-after 'unpack 'unpack-nanopass + #$unpack-nanopass))) ((#:configure-flags _ '()) #~(cons* "--enable-csonly" "--enable-libz" @@ -697,7 +701,7 @@ (define-public racket "contract-profile" (base32 "1xm2z8g0dpv5d9h2sg680vx1a8ix9gbsdpxxb8qv1w7akp73paj3") '(("contract-profile" "."))) (simple-racket-origin - "data" (base32 "1pml8g3zgvnaiqb659psh99m70v96m6nh9zash2vfgir46j4rjnh") + "data" (base32 "01sinnsnjiazvkj83k84izdnp38pd2aglbrs14mrdkwajgmpampk") '("data" "data-doc" "data-enumerate-lib" "data-lib")) (simple-racket-origin "datalog" (base32 "0nf6cy4djpyhfvgpa6yn72apbz9s83gp0qg95pzjd0az4v6qwq1s") @@ -706,7 +710,7 @@ (define-public racket "db" (base32 "0xx0k8yw2vb9b4vk2dwjfbpixnmriqsv7kpv3fvfxbwyg42y0db5") '("db" "db-doc" "db-lib")) (simple-racket-origin - "deinprogramm" (base32 "0ijngjyg2i528a4xv20db4adirvx5rj4m86fd70l33lgwv53w3s0") + "deinprogramm" (base32 "0f41sh90i4mml95x2gcmfvl2rc7m77vjbagmgjx270ng7xvz16lj") '("deinprogramm" "deinprogramm-signature")) (simple-racket-origin "distributed-places" (base32 "1dajpkj9balqcpv6cdk9hwjz592h1vq8rrx5vncariiac4vbdpa0") @@ -715,7 +719,7 @@ (define-public racket "draw" (base32 "1h7mckay8yjcgmj3r0jkf1csn430gn43n8jl1l956q9gcprlmncl") '("draw" "draw-doc" "draw-lib")) (simple-racket-origin - "drracket" (base32 "00ay3pwl648wq8nnaap665c38clr39k0g1wslh2wclar32wjpgdc") + "drracket" (base32 "17bdbvsf5l8z96bwzg1q75gg70c6svbhw0g1k239fsjd3mivmki4") '("drracket" "drracket-plugin-lib" "drracket-tool" @@ -749,13 +753,13 @@ (define-public racket "games" (base32 "13z7fnbr48s98lmfxc0nbfhbqkd4hphymy2r63hqm783xzn6ylzi") '(("games" "."))) (simple-racket-origin - "gui" (base32 "10mlajn5xqgdwi7gf9lgszfv609pjp8m24lm97b8xh6fmjlkqi4b") + "gui" (base32 "08kzyscqc8hgc1f8q0bhibl44fkq8iiyz12f8bqdhqkcz8nx44sw") '("gui" "gui-doc" "gui-lib" "tex-table")) (simple-racket-origin "gui-pkg-manager" (base32 "1ji9448d723nklqvycwdswj0ni28sabrncag14f9mx47did5myb5") '("gui-pkg-manager-lib")) (simple-racket-origin - "htdp" (base32 "04p2xp4hnnsnmrmvw05fg4fv18k3g2rz5gmgs89sc6g8y886m6zz") + "htdp" (base32 "13d8xsvs60d7797w93g14dbdm98bixgy65akayij256pyiwnqwdc") '("htdp" "htdp-doc" "htdp-lib")) (simple-racket-origin "html" (base32 "18n1jnjgzfknc8nv8dppi85nb8q08gqdwkg6hfjk08x0p00anx2x") @@ -797,7 +801,7 @@ (define-public racket (url "https://github.com/RenaissanceBug/racket-cookies") (commit %racket-commit))) (sha256 (base32 - "05lnml9nszcq72k8bi4iwdyplp2iv23ywb2gmrs2hr8837fqi65y")) + "1zr31y1gqa3kkrwlf9bnw08nzij00x1l70qhfbpz0239bksn4mmb")) (file-name (git-file-name "RenaissanceBug-racket-cookies" %racket-version))) '("net-cookies" "net-cookies-doc" "net-cookies-lib")) @@ -823,7 +827,7 @@ (define-public racket "pconvert" (base32 "00czi0p399mmyrvxyrs5kniizpkqfxyz2ncxqi2jy79a7wk79pb1") '("pconvert-lib")) (simple-racket-origin - "pict" (base32 "1vsn91r167wssaflzz080nsrcf0jfhl2a48zcj9hvdb77arbj8kc") + "pict" (base32 "1ghds5by8i0k2djbig82xqp2ssy3nvdwm45l8ibsr99y0ay6z7gv") '("pict" "pict-doc" "pict-lib")) (simple-racket-origin "pict-snip" (base32 "081nwiy4a0n4f7xws16hqbhf0j3kz5alizndi3nnyr3chm4kng6x") @@ -838,7 +842,7 @@ (define-public racket "planet" (base32 "0r2yqrzrmdjjyr14k6hhlzc5kzrcx3583m1s02mhrcmpfw0s85w9") '("planet" "planet-doc" "planet-lib")) (simple-racket-origin - "plot" (base32 "17fhsymy884xr4jqk585rm5kwdgkgz0635916gh5y0fsnp5pir70") + "plot" (base32 "0jq9a366g7b2c9vp6yvpqikvklgyd6p4xj6v224g99yj8cgip40b") '("plot" "plot-compat" "plot-doc" "plot-gui-lib" "plot-lib")) (simple-racket-origin "preprocessor" (base32 "1p5aid58ifnjy4xl0ysh85cq39k25661v975jrpk182z3k5621mg") @@ -852,11 +856,8 @@ (define-public racket (uri (git-reference (url "https://github.com/Metaxal/quickscript") (commit %racket-commit))) - (snippet - ;; See https://github.com/Metaxal/quickscript/issues/73 - #~(delete-file "register.rkt")) (sha256 (base32 - "0v27qknghfi0058vk8xwwlwqgqwdsxxmprrmag64cyygdz95sxym")) + "1ahznb9rhgaixd3fqn0pxighw4zbflwqc84r2yvn5nsfbp0mrq9b")) (file-name (git-file-name "Metaxal-quickscript" %racket-version))) '(("quickscript" "."))) (simple-racket-origin @@ -880,7 +881,7 @@ (define-public racket "racklog" (base32 "0fr8xij0sssfnmwn6dfdi4jj3l62f2yj3jrjljv13kaycrfls032") '(("racklog" "."))) (simple-racket-origin - "rackunit" (base32 "0axcy8283qqmcrhwwn0q0sfjznc8gkwbx06j41anayi5v9xp4698") + "rackunit" (base32 "06kpl51alm7akgmmh110ya28zgmx3as0szykfv2gwqmf7xcms1b7") '("rackunit" "rackunit-doc" "rackunit-gui" @@ -896,7 +897,7 @@ (define-public racket "realm" (base32 "0rlvwyd6rpyl0zda4a5p8dp346fvqzc8555dgfnrhliymkxb6x4g") '(("realm" "."))) (simple-racket-origin - "redex" (base32 "016m2fvfxjnx7l0ai6jlcmz4s8xipbq9k58fq7109akj9mvczgp9") + "redex" (base32 "1mwnxbfk2vbalndlq0996rzdi3a2z48m5xnb1ywzlsvnydrnkrk2") '("redex" "redex-benchmark" "redex-doc" @@ -911,7 +912,7 @@ (define-public racket "scheme-lib" (base32 "0pcf0y8rp4qyjhaz5ww5sr5diq0wpcdfrrnask7zapyklzx1jx8x") '(("scheme-lib" "."))) (simple-racket-origin - "scribble" (base32 "0igcjgmpzbzzn1jfpa4jq18lqyhr6dsdwnbv6zv87x8cib9rwqrh") + "scribble" (base32 "0rk5q9r9fw826ag0npk5cwkzkapj2p243wwm9gn2l7j7cr6z1rvb") '("scribble" "scribble-doc" "scribble-html-lib" @@ -943,7 +944,7 @@ (define-public racket "snip" (base32 "1b90ccqilnyszbphms3svm3c7dbk7870ifybjjipss5srb32mj2d") '("snip" "snip-lib")) (simple-racket-origin - "typed-racket" (base32 "17mz7zqrialxfzkynj7h3kfhawdd6cgs24ns437gz087g2pmwi1x") + "typed-racket" (base32 "0vdsyr0qhpvac6h8mfdy6vqrsqsfa7kpg39n3h637hccxyfxv63f") '("source-syntax" "typed-racket" "typed-racket-compatibility" @@ -954,7 +955,7 @@ (define-public racket "srfi" (base32 "1l3nr3a8mlp505aaxlyp4i8jfijmpyl9h1wwv8hzm4kzzjv4sl8p") '("srfi" "srfi-doc" "srfi-lib" "srfi-lite-lib")) (simple-racket-origin - "string-constants" (base32 "1djbjhsimikk18dkrajrlgjhlqfyvna4nz64ha4wjcaj5cfgcvdx") + "string-constants" (base32 "0225f1wmq1n9f2x1pg50fssdnd4bpc11q1jgsykwf4ik4fnaa520") '("string-constants" "string-constants-doc" "string-constants-lib")) (simple-racket-origin "swindle" (base32 "1q8vdxpzczzwdw2mys2caab45yvadmqkixsr29k8pl03n8dsg8j9") @@ -969,7 +970,7 @@ (define-public racket "unix-socket" (base32 "02dfwas5ynbpyz74w9kwb4wgb37y5wys7svrlmir8k0n9ph9vq0y") '("unix-socket" "unix-socket-doc" "unix-socket-lib")) (simple-racket-origin - "web-server" (base32 "0vhw1hwdcv1ham086dy0nkl4r0a5qvsimw8048zjakvax7q4shsg") + "web-server" (base32 "1i4sxmcgj00ml7czsbyx1433hgf091n1p54xyal2f1fsskx5fg0y") '("web-server" "web-server-doc" "web-server-lib")) (simple-racket-origin "wxme" (base32 "1qp5gr9gqsakiq3alw6m4yyv5vw4i3hp4y4nhq8vl2nkjmirvn0b") -- cgit v1.2.3 From 522cbed9b257506f9322611bee988ecd83c0891c Mon Sep 17 00:00:00 2001 From: Philip McGrath Date: Mon, 1 Apr 2024 02:51:08 -0400 Subject: gnu: chez-scheme: Reorganize package definitions. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit A future commit will change 'chez-scheme' to inherit from 'chez-scheme-for-racket', so 'chez-scheme-for-racket' will need to be defined before 'chez-scheme'. In an attempt to produce better diffs, this commit re-orders the definitions while keeping their contents exactly the same. * gnu/packages/chez.scm (chez-scheme): Move below 'chez-scheme-for-racket'. (chez-scheme-bootstrap-bootfiles): Move below 'chez-scheme-for-racket-bootstrap-bootfiles'. Change-Id: Ie088abea2b44329f9d8399fbfb95c51d8912b05e Signed-off-by: Ludovic Courtès --- gnu/packages/chez.scm | 426 +++++++++++++++++++++++++------------------------- 1 file changed, 213 insertions(+), 213 deletions(-) diff --git a/gnu/packages/chez.scm b/gnu/packages/chez.scm index f651cdce0c..19520cdf4a 100644 --- a/gnu/packages/chez.scm +++ b/gnu/packages/chez.scm @@ -282,191 +282,6 @@ (define unpack-nanopass "lib/chez-scheme/nanopass.ss")) "nanopass")))) -(define-public chez-scheme - (package - (name "chez-scheme") - ;; The version should match `(scheme-version-number)`. - ;; See s/cmacros.ss c. line 360. - (version "9.5.8") - (source (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/cisco/ChezScheme") - (commit (string-append "v" version)))) - (sha256 - (base32 - "0xchqq8cm0ka5wgpn18sjs0hh15rc3nb7xrjqbbc9al3asq0d7gc")) - (file-name (git-file-name name version)) - (patches (search-patches "chez-scheme-bin-sh.patch")) - (snippet #~(begin - (use-modules (guix build utils)) - ;; TODO: consider putting this in a (guix ...) or - ;; (guix build ...) module so it can be shared - ;; with the Racket origin without cyclic issues. - (for-each (lambda (dir) - (when (directory-exists? dir) - (delete-file-recursively dir))) - '("stex" - "nanopass" - "lz4" - "zlib")))))) - (build-system gnu-build-system) - (inputs - (list - chez-scheme-bootstrap-bootfiles - `(,util-linux "lib") ;<-- libuuid - zlib - lz4 - ncurses ;<-- for expeditor - ;; for X11 clipboard support in expeditor: - ;; https://github.com/cisco/ChezScheme/issues/9#issuecomment-222057232 - libx11)) - (native-inputs (list chez-nanopass-bootstrap - stex-bootstrap)) - (native-search-paths - (list (search-path-specification - (variable "CHEZSCHEMELIBDIRS") - (files '("lib/chez-scheme"))))) - (outputs '("out" "doc")) - (arguments - (list - #:modules - '((guix build gnu-build-system) - (guix build utils) - (ice-9 ftw) - (ice-9 match)) - #:test-target "test" - #:configure-flags - #~`(,(string-append "--installprefix=" #$output) - #$@(if (and=> (chez-upstream-features-for-system) - (cut memq 'threads <>)) - #~("--threads") - #~()) - "ZLIB=-lz" - "LZ4=-llz4" - "--libkernel" - ;; Guix will do 'compress-man-pages', - ;; and letting Chez try causes an error - "--nogzip-man-pages") - #:phases - #~(modify-phases %standard-phases - (add-after 'unpack 'unpack-nanopass+stex - (lambda args - (begin - (copy-recursively - (dirname (search-input-file %build-inputs - "lib/chez-scheme/nanopass.ss")) - "nanopass" - #:keep-mtime? #t) - (mkdir-p "stex") - (with-output-to-file "stex/Mf-stex" - (lambda () - ;; otherwise, it will try to download submodules - (display "# to placate ../configure")))))) - (add-after 'unpack-nanopass+stex 'unpack-bootfiles - (lambda* (#:key native-inputs inputs #:allow-other-keys) - (when (directory-exists? "boot") - (delete-file-recursively "boot")) - (copy-recursively - (search-input-directory inputs - "lib/chez-scheme-bootfiles") - "boot"))) - ;; NOTE: The custom Chez 'configure' script doesn't allow - ;; unrecognized flags, such as those automatically added - ;; by `gnu-build-system`. This replacement phase uses only - ;; the explicitly provided `#:configure-flags`. - (replace 'configure - (lambda* (#:key inputs (configure-flags '()) out-of-source? - #:allow-other-keys) - (let* ((abs-srcdir (getcwd)) - (srcdir (if out-of-source? - (string-append "../" (basename abs-srcdir)) - "."))) - (format #t "source directory: ~s (relative from build: ~s)~%" - abs-srcdir srcdir) - (if out-of-source? - (begin - (mkdir "../build") - (chdir "../build"))) - (format #t "build directory: ~s~%" (getcwd)) - (format #t "configure flags: ~s~%" configure-flags) - (apply invoke - (string-append srcdir "/configure") - configure-flags)))) - (add-after 'configure 'configure-environment-variables - (lambda args - ;; Some makefiles (for tests) don't seem to propagate CC - ;; properly, so we take it out of their hands: - (setenv "CC" #$(cc-for-target)) - ;; Likewise, some tests have needed HOME to be set: - (setenv "HOME" "/tmp"))) - ;; The binary file name is called "scheme" as is the one from - ;; MIT/GNU Scheme. We add a symlink to use in case both are - ;; installed. - (add-after 'install 'install-symlink - (lambda* (#:key outputs #:allow-other-keys) - (let* ((scheme (search-input-file outputs "/bin/scheme")) - (bin-dir (dirname scheme))) - (symlink scheme - (string-append bin-dir "/chez-scheme")) - (match (find-files (string-append bin-dir "/../lib") - "scheme.boot") - ((scheme.boot) - (symlink scheme.boot - (string-append (dirname scheme.boot) - "/chez-scheme.boot"))))))) - ;; Building the documentation requires stex and a running scheme. - (add-after 'install-symlink 'install-docs - (lambda* (#:key native-inputs inputs outputs #:allow-other-keys) - (let* ((doc-prefix (or (assoc-ref outputs "doc") - (assoc-ref outputs "out"))) - (chez+version (strip-store-file-name #$output)) - (scheme (search-input-file outputs "/bin/scheme")) - (stexlib (search-input-directory (or native-inputs - inputs) - "/lib/stex")) - (doc-dir (string-append doc-prefix - "/share/doc/" - chez+version))) - (define* (stex-make #:optional (suffix "")) - (invoke "make" "install" - (string-append "Scheme=" scheme) - (string-append "STEXLIB=" stexlib) - (string-append "installdir=" doc-dir suffix))) - (with-directory-excursion "csug" - (stex-make "/csug")) - (with-directory-excursion "release_notes" - (stex-make "/release_notes"))))) - (add-after 'install-docs 'link-doc-pdfs - ;; otherwise, it's hard to notice them in a forest of HTML files - (lambda* (#:key outputs #:allow-other-keys) - (with-directory-excursion - (string-append (or (assoc-ref outputs "doc") - (assoc-ref outputs "out")) - "/share/doc/" - (strip-store-file-name #$output)) - (symlink "release_notes/release_notes.pdf" - "release_notes.pdf") - (match (find-files "csug" - "csug.*\\.pdf$" ;; embeded version number - #:fail-on-error? #t) - ((pth) - (symlink pth - "csug.pdf"))))))))) - (supported-systems - (delete - "armhf-linux" ;; XXX reportedly broken, needs checking - (filter chez-upstream-features-for-system - %supported-systems))) - (home-page "https://cisco.github.io/ChezScheme/") - (synopsis "R6RS Scheme compiler and run-time") - (description - "Chez Scheme is a compiler and run-time system for the language of the -Revised^6 Report on Scheme (R6RS), with numerous extensions. The compiler -generates native code for each target processor, with support for x86, x86_64, -and 32-bit PowerPC architectures.") - (license asl2.0))) - (define chez-configure ;; The custom Chez 'configure' script doesn't allow unrecognized flags, such ;; as those automatically added by `gnu-build-system`. This replacement @@ -689,39 +504,194 @@ (define-public chez-scheme-for-racket version of Chez Scheme.") (license asl2.0))) -;; -;; Bootfiles: -;; - -(define-public chez-scheme-bootstrap-bootfiles +(define-public chez-scheme (package - (inherit chez-scheme) - (name "chez-scheme-bootstrap-bootfiles") - (inputs '()) - (native-inputs '()) - (outputs '("out")) - (build-system copy-build-system) - ;; TODO: cross compilation + (name "chez-scheme") + ;; The version should match `(scheme-version-number)`. + ;; See s/cmacros.ss c. line 360. + (version "9.5.8") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/cisco/ChezScheme") + (commit (string-append "v" version)))) + (sha256 + (base32 + "0xchqq8cm0ka5wgpn18sjs0hh15rc3nb7xrjqbbc9al3asq0d7gc")) + (file-name (git-file-name name version)) + (patches (search-patches "chez-scheme-bin-sh.patch")) + (snippet #~(begin + (use-modules (guix build utils)) + ;; TODO: consider putting this in a (guix ...) or + ;; (guix build ...) module so it can be shared + ;; with the Racket origin without cyclic issues. + (for-each (lambda (dir) + (when (directory-exists? dir) + (delete-file-recursively dir))) + '("stex" + "nanopass" + "lz4" + "zlib")))))) + (build-system gnu-build-system) + (inputs + (list + chez-scheme-bootstrap-bootfiles + `(,util-linux "lib") ;<-- libuuid + zlib + lz4 + ncurses ;<-- for expeditor + ;; for X11 clipboard support in expeditor: + ;; https://github.com/cisco/ChezScheme/issues/9#issuecomment-222057232 + libx11)) + (native-inputs (list chez-nanopass-bootstrap + stex-bootstrap)) + (native-search-paths + (list (search-path-specification + (variable "CHEZSCHEMELIBDIRS") + (files '("lib/chez-scheme"))))) + (outputs '("out" "doc")) (arguments - (list #:install-plan - #~`(("boot/" "lib/chez-scheme-bootfiles")))) + (list + #:modules + '((guix build gnu-build-system) + (guix build utils) + (ice-9 ftw) + (ice-9 match)) + #:test-target "test" + #:configure-flags + #~`(,(string-append "--installprefix=" #$output) + #$@(if (and=> (chez-upstream-features-for-system) + (cut memq 'threads <>)) + #~("--threads") + #~()) + "ZLIB=-lz" + "LZ4=-llz4" + "--libkernel" + ;; Guix will do 'compress-man-pages', + ;; and letting Chez try causes an error + "--nogzip-man-pages") + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'unpack-nanopass+stex + (lambda args + (begin + (copy-recursively + (dirname (search-input-file %build-inputs + "lib/chez-scheme/nanopass.ss")) + "nanopass" + #:keep-mtime? #t) + (mkdir-p "stex") + (with-output-to-file "stex/Mf-stex" + (lambda () + ;; otherwise, it will try to download submodules + (display "# to placate ../configure")))))) + (add-after 'unpack-nanopass+stex 'unpack-bootfiles + (lambda* (#:key native-inputs inputs #:allow-other-keys) + (when (directory-exists? "boot") + (delete-file-recursively "boot")) + (copy-recursively + (search-input-directory inputs + "lib/chez-scheme-bootfiles") + "boot"))) + ;; NOTE: The custom Chez 'configure' script doesn't allow + ;; unrecognized flags, such as those automatically added + ;; by `gnu-build-system`. This replacement phase uses only + ;; the explicitly provided `#:configure-flags`. + (replace 'configure + (lambda* (#:key inputs (configure-flags '()) out-of-source? + #:allow-other-keys) + (let* ((abs-srcdir (getcwd)) + (srcdir (if out-of-source? + (string-append "../" (basename abs-srcdir)) + "."))) + (format #t "source directory: ~s (relative from build: ~s)~%" + abs-srcdir srcdir) + (if out-of-source? + (begin + (mkdir "../build") + (chdir "../build"))) + (format #t "build directory: ~s~%" (getcwd)) + (format #t "configure flags: ~s~%" configure-flags) + (apply invoke + (string-append srcdir "/configure") + configure-flags)))) + (add-after 'configure 'configure-environment-variables + (lambda args + ;; Some makefiles (for tests) don't seem to propagate CC + ;; properly, so we take it out of their hands: + (setenv "CC" #$(cc-for-target)) + ;; Likewise, some tests have needed HOME to be set: + (setenv "HOME" "/tmp"))) + ;; The binary file name is called "scheme" as is the one from + ;; MIT/GNU Scheme. We add a symlink to use in case both are + ;; installed. + (add-after 'install 'install-symlink + (lambda* (#:key outputs #:allow-other-keys) + (let* ((scheme (search-input-file outputs "/bin/scheme")) + (bin-dir (dirname scheme))) + (symlink scheme + (string-append bin-dir "/chez-scheme")) + (match (find-files (string-append bin-dir "/../lib") + "scheme.boot") + ((scheme.boot) + (symlink scheme.boot + (string-append (dirname scheme.boot) + "/chez-scheme.boot"))))))) + ;; Building the documentation requires stex and a running scheme. + (add-after 'install-symlink 'install-docs + (lambda* (#:key native-inputs inputs outputs #:allow-other-keys) + (let* ((doc-prefix (or (assoc-ref outputs "doc") + (assoc-ref outputs "out"))) + (chez+version (strip-store-file-name #$output)) + (scheme (search-input-file outputs "/bin/scheme")) + (stexlib (search-input-directory (or native-inputs + inputs) + "/lib/stex")) + (doc-dir (string-append doc-prefix + "/share/doc/" + chez+version))) + (define* (stex-make #:optional (suffix "")) + (invoke "make" "install" + (string-append "Scheme=" scheme) + (string-append "STEXLIB=" stexlib) + (string-append "installdir=" doc-dir suffix))) + (with-directory-excursion "csug" + (stex-make "/csug")) + (with-directory-excursion "release_notes" + (stex-make "/release_notes"))))) + (add-after 'install-docs 'link-doc-pdfs + ;; otherwise, it's hard to notice them in a forest of HTML files + (lambda* (#:key outputs #:allow-other-keys) + (with-directory-excursion + (string-append (or (assoc-ref outputs "doc") + (assoc-ref outputs "out")) + "/share/doc/" + (strip-store-file-name #$output)) + (symlink "release_notes/release_notes.pdf" + "release_notes.pdf") + (match (find-files "csug" + "csug.*\\.pdf$" ;; embeded version number + #:fail-on-error? #t) + ((pth) + (symlink pth + "csug.pdf"))))))))) (supported-systems - (filter (lambda (system) - (and=> (chez-upstream-features-for-system system) - (cut memq 'bootstrap-bootfiles <>))) - %supported-systems)) - (synopsis "Chez Scheme bootfiles (binary seed)") + (delete + "armhf-linux" ;; XXX reportedly broken, needs checking + (filter chez-upstream-features-for-system + %supported-systems))) + (home-page "https://cisco.github.io/ChezScheme/") + (synopsis "R6RS Scheme compiler and run-time") (description - "Chez Scheme is a self-hosting compiler: building it requires -``bootfiles'' containing the Scheme-implemented portions compiled for the -current platform. (Chez can then cross-compile bootfiles for all other -supported platforms.) + "Chez Scheme is a compiler and run-time system for the language of the +Revised^6 Report on Scheme (R6RS), with numerous extensions. The compiler +generates native code for each target processor, with support for x86, x86_64, +and 32-bit PowerPC architectures.") + (license asl2.0))) -This package provides bootstrap bootfiles for upstream Chez Scheme. -Currently, it simply packages the binaries checked in to the upstream -repository. Hopefully we can eventually adapt Racket's @code{cs-bootstrap} to -work with upstream Chez Scheme so that we can bootstrap these files from -source."))) +;; +;; Bootfiles: +;; (define-public chez-scheme-for-racket-bootstrap-bootfiles (package @@ -803,6 +773,36 @@ (define-public chez-scheme-for-racket-bootstrap-bootfiles 7.1 and later, including the Racket BC variant.") (license asl2.0))) +(define-public chez-scheme-bootstrap-bootfiles + (package + (inherit chez-scheme) + (name "chez-scheme-bootstrap-bootfiles") + (inputs '()) + (native-inputs '()) + (outputs '("out")) + (build-system copy-build-system) + ;; TODO: cross compilation + (arguments + (list #:install-plan + #~`(("boot/" "lib/chez-scheme-bootfiles")))) + (supported-systems + (filter (lambda (system) + (and=> (chez-upstream-features-for-system system) + (cut memq 'bootstrap-bootfiles <>))) + %supported-systems)) + (synopsis "Chez Scheme bootfiles (binary seed)") + (description + "Chez Scheme is a self-hosting compiler: building it requires +``bootfiles'' containing the Scheme-implemented portions compiled for the +current platform. (Chez can then cross-compile bootfiles for all other +supported platforms.) + +This package provides bootstrap bootfiles for upstream Chez Scheme. +Currently, it simply packages the binaries checked in to the upstream +repository. Hopefully we can eventually adapt Racket's @code{cs-bootstrap} to +work with upstream Chez Scheme so that we can bootstrap these files from +source."))) + ;; ;; Chez's bootstrap dependencies: ;; -- cgit v1.2.3 From abd2ed839d3710ef754bb3b537eba6e351fc71c9 Mon Sep 17 00:00:00 2001 From: Philip McGrath Date: Mon, 1 Apr 2024 02:51:09 -0400 Subject: gnu: chez-scheme: Update to 10.0.0. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/patches/chez-scheme-bin-sh.patch: Refresh patch. * gnu/packages/patches/chez-scheme-backport-configure.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. * gnu/packages/chez.scm (chez-scheme): Update to 10.0.0. Inherit from 'chez-scheme-for-racket'. [source]: Use "chez-scheme-backport-configure.patch". : Also unbundle Zuo. [native-inputs, native-search-paths, outputs, arguments] [supported-systems]: Inherit from 'chez-scheme-for-racket'. [inputs]: Likewise, replacing the bootfile package and adding libx11. [description]: Update based on the User's Guide, release notes, man page, and README file. (chez-scheme-bootstrap-bootfiles)[supported-systems]: All systems are now supported. (chez-scheme-for-system): Return 'chez-scheme', since it now supports all systems. Change-Id: I287ff66f385f20e69c1411abcc94f19dd45870c5 Signed-off-by: Ludovic Courtès --- gnu/local.mk | 1 + gnu/packages/chez.scm | 204 ++------- .../patches/chez-scheme-backport-configure.patch | 463 +++++++++++++++++++++ gnu/packages/patches/chez-scheme-bin-sh.patch | 37 +- 4 files changed, 512 insertions(+), 193 deletions(-) create mode 100644 gnu/packages/patches/chez-scheme-backport-configure.patch diff --git a/gnu/local.mk b/gnu/local.mk index ef2b64a7c0..1169604891 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1022,6 +1022,7 @@ dist_patch_DATA = \ %D%/packages/patches/ccextractor-add-missing-header.patch \ %D%/packages/patches/ccextractor-autoconf-tesseract.patch \ %D%/packages/patches/ccextractor-fix-ocr.patch \ + %D%/packages/patches/chez-scheme-backport-configure.patch \ %D%/packages/patches/chez-scheme-bin-sh.patch \ %D%/packages/patches/circos-remove-findbin.patch \ %D%/packages/patches/cdparanoia-fpic.patch \ diff --git a/gnu/packages/chez.scm b/gnu/packages/chez.scm index 19520cdf4a..5b98b3ce1f 100644 --- a/gnu/packages/chez.scm +++ b/gnu/packages/chez.scm @@ -69,21 +69,9 @@ (define-module (gnu packages chez) ;; Code: (define* (chez-scheme-for-system #:optional - (system (or (%current-target-system) - (%current-system)))) - "Return 'chez-scheme' if it fully supports SYSTEM, including support for -bootstrapping and native threads. Otherwise, return -'chez-scheme-for-racket'." - (if (and=> (chez-upstream-features-for-system system) - (lambda (features) - (every (cut memq <> features) - '(threads - ;; We can cross-compile for platforms without - ;; bootstrap bootfiles, but we can't self-host - ;; on them short of adding more binary seeds. - bootstrap-bootfiles)))) - chez-scheme - chez-scheme-for-racket)) + system) + "Returns 'chez-scheme'." + chez-scheme) (define* (target-chez-arch #:optional (system (or (%current-target-system) @@ -506,10 +494,11 @@ (define-public chez-scheme-for-racket (define-public chez-scheme (package + (inherit chez-scheme-for-racket) (name "chez-scheme") - ;; The version should match `(scheme-version-number)`. + ;; The version should match `(scheme-version-number #t)`. ;; See s/cmacros.ss c. line 360. - (version "9.5.8") + (version "10.0.0") (source (origin (method git-fetch) (uri (git-reference @@ -517,9 +506,10 @@ (define-public chez-scheme (commit (string-append "v" version)))) (sha256 (base32 - "0xchqq8cm0ka5wgpn18sjs0hh15rc3nb7xrjqbbc9al3asq0d7gc")) + "1q66vafhiwk617z51qkm1v64r3bxqhhf5lzrmsa4l9d5yhvlyk09")) (file-name (git-file-name name version)) - (patches (search-patches "chez-scheme-bin-sh.patch")) + (patches (search-patches "chez-scheme-backport-configure.patch" + "chez-scheme-bin-sh.patch")) (snippet #~(begin (use-modules (guix build utils)) ;; TODO: consider putting this in a (guix ...) or @@ -528,165 +518,30 @@ (define-public chez-scheme (for-each (lambda (dir) (when (directory-exists? dir) (delete-file-recursively dir))) - '("stex" + '("lz4" "nanopass" - "lz4" - "zlib")))))) + "stex" + "zlib" + "zuo")))))) (build-system gnu-build-system) (inputs - (list - chez-scheme-bootstrap-bootfiles - `(,util-linux "lib") ;<-- libuuid - zlib - lz4 - ncurses ;<-- for expeditor - ;; for X11 clipboard support in expeditor: - ;; https://github.com/cisco/ChezScheme/issues/9#issuecomment-222057232 - libx11)) - (native-inputs (list chez-nanopass-bootstrap - stex-bootstrap)) - (native-search-paths - (list (search-path-specification - (variable "CHEZSCHEMELIBDIRS") - (files '("lib/chez-scheme"))))) - (outputs '("out" "doc")) - (arguments - (list - #:modules - '((guix build gnu-build-system) - (guix build utils) - (ice-9 ftw) - (ice-9 match)) - #:test-target "test" - #:configure-flags - #~`(,(string-append "--installprefix=" #$output) - #$@(if (and=> (chez-upstream-features-for-system) - (cut memq 'threads <>)) - #~("--threads") - #~()) - "ZLIB=-lz" - "LZ4=-llz4" - "--libkernel" - ;; Guix will do 'compress-man-pages', - ;; and letting Chez try causes an error - "--nogzip-man-pages") - #:phases - #~(modify-phases %standard-phases - (add-after 'unpack 'unpack-nanopass+stex - (lambda args - (begin - (copy-recursively - (dirname (search-input-file %build-inputs - "lib/chez-scheme/nanopass.ss")) - "nanopass" - #:keep-mtime? #t) - (mkdir-p "stex") - (with-output-to-file "stex/Mf-stex" - (lambda () - ;; otherwise, it will try to download submodules - (display "# to placate ../configure")))))) - (add-after 'unpack-nanopass+stex 'unpack-bootfiles - (lambda* (#:key native-inputs inputs #:allow-other-keys) - (when (directory-exists? "boot") - (delete-file-recursively "boot")) - (copy-recursively - (search-input-directory inputs - "lib/chez-scheme-bootfiles") - "boot"))) - ;; NOTE: The custom Chez 'configure' script doesn't allow - ;; unrecognized flags, such as those automatically added - ;; by `gnu-build-system`. This replacement phase uses only - ;; the explicitly provided `#:configure-flags`. - (replace 'configure - (lambda* (#:key inputs (configure-flags '()) out-of-source? - #:allow-other-keys) - (let* ((abs-srcdir (getcwd)) - (srcdir (if out-of-source? - (string-append "../" (basename abs-srcdir)) - "."))) - (format #t "source directory: ~s (relative from build: ~s)~%" - abs-srcdir srcdir) - (if out-of-source? - (begin - (mkdir "../build") - (chdir "../build"))) - (format #t "build directory: ~s~%" (getcwd)) - (format #t "configure flags: ~s~%" configure-flags) - (apply invoke - (string-append srcdir "/configure") - configure-flags)))) - (add-after 'configure 'configure-environment-variables - (lambda args - ;; Some makefiles (for tests) don't seem to propagate CC - ;; properly, so we take it out of their hands: - (setenv "CC" #$(cc-for-target)) - ;; Likewise, some tests have needed HOME to be set: - (setenv "HOME" "/tmp"))) - ;; The binary file name is called "scheme" as is the one from - ;; MIT/GNU Scheme. We add a symlink to use in case both are - ;; installed. - (add-after 'install 'install-symlink - (lambda* (#:key outputs #:allow-other-keys) - (let* ((scheme (search-input-file outputs "/bin/scheme")) - (bin-dir (dirname scheme))) - (symlink scheme - (string-append bin-dir "/chez-scheme")) - (match (find-files (string-append bin-dir "/../lib") - "scheme.boot") - ((scheme.boot) - (symlink scheme.boot - (string-append (dirname scheme.boot) - "/chez-scheme.boot"))))))) - ;; Building the documentation requires stex and a running scheme. - (add-after 'install-symlink 'install-docs - (lambda* (#:key native-inputs inputs outputs #:allow-other-keys) - (let* ((doc-prefix (or (assoc-ref outputs "doc") - (assoc-ref outputs "out"))) - (chez+version (strip-store-file-name #$output)) - (scheme (search-input-file outputs "/bin/scheme")) - (stexlib (search-input-directory (or native-inputs - inputs) - "/lib/stex")) - (doc-dir (string-append doc-prefix - "/share/doc/" - chez+version))) - (define* (stex-make #:optional (suffix "")) - (invoke "make" "install" - (string-append "Scheme=" scheme) - (string-append "STEXLIB=" stexlib) - (string-append "installdir=" doc-dir suffix))) - (with-directory-excursion "csug" - (stex-make "/csug")) - (with-directory-excursion "release_notes" - (stex-make "/release_notes"))))) - (add-after 'install-docs 'link-doc-pdfs - ;; otherwise, it's hard to notice them in a forest of HTML files - (lambda* (#:key outputs #:allow-other-keys) - (with-directory-excursion - (string-append (or (assoc-ref outputs "doc") - (assoc-ref outputs "out")) - "/share/doc/" - (strip-store-file-name #$output)) - (symlink "release_notes/release_notes.pdf" - "release_notes.pdf") - (match (find-files "csug" - "csug.*\\.pdf$" ;; embeded version number - #:fail-on-error? #t) - ((pth) - (symlink pth - "csug.pdf"))))))))) - (supported-systems - (delete - "armhf-linux" ;; XXX reportedly broken, needs checking - (filter chez-upstream-features-for-system - %supported-systems))) + (modify-inputs (package-inputs chez-scheme-for-racket) + (replace "chez-scheme-for-racket-bootstrap-bootfiles" + chez-scheme-bootstrap-bootfiles) + ;; for X11 clipboard support in expeditor: + ;; https://github.com/cisco/ChezScheme/issues/9#issuecomment-222057232 + (prepend libx11))) + ;; replace unpack phase? (home-page "https://cisco.github.io/ChezScheme/") (synopsis "R6RS Scheme compiler and run-time") (description - "Chez Scheme is a compiler and run-time system for the language of the -Revised^6 Report on Scheme (R6RS), with numerous extensions. The compiler -generates native code for each target processor, with support for x86, x86_64, -and 32-bit PowerPC architectures.") + "Chez Scheme is both a programming language and a high-performance +implementation of that language. The language is a superset of R6RS Scheme +with numerous extensions, including native threads, non-blocking I/O, local +modules, and much more. Chez Scheme compiles source expressions incrementally +to machine code, providing the speed of compiled code in an interactive +system. The system is intended to be as reliable and efficient as possible, +with reliability taking precedence over efficiency if necessary.") (license asl2.0))) ;; @@ -785,11 +640,6 @@ (define-public chez-scheme-bootstrap-bootfiles (arguments (list #:install-plan #~`(("boot/" "lib/chez-scheme-bootfiles")))) - (supported-systems - (filter (lambda (system) - (and=> (chez-upstream-features-for-system system) - (cut memq 'bootstrap-bootfiles <>))) - %supported-systems)) (synopsis "Chez Scheme bootfiles (binary seed)") (description "Chez Scheme is a self-hosting compiler: building it requires diff --git a/gnu/packages/patches/chez-scheme-backport-configure.patch b/gnu/packages/patches/chez-scheme-backport-configure.patch new file mode 100644 index 0000000000..584dcb3f0b --- /dev/null +++ b/gnu/packages/patches/chez-scheme-backport-configure.patch @@ -0,0 +1,463 @@ +From 24ab36374f2e366b6c939fffe8c129c8b0ae3b9c Mon Sep 17 00:00:00 2001 +From: Philip McGrath +Date: Wed, 28 Feb 2024 19:41:22 -0500 +Subject: [PATCH 1/2] Repairs and improvements for building with external + dependencies (#807) + +* configure: fix zlib and lz4 submodule checks + +Conditionals to skip the submodule checks were using the wrong +variable names, so the checks were always skipped. The correct +behavior is to perform the check unless given `ZLIB=` or +`LZ4=`, as applicable. + +* configure: support `ZUO=` + +Supplying `ZUO=` skips the submodule check in `configure` +and configures the generated makefile not to build or remove Zuo. + +* configure: support `STEXLIB=` + +For compatibility with older scripts, when not explicitly configured, +continue to honor the `STEXLIB` environment variable at build time. + +(cherry picked from commit b8838c3280ef10e115236d2f7ac9ae857f83e268) +--- + BUILDING | 5 +++-- + build.zuo | 13 +++++++++---- + configure | 40 +++++++++++++++++++++++++++++++++------- + makefiles/Makefile.in | 6 ++---- + 4 files changed, 47 insertions(+), 17 deletions(-) + +diff --git a/BUILDING b/BUILDING +index 7b3dc9c8..9e9a268b 100644 +--- a/BUILDING ++++ b/BUILDING +@@ -149,7 +149,8 @@ information on the supported options. + The generated makefile mostly just ensures that a `zuo` executable is + built in a `bin` directory, and then it defers the actual build work + to `zuo`, which uses the "main.zuo" file. If you have `zuo` installed, +-you can use `zuo` directly instead of `make`. In general, instead of ++you can use `zuo` directly instead of `make`: in that case, you may ++wish to use `./configure ZUO=`. In general, instead of + the command `make X` to build target `X` as described below, you can + use `zuo . X` (or `bin/zuo . X` after `bin/zuo` is built). + +@@ -333,7 +334,7 @@ The makefile supports several targets: + * `make clean` + + Removes all built elements from the workarea, and then removes +- `bin/zuo`. ++ `bin/zuo` (unless configured with `ZUO=`). + + + WINDOWS VIA COMMAND PROMPT +diff --git a/build.zuo b/build.zuo +index c21d2caa..c5896396 100644 +--- a/build.zuo ++++ b/build.zuo +@@ -224,10 +224,15 @@ + token)) + + (define stexlib +- (let ((found (assoc "STEXLIB" (hash-ref (runtime-env) 'env)))) +- (if found +- (cdr found) +- (at-source "stex")))) ++ (let ([configured (hash-ref config 'STEXLIB "")] ++ [env (assoc "STEXLIB" (hash-ref (runtime-env) 'env))]) ++ (cond ++ [(not (equal? "" configured)) ++ configured] ++ [env ++ (cdr env)] ++ [else ++ (at-source "stex")]))) + (define stex-sources + (source-tree stexlib)) + +diff --git a/configure b/configure +index 2b4b594e..782dd09b 100755 +--- a/configure ++++ b/configure +@@ -93,6 +93,7 @@ default_warning_flags="-Wpointer-arith -Wall -Wextra -Wno-implicit-fallthrough" + CFLAGS_ADD= + zlibLib= + LZ4Lib= ++STEXLIB= + Kernel=KernelLib + buildKernelOnly=no + enableFrompb=yes +@@ -103,6 +104,7 @@ moreBootFiles= + preloadBootFiles= + alwaysUseBootFile= + skipSubmoduleUpdate= ++zuoExternal= + + CONFIG_UNAME=`uname` + +@@ -446,6 +448,12 @@ while [ $# != 0 ] ; do + LZ4=*) + LZ4Lib=`echo $1 | sed -e 's/^LZ4=//'` + ;; ++ STEXLIB=*) ++ STEXLIB=`echo $1 | sed -e 's/^STEXLIB=//'` ++ ;; ++ ZUO=*) ++ zuoExternal=`echo $1 | sed -e 's/^ZUO=//'` ++ ;; + *) + echo "option '$1' unrecognized or missing an argument; try $0 --help" + exit 1 +@@ -672,6 +680,8 @@ if [ "$help" = "yes" ]; then + echo " STRIP= executable stripper" + echo " ZLIB= link to instead of own zlib" + echo " LZ4= link to instead of own LZ4" ++ echo " STEXLIB= build docs with instead of own stex" ++ echo " ZUO= build with instead of own Zuo" + echo "" + echo "Available machine types: $machs" + echo "" +@@ -889,28 +899,39 @@ submod_instructions () { + exit 1 + } + +-if [ ! -f "$srcdir"/zuo/configure ] ; then +- submod_instructions 'Source in "zuo" is missing' ++if [ "${zuoExternal}" = "" ] ; then ++ if [ ! -f "$srcdir"/zuo/configure ] ; then ++ submod_instructions 'Source in "zuo" is missing' ++ fi ++ ZUO="bin/zuo" ++ RM_ZUO="rm -f bin/zuo" ++ ZUO_TARGET="bin/zuo" ++else ++ ZUO="${zuoExternal}" ++ RM_ZUO="@echo 'Not cleaning external ${zuoExternal}'" ++ ZUO_TARGET="DoNotBuildZuo" + fi + + if [ ! -f "$srcdir"/nanopass/nanopass.ss ] ; then + submod_instructions 'Source in "nanopass" is missing' + fi + +-if [ "${zlibDep}" != "" ] ; then ++if [ "${zlibLib}" = "" ] ; then + if [ ! -f "$srcdir"/zlib/configure ] ; then + submod_instructions 'Source in "zlib" is missing' + fi + fi + +-if [ "${LZ4Dep}" != "" ] ; then ++if [ "${LZ4Lib}" = "" ] ; then + if [ ! -f "$srcdir"/lz4/lib/Makefile ] ; then + submod_instructions 'Source in "lz4" is missing' + fi + fi + +-if [ ! -f "$srcdir"/stex/Mf-stex ] ; then +- submod_instructions 'Source in "stex" is missing' ++if [ "${STEXLIB}" = "" ] ; then ++ if [ ! -f "$srcdir"/stex/Mf-stex ] ; then ++ submod_instructions 'Source in "stex" is missing' ++ fi + fi + + # more compile and link flags for c/Mf-unix and mats/Mf-unix +@@ -1083,7 +1104,7 @@ cp "$srcdir"/makefiles/buildmain.zuo main.zuo + # Some idea, but in the workarea, so it refers to "workarea.zuo" here: + cp "$srcdir"/makefiles/workmain.zuo $w/main.zuo + +-# The content of "$w/Makefile" records configuration decisions, ++# The content of "$w/Mf-config" records configuration decisions, + # and the Zuo build script takes it from there + cat > $w/Mf-config << END + srcdir=$srcdir +@@ -1119,6 +1140,7 @@ cursesLib=$cursesLib + ncursesLib=$ncursesLib + zlibLib=$zlibLib + LZ4Lib=$LZ4Lib ++STEXLIB=$STEXLIB + warningFlags=$warningFlags + Kernel=$Kernel + installscriptname=$installscriptname +@@ -1130,6 +1152,10 @@ preloadBootFiles=$preloadBootFiles + alwaysUseBootFile=$alwaysUseBootFile + relativeBootFiles=$relativeBootFiles + ++ZUO=$ZUO ++RM_ZUO=$RM_ZUO ++ZUO_TARGET=$ZUO_TARGET ++ + InstallBin=$installbin + InstallLib=$installlib + InstallMan=$installman/man1 +diff --git a/makefiles/Makefile.in b/makefiles/Makefile.in +index 3b95f065..0e3d307d 100644 +--- a/makefiles/Makefile.in ++++ b/makefiles/Makefile.in +@@ -3,8 +3,6 @@ workarea=$(w) + + include $(workarea)/Mf-config + +-ZUO=bin/zuo +- + .PHONY: build + build: $(ZUO) + + $(ZUO) $(workarea) MAKE="$(MAKE)" +@@ -144,9 +142,9 @@ pkg: $(ZUO) + .PHONY: clean + clean: $(ZUO) + + $(ZUO) $(workarea) clean MAKE="$(MAKE)" +- rm -f bin/zuo ++ $(RM_ZUO) + + # Using `+` here means that $(ZUO) gets built even if `-n`/`--dry-run` is provided to `make` +-$(ZUO): $(srcdir)/zuo/zuo.c ++$(ZUO_TARGET): $(srcdir)/zuo/zuo.c + + mkdir -p bin + + $(CC_FOR_BUILD) -DZUO_LIB_PATH='"'"../zuo/lib"'"' -o $(ZUO) $(srcdir)/zuo/zuo.c + +base-commit: 253230f7dfbb4fe777277d6bbf93f39f9567f086 +-- +2.41.0 + + +From 665bccc1c074131e790879adc1436f8059801171 Mon Sep 17 00:00:00 2001 +From: Matthew Flatt +Date: Sun, 17 Mar 2024 09:06:30 -0600 +Subject: [PATCH 2/2] adjust `configure ZUO=` support (#816) + +Continuing from b8838c3280, adjust the generated makefile so the +supplied `` is not a makefile dependency. That way, `ZUO=zuo` +works if `zuo` is installed and the current build directory is not the +source directory. (The `zuo` executable is a dependency in a real and +relevant sense, but not in the sense of dependencies that we normally +track in makefiles.) + +Also adapt the makefile for the case that `ZUO=...` is not supplied +and the build directory is not the source directory, in which case +`ZUO_LIB_PATH` needs to be relative to the source directory. + +Using `make ZUO=zuo` can also work, but in that case, `bin/zuo` is +still built as a dependency. It's possible that some portable makefile +magic could overcome that limitation, but it doesn't seem important. + +(cherry picked from commit d327968f37cdf669d15a9ad6d356bbf92c502bb9) +--- + configure | 3 ++ + makefiles/Makefile.in | 66 +++++++++++++++++++++---------------------- + 2 files changed, 36 insertions(+), 33 deletions(-) + +diff --git a/configure b/configure +index 782dd09b..9adae37a 100755 +--- a/configure ++++ b/configure +@@ -904,10 +904,12 @@ if [ "${zuoExternal}" = "" ] ; then + submod_instructions 'Source in "zuo" is missing' + fi + ZUO="bin/zuo" ++ ZUO_DEP="${ZUO}" + RM_ZUO="rm -f bin/zuo" + ZUO_TARGET="bin/zuo" + else + ZUO="${zuoExternal}" ++ ZUO_DEP="" + RM_ZUO="@echo 'Not cleaning external ${zuoExternal}'" + ZUO_TARGET="DoNotBuildZuo" + fi +@@ -1153,6 +1155,7 @@ alwaysUseBootFile=$alwaysUseBootFile + relativeBootFiles=$relativeBootFiles + + ZUO=$ZUO ++ZUO_DEP=$ZUO_DEP + RM_ZUO=$RM_ZUO + ZUO_TARGET=$ZUO_TARGET + +diff --git a/makefiles/Makefile.in b/makefiles/Makefile.in +index 0e3d307d..fc8605a0 100644 +--- a/makefiles/Makefile.in ++++ b/makefiles/Makefile.in +@@ -4,55 +4,55 @@ workarea=$(w) + include $(workarea)/Mf-config + + .PHONY: build +-build: $(ZUO) ++build: $(ZUO_DEP) + + $(ZUO) $(workarea) MAKE="$(MAKE)" + + .PHONY: run +-run: $(ZUO) ++run: $(ZUO_DEP) + + $(ZUO) $(workarea) run + + .PHONY: kernel +-kernel: $(ZUO) ++kernel: $(ZUO_DEP) + + $(ZUO) $(workarea) kernel MAKE="$(MAKE)" + + .PHONY: install +-install: $(ZUO) ++install: $(ZUO_DEP) + $(ZUO) $(workarea) install MAKE="$(MAKE)" + + .PHONY: uninstall +-uninstall: $(ZUO) ++uninstall: $(ZUO_DEP) + + $(ZUO) $(workarea) uninstall MAKE="$(MAKE)" + + .PHONY: test-one +-test-one: $(ZUO) ++test-one: $(ZUO_DEP) + + $(ZUO) $(workarea) test-one MAKE="$(MAKE)" + + .PHONY: test-some-fast +-test-some-fast: $(ZUO) ++test-some-fast: $(ZUO_DEP) + + $(ZUO) $(workarea) test-some-fast MAKE="$(MAKE)" + + .PHONY: test-some +-test-some: $(ZUO) ++test-some: $(ZUO_DEP) + + $(ZUO) $(workarea) test-some MAKE="$(MAKE)" + + .PHONY: test +-test: $(ZUO) ++test: $(ZUO_DEP) + + $(ZUO) $(workarea) test MAKE="$(MAKE)" + + .PHONY: test-more +-test-more: $(ZUO) ++test-more: $(ZUO_DEP) + + $(ZUO) $(workarea) test-more MAKE="$(MAKE)" + + .PHONY: coverage +-coverage: $(ZUO) ++coverage: $(ZUO_DEP) + + $(ZUO) $(workarea) coverage MAKE="$(MAKE)" + + .PHONY: bootfiles +-bootfiles: $(ZUO) ++bootfiles: $(ZUO_DEP) + + $(ZUO) $(workarea) bootfiles MAKE="$(MAKE)" + + .PHONY: reset +-reset: $(ZUO) ++reset: $(ZUO_DEP) + + $(ZUO) $(workarea) reset MAKE="$(MAKE)" + + # Supply XM= to build boot files for +@@ -61,90 +61,90 @@ boot: + + $(ZUO) $(workarea) boot "$(XM)" MAKE="$(MAKE)" + + # `.boot` as alias for `boot XM=` +-%.boot: $(ZUO) ++%.boot: $(ZUO_DEP) + + $(ZUO) $(workarea) boot $* MAKE="$(MAKE)" + + .PHONY: auto.boot +-auto.boot: $(ZUO) ++auto.boot: $(ZUO_DEP) + + $(ZUO) $(workarea) boot MAKE="$(MAKE)" + + SCHEME=scheme + + .PHONY: cross.boot +-cross.boot: $(ZUO) ++cross.boot: $(ZUO_DEP) + + $(ZUO) $(workarea) boot SCHEME="$(SCHEME)" MAKE="$(MAKE)" + + .PHONY: re.boot +-re.boot: $(ZUO) ++re.boot: $(ZUO_DEP) + + $(ZUO) $(workarea) reboot SCHEME="$(SCHEME)" + + # Supply XM= to build boot files for + # with o=3 d=0 for the cross compiler, and only after + # building the kernel for the configured machine + .PHONY: bootquick +-bootquick: $(ZUO) ++bootquick: $(ZUO_DEP) + + $(ZUO) $(workarea) bootquick "$(XM)" MAKE="$(MAKE)" + + # `.bootquick` as alias for `boot XM=` +-%.bootquick: $(ZUO) ++%.bootquick: $(ZUO_DEP) + + $(ZUO) $(workarea) bootquick $* MAKE="$(MAKE)" + +-auto.bootquick: $(ZUO) ++auto.bootquick: $(ZUO_DEP) + + $(ZUO) $(workarea) bootquick MAKE="$(MAKE)" + + # Supply XM=-.bootpbchunk to repackage boot files for + # with pbchunk sources, including additional + # boot files + .PHONY: bootpbchunk +-bootpbchunk: $(ZUO) ++bootpbchunk: $(ZUO_DEP) + + $(ZUO) $(workarea) bootpbchunk "$(XM)" $(ARGS) MAKE="$(MAKE)" + + # `.bootpbchunk` as alias for `pbchunk XM=` +-%.bootpbchunk: $(ZUO) ++%.bootpbchunk: $(ZUO_DEP) + + $(ZUO) $(workarea) bootpbchunk $* $(ARGS) MAKE="$(MAKE)" + + .PHONY: docs +-docs: build $(ZUO) ++docs: build $(ZUO_DEP) + + $(ZUO) $(workarea) docs MAKE="$(MAKE)" + + .PHONY: csug +-csug: build $(ZUO) ++csug: build $(ZUO_DEP) + + $(ZUO) $(workarea) csug MAKE="$(MAKE)" + + .PHONY: release_notes +-release_notes: build $(ZUO) ++release_notes: build $(ZUO_DEP) + + $(ZUO) $(workarea) release_notes MAKE="$(MAKE)" + + .PHONY: install-docs +-install-docs: build $(ZUO) ++install-docs: build $(ZUO_DEP) + + $(ZUO) $(workarea) install-docs MAKE="$(MAKE)" + + .PHONY: install-csug +-install-csug: build $(ZUO) ++install-csug: build $(ZUO_DEP) + + $(ZUO) $(workarea) install-csug MAKE="$(MAKE)" + + .PHONY: install-release_notes +-install-release_notes: build $(ZUO) ++install-release_notes: build $(ZUO_DEP) + + $(ZUO) $(workarea) install-release_notes MAKE="$(MAKE)" + + .PHONY: bintar +-bintar: $(ZUO) ++bintar: $(ZUO_DEP) + + $(ZUO) $(workarea) bintar MAKE="$(MAKE)" + + .PHONY: rpm +-rpm: $(ZUO) ++rpm: $(ZUO_DEP) + + $(ZUO) $(workarea) rpm MAKE="$(MAKE)" + + .PHONY: pkg +-pkg: $(ZUO) ++pkg: $(ZUO_DEP) + + $(ZUO) $(workarea) pkg MAKE="$(MAKE)" + + .PHONY: clean +-clean: $(ZUO) ++clean: $(ZUO_DEP) + + $(ZUO) $(workarea) clean MAKE="$(MAKE)" + $(RM_ZUO) + + # Using `+` here means that $(ZUO) gets built even if `-n`/`--dry-run` is provided to `make` + $(ZUO_TARGET): $(srcdir)/zuo/zuo.c + + mkdir -p bin +- + $(CC_FOR_BUILD) -DZUO_LIB_PATH='"'"../zuo/lib"'"' -o $(ZUO) $(srcdir)/zuo/zuo.c ++ + $(CC_FOR_BUILD) -DZUO_LIB_PATH='"'"$(upsrcdir)/zuo/lib"'"' -o $(ZUO) $(srcdir)/zuo/zuo.c +-- +2.41.0 + diff --git a/gnu/packages/patches/chez-scheme-bin-sh.patch b/gnu/packages/patches/chez-scheme-bin-sh.patch index 7650914f01..c2a4b292f7 100644 --- a/gnu/packages/patches/chez-scheme-bin-sh.patch +++ b/gnu/packages/patches/chez-scheme-bin-sh.patch @@ -1,6 +1,6 @@ -From 3c838e6a0c3214d95bf02048cddccfd1b69a679f Mon Sep 17 00:00:00 2001 +From b8428ad25b437acf4bd8210b14db207b71fe44c3 Mon Sep 17 00:00:00 2001 From: Philip McGrath -Date: Thu, 19 May 2022 13:41:56 -0400 +Date: Wed, 24 Aug 2022 19:55:14 -0400 Subject: [PATCH] patch s_process for "/bin/sh" on Guix If: @@ -14,22 +14,27 @@ then `s_process` will call `execl` with the file specified by `_PATH_BSHELL` instead of "/bin/sh". Checking that the path specified by `_PATH_BSHELL` exists safeguards -against obscure errors if attempting to use stand-alone executables -built by the patched Racket in non-Guix envoronments. +against obscure errors if attempting to use the patched Chez Scheme +or executables it builds in non-Guix envoronments. This patch does not change the behavior of `s_system`, which relies on `system` from the C library. --- + +Notes: + See also racket-chez-scheme-bin-sh.patch, racket-rktio-bin-sh.patch, + and zuo-bin-sh.patch. + c/prim5.c | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) diff --git a/c/prim5.c b/c/prim5.c -index 5a07893..bc2736c 100644 +index 90b087f1..284f063f 100644 --- a/c/prim5.c +++ b/c/prim5.c -@@ -23,6 +23,12 @@ - #include - #include +@@ -27,6 +27,12 @@ + #include + #endif +/* BEGIN PATCH for Guix */ +#ifndef WIN32 @@ -39,8 +44,8 @@ index 5a07893..bc2736c 100644 + /* locally defined functions */ static INT s_errno(void); - static iptr s_addr_in_heap(uptr x); -@@ -746,6 +752,17 @@ static ptr s_process(char *s, IBOOL stderrp) { + static IBOOL s_addr_in_heap(uptr x); +@@ -875,6 +881,17 @@ static ptr s_process(char *s, IBOOL stderrp) { INT tofds[2], fromfds[2], errfds[2]; struct sigaction act, oint_act; @@ -58,10 +63,10 @@ index 5a07893..bc2736c 100644 if (pipe(tofds)) S_error("process","cannot open pipes"); if (pipe(fromfds)) { -@@ -771,7 +788,9 @@ static ptr s_process(char *s, IBOOL stderrp) { - CLOSE(1); if (dup(fromfds[1]) != 1) _exit(1); - CLOSE(2); if (dup(stderrp ? errfds[1] : 1) != 2) _exit(1); - {INT i; for (i = 3; i < NOFILE; i++) (void)CLOSE(i);} +@@ -911,7 +928,9 @@ static ptr s_process(char *s, IBOOL stderrp) { + } + } + #endif /* __GNU__ Hurd */ - execl("/bin/sh", "/bin/sh", "-c", s, NULL); + /* BEGIN PATCH for Guix */ + execl(guix_sh, guix_sh, "-c", s, NULL); @@ -70,7 +75,7 @@ index 5a07893..bc2736c 100644 /*NOTREACHED*/ } else { -base-commit: 9df56e7b25bc523663eac3da24be33afc5f76c84 +base-commit: 253230f7dfbb4fe777277d6bbf93f39f9567f086 -- -2.32.0 +2.41.0 -- cgit v1.2.3 From 80eace78a38fe5738b7608f8381fcd734a084ed0 Mon Sep 17 00:00:00 2001 From: Philip McGrath Date: Mon, 1 Apr 2024 02:51:10 -0400 Subject: gnu: Deprecate chez-scheme-for-system.in favor of chez-scheme. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Chez Scheme 10.0.0 includes all of the additional platform support developed on the Racket branch. * gnu/packages/chez.scm (chez-scheme-for-system): Deprecate it. Change-Id: I7e11c8c4d95f41ff63e5c52be664a537556393c1 Signed-off-by: Ludovic Courtès --- gnu/packages/chez.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/chez.scm b/gnu/packages/chez.scm index 5b98b3ce1f..5a9a761282 100644 --- a/gnu/packages/chez.scm +++ b/gnu/packages/chez.scm @@ -27,6 +27,7 @@ (define-module (gnu packages chez) #:select (gpl2+ gpl3+ lgpl2.0+ lgpl2.1+ asl2.0 bsd-3 expat public-domain)) #:use-module (guix packages) + #:use-module (guix deprecation) #:use-module (guix download) #:use-module (guix git-download) #:use-module (guix utils) @@ -68,8 +69,7 @@ (define-module (gnu packages chez) ;; ;; Code: -(define* (chez-scheme-for-system #:optional - system) +(define-deprecated (chez-scheme-for-system #:optional system) chez-scheme "Returns 'chez-scheme'." chez-scheme) -- cgit v1.2.3 From c3930c8bb01e69a21348206b7298c78bc4b06caa Mon Sep 17 00:00:00 2001 From: Philip McGrath Date: Mon, 1 Apr 2024 02:51:11 -0400 Subject: gnu: Fix uses of deprecated chez-scheme-for-system. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit (chez-srfi, chez-web, chez-sockets, chez-matchable, chez-irregex) (chez-fmt, chez-mit, chez-scmutils)[native-inputs]: Use 'chez-scheme' instead of 'chez-scheme-for-system'. * gnu/packages/emacs-xyz.scm (emacs-geiser-chez)[inputs]: Likewise. * gnu/packages/loko.scm (loko-scheme)[native-inputs]: Likewise. Change-Id: Ib4d713fecbb41cbbe75f67980b9e22cc9bd673dd Signed-off-by: Ludovic Courtès --- gnu/packages/chez.scm | 16 ++++++++-------- gnu/packages/emacs-xyz.scm | 2 +- gnu/packages/loko.scm | 2 +- 3 files changed, 10 insertions(+), 10 deletions(-) diff --git a/gnu/packages/chez.scm b/gnu/packages/chez.scm index 5a9a761282..807a143f61 100644 --- a/gnu/packages/chez.scm +++ b/gnu/packages/chez.scm @@ -907,7 +907,7 @@ (define-public chez-srfi (file-name (git-file-name name version)))) (build-system gnu-build-system) (native-inputs - (list (chez-scheme-for-system))) + (list chez-scheme)) (arguments (list #:make-flags (chez-make-flags name version) #:test-target "test" @@ -938,7 +938,7 @@ (define-public chez-web (base32 "1dq25qygyncbfq4kwwqqgyyakfqjwhp5q23vrf3bff1p66nyfl3b")))) (build-system gnu-build-system) (native-inputs - (list (chez-scheme-for-system) + (list chez-scheme ghostscript (texlive-updmap.cfg (list texlive-charter @@ -1005,7 +1005,7 @@ (define-public chez-sockets (base32 "1n5fbwwz51fdzvjackgmnsgh363g9inyxv7kmzi0469cwavwcx5m")))) (build-system gnu-build-system) (native-inputs - (list (chez-scheme-for-system) + (list chez-scheme chez-web (texlive-updmap.cfg))) (arguments @@ -1091,7 +1091,7 @@ (define-public chez-matchable (inputs (list chez-srfi)) ; for tests (native-inputs - (list (chez-scheme-for-system))) + (list chez-scheme)) (arguments (list #:make-flags (chez-make-flags name version) #:test-target "test" @@ -1123,7 +1123,7 @@ (define-public chez-irregex (propagated-inputs (list chez-srfi)) ; for irregex-utils (native-inputs - (list (chez-scheme-for-system))) + (list chez-scheme)) (arguments (list #:make-flags (chez-make-flags name version) #:test-target "test" @@ -1154,7 +1154,7 @@ (define-public chez-fmt (propagated-inputs (list chez-srfi)) ; for irregex-utils (native-inputs - (list (chez-scheme-for-system))) + (list chez-scheme)) (arguments (list #:make-flags (chez-make-flags name version) #:test-target "chez-check" @@ -1217,7 +1217,7 @@ (define string->uninterned-symbol (inputs (list chez-srfi)) ; for tests (native-inputs - (list (chez-scheme-for-system))) + (list chez-scheme)) (arguments (list #:make-flags (chez-make-flags name version) #:test-target "test" @@ -1248,7 +1248,7 @@ (define-public chez-scmutils (inputs (list chez-srfi)) ; for tests (native-inputs - (list (chez-scheme-for-system))) + (list chez-scheme)) (propagated-inputs (list chez-mit chez-srfi)) (arguments diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm index f35aa3e514..bf2b622f92 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -762,7 +762,7 @@ (define-public emacs-geiser-chez (string-append "(eval-after-load 'geiser-impl '" all ")")))))))) (inputs - (list (chez-scheme-for-system))) + (list chez-scheme)) (propagated-inputs (list emacs-geiser)) (home-page "https://nongnu.org/geiser/") diff --git a/gnu/packages/loko.scm b/gnu/packages/loko.scm index 49dcc92d1e..003fbe416a 100644 --- a/gnu/packages/loko.scm +++ b/gnu/packages/loko.scm @@ -74,7 +74,7 @@ (define-public loko-scheme #t))))) (native-inputs (list akku - (chez-scheme-for-system) + chez-scheme guile-struct-pack guile-laesare guile-pfds -- cgit v1.2.3 From 9d407205e8e711218e3bfa50ab6e2f55b0df623d Mon Sep 17 00:00:00 2001 From: Philip McGrath Date: Mon, 1 Apr 2024 02:51:12 -0400 Subject: gnu: chez-scheme: Update and simplify machine-type handling. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Since Chez Scheme 10.0.0 supports all of the backends added in Racket's branch, the complexity of '%chez-features-table' is no longer needed. Ideally, even more of this logic could be maintained upstream, but this change will simplify maintenance in the mean time. * gnu/packages/chez.scm (target-chez-arch): Recognize loongarch64. (chez-upsteam-features-for-system): Remove function. (%chez-features-table): Replace with ... (define-machine-types, %machine-types): ... this new macro and variable, using the list copied directly from the Chez Scheme source code. (nix-system->pbarch-machine-type): Update docstring, since pbarch machine types are supported upstream as of Chez Scheme 10.0.0. (racket-cs-native-supported-system?): Replace with ... (nix-system->native-chez-machine-type): ... this new function, implemented using '%machine-types'. (chez-scheme-for-racket): Update accordingly. (chez-scheme-for-racket-bootstrap-bootfiles): Likewise. * gnu/packages/racket.scm (racket-vm-cs): Likewise. Change-Id: I46efebaf48cce388075ab4873c16a6f5f9692bb7 Signed-off-by: Ludovic Courtès --- gnu/packages/chez.scm | 197 +++++++++++++++++++----------------------------- gnu/packages/racket.scm | 4 +- 2 files changed, 81 insertions(+), 120 deletions(-) diff --git a/gnu/packages/chez.scm b/gnu/packages/chez.scm index 807a143f61..4d3f79d9a7 100644 --- a/gnu/packages/chez.scm +++ b/gnu/packages/chez.scm @@ -50,7 +50,7 @@ (define-module (gnu packages chez) #:use-module (srfi srfi-1) #:use-module (srfi srfi-26) #:export (chez-scheme-for-system - racket-cs-native-supported-system? + nix-system->native-chez-machine-type nix-system->pbarch-machine-type unpack-nanopass)) @@ -93,6 +93,8 @@ (define* (target-chez-arch #:optional (system "ppc32") ((target-riscv64? system) "rv64") + ((string-prefix? "loongarch64-" system) + "la64") (else #f))) @@ -127,111 +129,67 @@ (define* (target-chez-os #:optional (system (or (%current-target-system) (else #f))) -(define %chez-features-table - ;; An alist of alists mapping: - ;; os -> arch -> (or/c #f (listof symbol?)) - ;; where: - ;; - `os` is a string for the OS part of a Chez Scheme machine type; and - ;; - `arch` is a string for the architecture part of a Chez machine type. - ;; - ;; The absence of an entry for a given arch--os pair means that neither - ;; upstream Chez Scheme nor the Racket variant can generate native code for - ;; that system. (The Racket variant can still provide support via its - ;; ``portable bytecode'' backends and optional compilation to C.) A value - ;; of `#f` means that upstream Chez Scheme does not support the arch--os - ;; pair at all, but the Racket variant does. A list has the same meaning as - ;; a result from `chez-upstream-features-for-system`. - ;; - ;; The arch--os pairs marked "commented out" have been commented out in the - ;; STeX source for the upstream release notes since the initial release as - ;; free software, but they are reported to work and/or have been described - ;; as supported by upstream maintainers. - ;; - ;; For this overall approach to make sense, we assume that Racket's variant - ;; of Chez Scheme can generate native code for a superset of the platforms - ;; supported upstream, supports threads on all platforms it supports at all - ;; (because they are needed for Racket), and doesn't need bootstrap - ;; bootfiles. Those assumptions have held for several years. - '(;; Linux - ("le" - ("i3" threads bootstrap-bootfiles) - ("a6" threads bootstrap-bootfiles) - ("arm32" bootstrap-bootfiles) - ("arm64" . #f) - ("rv64" . #f) - ("ppc32" threads)) - ;; Hurd - ("gnu" - ("i3" . #f)) - ;; FreeBSD - ("fb" - ("i3" threads) ;; commented out - ("a6" threads) ;; commented out - ("arm32" . #f) - ("arm64" . #f) - ("ppc32" . #f)) - ;; OpenBSD - ("ob" - ("i3" threads) ;; commented out - ("a6" threads) ;; commented out - ("arm32" . #f) - ("arm64" . #f) - ("ppc32" . #f)) - ;; NetBSD - ("nb" - ("i3" threads) ;; commented out - ("a6" threads) ;; commented out - ("arm32" . #f) - ("arm64" . #f) - ("ppc32" . #f)) - ;; OpenSolaris / OpenIndiana / Illumos - ("s2" - ("i3" threads) ;; commented out - ("a6" threads)) ;; commented out - ;; QNX - ("qnx" - ("i3" . #f)) - ;; Windows - ("nt" - ("i3" threads bootstrap-bootfiles) - ("a6" threads bootstrap-bootfiles) - ;; ^ threads "experiemental", but reportedly fine - ("arm64" . #f)) - ;; Darwin - ("osx" - ("i3" threads bootstrap-bootfiles) - ("a6" threads bootstrap-bootfiles) - ("arm64" . #f) - ("ppc32" . #f)))) - -(define* (chez-upstream-features-for-system #:optional - (system - (or (%current-target-system) - (%current-system)))) - "Return a list of symbols naming features supported by upstream Chez Scheme -for the Nix system identifier SYSTEM, or @code{#f} if upstream Chez Scheme -does not support SYSTEM at all. - -If native threads are supported, the returned list will include -@code{'threads}. If bootstrap bootfiles for SYSTEM are distributed in the -upstream Chez Scheme repository, the returned list will include -@code{'bootstrap-bootfiles}. Other feature symbols may be added in the -future." - (let ((chez-arch (target-chez-arch system)) - (chez-os (target-chez-os system))) - (and=> (assoc-ref %chez-features-table chez-os) - (cut assoc-ref <> chez-arch)))) +(define-syntax define-machine-types + (lambda (stx) + (syntax-case stx (any) + ((_ any id0 id ...) + #`(define #,(datum->syntax #'id0 '%machine-types) + '(id0 id ...)))))) +;; The following is copied from s/cmacros.ss, line 36, in the Chez source +(define-machine-types + any + pb tpb + pb32l tpb32l + pb32b tpb32b + pb64l tpb64l + pb64b tpb64b + i3nt ti3nt + i3osx ti3osx + i3le ti3le + i3fb ti3fb + i3ob ti3ob + i3nb ti3nb + i3s2 ti3s2 + i3qnx ti3qnx + i3gnu ti3gnu + a6nt ta6nt + a6osx ta6osx + a6le ta6le + a6fb ta6fb + a6ob ta6ob + a6nb ta6nb + a6s2 ta6s2 + ppc32osx tppc32osx + ppc32le tppc32le + ppc32fb tppc32fb + ppc32ob tppc32ob + ppc32nb tppc32nb + arm32le tarm32le + arm32fb tarm32fb + arm32ob tarm32ob + arm32nb tarm32nb + arm64nt tarm64nt + arm64osx tarm64osx + arm64le tarm64le + arm64fb tarm64fb + arm64ob tarm64ob + arm64nb tarm64nb + rv64le trv64le + rv64fb trv64fb + rv64ob trv64ob + rv64nb trv64nb + la64le tla64le +) (define* (nix-system->pbarch-machine-type #:optional (system (or (%current-target-system) (%current-system))) #:key (threads? #t)) - "Return a string naming the pseudo–machine type used by Racket's variant of -Chez Scheme to represent the appropriate ``pbarch'' backend for SYSTEM: that -is, the ``portable bytecode'' backend specialized for SYSTEM's word size and -endianness. The result will name the threaded machine type unless THREADS? is -provided and is #f." + "Return a string naming the Chez Scheme machine type of the appropriate +``pbarch'' backend for SYSTEM: that is, the ``portable bytecode'' backend +specialized for SYSTEM's word size and endianness. The result will name the +threaded machine type unless THREADS? is provided as #f." (string-append (if threads? "t" "") @@ -243,20 +201,23 @@ (define* (nix-system->pbarch-machine-type #:optional "l" "b"))) -(define* (racket-cs-native-supported-system? #:optional - (system - (or (%current-target-system) - (%current-system)))) - "Can Racket's variant of Chez Scheme generate native code for SYSTEM? If -so, return the applicable machine type as a string. Otherwise, when SYSTEM -can use only the ``portable bytecode'' backends, return #f." - (let ((chez-arch (target-chez-arch system)) - (chez-os (target-chez-os system))) - (and (and=> (assoc-ref %chez-features-table chez-os) - ;; NOT assoc-ref: supported even if cdr is #f - (cut assoc chez-arch <>)) - (string-append "t" chez-arch chez-os)))) - +(define* (nix-system->native-chez-machine-type #:optional + (system + (or (%current-target-system) + (%current-system))) + #:key (threads? #t)) + "Return a string naming the Chez Scheme machine type of the native-code +backend for SYSTEM, if such a native-code backend exists. Otherwise, when +SYSTEM can use only the ``portable bytecode'' backends, return #f. The result +will name the threaded machine type unless THREADS? is provided as #f." + (let* ((chez-arch (target-chez-arch system)) + (chez-os (target-chez-os system)) + (machine + (and chez-arch chez-os + (string-append (if threads? "t" "") chez-arch chez-os)))) + (and machine + (memq (string->symbol machine) %machine-types) + machine))) ;; ;; Chez Scheme: ;; @@ -300,7 +261,7 @@ (define-public chez-scheme-for-racket (version "9.9.9-pre-release.23") (source #f) (build-system gnu-build-system) - (inputs `(,@(if (racket-cs-native-supported-system?) + (inputs `(,@(if (nix-system->native-chez-machine-type) '() (list libffi)) ,chez-scheme-for-racket-bootstrap-bootfiles @@ -353,10 +314,10 @@ (define-public chez-scheme-for-racket (search-input-directory %build-inputs "/include/X11")) '() '("--disable-x11")) - #$(string-append "-m=" (or (racket-cs-native-supported-system?) + #$(string-append "-m=" (or (nix-system->native-chez-machine-type) (nix-system->pbarch-machine-type))) ;; ^ could skip -m= for non-cross non-pbarch builds - #$@(if (racket-cs-native-supported-system?) + #$@(if (nix-system->native-chez-machine-type) #~() ;; not inferred on non-native platforms: see ;; https://racket.discourse.group/t/950/9 @@ -588,7 +549,7 @@ (define-public chez-scheme-for-racket-bootstrap-bootfiles (invoke "./configure" "--force" ; don't complain about missing bootfiles #$(string-append - "-m=" (or (racket-cs-native-supported-system?) + "-m=" (or (nix-system->native-chez-machine-type) (nix-system->pbarch-machine-type))) "ZUO=zuo" ;; ignore submodules: diff --git a/gnu/packages/racket.scm b/gnu/packages/racket.scm index d366f89845..f50f6f3eab 100644 --- a/gnu/packages/racket.scm +++ b/gnu/packages/racket.scm @@ -433,7 +433,7 @@ (define-public racket-vm-cs (inputs (let ((inputs (modify-inputs (package-inputs racket-vm-cgc) (prepend zlib lz4)))) - (if (racket-cs-native-supported-system?) + (if (nix-system->native-chez-machine-type) (modify-inputs inputs (delete "libffi")) inputs))) @@ -461,7 +461,7 @@ (define-public racket-vm-cs #+(this-package-native-input "chez-scheme-for-racket") "/bin/scheme") - #$@(if (racket-cs-native-supported-system?) + #$@(if (nix-system->native-chez-machine-type) #~() #~(#$(string-append "--enable-mach=" (nix-system->pbarch-machine-type)) -- cgit v1.2.3 From 4e7337536ba41e888a601c92fada8a4adca9d2c6 Mon Sep 17 00:00:00 2001 From: Philip McGrath Date: Mon, 1 Apr 2024 02:51:13 -0400 Subject: gnu: chez-scheme: Bootstrap from source. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/chez.scm (chez-scheme)[source]: Also unbundle pre-built boot files. (chez-scheme-bootstrap-bootfiles): Stop inheriting from 'chez-scheme'. [native-inputs]: Add 'zuo', 'chez-nanopass-bootstrap', and either 'chez-scheme-for-racket' or, for cross builds, 'chez-scheme'. [build-system]: Change to gnu-build-system. [arguments]: Change to run 'configure' and then bootstrap via `make re.boot` or, for cross builds, `make cross.boot` [synopsis, description]: Update accordingly. (chez-scheme-for-racket-bootstrap-bootfiles)[synopsis]: Write "boot files" as two words in prose. [description]: Likewise. * gnu/packages/racket.scm: Update comments. Change-Id: I55d9b57090ecaca0aa2ab19c2c3ebae2243a9173 Signed-off-by: Ludovic Courtès --- gnu/packages/chez.scm | 123 +++++++++++++++++++++++++++++++++++++----------- gnu/packages/racket.scm | 24 ++++++---- 2 files changed, 112 insertions(+), 35 deletions(-) diff --git a/gnu/packages/chez.scm b/gnu/packages/chez.scm index 4d3f79d9a7..db582fa821 100644 --- a/gnu/packages/chez.scm +++ b/gnu/packages/chez.scm @@ -57,15 +57,54 @@ (define-module (gnu packages chez) ;; Commentary: ;; ;; The bootstrapping paths for Chez Scheme and Racket are closely -;; entwined. Racket CS (the default Racket implementation) is based on (a fork -;; of) Chez Scheme. Racket's variant of Chez Scheme shares sources for -;; nanopass and stex with upstream Chez Scheme. +;; entwined. See "Bootstrapping Racket" in the commentary on "racket.scm" for +;; details on the Racket portion of Chez Scheme's bootstrapping path. ;; -;; Racket's variant of Chez Scheme can be bootstrapped by an older Racket -;; implementation, Racket BC, which can be bootstrapped from C. Porting that -;; code to work with upstream Chez Scheme (or finding an old version that -;; does) is our best hope for some day bootstrapping upstream Chez Scheme from -;; source. +;; Chez Scheme is a self-hosting compiler. A small kernel implemented in C +;; loads "boot files" (in a custom object file format) compiled from the parts +;; of the system implemented in Chez Scheme. (While Chez Scheme generates +;; native machine code, it implements its own linker and loader.) +;; +;; As of Chez Scheme 10.0.0 (and the pre-release versions that preceded it on +;; the Racket branch), there are several ways to obtain boot files: +;; +;; 1. The Racket package "cs-bootstrap" (in the "racket/src/rktboot/" +;; directory of the main Racket Git repository) simulates enough of Chez +;; Scheme to load the Chez Scheme compiler purely from source into Racket +;; and apply the compiler to itself, producing the needed boot files +;; (albeit very slowly). +;; Any variant of Racket since version 7.1 can run the simulation. Using +;; the older Racket BC implementation, which does not depend on Chez +;; Scheme, breaks the dependency cycle. +;; However, the simulation relies on implementation details of Chez +;; Scheme, so a given version of Chez Scheme can only be bootstrapped by +;; the corresponding version of the "cs-bootstrap" package. +;; +;; 2. The Chez Scheme makefile provides a "re.boot" target for bootstrapping +;; via a different version of Chez Scheme (9.5.4 or later). +;; This path manages potential differences in implementation details +;; across Chez Scheme versions using a strategy similar to "cs-bootstrap", +;; but the compatibility shim is maintained with the Chez Scheme source +;; code (in "s/reboot.ss"). Also, it's faster, since less indirection is +;; needed. +;; +;; 3. For cross-compilation, or with an extremely similar Chez Scheme, the +;; makefile provides "cross.boot" and related targets. +;; +;; 4. The Chez Scheme Git repository includes pre-built "pb" (portable +;; bytecode) boot files, which can be used for bootstrapping on any +;; platform, but these binary files are removed from the source Guix uses. +;; +;; Concretely, we use racket-vm-bc to bootstrap chez-scheme-for-racket, which +;; we then use to bootstrap both chez-scheme and racket-vm-cs. +;; +;; In principle, it would be possible instead to use chez-scheme to bootstrap +;; chez-scheme-for-racket. However, since Racket is ultimately used for +;; bootstrapping, chez-scheme would still need to be rebuilt when Racket +;; changes, whereas treating chez-scheme as a leaf avoids having to rebuild +;; Racket when upstream Chez Scheme changes. Furthermore, since "cs-bootstrap" +;; is developed in the Racket source repository, we don't have to look for the +;; version of "cs-bootstrap" compatible with the upstream Chez Scheme release. ;; ;; Code: @@ -479,7 +518,8 @@ (define-public chez-scheme (for-each (lambda (dir) (when (directory-exists? dir) (delete-file-recursively dir))) - '("lz4" + '("boot" + "lz4" "nanopass" "stex" "zlib" @@ -575,10 +615,10 @@ (define-public chez-scheme-for-racket-bootstrap-bootfiles "/opt/racket-vm/bin/racket") "../rktboot/main.rkt")))))))) (home-page "https://pkgs.racket-lang.org/package/cs-bootstrap") - (synopsis "Chez Scheme bootfiles bootstrapped by Racket") - (description "Chez Scheme is a self-hosting compiler: building it -requires ``bootfiles'' containing the Scheme-implemented portions compiled for -the current platform. (Chez can then cross-compile bootfiles for all other + (synopsis "Chez Scheme boot files bootstrapped by Racket") + (description "Chez Scheme is a self-hosting compiler: building it requires +``boot files'' containing the Scheme-implemented portions compiled for the +current platform. (Chez can then cross-compile boot files for all other supported platforms.) The Racket package @code{cs-bootstrap} (part of the main Racket Git @@ -591,28 +631,57 @@ (define-public chez-scheme-for-racket-bootstrap-bootfiles (define-public chez-scheme-bootstrap-bootfiles (package - (inherit chez-scheme) (name "chez-scheme-bootstrap-bootfiles") - (inputs '()) - (native-inputs '()) + (version (package-version chez-scheme)) + (source (package-source chez-scheme)) + (native-inputs (list chez-nanopass-bootstrap + (if (%current-target-system) + chez-scheme + chez-scheme-for-racket) + zuo)) (outputs '("out")) - (build-system copy-build-system) - ;; TODO: cross compilation + (build-system gnu-build-system) (arguments - (list #:install-plan - #~`(("boot/" "lib/chez-scheme-bootfiles")))) - (synopsis "Chez Scheme bootfiles (binary seed)") + (list + #:configure-flags + #~`("--force" ; don't complain about missing bootfiles + "ZLIB=-lz" "LZ4=-llz4" "STEXLIB=/GuixNotUsingStex" ; ignore submods + "ZUO=zuo" + ;; could skip -m= for non-cross non-pbarch builds + #$(string-append "-m=" (or (nix-system->native-chez-machine-type) + (nix-system->pbarch-machine-type)))) + #:make-flags + #~(list (string-append "SCHEME=" + (search-input-file %build-inputs "/bin/scheme")) + #$(if (%current-target-system) + "cross.boot" + "re.boot")) + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'unpack-nanopass + #$unpack-nanopass) + (replace 'configure + #$chez-configure) + (delete 'check) + (replace 'install + (lambda args + (mkdir-p (string-append #$output "/lib")) + (copy-recursively + "boot" + (string-append #$output "/lib/chez-scheme-bootfiles"))))))) + (home-page "https://cisco.github.io/ChezScheme/") + (synopsis "Bootstrapped Chez Scheme boot files") (description "Chez Scheme is a self-hosting compiler: building it requires -``bootfiles'' containing the Scheme-implemented portions compiled for the +``boot files'' containing the Scheme-implemented portions compiled for the current platform. (Chez can then cross-compile bootfiles for all other supported platforms.) -This package provides bootstrap bootfiles for upstream Chez Scheme. -Currently, it simply packages the binaries checked in to the upstream -repository. Hopefully we can eventually adapt Racket's @code{cs-bootstrap} to -work with upstream Chez Scheme so that we can bootstrap these files from -source."))) +This package provides boot files for the released version of Chez Scheme +bootstrapped by @code{chez-scheme-for-racket}. Chez Scheme 9.5.4 or any later +version can be used for bootstrapping. Guix ultimately uses the Racket package +@code{cs-bootstrap} to bootstrap its initial version of Chez Scheme.") + (license asl2.0))) ;; ;; Chez's bootstrap dependencies: diff --git a/gnu/packages/racket.scm b/gnu/packages/racket.scm index f50f6f3eab..2b20353159 100644 --- a/gnu/packages/racket.scm +++ b/gnu/packages/racket.scm @@ -72,6 +72,7 @@ (define-module (gnu packages racket) ;; ├── bc/ ;; ├── cs/ ;; ├── ChezScheme/ +;; ├── rktboot/ ;; ├── zuo/ ;; └── ... ;; @@ -149,14 +150,12 @@ (define-module (gnu packages racket) ;; - Racket BC [3M] needs an existing Racket to run "xform", ;; which transforms its own C source code to add additional annotations ;; for the precise garbage collector. -;; - Racket CS needs (bootfiles for) Racket's fork of Chez Scheme. -;; It also needs an existing Racket to compile Racket-implemented +;; - Racket CS needs (boot files for) the corresponding version of Chez +;; Scheme. It also needs an existing Racket to compile Racket-implemented ;; parts of the runtime system to R6RS libraries. -;; - Chez Scheme also needs bootfiles for itself, but Racket can simulate -;; enough of Chez Scheme to load Racket's fork of the Chez Scheme compiler -;; purely from source into Racket and apply the compiler to itself, -;; producing the needed bootfiles (albeit very slowly). -;; Any variant of Racket since version 7.1 can run the simulation. +;; - Chez Scheme also needs boot files for itself, but Racket BC can +;; bootstrap these using the code in "racket/src/rktboot/". +;; See the commentary in "chez.scm" for further details ;; ;; So, we build CGC to build 3M to build bootfiles and CS. ;; @@ -164,6 +163,14 @@ (define-module (gnu packages racket) ;; often use "BC" to mean "3M", consistent with `(banner)` and the ;; suffixes used on executables when more than one variant co-exists.) ;; +;; Since the pre-releases for Chez Scheme 10.0.0, all of Racket's changes have +;; been merged upstream, and development will be kept in sync going +;; forward. However, there is no plan to align the Chez Scheme and Racket +;; release cycles. For the near fulture, a given released version of Racket +;; will continue to depend on a specific pre-release version of Chez Scheme as +;; part of Racket CS's "ABI". See upstream discussion at +;; . +;; ;; One remaining bootstrapping limitation is that Racket's reader, module ;; system, and macro expander are implemented in Racket. For Racket CS, ;; they are compiled to R6RS libraries as discussed above. This note from the @@ -189,7 +196,8 @@ (define-module (gnu packages racket) ;; Zuo is notably *not* a problem for bootstrapping. The implementation is a ;; single hand-written C file designed to build with just `cc -o zuo zuo.c`, ;; even with very old or limited compilers. (We use the Autoconf support for -;; convienience.) +;; convienience.) As of Zuo 1.8, Zuo has tagged releases in its own repository +;; independent of the Racket release cycle. ;; ;; CODE: -- cgit v1.2.3 From cb1c3f96e0ae2c77ac0241030748f7622acc264b Mon Sep 17 00:00:00 2001 From: Clément Lassieur Date: Fri, 12 Apr 2024 13:14:10 +0200 Subject: gnu: ublock-origin: Update to 1.57.2. * gnu/packages/browser-extensions.scm (ublock-origin): Update to 1.57.2. (ublock-main-assets): Update to 1cfeef15ac031cf8ea144c7b8c7b6693fcd35664. (ublock-prod-assets): Update to 17d534c817bd543bbb5be48113edefcec43bbcc9. Change-Id: Ic955ada31e33f0cf0ab3ad272e6b7c2128d76aac --- gnu/packages/browser-extensions.scm | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/gnu/packages/browser-extensions.scm b/gnu/packages/browser-extensions.scm index 1b33ef7308..96b68bf83e 100644 --- a/gnu/packages/browser-extensions.scm +++ b/gnu/packages/browser-extensions.scm @@ -58,7 +58,7 @@ (define ublock-main-assets ;; Arbitrary commit of branch master, ;; Update when updating uBlockOrigin. (let* ((name "ublock-main-assets") - (commit "13715d6deb2ab7e384ac79368fd53c9fd8a7ef64") + (commit "1cfeef15ac031cf8ea144c7b8c7b6693fcd35664") (revision "2") (version (git-version "0" revision commit))) (origin @@ -68,13 +68,13 @@ (define ublock-main-assets (commit commit))) (file-name (git-file-name name version)) (sha256 - (base32 "124gw4wiwgnhyz0dhrwqp2rykap0ffw0cccjq9askxl0n90yswyr"))))) + (base32 "0lglvynr5ap0yd4mshvj40q62vicn1rv0z661pvm134cddimz4fb"))))) (define ublock-prod-assets ;; Arbitrary commit of branch gh-pages, ;; Update when updating uBlockOrigin. (let* ((name "ublock-prod-assets") - (commit "3da96ce3dd494202656cbc95e1de8baabc0ab7b2") + (commit "17d534c817bd543bbb5be48113edefcec43bbcc9") (revision "2") (version (git-version "0" revision commit))) (origin @@ -84,12 +84,12 @@ (define ublock-prod-assets (commit commit))) (file-name (git-file-name name version)) (sha256 - (base32 "0wbg14zbj1kpmacfyn53kwbnb2g80jp04i9m3ydliq3cs8i04gzy"))))) + (base32 "1iv5vqpd8bmbdp8d4d6lgrg03x23qdfalxpzxlnzx55b1wz5aagr"))))) (define ublock-origin (package (name "ublock-origin") - (version "1.57.0") + (version "1.57.2") (home-page "https://github.com/gorhill/uBlock") (source (origin (method git-fetch) @@ -99,7 +99,7 @@ (define ublock-origin (file-name (git-file-name name version)) (sha256 (base32 - "1nlc96m4xyrynlxhx2l1dl84givy3knmjk1hgywgsp84z6ii78pv")))) + "168j7if0wnxk54rikd3a7y1asmm6xgl42bsnsvj9m44sayrfdinn")))) (build-system gnu-build-system) (outputs '("xpi" "firefox" "chromium")) (properties '((addon-id . "uBlock0@raymondhill.net"))) -- cgit v1.2.3 From 0824fa0d6924249c09a3d5f9613d1758ab91198d Mon Sep 17 00:00:00 2001 From: Ian Eure Date: Sat, 6 Apr 2024 08:04:16 -0700 Subject: gnu: Add nss-3.98. * gnu/packages/nss.scm (nss-3.98): New variable. Change-Id: If54ba20d296da2f4edd444c7cfa223a2d5a9ecb8 Signed-off-by: Andrew Tropin --- gnu/packages/nss.scm | 45 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) diff --git a/gnu/packages/nss.scm b/gnu/packages/nss.scm index 54b9e5041a..14612d7ce9 100644 --- a/gnu/packages/nss.scm +++ b/gnu/packages/nss.scm @@ -241,3 +241,48 @@ (define-public nss security standards.") (license license:mpl2.0))) +(define-public nss-3.98 + (package + (inherit nss) + (version "3.98") + (source (origin + (method url-fetch) + (uri (let ((version-with-underscores + (string-join (string-split version #\.) "_"))) + (string-append + "https://ftp.mozilla.org/pub/mozilla.org/security/nss/" + "releases/NSS_" version-with-underscores "_RTM/src/" + "nss-" version ".tar.gz"))) + (sha256 + (base32 + "1kh98amfklrq6915n4mlbrcqghc3srm7rkzs9dkh21jwscrwqjgm")) + ;; Create nss.pc and nss-config. + (patches (search-patches "nss-3.56-pkgconfig.patch" + "nss-getcwd-nonnull.patch" + "nss-increase-test-timeout.patch")) + (modules '((guix build utils))) + (snippet + '(begin + ;; Delete the bundled copy of these libraries. + (delete-file-recursively "nss/lib/zlib") + (delete-file-recursively "nss/lib/sqlite"))))) + (arguments + (substitute-keyword-arguments (package-arguments nss) + ((#:phases phases) + #~(modify-phases #$phases + (replace 'check + (lambda* (#:key tests? #:allow-other-keys) + (if tests? + (begin + ;; Use 127.0.0.1 instead of $HOST.$DOMSUF as HOSTADDR for + ;; testing. The latter requires a working DNS or /etc/hosts. + (setenv "DOMSUF" "localdomain") + (setenv "USE_IP" "TRUE") + (setenv "IP_ADDRESS" "127.0.0.1") + + ;; The "PayPalEE.cert" certificate expires every six months, + ;; leading to test failures: + ;; . To + ;; work around that, set the time to roughly the release date. + (invoke "faketime" "2024-01-23" "./nss/tests/all.sh")) + (format #t "test suite not run~%")))))))))) -- cgit v1.2.3 From 0920693381d9f6b7923e69fe00be5de8621ddb6f Mon Sep 17 00:00:00 2001 From: Ian Eure Date: Sat, 6 Apr 2024 08:04:17 -0700 Subject: gnu: Add nss-certs-3.98. * gnu/packages/certs.scm (nss-certs-3.98): New variable. Change-Id: I95b54781c7b85f1d6b54158c6b906116791e009c Signed-off-by: Andrew Tropin --- gnu/packages/certs.scm | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/gnu/packages/certs.scm b/gnu/packages/certs.scm index 58b4d50ec8..7078c7c8d1 100644 --- a/gnu/packages/certs.scm +++ b/gnu/packages/certs.scm @@ -188,6 +188,22 @@ (define-public nss-certs (home-page "https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS") (license license:mpl2.0))) +(define-public nss-certs-3.98 + (package + (inherit nss-certs) + (version "3.98") + (source (origin + (method url-fetch) + (uri (let ((version-with-underscores + (string-join (string-split version #\.) "_"))) + (string-append + "https://ftp.mozilla.org/pub/mozilla.org/security/nss/" + "releases/NSS_" version-with-underscores "_RTM/src/" + "nss-" version ".tar.gz"))) + (sha256 + (base32 + "1kh98amfklrq6915n4mlbrcqghc3srm7rkzs9dkh21jwscrwqjgm")))))) + (define-public le-certs (package (name "le-certs") -- cgit v1.2.3 From 3dc26b4eaed448cbc02a80bafb2ebb6d908f2b4e Mon Sep 17 00:00:00 2001 From: Ian Eure Date: Sat, 6 Apr 2024 08:04:18 -0700 Subject: gnu: Add librewolf. * gnu/packages/librewolf.scm (librewolf): New variable. * gnu/local.mk (dist_patch_DATA): Add it. Change-Id: I98b6410582b856ede83b79637a58e66d6e5832e6 Signed-off-by: Andrew Tropin --- gnu/local.mk | 1 + gnu/packages/librewolf.scm | 621 +++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 622 insertions(+) create mode 100644 gnu/packages/librewolf.scm diff --git a/gnu/local.mk b/gnu/local.mk index 1169604891..e08b0d1c75 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -414,6 +414,7 @@ GNU_SYSTEM_MODULES = \ %D%/packages/libidn.scm \ %D%/packages/libphidget.scm \ %D%/packages/libreoffice.scm \ + %D%/packages/librewolf.scm \ %D%/packages/libsigsegv.scm \ %D%/packages/libunistring.scm \ %D%/packages/libusb.scm \ diff --git a/gnu/packages/librewolf.scm b/gnu/packages/librewolf.scm new file mode 100644 index 0000000000..87b76c661f --- /dev/null +++ b/gnu/packages/librewolf.scm @@ -0,0 +1,621 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2013, 2015, 2024 Andreas Enge +;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2018, 2019 Ludovic Courtès +;;; Copyright © 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021 Mark H Weaver +;;; Copyright © 2015 Sou Bunnbu +;;; Copyright © 2016, 2017, 2018, 2019 Efraim Flashner +;;; Copyright © 2016 Alex Griffin +;;; Copyright © 2017 Clément Lassieur +;;; Copyright © 2017, 2018 Nikita +;;; Copyright © 2017, 2018 ng0 +;;; Copyright © 2017, 2018, 2020 Tobias Geerinckx-Rice +;;; Copyright © 2018, 2020, 2022 Ricardo Wurmus +;;; Copyright © 2019 Ivan Petkov +;;; Copyright © 2020 Oleg Pykhalov +;;; Copyright © 2020 Jakub Kądziołka +;;; Copyright © 2019, 2020 Adrian Malacoda +;;; Copyright © 2020-2023 Jonathan Brielmaier +;;; Copyright © 2020 Zhu Zihao +;;; Copyright © 2021 pineapples +;;; Copyright © 2021 Brice Waegeneire +;;; Copyright © 2021, 2022, 2023 John Kehayias +;;; Copyright © 2022 Pierre Langlois +;;; Copyright © 2023 Tomas Volf +;;; Copyright © 2023 Ian Eure +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see . + + +(define-module (gnu packages librewolf) + #:use-module (guix build-system gnu) + #:use-module (guix build-system cargo) + #:use-module (guix build-system trivial) + #:use-module (guix download) + #:use-module ((guix licenses) #:prefix license:) + #:use-module (guix gexp) + #:use-module (guix packages) + #:use-module (guix utils) + #:use-module ((guix build utils) #:select (alist-replace)) + + #:use-module (gnu packages) + #:use-module (gnu packages assembly) + #:use-module (gnu packages autotools) + #:use-module (gnu packages base) + #:use-module (gnu packages bash) + #:use-module (gnu packages compression) + #:use-module (gnu packages crates-io) + #:use-module (gnu packages cups) + #:use-module (gnu packages fontutils) + #:use-module (gnu packages gl) + #:use-module (gnu packages glib) + #:use-module (gnu packages gnome) + #:use-module (gnu packages gtk) + #:use-module (gnu packages hunspell) + #:use-module (gnu packages icu4c) + #:use-module (gnu packages image) + #:use-module (gnu packages jemalloc) + #:use-module (gnu packages kerberos) + #:use-module (gnu packages libcanberra) + #:use-module (gnu packages libevent) + #:use-module (gnu packages libffi) + #:use-module (gnu packages linux) + #:use-module (gnu packages llvm) + #:use-module (gnu packages m4) + #:use-module (gnu packages node) + #:use-module (gnu packages nss) + #:use-module (gnu packages pciutils) + #:use-module (gnu packages perl) + #:use-module (gnu packages pkg-config) + #:use-module (gnu packages pulseaudio) + #:use-module (gnu packages python) + #:use-module (gnu packages rust) + #:use-module (gnu packages rust-apps) + #:use-module (gnu packages speech) + #:use-module (gnu packages sqlite) + #:use-module (gnu packages video) + #:use-module (gnu packages xdisorg) + #:use-module (gnu packages xorg)) + +;; Define the versions of rust needed to build librewolf, trying to match +;; upstream. See the file taskcluster/ci/toolchain/rust.yml at +;; https://searchfox.org under the particular firefox release, like +;; mozilla-esr102. +(define rust-librewolf rust) ; 1.60 is the default in Guix, 1.65 is the minimum. + +;; Update this id with every update to its release date. +;; It's used for cache validation and therefore can lead to strange bugs. +;; ex: date '+%Y%m%d%H%M%S' +(define %librewolf-build-id "20240326080003") + +(define-public librewolf + (package + (name "librewolf") + (version "124.0.1-1") + (source + (origin + (method url-fetch) + + (uri (string-append "https://gitlab.com/api/v4/projects/32320088/" + "packages/generic/librewolf-source/" + version + "/librewolf-" + version + ".source.tar.gz")) + (sha256 + (base32 "1sks49nywzhvq5mik4ipm3vyyxv49s9hq6bfyk5d9r6f0nlydllf")))) + (build-system gnu-build-system) + (arguments + (list + #:configure-flags #~(let ((clang #$(this-package-native-input "clang"))) + `("--enable-application=browser" + + ;; Configuration + "--without-wasm-sandboxed-libraries" + "--with-system-jpeg" + "--with-system-zlib" + "--with-system-png" + "--with-system-webp" + "--with-system-icu" + "--with-system-libvpx" + "--with-system-libevent" + "--with-system-ffi" + "--enable-system-pixman" + "--enable-jemalloc" + + ;; see https://bugs.gnu.org/32833 + "--with-system-nspr" + "--with-system-nss" + + ,(string-append "--with-clang-path=" clang + "/bin/clang") + ,(string-append "--with-libclang-path=" clang + "/lib") + + ;; Distribution + "--with-distribution-id=org.guix" + "--with-app-name=librewolf" + "--with-app-basename=LibreWolf" + "--with-branding=browser/branding/librewolf" + + ;; Features + "--disable-tests" + "--disable-updater" + "--enable-pulseaudio" + "--disable-crashreporter" + "--allow-addon-sideload" + "--with-unsigned-addon-scopes=app,system" + "--disable-eme" + + ;; Build details + "--disable-debug" + "--enable-rust-simd" + "--enable-release" + "--enable-optimize" + "--enable-strip" + "--enable-hardening" + "--disable-elf-hack")) + #:imported-modules %cargo-utils-modules + #:modules `((ice-9 regex) + (ice-9 string-fun) + (ice-9 ftw) + (srfi srfi-1) + (srfi srfi-26) + (rnrs bytevectors) + (rnrs io ports) + (guix elf) + (guix build gremlin) + ,@%gnu-build-system-modules) + #:phases #~(modify-phases %standard-phases + (add-after 'unpack 'fix-preferences + (lambda* (#:key inputs #:allow-other-keys) + (let ((port (open-file "browser/app/profile/firefox.js" + "a"))) + (define (write-setting key value) + (format port "~%pref(\"~a\", ~a);~%" key value) + (format #t + "fix-preferences: setting value of ~a to ~a~%" key + value)) + + ;; We should allow the sandbox to read the store directory, + ;; because the sandbox has access to /usr on FHS distros. + (write-setting + "security.sandbox.content.read_path_whitelist" + (string-append "\"" + (%store-directory) "/\"")) + + ;; XDG settings should be managed by Guix. + (write-setting "browser.shell.checkDefaultBrowser" + "false") + (close-port port)))) + (add-after 'fix-preferences 'fix-ffmpeg-runtime-linker + (lambda* (#:key inputs #:allow-other-keys) + (let* ((ffmpeg (assoc-ref inputs "ffmpeg")) + (libavcodec (string-append ffmpeg + "/lib/libavcodec.so"))) + ;; Arrange to load libavcodec.so by its absolute file name. + (substitute* "dom/media/platforms/ffmpeg/FFmpegRuntimeLinker.cpp" + (("libavcodec\\.so") + libavcodec))))) + (add-after 'patch-source-shebangs 'patch-cargo-checksums + (lambda _ + (use-modules (guix build cargo-utils)) + (let ((null-hash + ;; This is the SHA256 output of an empty string. + (string-append + "e3b0c44298fc1c149afbf4c8996fb924" + "27ae41e4649b934ca495991b7852b855"))) + (for-each (lambda (file) + (format #t + "patch-cargo-checksums: patching checksums in ~a~%" + file) + (substitute* file + (("(checksum = )\".*\"" all name) + (string-append name "\"" null-hash + "\"")))) + (find-files "." "Cargo\\.lock$")) + (for-each generate-all-checksums + '("build" "dom/media" + "dom/webauthn" + "gfx" + "intl" + "js" + "media" + "modules" + "mozglue/static/rust" + "netwerk" + "remote" + "security/manager/ssl" + "servo" + "storage" + "third_party/rust" + "toolkit" + "xpcom/rust" + "services"))))) + (add-after 'patch-cargo-checksums 'remove-cargo-frozen-flag + (lambda _ + ;; Remove --frozen flag from cargo invokation, otherwise it'll + ;; complain that it's not able to change Cargo.lock. + ;; https://bugzilla.mozilla.org/show_bug.cgi?id=1726373 + (substitute* "build/RunCbindgen.py" + (("args.append\\(\"--frozen\"\\)") "pass")))) + (delete 'bootstrap) + (add-before 'configure 'patch-SpeechDispatcherService.cpp + (lambda _ + (let* ((lib "libspeechd.so.2") + (file (string-append + "dom/media/webspeech/synth/" + "speechd/SpeechDispatcherService.cpp")) + (old-content (call-with-input-file file + get-string-all))) + (substitute + file + `((,(format #f "~s" lib) unquote + (lambda (line _) + (string-replace-substring + line lib + (string-append #$speech-dispatcher + "/lib/" lib)))))) + (if (string=? old-content + (call-with-input-file file + get-string-all)) + (error + "substitute did nothing, phase requires an update"))))) + (add-before 'configure 'set-build-id + ;; Build will write the timestamp to output, which is harmful + ;; for reproducibility, so change it to a fixed date. Use a + ;; separate phase for easier modification with inherit. + (lambda _ + (setenv "MOZ_BUILD_DATE" + #$%librewolf-build-id))) + (replace 'configure + (lambda* (#:key inputs outputs configure-flags + #:allow-other-keys) + (setenv "AUTOCONF" + (string-append (assoc-ref inputs "autoconf") + "/bin/autoconf")) + (setenv "SHELL" + (which "bash")) + (setenv "CONFIG_SHELL" + (which "bash")) + (setenv "MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE" + "system") + ;; This should use the host info probably (does it + ;; build on non-x86_64 though?) + (setenv "GUIX_PYTHONPATH" + (string-append (getcwd) + "/obj-x86_64-pc-linux-gnu/_virtualenvs/build")) + + ;; Use Clang, Clang is 2x faster than GCC + (setenv "AR" "llvm-ar") + (setenv "NM" "llvm-nm") + (setenv "CC" "clang") + (setenv "CXX" "clang++") + (setenv "MOZ_NOSPAM" "1") + (setenv "MOZ_APP_NAME" "librewolf") + + (setenv "MOZBUILD_STATE_PATH" + (getcwd)) + + (let* ((mozconfig (string-append (getcwd) "/mozconfig")) + (out (assoc-ref outputs "out")) + (flags (cons (string-append "--prefix=" out) + configure-flags))) + (format #t "build directory: ~s~%" + (getcwd)) + (format #t "configure flags: ~s~%" flags) + + (define write-flags + (lambda flags + (display (string-join (map (cut string-append + "ac_add_options " <>) + flags) "\n")) + (display "\n"))) + (with-output-to-file mozconfig + (lambda () + (apply write-flags flags) + ;; The following option unsets Telemetry + ;; Reporting. With the Addons Fiasco, + ;; Mozilla was found to be collecting + ;; user's data, including saved passwords + ;; and web form data, without users + ;; consent. Mozilla was also found + ;; shipping updates to systems without + ;; the user's knowledge or permission. + ;; As a result of this, use the following + ;; command to permanently disable + ;; telemetry reporting. + (display "unset MOZ_TELEMETRY_REPORTING\n") + (display "mk_add_options MOZ_CRASHREPORTER=0\n") + (display "mk_add_options MOZ_DATA_REPORTING=0\n") + (display + "mk_add_options MOZ_SERVICES_HEALTHREPORT=0") + (display + "mk_add_options MOZ_TELEMETRY_REPORTING=0"))) + (setenv "MOZCONFIG" mozconfig)) + (invoke "./mach" "configure"))) + (add-before 'build 'fix-addons-placeholder + (lambda _ + (substitute* "toolkit/locales/en-US/toolkit/about/aboutAddons.ftl" + (("addons.mozilla.org") + "gnuzilla.gnu.org")))) + (replace 'build + (lambda* (#:key (make-flags '()) + (parallel-build? #t) #:allow-other-keys) + (apply invoke "./mach" "build" + ;; mach will use parallel build if possible by default + `(,@(if parallel-build? + '() + '("-j1")) ,@make-flags)))) + (add-after 'build 'neutralise-store-references + (lambda _ + ;; Mangle the store references to compilers & + ;; other build tools in about:buildconfig, + ;; reducing the package's closure by 1 GiB on + ;; x86-64. + (let* ((build-dir (car (scandir "." + (cut string-prefix? + "obj-" <>)))) + (file (string-append build-dir + "/dist/bin/chrome/toolkit/" + "content/global/buildconfig.html"))) + (substitute* file + (((format #f "(~a/)([0-9a-df-np-sv-z]{32})" + (regexp-quote (%store-directory))) + _ store hash) + (string-append store + (string-take hash 8) + "" + (string-drop hash 8))))))) + (replace 'install + (lambda _ + (invoke "./mach" "install"))) + (add-after 'install 'remove-duplicate-bin + (lambda* (#:key outputs #:allow-other-keys) + (delete-file (string-append #$output + "/lib/librewolf/librewolf-bin")))) + (add-after 'install 'wrap-glxtest + ;; glxtest uses dlopen() to load mesa and pci + ;; libs, wrap it to set LD_LIBRARY_PATH. + (lambda* (#:key inputs outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (lib (string-append out "/lib")) + (libs (map + (lambda (lib-name) + (string-append (assoc-ref inputs + lib-name) + "/lib")) + '("mesa" "pciutils")))) + (wrap-program (car (find-files lib "^glxtest$")) + `("LD_LIBRARY_PATH" prefix ,libs))))) + (add-after 'install 'patch-config + (lambda* (#:key inputs #:allow-other-keys) + (let ((lib (string-append #$output "/lib/librewolf")) + (config-file "librewolf.cfg")) + + ;; Required for Guix packaged extensions + ;; SCOPE_PROFILE=1, SCOPE_APPLICATION=4, SCOPE_SYSTEM=8 + ;; Default is 5. + (substitute* (in-vicinity lib config-file) + (("defaultPref\\(\"extensions.enabledScopes\", 5\\)") + "defaultPref(\"extensions.enabledScopes\", 13)")) + ;; Use Mozzarella addons repo. + (call-with-port + (open-file + (in-vicinity lib config-file) + "a") + (lambda (port) + ;; Add-ons panel (see settings.js in Icecat source). + (for-each + (lambda (pref) + (format port + "defaultPref(~s, ~s);~%" + (car pref) + (cdr pref))) + `(("extensions.getAddons.search.browseURL" + ,(string-append + "https://gnuzilla.gnu.org/mozzarella/" + "search.php?q=%TERMS%")) + ("extensions.getAddons.get.url" . + "https://gnuzilla.gnu.org/mozzarella") + ("extensions.getAddons.link.url" . + "https://gnuzilla.gnu.org/mozzarella") + ("extensions.getAddons.discovery.api_url" . + "https://gnuzilla.gnu.org/mozzarella") + ("extensions.getAddons.langpacks.url" . + "https://gnuzilla.gnu.org/mozzarella") + ("lightweightThemes.getMoreURL" . + "https://gnuzilla.gnu.org/mozzarella")))))))) + (add-after 'install 'wrap-program + (lambda* (#:key inputs outputs #:allow-other-keys) + ;; The following two functions are from Guix's icecat package in + ;; (gnu packages gnuzilla). See commit + ;; b7a0935420ee630a29b7e5ac73a32ba1eb24f00b. + (define (runpath-of lib) + (call-with-input-file lib + (compose elf-dynamic-info-runpath elf-dynamic-info + parse-elf get-bytevector-all))) + (define (runpaths-of-input label) + (let* ((dir (string-append (assoc-ref inputs label) + "/lib")) + (libs (find-files dir "\\.so$"))) + (append-map runpath-of libs))) + (let* ((out (assoc-ref outputs "out")) + (lib (string-append out "/lib")) + (libs (map + (lambda (lib-name) + (string-append (assoc-ref inputs + lib-name) + "/lib")) + '("mesa" "libpng-apng" "libnotify" "libva" + "pulseaudio" "gtk+" "pipewire" + ;; For U2F and WebAuthn + "eudev"))) + + ;; VA-API is run in the RDD (Remote Data Decoder) sandbox + ;; and must be explicitly given access to files it needs. + ;; Rather than adding the whole store (as Nix had + ;; upstream do, see + ;; and + ;; linked upstream patches), we can just follow the + ;; runpaths of the needed libraries to add everything to + ;; LD_LIBRARY_PATH. These will then be accessible in the + ;; RDD sandbox. + (rdd-whitelist (map (cut string-append <> "/") + (delete-duplicates (append-map + runpaths-of-input + '("mesa" + "ffmpeg"))))) + (gtk-share (string-append (assoc-ref inputs + "gtk+") + "/share"))) + (wrap-program (car (find-files lib "^librewolf$")) + `("LD_LIBRARY_PATH" prefix + (,@libs ,@rdd-whitelist)) + `("XDG_DATA_DIRS" prefix + (,gtk-share)) + `("MOZ_LEGACY_PROFILES" = + ("1")) + `("MOZ_ALLOW_DOWNGRADE" = + ("1")))))) + (add-after 'wrap-program 'install-desktop-entry + (lambda* (#:key outputs #:allow-other-keys) + (let* ((desktop-file + "taskcluster/docker/firefox-snap/firefox.desktop") + (applications (string-append #$output + "/share/applications"))) + (substitute* desktop-file + (("^Exec=firefox") + (string-append "Exec=" + #$output "/bin/librewolf")) + ;; "Firefox" -> "LibreWolf" everywhere + (("Firefox") + "LibreWolf") + ;; Remove non-Latin translations. + (("^Name\\[(ar|bn)\\].*$") + "") + (("^Icon=.*") + (string-append "Icon=" + #$output + "/share/icons/hicolor/128x128/apps/librewolf.png +")) + ;; These commands were changed. + (("-NewWindow") + "-new-window") + (("-NewPrivateWindow") + "-new-private-window") + (("StartupNotify=true") + "StartupNotify=true +StartupWMClass=Navigator")) + (copy-file desktop-file "librewolf.desktop") + (install-file "librewolf.desktop" applications)))) + (add-after 'install-desktop-entry 'install-icons + (lambda* (#:key outputs #:allow-other-keys) + (let ((icon-source-dir (string-append #$output + "/lib/librewolf/browser/" + "chrome/icons/default"))) + (for-each (lambda (size) + (let ((dest (string-append #$output + "/share/icons/hicolor/" + size + "x" + size + "/apps"))) + (mkdir-p dest) + (symlink (string-append icon-source-dir + "/default" size ".png") + (string-append dest + "/librewolf.png")))) + '("16" "32" "48" "64" "128")))))) + + ;; Test will significantly increase build time but with little rewards. + #:tests? #f + + ;; WARNING: Parallel build will consume lots of memory! + ;; If you have encountered OOM issue in build phase, try disable it. + #:parallel-build? #t + + ;; Some dynamic lib was determined at runtime, so rpath check may fail. + #:validate-runpath? #f)) + (inputs (list bash-minimal + bzip2 + cairo + cups + dbus-glib + freetype + ffmpeg + gdk-pixbuf + glib + gtk+ + gtk+-2 + hunspell + icu4c-73 + jemalloc + libcanberra + libevent + libffi + libgnome + libjpeg-turbo + libnotify + libpng-apng + libva + libvpx + libwebp + libxcomposite + libxft + libxinerama + libxscrnsaver + libxt + mesa + mit-krb5 + nspr + nss-3.98 + pango + pciutils + pipewire + pixman + pulseaudio + speech-dispatcher + sqlite + startup-notification + eudev + unzip + zip + zlib)) + (native-inputs (list alsa-lib + autoconf-2.13 + `(,rust-librewolf "cargo") + clang + llvm + m4 + nasm + node-lts + perl + pkg-config + python + rust-librewolf + rust-cbindgen-0.26 + which + yasm)) + (home-page "https://librewolf.net/") + (synopsis + "Custom version of Firefox, focused on privacy, security and freedom") + (description + "LibreWolf is designed to increase protection against tracking and +fingerprinting techniques, while also including a few security improvements. +This is achieved through our privacy and security oriented settings and +patches. LibreWolf also aims to remove all the telemetry, data collection and +annoyances, as well as disabling anti-freedom features like DRM.") + (license license:mpl2.0))) -- cgit v1.2.3 From cd557e2d1c83839dd587016279900d31f053efc8 Mon Sep 17 00:00:00 2001 From: Matthew Trzcinski Date: Wed, 10 Apr 2024 15:44:36 +0200 Subject: doc: Fix grammar and markup. doc/guix.texi (Setting Up the Daemon): Remove comma and extra words. doc/guix.texi (Mail Services): Add definite article to setting. Use @samp markup on setting. Signed-off-by: Florian Pelz Change-Id: I5b3ef115ec718454db4fc046ea5f77ba9fe50a37 --- doc/guix.texi | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/doc/guix.texi b/doc/guix.texi index 5827e0de14..5efbd00984 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -848,8 +848,8 @@ goes through the daemon. For instance, command-line tools such as daemon (@i{via} remote procedure calls) to instruct it what to do. The following sections explain how to prepare the build daemon's -environment. See also @ref{Substitutes}, for information on how to allow -the daemon to download pre-built binaries. +environment. See @ref{Substitutes} for how to allow the daemon to +download pre-built binaries. @menu * Build Environment Setup:: Preparing the isolated build environment. @@ -26641,7 +26641,7 @@ Disable LOGIN command and all other plaintext authentications unless SSL/TLS is used (LOGINDISABLED capability). Note that if the remote IP matches the local IP (i.e.@: you're connecting from the same computer), the connection is considered secure and plaintext authentication is -allowed. See also ssl=required setting. +allowed. See also the @samp{ssl=required} setting. Defaults to @samp{#t}. @end deftypevr @@ -26781,7 +26781,7 @@ Defaults to @samp{#f}. List of wanted authentication mechanisms. Supported mechanisms are: @samp{plain}, @samp{login}, @samp{digest-md5}, @samp{cram-md5}, @samp{ntlm}, @samp{rpa}, @samp{apop}, @samp{anonymous}, @samp{gssapi}, -@samp{otp}, @samp{skey}, and @samp{gss-spnego}. NOTE: See also +@samp{otp}, @samp{skey}, and @samp{gss-spnego}. See also the @samp{disable-plaintext-auth} setting. @end deftypevr -- cgit v1.2.3 From d4032419ddc4caca20f9ff58cb44994f0d5cba8f Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Tue, 9 Apr 2024 21:34:43 +0100 Subject: gnu: go-github-com-gobwas-glob: Move to golang-xyz. * gnu/packages/syncthing.scm (go-github-com-gobwas-glob): Move from here ... * gnu/packages/golang-xyz.scm: ... to here. * gnu/packages/textutils.scm: Remove (gnu packages syncthing) module. Change-Id: I131830e6edcdb666aeb3cd9bbdf6982df938ccd4 --- gnu/packages/golang-xyz.scm | 24 ++++++++++++++++++++++++ gnu/packages/syncthing.scm | 22 ---------------------- gnu/packages/textutils.scm | 1 - 3 files changed, 24 insertions(+), 23 deletions(-) diff --git a/gnu/packages/golang-xyz.scm b/gnu/packages/golang-xyz.scm index 9968bc9516..71303be53d 100644 --- a/gnu/packages/golang-xyz.scm +++ b/gnu/packages/golang-xyz.scm @@ -1202,6 +1202,30 @@ (define-public go-github-com-go-logr-logr while callers can implement logging with whatever backend is appropriate.") (license license:asl2.0))) +(define-public go-github-com-gobwas-glob + (package + (name "go-github-com-gobwas-glob") + (version "0.2.3") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/gobwas/glob") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0jxk1x806zn5x86342s72dq2qy64ksb3zrvrlgir2avjhwb18n6z")))) + (build-system go-build-system) + (arguments + (list + #:import-path "github.com/gobwas/glob")) + (home-page "https://github.com/gobwas/glob") + (synopsis "Go globbing library") + (description + "This package provides a Go implementation of globs.") + (license license:expat))) + (define-public go-github-com-hashicorp-errwrap (package (name "go-github-com-hashicorp-errwrap") diff --git a/gnu/packages/syncthing.scm b/gnu/packages/syncthing.scm index 4d2f7ef9f0..3f8cb808ce 100644 --- a/gnu/packages/syncthing.scm +++ b/gnu/packages/syncthing.scm @@ -353,28 +353,6 @@ (define-public go-github-com-d4l3k-messagediff (home-page "https://github.com/d4l3k/messagediff") (license expat))) -(define-public go-github-com-gobwas-glob - (package - (name "go-github-com-gobwas-glob") - (version "0.2.3") - (source (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/gobwas/glob") - (commit (string-append "v" version)))) - (file-name (git-file-name name version)) - (sha256 - (base32 - "0jxk1x806zn5x86342s72dq2qy64ksb3zrvrlgir2avjhwb18n6z")))) - (build-system go-build-system) - (arguments - `(#:import-path "github.com/gobwas/glob")) - (synopsis "Go globbing library") - (description "This package provides a Go implementation of globs.") - (home-page "https://github.com/gobwas/glob") - (license expat))) - - (define-public go-github-com-golang-groupcache-lru (let ((commit "869f871628b6baa9cfbc11732cdf6546b17c1298") (revision "2")) diff --git a/gnu/packages/textutils.scm b/gnu/packages/textutils.scm index 38452339c0..9d3b93faf9 100644 --- a/gnu/packages/textutils.scm +++ b/gnu/packages/textutils.scm @@ -85,7 +85,6 @@ (define-module (gnu packages textutils) #:use-module (gnu packages readline) #:use-module (gnu packages ruby) #:use-module (gnu packages slang) - #:use-module (gnu packages syncthing) #:use-module (gnu packages web) #:use-module (gnu packages xorg)) -- cgit v1.2.3 From b8558c740e202399b4184dba4c8e2c149820b753 Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Tue, 9 Apr 2024 22:07:35 +0100 Subject: gnu: go-github-com-fatih-color: Move to golang-xyz. * gnu/packages/golang.scm (go-github-com-fatih-color): Move from here ... * gnu/packages/golang-xyz.scm: ... to here. * gnu/packages/bioinformatics.scm: Add (gnu packages golang-xyz) module. Change-Id: I302327d3426100d7984e6086726396e9fe7f7468 --- gnu/packages/bioinformatics.scm | 1 + gnu/packages/golang-xyz.scm | 28 ++++++++++++++++++++++++++++ gnu/packages/golang.scm | 25 ------------------------- 3 files changed, 29 insertions(+), 25 deletions(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 452ec1d829..448ea5d6de 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -96,6 +96,7 @@ (define-module (gnu packages bioinformatics) #:use-module (gnu packages golang-build) #:use-module (gnu packages golang-check) #:use-module (gnu packages golang-compression) + #:use-module (gnu packages golang-xyz) #:use-module (gnu packages glib) #:use-module (gnu packages graph) #:use-module (gnu packages graphics) diff --git a/gnu/packages/golang-xyz.scm b/gnu/packages/golang-xyz.scm index 71303be53d..68195014eb 100644 --- a/gnu/packages/golang-xyz.scm +++ b/gnu/packages/golang-xyz.scm @@ -8,6 +8,7 @@ ;;; Copyright © 2019-2021 Martin Becze ;;; Copyright © 2019-2022 Efraim Flashner ;;; Copyright © 2020 Alex Griffin +;;; Copyright © 2020 Danny Milosavljevic ;;; Copyright © 2020 Joseph LaFreniere ;;; Copyright © 2020 Oleg Pykhalov ;;; Copyright © 2020, 2021 raingloom @@ -1115,6 +1116,33 @@ (define-public go-github-com-facette-natsort Alphanum Algorithm} developed by Dave Koelle in Go.") (license license:bsd-3))) +(define-public go-github-com-fatih-color + (package + (name "go-github-com-fatih-color") + (version "1.16.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/fatih/color") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "15689x103gy9q7g7623rlvhwrw27p079ardapmrrag0sdwrx5bq2")))) + (build-system go-build-system) + (arguments + (list + #:import-path "github.com/fatih/color")) + (propagated-inputs + (list go-github-com-mattn-go-colorable + go-github-com-mattn-go-isatty)) + (home-page "https://pkg.go.dev/github.com/fatih/color") + (synopsis "Print colored text in Go") + (description + "This package provides an ANSI color package to output colorized or SGR +defined output to the standard output.") + (license license:expat))) + (define-public go-github-com-gabriel-vasile-mimetype (package (name "go-github-com-gabriel-vasile-mimetype") diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm index fb558c1b9c..d5b8a67b97 100644 --- a/gnu/packages/golang.scm +++ b/gnu/packages/golang.scm @@ -6140,31 +6140,6 @@ (define-public go-github-com-emersion-go-mbox @code{mbox} files.") (license license:expat))) -(define-public go-github-com-fatih-color - (package - (name "go-github-com-fatih-color") - (version "1.16.0") - (source (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/fatih/color") - (commit (string-append "v" version)))) - (file-name (git-file-name name version)) - (sha256 - (base32 - "15689x103gy9q7g7623rlvhwrw27p079ardapmrrag0sdwrx5bq2")))) - (build-system go-build-system) - (arguments - '(#:import-path "github.com/fatih/color")) - (propagated-inputs - (list go-github-com-mattn-go-colorable - go-github-com-mattn-go-isatty)) - (synopsis "Print colored text in Go") - (description "This package provides an ANSI color package to output -colorized or SGR defined output to the standard output.") - (home-page "https://pkg.go.dev/github.com/fatih/color") - (license license:expat))) - (define-public go-github-com-google-go-cmp-cmp (package (name "go-github-com-google-go-cmp-cmp") -- cgit v1.2.3 From 06a67644dcd415603199c83f31bedfbaad5858ad Mon Sep 17 00:00:00 2001 From: Herman Rimm Date: Fri, 5 Apr 2024 21:35:44 +0200 Subject: gnu: Add go-github-com-openprinting-goipp. * gnu/packages/golang-xyz.scm (go-github-com-openprinting-goipp): Add variable. Signed-off-by: Sharlatan Hellseher --- gnu/packages/golang-xyz.scm | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/gnu/packages/golang-xyz.scm b/gnu/packages/golang-xyz.scm index 68195014eb..5263d08d73 100644 --- a/gnu/packages/golang-xyz.scm +++ b/gnu/packages/golang-xyz.scm @@ -33,6 +33,7 @@ ;;; Copyright © 2023 Wilko Meyer ;;; Copyright © 2024 Artyom V. Poptsov ;;; Copyright © 2024 Troy Figiel +;;; Copyright © 2024 Herman Rimm ;;; ;;; This file is part of GNU Guix. ;;; @@ -2559,6 +2560,30 @@ (define-public go-github-com-op-go-logging levels per backend and logger.") (license license:bsd-3))) +(define-public go-github-com-openprinting-goipp + (package + (name "go-github-com-openprinting-goipp") + (version "1.1.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/OpenPrinting/goipp") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1p05dk37l393byvjanvi3ipqcax320vf3qynlzazm7czzzlw448h")))) + (build-system go-build-system) + (arguments + (list + #:import-path "github.com/OpenPrinting/goipp")) + (home-page "https://github.com/OpenPrinting/goipp") + (synopsis "IPP core protocol implementation") + (description + "The goipp package implements the IPP core protocol, as defined by +@@url{https://rfc-editor.org/rfc/rfc8010.html,RFC 8010}.") + (license license:bsd-2))) + (define-public go-github-com-orisano-pixelmatch (package (name "go-github-com-orisano-pixelmatch") -- cgit v1.2.3 From 45d2ee1bde272d196daab4a203a28f3b83d11fc1 Mon Sep 17 00:00:00 2001 From: Herman Rimm Date: Fri, 5 Apr 2024 21:35:45 +0200 Subject: gnu: Add ipp-usb. * gnu/packages/printers.scm (ipp-usb): Add variable. Change-Id: I3abc86eb10c9b74ef073e1ead8bd51a91de5670f Signed-off-by: Sharlatan Hellseher --- gnu/packages/printers.scm | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) diff --git a/gnu/packages/printers.scm b/gnu/packages/printers.scm index e7761070e0..d9a84ce0f7 100644 --- a/gnu/packages/printers.scm +++ b/gnu/packages/printers.scm @@ -1,6 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2018 Ludovic Courtès ;;; Copyright © 2018 Tobias Geerinckx-Rice +;;; Copyright © 2024 Herman Rimm ;;; ;;; This file is part of GNU Guix. ;;; @@ -21,14 +22,52 @@ (define-module (gnu packages printers) #:use-module (guix packages) #:use-module (guix git-download) #:use-module (guix build-system gnu) + #:use-module (guix build-system go) #:use-module ((guix licenses) #:prefix license:) + #:use-module (gnu packages avahi) + #:use-module (gnu packages golang-xyz) #:use-module (gnu packages libusb) + #:use-module (gnu packages man) #:use-module (gnu packages pkg-config) #:use-module (gnu packages qt)) ;; This is a module for packages related to printer-like devices, but not ;; related to CUPS. +(define-public ipp-usb + (package + (name "ipp-usb") + (version "0.9.25") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/OpenPrinting/ipp-usb") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 "003njvcxi0w97wrs52nm9b0f1d96624hjnv9ywsr1m7p6q7r08mg")))) + (build-system go-build-system) + (arguments + (list + ;; TODO: The project provides manpages and udev rules, review them and + ;; install in the next update cycle. + #:install-source? #f + #:import-path "github.com/OpenPrinting/ipp-usb")) + (inputs + (list avahi libusb)) + (native-inputs + (list go-github-com-openprinting-goipp + pkg-config + ronn)) + (home-page "https://github.com/OpenPrinting/ipp-usb") + (synopsis "HTTP reverse proxy, backed by the IPP-over-USB connection") + (description + "ipp-usb implements an HTTP reverse proxy, backed by the IPP-over-USB +connection to the device. This is because IPP-over-USB implementations which +simply relay a TCP connection to USB do not work.") + (license license:bsd-2))) + (define-public robocut (package (name "robocut") -- cgit v1.2.3 From d2c92709cddc6cf00f53b1bb8b58409322b31a93 Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Fri, 12 Apr 2024 11:40:12 +0100 Subject: gnu: robocut: Refresh package style. * gnu/packages/printers.scm (robocut): Use G-expressions. [native-inputs]: Remove labels. [inputs]: Likewise. Change-Id: I6c7790ab8ed8dddfedc9d6c0e2a7ee0870eea7ec --- gnu/packages/printers.scm | 27 +++++++++++---------------- 1 file changed, 11 insertions(+), 16 deletions(-) diff --git a/gnu/packages/printers.scm b/gnu/packages/printers.scm index d9a84ce0f7..0069494b4d 100644 --- a/gnu/packages/printers.scm +++ b/gnu/packages/printers.scm @@ -19,6 +19,7 @@ ;;; along with GNU Guix. If not, see . (define-module (gnu packages printers) + #:use-module (guix gexp) #:use-module (guix packages) #:use-module (guix git-download) #:use-module (guix build-system gnu) @@ -83,24 +84,18 @@ (define-public robocut (base32 "0dp9cssyik63yvkk35s51v94a873x751iqg93qzd8dpqkmz5z8gn")))) (build-system gnu-build-system) (arguments - '(#:phases (modify-phases %standard-phases - (replace 'configure - (lambda* (#:key outputs #:allow-other-keys) - (let ((out (assoc-ref outputs "out"))) - (substitute* "Robocut.pro" - (("/usr/") - (string-append out "/"))) - - (invoke "qmake" - (string-append "PREFIX=" out)) - #t)))))) + (list + #:phases + #~(modify-phases %standard-phases + (replace 'configure + (lambda _ + (substitute* "Robocut.pro" + (("/usr/") (string-append #$output "/"))) + (invoke "qmake" (string-append "PREFIX=" #$output))))))) (inputs - `(("libusb" ,libusb) - ("qt" ,qtbase-5) - ("qtsvg-5" ,qtsvg-5))) + (list libusb qtbase-5 qtsvg-5)) (native-inputs - `(("pkg-config" ,pkg-config) - ("qmake" ,qtbase-5))) + (list pkg-config qtbase-5)) (synopsis "Graphical program to drive plotting cutters") (description "Robocut is a simple graphical program that allows you to cut graphics -- cgit v1.2.3 From eef9ae4dbf98dfa1b667a2ccb455d7beae1a3b58 Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Fri, 12 Apr 2024 12:38:51 +0100 Subject: gnu: Add go-github-com-gxed-hashland. * gnu/packages/golang-crypto.scm (go-github-com-gxed-hashland): New variable. Change-Id: I260901efb4d8062d5a4ce24672156b70e64814a5 --- gnu/packages/golang-crypto.scm | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) diff --git a/gnu/packages/golang-crypto.scm b/gnu/packages/golang-crypto.scm index 3b95965f6b..4f90ab4242 100644 --- a/gnu/packages/golang-crypto.scm +++ b/gnu/packages/golang-crypto.scm @@ -497,6 +497,39 @@ (define-public go-github-com-golang-jwt-jwt-v5 #:go go-1.18 #:import-path "github.com/golang-jwt/jwt/v5")))) +;; It's not public for purpose, as it contains a lot of golang modules which +;; may be inherited from the single source, but the package itself does not +;; have to be installed directly or linked to other packages.. +(define go-github-com-gxed-hashland + (package + (name "go-github-com-gxed-hashland") + (version "0.0.1") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/gxed/hashland") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1b921dh9i6zw7y8jfzwvrmdbhnwid12a5z1zjawslfq2vvsajwmm")))) + (build-system go-build-system) + ;; Source-only package. + (arguments + (list + #:tests? #f + #:import-path "github.com/gxed/hashland" + #:phases + #~(modify-phases %standard-phases (delete 'build)))) + (home-page "https://github.com/gxed/hashland") + (synopsis "Collection of hash functions") + (description + "This package provides a source of Hashland - a collection of hash +functions and functionality to test them. It aggregates various Golang +libraries.") + (license license:expat))) + +;; TODO: Inherit from the go-github-com-gxed-hashland (define-public go-github-com-gxed-hashland-keccakpg (let ((commit "d9f6b97f8db22dd1e090fd0bbbe98f09cc7dd0a8") (revision "0")) -- cgit v1.2.3 From 5eea7f6597774ca4c92ef74f9e1c7fb51f45a35f Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Fri, 12 Apr 2024 12:52:36 +0100 Subject: gnu: Add go-github-com-gxed-hashland-murmur3. * gnu/packages/golang-crypto.scm (go-github-com-gxed-hashland-murmur3): New variable. Change-Id: I9085a373fa298d3359d164768a613a7a56c948db --- gnu/packages/golang-crypto.scm | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/gnu/packages/golang-crypto.scm b/gnu/packages/golang-crypto.scm index 4f90ab4242..24e114166c 100644 --- a/gnu/packages/golang-crypto.scm +++ b/gnu/packages/golang-crypto.scm @@ -555,6 +555,20 @@ (define-public go-github-com-gxed-hashland-keccakpg hash algorithm. See http://keccak.noekeon.org.") (license license:expat)))) +(define-public go-github-com-gxed-hashland-murmur3 + (package + (inherit go-github-com-gxed-hashland) + (name "go-github-com-gxed-hashland-murmur3") + (arguments + (list + #:import-path "github.com/gxed/hashland/murmur3" + #:unpack-path "github.com/gxed/hashland")) + (synopsis "Golang implementation of MurmurHash3 algorithm") + (description + "This package provides a native Go implementation of +@url{https://en.wikipedia.org/wiki/MurmurHash, Austin Appleby's third +MurmurHash} revision (aka MurmurHash3)."))) + (define-public go-github-com-jcmturner-aescts-v2 (package (name "go-github-com-jcmturner-aescts-v2") -- cgit v1.2.3 From b341e906a557d2c583738d454d354a53ac0db578 Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Fri, 12 Apr 2024 13:02:39 +0100 Subject: gnu: go-github-com-multiformats-go-multihash: Update to 0.0.1. * gnu/packages/golang-crypto.scm (go-github-com-multiformats-go-multihash): Update to 0.0.1. [propagated-inputs]: Remove go-github-com-spaolacci-murmur3; add go-github-com-gxed-hashland-murmur3. Change-Id: I95de6ec0b05ce4c25e79fecdae59fd7a8529fe0f --- gnu/packages/golang-crypto.scm | 16 +++++++--------- 1 file changed, 7 insertions(+), 9 deletions(-) diff --git a/gnu/packages/golang-crypto.scm b/gnu/packages/golang-crypto.scm index 24e114166c..b92e4c209a 100644 --- a/gnu/packages/golang-crypto.scm +++ b/gnu/packages/golang-crypto.scm @@ -836,34 +836,32 @@ (define-public go-github-com-minio-sha256-simd (license license:asl2.0))) (define-public go-github-com-multiformats-go-multihash - (let ((commit "97cdb562a04c6ef66d8ed40cd62f8fbcddd396d6") - (revision "0")) (package (name "go-github-com-multiformats-go-multihash") - (version (git-version "1.0.8" revision commit)) + (version "0.0.1") (source (origin (method git-fetch) (uri (git-reference (url "https://github.com/multiformats/go-multihash") - (commit commit))) + (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "02wd9akrwy4y5m0nig9m24p14bjjgb4n1djydrq8cm4yhbvjrrk0")))) + (base32 "1aw4ra22g3l98bk7c3h1n968vi5a3gk528g4byj3xig76r0r731n")))) (build-system go-build-system) (arguments '(#:import-path "github.com/multiformats/go-multihash")) (propagated-inputs - (list go-github-com-mr-tron-base58 - go-github-com-gxed-hashland-keccakpg + (list go-github-com-gxed-hashland-keccakpg + go-github-com-gxed-hashland-murmur3 go-github-com-minio-blake2b-simd go-github-com-minio-sha256-simd - go-github-com-spaolacci-murmur3 + go-github-com-mr-tron-base58 go-golang-org-x-crypto)) (home-page "https://github.com/multiformats/go-multihash") (synopsis "Multihash implementation in Go") (description "Multihash implementation in Go.") - (license license:expat)))) + (license license:expat))) (define-public go-github-com-operatorfoundation-ed25519 (let ((commit "b22b4bd3ddef042eec45f3ee135cd40281fde2b4") -- cgit v1.2.3 From 6e7b2b33875eef7ad825cf0a480acecf92a046e4 Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Fri, 12 Apr 2024 16:57:15 +0100 Subject: gnu: go-github-com-multiformats-go-multihash: Fix indentation. * gnu/packages/golang-crypto.scm (go-github-com-multiformats-go-multihash): Fix indentation. Change-Id: I81f041384d5f9f25c9aad319ce3be079ef49d722 --- gnu/packages/golang-crypto.scm | 53 +++++++++++++++++++++--------------------- 1 file changed, 27 insertions(+), 26 deletions(-) diff --git a/gnu/packages/golang-crypto.scm b/gnu/packages/golang-crypto.scm index b92e4c209a..104b787b0a 100644 --- a/gnu/packages/golang-crypto.scm +++ b/gnu/packages/golang-crypto.scm @@ -836,32 +836,33 @@ (define-public go-github-com-minio-sha256-simd (license license:asl2.0))) (define-public go-github-com-multiformats-go-multihash - (package - (name "go-github-com-multiformats-go-multihash") - (version "0.0.1") - (source - (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/multiformats/go-multihash") - (commit (string-append "v" version)))) - (file-name (git-file-name name version)) - (sha256 - (base32 "1aw4ra22g3l98bk7c3h1n968vi5a3gk528g4byj3xig76r0r731n")))) - (build-system go-build-system) - (arguments - '(#:import-path "github.com/multiformats/go-multihash")) - (propagated-inputs - (list go-github-com-gxed-hashland-keccakpg - go-github-com-gxed-hashland-murmur3 - go-github-com-minio-blake2b-simd - go-github-com-minio-sha256-simd - go-github-com-mr-tron-base58 - go-golang-org-x-crypto)) - (home-page "https://github.com/multiformats/go-multihash") - (synopsis "Multihash implementation in Go") - (description "Multihash implementation in Go.") - (license license:expat))) + (package + (name "go-github-com-multiformats-go-multihash") + (version "0.0.1") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/multiformats/go-multihash") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1aw4ra22g3l98bk7c3h1n968vi5a3gk528g4byj3xig76r0r731n")))) + (build-system go-build-system) + (arguments + (list + #:import-path "github.com/multiformats/go-multihash")) + (propagated-inputs + (list go-github-com-gxed-hashland-keccakpg + go-github-com-gxed-hashland-murmur3 + go-github-com-minio-blake2b-simd + go-github-com-minio-sha256-simd + go-github-com-mr-tron-base58 + go-golang-org-x-crypto)) + (home-page "https://github.com/multiformats/go-multihash") + (synopsis "Multihash implementation in Go") + (description "Multihash implementation in Go.") + (license license:expat))) (define-public go-github-com-operatorfoundation-ed25519 (let ((commit "b22b4bd3ddef042eec45f3ee135cd40281fde2b4") -- cgit v1.2.3 From e74b59109176966a012ad7e1586ad4c829454ecc Mon Sep 17 00:00:00 2001 From: "Artyom V. Poptsov" Date: Sun, 7 Apr 2024 13:01:42 +0300 Subject: gnu: Add specification-multihash. * gnu/packages/specifications.scm (specification-multihash): New variable. Change-Id: I065898164cc126445a92b33dd628ab06e19d0615 Signed-off-by: Sharlatan Hellseher --- gnu/packages/specifications.scm | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/gnu/packages/specifications.scm b/gnu/packages/specifications.scm index ce57a68bdb..b44f0eaaee 100644 --- a/gnu/packages/specifications.scm +++ b/gnu/packages/specifications.scm @@ -51,3 +51,31 @@ (define-public specification-multibase base-encoded (e.g., @code{base32}, @code{base36}, @code{base64}, @code{base58}, etc.) binary appearing in text.") (license (list license:expat license:cc-by-sa3.0))))) + +(define-public specification-multihash + (let ((commit "931febb97565395b1b6cd39ac677799df265a9e7") + (revision "0")) + (package + (name "specification-multihash") + (version (git-version "0.0.0" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/multiformats/multihash") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1axr35z3iz061fng0170bh873vy20rj2mspznycxm1qkrkrh7p5j")))) + (build-system copy-build-system) + (arguments + '(#:install-plan '(("." "share/multihash/")) + #:phases (modify-phases %standard-phases + (delete 'strip)))) + (home-page "https://github.com/multiformats/multihash") + (synopsis "Self-describing hashes") + (description + "Multihash is a protocol for differentiating outputs from various +well-established cryptographic hash functions, addressing size + encoding +considerations.") + (license (list license:expat license:cc-by-sa3.0))))) -- cgit v1.2.3 From 4d7a2c860eb000fe12c93f62a7467b4e5eec58ff Mon Sep 17 00:00:00 2001 From: "Artyom V. Poptsov" Date: Sun, 7 Apr 2024 13:01:43 +0300 Subject: gnu: Add specification-multicodec. * gnu/packages/specifications.scm (specification-multicodec): New variable. Change-Id: I75de43613c5a1818b1db79aa275c58dc52411957 Signed-off-by: Sharlatan Hellseher --- gnu/packages/specifications.scm | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/gnu/packages/specifications.scm b/gnu/packages/specifications.scm index b44f0eaaee..125d794932 100644 --- a/gnu/packages/specifications.scm +++ b/gnu/packages/specifications.scm @@ -52,6 +52,34 @@ (define-public specification-multibase binary appearing in text.") (license (list license:expat license:cc-by-sa3.0))))) +(define-public specification-multicodec + (let ((commit "36789e0856be22fa02f4dc55582ec670b2b4318b") + (revision "0")) + (package + (name "specification-multicodec") + (version (git-version "0.0.0" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/multiformats/multicodec") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0dyawicg8q4f8g6xj5bsj5l3c8rb8mrafjkrabc6a3p65845wp2r")))) + (build-system copy-build-system) + (arguments + '(#:install-plan '(("." "share/multicodec/")) + #:phases (modify-phases %standard-phases + (delete 'strip)))) + (home-page "https://github.com/multiformats/multicodec") + (synopsis "Compact self-describing codecs") + (description + "Multicodec is an agreed-upon codec table. It is designed for use in binary +representations, such as keys or identifiers (i.e @url{https://github.com/ipld/cid, +CID}).") + (license (list license:expat license:cc-by-sa3.0))))) + (define-public specification-multihash (let ((commit "931febb97565395b1b6cd39ac677799df265a9e7") (revision "0")) -- cgit v1.2.3 From 352e649ac2094844b17e96fe15602815062acf58 Mon Sep 17 00:00:00 2001 From: "Artyom V. Poptsov" Date: Sun, 7 Apr 2024 13:01:44 +0300 Subject: gnu: Add go-github-com-multiformats-go-multihash-0.2.3. * gnu/packages/golang-crypto.scm: (go-github-com-multiformats-go-multihash-0.2.3): New variable. Change-Id: I6ac1d5a5f96d01fa40c588e720c4b1c3b99a91a7 Signed-off-by: Sharlatan Hellseher --- gnu/packages/golang-crypto.scm | 49 +++++++++++++++++++++++++++++++++++++++++- 1 file changed, 48 insertions(+), 1 deletion(-) diff --git a/gnu/packages/golang-crypto.scm b/gnu/packages/golang-crypto.scm index 104b787b0a..ca35d5c391 100644 --- a/gnu/packages/golang-crypto.scm +++ b/gnu/packages/golang-crypto.scm @@ -48,7 +48,9 @@ (define-module (gnu packages golang-crypto) #:use-module (gnu packages golang-build) #:use-module (gnu packages golang-check) #:use-module (gnu packages golang-compression) - #:use-module (gnu packages golang-web)) + #:use-module (gnu packages golang-web) + #:use-module (gnu packages golang-xyz) + #:use-module (gnu packages specifications)) ;;; Commentary: ;;; @@ -864,6 +866,51 @@ (define-public go-github-com-multiformats-go-multihash (description "Multihash implementation in Go.") (license license:expat))) +;; XXX: Remove it when all dependent packages are ready to be updated. +(define-public go-github-com-multiformats-go-multihash-0.2.3 + (package + (inherit go-github-com-multiformats-go-multihash) + (name "go-github-com-multiformats-go-multihash") + (version "0.2.3") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/multiformats/go-multihash") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0ydh94083888xl2r4d1grzgqf3c818mkmdpj008jkh6h7m56wc4w")))) + (arguments + (list #:go go-1.21 + #:import-path "github.com/multiformats/go-multihash" + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'copy-multibase-specs + (lambda* (#:key import-path #:allow-other-keys) + (copy-recursively + (string-append #$(this-package-native-input + "specification-multihash") + "/share/multihash/") + (string-append "src/" import-path "/spec/multihash/")) + (copy-recursively + (string-append #$(this-package-native-input + "specification-multicodec") + "/share/multicodec/") + (string-append "src/" import-path "/spec/multicodec/"))))))) + (native-inputs + (list specification-multihash + specification-multicodec)) + (propagated-inputs + (list go-github-com-gxed-hashland-keccakpg + go-github-com-minio-blake2b-simd + go-github-com-minio-sha256-simd + go-github-com-mr-tron-base58 + go-github-com-multiformats-go-varint + go-github-com-spaolacci-murmur3 + go-golang-org-x-crypto + go-lukechampine-com-blake3)))) + (define-public go-github-com-operatorfoundation-ed25519 (let ((commit "b22b4bd3ddef042eec45f3ee135cd40281fde2b4") (revision "0")) -- cgit v1.2.3 From 087d1e16a1bd1148b7842a5857eba90ce7048a8d Mon Sep 17 00:00:00 2001 From: "Artyom V. Poptsov" Date: Sun, 7 Apr 2024 13:01:45 +0300 Subject: gnu: Add go-github-com-ipfs-go-cid. * gnu/packages/ipfs.scm (go-github-com-ipfs-go-cid): New variable. Change-Id: Ib285028ff3f93b4ec00dcc00ab557be4634acfb0 Signed-off-by: Sharlatan Hellseher --- gnu/packages/ipfs.scm | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) diff --git a/gnu/packages/ipfs.scm b/gnu/packages/ipfs.scm index 0a1065535b..33c25d1ff4 100644 --- a/gnu/packages/ipfs.scm +++ b/gnu/packages/ipfs.scm @@ -39,6 +39,42 @@ (define-module (gnu packages ipfs) #:use-module (gnu packages shells) #:use-module (gnu packages syncthing)) +(define-public go-github-com-ipfs-go-cid + (package + (name "go-github-com-ipfs-go-cid") + (version "0.4.1") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/ipfs/go-cid") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0gfd5dg0shj2daraai2kkf8sg24jp5cr6dsv857wp4q1ni612a23")))) + (build-system go-build-system) + (arguments + (list + #:go go-1.21 + #:import-path "github.com/ipfs/go-cid")) + (propagated-inputs (list go-github-com-gxed-hashland-keccakpg + go-github-com-minio-blake2b-simd + go-github-com-minio-sha256-simd + go-github-com-mr-tron-base58 + go-github-com-multiformats-go-base32 + go-github-com-multiformats-go-base36 + go-github-com-multiformats-go-multihash-0.2.3 + go-github-com-multiformats-go-multibase + go-github-com-multiformats-go-varint + go-github-com-spaolacci-murmur3 + go-golang-org-x-crypto)) + (home-page "https://github.com/ipfs/go-cid") + (synopsis "Content ID v1 implemented in Go") + (description + "Implementation in Go of the @url{https://github.com/ipld/cid, CID spec}. It is +used in @code{go-ipfs} and related packages to refer to a typed hunk of data.") + (license license:expat))) + (define-public go-github-com-ipfs-go-ipfs-cmdkit-files (let ((commit "386fcf8f18a185ec121676665fe2d9574496048d") -- cgit v1.2.3 From 584e77abd541ac5e0227639597241f3f28d139b6 Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Fri, 12 Apr 2024 13:43:54 +0100 Subject: gnu: restic-rest-server: Refresh package style. * gnu/packages/backup.scm (restic-rest-server): Use G-expressions. [arguments] <#:phases>: Swap back to standard 'check phase and add 'set-tmpdir phase. [native-inputs]: Swap from propagated-inputs to native-inputs, sort alphabetically. Change-Id: I5010a2dd81b887d8ef10fa27b3ffcb228e08fade --- gnu/packages/backup.scm | 47 +++++++++++++++++++++++------------------------ 1 file changed, 23 insertions(+), 24 deletions(-) diff --git a/gnu/packages/backup.scm b/gnu/packages/backup.scm index 699f4cbc8f..521974f96b 100644 --- a/gnu/packages/backup.scm +++ b/gnu/packages/backup.scm @@ -1076,30 +1076,29 @@ (define-public restic-rest-server "1nvmxc9x0mlks6yfn66fmwn50k5q83ip4g9vvb0kndzd7hwcyacy")))) (build-system go-build-system) (arguments - '(#:import-path "github.com/restic/rest-server/cmd/rest-server" - #:unpack-path "github.com/restic/rest-server" - #:install-source? #f ;all we need is the binary - #:phases (modify-phases %standard-phases - (replace 'check - (lambda* (#:key tests? #:allow-other-keys . args) - (when tests? - ;; Unit tests seems to break with Guix' non-standard TMPDIR. - (setenv "TMPDIR" "/tmp") - (apply (assoc-ref %standard-phases - 'check) args)))) - (add-after 'install 'rename-binary - (lambda* (#:key outputs #:allow-other-keys) - (with-directory-excursion (assoc-ref outputs "out") - ;; "rest-server" is a bit too generic. - (rename-file "bin/rest-server" - "bin/restic-rest-server"))))))) - (propagated-inputs (list go-golang-org-x-crypto - go-github-com-spf13-cobra - go-github-com-prometheus-client-golang - go-github-com-miolini-datacounter - go-github-com-minio-sha256-simd - go-github-com-gorilla-handlers - go-github-com-coreos-go-systemd-activation)) + (list + #:install-source? #f + #:import-path "github.com/restic/rest-server/cmd/rest-server" + #:unpack-path "github.com/restic/rest-server" + #:phases + #~(modify-phases %standard-phases + ;; Unit tests seems to break with Guix' non-standard TMPDIR. + (add-before 'check 'set-tmpdir + (lambda _ + (setenv "TMPDIR" "/tmp"))) + (add-after 'install 'rename-binary + (lambda _ + (with-directory-excursion #$output + ;; "rest-server" is a bit too generic. + (rename-file "bin/rest-server" + "bin/restic-rest-server"))))))) + (native-inputs (list go-github-com-coreos-go-systemd-activation + go-github-com-gorilla-handlers + go-github-com-minio-sha256-simd + go-github-com-miolini-datacounter + go-github-com-prometheus-client-golang + go-github-com-spf13-cobra + go-golang-org-x-crypto)) (home-page "https://github.com/restic/rest-server") (synopsis "Restic REST server") (description -- cgit v1.2.3 From 5f578c37429edc0e6c50f40cb1fb2467eba49e5d Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Fri, 12 Apr 2024 14:16:31 +0100 Subject: gnu: Add go-github-com-hashicorp-golang-lru. * gnu/packages/golang-xyz.scm go-github-com-hashicorp-golang-lru-v2, go-github-com-hashicorp-golang-lru): New variables. Change-Id: Id8de7d211e7a8fc4b257b0d2155ec9f4ed3cc3b9 --- gnu/packages/golang-xyz.scm | 45 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) diff --git a/gnu/packages/golang-xyz.scm b/gnu/packages/golang-xyz.scm index 5263d08d73..3bdd43edc6 100644 --- a/gnu/packages/golang-xyz.scm +++ b/gnu/packages/golang-xyz.scm @@ -1417,6 +1417,51 @@ (define-public go-github-com-hashicorp-go-version increment versions.") (license license:mpl2.0))) +(define-public go-github-com-hashicorp-golang-lru + (package + (name "go-github-com-hashicorp-golang-lru") + (version "1.0.2") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/hashicorp/golang-lru") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "13q3mdlr4hb2cxa5k4ccpz1gg4swrmkxm7h3brq3xsawidpbjbyb")))) + (build-system go-build-system) + (arguments + (list + #:import-path "github.com/hashicorp/golang-lru")) + (home-page "https://github.com/hashicorp/golang-lru") + (synopsis "Golang LRU cache") + (description + "@code{lru} is a package which implements a fixed-size thread safe +@acronym{Least recently used,LRU} cache. It is based on the cache in +Groupcache.") + (license license:mpl2.0))) + +(define-public go-github-com-hashicorp-golang-lru-v2 + (package + (inherit go-github-com-hashicorp-golang-lru) + (name "go-github-com-hashicorp-golang-lru-v2") + (version "2.0.7") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/hashicorp/golang-lru") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0lb2ylv2bz6lsqhn6c2hsafjjcx0hsdbah6arhb778g3xbkpgvf3")))) + (build-system go-build-system) + (arguments + (list + #:go go-1.18 + #:import-path "github.com/hashicorp/golang-lru/v2")))) + (define-public go-github-com-hashicorp-hcl (package (name "go-github-com-hashicorp-hcl") -- cgit v1.2.3 From 5a5b8885b943c0ba24e21839c3ec89b160b3b125 Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Fri, 12 Apr 2024 14:36:03 +0100 Subject: gnu: go-github-com-pbnjay-memory: Move to golang-xyz. * gnu/packages/golang.scm (go-github-com-pbnjay-memory): Move from here ... * gnu/packages/golang-xyz.scm: ... to here. Change-Id: Ie46dfc76fd468ab3a5af886592a150e3e4565111 --- gnu/packages/golang-xyz.scm | 27 +++++++++++++++++++++++++++ gnu/packages/golang.scm | 26 -------------------------- 2 files changed, 27 insertions(+), 26 deletions(-) diff --git a/gnu/packages/golang-xyz.scm b/gnu/packages/golang-xyz.scm index 3bdd43edc6..73a7188c17 100644 --- a/gnu/packages/golang-xyz.scm +++ b/gnu/packages/golang-xyz.scm @@ -2654,6 +2654,33 @@ (define-public go-github-com-orisano-pixelmatch included in this package.") (license license:expat))) +(define-public go-github-com-pbnjay-memory + (let ((commit "974d429e7ae40c89e7dcd41cfcc22a0bfbe42510") + (revision "1")) + (package + (name "go-github-com-pbnjay-memory") + (version (git-version "0.0.0" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/pbnjay/memory") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0kazg5psdn90pqadrzma5chdwh0l2by9z31sspr47gx93fhjmkkq")))) + (build-system go-build-system) + (arguments + (list + #:import-path "github.com/pbnjay/memory")) + (home-page "https://github.com/gedex/inflector") + (synopsis "Go library to report total system memory") + (description + "@code{memory} provides a single method reporting total physical system +memory accessible to the kernel. It does not account for memory used by other +processes.") + (license license:bsd-3)))) + (define-public go-github-com-pierrec-cmdflag (package (name "go-github-com-pierrec-cmdflag") diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm index d5b8a67b97..445ca0097b 100644 --- a/gnu/packages/golang.scm +++ b/gnu/packages/golang.scm @@ -6681,32 +6681,6 @@ (define-public go-github-com-klauspost-cpuid to use.") (license license:expat))) -(define-public go-github-com-pbnjay-memory - (let ((commit "974d429e7ae40c89e7dcd41cfcc22a0bfbe42510") - (revision "1")) - (package - (name "go-github-com-pbnjay-memory") - (version (git-version "0.0.0" revision commit)) - (source (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/pbnjay/memory") - (commit commit))) - (file-name (string-append "go-github-com-pbnjay-memory-" - version "-checkout")) - (sha256 - (base32 - "0kazg5psdn90pqadrzma5chdwh0l2by9z31sspr47gx93fhjmkkq")))) - (build-system go-build-system) - (arguments - `(#:import-path "github.com/pbnjay/memory")) - (home-page "https://github.com/gedex/inflector") - (synopsis "Go library to report total system memory") - (description "@code{memory} provides a single method reporting total -physical system memory accessible to the kernel. It does not account for memory -used by other processes.") - (license license:bsd-3)))) - (define-public go-github-com-surge-glog (let ((commit "2578deb2b95c665e6b1ebabf304ce2085c9e1985") (revision "1")) -- cgit v1.2.3 From fcb3a177f6d182c53728431b31d29799dde56a09 Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Fri, 12 Apr 2024 14:39:31 +0100 Subject: gnu: go-github-com-pbnjay-memory: Update to 0.0.0-2.7b4eea6. * gnu/packages/golang-xyz (go-github-com-pbnjay-memory): Update to 0.0.0-2.7b4eea6. Change-Id: I3772c15497ddc4e7028eb4e6e5cd7ba9a08ba198 --- gnu/packages/golang-xyz.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/golang-xyz.scm b/gnu/packages/golang-xyz.scm index 73a7188c17..24aee155a7 100644 --- a/gnu/packages/golang-xyz.scm +++ b/gnu/packages/golang-xyz.scm @@ -2655,8 +2655,8 @@ (define-public go-github-com-orisano-pixelmatch (license license:expat))) (define-public go-github-com-pbnjay-memory - (let ((commit "974d429e7ae40c89e7dcd41cfcc22a0bfbe42510") - (revision "1")) + (let ((commit "7b4eea64cf580186c0eceb10dc94ba3a098af46c") + (revision "2")) (package (name "go-github-com-pbnjay-memory") (version (git-version "0.0.0" revision commit)) @@ -2668,7 +2668,7 @@ (define-public go-github-com-pbnjay-memory (commit commit))) (file-name (git-file-name name version)) (sha256 - (base32 "0kazg5psdn90pqadrzma5chdwh0l2by9z31sspr47gx93fhjmkkq")))) + (base32 "107w8pd1aasdrk35hh9pbdh9z11s9s79nglz6rqfnf6bhgb8b3s0")))) (build-system go-build-system) (arguments (list -- cgit v1.2.3 From e86eb91206b4588ffc77b001b0d2b88c2411f583 Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Fri, 12 Apr 2024 14:56:58 +0100 Subject: gnu: Add go-github-com-stretchr-testify-next. * gnu/packages/golang-check.scm (go-github-com-stretchr-testify-next): New variable. Change-Id: Ib24b9f68be04ba4066fb130909e59e1df71e4bf7 --- gnu/packages/golang-check.scm | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/gnu/packages/golang-check.scm b/gnu/packages/golang-check.scm index 4984d552d3..2b70e8565f 100644 --- a/gnu/packages/golang-check.scm +++ b/gnu/packages/golang-check.scm @@ -748,6 +748,21 @@ (define-public go-github-com-stretchr-testify-bootstrap (propagated-inputs (list go-gopkg-in-yaml-v3))))) +(define-public go-github-com-stretchr-testify-next + (package + (inherit go-github-com-stretchr-testify) + (name "go-github-com-stretchr-testify") + (version "1.9.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/stretchr/testify") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "12cnhk96h8b3ddlb7jfvwwavzc0j1c2iva92pszl9rv6r571ckzg")))))) + (define-public go-github-com-tdewolff-test (package (name "go-github-com-tdewolff-test") -- cgit v1.2.3 From 81a8d57d036ce98af523349c9c739a3b26c90206 Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Fri, 12 Apr 2024 15:00:13 +0100 Subject: gnu: Add go-go-uber-org-dig. * gnu/packages/golang-xyz.scm (go-go-uber-org-dig): New variable. Change-Id: I127569582dbf060b2870c8ac7f977a96e5ba9596 --- gnu/packages/golang-xyz.scm | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/gnu/packages/golang-xyz.scm b/gnu/packages/golang-xyz.scm index 24aee155a7..13c23012cd 100644 --- a/gnu/packages/golang-xyz.scm +++ b/gnu/packages/golang-xyz.scm @@ -3210,6 +3210,33 @@ (define-public go-go-uber-org-automaxprocs CPU quota.") (license license:expat))) +(define-public go-go-uber-org-dig + (package + (name "go-go-uber-org-dig") + (version "1.17.1") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/uber-go/dig") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "020dak2r0yykk6fkfwad2wbz73pjbbdkdamn0ir7xf2irxsmjakm")))) + (build-system go-build-system) + (arguments + (list + #:go go-1.20 + #:import-path "go.uber.org/dig")) + (native-inputs + (list go-github-com-stretchr-testify-next)) + (home-page "https://pkg.go.dev/go.uber.org/dig") + (synopsis "Reflection based dependency injection toolkit for Golang") + (description + "Package @code{dig} provides a functionality to implement resolving +object dependencies graph during the process startup.") + (license license:expat))) + (define-public go-go-uber-org-zap (package (name "go-go-uber-org-zap") -- cgit v1.2.3 From e18f8a306a3602919a0427dae51d125a9d302f3d Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Fri, 12 Apr 2024 15:06:01 +0100 Subject: gnu: go-go-uber-org-atomic: Move to golang-xyz. * gnu/packages/golang.scm (go-go-uber-org-atomic): Move from here ... * gnu/packages/golang-xyz.scm: ... to here. Change-Id: Ib12085510b40a00e61dda2ae886754a116edd032 --- gnu/packages/golang-xyz.scm | 26 ++++++++++++++++++++++++++ gnu/packages/golang.scm | 25 ------------------------- 2 files changed, 26 insertions(+), 25 deletions(-) diff --git a/gnu/packages/golang-xyz.scm b/gnu/packages/golang-xyz.scm index 13c23012cd..e8b2a4b5d3 100644 --- a/gnu/packages/golang-xyz.scm +++ b/gnu/packages/golang-xyz.scm @@ -3185,6 +3185,32 @@ (define-public go-github-com-xhit-go-str2duration-v2 similar string with weeks or days too.") (license license:bsd-3))) +(define-public go-go-uber-org-atomic + (package + (name "go-go-uber-org-atomic") + (version "1.8.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/uber-go/atomic") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0grswsk7nkf7zmmychf6aj6032shyag1kgs6zf7qwxyn55dym1v8")))) + (build-system go-build-system) + (arguments + (list + #:import-path "go.uber.org/atomic")) + (native-inputs + (list go-github-com-stretchr-testify go-github-com-davecgh-go-spew)) + (home-page "https://go.uber.org/atomic") + (synopsis "Wrapper types for sync/atomic") + (description + "This package provides simple wrappers for primitive types to enforce +atomic access.") + (license license:expat))) + (define-public go-go-uber-org-automaxprocs (package (name "go-go-uber-org-automaxprocs") diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm index 445ca0097b..91e14ae1a3 100644 --- a/gnu/packages/golang.scm +++ b/gnu/packages/golang.scm @@ -8486,31 +8486,6 @@ (define-public go-go-uber-org-goleak running at the end of a test.") (license license:expat))) -(define-public go-go-uber-org-atomic - (package - (name "go-go-uber-org-atomic") - (version "1.8.0") - (source - (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/uber-go/atomic") - (commit (string-append "v" version)))) - (file-name (git-file-name name version)) - (sha256 - (base32 "0grswsk7nkf7zmmychf6aj6032shyag1kgs6zf7qwxyn55dym1v8")))) - (build-system go-build-system) - (arguments - '(#:import-path "go.uber.org/atomic")) - (native-inputs - (list go-github-com-stretchr-testify go-github-com-davecgh-go-spew)) - (home-page "https://go.uber.org/atomic") - (synopsis "Wrapper types for sync/atomic") - (description - "This package provides simple wrappers for primitive types to enforce -atomic access.") - (license license:expat))) - (define-public go-go-uber-org-multierr (package (name "go-go-uber-org-multierr") -- cgit v1.2.3 From e59360188fe46f55fdfdbd4c4767630a6428c0a0 Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Fri, 12 Apr 2024 15:07:44 +0100 Subject: gnu: go-go-uber-org-atomic: Fix home-page. Ammend a lint warning: URI https://go.uber.org/atomic returned suspiciously small file (581 bytes). * gnu/packages/golang-xyz.scm (go-go-uber-org-atomic) [home-page]: Fix URL. Change-Id: I361f52f2a62f36cde5435cec6f336c1c114f44b0 --- gnu/packages/golang-xyz.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/golang-xyz.scm b/gnu/packages/golang-xyz.scm index e8b2a4b5d3..a22878ac1e 100644 --- a/gnu/packages/golang-xyz.scm +++ b/gnu/packages/golang-xyz.scm @@ -3204,7 +3204,7 @@ (define-public go-go-uber-org-atomic #:import-path "go.uber.org/atomic")) (native-inputs (list go-github-com-stretchr-testify go-github-com-davecgh-go-spew)) - (home-page "https://go.uber.org/atomic") + (home-page "https://pkg.go.dev/go.uber.org/atomic") (synopsis "Wrapper types for sync/atomic") (description "This package provides simple wrappers for primitive types to enforce -- cgit v1.2.3 From c1ff8e9efcfac542ed15382a5afec4651ee81d06 Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Fri, 12 Apr 2024 15:17:09 +0100 Subject: gnu: go-go-uber-org-goleak: Enable tests. * gnu/packages/golang.scm (go-go-uber-org-goleak) [arguments]: <#:tests?>: Enable them. [native-inputs]: Add go-github-com-stretchr-testify-next. [propagated-inputs]: Remove indirect golang modules: go-github-com-stretchr-testify, go-github-com-davecgh-go-spew, go-github-com-kr-pretty, go-github-com-pmezard-go-difflib, go-github-com-stretchr-testify, go-golang-org-x-lint, go-golang-org-x-tools, go-gopkg-in-check-v1; and go-gopkg-in-yaml-v3. Change-Id: I4fa1cf7ff9b9304c8ad0109381932e76ae389f62 --- gnu/packages/golang.scm | 14 +++----------- 1 file changed, 3 insertions(+), 11 deletions(-) diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm index 91e14ae1a3..b7a376c15f 100644 --- a/gnu/packages/golang.scm +++ b/gnu/packages/golang.scm @@ -8469,17 +8469,9 @@ (define-public go-go-uber-org-goleak "1lpqw7ygffak8qki9i4vw8b99l25l8jrw8iwcplqsclk6fzkl24p")))) (build-system go-build-system) (arguments - '(#:tests? #f - #:import-path "go.uber.org/goleak")) - (propagated-inputs - (list go-github-com-davecgh-go-spew - go-github-com-kr-pretty - go-github-com-pmezard-go-difflib - go-github-com-stretchr-testify - go-golang-org-x-lint - go-golang-org-x-tools - go-gopkg-in-check-v1 - go-gopkg-in-yaml-v3)) + '(#:import-path "go.uber.org/goleak")) + (native-inputs + (list go-github-com-stretchr-testify-next)) (home-page "https://go.uber.org/goleak") (synopsis "Goroutine leak detector") (description "Go package to verify that there are no unexpected goroutines -- cgit v1.2.3 From 977490e6350818c41085c710a3b90e31f8caea7f Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Fri, 12 Apr 2024 15:34:21 +0100 Subject: gnu: go-go-uber-org-goleak: Move to golang-check. * gnu/packages/golang.scm (go-go-uber-org-goleak): Move from here ... * gnu/packages/golang-check.scm: ... to here. Change-Id: Iaadd6506457cb3487df8f27f71442a6dcabce816 --- gnu/packages/golang-check.scm | 28 ++++++++++++++++++++++++++++ gnu/packages/golang.scm | 24 ------------------------ 2 files changed, 28 insertions(+), 24 deletions(-) diff --git a/gnu/packages/golang-check.scm b/gnu/packages/golang-check.scm index 2b70e8565f..3628b37b92 100644 --- a/gnu/packages/golang-check.scm +++ b/gnu/packages/golang-check.scm @@ -19,6 +19,7 @@ ;;; Copyright © 2023 Fries ;;; Copyright © 2023 Hilton Chain ;;; Copyright © 2023 Katherine Cox-Buday +;;; Copyright © 2024 Greg Hogan ;;; Copyright © 2024 Troy Figiel ;;; ;;; This file is part of GNU Guix. @@ -1002,6 +1003,33 @@ (define-public go-github-com-go-playground-assert-v2 (arguments (list #:import-path "github.com/go-playground/assert/v2")))) +(define-public go-go-uber-org-goleak + (package + (name "go-go-uber-org-goleak") + (version "1.2.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/uber-go/goleak") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1lpqw7ygffak8qki9i4vw8b99l25l8jrw8iwcplqsclk6fzkl24p")))) + (build-system go-build-system) + (arguments + (list + #:import-path "go.uber.org/goleak")) + (native-inputs + (list go-github-com-stretchr-testify-next)) + (home-page "https://go.uber.org/goleak") + (synopsis "Goroutine leak detector") + (description + "Go package to verify that there are no unexpected goroutines running at +the end of a test.") + (license license:expat))) + (define-public go-honnef-co-go-tools (package (name "go-honnef-co-go-tools") diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm index b7a376c15f..611a9e883b 100644 --- a/gnu/packages/golang.scm +++ b/gnu/packages/golang.scm @@ -8454,30 +8454,6 @@ (define-public go-git-sr-ht-sircmpwn-getopt @code{getopt} for Go.") (license license:bsd-3))) -(define-public go-go-uber-org-goleak - (package - (name "go-go-uber-org-goleak") - (version "1.2.0") - (source (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/uber-go/goleak") - (commit (string-append "v" version)))) - (file-name (git-file-name name version)) - (sha256 - (base32 - "1lpqw7ygffak8qki9i4vw8b99l25l8jrw8iwcplqsclk6fzkl24p")))) - (build-system go-build-system) - (arguments - '(#:import-path "go.uber.org/goleak")) - (native-inputs - (list go-github-com-stretchr-testify-next)) - (home-page "https://go.uber.org/goleak") - (synopsis "Goroutine leak detector") - (description "Go package to verify that there are no unexpected goroutines -running at the end of a test.") - (license license:expat))) - (define-public go-go-uber-org-multierr (package (name "go-go-uber-org-multierr") -- cgit v1.2.3 From 5f82b1773a30cbaf2844722b02c1c91942cd98df Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Fri, 12 Apr 2024 16:43:41 +0100 Subject: gnu: go-go-uber-org-goleak: Fix hompe-page. Ammend a lint warning: URI https://go.uber.org/goleak returned suspiciously small file (581 bytes). * gnu/packages/golang-check.scm (go-go-uber-org-goleak): Fix home page. Change-Id: Id911550e750c35a7e1bab1428e9f393974c78c84 --- gnu/packages/golang-check.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/golang-check.scm b/gnu/packages/golang-check.scm index 3628b37b92..3e26f5f374 100644 --- a/gnu/packages/golang-check.scm +++ b/gnu/packages/golang-check.scm @@ -1023,7 +1023,7 @@ (define-public go-go-uber-org-goleak #:import-path "go.uber.org/goleak")) (native-inputs (list go-github-com-stretchr-testify-next)) - (home-page "https://go.uber.org/goleak") + (home-page "https://pkg.go.dev/go.uber.org/goleak") (synopsis "Goroutine leak detector") (description "Go package to verify that there are no unexpected goroutines running at -- cgit v1.2.3 From 1a1821ff206c065e2c80294c9ab9295e23aa777a Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Fri, 12 Apr 2024 15:46:20 +0100 Subject: gnu: go-go-uber-org-multierr: Move to golang-xyz. * gnu/packages/golang.scm (go-go-uber-org-multierr): Move from here ... * gnu/packages/golang-xyz.scm: ... to here. Change-Id: If343d3b97a4b625424ee846c903e5db1b91fcc23 --- gnu/packages/golang-xyz.scm | 26 ++++++++++++++++++++++++++ gnu/packages/golang.scm | 26 -------------------------- 2 files changed, 26 insertions(+), 26 deletions(-) diff --git a/gnu/packages/golang-xyz.scm b/gnu/packages/golang-xyz.scm index a22878ac1e..170ce808fa 100644 --- a/gnu/packages/golang-xyz.scm +++ b/gnu/packages/golang-xyz.scm @@ -3263,6 +3263,32 @@ (define-public go-go-uber-org-dig object dependencies graph during the process startup.") (license license:expat))) +(define-public go-go-uber-org-multierr + (package + (name "go-go-uber-org-multierr") + (version "1.6.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/uber-go/multierr") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "162941s8f6a9x2w04qm4qa3zz0zylwag9149hywrj9ibp2nzcsqz")))) + (build-system go-build-system) + (arguments + '(#:import-path "go.uber.org/multierr")) + (native-inputs + (list go-github-com-stretchr-testify)) + (propagated-inputs + (list go-go-uber-org-atomic)) + (home-page "https://go.uber.org/multierr") + (synopsis "Error combination for Go") + (description + "@code{multierr} allows combining one or more Go errors together.") + (license license:expat))) + (define-public go-go-uber-org-zap (package (name "go-go-uber-org-zap") diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm index 611a9e883b..269bcaa3e4 100644 --- a/gnu/packages/golang.scm +++ b/gnu/packages/golang.scm @@ -8454,32 +8454,6 @@ (define-public go-git-sr-ht-sircmpwn-getopt @code{getopt} for Go.") (license license:bsd-3))) -(define-public go-go-uber-org-multierr - (package - (name "go-go-uber-org-multierr") - (version "1.6.0") - (source - (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/uber-go/multierr") - (commit (string-append "v" version)))) - (file-name (git-file-name name version)) - (sha256 - (base32 "162941s8f6a9x2w04qm4qa3zz0zylwag9149hywrj9ibp2nzcsqz")))) - (build-system go-build-system) - (arguments - '(#:import-path "go.uber.org/multierr")) - (native-inputs - (list go-github-com-stretchr-testify)) - (propagated-inputs - (list go-go-uber-org-atomic)) - (home-page "https://go.uber.org/multierr") - (synopsis "Error combination for Go") - (description - "@code{multierr} allows combining one or more Go errors together.") - (license license:expat))) - (define-public gofumpt (package (name "gofumpt") -- cgit v1.2.3 From f704d64fa7541b6dd311f4ef6834ba1142eac913 Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Fri, 12 Apr 2024 16:46:29 +0100 Subject: gnu: go-go-uber-org-multierr: Fix home-page. Amend lint warning: URI https://go.uber.org/multierr returned suspiciously small file (597 bytes). * gnu/packages/golang-xyz.scm (go-go-uber-org-multierr): Fix home-page. Change-Id: Ied5132b722f98fc9745afd691dc4f95a6e0dfe7b --- gnu/packages/golang-xyz.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/golang-xyz.scm b/gnu/packages/golang-xyz.scm index 170ce808fa..a525bbd176 100644 --- a/gnu/packages/golang-xyz.scm +++ b/gnu/packages/golang-xyz.scm @@ -3283,7 +3283,7 @@ (define-public go-go-uber-org-multierr (list go-github-com-stretchr-testify)) (propagated-inputs (list go-go-uber-org-atomic)) - (home-page "https://go.uber.org/multierr") + (home-page "https://pkg.go.dev/go.uber.org/multierr") (synopsis "Error combination for Go") (description "@code{multierr} allows combining one or more Go errors together.") -- cgit v1.2.3 From e60072bff7adc21a844f6b683f13b4c0e3c4a632 Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Fri, 12 Apr 2024 16:04:04 +0100 Subject: gnu: go-go-uber-org-zap: Enable tests. * gnu/packages/golang-xyz.scm (go-go-uber-org-zap): [arguments]: <#:go>: Use go-1.19. <#:tests?>: Enable them. <#:phases>: Add 'remove-test-files phase. [propagated-inputs]: Add go-github-com-benbjohnson-clock. [native-inputs]: Remove go-github-com-stretchr-testify; add go-github-com-stretchr-testify-next and go-go-uber-org-goleak. Change-Id: I6c96d1067338e9b8d1b8d26488dc1471cbde5b21 --- gnu/packages/golang-xyz.scm | 21 +++++++++++++++++---- 1 file changed, 17 insertions(+), 4 deletions(-) diff --git a/gnu/packages/golang-xyz.scm b/gnu/packages/golang-xyz.scm index a525bbd176..8ca83d7d64 100644 --- a/gnu/packages/golang-xyz.scm +++ b/gnu/packages/golang-xyz.scm @@ -3304,14 +3304,27 @@ (define-public go-go-uber-org-zap (base32 "0lzbbs87fvixzbyv4wpl3s70vm2m0jz2jgdvrviiksc2al451qgs")))) (build-system go-build-system) (arguments - '(#:import-path "go.uber.org/zap" - #:tests? #f)) ; TODO: Fix tests + (list + #:go go-1.19 + #:import-path "go.uber.org/zap" + #:phases + #~(modify-phases %standard-phases + ;; Remove test files requiring to download all dependencies for the + ;; current Go module and reports their module paths and locations on + ;; disk. + (add-after 'unpack 'remove-test-files + (lambda* (#:key import-path #:allow-other-keys) + (delete-file + (string-append "src/" import-path + "/stacktrace_ext_test.go"))))))) (native-inputs - (list go-github-com-stretchr-testify + (list go-github-com-stretchr-testify-next + go-go-uber-org-goleak go-golang-org-x-lint go-honnef-co-go-tools)) (propagated-inputs - (list go-github-com-pkg-errors + (list go-github-com-benbjohnson-clock + go-github-com-pkg-errors go-go-uber-org-atomic go-go-uber-org-multierr go-gopkg-in-yaml-v2)) -- cgit v1.2.3 From 2d10f8eb0bc1559a44fd6fbeb705c5bfc30e5508 Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Fri, 12 Apr 2024 16:48:31 +0100 Subject: gnu: go-go-uber-org-zap: Fix home-page. Amend lint warning: URI https://go.uber.org/zap returned suspiciously small file (557 bytes). * gnu/packages/golang-xyz.scm (go-go-uber-org-zap): Fix home-page. Change-Id: I6f6148f59d7c4166d7d5a62ab14385ca5346012c --- gnu/packages/golang-xyz.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/golang-xyz.scm b/gnu/packages/golang-xyz.scm index 8ca83d7d64..1d41da74ef 100644 --- a/gnu/packages/golang-xyz.scm +++ b/gnu/packages/golang-xyz.scm @@ -3328,7 +3328,7 @@ (define-public go-go-uber-org-zap go-go-uber-org-atomic go-go-uber-org-multierr go-gopkg-in-yaml-v2)) - (home-page "https://go.uber.org/zap") + (home-page "https://pkg.go.dev/go.uber.org/zap") (synopsis "Logging library for Go") (description "This package provides a library for fast, structured, leveled logging in -- cgit v1.2.3 From 49d917e675cd83764ed011793fcefe544b637d83 Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Fri, 12 Apr 2024 16:08:18 +0100 Subject: gnu: Add go-go-uber-org-fx. * gnu/packages/golang-xyz.scm (go-go-uber-org-fx): New variable. Change-Id: Ib8410424acc31caf486f2d6cd14e736a110efa0f --- gnu/packages/golang-xyz.scm | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) diff --git a/gnu/packages/golang-xyz.scm b/gnu/packages/golang-xyz.scm index 1d41da74ef..63529e631d 100644 --- a/gnu/packages/golang-xyz.scm +++ b/gnu/packages/golang-xyz.scm @@ -3263,6 +3263,39 @@ (define-public go-go-uber-org-dig object dependencies graph during the process startup.") (license license:expat))) +(define-public go-go-uber-org-fx + (package + (name "go-go-uber-org-fx") + (version "1.21.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://pkg.go.dev/go.uber.org/fx") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "16pbqmkij02zw6xa4660k905y0r0rc50vyqhg41i2411r68jrdnn")))) + (build-system go-build-system) + (arguments + (list + #:go go-1.20 + #:import-path "go.uber.org/fx")) + (native-inputs + (list go-github-com-stretchr-testify-next)) + (propagated-inputs + (list go-go-uber-org-dig + go-go-uber-org-goleak + go-go-uber-org-multierr + go-go-uber-org-zap + go-golang-org-x-sys)) + (home-page "https://go.uber.org/fx") + (synopsis "Dependency injection based application framework for Golang") + (description + "Package @code{fx} is a framework that makes it easy to build +applications out of reusable, composable modules.") + (license license:expat))) + (define-public go-go-uber-org-multierr (package (name "go-go-uber-org-multierr") -- cgit v1.2.3 From 432f57cc7d692d3af6926e374c85c7ac0bc71eae Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Fri, 12 Apr 2024 16:25:10 +0100 Subject: gnu: go-github-com-hashicorp-go-multierror: Adjust inputs. * gnu/packages/golang-xyz.scm (go-github-com-hashicorp-go-multierror): [propagated-inputs]: Swap from native-inputs to propagated-inputs. * gnu/packages/admin.scm (fiano): [inputs]: Remove go-github-com-hashicorp-errwrap. Change-Id: Ie04c05d76b5d0e3ac94e2d956a282a8b9b13f6c6 --- gnu/packages/admin.scm | 1 - gnu/packages/golang-xyz.scm | 2 +- 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm index 4affcc179c..b60857b264 100644 --- a/gnu/packages/admin.scm +++ b/gnu/packages/admin.scm @@ -5268,7 +5268,6 @@ (define-public fiano "utk")))))))) (inputs (list go-github-com-dustin-go-humanize - go-github-com-hashicorp-errwrap go-github-com-hashicorp-go-multierror go-github-com-jessevdk-go-flags go-github-com-pierrec-lz4 diff --git a/gnu/packages/golang-xyz.scm b/gnu/packages/golang-xyz.scm index 63529e631d..96d1be1a77 100644 --- a/gnu/packages/golang-xyz.scm +++ b/gnu/packages/golang-xyz.scm @@ -1327,7 +1327,7 @@ (define-public go-github-com-hashicorp-go-multierror (sha256 (base32 "0l4s41skdpifndn9s8y6s9vzgghdzg4z8z0lld9qjr28888wzp00")))) (build-system go-build-system) - (inputs (list go-github-com-hashicorp-errwrap)) + (propagated-inputs (list go-github-com-hashicorp-errwrap)) (arguments (list #:import-path "github.com/hashicorp/go-multierror")) -- cgit v1.2.3 From d3fe763fe3d7a2b1f31ad14359c1fe2b7bd54675 Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Fri, 12 Apr 2024 16:30:26 +0100 Subject: gnu: kubo: Unbundle more packages. * gnu/packages/ipfs.scm (kubo): Unbandle more packages. [snippet]: Consolidate packaged candidates for deletion. [inputs]: Remove go-github-com-benbjohnson-clock and go-go-uber-org-atomic; add go-github-com-hashicorp-go-multierror, go-github-com-hashicorp-golang-lru, go-github-com-hashicorp-golang-lru-v2, go-github-com-multiformats-go-multihash-0.2.3, go-github-com-pbnjay-memory, go-github-com-whyrusleeping-go-sysinfo, go-go-uber-org-dig, go-go-uber-org-fx, and go-gopkg-in-square-go-jose-v2. Change-Id: Id049fe8f69b82bd79aac969d78bcf30345d6507e --- gnu/packages/ipfs.scm | 26 +++++++++++++++++--------- 1 file changed, 17 insertions(+), 9 deletions(-) diff --git a/gnu/packages/ipfs.scm b/gnu/packages/ipfs.scm index 33c25d1ff4..460ee085ec 100644 --- a/gnu/packages/ipfs.scm +++ b/gnu/packages/ipfs.scm @@ -277,7 +277,7 @@ (define-public kubo (snippet '(for-each delete-file-recursively ;; TODO: unbundle the rest as well '("vendor/github.com/alecthomas" - "vendor/github.com/benbjohnson/clock" + "vendor/github.com/benbjohnson" "vendor/github.com/beorn7/perks" "vendor/github.com/blang" "vendor/github.com/cespare" @@ -294,6 +294,7 @@ (define-public kubo "vendor/github.com/golang/snappy" "vendor/github.com/google/uuid" "vendor/github.com/gorilla" + "vendor/github.com/hashicorp" ;; These should be fine, they are part of ;; the IPFS project ;; "vendor/github.com/ipfs" @@ -305,7 +306,9 @@ (define-public kubo "vendor/github.com/minio" "vendor/github.com/mitchellh" "vendor/github.com/mr-tron" + "vendor/github.com/multiformats/go-multihash" "vendor/github.com/opentracing" + "vendor/github.com/pbnjay" "vendor/github.com/pkg" "vendor/github.com/pmezard" "vendor/github.com/prometheus/client_golang" @@ -315,12 +318,10 @@ (define-public kubo "vendor/github.com/spaolacci" "vendor/github.com/stretchr" "vendor/github.com/syndtr" - "vendor/golang.org/x" - "vendor/gopkg.in/yaml.v2" - "vendor/gopkg.in/yaml.v3" - "vendor/go.uber.org/atomic" - "vendor/go.uber.org/multierr" - "vendor/go.uber.org/zap" + "vendor/github.com/whyrusleeping/go-sysinfo" + "vendor/go.uber.org" + "vendor/golang.org" + "vendor/gopkg.in" "vendor/lukechampine.com"))))) (build-system go-build-system) (arguments @@ -343,7 +344,6 @@ (define-public kubo #~(string-append #$output "/bin/ipfs")) "commands" "completion" "bash"))))))))) (inputs (list go-github-com-alecthomas-units - go-github-com-benbjohnson-clock go-github-com-blang-semver-v4 go-github-com-cespare-xxhash go-github-com-cheekybits-genny @@ -358,6 +358,9 @@ (define-public kubo go-github-com-google-uuid go-github-com-gorilla-mux go-github-com-gorilla-websocket + go-github-com-hashicorp-go-multierror + go-github-com-hashicorp-golang-lru + go-github-com-hashicorp-golang-lru-v2 go-github-com-jackpal-go-nat-pmp go-github-com-klauspost-compress go-github-com-klauspost-cpuid @@ -370,7 +373,9 @@ (define-public kubo go-github-com-minio-sha256-simd go-github-com-mitchellh-go-homedir go-github-com-mr-tron-base58 + go-github-com-multiformats-go-multihash-0.2.3 go-github-com-opentracing-opentracing-go + go-github-com-pbnjay-memory go-github-com-pkg-errors go-github-com-pmezard-go-difflib go-github-com-prometheus-client-golang @@ -380,7 +385,9 @@ (define-public kubo go-github-com-spaolacci-murmur3 go-github-com-stretchr-testify go-github-com-syndtr-goleveldb - go-go-uber-org-atomic + go-github-com-whyrusleeping-go-sysinfo + go-go-uber-org-dig + go-go-uber-org-fx go-go-uber-org-multierr go-go-uber-org-zap go-golang-org-x-crypto @@ -395,6 +402,7 @@ (define-public kubo go-golang-org-x-text go-golang-org-x-tools go-golang-org-x-xerrors + go-gopkg-in-square-go-jose-v2 go-gopkg-in-yaml-v2 go-gopkg-in-yaml-v3 go-lukechampine-com-blake3)) -- cgit v1.2.3 From cc38699cf0cfd804a43ca1b6c8602cfc84e06117 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Thu, 11 Apr 2024 15:13:24 -0400 Subject: gnu: linux-libre-documentation: Fix the build for linux-libre 6.8.4. Fixes . * gnu/packages/linux.scm (linux-libre-documentation)[native-inputs]: Add python-pyyaml. Reported-by: Tomas Volf <~@wolfsden.cz> Change-Id: I11aa9e262ffe8ab29816ce4868d73707ecdbdc5e Signed-off-by: Maxim Cournoyer --- gnu/packages/linux.scm | 1 + 1 file changed, 1 insertion(+) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index c66fd80d38..9bc783e0d0 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -2093,6 +2093,7 @@ (define-public linux-libre-documentation perl python python-sphinx + python-pyyaml texinfo which)) (synopsis "Documentation for the kernel Linux-Libre") -- cgit v1.2.3 From bff8db44633b5844f60072f9bd8f5710eee117ef Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Tue, 9 Apr 2024 14:30:20 -0400 Subject: gnu: Add zsnes. * gnu/packages/games.scm (zsnes): New variable. Change-Id: I60596f6676546ab2a4ca911f2d66ac8b535fa20b --- gnu/packages/games.scm | 42 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index 6e26a15f56..9e9b4de3da 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -11721,6 +11721,48 @@ (define-public steam-devices-udev-rules virtual reality devices.") (license license:expat)))) +(define-public zsnes + (package + (name "zsnes") + (version "2.0.12") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/xyproto/zsnes") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0g9l1ij3p1adkp97wkp0dz44i2xpmsvfpkxvlfkpr7190dibsgsz")))) + (build-system gnu-build-system) + (arguments + (list #:system "i686-linux" ;requires 32 bit libraries to build + #:tests? #f ;no test suite + #:make-flags + #~(list (string-append "CC=" #$(cc-for-target)) + (string-append "CXX=" #$(cxx-for-target)) + (string-append "PREFIX=" #$output)) + #:phases #~(modify-phases %standard-phases + (delete 'configure)))) ;no configure script + (native-inputs (list nasm pkg-config)) + (inputs (list glib libpng mesa ncurses sdl zlib)) + (home-page "https://www.zsnes.com") + (synopsis "Super Nintendo Entertainment System emulator") + (description "ZSNES is a @acronym{Super Nintendo Entertainment System, +SNES} emulator that can play most games at full speed with sound and special +graphic filters. Some of its features include: +@itemize +@item Support for smooth and dynamic image scaling +@item Support for rewinding and fast-forwarding in-game +@item JMA compression format +@item Change the appearance of the GUI +@item Take screenshots of currently running games +@item Saving the game at any point by recording the console’s state +@item Record movies of gameplay which can be played back. +@end itemize") + (license license:gpl2+) + (supported-systems (list "x86_64-linux")))) + ;;; ;;; Avoid adding new packages to the end of this file. To reduce the chances ;;; of a merge conflict, place them above by existing packages with similar -- cgit v1.2.3 From 388f27dc135b4934c0ed53e07c722662a2a5e92c Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Tue, 9 Apr 2024 14:58:20 -0400 Subject: gnu: Add jstest-gtk. * gnu/packages/games.scm (jstest-gtk): New variable. Change-Id: Ia02ef243ec03253f025a669f265b76ea6320fdac --- gnu/packages/games.scm | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index 9e9b4de3da..555e70b1c9 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -9837,6 +9837,34 @@ (define-public flightgear simulator.") (license license:gpl2+))) +(define-public jstest-gtk + ;; There is no recent tagged release; use the latest commit. + (let ((commit "60fe6ebdbc6719945be3f04988667dea569085be") + (revision "0")) + (package + (name "jstest-gtk") + (version (git-version "0.1.0" revision commit)) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/Grumbel/jstest-gtk") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1x5m6xvd1r9dhgzh6hp4vrszczbbxr04v7lyh4wjxxzrj3ahbmcq")))) + (build-system cmake-build-system) + (arguments (list #:configure-flags #~(list "-DBUILD_TESTS=ON"))) + (native-inputs (list pkg-config)) + (inputs (list gtkmm-3 libsigc++-2)) + (home-page "https://github.com/Grumbel/jstest-gtk/") + (synopsis "Simple joystick tester GUI") + (description "@command{jstest-gtk} is a simple joystick tester based on +GTK. It provides a list of attached joysticks, a way to display which buttons +and axis are pressed, a way to remap axis and buttons and a way to calibrate +joysticks.") + (license license:gpl3+)))) + (define-public jumpnbump (package (name "jumpnbump") -- cgit v1.2.3 From 9d9bba49ef8f1cbd93692316da6ba2e4633a4cac Mon Sep 17 00:00:00 2001 From: Wilko Meyer Date: Thu, 11 Apr 2024 11:05:52 +0200 Subject: gnu: linux-libre 6.8: Update to 6.8.5. * gnu/packages/linux.scm (linux-libre-6.8-version): Update to 6.8.5. (linux-libre-6.8-pristine-source): Update hashes. Change-Id: I36998d43b3345fe404abf62dce8927673250bee1 Signed-off-by: Leo Famulari --- gnu/packages/linux.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 9bc783e0d0..781ffc0bf3 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -502,7 +502,7 @@ (define (%upstream-linux-source version hash) ;; The current "mainline" kernel. -(define-public linux-libre-6.8-version "6.8.4") +(define-public linux-libre-6.8-version "6.8.5") (define-public linux-libre-6.8-gnu-revision "gnu") (define deblob-scripts-6.8 (linux-libre-deblob-scripts @@ -512,7 +512,7 @@ (define deblob-scripts-6.8 (base32 "0j9pj370zismhzw18iyx3lwcby3l3160xgpmh5xa8i8cr38r2z5h"))) (define-public linux-libre-6.8-pristine-source (let ((version linux-libre-6.8-version) - (hash (base32 "0qwywy89an1w0yvs5957kqyv74mwgxady521w2lmyq00zjaw9pnm"))) + (hash (base32 "12gsxxiwkildj8i94fkm2v69zb6z6s7hnnlvpsyv8j1pszjj728k"))) (make-linux-libre-source version (%upstream-linux-source version hash) deblob-scripts-6.8))) -- cgit v1.2.3 From e5d08b7fe2d65bb685eb097c23f0bbbb6470eb95 Mon Sep 17 00:00:00 2001 From: Wilko Meyer Date: Thu, 11 Apr 2024 11:05:53 +0200 Subject: gnu: linux-libre 6.6: Update to 6.6.26. * gnu/packages/linux.scm (linux-libre-6.6-version): Update to 6.6.26. (linux-libre-6.6-pristine-source): Update hash. Change-Id: Iae112b7926a8c8461fece02c970ff58e2dbc53b0 Signed-off-by: Leo Famulari --- gnu/packages/linux.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 781ffc0bf3..8365ac0a5b 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -541,7 +541,7 @@ (define-public linux-libre-6.7-pristine-source ;; Here are the support timelines: ;; -(define-public linux-libre-6.6-version "6.6.25") +(define-public linux-libre-6.6-version "6.6.26") (define-public linux-libre-6.6-gnu-revision "gnu") (define deblob-scripts-6.6 (linux-libre-deblob-scripts @@ -551,7 +551,7 @@ (define deblob-scripts-6.6 (base32 "17hq5pirvxaq1yscb204950xlakrd4r4mknjqayh1rzj4rzngzyq"))) (define-public linux-libre-6.6-pristine-source (let ((version linux-libre-6.6-version) - (hash (base32 "0i0zvqlj02rm6wpbidji0rn9559vrpfc1b8gbfjk70lhhyz11llr"))) + (hash (base32 "1nan0h95dkqpb55jr5mxfi8yks09fd518im3vblbi4zvyi4v8m5g"))) (make-linux-libre-source version (%upstream-linux-source version hash) deblob-scripts-6.6))) -- cgit v1.2.3 From f2e54928f5268ec557629d5f4ff15e1ca8af8c06 Mon Sep 17 00:00:00 2001 From: Wilko Meyer Date: Thu, 11 Apr 2024 11:05:54 +0200 Subject: gnu: linux-libre 6.1: Update to 6.1.85. * gnu/packages/linux.scm (linux-libre-6.1-version): Update to 6.1.85. (linux-libre-6.1-pristine-source): Update hashes. Change-Id: If528885066e96e8ddb9a0b01b269763ea008c121 Signed-off-by: Leo Famulari --- gnu/packages/linux.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 8365ac0a5b..e8f4015aa2 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -556,7 +556,7 @@ (define-public linux-libre-6.6-pristine-source (%upstream-linux-source version hash) deblob-scripts-6.6))) -(define-public linux-libre-6.1-version "6.1.84") +(define-public linux-libre-6.1-version "6.1.85") (define-public linux-libre-6.1-gnu-revision "gnu") (define deblob-scripts-6.1 (linux-libre-deblob-scripts @@ -566,7 +566,7 @@ (define deblob-scripts-6.1 (base32 "1kp8zl97x1hsmvmdwaq8s8gndfmf8chvlhsw216f86ishi2prws3"))) (define-public linux-libre-6.1-pristine-source (let ((version linux-libre-6.1-version) - (hash (base32 "0ykhl4i6yhryzgjkdbdz4pd3b1ghv84h6mpn7bdx0ra7w7mx55xg"))) + (hash (base32 "0x32p1c04q5d0yd4qncrmc064m3g1x7cvfia5cd04q3wb769pzik"))) (make-linux-libre-source version (%upstream-linux-source version hash) deblob-scripts-6.1))) -- cgit v1.2.3 From 15a523ea213065c275e4852673cbb27c72c0ad87 Mon Sep 17 00:00:00 2001 From: Wilko Meyer Date: Thu, 11 Apr 2024 11:05:55 +0200 Subject: gnu: linux-libre 5.15: Update to 5.15.154. * gnu/packages/linux.scm (linux-libre-5.15-version): Update to 5.15.154. (linux-libre-5.15-pristine-source): Update hashes. Change-Id: I1ccd0c6b9900db9dd2fa4e521a03df373c6a638e Signed-off-by: Leo Famulari --- gnu/packages/linux.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index e8f4015aa2..7a34baba88 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -571,7 +571,7 @@ (define-public linux-libre-6.1-pristine-source (%upstream-linux-source version hash) deblob-scripts-6.1))) -(define-public linux-libre-5.15-version "5.15.153") +(define-public linux-libre-5.15-version "5.15.154") (define-public linux-libre-5.15-gnu-revision "gnu") (define deblob-scripts-5.15 (linux-libre-deblob-scripts @@ -581,7 +581,7 @@ (define deblob-scripts-5.15 (base32 "121shkzgixmywa19xx5f2yxg1primarpg4bxin3jyw0214xbfh2n"))) (define-public linux-libre-5.15-pristine-source (let ((version linux-libre-5.15-version) - (hash (base32 "1g44gjcwcdq5552vwinljqwiy90bxax72jjvdasp71x88khv3pfp"))) + (hash (base32 "16067mhf173kgs4mvlzix9qscwq5wy8817dyfyjx5g7jkykmxy0p"))) (make-linux-libre-source version (%upstream-linux-source version hash) deblob-scripts-5.15))) -- cgit v1.2.3 From a89b4cdebbebab8bf829b614a16b24b587b626bb Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Sat, 13 Apr 2024 13:24:19 +0100 Subject: gnu: packages: plotutils: Sort use-module alphabetically. * gnu/packages/plotutils.scm: Sort use-module alphabetically to ease maintenance. Change-Id: Icd280f2d3b4c712b90251e8dc1b102a3f2eb339f --- gnu/packages/plotutils.scm | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/gnu/packages/plotutils.scm b/gnu/packages/plotutils.scm index 89c99a8881..9ce4bde582 100644 --- a/gnu/packages/plotutils.scm +++ b/gnu/packages/plotutils.scm @@ -23,43 +23,43 @@ (define-module (gnu packages plotutils) #:use-module ((guix licenses) #:prefix license:) - #:use-module (guix gexp) #:use-module ((guix utils) #:select (target-x86-32?)) - #:use-module (guix packages) - #:use-module (guix download) - #:use-module (guix git-download) #:use-module (guix build-system gnu) #:use-module (guix build-system ruby) + #:use-module (guix download) + #:use-module (guix gexp) + #:use-module (guix git-download) + #:use-module (guix packages) + #:use-module (gnu packages) #:use-module (gnu packages algebra) #:use-module (gnu packages autotools) #:use-module (gnu packages bash) - #:use-module (gnu packages bison) #:use-module (gnu packages bdw-gc) + #:use-module (gnu packages bison) #:use-module (gnu packages boost) #:use-module (gnu packages cmake) + #:use-module (gnu packages compression) #:use-module (gnu packages emacs) #:use-module (gnu packages flex) - #:use-module (gnu packages xorg) - #:use-module (gnu packages image) #:use-module (gnu packages ghostscript) - #:use-module (gnu packages guile) #:use-module (gnu packages gl) #:use-module (gnu packages gtk) + #:use-module (gnu packages guile) + #:use-module (gnu packages image) #:use-module (gnu packages maths) #:use-module (gnu packages onc-rpc) #:use-module (gnu packages perl) #:use-module (gnu packages pkg-config) #:use-module (gnu packages python) #:use-module (gnu packages python-xyz) + #:use-module (gnu packages qt) #:use-module (gnu packages readline) #:use-module (gnu packages ruby) - #:use-module (gnu packages qt) #:use-module (gnu packages statistics) - #:use-module (gnu packages texinfo) #:use-module (gnu packages tex) + #:use-module (gnu packages texinfo) #:use-module (gnu packages web) - #:use-module (gnu packages compression) - #:use-module (gnu packages)) + #:use-module (gnu packages xorg)) (define-public plotutils (package -- cgit v1.2.3 From 6b97d643890b79db511582e1b76dee70ca486920 Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Sat, 13 Apr 2024 13:28:40 +0100 Subject: gnu: asymptote: Sort alphabetically. * gnu/packages/plotutils.scm (asymptote): Sort alphabetically. Change-Id: I26c8b7e1fd5d83e95bd19387492dd40ec87231ca --- gnu/packages/plotutils.scm | 302 ++++++++++++++++++++++----------------------- 1 file changed, 151 insertions(+), 151 deletions(-) diff --git a/gnu/packages/plotutils.scm b/gnu/packages/plotutils.scm index 9ce4bde582..a4d0f9156b 100644 --- a/gnu/packages/plotutils.scm +++ b/gnu/packages/plotutils.scm @@ -61,6 +61,157 @@ (define-module (gnu packages plotutils) #:use-module (gnu packages web) #:use-module (gnu packages xorg)) +(define-public asymptote + (package + (name "asymptote") + (version "2.89") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://sourceforge/asymptote/" + version "/asymptote-" version ".src.tgz")) + (sha256 + (base32 "0nvzlnabxjn74ybv3jns9vsr33prlvlg3i20hskz31agxss64kpn")) + (modules '((guix build utils))) + (snippet + ;; Remove bundled RapidJSON. + #~(begin + (delete-file-recursively "LspCpp/third_party/rapidjson"))))) + (build-system gnu-build-system) + ;; Note: The 'asy' binary retains a reference to docdir for use with its + ;; "help" command in interactive mode, so adding a "doc" output is not + ;; currently useful. + (native-inputs + (list autoconf + automake + bison + boost + cmake + emacs-minimal + flex + ghostscript ;for tests + perl + pkg-config + rapidjson + texinfo ;for generating documentation + (texlive-updmap.cfg + (list texlive-epsf + texlive-etoolbox + texlive-hypdoc + texlive-infwarerr + texlive-kvdefinekeys + texlive-kvoptions + texlive-media9 + texlive-ocgx2 + texlive-parskip + texlive-pdftexcmds + texlive-texinfo)))) + (inputs + (list bash-minimal + eigen + fftw + freeglut + glew + glm + gsl + libgc + libtirpc + python + python-cson + python-numpy + python-pyqt + readline + zlib)) + (arguments + (list + #:modules '((guix build emacs-utils) + (guix build gnu-build-system) + (guix build utils) + (srfi srfi-26)) + #:imported-modules `(,@%gnu-build-system-modules + (guix build emacs-utils)) + #:configure-flags + #~(list (string-append "--enable-gc=" #$(this-package-input "libgc")) + (string-append "--with-latex=" #$output "/share/texmf/tex/latex") + (string-append "--with-context=" + #$output + "/share/texmf/tex/context/third")) + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'locate-tirpc + (lambda* (#:key inputs #:allow-other-keys) + (substitute* (list "configure.ac") + (("/usr/include/tirpc") + (search-input-directory inputs "include/tirpc"))))) + (add-after 'unpack 'unbundle-rapidjson + (lambda* (#:key inputs #:allow-other-keys) + (substitute* (list "Makefile.in") + (("\\$\\(CMAKE\\)" all) + (string-append all " -DUSE_SYSTEM_RAPIDJSON=ON"))))) + (add-after 'unpack 'fix-includes + (lambda _ + (substitute* (find-files "." "\\.in$") + (("#include ") "#include \"primitives.h\"")) + (substitute* (find-files "prc" "\\.h$") + (("#include \"config.h\"") "#include \"../config.h\"")) + (substitute* "prc/oPRCFile.h" + (("#include \"xstream.h\"") "#include \"../xstream.h\"")) + (substitute* "v3dfile.h" + (("#include ") "#include \"prc/oPRCFile.h\"")) + (substitute* "LspCpp/src/lsp/ParentProcessWatcher.cpp" + (("#include " all) + (string-append "#include \n" all))))) + (replace 'bootstrap + (lambda _ + (invoke "autoreconf" "-vfi"))) + (add-after 'unpack 'move-info-location + ;; Build process installs info file in the unusual + ;; "%out/share/info/asymptote/" location. Move it to + ;; "%out/share/info/" so it appears in the top-level directory. + (lambda _ + (substitute* "doc/png/Makefile.in" + (("(\\$\\(infodir\\))/asymptote" _ infodir) infodir)) + (substitute* "doc/asymptote.texi" + (("asymptote/asymptote") "asymptote")))) + (add-before 'build 'patch-pdf-viewer + (lambda _ + ;; Default to a free pdf viewer. + (substitute* "settings.cc" + (("defaultPDFViewer=\"acroread\"") + "defaultPDFViewer=\"gv\"")))) + (add-before 'check 'set-HOME + ;; Some tests require write access to $HOME, otherwise leading to + ;; "failed to create directory /homeless-shelter/.asy" error. + (lambda _ + (setenv "HOME" "/tmp"))) + (add-after 'install 'install-Emacs-data + (lambda _ + ;; Install related Emacs libraries into an appropriate location. + (let ((lisp-dir + (string-append #$output "/share/emacs/site-lisp"))) + (for-each (cut install-file <> lisp-dir) + (find-files "." "\\.el$")) + (emacs-generate-autoloads #$name lisp-dir)))) + (add-after 'install-Emacs-data 'wrap-python-script + (lambda* (#:key inputs outputs #:allow-other-keys) + ;; Make sure 'xasy' runs with the correct PYTHONPATH. + (let ((path (getenv "GUIX_PYTHONPATH"))) + (wrap-program + (string-append #$output "/share/asymptote/GUI/xasy.py") + `("GUIX_PYTHONPATH" ":" prefix (,path))))))))) + (home-page "https://asymptote.sourceforge.io") + (synopsis "Script-based vector graphics language") + (description + "Asymptote is a powerful descriptive vector graphics language for +technical drawing, inspired by MetaPost but with an improved C++-like syntax. +Asymptote provides for figures the same high-quality level of typesetting that +LaTeX does for scientific text.") + ;; Most source files do not contain license statements, but the README + ;; contains: "All source files in the Asymptote project, unless explicitly + ;; noted otherwise, are released under version 3 (or later) of the GNU + ;; Lesser General Public License" + (license license:lgpl3+))) + (define-public plotutils (package (name "plotutils") @@ -273,157 +424,6 @@ (define-public ploticus colors, styles, options and details.") (license license:gpl2+))) -(define-public asymptote - (package - (name "asymptote") - (version "2.89") - (source - (origin - (method url-fetch) - (uri (string-append "mirror://sourceforge/asymptote/" - version "/asymptote-" version ".src.tgz")) - (sha256 - (base32 "0nvzlnabxjn74ybv3jns9vsr33prlvlg3i20hskz31agxss64kpn")) - (modules '((guix build utils))) - (snippet - ;; Remove bundled RapidJSON. - #~(begin - (delete-file-recursively "LspCpp/third_party/rapidjson"))))) - (build-system gnu-build-system) - ;; Note: The 'asy' binary retains a reference to docdir for use with its - ;; "help" command in interactive mode, so adding a "doc" output is not - ;; currently useful. - (native-inputs - (list autoconf - automake - bison - boost - cmake - emacs-minimal - flex - ghostscript ;for tests - perl - pkg-config - rapidjson - texinfo ;for generating documentation - (texlive-updmap.cfg - (list texlive-epsf - texlive-etoolbox - texlive-hypdoc - texlive-infwarerr - texlive-kvdefinekeys - texlive-kvoptions - texlive-media9 - texlive-ocgx2 - texlive-parskip - texlive-pdftexcmds - texlive-texinfo)))) - (inputs - (list bash-minimal - eigen - fftw - freeglut - glew - glm - gsl - libgc - libtirpc - python - python-cson - python-numpy - python-pyqt - readline - zlib)) - (arguments - (list - #:modules '((guix build emacs-utils) - (guix build gnu-build-system) - (guix build utils) - (srfi srfi-26)) - #:imported-modules `(,@%gnu-build-system-modules - (guix build emacs-utils)) - #:configure-flags - #~(list (string-append "--enable-gc=" #$(this-package-input "libgc")) - (string-append "--with-latex=" #$output "/share/texmf/tex/latex") - (string-append "--with-context=" - #$output - "/share/texmf/tex/context/third")) - #:phases - #~(modify-phases %standard-phases - (add-after 'unpack 'locate-tirpc - (lambda* (#:key inputs #:allow-other-keys) - (substitute* (list "configure.ac") - (("/usr/include/tirpc") - (search-input-directory inputs "include/tirpc"))))) - (add-after 'unpack 'unbundle-rapidjson - (lambda* (#:key inputs #:allow-other-keys) - (substitute* (list "Makefile.in") - (("\\$\\(CMAKE\\)" all) - (string-append all " -DUSE_SYSTEM_RAPIDJSON=ON"))))) - (add-after 'unpack 'fix-includes - (lambda _ - (substitute* (find-files "." "\\.in$") - (("#include ") "#include \"primitives.h\"")) - (substitute* (find-files "prc" "\\.h$") - (("#include \"config.h\"") "#include \"../config.h\"")) - (substitute* "prc/oPRCFile.h" - (("#include \"xstream.h\"") "#include \"../xstream.h\"")) - (substitute* "v3dfile.h" - (("#include ") "#include \"prc/oPRCFile.h\"")) - (substitute* "LspCpp/src/lsp/ParentProcessWatcher.cpp" - (("#include " all) - (string-append "#include \n" all))))) - (replace 'bootstrap - (lambda _ - (invoke "autoreconf" "-vfi"))) - (add-after 'unpack 'move-info-location - ;; Build process installs info file in the unusual - ;; "%out/share/info/asymptote/" location. Move it to - ;; "%out/share/info/" so it appears in the top-level directory. - (lambda _ - (substitute* "doc/png/Makefile.in" - (("(\\$\\(infodir\\))/asymptote" _ infodir) infodir)) - (substitute* "doc/asymptote.texi" - (("asymptote/asymptote") "asymptote")))) - (add-before 'build 'patch-pdf-viewer - (lambda _ - ;; Default to a free pdf viewer. - (substitute* "settings.cc" - (("defaultPDFViewer=\"acroread\"") - "defaultPDFViewer=\"gv\"")))) - (add-before 'check 'set-HOME - ;; Some tests require write access to $HOME, otherwise leading to - ;; "failed to create directory /homeless-shelter/.asy" error. - (lambda _ - (setenv "HOME" "/tmp"))) - (add-after 'install 'install-Emacs-data - (lambda _ - ;; Install related Emacs libraries into an appropriate location. - (let ((lisp-dir - (string-append #$output "/share/emacs/site-lisp"))) - (for-each (cut install-file <> lisp-dir) - (find-files "." "\\.el$")) - (emacs-generate-autoloads #$name lisp-dir)))) - (add-after 'install-Emacs-data 'wrap-python-script - (lambda* (#:key inputs outputs #:allow-other-keys) - ;; Make sure 'xasy' runs with the correct PYTHONPATH. - (let ((path (getenv "GUIX_PYTHONPATH"))) - (wrap-program - (string-append #$output "/share/asymptote/GUI/xasy.py") - `("GUIX_PYTHONPATH" ":" prefix (,path))))))))) - (home-page "https://asymptote.sourceforge.io") - (synopsis "Script-based vector graphics language") - (description - "Asymptote is a powerful descriptive vector graphics language for -technical drawing, inspired by MetaPost but with an improved C++-like syntax. -Asymptote provides for figures the same high-quality level of typesetting that -LaTeX does for scientific text.") - ;; Most source files do not contain license statements, but the README - ;; contains: "All source files in the Asymptote project, unless explicitly - ;; noted otherwise, are released under version 3 (or later) of the GNU - ;; Lesser General Public License" - (license license:lgpl3+))) - (define-public ruby-unicode-plot (package (name "ruby-unicode-plot") -- cgit v1.2.3 From 8bc0362d250c42d7a594533b6ef8e582f9f0ee3a Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Sat, 13 Apr 2024 13:30:22 +0100 Subject: gnu: guile-charting: Sort alphabetically. * gnu/packages/plotutils.scm (guile-charting): Sort alphabetically. Change-Id: I07b0506bb3557c49edf93fee4665c4967f2b9396 --- gnu/packages/plotutils.scm | 58 +++++++++++++++++++++++----------------------- 1 file changed, 29 insertions(+), 29 deletions(-) diff --git a/gnu/packages/plotutils.scm b/gnu/packages/plotutils.scm index a4d0f9156b..0b32b80706 100644 --- a/gnu/packages/plotutils.scm +++ b/gnu/packages/plotutils.scm @@ -212,6 +212,35 @@ (define-public asymptote ;; Lesser General Public License" (license license:lgpl3+))) +(define-public guile-charting + ;; This commit fixes a few things, including Guile 3 support, not available + ;; in the latest release. + (let ((commit "75f755b691a9f712f3b956657d01805d6a8a1b98") + (revision "1")) + (package + (name "guile-charting") + (version (git-version "0.2.0" revision commit)) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://gitlab.com/wingo/guile-charting") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "03049g7wnpyfi0r36ij4a46kc9l45jbanx02iklkjwav2n6jqnnk")))) + (build-system gnu-build-system) + (native-inputs + (list autoconf automake texinfo pkg-config)) + (inputs (list guile-3.0)) + (propagated-inputs (list guile-cairo)) + (home-page "https://wingolog.org/projects/guile-charting/") + (synopsis "Create charts and graphs in Guile") + (description + "Guile-Charting is a Guile Scheme library to create bar charts and graphs +using the Cairo drawing library.") + (license license:lgpl2.1+)))) + (define-public plotutils (package (name "plotutils") @@ -327,35 +356,6 @@ (define-public guile-plotutils went to university in the 1990s, this is the library for you.") (license license:gpl3+))) -(define-public guile-charting - ;; This commit fixes a few things, including Guile 3 support, not available - ;; in the latest release. - (let ((commit "75f755b691a9f712f3b956657d01805d6a8a1b98") - (revision "1")) - (package - (name "guile-charting") - (version (git-version "0.2.0" revision commit)) - (source (origin - (method git-fetch) - (uri (git-reference - (url "https://gitlab.com/wingo/guile-charting") - (commit commit))) - (file-name (git-file-name name version)) - (sha256 - (base32 - "03049g7wnpyfi0r36ij4a46kc9l45jbanx02iklkjwav2n6jqnnk")))) - (build-system gnu-build-system) - (native-inputs - (list autoconf automake texinfo pkg-config)) - (inputs (list guile-3.0)) - (propagated-inputs (list guile-cairo)) - (home-page "https://wingolog.org/projects/guile-charting/") - (synopsis "Create charts and graphs in Guile") - (description - "Guile-Charting is a Guile Scheme library to create bar charts and graphs -using the Cairo drawing library.") - (license license:lgpl2.1+)))) - (define-public guile2.2-charting (package (inherit guile-charting) -- cgit v1.2.3 From 2c98b2bfa6567d282cd2e929670e1f928ed5feab Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Sat, 13 Apr 2024 13:31:56 +0100 Subject: gnu: guile-plotutils: Sort alphabetically. * gnu/packages/plotutils.scm (guile-plotutils): Sort alphabetically. Change-Id: I092df373febfe857fb05ece8effa9c14fcb2fa08 --- gnu/packages/plotutils.scm | 96 +++++++++++++++++++++++----------------------- 1 file changed, 48 insertions(+), 48 deletions(-) diff --git a/gnu/packages/plotutils.scm b/gnu/packages/plotutils.scm index 0b32b80706..b838ff8c81 100644 --- a/gnu/packages/plotutils.scm +++ b/gnu/packages/plotutils.scm @@ -241,6 +241,54 @@ (define-public guile-charting using the Cairo drawing library.") (license license:lgpl2.1+)))) +(define-public guile-plotutils + (package + (name "guile-plotutils") + (version "1.0.1") + (source (origin + (method url-fetch) + (uri (list (string-append "https://lonelycactus.com/tarball/" + "guile_plotutils-" version ".tar.gz") + (string-append + "https://github.com/spk121/guile-plotutils/releases/download/v" + version "/guile_plotutils-" version + ".tar.gz"))) + (sha256 + (base32 + "0r245z75cdzgzi57fpz84mnyrjq44793zzaaxxrszyxm1d06hc6r")))) + (build-system gnu-build-system) + (arguments + `(#:imported-modules ((guix build guile-build-system) + ,@%gnu-build-system-modules) + #:modules (((guix build guile-build-system) + #:select (target-guile-effective-version)) + (guix build gnu-build-system) + (guix build utils)) + #:phases + (modify-phases %standard-phases + (add-before 'install 'set-library-file-name + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out")) + (version (target-guile-effective-version))) + ;; First install libguile-plotutils.so. + (invoke "make" "install-guileextensionLTLIBRARIES") + + ;; Then change source files to refer to it. + (substitute* '("module/plotutils/graph.scm" + "module/plotutils/plot.scm") + (("\"libguile-plotutils\"") + (string-append "\"" out "/lib/guile/" version + "/extensions/libguile-plotutils\""))))))))) + (native-inputs (list pkg-config texinfo)) + (inputs (list plotutils guile-3.0 zlib)) + (home-page "https://lonelycactus.com/guile-plotutils.html") + (synopsis "Guile bindings to the GNU Plotutils plotting libraries") + (description + "Guile-Plotutils is a Guile binding to the venerable GNU Plotutils +plotting and graphing library. If you want to make graphs that look like you +went to university in the 1990s, this is the library for you.") + (license license:gpl3+))) + (define-public plotutils (package (name "plotutils") @@ -308,54 +356,6 @@ (define-public plotutils programs for plotting scientific data.") (license license:gpl2+))) -(define-public guile-plotutils - (package - (name "guile-plotutils") - (version "1.0.1") - (source (origin - (method url-fetch) - (uri (list (string-append "https://lonelycactus.com/tarball/" - "guile_plotutils-" version ".tar.gz") - (string-append - "https://github.com/spk121/guile-plotutils/releases/download/v" - version "/guile_plotutils-" version - ".tar.gz"))) - (sha256 - (base32 - "0r245z75cdzgzi57fpz84mnyrjq44793zzaaxxrszyxm1d06hc6r")))) - (build-system gnu-build-system) - (arguments - `(#:imported-modules ((guix build guile-build-system) - ,@%gnu-build-system-modules) - #:modules (((guix build guile-build-system) - #:select (target-guile-effective-version)) - (guix build gnu-build-system) - (guix build utils)) - #:phases - (modify-phases %standard-phases - (add-before 'install 'set-library-file-name - (lambda* (#:key outputs #:allow-other-keys) - (let ((out (assoc-ref outputs "out")) - (version (target-guile-effective-version))) - ;; First install libguile-plotutils.so. - (invoke "make" "install-guileextensionLTLIBRARIES") - - ;; Then change source files to refer to it. - (substitute* '("module/plotutils/graph.scm" - "module/plotutils/plot.scm") - (("\"libguile-plotutils\"") - (string-append "\"" out "/lib/guile/" version - "/extensions/libguile-plotutils\""))))))))) - (native-inputs (list pkg-config texinfo)) - (inputs (list plotutils guile-3.0 zlib)) - (home-page "https://lonelycactus.com/guile-plotutils.html") - (synopsis "Guile bindings to the GNU Plotutils plotting libraries") - (description - "Guile-Plotutils is a Guile binding to the venerable GNU Plotutils -plotting and graphing library. If you want to make graphs that look like you -went to university in the 1990s, this is the library for you.") - (license license:gpl3+))) - (define-public guile2.2-charting (package (inherit guile-charting) -- cgit v1.2.3 From e776d09962fe28ea78a2e55f7cce98552695454b Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Sat, 13 Apr 2024 13:33:37 +0100 Subject: gnu: guile2.2-charting: Sort alphabetically. * gnu/packages/plotutils.scm (guile2.2-charting): Sort alphabetically. Change-Id: I3fdd61800a59e3578216f4c94a4121487c6be8d3 --- gnu/packages/plotutils.scm | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/gnu/packages/plotutils.scm b/gnu/packages/plotutils.scm index b838ff8c81..ef88d07fe8 100644 --- a/gnu/packages/plotutils.scm +++ b/gnu/packages/plotutils.scm @@ -289,6 +289,13 @@ (define-public guile-plotutils went to university in the 1990s, this is the library for you.") (license license:gpl3+))) +(define-public guile2.2-charting + (package + (inherit guile-charting) + (name "guile2.2-charting") + (inputs (list guile-2.2)) + (propagated-inputs (list guile2.2-cairo)))) + (define-public plotutils (package (name "plotutils") @@ -356,13 +363,6 @@ (define-public plotutils programs for plotting scientific data.") (license license:gpl2+))) -(define-public guile2.2-charting - (package - (inherit guile-charting) - (name "guile2.2-charting") - (inputs (list guile-2.2)) - (propagated-inputs (list guile2.2-cairo)))) - (define-public ploticus (package (name "ploticus") -- cgit v1.2.3 From 12095c0cc7d8d15d8d30e2a98bebd5d51afedd70 Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Sat, 13 Apr 2024 13:35:09 +0100 Subject: gnu: ploticus: Sort alphabetically. * gnu/packages/plotutils.scm (ploticus): Sort alphabetically. Change-Id: I94a658af85c929d9b42d8b1b22166aba75c609c3 --- gnu/packages/plotutils.scm | 122 ++++++++++++++++++++++----------------------- 1 file changed, 61 insertions(+), 61 deletions(-) diff --git a/gnu/packages/plotutils.scm b/gnu/packages/plotutils.scm index ef88d07fe8..d950539fc5 100644 --- a/gnu/packages/plotutils.scm +++ b/gnu/packages/plotutils.scm @@ -296,6 +296,67 @@ (define-public guile2.2-charting (inputs (list guile-2.2)) (propagated-inputs (list guile2.2-cairo)))) +(define-public ploticus + (package + (name "ploticus") + (version "2.42") + (source (origin + (method url-fetch) + (uri (string-append "mirror://sourceforge/ploticus/ploticus/" + version "/ploticus242_src.tar.gz")) + (sha256 + (base32 + "1c70cvfvgjh83hj1x21130wb9qfr2rc0x47cxy9kl805yjwy8a9z")) + (modules '((guix build utils))) + (snippet + ;; Install binaries in the right place. + '(begin + (substitute* "src/Makefile" + (("INSTALLBIN =.*$") + (string-append "INSTALLBIN = $(out)/bin"))) + #t)))) + (build-system gnu-build-system) + (arguments + '(#:tests? #f + #:phases + (modify-phases %standard-phases + (replace 'configure (lambda _ (chdir "src"))) + (add-before 'install 'make-target-directories + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (mkdir-p (string-append out "/bin")) + #t))) + (add-after 'install 'install-prefabs + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (dir (string-append out + "/share/ploticus/prefabs")) + (bin (string-append out "/bin"))) + (mkdir-p dir) + + ;; Install "prefabs". + (for-each (lambda (file) + (let ((target + (string-append dir "/" + (basename file)))) + (copy-file file target))) + (find-files "../prefabs" ".")) + + ;; Allow them to be found. + (wrap-program (string-append bin "/pl") + `("PLOTICUS_PREFABS" ":" = (,dir))))))))) + (inputs + (list libpng libx11 zlib)) + (home-page "https://ploticus.sourceforge.net/") + (synopsis "Command-line tool for producing plots and charts") + (description + "Ploticus is a non-interactive software package for producing plots, +charts, and graphics from data. Ploticus is good for automated or +just-in-time graph generation, handles date and time data nicely, and has +basic statistical capabilities. It allows significant user control over +colors, styles, options and details.") + (license license:gpl2+))) + (define-public plotutils (package (name "plotutils") @@ -363,67 +424,6 @@ (define-public plotutils programs for plotting scientific data.") (license license:gpl2+))) -(define-public ploticus - (package - (name "ploticus") - (version "2.42") - (source (origin - (method url-fetch) - (uri (string-append "mirror://sourceforge/ploticus/ploticus/" - version "/ploticus242_src.tar.gz")) - (sha256 - (base32 - "1c70cvfvgjh83hj1x21130wb9qfr2rc0x47cxy9kl805yjwy8a9z")) - (modules '((guix build utils))) - (snippet - ;; Install binaries in the right place. - '(begin - (substitute* "src/Makefile" - (("INSTALLBIN =.*$") - (string-append "INSTALLBIN = $(out)/bin"))) - #t)))) - (build-system gnu-build-system) - (arguments - '(#:tests? #f - #:phases - (modify-phases %standard-phases - (replace 'configure (lambda _ (chdir "src"))) - (add-before 'install 'make-target-directories - (lambda* (#:key outputs #:allow-other-keys) - (let ((out (assoc-ref outputs "out"))) - (mkdir-p (string-append out "/bin")) - #t))) - (add-after 'install 'install-prefabs - (lambda* (#:key outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) - (dir (string-append out - "/share/ploticus/prefabs")) - (bin (string-append out "/bin"))) - (mkdir-p dir) - - ;; Install "prefabs". - (for-each (lambda (file) - (let ((target - (string-append dir "/" - (basename file)))) - (copy-file file target))) - (find-files "../prefabs" ".")) - - ;; Allow them to be found. - (wrap-program (string-append bin "/pl") - `("PLOTICUS_PREFABS" ":" = (,dir))))))))) - (inputs - (list libpng libx11 zlib)) - (home-page "https://ploticus.sourceforge.net/") - (synopsis "Command-line tool for producing plots and charts") - (description - "Ploticus is a non-interactive software package for producing plots, -charts, and graphics from data. Ploticus is good for automated or -just-in-time graph generation, handles date and time data nicely, and has -basic statistical capabilities. It allows significant user control over -colors, styles, options and details.") - (license license:gpl2+))) - (define-public ruby-unicode-plot (package (name "ruby-unicode-plot") -- cgit v1.2.3 From d1146d8ecb9bd7e03d273dddb5562c0338dafdc7 Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Sat, 13 Apr 2024 13:47:48 +0100 Subject: gnu: packages: plotutils: Add end-file note. * gnu/packages/plotutils.scm: Add end-file warning note to place new packages in alphabetical order. Change-Id: I31fc48b404a804ae59bfb19db09bc14874b5eebb --- gnu/packages/plotutils.scm | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/gnu/packages/plotutils.scm b/gnu/packages/plotutils.scm index d950539fc5..84fb5fa7ac 100644 --- a/gnu/packages/plotutils.scm +++ b/gnu/packages/plotutils.scm @@ -474,3 +474,8 @@ (define-public youplot of barplot, histogram, lineplot, scatter, density, boxplot, and count.") (home-page "https://github.com/red-data-tools/YouPlot") (license license:expat))) + +;;; +;;; Avoid adding new packages to the end of this file. To reduce the chances +;;; of a merge conflict, place them above in alphabetic order. +;;; -- cgit v1.2.3 From 238e4ec73e4143f3a5a85b56ca00d395cdf60197 Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Sat, 13 Apr 2024 13:43:44 +0100 Subject: gnu: ploticus: Refresh package style. * gnu/packages/plotutils.scm (ploticus): Apply G-expressions to refresh package style. Change-Id: Iabf465a9bd4e02c1087b117533dbbf0b4c1a3f14 --- gnu/packages/plotutils.scm | 60 +++++++++++++++++++++------------------------- 1 file changed, 27 insertions(+), 33 deletions(-) diff --git a/gnu/packages/plotutils.scm b/gnu/packages/plotutils.scm index 84fb5fa7ac..d0cc1bc842 100644 --- a/gnu/packages/plotutils.scm +++ b/gnu/packages/plotutils.scm @@ -310,41 +310,35 @@ (define-public ploticus (modules '((guix build utils))) (snippet ;; Install binaries in the right place. - '(begin - (substitute* "src/Makefile" - (("INSTALLBIN =.*$") - (string-append "INSTALLBIN = $(out)/bin"))) - #t)))) + #~(begin + (substitute* "src/Makefile" + (("INSTALLBIN =.*$") + (string-append "INSTALLBIN = $(out)/bin"))))))) (build-system gnu-build-system) (arguments - '(#:tests? #f - #:phases - (modify-phases %standard-phases - (replace 'configure (lambda _ (chdir "src"))) - (add-before 'install 'make-target-directories - (lambda* (#:key outputs #:allow-other-keys) - (let ((out (assoc-ref outputs "out"))) - (mkdir-p (string-append out "/bin")) - #t))) - (add-after 'install 'install-prefabs - (lambda* (#:key outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) - (dir (string-append out - "/share/ploticus/prefabs")) - (bin (string-append out "/bin"))) - (mkdir-p dir) - - ;; Install "prefabs". - (for-each (lambda (file) - (let ((target - (string-append dir "/" - (basename file)))) - (copy-file file target))) - (find-files "../prefabs" ".")) - - ;; Allow them to be found. - (wrap-program (string-append bin "/pl") - `("PLOTICUS_PREFABS" ":" = (,dir))))))))) + (list + #:tests? #f ; no tests + #:phases + #~(modify-phases %standard-phases + (replace 'configure (lambda _ (chdir "src"))) + (add-before 'install 'make-target-directories + (lambda _ + (mkdir-p (string-append #$output "/bin")))) + (add-after 'install 'install-prefabs + (lambda _ + (let* ((out #$output) + (dir (string-append out "/share/ploticus/prefabs")) + (bin (string-append out "/bin"))) + (mkdir-p dir) + ;; Install "prefabs". + (for-each + (lambda (file) + (let ((target (string-append dir "/" (basename file)))) + (copy-file file target))) + (find-files "../prefabs" ".")) + ;; Allow them to be found. + (wrap-program (string-append bin "/pl") + `("PLOTICUS_PREFABS" ":" = (,dir))))))))) (inputs (list libpng libx11 zlib)) (home-page "https://ploticus.sourceforge.net/") -- cgit v1.2.3 From e46e373f2110d20f9c40bcc70c0e1e31cfc16026 Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Sat, 13 Apr 2024 20:42:09 +0100 Subject: gnu: plotutils: Fix indentation. * gnu/packages/plotutils.scm (plotutils): Fix indentation. Change-Id: I73d03b262b9156ee372bfea74653107a97e12e2a --- gnu/packages/plotutils.scm | 56 +++++++++++++++++++++++----------------------- 1 file changed, 28 insertions(+), 28 deletions(-) diff --git a/gnu/packages/plotutils.scm b/gnu/packages/plotutils.scm index d0cc1bc842..4462621cc1 100644 --- a/gnu/packages/plotutils.scm +++ b/gnu/packages/plotutils.scm @@ -356,34 +356,34 @@ (define-public plotutils (name "plotutils") (version "2.6") (source (origin - (method url-fetch) - (uri (string-append "mirror://gnu/plotutils/plotutils-" - version ".tar.gz")) - (sha256 - (base32 - "1arkyizn5wbgvbh53aziv3s6lmd3wm9lqzkhxb3hijlp1y124hjg")) - (modules '((guix build utils))) - (snippet - ;; Force the use of libXaw7 instead of libXaw. When not doing - ;; that, libplot.la ends up containing just "-lXaw" (without - ;; "-L/path/to/Xaw"), due to the fact that there is no - ;; libXaw.la, which forces us to propagate libXaw. - '(begin - (substitute* "configure" - (("-lXaw") - "-lXaw7")) - ;; Use the `png_jmpbuf' accessor, as recommended since libpng - ;; 1.4.0 (see: - ;; http://www.libpng.org/pub/png/src/libpng-1.2.x-to-1.4.x-summary.txt). - (substitute* "libplot/z_write.c" - (("png_ptr->jmpbuf") - "png_jmpbuf (png_ptr)")) - #t)) - (patches - ;; The test suite fails on some architectures such as i686 (see: - ;; https://lists.gnu.org/archive/html/bug-plotutils/2016-04/msg00002.html). - ;; The following Debian patch works around it. - (search-patches "plotutils-spline-test.patch")))) + (method url-fetch) + (uri (string-append "mirror://gnu/plotutils/plotutils-" + version ".tar.gz")) + (sha256 + (base32 + "1arkyizn5wbgvbh53aziv3s6lmd3wm9lqzkhxb3hijlp1y124hjg")) + (modules '((guix build utils))) + (snippet + ;; Force the use of libXaw7 instead of libXaw. When not doing + ;; that, libplot.la ends up containing just "-lXaw" (without + ;; "-L/path/to/Xaw"), due to the fact that there is no + ;; libXaw.la, which forces us to propagate libXaw. + '(begin + (substitute* "configure" + (("-lXaw") + "-lXaw7")) + ;; Use the `png_jmpbuf' accessor, as recommended since libpng + ;; 1.4.0 (see: + ;; http://www.libpng.org/pub/png/src/libpng-1.2.x-to-1.4.x-summary.txt). + (substitute* "libplot/z_write.c" + (("png_ptr->jmpbuf") + "png_jmpbuf (png_ptr)")) + #t)) + (patches + ;; The test suite fails on some architectures such as i686 (see: + ;; https://lists.gnu.org/archive/html/bug-plotutils/2016-04/msg00002.html). + ;; The following Debian patch works around it. + (search-patches "plotutils-spline-test.patch")))) (build-system gnu-build-system) (arguments (list #:configure-flags -- cgit v1.2.3 From 2006874c2bc396e3385897c73018b70b6f6e7cf4 Mon Sep 17 00:00:00 2001 From: Antero Mejr Date: Thu, 25 Aug 2022 15:48:03 -0400 Subject: gnu: Add plplot. * gnu/packages/graph.scm (plplot): New variable. Signed-off-by: Sharlatan Hellseher --- gnu/packages/plotutils.scm | 51 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 51 insertions(+) diff --git a/gnu/packages/plotutils.scm b/gnu/packages/plotutils.scm index 4462621cc1..a86e1e4473 100644 --- a/gnu/packages/plotutils.scm +++ b/gnu/packages/plotutils.scm @@ -4,6 +4,7 @@ ;;; Copyright © 2016-2024 Nicolas Goaziou ;;; Copyright © 2018 Tobias Geerinckx-Rice ;;; Copyright © 2020 Maxim Cournoyer +;;; Copyright © 2022 Antero Mejr ;;; Copyright © 2023 gemmaro ;;; ;;; This file is part of GNU Guix. @@ -24,6 +25,7 @@ (define-module (gnu packages plotutils) #:use-module ((guix licenses) #:prefix license:) #:use-module ((guix utils) #:select (target-x86-32?)) + #:use-module (guix build-system cmake) #:use-module (guix build-system gnu) #:use-module (guix build-system ruby) #:use-module (guix download) @@ -59,6 +61,7 @@ (define-module (gnu packages plotutils) #:use-module (gnu packages tex) #:use-module (gnu packages texinfo) #:use-module (gnu packages web) + #:use-module (gnu packages wxwidgets) #:use-module (gnu packages xorg)) (define-public asymptote @@ -418,6 +421,54 @@ (define-public plotutils programs for plotting scientific data.") (license license:gpl2+))) +(define-public plplot + (package + (name "plplot") + (version "5.15.0") + (source (origin + (method url-fetch) + (uri (string-append "mirror://sourceforge/plplot/plplot/" + version "%20Source/plplot-" version + ".tar.gz")) + (sha256 + (base32 + "0ywccb6bs1389zjfmc9zwdvdsvlpm7vg957whh6b5a96yvcf8bdr")) + (modules '((guix build utils))) + (snippet #~(begin (delete-file-recursively "www") + (substitute* "CMakeLists.txt" + (("add_subdirectory\\(www\\)") "")))))) + (build-system cmake-build-system) + (arguments + (list + #:configure-flags + #~(list (string-append "-DLIB_DIR=" #$output "/lib") + "-DBUILD_TEST=TRUE" + "-DENABLE_wxwidgets=TRUE"))) + (native-inputs (list pkg-config)) + (inputs (list wxwidgets)) + (home-page "http://plplot.org/") ;no HTTPS + (synopsis "Scientific plotting library with Unicode support") + (description + "PLplot is a software package for creating scientific plots. +The PLplot core library can be used to create: + +@itemize +@item standard x-y plots +@item semi-log plots +@item log-log plots +@item contour plots +@item 3D surface plots +@item mesh plots +@item bar charts +@item pie charts +@end itemize") + (license (list license:lgpl2.0 + license:gpl2+ ;octave bindings + license:bsd-2 ;docbook docs + license:ogl-psi1.0 ;files in data/ss + license:cc-by-sa3.0 ;examples/Chloe.pgm + license:expat)))) ;Cmake files + (define-public ruby-unicode-plot (package (name "ruby-unicode-plot") -- cgit v1.2.3 From 56549cad7c438d4f7c74e28e3c68b6817ea24e14 Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Sat, 13 Apr 2024 18:03:40 +0100 Subject: gnu: plplot: Extend description. * gnu/packages/plotutils.scm (plplot): [description]: Add more details. Change-Id: I90aef4e666c834bc7ef4fd8be930aac9126f60aa --- gnu/packages/plotutils.scm | 30 ++++++++++++++++++------------ 1 file changed, 18 insertions(+), 12 deletions(-) diff --git a/gnu/packages/plotutils.scm b/gnu/packages/plotutils.scm index a86e1e4473..c7d4b15c4a 100644 --- a/gnu/packages/plotutils.scm +++ b/gnu/packages/plotutils.scm @@ -438,6 +438,9 @@ (define-public plplot (substitute* "CMakeLists.txt" (("add_subdirectory\\(www\\)") "")))))) (build-system cmake-build-system) + ;; TODO: Review all available options and bindings to enable them or split + ;; in dedicated packages, see Debian's package for inspirations: + ;; . (arguments (list #:configure-flags @@ -449,19 +452,22 @@ (define-public plplot (home-page "http://plplot.org/") ;no HTTPS (synopsis "Scientific plotting library with Unicode support") (description - "PLplot is a software package for creating scientific plots. -The PLplot core library can be used to create: + "PLplot is a software package for creating scientific plots which core +library can be used to create standard x-y plots, semi-log plots, log-log +plots, contour plots, 3D surface plots, mesh plots, bar charts and pie charts. +Multiple graphs (of the same or different sizes) may be placed on a single +page, and multiple pages are allowed for those device formats that support +them. -@itemize -@item standard x-y plots -@item semi-log plots -@item log-log plots -@item contour plots -@item 3D surface plots -@item mesh plots -@item bar charts -@item pie charts -@end itemize") +PLplot has support for plot symbols and text specified by the user in the +UTF-8 encoding of Unicode. This means for our many Unicode-aware devices that +plot symbols and text are only limited by the collection of glyphs normally +available via installed system fonts. Furthermore, a large subset of our +Unicode-aware devices also support complex text layout (CTL) languages such as +Arabic, Hebrew, and Indic and Indic-derived CTL scripts such as Devanagari, +Thai, Lao, and Tibetan. Thus, for these PLplot devices essentially any +language that is supported by Unicode and installed system fonts can be used +to label plots.") (license (list license:lgpl2.0 license:gpl2+ ;octave bindings license:bsd-2 ;docbook docs -- cgit v1.2.3 From ef9a2f9e91d37c0d93e689eb26ebeb6483655968 Mon Sep 17 00:00:00 2001 From: Antero Mejr Date: Thu, 25 Aug 2022 15:38:33 -0400 Subject: gnu: Add gnudatalanguage. * gnu/packages/data-language.scm: New file. * gnu/packages/data-language.scm (gnudatalanguage): New variable. * gnu/local.mk: Add gnu/packages/data-language.scm to scope. Signed-off-by: Sharlatan Hellseher Change-Id: Icf830df85ed8e6f067344af96dbb7d202e677dee --- gnu/local.mk | 1 + gnu/packages/data-language.scm | 90 ++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 91 insertions(+) create mode 100644 gnu/packages/data-language.scm diff --git a/gnu/local.mk b/gnu/local.mk index e08b0d1c75..a05c92696c 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -221,6 +221,7 @@ GNU_SYSTEM_MODULES = \ %D%/packages/cybersecurity.scm \ %D%/packages/cyrus-sasl.scm \ %D%/packages/darwin.scm \ + %D%/packages/data-language.scm \ %D%/packages/databases.scm \ %D%/packages/datamash.scm \ %D%/packages/datastructures.scm \ diff --git a/gnu/packages/data-language.scm b/gnu/packages/data-language.scm new file mode 100644 index 0000000000..e779832dd3 --- /dev/null +++ b/gnu/packages/data-language.scm @@ -0,0 +1,90 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2022 Antero Mejr +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see . + +(define-module (gnu packages data-language) + #:use-module ((guix licenses) #:prefix license:) + #:use-module (guix build-system cmake) + #:use-module (guix git-download) + #:use-module (guix packages) + #:use-module (gnu packages) + #:use-module (gnu packages algebra) + #:use-module (gnu packages c) + #:use-module (gnu packages compression) + #:use-module (gnu packages geo) + #:use-module (gnu packages image) + #:use-module (gnu packages imagemagick) + #:use-module (gnu packages maths) + #:use-module (gnu packages ncurses) + #:use-module (gnu packages onc-rpc) + #:use-module (gnu packages plotutils) + #:use-module (gnu packages python) + #:use-module (gnu packages python-xyz) + #:use-module (gnu packages readline) + #:use-module (gnu packages wxwidgets) + #:use-module (gnu packages xml)) + +(define-public gnudatalanguage + (package + (name "gnudatalanguage") + (version "1.0.1") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/gnudatalanguage/gdl") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1bb3nin3qrzx2dwdk08vffp4bblrcpv6vv1ybaj499qhqcpqpc12")))) + (build-system cmake-build-system) + (native-inputs + (list python python-numpy)) + (inputs + (list eccodes + eigen + expat + fftw + fftwf + glpk + graphicsmagick + gsl + hdf4-alt + hdf5 + libgeotiff + libjpeg-turbo + libpng + libtiff + libtirpc + ncurses + netcdf + plplot + proj + readline + shapelib + udunits + wxwidgets + zlib)) + (home-page "https://gnudatalanguage.github.io/") + (synopsis "Compiler for GDL, an IDL-compatible programming language") + (description + "GDL (GNU Data Language) is an incremental compiler compatible with +IDL (Interactive Data Language) and to some extent with PV-WAVE. Together +with its library routines it serves as a tool for data analysis and +visualization in such disciplines as astronomy, geosciences and medical +imaging.") + (license license:gpl2+))) -- cgit v1.2.3 From df7b569b464c05036871f23d37ba319be78e5f64 Mon Sep 17 00:00:00 2001 From: Matthew Trzcinski Date: Fri, 12 Apr 2024 21:00:05 +0200 Subject: doc: Standardize IRC stylization. * doc/guix.texi (After System Installation): Make references to Libera.Chat consistent. Signed-off-by: Florian Pelz --- doc/guix.texi | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/guix.texi b/doc/guix.texi index 5efbd00984..4c8d55f492 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -2548,7 +2548,7 @@ This builds a new system @dfn{generation} with the latest packages and services. Now, @pxref{Getting Started with the System}, and -join us on @code{#guix} on the Libera Chat IRC network or on +join us on @code{#guix} on the Libera.Chat IRC network or on @email{guix-devel@@gnu.org} to share your experience! -- cgit v1.2.3 From 076670f7acb740e2bfbd8e3c8ef1be5221ed75c5 Mon Sep 17 00:00:00 2001 From: Janneke Nieuwenhuizen Date: Sun, 7 Apr 2024 10:03:06 +0200 Subject: doc: Use "dejavu sans" instead of "Helvetica" or "sans" in dot images. Font-dejavu is (now) an input of fontconfig. Specifying "dejavu sans" makes generated images reproducible even when other fonts are installed (notably font-google-noto). * doc/images/bootstrap-graph.dot, doc/images/bootstrap-packages.dot, doc/images/coreutils-bag-graph.dot, doc/images/coreutils-graph.dot, doc/images/gcc-core-mesboot0-graph.dot, doc/images/service-graph.dot, doc/images/shepherd-graph.dot: Use fontname = "dejavu sans". * doc/guix.texi (Full-Source Bootstrap): Update gcc-core-mesboot0.dot recipe accordingly. Change-Id: If21d7d39d45c66de5bceafb7b825a057d540ee50 --- doc/guix.texi | 7 ++++- doc/images/bootstrap-graph.dot | 52 +++++++++++++++---------------- doc/images/bootstrap-packages.dot | 32 +++++++++---------- doc/images/coreutils-bag-graph.dot | 56 +++++++++++++++++----------------- doc/images/coreutils-graph.dot | 18 +++++------ doc/images/gcc-core-mesboot0-graph.dot | 28 ++++++++--------- doc/images/service-graph.dot | 16 +++++----- doc/images/shepherd-graph.dot | 54 ++++++++++++++++---------------- 8 files changed, 134 insertions(+), 129 deletions(-) diff --git a/doc/guix.texi b/doc/guix.texi index 4c8d55f492..fc28a15980 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -47865,7 +47865,12 @@ The graph below shows the resulting dependency graph for @code{gcc-core-mesboot0}, the bootstrap compiler used for the traditional bootstrap of the rest of the Guix System. -@c ./pre-inst-env guix graph -e '(@@ (gnu packages commencement) gcc-core-mesboot0)' | sed -re 's,((bootstrap-seeds|guile-bootstrap).*shape =) box,\1 ellipse,' > doc/images/gcc-core-mesboot0-graph.dot +@c ./pre-inst-env guix graph \ +@c -e '(@@ (gnu packages commencement) gcc-core-mesboot0)' \ +@c | sed -r \ +@c -e 's,((bootstrap-seeds|guile-bootstrap).*shape =) box,\1 ellipse,' \ +@c -e 's,fontname = sans,fontname = "dejavu sans",' \ +@c > doc/images/gcc-core-mesboot0-graph.dot @image{images/gcc-core-mesboot0-graph,6in,,Dependency graph of gcc-core-mesboot0} Work is ongoing to bring these bootstraps to the @code{arm-linux} and diff --git a/doc/images/bootstrap-graph.dot b/doc/images/bootstrap-graph.dot index 06d7f29c7a..317ee25749 100644 --- a/doc/images/bootstrap-graph.dot +++ b/doc/images/bootstrap-graph.dot @@ -1,7 +1,7 @@ # Obtained by running "nix-store --graph" on the first GCC derivation. digraph G { -"/nix/store/x60397za40lx0n88f51a2csfdq5xvb19-gcc-bootstrap-0.drv" [label = "gcc-bootstrap-0.drv", fontname = Helvetica, shape = box, style = filled, fillcolor = "#ffffff"]; +"/nix/store/x60397za40lx0n88f51a2csfdq5xvb19-gcc-bootstrap-0.drv" [label = "gcc-bootstrap-0.drv", fontname = "dejavu sans", shape = box, style = filled, fillcolor = "#ffffff"]; "/nix/store/3iawic1z95112yfz5y9xdp66qbxxr8l1-tar" -> "/nix/store/x60397za40lx0n88f51a2csfdq5xvb19-gcc-bootstrap-0.drv" [color = "black"]; "/nix/store/4sv9xhcjap6byca130fzpzzjalb7iixv-glibc-bootstrap-0.drv" -> "/nix/store/x60397za40lx0n88f51a2csfdq5xvb19-gcc-bootstrap-0.drv" [color = "red"]; "/nix/store/8cc81w6m04csm52y247xj3gydrbz2niv-xz" -> "/nix/store/x60397za40lx0n88f51a2csfdq5xvb19-gcc-bootstrap-0.drv" [color = "green"]; @@ -11,8 +11,8 @@ digraph G { "/nix/store/r3dsy5j2c16sv26raala6kahff7w18hb-gcc-bootstrap-0-guile-builder" -> "/nix/store/x60397za40lx0n88f51a2csfdq5xvb19-gcc-bootstrap-0.drv" [color = "black"]; "/nix/store/x9x1a86flhx15cams7235rfy5gc5cww1-guile-bootstrap-2.0.drv" -> "/nix/store/x60397za40lx0n88f51a2csfdq5xvb19-gcc-bootstrap-0.drv" [color = "red"]; "/nix/store/y4n7rzysx6qz3p0n91dw9qz5w93l6iqv-module-import-compiled.drv" -> "/nix/store/x60397za40lx0n88f51a2csfdq5xvb19-gcc-bootstrap-0.drv" [color = "green"]; -"/nix/store/3iawic1z95112yfz5y9xdp66qbxxr8l1-tar" [label = "tar", fontname = Helvetica, shape = box, style = filled, fillcolor = "#ffffff"]; -"/nix/store/4sv9xhcjap6byca130fzpzzjalb7iixv-glibc-bootstrap-0.drv" [label = "glibc-bootstrap-0.drv", fontname = Helvetica, shape = box, style = filled, fillcolor = "#ffffff"]; +"/nix/store/3iawic1z95112yfz5y9xdp66qbxxr8l1-tar" [label = "tar", fontname = "dejavu sans", shape = box, style = filled, fillcolor = "#ffffff"]; +"/nix/store/4sv9xhcjap6byca130fzpzzjalb7iixv-glibc-bootstrap-0.drv" [label = "glibc-bootstrap-0.drv", fontname = "dejavu sans", shape = box, style = filled, fillcolor = "#ffffff"]; "/nix/store/3iawic1z95112yfz5y9xdp66qbxxr8l1-tar" -> "/nix/store/4sv9xhcjap6byca130fzpzzjalb7iixv-glibc-bootstrap-0.drv" [color = "blue"]; "/nix/store/8cc81w6m04csm52y247xj3gydrbz2niv-xz" -> "/nix/store/4sv9xhcjap6byca130fzpzzjalb7iixv-glibc-bootstrap-0.drv" [color = "magenta"]; "/nix/store/8iivk9hpnps21yrbq3zzsxgzv9ixbhgh-glibc-bootstrap-0-guile-builder" -> "/nix/store/4sv9xhcjap6byca130fzpzzjalb7iixv-glibc-bootstrap-0.drv" [color = "burlywood"]; @@ -20,63 +20,63 @@ digraph G { "/nix/store/wdwrkg02gn28bkpbxgdb2nv558v8s3ji-glibc-2.17.tar.xz.drv" -> "/nix/store/4sv9xhcjap6byca130fzpzzjalb7iixv-glibc-bootstrap-0.drv" [color = "red"]; "/nix/store/x9x1a86flhx15cams7235rfy5gc5cww1-guile-bootstrap-2.0.drv" -> "/nix/store/4sv9xhcjap6byca130fzpzzjalb7iixv-glibc-bootstrap-0.drv" [color = "green"]; "/nix/store/y4n7rzysx6qz3p0n91dw9qz5w93l6iqv-module-import-compiled.drv" -> "/nix/store/4sv9xhcjap6byca130fzpzzjalb7iixv-glibc-bootstrap-0.drv" [color = "blue"]; -"/nix/store/8cc81w6m04csm52y247xj3gydrbz2niv-xz" [label = "xz", fontname = Helvetica, shape = box, style = filled, fillcolor = "#ffffff"]; -"/nix/store/8iivk9hpnps21yrbq3zzsxgzv9ixbhgh-glibc-bootstrap-0-guile-builder" [label = "glibc-bootstrap-0-guile-builder", fontname = Helvetica, shape = box, style = filled, fillcolor = "#ffffff"]; +"/nix/store/8cc81w6m04csm52y247xj3gydrbz2niv-xz" [label = "xz", fontname = "dejavu sans", shape = box, style = filled, fillcolor = "#ffffff"]; +"/nix/store/8iivk9hpnps21yrbq3zzsxgzv9ixbhgh-glibc-bootstrap-0-guile-builder" [label = "glibc-bootstrap-0-guile-builder", fontname = "dejavu sans", shape = box, style = filled, fillcolor = "#ffffff"]; "/nix/store/3iawic1z95112yfz5y9xdp66qbxxr8l1-tar" -> "/nix/store/8iivk9hpnps21yrbq3zzsxgzv9ixbhgh-glibc-bootstrap-0-guile-builder" [color = "magenta"]; "/nix/store/8cc81w6m04csm52y247xj3gydrbz2niv-xz" -> "/nix/store/8iivk9hpnps21yrbq3zzsxgzv9ixbhgh-glibc-bootstrap-0-guile-builder" [color = "burlywood"]; -"/nix/store/96yx6013dhggr3mpg5ayxv8dm9mv2ghv-module-import.drv" [label = "module-import.drv", fontname = Helvetica, shape = box, style = filled, fillcolor = "#ffffff"]; +"/nix/store/96yx6013dhggr3mpg5ayxv8dm9mv2ghv-module-import.drv" [label = "module-import.drv", fontname = "dejavu sans", shape = box, style = filled, fillcolor = "#ffffff"]; "/nix/store/9zrdfvnrpljryr82an2n1mj6bh2przhn-module-import-guile-builder" -> "/nix/store/96yx6013dhggr3mpg5ayxv8dm9mv2ghv-module-import.drv" [color = "black"]; "/nix/store/mj7amprgvl2rgash1nr0v64apik8vc7f-utils.scm" -> "/nix/store/96yx6013dhggr3mpg5ayxv8dm9mv2ghv-module-import.drv" [color = "red"]; "/nix/store/x9x1a86flhx15cams7235rfy5gc5cww1-guile-bootstrap-2.0.drv" -> "/nix/store/96yx6013dhggr3mpg5ayxv8dm9mv2ghv-module-import.drv" [color = "green"]; -"/nix/store/9zrdfvnrpljryr82an2n1mj6bh2przhn-module-import-guile-builder" [label = "module-import-guile-builder", fontname = Helvetica, shape = box, style = filled, fillcolor = "#ffffff"]; +"/nix/store/9zrdfvnrpljryr82an2n1mj6bh2przhn-module-import-guile-builder" [label = "module-import-guile-builder", fontname = "dejavu sans", shape = box, style = filled, fillcolor = "#ffffff"]; "/nix/store/mj7amprgvl2rgash1nr0v64apik8vc7f-utils.scm" -> "/nix/store/9zrdfvnrpljryr82an2n1mj6bh2przhn-module-import-guile-builder" [color = "blue"]; -"/nix/store/fl9cwcczfdv73vq5sr0c4rd5hqzrgvac-gcc-4.7.2.tar.xz.drv" [label = "gcc-4.7.2.tar.xz.drv", fontname = Helvetica, shape = box, style = filled, fillcolor = "#ffffff"]; +"/nix/store/fl9cwcczfdv73vq5sr0c4rd5hqzrgvac-gcc-4.7.2.tar.xz.drv" [label = "gcc-4.7.2.tar.xz.drv", fontname = "dejavu sans", shape = box, style = filled, fillcolor = "#ffffff"]; "/nix/store/6kslnirvm26fij7wpjqbw617ri4gf5x5-gcc-4.7.2.tar.xz-guile-builder" -> "/nix/store/fl9cwcczfdv73vq5sr0c4rd5hqzrgvac-gcc-4.7.2.tar.xz.drv" [color = "magenta"]; "/nix/store/kvk5wp8c9rzvvrmq5fv5r58l78q8i6ch-module-import.drv" -> "/nix/store/fl9cwcczfdv73vq5sr0c4rd5hqzrgvac-gcc-4.7.2.tar.xz.drv" [color = "burlywood"]; "/nix/store/pzv319p3q7raiad7nq7fcdw9rafzp14k-module-import-compiled.drv" -> "/nix/store/fl9cwcczfdv73vq5sr0c4rd5hqzrgvac-gcc-4.7.2.tar.xz.drv" [color = "black"]; "/nix/store/x9x1a86flhx15cams7235rfy5gc5cww1-guile-bootstrap-2.0.drv" -> "/nix/store/fl9cwcczfdv73vq5sr0c4rd5hqzrgvac-gcc-4.7.2.tar.xz.drv" [color = "red"]; -"/nix/store/6kslnirvm26fij7wpjqbw617ri4gf5x5-gcc-4.7.2.tar.xz-guile-builder" [label = "gcc-4.7.2.tar.xz-guile-builder", fontname = Helvetica, shape = box, style = filled, fillcolor = "#ffffff"]; -"/nix/store/jaaqdl979wjirnbxz1jqsipg22nva5n4-bash" [label = "bash", fontname = Helvetica, shape = box, style = filled, fillcolor = "#ffffff"]; -"/nix/store/kvk5wp8c9rzvvrmq5fv5r58l78q8i6ch-module-import.drv" [label = "module-import.drv", fontname = Helvetica, shape = box, style = filled, fillcolor = "#ffffff"]; +"/nix/store/6kslnirvm26fij7wpjqbw617ri4gf5x5-gcc-4.7.2.tar.xz-guile-builder" [label = "gcc-4.7.2.tar.xz-guile-builder", fontname = "dejavu sans", shape = box, style = filled, fillcolor = "#ffffff"]; +"/nix/store/jaaqdl979wjirnbxz1jqsipg22nva5n4-bash" [label = "bash", fontname = "dejavu sans", shape = box, style = filled, fillcolor = "#ffffff"]; +"/nix/store/kvk5wp8c9rzvvrmq5fv5r58l78q8i6ch-module-import.drv" [label = "module-import.drv", fontname = "dejavu sans", shape = box, style = filled, fillcolor = "#ffffff"]; "/nix/store/abagrdbdndkd0y2dwk0nw1gw0g0rhl2z-ftp-client.scm" -> "/nix/store/kvk5wp8c9rzvvrmq5fv5r58l78q8i6ch-module-import.drv" [color = "green"]; "/nix/store/dwd2iwd1ban8a8rmx568dpgrbkkidfhw-download.scm" -> "/nix/store/kvk5wp8c9rzvvrmq5fv5r58l78q8i6ch-module-import.drv" [color = "blue"]; "/nix/store/mj7amprgvl2rgash1nr0v64apik8vc7f-utils.scm" -> "/nix/store/kvk5wp8c9rzvvrmq5fv5r58l78q8i6ch-module-import.drv" [color = "magenta"]; "/nix/store/x9x1a86flhx15cams7235rfy5gc5cww1-guile-bootstrap-2.0.drv" -> "/nix/store/kvk5wp8c9rzvvrmq5fv5r58l78q8i6ch-module-import.drv" [color = "burlywood"]; "/nix/store/yfixjx2gpvsi5dhkpdx5gj6gx0xdk1c8-module-import-guile-builder" -> "/nix/store/kvk5wp8c9rzvvrmq5fv5r58l78q8i6ch-module-import.drv" [color = "black"]; -"/nix/store/abagrdbdndkd0y2dwk0nw1gw0g0rhl2z-ftp-client.scm" [label = "ftp-client.scm", fontname = Helvetica, shape = box, style = filled, fillcolor = "#ffffff"]; -"/nix/store/dwd2iwd1ban8a8rmx568dpgrbkkidfhw-download.scm" [label = "download.scm", fontname = Helvetica, shape = box, style = filled, fillcolor = "#ffffff"]; -"/nix/store/mj7amprgvl2rgash1nr0v64apik8vc7f-utils.scm" [label = "utils.scm", fontname = Helvetica, shape = box, style = filled, fillcolor = "#ffffff"]; -"/nix/store/pzv319p3q7raiad7nq7fcdw9rafzp14k-module-import-compiled.drv" [label = "module-import-compiled.drv", fontname = Helvetica, shape = box, style = filled, fillcolor = "#ffffff"]; +"/nix/store/abagrdbdndkd0y2dwk0nw1gw0g0rhl2z-ftp-client.scm" [label = "ftp-client.scm", fontname = "dejavu sans", shape = box, style = filled, fillcolor = "#ffffff"]; +"/nix/store/dwd2iwd1ban8a8rmx568dpgrbkkidfhw-download.scm" [label = "download.scm", fontname = "dejavu sans", shape = box, style = filled, fillcolor = "#ffffff"]; +"/nix/store/mj7amprgvl2rgash1nr0v64apik8vc7f-utils.scm" [label = "utils.scm", fontname = "dejavu sans", shape = box, style = filled, fillcolor = "#ffffff"]; +"/nix/store/pzv319p3q7raiad7nq7fcdw9rafzp14k-module-import-compiled.drv" [label = "module-import-compiled.drv", fontname = "dejavu sans", shape = box, style = filled, fillcolor = "#ffffff"]; "/nix/store/98gzqlgpm4gxrpl5bzykpqbwrx8ckx8l-module-import-compiled-guile-builder" -> "/nix/store/pzv319p3q7raiad7nq7fcdw9rafzp14k-module-import-compiled.drv" [color = "red"]; "/nix/store/kvk5wp8c9rzvvrmq5fv5r58l78q8i6ch-module-import.drv" -> "/nix/store/pzv319p3q7raiad7nq7fcdw9rafzp14k-module-import-compiled.drv" [color = "green"]; "/nix/store/x9x1a86flhx15cams7235rfy5gc5cww1-guile-bootstrap-2.0.drv" -> "/nix/store/pzv319p3q7raiad7nq7fcdw9rafzp14k-module-import-compiled.drv" [color = "blue"]; -"/nix/store/98gzqlgpm4gxrpl5bzykpqbwrx8ckx8l-module-import-compiled-guile-builder" [label = "module-import-compiled-guile-builder", fontname = Helvetica, shape = box, style = filled, fillcolor = "#ffffff"]; -"/nix/store/r3dsy5j2c16sv26raala6kahff7w18hb-gcc-bootstrap-0-guile-builder" [label = "gcc-bootstrap-0-guile-builder", fontname = Helvetica, shape = box, style = filled, fillcolor = "#ffffff"]; +"/nix/store/98gzqlgpm4gxrpl5bzykpqbwrx8ckx8l-module-import-compiled-guile-builder" [label = "module-import-compiled-guile-builder", fontname = "dejavu sans", shape = box, style = filled, fillcolor = "#ffffff"]; +"/nix/store/r3dsy5j2c16sv26raala6kahff7w18hb-gcc-bootstrap-0-guile-builder" [label = "gcc-bootstrap-0-guile-builder", fontname = "dejavu sans", shape = box, style = filled, fillcolor = "#ffffff"]; "/nix/store/3iawic1z95112yfz5y9xdp66qbxxr8l1-tar" -> "/nix/store/r3dsy5j2c16sv26raala6kahff7w18hb-gcc-bootstrap-0-guile-builder" [color = "magenta"]; "/nix/store/8cc81w6m04csm52y247xj3gydrbz2niv-xz" -> "/nix/store/r3dsy5j2c16sv26raala6kahff7w18hb-gcc-bootstrap-0-guile-builder" [color = "burlywood"]; "/nix/store/jaaqdl979wjirnbxz1jqsipg22nva5n4-bash" -> "/nix/store/r3dsy5j2c16sv26raala6kahff7w18hb-gcc-bootstrap-0-guile-builder" [color = "black"]; -"/nix/store/wdwrkg02gn28bkpbxgdb2nv558v8s3ji-glibc-2.17.tar.xz.drv" [label = "glibc-2.17.tar.xz.drv", fontname = Helvetica, shape = box, style = filled, fillcolor = "#ffffff"]; +"/nix/store/wdwrkg02gn28bkpbxgdb2nv558v8s3ji-glibc-2.17.tar.xz.drv" [label = "glibc-2.17.tar.xz.drv", fontname = "dejavu sans", shape = box, style = filled, fillcolor = "#ffffff"]; "/nix/store/kvk5wp8c9rzvvrmq5fv5r58l78q8i6ch-module-import.drv" -> "/nix/store/wdwrkg02gn28bkpbxgdb2nv558v8s3ji-glibc-2.17.tar.xz.drv" [color = "red"]; "/nix/store/pzv319p3q7raiad7nq7fcdw9rafzp14k-module-import-compiled.drv" -> "/nix/store/wdwrkg02gn28bkpbxgdb2nv558v8s3ji-glibc-2.17.tar.xz.drv" [color = "green"]; "/nix/store/q7as3jddipj4g6si8lawrdbkjg0zcjvg-glibc-2.17.tar.xz-guile-builder" -> "/nix/store/wdwrkg02gn28bkpbxgdb2nv558v8s3ji-glibc-2.17.tar.xz.drv" [color = "blue"]; "/nix/store/x9x1a86flhx15cams7235rfy5gc5cww1-guile-bootstrap-2.0.drv" -> "/nix/store/wdwrkg02gn28bkpbxgdb2nv558v8s3ji-glibc-2.17.tar.xz.drv" [color = "magenta"]; -"/nix/store/q7as3jddipj4g6si8lawrdbkjg0zcjvg-glibc-2.17.tar.xz-guile-builder" [label = "glibc-2.17.tar.xz-guile-builder", fontname = Helvetica, shape = box, style = filled, fillcolor = "#ffffff"]; -"/nix/store/x9x1a86flhx15cams7235rfy5gc5cww1-guile-bootstrap-2.0.drv" [label = "guile-bootstrap-2.0.drv", fontname = Helvetica, shape = box, style = filled, fillcolor = "#ffffff"]; +"/nix/store/q7as3jddipj4g6si8lawrdbkjg0zcjvg-glibc-2.17.tar.xz-guile-builder" [label = "glibc-2.17.tar.xz-guile-builder", fontname = "dejavu sans", shape = box, style = filled, fillcolor = "#ffffff"]; +"/nix/store/x9x1a86flhx15cams7235rfy5gc5cww1-guile-bootstrap-2.0.drv" [label = "guile-bootstrap-2.0.drv", fontname = "dejavu sans", shape = box, style = filled, fillcolor = "#ffffff"]; "/nix/store/bplka3yqdg8prqq3zdxza6wxlkjdhr2g-build-bootstrap-guile.sh" -> "/nix/store/x9x1a86flhx15cams7235rfy5gc5cww1-guile-bootstrap-2.0.drv" [color = "burlywood"]; "/nix/store/jaaqdl979wjirnbxz1jqsipg22nva5n4-bash" -> "/nix/store/x9x1a86flhx15cams7235rfy5gc5cww1-guile-bootstrap-2.0.drv" [color = "black"]; -"/nix/store/bplka3yqdg8prqq3zdxza6wxlkjdhr2g-build-bootstrap-guile.sh" [label = "build-bootstrap-guile.sh", fontname = Helvetica, shape = box, style = filled, fillcolor = "#ffffff"]; +"/nix/store/bplka3yqdg8prqq3zdxza6wxlkjdhr2g-build-bootstrap-guile.sh" [label = "build-bootstrap-guile.sh", fontname = "dejavu sans", shape = box, style = filled, fillcolor = "#ffffff"]; "/nix/store/3iawic1z95112yfz5y9xdp66qbxxr8l1-tar" -> "/nix/store/bplka3yqdg8prqq3zdxza6wxlkjdhr2g-build-bootstrap-guile.sh" [color = "red"]; "/nix/store/4xv2y0m6zr2lgi8x8pcb3zxjqxsz69kj-mkdir" -> "/nix/store/bplka3yqdg8prqq3zdxza6wxlkjdhr2g-build-bootstrap-guile.sh" [color = "green"]; "/nix/store/8cc81w6m04csm52y247xj3gydrbz2niv-xz" -> "/nix/store/bplka3yqdg8prqq3zdxza6wxlkjdhr2g-build-bootstrap-guile.sh" [color = "blue"]; "/nix/store/c450lqvaaz3ngx9pfiiiw55rqq6ssfda-guile-2.0.7.tar.xz" -> "/nix/store/bplka3yqdg8prqq3zdxza6wxlkjdhr2g-build-bootstrap-guile.sh" [color = "magenta"]; -"/nix/store/4xv2y0m6zr2lgi8x8pcb3zxjqxsz69kj-mkdir" [label = "mkdir", fontname = Helvetica, shape = box, style = filled, fillcolor = "#ffffff"]; -"/nix/store/c450lqvaaz3ngx9pfiiiw55rqq6ssfda-guile-2.0.7.tar.xz" [label = "guile-2.0.7.tar.xz", fontname = Helvetica, shape = box, style = filled, fillcolor = "#ffffff"]; -"/nix/store/y4n7rzysx6qz3p0n91dw9qz5w93l6iqv-module-import-compiled.drv" [label = "module-import-compiled.drv", fontname = Helvetica, shape = box, style = filled, fillcolor = "#ffffff"]; +"/nix/store/4xv2y0m6zr2lgi8x8pcb3zxjqxsz69kj-mkdir" [label = "mkdir", fontname = "dejavu sans", shape = box, style = filled, fillcolor = "#ffffff"]; +"/nix/store/c450lqvaaz3ngx9pfiiiw55rqq6ssfda-guile-2.0.7.tar.xz" [label = "guile-2.0.7.tar.xz", fontname = "dejavu sans", shape = box, style = filled, fillcolor = "#ffffff"]; +"/nix/store/y4n7rzysx6qz3p0n91dw9qz5w93l6iqv-module-import-compiled.drv" [label = "module-import-compiled.drv", fontname = "dejavu sans", shape = box, style = filled, fillcolor = "#ffffff"]; "/nix/store/8jiqjlb6zxjys16ca7s6jvxcc620c71k-module-import-compiled-guile-builder" -> "/nix/store/y4n7rzysx6qz3p0n91dw9qz5w93l6iqv-module-import-compiled.drv" [color = "burlywood"]; "/nix/store/96yx6013dhggr3mpg5ayxv8dm9mv2ghv-module-import.drv" -> "/nix/store/y4n7rzysx6qz3p0n91dw9qz5w93l6iqv-module-import-compiled.drv" [color = "black"]; "/nix/store/x9x1a86flhx15cams7235rfy5gc5cww1-guile-bootstrap-2.0.drv" -> "/nix/store/y4n7rzysx6qz3p0n91dw9qz5w93l6iqv-module-import-compiled.drv" [color = "red"]; -"/nix/store/8jiqjlb6zxjys16ca7s6jvxcc620c71k-module-import-compiled-guile-builder" [label = "module-import-compiled-guile-builder", fontname = Helvetica, shape = box, style = filled, fillcolor = "#ffffff"]; -"/nix/store/yfixjx2gpvsi5dhkpdx5gj6gx0xdk1c8-module-import-guile-builder" [label = "module-import-guile-builder", fontname = Helvetica, shape = box, style = filled, fillcolor = "#ffffff"]; +"/nix/store/8jiqjlb6zxjys16ca7s6jvxcc620c71k-module-import-compiled-guile-builder" [label = "module-import-compiled-guile-builder", fontname = "dejavu sans", shape = box, style = filled, fillcolor = "#ffffff"]; +"/nix/store/yfixjx2gpvsi5dhkpdx5gj6gx0xdk1c8-module-import-guile-builder" [label = "module-import-guile-builder", fontname = "dejavu sans", shape = box, style = filled, fillcolor = "#ffffff"]; "/nix/store/abagrdbdndkd0y2dwk0nw1gw0g0rhl2z-ftp-client.scm" -> "/nix/store/yfixjx2gpvsi5dhkpdx5gj6gx0xdk1c8-module-import-guile-builder" [color = "green"]; "/nix/store/dwd2iwd1ban8a8rmx568dpgrbkkidfhw-download.scm" -> "/nix/store/yfixjx2gpvsi5dhkpdx5gj6gx0xdk1c8-module-import-guile-builder" [color = "blue"]; "/nix/store/mj7amprgvl2rgash1nr0v64apik8vc7f-utils.scm" -> "/nix/store/yfixjx2gpvsi5dhkpdx5gj6gx0xdk1c8-module-import-guile-builder" [color = "magenta"]; diff --git a/doc/images/bootstrap-packages.dot b/doc/images/bootstrap-packages.dot index 8b2df068a8..579bbcd00f 100644 --- a/doc/images/bootstrap-packages.dot +++ b/doc/images/bootstrap-packages.dot @@ -1,5 +1,5 @@ digraph "Guix bag" { - "/gnu/store/aymf6jlxxpwgr71rkiz24m646nqsyii6-glibc-intermediate-2.24.drv" [label = "glibc-intermediate-2.24", shape = box, fontname = Helvetica]; + "/gnu/store/aymf6jlxxpwgr71rkiz24m646nqsyii6-glibc-intermediate-2.24.drv" [label = "glibc-intermediate-2.24", shape = box, fontname = "dejavu sans"]; "/gnu/store/aymf6jlxxpwgr71rkiz24m646nqsyii6-glibc-intermediate-2.24.drv" -> "/gnu/store/wx8ifbb7x22cl4998fyldsr24fcv18j3-texinfo-6.3.drv" [color = magenta]; "/gnu/store/aymf6jlxxpwgr71rkiz24m646nqsyii6-glibc-intermediate-2.24.drv" -> "/gnu/store/ccj3as3258l70lmphi48hs7n017wv75s-perl-boot0-5.24.0.drv" [color = magenta]; "/gnu/store/aymf6jlxxpwgr71rkiz24m646nqsyii6-glibc-intermediate-2.24.drv" -> "/gnu/store/w9adgzgdqkwz0w13zxf2fn363v9wcllc-gcc-cross-boot0-4.9.4.drv" [color = magenta]; @@ -16,7 +16,7 @@ digraph "Guix bag" { "/gnu/store/aymf6jlxxpwgr71rkiz24m646nqsyii6-glibc-intermediate-2.24.drv" -> "/gnu/store/jxlg2pb4bhxjld9kimc0vgc1pvgifzag-gcc-bootstrap-0.drv" [color = magenta]; "/gnu/store/aymf6jlxxpwgr71rkiz24m646nqsyii6-glibc-intermediate-2.24.drv" -> "/gnu/store/pmvh852v0x1zbl4r37pcpdqnq6m3bwfk-bootstrap-binaries-0.drv" [color = magenta]; "/gnu/store/aymf6jlxxpwgr71rkiz24m646nqsyii6-glibc-intermediate-2.24.drv" -> "/gnu/store/5syba2bxhh8z79jhq83fzy8fxcx5xb4s-linux-libre-headers-4.4.18.drv" [color = magenta]; - "/gnu/store/wx8ifbb7x22cl4998fyldsr24fcv18j3-texinfo-6.3.drv" [label = "texinfo-6.3", shape = box, fontname = Helvetica]; + "/gnu/store/wx8ifbb7x22cl4998fyldsr24fcv18j3-texinfo-6.3.drv" [label = "texinfo-6.3", shape = box, fontname = "dejavu sans"]; "/gnu/store/wx8ifbb7x22cl4998fyldsr24fcv18j3-texinfo-6.3.drv" -> "/gnu/store/1jpld53g41rzv2bmjp6v9mckmyw75vs3-make-boot0-4.2.1.drv" [color = cyan3]; "/gnu/store/wx8ifbb7x22cl4998fyldsr24fcv18j3-texinfo-6.3.drv" -> "/gnu/store/zpphawi07xidhfs2dja3w7hmnfp99j02-diffutils-boot0-3.5.drv" [color = cyan3]; "/gnu/store/wx8ifbb7x22cl4998fyldsr24fcv18j3-texinfo-6.3.drv" -> "/gnu/store/m4900ip34w4rcgn5620iqdi1wv198d9s-findutils-boot0-4.6.0.drv" [color = cyan3]; @@ -27,25 +27,25 @@ digraph "Guix bag" { "/gnu/store/wx8ifbb7x22cl4998fyldsr24fcv18j3-texinfo-6.3.drv" -> "/gnu/store/pmvh852v0x1zbl4r37pcpdqnq6m3bwfk-bootstrap-binaries-0.drv" [color = cyan3]; "/gnu/store/wx8ifbb7x22cl4998fyldsr24fcv18j3-texinfo-6.3.drv" -> "/gnu/store/pmvh852v0x1zbl4r37pcpdqnq6m3bwfk-bootstrap-binaries-0.drv" [color = cyan3]; "/gnu/store/wx8ifbb7x22cl4998fyldsr24fcv18j3-texinfo-6.3.drv" -> "/gnu/store/ccj3as3258l70lmphi48hs7n017wv75s-perl-boot0-5.24.0.drv" [color = cyan3]; - "/gnu/store/1jpld53g41rzv2bmjp6v9mckmyw75vs3-make-boot0-4.2.1.drv" [label = "make-boot0-4.2.1", shape = box, fontname = Helvetica]; + "/gnu/store/1jpld53g41rzv2bmjp6v9mckmyw75vs3-make-boot0-4.2.1.drv" [label = "make-boot0-4.2.1", shape = box, fontname = "dejavu sans"]; "/gnu/store/1jpld53g41rzv2bmjp6v9mckmyw75vs3-make-boot0-4.2.1.drv" -> "/gnu/store/wda0p45jlbzg6w9j8zxw2sd11n2a4pbv-glibc-bootstrap-0.drv" [color = dimgrey]; "/gnu/store/1jpld53g41rzv2bmjp6v9mckmyw75vs3-make-boot0-4.2.1.drv" -> "/gnu/store/jxlg2pb4bhxjld9kimc0vgc1pvgifzag-gcc-bootstrap-0.drv" [color = dimgrey]; "/gnu/store/1jpld53g41rzv2bmjp6v9mckmyw75vs3-make-boot0-4.2.1.drv" -> "/gnu/store/wv8sf8h4n9s5cdya223iy2wp3alr92x8-binutils-bootstrap-0.drv" [color = dimgrey]; "/gnu/store/1jpld53g41rzv2bmjp6v9mckmyw75vs3-make-boot0-4.2.1.drv" -> "/gnu/store/pmvh852v0x1zbl4r37pcpdqnq6m3bwfk-bootstrap-binaries-0.drv" [color = dimgrey]; "/gnu/store/1jpld53g41rzv2bmjp6v9mckmyw75vs3-make-boot0-4.2.1.drv" -> "/gnu/store/pmvh852v0x1zbl4r37pcpdqnq6m3bwfk-bootstrap-binaries-0.drv" [color = dimgrey]; - "/gnu/store/wda0p45jlbzg6w9j8zxw2sd11n2a4pbv-glibc-bootstrap-0.drv" [label = "glibc-bootstrap-0", shape = box, fontname = Helvetica]; - "/gnu/store/jxlg2pb4bhxjld9kimc0vgc1pvgifzag-gcc-bootstrap-0.drv" [label = "gcc-bootstrap-0", shape = box, fontname = Helvetica]; + "/gnu/store/wda0p45jlbzg6w9j8zxw2sd11n2a4pbv-glibc-bootstrap-0.drv" [label = "glibc-bootstrap-0", shape = box, fontname = "dejavu sans"]; + "/gnu/store/jxlg2pb4bhxjld9kimc0vgc1pvgifzag-gcc-bootstrap-0.drv" [label = "gcc-bootstrap-0", shape = box, fontname = "dejavu sans"]; "/gnu/store/jxlg2pb4bhxjld9kimc0vgc1pvgifzag-gcc-bootstrap-0.drv" -> "/gnu/store/wda0p45jlbzg6w9j8zxw2sd11n2a4pbv-glibc-bootstrap-0.drv" [color = darkseagreen]; - "/gnu/store/wv8sf8h4n9s5cdya223iy2wp3alr92x8-binutils-bootstrap-0.drv" [label = "binutils-bootstrap-0", shape = box, fontname = Helvetica]; - "/gnu/store/pmvh852v0x1zbl4r37pcpdqnq6m3bwfk-bootstrap-binaries-0.drv" [label = "bootstrap-binaries-0", shape = box, fontname = Helvetica]; - "/gnu/store/zpphawi07xidhfs2dja3w7hmnfp99j02-diffutils-boot0-3.5.drv" [label = "diffutils-boot0-3.5", shape = box, fontname = Helvetica]; + "/gnu/store/wv8sf8h4n9s5cdya223iy2wp3alr92x8-binutils-bootstrap-0.drv" [label = "binutils-bootstrap-0", shape = box, fontname = "dejavu sans"]; + "/gnu/store/pmvh852v0x1zbl4r37pcpdqnq6m3bwfk-bootstrap-binaries-0.drv" [label = "bootstrap-binaries-0", shape = box, fontname = "dejavu sans"]; + "/gnu/store/zpphawi07xidhfs2dja3w7hmnfp99j02-diffutils-boot0-3.5.drv" [label = "diffutils-boot0-3.5", shape = box, fontname = "dejavu sans"]; "/gnu/store/zpphawi07xidhfs2dja3w7hmnfp99j02-diffutils-boot0-3.5.drv" -> "/gnu/store/1jpld53g41rzv2bmjp6v9mckmyw75vs3-make-boot0-4.2.1.drv" [color = blue]; "/gnu/store/zpphawi07xidhfs2dja3w7hmnfp99j02-diffutils-boot0-3.5.drv" -> "/gnu/store/wda0p45jlbzg6w9j8zxw2sd11n2a4pbv-glibc-bootstrap-0.drv" [color = blue]; "/gnu/store/zpphawi07xidhfs2dja3w7hmnfp99j02-diffutils-boot0-3.5.drv" -> "/gnu/store/jxlg2pb4bhxjld9kimc0vgc1pvgifzag-gcc-bootstrap-0.drv" [color = blue]; "/gnu/store/zpphawi07xidhfs2dja3w7hmnfp99j02-diffutils-boot0-3.5.drv" -> "/gnu/store/wv8sf8h4n9s5cdya223iy2wp3alr92x8-binutils-bootstrap-0.drv" [color = blue]; "/gnu/store/zpphawi07xidhfs2dja3w7hmnfp99j02-diffutils-boot0-3.5.drv" -> "/gnu/store/pmvh852v0x1zbl4r37pcpdqnq6m3bwfk-bootstrap-binaries-0.drv" [color = blue]; "/gnu/store/zpphawi07xidhfs2dja3w7hmnfp99j02-diffutils-boot0-3.5.drv" -> "/gnu/store/pmvh852v0x1zbl4r37pcpdqnq6m3bwfk-bootstrap-binaries-0.drv" [color = blue]; - "/gnu/store/m4900ip34w4rcgn5620iqdi1wv198d9s-findutils-boot0-4.6.0.drv" [label = "findutils-boot0-4.6.0", shape = box, fontname = Helvetica]; + "/gnu/store/m4900ip34w4rcgn5620iqdi1wv198d9s-findutils-boot0-4.6.0.drv" [label = "findutils-boot0-4.6.0", shape = box, fontname = "dejavu sans"]; "/gnu/store/m4900ip34w4rcgn5620iqdi1wv198d9s-findutils-boot0-4.6.0.drv" -> "/gnu/store/1jpld53g41rzv2bmjp6v9mckmyw75vs3-make-boot0-4.2.1.drv" [color = blue]; "/gnu/store/m4900ip34w4rcgn5620iqdi1wv198d9s-findutils-boot0-4.6.0.drv" -> "/gnu/store/zpphawi07xidhfs2dja3w7hmnfp99j02-diffutils-boot0-3.5.drv" [color = blue]; "/gnu/store/m4900ip34w4rcgn5620iqdi1wv198d9s-findutils-boot0-4.6.0.drv" -> "/gnu/store/wda0p45jlbzg6w9j8zxw2sd11n2a4pbv-glibc-bootstrap-0.drv" [color = blue]; @@ -53,14 +53,14 @@ digraph "Guix bag" { "/gnu/store/m4900ip34w4rcgn5620iqdi1wv198d9s-findutils-boot0-4.6.0.drv" -> "/gnu/store/wv8sf8h4n9s5cdya223iy2wp3alr92x8-binutils-bootstrap-0.drv" [color = blue]; "/gnu/store/m4900ip34w4rcgn5620iqdi1wv198d9s-findutils-boot0-4.6.0.drv" -> "/gnu/store/pmvh852v0x1zbl4r37pcpdqnq6m3bwfk-bootstrap-binaries-0.drv" [color = blue]; "/gnu/store/m4900ip34w4rcgn5620iqdi1wv198d9s-findutils-boot0-4.6.0.drv" -> "/gnu/store/pmvh852v0x1zbl4r37pcpdqnq6m3bwfk-bootstrap-binaries-0.drv" [color = blue]; - "/gnu/store/nwzyr3xskw0ms8cndffsfvhvm5xz96pc-file-boot0-5.28.drv" [label = "file-boot0-5.28", shape = box, fontname = Helvetica]; + "/gnu/store/nwzyr3xskw0ms8cndffsfvhvm5xz96pc-file-boot0-5.28.drv" [label = "file-boot0-5.28", shape = box, fontname = "dejavu sans"]; "/gnu/store/nwzyr3xskw0ms8cndffsfvhvm5xz96pc-file-boot0-5.28.drv" -> "/gnu/store/1jpld53g41rzv2bmjp6v9mckmyw75vs3-make-boot0-4.2.1.drv" [color = darkgoldenrod]; "/gnu/store/nwzyr3xskw0ms8cndffsfvhvm5xz96pc-file-boot0-5.28.drv" -> "/gnu/store/wda0p45jlbzg6w9j8zxw2sd11n2a4pbv-glibc-bootstrap-0.drv" [color = darkgoldenrod]; "/gnu/store/nwzyr3xskw0ms8cndffsfvhvm5xz96pc-file-boot0-5.28.drv" -> "/gnu/store/jxlg2pb4bhxjld9kimc0vgc1pvgifzag-gcc-bootstrap-0.drv" [color = darkgoldenrod]; "/gnu/store/nwzyr3xskw0ms8cndffsfvhvm5xz96pc-file-boot0-5.28.drv" -> "/gnu/store/wv8sf8h4n9s5cdya223iy2wp3alr92x8-binutils-bootstrap-0.drv" [color = darkgoldenrod]; "/gnu/store/nwzyr3xskw0ms8cndffsfvhvm5xz96pc-file-boot0-5.28.drv" -> "/gnu/store/pmvh852v0x1zbl4r37pcpdqnq6m3bwfk-bootstrap-binaries-0.drv" [color = darkgoldenrod]; "/gnu/store/nwzyr3xskw0ms8cndffsfvhvm5xz96pc-file-boot0-5.28.drv" -> "/gnu/store/pmvh852v0x1zbl4r37pcpdqnq6m3bwfk-bootstrap-binaries-0.drv" [color = darkgoldenrod]; - "/gnu/store/ccj3as3258l70lmphi48hs7n017wv75s-perl-boot0-5.24.0.drv" [label = "perl-boot0-5.24.0", shape = box, fontname = Helvetica]; + "/gnu/store/ccj3as3258l70lmphi48hs7n017wv75s-perl-boot0-5.24.0.drv" [label = "perl-boot0-5.24.0", shape = box, fontname = "dejavu sans"]; "/gnu/store/ccj3as3258l70lmphi48hs7n017wv75s-perl-boot0-5.24.0.drv" -> "/gnu/store/1jpld53g41rzv2bmjp6v9mckmyw75vs3-make-boot0-4.2.1.drv" [color = peachpuff4]; "/gnu/store/ccj3as3258l70lmphi48hs7n017wv75s-perl-boot0-5.24.0.drv" -> "/gnu/store/zpphawi07xidhfs2dja3w7hmnfp99j02-diffutils-boot0-3.5.drv" [color = peachpuff4]; "/gnu/store/ccj3as3258l70lmphi48hs7n017wv75s-perl-boot0-5.24.0.drv" -> "/gnu/store/m4900ip34w4rcgn5620iqdi1wv198d9s-findutils-boot0-4.6.0.drv" [color = peachpuff4]; @@ -70,7 +70,7 @@ digraph "Guix bag" { "/gnu/store/ccj3as3258l70lmphi48hs7n017wv75s-perl-boot0-5.24.0.drv" -> "/gnu/store/wv8sf8h4n9s5cdya223iy2wp3alr92x8-binutils-bootstrap-0.drv" [color = peachpuff4]; "/gnu/store/ccj3as3258l70lmphi48hs7n017wv75s-perl-boot0-5.24.0.drv" -> "/gnu/store/pmvh852v0x1zbl4r37pcpdqnq6m3bwfk-bootstrap-binaries-0.drv" [color = peachpuff4]; "/gnu/store/ccj3as3258l70lmphi48hs7n017wv75s-perl-boot0-5.24.0.drv" -> "/gnu/store/pmvh852v0x1zbl4r37pcpdqnq6m3bwfk-bootstrap-binaries-0.drv" [color = peachpuff4]; - "/gnu/store/w9adgzgdqkwz0w13zxf2fn363v9wcllc-gcc-cross-boot0-4.9.4.drv" [label = "gcc-cross-boot0-4.9.4", shape = box, fontname = Helvetica]; + "/gnu/store/w9adgzgdqkwz0w13zxf2fn363v9wcllc-gcc-cross-boot0-4.9.4.drv" [label = "gcc-cross-boot0-4.9.4", shape = box, fontname = "dejavu sans"]; "/gnu/store/w9adgzgdqkwz0w13zxf2fn363v9wcllc-gcc-cross-boot0-4.9.4.drv" -> "/gnu/store/v1v7jp438hc5rpgriwpjp04x049vh0g4-binutils-cross-boot0-2.27.drv" [color = darkseagreen]; "/gnu/store/w9adgzgdqkwz0w13zxf2fn363v9wcllc-gcc-cross-boot0-4.9.4.drv" -> "/gnu/store/wda0p45jlbzg6w9j8zxw2sd11n2a4pbv-glibc-bootstrap-0.drv" [color = darkseagreen]; "/gnu/store/w9adgzgdqkwz0w13zxf2fn363v9wcllc-gcc-cross-boot0-4.9.4.drv" -> "/gnu/store/1jpld53g41rzv2bmjp6v9mckmyw75vs3-make-boot0-4.2.1.drv" [color = darkseagreen]; @@ -81,7 +81,7 @@ digraph "Guix bag" { "/gnu/store/w9adgzgdqkwz0w13zxf2fn363v9wcllc-gcc-cross-boot0-4.9.4.drv" -> "/gnu/store/wv8sf8h4n9s5cdya223iy2wp3alr92x8-binutils-bootstrap-0.drv" [color = darkseagreen]; "/gnu/store/w9adgzgdqkwz0w13zxf2fn363v9wcllc-gcc-cross-boot0-4.9.4.drv" -> "/gnu/store/pmvh852v0x1zbl4r37pcpdqnq6m3bwfk-bootstrap-binaries-0.drv" [color = darkseagreen]; "/gnu/store/w9adgzgdqkwz0w13zxf2fn363v9wcllc-gcc-cross-boot0-4.9.4.drv" -> "/gnu/store/pmvh852v0x1zbl4r37pcpdqnq6m3bwfk-bootstrap-binaries-0.drv" [color = darkseagreen]; - "/gnu/store/v1v7jp438hc5rpgriwpjp04x049vh0g4-binutils-cross-boot0-2.27.drv" [label = "binutils-cross-boot0-2.27", shape = box, fontname = Helvetica]; + "/gnu/store/v1v7jp438hc5rpgriwpjp04x049vh0g4-binutils-cross-boot0-2.27.drv" [label = "binutils-cross-boot0-2.27", shape = box, fontname = "dejavu sans"]; "/gnu/store/v1v7jp438hc5rpgriwpjp04x049vh0g4-binutils-cross-boot0-2.27.drv" -> "/gnu/store/1jpld53g41rzv2bmjp6v9mckmyw75vs3-make-boot0-4.2.1.drv" [color = dimgrey]; "/gnu/store/v1v7jp438hc5rpgriwpjp04x049vh0g4-binutils-cross-boot0-2.27.drv" -> "/gnu/store/zpphawi07xidhfs2dja3w7hmnfp99j02-diffutils-boot0-3.5.drv" [color = dimgrey]; "/gnu/store/v1v7jp438hc5rpgriwpjp04x049vh0g4-binutils-cross-boot0-2.27.drv" -> "/gnu/store/m4900ip34w4rcgn5620iqdi1wv198d9s-findutils-boot0-4.6.0.drv" [color = dimgrey]; @@ -91,12 +91,12 @@ digraph "Guix bag" { "/gnu/store/v1v7jp438hc5rpgriwpjp04x049vh0g4-binutils-cross-boot0-2.27.drv" -> "/gnu/store/wv8sf8h4n9s5cdya223iy2wp3alr92x8-binutils-bootstrap-0.drv" [color = dimgrey]; "/gnu/store/v1v7jp438hc5rpgriwpjp04x049vh0g4-binutils-cross-boot0-2.27.drv" -> "/gnu/store/pmvh852v0x1zbl4r37pcpdqnq6m3bwfk-bootstrap-binaries-0.drv" [color = dimgrey]; "/gnu/store/v1v7jp438hc5rpgriwpjp04x049vh0g4-binutils-cross-boot0-2.27.drv" -> "/gnu/store/pmvh852v0x1zbl4r37pcpdqnq6m3bwfk-bootstrap-binaries-0.drv" [color = dimgrey]; - "/gnu/store/72snmrnjphwjxffknjhzm3xg38wd08al-ld-wrapper-x86_64-guix-linux-gnu-0.drv" [label = "ld-wrapper-x86_64-guix-linux-gnu-0", shape = box, fontname = Helvetica]; + "/gnu/store/72snmrnjphwjxffknjhzm3xg38wd08al-ld-wrapper-x86_64-guix-linux-gnu-0.drv" [label = "ld-wrapper-x86_64-guix-linux-gnu-0", shape = box, fontname = "dejavu sans"]; "/gnu/store/72snmrnjphwjxffknjhzm3xg38wd08al-ld-wrapper-x86_64-guix-linux-gnu-0.drv" -> "/gnu/store/v1v7jp438hc5rpgriwpjp04x049vh0g4-binutils-cross-boot0-2.27.drv" [color = dimgrey]; "/gnu/store/72snmrnjphwjxffknjhzm3xg38wd08al-ld-wrapper-x86_64-guix-linux-gnu-0.drv" -> "/gnu/store/af19ma2vm3qhvh3rw6cdivyp98s18bj3-guile-bootstrap-2.0.drv" [color = dimgrey]; "/gnu/store/72snmrnjphwjxffknjhzm3xg38wd08al-ld-wrapper-x86_64-guix-linux-gnu-0.drv" -> "/gnu/store/pmvh852v0x1zbl4r37pcpdqnq6m3bwfk-bootstrap-binaries-0.drv" [color = dimgrey]; - "/gnu/store/af19ma2vm3qhvh3rw6cdivyp98s18bj3-guile-bootstrap-2.0.drv" [label = "guile-bootstrap-2.0", shape = box, fontname = Helvetica]; - "/gnu/store/5syba2bxhh8z79jhq83fzy8fxcx5xb4s-linux-libre-headers-4.4.18.drv" [label = "linux-libre-headers-4.4.18", shape = box, fontname = Helvetica]; + "/gnu/store/af19ma2vm3qhvh3rw6cdivyp98s18bj3-guile-bootstrap-2.0.drv" [label = "guile-bootstrap-2.0", shape = box, fontname = "dejavu sans"]; + "/gnu/store/5syba2bxhh8z79jhq83fzy8fxcx5xb4s-linux-libre-headers-4.4.18.drv" [label = "linux-libre-headers-4.4.18", shape = box, fontname = "dejavu sans"]; "/gnu/store/5syba2bxhh8z79jhq83fzy8fxcx5xb4s-linux-libre-headers-4.4.18.drv" -> "/gnu/store/ccj3as3258l70lmphi48hs7n017wv75s-perl-boot0-5.24.0.drv" [color = blue]; "/gnu/store/5syba2bxhh8z79jhq83fzy8fxcx5xb4s-linux-libre-headers-4.4.18.drv" -> "/gnu/store/1jpld53g41rzv2bmjp6v9mckmyw75vs3-make-boot0-4.2.1.drv" [color = blue]; "/gnu/store/5syba2bxhh8z79jhq83fzy8fxcx5xb4s-linux-libre-headers-4.4.18.drv" -> "/gnu/store/zpphawi07xidhfs2dja3w7hmnfp99j02-diffutils-boot0-3.5.drv" [color = blue]; diff --git a/doc/images/coreutils-bag-graph.dot b/doc/images/coreutils-bag-graph.dot index 7c90db65d4..4b5d20c8f4 100644 --- a/doc/images/coreutils-bag-graph.dot +++ b/doc/images/coreutils-bag-graph.dot @@ -1,5 +1,5 @@ digraph "Guix bag-emerged" { - "/gnu/store/yv2r96w2dvbb0sjrf9f2imybpnyd616b-coreutils-8.25.drv" [label = "coreutils-8.25", shape = box, fontname = Helvetica]; + "/gnu/store/yv2r96w2dvbb0sjrf9f2imybpnyd616b-coreutils-8.25.drv" [label = "coreutils-8.25", shape = box, fontname = "dejavu sans"]; "/gnu/store/yv2r96w2dvbb0sjrf9f2imybpnyd616b-coreutils-8.25.drv" -> "/gnu/store/jxcx1jcvzxb17dc69sfwb352vgwyr108-perl-5.24.0.drv" [color = cyan3]; "/gnu/store/yv2r96w2dvbb0sjrf9f2imybpnyd616b-coreutils-8.25.drv" -> "/gnu/store/7ijl8lybdx95kndajavdrpz05jdiwy9g-tar-1.29.drv" [color = cyan3]; "/gnu/store/yv2r96w2dvbb0sjrf9f2imybpnyd616b-coreutils-8.25.drv" -> "/gnu/store/0ykf3p023pzfcg2bw8ahjc7cvmc12zjq-gzip-1.8.drv" [color = cyan3]; @@ -23,7 +23,7 @@ digraph "Guix bag-emerged" { "/gnu/store/yv2r96w2dvbb0sjrf9f2imybpnyd616b-coreutils-8.25.drv" -> "/gnu/store/ywmblv73pqa8lqqz368g46ysz65pnm0v-acl-2.2.52.drv" [color = cyan3]; "/gnu/store/yv2r96w2dvbb0sjrf9f2imybpnyd616b-coreutils-8.25.drv" -> "/gnu/store/7gqg2kmrm1bjgphnd70ps5c11gqml571-gmp-6.1.1.drv" [color = cyan3]; "/gnu/store/yv2r96w2dvbb0sjrf9f2imybpnyd616b-coreutils-8.25.drv" -> "/gnu/store/ijv3y5l1fbbzwb77lc867r1qbsf147i8-libcap-2.24.drv" [color = cyan3]; - "/gnu/store/jxcx1jcvzxb17dc69sfwb352vgwyr108-perl-5.24.0.drv" [label = "perl-5.24.0", shape = box, fontname = Helvetica]; + "/gnu/store/jxcx1jcvzxb17dc69sfwb352vgwyr108-perl-5.24.0.drv" [label = "perl-5.24.0", shape = box, fontname = "dejavu sans"]; "/gnu/store/jxcx1jcvzxb17dc69sfwb352vgwyr108-perl-5.24.0.drv" -> "/gnu/store/7ijl8lybdx95kndajavdrpz05jdiwy9g-tar-1.29.drv" [color = blue]; "/gnu/store/jxcx1jcvzxb17dc69sfwb352vgwyr108-perl-5.24.0.drv" -> "/gnu/store/0ykf3p023pzfcg2bw8ahjc7cvmc12zjq-gzip-1.8.drv" [color = blue]; "/gnu/store/jxcx1jcvzxb17dc69sfwb352vgwyr108-perl-5.24.0.drv" -> "/gnu/store/xx3hiqhqn0d94zz7b46hgggwsz3wjiiw-bzip2-1.0.6.drv" [color = blue]; @@ -43,26 +43,26 @@ digraph "Guix bag-emerged" { "/gnu/store/jxcx1jcvzxb17dc69sfwb352vgwyr108-perl-5.24.0.drv" -> "/gnu/store/hv3dl3my12mq0gkwvckmnqccnckn39l0-gcc-4.9.4.drv" [color = blue]; "/gnu/store/jxcx1jcvzxb17dc69sfwb352vgwyr108-perl-5.24.0.drv" -> "/gnu/store/qbfynm50snyn31w2c3paiw2n6wvzksg8-glibc-2.24.drv" [color = blue]; "/gnu/store/jxcx1jcvzxb17dc69sfwb352vgwyr108-perl-5.24.0.drv" -> "/gnu/store/ir0lq2x7h64g2z5mlqvnlysjk2bc9xka-glibc-utf8-locales-2.24.drv" [color = blue]; - "/gnu/store/7ijl8lybdx95kndajavdrpz05jdiwy9g-tar-1.29.drv" [label = "tar-1.29", shape = box, fontname = Helvetica]; - "/gnu/store/0ykf3p023pzfcg2bw8ahjc7cvmc12zjq-gzip-1.8.drv" [label = "gzip-1.8", shape = box, fontname = Helvetica]; - "/gnu/store/xx3hiqhqn0d94zz7b46hgggwsz3wjiiw-bzip2-1.0.6.drv" [label = "bzip2-1.0.6", shape = box, fontname = Helvetica]; - "/gnu/store/kz8rzasivw4aflsv4rll3m539xybf226-xz-5.2.2.drv" [label = "xz-5.2.2", shape = box, fontname = Helvetica]; - "/gnu/store/3pwrlsd23k2h104akxfj3cxhqcp973g9-file-5.28.drv" [label = "file-5.28", shape = box, fontname = Helvetica]; - "/gnu/store/f1ww5vh5abnvr8b24llipm5dl89s5lq2-diffutils-3.5.drv" [label = "diffutils-3.5", shape = box, fontname = Helvetica]; - "/gnu/store/0cbgdhhyh7hsgwq1x54n9vnq99rfjch9-patch-2.7.5.drv" [label = "patch-2.7.5", shape = box, fontname = Helvetica]; - "/gnu/store/8xjnm44dfwwxp90hxq6zhb6qvia7rb3l-sed-4.2.2.drv" [label = "sed-4.2.2", shape = box, fontname = Helvetica]; - "/gnu/store/54wjl6dp6rp47r67f4nyfqyv8nh456yc-findutils-4.6.0.drv" [label = "findutils-4.6.0", shape = box, fontname = Helvetica]; - "/gnu/store/k951w49yw74ikg19l4mmlwfrq9w7a7zd-gawk-4.1.4.drv" [label = "gawk-4.1.4", shape = box, fontname = Helvetica]; - "/gnu/store/n48xdjkvhlhj5mgdzy59n0dpb9vn0v78-grep-2.25.drv" [label = "grep-2.25", shape = box, fontname = Helvetica]; - "/gnu/store/i52csyja3036ns0zj6z85lkgz3wfyym7-coreutils-8.25.drv" [label = "coreutils-8.25", shape = box, fontname = Helvetica]; - "/gnu/store/nv4mnbz3mpd4gv80djk7762wyvxpccqk-make-4.2.1.drv" [label = "make-4.2.1", shape = box, fontname = Helvetica]; - "/gnu/store/2c60vlcvpj5dvmgklajkp7cpynhcqixr-bash-4.4.0.drv" [label = "bash-4.4.0", shape = box, fontname = Helvetica]; - "/gnu/store/zhc5c4s0xvzizpgpq2za6x84vxv57iy6-ld-wrapper-0.drv" [label = "ld-wrapper-0", shape = box, fontname = Helvetica]; - "/gnu/store/9k1js0kalh4s6q4hf0rgg2n0zdyrwi69-binutils-2.27.drv" [label = "binutils-2.27", shape = box, fontname = Helvetica]; - "/gnu/store/hv3dl3my12mq0gkwvckmnqccnckn39l0-gcc-4.9.4.drv" [label = "gcc-4.9.4", shape = box, fontname = Helvetica]; - "/gnu/store/qbfynm50snyn31w2c3paiw2n6wvzksg8-glibc-2.24.drv" [label = "glibc-2.24", shape = box, fontname = Helvetica]; - "/gnu/store/ir0lq2x7h64g2z5mlqvnlysjk2bc9xka-glibc-utf8-locales-2.24.drv" [label = "glibc-utf8-locales-2.24", shape = box, fontname = Helvetica]; - "/gnu/store/ywmblv73pqa8lqqz368g46ysz65pnm0v-acl-2.2.52.drv" [label = "acl-2.2.52", shape = box, fontname = Helvetica]; + "/gnu/store/7ijl8lybdx95kndajavdrpz05jdiwy9g-tar-1.29.drv" [label = "tar-1.29", shape = box, fontname = "dejavu sans"]; + "/gnu/store/0ykf3p023pzfcg2bw8ahjc7cvmc12zjq-gzip-1.8.drv" [label = "gzip-1.8", shape = box, fontname = "dejavu sans"]; + "/gnu/store/xx3hiqhqn0d94zz7b46hgggwsz3wjiiw-bzip2-1.0.6.drv" [label = "bzip2-1.0.6", shape = box, fontname = "dejavu sans"]; + "/gnu/store/kz8rzasivw4aflsv4rll3m539xybf226-xz-5.2.2.drv" [label = "xz-5.2.2", shape = box, fontname = "dejavu sans"]; + "/gnu/store/3pwrlsd23k2h104akxfj3cxhqcp973g9-file-5.28.drv" [label = "file-5.28", shape = box, fontname = "dejavu sans"]; + "/gnu/store/f1ww5vh5abnvr8b24llipm5dl89s5lq2-diffutils-3.5.drv" [label = "diffutils-3.5", shape = box, fontname = "dejavu sans"]; + "/gnu/store/0cbgdhhyh7hsgwq1x54n9vnq99rfjch9-patch-2.7.5.drv" [label = "patch-2.7.5", shape = box, fontname = "dejavu sans"]; + "/gnu/store/8xjnm44dfwwxp90hxq6zhb6qvia7rb3l-sed-4.2.2.drv" [label = "sed-4.2.2", shape = box, fontname = "dejavu sans"]; + "/gnu/store/54wjl6dp6rp47r67f4nyfqyv8nh456yc-findutils-4.6.0.drv" [label = "findutils-4.6.0", shape = box, fontname = "dejavu sans"]; + "/gnu/store/k951w49yw74ikg19l4mmlwfrq9w7a7zd-gawk-4.1.4.drv" [label = "gawk-4.1.4", shape = box, fontname = "dejavu sans"]; + "/gnu/store/n48xdjkvhlhj5mgdzy59n0dpb9vn0v78-grep-2.25.drv" [label = "grep-2.25", shape = box, fontname = "dejavu sans"]; + "/gnu/store/i52csyja3036ns0zj6z85lkgz3wfyym7-coreutils-8.25.drv" [label = "coreutils-8.25", shape = box, fontname = "dejavu sans"]; + "/gnu/store/nv4mnbz3mpd4gv80djk7762wyvxpccqk-make-4.2.1.drv" [label = "make-4.2.1", shape = box, fontname = "dejavu sans"]; + "/gnu/store/2c60vlcvpj5dvmgklajkp7cpynhcqixr-bash-4.4.0.drv" [label = "bash-4.4.0", shape = box, fontname = "dejavu sans"]; + "/gnu/store/zhc5c4s0xvzizpgpq2za6x84vxv57iy6-ld-wrapper-0.drv" [label = "ld-wrapper-0", shape = box, fontname = "dejavu sans"]; + "/gnu/store/9k1js0kalh4s6q4hf0rgg2n0zdyrwi69-binutils-2.27.drv" [label = "binutils-2.27", shape = box, fontname = "dejavu sans"]; + "/gnu/store/hv3dl3my12mq0gkwvckmnqccnckn39l0-gcc-4.9.4.drv" [label = "gcc-4.9.4", shape = box, fontname = "dejavu sans"]; + "/gnu/store/qbfynm50snyn31w2c3paiw2n6wvzksg8-glibc-2.24.drv" [label = "glibc-2.24", shape = box, fontname = "dejavu sans"]; + "/gnu/store/ir0lq2x7h64g2z5mlqvnlysjk2bc9xka-glibc-utf8-locales-2.24.drv" [label = "glibc-utf8-locales-2.24", shape = box, fontname = "dejavu sans"]; + "/gnu/store/ywmblv73pqa8lqqz368g46ysz65pnm0v-acl-2.2.52.drv" [label = "acl-2.2.52", shape = box, fontname = "dejavu sans"]; "/gnu/store/ywmblv73pqa8lqqz368g46ysz65pnm0v-acl-2.2.52.drv" -> "/gnu/store/nw68wjvbw505klgpsavq7dk195wg8ffj-gettext-minimal-0.19.8.1.drv" [color = darkgoldenrod]; "/gnu/store/ywmblv73pqa8lqqz368g46ysz65pnm0v-acl-2.2.52.drv" -> "/gnu/store/jxcx1jcvzxb17dc69sfwb352vgwyr108-perl-5.24.0.drv" [color = darkgoldenrod]; "/gnu/store/ywmblv73pqa8lqqz368g46ysz65pnm0v-acl-2.2.52.drv" -> "/gnu/store/7ijl8lybdx95kndajavdrpz05jdiwy9g-tar-1.29.drv" [color = darkgoldenrod]; @@ -85,7 +85,7 @@ digraph "Guix bag-emerged" { "/gnu/store/ywmblv73pqa8lqqz368g46ysz65pnm0v-acl-2.2.52.drv" -> "/gnu/store/qbfynm50snyn31w2c3paiw2n6wvzksg8-glibc-2.24.drv" [color = darkgoldenrod]; "/gnu/store/ywmblv73pqa8lqqz368g46ysz65pnm0v-acl-2.2.52.drv" -> "/gnu/store/ir0lq2x7h64g2z5mlqvnlysjk2bc9xka-glibc-utf8-locales-2.24.drv" [color = darkgoldenrod]; "/gnu/store/ywmblv73pqa8lqqz368g46ysz65pnm0v-acl-2.2.52.drv" -> "/gnu/store/gplx9i7c01f2r6qvm6d5w60iam73zmin-attr-2.4.47.drv" [color = darkgoldenrod]; - "/gnu/store/nw68wjvbw505klgpsavq7dk195wg8ffj-gettext-minimal-0.19.8.1.drv" [label = "gettext-minimal-0.19.8.1", shape = box, fontname = Helvetica]; + "/gnu/store/nw68wjvbw505klgpsavq7dk195wg8ffj-gettext-minimal-0.19.8.1.drv" [label = "gettext-minimal-0.19.8.1", shape = box, fontname = "dejavu sans"]; "/gnu/store/nw68wjvbw505klgpsavq7dk195wg8ffj-gettext-minimal-0.19.8.1.drv" -> "/gnu/store/7ijl8lybdx95kndajavdrpz05jdiwy9g-tar-1.29.drv" [color = dimgrey]; "/gnu/store/nw68wjvbw505klgpsavq7dk195wg8ffj-gettext-minimal-0.19.8.1.drv" -> "/gnu/store/0ykf3p023pzfcg2bw8ahjc7cvmc12zjq-gzip-1.8.drv" [color = dimgrey]; "/gnu/store/nw68wjvbw505klgpsavq7dk195wg8ffj-gettext-minimal-0.19.8.1.drv" -> "/gnu/store/xx3hiqhqn0d94zz7b46hgggwsz3wjiiw-bzip2-1.0.6.drv" [color = dimgrey]; @@ -106,7 +106,7 @@ digraph "Guix bag-emerged" { "/gnu/store/nw68wjvbw505klgpsavq7dk195wg8ffj-gettext-minimal-0.19.8.1.drv" -> "/gnu/store/qbfynm50snyn31w2c3paiw2n6wvzksg8-glibc-2.24.drv" [color = dimgrey]; "/gnu/store/nw68wjvbw505klgpsavq7dk195wg8ffj-gettext-minimal-0.19.8.1.drv" -> "/gnu/store/ir0lq2x7h64g2z5mlqvnlysjk2bc9xka-glibc-utf8-locales-2.24.drv" [color = dimgrey]; "/gnu/store/nw68wjvbw505klgpsavq7dk195wg8ffj-gettext-minimal-0.19.8.1.drv" -> "/gnu/store/4dql1pzyivg87jwyfmmkwc6jll1vnizc-expat-2.2.0.drv" [color = dimgrey]; - "/gnu/store/4dql1pzyivg87jwyfmmkwc6jll1vnizc-expat-2.2.0.drv" [label = "expat-2.2.0", shape = box, fontname = Helvetica]; + "/gnu/store/4dql1pzyivg87jwyfmmkwc6jll1vnizc-expat-2.2.0.drv" [label = "expat-2.2.0", shape = box, fontname = "dejavu sans"]; "/gnu/store/4dql1pzyivg87jwyfmmkwc6jll1vnizc-expat-2.2.0.drv" -> "/gnu/store/7ijl8lybdx95kndajavdrpz05jdiwy9g-tar-1.29.drv" [color = darkviolet]; "/gnu/store/4dql1pzyivg87jwyfmmkwc6jll1vnizc-expat-2.2.0.drv" -> "/gnu/store/0ykf3p023pzfcg2bw8ahjc7cvmc12zjq-gzip-1.8.drv" [color = darkviolet]; "/gnu/store/4dql1pzyivg87jwyfmmkwc6jll1vnizc-expat-2.2.0.drv" -> "/gnu/store/xx3hiqhqn0d94zz7b46hgggwsz3wjiiw-bzip2-1.0.6.drv" [color = darkviolet]; @@ -126,7 +126,7 @@ digraph "Guix bag-emerged" { "/gnu/store/4dql1pzyivg87jwyfmmkwc6jll1vnizc-expat-2.2.0.drv" -> "/gnu/store/hv3dl3my12mq0gkwvckmnqccnckn39l0-gcc-4.9.4.drv" [color = darkviolet]; "/gnu/store/4dql1pzyivg87jwyfmmkwc6jll1vnizc-expat-2.2.0.drv" -> "/gnu/store/qbfynm50snyn31w2c3paiw2n6wvzksg8-glibc-2.24.drv" [color = darkviolet]; "/gnu/store/4dql1pzyivg87jwyfmmkwc6jll1vnizc-expat-2.2.0.drv" -> "/gnu/store/ir0lq2x7h64g2z5mlqvnlysjk2bc9xka-glibc-utf8-locales-2.24.drv" [color = darkviolet]; - "/gnu/store/gplx9i7c01f2r6qvm6d5w60iam73zmin-attr-2.4.47.drv" [label = "attr-2.4.47", shape = box, fontname = Helvetica]; + "/gnu/store/gplx9i7c01f2r6qvm6d5w60iam73zmin-attr-2.4.47.drv" [label = "attr-2.4.47", shape = box, fontname = "dejavu sans"]; "/gnu/store/gplx9i7c01f2r6qvm6d5w60iam73zmin-attr-2.4.47.drv" -> "/gnu/store/nw68wjvbw505klgpsavq7dk195wg8ffj-gettext-minimal-0.19.8.1.drv" [color = peachpuff4]; "/gnu/store/gplx9i7c01f2r6qvm6d5w60iam73zmin-attr-2.4.47.drv" -> "/gnu/store/7ijl8lybdx95kndajavdrpz05jdiwy9g-tar-1.29.drv" [color = peachpuff4]; "/gnu/store/gplx9i7c01f2r6qvm6d5w60iam73zmin-attr-2.4.47.drv" -> "/gnu/store/0ykf3p023pzfcg2bw8ahjc7cvmc12zjq-gzip-1.8.drv" [color = peachpuff4]; @@ -148,7 +148,7 @@ digraph "Guix bag-emerged" { "/gnu/store/gplx9i7c01f2r6qvm6d5w60iam73zmin-attr-2.4.47.drv" -> "/gnu/store/qbfynm50snyn31w2c3paiw2n6wvzksg8-glibc-2.24.drv" [color = peachpuff4]; "/gnu/store/gplx9i7c01f2r6qvm6d5w60iam73zmin-attr-2.4.47.drv" -> "/gnu/store/ir0lq2x7h64g2z5mlqvnlysjk2bc9xka-glibc-utf8-locales-2.24.drv" [color = peachpuff4]; "/gnu/store/gplx9i7c01f2r6qvm6d5w60iam73zmin-attr-2.4.47.drv" -> "/gnu/store/jxcx1jcvzxb17dc69sfwb352vgwyr108-perl-5.24.0.drv" [color = peachpuff4]; - "/gnu/store/7gqg2kmrm1bjgphnd70ps5c11gqml571-gmp-6.1.1.drv" [label = "gmp-6.1.1", shape = box, fontname = Helvetica]; + "/gnu/store/7gqg2kmrm1bjgphnd70ps5c11gqml571-gmp-6.1.1.drv" [label = "gmp-6.1.1", shape = box, fontname = "dejavu sans"]; "/gnu/store/7gqg2kmrm1bjgphnd70ps5c11gqml571-gmp-6.1.1.drv" -> "/gnu/store/d1n7i55s1zcwzi21pnsxhamk3b1zf61d-m4-1.4.17.drv" [color = darkgoldenrod]; "/gnu/store/7gqg2kmrm1bjgphnd70ps5c11gqml571-gmp-6.1.1.drv" -> "/gnu/store/7ijl8lybdx95kndajavdrpz05jdiwy9g-tar-1.29.drv" [color = darkgoldenrod]; "/gnu/store/7gqg2kmrm1bjgphnd70ps5c11gqml571-gmp-6.1.1.drv" -> "/gnu/store/0ykf3p023pzfcg2bw8ahjc7cvmc12zjq-gzip-1.8.drv" [color = darkgoldenrod]; @@ -169,7 +169,7 @@ digraph "Guix bag-emerged" { "/gnu/store/7gqg2kmrm1bjgphnd70ps5c11gqml571-gmp-6.1.1.drv" -> "/gnu/store/hv3dl3my12mq0gkwvckmnqccnckn39l0-gcc-4.9.4.drv" [color = darkgoldenrod]; "/gnu/store/7gqg2kmrm1bjgphnd70ps5c11gqml571-gmp-6.1.1.drv" -> "/gnu/store/qbfynm50snyn31w2c3paiw2n6wvzksg8-glibc-2.24.drv" [color = darkgoldenrod]; "/gnu/store/7gqg2kmrm1bjgphnd70ps5c11gqml571-gmp-6.1.1.drv" -> "/gnu/store/ir0lq2x7h64g2z5mlqvnlysjk2bc9xka-glibc-utf8-locales-2.24.drv" [color = darkgoldenrod]; - "/gnu/store/d1n7i55s1zcwzi21pnsxhamk3b1zf61d-m4-1.4.17.drv" [label = "m4-1.4.17", shape = box, fontname = Helvetica]; + "/gnu/store/d1n7i55s1zcwzi21pnsxhamk3b1zf61d-m4-1.4.17.drv" [label = "m4-1.4.17", shape = box, fontname = "dejavu sans"]; "/gnu/store/d1n7i55s1zcwzi21pnsxhamk3b1zf61d-m4-1.4.17.drv" -> "/gnu/store/7ijl8lybdx95kndajavdrpz05jdiwy9g-tar-1.29.drv" [color = cyan3]; "/gnu/store/d1n7i55s1zcwzi21pnsxhamk3b1zf61d-m4-1.4.17.drv" -> "/gnu/store/0ykf3p023pzfcg2bw8ahjc7cvmc12zjq-gzip-1.8.drv" [color = cyan3]; "/gnu/store/d1n7i55s1zcwzi21pnsxhamk3b1zf61d-m4-1.4.17.drv" -> "/gnu/store/xx3hiqhqn0d94zz7b46hgggwsz3wjiiw-bzip2-1.0.6.drv" [color = cyan3]; @@ -189,7 +189,7 @@ digraph "Guix bag-emerged" { "/gnu/store/d1n7i55s1zcwzi21pnsxhamk3b1zf61d-m4-1.4.17.drv" -> "/gnu/store/hv3dl3my12mq0gkwvckmnqccnckn39l0-gcc-4.9.4.drv" [color = cyan3]; "/gnu/store/d1n7i55s1zcwzi21pnsxhamk3b1zf61d-m4-1.4.17.drv" -> "/gnu/store/qbfynm50snyn31w2c3paiw2n6wvzksg8-glibc-2.24.drv" [color = cyan3]; "/gnu/store/d1n7i55s1zcwzi21pnsxhamk3b1zf61d-m4-1.4.17.drv" -> "/gnu/store/ir0lq2x7h64g2z5mlqvnlysjk2bc9xka-glibc-utf8-locales-2.24.drv" [color = cyan3]; - "/gnu/store/ijv3y5l1fbbzwb77lc867r1qbsf147i8-libcap-2.24.drv" [label = "libcap-2.24", shape = box, fontname = Helvetica]; + "/gnu/store/ijv3y5l1fbbzwb77lc867r1qbsf147i8-libcap-2.24.drv" [label = "libcap-2.24", shape = box, fontname = "dejavu sans"]; "/gnu/store/ijv3y5l1fbbzwb77lc867r1qbsf147i8-libcap-2.24.drv" -> "/gnu/store/jxcx1jcvzxb17dc69sfwb352vgwyr108-perl-5.24.0.drv" [color = blue]; "/gnu/store/ijv3y5l1fbbzwb77lc867r1qbsf147i8-libcap-2.24.drv" -> "/gnu/store/7ijl8lybdx95kndajavdrpz05jdiwy9g-tar-1.29.drv" [color = blue]; "/gnu/store/ijv3y5l1fbbzwb77lc867r1qbsf147i8-libcap-2.24.drv" -> "/gnu/store/0ykf3p023pzfcg2bw8ahjc7cvmc12zjq-gzip-1.8.drv" [color = blue]; diff --git a/doc/images/coreutils-graph.dot b/doc/images/coreutils-graph.dot index 920e5f2358..ffb62c922d 100644 --- a/doc/images/coreutils-graph.dot +++ b/doc/images/coreutils-graph.dot @@ -1,24 +1,24 @@ digraph "Guix package" { - "72851008" [label = "coreutils-8.25", shape = box, fontname = Helvetica]; + "72851008" [label = "coreutils-8.25", shape = box, fontname = "dejavu sans"]; "72851008" -> "49728512" [color = darkseagreen]; "72851008" -> "74872512" [color = darkseagreen]; "72851008" -> "53180864" [color = darkseagreen]; "72851008" -> "75199232" [color = darkseagreen]; - "49728512" [label = "perl-5.24.0", shape = box, fontname = Helvetica]; - "74872512" [label = "acl-2.2.52", shape = box, fontname = Helvetica]; + "49728512" [label = "perl-5.24.0", shape = box, fontname = "dejavu sans"]; + "74872512" [label = "acl-2.2.52", shape = box, fontname = "dejavu sans"]; "74872512" -> "74873280" [color = red]; "74872512" -> "49728512" [color = red]; "74872512" -> "74872704" [color = red]; - "74873280" [label = "gettext-minimal-0.19.8.1", shape = box, fontname = Helvetica]; + "74873280" [label = "gettext-minimal-0.19.8.1", shape = box, fontname = "dejavu sans"]; "74873280" -> "41550784" [color = cyan3]; - "41550784" [label = "expat-2.2.0", shape = box, fontname = Helvetica]; - "74872704" [label = "attr-2.4.47", shape = box, fontname = Helvetica]; + "41550784" [label = "expat-2.2.0", shape = box, fontname = "dejavu sans"]; + "74872704" [label = "attr-2.4.47", shape = box, fontname = "dejavu sans"]; "74872704" -> "74873280" [color = cyan3]; "74872704" -> "49728512" [color = cyan3]; - "53180864" [label = "gmp-6.1.1", shape = box, fontname = Helvetica]; + "53180864" [label = "gmp-6.1.1", shape = box, fontname = "dejavu sans"]; "53180864" -> "50262784" [color = darkgoldenrod]; - "50262784" [label = "m4-1.4.17", shape = box, fontname = Helvetica]; - "75199232" [label = "libcap-2.24", shape = box, fontname = Helvetica]; + "50262784" [label = "m4-1.4.17", shape = box, fontname = "dejavu sans"]; + "75199232" [label = "libcap-2.24", shape = box, fontname = "dejavu sans"]; "75199232" -> "49728512" [color = blue]; "75199232" -> "74872704" [color = blue]; diff --git a/doc/images/gcc-core-mesboot0-graph.dot b/doc/images/gcc-core-mesboot0-graph.dot index ef4e3a441e..de20dbe223 100644 --- a/doc/images/gcc-core-mesboot0-graph.dot +++ b/doc/images/gcc-core-mesboot0-graph.dot @@ -1,5 +1,5 @@ digraph "Guix package" { - "139803511371136" [label = "gcc-core-mesboot0@2.95.3", shape = box, fontname = sans]; + "139803511371136" [label = "gcc-core-mesboot0@2.95.3", shape = box, fontname = "dejavu sans"]; "139803511371136" -> "139803511371312" [color = red]; "139803511371136" -> "139803511372016" [color = red]; "139803511371136" -> "139803511371488" [color = red]; @@ -9,7 +9,7 @@ digraph "Guix package" { "139803511371136" -> "139803511373600" [color = red]; "139803511371136" -> "139803507105968" [color = red]; "139803511371136" -> "139803749199472" [color = red]; - "139803511371312" [label = "binutils-mesboot0@2.20.1a", shape = box, fontname = sans]; + "139803511371312" [label = "binutils-mesboot0@2.20.1a", shape = box, fontname = "dejavu sans"]; "139803511371312" -> "139803511372016" [color = dimgrey]; "139803511371312" -> "139803511371488" [color = dimgrey]; "139803511371312" -> "139803511371664" [color = dimgrey]; @@ -18,57 +18,57 @@ digraph "Guix package" { "139803511371312" -> "139803511373600" [color = dimgrey]; "139803511371312" -> "139803507105968" [color = dimgrey]; "139803511371312" -> "139803749199472" [color = dimgrey]; - "139803511372016" [label = "gzip-mesboot@1.2.4", shape = box, fontname = sans]; + "139803511372016" [label = "gzip-mesboot@1.2.4", shape = box, fontname = "dejavu sans"]; "139803511372016" -> "139803511372192" [color = magenta]; "139803511372016" -> "139803507105792" [color = magenta]; "139803511372016" -> "139803511373600" [color = magenta]; "139803511372016" -> "139803507105968" [color = magenta]; "139803511372016" -> "139803749199472" [color = magenta]; - "139803511372192" [label = "tcc-boot0@0.9.26-1136-g5bba73cc", shape = box, fontname = sans]; + "139803511372192" [label = "tcc-boot0@0.9.26-1136-g5bba73cc", shape = box, fontname = "dejavu sans"]; "139803511372192" -> "139803511372368" [color = magenta]; "139803511372192" -> "139803511372544" [color = magenta]; "139803511372192" -> "139803507105792" [color = magenta]; "139803511372192" -> "139803511373600" [color = magenta]; "139803511372192" -> "139803507105968" [color = magenta]; "139803511372192" -> "139803749199472" [color = magenta]; - "139803511372368" [label = "mes-boot@0.24", shape = box, fontname = sans]; + "139803511372368" [label = "mes-boot@0.24", shape = box, fontname = "dejavu sans"]; "139803511372368" -> "139803511372544" [color = darkviolet]; "139803511372368" -> "139803507105792" [color = darkviolet]; "139803511372368" -> "139803511373600" [color = darkviolet]; "139803511372368" -> "139803507105968" [color = darkviolet]; "139803511372368" -> "139803749199472" [color = darkviolet]; - "139803511372544" [label = "stage0-posix@1.4", shape = box, fontname = sans]; + "139803511372544" [label = "stage0-posix@1.4", shape = box, fontname = "dejavu sans"]; "139803511372544" -> "139803511373072" [color = peachpuff4]; "139803511372544" -> "139803507105792" [color = peachpuff4]; "139803511372544" -> "139803511373600" [color = peachpuff4]; "139803511372544" -> "139803507105968" [color = peachpuff4]; "139803511372544" -> "139803749199472" [color = peachpuff4]; - "139803511373072" [label = "bootstrap-seeds@1.0.0", shape = ellipse, fontname = sans]; + "139803511373072" [label = "bootstrap-seeds@1.0.0", shape = ellipse, fontname = "dejavu sans"]; "139803511373072" -> "139803507105968" [color = cyan3]; - "139803507105968" [label = "bootar@1b", shape = box, fontname = sans]; + "139803507105968" [label = "bootar@1b", shape = box, fontname = "dejavu sans"]; "139803507105968" -> "139803749199472" [color = dimgrey]; - "139803749199472" [label = "guile-bootstrap@2.0", shape = ellipse, fontname = sans]; - "139803507105792" [label = "gash-boot@0.3.0", shape = box, fontname = sans]; + "139803749199472" [label = "guile-bootstrap@2.0", shape = ellipse, fontname = "dejavu sans"]; + "139803507105792" [label = "gash-boot@0.3.0", shape = box, fontname = "dejavu sans"]; "139803507105792" -> "139803507105968" [color = darkviolet]; "139803507105792" -> "139803749199472" [color = darkviolet]; - "139803511373600" [label = "gash-utils-boot@0.2.0", shape = box, fontname = sans]; + "139803511373600" [label = "gash-utils-boot@0.2.0", shape = box, fontname = "dejavu sans"]; "139803511373600" -> "139803507105968" [color = red]; "139803511373600" -> "139803507105792" [color = red]; "139803511373600" -> "139803749199472" [color = red]; - "139803511371488" [label = "patch-mesboot@2.5.9", shape = box, fontname = sans]; + "139803511371488" [label = "patch-mesboot@2.5.9", shape = box, fontname = "dejavu sans"]; "139803511371488" -> "139803511371840" [color = darkseagreen]; "139803511371488" -> "139803511372192" [color = darkseagreen]; "139803511371488" -> "139803507105792" [color = darkseagreen]; "139803511371488" -> "139803511373600" [color = darkseagreen]; "139803511371488" -> "139803507105968" [color = darkseagreen]; "139803511371488" -> "139803749199472" [color = darkseagreen]; - "139803511371840" [label = "make-mesboot0@3.80", shape = box, fontname = sans]; + "139803511371840" [label = "make-mesboot0@3.80", shape = box, fontname = "dejavu sans"]; "139803511371840" -> "139803511372192" [color = blue]; "139803511371840" -> "139803507105792" [color = blue]; "139803511371840" -> "139803511373600" [color = blue]; "139803511371840" -> "139803507105968" [color = blue]; "139803511371840" -> "139803749199472" [color = blue]; - "139803511371664" [label = "tcc-boot@0.9.27", shape = box, fontname = sans]; + "139803511371664" [label = "tcc-boot@0.9.27", shape = box, fontname = "dejavu sans"]; "139803511371664" -> "139803511371840" [color = peachpuff4]; "139803511371664" -> "139803511372192" [color = peachpuff4]; "139803511371664" -> "139803507105792" [color = peachpuff4]; diff --git a/doc/images/service-graph.dot b/doc/images/service-graph.dot index b7b617abbc..8de91f1adc 100644 --- a/doc/images/service-graph.dot +++ b/doc/images/service-graph.dot @@ -1,12 +1,12 @@ digraph "Service Type Dependencies" { - shepherd [shape = box, fontname = Helvetica]; - pam [shape = box, fontname = Helvetica]; - etc [shape = box, fontname = Helvetica]; - profile [shape = box, fontname = Helvetica]; - accounts [shape = box, fontname = Helvetica]; - activation [shape = box, fontname = Helvetica]; - boot [shape = box, fontname = Helvetica]; - system [shape = house, fontname = Helvetica]; + shepherd [shape = box, fontname = "dejavu sans"]; + pam [shape = box, fontname = "dejavu sans"]; + etc [shape = box, fontname = "dejavu sans"]; + profile [shape = box, fontname = "dejavu sans"]; + accounts [shape = box, fontname = "dejavu sans"]; + activation [shape = box, fontname = "dejavu sans"]; + boot [shape = box, fontname = "dejavu sans"]; + system [shape = house, fontname = "dejavu sans"]; lshd -> shepherd; lshd -> pam; udev -> shepherd; diff --git a/doc/images/shepherd-graph.dot b/doc/images/shepherd-graph.dot index 35b2794689..06b028701b 100644 --- a/doc/images/shepherd-graph.dot +++ b/doc/images/shepherd-graph.dot @@ -1,7 +1,7 @@ digraph "Guix shepherd-service" { - "user-file-systems" [label = "user-file-systems", shape = box, fontname = Helvetica]; + "user-file-systems" [label = "user-file-systems", shape = box, fontname = "dejavu sans"]; "user-processes" -> "user-file-systems" [color = cyan3]; - "user-processes" [label = "user-processes", shape = box, fontname = Helvetica]; + "user-processes" [label = "user-processes", shape = box, fontname = "dejavu sans"]; "nscd" -> "user-processes" [color = magenta]; "guix-daemon" -> "user-processes" [color = blue]; "urandom-seed" -> "user-processes" [color = dimgrey]; @@ -13,45 +13,45 @@ digraph "Guix shepherd-service" { "term-tty2" -> "user-processes" [color = darkviolet]; "term-tty1" -> "user-processes" [color = peachpuff4]; "networking" -> "user-processes" [color = dimgrey]; - "nscd" [label = "nscd", shape = box, fontname = Helvetica]; - "guix-daemon" [label = "guix-daemon", shape = box, fontname = Helvetica]; - "urandom-seed" [label = "urandom-seed", shape = box, fontname = Helvetica]; - "syslogd" [label = "syslogd", shape = box, fontname = Helvetica]; + "nscd" [label = "nscd", shape = box, fontname = "dejavu sans"]; + "guix-daemon" [label = "guix-daemon", shape = box, fontname = "dejavu sans"]; + "urandom-seed" [label = "urandom-seed", shape = box, fontname = "dejavu sans"]; + "syslogd" [label = "syslogd", shape = box, fontname = "dejavu sans"]; "ssh-daemon" -> "syslogd" [color = darkgoldenrod]; - "ssh-daemon" [label = "ssh-daemon", shape = box, fontname = Helvetica]; - "term-tty6" [label = "term-tty6", shape = box, fontname = Helvetica]; + "ssh-daemon" [label = "ssh-daemon", shape = box, fontname = "dejavu sans"]; + "term-tty6" [label = "term-tty6", shape = box, fontname = "dejavu sans"]; "console-font-tty6" -> "term-tty6" [color = darkgoldenrod]; - "console-font-tty6" [label = "console-font-tty6", shape = box, fontname = Helvetica]; - "term-tty5" [label = "term-tty5", shape = box, fontname = Helvetica]; + "console-font-tty6" [label = "console-font-tty6", shape = box, fontname = "dejavu sans"]; + "term-tty5" [label = "term-tty5", shape = box, fontname = "dejavu sans"]; "console-font-tty5" -> "term-tty5" [color = dimgrey]; - "console-font-tty5" [label = "console-font-tty5", shape = box, fontname = Helvetica]; - "term-tty4" [label = "term-tty4", shape = box, fontname = Helvetica]; + "console-font-tty5" [label = "console-font-tty5", shape = box, fontname = "dejavu sans"]; + "term-tty4" [label = "term-tty4", shape = box, fontname = "dejavu sans"]; "console-font-tty4" -> "term-tty4" [color = darkviolet]; - "console-font-tty4" [label = "console-font-tty4", shape = box, fontname = Helvetica]; - "term-tty3" [label = "term-tty3", shape = box, fontname = Helvetica]; + "console-font-tty4" [label = "console-font-tty4", shape = box, fontname = "dejavu sans"]; + "term-tty3" [label = "term-tty3", shape = box, fontname = "dejavu sans"]; "console-font-tty3" -> "term-tty3" [color = peachpuff4]; - "console-font-tty3" [label = "console-font-tty3", shape = box, fontname = Helvetica]; - "term-tty2" [label = "term-tty2", shape = box, fontname = Helvetica]; + "console-font-tty3" [label = "console-font-tty3", shape = box, fontname = "dejavu sans"]; + "term-tty2" [label = "term-tty2", shape = box, fontname = "dejavu sans"]; "console-font-tty2" -> "term-tty2" [color = darkseagreen]; - "console-font-tty2" [label = "console-font-tty2", shape = box, fontname = Helvetica]; - "term-tty1" [label = "term-tty1", shape = box, fontname = Helvetica]; + "console-font-tty2" [label = "console-font-tty2", shape = box, fontname = "dejavu sans"]; + "term-tty1" [label = "term-tty1", shape = box, fontname = "dejavu sans"]; "console-font-tty1" -> "term-tty1" [color = cyan3]; - "console-font-tty1" [label = "console-font-tty1", shape = box, fontname = Helvetica]; - "networking" [label = "networking", shape = box, fontname = Helvetica]; + "console-font-tty1" [label = "console-font-tty1", shape = box, fontname = "dejavu sans"]; + "networking" [label = "networking", shape = box, fontname = "dejavu sans"]; "ssh-daemon" -> "networking" [color = darkgoldenrod]; - "root-file-system" [label = "root-file-system", shape = box, fontname = Helvetica]; + "root-file-system" [label = "root-file-system", shape = box, fontname = "dejavu sans"]; "file-system-/dev/pts" -> "root-file-system" [color = peachpuff4]; "file-system-/dev/shm" -> "root-file-system" [color = darkgoldenrod]; "file-system-/gnu/store" -> "root-file-system" [color = blue]; "user-processes" -> "root-file-system" [color = cyan3]; "udev" -> "root-file-system" [color = darkseagreen]; - "file-system-/dev/pts" [label = "file-system-/dev/pts", shape = box, fontname = Helvetica]; + "file-system-/dev/pts" [label = "file-system-/dev/pts", shape = box, fontname = "dejavu sans"]; "user-processes" -> "file-system-/dev/pts" [color = cyan3]; - "file-system-/dev/shm" [label = "file-system-/dev/shm", shape = box, fontname = Helvetica]; + "file-system-/dev/shm" [label = "file-system-/dev/shm", shape = box, fontname = "dejavu sans"]; "user-processes" -> "file-system-/dev/shm" [color = cyan3]; - "file-system-/gnu/store" [label = "file-system-/gnu/store", shape = box, fontname = Helvetica]; + "file-system-/gnu/store" [label = "file-system-/gnu/store", shape = box, fontname = "dejavu sans"]; "user-processes" -> "file-system-/gnu/store" [color = cyan3]; - "udev" [label = "udev", shape = box, fontname = Helvetica]; + "udev" [label = "udev", shape = box, fontname = "dejavu sans"]; "term-tty6" -> "udev" [color = magenta]; "term-tty5" -> "udev" [color = red]; "term-tty4" -> "udev" [color = darkgoldenrod]; @@ -59,13 +59,13 @@ digraph "Guix shepherd-service" { "term-tty2" -> "udev" [color = darkviolet]; "term-tty1" -> "udev" [color = peachpuff4]; "networking" -> "udev" [color = dimgrey]; - "host-name" [label = "host-name", shape = box, fontname = Helvetica]; + "host-name" [label = "host-name", shape = box, fontname = "dejavu sans"]; "term-tty6" -> "host-name" [color = magenta]; "term-tty5" -> "host-name" [color = red]; "term-tty4" -> "host-name" [color = darkgoldenrod]; "term-tty3" -> "host-name" [color = dimgrey]; "term-tty2" -> "host-name" [color = darkviolet]; "term-tty1" -> "host-name" [color = peachpuff4]; - "loopback" [label = "loopback", shape = box, fontname = Helvetica]; + "loopback" [label = "loopback", shape = box, fontname = "dejavu sans"]; } -- cgit v1.2.3 From 81a4e76d9e840aa501de1237a807aa140a465b54 Mon Sep 17 00:00:00 2001 From: Janneke Nieuwenhuizen Date: Tue, 2 Apr 2024 23:50:20 +0200 Subject: maint: Cater for running `make dist' from a worktree. * Makefile.am (gen-ChangeLog): Check for existance of `.git', rather than it being a directory. (gen-AUTHORS): Likewise. Change-Id: I1b7f8cc147084c1804deb7be9d36e5eeda2599cb --- Makefile.am | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Makefile.am b/Makefile.am index 1c5688ac13..2b5e145095 100644 --- a/Makefile.am +++ b/Makefile.am @@ -972,7 +972,7 @@ gen-tarball-version: echo $(VERSION) > "$(distdir)/.tarball-version" gen-ChangeLog: - $(AM_V_GEN)if test -d .git; then \ + $(AM_V_GEN)if test -e .git; then \ $(top_srcdir)/build-aux/gitlog-to-changelog \ > $(distdir)/ChangeLog.tmp; \ rm -f $(distdir)/ChangeLog; \ @@ -980,7 +980,7 @@ gen-ChangeLog: fi gen-AUTHORS: - $(AM_V_GEN)if test -d .git; then \ + $(AM_V_GEN)if test -e .git; then \ rm -f "$(distdir)/AUTHORS"; \ $(top_builddir)/pre-inst-env "$(GUILE)" \ "$(top_srcdir)/build-aux/generate-authors.scm" \ -- cgit v1.2.3 From b0c33b1997e4a02e048ceac445b156b3a1eed76d Mon Sep 17 00:00:00 2001 From: Janneke Nieuwenhuizen Date: Thu, 27 Feb 2020 18:38:29 +0100 Subject: maint: Use reproducible timestamps and name for tarball. * Makefile.am (gen-tarball-version): Add reproducible timestamp to tarball. (am__tar): Use it in new variable, overriding the Automake default. (GZIP_ENV): New variable, overriding the Automake default. --- Makefile.am | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/Makefile.am b/Makefile.am index 2b5e145095..a5e49bc406 100644 --- a/Makefile.am +++ b/Makefile.am @@ -7,7 +7,7 @@ # Copyright © 2017 Mathieu Othacehe # Copyright © 2017 Leo Famulari # Copyright © 2017 Ricardo Wurmus -# Copyright © 2017, 2020, 2023 Janneke Nieuwenhuizen +# Copyright © 2017, 2020, 2023, 2024 Janneke Nieuwenhuizen # Copyright © 2017 Arun Isaac # Copyright © 2018 Nikita # Copyright © 2018 Julien Lepiller @@ -970,6 +970,7 @@ $(top_srcdir)/.version: config.status gen-tarball-version: echo $(VERSION) > "$(distdir)/.tarball-version" + git show HEAD --format=%ct --no-patch > $(distdir)/.tarball-timestamp gen-ChangeLog: $(AM_V_GEN)if test -e .git; then \ @@ -1002,6 +1003,17 @@ dist-with-updated-version: # Release management. # +# Reproducible tarball +override GZIP_ENV = --best --no-name +# Be friendly to Debian; avoid using EPOCH +override am__tar = $${TAR-tar} \ + --sort=name \ + --mode=go=rX,u+rw,a-s \ + --mtime=@$$(cat "$$tardir"/.tarball-timestamp) \ + --owner=0 --group=0 --numeric-owner \ + -cf - \ + "$$tardir" + releasedir = release-$(PACKAGE_VERSION) PACKAGE_FULL_TARNAME = $(PACKAGE_TARNAME)-$(PACKAGE_VERSION) -- cgit v1.2.3 From 8fdc372841d000a5293f349e1df3d654e85012fa Mon Sep 17 00:00:00 2001 From: Timothy Sample Date: Tue, 10 Dec 2019 14:53:51 -0500 Subject: maint: Generate 'doc/version.texi' reproducibly. * doc/local.mk ($(srcdir)/doc/stamp-vti): New rule (overriding one provided by Automake). Co-authored-by: Janneke Nieuwenhuizen Change-Id: If44965e9a3ecfb45865c58ee7a558951be8d15ae --- doc/local.mk | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/doc/local.mk b/doc/local.mk index 8df003b891..18bd599962 100644 --- a/doc/local.mk +++ b/doc/local.mk @@ -5,6 +5,7 @@ # Copyright © 2016 Taylan Ulrich Bayırlı/Kammer # Copyright © 2016, 2018 Mathieu Lirzin # Copyright © 2018, 2021 Julien Lepiller +# Copyright © 2019 Timothy Sample # # This file is part of GNU Guix. # @@ -247,3 +248,25 @@ $(srcdir)/%D%/guix-daemon.1: guix-daemon$(EXEEXT) endif endif + +# Reproducible tarball + +# Generate 'version.texi' reproducibly using metadata from Git rather than +# using metadata from the filesystem. This is expected to generate warnings: +# +# Makefile:7376: warning: overriding recipe for target 'doc/stamp-vti' +# Makefile:5098: warning: ignoring old recipe for target 'doc/stamp-vti' +$(srcdir)/doc/stamp-vti: $(srcdir)/doc/guix.texi $(top_srcdir)/configure + $$(AM_V_GEN)set -e; \ + export LANG=C LANGUAGE=C LC_ALL=C LC_TIME=C; \ + export TZ=UTC0; \ + timestamp=$$(git log --pretty=format:%ct -n1 -- $< 2>/dev/null \ + || echo $(SOURCE_DATE_EPOCH)) \ + dmy=$$(date --date="@$$timestamp" "+%-d %B %Y"); \ + my=$$(date --date="@$$timestamp" "+%B %Y"); \ + { echo "@set UPDATED $$dmy"; \ + echo "@set UPDATED-MONTH $$my"; \ + echo "@set EDITION $(VERSION)"; \ + echo "@set VERSION $(VERSION)"; } > $@-t; \ + mv $@-t $@; \ + cp $@ $(srcdir)/doc/version.texi -- cgit v1.2.3 From ea23a124ad3e7065fe22844ee637bb9c0ecfef56 Mon Sep 17 00:00:00 2001 From: Janneke Nieuwenhuizen Date: Sat, 9 Sep 2023 13:35:40 +0200 Subject: maint: Help help2man generate reproducible man-pages. * doc/local.mk (SOURCE_DATE_EPOCH): New exported variable. Change-Id: I6636693695d5502657f1475d93d31949e0b0b39d --- doc/local.mk | 3 +++ 1 file changed, 3 insertions(+) diff --git a/doc/local.mk b/doc/local.mk index 18bd599962..a653a32420 100644 --- a/doc/local.mk +++ b/doc/local.mk @@ -224,6 +224,9 @@ gen_man = \ $(HELP2MANFLAGS) HELP2MANFLAGS = --source=GNU --info-page=$(PACKAGE_TARNAME) +# help2man reproducibility +SOURCE_DATE_EPOCH = $(shell git show HEAD --format=%ct --no-patch 2>/dev/null || echo 1) +export SOURCE_DATE_EPOCH $(srcdir)/%D%/guix.1: scripts/guix.in $(sub_commands_mans) -$(AM_V_HELP2MAN)$(gen_man) --output="$@" `basename "$@" .1` -- cgit v1.2.3 From b850d77e1149274882042d8e75da6715c260f618 Mon Sep 17 00:00:00 2001 From: Janneke Nieuwenhuizen Date: Wed, 3 Apr 2024 23:45:59 +0200 Subject: maint: Generate AUTHORS and ChangeLog reproducibly. * Makefile.am (gen-ChangeLog): Set LC_ALL=en_US.UTF-8 TZ=UTC0. (gen-AUTHORS): Likewise. Change-Id: I109ceffdf07b8dde6385b6b509366c47564c9f31 --- Makefile.am | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/Makefile.am b/Makefile.am index a5e49bc406..7af88b2988 100644 --- a/Makefile.am +++ b/Makefile.am @@ -974,6 +974,8 @@ gen-tarball-version: gen-ChangeLog: $(AM_V_GEN)if test -e .git; then \ + export LC_ALL=en_US.UTF-8; \ + export TZ=UTC0; \ $(top_srcdir)/build-aux/gitlog-to-changelog \ > $(distdir)/ChangeLog.tmp; \ rm -f $(distdir)/ChangeLog; \ @@ -983,6 +985,8 @@ gen-ChangeLog: gen-AUTHORS: $(AM_V_GEN)if test -e .git; then \ rm -f "$(distdir)/AUTHORS"; \ + export LC_ALL=en_US.UTF-8; \ + export TZ=UTC0; \ $(top_builddir)/pre-inst-env "$(GUILE)" \ "$(top_srcdir)/build-aux/generate-authors.scm" \ "$(top_srcdir)" "$(distdir)/AUTHORS"; \ -- cgit v1.2.3 From b4d2838d511f8fc94458358938493b5a1646d8f7 Mon Sep 17 00:00:00 2001 From: Janneke Nieuwenhuizen Date: Tue, 2 Apr 2024 22:00:46 +0200 Subject: maint: Generate 'doc/version-LANG.texi' reproducibly. * doc/local.mk ($(srcdir)/doc/stamp-vti): Change rule into... (version.texi-from-git): ...this new function. Call it with vti,guix.texi,; and for all MANUAL_LANGUAGES with $(i),po/doc/guix-manual.$(lang).po, -$(lang.po). Change-Id: Ia8df618178066cad320eecea0299337224e23a73 --- doc/local.mk | 45 +++++++++++++++++++++++++++++---------------- 1 file changed, 29 insertions(+), 16 deletions(-) diff --git a/doc/local.mk b/doc/local.mk index a653a32420..6a6864a7f0 100644 --- a/doc/local.mk +++ b/doc/local.mk @@ -6,6 +6,7 @@ # Copyright © 2016, 2018 Mathieu Lirzin # Copyright © 2018, 2021 Julien Lepiller # Copyright © 2019 Timothy Sample +# Copyright © 2024 Janneke Nieuwenhuizen # # This file is part of GNU Guix. # @@ -254,22 +255,34 @@ endif # Reproducible tarball -# Generate 'version.texi' reproducibly using metadata from Git rather than -# using metadata from the filesystem. This is expected to generate warnings: +# Define a rule to build `version[LANG].texi' reproducibly using metadata from +# Git rather than using metadata from the filesystem. +define version.texi-from-git +$(srcdir)/doc/stamp-$(1): $(srcdir)/$(2) $(top_srcdir)/configure + $$(AM_V_GEN)set -e; \ + export LANG=C LANGUAGE=C LC_ALL=C LC_TIME=C; \ + export TZ=UTC0; \ + timestamp="$$$$(git log --pretty=format:%ct -n1 -- "$$<" \ + 2>/dev/null \ + || echo $$(SOURCE_DATE_EPOCH))" \ + dmy=$$$$(date --date="@$$$$timestamp" "+%-d %B %Y"); \ + my=$$$$(date --date="@$$$$timestamp" "+%B %Y"); \ + { echo "@set UPDATED $$$$dmy"; \ + echo "@set UPDATED-MONTH $$$$my"; \ + echo "@set EDITION $$$(VERSION)"; \ + echo "@set VERSION $$$(VERSION)"; } > "$$@-t"; \ + mv "$$@-t" "$$@"; \ + cp -p "$$@" "$$(srcdir)/doc/version$(3).texi" +endef + +# Generate rules for stamp-vti and stamp-N that create version.texi and +# version-LANG.texi to override the Autotools versions that use timestamps +# embedded in the file-system. These are expected to generate warnings: # # Makefile:7376: warning: overriding recipe for target 'doc/stamp-vti' # Makefile:5098: warning: ignoring old recipe for target 'doc/stamp-vti' -$(srcdir)/doc/stamp-vti: $(srcdir)/doc/guix.texi $(top_srcdir)/configure - $$(AM_V_GEN)set -e; \ - export LANG=C LANGUAGE=C LC_ALL=C LC_TIME=C; \ - export TZ=UTC0; \ - timestamp=$$(git log --pretty=format:%ct -n1 -- $< 2>/dev/null \ - || echo $(SOURCE_DATE_EPOCH)) \ - dmy=$$(date --date="@$$timestamp" "+%-d %B %Y"); \ - my=$$(date --date="@$$timestamp" "+%B %Y"); \ - { echo "@set UPDATED $$dmy"; \ - echo "@set UPDATED-MONTH $$my"; \ - echo "@set EDITION $(VERSION)"; \ - echo "@set VERSION $(VERSION)"; } > $@-t; \ - mv $@-t $@; \ - cp $@ $(srcdir)/doc/version.texi +i:=0 +$(eval $(call version.texi-from-git,vti,doc/guix.texi,)) +$(foreach lang, $(MANUAL_LANGUAGES), \ + $(eval i=$(shell echo $$(($(i)+1)))) \ + $(eval $(call version.texi-from-git,$(i),po/doc/guix-manual.$(lang).po,-$(lang)))) -- cgit v1.2.3 From 6c63c366776643e5831c50a2b7e29bad93273327 Mon Sep 17 00:00:00 2001 From: Janneke Nieuwenhuizen Date: Fri, 5 Apr 2024 23:21:02 +0200 Subject: maint: Use xgettext.scm wrapper to create .PO files reproducibly. * build-aux/xgettext.scm: New script. * po/guix/Makevars (XGETTEXT): Set it. (XGETTEXT_OPTIONS): Add --xgettext option to `real' xgettext. * po/packages/Makevars (XGETTEXT): Set it. (XGETTEXT_OPTIONS): Add --xgettext option to `real' xgettext. Change-Id: I71b6b843970090f765f46ac346b92a346560e3f0 --- build-aux/xgettext.scm | 87 ++++++++++++++++++++++++++++++++++++++++++++++++++ po/guix/Makevars | 7 +++- po/packages/Makevars | 10 ++++-- 3 files changed, 101 insertions(+), 3 deletions(-) create mode 100755 build-aux/xgettext.scm diff --git a/build-aux/xgettext.scm b/build-aux/xgettext.scm new file mode 100755 index 0000000000..e8a970f251 --- /dev/null +++ b/build-aux/xgettext.scm @@ -0,0 +1,87 @@ +#! /bin/sh +# -*-scheme-*- +build_aux=$(dirname $0) +srcdir=$build_aux/.. +exec guile --no-auto-compile -L $srcdir -C $srcdir -e main -s "$0" "$@" +!# + +;;; Copyright © 2024 Janneke Nieuwenhuizen +;;; +;;; This program is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; This program is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with this program. If not, see . + +;;;; Commentary: +;;; +;;; This script provides an xgettext wrapper to (re)set POT-Creation-Date from +;;; a Git timestamp. Test doing something like: +;;; +;;; build-aux/xgettext.scm --files-from=po/guix/POTFILES.in --default-domain=test +;;; +;;;; Code: + +(use-modules (srfi srfi-1) + (srfi srfi-26) + (ice-9 curried-definitions) + (ice-9 match) + (ice-9 popen) + (ice-9 rdelim) + (guix build utils)) + +(define ((option? name) option) + (string-prefix? name option)) + +(define (get-option args name) + (let ((option (find (option? name) args))) + (and option + (substring option (string-length name))))) + +(define (pipe-command command) + (let* ((port (apply open-pipe* OPEN_READ command)) + (output (read-string port))) + (close-port port) + output)) + + +;;; +;;; Entry point. +;;; +(define (main args) + ;; Cater for being run in a container. + (setenv "LC_ALL" "en_US.UTF-8") + (setenv "TZ" "UTC0") + (fluid-set! %default-port-encoding #f) + (let* ((files-from (get-option args "--files-from=")) + (default-domain (get-option args "--default-domain=")) + (directory (or (get-option args "--directory=") ".")) + (xgettext (or (get-option args "--xgettext=") "xgettext")) + (xgettext-args (filter (negate (option? "--xgettext=")) args)) + (command (match xgettext-args + ((xgettext.scm args ...) + `(,xgettext ,@args)))) + (result (apply system* command)) + (status (/ result 256))) + (if (or (not (zero? status)) + (not files-from)) + (exit status) + (let* ((text (with-input-from-file files-from read-string)) + (lines (string-split text #\newline)) + (files (filter (negate (cute string-prefix? "#" <>)) lines)) + (files (map (cute string-append directory "/" <>) files)) + (git-command `("git" "log" "--pretty=format:%ci" "-n1" ,@files)) + (timestamp (pipe-command git-command)) + (po-file (string-append default-domain ".po"))) + (when (string-null? timestamp) + (exit 1)) + (substitute* po-file + (("(\"POT-Creation-Date: )[^\\]*" all header) + (string-append header timestamp))))))) diff --git a/po/guix/Makevars b/po/guix/Makevars index 88a4e8c7bc..4cfd0f431d 100644 --- a/po/guix/Makevars +++ b/po/guix/Makevars @@ -5,6 +5,10 @@ DOMAIN = guix subdir = po/guix top_builddir = ../.. +# We use our xgettext.scm wrapper to produce .PO files reproducibly using a +# timestamp from Git. +XGETTEXT:=$(top_srcdir)/build-aux/xgettext.scm + # These options get passed to xgettext. We want to catch standard # gettext uses, and SRFI-35 error condition messages. In C++ code # we use 'n_' instead of the more usual 'N_' for no-ops. @@ -14,7 +18,8 @@ XGETTEXT_OPTIONS = \ --keyword=message \ --keyword=description \ --keyword=synopsis \ - --keyword=n_ + --keyword=n_ \ + --xgettext=$(XGETTEXT_) COPYRIGHT_HOLDER = the authors of Guix (msgids) diff --git a/po/packages/Makevars b/po/packages/Makevars index 65912786d8..0ba4f1ba7e 100644 --- a/po/packages/Makevars +++ b/po/packages/Makevars @@ -6,12 +6,18 @@ DOMAIN = guix-packages subdir = po/packages top_builddir = ../.. +# We use our xgettext.scm wrapper to produce .PO files reproducibly using a +# timestamp from Git. The `real' xgettext is passed as an option to +# xgettext.scm +XGETTEXT:=$(top_srcdir)/build-aux/xgettext.scm + # These options get passed to xgettext. We want to catch exclusively package # synopses and descriptions. XGETTEXT_OPTIONS = \ --language=Scheme --from-code=UTF-8 \ - --keyword=synopsis --keyword=description \ - --keyword=output-synopsis:2 + --keyword=synopsis --keyword=description \ + --keyword=output-synopsis:2 \ + --xgettext=$(XGETTEXT_) COPYRIGHT_HOLDER = the authors of Guix (msgids) -- cgit v1.2.3 From ecf0e22dcfbb8fe15898ea001471d8e3f6dd36ee Mon Sep 17 00:00:00 2001 From: Janneke Nieuwenhuizen Date: Wed, 3 Apr 2024 08:08:12 +0200 Subject: maint: Use reproducible Git timestamp for POT-Creation-Date. * po/doc/local.mk (%D%/%.pot): Replace POT-Creation-Date using timestamp from Git. (%D%/guix-manual.pot): Likewise. Change-Id: I1b7f8cc147084c1804deb7be9d36e5eeda2599cb --- po/doc/local.mk | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/po/doc/local.mk b/po/doc/local.mk index dd6ba30133..77ec4721e3 100644 --- a/po/doc/local.mk +++ b/po/doc/local.mk @@ -1,6 +1,7 @@ # GNU Guix --- Functional package management for GNU # Copyright © 2018 Julien Lepiller # Copyright © 2021 Maxim Cournoyer +# Copyright © 2024 Janneke Nieuwenhuizen # # This file is part of GNU Guix. # @@ -44,12 +45,19 @@ POT_OPTIONS = \ --msgid-bugs-address "bug-guix@gnu.org" %D%/%.pot: $(srcdir)/doc/%.texi - $(AM_V_PO4A)$(PO4A_UPDATEPO) -M UTF-8 -f texinfo -m "$<" \ - -p "$@" $(POT_OPTIONS) && \ - touch $@ + $(AM_V_PO4A)$(PO4A_UPDATEPO) -M UTF-8 -f texinfo -m "$<" \ + -p "$@-t" $(POT_OPTIONS) + date="$$(git log --pretty=format:%ci -n 1 -- $< 2>/dev/null \ + || echo $(SOURCE_DATE_EPOCH))" \ + sed -ri -e "s,^(.POT-Creation-Date: )[^\]*,\1$$date," "$@-t" + mv "$@-t" "$@" %D%/guix-manual.pot: %D%/guix.pot %D%/contributing.pot - msgcat $^ > $@ + msgcat $^ > "$@-t" + date="$$(git log --pretty=format:%ci -n 1 -- $< 2>/dev/null \ + || echo $(SOURCE_DATE_EPOCH))" \ + sed -ri "s,^(.POT-Creation-Date: )[^\]*,\1$$date," "$@-t" + mv "$@-t" "$@" doc-pot-update: %D%/guix-manual.pot %D%/guix-cookbook.pot .PHONY: doc-pot-update -- cgit v1.2.3 From 4099b12f9f4561d0494c7765b484b53d9073b394 Mon Sep 17 00:00:00 2001 From: Janneke Nieuwenhuizen Date: Sat, 6 Apr 2024 11:34:49 +0200 Subject: maint: Avoid EPS generation to fail silently, ensure reproducibility. Currently, Graphviz' dot does not insert a %%CreationDate. ImageMagick's convert on PNG->EPS does insert a %%CreationDate but it respects SOURCE_DATE_EPOCH. * doc/local.mk (.png.eps): Split single shell command into separate recipe lines, prefixed by $(AM_V_at). (.dot.png): Likewise. Check that generated EPS file has no %%CreationDate. Change-Id: I5a03485c19c72f0c46411815c51290e52a8e5399 --- doc/local.mk | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/doc/local.mk b/doc/local.mk index 6a6864a7f0..19359760cc 100644 --- a/doc/local.mk +++ b/doc/local.mk @@ -152,12 +152,13 @@ DOT_OPTIONS = \ mv "$(srcdir)/$@.tmp" "$(srcdir)/$@" .dot.eps: - $(AM_V_DOT)$(DOT) -Teps $(DOT_OPTIONS) < "$<" > "$(srcdir)/$@.tmp"; \ - mv "$(srcdir)/$@.tmp" "$(srcdir)/$@" + $(AM_V_DOT)$(DOT) -Teps $(DOT_OPTIONS) < "$<" > "$(srcdir)/$@.tmp" + $(AM_v_at)! grep -q %%CreationDate "$(srcdir)/$@.tmp" + $(AM_V_at)mv "$(srcdir)/$@.tmp" "$@" .png.eps: - $(AM_V_GEN)convert "$<" "$@-tmp.eps"; \ - mv "$@-tmp.eps" "$@" + $(AM_V_GEN)convert "$<" "$@-tmp.eps" + $(AM_V_at)mv "$@-tmp.eps" "$@" # We cannot add new dependencies to `%D%/guix.pdf' & co. (info "(automake) # Extending"). Using the `-local' rules is imperfect, because they may be -- cgit v1.2.3 From abc47993eadf05deb34d23a78d3480bc934975c4 Mon Sep 17 00:00:00 2001 From: Janneke Nieuwenhuizen Date: Sat, 6 Apr 2024 14:08:22 +0200 Subject: maint: Avoid PNG and PDF generation to fail silently. * doc/local.mk (.dot.png): Split single shell command into separate recipe lines, prefixed by $(AM_V_at). (.dot.pdf): Likewise. Change-Id: I41fb856bb73f947abd91361ed203132e939f3897 --- doc/local.mk | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/doc/local.mk b/doc/local.mk index 19359760cc..d049dbf6d1 100644 --- a/doc/local.mk +++ b/doc/local.mk @@ -144,12 +144,12 @@ DOT_OPTIONS = \ -Nfontsize=9 -Nheight=.1 -Nwidth=.1 .dot.png: - $(AM_V_DOT)$(DOT) -Tpng $(DOT_OPTIONS) < "$<" > "$(srcdir)/$@.tmp"; \ - mv "$(srcdir)/$@.tmp" "$(srcdir)/$@" + $(AM_V_DOT)$(DOT) -Tpng $(DOT_OPTIONS) < "$<" > "$(srcdir)/$@.tmp" + $(AM_V_at)mv "$(srcdir)/$@.tmp" "$(srcdir)/$@" .dot.pdf: - $(AM_V_DOT)$(DOT) -Tpdf $(DOT_OPTIONS) < "$<" > "$(srcdir)/$@.tmp"; \ - mv "$(srcdir)/$@.tmp" "$(srcdir)/$@" + $(AM_V_DOT)$(DOT) -Tpdf $(DOT_OPTIONS) < "$<" > "$(srcdir)/$@.tmp" + $(AM_V_at)mv "$(srcdir)/$@.tmp" "$(srcdir)/$@" .dot.eps: $(AM_V_DOT)$(DOT) -Teps $(DOT_OPTIONS) < "$<" > "$(srcdir)/$@.tmp" -- cgit v1.2.3 From 3d8d0642da5e5982e17122ab35774f9d5dfca79b Mon Sep 17 00:00:00 2001 From: Janneke Nieuwenhuizen Date: Sat, 6 Apr 2024 19:20:33 +0200 Subject: maint: Reset CreationDate metadata on generated PDFs. * doc/local.mk (.dot.pdf): Create PDF in UTC0 and reset CreationDate metadata. Change-Id: I3873ecdeec781c30874d53d032406cbe23922a25 --- doc/local.mk | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/doc/local.mk b/doc/local.mk index d049dbf6d1..d18cdf3e5f 100644 --- a/doc/local.mk +++ b/doc/local.mk @@ -148,7 +148,11 @@ DOT_OPTIONS = \ $(AM_V_at)mv "$(srcdir)/$@.tmp" "$(srcdir)/$@" .dot.pdf: - $(AM_V_DOT)$(DOT) -Tpdf $(DOT_OPTIONS) < "$<" > "$(srcdir)/$@.tmp" + $(AM_V_DOT)set -e; export TZ=UTC0; \ + $(DOT) -Tpdf $(DOT_OPTIONS) < "$<" > "$(srcdir)/$@.tmp" + $(AM_V_at)sed -ri \ + -e 's,(/CreationDate \(D:).*\),\119700101000000),' \ + "$(srcdir)/$@.tmp" $(AM_V_at)mv "$(srcdir)/$@.tmp" "$(srcdir)/$@" .dot.eps: -- cgit v1.2.3 From 416f11f1d4b2e12d8db2687e753d760f148cfc2d Mon Sep 17 00:00:00 2001 From: Janneke Nieuwenhuizen Date: Fri, 8 Sep 2023 10:46:30 +0200 Subject: maint: Ensure generated file reproducibility for dist. * doc/local.mk (doc-clean): New target. (DIST_CONFIGURE_FLAGS): New variable. (auto-clean): Use them in new target. * Makefile.am (dist-doc-pot-update): Use it in new target. (dist): Change to depend on it to clean possibly stale files, instead of doc-pot-update directly. Add a toplevel check to ensure that Autotools cache is up to date. Change-Id: I2ff2d88db9fe1e708ab65e33e1f3d7ecee882cb4 --- Makefile.am | 28 +++++++++++++++++++++++++--- doc/local.mk | 35 +++++++++++++++++++++++++++++++++++ 2 files changed, 60 insertions(+), 3 deletions(-) diff --git a/Makefile.am b/Makefile.am index 7af88b2988..5f0809ee00 100644 --- a/Makefile.am +++ b/Makefile.am @@ -954,9 +954,31 @@ guix-binary.%.tar.xz: cp "$$tarball" "$@.tmp" ; mv "$@.tmp" "$@" -# The dependency on doc-pot-update is to generate the .pot files, which are -# not checked in. -dist: doc-pot-update +# Assert that Autotools cache is up to date with Git, by checking +# PACKAGE_VERSION against HEAD. Indented to get past Automake. + ifeq ($(MAKECMDGOALS),dist) + git_version = $(shell build-aux/git-version-gen .tarball-version) + ifneq ($(PACKAGE_VERSION),$(git_version)) + $(warning Autotools cache out of date.) + $(info Autotools cache version: $(PACKAGE_VERSION).) + $(info Git version: $(git_version).) + $(info Please run ./bootstrap && ./configure $(DIST_CONFIGURE_FLAGS)) + ifneq ($(GUIX_ALLOW_IRREPRODUCIBLE_TARBALL),yes) + $(error Cannot create reproducible tarball) + else + $(warning Tarball will be irreproducible; distdir will not get removed!) + endif + endif + endif + +# The dependency on dist-doc-pot-update is to clean possibly stale doc and po +# files and only then generate the .pot files, which are not checked in. +dist: dist-doc-pot-update +dist-doc-pot-update: auto-clean + $(MAKE) guile$(EXEEXT) + $(MAKE) -C po/guix all + $(MAKE) -C po/packages all + $(MAKE) doc-pot-update dist-hook: gen-ChangeLog gen-AUTHORS gen-tarball-version dist-hook: assert-no-store-file-names diff --git a/doc/local.mk b/doc/local.mk index d18cdf3e5f..130f40ece9 100644 --- a/doc/local.mk +++ b/doc/local.mk @@ -291,3 +291,38 @@ $(eval $(call version.texi-from-git,vti,doc/guix.texi,)) $(foreach lang, $(MANUAL_LANGUAGES), \ $(eval i=$(shell echo $$(($(i)+1)))) \ $(eval $(call version.texi-from-git,$(i),po/doc/guix-manual.$(lang).po,-$(lang)))) + +DIST_CONFIGURE_FLAGS = \ + --localstatedir=/var \ + --sysconfdir=/etc + +# Delete all Autotools-generated files and rerun configure to ensure +# a clean cache and distributing reproducible versions. +auto-clean: maintainer-clean-vti doc-clean + rm -f ABOUT-NLS INSTALL + rm -f aclocal.m4 configure libtool Makefile.in + if test -e .git; then \ + git clean -fdx -- '.am*' build-aux m4 po; \ + else \ + rm -rf .am*; \ + $(MAKE) -C po/guix maintainer-clean; \ + $(MAKE) -C po/packages maintainer-clean; \ + fi + rm -f guile + rm -f guix-daemon nix/nix-daemon/guix_daemon-guix-daemon.o +# Automake fails if guix-cookbook-LANG.texi stubs are missing; running +# autoreconf -vif is not enough. + ./bootstrap +# The dependency chain for the guix-cookbook-LANG.texi was cut on purpose; +# they must be deleted to ensure a rebuild. + rm -f $(filter-out %D%/guix.texi %D%/guix-cookbook.texi, $(info_TEXINFOS)) + ./configure $(DIST_CONFIGURE_FLAGS) + +# Delete all generated doc files to ensure a clean cache and distributing +# reproducible versions. +doc-clean: + rm -f $(srcdir)/doc/*.1 + rm -f $(srcdir)/doc/stamp* + rm -f $(DOT_FILES:%.dot=%.png) + rm -f $(DOT_VECTOR_GRAPHICS) + rm -f doc/images/coreutils-size-map.eps -- cgit v1.2.3 From e5dda412c2e28fb65a549824f492895e72c33813 Mon Sep 17 00:00:00 2001 From: Janneke Nieuwenhuizen Date: Sun, 14 Apr 2024 11:37:39 +0200 Subject: maint: Fix header. * build-aux/xgettext.scm: Add `Guix' parts to header. Change-Id: I4fb03b8b0588f0482bcb1a095518b6751d111031 --- build-aux/xgettext.scm | 3 +++ 1 file changed, 3 insertions(+) diff --git a/build-aux/xgettext.scm b/build-aux/xgettext.scm index e8a970f251..44d30b8149 100755 --- a/build-aux/xgettext.scm +++ b/build-aux/xgettext.scm @@ -5,8 +5,11 @@ exec guile --no-auto-compile -L $srcdir -C $srcdir -e main -s "$0" "$@" !# +;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2024 Janneke Nieuwenhuizen ;;; +;;; This file is part of GNU Guix. +;;; ;;; This program is free software; you can redistribute it and/or modify it ;;; under the terms of the GNU General Public License as published by ;;; the Free Software Foundation; either version 3 of the License, or (at -- cgit v1.2.3 From 1c5e419ee7b64e5fc729d6c0c8b4aea61e8d5a46 Mon Sep 17 00:00:00 2001 From: "Artyom V. Poptsov" Date: Sun, 14 Apr 2024 11:24:10 +0300 Subject: gnu: go-go-uber-org-fx: Fix repository URI. * gnu/packages/golang-xyz.scm (go-go-uber-org-fx) [source]: Fix repository URI. Change-Id: I82b340a094efa9157bc56ae851ad94c9b0ffaff6 Signed-off-by: Sharlatan Hellseher --- gnu/packages/golang-xyz.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/golang-xyz.scm b/gnu/packages/golang-xyz.scm index 96d1be1a77..94451b68df 100644 --- a/gnu/packages/golang-xyz.scm +++ b/gnu/packages/golang-xyz.scm @@ -3271,7 +3271,7 @@ (define-public go-go-uber-org-fx (origin (method git-fetch) (uri (git-reference - (url "https://pkg.go.dev/go.uber.org/fx") + (url "https://github.com/uber-go/fx") (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 -- cgit v1.2.3 From e48d51faf0c1e17e4779a75f1a8ae2f6a2ce5bd2 Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Sun, 14 Apr 2024 10:31:12 +0100 Subject: gnu: go-go-uber-org-fx: Fix home-page, again. Amend lint warning: URI https://go.uber.org/fx returned suspiciously small file (549 bytes). * gnu/packages/golang-xyz.scm (go-go-uber-org-fx): [home-page]: Swap to redirected URL. Change-Id: Ica2a4580dde04ac7242e92bcd0f740bfbd730b1d --- gnu/packages/golang-xyz.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/golang-xyz.scm b/gnu/packages/golang-xyz.scm index 94451b68df..91ec868a58 100644 --- a/gnu/packages/golang-xyz.scm +++ b/gnu/packages/golang-xyz.scm @@ -3289,7 +3289,7 @@ (define-public go-go-uber-org-fx go-go-uber-org-multierr go-go-uber-org-zap go-golang-org-x-sys)) - (home-page "https://go.uber.org/fx") + (home-page "https://pkg.go.dev/go.uber.org/fx") (synopsis "Dependency injection based application framework for Golang") (description "Package @code{fx} is a framework that makes it easy to build -- cgit v1.2.3 From 1cfaa79e6d90eb3eaa476a15abc2c4ca8ee78e03 Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Sun, 14 Apr 2024 11:27:36 +0100 Subject: gnu: go-github-com-golang-groupcache-lru: Import all go modules. Rename go-github-com-golang-groupcache-lru to go-github-com-golang-groupcache to reflect go.mod import path as seen in . It will provide other available submodules together with main module groupcache: lru, singleflight, groupcachepb and consistenthash. * gnu/packages/syncthing.scm (go-github-com-golang-groupcache): [arguments]: Remove <#:unpack-path>, update <#:import-path> to make other modules available. [propagated-inputs]: Add go-github-com-golang-protobuf-proto. * gnu/packages/ipfs.scm (kubo): [inputs]: Remove go-github-com-golang-groupcache-lru, add go-github-com-golang-groupcache. Change-Id: I455eecd2ebeff5f456f83621aa85b4de7d60304e --- gnu/packages/ipfs.scm | 2 +- gnu/packages/syncthing.scm | 9 +++++---- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/gnu/packages/ipfs.scm b/gnu/packages/ipfs.scm index 460ee085ec..02678a6b96 100644 --- a/gnu/packages/ipfs.scm +++ b/gnu/packages/ipfs.scm @@ -353,7 +353,7 @@ (define-public kubo go-github-com-francoispqt-gojay go-github-com-fsnotify-fsnotify go-github-com-gogo-protobuf - go-github-com-golang-groupcache-lru + go-github-com-golang-groupcache go-github-com-golang-snappy go-github-com-google-uuid go-github-com-gorilla-mux diff --git a/gnu/packages/syncthing.scm b/gnu/packages/syncthing.scm index 3f8cb808ce..0914d618f5 100644 --- a/gnu/packages/syncthing.scm +++ b/gnu/packages/syncthing.scm @@ -353,11 +353,11 @@ (define-public go-github-com-d4l3k-messagediff (home-page "https://github.com/d4l3k/messagediff") (license expat))) -(define-public go-github-com-golang-groupcache-lru +(define-public go-github-com-golang-groupcache (let ((commit "869f871628b6baa9cfbc11732cdf6546b17c1298") (revision "2")) (package - (name "go-github-com-golang-groupcache-lru") + (name "go-github-com-golang-groupcache") (version (git-version "0.0.0" revision commit)) (source (origin (method git-fetch) @@ -370,8 +370,9 @@ (define-public go-github-com-golang-groupcache-lru "0r4nk8129bvx50qb4xzjaay39b2h6k7cbdqqzdlanmc82ygczsbw")))) (build-system go-build-system) (arguments - `(#:import-path "github.com/golang/groupcache/lru" - #:unpack-path "github.com/golang/groupcache")) + `(#:import-path "github.com/golang/groupcache")) + (propagated-inputs + (list go-github-com-golang-protobuf-proto)) (synopsis "Groupcache is a caching and cache-filling library") (description "Groupcache is a caching and cache-filling library, intended as a replacement for memcached in many cases. It provides a data loading -- cgit v1.2.3 From 191e5674d9f1b2035f681a939c266efe2dd4a2dd Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Sun, 14 Apr 2024 11:48:46 +0100 Subject: gnu: go-github-com-golang-groupcache: Move to golang-web. * gnu/packages/syncthing.scm (go-github-com-golang-groupcache): Move from here ... * gnu/packages/golang-web.scm: ... to here. Change-Id: I3e5393d13630529a0cf309e08b9e7dc9d5cba18a --- gnu/packages/golang-web.scm | 31 ++++++++++++++++++++++++++++++- gnu/packages/syncthing.scm | 28 ---------------------------- 2 files changed, 30 insertions(+), 29 deletions(-) diff --git a/gnu/packages/golang-web.scm b/gnu/packages/golang-web.scm index 5c6d9126ef..9005a16ca7 100644 --- a/gnu/packages/golang-web.scm +++ b/gnu/packages/golang-web.scm @@ -1,4 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2017, 2019, 2021 Leo Famulari ;;; Copyright © 2018 Pierre Neidhardt ;;; Copyright © 2018 Pierre-Antoine Rouby ;;; Copyright © 2020 Jack Hill @@ -10,7 +11,6 @@ ;;; Copyright © 2020 raingloom ;;; Copyright © 2020-2022 Efraim Flashner ;;; Copyright © 2021 Collin J. Doering -;;; Copyright © 2021 Leo Famulari ;;; Copyright © 2021 Philip McGrath ;;; Copyright © 2021 Raghav Gururajan ;;; Copyright © 2021 Sarah Morgensen @@ -708,6 +708,35 @@ (define-public go-github-com-goccy-go-json "Fast JSON encoder/decoder compatible with encoding/json for Go.") (license license:expat))) +(define-public go-github-com-golang-groupcache + (let ((commit "869f871628b6baa9cfbc11732cdf6546b17c1298") + (revision "2")) + (package + (name "go-github-com-golang-groupcache") + (version (git-version "0.0.0" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/golang/groupcache") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0r4nk8129bvx50qb4xzjaay39b2h6k7cbdqqzdlanmc82ygczsbw")))) + (build-system go-build-system) + (arguments + (list #:import-path "github.com/golang/groupcache")) + (propagated-inputs + (list go-github-com-golang-protobuf-proto)) + (home-page "https://github.com/golang/groupcache") + (synopsis "Groupcache is a caching and cache-filling library") + (description + "Groupcache is a caching and cache-filling library, intended +as a replacement for memcached in many cases. It provides a data loading +mechanism with caching and de-duplication that works across a set of peer +processes.") + (license license:asl2.0)))) + (define-public go-github-com-google-go-github (package (name "go-github-com-google-go-github") diff --git a/gnu/packages/syncthing.scm b/gnu/packages/syncthing.scm index 0914d618f5..366a5f0ebb 100644 --- a/gnu/packages/syncthing.scm +++ b/gnu/packages/syncthing.scm @@ -353,34 +353,6 @@ (define-public go-github-com-d4l3k-messagediff (home-page "https://github.com/d4l3k/messagediff") (license expat))) -(define-public go-github-com-golang-groupcache - (let ((commit "869f871628b6baa9cfbc11732cdf6546b17c1298") - (revision "2")) - (package - (name "go-github-com-golang-groupcache") - (version (git-version "0.0.0" revision commit)) - (source (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/golang/groupcache") - (commit commit))) - (file-name (git-file-name name version)) - (sha256 - (base32 - "0r4nk8129bvx50qb4xzjaay39b2h6k7cbdqqzdlanmc82ygczsbw")))) - (build-system go-build-system) - (arguments - `(#:import-path "github.com/golang/groupcache")) - (propagated-inputs - (list go-github-com-golang-protobuf-proto)) - (synopsis "Groupcache is a caching and cache-filling library") - (description "Groupcache is a caching and cache-filling library, intended -as a replacement for memcached in many cases. It provides a data loading -mechanism with caching and de-duplication that works across a set of peer -processes.") - (home-page "https://github.com/golang/groupcache") - (license asl2.0)))) - (define-public go-github-com-jackpal-gateway (package (name "go-github-com-jackpal-gateway") -- cgit v1.2.3 From 42b4580f6bfcaab009a56e679bd6f3c408ef03c9 Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Sun, 14 Apr 2024 11:54:15 +0100 Subject: gnu: go-github-com-golang-groupcache: Update to 0.0.0-3.41bb18b. * gnu/packages/golang-web.scm (go-github-com-golang-groupcache): Update to 0.0.0-3.41bb18b. Change-Id: If1016af57bde9b25fa5348e820899c87985b43dc --- gnu/packages/golang-web.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/golang-web.scm b/gnu/packages/golang-web.scm index 9005a16ca7..e1b366a118 100644 --- a/gnu/packages/golang-web.scm +++ b/gnu/packages/golang-web.scm @@ -709,8 +709,8 @@ (define-public go-github-com-goccy-go-json (license license:expat))) (define-public go-github-com-golang-groupcache - (let ((commit "869f871628b6baa9cfbc11732cdf6546b17c1298") - (revision "2")) + (let ((commit "41bb18bfe9da5321badc438f91158cd790a33aa3") + (revision "3")) (package (name "go-github-com-golang-groupcache") (version (git-version "0.0.0" revision commit)) @@ -722,7 +722,7 @@ (define-public go-github-com-golang-groupcache (commit commit))) (file-name (git-file-name name version)) (sha256 - (base32 "0r4nk8129bvx50qb4xzjaay39b2h6k7cbdqqzdlanmc82ygczsbw")))) + (base32 "07amgr8ji4mnq91qbsw2jlcmw6hqiwdf4kzfdrj8c4b05w4knszc")))) (build-system go-build-system) (arguments (list #:import-path "github.com/golang/groupcache")) -- cgit v1.2.3 From ec8eef5e7e4b6c871bd8a9938ae64f6dd1277a3c Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Sun, 14 Apr 2024 14:17:20 +0100 Subject: gnu: go-go-uber-org-atomic: Run tests only on x86-64. Address the build issue on i686-linux as seen in CI . * gnu/packages/golang-xyz.scm (go-go-uber-org-atomic): [arguments]: <#:tests?>: Only run on x86-64. Change-Id: Iab5a896be05d879f3552471d8789a11dba7826ce --- gnu/packages/golang-xyz.scm | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/gnu/packages/golang-xyz.scm b/gnu/packages/golang-xyz.scm index 91ec868a58..fcb352148c 100644 --- a/gnu/packages/golang-xyz.scm +++ b/gnu/packages/golang-xyz.scm @@ -3201,6 +3201,14 @@ (define-public go-go-uber-org-atomic (build-system go-build-system) (arguments (list + ;; XXX: Disable failing tests on non-x86-64 architecture, see + ;; . + ;; + ;; go.uber.org/atomic/uintptr_test.go:72:30: cannot convert + ;; math.MaxUint64 (untyped int constant 18446744073709551615) to type + ;; uintptr + #:tests? (and (not (%current-target-system)) + (target-x86-64?)) #:import-path "go.uber.org/atomic")) (native-inputs (list go-github-com-stretchr-testify go-github-com-davecgh-go-spew)) -- cgit v1.2.3 From 6b3c90f638292f9604a221ac6dbf22234f6e4c4b Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Sun, 14 Apr 2024 14:43:11 +0100 Subject: gnu: go-github-com-francoispqt-gojay: Run tests only on x86-64. Address the build issue on i686-linux as seen in CI . * gnu/packages/golang-web.scm (go-github-com-francoispqt-gojay): [arguments]: Swap to list style. <#:tests?>: Only run on x86-64. [home-page]: Move above synopsis. [description]: Fix indentation. Change-Id: I93a0970933de0b32729cf9a620b10e69e8e244eb --- gnu/packages/golang-web.scm | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/gnu/packages/golang-web.scm b/gnu/packages/golang-web.scm index e1b366a118..91f075ca2e 100644 --- a/gnu/packages/golang-web.scm +++ b/gnu/packages/golang-web.scm @@ -553,6 +553,8 @@ (define-public go-github-com-felixge-httpsnoop application's http.Handlers.") (license license:expat))) +;; This project looks like domain or abandoned, see +;; . (define-public go-github-com-francoispqt-gojay (package (name "go-github-com-francoispqt-gojay") @@ -568,14 +570,20 @@ (define-public go-github-com-francoispqt-gojay (base32 "1ix95qdyajfmxhf9y52vjrih63f181pjs4v5as8905s4d5vmkd06")))) (build-system go-build-system) (arguments - '(#:import-path "github.com/francoispqt/gojay")) + (list + ;; XXX: Disable failing tests on non-x86-64 architecture, see + ;; . + #:tests? (and (not (%current-target-system)) + (target-x86-64?)) + #:import-path "github.com/francoispqt/gojay")) (native-inputs (list go-github-com-stretchr-testify)) + (home-page "https://github.com/francoispqt/gojay") (synopsis "JSON encoder/decoder with powerful stream API for Golang") - (description "GoJay is a performant JSON encoder/decoder for Golang. It has -a simple API and doesn't use reflection. It relies on small interfaces to + (description + "GoJay is a performant JSON encoder/decoder for Golang. It has a simple +API and doesn't use reflection. It relies on small interfaces to decode/encode structures and slices.") - (home-page "https://github.com/francoispqt/gojay") (license license:expat))) ;; TODO: This repository has been archived by the owner on Aug 30, 2023. It is -- cgit v1.2.3 From 2c059863483b698c4f6f50a2ce4daaef5f1de83f Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Fri, 12 Apr 2024 09:01:01 +0100 Subject: gnu: borg: Update to 1.2.8. * gnu/packages/backup.scm (borg): Update to 1.2.8. [arguments]: Remove a variety of workarounds that have been obviated by changes upstream and in the Python package build tools. Reviewed-by: Dale Mellor Signed-off-by: Christopher Baines Change-Id: I031bb4e6ac2f562a3e387a5e815b31416367766f --- gnu/packages/backup.scm | 17 ++++------------- 1 file changed, 4 insertions(+), 13 deletions(-) diff --git a/gnu/packages/backup.scm b/gnu/packages/backup.scm index 521974f96b..5e74439bff 100644 --- a/gnu/packages/backup.scm +++ b/gnu/packages/backup.scm @@ -675,13 +675,13 @@ (define-public libchop (define-public borg (package (name "borg") - (version "1.2.7") + (version "1.2.8") (source (origin (method url-fetch) (uri (pypi-uri "borgbackup" version)) (sha256 - (base32 "06j1v4bw9jkjh6m29ns5sigmp0cslcf0cyy8rrqij11w72ijhgzn")) + (base32 "1aplj54x6hcyg3mnzscnwi07npy7nrws2246ss25ax6bsaq257fk")) (modules '((guix build utils))) (snippet #~(begin @@ -723,18 +723,10 @@ (define-public borg (setenv "BORG_OPENSSL_PREFIX" openssl) (setenv "BORG_LIBLZ4_PREFIX" lz4) (setenv "BORG_LIBXXHASH_PREFIX" xxhash) - (setenv "BORG_LIBZSTD_PREFIX" zstd) - (setenv "PYTHON_EGG_CACHE" "/tmp") - ;; The test 'test_return_codes[python]' fails when - ;; HOME=/homeless-shelter. - (setenv "HOME" "/tmp")))) - ;; The tests need to be run after Borg is installed. - (delete 'check) - (add-after 'install 'check + (setenv "BORG_LIBZSTD_PREFIX" zstd)))) + (replace 'check (lambda* (#:key inputs outputs tests? #:allow-other-keys) (when tests? - ;; Make the installed package available for the test suite. - (add-installed-pythonpath inputs outputs) ;; The tests should be run in an empty directory. (mkdir-p "tests") (with-directory-excursion "tests" @@ -749,7 +741,6 @@ (define-public borg "and not test_access_acl " "and not test_default_acl " "and not test_get_item_uid_gid " - "and not test_non_ascii_acl " "and not test_create_content_from_command " "and not test_create_content_from_command_with_failed_command " "and not test_create_stdin " -- cgit v1.2.3 From 188168ee08f1913b1d11cdef153020c96d3f18fe Mon Sep 17 00:00:00 2001 From: Jean-Pierre De Jesus DIAZ Date: Fri, 12 Apr 2024 09:25:49 +0100 Subject: gnu: simavr: Remove modules from arguments. * gnu/packages/avr-xyz.scm (simavr): Remove the #:modules keyword argument as it contains the default modules only. Reviewed-by: Dale Mellor Signed-off-by: Christopher Baines Change-Id: Idf350cad53db879e90a53849c23ac4e63b53cfd1 --- gnu/packages/avr-xyz.scm | 2 -- 1 file changed, 2 deletions(-) diff --git a/gnu/packages/avr-xyz.scm b/gnu/packages/avr-xyz.scm index e6092df082..86ac941770 100644 --- a/gnu/packages/avr-xyz.scm +++ b/gnu/packages/avr-xyz.scm @@ -62,8 +62,6 @@ (define-public simavr (arguments (list #:tests? #f - #:modules '((guix build gnu-build-system) - (guix build utils)) #:phases #~(modify-phases %standard-phases (delete 'configure) (replace 'check -- cgit v1.2.3 From 027419626f171cdccf9c4a77686840141ea502eb Mon Sep 17 00:00:00 2001 From: Richard Sent Date: Thu, 4 Apr 2024 17:21:52 -0400 Subject: gnu: tests: Add system test for sddm. Create a basic suite of tests to verify the display manager starts. * gnu/tests/sddm.scm: New file. Change-Id: Ia84926e9aab42c6781430c22aae0f892387d1a29 Signed-off-by: Christopher Baines --- gnu/tests/sddm.scm | 112 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 112 insertions(+) create mode 100644 gnu/tests/sddm.scm diff --git a/gnu/tests/sddm.scm b/gnu/tests/sddm.scm new file mode 100644 index 0000000000..87059112ee --- /dev/null +++ b/gnu/tests/sddm.scm @@ -0,0 +1,112 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2024 Richard Sent . +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see . + +(define-module (gnu tests sddm) + #:use-module (gnu bootloader) + #:use-module (gnu bootloader grub) + #:use-module (gnu packages) + #:use-module (gnu packages ocr) + #:use-module (gnu packages xorg) + #:use-module (gnu services) + #:use-module (gnu services desktop) + #:use-module (gnu services sddm) + #:use-module (gnu services xorg) + #:use-module (gnu system) + #:use-module (gnu system vm) + #:use-module (gnu tests) + #:use-module (guix gexp) + #:use-module (guix modules) + #:use-module (srfi srfi-1) + #:export (%test-sddm)) + +(define %sddm-os + (operating-system + (inherit %simple-os) + (services + (cons* (service sddm-service-type) + (modify-services %desktop-services + (delete gdm-service-type)))))) + +(define (run-sddm-test) + "Run tests in %SDDM-OS." + + (define os (marionette-operating-system + %sddm-os + #:imported-modules (source-module-closure + '((gnu services herd))))) + + (define vm (virtual-machine + (operating-system os) + ;; Test may nondeterministically fail with default memory size. + (memory-size 1024))) + + (define test + (with-imported-modules (source-module-closure + '((gnu build marionette))) + #~(begin + (use-modules (gnu build marionette) + (srfi srfi-26) + (srfi srfi-64)) + + (let ((marionette (make-marionette (list #$vm)))) + + (test-runner-current (system-test-runner #$output)) + (test-begin "sddm") + + (test-assert "service is running" + (marionette-eval + '(begin + (use-modules (gnu services herd)) + ;; sddm's shepherd service is called xorg-server + (start-service 'xorg-server)) + marionette)) + + (test-assert "service can be stopped" + (marionette-eval + '(begin + (use-modules (gnu services herd)) + (stop-service 'xorg-server)) + marionette)) + + (test-assert "service can be restarted" + (marionette-eval + '(begin + (use-modules (gnu services herd)) + (restart-service 'xorg-server)) + marionette)) + + (test-assert "login screen up" + ;; GNU Ocrad fails to recognize any text, so use Tesseract. + (wait-for-screen-text marionette + ;; Login button not recognized, use SDDM's + ;; welcome message. + (cut string-contains <> (string-append "Welcome to " + #$(operating-system-host-name %sddm-os))) + #:ocr #$(file-append tesseract-ocr + "/bin/tesseract") + #:timeout 60)) + + (test-end))))) + + (gexp->derivation "sddm-test" test)) + +(define %test-sddm + (system-test + (name "sddm") + (description "Basic tests for the SDDM service.") + (value (run-sddm-test)))) -- cgit v1.2.3 From 8a257582e3366b37ab7651198fc4c8912c520b37 Mon Sep 17 00:00:00 2001 From: Sughosha Date: Sun, 7 Apr 2024 17:07:30 +0530 Subject: gnu: signon-plugin-oauth2: Fix installing in a doubled prefix. This commit fixes creating one more /gnu/store/ directory inside its own prefix, creating again the same prefix inside it and then installing in it. * gnu/packages/qt.scm (signon-plugin-oauth2)[arguments]: <#:make-flags>: Remove argument. <#:phases>: In configure phase, add SIGNON_PLUGINS_DIR variable. Change-Id: I10e973980228354c9943741dd480544bffca65b8 Signed-off-by: Christopher Baines --- gnu/packages/qt.scm | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/gnu/packages/qt.scm b/gnu/packages/qt.scm index 13af841455..198325c03a 100644 --- a/gnu/packages/qt.scm +++ b/gnu/packages/qt.scm @@ -5360,7 +5360,6 @@ (define-public signon-plugin-oauth2 (inputs (list signond)) (arguments (list #:tests? #f ;no tests - #:make-flags #~(list (string-append "INSTALL_ROOT=" #$output)) #:phases #~(modify-phases %standard-phases (replace 'configure @@ -5370,7 +5369,9 @@ (define-public signon-plugin-oauth2 "")) (invoke "qmake" (string-append "PREFIX=" #$output) - (string-append "LIBDIR=" #$output "/lib"))))))) + (string-append "LIBDIR=" #$output "/lib") + (string-append "SIGNON_PLUGINS_DIR=" #$output + "/lib"))))))) (synopsis "OAuth 2 plugin for signon") (description "This plugin for the Accounts-SSO SignOn daemon handles the OAuth -- cgit v1.2.3 From d95ed91f386032b8de46785c407ef5b64794bd89 Mon Sep 17 00:00:00 2001 From: Andy Tai Date: Mon, 8 Apr 2024 09:16:32 -0700 Subject: gnu: rsync: Update to 3.3.0. * gnu/packages/rsync.scm (rsync): Update to 3.3.0. Change-Id: I03ba540e44f54e371cd362baf2aeb1877f853f72 Signed-off-by: Christopher Baines --- gnu/packages/rsync.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/rsync.scm b/gnu/packages/rsync.scm index 48f6139f1f..4b1d44e58e 100644 --- a/gnu/packages/rsync.scm +++ b/gnu/packages/rsync.scm @@ -40,14 +40,14 @@ (define-module (gnu packages rsync) (define-public rsync (package (name "rsync") - (version "3.2.7") + (version "3.3.0") (source (origin (method url-fetch) (uri (string-append "https://rsync.samba.org/ftp/rsync/src/rsync-" version ".tar.gz")) (sha256 (base32 - "1fzj8q9w8bgvi3j162rlqymbdx5cgnk29dszik2ph26idqzrszaf")))) + "146z85qd16446k8hzr9n4fzf0fzjjsg22qralxwdcclcf2kfk6bk")))) (build-system gnu-build-system) (arguments `(#:configure-flags -- cgit v1.2.3 From 4dec6e9fb74a688e0297b127773b88a699531785 Mon Sep 17 00:00:00 2001 From: Vagrant Cascadian Date: Thu, 11 Apr 2024 12:40:19 -0700 Subject: gnu: diffoscope: Increase test verbosity. * gnu/packages/diffoscope.scm (diffoscope)[phases]: Replace 'check. Signed-off-by: Christopher Baines --- gnu/packages/diffoscope.scm | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/gnu/packages/diffoscope.scm b/gnu/packages/diffoscope.scm index 3db52e5008..8106a6d258 100644 --- a/gnu/packages/diffoscope.scm +++ b/gnu/packages/diffoscope.scm @@ -139,6 +139,11 @@ (define (bin command) (lambda _ ;; This requires /sbin to be in $PATH. (delete-file "tests/test_tools.py"))) + (replace 'check + (lambda* (#:key tests? #:allow-other-keys) + (when tests? + ;; Increase verbosity of tests and provide a summary + (invoke "pytest" "-vv" "-r" "sxX")))) (add-after 'install 'install-man-page (lambda* (#:key outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) -- cgit v1.2.3 From ffd1d0c2d486b9de35706ca73a4e89177114e4de Mon Sep 17 00:00:00 2001 From: Jean-Pierre De Jesus DIAZ Date: Fri, 12 Apr 2024 12:53:00 +0200 Subject: gnu: cross-gcc-patches: Avoid patch for GCC 13+. * gnu/packages/cross-base.scm (cross-gcc-patches): Avoid gcc-4.9.3-mingw-gthr-default.patch patch for GCC 13+ versions since it does not apply. Change-Id: I4bb14d687c53733d77099a761844815900b1266a Signed-off-by: Christopher Baines --- gnu/packages/cross-base.scm | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/gnu/packages/cross-base.scm b/gnu/packages/cross-base.scm index 2d79e0acf6..e62402a09e 100644 --- a/gnu/packages/cross-base.scm +++ b/gnu/packages/cross-base.scm @@ -250,7 +250,9 @@ (define (cross-gcc-patches xgcc target) ;; Patch by Qualcomm needed to build the ath9k-htc firmware. (search-patches "ath9k-htc-firmware-gcc.patch")) ((target-mingw? target) - (append (search-patches "gcc-4.9.3-mingw-gthr-default.patch") + (append (if (not (version>=? (package-version xgcc) "13.0")) + (search-patches "gcc-4.9.3-mingw-gthr-default.patch") + '()) (if (version>=? (package-version xgcc) "7.0") (search-patches "gcc-7-cross-mingw.patch") '()))) -- cgit v1.2.3 From 97bad5e1947a07d96f40205bec1e91463e7bf014 Mon Sep 17 00:00:00 2001 From: Jean-Pierre De Jesus DIAZ Date: Fri, 12 Apr 2024 12:53:01 +0200 Subject: gnu: cross-gcc: Add patch for GCC 13. * gnu/local.mk (dist_patch_DATA): Add gcc-13-cross-system-header-dir.patch. * gnu/packages/cross-base.scm (cross-gcc) : Add patch for GCC 13. * gnu/packages/patches/gcc-13-cross-system-header-dir.patch: New patch. Change-Id: Ib4771ff78222fb7b7df58891d25938d338bd5df8 Signed-off-by: Christopher Baines --- gnu/local.mk | 1 + gnu/packages/cross-base.scm | 4 +++ .../patches/gcc-13-cross-system-header-dir.patch | 32 ++++++++++++++++++++++ 3 files changed, 37 insertions(+) create mode 100644 gnu/packages/patches/gcc-13-cross-system-header-dir.patch diff --git a/gnu/local.mk b/gnu/local.mk index a05c92696c..64efee901f 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1299,6 +1299,7 @@ dist_patch_DATA = \ %D%/packages/patches/gcc-12-cross-environment-variables.patch \ %D%/packages/patches/gcc-10-tree-sra-union-handling.patch \ %D%/packages/patches/gcc-11-libstdc++-powerpc.patch \ + %D%/packages/patches/gcc-13-cross-system-header-dir.patch \ %D%/packages/patches/gcolor3-update-libportal-usage.patch \ %D%/packages/patches/gd-fix-tests-on-i686.patch \ %D%/packages/patches/gd-brect-bounds.patch \ diff --git a/gnu/packages/cross-base.scm b/gnu/packages/cross-base.scm index e62402a09e..36307698a8 100644 --- a/gnu/packages/cross-base.scm +++ b/gnu/packages/cross-base.scm @@ -321,6 +321,10 @@ (define* (cross-gcc target (append (origin-patches (package-source xgcc)) (append (cond + ((version>=? (package-version xgcc) "13.0") + (search-patches "gcc-13-cross-system-header-dir.patch" + "gcc-12-cross-environment-variables.patch" + "gcc-cross-gxx-include-dir.patch")) ((version>=? (package-version xgcc) "12.0") (search-patches "gcc-12-cross-environment-variables.patch" "gcc-cross-gxx-include-dir.patch")) diff --git a/gnu/packages/patches/gcc-13-cross-system-header-dir.patch b/gnu/packages/patches/gcc-13-cross-system-header-dir.patch new file mode 100644 index 0000000000..75f80ea9d2 --- /dev/null +++ b/gnu/packages/patches/gcc-13-cross-system-header-dir.patch @@ -0,0 +1,32 @@ +From 8b001f38cc713190642194b55e02a56346f51494 Mon Sep 17 00:00:00 2001 +From: Jean-Pierre De Jesus DIAZ +Date: Fri, 12 Apr 2024 12:18:24 +0200 +Subject: [PATCH] Fix CROSS_SYSTEM_HEADER_DIR value for Guix. + +* gcc/Makefile.in (CROSS_SYSTEM_HEADER_DIR): Always use default value. +--- + gcc/Makefile.in | 6 +----- + 1 file changed, 1 insertion(+), 5 deletions(-) + +diff --git a/gcc/Makefile.in b/gcc/Makefile.in +index 775aaa1b3c4..06d192fa9ed 100644 +--- a/gcc/Makefile.in ++++ b/gcc/Makefile.in +@@ -532,11 +532,7 @@ LINKER_PLUGIN_API_H = $(srcdir)/../include/plugin-api.h + # Default native SYSTEM_HEADER_DIR, to be overridden by targets. + NATIVE_SYSTEM_HEADER_DIR = @NATIVE_SYSTEM_HEADER_DIR@ + # Default cross SYSTEM_HEADER_DIR, to be overridden by targets. +-ifeq (@includedir@,$(prefix)/include) +- CROSS_SYSTEM_HEADER_DIR = @CROSS_SYSTEM_HEADER_DIR@ +-else +- CROSS_SYSTEM_HEADER_DIR = @includedir@ +-endif ++CROSS_SYSTEM_HEADER_DIR = @CROSS_SYSTEM_HEADER_DIR@ + + # autoconf sets SYSTEM_HEADER_DIR to one of the above. + # Purge it of unnecessary internal relative paths + +base-commit: c891d8dc23e1a46ad9f3e757d09e57b500d40044 +-- +2.41.0 + -- cgit v1.2.3 From 4e7c3867ad30d4be761666fe311de90b7b4bd5f9 Mon Sep 17 00:00:00 2001 From: Jean-Pierre De Jesus DIAZ Date: Fri, 12 Apr 2024 12:53:02 +0200 Subject: gnu: Add gcc-cross-x86_64-w64-mingw32-toolchain-13. * gnu/packages/cross-toolchain.scm (gcc-cross-x86_64-w64-mingw32-toolchain-13): New variable. Change-Id: I64fbce5d4af30c9c5df2faf61d3243fcf6dfbf5b Signed-off-by: Christopher Baines --- gnu/packages/cross-toolchain.scm | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/gnu/packages/cross-toolchain.scm b/gnu/packages/cross-toolchain.scm index 5072462cbb..d0dbb4e1b8 100644 --- a/gnu/packages/cross-toolchain.scm +++ b/gnu/packages/cross-toolchain.scm @@ -18,6 +18,7 @@ (define-module (gnu packages cross-toolchain) #:use-module (gnu packages cross-base) + #:use-module (gnu packages gcc) #:use-module (guix packages)) ;;; Commentary: @@ -41,5 +42,9 @@ (define-public gcc-cross-i686-w64-mingw32-toolchain (define-public gcc-cross-or1k-elf-toolchain (cross-gcc-toolchain "or1k-elf")) +(define-public gcc-cross-x86_64-w64-mingw32-toolchain-13 + (cross-gcc-toolchain "x86_64-w64-mingw32" + #:base-gcc gcc-13)) + (define-public gcc-cross-x86_64-w64-mingw32-toolchain (cross-gcc-toolchain "x86_64-w64-mingw32")) -- cgit v1.2.3 From de26171174c6afd3fdd321707314e8c7eb0dd1d0 Mon Sep 17 00:00:00 2001 From: Vasile Dumitrascu Date: Fri, 12 Apr 2024 15:18:09 +0200 Subject: gnu: conky: Update to 1.19.8. * gnu/packages/conky.scm (conky): Update to 1.19.8. [inputs]: Add libxi. Signed-off-by: Christopher Baines --- gnu/packages/conky.scm | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/gnu/packages/conky.scm b/gnu/packages/conky.scm index e29c6e1070..b0576cd137 100644 --- a/gnu/packages/conky.scm +++ b/gnu/packages/conky.scm @@ -40,7 +40,7 @@ (define-public conky (package (name "conky") (home-page "https://github.com/brndnmtthws/conky") - (version "1.19.6") + (version "1.19.8") (source (origin (method git-fetch) @@ -49,7 +49,7 @@ (define-public conky (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "02mdqsizc36v3zqhxnyv2mch9w0gqnl4a25yxishka9yv5ni5iig")))) + (base32 "1g712cw2nzd2qvgdmyvazyda0znyqzg6yckg98ss203fggwp93vj")))) (build-system cmake-build-system) (arguments `(#:configure-flags @@ -80,6 +80,7 @@ (define-public conky libxdamage libxext libxft + libxi libxinerama pulseaudio lua -- cgit v1.2.3 From d447a0c693c95cb78775fa61e0cb5311fce76114 Mon Sep 17 00:00:00 2001 From: Andy Tai Date: Fri, 12 Apr 2024 21:46:39 -0700 Subject: gnu: meld: Update to 3.22.2. * gnu/packages/patchutils.scm (meld): Update to 3.22.2. Change-Id: I6f292a1a8579f8a18ca4421750541932076a3555 Signed-off-by: Christopher Baines --- gnu/packages/patchutils.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/patchutils.scm b/gnu/packages/patchutils.scm index afe4af3eb3..cdefa48583 100644 --- a/gnu/packages/patchutils.scm +++ b/gnu/packages/patchutils.scm @@ -301,7 +301,7 @@ (define-public vbindiff (define-public meld (package (name "meld") - (version "3.22.1") + (version "3.22.2") (source (origin (method url-fetch) @@ -309,7 +309,7 @@ (define-public meld (version-major+minor version) "/meld-" version ".tar.xz")) (sha256 - (base32 "0dk8j27jlqhxcjrkc8pa3rl7fz7pfwvrbyrhfsx1ld6lvcrbvlvd")))) + (base32 "1vqn4glv32dxrzm5hxj64ac5q9ffr1bhf7ks6wxia6ydzc9sg826")))) (build-system meson-build-system) (native-inputs (list desktop-file-utils -- cgit v1.2.3 From 83a2ff488ded9757ea34cdb04a41ad5867305c0d Mon Sep 17 00:00:00 2001 From: Andy Tai Date: Fri, 12 Apr 2024 21:53:06 -0700 Subject: gnu: xpra: Update to 5.0.8. * gnu/packages/xorg.scm (xpra): Updatw to 5.0.8. Change-Id: I6107d5c3469ca0576c668d1a68bf1148b8f055b6 Signed-off-by: Christopher Baines --- gnu/packages/xorg.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/xorg.scm b/gnu/packages/xorg.scm index 81d8462761..74059a2691 100644 --- a/gnu/packages/xorg.scm +++ b/gnu/packages/xorg.scm @@ -6157,14 +6157,14 @@ (define-public xcompmgr (define-public xpra (package (name "xpra") - (version "5.0.7") + (version "5.0.8") (source (origin (method url-fetch) (uri (string-append "https://www.xpra.org/src/xpra-" version ".tar.xz")) (sha256 - (base32 "0rkcsv0b55xbvkqi38nm01yxc09f7l9nj7xnp8v23rn6bp86m8mr")) + (base32 "0ml9nv6gwrqgyrn3hp5kkxsbdl5fpz5w8vjsvn0qfdsgbvq617wy")) (patches (search-patches "xpra-5.0-systemd-run.patch" "xpra-5.0-install_libs.patch")))) (build-system python-build-system) -- cgit v1.2.3 From 27f4896a1807a0925f328f5a0908c89f8f3883e9 Mon Sep 17 00:00:00 2001 From: Timotej Lazar Date: Sat, 6 Apr 2024 10:44:02 +0200 Subject: gnu: widelands: Update to 1.2. * gnu/packages/games.scm (widelands): Update to 1.2. [inputs]: Drop boost, curl. [native-inputs]: Replace python-wrapper with python. Change-Id: I1a98739a5da801d3686acf152989c8ce15f16a90 Signed-off-by: Christopher Baines --- gnu/packages/games.scm | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index 555e70b1c9..1dba7410f3 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -5786,7 +5786,7 @@ (define-public warzone2100 (define-public widelands (package (name "widelands") - (version "1.1") + (version "1.2") (source (origin (method git-fetch) @@ -5795,7 +5795,7 @@ (define-public widelands (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "07wbalwdmml9vdh9nh50svnsw4sdj9nnp32azbss8vzq5mxmzvbx")) + (base32 "1m9hn1sh1siggribzsq79k7p0lggdw41ji7zdl6h648cjak9mdsp")) (modules '((guix build utils))) (snippet '(begin @@ -5830,11 +5830,9 @@ (define-public widelands (native-inputs `(("gettext" ,gettext-minimal) ("pkg-config" ,pkg-config) - ("python" ,python-wrapper))) + ("python" ,python))) (inputs `(("asio" ,asio) - ("curl" ,curl) - ("boost" ,boost) ("glew" ,glew) ("icu4c" ,icu4c) ("libpng" ,libpng) -- cgit v1.2.3 From 84a88f5ed96c8ec5781fc0f428d22380df1b1f14 Mon Sep 17 00:00:00 2001 From: Timotej Lazar Date: Sat, 6 Apr 2024 10:44:03 +0200 Subject: gnu: widelands: Improve package style. * gnu/packages/games.scm (widelands): Use new package style. [snippet]: Simplify and drop trailing #t. [arguments]: Use gexps. Tweak #:configure-flags to install the binary in bin/ instead of bin/games/ and data under share/ instead of bin/share/. Modify 'unbundle-fonts phase to not depend on input labels. [inputs, native-inputs]: Drop input labels. [home-page]: Drop trailing slash. Change-Id: I75c535005ad1325ad170205b6e80b1039125619a Signed-off-by: Christopher Baines --- gnu/packages/games.scm | 85 +++++++++++++++++++++++++------------------------- 1 file changed, 42 insertions(+), 43 deletions(-) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index 1dba7410f3..57e6c23f41 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -5791,58 +5791,57 @@ (define-public widelands (origin (method git-fetch) (uri (git-reference - (url "https://github.com/widelands/widelands") - (commit (string-append "v" version)))) + (url "https://github.com/widelands/widelands") + (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 (base32 "1m9hn1sh1siggribzsq79k7p0lggdw41ji7zdl6h648cjak9mdsp")) (modules '((guix build utils))) (snippet - '(begin - (delete-file-recursively "src/third_party/minizip") - #t)))) + #~(delete-file-recursively "src/third_party/minizip")))) (build-system cmake-build-system) (arguments - `(#:configure-flags - (let* ((out (assoc-ref %outputs "out")) - (share (string-append out "/share"))) - (list (string-append "-DCMAKE_INSTALL_PREFIX=" out "/bin") - (string-append "-DWL_INSTALL_BASEDIR=" share "/widelands") - (string-append "-DWL_INSTALL_DATADIR=" share "/widelands") - "-DOPTION_BUILD_WEBSITE_TOOLS=OFF" - ;; CMakeLists.txt does not handle properly RelWithDebInfo build - ;; type. When used, no game data is installed! - "-DCMAKE_BUILD_TYPE=Release")) - #:phases - (modify-phases %standard-phases - (add-after 'unpack 'unbundle-fonts - ;; Unbundle fonts already packaged in Guix. XXX: missing fonts are - ;; amiri, Culmus, mmrCensus, Nakula, and Sinhala. - (lambda* (#:key inputs #:allow-other-keys) - (with-directory-excursion "data/i18n/fonts" - (for-each (lambda (font) - (delete-file-recursively font) - (symlink (string-append (assoc-ref inputs font) - "/share/fonts/truetype") - font)) - '("DejaVu" "MicroHei"))) - #t))))) + (list + #:configure-flags + #~(let ((share (string-append #$output "/share/widelands"))) + (list (string-append "-DCMAKE_INSTALL_PREFIX=" #$output) + (string-append "-DWL_INSTALL_BINDIR=" #$output "/bin") + (string-append "-DWL_INSTALL_BASEDIR=" share) + (string-append "-DWL_INSTALL_DATADIR=" share) + "-DOPTION_BUILD_WEBSITE_TOOLS=OFF" + ;; CMakeLists.txt does not handle properly RelWithDebInfo build + ;; type. When used, no game data is installed! + "-DCMAKE_BUILD_TYPE=Release")) + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'unbundle-fonts + ;; Unbundle fonts already packaged in Guix. XXX: missing fonts are + ;; amiri, Culmus, mmrCensus, Nakula, and Sinhala. + (lambda* (#:key inputs #:allow-other-keys) + (for-each + (lambda (font) + (let* ((path (string-append "share/fonts/truetype/" (basename font))) + (target (false-if-exception (search-input-file inputs path)))) + (when target + (delete-file font) + (symlink target font)))) + (find-files "data/i18n/fonts" "\\.tt[cf]$"))))))) (native-inputs - `(("gettext" ,gettext-minimal) - ("pkg-config" ,pkg-config) - ("python" ,python))) + (list gettext-minimal pkg-config python)) (inputs - `(("asio" ,asio) - ("glew" ,glew) - ("icu4c" ,icu4c) - ("libpng" ,libpng) - ("minizip" ,minizip) - ("sdl" ,(sdl-union (list sdl2 sdl2-image sdl2-mixer sdl2-ttf))) - ("zlib" ,zlib) - ;; Fonts for the ‘unbundle-fonts’ phase. Case matters in name! - ("DejaVu" ,font-dejavu) - ("MicroHei" ,font-wqy-microhei))) - (home-page "https://www.widelands.org/") + (list asio + font-dejavu + font-wqy-microhei + glew + icu4c + libpng + minizip + sdl2 + sdl2-image + sdl2-mixer + sdl2-ttf + zlib)) + (home-page "https://www.widelands.org") (synopsis "Fantasy real-time strategy game") (description "In Widelands, you are the regent of a small clan. You start out with -- cgit v1.2.3 From f2c5482af4550e4506893db52f66e24c3d93d163 Mon Sep 17 00:00:00 2001 From: Jean-Pierre De Jesus DIAZ Date: Tue, 9 Apr 2024 12:22:34 +0200 Subject: gnu: coin3D: Rename to coin3d. * gnu/packages/graphics.scm (coin3d): New Variable. (coin3D): Define as deprecated. (coin3D-4): Point to coin3d. * gnu/packages/engineering.scm (freecad): Use coin3d instead of coin3D. * gnu/packages/python-xyz.scm (python-pivy): Ditto. * gnu/packages/qt.scm (soqt): Ditto. Change-Id: I4e83e25e80c512350f38024847891eac14723f26 Signed-off-by: Christopher Baines --- gnu/packages/engineering.scm | 2 +- gnu/packages/graphics.scm | 9 ++++++--- gnu/packages/python-xyz.scm | 2 +- gnu/packages/qt.scm | 2 +- 4 files changed, 9 insertions(+), 6 deletions(-) diff --git a/gnu/packages/engineering.scm b/gnu/packages/engineering.scm index 6f42d674e5..7a60036c28 100644 --- a/gnu/packages/engineering.scm +++ b/gnu/packages/engineering.scm @@ -2816,7 +2816,7 @@ (define-public freecad swig)) (inputs (list boost - coin3D + coin3d double-conversion eigen fmt diff --git a/gnu/packages/graphics.scm b/gnu/packages/graphics.scm index a63629823a..ebbc705cfc 100644 --- a/gnu/packages/graphics.scm +++ b/gnu/packages/graphics.scm @@ -1951,9 +1951,9 @@ (define-public opencsg (home-page "https://www.opencsg.org/") (license license:gpl2)))) -(define-public coin3D +(define-public coin3d (package - (name "coin3D") + (name "coin3d") (version "4.0.0") (source (origin @@ -2001,7 +2001,10 @@ (define-public coin3D and engineering community.") (license license:bsd-3))) -(define-deprecated coin3D-4 coin3D) +(define-deprecated coin3D coin3d) +(export coin3D) + +(define-deprecated coin3D-4 coin3d) (export coin3D-4) (define-public skia diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 92566abfed..44c709a880 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -32421,7 +32421,7 @@ (define-public python-pivy libice soqt glew - coin3D)) + coin3d)) (home-page "https://github.com/coin3d/pivy") (synopsis "Python bindings to Coin3D") (description diff --git a/gnu/packages/qt.scm b/gnu/packages/qt.scm index 198325c03a..8fc3b3b0e8 100644 --- a/gnu/packages/qt.scm +++ b/gnu/packages/qt.scm @@ -5116,7 +5116,7 @@ (define-public soqt (native-inputs (list pkg-config cmake)) (inputs - (list qtbase-5 coin3D)) + (list qtbase-5 coin3d)) (home-page "https://github.com/coin3d/soqt") (synopsis "Qt GUI component toolkit library for Coin") (description "SoQt is a Qt GUI component toolkit library for Coin. It is -- cgit v1.2.3 From 94fa92cc8ebcaa7ea8a401d34fc9d5ed9bd3aa9e Mon Sep 17 00:00:00 2001 From: Jean-Pierre De Jesus DIAZ Date: Tue, 9 Apr 2024 12:22:35 +0200 Subject: gnu: coin3d: Use G-Expressions. * gnu/packages/graphics.scm (coin3d) , : Use G-Expressions. Change-Id: I79a77bda6fc919d9c3b80e77e38855824e81f6e6 Signed-off-by: Christopher Baines --- gnu/packages/graphics.scm | 32 +++++++++++++++----------------- 1 file changed, 15 insertions(+), 17 deletions(-) diff --git a/gnu/packages/graphics.scm b/gnu/packages/graphics.scm index ebbc705cfc..f866318289 100644 --- a/gnu/packages/graphics.scm +++ b/gnu/packages/graphics.scm @@ -1967,28 +1967,26 @@ (define-public coin3d (base32 "1ayg0hl8wanhadahm5xbghghxw1qjwqbrs3dl3ngnff027hsyf8p")) (modules '((guix build utils))) (snippet - '(begin - ;; Delete binaries - (for-each delete-file - '("cfg/csubst.exe" - "cfg/wrapmsvc.exe")) - ;; Delete references to packaging tool cpack. Otherwise the build - ;; fails with "add_subdirectory given source "cpack.d" which is not - ;; an existing directory." - (substitute* "CMakeLists.txt" - ((".*cpack.d.*") "")) - #t)))) + #~(begin + ;; Delete binaries + (for-each delete-file + '("cfg/csubst.exe" + "cfg/wrapmsvc.exe")) + ;; Delete references to packaging tool cpack. Otherwise the build + ;; fails with "add_subdirectory given source "cpack.d" which is not + ;; an existing directory." + (substitute* "CMakeLists.txt" + ((".*cpack.d.*") "")))))) (build-system cmake-build-system) + (arguments + (list #:configure-flags + #~(list "-DCOIN_BUILD_DOCUMENTATION_MAN=ON" + (string-append "-DBOOST_ROOT=" + #$(this-package-input "boost"))))) (native-inputs (list doxygen graphviz)) (inputs (list boost freeglut glew)) - (arguments - `(#:configure-flags - (list - "-DCOIN_BUILD_DOCUMENTATION_MAN=ON" - (string-append "-DBOOST_ROOT=" - (assoc-ref %build-inputs "boost"))))) (home-page "https://github.com/coin3d/coin") (synopsis "High-level 3D visualization library with Open Inventor 2.1 API") -- cgit v1.2.3 From 949c3682b7e4ba29c47c1fd92aecbca815b19d68 Mon Sep 17 00:00:00 2001 From: Jean-Pierre De Jesus DIAZ Date: Tue, 9 Apr 2024 12:22:36 +0200 Subject: gnu: coin3d: Use system expat. * gnu/packages/graphics.scm (coin3d): Remove bundled expat and use the system one. Change-Id: Ief176e320b7f57c5c3f349f244ed7d76e54f8281 Signed-off-by: Christopher Baines --- gnu/packages/graphics.scm | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/gnu/packages/graphics.scm b/gnu/packages/graphics.scm index f866318289..7f704c3e58 100644 --- a/gnu/packages/graphics.scm +++ b/gnu/packages/graphics.scm @@ -1972,6 +1972,10 @@ (define-public coin3d (for-each delete-file '("cfg/csubst.exe" "cfg/wrapmsvc.exe")) + ;; Unbundle expat. + (delete-file-recursively "src/xml/expat") + (substitute* "src/xml/document.cpp" + (("expat/expat\\.h") "expat.h")) ;; Delete references to packaging tool cpack. Otherwise the build ;; fails with "add_subdirectory given source "cpack.d" which is not ;; an existing directory." @@ -1981,12 +1985,13 @@ (define-public coin3d (arguments (list #:configure-flags #~(list "-DCOIN_BUILD_DOCUMENTATION_MAN=ON" + "-DUSE_EXTERNAL_EXPAT=ON" (string-append "-DBOOST_ROOT=" #$(this-package-input "boost"))))) (native-inputs (list doxygen graphviz)) (inputs - (list boost freeglut glew)) + (list boost expat freeglut glew)) (home-page "https://github.com/coin3d/coin") (synopsis "High-level 3D visualization library with Open Inventor 2.1 API") -- cgit v1.2.3 From 39689ffd30f566cdc91704825389e1897e002e20 Mon Sep 17 00:00:00 2001 From: Jean-Pierre De Jesus DIAZ Date: Tue, 9 Apr 2024 12:22:37 +0200 Subject: gnu: coin3d: Avoid use of dlopen. * gnu/packages/graphics.scm (coin3d): Avoid use of dlopen and add missing inputs. Change-Id: I48d93218bd93f6ef4f10fb1c4f1cc22396040d7d Signed-off-by: Christopher Baines --- gnu/packages/graphics.scm | 22 +++++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) diff --git a/gnu/packages/graphics.scm b/gnu/packages/graphics.scm index 7f704c3e58..5d7c95a2a9 100644 --- a/gnu/packages/graphics.scm +++ b/gnu/packages/graphics.scm @@ -81,6 +81,7 @@ (define-module (gnu packages graphics) #:use-module (gnu packages glib) #:use-module (gnu packages gnome) #:use-module (gnu packages gnunet) + #:use-module (gnu packages gnuzilla) #:use-module (gnu packages graphviz) #:use-module (gnu packages gstreamer) #:use-module (gnu packages gtk) @@ -1986,12 +1987,31 @@ (define-public coin3d (list #:configure-flags #~(list "-DCOIN_BUILD_DOCUMENTATION_MAN=ON" "-DUSE_EXTERNAL_EXPAT=ON" + ;; Disable "runtime linking" of libraries, i.e. `dlopen`, + ;; force to use libraries at build time. + "-DFONTCONFIG_RUNTIME_LINKING=OFF" + "-DFREETYPE_RUNTIME_LINKING=OFF" + "-DLIBBZIP2_RUNTIME_LINKING=OFF" + "-DOPENAL_RUNTIME_LINKING=OFF" + ;"-DSIMAGE_RUNTIME_LINKING=OFF" -- Not packaged yet. + "-DZLIB_RUNTIME_LINKING=OFF" + "-DGLU_RUNTIME_LINKING=OFF" + ;"-DSPIDERMONKEY_RUNTIME_LINKING=OFF" -- Can't find mozjs. (string-append "-DBOOST_ROOT=" #$(this-package-input "boost"))))) (native-inputs (list doxygen graphviz)) (inputs - (list boost expat freeglut glew)) + (list boost + bzip2 + expat + fontconfig + freeglut + freetype + glew + libx11 + openal + zlib)) (home-page "https://github.com/coin3d/coin") (synopsis "High-level 3D visualization library with Open Inventor 2.1 API") -- cgit v1.2.3 From 37579d04dc76c2badd1b7feca6d6cdfadd4e61d3 Mon Sep 17 00:00:00 2001 From: Jean-Pierre De Jesus DIAZ Date: Tue, 9 Apr 2024 12:22:38 +0200 Subject: gnu: coin3d: Update to 4.0.2. * gnu/packages/graphics.scm (coin3d): Update to 4.0.2. Change-Id: I0ca8cd6eff933a764005447d648ca2f020d8ee7f Signed-off-by: Christopher Baines --- gnu/packages/graphics.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/graphics.scm b/gnu/packages/graphics.scm index 5d7c95a2a9..85e4eed3b1 100644 --- a/gnu/packages/graphics.scm +++ b/gnu/packages/graphics.scm @@ -1955,17 +1955,17 @@ (define-public opencsg (define-public coin3d (package (name "coin3d") - (version "4.0.0") + (version "4.0.2") (source (origin (method git-fetch) (uri (git-reference (url "https://github.com/coin3d/coin") - (commit (string-append "Coin-" version)) + (commit (string-append "v" version)) (recursive? #t))) (file-name (git-file-name name version)) (sha256 - (base32 "1ayg0hl8wanhadahm5xbghghxw1qjwqbrs3dl3ngnff027hsyf8p")) + (base32 "1p59q67zc45pwicknsccvmby09snhz35725wr3xsh2v6kxza76a4")) (modules '((guix build utils))) (snippet #~(begin -- cgit v1.2.3 From 8e3831eb126478cad50588a0f3474667981b11ec Mon Sep 17 00:00:00 2001 From: "cage-dev@twistfold.it" Date: Wed, 10 Apr 2024 17:49:39 +0200 Subject: gnu: telescope: Update to 0.9. * gnu/packages/web-browsers.scm (telescope): Update to 0.9. [inputs]: Replace libevent with libgrapheme. Change-Id: I1eb6567ddc5047d4d36f588086f14f69136588c4 Signed-off-by: Christopher Baines --- gnu/packages/web-browsers.scm | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/gnu/packages/web-browsers.scm b/gnu/packages/web-browsers.scm index b3b785c5f0..0cd2d9972c 100644 --- a/gnu/packages/web-browsers.scm +++ b/gnu/packages/web-browsers.scm @@ -99,6 +99,7 @@ (define-module (gnu packages web-browsers) #:use-module (gnu packages readline) #:use-module (gnu packages sdl) #:use-module (gnu packages sqlite) + #:use-module (gnu packages suckless) #:use-module (gnu packages tcl) #:use-module (gnu packages text-editors) #:use-module (gnu packages tls) @@ -951,21 +952,21 @@ (define-public tinmop (define-public telescope (package (name "telescope") - (version "0.8.1") + (version "0.9") (source (origin (method url-fetch) (uri (string-append "https://github.com/omar-polo/telescope/releases/download/" version "/telescope-" version ".tar.gz")) (sha256 - (base32 "1fblm3mjddhjmcj1c065n9440n72ld037bdjdlyk1fpwd240m1pa")))) + (base32 "1xbwdm3xcahwl6sjqx6f8hhx7nyzyygkjsnxglwxazp8zlmchqy9")))) (build-system gnu-build-system) (arguments `(#:tests? #f)) ;no tests (native-inputs (list gettext-minimal pkg-config)) (inputs - (list libevent libressl ncurses)) + (list libgrapheme libressl ncurses)) (home-page "https://telescope.omarpolo.com/") (synopsis "Gemini client with a terminal interface") (description "Telescope is a w3m-like browser for Gemini.") -- cgit v1.2.3