me
/
guix
Archived
1
0
Fork 0

Merge branch 'master' into staging

master
Marius Bakke 2020-06-11 23:30:32 +02:00
commit 9b043df740
No known key found for this signature in database
GPG Key ID: A2A06DF2A33A54FA
71 changed files with 1996 additions and 952 deletions

View File

@ -89,6 +89,10 @@
(eval . (put 'with-database 'scheme-indent-function 2))
(eval . (put 'call-with-transaction 'scheme-indent-function 2))
(eval . (put 'with-statement 'scheme-indent-function 3))
(eval . (put 'call-with-retrying-transaction 'scheme-indent-function 2))
(eval . (put 'call-with-savepoint 'scheme-indent-function 1))
(eval . (put 'call-with-retrying-savepoint 'scheme-indent-function 1))
(eval . (put 'call-with-container 'scheme-indent-function 1))
(eval . (put 'container-excursion 'scheme-indent-function 1))

View File

@ -633,17 +633,17 @@ $(guix_install_go_files): install-nobase_dist_guilemoduleDATA
install-data-hook:
touch "$(DESTDIR)$(guileobjectdir)/guix/config.go"
# Commit corresponding to the 'v1.0.1' tag.
commit_v1_0_1 = d68de958b60426798ed62797ff7c96c327a672ac
# Commit corresponding to the 'v1.0.0' tag.
commit_v1_0_0 = 6298c3ffd9654d3231a6f25390b056483e8f407c
# Authenticate the current Git checkout by checking signatures on every commit
# starting from $(commit_v1_0_1).
# starting from $(commit_v1_0_0).
authenticate: guix/openpgp.go guix/git-authenticate.go guix/git.go
$(AM_V_at)echo "Authenticating Git checkout..." ; \
"$(top_builddir)/pre-inst-env" $(GUILE) \
--no-auto-compile -e git-authenticate \
"$(top_srcdir)/build-aux/git-authenticate.scm" \
"$(commit_v1_0_1)"
"$(commit_v1_0_0)"
# Assuming Guix is already installed and the daemon is up and running, this
# rule builds from $(srcdir), creating and building derivations.

View File

