Merge branch 'master' into core-updates

master
Mark H Weaver 2019-09-06 20:46:00 -04:00
commit 65542a8852
No known key found for this signature in database
GPG Key ID: 7CEF29847562C516
115 changed files with 17774 additions and 13324 deletions

View File

@ -68,6 +68,7 @@ MODULES = \
guix/cpio.scm \
guix/deprecation.scm \
guix/docker.scm \
guix/json.scm \
guix/records.scm \
guix/pki.scm \
guix/progress.scm \
@ -125,6 +126,7 @@ MODULES = \
guix/build-system/gnu.scm \
guix/build-system/guile.scm \
guix/build-system/haskell.scm \
guix/build-system/julia.scm \
guix/build-system/linux-module.scm \
guix/build-system/node.scm \
guix/build-system/perl.scm \
@ -183,6 +185,7 @@ MODULES = \
guix/build/texlive-build-system.scm \
guix/build/waf-build-system.scm \
guix/build/haskell-build-system.scm \
guix/build/julia-build-system.scm \
guix/build/linux-module-build-system.scm \
guix/build/store-copy.scm \
guix/build/json.scm \

36
README
View File

@ -10,8 +10,8 @@ It provides [[https://www.gnu.org/software/guile/][Guile]] Scheme APIs, includin
domain-specific languages (EDSLs) to describe how packages are to be
built and composed.
A user-land free software distribution for GNU/Linux comes as part of
Guix.
GNU Guix can be used on top of an already-installed GNU/Linux distribution, or
it can be used standalone (we call that “Guix System”).
Guix is based on the [[https://nixos.org/nix/][Nix]] package manager.
@ -75,37 +75,17 @@ the promise of a build; it is stored as a text file under
`derivation' primitive, as well as higher-level wrappers such as
`build-expression->derivation'.
Guix does remote procedure calls (RPCs) to the Guix or Nix daemon (the
=guix-daemon= or =nix-daemon= command), which in turn performs builds
and accesses to the Nix store on its behalf. The RPCs are implemented
in the (guix store) module.
* Installing Guix as non-root
The Guix daemon allows software builds to be performed under alternate
user accounts, which are normally created specifically for this
purpose. For instance, you may have a pool of accounts in the
=guixbuild= group, and then you can instruct =guix-daemon= to use them
like this:
$ guix-daemon --build-users-group=guixbuild
However, unless it is run as root, =guix-daemon= cannot switch users.
In that case, it falls back to using a setuid-root helper program call
=nix-setuid-helper=. That program is not setuid-root by default when
you install it; instead you should run a command along these lines
(assuming Guix is installed under /usr/local):
# chown root.root /usr/local/libexec/nix-setuid-helper
# chmod 4755 /usr/local/libexec/nix-setuid-helper
Guix does remote procedure calls (RPCs) to the build daemon (the =guix-daemon=
command), which in turn performs builds and accesses to the store on its
behalf. The RPCs are implemented in the (guix store) module.
* Contact
GNU Guix is hosted at https://savannah.gnu.org/projects/guix/.
Please email <bug-guix@gnu.org> for bug reports or questions regarding
Guix and its distribution; email <gnu-system-discuss@gnu.org> for
general issues regarding the GNU system.
Please email <help-guix@gnu.org> for questions and <bug-guix@gnu.org> for bug
reports; email <gnu-system-discuss@gnu.org> for general issues regarding the
GNU system.
Join #guix on irc.freenode.net.

View File

@ -34,6 +34,7 @@
(gnu packages gawk)
(gnu packages gettext)
(gnu packages guile)
(gnu packages guile-xyz)
(gnu packages iso-codes)
(gnu packages texinfo)
(gnu packages tex)
@ -164,6 +165,115 @@ as well as images, OS examples, and translations."
;; Options passed to 'makeinfo --html'.
'("--css-ref=https://www.gnu.org/software/gnulib/manual.css"))
(define* (syntax-highlighted-html input
#:key
(name "highlighted-syntax")
(syntax-css-url
"/static/base/css/code.css"))
"Return a derivation called NAME that processes all the HTML files in INPUT
to (1) add them a link to SYNTAX-CSS-URL, and (2) highlight the syntax of all
its <pre class=\"lisp\"> blocks (as produced by 'makeinfo --html')."
(define build
(with-extensions (list guile-lib guile-syntax-highlight)
(with-imported-modules '((guix build utils))
#~(begin
(use-modules (htmlprag)
(syntax-highlight)
(syntax-highlight scheme)
(syntax-highlight lexers)
(guix build utils)
(ice-9 match)
(ice-9 threads))
(define entity->string
(match-lambda
("rArr" "⇒")
("hellip" "…")
("rsquo" "")
(e (pk 'unknown-entity e) (primitive-exit 2))))
(define (concatenate-snippets pieces)
;; Concatenate PIECES, which contains strings and entities,
;; replacing entities with their corresponding string.
(let loop ((pieces pieces)
(strings '()))
(match pieces
(()
(string-concatenate-reverse strings))
(((? string? str) . rest)
(loop rest (cons str strings)))
((('*ENTITY* "additional" entity) . rest)
(loop rest (cons (entity->string entity) strings)))
((('span _ lst ...) . rest) ;for <span class="roman">
(loop (append lst rest) strings))
(something
(pk 'unsupported-code-snippet something)
(primitive-exit 1)))))
(define (syntax-highlight sxml)
;; Recurse over SXML and syntax-highlight code snippets.
(match sxml
(('*TOP* decl body ...)
`(*TOP* ,decl ,@(map syntax-highlight body)))
(('head things ...)
`(head ,@things
(link (@ (rel "stylesheet")
(type "text/css")
(href #$syntax-css-url)))))
(('pre ('@ ('class "lisp")) code-snippet ...)
`(pre (@ (class "lisp"))
,(highlights->sxml
(highlight lex-scheme
(concatenate-snippets code-snippet)))))
((tag ('@ attributes ...) body ...)
`(,tag (@ ,@attributes) ,@(map syntax-highlight body)))
((tag body ...)
`(,tag ,@(map syntax-highlight body)))
((? string? str)
str)))
(define (process-html file)
;; Parse FILE and perform syntax highlighting for its Scheme
;; snippets. Install the result to #$output.
(format (current-error-port) "processing ~a...~%" file)
(let* ((shtml (call-with-input-file file html->shtml))
(highlighted (syntax-highlight shtml))
(base (string-drop file (string-length #$input)))
(target (string-append #$output base)))
(mkdir-p (dirname target))
(call-with-output-file target
(lambda (port)
(write-shtml-as-html highlighted port)))))
(define (copy-as-is file)
;; Copy FILE as is to #$output.
(let* ((base (string-drop file (string-length #$input)))
(target (string-append #$output base)))
(mkdir-p (dirname target))
(catch 'system-error
(lambda ()
(if (eq? 'symlink (stat:type (lstat file)))
(symlink (readlink file) target)
(link file target)))
(lambda args
(let ((errno (system-error-errno args)))
(pk 'error-link file target (strerror errno))
(primitive-exit 3))))))
;; Install a UTF-8 locale so we can process UTF-8 files.
(setenv "GUIX_LOCPATH"
#+(file-append glibc-utf8-locales "/lib/locale"))
(setlocale LC_ALL "en_US.utf8")
(n-par-for-each (parallel-job-count)
(lambda (file)
(if (string-suffix? ".html" file)
(process-html file)
(copy-as-is file)))
(find-files #$input))))))
(computed-file name build))
(define* (html-manual source #:key (languages %languages)
(version "0.0")
(manual "guix")
@ -242,7 +352,10 @@ makeinfo OPTIONS."
"/html_node/images"))))
'#$languages))))
(computed-file (string-append manual "-html-manual") build))
(let* ((name (string-append manual "-html-manual"))
(manual (computed-file name build)))
(syntax-highlighted-html manual
#:name (string-append name "-highlighted"))))
(define* (pdf-manual source #:key (languages %languages)
(version "0.0")

View File

@ -5565,8 +5565,8 @@ specified in the @code{uri} field as a @code{git-reference} object; a
@example
(git-reference
(url "git://git.debian.org/git/pkg-shadow/shadow")
(commit "v4.1.5.1"))
(url "https://git.savannah.gnu.org/git/hello.git")
(commit "v2.10"))
@end example
@end table
@ -6034,6 +6034,29 @@ Packages built with @code{guile-build-system} must provide a Guile package in
their @code{native-inputs} field.
@end defvr
@defvr {Scheme Variable} julia-build-system
This variable is exported by @code{(guix build-system julia)}. It implements
the build procedure used by @uref{https://julialang.org/, julia} packages,
which essentially is similar to running @command{julia -e 'using Pkg;
Pkg.add(package)'} in an environment where @code{JULIA_LOAD_PATH} contains the
paths to all Julia package inputs. Tests are run not run.
Julia packages require the source @code{file-name} to be the real name of the
package, correctly capitalized.
For packages requiring shared library dependencies, you may need to write the
@file{/deps/deps.jl} file manually. It's usually a line of @code{const
variable = /gnu/store/libary.so} for each dependency, plus a void function
@code{check_deps() = nothing}.
Some older packages that aren't using @file{Package.toml} yet, will require
this file to be created, too. The function @code{julia-create-package-toml}
helps creating the file. You need to pass the outputs and the source of the
package, it's name (the same as the @code{file-name} parameter), the package
uuid, the package version, and a list of dependencies specified by their name
and their uuid.
@end defvr
@defvr {Scheme Variable} minify-build-system
This variable is exported by @code{(guix build-system minify)}. It
implements a minification procedure for simple JavaScript packages.
@ -8509,8 +8532,13 @@ guix import @var{importer} @var{options}@dots{}
@var{importer} specifies the source from which to import package
metadata, and @var{options} specifies a package identifier and other
options specific to @var{importer}. Currently, the available
``importers'' are:
options specific to @var{importer}.
Some of the importers rely on the ability to run the @command{gpgv} command.
For these, GnuPG must be installed and in @code{$PATH}; run @code{guix install
gnupg} if needed.
Currently, the available ``importers'' are:
@table @code
@item gnu
@ -8959,7 +8987,10 @@ update the version numbers and source tarball hashes of those package
recipes (@pxref{Defining Packages}). This is achieved by downloading
each package's latest source tarball and its associated OpenPGP
signature, authenticating the downloaded tarball against its signature
using @command{gpg}, and finally computing its hash. When the public
using @command{gpgv}, and finally computing its hash---note that GnuPG must be
installed and in @code{$PATH}; run @code{guix install gnupg} if needed.
When the public
key used to sign the tarball is missing from the user's keyring, an
attempt is made to automatically retrieve it from a public key server;
when this is successful, the key is added to the user's keyring; otherwise,
@ -9241,6 +9272,31 @@ Parse the @code{source} URL to determine if a tarball from GitHub is
autogenerated or if it is a release tarball. Unfortunately GitHub's
autogenerated tarballs are sometimes regenerated.
@item archival
@cindex Software Heritage, source code archive
@cindex archival of source code, Software Heritage
Checks whether the package's source code is archived at
@uref{https://www.softwareheritage.org, Software Heritage}.
When the source code that is not archived comes from a version-control system
(VCS)---e.g., it's obtained with @code{git-fetch}, send Software Heritage a
``save'' request so that it eventually archives it. This ensures that the
source will remain available in the long term, and that Guix can fall back to
Software Heritage should the source code disappear from its original host.
The status of recent ``save'' requests can be
@uref{https://archive.softwareheritage.org/save/#requests, viewed on-line}.
When source code is a tarball obtained with @code{url-fetch}, simply print a
message when it is not archived. As of this writing, Software Heritage does
not allow requests to save arbitrary tarballs; we are working on ways to
ensure that non-VCS source code is also archived.
Software Heritage
@uref{https://archive.softwareheritage.org/api/#rate-limiting, limits the
request rate per IP address}. When the limit is reached, @command{guix lint}
prints a message and the @code{archival} checker stops doing anything until
that limit has been reset.
@item cve
@cindex security vulnerabilities
@cindex CVE, Common Vulnerabilities and Exposures
@ -12620,13 +12676,14 @@ Either @code{#f} or a gexp to execute once the rotation has completed.
@end deftp
@defvr {Scheme Variable} %default-rotations
Specifies weekly rotation of @var{%rotated-files} and
a couple of other files.
Specifies weekly rotation of @var{%rotated-files} and of
@file{/var/log/guix-daemon.log}.
@end defvr
@defvr {Scheme Variable} %rotated-files
The list of syslog-controlled files to be rotated. By default it is:
@code{'("/var/log/messages" "/var/log/secure")}.
@code{'("/var/log/messages" "/var/log/secure" "/var/log/debug" \
"/var/log/maillog")}.
@end defvr
@node Networking Services
@ -14228,6 +14285,12 @@ programs.
Defaults to @samp{"lp"}.
@end deftypevr
@deftypevr {@code{files-configuration} parameter} string set-env
Set the specified environment variable to be passed to child processes.
Defaults to @samp{"variable value"}.
@end deftypevr
@end deftypevr
@deftypevr {@code{cups-configuration} parameter} access-log-level access-log-level
@ -14248,6 +14311,14 @@ longer required for quotas.
Defaults to @samp{#f}.
@end deftypevr
@deftypevr {@code{cups-configuration} parameter} comma-separated-string-list browse-dns-sd-sub-types
Specifies a list of DNS-SD sub-types to advertise for each shared printer.
For example, @samp{"_cups" "_print"} will tell network clients that both
CUPS sharing and IPP Everywhere are supported.
Defaults to @samp{"_cups"}.
@end deftypevr
@deftypevr {@code{cups-configuration} parameter} browse-local-protocols browse-local-protocols
Specifies which protocols to use for local printer sharing.
@ -14333,7 +14404,7 @@ Defaults to @samp{30}.
Specifies what to do when an error occurs. Possible values are
@code{abort-job}, which will discard the failed print job;
@code{retry-job}, which will retry the job at a later time;
@code{retry-this-job}, which retries the failed job immediately; and
@code{retry-current-job}, which retries the failed job immediately; and
@code{stop-printer}, which stops the printer.
Defaults to @samp{stop-printer}.
@ -14747,12 +14818,6 @@ the output of the @code{uname} command. @code{Full} reports @code{CUPS
Defaults to @samp{Minimal}.
@end deftypevr
@deftypevr {@code{cups-configuration} parameter} string set-env
Set the specified environment variable to be passed to child processes.
Defaults to @samp{"variable value"}.
@end deftypevr
@deftypevr {@code{cups-configuration} parameter} multiline-string-list ssl-listen
Listens on the specified interfaces for encrypted connections. Valid
values are of the form @var{address}:@var{port}, where @var{address} is
@ -21369,12 +21434,12 @@ the @code{"custom-packages"} input, which is the equivalent of
(#:branch . "master")
(#:no-compile? . #t))
((#:name . "config")
(#:url . "git://git.example.org/config.git")
(#:url . "https://git.example.org/config.git")
(#:load-path . ".")
(#:branch . "master")
(#:no-compile? . #t))
((#:name . "custom-packages")
(#:url . "git://git.example.org/custom-packages.git")
(#:url . "https://git.example.org/custom-packages.git")
(#:load-path . ".")
(#:branch . "master")
(#:no-compile? . #t)))))))
@ -25561,6 +25626,7 @@ evaluates to. As an example, @var{file} might contain a definition like this:
(environment managed-host-environment-type)
(configuration (machine-ssh-configuration
(host-name "localhost")
(system "x86_64-linux")
(user "alice")
(identity "./id_rsa")
(port 2222)))))

View File

@ -345,6 +345,17 @@ sys_enable_guix_daemon()
{ cp "${ROOT_HOME}/.config/guix/current/lib/systemd/system/guix-daemon.service" \
/etc/systemd/system/;
chmod 664 /etc/systemd/system/guix-daemon.service;
# Work around <https://bugs.gnu.org/36074>, present in 1.0.1.
sed -i /etc/systemd/system/guix-daemon.service \
-e "s/GUIX_LOCPATH='/'GUIX_LOCPATH=/";
# Work around <https://bugs.gnu.org/35671>, present in 1.0.1.
if ! grep en_US /etc/systemd/system/guix-daemon.service >/dev/null;
then sed -i /etc/systemd/system/guix-daemon.service \
-e 's/^Environment=\(.*\)$/Environment=\1 LC_ALL=en_US.UTF-8';
fi;
systemctl daemon-reload &&
systemctl start guix-daemon &&
systemctl enable guix-daemon; } &&

View File

@ -2,6 +2,7 @@
;;; Copyright © 2017 David Craven <david@craven.ch>
;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
;;; Copyright © 2017 Leo Famulari <leo@famulari.name>
;;; Copyright © 2019 Ludovic Courtès <ludo@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@ -23,6 +24,7 @@
#:use-module (guix records)
#:use-module (guix ui)
#:use-module (srfi srfi-1)
#:use-module (ice-9 match)
#:export (menu-entry
menu-entry?
menu-entry-label
@ -32,6 +34,9 @@
menu-entry-initrd
menu-entry-device-mount-point
menu-entry->sexp
sexp->menu-entry
bootloader
bootloader?
bootloader-name
@ -76,6 +81,35 @@
(default '())) ; list of string-valued gexps
(initrd menu-entry-initrd)) ; file name of the initrd as a gexp
(define (menu-entry->sexp entry)
"Return ENTRY serialized as an sexp."
(match entry
(($ <menu-entry> label device mount-point linux linux-arguments initrd)
`(menu-entry (version 0)
(label ,label)
(device ,device)
(device-mount-point ,mount-point)
(linux ,linux)
(linux-arguments ,linux-arguments)
(initrd ,initrd)))))
(define (sexp->menu-entry sexp)
"Turn SEXP, an sexp as returned by 'menu-entry->sexp', into a <menu-entry>
record."
(match sexp
(('menu-entry ('version 0)
('label label) ('device device)
('device-mount-point mount-point)
('linux linux) ('linux-arguments linux-arguments)
('initrd initrd) _ ...)
(menu-entry
(label label)
(device device)
(device-mount-point mount-point)
(linux linux)
(linux-arguments linux-arguments)
(initrd initrd)))))
;;;
;;; Bootloader record.
@ -108,7 +142,7 @@
(bootloader bootloader-configuration-bootloader) ;<bootloader>
(target bootloader-configuration-target ;string
(default #f))
(menu-entries bootloader-configuration-menu-entries ;list of <boot-parameters>
(menu-entries bootloader-configuration-menu-entries ;list of <menu-entry>
(default '()))
(default-entry bootloader-configuration-default-entry ;integer
(default 0))

View File

@ -1362,7 +1362,6 @@ dist_patch_DATA = \
%D%/packages/patches/totem-meson-compat.patch \
%D%/packages/patches/totem-meson-easy-codec.patch \
%D%/packages/patches/tuxpaint-stamps-path.patch \
%D%/packages/patches/twinkle-include-qregexpvalidator.patch \
%D%/packages/patches/txr-shell.patch \
%D%/packages/patches/u-boot-fix-mkimage-header-verification.patch \
%D%/packages/patches/unzip-CVE-2014-8139.patch \
@ -1420,7 +1419,6 @@ dist_patch_DATA = \
%D%/packages/patches/xf86-video-tga-remove-mibstore.patch \
%D%/packages/patches/xf86-video-voodoo-pcitag.patch \
%D%/packages/patches/xfce4-panel-plugins.patch \
%D%/packages/patches/xfce4-session-fix-xflock4.patch \
%D%/packages/patches/xfce4-settings-defaults.patch \
%D%/packages/patches/xinetd-fix-fd-leak.patch \
%D%/packages/patches/xinetd-CVE-2013-4342.patch \

View File

@ -1500,7 +1500,7 @@ module slots, and the list of I/O ports (e.g. serial, parallel, USB).")
(define-public acpica
(package
(name "acpica")
(version "20190703")
(version "20190816")
(source (origin
(method url-fetch)
(uri (string-append
@ -1508,7 +1508,7 @@ module slots, and the list of I/O ports (e.g. serial, parallel, USB).")
version ".tar.gz"))
(sha256
(base32
"0kp3ian3lffx9709ajrr3bp6b9cb6c6v1crjziyr8j8pp639jlwz"))))
"0lipy3jwl498lvgwzj6xcvmg61myl7hhilpallh1cf3ppgrq13l8"))))
(build-system gnu-build-system)
(native-inputs `(("flex" ,flex)
("bison" ,bison)))

View File

@ -22,9 +22,9 @@
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu packages agda)
#:use-module (gnu packages haskell)
#:use-module (gnu packages haskell-check)
#:use-module (gnu packages haskell-web)
#:use-module (gnu packages haskell-xyz)
#:use-module (guix build-system emacs)
#:use-module (guix build-system gnu)
#:use-module (guix build-system haskell)

View File

@ -3693,7 +3693,7 @@ library.")
(define-public faudio
(package
(name "faudio")
(version "19.08")
(version "19.09")
(source
(origin
(method git-fetch)
@ -3702,7 +3702,7 @@ library.")
(commit version)))
(file-name (string-append name "-" version "-checkout"))
(sha256
(base32 "1v13kfhyr46241vb6a4dcb4gw5f149525sprwa9cj4rv6wlcqgm5"))))
(base32 "0fagik55jmy3qmb27nhg0zxash1ahfkxphx8m8gs0pimqqrdrd9d"))))
(arguments
'(#:tests? #f ; No tests.
#:configure-flags '("-DFFMPEG=ON")))

View File

@ -17,9 +17,6 @@
"alternate_error_pages": {
"enabled": false
},
"hardware": {
"audio_capture_enabled": false
},
"default_apps": "noinstall",
"hide_web_store_icon": true,
"homepage": "https://www.gnu.org/software/guix/"

View File

@ -8023,7 +8023,7 @@ CONFIG_VALIDATE_FS_PARSER=y
CONFIG_FS_IOMAP=y
# CONFIG_EXT2_FS is not set
# CONFIG_EXT3_FS is not set
CONFIG_EXT4_FS=m
CONFIG_EXT4_FS=y
CONFIG_EXT4_USE_FOR_EXT2=y
CONFIG_EXT4_FS_POSIX_ACL=y
CONFIG_EXT4_FS_SECURITY=y

View File

@ -1112,8 +1112,8 @@ to the @code{share/locale} sub-directory of this package.")
;; tests---e.g., in Guile's i18n tests.
'("de_DE" "el_GR" "en_US" "fr_FR" "tr_TR"))
#t))))
(inputs `(("glibc" ,glibc)
("gzip" ,gzip)))
(native-inputs `(("glibc" ,glibc)
("gzip" ,gzip)))
(synopsis "Small sample of UTF-8 locales")
(description
"This package provides a small sample of UTF-8 locales mostly useful in

View File

@ -31,7 +31,7 @@
#:use-module (gnu packages compression)
#:use-module (gnu packages gcc)
#:use-module (gnu packages graph)
#:use-module (gnu packages haskell)
#:use-module (gnu packages haskell-xyz)
#:use-module (gnu packages image)
#:use-module (gnu packages maths)
#:use-module (gnu packages netpbm)
@ -532,6 +532,28 @@ annotations for the genome of the model mouse Mus musculus.")
by UCSC (hg19, February 2009) and stored in Biostrings objects.")
(license license:artistic2.0)))
(define-public r-ensdb-hsapiens-v75
(package
(name "r-ensdb-hsapiens-v75")
(version "2.99.0")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "EnsDb.Hsapiens.v75" version 'annotation))
(sha256
(base32
"0jx6rf6v0j8yr07q3c1h7s121901dc400nm6xaiv4i7kb5czjn9c"))))
(properties
`((upstream-name . "EnsDb.Hsapiens.v75")))
(build-system r-build-system)
(propagated-inputs
`(("r-ensembldb" ,r-ensembldb)))
(home-page "https://bioconductor.org/packages/EnsDb.Hsapiens.v75")
(synopsis "Ensembl based annotation package")
(description
"This package exposes an annotation database generated from Ensembl.")
(license license:artistic2.0)))
(define-public r-genelendatabase
(package
(name "r-genelendatabase")
@ -686,6 +708,31 @@ the TxDb object of Mouse data as provided by UCSC (mm10, December 2011)
based on the knownGene track.")
(license license:artistic2.0)))
(define-public r-txdb-celegans-ucsc-ce6-ensgene
(package
(name "r-txdb-celegans-ucsc-ce6-ensgene")
(version "3.2.2")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "TxDb.Celegans.UCSC.ce6.ensGene"
version 'annotation))
(sha256
(base32
"1sgppva33cdy4isj2is8mfalj5gmmkpbkq9w1d83a4agcq31mi90"))))
(properties
`((upstream-name . "TxDb.Celegans.UCSC.ce6.ensGene")))
(build-system r-build-system)
(propagated-inputs
`(("r-annotationdbi" ,r-annotationdbi)
("r-genomicfeatures" ,r-genomicfeatures)))
(home-page "https://bioconductor.org/packages/TxDb.Celegans.UCSC.ce6.ensGene/")
(synopsis "Annotation package for C elegans TxDb objects")
(description
"This package exposes a C elegans annotation database generated from UCSC
by exposing these as TxDb objects.")
(license license:artistic2.0)))
(define-public r-fdb-infiniummethylation-hg19
(package
(name "r-fdb-infiniummethylation-hg19")
@ -2977,14 +3024,14 @@ phenotype of interest.")
(define-public r-fgsea
(package
(name "r-fgsea")
(version "1.10.0")
(version "1.10.1")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "fgsea" version))
(sha256
(base32
"07mvv1i690q80fm8sxgdqxchamn76409vn91ppgcck2xpi6b8q6c"))))
"1k2f9hkp1mvc9fpqzhbf08jd0yg4xaa312v9vy37fxd9pyrwp5a6"))))
(build-system r-build-system)
(propagated-inputs
`(("r-bh" ,r-bh)
@ -5000,14 +5047,14 @@ self-organizing map clustering and minimal spanning trees.")
(define-public r-mixomics
(package
(name "r-mixomics")
(version "6.8.0")
(version "6.8.2")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "mixOmics" version))
(sha256
(base32
"1f08jx35amn3sfcmqb96mjxxsm6dnpzhff625z758x1992wj4zsk"))))
"0issfrhsgc102sr33q9v6w6jrrd32plig7szd1nm0n4r3yn4y2fc"))))
(properties `((upstream-name . "mixOmics")))
(build-system r-build-system)
(propagated-inputs
@ -5230,3 +5277,192 @@ cis-regulatory topics (cisTopics) from single cell epigenomics data, and
includes functionalities to identify cell states based on the contribution of
cisTopics and explore the nature and regulatory proteins driving them.")
(license license:gpl3))))
(define-public r-genie3
(package
(name "r-genie3")
(version "1.6.0")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "GENIE3" version))
(sha256
(base32
"0lvrpw4xn7xyinmn13f65i0vkzfzwdj5y8gsa8vyy8kcn83d28fx"))))
(properties `((upstream-name . "GENIE3")))
(build-system r-build-system)
(propagated-inputs `(("r-reshape2" ,r-reshape2)))
(home-page "https://bioconductor.org/packages/GENIE3")
(synopsis "Gene network inference with ensemble of trees")
(description
"This package implements the GENIE3 algorithm for inferring gene
regulatory networks from expression data.")
(license license:gpl2+)))
(define-public r-roc
(package
(name "r-roc")
(version "1.60.0")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "ROC" version))
(sha256
(base32
"1sapnl8kyaldgvdc657wqcmyjb24nvrnaw7v94bbs8yf5pmfm71c"))))
(properties `((upstream-name . "ROC")))
(build-system r-build-system)
(home-page "https://www.bioconductor.org/packages/ROC/")
(synopsis "Utilities for ROC curves")
(description
"This package provides utilities for @dfn{Receiver Operating
Characteristic} (ROC) curves, with a focus on micro arrays.")
(license license:artistic2.0)))
(define-public r-illuminahumanmethylation450kanno-ilmn12-hg19
(package
(name "r-illuminahumanmethylation450kanno-ilmn12-hg19")
(version "0.6.0")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri
"IlluminaHumanMethylation450kanno.ilmn12.hg19"
version 'annotation))
(sha256
(base32
"059vlxsx3p3fcnywwirahsc6mlk813zpqnbv0jsrag6x5bb8z6r4"))))
(properties
`((upstream-name
. "IlluminaHumanMethylation450kanno.ilmn12.hg19")))
(build-system r-build-system)
(propagated-inputs `(("r-minfi" ,r-minfi)))
(home-page
"https://bioconductor.org/packages/IlluminaHumanMethylation450kanno.ilmn12.hg19/")
(synopsis "Annotation for Illumina's 450k methylation arrays")
(description
"This package provides manifests and annotation for Illumina's 450k array
data.")
(license license:artistic2.0)))
(define-public r-watermelon
(package
(name "r-watermelon")
(version "1.28.0")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "wateRmelon" version))
(sha256
(base32
"0354ahmfvhqw3yfp17rmz35vlgjp262n4q3hr8qyccyrnk2dz17z"))))
(properties `((upstream-name . "wateRmelon")))
(build-system r-build-system)
(propagated-inputs
`(("r-biobase" ,r-biobase)
("r-illuminahumanmethylation450kanno-ilmn12-hg19"
,r-illuminahumanmethylation450kanno-ilmn12-hg19)
("r-illuminaio" ,r-illuminaio)
("r-limma" ,r-limma)
("r-lumi" ,r-lumi)
("r-matrixstats" ,r-matrixstats)
("r-methylumi" ,r-methylumi)
("r-roc" ,r-roc)))
(home-page "https://bioconductor.org/packages/wateRmelon/")
(synopsis "Illumina 450 methylation array normalization and metrics")
(description
"The standard index of DNA methylation (beta) is computed from methylated
and unmethylated signal intensities. Betas calculated from raw signal
intensities perform well, but using 11 methylomic datasets we demonstrate that
quantile normalization methods produce marked improvement. The commonly used
procedure of normalizing betas is inferior to the separate normalization of M
and U, and it is also advantageous to normalize Type I and Type II assays
separately. This package provides 15 flavours of betas and three performance
metrics, with methods for objects produced by the @code{methylumi} and
@code{minfi} packages.")
(license license:gpl3)))
(define-public r-gdsfmt
(package
(name "r-gdsfmt")
(version "1.20.0")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "gdsfmt" version))
(sha256
(base32
"0h3hgwxq26dg09fyxqg545v9dg1dizsj58cf05rncr3jj4f8g0xy"))
(modules '((guix build utils)))
;; Remove bundled sources of zlib, lz4, and xz. Don't attempt to build
;; them and link with system libraries instead.
(snippet
'(begin
(for-each delete-file-recursively
'("src/LZ4"
"src/XZ"
"src/ZLIB"))
(substitute* "src/Makevars"
(("all: \\$\\(SHLIB\\)") "all:")
(("\\$\\(SHLIB\\): liblzma.a") "")
(("(ZLIB|LZ4)/.*") "")
(("CoreArray/dVLIntGDS.cpp.*")
"CoreArray/dVLIntGDS.cpp")
(("CoreArray/dVLIntGDS.o.*")
"CoreArray/dVLIntGDS.o")
(("PKG_LIBS = ./liblzma.a")
"PKG_LIBS = -llz4"))
(substitute* "src/CoreArray/dStream.h"
(("include \"../(ZLIB|LZ4|XZ/api)/(.*)\"" _ _ header)
(string-append "include <" header ">")))
#t))))
(properties `((upstream-name . "gdsfmt")))
(build-system r-build-system)
(inputs
`(("lz4" ,lz4)
("xz" ,xz)
("zlib" ,zlib)))
(home-page "http://corearray.sourceforge.net/")
(synopsis
"R Interface to CoreArray Genomic Data Structure (GDS) Files")
(description
"This package provides a high-level R interface to CoreArray @dfn{Genomic
Data Structure} (GDS) data files, which are portable across platforms with
hierarchical structure to store multiple scalable array-oriented data sets
with metadata information. It is suited for large-scale datasets, especially
for data which are much larger than the available random-access memory. The
@code{gdsfmt} package offers efficient operations specifically designed for
integers of less than 8 bits, since a diploid genotype, like
@dfn{single-nucleotide polymorphism} (SNP), usually occupies fewer bits than a
byte. Data compression and decompression are available with relatively
efficient random access. It is also allowed to read a GDS file in parallel
with multiple R processes supported by the package @code{parallel}.")
(license license:lgpl3)))
(define-public r-bigmelon
(package
(name "r-bigmelon")
(version "1.10.0")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "bigmelon" version))
(sha256
(base32
"0269kf3d34dbng3swk7pclpk02vy4k3askygmzi5my3fqyfzdkj9"))))
(properties `((upstream-name . "bigmelon")))
(build-system r-build-system)
(propagated-inputs
`(("r-biobase" ,r-biobase)
("r-biocgenerics" ,r-biocgenerics)
("r-gdsfmt" ,r-gdsfmt)
("r-geoquery" ,r-geoquery)
("r-methylumi" ,r-methylumi)
("r-minfi" ,r-minfi)
("r-watermelon" ,r-watermelon)))
(home-page "https://bioconductor.org/packages/bigmelon/")
(synopsis "Illumina methylation array analysis for large experiments")
(description
"This package provides methods for working with Illumina arrays using the
@code{gdsfmt} package.")
(license license:gpl3)))

View File

@ -77,9 +77,9 @@
#:use-module (gnu packages groff)
#:use-module (gnu packages guile)
#:use-module (gnu packages guile-xyz)
#:use-module (gnu packages haskell)
#:use-module (gnu packages haskell-check)
#:use-module (gnu packages haskell-web)
#:use-module (gnu packages haskell-xyz)
#:use-module (gnu packages image)
#:use-module (gnu packages imagemagick)
#:use-module (gnu packages java)
@ -1758,8 +1758,8 @@ well as many of the command line options.")
(add-after 'unpack 'keep-references-to-bwa
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "bwameth.py"
(("bwa mem")
(string-append (which "bwa") " mem"))
(("bwa (mem|index)" _ command)
(string-append (which "bwa") " " command))
;; There's an ill-advised check for "samtools" on PATH.
(("^checkX.*") ""))
#t)))))
@ -2344,16 +2344,16 @@ other types of unwanted sequence from high-throughput sequencing reads.")
(define-public libbigwig
(package
(name "libbigwig")
(version "0.4.2")
(version "0.4.4")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/dpryan79/libBigWig.git")
(commit version)))
(file-name (string-append name "-" version "-checkout"))
(file-name (git-file-name name version))
(sha256
(base32
"0h2smg24v5srdcqzrmz2g23cmlp4va465mgx8r2z571sfz8pv454"))))
"09693dmf1scdac5pyq6qyn8b4mcipvnmc370k9a5z41z81m3dcsj"))))
(build-system gnu-build-system)
(arguments
`(#:test-target "test"
@ -7367,13 +7367,13 @@ S4Vectors package itself.")
(define-public r-iranges
(package
(name "r-iranges")
(version "2.18.1")
(version "2.18.2")
(source (origin
(method url-fetch)
(uri (bioconductor-uri "IRanges" version))
(sha256
(base32
"1d64sh43pfc9vj2l7y7x6sb44l67wlnn3dzygp7ws0smn06mardq"))))
"0dc35844c1mfj07hvy6yn4wag6qdggbgl9gjcg3wpkh9hkm60a5n"))))
(properties
`((upstream-name . "IRanges")))
(build-system r-build-system)
@ -7620,13 +7620,13 @@ on Bioconductor or which replace R functions.")
(define-public r-annotationdbi
(package
(name "r-annotationdbi")
(version "1.46.0")
(version "1.46.1")
(source (origin
(method url-fetch)
(uri (bioconductor-uri "AnnotationDbi" version))
(sha256
(base32
"0lfq5668a6sq4kqhxx78hl3jcaqdsaaliiybl9xyya2scdk8c29c"))))
"13nanz4nzy0mcda8ljz2g8d81hpqfz6jky7ydz5hpk0g2264b9ga"))))
(properties
`((upstream-name . "AnnotationDbi")))
(build-system r-build-system)
@ -7647,13 +7647,13 @@ annotation data packages using SQLite data storage.")
(define-public r-biomart
(package
(name "r-biomart")
(version "2.40.3")
(version "2.40.4")
(source (origin
(method url-fetch)
(uri (bioconductor-uri "biomaRt" version))
(sha256
(base32
"022m1r44s00c5k9bmv0lr22lcn662nhc91aazvv0yyysxjamyf60"))))
"0dj51qkxm7bh24b3bs1di7lic6zgi7g5gf9iqkqhrwkbm7sqvn0v"))))
(properties
`((upstream-name . "biomaRt")))
(build-system r-build-system)
@ -7872,13 +7872,13 @@ alignments.")
(define-public r-rtracklayer
(package
(name "r-rtracklayer")
(version "1.44.2")
(version "1.44.3")
(source (origin
(method url-fetch)
(uri (bioconductor-uri "rtracklayer" version))
(sha256
(base32
"03b4rfsbzjjf5kxcsjv7kq8hrsgcvz9rfzcn2v7fx3nr818pbb8s"))))
"091zydz1zpz519ha0jkbvzrhxjvw5r2963qz9grmvl2jd8girvcg"))))
(build-system r-build-system)
(arguments
`(#:phases
@ -9446,13 +9446,13 @@ and irregular enzymatic cleavages, mass measurement accuracy, etc.")
(define-public r-seurat
(package
(name "r-seurat")
(version "3.0.2")
(version "3.1.0")
(source (origin
(method url-fetch)
(uri (cran-uri "Seurat" version))
(sha256
(base32
"016fgcmjz3sjfxdvam5hd7mdxpmpnc7f6p5zqlh97m21dgn5vpqn"))))
"0icxndnnkkmmr9hhd01dv3w8pih7x9r0rlp3fq9pk3qajp9gmlyq"))))
(properties `((upstream-name . "Seurat")))
(build-system r-build-system)
(propagated-inputs
@ -9469,6 +9469,7 @@ and irregular enzymatic cleavages, mass measurement accuracy, etc.")
("r-igraph" ,r-igraph)
("r-irlba" ,r-irlba)
("r-kernsmooth" ,r-kernsmooth)
("r-leiden" ,r-leiden)
("r-lmtest" ,r-lmtest)
("r-mass" ,r-mass)
("r-matrix" ,r-matrix)
@ -9479,6 +9480,7 @@ and irregular enzymatic cleavages, mass measurement accuracy, etc.")
("r-rann" ,r-rann)
("r-rcolorbrewer" ,r-rcolorbrewer)
("r-rcpp" ,r-rcpp)
("r-rcppannoy" ,r-rcppannoy)
("r-rcppeigen" ,r-rcppeigen)
("r-rcppprogress" ,r-rcppprogress)
("r-reticulate" ,r-reticulate)
@ -9489,7 +9491,8 @@ and irregular enzymatic cleavages, mass measurement accuracy, etc.")
("r-scales" ,r-scales)
("r-sctransform" ,r-sctransform)
("r-sdmtools" ,r-sdmtools)
("r-tsne" ,r-tsne)))
("r-tsne" ,r-tsne)
("r-uwot" ,r-uwot)))
(home-page "http://www.satijalab.org/seurat")
(synopsis "Seurat is an R toolkit for single cell genomics")
(description
@ -10176,22 +10179,24 @@ by Ernst and Kellis.")
(define-public r-ldblock
(package
(name "r-ldblock")
(version "1.14.0")
(version "1.14.2")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "ldblock" version))
(sha256
(base32
"0lraxhq9ny3468534klrl64nx0dpaf9cbd5bir6m5qma8j7kfnyd"))))
"0xx04cghx6ads1ackwnw3z0gf72qv461nznzmcnkgmp7w5n9m2af"))))
(build-system r-build-system)
(propagated-inputs
`(("r-biocgenerics" ,r-biocgenerics)
("r-erma" ,r-erma)
("r-ensdb-hsapiens-v75" ,r-ensdb-hsapiens-v75)
("r-ensembldb" ,r-ensembldb)
("r-genomeinfodb" ,r-genomeinfodb)
("r-genomicfiles" ,r-genomicfiles)
("r-go-db" ,r-go-db)
("r-homo-sapiens" ,r-homo-sapiens)
("r-httr" ,r-httr)
("r-matrix" ,r-matrix)
("r-rsamtools" ,r-rsamtools)
("r-snpstats" ,r-snpstats)
@ -13412,8 +13417,7 @@ bgzipped text file that contains a pair of genomic coordinates per line.")
"0y5zyjksj1rdglj601xd2bbni5abhdh622y3ck76chyzxz9z4rx8"))))
(build-system python-build-system)
(propagated-inputs
`(("python-setuptools" ,python-setuptools)
("python-six" ,python-six)))
`(("python-six" ,python-six)))
(home-page "http://mattshirley.com")
(synopsis "Random access to fasta subsequences")
(description
@ -14653,16 +14657,14 @@ proximity within a reference genome.")
"08y3vz1vcx09whmbsn722lcs6jl9wyrh9i4p3k8j4cb1i32bij4a"))))
(build-system python-build-system)
(inputs
`(("python-setuptools" ,python-setuptools)
("python-pandas" ,python-pandas)
`(("python-pandas" ,python-pandas)
("python-future" ,python-future)
("python-scipy" ,python-scipy)
("python-matplotlib" ,python-matplotlib)
("python-regex" ,python-regex)
("python-pysam" ,python-pysam)))
(native-inputs
`(("python-setuptools" ,python-setuptools)
("python-cython" ,python-cython)))
`(("python-cython" ,python-cython)))
(home-page "https://github.com/CGATOxford/UMI-tools")
(synopsis "Tools for analyzing unique modular identifiers")
(description "This package provides tools for dealing with @dfn{Unique
@ -15215,3 +15217,37 @@ indels (insertions and deletions), MNPs (multi-nucleotide polymorphisms), and
complex events (composite insertion and substitution events) smaller than the
length of a short-read sequencing alignment.")
(license license:expat))))
(define-public samblaster
(package
(name "samblaster")
(version "0.1.24")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/GregoryFaust/samblaster.git")
(commit (string-append "v." version))))
(file-name (git-file-name name version))
(sha256
(base32
"0iv2ddfw8363vb2x8gr3p8g88whb6mb9m0pf71i2cqsbv6jghap7"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; there are none
#:phases
(modify-phases %standard-phases
(delete 'configure) ; There is no configure phase.
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(install-file "samblaster"
(string-append (assoc-ref outputs "out") "/bin"))
#t)))))
(home-page "https://github.com/GregoryFaust/samblaster")
(synopsis "Mark duplicates in paired-end SAM files")
(description "Samblaster is a fast and flexible program for marking
duplicates in read-id grouped paired-end SAM files. It can also optionally
output discordant read pairs and/or split read mappings to separate SAM files,
and/or unmapped/clipped reads to a separate FASTQ file. When marking
duplicates, samblaster will require approximately 20MB of memory per 1M read
pairs.")
(license license:expat)))

View File

@ -99,7 +99,7 @@
(list "PYTHON=true")
#:phases (modify-phases %standard-phases
(add-after 'unpack 'patch-stuff
(lambda* (#:key inputs #:allow-other-keys)
(lambda* (#:key native-inputs inputs #:allow-other-keys)
(substitute* "grub-core/Makefile.in"
(("/bin/sh") (which "sh")))
@ -114,7 +114,9 @@
"/sbin/mdadm\"")))
;; Make the font visible.
(copy-file (assoc-ref inputs "unifont") "unifont.bdf.gz")
(copy-file (assoc-ref (or native-inputs inputs)
"unifont")
"unifont.bdf.gz")
(system* "gunzip" "unifont.bdf.gz")
;; Give the absolute file name of 'ckbcomp'.

View File

@ -884,7 +884,7 @@ CD data, and more. It's mostly compatible with @code{cdrtools}.")
(define-public libmirage
(package
(name "libmirage")
(version "3.2.2")
(version "3.2.3")
(source (origin
(method url-fetch)
(uri (string-append
@ -892,7 +892,7 @@ CD data, and more. It's mostly compatible with @code{cdrtools}.")
version ".tar.bz2"))
(sha256
(base32
"0gwrfia0fyhi0b3p2pfyyvrcfcb0qysfzgpdqsqjqbx4xaqx5wpi"))))
"08mfvqyk3833ksfd47i4j3ppmrw5ry219km6h7lywdh9hm9x14yf"))))
(build-system cmake-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)
@ -913,7 +913,7 @@ the data stored in various image formats.")
(define-public cdemu-daemon
(package
(name "cdemu-daemon")
(version "3.2.2")
(version "3.2.3")
(source (origin
(method url-fetch)
(uri (string-append
@ -921,7 +921,7 @@ the data stored in various image formats.")
version ".tar.bz2"))
(sha256
(base32
"0himyrhhfjsr4ff5aci7240bpm9x34h20pid412ci8fm16nk929b"))))
"022xzgwmncswb9md71w3ly3mjkdfc93lbij2llp2jamq8grxjjxr"))))
(build-system cmake-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)
@ -942,7 +942,7 @@ drive and disc (including CD-ROMs and DVD-ROMs).")
(define-public cdemu-client
(package
(name "cdemu-client")
(version "3.2.1")
(version "3.2.3")
(source (origin
(method url-fetch)
(uri (string-append
@ -950,7 +950,7 @@ drive and disc (including CD-ROMs and DVD-ROMs).")
version ".tar.bz2"))
(sha256
(base32
"1d8m24qvv62xcwafw5zs4yf39vs64kxl4idqcngd8yyjhrb2ykg5"))))
"1bvc2m63fx03rbp3ihgl2n7k24lwg5ydwkmr84gsjfcxp46q10zq"))))
(build-system cmake-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)

View File

@ -21,6 +21,7 @@
#:use-module (gnu packages agda)
#:use-module (gnu packages emacs-xyz)
#:use-module (gnu packages haskell)
#:use-module (gnu packages haskell-xyz)
#:use-module (guix build-system emacs)
#:use-module (guix git-download)
#:use-module ((guix licenses) #:prefix license:)

View File

@ -2361,11 +2361,12 @@ exec ~a/bin/~a-~a -B~a/lib -Wl,-dynamic-linker -Wl,~a/~a \"$@\"~%"
;; function.)
(package
(inherit glibc-utf8-locales)
(inputs `(("glibc" ,glibc-final)
("gzip"
,(package-with-explicit-inputs gzip %boot4-inputs
(current-source-location)
#:guile %bootstrap-guile))))))
(native-inputs
`(("glibc" ,glibc-final)
("gzip"
,(package-with-explicit-inputs gzip %boot4-inputs
(current-source-location)
#:guile %bootstrap-guile))))))
(define-public ld-wrapper
;; The final 'ld' wrapper, which uses the final Guile and Binutils.

View File

@ -37,7 +37,7 @@
(package
(name "conky")
(home-page "https://github.com/brndnmtthws/conky")
(version "1.11.3")
(version "1.11.5")
(source
(origin
(method git-fetch)
@ -46,10 +46,10 @@
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0pdl31xvmy8niagzqx9sd2b6hc6lzwfiaz66m4djf1gz9bksc8qv"))))
(base32 "1a75ss48mn9pknrxy33dh5rdgm67a5kpddsyqfhlcn1761kfzzyp"))))
(build-system cmake-build-system)
(arguments
`(#:tests? #f ; there are no tests
`(#:tests? #f ; there are no tests
#:configure-flags
(list "-DRELEASE=true")
#:phases

View File

@ -53,7 +53,7 @@
#:use-module (gnu packages gnome)
#:use-module (gnu packages graph)
#:use-module (gnu packages gtk)
#:use-module (gnu packages haskell)
#:use-module (gnu packages haskell-xyz)
#:use-module (gnu packages icu4c)
#:use-module (gnu packages image)
#:use-module (gnu packages imagemagick)
@ -166,14 +166,14 @@ objects.")
(define-public r-sys
(package
(name "r-sys")
(version "3.2")
(version "3.3")
(source
(origin
(method url-fetch)
(uri (cran-uri "sys" version))
(sha256
(base32
"1k5vk5q9wa5sin0n226i05nymg469s24f6lx64yyhb7yc624j698"))))
"14wvy46i2iz9jn7lj3cvifmps932s3395wq681hniva0f8m7q8d6"))))
(build-system r-build-system)
(home-page "https://github.com/jeroen/sys")
(synopsis "Powerful and reliable tools for running system commands in R")
@ -212,14 +212,14 @@ read a protected key.")
(define-public r-vegan
(package
(name "r-vegan")
(version "2.5-5")
(version "2.5-6")
(source
(origin
(method url-fetch)
(uri (cran-uri "vegan" version))
(sha256
(base32
"0wb90ng02gi13854bjq0b8a2vrknyhb0s0l1v3z38c4zy9k54sw7"))))
"0g60rgn1i7wqf9pf5m1yki1m45gcp7i5hmjic0ci0f6vng70mh5k"))))
(build-system r-build-system)
(native-inputs
`(("gfortran" ,gfortran)))
@ -872,14 +872,14 @@ well as file saving is available.")
(define-public r-d3r
(package
(name "r-d3r")
(version "0.8.6")
(version "0.8.7")
(source
(origin
(method url-fetch)
(uri (cran-uri "d3r" version))
(sha256
(base32
"0vcmiyhd000xyl28k6rm7ba50x5sz5b2cpllxnq36q13qhdnqw6k"))))
"0xl3im76lp7pd5lhp8jfyqdm4j4zvjrx5a5fl81xv2cf7x3n4f2a"))))
(build-system r-build-system)
(arguments
`(#:modules ((guix build utils)
@ -1122,14 +1122,14 @@ coordinates.")
(define-public r-rgooglemaps
(package
(name "r-rgooglemaps")
(version "1.4.3")
(version "1.4.4")
(source
(origin
(method url-fetch)
(uri (cran-uri "RgoogleMaps" version))
(sha256
(base32
"06ab3lg1rwm93hkshf1vxfm8mlxq5qsjan0wx43lhnrysay65js4"))))
"0sbklacc4jl5524ixhc11mh6smrzdz4l9pji6cn402i6zdn9z05x"))))
(properties `((upstream-name . "RgoogleMaps")))
(build-system r-build-system)
(propagated-inputs `(("r-png" ,r-png)))
@ -1441,14 +1441,14 @@ processes. Most of its code is based on the @code{psutil} Python package.")
(define-public r-pkgbuild
(package
(name "r-pkgbuild")
(version "1.0.4")
(version "1.0.5")
(source
(origin
(method url-fetch)
(uri (cran-uri "pkgbuild" version))
(sha256
(base32
"0prvx91dha5pvd0k4jca2arkngvi6vnfs2indmiy3kwwzyjyyd19"))))
"0y4i85axwajrk67h3w6fiqfm6wxmhn3dr240w5l2nvqg3ahpxc8q"))))
(build-system r-build-system)
(propagated-inputs
`(("r-callr" ,r-callr)
@ -1649,14 +1649,14 @@ validation and filtering on the values, making options invisible or private.")
(define-public r-circlize
(package
(name "r-circlize")
(version "0.4.6")
(version "0.4.7")
(source
(origin
(method url-fetch)
(uri (cran-uri "circlize" version))
(sha256
(base32
"1yjnb88pnzk5c1p0vjxykc7cr3394ln5axviqcf12ajibvy8rj6f"))))
"07y1bchkslpz2wl43yg5j5h1nl9z0i425a07jdmfd5avrynd8p3m"))))
(build-system r-build-system)
(propagated-inputs
`(("r-colorspace" ,r-colorspace)
@ -2663,14 +2663,14 @@ Optimization problems by using the simplex algorithm.")
(define-public r-geometry
(package
(name "r-geometry")
(version "0.4.2")
(version "0.4.3")
(source
(origin
(method url-fetch)
(uri (cran-uri "geometry" version))
(sha256
(base32
"0vq334115qi039vy198ggv1dsp6n1s6jwcm9ivipf5r8lbm287zz"))))
"0z4491mhfmrlbb8lazjvq55alrprx7k0abg2d39fj0lsj84cls1r"))))
(build-system r-build-system)
(propagated-inputs
`(("r-magic" ,r-magic)
@ -3476,14 +3476,14 @@ of Eigenmatrices} (JADE).")
(define-public r-dtw
(package
(name "r-dtw")
(version "1.20-1")
(version "1.21-3")
(source
(origin
(method url-fetch)
(uri (cran-uri "dtw" version))
(sha256
(base32
"1w301xwizncy5r8v9rwwdxfshydgp3l1pnjla1fjn6n8lx3imjj3"))))
"02hyhx1sy5h3vzh9zixy18a7d47df4k5d0wyflcvlcbsbcl6p90s"))))
(build-system r-build-system)
(propagated-inputs `(("r-proxy" ,r-proxy)))
(home-page "http://dtw.r-forge.r-project.org/")
@ -3765,14 +3765,14 @@ Markdown documents.")
(define-public r-seriation
(package
(name "r-seriation")
(version "1.2-7")
(version "1.2-8")
(source
(origin
(method url-fetch)
(uri (cran-uri "seriation" version))
(sha256
(base32
"0dbz5b5msy4fr2whhphyriqk1xc6305zpjq59rrwxyz3d7rzwpa6"))))
"1zbdxq0s5rc5v307b69fw9k52m0654ls7pf22lh35ggirig6lwsk"))))
(build-system r-build-system)
(propagated-inputs
`(("r-cluster" ,r-cluster)
@ -3799,14 +3799,14 @@ iVAT).")
(define-public r-xfun
(package
(name "r-xfun")
(version "0.8")
(version "0.9")
(source
(origin
(method url-fetch)
(uri (cran-uri "xfun" version))
(sha256
(base32
"05jlbi5byqpw0fkhmmxqglnaxh9gwbcigx77kcpw1pkxnpwfry62"))))
"1c3wmy6s4ck821mwl7i2g8cxd31g30llbpivbgq21g1rxs4zwlyl"))))
(build-system r-build-system)
(home-page "https://github.com/yihui/xfun")
(synopsis "Miscellaneous functions")
@ -4699,14 +4699,14 @@ systems.")
(define-public r-radiant-data
(package
(name "r-radiant-data")
(version "1.0.0")
(version "1.0.6")
(source
(origin
(method url-fetch)
(uri (cran-uri "radiant.data" version))
(sha256
(base32
"0b35jn4mcj10hqra18l8pi6s4pvj6fxipslbn6hkr4zza1z27gzw"))
"08x7zasxf429m021482p86lx3zc6dqz2mih0id8s34isg4gafapg"))
(modules '((guix build utils)))
(snippet
'(begin
@ -5064,14 +5064,14 @@ evaluated by the @dfn{Akaike Information Criterion} (AIC).")
(define-public r-arules
(package
(name "r-arules")
(version "1.6-3")
(version "1.6-4")
(source
(origin
(method url-fetch)
(uri (cran-uri "arules" version))
(sha256
(base32
"0dimrq1pz449z0mz9m87nhm5bpc0v789bcc3lghhh97wwi5zah9y"))))
"003c5cd3xzq39h7c19px077ygm0n1v7k83icy5zzrnkagyds2p8n"))))
(build-system r-build-system)
(propagated-inputs
`(("r-matrix" ,r-matrix)))
@ -5161,14 +5161,14 @@ misclassification probabilities of different models.")
(define-public r-zip
(package
(name "r-zip")
(version "2.0.3")
(version "2.0.4")
(source
(origin
(method url-fetch)
(uri (cran-uri "zip" version))
(sha256
(base32
"0zii05jg9v9ljd0wd67g9x4bhlmpmsy5dzd093sbnc5n3vjbi32a"))))
"1c02amk3pl6xir5jnbfiwiv2wvpkpbkkb1w71y6lf2yk7g3d0pdb"))))
(build-system r-build-system)
(home-page "https://github.com/gaborcsardi/zip")
(synopsis "Cross-platform Zip compression")
@ -6921,14 +6921,14 @@ used to teach mathematics, statistics, computation and modeling.")
(define-public r-raster
(package
(name "r-raster")
(version "2.9-23")
(version "3.0-2")
(source
(origin
(method url-fetch)
(uri (cran-uri "raster" version))
(sha256
(base32
"1brqigic8ygr223bp2hgk5qjz3q03r4sfglrv4an0ghy7fgfralh"))))
"0z4qh3ag1iyly4zjvzi3x2namkndkqn3cjb3ac22xd11sq5gdgiz"))))
(build-system r-build-system)
(propagated-inputs
`(("r-rcpp" ,r-rcpp)
@ -7489,14 +7489,14 @@ multiple-imputation datasets.")
(define-public r-magick
(package
(name "r-magick")
(version "2.1")
(version "2.2")
(source
(origin
(method url-fetch)
(uri (cran-uri "magick" version))
(sha256
(base32
"1pz71maz05gx4ds1wfw0alggc8nn2w75lj12dg1zr72s3kybhkzg"))))
"1xh5mhaks3wk1iwqs9d3lnbfv121lc1yz5fqdzk5il9ppr831l85"))))
(build-system r-build-system)
(inputs
`(("imagemagick" ,imagemagick)
@ -7927,14 +7927,14 @@ Cohen (1988).")
(define-public r-libcoin
(package
(name "r-libcoin")
(version "1.0-4")
(version "1.0-5")
(source
(origin
(method url-fetch)
(uri (cran-uri "libcoin" version))
(sha256
(base32
"1i893ij9vkmc4y721npw1s3prmmcs2da5vf3ajm0j8ccmfhbmp4i"))))
"1cm9x1dlg9f7fh7n5nw3x4a7rl88c7ylrlc8x3rx4mq5w1j42x0a"))))
(build-system r-build-system)
(propagated-inputs `(("r-mvtnorm" ,r-mvtnorm)))
(home-page "https://cran.r-project.org/web/packages/libcoin")
@ -7947,14 +7947,14 @@ and permutation inference in the framework of Strasser and Weber (1999).")
(define-public r-coin
(package
(name "r-coin")
(version "1.3-0")
(version "1.3-1")
(source
(origin
(method url-fetch)
(uri (cran-uri "coin" version))
(sha256
(base32
"1y0yl4mjaxca0jqz53sv1gcpdg89m099rq61iszxvpx7w0vvpkmd"))))
"0qi03fyqw42a2vnqcia5l2m1mzyarj2q1iblknx9n19bdsd53qjx"))))
(build-system r-build-system)
(propagated-inputs
`(("r-libcoin" ,r-libcoin)
@ -8518,14 +8518,14 @@ ways.")
(define-public r-summarytools
(package
(name "r-summarytools")
(version "0.9.3")
(version "0.9.4")
(source
(origin
(method url-fetch)
(uri (cran-uri "summarytools" version))
(sha256
(base32
"1wfbkgvicaic37zgpr6zcm4a58yx43p59h0sqggdj44ncqs7147f"))))
"1n695baz56mg4f13xjjadfq0xalw5xsn6xicil0yap5hgi8fsr3a"))))
(build-system r-build-system)
(propagated-inputs
`(("r-checkmate" ,r-checkmate)
@ -8696,14 +8696,14 @@ analysing multivariate abundance data in community ecology.")
(define-public r-afex
(package
(name "r-afex")
(version "0.24-1")
(version "0.25-1")
(source
(origin
(method url-fetch)
(uri (cran-uri "afex" version))
(sha256
(base32
"14w7kcwr5hxmjcjmdm5ia9ka3bw1nl18pxlm1vpw62nmvicn3455"))))
"12n020y7rjm7402940gkqxa5j901p093f381i23p66fa3fyrshkf"))))
(build-system r-build-system)
(propagated-inputs
`(("r-car" ,r-car)
@ -8930,14 +8930,14 @@ Bioconductor packages.")
(define-public r-rgl
(package
(name "r-rgl")
(version "0.100.26")
(version "0.100.30")
(source
(origin
(method url-fetch)
(uri (cran-uri "rgl" version))
(sha256
(base32
"0h77akviwjd86j2qyx326xynbmwhypd6ydprzlwqnidd4ckrr271"))))
"0rzqzskcwf2ah4yr62x5rjwf7yh90d43h39gk7jmfc5lc08zaxc5"))))
(build-system r-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)))
@ -9325,6 +9325,51 @@ in-memory raw vectors.")
;; Either of these two license versions.
(license (list license:gpl2 license:gpl3))))
(define-public r-nlp
(package
(name "r-nlp")
(version "0.2-0")
(source
(origin
(method url-fetch)
(uri (cran-uri "NLP" version))
(sha256
(base32
"0xbhkrnxcbf322jfw31xcn4y2gnk5y7ccq1bz4h3prf44h0whr7w"))))
(properties `((upstream-name . "NLP")))
(build-system r-build-system)
(home-page "https://cran.r-project.org/web/packages/NLP/")
(synopsis "Natural language processing infrastructure")
(description
"This package provides basic classes and methods for Natural Language
Processing.")
(license license:gpl3)))
(define-public r-tm
(package
(name "r-tm")
(version "0.7-6")
(source
(origin
(method url-fetch)
(uri (cran-uri "tm" version))
(sha256
(base32
"0spv43kjbpxq3rdxx8ysgrncjyc35ydiwk7gp8n4sig45iqyz59r"))))
(properties `((upstream-name . "tm")))
(build-system r-build-system)
(propagated-inputs
`(("r-bh" ,r-bh)
("r-nlp" ,r-nlp)
("r-rcpp" ,r-rcpp)
("r-slam" ,r-slam)
("r-xml2" ,r-xml2)))
(home-page "http://tm.r-forge.r-project.org/")
(synopsis "Text mining package")
(description
"This package provides a framework for text mining applications within R.")
(license license:gpl3)))
(define-public r-waveslim
(package
(name "r-waveslim")
@ -9364,7 +9409,10 @@ pairs (Selesnick 2001, 2002).")
(build-system r-build-system)
(propagated-inputs
`(("r-rcolorbrewer" ,r-rcolorbrewer)
("r-rcpp" ,r-rcpp)))
("r-rcpp" ,r-rcpp)
;; The "tm" package is only "suggested" according to CRAN, but the
;; wordcloud package cannot be loaded without it.
("r-tm" ,r-tm)))
(home-page "https://cran.r-project.org/web/packages/wordcloud")
(synopsis "Word clouds")
(description
@ -10749,14 +10797,14 @@ Differences with other sparse matrix packages are:
(define-public r-fields
(package
(name "r-fields")
(version "9.8-3")
(version "9.8-6")
(source
(origin
(method url-fetch)
(uri (cran-uri "fields" version))
(sha256
(base32
"1q9x68dczjym56v7x90x4x5br59vj3dww6w8v42zd3yl17h7c1h1"))))
"07x95vk1idjfzi5ikn0ijal754mssdmgr1p4nswmx9w3i5ndcqaz"))))
(build-system r-build-system)
(propagated-inputs
`(("r-maps" ,r-maps)
@ -11786,14 +11834,14 @@ select colors to use in your R code.")
(define-public r-ggextra
(package
(name "r-ggextra")
(version "0.8")
(version "0.9")
(source
(origin
(method url-fetch)
(uri (cran-uri "ggExtra" version))
(sha256
(base32
"1m5zpn3l3p1y3d2692gyz50m63d58m2a3b7zb595kvcffdx2qr5b"))))
"18mbi6gblqmrsciad1d2c9ngllk6mayaqj43k40hjq9ydqnvjbgj"))))
(properties `((upstream-name . "ggExtra")))
(build-system r-build-system)
(propagated-inputs
@ -11801,6 +11849,7 @@ select colors to use in your R code.")
("r-ggplot2" ,r-ggplot2)
("r-gtable" ,r-gtable)
("r-miniui" ,r-miniui)
("r-r6" ,r-r6)
("r-scales" ,r-scales)
("r-shiny" ,r-shiny)
("r-shinyjs" ,r-shinyjs)))
@ -11900,14 +11949,14 @@ probabilities from a standard bivariate normal CDF.")
(define-public r-lavaan
(package
(name "r-lavaan")
(version "0.6-4")
(version "0.6-5")
(source
(origin
(method url-fetch)
(uri (cran-uri "lavaan" version))
(sha256
(base32
"1zf0sxpms35rhq2syb7r3sshhc8kjvc3pv97dk9x0gf4xl7pck4g"))))
"04kvsh2m6mnzlhv83phr3hjzy4sx1ck6f7dgsm7xb8cs84dnxszy"))))
(build-system r-build-system)
(propagated-inputs
`(("r-mass" ,r-mass)
@ -12189,14 +12238,14 @@ network.")
(define-public r-apcluster
(package
(name "r-apcluster")
(version "1.4.7")
(version "1.4.8")
(source
(origin
(method url-fetch)
(uri (cran-uri "apcluster" version))
(sha256
(base32
"188hdfmwjjx3aic599nwmkzjqm9j9jighi5bly6qd43c1vj6ih2s"))))
"0lzf2jqm56i74wif6x5sw3j0w2qc4sni49zq2fgbl89b7lwkvchj"))))
(build-system r-build-system)
(propagated-inputs
`(("r-matrix" ,r-matrix)
@ -12347,17 +12396,17 @@ extensions.")
(define-public r-wgaim
(package
(name "r-wgaim")
(version "1.4-11")
(version "2.0-0")
(source
(origin
(method url-fetch)
(uri (cran-uri "wgaim" version))
(sha256
(base32
"1jjyp100dcjjczp61xlvhmy48ynniqcys535vzbgswhr7fvijymg"))))
"0wnb10vibgq8h1ly6lq8kzymf30vx0j0g8fc2zidblbvwag9ka1g"))))
(build-system r-build-system)
(propagated-inputs
`(("r-lattice" ,r-lattice)
`(("r-ggplot2" ,r-ggplot2)
("r-qtl" ,r-qtl)))
(home-page "https://cran.r-project.org/web/packages/wgaim")
(synopsis "Whole genome average interval mapping for QTL detection")
@ -12566,14 +12615,14 @@ utilities for sequence data management under the ACNUC system.")
(define-public r-units
(package
(name "r-units")
(version "0.6-3")
(version "0.6-4")
(source
(origin
(method url-fetch)
(uri (cran-uri "units" version))
(sha256
(base32
"0kx640h60s3zzkdr302asap7diap6vri6d41scnx507yvkcqiph3"))))
"1jz0mzd78sdfxkhqw041ji50hmhjk2ha55i31yjvz35nsw30lwi5"))))
(build-system r-build-system)
(inputs
`(("udunits" ,udunits)))
@ -13121,14 +13170,14 @@ exact test for Hardy-Weinberg equilibrium.")
(define-public r-tdthap
(package
(name "r-tdthap")
(version "1.1-9")
(version "1.1-11")
(source
(origin
(method url-fetch)
(uri (cran-uri "tdthap" version))
(sha256
(base32
"0y01x0hcf0rw06cpn4pk17b0shf4v2c9was7vfs0zhsbq8qcwx7r"))))
"15qlj2bivvz3pizd8dq34wczbkbxhzqh3cqp1ixkdkprlyvcxj5k"))))
(build-system r-build-system)
(home-page "https://cran.r-project.org/web/packages/tdthap/")
(synopsis "TDT tests for extended haplotypes")
@ -13164,13 +13213,13 @@ SELECT or UPDATE queries to an end-point.")
(define-public r-bookdown
(package
(name "r-bookdown")
(version "0.12")
(version "0.13")
(source (origin
(method url-fetch)
(uri (cran-uri "bookdown" version))
(sha256
(base32
"1c2v0rpa1rrpbx8yb66sfvrf4gf57f6a8x7ydjqqbkbwhxdlrsrq"))))
"15r9scgnq68hmfcfxvjk286hpbr825bib1d2kgh0lv3dgz2i2bg1"))))
(build-system r-build-system)
(propagated-inputs
`(("r-htmltools" ,r-htmltools)
@ -13764,14 +13813,14 @@ sets of URLs.")
(define-public r-ggforce
(package
(name "r-ggforce")
(version "0.3.0")
(version "0.3.1")
(source
(origin
(method url-fetch)
(uri (cran-uri "ggforce" version))
(sha256
(base32
"118qyzy8h9kkkdpjd09667gxgw7xy1kbc8r87pswh54ixn8hymwk"))))
"04926cqrda6psvy2nzkkw4czwyxdp7fnxg76byp14v12kgd72lm0"))))
(build-system r-build-system)
(propagated-inputs
`(("r-ggplot2" ,r-ggplot2)
@ -14616,14 +14665,14 @@ engine (Salmon et al., 2011) as provided by the package @code{sitmo}.")
(define-public r-dalex
(package
(name "r-dalex")
(version "0.4.4")
(version "0.4.7")
(source
(origin
(method url-fetch)
(uri (cran-uri "DALEX" version))
(sha256
(base32
"04i17ni8g595jj8dxdfwr9vsxmdn2kkam90ab68vlwws3ywqjl6r"))))
"0iiwkf0pfdb90lf1xhv43qd32z3cjmkmf0ly9841n5lldkjazy3h"))))
(properties `((upstream-name . "DALEX")))
(build-system r-build-system)
(propagated-inputs `(("r-ggplot2" ,r-ggplot2)))
@ -14642,14 +14691,14 @@ and model output.")
(define-public r-enrichr
(package
(name "r-enrichr")
(version "2.0")
(version "2.1")
(source
(origin
(method url-fetch)
(uri (cran-uri "enrichR" version))
(sha256
(base32
"056m6hksfss29fj7zvlk7pbh8g3gq84kjh3240isrsnhp9m1h9iz"))))
"0ymhzs9d2wl0s9rvbqc1hqb78mlzwhlc7mmijpfqkm5r720pf6m1"))))
(properties `((upstream-name . "enrichR")))
(build-system r-build-system)
(propagated-inputs
@ -14812,17 +14861,18 @@ easily.")
(define-public r-umap
(package
(name "r-umap")
(version "0.2.2.0")
(version "0.2.3.1")
(source
(origin
(method url-fetch)
(uri (cran-uri "umap" version))
(sha256
(base32
"1s82w9gy1387h7cprjfbhp49l89zbmn3gc9s0wzqb1s73nza9n31"))))
"0rzz1s029cn1w1bf5va2pav2lg9j1mq97ibwcln39drvm67kj76d"))))
(build-system r-build-system)
(propagated-inputs
`(("r-rcpp" ,r-rcpp)
`(("r-openssl" ,r-openssl)
("r-rcpp" ,r-rcpp)
("r-reticulate" ,r-reticulate)
("r-rspectra" ,r-rspectra)))
(home-page "https://github.com/tkonopka/umap")
@ -14993,6 +15043,32 @@ radius searches and @code{bd} as well as @code{kd} trees. The distance is
computed using the L1 (Manhattan, taxicab) metric.")
(license license:gpl3+)))
(define-public r-leiden
(package
(name "r-leiden")
(version "0.3.1")
(source
(origin
(method url-fetch)
(uri (cran-uri "leiden" version))
(sha256
(base32
"19gq27zin4gf4sh7h24gyq3f8jjir20n2l36a7pk1pbzcr4ixyhp"))))
(properties `((upstream-name . "leiden")))
(build-system r-build-system)
(propagated-inputs
`(("r-igraph" ,r-igraph)
("r-matrix" ,r-matrix)
("r-reticulate" ,r-reticulate)))
(home-page "https://github.com/TomKellyGenetics/leiden")
(synopsis "R implementation of Leiden clustering algorithm")
(description
"This package implements the Python @code{leidenalg} module to be called
in R. It enables clustering using the Leiden algorithm for partitioning a
graph into communities. See also Traag et al (2018) \"From Louvain to Leiden:
guaranteeing well-connected communities.\" <arXiv:1810.08473>.")
(license license:gpl3)))
(define-public r-patchwork
;; There has been no public release yet.
(let ((commit "fd7958bae3e7a1e30237c751952e412a0a1d1242")

File diff suppressed because it is too large Load Diff

View File

@ -5,7 +5,7 @@
;;; Copyright © 2016 Danny Milosavljevic <dannym@scratchpost.org>
;;; Copyright © 2017 Leo Famulari <leo@famulari.name>
;;; Copyright © 2017 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2017, 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
;;;
;;; This file is part of GNU Guix.
;;;
@ -48,6 +48,7 @@
#:use-module (guix build-system gnu)
#:use-module (guix build-system python)
#:use-module (guix download)
#:use-module (guix svn-download)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
#:use-module (guix utils)
@ -418,14 +419,14 @@ should only be used as part of the Guix cups-pk-helper service.")
(define-public hplip
(package
(name "hplip")
(version "3.18.9")
(version "3.19.8")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/hplip/hplip/" version
"/hplip-" version ".tar.gz"))
(sha256
(base32
"0g3q5mm2crjyc1z4z6gv4lam6sc5d3diz704djrnpqadk4q3h290"))
"0cmshi5dkmc1n5yiahhp0cv5p94zg61018piiqa2sna10ahgx1d3"))
(modules '((guix build utils)))
(patches (search-patches "hplip-remove-imageprocessor.patch"))
(snippet
@ -438,10 +439,6 @@ should only be used as part of the Guix cups-pk-helper service.")
(elf-file? file))))
(delete-file "prnt/hpcups/ImageProcessor.h")
;; Fix type mismatch.
(substitute* "prnt/hpcups/genPCLm.cpp"
(("boolean") "bool"))
;; Install binaries under libexec/hplip instead of
;; share/hplip; that'll at least ensure they get stripped.
;; It's not even clear that they're of any use though...
@ -740,6 +737,66 @@ language.")
(home-page "http://download.ebz.epson.net/dsc/search/01/search")
(license license:gpl2+)))
(define-public splix
;; The last release was in 2009. The SVN repository contains 5 years of
;; unreleased bug fixes and support for newer printer models.
(let ((revision 315))
(package
(name "splix")
(version (string-append "2.0.0-" (number->string revision)))
(source
(origin
(method svn-fetch)
(uri (svn-reference
(url "https://svn.code.sf.net/p/splix/code/splix/")
(revision revision)))
(file-name (string-append name "-" version "-checkout"))
(sha256
(base32 "16wbm4xnz35ca3mw2iggf5f4jaxpyna718ia190ka6y4ah932jxl"))))
(build-system gnu-build-system)
;; 90% (3.8 MiB) of output are .ppd files. Don't install them by default:
;; CUPS has been able to read the .drv sources directly since version 1.2.
(outputs (list "out" "ppd"))
(arguments
'(#:make-flags
(list (string-append "CUPSDRV="
(assoc-ref %outputs "out") "/share/cups/drv")
(string-append "CUPSFILTER="
(assoc-ref %outputs "out") "/lib/cups/filter")
(string-append "CUPSPPD="
(assoc-ref %outputs "ppd") "/share/cups/model")
"CACHESIZE=100" ; pages in RAM, ±300 KiB each
"THREADS=4") ; compress and print faster
#:phases
(modify-phases %standard-phases
(delete 'configure) ; no configure script
(add-before 'build 'build-.drv-files
(lambda* (#:key make-flags #:allow-other-keys)
(apply invoke "make" "drv" make-flags)))
(add-after 'install 'install-.drv-files
(lambda* (#:key make-flags #:allow-other-keys)
(apply invoke "make" "install" "DRV_ONLY=1" make-flags))))
#:tests? #f)) ; no test suite
(inputs
`(("cups" ,cups-minimal)
("zlib" ,zlib)
;; This dependency can be dropped by setting DISABLE_JBIG=1, but the
;; result will not support some printers like the Samsung CLP-600.
("jbigkit" ,jbigkit)))
(synopsis "QPDL (SPL2) printer driver")
(description
"SpliX is a set of CUPS drivers for printers that speak @acronym{QPDL,
Quick Page Description Language}, also called @acronym{SPL2, Samsung Printer
Language version 2}. These include many laser printers sold by Samsung,
Xerox, Lexmark, Toshiba, and Dell.
Colour printers need colour profile files to get better results. These
@file{cms} files are provided by the printer's manufacturer and must be
obtained and installed separately.")
(home-page "http://splix.ap2c.org/")
(license license:gpl2))))
(define-public python-pycups
(package
(name "python-pycups")

View File

@ -1264,14 +1264,14 @@ changes.")
(define-public tdb
(package
(name "tdb")
(version "1.4.0")
(version "1.4.2")
(source (origin
(method url-fetch)
(uri (string-append "https://www.samba.org/ftp/tdb/tdb-"
version ".tar.gz"))
(sha256
(base32
"0d9d2f1c83gmmq30bkfs50yb8399mr9xjjzscma4kyq0ajf75861"))))
"0jh0iqbb6pkvqrqn033w5g6gwa4bdgkvp49z0qpkk3h2wk6b4h4h"))))
(build-system gnu-build-system)
(arguments
'(#:phases

View File

@ -218,7 +218,7 @@ It comes with a German-English dictionary with approximately 270,000 entries.")
(define-public grammalecte
(package
(name "grammalecte")
(version "1.2.1")
(version "1.3.0")
(source
(origin
(method url-fetch/zipbomb)
@ -226,7 +226,7 @@ It comes with a German-English dictionary with approximately 270,000 entries.")
"Grammalecte-fr-v" version ".zip"))
(sha256
(base32
"1j2avdk8hcgcv0lahp029qzpdb2rnys38hc64jy30awzx64fa6i4"))))
"1knysfdd1rx4vc5cmmnry4jsza0cdjy26fv505m854yfmq6zrckd"))))
(build-system python-build-system)
(home-page "https://grammalecte.net")
(synopsis "French spelling and grammar checker")

