1
0
forked from tribes/guix

Compare commits

...

15 Commits

Author SHA1 Message Date
Efraim Flashner 5ea6f99ccd gnu: rust-cargo-c: Update to 0.10.21.
* gnu/packages/rust-apps.scm (rust-cargo-c): Update to 0.10.21.
* gnu/packages/rust-crates.scm (lookup-cargo-inputs): Update entry for
rust-cargo-c.

Change-Id: Id2c5d0cc1568d0787257ad44e1865adac7c9377e
2026-03-31 16:47:20 +03:00
Efraim Flashner d22e33ea60 gnu: rust: Update to 1.94.
* gnu/packages/rust.scm (rust): Update to 1.94.
[arguments]: Add a phase to patch more files for the test suite. Adjust
the 'dont-reference-previous-cargo-version phase for changes in the
source.

Change-Id: I965e8b3b4046322820be632d01926331fc9afc38
2026-03-31 16:36:47 +03:00
Efraim Flashner 137491a68e gnu: rust-1.94: Update to 1.94.1.
* gnu/packages/rust.scm (rust-1.94): Update to 1.04.1.

Change-Id: I87806958a0932813da0d98df4754383e97156db1
2026-03-31 09:42:15 +03:00
Efraim Flashner 091c121514 gnu: rav1e: Rewrite the install-completions phase.
* gnu/packages/video.scm (rav1e)[arguments]: Rewrite the
'install-completions phase to make it cleaner.
[native-inputs]: Add rav1e when cross-compiling.

Change-Id: I38e1196ea0fb96986ad5c4ae2221facc06fe746d
2026-03-30 18:41:58 +03:00
Efraim Flashner bc3e92e673 gnu: rust-crates: Unbundle more crates.
* gnu/packages/rust-crates.scm: Unbundle more rust crates.

Change-Id: I93abcf264272b390f526d317fb924941b884376c
2026-03-30 18:40:43 +03:00
Efraim Flashner 7208782e20 gnu: rav1e: Update to 0.8.1.
* gnu/packages/video.scm (rav1e): Update to 0.8.1.
* gnu/packages/rust-crates.scm (lookup-cargo-inputs): Update the rav1e
entry.

Change-Id: I376c812e036d87f669aa035191e43f66665ab1cd
2026-03-30 18:40:29 +03:00
Efraim Flashner 0c3f020dac gnu: dav1d: Update to 1.5.3.
* gnu/packages/video.scm (dav1d): Update to 1.5.3.

Change-Id: Ia14848b247b5b1cc78c78bdfde083362182792d3
2026-03-30 17:32:19 +03:00
Danny Milosavljevic 60f7c740f8 gnu: rust: Install rust-src only once.
* gnu/packages/rust.scm (rust)[arguments]<#:phases>{install}: Install rust-src
only once.
{build}: Explicitly request src/tools/llvm-bitcode-linker (no change).

Closes: guix/guix#6671
Change-Id: I9f64c2d115794126ad82aebb87ad192fcf94abd7
2026-03-30 13:51:48 +03:00
Danny Milosavljevic 42ed3aa37a build-system/cargo: Work around "cargo package" weirdness.
* guix/build/cargo-build-system.scm (package): Modify.

Closes: guix/guix#6825
Change-Id: I0ab97662e52d53ca1558c40bd9c1cbd28eae0197
2026-03-30 13:51:44 +03:00
Danylo Kondratiev cd22c1ad8f gnu: lsof: Update to 4.99.6.
* gnu/packages/lsof.scm (lsof): Update to 4.99.6.
[source]: Remove patch.
[arguments]: Remove field.
* gnu/packages/patches/lsof-compat-linux-6.9.patch: Remove file.
* gnu/local.mk (dist_patch_DATA): Remove it.

Change-Id: I451ae8fdc2e45b0c835a0ddc80ec851cd6fc2737
Signed-off-by: Efraim Flashner <efraim@flashner.co.il>
2026-03-30 13:38:53 +03:00
Test 17f801ee5e gnu: parallel: Update to 20260322.
* gnu/packages/parallel.scm (parallel): Update to 20260322.

Merges guix/guix!7569

Change-Id: I0427312ab1b11bdfa92a79a505c8e1cc07ba75b0
Signed-off-by: Efraim Flashner <efraim@flashner.co.il>
2026-03-30 13:31:20 +03:00
Cayetano Santos 3eeff7cc21 gnu: hwloc-2: Use git-fetch.
* gnu/packages/mpi.scm (hwloc-2)[source]: Switch to git-fetch.
[properties]: Delete.
[arguments]<#:phases>: Remove ’delete-configure and ’move-man3-pages;
add ’move-man-pages.

