Merge branch 'master' into staging

This commit is contained in:
Ludovic Courtès 2022-05-09 14:44:48 +02:00
commit da3be3ff4f
No known key found for this signature in database
GPG key ID: 090B11993D9AEBB5
172 changed files with 138657 additions and 140258 deletions

View file

@ -130,6 +130,7 @@ MODULES = \
guix/cache.scm \
guix/cve.scm \
guix/workers.scm \
guix/least-authority.scm \
guix/ipfs.scm \
guix/build-system.scm \
guix/build-system/android-ndk.scm \
@ -404,8 +405,6 @@ AUX_FILES = \
gnu/packages/aux-files/linux-libre/4.14-x86_64.conf \
gnu/packages/aux-files/linux-libre/4.9-i686.conf \
gnu/packages/aux-files/linux-libre/4.9-x86_64.conf \
gnu/packages/aux-files/linux-libre/4.4-i686.conf \
gnu/packages/aux-files/linux-libre/4.4-x86_64.conf \
gnu/packages/aux-files/pack-audit.c \
gnu/packages/aux-files/python/sanity-check.py \
gnu/packages/aux-files/python/sitecustomize.py \

View file

@ -301,8 +301,28 @@ delete it when leaving the dynamic extent of this call."
(lambda ()
(false-if-exception (delete-file-recursively tmp-dir))))))
(define (wait-child-process)
"Wait for one child process and return a pair, like 'waitpid', or return #f
if there are no child processes left."
(catch 'system-error
(lambda ()
(waitpid WAIT_ANY))
(lambda args
(if (= ECHILD (system-error-errno args))
#f
(apply throw args)))))
(define (status->exit-status status)
"Reify STATUS as an exit status."
(or (status:exit-val status)
;; See <http://www.tldp.org/LDP/abs/html/exitcodes.html#EXITCODESREF>.
(+ 128 (or (status:term-sig status)
(status:stop-sig status)))))
(define* (call-with-container mounts thunk #:key (namespaces %namespaces)
(host-uids 1) (guest-uid 0) (guest-gid 0)
(relayed-signals (list SIGINT SIGTERM))
(child-is-pid1? #t)
(process-spawned-hook (const #t)))
"Run THUNK in a new container process and return its exit status; call
PROCESS-SPAWNED-HOOK with the PID of the new process that has been spawned.
@ -320,20 +340,64 @@ can map more than a single uid/gid.
GUEST-UID and GUEST-GID specify the first UID (respectively GID) that host
UIDs (respectively GIDs) map to in the namespace.
RELAYED-SIGNALS is the list of signals that are \"relayed\" to the container
process when caught by its parent.
When CHILD-IS-PID1? is true, and if NAMESPACES contains 'pid', then the child
process runs directly as PID 1. As such, it is responsible for (1) installing
signal handlers and (2) reaping terminated processes by calling 'waitpid'.
When CHILD-IS-PID1? is false, a new intermediate process is created instead
that takes this responsibility.
Note that if THUNK needs to load any additional Guile modules, the relevant
module files must be present in one of the mappings in MOUNTS and the Guile
load path must be adjusted as needed."
(define thunk*
(if (and (memq 'pid namespaces)
(not child-is-pid1?))
(lambda ()
;; Behave like an init process: create a sub-process that calls
;; THUNK, and wait for child processes. Furthermore, forward
;; RELAYED-SIGNALS to the child process.
(match (primitive-fork)
(0
(call-with-clean-exit thunk))
(pid
(install-signal-handlers pid)
(let loop ()
(match (wait-child-process)
((child . status)
(if (= child pid)
(primitive-exit (status->exit-status status))
(loop)))
(#f
(primitive-exit 128))))))) ;cannot happen
thunk))
(define (periodically-schedule-asyncs)
;; XXX: In Guile there's a time window where a signal-handling async could
;; be queued without being processed by the time we enter a blocking
;; syscall like waitpid(2) (info "(guile) Signals"). This terrible hack
;; ensures pending asyncs get a chance to run periodically.
(sigaction SIGALRM (lambda _ (alarm 1)))
(alarm 1))
(define (install-signal-handlers pid)
;; Install handlers that forward signals to PID.
(define (relay-signal signal)
(false-if-exception (kill pid signal)))
(periodically-schedule-asyncs)
(for-each (lambda (signal)
(sigaction signal relay-signal))
relayed-signals))
(call-with-temporary-directory
(lambda (root)
(let ((pid (run-container root mounts namespaces host-uids thunk
(let ((pid (run-container root mounts namespaces host-uids thunk*
#:guest-uid guest-uid
#:guest-gid guest-gid)))
;; Catch SIGINT and kill the container process.
(sigaction SIGINT
(lambda (signum)
(false-if-exception
(kill pid SIGKILL))))
(install-signal-handlers pid)
(process-spawned-hook pid)
(match (waitpid pid)
((_ . status) status))))))

View file

@ -31,7 +31,8 @@
exec-command
%precious-signals)
#:autoload (shepherd system) (unblock-signals)
#:export (make-forkexec-constructor/container
#:export (default-mounts
make-forkexec-constructor/container
fork+exec-command/container))
;;; Commentary:

View file

@ -586,7 +586,7 @@ when typed in the shell, will automatically expand to the full text."
serialize-fish-abbreviations))
(define (fish-files-service config)
`(("config/fish/config.fish"
`(("fish/config.fish"
,(mixed-text-file
"fish-config.fish"
#~(string-append "\
@ -650,7 +650,7 @@ end\n\n")
(service-type (name 'home-fish)
(extensions
(list (service-extension
home-files-service-type
home-xdg-configuration-files-service-type
fish-files-service)
(service-extension
home-profile-service-type

View file

@ -11,7 +11,7 @@
# Copyright © 2016 Ben Woodcroft <donttrustben@gmail.com>
# Copyright © 2016, 2017, 2018, 2019 Alex Vong <alexvong1995@gmail.com>
# Copyright © 2016, 2017, 2018, 2019, 2020, 2021 Efraim Flashner <efraim@flashner.co.il>
# Copyright © 2016, 2017, 2018, 2019, 2020, 2021 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
# Copyright © 2016, 2017, 2018, 2019, 2020, 2021, 2022 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
# Copyright © 2017, 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
# Copyright © 2017, 2018 Clément Lassieur <clement@lassieur.org>
# Copyright © 2017, 2020 Mathieu Othacehe <m.othacehe@gmail.com>
@ -191,6 +191,7 @@ GNU_SYSTEM_MODULES = \
%D%/packages/debian.scm \
%D%/packages/debug.scm \
%D%/packages/dejagnu.scm \
%D%/packages/dezyne.scm \
%D%/packages/dhall.scm \
%D%/packages/dico.scm \
%D%/packages/dictionaries.scm \
@ -994,8 +995,6 @@ dist_patch_DATA = \
%D%/packages/patches/dbus-c++-gcc-compat.patch \
%D%/packages/patches/dbus-c++-threading-mutex.patch \
%D%/packages/patches/dbxfs-remove-sentry-sdk.patch \
%D%/packages/patches/dealii-fix-compiliation-with-boost-1.78.patch \
%D%/packages/patches/dealii-fix-sundials.patch \
%D%/packages/patches/debops-constants-for-external-program-names.patch \
%D%/packages/patches/debops-debops-defaults-fall-back-to-less.patch \
%D%/packages/patches/dee-vapi.patch \
@ -1029,6 +1028,7 @@ dist_patch_DATA = \
%D%/packages/patches/elm-compiler-fix-map-key.patch \
%D%/packages/patches/elogind-revert-polkit-detection.patch \
%D%/packages/patches/emacs-exec-path.patch \
%D%/packages/patches/emacs-git-email-missing-parens.patch \
%D%/packages/patches/emacs-fix-scheme-indent-function.patch \
%D%/packages/patches/emacs-ignore-empty-xim-styles.patch \
%D%/packages/patches/emacs-json-reformat-fix-tests.patch \
@ -1070,6 +1070,7 @@ dist_patch_DATA = \
%D%/packages/patches/findutils-localstatedir.patch \
%D%/packages/patches/flann-cmake-3.11.patch \
%D%/packages/patches/flatpak-fix-path.patch \
%D%/packages/patches/flatpak-unset-gdk-pixbuf-for-sandbox.patch \
%D%/packages/patches/fontconfig-cache-ignore-mtime.patch \
%D%/packages/patches/foobillard++-pkg-config.patch \
%D%/packages/patches/foomatic-filters-CVE-2015-8327.patch \
@ -1528,6 +1529,7 @@ dist_patch_DATA = \
%D%/packages/patches/netsurf-system-utf8proc.patch \
%D%/packages/patches/netsurf-y2038-tests.patch \
%D%/packages/patches/netsurf-longer-test-timeout.patch \
%D%/packages/patches/nftables-fix-makefile.patch \
%D%/packages/patches/nhc98-c-update.patch \
%D%/packages/patches/nix-dont-build-html-doc.diff \
%D%/packages/patches/nfs4-acl-tools-0.3.7-fixpaths.patch \
@ -1567,6 +1569,7 @@ dist_patch_DATA = \
%D%/packages/patches/openjdk-15-xcursor-no-dynamic.patch \
%D%/packages/patches/openmpi-mtl-priorities.patch \
%D%/packages/patches/openssh-hurd.patch \
%D%/packages/patches/openssh-trust-guix-store-directory.patch \
%D%/packages/patches/openresolv-restartcmd-guix.patch \
%D%/packages/patches/openrgb-unbundle-hueplusplus.patch \
%D%/packages/patches/opensles-add-license-file.patch \
@ -1859,7 +1862,6 @@ dist_patch_DATA = \
%D%/packages/patches/tlf-support-hamlib-4.2+.patch \
gnu/packages/patches/tootle-glib-object-naming.patch \
gnu/packages/patches/tootle-reason-phrase.patch \
%D%/packages/patches/tor-sandbox-i686.patch \
%D%/packages/patches/transcode-ffmpeg.patch \
%D%/packages/patches/transfig-gcc10-fno-common.patch \
%D%/packages/patches/transmission-honor-localedir.patch \
@ -1920,7 +1922,8 @@ dist_patch_DATA = \
%D%/packages/patches/util-linux-tests.patch \
%D%/packages/patches/util-linux-CVE-2021-3995.patch \
%D%/packages/patches/util-linux-CVE-2021-3996.patch \
%D%/packages/patches/valgrind-enable-arm.patch \
%D%/packages/patches/valgrind-enable-arm.patch \
%D%/packages/patches/valgrind-fix-default-debuginfo-path.patch \
%D%/packages/patches/vboot-utils-fix-format-load-address.patch \
%D%/packages/patches/vboot-utils-fix-tests-show-contents.patch \
%D%/packages/patches/vboot-utils-skip-test-workbuf.patch \
@ -1977,8 +1980,6 @@ dist_patch_DATA = \
%D%/packages/patches/xterm-370-explicit-xcursor.patch \
%D%/packages/patches/xygrib-fix-finding-data.patch \
%D%/packages/patches/yggdrasil-extra-config.patch \
%D%/packages/patches/ytfzf-programs.patch \
%D%/packages/patches/ytfzf-updates.patch \
%D%/packages/patches/ytnef-CVE-2021-3403.patch \
%D%/packages/patches/ytnef-CVE-2021-3404.patch \
%D%/packages/patches/zig-use-system-paths.patch

View file

@ -13,7 +13,7 @@
;;; Copyright © 2016 Peter Feigl <peter.feigl@nexoid.at>
;;; Copyright © 2016 John J. Foerch <jjfoerch@earthlink.net>
;;; Copyright © 2016, 2017 Nikita <nikita@n0.is>
;;; Copyright © 20162021 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 20162022 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2016 John Darrington <jmd@gnu.org>
;;; Copyright © 2017 Ben Sturmfels <ben@sturm.com.au>
;;; Copyright © 2017 Ethan R. Jones <doubleplusgood23@gmail.com>
@ -2211,7 +2211,7 @@ module slots, and the list of I/O ports (e.g. serial, parallel, USB).")
(define-public acpica
(package
(name "acpica")
(version "20211217")
(version "20220331")
(source (origin
(method url-fetch)
(uri (string-append
@ -2219,7 +2219,7 @@ module slots, and the list of I/O ports (e.g. serial, parallel, USB).")
version ".tar.gz"))
(sha256
(base32
"0521hmaw2zhi0mpgnaf2i83dykfgql4bx98cg7xqy8wmj649z194"))))
"0yjcl00nnnlw01sz6a1i5d3v75gr17mkbxkxfx2v344al33abk8w"))))
(build-system gnu-build-system)
(native-inputs (list flex bison))
(arguments
@ -2496,7 +2496,7 @@ track changes in important system configuration files.")
(define-public libcap-ng
(package
(name "libcap-ng")
(version "0.8.2")
(version "0.8.3")
(source (origin
(method url-fetch)
(uri (string-append
@ -2504,11 +2504,12 @@ track changes in important system configuration files.")
version ".tar.gz"))
(sha256
(base32
"1sasp1n154aqy9fz0knlb966svm7xg1zjhg1vr4q839bgjvq7h2j"))))
"0ba9dfga7chwf6lf7a03x1a30fgdy2pb4r7pnn1jzfr2is2gdmmy"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags
(list "--without-python")))
(list "--disable-static"
"--without-python")))
(home-page "https://people.redhat.com/sgrubb/libcap-ng/")
(synopsis "Library for more easily working with POSIX capabilities")
(description
@ -3100,13 +3101,13 @@ platform-specific methods.")
(package
(name "audit")
(home-page "https://people.redhat.com/sgrubb/audit/")
(version "3.0.7")
(version "3.0.8")
(source (origin
(method url-fetch)
(uri (string-append home-page "audit-" version ".tar.gz"))
(sha256
(base32
"15r5lrrkv2zj3dvpqssd46w61hmrq27y7c2rz33s20ck59iphk4b"))))
"04w9m9ffvi58z11i344wa1hji9ba68cdklrkizhiwf39mnwxkx5m"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags (list "--with-python=no"
@ -3903,30 +3904,29 @@ information tool.")
(define-public nnn
(package
(name "nnn")
(version "4.4")
(version "4.5")
(source
(origin
(method url-fetch)
(uri (string-append "https://github.com/jarun/nnn/releases/download/v"
version "/nnn-v" version ".tar.gz"))
(sha256
(base32 "0lqn7pyy8c1vy29vn8ad4x23cw67cy1d21ghns6f3w9a1h7kyjp0"))))
(base32 "1aj9hzhpwxl2v1dlf3jpd3rp81z689dq8iycbipc0024dnyibp7s"))))
(build-system gnu-build-system)
(inputs
(list ncurses readline))
(native-inputs
(list pkg-config))
(arguments
`(#:tests? #f ; no tests
#:phases
(modify-phases %standard-phases
(delete 'configure)) ; no configure script
#:make-flags
(list
(string-append "PREFIX="
(assoc-ref %outputs "out"))
(string-append "CC=" ,(cc-for-target))
(string-append "PKG_CONFIG=" ,(pkg-config-for-target)))))
(list #:tests? #f ; no tests
#:make-flags
#~(list
(string-append "PREFIX=" #$output)
(string-append "CC=" #$(cc-for-target))
(string-append "PKG_CONFIG=" #$(pkg-config-for-target)))
#:phases
#~(modify-phases %standard-phases
(delete 'configure)))) ; no configure script
(home-page "https://github.com/jarun/nnn")
(synopsis "Terminal file browser")
(description

View file

@ -127,7 +127,7 @@ greatest common divisor operations.")
(define-public cm
(package
(name "cm")
(version "0.3.1")
(version "0.4.0")
(source (origin
(method url-fetch)
(uri (string-append
@ -135,7 +135,7 @@ greatest common divisor operations.")
version ".tar.gz"))
(sha256
(base32
"0qq6b1kwb1byj8ws33ya5awq0ilkpm32037pi1l4cf2737fg9m42"))))
"04l3inafql40n0r5rq8rmp21zplgdrzblil2kgkpx5s0jbs9i8rr"))))
(build-system gnu-build-system)
(propagated-inputs
(list mpfrcx zlib)) ; Header files included from cm_common.h.

View file

@ -2,6 +2,7 @@
;;; Copyright © 2013 Nikita Karetnikov <nikita@karetnikov.org>
;;; Copyright © 2014, 2015 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2017, 2019 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2022 Paul A. Patience <paul@apatience.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -19,9 +20,11 @@
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu packages apl)
#:use-module (guix licenses)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix git-download)
#:use-module (guix svn-download)
#:use-module (guix gexp)
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix build-system gnu)
#:use-module (gnu packages gettext)
#:use-module (gnu packages maths)
@ -30,30 +33,46 @@
#:use-module (gnu packages sqlite))
(define-public apl
(package
(name "apl")
(version "1.8")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://gnu/apl/apl-" version ".tar.gz"))
(sha256
(base32
"1jxvv2h3y1am1fw6r5sn3say1n0dj8shmscbybl0qhqdia2lqkql"))))
(build-system gnu-build-system)
(home-page "https://www.gnu.org/software/apl/")
(inputs
`(("gettext" ,gettext-minimal)
("lapack" ,lapack)
("pcre" ,pcre2)
("sqlite" ,sqlite)
("readline" ,readline)))
(arguments
`(#:configure-flags (list (string-append
"--with-sqlite3="
(assoc-ref %build-inputs "sqlite")))))
(synopsis "APL interpreter")
(description
"GNU APL is a free interpreter for the programming language APL. It is
(let ((revision 1550))
(package
(name "apl")
(version (string-append "1.8-r" (number->string revision)))
(source
(origin
(method svn-fetch)
(uri (svn-reference
(url "svn://svn.savannah.gnu.org/apl/trunk")
(revision revision)))
(file-name (git-file-name name version))
(sha256
(base32 "1bgc3a09f35zrqq2irhm1hspppnxjqas0fmcw14hkc7910br9ip3"))))
(build-system gnu-build-system)
(home-page "https://www.gnu.org/software/apl/")
(inputs
(list gettext-minimal
lapack
pcre2
readline
sqlite))
(arguments
(list #:configure-flags #~(list (string-append
"--with-sqlite3="
#$(this-package-input "sqlite")))
#:phases
#~(modify-phases %standard-phases
(add-before 'configure 'fix-configure
(lambda _
(substitute* "buildtag.sh"
;; Don't exit on failed SVN-related calls.
(("^ +return 0\n") "")
;; Manually set the SVN revision, since the directory is
;; unversioned and we know it anyway.
(("^SVNINFO=.*")
(string-append "SVNINFO=" #$(number->string revision) "\n"))
;; Requires running svn info on a versioned directory.
(("\\\\\"\\$ARCHIVE_SVNINFO\\\\\"") "\\\"\\\"")))))))
(synopsis "APL interpreter")
(description
"GNU APL is a free interpreter for the programming language APL. It is
an implementation of the ISO standard 13751.")
(license gpl3+)))
(license license:gpl3+))))

View file

@ -490,14 +490,14 @@ under permissive licensing terms. See the 'Copyright' file."))))
(define-public ispell
(package
(name "ispell")
(version "3.4.04")
(version "3.4.05")
(source
(origin
(method url-fetch)
(uri (string-append "https://www.cs.hmc.edu/~geoff/tars/ispell-"
version ".tar.gz"))
(sha256
(base32 "0gp1rwn8grkvz28wgisc2j9w9svldnaiahl3lyis118xabqddg47"))))
(base32 "00jni7gvdswjd9sdwip5ixnvjg2qzv56mn3m8gdgl9gxwgnns36g"))))
(build-system gnu-build-system)
(arguments
`(#:parallel-build? #f
@ -520,8 +520,7 @@ under permissive licensing terms. See the 'Copyright' file."))))
(format port "#define BINDIR \"~a/bin\"~%" out)
(format port "#define LIBDIR \"~a/lib/ispell\"~%" out)
(format port "#define MAN1DIR \"~a/share/man/man1\"~%" out)
(format port "#define MAN45DIR \"~a/share/man/man5\"~%" out))))
#t)))))
(format port "#define MAN45DIR \"~a/share/man/man5\"~%" out)))))))))
(inputs
(list grep ncurses))
(native-inputs

View file

@ -3,7 +3,7 @@
;;; Copyright © 2013, 2015 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2013 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2016, 2020, 2021 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 20172021 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 20172022 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2019 Guy Fleury Iteriteka <hoonandon@gmail.com>
;;; Copyright © 2019 Andy Tai <atai@atai.org>
;;; Copyright © 2020 Jakub Kądziołka <kuba@kadziolka.net>
@ -181,14 +181,14 @@ speed on x86, NEON on ARM, etc.).")
(define-public fasm
(package
(name "fasm")
(version "1.73.29")
(version "1.73.30")
(source
(origin
(method url-fetch)
(uri (string-append "https://flatassembler.net/fasm-"
version ".tgz"))
(sha256
(base32 "0ar1k1504cmwi49y6g254rkzayll0kn90vjd4zj09xv86kcg8a33"))))
(base32 "00giqb94z8cxhv20yiyk8axkd2kzjcg1c0841yzbn7c8lm8m06bm"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; no tests exist

View file

@ -110,6 +110,7 @@
#:use-module (gnu packages qt)
#:use-module (gnu packages rdf)
#:use-module (gnu packages readline)
#:use-module (gnu packages samba)
#:use-module (gnu packages sdl)
#:use-module (gnu packages serialization)
#:use-module (gnu packages sqlite)
@ -4632,37 +4633,44 @@ representations.")
(file-name (git-file-name name version))
(sha256
(base32
"1mziklmqifhnb4kg9ia2r56r8wjn6xp40bkpf484hsgqvnrccl86"))))
"1mziklmqifhnb4kg9ia2r56r8wjn6xp40bkpf484hsgqvnrccl86"))
(modules '((guix build utils)))
(snippet
#~(begin
(delete-file-recursively "iniparser")
(substitute* "configure.ac"
(("AC_CONFIG_FILES\\(iniparser/Makefile\\)") ""))
(substitute* "Makefile.am"
(("SUBDIRS = iniparser") ""))))))
(build-system gnu-build-system)
(native-inputs
(list autoconf automake libtool))
(inputs
(list fftw ncurses pulseaudio))
(native-inputs (list autoconf automake libtool))
(inputs (list fftw ncurses pulseaudio iniparser))
(arguments
`(#:configure-flags
(list (string-append "PREFIX=" %output)
(string-append "FONT_DIR=" %output "/share/consolefonts"))
#:make-flags
(let ((lib (string-append %output "/lib")))
(list (string-append "cava_LDFLAGS = -L" lib " -Wl,-rpath " lib)))
#:phases
(modify-phases %standard-phases
(replace 'bootstrap
(lambda* (#:key outputs #:allow-other-keys)
(setenv "HOME" (getcwd))
(invoke "sh" "autogen.sh")))
(add-before 'build 'make-cava-ldflags
(lambda* (#:key outputs #:allow-other-keys)
(mkdir-p (string-append (assoc-ref outputs "out") "/lib"))
#t))
(add-after 'install 'data
(lambda* (#:key outputs #:allow-other-keys)
(for-each (lambda (file)
(install-file file
(string-append (assoc-ref outputs "out")
"/share/doc/examples")))
(find-files "example_files"))
#t)))))
(list #:configure-flags
#~(list (string-append "PREFIX="
#$output)
(string-append "FONT_DIR="
#$output "/share/consolefonts"))
#:make-flags
#~(let ((lib (string-append #$output "/lib")))
(list (string-append "cava_LDFLAGS = -L" lib " -Wl,-rpath " lib " -lrt")))
#:phases
#~(modify-phases %standard-phases
(replace 'bootstrap
(lambda _
(setenv "HOME"
(getcwd))
(invoke "sh" "autogen.sh")))
(add-before 'build 'make-cava-ldflags
(lambda _
(mkdir-p (string-append #$output "/lib"))))
(add-after 'install 'data
(lambda _
(for-each (lambda (file)
(install-file file
(string-append #$output
"/share/doc/examples")))
(find-files "example_files")))))))
(home-page "https://karlstav.github.io/cava/")
(synopsis "Console audio visualizer for ALSA, MPD, and PulseAudio")
(description "C.A.V.A. is a bar audio spectrum visualizer for the terminal
@ -4990,50 +4998,47 @@ as is the case with audio plugins.")
(base32 "01ngkmfcxyg1bb4qmfvlkkjbx4lx62akxqhizl8zmqnhfcy4p9bx"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; no "check" target
#:make-flags
(list (string-append "PREFIX=" (assoc-ref %outputs "out")))
#:phases
(modify-phases %standard-phases
(delete 'configure) ; no configure script
(add-before 'build 'set-CC-variable-and-show-features
(lambda _
(setenv "CC" "gcc")
(invoke "make" "features")))
(add-after 'install 'make-carla-executable
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(chmod (string-append out "/share/carla/carla") #o555)
#t)))
(add-after 'install 'wrap-executables
(lambda* (#:key inputs outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(wrap-script (string-append out "/bin/carla")
#:guile (search-input-file inputs "bin/guile")
`("GUIX_PYTHONPATH" ":" prefix (,(getenv "GUIX_PYTHONPATH"))))
#t))))))
(list #:tests? #f ; no "check" target
#:make-flags
#~(list (string-append "PREFIX=" #$output))
#:phases
#~(modify-phases %standard-phases
(delete 'configure) ; no configure script
(add-before 'build 'set-CC-variable-and-show-features
(lambda _
(setenv "CC" #$(cc-for-target))
(invoke "make" "features")))
(add-after 'install 'make-carla-executable
(lambda _
(chmod (string-append #$output "/share/carla/carla") #o555)))
(add-after 'install 'wrap-executables
(lambda* (#:key inputs #:allow-other-keys)
(wrap-script (string-append #$output "/bin/carla")
#:guile (search-input-file inputs "bin/guile")
`("GUIX_PYTHONPATH" ":" prefix
(,(getenv "GUIX_PYTHONPATH")))))))))
(inputs
`(("alsa-lib" ,alsa-lib)
("ffmpeg" ,ffmpeg)
("fluidsynth" ,fluidsynth)
("file" ,file)
("liblo" ,liblo)
("libsndfile" ,libsndfile)
("gtk2" ,gtk+-2) ;needed for bridging GTK2 plugins in GTK3 hosts
("gtk+" ,gtk+)
("python-pyliblo" ,python-pyliblo)
("python-pyqt" ,python-pyqt)
("python-rdflib" ,python-rdflib)
;; python-pyqt shows the following error without python-wrapper:
;; Error while finding module specification for 'PyQt5.uic.pyuic'
;; (ModuleNotFoundError: No module named 'PyQt5')
("python-wrapper" ,python-wrapper)
("libx11" ,libx11)
("qtbase" ,qtbase-5)
("zlib" ,zlib)
(list alsa-lib
ffmpeg
fluidsynth
file
liblo
libsndfile
libx11
gtk+-2 ;needed for bridging GTK2 plugins in GTK3 hosts
gtk+
python-pyliblo
python-pyqt
python-rdflib
;; python-pyqt shows the following error without python-wrapper:
;; Error while finding module specification for 'PyQt5.uic.pyuic'
;; (ModuleNotFoundError: No module named 'PyQt5')
python-wrapper
qtbase-5
zlib
;; For WRAP-SCRIPT above.
("guile" ,guile-2.2)))
;; For WRAP-SCRIPT above.
guile-2.2))
(native-inputs
(list pkg-config))
(home-page "https://kx.studio/Applications:Carla")
@ -5444,55 +5449,54 @@ while still staying in time.")
(define-public butt
(package
(name "butt")
(version "0.1.32")
(version "0.1.34")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/butt/butt/butt-"
version "/butt-" version ".tar.gz"))
(sha256
(base32
"1qwllkx9p1gb3syhbbck3agrk375m82l18fb81aqygi4g3dg3s9r"))
"0zd1g1673pv8z437y34fllxska8dzpd7mygpham35pzwpdyc5c1p"))
(modules '((guix build utils)))
(snippet
'(substitute* "src/butt.cpp"
((".*zica.*") "")))))
(build-system gnu-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'install 'install-documentation
(lambda* (#:key inputs outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(manual (assoc-ref inputs "manual"))
(doc (string-append out "/share/doc/" ,name "-" ,version)))
(install-file "README" doc)
(copy-file manual (string-append doc "/butt-manual.pdf"))))))))
(inputs
`(("dbus" ,dbus)
("flac" ,flac)
("fltk" ,fltk)
("lame" ,lame)
("libfdk" ,libfdk)
("libsamplerate" ,libsamplerate)
("libvorbis" ,libvorbis)
("libx11" ,libx11)
("libxext" ,libxext)
("libxfixes" ,libxfixes)
("libxft" ,libxft)
("libxrender" ,libxrender)
("ogg" ,libogg)
("openssl" ,openssl)
("opus" ,opus)
("portaudio" ,portaudio)))
(list #:phases
#~(modify-phases %standard-phases
(add-after 'install 'install-documentation
(lambda _
(let ((doc (string-append #$output "/share/doc/" #$name)))
(install-file "README" doc)
(copy-file #$(this-package-native-input "manual")
(string-append doc "/butt-manual.pdf"))))))))
(native-inputs
`(("pkg-config" ,pkg-config)
("manual" ,(origin
(method url-fetch)
(uri (string-append "https://danielnoethen.de/butt/butt-"
version "_manual.pdf"))
(sha256
(base32
"0g70jyyxbx5nin3xs9q9zf878b2kyy7rn8gn9w91x1ychbjd6dhh"))))))
("manual"
,(origin
(method url-fetch)
(uri (string-append "https://danielnoethen.de/butt/butt-"
version "_manual.pdf"))
(sha256
(base32 "0kadqzzbk25n0aqxgbqhg4mq4hsbjq44phzcx5qj1b8847yzz8si"))))))
(inputs
(list dbus
flac
fltk
lame
libfdk
libsamplerate
libvorbis
libx11
libxext
libxfixes
libxft
libxrender
libogg
openssl
opus
portaudio))
(home-page "https://danielnoethen.de/butt/")
(synopsis "Audio streaming tool")
(description "Butt is a tool to stream audio to a ShoutCast or

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -1,7 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2016, 2017, 2021 Marius Bakke <marius@gnu.org>
;;; Copyright © 2017 Dave Love <fx@gnu.org>
;;; Copyright © 20182021 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 20182022 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018, 2019 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2019 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2019 Gábor Boskovits <boskovits@gmail.com>
@ -63,46 +63,47 @@
(define-public fio
(package
(name "fio")
(version "3.29")
(version "3.30")
(source (origin
(method url-fetch)
(uri (string-append "https://brick.kernel.dk/snaps/"
"fio-" version ".tar.bz2"))
(sha256
(base32
"11k7ksksnb8lcbz0qdc9g7zlzaa0515j7kx4mlhk75sfs43v9zxc"))))
"1qjivkisn7dxk8irrb0rglmmdpbnai6n7vindf18ln0j24cc1x56"))))
(build-system gnu-build-system)
(arguments
`(#:modules (,@%gnu-build-system-modules
(ice-9 textual-ports))
#:test-target "test"
#:configure-flags '("--disable-native") ;don't generate code for the build CPU
#:phases
(modify-phases %standard-phases
(replace 'configure
(lambda* (#:key (configure-flags ''()) outputs #:allow-other-keys)
;; The configure script doesn't understand some of the
;; GNU options, so we can't use the stock phase.
(let ((out (assoc-ref outputs "out")))
(apply invoke "./configure"
(string-append "--prefix=" out)
configure-flags))))
;; The main `fio` executable is fairly small and self contained.
;; Moving the auxiliary scripts to a separate output saves ~100 MiB
;; on the closure.
(add-after 'install 'move-outputs
(lambda* (#:key outputs #:allow-other-keys)
(let ((oldbin (string-append (assoc-ref outputs "out") "/bin"))
(newbin (string-append (assoc-ref outputs "utils") "/bin"))
(script? (lambda* (file #:rest _)
(call-with-input-file file
(lambda (port)
(char=? #\# (peek-char port)))))))
(mkdir-p newbin)
(for-each (lambda (file)
(link file (string-append newbin "/" (basename file)))
(delete-file file))
(find-files oldbin script?))))))))
(list #:modules
`(,@%gnu-build-system-modules
(ice-9 textual-ports))
#:test-target "test"
#:configure-flags
#~(list "--disable-native") ;don't generate code for the build CPU
#:phases
#~(modify-phases %standard-phases
(replace 'configure
(lambda* (#:key (configure-flags ''()) #:allow-other-keys)
;; The configure script doesn't understand some of the
;; GNU options, so we can't use the stock phase.
(apply invoke "./configure"
(string-append "--prefix=" #$output)
configure-flags)))
;; The main `fio` executable is fairly small and self contained.
;; Moving the auxiliary scripts to a separate output saves ~100 MiB
;; on the closure.
(add-after 'install 'move-outputs
(lambda _
(let ((oldbin (string-append #$output "/bin"))
(newbin (string-append #$output:utils "/bin"))
(script? (lambda* (file #:rest _)
(call-with-input-file file
(lambda (port)
(char=? #\# (peek-char port)))))))
(mkdir-p newbin)
(for-each (lambda (file)
(link file (string-append newbin "/" (basename file)))
(delete-file file))
(find-files oldbin script?))))))))
(outputs '("out" "utils"))
(inputs
(list libaio python zlib))

View file

@ -1166,6 +1166,28 @@ datasets which are derived from the Allen Brain Atlas:
All datasets are restricted to protein coding genes.")
(license license:gpl2+)))
(define-public r-adductdata
(package
(name "r-adductdata")
(version "1.10.0")
(source (origin
(method url-fetch)
(uri (bioconductor-uri "adductData" version 'experiment))
(sha256
(base32
"0bp74p06gskwn2xl1srpnmsq27ajsrlynkzw6fcmvwwjcrzljmnj"))))
(properties `((upstream-name . "adductData")))
(build-system r-build-system)
(propagated-inputs (list r-annotationhub r-experimenthub))
(native-inputs (list r-knitr))
(home-page "https://bioconductor.org/packages/adductData")
(synopsis "Data from untargeted mass spectrometry of modifications to Cys34")
(description
"This package contains data from untargeted @dfn{mass spectrometry} (MS)
of modifications to @dfn{oxidized cysteine} (Cys) 34 in @dfn{human serum
albumin} (HSA).")
(license license:artistic2.0)))
(define-public r-aneufinderdata
(package
(name "r-aneufinderdata")
@ -1877,6 +1899,81 @@ but which also provides utilities which may be useful for other platforms.")
;; GPLv3.
(license license:gpl3)))
(define-public r-adductomicsr
(package
(name "r-adductomicsr")
(version "1.10.0")
(source (origin
(method url-fetch)
(uri (bioconductor-uri "adductomicsR" version))
(sha256
(base32
"0cnvxrk0h3r6jpa4g4qismg6zk5c7rf8lqixg89c24i98gffkbcl"))))
(properties `((upstream-name . "adductomicsR")))
(build-system r-build-system)
(propagated-inputs
(list r-adductdata
r-ade4
r-annotationhub
r-bootstrap
r-data-table
r-dosnow
r-dplyr
r-dt
r-experimenthub
r-fastcluster
r-foreach
r-fpc
r-mzr
r-orgmassspecr
r-pastecs
r-pracma
r-rcppeigen
r-reshape2
r-rvest
r-smoother
r-zoo))
(native-inputs (list r-knitr))
(home-page "https://bioconductor.org/packages/adductomicsR")
(synopsis "Processing of adductomic mass spectral datasets")
(description
"This package @code{adductomicsR} processes data generated by the
@dfn{second stage of mass spectrometry} (MS2) to identify potentially adducted
peptides from spectra that has been corrected for mass drift and retention
time drift and quantifies level mass spectral peaks from @dfn{first stage of
mass spectrometry} (MS1) data.")
(license license:artistic2.0)))
(define-public r-agimicrorna
(package
(name "r-agimicrorna")
(version "2.46.0")
(source (origin
(method url-fetch)
(uri (bioconductor-uri "AgiMicroRna" version))
(sha256
(base32
"0jic89gyphbv7jzlfgm9bh1aq48lp86rq6hr34gsg9z0pa1192xa"))))
(properties `((upstream-name . "AgiMicroRna")))
(build-system r-build-system)
(propagated-inputs
(list r-affy
r-affycoretools
r-biobase
r-limma
r-preprocesscore))
(home-page "https://git.bioconductor.org/packages/AgiMicroRna")
(synopsis
"Processing and differential expression analysis of Agilent microRNA chips")
(description
"@code{AgiMicroRna} provides useful functionality for the processing,
quality assessment and differential expression analysis of Agilent microRNA
array data. The package uses a limma-like structure to generate the processed
data in order to make statistical inferences about differential expression
using the linear model features implemented in limma. Standard Bioconductor
objects are used so that other packages could be used as well.")
(license license:gpl3)))
(define-public r-aneufinder
(package
(name "r-aneufinder")

View file

@ -4878,9 +4878,9 @@ data. It also provides the @command{bgzip}, @command{htsfile}, and
(define htslib-for-stringtie
(package
(inherit htslib)
(inherit htslib-1.12)
(source (origin
(inherit (package-source htslib))
(inherit (package-source htslib-1.12))
(patches
(search-patches "htslib-for-stringtie.patch"))))
(arguments
@ -11307,26 +11307,23 @@ and interactive quality reports. The pipeline is designed to work with UMI
based methods.")
(license license:gpl3+)))
(define-public pigx-sars-cov2-ww
(define-public pigx-sars-cov-2
(package
(name "pigx-sars-cov2-ww")
(version "0.0.5")
(name "pigx-sars-cov-2")
(version "0.0.7")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/BIMSBbioinfo/pigx_sarscov2_ww/"
"releases/download/v" version
"/pigx_sars-cov2-ww-" version ".tar.gz"))
(uri (string-append "https://github.com/BIMSBbioinfo/pigx_sars-cov-2"
"/releases/download/v" version
"/pigx_sars-cov-2-" version ".tar.gz"))
(sha256
(base32
"1fkr9gp09zl5n7kdqmy9lrnq28k2z97wg74wgkyfssfyxvmq9cr2"))))
"1bqm03ypf7l8lrkjkydxzn7vy0qlps3v9c5cpz2wb008zw44bi3k"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ;requires huge kraken database
#:phases
(modify-phases %standard-phases
(add-before 'bootstrap 'autoreconf
(lambda _
(invoke "autoreconf" "-vif")))
(add-before 'configure 'set-PYTHONPATH
(lambda _
(setenv "PYTHONPATH" (getenv "GUIX_PYTHONPATH")))))))
@ -11334,7 +11331,6 @@ based methods.")
(list automake autoconf))
(inputs
(list bash-minimal
bbmap
bedtools
bwa
ensembl-vep
@ -11345,7 +11341,6 @@ based methods.")
krona-tools
lofreq
multiqc
prinseq
python-pyyaml
python-wrapper
r-base64url
@ -11361,6 +11356,7 @@ based methods.")
r-rmarkdown
r-stringr
r-tidyr
r-viridis
samtools
snakemake
wget))
@ -11373,6 +11369,9 @@ report will provide an intuitive visual overview about the development of
variant abundance over time and location.")
(license license:gpl3+)))
(define-public pigx-sars-cov2-ww
(deprecated-package "pigx-sars-cov2-ww" pigx-sars-cov-2))
(define-public pigx
(package
(name "pigx")
@ -12652,6 +12651,13 @@ fasta subsequences.")
(arguments
`(#:phases
(modify-phases %standard-phases
;; cooler requests cytoolz<0.11. It only uses cytoolz for "compose",
;; which composes two functions.
(add-after 'unpack 'use-recent-cytoolz
(lambda _
(substitute* '("requirements.txt"
"cooler.egg-info/requires.txt")
(("cytoolz.*<.*0.11") "cytoolz"))))
(add-after 'unpack 'patch-tests
(lambda _
(substitute* "tests/test_create.py"
@ -12677,7 +12683,7 @@ fasta subsequences.")
(list python-asciitree
python-biopython
python-click
python-cytoolz-for-cooler
python-cytoolz
python-dask
python-h5py
python-multiprocess
@ -12884,7 +12890,20 @@ efficiently.")
(lambda _
(for-each make-file-writable
(list "test_data/hic2cool_0.4.2_single_res.cool"
"test_data/hic2cool_0.7.0_multi_res.mcool")))))))
"test_data/hic2cool_0.7.0_multi_res.mcool"))))
;; See https://github.com/4dn-dcic/hic2cool/issues/58
(add-after 'unpack 'fix-incompatibility-with-h5py-3
(lambda _
(substitute* "test.py"
(("h5py.File\\(fname\\)") "h5py.File(fname, 'r')"))
(substitute* "hic2cool/hic2cool_updates.py"
(("h5py.File\\(writefile\\)")
"h5py.File(writefile, 'a')"))))
;; These two tests fail for unknown reasons.
(add-after 'unpack 'disable-broken-tests
(lambda _
(substitute* "test.py"
(("def test_convert") "def _test_convert")))))))
(propagated-inputs
(list python-cooler python-h5py python-numpy python-pandas
python-scipy))
@ -14264,49 +14283,51 @@ mutations from scRNA-Seq data.")
(name "tabixpp")
(version "1.1.0")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/ekg/tabixpp")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1k2a3vbq96ic4lw72iwp5s3mwwc4xhdffjj584yn6l9637q9j1yd"))
(modules '((guix build utils)))
(snippet
`(begin
(delete-file-recursively "htslib") #t))))
(method git-fetch)
(uri (git-reference
(url "https://github.com/ekg/tabixpp")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1k2a3vbq96ic4lw72iwp5s3mwwc4xhdffjj584yn6l9637q9j1yd"))
(modules '((guix build utils)))
(snippet
#~(begin
(delete-file-recursively "htslib")))))
(build-system gnu-build-system)
(inputs
(list htslib zlib))
(list bzip2 htslib xz zlib))
(arguments
`(#:tests? #f ; There are no tests to run.
#:phases
(modify-phases %standard-phases
(delete 'configure) ; There is no configure phase.
;; The build phase needs overriding the location of htslib.
(replace 'build
(lambda* (#:key inputs #:allow-other-keys)
(let ((htslib-ref (assoc-ref inputs "htslib")))
(invoke "make"
(string-append "HTS_LIB=" htslib-ref "/lib/libhts.a")
(string-append "INCLUDES= -I" htslib-ref "/include/htslib")
"HTS_HEADERS=" ; No need to check for headers here.
(string-append "LIBPATH=-L. -L" htslib-ref "/include"))
(invoke "g++" "-shared" "-o" "libtabixpp.so" "tabix.o" "-lhts")
(invoke "ar" "rcs" "libtabixpp.a" "tabix.o"))))
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(lib (string-append out "/lib"))
(bin (string-append out "/bin")))
(install-file "tabix++" bin)
(install-file "libtabixpp.so" lib)
(install-file "libtabixpp.a" lib)
(install-file "tabix.hpp" (string-append out "/include"))
(mkdir-p (string-append lib "/pkgconfig"))
(with-output-to-file (string-append lib "/pkgconfig/tabixpp.pc")
(lambda _
(format #t "prefix=~a~@
(list #:make-flags #~(list (string-append "CC=" #$(cc-for-target))
(string-append "CXX=" #$(cxx-for-target))
"HTS_HEADERS="
(string-append "HTS_LIB="
(search-input-file %build-inputs
"/lib/libhts.a"))
"INCLUDES=")
#:tests? #f ; There are no tests to run.
#:phases
#~(modify-phases %standard-phases
(delete 'configure) ; There is no configure phase.
;; Build shared and static libraries.
(add-after 'build 'build-libraries
(lambda* (#:key inputs #:allow-other-keys)
(invoke #$(cxx-for-target)
"-shared" "-o" "libtabixpp.so" "tabix.o" "-lhts")
(invoke #$(ar-for-target) "rcs" "libtabixpp.a" "tabix.o")))
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(lib (string-append out "/lib"))
(bin (string-append out "/bin")))
(install-file "tabix++" bin)
(install-file "libtabixpp.so" lib)
(install-file "libtabixpp.a" lib)
(install-file "tabix.hpp" (string-append out "/include"))
(mkdir-p (string-append lib "/pkgconfig"))
(with-output-to-file (string-append lib "/pkgconfig/tabixpp.pc")
(lambda _
(format #t "prefix=~a~@
exec_prefix=${prefix}~@
libdir=${exec_prefix}/lib~@
includedir=${prefix}/include~@
@ -14317,8 +14338,7 @@ mutations from scRNA-Seq data.")
Description: C++ wrapper around tabix project~@
Libs: -L${libdir} -ltabixpp~@
Cflags: -I${includedir}~%"
out ,version)))
#t))))))
out #$version)))))))))
(home-page "https://github.com/ekg/tabixpp")
(synopsis "C++ wrapper around tabix project")
(description "This is a C++ wrapper around the Tabix project which abstracts
@ -14482,36 +14502,36 @@ neural networks.")
(base32 "0rp1blskhzxf7vbh253ibpxbgl9wwgyzf1wbkxndi08d3j4vcss9"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; Unclear how to run tests: https://github.com/ekg/fastahack/issues/15
#:phases
(modify-phases %standard-phases
(delete 'configure) ; There is no configure phase.
(add-after 'unpack 'patch-source
(lambda _
(substitute* "Makefile"
(("-c ") "-c -fPIC "))
#t))
(add-after 'build 'build-dynamic
(lambda _
(invoke "g++"
"-shared" "-o" "libfastahack.so"
"Fasta.o" "FastaHack.o" "split.o" "disorder.o")))
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(lib (string-append out "/lib"))
(bin (string-append out "/bin")))
(mkdir-p (string-append out "/include/fastahack"))
(for-each
(lambda (file)
(install-file file (string-append out "/include/fastahack")))
(find-files "." "\\.h$"))
(install-file "fastahack" bin)
(install-file "libfastahack.so" lib)
(mkdir-p (string-append lib "/pkgconfig"))
(with-output-to-file (string-append lib "/pkgconfig/fastahack.pc")
(list #:make-flags #~(list (string-append "CXX=" #$(cxx-for-target)))
#:tests? #f ; Unclear how to run tests: https://github.com/ekg/fastahack/issues/15
#:phases
#~(modify-phases %standard-phases
(delete 'configure) ; There is no configure phase.
(add-after 'unpack 'patch-source
(lambda _
(format #t "prefix=~a~@
(substitute* "Makefile"
(("-c ") "-c -fPIC "))))
(add-after 'build 'build-dynamic
(lambda _
(invoke #$(cxx-for-target)
"-shared" "-o" "libfastahack.so"
"Fasta.o" "FastaHack.o" "split.o" "disorder.o")))
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(lib (string-append out "/lib"))
(bin (string-append out "/bin")))
(mkdir-p (string-append out "/include/fastahack"))
(for-each
(lambda (file)
(install-file file (string-append out "/include/fastahack")))
(find-files "." "\\.h$"))
(install-file "fastahack" bin)
(install-file "libfastahack.so" lib)
(mkdir-p (string-append lib "/pkgconfig"))
(with-output-to-file (string-append lib "/pkgconfig/fastahack.pc")
(lambda _
(format #t "prefix=~a~@
exec_prefix=${prefix}~@
libdir=${exec_prefix}/lib~@
includedir=${prefix}/include/fastahack~@
@ -14522,8 +14542,7 @@ neural networks.")
Description: Indexing and sequence extraction from FASTA files~@
Libs: -L${libdir} -lfastahack~@
Cflags: -I${includedir}~%"
out ,version))))
#t)))))
out #$version)))))))))
(home-page "https://github.com/ekg/fastahack")
(synopsis "Indexing and sequence extraction from FASTA files")
(description "Fastahack is a small application for indexing and
@ -14548,27 +14567,27 @@ library automatically handles index file generation and use.")
(base32 "1r7pnajg997zdjkf1b38m14v0zqnfx52w7nbldwh1xpbpahb1hjh"))
(modules '((guix build utils)))
(snippet
'(begin
(substitute* "CMakeLists.txt"
((".*fastahack.*") "")
((".*smithwaterman.*") "")
(("(pkg_check_modules\\(TABIXPP)" text)
(string-append
#~(begin
(substitute* "CMakeLists.txt"
((".*fastahack.*") "")
((".*smithwaterman.*") "")
(("(pkg_check_modules\\(TABIXPP)" text)
(string-append
"pkg_check_modules(FASTAHACK REQUIRED fastahack)\n"
"pkg_check_modules(SMITHWATERMAN REQUIRED smithwaterman)\n"
text))
(("\\$\\{TABIXPP_LIBRARIES\\}" text)
(string-append "${FASTAHACK_LIBRARIES} "
"${SMITHWATERMAN_LIBRARIES} "
text)))
(substitute* (find-files "." "\\.(h|c)(pp)?$")
(("\"SmithWatermanGotoh.h\"") "<smithwaterman/SmithWatermanGotoh.h>")
(("\"convert.h\"") "<smithwaterman/convert.h>")
(("\"disorder.h\"") "<smithwaterman/disorder.h>")
(("Fasta.h") "fastahack/Fasta.h"))
(for-each delete-file-recursively
'("fastahack" "filevercmp" "fsom" "googletest" "intervaltree"
"libVCFH" "multichoose" "smithwaterman"))))))
(("\\$\\{TABIXPP_LIBRARIES\\}" text)
(string-append "${FASTAHACK_LIBRARIES} "
"${SMITHWATERMAN_LIBRARIES} "
text)))
(substitute* (find-files "." "\\.(h|c)(pp)?$")
(("\"SmithWatermanGotoh.h\"") "<smithwaterman/SmithWatermanGotoh.h>")
(("\"convert.h\"") "<smithwaterman/convert.h>")
(("\"disorder.h\"") "<smithwaterman/disorder.h>")
(("Fasta.h") "fastahack/Fasta.h"))
(for-each delete-file-recursively
'("fastahack" "filevercmp" "fsom" "googletest" "intervaltree"
"libVCFH" "multichoose" "smithwaterman"))))))
(build-system cmake-build-system)
(inputs
(list bzip2
@ -14589,39 +14608,47 @@ library automatically handles index file generation and use.")
("intervaltree-src" ,(package-source intervaltree))
("multichoose-src" ,(package-source multichoose))))
(arguments
`(#:tests? #f ; no tests
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'build-shared-library
(lambda _
(substitute* "CMakeLists.txt"
(("vcflib STATIC") "vcflib SHARED"))
(substitute* "test/Makefile"
(("libvcflib.a") "libvcflib.so"))))
(add-after 'unpack 'unpack-submodule-sources
(lambda* (#:key inputs #:allow-other-keys)
(let ((unpack (lambda (source target)
(mkdir target)
(with-directory-excursion target
(if (file-is-directory? (assoc-ref inputs source))
(copy-recursively (assoc-ref inputs source) ".")
(invoke "tar" "xvf"
(assoc-ref inputs source)
"--strip-components=1"))))))
(and
(unpack "filevercmp-src" "filevercmp")
(unpack "fsom-src" "fsom")
(unpack "intervaltree-src" "intervaltree")
(unpack "multichoose-src" "multichoose")))))
;; This pkg-config file is provided by other distributions.
(add-after 'install 'install-pkg-config-file
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(pkgconfig (string-append out "/lib/pkgconfig")))
(mkdir-p pkgconfig)
(with-output-to-file (string-append pkgconfig "/vcflib.pc")
(list #:configure-flags
#~(list (string-append
"-DPKG_CONFIG_EXECUTABLE="
(search-input-file
%build-inputs (string-append
"/bin/" #$(pkg-config-for-target)))))
#:tests? #f ; no tests
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'build-shared-library
(lambda _
(format #t "prefix=~a~@
(substitute* "CMakeLists.txt"
(("vcflib STATIC") "vcflib SHARED"))
(substitute* "test/Makefile"
(("libvcflib.a") "libvcflib.so"))))
(add-after 'unpack 'unpack-submodule-sources
(lambda* (#:key inputs native-inputs #:allow-other-keys)
(let ((unpack (lambda (source target)
(mkdir target)
(with-directory-excursion target
(let ((source (or (assoc-ref inputs source)
(assoc-ref native-inputs source))))
(if (file-is-directory? source)
(copy-recursively source ".")
(invoke "tar" "xvf"
source
"--strip-components=1")))))))
(and
(unpack "filevercmp-src" "filevercmp")
(unpack "fsom-src" "fsom")
(unpack "intervaltree-src" "intervaltree")
(unpack "multichoose-src" "multichoose")))))
;; This pkg-config file is provided by other distributions.
(add-after 'install 'install-pkg-config-file
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(pkgconfig (string-append out "/lib/pkgconfig")))
(mkdir-p pkgconfig)
(with-output-to-file (string-append pkgconfig "/vcflib.pc")
(lambda _
(format #t "prefix=~a~@
exec_prefix=${prefix}~@
libdir=${exec_prefix}/lib~@
includedir=${prefix}/include~@
@ -14632,8 +14659,7 @@ library automatically handles index file generation and use.")
Description: C++ library for parsing and manipulating VCF files~@
Libs: -L${libdir} -lvcflib~@
Cflags: -I${includedir}~%"
out ,version)))
#t))))))
out #$version)))))))))
(home-page "https://github.com/vcflib/vcflib/")
(synopsis "Library for parsing and manipulating VCF files")
(description "Vcflib provides methods to manipulate and interpret

View file

@ -102,7 +102,7 @@ makes a few sacrifices to acquire fast full and incremental build times.")
(define-public bear
(package
(name "bear")
(version "3.0.17")
(version "3.0.19")
(source
(origin
(method git-fetch)
@ -111,7 +111,7 @@ makes a few sacrifices to acquire fast full and incremental build times.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "0klbk99qphibrp2944w8gn6x1dwwgrbm7f2bh530wjp5h3bpkr45"))))
(base32 "05jbcx5m923dg27j3i442hc73hdci5n7vp7a671x1w7bdivgqg96"))))
(build-system cmake-build-system)
(arguments
`(#:phases (modify-phases %standard-phases

View file

@ -12,6 +12,7 @@
;;; Copyright © 2020, 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2020, 2021 Greg Hogan <code@greghogan.com>
;;; Copyright © 2021 David Dashyan <mail@davie.li>
;;; Copyright © 2021 Foo Chuan Wei <chuanwei.foo@hotmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -581,10 +582,32 @@ portability.")
(license (list license:bsd-2 ;all files except...
license:bsd-3)))) ;...the unidef.1 manual page
(define-public byacc
(package
(name "byacc")
(version "20220128")
(source (origin
(method url-fetch)
(uri (string-append
"https://invisible-mirror.net/archives/byacc/byacc-"
version ".tgz"))
(sha256
(base32
"173l5pdzgqk2ld6lf0ablii0iiw07sry2vrjfrm4wc99qmf81ha2"))))
(build-system gnu-build-system)
(home-page "https://invisible-island.net/byacc/byacc.html")
(synopsis "Berkeley Yacc LALR parser generator")
(description
"Berkeley Yacc is an LALR(1) parser generator. Yacc reads the grammar
specification from a file and generates an LALR(1) parser for it. The parsers
consist of a set of LALR(1) parsing tables and a driver routine written in the
C programming language.")
(license license:public-domain)))
(define-public aws-c-common
(package
(name "aws-c-common")
; Update only when updating aws-crt-cpp.
;; Update only when updating aws-crt-cpp.
(version "0.6.20")
(source (origin
(method git-fetch)
@ -600,6 +623,7 @@ portability.")
'(#:configure-flags
'("-DBUILD_SHARED_LIBS=ON")))
(synopsis "Amazon Web Services core C library")
(supported-systems '("i686-linux" "x86_64-linux"))
(description
"This library provides common C99 primitives, configuration, data
structures, and error handling for the @acronym{AWS,Amazon Web Services} SDK.")
@ -609,7 +633,7 @@ portability.")
(define-public aws-checksums
(package
(name "aws-checksums")
; Update only when updating aws-crt-cpp.
;; Update only when updating aws-crt-cpp.
(version "0.1.12")
(source (origin
(method git-fetch)
@ -638,7 +662,7 @@ with fallback to efficient C99 software implementations.")
(define-public aws-c-event-stream
(package
(name "aws-c-event-stream")
; Update only when updating aws-crt-cpp.
;; Update only when updating aws-crt-cpp.
(version "0.2.7")
(source (origin
(method git-fetch)
@ -670,7 +694,7 @@ communication.")
(define-public aws-c-io
(package
(name "aws-c-io")
; Update only when updating aws-crt-cpp.
;; Update only when updating aws-crt-cpp.
(version "0.10.20")
(source (origin
(method git-fetch)
@ -699,7 +723,7 @@ event-driven, asynchronous network application protocols.")
(define-public aws-c-cal
(package
(name "aws-c-cal")
; Update only when updating aws-crt-cpp.
;; Update only when updating aws-crt-cpp.
(version "0.5.17")
(source (origin
(method git-fetch)
@ -730,7 +754,7 @@ cryptographic primitives for the @acronym{AWS,Amazon Web Services} SDK.")
(define-public aws-c-sdkutils
(package
(name "aws-c-sdkutils")
; Update only when updating aws-crt-cpp.
;; Update only when updating aws-crt-cpp.
(version "0.1.2")
(source (origin
(method git-fetch)
@ -777,7 +801,7 @@ low level functionality for coroutines.")
(define-public aws-c-http
(package
(name "aws-c-http")
; Update only when updating aws-crt-cpp.
;; Update only when updating aws-crt-cpp.
(version "0.6.13")
(source (origin
(method git-fetch)
@ -807,7 +831,7 @@ specifications.")
(define-public aws-c-compression
(package
(name "aws-c-compression")
; Update only when updating aws-crt-cpp.
;; Update only when updating aws-crt-cpp.
(version "0.2.14")
(source (origin
(method git-fetch)
@ -836,7 +860,7 @@ currently limited to Huffman encoding and decoding.")
(define-public aws-c-auth
(package
(name "aws-c-auth")
; Update only when updating aws-crt-cpp.
;; Update only when updating aws-crt-cpp.
(version "0.6.11")
(source (origin
(method git-fetch)
@ -869,7 +893,7 @@ authentication.")
(define-public aws-c-s3
(package
(name "aws-c-s3")
; Update only when updating aws-crt-cpp.
;; Update only when updating aws-crt-cpp.
(version "0.1.38")
(source (origin
(method git-fetch)
@ -899,7 +923,7 @@ Service (S3) protocol for object storage.")
(define-public aws-c-mqtt
(package
(name "aws-c-mqtt")
; Update only when updating aws-crt-cpp.
;; Update only when updating aws-crt-cpp.
(version "0.7.10")
(source (origin
(method git-fetch)

View file

@ -129,7 +129,8 @@
"third_party/cros_system_api" ;BSD-3
"third_party/dav1d" ;BSD-2
"third_party/dawn" ;ASL2.0
"third_party/dawn/third_party/khronos/gl.xml" ;ASL2.0
;; TODO: can likely be unbundled when Vulkan is updated.
"third_party/dawn/third_party/khronos" ;ASL2.0
"third_party/dawn/third_party/tint" ;ASL2.0
"third_party/depot_tools/owners.py" ;BSD-3
"third_party/devtools-frontend" ;BSD-3
@ -312,9 +313,9 @@
;; run the Blink performance tests, just remove everything to save ~70MiB.
'("third_party/blink/perf_tests"))
(define %chromium-version "100.0.4896.127")
(define %chromium-version "101.0.4951.54")
(define %ungoogled-revision (string-append %chromium-version "-1"))
(define %debian-revision "debian/100.0.4896.60-1")
(define %debian-revision "debian/101.0.4951.41-2")
(define %ungoogled-origin
(origin
@ -324,7 +325,7 @@
(file-name (git-file-name "ungoogled-chromium" %ungoogled-revision))
(sha256
(base32
"192kyhr0fa97csciv5kp496y9zwcsknwlrmdr4jic3rvv8ig1q9y"))))
"0zhzy7llqddvym992pwhkgqh2f6ywjqqg0bhahl6c0np95gzhpbs"))))
(define* (debian-patch name hash #:optional (revision %debian-revision))
(origin
@ -337,7 +338,9 @@
(sha256 (base32 hash))))
(define %debian-patches
(list (debian-patch "system/jsoncpp.patch"
(list (debian-patch "upstream/libxml.patch"
"0fnmidh3sbmi4khw25rpqpd4i9kj8rb42s40n242h55z30hc36qr")
(debian-patch "system/jsoncpp.patch"
"092jkvbkiw474lin62hbkv5vm251qpg0vz3j2qwavqln7qv6mcw1")
(debian-patch "system/zlib.patch"
"1iw4k8in5j6a1qxf12qd5z3sjayvnh5sq5z3qqg8m3cp0v4p947r")
@ -451,7 +454,7 @@
%chromium-version ".tar.xz"))
(sha256
(base32
"0kgq38dy9mjyc44556i9gxhlsgd7dfvv1xi1ibk92b4p7i2y6427"))
"1d808a7mvg0nd0mm20c1ny5kdvb2xvrs8vz4nnk456ix8pywcv62"))
(modules '((guix build utils)))
(snippet (force ungoogled-chromium-snippet))))
(build-system gnu-build-system)

View file

@ -10,7 +10,7 @@
;;; Copyright © 2015, 2016, 2017, 2018, 2019, 2020, 2021, 2022 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 Ben Woodcroft <donttrustben@gmail.com>
;;; Copyright © 2016 Danny Milosavljevic <dannym@scratchpost.org>
;;; Copyright © 20162021 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 20162022 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2016 David Craven <david@craven.ch>
;;; Copyright © 2016, 2019, 2020 Kei Kebreau <kkebreau@posteo.net>
;;; Copyright © 2016, 2018, 2019, 2020, 2021 Marius Bakke <marius@gnu.org>
@ -632,14 +632,14 @@ archiving. Lzip is a clean implementation of the LZMA algorithm.")
(define-public lziprecover
(package
(name "lziprecover")
(version "1.22")
(version "1.23")
(source (origin
(method url-fetch)
(uri (string-append "mirror://savannah/lzip/lziprecover/"
"lziprecover-" version ".tar.gz"))
(sha256
(base32
"0qh8dnhr5rly2k9dnx43qqynqwqzi5kfb15pyd29qwppfl4qm5gx"))))
"0wmmyi03fv2lflsir5ldrsv04q57k3hmlqajzb1m3p86gwbh967j"))))
(build-system gnu-build-system)
(home-page "https://www.nongnu.org/lzip/lziprecover.html")
(synopsis "Recover and decompress data from damaged lzip files")
@ -1157,14 +1157,14 @@ human-readable output.")
(define-public lrzip
(package
(name "lrzip")
(version "0.641")
(version "0.651")
(source
(origin
(method url-fetch)
(uri (string-append
"http://ck.kolivas.org/apps/lrzip/lrzip-" version ".tar.xz"))
(sha256
(base32 "0ziyanspd96dc3lp2qdcylc7aq8dhb511jhqrhxvlp502fjqjqrc"))))
(base32 "1y822rpl7ak57s1a4xzd6ja82cp3sff9axrpkdn5khcpn3n8vga8"))))
(build-system gnu-build-system)
(native-inputs
`(;; nasm is only required when building for 32-bit x86 platforms
@ -1976,14 +1976,14 @@ of archives.")
(define-public lunzip
(package
(name "lunzip")
(version "1.12")
(version "1.13")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://savannah/lzip/lunzip/"
"lunzip-" version ".tar.gz"))
(sha256
(base32 "1liaynyy3qcs29hfk1pnb7i9r1mnmpw557j5v356qsv6qnm4lnz5"))))
(base32 "153qa674rlbw812fb7h8rfzdw4hvr6vgkjl1c0yfplj7p4h86z9w"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags
@ -2003,14 +2003,14 @@ Lunzip is intended to be fully compatible with the regular lzip package.")
(define-public clzip
(package
(name "clzip")
(version "1.12")
(version "1.13")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://savannah/lzip/clzip/"
"clzip-" version ".tar.gz"))
(sha256
(base32 "1s7yidqvmxi61hh569h5aci816l6qkffjgx0zx57qyyq0qq2pjgw"))))
(base32 "0ypagygbnq4ppqyg7sj4816x5c1w579883m2nsq0zxbb0gszpjbs"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags
@ -2029,14 +2029,14 @@ Clzip is intended to be fully compatible with the regular lzip package.")
(define-public lzlib
(package
(name "lzlib")
(version "1.12")
(version "1.13")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://savannah/lzip/lzlib/"
"lzlib-" version ".tar.gz"))
(sha256
(base32 "1c9pwd6by8is4z8bs6j306jyy6pgm2dvsn4fr7fg2b5m5qj88pcf"))))
(base32 "107vkzfgvb21cqq4gmxyfn97l4s2c0b3i14k9rkv594b2krmiax1"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags
@ -2056,14 +2056,14 @@ corrupted input.")
(define-public plzip
(package
(name "plzip")
(version "1.9")
(version "1.10")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://savannah/lzip/plzip/"
"plzip-" version ".tar.gz"))
(sha256
(base32 "19zinpx7hssl6r3vilpvq2s7wha3545xan8b0vcvsxnyipdx3n0l"))))
(base32 "16408n8z21hfxp0qnx3hh1d0c47g8z9i3vflbgbrmf6qcn1abyj3"))))
(build-system gnu-build-system)
(inputs
(list lzlib))

View file

@ -52,7 +52,7 @@
(define-public coq-core
(package
(name "coq-core")
(version "8.15.0")
(version "8.15.1")
(source
(origin
(method git-fetch)
@ -62,7 +62,7 @@
(file-name (git-file-name name version))
(sha256
(base32
"0473mmc4wv8zbbcbvqqn0z9gz9y8gf4w2q6j6h50lx0jphpg2n8z"))
"04csl4fvl41hizn95c4j9gxkl28495fzqdgm83ss67s5jvbfczvs"))
(patches (search-patches "coq-fix-envvars.patch"))))
(native-search-paths
(list (search-path-specification

View file

@ -1164,9 +1164,9 @@ to be useful for building network-based applications.")
(define-public aws-crt-cpp
(package
(name "aws-crt-cpp")
; Update only when updating aws-sdk-cpp, and when updating also update
; versions of library dependencies linked from from
; https://github.com/awslabs/aws-crt-cpp/tree/{aws-crt-cpp commit}/crt
;; Update only when updating aws-sdk-cpp, and when updating also update
;; versions of library dependencies linked from from
;; https://github.com/awslabs/aws-crt-cpp/tree/{aws-crt-cpp commit}/crt
(version "0.17.27")
(source (origin
(method git-fetch)
@ -1227,7 +1227,7 @@ aws-c-http, aws-c-io, aws-c-mqtt, aws-checksums, and s2n.")
(propagated-inputs
(list aws-crt-cpp))
(inputs
(list curl openssl pulseaudio zlib))
(list curl pulseaudio zlib))
(synopsis "Amazon Web Services SDK for C++")
(description
"The AWS SDK for C++ provides a C++11 interface to the @acronym{AWS,Amazon

View file

@ -35,6 +35,7 @@
;;; Copyright © 2020 Aniket Patil <aniket112.patil@gmail.com>
;;; Copyright © 2021 Marcel Schilling <marcel.schilling@uni-luebeck.de>
;;; Copyright © 2021 Guillaume Le Vaillant <glv@posteo.net>
;;; Copyright © 2022 Navid Afkhami <navid.afkhami@mdc-berlin.de>
;;;
;;; This file is part of GNU Guix.
;;;
@ -112,6 +113,30 @@
#:use-module (gnu packages xml)
#:use-module (gnu packages xorg))
(define-public r-afpt
(package
(name "r-afpt")
(version "1.1.0.1")
(source (origin
(method url-fetch)
(uri (cran-uri "afpt" version))
(sha256
(base32
"0cg5cdm9nl1hs6f3j0ljpw4bkqvh3ksyj615b9nnbqs5k28lyds9"))))
(properties `((upstream-name . "afpt")))
(build-system r-build-system)
(native-inputs (list r-knitr))
(home-page "https://github.com/MarcoKlH/afpt-r/")
(synopsis "Tools for modelling of animal flight performance")
(description
"This package allows estimation and modelling of flight costs in animal
(vertebrate) flight, implementing the aerodynamic power model. Flight
performance is estimated based on basic morphological measurements such as
body mass, wingspan and wing area. @code{Afpt} can be used to make
predictions on how animals should adjust their flight behaviour and wingbeat
kinematics to varying flight conditions.")
(license license:gpl3+)))
(define-public r-aod
(package
(name "r-aod")
@ -1125,6 +1150,28 @@ higher.")
@url{https://www.oenb.at/en/Statistics/User-Defined-Tables/webservice.html}.")
(license license:gpl2+)))
(define-public r-orgmassspecr
(package
(name "r-orgmassspecr")
(version "0.5-3")
(source (origin
(method url-fetch)
(uri (cran-uri "OrgMassSpecR" version))
(sha256
(base32
"1dx9d8rb1dfqyhyc26zhfnxiv3rz2ikvs2mwqnsrq3lsjs9dvyc8"))))
(properties `((upstream-name . "OrgMassSpecR")))
(build-system r-build-system)
(native-inputs (list r-knitr))
(home-page "http://OrgMassSpec.github.io/")
(synopsis "Organic or biological mass spectrometry data analysis")
(description
"This package @code{OrgMassSpecR} is an extension of the @code{R}
statistical computing language. It contains functions to assist with organic
or biological mass spectrometry data analysis. Mass spectral libraries are
available as companion packages.")
(license license:bsd-2)))
(define-public r-scales
(package
(name "r-scales")
@ -6485,6 +6532,28 @@ right-hand side of an assignment into multiple values and assigns these values
to variables on the left-hand side of the assignment.")
(license license:expat)))
(define-public r-zlog
(package
(name "r-zlog")
(version "1.0.0")
(source (origin
(method url-fetch)
(uri (cran-uri "zlog" version))
(sha256
(base32
"1d5j31p0h3rrn230087h3ngpvwknlisjv0f1qdbicdj9m177spci"))))
(properties `((upstream-name . "zlog")))
(build-system r-build-system)
(native-inputs (list r-knitr))
(home-page "https://cran.r-project.org/package=zlog")
(synopsis "Transformation for laboratory easurements")
(description
"The @code{zlog} package offers functions to transform laboratory
measurements into standardised z or @math{z(log)-values}. Therefore the lower
and upper reference limits are needed. If these are not known they could be
estimated from a given sample.")
(license license:gpl3+)))
(define-public r-vctrs
(package
(name "r-vctrs")

View file

@ -20,7 +20,7 @@
;;; Copyright © 2021 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2021 Vinicius Monego <monego@posteo.net>
;;; Copyright © 2021, 2022 Petr Hodina <phodina@protonmail.com>
;;; Copyright © 2021 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2021, 2022 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2021 Jacob Hrbek <kreyren@rixotstudio.cz>
;;; Copyright © 2021 Nicolas Graves <ngraves@ngraves.fr>
;;; Copyright © 2022 Aleksandr Vityazev <avityazev@posteo.org>
@ -29075,7 +29075,7 @@ data efficiently.")
(define-public rust-instant-0.1
(package
(name "rust-instant")
(version "0.1.4")
(version "0.1.9")
(source
(origin
(method url-fetch)
@ -29084,7 +29084,7 @@ data efficiently.")
(string-append name "-" version ".tar.gz"))
(sha256
(base32
"10k1170waz1na056wvjvkps3lz28z9pc8kp8vpy4kpp53i5a4xvp"))))
"1v659qqm55misvjijfbl1p7azjp4yynjbwldan8836ynpgp4w4k1"))))
(build-system cargo-build-system)
(arguments
`(#:tests? #f ; Issue during the wasm test.
@ -32386,7 +32386,7 @@ by inspecting the system for user preference.")
(define-public rust-lock-api-0.4
(package
(name "rust-lock-api")
(version "0.4.1")
(version "0.4.5")
(source
(origin
(method url-fetch)
@ -32394,7 +32394,7 @@ by inspecting the system for user preference.")
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"0716z2rs0kydmd1818kqp4641dfkqzr0rpbnrpxhabxylp2pq918"))))
"028izfyraynijd9h9x5miv1vmg6sjnw1v95wgm7f4xlr7h4lsaki"))))
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs
@ -40046,6 +40046,30 @@ normally prevent moving a type that has been borrowed from.")
"This package provides a library for padding strings at runtime.")
(license license:expat)))
(define-public rust-page-size-0.4
(package
(name "rust-page-size")
(version "0.4.2")
(source
(origin
(method url-fetch)
(uri (crate-uri "page_size" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32 "1kgdv7f626jy4i2pq8czp4ppady4g4kqfa5ik4dah7mzzd4fbggf"))))
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs
(("rust-libc" ,rust-libc-0.2)
("rust-spin" ,rust-spin-0.5)
("rust-winapi" ,rust-winapi-0.3))))
(home-page "https://github.com/Elzair/page_size_rs")
(synopsis "Retrieve the memory page size")
(description
"This package provides an easy, fast, cross-platform way to retrieve the
memory page size.")
(license (list license:expat license:asl2.0))))
(define-public rust-pager-0.15
(package
(name "rust-pager")
@ -40481,14 +40505,14 @@ unparking.")
(define-public rust-parking-lot-0.11
(package
(name "rust-parking-lot")
(version "0.11.1")
(version "0.11.2")
(source
(origin
(method url-fetch)
(uri (crate-uri "parking_lot" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32 "1sqmgaia8zfd5fbnqw2w13ijh7crk3lf9vw4cb52vwlx0an48xvd"))))
(base32 "16gzf41bxmm10x82bla8d6wfppy9ym3fxsmdjyvn61m66s0bf5vx"))))
(build-system cargo-build-system)
(arguments
`(#:skip-build? #t
@ -40613,7 +40637,7 @@ synchronization primitives.")
(define-public rust-parking-lot-core-0.8
(package
(name "rust-parking-lot-core")
(version "0.8.0")
(version "0.8.4")
(source
(origin
(method url-fetch)
@ -40621,7 +40645,7 @@ synchronization primitives.")
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"16yazfg3sq9mz6cfdkhgbv8yvc1kkasyhys4y7r3g16hgmralqf3"))))
"08n7w09q6b2prvazbzgwrc9ml7aaf8yg3132ifsayrkwy1nwwzs6"))))
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs

View file

@ -1,6 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2014 David Thompson <davet@gnu.org>
;;; Copyright © 2015, 2017, 2018, 2019 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2015, 2017, 2018, 2019, 2022 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2016, 2017, 2018, 2019, 2021 Leo Famulari <leo@famulari.name>
;;; Copyright © 2016 Lukas Gradl <lgradl@openmailbox>
;;; Copyright © 20162021 Tobias Geerinckx-Rice <me@tobias.gr>
@ -1546,8 +1546,6 @@ structure. However CryFS is not considered stable yet by the developers.")
(define-public rust-blake3-0.3
(package
(name "rust-blake3")
;; Version 1 requires Rust >= 1.51.
;; <https://github.com/BLAKE3-team/BLAKE3/releases/tag/1.0.0>
(version "0.3.8")
(source
(origin
@ -1577,6 +1575,48 @@ SHA-3, and BLAKE2.")
;; program provided by this package.
(license (list license:cc0 license:asl2.0))))
(define-public rust-blake3-1
(package
(name "rust-blake3")
(version "1.0.0")
;; The crate does not include the reference_impl directory.
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/BLAKE3-team/BLAKE3")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"09xi7rjyi5hgxyfpias485x5argwqygvfl9sggiw221qjdfxpbdn"))))
(build-system cargo-build-system)
(arguments
(list
#:cargo-inputs
`(("rust-arrayref" ,rust-arrayref-0.3)
("rust-arrayvec" ,rust-arrayvec-0.7)
("rust-cc" ,rust-cc-1)
("rust-cfg-if" ,rust-cfg-if-1)
("rust-constant-time-eq" ,rust-constant-time-eq-0.1)
("rust-crypto-mac" ,rust-crypto-mac-0.11)
("rust-digest" ,rust-digest-0.9)
("rust-rayon" ,rust-rayon-1))
#:cargo-development-inputs
`(("rust-cc" ,rust-cc-1)
("rust-hex" ,rust-hex-0.4)
("rust-page-size" ,rust-page-size-0.4)
("rust-rand" ,rust-rand-0.8)
("rust-rand-chacha" ,rust-rand-chacha-0.3))))
(home-page "https://github.com/BLAKE3-team/BLAKE3")
(synopsis "BLAKE3 hash function Rust implementation")
(description "This crate provides the official Rust implementation of the
BLAKE3 cryptographic hash function. BLAKE3 is faster than MD5, SHA-1, SHA-2,
SHA-3, and BLAKE2.")
;; Users may choose between these two licenses when redistributing the
;; program provided by this package.
(license (list license:cc0 license:asl2.0))))
(define-public b3sum
(package
(name "b3sum")

View file

@ -5,7 +5,7 @@
;;; Copyright © 2016 Danny Milosavljevic <dannym@scratchpost.org>
;;; Copyright © 2017 Leo Famulari <leo@famulari.name>
;;; Copyright © 2017 Mark H Weaver <mhw@netris.org>
;;; Copyright © 20172021 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 20172022 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2020 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2021 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;;
@ -53,6 +53,7 @@
#:use-module (guix build-system python)
#:use-module (guix download)
#:use-module (guix git-download)
#:use-module (guix gexp)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
#:use-module (guix utils)
@ -854,7 +855,7 @@ HP@tie{}LaserJet, and possibly other printers. See @file{README} for details.")
(define-public epson-inkjet-printer-escpr
(package
(name "epson-inkjet-printer-escpr")
(version "1.7.17")
(version "1.7.18")
;; XXX: This currently works. But it will break as soon as a newer
;; version is available since the URLs for older versions are not
;; preserved. An alternative source will be added as soon as
@ -862,54 +863,49 @@ HP@tie{}LaserJet, and possibly other printers. See @file{README} for details.")
(source
(origin
(method url-fetch)
(uri (string-append "https://download3.ebz.epson.net/dsc/f/03/00/12/99/"
"78/73605b3f8aac63694fdabee6bd43389731696cd9/"
"epson-inkjet-printer-escpr-1.7.17-1lsb3.2.tar.gz"))
(uri (string-append "https://download3.ebz.epson.net/dsc/f/03/00/13/43/"
"81/cbdd80826424935cef20d16be8ee5851388977a7/"
"epson-inkjet-printer-escpr-1.7.18-1lsb3.2.tar.gz"))
(sha256
(base32 "1d7ckrl5kya98h27mx4pgnaz5sbrsd5vhwc8kva9nfah9wsga4wg"))))
(base32 "06pa47rl1gy19bg3fsp4a4y9vdy4ya2maajm14n791ivhf2hcwyh"))))
(build-system gnu-build-system)
(arguments
`(#:modules
((srfi srfi-26)
,@%gnu-build-system-modules)
#:configure-flags
`("--disable-static"
,(string-append "--prefix="
(assoc-ref %outputs "out"))
,(string-append "--with-cupsfilterdir="
(assoc-ref %outputs "out") "/lib/cups/filter")
,(string-append "--with-cupsppddir="
(assoc-ref %outputs "out") "/share/cups/model"))
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'patch-autotools-version-requirement
(lambda _
(substitute* "aclocal.m4"
(("1\\.15")
,(package-version automake)))
(substitute* "configure"
(("^(ACLOCAL=).*" _ match)
(string-append match "aclocal"))
(("^(AUTOMAKE=).*" _ match)
(string-append match "automake")))
#t))
(add-after 'install 'compress-PPDs
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(with-directory-excursion out
(for-each (cut invoke "gzip" "-9" <>)
(find-files "share/cups" "\\.ppd$")))))))))
(list #:modules
`((srfi srfi-26)
,@%gnu-build-system-modules)
#:configure-flags
#~(list "--disable-static"
(string-append "--prefix=" #$output)
(string-append "--with-cupsfilterdir=" #$output "/lib/cups/filter")
(string-append "--with-cupsppddir=" #$output "/share/cups/model"))
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'patch-autotools-version-requirement
(lambda _
(substitute* "aclocal.m4"
(("1\\.15")
#$(package-version automake)))
(substitute* "configure"
(("^(ACLOCAL=).*" _ match)
(string-append match "aclocal"))
(("^(AUTOMAKE=).*" _ match)
(string-append match "automake")))))
(add-after 'install 'compress-PPDs
(lambda _
(with-directory-excursion #$output
(for-each (cut invoke "gzip" "-9" <>)
(find-files "share/cups" "\\.ppd$"))))))))
(native-inputs
(list autoconf automake))
(inputs
`(("cups" ,cups-minimal)))
(list cups-minimal))
(synopsis "ESC/P-R printer driver")
(description
"This package provides a filter for @acronym{CUPS, the Common UNIX Printing
System} that offers high-quality printing with Seiko@tie{}Epson color ink jet
printers. It can be used only with printers that support the Epson@tie{}ESC/P-R
language.")
(home-page "http://download.ebz.epson.net/dsc/search/01/search/?OSC=LX")
(home-page "https://download.ebz.epson.net/dsc/search/01/search/?OSC=LX")
(license license:gpl2+)))
(define-public splix

View file

@ -3621,6 +3621,29 @@ async versions of all the standard connection and cursor methods, and context
managers for automatically closing connections.")
(license license:expat)))
(define-public python-databases
(package
(name "python-databases")
(version "0.5.5")
(source
(origin
(method url-fetch)
(uri (pypi-uri "databases" version))
(sha256
(base32 "0dzb998kg35xmd50ih168320vih2w3ich798r8fc4lf9q4bb1ih2"))))
(build-system python-build-system)
(propagated-inputs
(list python-aiosqlite
python-aiopg
python-aiomysql
python-asyncpg
python-asyncmy
python-sqlalchemy))
(home-page "https://github.com/encode/databases")
(synopsis "Async database support for Python.")
(description "This package implements async database support for Python.")
(license license:bsd-3)))
(define-public python2-neo4j-driver
(package
(name "python2-neo4j-driver")

115
gnu/packages/dezyne.scm Normal file
View file

@ -0,0 +1,115 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2022 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
;;;
;;; 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 <http://www.gnu.org/licenses/>.
(define-module (gnu packages dezyne)
#:use-module (guix build-system gnu)
#:use-module (guix download)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix gexp)
#:use-module (guix packages)
#:use-module (gnu packages base)
#:use-module (gnu packages bash)
#:use-module (gnu packages guile)
#:use-module (gnu packages maths)
#:use-module (gnu packages pkg-config))
(define-public dezyne
(package
(name "dezyne")
(version "2.15.0")
(source
(origin
(method url-fetch)
(uri (string-append "https://dezyne.org/download/dezyne/"
name "-" version ".tar.gz"))
(sha256
(base32 "1sh9chg5q10c3bzsmgl1pb7pmdf04j2lqszhw8jk5qlxr9y8ybcq"))))
(inputs (list bash-minimal
guile-3.0-latest
guile-json-4
guile-readline
mcrl2-minimal
sed))
(native-inputs (list guile-3.0-latest pkg-config))
(build-system gnu-build-system)
(arguments
(list
#:modules `((ice-9 popen)
,@%gnu-build-system-modules)
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'disable-tests
(lambda _
;; The mCRL2 output for these tests is unstable, i.e., varies
;; between different builds.
(substitute* "Makefile.in"
(("test/all/compliance_blocking_double_release ") " ")
(("test/all/illegal_external_nonsynchronous ") " ")
(("test/all/livelock_synchronous_illegal ") " ")
(("test/all/queuefull_external_sync ") " "))))
(add-before 'configure 'setenv
(lambda _
(setenv "GUILE_AUTO_COMPILE" "0")))
(add-after 'install 'install-readmes
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(base (string-append #$name "-" #$version))
(doc (string-append out "/share/doc/" base)))
(mkdir-p doc)
(copy-file "NEWS" (string-append doc "/NEWS")))))
(add-after 'install 'wrap-binaries
(lambda* (#:key inputs outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(bash (assoc-ref %build-inputs "bash-minimal"))
(guile (assoc-ref %build-inputs "guile"))
(json (assoc-ref %build-inputs "guile-json"))
(mcrl2 (assoc-ref %build-inputs "mcrl2-minimal"))
(readline (assoc-ref %build-inputs "guile-readline"))
(sed (assoc-ref %build-inputs "sed"))
(effective (read
(open-pipe* OPEN_READ
"guile" "-c"
"(write (effective-version))")))
(path (list (string-append bash "/bin")
(string-append guile "/bin")
(string-append mcrl2 "/bin")
(string-append sed "/bin")))
(scm-dir (string-append "/share/guile/site/" effective))
(scm-path
(list (string-append out scm-dir)
(string-append json scm-dir)
(string-append readline scm-dir)))
(go-dir (string-append "/lib/guile/" effective
"/site-ccache/"))
(go-path (list (string-append out go-dir)
(string-append json go-dir)
(string-append readline go-dir))))
(wrap-program (string-append out "/bin/dzn")
`("PATH" ":" prefix ,path)
`("GUILE_AUTO_COMPILE" ":" = ("0"))
`("GUILE_LOAD_PATH" ":" prefix ,scm-path)
`("GUILE_LOAD_COMPILED_PATH" ":" prefix ,go-path))))))))
(synopsis "Programming language with verifyable formal semantics")
(description "Dezyne is a programming language and a set of tools to
specify, validate, verify, simulate, document, and implement concurrent
control software for embedded and cyber-physical systems. The Dezyne language
has formal semantics expressed in @url{https://mcrl2.org,mCRL2}.")
(home-page "https://dezyne.org")
(license (list license:agpl3+ ;Dezyne itself
license:lgpl3+ ;Dezyne runtime library
license:cc0)))) ;Code snippets, images, test data

View file

@ -2,7 +2,7 @@
;;; Copyright © 2012, 2013 Nikita Karetnikov <nikita@karetnikov.org>
;;; Copyright © 2015 Mathieu Lirzin <mthl@gnu.org>
;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2016, 20182021 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2016, 20182022 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2016, 2019, 2020, 2021 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 Jan Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2016 Roel Janssen <roel@gnu.org>
@ -367,20 +367,15 @@ output without any plausibility checks.")
(define-public gptfdisk
(package
(name "gptfdisk")
(version "1.0.8")
(version "1.0.9")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/gptfdisk/gptfdisk/"
version "/gptfdisk-" version ".tar.gz"))
(sha256
(base32 "1py6klp1b7rni1qjj110snyyxafhx092carlii5vrnh4y1b9ilcm"))))
(base32 "1hjh5m77fmfq5m44yy61kchv7mbfgx026aw3jy5qxszsjckavzns"))))
(build-system gnu-build-system)
(inputs
`(("gettext" ,gettext-minimal)
("ncurses" ,ncurses)
("popt" ,popt)
("util-linux" ,util-linux "lib"))) ;libuuid
(arguments
`(#:test-target "test"
#:phases
@ -388,8 +383,7 @@ output without any plausibility checks.")
(add-after 'unpack 'fix-include-directory
(lambda _
(substitute* "gptcurses.cc"
(("ncursesw/ncurses.h") "ncurses.h"))
#t))
(("ncursesw/ncurses.h") "ncurses.h"))))
(delete 'configure) ; no configure script
(replace 'install
;; There's no make install target.
@ -405,6 +399,12 @@ output without any plausibility checks.")
(install-file "fixparts.8" man)
(install-file "gdisk.8" man)
(install-file "sgdisk.8" man)))))))
(native-inputs
(list gettext-minimal))
(inputs
(list ncurses
popt
`(,util-linux "lib"))) ;libuuid
(home-page "https://www.rodsbooks.com/gdisk/")
(synopsis "Low-level GPT disk partitioning and formatting")
(description "GPT fdisk (aka gdisk) is a text-mode partitioning tool that
@ -416,14 +416,14 @@ scheme.")
(define-public ddrescue
(package
(name "ddrescue")
(version "1.25")
(version "1.26")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://gnu/ddrescue/ddrescue-"
version ".tar.lz"))
(sha256
(base32 "0qqh38izl5ppap9a5izf3hijh94k65s3zbfkczd4b7x04syqwlyf"))))
(base32 "07smgh9f2p90zgyyrddzjwaz0v8glh5d95qiv7yhv0frj0xcs4z5"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags (list (string-append "CXX=" ,(cxx-for-target)))))
@ -1098,7 +1098,7 @@ on your file system and offers to remove it. @command{rmlint} can find:
(define-public lf
(package
(name "lf")
(version "25")
(version "27")
(source (origin
(method git-fetch)
(uri (git-reference
@ -1107,14 +1107,11 @@ on your file system and offers to remove it. @command{rmlint} can find:
(file-name (git-file-name name version))
(sha256
(base32
"014cybng6hc9y3ma74hpc1ac3rkz4ydflx8jbmvx81rdd08rzwz7"))))
"1piym8za0iw2s8yryh39y072f90mzisv89ffvn1jzb71f71mbfqa"))))
(build-system go-build-system)
(native-inputs
`(("go-github.com-mattn-go-runewidth" ,go-github.com-mattn-go-runewidth)
("go-github.com-nsf-termbox-go" ,go-github.com-nsf-termbox-go)
("go-golang-org-x-term" ,go-golang-org-x-term)
("go-gopkg-in-djherbis-times-v1" ,go-gopkg-in-djherbis-times-v1)
("go-github-com-gdamore-tcell-v2" ,go-github-com-gdamore-tcell-v2)))
(list go-github.com-mattn-go-runewidth go-golang-org-x-term
go-gopkg-in-djherbis-times-v1 go-github-com-gdamore-tcell-v2))
(arguments
`(#:import-path "github.com/gokcehan/lf"))
(home-page "https://github.com/gokcehan/lf")

View file

@ -5,7 +5,7 @@
;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 John Darrington <jmd@gnu.org>
;;; Copyright © 2016 Nikita <nikita@n0.is>
;;; Copyright © 20162021 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 20162022 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2016, 2020 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2017 Vasile Dumitrascu <va511e@yahoo.com>
;;; Copyright © 2017 Gregor Giesen <giesen@zaehlwerk.net>
@ -544,14 +544,14 @@ asynchronous fashion.")
(define-public nsd
(package
(name "nsd")
(version "4.3.9")
(version "4.4.0")
(source
(origin
(method url-fetch)
(uri (string-append "https://www.nlnetlabs.nl/downloads/nsd/nsd-"
version ".tar.gz"))
(sha256
(base32 "13ay2gr7ln8gl09wdqnxkrdxi51jaqsbn54yh82vvv49jbq4j5ak"))))
(base32 "0dl8iriy0mscppfa6ar5qcglgvxw87140abwxyksak1lk7fnzkfg"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags

View file

@ -1009,7 +1009,20 @@ process, passing on the arguments as command line arguments.")
(sha256
(base32 "0714n5nim0hyd5jywvvddka2gi2bhi1vkrbhx75mdn8h50r688kq"))
(file-name (git-file-name name version))))
(native-inputs (list texinfo))
(build-system emacs-build-system)
(arguments
(list
#:phases
#~(modify-phases %standard-phases
(add-after 'install 'makeinfo
(lambda _
(invoke "emacs"
"--batch"
"--eval=(require 'ox-texinfo)"
"--eval=(find-file \"README.org\")"
"--eval=(org-texinfo-export-to-info)")
(install-file "mct.info" (string-append #$output "/share/info")))))))
(home-page "https://protesilaos.com/emacs/mct")
(synopsis "Enhancement of the default Emacs minibuffer completion UI")
(description "Minibuffer and Completions in Tandem, also known as MCT, or
@ -1018,7 +1031,8 @@ mct.el, is an Emacs package that enhances the default minibuffer and
framework. The idea is to make the presentation and overall functionality be
consistent with other popular, vertically aligned completion UIs while
leveraging built-in functionality.")
(license license:gpl3+)))
(license (list license:gpl3+
license:fdl1.3+)))) ; GFDLv1.3+ for the manual
(define-public emacs-minions
(package
@ -6134,6 +6148,41 @@ the current Cargo project.")
files which are intended to be packages.")
(license license:gpl3+)))
(define-public emacs-flymake-proselint
(let ((commit "6a99865c7ac6474b8c5d1f9a1ae2384667f06d36")
(revision "0"))
(package
(name "emacs-flymake-proselint")
(version (git-version "0.2.3" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://git.sr.ht/~manuel-uberti/flycheck-proselint")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"028ilp9h22rlawlh5ydiykvi8pryyknwi019sjyxkk2h0fza9jan"))))
(build-system emacs-build-system)
(arguments
(list
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'patch-exec-paths
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "flymake-proselint.el"
(("\"proselint\"")
(string-append
"\"" (search-input-file inputs "/bin/proselint") "\""))))))))
(propagated-inputs
(list emacs-flycheck))
(inputs
(list python-proselint))
(home-page "https://git.sr.ht/~manuel-uberti/flycheck-proselint")
(synopsis "Flymake backend for @code{proselint}")
(description "This package adds support for @code{proselint} in Flymake.")
(license license:gpl3+))))
(define-public emacs-elisp-demos
(package
(name "emacs-elisp-demos")
@ -13148,6 +13197,42 @@ provides functions to convert hash tables from and to alists and plists.")
you to deal with multiple log levels.")
(license license:gpl3+)))
(define-public emacs-logos
(package
(name "emacs-logos")
(version "0.3.1")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://git.sr.ht/~protesilaos/logos")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"1xhnhaxmjqdv0bbh22gj9ak83hha8d59q64b6aa4rynrgcyajk45"))))
(native-inputs (list texinfo))
(build-system emacs-build-system)
(arguments
(list
#:phases
#~(modify-phases %standard-phases
(add-after 'install 'makeinfo
(lambda* (#:key outputs #:allow-other-keys)
(invoke "emacs"
"--batch"
"--eval=(require 'ox-texinfo)"
"--eval=(find-file \"README.org\")"
"--eval=(org-texinfo-export-to-info)")
(install-file "logos.info" (string-append #$output "/share/info")))))))
(home-page "https://protesilaos.com/emacs/logos")
(synopsis "Simple focus mode for Emacs")
(description "This package provides a simple focus mode which can be
applied to any buffer for reading, writing, or even doing a presentation. The
buffer can be divided in pages using the @code{page-delimiter}, outline
structure, or any other pattern.")
(license (list license:gpl3+
license:fdl1.3+)))) ; GFDLv1.3+ for the manual
(define-public emacs-gn-mode
(package
(name "emacs-gn-mode")
@ -13673,6 +13758,42 @@ memoizing functions.")
number on the left margin in Emacs.")
(license license:gpl2+)))
(define-public emacs-lin
(package
(name "emacs-lin")
(version "0.3.0")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://git.sr.ht/~protesilaos/lin")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"1w1mli2wrxbnwagn3rx5ygslmzlri3drm74nqgwpl4pwh66xi98a"))))
(native-inputs (list texinfo))
(build-system emacs-build-system)
(arguments
(list
#:phases
#~(modify-phases %standard-phases
(add-after 'install 'makeinfo
(lambda _
(invoke "emacs"
"--batch"
"--eval=(require 'ox-texinfo)"
"--eval=(find-file \"README.org\")"
"--eval=(org-texinfo-export-to-info)")
(install-file "lin.info" (string-append #$output "/share/info")))))))
(home-page "https://protesilaos.com/emacs/lin")
(synopsis "Make @command{hl-line-mode} more suitable for selection UIs")
(description "Lin is a stylistic enhancement for Emacs built-in
@command{hl-line-mode}. It remaps the hl-line face (or equivalent)
buffer-locally to a style that is optimal for major modes where line selection
is the primary mode of interaction.")
(license (list license:gpl3+
license:fdl1.3+)))) ; GFDLv1.3+ for the manual
(define-public emacs-idle-highlight
(package
(name "emacs-idle-highlight")
@ -15745,6 +15866,46 @@ created by @code{git format-patch}, from @code{magit}, @code{dired} and
@code{ibuffer} buffers.")
(license license:gpl3+)))
(define-public emacs-git-email
;; Use latest commit since latest tagged release is missing important
;; changes.
(let ((commit "b5ebade3a48dc0ce0c85699f25800808233c73be")
(revision "0"))
(package
(name "emacs-git-email")
(version (git-version "0.2.0" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://git.sr.ht/~yoctocell/git-email")
(commit commit)))
(patches
(search-patches "emacs-git-email-missing-parens.patch"))
(file-name (git-file-name name version))
(sha256
(base32 "1lk1yds7idgawnair8l3s72rgjmh80qmy4kl5wrnqvpmjrmdgvnx"))))
(build-system emacs-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
;; piem is not yet packaged in Guix.
(add-after 'unpack 'remove-piem
(lambda _
(delete-file "git-email-piem.el")))
(add-before 'install 'makeinfo
(lambda _
(invoke "makeinfo" "doc/git-email.texi"))))))
(native-inputs
(list texinfo))
(propagated-inputs
(list mu emacs-magit emacs-notmuch))
(license license:gpl3+)
(home-page "https://sr.ht/~yoctocell/git-email")
(synopsis "Format and send Git patches in Emacs")
(description "This package provides utilities for formatting and
sending Git patches via Email, without leaving Emacs."))))
(define-public emacs-erc-hl-nicks
(package
(name "emacs-erc-hl-nicks")
@ -18670,6 +18831,40 @@ navigate and display hierarchy structures.")
"This package allows controlling @code{pulseaudio} from Emacs.")
(license license:gpl3+))))
(define-public emacs-pulsar
(package
(name "emacs-pulsar")
(version "0.3.0")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://git.sr.ht/~protesilaos/pulsar")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"09s1r9zqc28g75jjxajdm34ni4m7gynh0xsffy5d60c50igiqa94"))))
(native-inputs (list texinfo))
(build-system emacs-build-system)
(arguments
(list
#:phases
#~(modify-phases %standard-phases
(add-after 'install 'makeinfo
(lambda _
(invoke "emacs"
"--batch"
"--eval=(require 'ox-texinfo)"
"--eval=(find-file \"README.org\")"
"--eval=(org-texinfo-export-to-info)")
(install-file "pulsar.info" (string-append #$output "/share/info")))))))
(home-page "https://protesilaos.com/emacs/pulsar")
(synopsis "Pulse highlight line on demand or after running select functions")
(description "This package temporarily highlights the current line after a
given function is invoked.")
(license (list license:gpl3+
license:fdl1.3+)))) ; GFDLv1.3+ for the manual
(define-public emacs-datetime
(package
(name "emacs-datetime")
@ -22432,10 +22627,11 @@ text-tree applications inside GNU Emacs. It consists of 2 subprojects:
(license license:gpl3))))
(define-public emacs-helm-org-contacts
(let ((commit "e7f11615802df55bb8b679450b5a5ef82a9081f9"))
(let ((commit "741eca6239684950219c9a12802386a132491b8c")
(revision "2"))
(package
(name "emacs-helm-org-contacts")
(version (git-version "20200310" "1" commit))
(version (git-version "20201202" revision commit))
(source
(origin
(method git-fetch)
@ -22445,7 +22641,7 @@ text-tree applications inside GNU Emacs. It consists of 2 subprojects:
(file-name (git-file-name name version))
(sha256
(base32
"06a1gbrq3qcfsn0kyv4i24x1xxfrrwqa3kgfj4xa4va88q2vqyb5"))))
"1xy51hc3az8bc9sj71sjzy03xpkfa4v3cdcv3gpq3cj2zhk9gr8h"))))
(build-system emacs-build-system)
(propagated-inputs
(list emacs-dash emacs-helm emacs-s))
@ -27359,17 +27555,30 @@ Emacs that integrate with major modes like Org-mode.")
(define-public emacs-modus-themes
(package
(name "emacs-modus-themes")
(version "2.2.0")
(version "2.3.2")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://gitlab.com/protesilaos/modus-themes")
(url "https://git.sr.ht/~protesilaos/modus-themes")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1mnfbr312dqifsdngb29kvggfirfclc9ncaw5srd52hnwc5n0rxi"))))
(base32 "00c3sa663rnl2rvnjdqzghcyfbdri09xjfigyrgd5xa3y0mnpqiz"))))
(native-inputs (list texinfo))
(build-system emacs-build-system)
(arguments
(list
#:phases
#~(modify-phases %standard-phases
(add-after 'install 'makeinfo
(lambda _
(invoke "emacs"
"--batch"
"--eval=(require 'ox-texinfo)"
"--eval=(find-file \"doc/modus-themes.org\")"
"--eval=(org-texinfo-export-to-info)")
(install-file "doc/modus-themes.info" (string-append #$output "/share/info")))))))
(home-page "https://protesilaos.com/modus-themes/")
(synopsis "Accessible themes (WCAG AAA)")
(description
@ -27382,7 +27591,8 @@ Modus Operandi (modus-operandi) is a light theme, while Modus
Vivendi (modus-vivendi) is dark. Each themes color palette is designed to
meet the needs of the numerous interfaces that are possible in the Emacs
computing environment.")
(license license:gpl3+)))
(license (list license:gpl3+
license:fdl1.3+)))) ; GFDLv1.3+ for the manual
(define-public emacs-punpun-theme
(let ((commit "7026684cd568cb691af3ced5de14c375fe6f5a1a")

View file

@ -31,6 +31,7 @@
;;; Copyright © 2022 Olivier Dion <olivier.dion@polymtl.ca>
;;; Copyright © 2022 Peter Polidoro <peter@polidoro.io>
;;; Copyright © 2022 Malte Frank Gerdes <malte.f.gerdes@gmail.com>
;;; Copyright © 2022 Konstantinos Agiannis <agiannis.kon@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -78,6 +79,7 @@
#:use-module (gnu packages compression)
#:use-module (gnu packages cpp)
#:use-module (gnu packages curl)
#:use-module (gnu packages gawk)
#:use-module (gnu packages dejagnu)
#:use-module (gnu packages digest)
#:use-module (gnu packages docbook)
@ -939,7 +941,7 @@ Emacs).")
(define-public kicad
(package
(name "kicad")
(version "6.0.4")
(version "6.0.5")
(source (origin
(method git-fetch)
(uri (git-reference
@ -947,7 +949,7 @@ Emacs).")
(commit version)))
(sha256
(base32
"0lki59ws0ncqkp9wxrhyni1ck2sx5z07mmpkjg0d9jpkync9hx9y"))
"19mg672h1gjdvnkp13cpkhk67xpwms72y4gd6g8983fcsxr8nq23"))
(file-name (git-file-name name version))))
(build-system cmake-build-system)
(arguments
@ -1054,7 +1056,7 @@ electrical diagrams), gerbview (viewing Gerber files) and others.")
(file-name (git-file-name name version))
(sha256
(base32
"0p3ypfs11ck2w7dmqiy763krpj0slan4jvpzxs6z1473gdpbzgbs"))))
"190pnrf2cy06wnnskyb4fqj4a4nfmz17i3y79rnrz3j62h3fmg0w"))))
(build-system cmake-build-system)
(arguments
`(#:configure-flags (list "-DBUILD_FORMATS=html")
@ -1088,7 +1090,7 @@ electrical diagrams), gerbview (viewing Gerber files) and others.")
(file-name (git-file-name name version))
(sha256
(base32
"12lyc187337bf2frl3jvwqdwwnd69f7l414k3kxhccs3sa2mcf1y"))))
"1dhgdp08ah08fc5nvwkqmgpl2any9vgy1gykmyzsd4dl8hhvznh5"))))
(build-system cmake-build-system)
(arguments
`(#:tests? #f)) ; no tests exist
@ -1117,7 +1119,7 @@ libraries.")
(file-name (git-file-name name version))
(sha256
(base32
"0px2g9jansky0rvc0bdjylbmv8xwhc0q63g88hd2nzbknqli9f1y"))))
"0sxzd4dr1g12ck8b2wsyg9r2s1j3472nksrjrwpzjdyfc8rqbjai"))))
(synopsis "Official KiCad footprint libraries")
(description "This package contains the official KiCad footprint libraries.")))
@ -1134,7 +1136,7 @@ libraries.")
(file-name (git-file-name name version))
(sha256
(base32
"0ms9py93qyihxrhh9wm2ziycmdn88m36r8adx22ynjnxixw1f9ja"))))
"00i6mybg3pprzb283b26z5b2g7a8sbghlvc0fwk9gwrp3wz1yqzc"))))
(synopsis "Official KiCad 3D model libraries")
(description "This package contains the official KiCad 3D model libraries.")))
@ -3659,3 +3661,46 @@ python bindings. It belongs to the Cura project from Ultimaker.")
(description "Cura is a slicing software from Ultimaker. A @emph{slicer}
generates G-Code for 3D printers.")
(license license:lgpl3+)))
(define-public xschem
(let ((commit "f574539e21b297fa3bcebd52114555e162a5fc56")
(revision "1"))
(package
(name "xschem")
(version (git-version "3.0.0" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/StefanSchippers/xschem")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"129kj8m3wcf62plp74kml6pqwld4lnfmxy070a82lvj0rfiy77hb"))))
(native-inputs (list flex bison pkg-config))
(inputs (list gawk
tcl
tk
libxpm
cairo
libxrender
libxcb)) ; Last 3 are optional, but good to have.
(build-system gnu-build-system)
(arguments
`(#:tests? #f
#:phases
(modify-phases %standard-phases
(delete 'configure)
(add-before 'build 'setenv
(lambda* (#:key outputs #:allow-other-keys)
(setenv "CC" ,(cc-for-target))
(invoke "./configure"
(string-append "--prefix="
(assoc-ref outputs "out"))))))))
(synopsis "Hierarchical schematic editor")
(description
"Xschem is an X11 schematic editor written in C and focused on
hierarchical and parametric design. It can generate VHDL, Verilog or Spice
netlists from the drawn schematic, allowing the simulation of the circuit.")
(home-page "https://xschem.sourceforge.io/stefan/index.html")
(license license:gpl2+))))

View file

@ -664,7 +664,7 @@ other machines/servers. Electroncash does not download the Bitcoin Cash blockch
;; the system's dynamically linked library.
(package
(name "monero")
(version "0.17.3.0")
(version "0.17.3.2")
(source
(origin
(method git-fetch)
@ -681,15 +681,9 @@ other machines/servers. Electroncash does not download the Bitcoin Cash blockch
(for-each
delete-file-recursively
'("external/miniupnp" "external/rapidjson"
"external/unbound"))
;; TODO: Remove the following when upgrading to a newer tagged
;; version as it will already contain the fix for Boost 1.76.
(substitute* "contrib/epee/include/storages/portable_storage.h"
(("#include \"int-util.h\"" all)
(string-append all "\n#include <boost/mpl/contains.hpp>")))
#t))
"external/unbound"))))
(sha256
(base32 "1spsf7m3x4psp9s7mivr6x4886jnbq4i8ll2dl8bv5bsdhcd3pjm"))))
(base32 "19sgcbli7fc1l6ms7ma6hcz1mmpbnd296lc8a19rl410acpv45zy"))))
(build-system cmake-build-system)
(native-inputs
(list doxygen
@ -726,21 +720,18 @@ other machines/servers. Electroncash does not download the Bitcoin Cash blockch
;; tests/core_tests need a valid HOME
(add-before 'configure 'set-home
(lambda _
(setenv "HOME" (getcwd))
#t))
(setenv "HOME" (getcwd))))
(add-after 'set-home 'change-log-path
(lambda _
(substitute* "contrib/epee/src/mlog.cpp"
(("epee::string_tools::get_current_module_folder\\(\\)")
"\".bitmonero\"")
(("return \\(")
"return ((std::string(getenv(\"HOME\"))) / "))
#t))
"return ((std::string(getenv(\"HOME\"))) / "))))
(add-after 'change-log-path 'fix-file-permissions-for-tests
(lambda _
(for-each make-file-writable
(find-files "tests/data/" "wallet_9svHk1.*"))
#t))
(find-files "tests/data/" "wallet_9svHk1.*"))))
;; Only try tests that don't need access to network or system
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
@ -768,8 +759,7 @@ other machines/servers. Electroncash does not download the Bitcoin Cash blockch
(add-after 'install 'delete-unused-files
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(delete-file-recursively (string-append out "/include")))
#t)))))
(delete-file-recursively (string-append out "/include"))))))))
(home-page "https://web.getmonero.org/")
(synopsis "Command-line interface to the Monero currency")
(description
@ -780,7 +770,7 @@ the Monero command line client and daemon.")
(define-public monero-gui
(package
(name "monero-gui")
(version "0.17.3.1")
(version "0.17.3.2")
(source
(origin
(method git-fetch)
@ -794,10 +784,9 @@ the Monero command line client and daemon.")
'(begin
;; Delete bundled monero sources, we already have them.
;; See the 'extract-monero-sources' phase.
(delete-file-recursively "monero")
#t))
(delete-file-recursively "monero")))
(sha256
(base32 "0mzxbi16zvpfgwykg0c7gm5dmjxr2a47kjwih36g53a7pnf04zl1"))))
(base32 "12x0d981fkb43inx7zqjr3ny53dih9g8k03cmaflxqwviinb1k4b"))))
(build-system qt-build-system)
(native-inputs
`(,@(package-native-inputs monero)

View file

@ -741,7 +741,7 @@ for use at smaller text sizes")))
(define-public font-gnu-unifont
(package
(name "font-gnu-unifont")
(version "14.0.01")
(version "14.0.03")
(source
(origin
(method url-fetch)
@ -751,7 +751,7 @@ for use at smaller text sizes")))
(string-append "mirror://gnu/unifont/unifont-"
version "/unifont-" version ".tar.gz")))
(sha256
(base32 "0wkdn8h20pprna5a3hbny0qk2mgksrbxs2y6ng6qarj6rkpdmlbs"))))
(base32 "1swzwh355ipqhm3vvy7005fqawydlcdbkxm3h04vhicahp8hl06l"))))
(build-system gnu-build-system)
(outputs '("out" ; TrueType version
"pcf" ; PCF (bitmap) version
@ -1331,7 +1331,7 @@ guix repl <<EOF
(ice-9 string-fun)
(gnu packages fonts))
(let ((new-version "11.2.0")
(let ((new-version "15.2.0")
(iosevka-hashes #nil)
(iosevka-fails #nil))
(for-each (lambda (font)
@ -1356,16 +1356,16 @@ guix repl <<EOF
font-iosevka-etoile))
(for-each (lambda (hash)
(format #t "~a: ~a~%" (car hash) (cdr hash)))
iosevka-hashes)
(reverse iosevka-hashes))
(for-each (lambda (fail)
(format #t "~a: failed to download latest version~%" fail))
iosevka-fails))
(reverse iosevka-fails)))
EOF
|#
(define-public font-iosevka
(package
(name "font-iosevka")
(version "11.2.0")
(version "15.2.0")
(source
(origin
(method url-fetch/zipbomb)
@ -1373,7 +1373,7 @@ EOF
"/releases/download/v" version
"/ttc-iosevka-" version ".zip"))
(sha256
(base32 "16a5bbjy9kn62pbrmam6jvcki4xvbakxbqzv72kkpz7p10b10vz7"))))
(base32 "0yyz8vmpi8pww0p9na564lvbkwhdhpk4bcyrli91dn5gq0pc1pvv"))))
(build-system font-build-system)
(home-page "https://be5invis.github.io/Iosevka/")
(synopsis "Coders' typeface, built from code")
@ -1396,7 +1396,7 @@ programming. Iosevka is completely generated from its source code.")
"/releases/download/v" version
"/ttc-iosevka-slab-" version ".zip"))
(sha256
(base32 "068nd8wph44r9ka3fd7b5jhph505w08ibn3dmd7czdcp1fkr7dhi"))))))
(base32 "1qy86kdl6lgq5k1qb97adibpfjm4vg1wdnxbqizhqka5bc7avyzb"))))))
(define-public font-iosevka-term
(package
@ -1410,7 +1410,7 @@ programming. Iosevka is completely generated from its source code.")
"/releases/download/v" version
"/ttf-iosevka-term-" version ".zip"))
(sha256
(base32 "0a22pnr74l87ajprcki3j3fc5cryfr5krpxang0b51grkdb9l724"))))
(base32 "15znvvkhldgbl9k04pwrrnvmjnanw2fr92c0zspg7bbw7id2v510"))))
(arguments
`(#:phases
(modify-phases %standard-phases
@ -1431,7 +1431,7 @@ programming. Iosevka is completely generated from its source code.")
"releases/download/v" version "/"
"ttf-iosevka-term-slab-" version ".zip"))
(sha256
(base32 "00nsykwa1r198wrh85d42vbjwpxxsmzdn3i4fighdrd3c99fbv60"))))
(base32 "1rla7kcb94c7daklp4av27gix86cmwsrqg6884zmv5zfnhz0r700"))))
(arguments
`(#:phases
(modify-phases %standard-phases
@ -1452,7 +1452,7 @@ programming. Iosevka is completely generated from its source code.")
"/releases/download/v" version
"/ttc-iosevka-aile-" version ".zip"))
(sha256
(base32 "11xajywv20ah6yg3a0sqv2lp5phg8yv268dw2myz3ciazwnvdpqq"))))))
(base32 "1lciycahvxgvmcniq4h3m1v3rc42nmv8ydb0fpbl9g4sc0qp81hq"))))))
(define-public font-iosevka-curly
(package
@ -1466,7 +1466,7 @@ programming. Iosevka is completely generated from its source code.")
"releases/download/v" version "/"
"ttc-iosevka-curly-" version ".zip"))
(sha256
(base32 "1ss11pdrk7k0kwbaklllz4mb961j6issjp53jpp7p9pvs4qad8xf"))))))
(base32 "02jvrj7kzd4bx3maj1bq2p9j746b8c5713d8lqkxx4fn9fm0zppq"))))))
(define-public font-iosevka-curly-slab
(package
@ -1480,7 +1480,7 @@ programming. Iosevka is completely generated from its source code.")
"releases/download/v" version "/"
"ttc-iosevka-curly-slab-" version ".zip"))
(sha256
(base32 "141jyarpmln5q3cjyq79nw9kfm55vaiy3cin3rlamghrhjw8wg9q"))))))
(base32 "1bhvf95xs74wm8srsvl4yxwvl36llk93mpl1y9acc5z9rdcpzjqq"))))))
(define-public font-iosevka-etoile
(package
@ -1494,7 +1494,7 @@ programming. Iosevka is completely generated from its source code.")
"/releases/download/v" version
"/ttc-iosevka-etoile-" version ".zip"))
(sha256
(base32 "097b8acia49fqpsy3w6ldk73k4abn6z9mlkl1p4iw99k26ip1sy7"))))))
(base32 "1zmgfxfsbxv1k4fwnc7g2jlfhmlzp5kap8m3f10fqanpnkd0yf08"))))))
(define-public font-sarasa-gothic
(package

View file

@ -70,6 +70,7 @@
;;; Copyright © 2021 Foo Chuan Wei <chuanwei.foo@hotmail.com>
;;; Copyright © 2022 Yovan Naumovski <yovan@gorski.stream>
;;; Copyright © 2022 Roman Riabenko <roman@riabenko.com>
;;; Copyright © 2022 zamfofex <zamfofex@twdb.moe>
;;;
;;; This file is part of GNU Guix.
;;;
@ -140,6 +141,7 @@
#:use-module (gnu packages golang)
#:use-module (gnu packages gperf)
#:use-module (gnu packages graphics)
#:use-module (gnu packages graphviz)
#:use-module (gnu packages gsasl)
#:use-module (gnu packages gstreamer)
#:use-module (gnu packages gtk)
@ -12672,3 +12674,44 @@ disassembly of the DOS version, extended with new features.")
Magic II (aka HOMM2) game engine. It requires assets and game resources to
play; it will look for them at @file{~/.local/share/fheroes2} folder.")
(license license:gpl2)))
(define-public liquidwar6
(package
(name "liquidwar6")
(version "0.6.3902")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnu/liquidwar6/" "liquidwar6-"
version ".tar.gz"))
(sha256
(base32
"1976nnl83d8wspjhb5d5ivdvdxgb8lp34wp54jal60z4zad581fn"))))
(native-inputs (list doxygen))
(inputs (list guile-2.0
zlib
expat
sqlite
ncurses
readline
curl
python-2
libxslt
perl
graphviz
glu
libcaca
(sdl-union (list sdl sdl-image sdl-ttf sdl-mixer))))
(build-system gnu-build-system)
(arguments
(list #:configure-flags
#~(list "--enable-allinone" "CFLAGS=-Wno-error -O2 -g"
(string-append "CPPFLAGS=" "-I"
#$(this-package-input "sdl-union")
"/include/SDL"))))
(synopsis "Liquid War 6 is a unique multiplayer wargame.")
(description
"Liquid War 6 is a unique multiplayer war game. Your army is a blob of
liquid and you have to try and eat your opponents. Rules are very simple yet
original, they have been invented by Thomas Colcombet.")
(home-page "https://www.gnu.org/software/liquidwar6/")
(license license:gpl3+)))

View file

@ -12,6 +12,7 @@
;;; Copyright © 2020 Simon Tournier <zimon.toutoune@gmail.com>
;;; Copyright © 2021 Chris Marusich <cmmarusich@gmail.com>
;;; Copyright © 2021 Sarah Morgensen <iskarian@mgsn.dev>
;;; Copyright © 2022 Greg Hogan <code@greghogan.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -664,14 +665,14 @@ It also includes runtime support libraries for these languages.")
(define-public gcc-11
(package
(inherit gcc-8)
(version "11.2.0")
(version "11.3.0")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnu/gcc/gcc-"
version "/gcc-" version ".tar.xz"))
(sha256
(base32
"12zs6vd2rapp42x154m479hg3h3lsafn3xhg06hp5hsldd9xr3nh"))
"0fdclcwf728wbq52vphfcjywzhpsjp3kifzj3pib3xcihs0z4z5l"))
(patches (search-patches "gcc-9-strmov-store-file-names.patch"
"gcc-5.0-libvtv-runpath.patch"))
(modules '((guix build utils)))

View file

@ -825,7 +825,7 @@ position when the mouse is moved rapidly.")
(define-public gnome-shell-extension-burn-my-windows
(package
(name "gnome-shell-extension-burn-my-windows")
(version "7")
(version "15")
(source
(origin
(method git-fetch)
@ -834,7 +834,7 @@ position when the mouse is moved rapidly.")
(commit (string-append "v" version))))
(sha256
(base32
"1513kh6dfvnaj5jq2mm7rv1k54v91hjckgim1dpqlxwnv4gi9krd"))
"1gabnqdk11n6345jzv9sc4yjmfrdgg0lsz6zc29gc5afzgirkhm5"))
(file-name (git-file-name name version))))
(build-system copy-build-system)
(arguments
@ -864,7 +864,7 @@ animation of closing windowed applications.")
(define-public gnome-shell-extension-blur-my-shell
(package
(name "gnome-shell-extension-blur-my-shell")
(version "27")
(version "29")
(source
(origin
(method git-fetch)
@ -874,7 +874,7 @@ animation of closing windowed applications.")
(file-name (git-file-name name version))
(sha256
(base32
"0l318lgc2zrp8fskabiv28knwp3b5i2y8bd3164da4pkf1jsl468"))
"13x7zgaj3dz7lypdv1bgmpmh0f2w53q567zxmhmqimi1gy5mjrvk"))
(snippet
'(begin (delete-file "src/schemas/gschemas.compiled")))))
(build-system copy-build-system)

View file

@ -716,8 +716,8 @@ in C/C++.")
;; XXXX: Workaround 'snippet' limitations.
(define computed-origin-method (@@ (guix packages) computed-origin-method))
(define %icecat-version "91.8.0-guix0-preview1")
(define %icecat-build-id "20220405000000") ;must be of the form YYYYMMDDhhmmss
(define %icecat-version "91.9.0-guix0-preview1")
(define %icecat-build-id "20220503000000") ;must be of the form YYYYMMDDhhmmss
;; 'icecat-source' is a "computed" origin that generates an IceCat tarball
;; from the corresponding upstream Firefox ESR tarball, using the 'makeicecat'
@ -739,11 +739,11 @@ in C/C++.")
"firefox-" upstream-firefox-version ".source.tar.xz"))
(sha256
(base32
"0fkz12grzl9892b8ncd5y93xhzhbvkik4d0944vgkizmrd9si0yl"))))
"175sakp772hx5c45zc1isbibhpvw7xb4l2lwaf9pvxig9j9ymgml"))))
(upstream-icecat-base-version "91.8.0") ; maybe older than base-version
(upstream-icecat-base-version "91.9.0") ; maybe older than base-version
;;(gnuzilla-commit (string-append "v" upstream-icecat-base-version))
(gnuzilla-commit "3aec3e591e7b1de0bfe5025a54ef5771a9823917")
(gnuzilla-commit "d7d3e9a33d2b3b78a6e08060684580c72c0d6e93")
(gnuzilla-source
(origin
(method git-fetch)
@ -755,7 +755,7 @@ in C/C++.")
(string-take gnuzilla-commit 8)))
(sha256
(base32
"1mianwz71yixqdb3bji3hvn8ixsmhz4ygq06fnb1p3dpbaphspa1"))))
"0mp6mknnhha88932v6pmfadjbnnvkcrsi1ljmcrcz7pb9y81gxn0"))))
;; 'search-patch' returns either a valid file name or #f, so wrap it
;; in 'assume-valid-file-name' to avoid 'local-file' warnings.
@ -1338,11 +1338,11 @@ standards of the IceCat project.")
(cpe-version . ,(first (string-split version #\-)))))))
;; Update this together with icecat!
(define %icedove-build-id "20220405000000") ;must be of the form YYYYMMDDhhmmss
(define %icedove-build-id "20220503000000") ;must be of the form YYYYMMDDhhmmss
(define-public icedove
(package
(name "icedove")
(version "91.8")
(version "91.9.0")
(source icecat-source)
(properties
`((cpe-name . "thunderbird_esr")))
@ -1628,7 +1628,7 @@ standards of the IceCat project.")
;; in the Thunderbird release tarball. We don't use the release
;; tarball because it duplicates the Icecat sources and only adds the
;; "comm" directory, which is provided by this repository.
,(let ((changeset "525d4941f4870a56f714af775b7d7bc18175021d"))
,(let ((changeset "8b44d29de6525d6379f163f50c1a900d4540ef1b"))
(origin
(method hg-fetch)
(uri (hg-reference
@ -1637,7 +1637,7 @@ standards of the IceCat project.")
(file-name (string-append "thunderbird-" version "-checkout"))
(sha256
(base32
"1kq6564bjzd80nsggyih4ypbkf35p32j5akaq589sm3xbjgd1zq6")))))
"1k7zy53il3i4k2k7mc33j0wsgpjrsghmmj6afs14hk9j95byvayy")))))
("cargo" ,rust "cargo")
("clang" ,clang-11)
("llvm" ,llvm-11)

View file

@ -138,7 +138,7 @@ between two other data points.")
(define-public gama
(package
(name "gama")
(version "2.18")
(version "2.19")
(source
(origin
(method url-fetch)
@ -146,7 +146,7 @@ between two other data points.")
version ".tar.gz"))
(sha256
(base32
"03axw35vi5idsyxhfy7afj77bdig2v95l1s0sqy3kqw4cx5bpn2w"))
"0lh3abvyq07igi44mmjif3nwy6iig0j1jq6rrxkrvkhhm5q98b1q"))
(modules '((guix build utils)))
(snippet
'(begin

View file

@ -872,7 +872,7 @@ distills complex, animated scenes into a set of baked geometric results.")
(define-public mangohud
(package
(name "mangohud")
(version "0.6.6-1")
(version "0.6.7")
(source
(origin
(method git-fetch)
@ -881,7 +881,7 @@ distills complex, animated scenes into a set of baked geometric results.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0ka004wxkajmvs5vy60r4ckm7f169c61rrd46w6gywkaqf5yp1ab"))))
(base32 "0n2x6agv2j8nd6h1998dqsphb7k57zx8vsayv47dqix28kg5kixz"))))
(build-system meson-build-system)
(arguments
(list
@ -912,11 +912,6 @@ distills complex, animated scenes into a set of baked geometric results.")
(substitute* "src/meson.build"
(("\\\\\\$LIB")
"lib"))
(substitute* "src/loaders/loader_libdrm.cpp"
(("libdrm.so.2")
(search-input-file inputs "lib/libdrm.so.2"))
(("libdrm_amdgpu.so.1")
(search-input-file inputs "lib/libdrm_amdgpu.so.1")))
(substitute* "src/overlay.cpp"
(("glxinfo")
(search-input-file inputs "bin/glxinfo")))
@ -934,7 +929,6 @@ distills complex, animated scenes into a set of baked geometric results.")
glslang
`(,hwdata "pci")
imgui-1.86
libdrm
libx11
mesa
mesa-utils

View file

@ -5,7 +5,7 @@
;;; Copyright © 2021 Evgeny Pisemsky <evgeny@pisemsky.com>
;;; Copyright © 2021 Léo Le Bouter <lle-bout@zaclys.net>
;;; Copyright © 2021 Denis Carikli <GNUtoo@cyberdimension.org>
;;; Copyright © 2021 Petr Hodina <phodina@protonmail.com>
;;; Copyright © 2021, 2022 Petr Hodina <phodina@protonmail.com>
;;; Copyright © 2021 Raghav Gururajan <rg@raghavgururajan.name>
;;; Copyright © 2021 Vinicius Monego <monego@posteo.net>
;;; Copyright © 2021, 2022 John Kehayias <john.kehayias@protonmail.com>
@ -34,6 +34,7 @@
#:use-module (gnu packages admin)
#:use-module (gnu packages autotools)
#:use-module (gnu packages bash)
#:use-module (gnu packages bison)
#:use-module (gnu packages compression)
#:use-module (gnu packages check)
#:use-module (gnu packages cpp)
@ -82,6 +83,33 @@
;; This is a module for packages related to physical hardware that don't (yet)
;; have a more specific home like gps.scm, security-token.scm, &c.
(define-public envytools
(let ((commit "9014a51b1436461c7b3b005bdae72bf4912f4e72")
(revision "1"))
(package
(name "envytools")
(version (git-version "0.1" revision commit))
(home-page "https://github.com/envytools/envytools")
(source (origin
(method git-fetch)
(uri (git-reference
(url home-page)
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"1lqh73yxd5jgv7b770m37zimzhyn4f3053jybkixkhvm93zka8vd"))))
(build-system cmake-build-system)
(native-inputs (list bison flex pkg-config))
(inputs (list libxml2 python))
(synopsis "Reverse-engineering tools for Nvidia's proprietary GPU drivers")
(description
"This package provides tools for exploring Nvidia's proprietary GPU
drivers, including an assembler and a disassembler for several GPU instruction
sets, and tools to deal with register databases.")
(license license:expat))))
(define-public hwinfo
(package
(name "hwinfo")

View file

@ -304,14 +304,14 @@ to @code{cabal repl}).")
(define-public git-annex
(package
(name "git-annex")
(version "10.20220322")
(version "10.20220504")
(source
(origin
(method url-fetch)
(uri (string-append "https://hackage.haskell.org/package/"
"git-annex/git-annex-" version ".tar.gz"))
(sha256
(base32 "107v1c2lw53k25p6snbmxyia3ghd63kj3izvd81d8km9qncv96bv"))))
(base32 "10pp58b7glwi1yckrij49d1iq99pc4dpkkbkb1qqiif9dr9672f3"))))
(build-system haskell-build-system)
(arguments
`(#:configure-flags

View file

@ -23,6 +23,7 @@
;;; Copyright © 2021 Guillaume Le Vaillant <glv@posteo.net>
;;; Copyright © 2021 Zheng Junjie <873216071@qq.com>
;;; Copyright © 2021 dissent <disseminatedissent@protonmail.com>
;;; Copyright © 2022 Michael Rohleder <mike@rohleder.de>
;;;
;;; This file is part of GNU Guix.
;;;
@ -97,7 +98,7 @@
(define-public ytfzf
(package
(name "ytfzf")
(version "1.2.0")
(version "2.3")
(home-page "https://github.com/pystardust/ytfzf")
(source
(origin
@ -108,128 +109,32 @@
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "00d416qb4109pm77ikhnmds8qng90ni2jan9kdnxz7b6sh5f61nz"))
(patches
(search-patches
;; Pre-requisite for 'patch-script' phase.
"ytfzf-programs.patch"
;; Disables self-update.
"ytfzf-updates.patch"))))
(base32 "01prcg6gfwy1r49v92pkzxay9iadqqhpaxvn8jmij2jm5l50iynd"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ;no test suite
#:modules
((guix build gnu-build-system)
(guix build utils)
(srfi srfi-26))
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'patch-script
(lambda* (#:key inputs outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(bash (assoc-ref inputs "bash"))
(catimg (assoc-ref inputs "catimg"))
(chafa (assoc-ref inputs "chafa"))
(coreutils (assoc-ref inputs "coreutils"))
(curl (assoc-ref inputs "curl"))
(dmenu (assoc-ref inputs "dmenu"))
(fzf (assoc-ref inputs "fzf"))
(gawk (assoc-ref inputs "gawk"))
(grep (assoc-ref inputs "grep"))
(jp2a (assoc-ref inputs "jp2a"))
(jq (assoc-ref inputs "jq"))
(libnotify (assoc-ref inputs "libnotify"))
(mpv (assoc-ref inputs "mpv"))
(ncurses (assoc-ref inputs "ncurses"))
(python-ueberzug (assoc-ref inputs "python-ueberzug"))
(sed (assoc-ref inputs "sed"))
(util-linux (assoc-ref inputs "util-linux"))
(youtube-dl (assoc-ref inputs "youtube-dl")))
;; Use correct $PREFIX path.
(substitute* "Makefile"
(("/usr/bin")
(string-append out "/bin")))
;; Use absolute path for referenced programs.
(substitute* "ytfzf"
(("@awk@")
(string-append gawk "/bin/awk"))
(("@cat@")
(string-append coreutils "/bin/cat"))
(("@catimg@")
(string-append catimg "/bin/catimg"))
(("@chafa@")
(string-append chafa "/bin/chafa"))
(("@chmod@")
(string-append coreutils "/bin/chmod"))
(("@column@")
(string-append util-linux "/bin/column"))
(("@cp@")
(string-append coreutils "/bin/cp"))
(("@cut@")
(string-append coreutils "/bin/cut"))
(("@curl@")
(string-append curl "/bin/curl"))
(("@date@")
(string-append coreutils "/bin/date"))
(("@dmenu@")
(string-append dmenu "/bin/dmenu"))
(("@fzf@")
(string-append fzf "/bin/fzf"))
(("@grep@")
(string-append grep "/bin/grep"))
(("@head@")
(string-append coreutils "/bin/head"))
(("@jp2a@")
(string-append jp2a "/bin/jp2a"))
(("@jq@")
(string-append jq "/bin/jq"))
(("@mkdir@")
(string-append coreutils "/bin/mkdir"))
(("@mkfifo@")
(string-append coreutils "/bin/mkfifo"))
(("@mpv@")
(string-append mpv "/bin/mpv"))
(("@nohup@")
(string-append coreutils "/bin/nohup"))
(("@notify-send@")
(string-append libnotify "/bin/notify-send"))
(("@rm@")
(string-append coreutils "/bin/rm"))
(("@sed@")
(string-append sed "/bin/sed"))
(("@seq@")
(string-append coreutils "/bin/seq"))
(("@setsid@")
(string-append util-linux "/bin/setsid"))
(("@sh@")
(string-append bash "/bin/sh"))
(("@sleep@")
(string-append coreutils "/bin/sleep"))
(("@sort@")
(string-append coreutils "/bin/sort"))
(("@tput@")
(string-append ncurses "/bin/tput"))
(("@tr@")
(string-append coreutils "/bin/tr"))
(("@ueberzug@")
(string-append python-ueberzug "/bin/ueberzug"))
(("@uname@")
(string-append coreutils "/bin/uname"))
(("@uniq@")
(string-append coreutils "/bin/uniq"))
(("@wc@")
(string-append coreutils "/bin/wc"))
(("@youtube-dl@")
(string-append youtube-dl "/bin/youtube-dl"))))
(substitute* "ytfzf"
;; Generate temporary files in the user-specific path,
;; to avoid issues in multi-user systems.
(("/tmp/ytfzf")
"$HOME/.cache/ytfzf")
;; Report errors to Guix.
(("report at: https://github.com/pystardust/ytfzf")
"report at: https://issues.guix.gnu.org"))))
(delete 'configure)))) ;no configure script
(list
#:tests? #f ;no test suite
#:make-flags
#~(list (string-append "PREFIX=" #$output))
#:phases
#~(modify-phases %standard-phases
(delete 'configure)
(add-after 'install 'install-addons
(lambda _
(invoke "make" "addons"
(string-append "PREFIX=" #$output))))
(add-after 'install 'wrap-program
(lambda* (#:key inputs #:allow-other-keys)
(wrap-program (string-append #$output "/bin/ytfzf")
`("PATH" ":" prefix
,(map (lambda (input)
(string-append (assoc-ref inputs input) "/bin"))
'("bash" "catimg" "chafa" "coreutils" "curl"
"dmenu" "fzf" "gawk" "grep" "jp2a" "jq"
"libnotify" "mpv" "ncurses" "python-ueberzug"
"sed" "util-linux" "youtube-dl")))
`("YTFZF_SYSTEM_ADDON_DIR" ":" =
,(list (string-append #$output "/share/ytfzf/addons")))))))))
(inputs
(list bash
catimg

View file

@ -2241,7 +2241,7 @@ new Date();"))
(package
(inherit openjdk16)
(name "openjdk")
(version "17.0.1")
(version "17.0.2")
(source (origin
(method git-fetch)
(uri (git-reference
@ -2250,7 +2250,7 @@ new Date();"))
(file-name (git-file-name name version))
(sha256
(base32
"1l1jgbz8q7zq66npfg88r0l5xga427vrz35iys09j44b6qllrldd"))
"0zwv5pnh7rb7a6689jlhjfcc92bsiy0xbhdxyj93096ah4n3hqhj"))
(patches
(search-patches "openjdk-15-xcursor-no-dynamic.patch"))))
(native-inputs

View file

@ -37,6 +37,7 @@
#:use-module (gnu packages python-build)
#:use-module (gnu packages python-check)
#:use-module (gnu packages python-crypto)
#:use-module (gnu packages python-science)
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages python-web)
#:use-module (gnu packages rdf)
@ -517,6 +518,66 @@ sending queries to an SPARQL endpoint and fetching & presenting the results in
a notebook.")
(license license:bsd-3)))
(define-public python-ipympl
(package
(name "python-ipympl")
(version "0.9.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "ipympl" version))
(sha256
(base32 "11rppjdqzgs4pfiq8gww5xkpbk21fp86vvv839v56b9rqq06j2b4"))))
(build-system python-build-system)
(propagated-inputs
(list python-ipython
python-ipython-genutils
python-ipywidgets
python-matplotlib
python-numpy
python-pillow
python-traitlets))
(native-inputs
(list python-jupyter-packaging))
(home-page "https://matplotlib.org/ipympl/")
(synopsis "Matplotlib Jupyter Extension")
(description "Leveraging the Jupyter interactive widgets framework, ipympl
enables the interactive features of matplotlib in the Jupyter notebook and in
JupyterLab.")
(license license:bsd-3)))
(define-public python-ipydatawidgets
(package
(name "python-ipydatawidgets")
(version "4.2.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "ipydatawidgets" version))
(sha256
(base32 "1g65nzlsb1cipmvh9v27b22kkmzwvg8zbf32hmg1c25mb65vbr6h"))))
(build-system python-build-system)
(arguments
'(#:phases
(modify-phases %standard-phases
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(invoke "pytest" "-v")))))))
(propagated-inputs
(list python-ipywidgets python-numpy python-six python-traittypes))
(native-inputs
(list python-jupyter-packaging
python-nbval
python-pytest
python-pytest-cov))
(home-page "https://github.com/vidartf/ipydatawidgets")
(synopsis "Widgets to help facilitate reuse of large datasets across widgets")
(description
"This package provides a set of widgets to help facilitate reuse of large
datasets across widgets.")
(license license:bsd-3)))
(define-public python-voila
(package
(name "python-voila")

View file

@ -7,7 +7,7 @@
;;; Copyright © 2015 Taylan Ulrich Bayırlı/Kammer <taylanbayirli@gmail.com>
;;; Copyright © 2015, 2016, 2017, 2018, 2020, 2022 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 Christine Lemmer-Webber <cwebber@dustycloud.org>
;;; Copyright © 20162021 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 20162022 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2016, 2017 Alex Kost <alezost@gmail.com>
;;; Copyright © 2016 Raymond Nicholson <rain1@openmailbox.org>
;;; Copyright © 2016 Mathieu Lirzin <mthl@gnu.org>
@ -380,7 +380,7 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
;; The "longterm" kernels — the older releases with long-term upstream support.
;; Here are the support timelines:
;; <https://www.kernel.org/category/releases.html>
(define-public linux-libre-5.15-version "5.15.36")
(define-public linux-libre-5.15-version "5.15.37")
(define-public linux-libre-5.15-gnu-revision "gnu")
(define deblob-scripts-5.15
(linux-libre-deblob-scripts
@ -390,7 +390,7 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(base32 "1s2s1sjdhblaz80shq1jgp4kp9vi7j1bsh4vvsk28s5m6xwf6yvl")))
(define-public linux-libre-5.15-pristine-source
(let ((version linux-libre-5.15-version)
(hash (base32 "1466557034q1fzvpy8vwj8ps3cv2q8s7z76af9y1jz4kgaqmsd1n")))
(hash (base32 "09n0l9ly111r6jbpgz1kw2q4n4mmcv5jxfhs5bcsiyjp44d0kgqq")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-5.15)))
@ -425,7 +425,7 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(%upstream-linux-source version hash)
deblob-scripts-5.4)))
(define-public linux-libre-4.19-version "4.19.240")
(define-public linux-libre-4.19-version "4.19.241")
(define-public linux-libre-4.19-gnu-revision "gnu1")
(define deblob-scripts-4.19
(linux-libre-deblob-scripts
@ -435,7 +435,7 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(base32 "1mp9d0b7mqw7cl65k0a18265cvn4qwcpnvna8r6n5m3y4pz3rik9")))
(define-public linux-libre-4.19-pristine-source
(let ((version linux-libre-4.19-version)
(hash (base32 "1hj6vngynx6kjaczjl77jjwqq0kh0lm6jdqjvakd1cgrppaizb3j")))
(hash (base32 "04zyi22c2d91k7v2w0s8v112cqqf24km599mn18k2nafq79njqjc")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-4.19)))
@ -6586,7 +6586,7 @@ the default @code{nsswitch} and the experimental @code{umich_ldap}.")
(define-public mcelog
(package
(name "mcelog")
(version "180")
(version "181")
(source
(origin
(method git-fetch)
@ -6595,7 +6595,7 @@ the default @code{nsswitch} and the experimental @code{umich_ldap}.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1xy1082c67yd48idg5vwvrw7yx74gn6jj2d9c67d0rh6yji091ki"))
(base32 "0c9zdivv86xd8dmwia0k9fbr52zrafbyzn7ss53mh17sry5gm716"))
(modules '((guix build utils)))
(snippet
`(begin
@ -7239,7 +7239,7 @@ used by nftables.")
(define-public nftables
(package
(name "nftables")
(version "1.0.1")
(version "1.0.2")
(source
(origin
(method url-fetch)
@ -7248,14 +7248,27 @@ used by nftables.")
(string-append "https://www.nftables.org/projects/nftables"
"/files/nftables-" version ".tar.bz2")))
(sha256
(base32 "08x4xw0s5sap3q7jfr91v7mrkxrydi4dvsckw85ims0qb1ibmviw"))))
(base32 "00jcjn1pl7qyqpg8pd4yhlkys7wbj4vkzgg73n27nmplzips6a0b"))
(patches
(search-patches "nftables-fix-makefile.patch"))))
(build-system gnu-build-system)
(arguments `(#:configure-flags
'("--disable-static"
"--with-cli=readline"
"--with-json")))
"--with-json")
#:phases
(modify-phases %standard-phases
(add-before 'configure 'autoreconf
(lambda _
(invoke "autoreconf" "-fi"))))))
(inputs (list gmp libmnl libnftnl readline jansson))
(native-inputs (list pkg-config bison flex docbook2x))
(native-inputs (list pkg-config
bison
flex
docbook2x
autoconf
automake
libtool))
(home-page "https://www.nftables.org")
(synopsis "Userspace utility for Linux packet filtering")
(description "nftables is the project that aims to replace the existing
@ -9060,7 +9073,7 @@ provides user-space tools for creating EROFS file systems.")
(define-public rasdaemon
(package
(name "rasdaemon")
(version "0.6.7")
(version "0.6.8")
(source
(origin
(method git-fetch)
@ -9069,7 +9082,7 @@ provides user-space tools for creating EROFS file systems.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "12ih96jwmr7imp9zyckf9zjqqm5ra1kv5fj6kbw71y6yl31069dz"))))
(base32 "0r0339mg4rc12p63iiq2kwdqn1zjakyiv014i2a2l9s8v5rjik41"))))
(native-inputs (list autoconf automake libtool))
(inputs (list sqlite))
(arguments

View file

@ -19,7 +19,7 @@
;;; Copyright © 2020 Konrad Hinsen <konrad.hinsen@fastmail.net>
;;; Copyright © 2020 Dimakis Dimakakos <me@bendersteed.tech>
;;; Copyright © 2020 Oleg Pykhalov <go.wigust@gmail.com>
;;; Copyright © 2020, 2021 Adam Kandur <rndd@tuta.io>
;;; Copyright © 2020, 2021, 2022 Adam Kandur <rndd@tuta.io>
;;; Copyright © 2020, 2021 Sharlatan Hellseher <sharlatanus@gmail.com>
;;; Copyright © 2021, 2022 Aurora <rind38@disroot.org>
;;; Copyright © 2021 Matthew James Kraai <kraai@ftbfs.org>
@ -910,6 +910,40 @@ file.")
(define-public cl-zpb-ttf
(sbcl-package->cl-source-package sbcl-zpb-ttf))
(define-public sbcl-zip
;; named branch is outdated
(let ((commit "688b1545dd7a4fe355556768bb03f8bd9b847a87")
(revision "1"))
(package
(name "sbcl-zip")
(version (git-version "0.0.0" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/bluelisp/zip")
(commit commit)))
(sha256
(base32 "0s08a6fq182fzsbfyvihqbdllq6gxcwkvphxnrd9wwz65dhg5y66"))
(file-name (git-file-name "cl-zip" version))))
(build-system asdf-build-system/sbcl)
(inputs
(list sbcl-babel
sbcl-cl-fad
sbcl-salza2
sbcl-trivial-gray-streams))
(synopsis "Zip library written in Common Lisp")
(description "This package provide a Common Lisp library for .zip-file
reading and writing.")
(home-page "https://zip.common-lisp.dev")
(license (list license:bsd-2 license:llgpl)))))
(define-public ecl-zip
(sbcl-package->ecl-package sbcl-zip))
(define-public cl-zip
(sbcl-package->cl-source-package sbcl-zip))
(define-public sbcl-cl-vectors
(package
(name "sbcl-cl-vectors")

View file

@ -527,10 +527,10 @@ output), and Binutils.")
("libc-static" ,glibc "static")))))
(define %llvm-monorepo-hashes
'(("14.0.0" . "1ixqzjzq4ad3mv1w44gwcg1shy34c2b3i9ja71vx1wa7l2ms2376")))
'(("14.0.3" . "0makhpbrg46m2gi8wyp5h21ln4mgilahh3clk4d1b2ln2ck3v7m8")))
(define %llvm-patches
'(("14.0.0" . ("clang-14.0-libc-search-path.patch"))))
'(("14.0.3" . ("clang-14.0-libc-search-path.patch"))))
(define (llvm-monorepo version)
(origin
@ -545,7 +545,7 @@ output), and Binutils.")
(define-public llvm-14
(package
(name "llvm")
(version "14.0.0")
(version "14.0.3")
(source (llvm-monorepo version))
(build-system cmake-build-system)
(outputs '("out" "opt-viewer"))
@ -1153,7 +1153,7 @@ of programming tools as well as libraries with equivalent functionality.")
(define-public lld-14
(package
(name "lld")
(version "14.0.0")
(version "14.0.3")
(source (llvm-monorepo version))
(build-system cmake-build-system)
(inputs

View file

@ -51,6 +51,7 @@
#:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages python)
#:use-module (gnu packages python-build)
#:use-module (gnu packages python-web)
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages tcl)
@ -115,36 +116,43 @@ particular severity level. It allows logging to be controlled from the
command line.")
(license license:bsd-3)))
;; This is the legacy version of the tailon package. The new version, written
;; in Go in available here: https://github.com/gvalkov/tailon.
(define-public tailon
(package
(name "tailon")
(version "1.3.0")
(version "1.4.3")
(source
(origin
(method url-fetch)
(uri (pypi-uri name version))
(sha256
(base32
"0wl2wm6p3pc0vkk33s7rzgcfvs9cwxfmlz997pdfhlw72r00l7s5"))))
"0xkmrivzilsc9wqr8ms67v7399gxnh7pv5687k4rdpdgz4309fwc"))))
(build-system python-build-system)
(native-inputs
(list python-tox python-wheel))
(inputs
(list python-pyyaml python-sockjs-tornado python-tornado-http-auth
python-tornado))
(list python-pyyaml-5 python-sockjs-tornado python-tornado-http-auth
python-tornado python-deepmerge))
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'patch-commands.py
(lambda args
(substitute* "tailon/commands.py"
(("self\\.first_in_path\\('grep'\\)")
(string-append"'" (which "grep") "'"))
(("self\\.first_in_path\\('gawk', 'awk'\\)")
(string-append"'" (which "gawk") "'"))
(("self\\.first_in_path\\('gsed', 'sed'\\)")
(string-append"'" (which "sed") "'"))
(("self\\.first_in_path\\('gtail', 'tail'\\)")
(string-append"'" (which "tail") "'")))
#t)))))
(lambda args
(substitute* "tailon/commands.py"
(("self\\.first_in_path\\('grep'\\)")
(string-append"'" (which "grep") "'"))
(("self\\.first_in_path\\('gawk', 'awk'\\)")
(string-append"'" (which "gawk") "'"))
(("self\\.first_in_path\\('gsed', 'sed'\\)")
(string-append"'" (which "sed") "'"))
(("self\\.first_in_path\\('gtail', 'tail'\\)")
(string-append"'" (which "tail") "'")))))
(add-after 'unpack 'relax-requirements
(lambda _
(substitute* "setup.py"
((",<5.0.0") "")))))))
(home-page "https://tailon.readthedocs.io/")
(synopsis
"Webapp for looking at and searching through log files")
@ -192,7 +200,7 @@ output in multiple windows in a terminal.")
(define-public spdlog
(package
(name "spdlog")
(version "1.9.2")
(version "1.10.0")
(source
(origin
(method git-fetch)
@ -201,7 +209,7 @@ output in multiple windows in a terminal.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1img03ka63hf3sb62v5f02ax5jc9mlpz5cijr38xxzymvcg1s98r"))))
(base32 "02xz017ba9fssm1rp1fcfld7h79awbr6fqai9dxaqp02akp3davk"))))
(build-system cmake-build-system)
;; TODO run benchmark. Currently not possible, as adding
;; (gnu packages benchmark) forms a dependency cycle

View file

@ -555,7 +555,7 @@ aliasing facilities to work just as they would on normal mail.")
(define-public mutt
(package
(name "mutt")
(version "2.2.3")
(version "2.2.4")
(source (origin
(method url-fetch)
(uri (list
@ -565,7 +565,7 @@ aliasing facilities to work just as they would on normal mail.")
version ".tar.gz")))
(sha256
(base32
"12cds5qm0x51wj1bz1a2f4q4qwbyfssq9pnisxz48ks5mg6xv2lp"))
"0q70qrsjvmkfns1qxc0il2rlmfjwzbmfg89zlch0iqghpyz7c9xq"))
(patches (search-patches "mutt-store-references.patch"))))
(build-system gnu-build-system)
(inputs

View file

@ -49,6 +49,7 @@
;;; Copyright © 2021 Ivan Gankevich <i.gankevich@spbu.ru>
;;; Copyright © 2021 Jean-Baptiste Volatier <jbv@pm.me>
;;; Copyright © 2021 Guillaume Le Vaillant <glv@posteo.net>
;;; Copyright © 2021 Pierre-Antoine Bouttier <pierre-antoine.bouttier@univ-grenoble-alpes.fr>
;;;
;;; This file is part of GNU Guix.
;;;
@ -1852,6 +1853,65 @@ sharing of scientific data.")
(home-page (package-home-page netcdf))
(license (package-license netcdf))))
(define-public n2p2
(package
(name "n2p2")
(version "2.1.4")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/CompPhysVienna/n2p2")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"1lw195ihpxwh08387i4gamk1glhalpq888q6nj8l5vswbgnrv1pq"))))
(build-system gnu-build-system)
(arguments
`(#:make-flags '("MODE=shared" "-C" "src")
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'post-unpack
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "src/makefile.gnu"
(("PROJECT_EIGEN=/usr/include/eigen3")
(string-append "PROJECT_EIGEN="
(assoc-ref inputs "eigen") "/include/eigen3")))
(substitute* "src/makefile.gnu"
(("-lblas")
(string-append "-L" (assoc-ref inputs "openblas")
"/lib -lopenblas"))
(("-march=native")
""))
(substitute* "src/application/makefile"
(("LDFLAGS=")
"LDFLAGS=-Wl,-rpath='$$ORIGIN/../lib' "))))
(delete 'configure)
(delete 'check)
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(bindir (string-append out "/bin"))
(libdir (string-append out "/lib"))
(incdir (string-append out "/include")))
(for-each (lambda (f) (install-file f bindir))
(find-files "bin" "^nnp-"))
(for-each (lambda (f) (install-file f libdir))
(find-files "lib" "\\.so$"))
(for-each (lambda (f) (install-file f incdir))
(find-files "include" "\\.h$"))))))))
(inputs
(list openmpi gsl openblas eigen))
(synopsis "Neural network potentials for chemistry and physics")
(description "This package contains software that will allow you to use
existing neural network potential parameterizations to predict energies and
forces (with standalone tools but also in conjunction with the MD software
LAMMPS). In addition it is possible to train new neural network potentials
with the provided training tools.")
(home-page "https://compphysvienna.github.io/n2p2/")
(properties '((tunable? . #t))) ;to benefit from SIMD code in Eigen
(license license:gpl3+)))
(define-public nlopt
(package
(name "nlopt")
@ -3174,7 +3234,16 @@ scientific applications modeled by partial differential equations.")
(("libptesmumps") "libesmumps")
(("libptscotchparmetis") "libptscotchparmetisv3"))))
(add-before 'configure 'mpi-setup
#$%openmpi-setup)))))
#$%openmpi-setup)
(add-after 'install 'patch-header-inclusions
;; TODO: Replace with patch-header-inclusions when (some form
;; of) https://issues.guix.gnu.org/54780#19 is merged.
(lambda _
(substitute* (string-append #$output "/include/petsclayouthdf5.h")
(("<(H5Ipublic.h)>" _ header)
(format #f "<~a/include/~a>"
#$(this-package-input "hdf5-parallel-openmpi")
header)))))))))
(synopsis "Library to solve PDEs (with MUMPS and MPI support)")))
(define-public petsc-complex-openmpi
@ -5170,34 +5239,30 @@ A unique design feature of Trilinos is its focus on packages.")
(define-public dealii
(package
(name "dealii")
(version "9.3.2")
(version "9.3.3")
(source
(origin
(method url-fetch)
(uri (string-append "https://github.com/dealii/dealii/releases/"
"download/v" version "/dealii-" version ".tar.gz"))
(sha256
(base32 "1s0kawnljg24jj6nibwrif5gxdgg2daqfylhqqpl1lvmzmmxfhak"))
(patches (search-patches "dealii-fix-compiliation-with-boost-1.78.patch"
"dealii-fix-sundials.patch"))
(base32 "0a8s4yxcbvzmfgv5qcg27h2ss4fcnyhrhhs35glqj59l9cbmkysx"))
(modules '((guix build utils)))
(snippet
'(begin
;; Remove bundled boost, muparser, TBB and UMFPACK.
(delete-file-recursively "bundled")
#t))))
;; Remove bundled boost, muparser, TBB and UMFPACK.
'(delete-file-recursively "bundled"))))
(build-system cmake-build-system)
(outputs '("out" "doc"))
(native-inputs
;; Required to build the documentation.
(list graphviz doxygen perl))
(list graphviz doxygen perl))
(inputs
(list arpack-ng
openblas
gfortran
lapack
muparser
zlib))
(list arpack-ng
openblas
gfortran
lapack
muparser
zlib))
(propagated-inputs
;; Some scripts are installed into share/deal.II/scripts that require
;; perl and python, but they are not executable (and some are missing the
@ -5206,7 +5271,11 @@ A unique design feature of Trilinos is its focus on packages.")
;; Anyway, they are meant to be used at build time, so rather than adding
;; the interpreters here, any package depending on them should just add
;; the requisite interpreter to its native inputs.
(list boost hdf5 suitesparse ; For UMFPACK.
(list boost
hdf5
suitesparse ; For UMFPACK.
;; SUNDIALS 6.0.0 and later will be supported in deal.II 9.4.0.
sundials-5
tbb))
(arguments
`(#:build-type "DebugRelease" ; Supports only Debug, Release and DebugRelease.
@ -5234,8 +5303,7 @@ A unique design feature of Trilinos is its focus on packages.")
(let ((doc (string-append (assoc-ref outputs "doc")
"/share/doc/" ,name "-" ,version)))
(for-each delete-file (map (lambda (f) (string-append doc "/" f))
'("detailed.log" "summary.log"))))
#t)))))
'("detailed.log" "summary.log")))))))))
(home-page "https://www.dealii.org/")
(synopsis "Finite element library")
(description
@ -5250,18 +5318,21 @@ in finite element programs.")
(package/inherit dealii
(name "dealii-openmpi")
(inputs
`(("arpack" ,arpack-ng-openmpi)
("metis" ,metis)
("scalapack" ,scalapack)
,@(alist-delete "arpack" (package-inputs dealii))))
(modify-inputs (package-inputs dealii)
(delete "arpack")
(prepend arpack-ng-openmpi
metis
scalapack)))
(propagated-inputs
`(("hdf5" ,hdf5-parallel-openmpi)
("mpi" ,openmpi)
("p4est" ,p4est-openmpi)
("petsc" ,petsc-openmpi)
("slepc" ,slepc-openmpi)
("trilinos" ,trilinos-for-dealii-openmpi)
,@(alist-delete "hdf5" (package-propagated-inputs dealii))))
(modify-inputs (package-propagated-inputs dealii)
(delete "hdf5" "sundials")
(prepend hdf5-parallel-openmpi
openmpi
p4est-openmpi
petsc-openmpi
slepc-openmpi
sundials-openmpi-5
trilinos-for-dealii-openmpi)))
(arguments
(substitute-keyword-arguments (package-arguments dealii)
((#:configure-flags flags)
@ -6116,32 +6187,34 @@ and comparisons are supported.")
(define-public sundials
(package
(name "sundials")
(version "6.1.1")
(version "6.2.0")
(source
(origin
(method url-fetch)
(uri (string-append "https://github.com/LLNL/sundials/releases/download/v6.1.1/"
"sundials-" version ".tar.gz"))
(uri (string-append "https://github.com/LLNL/sundials/releases/download/v"
version "/sundials-" version ".tar.gz"))
(sha256
(base32
"0327a1fy8rilwc4brsqqb71jd1ymb7mqgxsylab06crcg5xn7byg"))))
"07gk9060xk3bzfqf8v4fqlp0rcxswiwlsy887zv87i1gfy9map8r"))))
(build-system cmake-build-system)
(native-inputs
(list python-2)) ;for tests; syntax incompatible with python 3
(list python-2)) ; For tests; syntax incompatible with Python 3.
(inputs
(list gfortran ;for fcmix
openblas petsc suitesparse)) ;TODO: Add hypre
(list openblas suitesparse))
(arguments
`(#:configure-flags `("-DCMAKE_C_FLAGS=-O2 -g -fcommon"
'(#:configure-flags `("-DCMAKE_C_FLAGS=-O2 -g -fcommon"
"-DSUNDIALS_INDEX_SIZE=32"
;; Incompatible with 32-bit indices.
;;"-DBUILD_FORTRAN_MODULE_INTERFACE:BOOL=ON"
"-DEXAMPLES_ENABLE_C:BOOL=ON"
"-DEXAMPLES_ENABLE_CXX:BOOL=ON"
"-DEXAMPLES_ENABLE_F77:BOOL=ON"
"-DEXAMPLES_ENABLE_F90:BOOL=ON"
;; Requires -DBUILD_FORTRAN_MODULE_INTERFACE:BOOL=ON.
;;"-DEXAMPLES_ENABLE_F2003:BOOL=ON"
"-DEXAMPLES_INSTALL:BOOL=OFF"
"-DFCMIX_ENABLE:BOOL=ON"
"-DKLU_ENABLE:BOOL=ON"
"-DENABLE_KLU:BOOL=ON"
,(string-append "-DKLU_INCLUDE_DIR="
(assoc-ref %build-inputs "suitesparse")
"/include")
@ -6159,22 +6232,56 @@ easily be incorporated into existing simulation codes.")
(license license:bsd-3)))
(define-public sundials-openmpi
(package
(inherit sundials)
(package/inherit sundials
(name "sundials-openmpi")
(inputs
(modify-inputs (package-inputs sundials)
(delete "petsc")
(prepend openmpi petsc-openmpi))) ;support in SUNDIALS requires MPI
(propagated-inputs
(list openmpi
;; Support for the below requires MPI.
hypre-openmpi
petsc-openmpi))
(arguments
(substitute-keyword-arguments (package-arguments sundials)
((#:configure-flags flags '())
`(cons* "-DENABLE_MPI:BOOL=ON" ,flags))
`(cons* "-DENABLE_MPI:BOOL=ON"
"-DENABLE_HYPRE:BOOL=ON"
(string-append "-DHYPRE_INCLUDE_DIR="
(assoc-ref %build-inputs "hypre-openmpi")
"/include")
(string-append "-DHYPRE_LIBRARY_DIR="
(assoc-ref %build-inputs "hypre-openmpi")
"/lib")
"-DENABLE_PETSC:BOOL=ON"
(string-append "-DPETSC_DIR="
(assoc-ref %build-inputs "petsc-openmpi"))
,flags))
((#:phases phases '%standard-phases)
`(modify-phases ,phases
(add-before 'check 'mpi-setup
,%openmpi-setup)))))
(synopsis "SUNDIALS with OpenMPI support")))
,%openmpi-setup)))))
(synopsis "SUNDIALS with MPI support")))
(define-public sundials-5
(package
(inherit sundials)
(name "sundials")
(version "5.8.0")
(source
(origin
(method url-fetch)
(uri (string-append "https://github.com/LLNL/sundials/releases/download/v"
version "/sundials-" version ".tar.gz"))
(sha256
(base32
"04x2x0jchf9kbcw2a1c6f4h4as8sr6k2snfz8z9k897pa4rl1vfl"))))))
(define-public sundials-openmpi-5
(package/inherit sundials-5
(name "sundials-openmpi")
(propagated-inputs
(package-propagated-inputs sundials-openmpi))
(arguments
(package-arguments sundials-openmpi))
(synopsis (package-synopsis sundials-openmpi))))
(define-public sundials-julia
(package
@ -6193,13 +6300,19 @@ easily be incorporated into existing simulation codes.")
"0nx4sqhmi126m14myzm7syv2053harav9snl0a247wnkcgs5rxrv"))))
(inputs
(modify-inputs (package-inputs sundials)
(prepend lapack)))
(prepend gfortran lapack)))
(arguments
(substitute-keyword-arguments (package-arguments sundials)
((#:configure-flags flags '())
`(cons* "-DLAPACK_ENABLE:BOOL=ON"
,flags))))
(synopsis "SUNDIALS with lapack support as required by julia-sundials-jll")))
'(#:configure-flags `("-DCMAKE_C_FLAGS=-O2 -g -fcommon"
"-DSUNDIALS_INDEX_SIZE=32"
"-DKLU_ENABLE:BOOL=ON"
,(string-append "-DKLU_INCLUDE_DIR="
(assoc-ref %build-inputs "suitesparse")
"/include")
,(string-append "-DKLU_LIBRARY_DIR="
(assoc-ref %build-inputs "suitesparse")
"/lib")
"-DLAPACK_ENABLE:BOOL=ON")))
(synopsis "SUNDIALS with LAPACK support as required by julia-sundials-jll")))
(define-public combinatorial-blas
(package

View file

@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2017, 2018, 2019, 2020, 2021 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2017, 2018, 2019, 2020, 2021, 2022 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2017, 2018 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2020, 2021, 2022 Ricardo Wurmus <rekado@elephly.net>
@ -167,14 +167,14 @@ parsers to allow execution with Guile as extension languages.")))
(define-public mes
(package
(name "mes")
(version "0.23")
(version "0.24")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnu/mes/"
"mes-" version ".tar.gz"))
(sha256
(base32
"0mnryfkl0dwbr5gxp16j5s95gw7z1vm1fqa1pxabp0aiar1hw53s"))))
"00lrpm4x5qg0l840zhbf9mr67mqhp8gljcl24j5dy0y109gf32w2"))))
(supported-systems '("armhf-linux" "i686-linux" "x86_64-linux"))
(propagated-inputs (list mescc-tools nyacc-1.00.2))
(native-inputs
@ -190,6 +190,7 @@ parsers to allow execution with Guile as extension languages.")))
(else
'())))
(list graphviz help2man
m2-planet
perl ;build-aux/gitlog-to-changelog
texinfo)))
(build-system gnu-build-system)
@ -219,7 +220,7 @@ Guile.")
(define-public mescc-tools
(package
(name "mescc-tools")
(version "1.2.0")
(version "1.4.0")
(source (origin
(method git-fetch)
(uri (git-reference
@ -229,11 +230,11 @@ Guile.")
(file-name (git-file-name name version))
(sha256
(base32
"1xkn5sspfxldy4wm8fq8gd8kwn46578zhfl12c16pq74x21zb198"))))
"0z2ni2qn2np1walcaqlxz8sinzb78d4hiq9glddzf26wxc226hs4"))))
(build-system gnu-build-system)
(supported-systems '("i686-linux" "x86_64-linux"
"armhf-linux" "aarch64-linux"
"powerpc64le-linux"))
"riscv32-linux" "riscv64-linux"))
(arguments
`(#:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out")))
#:test-target "test"
@ -252,7 +253,7 @@ get_machine.")
(define-public m2-planet
(package
(name "m2-planet")
(version "1.8.0")
(version "1.9.0")
(source (origin
(method git-fetch)
(uri (git-reference
@ -262,7 +263,7 @@ get_machine.")
(file-name (git-file-name name version))
(sha256
(base32
"0525fhijrjljgaabmgsjy8yk2pmh5zf8lwa44wpvkjc18knl7nza"))))
"0cgvvq91cbxxm93k8ayyvhpaf3c2lv10qw4wyqwn3hc1qb1cfyvr"))))
(native-inputs (list mescc-tools))
(build-system gnu-build-system)
(arguments

View file

@ -59,14 +59,14 @@ ncurses installed.")
(package
(inherit ncdu)
(name "ncdu2") ; To destinguish it from the C based version.
(version "2.1.1")
(version "2.1.2")
(source (origin
(method url-fetch)
(uri (string-append "https://dev.yorhel.nl/download/ncdu-"
version ".tar.gz"))
(sha256
(base32
"1va85adf1cd5xn2xh107zmr12q69i4p2m5s62chvch0dlm63ghnn"))))
"1p66691xgpljx1y92b4bfpn5rr7gnwbr5x3bf8bc78qq6vq6w3cy"))))
(arguments
(list
#:make-flags

File diff suppressed because it is too large Load diff

View file

@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2013-2022 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2015, 2017, 2020, 2021, 2022 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2017 Muriithi Frederick Muriuki <fredmanglis@gmail.com>
;;; Copyright © 2017, 2018 Oleg Pykhalov <go.wigust@gmail.com>
@ -111,6 +111,7 @@
#:use-module (gnu packages version-control)
#:use-module (guix build-system glib-or-gtk)
#:use-module (guix build-system gnu)
#:use-module (guix build-system guile)
#:use-module (guix build-system meson)
#:use-module (guix build-system python)
#:use-module (guix build-system trivial)
@ -156,8 +157,8 @@
;; Note: the 'update-guix-package.scm' script expects this definition to
;; start precisely like this.
(let ((version "1.3.0")
(commit "2fb4304ee7eb7d17d48bee345677ef1f288a0b86")
(revision 24))
(commit "c1719a0adf3fa7611b56ca4d75b3ac8cf5c9c8ac")
(revision 25))
(package
(name "guix")
@ -173,7 +174,7 @@
(commit commit)))
(sha256
(base32
"0pwizj76n9wpzcb4a631gj8yfxfpzq11p5kmmvmv6j4cqhn61dr0"))
"0yaphn5shvmxffi4qw66bpvl3q8gn5n168v61x9c2m3vksjygmrn"))
(file-name (string-append "guix-" version "-checkout"))))
(build-system gnu-build-system)
(arguments
@ -660,6 +661,50 @@ out) and returning a package that uses that as its 'source'."
the Icon Theme Specification. They can be used by applications querying the
GTK icon cache for instance.")))
(define-public guix-modules
(package
(name "guix-modules")
(version "0.1.0")
(home-page "https://gitlab.inria.fr/guix-hpc/guix-modules")
(source (origin
(method git-fetch)
(uri (git-reference (url home-page)
(commit (string-append "v" version))))
(file-name (string-append "guix-modules-" version "-checkout"))
(sha256
(base32
"1ckvrrmkgzz93i35sj1372wxs7ln4gzszpri1pcdf473z0p7nh7w"))))
(build-system guile-build-system)
(arguments
'(#:phases (modify-phases %standard-phases
(add-after 'install 'move-to-extension-directory
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(target (string-append
out
"/share/guix/extensions/module.scm")))
(mkdir-p (dirname target))
(rename-file (car (find-files out "module.scm"))
target)))))))
(native-inputs (list (lookup-package-input guix "guile") guix))
(synopsis "Generate environment modules from Guix packages")
(description
"Guix-Modules is an extension of Guix that provides a new @command{guix
module} command. The @command{guix module create} sub-command creates
@dfn{environment modules}, allowing you to manipulate software environments
with the @command{module} command commonly found on @acronym{HPC,
high-performance computing} clusters.
To use this extension, set the @env{GUIX_EXTENSIONS_PATH} environment
variable, along these lines:
@example
export GUIX_EXTENSIONS_PATH=\"$HOME/.guix-profile/share/guix/extensions\"
@end example
Replace @code{$HOME/.guix-profile} with the appropriate profile.")
(license license:gpl3+)))
;;;
;;; Other tools.
@ -1575,8 +1620,8 @@ in an isolated environment, in separate namespaces.")
(license license:gpl3+)))
(define-public nar-herder
(let ((commit "e046f8a756aa24942f512b352e87dfe78fa89470")
(revision "5"))
(let ((commit "ea997c68515540e34bda267730b9c7c6f21ff6b4")
(revision "6"))
(package
(name "nar-herder")
(version (git-version "0" revision commit))
@ -1587,7 +1632,7 @@ in an isolated environment, in separate namespaces.")
(commit commit)))
(sha256
(base32
"0hbc24y08znlq28k1anzqkq7n1khmv31h4qd8syd2q7ax5kx8hqa"))
"11clylk3aizwy0b5sx4xnwj62bzv20ysb5cjcjsx184f1g8lgbw6"))
(file-name (string-append name "-" version "-checkout"))))
(build-system gnu-build-system)
(arguments
@ -1798,103 +1843,106 @@ the boot loader configuration.")
(define-public flatpak
(package
(name "flatpak")
(version "1.12.7")
(source
(origin
(method url-fetch)
(uri (string-append "https://github.com/flatpak/flatpak/releases/download/"
version "/flatpak-" version ".tar.xz"))
(sha256
(base32 "05lkpbjiwp69q924i1jfyk5frcqbdbv9kyzbqwm2hy723i9jmdbd"))
(patches (search-patches "flatpak-fix-path.patch"))))
(name "flatpak")
(version "1.12.7")
(source
(origin
(method url-fetch)
(uri (string-append "https://github.com/flatpak/flatpak/releases/download/"
version "/flatpak-" version ".tar.xz"))
(sha256
(base32 "05lkpbjiwp69q924i1jfyk5frcqbdbv9kyzbqwm2hy723i9jmdbd"))
(patches
(search-patches "flatpak-fix-path.patch"
"flatpak-unset-gdk-pixbuf-for-sandbox.patch"))))
;; Wrap 'flatpak' so that GIO_EXTRA_MODULES is set, thereby allowing GIO to
;; find the TLS backend in glib-networking.
(build-system glib-or-gtk-build-system)
;; Wrap 'flatpak' so that GIO_EXTRA_MODULES is set, thereby allowing GIO to
;; find the TLS backend in glib-networking.
(build-system glib-or-gtk-build-system)
(arguments
'(#:configure-flags
(list
"--enable-documentation=no" ;; FIXME
"--enable-system-helper=no"
"--localstatedir=/var"
(string-append "--with-system-bubblewrap="
(assoc-ref %build-inputs "bubblewrap")
"/bin/bwrap")
(string-append "--with-system-dbus-proxy="
(assoc-ref %build-inputs "xdg-dbus-proxy")
"/bin/xdg-dbus-proxy"))
(arguments
(list
#:configure-flags
#~(list
"--enable-documentation=no" ;; FIXME
"--enable-system-helper=no"
"--localstatedir=/var"
(string-append "--with-system-bubblewrap="
(assoc-ref %build-inputs "bubblewrap")
"/bin/bwrap")
(string-append "--with-system-dbus-proxy="
(assoc-ref %build-inputs "xdg-dbus-proxy")
"/bin/xdg-dbus-proxy"))
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'fix-tests
(lambda* (#:key inputs #:allow-other-keys)
(copy-recursively
(search-input-directory inputs "lib/locale")
"/tmp/locale")
(for-each make-file-writable (find-files "/tmp"))
(substitute* "tests/make-test-runtime.sh"
(("cp `which.*") "echo guix\n")
(("cp -r /usr/lib/locale/C\\.\\*")
(string-append "mkdir ${DIR}/usr/lib/locale/en_US; \
#~(modify-phases %standard-phases
(add-after 'unpack 'fix-tests
(lambda* (#:key inputs #:allow-other-keys)
(copy-recursively
(search-input-directory inputs "lib/locale")
"/tmp/locale")
(for-each make-file-writable (find-files "/tmp"))
(substitute* "tests/make-test-runtime.sh"
(("cp `which.*") "echo guix\n")
(("cp -r /usr/lib/locale/C\\.\\*")
(string-append "mkdir ${DIR}/usr/lib/locale/en_US; \
cp -r /tmp/locale/*/en_US.*")))
(substitute* "tests/libtest.sh"
(("/bin/kill") (which "kill"))
(("/usr/bin/python3") (which "python3")))
#t))
(add-after 'unpack 'p11-kit-fix
(lambda* (#:key inputs #:allow-other-keys)
(let ((p11-path (search-input-file inputs "/bin/p11-kit")))
(substitute* "session-helper/flatpak-session-helper.c"
(("\"p11-kit\",")
(string-append "\"" p11-path "\","))
(("if \\(g_find_program_in_path \\(\"p11-kit\"\\)\\)")
(string-append "if (g_find_program_in_path (\""
p11-path "\"))"))))))
;; Many tests fail for unknown reasons, so we just run a few basic
;; tests.
(replace 'check
(lambda _
(setenv "HOME" "/tmp")
(invoke "make" "check"
"TESTS=tests/test-basic.sh tests/test-config.sh testcommon"))))))
(native-inputs
(list bison
dbus ; for dbus-daemon
gettext-minimal
`(,glib "bin") ; for glib-mkenums + gdbus-codegen
glibc-utf8-locales
gobject-introspection
libcap
pkg-config
python
python-pyparsing
socat
which))
(inputs
(list appstream-glib
bubblewrap
dconf
fuse
gdk-pixbuf
gpgme
json-glib
libarchive
libostree
libseccomp
libsoup-minimal-2
libxau
libxml2
p11-kit-next
util-linux
xdg-dbus-proxy))
(propagated-inputs (list glib-networking gnupg gsettings-desktop-schemas))
(home-page "https://flatpak.org")
(synopsis "System for building, distributing, and running sandboxed desktop
(substitute* "tests/libtest.sh"
(("/bin/kill") (which "kill"))
(("/usr/bin/python3") (which "python3")))
#t))
(add-after 'unpack 'p11-kit-fix
(lambda* (#:key inputs #:allow-other-keys)
(let ((p11-path (search-input-file inputs "/bin/p11-kit")))
(substitute* "session-helper/flatpak-session-helper.c"
(("\"p11-kit\",")
(string-append "\"" p11-path "\","))
(("if \\(g_find_program_in_path \\(\"p11-kit\"\\)\\)")
(string-append "if (g_find_program_in_path (\""
p11-path "\"))"))))))
;; Many tests fail for unknown reasons, so we just run a few basic
;; tests.
(replace 'check
(lambda _
(setenv "HOME" "/tmp")
(invoke "make" "check"
"TESTS=tests/test-basic.sh tests/test-config.sh testcommon"))))))
(native-inputs
(list bison
dbus ; for dbus-daemon
gettext-minimal
`(,glib "bin") ; for glib-mkenums + gdbus-codegen
glibc-utf8-locales
gobject-introspection
libcap
pkg-config
python
python-pyparsing
socat
which))
(inputs
(list appstream-glib
bubblewrap
dconf
fuse
gdk-pixbuf
gpgme
json-glib
libarchive
libostree
libseccomp
libsoup-minimal-2
libxau
libxml2
p11-kit-next
util-linux
xdg-dbus-proxy))
(propagated-inputs (list glib-networking gnupg gsettings-desktop-schemas))
(home-page "https://flatpak.org")
(synopsis "System for building, distributing, and running sandboxed desktop
applications")
(description "Flatpak is a system for building, distributing, and running
(description "Flatpak is a system for building, distributing, and running
sandboxed desktop applications on GNU/Linux.")
(license license:lgpl2.1+)))
(license license:lgpl2.1+)))
(define-public akku
(package

View file

@ -166,7 +166,7 @@ when jobs finish.")
(define-public slurm
(package
(name "slurm")
(version "20.11.7")
(version "21.08.8")
(source (origin
(method url-fetch)
(uri (string-append
@ -174,7 +174,7 @@ when jobs finish.")
version ".tar.bz2"))
(sha256
(base32
"1fdjihg1x7ks5l77yjv14a4mg6r0v8c3zk1dcxkhrhq3n4dc9nbs"))
"1sjln54idc9rhg8f2nvm38sgs6fncncyzslas8ixy65pqz2hphbf"))
(modules '((guix build utils)))
(snippet
'(begin
@ -213,7 +213,8 @@ when jobs finish.")
#~(list "--enable-pam" "--sysconfdir=/etc/slurm"
"--disable-static"
(string-append "--with-freeipmi=" #$(this-package-input "freeipmi"))
(string-append "--with-hwloc=" #$(this-package-input "hwloc"))
(string-append "--with-hwloc="
(ungexp (this-package-input "hwloc") "lib"))
(string-append "--with-json=" #$(this-package-input "json-c"))
(string-append "--with-munge=" #$(this-package-input "munge"))
@ -261,6 +262,20 @@ by managing a queue of pending work.")
;; As noted in the link, YY.MM is the release scheme, and the 'maintenance'
;; digit does not introduce incompatibilities.
(define-public slurm-20.11
(package
(inherit slurm)
(version "20.11.9")
(source (origin
(inherit (package-source slurm))
(method url-fetch)
(uri (string-append
"https://download.schedmd.com/slurm/slurm-"
version ".tar.bz2"))
(sha256
(base32
"0xq2d6dm285y541dyg1h66z7svsisrq8c81ag0f601xz1cn3mq9m"))))))
(define-public slurm-20.02
(package
(inherit slurm)

View file

@ -1,40 +0,0 @@
From cbef761731627cece2a6f0276b87dacabbdc8a72 Mon Sep 17 00:00:00 2001
From: David Wells <drwells@email.unc.edu>
Date: Tue, 4 Jan 2022 12:46:30 -0500
Subject: [PATCH] Fix compilation with boost 1.78.
I bisected (fortunately Boost.Geometry a header-only library so adding the
include directory sufficed) and
https://github.com/boostorg/geometry/commit/6eb9e238bcb37e26dc31d16acf826784a2ba30f4
is where this problem starts for us. See also
https://github.com/boostorg/geometry/issues/792 - the easiest fix for all such
issues is to just include the project header `boost/geometry/geometry.hpp`.
In this particular case, if you look at the commit which causes grid_tools.cc
fails to compile, its because we were relying on some implicit includes. In
particular, we need the distance header to find the distance between points and
boxes, but that was previously included in another file.
This patch has been adapted from
e0e76835519d122fd12b5858e16d08641a641c6a to apply to dealii 9.3.2.
See https://github.com/dealii/dealii/pull/13165.
---
include/deal.II/numerics/rtree.h | 1 +
1 file changed, 1 insertion(+)
diff --git a/include/deal.II/numerics/rtree.h b/include/deal.II/numerics/rtree.h
index 1b9d04dacd..1e1bfd2932 100644
--- a/include/deal.II/numerics/rtree.h
+++ b/include/deal.II/numerics/rtree.h
@@ -26,6 +26,7 @@
#include <deal.II/boost_adaptors/segment.h>
DEAL_II_DISABLE_EXTRA_DIAGNOSTICS
+#include <boost/geometry/algorithms/distance.hpp>
#include <boost/geometry/index/rtree.hpp>
#include <boost/geometry/strategies/strategies.hpp>
DEAL_II_ENABLE_EXTRA_DIAGNOSTICS
--
2.30.2

View file

@ -1,60 +0,0 @@
From af73f368f7f9d4a00df075d1a9f50fc495f8e87a Mon Sep 17 00:00:00 2001
From: Timo Heister <timo.heister@gmail.com>
Date: Sat, 25 Dec 2021 12:30:45 -0500
Subject: [PATCH] fix sundials compilation
---
include/deal.II/sundials/n_vector.templates.h | 11 ++++++-----
1 file changed, 6 insertions(+), 5 deletions(-)
diff --git a/include/deal.II/sundials/n_vector.templates.h b/include/deal.II/sundials/n_vector.templates.h
index 2b49e3efc9..746f63a03b 100644
--- a/include/deal.II/sundials/n_vector.templates.h
+++ b/include/deal.II/sundials/n_vector.templates.h
@@ -253,13 +253,13 @@ namespace SUNDIALS
template <
typename VectorType,
typename std::enable_if_t<!IsBlockVector<VectorType>::value, int> = 0>
- MPI_Comm
+ const MPI_Comm &
get_communicator(N_Vector v);
template <
typename VectorType,
typename std::enable_if_t<IsBlockVector<VectorType>::value, int> = 0>
- MPI_Comm
+ const MPI_Comm &
get_communicator(N_Vector v);
/**
@@ -481,7 +481,7 @@ SUNDIALS::internal::NVectorOperations::destroy(N_Vector v)
template <typename VectorType,
std::enable_if_t<IsBlockVector<VectorType>::value, int>>
-MPI_Comm
+const MPI_Comm &
SUNDIALS::internal::NVectorOperations::get_communicator(N_Vector v)
{
return unwrap_nvector_const<VectorType>(v)->block(0).get_mpi_communicator();
@@ -491,7 +491,7 @@ SUNDIALS::internal::NVectorOperations::get_communicator(N_Vector v)
template <typename VectorType,
std::enable_if_t<!IsBlockVector<VectorType>::value, int>>
-MPI_Comm
+const MPI_Comm &
SUNDIALS::internal::NVectorOperations::get_communicator(N_Vector v)
{
return unwrap_nvector_const<VectorType>(v)->get_mpi_communicator();
@@ -519,7 +519,8 @@ SUNDIALS::internal::NVectorOperations::get_communicator_as_void_ptr(N_Vector v)
(void)v;
return nullptr;
# else
- return get_communicator<VectorType>(v);
+ // We need to cast away const here, as SUNDIALS demands a pure `void *`.
+ return &(const_cast<MPI_Comm &>(get_communicator<VectorType>(v)));
# endif
}
--
2.30.2

View file

@ -0,0 +1,27 @@
From 820ad7eb2e919e3f880bec22bd4f737fa55c4d22 Mon Sep 17 00:00:00 2001
From: Niklas Eklund <niklas.eklund@posteo.net>
Date: Thu, 5 May 2022 12:43:49 +0200
Subject: [PATCH] Fix missing parens in git-email-mu4e.el
The incorrect number of parens in this file lead to Emacs failing to
parse the file.
---
git-email-mu4e.el | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/git-email-mu4e.el b/git-email-mu4e.el
index d5b8770..9220bf9 100644
--- a/git-email-mu4e.el
+++ b/git-email-mu4e.el
@@ -51,7 +51,7 @@ from Lisp, enable the mode if ARG is omitted or nil."
;; built in context feature.
(seq-filter (lambda (header)
(not (eq (car header) 'from)))
- headers)
+ headers))))
(setq git-email-compose-email-function 'message-mail)))
(provide 'git-email-mu4e)
--
2.34.0

View file

@ -0,0 +1,19 @@
Most Guix system setup with desktop evironment will install GDK_PIXBUF_MODULE_FILE
environment variable in the system profile, and it'll be leaked into the sandbox
environment of flatpak, so the applications in sandbox may fail to find correct
GdkPixbuf loaders.
This patch unset the GDK_PIXBUF_MODULE_FILE environment variable before running
the sandboxed applications, prevents it to load GdkPixbuf loaders from the path
of host system.
--- a/common/flatpak-run.c
+++ b/common/flatpak-run.c
@@ -1853,6 +1853,7 @@ static const ExportData default_exports[] = {
{"GST_PTP_HELPER", NULL},
{"GST_PTP_HELPER_1_0", NULL},
{"GST_INSTALL_PLUGINS_HELPER", NULL},
+ {"GDK_PIXBUF_MODULE_FILE", NULL},
};
static const ExportData no_ld_so_cache_exports[] = {

View file

@ -0,0 +1,34 @@
From 18a08fb7f0443f8bde83393bd6f69e23a04246b3 Mon Sep 17 00:00:00 2001
From: Pablo Neira Ayuso <pablo@netfilter.org>
Date: Tue, 22 Feb 2022 00:56:36 +0100
Subject: examples: compile with `make check' and add AM_CPPFLAGS
Compile examples via `make check' like libnftnl does. Use AM_CPPFLAGS to
specify local headers via -I.
Unfortunately, `make distcheck' did not catch this compile time error in
my system, since it was using the nftables/libnftables.h file of the
previous nftables release.
Fixes: 5b364657a35f ("build: missing SUBIRS update")
Fixes: caf2a6ad2d22 ("examples: add libnftables example program")
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
---
examples/Makefile.am | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/examples/Makefile.am b/examples/Makefile.am
index c972170d..3b8b0b67 100644
--- a/examples/Makefile.am
+++ b/examples/Makefile.am
@@ -1,4 +1,6 @@
-noinst_PROGRAMS = nft-buffer \
+check_PROGRAMS = nft-buffer \
nft-json-file
+AM_CPPFLAGS = -I$(top_srcdir)/include
+
LDADD = $(top_builddir)/src/libnftables.la
--
cgit v1.2.3

View file

@ -0,0 +1,40 @@
From 0d85bbd42ddcd442864a9ba4719aca8b70d68048 Mon Sep 17 00:00:00 2001
From: Alexey Abramov <levenson@mmer.org>
Date: Fri, 22 Apr 2022 11:32:15 +0200
Subject: [PATCH] Trust guix store directory
To be able to execute binaries defined in OpenSSH configuration, we
need to tell OpenSSH that we can trust Guix store objects. safe_path
procedure takes a canonical path and for each component, walking
upwards, checks ownership and permissions constrains which are: must
be owned by root, not writable by group or others.
---
misc.c | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/misc.c b/misc.c
index 0134d69..7131d5e 100644
--- a/misc.c
+++ b/misc.c
@@ -2146,6 +2146,7 @@ int
safe_path(const char *name, struct stat *stp, const char *pw_dir,
uid_t uid, char *err, size_t errlen)
{
+ static const char guix_store[] = @STORE_DIRECTORY@;
char buf[PATH_MAX], homedir[PATH_MAX];
char *cp;
int comparehome = 0;
@@ -2178,6 +2179,10 @@ safe_path(const char *name, struct stat *stp, const char *pw_dir,
}
strlcpy(buf, cp, sizeof(buf));
+ /* If we are past the Guix store then we can stop */
+ if (strcmp(guix_store, buf) == 0)
+ break;
+
if (stat(buf, &st) == -1 ||
(!platform_sys_dir_uid(st.st_uid) && st.st_uid != uid) ||
(st.st_mode & 022) != 0) {
--
2.34.0

View file

@ -1,36 +0,0 @@
This patch fixes sandboxing on i686 by allowing 'statx'. Without this,
'src/test/test_include.sh' would fail.
Patch adapted from:
https://gitlab.torproject.org/tpo/core/tor/-/merge_requests/480
From 001d880d1082f5d124e10554e2718e407c7e88c6 Mon Sep 17 00:00:00 2001
From: Simon South <simon@simonsouth.net>
Date: Fri, 5 Nov 2021 10:10:10 -0400
Subject: [PATCH] sandbox: Allow "statx" syscall on i386 for glibc 2.33
glibc versions 2.33 and newer use the modern "statx" system call in their
implementations of stat() and opendir() for Linux on i386. Prevent failures in
the sandbox unit tests by modifying the sandbox to allow this system call
without restriction on i386 when it is available, and update the test suite to
skip the "sandbox/stat_filename" test in this case as it is certain to fail.
---
src/lib/sandbox/sandbox.c | 3 +++
src/test/test_sandbox.c | 7 ++++---
2 files changed, 7 insertions(+), 3 deletions(-)
diff --git a/src/lib/sandbox/sandbox.c b/src/lib/sandbox/sandbox.c
index fb02a345ab..a15f99ad76 100644
--- a/src/lib/sandbox/sandbox.c
+++ b/src/lib/sandbox/sandbox.c
@@ -252,6 +252,9 @@ static int filter_nopar_gen[] = {
SCMP_SYS(sigreturn),
#endif
SCMP_SYS(stat),
+#if defined(__i386__) && defined(__NR_statx)
+ SCMP_SYS(statx),
+#endif
SCMP_SYS(uname),
SCMP_SYS(wait4),
SCMP_SYS(write),

View file

@ -6,8 +6,8 @@ https://salsa.debian.org/chromium-team/chromium/-/blob/master/debian/patches/sys
diff --git a/base/BUILD.gn b/base/BUILD.gn
--- a/base/BUILD.gn
+++ b/base/BUILD.gn
@@ -141,6 +141,12 @@ config("perfetto_config") {
}
@@ -184,6 +184,12 @@ buildflag_header("ios_cronet_buildflags") {
flags = [ "CRONET_BUILD=$is_cronet_build" ]
}
+if (is_linux) {
@ -19,7 +19,7 @@ diff --git a/base/BUILD.gn b/base/BUILD.gn
# Base and everything it depends on should be a static library rather than
# a source set. Base is more of a "library" in the classic sense in that many
# small parts of it are used in many different contexts. This combined with a
@@ -759,8 +765,6 @@ component("base") {
@@ -838,8 +844,6 @@ mixed_component("base") {
"third_party/cityhash_v103/src/city_v103.cc",
"third_party/cityhash_v103/src/city_v103.h",
"third_party/icu/icu_utf.h",
@ -31,10 +31,10 @@ diff --git a/base/BUILD.gn b/base/BUILD.gn
diff --git a/base/time/pr_time_unittest.cc b/base/time/pr_time_unittest.cc
--- a/base/time/pr_time_unittest.cc
+++ b/base/time/pr_time_unittest.cc
@@ -7,7 +7,7 @@
@@ -6,7 +6,7 @@
#include <time.h>
#include "base/compiler_specific.h"
#include "base/cxx17_backports.h"
-#include "base/third_party/nspr/prtime.h"
+#include <nspr/prtime.h>
#include "base/time/time.h"
@ -43,7 +43,7 @@ diff --git a/base/time/pr_time_unittest.cc b/base/time/pr_time_unittest.cc
diff --git a/base/time/time.cc b/base/time/time.cc
--- a/base/time/time.cc
+++ b/base/time/time.cc
@@ -18,7 +18,7 @@
@@ -21,7 +21,7 @@
#include <utility>
#include "base/strings/stringprintf.h"

View file

@ -0,0 +1,100 @@
From a7f17b57a94e9cde6d7fa96ac86be5c4fc4f9211 Mon Sep 17 00:00:00 2001
From: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
Date: Sun, 24 Apr 2022 22:20:50 +0200
Subject: [PATCH] valgrind: fix default debuginfo path
Description: Workaround for missing symbol in Guix's ld.so. The
correct fix (not stripping all the ld.so symbols) will be done in the
next Guix release as it requires to recompile a lot of packages.
Forwarded: not-needed
Bug-Guix: https://issues.guix.gnu.org/54728
Author: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
---
coregrind/m_debuginfo/readelf.c | 11 ++++++-----
docs/xml/manual-core-adv.xml | 4 ++--
docs/xml/manual-core.xml | 2 +-
3 files changed, 9 insertions(+), 8 deletions(-)
diff --git a/coregrind/m_debuginfo/readelf.c b/coregrind/m_debuginfo/readelf.c
index c586e3f33..947fcc500 100644
--- a/coregrind/m_debuginfo/readelf.c
+++ b/coregrind/m_debuginfo/readelf.c
@@ -1509,9 +1509,9 @@ DiImage* find_debug_file( struct _DebugInfo* di,
if (buildid != NULL) {
debugpath = ML_(dinfo_zalloc)("di.fdf.1",
- VG_(strlen)(buildid) + 33);
+ VG_(strlen)(buildid) + DEBUGPATH_EXTRA_BYTES_1);
- VG_(sprintf)(debugpath, "/usr/lib/debug/.build-id/%c%c/%s.debug",
+ VG_(sprintf)(debugpath, "DEFAULT_DEBUGINFO_PATH/.build-id/%c%c/%s.debug",
buildid[0], buildid[1], buildid + 2);
dimg = open_debug_file(debugpath, buildid, 0, rel_ok, NULL);
@@ -1536,7 +1536,8 @@ DiImage* find_debug_file( struct _DebugInfo* di,
debugpath = ML_(dinfo_zalloc)(
"di.fdf.3",
- VG_(strlen)(objdir) + VG_(strlen)(debugname) + 64
+ VG_(strlen)(objdir) + VG_(strlen)(debugname)
+ + VG_(strlen)("DEFAULT_DEBUGINFO_PATH/") + 1
+ (extrapath ? VG_(strlen)(extrapath) : 0)
+ (serverpath ? VG_(strlen)(serverpath) : 0));
@@ -1561,7 +1562,7 @@ DiImage* find_debug_file( struct _DebugInfo* di,
TRY_OBJDIR_USRMERGE_OBJDIR("%s/%s");
TRY_OBJDIR_USRMERGE_OBJDIR("%s/.debug/%s");
- TRY_OBJDIR_USRMERGE_OBJDIR("/usr/lib/debug%s/%s");
+ TRY_OBJDIR_USRMERGE_OBJDIR("DEFAULT_DEBUGINFO_PATH%s/%s");
if (extrapath) {
TRY_OBJDIR("%s%s/%s", extrapath, objdir, debugname);
@@ -1631,7 +1632,7 @@ DiImage* find_debug_file_ad_hoc( const DebugInfo* di,
debugpath = ML_(dinfo_zalloc)(
"di.fdfah.3",
- VG_(strlen)(objdir) + 64
+ VG_(strlen)(objdir) + DEBUGPATH_EXTRA_BYTES_2
+ (extrapath ? VG_(strlen)(extrapath) : 0)
+ (serverpath ? VG_(strlen)(serverpath) : 0));
diff --git a/docs/xml/manual-core-adv.xml b/docs/xml/manual-core-adv.xml
index 1fa801edc..a7c01d5e6 100644
--- a/docs/xml/manual-core-adv.xml
+++ b/docs/xml/manual-core-adv.xml
@@ -447,7 +447,7 @@ Valgrind embedded gdbserver:</para>
Remote debugging using | vgdb
relaying data between gdb and process 2418
Reading symbols from /lib/ld-linux.so.2...done.
-Reading symbols from /usr/lib/debug/lib/ld-2.11.2.so.debug...done.
+Reading symbols from DEFAULT_DEBUGINFO_PATH/lib/ld-2.11.2.so.debug...done.
Loaded symbols for /lib/ld-linux.so.2
[Switching to Thread 2418]
0x001f2850 in _start () from /lib/ld-linux.so.2
@@ -475,7 +475,7 @@ Remote communication error: Resource temporarily unavailable.
Remote debugging using | vgdb --pid=2479
relaying data between gdb and process 2479
Reading symbols from /lib/ld-linux.so.2...done.
-Reading symbols from /usr/lib/debug/lib/ld-2.11.2.so.debug...done.
+Reading symbols from DEFAULT_DEBUGINFO_PATH/lib/ld-2.11.2.so.debug...done.
Loaded symbols for /lib/ld-linux.so.2
[Switching to Thread 2479]
0x001f2850 in _start () from /lib/ld-linux.so.2
diff --git a/docs/xml/manual-core.xml b/docs/xml/manual-core.xml
index dc33e1269..f6eb60086 100644
--- a/docs/xml/manual-core.xml
+++ b/docs/xml/manual-core.xml
@@ -1409,7 +1409,7 @@ that can report errors, e.g. Memcheck, but not Cachegrind.</para>
<listitem>
<para>By default Valgrind searches in several well-known paths
for debug objects, such
- as <computeroutput>/usr/lib/debug/</computeroutput>.</para>
+ as <computeroutput>DEFAULT_DEBUGINFO_PATH/</computeroutput>.</para>
<para>However, there may be scenarios where you may wish to put
debug objects at an arbitrary location, such as external storage
--
2.35.1

View file

@ -1,643 +0,0 @@
From 3f1eaf5a1645b28ca18cfa028417dc225b7a557f Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <rg@raghavgururajan.name>
Date: Mon, 5 Jul 2021 06:45:49 -0400
Subject: [PATCH] Modify the strings of referenced programs.
Pattern the strings of referenced programs, so that they can be easily
substituted with absolute paths using a custom-phase.
Co-authored-by: jgart <jgart@dismail.de>
---
ytfzf | 198 +++++++++++++++++++++++++++++-----------------------------
1 file changed, 99 insertions(+), 99 deletions(-)
diff --git a/ytfzf b/ytfzf
index f4d2e0d..e8bb60b 100755
--- a/ytfzf
+++ b/ytfzf
@@ -49,17 +49,17 @@ cache_dir=${YTFZF_CACHE-${cache_dir-$HOME/.cache/ytfzf}}
#video type preference (mp4/1080p, mp4/720p, etc..)
video_pref=${YTFZF_PREF-${video_pref-}}
#the menu to use instead of fzf when -D is specified
-external_menu=${YTFZF_EXTMENU-${external_menu-dmenu -i -l 30 -p Search:}}
+external_menu=${YTFZF_EXTMENU-${external_menu-@dmenu@ -i -l 30 -p Search:}}
#number of columns (characters on a line) the external menu can have
#necessary for formatting text for external menus
external_menu_len=${YTFZF_EXTMENU_LEN-${external_menu_len-220}}
#player settings (players need to support streaming with youtube-dl)
#player to use for watching the video
-video_player=${YTFZF_PLAYER-${video_player-mpv}}
+video_player=${YTFZF_PLAYER-${video_player-@mpv@}}
#if YTFZF_PREF is specified, use this player instead
-video_player_format=${YTFZF_PLAYER_FORMAT-${video_player_format-mpv --ytdl-format=}}
+video_player_format=${YTFZF_PLAYER_FORMAT-${video_player_format-@mpv@ --ytdl-format=}}
#player to use for audio only
-audio_player=${YTFZF_AUDIO_PLAYER-${audio_player-mpv --no-video}}
+audio_player=${YTFZF_AUDIO_PLAYER-${audio_player-@mpv@ --no-video}}
#the command to use for displaying thumbnails
thumb_disp_method=${YTFZF_THUMB_DISP_METHOD-${thumb_disp_method-ueberzug}}
#Storing the argument and location for autogenerated subtitles
@@ -85,8 +85,8 @@ subscriptions_file=${subscriptions_file-$config_dir/subscriptions}
#> stores the pid of running ytfzf sessions
pid_file="$cache_dir/.pid"
#> make folders that don't exist
-[ -d "$cache_dir" ] || mkdir -p "$cache_dir"
-[ -d "$thumb_dir" ] || mkdir -p "$thumb_dir"
+[ -d "$cache_dir" ] || @mkdir@ -p "$cache_dir"
+[ -d "$thumb_dir" ] || @mkdir@ -p "$thumb_dir"
#> config settings
#list of shortcuts to use in fzf
@@ -177,12 +177,12 @@ dep_ck () {
done
unset Dep
}
-dep_ck "jq" "youtube-dl" "curl"
+dep_ck "@jq@" "@youtube-dl@" "@curl@"
#only check for mpv if $YTFZF_PLAYER is set to it
#don't check $YTFZF_PLAYER as it could be multiple commands
-[ "$video_player" = "mpv" ] && dep_ck "mpv"
+[ "$video_player" = "@mpv@" ] && dep_ck "@mpv@"
############################
# Help Texts #
@@ -326,8 +326,8 @@ print_info () {
}
print_error () {
- [ $ext_menu_notifs -eq 1 ] && notify-send "error" "$*" || printf "\033[31m$*\033[0m" >&2
- [ $ext_menu_notifs -eq 1 ] && notify-send "Check for new versions and report at: https://github.com/pystardust/ytfzf\n" || printf "Check for new versions and report at: https://github.com/pystardust/ytfzf\n" >&2
+ [ $ext_menu_notifs -eq 1 ] && @notify-send@ "error" "$*" || printf "\033[31m$*\033[0m" >&2
+ [ $ext_menu_notifs -eq 1 ] && @notify-send@ "Check for new versions and report at: https://github.com/pystardust/ytfzf\n" || printf "Check for new versions and report at: https://github.com/pystardust/ytfzf\n" >&2
}
############################
@@ -398,12 +398,12 @@ format_fzf () {
format_menu () {
if [ "$is_ext_menu" -eq 0 ]; then
#dep_ck fzf here because it is only necessary to use here
- dep_ck "fzf"
- menu_command='column -t -s "$tab_space" | fzf -m --bind change:top --tabstop=1 --layout=reverse --delimiter="$tab_space" --nth=1,2 --expect="$shortcuts" $FZF_DEFAULT_OPTS'
+ dep_ck "@fzf@"
+ menu_command='@column@ -t -s "$tab_space" | @fzf@ -m --bind change:top --tabstop=1 --layout=reverse --delimiter="$tab_space" --nth=1,2 --expect="$shortcuts" $FZF_DEFAULT_OPTS'
format_fzf
else
# Dmenu doesn't render tabs so removing it
- menu_command='tr -d "$tab_space" | '"$external_menu"
+ menu_command='@tr@ -d "$tab_space" | '"$external_menu"
format_ext_menu
fi
}
@@ -461,13 +461,13 @@ ID="ytfzf-ueberzug"
WIDTH=$FZF_PREVIEW_COLUMNS
HEIGHT=$FZF_PREVIEW_LINES
start_ueberzug () {
- [ -e $FIFO ] || { mkfifo "$FIFO" || exit 1 ; }
- ueberzug layer --parser json --silent < "$FIFO" &
+ [ -e $FIFO ] || { @mkfifo@ "$FIFO" || exit 1 ; }
+ @ueberzug@ layer --parser json --silent < "$FIFO" &
exec 3>"$FIFO"
}
stop_ueberzug () {
exec 3>&-
- rm "$FIFO" > /dev/null 2>&1
+ @rm@ "$FIFO" > /dev/null 2>&1
}
preview_img () {
@@ -476,12 +476,12 @@ preview_img () {
shorturl=${args##*${tab_space}|}
shorturl="${shorturl%% *}"
- json_obj=$(printf "%s" "$videos_json" | jq '.[]|select( .videoID == "'"$shorturl"'")')
+ json_obj=$(printf "%s" "$videos_json" | @jq@ '.[]|select( .videoID == "'"$shorturl"'")')
IFS=$tab_space read -r title channel duration views date description <<-EOF
$(
- printf "%s" "$json_obj" | jq -r \
+ printf "%s" "$json_obj" | @jq@ -r \
'
[.title,.channel,.duration,.views,.date,.description]|@tsv
'
@@ -530,31 +530,31 @@ preview_img () {
} > "$FIFO" ;;
catimg)
printf "\n"
- catimg -w "$((thumb_width * 2))" "$IMAGE" ;;
+ @catimg@ -w "$((thumb_width * 2))" "$IMAGE" ;;
jp2a)
printf "\n"
- jp2a --size="${thumb_width}x$((thumb_height / 2))" --colors --color-depth=24 "$IMAGE" ;;
+ @jp2a@ --size="${thumb_width}x$((thumb_height / 2))" --colors --color-depth=24 "$IMAGE" ;;
jp2a-8)
printf "\n"
- jp2a --size="${thumb_width}x$((thumb_height / 2))" --colors --color-depth=8 "$IMAGE" ;;
+ @jp2a@ --size="${thumb_width}x$((thumb_height / 2))" --colors --color-depth=8 "$IMAGE" ;;
jp2a-4)
printf "\n"
- jp2a --size="${thumb_width}x$((thumb_height / 2))" --colors --color-depth=4 "$IMAGE" ;;
+ @jp2a@ --size="${thumb_width}x$((thumb_height / 2))" --colors --color-depth=4 "$IMAGE" ;;
jp2a-gray|jp2a-grey)
printf "\n"
- jp2a --size="${thumb_width}x$((thumb_height / 2))" "$IMAGE" ;;
+ @jp2a@ --size="${thumb_width}x$((thumb_height / 2))" "$IMAGE" ;;
chafa)
printf "\n"
- chafa --size="${thumb_width}x${thumb_height}" "$IMAGE" ;;
+ @chafa@ --size="${thumb_width}x${thumb_height}" "$IMAGE" ;;
chafa-gray|chafa-grey)
printf "\n"
- chafa --size="${thumb_width}x${thumb_height}" --colors=2 "$IMAGE" ;;
+ @chafa@ --size="${thumb_width}x${thumb_height}" --colors=2 "$IMAGE" ;;
chafa-4)
printf "\n"
- chafa --size="${thumb_width}x${thumb_height}" --colors=16 "$IMAGE" ;;
+ @chafa@ --size="${thumb_width}x${thumb_height}" --colors=16 "$IMAGE" ;;
chafa-8)
printf "\n"
- chafa --size="${thumb_width}x${thumb_height}" --colors=256 "$IMAGE" ;;
+ @chafa@ --size="${thumb_width}x${thumb_height}" --colors=256 "$IMAGE" ;;
custom)
if ! function_exists "handle_display_img"; then
printf "\033[031mERROR[#07]: \033[0m\033[1mhandle_display_img\033[0m is not defined" >&2
@@ -585,20 +585,20 @@ download_thumbnails () {
if [ "$thumbnail_quality" -eq 1 ]; then
image_download () {
# higher quality images
- curl -s "$Url" -G --data-urlencode "sqp=" > "$thumb_dir/$Name.png"
+ @curl@ -s "$Url" -G --data-urlencode "sqp=" > "$thumb_dir/$Name.png"
}
else
image_download () {
- curl -s "$Url" > "$thumb_dir/$Name.png"
+ @curl@ -s "$Url" > "$thumb_dir/$Name.png"
}
fi
print_info "Downloading Thumbnails...\n"
thumb_urls=$(printf "%s" "$*" |\
- jq -r '.[]|[.thumbs,.videoID]|@tsv' )
+ @jq@ -r '.[]|[.thumbs,.videoID]|@tsv' )
while IFS=$tab_space read -r Url Name; do
- sleep 0.001
+ @sleep@ 0.001
{
image_download
} &
@@ -628,7 +628,7 @@ get_sp_filter () {
#another example is sort by filter + upload date filter only changes one character as well
if [ -n "$filter_id" ]; then
#gets the character in the filter_id that needs to be replaced if upload_date_filter is also given
- upload_date_character=$(printf "%s" "$filter_id" | awk '{print substr($1, 8, 1)}')
+ upload_date_character=$(printf "%s" "$filter_id" | @awk@ '{print substr($1, 8, 1)}')
fi
#For each of these, if upload_date_character is unset, the filter_id should be the normal filter
@@ -650,7 +650,7 @@ get_sp_filter () {
if [ -n "$upload_date_character" ]; then
#replaces the 8th character in the filter_id with the appropriate character
#the 8th character specifies the upload_date_filter
- sp=$(printf "%s" "$filter_id" | sed 's/\(.\{7\}\)./\1'"$upload_date_character"'/')
+ sp=$(printf "%s" "$filter_id" | @sed@ 's/\(.\{7\}\)./\1'"$upload_date_character"'/')
#otherwise set it to the filter_id
else
sp=$filter_id
@@ -660,15 +660,15 @@ get_sp_filter () {
get_yt_json () {
# scrapes the json embedded in the youtube html page
- printf "%s" "$*" | sed -n '/var *ytInitialData/,$p' | tr -d '\n' |\
- sed -E ' s_^.*var ytInitialData ?=__ ; s_;</script>.*__ ;'
+ printf "%s" "$*" | @sed@ -n '/var *ytInitialData/,$p' | @tr@ -d '\n' |\
+ @sed@ -E ' s_^.*var ytInitialData ?=__ ; s_;</script>.*__ ;'
}
get_yt_html () {
link=$1
query=$2
printf "%s" "$(
- curl "$link" -s \
+ @curl@ "$link" -s \
-G --data-urlencode "search_query=$query" \
-G --data-urlencode "sp=$sp" \
-H 'Authority: www.youtube.com' \
@@ -684,7 +684,7 @@ get_video_data () {
# outputs tab and pipe separated fields: title, channel, view count, video length, video upload date, and the video id/url
# from the videos_json
printf "%s" "$*" |\
- jq -r '.[]| "\(.title)'"$tab_space"'|\(.channel)'"$tab_space"'|\(.views)'"$tab_space"'|\(.duration)'"$tab_space"'|\(.date)'"$tab_space"'|\(.videoID)"'
+ @jq@ -r '.[]| "\(.title)'"$tab_space"'|\(.channel)'"$tab_space"'|\(.views)'"$tab_space"'|\(.duration)'"$tab_space"'|\(.date)'"$tab_space"'|\(.videoID)"'
}
scrape_channel () {
@@ -694,7 +694,7 @@ scrape_channel () {
channel_url=$*
# Converting channel title page url to channel video url
- if ! printf "%s" "$channel_url" | grep -q '/videos *$'; then
+ if ! printf "%s" "$channel_url" | @grep@ -q '/videos *$'; then
channel_url=${channel_url%/featured}/videos
fi
@@ -706,8 +706,8 @@ scrape_channel () {
fi
#gets the channel name from title of page
- channel_name=$(printf "%s" "$yt_html" | grep -o '<title>.*</title>' |
- sed \
+ channel_name=$(printf "%s" "$yt_html" | @grep@ -o '<title>.*</title>' |
+ @sed@ \
-e 's/ - YouTube//' \
-e 's/<\/\?title>//g' \
-e "s/&apos;/'/g" \
@@ -723,7 +723,7 @@ scrape_channel () {
#gets a list of videos
videos_json=$(printf "%s" "$yt_json" |\
- jq '[ .contents | ..|.gridVideoRenderer? |
+ @jq@ '[ .contents | ..|.gridVideoRenderer? |
select(. !=null) |
{
title: .title.runs[0].text,
@@ -736,7 +736,7 @@ scrape_channel () {
}
]')
- videos_json=$(printf "%s" "$videos_json" | jq '.[0:'$sub_link_count']')
+ videos_json=$(printf "%s" "$videos_json" | @jq@ '.[0:'$sub_link_count']')
printf "%s\n" "$videos_json" >> "$tmp_video_json_file"
#checks if it's empty in case it was defined in a config function eg: on_get_search
[ -z "$videos_data" ] && videos_data=$(get_video_data "$videos_json")
@@ -768,11 +768,11 @@ get_trending_url_data () {
scrape_pt () {
#gets a list of videos
pt_json=$(
- curl \
+ @curl@ \
-s "https://sepiasearch.org/api/v1/search/videos" \
-G --data-urlencode "search=$*")
videos_json=$(printf "%s" "$pt_json" |\
- jq '[ .data | .[] |
+ @jq@ '[ .data | .[] |
{
title: .name,
channel: .channel.displayName,
@@ -829,7 +829,7 @@ scrape_yt () {
fi
#gets a list of videos
- videos_json=$(printf "%s" "$yt_json" | jq '[ .contents|
+ videos_json=$(printf "%s" "$yt_json" | @jq@ '[ .contents|
..|.videoRenderer? |
select(. !=null) |
{
@@ -844,7 +844,7 @@ scrape_yt () {
}
]')
- playlist_json=$(printf "%s" "$yt_json" | jq '[ .contents|
+ playlist_json=$(printf "%s" "$yt_json" | @jq@ '[ .contents|
..|.playlistRenderer? |
select(. !=null) |
{
@@ -904,28 +904,28 @@ get_search_query () {
#> To select videos from videos_data
user_selection () {
#remove subscription separators
- videos_data_clean=$(printf "%s" "$videos_data" | sed "/.*$tab_space$/d")
+ videos_data_clean=$(printf "%s" "$videos_data" | @sed@ "/.*$tab_space$/d")
#$selected_data is the video the user picked
#picks the first n videos
if [ "$select_all" -eq 1 ] ; then
selected_data=$videos_data_clean
elif [ "$auto_select" -eq 1 ] ; then
- selected_data=$(printf "%s\n" "$videos_data_clean" | sed "${link_count}"q )
+ selected_data=$(printf "%s\n" "$videos_data_clean" | @sed@ "${link_count}"q )
#picks n random videos
elif [ "$random_select" -eq 1 ] ; then
- selected_data=$(printf "%s\n" "$videos_data_clean" | posix_shuf | head -n${link_count})
+ selected_data=$(printf "%s\n" "$videos_data_clean" | posix_shuf | @head@ -n${link_count})
#posix_shuf, pick the first $link_count videos
#show thumbnail menu
elif [ "$show_thumbnails" -eq 1 ] ; then
- dep_ck "ueberzug" "fzf"
+ dep_ck "@ueberzug@" "@fzf@"
export YTFZF_THUMB_DISP_METHOD="$thumb_disp_method"
[ "$thumb_disp_method" = "ueberzug" ] && start_ueberzug
#thumbnails only work in fzf, use fzf
- menu_command="fzf -m --tabstop=1 --bind change:top --delimiter=\"$tab_space\" \
+ menu_command="@fzf@ -m --tabstop=1 --bind change:top --delimiter=\"$tab_space\" \
--nth=1,2 --expect='$shortcuts' $FZF_DEFAULT_OPTS \
- --layout=reverse --preview \"sh $0 -U {}\" \
+ --layout=reverse --preview \"@sh@ $0 -U {}\" \
--preview-window \"$PREVIEW_SIDE:50%:noborder:wrap\""
selected_data=$( title_len=200 video_menu "$videos_data" )
[ "$thumb_disp_method" = "ueberzug" ] && stop_ueberzug
@@ -951,10 +951,10 @@ handle_shortcuts () {
case $selected_key in
"$urls_shortcut") printf "%s\n" $selected_urls; return 1 ;;
"$title_shortcut")
- printf "%s\n" "$selected_data" | awk -F " " '{print $1}'; return 1 ;;
+ printf "%s\n" "$selected_data" | @awk@ -F " " '{print $1}'; return 1 ;;
"$open_browser_shortcut")
for url in $selected_urls; do
- nohup $BROWSER "$url" >/dev/null 2>&1
+ @nohup@ $BROWSER "$url" >/dev/null 2>&1
done
return 1 ;;
"$watch_shortcut") is_download=0; is_audio_only=0; return 0;;
@@ -988,10 +988,10 @@ format_user_selection () {
11) selected_urls=$selected_urls$new_line'https://www.youtube.com/watch?v='$surl ;;
34) selected_urls=$selected_urls$new_line'https://www.youtube.com/playlist?list='$surl ;;
36)
- selected_urls=$selected_urls$new_line"$(printf "%s" "$videos_json" | jq '.[].url' | grep -F "$surl" | tr -d '"')" ;;
+ selected_urls=$selected_urls$new_line"$(printf "%s" "$videos_json" | @jq@ '.[].url' | @grep@ -F "$surl" | @tr@ -d '"')" ;;
*) continue ;;
esac
- refined_selected_data=$refined_selected_data$new_line$(printf '%s' "$videos_data" | grep "|$surl" )
+ refined_selected_data=$refined_selected_data$new_line$(printf '%s' "$videos_data" | @grep@ "|$surl" )
done<<-EOF
$selected_data
EOF
@@ -1014,9 +1014,9 @@ print_data () {
get_video_format () {
# select format if flag given
[ $show_format -eq 0 ] && return
- formats=$(youtube-dl -F "$(printf "$selected_urls")")
- line_number=$(printf "$formats" | grep -n '.*extension resolution.*' | cut -d: -f1)
- quality=$(printf "$formats \n1 2 xAudio" | awk -v lineno=$line_number 'FNR > lineno {print $3}' | sort -n | awk -F"x" '{print $2 "p"}' | uniq | sed -e "s/Audiop/Audio/" -e "/^p$/d" | eval "$menu_command" | sed "s/p//g")
+ formats=$(@youtube-dl@ -F "$(printf "$selected_urls")")
+ line_number=$(printf "$formats" | @grep@ -n '.*extension resolution.*' | @cut@ -d: -f1)
+ quality=$(printf "$formats \n1 2 xAudio" | @awk@ -v lineno=$line_number 'FNR > lineno {print $3}' | @sort@ -n | @awk@ -F"x" '{print $2 "p"}' | @uniq@ | @sed@ -e "s/Audiop/Audio/" -e "/^p$/d" | eval "$menu_command" | @sed@ "s/p//g")
[ -z "$quality" ] && exit;
[ $quality = "Audio" ] && video_pref= && video_player="$audio_player" || video_pref="bestvideo[height=?$quality][vcodec!=?vp9]+bestaudio/best"
@@ -1026,9 +1026,9 @@ get_video_format () {
get_sub_lang () {
if [ $auto_caption -eq 1 ]; then
#Gets the auto generated subs and stores them in a file
- sub_list=$(youtube-dl --list-subs --write-auto-sub "$selected_urls" | sed '/Available subtitles/,$d' | awk '{print $1}' | sed '1d;2d;3d')
+ sub_list=$(@youtube-dl@ --list-subs --write-auto-sub "$selected_urls" | @sed@ '/Available subtitles/,$d' | @awk@ '{print $1}' | @sed@ '1d;2d;3d')
if [ -n "$sub_list" ]; then
- [ -n "$selected_sub" ] || selected_sub=$(printf "$sub_list" | eval "$menu_command") && youtube-dl --sub-lang $selected_sub --write-auto-sub --skip-download "$selected_urls" -o /tmp/ytfzf && YTFZF_SUBT_NAME="--sub-file=/tmp/ytfzf.$selected_sub.vtt" || printf "Auto generated subs not available."
+ [ -n "$selected_sub" ] || selected_sub=$(printf "$sub_list" | eval "$menu_command") && @youtube-dl@ --sub-lang $selected_sub --write-auto-sub --skip-download "$selected_urls" -o /tmp/ytfzf && YTFZF_SUBT_NAME="--sub-file=/tmp/ytfzf.$selected_sub.vtt" || printf "Auto generated subs not available."
fi
unset sub_list
fi
@@ -1046,10 +1046,10 @@ open_player () {
if [ $detach_player -eq 1 ]; then
if [ -z "$video_pref" ] || [ $is_audio_only -eq 1 ]; then
printf "Opening Player: %s\n" "$video_player $*"
- setsid -f $video_player "$@" $YTFZF_SUBT_NAME >/dev/null 2>&1
+ @setsid@ -f $video_player "$@" $YTFZF_SUBT_NAME >/dev/null 2>&1
else
printf "Opening Player: %s\n" "$video_player_format$video_pref $*"
- setsid -f $video_player_format"$video_pref" "$@" $YTFZF_SUBT_NAME >/dev/null 2>&1
+ @setsid@ -f $video_player_format"$video_pref" "$@" $YTFZF_SUBT_NAME >/dev/null 2>&1
fi
return
fi
@@ -1064,9 +1064,9 @@ open_player () {
fi
elif [ $is_download -eq 1 ]; then
if [ -z "$video_pref" ]; then
- youtube-dl "$@" "$YTFZF_SUBT_NAME"
+ @youtube-dl@ "$@" "$YTFZF_SUBT_NAME"
else
- youtube-dl -f "$video_pref" "$@" $YTFZF_SUBT_NAME || video_pref= open_player "$@"
+ @youtube-dl@ -f "$video_pref" "$@" $YTFZF_SUBT_NAME || video_pref= open_player "$@"
fi
fi
}
@@ -1087,7 +1087,7 @@ play_url () {
fi
#Delete the temp auto-gen subtitle file
- [ $auto_caption -eq 1 ] && rm -f "${YTFZF_SUBT_NAME#*=}"
+ [ $auto_caption -eq 1 ] && @rm@ -f "${YTFZF_SUBT_NAME#*=}"
unset player_urls
}
@@ -1102,7 +1102,7 @@ session_is_running () {
#> removes tmp files and clutter
clean_up () {
if ! session_is_running ; then
- [ -d "$thumb_dir" ] && rm -r "$thumb_dir"
+ [ -d "$thumb_dir" ] && @rm@ -r "$thumb_dir"
: > "$pid_file"
function_exists "on_exit" && on_exit
fi
@@ -1124,9 +1124,9 @@ save_before_exit () {
check_if_url () {
# to check if given input is a url
url_regex='^https\?://.*'
- if printf "%s" "$1" | grep -q "$url_regex"; then
+ if printf "%s" "$1" | @grep@ -q "$url_regex"; then
is_url=1
- selected_urls=$(printf "%s" "$1" | tr ' ' '\n')
+ selected_urls=$(printf "%s" "$1" | @tr@ ' ' '\n')
scrape="url"
else
is_url=0
@@ -1139,10 +1139,10 @@ get_history () {
if [ "$enable_hist" -eq 1 ]; then
[ -e "$history_file" ] || : > "$history_file"
#gets history data in reverse order (makes it most recent to least recent)
- hist_data=$( sed '1!G; h; $!d' "$history_file" )
+ hist_data=$( @sed@ '1!G; h; $!d' "$history_file" )
[ -z "$hist_data" ] && printf "History is empty!\n" >&2 && return 1;
#removes duplicate values from $history_data
- videos_data=$(printf "%s" "$hist_data" | uniq )
+ videos_data=$(printf "%s" "$hist_data" | @uniq@ )
[ "$sort_videos_data" -eq 1 ] && videos_data="$(printf "%s" "$videos_data" | sort_video_data_fn)"
else
printf "History is not enabled. Please enable it to use this option (-H).\n" >&2;
@@ -1177,10 +1177,10 @@ get_search_history () {
if [ "$enable_search_hist" -eq 1 ]; then
[ -e "$search_history_file" ] || : > "$search_history_file"
#gets history data in reverse order (makes it most recent to least recent)
- hist_data=$( sed '1!G; h; $!d' "$search_history_file" )
+ hist_data=$( @sed@ '1!G; h; $!d' "$search_history_file" )
[ -z "$hist_data" ] && printf "Search history is empty!\n" >&2 && return 1;
#removes duplicate values from $history_data
- search_history=$(printf "%s" "$hist_data" | uniq )
+ search_history=$(printf "%s" "$hist_data" | @uniq@ )
else
printf "Search history is not enabled. Please enable it to use this option (-q).\n" >&2;
exit 1;
@@ -1190,7 +1190,7 @@ get_search_history () {
set_search_history () {
[ -z "$search_query" ] && return
- [ $enable_search_hist -eq 1 ] && printf "%s\t%s\n" "$(date '+%Y-%m-%d %H:%M:%S')" "$search_query" >> "$search_history_file" ;
+ [ $enable_search_hist -eq 1 ] && printf "%s\t%s\n" "$(@date@ '+%Y-%m-%d %H:%M:%S')" "$search_query" >> "$search_history_file" ;
}
search_history_menu () {
@@ -1200,15 +1200,15 @@ search_history_menu () {
#when using an external menu, the search history will be done there
choice=$( printf "%s\n" "$search_history" | eval "$external_menu" )
else
- choice="$( printf "%s\n" "$search_history" | fzf --prompt="$search_history_prompt" --print-query --no-multi -d '\t' --with-nth=2.. --expect='alt-enter' --bind='tab:replace-query' )"
+ choice="$( printf "%s\n" "$search_history" | @fzf@ --prompt="$search_history_prompt" --print-query --no-multi -d '\t' --with-nth=2.. --expect='alt-enter' --bind='tab:replace-query' )"
fi
# first line is the fzf query (what the user types in fzf)
# second line is the fzf --expect key pressed
# third line is the search_history selection made
- query="$( printf "%s" "$choice" | sed -n '1p' )"
- key="$( printf "%s" "$choice" | sed -n '2p' )"
- selection="$( printf "%s" "$choice" | sed -n '3p' )"
+ query="$( printf "%s" "$choice" | @sed@ -n '1p' )"
+ key="$( printf "%s" "$choice" | @sed@ -n '2p' )"
+ selection="$( printf "%s" "$choice" | @sed@ -n '3p' )"
# if no search history selection has been made
# and the user typed a query, use that instead
@@ -1225,7 +1225,7 @@ search_history_menu () {
search_query="$query"
return;;
esac
- search_query="$( printf "%s" "$selection" | awk -F'\t' '{printf "%s", $NF}' )"
+ search_query="$( printf "%s" "$selection" | @awk@ -F'\t' '{printf "%s", $NF}' )"
}
! function_exists "send_select_video_notif" && send_select_video_notif () {
@@ -1244,13 +1244,13 @@ search_history_menu () {
#if downloading, say Downloading not currently playing
[ $is_download -eq 1 ] && title="Downloading" || title="Currently playing"
- notify-send "$title" "$message" -i "$video_thumb"
+ @notify-send@ "$title" "$message" -i "$video_thumb"
unset message video_thumb title
}
send_notify () {
- videos_selected_count=$(printf "%s\n" "$*" | wc -l)
+ videos_selected_count=$(printf "%s\n" "$*" | @wc@ -l)
while IFS=$tab_space read -r video_title video_channel video_views video_duration video_date video_shorturl; do
send_select_video_notif
done << EOF
@@ -1284,14 +1284,14 @@ if ! function_exists "data_sort_key"; then
sort_by="${5#|}"
sort_by="${sort_by#Streamed}"
#print the data that should be sorted by
- printf "%d" "$(date -d "${sort_by}" '+%s')"
+ printf "%d" "$(@date@ -d "${sort_by}" '+%s')"
unset sort_by
}
fi
#the function to use for sorting
if ! function_exists "data_sort_fn"; then
data_sort_fn () {
- sort -nr
+ @sort@ -nr
}
fi
sort_video_data_fn () {
@@ -1300,7 +1300,7 @@ sort_video_data_fn () {
IFS="$tab_space"
#run the key function to get the value to sort by
printf "%s\t%s\n" "$(data_sort_key $line)" "$line"
- done | data_sort_fn | cut -f2-
+ done | data_sort_fn | @cut@ -f2-
unset IFS line
}
@@ -1314,19 +1314,19 @@ scrape_subscriptions () {
while IFS= read -r url; do
scrape_channel "$url" &
done <<-EOF
- $( sed \
+ $( @sed@ \
-e "s/#.*//" \
-e "/^[[:space:]]*$/d" \
-e "s/[[:space:]]*//g" \
"$subscriptions_file")
EOF
wait
- videos_json="$(cat "$tmp_video_json_file")"
+ videos_json="$(@cat@ "$tmp_video_json_file")"
export videos_json
if [ $sort_videos_data -eq 1 ]; then
videos_data=$(sort_video_data_fn < "$tmp_video_data_file")
else
- videos_data=$(cat "$tmp_video_data_file")
+ videos_data=$(@cat@ "$tmp_video_data_file")
fi
}
@@ -1346,11 +1346,11 @@ create_subs () {
: > "$config_dir/subscriptions"
# check how many subscriptions there are in the file
- sublength=$( jq '. | length' < "$yt_sub_import_file" )
+ sublength=$( @jq@ '. | length' < "$yt_sub_import_file" )
- for i in $(seq $((sublength - 1))); do
- channelInfo=$(jq --argjson index ${i} '[ "https://www.youtube.com/channel/" + .[$index].snippet.resourceId.channelId + "/videos", "#" + .[$index].snippet.title ]' < "$yt_sub_import_file")
- printf "%s\n" "$(printf "%s" "$channelInfo" | tr -d '[]"\n,')" >> "$subscriptions_file"
+ for i in $(@seq@ $((sublength - 1))); do
+ channelInfo=$(@jq@ --argjson index ${i} '[ "https://www.youtube.com/channel/" + .[$index].snippet.resourceId.channelId + "/videos", "#" + .[$index].snippet.title ]' < "$yt_sub_import_file")
+ printf "%s\n" "$(printf "%s" "$channelInfo" | @tr@ -d '[]"\n,')" >> "$subscriptions_file"
done
exit
}
@@ -1367,10 +1367,10 @@ verify_thumb_disp_method () {
#sort -R is not posix
posix_shuf () {
- awk -F '\n' '
+ @awk@ -F '\n' '
BEGIN {srand()} #set the random seed at the start
{print rand() " " $0} #prepend a random number for each line' |\
- sort | sed -E 's/[^ ]* //'
+ @sort@ | @sed@ -E 's/[^ ]* //'
#sort by the random numbers, remove the random number
}
@@ -1486,8 +1486,8 @@ parse_opt () {
exit ;;
version)
printf "\033[1mytfzf:\033[0m %s\n" "$YTFZF_VERSION"
- printf "\033[1myoutube-dl:\033[0m %s\n" "$(youtube-dl --version)"
- command -v "fzf" 1>/dev/null && printf "\033[1mfzf:\033[0m %s\n" "$(fzf --version)"
+ printf "\033[1myoutube-dl:\033[0m %s\n" "$(@youtube-dl@ --version)"
+ command -v "@fzf@" 1>/dev/null && printf "\033[1mfzf:\033[0m %s\n" "$(@fzf@ --version)"
exit ;;
subt)
@@ -1559,19 +1559,19 @@ done
shift $((OPTIND-1))
#only apply to ext_menu since they dont have a terminal to print to
-[ $is_ext_menu -eq 1 ] && command -v notify-send 1>/dev/null 2>&1 && ext_menu_notifs=1 || ext_menu_notifs=0
+[ $is_ext_menu -eq 1 ] && command -v @notify-send@ 1>/dev/null 2>&1 && ext_menu_notifs=1 || ext_menu_notifs=0
#used for thumbnail previews in ueberzug
if [ $is_ext_menu -eq 0 ]; then
- export TTY_LINES=$(tput lines)
- export TTY_COLS=$(tput cols)
+ export TTY_LINES=$(@tput@ lines)
+ export TTY_COLS=$(@tput@ cols)
fi
#if both are true, it defaults to using fzf, and if fzf isnt installed it will throw an error
#so print this error instead and set $show_thumbnails to 0
if [ $is_ext_menu -eq 1 ] && [ $show_thumbnails -eq 1 ]; then
[ $ext_menu_notifs -eq 1 ] &&\
- notify-send "warning" "Currently thumbnails do not work in external menus" ||\
+ @notify-send@ "warning" "Currently thumbnails do not work in external menus" ||\
printf "\033[33mWARNING: Currently thumbnails do not work in external menus\033[0m\n" >&2
show_thumbnails=0
fi
--
2.32.0

View file

@ -1,44 +0,0 @@
From ceb6836cd31653267506957cd0ccf78046404d3b Mon Sep 17 00:00:00 2001
From: Raghav Gururajan <rg@raghavgururajan.name>
Date: Mon, 5 Jul 2021 06:47:38 -0400
Subject: [PATCH 2/2] Disable updates within the application.
Patch the code responsible for self-updating the application.
Co-authored-by: jgart <jgart@dismail.de>
---
ytfzf | 18 ++----------------
1 file changed, 2 insertions(+), 16 deletions(-)
diff --git a/ytfzf b/ytfzf
index f0f2e16..2d1bb2e 100755
--- a/ytfzf
+++ b/ytfzf
@@ -1260,22 +1260,8 @@ EOF
}
update_ytfzf () {
- branch="$1"
- updatefile="/tmp/ytfzf-update"
- curl -L "https://raw.githubusercontent.com/pystardust/ytfzf/$branch/ytfzf" -o "$updatefile"
-
- if sed -n '1p' < "$updatefile" | grep -q '#!/bin/sh'; then
- chmod 755 "$updatefile"
- [ "$(uname)" = "Darwin" ] && prefix="/usr/local/bin" || prefix="/usr/bin"
- function_exists "sudo" && doasroot="sudo" || doasroot="doas"
- $doasroot cp "$updatefile" "$prefix/ytfzf"
- unset prefix doasroot
- else
- printf "%bFailed to update ytfzf. Try again later.%b" "$c_red" "$c_reset"
- fi
-
- rm "$updatefile"
- exit 0
+ printf "%bUpdates have to be installed with Guix.%b\n" "$c_red" "$c_reset"
+ exit 1
}
#gives a value to sort by (this will give the unix time the video was uploaded)
--
2.32.0

View file

@ -9,6 +9,7 @@
;;; Copyright © 2020 Sebastian Schott <sschott@mailbox.org>
;;; Copyright © 2020 Vincent Legoll <vincent.legoll@gmail.com>
;;; Copyright © 2020. 2021, 2022 Vinicius Monego <monego@posteo.net>
;;; Copyright © 2022 John Kehayias <john.kehayias@protonmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -31,6 +32,7 @@
#:use-module (guix build-system meson)
#:use-module (guix build-system perl)
#:use-module (guix build-system python)
#:use-module (guix gexp)
#:use-module (guix download)
#:use-module (guix git-download)
#:use-module ((guix licenses) #:prefix license:)
@ -381,29 +383,38 @@ overlapping images, as well as some command line tools.")
"0j5x011ilalb47ssah50ag0a4phgh1b0wdgxdbbp1gcyjcjf60w7"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)
("perl" ,perl)
("perl-timedate" ,perl-timedate)
;; for building the documentation
("gnuplot" ,gnuplot)
("help2man" ,help2man)
("imagemagick" ,imagemagick)
("libxml2" ,libxml2)
("texlive-minimal" ,texlive-tiny)
("tidy" ,tidy)
("transfig" ,transfig)))
(list pkg-config
perl
perl-timedate
;; For building the documentation.
gnuplot
help2man
imagemagick
libxml2
texlive-tiny
tidy
transfig))
(inputs
`(("boost" ,boost)
("gsl" ,gsl)
("lcms" ,lcms)
("libjpeg" ,libjpeg-turbo)
("libpng" ,libpng)
("libtiff" ,libtiff)
("openexr" ,openexr-2)
("vigra" ,vigra)
("zlib" ,zlib)))
(list boost
gsl
lcms
libjpeg-turbo
libpng
libtiff
openexr-2
vigra
zlib))
(arguments
`(#:configure-flags `("--enable-openmp")))
(list #:configure-flags
#~(list "--enable-openmp")
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'add-missing-include
(lambda _
(substitute* "src/minimizer.h"
;; Fix error: numeric_limits is not a member of std.
(("#include <vector>" line)
(string-append line "\n#include <limits>"))))))))
(home-page "http://enblend.sourceforge.net/")
(synopsis "Tools for combining and blending images")
(description
@ -415,15 +426,16 @@ scene to produce an image that looks much like a tone-mapped image.")
(define-public lensfun
(package
(name "lensfun")
(version "0.3.2")
(source (origin
(method url-fetch)
(uri (string-append
"mirror://sourceforge/lensfun/"
version "/lensfun-" version ".tar.gz"))
(sha256
(base32
"0cfk8jjhs9nbfjfdy98plrj9ayi59aph0nx6ppslgjhlcvacm2xf"))))
(version "0.3.3")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/lensfun/lensfun")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1pv2y9yqzkw70p501425mf9cqv6yy8ppw5ilkpbd9bw9nss1js76"))))
(build-system cmake-build-system)
(arguments
`(,@(if (any (cute string-prefix? <> (or (%current-system)
@ -437,7 +449,7 @@ scene to produce an image that looks much like a tone-mapped image.")
(list pkg-config))
(inputs
(list glib))
(home-page "https://sourceforge.net/projects/lensfun/")
(home-page "https://lensfun.github.io/")
(synopsis "Library to correct optical lens defects with a lens database")
(description "Digital photographs are not ideal. Of course, the better is
your camera, the better the results will be, but in any case if you look

View file

@ -165,14 +165,14 @@ different programming languages.")
(define-public fmt
(package
(name "fmt")
(version "8.0.1")
(version "8.1.1")
(source
(origin
(method url-fetch)
(uri (string-append "https://github.com/fmtlib/fmt/releases/download/"
version "/fmt-" version ".zip"))
(sha256
(base32 "1gqmsk4r93x65cqs8w7zhfiv70w5fv8279nrblggqm4mmdpaa9x6"))))
(base32 "0p8f82ijqa57sk72hjf0qviv1wwinmns0p87wiv2v8fvisnqnxr3"))))
(build-system cmake-build-system)
(arguments
'(#:configure-flags '("-DBUILD_SHARED_LIBS=ON")))

View file

@ -14,6 +14,7 @@
;;; Copyright © 2021, 2022 Guillaume Le Vaillant <glv@posteo.net>
;;; Copyright © 2021 Bonface Munyoki Kilyungi <me@bonfacemunyoki.com>
;;; Copyright © 2022 Malte Frank Gerdes <malte.f.gerdes@gmail.com>
;;; Copyright © 2022 Felix Gruber <felgru@posteo.net>
;;;
;;; This file is part of GNU Guix.
;;;
@ -2056,3 +2057,31 @@ eliminate flaky failures.")
Python objects. It tries to use the objects available in the standard
@code{unittest} module.")
(license license:expat)))
(define-public python-sybil
(package
(name "python-sybil")
(version "3.0.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "sybil" version))
(sha256
(base32 "03ak1w93linfqx6c9lwgq5niyy3j9yblv4ip40hmlzmg0hidq0kg"))))
(build-system python-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(invoke "pytest")))))))
(native-inputs (list python-pytest python-pytest-cov))
(home-page "https://github.com/simplistix/sybil")
(synopsis "Automated testing for examples in code and documentation")
(description
"This library provides a way to check examples in your code and
documentation by parsing them from their source and evaluating the
parsed examples as part of your normal test run. Integration is
provided for the main Python test runners.")
(license license:expat)))

View file

@ -17,6 +17,7 @@
;;; Copyright © 2021 Felix Gruber <felgru@posteo.net>
;;; Copyright © 2022 Malte Frank Gerdes <malte.f.gerdes@gmail.com>
;;; Copyright © 2022 Guillaume Le Vaillant <glv@posteo.net>
;;; Copyright © 2022 Paul A. Patience <paul@apatience.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -858,42 +859,53 @@ readable.")
(define-public python-vedo
(package
(name "python-vedo")
(version "2021.0.3")
(version "2022.2.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/marcomusy/vedo")
(commit version)))
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"18i3ajh5jzhpc86di15lwh4jv97jhm627ii877sa4yhv6abzjfpn"))))
"1hhv4xc4bphhd1zrnf7r6fpf65xvkdqmb1lh51qg1xpv91h2az0h"))))
(build-system python-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'fix-tests
;; These tests require online data.
(lambda _
(substitute* "tests/common/test_actors.py"
(("^st = .*") "")
(("^assert isinstance\\(st\\.GetTexture\\(\\), .*") ""))
(delete-file "tests/common/test_pyplot.py")))
(add-after 'build 'mpi-setup
,%openmpi-setup)
(replace 'check
(lambda* (#:key inputs outputs #:allow-other-keys)
(setenv "HOME" (getcwd))
(add-installed-pythonpath inputs outputs)
(with-directory-excursion "tests"
(for-each (lambda (dir)
(with-directory-excursion dir
(invoke "./run_all.sh")))
'("common" "dolfin")))
#t)))))
(inputs ; for the check phase
`(("dolfin" ,fenics)
("pkgconfig" ,python-pkgconfig)
("matplotlib" ,python-matplotlib)))
(native-inputs ; for python-pkgconfig
(list pkg-config))
(lambda* (#:key tests? inputs outputs #:allow-other-keys)
(when tests?
(setenv "HOME" (getcwd))
(add-installed-pythonpath inputs outputs)
(with-directory-excursion "tests"
(for-each (lambda (dir)
(with-directory-excursion dir
(invoke "./run_all.sh")))
'("common" "dolfin"))))))
;; Disable the sanity check, which fails with the following error:
;;
;; ...checking requirements: ERROR: vedo==2022.2.0 DistributionNotFound(Requirement.parse('vtk<9.1.0'), {'vedo'})
(delete 'sanity-check))))
(native-inputs
(list pkg-config
python-pkgconfig))
(propagated-inputs
`(("numpy" ,python-numpy)
("vtk" ,vtk)))
(list fenics
python-deprecated
python-matplotlib
python-numpy
vtk))
(home-page "https://github.com/marcomusy/vedo")
(synopsis
"Analysis and visualization of 3D objects and point clouds")
@ -903,8 +915,7 @@ scientific analysis and visualization. The package provides a wide
range of functionalities for working with three-dimensional meshes and
point clouds. It can also be used to generate high quality
two-dimensional renderings such as scatter plots and histograms.
@code{vedo} is based on @code{vtk} and @code{numpy}, with no other
dependencies.")
@code{vedo} is based on @code{vtk} and @code{numpy}.")
;; vedo is released under the Expat license. Included fonts are
;; covered by the OFL license and textures by the CC0 license.
;; The earth images are in the public domain.
@ -1183,3 +1194,39 @@ pandas code.")
"This package provides optimized tools for group-indexing operations:
aggregated sum and more.")
(license license:bsd-3)))
(define-public python-traittypes
(package
(name "python-traittypes")
(version "0.2.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "traittypes" version))
(sha256
(base32 "1mlv93irdrgxrhnhq3ksi9585d55bpi4mv9dha4p8gkkjiia4vxy"))))
(build-system python-build-system)
(arguments
'(#:phases
(modify-phases %standard-phases
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
;; This one test fails because it doesn't raise an expected
;; exception.
(invoke "pytest" "-vv" "-k" "not test_bad_values")))))))
(propagated-inputs (list python-traitlets))
(native-inputs
(list python-numpy
python-pandas
python-nose
python-pytest
python-xarray))
(home-page "https://github.com/jupyter-widgets/traittypes")
(synopsis "Trait types for NumPy, SciPy and friends")
(description "The goal of this package is to provide a reference
implementation of trait types for common data structures used in the scipy
stack such as numpy arrays or pandas and xarray data structures. These are
out of the scope of the main traitlets project but are a common requirement to
build applications with traitlets in combination with the scipy stack.")
(license license:bsd-3)))

View file

@ -6469,3 +6469,114 @@ as Flask.")
"This package provides a Python JSON-RPC 2.0 protocol and server powered
by asyncio.")
(license license:expat)))
(define-public python-protego
(package
(name "python-protego")
(version "0.2.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "Protego" version))
(sha256
(base32 "1wigcjyhz8zbk562zhgfbkm733dcn65j1swzvki79dys0i1nsrnz"))))
(build-system python-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(invoke "pytest")))))))
(propagated-inputs (list python-six))
(native-inputs (list python-pytest))
(home-page "https://github.com/scrapy/protego")
(synopsis
"Pure-Python robots.txt parser with support for modern conventions")
(description
"Pure-Python robots.txt parser with support for modern conventions.")
(license license:bsd-3)))
(define-public python-parsel
(package
(name "python-parsel")
(version "1.6.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "parsel" version))
(sha256
(base32 "0yawf9r3r863lwxj0n89i7h3n8xjbsl5b7n6xg76r68scl5yzvvh"))))
(build-system python-build-system)
(propagated-inputs
(list python-cssselect
python-lxml
python-six
python-w3lib))
(native-inputs
(list python-pytest python-pytest-runner))
(home-page "https://github.com/scrapy/parsel")
(synopsis "Extract data from HTML and XML using XPath and CSS selectors")
(description "Parsel is a library to extract and remove data from
HTML and XML using XPath and CSS selectors, optionally combined with
regular expressions.")
(license license:bsd-3)))
(define-public python-scrapy
(package
(name "python-scrapy")
(version "2.6.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "Scrapy" version))
(sha256
(base32 "09rqalbwcz9ix8h0992mzjs50sssxsmmh8w9abkrqchgknjmbzan"))))
(build-system python-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(invoke "pytest"
;; requires network access
"--ignore" "tests/test_command_check.py"
"-k"
(string-append
;; Failing for unknown reasons
"not test_server_set_cookie_domain_suffix_public_private"
" and not test_user_set_cookie_domain_suffix_public_private"
" and not test_pformat")
"tests")))))))
(propagated-inputs
(list python-botocore ; Optional: For S3FeedStorage class.
python-cryptography
python-cssselect
python-itemadapter
python-itemloaders
python-lxml
python-parsel
python-protego
python-pydispatcher
python-pyopenssl
python-queuelib
python-service-identity
python-setuptools
python-tldextract
python-twisted
python-w3lib
python-zope-interface))
(native-inputs
(list python-pytest
python-pyftpdlib
python-sybil
python-testfixtures
python-uvloop))
(home-page "https://scrapy.org")
(synopsis "High-level Web crawling and Web scraping framework")
(description "Scrapy is a fast high-level web crawling and web
scraping framework, used to crawl websites and extract structured data
from their pages. It can be used for a wide range of purposes, from data
mining to monitoring and automated testing.")
(license license:bsd-3)))

View file

@ -108,7 +108,7 @@
;;; Copyright © 2021 Simon Streit <simon@netpanic.org>
;;; Copyright © 2021 Daniel Meißner <daniel.meissner-i4k@ruhr-uni-bochum.de>
;;; Copyright © 2021 Pradana Aumars <paumars@courrier.dev>
;;; Copyright © 2021 Felix Gruber <felgru@posteo.net>
;;; Copyright © 2021, 2022 Felix Gruber <felgru@posteo.net>
;;; Copyright © 2021 Sébastien Lerique <sl@eauchat.org>
;;; Copyright © 2021 Raphaël Mélotte <raphael.melotte@mind.be>
;;; Copyright © 2021 ZmnSCPxj <ZmnSCPxj@protonmail.com>
@ -120,6 +120,7 @@
;;; Copyright © 2022 drozdov <drozdov@portalenergy.tech>
;;; Copyright © 2022 Peter Polidoro <peter@polidoro.io>
;;; Copyright © 2022 Wamm K. D. <jaft.r@outlook.com>
;;; Copyright © 2022 Jai Vetrivelan <jaivetrivelan@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -3510,6 +3511,18 @@ with sensible defaults out of the box.")
(base32 "0njsm0wn31l21bi118g5825ma5sa3rwn7v2x4wjd7yiiahkri337"))))
(arguments `())))
(define-public python-click-8
(package (inherit python-click)
(name "python-click")
(version "8.1.2")
(source
(origin
(method url-fetch)
(uri (pypi-uri "click" version))
(sha256
(base32 "0whs38a2i0561kwbgigs6vic9r0a1887m2v1aw3rmv6r2kz0g5s7"))))
(arguments `())))
(define-public python-cligj
(package
(name "python-cligj")
@ -5680,7 +5693,7 @@ writing C extensions for Python as easy as Python itself.")
(define-public python-numpy-next
(package
(name "python-numpy-next")
(version "1.21.3")
(version "1.22.3")
(source
(origin
(method url-fetch)
@ -5689,12 +5702,12 @@ writing C extensions for Python as easy as Python itself.")
version "/numpy-" version ".tar.gz"))
(sha256
(base32
"0s6hy8828yr7fcjiwnym4l8lrknr21gqfkaiawsf86n0hd0a5fyh"))))
"19dw91pqbqcniw2z57kiyqs1qp56g7kqy1bdyv664g8s62sc01m9"))))
(build-system python-build-system)
(inputs
(list openblas))
(native-inputs
(list python-cython python-hypothesis python-pytest
(list python-cython python-hypothesis-6.23 python-pytest
python-pytest-xdist gfortran))
(arguments
`(#:phases
@ -5786,6 +5799,12 @@ capabilities.")
(sha256
(base32
"140zq9snx0di4id4g97vaw9zz8x2rfla5lp3a70j666f5030yd5p"))))
;; python-numpy-next replaced python-hypothesis with
;; python-hypothesis-6.23. We switch it back here, to prevent
;; python-numpy-1.20 and its numerous dependents from being rebuilt.
(native-inputs
(list python-cython python-hypothesis python-pytest
python-pytest-xdist gfortran))
;; 92 tests fail, many of them because parts of the temp file name
;; accidentally ends up in a comparison.
(arguments
@ -8730,21 +8749,19 @@ connect strings, then issue SQL commands within IPython or IPython Notebook.")
(define-public python-traitlets
(package
(name "python-traitlets")
(version "4.3.3")
(version "5.1.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "traitlets" version))
(sha256
(base32
"1xsrwgivpkxlbr4dfndfsi098s29yqgswgjc1qqn69yxklvfw8yh"))))
"1ivhxglsrnhqw4g98ihddn7i5f6976gpk31fijwq473wb9n4b7q5"))))
(build-system python-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(replace 'check (lambda _ (invoke "pytest" "-vv" "traitlets"))))))
(propagated-inputs
(list python-ipython-genutils python-decorator python-six))
(native-inputs
(list python-pytest))
(home-page "https://ipython.org")
@ -8942,21 +8959,21 @@ installing @code{kernelspec}s for use with Jupyter frontends.")
(define-public python-pari-jupyter
(package
(name "python-pari-jupyter")
(version "1.4.0")
(version "1.4.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "pari-jupyter" version))
(sha256
(base32
"1hwjr66vfjsx28qmxrgsp3z0px1xqwxv53byvsrbwbjp4pbp79sz"))))
"1ikqvv335qfrhmlji0iclci6pnm2c3fvnxf031jr1d68j79g6ypd"))))
(build-system python-build-system)
(arguments '(#:tests? #f)) ;no test suite
(propagated-inputs
(list python-ipykernel))
(inputs
(list pari-gp readline))
(home-page "https://github.com/jdemeyer/pari-jupyter")
(home-page "https://github.com/sagemath/pari-jupyter")
(synopsis "Jupyter kernel for PARI/GP")
(description "The package provides a PARI/GP kernel for Jupyter.")
(license license:gpl3+)))
@ -8996,6 +9013,7 @@ callback signature using a prototype function.")
(build-system python-build-system)
(propagated-inputs
(list python-backcall
python-decorator
python-pyzmq
python-prompt-toolkit-2
python-terminado
@ -11734,32 +11752,6 @@ Unicode-aware. It is not intended as an end-user tool.")
(define-public python2-xlrd
(package-with-python2 python-xlrd))
;; We need this for python-anndata
(define-public python-xlrd-1
(package
(inherit python-xlrd)
(name "python-xlrd")
(version "1.2.0")
(source (origin
;; The tests are not included in the PyPI archive.
(method git-fetch)
(uri (git-reference
(url "https://github.com/python-excel/xlrd")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"0sm5p0ii5ayh52ak1jpw0n1kgsv72vdwwp8c3z13l8yf4irsb587"))))
(build-system python-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
;; Some tests depend on writing a temporary file to the user's home
;; directory.
(add-after 'unpack 'fix-tests
(lambda _
(setenv "HOME" "/tmp"))))))))
;;; Note: this package is unmaintained since 2018 (archived on GitHub).
(define-public python-xlwt
(package
@ -17229,6 +17221,33 @@ characters, mouse support, and auto suggestions.")
(license license:bsd-3)
(properties `((python2-variant . ,(delay python-prompt-toolkit-2))))))
(define-public python-proselint
(package
(name "python-proselint")
(version "0.13.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "proselint" version))
(sha256
(base32
"0n1ahnq2mkgvh94g05xhc3l1fs3hh0ycskqlqivhhfdaq8ybdlkx"))))
(build-system python-build-system)
(arguments
`(#:tests? #f
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'set-home-directory
(lambda _
(setenv "HOME" "/tmp"))))))
(propagated-inputs
(list python-click-8 python-future python-six))
(home-page "https://github.com/amperser/proselint")
(synopsis "Linter for prose")
(description "@code{python-proselint} is a linter for English prose, that
scans through a file and detects issues.")
(license license:bsd-3)))
(define-public python-prompt-toolkit-2
(package (inherit python-prompt-toolkit)
(name "python-prompt-toolkit")
@ -19409,6 +19428,26 @@ multitouch applications.")
(description "This package provides a MediaWiki API client.")
(license license:expat)))
(define-public python-kneed
(package
(name "python-kneed")
(version "0.7.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "kneed" version))
(sha256
(base32 "0vkwi0pr7nfkp3c46hnmx0275yx68v96v10rmspv0wis33x6f39l"))))
(build-system python-build-system)
(propagated-inputs
(list python-matplotlib python-numpy python-scipy))
(home-page "https://github.com/arvkevi/kneed")
(synopsis "Knee-point detection in Python")
(description "This package implements the kneedle algorithm. Given a set
of x and y values, kneed will return the knee point of the function. The knee
point is the point of maximum curvature.")
(license license:bsd-3)))
(define-public python-utils
(package
(name "python-utils")
@ -23143,7 +23182,6 @@ N-dimensional arrays for Python.")
python-packaging
python-pandas
python-scipy
python-xlrd-1
python-zarr))
(native-inputs
(list python-joblib python-pytest python-toml python-flit
@ -23293,22 +23331,6 @@ main differences are that @code{cytoolz} is faster and cytoolz offers a C API
that is accessible to other projects developed in Cython.")
(license license:bsd-3)))
;; python-cooler doesn't work with 0.11 yet
(define-public python-cytoolz-for-cooler
(package
(inherit python-cytoolz)
(version "0.10.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "cytoolz" version))
(sha256
(base32
"0p4a9nadsy1337gy2cnb5yanbn03j3zm6d9adyqad9bk3nlbpxc2"))
(modules '((guix build utils)))
(snippet
'(for-each delete-file (find-files "cytoolz" "\\.c$")))))))
(define-public python-sortedcollections
(package
(name "python-sortedcollections")
@ -24473,6 +24495,59 @@ Stamen, and supports custom tilesets with Mapbox or Cloudmade API keys. It
supports Image, Video, GeoJSON and TopoJSON overlays.")
(license license:expat)))
(define-public python-mercantile
(package
(name "python-mercantile")
(version "1.2.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "mercantile" version))
(sha256
(base32 "0sxmndhzzrvss5irsgzfrk51k6jihwcb7661992mizdgbnqnsg7s"))))
(build-system python-build-system)
(propagated-inputs (list python-click))
(native-inputs
(list python-check-manifest python-hypothesis python-pytest))
(home-page "https://github.com/mapbox/mercantile")
(synopsis "Web mercator XYZ tile utilities")
(description "The mercantile module provides @code{ul(xtile, ytile, zoom)}
and @code{bounds(xtile, ytile, zoom)} functions that respectively return the
upper left corner and bounding longitudes and latitudes for XYZ tiles, a
@code{xy(lng, lat)} function that returns spherical mercator x and y
coordinates, a @code{tile(lng, lat, zoom)} function that returns the tile
containing a given point, and quadkey conversion functions
@code{quadkey(xtile, ytile, zoom)} and @code{quadkey_to_tile(quadkey)} for
translating between quadkey and tile coordinates.")
(license license:bsd-3)))
(define-public python-xyzservices
(package
(name "python-xyzservices")
(version "2022.4.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "xyzservices" version))
(sha256
(base32 "1paxv4i0dws85md7csv7pf80jl3xh792mx8rxnsrk61ks3ivbsyg"))))
(build-system python-build-system)
(arguments
'(#:phases
(modify-phases %standard-phases
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(invoke "pytest" "-vv")))))))
(native-inputs
(list python-pytest python-mercantile python-requests))
(home-page "https://github.com/geopandas/xyzservices")
(synopsis "Source of XYZ tiles providers")
(description "@code{xyzservices} is a lightweight library providing a
repository of available XYZ services offering raster basemap tiles. The
repository is provided via Python API and as a compressed JSON file.")
(license license:bsd-3)))
(define-public jube
(package
;; This is a command-line tool, so no "python-" prefix.
@ -24825,25 +24900,18 @@ standard error channel (stderr) in your program.")
(define-public python-anyio
(package
(name "python-anyio")
(version "3.3.0")
(version "3.5.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "anyio" version))
(sha256
(base32
"0x03hsprdrs86wjjkj96zm2jswy3a5bgyrknyi58pzz5hdsscmxf"))))
"19m58805wir4i2s45dd5ynwlzb7ky1218isbir53gpqzzgigzbm0"))))
(build-system python-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'fix-compatibility
(lambda _
(substitute* "tests/test_taskgroups.py"
(("import pytest")
"import pytest\nimport _pytest\nfrom _pytest import logging")
(("pytest.LogCaptureFixture")
"_pytest.logging.LogCaptureFixture"))))
(replace 'check
(lambda* (#:key inputs outputs tests? #:allow-other-keys)
(when tests?
@ -24880,18 +24948,24 @@ standard error channel (stderr) in your program.")
" and not test_send_eof"
" and not test_send_large_buffer"
" and not test_send_receive"
" and not test_socket_options"))))))))
" and not test_socket_options"
" and not test_unretrieved_future_exception_server_crash"))))))))
(propagated-inputs
(list python-idna python-sniffio python-typing-extensions))
(list python-contextvars
python-dataclasses
python-idna
python-sniffio
python-typing-extensions))
(native-inputs
(list python-coverage
(list python-contextlib2
python-coverage
python-hypothesis
python-iniconfig
python-mock
python-pytest-6
python-pytest-mock
python-pytest-trio
python-setuptools-scm
python-trio
python-trustme
python-uvloop))
(home-page "https://github.com/agronholm/anyio")
@ -29482,7 +29556,11 @@ writing STL files. It supports both the text and binary forms of STL.")
(lambda _
(substitute* "setup.py"
(("test_suite = 'multipart.tests.suite'")
"test_suite = 'multipart.tests.test_multipart.suite'")))))))
"test_suite = 'multipart.tests.test_multipart.suite'"))
;; Needed by PyYAML 6.0.
(substitute* "multipart/tests/test_multipart.py"
(("yaml_data = yaml.load\\(f\\)")
"yaml_data = yaml.load(f, Loader=yaml.SafeLoader)")))))))
(home-page "https://github.com/andrew-d/python-multipart")
(synopsis "Streaming multipart parser for Python")
(description
@ -29572,6 +29650,24 @@ adapted from the @code{packaging} package.")
Python CLI apps.")
(license license:asl2.0)))
(define-public python-style
(package
(name "python-style")
(version "1.1.6")
(source
(origin
(method url-fetch)
(uri (pypi-uri "style" version))
(sha256
(base32 "1dcfb578v9mrwh92rgms87gql0gp4vgj6l9hpgyfg0wbd3rh3bfh"))))
(build-system python-build-system)
(home-page "https://github.com/lmittmann/style")
(synopsis "Terminal string styling")
(description
"@code{python-style} is a simple terminal string styling package. Its API is
a port of the chalk package for javascript.")
(license license:expat)))
(define-public python-sre-yield
(package
(name "python-sre-yield")
@ -29594,6 +29690,114 @@ uses the parsed regular expression, so you get a much more accurate result
than trying to just split strings.")
(license license:asl2.0)))
(define-public python-pydispatcher
(package
(name "python-pydispatcher")
(version "2.0.5")
(source
(origin
(method url-fetch)
(uri (pypi-uri "PyDispatcher" version))
(sha256
(base32 "1bswbmhlbqdxlgbxlb6xrlm4k253sg8nvpl1whgsys8p3fg0cw2m"))))
(build-system python-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(invoke "pytest")))))))
(native-inputs (list python-pytest))
(home-page "http://pydispatcher.sourceforge.net")
(synopsis "Multi-producer-multi-consumer signal dispatching mechanism")
(description "PyDispatcher is an enhanced version of Patrick K. OBriens
original @code{dispatcher.py} module. It provides the Python programmer with
a robust mechanism for event routing within various application contexts.
Included in the package are the robustapply and saferef modules, which
provide the ability to selectively apply arguments to callable objects
and to reference instance methods using weak-references.")
(license license:bsd-3)))
(define-public python-queuelib
(package
(name "python-queuelib")
(version "1.6.2")
(source
(origin
(method url-fetch)
(uri (pypi-uri "queuelib" version))
(sha256
(base32 "1lpwq8wx3025i14y5h0hbald2ypbarf081pql6cqcak4y9kp482b"))))
(build-system python-build-system)
(native-inputs (list python-pytest))
(home-page "https://github.com/scrapy/queuelib")
(synopsis
"Collection of persistent (disk-based) and non-persistent (memory-based) queues")
(description "Queuelib is a Python library that implements object
collections which are stored in memory or persisted to disk, provide a
simple API, and run fast.
Queuelib provides collections for queues (FIFO), stacks (LIFO), queues
sorted by priority and queues that are emptied in a round-robin
fashion.")
(license license:bsd-3)))
(define-public python-itemadapter
(package
(name "python-itemadapter")
(version "0.5.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "itemadapter" version))
(sha256
(base32 "083wp3h2brh8x19jbdr8rz3biqwp3jlqd0rfzcyrjyhssffsgdh5"))))
(build-system python-build-system)
(home-page "https://github.com/scrapy/itemadapter")
(synopsis "Common interface for data container classes")
(description "The ItemAdapter class is a wrapper for data container
objects, providing a common interface to handle objects of different
types in an uniform manner, regardless of their underlying implementation.
Currently supported types are:
@itemize
@item scrapy.item.Item
@item dict
@item dataclass-based classes
@item attrs-based classes
@item pydantic-based classes
@end itemize
Additionally, interaction with arbitrary types is supported by
implementing a pre-defined interface.")
(license license:bsd-3)))
(define-public python-itemloaders
(package
(name "python-itemloaders")
(version "1.0.4")
(source
(origin
(method url-fetch)
(uri (pypi-uri "itemloaders" version))
(sha256
(base32 "15hc78h90qhwass1bga1c3xar2dd6j8sxg61zg6jvh74lf6csxqj"))))
(build-system python-build-system)
(propagated-inputs
(list python-itemadapter python-jmespath python-parsel python-w3lib))
(home-page "https://github.com/scrapy/itemloaders")
(synopsis "Base library for scrapy's ItemLoader")
(description "Itemloaders is a library that helps you collect data
from HTML and XML sources. It comes in handy to extract data from web
pages, as it supports data extraction using CSS and XPath Selectors.
Its specially useful when you need to standardize the data from many
sources. For example, it allows you to have all your casting and
parsing rules in a single place.")
(license license:bsd-3)))
(define-public python-hypy-utils
(package
(name "python-hypy-utils")
@ -29633,3 +29837,96 @@ and setting the color of terminal output, via HyDEV.")
versions of MkDocs-powered docs to a Git branch. It is suitable for deploying
to Github via gh-pages.")
(license license:bsd-3)))
(define-public python-arpeggio
(package
(name "python-arpeggio")
(version "2.0.0")
(source (origin
(method url-fetch)
(uri (pypi-uri "Arpeggio" version))
(sha256
(base32
"0ggdsck1wpladd5bh9drhkmm86bblgk2wagrhn3sdf4v04wkic6n"))))
(build-system python-build-system)
(native-inputs (list python-coverage
python-coveralls
python-flake8
python-mike
python-mkdocs
python-pytest
python-pytest-runner
python-twine
python-wheel))
(home-page "https://github.com/textX/Arpeggio")
(synopsis "Packrat parser interpreter for Python")
(description
"This Python library provides a recursive descent parser with backtracking
and memoization (a.k.a. packrat parser). Arpeggio grammars are based on PEG
formalism. Arpeggio's main use is a foundation for a toolchain for DSL
development but it can be used for all sorts of general purpose parsing.")
(license license:expat)))
(define-public python-flatten-json
(package
(name "python-flatten-json")
(version "0.1.13")
(source
(origin
(method url-fetch)
(uri (pypi-uri "flatten_json" version))
(sha256
(base32 "007m28gfs7pmz2rqqjxpial6skzw26hrfi8vrdy9agi9x0rj6dgf"))))
(build-system python-build-system)
(propagated-inputs (list python-six))
(home-page "https://github.com/amirziai/flatten")
(synopsis "Flatten JSON objects")
(description
"The @code{flatten_json} Python library flattens the hierarchy in your
object, which can be useful if you want to force your objects into a table.")
(license license:expat)))
(define-public python-deepmerge
(package
(name "python-deepmerge")
(version "1.0.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "deepmerge" version))
(sha256
(base32 "06hagzg8ccmjzqvszdxb52jgx5il8a1jdz41n4dpkyyjsfg7fi2b"))))
(build-system python-build-system)
(arguments
(list
#:phases
#~(modify-phases %standard-phases
(add-before 'build 'set-version
(lambda _
(setenv "SETUPTOOLS_SCM_PRETEND_VERSION" #$version)
;; ZIP does not support timestamps before 1980.
(setenv "SOURCE_DATE_EPOCH" "315532800")))
(replace 'build
(lambda _
(invoke "python" "-m" "build" "--wheel"
"--no-isolation" ".")))
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(invoke "pytest"))))
(replace 'install
(lambda _
(let ((whl (car (find-files "dist" "\\.whl$"))))
(invoke "pip" "--no-cache-dir" "--no-input"
"install" "--no-deps" "--prefix" #$output whl)))))))
(native-inputs
(list python-pypa-build
python-setuptools-scm
python-pytest
python-wheel))
(home-page "https://deepmerge.readthedocs.io/en/latest/")
(synopsis "Merge nested data structures")
(description
"The @code{deep-merge} Python library provides a toolset to deeply merge
nested data structures in Python like lists and dictionaries.")
(license license:expat)))

View file

@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2017, 2018, 2019, 2020 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2017, 2018, 2019, 2020, 2022 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2019, 2020 Christopher Howard <christopher@librehacker.com>
;;; Copyright © 2019, 2020 Evan Straw <evan.straw99@gmail.com>
;;; Copyright © 2020, 2021, 2022 Guillaume Le Vaillant <glv@posteo.net>
@ -921,7 +921,7 @@ using GNU Radio and the Qt GUI toolkit.")
(define-public fldigi
(package
(name "fldigi")
(version "4.1.20")
(version "4.1.22")
(source
(origin
(method git-fetch)
@ -930,7 +930,7 @@ using GNU Radio and the Qt GUI toolkit.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0y43241s3p8qzn7x6x28v5v2bf934riznj14bb7m6k6vgd849qzl"))))
(base32 "1n1ljqsqar9s8yh8hn9yc1clabkhv4jidym3ibg25yb5svckscli"))))
(build-system gnu-build-system)
(native-inputs
(list autoconf automake gettext-minimal pkg-config))
@ -960,7 +960,7 @@ hardware.")
(define-public flrig
(package
(name "flrig")
(version "1.4.04")
(version "1.4.05")
(source
(origin
(method git-fetch)
@ -969,7 +969,7 @@ hardware.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "06alzln46x08110v1ghasphr2mmznzk0x5h59vl9g2w1z12i9zsm"))))
(base32 "0pgkfzxqr2ybpbnf1y9nsr25k0zimdwr98mpvd7nazrv5l0y8kci"))))
(build-system gnu-build-system)
(native-inputs
(list autoconf automake pkg-config))
@ -2424,6 +2424,68 @@ vendor-neutral SDR support library instead, intended to support a wider range
of devices than RTL-SDR.")
(license license:gpl2+))))
(define-public urh
(package
(name "urh")
(version "2.9.3")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/jopohl/urh")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "17r9fkw0icph7fayibp6qbdh4nxi8wy3mmd3djmh0c2jr8yz5fsf"))))
(build-system python-build-system)
(native-inputs
(list python-cython
python-pytest
xorg-server-for-tests))
(inputs
(list gnuradio
gr-osmosdr
hackrf
python-numpy
python-psutil
python-pyaudio
python-pyqt
rtl-sdr))
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'configure-compiler
(lambda _
;; Use gcc as compiler
(substitute* "src/urh/dev/native/ExtensionHelper.py"
(("compiler = ccompiler\\.new_compiler\\(\\)\n" all)
(string-append
all " compiler.set_executables(compiler='gcc',"
" compiler_so='gcc', linker_exe='gcc', linker_so='gcc -shared')\n")))))
(add-after 'unpack 'disable-some-tests
(lambda _
(for-each delete-file
'(;; FIXME: This test causes a segmentation fault
"tests/test_send_recv_dialog_gui.py"))))
(add-after 'build 'build-cythonext
(lambda _
(invoke "python" "src/urh/cythonext/build.py")))
(replace 'check
(lambda* (#:key inputs tests? #:allow-other-keys)
(when tests?
(setenv "HOME" "/tmp")
(system (string-append (search-input-file inputs "/bin/Xvfb")
" :1 &"))
(setenv "DISPLAY" ":1")
(invoke "pytest")))))))
(home-page "https://github.com/jopohl/urh")
(synopsis "Wireless protocol investigation program")
(description
"The Universal Radio Hacker (URH) is a complete suite for wireless
protocol investigation with native support for many common Software Defined
Radios.")
(license license:gpl3+)))
(define-public gnss-sdr
(package
(name "gnss-sdr")

View file

@ -1298,6 +1298,39 @@ formats.")
(home-page "https://asciidoctor.org")
(license license:expat)))
(define-public ruby-asciidoctor-multipage
(package
(name "ruby-asciidoctor-multipage")
(version "0.0.15")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/owenh000/asciidoctor-multipage")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"01qqkf00cp4sj82brz8kl02pjirydafwgld3z166slysiq78d1c5"))))
(propagated-inputs (list ruby-asciidoctor ruby-slim))
(build-system ruby-build-system)
(arguments
`(#:phases (modify-phases %standard-phases
(add-after 'extract-gemspec 'strip-version-requirements
(lambda _
(delete-file "Gemfile")
(substitute* "asciidoctor-multipage.gemspec"
(("(.*add_.*dependency '[_A-Za-z0-9-]+').*" _ stripped)
(string-append stripped "
"))) #t)))))
(synopsis
"Asciidoctor extension for generating HTML output using multiple pages")
(description
"Asciidoctor generates single-page documents. This extension
splits documents up into multiple HTML pages according to their headings, with
configurable levels.")
(license license:expat)
(home-page "https://github.com/owenh000/asciidoctor-multipage")))
(define-public ruby-prawn-icon
(package
(name "ruby-prawn-icon")

View file

@ -642,14 +642,14 @@ bibliographic data and simple document and bibtex retrieval.")
(define-public ugrep
(package
(name "ugrep")
(version "3.1.12")
(version "3.7.9")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/Genivia/ugrep")
(commit (string-append "v" version))))
(sha256
(base32 "06y61sf2ywjaix4nss11wwkxipj8cc9ccx6bsmdm31h8d8wd2s0j"))
(base32 "0mj4da91r81drfl2nbgzl1krka6ksk7srjjvwgp55r6l265fk3b5"))
(file-name (git-file-name name version))
(modules '((guix build utils)))
(snippet

View file

@ -19,6 +19,7 @@
;;; Copyright © 2020, 2022 Marius Bakke <marius@gnu.org>
;;; Copyright © 2021, 2022 Nicolas Goaziou <mail@nicolasgoaziou.fr>
;;; Copyright © 2021, 2022 Felix Gruber <felgru@posteo.net>
;;; Copyright © 2022 Andrew Tropin <andrew@trop.in>
;;;
;;; This file is part of GNU Guix.
;;;
@ -64,6 +65,7 @@
#:use-module (gnu packages tls)
#:use-module (gnu packages version-control)
#:use-module (gnu packages xorg)
#:use-module (gnu packages texinfo)
#:use-module (guix build-system cargo)
#:use-module (guix build-system cmake)
#:use-module (guix build-system gnu)
@ -521,9 +523,12 @@ history mechanism, job control and a C-like syntax.")
(substitute* "Test/A01grammar.ztst"
(("command -pv") "command -v")
(("command -p") "command ")
(("'command' -p") "'command' "))
#t)))))
(native-inputs (list autoconf))
(("'command' -p") "'command' "))))
(add-after 'build 'make-info
(lambda _ (invoke "make" "info")))
(add-after 'build 'install-info
(lambda _ (invoke "make" "install.info"))))))
(native-inputs (list autoconf texinfo))
(inputs (list ncurses pcre perl))
(synopsis "Powerful shell for interactive use and scripting")
(description "The Z shell (zsh) is a Unix shell that can be used

View file

@ -448,8 +448,7 @@ FFC is part of the FEniCS Project.")
;; Specify directory to find the header file.
(("(^set\\(CATCH_INCLUDE_DIR ).*(/catch\\))" _ front back)
(string-append front
"$ENV{CATCH_DIR}/include" back "\n")))
#t))))
"$ENV{CATCH_DIR}/include" back "\n")))))))
(build-system cmake-build-system)
(inputs
`(("blas" ,openblas)
@ -494,8 +493,7 @@ FFC is part of the FEniCS Project.")
(setenv "SLEPC_DIR" (assoc-ref %build-inputs "slepc"))
(setenv "SCOTCH_DIR" (assoc-ref %build-inputs "scotch"))
(setenv "SUNDIALS_DIR" (assoc-ref %build-inputs "sundials"))
(setenv "UMFPACK_DIR" (assoc-ref %build-inputs "suitesparse"))
#t))
(setenv "UMFPACK_DIR" (assoc-ref %build-inputs "suitesparse"))))
(add-before 'check 'pre-check
(lambda _
;; The Dolfin repository uses git-lfs, whereby web links are
@ -546,15 +544,15 @@ FFC is part of the FEniCS Project.")
"demo_mesh-quality_serial "
"demo_mesh-quality_mpi "
"demo_multimesh-stokes_serial "
")\n") port)))
#t))
")\n") port)))))
(replace 'check
(lambda _
(and (invoke "make" "unittests")
(invoke "make" "demos")
(invoke "ctest" "-R" "unittests")
(invoke "ctest" "-R" "demo" "-R" "serial")
(invoke "ctest" "-R" "demo" "-R" "mpi")))))))
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(invoke "make" "unittests")
(invoke "make" "demos")
(invoke "ctest" "-R" "unittests")
(invoke "ctest" "-R" "demo" "-R" "serial")
(invoke "ctest" "-R" "demo" "-R" "mpi")))))))
(home-page "https://bitbucket.org/fenics-project/dolfin/")
(synopsis "Problem solving environment for differential equations")
(description
@ -609,6 +607,10 @@ user interface to the FEniCS core components and external libraries.")
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'relax-requirements
(lambda _
(substitute* "python/setup.py"
(("pybind11==") "pybind11>="))))
(add-after 'patch-source-shebangs 'set-paths
(lambda _
;; Define paths to store locations.
@ -659,17 +661,18 @@ user interface to the FEniCS core components and external libraries.")
;; Restrict OpenBLAS to MPI-only in preference to MPI+OpenMP.
(setenv "OPENBLAS_NUM_THREADS" "1")))
(replace 'check
(lambda _
(with-directory-excursion "test"
;; Note: The test test_snes_set_from_options() in the file
;; unit/nls/test_PETScSNES_solver.py fails and is ignored.
;; Limit the number of jobs to 3 as 500 MiB of memory is used
;; per process.
(invoke "mpirun" "-np" (number->string
(min 3 (parallel-job-count)))
"python" "-B" "-m"
"pytest" "unit" "--ignore"
"unit/nls/test_PETScSNES_solver.py"))))
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(with-directory-excursion "test"
;; Note: The test test_snes_set_from_options() in the file
;; unit/nls/test_PETScSNES_solver.py fails and is ignored.
;; Limit the number of jobs to 3 as 500 MiB of memory is used
;; per process.
(invoke "mpirun" "-np" (number->string
(min 3 (parallel-job-count)))
"python" "-B" "-m"
"pytest" "unit" "--ignore"
"unit/nls/test_PETScSNES_solver.py")))))
(add-after 'install 'install-demo-files
(lambda* (#:key outputs #:allow-other-keys)
(let* ((demos (string-append

View file

@ -189,7 +189,8 @@ a server that supports the SSH-2 protocol.")
(method url-fetch)
(uri (string-append "mirror://openbsd/OpenSSH/portable/"
"openssh-" version ".tar.gz"))
(patches (search-patches "openssh-hurd.patch"))
(patches (search-patches "openssh-hurd.patch"
"openssh-trust-guix-store-directory.patch"))
(sha256
(base32
"1ry5prcax0134v6srkgznpl9ch5snkgq7yvjqvd8c5mbnxa7cjgx"))))
@ -249,6 +250,11 @@ a server that supports the SSH-2 protocol.")
(substitute* "Makefile"
(("PRIVSEP_PATH=/var/empty")
(string-append "PRIVSEP_PATH=" out "/var/empty"))))))
(add-after 'configure 'set-store-location
(lambda* _
(substitute* "misc.c"
(("@STORE_DIRECTORY@")
(string-append "\"" (%store-directory) "\"")))))
(add-before 'check 'patch-tests
(lambda _
(substitute* "regress/test-exec.sh"

View file

@ -38,6 +38,7 @@
#:use-module (gnu packages fontutils)
#:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages tls)
#:use-module (gnu packages xml)
#:use-module (gnu packages xorg)
#:use-module ((guix licenses) #:prefix license:))
@ -432,6 +433,51 @@ system, and adds many new programming constructs, text manipulation tools, and
debugging tools.")
(license license:tcl/tk)))
(define-public tcl-tls
(package
(name "tcl-tls")
(version "1.7.22")
(source
(origin
(method url-fetch)
(uri (string-append "https://core.tcl-lang.org/tcltls/uv/tcltls-"
version ".tar.gz"))
(sha256
(base32
"1d639gzngxp7zwwpb4ayh663br6vhsbiy6wxm952rj2y4xx2nkp8"))))
(build-system gnu-build-system)
(inputs (list tcl))
(propagated-inputs (list openssl))
(arguments
(list #:configure-flags
#~(let ((tcl #$(this-package-input "tcl")))
(list "--with-ssl=libressl"
(string-append "-with-ssl-dir="
#$(this-package-input "openssl"))
(string-append "--with-tcl=" tcl "/lib")
(string-append "--with-tclinclude=" tcl "/include")
(string-append "--exec-prefix=" #$output)
(string-append "--mandir=" #$output "/share/man")))
#:test-target "test"))
(search-paths
(list (search-path-specification
(variable "TCLLIBPATH")
(separator " ")
(files (list (string-append "lib/tcltls" version))))))
(home-page "https://core.tcl-lang.org/tcltls/index")
(synopsis "Tcl binding to OpenSSL toolkit")
(description
"This extension provides a generic binding to OpenSSL, utilizing the
@code{Tcl_StackChannel} API for Tcl 8.2 and higher. The sockets behave
exactly the same as channels created using Tcl's built-in socket command with
additional options for controlling the SSL session.")
(properties
'((release-monitoring-url
. "https://core.tcl-lang.org/tcltls/wiki/Download")
(upstream-name . "tcltls")))
(license license:public-domain)))
(define-public go-github.com-nsf-gothic
(let ((commit "97dfcc195b9de36c911a69a6ec2b5b2659c05652")
(revision "0"))

View file

@ -63,6 +63,7 @@
#:use-module (gnu packages)
#:use-module (gnu packages autotools)
#:use-module (gnu packages base)
#:use-module (gnu packages bash)
#:use-module (gnu packages check)
#:use-module (gnu packages cmake)
#:use-module (gnu packages compression)
@ -666,20 +667,18 @@ embedded kernel situations.")
(license license:expat)))
(define-public cool-retro-term
(let ((commit "1.1.1")
(revision "0")) ;not used currently
(package
(name "cool-retro-term")
(version "1.1.1")
(version "1.2.0")
(source (origin
(method git-fetch)
(file-name (string-append name "-" version "-checkout"))
(uri (git-reference
(url (string-append "https://github.com/Swordfish90/" name))
(commit commit)
(commit version)
(recursive? #t)))
(sha256
(base32 "0wb6anchxa5jpn9c73kr4byrf2xlj8x8qzc5x7ny6saj7kbbvp75"))
(base32 "02mj70gcpx9fvrhsy6iqwp399dya9iyakx940b6ws952d23xn337"))
(modules '((guix build utils)
(srfi srfi-1)
(srfi srfi-26)
@ -778,11 +777,10 @@ embedded kernel situations.")
"app/qml/ApplicationSettings.qml"))
;; Final substitution for default scanline and pixel fonts
(substitute* "app/qml/ApplicationSettings.qml"
(("COMMODORE_PET") "PROGGY_TINY"))
#t))))
(("COMMODORE_PET") "PROGGY_TINY"))))))
(build-system gnu-build-system)
(inputs
(list qtbase-5 qtdeclarative qtgraphicaleffects qtquickcontrols))
(list qtbase-5 qtdeclarative qtgraphicaleffects qtquickcontrols2 bash-minimal))
(arguments
`(#:phases
(modify-phases %standard-phases
@ -806,20 +804,17 @@ embedded kernel situations.")
(string-append (assoc-ref inputs i) qml))
'("qtdeclarative"
"qtgraphicaleffects"
"qtquickcontrols")))))
#t)))
"qtquickcontrols2"))))))))
(add-after 'install 'add-alternate-name
(lambda* (#:key outputs #:allow-other-keys)
(let ((bin (string-append (assoc-ref outputs "out") "/bin")))
(symlink (string-append bin "/cool-retro-term")
(string-append bin "/crt"))
#t)))
(string-append bin "/crt")))))
(add-after 'install 'install-man
(lambda* (#:key outputs #:allow-other-keys)
(let ((mandir (string-append (assoc-ref outputs "out")
"/share/man/man1")))
(install-file "packaging/debian/cool-retro-term.1" mandir)
#t))))))
(install-file "packaging/debian/cool-retro-term.1" mandir)))))))
(synopsis "Terminal emulator")
(description
"Cool-retro-term (crt) is a terminal emulator which mimics the look and
@ -832,7 +827,7 @@ eye-candy, customizable, and reasonably lightweight.")
;; Fonts
license:silofl1.1
license:x11
license:bsd-3)))))
license:bsd-3))))
(define-public foot
(package

View file

@ -21,6 +21,7 @@
;;; Copyright © 2021 Maxime Devos <maximedevos@telenet.be>
;;; Copyright © 2021 Matthew James Kraai <kraai@ftbfs.org>
;;; Copyright © 2021 John Kehayias <john.kehayias@protonmail.com>
;;; Copyright © 2022 Greg Hogan <code@greghogan.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -1129,7 +1130,7 @@ derived from Mozilla's collection.")
(define-public s2n
(package
(name "s2n")
; Update only when updating aws-crt-cpp.
;; Update only when updating aws-crt-cpp.
(version "1.3.10")
(source (origin
(method git-fetch)
@ -1143,10 +1144,13 @@ derived from Mozilla's collection.")
(build-system cmake-build-system)
(arguments
'(#:configure-flags
'("-DBUILD_SHARED_LIBS=ON")))
(propagated-inputs
`(("openssl" ,openssl)
("openssl:static" ,openssl "static")))
'("-DBUILD_SHARED_LIBS=ON"
;; Remove in next update; see https://github.com/aws/s2n-tls/pull/3108
;; Building with 'Werror' results in compilation error (even building
;; with gcc) when replacing the aws-lc input with openssl.
"-DUNSAFE_TREAT_WARNINGS_AS_ERRORS=OFF")))
(propagated-inputs (list aws-lc))
(supported-systems '("x86_64-linux"))
(synopsis "SSL/TLS implementation in C99")
(description
"This library provides a C99 implementation of SSL/TLS. It is designed to
@ -1192,7 +1196,7 @@ ciphers such as ChaCha20, Curve25519, NTRU, and Blake2b.")
(define-public aws-lc
(package
(name "aws-lc")
; Update only when updating aws-crt-cpp.
;; Update only when updating aws-crt-cpp.
(version "1.0.2")
(source (origin
(method git-fetch)
@ -1202,10 +1206,10 @@ ciphers such as ChaCha20, Curve25519, NTRU, and Blake2b.")
(file-name (git-file-name name version))
(sha256
(base32
"14dhdddlph36nshdkh0v43718hxjx5vxqxmkw7707393q0qrgipw"))))
"16y4iy2rqrmb7b1c394wyq7a5vbjb41599524my6b6q1vk1pi307"))))
(build-system cmake-build-system)
(arguments
'(#:tests? #f ; re-enable but with go and perl dependencies
'(#:test-target "run_minimal_tests"
#:configure-flags
'("-DBUILD_SHARED_LIBS=ON")))
(synopsis "General purpose cryptographic library")

View file

@ -1,7 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013, 2014, 2015, 2021 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2014, 2015 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2016, 2017, 2018, 2020, 2021 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016, 2017, 2018, 2020, 2021, 2022 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016, 2017 Nikita <nikita@n0.is>
;;; Copyright © 20172021 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2017, 2018, 2019, 2021 Eric Bavier <bavier@posteo.net>
@ -28,6 +28,7 @@
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu packages tor)
#:use-module (guix gexp)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
#:use-module (guix utils)
@ -57,38 +58,40 @@
(define-public tor
(package
(name "tor")
(version "0.4.6.10")
(version "0.4.7.7")
(source (origin
(method url-fetch)
(uri (string-append "https://dist.torproject.org/tor-"
version ".tar.gz"))
(sha256
(base32
"077374vqk9mxi63viksq5zwn05i4xa2bqcihwwxz6n750h7ddk4l"))
(patches (search-patches "tor-sandbox-i686.patch"))))
"0i2v3a2h7d0bjn64pi1c6h2x15lb53plf71xwkbkb51bnmc124ry"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags
(list "--enable-lzma"
"--enable-zstd")
#:phases
(modify-phases %standard-phases
(add-before 'check 'skip-practracker
;; This is a style linter. It doesn't get to throw fatal errors.
(lambda _
(setenv "TOR_DISABLE_PRACTRACKER" "set")))
,@(if (or (target-aarch64?)
(target-ppc32?))
;; Work around upstream issue relating to sandboxing and glibc-2.33.
;; This is similar to the issue the tor-sandbox-i686 patch fixes
;; but for other architectures.
;; https://gitlab.torproject.org/tpo/core/tor/-/issues/40381
;; https://gitlab.torproject.org/tpo/core/tor/-/merge_requests/446
`((add-before 'check 'adjust-test-suite
(list #:configure-flags
#~(list "--enable-lzma"
"--enable-zstd")
#:phases
#~(modify-phases %standard-phases
(add-before 'check 'skip-practracker
;; This is a style linter. It doesn't get to throw fatal errors.
(lambda _
(substitute* "src/test/test_include.sh"
((".*Sandbox 1.*") "")))))
'()))))
(setenv "TOR_DISABLE_PRACTRACKER" "set")))
#$@(if (or (target-x86-64?)
(target-x86-32?))
'()
;; Work around upstream issues relating to libseccomp,
;; sandboxing and glibc-2.33. This is similar to the issue
;; the tor-sandbox-i686 patch fixes but for other architectures.
;; https://gitlab.torproject.org/tpo/core/tor/-/issues/40381
;; https://gitlab.torproject.org/tpo/core/tor/-/issues/40599
;; https://gitlab.torproject.org/tpo/core/tor/-/merge_requests/446
`((add-before 'check 'adjust-test-suite
(lambda _
(substitute* "src/test/test_include.sh"
((".*Sandbox 1.*") ""))
(substitute* "src/test/test.c"
((".*sandbox_tests.*") "")))))))))
(native-inputs
(list pkg-config python)) ; for tests
(inputs
@ -121,9 +124,9 @@ instead.")
(name "tor-client")
(arguments
(substitute-keyword-arguments (package-arguments tor)
((#:configure-flags flags)
(append flags
'("--disable-module-relay")))))
((#:configure-flags flags #~'())
#~(append #$flags
(list "--disable-module-relay")))))
(synopsis "Client to the anonymous Tor network")
(description
"Tor protects you by bouncing your communications around a distributed

View file

@ -5,6 +5,7 @@
;;; Copyright © 2016, 2020, 2022 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2020 Marius Bakke <marius@gnu.org>
;;; Copyright © 2022 Denis Carikli <GNUtoo@cyberdimension.org>
;;;
;;; This file is part of GNU Guix.
;;;
@ -22,13 +23,16 @@
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu packages valgrind)
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix build-system gnu)
#:use-module (guix download)
#:use-module (guix gexp)
#:use-module (guix licenses)
#:use-module (guix packages)
#:use-module (guix utils)
#:use-module (gnu packages)
#:use-module (gnu packages base)
#:use-module (gnu packages gdb)
#:use-module (gnu packages perl)
#:use-module (gnu packages))
#:use-module (gnu packages perl))
(define-public valgrind
(package
@ -92,9 +96,57 @@ also use Valgrind to build new tools.")
(define-public valgrind/interactive
(package/inherit
valgrind
(version "3.17.0")
(source (origin
(method url-fetch)
(uri (list (string-append "https://sourceware.org/pub/valgrind"
"/valgrind-" version ".tar.bz2")
(string-append "ftp://sourceware.org/pub/valgrind"
"/valgrind-" version ".tar.bz2")))
(sha256
(base32
"18l5jbk301j3462gipqn9bkfx44mdmwn0pwr73r40gl1irkfqfmd"))
(patches (search-patches
"valgrind-enable-arm.patch"
"valgrind-fix-default-debuginfo-path.patch"))))
(inputs
;; GDB is needed to provide a sane default for `--db-command'.
`(("gdb" ,gdb)))
(list gdb `(,(canonical-package glibc) "debug")))
(arguments
(substitute-keyword-arguments (package-arguments valgrind)
((#:phases phases #~%standard-phases)
#~(modify-phases #$phases
(add-before 'configure 'patch-default-debuginfo-path
(lambda* (#:key inputs #:allow-other-keys)
;; This helps Valgrind find the debug symbols of ld.so.
;; Without it, Valgrind does not work in a Guix shell
;; container and cannot be used as-is during packages tests
;; phases.
;; TODO: Remove on the next rebuild cycle, when libc is not
;; longer fully stripped.
(define libc-debug
(string-append (ungexp (this-package-input "glibc") "debug")
"/lib/debug"))
(substitute* '("coregrind/m_debuginfo/readelf.c"
"docs/xml/manual-core-adv.xml"
"docs/xml/manual-core.xml")
(("DEFAULT_DEBUGINFO_PATH")
libc-debug))
;; We also need to account for the bigger path in
;; the malloc-ed variables.
(substitute* '("coregrind/m_debuginfo/readelf.c")
(("DEBUGPATH_EXTRA_BYTES_1")
(number->string
(+ (string-length libc-debug)
(string-length "/.build-id//.debug")
1))))
(substitute* '("coregrind/m_debuginfo/readelf.c")
(("DEBUGPATH_EXTRA_BYTES_2")
(number->string
(+ (string-length libc-debug)
(string-length "/usr/lib/debug")
1))))))))))
(properties '())))
(define-public valgrind-3.18
@ -102,12 +154,11 @@ also use Valgrind to build new tools.")
(inherit valgrind/interactive)
(version "3.18.1")
(source (origin
(method url-fetch)
(inherit (package-source valgrind/interactive))
(uri (list (string-append "https://sourceware.org/pub/valgrind"
"/valgrind-" version ".tar.bz2")
(string-append "ftp://sourceware.org/pub/valgrind"
"/valgrind-" version ".tar.bz2")))
(sha256
(base32
"1xgph509i6adv9w2glviw3xrmlz0dssg8992hbvxsbkp7ahrm180"))
(patches (search-patches "valgrind-enable-arm.patch"))))))
"1xgph509i6adv9w2glviw3xrmlz0dssg8992hbvxsbkp7ahrm180"))))))

View file

@ -1,7 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013 Nikita Karetnikov <nikita@karetnikov.org>
;;; Copyright © 2013 Cyril Roelandt <tipecaml@gmail.com>
;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2013-2022 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2013, 2014 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2015, 2016 Mathieu Lirzin <mthl@gnu.org>
;;; Copyright © 2014, 2015, 2016 Mark H Weaver <mhw@netris.org>
@ -874,7 +874,14 @@ write native speed custom Git applications in any language with bindings.")
"1fjdglkh04qv3b4alg621pxa689i0wlf8m7nf2755zawjr2zhwxd"))
(patches (search-patches "libgit2-mtime-0.patch"))
(snippet '(begin
(delete-file-recursively "deps") #t))
(delete-file-recursively "deps")
;; The "refs:revparse::date" test is time-dependent: it
;; assumes "HEAD@{10 years ago}" doesn't match anything,
;; which is no longer true. Adjust that test.
(substitute* "tests/refs/revparse.c"
(("10 years ago")
"100 years ago"))))
(modules '((guix build utils)))))))
(define-public git-crypt
@ -2564,13 +2571,13 @@ based on a manifest file published by servers.")
(define-public b4
(package
(name "b4")
(version "0.6.2")
(version "0.8.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "b4" version))
(sha256
(base32 "1j904dy9cwxl85k2ngc498q5cdnqwsmw3jibjr1m55w8aqdck68z"))
(base32 "115ysciq15sxc8fd9hf7p0f4wnd5xapcfkmq8g33y1c8nbdxclbx"))
(modules '((guix build utils)))
(snippet
'(begin

View file

@ -77,7 +77,7 @@
(define-public vim
(package
(name "vim")
(version "8.2.4701")
(version "8.2.4912")
(source (origin
(method git-fetch)
(uri (git-reference
@ -86,7 +86,7 @@
(file-name (git-file-name name version))
(sha256
(base32
"0yqqzai3ihfjjjjmn50pxlcqllpkmlrf5z59ma5rn0gv8wwwdw7h"))))
"0wcvwmybkw76ha58idrq6pf4gxk14wbw1f8cwqs0slvkfdc8jyya"))))
(build-system gnu-build-system)
(arguments
`(#:test-target "test"
@ -95,12 +95,11 @@
(modify-phases %standard-phases
(add-after 'configure 'patch-absolute-paths
(lambda _
(substitute* "runtime/tools/mve.awk"
(("/usr/bin/nawk") (which "gawk")))
(substitute* '("src/testdir/Makefile"
"src/testdir/test_filetype.vim"
"src/testdir/test_normal.vim"
"src/testdir/test_popupwin.vim"
"src/testdir/test_prompt_buffer.vim"
"src/testdir/test_shell.vim"
"src/testdir/test_suspend.vim"
"src/testdir/test_terminal.vim"
@ -123,15 +122,6 @@
(substitute* "src/testdir/test_writefile.vim"
(("!has\\('bsd'\\)") "0")))
;; This test assumes that PID 1 is run as root and that the user
;; running the test suite does not have permission to kill(1, 0)
;; it. This is not true in the build container, where both PID 1
;; and the test suite are run as the same user. Skip the test.
;; An alternative fix would be to patch the PID used to a random
;; 32-bit value and hope it never shows up in the test environment.
(substitute* "src/testdir/test_swap.vim"
(("if !IsRoot\\(\\)") "if 0"))
;; These tests check how the terminal looks after executing some
;; actions. The path of the bash binary is shown, which results in
;; a difference being detected. Patching the expected result is

View file

@ -158,41 +158,44 @@ management, extensions such as advertisement blocker and colorful tabs.")
(define-public links
(package
(name "links")
(version "2.25")
(version "2.26")
(source (origin
(method url-fetch)
(uri (string-append "http://links.twibright.com/download/"
"links-" version ".tar.bz2"))
(sha256
(base32
"0b6x97xi8i4pag2scba02c0h95cm3sia58q99zppk0lfd448bmrd"))))
"1jy90k04kl7y3l8jzg5jx7fglyqzngng0964j7j67gjxy9vkanzh"))))
(build-system gnu-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(replace 'configure
(lambda* (#:key outputs #:allow-other-keys)
;; The tarball uses a very old version of autoconf. It doesn't
;; understand extra flags like `--enable-fast-install', so
;; we need to invoke it with just what it understands.
(let ((out (assoc-ref outputs "out")))
;; 'configure' doesn't understand '--host'.
,@(if (%current-target-system)
`((setenv "CHOST" ,(%current-target-system)))
'())
(setenv "CONFIG_SHELL" (which "bash"))
(invoke "./configure"
(string-append "--prefix=" out)
"--enable-graphics")))))))
(list
#:configure-flags #~(list "--enable-graphics")
#:phases
#~(modify-phases %standard-phases
(replace 'configure
(lambda* (#:key outputs (configure-flags '()) #:allow-other-keys)
;; The tarball uses a very old version of autoconf. It doesn't
;; understand extra flags like `--enable-fast-install', so
;; we need to invoke it with just what it understands.
(let ((out (assoc-ref outputs "out")))
;; 'configure' doesn't understand '--host'.
#$@(if (%current-target-system)
#~((setenv "CHOST" #$(%current-target-system)))
#~())
(setenv "CONFIG_SHELL" (which "bash"))
(apply invoke "./configure"
(string-append "--prefix=" out)
configure-flags)))))))
(native-inputs (list pkg-config))
(inputs `(("gpm" ,gpm)
("libevent" ,libevent)
("libjpeg" ,libjpeg-turbo)
("libpng" ,libpng)
("libtiff" ,libtiff)
("libxt" ,libxt)
("openssl" ,openssl)
("zlib" ,zlib)))
(inputs
(list gpm
libevent
libjpeg-turbo
libpng
libtiff
libxt
openssl
zlib))
(synopsis "Text and graphics mode web browser")
(description "Links is a graphics and text mode web browser, with many
features including, tables, builtin image display, bookmarks, SSL and more.")

View file

@ -52,6 +52,7 @@
;;; Copyright © 2022 Gabriel Wicki <gabriel@erlikon.ch>
;;; Copyright © 2022 Jai Vetrivelan <jaivetrivelan@gmail.com>
;;; Copyright © 2022 Daniel Meißner <daniel.meissner-i4k@ruhr-uni-bochum.de>
;;; Copyright © 2022 Pier-Hugues Pellerin <ph@heykimo.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -103,6 +104,7 @@
#:use-module (gnu packages glib)
#:use-module (gnu packages gperf)
#:use-module (gnu packages gtk)
#:use-module (gnu packages gnome)
#:use-module (gnu packages haskell-check)
#:use-module (gnu packages haskell-web)
#:use-module (gnu packages haskell-xyz)
@ -2714,3 +2716,31 @@ which do not support it.")
(synopsis "Logout menu for Wayland")
(description "wlogout is a logout menu for Wayland environments.")
(license license:expat)))
(define-public avizo
(package
(name "avizo")
(version "1.2")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/misterdanb/avizo")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"02h2jbgrbl2hyq6bzwryc1r47mipgdqrdh7zi44skc25w045s6q5"))))
(build-system meson-build-system)
(inputs (list gtk+))
(native-inputs
(list vala
`(,glib "bin")
gobject-introspection
gtk-layer-shell
pkg-config))
(home-page "https://github.com/misterdanb/avizo")
(synopsis "Notification daemon for Sway")
(description
"Avizo is a simple notification daemon for Sway, mainly intended to be
used for multimedia keys.")
(license license:gpl3+)))

View file

@ -387,6 +387,30 @@ layers (evdev and uinput), making remapping work in almost all the places.")
state.")
(license license:gpl3+)))
(define-public xkblayout
;; Upstream doesn't have any version numbers
(let ((version "0.0.0")
(revision "0")
(commit "c0851b0f4bc9bc1a07240605baac8e50abe63fa8"))
(package
(name "xkblayout")
(version (git-version version revision commit))
(home-page "https://gitlab.freedesktop.org/whot/xkblayout")
(source
(origin
(method git-fetch)
(uri (git-reference
(url home-page)
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "0057988l5l7pmwg7dp6cqvj5l4lr0g5z3wq189g6kz36l9rmh675"))))
(build-system python-build-system)
(synopsis "XKB layout template generator")
(description "xkblayout is a CLI application to generate templates for
a new XKB layout, either in the user's home directory or the system directory.")
(license license:gpl3+))))
(define-public xclip
(package
(name "xclip")
@ -3050,3 +3074,4 @@ MouseKeys-acceleration management.")
that support @samp{wlr-gamma-control-unstable-v1}. It is also known as a blue
light filter or night light.")
(license license:expat)))

View file

@ -7,7 +7,7 @@
;;; Copyright © 2015 Paul van der Walt <paul@denknerd.org>
;;; Copyright © 2015, 2016, 2017, 2019 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2017, 2018, 2019, 2020 Marius Bakke <marius@gnu.org>
;;; Copyright © 20182021 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 20182022 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018 Leo Famulari <leo@famulari.name>
;;; Copyright © 2020 Vincent Legoll <vincent.legoll@gmail.com>
;;; Copyright © 2021 Brendan Tildesley <mail@brendan.scot>
@ -476,7 +476,7 @@ things in between.")
(define-public libshout
(package
(name "libshout")
(version "2.4.5")
(version "2.4.6")
(source (origin
(method url-fetch)
(uri (string-append
@ -484,7 +484,7 @@ things in between.")
"libshout-" version ".tar.gz"))
(sha256
(base32
"1438da40y73y9068saxrbmm27qq6xqmmzsziwgmr8fb7i9k6irfr"))))
"0469yzc1csm25f5dbyb7ly7i1mzjz13pw8c8bmswkpfzxzqd9jrr"))))
(build-system gnu-build-system)
(native-inputs
(list pkg-config))

View file

@ -219,8 +219,6 @@
pam-limits-service-type
pam-limits-service
references-file
%base-services))
;;; Commentary:
@ -1768,26 +1766,6 @@ proxy of 'guix-daemon'...~%")
(substitute-key-authorization authorized-keys guix)
#~#f))))
(define* (references-file item #:optional (name "references"))
"Return a file that contains the list of references of ITEM."
(if (struct? item) ;lowerable object
(computed-file name
(with-extensions (list guile-gcrypt) ;for store-copy
(with-imported-modules (source-module-closure
'((guix build store-copy)))
#~(begin
(use-modules (guix build store-copy))
(call-with-output-file #$output
(lambda (port)
(write (map store-info-item
(call-with-input-file "graph"
read-reference-graph))
port))))))
#:options `(#:local-build? #f
#:references-graphs (("graph" ,item))))
(plain-file name "()")))
(define guix-service-type
(service-type
(name 'guix)
@ -1877,13 +1855,7 @@ raise a deprecation warning if the 'compression-level' field was used."
(match-record config <guix-publish-configuration>
(guix port host nar-path cache workers ttl negative-ttl
cache-bypass-threshold advertise?)
(list (shepherd-service
(provision '(guix-publish))
(requirement `(user-processes
guix-daemon
,@(if advertise? '(avahi-daemon) '())))
(start #~(make-forkexec-constructor
(list #$(file-append guix "/bin/guix")
(let ((command #~(list #$(file-append guix "/bin/guix")
"publish" "-u" "guix-publish"
"-p" #$(number->string port)
#$@(config->compression-options config)
@ -1913,17 +1885,39 @@ raise a deprecation warning if the 'compression-level' field was used."
"--cache-bypass-threshold="
(number->string
cache-bypass-threshold)))
#~()))
#~())))
(options #~(#:environment-variables
;; Make sure we run in a UTF-8 locale so we can produce
;; nars for packages that contain UTF-8 file names such
;; as 'nss-certs'. See <https://bugs.gnu.org/26948>.
(list (string-append "GUIX_LOCPATH="
#$glibc-utf8-locales "/lib/locale")
"LC_ALL=en_US.utf8")
#:log-file "/var/log/guix-publish.log"))
(endpoints #~(let ((ai (false-if-exception
(getaddrinfo #$host
#$(number->string port)
AI_NUMERICSERV))))
(if (pair? ai)
(list (endpoint (addrinfo:addr (car ai))))
'()))))
(list (shepherd-service
(provision '(guix-publish))
(requirement `(user-processes
guix-daemon
,@(if advertise? '(avahi-daemon) '())))
;; Make sure we run in a UTF-8 locale so we can produce
;; nars for packages that contain UTF-8 file names such
;; as 'nss-certs'. See <https://bugs.gnu.org/26948>.
#:environment-variables
(list (string-append "GUIX_LOCPATH="
#$glibc-utf8-locales "/lib/locale")
"LC_ALL=en_US.utf8")
#:log-file "/var/log/guix-publish.log"))
(stop #~(make-kill-destructor))))))
;; Use lazy socket activation unless ADVERTISE? is true: in that
;; case the process should start right away to advertise itself.
(start #~(if (and (defined? 'make-systemd-constructor) ;> 0.9.0?
#$(not advertise?))
(make-systemd-constructor
#$command #$endpoints #$@options)
(make-forkexec-constructor #$command #$@options)))
(stop #~(if (and (defined? 'make-systemd-destructor)
#$(not advertise?))
(make-systemd-destructor)
(make-kill-destructor))))))))
(define %guix-publish-accounts
(list (user-group (name "guix-publish") (system? #t))

View file

@ -1,6 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2015 David Thompson <davet@gnu.org>
;;; Copyright © 2015, 2016 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2015, 2016, 2022 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2016 Leo Famulari <leo@famulari.name>
;;; Copyright © 2017 Christopher Baines <mail@cbaines.net>
;;; Copyright © 2018 Clément Lassieur <clement@lassieur.org>
@ -328,7 +328,8 @@ host all all ::1/128 md5"))
profile-service-type
(compose list postgresql-configuration-postgresql))))
(default-value (postgresql-configuration
(postgresql postgresql-10)))))
(postgresql postgresql-10)))
(description "Run the PostgreSQL database server.")))
(define-deprecated (postgresql-service #:key (postgresql postgresql)
(port 5432)
@ -514,7 +515,10 @@ created after the PostgreSQL database is started.")))
(const memcached-activation))
(service-extension account-service-type
(const %memcached-accounts))))
(default-value (memcached-configuration))))
(default-value (memcached-configuration))
(description "Run @command{memcached}, a daemon that provides
an in-memory caching service, intended for use by dynamic web
applications.")))
;;;
@ -680,7 +684,9 @@ FLUSH PRIVILEGES;
%mysql-activation)
(service-extension shepherd-root-service-type
mysql-shepherd-services)))
(default-value (mysql-configuration))))
(default-value (mysql-configuration))
(description "Run the MySQL or MariaDB database server,
@command{mysqld}.")))
(define-deprecated (mysql-service #:key (config (mysql-configuration)))
mysql-service-type
@ -759,4 +765,5 @@ FLUSH PRIVILEGES;
redis-activation)
(service-extension account-service-type
(const %redis-accounts))))
(default-value (redis-configuration))))
(default-value (redis-configuration))
(description "Run Redis, a caching key/value store.")))

View file

@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2014-2021 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2014-2022 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2015 Andy Wingo <wingo@igalia.com>
;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2016 Sou Bunnbu <iyzsong@gmail.com>
@ -366,7 +366,11 @@ users are allowed."
(list (service-extension dbus-root-service-type
geoclue-dbus-service)
(service-extension account-service-type
(const %geoclue-accounts))))))
(const %geoclue-accounts))))
(description "Run the @command{geoclue} location service.
This service provides a D-Bus interface to allow applications to request
access to a user's physical location, and optionally to add information to
online location databases.")))
(define* (geoclue-service #:key (geoclue geoclue)
(whitelist '())
@ -914,7 +918,11 @@ screens and scanners.")))
;; Profile 'udisksctl' & co. in the system profile.
(service-extension profile-service-type
udisks-package))))))
udisks-package)))
(description "Run UDisks, a @dfn{disk management} daemon
that provides user interfaces with notifications and ways to mount/unmount
disks. Programs that talk to UDisks include the @command{udisksctl} command,
part of UDisks, and GNOME Disks."))))
(define* (udisks-service #:key (udisks udisks))
"Return a service for @uref{http://udisks.freedesktop.org/docs/latest/,
@ -1129,7 +1137,12 @@ seats.)"
;; We need /run/user, /run/systemd, etc.
(service-extension file-system-service-type
(const %elogind-file-systems))))
(default-value (elogind-configuration))))
(default-value (elogind-configuration))
(description "Run the @command{elogind} login and seat
management service. The @command{elogind} service integrates with PAM to
allow other system components to know the set of logged-in users as well as
their session types (graphical, console, remote, etc.). It can also clean up
after users when they log out.")))
(define* (elogind-service #:key (config (elogind-configuration)))
"Return a service that runs the @command{elogind} login and seat management
@ -1177,7 +1190,11 @@ when they log out."
(const %accountsservice-activation))
(service-extension dbus-root-service-type list)
(service-extension polkit-service-type list)))
(default-value accountsservice)))
(default-value accountsservice)
(description "Run AccountsService, a system service available
over D-Bus that can list available accounts, change their passwords, and so
on. AccountsService integrates with PolicyKit to enable unprivileged users to
acquire the capability to modify their system configuration.")))
(define* (accountsservice-service #:key (accountsservice accountsservice))
"Return a service that runs AccountsService, a system service that

View file

@ -1,6 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2016 Sou Bunnbu <iyzsong@gmail.com>
;;; Copyright © 2016, 2017, 2018, 2020 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2016, 2017, 2018, 2020, 2022 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2017 Huang Ying <huang.ying.caritas@gmail.com>
;;;
;;; This file is part of GNU Guix.
@ -22,12 +22,15 @@
#:use-module (guix gexp)
#:use-module (guix records)
#:use-module (guix modules)
#:use-module (guix least-authority)
#:use-module (gnu services)
#:use-module (gnu services shepherd)
#:use-module (gnu system shadow)
#:use-module ((gnu packages admin) #:select (shadow))
#:use-module (gnu packages dico)
#:use-module (gnu packages dictionaries)
#:autoload (gnu build linux-container) (%namespaces)
#:autoload (gnu system file-systems) (file-system-mapping)
#:use-module (srfi srfi-1)
#:use-module (srfi srfi-26)
#:use-module (ice-9 match)
@ -142,27 +145,44 @@ database {
(chown rundir (passwd:uid user) (passwd:gid user)))))
(define (dicod-shepherd-service config)
(let ((dicod (file-append (dicod-configuration-dico config)
"/bin/dicod"))
(dicod.conf (dicod-configuration-file config)))
(with-imported-modules (source-module-closure
'((gnu build shepherd)
(gnu system file-systems)))
(list (shepherd-service
(provision '(dicod))
(requirement '(user-processes))
(documentation "Run the dicod daemon.")
(modules '((gnu build shepherd)
(gnu system file-systems)))
(start #~(make-forkexec-constructor/container
(list #$dicod "--foreground"
(string-append "--config=" #$dicod.conf))
#:user "dicod" #:group "dicod"
#:mappings (list (file-system-mapping
(source "/var/run/dicod")
(target source)
(writable? #t)))))
(stop #~(make-kill-destructor)))))))
(let* ((dicod.conf (dicod-configuration-file config))
(interfaces (dicod-configuration-interfaces config))
(dicod (least-authority-wrapper
(file-append (dicod-configuration-dico config)
"/bin/dicod")
#:name "dicod"
#:mappings (list (file-system-mapping
(source "/var/run/dicod")
(target source)
(writable? #t))
(file-system-mapping
(source "/dev/log")
(target source))
(file-system-mapping
(source dicod.conf)
(target source)))
#:namespaces (delq 'net %namespaces))))
(list (shepherd-service
(provision '(dicod))
(requirement '(user-processes))
(documentation "Run the dicod daemon.")
(start #~(if (and (defined? 'make-inetd-constructor)
#$(= 1 (length interfaces))) ;XXX
(make-inetd-constructor
(list #$dicod "--inetd" "--foreground"
(string-append "--config=" #$dicod.conf))
(addrinfo:addr
(car (getaddrinfo #$(first interfaces) "dict")))
#:user "dicod" #:group "dicod"
#:service-name-stem "dicod")
(make-forkexec-constructor
(list #$dicod "--foreground"
(string-append "--config=" #$dicod.conf))
#:user "dicod" #:group "dicod")))
(stop #~(if (and (defined? 'make-inetd-destructor)
#$(= 1 (length interfaces))) ;XXX
(make-inetd-destructor)
(make-kill-destructor)))))))
(define dicod-service-type
(service-type

View file

@ -1,5 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2018 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2022 Ludovic Courtès <ludo@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@ -22,6 +23,9 @@
#:use-module (gnu packages admin)
#:use-module (gnu packages games)
#:use-module (gnu system shadow)
#:use-module ((gnu system file-systems) #:select (file-system-mapping))
#:use-module (gnu build linux-container)
#:autoload (guix least-authority) (least-authority-wrapper)
#:use-module (guix gexp)
#:use-module (guix modules)
#:use-module (guix records)
@ -56,19 +60,34 @@
(define wesnothd-shepherd-service
(match-lambda
(($ <wesnothd-configuration> package port)
(with-imported-modules (source-module-closure
'((gnu build shepherd)))
(let ((wesnothd (least-authority-wrapper
(file-append package "/bin/wesnothd")
#:name "wesnothd"
#:mappings (list (file-system-mapping
(source "/var/run/wesnothd")
(target source)
(writable? #t)))
#:namespaces (delq 'net %namespaces))))
(shepherd-service
(documentation "The Battle for Wesnoth server")
(provision '(wesnoth-daemon))
(requirement '(networking))
(modules '((gnu build shepherd)))
(start #~(make-forkexec-constructor/container
(list #$(file-append package "/bin/wesnothd")
"-p" #$(number->string port))
(start #~(make-forkexec-constructor
(list #$wesnothd "-p" #$(number->string port))
#:user "wesnothd" #:group "wesnothd"))
(stop #~(make-kill-destructor)))))))
(define wesnothd-activation
(with-imported-modules '((guix build utils))
#~(begin
(use-modules (guix build utils))
(let* ((user (getpw "wesnothd"))
(directory "/var/run/wesnothd"))
;; wesnothd creates a Unix-domain socket in DIRECTORY.
(mkdir-p directory)
(chown directory (passwd:uid user) (passwd:gid user))))))
(define wesnothd-service-type
(service-type
(name 'wesnothd)
@ -77,6 +96,8 @@
(extensions
(list (service-extension account-service-type
(const %wesnothd-accounts))
(service-extension activation-service-type
(const wesnothd-activation))
(service-extension shepherd-root-service-type
(compose list wesnothd-shepherd-service))))
(default-value (wesnothd-configuration))))

View file

@ -410,8 +410,10 @@ machine does not have a keytab.")
(service-type (name 'krb5)
(extensions
(list (service-extension etc-service-type
krb5-etc-service)))))
krb5-etc-service)))
(description "Programs using a Kerberos client library
normally expect a configuration file in @file{/etc/krb5.conf}. This service
generates such a file. It does not cause any daemon to be started.")))
@ -455,4 +457,8 @@ machine does not have a keytab.")
(extensions
(list
(service-extension pam-root-service-type
pam-krb5-pam-services)))))
pam-krb5-pam-services)))
(description "The @code{pam-krb5} service allows for login
authentication and password management via Kerberos. You will need this
service if you want PAM-enabled applications to authenticate users using
Kerberos.")))

View file

@ -1,6 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2015 Alex Kost <alezost@gmail.com>
;;; Copyright © 2015, 2016 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2015, 2016, 2022 Ludovic Courtès <ludo@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@ -79,7 +79,9 @@
(list (service-extension shepherd-root-service-type
lirc-shepherd-service)
(service-extension activation-service-type
(const %lirc-activation))))))
(const %lirc-activation))))
(description "Run LIRC, a daemon that decodes infrared signals
from remote controls.")))
(define* (lirc-service #:key (lirc lirc)
device driver config-file

View file

@ -1600,7 +1600,9 @@ greyed out, instead of only later giving \"not selectable\" popup error.
(service-extension pam-root-service-type
(const %dovecot-pam-services))
(service-extension activation-service-type
%dovecot-activation)))))
%dovecot-activation)))
(description "Run Dovecot, a mail server that can run POP3,
IMAP, and LMTP.")))
(define* (dovecot-service #:key (config (dovecot-configuration)))
"Return a service that runs @command{dovecot}, a mail server that can run
@ -1729,7 +1731,9 @@ match from local for any action outbound
(service-extension profile-service-type
(compose list opensmtpd-configuration-package))
(service-extension shepherd-root-service-type
opensmtpd-shepherd-service)))))
opensmtpd-shepherd-service)))
(description "Run the OpenSMTPD, a lightweight @acronym{SMTP, Simple Mail
Transfer Protocol} server.")))
;;;
@ -1754,7 +1758,9 @@ match from local for any action outbound
(extensions
(list (service-extension etc-service-type mail-aliases-etc)))
(compose concatenate)
(extend append)))
(extend append)
(description "Provide a @file{/etc/aliases} file---an email alias
database---computed from the given alias list.")))
;;;
@ -1831,7 +1837,8 @@ exim_group = exim
(service-extension account-service-type (const %exim-accounts))
(service-extension activation-service-type exim-activation)
(service-extension profile-service-type exim-profile)
(service-extension mail-aliases-service-type (const '()))))))
(service-extension mail-aliases-service-type (const '()))))
(description "Run the Exim mail transfer agent (MTA).")))
;;;

View file

@ -1,7 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2017, 2018 Clément Lassieur <clement@lassieur.org>
;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
;;; Copyright © 2015, 2017, 2018, 2019, 2020 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2015, 2017-2020, 2022 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2018 Pierre-Antoine Rouby <contact@parouby.fr>
;;;
;;; This file is part of GNU Guix.
@ -28,11 +28,14 @@
#:use-module (gnu services shepherd)
#:use-module (gnu services configuration)
#:use-module (gnu system shadow)
#:autoload (gnu build linux-container) (%namespaces)
#:use-module ((gnu system file-systems) #:select (file-system-mapping))
#:use-module (guix gexp)
#:use-module (guix modules)
#:use-module (guix records)
#:use-module (guix packages)
#:use-module (guix deprecation)
#:use-module (guix least-authority)
#:use-module (srfi srfi-1)
#:use-module (srfi srfi-35)
#:use-module (ice-9 match)
@ -821,7 +824,20 @@ string, you could instantiate a prosody service like this:
DaemonInterface = " interface "
DaemonPort = " (number->string port) "
PluginDir = " plugins "/lib/bitlbee
" extra-settings)))
" extra-settings))
(bitlbee* (least-authority-wrapper
(file-append bitlbee "/sbin/bitlbee")
#:name "bitlbee"
#:preserved-environment-variables
'("PURPLE_PLUGIN_PATH")
#:mappings (list (file-system-mapping
(source "/var/lib/bitlbee")
(target source)
(writable? #t))
(file-system-mapping
(source conf)
(target conf)))
#:namespaces (delq 'net %namespaces))))
(with-imported-modules (source-module-closure
'((gnu build shepherd)
@ -836,21 +852,40 @@ string, you could instantiate a prosody service like this:
(modules '((gnu build shepherd)
(gnu system file-systems)))
(start #~(make-forkexec-constructor/container
(list #$(file-append bitlbee "/sbin/bitlbee")
"-n" "-F" "-u" "bitlbee" "-c" #$conf)
(start #~(if (defined? 'make-inetd-constructor)
;; Allow 'bitlbee-purple' to use libpurple plugins.
#:environment-variables
(list (string-append "PURPLE_PLUGIN_PATH="
#$plugins "/lib/purple-2"))
(make-inetd-constructor
(list #$bitlbee* "-I"
"-u" "bitlbee" "-c" #$conf)
(addrinfo:addr
(car (getaddrinfo #$interface
#$(number->string port)
(logior AI_NUMERICHOST
AI_NUMERICSERV))))
#:service-name-stem "bitlbee"
#:pid-file "/var/run/bitlbee.pid"
#:mappings (list (file-system-mapping
(source "/var/lib/bitlbee")
(target source)
(writable? #t)))))
(stop #~(make-kill-destructor)))))))))
;; Allow 'bitlbee-purple' to use libpurple plugins.
#:environment-variables
(list (string-append "PURPLE_PLUGIN_PATH="
#$plugins "/lib/purple-2")))
(make-forkexec-constructor/container
(list #$(file-append bitlbee "/sbin/bitlbee")
"-n" "-F" "-u" "bitlbee" "-c" #$conf)
;; Allow 'bitlbee-purple' to use libpurple plugins.
#:environment-variables
(list (string-append "PURPLE_PLUGIN_PATH="
#$plugins "/lib/purple-2"))
#:pid-file "/var/run/bitlbee.pid"
#:mappings (list (file-system-mapping
(source "/var/lib/bitlbee")
(target source)
(writable? #t))))))
(stop #~(if (defined? 'make-inetd-destructor)
(make-inetd-destructor)
(make-kill-destructor))))))))))
(define %bitlbee-accounts
;; User group and account to run BitlBee.
@ -908,29 +943,31 @@ a gateway between IRC and chat networks.")))
(define quassel-shepherd-service
(match-lambda
(($ <quassel-configuration> quassel interface port loglevel)
(with-imported-modules (source-module-closure
'((gnu build shepherd)
(gnu system file-systems)))
(let ((quassel (least-authority-wrapper
(file-append quassel "/bin/quasselcore")
#:name "quasselcore"
#:mappings (list (file-system-mapping
(source "/var/lib/quassel")
(target source)
(writable? #t))
(file-system-mapping
(source "/var/log/quassel")
(target source)
(writable? #t)))
;; XXX: The daemon needs to live in the main user
;; namespace, as root, so it can access /var/lib/quassel
;; owned by "quasselcore".
#:namespaces (fold delq %namespaces '(net user)))))
(list (shepherd-service
(provision '(quassel))
(requirement '(user-processes networking))
(modules '((gnu build shepherd)
(gnu system file-systems)))
(start #~(make-forkexec-constructor/container
(list #$(file-append quassel "/bin/quasselcore")
"--configdir=/var/lib/quassel"
"--logfile=/var/log/quassel/core.log"
(string-append "--loglevel=" #$loglevel)
(string-append "--port=" (number->string #$port))
(string-append "--listen=" #$interface))
#:mappings (list (file-system-mapping
(source "/var/lib/quassel")
(target source)
(writable? #t))
(file-system-mapping
(source "/var/log/quassel")
(target source)
(writable? #t)))))
(start #~(make-forkexec-constructor
(list #$quassel
"--configdir=/var/lib/quassel"
"--logfile=/var/log/quassel/core.log"
(string-append "--loglevel=" #$loglevel)
(string-append "--port=" (number->string #$port))
(string-append "--listen=" #$interface))))
(stop #~(make-kill-destructor))))))))
(define %quassel-account

View file

@ -419,7 +419,10 @@ configuration file."))
zabbix-server-account)
(service-extension activation-service-type
zabbix-server-activation)))
(default-value (zabbix-server-configuration))))
(default-value (zabbix-server-configuration))
(description "Run the Zabbix server, a high-performance monitoring system
that can collect data about machines from a variety of sources and provide the
results in a Web interface.")))
(define (generate-zabbix-server-documentation)
(generate-documentation
@ -546,7 +549,9 @@ configuration file."))
zabbix-agent-account)
(service-extension activation-service-type
zabbix-agent-activation)))
(default-value (zabbix-agent-configuration))))
(default-value (zabbix-agent-configuration))
(description "Run the Zabbix agent, @command{zabbix_agentd}, which gathers
information about the running system for the Zabbix monitoring server.")))
(define (generate-zabbix-agent-documentation)
(generate-documentation

Some files were not shown because too many files have changed in this diff Show more