View File

@ -25,6 +25,7 @@
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix git-download)
#:use-module (guix build-system cmake)
#:use-module (guix build-system gnu)
#:use-module (guix build-system go)
#:use-module (guix build-system python)
@ -368,7 +369,16 @@ built-in registry server of Docker.")
(("StockRuntimeName = .*")
(string-append "StockRuntimeName = \""
(assoc-ref inputs "runc")
"/sbin/runc\"\n")))
"/sbin/runc\"\n"))
(("DefaultInitBinary = .*")
(string-append "DefaultInitBinary = \""
(assoc-ref inputs "tini")
"/bin/tini\"\n")))
(substitute* "daemon/config/config_common_unix_test.go"
(("expectedInitPath: \"docker-init\"")
(string-append "expectedInitPath: \""
(assoc-ref inputs "tini")
"/bin/tini\"")))
(substitute* "vendor/github.com/moby/buildkit/executor/runcexecutor/executor.go"
(("var defaultCommandCandidates = .*")
(string-append "var defaultCommandCandidates = []string{\""
@ -541,6 +551,7 @@ built-in registry server of Docker.")
("runc" ,runc)
("util-linux" ,util-linux)
("lvm2" ,lvm2)
("tini" ,tini)
("xfsprogs" ,xfsprogs)
("xz" ,xz)))
(native-inputs
@ -655,3 +666,36 @@ provisioning etc.")
way to run commands in the current directory, but within a Docker container
defined in a per-project configuration file.")
(license license:gpl3+)))
(define-public tini
(package
(name "tini")
(version "0.18.0")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/krallin/tini.git")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"1h20i3wwlbd8x4jr2gz68hgklh0lb0jj7y5xk1wvr8y58fip1rdn"))))
(build-system cmake-build-system)
(arguments
`(#:tests? #f ;tests require a Docker daemon
#:phases (modify-phases %standard-phases
(add-after 'unpack 'disable-static-build
;; Disable the static build as it fails to install, with
;; the error: "No valid ELF RPATH or RUNPATH entry exists
;; in the file".
(lambda _
(substitute* "CMakeLists.txt"
((".*tini-static.*") ""))
#t)))))
(home-page "https://github.com/krallin/tini")
(synopsis "Tiny but valid init for containers")
(description "Tini is an init program specifically designed for use with
containers. It manages a single child process and ensures that any zombie
processes produced from it are reaped and that signals are properly forwarded.
Tini is integrated with Docker.")
(license license:expat)))

View File

@ -251,7 +251,7 @@ easy.")
(define-public snap
(package
(name "snap")
(version "5.0.8")
(version "5.1.0")
(source
(origin
(method git-fetch)
@ -261,7 +261,7 @@ easy.")
(file-name (git-file-name name version))
(sha256
(base32
"0fwfssdgv3mfzyv8hw1a1z5ky1yn0p59kyl6l9fxsm4w2ckgyizd"))))
"11fqbbvrv4zqbdz176ahczb2d797inq5n7zg74335d96m377si3f"))))
(build-system trivial-build-system)
(arguments
`(#:modules ((guix build utils))

View File

@ -137,7 +137,7 @@
#:use-module (gnu packages sqlite)
#:use-module (gnu packages gnupg)
#:use-module (gnu packages video)
#:use-module (gnu packages haskell)
#:use-module (gnu packages haskell-xyz)
#:use-module (gnu packages wordnet)
#:use-module (guix utils)
#:use-module (srfi srfi-1)
@ -2855,7 +2855,7 @@ mode-line.")
(define-public emacs-robe
(package
(name "emacs-robe")
(version "0.8.1")
(version "0.8.2")
(source
(origin
(method git-fetch)
@ -2864,7 +2864,7 @@ mode-line.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "0ll7ivxqnglfb0i70ly6qq2yfw9cyi3vq3lmj4s6h6c1c7rm3gcq"))))
(base32 "0qw18wi54yg971n4wnjqkd8lqj5lbs9ra8bvmngif2bzhqlfdsbn"))))
(build-system emacs-build-system)
(arguments
'(#:include (cons "^lib\\/" %default-include)))
@ -3091,7 +3091,10 @@ for Flow files.")
(base32
"0lybadq66bl4snkwph9i1y0qxln29wyfjn222ii3nfwany28cj66"))))
(build-system emacs-build-system)
(arguments '(#:include '("\\.el$" "\\.org$")))
(arguments
`(#:include '("\\.el$" "\\.org$")
#:tests? #t
#:test-command '("make" "test")))
(home-page "https://github.com/xuchunyang/elisp-demos/")
(synopsis "Enhance @code{*Help*} buffers with additional examples")
(description
@ -3126,11 +3129,10 @@ completion of relevant keywords.")
(define-public emacs-sudo-edit
(let ((commit "cc3d478937b1accd38742bfceba92af02ee9357d")
(version "0.1.0")
(revision "6"))
(package
(name "emacs-sudo-edit")
(version (git-version version revision commit))
(version (git-version "0.1.0" revision commit))
(source
(origin
(method git-fetch)
@ -3142,6 +3144,18 @@ completion of relevant keywords.")
(base32
"1qv58x5j5a3v1s2ylhck1ykbfclq0mbi0gsvaql3nyv8cxazqlwl"))))
(build-system emacs-build-system)
(native-inputs
`(("emacs-undercover" ,emacs-undercover)))
(arguments
`(#:phases
(modify-phases %standard-phases
(add-before 'check 'fix-makefile
(lambda _
(substitute* "Makefile"
(("\\$\\(CASK\\) exec ") ""))
#t)))
#:tests? #t
#:test-command '("make" "test")))
(home-page "https://github.com/nflath/sudo-edit/")
(synopsis "Open files as another user")
(description
@ -4229,24 +4243,50 @@ number.")
(license license:gpl3+)))
(define-public emacs-org-pomodoro
(package
(name "emacs-org-pomodoro")
(version "2.1.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/lolownia/org-pomodoro.git")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "0r5shgikm34d66i2hblyknbblpg92lb2zc9x4bcb28xkh7m9d0xv"))))
(build-system emacs-build-system)
(propagated-inputs
`(("emacs-alert" ,emacs-alert)))
(home-page "https://github.com/lolownia/org-pomodoro")
(synopsis "Pomodoro technique for org-mode")
(description "@code{emacs-org-pomodoro} adds very basic support for
;; Last release version was from 2016.
(let ((commit "aa07c11318f91219336197e62c47bc7a3d090479")
(revision "1"))
(package
(name "emacs-org-pomodoro")
(version (git-version "2.1.0" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/marcinkoziej/org-pomodoro.git")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "0nbprh2nhnmb7ngp9ndr6zr37ashcsvpi5slv7a37x1dl7j6w1k4"))))
(build-system emacs-build-system)
(propagated-inputs
`(("emacs-alert" ,emacs-alert)))
(arguments
`(#:include (cons "^resources\\/" %default-include)
#:tests? #t
#:test-command '("emacs" "--batch"
"-l" "org-pomodoro-tests.el"
"-f" "ert-run-tests-batch-and-exit")
#:phases
(modify-phases %standard-phases
(add-before 'check 'make-tests-writable
(lambda _
(make-file-writable "org-pomodoro-tests.el")
#t))
(add-before 'check 'add-require
(lambda _
(emacs-batch-edit-file "org-pomodoro-tests.el"
`(progn (progn (goto-char (point-min))
(re-search-forward
"ert-deftest")
(beginning-of-line)
(forward-line -1)
(insert "(require 'org-pomodoro)"))
(basic-save-buffer)))
#t)))))
(home-page "https://github.com/marcinkoziej/org-pomodoro")
(synopsis "Pomodoro technique for org-mode")
(description "@code{emacs-org-pomodoro} adds very basic support for
Pomodoro technique in Emacs org-mode.
Run @code{M-x org-pomodoro} for the task at point or select one of the
@ -4254,10 +4294,10 @@ last tasks that you clocked time for. Each clocked-in pomodoro starts
a timer of 25 minutes and after each pomodoro a break timer of 5
minutes is started automatically. Every 4 breaks a long break is
started with 20 minutes. All values are customizable.")
(license license:gpl3+)))
(license license:gpl3+))))
(define-public emacs-org-sidebar
(let ((commit "74ca98b9920f3de3f13d49866581435e1ec63ec5")
(let ((commit "ed951d1e0d8b7e65ed35797403fd3e8c88f507f5")
(revision "1"))
(package
(name "emacs-org-sidebar")
@ -4270,7 +4310,7 @@ started with 20 minutes. All values are customizable.")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "03p1ndyw2qp2skib5hszc4xyh84w7p2mhkd4a9dy6qv8q47xpsqn"))))
(base32 "01sf8v53pjsy80fzwmj2n8rp2z5gsnpyld0fm6j3bdv213clp69y"))))
(build-system emacs-build-system)
(propagated-inputs
`(("emacs-dash" ,emacs-dash)
@ -4316,6 +4356,30 @@ overview of tasks in a subtree.")
organizer.")
(license license:gpl3+)))
(define-public emacs-org-tanglesync
(let ((commit "ab76a3eaaed263677d2e029d43f6c4de8fc21418")
(revision "1"))
(package
(name "emacs-org-tanglesync")
(version (git-version "0.6" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/mtekman/org-tanglesync.el.git")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "14ify3yirq2qmi9isk8kcbwx8pbclv1fyg49kraz4srhgf2fssgf"))))
(build-system emacs-build-system)
(propagated-inputs
`(("emacs-org" ,emacs-org)))
(home-page "https://github.com/mtekman/org-tanglesync.el")
(synopsis "Sync Org source blocks with tangled external files")
(description "This package automatically pulls changes from source code
to their corresponding tangled blocks.")
(license license:gpl3+))))
(define-public emacs-company-flow
(let ((commit "76ef585c70d2a3206c2eadf24ba61e59124c3a16")
(revision "1"))
@ -4429,6 +4493,32 @@ variants.")
package provides a light and a dark variant.")
(license license:gpl3+)))
(define-public emacs-poet-theme
(let ((commit "d84f7b259cc9b6ff8d442cf4c38bd6c7065ff8f4")
(revision "0"))
(package
(name "emacs-poet-theme")
(version (git-version "0" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/kunalb/poet.git")
(commit commit)))
(sha256
(base32
"0a84jdaj619mb59a46dmkk2sfs42rylqk9ryl1drgs8d3lia79mz"))))
(build-system emacs-build-system)
(home-page "https://github.com/kunalb/poet/")
(synopsis "Emacs theme for prose")
(description
"Emacs has very good support for multiple fonts in a single file. Poet
uses this support to make it much more convenient to write prose within Emacs,
with particular attention paid to @code{org-mode} and @code{markdown-mode}.
Code blocks, tables, etc are formatted in monospace text with the appropriate
backgrounds.")
(license license:expat))))
(define-public emacs-ahungry-theme
(package
(name "emacs-ahungry-theme")
@ -6292,6 +6382,31 @@ not tied in the trap of backward compatibility.")
for search-based navigation of buffers.")
(license license:gpl2+)))
(define-public emacs-helm-ag
(let ((commit "2fc02c4ead29bf0db06fd70740cc7c364cb650ac")
(revision "1"))
(package
(name "emacs-helm-ag")
(version "0.58")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/syohex/emacs-helm-ag.git")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "1gnn0byywbld6afcq1vp92cjvy4wlag9d1wgymnqn86c3b1bcf21"))))
(build-system emacs-build-system)
(propagated-inputs
`(("emacs-helm" ,emacs-helm)))
(home-page "https://github.com/syohex/emacs-helm-ag")
(synopsis "Helm interface to the Silver Searcher")
(description
"This package provides a frontend for grepping tools like ag and ack,
as well as features for editing search results.")
(license license:gpl3+))))
(define-public emacs-helm-projectile
(package
(name "emacs-helm-projectile")
@ -6316,6 +6431,86 @@ for search-based navigation of buffers.")
"This Emacs library provides a Helm interface for Projectile.")
(license license:gpl3+)))
(define-public emacs-taskrunner
(let ((commit "3afd4a546d42339543d3d4e51b175fc3e82b3358")
(revision "1"))
(package
(name "emacs-taskrunner")
(version (git-version "0.6" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/emacs-taskrunner/emacs-taskrunner.git")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"1lkdvmjn3alhqxq2i64sdr977sbw3g0b2670d9bwyzi67qh0jxrv"))))
(build-system emacs-build-system)
(propagated-inputs
`(("emacs-async" ,emacs-async)
("emacs-projectile" ,emacs-projectile)))
(home-page "https://github.com/emacs-taskrunner/emacs-taskrunner")
(synopsis "Retrieve tasks from various build systems and task-runners")
(description "This package parses Makefiles and build-system files for
multiple project types.")
(license license:gpl3+))))
(define-public emacs-ivy-taskrunner
(let ((commit "75d8d67cfe3c29663fe0f5508a887adf40ed5162")
(revision "1"))
(package
(name "emacs-ivy-taskrunner")
(version (git-version "0.9" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/emacs-taskrunner/ivy-taskrunner.git")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"1wf4s4k0ap21f7g5w6128an8nsvbja7f5n889vcml5b6gjz058db"))))
(build-system emacs-build-system)
(propagated-inputs
`(("emacs-ivy" ,emacs-ivy)
("emacs-taskrunner" ,emacs-taskrunner)
("emacs-projectile" ,emacs-projectile)))
(home-page "https://github.com/emacs-taskrunner/ivy-taskrunner")
(synopsis "Retrieve build-system tasks using Ivy")
(description "This package provides an Ivy interface for selecting
Makefile targets.")
(license license:gpl3+))))
(define-public emacs-helm-taskrunner
(let ((commit "1910dac19cbc7bd4fd08b0faf9affd455339fbea")
(revision "1"))
(package
(name "emacs-helm-taskrunner")
(version (git-version "0.9" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/emacs-taskrunner/helm-taskrunner.git")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"182lmr858fx6rdhp1fy7kv8dvrhzcnxzwfck1q22s6xs8x85d5q7"))))
(build-system emacs-build-system)
(propagated-inputs
`(("emacs-helm" ,emacs-helm)
("emacs-taskrunner" ,emacs-taskrunner)
("emacs-projectile" ,emacs-projectile)))
(home-page "https://github.com/emacs-taskrunner/helm-taskrunner")
(synopsis "Retrieve build-system tasks using Helm")
(description "This package provides a Helm interface for selecting
Makefile targets.")
(license license:gpl3+))))
(define-public emacs-helm-make
(let ((commit "feae8df22bc4b20705ea08ac9adfc2b43bb348d0")
(revision "1"))
@ -6501,11 +6696,11 @@ extensions.")
(license license:gpl3+)))
(define-public emacs-evil-collection
(let ((commit "0748c695dfa89b79eb316da5060360de8c0f04da")
(revision "9"))
(let ((commit "986ca7eb0b75eccd843bdad2f7fdb48f4ca6ac22")
(revision "10"))
(package
(name "emacs-evil-collection")
(version (git-version "0.0.1" revision commit))
(version (git-version "0.0.2" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
@ -6514,7 +6709,7 @@ extensions.")
(file-name (git-file-name name version))
(sha256
(base32
"17w8nh3q7ffc7776f3qzixk0c0g6vys3xybgw16ky1f416585kvb"))))
"172sx5w50x5wrs5w0sb6rkbj3q22s7mmsnk4c6pwknhbz3vwlvwz"))))
(build-system emacs-build-system)
(propagated-inputs
`(("emacs-evil" ,emacs-evil)))
@ -6581,8 +6776,8 @@ end of a line and increment or decrement it.")
(license license:gpl3+))))
(define-public emacs-evil-owl
(let ((commit "e8fe5b2f745e36db04cb71eb689bf91c5409614f")
(revision "2"))
(let ((commit "24c5f43df375194386344e69bc720ea3986c9510")
(revision "3"))
(package
(name "emacs-evil-owl")
(version (git-version "0.0.1" revision commit))
@ -6595,10 +6790,13 @@ end of a line and increment or decrement it.")
(file-name (git-file-name name version))
(sha256
(base32
"1g7kplna62f271135mnjdbvxk2ayx7m4gvd6l86d2394alx16nhq"))))
"0bqzch14whlmrcasakah3psrzswvkzd7mmi8hx5s64kfp29wbdhi"))))
(build-system emacs-build-system)
(propagated-inputs
`(("emacs-evil" ,emacs-evil)))
(arguments
`(#:tests? #t
#:test-command '("make" "test")))
(home-page "https://github.com/mamapanda/evil-owl")
(synopsis "Preview candidates when using Evil registers and marks")
(description
@ -6625,6 +6823,17 @@ a popup window for previewing candidates.")
"0bjpn4yqig17ddym6wqq5fm1b294q74hzcbj9a6gs97fqiwf88xa"))))
(build-system emacs-build-system)
(propagated-inputs `(("emacs-evil" ,emacs-evil)))
(native-inputs `(("emacs-ert-runner" ,emacs-ert-runner)))
(arguments
`(#:phases
(modify-phases %standard-phases
(add-before 'check 'fix-makefile
(lambda _
(substitute* "Makefile"
(("cask exec ") ""))
#t)))
#:tests? #t
#:test-command '("make" "test")))
(home-page "https://github.com/Dewdrops/evil-exchange")
(synopsis "Exchange text easily within Evil")
(description
@ -6754,6 +6963,9 @@ aligning text objects based on separators.")
"0872ix682hkdz0k8pn6sb54rqkx00rz5fxpd5j2snx406yagpaxz"))))
(build-system emacs-build-system)
(propagated-inputs `(("emacs-evil" ,emacs-evil)))
(arguments
`(#:tests? #t
#:test-command '("make" "test")))
(home-page "https://github.com/edkolev/evil-expat")
(synopsis "Extra @code{ex} commands for @code{evil-mode}")
(description
@ -6924,14 +7136,14 @@ passive voice.")
(name "emacs-org")
;; emacs-org-contrib inherits from this package. Please update its sha256
;; checksum as well.
(version "9.2.5")
(version "9.2.6")
(source (origin
(method url-fetch)
(uri (string-append "https://elpa.gnu.org/packages/org-"
version ".tar"))
(sha256
(base32
"1pid1sykgz83i4ry5n8f270finag6sm7ckqxn5lkikyya43wlzx1"))))
"0ikd78k4yw4sm5x7l3dsbvfcmvnv5qna2mxirr560gvcnzhr0zg4"))))
(build-system emacs-build-system)
(home-page "https://orgmode.org/")
(synopsis "Outline-based notes management and organizer")
@ -6945,14 +7157,14 @@ programming and reproducible research.")
(package
(inherit emacs-org)
(name "emacs-org-contrib")
(version "20190805")
(version "20190904")
(source (origin
(method url-fetch)
(uri (string-append "https://orgmode.org/elpa/org-plus-contrib-"
version ".tar"))
(uri (string-append "https://orgmode.org/elpa/"
"org-plus-contrib-" version ".tar"))
(sha256
(base32
"1mw91hwbqyjq5pyz9hzdhvjlc2bphqpi23yqd3sdk1crpc87s40c"))))
"08s3fk3jim0y2v00l6ah8y08ba8wbcf29z6fxqzyaxj58a5sq81a"))))
(arguments
`(#:modules ((guix build emacs-build-system)
(guix build utils)
@ -9503,6 +9715,75 @@ subsequent invocations can be readily customized. Several recipes are
included by default, and more can be readily added.")
(license license:gpl3+))))
(define-public emacs-unidecode
(let ((commit "5502ada9287b4012eabb879f12f5b0a9df52c5b7")
(revision "1"))
(package
(name "emacs-unidecode")
(version (git-version "0.2" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/sindikat/unidecode")
(commit commit)))
(sha256
(base32
"03x3nakbhmakwm977mwrf8jifvjnfwzpjv6wrwpizbqjnkgfchmn"))))
(build-system emacs-build-system)
(arguments
`(#:include (cons* "^tools/" "^data/" %default-include)
#:tests? #t
#:test-command '("emacs" "--batch"
"-l" "unidecode-test.el"
"-f" "ert-run-tests-batch-and-exit")
#:phases
(modify-phases %standard-phases
(add-before 'check 'make-tests-writable
(lambda _
(make-file-writable "unidecode-test.el")
#t))
(add-before 'check 'add-require
(lambda _
(emacs-batch-edit-file "unidecode-test.el"
`(progn (progn (goto-char (point-min))
(re-search-forward
"ert-deftest")
(forward-line -1)
(insert "(require 'unidecode)"))
(basic-save-buffer)))
#t)))))
(home-page "https://github.com/sindikat/unidecode")
(synopsis "Transliterate Unicode text to ASCII")
(description "This package provides functions for converting Unicode to ASCII.")
(license license:gpl2+))))
(define-public emacs-pubmed
(package
(name "emacs-pubmed")
(version "0.2.1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://gitlab.com/fvdbeek/emacs-pubmed.git")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"15bwjxc7g43m5pi8z17anaqqkvi209r7kk1chmf175477gvrv7c0"))))
(build-system emacs-build-system)
(propagated-inputs
`(("emacs-deferred" ,emacs-deferred)
("emacs-esxml" ,emacs-esxml)
("emacs-s" ,emacs-s)
("emacs-unidecode" ,emacs-unidecode)))
(home-page "https://gitlab.com/fvdbeek/emacs-pubmed")
(synopsis "Interface to PubMed")
(description "This package provides an Emacs interface to the PubMed
database of references on life sciences.")
(license license:gpl3+)))
(define-public emacs-websocket
(package
(name "emacs-websocket")
@ -11008,10 +11289,73 @@ into sections while preserving the structure imposed by any timestamps.")
tables of contents.")
(license license:gpl3+)))
(define-public emacs-ts
(let ((commit "93c074f2895a204e003e8c7f3033c37d6486fac8")
(revision "1"))
(package
(name "emacs-ts")
(version (git-version "0.1" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/alphapapa/ts.el")
(commit commit)))
(sha256
(base32
"0lpyv78k04vbp9glnv14dawcfgi3m49847wlgwfmkdq5cr3fn735"))
(file-name (git-file-name name version))))
(build-system emacs-build-system)
(propagated-inputs
`(("emacs-s" ,emacs-s)
("emacs-dash" ,emacs-dash)))
(arguments
;; XXX: Three tests are failing because of a timezone-related issue
;; with how they're written. On my machine, all the failing test
;; results are 18000 seconds (5 hours) off.
;; The ts-parse-org function accepts a string without any timezone
;; info, not assumed to be in Unix time, and converts it to a so-called
;; ts struct. The ts-unix function (accessor) accepts a ts struct,
;; then seems to assume the struct's corresponding time is in terms of
;; the user's current time zone, before returning a Unix time in
;; seconds.
;; The failing tests all have similar problems, but nothing else about
;; the library seems particularly off.
`(#:tests? #t
#:test-command '("emacs" "--batch"
"-l" "test/test.el"
"-f" "ert-run-tests-batch-and-exit")
#:phases
(modify-phases %standard-phases
(add-before 'check 'make-tests-writable
(lambda _
(make-file-writable "test/test.el")
#t))
(add-before 'check 'delete-failing-tests
(lambda _
(emacs-batch-edit-file "test/test.el"
`(progn (progn
(goto-char (point-min))
(dolist (test-regexp '("ert-deftest ts-format"
"ert-deftest ts-parse-org\\_>"
"ert-deftest ts-parse-org-element"))
(re-search-forward test-regexp)
(beginning-of-line)
(kill-sexp)))
(basic-save-buffer)))
#t)))))
(home-page "https://github.com/alphapapa/ts.el")
(synopsis "Timestamp and date/time library")
(description "This package facilitates manipulating dates, times, and
timestamps by providing a @code{ts} struct.")
(license license:gpl3+))))
(define-public emacs-org-ql
(package
(name "emacs-org-ql")
(version "0.1")
(version "0.2")
(source (origin
(method git-fetch)
(uri (git-reference
@ -11019,12 +11363,19 @@ tables of contents.")
(commit version)))
(sha256
(base32
"1nvzirn1lmgmgl7irbsc1n391a2cw8gmvwm3pa228l2c1gcx8kd8"))
"0mq0aj0a3a5gi9nz0ncpzsh731d92n86b0iinvx1m45dcal06h9y"))
(file-name (git-file-name name version))))
(build-system emacs-build-system)
(propagated-inputs
`(("emacs-s" ,emacs-s)
("emacs-ts" ,emacs-ts)
("emacs-org" ,emacs-org)
("emacs-dash" ,emacs-dash)))
(native-inputs
`(("emacs-buttercup" ,emacs-buttercup)))
(arguments
`(#:tests? #t
#:test-command '("buttercup" "-L" ".")))
(home-page "https://github.com/alphapapa/org-ql/")
(synopsis "Query language for Org buffers")
(description "This package provides a Lispy query language for Org
@ -11906,12 +12257,11 @@ key again.")
(license license:gpl3+)))
(define-public emacs-mbsync
(let ((commit "42077e83ae2db778ce0f8e22f8357b40355526b3")
(revision "1"))
(let ((commit "f549eccde6033449d24cd5b6148599484850c403")
(revision "2"))
(package
(name "emacs-mbsync")
(version (string-append "0.0.1" "-" revision "."
(string-take commit 7)))
(version (git-version "0.1.2" revision commit))
(source
(origin
(method git-fetch)
@ -11921,7 +12271,7 @@ key again.")
(file-name (git-file-name name version))
(sha256
(base32
"0yj93y2mpxlir8x73znlg1slxlv4blm1vjv5h2w3j8lxg8bxvmn6"))))
"1pdj41rq3pq4jdb5pma5j495xj7w7jgn8pnz1z1zwg75pn7ydfp0"))))
(build-system emacs-build-system)
(home-page "https://github.com/dimitri/mbsync-el")
(synopsis "Interface to mbsync for Emacs")
@ -13530,28 +13880,31 @@ be changed by customizing the appropriate variables.")
(license license:gpl3+)))
(define-public emacs-org-caldav
(package
(name "emacs-org-caldav")
(version "20180403")
(source
(origin
(method url-fetch)
(uri (string-append
"https://github.com/dengste/org-caldav/raw/"
"8d3492c27a09f437d2d94f2736c56d7652e87aa0"
"/org-caldav.el"))
(sha256
(base32
"1fh4gh68ddj0is99z2ccyh97v6psnyda61n2dsadzqhcxn51amlc"))))
(build-system emacs-build-system)
(propagated-inputs `(("emacs-org" ,emacs-org)))
(home-page "https://github.com/dengste/org-caldav")
(synopsis
"Sync Org files with external calendars via the CalDAV protocol")
(description
"Synchronize between events in Org-mode files and a CalDAV calendar.
This code is still alpha.")
(license license:gpl3+)))
(let ((commit "a563500c9884f38ce08793e2964f8274adde163d"))
(package
(name "emacs-org-caldav")
(version (git-version "0.0.0" "1" commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/dengste/org-caldav.git")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"18qi1iv5dc0gsvkv9ifal3cjpm568nlb907v8a53cnm4439x1l0l"))))
(build-system emacs-build-system)
(arguments
;; Tests require to have two specific calendars on a test server.
`(#:exclude '("^org-caldav-testsuite\\.el")))
(propagated-inputs
`(("emacs-org" ,emacs-org)))
(home-page "https://github.com/dengste/org-caldav")
(synopsis "Sync Org files with external calendars via the CalDAV protocol")
(description "Synchronize between events in Org files and a CalDAV
calendar.")
(license license:gpl3+))))
(define-public emacs-zotxt
(package
@ -13632,6 +13985,18 @@ describing the key binding changes.")
(propagated-inputs
`(("emacs-evil" ,emacs-evil)
("emacs-iedit" ,emacs-iedit)))
(native-inputs
`(("emacs-ert-runner" ,emacs-ert-runner)))
(arguments
`(#:phases
(modify-phases %standard-phases
(add-before 'check 'fix-makefile
(lambda _
(substitute* "Makefile"
(("@cask exec ") ""))
#t)))
#:tests? #t
#:test-command '("make" "test")))
(home-page
"https://github.com/hlissner/evil-multiedit")
(synopsis "Multiple cursors for Evil mode")
@ -13861,7 +14226,7 @@ try completing. See @code{fish-completion-fallback-on-bash-p}.")
("gif-screencast-cropping-program"
(string-append imagemagick "/bin/mogrify"))
("gif-screencast-optimize-program"
(string-append imagemagick "/bin/gifsicle")))))))))
(string-append gifsicle "/bin/gifsicle")))))))))
(home-page
"https://gitlab.com/Ambrevar/emacs-gif-screencast")
(synopsis "One-frame-per-action GIF recording")
@ -15514,6 +15879,31 @@ buffers, etc. It also has plug-ins to help your Emacs life.")
programs can use this table component for the application UI.")
(license license:gpl3+))))
(define-public emacs-leetcode
(let ((commit "8624496af9e105c3e07d88844b37ede87540d604")
(revision "1"))
(package
(name "emacs-leetcode")
(version (git-version "0" "1" commit))
(home-page "https://github.com/ginqi7/leetcode-emacs.git")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/ginqi7/leetcode-emacs")
(commit commit)))
(sha256
(base32
"11pp7ydlmwrv7djf9mwk4xzn295xbmdnj5x13bfj5yjpjr89p531"))
(file-name (git-file-name name version))))
(build-system emacs-build-system)
(propagated-inputs
`(("emacs-names" ,emacs-names)
("emacs-ctable" ,emacs-ctable)))
(synopsis "Solve and submit LeetCode problems from within Emacs")
(description "This package provides an Emacs interface to LeetCode
allowing users to log in and solve problems of their choice using Emacs.")
(license license:unlicense))))
(define-public emacs-epc
(let ((commit "e1bfa5ca163273859336e3cc89b4b6460f7f8cda"))
(package
@ -15998,7 +16388,7 @@ the standard @code{Dockerfile} file format.")
(define-public emacs-lsp-mode
(package
(name "emacs-lsp-mode")
(version "6.0")
(version "6.1")
(source (origin
(method git-fetch)
(uri (git-reference
@ -16007,12 +16397,13 @@ the standard @code{Dockerfile} file format.")
(file-name (git-file-name name version))
(sha256
(base32
"1v1mq6ixzlgiazj8fmg4xaqhsqn3l89iqy74yndhvzh2rdf0pbkl"))))
"0jn5slhv9zfs446a5966bfg9dq144g22v79wnkx9hxq7if78p652"))))
(build-system emacs-build-system)
(propagated-inputs
`(("emacs-dash" ,emacs-dash)
("emacs-f" ,emacs-f)
("emacs-ht" ,emacs-ht)
("emacs-markdown-mode" ,emacs-markdown-mode)
("emacs-spinner" ,emacs-spinner)))
(home-page "https://github.com/emacs-lsp/lsp-mode")
(synopsis "Emacs client and library for the Language Server Protocol")
@ -16254,11 +16645,10 @@ unescaping of quotes.")
(define-public emacs-flycheck-haskell
(let ((commit "32ddff87165a7d3a35e7318bee997b5b4bd41278")
(version "0.8")
(revision "79"))
(revision "2"))
(package
(name "emacs-flycheck-haskell")
(version (git-version version revision commit))
(version (git-version "0.8" revision commit))
(source
(origin
(method git-fetch)
@ -16276,6 +16666,8 @@ unescaping of quotes.")
("emacs-flycheck" ,emacs-flycheck)
("emacs-haskell-mode" ,emacs-haskell-mode)
("emacs-let-alist" ,emacs-let-alist)))
(arguments
`(#:include '("\\.el$" "\\.hs$")))
(home-page "https://github.com/flycheck/flycheck-haskell")
(synopsis "Flycheck for Haskell")
(description "This package configures syntax-checking for Haskell
@ -17257,6 +17649,17 @@ corresponding Evil keys.")
(build-system emacs-build-system)
(propagated-inputs
`(("emacs-evil" ,emacs-evil)))
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'set-shell
;; Setting the SHELL environment variable is required for the tests
;; to find sh.
(lambda _
(setenv "SHELL" (which "sh"))
#t)))
#:tests? #t
#:test-command '("make" "test")))
(home-page "https://github.com/mamapanda/evil-traces")
(synopsis "Visual hints for @code{evil-ex}")
(description "This package adds visual hints to certain @code{ex}

View File

@ -15,7 +15,7 @@
;;; Copyright © 2017 Jan Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2018 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2018 Mathieu Othacehe <m.othacehe@gmail.com>
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
;;;
;;; This file is part of GNU Guix.
;;;
@ -68,14 +68,14 @@
(define-public emacs
(package
(name "emacs")
(version "26.2")
(version "26.3")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnu/emacs/emacs-"
version ".tar.xz"))
(sha256
(base32
"13n5m60i47k96mpv5pp6km2ph9rv2m5lmbpzj929v02vpsfyc70m"))
"119ldpk7sgn9jlpyngv5y4z3i7bb8q3xp4p0qqi7i5nq39syd42d"))
(patches (search-patches "emacs-exec-path.patch"
"emacs-fix-scheme-indent-function.patch"
"emacs-source-date-epoch.patch"))
@ -114,7 +114,7 @@
#t))))
(build-system glib-or-gtk-build-system)
(arguments
`(#:tests? #f ; no check target
`(#:tests? #f ; no check target
#:configure-flags (list "--with-modules"
"--disable-build-details")
#:phases

View File

@ -119,8 +119,8 @@
;; Building from recent Git because the official 5.0 release no longer builds.
(define-public dolphin-emu
(let ((commit "24718c1a389e4f51db974575cd15c372485b92e2")
(revision "6"))
(let ((commit "a9745400ec5cea7e55d94955afbdc44d1a4982d1")
(revision "7"))
(package
(name "dolphin-emu")
(version (git-version "5.0" revision commit))
@ -140,13 +140,13 @@
(string-append "Externals/" dir)))
'("LZO" "OpenAL" "Qt" "SFML" "curl" "ffmpeg"
"gettext" "hidapi" "libpng" "libusb" "mbedtls"
"miniupnpc" "zlib"))
"miniupnpc" "MoltenVK" "zlib"))
;; Clean up source.
(for-each delete-file (find-files "." ".*\\.(bin|dsy|exe|jar|rar)$"))
#t))
(sha256
(base32
"1d92rhnw307j3m6swk6bycb8fyc7vw2hfgakd5hpsc4qw65vxfq8"))))
"0ic08ii4vlqlmk2wkfc99jiy6nji2wfq56r7slj23wgvhznnaabk"))))
(build-system cmake-build-system)
(arguments
'(#:tests? #f
@ -169,7 +169,11 @@
(copy-file "font_western.bin" "../Data/Sys/GC/font_western.bin")
(chdir "..")
(substitute* "Source/Core/VideoBackends/Vulkan/VulkanLoader.cpp"
(("libvulkan.so") libvulkan))
(("\"vulkan\", 1") (string-append "\"vulkan\"")))
(substitute* "Source/Core/VideoBackends/Vulkan/VulkanLoader.cpp"
(("\"vulkan\"") (string-append "\"" libvulkan "\"")))
(substitute* "Source/Core/VideoBackends/Vulkan/VulkanLoader.cpp"
(("Common::DynamicLibrary::GetVersionedFilename") ""))
#t))))
;; The FindGTK2 cmake script only checks hardcoded directories for
@ -1053,7 +1057,7 @@ emulation community. It provides highly accurate emulation.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0xxd9nhqiclpkdd9crymvba37fl0xs5mikwhya68nfzcgar7w480"))))
(base32 "0jwy5winrm87s6xa645fwa47x242r25m6i3rwf10x59448bd19r6"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; no tests

View File

@ -12,6 +12,7 @@
;;; Copyright © 2018, 2019 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2019 Tim Stahel <swedneck@swedneck.xyz>
;;; Copyright © 2019 Jovany Leandro G.C <bit4bit@riseup.net>
;;; Copyright © 2019 Steve Sprang <scs@stevesprang.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -1940,7 +1941,7 @@ simulator backends @code{Qucsator}, @code{ngspice} and @code{Xyce}.")
(define-public librepcb
(package
(name "librepcb")
(version "0.1.1")
(version "0.1.2")
(source
(origin
(method url-fetch)
@ -1948,7 +1949,7 @@ simulator backends @code{Qucsator}, @code{ngspice} and @code{Xyce}.")
version "/librepcb-" version "-source.zip"))
(sha256
(base32
"08lm95kr5gqyqyy4hcii0micqa6ryhbv0harvdndmpvi4ix1ggi8"))))
"1xgk0r3nxdd2cy7d1k165d005gsngnz1v2wbwivacw7gis0i8ip7"))))
(build-system gnu-build-system)
(inputs
`(("qtbase" ,qtbase)
@ -2109,3 +2110,38 @@ while keeping the user experience at mind. Cutter is created by reverse
engineers for reverse engineers.")
(license (list license:cc-by-sa3.0 ;the "Iconic" icon set
license:gpl3+)))) ;everything else
(define-public lib3mf
(package
(name "lib3mf")
(version "1.8.1")
(source
(origin
(method git-fetch)
(uri (git-reference (url "https://github.com/3MFConsortium/lib3mf.git")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"11wpk6n9ga2p57h1dcrp37w77mii0r7r6mlrgmykf7rvii1rzgqd"))))
(build-system cmake-build-system)
(native-inputs
`(("googletest-source" ,(package-source googletest))))
(inputs
`(("libuuid" ,util-linux)))
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'unpack-googletest
(lambda* (#:key inputs #:allow-other-keys)
(copy-recursively (assoc-ref inputs "googletest-source")
"UnitTests/googletest")
#t)))))
(synopsis "Implementation of the 3D Manufacturing Format (3MF) file standard")
(description
"Lib3MF is a C++ implementation of the 3D Manufacturing Format (3MF) file
standard. It offers a way to integrate 3MF reading and writing capabilities, as
well as conversion and validation tools for input and output data. The
specification can be downloaded at @url{http://3mf.io/specification/}.")
(home-page "https://3mf.io/")
(license license:bsd-2)))

View File

@ -65,7 +65,7 @@
(define-public efl
(package
(name "efl")
(version "1.22.3")
(version "1.22.4")
(source (origin
(method url-fetch)
(uri (string-append
@ -73,7 +73,7 @@
version ".tar.xz"))
(sha256
(base32
"1j1i8cwq4ym9z34ikv35mdmv5q7q69hdp494mc6l03g9n6cl2yky"))))
"084ihxy6g86yczhln5vn1amxi4qzqhvk4lpz9005kx92i6wh4h25"))))
(outputs '("out" ; 53 MB
"include")) ; 21 MB
(build-system gnu-build-system)

View File

@ -112,6 +112,7 @@
#:use-module (gnu packages guile)
#:use-module (gnu packages haskell)
#:use-module (gnu packages haskell-crypto)
#:use-module (gnu packages haskell-xyz)
#:use-module (gnu packages icu4c)
#:use-module (gnu packages image)
#:use-module (gnu packages imagemagick)

View File

@ -275,7 +275,7 @@ output file formats and printers.")
(home-page "https://www.ghostscript.com/")
(license license:agpl3+)))
(define-public ghostscript/fixed
(define ghostscript/fixed
;; This adds the Freetype dependency (among other things), which fixes the
;; rendering issues described in <https://issues.guix.gnu.org/issue/34877>.
(package/inherit

View File

@ -2534,24 +2534,40 @@ and objects.")
(define-public libxklavier
(package
(name "libxklavier")
(version "5.3")
(version "5.4")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/"
version "/" name "-" version ".tar.xz"))
;; Note: There's no tarball at ftp.gnome.org for this version.
(method git-fetch)
(uri (git-reference
(url "https://anongit.freedesktop.org/git/libxklavier")
(commit (string-append "libxklavier-" version))))
(sha256
(base32
"016lpdv35z0qsw1cprdc2k5qzkdi5waj6qmr0a2q6ljn9g2kpv7b"))))
"1w1x5mrgly2ldiw3q2r6y620zgd89gk7n90ja46775lhaswxzv7a"))
(file-name (git-file-name name version))))
(build-system gnu-build-system)
(arguments
'(#:configure-flags
'(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'no-configure
(lambda* _
(setenv "NOCONFIGURE" "1")
#t)))
#:configure-flags
(list (string-append "--with-xkb-base="
(assoc-ref %build-inputs "xkeyboard-config")
"/share/X11/xkb"))))
"/share/X11/xkb")
"--disable-xmodmap-support")))
(native-inputs
`(("glib:bin" ,glib "bin") ; for glib-mkenums, etc.
("gobject-introspection" ,gobject-introspection)
("pkg-config" ,pkg-config)))
("pkg-config" ,pkg-config)
("gtk-doc" ,gtk-doc)
("intltool" ,intltool)
("which" ,which)
("autoconf" ,autoconf)
("automake" ,automake)
("libtool" ,libtool)))
(propagated-inputs
;; Required by libxklavier.pc.
`(("glib" ,glib)
@ -4337,15 +4353,15 @@ work and the interface is well tested.")
(define-public eolie
(package
(name "eolie")
(version "0.9.62")
(version "0.9.63")
(source (origin
(method url-fetch)
(uri (string-append "https://gitlab.gnome.org/World/eolie/"
"uploads/bb4aad19272cc636bd17f2f6602127fe/"
"uploads/d42b466752729a0d3fa828a721e25043/"
"eolie-" version ".tar.xz"))
(sha256
(base32
"06v76hg87fnhw45dil5vvl20myvaa38n1jqsl0lmkkq6af4mk8wx"))))
"11pp8g0w22h1q0bbj9517l5838gcymvvp8fp9kh6h2dmgir2ssih"))))
(build-system meson-build-system)
(arguments
`(#:glib-or-gtk? #t
@ -8265,7 +8281,7 @@ advanced image management tool")
(define-public libhandy
(package
(name "libhandy")
(version "0.0.10")
(version "0.0.11")
(source
(origin
(method git-fetch)
@ -8274,7 +8290,7 @@ advanced image management tool")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1702hbdqhfpgw0c4vj2ag08vgl83byiryrbngbq11b9azmj3jhzs"))))
(base32 "0622zp5wrvn5bvgardijxd11y76g1i54fs32y03dw9nrar7i6vb0"))))
(build-system meson-build-system)
(arguments
`(#:configure-flags
@ -8282,12 +8298,6 @@ advanced image management tool")
"-Dgtk_doc=true")
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'disable-broken-test
(lambda _
;; This test fails for unknown reasons
(substitute* "tests/meson.build"
(("'test-dialog',") ""))
#t))
(add-before 'check 'pre-check
(lambda _
;; Tests require a running X server.
@ -8303,7 +8313,10 @@ advanced image management tool")
("gtk-doc" ,gtk-doc)
("pkg-config" ,pkg-config)
("gettext" ,gettext-minimal)
("xorg-server" ,xorg-server)))
("xorg-server" ,xorg-server)
;; Test suite dependencies.
("hicolor-icon-theme" ,hicolor-icon-theme)))
(home-page "https://source.puri.sm/Librem5/libhandy")
(synopsis "Library full of GTK+ widgets for mobile phones")
(description "The aim of the handy library is to help with developing user

View File

@ -3,7 +3,7 @@
;;; Copyright © 2015 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2017 Chris Marusich <cmmarusich@gmail.com>
;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2017, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2019 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;;
;;; This file is part of GNU Guix.
@ -231,17 +231,14 @@ to be read using the GNOME Yelp program.")
(define-public gwenhywfar
(package
(name "gwenhywfar")
(version "4.20.0")
(version "4.20.2")
(source
(origin
(method url-fetch)
(uri (string-append "https://www.aquamaniac.de/sites/download/"
"download.php?package=01&release=208&file=02&"
"dummy=gwenhywfar-" version ".tar.gz"))
(file-name (string-append name "-" version ".tar.gz"))
(uri (string-append "https://www.aquamaniac.de/rdm/attachments/"
"download/108/gwenhywfar-" version ".tar.gz"))
(sha256
(base32
"1c0g3f8jk6j693774ifslx2ds4ksabgbbalhhm9gk20kpamxm22s"))))
(base32 "0w1j7ppr1247kr3bpn4dqwyxp6cl8mfgr0m4782iz8f8a4ixjkqg"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags
@ -271,17 +268,14 @@ applications and libraries. It is used by AqBanking.")
(define-public aqbanking
(package
(name "aqbanking")
(version "5.7.8")
(version "5.8.1")
(source
(origin
(method url-fetch)
(uri (string-append "https://www.aquamaniac.de/sites/download/"
"download.php?package=03&release=217&file=02&"
"dummy=aqbanking-" version ".tar.gz"))
(file-name (string-append name "-" version ".tar.gz"))
(uri (string-append "https://www.aquamaniac.de/rdm/attachments/"
"download/105/aqbanking-" version ".tar.gz"))
(sha256
(base32
"0s67mysskbiw1h1p0np4ph4351r7wq3nc873vylam7lsqi66xy0n"))))
(base32 "0m44n2hyxprxzq7ijkrd7rmhhl0r033s1k21ix9y67a0p9skl1mg"))))
(build-system gnu-build-system)
(arguments
`(;; Parallel building fails because aqhbci is required before it's

View File

@ -426,7 +426,7 @@ from forcing GEXP-PROMISE."
#:system system
#:guile-for-build guile)))
(define %icecat-version "60.8.0-guix1")
(define %icecat-version "60.9.0-guix1")
;; 'icecat-source' is a "computed" origin that generates an IceCat tarball
;; from the corresponding upstream Firefox ESR tarball, using the 'makeicecat'
@ -448,7 +448,7 @@ from forcing GEXP-PROMISE."
"firefox-" upstream-firefox-version ".source.tar.xz"))
(sha256
(base32
"1gkz90clarbhgfxhq91s0is6lw6bfymyjb0xbyyswdg68kcqfcy1"))))
"0gy5x2rnnbkqmjd9sq93s3q5na9nkba68xwpizild7k6qn63qicz"))))
(upstream-icecat-base-version "60.7.0") ; maybe older than base-version
(upstream-icecat-gnu-version "1")

View File

@ -3119,30 +3119,28 @@ as conversion to and from @command{net.Addr}.")
(license license:expat))))
(define-public go-github-com-urfave-cli
(let ((commit "693af58b4d51b8fcc7f9d89576da170765980581")
(revision "0"))
(package
(name "go-github-com-urfave-cli")
(version (git-version "1.20.0" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/urfave/cli.git")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"1krq752xgy658an1696vf4dc2zmp541clwjinhn11394sx2qksh6"))))
(build-system go-build-system)
(arguments
'(#:import-path "github.com/urfave/cli"))
(home-page "https://github.com/urfave/cli")
(synopsis "Simple, fast, and fun package for building command line apps in Go")
(description "@command{cli} is a simple, fast, and fun package for
(package
(name "go-github-com-urfave-cli")
(version "1.21.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/urfave/cli.git")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"104jldhxn6d97l5vsbsl0q8hgy1bxrahbr6dbfqrlppva51jmydd"))))
(build-system go-build-system)
(arguments
'(#:import-path "github.com/urfave/cli"))
(home-page "https://github.com/urfave/cli")
(synopsis "Simple, fast, and fun package for building command line apps in Go")
(description "@command{cli} is a simple, fast, and fun package for
building command line apps in Go. The goal is to enable developers to write
fast and distributable command line applications in an expressive way.")
(license license:expat))))
(license license:expat)))
(define-public go-github-com-whyrusleeping-json-filter
(let ((commit "ff25329a9528f01c5175414f16cc0a6a162a5b8b")
@ -3660,3 +3658,27 @@ and aid debugging.")
(description "This package provides a cron library for Go. It implements
a cron spec parser and job runner.")
(license license:expat)))
(define-public go-github-com-shirou-gopsutil
(let ((commit "47ef3260b6bf6ead847e7c8fc4101b33c365e399")
(revision "0"))
(package
(name "go-github-com-shirou-gopsutil")
(version (git-version "v2.19.7" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/shirou/gopsutil")
(commit commit))) ; XXX
(sha256
(base32
"0x1g4r32q4201nr2b754xnrrndmwsrhfr7zg37spya86qrmijnws"))))
(build-system go-build-system)
(arguments
'(#:import-path "github.com/shirou/gopsutil"))
(synopsis "Process and system monitoring in Go")
(description "This package provides a library for retrieving information
on running processes and system utilization (CPU, memory, disks, network,
sensors).")
(home-page "https://github.com/shirou/gopsutil")
(license license:bsd-3))))

View File

@ -143,7 +143,7 @@ between two other data points.")
(define-public gama
(package
(name "gama")
(version "2.06")
(version "2.07")
(source
(origin
(method url-fetch)
@ -151,7 +151,7 @@ between two other data points.")
version ".tar.gz"))
(sha256
(base32
"06xp3kj099b6m2fsmgcbzgj7xk4j0drsps52m4fr8vc6fglsh44p"))))
"0nmc6mkd55nryfffq5k9c09dhkbq6bfs06af8ammhbh5jzdn3s36"))))
(build-system gnu-build-system)
(arguments '(#:parallel-tests? #f)) ; race condition
(native-inputs

View File

@ -49,7 +49,7 @@
#:use-module (gnu packages gnome)
#:use-module (gnu packages graphviz)
#:use-module (gnu packages gtk)
#:use-module (gnu packages haskell)
#:use-module (gnu packages haskell-xyz)
#:use-module (gnu packages image)
#:use-module (gnu packages imagemagick)
#:use-module (gnu packages jemalloc)

View File

@ -172,7 +172,9 @@ dependencies.")
Type=Application~%"
,name ,synopsis %output))))
#t)))))
(native-inputs `(("pkg-config" ,pkg-config)
(native-inputs `(("guile" ,guile-2.2)
("guile-xcb" ,guile-xcb)
("pkg-config" ,pkg-config)
("texinfo" ,texinfo)))
(inputs `(("guile" ,guile-2.2)
("guile-xcb" ,guile-xcb)))

View File

@ -2266,21 +2266,20 @@ list of components. This module takes care of that for you.")
(define-public guile-gi
(package
(name "guile-gi")
(version "0.0.2")
(version "0.2.0")
(source (origin
(method url-fetch)
(uri (string-append "http://lonelycactus.com/tarball/guile_gi-"
version ".tar.gz"))
(sha256
(base32
"0hs0viqzff7nzgcmyw721ima1jyymrlzrcycpgwrs6iprscxvqwn"))))
"1n4pbrmbrjkrx826a4m31ag5c35rgkj1sirqh4qalk7gg67cfb41"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags '("--with-gnu-filesystem-hierarchy")
;; The atomic_int_set test does not actually fail.
#:make-flags '("XFAIL_TESTS=strjoinv.scm")))
`(#:configure-flags '("--with-gnu-filesystem-hierarchy")))
(native-inputs
`(("gettext" ,gnu-gettext)
("glib:bin" ,glib "bin") ; for glib-compile-resources
("libtool" ,libtool)
("pkg-config" ,pkg-config)))
(propagated-inputs

View File

@ -1,12 +1,16 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2015 Siniša Biđin <sinisa@bidin.eu>
;;; Copyright © 2015, 2017, 2018 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2016, 2017, 2018 ng0 <ng0@n0.is>
;;; Copyright © 2017 Danny Milosavljevic <dannym@scratchpost.org>
;;; Copyright © 2017, 2018 Alex Vong <alexvong1995@gmail.com>
;;; Copyright © 2017, 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018 Timothy Sample <samplet@ngyro.com>
;;; Copyright © 2018 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2016, 2017 Leo Famulari <leo@famulari.name>
;;; Copyright © 2015 Paul van der Walt <paul@denknerd.org>
;;; Copyright © 2019 Kyle Meyer <kyle@kyleam.com>
;;; Copyright © 2015 John Soo <jsoo1@asu.edu>
;;;
;;; This file is part of GNU Guix.
;;;
@ -25,6 +29,7 @@
(define-module (gnu packages haskell-apps)
#:use-module (guix download)
#:use-module (guix git-download)
#:use-module (guix packages)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix build-system haskell)
@ -35,13 +40,110 @@
#:use-module (gnu packages haskell-check)
#:use-module (gnu packages haskell-crypto)
#:use-module (gnu packages haskell-web)
#:use-module (gnu packages haskell-xyz)
#:use-module (gnu packages ncurses)
#:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages rsync)
#:use-module (gnu packages sdl)
#:use-module (gnu packages version-control))
(define-public cabal-install
(package
(name "cabal-install")
(version "2.2.0.0")
(source
(origin
(method url-fetch)
(uri (string-append
"https://hackage.haskell.org/package/cabal-install/cabal-install-"
version
".tar.gz"))
(sha256
(base32 "1nd3ch7qr4dpfxhgkcq2lnhvszx2kjgnn1kwb44vk9y5jgfs4mn8"))))
(arguments `(#:tests? #f)) ; FIXME: testing libraries are missing.
(build-system haskell-build-system)
(inputs
`(("ghc-async" ,ghc-async)
("ghc-base16-bytestring" ,ghc-base16-bytestring)
("ghc-cryptohash-sha256" ,ghc-cryptohash-sha256)
("ghc-echo" ,ghc-echo)
("ghc-edit-distance" ,ghc-edit-distance)
("ghc-hackage-security" ,ghc-hackage-security)
("ghc-hashable" ,ghc-hashable)
("ghc-http" ,ghc-http)
("ghc-network-uri" ,ghc-network-uri)
("ghc-network" ,ghc-network)
("ghc-random" ,ghc-random)
("ghc-resolv" ,ghc-resolv)
("ghc-tar" ,ghc-tar)
("ghc-zlib" ,ghc-zlib)))
(home-page "https://www.haskell.org/cabal/")
(synopsis "Command-line interface for Cabal and Hackage")
(description
"The cabal command-line program simplifies the process of managing
Haskell software by automating the fetching, configuration, compilation and
installation of Haskell libraries and programs.")
(license license:bsd-3)))
(define-public corrode
(let ((commit "b6699fb2fa552a07c6091276285a44133e5c9789"))
(package
(name "corrode")
(version (string-append "0.0.1-" (string-take commit 7)))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/jameysharp/corrode.git")
(commit "b6699fb2fa552a07c6091276285a44133e5c9789")))
(file-name
(string-append name "-" version "-checkout"))
(sha256
(base32 "02v0yyj6sk4gpg2222wzsdqjxn8w66scbnf6b20x0kbmc69qcz4r"))))
(build-system haskell-build-system)
(inputs
`(("ghc-language-c" ,ghc-language-c)
("ghc-markdown-unlit" ,ghc-markdown-unlit)))
(home-page "https://github.com/jameysharp/corrode")
(synopsis "Automatic semantics-preserving translation from C to Rust")
(description
"This program reads a C source file and prints an equivalent module in
Rust syntax. It is intended to be useful for two different purposes:
@enumerate
@item Partial automation for migrating legacy code that was implemented in C.
@item A new, complementary approach to static analysis for C programs.
@end enumerate\n")
(license license:gpl2+))))
(define-public cpphs
(package
(name "cpphs")
(version "1.20.8")
(source
(origin
(method url-fetch)
(uri (string-append
"https://hackage.haskell.org/package/" name "/"
name "-" version ".tar.gz"))
(sha256
(base32
"1bh524asqhk9v1s0wvipl0hgn7l63iy3js867yv0z3h5v2kn8vg5"))))
(build-system haskell-build-system)
(inputs
`(("ghc-polyparse" ,ghc-polyparse)
("ghc-old-locale" ,ghc-old-locale)
("ghc-old-time" ,ghc-old-time)))
(home-page "http://projects.haskell.org/cpphs/")
(synopsis "Liberalised re-implementation of cpp, the C pre-processor")
(description "Cpphs is a re-implementation of the C pre-processor that is
both more compatible with Haskell, and itself written in Haskell so that it
can be distributed with compilers. This version of the C pre-processor is
pretty-much feature-complete and compatible with traditional (K&R)
pre-processors. Additional features include: a plain-text mode; an option to
unlit literate code files; and an option to turn off macro-expansion.")
(license (list license:lgpl2.1+ license:gpl3+))))
;; Darcs has no https support: http://irclog.perlgeek.de/darcs/2016-09-17
;; http://darcs.net/manual/Configuring_darcs.html#SECTION00440070000000000000
;; and results of search engines will show that if the protocol is http, https
@ -276,93 +378,116 @@ used to keep a folder in sync between computers.")
(license (list license:gpl3+
license:agpl3+))))
(define-public ghc-sdl2
(define-public hlint
(package
(name "ghc-sdl2")
(version "2.4.1.0")
(name "hlint")
(version "2.1.10")
(source
(origin
(method url-fetch)
(uri (string-append "https://hackage.haskell.org/package/"
"sdl2/sdl2-" version ".tar.gz"))
(uri (string-append
"https://hackage.haskell.org/package/" name
"/" name "-" version ".tar.gz"))
(sha256
(base32
"0p4b12fmxps0sbnkqdfy0qw19s355yrkw7fgw6xz53wzq706k991"))))
"19as2m9g75cr6n1agzvsij0cvqhb0wbjlk31w4y5d5mns87dki0w"))))
(build-system haskell-build-system)
(arguments '(#:tests? #f)) ; tests require graphical environment
(inputs
`(("ghc-exceptions" ,ghc-exceptions)
("ghc-linear" ,ghc-linear)
("ghc-statevar" ,ghc-statevar)
`(("cpphs" ,cpphs)
("ghc-unordered-containers" ,ghc-unordered-containers)
("ghc-yaml" ,ghc-yaml)
("ghc-vector" ,ghc-vector)
("sdl2" ,sdl2)))
(native-inputs
`(("ghc-weigh" ,ghc-weigh)
("pkg-config" ,pkg-config)))
(home-page "http://hackage.haskell.org/package/sdl2")
(synopsis "High- and low-level bindings to the SDL library")
(description
"This package contains bindings to the SDL 2 library, in both high- and
low-level forms. The @code{SDL} namespace contains high-level bindings, where
enumerations are split into sum types, and we perform automatic
error-checking. The @code{SDL.Raw} namespace contains an almost 1-1
translation of the C API into Haskell FFI calls. As such, this does not
contain sum types nor error checking. Thus this namespace is suitable for
building your own abstraction over SDL, but is not recommended for day-to-day
programming.")
("ghc-data-default" ,ghc-data-default)
("ghc-cmdargs" ,ghc-cmdargs)
("ghc-haskell-src-exts" ,ghc-haskell-src-exts)
("ghc-haskell-src-exts-util" ,ghc-haskell-src-exts-util)
("ghc-uniplate" ,ghc-uniplate)
("ghc-ansi-terminal" ,ghc-ansi-terminal)
("ghc-extra" ,ghc-extra)
("ghc-refact" ,ghc-refact)
("ghc-aeson" ,ghc-aeson)
("hscolour" ,hscolour)))
(home-page "http://community.haskell.org/~ndm/hlint/")
(synopsis "Suggest improvements for Haskell source code")
(description "HLint reads Haskell programs and suggests changes that
hopefully make them easier to read. HLint also makes it easy to disable
unwanted suggestions, and to add your own custom suggestions.")
(license license:bsd-3)))
(define-public ghc-sdl2-mixer
(define-public hoogle
(package
(name "ghc-sdl2-mixer")
(version "1.1.0")
(name "hoogle")
(version "5.0.17.3")
(source
(origin
(method url-fetch)
(uri (string-append "https://hackage.haskell.org/package/sdl2-mixer/"
"sdl2-mixer-" version ".tar.gz"))
(uri
(string-append
"https://hackage.haskell.org/package/hoogle/hoogle-"
version ".tar.gz"))
(sha256
(base32
"1k8avyccq5l9z7bwxigim312yaancxl1sr3q6a96bcm7pnhiak0g"))))
"174gp41v0krzj37m75pnr3aawyhkbk2wq4q6zk2z3zh0avvvmgk6"))))
(build-system haskell-build-system)
(inputs
`(("ghc-data-default-class" ,ghc-data-default-class)
("ghc-lifted-base" ,ghc-lifted-base)
("ghc-monad-control" ,ghc-monad-control)
("ghc-sdl2" ,ghc-sdl2)
`(("ghc-network-uri" ,ghc-network-uri)
("ghc-network" ,ghc-network)
("ghc-quickcheck" ,ghc-quickcheck)
("ghc-aeson" ,ghc-aeson)
("ghc-cmdargs" ,ghc-cmdargs)
("ghc-conduit" ,ghc-conduit)
("ghc-conduit-extra" ,ghc-conduit-extra)
("ghc-connection" ,ghc-connection)
("ghc-extra" ,ghc-extra)
("ghc-old-locale" ,ghc-old-locale)
("ghc-haskell-src-exts" ,ghc-haskell-src-exts)
("ghc-http-conduit" ,ghc-http-conduit)
("ghc-http-types" ,ghc-http-types)
("ghc-js-flot" ,ghc-js-flot)
("ghc-js-jquery" ,ghc-js-jquery)
("ghc-mmap" ,ghc-mmap)
("ghc-process-extras" ,ghc-process-extras)
("ghc-resourcet" ,ghc-resourcet)
("ghc-storable-tuple" ,ghc-storable-tuple)
("ghc-tar" ,ghc-tar)
("ghc-uniplate" ,ghc-uniplate)
("ghc-utf8-string" ,ghc-utf8-string)
("ghc-vector" ,ghc-vector)
("sdl2-mixer" ,sdl2-mixer)))
(native-inputs
`(("pkg-config" ,pkg-config)))
(home-page "http://hackage.haskell.org/package/sdl2-mixer")
(synopsis "Bindings to SDL2 mixer")
(description "This package provides Haskell bindings to
@code{SDL2_mixer}.")
("ghc-wai" ,ghc-wai)
("ghc-wai-logger" ,ghc-wai-logger)
("ghc-warp" ,ghc-warp)
("ghc-warp-tls" ,ghc-warp-tls)
("ghc-zlib" ,ghc-zlib)))
(home-page "https://hoogle.haskell.org/")
(synopsis "Haskell API Search")
(description "Hoogle is a Haskell API search engine, which allows
you to search many standard Haskell libraries by either function name,
or by approximate type signature.")
(license license:bsd-3)))
(define-public ghc-sdl2-image
(define-public hscolour
(package
(name "ghc-sdl2-image")
(version "2.0.0")
(name "hscolour")
(version "1.24.4")
(source
(origin
(method url-fetch)
(uri (string-append "https://hackage.haskell.org/package/sdl2-image/"
"sdl2-image-" version ".tar.gz"))
(uri (string-append
"https://hackage.haskell.org/package/hscolour/hscolour-"
version
".tar.gz"))
(sha256
(base32
"1pr6dkg73cy9z0w54lrkj9c5bhxj56nl92lxikjy8kz6nyr455rr"))))
"079jwph4bwllfp03yfr26s5zc6m6kw3nhb1cggrifh99haq34cr4"))))
(build-system haskell-build-system)
(inputs
`(("ghc-sdl2" ,ghc-sdl2)
("sdl2-image" ,sdl2-image)))
(native-inputs
`(("pkg-config" ,pkg-config)))
(home-page "http://hackage.haskell.org/package/sdl2-image")
(synopsis "Bindings to SDL2_image")
(description "This package provides Haskell bindings to
@code{SDL2_image}.")
(license license:expat)))
(home-page "https://hackage.haskell.org/package/hscolour")
(synopsis "Script to colourise Haskell code")
(description "HSColour is a small Haskell script to colourise Haskell
code. It currently has six output formats: ANSI terminal codes (optionally
XTerm-256colour codes), HTML 3.2 with font tags, HTML 4.01 with CSS, HTML 4.01
with CSS and mouseover annotations, XHTML 1.0 with inline CSS styling, LaTeX,
and mIRC chat codes.")
(license license:bsd-3)))
(define-public raincat
(package
@ -405,3 +530,73 @@ play inspired from classics Lemmings and The Incredible Machine. The project
proved to be an excellent learning experience for the programmers. Everything
is programmed in Haskell.")
(license license:bsd-3)))
(define-public shellcheck
(package
(name "shellcheck")
(version "0.7.0")
(source
(origin
(method url-fetch)
(uri (string-append
"https://hackage.haskell.org/package/ShellCheck/ShellCheck-"
version ".tar.gz"))
(sha256
(base32 "1vx895cp5k5h0680xfwj74lk97m9y627n965x6srds0gfnbkzy9s"))
(file-name (string-append name "-" version ".tar.gz"))))
(build-system haskell-build-system)
(inputs
`(("ghc-aeson" ,ghc-aeson)
("ghc-diff" ,ghc-diff)
("ghc-quickcheck" ,ghc-quickcheck)
("ghc-regex-tdfa" ,ghc-regex-tdfa)))
(home-page "https://github.com/koalaman/shellcheck")
(synopsis "Static analysis for shell scripts")
(description "@code{shellcheck} provides static analysis for
@command{bash} and @command{sh} shell scripts.
It gives warnings and suggestions in order to:
@enumerate
@item Point out and clarify typical beginner's syntax issues that cause
a shell to give cryptic error messages.
@item Point out and clarify typical intermediate level semantic problems
that cause a shell to behave strangely and counter-intuitively.
@item Point out subtle caveats, corner cases and pitfalls that may cause an
advanced user's otherwise working script to fail under future circumstances.
@end enumerate")
(license license:gpl3+)))
(define-public stylish-haskell
(package
(name "stylish-haskell")
(version "0.9.2.2")
(source
(origin
(method url-fetch)
(uri
(string-append
"mirror://hackage/package/stylish-haskell/"
"stylish-haskell-" version ".tar.gz"))
(sha256
(base32
"1zs624xqp6j8vrl6pfv18dm8vz8hvz25grri65ximxhcizgwhnax"))))
(build-system haskell-build-system)
(inputs
`(("ghc-aeson" ,ghc-aeson)
("ghc-file-embed" ,ghc-file-embed)
("ghc-haskell-src-exts" ,ghc-haskell-src-exts)
("ghc-semigroups" ,ghc-semigroups)
("ghc-syb" ,ghc-syb)
("ghc-yaml" ,ghc-yaml)
("ghc-strict" ,ghc-strict)
("ghc-optparse-applicative" ,ghc-optparse-applicative)
("ghc-hunit" ,ghc-hunit)
("ghc-test-framework" ,ghc-test-framework)
("ghc-test-framework-hunit" ,ghc-test-framework-hunit)))
(home-page "https://github.com/jaspervdj/stylish-haskell")
(synopsis "Haskell code prettifier")
(description
"A simple Haskell code prettifier. The goal is not to format all of the
code in a file, just clean up import statements and a few other tedious
items. This tool tries to help where necessary without getting in the way.")
(license license:bsd-3)))

View File

@ -28,8 +28,8 @@
(define-module (gnu packages haskell-check)
#:use-module (gnu packages)
#:use-module (gnu packages haskell)
#:use-module (gnu packages haskell-crypto)
#:use-module (gnu packages haskell-xyz)
#:use-module (guix build-system haskell)
#:use-module (guix download)
#:use-module ((guix licenses) #:prefix license:)
@ -837,3 +837,28 @@ of generated values by construction.
To get started quickly, see the examples:
@uref{https://github.com/hedgehogqa/haskell-hedgehog/tree/master/hedgehog-example}")
(license license:bsd-3)))
(define-public cabal-doctest
(package
(name "cabal-doctest")
(version "1.0.6")
(source
(origin
(method url-fetch)
(uri (string-append "https://hackage.haskell.org/package/"
"cabal-doctest/cabal-doctest-"
version ".tar.gz"))
(sha256
(base32
"0bgd4jdmzxq5y465r4sf4jv2ix73yvblnr4c9wyazazafddamjny"))))
(build-system haskell-build-system)
(arguments
`(#:cabal-revision
("1" "1bk85avgc93yvcggwbk01fy8nvg6753wgmaanhkry0hz55h7mpld")))
(home-page "https://github.com/phadej/cabal-doctest")
(synopsis "Setup.hs helper for running doctests")
(description
"To properly work, the @code{doctest} package needs plenty of
configuration. This library provides the common bits for writing custom
@file{Setup.hs} files.")
(license license:bsd-3)))

View File

@ -6,6 +6,7 @@
;;; Copyright © 2017 rsiddharth <s@ricketyspace.net>
;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2019 Robert Vollmert <rob@vllmrt.net>
;;; Copyright © 2019 John Soo <jsoo1@asu.edu>
;;;
;;; This file is part of GNU Guix.
;;;
@ -1463,3 +1464,56 @@ Together with the snap-core library upon which it depends, it provides a
clean and efficient Haskell programming interface to the HTTP
protocol.")
(license license:bsd-3)))
(define-public ghc-js-jquery
(package
(name "ghc-js-jquery")
(version "3.3.1")
(source
(origin
(method url-fetch)
(uri
(string-append
"https://hackage.haskell.org/package/js-jquery/js-jquery-"
version ".tar.gz"))
(sha256
(base32
"16q68jzbs7kp07dnq8cprdcc8fd41rim38039vg0w4x11lgniq70"))))
(build-system haskell-build-system)
(arguments `(#:tests? #f)) ; tests do network IO
(home-page "https://github.com/ndmitchell/js-jquery")
(synopsis "Obtain minified jQuery code")
(description "This package bundles the minified
@url{http://jquery.com/, jQuery} code into a Haskell package, so it can
be depended upon by Cabal packages. The first three components of the
version number match the upstream jQuery version. The package is
designed to meet the redistribution requirements of downstream
users (e.g. Debian).")
(license license:expat)))
(define-public ghc-js-flot
(package
(name "ghc-js-flot")
(version "0.8.3")
(source
(origin
(method url-fetch)
(uri
(string-append
"https://hackage.haskell.org/package/js-flot/js-flot-"
version ".tar.gz"))
(sha256
(base32
"0yjyzqh3qzhy5h3nql1fckw0gcfb0f4wj9pm85nafpfqp2kg58hv"))))
(build-system haskell-build-system)
(inputs
`(("ghc-http" ,ghc-http)))
(home-page "https://github.com/ndmitchell/js-flot")
(synopsis "Obtain minified flot code")
(description "This package bundles the minified
@url{http://www.flotcharts.org/, Flot} code (a jQuery plotting library)
into a Haskell package, so it can be depended upon by Cabal packages.
The first three components of the version number match the upstream flot
version. The package is designed to meet the redistribution
requirements of downstream users (e.g. Debian).")
(license license:expat)))

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -21,9 +21,9 @@
(define-module (gnu packages idris)
#:use-module (gnu packages)
#:use-module (gnu packages haskell)
#:use-module (gnu packages haskell-check)
#:use-module (gnu packages haskell-web)
#:use-module (gnu packages haskell-xyz)
#:use-module (gnu packages libffi)
#:use-module (gnu packages multiprecision)
#:use-module (gnu packages ncurses)

View File

@ -625,6 +625,81 @@ work.")
(home-page "https://jbig2dec.com")
(license license:gpl2+)))
(define-public jbigkit
(package
(name "jbigkit")
(version "2.1")
(source
(origin
(method url-fetch)
(uri (string-append "https://www.cl.cam.ac.uk/~mgk25/jbigkit/"
"download/jbigkit-" version ".tar.gz"))
(sha256
(base32 "0cnrcdr1dwp7h7m0a56qw09bv08krb37mpf7cml5sjdgpyv0cwfy"))
(modules '((guix build utils)))
(snippet
'(begin
;; Remove files without clear licence information.
(for-each delete-file-recursively
(list "contrib" "examples"))
#t))))
(build-system gnu-build-system)
(outputs (list "out" "pbmtools"))
(arguments
`(#:modules ((srfi srfi-26)
,@%gnu-build-system-modules)
#:phases
(modify-phases %standard-phases
(delete 'configure) ; no configure script
(replace 'install ; no make install target
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(lib (string-append out "/lib"))
(include (string-append out "/include")))
(with-directory-excursion "libjbig"
(for-each (cut install-file <> include)
(find-files "." "\\.h$"))
(for-each (cut install-file <> lib)
(find-files "." "\\.a$")))
#t)))
(add-after 'install 'install-pbmtools
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "pbmtools"))
(bin (string-append out "/bin"))
(man1 (string-append out "/share/man/man1"))
(man5 (string-append out "/share/man/man5")))
(with-directory-excursion "pbmtools"
(for-each (cut install-file <> bin)
(list "jbgtopbm" "jbgtopbm85"
"pbmtojbg" "pbmtojbg85"))
(for-each (cut install-file <> man1)
(find-files "." "\\.1$"))
(for-each (cut install-file <> man5)
(find-files "." "\\.5$"))
#t)))))
#:test-target "test"
#:tests? #f)) ; tests depend on examples/
(home-page "https://www.cl.cam.ac.uk/~mgk25/jbigkit/")
(synopsis "Lossless compression for bi-level high-resolution images")
(description
"JBIG-KIT implements the JBIG1 data compression standard (ITU-T T.82 and
ISO/IEC 11544:1993), designed for bi-level (one bit per pixel) images such as
black-and-white scanned documents. It is widely used in fax products, printer
firmware and drivers, document management systems, and imaging software.
This package provides a static C library of (de)compression functions and some
simple command-line converters similar to those provided by netpbm.
Two JBIG1 variants are available. One (@file{jbig.c}) implements nearly all
options of the standard but has to keep the full uncompressed image in memory.
The other (@file{jbig85.c}) implements just the ITU-T T.85 profile, with
memory management optimized for embedded and fax applications. It buffers
only a few lines of the uncompressed image in memory and is able to stream
images of initially unknown height.")
(license (list license:isc ; pbmtools/p?m.5
license:gpl2+)))) ; the rest
(define-public openjpeg
(package
(name "openjpeg")
@ -966,12 +1041,11 @@ multi-dimensional image processing.")
(home-page "https://ukoethe.github.io/vigra/")))
(define-public vigra-c
(let* ((commit "a2ff675f42079e2623318d8ff8b4288dbe7a7f06")
(revision "0")
(version (git-version "0.0.0" revision commit)))
(let* ((commit "66ff4fa5a7d4a77415caa676a45c2c6ea16562e7")
(revision "1"))
(package
(name "vigra-c")
(version version)
(version (git-version "0.0.0" revision commit))
(home-page "https://github.com/BSeppke/vigra_c")
(source (origin
(method git-fetch)
@ -980,7 +1054,7 @@ multi-dimensional image processing.")
(commit commit)))
(sha256
(base32
"1f1phmfbbz3dsq9330rd6bjmdg29hxskxi9l17cyx1f4mdqpgdgl"))
"1pnd92s284dvsg8zp6md7p8ck55bmcsryz58gzic7jh6m72hg689"))
(file-name (git-file-name name version))))
(build-system cmake-build-system)
(arguments
@ -990,6 +1064,7 @@ multi-dimensional image processing.")
(inputs
`(("fftw" ,fftw)
("fftwf" ,fftwf)
("hdf5" ,hdf5)
("vigra" ,vigra)))
(synopsis "C interface to the VIGRA computer vision library")
(description

View File

@ -482,6 +482,10 @@
("patchelf" ,patchelf)
("pkg-config" ,pkg-config)
("python" ,python-2)))
(native-search-paths
(list (search-path-specification
(variable "JULIA_LOAD_PATH")
(files (list "share/julia/packages/")))))
;; Julia is not officially released for ARM and MIPS.
;; See https://github.com/JuliaLang/julia/issues/10639
(supported-systems '("i686-linux" "x86_64-linux" "aarch64-linux"))

View File

@ -335,14 +335,14 @@ as Alfresco or Nuxeo.")
(define-public libabw
(package
(name "libabw")
(version "0.1.2")
(version "0.1.3")
(source
(origin
(method url-fetch)
(uri (string-append "https://dev-www.libreoffice.org/src/libabw/"
"libabw-" version ".tar.xz"))
(sha256 (base32
"11949iscdb99f2jplxjd39282jxcrf2fw0sqbh5dl7gqb96r8whb"))))
"1vbfrmnvib3cym0yyyabnd8xpx4f7wp20vnn09s6dln347fajqz7"))))
(build-system gnu-build-system)
(native-inputs
`(("doxygen" ,doxygen)
@ -354,9 +354,6 @@ as Alfresco or Nuxeo.")
("libxml2" ,libxml2)))
(inputs
`(("boost" ,boost)))
(arguments
;; avoid triggering configure errors by simple inclusion of boost headers
`(#:configure-flags '("--disable-werror")))
(home-page "https://wiki.documentfoundation.org/DLP/Libraries/libabw")
(synopsis "Library for parsing the AbiWord format")
(description "Libabw is a library that parses the file format of
@ -585,14 +582,14 @@ created by PageMaker version 6.x and 7.")
(define-public libvisio
(package
(name "libvisio")
(version "0.1.6")
(version "0.1.7")
(source
(origin
(method url-fetch)
(uri (string-append "http://dev-www.libreoffice.org/src/libvisio/"
"libvisio-" version ".tar.xz"))
(sha256 (base32
"1yahpfl13qk6178irv8jn5ppxdn7isafqisyqsdw0lqxcz9h447y"))))
"0k7adcbbf27l7n453cca1m6s9yj6qvb5j6bsg2db09ybf3w8vbwg"))))
(build-system gnu-build-system)
(native-inputs
`(("cppunit" ,cppunit)

View File

@ -51,15 +51,15 @@
(define-public libusb
(package
(name "libusb")
(version "1.0.22")
(version "1.0.23")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/libusb/libusb-1.0/"
"libusb-" version "/libusb-" version ".tar.bz2"))
(uri (string-append "https://github.com/libusb/libusb/"
"releases/download/v" version
"/libusb-" version ".tar.bz2"))
(sha256
(base32
"0mw1a5ss4alg37m6bd4k44v35xwrcwp5qm4s686q1nsgkbavkbkm"))))
(base32 "13dd2a9x290d1q8nb1lqiaf36grcvns5ripk5k2xm0lajmpc04fv"))))
(build-system gnu-build-system)
;; XXX: Enabling udev is now recommended, but eudev indirectly depends on
@ -82,9 +82,9 @@ devices on various operating systems.")
(origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/libusb/"
name "-" (version-major+minor version) "/"
name "-" version "/"
name "-" version ".tar.bz2"))
"libusb-compat-" (version-major+minor version) "/"
"libusb-compat-" version "/"
"libusb-compat-" version ".tar.bz2"))
(sha256
(base32
"0nn5icrfm9lkhzw1xjvaks9bq3w6mjg86ggv3fn7kgi4nfvg8kj0"))))

View File

@ -349,42 +349,42 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
"linux-" version ".tar.xz"))
(sha256 hash)))
(define-public linux-libre-5.2-version "5.2.11")
(define-public linux-libre-5.2-version "5.2.13")
(define-public linux-libre-5.2-pristine-source
(let ((version linux-libre-5.2-version)
(hash (base32 "1y9kn1zny3xpmbi5an3g7hbzywnycys8chfaw6laij1xk4gq6ahc")))
(hash (base32 "12hpph3iynr22mfwz7745lp01waf2kg579hr56d4pvhx4iahzdhp")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-5.2)))
(define-public linux-libre-4.19-version "4.19.69")
(define-public linux-libre-4.19-version "4.19.71")
(define-public linux-libre-4.19-pristine-source
(let ((version linux-libre-4.19-version)
(hash (base32 "11yrw8ixd5ni9rlpndqsz2ihx6k8qaf35a1lf164lkhaa85pd4f0")))
(hash (base32 "1bjwkb7k82l646ryyy0jbwsnygm2qsxgcwli8bdrj844skzynlqz")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-4.19)))
(define-public linux-libre-4.14-version "4.14.141")
(define-public linux-libre-4.14-version "4.14.142")
(define-public linux-libre-4.14-pristine-source
(let ((version linux-libre-4.14-version)
(hash (base32 "05rs411rw10hhnfzvaxmcik3pq20i1i05shvvra4bv164f0z1f8b")))
(hash (base32 "1wwhnm1n1b6yzsd2zzzf9i3n4hlvgnph70p67cwahw0ik4ssayz6")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-4.14)))
(define-public linux-libre-4.9-version "4.9.190")
(define-public linux-libre-4.9-version "4.9.191")
(define-public linux-libre-4.9-pristine-source
(let ((version linux-libre-4.9-version)
(hash (base32 "05ha3snfk0vdqk9i27icwpq2if0h2jvshavn69ldwqm4h2h1r2py")))
(hash (base32 "1g5p736p8zx5rmxaj56yw93jp768npl868jsn8973dny0rsbim6y")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-4.9)))
(define-public linux-libre-4.4-version "4.4.190")
(define-public linux-libre-4.4-version "4.4.191")
(define-public linux-libre-4.4-pristine-source
(let ((version linux-libre-4.4-version)
(hash (base32 "1rf28cjrrmj7mm8xqlfld6k20ddk15j4mmyarqibjx9pk9acij7y")))
(hash (base32 "0x3lnq4xyj5v6r1cz4jizm4vdspws1nb806f5qczwi3yil5nm6bh")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-4.4)))
@ -664,6 +664,12 @@ for ARCH and optionally VARIANT, or #f if there is no such configuration."
#t))
(replace 'configure
(lambda* (#:key inputs native-inputs target #:allow-other-keys)
;; Unset CROSS_CPATH to make sure that cross-libc is not
;; found. Otherwise, some of its header would conflict with the
;; one from linux (stdint.h and linux/types.h)
,@(if (%current-target-system)
'((unsetenv "CROSS_CPATH"))
'())
;; Avoid introducing timestamps
(setenv "KCONFIG_NOTIMESTAMP" "1")
(setenv "KBUILD_BUILD_TIMESTAMP" (getenv "SOURCE_DATE_EPOCH"))
@ -887,7 +893,7 @@ and should be used with caution, especially on untested models.")
(define-public vhba-module
(package
(name "vhba-module")
(version "20190410")
(version "20190831")
(source (origin
(method url-fetch)
(uri (string-append
@ -895,7 +901,7 @@ and should be used with caution, especially on untested models.")
version ".tar.bz2"))
(sha256
(base32
"1513hq130raxp9z5grj54cwfjfxj05apipxg425j0zicii59a60c"))))
"1ybbk6l06n0y11n5wnfmvdz0baizmq55l458ywimghdyz0n7g0ws"))))
(build-system linux-module-build-system)
(arguments
;; TODO: No tests?
@ -1915,7 +1921,7 @@ transparently through a bridge.")
(define-public libnl
(package
(name "libnl")
(version "3.4.0")
(version "3.5.0")
(source (origin
(method url-fetch)
(uri (string-append
@ -1924,7 +1930,7 @@ transparently through a bridge.")
"/libnl-" version ".tar.gz"))
(sha256
(base32
"1gzm444rnsib64dddv0cwlpzy1q4bycjqhp1i5pxpikimqvpca5p"))))
"1yh5bqmkivd78x378x34gzb28lvykn6b9k3hgvvpdnj5jpn3689m"))))
(build-system gnu-build-system)
(native-inputs
`(("bison" ,bison)
@ -1939,7 +1945,7 @@ transparently through a bridge.")
(string-join (string-split version #\.) "_")
"/libnl-doc-" version ".tar.gz"))
(sha256
(base32 "1m5cnzviv31gjnz6fz5rgyl6ah4dbp2akm49j9973sgwl36gs8jx"))))))
(base32 "19p5y8q3cm5wqvamqc4s5syxnnkvzxy3gw8ivxk6fv9ybn8jm35h"))))))
(inputs
`(("python-2" ,python-2)
("python-3" ,python-3)))
@ -2308,15 +2314,15 @@ compressed, transparent to other programs, without decompressing them.")
(define-public numactl
(package
(name "numactl")
(version "2.0.12")
(version "2.0.13")
(source (origin
(method url-fetch)
(uri (string-append
"https://github.com/numactl/numactl/releases/download/v"
version "/" name "-" version ".tar.gz"))
version "/numactl-" version ".tar.gz"))
(sha256
(base32
"0ad7mpi3vacbfnx3aqxnvgsj64yp3mav9yxnaz8ancjv7wvdmfsm"))))
"16lcypvcmx1ydkpi2s82kqhg13kak7qhpbnj8hd9bdbyhr5ja7lr"))))
(build-system gnu-build-system)
(arguments
'(;; There's a 'test' target, but it requires NUMA support in the kernel
@ -2330,14 +2336,14 @@ compressed, transparent to other programs, without decompressing them.")
(synopsis "Tools for non-uniform memory access (NUMA) machines")
(description
"NUMA stands for Non-Uniform Memory Access, in other words a system whose
memory is not all in one place. The numactl program allows you to run your
application program on specific CPU's and memory nodes. It does this by
supplying a NUMA memory policy to the operating system before running your
memory is not all in one place. The @command{numactl} program allows you to
run your application program on specific CPUs and memory nodes. It does this
by supplying a NUMA memory policy to the operating system before running your
program.
The package contains other commands, such as numademo, numastat and memhog.
The numademo command provides a quick overview of NUMA performance on your
system.")
The package contains other commands, such as @command{numastat},
@command{memhog}, and @command{numademo} which provides a quick overview of
NUMA performance on your system.")
(license (list license:gpl2 ;programs
license:lgpl2.1)))) ;library

View File

@ -113,7 +113,7 @@
(build-system gnu-build-system)
(arguments
`(#:parallel-build? #f ; The build system seems not to be thread safe.
#:tests? #f ; There does not seem to be make check or anything similar.
#:test-target "ansi-tests/test_results"
#:configure-flags '("--enable-ansi") ; required for use by the maxima package
#:make-flags (list
(string-append "GCL_CC=" (assoc-ref %build-inputs "gcc")
@ -327,14 +327,14 @@ an interpreter, a compiler, a debugger, and much more.")
(define-public sbcl
(package
(name "sbcl")
(version "1.5.5")
(version "1.5.6")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/sbcl/sbcl/" version "/sbcl-"
version "-source.tar.bz2"))
(sha256
(base32 "1qmapk2hyxxqd3ajiqacz4isij0ibx7gn10n8dbmq33gm3kgliyb"))
(base32 "10z43dc29p7s8dl3jixklhmzqfp7gcm3fccjdfd36qqhyfxqxx3a"))
(modules '((guix build utils)))
(snippet
;; Add sbcl-bundle-systems to 'default-system-source-registry'.
@ -353,11 +353,21 @@ an interpreter, a compiler, a debugger, and much more.")
;; ABCL (recent versions only)
;; CLISP (only some versions: 2.44.1 is OK, 2.47 is not)
;; XCL
;; CCL seems ideal then, but it unfortunately only builds reliably
;; on some architectures.
;;
;; From NEWS:
;; * build enhancement: new host quirks mechanism, support for building under
;; ABCL and ECL (as well as CCL, CMUCL, CLISP and SBCL itself)
;;
;; CCL is not bootstrappable so it won't do. CLISP 2.49 seems to work.
;; ECL too. ECL builds SBCL about 20% slower than CLISP. As of
;; 2019-09-05, ECL was last updated in 2016 while CLISP was last update
;; in 2010.
;;
;; For now we stick to CLISP for all systems. We keep the `match' in to
;; make it easier to change the host compiler for various architectures.
`(,@(match (%current-system)
((or "x86_64-linux" "i686-linux")
`(("ccl" ,ccl)))
`(("clisp" ,clisp)))
(_
`(("clisp" ,clisp))))
("which" ,which)
@ -428,7 +438,7 @@ an interpreter, a compiler, a debugger, and much more.")
(setenv "CC" "gcc")
(invoke "sh" "make.sh" ,@(match (%current-system)
((or "x86_64-linux" "i686-linux")
`("ccl"))
`("clisp"))
(_
`("clisp")))
(string-append "--prefix="
@ -488,6 +498,15 @@ statistical profiler, a code coverage tool, and many other extensions.")
(license:x11-style "file://src/code/loop.lisp")))))
(define-public ccl
;; Warning: according to upstream, CCL is not bootstrappable.
;; See https://github.com/Clozure/ccl/issues/222 from 2019-09-02:
;;
;; "As far as I know, there is no way to build CCL without an existing
;; running CCL image. It was bootstrapped back in 1986 or so as
;; Macintosh Common Lisp, by Gary Byers, I believe, who is no longer on
;; the planet to tell us the story. It SHOULD be possible to port the
;; CCL compiler to portable Common Lisp, so that ANY lisp could build
;; it, as is the case for SBCL, but I know of no attempt to do so."
(package
(name "ccl")
(version "1.11.5")
@ -710,10 +729,44 @@ portable between implementations.")
(define-public ecl-alexandria
(sbcl-package->ecl-package sbcl-alexandria))
(define-public sbcl-net.didierverna.asdf-flv
(package
(name "sbcl-net.didierverna.asdf-flv")
(version "2.1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/didierverna/asdf-flv")
(commit (string-append "version-" version))))
(file-name (git-file-name "asdf-flv" version))
(sha256
(base32 "1fi2y4baxan103jbg4idjddzihy03kwnj2mzbwrknw4d4x7xlgwj"))))
(build-system asdf-build-system/sbcl)
(synopsis "Common Lisp ASDF extension to provide support for file-local variables")
(description "ASDF-FLV provides support for file-local variables through
ASDF. A file-local variable behaves like @code{*PACKAGE*} and
@code{*READTABLE*} with respect to @code{LOAD} and @code{COMPILE-FILE}: a new
dynamic binding is created before processing the file, so that any
modification to the variable becomes essentially file-local.
In order to make one or several variables file-local, use the macros
@code{SET-FILE-LOCAL-VARIABLE(S)}.")
(home-page "https://www.lrde.epita.fr/~didier/software/lisp/misc.php#asdf-flv")
(license (license:non-copyleft
"https://www.gnu.org/prep/maintain/html_node/License-Notices-for-Other-Files.html"
"GNU All-Permissive License"))))
(define-public cl-net.didierverna.asdf-flv
(sbcl-package->cl-source-package sbcl-net.didierverna.asdf-flv))
(define-public ecl-net.didierverna.asdf-flv
(sbcl-package->ecl-package sbcl-net.didierverna.asdf-flv))
(define-public sbcl-fiveam
(package
(name "sbcl-fiveam")
(version "1.2")
(version "1.4.1")
(source
(origin
(method git-fetch)
@ -722,8 +775,11 @@ portable between implementations.")
(commit (string-append "v" version))))
(file-name (git-file-name "fiveam" version))
(sha256
(base32 "1yx9716mk8pq9076q6cjx4c9lyax3amiccy37sh0913k2x8gsm4l"))))
(inputs `(("alexandria" ,sbcl-alexandria)))
(base32 "1q3d38pwafnwnw42clq0f8g5xw7pbzr287jl9jsqmb1vb0n1vrli"))))
(inputs
`(("alexandria" ,sbcl-alexandria)
("net.didierverna.asdf-flv" ,sbcl-net.didierverna.asdf-flv)
("trivial-backtrace" ,sbcl-trivial-backtrace)))
(build-system asdf-build-system/sbcl)
(synopsis "Common Lisp testing framework")
(description "FiveAM is a simple (as far as writing and running tests
@ -2175,7 +2231,7 @@ also be supported.")
(define-public sbcl-ironclad
(package
(name "sbcl-ironclad")
(version "0.42")
(version "0.46")
(source
(origin
(method git-fetch)
@ -2184,14 +2240,15 @@ also be supported.")
(commit (string-append "v" version))))
(sha256
(base32
"1wjcb9vpybxjrmch7f7s78a5abxmnknbd4fl49dl5lz8a3fc8vf0"))
(file-name (string-append "ironblad" version "-checkout"))))
"1s391awi2lsl7m1dbjirgpkm4p9p8wd076pakgvsvpn1rrznisnd"))
(file-name (git-file-name name version))))
(build-system asdf-build-system/sbcl)
(native-inputs
;; Tests only.
`(("rt" ,sbcl-rt)))
(inputs
`(("flexi-streams" ,sbcl-flexi-streams)
`(("bordeaux-threads" ,sbcl-bordeaux-threads)
("flexi-streams" ,sbcl-flexi-streams)
("nibbles" ,sbcl-nibbles)))
(synopsis "Cryptographic toolkit written in Common Lisp")
(description
@ -5337,17 +5394,18 @@ port within a range.")
(define-public txr
(package
(name "txr")
(version "223")
(version "224")
(source
(origin
(method url-fetch)
(uri (string-append "http://www.kylheku.com/cgit/txr/snapshot/txr-"
version
".tar.bz2"))
(method git-fetch)
(uri (git-reference
(url "http://www.kylheku.com/git/txr/")
(commit (string-append "txr-" version))))
(file-name (git-file-name name version))
(patches (search-patches "txr-shell.patch"))
(sha256
(base32
"0109q8idqggba3kx58dpm5ccfpdrki68npkcxm18p5ga24611fcv"))))
"1036k71f6mffy9rjwzmhr5nnp1n0wzb0rqvilpzvb8jc5yxv0810"))))
(build-system gnu-build-system)
(arguments
'(#:configure-flags '("cc=gcc")
@ -6740,3 +6798,66 @@ power of CXML is available when necessary.")
(description "This is a Common Lisp library that allows to publish D-Bus
objects as well as send and notify other objects connected to a bus.")
(license license:bsd-2))))
(define-public sbcl-cl-hooks
(let ((commit "5b638083f3b4f1221a52631d9c8a0a265565cac7")
(revision "1"))
(package
(name "sbcl-cl-hooks")
(build-system asdf-build-system/sbcl)
(version (git-version "0.2.1" revision commit))
(home-page "https://github.com/scymtym/architecture.hooks")
(source
(origin
(method git-fetch)
(uri (git-reference
(url home-page)
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"0bg3l0a28lw5gqqjp6p6b5nhwqk46sgkb7184w5qbfngw1hk8x9y"))))
(inputs
`(("alexandria" ,sbcl-alexandria)
("let-plus" ,sbcl-let-plus)
("trivial-garbage" ,sbcl-trivial-garbage)
("closer-mop" ,sbcl-closer-mop)))
(native-inputs
`(("fiveam" ,sbcl-fiveam)))
(synopsis "Hooks extension point mechanism (as in Emacs) for Common Lisp")
(description "A hook, in the present context, is a certain kind of
extension point in a program that allows interleaving the execution of
arbitrary code with the execution of a the program without introducing any
coupling between the two. Hooks are used extensively in the extensible editor
Emacs.
In the Common LISP Object System (CLOS), a similar kind of extensibility is
possible using the flexible multi-method dispatch mechanism. It may even seem
that the concept of hooks does not provide any benefits over the possibilites
of CLOS. However, there are some differences:
@itemize
@item There can be only one method for each combination of specializers and
qualifiers. As a result this kind of extension point cannot be used by
multiple extensions independently.
@item Removing code previously attached via a @code{:before}, @code{:after} or
@code{:around} method can be cumbersome.
@item There could be other or even multiple extension points besides @code{:before}
and @code{:after} in a single method.
@item Attaching codes to individual objects using eql specializers can be
cumbersome.
@item Introspection of code attached a particular extension point is
cumbersome since this requires enumerating and inspecting the methods of a
generic function.
@end itemize
This library tries to complement some of these weaknesses of method-based
extension-points via the concept of hooks.")
(license license:llgpl))))
(define-public cl-hooks
(sbcl-package->cl-source-package sbcl-cl-hooks))
(define-public ecl-cl-hooks
(sbcl-package->ecl-package sbcl-cl-hooks))

View File

@ -1197,7 +1197,7 @@ delivery.")
(define-public exim
(package
(name "exim")
(version "4.92.1")
(version "4.92.2")
(source
(origin
(method url-fetch)
@ -1206,7 +1206,7 @@ delivery.")
(string-append "https://ftp.exim.org/pub/exim/exim4/old/exim-"
version ".tar.bz2")))
(sha256
(base32 "132zmxgzz35xwi89g3crw6hd3y74rxj5zcpamakvrnlcn256amdp"))))
(base32 "1xnc5rdcg5mcrvjqp506a9frmcr89jwsh4c5vbks46awyz1rfzsm"))))
(build-system gnu-build-system)
(inputs
`(("bdb" ,bdb-5.3) ; #error Version 6 and later BDB API is not supported

View File

@ -31,6 +31,7 @@
;;; Copyright © 2018 Julien Lepiller <julien@lepiller.eu>
;;; Copyright © 2018 Amin Bandali <bandali@gnu.org>
;;; Copyright © 2019 Nicolas Goaziou <mail@nicolasgoaziou.fr>
;;; Copyright © 2019 Steve Sprang <scs@stevesprang.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -675,14 +676,14 @@ computations.")
(define-public hdf4
(package
(name "hdf4")
(version "4.2.13")
(version "4.2.14")
(source
(origin
(method url-fetch)
(uri (string-append "https://support.hdfgroup.org/ftp/HDF/releases/HDF"
version "/src/hdf-" version ".tar.bz2"))
(sha256
(base32 "1wz0586zh91pqb95wvr0pbh71a8rz358fdj6n2ksp85x2cis9lsm"))
(base32 "0n29klrrbwan9307np0d9hr128dlpc4nnlf57a140080ll3jmp8l"))
(patches (search-patches "hdf4-architectures.patch"
"hdf4-reproducibility.patch"
"hdf4-shared-fortran.patch"
@ -5144,3 +5145,36 @@ algorithm, a parametric integer programming solver, and primitives for
termination analysis via the automatic synthesis of linear ranking
functions.")
(license license:gpl3+)))
(define-public speedcrunch
(package
(name "speedcrunch")
(version "0.12.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://bitbucket.org/heldercorreia/speedcrunch.git")
(commit (string-append "release-" version))))
(file-name (git-file-name name version))
(sha256
(base32
"0vh7cd1915bjqzkdp3sk25ngy8cq624mkh8c53c5bnzk357kb0fk"))))
(build-system cmake-build-system)
(inputs `(("qtbase" ,qtbase)))
(native-inputs `(("qttools" ,qttools)))
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'chdir-to-src
(lambda _ (chdir "src") #t)))))
(synopsis "High-precision scientific calculator")
(description
"SpeedCrunch is a high-precision scientific calculator. It features a
syntax-highlighted scrollable display and is designed to be fully used via
keyboard. Some distinctive features are auto-completion of functions and
variables, a formula book, and quick insertion of constants from various
fields of knowledge.")
(home-page "http://speedcrunch.org/")
(license license:gpl2+)))

View File

@ -305,7 +305,7 @@ This package contains the binary.")
(define-public mpg123
(package
(name "mpg123")
(version "1.25.10")
(version "1.25.12")
(source (origin
(method url-fetch)
(uri (list (string-append "mirror://sourceforge/mpg123/mpg123/"
@ -315,7 +315,7 @@ This package contains the binary.")
version ".tar.bz2")))
(sha256
(base32
"08vhp8lz7d9ybhxcmkq3adwfryhivfvp0745k4r9kgz4wap3f4vc"))))
"1l9iwwgqzw6yg5zk9pqmlbfyq6d8dqysbmj0j3m8dyrxd34wgzhz"))))
(build-system gnu-build-system)
(arguments '(#:configure-flags '("--with-default-audio=pulse")))
(native-inputs `(("pkg-config" ,pkg-config)))

View File

@ -1999,14 +1999,14 @@ browser.")
(define-public drumstick
(package
(name "drumstick")
(version "1.1.2")
(version "1.1.3")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/drumstick/"
version "/drumstick-" version ".tar.bz2"))
(sha256
(base32
"0kljqyqj7s1i2z52i24x7ail1bywn6dcxxfbad5c59drm8wv94bp"))))
"1n9wvg79yvkygrkc8xd8pgrd3d7hqmr7gh24dccf0px23lla9b3m"))))
(build-system cmake-build-system)
(arguments
`(#:tests? #f ; no test target
@ -2042,6 +2042,52 @@ multiplatform realtime MIDI I/O library is also provided with various output
backends, including ALSA, OSS, Network and FluidSynth.")
(license license:gpl2+)))
(define-public vmpk
(package
(name "vmpk")
(version "0.7.2")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/vmpk/vmpk/"
version "/vmpk-" version ".tar.bz2"))
(sha256
(base32
"1i3hnvdgz46n4k5v0q4jhgh7nkh0s390ix4nqr69z0q3026yp0p6"))))
(build-system cmake-build-system)
(arguments
`(#:tests? #f ; no test target
#:phases
(modify-phases %standard-phases
(add-before 'configure 'fix-docbook
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "cmake_admin/CreateManpages.cmake"
(("http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl")
(string-append (assoc-ref inputs "docbook-xsl")
"/xml/xsl/docbook-xsl-"
,(package-version docbook-xsl)
"/manpages/docbook.xsl")))
#t)))))
(inputs
`(("drumstick" ,drumstick)
("qtbase" ,qtbase)
("qtsvg" ,qtsvg)
("qttools" ,qttools)
("qtx11extras" ,qtx11extras)))
(native-inputs
`(("libxslt" ,libxslt) ;for xsltproc
("docbook-xsl" ,docbook-xsl)
("pkg-config" ,pkg-config)))
(home-page "http://vmpk.sourceforge.net")
(synopsis "Virtual MIDI piano keyboard")
(description
"Virtual MIDI Piano Keyboard is a MIDI events generator and receiver. It
doesn't produce any sound by itself, but can be used to drive a MIDI
synthesizer (either hardware or software, internal or external). You can use
the computer's keyboard to play MIDI notes, and also the mouse. You can use
the Virtual MIDI Piano Keyboard to display the played MIDI notes from another
instrument or MIDI file player.")
(license license:gpl3+)))
(define-public zynaddsubfx
(package
(name "zynaddsubfx")
@ -2091,7 +2137,7 @@ capabilities, custom envelopes, effects, etc.")
(define-public yoshimi
(package
(name "yoshimi")
(version "1.5.10.2")
(version "1.6.0")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/yoshimi/"
@ -2099,7 +2145,7 @@ capabilities, custom envelopes, effects, etc.")
"/yoshimi-" version ".tar.bz2"))
(sha256
(base32
"1rr99qkq80s8l2iv3x4ccxan07m15dvmd5s9b10386bfjbwbya01"))))
"0bcc5spnq73yp1fmm367d1mxcswqkmzs3cnpb4cxr513ir98sa50"))))
(build-system cmake-build-system)
(arguments
`(#:tests? #f ; there are no tests

View File

@ -428,7 +428,7 @@ the opam file fomat.")
(define-public opam
(package
(name "opam")
(version "2.0.4")
(version "2.0.5")
(source (origin
(method git-fetch)
(uri (git-reference
@ -437,7 +437,7 @@ the opam file fomat.")
(file-name (git-file-name name version))
(sha256
(base32
"1yx5k8v5vnnc20fmz5zx8kqd242j48qcknlk6vmkr7rkq886ipq2"))))
"0pf2smq2sdcxryq5i87hz3dv05pb3zasb1is3kxq1pi1s4cn55mx"))))
(build-system ocaml-build-system)
(arguments
`(#:configure-flags
@ -1109,7 +1109,7 @@ files in these formats.")
(define-public ocaml-zarith
(package
(name "ocaml-zarith")
(version "1.7")
(version "1.9.1")
(source (origin
(method git-fetch)
(uri (git-reference
@ -1117,7 +1117,7 @@ files in these formats.")
(commit (string-append "release-" version))))
(sha256
(base32
"08x5xnamibhvxl50f1bb3jl9ym0hm6004hmc54xnrnrv7jxz9rvz"))))
"0hv5ywz1q2cgn8apfz490clwk5hcynr937g2v8i13x2ax4bnv0lz"))))
(build-system ocaml-build-system)
(native-inputs
`(("perl" ,perl)))
@ -1140,7 +1140,7 @@ for speed and space economy.")
(define-public ocaml-frontc
(package
(name "ocaml-frontc")
(version "3.4.1")
(version "3.4.2")
(source (origin
(method git-fetch)
(uri (git-reference
@ -1150,7 +1150,7 @@ for speed and space economy.")
(file-name (git-file-name name version))
(sha256
(base32
"1dq5nks0c9gsbr1m8k39m1bniawr5hqcy1r8x5px7naa95ch06ak"))))
"0k7jk9hkglnkk27s62xl493jyqc017gyvwqb1lyc0ywbb001s102"))))
(build-system ocaml-build-system)
(arguments
`(#:phases
@ -1186,7 +1186,7 @@ GNU CC attributes. It provides also a C pretty printer as an example of use.")
(define-public ocaml-qcheck
(package
(name "ocaml-qcheck")
(version "0.9")
(version "0.10")
(source
(origin
(method git-fetch)
@ -1195,7 +1195,7 @@ GNU CC attributes. It provides also a C pretty printer as an example of use.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "0w83v9ylycsssyn47q8wnkfbvhn5vn10z6i35n5965i2m1r0mmcf"))))
(base32 "1i7axg7vmivrkzsahyg79my584myvzxv0922k4000bdwnhzd0kzh"))))
(build-system dune-build-system)
(arguments
`(#:test-target "."))
@ -1242,7 +1242,7 @@ to use -- to sophisticated random generation of test cases.")
(define-public ocaml-stringext
(package
(name "ocaml-stringext")
(version "1.5.0")
(version "1.6.0")
(source (origin
(method git-fetch)
(uri (git-reference
@ -1251,7 +1251,7 @@ to use -- to sophisticated random generation of test cases.")
(file-name (git-file-name name version))
(sha256
(base32
"0035pyakk0r7pfhkrayvqncpv9mk6lssr455j3prmdcirh6s50d7"))))
"1m09cmn3vrk3gdm60fb730qsygcfyxsyv7gl9xfzck08q1x2x9qx"))))
(build-system dune-build-system)
(arguments
`(#:test-target "."))
@ -1317,14 +1317,16 @@ coverage information.")
(define-public dune
(package
(name "dune")
(version "1.9.3")
(version "1.11.3")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/ocaml/dune/releases/"
"download/" version "/dune-" version ".tbz"))
(method git-fetch)
(uri (git-reference
(url "https://github.com/ocaml/dune")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"1jlhnx580v6i1d451z5cl8ibfd0m9qln963y2pp5v6s2winyqyri"))))
"0l4x0x2fz135pljv88zj8y6w1ninsqw0gn1mdxzprd6wbxbyn8wr"))))
(build-system ocaml-build-system)
(arguments
`(#:tests? #f; require odoc
@ -1347,7 +1349,7 @@ following a very simple s-expression syntax.")
(define-public ocaml-migrate-parsetree
(package
(name "ocaml-migrate-parsetree")
(version "1.2.0")
(version "1.4.0")
(home-page "https://github.com/ocaml-ppx/ocaml-migrate-parsetree")
(source
(origin
@ -1358,7 +1360,7 @@ following a very simple s-expression syntax.")
(file-name (git-file-name name version))
(sha256
(base32
"16kas19iwm4afijv3yxd250s08absabmdcb4yj57wc8r4fmzv5dm"))))
"0sv1p4615l8gpbah4ya2c40yr6fbvahvv3ks7zhrsgcwcq2ljyr2"))))
(build-system dune-build-system)
(arguments
`(#:tests? #f))
@ -1376,16 +1378,16 @@ functions to the next and/or previous version.")
(define-public ocaml-ppx-tools-versioned
(package
(name "ocaml-ppx-tools-versioned")
(version "5.2.1")
(version "5.2.3")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/ocaml-ppx/"
"ppx_tools_versioned/archive/"
version ".tar.gz"))
(file-name (string-append name "-" version ".tar.gz"))
(method git-fetch)
(uri (git-reference
(url "https://github.com/ocaml-ppx/ppx_tools_versioned")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"1x2xfjpkzbcz4rza1d7gh3ipliw6jqfcklbsln82v3561qgkqgmh"))))
"1hcmpnw26zf70a71r3d2c2c0mn8q084gdn1r36ynng6fv9hq6j0y"))))
(build-system dune-build-system)
(arguments
`(#:test-target "."))
@ -1435,7 +1437,7 @@ powerful.")
(define-public ocaml-result
(package
(name "ocaml-result")
(version "1.3")
(version "1.4")
(source (origin
(method git-fetch)
(uri (git-reference
@ -1444,7 +1446,7 @@ powerful.")
(file-name (git-file-name name version))
(sha256
(base32
"081ayblszn9pj2rqcif40x6cz2zda48vi45gy49rc2qfc4gszry3"))))
"0hir97k9i72nfkm6kncxnqpyk400wlsxysbldgcvk0fd9pjnsc3p"))))
(build-system dune-build-system)
(arguments
`(#:test-target "."))
@ -1798,7 +1800,7 @@ lets the client choose the concrete timeline.")
(define-public ocaml-ssl
(package
(name "ocaml-ssl")
(version "0.5.7")
(version "0.5.9")
(source
(origin
(method git-fetch)
@ -1807,7 +1809,7 @@ lets the client choose the concrete timeline.")
(commit version)))
(file-name (git-file-name name version))
(sha256 (base32
"06zxqnwqkvf7pmj5s44jflkknv01czgbi4nbaac0ys1p7rv99y3x"))))
"04h02rvzrwp886n5hsx84rnc9b150iggy38g5v1x1rwz3pkdnmf0"))))
(build-system dune-build-system)
(arguments
`(#:test-target "."))
@ -1868,15 +1870,16 @@ locks or other synchronization primitives.")
(define-public ocaml-lwt-log
(package
(name "ocaml-lwt-log")
(version "1.1.0")
(source
(origin
(method url-fetch)
(uri (string-append "https://github.com/aantron/lwt_log/archive/" version
".tar.gz"))
(file-name (string-append name "-" version ".tar.gz"))
(sha256 (base32
"1lr62j2266pbsi54xmzsfvl2z7fi7smhak7fp1ybl8hssxwi6in2"))))
(version "1.1.1")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/aantron/lwt_log")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"1n12i1rmn9cjn6p8yr6qn5dwbrwvym7ckr7bla04a1xnq8qlcyj7"))))
(build-system dune-build-system)
(arguments
`(#:tests? #f; require lwt_ppx
@ -2276,7 +2279,7 @@ many additional enhancements, including:
(define-public ocaml-batteries
(package
(name "ocaml-batteries")
(version "2.9.0")
(version "2.10.0")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/ocaml-batteries-team/"
@ -2284,7 +2287,7 @@ many additional enhancements, including:
version "/batteries-" version ".tar.gz"))
(sha256
(base32
"0lkdmv2my5hirkswmci2cch341n6wkkj2q8apjhs83sg6528caxi"))))
"08ghw87d56h1a6y1nnh3x2wy9xj25jqfk5sp6ma9nsyd37babb0h"))))
(build-system ocaml-build-system)
(native-inputs
`(("ocamlbuild" ,ocamlbuild)
@ -2381,20 +2384,63 @@ language.")
can match the question using a regular expression or a timeout.")
(license license:lgpl2.1+))) ; with the OCaml static compilation exception
(define-public ocaml-stdlib-shims
(package
(name "ocaml-stdlib-shims")
(version "0.1.0")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/ocaml/stdlib-shims")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"007dwywsr5285z0np6a9nr0h8iqmyzfrlx6s5xaqcwj69zabsrjm"))))
(build-system dune-build-system)
(home-page "https://github.com/ocaml/stdlib-shims")
(synopsis "OCaml stdlib features backport to older OCaml compilers")
(description "This package backports some of the new stdlib features to
older compilers, such as the Stdlib module. This allows projects that require
compatibility with older compiler to use these new features in their code.")
;; with ocaml-linking exception
(license license:lgpl2.1+)))
(define-public ocaml-fileutils
(package
(name "ocaml-fileutils")
(version "0.5.3")
(version "0.6.0")
(source (origin
(method url-fetch)
(uri (ocaml-forge-uri name version 1728))
(method git-fetch)
(uri (git-reference
(url "https://github.com/gildor478/ocaml-fileutils")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"1rc4cqlvdhbs55i85zfbfhz938fsy4fj6kwlkfm3ra7bpwn8bmpd"))))
"06gxbqfssl16xc8y4d34wpm0mwfr0jgph4lmlwfmgazyggnmvc7m"))))
(build-system ocaml-build-system)
(arguments
'(#:phases
(modify-phases %standard-phases
(add-before 'configure 'set-topfind
(lambda* (#:key inputs #:allow-other-keys)
;; add the line #directory ".." at the top of each file
;; using #use "topfind";; to be able to find topfind
(let* ((findlib-path (assoc-ref inputs "findlib"))
(findlib-libdir
(string-append findlib-path "/lib/ocaml/site-lib")))
(substitute* "setup.ml"
(("#use \"topfind\";;" all)
(string-append "#directory \"" findlib-libdir "\"\n"
all))))
#t)))))
(propagated-inputs
`(("ocaml-stdlib-shims" ,ocaml-stdlib-shims)))
(native-inputs
`(("ocamlbuild" ,ocamlbuild)
("ounit" ,ocaml-ounit)))
("ocaml-oasis" ,ocaml-oasis)
("ocaml-ounit" ,ocaml-ounit)))
(home-page "http://ocaml-fileutils.forge.ocamlcore.org")
(synopsis "Pure OCaml functions to manipulate real file and filename")
(description "Library to provide pure OCaml functions to manipulate real
@ -2466,15 +2512,16 @@ from the oasis build log
(define-public ocaml-cppo
(package
(name "ocaml-cppo")
(version "1.6.5")
(version "1.6.6")
(source
(origin
(method url-fetch)
(uri (string-append "https://github.com/mjambon/cppo/archive/v" version
".tar.gz"))
(method git-fetch)
(uri (git-reference
(url "https://github.com/mjambon/cppo")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256 (base32
"1dkm3d5h6h56y937gcdk2wixlpzl59vv5pmiafglr89p20kf7gqf"))
(file-name (string-append name "-" version ".tar.gz"))))
"1smcc0l6fh2n0y6bp96c69j5nw755jja99w0b206wx3yb2m4w2hs"))))
(build-system dune-build-system)
(arguments
`(#:tests? #f
@ -2706,19 +2753,28 @@ JSON.")
(define-public ocaml-easy-format
(package
(name "ocaml-easy-format")
(version "1.3.1")
(version "1.3.2")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/mjambon/easy-format")
(commit (string-append "v" version))))
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"0jfncci15b8sf1y72yrxfjlsmhs9aavcd14vwz4d7kj8k9w9c4qk"))))
"1fc95q2ypck6m6rv3kiawwilh5ac93v2hcp823mj608d5kj79xkb"))))
(build-system dune-build-system)
(arguments
`(#:jbuild? #t))
`(#:jbuild? #t
#:phases
(modify-phases %standard-phases
(add-before 'build 'make-writable
(lambda _
(for-each
(lambda (file)
(chmod file #o644))
(find-files "." "."))
#t)))))
(home-page "https://github.com/mjambon/easy-format")
(synopsis "Interface to the Format module")
(description "Easy-format is a high-level and functional interface to the
@ -2950,7 +3006,7 @@ the plugins facilitate extensibility, and the frontends serve as entry points.")
(define-public ocaml-camomile
(package
(name "ocaml-camomile")
(version "1.0.1")
(version "1.0.2")
(home-page "https://github.com/yoriyuki/Camomile")
(source (origin
(method url-fetch)
@ -2958,18 +3014,19 @@ the plugins facilitate extensibility, and the frontends serve as entry points.")
"/camomile-" version ".tbz"))
(sha256
(base32
"01ssjrqz41jvrqh27jxnh9cx7ywi9b5sgsykd00i7z9nrcwhlfy2"))))
"0chn7ldqb3wyf95yhmsxxq65cif56smgz1mhhc7m0dpwmyq1k97h"))))
(build-system dune-build-system)
(native-inputs
`(("camlp4" ,camlp4)))
(arguments
`(#:build-flags (list "--profile" "realease")
`(#:build-flags (list "--profile" "release")
#:test-target "camomile-test"
#:tests? #f; Tests fail, see https://github.com/yoriyuki/Camomile/issues/82
#:phases
(modify-phases %standard-phases
(add-before 'build 'fix-usr-share
(lambda* (#:key outputs #:allow-other-keys)
(substitute* '("Camomile/jbuild" "configure.ml")
(substitute* '("Camomile/dune" "configure.ml")
(("/usr/share") (string-append (assoc-ref outputs "out") "/share")))
#t)))))
(synopsis "Comprehensive Unicode library")
@ -2980,10 +3037,34 @@ library is currently designed for Unicode Standard 3.2.")
;; with an exception for linked libraries to use a different license
(license license:lgpl2.0+)))
(define-public ocaml-charinfo-width
(package
(name "ocaml-charinfo-width")
(version "1.1.0")
(source (origin
(method url-fetch)
(uri "https://bitbucket.org/zandoye/charinfo_width/get/1.1.0.tar.gz")
(sha256
(base32
"00bv4p1yqs8y0z4z07wd9w9yyv669dikp9b04dcjbwpiy2wy0086"))))
(build-system dune-build-system)
(propagated-inputs
`(("ocaml-result" ,ocaml-result)
("ocaml-camomile" ,ocaml-camomile)))
(native-inputs
`(("ocaml-ppx-expect" ,ocaml-ppx-expect)))
(properties
`((upstream-name . "charInfo_width")))
(home-page "https://bitbucket.org/zandoye/charinfo_width/")
(synopsis "Determine column width for a character")
(description "This module is implements purely in OCaml a character width
function that follows the prototype of POSIX's wcwidth.")
(license license:expat)))
(define-public ocaml-zed
(package
(name "ocaml-zed")
(version "1.6")
(version "2.0.3")
(source
(origin
(method git-fetch)
@ -2992,14 +3073,15 @@ library is currently designed for Unicode Standard 3.2.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "00hhxcjf3bj3w2qm8nzs9x6vrqkadf4i0277s5whzy2rmiknj63v"))))
(base32 "0pa9awinqr0plp4b2az78dwpvh01pwaljnn5ydg8mc6hi7rmir55"))))
(build-system dune-build-system)
(arguments
`(#:jbuild? #t
#:test-target "."))
(propagated-inputs
`(("camomile" ,ocaml-camomile)
("react" ,ocaml-react)))
`(("ocaml-camomile" ,ocaml-camomile)
("ocaml-charinfo-width" ,ocaml-charinfo-width)
("ocaml-react" ,ocaml-react)))
(home-page "https://github.com/diml/zed")
(synopsis "Abstract engine for text editing in OCaml")
(description "Zed is an abstract engine for text edition. It can be used
@ -3010,7 +3092,7 @@ connect an engine to your inputs and rendering functions to get an editor.")
(define-public ocaml-lambda-term
(package
(name "ocaml-lambda-term")
(version "1.13")
(version "2.0.2")
(source
(origin
(method git-fetch)
@ -3019,7 +3101,7 @@ connect an engine to your inputs and rendering functions to get an editor.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "0wwib20b2ir3h2g9zwhzn04cv160psb805skp8v23wqgyn5cnbh8"))))
(base32 "0zcjy6fvf0d3i2ssz96asl889n3r6bplyzk7xvb2s3dkxbgcisyy"))))
(build-system dune-build-system)
(arguments
`(#:build-flags (list "--profile" "release")
@ -3041,7 +3123,7 @@ instead of bindings to a C library.")
(define-public ocaml-utop
(package
(name "ocaml-utop")
(version "2.3.0")
(version "2.4.1")
(source
(origin
(method git-fetch)
@ -3050,7 +3132,7 @@ instead of bindings to a C library.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "0xvibb97vzzh7yabr5ajhilriwz8cg4c506lxq0bd7ss3aci9han"))))
(base32 "1jm3sagissbw8012mnppknsxl9dqd9514b891b64disqhdb5awg3"))))
(build-system dune-build-system)
(arguments
`(#:jbuild? #t
@ -3468,19 +3550,29 @@ than the first one.")
(define-public ocaml-biniou
(package
(name "ocaml-biniou")
(version "1.2.0")
(version "1.2.1")
(home-page "https://github.com/mjambon/biniou")
(source
(origin
(method git-fetch)
(uri (git-reference
(url (string-append home-page ".git"))
(commit (string-append "v" version))))
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"0mjpgwyfq2b2izjw0flmlpvdjgqpq8shs89hxj1np2r50csr8dcb"))))
"0x2kiy809n1j0yf32l7hj102y628jp5jdrkbi3z7ld8jq04h1790"))))
(build-system dune-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-before 'build 'make-writable
(lambda _
(for-each
(lambda (file)
(chmod file #o644))
(find-files "." "."))
#t)))))
(inputs
`(("ocaml-easy-format" ,ocaml-easy-format)))
(native-inputs
@ -4983,7 +5075,7 @@ the full Core is not available, such as in Javascript.")
(define-public ocaml-markup
(package
(name "ocaml-markup")
(version "0.8.0")
(version "0.8.1")
(home-page "https://github.com/aantron/markup.ml")
(source
(origin
@ -4994,10 +5086,11 @@ the full Core is not available, such as in Javascript.")
(file-name (git-file-name name version))
(sha256
(base32
"0aif4abvfmi9xc1pvw5n5rbm6rzkkpsxyvdn0lanr33rjpvkwdlm"))))
"0gzdjfnkv56vhmpvi9xpv1p05z50y55izhn156bkmb35s6izxds3"))))
(build-system dune-build-system)
(inputs
`(("ocaml-uchar" ,ocaml-uchar)
(propagated-inputs
`(("ocaml-bisect-ppx" ,ocaml-bisect-ppx)
("ocaml-uchar" ,ocaml-uchar)
("ocaml-uutf" ,ocaml-uutf)
("ocaml-lwt" ,ocaml-lwt)))
(native-inputs `(("ocaml-ounit" ,ocaml-ounit)))
@ -5072,10 +5165,22 @@ combinators.")
(base32
"1vp3qvrkz7q25nbmvd40vhsnz2k9aqh17bnd21i3q8q0xlr5hdag"))))
(build-system dune-build-system)
(inputs
(propagated-inputs
`(("ocaml-migrate-parsetree" ,ocaml-migrate-parsetree)
("ocaml-ppx-tools-versioned" ,ocaml-ppx-tools-versioned)
("ocaml-ounit" ,ocaml-ounit)))
(arguments
`(#:phases
(modify-phases %standard-phases
(add-before 'build 'fix-deprecated
(lambda _
;; Fixed upstream in 22dd1ad9a0c9629f60599c22d82c6488394d6d32, but
;; not in a release yet.
(substitute* "src/ppx/instrument.ml"
(("module Ast = Ast_405")
"module Ast = Migrate_parsetree.Ast_405
module Ast_405 = Ast"))
#t)))))
(home-page "https://github.com/aantron/bisect_ppx")
(synopsis "Code coverage for OCaml")
(description "Bisect_ppx helps you test thoroughly. It is a small
@ -5090,7 +5195,7 @@ then run the Bisect_ppx report tool on the generated visitation files.")
(define-public ocaml-odoc
(package
(name "ocaml-odoc")
(version "1.4.0")
(version "1.4.1")
(source
(origin
(method git-fetch)
@ -5100,7 +5205,7 @@ then run the Bisect_ppx report tool on the generated visitation files.")
(file-name (git-file-name name version))
(sha256
(base32
"0br11cw6wa0mwafja4xdb45d2f8908l6nzdq5mw5lbfq2jnp68km"))))
"1i2j0krbzvb1n3dcic9h1pyyqxmf051ky82nrcyzx1nwqjb8zfh6"))))
(build-system dune-build-system)
(inputs
`(("ocaml-alcotest" ,ocaml-alcotest)

View File

@ -544,7 +544,7 @@ transactions from C or Python.")
(license license:gpl2+)))
(define-public diffoscope
(let ((version "121"))
(let ((version "122"))
(package
(name "diffoscope")
(version version)
@ -556,7 +556,7 @@ transactions from C or Python.")
(file-name (git-file-name name version))
(sha256
(base32
"1bw7s8qs1vnr93vhifl6pj6h6w6r6nrpc5anzhh9wx2gcaipkb3m"))))
"1pwddknk8qyv88ba63why8vbnlc14b47434lv4ijx49m7ya3zfvg"))))
(build-system python-build-system)
(arguments
`(#:phases (modify-phases %standard-phases
@ -963,7 +963,7 @@ for packaging and deployment of cross-compiled Windows applications.")
(define-public libostree
(package
(name "libostree")
(version "2018.9.1")
(version "2019.3")
(source (origin
(method url-fetch)
(uri (string-append
@ -971,7 +971,7 @@ for packaging and deployment of cross-compiled Windows applications.")
(version-major+minor version) "/libostree-" version ".tar.xz"))
(sha256
(base32
"01mygpkbl9sk2vr3hjbpih6qlg8lwx0q5lklm09f7jfwfpnwyqzj"))))
"1r07yqbc9iiq0lzv1pryppd35fv695ym8r040msbfc93pmiy77y0"))))
(build-system gnu-build-system)
(arguments
'(#:phases
@ -983,13 +983,14 @@ for packaging and deployment of cross-compiled Windows applications.")
(setenv "TEST_TMPDIR" (getenv "TMPDIR"))
#t)))
;; XXX: fails with:
;; tap-driver.sh: missing test plan
;; tap-driver.sh: internal error getting exit status
;; tap-driver.sh: fatal: I/O or internal error
#:tests? #f))
(native-inputs
`(("attr" ,attr) ; for tests
("bison" ,bison)
("glib:bin" ,glib "bin") ; for 'glib-mkenums'
("glib:bin" ,glib "bin") ; for 'glib-mkenums'
("gobject-introspection" ,gobject-introspection)
("pkg-config" ,pkg-config)
("xsltproc" ,libxslt)))

View File

@ -1,123 +0,0 @@
Copied from upstream:
https://github.com/LubosD/twinkle/commit/4b42755619011c117a76bdf98e417ebedc47e319
From 4b42755619011c117a76bdf98e417ebedc47e319 Mon Sep 17 00:00:00 2001
From: Michal Kubecek <mkubecek@suse.cz>
Date: Wed, 6 Jun 2018 10:07:21 +0200
Subject: [PATCH] Include <QRegExpValidator> explicitly
Since Qt 5.11, generated ui_getprofilename.h no longer includes QHeaderView
which breaks the chain that included qvalidator.h in getprofilename.cpp.
As it feels rather fragile to rely on such indirect includes, let's include
<QRegExpValidator> explicitly in each file using QRegExpValidator class.
---
src/gui/diamondcardprofileform.cpp | 1 +
src/gui/getprofilenameform.cpp | 2 +-
src/gui/inviteform.cpp | 1 +
src/gui/mphoneform.cpp | 1 +
src/gui/numberconversionform.cpp | 1 +
src/gui/syssettingsform.cpp | 1 +
src/gui/userprofileform.cpp | 1 +
src/gui/wizardform.cpp | 1 +
8 files changed, 8 insertions(+), 1 deletion(-)
diff --git a/src/gui/diamondcardprofileform.cpp b/src/gui/diamondcardprofileform.cpp
index 6656909..517180b 100644
--- a/src/gui/diamondcardprofileform.cpp
+++ b/src/gui/diamondcardprofileform.cpp
@@ -21,6 +21,7 @@
#include <QRegExp>
#include <QValidator>
+#include <QRegExpValidator>
#include "gui.h"
#include "diamondcard.h"
#include "getprofilenameform.h"
diff --git a/src/gui/getprofilenameform.cpp b/src/gui/getprofilenameform.cpp
index 1319e1d..89c715e 100644
--- a/src/gui/getprofilenameform.cpp
+++ b/src/gui/getprofilenameform.cpp
@@ -1,7 +1,7 @@
#include "getprofilenameform.h"
-
#include <QDir>
#include <QMessageBox>
+#include <QRegExpValidator>
#include "user.h"
#include "protocol.h"
diff --git a/src/gui/inviteform.cpp b/src/gui/inviteform.cpp
index 433fb22..2a5b68d 100644
--- a/src/gui/inviteform.cpp
+++ b/src/gui/inviteform.cpp
@@ -7,6 +7,7 @@
#include "sys_settings.h"
#include <QRegExp>
#include <QValidator>
+#include <QRegExpValidator>
/*
Copyright (C) 2005-2009 Michel de Boer <michel@twinklephone.com>
diff --git a/src/gui/mphoneform.cpp b/src/gui/mphoneform.cpp
index 260fda7..c4e3c1d 100644
--- a/src/gui/mphoneform.cpp
+++ b/src/gui/mphoneform.cpp
@@ -54,6 +54,7 @@
#include <QRegExp>
#include <QValidator>
#include <QSettings>
+#include <QRegExpValidator>
#include "buddyform.h"
#include "diamondcardprofileform.h"
#include "osd.h"
diff --git a/src/gui/numberconversionform.cpp b/src/gui/numberconversionform.cpp
index f8ae64c..8481a9b 100644
--- a/src/gui/numberconversionform.cpp
+++ b/src/gui/numberconversionform.cpp
@@ -1,5 +1,6 @@
#include "numberconversionform.h"
+#include <QRegExpValidator>
#include "gui.h"
/*
diff --git a/src/gui/syssettingsform.cpp b/src/gui/syssettingsform.cpp
index 216af54..355df59 100644
--- a/src/gui/syssettingsform.cpp
+++ b/src/gui/syssettingsform.cpp
@@ -28,6 +28,7 @@
#include "twinkle_config.h"
#include <QRegExp>
#include <QValidator>
+#include <QRegExpValidator>
#include "syssettingsform.h"
/*
* Constructs a SysSettingsForm as a child of 'parent', with the
diff --git a/src/gui/userprofileform.cpp b/src/gui/userprofileform.cpp
index 28700a6..9ed9209 100644
--- a/src/gui/userprofileform.cpp
+++ b/src/gui/userprofileform.cpp
@@ -31,6 +31,7 @@
#include <QStringList>
#include "twinkle_config.h"
#include <QListWidget>
+#include <QRegExpValidator>
#include "numberconversionform.h"
#include "util.h"
#include "userprofileform.h"
diff --git a/src/gui/wizardform.cpp b/src/gui/wizardform.cpp
index 777aa12..f925875 100644
--- a/src/gui/wizardform.cpp
+++ b/src/gui/wizardform.cpp
@@ -23,6 +23,7 @@
#include <QTextStream>
#include "gui.h"
#include <QFile>
+#include <QRegExpValidator>
#include "wizardform.h"
#define PROV_NONE QT_TRANSLATE_NOOP("WizardForm", "None (direct IP to IP calls)")
--
2.17.0

View File

@ -1,31 +0,0 @@
From cbb9c769316b4d32956a2c78aa01a38b473f0cfc Mon Sep 17 00:00:00 2001
From: David Thompson <dthompson2@worcester.edu>
Date: Fri, 30 Oct 2015 08:30:43 -0400
Subject: [PATCH] xflock4: Do not override PATH with hardcoded value.
The PATH "/bin:/usr/bin" may not be a valid search path on the user's
machine. The screen locking program may be in /usr/local/bin or
elsewhere. Distros that do not conform to the FHS, such as GuixSD and
NixOS, will not have their executables in either location. Thus, we
simply leave PATH alone.
---
scripts/xflock4 | 3 ---
1 file changed, 3 deletions(-)
diff --git a/scripts/xflock4 b/scripts/xflock4
index ec4d05d..e7981ac 100644
--- a/scripts/xflock4
+++ b/scripts/xflock4
@@ -21,9 +21,6 @@
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
#
-PATH=/bin:/usr/bin
-export PATH
-
# Lock by xscreensaver or gnome-screensaver, if a respective daemon is running
for lock_cmd in \
"xscreensaver-command -lock" \
--
2.5.0

View File

@ -70,14 +70,14 @@
(define-public libraw
(package
(name "libraw")
(version "0.19.4")
(version "0.19.5")
(source (origin
(method url-fetch)
(uri (string-append "https://www.libraw.org/data/LibRaw-"
version ".tar.gz"))
(sha256
(base32
"07wnzw9k3mwdq9dmpmg94al3ksc065kskfbxkknnmhvrsv2iri8k"))))
"1x827sh6vl8j3ll2ihkcr234y07f31hi1v7sl08jfw3irkbn58j0"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)))

View File

@ -364,7 +364,7 @@
("libxpm" ,libxpm)
("libxslt" ,libxslt)
("libx11" ,libx11)
("oniguruma" ,oniguruma-5)
("oniguruma" ,oniguruma)
("openldap" ,openldap)
("openssl" ,openssl)
("pcre" ,pcre2)

View File

@ -4081,14 +4081,14 @@ operators such as union, intersection, and difference.")
(define-public python-scipy
(package
(name "python-scipy")
(version "1.2.2")
(version "1.3.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "scipy" version))
(sha256
(base32
"1cgvgin8fvckv96hjh3ikmwkra5rif51bdb75ifzf7xbil5iwcx4"))))
"1df113c9i6vazsn6y3n9wc22jh737z1g7dmx3mypkdwpdnscyhr6"))))
(build-system python-build-system)
(propagated-inputs
`(("python-numpy" ,python-numpy)
@ -4184,9 +4184,19 @@ routines such as routines for numerical integration and optimization.")
(properties `((python2-variant . ,(delay python2-scipy))))
(license license:bsd-3)))
;; Version 1.2.2 is the last version to support Python 2
(define-public python2-scipy
(package-with-python2
(strip-python2-variant python-scipy)))
(package
(inherit (package-with-python2
(strip-python2-variant python-scipy)))
(version "1.2.2")
(source
(origin
(method url-fetch)
(uri (pypi-uri "scipy" version))
(sha256
(base32
"1cgvgin8fvckv96hjh3ikmwkra5rif51bdb75ifzf7xbil5iwcx4"))))))
(define-public python-socksipy-branch
(package
@ -14676,14 +14686,13 @@ working with iterables.")
(define-public python-pybtex
(package
(name "python-pybtex")
(version "0.21")
(version "0.22.2")
(source
(origin
(method url-fetch)
(uri (pypi-uri "pybtex" version))
(sha256
(base32
"00300j8dn5pxq4ndxmfmbmycg2znawkqs49val2x6jlmfiy6r2mg"))))
(base32 "070wfcmxrd7xg1si421mi9150gmx2qwx431nwf69sq3hhmgnx080"))))
(build-system python-build-system)
(native-inputs
`(("python-nose" ,python-nose)))

View File

@ -2219,6 +2219,12 @@ time Web content can be enhanced with native controls.")
;; Building QtWebKit takes around 13 hours on an AArch64 machine. Give some
;; room for slower or busy hardware.
(properties '((timeout . 64800))) ;18 hours
;; XXX: This consumes too much RAM to successfully build on AArch64 (e.g.,
;; SoftIron OverDrive with 8 GiB of RAM), so instead of wasting resources,
;; disable it on non-Intel platforms.
(supported-systems '("x86_64-linux" "i686-linux"))
(license license:lgpl2.1+)))
(define-public dotherside

View File

@ -1070,7 +1070,7 @@ jemalloc = \"" jemalloc "/lib/libjemalloc_pic.a" "\"
(("bins::check") "//bins::check"))
#t)))))))))
(define-public rust
(define-public rust-1.36
(let ((base-rust
(rust-bootstrapped-package rust-1.35 "1.36.0"
"06xv2p6zq03lidr0yaf029ii8wnjjqa894nkmrm6s0rx47by9i04")))
@ -1081,3 +1081,20 @@ jemalloc = \"" jemalloc "/lib/libjemalloc_pic.a" "\"
((#:phases phases)
`(modify-phases ,phases
(delete 'patch-process-docs-rev-cmd))))))))
(define-public rust
(let ((base-rust
(rust-bootstrapped-package rust-1.36 "1.37.0"
"1hrqprybhkhs6d9b5pjskfnc5z9v2l2gync7nb39qjb5s0h703hj")))
(package
(inherit base-rust)
(arguments
(substitute-keyword-arguments (package-arguments base-rust)
((#:phases phases)
`(modify-phases ,phases
(add-before 'configure 'configure-cargo-home
(lambda _
(let ((cargo-home (string-append (getcwd) "/.cargo")))
(mkdir-p cargo-home)
(setenv "CARGO_HOME" cargo-home)
#t))))))))))

View File

@ -154,14 +154,14 @@ anywhere.")
(define-public samba
(package
(name "samba")
(version "4.10.6")
(version "4.10.8")
(source (origin
(method url-fetch)
(uri (string-append "https://download.samba.org/pub/samba/stable/"
"samba-" version ".tar.gz"))
(sha256
(base32
"0hpgdqlyczj98pkh2ldglvvnkrb1q541r3qikdvxq0qjvd9fpywy"))))
"1x0hlhb674fndfkmimjicnzs543n3i8465a5ifcmjwvzavxha7y4"))))
(build-system gnu-build-system)
(arguments
`(#:phases
@ -245,14 +245,14 @@ Desktops into Active Directory environments using the winbind daemon.")
(define-public talloc
(package
(name "talloc")
(version "2.2.0")
(version "2.3.0")
(source (origin
(method url-fetch)
(uri (string-append "https://www.samba.org/ftp/talloc/talloc-"
version ".tar.gz"))
(sha256
(base32
"1g1fqa37xkjp9lp6lrwxrbfgashcink769ll505zvcwnxx2nlvsw"))))
"1iigk4a7n9k9qqq0h3a5vah67ycpqzvahvdhzy15lm428jrvrmbm"))))
(build-system gnu-build-system)
(arguments
'(#:phases
@ -312,14 +312,14 @@ destructors. It is the core memory allocator used in Samba.")
(define-public tevent
(package
(name "tevent")
(version "0.10.0")
(version "0.10.1")
(source (origin
(method url-fetch)
(uri (string-append "https://www.samba.org/ftp/tevent/tevent-"
version ".tar.gz"))
(sha256
(base32
"1rm4d9245ya15wyrh9vqn1dnz14l2ic88mr46ykyc6kdrl99dwrk"))))
"1dhhd7fz6wyvlwrk1a6gj5m2mcjsc3ilx0mcv1qsr1lbndldm93r"))))
(build-system gnu-build-system)
(arguments
'(#:phases

View File

@ -53,7 +53,7 @@
#:use-module (gnu packages gtk)
#:use-module (gnu packages gettext)
#:use-module (gnu packages glib)
#:use-module (gnu packages haskell)
#:use-module (gnu packages haskell-xyz)
#:use-module (gnu packages icu4c)
#:use-module (gnu packages image)
#:use-module (gnu packages java)
@ -1828,13 +1828,13 @@ and density estimation.")
(define-public r-chron
(package
(name "r-chron")
(version "2.3-53")
(version "2.3-54")
(source (origin
(method url-fetch)
(uri (cran-uri "chron" version))
(sha256
(base32
"02bkywwsxwrxc035hv51dxgdm1fjxdm7dn19ivifln59dfs1862j"))))
"0vc7dxqwx0jqzwszax6di3091npsxnhnbvr7sy7rlip0jqzarwqd"))))
(build-system r-build-system)
(home-page "https://cran.r-project.org/web/packages/chron")
(synopsis "Chronological R objects which can handle dates and times")
@ -2097,13 +2097,13 @@ previous R versions and their release dates.")
(define-public r-whisker
(package
(name "r-whisker")
(version "0.3-2")
(version "0.4")
(source (origin
(method url-fetch)
(uri (cran-uri "whisker" version))
(sha256
(base32
"0z4cn115gxcl086d6bnqr8afi67b6a7xqg6ivmk3l4ng1x8kcj28"))))
"1a7vz0dk95xfjvi38wbpw8vmf5qn3g8p490msz2rw0piwidmk1ks"))))
(build-system r-build-system)
(home-page "https://github.com/edwindj/whisker")
(synopsis "Logicless mustache templating for R")
@ -2490,14 +2490,14 @@ were originally a part of the r-devtools package.")
(define-public r-hms
(package
(name "r-hms")
(version "0.5.0")
(version "0.5.1")
(source
(origin
(method url-fetch)
(uri (cran-uri "hms" version))
(sha256
(base32
"06snfqdczr0x0nbp7qnvwhlp2pw0wx9c2y3xb4gr1wrvbik74y58"))))
"1v4cxfpvp85la4gqla6b4q2bwx4jv1fxqwndcnjsibbnybz6wcvd"))))
(build-system r-build-system)
(propagated-inputs
`(("r-rlang" ,r-rlang)
@ -2696,14 +2696,14 @@ certain criterion, e.g., it contains a certain regular file.")
(define-public r-rmarkdown
(package
(name "r-rmarkdown")
(version "1.14")
(version "1.15")
(source
(origin
(method url-fetch)
(uri (cran-uri "rmarkdown" version))
(sha256
(base32
"0qfw5rkvwqpgix32g6qy9xrr50awmm146aqbm836xravih2b2dpn"))))
"0fkfzxkvakc6bb1s2lx7sxmnfff8q1m9isihynhiyqh4x8yikcmw"))))
(properties `((upstream-name . "rmarkdown")))
(build-system r-build-system)
(propagated-inputs
@ -5028,14 +5028,14 @@ VGLMs can be loosely thought of as multivariate generalised linear models.")
(define-public r-pbapply
(package
(name "r-pbapply")
(version "1.4-1")
(version "1.4-2")
(source
(origin
(method url-fetch)
(uri (cran-uri "pbapply" version))
(sha256
(base32
"1bbws9n90cqnnp5k58hp852jwmm6513jnhn4vzhl9f8x314k6qxk"))))
"1xmk4p006v8gij26rs6kp5prjyf2n32nqjxiyp8a6kvgyc4z46dc"))))
(build-system r-build-system)
(home-page "https://github.com/psolymos/pbapply")
(synopsis "Adding progress bar to apply functions")

View File

@ -264,19 +264,19 @@ over the Internet in an HTTP and CDN friendly way;
(define-public rclone
(package
(name "rclone")
(version "1.48.0")
(version "1.49.1")
(source
(origin
(method url-fetch)
(uri (string-append "https://github.com/ncw/rclone/releases/download/v"
version "/rclone-v" version ".tar.gz"))
(uri (string-append "https://github.com/rclone/rclone/releases/download/"
"v" version "/rclone-v" version ".tar.gz"))
(sha256
(base32 "1r03rlsk0qpya1fl8xfhj5inccjywf2cqgkd8r6wfhf3w2qd1zlc"))))
(base32 "1d0qvj7fn5bx3zqlf6hzn1922nrmy4x341n760m1b6h9az32mc5x"))))
;; FIXME: Rclone bundles some libraries Guix already provides. Need to
;; un-bundle them.
(build-system go-build-system)
(arguments
'(#:import-path "github.com/ncw/rclone"
'(#:import-path "github.com/rclone/rclone"
#:install-source? #f))
(synopsis "@code{rsync} for cloud storage")
(description "@code{Rclone} is a command line program to sync files and

View File

@ -30,7 +30,7 @@
(define-public syncthing
(package
(name "syncthing")
(version "1.2.1")
(version "1.2.2")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/syncthing/syncthing"
@ -38,7 +38,7 @@
"/syncthing-source-v" version ".tar.gz"))
(sha256
(base32
"1b6fidpkwfa2bm6hlv4p0bzxa1ha6s88vajczhryhqi5vjfxafri"))
"1wdjh8xw09s1nfkpc95v04619gqa4dpbygp2y5l35ww4g916lv3s"))
(modules '((guix build utils)))
;; Delete bundled ("vendored") free software source code.
(snippet '(begin
@ -55,7 +55,6 @@
`(("go-github-com-audriusbutkevicius-go-nat-pmp"
,go-github-com-audriusbutkevicius-go-nat-pmp)
("go-github-com-bkaradzic-go-lz4" ,go-github-com-bkaradzic-go-lz4)
("go-github-com-calmh-du" ,go-github-com-calmh-du)
("go-github-com-calmh-xdr" ,go-github-com-calmh-xdr)
("go-github-com-chmduquesne-rollinghash"
,go-github-com-chmduquesne-rollinghash)
@ -84,6 +83,7 @@
,go-github-com-gogo-protobuf-protoc-gen-gogo)
("go-github-com-prometheus-client-golang-prometheus"
,go-github-com-prometheus-client-golang-prometheus)
("go-github-com-shirou-gopsutil" ,go-github-com-shirou-gopsutil)
("go-golang-org-x-net-bpf" ,go-golang-org-x-net-bpf)
("go-golang-org-x-net-internal-iana" ,go-golang-org-x-net-internal-iana)
("go-golang-org-x-net-internal-socket"

View File

@ -491,28 +491,24 @@ Mumble consists of two applications for separate usage:
license:bsd-2))))
(define-public twinkle
(let ((commit "02e1d1538af3337134bd7381dcd95f8d7775b30f")
(revision "1"))
(package
(name "twinkle")
(version (git-version "1.10.1" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/LubosD/twinkle")
(commit commit)))
(patches
(search-patches "twinkle-include-qregexpvalidator.patch"))
(file-name (git-file-name name version))
(sha256
(base32
"0ds4rp4vr1wagn4m4m7ldqbsx5vgmgbfcqqgyhn1wf6s1dm0020z"))))
(build-system cmake-build-system)
(arguments
`(#:tests? #f ; no test target
#:configure-flags '("-DWITH_SPEEX=On")
#:phases
(modify-phases %standard-phases
(name "twinkle")
(version "1.10.2")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/LubosD/twinkle")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"0s0gi03xwvzp02ah4q6j33r9jx9nbayr6dxlg2ck9pwbay1nq1hx"))))
(build-system cmake-build-system)
(arguments
`(#:tests? #f ; no test target
#:configure-flags '("-DWITH_SPEEX=On")
#:phases
(modify-phases %standard-phases
(add-after 'install 'wrap-executable
(lambda* (#:key inputs outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
@ -528,30 +524,30 @@ Mumble consists of two applications for separate usage:
"/lib/qt5/qml"))
'("qtdeclarative" "qtquickcontrols"))))
#t))))))
(native-inputs
`(("bison" ,bison)
("flex" ,flex)
("readline" ,readline)
("file" ,file)
("ucommon" ,ucommon)
("ccrtp" ,ccrtp)
("libxml2" ,libxml2)
("speex" ,speex)
("speexdsp" ,speexdsp)
("libsndfile" ,libsndfile)
("alsa-lib" ,alsa-lib)
("qttools" ,qttools)))
(inputs
`(("qtbase" ,qtbase)
("qtdeclarative" ,qtdeclarative)
("qtquickcontrols" ,qtquickcontrols)))
(home-page "http://twinkle.dolezel.info/")
(synopsis "Softphone for voice over IP and instant messaging")
(description "Twinkle is a softphone for your voice over IP and instant
(native-inputs
`(("bison" ,bison)
("flex" ,flex)
("readline" ,readline)
("file" ,file)
("ucommon" ,ucommon)
("ccrtp" ,ccrtp)
("libxml2" ,libxml2)
("speex" ,speex)
("speexdsp" ,speexdsp)
("libsndfile" ,libsndfile)
("alsa-lib" ,alsa-lib)
("qttools" ,qttools)))
(inputs
`(("qtbase" ,qtbase)
("qtdeclarative" ,qtdeclarative)
("qtquickcontrols" ,qtquickcontrols)))
(home-page "http://twinkle.dolezel.info/")
(synopsis "Softphone for voice over IP and instant messaging")
(description "Twinkle is a softphone for your voice over IP and instant
messaging communcations using the SIP protocol. You can use it for direct IP
phone to IP phone communication or in a network using a SIP proxy to route your
calls and messages")
(license license:gpl2+))))
(license license:gpl2+)))
(define-public pjproject
(package

View File

@ -955,7 +955,7 @@ tmux.")
(define-public kitty
(package
(name "kitty")
(version "0.14.3")
(version "0.14.4")
(home-page "https://sw.kovidgoyal.net/kitty/")
(source
(origin
@ -966,7 +966,7 @@ tmux.")
(file-name (git-file-name name version))
(sha256
(base32
"0wi6b6b1nyp16rcpcghk6by62wy6qsamv1xdymyn0zbqgd8h9n6b"))
"0z0y80wcbra3zfyaiim98afbqlfpkjkql430zfb8shx61rzzmn9i"))
(modules '((guix build utils)))
(snippet
'(begin

View File

@ -2885,30 +2885,45 @@ documents. It comprises the packages color, graphics, graphicx, trig, epsfig,
keyval, and lscape.")
(license license:lppl1.3c+)))
(define-public texlive-latex-xcolor
(package
(name "texlive-latex-xcolor")
(version (number->string %texlive-revision))
(source (origin
(method svn-fetch)
(uri (texlive-ref "latex" "xcolor"))
(file-name (string-append name "-" version "-checkout"))
(sha256
(base32
"01n613s7bcrd2n4jfawm0k4nn2ny3aaifp2jjfif3lz4sbv31494"))))
(build-system texlive-build-system)
(arguments '(#:tex-directory "latex/xcolor"))
(home-page "https://www.ctan.org/pkg/xcolor")
(synopsis "Driver-independent color extensions for LaTeX and pdfLaTeX")
(description
"The package starts from the basic facilities of the colorcolor package,
(define-public texlive-xcolor
(let ((template (simple-texlive-package
"texlive-xcolor"
(list "/doc/latex/xcolor/"
"/source/latex/xcolor/")
(base32
"12q6spmpxg30alhvarjmxzigmz7lazapbrb0mc4vhbn6n1sdz7pp"))))
(package
(inherit template)
(arguments
(substitute-keyword-arguments (package-arguments template)
((#:tex-directory _ #t)
"latex/xcolor")
((#:phases phases)
`(modify-phases ,phases
(add-after 'unpack 'chdir
(lambda _ (chdir "source/latex/xcolor") #t))
(add-after 'install 'move-files
(lambda* (#:key outputs #:allow-other-keys)
(let ((share (string-append (assoc-ref outputs "out")
"/share/texmf-dist")))
(mkdir-p (string-append share "/dvips/xcolor"))
(rename-file (string-append share "/tex/latex/xcolor/xcolor.pro")
(string-append share "/dvips/xcolor/xcolor.pro"))
#t)))))))
(home-page "https://www.ctan.org/pkg/xcolor")
(synopsis "Driver-independent color extensions for LaTeX and pdfLaTeX")
(description
"The package starts from the basic facilities of the colorcolor package,
and provides easy driver-independent access to several kinds of color tints,
shades, tones, and mixes of arbitrary colors. It allows a user to select a
document-wide target color model and offers complete tools for conversion
between eight color models. Additionally, there is a command for alternating
row colors plus repeated non-aligned material (like horizontal lines) in
tables.")
(license license:lppl1.2+)))
(license license:lppl1.2+))))
(define-public texlive-latex-xcolor
(deprecated-package "texlive-latex-xcolor" texlive-xcolor))
(define-public texlive-latex-hyperref
(package
@ -3969,31 +3984,6 @@ with a user specified LaTeX construction, properly aligned, scaled, and/or
rotated.")
(license (license:fsf-free "file://psfrag.dtx"))))
(define-public texlive-latex-xkeyval
(package
(name "texlive-latex-xkeyval")
(version (number->string %texlive-revision))
(source (origin
(method svn-fetch)
(uri (texlive-ref "latex" "xkeyval"))
(file-name (string-append name "-" version "-checkout"))
(sha256
(base32
"0wancavix39j240pd8m9cgmwsijwx6jd6n54v8wg0x2rk5m44myp"))))
(build-system texlive-build-system)
(arguments '(#:tex-directory "latex/xkeyval"))
(home-page "https://www.ctan.org/pkg/xkeyval")
(synopsis "Macros for defining and setting keys")
(description
"This package is an extension of the @code{keyval} package and offers
more flexible macros for defining and setting keys. The package provides a
pointer and a preset system. Furthermore, it supplies macros to allow class
and package options to contain options of the @code{key=value} form. A LaTeX
kernel patch is provided to avoid premature expansions of macros in class or
package options. A specialized system for setting @code{PSTricks} keys is
provided by the @code{pst-xkey} package.")
(license license:lppl1.3+)))
(define-public texlive-pstool
(package
(inherit (simple-texlive-package
@ -5454,7 +5444,7 @@ TeX metrics (VF and TFM files) and macros for use with LaTeX.")
as an alternative version of the Kurier typeface, which was designed in 1975
for a diploma in typeface design at the Warsaw Academy of Fine Arts under the
supervision of Roman Tomaszewski. Kurier was designed for linotype
typesetting of newspapers and similar periodicals. The Iwona fonts are an
typesetting of newspapers and similar periodicals. The Iwona fonts are an
alternative version of the Kurier fonts. The difference lies in the absence
of ink traps which typify the Kurier font.")
(license license:gfl1.0)))
@ -7063,3 +7053,319 @@ the file to which it applies.")
"This package helps LaTeX users to create PDF/X, PFD/A and other
standards-compliant PDF documents with pdfTeX, LuaTeX and XeTeX.")
(license license:lppl1.2+)))
(define-public texlive-ydoc
(let ((template (simple-texlive-package
"texlive-ydoc"
(list "/doc/latex/ydoc/"
"/source/latex/ydoc/")
(base32
"0ckcpy1b8v1fk3qc8qkxgiag2wc0qzxm6bgksv000m4m1hsi2g8b")
#:trivial? #f)))
(package
(inherit template)
(outputs '("out" "doc"))
(arguments
(substitute-keyword-arguments (package-arguments template)
((#:tex-directory _ #t)
"latex/ydoc")
((#:build-targets _ #t)
''("ydoc.dtx"))
((#:phases phases)
`(modify-phases ,phases
(add-after 'unpack 'chdir
(lambda _ (chdir "source/latex/ydoc") #t))
(add-after 'copy-files 'move-files
(lambda* (#:key outputs #:allow-other-keys)
(let* ((share (string-append (assoc-ref outputs "out")
"/share/texmf-dist"))
(target (string-append share "/tex/generic/ydoc"))
(doc (string-append (assoc-ref outputs "doc")
"/share/texmf-dist/doc") ))
(mkdir-p target)
(for-each
(lambda (file)
(rename-file (string-append share "/tex/latex/ydoc/" file)
(string-append target "/" file)))
'("ydocincl.tex" "ydocstrip.tex"))
(mkdir-p doc)
(rename-file (string-append share "/doc") doc)
#t)))))))
(home-page "http://www.ctan.org/pkg/ydoc")
(synopsis "Macros for documentation of LaTeX classes and packages")
(description "The package provides macros and environments to document
LaTeX packages and classes. It is an (as yet unfinished) alternative to the
@code{ltxdoc} class and the @code{doc} or @code{xdoc} packages. The aim is to
provide a different layout and more modern styles (using the @code{xcolor},
@code{hyperref} packages, etc.) This is an alpha release, and should probably
not (yet) be used with other packages, since the implementation might
change.")
(license license:lppl1.3+))))
(define-public texlive-pstricks
(let ((template (simple-texlive-package
"texlive-pstricks"
(list "/doc/generic/pstricks/"
"/dvips/pstricks/"
"/tex/generic/pstricks/"
"/tex/latex/pstricks/")
(base32
"04566354c77claxl1sznc490cda0m5gaa5ck6ms4q7mm44rj3rzk")
#:trivial? #t)))
(package
(inherit template)
(arguments
(substitute-keyword-arguments (package-arguments template)
((#:phases phases)
`(modify-phases ,phases
(delete 'reset-gzip-timestamps)))))
(home-page "http://www.ctan.org/pkg/pstricks")
(synopsis "PostScript macros for TeX")
(description "PSTricks offers an extensive collection of macros for
generating PostScript that is usable with most TeX macro formats, including
Plain TeX, LaTeX, AMS-TeX, and AMS-LaTeX. Included are macros for colour,
graphics, pie charts, rotation, trees and overlays. It has many special
features, including a wide variety of graphics (picture drawing) macros, with
a flexible interface and with colour support. There are macros for colouring
or shading the cells of tables.")
(license license:lppl1.3+))))
(define-public texlive-pst-text
(let ((template (simple-texlive-package
"texlive-pst-text"
(list "/doc/generic/pst-text/"
"/source/generic/pst-text/Makefile"
"/dvips/pst-text/pst-text.pro"
"/tex/generic/pst-text/"
"/tex/latex/pst-text/")
(base32
"0s2bbkdfy0shqrrkjflrn0x0pnvxzbdc38pjbdfw46wnmnxrnasm")
#:trivial? #t)))
(package
(inherit template)
(propagated-inputs
`(("texlive-pstricks" ,texlive-pstricks)))
(home-page "http://www.ctan.org/pkg/pst-text")
(synopsis "Text and character manipulation in PSTricks")
(description "Pst-text is a PSTricks based package for plotting text along
a different path and manipulating characters. It includes the functionality
of the old package @code{pst-char}.")
(license license:lppl))))
(define-public texlive-iftex
(let ((template (simple-texlive-package
"texlive-iftex"
(list "/doc/generic/iftex/"
"/tex/generic/iftex/iftex.sty")
(base32
"089zvw31gby150n1k0zdk2c0q97pgbqs46phxydaqil64b55nnl7")
#:trivial? #t)))
(package
(inherit template)
(home-page "http://www.ctan.org/pkg/iftex")
(synopsis "Determine the currently used TeX engine")
(description "This package, which works both for Plain TeX and for
LaTeX, defines the @code{\\ifPDFTeX}, @code{\\ifXeTeX}, and @code{\\ifLuaTeX}
conditionals for testing which engine is being used for typesetting. The
package also provides the @code{\\RequirePDFTeX}, @code{\\RequireXeTeX}, and
@code{\\RequireLuaTeX} commands which throw an error if pdfTeX, XeTeX or
LuaTeX (respectively) is not the engine in use.")
(license license:lppl1.3+))))
(define-public texlive-tools
(let ((template (simple-texlive-package
"texlive-tools"
(list "/doc/latex/tools/"
"/source/latex/tools/")
(base32
"0v3zqcpy0w5bzy1xdcv1wnxbmxrn1j6x03h3y2af7qmjggph2a09"))))
(package
(inherit template)
(arguments
(substitute-keyword-arguments (package-arguments template)
((#:tex-directory _ '())
"latex/tools")
((#:build-targets _ '())
''("tools.ins"))
((#:phases phases)
`(modify-phases ,phases
(add-after 'unpack 'chdir
(lambda _ (chdir "source/latex/tools") #t))))))
(home-page "https://www.ctan.org/tex-archive/macros/latex/required/tools/")
(synopsis "LaTeX standard tools bundle")
(description "This package provides a collection of simple tools that
are part of the LaTeX required tools distribution, comprising the packages:
@code{afterpage}, @code{array}, @code{bm}, @code{calc}, @code{dcolumn},
@code{delarray}, @code{enumerate}, @code{fileerr}, @code{fontsmpl},
@code{ftnright}, @code{hhline}, @code{indentfirst}, @code{layout},
@code{longtable}, @code{multicol}, @code{rawfonts}, @code{showkeys},
@code{somedefs}, @code{tabularx}, @code{theorem}, @code{trace},
@code{varioref}, @code{verbatim}, @code{xr}, and @code{xspace}.")
(license license:lppl1.3+))))
(define-public texlive-latex-xkeyval
(package
(name "texlive-latex-xkeyval")
(version (number->string %texlive-revision))
(source (origin
(method svn-fetch)
(uri (texlive-ref "latex" "xkeyval"))
(sha256
(base32
"0wancavix39j240pd8m9cgmwsijwx6jd6n54v8wg0x2rk5m44myp"))))
(build-system texlive-build-system)
(arguments
'(#:tex-directory "latex/xkeyval"
#:build-targets '("xkeyval.dtx")
#:tex-format "latex" ; won't build with luatex
#:phases
(modify-phases %standard-phases
;; This package cannot be built out of tree as it expects to find
;; built files in the working directory.
(add-before 'build 'fix-build
(lambda _
(setenv "TEXINPUTS"
(string-append (getcwd) "/build:"))
(substitute* "xkeyval.dtx"
(("usepackage\\{xcolor\\}")
"usepackage[dvips]{xcolor}"))
#t))
;; FIXME: We don't have a package for this font yet.
(add-after 'unpack 'remove-dependency-on-fourier
(lambda _
(substitute* "xkeyval.dtx"
(("\\\\usepackage\\{fourier\\}") ""))
#t))
(add-after 'install 'move-files
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(share (string-append out "/share/texmf-dist"))
(source (string-append share "/tex/latex/xkeyval/"))
(target (string-append share "/tex/generic/xkeyval/")))
(mkdir-p target)
(for-each (lambda (file)
(rename-file (string-append source file)
(string-append target file)))
'("keyval.tex"
"pst-xkey.tex"
"xkeyval.tex"
"xkvex1.tex"
"xkvex2.tex"
"xkvex3.tex"
"xkvex4.tex"
"xkvtxhdr.tex"
"xkvutils.tex"))
#t))))))
(native-inputs
`(("texlive-latex-base" ,texlive-latex-base)
("texlive-cm" ,texlive-cm)
("texlive-lm" ,texlive-lm)
("texlive-url" ,texlive-url)
("texlive-graphics-def" ,texlive-graphics-def)
("texlive-xcolor" ,texlive-xcolor)
("texlive-latex-footmisc" ,texlive-latex-footmisc)
("texlive-latex-listings" ,texlive-latex-listings)
("texlive-iftex" ,texlive-iftex)
("texlive-pstricks" ,texlive-pstricks)
("texlive-pst-text" ,texlive-pst-text)
("texlive-tools" ,texlive-tools)
("texlive-latex-pgf" ,texlive-latex-pgf)))
(home-page "http://www.ctan.org/pkg/xkeyval")
(synopsis "Extension of the keyval package")
(description
"This package is an extension of the keyval package and offers additional
macros for setting keys and declaring and setting class or package options.
The package allows the programmer to specify a prefix to the name of the
macros it defines for keys, and to define families of key definitions; these
all help use in documents where several packages define their own sets of
keys.")
(license license:lppl1.3+)))
(define-public texlive-standalone
(package
(name "texlive-standalone")
(version (number->string %texlive-revision))
(source
(origin
(method svn-fetch)
(uri (texlive-ref "latex" "standalone"))
(sha256
(base32
"192ydxcn8ir96q8qwvnppksmqf5i0p50i0wz6iqazbwmh3dqxpx4"))))
(build-system texlive-build-system)
(arguments '(#:tex-directory "latex/standalone"))
(propagated-inputs
`(("texlive-latex-xkeyval" ,texlive-latex-xkeyval)))
(native-inputs
`(("texlive-ydoc" ,texlive-ydoc)))
(home-page "http://www.ctan.org/pkg/standalone")
(synopsis "Compile TeX pictures stand-alone or as part of a document")
(description "A class and package is provided which allows TeX pictures or
other TeX code to be compiled standalone or as part of a main document.
Special support for pictures with beamer overlays is also provided. The
package is used in the main document and skips extra preambles in sub-files.
The class may be used to simplify the preamble in sub-files. By default the
@code{preview} package is used to display the typeset code without margins.
The behaviour in standalone mode may adjusted using a configuration file
@code{standalone.cfg} to redefine the standalone environment.")
(license license:lppl1.3+)))
(define-public texlive-siunitx
(package
(name "texlive-siunitx")
(version (number->string %texlive-revision))
(source (texlive-origin
name version
(list "/source/latex/siunitx/siunitx.dtx"
"/doc/latex/siunitx/README.md")
(base32
"0dmljnxgv2bwl3mi74iil41q03swvrm1b0ziwxlhc4m9lx31b1q1")))
(build-system texlive-build-system)
(arguments
'(#:tex-directory "latex/siunitx"
#:build-targets '("siunitx.dtx")
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'chdir
(lambda _ (chdir "source/latex/siunitx") #t)))))
(propagated-inputs
`(("texlive-latex-l3kernel" ,texlive-latex-l3kernel)
("texlive-latex-l3packages" ,texlive-latex-l3packages)))
(home-page "http://www.ctan.org/pkg/siunitx")
(synopsis "Comprehensive SI units package")
(description
"Typesetting values with units requires care to ensure that the combined
mathematical meaning of the value plus unit combination is clear. In
particular, the SI units system lays down a consistent set of units with rules
on how they are to be used. However, different countries and publishers have
differing conventions on the exact appearance of numbers (and units). A
number of LaTeX packages have been developed to provide consistent application
of the various rules. The @code{siunitx} package takes the best from the
existing packages, and adds new features and a consistent interface. A number
of new ideas have been incorporated, to fill gaps in the existing provision.
The package also provides backward-compatibility with @code{SIunits},
@code{sistyle}, @code{unitsdef} and @code{units}. The aim is to have one
package to handle all of the possible unit-related needs of LaTeX users.")
(license license:lppl1.3c)))
(define-public texlive-booktabs
(package
(name "texlive-booktabs")
(version (number->string %texlive-revision))
(source
(origin
(method svn-fetch)
(uri (texlive-ref "latex" "booktabs"))
(sha256
(base32
"1dqid48vgh25wmw8xzmx6x3pfgz1y9f0r8aza1yxq2mjny5yf68x"))))
(build-system texlive-build-system)
(arguments '(#:tex-directory "latex/booktabs"))
(home-page "http://www.ctan.org/pkg/booktabs")
(synopsis "Publication quality tables in LaTeX")
(description
"This package enhances the quality of tables in LaTeX, providing extra
commands as well as behind-the-scenes optimisation. Guidelines are given as
to what constitutes a good table in this context. The package offers
@code{longtable} compatibility.")
(license license:lppl1.3+)))

View File

@ -475,7 +475,7 @@ as existing hashing techniques, with provably negligible risk of collisions.")
(define-public oniguruma
(package
(name "oniguruma")
(version "6.9.2")
(version "6.9.3")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/kkos/"
@ -483,7 +483,7 @@ as existing hashing techniques, with provably negligible risk of collisions.")
"/onig-" version ".tar.gz"))
(sha256
(base32
"0slp4hpw9qxk4xhn7abyw7065sd355xwkyfq72glxczcjsqxsynv"))))
"0pvj37r1rd5h5vw99mdk8z4k44gq1ldwrapkamdiicksdfkr4ndb"))))
(build-system gnu-build-system)
(home-page "https://github.com/kkos/oniguruma")
(synopsis "Regular expression library")
@ -492,20 +492,6 @@ characteristic of this library is that different character encoding for every
regular expression object can be specified.")
(license license:bsd-2)))
;; PHP < 7.3.0 requires this old version. Remove once no longer needed.
(define-public oniguruma-5
(package
(inherit oniguruma)
(version "5.9.6")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/kkos/"
"oniguruma/releases/download/v" version
"/onig-" version ".tar.gz"))
(sha256
(base32
"19s79vsclqn170mw0ajwv7j37qsbn4f1yjz3yavnhvva6c820r6m"))))))
(define-public antiword
(package
(name "antiword")

View File

@ -42,14 +42,14 @@
(define-public miniupnpc
(package
(name "miniupnpc")
(version "2.1.20190625")
(version "2.1.20190824")
(source
(origin
(method url-fetch)
(uri (string-append "https://miniupnp.tuxfamily.org/files/"
name "-" version ".tar.gz"))
(sha256
(base32 "1yqp0d8x5ldjfma5x2vhpg1aaafdg0470ismccixww3rzpbza8w7"))))
(base32 "0rg1i51lnyq8zgflhcg981kq4348vgq03ndmbgiv7knd1vmfzb8z"))))
(build-system gnu-build-system)
(native-inputs
`(("python" ,python-2)))

View File

@ -483,7 +483,7 @@ trouble using them, because you do not have to remember each snippet name.")
(define-public vim-fugitive
(package
(name "vim-fugitive")
(version "2.5")
(version "3.0")
(source
(origin
(method git-fetch)
@ -493,7 +493,7 @@ trouble using them, because you do not have to remember each snippet name.")
(file-name (git-file-name name version))
(sha256
(base32
"17yz7gxn7a49jzndr4z5vnk1y4a6c22qss3mwxzmq4m46fni0k8q"))))
"0ghh8a9xysc3njqql1khhl2dkhymz93snpwqp2apm7pka6l893bc"))))
(build-system gnu-build-system)
(arguments
'(#:tests? #f
@ -506,13 +506,15 @@ trouble using them, because you do not have to remember each snippet name.")
(let* ((out (assoc-ref outputs "out"))
(vimfiles (string-append out "/share/vim/vimfiles"))
(autoload (string-append vimfiles "/autoload"))
(doc (string-append vimfiles "/doc"))
(doc (string-append vimfiles "/doc"))
(ftdetect (string-append vimfiles "/ftdetect"))
(plugin (string-append vimfiles "/plugin")))
(plugin (string-append vimfiles "/plugin"))
(syntax (string-append vimfiles "/syntax")))
(copy-recursively "autoload" autoload)
(copy-recursively "doc" doc)
(copy-recursively "ftdetect" ftdetect)
(copy-recursively "plugin" plugin)
(copy-recursively "syntax" syntax)
#t))))))
(home-page "https://github.com/tpope/vim-fugitive")
(synopsis "Vim plugin to work with Git")

View File

@ -368,16 +368,18 @@ driven and does not detract you from your daily work.")
(define next-gtk-webkit
(package
(name "next-gtk-webkit")
(version "1.3.0")
(version "1.3.1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://source.atlas.engineer/public/next")
;; TODO: Mirror seems to hang, let's fallback to GitHub for now.
;; (url "https://source.atlas.engineer/public/next")
(url "https://github.com/atlas-engineer/next")
(commit version)))
(sha256
(base32
"0ibq30xrf871pkpasi8p9krn0pmd86rsdzb3jqvz3wnp4wa3hl9d"))
"01fn1f080ydk0wj1bwkyakqz93bdq9xb5x8qz820jpl9id17bqgj"))
(file-name (git-file-name "next" version))))
(build-system glib-or-gtk-build-system)
(arguments
@ -413,7 +415,7 @@ features for productive professionals.")
(arguments
`(#:tests? #f ; Need online access.
#:asd-file "next.asd"
#:asd-system-name "download-manager"))
#:asd-system-name "next/download-manager"))
(inputs
`(;; ASD libraries:
("trivial-features" ,sbcl-trivial-features)
@ -501,8 +503,6 @@ features for productive professionals.")
("cl-markup" ,sbcl-cl-markup)
("cl-ppcre" ,sbcl-cl-ppcre)
("cl-ppcre-unicode" ,sbcl-cl-ppcre-unicode)
("cl-string-match" ,sbcl-cl-string-match)
("cl-strings" ,sbcl-cl-strings)
("closer-mop" ,sbcl-closer-mop)
("dbus" ,cl-dbus)
("dexador" ,sbcl-dexador)

View File

@ -208,14 +208,14 @@ Interface} specification.")
;; stable and recommends that “in general you deploy the NGINX mainline
;; branch at all times” (https://www.nginx.com/blog/nginx-1-6-1-7-released/)
;; Consider updating the nginx-documentation package together with this one.
(version "1.17.2")
(version "1.17.3")
(source (origin
(method url-fetch)
(uri (string-append "https://nginx.org/download/nginx-"
version ".tar.gz"))
(sha256
(base32
"1v39gslwbvpfhqqv74q0lkfrhrwsp59xc8pwhvxns7af8s3kccsy"))))
"0g0g9prwjy0rnv6n5smny5yl5dhnmflqdr3hwgyj5jpr5hfgx11v"))))
(build-system gnu-build-system)
(inputs `(("openssl" ,openssl)
("pcre" ,pcre)
@ -4931,13 +4931,13 @@ deployments.")
(package
(name "varnish")
(home-page "https://varnish-cache.org/")
(version "6.2.0")
(version "6.2.1")
(source (origin
(method url-fetch)
(uri (string-append home-page "_downloads/varnish-" version ".tgz"))
(sha256
(base32
"0lwfk2gq99c653h5f51fs3j37r0gh2pf0p4w5z986nm2mi9z6yn3"))))
"15qfvw3fp05bgyspcm6gbsnxhs430p4z3fwz5kkd1z68jb90b3pj"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags (list (string-append "LDFLAGS=-Wl,-rpath=" %output "/lib")

View File

@ -318,7 +318,7 @@ integrate Windows applications into your desktop.")
(define-public wine-staging-patchset-data
(package
(name "wine-staging-patchset-data")
(version "4.14")
(version "4.15")
(source
(origin
(method git-fetch)
@ -328,7 +328,7 @@ integrate Windows applications into your desktop.")
(file-name (git-file-name name version))
(sha256
(base32
"1s17hcrp1aa0v99y5iav2s0lxdx2rzgm7z0c4zhxyydqxj399f5j"))))
"13g40h2ybcl6vab4zbl1ksqfqyly5hzxssza9dv8r5pmp8x54hgr"))))
(build-system trivial-build-system)
(native-inputs
`(("bash" ,bash)
@ -374,7 +374,7 @@ integrate Windows applications into your desktop.")
(file-name (string-append name "-" version ".tar.xz"))
(sha256
(base32
"1rl1a3k5sr0hyxc61d68kwandhxcnxwv6b77vh7x2rkl1h4nxmfs"))))
"0bfh4vd99zwj7f4108zvs80dfvmmnnsap7i6gmf21jgcly3paygq"))))
(inputs `(("autoconf" ,autoconf) ; for autoreconf
("faudio" ,faudio)
("ffmpeg" ,ffmpeg)

View File

@ -48,9 +48,9 @@
#:use-module (guix build-system meson)
#:use-module (guix build-system perl)
#:use-module (guix build-system python)
#:use-module (gnu packages haskell)
#:use-module (gnu packages haskell-check)
#:use-module (gnu packages haskell-web)
#:use-module (gnu packages haskell-xyz)
#:use-module (gnu packages autotools)
#:use-module (gnu packages bison)
#:use-module (gnu packages gawk)
@ -172,14 +172,14 @@ commands would.")
(define-public i3-wm
(package
(name "i3-wm")
(version "4.17")
(version "4.17.1")
(source (origin
(method url-fetch)
(uri (string-append "https://i3wm.org/downloads/i3-"
version ".tar.bz2"))
(sha256
(base32
"1z8qmkkq9dhqmqy8sjw3rnpnmnb8v7lr456bs0qzp23bgpj17gjf"))))
"0iazv2i2rgmakzh95pgj6iapyzn7bdpcbcd35a79mhlml4ry33qy"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags
@ -1138,7 +1138,7 @@ functionality to display information about the most commonly used services.")
(define-public wlroots
(package
(name "wlroots")
(version "0.6.0")
(version "0.7.0")
(source
(origin
(method git-fetch)
@ -1147,7 +1147,7 @@ functionality to display information about the most commonly used services.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1rdcmll5b8w242n6yfjpsaprq280ck2jmbz46dxndhignxgda7k4"))))
(base32 "0jzxa6psbc7ddxli7rbfqxmv1svxnis51l1vch4hb9fdixqm284a"))))
(build-system meson-build-system)
(arguments
`(#:configure-flags '("-Dlogind-provider=elogind")

View File

@ -37,6 +37,7 @@
#:use-module (guix build-system trivial)
#:use-module (gnu artwork)
#:use-module (gnu packages)
#:use-module (gnu packages base)
#:use-module (gnu packages calendar)
#:use-module (gnu packages cdrom)
#:use-module (gnu packages pkg-config)
@ -54,6 +55,7 @@
#:use-module (gnu packages pdf)
#:use-module (gnu packages polkit)
#:use-module (gnu packages gstreamer)
#:use-module (gnu packages libcanberra)
#:use-module (gnu packages linux)
#:use-module (gnu packages photo)
#:use-module (gnu packages pcre)
@ -86,7 +88,7 @@
(define-public libxfce4util
(package
(name "libxfce4util")
(version "4.12.1")
(version "4.14.0")
(source (origin
(method url-fetch)
(uri (string-append "http://archive.xfce.org/xfce/"
@ -94,11 +96,13 @@
"/src/" name "-" version ".tar.bz2"))
(sha256
(base32
"07c8r3xwx5is298zk77m3r784gmr5y4mh8bbca5zdjqk5vxdwsw7"))))
"093338faqqsrlc8dkmzr7qv411ysxczg1wlg7s3gvhrfk6vpkb9j"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)
("intltool" ,intltool)))
("gobject-introspection" ,gobject-introspection)
("intltool" ,intltool)
("vala" ,vala)))
(propagated-inputs `(("glib" ,glib))) ; required by libxfce4util-1.0.pc
(home-page "https://www.xfce.org/")
(synopsis "Basic utility library for Xfce")
@ -110,7 +114,7 @@ Xfce Desktop Environment.")
(define-public xfconf
(package
(name "xfconf")
(version "4.12.1")
(version "4.14.1")
(source (origin
(method url-fetch)
(uri (string-append "https://archive.xfce.org/src/xfce/"
@ -118,13 +122,13 @@ Xfce Desktop Environment.")
name "-" version ".tar.bz2"))
(sha256
(base32
"0dns190bwb615wy9ma2654sw4vz1d0rcv061zmaalkv9wmj8bx1m"))))
"0n8d55c98ff7wgwv3qa4g369sv4iasgm1w62zq10kq5f56iy14xq"))))
(build-system gnu-build-system)
(arguments
'(#:phases
;; Run check after install phase to test dbus activation.
(modify-phases %standard-phases
(add-after 'install 'check
(add-after 'install 'custom-check
(lambda _
(setenv "HOME" (getenv "TMPDIR")) ; xfconfd requires a writable HOME
;; Run test-suite under a dbus session.
@ -136,12 +140,14 @@ Xfce Desktop Environment.")
(delete 'check))))
(native-inputs
`(("pkg-config" ,pkg-config)
("intltool" ,intltool)))
("intltool" ,intltool)
("glib:bin" ,glib "bin") ;; for gdbus-codegen
("gobject-introspection" ,gobject-introspection)
("vala" ,vala)
("dbus" ,dbus)))
(propagated-inputs
;; libxfconf-0.pc refers to all these.
`(("glib" ,glib)
("dbus" ,dbus)
("dbus-glib" ,dbus-glib)))
`(("glib" ,glib)))
(inputs
`(("libxfce4util" ,libxfce4util)))
(home-page "https://www.xfce.org/")
@ -154,7 +160,7 @@ storage system.")
(define-public libxfce4ui
(package
(name "libxfce4ui")
(version "4.12.1")
(version "4.14.1")
(source (origin
(method url-fetch)
(uri (string-append "https://archive.xfce.org/src/xfce/"
@ -162,11 +168,15 @@ storage system.")
name "-" version ".tar.bz2"))
(sha256
(base32
"0hzzhiiwmqsrbv17nninhs2x1b8ck0ym85jck2xphx5ypw8rhq9x"))))
"1npjhznmnckhnylsv3l7p1zvhckhmp9d7vifs8w12kdfmrg0fjf4"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags
(list "--with-vendor-info=GNU Guix")))
(native-inputs
`(("pkg-config" ,pkg-config)
("intltool" ,intltool)))
("intltool" ,intltool)
("gobject-introspection" ,gobject-introspection)))
(propagated-inputs
`(("gtk+-3" ,gtk+) ; required by libxfce4ui-2.pc
;; libxfce4kbd-private-2.pc refers to all these.
@ -188,7 +198,7 @@ to share commonly used Xfce widgets among the Xfce applications.")
(define-public exo
(package
(name "exo")
(version "0.12.6")
(version "0.12.8")
(source (origin
(method url-fetch)
(uri (string-append "https://archive.xfce.org/src/xfce/"
@ -196,17 +206,19 @@ to share commonly used Xfce widgets among the Xfce applications.")
"exo-" version ".tar.bz2"))
(sha256
(base32
"00qh8ihrf09jvd26kilybihkgvv6rvi0l1bvlldxc99jb7ygy5ql"))))
"1ppwi6n40aphh0dqsnfrk234zsp7pl4lkjnspqjxw7m49bka401l"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)
("intltool" ,intltool)))
(propagated-inputs
;; exo-1.pc refers to all these.
`(("gtk+" ,gtk+-2)
;; exo-2.pc refers to all these.
`(("gtk+-3" ,gtk+)
("libxfce4util" ,libxfce4util)))
(inputs
`(("libxfce4ui" ,libxfce4ui)
`(;; FIXME Refered to in exo-1.pc but conflict with gtk+-3
("gtk+-2" ,gtk+-2)
("libxfce4ui" ,libxfce4ui)
("perl-uri" ,perl-uri)))
(home-page "https://www.xfce.org/")
(synopsis "Extension library for Xfce")
@ -220,7 +232,7 @@ development.")
(define-public garcon
(package
(name "garcon")
(version "0.6.3")
(version "0.6.4")
(source (origin
(method url-fetch)
(uri (string-append "https://archive.xfce.org/src/xfce/"
@ -228,16 +240,17 @@ development.")
"garcon-" version ".tar.bz2"))
(sha256
(base32
"00c4g4gmbr8710k0yv1zybnm9s2gkc1rj63zfrg9qgin66jzxcbn"))))
"0bbngb4bn1m325j7y40gky36kn2nlsvqs6xp0wy76x3s0d9lfpnp"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)
("intltool" ,intltool)
("glib:bin" ,glib "bin")))
(inputs
`(("gtk+" ,gtk+-2)))
`(("gtk+-2" ,gtk+-2))); required by garcon-gtk2-1.pc
(propagated-inputs
`(("libxfce4ui" ,libxfce4ui))) ; required by garcon-gtk2-1.pc
`(("gtk+-3" ,gtk+) ; required by garcon-gtk3-1.pc
("libxfce4ui" ,libxfce4ui))) ; required by garcon-gtk3-1.pc
(home-page "https://www.xfce.org/")
(synopsis "Implementation of the freedesktop.org menu specification")
(description
@ -250,7 +263,7 @@ merging features essential for loading menus modified with menu editors.")
(define-public tumbler
(package
(name "tumbler")
(version "0.2.5")
(version "0.2.7")
(source (origin
(method url-fetch)
(uri (string-append "https://archive.xfce.org/src/xfce/"
@ -258,7 +271,7 @@ merging features essential for loading menus modified with menu editors.")
"tumbler-" version ".tar.bz2"))
(sha256
(base32
"0nfld1lvrdpsjfvm08y5487km45pm1mdr928hgqm8j0shrx6jiv4"))))
"1r0l0ghcrj71ax7yil1m4p7yjrfqm3icx0s8r7ivwv3i2rgw617p"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)
@ -286,7 +299,7 @@ management D-Bus specification.")
(define-public xfce4-panel
(package
(name "xfce4-panel")
(version "4.12.2")
(version "4.14.0")
(source (origin
(method url-fetch)
(uri (string-append "https://archive.xfce.org/src/xfce/"
@ -294,20 +307,32 @@ management D-Bus specification.")
name "-" version ".tar.bz2"))
(sha256
(base32
"1s8cvsrgmkmmm84g6mghpj2k4777gm22g5lrsf8pdy5qh6xql1a2"))
"1x3flv86jh9vqah7mr5mmfx2991mc6icsqjygsc3j88lgsyz7y6m"))
(patches (search-patches "xfce4-panel-plugins.patch"))))
(build-system gnu-build-system)
(arguments
'(#:configure-flags '("--enable-gtk3")))
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'fix-tzdata-path
(lambda* (#:key inputs #:allow-other-keys)
(substitute* (string-append "plugins/clock/clock.c")
(("/usr/share/zoneinfo")
(string-append (assoc-ref inputs "tzdata") "/share/zoneinfo")))
#t)))))
(native-inputs
`(("pkg-config" ,pkg-config)
("intltool" ,intltool)))
("intltool" ,intltool)
("glib:bin" ,glib "bin")))
(propagated-inputs
`(("libxfce4util" ,libxfce4util))) ; required by libxfce4panel-1.0.pc
`(("gtk+-3" ,gtk+) ; required by libxfce4panel-2.0.pc
("libxfce4util" ,libxfce4util))) ; required by libxfce4panel-2.0.pc
(inputs
`(("exo" ,exo)
`(("tzdata" ,tzdata) ;; For fix-tzdata-path phase only.
("exo" ,exo)
("gtk+-2" ,gtk+-2)
("xfconf" ,xfconf)
("garcon" ,garcon)
("libwnck" ,libwnck-2)
("libwnck" ,libwnck)
("libxfce4ui" ,libxfce4ui)))
(native-search-paths
(list (search-path-specification
@ -324,7 +349,7 @@ applications menu, workspace switcher and more.")
(define-public xfce4-battery-plugin
(package
(name "xfce4-battery-plugin")
(version "1.1.2")
(version "1.1.3")
(source (origin
(method url-fetch)
(uri (string-append "https://archive.xfce.org/src/panel-plugins/"
@ -332,12 +357,12 @@ applications menu, workspace switcher and more.")
name "-" version ".tar.bz2"))
(sha256
(base32
"1nypi0zazrcrbbm5vb221yw64zxrk56v4fffkblxlyd9m6gk80fn"))))
"18s0s004nidii8cc3ldp5n3jajc18vwn9vhkhmhy3lbbs520mghj"))))
(build-system gnu-build-system)
(native-inputs `(("pkg-config" ,pkg-config)
("intltool" ,intltool)))
(inputs `(("glib" ,glib)
("gtk+" ,gtk+-2)
("gtk+" ,gtk+)
("libxfce4util" ,libxfce4util)
("libxfce4ui" ,libxfce4ui)
("xfce4-panel" ,xfce4-panel)))
@ -384,7 +409,7 @@ matching them against regular expressions.")
(define-public xfce4-pulseaudio-plugin
(package
(name "xfce4-pulseaudio-plugin")
(version "0.4.1")
(version "0.4.2")
(source (origin
(method url-fetch)
(uri (string-append "https://archive.xfce.org/src/panel-plugins/"
@ -392,11 +417,26 @@ matching them against regular expressions.")
name "-" version ".tar.bz2"))
(sha256
(base32
"1w29y0a066y8as12xrkbfqcn7dpdsvx97idzw7028gmcvca87a3c"))))
"0851b0vs5xmy3cq899khcghmkqwvh9rnzwavi17msrsq4jyaxs2a"))))
(build-system gnu-build-system)
(arguments
`(#:phases
;; For dbus/dbus-glib.h in pulseaudio-config.h
(modify-phases %standard-phases
(add-after 'set-paths 'augment-cflags
(lambda* (#:key inputs #:allow-other-keys)
(setenv "C_INCLUDE_PATH"
(string-append (assoc-ref inputs "dbus-glib")
"/include/dbus-1.0" ":"
(assoc-ref inputs "dbus")
"/include/dbus-1.0" ":"
(getenv "C_INCLUDE_PATH")))
#t)))))
(native-inputs
`(("intltool" ,intltool)
("pkg-config" ,pkg-config)))
("pkg-config" ,pkg-config)
("dbus-glib" ,dbus-glib)
("dbus" ,dbus)))
(inputs
`(("exo" ,exo)
("libnotify" ,libnotify)
@ -415,7 +455,7 @@ keys for controlling the audio volume.")
(define-public xfce4-whiskermenu-plugin
(package
(name "xfce4-whiskermenu-plugin")
(version "2.3.1")
(version "2.3.3")
(source (origin
(method url-fetch)
(uri (string-append "http://archive.xfce.org/src/panel-plugins/"
@ -423,7 +463,7 @@ keys for controlling the audio volume.")
name "-" version ".tar.bz2"))
(sha256
(base32
"1cnas2x7xi53v6ylq44040narhzd828dc0ysz8yk3qn2mmvp5yr2"))))
"0j0qmk372130avq8n07lfqrcm2al7n07l8gc06bbr1g6q57wrip0"))))
(build-system cmake-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)
@ -432,7 +472,8 @@ keys for controlling the audio volume.")
`(("xfce4-panel" ,xfce4-panel)
("garcon" ,garcon)
("exo" ,exo)
("gtk+" ,gtk+-2)))
("gtk+" ,gtk+)
("libxfce4ui" ,libxfce4ui)))
(arguments
`(#:tests? #f)) ; no tests
(home-page "https://goodies.xfce.org/projects/panel-plugins/xfce4-whiskermenu-plugin")
@ -448,7 +489,7 @@ applications, and includes a search bar to search for applications.")
(define-public xfce4-xkb-plugin
(package
(name "xfce4-xkb-plugin")
(version "0.7.1")
(version "0.8.1")
(source (origin
(method url-fetch)
(uri (string-append "http://archive.xfce.org/src/panel-plugins/"
@ -456,7 +497,7 @@ applications, and includes a search bar to search for applications.")
name "-" version ".tar.bz2"))
(sha256
(base32
"10g65j5ia389ahhn3b9hr52ghpp0817fk0m60rfrv4wrzqrjxzk1"))))
"18b7cnaf3zxm598p2i47vim3kbbi8w923ia1hwabdph1c89cz7n1"))))
(build-system gnu-build-system)
(native-inputs
`(("intltool" ,intltool)
@ -464,7 +505,7 @@ applications, and includes a search bar to search for applications.")
(inputs
`(("garcon" ,garcon)
("librsvg" ,librsvg)
("libwnck" ,libwnck-2)
("libwnck" ,libwnck)
("libx11" ,libx11)
("libxfce4ui" ,libxfce4ui)
("libxklavier" ,libxklavier)
@ -486,7 +527,7 @@ per window.")
(define-public xfce4-appfinder
(package
(name "xfce4-appfinder")
(version "4.12.0")
(version "4.14.0")
(source (origin
(method url-fetch)
(uri (string-append "http://archive.xfce.org/xfce/"
@ -494,14 +535,14 @@ per window.")
"/src/" name "-" version ".tar.bz2"))
(sha256
(base32
"0ry5hin8xhgnkmm9vs7jq8blk1cnbyr0s18nm1j6nsm7360abm1a"))))
"162dibl6ipp72x0s35yhk7kkzxd4qimagg5zdkkv5kjgjpa7bhby"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)
("intltool" ,intltool)))
(inputs
`(("garcon" ,garcon)
("gtk+" ,gtk+-2)
("gtk+" ,gtk+)
("libxfce4ui" ,libxfce4ui)))
(home-page "https://www.xfce.org/")
(synopsis "Xfce application finder")
@ -513,7 +554,7 @@ your system in categories, so you can quickly find and launch them.")
(define-public xfce4-session
(package
(name "xfce4-session")
(version "4.12.1")
(version "4.14.0")
(source (origin
(method url-fetch)
(uri (string-append "https://archive.xfce.org/src/xfce/"
@ -521,10 +562,7 @@ your system in categories, so you can quickly find and launch them.")
name "-" version ".tar.bz2"))
(sha256
(base32
"1z88klls3j161n5snpamz4l3p4823q4h87wdnqikczxgs2ig5mwp"))
(patches
;; See: https://bugzilla.xfce.org/show_bug.cgi?id=12282
(search-patches "xfce4-session-fix-xflock4.patch"))
"0gq4a8yiw58hb4d5dhvprxvzamqfg8qblmiqcw0b97mn9svnvyql"))
(modules '((guix build utils)))
(snippet
'(begin
@ -549,7 +587,7 @@ your system in categories, so you can quickly find and launch them.")
("upower" ,upower)
("polkit" ,polkit)
("libsm" ,libsm)
("libwnck" ,libwnck-2)
("libwnck" ,libwnck)
("libxfce4ui" ,libxfce4ui)))
(home-page "https://www.xfce.org/")
(synopsis "Xfce session manager")
@ -561,7 +599,7 @@ allows you to shutdown the computer from Xfce.")
(define-public xfce4-settings
(package
(name "xfce4-settings")
(version "4.12.4")
(version "4.14.0")
(source (origin
(method url-fetch)
(uri (string-append "http://archive.xfce.org/src/xfce/"
@ -569,9 +607,13 @@ allows you to shutdown the computer from Xfce.")
name "-" version ".tar.bz2"))
(sha256
(base32
"16vgidhhc19dz0p0i6fp5iiwxd53ky143j6h14a9b7mz92nlr872"))
"0g0ipkg2fyg8r1z95ynx0xjr78bp49c2dwh4mli05nmb4gb40c70"))
(patches (search-patches "xfce4-settings-defaults.patch"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags '("--enable-pluggable-dialogs"
"--enable-sound-settings"
"--enable-xrandr")))
(native-inputs
`(("pkg-config" ,pkg-config)
("intltool" ,intltool)))
@ -659,7 +701,7 @@ and import the new pictures from your camera.")
(define-public xfwm4
(package
(name "xfwm4")
(version "4.12.5")
(version "4.14.0")
(source (origin
(method url-fetch)
(uri (string-append "https://archive.xfce.org/src/xfce/"
@ -667,14 +709,14 @@ and import the new pictures from your camera.")
name "-" version ".tar.bz2"))
(sha256
(base32
"1jnav0wcqlswl2v7nh61big9czg5hmnyvrvm6812sv362qic0xbp"))))
"05dn4a1i0nm6wm3nyj7qli5bvfalxghcl7x543qr5l33vkw2n65l"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)
("intltool" ,intltool)))
(inputs
`(("libdrm" ,libdrm)
("libwnck" ,libwnck-2)
("libwnck" ,libwnck)
("libxcomposite" ,libxcomposite)
("libxdamage" ,libxdamage)
("libxfce4ui" ,libxfce4ui)
@ -689,7 +731,7 @@ on the screen.")
(define-public xfdesktop
(package
(name "xfdesktop")
(version "4.12.4")
(version "4.14.1")
(source (origin
(method url-fetch)
(uri (string-append "https://archive.xfce.org/src/xfce/"
@ -697,7 +739,7 @@ on the screen.")
name "-" version ".tar.bz2"))
(sha256
(base32
"1jzi851arljq5lza9inyq4ss513l62lbzbfm64a7x4320m8kb2h9"))
"10pqxgpj7b57wpcsh2k98sj4aavcgxbs1lc8qsq4mibf4hba01gp"))
(modules '((guix build utils)))
(snippet
#~(begin
@ -735,7 +777,7 @@ on the screen.")
`(("exo" ,exo)
("garcon" ,garcon)
("libnotify" ,libnotify)
("libwnck" ,libwnck-2)
("libwnck" ,libwnck)
("libxfce4ui" ,libxfce4ui)
("thunar" ,thunar)))
(home-page "https://www.xfce.org/")
@ -749,7 +791,7 @@ devices and folders.")
(define-public xfce4-terminal
(package
(name "xfce4-terminal")
(version "0.8.7.4")
(version "0.8.8")
(source (origin
(method url-fetch)
(uri (string-append "https://archive.xfce.org/src/apps/" name "/"
@ -757,7 +799,7 @@ devices and folders.")
name "-" version ".tar.bz2"))
(sha256
(base32
"1as2dh5ccmv3hdvsbxm4b0xhmv2ky2q18zxxrzr988x79npri3x8"))))
"1zc7hkq77ajia099wxgh4wdvwifcg2zkcz5d2xsf1zm0sdh6mflg"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)
@ -831,7 +873,7 @@ system resources, while still being visually appealing and user friendly.")
(define-public xfce4-power-manager
(package
(name "xfce4-power-manager")
(version "1.6.1")
(version "1.6.5")
(source (origin
(method url-fetch)
(uri (string-append "https://archive.xfce.org/src/xfce/"
@ -839,16 +881,14 @@ system resources, while still being visually appealing and user friendly.")
name "-" version ".tar.bz2"))
(sha256
(base32
"0sv5927q8jxvdfx7b06f8s7qyq3qa1nqn0b8c1b9bf234d2jba0y"))))
"0x3s2bdwfhp65dz5yn3k43j99ywqlsvrpz3pqmgwm0dik5wbdb8h"))))
(build-system gnu-build-system)
(arguments
'(#:configure-flags '("--enable-gtk3")))
(native-inputs
`(("pkg-config" ,pkg-config)
("intltool" ,intltool)))
(inputs
`(("lbxrandr" ,libxrandr)
("gtk+" ,gtk+-2)
`(("libxrandr" ,libxrandr)
("gtk+" ,gtk+)
("upower" ,upower)
("libnotify" ,libnotify)
("libxfce4ui" ,libxfce4ui)))
@ -913,7 +953,7 @@ the desktop wallpaper.")
`(("intltool" ,intltool)
("pkg-config" ,pkg-config)))
(inputs
`(("libwnck" ,libwnck-2)
`(("libwnck" ,libwnck)
("libxmu" ,libxmu)
("gtk+" ,gtk+)
;; FIXME: Remove libxext and libxt when libxmu propagates them.
@ -961,7 +1001,7 @@ several different time zones.")
(define-public xfce4-notifyd
(package
(name "xfce4-notifyd")
(version "0.4.3")
(version "0.4.4")
(source (origin
(method url-fetch)
(uri (string-append "https://archive.xfce.org/src/apps/"
@ -969,7 +1009,7 @@ several different time zones.")
name "-" version ".tar.bz2"))
(sha256
(base32
"1h7avj149cafj9dabiza22y14i66vxgp5qj0wxx8i97w9h4dlg99"))))
"0m8vlbwdxiw9nmimaj5np9l5qm784gxpkdvc881k0hjcz6n72189"))))
(build-system glib-or-gtk-build-system)
(native-inputs
`(("intltool" ,intltool)
@ -1066,3 +1106,83 @@ of data to either CD/DVD/BD.")
(description
"Mousepad is a graphical text editor for Xfce based on Leafpad.")
(license gpl2+)))
(define-public xfce4-screenshooter
(package
(name "xfce4-screenshooter")
(version "1.9.5")
(source (origin
(method url-fetch)
(uri (string-append "http://archive.xfce.org/src/apps/"
"xfce4-screenshooter/"
(version-major+minor version)
"/xfce4-screenshooter-"
version ".tar.bz2"))
(sha256
(base32
"135kad07922jxjs05amn48sdgm2x1rh97wbzdmy9h85r5i1vaddz"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)
("intltool" ,intltool)
("glib:bin" ,glib "bin"))) ; glib-genmarshal
(inputs
`(("exo" ,exo)
("libsoup" ,libsoup)
("libxfce4ui" ,libxfce4ui)
("xfce4-panel" ,xfce4-panel)))
(home-page "https://goodies.xfce.org/projects/applications/xfce4-screenshooter")
(synopsis "Xfce's application to take screenshots")
(description
"This application allows you to capture the entire screen, the active
window or a selected region. You can set the delay that elapses before the screenshot
is taken and the action that will be done with the screenshot.
A plugin for the Xfce panel is also available.")
(license gpl2+)))
(define-public xfce4-screensaver
(package
(name "xfce4-screensaver")
(version "0.1.8")
(source (origin
(method url-fetch)
(uri (string-append "http://archive.xfce.org/src/apps/"
"xfce4-screensaver/"
(version-major+minor version)
"/xfce4-screensaver-"
version ".tar.bz2"))
(sha256
(base32
"1mv0r150yb29kji2rr2462g9p574bqjax1lb6bzcqgpxlmg08mj0"))))
(build-system gnu-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'fix-dbus-1-path
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(dbus-dir (string-append out "/share/dbus-1/services")))
(substitute* "configure"
(("DBUS_SESSION_SERVICE_DIR=.*")
(string-append "DBUS_SESSION_SERVICE_DIR="
dbus-dir)))))))))
(native-inputs
`(("pkg-config" ,pkg-config)
("intltool" ,intltool)
("glib" ,glib) ; glib-compile-schemas
("glib:bin" ,glib "bin"))) ; glib-compile-schemas
(inputs
`(("dbus-glib" ,dbus-glib)
("libux-pam" ,linux-pam)
("elogind" ,elogind)
("garcon" ,garcon)
("libxklavier" ,libxklavier)
("libwnxk" ,libwnck)
("libxscrnsaver" ,libxscrnsaver)
("xfconf" ,xfconf)))
(home-page "https://docs.xfce.org/apps/screensaver/start")
(synopsis "Screensaver for the Xfce desktop")
(description
"Xfce Screensaver is a screen saver and locker that aims to have simple,
sane, secure defaults and be well integrated with the Xfce desktop. ")
(license gpl2+)))

View File

@ -83,6 +83,14 @@
(define (serialize-multiline-string-list field-name val)
(for-each (lambda (str) (serialize-field field-name str)) val))
(define (comma-separated-string-list? val)
(and (list? val)
(and-map (lambda (x)
(and (string? x) (not (string-index x #\,))))
val)))
(define (serialize-comma-separated-string-list field-name val)
(serialize-field field-name (string-join val ",")))
(define (space-separated-string-list? val)
(and (list? val)
(and-map (lambda (x)
@ -131,7 +139,7 @@
(define-enumerated-field-type default-encryption
(Never IfRequested Required))
(define-enumerated-field-type error-policy
(abort-job retry-job retry-this-job stop-printer))
(abort-job retry-job retry-current-job stop-printer))
(define-enumerated-field-type log-level
(none emerg alert crit error warn notice info debug debug2))
(define-enumerated-field-type log-time-format
@ -450,7 +458,10 @@ or state files.")
(user
(string "lp")
"Specifies the user name or ID that is used when running external
programs."))
programs.")
(set-env
(string "variable value")
"Set the specified environment variable to be passed to child processes."))
(define (serialize-files-configuration field-name val)
#f)
@ -489,6 +500,11 @@ requests.")
(boolean #f)
"Specifies whether to purge job history data automatically when it is no
longer required for quotas.")
(browse-dns-sd-sub-types
(comma-separated-string-list (list "_cups"))
"Specifies a list of DNS-SD sub-types to advertise for each shared printer.
For example, @samp{\"_cups\" \"_print\"} will tell network clients that both
CUPS sharing and IPP Everywhere are supported.")
(browse-local-protocols
(browse-local-protocols 'dnssd)
"Specifies which protocols to use for local printer sharing.")
@ -538,7 +554,7 @@ typically within a few milliseconds.")
(error-policy 'stop-printer)
"Specifies what to do when an error occurs. Possible values are
@code{abort-job}, which will discard the failed print job; @code{retry-job},
which will retry the job at a later time; @code{retry-this-job}, which retries
which will retry the job at a later time; @code{retry-current-job}, which retries
the failed job immediately; and @code{stop-printer}, which stops the
printer.")
(filter-limit
@ -798,9 +814,6 @@ reports @code{CUPS 2.0}. @code{Minimal} reports @code{CUPS 2.0.0}. @code{OS}
reports @code{CUPS 2.0.0 (@var{uname})} where @var{uname} is the output of the
@code{uname} command. @code{Full} reports @code{CUPS 2.0.0 (@var{uname})
IPP/2.0}.")
(set-env
(string "variable value")
"Set the specified environment variable to be passed to child processes.")
(ssl-listen
(multiline-string-list '())
"Listens on the specified interfaces for encrypted connections. Valid

View File

@ -682,7 +682,8 @@ of index files."
(system* (string-append #$nginx "/sbin/nginx")
"-c" #$(or file
(default-nginx-config config))
"-t"))))
"-p" #$run-directory
"-t"))))
(define (nginx-shepherd-service config)
(match-record config

View File

@ -116,6 +116,7 @@
boot-parameters-label
boot-parameters-root-device
boot-parameters-bootloader-name
boot-parameters-bootloader-menu-entries
boot-parameters-store-device
boot-parameters-store-mount-point
boot-parameters-kernel
@ -251,6 +252,8 @@ directly by the user."
;; OS's root file system, so it might be a device path like "/dev/sda3".
(root-device boot-parameters-root-device)
(bootloader-name boot-parameters-bootloader-name)
(bootloader-menu-entries ;list of <menu-entry>
boot-parameters-bootloader-menu-entries)
(store-device boot-parameters-store-device)
(store-mount-point boot-parameters-store-mount-point)
(kernel boot-parameters-kernel)
@ -297,6 +300,11 @@ file system labels."
((_ args) args)
(#f 'grub))) ; for compatibility reasons.
(bootloader-menu-entries
(match (assq 'bootloader-menu-entries rest)
((_ entries) (map sexp->menu-entry entries))
(#f '())))
;; In the past, we would store the directory name of the kernel instead
;; of the absolute file name of its image. Detect that and correct it.
(kernel (if (string=? linux (direct-store-path linux))
@ -1009,6 +1017,8 @@ such as '--root' and '--load' to <boot-parameters>."
(operating-system-user-kernel-arguments os)))
(initrd initrd)
(bootloader-name bootloader-name)
(bootloader-menu-entries
(bootloader-configuration-menu-entries (operating-system-bootloader os)))
(store-device (ensure-not-/dev (file-system-device store)))
(store-mount-point (file-system-mount-point store)))))
@ -1050,6 +1060,11 @@ being stored into the \"parameters\" file)."
#$(boot-parameters-kernel-arguments params))
(initrd #$(boot-parameters-initrd params))
(bootloader-name #$(boot-parameters-bootloader-name params))
(bootloader-menu-entries
#$(map menu-entry->sexp
(or (and=> (operating-system-bootloader os)
bootloader-configuration-menu-entries)
'())))
(store
(device
#$(device->sexp (boot-parameters-store-device params)))

View File

@ -99,7 +99,7 @@ the derivations referenced by EXP are automatically copied to the initrd."
#:init #$init
;; Copy everything INIT refers to into the initrd.
#:references-graphs '("closure")
#:gzip (string-append #$gzip "/bin/gzip")))))
#:gzip (string-append #+gzip "/bin/gzip")))))
(file-append (computed-file name builder
#:options

View File

@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013, 2014, 2015, 2016 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2013, 2014, 2015, 2016, 2019 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2013 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2013 Nikita Karetnikov <nikita@karetnikov.org>
;;; Copyright © 2016 David Craven <david@craven.ch>
@ -35,12 +35,17 @@
#:export (%cargo-build-system-modules
%cargo-utils-modules
cargo-build-system
%crate-base-url
crate-url
crate-url?
crate-uri))
(define crate-url "https://crates.io/api/v1/crates/")
(define crate-url? (cut string-prefix? crate-url <>))
(define %crate-base-url
(make-parameter "https://crates.io"))
(define crate-url
(string-append (%crate-base-url) "/api/v1/crates/"))
(define crate-url?
(cut string-prefix? crate-url <>))
(define (crate-uri name version)
"Return a URI string for the crate package hosted at crates.io corresponding

130
guix/build-system/julia.scm Normal file
View File

@ -0,0 +1,130 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2019 Nicolò Balzarotti <nicolo@nixo.xyz>
;;;
;;; 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 (guix build-system julia)
#:use-module (guix store)
#:use-module (guix utils)
#:use-module (guix packages)
#:use-module (guix derivations)
#:use-module (guix search-paths)
#:use-module (guix build-system)
#:use-module (guix build-system gnu)
#:use-module (ice-9 match)
#:use-module (srfi srfi-26)
#:export (%julia-build-system-modules
julia-build
julia-build-system))
;; Commentary:
;;
;; Standard build procedure for Julia packages.
;;
;; Code:
(define %julia-build-system-modules
;; Build-side modules imported by default.
`((guix build julia-build-system)
,@%gnu-build-system-modules))
(define (default-julia)
"Return the default Julia package."
;; Lazily resolve the binding to avoid a circular dependency.
(let ((julia-mod (resolve-interface '(gnu packages julia))))
(module-ref julia-mod 'julia)))
(define* (lower name
#:key source inputs native-inputs outputs system target
(julia (default-julia))
#:allow-other-keys
#:rest arguments)
"Return a bag for NAME."
(define private-keywords
'(#:target #:julia #:inputs #:native-inputs))
(and (not target) ;XXX: no cross-compilation
(bag
(name name)
(system system)
(host-inputs `(,@(if source
`(("source" ,source))
'())
,@inputs
;; Keep the standard inputs of 'gnu-build-system'.
,@(standard-packages)))
(build-inputs `(("julia" ,julia)
,@native-inputs))
(outputs outputs)
(build julia-build)
(arguments (strip-keyword-arguments private-keywords arguments)))))
(define* (julia-build store name inputs
#:key source
(tests? #f)
(phases '(@ (guix build julia-build-system)
%standard-phases))
(outputs '("out"))
(search-paths '())
(system (%current-system))
(guile #f)
(imported-modules %julia-build-system-modules)
(modules '((guix build julia-build-system)
(guix build utils))))
"Build SOURCE using Julia, and with INPUTS."
(define builder
`(begin
(use-modules ,@modules)
(julia-build #:name ,name
#:source ,(match (assoc-ref inputs "source")
(((? derivation? source))
(derivation->output-path source))
((source)
source)
(source
source))
#:system ,system
#:tests? ,tests?
#:phases ,phases
#:outputs %outputs
#:search-paths ',(map search-path-specification->sexp
search-paths)
#:inputs %build-inputs)))
(define guile-for-build
(match guile
((? package?)
(package-derivation store guile system #:graft? #f))
(#f ; the default
(let* ((distro (resolve-interface '(gnu packages commencement)))
(guile (module-ref distro 'guile-final)))
(package-derivation store guile system #:graft? #f)))))
(build-expression->derivation store name builder
#:inputs inputs
#:system system
#:modules imported-modules
#:outputs outputs
#:guile-for-build guile-for-build))
(define julia-build-system
(build-system
(name 'julia)
(description "The build system for Julia packages")
(lower lower)))
;;; julia.scm ends here

View File

@ -81,10 +81,10 @@ Cargo.toml file present at its root."
;; archive, but not nested anywhere else). We do this by cutting up
;; each output line and only looking at the second component. We then
;; check if it matches Cargo.toml exactly and short circuit if it does.
(zero? (apply system* (list "sh" "-c"
(string-append "tar -tf " path
" | cut -d/ -f2"
" | grep -q '^Cargo.toml$'"))))))
(apply invoke (list "sh" "-c"
(string-append "tar -tf " path
" | cut -d/ -f2"
" | grep -q '^Cargo.toml$'")))))
(define* (configure #:key inputs
(vendor-dir "guix-vendor")
@ -157,7 +157,7 @@ directory = '" port)
#:allow-other-keys)
"Build a given Cargo package."
(or skip-build?
(zero? (apply system* `("cargo" "build" ,@cargo-build-flags)))))
(apply invoke `("cargo" "build" ,@cargo-build-flags))))
(define* (check #:key
tests?
@ -165,7 +165,7 @@ directory = '" port)
#:allow-other-keys)
"Run tests for a given Cargo package."
(if tests?
(zero? (apply system* `("cargo" "test" ,@cargo-test-flags)))
(apply invoke `("cargo" "test" ,@cargo-test-flags))
#t))
(define (touch file-name)
@ -184,7 +184,7 @@ directory = '" port)
;; otherwise cargo will raise an error.
(or skip-build?
(not (has-executable-target?))
(zero? (system* "cargo" "install" "--path" "." "--root" out)))))
(invoke "cargo" "install" "--path" "." "--root" out))))
(define %standard-phases
(modify-phases gnu:%standard-phases

View File

@ -0,0 +1,135 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2019 Nicolò Balzarotti <nicolo@nixo.xyz>
;;;
;;; 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 (guix build julia-build-system)
#:use-module ((guix build gnu-build-system) #:prefix gnu:)
#:use-module (guix build utils)
#:use-module (ice-9 match)
#:export (%standard-phases
julia-create-package-toml
julia-build))
;; Commentary:
;;
;; Builder-side code of the standard build procedure for Julia packages.
;;
;; Code:
(define (invoke-julia code)
(invoke "julia" "-e" code))
;; subpath where we store the package content
(define %package-path "/share/julia/packages/")
(define (generate-load-path inputs outputs)
(string-append
(string-join (map (match-lambda
((_ . path)
(string-append path %package-path)))
;; Restrict to inputs beginning with "julia-".
(filter (match-lambda
((name . _)
(string-prefix? "julia-" name)))
inputs))
":")
(string-append ":" (assoc-ref outputs "out") %package-path)
;; stdlib is always required to find Julia's standard libraries.
;; usually there are other two paths in this variable:
;; "@" and "@v#.#"
":@stdlib"))
(define* (install #:key source inputs outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(package-dir (string-append out %package-path
(string-append
(strip-store-file-name source)))))
(setenv "JULIA_LOAD_PATH" (generate-load-path inputs outputs))
(mkdir-p package-dir)
(copy-recursively source package-dir))
#t)
;; TODO: Precompilation is working, but I don't know how to tell
;; julia to use use it. If (on rantime) we set HOME to
;; store path, julia tries to write files there (failing)
(define* (precompile #:key source inputs outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(builddir (string-append out "/share/julia/"))
(package (strip-store-file-name source)))
(mkdir-p builddir)
(setenv "JULIA_DEPOT_PATH" builddir)
(setenv "JULIA_LOAD_PATH" (generate-load-path inputs outputs))
;; Actual precompilation
(invoke-julia (string-append "using " package)))
#t)
(define* (check #:key source inputs outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(package (strip-store-file-name source))
(builddir (string-append out "/share/julia/")))
(setenv "JULIA_DEPOT_PATH" builddir)
(setenv "JULIA_LOAD_PATH" (generate-load-path inputs outputs))
(invoke-julia (string-append "using Pkg;Pkg.test(\"" package "\")")))
#t)
(define (julia-create-package-toml outputs source
name uuid version
deps)
"Some packages are not using the new Package.toml dependency specifications.
Write this file manually, so that Julia can find its dependencies."
(let ((f (open-file
(string-append
(assoc-ref outputs "out")
%package-path
(string-append
name "/Project.toml"))
"w")))
(display (string-append
"
name = \"" name "\"
uuid = \"" uuid "\"
version = \"" version "\"
") f)
(when (not (null? deps))
(display "[deps]\n" f)
(for-each (lambda dep
(display (string-append (car (car dep)) " = \"" (cdr (car dep)) "\"\n")
f))
deps))
(close-port f))
#t)
(define %standard-phases
(modify-phases gnu:%standard-phases
(delete 'check) ; tests must be run after installation
(replace 'install install)
(add-after 'install 'precompile precompile)
;; (add-after 'install 'check check)
;; TODO: In the future we could add a "system-image-generation" phase
;; where we use PackageCompiler.jl to speed up package loading times
(delete 'configure)
(delete 'bootstrap)
(delete 'patch-usr-bin-file)
(delete 'build)))
(define* (julia-build #:key inputs (phases %standard-phases)
#:allow-other-keys #:rest args)
"Build the given Julia package, applying all of PHASES in order."
(apply gnu:gnu-build
#:inputs inputs #:phases phases
args))

View File

@ -220,12 +220,19 @@ Also load TEST-ASD-FILE if necessary."
"Return a lisp keyword for the concatenation of STRINGS."
(string->symbol (apply string-append ":" strings)))
(define (generate-executable-for-system type system)
(define* (generate-executable-for-system type system #:key compress?)
"Use LISP to generate an executable, whose TYPE can be 'asdf:image-op or
'asdf:program-op. The latter will always be standalone. Depends on having
created a \"SYSTEM-exec\" system which contains the entry program."
(lisp-eval-program
`((require :asdf)
;; Only SBCL supports compression as of 2019-09-02.
,(if (and compress? (string=? (%lisp-type) "sbcl"))
'(defmethod asdf:perform ((o asdf:image-op) (c asdf:system))
(uiop:dump-image (asdf:output-file o c)
:executable t
:compression t))
'())
(asdf:operate ',type ,(string-append system "-exec")))))
(define (generate-executable-wrapper-system system dependencies)
@ -339,6 +346,7 @@ which are not nested."
(dependency-prefixes (list (library-output outputs)))
(dependencies (list (basename program)))
entry-program
compress?
#:allow-other-keys)
"Generate an executable program containing all DEPENDENCIES, and which will
execute ENTRY-PROGRAM. The result is placed in PROGRAM. When executed, it
@ -350,6 +358,7 @@ retained."
#:dependencies dependencies
#:dependency-prefixes dependency-prefixes
#:entry-program entry-program
#:compress? compress?
#:type 'asdf:program-op)
(let* ((name (basename program))
(bin-directory (dirname program)))
@ -382,6 +391,7 @@ DEPENDENCY-PREFIXES to ensure references to those libraries are retained."
dependency-prefixes
entry-program
type
compress?
#:allow-other-keys)
"Generate an executable by using asdf operation TYPE, containing whithin the
image all DEPENDENCIES, and running ENTRY-PROGRAM in the case of an
@ -405,7 +415,7 @@ references to those libraries are retained."
`(((,bin-directory :**/ :*.*.*)
(,bin-directory :**/ :*.*.*)))))))
(generate-executable-for-system type name)
(generate-executable-for-system type name #:compress? compress?)
(let* ((after-store-prefix-index
(string-index out-file #\/

View File

@ -75,6 +75,9 @@ HASH-ALGO (a symbol). Use NAME as the file name, or a generic name if #f."
#:env-vars
`(("bzr url" . ,(bzr-reference-url ref))
("bzr reference" . ,(bzr-reference-revision ref)))
#:leaked-env-vars '("http_proxy" "https_proxy"
"LC_ALL" "LC_MESSAGES" "LANG"
"COLUMNS")
#:system system
#:local-build? #t ;don't offload repo branching
#:hash-algo hash-algo

View File

@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2018 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2018, 2019 Ludovic Courtès <ludo@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@ -18,9 +18,10 @@
(define-module (guix ci)
#:use-module (guix http-client)
#:autoload (json parser) (json->scm)
#:use-module (guix json)
#:use-module (json)
#:use-module (srfi srfi-1)
#:use-module (srfi srfi-9)
#:use-module (ice-9 match)
#:export (build?
build-id
build-derivation
@ -42,7 +43,7 @@
queued-builds
latest-builds
latest-evaluations
evaluation-for-commit))
evaluations-for-commit))
;;; Commentary:
;;;
@ -51,28 +52,31 @@
;;;
;;; Code:
(define-record-type <build>
(make-build id derivation system status timestamp)
build?
(id build-id) ;integer
(define-json-mapping <build> make-build build?
json->build
(id build-id "id") ;integer
(derivation build-derivation) ;string | #f
(system build-system) ;string
(status build-status) ;integer
(status build-status "buildstatus" ) ;integer
(timestamp build-timestamp)) ;integer
(define-record-type <checkout>
(make-checkout commit input)
checkout?
(define-json-mapping <checkout> make-checkout checkout?
json->checkout
(commit checkout-commit) ;string (SHA1)
(input checkout-input)) ;string (name)
(define-record-type <evaluation>
(make-evaluation id spec complete? checkouts)
evaluation?
(define-json-mapping <evaluation> make-evaluation evaluation?
json->evaluation
(id evaluation-id) ;integer
(spec evaluation-spec) ;string
(complete? evaluation-complete?) ;Boolean
(checkouts evaluation-checkouts)) ;<checkout>*
(complete? evaluation-complete? "in-progress"
(match-lambda
(0 #t)
(_ #f))) ;Boolean
(checkouts evaluation-checkouts "checkouts" ;<checkout>*
(lambda (checkouts)
(map json->checkout
(vector->list checkouts)))))
(define %query-limit
;; Max number of builds requested in queries.
@ -84,18 +88,11 @@
(close-port port)
json))
(define (json->build json)
(make-build (hash-ref json "id")
(hash-ref json "derivation")
(hash-ref json "system")
(hash-ref json "buildstatus")
(hash-ref json "timestamp")))
(define* (queued-builds url #:optional (limit %query-limit))
"Return the list of queued derivations on URL."
(let ((queue (json-fetch (string-append url "/api/queue?nr="
(number->string limit)))))
(map json->build queue)))
(map json->build (vector->list queue))))
(define* (latest-builds url #:optional (limit %query-limit)
#:key evaluation system)
@ -114,26 +111,15 @@ string such as \"x86_64-linux\"), restrict to builds for SYSTEM."
(option "system" system)))))
;; Note: Hydra does not provide a "derivation" field for entries in
;; 'latestbuilds', but Cuirass does.
(map json->build latest)))
(define (json->checkout json)
(make-checkout (hash-ref json "commit")
(hash-ref json "input")))
(define (json->evaluation json)
(make-evaluation (hash-ref json "id")
(hash-ref json "specification")
(case (hash-ref json "in-progress")
((0) #t)
(else #f))
(map json->checkout (hash-ref json "checkouts"))))
(map json->build (vector->list latest))))
(define* (latest-evaluations url #:optional (limit %query-limit))
"Return the latest evaluations performed by the CI server at URL."
(map json->evaluation
(json->scm
(http-fetch (string-append url "/api/evaluations?nr="
(number->string limit))))))
(vector->list
(json->scm
(http-fetch (string-append url "/api/evaluations?nr="
(number->string limit)))))))
(define* (evaluations-for-commit url commit #:optional (limit %query-limit))

View File

@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2014, 2015, 2016, 2017 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2014, 2015, 2016, 2017, 2019 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2014 Sree Harsha Totakura <sreeharsha@totakura.in>
;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
;;;
@ -92,6 +92,9 @@ HASH-ALGO (a symbol). Use NAME as the file name, or a generic name if #f."
(mlet %store-monad ((guile (package->derivation guile system)))
(gexp->derivation (or name "cvs-checkout") build
#:leaked-env-vars '("http_proxy" "https_proxy"
"LC_ALL" "LC_MESSAGES" "LANG"
"COLUMNS")
#:system system
#:hash-algo hash-algo
#:hash hash

View File

@ -157,6 +157,9 @@ HASH-ALGO (a symbol). Use NAME as the file name, or a generic name if #f."
("git commit" . ,(git-reference-commit ref))
("git recursive?" . ,(object->string
(git-reference-recursive? ref))))
#:leaked-env-vars '("http_proxy" "https_proxy"
"LC_ALL" "LC_MESSAGES" "LANG"
"COLUMNS")
#:system system
#:local-build? #t ;don't offload repo cloning

View File

@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2014, 2015, 2016, 2017 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2014, 2015, 2016, 2017, 2019 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2016 Ricardo Wurmus <rekado@elephly.net>
;;;
;;; This file is part of GNU Guix.
@ -92,6 +92,9 @@ HASH-ALGO (a symbol). Use NAME as the file name, or a generic name if #f."
(mlet %store-monad ((guile (package->derivation guile system)))
(gexp->derivation (or name "hg-checkout") build
#:leaked-env-vars '("http_proxy" "https_proxy"
"LC_ALL" "LC_MESSAGES" "LANG"
"COLUMNS")
#:system system
#:local-build? #t ;don't offload repo cloning
#:hash-algo hash-algo

View File

@ -230,16 +230,17 @@ from ~s: ~a (~s)~%"
(if (boolean? type) meta
(cons `(bioconductor-type . ,type) meta))))))))))
((git)
;; Download the git repository at "NAME"
(call-with-values
(lambda () (download name #t))
(lambda (dir commit)
(and=> (description->alist (with-input-from-file
(string-append dir "/DESCRIPTION") read-string))
(lambda (meta)
(cons* `(git . ,name)
`(git-commit . ,commit)
meta))))))))
(and (string-prefix? "http" name)
;; Download the git repository at "NAME"
(call-with-values
(lambda () (download name #t))
(lambda (dir commit)
(and=> (description->alist (with-input-from-file
(string-append dir "/DESCRIPTION") read-string))
(lambda (meta)
(cons* `(git . ,name)
`(git-commit . ,commit)
meta)))))))))
(define (listify meta field)
"Look up FIELD in the alist META. If FIELD contains a comma-separated
@ -494,12 +495,16 @@ from the alist META, which was derived from the R package's DESCRIPTION file."
"Fetch the metadata for PACKAGE-NAME from REPO and return the `package'
s-expression corresponding to that package, or #f on failure."
(let ((description (fetch-description repo package-name)))
(if (and (not description)
(eq? repo 'bioconductor))
;; Retry import from CRAN
(cran->guix-package package-name 'cran)
(and description
(description->package repo description)))))))
(if description
(description->package repo description)
(case repo
((git)
;; Retry import from Bioconductor
(cran->guix-package package-name 'bioconductor))
((bioconductor)
;; Retry import from CRAN
(cran->guix-package package-name 'cran))
(else #f)))))))
(define* (cran-recursive-import package-name #:optional (repo 'cran))
(recursive-import package-name repo

View File

@ -1,5 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2016 David Craven <david@craven.ch>
;;; Copyright © 2019 Ludovic Courtès <ludo@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@ -22,6 +23,7 @@
#:use-module ((guix download) #:prefix download:)
#:use-module (gcrypt hash)
#:use-module (guix http-client)
#:use-module (guix json)
#:use-module (guix import json)
#:use-module (guix import utils)
#:use-module ((guix licenses) #:prefix license:)
@ -30,7 +32,7 @@
#:use-module (guix upstream)
#:use-module (guix utils)
#:use-module (ice-9 match)
#:use-module (ice-9 pretty-print) ; recursive
#:use-module (ice-9 regex)
#:use-module (json)
#:use-module (srfi srfi-1)
#:use-module (srfi srfi-2)
@ -39,46 +41,82 @@
guix-package->crate-name
%crate-updater))
(define (crate-fetch crate-name callback)
"Fetch the metadata for CRATE-NAME from crates.io and call the callback."
;;;
;;; Interface to https://crates.io/api/v1.
;;;
(define (crates->inputs crates)
(sort (map (cut assoc-ref <> "crate_id") crates) string-ci<?))
;; Crates. A crate is essentially a "package". It can have several
;; "versions", each of which has its own set of dependencies, license,
;; etc.--see <crate-version> below.
(define-json-mapping <crate> make-crate crate?
json->crate
(name crate-name) ;string
(latest-version crate-latest-version "max_version") ;string
(home-page crate-home-page "homepage") ;string | #nil
(repository crate-repository) ;string
(description crate-description) ;string
(keywords crate-keywords ;list of strings
"keywords" vector->list)
(categories crate-categories ;list of strings
"categories" vector->list)
(versions crate-versions "actual_versions" ;list of <crate-version>
(lambda (vector)
(map json->crate-version
(vector->list vector))))
(links crate-links)) ;alist
(define (string->license string)
(map spdx-string->license (string-split string #\/)))
;; Crate version.
(define-json-mapping <crate-version> make-crate-version crate-version?
json->crate-version
(id crate-version-id) ;integer
(number crate-version-number "num") ;string
(download-path crate-version-download-path "dl_path") ;string
(readme-path crate-version-readme-path "readme_path") ;string
(license crate-version-license "license") ;string
(links crate-version-links)) ;alist
(define (crate-kind-predicate kind)
(lambda (dep) (string=? (assoc-ref dep "kind") kind)))
;; Crate dependency. Each dependency (each edge in the graph) is annotated as
;; being a "normal" dependency or a development dependency. There also
;; information about the minimum required version, such as "^0.0.41".
(define-json-mapping <crate-dependency> make-crate-dependency
crate-dependency?
json->crate-dependency
(id crate-dependency-id "crate_id") ;string
(kind crate-dependency-kind "kind" ;'normal | 'dev
string->symbol)
(requirement crate-dependency-requirement "req")) ;string
(and-let* ((crate-json (json-fetch (string-append crate-url crate-name)))
(crate (assoc-ref crate-json "crate"))
(name (assoc-ref crate "name"))
(version (assoc-ref crate "max_version"))
(homepage (assoc-ref crate "homepage"))
(repository (assoc-ref crate "repository"))
(synopsis (assoc-ref crate "description"))
(description (assoc-ref crate "description"))
(license (or (and=> (assoc-ref crate "license")
string->license)
'())) ;missing license info
(path (string-append "/" version "/dependencies"))
(deps-json (json-fetch (string-append crate-url name path)))
(deps (vector->list (assoc-ref deps-json "dependencies")))
(dep-crates (filter (crate-kind-predicate "normal") deps))
(dev-dep-crates
(filter (lambda (dep)
(not ((crate-kind-predicate "normal") dep))) deps))
(cargo-inputs (crates->inputs dep-crates))
(cargo-development-inputs (crates->inputs dev-dep-crates))
(home-page (match homepage
(() repository)
(_ homepage))))
(callback #:name name #:version version
#:cargo-inputs cargo-inputs
#:cargo-development-inputs cargo-development-inputs
#:home-page home-page #:synopsis synopsis
#:description description #:license license)))
(define (lookup-crate name)
"Look up NAME on https://crates.io and return the corresopnding <crate>
record or #f if it was not found."
(let ((json (json-fetch (string-append (%crate-base-url) "/api/v1/crates/"
name))))
(and=> (and json (assoc-ref json "crate"))
(lambda (alist)
;; The "versions" field of ALIST is simply a list of version IDs
;; (integers). Here, we squeeze in the actual version
;; dictionaries that are not part of ALIST but are just more
;; convenient handled this way.
(let ((versions (or (assoc-ref json "versions") '#())))
(json->crate `(,@alist
("actual_versions" . ,versions))))))))
(define (crate-version-dependencies version)
"Return the list of <crate-dependency> records of VERSION, a
<crate-version>."
(let* ((path (assoc-ref (crate-version-links version) "dependencies"))
(url (string-append (%crate-base-url) path)))
(match (assoc-ref (or (json-fetch url) '()) "dependencies")
((? vector? vector)
(map json->crate-dependency (vector->list vector)))
(_
'()))))
;;;
;;; Converting crates to Guix packages.
;;;
(define (maybe-cargo-inputs package-names)
(match (package-names->package-inputs package-names)
@ -138,10 +176,49 @@ and LICENSE."
(close-port port)
pkg))
(define %dual-license-rx
;; Dual licensing is represented by a string such as "MIT OR Apache-2.0".
;; This regexp matches that.
(make-regexp "^(.*) OR (.*)$"))
(define (crate->guix-package crate-name)
"Fetch the metadata for CRATE-NAME from crates.io, and return the
`package' s-expression corresponding to that package, or #f on failure."
(crate-fetch crate-name make-crate-sexp))
(define (string->license string)
(match (regexp-exec %dual-license-rx string)
(#f (list (spdx-string->license string)))
(m (list (spdx-string->license (match:substring m 1))
(spdx-string->license (match:substring m 2))))))
(define (normal-dependency? dependency)
(eq? (crate-dependency-kind dependency) 'normal))
(define crate
(lookup-crate crate-name))
(and crate
(let* ((version (find (lambda (version)
(string=? (crate-version-number version)
(crate-latest-version crate)))
(crate-versions crate)))
(dependencies (crate-version-dependencies version))
(dep-crates (filter normal-dependency? dependencies))
(dev-dep-crates (remove normal-dependency? dependencies))
(cargo-inputs (sort (map crate-dependency-id dep-crates)
string-ci<?))
(cargo-development-inputs
(sort (map crate-dependency-id dev-dep-crates)
string-ci<?)))
(make-crate-sexp #:name crate-name
#:version (crate-version-number version)
#:cargo-inputs cargo-inputs
#:cargo-development-inputs cargo-development-inputs
#:home-page (or (crate-home-page crate)
(crate-repository crate))
#:synopsis (crate-description crate)
#:description (crate-description crate)
#:license (and=> (crate-version-license version)
string->license)))))
(define (guix-package->crate-name package)
"Return the crate name of PACKAGE."
@ -157,6 +234,7 @@ and LICENSE."
(define (crate-name->package-name name)
(string-append "rust-" (string-join (string-split name #\_) "-")))
;;;
;;; Updater
;;;
@ -175,9 +253,9 @@ and LICENSE."
(define (latest-release package)
"Return an <upstream-source> for the latest release of PACKAGE."
(let* ((crate-name (guix-package->crate-name package))
(callback (lambda* (#:key version #:allow-other-keys) version))
(version (crate-fetch crate-name callback))
(url (crate-uri crate-name version)))
(crate (lookup-crate crate-name))
(version (crate-latest-version crate))
(url (crate-uri crate-name version)))
(upstream-source
(package (package-name package))
(version version)

View File

@ -238,7 +238,9 @@ path to the repository."
(version (find-latest-version name repository))
(file (string-append repository "/packages/" name "/" name "." version "/opam")))
`(("metadata" ,@(get-metadata file))
("version" . ,version))))
("version" . ,(if (string-prefix? "v" version)
(substring version 1)
version)))))
(define (opam->guix-package name)
(and-let* ((opam-file (opam-fetch name))
@ -283,7 +285,7 @@ path to the repository."
'ocaml-build-system))
,@(if (null? inputs)
'()
`((inputs ,(list 'quasiquote inputs))))
`((propagated-inputs ,(list 'quasiquote inputs))))
,@(if (null? native-inputs)
'()
`((native-inputs ,(list 'quasiquote native-inputs))))

62
guix/json.scm Normal file
View File

@ -0,0 +1,62 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2018, 2019 Ludovic Courtès <ludo@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 (guix json)
#:use-module (json)
#:use-module (srfi srfi-9)
#:export (define-json-mapping))
;;; Commentary:
;;;
;;; Helpers to map JSON objects to SRFI-9 records. Taken from (guix swh).
;;;
;;; Code:
(define-syntax-rule (define-json-reader json->record ctor spec ...)
"Define JSON->RECORD as a procedure that converts a JSON representation,
read from a port, string, or hash table, into a record created by CTOR and
following SPEC, a series of field specifications."
(define (json->record input)
(let ((table (cond ((port? input)
(json->scm input))
((string? input)
(json-string->scm input))
((or (null? input) (pair? input))
input))))
(let-syntax ((extract-field (syntax-rules ()
((_ table (field key json->value))
(json->value (assoc-ref table key)))
((_ table (field key))
(assoc-ref table key))
((_ table (field))
(assoc-ref table
(symbol->string 'field))))))
(ctor (extract-field table spec) ...)))))
(define-syntax-rule (define-json-mapping rtd ctor pred json->record
(field getter spec ...) ...)
"Define RTD as a record type with the given FIELDs and GETTERs, à la SRFI-9,
and define JSON->RECORD as a conversion from JSON to a record of this type."
(begin
(define-record-type rtd
(ctor field ...)
pred
(field getter) ...)
(define-json-reader json->record ctor
(field spec ...) ...)))

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