me
/
guix
Archived
1
0
Fork 0

Merge branch 'master' into staging

master
Marius Bakke 2020-11-11 00:02:32 +01:00
commit a9a0d34874
No known key found for this signature in database
GPG Key ID: A2A06DF2A33A54FA
70 changed files with 19621 additions and 13432 deletions

View File

@ -0,0 +1,192 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2020 Marius Bakke <marius@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
;;; GNU Guix is free software; you can redistribute it and/or modify it
;;; under the terms of the GNU General Public License as published by
;;; the Free Software Foundation; either version 3 of the License, or (at
;;; your option) any later version.
;;;
;;; GNU Guix is distributed in the hope that it will be useful, but
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;;; GNU General Public License for more details.
;;;
;;; You should have received a copy of the GNU General Public License
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu build chromium-extension)
#:use-module (gcrypt base16)
#:use-module ((gcrypt hash) #:prefix hash:)
#:use-module (ice-9 iconv)
#:use-module (guix gexp)
#:use-module (guix packages)
#:use-module (gnu packages base)
#:use-module (gnu packages check)
#:use-module (gnu packages chromium)
#:use-module (gnu packages gnupg)
#:use-module (gnu packages tls)
#:use-module (gnu packages xorg)
#:use-module (guix build-system trivial)
#:export (make-chromium-extension))
;;; Commentary:
;;;
;;; Tools to deal with Chromium extensions.
;;;
;;; Code:
(define (make-signing-key seed)
"Return a derivation for a deterministic PKCS #8 private key using SEED."
(define sha256sum
(bytevector->base16-string (hash:sha256 (string->bytevector seed "UTF-8"))))
;; certtool.c wants a 56 byte seed for a 2048 bit key.
(define size 2048)
(define normalized-seed (string-take sha256sum 56))
(computed-file (string-append seed "-signing-key.pem")
#~(system* #$(file-append gnutls "/bin/certtool")
"--generate-privkey"
"--key-type=rsa"
"--pkcs8"
;; Use the provable FIPS-PUB186-4 algorithm for
;; deterministic results.
"--provable"
"--password="
"--no-text"
(string-append "--bits=" #$(number->string size))
(string-append "--seed=" #$normalized-seed)
"--outfile" #$output)
#:local-build? #t))
(define* (make-crx signing-key package #:optional (package-output "out"))
"Create a signed \".crx\" file from the unpacked Chromium extension residing
in PACKAGE-OUTPUT of PACKAGE. The extension will be signed with SIGNING-KEY."
(define name (package-name package))
(define version (package-version package))
(with-imported-modules '((guix build utils))
(computed-file
(string-append name "-" version ".crx")
#~(begin
;; This is not great. We pull Xorg and Chromium just to Zip and
;; sign an extension. This should be implemented with something
;; lighter. (TODO: where is the CRXv3 documentation..?)
(use-modules (guix build utils))
(let ((chromium #$(file-append ungoogled-chromium "/bin/chromium"))
(xvfb #$(file-append xorg-server "/bin/Xvfb"))
(packdir "/tmp/extension"))
(mkdir-p (dirname packdir))
(copy-recursively (ungexp package package-output) packdir)
(system (string-append xvfb " :1 &"))
(setenv "DISPLAY" ":1")
(sleep 2) ;give Xorg some time to initialize...
;; Chromium stores the current time in the .crx Zip archive.
;; Use a fixed timestamp for deterministic behavior.
;; FIXME (core-updates): faketime is missing an absolute reference
;; to 'date', hence the need to set PATH.
(setenv "PATH" #$(file-append coreutils "/bin"))
(invoke #$(file-append libfaketime "/bin/faketime")
"2000-01-01 00:00:00"
chromium
"--user-data-dir=/tmp/signing-profile"
(string-append "--pack-extension=" packdir)
(string-append "--pack-extension-key=" #$signing-key))
(copy-file (string-append packdir ".crx") #$output)))
#:local-build? #t)))
(define* (crx->chromium-json crx version)
"Return a derivation that creates a Chromium JSON settings file for the
extension given as CRX. VERSION is used to signify the CRX version, and
must match the version listed in the extension manifest.json."
;; See chrome/browser/extensions/external_provider_impl.cc and
;; extensions/common/extension.h for documentation on the JSON format.
(computed-file "extension.json"
#~(call-with-output-file #$output
(lambda (port)
(format port "{
\"external_crx\": \"~a\",
\"external_version\": \"~a\"
}
"
#$crx #$version)))
#:local-build? #t))
(define (signing-key->public-der key)
"Return a derivation for a file containing the public key of KEY in DER
format."
(computed-file "der"
#~(system* #$(file-append gnutls "/bin/certtool")
"--load-privkey" #$key
"--pubkey-info"
"--outfile" #$output
"--outder")
#:local-build? #t))
(define (chromium-json->profile-object json signing-key)
"Return a derivation that installs JSON to the directory searched by
Chromium, using a file name (aka extension ID) derived from SIGNING-KEY."
(define der (signing-key->public-der signing-key))
(with-extensions (list guile-gcrypt)
(with-imported-modules '((guix build utils))
(computed-file
"chromium-extension"
#~(begin
(use-modules (guix build utils)
(gcrypt base16)
(gcrypt hash))
(define (base16-string->chromium-base16 str)
;; Translate STR, a hexadecimal string, to a Chromium-style
;; representation using the letters a-p (where a=0, p=15).
(define s1 "0123456789abcdef")
(define s2 "abcdefghijklmnop")
(let loop ((chars (string->list str))
(converted '()))
(if (null? chars)
(list->string (reverse converted))
(loop (cdr chars)
(cons (string-ref s2 (string-index s1 (car chars)))
converted)))))
(let* ((checksum (bytevector->base16-string (file-sha256 #$der)))
(file-name (base16-string->chromium-base16
(string-take checksum 32)))
(extension-directory (string-append #$output
"/share/chromium/extensions")))
(mkdir-p extension-directory)
(symlink #$json (string-append extension-directory "/"
file-name ".json"))))
#:local-build? #t))))
(define* (make-chromium-extension p #:optional (output "out"))
"Create a Chromium extension from package P and return a package that,
when installed, will make the extension contained in P available as a
Chromium browser extension. OUTPUT specifies which output of P to use."
(let* ((pname (package-name p))
(version (package-version p))
(signing-key (make-signing-key pname)))
(package
(inherit p)
(name (string-append pname "-chromium"))
(source #f)
(build-system trivial-build-system)
(native-inputs '())
(inputs
`(("extension" ,(chromium-json->profile-object
(crx->chromium-json (make-crx signing-key p output)
version)
signing-key))))
(propagated-inputs '())
(outputs '("out"))
(arguments
'(#:modules ((guix build utils))
#:builder
(begin
(use-modules (guix build utils))
(copy-recursively (assoc-ref %build-inputs "extension")
(assoc-ref %outputs "out"))))))))

View File

@ -758,11 +758,33 @@ cause them to cross."
dev-constraint))
(no-constraint (constraint-any device))
;; Try to create a partition with an optimal alignment
;; constraint. If it fails, fallback to creating a partition with
;; no specific constraint.
;; constraint. If it fails, fallback to creating a partition
;; with no specific constraint.
(partition-constraint-ok?
(disk-add-partition disk partition final-constraint))
(partition-no-contraint-ok?
(or partition-constraint-ok?
(disk-add-partition disk partition no-constraint)))
(partition-ok?
(or (disk-add-partition disk partition final-constraint)
(disk-add-partition disk partition no-constraint))))
(or partition-constraint-ok? partition-no-contraint-ok?)))
(syslog "Creating partition:
~/type: ~a
~/filesystem-type: ~a
~/start: ~a
~/end: ~a
~/start-range: [~a, ~a]
~/end-range: [~a, ~a]
~/constraint: ~a
~/no-constraint: ~a
"
partition-type
(filesystem-type-name filesystem-type)
start-sector*
end-sector
(geometry-start start-range) (geometry-end start-range)
(geometry-start end-range) (geometry-end end-range)
partition-constraint-ok?
partition-no-contraint-ok?)
;; Set the partition name if supported.
(when (and partition-ok? has-name? name)
(partition-set-name partition name))

View File

@ -111,6 +111,7 @@ GNU_SYSTEM_MODULES = \
%D%/packages/boost.scm \
%D%/packages/bootloaders.scm \
%D%/packages/bootstrap.scm \
%D%/packages/browser-extensions.scm \
%D%/packages/build-tools.scm \
%D%/packages/busybox.scm \
%D%/packages/c.scm \
@ -657,6 +658,7 @@ GNU_SYSTEM_MODULES = \
%D%/build/accounts.scm \
%D%/build/activation.scm \
%D%/build/bootloader.scm \
%D%/build/chromium-extension.scm \
%D%/build/cross-toolchain.scm \
%D%/build/image.scm \
%D%/build/file-systems.scm \
@ -1424,6 +1426,7 @@ dist_patch_DATA = \
%D%/packages/patches/plasma-framework-fix-KF5PlasmaMacros.cmake.patch \
%D%/packages/patches/ppsspp-disable-upgrade-and-gold.patch \
%D%/packages/patches/samba-fix-fcntl-hint-detection.patch \
%D%/packages/patches/sdcc-disable-non-free-code.patch \
%D%/packages/patches/sdl-pango-api_additions.patch \
%D%/packages/patches/sdl-pango-blit_overflow.patch \
%D%/packages/patches/sdl-pango-fillrect_crash.patch \

View File

@ -1,5 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2018 Danny Milosavljevic <dannym@scratchpost.org>
;;; Copyright © 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;;
;;; This file is part of GNU Guix.
;;;
@ -24,10 +25,126 @@
#:use-module (guix download)
#:use-module (guix git-download)
#:use-module (gnu packages)
#:use-module (gnu packages base)
#:use-module (gnu packages check)
#:use-module (gnu packages compression)
#:use-module (gnu packages python)
#:use-module (gnu packages python-xyz))
#:use-module (gnu packages python-xyz)
#:use-module (ice-9 match))
(define-public ada/ed
(package
(name "ada-ed")
(version "1.11.2")
(source
(origin
(method git-fetch)
(uri (git-reference
;; The HOME-PAGE sources, mirrored by one of the original authors.
(url "https://github.com/daveshields/AdaEd")
(commit "57daecfb7ccadfd9aaf13b4d54f51065affbe599")))
(sha256
(base32 "1k97a8nqsvbsadizrmhhypcx758sxqkai8wq3ckk853qxvzaasd8"))
(file-name (git-file-name name version))))
(build-system gnu-build-system)
(supported-systems (list "i686-linux" "x86_64-linux"
"armhf-linux" "aarch64-linux"))
(outputs (list "out" "debug"))
(arguments
`(#:system
,@(match (%current-system)
;; This package predates 64-bit PCs: a 64-bit adaexec segfaults.
;; Force a 32-bit build targeting a similar architecture.
((or "armhf-linux" "aarch64-linux")
`("armhf-linux"))
(_
`("i686-linux")))
#:make-flags
(let ((out (assoc-ref %outputs "out")))
(list (string-append
"CFLAGS=-g" ; compile with :debug symbols
" -DOP_SYS='\"GNU\"'" ; sic; quoting gets mangled somewhere
" -DSYSTEM_V" ; closest to modern GNU
" -DWORDSIZE32"
" -DALIGN4") ; suffices on both x86 and ARM
"LFLAGS=" ; don't link against -lg
(string-append "BINDIR=" out "/bin")
(string-append "LIBDIR=" out "/lib")
(string-append "MANDIR=" out "/share/man")))
#:modules ((guix build gnu-build-system)
(guix build utils)
(srfi srfi-26))
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'patch-sources
(lambda _
;; Rename the custom (and incompatible) getline() implementation.
(substitute* "adalex.c"
(("getline") "adaed_getline"))
;; Work around error: initializer element is not constant by not
;; initialising MSGFILE.
(substitute* "vars.ch"
(("INIT\\(stdout\\)") ""))
#t))
(delete 'configure) ; no configure script
(add-before 'build 'find-build-scripts
(lambda _
(setenv "PATH" (string-append ".:" (getenv "PATH")))
#t))
(add-after 'build 'build-predef
(lambda* (#:key make-flags #:allow-other-keys)
;; These aren't otherwise compiled until the install phase.
(apply invoke "make" "predef" make-flags)
#t))
(delete 'check) ; no test suite; run our own below
(add-before 'install 'create-output-directories
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(mkdir-p (string-append out "/share/man/manl"))
#t)))
(add-after 'install 'check
;; Run most of the included demos as our own test suite.
(lambda* (#:key outputs tests? #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(when tests?
(setenv "ADAED" (string-append out "/lib"))
(setenv "PATH" (string-append out "/bin:" (getenv "PATH")))
(with-directory-excursion "demos" ; won't run outside of it
(for-each
delete-file
'("runc" ; invalid data. Please make it a positive no.
"rund" ; deadlocks by design
"rune" ; dining2.ada: No such file or directory
"rung")) ; mathlib cannot be used as a library (!)
(for-each (lambda (script)
(format #t "\n=== Invoking ~a ===\n" script)
(invoke script))
(find-files "." "^run")))))))
(add-after 'install 'clean-up-output
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(with-directory-excursion out
;; These needn't be executable.
(for-each (cut chmod <> #o644)
(append (find-files "lib" "\\....$")
(find-files "share" ".")))
#t)))))))
(native-inputs
`(("sed" ,sed)))
(home-page (string-append "https://web.archive.org/web/20140902150609/"
"http://www2.informatik.uni-stuttgart.de/iste/ps/"
"ada-software/html/dos_ada.html"))
(synopsis "Ada 83 interpreter")
(description "Ada/Ed is a translator-interpreter for Ada 83. It's intended
primarily as a teaching tool and lacks the capacity, performance, and robustness
of other contemporary or modern-day Ada compilers.
Ada/Ed was the first Ada compiler to pass the @acronym{ACVC, Ada Compiler
Validation Suite} version 1.7 but fails many newer tests and is not a validated
Ada system. Being an interpreter, it does not implement most representation
clauses, and thus does not support systems programming close to the machine
level.")
(license license:gpl2+)))
(define-public python2-langkit
(let ((commit "fe0bc8bf60dbd2937759810df76ac420d99fc15f")

View File

@ -1008,8 +1008,11 @@ Optional thin wrappers allow usage of the library from other languages.")
(version "3.3.7")
(source (origin
(method url-fetch)
(uri (string-append "https://bitbucket.org/eigen/eigen/get/"
version ".tar.bz2"))
(uri (list
(string-append "https://bitbucket.org/eigen/eigen/get/"
version ".tar.bz2")
(string-append "mirror://debian/pool/main/e/eigen3/eigen3_"
version ".orig.tar.bz2")))
(sha256
(base32
"1km3fyfzyqfdvmnl79drps3fjwnz3zbh0c7l34mfbqyvvs8cy4wz"))
@ -1089,7 +1092,7 @@ features, and more.")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/QuantStack/xtensor")
(url "https://github.com/xtensor-stack/xtensor")
(commit version)))
(sha256
(base32
@ -1103,7 +1106,7 @@ features, and more.")
`(#:configure-flags
'("-DBUILD_TESTS=ON")
#:test-target "xtest"))
(home-page "https://quantstack.net/xtensor")
(home-page "https://xtensor.readthedocs.io/en/latest/")
(synopsis "C++ tensors with broadcasting and lazy computing")
(description "xtensor is a C++ library meant for numerical analysis with
multi-dimensional array expressions.

View File

@ -2,7 +2,7 @@
;;; Copyright © 2013, 2014, 2015, 2017, 2018, 2019, 2020 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2015, 2016 Alex Kost <alezost@gmail.com>
;;; Copyright © 2016 John Darrington <jmd@gnu.org>
;;; Copyright © 2016, 2017, 2019 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016, 2017, 2019, 2020 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 Christopher Andersson <christopher@8bits.nu>
;;; Copyright © 2016 Theodoros Foradis <theodoros@foradis.org>
;;; Copyright © 2016, 2017, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
@ -11,6 +11,7 @@
;;; Copyright © 2020 Marcin Karpezo <sirmacik@wioo.waw.pl>
;;; Copyright © 2020 Jonathan Brielmaier <jonathan.brielmaier@web.de>
;;; Copyright © 2020 Jakub Kądziołka <kuba@kadziolka.net>
;;; Copyright © 2020 Noah Landis <noahlandis@posteo.net>
;;;
;;; This file is part of GNU Guix.
;;;
@ -170,6 +171,13 @@ dictionaries, including personal ones.")
(hash (content-hash sha256))))
(home-page "https://www.softcatala.org/pub/softcatala/aspell/"))))
(define-public aspell-dict-cs
(aspell-dictionary "cs" "Czech"
#:version "20040614-1"
#:sha256
(base32
"0rihj4hsw96pd9casvmpvw3r8040pfa28p1h73x4vyn20zwr3h01")))
(define-public aspell-dict-de
(aspell-dictionary "de" "German"
#:version "20161207-7-0"
@ -275,6 +283,7 @@ dictionaries, including personal ones.")
(define-public aspell-dict-mi
(aspell-dictionary "mi" "Maori"
#:version "0.50-0"
#:prefix "aspell-"
#:sha256
(base32
"12bxplpd348yx8d2q8qvahi9dlp7qf28qmanzhziwc7np8rixvmy")))
@ -290,6 +299,7 @@ dictionaries, including personal ones.")
(define-public aspell-dict-nn
(aspell-dictionary "nn" "Norwegian Nynorsk"
#:version "0.50.1-1"
#:prefix "aspell-"
#:sha256
(base32
"0w2k5l5rbqpliripgqwiqixz5ghnjf7i9ggbrc4ly4vy1ia10rmc")))
@ -297,6 +307,7 @@ dictionaries, including personal ones.")
(define-public aspell-dict-pl
(aspell-dictionary "pl" "Polish"
#:version "0.51-0"
#:prefix "aspell-"
#:sha256
(base32
"1a3ccji6k5gys7l3ilr2lh5pzxgzb7ipc5vb737svl6nqgdy8757")))
@ -363,8 +374,8 @@ dictionaries, including personal ones.")
(source (origin
(method url-fetch)
(uri (string-append
"http://downloads.sourceforge.net/wordlist/scowl-"
version ".tar.gz"))
"mirror://sourceforge/wordlist/SCOWL/"
version "/scowl-" version ".tar.gz"))
(sha256
(base32
"11lkrnhwrf5mvrrq45k4mads3n9aswgac8dc25ba61c75alxb5rs"))))

View File

@ -265,7 +265,7 @@ runtime")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/rednex/rgbds")
(url "https://github.com/gbdev/rgbds")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
@ -292,7 +292,7 @@ runtime")
("util-linux" ,util-linux)))
(inputs
`(("libpng" ,libpng)))
(home-page "https://github.com/rednex/rgbds")
(home-page "https://github.com/gbdev/rgbds")
(synopsis "Rednex Game Boy Development System")
(description
"RGBDS (Rednex Game Boy Development System) is an assembler/linker

View File

@ -4,7 +4,7 @@
;;; Copyright © 2015 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2015 Alex Kost <alezost@gmail.com>
;;; Copyright © 2015, 2016 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2016, 2017, 2018, 2019 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016, 2017, 2018, 2019, 2020 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016, 2017 Alex Griffin <a@ajgrf.com>
;;; Copyright © 2016 Nikita <nikita@n0.is>
;;; Copyright © 2016 Lukas Gradl <lgradl@openmailbox.org>
@ -3522,8 +3522,11 @@ interface.")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/qsynth/qsynth/" version
"/qsynth-" version ".tar.gz"))
(uri (list
(string-append "mirror://sourceforge/qsynth/qsynth/" version
"/qsynth-" version ".tar.gz")
(string-append "mirror://sourceforge/qsynth/qsynth (attic)"
"/qsynth-" version ".tar.gz")))
(sha256
(base32 "18im4w8agj60nkppwbkxqnhpp13z5li3w30kklv4lgs20rvgbvl6"))))
(build-system gnu-build-system)
@ -3802,8 +3805,11 @@ machine-readable ASCII format.")
(version "3.0.10")
(source (origin
(method url-fetch)
(uri (string-append "http://etree.org/shnutils/shntool/dist/src/"
"shntool-" version ".tar.gz"))
(uri (list
(string-append "http://etree.org/shnutils/shntool/dist/src/"
"shntool-" version ".tar.gz")
(string-append "mirror://debian/pool/main/s/shntool/shntool_"
version ".orig.tar.gz")))
(sha256
(base32
"00i1rbjaaws3drkhiczaign3lnbhr161b7rbnjr8z83w8yn2wc3l"))))

View File

@ -1072,7 +1072,7 @@ interactive mode.")
(define-public burp
(package
(name "burp")
(version "2.3.36")
(version "2.3.38")
(source
(origin
(method git-fetch)
@ -1080,7 +1080,7 @@ interactive mode.")
(url "https://github.com/grke/burp")
(commit version)))
(sha256
(base32 "18gj1sv1naql0xais01yniyzs8dxc8xk5sk8y9hsc0cd93mxgk17"))
(base32 "0m0s6rrgxn3l6bad45vyhks6iz6bwvd0f3rzdsc7l28gar79wsj6"))
(file-name (git-file-name name version))))
(build-system gnu-build-system)
(arguments

View File

@ -4470,26 +4470,40 @@ experiments.")
;; The PyPi tarball does not contain tests.
(method git-fetch)
(uri (git-reference
(url "https://github.com/taoliu/MACS")
(url "https://github.com/macs3-project/MACS")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"1c5gxr0mk6hkd4vclf0k00wvyvzw2vrmk52c85338p7aqjwg6n15"))))
"1c5gxr0mk6hkd4vclf0k00wvyvzw2vrmk52c85338p7aqjwg6n15"))
(modules '((guix build utils)))
;; Remove files generated by Cython
(snippet
'(begin
(for-each (lambda (file)
(let ((generated-file
(string-append (string-drop-right file 3) "c")))
(when (file-exists? generated-file)
(delete-file generated-file))))
(find-files "." "\\.pyx$"))
(delete-file "MACS2/IO/CallPeakUnitPrecompiled.c")
#t))))
(build-system python-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(delete 'check)
(add-after 'install 'check
(lambda* (#:key inputs outputs #:allow-other-keys)
(add-installed-pythonpath inputs outputs)
(invoke "pytest" "-v"))))))
(replace 'check
(lambda* (#:key tests? inputs outputs #:allow-other-keys)
(when tests?
(add-installed-pythonpath inputs outputs)
(invoke "pytest" "-v"))
#t)))))
(inputs
`(("python-numpy" ,python-numpy)))
(native-inputs
`(("python-pytest" ,python-pytest)))
(home-page "https://github.com/taoliu/MACS/")
`(("python-cython" ,python-cython)
("python-pytest" ,python-pytest)))
(home-page "https://github.com/macs3-project/MACS")
(synopsis "Model based analysis for ChIP-Seq data")
(description
"MACS is an implementation of a ChIP-Seq analysis algorithm for

View File

@ -6,7 +6,7 @@
;;; Copyright © 2016, 2017, 2018 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2016, 2017 Danny Milosavljevic <dannym@scratchpost.org>
;;; Copyright © 2016, 2017 David Craven <david@craven.ch>
;;; Copyright © 2017, 2018 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2017, 2018, 2020 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2019 nee <nee@cock.li>
;;; Copyright © 2019 Mathieu Othacehe <m.othacehe@gmail.com>
@ -115,11 +115,12 @@
;; determine the root file system when it's a RAID
;; device. Failing to do that, 'grub-probe' silently
;; fails if 'mdadm' is not in $PATH.
(substitute* "grub-core/osdep/linux/getroot.c"
(("argv\\[0\\] = \"mdadm\"")
(string-append "argv[0] = \""
(assoc-ref inputs "mdadm")
"/sbin/mdadm\"")))
(when (assoc-ref inputs "mdadm")
(substitute* "grub-core/osdep/linux/getroot.c"
(("argv\\[0\\] = \"mdadm\"")
(string-append "argv[0] = \""
(assoc-ref inputs "mdadm")
"/sbin/mdadm\""))))
;; Make the font visible.
(copy-file (assoc-ref (or native-inputs inputs)

View File

@ -0,0 +1,123 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2020 Marius Bakke <marius@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
;;; GNU Guix is free software; you can redistribute it and/or modify it
;;; under the terms of the GNU General Public License as published by
;;; the Free Software Foundation; either version 3 of the License, or (at
;;; your option) any later version.
;;;
;;; GNU Guix is distributed in the hope that it will be useful, but
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;;; GNU General Public License for more details.
;;;
;;; You should have received a copy of the GNU General Public License
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu packages browser-extensions)
#:use-module (guix packages)
#:use-module (guix git-download)
#:use-module (guix build-system copy)
#:use-module (guix build-system gnu)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (gnu build chromium-extension)
#:use-module (gnu packages compression)
#:use-module (gnu packages python))
(define play-to-kodi
(package
(name "play-to-kodi")
(version "1.9.1")
(home-page "https://github.com/khloke/play-to-xbmc-chrome")
(source (origin
(method git-fetch)
(uri (git-reference (url home-page) (commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"01rmcpbkn9vhcd8mrah2jmd2801k2r5fz7aqvp22hbwmh2z5f1ch"))))
(build-system copy-build-system)
(synopsis "Send website contents to Kodi")
(description
"Play to Kodi is a browser add-on that can send video, audio, and other
supported content to the Kodi media center.")
(license license:expat)))
(define-public play-to-kodi/chromium
(make-chromium-extension play-to-kodi))
(define uassets
(let ((commit "0cef83c9fc68fdad8f3ee9dc07f6356ebc12791c"))
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/uBlockOrigin/uAssets.git")
(commit commit)))
(file-name (git-file-name "uAssets" (string-take commit 9)))
(sha256
(base32
"13mjql3rr5f3zilx05i8r7slnp7xyj6zn43dcfl3gdgi8ik483dd")))))
(define ublock-origin
(package
(name "ublock-origin")
(version "1.30.6")
(home-page "https://github.com/gorhill/uBlock")
(source (origin
(method git-fetch)
(uri (git-reference (url home-page) (commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"10arx4r4s8125g9zlh3bcjpcb4qh2wzfmvqc2x8nly5fbxvxvns3"))))
(build-system gnu-build-system)
(outputs '("xpi" "firefox" "chromium"))
(arguments
'(#:tests? #f ;no tests
#:allowed-references ()
#:phases
(modify-phases (map (lambda (phase)
(assq phase %standard-phases))
'(set-paths unpack patch-source-shebangs))
(add-after 'unpack 'link-uassets
(lambda* (#:key native-inputs inputs #:allow-other-keys)
(symlink (string-append (assoc-ref (or native-inputs inputs)
"uassets"))
"../uAssets")
#t))
(add-after 'unpack 'make-files-writable
(lambda _
;; The build system copies some files and later tries
;; modifying them.
(for-each make-file-writable (find-files "."))
#t))
(add-after 'patch-source-shebangs 'build-xpi
(lambda _
(invoke "./tools/make-firefox.sh" "all")))
(add-after 'build-xpi 'build-chromium
(lambda _
(invoke "./tools/make-chromium.sh")))
(add-after 'build-chromium 'install
(lambda* (#:key outputs #:allow-other-keys)
(let ((firefox (assoc-ref outputs "firefox"))
(xpi (assoc-ref outputs "xpi"))
(chromium (assoc-ref outputs "chromium")))
(install-file "dist/build/uBlock0.firefox.xpi"
(string-append xpi "/lib/mozilla/extensions"))
(copy-recursively "dist/build/uBlock0.firefox" firefox)
(copy-recursively "dist/build/uBlock0.chromium" chromium)
#t))))))
(native-inputs
`(("python" ,python-wrapper)
("uassets" ,uassets)
("zip" ,zip)))
(synopsis "Block unwanted content from web sites")
(description
"uBlock Origin is a @dfn{wide spectrum blocker} for IceCat and
ungoogled-chromium.")
(license license:gpl3+)))
(define-public ublock-origin/chromium
(make-chromium-extension ublock-origin "chromium"))

View File

@ -370,7 +370,7 @@ any other grammar rules.")
(define-public sparse
(package
(name "sparse")
(version "0.6.2")
(version "0.6.3")
(source (origin
(method url-fetch)
(uri
@ -378,7 +378,7 @@ any other grammar rules.")
"sparse-" version ".tar.xz"))
(sha256
(base32
"1z11chawwcmf5xxx5v52cj7wrr3warz6q5wlcjvxpif1jbga172i"))))
"16d8c4dhipjzjf8z4z7pix1pdpqydz0v4r7i345f5s09hjnxpxnl"))))
(build-system gnu-build-system)
(inputs `(("perl" ,perl)))
(arguments

View File

@ -953,7 +953,7 @@ CD data, and more. It's mostly compatible with @code{cdrtools}.")
(source (origin
(method url-fetch)
(uri (string-append
"https://downloads.sourceforge.net/cdemu/libmirage-"
"mirror://sourceforge/cdemu/libmirage/libmirage-"
version ".tar.bz2"))
(sha256
(base32
@ -982,7 +982,7 @@ the data stored in various image formats.")
(source (origin
(method url-fetch)
(uri (string-append
"https://downloads.sourceforge.net/cdemu/cdemu-daemon/"
"mirror://sourceforge/cdemu/cdemu-daemon/"
"cdemu-daemon-" version ".tar.bz2"))
(sha256
(base32
@ -1011,7 +1011,7 @@ drive and disc (including CD-ROMs and DVD-ROMs).")
(source (origin
(method url-fetch)
(uri (string-append
"https://downloads.sourceforge.net/cdemu/cdemu-client-"
"mirror://sourceforge/cdemu/cdemu-client/cdemu-client-"
version ".tar.bz2"))
(sha256
(base32

View File

@ -2693,7 +2693,7 @@ provides a simple way to achieve this.")
(define-public umockdev
(package
(name "umockdev")
(version "0.14.3")
(version "0.14.4")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/martinpitt/umockdev/"
@ -2701,7 +2701,7 @@ provides a simple way to achieve this.")
"umockdev-" version ".tar.xz"))
(sha256
(base32
"15smnxwplk48nas2c8ji6a5fqcsh770f1yl5nc2j5iprjspbm4mg"))))
"0xmi24ckpps32k7hc139psgbsnsf4g106sv4l9m445m46amkxggd"))))
(build-system gnu-build-system)
(arguments
`(#:phases

View File

@ -301,7 +301,7 @@
"/svntogit-packages/" revision "/trunk/" name))
(sha256 (base32 hash))))
(define %chromium-version "86.0.4240.183")
(define %chromium-version "86.0.4240.193")
(define %ungoogled-revision "b68e17f32e9eff56615a07b44e457835bb9460c6")
(define %debian-revision "debian/84.0.4147.105-1")
(define %arch-revision "2cbe439471932d30ff2c8ded6b3dfd51b312bbc9")
@ -455,7 +455,7 @@
%chromium-version ".tar.xz"))
(sha256
(base32
"1g39i82js7fm4fqb8i66d6xs0kzqjxzi4vzvvwz5y9rkbikcc4ma"))
"0d55xkw3fygqpa3a5bvz7vqmzb0d9w1kis72h54cnwsqgw4xag90"))
(modules '((guix build utils)))
(snippet (force ungoogled-chromium-snippet))))
(build-system gnu-build-system)

View File

@ -101,7 +101,7 @@
(version "3.16.5")
(source (origin
(method url-fetch)
(uri (string-append "https://www.cmake.org/files/v"
(uri (string-append "https://cmake.org/files/v"
(version-major+minor version)
"/cmake-" version ".tar.gz"))
(sha256

View File

@ -1672,7 +1672,7 @@ archive can be reverted.")
(source
(origin
(method url-fetch)
(uri (string-append "http://savannah.nongnu.org/download/atool/atool-"
(uri (string-append "mirror://savannah/atool/atool-"
version ".tar.gz"))
(sha256
(base32

View File

@ -237,7 +237,7 @@ standard Go idioms.")
(define-public ephemeralpg
(package
(name "ephemeralpg")
(version "3.0")
(version "3.1")
(source
(origin
(method url-fetch)
@ -245,10 +245,10 @@ standard Go idioms.")
"https://eradman.com/ephemeralpg/code/ephemeralpg-"
version ".tar.gz"))
(sha256
(base32 "1j0g7g114ma7y7sadbng5p1ss1zsm9zpicm77qspym6565733vvh"))))
(base32 "1ap22ki8yz6agd0qybcjgs4b9izw1rwwcgpxn3jah2ccfyax34s6"))))
(build-system gnu-build-system)
(arguments
'(#:make-flags (list "CC=gcc"
`(#:make-flags (list (string-append "CC=" ,(cc-for-target))
(string-append "PREFIX=" %output))
#:phases
(modify-phases %standard-phases
@ -1136,16 +1136,16 @@ as a drop-in replacement of MySQL.")
(define-public mariadb-connector-c
(package
(name "mariadb-connector-c")
(version "3.1.10")
(source (origin
(method url-fetch)
(uri (string-append
"https://downloads.mariadb.org/f/connector-c-"
version "/mariadb-connector-c-"
version "-src.tar.gz"))
(sha256
(base32
"13v5z4w1cl890lnr2fbwbziw638lqw2aga45vdq1z0cyrc9mcgmg"))))
(version "3.1.11")
(source
(origin
(method url-fetch)
(uri (string-append
"https://downloads.mariadb.org/f/connector-c-" version
"/mariadb-connector-c-" version "-src.tar.gz"
"/from/https%3A//mirrors.ukfast.co.uk/sites/mariadb/?serve"))
(sha256
(base32 "03svzahdf7czjlm695c11r4bfd04qdqgx8r1vkpr1zlkjhwnqvry"))))
(inputs
`(("openssl" ,openssl)))
(build-system cmake-build-system)
@ -1370,6 +1370,7 @@ including field and record folding.")))
`(#:make-flags (list "CC=gcc" "V=1"
;; Ceph requires that RTTI is enabled.
"USE_RTTI=1"
"date=1970-01-01" ; build reproducibly
(string-append "INSTALL_PATH="
(assoc-ref %outputs "out"))
@ -2420,17 +2421,19 @@ on another machine, accessed via TCP/IP.")
(define-public python-peewee
(package
(name "python-peewee")
(version "3.9.6")
(source
(origin
(method url-fetch)
(uri (pypi-uri "peewee" version))
(sha256
(base32
"1j4sh946k0736m7pd54z0y6i2hjhgg3kdllx1pwq8xkzzcgrx1xw"))))
(version "3.13.3")
(source
(origin
(method url-fetch)
(uri (pypi-uri "peewee" version))
(sha256
(base32
"0sc376v6rxga4b7ic9kxw2pmf28rmcx016320pa2nlb5d1rsjs8j"))))
(build-system python-build-system)
(arguments
`(#:tests? #f)) ; Fails to import test data
(inputs
`(("sqlite" ,sqlite)))
(native-inputs
`(("python-cython" ,python-cython)))
(home-page "https://github.com/coleifer/peewee/")
@ -3869,7 +3872,7 @@ The drivers officially supported by @code{libdbi} are:
(define-public soci
(package
(name "soci")
(version "4.0.0")
(version "4.0.1")
(source (origin
(method git-fetch)
(uri (git-reference
@ -3878,23 +3881,21 @@ The drivers officially supported by @code{libdbi} are:
(file-name (git-file-name name version))
(sha256
(base32
"06faswdxd2frqr9xnx6bxc7zwarlzsbdi3bqpz7kwdxsjvq41rnb"))))
"14x2gjblkgpflv75wl144cyjp1sis5rbxnr9r2gj3yw16v2av0bp"))))
(build-system cmake-build-system)
(inputs
`(("postgresql" ,postgresql)
`(("firebird" ,firebird)
("postgresql" ,postgresql)
("sqlite" ,sqlite)
("odbc" ,unixodbc)
("boost" ,boost)
("mariadb:dev" ,mariadb "dev")))
(arguments
`(#:tests? #f ; Tests may require running database management systems.
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'fix-lib-path
(lambda _
(substitute* "CMakeLists.txt"
(("set\\(SOCI_LIBDIR \"lib64\"\\)") ""))
#t)))))
`(#:configure-flags
;; C++11 (-DSOCI_CXX11) is OFF by default. hyperledger-iroha needs it.
(list "-DCMAKE_CXX_STANDARD=17"
"-DSOCI_LIBDIR=lib")
#:tests? #f)) ; may require running database management systems
(synopsis "C++ Database Access Library")
(description
"SOCI is an abstraction layer for several database backends, including

View File

@ -1,7 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2012, 2013, 2014, 2016 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2013, 2015 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2016, 2017, 2018 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016, 2017, 2018, 2020 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2017, 2018 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2018 Mark H Weaver <mhw@netris.org>
;;;
@ -41,7 +41,7 @@
"See LICENSE in the distribution."))
(source (origin
(method url-fetch)
(uri (string-append "http://download.oracle.com/berkeley-db/db-"
(uri (string-append "https://download.oracle.com/berkeley-db/db-"
version ".tar.gz"))
(sha256
(base32
@ -104,7 +104,7 @@ SQL, Key/Value, XML/XQuery or Java Object storage for their data model.")
(version "5.3.28")
(source (origin
(method url-fetch)
(uri (string-append "http://download.oracle.com/berkeley-db/db-"
(uri (string-append "https://download.oracle.com/berkeley-db/db-"
version ".tar.gz"))
(sha256
(base32
@ -116,7 +116,7 @@ SQL, Key/Value, XML/XQuery or Java Object storage for their data model.")
(version "6.2.32")
(source (origin
(method url-fetch)
(uri (string-append "http://download.oracle.com/berkeley-db/db-"
(uri (string-append "https://download.oracle.com/berkeley-db/db-"
version ".tar.gz"))
(sha256
(base32

View File

@ -581,7 +581,9 @@ a card with a smaller capacity than stated.")
(modify-phases %standard-phases
(delete 'configure)) ; no configure script
#:make-flags (list (string-append "PREFIX=" %output)
(string-append "CC=" ,(cc-for-target)))))
(string-append "CC=" ,(cc-for-target))
;; Set to <next release>dev by default.
(string-append "VER=" ,version))))
(home-page "https://github.com/markfasheh/duperemove")
(synopsis "Tools for de-duplicating file system data")
(description "Duperemove is a simple tool for finding duplicated extents

View File

@ -41,7 +41,7 @@
(version "5.0.1")
(source (origin
(method url-fetch)
(uri (string-append "https://www.docbook.org/xml/" version
(uri (string-append "https://docbook.org/xml/" version
"/docbook-" version ".zip"))
(sha256
(base32
@ -83,7 +83,7 @@ by no means limited to these applications.) This package provides XML DTDs.")
(version "4.5")
(source (origin
(method url-fetch)
(uri (string-append "https://www.docbook.org/xml/" version
(uri (string-append "https://docbook.org/xml/" version
"/docbook-xml-" version ".zip"))
(sha256
(base32
@ -113,7 +113,7 @@ by no means limited to these applications.) This package provides XML DTDs.")
(version "4.4")
(source (origin
(method url-fetch)
(uri (string-append "https://www.docbook.org/xml/" version
(uri (string-append "https://docbook.org/xml/" version
"/docbook-xml-" version ".zip"))
(sha256
(base32
@ -124,7 +124,7 @@ by no means limited to these applications.) This package provides XML DTDs.")
(version "4.3")
(source (origin
(method url-fetch)
(uri (string-append "https://www.docbook.org/xml/" version
(uri (string-append "https://docbook.org/xml/" version
"/docbook-xml-" version ".zip"))
(sha256
(base32
@ -135,7 +135,7 @@ by no means limited to these applications.) This package provides XML DTDs.")
(version "4.2")
(source (origin
(method url-fetch)
(uri (string-append "https://www.docbook.org/xml/" version
(uri (string-append "https://docbook.org/xml/" version
"/docbook-xml-" version ".zip"))
(sha256
(base32
@ -146,7 +146,7 @@ by no means limited to these applications.) This package provides XML DTDs.")
(version "4.1.2")
(source (origin
(method url-fetch)
(uri (string-append "https://www.docbook.org/xml/" version
(uri (string-append "https://docbook.org/xml/" version
"/docbkx412.zip"))
(sha256
(base32

View File

@ -275,7 +275,7 @@ easy.")
(define-public snap
(package
(name "snap")
(version "6.2.4")
(version "6.3.1")
(source
(origin
(method git-fetch)
@ -284,7 +284,7 @@ easy.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "05ahhwhswnlyg5wiywdj0df4bymcz1l5l4324gjcvpm2lgwxxnl5"))))
(base32 "1109xrvq1vszs74jhzdzhc1isij1hx6brb0w45m0i6sl0xxdrdhb"))))
(build-system trivial-build-system)
(arguments
`(#:modules ((guix build utils))

View File

@ -1615,14 +1615,14 @@ incrementally confined in Isearch manner.")
(define emacs-emms-print-metadata
(package
(name "emacs-emms-print-metadata")
(version "6.1")
(version "6.2")
(source
(origin
(method url-fetch)
(uri (string-append "https://elpa.gnu.org/packages/"
"emms-" version ".tar"))
(sha256
(base32 "1r1n8i59c6dsyqbphja7fnb1gg8rgbdqd4gdnda6ldq6jfippwlr"))))
(base32 "0d95sjrh9vpl41vz26y8clgji987z15lj4ky2kr9yrl0zpa8yv35"))))
(build-system gnu-build-system)
(arguments
`(#:make-flags '("emms-print-metadata")
@ -8782,25 +8782,24 @@ that uses the standard completion function completing-read.")
(define-public emacs-yaml-mode
(package
(name "emacs-yaml-mode")
(version "0.0.14")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/yoshiki/yaml-mode")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"18g064ardqi1f3xz7j6rs1x9fvv9sn0iq9vgid8c6qvxq7gwj00r"))))
(version "0.0.15")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/yoshiki/yaml-mode")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "0gsa153yp8lmwrvcc3nzpw5lj037y7q2nm23k5k404r5as4k355l"))))
(build-system emacs-build-system)
(home-page "https://github.com/yoshiki/yaml-mode")
(synopsis "Major mode for editing YAML files")
(description
"Yaml-mode is an Emacs major mode for editing files in the YAML data
serialization format. It was initially developed by Yoshiki Kurihara and many
features were added by Marshall Vandegrift. As YAML and Python share the fact
that indentation determines structure, this mode provides indentation and
indentation command behavior very similar to that of python-mode.")
"Yaml mode is an Emacs major mode for editing files in the YAML data
serialization format. As YAML and Python share the fact that indentation
determines structure, this mode provides indentation and indentation command
behavior very similar to that of Python mode.")
(license license:gpl3+)))
(define-public emacs-gitlab-ci-mode
@ -18589,6 +18588,16 @@ files. It focuses on highlighting the document to improve readability.")
(lambda _
(substitute* "Makefile"
(("\\$\\{CASK\\} exec ") ""))
#t))
;; Two tests are failing with Emacs 27, as reported here:
;; <https://github.com/racer-rust/emacs-racer/issues/136>. Disable
;; them.
(add-before 'check 'fix-failing-tests
(lambda _
(substitute* "test/racer-test.el"
(("`Write`") "Write")
(("^\\\\\\[`str\\]:.*") "")
((" \\[`str`\\]") " str"))
#t)))))
(native-inputs
`(("emacs-ert-runner" ,emacs-ert-runner)
@ -20517,20 +20526,20 @@ processes for Emacs")
"0m083g3pg0n4ymi1w0jx34awr7cqbm4r561adij9kklblxsz7sc2"))))
(build-system emacs-build-system)
(propagated-inputs
`(("emacs-dash" ,emacs-dash)
("emacs-s" ,emacs-s)
("emacs-f" ,emacs-f)
("emacs-ace-window" ,emacs-ace-window)
("emacs-pfuture" ,emacs-pfuture)
("emacs-hydra" ,emacs-hydra)
("emacs-ht" ,emacs-ht)))
`(("emacs-ace-window" ,emacs-ace-window)
("emacs-dash" ,emacs-dash)
("emacs-f" ,emacs-f)
("emacs-ht" ,emacs-ht)
("emacs-hydra" ,emacs-hydra)
("emacs-pfuture" ,emacs-pfuture)
("emacs-s" ,emacs-s)))
(native-inputs
`(("emacs-buttercup" ,emacs-buttercup)
("emacs-el-mock" ,emacs-el-mock)))
(inputs
`(("python" ,python)))
(arguments
`(#:tests? #t ;TODO: Investigate treemacs--parse-collapsed-dirs test failure.
`(#:tests? #t
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'fix-makefile
@ -20545,12 +20554,14 @@ processes for Emacs")
(lambda _
(chdir "src/elisp")))
(replace 'check
;; FIXME: Work around treemacs--parse-collapsed-dirs and
;; `treemacs-collect-child-nodes' test failures.
(lambda _
(with-directory-excursion "../.." ;treemacs root
(chmod "test/test-treemacs.el" #o644)
(emacs-substitute-sexps "test/test-treemacs.el"
("(describe \"treemacs--parse-collapsed-dirs\""
""))
("(describe \"treemacs--parse-collapsed-dirs\"" "")
("\"Finds only direct childre\"" ""))
(invoke "make" "test"))))
(add-before 'install 'patch-paths
(lambda* (#:key inputs outputs #:allow-other-keys)
@ -20582,7 +20593,12 @@ processes for Emacs")
#t)))))))
(home-page "https://github.com/Alexander-Miller/treemacs")
(synopsis "Emacs tree style file explorer")
(description "Powerful and flexible file tree project explorer.")
(description
"Treemacs is a file and project explorer similar to NeoTree or Vim's
NerdTree, but largely inspired by the Project Explorer in Eclipse. It shows
the file system outlines of your projects in a simple tree layout allowing
quick navigation and exploration, while also possessing basic file management
utilities.")
(license license:gpl3+)))
(define-public emacs-treemacs-extra
@ -21645,8 +21661,8 @@ and searching through @code{Ctags} files.")
(license license:expat))))
(define-public emacs-org-download
(let ((commit "10c9d7c8eed928c88a896310c882e3af4d8d0f61")
(revision "2"))
(let ((commit "42ac361ef5502017e6fc1bceb00333eba90402f4")
(revision "3"))
(package
(name "emacs-org-download")
(version (git-version "0.1.0" revision commit))
@ -21655,10 +21671,9 @@ and searching through @code{Ctags} files.")
(uri (git-reference
(url "https://github.com/abo-abo/org-download")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"0i8wlx1i7y1vn5lqwjifvymvszg28a07vwqcm4jslf1v2ajs1lsl"))
(file-name (git-file-name name version))))
(base32 "0cg4y7hy7xbq4vrbdicfzgvyaf3cjbx2zkqd4yl0y2garz71j99l"))))
(build-system emacs-build-system)
(propagated-inputs
`(("emacs-org" ,emacs-org)
@ -24342,7 +24357,7 @@ launching other commands/applications from within Emacs, similar to the
(define-public emacs-no-littering
(package
(name "emacs-no-littering")
(version "1.0.3")
(version "1.2.0")
(source
(origin
(method git-fetch)
@ -24351,7 +24366,7 @@ launching other commands/applications from within Emacs, similar to the
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "17is06l0w6glppabv2kaclrnqi3dqb6p6alpslpg7lrjd8vd45ir"))))
(base32 "1hma9var0nmrmjlh16s49hbfc1s4jvfd2prqxf14lxfd51404niw"))))
(build-system emacs-build-system)
(home-page "https://github.com/emacscollective/no-littering")
(synopsis "Help keep ~/.emacs.d/ clean")

View File

@ -3,7 +3,7 @@
;;; Copyright © 2016, 2017 Theodoros Foradis <theodoros@foradis.org>
;;; Copyright © 2016 David Craven <david@craven.ch>
;;; Copyright © 2017, 2020 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018, 2019 Clément Lassieur <clement@lassieur.org>
;;; Copyright © 2020 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2020 Björn Höfling <bjoern.hoefling@bjoernhoefling.de>
@ -36,6 +36,7 @@
#:use-module (guix build-system trivial)
#:use-module ((guix build utils) #:select (alist-replace))
#:use-module (gnu packages)
#:use-module (gnu packages admin)
#:use-module (gnu packages autotools)
#:use-module ((gnu packages base) #:prefix base:)
#:use-module (gnu packages bison)
@ -487,7 +488,7 @@ SEGGER J-Link and compatible devices.")
(define-public jimtcl
(package
(name "jimtcl")
(version "0.79")
(version "0.80")
(source (origin
(method git-fetch)
(uri (git-reference
@ -496,17 +497,26 @@ SEGGER J-Link and compatible devices.")
(file-name (git-file-name name version))
(sha256
(base32
"1k88hz0v3bi19xdvlp0i9nsx38imzwpjh632w7326zwbv2wldf0h"))))
"06rn60cx9sapc175vxvan87b8j5rkhh5gvvz7343xznzwlr0wcgk"))))
(build-system gnu-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
;; Doesn't use autoconf.
(replace 'configure
;; This package doesn't use autoconf.
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(invoke "./configure"
(string-append "--prefix=" out))))))))
(string-append "--prefix=" out)))))
(add-before 'check 'delete-failing-tests
(lambda _
;; XXX All but 1 TTY tests fail (Inappropriate ioctl for device).
(delete-file "tests/tty.test")
#t))
)))
(native-inputs
;; For tests.
`(("inetutils" ,inetutils))) ; for hostname
(home-page "http://jim.tcl.tk/index.html")
(synopsis "Small footprint Tcl implementation")
(description "Jim is a small footprint implementation of the Tcl programming

View File

@ -79,7 +79,7 @@ dictionaries.")
(define-public enchant
(package
(name "enchant")
(version "2.2.8")
(version "2.2.13")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/AbiWord/enchant/releases"
@ -87,7 +87,7 @@ dictionaries.")
version ".tar.gz"))
(sha256
(base32
"0m9m564qqwbssvvf7y3dlz1yxzqsjiqy1yd2zsmb3l0d7y2y5df7"))))
"084aqsrkzz2c1ls47p759d9bsi26d0m6wq9901k37483g46zkfga"))))
(build-system gnu-build-system)
(arguments
'(#:configure-flags '("--disable-static"

View File

@ -1537,8 +1537,12 @@ high-performance parallel differential evolution (DE) optimization algorithm.")
(version "28")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/ngspice/ng-spice-rework/"
version "/ngspice-" version ".tar.gz"))
(uri (list
(string-append "mirror://sourceforge/ngspice/ng-spice-rework/"
version "/ngspice-" version ".tar.gz")
(string-append "mirror://sourceforge/ngspice/ng-spice-rework/"
"old-releases/" version
"/ngspice-" version ".tar.gz")))
(sha256
(base32
"0rnz2rdgyav16w7wfn3sfrk2lwvvgz1fh0l9107zkcldijklz04l"))

View File

@ -617,7 +617,7 @@ other machines/servers. Electroncash does not download the Bitcoin Cash blockch
;; the system's dynamically linked library.
(package
(name "monero")
(version "0.17.1.1")
(version "0.17.1.3")
(source
(origin
(method git-fetch)
@ -637,7 +637,7 @@ other machines/servers. Electroncash does not download the Bitcoin Cash blockch
"external/unbound"))
#t))
(sha256
(base32 "18x27dm24k04vx0yz57zi02rk0wrmbn4wr8alqf48dq6z9wr0fhp"))))
(base32 "1ddkdfd8i5q509qziwcx1f6nm8axs4a1ppzv2y5lgsqpq375if6j"))))
(build-system cmake-build-system)
(native-inputs
`(("doxygen" ,doxygen)

View File

@ -160,7 +160,7 @@ scripts.")
(inputs
`(("zlib" ,zlib)))
(arguments
`(#:make-flags '("CC=gcc")
`(#:make-flags '(,(string-append "CC=" (cc-for-target)))
#:tests? #f ;no tests
#:phases
(modify-phases %standard-phases
@ -170,7 +170,8 @@ scripts.")
(let* ((out (assoc-ref outputs "out"))
(bin (string-append out "/bin")))
(install-file "sfnt2woff" bin)
(install-file "woff2sfnt" bin)))))))
(install-file "woff2sfnt" bin))
#t)))))
(synopsis "Convert between OpenType and WOFF fonts")
(description
"This package provides two tools:

View File

@ -1868,8 +1868,8 @@ role, and your gender.")
(source
(origin
(method url-fetch)
(uri (string-append "http://downloads.sourceforge.net/pipewalker/"
"pipewalker-" version ".tar.gz"))
(uri (string-append "mirror://sourceforge/pipewalker/pipewalker/"
version "/pipewalker-" version ".tar.gz"))
(sha256
(base32 "1x46wgk0s55562pd96cxagxkn6wpgglq779f9b64ff1k3xzp3myn"))))
(build-system gnu-build-system)
@ -5253,7 +5253,7 @@ Linux / Mac OS X servers, and an auto mapper with a VT100 map display.")
(define-public laby
(package
(name "laby")
(version "0.6.4")
(version "0.7.0")
(source
(origin (method git-fetch)
(uri (git-reference
@ -5262,7 +5262,7 @@ Linux / Mac OS X servers, and an auto mapper with a VT100 map display.")
(file-name (git-file-name name version))
(sha256
(base32
"12fq9hhrxpzgfinmj9ra9ckss9yficwdlrmgjvvsq7agvh3sgyl1"))
"1y6nfxcjhqg9bb81hs0wijg7kcwk5kff81rgd8bsv5ps7ia9nj6b"))
(patches (search-patches "laby-make-install.patch"))))
(build-system gnu-build-system)
(inputs

View File

@ -6007,7 +6007,7 @@ discovery protocols.")
(define-public totem
(package
(name "totem")
(version "3.34.1")
(version "3.38.0")
(source
(origin
(method url-fetch)
@ -6016,14 +6016,14 @@ discovery protocols.")
"totem-" version ".tar.xz"))
(sha256
(base32
"028sc6xbyi7rs884862d8f3di6zhcm0lhvlpc3r69ifzjsq9my3b"))))
"0bs33ijvxbr2prb9yj4dxglsszslsn9k258n311sld84masz4ad8"))))
(build-system meson-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)
("desktop-file-utils" ,desktop-file-utils)
("gettext" ,gettext-minimal)
("gobject-introspection" ,gobject-introspection)
("glib:bin" ,glib "bin") ;for 'glib-mkenums'
("intltool" ,intltool)
("itstool" ,itstool)
("xmllint" ,libxml2)
("xorg-server" ,xorg-server-for-tests)))
@ -9981,14 +9981,14 @@ only know by its Unicode name or code point.")
(define-public bluefish
(package
(name "bluefish")
(version "2.2.11")
(version "2.2.12")
(source
(origin
(method url-fetch)
(uri (string-append "http://www.bennewitz.com/bluefish/stable/source/"
(uri (string-append "https://www.bennewitz.com/bluefish/stable/source/"
"bluefish-" version ".tar.gz"))
(sha256
(base32 "0a7kf78q4cj2ap4igjks9kbmmr74brsrl4y2f9wbxpl0b0v2ck2x"))))
(base32 "09hgxq139kbkjda5y073lqhq1z1x7cx0j80jh77afrqa3y9c53wl"))))
(build-system gnu-build-system)
(native-inputs
`(("desktop-file-utils" ,desktop-file-utils)
@ -10003,7 +10003,7 @@ only know by its Unicode name or code point.")
(home-page "http://bluefish.openoffice.nl")
(synopsis "Web development studio")
(description
"Bluefish is an editor targeted towards programmers and web developers,
"Bluefish is an editor aimed at programmers and web developers,
with many options to write web sites, scripts and other code.
Bluefish supports many programming and markup languages.")
(license license:gpl3+)))
@ -11479,6 +11479,62 @@ symbol tables, document templates, project management, spell-checking, menus
and toolbars.")
(license license:gpl3+)))
(define-public setzer
(package
(name "setzer")
(version "0.3.5")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/cvfosammmm/Setzer")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1qdffi6hws1a104bqzpaxbbjimjcwwmhgb3baiwh0w0b8nhbmhjl"))))
(build-system meson-build-system)
(arguments
`(#:glib-or-gtk? #t
#:phases
(modify-phases %standard-phases
(add-after 'glib-or-gtk-wrap 'python-and-gi-wrap
(lambda* (#:key outputs #:allow-other-keys)
(let ((prog (string-append (assoc-ref outputs "out")
"/bin/setzer"))
(pylib (string-append (assoc-ref outputs "out")
"/lib/python"
,(version-major+minor
(package-version python))
"/site-packages")))
(wrap-program prog
`("PYTHONPATH" = (,(getenv "PYTHONPATH") ,pylib))
`("GI_TYPELIB_PATH" = (,(getenv "GI_TYPELIB_PATH"))))
#t))))))
(native-inputs
`(("desktop-file-utils" ,desktop-file-utils)
("gettext" ,gettext-minimal)
("glib:bin" ,glib "bin")
("gobject-introspection" ,gobject-introspection)
("gtk+:bin" ,gtk+ "bin")))
(inputs
`(("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
("gspell" ,gspell)
("gtk+" ,gtk+)
("gtksourceview" ,gtksourceview)
("pango" ,pango)
("poppler" ,poppler)
("python-pycairo" ,python-pycairo)
("python-pygobject" ,python-pygobject)
("python-pyxdg" ,python-pyxdg)
("webkitgtk" ,webkitgtk)
("xdg-utils" ,xdg-utils)))
(home-page "https://www.cvfosammmm.org/setzer/")
(synopsis "LaTeX editor written in Python with GTK+")
(description
"Setzer is a simple yet full-featured LaTeX editor written in Python with
GTK+. It integrates well with the GNOME desktop environment.")
(license license:gpl3+)))
(define-public libratbag
(package
(name "libratbag")

View File

@ -6,6 +6,7 @@
;;; Copyright © 2017, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2019 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2019 Guillaume Le Vaillant <glv@posteo.net>
;;; Copyright © 2020 Prafulla Giri <pratheblackdiamond@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -24,6 +25,7 @@
(define-module (gnu packages gnucash)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix utils)
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix build-system gnu)
@ -48,6 +50,7 @@
#:use-module (gnu packages multiprecision)
#:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages python)
#:use-module (gnu packages tls)
#:use-module (gnu packages web)
#:use-module (gnu packages webkit)
@ -82,6 +85,7 @@
("libxslt" ,libxslt)
("webkitgtk" ,webkitgtk)
("aqbanking" ,aqbanking)
("python" ,python)
("perl-date-manip" ,perl-date-manip)
("perl-finance-quote" ,perl-finance-quote)
("tzdata" ,tzdata-for-tests)))
@ -95,9 +99,10 @@
(propagated-inputs
;; dconf is required at runtime according to README.dependencies.
`(("dconf" ,dconf)))
(outputs '("out" "doc" "debug"))
(outputs '("out" "doc" "debug" "python"))
(arguments
`(#:test-target "check"
#:configure-flags '("-DWITH_PYTHON=ON")
#:make-flags '("GUILE_AUTO_COMPILE=0")
#:modules ((guix build cmake-build-system)
((guix build glib-or-gtk-build-system) #:prefix glib-or-gtk:)
@ -149,6 +154,20 @@
(symlink (string-append docs "/share/gnome")
(string-append doc-output "/share/gnome"))
#t)))
(add-after 'install 'split-python-bindings
(lambda* (#:key inputs outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(python-output (assoc-ref outputs "python"))
(python-bindings (string-append
"lib/python"
,(version-major+minor
(package-version python)))))
(mkdir-p (string-append python-output "/" python-bindings))
(copy-recursively
(string-append out "/" python-bindings)
(string-append python-output "/" python-bindings))
(delete-file-recursively
(string-append out "/" python-bindings)))))
(add-after 'install-docs 'wrap-programs
(lambda* (#:key inputs outputs #:allow-other-keys)
(for-each (lambda (prog)

View File

@ -106,6 +106,7 @@
(match (string-take target
(string-index target #\-))
("armhf" "arm-unknown-linux-gnueabi")
("mips64el" "mips-unknown-linux-gnu")
(x
(string-append x "-unknown-linux-gnu")))))
(symlink

View File

@ -1476,6 +1476,27 @@ standards of the IceCat project.")
Thunderbird. It supports email, news feeds, chat, calendar and contacts.")
(license license:mpl2.0)))
(define-public icedove/wayland
(package/inherit icedove
(name "icedove-wayland")
(arguments
(substitute-keyword-arguments (package-arguments icedove)
((#:phases phases)
`(modify-phases ,phases
(replace 'wrap-program
(lambda* (#:key inputs outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(lib (string-append out "/lib"))
(gtk (assoc-ref inputs "gtk+"))
(gtk-share (string-append gtk "/share"))
(pulseaudio (assoc-ref inputs "pulseaudio"))
(pulseaudio-lib (string-append pulseaudio "/lib")))
(wrap-program (car (find-files lib "^icedove$"))
`("MOZ_ENABLE_WAYLAND" = ("1"))
`("XDG_DATA_DIRS" prefix (,gtk-share))
`("LD_LIBRARY_PATH" prefix (,pulseaudio-lib)))
#t)))))))))
(define-public firefox-decrypt
(package
(name "firefox-decrypt")

View File

@ -1803,8 +1803,8 @@ capabilities.")
(license license:gpl3+)))
(define-public g-golf
(let ((commit "84e894eb7945c3bcdf7f8d5135c1be3efa524c92")
(revision "822"))
(let ((commit "ef830107b9765bd6a2da848d0cbe45e11374c0b5")
(revision "839"))
(package
(name "g-golf")
(version (git-version "0.1.0" revision commit))
@ -1816,7 +1816,7 @@ capabilities.")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "1pkcij65zy2lkip5yrfzj85nq17pp9mrf0d4sk6hpjqr4kd0bxd5"))))
(base32 "0r472hvmf447kqvkahp1wy4irb5gy8y793hm8r9rc511smdx66cw"))))
(build-system gnu-build-system)
(native-inputs
`(("autoconf" ,autoconf)
@ -3084,7 +3084,7 @@ in C using Gtk+-3 and WebKitGtk.")
(license license:gpl3+)))
(define-public emacsy-minimal
(let ((commit "v0.4.1-31-g415d96f"))
(let ((commit "v0.4.1-37-g5f91ee6"))
(package
(inherit emacsy)
(name "emacsy-minimal")
@ -3097,7 +3097,7 @@ in C using Gtk+-3 and WebKitGtk.")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "1cs1i1hxwrv0a512j54yrvfh743nci1chx6qjgp4jyzq98ncvxgg"))))
(base32 "03ym14g9qhjqmryr5z065kynqm8yhmvnbs2djl6vp3i9cmqln8cl"))))
(build-system gnu-build-system)
(inputs
`(("guile" ,guile-2.2)
@ -3150,7 +3150,7 @@ perform geometrical transforms on JPEG images.")
(define-public nomad
(package
(name "nomad")
(version "0.2.0-alpha-100-g6a565d3")
(version "0.2.0-alpha-199-g3e7a475")
(source (origin
(method git-fetch)
(uri (git-reference
@ -3159,7 +3159,7 @@ perform geometrical transforms on JPEG images.")
(file-name (git-file-name name version))
(sha256
(base32
"0anmprm63a88kii251rl296v1g4iq62r6n4nssx5jbc0hzkknanz"))))
"0p0ha6prp7pyadp61clbhc6b55023vxzfwy14j2qygb2mkq7fhic"))))
(build-system gnu-build-system)
(native-inputs
`(("autoconf" ,autoconf)
@ -3190,6 +3190,7 @@ perform geometrical transforms on JPEG images.")
("gtk+:bin" ,gtk+ "bin")
("webkitgtk" ,webkitgtk)
("gtksourceview" ,gtksourceview)
("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
("vte" ,vte)
;; Gstreamer
("gstreamer" ,gstreamer)

View File

@ -339,14 +339,14 @@ to @code{cabal repl}).")
(define-public git-annex
(package
(name "git-annex")
(version "8.20201007")
(version "8.20201103")
(source
(origin
(method url-fetch)
(uri (string-append "https://hackage.haskell.org/package/"
"git-annex/git-annex-" version ".tar.gz"))
(sha256
(base32 "0v11yc4kkxnzvwqry277dpjwlavinrjiagfw0ayhrfwd703j1y8a"))))
(base32 "1z9ikpsz3by48yfw87qav5dy7j4k9ky4a7nqnasl15kdm3lav9pl"))))
(build-system haskell-build-system)
(arguments
`(#:configure-flags

View File

@ -1009,6 +1009,17 @@ It has been modified to remove all non-free binary blobs.")
'("riscv64-linux")
#:extra-version "riscv64-generic"))
(define-public linux-libre-mips64el-fuloong2e
(make-linux-libre* linux-libre-version
linux-libre-source
'("mips64el-linux")
#:defconfig "fuloong2e_defconfig"
#:extra-version "mips64el-fuloong2e"
#:extra-options
(append
`(("CONFIG_OVERLAY_FS" . m))
%default-extra-linux-options)))
(define-public linux-libre-with-bpf
(let ((base-linux-libre
(make-linux-libre*

View File

@ -1601,7 +1601,7 @@ writing code that contains string literals that contain code themselves.")
(define-public sbcl-slime-swank
(package
(name "sbcl-slime-swank")
(version "2.24")
(version "2.26")
(source
(origin
(file-name (git-file-name "slime-swank" version))
@ -1611,7 +1611,7 @@ writing code that contains string literals that contain code themselves.")
(commit (string-append "v" version))))
(sha256
(base32
"0js24x42m7b5iymb4rxz501dff19vav5pywnzv50b673rbkaaqvh"))))
"0mxb1wnw19v0s72w2wkz5afdlzvpy5nn7pr4vav403qybac0sw5c"))))
(build-system asdf-build-system/sbcl)
(arguments
'(#:asd-systems '("swank")))
@ -5563,8 +5563,8 @@ number of other open source projects.
(sbcl-package->ecl-package sbcl-s-sysdeps))
(define-public sbcl-cl-prevalence
(let ((commit "1e5f030d94237b33d20947a2f6c194abedb10727")
(revision "3"))
(let ((commit "5a76be036092ed6c18cb695a9e03bce87e21b840")
(revision "4"))
(package
(name "sbcl-cl-prevalence")
(build-system asdf-build-system/sbcl)
@ -5579,7 +5579,7 @@ number of other open source projects.
(file-name (git-file-name name version))
(sha256
(base32
"13yb8lv2aap5wvqa6hw7ms31xnax58f4m2nxifkssrzkb2w2qf29"))))
"050h6hwv8f16b5v6fzba8zmih92hgaaq27i2x9wv1iib41gbia3r"))))
(inputs
`(("s-sysdeps" ,sbcl-s-sysdeps)
("s-xml" ,sbcl-s-xml)))
@ -7045,8 +7045,8 @@ by Chris Riesbeck.")
(sbcl-package->ecl-package sbcl-lisp-unit2))
(define-public sbcl-cl-csv
(let ((commit "3eba29c8364b033fbe0d189c2500559278b6a362")
(revision "1"))
(let ((commit "68ecb5d816545677513d7f6308d9e5e8d2265651")
(revision "2"))
(package
(name "sbcl-cl-csv")
(version (git-version "1.0.6" revision commit))
@ -7059,7 +7059,7 @@ by Chris Riesbeck.")
(file-name (git-file-name name version))
(sha256
(base32
"07h4ni89jzx93clx453hlnnb5g53hhlcmz5hghqv6ysam48lc8g6"))))
"0gcmlbwx5m3kwgk12qi80w08ak8fgdnvyia429fz6gnxmhg0k54x"))))
(build-system asdf-build-system/sbcl)
(arguments
;; See: https://github.com/AccelerationNet/cl-csv/pull/34
@ -10426,6 +10426,70 @@ and decoder for Common Lisp.")
(define-public ecl-qbase64
(sbcl-package->ecl-package sbcl-qbase64))
(define-public sbcl-lw-compat
;; No release since 2013.
(let ((commit "aabfe28c6c1a4949f9d7b3cb30319367c9fd1c0d"))
(package
(name "sbcl-lw-compat")
(version (git-version "1.0.0" "1" commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/pcostanza/lw-compat/")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "131rq5k2mlv9bfhmafiv6nfsivl4cxx13d9wr06v5jrqnckh4aav"))))
(build-system asdf-build-system/sbcl)
(home-page "https://github.com/pcostanza/lw-compat/")
(synopsis "LispWorks utilities ported to other Common Lisp implementations")
(description "This package contains a few utility functions from the
LispWorks library that are used in software such as ContextL.")
(license license:expat))))
(define-public cl-lw-compat
(sbcl-package->cl-source-package sbcl-lw-compat))
(define-public ecl-lw-compat
(sbcl-package->ecl-package sbcl-lw-compat))
(define-public sbcl-contextl
;; No release since 2013.
(let ((commit "5d18a71a85824f6c25a9f35a21052f967b8b6bb9"))
(package
(name "sbcl-contextl")
(version (git-version "1.0.0" "1" commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/pcostanza/contextl/")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "0gk1izx6l6g48nypmnm9r6mzjx0jixqjj2kc6klf8a88rr5xd226"))))
(build-system asdf-build-system/sbcl)
(inputs
`(("closer-mop" ,sbcl-closer-mop)
("lw-compat" ,sbcl-lw-compat)))
(home-page "https://github.com/pcostanza/contextl")
(synopsis "Context-oriented programming for Common Lisp")
(description "ContextL is a CLOS extension for Context-Oriented
Programming (COP).
Find overview of ContextL's features in an overview paper:
@url{http://www.p-cos.net/documents/contextl-soa.pdf}. See also this general
overview article about COP which also contains some ContextL examples:
@url{http://www.jot.fm/issues/issue_2008_03/article4/}.")
(license license:expat))))
(define-public cl-contextl
(sbcl-package->cl-source-package sbcl-contextl))
(define-public ecl-contextl
(sbcl-package->ecl-package sbcl-contextl))
(define-public sbcl-hu.dwim.common-lisp
(package
(name "sbcl-hu.dwim.common-lisp")
@ -11032,3 +11096,271 @@ object-oriented framework for prototyping genetic algorithms in Common Lisp.")
(define-public ecl-geco
(sbcl-package->ecl-package sbcl-geco))
(define-public sbcl-html-entities
(let ((commit "4af018048e891f41d77e7d680ed3aeb639e1eedb"))
(package
(name "sbcl-html-entities")
(version (git-version "0.02" "1" commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/BnMcGn/html-entities/")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "1b2yl6lf6vis17y4n5s505p7ica96bdafcl6vydy1hg50fy33nfr"))))
(build-system asdf-build-system/sbcl)
(inputs
`(("ppcre" ,sbcl-cl-ppcre)))
(native-inputs
`(("fiveam" ,sbcl-fiveam)))
(home-page "https://github.com/BnMcGn/html-entities/")
(synopsis "Encode and decode entities in HTML with Common Lisp")
(description "Html-entities is a Common Lisp library that lets you
encode and decode entities in HTML.")
(license license:expat))))
(define-public cl-html-entities
(sbcl-package->cl-source-package sbcl-html-entities))
(define-public ecl-html-entities
(sbcl-package->ecl-package sbcl-html-entities))
(define-public sbcl-quicksearch
(let ((commit "fb02ecf7c876ec580ab18c7d2c8c7814c06af599"))
(package
(name "sbcl-quicksearch")
(version (git-version "0.01.04" "1" commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/tkych/quicksearch/")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "16k19zjkhh7r64vjq371k5jwjs7cdfjz83flh561n4h4v1z89fps"))))
(build-system asdf-build-system/sbcl)
(inputs
`(("bordeaux-threads" ,sbcl-bordeaux-threads)
("iterate" ,sbcl-iterate)
("alexandria" ,sbcl-alexandria)
("anaphora" ,sbcl-anaphora)
("ppcre" ,sbcl-cl-ppcre)
("drakma" ,sbcl-drakma)
("html-entities" ,sbcl-html-entities)
("yason" ,sbcl-yason)
("flexi-streams" ,sbcl-flexi-streams)
("do-urlencode" ,sbcl-do-urlencode)))
(home-page "https://github.com/tkych/quicksearch/")
(synopsis "Search Engine Interface for Common Lisp packages")
(description "Quicksearch is a search-engine-interface for Common Lisp.
The goal of Quicksearch is to find the Common Lisp library quickly. For
example, if you will find the library about json, just type @code{(qs:?
'json)} at REPL.
The function @code{quicksearch} searches for Common Lisp projects in
Quicklisp, Cliki, GitHub and BitBucket, then outputs results in REPL. The
function @code{?} is abbreviation wrapper for @code{quicksearch}.")
(license license:expat))))
(define-public cl-quicksearch
(sbcl-package->cl-source-package sbcl-quicksearch))
(define-public ecl-quicksearch
(sbcl-package->ecl-package sbcl-quicksearch))
(define-public sbcl-agutil
(let ((commit "df188d754d472da9faa1601a48f1f37bb7b34d68"))
(package
(name "sbcl-agutil")
(version (git-version "0.0.1" "1" commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/alex-gutev/agutil/")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "1xpnyzksk2xld64b6lw6rw0gn5zxlb77jwna59sd4yl7kxhxlfpf"))))
(build-system asdf-build-system/sbcl)
(inputs
`(("alexandria" ,sbcl-alexandria)
("trivia" ,sbcl-trivia)))
(home-page "https://github.com/alex-gutev/agutil/")
(synopsis "Collection of Common Lisp utilities")
(description "A collection of Common Lisp utility functions and macros
mostly not found in other utility packages.")
(license license:expat))))
(define-public cl-agutil
(sbcl-package->cl-source-package sbcl-agutil))
(define-public ecl-agutil
(sbcl-package->ecl-package sbcl-agutil))
(define-public sbcl-custom-hash-table
(let ((commit "f26983133940f5edf826ebbc8077acc04816ddfa"))
(package
(name "sbcl-custom-hash-table")
(version (git-version "0.3" "1" commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/metawilm/cl-custom-hash-table")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "1k4mvrpbqqds2fwjxp1bxmrfmr8ch4dkwhnkbw559knbqshvrlj5"))))
(build-system asdf-build-system/sbcl)
(arguments
'(#:asd-files '("cl-custom-hash-table.asd")
#:asd-systems '("cl-custom-hash-table")))
(home-page "https://github.com/metawilm/cl-custom-hash-table")
(synopsis "Custom hash tables for Common Lisp")
(description "This library allows creation of hash tables with arbitrary
@code{test}/@code{hash} functions, in addition to the @code{test} functions
allowed by the standard (@code{EQ}, @code{EQL}, @code{EQUAL} and
@code{EQUALP}), even in implementations that don't support this functionality
directly.")
(license license:expat))))
(define-public cl-custom-hash-table
(sbcl-package->cl-source-package sbcl-custom-hash-table))
(define-public ecl-custom-hash-table
(sbcl-package->ecl-package sbcl-custom-hash-table))
(define-public sbcl-collectors
(let ((commit "13acef25d8422d1d82e067b1861e513587c166ee"))
(package
(name "sbcl-collectors")
(version (git-version "0.1" "1" commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/AccelerationNet/collectors")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "1si68n1j6rpns8jw6ksqjpb937pdl30v7xza8rld7j5vh0jhy2yi"))))
(build-system asdf-build-system/sbcl)
(inputs
`(("alexandria" ,sbcl-alexandria)
("closer-mop" ,sbcl-closer-mop)
("symbol-munger" ,sbcl-symbol-munger)))
(native-inputs
`(("lisp-unit2" ,sbcl-lisp-unit2)))
(home-page "https://github.com/AccelerationNet/collectors/")
(synopsis "Common lisp library providing collector macros")
(description "A small collection of common lisp macros to make
collecting values easier.")
(license license:bsd-3))))
(define-public cl-collectors
(sbcl-package->cl-source-package sbcl-collectors))
(define-public ecl-collectors
(sbcl-package->ecl-package sbcl-collectors))
(define-public cl-environments
;; TODO: asdf-build-system/sbcl fails here, why? See if it works with the
;; build system revamp once staging is merged after 2020-11-09.
(let ((commit "bbcd958a9ff23ce3e6ea5f8ee2edad9634819a3a")) ; No version in 2 years.
(package
(name "cl-environments")
(version (git-version "0.2.3" "1" commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/alex-gutev/cl-environments")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"1pfxl3vcdrb4mjy4q4c3c7q95kzv6rfjif3hzd5q91i9z621d64r"))))
(build-system asdf-build-system/source)
(propagated-inputs
`(("alexandria" ,cl-alexandria)
("anaphora" ,cl-anaphora)
("collectors" ,cl-collectors)
("optima" ,cl-optima)))
(native-inputs
`(("prove" ,sbcl-prove)))
(home-page "https://github.com/alex-gutev/cl-environments")
(synopsis "Implements the Common Lisp standard environment access API")
(description "This library provides a uniform API, as specified in Common
Lisp the Language 2, for accessing information about variable and function
bindings from implementation-defined lexical environment objects. All major
Common Lisp implementations are supported, even those which don't support the
CLTL2 environment access API.")
(license license:expat))))
(define-public sbcl-static-dispatch
(package
(name "sbcl-static-dispatch")
(version "0.3")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/alex-gutev/static-dispatch")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1wp5yz8liqqic3yifqf33qhccd755pd7ycvsq1j4i7k3f1wm18i0"))))
(build-system asdf-build-system/sbcl)
(inputs
`(("agutil" ,sbcl-agutil)
("alexandria" ,sbcl-alexandria)
("anaphora" ,sbcl-anaphora)
("arrows" ,sbcl-arrows)
("closer-mop" ,sbcl-closer-mop)
("iterate" ,sbcl-iterate)
("trivia" ,sbcl-trivia)))
(propagated-inputs
`(("cl-environments" ,cl-environments)))
(native-inputs
`(("prove" ,sbcl-prove)))
(arguments
`(#:phases
(modify-phases %standard-phases
;; Use `arrows' instead of cl-arrows which is abandoned and unlicensed.
;; https://github.com/nightfly19/cl-arrows/issues/5
(add-after 'unpack 'use-arrows-instead-of-cl-arrows
(lambda _
(for-each
(lambda (file)
(substitute* file
((":cl-arrows") ":arrows")))
'("static-dispatch.asd"
"src/package.lisp"
"test/methods.lisp"
"test/test.lisp")))))))
(home-page "https://github.com/alex-gutev/static-dispatch")
(synopsis "Static generic function dispatch for Common Lisp")
(description "Static dispatch is a Common Lisp library, inspired by
@code{inlined-generic-function}, which allows standard Common Lisp generic
function dispatch to be performed statically (at compile time) rather than
dynamically (runtime). This is similar to what is known as \"overloading\" in
languages such as C++ and Java.
The purpose of static dispatch is to provide an optimization in cases where
the usual dynamic dispatch is too slow, and the dynamic features of generic
functions, such as adding/removing methods at runtime are not required. An
example of such a case is a generic equality comparison function. Currently
generic functions are considered far too slow to implement generic arithmetic
and comparison operations when used heavily in numeric code.")
(license license:expat)))
(define-public cl-static-dispatch
(sbcl-package->cl-source-package sbcl-static-dispatch))
(define-public ecl-static-dispatch
(sbcl-package->ecl-package sbcl-static-dispatch))

View File

@ -37,6 +37,7 @@
;;; Copyright © 2020 Alexey Abramov <levenson@mmer.org>
;;; Copyright © 2020 Tim Gesthuizen <tim.gesthuizen@yahoo.de>
;;; Copyright © 2020 Alexandru-Sergiu Marton <brown121407@posteo.ro>
;;; Copyright © 2020 Oleg Pykhalov <go.wigust@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -1050,14 +1051,14 @@ invoking @command{notifymuch} from the post-new hook.")
(define-public notmuch
(package
(name "notmuch")
(version "0.31")
(version "0.31.1")
(source (origin
(method url-fetch)
(uri (string-append "https://notmuchmail.org/releases/notmuch-"
version ".tar.xz"))
(sha256
(base32
"1543l57viqzqikjgfzp2abpwz3p0k2iq0b1b3wmn31lwaghs07sp"))))
"0pmvwynd4f4kr38agd5m1ml20lq854knc9da7yiqfi776j8fg2rj"))))
(build-system gnu-build-system)
(arguments
`(#:modules ((guix build gnu-build-system)

View File

@ -1804,17 +1804,30 @@ special variant of additive synthesis.")
(base32
"1882pfcmf3rqg3vd4qflzkppcv158d748i603spqjbxqi8z7x7w0"))))
(build-system gnu-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'patch-file-names
(lambda _
(substitute* "src/GUI/editor_pane.c"
(("/usr/bin/unzip") (which "unzip")))
(substitute* "src/GUI/GUI.cc"
(("/usr/bin/which") (which "which")))
#t)))))
(inputs
`(("alsa-lib" ,alsa-lib)
("gtk+" ,gtk+-2)
("gtkmm" ,gtkmm-2)
("jack" ,jack-1)
("lv2" ,lv2)
("lash" ,lash)
("libsndfile" ,libsndfile)
("gtk+" ,gtk+-2)
("gtkmm" ,gtkmm-2)))
("lv2" ,lv2)
;; External commands invoked at run time.
("unzip" ,unzip)
("which" ,which)))
(native-inputs
`(("pkg-config" ,pkg-config)
("intltool" ,intltool)))
`(("intltool" ,intltool)
("pkg-config" ,pkg-config)))
(home-page "https://amsynth.github.io")
(synopsis "Analog modeling synthesizer")
(description

View File

@ -133,10 +133,10 @@
"/lib/ocaml/site-lib"))
#:phases (modify-phases %standard-phases (delete 'configure))))
(define-public ocaml-4.09
(define-public ocaml-4.11
(package
(name "ocaml")
(version "4.09.0")
(version "4.11.1")
(source (origin
(method url-fetch)
(uri (string-append
@ -145,7 +145,7 @@
"/ocaml-" version ".tar.xz"))
(sha256
(base32
"1v3z5ar326f3hzvpfljg4xj8b9lmbrl53fn57yih1bkbx3gr3yzj"))))
"0k4521c0p10c5ams6vjv5qkkjhmpkb0bfn04llcz46ah0f3r2jpa"))))
(build-system gnu-build-system)
(native-search-paths
(list (search-path-specification
@ -203,6 +203,20 @@ functional, imperative and object-oriented styles of programming.")
;; distributed under lgpl2.0.
(license (list license:qpl license:lgpl2.0))))
(define-public ocaml-4.09
(package
(inherit ocaml-4.11)
(version "4.09.0")
(source (origin
(method url-fetch)
(uri (string-append
"http://caml.inria.fr/pub/distrib/ocaml-"
(version-major+minor version)
"/ocaml-" version ".tar.xz"))
(sha256
(base32
"1v3z5ar326f3hzvpfljg4xj8b9lmbrl53fn57yih1bkbx3gr3yzj"))))))
(define-public ocaml-4.07
(package
(inherit ocaml-4.09)
@ -230,7 +244,7 @@ functional, imperative and object-oriented styles of programming.")
"--prefix" out
"--mandir" mandir))))))))))
(define-public ocaml ocaml-4.09)
(define-public ocaml ocaml-4.11)
(define-public ocamlbuild
(package
@ -999,6 +1013,14 @@ compilers that can directly deal with packages.")
`(("m4" ,m4)
("ocaml" ,ocaml-4.07)))))
(define-public ocaml4.09-findlib
(package
(inherit ocaml-findlib)
(name "ocaml4.09-findlib")
(native-inputs
`(("m4" ,m4)
("ocaml" ,ocaml-4.09)))))
;; note that some tests may hang for no obvious reason.
(define-public ocaml-ounit
(package
@ -1293,6 +1315,9 @@ release of Jane Street packages. It reads metadata from @file{dune} files
following a very simple s-expression syntax.")
(license license:expat)))
(define ocaml4.09-dune-bootstrap
(package-with-ocaml4.09 dune-bootstrap))
(define-public dune-configurator
(package
(inherit dune-bootstrap)
@ -1305,6 +1330,7 @@ following a very simple s-expression syntax.")
#:tests? #f))
(propagated-inputs
`(("ocaml-csexp" ,ocaml-csexp)))
(properties `((ocaml4.09-variant . ,(delay ocaml4.09-dune-configurator))))
(synopsis "Dune helper library for gathering system configuration")
(description "Dune-configurator is a small library that helps writing
OCaml scripts that test features available on the system, in order to generate
@ -1317,12 +1343,32 @@ config.h files for instance. Among other things, dune-configurator allows one t
@item generate config.h file
@end itemize")))
(define-public ocaml4.09-dune-configurator
(package
(inherit dune-configurator)
(name "ocaml4.09-dune-configurator")
(arguments
`(#:package "dune-configurator"
#:tests? #f
#:dune ,ocaml4.09-dune-bootstrap
#:ocaml ,ocaml-4.09
#:findlib ,ocaml4.09-findlib))
(propagated-inputs
`(("ocaml-csexp" ,ocaml4.09-csexp)))))
(define-public dune
(package
(inherit dune-bootstrap)
(propagated-inputs
`(("dune-configurator" ,dune-configurator)))
(properties `((ocaml4.07-variant . ,(delay ocaml4.07-dune))))))
(properties `((ocaml4.07-variant . ,(delay ocaml4.07-dune))
(ocaml4.09-variant . ,(delay ocaml4.09-dune))))))
(define-public ocaml4.09-dune
(package
(inherit ocaml4.09-dune-bootstrap)
(propagated-inputs
`(("dune-configurator" ,dune-configurator)))))
(define-public ocaml4.07-dune
(package
@ -1363,6 +1409,7 @@ config.h files for instance. Among other things, dune-configurator allows one t
#t)))))
(propagated-inputs
`(("ocaml-result" ,ocaml-result)))
(properties `((ocaml4.09-variant . ,(delay ocaml4.09-csexp))))
(home-page "https://github.com/ocaml-dune/csexp")
(synopsis "Parsing and printing of S-expressions in Canonical form")
(description "This library provides minimal support for Canonical
@ -1379,6 +1426,18 @@ To avoid a dependency on a particular S-expression library, the only
module of this library is parameterised by the type of S-expressions.")
(license license:expat)))
(define-public ocaml4.09-csexp
(package
(inherit ocaml-csexp)
(name "ocaml4.09-csexp")
(arguments
`(#:ocaml ,ocaml-4.09
#:findlib ,ocaml4.09-findlib
,@(substitute-keyword-arguments (package-arguments ocaml-csexp)
((#:dune _) ocaml4.09-dune-bootstrap))))
(propagated-inputs
`(("ocaml-result" ,ocaml4.09-result)))))
(define-public ocaml-migrate-parsetree
(package
(name "ocaml-migrate-parsetree")
@ -1423,7 +1482,8 @@ functions to the next and/or previous version.")
"07lnj4yzwvwyh5fhpp1dxrys4ddih15jhgqjn59pmgxinbnddi66"))))
(build-system dune-build-system)
(arguments
`(#:test-target "."))
`(#:test-target "."
#:package "ppx_tools_versioned"))
(propagated-inputs
`(("ocaml-migrate-parsetree" ,ocaml-migrate-parsetree)))
(properties `((upstream-name . "ppx_tools_versioned")))
@ -1487,12 +1547,23 @@ powerful.")
(arguments
`(#:test-target "."
#:dune ,dune-bootstrap))
(properties `((ocaml4.09-variant . ,(delay ocaml4.09-result))))
(home-page "https://github.com/janestreet/result")
(synopsis "Compatibility Result module")
(description "Uses the new result type defined in OCaml >= 4.03 while
staying compatible with older version of OCaml should use the Result module
defined in this library.")
(license license:bsd-3)))
(define-public ocaml4.09-result
(package
(inherit ocaml-result)
(name "ocaml4.09-result")
(arguments
`(#:test-target "."
#:dune ,ocaml4.09-dune-bootstrap
#:ocaml ,ocaml-4.09
#:findlib ,ocaml4.09-findlib))))
(define-public ocaml-topkg
(package
@ -2381,21 +2452,28 @@ radix-64 representation. It is specified in RFC 4648.")
(base32 "1f0fghvlbfryf5h3j4as7vcqrgfjb4c8abl5y0y5h069vs4kp5ii"))))
(build-system ocaml-build-system)
(arguments
`(#:phases
`(#:tests? #f; no tests
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'disable-safe-string
;; Work around Error: This expression has type string but an
;; expression was expected of type bytes since OCaml 4.06.
(delete 'configure)
(replace 'build
;; This package uses pre-generated setup.ml by oasis, but is
;; a dependency of oasis. the pre-generated setup.ml is broken
;; with recent versions of OCaml, so we perform a bootstrap instead.
(lambda _
(setenv "OCAMLPARAM" "safe-string=0,_")
(substitute* "src/OCamlifyConfig.ml.ab"
(("$pkg_version") ,version))
(rename-file "src/OCamlifyConfig.ml.ab" "src/OCamlifyConfig.ml")
(with-directory-excursion "src"
(invoke "ocamlc" "OCamlifyConfig.ml" "ocamlify.ml" "-o"
"ocamlify"))
#t))
(delete 'check) ; tests are run during the build
(replace 'configure
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(invoke "ocaml" "setup.ml" "-configure" "--prefix"
(assoc-ref outputs "out")))))))
(native-inputs
`(("ocamlbuild" ,ocamlbuild)))
(let ((bin (string-append (assoc-ref outputs "out") "/bin")))
(mkdir-p bin)
(install-file "src/ocamlify" bin)
#t))))))
(home-page "https://forge.ocamlcore.org/projects/ocamlify")
(synopsis "Include files in OCaml code")
(description "OCamlify creates OCaml source code by including

File diff suppressed because it is too large Load Diff

View File

@ -1,5 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2020 Jesse Gibbons <jgibbons2357+guix@gmail.com>
;;; Copyright © 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;;
;;; This file is part of GNU Guix.
;;;
@ -19,11 +20,14 @@
(define-module (gnu packages piet)
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix git-download)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix build-system gnu)
#:use-module (gnu packages gd)
#:use-module (gnu packages groff)
#:use-module (gnu packages image)
#:use-module (gnu packages netpbm)
#:use-module (gnu packages perl)
#:use-module (gnu packages tcl))
(define-public npiet
@ -55,16 +59,119 @@
(native-inputs `(("groff" ,groff)))
(synopsis "Piet interpreter")
(description
"Npiet is an interpreter for the piet programming language. Instead of
text, piet programs are pictures. Commands are determined based on changes in
"Npiet is an interpreter for the Piet programming language. Instead of
text, Piet programs are pictures. Commands are determined based on changes in
color.
This package includes:
@enumerate
@item npiet, a piet interpreter with debugging capabilities
@item npiet-foogol, a program that builds a piet program from foogol, an
algol-like language
@item npietedit, an editor for the piet programming language
@end enumerate")
@item @command{npiet}, a Piet interpreter with debugging capabilities
@item @command{npiet-foogol}, a program that builds a Piet program from Foogol,
an Algol-like language
@item @command{npietedit}, an editor for Piet programs.
@end enumerate\n")
(home-page "https://www.bertnase.de/npiet/")
(license license:gpl2+)))
(define-public piet-toolchain
(let ((commit "f002ff6a924a6bbace5eef94f3be06f425e7f590")
(revision "0"))
(package
(name "piet-toolchain")
(version (git-version "0.0.0" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/sl236/Piet")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "0xwbhwizfbn080fmrgavaz3b939brycmlar3m5px9avl2b68c816"))
(modules '((guix build utils)))
(snippet
'(begin
;; Remove a bundled fork of Marc Majcher's Piet interpreter.
(delete-file-recursively "interpreter")
#t))))
(build-system gnu-build-system)
(arguments
`(#:modules ((guix build gnu-build-system)
(guix build utils)
(srfi srfi-26))
#:phases
(modify-phases %standard-phases
(delete 'configure) ; no configure script
(delete 'build) ; nothing to build
(delete 'check) ; run our own tests below
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(bin (string-append out "/bin"))
(doc (string-append out "/share/doc/"
,name "-" ,version)))
(for-each (lambda (script)
(install-file script bin)
(wrap-program (string-append bin "/" script)
`("PERL5LIB" ":" = (,(getenv "PERL5LIB")))))
(list "piet-assembler"
"piet-compiler"))
;; Fix an odd mode.
(chmod "compiler-samples/test-binary-ops.script" #o644)
(for-each (lambda (file) ; INSTALL-FILE is not recursive
(copy-recursively file
(string-append doc "/" file)))
(list "assembler-samples"
"compiler-samples"
"README.md")) ; includes the licence grant
#t)))
(add-after 'install 'check
(lambda* (#:key outputs tests? #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(bin (string-append out "/bin")))
(when tests?
(unsetenv "PERL5LIB") ; test the wrapping
;; Compile all scripts assemble all Piets.
(for-each (lambda (file)
(system (string-append bin "/piet-compiler "
file ">"
file ".piet")))
(find-files "." "\\.script$"))
(for-each (lambda (file)
(system (string-append bin "/piet-assembler "
file "|pnmtopng>"
file ".png")))
(find-files "." "\\.piet$"))
;; Don't run the interactive one.
(delete-file "assembler-samples/quest.piet.png")
(for-each (cut invoke "npiet" <>)
(find-files "." "\\.png$"))
#t)))))))
(native-inputs
;; For our tests.
`(("netpbm" ,netpbm)
("npiet" ,npiet)))
(inputs
`(("perl" ,perl)
("perl-parse-recdescent" ,perl-parse-recdescent)))
(home-page "https://www.toothycat.net/wiki/wiki.pl?MoonShadow/Piet")
(synopsis "Piet compiler and assembler")
(description
"This package provides a compiler and assembler that target the Piet
graphical programming language.
@command{piet-assembler} converts Piet assembler instructions (e.g.,
@code{push}, @code{add}, @code{switch}, @code{outn}) and directives into an
executable @code{netpbm} image of the corresponding Piet program.
@command{piet-compiler} compiles a C-like high-level language into assembly
source understood by @command{piet-assembler}. It supports common arithmetic
and boolean logic operators (though not bitwise manipulation), flow control
(@code{if}, @code{for}, @code{while}), recursive functions, in-line assembler,
and input/output intrinsics. The only supported data type is the integer.
The language is documented only by the compiler's Perl source code and the
included samples.")
(license license:cc-by-sa4.0))))

View File

@ -436,6 +436,40 @@ in Pytest.")
of the project to ensure it renders properly.")
(license license:expat)))
(define-public python-re-assert
(package
(name "python-re-assert")
(version "1.1.0")
(source
(origin
;; There are no tests in the PyPI tarball.
(method git-fetch)
(uri (git-reference
(url "https://github.com/asottile/re-assert")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1rssq4wpqmx1c17hjfx5l3sn3zmnlz9jffddiqrs4f6h7m6cadai"))))
(build-system python-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(replace 'check
(lambda _
(invoke "pytest" "-vv"))))))
(native-inputs
`(("python-covdefaults" ,python-covdefaults)
("python-coverage" ,python-coverage)
("python-pytest" ,python-pytest)))
(propagated-inputs
`(("python-regex" ,python-regex)))
(home-page "https://github.com/asottile/re-assert")
(synopsis "Show where your regex match assertion failed")
(description
"@code{re-assert} provides a helper class to make assertions of regexes
simpler.")
(license license:expat)))
(define-public python-pytest-trio
(package
(name "python-pytest-trio")

View File

@ -1189,13 +1189,13 @@ been constructed to maintain extensive documentation on how to use
(define-public python-pyotp
(package
(name "python-pyotp")
(version "2.4.0")
(version "2.4.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "pyotp" version))
(sha256
(base32 "0a1dx07y785xyl70h0vj6vssg13qfx11w04d0gz8h48qffsymv01"))))
(base32 "0jsqfmx9i7j8z81r4zazv76xzy1fcq8v9s2r4kvx7ajfndq3z2h3"))))
(build-system python-build-system)
(home-page "https://github.com/pyauth/pyotp")
(synopsis "Python One Time Password Library")

View File

@ -453,6 +453,8 @@ other HTTP libraries.")
syntax highlighting, wget-like downloads, plugins, and more. It consists of
a single http command designed for painless debugging and interaction with
HTTP servers, RESTful APIs, and web services.")
;; This was fixed in 1.0.3.
(properties `((lint-hidden-cve . ("CVE-2019-10751"))))
(license license:bsd-3)))
(define-public python-html2text

View File

@ -3457,8 +3457,11 @@ structure for Python.")
(synopsis "Python Documentation Utilities")
(description
"Docutils is a modular system for processing documentation into useful
formats, such as HTML, XML, and LaTeX. For input Docutils supports
reStructuredText.")
formats, such as HTML, XML, and LaTeX. It uses @dfn{reStructuredText}, an
easy to use markup language, for input.
This package provides tools for converting @file{.rst} files to other formats
via commands such as @command{rst2man}, as well as supporting Python code.")
;; Most of the source code is public domain, but some source files are
;; licensed under the PFSL, BSD 2-clause, and GPLv3+ licenses.
(license (list license:public-domain license:psfl license:bsd-2 license:gpl3+))))
@ -10900,14 +10903,13 @@ for the module to work under Python 3.3.")
(define-public python-colorama
(package
(name "python-colorama")
(version "0.4.3")
(version "0.4.4")
(source
(origin
(method url-fetch)
(uri (pypi-uri "colorama" version))
(sha256
(base32
"189n8hpijy14jfan4ha9f5n06mnl33cxz7ay92wjqgkr639s0vg9"))))
(base32 "16w62sm95hmh55rqxn4zwdz0bkh3fqm1qnz9cwi3s510iasb4har"))))
(build-system python-build-system)
(synopsis "Colored terminal text rendering for Python")
(description "Colorama is a Python library for rendering colored terminal
@ -21448,13 +21450,13 @@ information for your operating system.")
(define-public python-canonicaljson
(package
(name "python-canonicaljson")
(version "1.1.4")
(version "1.4.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "canonicaljson" version))
(sha256
(base32 "09cpacc8yvcc74i63pdmlfaahh77dnvbyw9zf29wml2zzwqfbg25"))))
(base32 "0c86g0vvzdcg3nrcsqnbzlfhpprc2i894p8i14hska56yl27d6w9"))))
(build-system python-build-system)
(propagated-inputs
`(("python-six" ,python-six)

View File

@ -538,7 +538,7 @@ to the fix block above.
(define-public gqrx
(package
(name "gqrx")
(version "2.13.3")
(version "2.13.5")
(source
(origin
(method git-fetch)
@ -547,7 +547,7 @@ to the fix block above.
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0awj5wzq0p677my0065rpqkmfl3jc0bjdrnip8715z8031cd923n"))))
(base32 "168wjad5g0ka555hwsciwbj7fqx1c89q59hq1yxj8aiyp5kfcahx"))))
(build-system qt-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)))
@ -567,7 +567,7 @@ to the fix block above.
("qtsvg" ,qtsvg)
("volk" ,volk)))
(arguments
`(#:tests? #f)) ; No tests
`(#:tests? #f)) ; no tests
(synopsis "Software defined radio receiver")
(description "Gqrx is a software defined radio (SDR) receiver implemented
using GNU Radio and the Qt GUI toolkit.")
@ -613,14 +613,14 @@ hardware.")
(define-public flrig
(package
(name "flrig")
(version "1.3.51")
(version "1.3.52")
(source
(origin
(method url-fetch)
(uri (string-append "http://www.w1hkj.com/files/flrig/flrig-"
version ".tar.gz"))
(sha256
(base32 "0aq4x0ai9q08ypfhzfj2inc4z3q39zq1l6h9as1kil9yn4zbay61"))))
(base32 "18c154080vl25cy4l5amh96abm6kzm7mzld9h58pabc28yqq8zl8"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)))

View File

@ -1582,7 +1582,7 @@ to save time in the following ways:
(define-public ruby-chunky-png
(package
(name "ruby-chunky-png")
(version "1.3.12")
(version "1.3.14")
(source
(origin
(method git-fetch)
@ -1591,8 +1591,7 @@ to save time in the following ways:
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"0hn8ap7iib47qkqdp0awmxgma11z0lmk1ca3lp7c97ykhv7ij1zs"))))
(base32 "1m7y11ix38h5a2pj5v81qdmvqh980ql9hp62hk2dxwkwsa4nh22h"))))
(build-system ruby-build-system)
(arguments
`(#:test-target "spec"
@ -1639,7 +1638,12 @@ pixel, depending on the hardware).
Performance: ChunkyPNG is reasonably fast for Ruby standards, by only using
integer math and a highly optimized saving routine.
@item Interoperability with RMagick.
@end itemize")
@end itemize
ChunkyPNG is vulnerable to decompression bombs and can run out of memory when
loading a specifically crafted PNG file. This is hard to fix in pure Ruby.
Deal with untrusted images in a separate process, e.g., by using @code{fork}
or a background processing library.")
(home-page "https://github.com/wvanbergen/chunky_png/wiki")
(license license:expat)))

View File

@ -398,7 +398,7 @@ implementation techniques and as an expository tool.")
(define-public racket
(package
(name "racket")
(version "7.8") ;; Note: Remember to also update racket-minimal!
(version "7.9") ; note: remember to also update racket-minimal!
(source (origin
(method url-fetch)
(uri (list (string-append "http://mirror.racket-lang.org/installers/"
@ -408,7 +408,7 @@ implementation techniques and as an expository tool.")
version "/racket-" version "-src.tgz")))
(sha256
(base32
"19z3dayybcra277s4gk2mppalwawd93f2b16xyrb6d7rbbfz7j9j"))
"18pz6gjzqy6a62xkcmjanhr7kgxpvpmc0blrk4igz8ldcybz44if"))
(patches (search-patches
"racket-store-checksum-override.patch"))))
(build-system gnu-build-system)
@ -540,7 +540,7 @@ of libraries.")
version "/racket-minimal-" version "-src.tgz")))
(sha256
(base32
"0bbglf9vfacpm2hn3lskhvc8cpg6z088fbnzpqsn17z8qdk8yvb3"))
"0xvnd7afx058sg7j51bmbikqgn4sl0246nkhr8zlqcrbr3nqi6p4"))
(patches (search-patches
"racket-store-checksum-override.patch"))))
(synopsis "Racket without bundled packages such as Dr. Racket")

View File

@ -18,6 +18,7 @@
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu packages sdcc)
#:use-module (gnu packages)
#:use-module (gnu packages bison)
#:use-module (gnu packages boost)
#:use-module (gnu packages flex)
@ -39,7 +40,14 @@
"/" version "/sdcc-src-" version ".tar.bz2"))
(sha256
(base32
"13llvx0j3v5qa7qd4fh7nix4j3alpd3ccprxvx163c4q8q4lfkc5"))))
"13llvx0j3v5qa7qd4fh7nix4j3alpd3ccprxvx163c4q8q4lfkc5"))
(modules '((guix build utils)))
(snippet
'(begin
;; Remove non-free source files
(delete-file-recursively "device/non-free")
#t))
(patches (search-patches "sdcc-disable-non-free-code.patch"))))
(build-system gnu-build-system)
(native-inputs
`(("bison" ,bison)

View File

@ -814,14 +814,14 @@ Shell (pdksh).")
(define-public oil
(package
(name "oil")
(version "0.8.3")
(version "0.8.4")
(source
(origin
(method url-fetch)
(uri (string-append "https://www.oilshell.org/download/oil-"
version ".tar.gz"))
(sha256
(base32 "14j0qjh92b16xxaj0f0k71y8wkbz6nmgx0yin2q7xrzqk8hzqgj6"))))
(base32 "1gcpf5l6bdjw150ds3j2iws739khxylmz67fx7k1rjfpfij2004l"))))
(build-system gnu-build-system)
(arguments
`(#:strip-binaries? #f ; strip breaks the binary

View File

@ -55,14 +55,14 @@
(define-public ceph
(package
(name "ceph")
(version "14.2.11")
(version "14.2.13")
(source (origin
(method url-fetch)
(uri (string-append "https://download.ceph.com/tarballs/ceph-"
version ".tar.gz"))
(sha256
(base32
"02mbinm8rk16cwm0x4winmd4488xznkzkyzycxkwlib26yd2xsnz"))
"0gaxjs909wf00nvh4z53cin89dw67v1q47b2jvi3iibynhkahkg1"))
(patches
(search-patches "ceph-disable-cpu-optimizations.patch"))
(modules '((guix build utils)))

View File

@ -334,25 +334,27 @@ required structures.")
#:disallowed-references ,(list (canonical-package perl))
#:phases
(modify-phases %standard-phases
,@(if (%current-target-system)
'((add-before
'configure 'set-cross-compile
(lambda* (#:key target outputs #:allow-other-keys)
(setenv "CROSS_COMPILE" (string-append target "-"))
(setenv "CONFIGURE_TARGET_ARCH"
(cond
((string-prefix? "i586" target)
"hurd-x86")
((string-prefix? "i686" target)
"linux-x86")
((string-prefix? "x86_64" target)
"linux-x86_64")
((string-prefix? "arm" target)
"linux-armv4")
((string-prefix? "aarch64" target)
"linux-aarch64")))
#t)))
'())
,@(if (%current-target-system)
'((add-before
'configure 'set-cross-compile
(lambda* (#:key target outputs #:allow-other-keys)
(setenv "CROSS_COMPILE" (string-append target "-"))
(setenv "CONFIGURE_TARGET_ARCH"
(cond
((string-prefix? "i586" target)
"hurd-x86")
((string-prefix? "i686" target)
"linux-x86")
((string-prefix? "x86_64" target)
"linux-x86_64")
((string-prefix? "mips64el" target)
"linux-mips64")
((string-prefix? "arm" target)
"linux-armv4")
((string-prefix? "aarch64" target)
"linux-aarch64")))
#t)))
'())
(replace 'configure
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
@ -363,8 +365,8 @@ required structures.")
(string-append (assoc-ref %build-inputs "coreutils")
"/bin/env")))
(invoke ,@(if (%current-target-system)
'("./Configure")
'("./config"))
'("./Configure")
'("./config"))
"shared" ;build shared libraries
"--libdir=lib"
@ -376,9 +378,9 @@ required structures.")
(string-append "--prefix=" out)
(string-append "-Wl,-rpath," lib)
,@(if (%current-target-system)
'((getenv "CONFIGURE_TARGET_ARCH"))
'())))))
,@(if (%current-target-system)
'((getenv "CONFIGURE_TARGET_ARCH"))
'())))))
(add-after 'install 'move-static-libraries
(lambda* (#:key outputs #:allow-other-keys)
;; Move static libraries to the "static" output.

View File

@ -93,6 +93,7 @@
#:use-module (gnu packages perl-check)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages python)
#:use-module (gnu packages python-check)
#:use-module (gnu packages python-web)
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages readline)
@ -1441,7 +1442,7 @@ control to Git repositories.")
(define-public pre-commit
(package
(name "pre-commit")
(version "2.7.1")
(version "2.8.1")
(source
(origin
;; No tests in the PyPI tarball.
@ -1451,7 +1452,7 @@ control to Git repositories.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0n7qby5a4yz3s02nqcp5js6jg9wrd0x7msblxwb1883ds4b2b71a"))))
(base32 "0b3ks6viccq3n4p8i8zgfd40vp1k5nkhmmlz7p4nxcdizw8zxgn8"))))
(build-system python-build-system)
(arguments
`(#:phases
@ -1492,6 +1493,12 @@ control to Git repositories.")
" and not test_additional_rust_lib_dependencies_installed"
" and not test_local_rust_additional_dependencies"
" and not test_rust_hook"
;; Disable dotnet tests.
" and not test_dotnet_hook"
;; Disable nodejs tests.
" and not test_unhealthy_if_system_node_goes_missing"
" and not test_installs_without_links_outside_env"
" and not test_healthy_system_node"
;; Disable python2 test.
" and not test_switch_language_versions_doesnt_clobber"
;; These tests try to open a network socket.
@ -1534,8 +1541,10 @@ control to Git repositories.")
#t))))))
(native-inputs
`(("git" ,git-minimal)
("python-pytest" ,python-pytest)))
(inputs
("python-pytest" ,python-pytest)
("python-re-assert" ,python-re-assert)))
;; Propagate because pre-commit is also used as a module.
(propagated-inputs
`(("python-cfgv" ,python-cfgv)
("python-identify" ,python-identify)
("python-nodeenv" ,python-nodeenv)

View File

@ -45,6 +45,7 @@
;;; Copyright © 2020 Vinicius Monego <monego@posteo.net>
;;; Copyright © 2020 Brett Gilio <brettg@gnu.org>
;;; Copyright © 2020 Alexandru-Sergiu Marton <brown121407@posteo.ro>
;;; Copyright © 2020 Ivan Kozlov <kanichos@yandex.ru>
;;;
;;; This file is part of GNU Guix.
;;;
@ -2344,7 +2345,7 @@ other site that youtube-dl supports.")
(define-public you-get
(package
(name "you-get")
(version "0.4.1456")
(version "0.4.1475")
(source (origin
(method git-fetch)
(uri (git-reference
@ -2353,7 +2354,7 @@ other site that youtube-dl supports.")
(file-name (git-file-name name version))
(sha256
(base32
"0n6h5qkhjwsxy8rf6n4i8hd8dah38hbvchh9272c53gydgp9lp29"))))
"1hsa99fgx1zhzkf3n0hlbinckvipd54vhs6y4jkq0rd9r6yc1h7f"))))
(build-system python-build-system)
(inputs
`(("ffmpeg" ,ffmpeg))) ; for multi-part and >=1080p videos
@ -2987,11 +2988,40 @@ tools, XML authoring components, and an extensible plug-in based API.")
(base32
"1bkqlrizx0j2rd6ybam2x17bjrpwzl4v4szmnzm3cmixis3w3npr"))))
(build-system gnu-build-system)
;; Separate graphical tools in order to save almost 1 GiB on the closure
;; for the common case.
(outputs '("out" "gui"))
(arguments
'(#:configure-flags
(list (string-append "--with-udevdir="
(list "--disable-static"
(string-append "--with-udevdir="
(assoc-ref %outputs "out")
"/lib/udev"))))
"/lib/udev"))
#:phases
(modify-phases %standard-phases
(add-after 'install 'split
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out"))
(gui (assoc-ref outputs "gui")))
(mkdir-p (string-append gui "/bin"))
(mkdir-p (string-append gui "/share/man/man1"))
(mkdir-p (string-append gui "/share/applications"))
(for-each
(lambda (prog)
(for-each
(lambda (file)
(rename-file (string-append out file)
(string-append gui file)))
(list
(string-append "/bin/" prog)
(string-append "/share/man/man1/" prog ".1")
(string-append "/share/applications/" prog ".desktop"))))
'("qv4l2" "qvidcap"))
(copy-recursively (string-append out "/share/icons")
(string-append gui "/share/icons"))
(delete-file-recursively (string-append out "/share/icons"))
(rmdir (string-append out "/share/applications"))
#t))))))
(native-inputs
`(("perl" ,perl)
("pkg-config" ,pkg-config)))

View File

@ -6,7 +6,7 @@
;;; Copyright © 2016, 2017, 2019 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016, 2017, 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2017 Julien Lepiller <julien@lepiller.eu>
;;; Copyright © 2018 Pierre Langlois <pierre.langlois@gmx.com>
;;; Copyright © 2018, 2020 Pierre Langlois <pierre.langlois@gmx.com>
;;; Copyright © 2018 Meiyo Peng <meiyo.peng@gmail.com>
;;; Copyright © 2019, 2020 Leo Famulari <leo@famulari.name>
;;; Copyright © 2019 Rutger Helling <rhelling@mykolab.com>
@ -131,10 +131,10 @@ Only \"Universal TUN/TAP device driver support\" is needed in the kernel.")
(home-page "https://www.unix-ag.uni-kl.de/~massar/vpnc/")))
(define-public vpnc-scripts
(let ((commit "1000e0f6dd7d6bff163169a46359211c1fc3a6d2"))
(let ((commit "3885f8bbc4ae03fd6da0ada6de12f7223a59595c"))
(package
(name "vpnc-scripts")
(version (string-append "20190116." (string-take commit 7)))
(version (string-append "20200925." (string-take commit 7)))
(source (origin
(method git-fetch)
(uri
@ -144,7 +144,7 @@ Only \"Universal TUN/TAP device driver support\" is needed in the kernel.")
(file-name (git-file-name name version))
(sha256
(base32
"1g41yarz2bl0f73kbjqnywr485ghanbp7nmspklfb0n07yp0z6ak"))))
"1pmi4n58q81pmn9arvfixhvv6vkkf3rpwac3hwnwyl882q5q0ccx"))))
(build-system gnu-build-system)
(inputs `(("guile" ,guile-3.0) ; for the wrapper scripts
("coreutils" ,coreutils)

View File

@ -5634,14 +5634,14 @@ on the fly.")
(define-public hitch
(package
(name "hitch")
(version "1.6.0")
(version "1.7.0")
(home-page "https://hitch-tls.org/")
(source (origin
(method url-fetch)
(uri (string-append home-page "source/hitch-" version ".tar.gz"))
(sha256
(base32
"01n70yf8hx42jb801jv5q1xhrpqxyjnqhd98hjf81lvxpd5fnisf"))))
"1i75giwyr66ip8xsvk3gg5xdbxnmcabgxz8dqi06c58mw7qzhzn9"))))
(build-system gnu-build-system)
(arguments
`(#:phases (modify-phases %standard-phases
@ -5774,13 +5774,13 @@ deployments.")
(package
(name "varnish")
(home-page "https://varnish-cache.org/")
(version "6.4.0")
(version "6.5.1")
(source (origin
(method url-fetch)
(uri (string-append home-page "_downloads/varnish-" version ".tgz"))
(sha256
(base32
"1hkn98vbxk7rc1sd08367qn6rcv8wkxgwbmm1x46y50vi0nvldpn"))))
"1dfdswri6lkfk6kml3szvffm91y49pajgqy1k5y26llqixl4r5hi"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags (list (string-append "LDFLAGS=-Wl,-rpath=" %output "/lib")
@ -5848,18 +5848,25 @@ configuration language.")
(package
(name "varnish-modules")
(home-page "https://github.com/varnish/varnish-modules")
(version "0.16.0")
(version "0.17.0")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/varnish/varnish-modules"
"/releases/download/varnish-modules-" version
"/varnish-modules-" version ".tar.gz"))
(method git-fetch)
(uri (git-reference (url home-page) (commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"1ph5bplsip4rycql1c2hgbvmrwbgcrgv2ldgfp7saxxbsv5cpcds"))))
"0zg8y2sgkygdani70zp9rbx278431fmssj26d47c5qsiw939i519"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)))
`(("pkg-config" ,pkg-config)
;; For bootstrapping.
("autoconf" ,autoconf)
("automake" ,automake)
("libtool" ,libtool)
;; For generating manuals.
("rst2man" ,python-docutils)))
(inputs
`(("python" ,python)
("varnish" ,varnish)))

View File

@ -1089,7 +1089,7 @@ Escape key when Left Control is pressed and released on its own.")
(define-public libwacom
(package
(name "libwacom")
(version "1.5")
(version "1.6")
(source (origin
(method url-fetch)
(uri (string-append
@ -1097,7 +1097,7 @@ Escape key when Left Control is pressed and released on its own.")
"libwacom-" version "/libwacom-" version ".tar.bz2"))
(sha256
(base32
"0yyl6vzpfd7dq8a8k9dn8r494542ci4r1i0pillg1p4f7jvryd3b"))))
"1a5ffxyhl6crspybcfsx5ribgrgkzwfl5w9y32slxbgjwczb473h"))))
(build-system glib-or-gtk-build-system)
(arguments
`(#:configure-flags '("--disable-static")))

View File

@ -121,7 +121,7 @@ Xfce Desktop Environment.")
(define-public xfconf
(package
(name "xfconf")
(version "4.14.3")
(version "4.14.4")
(source (origin
(method url-fetch)
(uri (string-append "https://archive.xfce.org/src/xfce/"
@ -129,7 +129,7 @@ Xfce Desktop Environment.")
"xfconf-" version ".tar.bz2"))
(sha256
(base32
"00hcb96bw5ylfs9ppblchj8zv9026m3dlf7lnmgiq5f6xyh5542q"))))
"0wszp93z64112jq5wm4133s64in2ndvnzbgsbn8dh7p5xhp64dyc"))))
(build-system gnu-build-system)
(arguments
'(#:phases
@ -755,7 +755,7 @@ on the screen.")
(define-public xfdesktop
(package
(name "xfdesktop")
(version "4.14.2")
(version "4.14.3")
(source (origin
(method url-fetch)
(uri (string-append "https://archive.xfce.org/src/xfce/"
@ -763,7 +763,7 @@ on the screen.")
"xfdesktop-" version ".tar.bz2"))
(sha256
(base32
"0x1yx9sd5aanrlr1qnbwd2nsmcg09g4132k0kyb7z47a3x3381d3"))
"14sp5a4n21prwmh2l5mjq5fjaq7r2pbjxddfx4wzaix8867x1mq6"))
(modules '((guix build utils)))
(snippet
#~(begin

View File

@ -1080,14 +1080,14 @@ XSL-T processor. It also performs any necessary post-processing.")
(define-public xmlsec
(package
(name "xmlsec")
(version "1.2.30")
(version "1.2.31")
(source (origin
(method url-fetch)
(uri (string-append "https://www.aleksey.com/xmlsec/download/"
"xmlsec1-" version ".tar.gz"))
(sha256
(base32
"1j5bf7ni45jghyrbf7a14wx2pvfara557zyry7g7h8840c5kd11d"))))
"09hbbaz2d9hw645q27apkjs1mdr6vd85x5z3c9hzgr1iri9bq44v"))))
(build-system gnu-build-system)
(propagated-inputs ; according to xmlsec1.pc
`(("libxml2" ,libxml2)

View File

@ -354,16 +354,17 @@
#$@(if non-derivation-substitute-urls
#~(#$(string-append
"--non-derivation-substitute-urls="
(string-join derivation-substitute-urls " ")))
(string-join non-derivation-substitute-urls " ")))
#~())
#$@(map (lambda (system)
(string-append "--system=" system))
(or systems '())))
#:user #$user
#:pid-file "/var/run/guix-build-coordinator-agent/pid"
#:environment-variables
`(,(string-append
"GUIX_LOCPATH=" #$glibc-utf8-locales "/lib/locale")
;; XDG_CACHE_HOME is used by Guix when caching narinfo files
"XDG_CACHE_HOME=/var/cache/guix-build-coordinator-agent"
"LC_ALL=en_US.utf8")
#:log-file "/var/log/guix-build-coordinator/agent.log"))
(stop #~(make-kill-destructor))))))
@ -376,9 +377,9 @@
(mkdir-p "/var/log/guix-build-coordinator")
;; Allow writing the PID file
(mkdir-p "/var/run/guix-build-coordinator-agent")
(chown "/var/run/guix-build-coordinator-agent"
;; Create a cache directory for storing narinfo files if downloaded
(mkdir-p "/var/cache/guix-build-coordinator-agent")
(chown "/var/cache/guix-build-coordinator-agent"
(passwd:uid %user)
(passwd:gid %user))))

View File

@ -668,6 +668,12 @@ of index files."
'#$lua-package-cpath)
";"))
"")
(if server-names-hash-bucket-size
(string-append
" server_names_hash_bucket_size "
(number->string server-names-hash-bucket-size)
";\n")
"")
(if server-names-hash-bucket-max-size
(string-append
" server_names_hash_bucket_max_size "

View File

@ -414,6 +414,7 @@ image ~a {
out-image))
(convert-disk-image out-image '#$format #$output)))))
(computed-file name builder
#:local-build? #f ;too I/O-intensive
#:options `(#:substitutable? ,substitutable?))))

View File

@ -29,6 +29,8 @@
#:export (%ocaml-build-system-modules
package-with-ocaml4.07
strip-ocaml4.07-variant
package-with-ocaml4.09
strip-ocaml4.09-variant
default-findlib
default-ocaml
lower
@ -96,6 +98,18 @@
(let ((module (resolve-interface '(gnu packages ocaml))))
(module-ref module 'ocaml4.07-dune)))
(define (default-ocaml4.09)
(let ((ocaml (resolve-interface '(gnu packages ocaml))))
(module-ref ocaml 'ocaml-4.09)))
(define (default-ocaml4.09-findlib)
(let ((module (resolve-interface '(gnu packages ocaml))))
(module-ref module 'ocaml4.09-findlib)))
(define (default-ocaml4.09-dune)
(let ((module (resolve-interface '(gnu packages ocaml))))
(module-ref module 'ocaml4.09-dune)))
(define* (package-with-explicit-ocaml ocaml findlib dune old-prefix new-prefix
#:key variant-property)
"Return a procedure of one argument, P. The procedure creates a package
@ -171,6 +185,19 @@ pre-defined variants."
(inherit p)
(properties (alist-delete 'ocaml4.07-variant (package-properties p)))))
(define package-with-ocaml4.09
(package-with-explicit-ocaml (delay (default-ocaml4.09))
(delay (default-ocaml4.09-findlib))
(delay (default-ocaml4.09-dune))
"ocaml-" "ocaml4.09-"
#:variant-property 'ocaml4.09-variant))
(define (strip-ocaml4.09-variant p)
"Remove the 'ocaml4.09-variant' property from P."
(package
(inherit p)
(properties (alist-delete 'ocaml4.09-variant (package-properties p)))))
(define* (lower name
#:key source inputs native-inputs outputs system target
(ocaml (default-ocaml))

View File

@ -583,7 +583,10 @@ requested using POOL."
;; guarantee the TTL (see <https://bugs.gnu.org/28664>.)
(with-atomic-file-output nar
(lambda (port)
(write-file item port))))))
(write-file item port)
;; Make the file world-readable, contrary to what
;; 'with-atomic-file-output' does.
(chmod port (logand #o644 (lognot (umask)))))))))
(define* (bake-narinfo+nar cache item
#:key ttl (compressions (list %no-compression))
@ -615,7 +618,12 @@ requested using POOL."
#:nar-path nar-path
#:compressions compressions
#:file-sizes sizes)
port)))))
port)))
;; Make the cached narinfo world-readable, contrary to what
;; 'with-atomic-file-output' does, so that other users can rsync
;; the whole cache.
(chmod port (logand #o644 (lognot (umask))))))
;; Make narinfo files for OTHERS hard links to NARINFO such that the
;; atime-based cache eviction considers either all the nars or none

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -434,6 +434,11 @@ References: ~%"
(< ttl 3600)))
(wait-for-file cached)
;; Both the narinfo and nar should be world-readable.
(= #o644 (stat:perms (lstat cached)))
(= #o644 (stat:perms (lstat nar)))
(let* ((body (http-get-port url))
(compressed (http-get nar-url))
(uncompressed (http-get (string-append base "nar/"