Merges guix/guix!7434

Change-Id: Id0ae1c858c4dc0d52de45f6a1714cb63019bb7b3
2026-03-30 12:12:42 +02:00
Cayetano Santos ea44e60c30 gnu: hwloc-2: Disinherit from hwloc-1.
* gnu/packages/mpi.scm (hwloc-2)[inherit]: Remove field.
[name, build-system, home-page, synopsis, description, license]: Copy
from hwloc.
[inputs, native-inputs, arguments]: Copy from hwloc and incorporate
changes.

Change-Id: I9330782463bc740534bc5f974b18fe987a61f2f4
2026-03-30 12:10:46 +02:00
Eric Bavier ebf496e893 gnu: nickle: Update to 2.107.
* gnu/packages/nickle.scm (nickle): Update to 2.107.
[source]: Remove patch.  Tarballs now xz-compressed.
[build-system]: Use meson-build-system.
[native-inputs]: New field.  Include 'bc' for tests and
'ruby-asciidoctor-pdf' for "nickle-tutorial.pdf" target.
[arguments]: Add 'disable-benchmarks phase; remove others.
* gnu/packages/patches/nickle-man-release-date.patch: Delete file.
* gnu/local.mk (dist_patch_DATA): Remove it.

Merges guix/guix!7236

Change-Id: Ia3ee04696965720b38b1f6e907983e6d2fe47e07
Signed-off-by: Cayetano Santos <csantosb@inventati.org>
2026-03-30 11:26:35 +02:00
Danylo Kondratiev 41fd9df171 gnu: difftastic: Update to 0.68.0.
* gnu/packages/rust-apps.scm (difftastic): Update to 0.68.0.
[arguments]: Add a phase to link with jemalloc.  Adjust the
cargo-test-flags.
[inputs]: Remove mimalloc, add jemalloc.
* gnu/packages/rust-crates.scm (lookup-cargo-inputs): Update entry for
difftastic.