@ -16523,9 +16523,14 @@ Possible values are:
@deffn {Scheme Procedure} udisks-service [#:udisks @var{udisks}]
Return a service for @uref{https://udisks.freedesktop.org/docs/latest/,
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.
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. Note that Udisks relies on the @command{mount} command, so
it will only be able to use the file-system utilities installed in the
system profile. For example if you want to be able to mount NTFS
file-systems in read and write fashion, you'll need to have
@code{ntfs-3g} installed system-wide.
@end deffn
@deffn {Scheme Variable} colord-service-type

View File

@ -5,6 +5,7 @@
;;; Copyright © 2017, 2020 Mathieu Othacehe <m.othacehe@gmail.com>
;;; Copyright © 2019, 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2020 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2020 Stefan <stefan-guix@vodafonemail.de>
;;;
;;; This file is part of GNU Guix.
;;;
@ -135,41 +136,25 @@ file with the resolution provided in CONFIG."
(_ #f)))))
(define* (eye-candy config store-device store-mount-point
#:key store-directory-prefix system port)
#:key store-directory-prefix port)
"Return a gexp that writes to PORT (a port-valued gexp) the 'grub.cfg' part
concerned with graphics mode, background images, colors, and all that.
STORE-DEVICE designates the device holding the store, and STORE-MOUNT-POINT is
its mount point; these are used to determine where the background image and
fonts must be searched for. SYSTEM must be the target system string---e.g.,
\"x86_64-linux\". STORE-DIRECTORY-PREFIX is a directory prefix to prepend to
any store file name."
(define setup-gfxterm-body
(let ((gfxmode
(or (and-let* ((theme (bootloader-configuration-theme config))
(gfxmode (grub-theme-gfxmode theme)))
(string-join gfxmode ";"))
"auto")))
;; Intel and EFI systems need to be switched into graphics mode, whereas
;; most other modern architectures have no other mode and therefore
;; don't need to be switched.
;; XXX: Do we really need to restrict to x86 systems? We could imitate
;; what the GRUB default configuration does and decide based on whether
;; a user provided 'gfxterm' in the terminal-outputs field of their
;; bootloader-configuration record.
(if (string-match "^(x86_64|i[3-6]86)-" system)
(format #f "
set gfxmode=~a
insmod all_video
insmod gfxterm~%" gfxmode)
"")))
fonts must be searched for. STORE-DIRECTORY-PREFIX is a directory prefix to
prepend to any store file name."
(define (setup-gfxterm config font-file)
(if (memq 'gfxterm (bootloader-configuration-terminal-outputs config))
#~(format #f "if loadfont ~a; then
setup_gfxterm
fi~%" #+font-file)
#~(format #f "
if loadfont ~a; then
set gfxmode=~a
insmod all_video
insmod gfxterm
fi~%"
#+font-file
#$(string-join
(grub-theme-gfxmode (bootloader-theme config))
";"))
""))
(define (theme-colors type)
@ -190,8 +175,6 @@ fi~%" #+font-file)
(and image
#~(format #$port "
function setup_gfxterm {~a}
# Set 'root' to the partition that contains /gnu/store.
~a
@ -206,7 +189,6 @@ else
set menu_color_normal=cyan/blue
set menu_color_highlight=white/blue
fi~%"
#$setup-gfxterm-body
#$(grub-root-search store-device font-file)
#$(setup-gfxterm config font-file)
#$(grub-setup-io config)
@ -380,7 +362,6 @@ menuentry ~s {
device
mount-point
#:store-directory-prefix store-directory-prefix
#:system system
#:port #~port)))
(define keyboard-layout-config

View File

@ -321,7 +321,7 @@ improvement."
(define (boot-time-system)
"Return the '--system' argument passed on the kernel command line."
(find-long-option "--system" (if (string-contains %host-type "linux-gnu")
linux-command-line
(linux-command-line)
(command-line))))
(define* (activate-current-system

View File

@ -161,8 +161,7 @@ deduplicates files common to CLOSURE and the rest of PREFIX."
references-graphs
(register-closures? #t)
system-directory
(make-device-nodes
make-essential-device-nodes)
make-device-nodes
#:allow-other-keys)
"Initialize the given ROOT directory. Use BOOTCFG and BOOTCFG-LOCATION to
install the bootloader configuration.
@ -175,7 +174,8 @@ of the directory of the 'system' derivation."
(populate-store references-graphs root)
;; Populate /dev.
(make-device-nodes root)
(when make-device-nodes
(make-device-nodes root))
(when register-closures?
(for-each (lambda (closure)

View File

@ -127,7 +127,7 @@ USERS."
(lambda (port)
(match (string-tokenize (read-string port) %not-nul)
((argv0 _ ...)
(unless (member (pk (basename argv0)) spare)
(unless (member (basename argv0) spare)
(syslog "Killing process ~a (~a)~%" pid argv0)
(kill pid SIGKILL)))
(_ #f))))))
@ -205,7 +205,18 @@ or #f. Return #t on success and #f on failure."
(lambda ()
(start-service 'cow-store (list (%installer-target-dir))))
(lambda ()
(run-command install-command #:locale locale))
;; If there are any connected clients, assume that we are running
;; installation tests. In that case, dump the standard and error
;; outputs to syslog.
(if (not (null? (current-clients)))
(with-output-to-file "/dev/console"
(lambda ()
(with-error-to-file "/dev/console"
(lambda ()
(setvbuf (current-output-port) 'none)
(setvbuf (current-error-port) 'none)
(run-command install-command #:locale locale)))))
(run-command install-command #:locale locale)))
(lambda ()
(stop-service 'cow-store)
;; Remove the store overlay created at cow-store service start.

View File

@ -413,6 +413,7 @@ GNU_SYSTEM_MODULES = \
%D%/packages/pcre.scm \
%D%/packages/pdf.scm \
%D%/packages/pem.scm \
%D%/packages/pep.scm \
%D%/packages/perl.scm \
%D%/packages/perl-check.scm \
%D%/packages/perl-compression.scm \
@ -863,7 +864,6 @@ dist_patch_DATA = \
%D%/packages/patches/desmume-gcc6-fixes.patch \
%D%/packages/patches/desmume-gcc7-fixes.patch \
%D%/packages/patches/dfu-programmer-fix-libusb.patch \
%D%/packages/patches/dhall-remove-network-tests.patch \
%D%/packages/patches/diffutils-gets-undeclared.patch \
%D%/packages/patches/dkimproxy-add-ipv6-support.patch \
%D%/packages/patches/docbook-xsl-nonrecursive-string-subst.patch \
@ -901,6 +901,7 @@ dist_patch_DATA = \
%D%/packages/patches/evilwm-lost-focus-bug.patch \
%D%/packages/patches/evolution-data-server-locales.patch \
%D%/packages/patches/evolution-data-server-libical-compat.patch \
%D%/packages/patches/exercism-disable-self-update.patch \
%D%/packages/patches/exiv2-CVE-2017-14860.patch \
%D%/packages/patches/exiv2-CVE-2017-14859-14862-14864.patch \
%D%/packages/patches/extempore-unbundle-external-dependencies.patch \

View File

@ -213,7 +213,7 @@ usual file attributes can be checked for inconsistencies.")
(define-public progress
(package
(name "progress")
(version "0.14")
(version "0.15")
(source
(origin
(method git-fetch)
@ -221,7 +221,7 @@ usual file attributes can be checked for inconsistencies.")
(url "https://github.com/Xfennec/progress.git")
(commit (string-append "v" version))))
(sha256
(base32 "1lk2v4b767klib93an4g3f7z5qrv9kdk9jf7545vw1immc4kamrl"))
(base32 "1cnb4ixlhshn139mj5sr42k5m6gjjbyqvkn1324c47niwrgp7dqm"))
(file-name (git-file-name name version))))
(build-system gnu-build-system)
(native-inputs

View File

@ -1,6 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2014 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2015, 2016, 2018 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2015, 2016, 2018, 2020 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2019 Marius Bakke <mbakke@fastmail.com>
;;;
@ -25,22 +25,23 @@
#:use-module (guix download)
#:use-module (guix build-system cmake)
#:use-module (guix build-system gnu)
#:use-module (gnu packages m4)
#:use-module (gnu packages pkg-config))
(define-public adns
(package
(name "adns")
(version "1.5.1")
(version "1.6.0")
(source (origin
(method url-fetch)
(uri (list (string-append "mirror://gnu/adns/adns-"
version ".tar.gz")
(string-append
"http://www.chiark.greenend.org.uk/~ian/adns/ftp/adns-"
version ".tar.gz")))
"https://www.chiark.greenend.org.uk/~ian/adns/ftp/adns-"
version ".tar.gz")))
(sha256
(base32
"1ssfh94ck6kn98nf2yy6743srpgqgd167va5ja3bwx42igqjc42v"))))
"1pi0xl07pav4zm2jrbrfpv43s1r1q1y12awgak8k7q41m5jp4hpv"))))
(build-system gnu-build-system)
(arguments
;; Make sure the programs under bin/ fine libadns.so.
@ -50,6 +51,8 @@
;; XXX: Tests expect real name resolution to work.
#:tests? #f))
(native-inputs
`(("m4" ,m4)))
(home-page "https://www.gnu.org/software/adns/")
(synopsis "Asynchronous DNS client library and utilities")
(description

View File

@ -609,7 +609,7 @@ matrices, and polynomials over the integers and over finite fields.")
(define-public singular
(package
(name "singular")
(version "4.1.3p1")
(version "4.1.3p2")
(source
(origin
(method url-fetch)
@ -623,7 +623,7 @@ matrices, and polynomials over the integers and over finite fields.")
#\.) "-")
"/singular-" version ".tar.gz"))
(sha256 (base32
"1f02mrjwh7pd3pydfvjxsw5rph2qmkg1idwqrdsax924sa77sljw"))))
"1524yrni7gh0hir5ckridq671q5s6avfjdsdyahj51kzdl3wcypf"))))
(build-system gnu-build-system)
(native-inputs
`(("doxygen" ,doxygen)

View File

@ -563,14 +563,13 @@ detection, and lossless compression.")
(define-public borg
(package
(name "borg")
(version "1.1.11")
(version "1.1.13")
(source
(origin
(method url-fetch)
(uri (pypi-uri "borgbackup" version))
(sha256
(base32
"190gjzx83b6p64nqj840x382dgz9gfv0gm7wj585lnkrpa90j29n"))
(base32 "089q3flmwbz7dc28zlscwylf64kgck3jf1n6lqpwww8hlrk8cjhn"))
(modules '((guix build utils)))
(snippet
'(begin
@ -653,7 +652,8 @@ detection, and lossless compression.")
;; These tests assume the kernel supports FUSE.
"and not test_fuse "
"and not test_fuse_allow_damaged_files "
"and not test_mount_hardlinks")))))
"and not test_mount_hardlinks "
"and not test_readonly_mount ")))))
(add-after 'install 'install-doc
(lambda* (#:key inputs outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))

View File

@ -1889,7 +1889,7 @@ statements in the module it tests.")
(define-public python-pylint
(package
(name "python-pylint")
(version "2.5.2")
(version "2.5.3")
(source
(origin
(method git-fetch)
@ -1898,8 +1898,7 @@ statements in the module it tests.")
(commit (string-append "pylint-" version))))
(file-name (git-file-name name version))
(sha256
(base32
"150x679mrlgm1s4ym7irf9mnsjilqyaakss4spc4pbrzkl11agnh"))))
(base32 "04cgbh2z1mygar63plzziyz34yg6bdr4i0g63jp256fgnqwb1bi3"))))
(build-system python-build-system)
;; FIXME: Tests are failing since version 2.4.3, see:
;; https://github.com/PyCQA/pylint/issues/3198.

View File

@ -2,7 +2,7 @@
;;; Copyright © 2015 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2016 Jan Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2016, 2017 Mathieu Lirzin <mthl@gnu.org>
;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
;;; Copyright © 2017, 2020 Mathieu Othacehe <m.othacehe@gmail.com>
;;; Copyright © 2017, 2019, 2020 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2018 Clément Lassieur <clement@lassieur.org>
;;;
@ -47,8 +47,8 @@
#:use-module (guix build-system gnu))
(define-public cuirass
(let ((commit "9559fd18d4b89bf797216fbe187f2b26b0a2d165")
(revision "30"))
(let ((commit "2280ae18eb25aa7034636c58bf288c9bd5a8fa3b")
(revision "31"))
(package
(name "cuirass")
(version (git-version "0.0.1" revision commit))
@ -60,7 +60,7 @@
(file-name (git-file-name name version))
(sha256
(base32
"026cpcws8mb483mywwx2znpy9i7lw5n3lyqa9k6d87kxmw59060c"))))
"1gbmpwgiwy740d936b052gfivzw52pgrny7j7lbl56wi9wnawkc9"))))
(build-system gnu-build-system)
(arguments
'(#:modules ((guix build utils)

File diff suppressed because it is too large Load Diff

View File

@ -27484,22 +27484,20 @@ to XDG Base Directory specification")
(define-public rust-yaml-rust-0.4
(package
(name "rust-yaml-rust")
(version "0.4.3")
(version "0.4.4")
(source
(origin
(method url-fetch)
(uri (crate-uri "yaml-rust" version))
(file-name
(string-append name "-" version ".tar.gz"))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"0ka3qhqc5lvk3hz14wmsj32jhmh44blcbfrx5hfxli2gg38kv4k5"))))
(base32 "038byay0dxsz6isckviz4qshfpyjqmyvda7pq96i6d53y4ickw1r"))))
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs
(("rust-linked-hash-map" ,rust-linked-hash-map-0.5))
#:cargo-development-inputs
(("rust-quickcheck" ,rust-quickcheck-0.7))))
(("rust-quickcheck" ,rust-quickcheck-0.9))))
(home-page "https://chyh1990.github.io/yaml-rust/")
(synopsis "The missing YAML 1.2 parser for rust")
(description

View File

@ -1031,7 +1031,7 @@ quickly by using all your CPU cores and hardware acceleration.")
(define-public minisign
(package
(name "minisign")
(version "0.8")
(version "0.9")
(source
(origin
(method url-fetch)
@ -1039,8 +1039,7 @@ quickly by using all your CPU cores and hardware acceleration.")
(string-append "https://github.com/jedisct1/minisign/releases/download/"
version "/minisign-" version ".tar.gz"))
(sha256
(base32
"10hhgwxf9rcdlr00shrkcyxndrc22dh5lj8k5z27xg3nc0jba3hk"))))
(base32 "1h9cfvvm6lqq33b2wdar1x3w4k7zyrscavllyb0l5dmcdabq60r2"))))
(build-system cmake-build-system)
(arguments
; No test suite

View File

@ -88,7 +88,9 @@
#:use-module (gnu packages language)
#:use-module (gnu packages libevent)
#:use-module (gnu packages linux)
#:use-module (gnu packages logging)
#:use-module (gnu packages man)
#:use-module (gnu packages maths)
#:use-module (gnu packages ncurses)
#:use-module (gnu packages onc-rpc)
#:use-module (gnu packages parallel)
@ -98,6 +100,7 @@
#:use-module (gnu packages perl-web)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages popt)
#:use-module (gnu packages protobuf)
#:use-module (gnu packages python)
#:use-module (gnu packages python-crypto)
#:use-module (gnu packages python-web)
@ -105,6 +108,8 @@
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages rdf)
#:use-module (gnu packages readline)
#:use-module (gnu packages regex)
#:use-module (gnu packages rpc)
#:use-module (gnu packages ruby)
#:use-module (gnu packages serialization)
#:use-module (gnu packages sphinx)
@ -1142,7 +1147,7 @@ including field and record folding.")))
(define-public rocksdb
(package
(name "rocksdb")
(version "6.8.1")
(version "6.10.1")
(source (origin
(method git-fetch)
(uri (git-reference
@ -1151,7 +1156,7 @@ including field and record folding.")))
(file-name (git-file-name name version))
(sha256
(base32
"0i6qglyrcqwxnrvq67zm7ln79a4sj8mzgij9h0nz5zkxax8v1zg1"))
"0rp8q73dx5f1nkcf2qp6fljm4dpj281y6cqckqgv976kvwvqdgz1"))
(modules '((guix build utils)))
(snippet
'(begin
@ -1748,14 +1753,14 @@ libmysqlclient. It will fill an aray with long options, ready to be parsed by
(define-public perl-sql-abstract
(package
(name "perl-sql-abstract")
(version "1.86")
(version "1.87")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://cpan/authors/id/I/IL/ILMARI/"
"SQL-Abstract-" version ".tar.gz"))
(sha256
(base32 "1pwcm8hwxcgidyyrak37lx69d85q728jxsb0b14jz93gbvdgg9z7"))))
(base32 "0jhw91b23wc9bkfwcgvka4x5ddxk58m9bcp5ay7a3vx77nla09p9"))))
(build-system perl-build-system)
(native-inputs
`(("perl-module-install" ,perl-module-install)
@ -3216,20 +3221,22 @@ Monitor read/write activity on a mongo server
@end table")
(license license:asl2.0)))
;; There are many wrappers for this in other languages. When touching, please
;; be sure to ensure all dependencies continue to build.
(define-public apache-arrow
(package
(name "apache-arrow")
(version "0.10.0")
(version "0.17.1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/apache/arrow")
(commit (string-append "apache-arrow-" version))))
(file-name (git-file-name name version))
(sha256
(base32
"04xkp922b8qrrnpvv9ixxnvk7151n1plzx6aqdff6frn9651zvxs"))))
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/apache/arrow")
(commit (string-append "apache-arrow-" version))))
(file-name (git-file-name name version))
(sha256
(base32
"02r6yx3yhywzikd3b0vfkjgddhfiriyx2vpm3jf5880wq59x798a"))))
(build-system cmake-build-system)
(arguments
`(#:tests? #f
@ -3242,91 +3249,135 @@ Monitor read/write activity on a mongo server
(setenv "BOOST_ROOT" (assoc-ref %build-inputs "boost"))
(setenv "BROTLI_HOME" (assoc-ref %build-inputs "brotli"))
(setenv "FLATBUFFERS_HOME" (assoc-ref %build-inputs "flatbuffers"))
(setenv "JEMALLOC_HOME" (assoc-ref %build-inputs "jemalloc"))
(setenv "RAPIDJSON_HOME" (assoc-ref %build-inputs "rapidjson"))
#t)))
#:build-type "Release"
#:configure-flags
(list "-DARROW_PYTHON=ON"
"-DARROW_GLOG=ON"
;; Parquet options
"-DARROW_PARQUET=ON"
"-DPARQUET_BUILD_EXECUTABLES=ON"
;; The maintainers disallow using system versions of
;; jemalloc:
;; https://issues.apache.org/jira/browse/ARROW-3507. This
;; is unfortunate because jemalloc increases performance:
;; https://arrow.apache.org/blog/2018/07/20/jemalloc/.
"-DARROW_JEMALLOC=OFF"
;; Install to PREFIX/lib (the default is
;; PREFIX/lib64).
(string-append "-DCMAKE_INSTALL_LIBDIR="
(assoc-ref %outputs "out")
;; The CMake option ARROW_DEPENDENCY_SOURCE is a global
;; option that instructs the build system how to resolve
;; each dependency. SYSTEM = Finding the dependency in
;; system paths using CMake's built-in find_package
;; function, or using pkg-config for packages that do not
;; have this feature
"-DARROW_DEPENDENCY_SOURCE=SYSTEM"
;; Split output into its component packages.
(string-append "-DCMAKE_INSTALL_PREFIX="
(assoc-ref %outputs "lib"))
(string-append "-DCMAKE_INSTALL_RPATH="
(assoc-ref %outputs "lib")
"/lib")
(string-append "-DCMAKE_INSTALL_BINDIR="
(assoc-ref %outputs "out")
"/bin")
(string-append "-DCMAKE_INSTALL_INCLUDEDIR="
(assoc-ref %outputs "include")
"/share/include")
;; XXX These Guix package offer static
;; libraries that are not position independent,
;; and ld fails to link them into the arrow .so
"-DARROW_WITH_SNAPPY=OFF"
"-DARROW_WITH_ZLIB=OFF"
"-DARROW_WITH_ZSTD=OFF"
"-DARROW_WITH_LZ4=OFF"
"-DARROW_WITH_SNAPPY=ON"
"-DARROW_WITH_ZLIB=ON"
"-DARROW_WITH_ZSTD=ON"
"-DARROW_WITH_LZ4=ON"
"-DARROW_COMPUTE=ON"
"-DARROW_CSV=ON"
"-DARROW_DATASET=ON"
"-DARROW_FILESYSTEM=ON"
"-DARROW_HDFS=ON"
"-DARROW_JSON=ON"
;; Arrow Python C++ integration library (required for
;; building pyarrow). This library must be built against
;; the same Python version for which you are building
;; pyarrow. NumPy must also be installed. Enabling this
;; option also enables ARROW_COMPUTE, ARROW_CSV,
;; ARROW_DATASET, ARROW_FILESYSTEM, ARROW_HDFS, and
;; ARROW_JSON.
"-DARROW_PYTHON=ON"
;; Building the tests forces on all the
;; optional features and the use of static
;; libraries.
"-DARROW_BUILD_TESTS=OFF"
"-DBENCHMARK_ENABLE_GTEST_TESTS=OFF"
;;"-DBENCHMARK_ENABLE_TESTING=OFF"
"-DARROW_BUILD_STATIC=OFF")))
(inputs
`(("boost" ,boost)
("rapidjson" ,rapidjson)
("brotli" ,google-brotli)
("flatbuffers" ,flatbuffers)
("jemalloc" ,jemalloc)
("double-conversion" ,double-conversion)
("snappy" ,snappy)
("gflags" ,gflags)
("glog" ,glog)
("apache-thrift" ,apache-thrift "lib")
("protobuf" ,protobuf)
("rapidjson" ,rapidjson)
("zlib" ,zlib)
("bzip2" ,bzip2)
("lz4" ,lz4)
("zstd" ,zstd "lib")
("re2" ,re2)
("grpc" ,grpc)
("python-3" ,python)
("python-numpy" ,python-numpy)))
(native-inputs
`(("pkg-config" ,pkg-config)))
(outputs '("out" "lib" "include"))
(home-page "https://arrow.apache.org/")
(synopsis "Columnar in-memory analytics")
(description "Apache Arrow is a columnar in-memory analytics layer
designed to accelerate big data. It houses a set of canonical in-memory
designed to accelerate big data. It houses a set of canonical in-memory
representations of flat and hierarchical data along with multiple
language-bindings for structure manipulation. It also provides IPC and common
language-bindings for structure manipulation. It also provides IPC and common
algorithm implementations.")
(license license:asl2.0)))
(define-public python-pyarrow
(package
(inherit apache-arrow)
(name "python-pyarrow")
(version "0.10.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/apache/arrow")
(commit (string-append "apache-arrow-" version))))
(file-name (git-file-name name version))
(sha256
(base32
"04xkp922b8qrrnpvv9ixxnvk7151n1plzx6aqdff6frn9651zvxs"))))
(build-system python-build-system)
(arguments
'(#:tests? #f ; XXX There are no tests in the "python" directory
'(#:tests? #f ; XXX There are no tests in the "python" directory
#:phases
(modify-phases %standard-phases
(delete 'build) ; XXX the build is performed again during the install phase
(add-after 'unpack 'enter-source-directory
(lambda _ (chdir "python") #t))
(add-after 'unpack 'set-env
(add-after 'unpack 'make-git-checkout-writable
(lambda _
(setenv "ARROW_HOME" (assoc-ref %build-inputs "apache-arrow"))
(for-each make-file-writable (find-files "."))
#t)))))
(propagated-inputs
`(("apache-arrow" ,apache-arrow)
`(("apache-arrow" ,apache-arrow "lib")
("python-numpy" ,python-numpy)
("python-pandas" ,python-pandas)
("python-six" ,python-six)))
(native-inputs
`(("cmake" ,cmake-minimal)
("pkg-config" ,pkg-config)
("python-cython" ,python-cython)
("python-pytest" ,python-pytest)
("python-pytest-runner" ,python-pytest-runner)
("python-setuptools-scm" ,python-setuptools-scm)))
(outputs '("out"))
(home-page "https://arrow.apache.org/docs/python/")
(synopsis "Python bindings for Apache Arrow")
(description "This library provides a Pythonic API wrapper for the reference
Arrow C++ implementation, along with tools for interoperability with pandas,
NumPy, and other traditional Python scientific computing packages.")
(description
"This library provides a Pythonic API wrapper for the reference Arrow C++
implementation, along with tools for interoperability with pandas, NumPy, and
other traditional Python scientific computing packages.")
(license license:asl2.0)))
(define-public python2-pyarrow

View File

@ -1,4 +1,5 @@
;;; Copyright © 2020 John Soo <jsoo1@asu.edu>
;;; Copyright © 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;;
;;; This file is part of GNU Guix.
;;;
@ -29,18 +30,14 @@
(define-public dhall
(package
(name "dhall")
(version "1.31.1")
(version "1.32.0")
(source
(origin
(method url-fetch)
(uri (string-append
"https://hackage.haskell.org/package/dhall/dhall-"
version
".tar.gz"))
(uri (string-append "https://hackage.haskell.org/package/dhall/dhall-"
version ".tar.gz"))
(sha256
(base32
"18v7vvcbcm9s7slh6h43rj9yakkkxwnwgj6kv84i6qzd2j7d80mc"))
(patches (search-patches "dhall-remove-network-tests.patch"))))
(base32 "1imj0bh5365pdizvjbw2wqz0g9hakigf1zm4fr6379qdchxpp90p"))))
(build-system haskell-build-system)
(inputs
`(("ghc-aeson" ,ghc-aeson)
@ -56,6 +53,7 @@
("ghc-dotgen" ,ghc-dotgen)
("ghc-either" ,ghc-either)
("ghc-exceptions" ,ghc-exceptions)
("ghc-half" ,ghc-half)
("ghc-hashable" ,ghc-hashable)
("ghc-lens-family-core" ,ghc-lens-family-core)
("ghc-megaparsec" ,ghc-megaparsec)
@ -99,9 +97,23 @@
(arguments
`(#:phases
(modify-phases %standard-phases
;; Remove tests that require network
(add-after 'unpack 'remove-more-tests
(add-after 'unpack 'remove-network-tests
(lambda _
(with-directory-excursion "dhall-lang/tests"
(for-each
delete-file
'("import/failure/referentiallyInsane.dhall"
"import/success/customHeadersA.dhall"
"import/success/noHeaderForwardingA.dhall"
"import/success/unit/RemoteAsTextA.dhall"
"import/success/unit/SimpleRemoteA.dhall"
"import/success/unit/asLocation/RemoteChain1A.dhall"
"import/success/unit/asLocation/RemoteChain2A.dhall"
"import/success/unit/asLocation/RemoteChain3A.dhall"
"import/success/unit/asLocation/RemoteChainEnvA.dhall"
"import/success/unit/asLocation/RemoteChainMissingA.dhall"
"type-inference/success/CacheImportsA.dhall"
"type-inference/success/CacheImportsCanonicalizeA.dhall")))
(substitute* "src/Dhall/Tutorial.hs"
(((string-append
"-- >>> input auto "
@ -117,10 +129,8 @@
"examples/True\" :: IO Bool"))
""))
#t)))))
(home-page
"https://dhall-lang.org/")
(synopsis
"Configuration language guaranteed to terminate")
(home-page "https://dhall-lang.org/")
(synopsis "Configuration language guaranteed to terminate")
(description
"Dhall is an explicitly typed configuration language that is not Turing
complete. Despite being Turing incomplete, Dhall is a real programming

View File

@ -205,14 +205,14 @@ It comes with a German-English dictionary with approximately 270,000 entries.")
(define-public grammalecte
(package
(name "grammalecte")
(version "1.9.0")
(version "1.10.0")
(source
(origin
(method url-fetch/zipbomb)
(uri (string-append "https://grammalecte.net/grammalecte/zip/"
"Grammalecte-fr-v" version ".zip"))
(sha256
(base32 "1dmbmvf27dy0cnq2x7ldp9xmni8fl1p7vflgpy0yrgifgrjvnxzr"))))
(base32 "0lyngnvg995qdm9bhqj8vd8aywpcdqmzv3j4j77wxhsfa9k0pz08"))))
(build-system python-build-system)
(home-page "https://grammalecte.net")
(synopsis "French spelling and grammar checker")

View File

@ -1,6 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2015 Paul van der Walt <paul@denknerd.org>
;;; Copyright © 2020 Nicolas Goaziou <mail@nicolasgoaziou.fr>
;;; Copyright © 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;;
;;; This file is part of GNU Guix.
;;;
@ -22,7 +23,9 @@
#:use-module (guix utils)
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix git-download)
#:use-module (guix build-system gnu)
#:use-module (gnu packages autotools)
#:use-module (gnu packages glib)
#:use-module (gnu packages image)
#:use-module (gnu packages pkg-config)
@ -59,18 +62,22 @@ utilities.")
(define-public djview
(package
(name "djview")
(version "4.10.6")
(version "4.11")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/djvu/DjView/"
(version-major+minor version) "/"
"djview-" version ".tar.gz"))
(method git-fetch)
(uri (git-reference
(url "https://git.code.sf.net/p/djvu/djview-git")
(commit (string-append "release." version))))
(sha256
(base32 "08bwv8ppdzhryfcnifgzgdilb12jcnivl4ig6hd44f12d76z6il4"))))
(base32 "0qlhd0xlxn8i869m0hwdjvwivi2vigqm88wliyr1h7s84zl3qhsy"))
(file-name (git-file-name name version))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)
`(("autoconf" ,autoconf)
("automake" ,automake)
("libtool" ,libtool)
("pkg-config" ,pkg-config)
("qttools" ,qttools)))
(inputs
`(("djvulibre" ,djvulibre)
@ -86,6 +93,11 @@ utilities.")
(lambda _
(substitute* "desktopfiles/djvulibre-djview4.desktop"
(("Exec=djview4 %f") "Exec=djview %f"))
#t))
(add-after 'unpack 'make-files-writable
(lambda _
(for-each make-file-writable
(find-files "."))
#t)))))
(home-page "http://djvu.sourceforge.net/djview4.html")
(synopsis "Viewer for the DjVu image format")

View File

@ -111,7 +111,7 @@ release/xsl/current")
("docbook-xsl" ,docbook-xsl)
("libxml2" ,libxml2)
("libxslt" ,libxslt)))
(home-page "http://asciidoc.org/")
(home-page "https://asciidoc.org/")
(synopsis "Text-based document generation system")
(description
"AsciiDoc is a text document format for writing notes, documentation,

View File

@ -7,6 +7,7 @@
;;; Copyright © 2018, 2019, 2020 Nicolas Goaziou <mail@nicolasgoaziou.fr>
;;; Copyright © 2020 Robert Smith <robertsmith@posteo.net>
;;; Copyright © 2020 Guy Fleury Iteriteka <gfleury@disroot.org>
;;; Copyright © 2020 Jakub Kądziołka <kuba@kadziolka.net>
;;;
;;; This file is part of GNU Guix.
;;;
@ -39,6 +40,7 @@
#:use-module (gnu packages gettext)
#:use-module (gnu packages glib)
#:use-module (gnu packages gnome)
#:use-module (gnu packages golang)
#:use-module (gnu packages gtk)
#:use-module (gnu packages image)
#:use-module (gnu packages javascript)
@ -68,6 +70,7 @@
#:use-module (guix utils)
#:use-module (guix build-system cmake)
#:use-module (guix build-system gnu)
#:use-module (guix build-system go)
#:use-module (guix build-system python)
#:use-module (guix build-system qt)
#:use-module (guix build-system trivial)
@ -609,14 +612,14 @@ Portuguese, Spanish and Italian.")
(define-public fet
(package
(name "fet")
(version "5.44.8")
(version "5.45.0")
(source
(origin
(method url-fetch)
(uri (string-append "https://www.lalescu.ro/liviu/fet/download/"
"fet-" version ".tar.bz2"))
(sha256
(base32 "1i59xpkdnrd3qzgqs11vsws57g33zvkad5q3an56vd94aw7z3kpw"))))
(base32 "04jns6wc20rz6cp410znsllknhp4zlf4rn8wgv712855nffs42c6"))))
(build-system gnu-build-system)
(arguments
`(#:phases
@ -978,3 +981,35 @@ comparison flags, input-output devices, and a set of binary instructions.
The package includes a compiler, a virtual machine, a GUI for the virtual
machine, and more.")
(license license:gpl3+)))
(define-public exercism
(package
(name "exercism")
(version "3.0.13")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/exercism/cli")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"17gvz9a0sn4p36hf4l77bxhhfipf4x998iay31layqwbnzmb4xy7"))
(patches (search-patches "exercism-disable-self-update.patch"))))
(build-system go-build-system)
(arguments
`(#:import-path "github.com/exercism/cli/exercism"
#:unpack-path "github.com/exercism/cli"))
(inputs
`(("github.com/blang/semver" ,go-github-com-blang-semver)
("github.com/spf13/cobra" ,go-github-com-spf13-cobra)
("github.com/spf13/pflag" ,go-github-com-spf13-pflag)
("github.com/spf13/viper" ,go-github-com-spf13-viper)
("golang.org/x/net" ,go-golang-org-x-net)
("golang.org/x/text" ,go-golang-org-x-text)))
(home-page "https://exercism.io")
(synopsis "Mentored learning for programming languages")
(description "Commandline client for exercism.io, a free service providing
mentored learning for programming languages.")
(license license:expat)))

View File

@ -7780,7 +7780,7 @@ ack, ag, helm and pt.")
(define-public emacs-helm
(package
(name "emacs-helm")
(version "3.6.0")
(version "3.6.2")
(source
(origin
(method git-fetch)
@ -7789,7 +7789,7 @@ ack, ag, helm and pt.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0miq2q52pbicijp7pmj0widk252qixswywc03d120s4hya2b7vd7"))))
(base32 "0bf2glydc0vhp52z8zg8phmsglb63nac15zd82zr35dscc50bzrb"))))
(build-system emacs-build-system)
(propagated-inputs
`(("emacs-async" ,emacs-async)

View File

@ -470,7 +470,7 @@ and Game Boy Color games.")
(define-public sameboy
(package
(name "sameboy")
(version "0.13.1")
(version "0.13.2")
(source
(origin
(method git-fetch)
@ -479,7 +479,7 @@ and Game Boy Color games.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1il2bpbc3xyvvhbs2bgid64svjxcdl4dbqz6jy1azfmvzdp7jkrn"))))
(base32 "19qb1ib9sk5bjdv4arbwkv8l2afpll5axrif3wi7p2yhvpba10c0"))))
(build-system gnu-build-system)
(native-inputs
`(("rgbds" ,rgbds)
@ -489,7 +489,7 @@ and Game Boy Color games.")
`(("sdl2" ,sdl2)))
(arguments
`(#:tests? #f ; There are no tests
#:make-flags `("CC=gcc" "CONF=release"
#:make-flags `("CC=gcc" "NATIVE_CC=gcc" "CONF=release"
,(string-append "DATA_DIR="
(assoc-ref %outputs "out")
"/share/sameboy/"))

View File

@ -103,7 +103,7 @@ file permissions, timestamps, symbolic and hard links, and extended attributes.
Each file in the archive is protected by a checksum. If part of the archive
is corrupted you'll lose the affected file(s) but not the whole back-up.")
(home-page "http://www.fsarchiver.org/")
(home-page "https://www.fsarchiver.org/")
(license license:gpl2)))
(define-public gphotofs

View File

@ -191,39 +191,39 @@ DeuTex has functions such as merging wads, etc.")
(package
(name "grfcodec")
(version "6.0.6")
(source (origin
(method url-fetch)
(uri (string-append "http://binaries.openttd.org/extra/"
name "/" version "/" name "-" version
"-source.tar.xz"))
(sha256
(base32
"08admgnpqcsifpicbm56apgv360fxapqpbbsp10qyk8i22w1ivsk"))))
(source
(origin
(method url-fetch)
(uri (string-append "https://binaries.openttd.org/extra/"
name "/" version "/" name "-" version
"-source.tar.xz"))
(sha256
(base32 "08admgnpqcsifpicbm56apgv360fxapqpbbsp10qyk8i22w1ivsk"))))
(build-system gnu-build-system)
(arguments
'(#:tests? #f ; no check target
'(#:tests? #f ;no check target
#:phases
(modify-phases %standard-phases
(delete 'configure) ; no configure script
(replace 'install ; no install target
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(bin (string-append out "/bin"))
(doc (string-append out "/share/doc"))
(man (string-append out "/share/man/man1")))
(for-each (lambda (file)
(install-file file bin))
'("grfcodec" "grfid" "grfstrip" "nforenum"))
(install-file "COPYING" doc)
(with-directory-excursion "docs"
(for-each (lambda (file)
(install-file (string-append file ".txt") doc))
'("auto_correct" "commands" "grf" "grfcodec" "grftut"
"readme" "readme.rpn"))
(for-each (lambda (file)
(install-file file man))
(find-files "." "\\.1"))))
#t)))))
(modify-phases %standard-phases
(delete 'configure) ;no configure script
(replace 'install ;no install target
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(bin (string-append out "/bin"))
(doc (string-append out "/share/doc"))
(man (string-append out "/share/man/man1")))
(for-each (lambda (file)
(install-file file bin))
'("grfcodec" "grfid" "grfstrip" "nforenum"))
(install-file "COPYING" doc)
(with-directory-excursion "docs"
(for-each (lambda (file)
(install-file (string-append file ".txt") doc))
'("auto_correct" "commands" "grf" "grfcodec" "grftut"
"readme" "readme.rpn"))
(for-each (lambda (file)
(install-file file man))
(find-files "." "\\.1"))))
#t)))))
(inputs
`(("boost" ,boost)
("libpng" ,libpng)
@ -240,7 +240,7 @@ with a specific task:
@item @code{nforenum} checks NFO code for errors, making corrections when
necessary.
@end enumerate")
(home-page "http://dev.openttdcoop.org/projects/grfcodec")
(home-page "https://dev.openttdcoop.org/projects/grfcodec")
;; GRFCodec, GRFID, and GRFStrip are exclusively under the GPL2.
;; NFORenum is under the GPL2+.
;; The MD5 implementation contained in GRFID is under the zlib license.

View File

@ -289,15 +289,15 @@ freedesktop.org desktop notification specification.")
(define-public mm-common
(package
(name "mm-common")
(version "1.0.0")
(version "1.0.1")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/"
(uri (string-append "mirror://gnome/sources/mm-common/"
(version-major+minor version) "/"
name "-" version ".tar.xz"))
"mm-common-" version ".tar.xz"))
(sha256
(base32
"1m4w33da9f4rx2d6kdj3ix3kl0gn16ml82v2mdn4hljr3q29nzdr"))))
"1jasx9a9g7nqf7jcv3mrg4qh5cp9sq724jxjaz4wa1dzmxsxg8i8"))))
(build-system meson-build-system)
(arguments
`(#:phases
@ -5411,7 +5411,7 @@ USB transfers with your high-level application or system daemon.")
(define-public simple-scan
(package
(name "simple-scan")
(version "3.36.2.1")
(version "3.36.3")
(source
(origin
(method url-fetch)
@ -5419,7 +5419,7 @@ USB transfers with your high-level application or system daemon.")
(version-major+minor version) "/"
"simple-scan-" version ".tar.xz"))
(sha256
(base32 "0aq1pf0wk536b91as54684xgmhl7lps0k2xcwha5wh6h1isyb35v"))))
(base32 "0gsz7jqk0fdj0mama3cnss9i1adw18cpdnlcjcjh4r5qijmvx0vh"))))
(build-system meson-build-system)
;; TODO: Fix icons in home screen, About dialogue, and scan menu.
(arguments

View File

@ -1135,11 +1135,11 @@ standards of the IceCat project.")
(cpe-version . ,(first (string-split version #\-)))))))
;; Update this together with icecat!
(define %icedove-build-id "20200505000000") ;must be of the form YYYYMMDDhhmmss
(define %icedove-build-id "20200602000000") ;must be of the form YYYYMMDDhhmmss
(define-public icedove
(package
(name "icedove")
(version "68.8.0")
(version "68.9.0")
(source icecat-source)
(properties
`((cpe-name . "thunderbird_esr")))
@ -1425,7 +1425,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 "4c022a34cd5dd776671721c44db89f693f59132c"))
,(let ((changeset "787d887f43fcbfe254ff0c9650c5517710071b74"))
(origin
(method hg-fetch)
(uri (hg-reference
@ -1434,7 +1434,7 @@ standards of the IceCat project.")
(file-name (string-append "thunderbird-" version "-checkout"))
(sha256
(base32
"0k3653ic1g5pwcmf87a95lbzjah25l9qx0r49c4j04c21069fhad")))))
"1z1k3r1jilwmsywiyp8gh49f61cl9n085k95x7ihyld3rvgcjm9f")))))
("autoconf" ,autoconf-2.13)
("cargo" ,rust "cargo")
("clang" ,clang)

View File

@ -17,6 +17,7 @@
;;; Copyright @ 2019, 2020 Alex Griffin <a@ajgrf.com>
;;; Copyright © 2019, 2020 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2020 Jack Hill <jackhill@jackhill.us>
;;; Copyright © 2020 Jakub Kądziołka <kuba@kadziolka.net>
;;;
;;; This file is part of GNU Guix.
;;;
@ -1179,6 +1180,103 @@ incoming requests with their respective handler.")
@code{clockwork.Clock} interface instead.")
(license license:asl2.0))))
(define-public go-github-com-spf13-afero
(package
(name "go-github-com-spf13-afero")
(version "1.2.2")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/spf13/afero")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"0j9r65qgd58324m85lkl49vk9dgwd62g7dwvkfcm3k6i9dc555a9"))))
(build-system go-build-system)
(arguments
`(#:import-path "github.com/spf13/afero"))
(propagated-inputs
`(("golang.org/x/text" ,go-golang-org-x-text)))
(home-page "https://github.com/spf13/afero")
(synopsis "Filesystem abstraction for Go")
(description "Filesystem abstraction for Go")
(license license:asl2.0)))
(define-public go-github-com-spf13-cast
(package
(name "go-github-com-spf13-cast")
(version "1.3.1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/spf13/cast")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"0lb84788glr0qzrq2ifi36rgvp96qrgywvxrr3ggq5hrbr38hgn1"))))
(build-system go-build-system)
(arguments
`(#:import-path "github.com/spf13/cast"))
(native-inputs
`(("go-github-com-stretchr-testify" ,go-github-com-stretchr-testify)))
(home-page "https://github.com/spf13/cast")
(synopsis "Safe and easy casting from one type to another in Go")
(description "Safe and easy casting from one type to another in Go")
(license license:expat)))
(define-public go-github-com-spf13-cobra
(package
(name "go-github-com-spf13-cobra")
(version "1.0.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/spf13/cobra")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"0vbppqqhby302a5ayn0296jqr71qkcd4c9am7wzsk6z71fwdsa7h"))))
(build-system go-build-system)
(arguments
`(#:import-path "github.com/spf13/cobra"))
(propagated-inputs
`(("github.com/spf13/pflag" ,go-github-com-spf13-pflag)))
(home-page "https://github.com/spf13/cobra")
(synopsis "Go library for creating CLI applications")
(description "Cobra is both a library for creating powerful modern CLI
applications as well as a program to generate applications and command files.")
(license license:asl2.0)))
(define-public go-github-com-spf13-jwalterweatherman
(package
(name "go-github-com-spf13-jwalterweatherman")
(version "1.1.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/spf13/jwalterweatherman")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"1ywmkwci5zyd88ijym6f30fj5c0k2yayxarkmnazf5ybljv50q7b"))))
(build-system go-build-system)
(arguments
`(#:import-path "github.com/spf13/jwalterweatherman"))
(native-inputs
`(("go-github-com-stretchr-testify" ,go-github-com-stretchr-testify)))
(home-page "https://github.com/spf13/jwalterweatherman")
(synopsis "Go logging library")
(description "Go logging library")
(license license:expat)))
(define-public go-github-com-spf13-pflag
(package
(name "go-github-com-spf13-pflag")
@ -1191,8 +1289,8 @@ incoming requests with their respective handler.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"0gpmacngd0gpslnbkzi263f5ishigzgh6pbdv9hp092rnjl4nd31"))))
(base32
"0gpmacngd0gpslnbkzi263f5ishigzgh6pbdv9hp092rnjl4nd31"))))
(build-system go-build-system)
(arguments
'(#:import-path "github.com/spf13/pflag"))
@ -1206,6 +1304,143 @@ with the
GNU extensions} to the POSIX recommendations for command-line options.")
(license license:bsd-3)))
(define-public go-github-com-spf13-viper
(package
(name "go-github-com-spf13-viper")
(version "1.7.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/spf13/viper.git")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"099n2g7fg6r8hqyszqw2axr775qyhyvwhsykvgw0f0s16ql48h5c"))))
(build-system go-build-system)
(arguments
'(#:import-path "github.com/spf13/viper"))
(propagated-inputs
`(("github.com/spf13/afero" ,go-github-com-spf13-afero)
("github.com/spf13/cast" ,go-github-com-spf13-cast)
("github.com/spf13/pflag" ,go-github-com-spf13-pflag)
("github.com/spf13/jwalterweatherman" ,go-github-com-spf13-jwalterweatherman)
("github.com/fsnotify/fsnotify" ,go-github-com-fsnotify-fsnotify)
("github.com/hashicorp/hcl" ,go-github-com-hashicorp-hcl)
("github.com/magiconair/properties" ,go-github-com-magiconair-properties)
("github.com/mitchellh/mapstructure" ,go-github-com-mitchellh-mapstructure)
("github.com/pelletier/go-toml" ,go-github-com-pelletier-go-toml)
("github.com/subosito/gotenv" ,go-github-com-subosito-gotenv)
("gopkg.in/ini.v1" ,go-gopkg-in-ini-v1)
("gopkg.in/yaml.v2" ,go-gopkg-in-yaml-v2)))
(native-inputs
`(("go-github-com-stretchr-testify" ,go-github-com-stretchr-testify)))
(home-page "https://github.com/spf13/viper")
(synopsis "Go configuration with fangs")
(description
"Viper is a complete configuration solution for Go applications including
12-Factor apps. It is designed to work within an application, and can handle
all types of configuration needs and formats.")
(license license:expat)))
(define-public go-github-com-fsnotify-fsnotify
(package
(name "go-github-com-fsnotify-fsnotify")
(version "1.4.9")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/fsnotify/fsnotify")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"1i1r72knpbfwwql9frn9bqc3nhfc2ai5m6qllcyr6wban62lr40x"))))
(build-system go-build-system)
(arguments
`(#:import-path "github.com/fsnotify/fsnotify"))
(propagated-inputs
`(("golang.org/x/sys" ,go-golang-org-x-sys)))
(home-page "https://github.com/fsnotify/fsnotify")
(synopsis "File system notifications for Go")
(description "File system notifications for Go")
(license license:bsd-3)))
(define-public go-github-com-magiconair-properties
(package
(name "go-github-com-magiconair-properties")
(version "1.8.1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/magiconair/properties")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"19zqw1x0w0crh8zc84yy82nkcc5yjz72gviaf2xjgfm5a8np7nyb"))))
(build-system go-build-system)
(arguments
`(#:import-path "github.com/magiconair/properties"))
(home-page "https://github.com/magiconair/properties")
(synopsis "Java properties scanner for Go")
(description "Java properties scanner for Go")
(license license:bsd-2)))
(define-public go-github-com-pelletier-go-toml
(package
(name "go-github-com-pelletier-go-toml")
(version "1.8.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/pelletier/go-toml")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"0fxmjm85c9h43lvqz71wr93fcc63bhj82nwby80222xx8ja63g7y"))))
(build-system go-build-system)
(arguments
`(#:import-path "github.com/pelletier/go-toml"))
(native-inputs
`(("github.com/BurntSushi/toml" ,go-github-com-burntsushi-toml)
("github.com/davecgh/go-spew" ,go-github-com-davecgh-go-spew)
("gopkg.in/yaml.v2" ,go-gopkg-in-yaml-v2)))
(home-page "https://github.com/pelletier/go-toml")
(synopsis "Go library for the TOML configuration language")
(description "Go library for the TOML configuration language")
(license license:expat)))
(define-public go-github-com-subosito-gotenv
(package
(name "go-github-com-subosito-gotenv")
(version "1.2.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/subosito/gotenv")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"0mav91j7r4arjkpq5zcf9j74f6pww8ic53x43wy7kg3ibw31yjs5"))))
(build-system go-build-system)
(arguments
`(#:import-path "github.com/subosito/gotenv"))
(native-inputs
`(("go-github-com-stretchr-testify" ,go-github-com-stretchr-testify)))
(home-page "https://github.com/subosito/gotenv")
(synopsis "Go library for loading environment variables from files")
(description "Go library for loading environment variables from files")
(license license:expat)))
(define-public go-github-com-sirupsen-logrus
(package
(name "go-github-com-sirupsen-logrus")
@ -1474,6 +1709,30 @@ which satisfies the cron expression.")
(description "This package provides a test library for the Go language.")
(license license:asl2.0))))
(define-public go-gopkg-in-ini-v1
(package
(name "go-gopkg-in-ini-v1")
(version "1.56.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/go-ini/ini")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"0j5z0cngg6mq2f9id083jcdi7k6r2h35714pashv6sdv2q7bmfc5"))))
(build-system go-build-system)
(arguments
'(#:import-path "gopkg.in/ini.v1"
;; Requires large unpackaged test framework
#:tests? #f))
(home-page "https://gopkg.in/ini.v1")
(synopsis "Go library for ini files")
(description "Go library for ini files")
(license license:asl2.0)))
(define-public go-gopkg-in-yaml-v2
(package
(name "go-gopkg-in-yaml-v2")
@ -2404,6 +2663,28 @@ the current user without cgo. This library does that, enabling
cross-compilation.")
(license license:expat))))
(define-public go-github-com-mitchellh-mapstructure
(package
(name "go-github-com-mitchellh-mapstructure")
(version "1.1.2") ;; NOTE: Updating to 1.3.1 breaks tests on viper-1.7.0
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/mitchellh/mapstructure")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"03bpv28jz9zhn4947saqwi328ydj7f6g6pf1m2d4m5zdh5jlfkrr"))))
(build-system go-build-system)
(arguments
`(#:import-path "github.com/mitchellh/mapstructure"))
(home-page "https://github.com/mitchellh/mapstructure")
(synopsis "Go library for decoding generic map values")
(description "Go library for decoding generic map values")
(license license:expat)))
(define-public go-github-com-multiformats-go-multiaddr
(let ((commit "fe1c46f8be5af4aff4db286e08839295bd922efb")
(revision "0"))

View File

@ -206,14 +206,14 @@ with the @command{autotrace} utility or as a C library, @code{libautotrace}.")
(define-public blender
(package
(name "blender")
(version "2.82a")
(version "2.83.0")
(source (origin
(method url-fetch)
(uri (string-append "https://download.blender.org/source/"
"blender-" version ".tar.xz"))
(sha256
(base32
"18zbdgas6qf2kmvvlimxgnq7y9kj7hdxcgixrs6fj50x40q01q2d"))))
"07rzm4xaj94pjxy2vlqfhi1adsqpshfkrzrq8kljmcbnw22vrqhl"))))
(build-system cmake-build-system)
(arguments
(let ((python-version (version-major+minor (package-version python))))

View File

@ -353,24 +353,6 @@ graph-like environments, e.g. modular synths or finite state machine
diagrams.")
(license license:gpl3+)))
(define-public ganv-devel
(let ((commit "12f7d6b0438c94dd87f773a92eee3453d971846e")
(revision "1"))
(package
(inherit ganv)
(name "ganv")
(version (string-append "1.5.4-" revision "."
(string-take commit 9)))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://git.drobilla.net/ganv.git")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"1cr8w02lr6bk9mkxa12j3imq721b2an2yn4bj5wnwmpm91ddn2gi")))))))
(define-public gtksourceview-2
(package
(name "gtksourceview")
@ -1725,14 +1707,14 @@ glass artworks done by Venicians glass blowers.")
(define-public gtkspell3
(package
(name "gtkspell3")
(version "3.0.9")
(version "3.0.10")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/gtkspell/"
version "/" name "-" version ".tar.xz"))
(sha256
(base32
"09jdicmpipmj4v84gnkqwbmj4lh8v0i6pn967rb9jx4zg2ia9x54"))))
"0cjp6xdcnzh6kka42w9g0w2ihqjlq8yl8hjm9wsfnixk6qwgch5h"))))
(build-system gnu-build-system)
(native-inputs
`(("intltool" ,intltool)
@ -1743,7 +1725,7 @@ glass artworks done by Venicians glass blowers.")
("gtk+" ,gtk+)
("pango" ,pango)))
(propagated-inputs
`(("enchant" ,enchant-1.6))) ;gtkspell3-3.0.pc refers to it
`(("enchant" ,enchant))) ; gtkspell3-3.0.pc refers to it
(home-page "http://gtkspell.sourceforge.net")
(synopsis "Spell-checking addon for GTK's TextView widget")
(description

View File

@ -276,7 +276,7 @@ JNI.")
(version "1.8.4")
(source (origin
(method url-fetch)
(uri (string-append "http://archive.apache.org/dist/"
(uri (string-append "mirror://apache/dist/"
"ant/source/apache-ant-"
version "-src.tar.bz2"))
(sha256
@ -10832,7 +10832,7 @@ graphs, and pie charts.")
(version "3.1")
(source (origin
(method url-fetch)
(uri (string-append "https://archive.apache.org/dist/httpcomponents/"
(uri (string-append "mirror://apache/dist/httpcomponents/"
"commons-httpclient/source/commons-httpclient-"
version "-src.tar.gz"))
(sha256
@ -10928,7 +10928,7 @@ inside a Zip archive.")
(version "2.0.8")
(source (origin
(method url-fetch)
(uri (string-append "https://archive.apache.org/dist/jakarta/oro/"
(uri (string-append "mirror://apache/dist/jakarta/oro/"
"jakarta-oro-" version ".tar.gz"))
(sha256
(base32

View File

@ -1,5 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2017, 2019 Hartmut Goebel <h.goebel@crazy-compilers.com>
;;; Copyright © 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;;
;;; This file is part of GNU Guix.
;;;
@ -403,14 +404,14 @@ remind you to take a break now and then.")
(define-public smb4k
(package
(name "smb4k")
(version "3.0.2")
(version "3.0.6")
(source
(origin
(method url-fetch)
(uri (string-append "https://sourceforge.net/projects/smb4k/files/"
version "/smb4k-" version ".tar.xz/download"))
(sha256
(base32 "1daajaj8qhxkzz8dsaracwi49z4i57466h6qnqnh2ir2l54q00ir"))))
(base32 "0hz6nfd845bykf78s4g2qs77szl96gy6g8rpg44pqd39a0k0xbh7"))))
(build-system qt-build-system)
(native-inputs
`(("extra-cmake-modules" ,extra-cmake-modules)

View File

@ -599,7 +599,7 @@ Microsoft Publisher documents of all versions.")
(define-public libnumbertext
(package
(name "libnumbertext")
(version "1.0.5")
(version "1.0.6")
(source
(origin
(method url-fetch)
@ -607,7 +607,7 @@ Microsoft Publisher documents of all versions.")
"releases/download/" version
"/libnumbertext-" version ".tar.xz"))
(sha256
(base32 "1xzlwhwwhvr76kfdsw5gvfjfdayz803z65h331gv5dpc9imhijg1"))))
(base32 "0mxf22gpbr818ib4av17zmyx6i6nf4br5qlxq0qvfz5z6h5j57vk"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags '("--disable-static")))

View File

@ -194,11 +194,11 @@ defconfig. Return the appropriate make target if applicable, otherwise return
"deblob-check"))
(sha256 deblob-check-hash))))
(define deblob-scripts-5.6
(define deblob-scripts-5.7
(linux-libre-deblob-scripts
"5.6.7"
(base32 "196fdbfy1f8zbmnv0ik720snig2bacsh7hfyvgbmlsfk3cil2zgv")
(base32 "1g0bi3c8xzy1vz6w1xbpkb3a26bqn9d1yphcqz2ki4aikra81wid")))
"5.7.1"
(base32 "1c0n39wg6xij4x63ppg0m80kfcffkn3iilm3chyiix09n9g7vb78")
(base32 "02is246xaql1br3kizqicrkp982nw4gdwpn7nlzjazvsmyd1hcv2")))
(define deblob-scripts-5.4
(linux-libre-deblob-scripts
@ -371,50 +371,50 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(sha256 hash)))
(define-public linux-libre-5.6-version "5.6.17")
(define-public linux-libre-5.6-pristine-source
(let ((version linux-libre-5.6-version)
(hash (base32 "17kzalz8z6svv6nwa3dbmf7nyvpb2wwwyabj19vdwf6v05a28fn3")))
(define-public linux-libre-5.7-version "5.7.2")
(define-public linux-libre-5.7-pristine-source
(let ((version linux-libre-5.7-version)
(hash (base32 "02brxm78n0kg4mh48acvjsr7mpvaqd279ycyaixaflid1s1awrb0")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-5.6)))
deblob-scripts-5.7)))
(define-public linux-libre-5.4-version "5.4.45")
(define-public linux-libre-5.4-version "5.4.46")
(define-public linux-libre-5.4-pristine-source
(let ((version linux-libre-5.4-version)
(hash (base32 "0bpy2lb3bqmkaqxzdmssgmhbjsys7d3lyfv4x919q0596jgh6gqh")))
(hash (base32 "13hvnfdcbcb9a21zizq8d90mc8maxz03zmzsj6iqsjd2y7r4y1rh")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-5.4)))
(define-public linux-libre-4.19-version "4.19.127")
(define-public linux-libre-4.19-version "4.19.128")
(define-public linux-libre-4.19-pristine-source
(let ((version linux-libre-4.19-version)
(hash (base32 "0vsq5vjyh6n8acjnldfs0zny63l12fn2pssb8zbwidc8qmmqibw2")))
(hash (base32 "0g31ad3wziy4xqna0yvwjcnza3jhd93syjpfvmwh0b4pkj2adar9")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-4.19)))
(define-public linux-libre-4.14-version "4.14.183")
(define-public linux-libre-4.14-version "4.14.184")
(define-public linux-libre-4.14-pristine-source
(let ((version linux-libre-4.14-version)
(hash (base32 "11c0vd2pwplm8wafich4zg2mnp10vvnap987c5jh96w1avpsyra2")))
(hash (base32 "0h6r06c1d7amkfglsr66ic89p0zxpmk7jkq1ylcbknmkiwkixx9g")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-4.14)))
(define-public linux-libre-4.9-version "4.9.226")
(define-public linux-libre-4.9-version "4.9.227")
(define-public linux-libre-4.9-pristine-source
(let ((version linux-libre-4.9-version)
(hash (base32 "1jj5ydz5cy87z7hrv54bkyl9739lpzja8580ngjhrip5iwb8q2j6")))
(hash (base32 "0pqc0wld4s4zjas95xm54mrkk00l9zkc59b6i9gq4km126s8bi1q")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-4.9)))
(define-public linux-libre-4.4-version "4.4.226")
(define-public linux-libre-4.4-version "4.4.227")
(define-public linux-libre-4.4-pristine-source
(let ((version linux-libre-4.4-version)
(hash (base32 "1dwvm81i62b06jsl38spfn719zrsbwq5z8viwckrpw4ma4w9k0j1")))
(hash (base32 "196x57w740firg8zchypq4vq6a83ymmwn9amqrscym9zr0pcgm40")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-4.4)))
@ -447,14 +447,10 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(patches (append (origin-patches source)
patches))))
(define-public linux-libre-5.6-source
(source-with-patches linux-libre-5.6-pristine-source
(define-public linux-libre-5.7-source
(source-with-patches linux-libre-5.7-pristine-source
(list %boot-logo-patch
%linux-libre-arm-export-__sync_icache_dcache-patch
;; Pinebook Pro patch from linux-next,
;; can be dropped for linux-libre 5.7
(search-patch
"linux-libre-support-for-Pinebook-Pro.patch"))))
%linux-libre-arm-export-__sync_icache_dcache-patch)))
(define-public linux-libre-5.4-source
(source-with-patches linux-libre-5.4-pristine-source
@ -555,9 +551,9 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(description "Headers of the Linux-Libre kernel.")
(license license:gpl2)))
(define-public linux-libre-headers-5.6
(make-linux-libre-headers* linux-libre-5.6-version
linux-libre-5.6-source))
(define-public linux-libre-headers-5.7
(make-linux-libre-headers* linux-libre-5.7-version
linux-libre-5.7-source))
(define-public linux-libre-headers-5.4
(make-linux-libre-headers* linux-libre-5.4-version
@ -860,9 +856,9 @@ It has been modified to remove all non-free binary blobs.")
("CONFIG_RTC_DRV_RK808" . #t))
%default-extra-linux-options)))
(define-public linux-libre-arm-generic-5.6
(make-linux-libre* linux-libre-5.6-version
linux-libre-5.6-source
(define-public linux-libre-arm-generic-5.7
(make-linux-libre* linux-libre-5.7-version
linux-libre-5.7-source
'("armhf-linux")
#:defconfig "multi_v7_defconfig"
#:extra-version "arm-generic"
@ -922,9 +918,9 @@ It has been modified to remove all non-free binary blobs.")
("CONFIG_RTC_DRV_RK808" . #t))
%default-extra-linux-options)))
(define-public linux-libre-arm64-generic-5.6
(make-linux-libre* linux-libre-5.6-version
linux-libre-5.6-source
(define-public linux-libre-arm64-generic-5.7
(make-linux-libre* linux-libre-5.7-version
linux-libre-5.7-source
'("aarch64-linux")
#:defconfig "defconfig"
#:extra-version "arm64-generic"
@ -1151,6 +1147,8 @@ supported under @file{/sys/class/backlight/}.")
(base32
"1qi4l6yam8nrlmc3zwkrz9vph0xsj1cgmkqci4652mbpbzigg7vn"))))
(build-system linux-module-build-system)
(arguments
`(#:tests? #f)) ; no test suite
(home-page "https://github.com/umlaeute/v4l2loopback")
(synopsis "Linux kernel module to create virtual V4L2 video devices")
(description
@ -2025,15 +2023,17 @@ external rate conversion.")
(define-public iptables
(package
(name "iptables")
(version "1.8.4")
(source (origin
(method url-fetch)
(uri (string-append
"mirror://netfilter.org/iptables/iptables-"
version ".tar.bz2"))
(sha256
(base32
"0z0mgs1ghvn3slc868mgbf2g26njgrzcy5ggyb5w4i55j1a3lflr"))))
;; XXX When updating, remove the install-missing-script phase.
(version "1.8.5")
(source
(origin
(method url-fetch)
(uri (list (string-append "mirror://netfilter.org/iptables/iptables-"
version ".tar.bz2")
(string-append "https://www.netfilter.org/projects/iptables/"
"files/iptables-" version ".tar.bz2")))
(sha256
(base32 "02a3575ypdpg6a2x752mhk3f7h1381ymkq1n0gss6fp6292xfmyl"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)
@ -2045,7 +2045,19 @@ external rate conversion.")
(arguments
'(#:tests? #f ; no test suite
#:configure-flags ; add $libdir to the RUNPATH of executables
(list (string-append "LDFLAGS=-Wl,-rpath=" %output "/lib"))))
(list (string-append "LDFLAGS=-Wl,-rpath=" %output "/lib"))
#:phases
(modify-phases %standard-phases
(add-after 'install 'install-missing-script
;; A typo prevents installation of /sbin/iptables-apply. It's been
;; fixed upstream (d4ed0c741fc789bb09d977d74d30875fdd50d08b), but
;; a patch would require bootstrapping and more inputs. Simply copy
;; the file ourselves.
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(sbin (string-append out "/sbin")))
(install-file "iptables/iptables-apply" sbin)
#t))))))
(home-page "https://www.netfilter.org/projects/iptables/index.html")
(synopsis "Programs to configure Linux IP packet filtering rules")
(description
@ -3893,7 +3905,7 @@ Translation (@dfn{SAT}) are also supported.")
(define-public nvme-cli
(package
(name "nvme-cli")
(version "1.10.1")
(version "1.11.2")
(home-page "https://github.com/linux-nvme/nvme-cli")
(source (origin
(method git-fetch)
@ -3901,7 +3913,7 @@ Translation (@dfn{SAT}) are also supported.")
(url home-page)
(commit (string-append "v" version))))
(sha256
(base32 "12wp2wxmsw2v8m9bhvwvdbhdgx1md8iilhbl19sfzz2araiwi2x8"))
(base32 "0ngh7zffjf6ac8b22hdi4ry7hjlafih172hrbpw8j17r7c0wjy9i"))
(file-name (git-file-name name version))))
(build-system gnu-build-system)
(arguments
@ -4933,7 +4945,7 @@ feature, and a laptop with an accelerometer. It has no effect on SSDs.")
(define-public thinkfan
(package
(name "thinkfan")
(version "1.1")
(version "1.2")
(source
(origin
(method git-fetch)
@ -4942,7 +4954,7 @@ feature, and a laptop with an accelerometer. It has no effect on SSDs.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1fxd1w3z65glw6y04myn7ihgswkx6sqnkky159mik4n96pfrsvr5"))))
(base32 "0vmkpj575a1w52zx1jn6kdrk8rc9vp0f1bldi1bajicpgbs6rjd3"))))
(build-system cmake-build-system)
(arguments
`(#:modules ((guix build cmake-build-system)
@ -4978,7 +4990,7 @@ feature, and a laptop with an accelerometer. It has no effect on SSDs.")
(inputs
`(("libatasmart" ,libatasmart)
("yaml-cpp" ,yaml-cpp)))
(home-page "http://thinkfan.sourceforge.net/")
(home-page "https://github.com/vmatare/thinkfan")
(synopsis "Simple fan control program")
(description
"Thinkfan is a simple fan control program. It reads temperatures,
@ -6027,14 +6039,14 @@ re-use code and to avoid re-inventing the wheel.")
(define-public libnftnl
(package
(name "libnftnl")
(version "1.1.6")
(version "1.1.7")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://netfilter.org/libnftnl/"
"libnftnl-" version ".tar.bz2"))
(sha256
(base32 "1jhyxsfrfqjascrm5lnxlcyzj6n0gc0qc1bp2asb7m61dxlmmsy1"))))
(base32 "13zd90bfrr0q3j0l0cbc8kiizccw6n8gp727kqnfljh024zw3nr0"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)))
@ -6051,7 +6063,7 @@ used by nftables.")
(define-public nftables
(package
(name "nftables")
(version "0.9.3")
(version "0.9.5")
(source
(origin
(method url-fetch)
@ -6060,7 +6072,7 @@ used by nftables.")
(string-append "https://www.nftables.org/projects/nftables"
"/files/nftables-" version ".tar.bz2")))
(sha256
(base32 "0y6vbqp6x8w165q65h4n9sba1406gaz0d4744gqszbm7w9f92swm"))))
(base32 "05kyri19q776mymkbcxq3786l6nrf4xg7f3n8my0aw63mdz9bhgj"))))
(build-system gnu-build-system)
(arguments `(#:configure-flags
'("--disable-man-doc"))) ; FIXME: Needs docbook2x.

View File

@ -11567,6 +11567,38 @@ accompaniment to the standard ANSI facilities.")
(define-public cl-osicat
(sbcl-package->cl-source-package sbcl-osicat))
(define-public sbcl-clx-xembed
(let ((commit "a5c4b844d31ee68ffa58c933cc1cdddde6990743")
(revision "1"))
(package
(name "sbcl-clx-xembed")
(version (git-version "0.1" revision commit))
(home-page "https://github.com/laynor/clx-xembed")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/laynor/clx-xembed.git")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "1abx4v36ycmfjdwpjk4hh8058ya8whwia7ds9vd96q2qsrs57f12"))))
(build-system asdf-build-system/sbcl)
(arguments
`(#:asd-system-name "xembed"))
(inputs
`(("sbcl-clx" ,sbcl-clx)))
(synopsis "CL(x) xembed protocol implementation ")
(description "CL(x) xembed protocol implementation")
;; MIT License
(license license:expat))))
(define-public cl-clx-xembed
(sbcl-package->cl-source-package sbcl-clx-xembed))
(define-public ecl-clx-xembed
(sbcl-package->ecl-package sbcl-clx-xembed))
(define-public sbcl-quantile-estimator
(package
(name "sbcl-quantile-estimator")

View File

@ -3,7 +3,7 @@
;;; Copyright © 2016, 2020 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016, 2017, 2020 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2016 Hartmut Goebel <h.goebel@crazy-compilers.com>
;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018 Kei Kebreau <kkebreau@posteo.net>
;;; Copyright © 2018 Mark Meyer <mark@ofosos.org>
;;; Copyright © 2018 Ben Woodcroft <donttrustben@gmail.com>
@ -715,14 +715,14 @@ than 8 bits, and at the end only some significant 8 bits are kept.")
(define-public dlib
(package
(name "dlib")
(version "19.7")
(version "19.20")
(source (origin
(method url-fetch)
(uri (string-append
"http://dlib.net/files/dlib-" version ".tar.bz2"))
(sha256
(base32
"1mljz02kwkrbggyncxv5fpnyjdybw2qihaacb3js8yfkw12vwpc2"))
"139jyi19qz37wwmmy48gil9d1kkh2r3w3bwdzabha6ayxmba96nz"))
(modules '((guix build utils)))
(snippet
'(begin

View File

@ -711,7 +711,7 @@ security functionality including PGP, S/MIME, SSH, and SSL.")
(define-public mu
(package
(name "mu")
(version "1.4.9")
(version "1.4.10")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/djcb/mu/releases/"
@ -719,7 +719,7 @@ security functionality including PGP, S/MIME, SSH, and SSL.")
"mu-" version ".tar.xz"))
(sha256
(base32
"0dgmwdaszh5m7v1py3f9n9f6avb30vrl93g58a1k225iwdsv01d5"))))
"0vbyrmv3d2bja4vx86za93gq46vxg18j12g0lca3x1dl8d5g2xa6"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)
@ -1209,14 +1209,14 @@ which can add many functionalities to the base client.")
(define-public msmtp
(package
(name "msmtp")
(version "1.8.10")
(version "1.8.11")
(source
(origin
(method url-fetch)
(uri (string-append "https://marlam.de/msmtp/releases/"
"/msmtp-" version ".tar.xz"))
(sha256
(base32 "041g921rdjiv8bapp61gp4rylq8cckfkcwzyh8bs7xwxs4wpzfna"))))
(base32 "0q0fg235qk448l1xjcwyxr7vcpzk6w57jzhjbkb0m7nffyhhypzj"))))
(build-system gnu-build-system)
(inputs
`(("libsecret" ,libsecret)
@ -2159,14 +2159,14 @@ converts them to maildir format directories.")
(define-public mpop
(package
(name "mpop")
(version "1.4.9")
(version "1.4.10")
(source
(origin
(method url-fetch)
(uri (string-append "https://marlam.de/mpop/releases/"
"mpop-" version ".tar.xz"))
(sha256
(base32 "0hinmyd4lipy9wi3grwm72vv6xrpf4m08i9g9nlxzxnwfanw885q"))))
(base32 "1243hazpiwgvz2m3p48cdh0yw1019i6xjxgc7qyhmxcdy0inb6wy"))))
(build-system gnu-build-system)
(inputs
`(("gnutls" ,gnutls)))
@ -2322,6 +2322,13 @@ transfer protocols.")
"--with-table-db")
#:phases
(modify-phases %standard-phases
;; See: https://github.com/OpenSMTPD/OpenSMTPD/issues/1069.
(add-after 'unpack 'fix-smtpctl-encrypt-bug
(lambda _
(substitute* "smtpd/smtpctl.c"
(("\"encrypt\", \"--\",")
"\"encrypt\","))
#t))
;; Fix some incorrectly hard-coded external tool file names.
(add-after 'unpack 'patch-FHS-file-names
(lambda _

View File

@ -164,7 +164,7 @@ the traditional flat-text whatis databases.")
(define-public man-pages
(package
(name "man-pages")
(version "5.06")
(version "5.07")
(source
(origin
(method url-fetch)
@ -174,7 +174,7 @@ the traditional flat-text whatis databases.")
(string-append "mirror://kernel.org/linux/docs/man-pages/Archive/"
"man-pages-" version ".tar.xz")))
(sha256
(base32 "0l7ypgl36jswa077qvdh1rcsvnwr64vja6cc32bab86sm41akf3h"))))
(base32 "13b3q7c67r0wkla4pdihl1qh09k67ms2z5jgzfqgpdqqy6mgziwd"))))
(build-system gnu-build-system)
(arguments
'(#:phases (modify-phases %standard-phases (delete 'configure))

View File

@ -1567,7 +1567,7 @@ online as well as original implementations of various other algorithms.")
(source (origin
(method url-fetch)
(uri (string-append
"http://www.coin-or.org/download/source/Ipopt/Ipopt-"
"https://www.coin-or.org/download/source/Ipopt/Ipopt-"
version".tgz"))
(sha256
(base32
@ -1601,7 +1601,7 @@ online as well as original implementations of various other algorithms.")
(inputs
;; TODO: Maybe add dependency on COIN-MUMPS, ASL, and HSL.
`(("lapack" ,lapack))) ;for both libblas and liblapack
(home-page "http://www.coin-or.org")
(home-page "https://www.coin-or.org")
(synopsis "Large-scale nonlinear optimizer")
(description
"The Interior Point Optimizer (IPOPT) is a software package for

View File

@ -2,6 +2,7 @@
;;; Copyright © 2018 Julien Lepiller <julien@lepiller.eu>
;;; Copyright © 2019 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2019 Björn Höfling <bjoern.hoefling@bjoernhoefling.de>
;;; Copyright © 2020 Efraim Flashner <efraim@flashner.co.il>
;;;
;;; This file is part of GNU Guix.
;;;
@ -339,7 +340,7 @@ Maven Wagon, for use in Maven.")))
(version "3.2.1")
(source (origin
(method url-fetch)
(uri (string-append "https://archive.apache.org/dist/maven/shared/"
(uri (string-append "mirror://apache/dist/maven/shared/"
"maven-shared-utils-" version "-source-release.zip"))
(sha256
(base32
@ -379,7 +380,7 @@ replacement with improvements.")
(version "3.5")
(source (origin
(method url-fetch)
(uri (string-append "https://archive.apache.org/dist/maven/"
(uri (string-append "mirror://apache/dist/maven/"
"plugin-tools/maven-plugin-tools-" version
"-source-release.zip"))
(sha256 (base32 "1ryqhs62j5pas93brhf5dsnvp99hxbvssf681yj5rk3r9h24hqm2"))))
@ -403,7 +404,7 @@ replacement with improvements.")
(version "3.1.0")
(source (origin
(method url-fetch)
(uri (string-append "https://archive.apache.org/dist/maven/wagon/"
(uri (string-append "mirror://apache/dist/maven/wagon/"
"wagon-" version "-source-release.zip"))
(sha256 (base32 "0r07j6xdzdnrvqnv8ida7dx1m05pznh5qgmcfcfpyvg9nxbj3l1n"))))
(build-system ant-build-system)
@ -690,7 +691,7 @@ gets and puts artifacts through HTTP(S) using Apache HttpClient-4.x.")))
(version "3.6.1")
(source (origin
(method url-fetch)
(uri (string-append "https://archive.apache.org/dist/maven/"
(uri (string-append "mirror://apache/dist/maven/"
"maven-3/" version "/source/"
"apache-maven-" version "-src.tar.gz"))
(sha256 (base32 "0grw9zp166ci53rd7qkyy2qmwmik37xhiz1z84jpm0msyvzj2n82"))

View File

@ -565,14 +565,14 @@ compromised.")
(define-public znc
(package
(name "znc")
(version "1.8.0")
(version "1.8.1")
(source (origin
(method url-fetch)
(uri (string-append "http://znc.in/releases/archive/znc-"
version ".tar.gz"))
(sha256
(base32
"0m5xf60r40pgbg9lyk56dafxj2hj149pn2wf8vzsp8xgq4kv5zcl"))))
"0hb1v167aa6gv5bcwz352l6b8gnd74ymjw92y4x882l099hzg59i"))))
(build-system cmake-build-system)
(arguments
`(#:configure-flags

View File

@ -1881,7 +1881,7 @@ export.")
(define-public pd
(package
(name "pd")
(version "0.50-2")
(version "0.51-0")
(source (origin
(method url-fetch)
(uri
@ -1889,23 +1889,25 @@ export.")
version ".src.tar.gz"))
(sha256
(base32
"0dz6r6jy0zfs1xy1xspnrxxks8kddi9c7pxz4vpg2ygwv83ghpg5"))))
"0qzv4hjf4h7xx00ihnbl43pxa0fia9qkc8nwgzhqrs12jiljz6ps"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; no "check" target
#:configure-flags
(list
"--enable-jack"
(string-append "--with-wish=" (string-append
(assoc-ref %build-inputs "tk")
"/bin/wish8.6")))
#:phases
(modify-phases %standard-phases
(add-before 'configure 'fix-with-path
(lambda _
(substitute* "tcl/pd-gui.tcl"
(("exec wish ") (string-append "exec " (which "wish8.6") " ")))
#t)))))
(let ((wish (string-append "wish" (version-major+minor
(package-version tk)))))
`(#:tests? #f ; no "check" target
#:configure-flags
(list
"--enable-jack"
(string-append "--with-wish=" (string-append
(assoc-ref %build-inputs "tk")
"/bin/" ,wish)))
#:phases
(modify-phases %standard-phases
(add-before 'configure 'fix-with-path
(lambda _
(substitute* "tcl/pd-gui.tcl"
(("exec wish ") (string-append "exec " (which ,wish) " ")))
#t))))))
(native-inputs
`(("autoconf" ,autoconf)
("automake" ,automake)
@ -1916,7 +1918,7 @@ export.")
`(("tk" ,tk)
("alsa-lib" ,alsa-lib)
("jack" ,jack-1)))
(home-page "http://puredata.info")
(home-page "https://puredata.info")
(synopsis "Visual programming language for artistic performances")
(description
"Pure Data (aka Pd) is a visual programming language. Pd enables
@ -3691,7 +3693,7 @@ plugins, a switch trigger, a toggle switch, and a peakmeter.")
("lv2" ,lv2)
("lilv" ,lilv)
("raul" ,raul-devel)
("ganv" ,ganv-devel)
("ganv" ,ganv)
("suil" ,suil)
("serd" ,serd)
("sord" ,sord)

View File

@ -589,14 +589,14 @@ receiving NDP messages.")
(define-public ethtool
(package
(name "ethtool")
(version "5.6")
(version "5.7")
(source (origin
(method url-fetch)
(uri (string-append "mirror://kernel.org/software/network/"
"ethtool/ethtool-" version ".tar.xz"))
(sha256
(base32
"159r0hwax0qs5diayw2glxshqxrigk0v67hgmbq56ldddm91n3ya"))))
"0f9w0pqkvwn540rasmj6c8897g9gj2hmjnbkhpi9yf1s7jyvhkkj"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)))
@ -3106,7 +3106,7 @@ cables.")
(define-public haproxy
(package
(name "haproxy")
(version "2.1.5")
(version "2.1.6")
(source (origin
(method url-fetch)
(uri (string-append "https://www.haproxy.org/download/"
@ -3114,7 +3114,7 @@ cables.")
"/src/haproxy-" version ".tar.gz"))
(sha256
(base32
"188ff33610jj11knjwjqwxci4p0i63n9k0l8bdb47ckahg2ll5s2"))))
"1pyz4gckdn8982vpb1iiw9agwp2s5p8wc0nn1qh1ic0wq3lrnpg6"))))
(build-system gnu-build-system)
(arguments
`(#:make-flags

View File

@ -118,8 +118,8 @@
;; Note: the 'update-guix-package.scm' script expects this definition to
;; start precisely like this.
(let ((version "1.1.0")
(commit "ab9e30039d9312285ea3f4ed43f81c9c2c0dae08")
(revision 9))
(commit "141b5c162048f5cb52e8c90ff7c16a2e98babcfb")
(revision 10))
(package
(name "guix")
@ -135,7 +135,7 @@
(commit commit)))
(sha256
(base32
"0qb2haf5dyq5x1hcjyx58v455lzi6ffa68ldm0615jy25w5phmxq"))
"1j3vag994kj05b09a7w4lyas991a19hbbslcm9xvn5k2ilf4qskz"))
(file-name (string-append "guix-" version "-checkout"))))
(build-system gnu-build-system)
(arguments

View File

@ -581,7 +581,7 @@ key URIs using the standard otpauth:// scheme.")
(define-public qtpass
(package
(name "qtpass")
(version "1.2.3")
(version "1.3.2")
(source
(origin
(method git-fetch)
@ -591,10 +591,15 @@ key URIs using the standard otpauth:// scheme.")
(file-name (git-file-name name version))
(sha256
(base32
"1vfhfyccrxq9snyvayqfzm5rqik8ny2gysyv7nipc91kvhq3bhky"))))
"0748hjvhjrybi33ci3c8hcr74k9pdrf5jv8npf9hrsrmdyy1kr9x"))))
(build-system gnu-build-system)
(arguments
`(#:phases
`(#:modules ((guix build gnu-build-system)
(guix build qt-utils)
(guix build utils))
#:imported-modules (,@%gnu-build-system-modules
(guix build qt-utils))
#:phases
(modify-phases %standard-phases
(replace 'configure
(lambda* (#:key inputs outputs #:allow-other-keys)
@ -630,6 +635,10 @@ key URIs using the standard otpauth:// scheme.")
(string-append icons "/qtpass-icon.svg"))
(install-file "qtpass.1" man)
#t)))
(add-after 'install 'wrap-qt
(lambda* (#:key outputs #:allow-other-keys)
(wrap-qt-program (assoc-ref outputs "out") "qtpass")
#t))
(add-before 'check 'check-setup
;; Make Qt render "offscreen", required for tests.
(lambda _

View File

@ -1,97 +0,0 @@
diff a/dhall-lang/tests/import/failure/referentiallyInsane.dhall b/dhall-lang/tests/import/failure/referentiallyInsane.dhall
--- a/dhall-lang/tests/import/failure/referentiallyInsane.dhall
+++ /dev/null
@@ -1,13 +0,0 @@
-{- The following remote import attempts to import an environment variable, which
- must be disallowed by the referential sanity check
-
- One reason for doing this is to protect against remote imports exfiltrating
- environment variables (such as via custom headers). Only referentially
- opaque imports (i.e. local imports) have permission to refer to other
- referentially opaque imports in order to protect against this attack.
-
- The referential sanity check also ensures that remote imports are
- referentially transparent. Or in other words, any import that is globally
- addressable must have a meaning that is not context-sensitive.
--}
-https://raw.githubusercontent.com/dhall-lang/dhall-lang/master/tests/import/data/referentiallyOpaque.dhall
diff a/dhall-lang/tests/import/success/customHeadersA.dhall b/dhall-lang/tests/import/success/customHeadersA.dhall
--- a/dhall-lang/tests/import/success/customHeadersA.dhall
+++ /dev/null
@@ -1,3 +0,0 @@
-https://httpbin.org/user-agent
- using [ { mapKey = "User-Agent", mapValue = "Dhall" } ]
- as Text
diff a/dhall-lang/tests/import/success/noHeaderForwardingA.dhall b/dhall-lang/tests/import/success/noHeaderForwardingA.dhall
--- a/dhall-lang/tests/import/success/noHeaderForwardingA.dhall
+++ /dev/null
@@ -1,6 +0,0 @@
-{- The purpose of this test is to verify that the custom headers supplied to
- this import are not forwarded to the transitive import of
- https://httpbin.org/user-agent
--}
-https://raw.githubusercontent.com/dhall-lang/dhall-lang/master/tests/import/success/customHeadersA.dhall
- using [ { mapKey = "User-Agent", mapValue = "Secret" } ]
diff a/dhall-lang/tests/import/success/unit/RemoteAsTextA.dhall b/dhall-lang/tests/import/success/unit/RemoteAsTextA.dhall
--- a/dhall-lang/tests/import/success/unit/RemoteAsTextA.dhall
+++ /dev/null
@@ -1 +0,0 @@
-https://raw.githubusercontent.com/dhall-lang/dhall-lang/0b983b92aa2222dc3e292c20550ee37dea3f41df/tests/import/data/example.txt as Text
diff a/dhall-lang/tests/import/success/unit/SimpleRemoteA.dhall b/dhall-lang/tests/import/success/unit/SimpleRemoteA.dhall
--- a/dhall-lang/tests/import/success/unit/SimpleRemoteA.dhall
+++ /dev/null
@@ -1 +0,0 @@
-https://raw.githubusercontent.com/dhall-lang/dhall-lang/0b983b92aa2222dc3e292c20550ee37dea3f41df/tests/import/data/simple.dhall
diff a/dhall-lang/tests/import/success/unit/asLocation/RemoteChain1A.dhall b/dhall-lang/tests/import/success/unit/asLocation/RemoteChain1A.dhall
--- a/dhall-lang/tests/import/success/unit/asLocation/RemoteChain1A.dhall
+++ /dev/null
@@ -1 +0,0 @@
-https://raw.githubusercontent.com/dhall-lang/dhall-lang/0b983b92aa2222dc3e292c20550ee37dea3f41df/tests/import/data/simpleLocation.dhall
diff a/dhall-lang/tests/import/success/unit/asLocation/RemoteChain2A.dhall b/dhall-lang/tests/import/success/unit/asLocation/RemoteChain2A.dhall
--- a/dhall-lang/tests/import/success/unit/asLocation/RemoteChain2A.dhall
+++ /dev/null
@@ -1 +0,0 @@
-https://raw.githubusercontent.com/Nadrieril/dhall-rust/f7d8c64a9799f139ad65427c2518376adb9e2e2f/dhall/tests/import/success/unit/asLocation/Canonicalize3A.dhall
diff a/dhall-lang/tests/import/success/unit/asLocation/RemoteChain3A.dhall b/dhall-lang/tests/import/success/unit/asLocation/RemoteChain3A.dhall
--- a/dhall-lang/tests/import/success/unit/asLocation/RemoteChain3A.dhall
+++ /dev/null
@@ -1 +0,0 @@
-https://raw.githubusercontent.com/Nadrieril/dhall-rust/f7d8c64a9799f139ad65427c2518376adb9e2e2f/dhall/tests/import/success/unit/asLocation/Canonicalize5A.dhall
diff a/dhall-lang/tests/import/success/unit/asLocation/RemoteChainEnvA.dhall b/dhall-lang/tests/import/success/unit/asLocation/RemoteChainEnvA.dhall
--- a/dhall-lang/tests/import/success/unit/asLocation/RemoteChainEnvA.dhall
+++ /dev/null
@@ -1,5 +0,0 @@
-{-
- This test verifies that `env:VAR as Location` isn't rejected as referentially opaque,
- as `env:VAR` on its own would.
--}
-https://raw.githubusercontent.com/Nadrieril/dhall-rust/f7d8c64a9799f139ad65427c2518376adb9e2e2f/dhall/tests/import/success/unit/asLocation/EnvA.dhall
diff a/dhall-lang/tests/import/success/unit/asLocation/RemoteChainMissingA.dhall b/dhall-lang/tests/import/success/unit/asLocation/RemoteChainMissingA.dhall
--- a/dhall-lang/tests/import/success/unit/asLocation/RemoteChainMissingA.dhall
+++ /dev/null
@@ -1,6 +0,0 @@
-{- This test verifies that `missing as Location` succeeds when chained since:
- * The `missing` is never actually resolved (due to the `as Location`)
- * The `missing` should be treated as referentially transparent (and therefore
- be a valid transitive dependency of a remote import)
--}
-https://raw.githubusercontent.com/Nadrieril/dhall-rust/f7d8c64a9799f139ad65427c2518376adb9e2e2f/dhall/tests/import/success/unit/asLocation/MissingA.dhall
diff a/dhall-lang/tests/type-inference/success/CacheImportsA.dhall b/dhall-lang/tests/type-inference/success/CacheImportsA.dhall
--- a/dhall-lang/tests/type-inference/success/CacheImportsA.dhall
+++ /dev/null
@@ -1,6 +0,0 @@
-{-
- This URL returns (probably) a different result for each request. This test
- ensures that import results for a given URL are correctly cached within an
- execution of dhall.
--}
-let _ = assert : https://csrng.net/csrng/csrng.php?min=0&max=1000 as Text === https://csrng.net/csrng/csrng.php?min=0&max=1000 as Text in 0
diff a/dhall-lang/tests/type-inference/success/CacheImportsCanonicalizeA.dhall b/dhall-lang/tests/type-inference/success/CacheImportsCanonicalizeA.dhall
--- a/dhall-lang/tests/type-inference/success/CacheImportsCanonicalizeA.dhall
+++ /dev/null
@@ -1,5 +0,0 @@
-{-
- This URL returns (probably) a different result for each request. This test
- ensures that import locations are canonicalized before being cached.
--}
-let _ = assert : https://csrng.net/csrng/csrng.php?min=0&max=1000 as Text === https://csrng.net/csrng/../csrng/csrng.php?min=0&max=1000 as Text in 0

View File

@ -0,0 +1,79 @@
From bc22f7d43c12c5f79c71b0319666e71f29d61322 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jakub=20K=C4=85dzio=C5=82ka?= <kuba@kadziolka.net>
Date: Mon, 25 May 2020 18:53:04 +0200
Subject: [PATCH] Disable self-update.
Based on a Fedora patch by Elliott Sales de Andrade.
---
cli/cli.go | 44 +-------------------------------------------
1 file changed, 1 insertion(+), 43 deletions(-)
diff --git a/cli/cli.go b/cli/cli.go
index 4312eb0..5f62297 100644
--- a/cli/cli.go
+++ b/cli/cli.go
@@ -10,13 +10,10 @@ import (
"io"
"io/ioutil"
"net/http"
- "runtime"
"strings"
"time"
"github.com/blang/semver"
- "github.com/exercism/cli/debug"
- update "github.com/inconshreveable/go-update"
)
var (
@@ -95,46 +92,7 @@ func (c *CLI) IsUpToDate() (bool, error) {
// Upgrade allows the user to upgrade to the latest version of the CLI.
func (c *CLI) Upgrade() error {
- var (
- OS = osMap[runtime.GOOS]
- ARCH = archMap[runtime.GOARCH]
- )
-
- if OS == "" || ARCH == "" {
- return fmt.Errorf("unable to upgrade: OS %s ARCH %s", OS, ARCH)
- }
-
- buildName := fmt.Sprintf("%s-%s", OS, ARCH)
- if BuildARCH == "arm" {
- if BuildARM == "" {
- return fmt.Errorf("unable to upgrade: arm version not found")
- }
- buildName = fmt.Sprintf("%s-v%s", buildName, BuildARM)
- }
-
- var downloadRC *bytes.Reader
- for _, a := range c.LatestRelease.Assets {
- if strings.Contains(a.Name, buildName) {
- debug.Printf("Downloading %s\n", a.Name)
- var err error
- downloadRC, err = a.download()
- if err != nil {
- return fmt.Errorf("error downloading executable: %s", err)
- }
- break
- }
- }
- if downloadRC == nil {
- return fmt.Errorf("no executable found for %s/%s%s", BuildOS, BuildARCH, BuildARM)
- }
-
- bin, err := extractBinary(downloadRC, OS)
- if err != nil {
- return err
- }
- defer bin.Close()
-
- return update.Apply(bin, update.Options{})
+ return fmt.Errorf("Please use Guix to update Exercism")
}
func (c *CLI) fetchLatestRelease() error {
--
2.26.2

View File

@ -0,0 +1,349 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2016, 2020 Hartmut Goebel <h.goebel@crazy-compilers.com>
;;;
;;; 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 pep)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
#:use-module (guix git-download)
#:use-module (guix hg-download)
#:use-module (guix build-system gnu)
#:use-module (guix build-system python)
#:use-module (gnu packages)
#:use-module (gnu packages base)
#:use-module (gnu packages boost)
#:use-module (gnu packages documentation)
#:use-module (gnu packages java)
#:use-module (gnu packages linux)
#:use-module (gnu packages mail) ; for libetpan
#:use-module (gnu packages nettle)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages sequoia)
#:use-module (gnu packages sqlite)
#:use-module (gnu packages tls)
#:use-module (gnu packages xml))
(define-public yml2
(package
(name "yml2")
(version "2.6.3")
(source (origin
(method hg-fetch)
(uri (hg-reference
(url "https://pep.foundation/dev/repos/yml2")
(changeset version)))
(file-name (string-append name "-" version "-checkout"))
(sha256
(base32 "10jjjyq1mz18zkzvxd62aba00h69gd9cglisqcvb81j67ml2v1bx"))))
(build-system python-build-system)
(propagated-inputs
`(("python-lxml" ,python-lxml)))
(home-page "https://fdik.org/yml/")
(synopsis "Use a Domain Specific Language for XML without defining
a grammar")
(description "The YML compiler is a small Python script. It
provides the command line front end yml2c. As default, it compiles
your script and outputs to stdout, that usually is the terminal. Your
shell provides options to redirect the output into a pipe or a file.")
(license license:gpl2)))
(define fdik-libetpan
;; pEp Engine requires libetpan with a set of patches that have not been
;; upstreamed yet.
(let ((commit "210ba2b3b310b8b7a6ee4a4e35e50f7fa379643f") ; 2020-06-03
(checksum "00000nij3ray7nssvq0lzb352wmnab8ffzk7dgff2c68mvjbh1l6")
(revision "5"))
(package
(inherit libetpan)
(name "fdik-libetpan")
(version (string-append "1.6-" revision "." (string-take commit 8)))
(source
(origin
(inherit (package-source libetpan))
(method git-fetch)
(uri (git-reference
(url "https://github.com/fdik/libetpan")
(commit commit)))
(file-name (string-append name "-" version))
(sha256 (base32 checksum)))))))
(define sequoia4pEp
;; Currently pEp Engine requires sequoia in not-so-current version
(package/inherit sequoia
(name "sequoia")
(version "0.15.0-pEp")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://gitlab.com/sequoia-pgp/sequoia.git")
(commit "0eb1b6cd846ea8c36b3dfdf01ec88383fc64f2fe")))
(sha256
(base32 "06dqs9whwp9lfibwp8dqm0aw4nm3s3v4jp2n4fz51zcvsld40nfh"))
(file-name (git-file-name name version))))))
(define-public pep-engine
(package
(name "pep-engine")
(version "2.0.6")
(source
(origin
(method hg-fetch)
(uri (hg-reference
(url "https://pep.foundation/dev/repos/pEpEngine")
(changeset "ebb62ba262dd"))) ;; r4721
(file-name (string-append name "-" version "-checkout"))
(sha256
(base32 "0ljf79j4ng7l8w6pbdcrfzb4yk51zslypvq0n72ib1d7grqvnagi"))))
(build-system gnu-build-system)
(arguments
'(#:parallel-build? #f
#:phases
(modify-phases %standard-phases
(replace 'configure
;; pEpEngie does not use autotools and configure,
;; but a local.conf. We need to tweak the values there.
(lambda* (#:key inputs outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out"))
(yml2 (assoc-ref inputs "yml2")))
(with-output-to-file "local.conf"
(lambda ()
(format #t "
PREFIX=~a
PER_MACHINE_DIRECTORY=${PREFIX}/share/pEp
SYSTEM_DB=~a/share/pEp/system.db
ASN1C=~a
YML2_PATH=~a
OPENPGP=SEQUOIA
"
out out (which "asn1c")
(string-append yml2 "/bin"))))
#t)))
(delete 'check)
(add-after 'install 'install-db
(lambda _
(invoke "make" "-C" "db" "install"))))))
(native-inputs
`(("asn1c" ,asn1c) ; >= 0.9.27
("pkg-config" ,pkg-config)
("yml2" ,yml2)))
(inputs
`(("libetpan" ,fdik-libetpan)
("libiconv" ,libiconv)
("nettle" ,nettle)
("openssl" ,openssl)
("sequoia" ,sequoia4pEp)
("sqlite3" ,sqlite)
("util-linux" ,util-linux "lib"))) ;; uuid.h
(home-page "https://pep.foundation/")
(synopsis "Library for automatic key management and encryption of
messages")
(description "The pp engine is the core part of pp (pretty Easy
privacy).")
(license ;; code: GPL 3, docs: CC-BY-SA
(list license:gpl3 license:cc-by-sa3.0))))
(define-public libpepadapter
(package
(name "libpepadapter")
(version "2.0.2")
(source
(origin
(method hg-fetch)
(uri (hg-reference
(url "https://pep.foundation/dev/repos/libpEpAdapter")
(changeset "e8fe371c870a"))) ;; r168
(file-name (string-append name "-" version "-checkout"))
(sha256
(base32 "1mlpavjbnmslvmr5jxcvpjgb2x40nhmxjb10hza3kn4qzj0k1pjz"))))
(build-system gnu-build-system)
(arguments
'(#:test-target "test"
#:tests? #f ;; building the tests fails
#:phases
(modify-phases %standard-phases
(replace 'configure
;; libpEpAdapter does not use autotools and configure,
;; but a local.conf. We need to tweak the values there.
(lambda* (#:key inputs outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out"))
(engine (assoc-ref inputs "pep-engine")))
(with-output-to-file "local.conf"
(lambda _ ;()
(format #t "
PREFIX=~a
ENGINE_LIB_PATH=~a/lib
ENGINE_INC_PATH=~a/include
" out engine engine))))
#t)))))
(inputs
`(("pep-engine" ,pep-engine)))
(home-page "https://pep.foundation/")
(synopsis "Library for building p≡p adapters")
(description "This C++ library provides common structures used in pp
(pretty Easy privacy) adapters.")
(license license:bsd-3)))
(define-public python-pep-adapter
(package
(name "python-pep-adapter")
(version "2.0.5")
(source
(origin
(method hg-fetch)
(uri (hg-reference
(url "https://pep.foundation/dev/repos/pEpPythonAdapter")
(changeset "66df0e5b9405"))) ;; r374
(file-name (string-append name "-" version "-checkout"))
(sha256
(base32 "107i1s8jf8gyhpmqcs64q9csxa3fwc8g7s57iyccqb4czw8gph6d"))))
(build-system python-build-system)
(arguments
`(;; Adding configure-flags does not work, running `build_ext`
;; with these flags, neither does adding the options to
;; `setup.cfg`: Either `build` or `install` fails (since
;; flags are given or missing), or "command 'BuildExtCommand'
;; has no such option 'pep_engine"
;; '(#:configure-flags
;; (list (string-append "--with-pEp-engine="
;; (assoc-ref inputs "pEpEngine"))
;; (string-append "--with-pEp-libadapter="
;; (assoc-ref inputs "libpEpAdapter"))
;; ;;(string-append "--boost="
;; (assoc-ref inputs "boost")) not supported
;; (string-append "--with-asn1c-share="
;; (assoc-ref inputs "asn1c") "/share"))
#:phases
(modify-phases %standard-phases
(add-before 'build 'fix-setup.py
(lambda _
(substitute* "setup.py"
(("^(\\s+SYS_INCLUDES = )\\['/usr.*" _ a)
(string-append a "os.getenv('CPATH', '').split(os.pathsep)\n"))
(("^(\\s+SYS_LIB_PREFIXES = )\\['/usr.*" _ a)
(string-append a "os.getenv('LIBRARY_PATH', '').split(os.pathsep)\n"))
(("^(\\s+SYS_SHARES = )\\['/usr.*" _ a)
(string-append a "['" (assoc-ref %build-inputs "asn1c") "/share']\n")))
#t)))))
(inputs
`(("asn1c" ,asn1c)
("boost-python" ,boost-with-python3)
("libpepadapter" ,libpepadapter)
("pep-engine" ,pep-engine)))
(home-page "https://pep.foundation/")
(synopsis "Python adapter for p≡p (pretty Easy Privacy)")
(description "The pp Python adapter is an adaptor interface to the pp
(pretty Easy privacy) engine.")
(license license:gpl3)))
(define-public java-pep-adapter
(package
(name "java-pep-adapter")
(version "2.0.5")
(source
(origin
(method hg-fetch)
(uri (hg-reference
(url "https://pep.foundation/dev/repos/pEpJNIAdapter")
(changeset "534537c9cd50"))) ;; r763
(file-name (string-append name "-" version "-checkout"))
(sha256
(base32 "107ldpssc80bq8kndn2n000000gphj4lqagaiv3fddlfph4vji48"))))
(build-system gnu-build-system)
(outputs '("out" "doc"))
(arguments
`(#:test-target "test"
#:make-flags (list "doxy-all")
#:phases
(modify-phases %standard-phases
(add-before 'configure 'fix-includes
(lambda _
(substitute* "src/jniutils.hh"
(("#pragma once\n" line)
(string-append line
"#include <mutex>\n"
"#include <cassert>\n"
"#include <cstring>\n")))
#t))
(add-before 'configure 'pin-shared-lib-path
(lambda* (#:key outputs #:allow-other-keys)
(substitute* "src/foundation/pEp/jniadapter/AbstractEngine.java"
(("System.loadLibrary\\(\"pEpJNI\"\\);")
(string-append "System.load(\""
(assoc-ref outputs "out")
"/lib/libpEpJNI.so" "\");")))
#t))
(replace 'configure
;; pEpJNIAdapter does not use autotools and configure,
;; but a local.conf. We need to tweak the values there.
(lambda* (#:key inputs outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out"))
(engine (assoc-ref inputs "pep-engine"))
(libadapter (assoc-ref inputs "libpepadapter"))
(openjdk (assoc-ref inputs "openjdk")))
(with-output-to-file "local.conf"
(lambda _ ;()
(format #t "
PREFIX=~a
ENGINE_LIB_PATH=~a/lib
ENGINE_INC_PATH=~a/include
AD_LIB_PATH=~a/lib
AD_INC_PATH=~a/include
YML2_PROC=~a
JAVA_HOME=~a
"
out engine engine libadapter libadapter
(which "yml2proc") openjdk)))
(substitute* "src/Makefile" ;; suppress some warnings
(("^\\s+OLD_JAVA=") " xxx_OLD_JAVA="))
#t)))
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(libout (string-append out "/lib/"))
(javaout (string-append out "/share/java/")))
(mkdir-p libout)
(mkdir-p javaout)
(copy-file "src/libpEpJNI.so"
(string-append libout "/libpEpJNI.so"))
(copy-file "src/pEp.jar" (string-append javaout "/pEp.jar"))
#t)))
(add-after 'install 'install-docs
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "doc"))
(docout (string-append out "/share/doc/pEp-JNI-adapter"))
(cxxout (string-append docout "/cxx"))
(javaout (string-append docout "/java")))
(mkdir-p cxxout)
(mkdir-p javaout)
(copy-recursively "doc/doxygen/cxx/html" cxxout)
(copy-recursively "doc/doxygen/java/html" javaout)
#t))))))
(native-inputs
`(("doxygen" ,doxygen)
("openjdk" ,openjdk9 "jdk")
("which" ,which)
("yml2" ,yml2)))
(inputs
`(("libpepadapter" ,libpepadapter)
("pep-engine" ,pep-engine)
("util-linux" ,util-linux))) ;; uuid.h
(home-page "https://pep.foundation/")
(synopsis "Java adapter for p≡p (pretty Easy Privacy)")
(description "The pp JNI adapter is a Java adapter interface to the pp
(pretty Easy privacy) engine.")
(license license:gpl3)))

View File

@ -60,7 +60,7 @@
(define-public php
(package
(name "php")
(version "7.4.6")
(version "7.4.7")
(home-page "https://secure.php.net/")
(source (origin
(method url-fetch)
@ -68,7 +68,7 @@
"php-" version ".tar.xz"))
(sha256
(base32
"0ck8s3zlqnkswwmz3p1bgma7ddjsx9j9sdlz5di1jc7nhhpk4h6p"))
"1brgnp11vpy1619cx0cncih02rg2k20wllm21vxbd2nd4j7qymak"))
(modules '((guix build utils)))
(snippet
'(with-directory-excursion "ext"

View File

@ -25,10 +25,16 @@
#:use-module (guix download)
#:use-module (guix utils)
#:use-module (guix build-system cmake)
#:use-module (guix build-system gnu)
#:use-module (guix build-system python)
#:use-module (gnu packages adns)
#:use-module (gnu packages autotools)
#:use-module (gnu packages bison)
#:use-module (gnu packages boost)
#:use-module (gnu packages compression)
#:use-module (gnu packages cpp)
#:use-module (gnu packages flex)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages protobuf)
#:use-module (gnu packages python)
#:use-module (gnu packages python-xyz)
@ -192,3 +198,46 @@ browsers to backend services.")
(description "This package provides a Python library for communicating
with the HTTP/2-based RPC framework gRPC.")
(license license:asl2.0)))
(define-public apache-thrift
(package
(name "apache-thrift")
(version "0.13.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/apache/thrift.git")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"17ckl7p7s3ga33yrjisilsimp80ansqxl54wvpkv0j7vx2zvc13y"))))
(build-system gnu-build-system)
(arguments
'(#:tests? #f
#:configure-flags
(list (string-append "--with-boost="
(assoc-ref %build-inputs "boost")))))
(native-inputs
`(("autoconf" ,autoconf)
("automake" ,automake)
("libtool" ,libtool)
("pkg-config" ,pkg-config)
("flex" ,flex)
("bison" ,bison)))
(inputs
`(("boost" ,boost)
("libressl" ,libressl)))
(outputs '("out" "lib" "include"))
(home-page "https://thrift.apache.org/")
(synopsis
"Lightweight, language-independent software stack for point-to-point
RPC")
(description
"Thrift provides clean abstractions and implementations for data
transport, data serialization, and application level processing. The code
generation system takes a simple definition language as input and generates
code across programming languages that uses the abstracted stack to build
interoperable RPC clients and servers.")
(license license:asl2.0)))

View File

@ -467,14 +467,14 @@ game development and other performance-critical applications.")
(define-public python-feather-format
(package
(name "python-feather-format")
(version "0.4.0")
(version "0.4.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "feather-format" version))
(sha256
(base32
"1adivm5w5ji4qv7hq7942vqlk8l2wgw87bdlsia771z14z3zp857"))))
"00w9hwz7sj3fkdjc378r066vdy6lpxmn6vfac3qx956k8lvpxxj5"))))
(build-system python-build-system)
(propagated-inputs
`(("python-pandas" ,python-pandas)

View File

@ -184,7 +184,7 @@ This package also provides @command{xls2csv} to export Excel files to CSV.")
(define r-with-tests
(package
(name "r-with-tests")
(version "4.0.0")
(version "4.0.1")
(source (origin
(method url-fetch)
(uri (string-append "mirror://cran/src/base/R-"
@ -192,7 +192,7 @@ This package also provides @command{xls2csv} to export Excel files to CSV.")
version ".tar.gz"))
(sha256
(base32
"0h1995smlyiyhx7gpg9paxsfqrcn6g9bbp5h9r47i6an3clv1gh6"))))
"0ckgpihkih4b44rx48hpg9p6bv0w67j5z3qc8s4giy6qv2j29zlm"))))
(build-system gnu-build-system)
(arguments
`(#:disallowed-references (,tzdata-for-tests)
@ -513,14 +513,14 @@ code for possible problems.")
(define-public r-foreign
(package
(name "r-foreign")
(version "0.8-79")
(version "0.8-80")
(source
(origin
(method url-fetch)
(uri (cran-uri "foreign" version))
(sha256
(base32
"1d5rk4k3khjrir1b4ciridd6vdpcgzi35r7p7ra4ky7vbaabcdmg"))))
"0wjdi3qn9famsxmpdyyahidaid0yhxlpx4ad9k8vrxhxd6xspasp"))))
(build-system r-build-system)
(home-page "https://cran.r-project.org/web/packages/foreign")
(synopsis "Read data stored by other statistics software")
@ -599,13 +599,13 @@ and operations on them using LAPACK and SuiteSparse.")
(define-public r-nlme
(package
(name "r-nlme")
(version "3.1-147")
(version "3.1-148")
(source
(origin
(method url-fetch)
(uri (cran-uri "nlme" version))
(sha256
(base32 "1rqc3wy3lmy0wczsvsn8yszzsxhppfwg4iznb1j6ki2qawpdij7g"))))
(base32 "1cmf43r82kar1hpj9dhqfi3rbjka0z5s6cbdy7fklwh99xj3phkp"))))
(build-system r-build-system)
(propagated-inputs
`(("r-lattice" ,r-lattice)))
@ -1097,13 +1097,13 @@ using just two functions: melt and dcast (or acast).")
(define-public r-ggplot2
(package
(name "r-ggplot2")
(version "3.3.0")
(version "3.3.1")
(source
(origin
(method url-fetch)
(uri (cran-uri "ggplot2" version))
(sha256
(base32 "0j21am605kqqzlwhm45kaj0m2irnmy2vz0j7kzi9f0qdzrv3q3ij"))))
(base32 "04wvswadlry2n9gnfqlpdqsav1wllnlzb5c9w9ydynllv4vkwfm0"))))
(build-system r-build-system)
(propagated-inputs
`(("r-digest" ,r-digest)
@ -1117,6 +1117,8 @@ using just two functions: melt and dcast (or acast).")
("r-scales" ,r-scales)
("r-svglite" ,r-svglite) ; Needed for 'ggsave'
("r-withr" ,r-withr)))
(native-inputs
`(("r-knitr" ,r-knitr)))
(home-page "https://ggplot2.tidyverse.org")
(synopsis "An implementation of the grammar of graphics")
(description
@ -1665,27 +1667,25 @@ and printing capabilities than traditional data frames.")
(define-public r-dplyr
(package
(name "r-dplyr")
(version "0.8.5")
(version "1.0.0")
(source (origin
(method url-fetch)
(uri (cran-uri "dplyr" version))
(sha256
(base32
"0602b4a9nffxx67q57csqp87nkrv33nn9wlaw1458yys9fzx6l2p"))))
"1wxi7pzw1mqkgay2s9hwlkpkxfzydngf56wrf7k93n14rlqm3dmz"))))
(build-system r-build-system)
(propagated-inputs
`(("r-assertthat" ,r-assertthat)
("r-bh" ,r-bh)
("r-ellipsis" ,r-ellipsis)
`(("r-ellipsis" ,r-ellipsis)
("r-generics" ,r-generics)
("r-glue" ,r-glue)
("r-lifecycle" ,r-lifecycle)
("r-magrittr" ,r-magrittr)
("r-pkgconfig" ,r-pkgconfig)
("r-plogr" ,r-plogr)
("r-r6" ,r-r6)
("r-rcpp" ,r-rcpp)
("r-rlang" ,r-rlang)
("r-tibble" ,r-tibble)
("r-tidyselect" ,r-tidyselect)))
("r-tidyselect" ,r-tidyselect)
("r-vctrs" ,r-vctrs)))
(native-inputs
`(("r-knitr" ,r-knitr)))
(home-page "https://github.com/hadley/dplyr")
@ -1703,21 +1703,23 @@ database.")
(define-public r-dbplyr
(package
(name "r-dbplyr")
(version "1.4.3")
(version "1.4.4")
(source
(origin
(method url-fetch)
(uri (cran-uri "dbplyr" version))
(sha256
(base32
"1si8sahr1kwq1xgjzi9klkahad07pyrsngy75y1f74f64907pb39"))))
"1v0p0557n6bz84nq9jc4182k00mdd1hvz7h4w3bbg81z0fmpj0d8"))))
(build-system r-build-system)
(propagated-inputs
`(("r-assertthat" ,r-assertthat)
("r-blob" ,r-blob)
("r-dbi" ,r-dbi)
("r-dplyr" ,r-dplyr)
("r-glue" ,r-glue)
("r-lifecycle" ,r-lifecycle)
("r-magrittr" ,r-magrittr)
("r-purrr" ,r-purrr)
("r-r6" ,r-r6)
("r-rlang" ,r-rlang)
@ -2092,14 +2094,14 @@ limited to R.")
(define-public r-backports
(package
(name "r-backports")
(version "1.1.6")
(version "1.1.7")
(source
(origin
(method url-fetch)
(uri (cran-uri "backports" version))
(sha256
(base32
"170rphqq28j0pcr28g6dxv3isp436ajhyzkpri31pn0lfm3szs6h"))))
"02vfkqm1kw54y1qax8cmiyg2nk6bmh8j87fc3j22k7852s3y4xxj"))))
(build-system r-build-system)
(home-page "https://cran.r-project.org/web/packages/backports")
(synopsis "Reimplementations of functions introduced since R 3.0.0")
@ -2589,13 +2591,13 @@ well as additional utilities such as panel and axis annotation functions.")
(define-public r-rcpparmadillo
(package
(name "r-rcpparmadillo")
(version "0.9.870.2.0")
(version "0.9.900.1.0")
(source (origin
(method url-fetch)
(uri (cran-uri "RcppArmadillo" version))
(sha256
(base32
"1r7iajxvbyvslsy16rqacc95azmjciw9lvcq31xl97fl09kmsq5v"))))
"1zisw2yrb9qmmrs7q8y83mrm7lh1c2786h70gs8jwc0si16x0lq5"))))
(properties `((upstream-name . "RcppArmadillo")))
(build-system r-build-system)
(propagated-inputs
@ -2681,13 +2683,13 @@ certain criterion, e.g., it contains a certain regular file.")
(define-public r-rmarkdown
(package
(name "r-rmarkdown")
(version "2.1")
(version "2.2")
(source
(origin
(method url-fetch)
(uri (cran-uri "rmarkdown" version))
(sha256
(base32 "0pa5xs0vzwn9vsgysjqbks9v5lbqphxh5agciskllibc40hhwigg"))))
(base32 "196r3hq1gcr6iamxllq4k40cb109b16ng24ky0q68bwrll80q1mh"))))
(properties `((upstream-name . "rmarkdown")))
(build-system r-build-system)
(propagated-inputs
@ -2702,6 +2704,8 @@ certain criterion, e.g., it contains a certain regular file.")
("r-xfun" ,r-xfun)
("r-yaml" ,r-yaml)
("ghc-pandoc" ,ghc-pandoc)))
(native-inputs
`(("r-knitr" ,r-knitr)))
(home-page "https://rmarkdown.rstudio.com")
(synopsis "Convert R Markdown documents into a variety of formats")
(description
@ -3229,16 +3233,17 @@ analysis of large sparse or dense matrices.")
(define-public r-glmnet
(package
(name "r-glmnet")
(version "3.0-2")
(version "4.0")
(source
(origin
(method url-fetch)
(uri (cran-uri "glmnet" version))
(sha256
(base32 "0b3nnfzp8dxcdkvxr0yvy6d58yk3xg4kz1wqa42bxqppbakmd2gl"))))
(base32 "1vy8v6filhw9sflk8wwnbgz2mryg70ml4iq4y1c34dlwxczcbzv8"))))
(build-system r-build-system)
(native-inputs
`(("gfortran" ,gfortran)))
`(("gfortran" ,gfortran)
("r-knitr" ,r-knitr)))
(propagated-inputs
`(("r-foreach" ,r-foreach)
("r-matrix" ,r-matrix)
@ -3572,13 +3577,13 @@ vignettes.")
(define-public r-mvtnorm
(package
(name "r-mvtnorm")
(version "1.1-0")
(version "1.1-1")
(source (origin
(method url-fetch)
(uri (cran-uri "mvtnorm" version))
(sha256
(base32
"0pfb6qk4yb6xaya8i1wvx6dnc3jj4s2g94sq2kzv4p8zn4pf24l1"))))
"1pj51mi0g6ip7a2nhzc93yv9289kaayvspjvsbgbgarvx7axlrg9"))))
(build-system r-build-system)
(native-inputs
`(("gfortran" ,gfortran)))
@ -3699,14 +3704,14 @@ selection.")
(define-public r-tidyr
(package
(name "r-tidyr")
(version "1.0.3")
(version "1.1.0")
(source
(origin
(method url-fetch)
(uri (cran-uri "tidyr" version))
(sha256
(base32
"18ypk63nifp5jj5d9880m49zdv7n4a18gac59wj5z5xk6qr7vfal"))))
"0vqj5dakb35axv4l0yrihpa16vnz2b5bhaaqg7l0gsqbb04qcb00"))))
(build-system r-build-system)
(propagated-inputs
`(("r-dplyr" ,r-dplyr)
@ -5215,13 +5220,13 @@ bootstrap test for generalized linear mixed models.")
(define-public r-cardata
(package
(name "r-cardata")
(version "3.0-3")
(version "3.0-4")
(source
(origin
(method url-fetch)
(uri (cran-uri "carData" version))
(sha256
(base32 "0cg2yxzn0pdjqykr60my1fzpfkqac21fll5hv3m9w5c9sayq8swq"))))
(base32 "09270j39n4jpswxqps20b12zaj8dz4rrqpk2l2j5bnf1xzizb9nd"))))
(properties `((upstream-name . "carData")))
(build-system r-build-system)
(home-page "https://r-forge.r-project.org/projects/car/")
@ -5234,13 +5239,13 @@ Companion to Applied Regression, Third Edition, Sage.")
(define-public r-car
(package
(name "r-car")
(version "3.0-7")
(version "3.0-8")
(source
(origin
(method url-fetch)
(uri (cran-uri "car" version))
(sha256
(base32 "11sfk1l41j27mrfy16g7b02c570n3gy9icvpcrfjh1biykqa565d"))))
(base32 "0ig1691kxbzkrsq8xi5a6fq2f0vq22j1dn54jxdkldqr5vri1m57"))))
(build-system r-build-system)
(propagated-inputs
`(("r-abind" ,r-abind)
@ -5284,18 +5289,49 @@ computations taking place in C++ code, and support for interrupting those comput
even in multithreaded code, typically using OpenMP.")
(license license:gpl3+)))
(define-public r-tmvnsim
(package
(name "r-tmvnsim")
(version "1.0-2")
(source
(origin
(method url-fetch)
(uri (cran-uri "tmvnsim" version))
(sha256
(base32
"03xsvsg9bqvgl98ywid3h91mmlhax5s6wvmypp3hq91vmc5kvxlp"))))
(properties `((upstream-name . "tmvnsim")))
(build-system r-build-system)
(native-inputs `(("gfortran" ,gfortran)))
(home-page "https://www.r-project.org")
(synopsis "Truncated multivariate normal simulation")
(description
"This package implements importance sampling from the truncated
multivariate normal using the @dfn{Geweke-Hajivassiliou-Keane} (GHK)
simulator. Unlike Gibbs sampling which can get stuck in one truncation
sub-region depending on initial values, this package allows truncation based
on disjoint regions that are created by truncation of absolute values. The
GHK algorithm uses simple Cholesky transformation followed by recursive
simulation of univariate truncated normals hence there are also no convergence
issues. Importance sample is returned along with sampling weights, based on
which, one can calculate integrals over truncated regions for multivariate
normals.")
(license license:gpl2)))
(define-public r-mnormt
(package
(name "r-mnormt")
(version "1.5-7")
(version "2.0.0")
(source
(origin
(method url-fetch)
(uri (cran-uri "mnormt" version))
(sha256
(base32
"1y0vlvh02wza2wvfd29wxjlw3jg9rnwnx3kph5qz4179kz87fgfg"))))
"1gxhma0zqsx5pkc0871vszq1y7akwdmpm8rhws5b3gr6w9mx4agf"))))
(build-system r-build-system)
(propagated-inputs
`(("r-tmvnsim" ,r-tmvnsim)))
(native-inputs
`(("gfortran" ,gfortran)))
(home-page "http://azzalini.stat.unipd.it/SW/Pkg-mnormt")
@ -5330,14 +5366,14 @@ first and second order derivatives.")
(define-public r-sn
(package
(name "r-sn")
(version "1.6-1")
(version "1.6-2")
(source
(origin
(method url-fetch)
(uri (cran-uri "sn" version))
(sha256
(base32
"0snri2k8qslb7478c5jz4a5xxmmb1ipmp8x1jizi8mhj2cjic1w0"))))
"179xb7yb8br99aa5awm2yxsy0v5w1kdhv6a7ifaliz2y64677m1g"))))
(build-system r-build-system)
(propagated-inputs
`(("r-mnormt" ,r-mnormt)
@ -5461,14 +5497,14 @@ is supported.")
(define-public r-lubridate
(package
(name "r-lubridate")
(version "1.7.8")
(version "1.7.9")
(source
(origin
(method url-fetch)
(uri (cran-uri "lubridate" version))
(sha256
(base32
"0g2m9dyhgds4shdrk76w7rqdl9msam4rii2qrhz12gipzhi9k89x"))))
"0wnjzvfkrgp2hkr8g5r5vcgcxmsq8bhdmkzkk0m93wr3fgh5xyfb"))))
(build-system r-build-system)
(propagated-inputs
`(("r-generics" ,r-generics)

View File

@ -3,7 +3,7 @@
;;; Copyright © 2014 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2016 Roel Janssen <roel@gnu.org>
;;; Copyright © 2016, 2018, 2019 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016, 2018, 2019, 2020 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 Federico Beffa <beffa@fbengineering.ch>
;;; Copyright © 2016 Thomas Danckaert <post@thomasdanckaert.be>
;;; Copyright © 2016, 2017, 2018, 2019, 2020 Ricardo Wurmus <rekado@elephly.net>
@ -33,9 +33,9 @@
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix build-system cmake)
#:use-module (guix build-system gnu)
#:use-module (guix build-system perl)
#:use-module (guix build-system qt)
#:use-module (guix build-system trivial)
#:use-module (guix build-system texlive)
#:use-module (guix utils)
@ -6116,75 +6116,49 @@ and Karl Berry.")
(define-public lyx
(package
(name "lyx")
(version "2.3.3")
(version "2.3.5.1")
(source (origin
(method url-fetch)
(uri (string-append "https://ftp.lyx.org/pub/lyx/stable/"
(version-major+minor version) ".x/"
"lyx-" version ".tar.gz"))
"lyx-" version ".tar.xz"))
(sha256
(base32
"0j3xincwmsscfgv13g3z6h4kx1qfzgg8x71fs393akcdxsh2g07c"))
"0mv32s26igm0pd8vs7d2mk1240dpr83y0a2wyh3xz6b67ph0w157"))
(modules '((guix build utils)))
(snippet
'(begin
(delete-file-recursively "3rdparty")
#t))))
(build-system cmake-build-system)
(build-system qt-build-system)
(arguments
`(#:configure-flags `("-DLYX_USE_QT=QT5"
"-DLYX_EXTERNAL_BOOST=1"
"-DLYX_INSTALL=1"
"-DLYX_RELEASE=1"
"-DLYX_PROGRAM_SUFFIX=OFF"
,(string-append "-DLYX_INSTALL_PREFIX="
(assoc-ref %outputs "out")
;; Exact name and level is necessary.
"/lyx" ,(version-major+minor version)))
(assoc-ref %outputs "out")))
#:phases
(modify-phases %standard-phases
;; See ;; https://www.lyx.org/trac/changeset/3a123b90af838b08680471d87170c38e56787df9/lyxgit
(add-after 'unpack 'fix-compilation-with-boost-1.69
(lambda _
(substitute* "src/support/FileName.cpp"
(("^template struct boost::detail::crc_table_t.*") ""))
#t))
(add-after 'unpack 'patch-python
(lambda* (#:key inputs #:allow-other-keys)
(substitute* '("src/support/os.cpp")
(substitute* '("lib/configure.py"
"src/support/ForkedCalls.cpp"
"src/support/Systemcall.cpp"
"src/support/os.cpp"
"src/support/filetools.cpp")
(("\"python ")
(string-append "\""
(assoc-ref inputs "python")
"/bin/python ")))
"/bin/python3 ")))
#t))
(add-after 'patch-python 'patch-desktop-file
(lambda* (#:key outputs #:allow-other-keys)
(substitute* "lib/lyx.desktop.in"
(("Exec=")
(string-append "Exec="
(assoc-ref outputs "out")
"/")))
#t))
(add-before 'check 'setenv-check
(add-after 'unpack 'add-missing-test-file
(lambda _
;; Create missing file that would cause tests to fail.
(with-output-to-file (string-append "../lyx-"
,version
"/src/tests/check_layout.cmake")
(with-output-to-file "src/tests/check_layout.cmake"
(const #t))
(setenv (string-append "LYX_DIR_"
(string-join
(string-split
,(version-major+minor version) #\-)) "x")
(string-append (getcwd) "/../lyx-" ,version "/lib"))
#t))
(add-after 'install 'install-symlinks
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(mkdir-p (string-append out "/bin"))
(symlink (string-append "../lyx" ,(version-major+minor version)
"/bin/lyx" ,(version-major+minor version))
(string-append out "/bin/lyx" ,(version-major+minor version)))
#t))))))
#t)))))
(inputs
`(("boost" ,boost)
("hunspell" ,hunspell) ; Note: Could also use aspell instead.

View File

@ -743,14 +743,14 @@ and Octave. TeXmacs is completely extensible via Guile.")
(define-public scintilla
(package
(name "scintilla")
(version "4.4.0")
(version "4.4.3")
(source
(origin
(method url-fetch)
(uri (let ((v (apply string-append (string-split version #\.))))
(string-append "https://www.scintilla.org/scintilla" v ".tgz")))
(sha256
(base32 "10qnab10gfkzdfyqpmsl4c3mhh7533l4q6jrdfy5ssvj4da6hawd"))))
(base32 "080v9l7dn3qgkdg0nc0kwpj6warwpi904zjgz9kzg1l6pknxf21s"))))
(build-system gnu-build-system)
(arguments
`(#:make-flags (list "GTK3=1" "CC=gcc" "-Cgtk")

View File

@ -6,7 +6,7 @@
;;; Copyright © 2015, 2016 Mathieu Lirzin <mthl@gnu.org>
;;; Copyright © 2014, 2015, 2016 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2014, 2016, 2019 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2015, 2016, 2017, 2018, 2019 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2015, 2016, 2017, 2018, 2019, 2020 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2015, 2018 Kyle Meyer <kyle@kyleam.com>
;;; Copyright © 2015, 2017, 2018, 2020 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2016, 2017 Leo Famulari <leo@famulari.name>
@ -1569,18 +1569,14 @@ following features:
(define-public subversion
(package
(name "subversion")
(version "1.10.6")
(version "1.14.0")
(source (origin
(method url-fetch)
(uri
(list
(string-append "https://archive.apache.org/dist/subversion/"
"subversion-" version ".tar.bz2")
(string-append "https://www-eu.apache.org/dist/subversion/"
"subversion-" version ".tar.bz2")))
(uri (string-append "mirror://apache/subversion/"
"subversion-" version ".tar.bz2"))
(sha256
(base32
"19zc215mhpnm92mlyl5jbv57r5zqp6cavr3s2g9yglp6j4kfgj0q"))))
"00i1f88snlpcnsycpn6r315h6792l5nkr2p5k6kq6yprz4cf5a3b"))))
(build-system gnu-build-system)
(arguments
'(#:parallel-tests? #f ; TODO Seems to cause test failures on

View File

@ -625,7 +625,11 @@ available.")
(delete-file-recursively "source/compat/getopt")
#t))))
(build-system cmake-build-system)
(native-inputs `(("nasm" ,nasm)))
(native-inputs
;; XXX: ASM optimization fails on i686-linux, see <https://bugs.gnu.org/41768>.
(if (string-prefix? "i686" (%current-system))
'()
`(("nasm" ,nasm))))
(arguments
`(#:tests? #f ; tests are skipped if cpu-optimized code isn't built
#:configure-flags

View File

@ -1588,7 +1588,7 @@ from streaming URLs. It is a command-line wrapper for the libquvi library.")
(source
(origin
(method url-fetch)
(uri (string-append "https://archive.apache.org/dist/serf/serf-"
(uri (string-append "mirror://apache/dist/serf/serf-"
version ".tar.bz2"))
(sha256
(base32 "1k47gbgpp52049andr28y28nbwh9m36bbb0g8p0aka3pqlhjv72l"))))
@ -7206,6 +7206,7 @@ derivation by David Revoy from the original MonsterID by Andreas Gohr.")
(package
(name "nghttp2")
(version "1.40.0")
(replacement nghttp2-1.41)
(source
(origin
(method url-fetch)
@ -7285,6 +7286,20 @@ compressed JSON header blocks.
@end itemize\n")
(license license:expat)))
(define-public nghttp2-1.41 ;fixes CVE-2020-11080
(package
(inherit nghttp2)
(version "1.41.0")
(source
(origin
(method url-fetch)
(uri (string-append "https://github.com/nghttp2/nghttp2/"
"releases/download/v" version "/"
"nghttp2-" version ".tar.xz"))
(sha256
(base32
"1hk77vngjmvvzb5y1gi1aqwf6qywrc7yak08zvzb7x81qs6mphmb"))))))
(define-public hpcguix-web
(let ((commit "9de63562b06b4aef3a3afe5ecb18d3c91e57ee74")
(revision "5"))

View File

@ -151,15 +151,14 @@ the leaves of a full binary tree.")
(define-public herbstluftwm
(package
(name "herbstluftwm")
(version "0.8.2")
(version "0.8.3")
(source
(origin
(method url-fetch)
(uri (string-append "https://herbstluftwm.org/tarballs/herbstluftwm-"
version ".tar.gz"))
(sha256
(base32
"0wbl1s1gwdc61ll6qmkwb56swjxv99by1dhi080bdqn0w8p75804"))
(base32 "1qmb4pjf2f6g0dvcg11cw9njwmxblhqzd70ai8qnlgqw1iz3nkm1"))
(file-name (string-append "herbstluftwm-" version ".tar.gz"))))
(build-system cmake-build-system)
(inputs
@ -1660,11 +1659,11 @@ productive, customizable lisp based systems.")
(delete 'cleanup)
(delete 'create-symlinks)))))))
(define-public stumpish
(let ((commit "920f8fc1488f7953f205e1dda4c2ecbbbda56d6")
(define stumpwm-contrib
(let ((commit "920f8fc1488f7953f205e1dda4c2ecbbbda56d63")
(revision "2"))
(package
(name "stumpish")
(name "stumpwm-contrib")
(version (git-version "0.0.1" revision commit)) ;no upstream release
(source
(origin
@ -1672,154 +1671,189 @@ productive, customizable lisp based systems.")
(uri (git-reference
(url "https://github.com/stumpwm/stumpwm-contrib.git")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "0giac390bq95ag41xkxqp8jjrhfx1wpgglz7jg5rkm0wjhcwmyml"))))
(build-system asdf-build-system/sbcl)
(inputs
`(("bash" ,bash)
("rlwrap" ,rlwrap)))
(build-system trivial-build-system)
(arguments
'(#:modules ((guix build utils))
#:builder
(begin
(use-modules (guix build utils))
(copy-recursively (assoc-ref %build-inputs "source") ".")
(chdir "util/stumpish")
(substitute* "stumpish"
(("rlwrap") (string-append (assoc-ref %build-inputs "rlwrap")
"/bin/rlwrap"))
(("/bin/sh") (string-append (assoc-ref %build-inputs "bash")
"/bin/bash")))
(install-file "stumpish" (string-append %output "/bin")))))
`(("stumpwm" ,stumpwm "lib")))
(home-page "https://github.com/stumpwm/stumpwm-contrib")
(synopsis "StumpWM interactive shell")
(description "This package provides a StumpWM interactive shell.")
(license (list license:gpl2+ license:gpl3+ license:bsd-2)))))
(define-public stumpish
(package
(inherit stumpwm-contrib)
(name "stumpish")
(inputs
`(("bash" ,bash)
("rlwrap" ,rlwrap)))
(build-system trivial-build-system)
(arguments
'(#:modules ((guix build utils))
#:builder
(begin
(use-modules (guix build utils))
(copy-recursively (assoc-ref %build-inputs "source") ".")
(chdir "util/stumpish")
(substitute* "stumpish"
(("rlwrap") (string-append (assoc-ref %build-inputs "rlwrap")
"/bin/rlwrap"))
(("/bin/sh") (string-append (assoc-ref %build-inputs "bash")
"/bin/bash")))
(install-file "stumpish" (string-append %output "/bin")))))
(home-page "https://github.com/stumpwm/stumpwm-contrib")
(synopsis "StumpWM interactive shell")
(description "This package provides a StumpWM interactive shell.")
(license (list license:gpl2+ license:gpl3+ license:bsd-2))))
(define-public sbcl-stumpwm+slynk
(deprecated-package "sbcl-stumpwm-with-slynk" stumpwm+slynk))
(define-public sbcl-stumpwm-ttf-fonts
(let ((commit "920f8fc1488f7953f205e1dda4c2ecbbbda56d6")
(revision "2"))
(package
(name "sbcl-ttf-fonts")
(version (git-version "0.0.1" revision commit)) ;no upstream release
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/stumpwm/stumpwm-contrib.git")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "0giac390bq95ag41xkxqp8jjrhfx1wpgglz7jg5rkm0wjhcwmyml"))))
(inputs
`(("stumpwm" ,stumpwm "lib")
("clx-truetype" ,sbcl-clx-truetype)))
(build-system asdf-build-system/sbcl)
(arguments
'(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'chdir
(lambda _
(chdir "util/ttf-fonts"))))))
(home-page "https://github.com/stumpwm/stumpwm-contrib")
(synopsis "Implementation of TTF font rendering for Lisp")
(description "This package provides a Lisp implementation of TTF font
(package
(inherit stumpwm-contrib)
(name "sbcl-stumpwm-ttf-fonts")
(inputs
`(("stumpwm" ,stumpwm "lib")
("clx-truetype" ,sbcl-clx-truetype)))
(arguments
'(#:asd-system-name "ttf-fonts"
#:tests? #f
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'chdir
(lambda _ (chdir "util/ttf-fonts") #t)))))
(home-page "https://github.com/stumpwm/stumpwm-contrib")
(synopsis "Implementation of TTF font rendering for Lisp")
(description "This package provides a Lisp implementation of TTF font
rendering.")
(license (list license:gpl2+ license:gpl3+ license:bsd-2)))))
(license (list license:gpl2+ license:gpl3+ license:bsd-2))))
(define-public sbcl-stumpwm-pass
(let ((commit "920f8fc1488f7953f205e1dda4c2ecbbbda56d6")
(revision "2"))
(package
(name "sbcl-pass")
(version (git-version "0.0.1" revision commit)) ;no upstream release
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/stumpwm/stumpwm-contrib.git")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "0giac390bq95ag41xkxqp8jjrhfx1wpgglz7jg5rkm0wjhcwmyml"))))
(inputs
`(("stumpwm" ,stumpwm "lib")))
(build-system asdf-build-system/sbcl)
(arguments
'(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'chdir
(lambda _
(chdir "util/pass"))))))
(home-page "https://github.com/stumpwm/stumpwm-contrib")
(synopsis "Integrate @code{pass} wih StumpWM")
(description "This package provides an interface which integrates
(package
(inherit stumpwm-contrib)
(name "sbcl-stumpwm-pass")
(arguments
'(#:asd-system-name "pass"
#:tests? #f
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'chdir
(lambda _ (chdir "util/pass") #t)))))
(home-page "https://github.com/stumpwm/stumpwm-contrib")
(synopsis "Integrate @code{pass} wih StumpWM")
(description "This package provides an interface which integrates
password-store into StumpWM.")
(license (list license:gpl2+ license:gpl3+ license:bsd-2)))))
(license (list license:gpl2+ license:gpl3+ license:bsd-2))))
(define-public sbcl-stumpwm-globalwindows
(let ((commit "920f8fc1488f7953f205e1dda4c2ecbbbda56d6")
(revision "2"))
(package
(name "sbcl-globalwindows")
(version (git-version "0.0.1" revision commit)) ;no upstream release
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/stumpwm/stumpwm-contrib.git")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "0giac390bq95ag41xkxqp8jjrhfx1wpgglz7jg5rkm0wjhcwmyml"))))
(inputs
`(("stumpwm" ,stumpwm "lib")))
(build-system asdf-build-system/sbcl)
(arguments
'(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'chdir
(lambda _
(chdir "util/globalwindows"))))))
(home-page "https://github.com/stumpwm/stumpwm-contrib")
(synopsis "Manipulate all windows in the current X session")
(description "This package provides a StumpWM module to manipulate all
(package
(inherit stumpwm-contrib)
(name "sbcl-stumpwm-globalwindows")
(arguments
'(#:asd-system-name "globalwindows"
#:tests? #f
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'chdir
(lambda _ (chdir "util/globalwindows") #t)))))
(home-page "https://github.com/stumpwm/stumpwm-contrib")
(synopsis "Manipulate all windows in the current X session")
(description "This package provides a StumpWM module to manipulate all
windows in the current X session.")
(license (list license:gpl2+ license:gpl3+ license:bsd-2)))))
(license (list license:gpl2+ license:gpl3+ license:bsd-2))))
(define-public sbcl-stumpwm-swm-gaps
(let ((commit "920f8fc1488f7953f205e1dda4c2ecbbbda56d6")
(revision "2"))
(package
(name "sbcl-swm-gaps")
(version (git-version "0.0.1" revision commit)) ;no upstream release
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/stumpwm/stumpwm-contrib.git")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "0giac390bq95ag41xkxqp8jjrhfx1wpgglz7jg5rkm0wjhcwmyml"))))
(inputs
`(("stumpwm" ,stumpwm "lib")))
(build-system asdf-build-system/sbcl)
(arguments
'(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'chdir
(lambda _
(chdir "util/swm-gaps"))))))
(home-page "https://github.com/stumpwm/stumpwm-contrib")
(synopsis "Gaps between windows for StumpWM")
(description "This package provides a StumpWM module which adds gaps
(package
(inherit stumpwm-contrib)
(name "sbcl-stumpwm-swm-gaps")
(arguments
'(#:asd-system-name "swm-gaps"
#:tests? #f
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'chdir
(lambda _ (chdir "util/swm-gaps") #t)))))
(home-page "https://github.com/stumpwm/stumpwm-contrib")
(synopsis "Gaps between windows for StumpWM")
(description "This package provides a StumpWM module which adds gaps
between windows.")
(license (list license:gpl2+ license:gpl3+ license:bsd-2)))))
(license (list license:gpl2+ license:gpl3+ license:bsd-2))))
(define-public sbcl-stumpwm-net
(package
(inherit stumpwm-contrib)
(name "sbcl-stumpwm-net")
(arguments
'(#:asd-system-name "net"
#:tests? #f
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'chdir (lambda _ (chdir "modeline/net") #t)))))
(home-page
"https://github.com/stumpwm/stumpwm-contrib/tree/master/modeline/net")
(synopsis "Modeline support for network connectivity")
(description "Modeline support for network connectivity.")
(supported-systems
(filter (lambda (a) (string-contains a "linux")) %supported-systems))
(license license:gpl3+)))
(define-public sbcl-stumpwm-wifi
(package
(inherit stumpwm-contrib)
(name "sbcl-stumpwm-wifi")
(arguments
'(#:asd-system-name "wifi"
#:tests? #f
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'chdir (lambda _ (chdir "modeline/wifi") #t)))))
(home-page
"https://github.com/stumpwm/stumpwm-contrib/tree/master/modeline/wifi")
(synopsis "Modeline support for wifi connectivity")
(description "Modeline support for wifi connectivity.")
(supported-systems
(filter (lambda (a) (string-contains a "linux")) %supported-systems))
(license license:gpl3+)))
(define-public sbcl-stumpwm-stumptray
(package
(inherit stumpwm-contrib)
(name "sbcl-stumpwm-stumptray")
(arguments
'(#:asd-system-name "stumptray"
#:tests? #f
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'chdir (lambda _ (chdir "modeline/stumptray") #t)))))
(inputs
`(("stumpwm" ,stumpwm "lib")
("xembed" ,sbcl-clx-xembed)
("alexandria" ,sbcl-alexandria)))
(home-page
"https://github.com/stumpwm/stumpwm-contrib/tree/master/modeline/stumptray")
(synopsis "Modeline support for stumptray connectivity")
(description "Modeline support for stumptray connectivity.")
(supported-systems
(filter (lambda (a) (string-contains a "linux")) %supported-systems))
(license license:gpl3+)))
(define-public sbcl-stumpwm-kbd-layouts
(package
(inherit stumpwm-contrib)
(name "sbcl-stumpwm-kbd-layouts")
(arguments
'(#:asd-system-name "kbd-layouts"
#:tests? #f
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'chdir (lambda _ (chdir "util/kbd-layouts") #t)))))
(home-page
"https://github.com/stumpwm/stumpwm-contrib/tree/master/util/kbd-layouts")
(synopsis "Keyboard layout switcher for StumpWM")
(description "Keyboard layout switcher for StumpWM")
(license license:gpl3+)))
(define-public lemonbar
(let ((commit "35183ab81d2128dbb7b6d8e119cc57846bcefdb4")

View File

@ -661,7 +661,7 @@ like appearance, display, keyboard and mouse settings.")
(define-public thunar
(package
(name "thunar")
(version "1.8.14")
(version "1.8.15")
(source (origin
(method url-fetch)
(uri (string-append "https://archive.xfce.org/src/xfce/"
@ -669,7 +669,7 @@ like appearance, display, keyboard and mouse settings.")
"thunar-" version ".tar.bz2"))
(sha256
(base32
"17r1z8cyp709lz38w7b5vqi1zbgm2i3sqvdvicsbvma2b0gppica"))))
"14vw4yaf9fff24zmj4dp8r8hf8mb19hl4w4l0jc8c4qzy865c93n"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)

View File

@ -400,7 +400,7 @@ The object has its kernel-arguments extended in order to make it bootable."
(device (boot-parameters-store-device conf))
(device-mount-point (boot-parameters-store-mount-point conf))
(linux (and (not multiboot?) kernel))
(linux-arguments (if (not multiboot?) '
(linux-arguments (if (not multiboot?)
(boot-parameters-kernel-arguments conf)
'()))
(initrd (boot-parameters-initrd conf))
@ -847,7 +847,8 @@ fi\n")))
,@(if sudoers `(("sudoers" ,sudoers)) '())
,@(if hurd
`(("login" ,(file-append hurd "/etc/login"))
("motd" ,(file-append hurd "/etc/motd")))
("motd" ,(file-append hurd "/etc/motd"))
("ttys" ,(file-append hurd "/etc/ttys")))
'())))))
(define %root-account

View File

@ -337,6 +337,7 @@ system that is passed to 'populate-root-file-system'."
(with-extensions gcrypt-sqlite3&co
(with-imported-modules `(,@(source-module-closure '((gnu build vm)
(gnu build bootloader)
(gnu build hurd-boot)
(guix store database)
(guix build utils))
#:select? not-config?)

View File

@ -184,8 +184,11 @@ to remove '.guix-authorizations' file")
default-authorizations)
(throw key error)))))
(apply lset-intersection bytevector=?
(map commit-authorizations (commit-parents commit))))
(match (commit-parents commit)
(() default-authorizations)
(parents
(apply lset-intersection bytevector=?
(map commit-authorizations parents)))))
(define* (authenticate-commit repository commit keyring
#:key (default-authorizations '()))

View File

@ -416,7 +416,9 @@ Essentially, this computes the set difference between the closure of NEW and
that of OLD."
(let loop ((commits (list new))
(result '())
(visited (commit-closure old (list->setq excluded))))
(visited (fold commit-closure
(setq)
(cons old excluded))))
(match commits
(()
(reverse result))

View File

@ -122,7 +122,7 @@ included in the Stackage LTS release."
(let ((pkgs-info (mlambda () (lts-info-packages (stackage-lts-info-fetch)))))
(lambda* (package)
"Return an <upstream-source> for the latest Stackage LTS release of
PACKAGE or #f it the package is not inlucded in the Stackage LTS release."
PACKAGE or #f if the package is not included in the Stackage LTS release."
(let* ((hackage-name (guix-package->hackage-name package))
(version (lts-package-version (pkgs-info) hackage-name))
(name-version (hackage-name-version hackage-name version)))

View File

@ -1194,39 +1194,39 @@ and return it."
(make-weak-key-hash-table 200))
(define (input-graft store system)
"Return a procedure that, given a package with a graft, returns a graft, and
#f otherwise."
(match-lambda
((? package? package)
"Return a procedure that, given a package with a replacement and an output name,
returns a graft, and #f otherwise."
(match-lambda*
(((? package? package) output)
(let ((replacement (package-replacement package)))
(and replacement
(cached (=> %graft-cache) package system
(cached (=> %graft-cache) package (cons output system)
(let ((orig (package-derivation store package system
#:graft? #f))
(new (package-derivation store replacement system
#:graft? #t)))
(graft
(origin orig)
(replacement new)))))))
(x
#f)))
(origin-output output)
(replacement new)
(replacement-output output)))))))))
(define (input-cross-graft store target system)
"Same as 'input-graft', but for cross-compilation inputs."
(match-lambda
((? package? package)
(let ((replacement (package-replacement package)))
(and replacement
(let ((orig (package-cross-derivation store package target system
#:graft? #f))
(new (package-cross-derivation store replacement
target system
#:graft? #t)))
(graft
(origin orig)
(replacement new))))))
(_
#f)))
(match-lambda*
(((? package? package) output)
(let ((replacement (package-replacement package)))
(and replacement
(let ((orig (package-cross-derivation store package target system
#:graft? #f))
(new (package-cross-derivation store replacement
target system
#:graft? #t)))
(graft
(origin orig)
(origin-output output)
(replacement new)
(replacement-output output))))))))
(define* (fold-bag-dependencies proc seed bag
#:key (native? #t))
@ -1243,26 +1243,21 @@ dependencies; otherwise, restrict to target dependencies."
(bag-host-inputs bag))))
bag-host-inputs))
(define nodes
(match (bag-direct-inputs* bag)
(((labels things _ ...) ...)
things)))
(let loop ((nodes nodes)
(let loop ((inputs (bag-direct-inputs* bag))
(result seed)
(visited (setq)))
(match nodes
(visited vlist-null))
(match inputs
(()
result)
(((? package? head) . tail)
(if (set-contains? visited head)
(loop tail result visited)
(let ((inputs (bag-direct-inputs* (package->bag head))))
(loop (match inputs
(((labels things _ ...) ...)
(append things tail)))
(proc head result)
(set-insert head visited)))))
(((label (? package? head) . rest) . tail)
(let ((output (match rest (() "out") ((output) output)))
(outputs (vhash-foldq* cons '() head visited)))
(if (member output outputs)
(loop tail result visited)
(let ((inputs (bag-direct-inputs* (package->bag head))))
(loop (append inputs tail)
(proc head output result)
(vhash-consq head output visited))))))
((head . tail)
(loop tail result visited)))))
@ -1279,8 +1274,8 @@ to (see 'graft-derivation'.)"
(let ((->graft (input-graft store system)))
(parameterize ((%current-system system)
(%current-target-system #f))
(fold-bag-dependencies (lambda (package grafts)
(match (->graft package)
(fold-bag-dependencies (lambda (package output grafts)
(match (->graft package output)
(#f grafts)
(graft (cons graft grafts))))
'()
@ -1291,8 +1286,8 @@ to (see 'graft-derivation'.)"
(let ((->graft (input-cross-graft store target system)))
(parameterize ((%current-system system)
(%current-target-system target))
(fold-bag-dependencies (lambda (package grafts)
(match (->graft package)
(fold-bag-dependencies (lambda (package output grafts)
(match (->graft package output)
(#f grafts)
(graft (cons graft grafts))))
'()

View File

@ -3,6 +3,7 @@
;;; Copyright © 2018 Jan Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2019, 2020 Mathieu Othacehe <m.othacehe@gmail.com>
;;; Copyright © 2020 Florian Pelz <pelzflorian@pelzflorian.de>
;;; Copyright © 2020 Lars-Dominik Braun <ldb@leibniz-psychology.org>
;;;
;;; This file is part of GNU Guix.
;;;
@ -821,8 +822,8 @@ encoding conversion errors."
(locale (false-if-exception (setlocale LC_ALL))))
;; Must be called after `open-connection'.
(define socket
(store-connection-socket server))
(define buffered
(store-connection-output-port server))
(unless (unspecified? use-build-hook?)
(warn-about-deprecation #:use-build-hook? #f
@ -831,9 +832,9 @@ encoding conversion errors."
(let-syntax ((send (syntax-rules ()
((_ (type option) ...)
(begin
(write-arg type option socket)
(write-arg type option buffered)
...)))))
(write-int (operation-id set-options) socket)
(write-int (operation-id set-options) buffered)
(send (boolean keep-failed?) (boolean keep-going?)
(boolean fallback?) (integer verbosity))
(when (< (store-connection-minor-version server) #x61)
@ -896,6 +897,7 @@ encoding conversion errors."
`(("locale" . ,locale))
'()))))
(send (string-pairs pairs))))
(write-buffered-output server)
(let loop ((done? (process-stderr server)))
(or done? (process-stderr server)))))
@ -1108,13 +1110,14 @@ path."
;; We don't use the 'operation' macro so we can pass SELECT? to
;; 'write-file'.
(record-operation 'add-to-store)
(let ((port (store-connection-socket server)))
(write-int (operation-id add-to-store) port)
(write-string basename port)
(write-int 1 port) ;obsolete, must be #t
(write-int (if recursive? 1 0) port)
(write-string hash-algo port)
(write-file file-name port #:select? select?)
(let ((port (store-connection-socket server))
(buffered (store-connection-output-port server)))
(write-int (operation-id add-to-store) buffered)
(write-string basename buffered)
(write-int 1 buffered) ;obsolete, must be #t
(write-int (if recursive? 1 0) buffered)
(write-string hash-algo buffered)
(write-file file-name buffered #:select? select?)
(write-buffered-output server)
(let loop ((done? (process-stderr server)))
(or done? (loop (process-stderr server))))
@ -1220,13 +1223,14 @@ an arbitrary directory layout in the store without creating a derivation."
;; We don't use the 'operation' macro so we can use 'write-file-tree'
;; instead of 'write-file'.
(record-operation 'add-to-store/tree)
(let ((port (store-connection-socket server)))
(write-int (operation-id add-to-store) port)
(write-string basename port)
(write-int 1 port) ;obsolete, must be #t
(write-int (if recursive? 1 0) port)
(write-string hash-algo port)
(write-file-tree basename port
(let ((port (store-connection-socket server))
(buffered (store-connection-output-port server)))
(write-int (operation-id add-to-store) buffered)
(write-string basename buffered)
(write-int 1 buffered) ;obsolete, must be #t
(write-int (if recursive? 1 0) buffered)
(write-string hash-algo buffered)
(write-file-tree basename buffered
#:file-type+size file-type+size
#:file-port file-port
#:symlink-target symlink-target
@ -1644,17 +1648,19 @@ the list of store paths to delete. IGNORE-LIVENESS? should always be
#f. MIN-FREED is the minimum amount of disk space to be freed, in
bytes, before the GC can stop. Return the list of store paths delete,
and the number of bytes freed."
(let ((s (store-connection-socket server)))
(write-int (operation-id collect-garbage) s)
(write-int action s)
(write-store-path-list to-delete s)
(write-arg boolean #f s) ; ignore-liveness?
(write-long-long min-freed s)
(write-int 0 s) ; obsolete
(let ((s (store-connection-socket server))
(buffered (store-connection-output-port server)))
(write-int (operation-id collect-garbage) buffered)
(write-int action buffered)
(write-store-path-list to-delete buffered)
(write-arg boolean #f buffered) ; ignore-liveness?
(write-long-long min-freed buffered)
(write-int 0 buffered) ; obsolete
(when (>= (store-connection-minor-version server) 5)
;; Obsolete `use-atime' and `max-atime' parameters.
(write-int 0 s)
(write-int 0 s))
(write-int 0 buffered)
(write-int 0 buffered))
(write-buffered-output server)
;; Loop until the server is done sending error output.
(let loop ((done? (process-stderr server)))
@ -1711,10 +1717,12 @@ is raised if the set of paths read from PORT is not signed (as per
(define* (export-path server path port #:key (sign? #t))
"Export PATH to PORT. When SIGN? is true, sign it."
(let ((s (store-connection-socket server)))
(write-int (operation-id export-path) s)
(write-store-path path s)
(write-arg boolean sign? s)
(let ((s (store-connection-socket server))
(buffered (store-connection-output-port server)))
(write-int (operation-id export-path) buffered)
(write-store-path path buffered)
(write-arg boolean sign? buffered)
(write-buffered-output server)
(let loop ((done? (process-stderr server port)))
(or done? (loop (process-stderr server port))))
(= 1 (read-int s))))

View File

@ -99,27 +99,76 @@ create it and initialize it as a new database."
;; XXX: missing in guile-sqlite3@0.1.0
(define SQLITE_BUSY 5)
(define (call-with-transaction db proc)
"Start a transaction with DB (make as many attempts as necessary) and run
PROC. If PROC exits abnormally, abort the transaction, otherwise commit the
transaction after it finishes."
(define (call-with-SQLITE_BUSY-retrying thunk)
"Call THUNK, retrying as long as it exits abnormally due to SQLITE_BUSY
errors."
(catch 'sqlite-error
thunk
(lambda (key who code errmsg)
(if (= code SQLITE_BUSY)
(call-with-SQLITE_BUSY-retrying thunk)
(throw key who code errmsg)))))
(define* (call-with-transaction db proc #:key restartable?)
"Start a transaction with DB and run PROC. If PROC exits abnormally, abort
the transaction, otherwise commit the transaction after it finishes.
RESTARTABLE? may be set to a non-#f value when it is safe to run PROC multiple
times. This may reduce contention for the database somewhat."
(define (exec sql)
(with-statement db sql stmt
(sqlite-fold cons '() stmt)))
;; We might use begin immediate here so that if we need to retry, we figure
;; that out immediately rather than because some SQLITE_BUSY exception gets
;; thrown partway through PROC - in which case the part already executed
;; (which may contain side-effects!) might have to be executed again for
;; every retry.
(exec (if restartable? "begin;" "begin immediate;"))
(catch #t
(lambda ()
;; We use begin immediate here so that if we need to retry, we
;; figure that out immediately rather than because some SQLITE_BUSY
;; exception gets thrown partway through PROC - in which case the
;; part already executed (which may contain side-effects!) would be
;; executed again for every retry.
(sqlite-exec db "begin immediate;")
(let ((result (proc)))
(sqlite-exec db "commit;")
result))
(lambda (key who error description)
(if (= error SQLITE_BUSY)
(call-with-transaction db proc)
(begin
(sqlite-exec db "rollback;")
(throw 'sqlite-error who error description))))))
(let-values ((result (proc)))
(exec "commit;")
(apply values result)))
(lambda args
;; The roll back may or may not have occurred automatically when the
;; error was generated. If it has occurred, this does nothing but signal
;; an error. If it hasn't occurred, this needs to be done.
(false-if-exception (exec "rollback;"))
(apply throw args))))
(define* (call-with-savepoint db proc
#:optional (savepoint-name "SomeSavepoint"))
"Call PROC after creating a savepoint named SAVEPOINT-NAME. If PROC exits
abnormally, rollback to that savepoint. In all cases, remove the savepoint
prior to returning."
(define (exec sql)
(with-statement db sql stmt
(sqlite-fold cons '() stmt)))
(dynamic-wind
(lambda ()
(exec (string-append "SAVEPOINT " savepoint-name ";")))
(lambda ()
(catch #t
proc
(lambda args
(exec (string-append "ROLLBACK TO " savepoint-name ";"))
(apply throw args))))
(lambda ()
(exec (string-append "RELEASE " savepoint-name ";")))))
(define* (call-with-retrying-transaction db proc #:key restartable?)
(call-with-SQLITE_BUSY-retrying
(lambda ()
(call-with-transaction db proc #:restartable? restartable?))))
(define* (call-with-retrying-savepoint db proc
#:optional (savepoint-name
"SomeSavepoint"))
(call-with-SQLITE_BUSY-retrying
(lambda ()
(call-with-savepoint db proc savepoint-name))))
(define %default-database-file
;; Default location of the store database.
@ -130,14 +179,37 @@ transaction after it finishes."
If FILE doesn't exist, create it and initialize it as a new database."
(call-with-database file (lambda (db) exp ...)))
(define (sqlite-finalize stmt)
;; As of guile-sqlite3 0.1.0, cached statements aren't reset when
;; sqlite-finalize is invoked on them (see
;; https://notabug.org/guile-sqlite3/guile-sqlite3/issues/12). This can
;; cause problems with automatically-started transactions, so we work around
;; it by wrapping sqlite-finalize so that sqlite-reset is always called.
;; This always works, because resetting a statement twice has no adverse
;; effects. We can remove this once the fixed guile-sqlite3 is widespread.
(sqlite-reset stmt)
((@ (sqlite3) sqlite-finalize) stmt))
(define (call-with-statement db sql proc)
(let ((stmt (sqlite-prepare db sql #:cache? #t)))
(dynamic-wind
(const #t)
(lambda ()
(proc stmt))
(lambda ()
(sqlite-finalize stmt)))))
(define-syntax-rule (with-statement db sql stmt exp ...)
"Run EXP... with STMT bound to a prepared statement corresponding to the sql
string SQL for DB."
(call-with-statement db sql
(lambda (stmt) exp ...)))
(define (last-insert-row-id db)
;; XXX: (sqlite3) currently lacks bindings for 'sqlite3_last_insert_rowid'.
;; Work around that.
(let* ((stmt (sqlite-prepare db "SELECT last_insert_rowid();"
#:cache? #t))
(result (sqlite-fold cons '() stmt)))
(sqlite-finalize stmt)
(match result
(with-statement db "SELECT last_insert_rowid();" stmt
(match (sqlite-fold cons '() stmt)
((#(id)) id)
(_ #f))))
@ -147,13 +219,11 @@ If FILE doesn't exist, create it and initialize it as a new database."
(define* (path-id db path)
"If PATH exists in the 'ValidPaths' table, return its numerical
identifier. Otherwise, return #f."
(let ((stmt (sqlite-prepare db path-id-sql #:cache? #t)))
(with-statement db path-id-sql stmt
(sqlite-bind-arguments stmt #:path path)
(let ((result (sqlite-fold cons '() stmt)))
(sqlite-finalize stmt)
(match result
((#(id) . _) id)
(_ #f)))))
(match (sqlite-fold cons '() stmt)
((#(id) . _) id)
(_ #f))))
(define update-sql
"UPDATE ValidPaths SET hash = :hash, registrationTime = :time, deriver =
@ -168,22 +238,41 @@ VALUES (:path, :hash, :time, :deriver, :size)")
doesn't exactly have... they've got something close, but it involves deleting
and re-inserting instead of updating, which causes problems with foreign keys,
of course. Returns the row id of the row that was modified or inserted."
(let ((id (path-id db path)))
(if id
(let ((stmt (sqlite-prepare db update-sql #:cache? #t)))
(sqlite-bind-arguments stmt #:id id
#:deriver deriver
#:hash hash #:size nar-size #:time time)
(sqlite-fold cons '() stmt)
(sqlite-finalize stmt)
(last-insert-row-id db))
(let ((stmt (sqlite-prepare db insert-sql #:cache? #t)))
(sqlite-bind-arguments stmt
#:path path #:deriver deriver
#:hash hash #:size nar-size #:time time)
(sqlite-fold cons '() stmt) ;execute it
(sqlite-finalize stmt)
(last-insert-row-id db)))))
;; It's important that querying the path-id and the insert/update operation
;; take place in the same transaction, as otherwise some other
;; process/thread/fiber could register the same path between when we check
;; whether it's already registered and when we register it, resulting in
;; duplicate paths (which, due to a 'unique' constraint, would cause an
;; exception to be thrown). With the default journaling mode this will
;; prevent writes from occurring during that sensitive time, but with WAL
;; mode it will instead arrange to return SQLITE_BUSY when a write occurs
;; between the start of a read transaction and its upgrading to a write
;; transaction (see https://sqlite.org/rescode.html#busy_snapshot).
;; Experimentally, it seems this SQLITE_BUSY will ignore a busy_timeout and
;; immediately return (makes sense, since waiting won't change anything).
;; Note that when that kind of SQLITE_BUSY error is returned, it will keep
;; being returned every time we try to upgrade the same outermost
;; transaction to a write transaction. So when retrying, we have to restart
;; the *outermost* write transaction. We can't inherently tell whether
;; we're the outermost write transaction, so we leave the retry-handling to
;; the caller.
(call-with-savepoint db
(lambda ()
(let ((id (path-id db path)))
(if id
(with-statement db update-sql stmt
(sqlite-bind-arguments stmt #:id id
#:deriver deriver
#:hash hash #:size nar-size #:time time)
(sqlite-fold cons '() stmt))
(with-statement db insert-sql stmt
(sqlite-bind-arguments stmt
#:path path #:deriver deriver
#:hash hash #:size nar-size #:time time)
(sqlite-fold cons '() stmt)))
(last-insert-row-id db)))))
(define add-reference-sql
"INSERT OR REPLACE INTO Refs (referrer, reference) VALUES (:referrer, :reference);")
@ -191,15 +280,13 @@ of course. Returns the row id of the row that was modified or inserted."
(define (add-references db referrer references)
"REFERRER is the id of the referring store item, REFERENCES is a list
ids of items referred to."
(let ((stmt (sqlite-prepare db add-reference-sql #:cache? #t)))
(with-statement db add-reference-sql stmt
(for-each (lambda (reference)
(sqlite-reset stmt)
(sqlite-bind-arguments stmt #:referrer referrer
#:reference reference)
(sqlite-fold cons '() stmt) ;execute it
(last-insert-row-id db))
references)
(sqlite-finalize stmt)))
(sqlite-fold cons '() stmt))
references)))
(define* (sqlite-register db #:key path (references '())
deriver hash nar-size time)
@ -354,7 +441,7 @@ Write a progress report to LOG-PORT."
(mkdir-p db-dir)
(parameterize ((sql-schema schema))
(with-database (string-append db-dir "/db.sqlite") db
(call-with-transaction db
(call-with-retrying-transaction db
(lambda ()
(let* ((prefix (format #f "registering ~a items" (length items)))
(progress (progress-reporter/bar (length items)

View File

@ -119,8 +119,7 @@
(list commit3 commit4))
(lset= eq? (commit-difference commit4 commit1 (list commit3))
(list commit4))
(lset= eq? (commit-difference commit4 commit1 (list commit5))
(list commit2 commit3 commit4)))))))
(null? (commit-difference commit4 commit1 (list commit5))))))))
(unless (which (git-command)) (test-skip 1))
(test-equal "commit-relation"

View File

@ -900,6 +900,30 @@
(replacement #f))))
(replacement (package-derivation %store new)))))))
(test-assert "package-grafts, dependency on several outputs"
;; Make sure we get one graft per output; see <https://bugs.gnu.org/41796>.
(letrec* ((p0 (dummy-package "p0"
(version "1.0")
(replacement p0*)
(arguments '(#:implicit-inputs? #f))
(outputs '("out" "lib"))))
(p0* (package (inherit p0) (version "1.1")))
(p1 (dummy-package "p1"
(arguments '(#:implicit-inputs? #f))
(inputs `(("p0" ,p0)
("p0:lib" ,p0 "lib"))))))
(lset= equal? (pk (package-grafts %store p1))
(list (graft
(origin (package-derivation %store p0))
(origin-output "out")
(replacement (package-derivation %store p0*))
(replacement-output "out"))
(graft
(origin (package-derivation %store p0))
(origin-output "lib")
(replacement (package-derivation %store p0*))
(replacement-output "lib"))))))
(test-assert "replacement also grafted"
;; We build a DAG as below, where dotted arrows represent replacements and
;; solid arrows represent dependencies: