summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gnu/local.mk1
-rw-r--r--gnu/packages/admin.scm3
-rw-r--r--gnu/packages/bioinformatics.scm4
-rw-r--r--gnu/packages/electronics.scm19
-rw-r--r--gnu/packages/lisp-xyz.scm4
-rw-r--r--gnu/packages/opencl.scm20
-rw-r--r--gnu/packages/patches/daemontools-gcc14.patch561
-rw-r--r--gnu/packages/ruby-xyz.scm39
-rw-r--r--gnu/packages/spreadsheet.scm23
9 files changed, 613 insertions, 61 deletions
diff --git a/gnu/local.mk b/gnu/local.mk
index af9c49bd90..a2a78dd74f 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1183,6 +1183,7 @@ dist_patch_DATA = \
%D%/packages/patches/cursynth-wave-rand.patch \
%D%/packages/patches/cvs-CVE-2017-12836.patch \
%D%/packages/patches/d-feet-drop-unused-meson-argument.patch \
+ %D%/packages/patches/daemontools-gcc14.patch \
%D%/packages/patches/dante-non-darwin.patch \
%D%/packages/patches/date-ignore-zonenow.patch \
%D%/packages/patches/date-output-pkg-config-files.patch \
diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm
index cfbff824d3..237f0e02a8 100644
--- a/gnu/packages/admin.scm
+++ b/gnu/packages/admin.scm
@@ -269,7 +269,8 @@ usual file attributes can be checked for inconsistencies.")
"daemontools-" version ".tar.gz"))
(sha256
(base32
- "07scvw88faxkscxi91031pjkpccql6wspk4yrlnsbrrb5c0kamd5"))))
+ "07scvw88faxkscxi91031pjkpccql6wspk4yrlnsbrrb5c0kamd5"))
+ (patches (search-patches "daemontools-gcc14.patch"))))
(build-system gnu-build-system)
(arguments
(list #:tests? #f ;; No tests as far as I can tell.
diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm
index a12eef0591..c59c7fa5db 100644
--- a/gnu/packages/bioinformatics.scm
+++ b/gnu/packages/bioinformatics.scm
@@ -23563,7 +23563,7 @@ compute communities on graphs weighted or unweighted.")
(define-public ivar
(package
(name "ivar")
- (version "1.4.2")
+ (version "1.4.4")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -23572,7 +23572,7 @@ compute communities on graphs weighted or unweighted.")
(file-name (git-file-name name version))
(sha256
(base32
- "0v3rsak84ilg4iaynwpmmkj507vham5rjk2pfsmylpaqylgc69yx"))))
+ "1bwygjv81m4yv5ycxb5gx22k6njgwrzzs7jrsadq6363klcv4irh"))))
(build-system gnu-build-system)
(arguments
(list
diff --git a/gnu/packages/electronics.scm b/gnu/packages/electronics.scm
index a13ad2196a..05bee696b2 100644
--- a/gnu/packages/electronics.scm
+++ b/gnu/packages/electronics.scm
@@ -106,7 +106,7 @@ individual low-level driver modules.")
(home-page "https://www.comedi.org/")
(license license:lgpl2.1)))
-(define-public librnd
+(define librnd
(package
(name "librnd")
(version "4.3.2")
@@ -561,12 +561,12 @@ The following features are currently available:
(define-public opensta
;; There are no releases, we use last commit.
- (let ((commit "eb8d39a7dd81b5ca2582ad9bbce0fb6e094b3e0f")
+ (let ((commit "12f03395ec80d3593f4796b2a3cf5480e75735bd")
(revision "0"))
(package
(name "opensta")
;; The version string is taken from the CMakeLists.txt.
- (version (git-version "2.6.2" revision commit))
+ (version (git-version "2.7.0" revision commit))
(source
(origin
(method git-fetch)
@@ -575,20 +575,27 @@ The following features are currently available:
(commit commit)))
(file-name (git-file-name name version))
(sha256
- (base32 "0bpc7fj4pd5713yny2vrh542jbag1kj20g0ji01c9scqb9av5qw5"))))
+ (base32 "1gka50p4wv2b49d8jbw5fs3qg7cppa8ynl3diqgdf8mqgskwapzf"))))
(build-system cmake-build-system)
(arguments
(list
+ ;; Tests expect output sta binary inside source tree.
+ #:out-of-source? #f
#:phases
#~(modify-phases %standard-phases
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
- (invoke "../source/test/regression")))))
+ (invoke "../test/regression"))))
+ (add-before 'build 'create-build-dir
+ (lambda _
+ (mkdir-p "./build")
+ (chdir "./build"))))
#:configure-flags
#~(list
(string-append "-DCUDD_DIR=" #$(this-package-input "cudd"))
- (string-append "-DBUILD_SHARED_LIBS=YES"))))
+ (string-append "-DBUILD_SHARED_LIBS=YES")
+ "-B./build")))
(native-inputs (list bison flex swig))
(inputs (list cudd eigen tcl tcllib zlib))
(synopsis "Parallax Static Timing Analyzer")
diff --git a/gnu/packages/lisp-xyz.scm b/gnu/packages/lisp-xyz.scm
index de64f618f8..0d4b6f21e5 100644
--- a/gnu/packages/lisp-xyz.scm
+++ b/gnu/packages/lisp-xyz.scm
@@ -32972,7 +32972,7 @@ has a small codebase that's easy to understand and use.")
(define-public sbcl-wayflan
(package
(name "sbcl-wayflan")
- (version "0.0.4")
+ (version "0.1.0")
(source
(origin
(method git-fetch)
@@ -32981,7 +32981,7 @@ has a small codebase that's easy to understand and use.")
(commit (string-append "v" version))))
(file-name (git-file-name "cl-wayflan" version))
(sha256
- (base32 "0y6hzskp1vgaigzj5b3i695sc6dn5mk7nlxs21nh5ybzmf4chhyy"))))
+ (base32 "11n8w4fh996gspgcsfhbrcmz7az4yrx9a15jh6n72kswgjzq0s5j"))))
(build-system asdf-build-system/sbcl)
(native-inputs
(list sbcl-parachute))
diff --git a/gnu/packages/opencl.scm b/gnu/packages/opencl.scm
index 40fa5981fe..114e5315cf 100644
--- a/gnu/packages/opencl.scm
+++ b/gnu/packages/opencl.scm
@@ -78,26 +78,6 @@
(home-page "https://registry.khronos.org/OpenCL/")
(license license:asl2.0)))
-(define (make-opencl-headers major-version subversion)
- ;; The upstream OpenCL-Headers repository is no longer separating headers by
- ;; version; instead, you are supposed to #define CL_TARGET_OPENCL_VERSION.
- (deprecated-package (string-append "opencl-headers-"
- major-version "."
- subversion) opencl-headers))
-
-(define-public opencl-headers-2.2
- (make-opencl-headers "2" "2"))
-(define-public opencl-headers-2.1
- (make-opencl-headers "2" "1"))
-(define-public opencl-headers-2.0
- (make-opencl-headers "2" "0"))
-(define-public opencl-headers-1.2
- (make-opencl-headers "1" "2"))
-(define-public opencl-headers-1.1
- (make-opencl-headers "1" "1"))
-(define-public opencl-headers-1.0
- (make-opencl-headers "1" "0"))
-
(define-public opencl-clhpp
(package
(name "opencl-clhpp")
diff --git a/gnu/packages/patches/daemontools-gcc14.patch b/gnu/packages/patches/daemontools-gcc14.patch
new file mode 100644
index 0000000000..00b772bc3b
--- /dev/null
+++ b/gnu/packages/patches/daemontools-gcc14.patch
@@ -0,0 +1,561 @@
+Taken from Debian, see
+https://salsa.debian.org/debian/daemontools/-/blob/6b5584ccae6bd7c8cb6f47dd71062e3b1cd0a038/debian/patches/0005-fix-ftbfs.patch
+
+From: =?utf-8?b?SmFuIE1vasW+w63FoQ==?= <jan.mojzis@gmail.com>
+Date: Sat, 30 Mar 2024 10:15:13 +0100
+Subject: fix ftbfs
+
+Forwarded: no
+---
+ daemontools-0.76/src/chkshsgr.c | 3 ++-
+ daemontools-0.76/src/envdir.c | 2 +-
+ daemontools-0.76/src/envuidgid.c | 2 +-
+ daemontools-0.76/src/fghack.c | 6 ++++--
+ daemontools-0.76/src/matchtest.c | 1 +
+ daemontools-0.76/src/multilog.c | 3 ++-
+ daemontools-0.76/src/pathexec.h | 4 ++--
+ daemontools-0.76/src/pathexec_env.c | 6 +++---
+ daemontools-0.76/src/pathexec_run.c | 3 ++-
+ daemontools-0.76/src/pgrphack.c | 2 +-
+ daemontools-0.76/src/prot.c | 4 +++-
+ daemontools-0.76/src/seek_set.c | 1 +
+ daemontools-0.76/src/setlock.c | 2 +-
+ daemontools-0.76/src/setuidgid.c | 2 +-
+ daemontools-0.76/src/sgetopt.c | 2 +-
+ daemontools-0.76/src/sgetopt.h | 2 +-
+ daemontools-0.76/src/softlimit.c | 2 +-
+ daemontools-0.76/src/subgetopt.c | 2 +-
+ daemontools-0.76/src/subgetopt.h | 2 +-
+ daemontools-0.76/src/supervise.c | 6 ++++--
+ daemontools-0.76/src/svc.c | 2 +-
+ daemontools-0.76/src/svscan.c | 2 +-
+ daemontools-0.76/src/trycpp.c | 3 +++
+ daemontools-0.76/src/tryflock.c | 2 +-
+ daemontools-0.76/src/trypoll.c | 1 +
+ daemontools-0.76/src/trysgact.c | 2 +-
+ daemontools-0.76/src/trysgprm.c | 2 +-
+ daemontools-0.76/src/tryshsgr.c | 13 ++++++++-----
+ daemontools-0.76/src/tryulong64.c | 5 ++++-
+ daemontools-0.76/src/trywaitp.c | 2 +-
+ daemontools-0.76/src/uint64.h1 | 2 +-
+ daemontools-0.76/src/uint64.h2 | 5 +++--
+ daemontools-0.76/src/x86cpuid.c | 2 ++
+ 33 files changed, 62 insertions(+), 38 deletions(-)
+
+diff --git a/daemontools-0.76/src/chkshsgr.c b/daemontools-0.76/src/chkshsgr.c
+index 38c352d..470f565 100644
+--- a/daemontools-0.76/src/chkshsgr.c
++++ b/daemontools-0.76/src/chkshsgr.c
+@@ -1,12 +1,13 @@
+ /* Public domain. */
+
+ #include <unistd.h>
++#include <grp.h>
+
+ int main()
+ {
+ short x[4];
+
+ x[0] = x[1] = 0;
+- if (getgroups(1,x) == 0) if (setgroups(1,x) == -1) _exit(1);
++ if (getgroups(1,(gid_t *)x) == 0) if (setgroups(1,(gid_t *)x) == -1) _exit(1);
+ _exit(0);
+ }
+diff --git a/daemontools-0.76/src/envdir.c b/daemontools-0.76/src/envdir.c
+index beb1b1f..d02bc63 100644
+--- a/daemontools-0.76/src/envdir.c
++++ b/daemontools-0.76/src/envdir.c
+@@ -21,7 +21,7 @@ void nomem(void)
+
+ static stralloc sa;
+
+-int main(int argc,const char *const *argv)
++int main(int argc,char **argv)
+ {
+ int fdorigdir;
+ const char *fn;
+diff --git a/daemontools-0.76/src/envuidgid.c b/daemontools-0.76/src/envuidgid.c
+index 294960a..f097db1 100644
+--- a/daemontools-0.76/src/envuidgid.c
++++ b/daemontools-0.76/src/envuidgid.c
+@@ -15,7 +15,7 @@ char strnum[FMT_ULONG];
+ const char *account;
+ struct passwd *pw;
+
+-int main(int argc,const char *const *argv)
++int main(int argc,char **argv)
+ {
+ account = *++argv;
+ if (!account || !*++argv)
+diff --git a/daemontools-0.76/src/fghack.c b/daemontools-0.76/src/fghack.c
+index 34ca1db..262876a 100644
+--- a/daemontools-0.76/src/fghack.c
++++ b/daemontools-0.76/src/fghack.c
+@@ -9,12 +9,13 @@
+
+ int pid;
+
+-int main(int argc,const char * const *argv,const char * const *envp)
++int main(int argc,char **argv,char **envp)
+ {
+ char ch;
+ int wstat;
+ int pi[2];
+ int i;
++ int dummy;
+
+ if (!argv[1])
+ strerr_die1x(100,"fghack: usage: fghack child");
+@@ -28,7 +29,8 @@ int main(int argc,const char * const *argv,const char * const *envp)
+ case 0:
+ close(pi[0]);
+ for (i = 0;i < 30;++i)
+- dup(pi[1]);
++ dummy = dup(pi[1]);
++ (void) dummy;
+ pathexec_run(argv[1],argv + 1,envp);
+ strerr_die4sys(111,FATAL,"unable to run ",argv[1],": ");
+ }
+diff --git a/daemontools-0.76/src/matchtest.c b/daemontools-0.76/src/matchtest.c
+index 980dd1c..1bd4bbc 100644
+--- a/daemontools-0.76/src/matchtest.c
++++ b/daemontools-0.76/src/matchtest.c
+@@ -1,3 +1,4 @@
++#include <unistd.h>
+ #include "match.h"
+ #include "buffer.h"
+ #include "str.h"
+diff --git a/daemontools-0.76/src/multilog.c b/daemontools-0.76/src/multilog.c
+index be27a6a..ea02909 100644
+--- a/daemontools-0.76/src/multilog.c
++++ b/daemontools-0.76/src/multilog.c
+@@ -1,6 +1,7 @@
+ #include <unistd.h>
+ #include <sys/types.h>
+ #include <sys/stat.h>
++#include <stdio.h>
+ #include "direntry.h"
+ #include "alloc.h"
+ #include "buffer.h"
+@@ -172,7 +173,7 @@ void finish(struct cyclog *d,const char *file,const char *code)
+
+ void startprocessor(struct cyclog *d)
+ {
+- const char *args[4];
++ char *args[4];
+ int fd;
+
+ sig_uncatch(sig_term);
+diff --git a/daemontools-0.76/src/pathexec.h b/daemontools-0.76/src/pathexec.h
+index 61da922..f984f77 100644
+--- a/daemontools-0.76/src/pathexec.h
++++ b/daemontools-0.76/src/pathexec.h
+@@ -3,8 +3,8 @@
+ #ifndef PATHEXEC_H
+ #define PATHEXEC_H
+
+-extern void pathexec_run(const char *,const char * const *,const char * const *);
++extern void pathexec_run(const char *,char **,char **);
+ extern int pathexec_env(const char *,const char *);
+-extern void pathexec(const char * const *);
++extern void pathexec(char **);
+
+ #endif
+diff --git a/daemontools-0.76/src/pathexec_env.c b/daemontools-0.76/src/pathexec_env.c
+index 2cb101c..a1404ad 100644
+--- a/daemontools-0.76/src/pathexec_env.c
++++ b/daemontools-0.76/src/pathexec_env.c
+@@ -22,9 +22,9 @@ int pathexec_env(const char *s,const char *t)
+ return stralloc_cat(&plus,&tmp);
+ }
+
+-void pathexec(const char *const *argv)
++void pathexec(char **argv)
+ {
+- const char **e;
++ char **e;
+ unsigned int elen;
+ unsigned int i;
+ unsigned int j;
+@@ -40,7 +40,7 @@ void pathexec(const char *const *argv)
+ if (!plus.s[i])
+ ++elen;
+
+- e = (const char **) alloc((elen + 1) * sizeof(char *));
++ e = (char **) alloc((elen + 1) * sizeof(char *));
+ if (!e) return;
+
+ elen = 0;
+diff --git a/daemontools-0.76/src/pathexec_run.c b/daemontools-0.76/src/pathexec_run.c
+index 1770ac7..7929144 100644
+--- a/daemontools-0.76/src/pathexec_run.c
++++ b/daemontools-0.76/src/pathexec_run.c
+@@ -1,5 +1,6 @@
+ /* Public domain. */
+
++#include <unistd.h>
+ #include "error.h"
+ #include "stralloc.h"
+ #include "str.h"
+@@ -8,7 +9,7 @@
+
+ static stralloc tmp;
+
+-void pathexec_run(const char *file,const char * const *argv,const char * const *envp)
++void pathexec_run(const char *file,char **argv,char **envp)
+ {
+ const char *path;
+ unsigned int split;
+diff --git a/daemontools-0.76/src/pgrphack.c b/daemontools-0.76/src/pgrphack.c
+index 9aa10dc..6b06a84 100644
+--- a/daemontools-0.76/src/pgrphack.c
++++ b/daemontools-0.76/src/pgrphack.c
+@@ -4,7 +4,7 @@
+
+ #define FATAL "pgrphack: fatal: "
+
+-int main(int argc,const char * const *argv,const char * const *envp)
++int main(int argc,char **argv,char **envp)
+ {
+ if (!argv[1]) strerr_die1x(100,"pgrphack: usage: pgrphack child");
+ setsid(); /* shouldn't fail; if it does, too bad */
+diff --git a/daemontools-0.76/src/prot.c b/daemontools-0.76/src/prot.c
+index 79a88c5..45af0ef 100644
+--- a/daemontools-0.76/src/prot.c
++++ b/daemontools-0.76/src/prot.c
+@@ -1,5 +1,7 @@
+ /* Public domain. */
+
++#include <unistd.h>
++#include <grp.h>
+ #include "hasshsgr.h"
+ #include "prot.h"
+
+@@ -8,7 +10,7 @@ int prot_gid(int gid)
+ #ifdef HASSHORTSETGROUPS
+ short x[2];
+ x[0] = gid; x[1] = 73; /* catch errors */
+- if (setgroups(1,x) == -1) return -1;
++ if (setgroups(1,(gid_t *)x) == -1) return -1;
+ #else
+ if (setgroups(1,&gid) == -1) return -1;
+ #endif
+diff --git a/daemontools-0.76/src/seek_set.c b/daemontools-0.76/src/seek_set.c
+index 19b8265..5299201 100644
+--- a/daemontools-0.76/src/seek_set.c
++++ b/daemontools-0.76/src/seek_set.c
+@@ -1,5 +1,6 @@
+ /* Public domain. */
+
++#include <unistd.h>
+ #include <sys/types.h>
+ #include "seek.h"
+
+diff --git a/daemontools-0.76/src/setlock.c b/daemontools-0.76/src/setlock.c
+index eec2192..d900540 100644
+--- a/daemontools-0.76/src/setlock.c
++++ b/daemontools-0.76/src/setlock.c
+@@ -14,7 +14,7 @@ void usage() {
+ int flagndelay = 0;
+ int flagx = 0;
+
+-int main(int argc,const char *const *argv,const char *const *envp)
++int main(int argc,char **argv,char **envp)
+ {
+ int opt;
+ int fd;
+diff --git a/daemontools-0.76/src/setuidgid.c b/daemontools-0.76/src/setuidgid.c
+index 8c683de..90485e9 100644
+--- a/daemontools-0.76/src/setuidgid.c
++++ b/daemontools-0.76/src/setuidgid.c
+@@ -9,7 +9,7 @@
+ const char *account;
+ struct passwd *pw;
+
+-int main(int argc,const char *const *argv,const char *const *envp)
++int main(int argc,char **argv,char **envp)
+ {
+ account = *++argv;
+ if (!account || !*++argv)
+diff --git a/daemontools-0.76/src/sgetopt.c b/daemontools-0.76/src/sgetopt.c
+index 8bb608f..1d6d9f4 100644
+--- a/daemontools-0.76/src/sgetopt.c
++++ b/daemontools-0.76/src/sgetopt.c
+@@ -27,7 +27,7 @@ Documentation in sgetopt.3.
+ int opterr = 1;
+ const char *optprogname = 0;
+
+-int getopt(int argc,const char *const *argv,const char *opts)
++int getopt(int argc,char **argv,const char *opts)
+ {
+ int c;
+ const char *s;
+diff --git a/daemontools-0.76/src/sgetopt.h b/daemontools-0.76/src/sgetopt.h
+index bf8bce6..6a6e111 100644
+--- a/daemontools-0.76/src/sgetopt.h
++++ b/daemontools-0.76/src/sgetopt.h
+@@ -16,7 +16,7 @@
+
+ #include "subgetopt.h"
+
+-extern int sgetoptmine(int,const char *const *,const char *);
++extern int sgetoptmine(int,char **,const char *);
+ extern int sgetopterr;
+ extern const char *sgetoptprogname;
+
+diff --git a/daemontools-0.76/src/softlimit.c b/daemontools-0.76/src/softlimit.c
+index 8be40b8..4d9f81e 100644
+--- a/daemontools-0.76/src/softlimit.c
++++ b/daemontools-0.76/src/softlimit.c
+@@ -36,7 +36,7 @@ void doit(int resource,const char *arg)
+ strerr_die2sys(111,FATAL,"setrlimit failed: ");
+ }
+
+-int main(int argc,const char *const *argv,const char *const *envp)
++int main(int argc,char **argv,char **envp)
+ {
+ int opt;
+
+diff --git a/daemontools-0.76/src/subgetopt.c b/daemontools-0.76/src/subgetopt.c
+index 266e72a..bbbbb6c 100644
+--- a/daemontools-0.76/src/subgetopt.c
++++ b/daemontools-0.76/src/subgetopt.c
+@@ -16,7 +16,7 @@ const char *optarg = 0;
+ int optproblem = 0;
+ int optdone = SUBGETOPTDONE;
+
+-int sgopt(int argc,const char *const *argv,const char *opts)
++int sgopt(int argc,char **argv,const char *opts)
+ {
+ int c;
+ const char *s;
+diff --git a/daemontools-0.76/src/subgetopt.h b/daemontools-0.76/src/subgetopt.h
+index 41ad26a..7e5636e 100644
+--- a/daemontools-0.76/src/subgetopt.h
++++ b/daemontools-0.76/src/subgetopt.h
+@@ -15,7 +15,7 @@
+
+ #define SUBGETOPTDONE -1
+
+-extern int subgetopt(int,const char *const *,const char *);
++extern int subgetopt(int,char **,const char *);
+ extern const char *subgetoptarg;
+ extern int subgetoptind;
+ extern int subgetoptpos;
+diff --git a/daemontools-0.76/src/supervise.c b/daemontools-0.76/src/supervise.c
+index 483e9a2..3a27f42 100644
+--- a/daemontools-0.76/src/supervise.c
++++ b/daemontools-0.76/src/supervise.c
+@@ -2,6 +2,7 @@
+ #include <sys/types.h>
+ #include <sys/stat.h>
+ #include <signal.h>
++#include <stdio.h>
+ #include "sig.h"
+ #include "strerr.h"
+ #include "error.h"
+@@ -81,10 +82,11 @@ void announce(void)
+
+ void trigger(void)
+ {
+- write(selfpipe[1],"",1);
++ int dummy = write(selfpipe[1],"",1);
++ (void) dummy;
+ }
+
+-const char *run[2] = { "./run", 0 };
++char *run[2] = { "./run", 0 };
+
+ int flagfailed = 0;
+
+diff --git a/daemontools-0.76/src/svc.c b/daemontools-0.76/src/svc.c
+index 08e9a5c..aae2d9d 100644
+--- a/daemontools-0.76/src/svc.c
++++ b/daemontools-0.76/src/svc.c
+@@ -19,7 +19,7 @@ char bspace[1];
+
+ int fdorigdir;
+
+-int main(int argc,const char *const *argv)
++int main(int argc,char **argv)
+ {
+ int opt;
+ int fd;
+diff --git a/daemontools-0.76/src/svscan.c b/daemontools-0.76/src/svscan.c
+index 15a8c89..39b8887 100644
+--- a/daemontools-0.76/src/svscan.c
++++ b/daemontools-0.76/src/svscan.c
+@@ -36,7 +36,7 @@ void start(char *fn)
+ struct stat st;
+ int child;
+ int i;
+- const char *args[3];
++ char *args[3];
+
+ if (fn[0] == '.') return;
+
+diff --git a/daemontools-0.76/src/trycpp.c b/daemontools-0.76/src/trycpp.c
+index e4503d4..70bc8d6 100644
+--- a/daemontools-0.76/src/trycpp.c
++++ b/daemontools-0.76/src/trycpp.c
+@@ -1,5 +1,8 @@
+ /* Public domain. */
+
++#include <stdio.h>
++#include <stdlib.h>
++
+ int main()
+ {
+ #ifdef NeXT
+diff --git a/daemontools-0.76/src/tryflock.c b/daemontools-0.76/src/tryflock.c
+index a82ffc2..68599d3 100644
+--- a/daemontools-0.76/src/tryflock.c
++++ b/daemontools-0.76/src/tryflock.c
+@@ -4,7 +4,7 @@
+ #include <sys/file.h>
+ #include <fcntl.h>
+
+-main()
++int main()
+ {
+ flock(0,LOCK_EX | LOCK_UN | LOCK_NB);
+ }
+diff --git a/daemontools-0.76/src/trypoll.c b/daemontools-0.76/src/trypoll.c
+index 6506617..a7b26df 100644
+--- a/daemontools-0.76/src/trypoll.c
++++ b/daemontools-0.76/src/trypoll.c
+@@ -3,6 +3,7 @@
+ #include <sys/types.h>
+ #include <fcntl.h>
+ #include <poll.h>
++#include <unistd.h>
+
+ int main()
+ {
+diff --git a/daemontools-0.76/src/trysgact.c b/daemontools-0.76/src/trysgact.c
+index e264ef2..841b88a 100644
+--- a/daemontools-0.76/src/trysgact.c
++++ b/daemontools-0.76/src/trysgact.c
+@@ -2,7 +2,7 @@
+
+ #include <signal.h>
+
+-main()
++int main()
+ {
+ struct sigaction sa;
+ sa.sa_handler = 0;
+diff --git a/daemontools-0.76/src/trysgprm.c b/daemontools-0.76/src/trysgprm.c
+index a46c82c..3e78a82 100644
+--- a/daemontools-0.76/src/trysgprm.c
++++ b/daemontools-0.76/src/trysgprm.c
+@@ -2,7 +2,7 @@
+
+ #include <signal.h>
+
+-main()
++int main()
+ {
+ sigset_t ss;
+
+diff --git a/daemontools-0.76/src/tryshsgr.c b/daemontools-0.76/src/tryshsgr.c
+index c5ed6d6..ba298a7 100644
+--- a/daemontools-0.76/src/tryshsgr.c
++++ b/daemontools-0.76/src/tryshsgr.c
+@@ -1,16 +1,19 @@
+ /* Public domain. */
+
++#include <unistd.h>
++#include <grp.h>
++
+ int main()
+ {
+ short x[4];
+-
++
+ x[0] = x[1] = 1;
+- if (getgroups(1,x) == 0) if (setgroups(1,x) == -1) _exit(1);
+-
+- if (getgroups(1,x) == -1) _exit(1);
++ if (getgroups(1,(gid_t *)x) == 0) if (setgroups(1,(gid_t *)x) == -1) _exit(1);
++
++ if (getgroups(1,(gid_t *)x) == -1) _exit(1);
+ if (x[1] != 1) _exit(1);
+ x[1] = 2;
+- if (getgroups(1,x) == -1) _exit(1);
++ if (getgroups(1,(gid_t *)x) == -1) _exit(1);
+ if (x[1] != 2) _exit(1);
+ _exit(0);
+ }
+diff --git a/daemontools-0.76/src/tryulong64.c b/daemontools-0.76/src/tryulong64.c
+index 003548a..f3b111d 100644
+--- a/daemontools-0.76/src/tryulong64.c
++++ b/daemontools-0.76/src/tryulong64.c
+@@ -1,8 +1,11 @@
+ /* Public domain. */
+
++#include <unistd.h>
++#include <stdint.h>
++
+ int main()
+ {
+- unsigned long u;
++ uint64_t u;
+ u = 1;
+ u += u; u += u; u += u; u += u; u += u; u += u; u += u; u += u;
+ u += u; u += u; u += u; u += u; u += u; u += u; u += u; u += u;
+diff --git a/daemontools-0.76/src/trywaitp.c b/daemontools-0.76/src/trywaitp.c
+index 319b81f..76b3329 100644
+--- a/daemontools-0.76/src/trywaitp.c
++++ b/daemontools-0.76/src/trywaitp.c
+@@ -3,7 +3,7 @@
+ #include <sys/types.h>
+ #include <sys/wait.h>
+
+-main()
++int main()
+ {
+ waitpid(0,0,0);
+ }
+diff --git a/daemontools-0.76/src/uint64.h1 b/daemontools-0.76/src/uint64.h1
+index 486a380..fde25ca 100644
+--- a/daemontools-0.76/src/uint64.h1
++++ b/daemontools-0.76/src/uint64.h1
+@@ -3,7 +3,7 @@
+ #ifndef UINT64_H
+ #define UINT64_H
+
+-/* sysdep: -ulong64 */
++/* sysdep: -uint64_t */
+
+ typedef unsigned long long uint64;
+
+diff --git a/daemontools-0.76/src/uint64.h2 b/daemontools-0.76/src/uint64.h2
+index 8869e43..fd134f2 100644
+--- a/daemontools-0.76/src/uint64.h2
++++ b/daemontools-0.76/src/uint64.h2
+@@ -3,8 +3,9 @@
+ #ifndef UINT64_H
+ #define UINT64_H
+
+-/* sysdep: +ulong64 */
++/* sysdep: +uint64_t */
+
+-typedef unsigned long uint64;
++#include <stdint.h>
++typedef uint64_t uint64;
+
+ #endif
+diff --git a/daemontools-0.76/src/x86cpuid.c b/daemontools-0.76/src/x86cpuid.c
+index f81c593..122eed1 100644
+--- a/daemontools-0.76/src/x86cpuid.c
++++ b/daemontools-0.76/src/x86cpuid.c
+@@ -1,6 +1,8 @@
+ /* Public domain. */
+
+ #include <signal.h>
++#include <stdlib.h>
++#include <stdio.h>
+
+ void nope()
+ {
diff --git a/gnu/packages/ruby-xyz.scm b/gnu/packages/ruby-xyz.scm
index 80bf94a365..13539b5364 100644
--- a/gnu/packages/ruby-xyz.scm
+++ b/gnu/packages/ruby-xyz.scm
@@ -11644,7 +11644,7 @@ part of the Prawn PDF generator.")
(define-public ruby-puma
(package
(name "ruby-puma")
- (version "6.6.0")
+ (version "6.6.1")
(source
(origin
(method git-fetch) ;for tests
@@ -11654,7 +11654,7 @@ part of the Prawn PDF generator.")
(file-name (git-file-name name version))
(sha256
(base32
- "1pdd7s403pi4y75s1sb4jkghhmm2w9zcqifj7z7yx4z0qfs7lvzv"))))
+ "0wppz08pfwz1ypidjiz199i5jl2qvb9ppg0sdvf0kc7azpx5mphl"))))
(build-system ruby-build-system)
(arguments
(list
@@ -14049,37 +14049,30 @@ common interface over different adapters.")
(define-public ruby-nio4r
(package
(name "ruby-nio4r")
- (version "2.5.2")
+ (version "2.7.4")
(source
(origin
- (method url-fetch)
- (uri (rubygems-uri "nio4r" version))
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/socketry/nio4r")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
(sha256
(base32
- "0gnmvbryr521r135yz5bv8354m7xn6miiapfgpg1bnwsvxz8xj6c"))))
+ "1planm0yrzgkjqvxbfrcp477k030f1cyplpf8g1p7dppgzk2iqqm"))))
(build-system ruby-build-system)
(arguments
- '(#:phases
+ '(#:test-target "spec"
+ #:phases
(modify-phases %standard-phases
- (add-after 'unpack 'remove-unnecessary-dependencies
+ (add-after 'extract-gemspec 'delete-certificate
(lambda _
- (substitute* "spec/spec_helper.rb"
- ;; Coveralls is for uploading test coverage information to an
- ;; online service, and thus unnecessary for building the Guix
- ;; package
- (("require \"coveralls\"") "")
- (("Coveralls\\.wear!") "")
- ;; Remove rspec/retry as we are not retrying the tests
- (("require \"rspec/retry\"") "")
- (("config\\.display_try_failure_messages = true") "")
- (("config\\.verbose_retry = true") ""))))
+ (substitute* "nio4r.gemspec"
+ (("spec.cert_chain = .*") "")
+ (("spec.signing_key = .*") ""))))
(add-before 'check 'compile
(lambda _
- (invoke "rake" "compile")))
- (replace 'check
- (lambda* (#:key tests? #:allow-other-keys)
- (when tests?
- (invoke "rspec")))))))
+ (invoke "rake" "compile"))))))
(native-inputs
(list bundler ruby-rake-compiler ruby-rspec ruby-rubocop))
(synopsis "New I/O for Ruby")
diff --git a/gnu/packages/spreadsheet.scm b/gnu/packages/spreadsheet.scm
index 8c6e543a50..2de8139342 100644
--- a/gnu/packages/spreadsheet.scm
+++ b/gnu/packages/spreadsheet.scm
@@ -1,7 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2020, 2021 Ryan Prior <rprior@protonmail.com>
;;; Copyright © 2020 Ekaitz Zarraga <ekaitz@elenq.tech>
-;;; Copyright © 2021, 2023-2024 jgart <jgart@dismail.de>
+;;; Copyright © 2021, 2023-2025 jgart <jgart@dismail.de>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -26,6 +26,7 @@
#:use-module (guix utils)
#:use-module (guix build-system gnu)
#:use-module (guix build-system python)
+ #:use-module (guix build-system pyproject)
#:use-module (guix licenses)
#:use-module (gnu packages base)
#:use-module (gnu packages bash)
@@ -36,6 +37,7 @@
#:use-module (gnu packages ncurses)
#:use-module (gnu packages time)
#:use-module (gnu packages pkg-config)
+ #:use-module (gnu packages python-build)
#:use-module (gnu packages python-web)
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages statistics)
@@ -99,15 +101,20 @@
(define-public visidata
(package
(name "visidata")
- (version "3.1.1")
+ (version "3.2")
(source
+ ;; PyPI tarball is missing the requirements.txt file.
(origin
- (method url-fetch)
- (uri (pypi-uri "visidata" version))
+ (method git-fetch)
+ (uri
+ (git-reference
+ (url "https://github.com/saulpw/visidata")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
(sha256
(base32
- "0cdhx0n79n9z5d22nr90kkg93ndxcnyl4margs4f8l88iwaq8i4c"))))
- (build-system python-build-system)
+ "1rpds8x7hdwh48v2dja1qq5bamnd63rb8p416nnn8d2n58xkvs4h"))))
+ (build-system pyproject-build-system)
(arguments
(list #:phases
#~(modify-phases %standard-phases
@@ -124,7 +131,9 @@
python-openpyxl
python-xlrd))
(native-inputs
- (list python-pytest))
+ (list python-pytest
+ python-setuptools
+ python-wheel))
(synopsis "Terminal spreadsheet multitool for discovering and arranging data")
(description
"VisiData is an interactive multitool for tabular data. It combines the