Change-Id: I672f8045872c4d4fedf9f7ba05ecc566b5b1cb2d
Signed-off-by: Efraim Flashner <efraim@flashner.co.il>
2026-03-30 12:17:03 +03:00
12 changed files with 1048 additions and 665 deletions
-2
View File
@@ -1856,7 +1856,6 @@ dist_patch_DATA = \
%D%/packages/patches/lirc-reproducible-build.patch \
%D%/packages/patches/llvm-13-gcc-14.patch \
%D%/packages/patches/lm-sensors-hwmon-attrs.patch \
%D%/packages/patches/lsof-compat-linux-6.9.patch \
%D%/packages/patches/lsof-fatal-test-failures.patch \
%D%/packages/patches/lua-CVE-2014-5461.patch \
%D%/packages/patches/lua-pkgconfig.patch \
@@ -1982,7 +1981,6 @@ dist_patch_DATA = \
%D%/packages/patches/network-manager-plugin-path.patch \
%D%/packages/patches/newlib-getentropy.patch \
%D%/packages/patches/nginx-socket-cloexec.patch \
%D%/packages/patches/nickle-man-release-date.patch \
%D%/packages/patches/nlopt_CMake-Assume-working-c-compiler-597.patch \
%D%/packages/patches/nnpack-system-libraries.patch \
%D%/packages/patches/nsis-env-passthru.patch \
+2 -24
View File
@@ -37,7 +37,7 @@
(define-public lsof
(package
(name "lsof")
(version "4.99.3")
(version "4.99.6")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -46,8 +46,7 @@
(file-name (git-file-name name version))
(sha256
(base32
"1v32407al4j0hhcph95lv4xvr9h012lii29iyq41iwj39zwfavax"))
(patches (search-patches "lsof-compat-linux-6.9.patch"))))
"08p0c0wci9vam6b29ym7z7sip8gd0j0dz7zy4f0b32dw51rb3z9k"))))
(build-system gnu-build-system)
(native-inputs (list automake
autoconf
@@ -57,27 +56,6 @@
pkg-config
procps ;for ps
util-linux)) ;for unshare
(arguments
(list #:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'fix-configure-ac-version
;; see https://github.com/lsof-org/lsof/commit/932a0b3b1992497e23fd9b8d31116b9ca9b0f98d
;; to fix tests/case-01-version.bash test fail.
(lambda _
(substitute* "configure.ac"
(("4\\.99\\.0")
"4.99.3"))))
(add-before 'bootstrap 'disable-failing-tests
(lambda _
(substitute* "Makefile.am"
;; Fails with ERROR!!! client gethostbyaddr() failure.
(("(TESTS \\+=.*) tests/LTsock" _ prefix)
prefix)
;; Fails on CoW filesystems (eg. btrfs)
(("tests/LTlock") "")
;; Fails because /proc not mounted in sandbox
(("\tdialects/linux/tests/case-20-epoll.bash \\\\")
"\\")))))))
(synopsis "Display information about open files")
(description
"Lsof stands for LiSt Open Files, and it does just that.
+105 -62
View File
@@ -166,70 +166,113 @@ bind processes, and much more.")
(define-public hwloc-2
(package
(inherit hwloc-1)
(name "hwloc")
(version "2.13.0")
(source (origin
(method url-fetch)
(uri (string-append "https://download.open-mpi.org/release/hwloc/v"
(version-major+minor version)
"/hwloc-" version ".tar.bz2"))
(sha256
(base32
"1aqdznqp7f18yg95vbr5n6ccxxdiywacygvn3wbhzn7bnspkdsaj"))
;; XXX: Remove after updating package from 2.13.0.
(patches (search-patches "hwloc-add-with-opencl.patch"))))
(native-inputs (modify-inputs native-inputs
(append autoconf)
(append automake)
(append libtool)
(append opencl-headers)
(append bash))) ;for completion tests
(inputs (modify-inputs inputs
;; XXX: rocm-smi requires libdrm/drm.h but doesn't propagate a
;; package providing these. For now, libdrm is used to provide
;; this header.
(append libdrm)
(append opencl-icd-loader)
(append rocm-smi-lib)
(delete "numactl"))) ;libnuma is no longer needed.
(propagated-inputs (modify-inputs propagated-inputs
;; hwloc.pc lists libze_loader and libxml2 in
;; 'Requires.private' in 'hwloc.pc'.
(append level-zero libxml2)))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/open-mpi/hwloc")
(commit (string-append "hwloc-" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1l9skkcizlv0qvw2lzmysndbm528xvszhiqq3569da157qpa5xav"))
;; XXX: Remove after updating package from 2.13.0.
(patches (search-patches "hwloc-add-with-opencl.patch"))))
(build-system gnu-build-system)
(outputs '("out" ;'lstopo' & co., depends on Cairo, libx11, etc.
"lib" ;small closure
"doc" ;400+ section 3 man pages
"debug"))
(native-inputs
(list autoconf automake libtool opencl-headers bash pkg-config))
(inputs
(append (if (%current-target-system)
'() ;fewer dependencies when cross-compiling
(list libx11 cairo ncurses expat))
(list
;; XXX: rocm-smi requires libdrm/drm.h but doesn't
;; propagate a package providing these. For now, libdrm is
;; used to provide this header.
libdrm
opencl-icd-loader
rocm-smi-lib)))
(propagated-inputs
;; hwloc.pc lists libze_loader and libxml2 in
;; 'Requires.private' in 'hwloc.pc'.
(list level-zero libpciaccess libxml2))
(arguments
(substitute-keyword-arguments arguments
((#:configure-flags flags '())
#~(cons* (string-append "--with-opencl="
#$(this-package-input "opencl-icd-loader"))
"--enable-rsmi"
(string-append "--with-rocm="
#$(this-package-input "rocm-smi-lib"))
#$flags))
((#:phases phases)
#~(modify-phases #$phases
(add-after 'unpack 'delete-configure
(lambda _
;; Remove configure file to generate it with patch.
(delete-file "configure")))
(replace 'skip-linux-libnuma-test
(lambda _
;; Arrange to skip 'tests/hwloc/linux-libnuma', which fails on
;; some machines: <https://github.com/open-mpi/hwloc/issues/213>.
(substitute* "tests/hwloc/linux-libnuma.c"
(("numa_available\\(\\)")
"-1"))))
(add-before 'check 'skip-tests-that-require-/sys
(lambda _
;; 'test-gather-topology.sh' requires /sys as of 2.9.0; skip it.
(setenv "HWLOC_TEST_GATHER_TOPOLOGY" "0")))
(add-before 'check 'skip-test-that-fails-on-qemu
(lambda _
;; Skip test that fails on emulated hardware due to QEMU bug:
;; <https://bugs.gnu.org/40342>.
(substitute* "tests/hwloc/hwloc_get_last_cpu_location.c"
(("hwloc_topology_init" all)
(string-append "exit (77);\n" all)))))))))))
(list
#:configure-flags
#~(list
(string-append
"--with-opencl=" #$(this-package-input "opencl-icd-loader"))
"--enable-rsmi"
(string-append "--with-rocm=" #$(this-package-input "rocm-smi-lib"))
"--localstatedir=/var")
#:phases
#~(modify-phases %standard-phases
(add-before 'check 'skip-linux-libnuma-test
(lambda _
;; Arrange to skip 'tests/hwloc/linux-libnuma', which fails on
;; some machines: <https://github.com/open-mpi/hwloc/issues/213>.
(substitute* "tests/hwloc/linux-libnuma.c"
(("numa_available\\(\\)")
"-1"))))
(add-after 'install 'refine-libnuma
;; Give -L arguments for libraries to avoid propagation
(lambda* (#:key inputs outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "lib"))
(numa (assoc-ref inputs "numactl")))
(substitute* (map (lambda (f) (string-append out "/" f))
'("lib/pkgconfig/hwloc.pc" "lib/libhwloc.la"))
(("-lnuma" lib)
(string-append "-L" numa "/lib " lib))))))
(add-after 'install 'avoid-circular-references
(lambda* (#:key outputs #:allow-other-keys)
(let ((lib (assoc-ref outputs "lib")))
;; Suppress the 'prefix=' and 'exec_prefix=' lines so that the
;; "lib" output doesn't refer to "out".
(substitute* (string-append lib "/lib/pkgconfig/hwloc.pc")
(("^.*prefix=.*$")
"")))))
(add-after 'install 'move-man-pages
(lambda _
;; Move section 1 and 3 man pages to the "doc" output.
(copy-recursively (string-append #$output "/share/man/man1")
(string-append #$output:doc "/share/man/man1"))
(copy-recursively (string-append #$output "/share/man/man7")
(string-append #$output:doc "/share/man/man7"))
(delete-file-recursively
(string-append #$output "/share/man/man1"))
(delete-file-recursively
(string-append #$output "/share/man/man7"))))
(add-before 'check 'skip-tests-that-require-/sys
(lambda _
;; 'test-gather-topology.sh' requires /sys as of 2.9.0; skip it.
(setenv "HWLOC_TEST_GATHER_TOPOLOGY" "0")))
(add-before 'check 'skip-test-that-fails-on-qemu
(lambda _
;; Skip test that fails on emulated hardware due to QEMU bug:
;; <https://bugs.gnu.org/40342>.
(substitute* "tests/hwloc/hwloc_get_last_cpu_location.c"
(("hwloc_topology_init" all)
(string-append "exit (77);\n" all))))))))
(home-page "https://www.open-mpi.org/projects/hwloc/")
(synopsis "Abstraction of hardware architectures")
(description
"hwloc provides a portable abstraction (across OS,
versions, architectures, ...) of the hierarchical topology of modern
architectures, including NUMA memory nodes, sockets, shared caches, cores and
simultaneous multithreading. It also gathers various attributes such as cache
and memory information. It primarily aims at helping high-performance
computing applications with gathering information about the hardware so as to
exploit it accordingly and efficiently.
hwloc may display the topology in multiple convenient formats. It also offers
a powerful programming interface to gather information about the hardware,
bind processes, and much more.")
(license license:bsd-3)))
(define-public hwloc
;; The latest stable series of hwloc.
+23 -16
View File
@@ -1,7 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2016 Nikita <nikita@n0.is>
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2024 Eric Bavier <bavier@posteo.net>
;;; Copyright © 2024,2026 Eric Bavier <bavier@posteo.net>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -20,35 +20,42 @@
(define-module (gnu packages nickle)
#:use-module (gnu packages)
#:use-module (gnu packages algebra)
#:use-module (gnu packages bison)
#:use-module (gnu packages flex)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages readline)
#:use-module (guix build-system gnu)
#:use-module (gnu packages ruby-xyz)
#:use-module (guix build-system meson)
#:use-module (guix download)
#:use-module (guix gexp)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages))
(define-public nickle
(package
(name "nickle")
(version "2.97")
(version "2.107")
(source (origin
(method url-fetch)
(uri (string-append "https://nickle.org/release/nickle-"
version ".tar.gz"))
version ".tar.xz"))
(sha256
(base32
"0gqashcs3r0d1yp6rq6q2ayjdwsjxnd8z0ij55ayrbhn296l7mp2"))
(patches (search-patches "nickle-man-release-date.patch"))))
(build-system gnu-build-system)
(inputs (list readline))
"1wli8p5fv2ldy51ycc8pcx8rl3ph2wbyiqs21qpjadlvildaaqj0"))))
(build-system meson-build-system)
(arguments
'(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'patch-build-date
(lambda _
;; Our patch touches Makefile.am, but rather than rebootstrap,
;; make the substitution directly in Makefile.in.
(substitute* "Makefile.in"
(("BUILD_DATE") "RELEASE_DATE")))))))
(list #:phases #~(modify-phases %standard-phases
(add-before 'configure 'disable-benchmarks
;; Benchmarks would require `gmp` and don't
;; test anything not already covered by other
;; tests, so disable them here.
(lambda _
(substitute* "meson.build"
(("^subdir\\('bench'\\)" &)
(string-append "# " &))))))))
(native-inputs (list bc bison flex pkg-config ruby-asciidoctor-pdf))
(inputs (list readline))
(synopsis "Numeric oriented programming language")
(description
"Nickle is a programming language based prototyping environment with
+2 -2
View File
@@ -82,7 +82,7 @@
(define-public parallel
(package
(name "parallel")
(version "20260222")
(version "20260322")
(outputs '("out" "doc"))
(source
(origin
@@ -90,7 +90,7 @@
(uri (string-append "mirror://gnu/parallel/parallel-"
version ".tar.bz2"))
(sha256
(base32 "0j0zmq1klbvpz590vr2di8yvsniwixlhsmir7zfjy3rajx42l9y6"))
(base32 "1q7g5f13nlwichgh0dk8w5fqjnfnxvwxk6rjy0fd5l7l6blq0ikn"))
(snippet
'(begin
(use-modules (guix build utils))
@@ -1,67 +0,0 @@
This commit adds the patch that fixes:
<https://github.com/lsof-org/lsof/issues/317>
The issue was triggering the following error in the `test` phase that
resulted in a build failure in Linux 6.9 or higher:
FAIL: lib/dialects/linux/tests/case-20-pidfd-pid.bash
From c1678e3f6e4b4d984cb3078b7bf0c9e24bedb8ca Mon Sep 17 00:00:00 2001
From: Jiajie Chen <c@jia.je>
Date: Fri, 17 May 2024 15:22:35 +0800
Subject: [PATCH] [linux] Maintain original output for pidfd in linux 6.9
---
00DIST | 3 +++
lib/dialects/linux/dproc.c | 13 +++++++++++++
2 files changed, 16 insertions(+)
diff --git a/00DIST b/00DIST
index d5a0349..9a29611 100644
--- a/00DIST
+++ b/00DIST
@@ -5605,6 +5605,9 @@ Supplement Regenerated the 4.04 distribution to correct a non-
[linux] Do not embed kernel version in CFLAGS (#314)
+ [linux] Linux 6.9 changed the pidfs appearence in procfs. Try
+ to maintain original output in lsof (#317)
+
Vic Abell <abe@purdue.edu>
July 14, 2018
diff --git a/lib/dialects/linux/dproc.c b/lib/dialects/linux/dproc.c
index cb6bb64..3a7a120 100644
--- a/lib/dialects/linux/dproc.c
+++ b/lib/dialects/linux/dproc.c
@@ -1273,6 +1273,10 @@ static int process_id(struct lsof_context *ctx, /* context */
#endif /* defined(HASEPTOPTS) */
if (rest && rest[0] == '[' && rest[1] == 'p')
fdinfo_mask |= FDINFO_PID;
+ else if (Lf->ntype == N_REGLR && rest && *rest && strcmp(pbuf, "pidfd") == 0) {
+ // https://github.com/lsof-org/lsof/issues/317
+ fdinfo_mask |= FDINFO_PID;
+ }
if ((av = get_fdinfo(ctx, pathi, fdinfo_mask, &fi)) &
FDINFO_POS) {
@@ -1338,6 +1342,15 @@ static int process_id(struct lsof_context *ctx, /* context */
Lf->sf |= SELPTYINFO;
}
#endif /* defined(HASEPTOPTS) && defined(HASPTYEPT) */
+ else if (Lf->ntype == N_REGLR && rest && *rest && Lf->nm &&
+ strcmp(Lf->nm, "pidfd") == 0) {
+ // https://github.com/lsof-org/lsof/issues/317
+ // pidfd since Linux 6.9 becomes a regular file:
+ // /proc/PID/fd/FD -> pidfd:[INODE]
+ (void)snpf(rest, sizeof(pbuf) - (rest - pbuf),
+ "[pidfd:%d]", fi.pid);
+ enter_nm(ctx, rest);
+ }
if (Lf->sf)
link_lfile(ctx);
--
2.45.2
@@ -1,41 +0,0 @@
Submitted close to upstream at
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1070162
From 95ff7e9de4ed815e060b1df59b5b2b105307e0d7 Mon Sep 17 00:00:00 2001
From: Eric Bavier <bavier@posteo.net>
Date: Mon, 29 Apr 2024 23:34:15 -0500
Subject: [PATCH] Fixes substitution of REALEASE_DATE in nickle.1
* Makefile.am (nickle.1): 'BUILD_DATE' -> 'RELEASE_DATE'.
* nickle.1.in: Include version in footer.
---
Makefile.am | 2 +-
nickle.1.in | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/Makefile.am b/Makefile.am
index ba28ec9..5ed56a3 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -96,7 +96,7 @@ RELEASE_FILES = $(TARFILE) $(SIGFILE) $(SRPMFILE) $(RPMFILE)
nickle.1: nickle.1.in nickle-config.h
sed -e 's,@''VERSION@,$(VERSION),' \
- -e 's,@''BUILD_DATE@,$(BUILD_DATE),' \
+ -e 's,@''RELEASE_DATE@,$(RELEASE_DATE),' \
-e 's,@''pkgdatadir@,$(pkgdatadir),' $(top_srcdir)/nickle.1.in > $@
nickle.spec: nickle.spec.in nickle-config.h
diff --git a/nickle.1.in b/nickle.1.in
index 4871ac2..1ab9e08 100644
--- a/nickle.1.in
+++ b/nickle.1.in
@@ -1,4 +1,4 @@
-.TH NICKLE 1 "@RELEASE_DATE@"
+.TH NICKLE 1 "@RELEASE_DATE@" "nickle @VERSION@"
.SH NAME
nickle \- a desk calculator language
.SH SYNOPSIS
--
2.41.0
+23 -20
View File
@@ -957,33 +957,36 @@ highlighting tool to ease code review from your terminal.")
(define-public difftastic
(package
(name "difftastic")
(version "0.63.0")
(version "0.68.0")
(source
(origin
(method url-fetch)
(uri (crate-uri "difftastic" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"0md332fch4b87akdvljzxp4m2k5yri7cpkz3n54jc762j7j9qmrz"))))
(base32 "012h76wx5jv6czc9j4awfan7vhrc6g5fdgnxrjmzg5q27wn99hn6"))))
(build-system cargo-build-system)
(arguments
`(#:install-source? #f
#:cargo-test-flags
`("--release" "--"
"--skip=display::side_by_side::tests::test_display_hunks"
"--skip=display::style::tests::split_string_cjk"
"--skip=display::style::tests::split_string_cjk2"
"--skip=display::style::tests::split_string_simple"
"--skip=display::style::tests::split_string_unicode"
"--skip=display::style::tests::test_combining_char"
"--skip=display::style::tests::test_split_and_apply"
,(string-append "--skip=display::style::tests::"
"test_split_and_apply_gap_between_styles_on_wrap_boundary")
"--skip=display::style::tests::test_split_and_apply_trailing_text"
"--skip=display::style::tests::test_split_and_apply_trailing_text_newline")))
(list
#:install-source? #f
#:cargo-test-flags
'(list "--"
"--skip=display::side_by_side::tests::test_display_hunks"
"--skip=display::style")
#:phases
#~(modify-phases %standard-phases
;; jemalloc needs unbundling for tikv-jemallocator-sys
(add-before 'build 'override-jemalloc
(lambda* (#:key inputs #:allow-other-keys)
(let ((jemalloc (assoc-ref inputs "jemalloc")))
;; This flag is needed when not using the bundled jemalloc.
;; https://github.com/tikv/jemallocator/issues/19
(setenv
"CARGO_FEATURE_UNPREFIXED_MALLOC_ON_SUPPORTED_PLATFORMS" "1")
(setenv "JEMALLOC_OVERRIDE"
(string-append jemalloc "/lib/libjemalloc.so"))))))))
(inputs
(cons mimalloc (cargo-inputs 'difftastic)))
(cons jemalloc (cargo-inputs 'difftastic)))
(home-page "https://difftastic.wilfred.me.uk/")
(synopsis "Structural diff command that understands syntax")
(description
@@ -3791,14 +3794,14 @@ background agent taking care of maintaining the necessary state.")
(define-public rust-cargo-c
(package
(name "rust-cargo-c")
(version "0.10.20+cargo-0.94.0")
(version "0.10.21+cargo-0.95.0")
(source
(origin
(method url-fetch)
(uri (crate-uri "cargo-c" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32 "0q1198xlkcd50nxx722s18lpm6hacnvzqqacb0xdld8ll9z3m5ay"))))
(base32 "14bfybh3gzcrk7h22xxxhib1zc3m95j52ib258wxv64n939gln54"))))
(build-system cargo-build-system)
(arguments (list #:install-source? #f))
(native-inputs
File diff suppressed because it is too large Load Diff
+20 -5
View File
@@ -1830,8 +1830,8 @@ ge13ca993e8ccb9ba9847cc330696e02839f328f7/jemalloc"))
(define-public rust-1.94
(let ((base-rust
(rust-bootstrapped-package
rust-1.93 "1.94.0"
"0k274dla70wnajjli2w80by9k4nqf2wah1lw9xhzy8gkscf94gxq")))
rust-1.93 "1.94.1"
"056mbblkhn5ig62v09r6938qmnb09ygy32n62vvwvqqjbxi2l52c")))
(package
(inherit base-rust)
(source
@@ -1901,7 +1901,7 @@ ge13ca993e8ccb9ba9847cc330696e02839f328f7/jemalloc"))
;;; Here we take the latest included Rust, make it public, and re-enable tests
;;; and extra components such as rustfmt.
(define-public rust
(let ((base-rust rust-1.93))
(let ((base-rust rust-1.94))
(package
(inherit base-rust)
(properties (append
@@ -1922,6 +1922,17 @@ ge13ca993e8ccb9ba9847cc330696e02839f328f7/jemalloc"))
(cons '(srfi srfi-26) modules))
((#:phases phases)
`(modify-phases ,phases
(add-after 'unpack 'patch-shebangs-in-tests
(lambda* (#:key inputs #:allow-other-keys)
(with-directory-excursion
"src/tools/rust-analyzer/crates/parser/test_data"
(substitute* '("lexer/ok/shebang_frontmatter.rast"
"parser/inline/ok/frontmatter.rast")
(("/usr/bin/env cargo")
(search-input-file inputs "bin/cargo")))
(substitute* "lexer/ok/single_line_comments.rast"
(("/usr/bin/env bash")
(search-input-file inputs "bin/bash"))))))
(add-after 'unpack 'disable-tests-requiring-git
(lambda _
(substitute* "src/tools/cargo/tests/testsuite/publish_lockfile.rs"
@@ -2063,6 +2074,7 @@ ge13ca993e8ccb9ba9847cc330696e02839f328f7/jemalloc"))
"library/std" ;rustc
"src/tools/cargo"
"src/tools/clippy"
"src/tools/llvm-bitcode-linker"
"src/tools/rust-analyzer"
"src/tools/rustfmt"))))
(replace 'check
@@ -2082,7 +2094,10 @@ ge13ca993e8ccb9ba9847cc330696e02839f328f7/jemalloc"))
(replace 'install
;; Phase overridden to also install more tools.
(lambda* (#:key outputs #:allow-other-keys)
(invoke "./x.py" "install")
;; Install rustc, std, and llvm-bitcode-linker.
;; rust-src is handled separately in 'install-rust-src'.
(invoke "./x.py" "install" "compiler/rustc" "library/std"
"llvm-bitcode-linker")
(substitute* "config.toml"
;; Adjust the prefix to the 'cargo' output.
(("prefix = \"[^\"]*\"")
@@ -2130,7 +2145,7 @@ ge13ca993e8ccb9ba9847cc330696e02839f328f7/jemalloc"))
(with-directory-excursion
(string-append (assoc-ref outputs "rust-src")
"/lib/rustlib/src/rust/src/tools/")
(substitute* (find-files "." "\\.rs$")
(substitute* (find-files "." "\\.(rs|rast)$")
(("#!.*/bin/cargo")
(string-append "#!" (assoc-ref outputs "cargo")
"/bin/cargo"))))))
+43 -47
View File
@@ -4223,7 +4223,7 @@ be used for realtime video capture via Linux-specific APIs.")
"-DENABLE_QSV11=OFF"
"-DENABLE_NVENC=OFF"
;; Requires a custom version of websocketpp in inputs, that's
;; patched to be compatible with recent versions of Boost
;; patched to be compatible with recent versions of Boost
"-DENABLE_WEBSOCKET=ON"
;; Browser plugin requires cef, but it is not packaged yet.
;; <https://bitbucket.org/chromiumembedded/cef/src/master/>
@@ -6486,7 +6486,7 @@ and audio capture, network stream playback, and many more.")
(define-public dav1d
(package
(name "dav1d")
(version "1.5.1")
(version "1.5.3")
(source
(origin
(method git-fetch)
@@ -6495,7 +6495,7 @@ and audio capture, network stream playback, and many more.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1n0b5m4srdjsqg15plc9fng5kjv14ygqahjxy8863fbzhr13vjx9"))))
(base32 "0x19r721gf91a37xqm70j7qcpadyd3m9lcf1lasxq73wnby5lxqk"))))
(build-system meson-build-system)
(native-inputs
(if (target-x86?)
@@ -6777,63 +6777,59 @@ result in several formats:
(define-public rav1e
(package
(name "rav1e")
(version "0.7.1")
(version "0.8.1")
(source
(origin
(method url-fetch)
(uri (crate-uri "rav1e" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32 "1sawva6nmj2fvynydbcirr3nb7wjyg0id2hz2771qnv6ly0cx1yd"))))
(base32 "0axk3ji3jmlr81svmsy5zvj8shmhpp8lz5nyghkq752xx1bdvdj3"))))
(build-system cargo-build-system)
(arguments
`(#:install-source? #f
(list
#:install-source? #f
#:modules '((guix build cargo-build-system)
(guix build utils)
(ice-9 match))
#:phases
(modify-phases %standard-phases
(replace 'build
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(invoke "cargo" "cinstall" "--release"
;; Only build the dynamic library.
"--library-type" "cdylib"
(string-append "--prefix=" out)))))
(add-after 'install 'install-completions
(lambda* (#:key native-inputs outputs #:allow-other-keys)
(unless ,(%current-target-system)
(let* ((out (assoc-ref outputs "out"))
(share (string-append out "/share"))
(bash-completions-dir
(string-append out "/etc/bash_completion.d"))
(zsh-completions-dir
(string-append share "/zsh/site-functions"))
(fish-completions-dir
(string-append share "/fish/vendor_completions.d"))
(elvish-completions-dir
(string-append share "/elvish/lib"))
(rav1e (string-append out "/bin/rav1e"))
(common-flags '("-" "-o" "-" "advanced" "--completion")))
(mkdir-p bash-completions-dir)
(with-output-to-file
(string-append bash-completions-dir "/rav1e")
(lambda _ (apply invoke rav1e (append common-flags '("bash")))))
(mkdir-p zsh-completions-dir)
;; This one currently fails to build.
;(with-output-to-file
; (string-append zsh-completions-dir "/_rav1e")
; (lambda _ (apply invoke rav1e (append common-flags '("zsh")))))
(mkdir-p fish-completions-dir)
(with-output-to-file
(string-append fish-completions-dir "/rav1e.fish")
(lambda _ (apply invoke rav1e (append common-flags '("fish")))))
(mkdir-p elvish-completions-dir)
(with-output-to-file
(string-append elvish-completions-dir "/rav1e")
(lambda _
(apply invoke rav1e (append common-flags '("elvish"))))))))))))
#~(modify-phases %standard-phases
(replace 'build
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(invoke "cargo" "cinstall" "--release"
;; Only build the dynamic library.
"--library-type" "cdylib"
(string-append "--prefix=" out)))))
(add-after 'install 'install-completions
(lambda* (#:key native-inputs #:allow-other-keys)
(for-each
(match-lambda
((shell . path)
(mkdir-p (in-vicinity #$output (dirname path)))
(let ((binary
(if #$(%current-target-system)
(search-input-file native-inputs "bin/rav1e")
(in-vicinity #$output "bin/rav1e"))))
(with-output-to-file (in-vicinity #$output path)
(lambda _
(invoke binary
"-" "-o"
"-" "advanced"
"--completion" shell))))))
'(("bash" . "share/bash-completion/completions/rav1e")
("elvish" . "share/elvish/lib/rav1e")
("fish" . "share/fish/vendor_completions.d/rav1e.fish")
;; This one currently fails to build.
;("zsh" . "share/zsh/site-functions/_rav1e")
)))))))
(native-inputs
(append (if (target-x86?)
(list nasm)
'())
(if (%current-target-system)
(list this-package)
'())
(list pkg-config rust-cargo-c)))
(inputs
(cons* libgit2-1.9 zlib (cargo-inputs 'rav1e)))
+11 -1
View File
@@ -390,10 +390,20 @@ directory = '" vendor-dir "'") port)
(for-each
(lambda (crate)
(invoke "tar" "xzf" crate "-C" vendor-dir))
(find-files "target/package" "\\.crate$"))
(map (lambda (f) (string-append "target/package/" f))
(scandir "target/package"
(lambda (f) (string-suffix? ".crate" f)))))
(patch-cargo-checksums #:vendor-dir vendor-dir))
cargo-package-crates))
;; Cargo creates target/package/tmp-crate/ as scratch space during
;; packaging and leaves .crate file copies there after uplifting them
;; to target/package/. Delete it so the repacking scandir does not
;; pick the tmp-crate directory instead of the extracted crate
;; directory when crate names sort after "tmp-crate" alphabetically.
(when (file-exists? "target/package/tmp-crate")
(delete-file-recursively "target/package/tmp-crate"))
;; Then unpack the crate, reset the timestamp of all contained files, and
;; repack them. This is necessary to ensure that they are reproducible.
(with-directory-excursion "target/package"