3
5
Fork 0
mirror of git://git.savannah.gnu.org/guix.git synced 2023-12-14 03:33:07 +01:00

Merge branch 'master' into core-updates

This commit is contained in:
Ricardo Wurmus 2018-06-29 22:51:23 +02:00
commit f1728d4346
No known key found for this signature in database
GPG key ID: 197A5888235FACAC
272 changed files with 49288 additions and 40175 deletions

2
.gitignore vendored
View file

@ -69,7 +69,6 @@
/etc/guix-publish.conf
/etc/guix-publish.service
/guix-daemon
/guix-register
/guix/config.scm
/libformat.a
/libstore.a
@ -147,3 +146,4 @@ tmp
/nix/scripts/download
/etc/indent-code.el
/.version
/doc/stamp-[0-9]

View file

@ -11,6 +11,7 @@
# Copyright © 2017 Arun Isaac <arunisaac@systemreboot.net>
# Copyright © 2018 Nils Gillmann <ng0@n0.is>
# Copyright © 2018 Julien Lepiller <julien@lepiller.eu>
# Copyright © 2018 Oleg Pykhalov <go.wigust@gmail.com>
#
# This file is part of GNU Guix.
#
@ -262,11 +263,7 @@ STORE_MODULES = \
guix/store/database.scm \
guix/store/deduplication.scm
if HAVE_GUILE_SQLITE3
MODULES += $(STORE_MODULES)
else
MODULES_NOT_COMPILED += $(STORE_MODULES)
endif !HAVE_GUILE_SQLITE3
# Internal modules with test suite support.
dist_noinst_DATA = guix/tests.scm guix/tests/http.scm
@ -300,6 +297,7 @@ EXAMPLES = \
GOBJECTS = $(MODULES:%.scm=%.go) guix/config.go $(dist_noinst_DATA:%.scm=%.go)
nobase_dist_guilemodule_DATA = \
guix/store/schema.sql \
$(MODULES) $(MODULES_NOT_COMPILED) $(AUX_FILES) $(EXAMPLES) \
$(MISC_DISTRO_FILES)
nobase_nodist_guilemodule_DATA = guix/config.scm
@ -378,7 +376,9 @@ SCM_TESTS = \
tests/scripts-build.scm \
tests/containers.scm \
tests/pack.scm \
tests/import-utils.scm
tests/import-utils.scm \
tests/store-database.scm \
tests/store-deduplication.scm
if HAVE_GUILE_JSON
@ -390,14 +390,6 @@ SCM_TESTS += \
endif
if HAVE_GUILE_SQLITE3
SCM_TESTS += \
tests/store-database.scm \
tests/store-deduplication.scm
endif
SH_TESTS = \
tests/guix-build.sh \
tests/guix-download.sh \
@ -414,13 +406,6 @@ SH_TESTS = \
tests/guix-graph.sh \
tests/guix-lint.sh
if BUILD_DAEMON
SH_TESTS += tests/guix-register.sh
endif BUILD_DAEMON
TESTS = $(SCM_TESTS) $(SH_TESTS)
AM_TESTS_ENVIRONMENT = abs_top_srcdir="$(abs_top_srcdir)" GUILE_AUTO_COMPILE=0
@ -470,7 +455,8 @@ dist_pkgdata_DATA = \
berlin.guixsd.org.pub
# Bash completion file.
dist_bashcompletion_DATA = etc/completion/bash/guix
dist_bashcompletion_DATA = etc/completion/bash/guix \
etc/completion/bash/guix-daemon
# Zsh completion file.
dist_zshcompletion_DATA = etc/completion/zsh/_guix

26
NEWS
View file

@ -2,7 +2,7 @@
#+TITLE: Guix NEWS history of user-visible changes
#+STARTUP: content hidestars
Copyright © 2013, 2014, 2015, 2016, 2017 Ludovic Courtès <ludo@gnu.org>
Copyright © 2013, 2014, 2015, 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
Copying and distribution of this file, with or without modification,
are permitted in any medium without royalty provided the copyright
@ -14,19 +14,39 @@ Please send Guix bug reports to bug-guix@gnu.org.
** Package management
*** guix pull has been overhauled; it now populates ~/.config/guix/current
*** guix pack now supports building SquashFS images
*** guix pack can now build relocatable tarballs
*** guix pack can now build tarballs with relocatable executables
*** guix system gives more hints for common configuration errors
*** guix package no longer warns about harmless file collisions
*** guix weather now reports continuous integration statistics
*** guix import elpa has a new --recursive option
** Distribution
*** New initrd-modules field of operating-system
*** New file-system-label construct supersedes title field of file-system
*** Package for Python 2.x has been renamed from “python” to “python2”
*** RHEL6 systems based on kernel Linux 2.6 are supported again
*** New services
enlightenment
enlightenment, qemu-binfmt
** Programming interfaces
*** gnu-build-system now includes a bootstrap phase to run autoreconf
*** gnu-build-system dumps contents of test-suite.log upon test failures
*** New build systems: android-ndk
*** New (guix store database) and (guix store deduplication) modules
*** The guix-register C++ program no longer is
*** package-full-name (guix packages) now uses "@" as its delimiter.
(<https://bugs.gnu.org/31088>)
** Noteworthy bug fixes
** Native language support
*** the manual can now be translated and is partially translated into French
* Changes in 0.14.0 (since 0.13.0)
** Package management

3
README
View file

@ -23,7 +23,8 @@ GNU Guix currently depends on the following packages:
- [[https://gnu.org/software/guile/][GNU Guile 2.2.x or 2.0.x]], version 2.0.13 or later
- [[https://gnupg.org/][GNU libgcrypt]]
- [[https://www.gnu.org/software/make/][GNU Make]]
- [[https://www.gnutls.org][GnuTLS]] compiled with guile support enabled.
- [[https://www.gnutls.org][GnuTLS]] compiled with guile support enabled
- [[https://notabug.org/civodul/guile-sqlite3][Guile-SQLite3]], version 0.1.0 or later
- [[https://gitlab.com/guile-git/guile-git][Guile-Git]]
- [[http://www.zlib.net/][zlib]]
- optionally [[https://savannah.nongnu.org/projects/guile-json/][Guile-JSON]], for the 'guix import pypi' command

View file

@ -53,7 +53,7 @@
(define %dependency-variables
;; (guix config) variables corresponding to dependencies.
'(%libgcrypt %libz %xz %gzip %bzip2 %nix-instantiate))
'(%libgcrypt %libz %xz %gzip %bzip2))
(define %persona-variables
;; (guix config) variables that define Guix's persona.
@ -63,17 +63,14 @@
%guix-home-page-url))
(define %config-variables
;; (guix config) variables corresponding to Guix configuration (storedir,
;; localstatedir, etc.)
(sort (filter pair?
(module-map (lambda (name var)
(and (not (memq name %dependency-variables))
(not (memq name %persona-variables))
(cons name (variable-ref var))))
(resolve-interface '(guix config))))
(lambda (name+value1 name+value2)
(string<? (symbol->string (car name+value1))
(symbol->string (car name+value2))))))
;; (guix config) variables corresponding to Guix configuration.
(letrec-syntax ((variables (syntax-rules ()
((_)
'())
((_ variable rest ...)
(cons `(variable . ,variable)
(variables rest ...))))))
(variables %localstatedir %storedir %sysconfdir %system)))
(define* (make-config.scm #:key libgcrypt zlib gzip xz bzip2
(package-name "GNU Guix")
@ -91,12 +88,15 @@
%guix-version
%guix-bug-report-address
%guix-home-page-url
%store-directory
%state-directory
%store-database-directory
%config-directory
%libgcrypt
%libz
%gzip
%bzip2
%xz
%nix-instantiate))
%xz))
;; XXX: Work around <http://bugs.gnu.org/15602>.
(eval-when (expand load eval)
@ -105,6 +105,26 @@
#~(define-public #$name #$value)))
%config-variables)
(define %store-directory
(or (and=> (getenv "NIX_STORE_DIR") canonicalize-path)
%storedir))
(define %state-directory
;; This must match `NIX_STATE_DIR' as defined in
;; `nix/local.mk'.
(or (getenv "NIX_STATE_DIR")
(string-append %localstatedir "/guix")))
(define %store-database-directory
(or (getenv "NIX_DB_DIR")
(string-append %state-directory "/db")))
(define %config-directory
;; This must match `GUIX_CONFIGURATION_DIRECTORY' as
;; defined in `nix/local.mk'.
(or (getenv "GUIX_CONFIGURATION_DIRECTORY")
(string-append %sysconfdir "/guix")))
(define %guix-package-name #$package-name)
(define %guix-version #$package-version)
(define %guix-bug-report-address #$bug-report-address)
@ -122,10 +142,7 @@
(file-append libgcrypt "/lib/libgcrypt")))
(define %libz
#+(and zlib
(file-append zlib "/lib/libz")))
(define %nix-instantiate ;for (guix import snix)
"nix-instantiate")))))
(file-append zlib "/lib/libz")))))))
;;;
@ -184,7 +201,8 @@ person's version identifier."
(date->string (current-date 0) "~Y~m~d.~H"))
(define* (build-program source version
#:optional (guile-version (effective-version)))
#:optional (guile-version (effective-version))
#:key (pull-version 0))
"Return a program that computes the derivation to build Guix from SOURCE."
(define select?
;; Select every module but (guix config) and non-Guix modules.
@ -214,11 +232,12 @@ person's version identifier."
;; (gnu packages …) modules are going to be looked up
;; under SOURCE. (guix config) is looked up in FRONT.
(match %load-path
((#$source _ ...)
#t) ;already done
((front _ ...)
(set! %load-path (list #$source front))))
(match (command-line)
((_ source _ ...)
(match %load-path
((front _ ...)
(unless (string=? front source) ;already done?
(set! %load-path (list source front)))))))
;; Only load our own modules or those of Guile.
(match %load-compiled-path
@ -246,18 +265,33 @@ person's version identifier."
(loop (cdr spin))))
(match (command-line)
((_ _ system)
(with-store store
((_ source system version protocol-version)
;; The current input port normally wraps a file
;; descriptor connected to the daemon, or it is
;; connected to /dev/null. In the former case, reuse
;; the connection such that we inherit build options
;; such as substitute URLs and so on; in the latter
;; case, attempt to open a new connection.
(let* ((proto (string->number protocol-version))
(store (if (integer? proto)
(port->connection (duplicate-port
(current-input-port)
"w+0")
#:version proto)
(open-connection))))
(call-with-new-thread
(lambda ()
(spin system)))
(display
(derivation-file-name
(and=>
(run-with-store store
(guix-derivation #$source #$version
#$guile-version)
#:system system)))))))
(guix-derivation source version
#$guile-version
#:pull-version
#$pull-version)
#:system system)
derivation-file-name))))))
#:module-path (list source))))
;; The procedure below is our return value.
@ -266,22 +300,37 @@ person's version identifier."
(guile-version (match ((@ (guile) version))
("2.2.2" "2.2.2")
(_ (effective-version))))
(pull-version 0)
#:allow-other-keys
#:rest rest)
"Return a derivation that unpacks SOURCE into STORE and compiles Scheme
files."
;; Build the build program and then use it as a trampoline to build from
;; SOURCE.
(mlet %store-monad ((build (build-program source version guile-version))
(system (if system (return system) (current-system))))
(mlet %store-monad ((build (build-program source version guile-version
#:pull-version pull-version))
(system (if system (return system) (current-system)))
(port ((store-lift nix-server-socket)))
(major ((store-lift nix-server-major-version)))
(minor ((store-lift nix-server-minor-version))))
(mbegin %store-monad
(show-what-to-build* (list build))
(built-derivations (list build))
(let* ((pipe (begin
(setenv "GUILE_WARN_DEPRECATED" "no") ;be quiet and drive
(open-pipe* OPEN_READ
(derivation->output-path build)
source system)))
;; Use the port beneath the current store as the stdin of BUILD. This
;; way, we know 'open-pipe*' will not close it on 'exec'. If PORT is
;; not a file port (e.g., it's an SSH channel), then the subprocess's
;; stdin will actually be /dev/null.
(let* ((pipe (with-input-from-port port
(lambda ()
(setenv "GUILE_WARN_DEPRECATED" "no") ;be quiet and drive
(open-pipe* OPEN_READ
(derivation->output-path build)
source system version
(if (file-port? port)
(number->string
(logior major minor))
"none")))))
(str (get-string-all pipe))
(status (close-pipe pipe)))
(match str
@ -292,6 +341,9 @@ files."
(return (newline (current-output-port)))
((store-lift add-temp-root) drv)
(return (read-derivation-from-file drv))))
("#f"
;; Unsupported PULL-VERSION.
(return #f))
((? string? str)
(error "invalid build result" (list build str))))))))

View file

@ -25,7 +25,8 @@
(and=> (or (getenv "XDG_CONFIG_HOME")
(and=> (getenv "HOME")
(cut string-append <> "/.config")))
(cut string-append <> "/guix/latest")))
(cute string-append <> "/guix/current/share/guile/site/"
(effective-version))))
(use-modules (guix) (guix ui)
(guix git-download)
@ -43,7 +44,7 @@
(mlet* %store-monad ((source (interned-file source "guix-source"
#:select? git?
#:recursive? #t))
(drv (build source)))
(drv (build source #:pull-version 1)))
(mbegin %store-monad
(show-what-to-build* (list drv))
(built-derivations (list drv))

View file

@ -43,7 +43,8 @@
(and=> (assoc-ref (current-source-location) 'filename)
(lambda (file)
(let ((dir (string-append (dirname file) "/../..")))
(let ((dir (canonicalize-path
(string-append (dirname file) "/../.."))))
(format (current-error-port) "prepending ~s to the load path~%"
dir)
(set! %load-path (cons dir %load-path))))))

View file

@ -46,6 +46,7 @@ for SYSTEM. Use VERSION as the version identifier."
`((derivation . ,(derivation-file-name
(run-with-store store
(build source #:version version #:system system
#:pull-version 1
#:guile-version "2.2")))) ;the latest 2.2.x
(description . "Modular Guix")
(long-description

View file

@ -1,7 +1,7 @@
#!/bin/sh
# GNU Guix --- Functional package management for GNU
# Copyright © 2012, 2013, 2014, 2015, 2017 Ludovic Courtès <ludo@gnu.org>
# Copyright © 2012, 2013, 2014, 2015, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
# Copyright © 2017 Eric Bavier <bavier@cray.com>
#
# This file is part of GNU Guix.
@ -55,10 +55,6 @@ NIX_BUILD_HOOK="$abs_top_builddir/nix/scripts/offload"
@BUILD_DAEMON_OFFLOAD_FALSE@# No offloading support.
@BUILD_DAEMON_OFFLOAD_FALSE@unset NIX_BUILD_HOOK
# The 'guix-register' program.
GUIX_REGISTER="$abs_top_builddir/guix-register"
export GUIX_REGISTER
# The following variables need only be defined when compiling Guix
# modules, but we define them to be on the safe side in case of
# auto-compilation.

View file

@ -126,8 +126,9 @@ AM_CONDITIONAL([HAVE_GUILE_JSON], [test "x$have_guile_json" = "xyes"])
dnl Guile-Sqlite3 is used by the (guix store ...) modules.
GUIX_CHECK_GUILE_SQLITE3
AM_CONDITIONAL([HAVE_GUILE_SQLITE3],
[test "x$guix_cv_have_recent_guile_sqlite3" = "xyes"])
if test "x$guix_cv_have_recent_guile_sqlite3" != "xyes"; then
AC_MSG_ERROR([A recent Guile-SQLite3 could not be found; please install it.])
fi
dnl Make sure we have a full-fledged Guile.
GUIX_ASSERT_GUILE_FEATURES([regex posix socket net-db threads])
@ -159,18 +160,11 @@ AC_ARG_WITH([nix-prefix],
esac],
[])
AC_PATH_PROG([NIX_INSTANTIATE], [nix-instantiate])
AC_PATH_PROG([NIX_HASH], [nix-hash])
if test "x$guix_build_daemon$NIX_INSTANTIATE$NIX_HASH" = "xno"; then
if test "x$guix_build_daemon$NIX_HASH" = "xno"; then
AC_MSG_ERROR([Nix programs not found; please install Nix or use `--with-nix-prefix'.])
fi
if test "x$NIX_INSTANTIATE" = "x"; then
# This program is an optional dependency, so we just want it to be
# taken from $PATH if it's not available right now.
NIX_INSTANTIATE="nix-instantiate"
fi
AC_ARG_WITH([nixpkgs],
[AS_HELP_STRING([--with-nixpkgs=DIR],
[search for Nixpkgs in DIR (for testing purposes only)])],

View file

@ -3,17 +3,17 @@
Ce projet est un effort coopératif et nous avons besoin de votre aide pour
le faire grandir ! Contactez-nous sur @email{guix-devel@@gnu.org} et
@code{#guix} sur le réseau IRC Freenode. Nous accueillons les idées, les
rapports de bogues, les correctifs et tout ce qui pourrait aider le
projet. Nous apprécions particulièrement toute aide sur la création de
paquets (@pxref{Consignes d'empaquetage}).
@code{#guix} sur le réseau IRC Freenode. Nous accueillons les idées, les
rapports de bogues, les correctifs et tout ce qui pourrait aider le projet.
Nous apprécions particulièrement toute aide sur la création de paquets
(@pxref{Consignes d'empaquetage}).
@cindex code de conduite, des contributeurs
@cindex convention de contribution
Nous souhaitons fournir un environnement chaleureux, amical et sans
harcèlement pour que tout le monde puisse contribuer au mieux de ses
capacités. Pour cela notre projet a une « Convention de contribution »
adaptée de @url{http://contributor-covenant.org/}. Vous pouvez trouver une
capacités. Pour cela notre projet a une « Convention de contribution »
adaptée de @url{http://contributor-covenant.org/}. Vous pouvez trouver une
version locale dans le fichier @file{CODE-OF-CONDUCT} dans l'arborescence
des sources.
@ -22,7 +22,7 @@ correctifs et leurs communications en ligne ; ils peuvent utiliser n'importe
quel nom ou pseudonyme de leur choix.
@menu
* Construire depuis Git:: The latest and greatest.
* Construire depuis Git:: toujours le plus récent.
* Lancer Guix avant qu'il ne soit installé:: Astuces pour les hackers.
* La configuration parfaite:: Les bons outils.
* Style de code:: Hygiène du contributeur.
@ -62,7 +62,7 @@ guix environment guix
@end example
@xref{Invoquer guix environment}, pour plus d'information sur cette
commande. On peut ajouter des dépendances supplémentaires avec
commande. On peut ajouter des dépendances supplémentaires avec
@option{--ad-hoc} :
@example
@ -70,7 +70,7 @@ guix environment guix --ad-hoc help2man git strace
@end example
Lancez @command{./bootstrap} pour générer l'infrastructure du système de
construction avec Autoconf et Automake. Si vous avez une erreur comme :
construction avec Autoconf et Automake. Si vous avez une erreur comme :
@example
configure.ac:46: error: possibly undefined macro: PKG_CHECK_MODULES
@ -78,11 +78,11 @@ configure.ac:46: error: possibly undefined macro: PKG_CHECK_MODULES
@noindent
cela signifie probablement qu'Autoconf n'a pas pu trouver @file{pkg.m4} qui
est fournit par pkg-config. Assurez-vous que @file{pkg.m4} est
disponible. C'est aussi vrai pour l'ensemble de macros de @file{guile.m4}
fournies par Guile. Par exemple, si vous avez installé Automake dans
@file{/usr/local}, il ne cherchera pas les fichiers @file{.m4} dans
@file{/usr/share}. Dans ce case vous devez invoquer la commande suivante :
est fournit par pkg-config. Assurez-vous que @file{pkg.m4} est disponible.
C'est aussi vrai pour l'ensemble de macros de @file{guile.m4} fournies par
Guile. Par exemple, si vous avez installé Automake dans @file{/usr/local},
il ne cherchera pas les fichiers @file{.m4} dans @file{/usr/share}. Dans ce
case vous devez invoquer la commande suivante :
@example
export ACLOCAL_PATH=/usr/share/aclocal
@ -91,13 +91,13 @@ export ACLOCAL_PATH=/usr/share/aclocal
@xref{Macro Search Path,,, automake, The GNU Automake Manual}, pour plus
d'information.
Ensuite, lancez @command{./configure} comme d'habitude. Assurez-vous de
Ensuite, lancez @command{./configure} comme d'habitude. Assurez-vous de
passer @code{--localstatedir=@var{directory}} où @var{directory} est la
valeur @code{localstatedir} utilisée par votre installation actuelle
(@pxref{Le dépôt} pour plus d'informations à ce propos).
Finalement, vous devez invoquer @code{make check} pour lancer les tests
(@pxref{Lancer la suite de tests}). Si quelque chose échoue, jetez un œil
(@pxref{Lancer la suite de tests}). Si quelque chose échoue, jetez un œil
aux instructions d'installation (@pxref{Installation}) ou envoyez un message
à la list @email{guix-devel@@gnu.org}.
@ -106,12 +106,12 @@ aux instructions d'installation (@pxref{Installation}) ou envoyez un message
@section Lancer Guix avant qu'il ne soit installé
Pour garder un environnement de travail sain, il est utile de tester les
changement localement sans les installer pour de vrai. Pour pouvoir
changement localement sans les installer pour de vrai. Pour pouvoir
distinguer votre rôle « d'utilisateur final » de celui parfois haut en
couleur de « développeur ».
Pour cela, tous les outils en ligne de commande sont utilisables même sans
avoir lancé @code{make install}. Vous devez pour cela préfixer chaque
avoir lancé @code{make install}. Vous devez pour cela préfixer chaque
commande par @command{./pre-inst-env} (le script @file{pre-inst-env} se
trouve dans le répertoire de plus haut niveau de l'arborescence des sources
de Guix) comme cela@footnote{L'option @option{-E} de @command{sudo} garantie
@ -159,16 +159,10 @@ Le script @command{pre-inst-env} paramètre toutes les variables
d'environnement nécessaires, dont @env{PATH} et @env{GUILE_LOAD_PATH}.
Remarquez que @command{./pre-inst-env guix pull} ne met @emph{pas} à jour
l'arborescence des sources locale ; il met seulement à jour le lien
symbolique @file{~/.config/guix/latest} (@pxref{Invoquer guix pull}). Lancez
@command{git pull} à la place si vous voulez mettre à jour votre
arborescence des sources locale@footnote{Si vous voulez paramétrer
@command{guix} pour qu'il utilise votre dépôt Git, vous pouvez faire pointer
le lien symbolique @file{~/.config/guix/latest} vers le répertoire contenant
ce dépôt. Si vous le seul utilisateur du système, vous pouvez aussi
considérer faire pointer le lien symbolique @file{/root/.config/guix/latest}
vers @file{~/.config/guix/latest} ; comme ça root aura toujours la même
commande @command{guix} que votre utilisateur}.
l'arborescence des sources locale ; cela met seulement à jour le lien
symbolique de @file{~/.config/guix/current} (@pxref{Invoquer guix pull}).
Lancez @command{git pull} à la place si vous voulez mettre à jour votre
arborescence des source locale.
@node La configuration parfaite
@ -176,7 +170,7 @@ commande @command{guix} que votre utilisateur}.
La configuration parfaite pour travailler sur Guix est simplement la
configuration parfaite pour travailler en Guile (@pxref{Using Guile in
Emacs,,, guile, Guile Reference Manual}). Tout d'abord, vous avez besoin de
Emacs,,, guile, Guile Reference Manual}). Tout d'abord, vous avez besoin de
mieux qu'un éditeur de texte, vous avez besoin de
@url{http://www.gnu.org/software/emacs, Emacs}, amélioré par le superbe
@url{http://nongnu.org/geiser/, Geiser}.
@ -185,10 +179,10 @@ Geiser permet le développement interactif et incrémental depuis Emacs : la
compilation du code et son évaluation depuis les buffers, l'accès à la
documentation en ligne (docstrings), la complétion sensible au contexte,
@kbd{M-.} pour sauter à la définition d'un objet, un REPL pour tester votre
code, et bien plus (@pxref{Introduction,,, geiser, Geiser User
Manual}). Pour travailler confortablement sur Guix, assurez-vous de modifier
le chemin de chargement de Guile pour qu'il trouve les fichiers source de
votre dépôt :
code, et bien plus (@pxref{Introduction,,, geiser, Geiser User Manual}).
Pour travailler confortablement sur Guix, assurez-vous de modifier le chemin
de chargement de Guile pour qu'il trouve les fichiers source de votre dépôt
:
@lisp
;; @r{Si l'extrait est dans ~/src/guix.}
@ -196,21 +190,21 @@ votre dépôt :
(add-to-list 'geiser-guile-load-path "~/src/guix"))
@end lisp
To actually edit the code, Emacs already has a neat Scheme mode. But in
addition to that, you must not miss
@url{http://www.emacswiki.org/emacs/ParEdit, Paredit}. It provides
facilities to directly operate on the syntax tree, such as raising an
s-expression or wrapping it, swallowing or rejecting the following
s-expression, etc.
Pour effectivement éditer le code, Emacs a déjà un très bon mode Scheme.
Mais en plus de ça, vous ne devez pas rater
@url{http://www.emacswiki.org/emacs/ParEdit, Paredit}. Il fournit des
fonctionnalités pour opérer directement sur l'arbre de syntaxe, comme
relever une s-expression ou l'envelopper, absorber ou rejeter la
s-expression suivante, etc.
@cindex extraits de code
@cindex modèles
@cindex réduire la quantité de code commun
Nous fournissons aussi des modèles pour les messages de commit git communs
et les définitions de paquets dans le répertoire @file{etc/snippets}. Ces
et les définitions de paquets dans le répertoire @file{etc/snippets}. Ces
modèles s'utilisent avec @url{http://joaotavora.github.io/yasnippet/,
YASnippet} pour développer des chaînes courtes de déclenchement en extraits
de texte interactifs. Vous pouvez ajouter le répertoire des modèles dans la
de texte interactifs. Vous pouvez ajouter le répertoire des modèles dans la
variables @var{yas-snippet-dirs} d'Emacs.
@lisp
@ -220,14 +214,14 @@ variables @var{yas-snippet-dirs} d'Emacs.
@end lisp
Les extraits de messages de commit dépendent de @url{https://magit.vc/,
Magit} pour afficher les fichiers sélectionnés. Lors de la modification d'un
message de commit, tapez @code{add} suivi de @kbd{TAB} pour insérer un
Magit} pour afficher les fichiers sélectionnés. Lors de la modification
d'un message de commit, tapez @code{add} suivi de @kbd{TAB} pour insérer un
modèle de message de commit pour ajouter un paquet ; tapez @code{update}
suivi de @kbd{TAB} pour insérer un modèle pour la mise à jour d'un paquet.
L'extrait principal pour @code{scheme-mode} est lancé en tapant
@code{package…} suivi par @kbd{TAB}. Cet extrait insère aussi la chaîne de
déclenchement @code{origin…}, qui peut aussi être étendue. L'extrait
@code{package…} suivi par @kbd{TAB}. Cet extrait insère aussi la chaîne de
déclenchement @code{origin…}, qui peut aussi être étendue. L'extrait
@code{origin} lui-même peut aussi insérer des chaînes de déclenchement qui
finissent sur @code{…}, qui peuvent aussi être étendues.
@ -236,7 +230,7 @@ finissent sur @code{…}, qui peuvent aussi être étendues.
@section Style de code
En général notre code suit le Standard de Code GNU (@pxref{Top,,, standards,
GNU Coding Standards}). Cependant, il ne parle pas beaucoup de Scheme, donc
GNU Coding Standards}). Cependant, il ne parle pas beaucoup de Scheme, donc
voici quelques règles supplémentaires.
@menu
@ -250,7 +244,7 @@ voici quelques règles supplémentaires.
@node Paradigme de programmation
@subsection Paradigme de programmation
Le code Scheme dans Guix est écrit dans un style purement fonctionnel. Le
Le code Scheme dans Guix est écrit dans un style purement fonctionnel. Le
code qui s'occupe des entrées-sorties est une exception ainsi que les
procédures qui implémentent des concepts bas-niveau comme la procédure
@code{memoize}.
@ -259,8 +253,8 @@ procédures qui implémentent des concepts bas-niveau comme la procédure
@subsection Modules
Les modules Guile qui sont sensés être utilisés du côté de la construction
doivent se trouver dans l'espace de nom @code{(guix build @dots{})}. Ils ne
doivent pas se référer à d'autres modules Guix ou GNU. Cependant il est
doivent se trouver dans l'espace de nom @code{(guix build @dots{})}. Ils ne
doivent pas se référer à d'autres modules Guix ou GNU@. Cependant il est
correct pour un module « côté hôte » de dépendre d'un module coté
construction.
@ -272,13 +266,13 @@ l'espace de nom @code{(gnu @dots{})} plutôt que @code{(guix @dots{})}.
La tendance en Lisp classique est d'utiliser des listes pour tout
représenter et de naviguer dedans « à la main ( avec @code{car}, @code{cdr},
@code{cadr} et compagnie. Il y a plusieurs problèmes avec ce style,
@code{cadr} et compagnie. Il y a plusieurs problèmes avec ce style,
notamment le fait qu'il soit dur à lire, source d'erreur et un obstacle aux
rapports d'erreur bien typés.
Le code de Guix devrait définir des types de données appropriées (par
exemple, avec @code{define-record-type*}) plutôt que d'abuser des listes. En
plus, il devrait utiliser la recherche de motifs, via le module Guile
exemple, avec @code{define-record-type*}) plutôt que d'abuser des listes.
En plus, il devrait utiliser la recherche de motifs, via le module Guile
@code{(ice-9 match)}, surtout pour rechercher dans des listes.
@node Formatage du code
@ -287,22 +281,22 @@ plus, il devrait utiliser la recherche de motifs, via le module Guile
@cindex formater le code
@cindex style de code
Lorsque nous écrivons du code Scheme, nous suivons la sagesse commune aux
programmeurs Scheme. En général, nous suivons les
programmeurs Scheme. En général, nous suivons les
@url{http://mumble.net/~campbell/scheme/style.txt, règles de style de
Riastradh}. Ce document décrit aussi les conventions utilisées dans le code
de Guile. Il est bien pensé et bien écrit, alors n'hésitez pas à le lire.
Riastradh}. Ce document décrit aussi les conventions utilisées dans le code
de Guile. Il est bien pensé et bien écrit, alors n'hésitez pas à le lire.
Certaines formes spéciales introduites dans Guix comme la macro
@code{substitute*} ont des règles d'indentation spécifiques. Elles sont
@code{substitute*} ont des règles d'indentation spécifiques. Elles sont
définies dans le fichier @file{.dir-locals.el} qu'Emacs utilise
automatiquement. Remarquez aussi qu'Emacs-Guix fournit le mode
automatiquement. Remarquez aussi qu'Emacs-Guix fournit le mode
@code{guix-devel-mode} qui indente et colore le code Guix correctement
(@pxref{Development,,, emacs-guix, The Emacs-Guix Reference Manual}).
@cindex indentation, du code
@cindex formatage, du code
Si vous n'utilisez pas Emacs, assurez-vous que votre éditeur connaisse ces
règles. Pour indenter automatiquement une définition de paquet, vous pouvez
règles. Pour indenter automatiquement une définition de paquet, vous pouvez
aussi lancer :
@example
@ -311,16 +305,24 @@ aussi lancer :
@noindent
Cela indente automatiquement la définition de @var{package} dans
@file{gnu/packages/@var{file}.scm} en lançant Emacs en mode commande. Pour
@file{gnu/packages/@var{file}.scm} en lançant Emacs en mode commande. Pour
indenter un fichier complet, n'indiquez pas de second argument :
@example
./etc/indent-code.el gnu/services/@var{file}.scm
@end example
@cindex Vim, édition de code Scheme
Si vous éditez du code avec Vim, nous recommandons de lancer @code{:set
autoindent} pour que votre code soit automatiquement indenté au moment où
vous l'entrez. En plus,
@uref{https://www.vim.org/scripts/script.php?script_id=3998,
@code{paredit.vim}} peut vous aider à gérer toutes ces parenthèses.
Nous demandons que toutes les procédure de premier niveau contiennent une
chaîne de documentation. Ce pré-requis peut être relâché pour les procédures
privées simples dans l'espace de nom @code{(guix build @dots{})} cependant.
chaîne de documentation. Ce pré-requis peut être relâché pour les
procédures privées simples dans l'espace de nom @code{(guix build @dots{})}
cependant.
Les procédures ne devraient pas avoir plus de quatre paramètres
positionnés. Utilisez des paramètres par mot-clefs pour les procédures qui
@ -330,14 +332,14 @@ prennent plus de quatre paramètres.
@node Envoyer des correctifs
@section Envoyer des correctifs
Le développement se fait avec le système de contrôle de version Git. Ainsi,
l'accès au dépôt n'est pas strictement nécessaire. Nous accueillons les
Le développement se fait avec le système de contrôle de version Git. Ainsi,
l'accès au dépôt n'est pas strictement nécessaire. Nous accueillons les
contributions sous forme de correctifs produits par @code{git format-patch}
envoyés sur la liste de diffusion @email{guix-patches@@gnu.org}.
Cette liste de diffusion est gérée par une instance Debbugs accessible à
l'adresse @uref{https://bugs.gnu.org/guix-patches}, qui nous permet de
suivre les soumissions. Chaque message envoyé à cette liste se voit
suivre les soumissions. Chaque message envoyé à cette liste se voit
attribuer un numéro de suivi ; les gens peuvent ensuite répondre à cette
soumission en envoyant un courriel à @code{@var{NNN}@@debbugs.gnu.org}, où
@var{NNN} est le numéro de suivi (@pxref{Envoyer une série de correctifs}).
@ -352,13 +354,13 @@ paquet, veuillez vérifier cette check-list :
@enumerate
@item
Si les auteurs du paquet logiciel fournissent une signature cryptographique
pour l'archive, faîtes un effort pour vérifier l'authenticité de
l'archive. Pour un fichier de signature GPG détaché, cela se fait avec la
commande @code{gpg --verify}.
pour l'archive, faîtes un effort pour vérifier l'authenticité de l'archive.
Pour un fichier de signature GPG détaché, cela se fait avec la commande
@code{gpg --verify}.
@item
Prenez un peu de temps pour fournir un synopsis et une description adéquats
pour le paquet. Voir @xref{Synopsis et descriptions} pour quelques lignes
pour le paquet. Voir @xref{Synopsis et descriptions} pour quelques lignes
directrices.
@item
@ -376,9 +378,9 @@ Assurez-vous que le paquet n'utilise pas de copie groupée d'un logiciel déjà
disponible dans un paquet séparé.
Parfois, les paquets incluent des copie du code source de leurs dépendances
pour le confort de leurs utilisateurs. Cependant, en tant que distribution,
pour le confort de leurs utilisateurs. Cependant, en tant que distribution,
nous voulons nous assurer que ces paquets utilisent bien les copient que
nous avons déjà dans la distribution si elles existent. Cela améliore
nous avons déjà dans la distribution si elles existent. Cela améliore
l'utilisation des ressources (la dépendance n'est construite et stockée
qu'une seule fois) et permet à la distribution de faire des changements
transversaux comme appliquer des correctifs de sécurité pour un paquet donné
@ -386,8 +388,8 @@ depuis un unique emplacement et qu'ils affectent tout le système, ce
qu'empêchent les copies groupées.
@item
Regardez le profile rapporté par @command{guix size} (@pxref{Invoquer guix size}). Cela vous permettra de remarquer des références à d'autres paquets
qui ont été retenus. Il peut aussi aider à déterminer s'il faut découper le
Regardez le profile rapporté par @command{guix size} (@pxref{Invoquer guix size}). Cela vous permettra de remarquer des références à d'autres paquets
qui ont été retenus. Il peut aussi aider à déterminer s'il faut découper le
paquet (@pxref{Des paquets avec plusieurs résultats}) et quelle dépendance
facultative utiliser.
@ -413,27 +415,34 @@ principes :
branche @code{master} (changements non-disruptifs).
@item entre 300 et 1200 paquets dépendants
branche @code{staging} (changemets non-disruptifs). Cette branche devrait
être fusionnées dans @code{master} tous les 3 semaines. Les changements par
branche @code{staging} (changemets non-disruptifs). Cette branche devrait
être fusionnées dans @code{master} tous les 3 semaines. Les changements par
thèmes (par exemple une mise à jour de la pile GNOME) peuvent aller dans une
branche spécifique (disons, @code{gnome-updates}).
@item plus de 1200 paquets dépendants
branche @code{core-updates} (peut inclure des changements majeurs et
potentiellement disruptifs). Cette branche devrait être fusionnée dans
potentiellement disruptifs). Cette branche devrait être fusionnée dans
@code{master} tous les 2,5 mois environ.
@end table
Toutes ces branches sont gérées par notre ferme de construction et
fusionnées dans @code{master} une fois que tout a été construit
correctement. Cela nous permet de corriger des problèmes avant qu'ils
n'atteignent les utilisateurs et réduit la fenêtre pendant laquelle les
binaires pré-construits ne sont pas disponibles.
Toutes ces branches sont @uref{https://hydra.gnu.org/project/gnu, gérées par
notre ferme de construction} et fusionnées dans @code{master} une fois que
tout a été construit correctement. Cela nous permet de corriger des
problèmes avant qu'ils n'atteignent les utilisateurs et réduit la fenêtre
pendant laquelle les binaires pré-construits ne sont pas disponibles.
@c TODO: It would be good with badges on the website that tracks these
@c branches. Or maybe even a status page.
Généralement les autres branches que @code{master} sont considérées comme
@emph{gelées} s'il y a eu une évaluation récente ou qu'il y a une branche
@code{-next} correspondante. Demandez sur la liste de diffusion ou sur IRC
si vous n'êtes pas sûr de savoir où pousser votre correctif.
@item
@cindex déterminisme, du processus de construction
@cindex construction reproductibles, vérification
Vérifiez si le processus de construction du paquet est déterministe. Cela
Vérifiez si le processus de construction du paquet est déterministe. Cela
signifie typiquement vérifier qu'une construction indépendante du paquet
renvoie exactement le même résultat que vous avez obtenu, bit à bit.
@ -449,10 +458,10 @@ comme l'horodatage ou des sorties générées aléatoirement dans le résultat d
la construction.
Une autre option consiste à utiliser @command{guix challenge}
(@pxref{Invoquer guix challenge}). Vous pouvez lancer la commande une fois
(@pxref{Invoquer guix challenge}). Vous pouvez lancer la commande une fois
que les paquets ont été commités et construits par @code{hydra.gnu.org} pour
vérifier s'il obtient le même résultat que vous. Mieux encore : trouvez une
autre machine qui peut le construire et lancez @command{guix publish}. Puis
vérifier s'il obtient le même résultat que vous. Mieux encore : trouvez une
autre machine qui peut le construire et lancez @command{guix publish}. Puis
la machine distante est sûrement différente de la vôtre, cela peut trouver
des problèmes de non-déterminisme liés au matériel — par exemple utiliser
une extension du jeu d'instruction — ou du noyau du système d'exploitation —
@ -466,8 +475,8 @@ neutre lorsque vous vous référez à des personnes, comme le
@item
Vérifiez que votre correctif contienne seulement un ensemble de changements
liés. Grouper des changements non liés ensemble rend la revue plus difficile
et plus lente.
liés. Grouper des changements non liés ensemble rend la revue plus
difficile et plus lente.
Ajouter plusieurs paquet ou une mise à jour d'un paquet avec des corrections
dans ce paquet sont des exemples de changements sans rapport.
@ -480,10 +489,10 @@ du code}).
@end enumerate
Lorsque vous envoyez un correctif à la liste de diffusion, utilisez
@samp{[PATCH] @dots{}} comme sujet. Vous pouvez utiliser votre client de
@samp{[PATCH] @dots{}} comme sujet. Vous pouvez utiliser votre client de
courriel ou la commande @command{git send-email} (@pxref{Envoyer une série
de correctifs}). Nous préférons recevoir des correctifs en texte brut, soit
en ligne, soit en pièce-jointe MIME. Nous vous conseillons de faire
de correctifs}). Nous préférons recevoir des correctifs en texte brut, soit
en ligne, soit en pièce-jointe MIME@. Nous vous conseillons de faire
attention si votre client de courriel change par exemple les retours à la
ligne ou l'indentation, ce qui peut casser les correctifs.
@ -497,9 +506,9 @@ Lorsqu'un bogue est résolu, veuillez fermer le fil en envoyant un courriel à
@cindex @code{git-send-email}
@c Debbugs bug: https://debbugs.gnu.org/db/15/15361.html
Lorsque vous envoyez une série de correctifs (p.e. avec @code{git
Lorsque vous envoyez une série de correctifs (p.@@:: ex.@: avec @code{git
send-email}), envoyez d'abord une premier message à
@email{guix-patches@@gnu.org} puis envoyez le reste des correctifs à
@email{@var{NNN}@@debbugs.gnu.org} pour vous assurer qu'ils seront groupés
ensemble. Voyez @uref{https://debbugs.gnu.org/Advanced.html, la
ensemble. Voyez @uref{https://debbugs.gnu.org/Advanced.html, la
documentation de Debbugs} pour plus d'informations.

View file

@ -155,15 +155,9 @@ The @command{pre-inst-env} script sets up all the environment variables
necessary to support this, including @env{PATH} and @env{GUILE_LOAD_PATH}.
Note that @command{./pre-inst-env guix pull} does @emph{not} upgrade the
local source tree; it simply updates the @file{~/.config/guix/latest}
local source tree; it simply updates the @file{~/.config/guix/current}
symlink (@pxref{Invoking guix pull}). Run @command{git pull} instead if
you want to upgrade your local source tree.@footnote{If you would like
to set up @command{guix} to use your Git checkout, you can point the
@file{~/.config/guix/latest} symlink to your Git checkout directory.
If you are the sole user of your system, you may also consider pointing
the @file{/root/.config/guix/latest} symlink to point to
@file{~/.config/guix/latest}; this way it will always use the same
@command{guix} as your user does.}
you want to upgrade your local source tree.
@node The Perfect Setup
@ -413,12 +407,19 @@ changes). This branch is intended to be merged in @code{master} every
2.5 months or so.
@end table
All these branches are tracked by our build farm
and merged into @code{master} once
All these branches are @uref{https://hydra.gnu.org/project/gnu,
tracked by our build farm} and merged into @code{master} once
everything has been successfully built. This allows us to fix issues
before they hit users, and to reduce the window during which pre-built
binaries are not available.
Generally, branches other than @code{master} are considered
@emph{frozen} if there has been a recent evaluation, or there is a
corresponding @code{-next} branch. Please ask on the mailing list or
IRC if unsure where to place a patch.
@c TODO: It would be good with badges on the website that tracks these
@c branches. Or maybe even a status page.
@item
@cindex determinism, of build processes
@cindex reproducible builds, checking

File diff suppressed because it is too large Load diff

View file

@ -37,7 +37,7 @@ Copyright @copyright{} 2017 Carlo Zancanaro@*
Copyright @copyright{} 2017 Thomas Danckaert@*
Copyright @copyright{} 2017 humanitiesNerd@*
Copyright @copyright{} 2017 Christopher Allan Webber@*
Copyright @copyright{} 2017 Marius Bakke@*
Copyright @copyright{} 2017, 2018 Marius Bakke@*
Copyright @copyright{} 2017 Hartmut Goebel@*
Copyright @copyright{} 2017 Maxim Cournoyer@*
Copyright @copyright{} 2017, 2018 Tobias Geerinckx-Rice@*
@ -249,7 +249,7 @@ Services
* VPN Services:: VPN daemons.
* Network File System:: NFS related services.
* Continuous Integration:: The Cuirass service.
* Power management Services:: The TLP tool.
* Power Management Services:: Extending battery life.
* Audio Services:: The MPD.
* Virtualization Services:: Virtualization services.
* Version Control Services:: Providing remote access to Git repositories.
@ -614,6 +614,9 @@ later, including 2.2.x;
(@pxref{Guile Preparations, how to install the GnuTLS bindings for
Guile,, gnutls-guile, GnuTLS-Guile});
@item
@uref{https://notabug.org/civodul/guile-sqlite3, Guile-SQLite3}, version 0.1.0
or later;
@item
@c FIXME: Specify a version number once a release has been made.
@uref{https://gitlab.com/guile-git/guile-git, Guile-Git}, from August
2017 or later;
@ -985,7 +988,7 @@ Port number of SSH server on the machine.
@item @code{private-key} (default: @file{~root/.ssh/id_rsa})
The SSH private key file to use when connecting to the machine, in
OpenSSH format.
OpenSSH format. This key must not be protected with a passphrase.
Note that the default value is the private key @emph{of the root
account}. Make sure it exists if you use the default.
@ -2743,11 +2746,54 @@ Any user can update their Guix copy using @command{guix pull}, and the
effect is limited to the user who run @command{guix pull}. For
instance, when user @code{root} runs @command{guix pull}, this has no
effect on the version of Guix that user @code{alice} sees, and vice
versa@footnote{Under the hood, @command{guix pull} updates the
@file{~/.config/guix/latest} symbolic link to point to the latest Guix,
and the @command{guix} command loads code from there. Currently, the
only way to roll back an invocation of @command{guix pull} is to
manually update this symlink to point to the previous Guix.}.
versa.
The result of running @command{guix pull} is a @dfn{profile} available
under @file{~/.config/guix/current} containing the latest Guix. Thus,
make sure to add it to the beginning of your search path so that you use
the latest version, and similarly for the Info manual
(@pxref{Documentation}):
@example
export PATH="$HOME/.config/guix/current/bin:$PATH"
export INFOPATH="$HOME/.config/guix/current/share/info:$INFOPATH"
@end example
The @code{--list-generations} or @code{-l} option lists past generations
produced by @command{guix pull}, along with details about their provenance:
@example
$ guix pull -l
Generation 1 Jun 10 2018 00:18:18
guix 65956ad
repository URL: https://git.savannah.gnu.org/git/guix.git
branch: origin/master
commit: 65956ad3526ba09e1f7a40722c96c6ef7c0936fe
Generation 2 Jun 11 2018 11:02:49
guix e0cc7f6
repository URL: https://git.savannah.gnu.org/git/guix.git
branch: origin/master
commit: e0cc7f669bec22c37481dd03a7941c7d11a64f1d
Generation 3 Jun 13 2018 23:31:07 (current)
guix 844cc1c
repository URL: https://git.savannah.gnu.org/git/guix.git
branch: origin/master
commit: 844cc1c8f394f03b404c5bb3aee086922373490c
@end example
This @code{~/.config/guix/current} profile works like any other profile
created by @command{guix package} (@pxref{Invoking guix package}). That
is, you can list generations, roll back to the previous
generation---i.e., the previous Guix---and so on:
@example
$ guix package -p ~/.config/guix/current --roll-back
switched from generation 3 to 2
$ guix package -p ~/.config/guix/current --delete-generations=1
deleting /home/charlie/.config/guix/current-1-link
@end example
The @command{guix pull} command is usually invoked with no arguments,
but it supports the following options:
@ -2772,6 +2818,13 @@ string.
Deploy the tip of @var{branch}, the name of a Git branch available on
the repository at @var{url}.
@item --list-generations[=@var{pattern}]
@itemx -l [@var{pattern}]
List all the generations of @file{~/.config/guix/current} or, if @var{pattern}
is provided, the subset of generations that match @var{pattern}.
The syntax of @var{pattern} is the same as with @code{guix package
--list-generations} (@pxref{Invoking guix package}).
@item --bootstrap
Use the bootstrap Guile to build the latest Guix. This option is only
useful to Guix developers.
@ -6586,6 +6639,12 @@ signatures,, emacs, The GNU Emacs Manual}).
@uref{http://melpa.org/packages, MELPA}, selected by the @code{melpa}
identifier.
@end itemize
@item --recursive
@itemx -r
Traverse the dependency graph of the given upstream package recursively
and generate package expressions for all those packages that are not yet
in Guix.
@end table
@item crate
@ -8582,21 +8641,21 @@ create a file system on the relevant partition(s)@footnote{Currently
GuixSD only supports ext4 and btrfs file systems. In particular, code
that reads file system UUIDs and labels only works for these file system
types.}. For the ESP, if you have one and assuming it is
@file{/dev/sda2}, run:
@file{/dev/sda1}, run:
@example
mkfs.fat -F32 /dev/sda2
mkfs.fat -F32 /dev/sda1
@end example
Preferably, assign file systems a label so that you can easily and
reliably refer to them in @code{file-system} declarations (@pxref{File
Systems}). This is typically done using the @code{-L} option of
@command{mkfs.ext4} and related commands. So, assuming the target root
partition lives at @file{/dev/sda1}, a file system with the label
partition lives at @file{/dev/sda2}, a file system with the label
@code{my-root} can be created with:
@example
mkfs.ext4 -L my-root /dev/sda1
mkfs.ext4 -L my-root /dev/sda2
@end example
@cindex encrypted disk
@ -8604,12 +8663,12 @@ If you are instead planning to encrypt the root partition, you can use
the Cryptsetup/LUKS utilities to do that (see @inlinefmtifelse{html,
@uref{https://linux.die.net/man/8/cryptsetup, @code{man cryptsetup}},
@code{man cryptsetup}} for more information.) Assuming you want to
store the root partition on @file{/dev/sda1}, the command sequence would
store the root partition on @file{/dev/sda2}, the command sequence would
be along these lines:
@example
cryptsetup luksFormat /dev/sda1
cryptsetup open --type luks /dev/sda1 my-partition
cryptsetup luksFormat /dev/sda2
cryptsetup open --type luks /dev/sda2 my-partition
mkfs.ext4 -L my-root /dev/mapper/my-partition
@end example
@ -8629,11 +8688,11 @@ by @code{guix system init} afterwards.
Finally, if you plan to use one or more swap partitions (@pxref{Memory
Concepts, swap space,, libc, The GNU C Library Reference Manual}), make
sure to initialize them with @command{mkswap}. Assuming you have one
swap partition on @file{/dev/sda2}, you would run:
swap partition on @file{/dev/sda3}, you would run:
@example
mkswap /dev/sda2
swapon /dev/sda2
mkswap /dev/sda3
swapon /dev/sda3
@end example
Alternatively, you may use a swap file. For example, assuming that in
@ -8822,6 +8881,22 @@ Have a look at @file{gnu/system/install.scm} in the source tree,
and see also @ref{Invoking guix system} for more information
about the installation image.
@subsection Building the Installation Image for ARM Boards
Many ARM boards require a specific variant of the
@uref{http://www.denx.de/wiki/U-Boot/, U-Boot} bootloader.
If you build a disk image and the bootloader is not available otherwise
(on another boot drive etc), it's advisable to build an image that
includes the bootloader, specifically:
@example
guix system disk-image --system=armhf-linux -e '((@@ (gnu system install) os-with-u-boot) (@@ (gnu system install) installation-os) "A20-OLinuXino-Lime2")'
@end example
@code{A20-OLinuXino-Lime2} is the name of the board. If you specify an invalid
board, a list of possible boards will be printed.
@node System Configuration
@section System Configuration
@ -9863,7 +9938,7 @@ declaration.
* VPN Services:: VPN daemons.
* Network File System:: NFS related services.
* Continuous Integration:: The Cuirass service.
* Power management Services:: The TLP tool.
* Power Management Services:: Extending battery life.
* Audio Services:: The MPD.
* Virtualization Services:: Virtualization services.
* Version Control Services:: Providing remote access to Git repositories.
@ -11851,6 +11926,44 @@ resolutions---e.g., @code{((1024 768) (640 480))}.
Last, @var{extra-config} is a list of strings or objects appended to the
configuration file. It is used to pass extra text to be
added verbatim to the configuration file.
@cindex keymap
@cindex keyboard layout
This procedure is especially useful to configure a different keyboard layout
than the default US keymap. For instance, to use the ``bépo'' keymap by
default on the display manager:
@example
(define bepo-evdev
"Section \"InputClass\"
Identifier \"evdev keyboard catchall\"
Driver \"evdev\"
MatchIsKeyboard \"on\"
Option \"xkb_layout\" \"fr\"
Option \"xkb_variant\" \"bepo\"
EndSection")
(operating-system
...
(services
(modify-services %desktop-services
(slim-service-type config =>
(slim-configuration
(inherit config)
(startx (xorg-start-command
#:configuration-file
(xorg-configuration-file
#:extra-config
(list bepo-evdev)))))))))
@end example
The @code{MatchIsKeyboard} line specifies that we only apply the configuration
to keyboards. Without this line, other devices such as touchpad may not work
correctly because they will be attached to the wrong driver. In this example,
the user typically used @code{setxkbmap fr bepo} to set their favorite keymap
once logged in. The first argument corresponds to the layout, while the second
argument corresponds to the variant. The @code{xkb_variant} line can be omitted
to select the default variant.
@end deffn
@deffn {Scheme Procedure} screen-locker-service @var{package} [@var{program}]
@ -13018,15 +13131,15 @@ Users need to be in the @code{lp} group to access the D-Bus service.
@cindex ALSA
@cindex PulseAudio, sound support
The @code{(gnu services sound)} module provides an
@code{alsa-service-type} service to generate an ALSA
@file{/etc/asound.conf} configuration file. This configuration file is
what allows applications that produce sound using ALSA to be correctly
handled.
The @code{(gnu services sound)} module provides a service to configure the
Advanced Linux Sound Architecture (ALSA) system, which making PulseAudio the
prefered ALSA output driver.
@deffn {Scheme Variable} alsa-service-type
This is the type for the @uref{https://alsa-project.org/, ALSA},
@command{alsa-configuration} record as in this example:
This is the type for the @uref{https://alsa-project.org/, Advanced Linux Sound
Architecture} (ALSA) system, which generates the @file{/etc/asound.conf}
configuration file. The value for this type is a @command{alsa-configuration}
record as in this example:
@example
(service alsa-service-type)
@ -13039,6 +13152,9 @@ See below for details about @code{alsa-configuration}.
Data type representing the configuration for @code{alsa-service}.
@table @asis
@item @code{alsa-plugins} (default: @var{alsa-plugins})
@code{alsa-plugins} package to use.
@item @code{pulseaudio?} (default: @var{#t})
Whether ALSA applications should transparently be made to use the
@uref{http://www.pulseaudio.org/, PulseAudio} sound server.
@ -13048,11 +13164,47 @@ at the same time and to individual control them @i{via}
@command{pavucontrol}, among other things.
@item @code{extra-options} (default: @var{""})
String to append to the @file{asound.conf} file.
String to append to the @file{/etc/asound.conf} file.
@end table
@end deftp
Individual users who want to override the system configuration of ALSA can do
it with the @file{~/.asoundrc} file:
@example
# In guix, we have to specify the absolute path for plugins.
pcm_type.jack @{
lib "/home/alice/.guix-profile/lib/alsa-lib/libasound_module_pcm_jack.so"
@}
# Routing ALSA to jack:
# <http://jackaudio.org/faq/routing_alsa.html>.
pcm.rawjack @{
type jack
playback_ports @{
0 system:playback_1
1 system:playback_2
@}
capture_ports @{
0 system:capture_1
1 system:capture_2
@}
@}
pcm.!default @{
type plug
slave @{
pcm "rawjack"
@}
@}
@end example
See @uref{https://www.alsa-project.org/main/index.php/Asoundrc} for the
details.
@node Database Services
@subsubsection Database Services
@ -15866,6 +16018,10 @@ use the size of the processors cache line.
@item @code{server-names-hash-bucket-max-size} (default: @code{#f})
Maximum bucket size for the server names hash tables.
@item @code{extra-content} (default: @code{""})
Extra content for the @code{http} block. Should be string or a string
valued G-expression.
@end table
@end deffn
@ -16852,8 +17008,8 @@ Specify IP address of upstream servers directly.
Set the size of dnsmasq's cache. Setting the cache size to zero
disables caching.
@item @code{no-negcache?} (default: @code{#f})
When true, disable negative caching.
@item @code{negative-cache?} (default: @code{#t})
When false, disable negative caching.
@end table
@end deftp
@ -17427,10 +17583,13 @@ The Cuirass package to use.
@end table
@end deftp
@node Power management Services
@subsubsection Power management Services
@node Power Management Services
@subsubsection Power Management Services
@cindex tlp
@cindex power management with TLP
@subsubheading TLP daemon
The @code{(gnu services pm)} module provides a Guix service definition
for the Linux power management tool TLP.
@ -17931,6 +18090,9 @@ Defaults to @samp{#f}.
@end deftypevr
@cindex thermald
@cindex CPU frequency scaling with thermald
@subsubheading Thermald daemon
The @code{(gnu services pm)} module provides an interface to
thermald, a CPU frequency scaling service which helps prevent overheating.
@ -19926,6 +20088,21 @@ The port to bind the server to.
@node Miscellaneous Services
@subsubsection Miscellaneous Services
@cindex fingerprint
@subsubheading Fingerprint Service
The @code{(gnu services fingerprint)} module provides a DBus service to
read and identify fingerprints via a fingerprint sensor.
@defvr {Scheme Variable} fprintd-service-type
The service type for @command{fprintd}, which provides the fingerprint
reading capability.
@example
(service fprintd-service-type)
@end example
@end defvr
@cindex sysctl
@subsubheading System Control Service

View file

@ -0,0 +1,30 @@
# GNU Guix --- Functional package management for GNU
# Copyright © 2018 Oleg Pykhalov <go.wigust@gmail.com>
#
# This file is part of GNU Guix.
#
# GNU Guix is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 3 of the License, or (at
# your option) any later version.
#
# GNU Guix is distributed in the hope that it will be useful, but
# WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
# Bash completion for guix-daemon command.
_guix_daemon_complete ()
{
local options="$(${COMP_WORDS[0]} --help 2> /dev/null \
| grep '^ \+-' \
| sed -e's/^.*--\([a-zA-Z0-9_-]\+\)\(=\?\).*/--\1\2/g')"
compopt -o nospace
COMPREPLY=($(compgen -W "$options" -- "${COMP_WORDS[${#COMP_WORDS[*]} - 1]}"))
}
complete -F _guix_daemon_complete guix-daemon

View file

@ -387,12 +387,18 @@ submenu \"GNU system, old configurations...\" {~%")
;; Install GRUB onto the EFI partition mounted at EFI-DIR, for the
;; system whose root is mounted at MOUNT-POINT.
(let ((grub-install (string-append bootloader "/sbin/grub-install"))
(install-dir (string-append mount-point "/boot")))
(install-dir (string-append mount-point "/boot"))
;; When installing GuixSD, it's common to mount EFI-DIR below
;; MOUNT-POINT rather than /boot/efi on the live image.
(target-esp (if (file-exists? (string-append mount-point efi-dir))
(string-append mount-point efi-dir)
efi-dir)))
;; Tell 'grub-install' that there might be a LUKS-encrypted /boot or
;; root partition.
(setenv "GRUB_ENABLE_CRYPTODISK" "y")
(unless (zero? (system* grub-install "--boot-directory" install-dir
"--efi-directory" efi-dir))
"--bootloader-id=GuixSD"
"--efi-directory" target-esp))
(error "failed to install GRUB (EFI)")))))

View file

@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013, 2014, 2015, 2016, 2017 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2016 Chris Marusich <cmmarusich@gmail.com>
;;;
;;; This file is part of GNU Guix.
@ -18,6 +18,7 @@
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu build install)
#:use-module (guix store database)
#:use-module (guix build utils)
#:use-module (guix build store-copy)
#:use-module (srfi srfi-26)
@ -25,7 +26,6 @@
#:export (install-boot-config
evaluate-populate-directive
populate-root-file-system
reset-timestamps
register-closure
populate-single-profile-directory))
@ -110,9 +110,6 @@ STORE."
("/var/guix/gcroots/booted-system" -> "/run/booted-system")
("/var/guix/gcroots/current-system" -> "/run/current-system")
;; XXX: 'guix-register' creates this symlink with a wrong target, so
;; create it upfront to be sure.
("/var/guix/gcroots/profiles" -> "/var/guix/profiles")
(directory "/bin")
@ -144,37 +141,27 @@ includes /etc, /var, /run, /bin/sh, etc., and all the symlinks to SYSTEM."
(try))
(apply throw args)))))))
(define (reset-timestamps directory)
"Reset the timestamps of all the files under DIRECTORY, so that they appear
as created and modified at the Epoch."
(display "clearing file timestamps...\n")
(for-each (lambda (file)
(let ((s (lstat file)))
;; XXX: Guile uses libc's 'utime' function (not 'futime'), so
;; the timestamp of symlinks cannot be changed, and there are
;; symlinks here pointing to /gnu/store, which is the host,
;; read-only store.
(unless (eq? (stat:type s) 'symlink)
(utime file 0 0 0 0))))
(find-files directory #:directories? #t)))
(define* (register-closure store closure
#:key (deduplicate? #t))
"Register CLOSURE in STORE, where STORE is the directory name of the target
store and CLOSURE is the name of a file containing a reference graph as used
by 'guix-register'. As a side effect, this resets timestamps on store files
and, if DEDUPLICATE? is true, deduplicates files common to CLOSURE and the
rest of STORE."
(let ((status (apply system* "guix-register" "--prefix" store
(append (if deduplicate? '() '("--no-deduplication"))
(list closure)))))
(unless (zero? status)
(error "failed to register store items" closure))))
(define* (register-closure prefix closure
#:key
(deduplicate? #t) (reset-timestamps? #t)
(schema (sql-schema)))
"Register CLOSURE in PREFIX, where PREFIX is the directory name of the
target store and CLOSURE is the name of a file containing a reference graph as
produced by #:references-graphs.. As a side effect, if RESET-TIMESTAMPS? is
true, reset timestamps on store files and, if DEDUPLICATE? is true,
deduplicates files common to CLOSURE and the rest of PREFIX."
(let ((items (call-with-input-file closure read-reference-graph)))
(register-items items
#:prefix prefix
#:deduplicate? deduplicate?
#:reset-timestamps? reset-timestamps?
#:registration-time %epoch
#:schema schema)))
(define* (populate-single-profile-directory directory
#:key profile closure
deduplicate?
register?)
register? schema)
"Populate DIRECTORY with a store containing PROFILE, whose closure is given
in the file called CLOSURE (as generated by #:references-graphs.) DIRECTORY
is initialized to contain a single profile under /root pointing to PROFILE.
@ -200,11 +187,11 @@ This is used to create the self-contained tarballs with 'guix pack'."
(when register?
(register-closure (canonicalize-path directory) closure
#:deduplicate? deduplicate?)
#:deduplicate? deduplicate?
#:schema schema)
;; XXX: 'guix-register' registers profiles as GC roots but the symlink
;; target uses $TMPDIR. Fix that.
(delete-file (scope "/var/guix/gcroots/profiles"))
(mkdir-p* "/var/guix/profiles")
(mkdir-p* "/var/guix/gcroots")
(symlink* "/var/guix/profiles"
"/var/guix/gcroots/profiles"))

View file

@ -32,6 +32,7 @@
ensure-dot-ko
module-aliases
module-dependencies
normalize-module-name
recursive-module-dependencies
modules-loaded
module-loaded?

View file

@ -25,6 +25,7 @@
#:use-module (guix build utils)
#:use-module (guix build store-copy)
#:use-module (guix build syscalls)
#:use-module ((guix store database) #:select (reset-timestamps))
#:use-module (gnu build linux-boot)
#:use-module (gnu build install)
#:use-module (gnu system uuid)
@ -33,6 +34,7 @@
#:use-module (ice-9 format)
#:use-module (ice-9 match)
#:use-module (ice-9 regex)
#:use-module (ice-9 popen)
#:use-module (srfi srfi-1)
#:use-module (srfi srfi-9)
#:use-module (srfi srfi-26)
@ -345,7 +347,7 @@ SYSTEM-DIRECTORY is the name of the directory of the 'system' derivation."
;; Optionally, register the inputs in the image's store.
(when register-closures?
(unless copy-closures?
;; XXX: 'guix-register' wants to palpate the things it registers, so
;; XXX: 'register-closure' wants to palpate the things it registers, so
;; bind-mount the store on the target.
(mkdir-p target-store)
(mount (%store-directory) target-store "" MS_BIND))
@ -354,6 +356,7 @@ SYSTEM-DIRECTORY is the name of the directory of the 'system' derivation."
(for-each (lambda (closure)
(register-closure target
(string-append "/xchg/" closure)
#:reset-timestamps? copy-closures?
#:deduplicate? deduplicate?))
closures)
(unless copy-closures?
@ -363,7 +366,7 @@ SYSTEM-DIRECTORY is the name of the directory of the 'system' derivation."
(display "populating...\n")
(populate-root-file-system system-directory target)
;; 'guix-register' resets timestamps and everything, so no need to do it
;; 'register-closure' resets timestamps and everything, so no need to do it
;; once more in that case.
(unless register-closures?
(reset-timestamps target))))
@ -406,42 +409,67 @@ SYSTEM-DIRECTORY is the name of the directory of the 'system' derivation."
register-closures? (closures '()))
"Given a GRUB package, creates an iso image as TARGET, using CONFIG-FILE as
GRUB configuration and OS-DRV as the stuff in it."
(let ((grub-mkrescue (string-append grub "/bin/grub-mkrescue"))
(target-store (string-append "/tmp/root" (%store-directory))))
(populate-root-file-system os-drv "/tmp/root")
(define grub-mkrescue
(string-append grub "/bin/grub-mkrescue"))
(mount (%store-directory) target-store "" MS_BIND)
(define target-store
(string-append "/tmp/root" (%store-directory)))
(when register-closures?
(display "registering closures...\n")
(for-each (lambda (closure)
(register-closure
"/tmp/root"
(string-append "/xchg/" closure)
;; XXX: Using deduplication causes cross device link errors.
#:deduplicate? #f))
closures))
(define items
;; The store items to add to the image.
(delete-duplicates
(append-map (lambda (closure)
(map store-info-item
(call-with-input-file (string-append "/xchg/" closure)
read-reference-graph)))
closures)))
(apply invoke
`(,grub-mkrescue "-o" ,target
,(string-append "boot/grub/grub.cfg=" config-file)
,(string-append "gnu/store=" os-drv "/..")
"etc=/tmp/root/etc"
"var=/tmp/root/var"
"run=/tmp/root/run"
;; /mnt is used as part of the installation
;; process, as the mount point for the target
;; file system, so create it.
"mnt=/tmp/root/mnt"
"--"
"-volid" ,(string-upcase volume-id)
,@(if volume-uuid
`("-volume_date" "uuid"
,(string-filter (lambda (value)
(not (char=? #\- value)))
(iso9660-uuid->string
volume-uuid)))
`())))))
(populate-root-file-system os-drv "/tmp/root")
(mount (%store-directory) target-store "" MS_BIND)
(when register-closures?
(display "registering closures...\n")
(for-each (lambda (closure)
(register-closure
"/tmp/root"
(string-append "/xchg/" closure)
;; TARGET-STORE is a read-only bind-mount so we shouldn't try
;; to modify it.
#:deduplicate? #f
#:reset-timestamps? #f))
closures)
(register-bootcfg-root "/tmp/root" config-file))
(let ((pipe
(apply open-pipe* OPEN_WRITE
grub-mkrescue "-o" target
(string-append "boot/grub/grub.cfg=" config-file)
"etc=/tmp/root/etc"
"var=/tmp/root/var"
"run=/tmp/root/run"
;; /mnt is used as part of the installation
;; process, as the mount point for the target
;; file system, so create it.
"mnt=/tmp/root/mnt"
"-path-list" "-"
"--"
"-volid" (string-upcase volume-id)
(if volume-uuid
`("-volume_date" "uuid"
,(string-filter (lambda (value)
(not (char=? #\- value)))
(iso9660-uuid->string
volume-uuid)))
`()))))
;; Pass lines like 'gnu/store/…-x=/gnu/store/…-x' corresponding to the
;; '-path-list -' option.
(for-each (lambda (item)
(format pipe "~a=~a~%"
(string-drop item 1) item))
items)
(unless (zero? (close-pipe pipe))
(error "oh, my! grub-mkrescue failed" grub-mkrescue))))
(define* (initialize-hard-disk device
#:key

View file

@ -96,6 +96,7 @@ GNU_SYSTEM_MODULES = \
%D%/packages/chez.scm \
%D%/packages/ci.scm \
%D%/packages/cinnamon.scm \
%D%/packages/cluster.scm \
%D%/packages/cmake.scm \
%D%/packages/cobol.scm \
%D%/packages/code.scm \
@ -321,6 +322,7 @@ GNU_SYSTEM_MODULES = \
%D%/packages/ocaml.scm \
%D%/packages/ocr.scm \
%D%/packages/onc-rpc.scm \
%D%/packages/opencl.scm \
%D%/packages/openbox.scm \
%D%/packages/openldap.scm \
%D%/packages/openstack.scm \
@ -470,6 +472,7 @@ GNU_SYSTEM_MODULES = \
%D%/services/desktop.scm \
%D%/services/dict.scm \
%D%/services/dns.scm \
%D%/services/authentication.scm \
%D%/services/games.scm \
%D%/services/kerberos.scm \
%D%/services/lirc.scm \
@ -580,6 +583,9 @@ dist_patch_DATA = \
%D%/packages/patches/azr3.patch \
%D%/packages/patches/bash-completion-directories.patch \
%D%/packages/patches/bazaar-CVE-2017-14176.patch \
%D%/packages/patches/beignet-correct-file-names.patch \
%D%/packages/patches/bind-CVE-2018-5738.patch \
%D%/packages/patches/binutils-aarch64-symbol-relocation.patch \
%D%/packages/patches/binutils-loongson-workaround.patch \
%D%/packages/patches/blast+-fix-makefile.patch \
%D%/packages/patches/boost-fix-icu-build.patch \
@ -634,12 +640,13 @@ dist_patch_DATA = \
%D%/packages/patches/docbook-xsl-nonrecursive-string-subst.patch \
%D%/packages/patches/doc++-include-directives.patch \
%D%/packages/patches/doc++-segfault-fix.patch \
%D%/packages/patches/dovecot-trees-support-dovecot-2.3.patch \
%D%/packages/patches/doxygen-gcc-ice.patch \
%D%/packages/patches/doxygen-test.patch \
%D%/packages/patches/dvd+rw-tools-add-include.patch \
%D%/packages/patches/e2fsprogs-glibc-2.27.patch \
%D%/packages/patches/eigen-arm-neon-fixes.patch \
%D%/packages/patches/elfutils-tests-ptrace.patch \
%D%/packages/patches/elixir-disable-failing-tests.patch \
%D%/packages/patches/elogind-glibc-2.27.patch \
%D%/packages/patches/einstein-build.patch \
%D%/packages/patches/emacs-browse-at-remote-cgit-gnu.patch \
@ -669,6 +676,7 @@ dist_patch_DATA = \
%D%/packages/patches/file-CVE-2017-1000249.patch \
%D%/packages/patches/findutils-localstatedir.patch \
%D%/packages/patches/findutils-test-xargs.patch \
%D%/packages/patches/flann-cmake-3.11.patch \
%D%/packages/patches/flint-ldconfig.patch \
%D%/packages/patches/fltk-shared-lib-defines.patch \
%D%/packages/patches/fltk-xfont-on-demand.patch \
@ -699,6 +707,7 @@ dist_patch_DATA = \
%D%/packages/patches/gcc-6-cross-environment-variables.patch \
%D%/packages/patches/gcc-6-source-date-epoch-1.patch \
%D%/packages/patches/gcc-6-source-date-epoch-2.patch \
%D%/packages/patches/gcc-8-strmov-store-file-names.patch \
%D%/packages/patches/gcr-disable-failing-tests.patch \
%D%/packages/patches/gcr-fix-collection-tests-to-work-with-gpg-21.patch \
%D%/packages/patches/gd-CVE-2018-5711.patch \
@ -782,14 +791,13 @@ dist_patch_DATA = \
%D%/packages/patches/hdf-eos5-remove-gctp.patch \
%D%/packages/patches/hdf-eos5-fix-szip.patch \
%D%/packages/patches/hdf-eos5-fortrantests.patch \
%D%/packages/patches/heimdal-CVE-2017-6594.patch \
%D%/packages/patches/heimdal-CVE-2017-11103.patch \
%D%/packages/patches/hmmer-remove-cpu-specificity.patch \
%D%/packages/patches/higan-remove-march-native-flag.patch \
%D%/packages/patches/hubbub-sort-entities.patch \
%D%/packages/patches/hurd-fix-eth-multiplexer-dependency.patch \
%D%/packages/patches/hydra-disable-darcs-test.patch \
%D%/packages/patches/icecat-avoid-bundled-libraries.patch \
%D%/packages/patches/icecat-bug-1413868-pt1.patch \
%D%/packages/patches/icecat-CVE-2018-5157-and-CVE-2018-5158.patch \
%D%/packages/patches/icecat-use-system-graphite2.patch \
%D%/packages/patches/icecat-use-system-harfbuzz.patch \
@ -799,6 +807,7 @@ dist_patch_DATA = \
%D%/packages/patches/isl-0.11.1-aarch64-support.patch \
%D%/packages/patches/jacal-fix-texinfo.patch \
%D%/packages/patches/java-apache-ivy-port-to-latest-bouncycastle.patch \
%D%/packages/patches/java-commons-collections-fix-java8.patch \
%D%/packages/patches/java-jeromq-fix-tests.patch \
%D%/packages/patches/java-powermock-fix-java-files.patch \
%D%/packages/patches/java-simple-xml-fix-tests.patch \
@ -866,6 +875,7 @@ dist_patch_DATA = \
%D%/packages/patches/libmad-mips-newgcc.patch \
%D%/packages/patches/libmygpo-qt-fix-qt-5.11.patch \
%D%/packages/patches/libmygpo-qt-missing-qt5-modules.patch \
%D%/packages/patches/libreoffice-icu.patch \
%D%/packages/patches/libsndfile-armhf-type-checks.patch \
%D%/packages/patches/libsndfile-CVE-2017-8361-8363-8365.patch \
%D%/packages/patches/libsndfile-CVE-2017-8362.patch \
@ -876,6 +886,8 @@ dist_patch_DATA = \
%D%/packages/patches/libtheora-config-guess.patch \
%D%/packages/patches/libtiff-CVE-2017-9935.patch \
%D%/packages/patches/libtiff-CVE-2017-18013.patch \
%D%/packages/patches/libtiff-CVE-2018-8905.patch \
%D%/packages/patches/libtiff-CVE-2018-10963.patch \
%D%/packages/patches/libtool-skip-tests2.patch \
%D%/packages/patches/libusb-0.1-disable-tests.patch \
%D%/packages/patches/libusb-for-axoloti.patch \
@ -913,6 +925,8 @@ dist_patch_DATA = \
%D%/packages/patches/mars-install.patch \
%D%/packages/patches/mars-sfml-2.3.patch \
%D%/packages/patches/maxima-defsystem-mkdir.patch \
%D%/packages/patches/maven-generate-component-xml.patch \
%D%/packages/patches/maven-generate-javax-inject-named.patch \
%D%/packages/patches/mcron-install.patch \
%D%/packages/patches/mcrypt-CVE-2012-4409.patch \
%D%/packages/patches/mcrypt-CVE-2012-4426.patch \
@ -932,6 +946,8 @@ dist_patch_DATA = \
%D%/packages/patches/mozjs38-shell-version.patch \
%D%/packages/patches/mozjs38-tracelogger.patch \
%D%/packages/patches/mozjs38-version-detection.patch \
%D%/packages/patches/mrrescue-support-love-11.patch \
%D%/packages/patches/mumble-1.2.19-abs.patch \
%D%/packages/patches/mumps-build-parallelism.patch \
%D%/packages/patches/mupen64plus-ui-console-notice.patch \
%D%/packages/patches/mupen64plus-video-z64-glew-correct-path.patch \
@ -950,10 +966,12 @@ dist_patch_DATA = \
%D%/packages/patches/nvi-assume-preserve-path.patch \
%D%/packages/patches/nvi-dbpagesize-binpower.patch \
%D%/packages/patches/nvi-db4.patch \
%D%/packages/patches/nyx-show-header-stats-with-python3.patch \
%D%/packages/patches/ocaml-bisect-fix-camlp4-in-another-directory.patch \
%D%/packages/patches/ocaml-bitstring-fix-configure.patch \
%D%/packages/patches/ocaml-CVE-2015-8869.patch \
%D%/packages/patches/ocaml-Add-a-.file-directive.patch \
%D%/packages/patches/ocaml-enable-ocamldoc-reproducibility.patch \
%D%/packages/patches/ocaml-findlib-make-install.patch \
%D%/packages/patches/ocaml-graph-honor-source-date-epoch.patch \
%D%/packages/patches/omake-fix-non-determinism.patch \
@ -964,7 +982,12 @@ dist_patch_DATA = \
%D%/packages/patches/openldap-CVE-2017-9287.patch \
%D%/packages/patches/openocd-nrf52.patch \
%D%/packages/patches/openscenegraph-ffmpeg3.patch \
%D%/packages/patches/opensmtpd-fix-crash.patch \
%D%/packages/patches/openssl-runpath.patch \
%D%/packages/patches/openssl-1.0.2-CVE-2018-0495.patch \
%D%/packages/patches/openssl-1.0.2-CVE-2018-0732.patch \
%D%/packages/patches/openssl-1.1.0-CVE-2018-0495.patch \
%D%/packages/patches/openssl-1.1.0-CVE-2018-0732.patch \
%D%/packages/patches/openssl-1.1.0-c-rehash-in.patch \
%D%/packages/patches/openssl-c-rehash-in.patch \
%D%/packages/patches/orpheus-cast-errors-and-includes.patch \
@ -974,12 +997,12 @@ dist_patch_DATA = \
%D%/packages/patches/p7zip-CVE-2016-9296.patch \
%D%/packages/patches/p7zip-CVE-2017-17969.patch \
%D%/packages/patches/p7zip-remove-unused-code.patch \
%D%/packages/patches/password-store-gnupg-compat.patch \
%D%/packages/patches/patchelf-page-size.patch \
%D%/packages/patches/patchelf-rework-for-arm.patch \
%D%/packages/patches/patchutils-xfail-gendiff-tests.patch \
%D%/packages/patches/patch-hurd-path-max.patch \
%D%/packages/patches/perf-gcc-ice.patch \
%D%/packages/patches/perl-archive-tar-CVE-2018-12015.patch \
%D%/packages/patches/perl-file-path-CVE-2017-6512.patch \
%D%/packages/patches/perl-autosplit-default-time.patch \
%D%/packages/patches/perl-dbd-mysql-CVE-2017-10788.patch \
@ -1042,7 +1065,6 @@ dist_patch_DATA = \
%D%/packages/patches/python-genshi-stripping-of-unsafe-script-tags.patch \
%D%/packages/patches/python2-larch-coverage-4.0a6-compatibility.patch \
%D%/packages/patches/python-networkx2-reproducible-build.patch \
%D%/packages/patches/python-nose-timer-drop-ordereddict.patch \
%D%/packages/patches/python-pillow-fix-failing-tests.patch \
%D%/packages/patches/python2-rdflib-drop-sparqlwrapper.patch \
%D%/packages/patches/python-scikit-learn-fix-test-non-determinism.patch \
@ -1060,6 +1082,7 @@ dist_patch_DATA = \
%D%/packages/patches/python-unittest2-remove-argparse.patch \
%D%/packages/patches/python-waitress-fix-tests.patch \
%D%/packages/patches/qemu-glibc-2.27.patch \
%D%/packages/patches/qemu-CVE-2018-11806.patch \
%D%/packages/patches/qt4-ldflags.patch \
%D%/packages/patches/qtbase-use-TZDIR.patch \
%D%/packages/patches/qtscript-disable-tests.patch \
@ -1103,7 +1126,6 @@ dist_patch_DATA = \
%D%/packages/patches/slim-login.patch \
%D%/packages/patches/sooperlooper-build-with-wx-30.patch \
%D%/packages/patches/steghide-fixes.patch \
%D%/packages/patches/strace-kernel-4.16.patch \
%D%/packages/patches/superlu-dist-scotchmetis.patch \
%D%/packages/patches/swish-e-search.patch \
%D%/packages/patches/swish-e-format-security.patch \
@ -1149,6 +1171,7 @@ dist_patch_DATA = \
%D%/packages/patches/ustr-fix-build-with-gcc-5.patch \
%D%/packages/patches/util-linux-tests.patch \
%D%/packages/patches/upower-builddir.patch \
%D%/packages/patches/upx-fix-CVE-2017-15056.patch \
%D%/packages/patches/valgrind-enable-arm.patch \
%D%/packages/patches/valgrind-glibc-compat.patch \
%D%/packages/patches/vinagre-revert-1.patch \
@ -1180,6 +1203,7 @@ dist_patch_DATA = \
%D%/packages/patches/wpa-supplicant-fix-nonce-reuse.patch \
%D%/packages/patches/wpa-supplicant-krack-followups.patch \
%D%/packages/patches/wxmaxima-do-not-use-old-gnuplot-parameters.patch \
%D%/packages/patches/x265-fix-ppc64le-build.patch \
%D%/packages/patches/xboing-CVE-2004-0149.patch \
%D%/packages/patches/xdotool-fix-makefile.patch \
%D%/packages/patches/xf86-video-ark-remove-mibstore.patch \
@ -1195,7 +1219,6 @@ dist_patch_DATA = \
%D%/packages/patches/xinetd-fix-fd-leak.patch \
%D%/packages/patches/xinetd-CVE-2013-4342.patch \
%D%/packages/patches/xmodmap-asprintf.patch \
%D%/packages/patches/libyaml-CVE-2014-9130.patch \
%D%/packages/patches/zathura-plugindir-environment-variable.patch
MISC_DISTRO_FILES = \

View file

@ -21,6 +21,7 @@
;;; Copyright © 2017, 2018 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2018 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2018 Pierre-Antoine Rouby <pierre-antoine.rouby@inria.fr>
;;; Copyright © 2018 Rutger Helling <rhelling@mykolab.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -139,13 +140,13 @@ usual file attributes can be checked for inconsistencies.")
(define-public progress
(package
(name "progress")
(version "0.13.1")
(version "0.14")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/Xfennec/"
name "/archive/v" version ".tar.gz"))
(sha256
(base32 "199rk6608q9m6l0fbjm0xl2w1c5krf8245dqnksdp4rqp7l9ak06"))
(base32 "1wcanixfsi5k4i9h5vrnncgjdncalsdfqllrxibxwpgfnf20sji1"))
(file-name (string-append name "-" version ".tar.gz"))))
(build-system gnu-build-system)
(native-inputs
@ -255,7 +256,7 @@ services.")
(origin
(method url-fetch)
(uri (string-append
"http://projects.gw-computing.net/attachments/download/615/dfc-"
"https://projects.gw-computing.net/attachments/download/615/dfc-"
version ".tar.gz"))
(sha256
(base32
@ -263,7 +264,7 @@ services.")
(build-system cmake-build-system)
(arguments '(#:tests? #f)) ; There are no tests.
(native-inputs `(("gettext" ,gettext-minimal)))
(home-page "http://projects.gw-computing.net/projects/dfc")
(home-page "https://projects.gw-computing.net/projects/dfc")
(synopsis "Display file system space usage using graphs and colors")
(description
"dfc (df color) is a modern version of df. It uses colors, draws pretty
@ -507,7 +508,7 @@ allow automatic login and starting any app.")
"This package provides the /etc/services, /etc/protocols, and /etc/rpc
files, which contain information about the IANA-assigned port, protocol, and
ONC RPC numbers.")
(home-page "http://packages.debian.org/sid/netbase")
(home-page "https://packages.debian.org/sid/netbase")
(license license:gpl2)))
(define-public netcat
@ -752,7 +753,7 @@ tools: server, client, and relay agent.")
(version "1.8.1")
(source (origin
(method url-fetch)
(uri (string-append "http://www.tcpdump.org/release/libpcap-"
(uri (string-append "https://www.tcpdump.org/release/libpcap-"
version ".tar.gz"))
(sha256
(base32
@ -761,7 +762,7 @@ tools: server, client, and relay agent.")
(native-inputs `(("bison" ,bison) ("flex" ,flex)))
(arguments '(#:configure-flags '("--with-pcap=linux")
#:tests? #f)) ; no 'check' target
(home-page "http://www.tcpdump.org")
(home-page "https://www.tcpdump.org")
(synopsis "Network packet capture library")
(description
"libpcap is an interface for user-level packet capture. It provides a
@ -777,7 +778,7 @@ network statistics collection, security monitoring, network debugging, etc.")
(version "4.9.2")
(source (origin
(method url-fetch)
(uri (string-append "http://www.tcpdump.org/release/tcpdump-"
(uri (string-append "https://www.tcpdump.org/release/tcpdump-"
version ".tar.gz"))
(sha256
(base32
@ -786,7 +787,7 @@ network statistics collection, security monitoring, network debugging, etc.")
(inputs `(("libpcap" ,libpcap)
("openssl" ,openssl)))
(native-inputs `(("perl" ,perl))) ; for tests
(home-page "http://www.tcpdump.org/")
(home-page "https://www.tcpdump.org/")
(synopsis "Network packet analyzer")
(description
"Tcpdump is a command-line tool to analyze network traffic passing
@ -822,41 +823,36 @@ by bandwidth they use.")
(define-public clusterssh
(package
(name "clusterssh")
(version "3.28")
(version "4.13.2")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/clusterssh/"
"1.%20ClusterSSH%20Series%203/" version
"/clusterssh-" version ".tar.gz"))
"2.%20ClusterSSH%20Series%204/"
"App-ClusterSSH-v" version ".tar.gz"))
(sha256
(base32
"1bwggpvaj2al5blg1ynapviv2kpydffpzq2zkhi81najnvzc1rr7"))))
(build-system gnu-build-system)
(inputs `(("perl" ,perl)))
(propagated-inputs `(("xterm" ,xterm)
("perl-tk" ,perl-tk)
("perl-x11-protocol" ,perl-x11-protocol)))
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'install 'set-load-paths
(lambda* (#:key inputs outputs #:allow-other-keys)
;; Put the perl-tk and perl-x11-protocol modules in the perl inc
;; path for PROG
(let* ((out (assoc-ref outputs "out"))
(prog (string-append out "/bin/cssh"))
(perl-ver ,(package-version perl))
(x11-inc (string-append
(assoc-ref inputs "perl-x11-protocol")
"/lib/perl5/site_perl/" perl-ver))
(tk-inc (string-append
(assoc-ref inputs "perl-tk")
"/lib/perl5/site_perl/" perl-ver
"/x86_64-linux")))
(wrap-program
prog
`("PERL5LIB" ":" prefix (,x11-inc ,tk-inc))))
#t)))))
"0rmk2p3f2wz1h092anidjclh212rv3gxyk0c641qk3frlrjnw6mp"))))
(build-system perl-build-system)
(native-inputs
`(("perl-cpan-changes" ,perl-cpan-changes)
("perl-file-slurp" ,perl-file-slurp)
("perl-file-which" ,perl-file-which)
("perl-module-build" ,perl-module-build)
("perl-readonly" ,perl-readonly)
("perl-test-differences" ,perl-test-differences)
("perl-test-distmanifest" ,perl-test-distmanifest)
("perl-test-perltidy" ,perl-test-perltidy)
("perl-test-pod" ,perl-test-pod)
("perl-test-pod-coverage" ,perl-test-pod-coverage)
("perl-test-trap" ,perl-test-trap)
("perltidy" ,perltidy)))
(propagated-inputs
`(("xterm" ,xterm)
("perl-exception-class" ,perl-exception-class)
("perl-tk" ,perl-tk)
("perl-try-tiny" ,perl-try-tiny)
("perl-x11-protocol" ,perl-x11-protocol)
("perl-x11-protocol-other" ,perl-x11-protocol-other)))
;; The clusterssh.sourceforge.net address requires login to view
(home-page "https://sourceforge.net/projects/clusterssh/")
(synopsis "Secure concurrent multi-server terminal control")
@ -869,7 +865,7 @@ over ssh connections.")
(define-public rename
(package
(name "rename")
(version "0.20")
(version "0.35")
(source (origin
(method url-fetch)
(uri (string-append
@ -877,7 +873,7 @@ over ssh connections.")
version ".tar.gz"))
(sha256
(base32
"1cf6xx2hiy1xalp35fh8g73j67r0w0g66jpcbc6971x9jbm7bvjy"))))
"052iqmn7ya3w1nadpiyavmr3rx566r0lbflx94y8b5wx9q5c16rq"))))
(build-system perl-build-system)
(native-inputs
`(("perl-module-build" ,perl-module-build)
@ -1047,7 +1043,7 @@ commands and their arguments.")
(source (origin
(method url-fetch)
(uri (string-append
"http://w1.fi/releases/wpa_supplicant-"
"https://w1.fi/releases/wpa_supplicant-"
version
".tar.gz"))
(patches (search-patches "wpa-supplicant-CVE-2017-13082.patch"
@ -1108,7 +1104,7 @@ commands and their arguments.")
("libgcrypt" ,libgcrypt))) ;needed by crypto_gnutls.c
(native-inputs
`(("pkg-config" ,pkg-config)))
(home-page "http://w1.fi/wpa_supplicant/")
(home-page "https://w1.fi/wpa_supplicant/")
(synopsis "Connecting to WPA and WPA2-protected wireless networks")
(description
"wpa_supplicant is a WPA Supplicant with support for WPA and WPA2 (IEEE
@ -1225,7 +1221,7 @@ This package provides the 'wpa_supplicant' daemon and the 'wpa_cli' command.")
(string-append "--mandir=" out
"/share/man")))))))
#:tests? #f))
(home-page "http://kernel.org") ; really, no home page
(home-page "https://www.kernel.org") ; really, no home page
(synopsis "Send a wake-on-LAN packet")
(description
"WakeLan broadcasts a properly formatted UDP packet across the local area
@ -1460,7 +1456,7 @@ track changes in important system configuration files.")
(source (origin
(method url-fetch)
(uri (string-append
"http://people.redhat.com/sgrubb/libcap-ng/libcap-ng-"
"https://people.redhat.com/sgrubb/libcap-ng/libcap-ng-"
version ".tar.gz"))
(sha256
(base32
@ -1655,7 +1651,7 @@ limits.")
(define-public autojump
(package
(name "autojump")
(version "22.3.4")
(version "22.5.1")
(source
(origin
(method url-fetch)
@ -1664,7 +1660,7 @@ limits.")
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"113rcpr37ngf2xs8da41qdarq5qmj0dwx8ggqy3lhlb0kvqq7g9z"))))
"17z9j9936x0nizwrzf664bngh60x5qbvrrf1s5qdzd0f2gdanpvn"))))
(build-system gnu-build-system)
(native-inputs ;for tests
`(("python-mock" ,python-mock)
@ -1672,36 +1668,19 @@ limits.")
(inputs
`(("python" ,python-wrapper)))
(arguments
`(#:phases (modify-phases %standard-phases
(delete 'configure)
(delete 'build)
(replace 'check
(lambda _
(zero?
(system* "python" "tests/unit/autojump_utils_test.py"))))
(replace 'install
;; The install.py script doesn't allow system installation
;; into an arbitrary prefix, so do our own install.
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(bin (string-append out "/bin"))
(share (string-append out "/share/autojump"))
(py (string-append out "/lib/python"
,(version-major+minor
(package-version python-wrapper))
"/site-packages"))
(man (string-append out "/share/man/man1")))
(install-file "bin/autojump" bin)
(for-each (λ (f) (install-file f py))
(find-files "bin" "\\.py$"))
(for-each (λ (f) (install-file f share))
(find-files "bin" "autojump\\..*$"))
(substitute* (string-append share "/autojump.sh")
(("/usr/local") out))
(install-file "docs/autojump.1" man)
(wrap-program (string-append bin "/autojump")
`("PYTHONPATH" ":" prefix (,py)))
#t))))))
`(#:phases
(modify-phases %standard-phases
(delete 'configure)
(delete 'build)
(replace 'check
(lambda _
(invoke "python" "tests/unit/autojump_utils_test.py")))
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(setenv "SHELL" (which "bash"))
(invoke "python" "install.py"
(string-append "--destdir="
(assoc-ref outputs "out"))))))))
(home-page "https://github.com/wting/autojump")
(synopsis "Shell extension for file system navigation")
(description
@ -1796,13 +1775,13 @@ platform-specific methods.")
(version "2.4.5")
(source (origin
(method url-fetch)
(uri (string-append "http://people.redhat.com/sgrubb/audit/"
(uri (string-append "https://people.redhat.com/sgrubb/audit/"
"audit-" version ".tar.gz"))
(sha256
(base32
"1q1q51dvxscbi4kbakmd4bn0xrvwwaiwvaya79925cbrqwzxsg77"))))
(build-system gnu-build-system)
(home-page "http://people.redhat.com/sgrubb/audit/")
(home-page "https://people.redhat.com/sgrubb/audit/")
(arguments
`(#:configure-flags (list "--with-python=no")
#:phases
@ -2131,7 +2110,7 @@ with @code{ChallengeResponseAuthentication} and @code{PrivilegeSeparation}
enabled, and supports extensive configuration either by PAM options or in
krb5.conf or both. PKINIT is supported with recent versions of both MIT
Kerberos and Heimdal and FAST is supported with recent MIT Kerberos.")
(home-page "http://www.eyrie.org/~eagle/software/pam-krb5")
(home-page "https://www.eyrie.org/~eagle/software/pam-krb5")
;; Dual licenced under a homebrew non-copyleft OR GPL (any version)
;; However, the tarball does not contain a copy of the GPL, so unless
;; we put one in, we cannot distribute it under GPL without violating
@ -2359,11 +2338,23 @@ Intel DRM Driver.")
"13r0b0hllgf8j9rh6x1knmbgvingbdmx046aazv6vck2ll120mw1"))))
(build-system python-build-system)
(arguments
`(#:python ,python-2)) ; Python 2 only
`(#:python ,python-2 ; Python 2 only
#:phases
(modify-phases %standard-phases
(replace 'check
(lambda _
(invoke
"nosetests" "-v" "tests/"
;; This test hangs indefinitely when run on a single core VM
;; (see GNU bug #26647 and Debian bug #850230).
"--exclude=test_nested_execution_with_explicit_ports"
;; This test randomly fails in certain environments causing too
;; much noise to be useful (see Debian bug #854686).
"--exclude=test_should_use_sentinel_for_tasks_that_errored"))))))
(native-inputs
`(("python2-fudge" ,python2-fudge)
("python2-jinja2" ,python2-jinja2)
("python2-nose" ,python2-nose)
`(("python2-fudge" ,python2-fudge) ; Requires < 1.0
("python2-jinja2" ,python2-jinja2) ; Requires < 3.0
("python2-nose" ,python2-nose) ; Requires < 2.0
("python2-pynacl" ,python2-pynacl)
("python2-bcrypt" ,python2-bcrypt)))
(propagated-inputs
@ -2383,15 +2374,15 @@ tool for remote execution and deployment.")
(define-public neofetch
(package
(name "neofetch")
(version "3.4.0")
(version "5.0.0")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/dylanaraps/neofetch/"
"archive/" version ".tar.gz"))
(file-name (string-append name "-" version ".tar.gz"))
(method git-fetch)
(uri (git-reference
(url "https://github.com/dylanaraps/neofetch")
(commit version)))
(sha256
(base32
"18rhamy910ig03rr55y9x5i6pf78yj9xc6jpm6nfh3gqja7340rb"))))
"0yzyi2p0d8xp576lxyv5m9h60dl1d5dmrn40aad307872835b9rr"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; there are no tests
@ -2399,31 +2390,11 @@ tool for remote execution and deployment.")
(list (string-append "PREFIX=" %output))
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'patch-target-directories
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(substitute* "Makefile"
(("\\$\\(DESTDIR\\)/etc/")
"$(PREFIX)/etc/"))
(substitute* "neofetch"
(("\"/etc/neofetch")
(string-append "\"" out "/etc/neofetch"))
(("\"/usr/share/neofetch")
(string-append "\"" out "/share/neofetch"))))
#t))
(delete 'configure) ; no configure script
(replace 'install
(lambda* (#:key make-flags outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(doc (string-append out "/share/doc/" ,name "-" ,version))
(etc (string-append doc "/examples/etc")))
(zero? (apply system* `("make" ,@make-flags
,(string-append "SYSCONFDIR=" etc)
"install")))))))))
(delete 'configure)))) ; no configure script
(home-page "https://github.com/dylanaraps/neofetch")
(synopsis "System info script")
(description "Neofetch is a CLI system information tool written in Bash.
Neofetch displays information about your system next to an image, your OS
(synopsis "System information script")
(description "Neofetch is a command-line system information tool written in
Bash. Neofetch displays information about your system next to an image, your OS
logo, or any ASCII file of your choice. The main purpose of Neofetch is to be
used in screenshots to show other users what operating system or distribution
you are running, what theme or icon set you are using, etc.")
@ -2661,7 +2632,7 @@ Python loading in HPC environments.")
(let ((real-name "inxi"))
(package
(name "inxi-minimal")
(version "3.0.11-1")
(version "3.0.13-1")
(source
(origin
(method git-fetch)
@ -2670,7 +2641,7 @@ Python loading in HPC environments.")
(commit version)))
(sha256
(base32
"07wihl4gsamq98mhxvm6k4vpphym75467cxfa19b3g5ggpyq894g"))))
"0732ligzmzwpwaxin4g8rbfj91ghyvf69lx2jyrahi4df0bfamh5"))))
(build-system trivial-build-system)
(inputs
`(("bash" ,bash)
@ -2727,10 +2698,10 @@ Python loading in HPC environments.")
(string-append %output "/share/man/man1")))
#t)))
(home-page "https://smxi.org/docs/inxi.htm")
(synopsis "Full featured system information script")
(synopsis "Full-featured system information script")
(description "Inxi is a system information script that can display
various things about your hardware and software to users in an IRC chatroom or
support forum. It runs with the /exec command in most IRC clients.")
support forum. It runs with the @code{/exec} command in most IRC clients.")
(license license:gpl3+))))
(define-public inxi

View file

@ -2,6 +2,7 @@
;;; Copyright © 2014 John Darringon <jmd@gnu.org>
;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2017 Hartmut Goebel <h.goebel@crazy-compilers.com>
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;;
;;; This file is part of GNU Guix.
;;;
@ -51,7 +52,7 @@ formats.")
(define-public qrencode
(package
(name "qrencode")
(version "4.0.0")
(version "4.0.2")
(source (origin
(method url-fetch)
(uri (string-append
@ -59,7 +60,7 @@ formats.")
".tar.bz2"))
(sha256
(base32
"02vx69fl52jbcrmnydsaxcmy6nxqm9jyxzd7hr07s491d7hka069"))))
"1d2q5d3v8g3hsi3h5jq4n177bjhf3kawms09immw7p187f6jgjy9"))))
(build-system gnu-build-system)
(inputs `(("libpng" ,libpng)))
(native-inputs `(("pkg-config" ,pkg-config)))

View file

@ -143,7 +143,7 @@ solve the shortest vector problem.")
(source (origin
(method url-fetch)
(uri (string-append
"http://pari.math.u-bordeaux.fr/pub/pari/unix/pari-"
"https://pari.math.u-bordeaux.fr/pub/pari/unix/pari-"
version ".tar.gz"))
(sha256
(base32
@ -174,7 +174,7 @@ polynomials, power series, algebraic numbers, etc., and a lot of
transcendental functions.
PARI is also available as a C library to allow for faster computations.")
(license license:gpl2+)
(home-page "http://pari.math.u-bordeaux.fr/")))
(home-page "https://pari.math.u-bordeaux.fr/")))
(define-public gp2c
(package
@ -183,7 +183,7 @@ PARI is also available as a C library to allow for faster computations.")
(source (origin
(method url-fetch)
(uri (string-append
"http://pari.math.u-bordeaux.fr/pub/pari/GP2C/gp2c-"
"https://pari.math.u-bordeaux.fr/pub/pari/GP2C/gp2c-"
version ".tar.gz"))
(sha256
(base32
@ -208,7 +208,7 @@ PARI is also available as a C library to allow for faster computations.
GP2C, the GP to C compiler, translates GP scripts to PARI programs.")
(license license:gpl2)
(home-page "http://pari.math.u-bordeaux.fr/")))
(home-page "https://pari.math.u-bordeaux.fr/")))
(define-public giac-xcas
(package
@ -746,7 +746,7 @@ Sine Transform} (DST) and @dfn{Discrete Hartley Transform} (DHT).")
;; Then run 'CTest' with -V so we get more
;; details upon failure.
(zero? (system* "ctest" "-V" dash-j)))))))))
(home-page "http://eigen.tuxfamily.org")
(home-page "https://eigen.tuxfamily.org")
(synopsis "C++ template library for linear algebra")
(description
"Eigen is a C++ template library for linear algebra: matrices, vectors,

View file

@ -1,5 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2015, 2017 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;;
;;; This file is part of GNU Guix.
;;;
@ -52,7 +53,7 @@
(base32
"0ii73nsd3xzkhz6w1rnxwphl637j9w82xiy6apa9vin2isdynnmc"))))
(build-system gnu-build-system)
(home-page "http://www.synfig.org")
(home-page "https://www.synfig.org")
(synopsis "Extended C++ template library")
(description
"ETL is a class and template library designed to add new datatypes and
@ -130,7 +131,7 @@ C++ @dfn{Standard Template Library} (STL).")
("pango" ,pango)))
(native-inputs
`(("pkg-config" ,pkg-config)))
(home-page "http://www.synfig.org")
(home-page "https://www.synfig.org")
(synopsis "Vector-based 2D animation renderer")
(description
"Synfig is a vector-based 2D animation package. It is designed to be
@ -180,7 +181,7 @@ for tweening, preventing the need to hand-draw each frame.")
(native-inputs
`(("pkg-config" ,pkg-config)
("intltool" ,intltool)))
(home-page "http://www.synfig.org")
(home-page "https://www.synfig.org")
(synopsis "Vector-based 2D animation package (GUI)")
(description
"Synfig is a vector-based 2D animation package. It is designed to
@ -226,10 +227,10 @@ contains the graphical user interface for synfig.")
"\nLIBS +=" libsndfile
"/lib/libsndfile.so\n"
"win32 {"))))
(zero? (system* "qmake"
(string-append "DESTDIR="
(assoc-ref outputs "out")
"/bin")))))
(invoke "qmake"
(string-append "DESTDIR="
(assoc-ref outputs "out")
"/bin"))))
;; Ensure that all required Qt plugins are found at runtime.
(add-after 'install 'wrap-executable
(lambda* (#:key inputs outputs #:allow-other-keys)
@ -248,7 +249,7 @@ contains the graphical user interface for synfig.")
("libsndfile" ,libsndfile)))
(native-inputs
`(("qttools" ,qttools)))
(home-page "http://www.lostmarble.com/papagayo/")
(home-page "https://www.lostmarble.com/papagayo/")
(synopsis "Lip-syncing for animations")
(description
"Papagayo is a lip-syncing program designed to help you line up

View file

@ -116,7 +116,9 @@ header.")
`(("cfitsio" ,cfitsio)
("gsl" ,gsl)
("libjpeg" ,libjpeg)
("wcslib" ,wcslib)))
("libtiff" ,libtiff)
("wcslib" ,wcslib)
("zlib" ,zlib)))
(build-system gnu-build-system)
(home-page "https://www.gnu.org/software/gnuastro/")
(synopsis "Astronomy utilities")

View file

@ -1220,7 +1220,7 @@ patches that can be used with softsynths such as Timidity and WildMidi.")
(define-public guitarix
(package
(name "guitarix")
(version "0.36.1")
(version "0.37.1")
(source (origin
(method url-fetch)
(uri (string-append
@ -1228,7 +1228,7 @@ patches that can be used with softsynths such as Timidity and WildMidi.")
version ".tar.xz"))
(sha256
(base32
"1g5949jwh2n755xjs3kcbdb8a1wxr5mn0m115wdnk27dxcdn93b0"))))
"064k0jzxqgx9gwf8za6jziansabzrwzjaim3qx1743ify5g3gaai"))))
(build-system waf-build-system)
(arguments
`(#:tests? #f ; no "check" target
@ -1476,7 +1476,7 @@ synchronous execution of all clients, and low latency operation.")
(version "1.6.0")
(source (origin
(method url-fetch)
(uri (string-append "http://download.drobilla.net/jalv-"
(uri (string-append "https://download.drobilla.net/jalv-"
version ".tar.bz2"))
(sha256
(base32
@ -1501,7 +1501,7 @@ synchronous execution of all clients, and low latency operation.")
("jack" ,jack-1)))
(native-inputs
`(("pkg-config" ,pkg-config)))
(home-page "http://drobilla.net/software/jalv/")
(home-page "https://drobilla.net/software/jalv/")
(synopsis "Simple LV2 host for JACK")
(description
"Jalv is a simple but fully featured LV2 host for JACK. It runs LV2
@ -1711,7 +1711,7 @@ included are the command line utilities @code{send_osc} and @code{dump_osc}.")
(version "0.24.2")
(source (origin
(method url-fetch)
(uri (string-append "http://download.drobilla.net/lilv-"
(uri (string-append "https://download.drobilla.net/lilv-"
version ".tar.bz2"))
(sha256
(base32
@ -1737,7 +1737,7 @@ included are the command line utilities @code{send_osc} and @code{dump_osc}.")
`(("lv2" ,lv2)))
(native-inputs
`(("pkg-config" ,pkg-config)))
(home-page "http://drobilla.net/software/lilv/")
(home-page "https://drobilla.net/software/lilv/")
(synopsis "Library to simplify use of LV2 plugins in applications")
(description
"Lilv is a C library to make the use of LV2 plugins as simple as possible
@ -1890,7 +1890,7 @@ lv2-c++-tools.")
(define-public openal
(package
(name "openal")
(version "1.17.2")
(version "1.18.2")
(source (origin
(method url-fetch)
(uri (string-append
@ -1898,7 +1898,7 @@ lv2-c++-tools.")
version ".tar.bz2"))
(sha256
(base32
"051k5fy8pk4fd9ha3qaqcv08xwbks09xl5qs4ijqq2qz5xaghhd3"))))
"10kydm8701a2kppiss9sdidn1820cmzhqgx1b2bsa5dsgzic32lz"))))
(build-system cmake-build-system)
(arguments
`(#:tests? #f ; no check target
@ -1966,7 +1966,7 @@ buffers, and audio capture.")
(version "1.0.0")
(source (origin
(method url-fetch)
(uri (string-append "http://download.drobilla.net/patchage-"
(uri (string-append "https://download.drobilla.net/patchage-"
version
".tar.bz2"))
(sha256
@ -1984,7 +1984,7 @@ buffers, and audio capture.")
("dbus-glib" ,dbus-glib)))
(native-inputs
`(("pkg-config" ,pkg-config)))
(home-page "http://drobilla.net/software/patchage/")
(home-page "https://drobilla.net/software/patchage/")
(synopsis "Modular patch bay for audio and MIDI systems")
(description
"Patchage is a modular patch bay for audio and MIDI systems based on JACK
@ -2163,7 +2163,7 @@ using GuixSD.")
(version "0.8.0")
(source (origin
(method url-fetch)
(uri (string-append "http://download.drobilla.net/raul-"
(uri (string-append "https://download.drobilla.net/raul-"
version ".tar.bz2"))
(sha256
(base32
@ -2177,7 +2177,7 @@ using GuixSD.")
("boost" ,boost)))
(native-inputs
`(("pkg-config" ,pkg-config)))
(home-page "http://drobilla.net/software/raul/")
(home-page "https://drobilla.net/software/raul/")
(synopsis "Real-time audio utility library")
(description
"Raul (Real-time Audio Utility Library) is a C++ utility library primarily
@ -2194,7 +2194,7 @@ aimed at audio/musical applications.")
(source (origin
(method git-fetch)
(uri (git-reference
(url "http://git.drobilla.net/raul.git")
(url "https://git.drobilla.net/raul.git")
(commit commit)))
(file-name (string-append name "-" version "-checkout"))
(sha256
@ -2249,7 +2249,7 @@ tempo and pitch of an audio recording independently of one another.")
#:phases (modify-phases %standard-phases
(add-after
'unpack 'autoconf
(lambda _ (zero? (system* "autoreconf" "-vfi"))))
(lambda _ (invoke "autoreconf" "-vfi")))
(add-before
'build 'fix-makefile
(lambda _
@ -2287,7 +2287,7 @@ input/output.")
(version "0.6.0")
(source (origin
(method url-fetch)
(uri (string-append "http://download.drobilla.net/sratom-"
(uri (string-append "https://download.drobilla.net/sratom-"
version ".tar.bz2"))
(sha256
(base32
@ -2300,7 +2300,7 @@ input/output.")
("sord" ,sord)))
(native-inputs
`(("pkg-config" ,pkg-config)))
(home-page "http://drobilla.net/software/sratom/")
(home-page "https://drobilla.net/software/sratom/")
(synopsis "Library for serialising LV2 atoms to/from RDF")
(description
"Sratom is a library for serialising LV2 atoms to/from RDF, particularly
@ -2313,7 +2313,7 @@ the Turtle syntax.")
(version "0.10.0")
(source (origin
(method url-fetch)
(uri (string-append "http://download.drobilla.net/suil-"
(uri (string-append "https://download.drobilla.net/suil-"
version ".tar.bz2"))
(sha256
(base32
@ -2330,7 +2330,7 @@ the Turtle syntax.")
("qt" ,qtbase)))
(native-inputs
`(("pkg-config" ,pkg-config)))
(home-page "http://drobilla.net/software/suil/")
(home-page "https://drobilla.net/software/suil/")
(synopsis "Library for loading and wrapping LV2 plugin UIs")
(description
"Suil is a lightweight C library for loading and wrapping LV2 plugin UIs.
@ -2723,7 +2723,7 @@ portions of LAME.")
(modify-phases %standard-phases
(add-after 'unpack 'autoreconf
(lambda _
(zero? (system* "autoreconf" "-vif")))))
(invoke "autoreconf" "-vif"))))
#:tests? #f)) ;no 'check' target
(home-page "http://www.portaudio.com/")
(synopsis "Audio I/O library")
@ -2791,9 +2791,8 @@ synthesizer written in C++.")
(replace 'configure
(lambda* (#:key outputs #:allow-other-keys)
(setenv "CC" "gcc")
(zero?
(system* "./configure"
(string-append "--prefix=" (assoc-ref outputs "out")))))))
(invoke "./configure"
(string-append "--prefix=" (assoc-ref outputs "out"))))))
;; No 'check' target.
#:tests? #f))
(home-page "http://themaister.net/rsound.html")

View file

@ -10,6 +10,7 @@
;;; Copyright © 2017 Christopher Allan Webber <cwebber@dustycloud.org>
;;; Copyright © 2017 Rutger Helling <rhelling@mykolab.com>
;;; Copyright © 2018 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2018 Oleg Pykhalov <go.wigust@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -32,6 +33,7 @@
#:use-module (guix download)
#:use-module (guix utils)
#:use-module (guix build-system gnu)
#:use-module (guix build-system go)
#:use-module (guix build-system python)
#:use-module (gnu packages)
#:use-module (gnu packages acl)
@ -45,6 +47,7 @@
#:use-module (gnu packages ftp)
#:use-module (gnu packages glib)
#:use-module (gnu packages gnupg)
#:use-module (gnu packages golang)
#:use-module (gnu packages gperf)
#:use-module (gnu packages guile)
#:use-module (gnu packages linux)
@ -64,7 +67,7 @@
(define-public duplicity
(package
(name "duplicity")
(version "0.7.12")
(version "0.7.17")
(source
(origin
(method url-fetch)
@ -74,12 +77,13 @@
version ".tar.gz"))
(sha256
(base32
"1rhgrz2lm9vbfdp2raykrih1c6n2lw5jd572z4dsz488m52avjqi"))))
"0jmh3h09680xyf33hzxxxl74bwz66zqhzvjlj7j89r9rz3qwa91p"))))
(build-system python-build-system)
(native-inputs
`(("util-linux" ,util-linux) ;setsid command, for the tests
("par2cmdline" ,par2cmdline)
("python-pexpect" ,python2-pexpect)
("python-fasteners" ,python2-fasteners)
("mock" ,python2-mock)))
(propagated-inputs
`(("lockfile" ,python2-lockfile)
@ -143,7 +147,7 @@ spying and/or modification by the server.")
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'autoreconf
(lambda _ (zero? (system* "autoreconf" "-vfi")))))))
(lambda _ (invoke "autoreconf" "-vfi"))))))
(synopsis "File verification and repair tools")
(description "Par2cmdline uses Reed-Solomon error-correcting codes to
generate and verify PAR2 recovery files. These files can be distributed
@ -416,7 +420,7 @@ rdiff-backup is easy to use and settings have sensible defaults.")
"t/backup_exec/conf/backup_exec.conf")
(("/bin/true") (which "true"))
(("/bin/false") (which "false")))
(zero? (system* "make" "test")))))))
(invoke "make" "test"))))))
(inputs
`(("perl" ,perl)
("rsync" ,rsync)))
@ -471,13 +475,13 @@ detection, and lossless compression.")
(define-public borg
(package
(name "borg")
(version "1.1.5")
(version "1.1.6")
(source
(origin
(method url-fetch)
(uri (pypi-uri "borgbackup" version))
(sha256
(base32 "0gbdnq7ks46diz6y2pf6wpwkb9hy6hp3immi7jg3h7w72b3ycmj3"))
(base32 "0c09j46fi8i7klas0bh82a4whlwnajshk0izkgax6fjxr1sf9lm1"))
(modules '((guix build utils)))
(snippet
'(begin
@ -510,17 +514,6 @@ detection, and lossless compression.")
;; HOME=/homeless-shelter.
(setenv "HOME" "/tmp")
#t)))
;; Later versions of msgpack were disallowed to some warnings and lack
;; of support for Python versions that we don't support anyways. So,
;; it's okay to to keep using more recents versions of msgpack for
;; Borg. Also see the note about msgpack in the list of inputs.
;; https://github.com/borgbackup/borg/issues/3517#issuecomment-357221978
(add-before 'build 'adjust-msgpack-dependency
(lambda _
(substitute* "setup.py"
(("msgpack-python>=0.4.6,<0.5.0")
"msgpack-python>=0.4.6"))
#t))
;; The tests need to be run after Borg is installed.
(delete 'check)
(add-after 'install 'check
@ -530,25 +523,24 @@ detection, and lossless compression.")
;; The tests should be run in an empty directory.
(mkdir-p "tests")
(with-directory-excursion "tests"
(zero?
(system* "py.test" "-v" "--pyargs" "borg.testsuite" "-k"
(string-append
;; These tests need to write to '/var'.
"not test_get_cache_dir "
"and not test_get_config_dir "
"and not test_get_keys_dir "
"and not test_get_security_dir "
;; These tests assume there is a root user in
;; '/etc/passwd'.
"and not test_access_acl "
"and not test_default_acl "
"and not test_non_ascii_acl "
;; This test needs the unpackaged pytest-benchmark.
"and not benchmark "
;; These tests assume the kernel supports FUSE.
"and not test_fuse "
"and not test_fuse_allow_damaged_files "
"and not test_mount_hardlinks"))))))
(invoke "py.test" "-v" "--pyargs" "borg.testsuite" "-k"
(string-append
;; These tests need to write to '/var'.
"not test_get_cache_dir "
"and not test_get_config_dir "
"and not test_get_keys_dir "
"and not test_get_security_dir "
;; These tests assume there is a root user in
;; '/etc/passwd'.
"and not test_access_acl "
"and not test_default_acl "
"and not test_non_ascii_acl "
;; This test needs the unpackaged pytest-benchmark.
"and not benchmark "
;; These tests assume the kernel supports FUSE.
"and not test_fuse "
"and not test_fuse_allow_damaged_files "
"and not test_mount_hardlinks")))))
(add-after 'install 'install-doc
(lambda* (#:key inputs outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
@ -559,11 +551,9 @@ detection, and lossless compression.")
"docs/misc/internals-picture.txt"
"docs/misc/prune-example.txt"))
(add-installed-pythonpath inputs outputs)
(and
(zero? (system* "python3" "setup.py" "build_man"))
(begin
(copy-recursively "docs/man" man)
#t))))))))
(invoke "python3" "setup.py" "build_man")
(copy-recursively "docs/man" man)
#t))))))
(native-inputs
`(("python-cython" ,python-cython)
("python-setuptools-scm" ,python-setuptools-scm)
@ -693,17 +683,17 @@ NTFS volumes using @code{ntfs-3g}, preserving NTFS-specific attributes.")
(replace 'check
(lambda _
(substitute* "obnamlib/vfs_local_tests.py"
;; Check for the nobody user instead of root
;; Check for the nobody user instead of root.
(("self.fs.get_username\\(0\\), 'root'")
"self.fs.get_username(65534), 'nobody'")
;; Disable tests checking for root group
;; Disable tests checking for root group.
(("self.fs.get_groupname\\(0\\)") "'root'"))
(substitute* "obnamlib/vfs_local.py"
;; Don't cover get_groupname function
;; Don't cover get_groupname function.
(("def get_groupname\\(self, gid\\):")
"def get_groupname(self, gid): # pragma: no cover"))
;; Can't run network tests
(zero? (system* "./check" "--unit-tests")))))))
;; Can't run network tests.
(invoke "./check" "--unit-tests"))))))
(inputs
`(("python2-cliapp" ,python2-cliapp)
("python2-larch" ,python2-larch)
@ -832,3 +822,114 @@ file systems with unattended creation and expiration. A dirvish backup vault
is like a time machine for your data. ")
(license (license:fsf-free "file://COPYING"
"Open Software License 2.0"))))
(define-public restic
(package
(name "restic")
(version "0.9.1")
;; TODO Try packaging the bundled / vendored dependencies in the 'vendor/'
;; directory.
(source (origin
(method url-fetch)
(uri (string-append
"https://github.com/restic/restic/releases/download/"
"v" version "/restic-" version ".tar.gz"))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"15f0rsm2lxk4lmn4773q28g49p68pqyyx0ccp7r556asan73p79m"))))
(build-system go-build-system)
(arguments
`(#:import-path "github.com/restic/restic"
#:unpack-path "github.com/restic"
;; We don't need to install the source code for end-user applications.
#:install-source? #f
#:phases
(modify-phases %standard-phases
(replace 'build
(lambda* (#:key inputs #:allow-other-keys)
(with-directory-excursion (string-append
"src/github.com/restic/restic-"
,version)
(invoke "go" "run" "build.go"))))
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out"))
(src (string-append "src/github.com/restic/restic-"
,version)))
(install-file (string-append src "/restic")
(string-append out "/bin"))
#t)))
(add-after 'install 'install-docs
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(man "/share/man")
(man-section (string-append man "/man"))
(src (string-append "src/github.com/restic/restic-"
,version "/doc/man/")))
;; Install all the man pages to "out".
(for-each
(lambda (file)
(install-file file
(string-append out man-section
(string-take-right file 1))))
(find-files src "\\.[1-9]"))
#t)))
(add-after 'install-docs 'install-shell-completion
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(bin (string-append out "/bin"))
(etc (string-append out "/etc"))
(share (string-append out "/share")))
(for-each
(lambda (shell)
(let* ((shell-name (symbol->string shell))
(dir (string-append "etc/completion/" shell-name)))
(mkdir-p dir)
(invoke (string-append bin "/restic") "generate"
(string-append "--" shell-name "-completion")
(string-append dir "/"
(case shell
((bash) "restic")
((zsh) "_restic"))))))
'(bash zsh))
(with-directory-excursion "etc/completion"
(install-file "bash/restic"
(string-append etc "/bash_completion.d"))
(install-file "zsh/_restic"
(string-append share "/zsh/site-functions")))
#t))))))
(home-page "https://restic.net/")
(synopsis "Backup program with multiple revisions, encryption and more")
(description "Restic is a program that does backups right and was designed
with the following principles in mind:
@itemize
@item Easy: Doing backups should be a frictionless process, otherwise you
might be tempted to skip it. Restic should be easy to configure and use, so
that, in the event of a data loss, you can just restore it. Likewise,
restoring data should not be complicated.
@item Fast: Backing up your data with restic should only be limited by your
network or hard disk bandwidth so that you can backup your files every day.
Nobody does backups if it takes too much time. Restoring backups should only
transfer data that is needed for the files that are to be restored, so that
this process is also fast.
@item Verifiable: Much more important than backup is restore, so restic
enables you to easily verify that all data can be restored. @item Secure:
Restic uses cryptography to guarantee confidentiality and integrity of your
data. The location the backup data is stored is assumed not to be a trusted
environment (e.g. a shared space where others like system administrators are
able to access your backups). Restic is built to secure your data against
such attackers.
@item Efficient: With the growth of data, additional snapshots should only
take the storage of the actual increment. Even more, duplicate data should be
de-duplicated before it is actually written to the storage back end to save
precious backup space.
@end itemize")
(license license:bsd-2)))

View file

@ -480,6 +480,17 @@ included.")
(license gpl3+)
(home-page "https://www.gnu.org/software/binutils/")))
(define-public binutils/fixed
;; TODO: Incorporate this in binutils during the next rebuild cycle.
(hidden-package
(package
(inherit binutils)
(source (origin
(inherit (package-source binutils))
(patches (append (origin-patches (package-source binutils))
(search-patches
"binutils-aarch64-symbol-relocation.patch"))))))))
(define* (make-ld-wrapper name #:key
(target (const #f))
binutils

View file

@ -2,6 +2,7 @@
;;; Copyright © 2016, 2017 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2017 Dave Love <fx@gnu.org>
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net>
;;;
;;; This file is part of GNU Guix.
;;;
@ -34,15 +35,14 @@
(define-public fio
(package
(name "fio")
(version "3.6")
(version "3.7")
(source (origin
(method url-fetch)
(uri (string-append
"http://brick.kernel.dk/snaps/"
"fio-" version ".tar.bz2"))
(uri (string-append "http://brick.kernel.dk/snaps/"
"fio-" version ".tar.gz"))
(sha256
(base32
"1d2jibp1b2dq97f22wj6pcjl7gbd2kmhfggj2c7q3j8v9axjqsh2"))))
"0rw9jf2ikm19lq4jizavdvvp3vfvlm3annq7jsxl2y5nf1pi2qr7"))))
(build-system gnu-build-system)
(arguments
'(#:test-target "test"

View file

@ -24,10 +24,11 @@
#:use-module (guix download)
#:use-module (guix build-system r)
#:use-module (gnu packages)
#:use-module (gnu packages bioinformatics)
#:use-module (gnu packages cran)
#:use-module (gnu packages compression)
#:use-module (gnu packages statistics)
#:use-module (gnu packages bioinformatics))
#:use-module (gnu packages graph)
#:use-module (gnu packages statistics))
(define-public r-bsgenome-dmelanogaster-ucsc-dm6
(package
@ -61,6 +62,111 @@ melanogaster (Fly) as provided by UCSC (dm6) and stored in Biostrings
objects.")
(license license:artistic2.0)))
(define-public r-bsgenome-dmelanogaster-ucsc-dm3-masked
(package
(name "r-bsgenome-dmelanogaster-ucsc-dm3-masked")
(version "1.3.99")
(source (origin
(method url-fetch)
;; We cannot use bioconductor-uri here because this tarball is
;; located under "data/annotation/" instead of "bioc/".
(uri (string-append "http://www.bioconductor.org/packages/"
"release/data/annotation/src/contrib/"
"BSgenome.Dmelanogaster.UCSC.dm3.masked_"
version ".tar.gz"))
(sha256
(base32
"1756csb09f1br9rj1l3f08qyh4hlymdbd0cfn8x3fq39dn45m5ap"))))
(properties
`((upstream-name . "BSgenome.Dmelanogaster.UCSC.dm3.masked")))
(build-system r-build-system)
(propagated-inputs
`(("r-bsgenome" ,r-bsgenome)
("r-bsgenome-dmelanogaster-ucsc-dm3"
,r-bsgenome-dmelanogaster-ucsc-dm3)))
(home-page "https://www.bioconductor.org/packages/BSgenome.Dmelanogaster.UCSC.dm3.masked/")
(synopsis "Full masked genome sequences for Fly")
(description
"This package provides full masked genome sequences for Drosophila
melanogaster (Fly) as provided by UCSC (dm3, April 2006) and stored in
Biostrings objects. The sequences are the same as in
BSgenome.Dmelanogaster.UCSC.dm3, except that each of them has the 4 following
masks on top: (1) the mask of assembly gaps (AGAPS mask), (2) the mask of
intra-contig ambiguities (AMB mask), (3) the mask of repeats from
RepeatMasker (RM mask), and (4) the mask of repeats from Tandem Repeats
Finder (TRF mask). Only the AGAPS and AMB masks are \"active\" by default.")
(license license:artistic2.0)))
(define-public r-bsgenome-hsapiens-ucsc-hg19-masked
(package
(name "r-bsgenome-hsapiens-ucsc-hg19-masked")
(version "1.3.99")
(source (origin
(method url-fetch)
;; We cannot use bioconductor-uri here because this tarball is
;; located under "data/annotation/" instead of "bioc/".
(uri (string-append "http://www.bioconductor.org/packages/"
"release/data/annotation/src/contrib/"
"BSgenome.Hsapiens.UCSC.hg19.masked_"
version ".tar.gz"))
(sha256
(base32
"0452pyah0kv1vsrsjbrqw4k2rm8lc2vc771dzib45gnnfz86qxrr"))))
(properties
`((upstream-name . "BSgenome.Hsapiens.UCSC.hg19.masked")))
(build-system r-build-system)
(propagated-inputs
`(("r-bsgenome" ,r-bsgenome)
("r-bsgenome-hsapiens-ucsc-hg19"
,r-bsgenome-hsapiens-ucsc-hg19)))
(home-page "https://bioconductor.org/packages/BSgenome.Hsapiens.UCSC.hg19.masked/")
(synopsis "Full masked genome sequences for Homo sapiens")
(description
"This package provides full genome sequences for Homo sapiens (Human) as
provided by UCSC (hg19, Feb. 2009) and stored in Biostrings objects. The
sequences are the same as in BSgenome.Hsapiens.UCSC.hg19, except that each of
them has the 4 following masks on top: (1) the mask of assembly gaps (AGAPS
mask), (2) the mask of intra-contig ambiguities (AMB mask), (3) the mask of
repeats from RepeatMasker (RM mask), and (4) the mask of repeats from Tandem
Repeats Finder (TRF mask). Only the AGAPS and AMB masks are \"active\" by
default.")
(license license:artistic2.0)))
(define-public r-bsgenome-mmusculus-ucsc-mm9-masked
(package
(name "r-bsgenome-mmusculus-ucsc-mm9-masked")
(version "1.3.99")
(source (origin
(method url-fetch)
;; We cannot use bioconductor-uri here because this tarball is
;; located under "data/annotation/" instead of "bioc/".
(uri (string-append "http://www.bioconductor.org/packages/"
"release/data/annotation/src/contrib/"
"BSgenome.Mmusculus.UCSC.mm9.masked_"
version ".tar.gz"))
(sha256
(base32
"00bpbm3havqcxr4g63zhllsbpd9q6svgihks7qp7x73nm4gvq7fn"))))
(properties
`((upstream-name . "BSgenome.Mmusculus.UCSC.mm9.masked")))
(build-system r-build-system)
(propagated-inputs
`(("r-bsgenome" ,r-bsgenome)
("r-bsgenome-mmusculus-ucsc-mm9"
,r-bsgenome-mmusculus-ucsc-mm9)))
(home-page "http://bioconductor.org/packages/BSgenome.Mmusculus.UCSC.mm9.masked/")
(synopsis "Full masked genome sequences for Mouse")
(description
"This package provides full genome sequences for Mus musculus (Mouse) as
provided by UCSC (mm9, Jul. 2007) and stored in Biostrings objects. The
sequences are the same as in BSgenome.Mmusculus.UCSC.mm9, except that each of
them has the 4 following masks on top: (1) the mask of assembly gaps (AGAPS
mask), (2) the mask of intra-contig ambiguities (AMB mask), (3) the mask of
repeats from RepeatMasker (RM mask), and (4) the mask of repeats from Tandem
Repeats Finder (TRF mask). Only the AGAPS and AMB masks are \"active\" by
default." )
(license license:artistic2.0)))
(define-public r-hpar
(package
(name "r-hpar")
@ -371,3 +477,201 @@ filtered to remove spurious regions in the genome. Downstream steps of
segmentation and calling are also implemented via packages DNAcopy and CGHcall,
respectively.")
(license license:gpl2+)))
(define-public r-bayseq
(package
(name "r-bayseq")
(version "2.14.0")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "baySeq" version))
(sha256
(base32
"0hbmm01a8libara9mbxknpk0wzarwfngnfwlmhpww91a0cmy5klg"))))
(properties `((upstream-name . "baySeq")))
(build-system r-build-system)
(propagated-inputs
`(("r-abind" ,r-abind)
("r-edger" ,r-edger)
("r-genomicranges" ,r-genomicranges)))
(home-page "https://bioconductor.org/packages/baySeq/")
(synopsis "Bayesian analysis of differential expression patterns in count data")
(description
"This package identifies differential expression in high-throughput count
data, such as that derived from next-generation sequencing machines,
calculating estimated posterior likelihoods of differential expression (or
more complex hypotheses) via empirical Bayesian methods.")
(license license:gpl3)))
(define-public r-chipcomp
(package
(name "r-chipcomp")
(version "1.10.0")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "ChIPComp" version))
(sha256
(base32
"0j9nif7z33qdxf347r9wa62hhz8qs09r2p96x3hg5yz30a10ahqs"))))
(properties `((upstream-name . "ChIPComp")))
(build-system r-build-system)
(propagated-inputs
`(("r-biocgenerics" ,r-biocgenerics)
("r-bsgenome-hsapiens-ucsc-hg19" ,r-bsgenome-hsapiens-ucsc-hg19)
("r-bsgenome-mmusculus-ucsc-mm9" ,r-bsgenome-mmusculus-ucsc-mm9)
("r-genomeinfodb" ,r-genomeinfodb)
("r-genomicranges" ,r-genomicranges)
("r-iranges" ,r-iranges)
("r-limma" ,r-limma)
("r-rsamtools" ,r-rsamtools)
("r-rtracklayer" ,r-rtracklayer)
("r-s4vectors" ,r-s4vectors)))
(home-page "https://bioconductor.org/packages/ChIPComp")
(synopsis "Quantitative comparison of multiple ChIP-seq datasets")
(description
"ChIPComp implements a statistical method for quantitative comparison of
multiple ChIP-seq datasets. It detects differentially bound sharp binding
sites across multiple conditions considering matching control in ChIP-seq
datasets.")
;; Any version of the GPL.
(license license:gpl3+)))
(define-public r-riboprofiling
(package
(name "r-riboprofiling")
(version "1.10.0")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "RiboProfiling" version))
(sha256
(base32
"04yjklqdjkim7yxyk3cyvf0mmwyxyfvw2mmfzgwaaqbiyg29sli0"))))
(properties `((upstream-name . "RiboProfiling")))
(build-system r-build-system)
(propagated-inputs
`(("r-biocgenerics" ,r-biocgenerics)
("r-biostrings" ,r-biostrings)
("r-data-table" ,r-data-table)
("r-genomeinfodb" ,r-genomeinfodb)
("r-genomicalignments" ,r-genomicalignments)
("r-genomicfeatures" ,r-genomicfeatures)
("r-genomicranges" ,r-genomicranges)
("r-ggbio" ,r-ggbio)
("r-ggplot2" ,r-ggplot2)
("r-iranges" ,r-iranges)
("r-plyr" ,r-plyr)
("r-reshape2" ,r-reshape2)
("r-rsamtools" ,r-rsamtools)
("r-rtracklayer" ,r-rtracklayer)
("r-s4vectors" ,r-s4vectors)
("r-sqldf" ,r-sqldf)))
(home-page "https://bioconductor.org/packages/RiboProfiling/")
(synopsis "Ribosome profiling data analysis")
(description "Starting with a BAM file, this package provides the
necessary functions for quality assessment, read start position recalibration,
the counting of genomic sequence reads on CDS, 3'UTR, and 5'UTR, and plotting
of count data: pairs, log fold-change, codon frequency and coverage
assessment, principal component analysis on codon coverage.")
(license license:gpl3)))
(define-public r-riboseqr
(package
(name "r-riboseqr")
(version "1.14.0")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "riboSeqR" version))
(sha256
(base32
"0xavd1cdhi8qfjn9a1hjhflyg6jq1ydvv56z12gjz572pwz2knvn"))))
(properties `((upstream-name . "riboSeqR")))
(build-system r-build-system)
(propagated-inputs
`(("r-abind" ,r-abind)
("r-bayseq" ,r-bayseq)
("r-genomeinfodb" ,r-genomeinfodb)
("r-genomicranges" ,r-genomicranges)
("r-iranges" ,r-iranges)
("r-rsamtools" ,r-rsamtools)
("r-seqlogo" ,r-seqlogo)))
(home-page "https://bioconductor.org/packages/riboSeqR/")
(synopsis "Analysis of sequencing data from ribosome profiling experiments")
(description
"This package provides plotting functions, frameshift detection and
parsing of genetic sequencing data from ribosome profiling experiments.")
(license license:gpl3)))
(define-public r-interactionset
(package
(name "r-interactionset")
(version "1.8.0")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "InteractionSet" version))
(sha256
(base32
"0xngraq7ic80jr98i1wqp8bxdgidq6py60m2wfk82n1ixpcdck8n"))))
(properties
`((upstream-name . "InteractionSet")))
(build-system r-build-system)
(propagated-inputs
`(("r-biocgenerics" ,r-biocgenerics)
("r-genomeinfodb" ,r-genomeinfodb)
("r-genomicranges" ,r-genomicranges)
("r-iranges" ,r-iranges)
("r-matrix" ,r-matrix)
("r-rcpp" ,r-rcpp)
("r-s4vectors" ,r-s4vectors)
("r-summarizedexperiment" ,r-summarizedexperiment)))
(home-page "https://bioconductor.org/packages/InteractionSet")
(synopsis "Base classes for storing genomic interaction data")
(description
"This packages provides the @code{GInteractions},
@code{InteractionSet} and @code{ContactMatrix} objects and associated methods
for storing and manipulating genomic interaction data from Hi-C and ChIA-PET
experiments.")
(license license:gpl3)))
(define-public r-genomicinteractions
(package
(name "r-genomicinteractions")
(version "1.14.0")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "GenomicInteractions" version))
(sha256
(base32
"0cnagprxj0b7p6s29iyhqwxj7hgmrh75gj52y4dlil790d1bmq2q"))))
(properties
`((upstream-name . "GenomicInteractions")))
(build-system r-build-system)
(propagated-inputs
`(("r-biobase" ,r-biobase)
("r-biocgenerics" ,r-biocgenerics)
("r-data-table" ,r-data-table)
("r-dplyr" ,r-dplyr)
("r-genomeinfodb" ,r-genomeinfodb)
("r-genomicranges" ,r-genomicranges)
("r-ggplot2" ,r-ggplot2)
("r-gridextra" ,r-gridextra)
("r-gviz" ,r-gviz)
("r-igraph" ,r-igraph)
("r-interactionset" ,r-interactionset)
("r-iranges" ,r-iranges)
("r-rsamtools" ,r-rsamtools)
("r-rtracklayer" ,r-rtracklayer)
("r-s4vectors" ,r-s4vectors)
("r-stringr" ,r-stringr)))
(home-page "https://github.com/ComputationalRegulatoryGenomicsICL/GenomicInteractions/")
(synopsis "R package for handling genomic interaction data")
(description
"This R package provides tools for handling genomic interaction data,
such as ChIA-PET/Hi-C, annotating genomic features with interaction
information and producing various plots and statistics.")
(license license:gpl3)))

View file

@ -5826,15 +5826,16 @@ application of SortMeRNA is filtering rRNA from metatranscriptomic data.")
(define-public star
(package
(name "star")
(version "2.6.0a")
(version "2.6.0c")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/alexdobin/STAR/archive/"
version ".tar.gz"))
(file-name (string-append name "-" version ".tar.gz"))
(method git-fetch)
(uri (git-reference
(url "https://github.com/alexdobin/STAR.git")
(commit version)))
(file-name (string-append name "-" version "-checkout"))
(sha256
(base32
"0yci4ymy4407kjh0lqp021nzccp6r31wgrkixkmix5p130cxvc56"))
"04cj6jw8d9q6lk9c78wa4fky6jdlicf1d13plq7182h8vqiz8p59"))
(modules '((guix build utils)))
(snippet
'(begin
@ -6938,13 +6939,13 @@ Bioconductor, CRAN, and Github.")
(define-public r-biocviews
(package
(name "r-biocviews")
(version "1.48.0")
(version "1.48.2")
(source (origin
(method url-fetch)
(uri (bioconductor-uri "biocViews" version))
(sha256
(base32
"1yx2lir67ny0j150wyfqca0wsxp84byri8nscbs9qlndkh2jppq9"))))
"01yiafayl1m5704xdd2cn3zjc78rs10dqyz66lr3qkf6d8w66938"))))
(properties
`((upstream-name . "biocViews")))
(build-system r-build-system)
@ -7082,14 +7083,14 @@ support for default values, positional argument support, etc.")
(define-public r-optparse
(package
(name "r-optparse")
(version "1.4.4")
(version "1.6.0")
(source
(origin
(method url-fetch)
(uri (cran-uri "optparse" version))
(sha256
(base32
"1ff4wmsszrb3spwfp7ynfs8w11qpy1sdzfxm1wk8dqqvdwris7qb"))))
"1d7v5gl45x4amsfmzn5zyyffyqlc7a82h01szlnda22viyxids0h"))))
(build-system r-build-system)
(propagated-inputs
`(("r-getopt" ,r-getopt)))
@ -7127,13 +7128,13 @@ abnormal copy number.")
(define-public r-s4vectors
(package
(name "r-s4vectors")
(version "0.18.2")
(version "0.18.3")
(source (origin
(method url-fetch)
(uri (bioconductor-uri "S4Vectors" version))
(sha256
(base32
"0qvj2j0zl4djjl7vrwc6xak6h8dxr53iwypfbcvfb3sh7jwhdiz5"))))
"02bps2rpjqx2npwxq3x62ncwi9ggr165cwi56h6hld28bw2gddy8"))))
(properties
`((upstream-name . "S4Vectors")))
(build-system r-build-system)
@ -7586,13 +7587,13 @@ files.")
(define-public r-delayedarray
(package
(name "r-delayedarray")
(version "0.6.0")
(version "0.6.1")
(source (origin
(method url-fetch)
(uri (bioconductor-uri "DelayedArray" version))
(sha256
(base32
"0n3w57cwy911q812wc8658y0v3xgpmg379sj98kfqdxa80z1mxdf"))))
"0sjwszxdi0vkj2i2di5i46gh9chc660yr3gs5nk9qnqp77713zds"))))
(properties
`((upstream-name . "DelayedArray")))
(build-system r-build-system)
@ -8528,43 +8529,51 @@ paired-end data.")
(define-public r-rcas
(package
(name "r-rcas")
(version "1.3.4")
(version "1.6.0")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/BIMSBbioinfo/RCAS/archive/v"
version ".tar.gz"))
(file-name (string-append name "-" version ".tar.gz"))
(uri (bioconductor-uri "RCAS" version))
(sha256
(base32
"1qgc7vi6fpzl440yg7jhiycg5q336kd4pxqzx10yx2zcq3bq3msg"))))
"0vmn7a0rm2ban0kaxrf5danhss2r4hfhnwh5889fjcgqy300fdd5"))))
(build-system r-build-system)
(native-inputs
`(("r-knitr" ,r-knitr)
("r-testthat" ,r-testthat)
`(("r-testthat" ,r-testthat)
;; During vignette building knitr checks that "pandoc-citeproc"
;; is in the PATH.
("ghc-pandoc-citeproc" ,ghc-pandoc-citeproc-with-pandoc-1)))
(propagated-inputs
`(("r-data-table" ,r-data-table)
`(("r-biocgenerics" ,r-biocgenerics)
("r-biomart" ,r-biomart)
("r-org-hs-eg-db" ,r-org-hs-eg-db)
("r-org-ce-eg-db" ,r-org-ce-eg-db)
("r-org-dm-eg-db" ,r-org-dm-eg-db)
("r-org-mm-eg-db" ,r-org-mm-eg-db)
("r-biostrings" ,r-biostrings)
("r-bsgenome-hsapiens-ucsc-hg19" ,r-bsgenome-hsapiens-ucsc-hg19)
("r-bsgenome-mmusculus-ucsc-mm9" ,r-bsgenome-mmusculus-ucsc-mm9)
("r-bsgenome-celegans-ucsc-ce10" ,r-bsgenome-celegans-ucsc-ce10)
("r-bsgenome-dmelanogaster-ucsc-dm3" ,r-bsgenome-dmelanogaster-ucsc-dm3)
("r-topgo" ,r-topgo)
("r-cowplot" ,r-cowplot)
("r-data-table" ,r-data-table)
("r-dbi" ,r-dbi)
("r-dt" ,r-dt)
("r-pbapply" ,r-pbapply)
("r-plotly" ,r-plotly)
("r-plotrix" ,r-plotrix)
("r-motifrg" ,r-motifrg)
("r-genomation" ,r-genomation)
("r-genomicfeatures" ,r-genomicfeatures)
("r-ggplot2" ,r-ggplot2)
("r-ggseqlogo" ,r-ggseqlogo)
("r-knitr" ,r-knitr)
("r-motifrg" ,r-motifrg)
("r-org-hs-eg-db" ,r-org-hs-eg-db)
("r-org-ce-eg-db" ,r-org-ce-eg-db)
("r-org-dm-eg-db" ,r-org-dm-eg-db)
("r-org-mm-eg-db" ,r-org-mm-eg-db)
("r-pbapply" ,r-pbapply)
("r-pheatmap" ,r-pheatmap)
("r-plotly" ,r-plotly)
("r-plotrix" ,r-plotrix)
("r-proxy" ,r-proxy)
("r-rsqlite" ,r-rsqlite)
("r-rtracklayer" ,r-rtracklayer)
("r-rmarkdown" ,r-rmarkdown)))
("r-rmarkdown" ,r-rmarkdown)
("r-s4vectors" ,r-s4vectors)
("r-topgo" ,r-topgo)))
(synopsis "RNA-centric annotation system")
(description
"RCAS aims to be a standalone RNA-centric annotation system that provides
@ -8576,7 +8585,7 @@ library implementing most of the pipeline's features.")
(define-public rcas-web
(package
(name "rcas-web")
(version "0.0.4")
(version "0.0.5")
(source
(origin
(method url-fetch)
@ -8585,7 +8594,7 @@ library implementing most of the pipeline's features.")
"/rcas-web-" version ".tar.gz"))
(sha256
(base32
"1p16frfys41a8yaa4gkm457nzkqhqs2pc3lkac0ds457w9w5j1gm"))))
"0igz7jpcf7cm9800zcag6p3gd1i649figrhbdba6cjkm8f4gfspr"))))
(build-system gnu-build-system)
(arguments
`(#:phases
@ -9696,13 +9705,13 @@ and irregular enzymatic cleavages, mass measurement accuracy, etc.")
(define-public r-seurat
(package
(name "r-seurat")
(version "2.3.1")
(version "2.3.2")
(source (origin
(method url-fetch)
(uri (cran-uri "Seurat" version))
(sha256
(base32
"0hi59rgdrr2iqfvx5bq7yq02hbjxkjl1fzidqj14z0ypq0nzbjys"))
"1sjpy5rrpvlpm6hs7qy7qpglgbp7zrgfybcsalpmjb51rhxhgcg1"))
;; Delete pre-built jar.
(snippet
'(begin (delete-file "inst/java/ModularityOptimizer.jar")
@ -9746,6 +9755,7 @@ Main-Class: ModularityOptimizer\n")))
("r-ggplot2" ,r-ggplot2)
("r-ggridges" ,r-ggridges)
("r-gplots" ,r-gplots)
("r-hdf5r" ,r-hdf5r)
("r-hmisc" ,r-hmisc)
("r-ica" ,r-ica)
("r-igraph" ,r-igraph)
@ -10060,14 +10070,14 @@ provide added flexibility for data combination and manipulation.")
(define-public r-complexheatmap
(package
(name "r-complexheatmap")
(version "1.18.0")
(version "1.18.1")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "ComplexHeatmap" version))
(sha256
(base32
"0z57mrginzd40niy51dvnyqgbrij05ji0dbwqs3x2as80sq28i3q"))))
"0qjwz1hzpjnc90jiinjkikfnr0shi72q3zfdjjz7pxydy0mglq8n"))))
(properties
`((upstream-name . "ComplexHeatmap")))
(build-system r-build-system)
@ -11439,7 +11449,7 @@ applications for tackling some common problems in a user-friendly way.")
("python2-numpy" ,python2-numpy)
("python2-matplotlib" ,python2-matplotlib)
("python2-pysam" ,python2-pysam)))
(home-page "http://3dgenomes.github.io/TADbit/")
(home-page "https://3dgenomes.github.io/TADbit/")
(synopsis "Analyze, model, and explore 3C-based data")
(description
"TADbit is a complete Python library to deal with all steps to analyze,
@ -12715,7 +12725,7 @@ contains
#:phases
(modify-phases %standard-phases
;; FIXME: fails with "java.io.FileNotFoundException:
;; /gnu/store/q76y0ximcziplgfpbn26kbw4h3s14f33-dropseq-tools-1.13/share/java/lib/biojava-alignment.jar"
;; /gnu/store/-dropseq-tools-1.13/share/java/lib/biojava-alignment.jar"
(delete 'generate-jar-indices)
;; All dependencies must be linked to "lib", because that's where
;; they will be searched for when the Class-Path property of the
@ -12896,7 +12906,7 @@ expression report comparing samples in an easily configurable manner.")
(define-public pigx-chipseq
(package
(name "pigx-chipseq")
(version "0.0.15")
(version "0.0.17")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/BIMSBbioinfo/pigx_chipseq/"
@ -12904,20 +12914,10 @@ expression report comparing samples in an easily configurable manner.")
"/pigx_chipseq-" version ".tar.gz"))
(sha256
(base32
"11v9v3vyda0sv4cl45nki7mm4v4bjfcdq7a70kcvi9h465nq66wg"))))
"1c0x5lswvc8v9fw4iynl5rcfs7h7clzp4hqdnl65ia7rk35n4zg9"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; parts of the tests rely on access to the network
#:phases
(modify-phases %standard-phases
(add-after 'install 'wrap-executable
;; Make sure the executable finds all R modules.
(lambda* (#:key inputs outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(wrap-program (string-append out "/bin/pigx-chipseq")
`("R_LIBS_SITE" ":" = (,(getenv "R_LIBS_SITE")))
`("PYTHONPATH" ":" = (,(getenv "PYTHONPATH")))))
#t)))))
;; parts of the tests rely on access to the network
(arguments '(#:tests? #f))
(inputs
`(("grep" ,grep)
("coreutils" ,coreutils)
@ -12976,7 +12976,7 @@ in an easily configurable manner.")
(define-public pigx-bsseq
(package
(name "pigx-bsseq")
(version "0.0.8")
(version "0.0.9")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/BIMSBbioinfo/pigx_bsseq/"
@ -12984,7 +12984,7 @@ in an easily configurable manner.")
"/pigx_bsseq-" version ".tar.gz"))
(sha256
(base32
"0irlnlhhw9fd4ha7hksrxn3y7j76mz5qq1wjswbs9p364laqg69y"))))
"0j1dfjk8m1p1h6d5yw63scjlbx56z8gixmbw626w1vcyblg0frmz"))))
(build-system gnu-build-system)
(arguments
`(#:phases
@ -13043,7 +13043,7 @@ methylation and segmentation.")
(define-public pigx-scrnaseq
(package
(name "pigx-scrnaseq")
(version "0.0.4")
(version "0.0.5")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/BIMSBbioinfo/pigx_scrnaseq/"
@ -13051,7 +13051,7 @@ methylation and segmentation.")
"/pigx_scrnaseq-" version ".tar.gz"))
(sha256
(base32
"1pvjm6f3mascprs65vflggwwg5v925knvgal7k7a6nnlmw5qndrf"))))
"0a73rilv0vnw42d5rsdq205h4f0x8j3jqv998janh4s324c6w2kj"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags
@ -13079,6 +13079,7 @@ methylation and segmentation.")
("python-wrapper" ,python-wrapper)
("python-pyyaml" ,python-pyyaml)
("python-pandas" ,python-pandas)
("python-magic" ,python-magic)
("python-numpy" ,python-numpy)
("python-loompy" ,python-loompy)
("ghc-pandoc" ,ghc-pandoc-1)
@ -13236,3 +13237,62 @@ rate speciation and extinction.")
junctions in RNA-seq data. It is annotation-agnostic and offset-aware. This
version does count multisplits.")
(license license:gpl3+))))
(define-public minimap2
(package
(name "minimap2")
(version "2.10")
(source
(origin
(method url-fetch)
(uri (string-append "https://github.com/lh3/minimap2/"
"releases/download/v" version "/"
"minimap2-" version ".tar.bz2"))
(sha256
(base32
"080w9066irkbhbyr4nmf19pzkdd2s4v31hpzlajgq2y0drr6zcsj"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; there are none
#:make-flags
(list "CC=gcc"
(let ((system ,(or (%current-target-system)
(%current-system))))
(cond
((string-prefix? "x86_64" system)
"all")
((or (string-prefix? "armhf" system)
(string-prefix? "aarch64" system))
"arm_neon=1")
(_ "sse2only=1"))))
#:phases
(modify-phases %standard-phases
(delete 'configure)
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(bin (string-append out "/bin"))
(man (string-append out "/share/man/man1")))
(install-file "minimap2" bin)
(mkdir-p man)
(install-file "minimap2.1" man))
#t)))))
(inputs
`(("zlib" ,zlib)))
(home-page "https://lh3.github.io/minimap2/")
(synopsis "Pairwise aligner for genomic and spliced nucleotide sequences")
(description "Minimap2 is a versatile sequence alignment program that
aligns DNA or mRNA sequences against a large reference database. Typical use
cases include:
@enumerate
@item mapping PacBio or Oxford Nanopore genomic reads to the human genome;
@item finding overlaps between long reads with error rate up to ~15%;
@item splice-aware alignment of PacBio Iso-Seq or Nanopore cDNA or Direct RNA
reads against a reference genome;
@item aligning Illumina single- or paired-end reads;
@item assembly-to-assembly alignment;
@item full-genome alignment between two closely related species with
divergence below ~15%.
@end enumerate\n")
(license license:expat)))

View file

@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013, 2014, 2015, 2016, 2017 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2015, 2018 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2015 Leo Famulari <leo@famulari.name>
;;; Copyright © 2016 Jan Nieuwenhuizen <janneke@gnu.org>
@ -61,7 +61,8 @@
#:use-module (guix packages)
#:use-module (guix utils)
#:use-module (srfi srfi-1)
#:use-module (srfi srfi-26))
#:use-module (srfi srfi-26)
#:use-module (ice-9 regex))
(define unifont
;; GNU Unifont, <http://gnu.org/s/unifont>.
@ -144,6 +145,22 @@
("texinfo" ,texinfo)
("help2man" ,help2man)
;; XXX: When building GRUB 2.02 on 32-bit x86, we need a binutils
;; capable of assembling 64-bit instructions. However, our default
;; binutils on 32-bit x86 is not 64-bit capable.
,@(if (string-match "^i[3456]86-" (%current-system))
(let ((binutils (package/inherit
binutils
(name "binutils-i386")
(arguments
(substitute-keyword-arguments (package-arguments binutils)
((#:configure-flags flags ''())
`(cons "--enable-64-bit-bfd" ,flags)))))))
`(("ld-wrapper" ,(make-ld-wrapper "ld-wrapper-i386"
#:binutils binutils))
("binutils" ,binutils)))
'())
;; Dependencies for the test suite. The "real" QEMU is needed here,
;; because several targets are used.
("parted" ,parted)
@ -439,7 +456,7 @@ def test_ctrl_c"))
also initializes the boards (RAM etc). This package provides its
board-independent tools.")))
(define (make-u-boot-package board triplet)
(define-public (make-u-boot-package board triplet)
"Returns a u-boot package for BOARD cross-compiled for TRIPLET."
(let ((same-arch? (if (string-prefix? (%current-system)
(gnu-triplet->nix-system triplet))
@ -483,7 +500,7 @@ board-independent tools.")))
(string-drop-right file-name
suffix-len))))
(sort entries string-ci<)))
#f)))))
(error "Invalid boardname ~s." ,board))))))
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))

View file

@ -1,6 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2014 John Darrington <jmd@gnu.org>
;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;;
;;; This file is part of GNU Guix.
;;;
@ -44,7 +45,7 @@
'(#:phases
(modify-phases %standard-phases
(replace 'configure
(lambda _ (zero? (system* "make" "defconfig"))))
(lambda _ (invoke "make" "defconfig")))
(replace 'check
(lambda _
(substitute* '("testsuite/du/du-s-works"
@ -71,18 +72,17 @@
(delete-file "testsuite/which/which-uses-default-path")
(rmdir "testsuite/which")
(zero? (system* "make"
;; "V=1"
"SKIP_KNOWN_BUGS=1"
"SKIP_INTERNET_TESTS=1"
"check"))))
(invoke "make"
;; "V=1"
"SKIP_KNOWN_BUGS=1"
"SKIP_INTERNET_TESTS=1"
"check")))
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(zero?
(system* "make"
(string-append "CONFIG_PREFIX=" out)
"install"))))))))
(invoke "make"
(string-append "CONFIG_PREFIX=" out)
"install")))))))
(native-inputs `(("perl" ,perl) ; needed to generate the man pages (pod2man)
;; The following are needed by the tests.
("inetutils" ,inetutils)

View file

@ -293,13 +293,13 @@ format.")
(define-public cppcheck
(package
(name "cppcheck")
(version "1.83")
(version "1.84")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/danmar/cppcheck/archive/"
version ".tar.gz"))
(sha256
(base32 "15ghxwmyy09cd9mi008k4jn09c441j86qyaa4dz0is7f5dv5cdkx"))
(base32 "1ibz07dgs1dpfb8bmjh3qsma37wl5p6s6b4qlv5ccpshj4yjk9ma"))
(file-name (string-append name "-" version ".tar.gz"))))
(build-system cmake-build-system)
(home-page "http://cppcheck.sourceforge.net")
@ -1902,19 +1902,14 @@ create data based on random numbers and yet remain repeatable.")
(define-public python-nose-timer
(package
(name "python-nose-timer")
(version "0.7.0")
(version "0.7.2")
(source
(origin
(method url-fetch)
(uri (pypi-uri "nose-timer" version))
(patches
(search-patches
;; This patch will not be needed in the next version.
;; It is taken from the master branch.
"python-nose-timer-drop-ordereddict.patch"))
(sha256
(base32
"1s32ymsnby8lz2qk55ifj9zi50dqcg6swnj5cz2rmwxg2jsslsxp"))))
"0ywg223p528014z5s0vzck74r4xyw3kvcp2casfnc85dkvir1zj7"))))
(build-system python-build-system)
(propagated-inputs
`(("python-nose" ,python-nose)
@ -1930,14 +1925,14 @@ create data based on random numbers and yet remain repeatable.")
(define-public python-freezegun
(package
(name "python-freezegun")
(version "0.3.9")
(version "0.3.10")
(source
(origin
(method url-fetch)
(uri (pypi-uri "freezegun" version))
(sha256
(base32
"1vhf3kgdy7gpy70n3bxa3y1n6aza316137md97z8p5k0gz6wqg3q"))))
"08m6b42yxb9hk5lv747v9n2qsxyadmkb0k6yg0gxdanwap0slg3h"))))
(build-system python-build-system)
(native-inputs
`(("python-mock" ,python-mock)
@ -1953,7 +1948,7 @@ create data based on random numbers and yet remain repeatable.")
;; package does not include the Makefile.
(replace 'check
(lambda _
(zero? (system* "nosetests" "./tests/")))))))
(invoke "nosetests" "./tests/"))))))
(home-page "https://github.com/spulec/freezegun")
(synopsis "Test utility for mocking the datetime module")
(description

81
gnu/packages/cluster.scm Normal file
View file

@ -0,0 +1,81 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2018 Sou Bunnbu <iyzsong@member.fsf.org>
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;;
;;; This file is part of GNU Guix.
;;;
;;; GNU Guix is free software; you can redistribute it and/or modify it
;;; under the terms of the GNU General Public License as published by
;;; the Free Software Foundation; either version 3 of the License, or (at
;;; your option) any later version.
;;;
;;; GNU Guix is distributed in the hope that it will be useful, but
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;;; GNU General Public License for more details.
;;;
;;; You should have received a copy of the GNU General Public License
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu packages cluster)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix build-system gnu)
#:use-module (guix download)
#:use-module (guix packages)
#:use-module (gnu packages linux)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages python)
#:use-module (gnu packages texinfo)
#:use-module (gnu packages tls))
(define-public keepalived
(package
(name "keepalived")
(version "2.0.4")
(source (origin
(method url-fetch)
(uri (string-append
"http://www.keepalived.org/software/keepalived-"
version ".tar.gz"))
(sha256
(base32
"0qf46bfxv4w7qx7d73qq26pp72cvbyfjvna3hxn208vynvapalh0"))))
(build-system gnu-build-system)
(arguments
'(#:phases
(modify-phases %standard-phases
(add-after 'build 'build-info
(lambda _
(invoke "make" "-C" "doc" "texinfo")
;; Put images in a subdirectory as recommended by 'texinfo'.
(install-file "doc/build/texinfo/software_design.png"
"doc/build/texinfo/keepalived-figures")
(substitute* "doc/build/texinfo/keepalived.texi"
(("@image\\{software_design,")
"@image{keepalived-figures/software_design,"))
(invoke "make" "-C" "doc/build/texinfo")))
(add-after 'install 'install-info
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(infodir (string-append out "/share/info")))
(install-file "doc/build/texinfo/keepalived.info" infodir)
(install-file "doc/build/texinfo/software_design.png"
(string-append infodir "/keepalived-figures"))
#t))))))
(native-inputs
`(("pkg-config" ,pkg-config)
("python-sphinx" ,python-sphinx)
("texinfo" ,texinfo)))
(inputs
`(("openssl" ,openssl)
("libnfnetlink" ,libnfnetlink)
("libnl" ,libnl)))
(home-page "http://www.keepalived.org/")
(synopsis "Load balancing and high-availability frameworks")
(description
"Keepalived provides frameworks for both load balancing and high
availability. The load balancing framework relies on the Linux Virtual
Server (@dfn{IPVS}) kernel module. High availability is achieved by the Virtual
Redundancy Routing Protocol (@dfn{VRRP}). Each Keepalived framework can be used
independently or together to provide resilient infrastructures.")
(license license:gpl2+)))

View file

@ -1,7 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013, 2015, 2018 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2015 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2015 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2015, 2018 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2017, 2018 Clément Lassieur <clement@lassieur.org>
@ -581,7 +581,7 @@ Objective@tie{}C, D, Java, Pawn, and Vala). Features:
(define-public astyle
(package
(name "astyle")
(version "2.05")
(version "3.1")
(source
(origin
(method url-fetch)
@ -589,7 +589,7 @@ Objective@tie{}C, D, Java, Pawn, and Vala). Features:
version "/astyle_" version "_linux.tar.gz"))
(sha256
(base32
"0f9sh9kq5ajp1yz133h00fr9235p1m698x7n3h7zbrhjiwgynd6s"))))
"1ms54wcs7hg1bsywqwf2lhdfizgbk7qxc9ghasxk8i99jvwlrk6b"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ;no tests

View file

@ -604,39 +604,40 @@ with the sfArk algorithm.")
(license license:gpl3+)))
(define-public sfarkxtc
(let ((commit "b5e0a2ba3921f019d74d4b92bd31c36dd19d2cf1"))
(package
(name "sfarkxtc")
(version (string-take commit 10))
(source (origin
;; There are no release tarballs, so we just fetch the latest
;; commit at this time.
(method git-fetch)
(uri (git-reference
(url "https://github.com/raboof/sfarkxtc.git")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"0f5x6i46qfl6ry21s7g2p4sd4b2r1g4fb03yqi2vv4kq3saryhvj"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ;no "check" target
#:phases
(modify-phases %standard-phases
(replace 'configure
(lambda* (#:key outputs #:allow-other-keys)
(substitute* "Makefile"
(("/usr/local") (assoc-ref outputs "out")))
#t)))))
(inputs
`(("zlib" ,zlib)
("sfarklib" ,sfarklib)))
(home-page "https://github.com/raboof/sfarkxtc")
(synopsis "Basic sfArk decompressor")
(description "SfArk extractor converts SoundFonts in the compressed legacy
(let ((commit "13cd6f93725a90d91ec5ea75babf1dbd694ac463")
(revision "1"))
(package
(name "sfarkxtc")
(version (git-version "0" revision commit))
(source (origin
;; There are no release tarballs, so we just fetch the latest
;; commit at this time.
(method git-fetch)
(uri (git-reference
(url "https://github.com/raboof/sfarkxtc.git")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"1mb1jyk1m11l1gppd9hmql9cyp55sdf7jk5rbc7acky1z4k4mv19"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ;no "check" target
#:phases
(modify-phases %standard-phases
(replace 'configure
(lambda* (#:key outputs #:allow-other-keys)
(substitute* "Makefile"
(("/usr/local") (assoc-ref outputs "out")))
#t)))))
(inputs
`(("zlib" ,zlib)
("sfarklib" ,sfarklib)))
(home-page "https://github.com/raboof/sfarkxtc")
(synopsis "Basic sfArk decompressor")
(description "SfArk extractor converts SoundFonts in the compressed legacy
sfArk file format to the uncompressed sf2 format.")
(license license:gpl3+))))
(license license:gpl3+))))
(define-public libmspack
(package
@ -2111,7 +2112,7 @@ single-member files which can't be decompressed in parallel.")
(define-public innoextract
(package
(name "innoextract")
(version "1.6")
(version "1.7")
(source
(origin
(method url-fetch)
@ -2119,7 +2120,7 @@ single-member files which can't be decompressed in parallel.")
version ".tar.gz"))
(sha256
(base32
"08sp5vbfjvq1irhhraqkn5m2x1z209r4axhx7laf1adcw30ccapi"))
"0khwi9f0q0h6xfbixrrc1rfpgj0b7ajwilq7yhmxnn5lpc807f6x"))
(file-name (string-append name "-" version ".tar.gz"))))
(build-system cmake-build-system)
(arguments
@ -2209,7 +2210,8 @@ decompression is a little bit slower.")
version "/" name "-" version "-src.tar.xz"))
(sha256
(base32
"08anybdliqsbsl6x835iwzljahnm9i7v26icdjkcv33xmk6p5vw1"))))
"08anybdliqsbsl6x835iwzljahnm9i7v26icdjkcv33xmk6p5vw1"))
(patches (search-patches "upx-fix-CVE-2017-15056.patch"))))
(build-system gnu-build-system)
(native-inputs `(("perl" ,perl)
("ucl" ,ucl)))
@ -2241,6 +2243,11 @@ decompression is a little bit slower.")
#t))
)))
(home-page "https://upx.github.io/")
;; CVE-2017-16869 is about Mach-O files which is not of a big concern for Guix.
;; See https://github.com/upx/upx/issues/146 and
;; https://nvd.nist.gov/vuln/detail?vulnId=CVE-2017-16869.
;; The issue will be fixed after version 3.94.
(properties `((lint-hidden-cve . ("CVE-2017-16869"))))
(synopsis "Compression tool for executables")
(description
"The Ultimate Packer for eXecutables (UPX) is an executable file

View file

@ -30,6 +30,7 @@
#:use-module (guix download)
#:use-module (guix utils)
#:use-module (guix build-system r)
#:use-module (gnu packages compression)
#:use-module (gnu packages gcc)
#:use-module (gnu packages machine-learning)
#:use-module (gnu packages maths)
@ -245,15 +246,17 @@ into a pipeline of data manipulation and visualisation.")
(define-public r-haven
(package
(name "r-haven")
(version "1.1.1")
(version "1.1.2")
(source
(origin
(method url-fetch)
(uri (cran-uri "haven" version))
(sha256
(base32
"1fkcvsrnw8waqwggv0aydbvbi99x5kp9g78xfxj4w6s3xvdzcysz"))))
"0pp8xjf5lzqg1wr8cwxj4njx99vxwlflwjrd7jvyzwlfpwh7n1qa"))))
(build-system r-build-system)
(inputs
`(("zlib" ,zlib)))
(propagated-inputs
`(("r-forcats" ,r-forcats)
("r-hms" ,r-hms)
@ -423,6 +426,41 @@ the plog header-only C++ logging library, and a method to log to R's standard
error stream.")
(license license:expat)))
(define-public r-pls
(package
(name "r-pls")
(version "2.6-0")
(source
(origin
(method url-fetch)
(uri (cran-uri "pls" version))
(sha256
(base32
"15j59p5x0rkdrk7iqzkipsy50rsyjl31w8zxc4w3v1j5gzxhi1rx"))))
(build-system r-build-system)
(home-page "http://mevik.net/work/software/pls.html")
(synopsis "Partial Least Squares and Principal Component Regression")
(description
"The pls package implements multivariate regression methods: Partial Least
Squares Regression (@dfn{PLSR}), Principal Component Regression (@dfn{PCR}), and
Canonical Powered Partial Least Squares (@dfn{CPPLS}). It supports:
@itemize
@item several algorithms: the traditional orthogonal scores (@dfn{NIPALS}) PLS
algorithm, kernel PLS, wide kernel PLS, Simpls, and PCR through @code{svd}
@item multi-response models (or @dfn{PLS2})
@item flexible cross-validation
@item Jackknife variance estimates of regression coefficients
@item extensive and flexible plots: scores, loadings, predictions, coefficients,
(R)MSEP, R², and correlation loadings
@item formula interface, modelled after @code{lm()}, with methods for predict,
print, summary, plot, update, etc.
@item extraction functions for coefficients, scores, and loadings
@item MSEP, RMSEP, and R² estimates
@item multiplicative scatter correction (@dfn{MSC})
@end itemize\n")
(license license:gpl2)))
(define-public r-rcpp
(package
(name "r-rcpp")
@ -556,14 +594,14 @@ ellipses, circles, cylinders, arrows, ...")
(define-public r-globaloptions
(package
(name "r-globaloptions")
(version "0.0.13")
(version "0.1.0")
(source
(origin
(method url-fetch)
(uri (cran-uri "GlobalOptions" version))
(sha256
(base32
"04jvha0mafslqz5nr99xjylg9n2x31gj9v4mgyg7qcmfwpqyw3ch"))))
"1wlyqz1yhmhjwslrd7q69jbd9vsbjkjfc01g60kl3cdpyr8hlyjn"))))
(properties `((upstream-name . "GlobalOptions")))
(build-system r-build-system)
(home-page "https://github.com/jokergoo/GlobalOptions")
@ -576,14 +614,14 @@ validation and filtering on the values, making options invisible or private.")
(define-public r-circlize
(package
(name "r-circlize")
(version "0.4.3")
(version "0.4.4")
(source
(origin
(method url-fetch)
(uri (cran-uri "circlize" version))
(sha256
(base32
"0pg947gkryygikfbv6admx8gsg02b6g219j6a1sdnqij2908yxna"))))
"1l28maiqi549z191srncxgabx5fnvf0lld7smzwfd3vr5cx8nqww"))))
(build-system r-build-system)
(propagated-inputs
`(("r-colorspace" ,r-colorspace)
@ -681,14 +719,14 @@ compare different dendrograms to one another.")
(define-public r-getoptlong
(package
(name "r-getoptlong")
(version "0.1.6")
(version "0.1.7")
(source
(origin
(method url-fetch)
(uri (cran-uri "GetoptLong" version))
(sha256
(base32
"1d98gcvlvp9nz5lbnzr0kkpc2hbkx74hlhrnybqhg1gdwc3g09pm"))))
"1fl3w2n602ldybc5qj7qw4xmzzb804bsjkqwf6dswzj0vf0qiadr"))))
(properties `((upstream-name . "GetoptLong")))
(build-system r-build-system)
(inputs
@ -818,17 +856,19 @@ quantities.")
(define-public r-progress
(package
(name "r-progress")
(version "1.1.2")
(version "1.2.0")
(source
(origin
(method url-fetch)
(uri (cran-uri "progress" version))
(sha256
(base32
"1fxakchfjr5vj59s9sxynd7crpz97xj42438rmkhkf3rjpyspx59"))))
"1rhwm0bdw30z3rvl0bn56xprjl3zrdy7150w4gl4bkvn2d6h9fav"))))
(build-system r-build-system)
(propagated-inputs
`(("r-prettyunits" ,r-prettyunits)
`(("r-crayon" ,r-crayon)
("r-hms" ,r-hms)
("r-prettyunits" ,r-prettyunits)
("r-r6" ,r-r6)))
(home-page "https://github.com/gaborcsardi/progress")
(synopsis "Terminal progress bars")
@ -896,14 +936,14 @@ most popular ones.")
(define-public r-sp
(package
(name "r-sp")
(version "1.2-7")
(version "1.3-1")
(source
(origin
(method url-fetch)
(uri (cran-uri "sp" version))
(sha256
(base32
"0q04yfgyjannsrzl0ppwcv0simrxrrbx2iz5mzaafc5x38zf0q3d"))))
"17xm1ig80p9wc860hm3bgishz6lj9fxgwqidj7rkbk4ap99qp62p"))))
(build-system r-build-system)
(propagated-inputs
`(("r-lattice" ,r-lattice)))
@ -1009,14 +1049,14 @@ SpatialVx.")
(define-public r-extremes
(package
(name "r-extremes")
(version "2.0-8")
(version "2.0-9")
(source
(origin
(method url-fetch)
(uri (cran-uri "extRemes" version))
(sha256
(base32
"0pnpib3g2r9x8hfqhvq23j8m3jh62lp28ipnqir5yadnzv850gfm"))))
"0cpvcajk9xyy7662nqkyx333vrxpwsc5nmv0bfnhsbgijz5y0hvm"))))
(properties `((upstream-name . "extRemes")))
(build-system r-build-system)
(propagated-inputs
@ -1539,14 +1579,14 @@ Delaunay triangulation and convex hull computation.")
(define-public r-ddalpha
(package
(name "r-ddalpha")
(version "1.3.3")
(version "1.3.4")
(source
(origin
(method url-fetch)
(uri (cran-uri "ddalpha" version))
(sha256
(base32
"0g4iqhrz2gym05q40ih6srilyajw2l2mv46pchn65bc7hw4vkgrk"))))
"16cn0bhbaz9l9k4y79sv2d4f7pvs7dyka273y89igs5jvr99kfj1"))))
(build-system r-build-system)
(propagated-inputs
`(("r-bh" ,r-bh)
@ -1595,14 +1635,14 @@ Core algorithms are executed in parallel on systems supporting OpenMP.")
(define-public r-rcpproll
(package
(name "r-rcpproll")
(version "0.2.2")
(version "0.3.0")
(source
(origin
(method url-fetch)
(uri (cran-uri "RcppRoll" version))
(sha256
(base32
"19xzvxym8zbighndygkq4imfwc0abh4hqyq3qrr8aakyd096iisi"))))
"0srzfhzkk42kzrdjnhbb37946jp1p688rgysy6k3i2is8jb21zyb"))))
(properties `((upstream-name . "RcppRoll")))
(build-system r-build-system)
(propagated-inputs
@ -1713,14 +1753,14 @@ provides a one-row summary of model-level statistics.")
(define-public r-recipes
(package
(name "r-recipes")
(version "0.1.2")
(version "0.1.3")
(source
(origin
(method url-fetch)
(uri (cran-uri "recipes" version))
(sha256
(base32
"1car3a3mqn87pz049cbgkaayz86970mvkapk6al2k7jjw76306l9"))))
"1vqh3pxs4n1azhnd1lzg91vasya6g323kllhbrw177j7kdxqyimy"))))
(build-system r-build-system)
(propagated-inputs
`(("r-broom" ,r-broom)
@ -1732,6 +1772,7 @@ provides a one-row summary of model-level statistics.")
("r-lubridate" ,r-lubridate)
("r-magrittr" ,r-magrittr)
("r-matrix" ,r-matrix)
("r-pls" ,r-pls)
("r-purrr" ,r-purrr)
("r-rcpproll" ,r-rcpproll)
("r-rlang" ,r-rlang)
@ -1822,14 +1863,14 @@ color labels, layout, etc.")
(define-public r-stringdist
(package
(name "r-stringdist")
(version "0.9.4.7")
(version "0.9.5.1")
(source
(origin
(method url-fetch)
(uri (cran-uri "stringdist" version))
(sha256
(base32
"1qg80wmcrpkba9njvgjdg15bgw7ddks40kkfh5x61as9lhchy4i4"))))
"0gap1g9xwhp0zxqsznkc2carpvi80z03prr4q8m528684lznx2xa"))))
(build-system r-build-system)
(home-page "https://github.com/markvanderloo/stringdist")
(synopsis "Approximate string matching and string distance functions")
@ -1917,14 +1958,14 @@ analysis of multiply imputed data sets.")
(define-public r-mice
(package
(name "r-mice")
(version "3.0.0")
(version "3.1.0")
(source
(origin
(method url-fetch)
(uri (cran-uri "mice" version))
(sha256
(base32
"1p8a5ham90iaak4w17114pdnw535r2l9sxr402yrkc4gbwfbpdlq"))))
"0xpn215yfzib4hw09cwilnyg9zbvq460njavfvm84mvgwbm25byi"))))
(build-system r-build-system)
(propagated-inputs
`(("r-broom" ,r-broom)
@ -2569,14 +2610,14 @@ iVAT).")
(define-public r-xfun
(package
(name "r-xfun")
(version "0.1")
(version "0.2")
(source
(origin
(method url-fetch)
(uri (cran-uri "xfun" version))
(sha256
(base32
"1sm51gmwgw876d6d1q8smxmfgfh6zsnykfx8qp8z6jmh0fvd89pj"))))
"0zl22fcw90kdvzkjyf6vbmdmn9rz3bl51522fasvmykypffyng4a"))))
(build-system r-build-system)
(home-page "https://github.com/yihui/xfun")
(synopsis "Miscellaneous functions")
@ -2718,17 +2759,19 @@ supports arbitrary vertex/edge/graph attributes.")
(define-public r-statnet-common
(package
(name "r-statnet-common")
(version "4.0.0")
(version "4.1.2")
(source
(origin
(method url-fetch)
(uri (cran-uri "statnet.common" version))
(sha256
(base32
"0yw6l5b4qv0jqlg4zyczas7m12a5pyqghs6ydxy2f6v6vxkijvi0"))))
"0h3g687214rlycca0fjrpy1lqbqsrginxqhmhl2mb2jinqqxcfgd"))))
(properties
`((upstream-name . "statnet.common")))
(build-system r-build-system)
(propagated-inputs
`(("r-coda" ,r-coda)))
(home-page "https://statnet.org")
(synopsis "R scripts and utilities used by the Statnet software")
(description "This package provides non-statistical utilities used by the
@ -2971,14 +3014,14 @@ Cryer and Kung-Sik Chan.")
(define-public r-extradistr
(package
(name "r-extradistr")
(version "1.8.8")
(version "1.8.9")
(source
(origin
(method url-fetch)
(uri (cran-uri "extraDistr" version))
(sha256
(base32
"0ywn4qwnamv36l1hw27l9y5kh3v6ha5781wsv2bz6szqjgg7kdb3"))))
"1fg8vjpal33y51iqzglk1yvy46d7js0l0wfbdy698lq8a06hq19p"))))
(properties `((upstream-name . "extraDistr")))
(build-system r-build-system)
(propagated-inputs
@ -3041,14 +3084,14 @@ applied econometric analysis.")
(define-public r-cubature
(package
(name "r-cubature")
(version "1.3-11")
(version "1.4")
(source
(origin
(method url-fetch)
(uri (cran-uri "cubature" version))
(sha256
(base32
"06f6gsvbb732p80r6hxvzh4ik546icxfvx21dyh65ypmw3kgm64k"))))
"1hd23b8v2kpqp5gr0va8p2q7j8w9rik6ks7zrr4b8mb2mwrakk74"))))
(build-system r-build-system)
(propagated-inputs
`(("r-rcpp" ,r-rcpp)))
@ -3324,14 +3367,14 @@ environment within Shiny.")
(define-public r-radiant-data
(package
(name "r-radiant-data")
(version "0.8.1")
(version "0.9.5")
(source
(origin
(method url-fetch)
(uri (cran-uri "radiant.data" version))
(sha256
(base32
"1ylina1jlrmvjkj8pwg0ip5jv1038vnzyckmf542xl7g11x8rvw1"))
"0mbxfqn79nphii4hb6kxl2wc0w0ra16y378rp2yw9a9926zdb7mb"))
(modules '((guix build utils)))
(snippet
'(begin
@ -3347,6 +3390,7 @@ environment within Shiny.")
("r-curl" ,r-curl)
("r-dplyr" ,r-dplyr)
("r-dt" ,r-dt)
("r-glue" ,r-glue)
("r-ggplot2" ,r-ggplot2)
("r-gridextra" ,r-gridextra)
("r-import" ,r-import)
@ -3355,16 +3399,19 @@ environment within Shiny.")
("r-lubridate" ,r-lubridate)
("r-magrittr" ,r-magrittr)
("r-markdown" ,r-markdown)
("r-pryr" ,r-pryr)
("r-plotly" ,r-plotly)
("r-psych" ,r-psych)
("r-readr" ,r-readr)
("r-readxl" ,r-readxl)
("r-rlang" ,r-rlang)
("r-rmarkdown" ,r-rmarkdown)
("r-rstudioapi" ,r-rstudioapi)
("r-scales" ,r-scales)
("r-shiny" ,r-shiny)
("r-shinyace" ,r-shinyace)
("r-tibble" ,r-tibble)
("r-tidyr" ,r-tidyr)))
("r-tidyr" ,r-tidyr)
("r-writexl" ,r-writexl)))
(home-page "https://github.com/radiant-rstats/radiant.data")
(synopsis "Data menu for Radiant: business analytics using R and Shiny")
(description
@ -3533,14 +3580,14 @@ extracting and replacing data in arrays.")
(define-public r-prroc
(package
(name "r-prroc")
(version "1.3")
(version "1.3.1")
(source
(origin
(method url-fetch)
(uri (cran-uri "PRROC" version))
(sha256
(base32
"03hvh92lq4i4w4mla9bvwrwb4626f4hvlxgdn57hamp70960vjyc"))))
"1m28h8pcd78049lz2qixhkcr9h5b3jik3maqzfbvq9y58z71i4a7"))))
(properties `((upstream-name . "PRROC")))
(build-system r-build-system)
(home-page "https://cran.r-project.org/web/packages/PRROC/")
@ -3915,14 +3962,14 @@ exchanging spatial objects with other R packages.")
(define-public r-later
(package
(name "r-later")
(version "0.7.2")
(version "0.7.3")
(source
(origin
(method url-fetch)
(uri (cran-uri "later" version))
(sha256
(base32
"0l5ln7sjyi2rj7bx8iamxykqlfarv05zb9882ikizppb1cr1hgyw"))))
"04j2phymxgkk4hv9pfa5w3s98w5d7fvm11blrdhxmray4n618msw"))))
(build-system r-build-system)
(propagated-inputs
`(("r-bh" ,r-bh)
@ -4125,14 +4172,14 @@ obtain a better initial configuration in non-metric MDS.")
(define-public r-reticulate
(package
(name "r-reticulate")
(version "1.7")
(version "1.8")
(source
(origin
(method url-fetch)
(uri (cran-uri "reticulate" version))
(sha256
(base32
"1ghhc4hbmwpp79ilbdbshynhs61i8sv8z6p1al04jy7ij0lcglxy"))))
"0zwb4ikf021nw7axdn7qlr6bq4xkph3anfy314idkspy1iil4nmr"))))
(build-system r-build-system)
(inputs `(("python" ,python)))
(propagated-inputs
@ -4166,3 +4213,291 @@ Python to R they are converted back to R types.")
(description "This package provides a utility for R to parse a bibtex
file.")
(license license:gpl2+)))
(define-public r-ggseqlogo
(package
(name "r-ggseqlogo")
(version "0.1")
(source
(origin
(method url-fetch)
(uri (cran-uri "ggseqlogo" version))
(sha256
(base32
"13q6kcpxrqxqbji889fx63p0nsi08lk5yymkchig75r5k1d18ky1"))))
(build-system r-build-system)
(propagated-inputs `(("r-ggplot2" ,r-ggplot2)))
(home-page "https://github.com/omarwagih/ggseqlogo")
(synopsis "ggplot2 extension for drawing genetic sequence logos")
(description
"The range of functions provided by this package makes it possible to
draw highly versatile genomic sequence logos. Features include, but are not
limited to, modifying colour schemes and fonts used to draw the logo,
generating multiple logo plots, and aiding the visualisation with annotations.
Sequence logos can easily be combined with other ggplot2 plots.")
;; Unspecified version of the LGPL.
(license license:lgpl3+)))
(define-public r-ggsci
(package
(name "r-ggsci")
(version "2.9")
(source
(origin
(method url-fetch)
(uri (cran-uri "ggsci" version))
(sha256
(base32
"0g73x6grbka7ahjh6z23m3wrcifp5rdfdiasbl8lq4sp6rplxwaa"))))
(build-system r-build-system)
(propagated-inputs
`(("r-ggplot2" ,r-ggplot2)
("r-scales" ,r-scales)))
(home-page "https://nanx.me/ggsci/")
(synopsis "Scientific journal and sci-fi themed color palettes for ggplot2")
(description
"This package provides a collection of ggplot2 color palettes inspired by
plots in scientific journals, data visualization libraries, science fiction
movies, and TV shows.")
(license license:gpl3)))
(define-public r-ggsignif
(package
(name "r-ggsignif")
(version "0.4.0")
(source
(origin
(method url-fetch)
(uri (cran-uri "ggsignif" version))
(sha256
(base32
"1rn58d7pb3axk6chiihryykrzw76adaa2yiafq4d0j6qbhax78f7"))))
(build-system r-build-system)
(propagated-inputs
`(("r-ggplot2" ,r-ggplot2)))
(home-page "https://github.com/const-ae/ggsignif")
(synopsis "Significance brackets for ggplot2")
(description
"Enrich your ggplots with group-wise comparisons. This package provides
an easy way to indicate if two groups are significantly different. Commonly
this is shown by a bracket on top connecting the groups of interest which
itself is annotated with the level of significance. The package provides a
single layer that takes the groups for comparison and the test as arguments
and adds the annotation to the plot.")
(license license:gpl3)))
(define-public r-ggpubr
(package
(name "r-ggpubr")
(version "0.1.7")
(source
(origin
(method url-fetch)
(uri (cran-uri "ggpubr" version))
(sha256
(base32
"110ny8p41kmbz0a5rl0mv9cqpjkx6yr3ybflp1r0fmcvhwv7cr3i"))))
(build-system r-build-system)
(propagated-inputs
`(("r-cowplot" ,r-cowplot)
("r-dplyr" ,r-dplyr)
("r-ggplot2" ,r-ggplot2)
("r-ggrepel" ,r-ggrepel)
("r-ggsci" ,r-ggsci)
("r-ggsignif" ,r-ggsignif)
("r-gridextra" ,r-gridextra)
("r-magrittr" ,r-magrittr)
("r-purrr" ,r-purrr)
("r-scales" ,r-scales)
("r-tidyr" ,r-tidyr)))
(home-page "http://www.sthda.com/english/rpkgs/ggpubr")
(synopsis "ggplot2-based publication-ready plots")
(description
"The ggplot2 package is an excellent and flexible package for elegant
data visualization in R. However the default generated plots require some
formatting before we can send them for publication. The ggpubr package
provides some easy-to-use functions for creating and customizing ggplot2-based
publication-ready plots.")
(license license:gpl2)))
(define-public r-ellipse
(package
(name "r-ellipse")
(version "0.4.1")
(source
(origin
(method url-fetch)
(uri (cran-uri "ellipse" version))
(sha256
(base32
"0g82vc51m3c1k0hnpp2zla6amxxgk2mmkl8ssnsc49jv3599r6hs"))))
(build-system r-build-system)
(home-page "https://cran.r-project.org/web/packages/ellipse/")
(synopsis "Functions for drawing ellipses and ellipse-like confidence regions")
(description
"This package contains various routines for drawing ellipses and
ellipse-like confidence regions, implementing the plots described in Murdoch
and Chow (1996), A graphical display of large correlation matrices, The
American Statistician 50, 178-180. There are also routines implementing the
profile plots described in Bates and Watts (1988), Nonlinear Regression
Analysis and its Applications.")
(license license:gpl2+)))
(define-public r-flashclust
(package
(name "r-flashclust")
(version "1.01-2")
(source
(origin
(method url-fetch)
(uri (cran-uri "flashClust" version))
(sha256
(base32
"0l4lpz451ll7f7lfxmb7ds24ppzhfg1c3ypvydglcc35p2dq99s8"))))
(properties `((upstream-name . "flashClust")))
(build-system r-build-system)
(native-inputs `(("gfortran" ,gfortran)))
(home-page "https://cran.r-project.org/web/packages/flashClust/")
(synopsis "Implementation of optimal hierarchical clustering")
(description
"This package provides a fast implementation of hierarchical
clustering.")
(license license:gpl2+)))
(define-public r-factominer
(package
(name "r-factominer")
(version "1.41")
(source
(origin
(method url-fetch)
(uri (cran-uri "FactoMineR" version))
(sha256
(base32
"1h20hydav6l2b7bngqw1av4l5rrh0wk58nhailga1f4qw9lrv259"))))
(properties `((upstream-name . "FactoMineR")))
(build-system r-build-system)
(propagated-inputs
`(("r-car" ,r-car)
("r-cluster" ,r-cluster)
("r-ellipse" ,r-ellipse)
("r-flashclust" ,r-flashclust)
("r-lattice" ,r-lattice)
("r-leaps" ,r-leaps)
("r-mass" ,r-mass)
("r-scatterplot3d" ,r-scatterplot3d)))
(home-page "http://factominer.free.fr")
(synopsis "Multivariate exploratory data analysis and data mining")
(description
"This package provides exploratory data analysis methods to summarize,
visualize and describe datasets. The main principal component methods are
available, those with the largest potential in terms of applications:
principal component analysis (PCA) when variables are quantitative,
correspondence analysis (CA) and multiple correspondence analysis (MCA) when
variables are categorical, Multiple Factor Analysis when variables are
structured in groups, etc. and hierarchical cluster analysis.")
(license license:gpl2+)))
(define-public r-factoextra
(package
(name "r-factoextra")
(version "1.0.5")
(source
(origin
(method url-fetch)
(uri (cran-uri "factoextra" version))
(sha256
(base32
"1l6m8k7qhdw8ndar8nhmym0lfyd1i2iszl1cicjax0vq23ss6xw1"))))
(build-system r-build-system)
(propagated-inputs
`(("r-abind" ,r-abind)
("r-cluster" ,r-cluster)
("r-dendextend" ,r-dendextend)
("r-factominer" ,r-factominer)
("r-ggplot2" ,r-ggplot2)
("r-ggpubr" ,r-ggpubr)
("r-ggrepel" ,r-ggrepel)
("r-reshape2" ,r-reshape2)
("r-tidyr" ,r-tidyr)))
(home-page "http://www.sthda.com/english/rpkgs/factoextra")
(synopsis "Extract and visualize the results of multivariate data analyses")
(description
"This package provides some easy-to-use functions to extract and
visualize the output of multivariate data analyses, including
@code{PCA} (Principal Component Analysis), @code{CA} (Correspondence
Analysis), @code{MCA} (Multiple Correspondence Analysis), @code{FAMD} (Factor
Analysis of Mixed Data), @code{MFA} (Multiple Factor Analysis) and
@code{HMFA} (Hierarchical Multiple Factor Analysis) functions from different R
packages. It contains also functions for simplifying some clustering analysis
steps and provides ggplot2-based elegant data visualization.")
(license license:gpl2)))
(define-public r-nbclust
(package
(name "r-nbclust")
(version "3.0")
(source
(origin
(method url-fetch)
(uri (cran-uri "NbClust" version))
(sha256
(base32
"1vwb48zy6ln1ddpqmfngii1i80n8qmqyxnzdp6gbaq96lakl3w3c"))))
(properties `((upstream-name . "NbClust")))
(build-system r-build-system)
(home-page "https://sites.google.com/site/malikacharrad/research/nbclust-package")
(synopsis "Determine the best number of clusters in a data set")
(description
"NbClust provides 30 indexes for determining the optimal number of
clusters in a data set and offers the best clustering scheme from different
results to the user.")
(license license:gpl2)))
(define-public r-hdf5r
(package
(name "r-hdf5r")
(version "1.0.0")
(source
(origin
(method url-fetch)
(uri (cran-uri "hdf5r" version))
(sha256
(base32
"1s6p4cj909kc635fh5xpl87bqlcdj3dn3r1wk5g40abimk2b0pva"))))
(build-system r-build-system)
(inputs
`(("hdf5" ,hdf5)
("zlib" ,zlib)))
(propagated-inputs
`(("r-bit64" ,r-bit64)
("r-r6" ,r-r6)))
(home-page "https://hhoeflin.github.io/hdf5r")
(synopsis "Interface to the HDF5 binary data format")
(description
"HDF5 is a data model, library and file format for storing and managing
large amounts of data. This package provides a nearly feature complete,
object oriented wrapper for the HDF5 API using R6 classes. Additionally,
functionality is added so that HDF5 objects behave very similar to their
corresponding R counterparts.")
(license license:asl2.0)))
(define-public r-writexl
(package
(name "r-writexl")
(version "1.0")
(source
(origin
(method url-fetch)
(uri (cran-uri "writexl" version))
(sha256
(base32
"0r2v12dc4zqmr1agp6vbw0fc48i278018684x84psjjqfmnv14cf"))))
(build-system r-build-system)
(inputs `(("zlib" ,zlib)))
(home-page "https://github.com/ropensci/writexl")
(synopsis "Export data frames to xlsx format")
(description
"This package provides a data frame to xlsx exporter based on
libxlsxwriter.")
(license license:bsd-2)))

View file

@ -32,6 +32,7 @@
#:use-module (gnu packages attr)
#:use-module (gnu packages autotools)
#:use-module (gnu packages boost)
#:use-module (gnu packages check)
#:use-module (gnu packages compression)
#:use-module (gnu packages cryptsetup)
#:use-module (gnu packages databases)
@ -217,7 +218,7 @@ communication.")
(define-public encfs
(package
(name "encfs")
(version "1.9.1")
(version "1.9.5")
(source
(origin
(method url-fetch)
@ -226,13 +227,13 @@ communication.")
version "/encfs-" version ".tar.gz"))
(sha256
(base32
"1906254dg5hwljh0h4gyrw09ms3b57dlhjfzhfzffv50yzpkl837"))
"0qzxavvv20577bxvly8s7d3y7bqasqclc2mllp0ddfncjm9z02a7"))
(modules '((guix build utils)))
;; Remove bundled dependencies in favour of proper inputs.
(snippet '(begin
(for-each delete-file-recursively
(find-files "internal" "^tinyxml2-[0-9]"
#:directories? #t))
'("vendor/github.com/leethomason/tinyxml2"
"vendor/github.com/google/googletest"))
#t))))
(build-system cmake-build-system)
(native-inputs
@ -240,6 +241,7 @@ communication.")
;; Test dependencies.
("expect" ,expect)
("googletest-source" ,(package-source googletest))
("perl" ,perl)))
(inputs
`(("attr" ,attr)
@ -247,7 +249,18 @@ communication.")
("openssl" ,openssl)
("tinyxml2" ,tinyxml2)))
(arguments
`(#:configure-flags (list "-DUSE_INTERNAL_TINYXML=OFF")))
`(#:configure-flags (list "-DUSE_INTERNAL_TINYXML=OFF")
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'unpack-googletest
(lambda* (#:key inputs #:allow-other-keys)
(mkdir-p "vendor/github.com/google/googletest")
(invoke "tar" "xvf" (assoc-ref inputs "googletest-source")
"-C" "vendor/github.com/google/googletest"
"--strip-components=1")))
(add-before 'check 'make-unittests
(lambda _
(invoke "make" "unittests"))))))
(home-page "https://vgough.github.io/encfs")
(synopsis "Encrypted virtual file system")
(description
@ -713,14 +726,14 @@ SHA256, SHA512, SHA3, AICH, ED2K, Tiger, DC++ TTH, BitTorrent BTIH, GOST R
(define-public botan
(package
(name "botan")
(version "2.5.0")
(version "2.6.0")
(source (origin
(method url-fetch)
(uri (string-append "https://botan.randombit.net/releases/"
"Botan-" version ".tgz"))
(sha256
(base32
"06zvwknhwfrkdvq2sybqbqhnd2d4nq2cszlnsddql13z7vh1z8xq"))))
"1iawmymmnp5j2mcjj70slivn6bgg8gbpppldc1rjqw5sbdan3wn1"))))
(build-system gnu-build-system)
(arguments
'(#:phases

View file

@ -23,29 +23,30 @@
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu packages cups)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix build-system gnu)
#:use-module (gnu packages)
#:use-module (gnu packages algebra)
#:use-module (gnu packages autotools)
#:use-module (gnu packages avahi)
#:use-module (gnu packages compression)
#:use-module (gnu packages groff)
#:use-module (gnu packages libusb)
#:use-module (gnu packages perl)
#:use-module (gnu packages pretty-print)
#:use-module (gnu packages python)
#:use-module (gnu packages scanner)
#:use-module (gnu packages image)
#:use-module (gnu packages fonts) ;font-dejavu
#:use-module (gnu packages fonts) ; font-dejavu
#:use-module (gnu packages fontutils)
#:use-module (gnu packages ghostscript)
#:use-module (gnu packages glib)
#:use-module (gnu packages groff)
#:use-module (gnu packages image)
#:use-module (gnu packages libusb)
#:use-module (gnu packages pdf)
#:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages tls))
#:use-module (gnu packages pretty-print)
#:use-module (gnu packages python)
#:use-module (gnu packages qt)
#:use-module (gnu packages scanner)
#:use-module (gnu packages tls)
#:use-module (guix build-system gnu)
#:use-module (guix download)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages))
(define-public cups-filters
(package
@ -379,14 +380,14 @@ device-specific programs to convert and print many types of files.")
(define-public hplip
(package
(name "hplip")
(version "3.18.3")
(version "3.18.6")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/hplip/hplip/" version
"/hplip-" version ".tar.gz"))
(sha256
(base32
"0x5xs86v18w46rxz5whc15bl4fb7p4km6xqjpwzclp83nl7rl01y"))
"0zbv6cp9n3xypf2fg4j6fpz8zkvl0z08lyc1vq1gd04ln1l3xkqf"))
(modules '((guix build utils)))
(snippet
;; Fix type mismatch.
@ -396,8 +397,10 @@ device-specific programs to convert and print many types of files.")
#t))))
(build-system gnu-build-system)
(home-page "http://hplipopensource.com/")
(synopsis "HP Printer Drivers")
(description "Hewlett-Packard Printer Drivers and PPDs.")
(synopsis "HP printer drivers")
(description
"Hewlett-Packard printer drivers and PostScript Printer Descriptions
(@dfn{PPD}s).")
;; The 'COPYING' file lists directories where each of these 3 licenses
;; applies.
@ -424,7 +427,8 @@ device-specific programs to convert and print many types of files.")
,(string-append "--with-icondir="
(assoc-ref %outputs "out") "/share/applications")
,(string-append "--with-systraydir="
(assoc-ref %outputs "out") "/etc/xdg"))
(assoc-ref %outputs "out") "/etc/xdg")
"--enable-qt5" "--disable-qt4")
#:imported-modules ((guix build python-build-system)
,@%gnu-build-system-modules)
@ -463,7 +467,7 @@ device-specific programs to convert and print many types of files.")
(string-append "hplip_confdir = " out
"/etc/hp"))
(("halpredir = /usr/share/hal/fdi/preprobe/10osvendor")
;; Note: We don't use hal.
;; We don't use hal.
(string-append "halpredir = " out
"/share/hal/fdi/preprobe/10osvendor"))
(("rulesdir = /etc/udev/rules.d")
@ -477,23 +481,30 @@ device-specific programs to convert and print many types of files.")
(("/etc/sane.d")
(string-append out "/etc/sane.d"))))))
;; Wrap bin/* so that the Python libs are found.
;; Wrap bin/* so that the Python libraries are found.
(add-after 'install 'wrap-binaries
(assoc-ref python:%standard-phases 'wrap)))))
;; Python3 support is available starting from hplip@3.15.2.
(inputs `(("libjpeg" ,libjpeg)
("cups-minimal" ,cups-minimal)
("libusb" ,libusb)
("sane-backends" ,sane-backends-minimal)
("zlib" ,zlib)
("dbus" ,dbus)
("python-wrapper" ,python-wrapper)
("python" ,python)
;; TODO: Make hp-setup find python-dbus.
("python-dbus" ,python-dbus)))
(native-inputs `(("pkg-config" ,pkg-config)
("perl" ,perl)))))
;; Note that the error messages printed by the tools in the case of
;; missing dependencies are often downright misleading.
;; TODO: hp-toolbox still fails to start with:
;; from dbus.mainloop.pyqt5 import DBusQtMainLoop
;; ModuleNotFoundError: No module named 'dbus.mainloop.pyqt5'
(inputs
`(("cups-minimal" ,cups-minimal)
("dbus" ,dbus)
("libjpeg" ,libjpeg)
("libusb" ,libusb)
("python" ,python)
("python-dbus" ,python-dbus)
("python-pygobject" ,python-pygobject)
("python-pyqt" ,python-pyqt)
("python-wrapper" ,python-wrapper)
("sane-backends" ,sane-backends-minimal)
("zlib" ,zlib)))
(native-inputs
`(("perl" ,perl)
("pkg-config" ,pkg-config)))))
(define-public foomatic-filters
(package

View file

@ -398,7 +398,7 @@ mapping from string keys to string values.")
(define-public memcached
(package
(name "memcached")
(version "1.5.6")
(version "1.5.8")
(source
(origin
(method url-fetch)
@ -406,7 +406,7 @@ mapping from string keys to string values.")
"https://memcached.org/files/memcached-" version ".tar.gz"))
(sha256
(base32
"00szy9d4szaixi260dcd4846zci04y0sd47ia2lzg0bxkn2ywxcn"))))
"1ppnhsqv9047vm0rrmqla56y972f8qqjdb780iz6v922jjcc723k"))))
(build-system gnu-build-system)
(inputs
`(("libevent" ,libevent)
@ -1107,7 +1107,7 @@ extremely small.")
(define-public perl-dbi
(package
(name "perl-dbi")
(version "1.637")
(version "1.641")
(source (origin
(method url-fetch)
(uri (string-append
@ -1115,7 +1115,7 @@ extremely small.")
version ".tar.gz"))
(sha256
(base32
"1ikbsb6sb0bd2m1dqknl4vx7ikmnd41y0xq8np1l40g8jcjp2mr5"))))
"1hf2x29bnqf2x1v4bdhji802z7n2mbg7h1amv8gdkqyhrlrfa2am"))))
(build-system perl-build-system)
(synopsis "Database independent interface for Perl")
(description "This package provides an database interface for Perl.")
@ -1487,14 +1487,14 @@ similar to BerkeleyDB, LevelDB, etc.")
(define-public redis
(package
(name "redis")
(version "4.0.2")
(version "4.0.10")
(source (origin
(method url-fetch)
(uri (string-append "http://download.redis.io/releases/redis-"
version".tar.gz"))
(sha256
(base32
"04s8cgvwjj1979s3hg8zkwc9pyn3jkjpz5zidp87kfcipifr385i"))))
"194cydhv3hf4v95ifvjvsqrs4jn3ffrkg5lvxj5d3y04lwsp9dhx"))))
(build-system gnu-build-system)
(arguments
'(#:tests? #f ; tests related to master/slave and replication fail

View file

@ -57,13 +57,13 @@ clients.")
(define-public vdirsyncer
(package
(name "vdirsyncer")
(version "0.16.4")
(version "0.16.6")
(source (origin
(method url-fetch)
(uri (pypi-uri name version))
(sha256
(base32
"03wva48bgv1ad3df6plc9b8xxh6k8bcaxrhlzwh81c9mzn5bspzv"))))
"07iqq5c53cfrb5xnmam1rsl683hc3rykmdak896n2gm81r361c66"))))
(build-system python-build-system)
(arguments
`(#:phases (modify-phases %standard-phases
@ -76,7 +76,6 @@ clients.")
(zero? (system* "make" "test"))))
(add-after 'install 'manpage
(lambda* (#:key inputs outputs #:allow-other-keys)
(add-installed-pythonpath inputs outputs)
(zero? (system* "make" "--directory=docs/" "man"))
(install-file
"docs/_build/man/vdirsyncer.1"

View file

@ -129,6 +129,7 @@ contains the archive keys used for that.")
(add-after 'unpack 'patch-source
(lambda* (#:key inputs outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out"))
(coreutils (assoc-ref inputs "coreutils"))
(wget (assoc-ref inputs "wget"))
(debian (assoc-ref inputs "debian-keyring"))
(ubuntu (assoc-ref inputs "ubuntu-keyring")))
@ -141,6 +142,7 @@ contains the archive keys used for that.")
(substitute* "scripts/gutsy"
(("/usr") ubuntu))
(substitute* "debootstrap"
(("chroot ") (string-append coreutils "/bin/chroot "))
(("=/usr") (string-append "=" out)))
(substitute* "functions"
(("wget ") (string-append wget "/bin/wget ")))
@ -154,7 +156,8 @@ contains the archive keys used for that.")
#:make-flags (list (string-append "DESTDIR=" (assoc-ref %outputs "out")))
#:tests? #f)) ; no tests
(inputs
`(("debian-keyring" ,debian-archive-keyring)
`(("coreutils" ,coreutils)
("debian-keyring" ,debian-archive-keyring)
("ubuntu-keyring" ,ubuntu-keyring)
("wget" ,wget)))
;; The following are required for debootstrap to work correctly

View file

@ -50,6 +50,7 @@
#:use-module (gnu packages tls)
#:use-module (gnu packages web)
#:use-module (gnu packages xml)
#:use-module (gnu packages)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
#:use-module (guix download)
@ -104,6 +105,7 @@ and BOOTP/TFTP for network booting of diskless machines.")
(uri (string-append
"ftp://ftp.isc.org/isc/bind9/" version "/" name "-"
version ".tar.gz"))
(patches (search-patches "bind-CVE-2018-5738.patch"))
(sha256
(base32
"0a9dvyg1dk7vpqn9gz7p5jas3bz7z22bjd66b98g1qk16i2w7rqd"))))
@ -188,7 +190,7 @@ high-volume and high-reliability applications. The name BIND stands for
;; Re-generate build files due to unbundling ltdl.
;; TODO: Prevent generating new libltdl and building it.
;; The system version is still favored and referenced.
(zero? (system* "autoreconf" "-vif")))))))
(invoke "autoreconf" "-vif"))))))
(native-inputs
`(("pkg-config" ,pkg-config)
("automake" ,automake)
@ -233,7 +235,7 @@ servers is included, and an up-to-date version is available at
(modify-phases %standard-phases
(add-after 'unpack 'create-configure
(lambda _
(zero? (system* "make" "configure")))))))
(invoke "make" "configure"))))))
(native-inputs
`(("autoconf" ,autoconf)))
(inputs
@ -424,9 +426,9 @@ struct servent *getservbyport(int port, const char *proto) {
}
return s;
}" port)))
(system* (string-append gcc "/bin/gcc")
"-shared" "-fPIC" "-o" "/tmp/nss_preload.so"
"/tmp/nss_preload.c")
(invoke (string-append gcc "/bin/gcc")
"-shared" "-fPIC" "-o" "/tmp/nss_preload.so"
"/tmp/nss_preload.c")
;; The preload library only affects the unittests.
(substitute* "Makefile"
(("./unittest")
@ -539,10 +541,9 @@ Extensions} (DNSSEC).")
(let* ((out (assoc-ref outputs "out"))
(doc (string-append out "/share/doc/knot"))
(etc (string-append doc "/examples/etc")))
(zero?
(system* "make"
(string-append "config_dir=" etc)
"install")))))
(invoke "make"
(string-append "config_dir=" etc)
"install"))))
(add-after 'install 'wrap-python-scripts
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))

View file

@ -139,10 +139,23 @@ markup) can be customized and extended by the user.")
("libxml2" ,libxml2) ; provides xmllint for the tests
("python" ,python-2))) ; for creating the documentation
(inputs
`(("bash" ,bash-minimal)))
`(("bash" ,bash-minimal)
,@(if (string-prefix? "armhf-" (%current-system))
`(("gcc-ice-patch" ,@(search-patches "doxygen-gcc-ice.patch")))
'())))
(arguments
`(#:test-target "tests"
#:phases (modify-phases %standard-phases
;; Work around an ICE that shows up on native compiles for
;; armhf-linux.
,@(if (string-prefix? "armhf-" (%current-system))
`((add-after 'unpack 'apply-gcc-patch
(lambda* (#:key inputs #:allow-other-keys)
(let ((patch (assoc-ref inputs "gcc-ice-patch")))
(invoke "patch" "-p1" "--force"
"--input" patch)))))
'())
(add-before 'configure 'patch-sh
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "src/portable.cpp"

View file

@ -146,7 +146,7 @@ as simple logic analyzer and/or oscilloscope hardware.")
#t)))
(add-after 'build 'build-doc
(lambda _
(zero? (system* "doxygen"))))
(invoke "doxygen")))
(add-after 'install 'install-doc
(lambda* (#:key outputs #:allow-other-keys)
(copy-recursively "doxy/html-api"
@ -158,7 +158,8 @@ as simple logic analyzer and/or oscilloscope hardware.")
(install-file "contrib/60-libsigrok.rules"
(string-append
(assoc-ref outputs "out")
"/lib/udev/rules.d/"))))
"/lib/udev/rules.d/"))
#t))
(add-after 'install-udev-rules 'install-fw
(lambda* (#:key inputs outputs #:allow-other-keys)
(let* ((fx2lafw (assoc-ref inputs "sigrok-firmware-fx2lafw"))

View file

@ -34,14 +34,14 @@
(define-public elfutils
(package
(name "elfutils")
(version "0.170")
(version "0.172")
(source (origin
(method url-fetch)
(uri (string-append "https://sourceware.org/elfutils/ftp/"
version "/elfutils-" version ".tar.bz2"))
(sha256
(base32
"0rp0r54z44is49c594qy7hr211nhb00aa5y7z74vsybbaxslg10z"))
"090fmbnvd9jblkwhb2bm3hanim63rrvd5f30mfxq4jac6kk9k73p"))
(patches (search-patches "elfutils-tests-ptrace.patch"))))
(build-system gnu-build-system)

View file

@ -40,15 +40,7 @@
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"0acnxfwvkx1m1d0h5z051mz95n35zm468hcvc3wpmn17c15h5ihg"))
;; FIXME: 27 tests (out of 4K) had to be disabled as
;; they fail in the build environment. Common failures
;; are:
;; - Mix.Shell.cmd() fails with error 130
;; - The git_repo fixture cannot be found
;; - Communication with spawned processes fails with EPIPE
;; - Failure to copy files
(patches (search-patches "elixir-disable-failing-tests.patch"))))
"0acnxfwvkx1m1d0h5z051mz95n35zm468hcvc3wpmn17c15h5ihg"))))
(build-system gnu-build-system)
(arguments
`(#:test-target "test"
@ -70,27 +62,6 @@
(("#!/usr/bin/env elixir")
(string-append "#!" out "/bin/elixir"))))
#t))
(add-after 'unpack 'fix-or-disable-tests
(lambda* (#:key inputs #:allow-other-keys)
;; Some tests require access to a home directory.
(setenv "HOME" "/tmp")
;; FIXME: These tests fail because the "git_repo" fixture does
;; not exist or cannot be found.
(delete-file "lib/mix/test/mix/tasks/deps.git_test.exs")
;; FIXME: Mix.Shell.cmd() always fails with error code 130.
(delete-file "lib/mix/test/mix/shell_test.exs")
;; FIXME:
;; disabled failing impure tests to make it build again.
;; related discussion: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=28034#14
(delete-file "lib/elixir/test/elixir/kernel/cli_test.exs")
(delete-file "lib/elixir/test/elixir/kernel/dialyzer_test.exs")
(delete-file "lib/iex/test/iex/helpers_test.exs")
(delete-file "lib/ex_unit/test/ex_unit/capture_io_test.exs")
#t))
(add-before 'build 'make-current
;; The Elixir compiler checks whether or not to compile files by
;; inspecting their timestamps. When the timestamp is equal to the
@ -102,6 +73,11 @@
(utime file recent recent 0 0)))
(find-files "." ".*"))
#t))
(add-before 'check 'set-home
(lambda* (#:key inputs #:allow-other-keys)
;; Some tests require access to a home directory.
(setenv "HOME" "/tmp")
#t))
(delete 'configure))))
(inputs
`(("erlang" ,erlang)

File diff suppressed because it is too large Load diff

View file

@ -56,13 +56,19 @@
#:use-module (gnu packages libedit)
#:use-module (gnu packages libusb)
#:use-module (gnu packages linux)
#:use-module (gnu packages lua)
#:use-module (gnu packages maths)
#:use-module (gnu packages mp3)
#:use-module (gnu packages music)
#:use-module (gnu packages ncurses)
#:use-module (gnu packages networking)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages pulseaudio)
#:use-module (gnu packages python)
#:use-module (gnu packages qt)
#:use-module (gnu packages sdl)
#:use-module (gnu packages texinfo)
#:use-module (gnu packages textutils)
#:use-module (gnu packages tls)
#:use-module (gnu packages upnp)
#:use-module (gnu packages video)
@ -72,6 +78,7 @@
#:use-module (gnu packages xiph)
#:use-module (gnu packages xml)
#:use-module (gnu packages xorg)
#:use-module (gnu packages web)
#:use-module (guix build-system cmake)
#:use-module (guix build-system gnu))
@ -1170,3 +1177,188 @@ already have their data files. The clever part about this: ScummVM
just replaces the executables shipped with the games, allowing you to
play them on systems for which they were never designed!")
(license license:gpl2+)))
(define-public mame
(package
(name "mame")
(version "0.199")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/mamedev/mame.git")
(commit (apply string-append "mame" (string-split version #\.)))))
(file-name (git-file-name name version))
(sha256
(base32
"0rb2k6dxss36jjalbpvj2xsqdwqyqy89qab7jpv8ig1y08dpg36n"))
(modules '((guix build utils)))
(snippet
;; Remove bundled libraries.
'(begin
(with-directory-excursion "3rdparty"
(for-each delete-file-recursively
'("asio" "expat" "glm" "libflac" "libjpeg" "lua"
"portaudio" "portmidi" "pugixml" "rapidjson" "SDL2"
"SDL2-override" "sqlite3" "utf8proc" "zlib")))
#t))))
(build-system gnu-build-system)
(arguments
`(#:make-flags
(cons*
(string-append "QT_HOME=" (assoc-ref %build-inputs "qtbase"))
(string-append "SDL_INI_PATH="
(assoc-ref %outputs "out")
"/share/mame/ini")
(map (lambda (lib)
(string-append "USE_SYSTEM_LIB_" (string-upcase lib) "=1"))
'("asio" "expat" "flac" "glm" "jpeg" "lua" "portaudio" "portmidi"
"pugixml" "rapidjson" "sqlite3" "utf8proc" "zlib")))
#:tests? #f ;no test in regular release
#:phases
(modify-phases %standard-phases
(delete 'configure)
(add-after 'build 'build-documentation
(lambda _ (invoke "make" "-C" "docs" "man" "info")))
(replace 'install
;; Upstream does not provide an installation phase.
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(share (string-append out "/share/mame")))
;; Install data.
(for-each (lambda (dir)
(copy-recursively dir (string-append share "/" dir)))
'("artwork" "bgfx" "ctrlr" "hash" "ini" "language"
"plugins" "samples"))
(let ((keymaps (string-append share "/keymaps")))
(for-each (lambda (file) (install-file file keymaps))
(find-files "keymaps" ".*LINUX\\.map")))
(let ((fonts (string-append share "/fonts")))
(install-file "uismall.bdf" fonts))
(when (file-exists? "mame64")
(rename-file "mame64" "mame"))
(install-file "mame" (string-append out "/bin")))
#t))
(add-after 'install 'install-documentation
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(man (string-append out "/share/man/man1"))
(info (string-append out "/share/info")))
(install-file "docs/build/man/MAME.1" man)
(install-file "docs/build/texinfo/MAME.info" info))
#t))
(add-after 'install 'install-ini-file
;; Generate an ini file so as to set some directories (e.g., roms)
;; to a writable location, i.e., "$HOME/.mame/" and "$HOME/mame/".
;;
;; XXX: We need to insert absolute references to the store. It can
;; be an issue if they leak into user's home directory, e.g., with
;; "mame -createconfig" and the package is later GC'ed.
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(share (string-append out "/share/mame"))
(ini (string-append share "/ini")))
(with-output-to-file (string-append ini "/mame.ini")
(lambda _
(format #t
"inipath $HOME/.mame;~a/ini~@
homepath $HOME/mame~@
rompath $HOME/mame/roms~@
samplepath $HOME/mame/samples;~a/samples~@
cheatpath $HOME/mame/cheat~@
artpath $HOME/mame/artwork;~a/artwork~@
crosshairpath $HOME/mame/crosshair~@
snapshot_directory $HOME/mame/snapshots~@
hashpath ~a/hash~@
fontpath $HOME/mame/fonts;~a/fonts~@
ctrlrpath $HOME/mame/ctrlr;~a/ctrlr~@
bgfx_path ~a/bgfx~@
pluginspath $HOME/mame/plugins;~a/plugins~@
languagepath ~a/language~@
cfg_directory $HOME/.mame/cfg~@
nvram_directory $HOME/.mame/nvram~@
input_directory $HOME/.mame/inp~@
state_directory $HOME/.mame/sta~@
diff_directory $HOME/.mame/diff~@
comment_directory $HOME/.mame/comments~%"
share share share share share share share share
share)))
(with-output-to-file (string-append ini "/ui.ini")
(lambda _
(format #t
"historypath $HOME/mame/history~@
categorypath $HOME/mame/folders~@
cabinets_directory $HOME/mame/cabinets~@
cpanels_directory $HOME/mame/cpanel~@
pcbs_directory $HOME/mame/pcb~@
flyers_directory $HOME/mame/flyers~@
titles_directory $HOME/mame/titles~@
ends_directory $HOME/mame/ends~@
marquees_directory $HOME/mame/marquees~@
artwork_preview_directory $HOME/mame/artpreview~@
bosses_directory $HOME/mame/bosses~@
logos_directory $HOME/mame/logo~@
scores_directory $HOME/mame/scores~@
versus_directory $HOME/mame/versus~@
gameover_directory $HOME/mame/gameover~@
howto_directory $HOME/mame/howto~@
select_directory $HOME/mame/select~@
icons_directory $HOME/mame/icons~@
covers_directory $HOME/mame/covers~@
ui_path $HOME/.mame/ui~%")))
#t)))
(add-after 'install 'install-desktop-file
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(desktop (string-append out "/share/applications"))
(executable (string-append out "/bin/mame")))
(mkdir-p desktop)
(with-output-to-file (string-append desktop "/mame.desktop")
(lambda _
(format #t
"[Desktop Entry]~@
Name=mame~@
Comment=Multi-purpose emulation framework~@
Exec=~a~@
TryExec=~@*~a~@
Terminal=false~@
Type=Application~@
Categories=Game;Emulator;~@
Keywords=Game;Emulator;Arcade;~%"
executable)))
#t))))))
(native-inputs
`(("pkg-config" ,pkg-config)
("pugixml" ,pugixml)
("python-sphinx" ,python-sphinx)
("texinfo" ,texinfo)))
(inputs
`(("alsa-lib" ,alsa-lib)
("asio" ,asio)
("expat" ,expat)
("flac" ,flac)
("fontconfig" ,fontconfig)
("glm" ,glm)
("libjpeg" ,libjpeg-8) ;jpeg_read_header argument error in libjpeg-9
("libxinerama" ,libxinerama)
("lua" ,lua)
("portaudio" ,portaudio)
("portmidi" ,portmidi)
("python-wrapper" ,python-wrapper)
("qtbase" ,qtbase)
("rapidjson" ,rapidjson)
("sdl" ,(sdl-union (list sdl2 sdl2-ttf)))
("sqlite" ,sqlite)
("utf8proc" ,utf8proc)
("zlib" ,zlib)))
(home-page "http://mamedev.org/")
(synopsis "Multi-purpose emulation framework")
(description "MAME's purpose is to preserve decades of software
history. As electronic technology continues to rush forward, MAME
prevents this important @emph{vintage} software from being lost and
forgotten. This is achieved by documenting the hardware and how it
functions. The source code to MAME serves as this documentation.")
;; The MAME project as a whole is distributed under the terms of GPL2+.
;; However, over 90% of the files are under Expat license. Also, artwork,
;; keymaps, languages and samples are under CC0.
(license (list license:gpl2+ license:expat license:cc0))))

View file

@ -4,7 +4,7 @@
;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 David Thompson <davet@gnu.org>
;;; Copyright © 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2016, 2017 Theodoros Foradis <theodoros@foradis.org>
;;; Copyright © 2016, 2017, 2018 Theodoros Foradis <theodoros@foradis.org>
;;; Copyright © 2017 Julien Lepiller <julien@lepiller.eu>
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018 Clément Lassieur <clement@lassieur.org>
@ -1175,14 +1175,14 @@ high-performance parallel differential evolution (DE) optimization algorithm.")
;; See <https://debbugs.gnu.org/cgi/bugreport.cgi?bug=27344#236>.
(package
(name "libngspice")
(version "26")
(version "28")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/ngspice/ng-spice-rework/"
version "/ngspice-" version ".tar.gz"))
(sha256
(base32
"02019ndcl057nq9z41nxycqba7wxlb081ibvfj9jv010nz431qji"))
"0rnz2rdgyav16w7wfn3sfrk2lwvvgz1fh0l9107zkcldijklz04l"))
(modules '((guix build utils)))
;; We remove the non-free cider and build without it.
(snippet
@ -1206,7 +1206,7 @@ high-performance parallel differential evolution (DE) optimization algorithm.")
(add-after 'unpack 'patch-timestamps
(lambda _
(substitute* "configure"
(("`date`") "Do 1. Jan 00:00:00 UTC 1970"))
(("`date`") "Thu Jan 1 00:00:01 UTC 1970"))
#t))
(add-after 'unpack 'delete-program-manuals
(lambda _
@ -1279,17 +1279,27 @@ an embedded event driven algorithm.")
;; TODO: Remove when we have modular Trilinos packages?
(package
(name "trilinos-serial-xyce")
(version "12.6.3")
(version "12.12.1")
(source
(origin (method url-fetch)
(uri (string-append "https://trilinos.org/oldsite/download/files/trilinos-"
version "-Source.tar.gz"))
(sha256
(base32
"07jd1qpsbf31cmbyyngr4l67xzwyan24dyx5wlcahgbw7x6my3wn"))))
"1zgrcksrcbmyy79mbdv0j4j4sh0chpigxk8vcrrwgaxyxwxxhrvw"))))
(build-system cmake-build-system)
(arguments
`(#:out-of-source? #t
#:phases
(modify-phases %standard-phases
;; Delete unneeded tribits(build system) directory which makes validate-runpath
;; phase to fail.
(add-before 'validate-runpath 'delete-tribits
(lambda* (#:key outputs #:allow-other-keys)
(delete-file-recursively
(string-append (assoc-ref outputs "out")
"/lib/cmake/tribits"))
#t)))
#:configure-flags
(list "-DCMAKE_CXX_FLAGS=-O3 -fPIC"
"-DCMAKE_C_FLAGS=-O3 -fPIC"
@ -1322,7 +1332,7 @@ an embedded event driven algorithm.")
("swig" ,swig)))
(inputs
`(("boost" ,boost)
("lapack" ,lapack-3.5)
("lapack" ,lapack)
("suitesparse" ,suitesparse)))
(home-page "https://trilinos.org")
(synopsis "Engineering and scientific problems algorithms")
@ -1337,14 +1347,14 @@ unique design feature of Trilinos is its focus on packages.")
(define-public xyce-serial
(package
(name "xyce-serial")
(version "6.7")
(version "6.8")
(source
(origin (method url-fetch)
(uri (string-append "https://archive.org/download/Xyce-"
version "/Xyce-" version ".tar.gz"))
(sha256
(base32
"02k952mnvrnc5kv7r65fdrn7khwq1lbyhwyvd7jznafzdpsvgm4x"))))
"09flp1xywbb2laayd9rg8vd0fjsh115y6k1p71jacy0nrbdvvlcg"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f
@ -1360,7 +1370,7 @@ unique design feature of Trilinos is its focus on packages.")
(inputs
`(("fftw" ,fftw)
("suitesparse" ,suitesparse)
("lapack" ,lapack-3.5)
("lapack" ,lapack)
("trilinos" ,trilinos-serial-xyce)))
(home-page "https://xyce.sandia.gov/")
(synopsis "High-performance analog circuit simulator")
@ -1395,8 +1405,6 @@ parallel computing platforms. It also supports serial execution.")
"CC=mpicc"
"F77=mpif77"
"--enable-mpi"
"--enable-isorropia=no"
"--enable-zoltan=no"
(string-append
"ARCHDIR="
(assoc-ref %build-inputs "trilinos")))))))
@ -1503,116 +1511,134 @@ parallel computing platforms. It also supports serial execution.")
license:lgpl2.0+)))) ; freehdl's libraries
(define-public qucs
(package
(name "qucs")
(version "0.0.19")
(source (origin
(method url-fetch)
(uri
(string-append
"https://sourceforge.net/projects/qucs/files/qucs/" version
"/qucs-" version ".tar.gz"))
(sha256
(base32
"0giv9gfyfdizvjhq56x2pdncrlyv3k15lrsh6pk37i94vr7l7ij5"))))
(build-system gnu-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-before 'configure 'patch-configure
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "qucs/configure"
(("\\$QTDIR") (assoc-ref inputs "qt4")))
#t))
(add-after 'patch-configure 'patch-scripts
(lambda* (#:key inputs outputs #:allow-other-keys)
(substitute* '("qucs/qucs/qucsdigi"
"qucs/qucs/qucsdigilib"
"qucs/qucs/qucsveri")
(("\\$BINDIR")
(string-append (assoc-ref outputs "out") "/bin"))
(("freehdl-config")
(string-append (assoc-ref inputs "freehdl") "/bin/freehdl-config"))
(("freehdl-v2cc")
(string-append (assoc-ref inputs "freehdl") "/bin/freehdl-v2cc"))
(("cp ")
(string-append (assoc-ref inputs "coreutils") "/bin/cp "))
(("glibtool")
(string-append (assoc-ref inputs "libtool") "/bin/libtool"))
(("sed")
(string-append (assoc-ref inputs "sed") "/bin/sed"))
(("iverilog")
(string-append (assoc-ref inputs "iverilog") "/bin/iverilog"))
(("vvp")
(string-append (assoc-ref inputs "iverilog") "/bin/vvp")))
#t))
(add-before 'check 'pre-check
(lambda _
;; The test suite requires a running X server.
(system "Xvfb :1 &")
(setenv "DISPLAY" ":1")
#t))
(add-after 'install 'make-wrapper
(lambda* (#:key inputs outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
;; 'qucs' directly invokes gcc, hence this wrapping.
(wrap-program (string-append out "/bin/qucs")
`("CPLUS_INCLUDE_PATH" ":" prefix
(,(string-append (assoc-ref inputs "gcc-toolchain")
"/include")))
`("PATH" ":" prefix
(,(string-append (assoc-ref inputs "gcc-toolchain")
"/bin")))
`("LIBRARY_PATH" ":" prefix
(,(string-append (assoc-ref inputs "gcc-toolchain")
"/lib")))
`("ADMSXMLBINDIR" ":" prefix
(,(string-append (assoc-ref inputs "adms") "/bin")))
`("ASCOBINDIR" ":" prefix
(,(string-append (assoc-ref inputs "asco") "/bin")))
`("QUCS_OCTAVE" ":" prefix
(,(string-append (assoc-ref inputs "octave") "/bin/octave")))))
#t)))
#:parallel-build? #f ; race condition
#:configure-flags '("--disable-doc"))) ; we need octave-epstk
(native-inputs
`(("gperf" ,gperf)
("libtool-native" ,libtool)
("python" ,python-2) ; for tests
("matplotlib" ,python2-matplotlib) ; for tests
("numpy" ,python2-numpy) ; for tests
("xorg-server" ,xorg-server))) ; for tests
(inputs
`(("adms" ,adms)
("asco" ,asco)
("coreutils" ,coreutils)
("freehdl" ,freehdl)
("gcc-toolchain" ,gcc-toolchain)
("iverilog" ,iverilog)
("libtool" ,libtool)
("octave" ,octave)
("qt4" ,qt-4)
("sed" ,sed)))
(home-page "http://qucs.sourceforge.net/")
(synopsis "Circuit simulator with graphical user interface")
(description
"Qucs is a circuit simulator with graphical user interface. The software
;; Qucs 0.0.19 segfaults when using glibc-2.26. Temporarily build from git.
;; TODO: When qucs-0.0.20 is released, revert the commit that introduced this
;; comment and update the package.
(let ((commit "b4f27d9222568066cd59e4c387c51a35056c99d8")
(revision "0"))
(package
(name "qucs")
(version (git-version "0.0.19" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/Qucs/qucs")
(commit commit)))
(sha256
(base32 "10bclay9xhkffmsh4j4l28kj1qpxx0pnxja5vx6305cllnq4r3gb"))
(file-name (string-append name "-" version "-checkout"))))
(build-system gnu-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-before 'bootstrap 'patch-bootstrap
(lambda _
(for-each patch-shebang
'("bootstrap"
"qucs/bootstrap"
"qucs-doc/bootstrap"
"qucs-core/bootstrap"))
#t))
(add-before 'configure 'patch-configure
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "qucs/configure"
(("\\$QTDIR") (assoc-ref inputs "qt4")))
#t))
(add-after 'patch-configure 'patch-scripts
(lambda* (#:key inputs outputs #:allow-other-keys)
(substitute* '("qucs/qucs/qucsdigi"
"qucs/qucs/qucsdigilib"
"qucs/qucs/qucsveri")
(("\\$BINDIR")
(string-append (assoc-ref outputs "out") "/bin"))
(("freehdl-config")
(string-append (assoc-ref inputs "freehdl") "/bin/freehdl-config"))
(("freehdl-v2cc")
(string-append (assoc-ref inputs "freehdl") "/bin/freehdl-v2cc"))
(("cp ")
(string-append (assoc-ref inputs "coreutils") "/bin/cp "))
(("glibtool")
(string-append (assoc-ref inputs "libtool") "/bin/libtool"))
(("sed")
(string-append (assoc-ref inputs "sed") "/bin/sed"))
(("iverilog")
(string-append (assoc-ref inputs "iverilog") "/bin/iverilog"))
(("vvp")
(string-append (assoc-ref inputs "iverilog") "/bin/vvp")))
#t))
(add-before 'check 'pre-check
(lambda _
;; The test suite requires a running X server.
(system "Xvfb :1 &")
(setenv "DISPLAY" ":1")
#t))
(add-after 'install 'make-wrapper
(lambda* (#:key inputs outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
;; 'qucs' directly invokes gcc, hence this wrapping.
(wrap-program (string-append out "/bin/qucs")
`("CPLUS_INCLUDE_PATH" ":" prefix
(,(string-append (assoc-ref inputs "gcc-toolchain")
"/include")))
`("PATH" ":" prefix
(,(string-append (assoc-ref inputs "gcc-toolchain")
"/bin")))
`("LIBRARY_PATH" ":" prefix
(,(string-append (assoc-ref inputs "gcc-toolchain")
"/lib")))
`("ADMSXMLBINDIR" ":" prefix
(,(string-append (assoc-ref inputs "adms") "/bin")))
`("ASCOBINDIR" ":" prefix
(,(string-append (assoc-ref inputs "asco") "/bin")))
`("QUCS_OCTAVE" ":" prefix
(,(string-append (assoc-ref inputs "octave") "/bin/octave")))))
#t)))
#:parallel-build? #f ; race condition
#:configure-flags '("--disable-doc"))) ; we need octave-epstk
(native-inputs
`(("autoconf" ,autoconf)
("automake" ,automake)
("bison" ,bison)
("flex" ,flex)
("gperf" ,gperf)
("libtool-native" ,libtool)
("pkg-config" ,pkg-config)
("python" ,python-2) ; for tests
("matplotlib" ,python2-matplotlib) ; for tests
("numpy" ,python2-numpy) ; for tests
("xorg-server" ,xorg-server))) ; for tests
(inputs
`(("adms" ,adms)
("asco" ,asco)
("coreutils" ,coreutils)
("freehdl" ,freehdl)
("gcc-toolchain" ,gcc-toolchain)
("iverilog" ,iverilog)
("libtool" ,libtool)
("octave" ,octave)
("qt4" ,qt-4)
("sed" ,sed)))
(home-page "http://qucs.sourceforge.net/")
(synopsis "Circuit simulator with graphical user interface")
(description
"Qucs is a circuit simulator with graphical user interface. The software
aims to support all kinds of circuit simulation types---e.g. DC, AC,
S-parameter, transient, noise and harmonic balance analysis. Pure digital
simulations are also supported.")
(license license:gpl2+)))
(license license:gpl2+))))
(define-public qucs-s
(package
(name "qucs-s")
(version "0.0.19S")
(version "0.0.20")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/ra3xdh/qucs/releases/download/"
version "/qucs-" version ".tar.gz"))
(uri (string-append "https://github.com/ra3xdh/qucs_s/archive/"
version ".tar.gz"))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"1bhahvdqmayaw0306fxz1ghmjhd4fq05yk3rk7zi0z703w5imgjv"))))
"01dizf4rjciqc8x7bmv3kbhdlz90bm6n9m9fz7dbzqcwvszcs1hx"))))
(build-system cmake-build-system)
(arguments
`(#:tests? #f ; no tests
@ -1647,19 +1673,21 @@ simulations are also supported.")
"\\+ \"qucsator\" \\+ executableSuffix"))
(string-append "}{ QucsSettings.Qucsator = \""
(assoc-ref inputs "qucs") "/bin/qucsator\""))
(((string-append "else QucsSettings\\.XyceExecutable = "
"\"/usr/local/Xyce-Release-6.2.0-OPENSOURCE/bin/runxyce"))
(string-append "QucsSettings.XyceExecutable = \""
(((string-append "QucsSettings\\.XyceExecutable = "
"\"/usr/local/Xyce-Release-6.8.0-OPENSOURCE/bin/Xyce"))
(string-append "}{ QucsSettings.XyceExecutable = \""
(assoc-ref inputs "xyce-serial") "/bin/Xyce"))
(((string-append "else QucsSettings\\.XyceParExecutable = \"/usr/local"
"/Xyce-Release-6.2.0-OPENMPI-OPENSOURCE/bin/xmpirun"))
(((string-append "else QucsSettings\\.XyceParExecutable = "
"\"mpirun -np %p /usr/local"
"/Xyce-Release-6.8.0-OPENMPI-OPENSOURCE/bin/Xyce"))
(string-append "QucsSettings.XyceParExecutable = \""
(assoc-ref inputs "mpi") "/bin/mpirun"))
(("%p")
(string-append "%p "(assoc-ref inputs "xyce-parallel") "/bin/Xyce"))
(assoc-ref inputs "mpi") "/bin/mpirun -np %p "
(assoc-ref inputs "xyce-parallel") "/bin/Xyce"))
(("else QucsSettings\\.NgspiceExecutable = \"ngspice\"")
(string-append "QucsSettings.NgspiceExecutable = " "\""
(assoc-ref inputs "ngspice") "/bin/ngspice\"")))
(substitute* "qucs/extsimkernels/ngspice.cpp"
(("share/qucs/xspice_cmlib") "share/qucs-s/xspice_cmlib"))
(substitute* "qucs/qucs_actions.cpp"
(("qucstrans")
(string-append (assoc-ref inputs "qucs") "/bin/qucstrans"))
@ -1672,7 +1700,7 @@ simulations are also supported.")
(lambda* (#:key inputs outputs #:allow-other-keys)
(for-each
(lambda (script)
(let ((file (string-append "../qucs-" ,version
(let ((file (string-append "../qucs_s-" ,version
"/qucs/" script))
(out (assoc-ref outputs "out")))
(install-file file (string-append out "/bin"))

View file

@ -177,7 +177,7 @@ removable devices or support for multimedia.")
(define-public terminology
(package
(name "terminology")
(version "1.2.0")
(version "1.2.1")
(source (origin
(method url-fetch)
(uri
@ -185,7 +185,7 @@ removable devices or support for multimedia.")
"terminology/terminology-" version ".tar.xz"))
(sha256
(base32
"0kw34l5lahn1qaks3ah6x8k41d6hfywpqfak2p7qq1z87zj506mx"))
"1ii8332bl88l8md3gvz5dhi9bjpm6shyf14ck9kfyy7d56hp71mc"))
(modules '((guix build utils)))
;; Remove the bundled fonts.
;; TODO: Remove bundled lz4.

View file

@ -89,6 +89,7 @@
(guix build gnu-build-system))
#:phases
(modify-phases %standard-phases
(delete 'bootstrap)
;; The are several code fragments that embed timestamps into the
;; output. Here, we alter those fragments to use the value of
;; SOURCE_DATE_EPOCH instead.
@ -127,6 +128,29 @@
(date->string source-date-epoch
"{H,Mi,S} = {~H,~M,~S},")))
#t)))
(add-after 'unpack 'patch-/bin/sh
(lambda _
(substitute* "erts/etc/unix/run_erl.c"
(("sh = \"/bin/sh\";")
(string-append "sh = \""
(which "sh")
"\";")))
(substitute* "erts/emulator/sys/unix/sys_drivers.c"
(("SHELL \"/bin/sh\"")
(string-append "SHELL \""
(which "sh")
"\"")))
(substitute* "erts/emulator/sys/unix/erl_child_setup.c"
(("SHELL \"/bin/sh\"")
(string-append "SHELL \""
(which "sh")
"\"")))
(substitute* "lib/kernel/src/os.erl"
(("/bin/sh") (which "sh")))
#t))
(add-after 'patch-source-shebangs 'patch-source-env
(lambda _
(let ((escripts

View file

@ -1,5 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2015 Sou Bunnbu <iyzsong@gmail.com>
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;;
;;; This file is part of GNU Guix.
;;;
@ -35,14 +36,14 @@
(define-public fcitx
(package
(name "fcitx")
(version "4.2.8.6")
(version "4.2.9.6")
(source (origin
(method url-fetch)
(uri (string-append "http://download.fcitx-im.org/fcitx/"
name "-" version "_dict.tar.xz"))
(sha256
(base32
"15ymd42kg920ri0f8fymq3i68g8k1kgpmdlnk9jf5fvnz6g4w0wi"))))
"0hyrh3v82a32ylnlvzrp6cmq56x4p1a42q5xc6njmmj2msxm34x5"))))
(build-system cmake-build-system)
(outputs '("out" "gtk2" "gtk3"))
(arguments
@ -65,7 +66,12 @@
"-DENABLE_QT_IM_MODULE=OFF")))
(native-inputs
`(("doxygen" ,doxygen)
("glib:bin" ,glib "bin") ; for glib-genmarshal
("extra-cmake-modules"
;; XXX: We can't simply #:use-module due to a cycle somewhere.
,(module-ref
(resolve-interface '(gnu packages kde-frameworks))
'extra-cmake-modules))
("glib:bin" ,glib "bin") ; for glib-genmarshal
("pkg-config" ,pkg-config)))
(inputs
`(("dbus" ,dbus)
@ -78,7 +84,7 @@
("libxkbfile" ,libxkbfile)
("libxml2" ,libxml2)
("xkeyboard-config" ,xkeyboard-config)))
(home-page "http://fcitx-im.org")
(home-page "https://fcitx-im.org")
(synopsis "Input method framework")
(description
"Fcitx is an input method framework with extension support. It has
@ -89,14 +95,14 @@ built-in.")
(define-public fcitx-configtool
(package
(name "fcitx-configtool")
(version "0.4.8")
(version "0.4.10")
(source (origin
(method url-fetch)
(uri (string-append "https://download.fcitx-im.org/fcitx-configtool/"
name "-" version ".tar.xz"))
(sha256
(base32
"1vaim0namw58bfafbvws1vgd4010p19zwqfbx6bd1zi5sgchdg0f"))))
"1yyi9jhkwn49lx9a47k1zbvwgazv4y4z72gnqgzdpgdzfrlrgi5w"))))
(build-system cmake-build-system)
(arguments
`(#:configure-flags

View file

@ -1,7 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2017 Gábor Boskovits <boskovits@gmail.com>
;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2017, 2018 Ricardo Wurmus <rekado@elephly.net>
;;;
;;; This file is part of GNU Guix.
;;;
@ -144,7 +144,7 @@ non-determinism in the build process.")
(define-public glusterfs
(package
(name "glusterfs")
(version "3.10.7")
(version "3.10.12")
(source
(origin
(method url-fetch)
@ -153,7 +153,7 @@ non-determinism in the build process.")
"/glusterfs-" version ".tar.gz"))
(sha256
(base32
"02sn9s3jjva2i1l47y3in326n8jgp57rbykz5s8m87y4bzpw0ym1"))
"01ysvamvfv2l5pswa1rygpg8w0954h2wkh1ba97h3nx03m5n0prg"))
(patches
(search-patches "glusterfs-use-PATH-instead-of-hardcodes.patch"))))
(build-system gnu-build-system)
@ -170,11 +170,12 @@ non-determinism in the build process.")
;; must be replaced.
(install-file (string-append (assoc-ref inputs "automake")
"/share/automake-"
,(package-version automake) "/config.sub")
,(version-major+minor (package-version automake)) "/config.sub")
".")
#t))
;; Fix flex error. This has already been fixed with upstream commit
;; db3fe245a9e8812829eae7d143e49d0bfdfef9a7.
;; db3fe245a9e8812829eae7d143e49d0bfdfef9a7, but is not available in
;; current releases.
(add-before 'configure 'fix-lex
(lambda _
(substitute* "libglusterfs/src/Makefile.in"

View file

@ -209,7 +209,8 @@ by the b43-open driver of Linux-libre.")
(let* ((out (assoc-ref outputs "out"))
(fmw (string-append out "/share/firmware")))
(mkdir-p fmw)
(copy-file "out/bios.bin" (string-append fmw "/bios.bin"))))))))
(copy-file "out/bios.bin" (string-append fmw "/bios.bin"))
#t))))))
(home-page "https://www.seabios.org/SeaBIOS")
(synopsis "x86 BIOS implementation")
(description "SeaBIOS is an implementation of a 16bit x86 BIOS. SeaBIOS
@ -262,36 +263,26 @@ coreboot.")
(setenv "PATH" (string-append (getenv "PATH") ":" bin))
; FIXME: The below script errors out. When using 'invoke' instead
; of 'system*' this causes the build to fail.
(system* "bash" "edksetup.sh" "BaseTools")
(system* "bash" "edksetup.sh")
(substitute* "Conf/target.txt"
(("^TARGET[ ]*=.*$") "TARGET = RELEASE\n")
(("^TOOL_CHAIN_TAG[ ]*=.*$") "TOOL_CHAIN_TAG = GCC49\n")
(("^MAX_CONCURRENT_THREAD_NUMBER[ ]*=.*$")
(format #f "MAX_CONCURRENT_THREAD_NUMBER = ~a~%"
(number->string (parallel-job-count)))))
;; Build build support.
(setenv "BUILD_CC" "gcc")
(invoke "make" "-C" (string-append tools "/Source/C"))
(invoke "make" "-C" tools)
#t)))
(add-after 'build 'build-ia32
(replace 'build
(lambda _
(substitute* "Conf/target.txt"
(("^TARGET_ARCH[ ]*=.*$") "TARGET_ARCH = IA32\n")
(("^ACTIVE_PLATFORM[ ]*=.*$")
"ACTIVE_PLATFORM = OvmfPkg/OvmfPkgIa32.dsc\n"))
(invoke "build")
#t))
(invoke "build" "-a" "IA32" "-t" "GCC49"
"-p" "OvmfPkg/OvmfPkgIa32.dsc")))
,@(if (string=? "x86_64-linux" (%current-system))
'((add-after 'build 'build-x64
(lambda _
(substitute* "Conf/target.txt"
(("^TARGET_ARCH[ ]*=.*$") "TARGET_ARCH = X64\n")
(("^ACTIVE_PLATFORM[ ]*=.*$")
"ACTIVE_PLATFORM = OvmfPkg/OvmfPkgX64.dsc\n"))
(invoke "build")
#t)))
(invoke "build" "-a" "X64" "-t" "GCC49"
"-p" "OvmfPkg/OvmfPkgX64.dsc"))))
'())
(delete 'build)
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
@ -312,6 +303,76 @@ Virtual Machines. OVMF contains a sample UEFI firmware for QEMU and KVM.")
(license (list license:expat
license:bsd-2 license:bsd-3 license:bsd-4))))
(define-public ovmf-aarch64
(package
(inherit ovmf)
(name "ovmf-aarch64")
(native-inputs
`(,@(package-native-inputs ovmf)
,@(if (not (string-prefix? "aarch64" (%current-system)))
`(("cross-gcc" ,(cross-gcc "aarch64-linux-gnu"))
("cross-binutils" ,(cross-binutils "aarch64-linux-gnu")))
'())))
(arguments
(substitute-keyword-arguments (package-arguments ovmf)
((#:phases phases)
`(modify-phases ,phases
(add-before 'configure 'set-env
(lambda _
,@(if (not (string-prefix? "aarch64" (%current-system)))
`((setenv "GCC49_AARCH64_PREFIX" "aarch64-linux-gnu-"))
'())
#t))
(replace 'build
(lambda _
(invoke "build" "-a" "AARCH64" "-t" "GCC49"
"-p" "ArmVirtPkg/ArmVirtQemu.dsc")))
(delete 'build-x64)
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(fmw (string-append out "/share/firmware")))
(mkdir-p fmw)
(copy-file "Build/ArmVirtQemu-AARCH64/RELEASE_GCC49/FV/QEMU_EFI.fd"
(string-append fmw "/ovmf_aarch64.bin"))
#t)))))))
(supported-systems %supported-systems)))
(define-public ovmf-arm
(package
(inherit ovmf)
(name "ovmf-arm")
(native-inputs
`(,@(package-native-inputs ovmf)
,@(if (not (string-prefix? "armhf" (%current-system)))
`(("cross-gcc" ,(cross-gcc "arm-linux-gnueabihf"))
("cross-binutils" ,(cross-binutils "arm-linux-gnueabihf")))
'())))
(arguments
(substitute-keyword-arguments (package-arguments ovmf)
((#:phases phases)
`(modify-phases ,phases
(add-before 'configure 'set-env
(lambda _
,@(if (not (string-prefix? "armhf" (%current-system)))
`((setenv "GCC49_ARM_PREFIX" "arm-linux-gnueabihf-"))
'())
#t))
(replace 'build
(lambda _
(invoke "build" "-a" "ARM" "-t" "GCC49"
"-p" "ArmVirtPkg/ArmVirtQemu.dsc")))
(delete 'build-x64)
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(fmw (string-append out "/share/firmware")))
(mkdir-p fmw)
(copy-file "Build/ArmVirtQemu-ARM/RELEASE_GCC49/FV/QEMU_EFI.fd"
(string-append fmw "/ovmf_arm.bin"))
#t)))))))
(supported-systems %supported-systems)))
(define* (make-arm-trusted-firmware platform #:optional (arch "aarch64"))
(package
(name (string-append "arm-trusted-firmware-" platform))

View file

@ -1,7 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2014 John Darrington <jmd@gnu.org>
;;; Copyright © 2015 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2015 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2015, 2018 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2016 Kei Kebreau <kkebreau@posteo.net>
;;; Copyright © 2018 Mark H Weaver <mhw@netris.org>
;;;
@ -99,7 +99,7 @@ UI builder called FLUID that can be used to create applications in minutes.")
(define-public ntk
(package
(name "ntk")
(version "1.3.0")
(version "1.3.1000")
(source (origin
(method git-fetch)
(uri (git-reference
@ -107,21 +107,20 @@ UI builder called FLUID that can be used to create applications in minutes.")
(commit (string-append "v" version))))
(sha256
(base32
"0ggrh6rihf676z1vfgpgcl6kpqwyh39ih0hskcgzklh7fphfik39"))
"0j38mhnfqy6swcrnc5zxcwlqi8b1pgklyghxk6qs1lf4japv2zc0"))
(file-name (string-append name "-" version "-checkout"))))
(build-system waf-build-system)
(arguments
`(#:tests? #f ;no "check" target
#:python ,python-2
#:configure-flags '("--enable-gl")
#:phases
(modify-phases %standard-phases
(add-before
'configure 'set-ldflags
(lambda* (#:key outputs #:allow-other-keys)
(setenv "LDFLAGS"
(string-append "-Wl,-rpath="
(assoc-ref outputs "out") "/lib")))))))
(add-before 'configure 'set-ldflags
(lambda* (#:key outputs #:allow-other-keys)
(setenv "LDFLAGS"
(string-append "-Wl,-rpath="
(assoc-ref outputs "out") "/lib"))
#t)))))
(inputs
`(("libjpeg" ,libjpeg)
("glu" ,glu)))

View file

@ -431,15 +431,19 @@ text in Simplified Chinese, Traditional Chinese, Japanese, and Korean.")
(license license:silofl1.1)))
(define-public font-cns11643
;; Since upstream doesn't provide any version numbers, the date of the last
;; edit is used, taken from https://data.gov.tw/dataset/5961
;; XXX: The source is also updated in-place, so it may be desirable to mirror
;; it elsewhere to avoid suddenly losing the current source file.
(package
(name "font-cns11643")
(version "98.1.20170524")
(version "98.1.20180605")
(source (origin
(method url-fetch)
(uri "http://www.cns11643.gov.tw/AIDB/Open_Data.zip")
(sha256
(base32
"1iad6rklxkx03ji1fav9faq7cmqkci3i6pcyg2ilvh984j5qzhq3"))))
"000a9whrjr1cd4pjc23pbl60zwkq3wcb5g61p9qi7fn3hwkp0kyw"))))
(build-system font-build-system)
(home-page "http://www.cns11643.gov.tw/AIDB/welcome.do")
(synopsis "CJK TrueType fonts, TW-Kai and TW-Sung")
@ -617,7 +621,7 @@ languages, plus Greek and Cyrillic.")
(define-public font-gnu-unifont
(package
(name "font-gnu-unifont")
(version "10.0.07")
(version "11.0.01")
(source (origin
(method url-fetch)
(uri (string-append
@ -625,7 +629,7 @@ languages, plus Greek and Cyrillic.")
version ".tar.gz"))
(sha256
(base32
"1js8dn4v4pv8jqprsxa1fv4fs3hqhm9x4dj19fg9qgc8fx7k0v0k"))))
"1nkapra0ic4fp3lmnvfc6jly62yskhcdkwrnq29hvh3xs51ncc52"))))
(build-system gnu-build-system)
(outputs '("out" ; TrueType version
"pcf" ; PCF (bitmap) version
@ -650,12 +654,12 @@ languages, plus Greek and Cyrillic.")
(psf (string-append (assoc-ref outputs "psf")
"/share/consolefonts"))
(bin (assoc-ref outputs "bin")))
(system* "make"
(string-append "PREFIX=" bin)
(string-append "TTFDEST=" ttf)
(string-append "PCFDEST=" pcf)
(string-append "CONSOLEDEST=" psf)
"install")
(invoke "make"
(string-append "PREFIX=" bin)
(string-append "TTFDEST=" ttf)
(string-append "PCFDEST=" pcf)
(string-append "CONSOLEDEST=" psf)
"install")
;; Move Texinfo file to the right place.
(mkdir (string-append bin "/share/info"))
(rename-file (string-append bin "/share/unifont/unifont.info.gz")

View file

@ -334,15 +334,15 @@ X11-system or any other graphical user interface.")
(define-public teckit
(package
(name "teckit")
(version "2.5.7")
(source (origin
(method url-fetch)
(uri (string-append
"https://github.com/silnrsi/teckit/releases/download/v"
version "/teckit-" version ".tar.gz"))
(sha256
(base32
"1pbp97vcpj6x4yixx6ww0vsi1rrr99fksxdjafs6gdargzd24cj4"))))
(version "2.5.8")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/silnrsi/teckit")
(commit (string-append "v" version))))
(sha256
(base32 "1jmsdmfz7bgq1n5qsqgpq1b1n77f1hll0czfw5wkxz4knzb14ndn"))))
(build-system gnu-build-system)
(inputs
`(("zlib" ,zlib)

View file

@ -152,7 +152,7 @@ For synthesis, the compiler generates netlists in the desired format.")
#t))
(replace 'configure
(lambda* (#:key inputs (make-flags '()) #:allow-other-keys)
(zero? (apply system* "make" "config-gcc" make-flags))))
(apply invoke "make" "config-gcc" make-flags)))
(add-after 'configure 'prepare-abc
(lambda* (#:key inputs #:allow-other-keys)
(let* ((sourceabc (assoc-ref inputs "abc"))
@ -163,7 +163,7 @@ For synthesis, the compiler generates netlists in the desired format.")
(lambda (port)
(format port ".PHONY: all\nall:\n\tcp -f abc abc-default\n")))
(copy-file source "abc/abc")
(zero? (system* "chmod" "+w" "abc/abc")))))
(invoke "chmod" "+w" "abc/abc"))))
(add-before 'check 'fix-iverilog-references
(lambda* (#:key inputs native-inputs #:allow-other-keys)
(let* ((xinputs (or native-inputs inputs))

View file

@ -419,10 +419,11 @@ manager for the current system.")
;; AssertionError: 'x-apple-ios-png' != 'png'
(substitute* "test/test-mime.py"
(("self.check_mimetype\\(imgpng, 'image', 'png'\\)") "#"))
(zero? (system* "nosetests" "-v")))))))
(invoke "nosetests" "-v"))))))
(native-inputs
`(("shared-mime-info" ,shared-mime-info) ;for tests
("hicolor-icon-theme" ,hicolor-icon-theme) ;for tests
;; For tests.
`(("shared-mime-info" ,shared-mime-info)
("hicolor-icon-theme" ,hicolor-icon-theme)
("python-nose" ,python-nose)))
(home-page "https://www.freedesktop.org/wiki/Software/pyxdg")
(synopsis "Implementations of freedesktop.org standards in Python")

View file

@ -169,7 +169,7 @@ as required.")
(define-public libfilezilla
(package
(name "libfilezilla")
(version "0.12.2")
(version "0.12.3")
(source
(origin
(method url-fetch)
@ -177,7 +177,7 @@ as required.")
name "/" name "-" version ".tar.bz2"))
(sha256
(base32
"1v461hwdk74whp89s490dj1z18gfqf9bz9140m5f11rsvrpid33p"))))
"1v606kcz2rdmmlwxrv3xvwh7ia1nh6jfc9bhjw2r4ai3rm16gch5"))))
(build-system gnu-build-system)
(native-inputs
`(("cppunit" ,cppunit)

View file

@ -6,7 +6,7 @@
;;; Copyright © 2015, 2016, 2017 David Thompson <davet@gnu.org>
;;; Copyright © 2016, 2017, 2018 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016, 2017 Kei Kebreau <kkebreau@posteo.net>
;;; Copyright © 2016 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2016, 2018 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2016, 2017 Julian Graham <joolean@gmail.com>
;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2017 Manolis Fragkiskos Ragkousis <manolis837@gmail.com>
@ -74,6 +74,7 @@
#:use-module (gnu packages python)
#:use-module (gnu packages qt)
#:use-module (gnu packages sdl)
#:use-module (gnu packages texinfo)
#:use-module (gnu packages tls)
#:use-module (gnu packages video)
#:use-module (gnu packages xdisorg)
@ -1233,3 +1234,40 @@ related games such as Heretic and Hexen. It comes with a 3d preview mode and
a 2D editor view.")
(home-page "http://eureka-editor.sourceforge.net/")
(license license:gpl2+)))
(define-public guile-chickadee
(package
(name "guile-chickadee")
(version "0.2.0")
(source (origin
(method url-fetch)
(uri (string-append "https://files.dthompson.us/chickadee/"
"chickadee-" version ".tar.gz"))
(sha256
(base32
"10qx0ha5gsayybd186r1my7vc7rf5fbzp9jvmc4xg9a8wz8rqhah"))))
(build-system gnu-build-system)
(arguments
'(#:make-flags '("GUILE_AUTO_COMPILE=0")))
(propagated-inputs
`(("guile-opengl" ,guile-opengl)
("guile-sdl2" ,guile-sdl2)))
(inputs
`(("guile" ,guile-2.2)))
(native-inputs
`(("pkg-config" ,pkg-config)
("texinfo" ,texinfo)))
(home-page "https://dthompson.us/projects/chickadee.html")
(synopsis "Game development toolkit for Guile Scheme with SDL2 and OpenGL")
(description "Chickadee is a game development toolkit for Guile Scheme
built on top of SDL2 and OpenGL. Chickadee aims to provide all the features
that parenthetically inclined game developers need to make 2D (and eventually
3D) games in Scheme, such as:
@enumerate
@item extensible, fixed-timestep game loop
@item OpenGL-based rendering engine
@item keyboard, mouse, controller input
@item REPL-driven development model
@end enumerate\n")
(license license:gpl3+)))

View file

@ -177,82 +177,70 @@ settings to tweak as well.")
(license license:gpl2+)))
(define-public cataclysm-dda
(package
(name "cataclysm-dda")
(version "0.C")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/CleverRaven/Cataclysm-DDA/"
"archive/" version ".tar.gz"))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"1xlajmgl9cviqyjpp5g5q4rbljy9gqc49v54bi8gpzr68s14gsb9"))
(modules '((guix build utils)))
(snippet
;; Import cmath header for the std::pow function.
'(begin
(for-each (lambda (file)
(substitute* file
(("#include <math.h>")
"#include <cmath>")))
(find-files "src"))
#t))))
(build-system gnu-build-system)
(arguments
'(#:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out"))
"USE_HOME_DIR=1" "DYNAMIC_LINKING=1" "RELEASE=1")
#:phases
(modify-phases %standard-phases
(replace 'configure
(lambda _
(substitute* "Makefile"
(("ncursesw5-config") "ncursesw6-config")
(("RELEASE_FLAGS = -Werror") "RELEASE_FLAGS ="))
#t))
(add-after 'build 'build-tiles
(lambda* (#:key make-flags outputs #:allow-other-keys)
;; Change prefix directory and enable tile graphics and sound.
(zero?
(apply system* "make" "TILES=1" "SOUND=1"
(string-append "PREFIX="
(assoc-ref outputs "tiles"))
(cdr make-flags)))))
(add-after 'install 'install-tiles
(lambda* (#:key make-flags outputs #:allow-other-keys)
(zero?
(apply system* "make" "install" "TILES=1" "SOUND=1"
(string-append "PREFIX="
(assoc-ref outputs "tiles"))
(cdr make-flags))))))
;; TODO: Add libtap++ from https://github.com/cbab/libtappp as a native
;; input in order to support tests.
#:tests? #f))
(outputs '("out"
"tiles")) ; For tile graphics and sound support.
(native-inputs
`(("gettext" ,gettext-minimal)
("pkg-config" ,pkg-config)))
(inputs
`(("freetype" ,freetype)
("libogg" ,libogg)
("libvorbis" ,libvorbis)
("ncurses" ,ncurses)
("sdl2" ,sdl2)
("sdl2-image" ,sdl2-image)
("sdl2-ttf" ,sdl2-ttf)
("sdl2-mixer" ,sdl2-mixer)))
(home-page "http://en.cataclysmdda.com/")
(synopsis "Survival horror roguelike video game")
(description
"Cataclysm: Dark Days Ahead is a roguelike set in a post-apocalyptic world.
Struggle to survive in a harsh, persistent, procedurally generated world.
Scavenge the remnants of a dead civilization for food, equipment, or, if you are
lucky, a vehicle with a full tank of gas to get you out of Dodge. Fight to
defeat or escape from a wide variety of powerful monstrosities, from zombies to
giant insects to killer robots and things far stranger and deadlier, and against
the others like yourself, that want what you have.")
(license license:cc-by-sa3.0)))
(let ((commit "ad3b0c3d521292d119f97a83390e7acfe9e9e7f7")
(revision "1"))
(package
(name "cataclysm-dda")
;; This denotes the version released after the 0.C release.
;; Revert to a normal version number if updating to stable version 0.D.
(version (git-version "0.C" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/CleverRaven/Cataclysm-DDA.git")
(commit commit)))
(sha256
(base32
"1kdgbl8zqd53f5yilm2c9nyq3w6585yxl5jvgxy65dlpzxcqqj7y"))
(file-name (git-file-name name version))))
(build-system gnu-build-system)
(arguments
'(#:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out"))
"USE_HOME_DIR=1" "DYNAMIC_LINKING=1" "RELEASE=1")
#:phases
(modify-phases %standard-phases
(delete 'configure)
(add-after 'build 'build-tiles
(lambda* (#:key make-flags outputs #:allow-other-keys)
;; Change prefix directory and enable tile graphics and sound.
(apply invoke "make" "TILES=1" "SOUND=1"
(string-append "PREFIX="
(assoc-ref outputs "tiles"))
(cdr make-flags))))
(add-after 'install 'install-tiles
(lambda* (#:key make-flags outputs #:allow-other-keys)
(apply invoke "make" "install" "TILES=1" "SOUND=1"
(string-append "PREFIX="
(assoc-ref outputs "tiles"))
(cdr make-flags)))))
;; TODO: Add libtap++ from https://github.com/cbab/libtappp as a native
;; input in order to support tests.
#:tests? #f))
(outputs '("out"
"tiles")) ; For tile graphics and sound support.
(native-inputs
`(("gettext" ,gettext-minimal)
("pkg-config" ,pkg-config)))
(inputs
`(("freetype" ,freetype)
("libogg" ,libogg)
("libvorbis" ,libvorbis)
("ncurses" ,ncurses)
("sdl2" ,sdl2)
("sdl2-image" ,sdl2-image)
("sdl2-ttf" ,sdl2-ttf)
("sdl2-mixer" ,sdl2-mixer)))
(home-page "http://en.cataclysmdda.com/")
(synopsis "Survival horror roguelike video game")
(description
"Cataclysm: Dark Days Ahead is a roguelike set in a post-apocalyptic
world. Struggle to survive in a harsh, persistent, procedurally generated
world. Scavenge the remnants of a dead civilization for food, equipment, or,
if you are lucky, a vehicle with a full tank of gas to get you out of Dodge.
Fight to defeat or escape from a wide variety of powerful monstrosities, from
zombies to giant insects to killer robots and things far stranger and deadlier,
and against the others like yourself, that want what you have.")
(license license:cc-by-sa3.0))))
(define-public cowsay
(package
@ -461,7 +449,7 @@ automata. The following features are available:
(define-public meandmyshadow
(package
(name "meandmyshadow")
(version "0.4")
(version "0.4.1")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/meandmyshadow/"
@ -469,7 +457,7 @@ automata. The following features are available:
"-src.tar.gz"))
(sha256
(base32
"1dpb7s32b2psj5w3nr5kqibib8nndi86mw8gxp4hmxwrfiisf86d"))))
"0wl5dc75qy001s6043cx0vr2l5y2qfv1cldqnwill9sfygqj9p95"))))
(build-system cmake-build-system)
(arguments
'(#:tests? #f ; there are no tests
@ -485,7 +473,7 @@ automata. The following features are available:
;; link with libX11, even though we're using the GL backend.
(substitute* "CMakeLists.txt"
(("\\$\\{X11_LIBRARIES\\}") "-lX11"))
)))))
#t)))))
(native-inputs
`(("pkg-config" ,pkg-config)))
(inputs
@ -1616,23 +1604,20 @@ reference interpreter, using the Glk API.")
(define-public fizmo
(package
(name "fizmo")
(version "0.8.4")
(version "0.8.5")
(source (origin
(method url-fetch)
(uri (string-append "https://christoph-ender.de/fizmo/source/"
(uri (string-append "https://fizmo.spellbreaker.org/source/"
name "-" version ".tar.gz"))
(sha256
(base32
"1sd988db2302r7cbfcfghbmg8ck43c6hvnlnlpb0rqxb7pm9cwyy"))))
"1amyc4n41jf08kxmdgkk30bzzx54miaxa97w28f417qwn8lrl98w"))))
(build-system gnu-build-system)
(arguments
'(#:configure-flags
(let ((libjpeg (assoc-ref %build-inputs "libjpeg"))
(ncurses (assoc-ref %build-inputs "ncurses")))
(list (string-append "jpeg_CFLAGS=-I" libjpeg "/include")
(string-append "jpeg_LIBS=-ljpeg")
(string-append "ncursesw_CFLAGS=-I" ncurses "/include")
(string-append "ncursesw_LIBS=-lncursesw")))))
(list (string-append "--with-jpeg-includedir=" libjpeg "/include")))))
(native-inputs
`(("pkg-config" ,pkg-config)))
(inputs
@ -1643,7 +1628,7 @@ reference interpreter, using the Glk API.")
("libxml2" ,libxml2)
("ncurses" ,ncurses)
("sdl2" ,sdl2)))
(home-page "https://christoph-ender.de/fizmo/")
(home-page "https://fizmo.spellbreaker.org/")
(synopsis "Z-machine interpreter")
(description
"Fizmo is a console-based Z-machine interpreter. It is used to play
@ -1679,7 +1664,7 @@ Protocol).")
(define-public extremetuxracer
(package
(name "extremetuxracer")
(version "0.7.4")
(version "0.7.5")
(source (origin
(method url-fetch)
(uri (string-append
@ -1687,15 +1672,15 @@ Protocol).")
version "/etr-" version ".tar.xz"))
(sha256
(base32
"0d2j4ybdjmimg67v2fndgahgq4fvgz3fpfb3a4l1ar75n6hy776s"))))
"1ly63316c07i0gyqqmyzsyvygsvygn0fpk3bnbg25fi6li99rlsg"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)))
(inputs
`(("glu" ,glu)
("sfml" ,sfml)))
(synopsis "High speed arctic racing game based on Tux Racer")
;; Snarfed straight from Debian
(synopsis "High-speed arctic racing game based on Tux Racer")
;; Snarfed straight from Debian.
(description "Extreme Tux Racer, or etracer as it is called for short, is
a simple OpenGL racing game featuring Tux, the Linux mascot. The goal of the
game is to slide down a snow- and ice-covered mountain as quickly as possible,
@ -1822,7 +1807,7 @@ falling, themeable graphics and sounds, and replays.")
(define-public wesnoth
(package
(name "wesnoth")
(version "1.14.1")
(version "1.14.3")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/wesnoth/wesnoth-"
@ -1831,7 +1816,7 @@ falling, themeable graphics and sounds, and replays.")
name "-" version ".tar.bz2"))
(sha256
(base32
"1mzrnbv71b4s41c5x8clhb53l8lidiwzny1hl828228pvys5bxkb"))))
"06648041nr77sgzr7jpmcn37cma3hp41qynp50xzddx28l17zwg9"))))
(build-system cmake-build-system)
(arguments
`(#:tests? #f)) ; no check target
@ -2001,6 +1986,16 @@ world}, @uref{http://evolonline.org, Evol Online} and
(origin (method url-fetch)
(uri (string-append "http://binaries.openttd.org/releases/"
version "/openttd-" version "-source.tar.xz"))
(patches
(list
(origin (method url-fetch)
(uri (string-append
"https://github.com/OpenTTD/OpenTTD/commit/"
"19076c24c1f3baf2a22d1fa832d5688216cf54a3.patch"))
(file-name "openttd-fix-compilation-with-ICU-61.patch")
(sha256
(base32
"02d1xmb75yv4x6rfnvxk3vvq4l3lvvwr2pfsdzn7lzalic51ziqh")))))
(sha256
(base32
"0dhv5bbbg1dmmq7fi3xss0a9jq2rqgb5sf9fsqzlsjcdm590j6b1"))
@ -2219,6 +2214,88 @@ Transport Tycoon Deluxe.")
("opensfx" ,openttd-opensfx)
,@(package-native-inputs openttd-engine)))))
(define openrct2-title-sequences
(package
(name "openrct2-title-sequences")
(version "0.1.2")
(source
(origin
(method url-fetch)
(uri (string-append "https://github.com/OpenRCT2/title-sequences/releases/download/v"
version "/title-sequence-v" version ".zip"))
(file-name (string-append name "-" version ".zip"))
(sha256
(base32
"0qbyxrsw8hlgaq0r5d7lx7an3idy4qbfv7yiw9byhldk763n9cfw"))))
(build-system trivial-build-system)
(native-inputs
`(("bash" ,bash)
("coreutils" ,coreutils)
("unzip" ,unzip)))
(arguments
`(#:modules ((guix build utils))
#:builder
(begin
(use-modules (guix build utils))
(let* ((out (assoc-ref %outputs "out"))
(openrct2-title-sequences (string-append out
"/share/openrct2/title-sequences"))
(source (assoc-ref %build-inputs "source"))
(unzip (string-append (assoc-ref %build-inputs "unzip") "/bin/unzip")))
(copy-file source (string-append ,name "-" ,version ".zip"))
(invoke unzip (string-append ,name "-" ,version ".zip"))
(delete-file (string-append ,name "-" ,version ".zip"))
(mkdir-p openrct2-title-sequences)
(copy-recursively "."
openrct2-title-sequences)
#t))))
(home-page "https://github.com/OpenRCT2/OpenRCT2")
(synopsis "Title sequences for OpenRCT2")
(description
"openrct2-title-sequences is a set of title sequences for OpenRCT2.")
(license license:gpl3+)))
(define openrct2-objects
(package
(name "openrct2-objects")
(version "1.0.2")
(source
(origin
(method url-fetch)
(uri (string-append "https://github.com/OpenRCT2/objects/releases/download/v"
version "/objects.zip"))
(file-name (string-append name "-" version ".zip"))
(sha256
(base32
"1z92afhbv13j1ig6fz0x8w9vdmfchssv16vwwhb0vj40pn1g1rwy"))))
(build-system trivial-build-system)
(native-inputs
`(("bash" ,bash)
("coreutils" ,coreutils)
("unzip" ,unzip)))
(arguments
`(#:modules ((guix build utils))
#:builder
(begin
(use-modules (guix build utils))
(let* ((out (assoc-ref %outputs "out"))
(openrct2-objects (string-append out
"/share/openrct2/objects"))
(source (assoc-ref %build-inputs "source"))
(unzip (string-append (assoc-ref %build-inputs "unzip") "/bin/unzip")))
(copy-file source (string-append ,name "-" ,version ".zip"))
(invoke unzip (string-append ,name "-" ,version ".zip"))
(delete-file (string-append ,name "-" ,version ".zip"))
(mkdir-p openrct2-objects)
(copy-recursively "."
openrct2-objects)
#t))))
(home-page "https://github.com/OpenRCT2/OpenRCT2")
(synopsis "Objects for OpenRCT2")
(description
"openrct2-objects is a set of objects for OpenRCT2.")
(license license:gpl3+)))
(define-public openrct2
(package
(name "openrct2")
@ -2234,35 +2311,39 @@ Transport Tycoon Deluxe.")
(file-name (string-append name "-" version ".tar.gz"))))
(build-system cmake-build-system)
(arguments
`(#:tests? #f ;; no tests available
`(#:configure-flags '("-DDOWNLOAD_TITLE_SEQUENCES=OFF")
#:tests? #f ; Tests require network.
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'fix-usr-share-paths
(lambda* (#:key make-flags outputs #:allow-other-keys)
(add-after 'unpack 'fix-usr-share-paths&add-data
(lambda* (#:key inputs outputs #:allow-other-keys)
(let ((titles (assoc-ref inputs "openrct2-title-sequences"))
(objects (assoc-ref inputs "openrct2-objects")))
;; Fix some references to /usr/share.
;; Change to Platform.Linux.cpp on 0.1.2+
(substitute* "src/openrct2/platform/linux.c"
(("/usr/share")
(string-append (assoc-ref %outputs "out") "/share")))))
(add-after 'build 'fix-cmake-install-file
(lambda _
;; The build system tries to download a file and compare hashes.
;; Since we have no network, remove this so the install doesn't fail.
(substitute* "cmake_install.cmake"
(("EXPECTED_HASH SHA1=b587d83de508d0b104d14c599b76f8565900fce0")
"")))))))
(string-append (assoc-ref %outputs "out") "/share")))
(copy-recursively (string-append titles
"/share/openrct2/title-sequences") "data/title")
(copy-recursively (string-append objects
"/share/openrct2/objects") "data/object")))))))
(inputs `(("curl" ,curl)
("fontconfig" ,fontconfig)
("freetype" ,freetype)
("icu4c" ,icu4c)
("jansson" ,jansson)
("libpng" ,libpng)
("libzip" ,libzip)
("mesa" ,mesa)
("openrct2-objects" ,openrct2-objects)
("openrct2-title-sequences" ,openrct2-title-sequences)
("openssl" ,openssl)
("sdl2" ,sdl2)
("speexdsp" ,speexdsp)
("zlib" ,zlib)))
(native-inputs
`(("pkg-config" ,pkg-config)))
`(("pkg-config" ,pkg-config)))
(home-page "https://github.com/OpenRCT2/OpenRCT2")
(synopsis "Free software re-implementation of RollerCoaster Tycoon 2")
(description "OpenRCT2 is a free software re-implementation of
@ -2315,19 +2396,21 @@ are only two levels to play with, but they are very addictive.")
(define-public pioneers
(package
(name "pioneers")
(version "15.4")
(version "15.5")
(source (origin
(method url-fetch)
(uri (string-append "http://downloads.sourceforge.net/pio/"
"pioneers-" version ".tar.gz"))
(sha256
(base32
"1p1d18hrfmqcnghip3shkzcs5qkz6j99jvkdkqfi7pqdvjc323cs"))))
"037gdiiw690jw3wd1s9lxmkqx0caxyk0b4drpm7i9p28gig43q9y"))))
(build-system gnu-build-system)
(inputs `(("gtk+" ,gtk+)
("librsvg" ,librsvg)
("avahi" ,avahi)))
(inputs `(("avahi" ,avahi)
("gtk+" ,gtk+)
("librsvg" ,librsvg)))
(native-inputs `(("intltool" ,intltool)
("itstool" ,itstool)
("libxml2" ,libxml2)
("pkg-config" ,pkg-config)))
(synopsis "Board game inspired by The Settlers of Catan")
(description "Pioneers is an emulation of the board game The Settlers of
@ -3171,25 +3254,46 @@ colors, pictures, and sounds.")
"0jwzbwkgp1l5ia6c7s760gmdirbsncp6nfqp7vqdqsfb63la9gl2"))))
(build-system trivial-build-system)
(arguments
'(#:modules ((guix build utils))
`(#:modules ((guix build utils))
#:builder
(begin
(use-modules (guix build utils))
(let* ((out (assoc-ref %outputs "out"))
(bindir (string-append out "/bin"))
(prog (string-append bindir "/mrrescue"))
(source (assoc-ref %build-inputs "source"))
(bash (string-append (assoc-ref %build-inputs "bash")
"/bin/bash"))
(love (string-append (assoc-ref %build-inputs "love")
"/bin/love")))
(mkdir-p bindir)
(with-output-to-file prog
(let* ((out (assoc-ref %outputs "out"))
(script (string-append out "/bin/" ,name))
(data (string-append out "/share/" ,name))
(source (assoc-ref %build-inputs "source"))
(unzip (string-append (assoc-ref %build-inputs "unzip")
"/bin/unzip"))
(patch (string-append (assoc-ref %build-inputs "patch")
"/bin/patch"))
(bash (string-append (assoc-ref %build-inputs "bash")
"/bin/bash"))
(love (string-append (assoc-ref %build-inputs "love")
"/bin/love")))
(mkdir-p (dirname script))
(with-output-to-file script
(lambda ()
(format #t "#!~a~%" bash)
(format #t "exec -a mrrescue \"~a\" \"~a\"~%" love source)))
(chmod prog #o755)
(format #t "exec -a ~a \"~a\" \"~a\"~%" ,name love data)))
(chmod script #o755)
;; The better way to package this game would be to install *only* the
;; script above, pointing to the unextracted .love file in the store.
;; However, mrrescue 1.02e needs to be patched to work with Love 11.
;; Instead of extracting the .love file, patching it, and re-zipping
;; it to the store, simply point the script to the extracted patched
;; data directory directly.
(mkdir-p data)
(with-directory-excursion data
(invoke unzip source)
(invoke patch "-p1" "-i"
(assoc-ref %build-inputs "love-11.patch")))
#t))))
(native-inputs
`(("unzip" ,unzip)
("patch" ,patch)
("love-11.patch" ,(search-patch "mrrescue-support-love-11.patch"))))
(inputs
`(("bash" ,bash)
("love" ,love)))
@ -3197,8 +3301,8 @@ colors, pictures, and sounds.")
(synopsis "Arcade-style fire fighting game")
(description
"Mr. Rescue is an arcade styled 2d action game centered around evacuating
civilians from burning buildings. The game features fast paced fire
extinguishing action, intense boss battles, a catchy soundtrack and lots of
civilians from burning buildings. The game features fast-paced fire
extinguishing action, intense boss battles, a catchy soundtrack, and lots of
throwing people around in pseudo-randomly generated buildings.")
(license (list license:zlib ; for source code
license:cc-by-sa3.0)))) ; for graphics and music assets
@ -4306,7 +4410,7 @@ Crowther & Woods, its original authors, in 1995. It has been known as
(define-public tome4
(package
(name "tome4")
(version "1.5.5")
(version "1.5.10")
(synopsis "Single-player, RPG roguelike game set in the world of Eyal")
(source
(origin
@ -4315,7 +4419,7 @@ Crowther & Woods, its original authors, in 1995. It has been known as
version ".tar.bz2"))
(sha256
(base32
"0v2qgdfpvdzd1bcbp9v8pfahj1bgczsq2d4xfhh5wg11jgjcwz03"))
"0mc5dgh2x9nbili7gy6srjhb23ckalf08wqq2amyjr5rq392jvd7"))
(modules '((guix build utils)))
(snippet
'(begin
@ -4337,9 +4441,10 @@ Crowther & Woods, its original authors, in 1995. It has been known as
(arguments
`(#:make-flags '("CC=gcc" "config=release")
#:phases (modify-phases %standard-phases
(delete 'bootstrap)
(replace 'configure
(lambda _
(zero? (system* "premake4" "gmake"))
(invoke "premake4" "gmake")
#t))
(add-after 'set-paths 'set-sdl-paths
(lambda* (#:key inputs #:allow-other-keys)
@ -4426,7 +4531,7 @@ Tales of MajEyal offers engaging roguelike gameplay for the 21st century.")
(define-public quakespasm
(package
(name "quakespasm")
(version "0.93.0")
(version "0.93.1")
(source
(origin
(method url-fetch)
@ -4434,7 +4539,7 @@ Tales of MajEyal offers engaging roguelike gameplay for the 21st century.")
version ".tgz"))
(sha256
(base32
"0b2nz7w4za32pc34r62ql270z692qcjs2pm0i3svkxkvfammhdfq"))))
"1bimv18f6rzhyjz78yvw2vqr5n0kdqbcqmq7cb3m951xgsxfcgpd"))))
(arguments
`(#:tests? #f
#:make-flags '("CC=gcc"
@ -4471,7 +4576,7 @@ some graphical niceities, and numerous bug-fixes and other improvements.")
(package
(inherit quakespasm)
(name "vkquake")
(version "0.97.3")
(version "1.00.0")
(source
(origin
(method url-fetch)
@ -4480,7 +4585,7 @@ some graphical niceities, and numerous bug-fixes and other improvements.")
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"1p0nh2v2ilylw62fxc5qpfcmyhs0s64w8sgh036nc6kn21kbjc0d"))))
"0bviv18jvp41jvrabgl7l5kq4n1p6p3rywij481yswawdw6l5idh"))))
(arguments
`(#:make-flags
(let ((vulkanlib (string-append (assoc-ref %build-inputs

View file

@ -6,6 +6,7 @@
;;; Copyright © 2015, 2016, 2017, 2018 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 Carlos Sánchez de La Lama <csanchezdll@gmail.com>
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018 Marius Bakke <mbakke@fastmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -515,6 +516,20 @@ Go. It also includes runtime support libraries for these languages.")
for several languages, including C, C++, Objective-C, Fortran, Ada, and Go.
It also includes runtime support libraries for these languages.")))
(define-public gcc-8
(package
(inherit gcc-7)
(version "8.1.0")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnu/gcc/gcc-"
version "/gcc-" version ".tar.xz"))
(sha256
(base32
"0lxil8x0jjx7zbf90cy1rli650akaa6hpk8wk8s62vk2jbwnc60x"))
(patches (search-patches "gcc-8-strmov-store-file-names.patch"
"gcc-5.0-libvtv-runpath.patch"))))))
;; Note: When changing the default gcc version, update
;; the gcc-toolchain-* definitions and the gfortran definition
;; accordingly.

View file

@ -544,14 +544,14 @@ coordinates.")
(define-public r-rgooglemaps
(package
(name "r-rgooglemaps")
(version "1.4.1")
(version "1.4.2")
(source
(origin
(method url-fetch)
(uri (cran-uri "RgoogleMaps" version))
(sha256
(base32
"0fsmlnhl4kw2j4972kfanzw9njhnzk695gsyw8g6yppsmz2clcaq"))))
"112mdm53qx92n2m4ms02sbppckp44l1z19vy99j6gw3jrdprjydl"))))
(properties `((upstream-name . "RgoogleMaps")))
(build-system r-build-system)
(propagated-inputs `(("r-png" ,r-png)))

View file

@ -142,14 +142,14 @@ translated messages from the catalogs. Nearly all GNU packages use Gettext.")
(define-public po4a
(package
(name "po4a")
(version "0.47")
(version "0.53")
(source (origin
(method url-fetch)
(uri (string-append "https://alioth.debian.org/frs/download.php"
"/file/4142/po4a-" version ".tar.gz"))
(uri (string-append "https://github.com/mquinson/po4a/releases/download/v"
version "/po4a-" version ".tar.gz"))
(sha256
(base32
"01vm0750aq0h2lphrflv3wq9gz7y0py8frglfpacn58ivyvy242h"))))
"033qrd37zjjzvjl6g55fvhlcrm7gynfx6rj76qpr2852dn0mw069"))))
(build-system perl-build-system)
(arguments
`(#:phases
@ -166,6 +166,14 @@ translated messages from the catalogs. Nearly all GNU packages use Gettext.")
(lambda _
(delete-file "t/20-sgml.t")
#t))
(add-before 'check 'disable-asciidoc-test
(lambda _
(delete-file "t/30-asciidoc.t")
#t))
(add-before 'check 'disable-yaml-test
(lambda _
(delete-file "t/32-yaml.t")
#t))
(add-after 'unpack 'fix-builder
(lambda* (#:key inputs outputs #:allow-other-keys)
(substitute* "Po4aBuilder.pm"

View file

@ -48,7 +48,7 @@
(define-public babl
(package
(name "babl")
(version "0.1.46")
(version "0.1.50")
(source (origin
(method url-fetch)
(uri (list (string-append "https://download.gimp.org/pub/babl/"
@ -62,7 +62,7 @@
"/babl-" version ".tar.bz2")))
(sha256
(base32
"0nwyhvfca6m35wjcccvwca7fcihzgdfyc012qi703y5d3cxl1hmv"))))
"0bavr2y4v88pip7vlca4kwmnksk2qxcvkkdp9jyfi6pzh701sb5m"))))
(build-system gnu-build-system)
(home-page "http://gegl.org/babl/")
(synopsis "Image pixel format conversion library")
@ -79,7 +79,7 @@ provided, as well as a framework to add new color models and data types.")
(define-public gegl
(package
(name "gegl")
(version "0.4.0")
(version "0.4.2")
(source (origin
(method url-fetch)
(uri (list (string-append "https://download.gimp.org/pub/gegl/"
@ -87,7 +87,7 @@ provided, as well as a framework to add new color models and data types.")
"/" name "-" version ".tar.bz2")))
(sha256
(base32
"1ighk4z8nlqrzyj8w97s140hzj59564l3xv6fpzbr97m1zx2nkfh"))))
"13bzl0k5l12pk8bkcq4ar7wscbnw7jswhp34mwfsrf10kp0qndba"))))
(build-system gnu-build-system)
(arguments
'(#:configure-flags '("LDFLAGS=-lm")))
@ -117,7 +117,7 @@ buffers.")
(define-public gimp
(package
(name "gimp")
(version "2.10.0")
(version "2.10.2")
(source (origin
(method url-fetch)
(uri (string-append "https://download.gimp.org/pub/gimp/v"
@ -125,10 +125,10 @@ buffers.")
"/gimp-" version ".tar.bz2"))
(sha256
(base32
"1qkxaigbfkx26xym5nzrgfrmn97cbnhn63v1saaha2nbi3xrdk3z"))))
"1srkqd9cx1xmny7cyk3b6f14dknb3fd77whm38vlvr7grnpbmc0w"))))
(build-system gnu-build-system)
(outputs '("out"
"doc")) ;9 MiB of gtk-doc HTML
"doc")) ; 9 MiB of gtk-doc HTML
(arguments
'(#:configure-flags (list (string-append "--with-html-dir="
(assoc-ref %outputs "doc")

View file

@ -3756,6 +3756,17 @@ which can read a large number of file formats.")
(uri (string-append "mirror://gnome/sources/" name "/"
(version-major+minor version) "/"
name "-" version ".tar.xz"))
(patches
(list
;; fmradio: Fix build with GStreamer master
(origin
(method url-fetch)
(uri (string-append
"https://gitlab.gnome.org/GNOME/rhythmbox/commit/"
"b182c6b9e1d09e601bac0b703cc5f8b159ebbc3a.patch"))
(sha256
(base32
"17j45vyyr071ka3nckj2gycgyyv1j08fyrxw89jfdq2442nzrsiy")))))
(sha256
(base32
"0hzcns8gf5yb0rm4ss8jd8qzarcaplp5cylk6plwilsqfvxj4xn2"))))
@ -4186,7 +4197,7 @@ a secret password store, an adblocker, and a modern UI.")
(define-public epiphany
(package
(name "epiphany")
(version "3.28.2.1")
(version "3.28.3.1")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/"
@ -4194,7 +4205,7 @@ a secret password store, an adblocker, and a modern UI.")
name "-" version ".tar.xz"))
(sha256
(base32
"0ba0qqsbg3cv1k1pcj971y7l8kqib5l7kbr743x9a7hbmkqfk95s"))))
"1xz6xl6b0iihvczyr0cs1z5ifvpai6anb4m0ng1caiph06klc1b9"))))
(build-system meson-build-system)
(arguments
@ -6307,7 +6318,7 @@ fit the GNOME desktop.")
(define-public gnome-dictionary
(package
(name "gnome-dictionary")
(version "3.24.0")
(version "3.26.1")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/"
@ -6315,8 +6326,9 @@ fit the GNOME desktop.")
name "-" version ".tar.xz"))
(sha256
(base32
"1wnrpg8yndacq0xnzc84d519yp7f28brzklm3a48xcgs1i50drs1"))))
(build-system glib-or-gtk-build-system)
"007k2bq8iplg4psdpz074r5d4zxvn4s95qym4rw9hs6giljbrf0n"))))
(build-system meson-build-system)
(arguments '(#:glib-or-gtk? #t))
(native-inputs
`(("glib:bin" ,glib "bin")
("gobject-introspection" ,gobject-introspection)
@ -6481,6 +6493,12 @@ like GNOME, Unity, Budgie, Pantheon, XFCE, Mate, etc.")
(substitute* '("Makefile.am")
(("\\$\\(DESTDIR\\)/usr/share")
"$(datadir)"))
#t))
(add-after 'unpack 'disable-configure-during-bootstrap
(lambda _
;; Do not run configure as part of autogen.sh because references
;; to /bin are not fixed yet.
(setenv "NOCONFIGURE" "y")
#t)))))
(native-inputs
`(("autoconf" ,autoconf)
@ -6530,6 +6548,14 @@ simple and consistent.")
(base32
"1ya1cqvv8q847c0rpcg6apzky87q3h04y8jz5nmi52qk6kg8si0b"))))
(build-system gnu-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'disable-configure-during-bootstrap
(lambda _
(substitute* "autogen.sh"
(("^\"\\$srcdir/configure\".*") ""))
#t)))))
(native-inputs
`(("autoconf" ,autoconf)
("automake" ,automake)))
@ -7135,7 +7161,7 @@ photo-booth-like software, such as Cheese.")
(define-public cheese
(package
(name "cheese")
(version "3.26.0")
(version "3.28.0")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/"
@ -7143,7 +7169,7 @@ photo-booth-like software, such as Cheese.")
version ".tar.xz"))
(sha256
(base32
"01f6lsp9jkhq5v2zxlghw15bca4xqavkxqkl8977r0g13p22zxcf"))))
"06da5qc5hdvwwd5vkbgbx8pjx1l3mvr07yrnnv3v1hfc3wp7l7jw"))))
(arguments
;; Tests require GDK.
`(#:tests? #f
@ -7268,7 +7294,7 @@ mp3, Ogg Vorbis and FLAC")
("libxtst" ,libxtst)
("dconf" ,dconf)
("libice" ,libice)))
(inputs `(("libsm", libsm)
(inputs `(("libsm" ,libsm)
("python-cheetah" ,python2-cheetah)))
(native-inputs `(("glib" ,glib "bin")
("pkg-config" ,pkg-config)
@ -7282,9 +7308,10 @@ mp3, Ogg Vorbis and FLAC")
("gobject-introspection" ,gobject-introspection)
("python2" ,python-2)))
(synopsis "Tool to help prevent repetitive strain injury (RSI)")
(description "Workrave is a program that assists in the recovery and
prevention of repetitive strain injury (RSI). The program frequently alerts
you to take micro-pauses, rest breaks and restricts you to your daily limit")
(description
"Workrave is a program that assists in the recovery and prevention of
repetitive strain injury (@dfn{RSI}). The program frequently alerts you to take
micro-pauses and rest breaks, and restricts you to your daily limit.")
(home-page "http://www.workrave.org")
(license license:gpl3+))))

View file

@ -1,7 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016, 2018 Efraim Flashner <efraim@flashner.co.il>
;;;
;;; This file is part of GNU Guix.
;;;
@ -30,7 +30,7 @@
(define-public gnu-pw-mgr
(package
(name "gnu-pw-mgr")
(version "2.0")
(version "2.3.1")
(source
(origin
(method url-fetch)
@ -38,8 +38,16 @@
version ".tar.xz"))
(sha256
(base32
"19qvg37snfa8s06q5crx25m1r1n4l0wvfpkbdxz17q7whp0plrl6"))))
"05vv6n5sqdswhzm21cqn8m2p6avblxl3cv7b39nqx8yxf58gi2xv"))))
(build-system gnu-build-system)
(arguments
'(#:phases
(modify-phases %standard-phases
(add-after 'patch-source-shebangs 'patch-more-shebangs
(lambda _
(substitute* "tests/dom.test"
(("/usr/bin/printf") (which "printf")))
#t)))))
(native-inputs
`(("which" ,which)
("autogen" ,autogen)))

View file

@ -107,6 +107,7 @@ Daemon and possibly more in the future.")
(define-public libgcrypt
(package
(replacement libgcrypt/fixed)
(name "libgcrypt")
(version "1.8.2")
(source (origin
@ -141,6 +142,19 @@ generation.")
(properties '((ftp-server . "ftp.gnupg.org")
(ftp-directory . "/gcrypt/libgcrypt")))))
(define libgcrypt/fixed
(package
(inherit libgcrypt)
(name "libgcrypt")
(version "1.8.3")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnupg/libgcrypt/libgcrypt-"
version ".tar.bz2"))
(sha256
(base32
"0z5gs1khzyknyfjr19k8gk4q148s6q987ya85cpn0iv70fz91v36"))))))
(define-public libassuan
(package
(name "libassuan")
@ -230,14 +244,14 @@ compatible to GNU Pth.")
(define-public gnupg
(package
(name "gnupg")
(version "2.2.7")
(version "2.2.8")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnupg/gnupg/gnupg-" version
".tar.bz2"))
(sha256
(base32
"0vlpis0q7gvq9mhdc43hkyn3cdriz4mwgj20my3gyzpgwqg3cnyr"))))
"1k8dnnfs9888yp713l7kg2jg110lw47s4krx0njna6fjrsw4qyvp"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)))
@ -348,14 +362,14 @@ libskba (working with X.509 certificates and CMS data).")
(define-public gnupg-1
(package (inherit gnupg)
(version "1.4.22")
(version "1.4.23")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnupg/gnupg/gnupg-" version
".tar.bz2"))
(sha256
(base32
"1d1hz4szh1kvwhsw7w2zxa6q5ndrk3qy6hj289l1b8k3xi5s554m"))))
"1fkq4sqldvf6a25mm2qz95swv1qjg464736091w51djiwqbjyin9"))))
(native-inputs '())
(inputs
`(("zlib" ,zlib)
@ -506,14 +520,14 @@ decrypt messages using the OpenPGP format by making use of GPGME.")
(define-public python-gnupg
(package
(name "python-gnupg")
(version "0.3.8")
(version "0.4.3")
(source
(origin
(method url-fetch)
(uri (pypi-uri "python-gnupg" version))
(sha256
(base32
"0nkbs9c8f30lra7ca39kg91x8cyxn0jb61vih4qky839gpbwwwiq"))))
"03dc8whhvk7ccspbk8vzfhkxli8cd9zfbss5p597g4jldgy8s59d"))))
(build-system python-build-system)
(arguments
`(#:phases
@ -521,16 +535,14 @@ decrypt messages using the OpenPGP format by making use of GPGME.")
(replace 'check
(lambda _
(substitute* "test_gnupg.py"
;; Exported keys don't have a version line!
(("del k1\\[1\\]") "#")
;; Unsure why this test fails.
(("'test_search_keys'") "True")
(("def test_search_keys") "def disabled__search_keys"))
(setenv "USERNAME" "guixbuilder")
;; The doctests are extremely slow and sometimes time out,
;; so we disable them.
(zero? (system* "python"
"test_gnupg.py" "--no-doctests")))))))
(invoke "python"
"test_gnupg.py" "--no-doctests"))))))
(native-inputs
`(("gnupg" ,gnupg-1)))
(home-page "https://packages.python.org/python-gnupg/index.html")

View file

@ -479,27 +479,43 @@ security standards.")
(mozilla-patch "icecat-CVE-2018-5150-pt08.patch" "134c728799c1" "16hbwx6fx1hrddsyjjbd3z954ql3pg348xs13h9riyblq8crzmam")
(mozilla-patch "icecat-CVE-2018-5150-pt09.patch" "14eab155eaa8" "0wr4xgblxzk4c2gvlnpl7ic1196mrhry1hgwdl1jivq0ji5cbvbd")
(mozilla-patch "icecat-bug-1452619.patch" "2b75d55ccf0e" "1g87aybw6ggv6hyk385bplv0lx63n020gwyq0d6d4pqld48hsm1i")
(mozilla-patch "icecat-bug-1453127.patch" "89857f35df29" "0gzi47svrw5ajdlm3i12193psm702zx70x5h1rwp4gb7gxh4m4d9")
(mozilla-patch "icecat-CVE-2018-5156-pt1.patch" "89857f35df29" "0gzi47svrw5ajdlm3i12193psm702zx70x5h1rwp4gb7gxh4m4d9")
(mozilla-patch "icecat-CVE-2018-5150-pt10.patch" "3f2ec03c0405" "0w02952dlxd2gmwghck2nm4rjjmc5ylg62bw6m1rvi35kcr134lr")
(mozilla-patch "icecat-CVE-2018-5183.patch" "f729bf78fb3a" "0xkj6jwxwdqkvb5c7wi16b8cm8qrnlrd3s9jnd46jg03iykrx56f")
(mozilla-patch "icecat-bug-1437842.patch" "eb896089db47" "10lppk4x2d3pim71a36ky1dmg08rs5ckfiljwvfnr1cw6934qxl4")
(mozilla-patch "icecat-bug-1458270.patch" "2374dca97bde" "0y1g55wvj44nzb1qfkl271jcf8s1ik8lcl1785z0zim4qzn7qkpa")
(mozilla-patch "icecat-bug-1452576.patch" "70b6298e0c9e" "0n5jfy6c421dkybk8m18vd61y95zz0r64g1p1zlya3fps5knfaqi")
(mozilla-patch "icecat-bug-1459206-pt1.patch" "4ef79fe9b3b7" "1c32z1ki1i6xj1nbb0xlxwqnmz48ikmy8dmp37rkjz8ssn04wgfg")
(mozilla-patch "icecat-bug-1459206-pt2.patch" "9ad16112044a" "0ayya67sx7avcb8bplfdxb92l9g4mjrb1s3hby283llhqv0ikg9b")
(mozilla-patch "icecat-bug-1459162.patch" "11d8a87fb6d6" "1rkmdk18llw0x1jakix75hlhy0hpsmlminnflagbzrzjli81gwm1")
(mozilla-patch "icecat-bug-1451297.patch" "407b10ad1273" "16qzsfirw045xag96f1qvpdlibm8lwdj9l1mlli4n1vz0db91v9q")
(mozilla-patch "icecat-bug-1462682.patch" "e76e2e481b17" "0hnx13msjy28n3bpa2c24kpzalam4bdk5gnp0f9k671l48rs9yb3")
(mozilla-patch "icecat-bug-1450688.patch" "2c75bfcd465c" "1pjinj8qypafqm2fk68s3hzcbzcijn09qzrpcxvzq6bl1yfc1xfd")
(mozilla-patch "icecat-bug-1456975.patch" "042f80f3befd" "0av918kin4bkrq7gnjz0h9w8kkq8rk9l93250lfl5kqrinza1gsk")
(mozilla-patch "icecat-bugs-1442722+1455071+1433642+1456604+1458320.patch"
(mozilla-patch "icecat-CVE-2018-5188-pt01.patch" "eb896089db47" "10lppk4x2d3pim71a36ky1dmg08rs5ckfiljwvfnr1cw6934qxl4")
(mozilla-patch "icecat-CVE-2018-5188-pt02.patch" "2374dca97bde" "0y1g55wvj44nzb1qfkl271jcf8s1ik8lcl1785z0zim4qzn7qkpa")
(mozilla-patch "icecat-CVE-2018-5188-pt03.patch" "70b6298e0c9e" "0n5jfy6c421dkybk8m18vd61y95zz0r64g1p1zlya3fps5knfaqi")
(mozilla-patch "icecat-CVE-2018-12365-pt1.patch" "4ef79fe9b3b7" "1c32z1ki1i6xj1nbb0xlxwqnmz48ikmy8dmp37rkjz8ssn04wgfg")
(mozilla-patch "icecat-CVE-2018-12365-pt2.patch" "9ad16112044a" "0ayya67sx7avcb8bplfdxb92l9g4mjrb1s3hby283llhqv0ikg9b")
(mozilla-patch "icecat-CVE-2018-12359.patch" "11d8a87fb6d6" "1rkmdk18llw0x1jakix75hlhy0hpsmlminnflagbzrzjli81gwm1")
(mozilla-patch "icecat-CVE-2018-5188-pt04.patch" "407b10ad1273" "16qzsfirw045xag96f1qvpdlibm8lwdj9l1mlli4n1vz0db91v9q")
(mozilla-patch "icecat-CVE-2018-6126.patch" "e76e2e481b17" "0hnx13msjy28n3bpa2c24kpzalam4bdk5gnp0f9k671l48rs9yb3")
(mozilla-patch "icecat-CVE-2018-5188-pt05.patch" "2c75bfcd465c" "1pjinj8qypafqm2fk68s3hzcbzcijn09qzrpcxvzq6bl1yfc1xfd")
(mozilla-patch "icecat-CVE-2018-5188-pt06.patch" "042f80f3befd" "0av918kin4bkrq7gnjz0h9w8kkq8rk9l93250lfl5kqrinza1gsk")
(mozilla-patch "icecat-CVE-2018-5188-pt07+bugs-1455071+1433642+1456604+1458320.patch"
"bb0451c9c4a0" "1lhm1b2a7c6jwhzsg3c830hfhp17p8j9zbcmgchpb8c5jkc3vw0x")
(mozilla-patch "icecat-bug-1465108-pt1.patch" "8189b262e3b9" "13rh86ddwmj1bhv3ibbil3sv5xbqq1c9v1czgbsna5hxxkzc1y3b")
(mozilla-patch "icecat-bug-1465108-pt2.patch" "9f81ae3f6e1d" "05vfg8a8jrzd93n1wvncmvdmqgf9cgsl8ryxgjs3032gbbjkga7q")
(mozilla-patch "icecat-bug-1459693.patch" "face7a3dd5d7" "0jclw30mf693w8lrmvn0iankggj21nh4j3zh51q5363rj5xncdzx")
(mozilla-patch "icecat-bug-1464829.patch" "7afb58c046c8" "1r0569r76712x7x1sw6xr0x06ilv6iw3fncb0f8r8b9mp6wrpx34")
(mozilla-patch "icecat-bug-1452375-pt1.patch" "f1a745f8c42d" "11q73pb7a8f09xjzil4rhg5nr49zrnz1vb0prni0kqvrnppf5s40")
(mozilla-patch "icecat-bug-1452375-pt2.patch" "1f9a430881cc" "0f79rv7njliqxx33z07n60b50jg0a596d1km7ayz2hivbl2d0168")))
(mozilla-patch "icecat-CVE-2018-5188-pt08.patch" "8189b262e3b9" "13rh86ddwmj1bhv3ibbil3sv5xbqq1c9v1czgbsna5hxxkzc1y3b")
(mozilla-patch "icecat-CVE-2018-5188-pt09.patch" "9f81ae3f6e1d" "05vfg8a8jrzd93n1wvncmvdmqgf9cgsl8ryxgjs3032gbbjkga7q")
(mozilla-patch "icecat-CVE-2018-12360.patch" "face7a3dd5d7" "0jclw30mf693w8lrmvn0iankggj21nh4j3zh51q5363rj5xncdzx")
(mozilla-patch "icecat-CVE-2018-5188-pt10.patch" "7afb58c046c8" "1r0569r76712x7x1sw6xr0x06ilv6iw3fncb0f8r8b9mp6wrpx34")
(mozilla-patch "icecat-CVE-2018-12362-pt1.patch" "f1a745f8c42d" "11q73pb7a8f09xjzil4rhg5nr49zrnz1vb0prni0kqvrnppf5s40")
(mozilla-patch "icecat-CVE-2018-12362-pt2.patch" "1f9a430881cc" "0f79rv7njliqxx33z07n60b50jg0a596d1km7ayz2hivbl2d0168")
(mozilla-patch "icecat-CVE-2018-5188-pt11.patch" "28f4fc0a5141" "1a8f9z6c80in8ccj82ysdrcr2lqypp29l4acs50kwncm0c0b01zl")
(mozilla-patch "icecat-CVE-2018-12363.patch" "ad5a53a1d2b1" "0rhl4r39ydb3lkfp5pkwvhhzqgfh33s9r7b7jccgkrx6f13xyq78")
(mozilla-patch "icecat-CVE-2018-5188-pt12.patch" "0ddfc03c0454" "1b0xw2kj9765lvpl8iwr3wwcz40bdfp3dp4y9f546a61qsi9q9d6")
(mozilla-patch "icecat-CVE-2018-5156-pt2.patch" "dbf36189a364" "1awbyhy0r79i03sns2p0m78f9hb6c7kp4hwia2khx4qszlsr4j95")
(mozilla-patch "icecat-CVE-2018-5188-pt13.patch" "32509dfde003" "0cc3c92dgf5qynk093prq610c9x815l2fa24ddrw9czdzbwblsdq")
(mozilla-patch "icecat-bug-1462912.patch" "f18535a212da" "0zkqz9il89f1s1yrp5c6hj6kysy2x02iy50vgwdj30lr56gkpzmk")
(mozilla-patch "icecat-CVE-2018-5188-pt14.patch" "e8e9e1ef79f2" "0dc8p6fsppq3bhbpmp41f8mjxbr31pvgpga0a73dqdaicq5ydgj4")
(search-patch "icecat-bug-1413868-pt1.patch")
(mozilla-patch "icecat-CVE-2018-5188-pt15.patch" "9d4d31b2630d" "1lcbmsyi09kp80h1jgxj5l45zl24xn22h1lq7drbyjxsn1kggq4g")
(mozilla-patch "icecat-CVE-2018-12366-pt1.patch" "edf2c7dff493" "06xmyk7nm54cm9m6qc59wz8cxxfa5r25mf2xzdzy74iq5hwa1ac8")
(mozilla-patch "icecat-CVE-2018-5188-pt16.patch" "05549a4d1b80" "10q68cllshmmhlrbirm9h4gyc3ffrcpsxihfpcbxh90nv2h16jci")
(mozilla-patch "icecat-CVE-2018-12364.patch" "67b2d8924841" "197riigbb6l30959pygr0zlv7vaims78dg1mh0pg33pa7cbna0ds")
(mozilla-patch "icecat-CVE-2018-12366-pt2.patch" "528d4d997bb3" "0f375i96a404dkn0fanmd9pgfj3wyrhjfc5dwslw2s44gwfjhljb")
(mozilla-patch "icecat-bug-1369771.patch" "fab16ad7f256" "0kd8qm04sjgfgfg8yw3ivcxazb1d7v430g86chw4n64qybsh9ka3")
(mozilla-patch "icecat-CVE-2018-5188-pt17.patch" "068e249d02b4" "1iy9by1mg5qhp8502h31m8zm99aq2hx0c5n3hadd5pk11lfnq6ll")
(mozilla-patch "icecat-bug-1413868-pt2.patch" "755067c14b06" "089dwqwzcdg1l6aimi0i65q4dgb2iny5h8yjx63h9zgv77n0700a")))
(modules '((guix build utils)))
(snippet
'(begin

View file

@ -78,7 +78,8 @@
(delete 'configure)
(add-after 'patch-generated-file-shebangs 'chdir
(lambda _
(chdir "src")))
(chdir "src")
#t))
(add-before 'build 'prebuild
(lambda* (#:key inputs outputs #:allow-other-keys)
(let* ((gcclib (string-append (assoc-ref inputs "gcc:lib") "/lib"))
@ -160,7 +161,7 @@
;; Go 1.4's cgo will not work with binutils >= 2.27:
;; https://github.com/golang/go/issues/16906
(setenv "CGO_ENABLED" "0")
(zero? (system* "sh" "all.bash")))))
(invoke "sh" "all.bash"))))
(replace 'install
(lambda* (#:key outputs inputs #:allow-other-keys)
@ -215,7 +216,7 @@ in the style of communicating sequential processes (@dfn{CSP}).")
(package
(inherit go-1.4)
(name "go")
(version "1.9.6")
(version "1.9.7")
(source
(origin
(method url-fetch)
@ -223,7 +224,7 @@ in the style of communicating sequential processes (@dfn{CSP}).")
name version ".src.tar.gz"))
(sha256
(base32
"0a2qkvzr0g5cbd66wi7b6r40qyp9p55y0zz2j5qg1xsqwsdhbx1n"))))
"08kpy874x0rx43zpyv5kwd8xj2ma91xm33i0ka2v1v788px18a2q"))))
(arguments
(substitute-keyword-arguments (package-arguments go-1.4)
((#:phases phases)
@ -343,7 +344,7 @@ in the style of communicating sequential processes (@dfn{CSP}).")
(setenv "GOROOT" (dirname (getcwd)))
(setenv "GOROOT_FINAL" output)
(setenv "CGO_ENABLED" "1")
(zero? (system* "sh" "all.bash")))))
(invoke "sh" "all.bash"))))
(replace 'install
;; TODO: Most of this could be factorized with Go 1.4.
@ -374,7 +375,8 @@ in the style of communicating sequential processes (@dfn{CSP}).")
'("README.md" "CONTRIBUTORS" "AUTHORS" "PATENTS"
"LICENSE" "VERSION" "CONTRIBUTING.md" "robots.txt"))
(copy-recursively "../" output))))))))
(copy-recursively "../" output)
#t)))))))
(native-inputs
`(("go" ,go-1.4)
,@(package-native-inputs go-1.4)))
@ -384,7 +386,7 @@ in the style of communicating sequential processes (@dfn{CSP}).")
(package
(inherit go-1.9)
(name "go")
(version "1.10.2")
(version "1.10.3")
(source
(origin
(method url-fetch)
@ -392,7 +394,7 @@ in the style of communicating sequential processes (@dfn{CSP}).")
name version ".src.tar.gz"))
(sha256
(base32
"1gcqbac3wbhbcr0ri9zgfj6qkqbwf9fn116a0a7fvn4wdff60r32"))))
"1wjmw65nfkkzz084695gdgn13sbjcaafy2y5370d214pdk31qysn"))))
(arguments
(substitute-keyword-arguments (package-arguments go-1.9)
((#:phases phases)
@ -1621,3 +1623,173 @@ values for the purpose of fuzz testing.")
(synopsis "Go registry for request variables")
(description "This package provides @code{gorilla/context}, which is a general purpose registry for global request variables in the Go programming language.")
(license license:bsd-3))))
(define-public go-github-com-gorilla-mux
(let ((commit "599cba5e7b6137d46ddf58fb1765f5d928e69604")
(revision "0"))
(package
(name "go-github-com-gorilla-mux")
(version (git-version "0.0.0" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/gorilla/mux.git")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"0wd6jjii1kg5s0nk3ri6gqriz6hbd6bbcn6x4jf8n7ncrb8qsxyz"))))
(build-system go-build-system)
(arguments
'(#:import-path "github.com/gorilla/mux"))
(home-page "https://github.com/gorilla/mux")
(synopsis "URL router and dispatcher for Go")
(description
"Gorilla/Mux implements a request router and dispatcher for matching
incoming requests with their respective handler.")
(license license:bsd-3))))
(define-public go-github-com-jonboulle-clockwork
(let ((commit "e3653ace2d63753697e0e5b07b9393971c0bba9d")
(revision "0"))
(package
(name "go-github-com-jonboulle-clockwork")
(version (git-version "0.0.0" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/jonboulle/clockwork.git")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"1avzqhks12a8x2yzpvjsf3k0gv9cy7zx2z88hn0scacnxkphisvc"))))
(build-system go-build-system)
(arguments
'(#:import-path "github.com/jonboulle/clockwork"))
(home-page "https://github.com/jonboulle/clockwork")
(synopsis "Fake clock library for Go")
(description
"Replace uses of the @code{time} package with the
@code{clockwork.Clock} interface instead.")
(license license:asl2.0))))
(define-public go-github-com-spf13-pflag
(let ((commit "4f9190456aed1c2113ca51ea9b89219747458dc1")
(revision "0"))
(package
(name "go-github-com-spf13-pflag")
(version (git-version "0.0.0" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/spf13/pflag.git")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"12vrlcsbwjqlfc49rwky45mbcj74c0kb6z54354pzas6fwzyi1kc"))))
(build-system go-build-system)
(arguments
'(#:import-path "github.com/spf13/pflag"))
(home-page "https://github.com/spf13/pflag")
(synopsis "Replacement for Go's @code{flag} package")
(description
"Pflag is library to replace Go's @code{flag} package. It implements
POSIX/GNU-style command-line options with double hyphens. It is is compatible
with the
@uref{https://www.gnu.org/software/libc/manual/html_node/Argument-Syntax.html,
GNU extensions} to the POSIX recommendations for command-line options.")
(license license:bsd-3))))
(define-public go-github-com-sirupsen-logrus
(package
(name "go-github-com-sirupsen-logrus")
(version "1.0.5")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/sirupsen/logrus.git")
(commit (string-append "v" version))))
(sha256
(base32
"0g5z7al7kky11ai2dhac6gkp3b5pxsvx72yj3xg4wg3265gbn7yz"))))
(build-system go-build-system)
(native-inputs
`(("go-golang-org-x-crypto-ssh-terminal"
,go-golang-org-x-crypto-ssh-terminal)
("go-github-com-stretchr-testify"
,go-github-com-stretchr-testify)
("go-golang-org-x-sys-unix"
,go-golang-org-x-sys-unix)))
(arguments
'(#:tests? #f ;FIXME missing dependencies
#:import-path "github.com/sirupsen/logrus"))
(home-page "https://github.com/sirupsen/logrus")
(synopsis "Structured, pluggable logging for Go")
(description "Logrus is a structured logger for Go, completely API
compatible with the standard library logger.")
(license license:expat)))
(define-public go-github-com-kardianos-osext
(let ((commit "ae77be60afb1dcacde03767a8c37337fad28ac14")
(revision "1"))
(package
(name "go-github-com-kardianos-osext")
(version (git-version "0.0.0" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/kardianos/osext")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"056dkgxrqjj5r18bnc3knlpgdz5p3yvp12y4y978hnsfhwaqvbjz"))))
(build-system go-build-system)
(arguments
`(#:import-path "github.com/kardianos/osext"
;; The tests are flaky:
;; <https://github.com/kardianos/osext/issues/21>
#:tests? #f))
(synopsis "Find the running executable")
(description "Osext provides a method for finding the current executable
file that is running. This can be used for upgrading the current executable or
finding resources located relative to the executable file.")
(home-page "https://github.com/kardianos/osext")
(license license:bsd-3))))
(define-public go-github-com-ayufan-golang-kardianos-service
(let ((commit "0c8eb6d8fff2e2fb884a7bfd23e183fb63c0eff3")
(revision "0"))
(package
(name "go-github-com-ayufan-golang-kardianos-service")
(version (git-version "0.0.0" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url
"https://github.com/ayufan/golang-kardianos-service.git")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"0x0cn7l5gda2khsfypix7adxd5yqighzn04mxjw6hc4ayrh7his5"))))
(build-system go-build-system)
(native-inputs
`(("go-github-com-kardianos-osext"
,go-github-com-kardianos-osext)))
(arguments
'(#:tests? #f ;FIXME tests fail: Service is not running.
#:import-path "github.com/ayufan/golang-kardianos-service"))
(home-page "https://github.com/ayufan/golang-kardianos-service")
(synopsis "Go interface to a variety of service supervisors")
(description "This package provides @code{service}, a Go module that can
run programs as a service using a variety of supervisors, including systemd,
SysVinit, and more.")
(license license:zlib))))

View file

@ -193,7 +193,7 @@ coordinates as well as partial support for adjustments in global coordinate syst
;; Use lrelease to convert TS translation files into QM files.
(lambda* (#:key inputs outputs #:allow-other-keys)
(for-each (lambda (file)
(system* "lrelease" file))
(invoke "lrelease" file))
(find-files "lang" "\\.ts"))
(substitute* "src/config.h"
(("/usr/share/gpxsee")

View file

@ -373,7 +373,7 @@ storage of the \"EXR\" file format for storing 16-bit floating-point images.")
(define-public openimageio
(package
(name "openimageio")
(version "1.6.15")
(version "1.7.19")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/OpenImageIO/oiio/"
@ -381,7 +381,7 @@ storage of the \"EXR\" file format for storing 16-bit floating-point images.")
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"144crq0205d0w5aq4iglh2rhzf54a8rv3pksy6d533b75w5d7rq7"))))
"1qlmfhvl2wva4aifyiq7c4sdy61ddl7wykwvlpfys9p701xghvj7"))))
(build-system cmake-build-system)
;; FIXME: To run all tests successfully, test image sets from multiple
;; third party sources have to be present. For details see

View file

@ -1107,7 +1107,7 @@ and modify groovy's @dfn{Abstract Syntax Tree} (AST).")))
"groovy-jmx" "groovy-json" "groovy-jsr223"
"groovy-nio" "groovy-servlet" "groovy-sql"
"groovy-swing" "groovy-templates" "groovy-testng"
"java-commons-cli" "java-asm"
"groovy-xml" "java-commons-cli" "java-asm"
"java-classpathx-servletapi" "java-xstream"
"java-jansi" "java-jline-2"))
;; antlr.jar is present twice in antlr2. Symlink doesn't like
@ -1140,6 +1140,7 @@ and modify groovy's @dfn{Abstract Syntax Tree} (AST).")))
("groovy-swing" ,groovy-swing)
("groovy-templates" ,groovy-templates)
("groovy-testng" ,groovy-testng)
("groovy-xml" ,groovy-xml)
("java-commons-cli" ,java-commons-cli)
("java-asm" ,java-asm)
("java-classpathx-servletapi" ,java-classpathx-servletapi)

View file

@ -284,7 +284,7 @@ functions which were removed.")
(version "1.4.2")
(source (origin
(method url-fetch)
(uri (string-append "http://download.drobilla.net/ganv-"
(uri (string-append "https://download.drobilla.net/ganv-"
version ".tar.bz2"))
(sha256
(base32
@ -309,7 +309,7 @@ functions which were removed.")
(native-inputs
`(("glib" ,glib "bin") ; for glib-genmarshal, etc.
("pkg-config" ,pkg-config)))
(home-page "http://drobilla.net/software/ganv/")
(home-page "https://drobilla.net/software/ganv/")
(synopsis "GTK+ widget for interactive graph-like environments")
(description
"Ganv is an interactive GTK+ widget for interactive boxes and lines or
@ -328,7 +328,7 @@ diagrams.")
(source (origin
(method git-fetch)
(uri (git-reference
(url "http://git.drobilla.net/ganv.git")
(url "https://git.drobilla.net/ganv.git")
(commit commit)))
(file-name (git-file-name name version))
(sha256
@ -1416,7 +1416,7 @@ information.")
(define-public gtk-doc
(package
(name "gtk-doc")
(version "1.25")
(version "1.27")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/"
@ -1424,12 +1424,30 @@ information.")
name "-" version ".tar.xz"))
(sha256
(base32
"0hpxcij9xx9ny3gs9p0iz4r8zslw8wqymbyababiyl7603a6x90y"))))
"0vwsdl61nvnmqswlz5j9m4hg7qirhazwcikcnqf9nx0c13vx6sz2"))))
(build-system gnu-build-system)
(arguments
`(#:parallel-tests? #f
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'patch-gtk-doc-scan
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "gtk-doc.xsl"
(("http://docbook.sourceforge.net/release/xsl/current/html/chunk.xsl")
(string-append (assoc-ref inputs "docbook-xsl")
"/xml/xsl/docbook-xsl-"
,(package-version docbook-xsl)
"/html/chunk.xsl")))
#t))
(add-after 'patch-gtk-doc-scan 'patch-test-out
(lambda _
;; sanity.sh counts the number of status lines. Since our
;; texlive regenerates the fonts every time and the font
;; generator metafont outputs a lot of extra lines, this
;; test would always fail. Disable it for now.
(substitute* "tests/Makefile.in"
(("empty.sh sanity.sh") "empty.sh"))
#t))
(add-before 'build 'set-HOME
(lambda _
;; FIXME: dblatex with texlive-union does not find the built
@ -1450,7 +1468,15 @@ information.")
(string-append (car (find-files (assoc-ref inputs "docbook-xsl")
"^catalog.xml$"))
" \"http://docbook.sourceforge.net/release/xsl/")))
#t)))
#t))
(add-after 'install 'wrap-executables
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(for-each (lambda (prog)
(wrap-program prog
`("PYTHONPATH" ":" prefix (,(getenv "PYTHONPATH")))))
(find-files (string-append out "/bin")))
#t))))
#:configure-flags
(list (string-append "--with-xml-catalog="
(assoc-ref %build-inputs "docbook-xml")
@ -1469,7 +1495,8 @@ information.")
("docbook-xml" ,docbook-xml-4.3)
("docbook-xsl" ,docbook-xsl)
("source-highlight" ,source-highlight)
("glib" ,glib)))
("glib" ,glib)
("python-six" ,python-six)))
(home-page "http://www.gtk.org/gtk-doc/")
(synopsis "Documentation generator from C source code")
(description

View file

@ -767,14 +767,23 @@ The library is shipped with documentation in Info format and usage examples.")
(define-public guile-lib
(package
(name "guile-lib")
(version "0.2.5.1")
(version "0.2.6")
(source (origin
(method url-fetch)
(uri (string-append "mirror://savannah/guile-lib/guile-lib-"
version ".tar.gz"))
(sha256
(base32
"19q420i3is3d4jmkdqs5y7ir7ipp4s795saflqgwf6617cx2zpj4"))))
"0n1lf5bsr5s9gqi07sdfkl1hpin6dzvkcj1xa63jd1w8aglwv8r1"))
(modules '((guix build utils)))
(snippet
'(begin
;; 'pre-inst-env' sets an incorrect load path, missing the
;; "/src" bit. Add it.
(substitute* "pre-inst-env.in"
(("abs_top_(builddir|srcdir)=([[:graph:]]+)" _ dir value)
(string-append "abs_top_" dir "=" value "/src")))
#t))))
(build-system gnu-build-system)
(arguments
'(#:make-flags
@ -835,7 +844,8 @@ for Guile\".")
"AC_SUBST([GUILE_EFFECTIVE_VERSION])\n")))
(substitute* '("Makefile.am" "json/Makefile.am")
(("moddir[[:blank:]]*=.*/share/guile/site" all)
(string-append all "/@GUILE_EFFECTIVE_VERSION@")))))))
(string-append all "/@GUILE_EFFECTIVE_VERSION@")))
#t))))
(build-system gnu-build-system)
(native-inputs `(("autoconf" ,autoconf)
("automake" ,automake)
@ -1206,58 +1216,31 @@ Guile's foreign function interface.")
(deprecated-package "guile2.2-gdbm-ffi" guile-gdbm-ffi))
(define-public guile-sqlite3
(let ((commit "10c13a7e02ab1655c8a758e560cafc9d6eff26f4")
(revision "4"))
(package
(name "guile-sqlite3")
(version (git-version "0.0" revision commit))
;; XXX: This used to be available read-only at
;; <https://www.gitorious.org/guile-sqlite3/guile-sqlite3.git/> but it
;; eventually disappeared, so we have our own copy here.
(home-page "https://notabug.org/civodul/guile-sqlite3.git")
(source (origin
(method git-fetch)
(uri (git-reference
(url home-page)
(commit commit)))
(sha256
(base32
"0nhhswpd7nb2f0gfr55fzcc2xm3l2xx4rbljsd1clrm8fj2d7q9d"))
(file-name (string-append name "-" version "-checkout"))
(modules '((guix build utils)))
(snippet
;; Upgrade 'Makefile.am' to the current way of doing things.
'(begin
(substitute* "Makefile.am"
(("TESTS_ENVIRONMENT")
"TEST_LOG_COMPILER"))
#t))))
(build-system gnu-build-system)
(native-inputs
`(("autoconf" ,autoconf)
("automake" ,automake)
("pkg-config" ,pkg-config)))
(inputs
`(("guile" ,guile-2.2)
("sqlite" ,sqlite)))
(arguments
'(#:phases (modify-phases %standard-phases
(add-after 'unpack 'autoreconf
(lambda _
(zero? (system* "autoreconf" "-vfi"))))
(add-before 'build 'set-sqlite3-file-name
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "sqlite3.scm"
(("\"libsqlite3\"")
(string-append "\"" (assoc-ref inputs "sqlite")
"/lib/libsqlite3\"")))
#t)))))
(synopsis "Access SQLite databases from Guile")
(description
"This package provides Guile bindings to the SQLite database system.")
(license license:gpl3+))))
(package
(name "guile-sqlite3")
(version "0.1.0")
(home-page "https://notabug.org/civodul/guile-sqlite3.git")
(source (origin
(method git-fetch)
(uri (git-reference
(url home-page)
(commit (string-append "v" version))))
(sha256
(base32
"1nv8j7wk6b5n4p22szyi8lv8fs31rrzxhzz16gyj8r38c1fyp9qp"))
(file-name (string-append name "-" version "-checkout"))))
(build-system gnu-build-system)
(native-inputs
`(("autoconf" ,autoconf)
("automake" ,automake)
("pkg-config" ,pkg-config)))
(inputs
`(("guile" ,guile-2.2)
("sqlite" ,sqlite)))
(synopsis "Access SQLite databases from Guile")
(description
"This package provides Guile bindings to the SQLite database system.")
(license license:gpl3+)))
(define-public haunt
(package
@ -1786,7 +1769,7 @@ is no support for parsing block and inline level HTML.")
(define-public guile-bytestructures
(package
(name "guile-bytestructures")
(version "1.0.1")
(version "1.0.3")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/TaylanUB/scheme-bytestructures"
@ -1794,7 +1777,7 @@ is no support for parsing block and inline level HTML.")
"/bytestructures-" version ".tar.gz"))
(sha256
(base32
"1lnfcy65mqj823lamy2n2vaghdz0g7mj011bgnhmd6hwpnaidnh2"))))
"0xf6s8gd3656j8k2ar6y7i62r68azawyzxhsagsk8nvldnrs1r18"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)))
@ -2002,20 +1985,6 @@ is not available for Guile 2.0.")
"0z1dvn0scx59pbgjkpacam7p5n7630z4qm8fazim7ixq9xv3s8wx"))
(file-name (git-file-name name version))))
(build-system gnu-build-system)
(arguments
`(#:phases (modify-phases %standard-phases
;; FIXME: On i686, bytestructures miscalculates the offset
;; of the 'old-file' and 'new-file' fields within the
;; '%diff-delta' structure. See
;; <https://github.com/TaylanUB/scheme-bytestructures/issues/30>.
,@(if (string=? (%current-system) "x86_64-linux")
'()
'((add-before 'check 'skip-tests
(lambda _
(substitute* "Makefile"
(("tests/status\\.scm")
""))
#t)))))))
(native-inputs
`(("autoconf" ,autoconf)
("automake" ,automake)
@ -2131,8 +2100,8 @@ It has a nice, simple s-expression based syntax.")
(license license:gpl3+)))
(define-public guile-simple-zmq
(let ((commit "d76657aeb1cd10ef8136edc06bb90999914c7c3c")
(revision "0"))
(let ((commit "1f3b7c0b9b249c6fde8e8a632b252d8a1b794424")
(revision "1"))
(package
(name "guile-simple-zmq")
(version (git-version "0.0.0" revision commit))
@ -2144,7 +2113,7 @@ It has a nice, simple s-expression based syntax.")
(commit commit)))
(sha256
(base32
"1w73dy5gpyv33jn34dqlkqpwh9w4y8wm6hgvbpb3wbp6xsa2mk4z"))
"0nj2pd5bsmmgd3c54wh4sixfhmsv1arsq7yam2d7487h3n9q57r7"))
(file-name (git-file-name name version))))
(build-system trivial-build-system)
(arguments
@ -2209,9 +2178,10 @@ It has a nice, simple s-expression based syntax.")
file go-file)))))
(list scm-file))
#t))))
(inputs
`(("guile" ,guile-2.2)))
(propagated-inputs
`(("guile" ,guile-2.2)
("zeromq" ,zeromq)))
`(("zeromq" ,zeromq)))
(home-page "https://github.com/jerry40/guile-simple-zmq")
(synopsis "Guile wrapper over ZeroMQ library")
(description

View file

@ -60,7 +60,7 @@
(define-public feh
(package
(name "feh")
(version "2.26.3")
(version "2.27")
(home-page "https://feh.finalrewind.org/")
(source (origin
(method url-fetch)
@ -68,7 +68,7 @@
name "-" version ".tar.bz2"))
(sha256
(base32
"08aagymgajcvciagwy2zdxhicvdfnjmd2xyx9bqjy7l1n16ydwrz"))))
"0kn6cka9m76697i495npd60ad64jnfnzv5z6znzyr0vlxx2nhcmg"))))
(build-system gnu-build-system)
(arguments
'(#:phases (modify-phases %standard-phases (delete 'configure))

View file

@ -394,6 +394,7 @@ extracting icontainer icon files.")
(define-public libtiff
(package
(name "libtiff")
(replacement libtiff/fixed)
(version "4.0.9")
(source
(origin
@ -426,6 +427,17 @@ collection of tools for doing simple manipulations of TIFF images.")
"See COPYRIGHT in the distribution."))
(home-page "http://www.simplesystems.org/libtiff/")))
(define libtiff/fixed
(package
(inherit libtiff)
(source
(origin
(inherit (package-source libtiff))
(patches
(append (origin-patches (package-source libtiff))
(search-patches "libtiff-CVE-2018-8905.patch"
"libtiff-CVE-2018-10963.patch")))))))
(define-public leptonica
(package
(name "leptonica")
@ -487,8 +499,9 @@ arithmetic ops.")
(source
(origin
(method url-fetch)
(uri (string-append "http://downloads.ghostscript.com/public/" name "/"
name "-" version ".tar.gz"))
(uri
(string-append "https://github.com/ArtifexSoftware/ghostpdl-downloads/"
"releases/download/gs922/" name "-" version ".tar.gz"))
(sha256
(base32 "0k01hp0q4275fj4rbr1gy64svfraw5w7wvwl08yjhvsnpb1rid11"))
(patches (search-patches "jbig2dec-ignore-testtest.patch"))))
@ -504,7 +517,7 @@ This is a decoder only implementation, and currently is in the alpha
stage, meaning it doesn't completely work yet. However, it is
maintaining parity with available encoders, so it is useful for real
work.")
(home-page "http://www.ghostscript.com/jbig2dec.html")
(home-page "https://jbig2dec.com")
(license license:gpl2+)))
(define-public openjpeg

View file

@ -47,14 +47,14 @@
;; The 7 release series has an incompatible API, while the 6 series is still
;; maintained. Don't update to 7 until we've made sure that the ImageMagick
;; users are ready for the 7-series API.
(version "6.9.9-43")
(version "6.9.10-3")
(source (origin
(method url-fetch)
(uri (string-append "mirror://imagemagick/ImageMagick-"
version ".tar.xz"))
(sha256
(base32
"09vfxb1ljfma7mvkcqp17bs7adlrfh6kc6k9hifkhgxf51vr7hk6"))))
"0njq3vp0f3d5992jsah5nhbc5id2bnl7myhdw669k0vmc55mmlcj"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags '("--with-frozenpaths" "--without-gcc-arch")

View file

@ -133,12 +133,11 @@ irssi, but graphical.")
(lambda* (#:key inputs outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(setenv "CONFIG_SHELL" (which "bash"))
(zero?
(system* "./configure"
(string-append "--prefix=" out)
(string-append "--with-proxy")
(string-append "--with-socks")
(string-append "--with-bot")))))))))
(invoke "./configure"
(string-append "--prefix=" out)
(string-append "--with-proxy")
(string-append "--with-socks")
(string-append "--with-bot"))))))))
(inputs
`(("glib" ,glib)
("ncurses" ,ncurses)
@ -405,21 +404,20 @@ other enhancements and bug fixes.")
'())
(setenv "CONFIG_SHELL" (which "bash"))
(setenv "SHELL" (which "bash"))
(zero?
(system* "./configure"
(string-append "--prefix=" out)
"--with-ipv6" "--with-libarchive"
;; We use libressl because openssl does not come
;; with the lib/libssl.a which is needed for epic5.
;; XXX: No matter which implementation is chosen,
;; epic5 fails to connect to tls ports of roundrobin
;; irc networks. This however is believed to be an
;; protocol issue at epic5 related to ircd.
(string-append "--with-ssl="
(assoc-ref %build-inputs "libressl"))
(string-append "--with-tcl="
(assoc-ref %build-inputs "tcl")
"/lib/tclConfig.sh")))))))))
(invoke "./configure"
(string-append "--prefix=" out)
"--with-ipv6" "--with-libarchive"
;; We use libressl because openssl does not come
;; with the lib/libssl.a which is needed for epic5.
;; XXX: No matter which implementation is chosen,
;; epic5 fails to connect to tls ports of roundrobin
;; irc networks. This however is believed to be an
;; protocol issue at epic5 related to ircd.
(string-append "--with-ssl="
(assoc-ref %build-inputs "libressl"))
(string-append "--with-tcl="
(assoc-ref %build-inputs "tcl")
"/lib/tclConfig.sh"))))))))
(inputs
`(("libressl" ,libressl)
("ncurses" ,ncurses)

View file

@ -2629,7 +2629,16 @@ documentation tools.")
"code.google.com/jarjar/jarjar-src-" version ".zip"))
(sha256
(base32
"1v8irhni9cndcw1l1wxqgry013s2kpj0qqn57lj2ji28xjq8ndjl"))))
"1v8irhni9cndcw1l1wxqgry013s2kpj0qqn57lj2ji28xjq8ndjl"))
(modules '((guix build utils)))
(snippet
'(begin
;; Delete bundled thirds-party jar archives.
;; TODO: unbundle maven-plugin-api.
(delete-file "lib/asm-4.0.jar")
(delete-file "lib/asm-commons-4.0.jar")
(delete-file "lib/junit-4.8.1.jar")
#t))))
(build-system ant-build-system)
(arguments
`(;; Tests require junit, which ultimately depends on this package.
@ -2637,6 +2646,26 @@ documentation tools.")
#:build-target "jar"
#:phases
(modify-phases %standard-phases
(add-before 'build 'do-not-use-bundled-asm
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "build.xml"
(("<path id=\"path.build\">")
(string-append "<path id=\"path.build\"><fileset dir=\""
(assoc-ref inputs "java-asm-bootstrap")
"/share/java\" includes=\"**/*.jar\"/>"))
(("<zipfileset src=\"lib/asm-4.0.jar\"/>") "")
(("lib/asm-commons-4.0.jar")
(string-append (assoc-ref inputs "java-asm-bootstrap")
"/share/java/asm-6.0.jar"))
(("<include name=\"org/objectweb/asm/commons/Remap\\*\\.class\"/>")
(string-append "<include name=\"org/objectweb/asm/"
"commons/Remap*.class\"/>"
"<include name=\"org/objectweb/asm/*.class\"/>"
"<include name=\"org/objectweb/asm/"
"signature/*.class\"/>"
"<include name=\"org/objectweb/asm/"
"commons/SignatureRemapper.class\"/>")))
#t))
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let ((target (string-append (assoc-ref outputs "out")
@ -2644,6 +2673,8 @@ documentation tools.")
(install-file (string-append "dist/jarjar-" ,version ".jar")
target))
#t)))))
(inputs
`(("java-asm-bootstrap" ,java-asm-bootstrap)))
(native-inputs
`(("unzip" ,unzip)))
(home-page "https://code.google.com/archive/p/jarjar/")
@ -3262,6 +3293,39 @@ Compiler component.")))
This component decrypts a string passed to it.")
(license license:asl2.0)))
(define-public java-plexus-cli
(package
(name "java-plexus-cli")
(version "1.7")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/sonatype/plexus-cli")
(commit "a776afa6bca84e5107bedb69440329cdb24ed645")))
(file-name (string-append name "-" version))
(sha256
(base32
"0xjrlay605rypv3zd7y24vlwf0039bil3n2cqw54r1ddpysq46vx"))))
(build-system ant-build-system)
(arguments
`(#:jar-name "plexus-cli.jar"
#:source-dir "src/main/java"
#:jdk ,icedtea-8
#:test-dir "src/test"))
(inputs
`(("java-commons-cli" ,java-commons-cli)
("java-plexus-container-default" ,java-plexus-container-default)
("java-plexus-classworlds" ,java-plexus-classworlds)))
(native-inputs
`(("java-plexus-utils" ,java-plexus-utils)
("java-junit" ,java-junit)
("java-guava" ,java-guava)))
(home-page "https://codehaus-plexus.github.io/plexus-cli")
(synopsis "CLI building library for plexus")
(description "This package is a library to help creating CLI around
Plexus components.")
(license license:asl2.0)))
(define-public java-sisu-build-api
(package
(name "java-sisu-build-api")
@ -3550,7 +3614,7 @@ complex transformations and code analysis tools.")
`(("java-aqute-bndlib" ,java-aqute-bndlib-bootstrap)
("java-aqute-libg" ,java-aqute-libg-bootstrap)
,@(delete `("java-aqute-bndlib" ,java-aqute-bndlib)
(delete `("java-aqute-libg", java-aqute-libg)
(delete `("java-aqute-libg" ,java-aqute-libg)
(package-inputs java-asm)))))))
(define-public java-cglib
@ -3999,7 +4063,9 @@ are many features, including:
"commons-collections-" version "-src.tar.gz"))
(sha256
(base32
"055r51a5lfc3z7rkxnxmnn1npvkvda7636hjpm4qk7cnfzz98387"))))
"055r51a5lfc3z7rkxnxmnn1npvkvda7636hjpm4qk7cnfzz98387"))
(patches
(search-patches "java-commons-collections-fix-java8.patch"))))
(arguments
(substitute-keyword-arguments (package-arguments java-commons-collections4)
((#:phases phases)
@ -6967,22 +7033,53 @@ it manages project dependencies, gives diffs jars, and much more.")
(name "java-aqute-libg")
(arguments
`(#:jar-name "java-aqute-libg.jar"
#:source-dir "aQute.libg/src"
#:tests? #f)); FIXME: tests are in "aQute.libg/test", not in a java directory
;; The build fails when source/target more recent than 1.7. This
;; is a known issue. See: https://github.com/bndtools/bnd/issues/1327
;;
;; It is closed as won't fix. There is no way to change the source
;; so that it works on 1.8, and still works on 1.6, the upstream
;; target. It work fine on 1.7, so we use 1.7.
#:make-flags (list "-Dant.build.javac.source=1.7"
"-Dant.build.javac.target=1.7")
#:phases
(modify-phases %standard-phases
(add-before 'configure 'chdir
;; Change to aQute.libg directory, so that the relative
;; paths in the tests aren't broken.
(lambda _
(chdir "aQute.libg")
#t))
(add-before 'check 'create-test-directory
;; Copy the test directory to test/java, since that's where
;; ant-build-system's default project in build.xml expects to find
;; the test classes. Leave a copy in the original place to not
;; break paths in tests.
(lambda _
(mkdir "src/test")
(copy-recursively "test" "src/test/java")
#t)))))
(inputs
`(("slf4j" ,java-slf4j-api)
("osgi-annot" ,java-osgi-annotation)
("java-osgi-cmpn" ,java-osgi-cmpn)
("osgi" ,java-osgi-core)))))
("osgi" ,java-osgi-core)))
(native-inputs
`(("hamcrest" ,java-hamcrest-core)
("java-junit" ,java-junit)))))
(define java-aqute-libg-bootstrap
(package
(inherit java-aqute-libg)
(name "java-aqute-libg-bootstrap")
(arguments
;; Disable tests, at this stage of bootstrap we have no test frameworks.
(substitute-keyword-arguments (package-arguments java-aqute-libg)
((#:tests? _ #f) #f)))
(inputs
`(("slf4j-bootstrap" ,java-slf4j-api-bootstrap)
,@(delete `("slf4j" ,java-slf4j-api)
(package-inputs java-aqute-libg))))))
(package-inputs java-aqute-libg))))
(native-inputs '())))
(define-public java-aqute-bndlib
(package
@ -10153,3 +10250,32 @@ This module can be assimilated to a significantly improved version of log4j.
Moreover, @code{logback-classic} natively implements the slf4j API so that you
can readily switch back and forth between logback and other logging frameworks
such as log4j or @code{java.util.logging} (JUL).")))
(define-public java-qdox
(package
(name "java-qdox")
; Newer version exists, but this version is required by java-plexus-component-metadata
(version "2.0-M2")
(source (origin
(method url-fetch)
;; 2.0-M4, -M5 at https://github.com/paul-hammant/qdox
;; Older releases at https://github.com/codehaus/qdox/
;; Note: The release at maven is pre-generated. The release at
;; github requires jflex.
(uri (string-append "http://central.maven.org/maven2/"
"com/thoughtworks/qdox/qdox/" version
"/qdox-" version "-sources.jar"))
(sha256
(base32
"10xxrcaicq6axszcr2jpygisa4ch4sinyx5q7kqqxv4lknrmxp5x"))))
(build-system ant-build-system)
(arguments
`(#:jar-name "qdox.jar"
#:tests? #f)); no tests
(home-page "http://qdox.codehaus.org/")
(synopsis "Parse definitions from Java source files")
(description "QDox is a high speed, small footprint parser for extracting
class/interface/method definitions from source files complete with JavaDoc
@code{@@tags}. It is designed to be used by active code generators or
documentation tools.")
(license license:asl2.0)))

View file

@ -7,6 +7,7 @@
;;; Copyright © 2012, 2017 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2017 Alex Vong <alexvong1995@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -136,29 +137,26 @@ secure manner through client-server mutual authentication via tickets.")
(define-public heimdal
(package
(name "heimdal")
(version "1.5.3")
(version "7.5.0")
(source (origin
(method url-fetch)
(uri (string-append "http://www.h5l.org/dist/src/heimdal-"
version ".tar.gz"))
(uri (string-append
"https://github.com/heimdal/heimdal/releases/download/"
"heimdal-" version "/" "heimdal-" version ".tar.gz"))
(sha256
(base32
"19gypf9vzfrs2bw231qljfl4cqc1riyg0ai0xmm1nd1wngnpphma"))
(patches (search-patches "heimdal-CVE-2017-6594.patch"
"heimdal-CVE-2017-11103.patch"))
"1bdc682in55ygrxmhncs7cf4s239apcblci3z8i80wnc1w1s18n5"))
(modules '((guix build utils)))
(snippet
'(begin
(substitute* "configure"
(("User=.*$") "User=Guix\n")
(("Host=.*$") "Host=GNU")
(("Date=.*$") "Date=2017\n"))
#t))))
(build-system gnu-build-system)
(arguments
'(#:configure-flags (list
;; Work around a linker error.
"CFLAGS=-pthread"
;; Avoid 7 MiB of .a files.
"--disable-static"
@ -168,22 +166,40 @@ secure manner through client-server mutual authentication via tickets.")
(assoc-ref %build-inputs "readline") "/lib")
(string-append
"--with-readline-include="
(assoc-ref %build-inputs "readline") "/include"))
(assoc-ref %build-inputs "readline") "/include")
;; Do not build sqlite.
(string-append
"--with-sqlite3="
(assoc-ref %build-inputs "sqlite")))
#:phases (modify-phases %standard-phases
(add-before 'check 'skip-tests
(add-before 'configure 'pre-configure
(lambda _
;; The test simply runs 'ftp --version && ftp --help'
;; but that fails in the chroot because 'ftp' tries to
;; do a service lookup before printing the help/version.
(substitute* "appl/ftp/ftp/Makefile.in"
(("^CHECK_LOCAL =.*")
"CHECK_LOCAL = no-check-local\n"))
#t)))))
(native-inputs `(("e2fsprogs" ,e2fsprogs))) ;for 'compile_et'
(substitute* '("appl/afsutil/pagsh.c"
"tools/Makefile.in")
(("/bin/sh") (which "sh")))
#t))
(add-before 'check 'pre-check
(lambda _
;; For 'getxxyyy-test'.
(setenv "USER" (passwd:name (getpwuid (getuid))))
;; Skip 'db' and 'kdc' tests for now.
;; FIXME: figure out why 'kdc' tests fail.
(with-output-to-file "tests/db/have-db.in"
(lambda ()
(format #t "#!~a~%exit 1~%" (which "sh"))))
#t)))
;; Tests fail when run in parallel.
#:parallel-tests? #f))
(native-inputs `(("e2fsprogs" ,e2fsprogs) ;for 'compile_et'
("texinfo" ,texinfo)
("unzip" ,unzip))) ;for tests
(inputs `(("readline" ,readline)
("bdb" ,bdb)
("e2fsprogs" ,e2fsprogs))) ;for libcom_err
("e2fsprogs" ,e2fsprogs) ;for libcom_err
("sqlite" ,sqlite)))
(home-page "http://www.h5l.org/")
(synopsis "Kerberos 5 network authentication")
(description

View file

@ -28,7 +28,7 @@
(define-public libedit
(package
(name "libedit")
(version "20170329-3.1")
(version "20180525-3.1")
(source
(origin
(method url-fetch)
@ -36,7 +36,7 @@
"/" name "-" version ".tar.gz"))
(sha256
(base32
"1gnlgl0x8g9ky59s70nriy5gv47676d1s4ypvbv8y11apl7xkwli"))))
"05iicng4kag5hxdc7adbyj1gm3qbmvcc33m9cyx5gys0s67yl6y4"))))
(build-system gnu-build-system)
(inputs
`(("ncurses" ,ncurses)))

View file

@ -9,6 +9,7 @@
;;; Copyright © 2017, 2018 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2017, 2018 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2017 Rutger Helling <rhelling@mykolab.com>
;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net>
;;;
;;; This file is part of GNU Guix.
;;;
@ -78,20 +79,21 @@
(define-public ixion
(package
(name "ixion")
(version "0.12.2")
(version "0.13.0")
(source
(origin
(method url-fetch)
(uri (string-append "http://kohei.us/files/ixion/src/libixion-"
version ".tar.xz"))
(sha256 (base32
"1bnsqbxpbijwbg42rrqq6mz06wvcxjpl0gjdzwyilkmv6s400i4b"))))
(method url-fetch)
(uri (string-append "http://kohei.us/files/ixion/src/libixion-"
version ".tar.xz"))
(sha256
(base32
"1rf76drzg593jzswwnh8kr2jangp8ylizqjspx57rld25g2n1qss"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)))
(inputs
`(("mdds" ,mdds)
("python" ,python)))
(inputs
`(("mdds" ,mdds)
("python" ,python)))
(home-page "https://gitlab.com/ixion/ixion")
(synopsis "General purpose formula parser and interpreter")
(description "Ixion is a library for calculating the results of formula
@ -103,22 +105,23 @@ their dependencies automatically upon calculation.")
(define-public orcus
(package
(name "orcus")
(version "0.12.1")
(version "0.13.4")
(source
(origin
(method url-fetch)
(uri (string-append "http://kohei.us/files/" name "/src/lib"
name "-" version ".tar.xz"))
(sha256 (base32
"171bmqa9hkk4xygz20qda5900rs4kq9fgl424ldkxlj4d733dffi"))))
(method url-fetch)
(uri (string-append "http://kohei.us/files/" name "/src/lib"
name "-" version ".tar.xz"))
(sha256
(base32
"1r42waglxwmvvwl20fy49vzgfp1sis4j703f81iswzdyzqalq75p"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)))
(inputs
`(("ixion" ,ixion)
("mdds" ,mdds)
("python" ,python)
("zlib" ,zlib)))
(inputs
`(("ixion" ,ixion)
("mdds" ,mdds)
("python" ,python)
("zlib" ,zlib)))
(home-page "https://gitlab.com/orcus/orcus")
(synopsis "File import filter library for spreadsheet documents")
(description "Orcus is a library that provides a collection of standalone
@ -224,6 +227,34 @@ cellphones), TCR (simple compressed text format), TealDoc, zTXT,
ZVR (simple compressed text format).")
(license mpl2.0)))
(define-public libepubgen
(package
(name "libepubgen")
(version "0.1.1")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/libepubgen/libepubgen-"
version "/libepubgen-" version ".tar.xz"))
(sha256
(base32
"1b8mc9zzrqypj1v9zdy3ybc48pw0rfr06cyi7n6grvybjjwq9q03"))))
(build-system gnu-build-system)
(native-inputs
`(("cppunit" ,cppunit)
("pkg-config" ,pkg-config)))
(inputs
`(("libxml2" ,libxml2)
("boost" ,boost)))
(propagated-inputs ; in Requires field of .pkg
`(("librevenge" ,librevenge)))
(home-page "https://sourceforge.net/projects/libepubgen/")
(synopsis "EPUB generator library for librevenge")
(description "libepubgen is an EPUB generator for librevenge. It supports
librevenge's text document interface and--currently in a very limited
way--presentation and vector drawing interfaces.")
(license mpl2.0)))
(define-public libwpg
(package
(name "libwpg")
@ -835,10 +866,37 @@ and to return information on pronunciations, meanings and synonyms.")
(license (non-copyleft "file://COPYING"
"See COPYING in the distribution."))))
(define-public libqxp
(package
(name "libqxp")
(version "0.0.1")
(source (origin
(method url-fetch)
(uri (string-append "https://dev-www.libreoffice.org/src/libqxp/"
"libqxp-" version ".tar.xz"))
(sha256
(base32
"0wswz49y0lqwqw2nj9j7jaj5ag88hapcz8czgkxax57zhihpy9cc"))))
(build-system gnu-build-system)
(inputs
`(("boost" ,boost)
("icu4c" ,icu4c)
("zlib" ,zlib)))
(native-inputs
`(("cppunit" ,cppunit)
("pkg-config" ,pkg-config)))
(propagated-inputs
`(("librevenge" ,librevenge))) ; mentioned in Requires field
(home-page "https://www.libreoffice.org")
(synopsis "Library and tools for the QuarkXPress file format")
(description "libqxp is a library and a set of tools for reading and
converting QuarkXPress file format. It supports versions 3.1 to 4.1.")
(license mpl2.0)))
(define-public libreoffice
(package
(name "libreoffice")
(version "5.4.7.2")
(version "6.0.5.1")
(source
(origin
(method url-fetch)
@ -848,7 +906,8 @@ and to return information on pronunciations, meanings and synonyms.")
(version-prefix version 3) "/libreoffice-" version ".tar.xz"))
(sha256
(base32
"0s9s4nhp2whwxis54jbxrf1dwpnpl95b9781d1pdj4xk5z9v90fv"))))
"0vnmb231hyhxm7klaqd8vp3rmvix145bq8iqzv19jgl1yaqkxl21"))
(patches (search-patches "libreoffice-icu.patch"))))
(build-system gnu-build-system)
(native-inputs
`(("bison" ,bison)
@ -880,6 +939,7 @@ and to return information on pronunciations, meanings and synonyms.")
("libcmis" ,libcmis)
("libjpeg-turbo" ,libjpeg-turbo)
("libe-book" ,libe-book)
("libepubgen" ,libepubgen)
("libetonyek" ,libetonyek)
("libexttextcat" ,libexttextcat)
("libfreehand" ,libfreehand)
@ -890,6 +950,7 @@ and to return information on pronunciations, meanings and synonyms.")
("libmwaw" ,libmwaw)
("libodfgen" ,libodfgen)
("libpagemaker" ,libpagemaker)
("libqxp" ,libqxp)
("libstaroffice" ,libstaroffice)
("libvisio" ,libvisio)
("libwpg" ,libwpg)
@ -927,34 +988,23 @@ and to return information on pronunciations, meanings and synonyms.")
(modify-phases %standard-phases
(add-before 'configure 'prepare-src
(lambda* (#:key inputs #:allow-other-keys)
(let ((gpgme (assoc-ref inputs "gpgme")))
(substitute*
"sdext/source/pdfimport/xpdfwrapper/pdfioutdev_gpl.cxx"
;; This header was renamed in Poppler 0.62.0.
(("UTF8.h") "UnicodeMapFuncs.h")
;; And mapUCS2() was renamed to mapUTF16().
(("UCS2") "UTF16"))
(substitute*
(substitute*
(list "sysui/CustomTarget_share.mk"
"solenv/gbuild/gbuild.mk"
"solenv/gbuild/platform/unxgcc.mk")
(("/bin/sh") (which "sh")))
(("/bin/sh") (which "sh")))
;; GPGME++ headers are installed in a gpgme++ subdirectory,
;; but files in "xmlsecurity/source/gpg/" expect to find them
;; on the include path without a prefix.
(substitute* "xmlsecurity/Library_xsec_xmlsec.mk"
(("\\$\\$\\(INCLUDE\\)")
(string-append "$$(INCLUDE) -I" gpgme "/include/gpgme++")))
;; GPGME++ headers are installed in a gpgme++ subdirectory, but
;; files in "xmlsecurity/source/gpg/" and elsewhere expect to
;; find them on the include path without a prefix.
(substitute* '("xmlsecurity/Library_xsec_xmlsec.mk"
"comphelper/Library_comphelper.mk")
(("\\$\\$\\(INCLUDE\\)")
(string-append "$$(INCLUDE) -I"
(assoc-ref inputs "gpgme")
"/include/gpgme++")))
;; XXX: When GTK2 is disabled, one header file is not included.
;; This is likely fixed in later versions. See also
;; <https://bugs.gentoo.org/641812>.
(substitute* "vcl/unx/gtk3/gtk3gtkframe.cxx"
(("#include <unx/gtk/gtkgdi.hxx>")
"#include <unx/gtk/gtkgdi.hxx>\n#include <unx/gtk/gtksalmenu.hxx>"))
#t)))
#t))
(add-after 'install 'bin-and-desktop-install
;; Create 'soffice' and 'libreoffice' symlinks to the executable
;; script.

View file

@ -7,6 +7,7 @@
;;; Copyright © 2016 Theodoros Foradis <theodoros@foradis.org>
;;; Copyright © 2017 Jonathan Brielmaier <jonathan.brielmaier@web.de>
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018 Vagrant Cascadian <vagrant@debian.org>
;;;
;;; This file is part of GNU Guix.
;;;
@ -214,6 +215,49 @@ with usb4java.")
implementing @code{javax.usb} (JSR-80).")
(license expat)))
(define-public python-libusb1
(package
(name "python-libusb1")
(version "1.6.4")
(source
(origin
(method url-fetch)
(uri (pypi-uri "libusb1" version))
(sha256
(base32
"03b7xrz8vqg8w0za5r503jhcmbd1ls5610jcja1rqz833nf0v4wc"))))
(build-system python-build-system)
(arguments
`(#:modules ((srfi srfi-1)
(guix build utils)
(guix build python-build-system))
#:phases
(modify-phases %standard-phases
(add-before 'install-license-files 'remove-incorrect-license
(lambda* (#:key out #:allow-other-keys)
;; Was relicensed to LGPL 2.1+, but old COPYING file still left
;; in source. Remove it so it does not get installed.
(delete-file "COPYING")
#t))
(add-after 'unpack 'fix-libusb-reference
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "usb1/libusb1.py"
(("libusb_path = ctypes.util.find_library\\(base_name\\)")
(string-append
"libusb_path = \""
(find (negate symbolic-link?)
(find-files (assoc-ref inputs "libusb")
"^libusb.*\\.so\\..*"))
"\"")))
#t)))))
(inputs `(("libusb" ,libusb)))
(home-page "https://github.com/vpelletier/python-libusb1")
(synopsis "Pure-python wrapper for libusb-1.0")
(description "Libusb is a library that gives applications easy access to
USB devices on various operating systems. This package provides a Python
wrapper for accessing libusb-1.0.")
(license lgpl2.1+)))
(define-public python-pyusb
(package
(name "python-pyusb")

View file

@ -50,6 +50,7 @@
#:use-module (gnu packages admin)
#:use-module (gnu packages algebra)
#:use-module (gnu packages attr)
#:use-module (gnu packages audio)
#:use-module (gnu packages autotools)
#:use-module (gnu packages backup)
#:use-module (gnu packages base)
@ -295,6 +296,12 @@ for ARCH and optionally VARIANT, or #f if there is no such configuration."
(or (%current-target-system) (%current-system)))
((or "x86_64" "i386")
`(("gcc" ,gcc-7)))
("arm64"
;; Work around a binutils 2.30 bug where some kernel symbols would
;; be incorrectly marked as relocatable:
;; <https://sourceware.org/bugzilla/show_bug.cgi?id=22764>.
`(("ld-wrapper" ,(make-ld-wrapper "ld-wrapper"
#:binutils binutils/fixed))))
(_
'()))
,@(match (and configuration-file
@ -395,8 +402,8 @@ It has been modified to remove all non-free binary blobs.")
;; supports qemu "virt" machine and possibly a large number of ARM boards.
;; See : https://wiki.debian.org/DebianKernel/ARMMP.
(define %linux-libre-version "4.17")
(define %linux-libre-hash "0abbqrq96kn97jr02mf4ahqg7hl9vhq95c1l2z0s7jqrmhv1n8pb")
(define %linux-libre-version "4.17.3")
(define %linux-libre-hash "06mjbs3i0xq1h1cgr6xldr6a8rxsy30mf86wp3n2ff6l5v78iw2q")
(define-public linux-libre
(make-linux-libre %linux-libre-version
@ -404,8 +411,8 @@ It has been modified to remove all non-free binary blobs.")
%linux-compatible-systems
#:configuration-file kernel-config))
(define %linux-libre-4.14-version "4.14.48")
(define %linux-libre-4.14-hash "011lkq30gpvbgvg2p1nw2kqkig9a3qridy678rkx3fpah0ya4rhd")
(define %linux-libre-4.14-version "4.14.52")
(define %linux-libre-4.14-hash "0lx916iw33n32h1fca59r7mh6l2smyml6igvzhimcah62hqx4rk8")
(define-public linux-libre-4.14
(make-linux-libre %linux-libre-4.14-version
@ -414,14 +421,14 @@ It has been modified to remove all non-free binary blobs.")
#:configuration-file kernel-config))
(define-public linux-libre-4.9
(make-linux-libre "4.9.106"
"0wgyv15x2czd4nyw4smzp9923cl1ix7pjcry4zn3y61ivqxbqini"
(make-linux-libre "4.9.110"
"0nzfna9w9a45y521d3dcxkdv66gn38n4pq814rdqazk74qb5macn"
%intel-compatible-systems
#:configuration-file kernel-config))
(define-public linux-libre-4.4
(make-linux-libre "4.4.135"
"0jdf5yx8b6q4zw7q9k8vv0ky8wlvclr9qz70wgrrvmm5dh1662j9"
(make-linux-libre "4.4.138"
"1030ra5gn24qmx8lsnhr6kfnfm60avzs23r81dl7mvzr5dci8vsl"
%intel-compatible-systems
#:configuration-file kernel-config))
@ -914,16 +921,15 @@ Zerofree requires the file system to be unmounted or mounted read-only.")
(define-public strace
(package
(name "strace")
(version "4.22")
(version "4.23")
(home-page "https://strace.io")
(source (origin
(method url-fetch)
(uri (string-append home-page "/files/" version
"/strace-" version ".tar.xz"))
(patches (search-patches "strace-kernel-4.16.patch"))
(sha256
(base32
"17dkpnsjxmys1ydidm9wcvc3wscsz44fmlxw3dclspn9cj9d1306"))))
"1bcsq2gbpcb81ayryvn56a6kjx42fc21la6qgds35n0xbybacq3q"))))
(build-system gnu-build-system)
(arguments
'(#:phases
@ -1055,7 +1061,7 @@ MIDI functionality to the Linux-based operating system.")
;; TODO: Remove OSS related plugins, they add support to run native
;; ALSA applications on OSS however we do not offer OSS and OSS is
;; obsolete.
(outputs '("out" "pulseaudio"))
(outputs '("out" "pulseaudio" "jack"))
(arguments
`(#:phases
(modify-phases %standard-phases
@ -1063,9 +1069,17 @@ MIDI functionality to the Linux-based operating system.")
(lambda* (#:key inputs outputs #:allow-other-keys)
;; Distribute the binaries to the various outputs.
(let* ((out (assoc-ref outputs "out"))
(jack (assoc-ref outputs "jack"))
(jacklib (string-append jack "/lib/alsa-lib"))
(pua (assoc-ref outputs "pulseaudio"))
(pualib (string-append pua "/lib/alsa-lib"))
(puaconf (string-append pua "/share/alsa/alsa.conf.d")))
;; For jack.
(mkdir-p jacklib)
(for-each (lambda (file)
(rename-file file (string-append jacklib "/" (basename file))))
(find-files out ".*jack\\.(la|so)"))
;; For pluseaudio.
(mkdir-p puaconf)
(mkdir-p pualib)
(chdir (string-append out "/share"))
@ -1082,6 +1096,7 @@ MIDI functionality to the Linux-based operating system.")
#t))))))
(inputs
`(("alsa-lib" ,alsa-lib)
("jack" ,jack-1)
("speex" ,speex) ; libspeexdsp resampling plugin
("libsamplerate" ,libsamplerate) ; libsamplerate resampling plugin
("ffmpeg" ,ffmpeg) ; libavcodec resampling plugin, a52 plugin
@ -1195,7 +1210,7 @@ that the Ethernet protocol is much simpler than the IP protocol.")
(define-public iproute
(package
(name "iproute2")
(version "4.16.0")
(version "4.17.0")
(source (origin
(method url-fetch)
(uri (string-append
@ -1203,7 +1218,7 @@ that the Ethernet protocol is much simpler than the IP protocol.")
version ".tar.xz"))
(sha256
(base32
"02pfalg319jpbjz273ph725br8dnkzpfvi98azi9yd6p1w128p0c"))))
"0vmynikcamfhakvwyk5dsffy0ymgi5mdqiwybdvqfn1ijaq93abg"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; no test suite
@ -2995,7 +3010,10 @@ arrays when needed.")
(let ((lvm2 (assoc-ref inputs "lvm2"))
(udev (assoc-ref inputs "udev")))
(substitute* "Makefile.inc"
(("\\$\\(prefix\\)/usr") "$(prefix)"))
(("\\$\\(prefix\\)/usr") "$(prefix)")
;; Do not save timestamp to avoid gzip "timestamp
;; out-of-range" warnings.
(("gzip -9") "gzip -9n"))
(substitute* '("kpartx/Makefile" "libmultipath/Makefile")
(("/usr/include/libdevmapper.h")
(string-append lvm2 "/include/libdevmapper.h"))
@ -3256,6 +3274,7 @@ and copy/paste text in the console and in xterm.")
(invoke "make"
(string-append "bindir=" staticbin)
"install-static")))))
#:tests? #f ; XXX: require the 'btrfs' kernel module.
#:test-target "test"
#:parallel-tests? #f)) ; tests fail when run in parallel
(inputs `(("e2fsprogs" ,e2fsprogs)
@ -3363,7 +3382,7 @@ disks and SD cards. This package provides the userland utilities.")
(package
(inherit f2fs-tools-1.7)
(name "f2fs-tools")
(version "1.8.0")
(version "1.10.0")
(source (origin
(method url-fetch)
(uri (string-append
@ -3371,7 +3390,7 @@ disks and SD cards. This package provides the userland utilities.")
"/f2fs-tools.git/snapshot/" name "-" version ".tar.gz"))
(sha256
(base32
"1bir9ladb58ijlcvrjrq1fb1xv5ys50zdjaq0yzliib0apsyrnyl"))))
"05ikaim0qq3dx9x3sp43ralwz43r3b0viv62n99kabp0vf3b0hg8"))))
(inputs
`(("libuuid" ,util-linux)))))
@ -4032,26 +4051,27 @@ monitoring tools for Linux. These include @code{mpstat}, @code{iostat},
(define-public light
(package
(name "light")
(version "1.0")
(version "1.1")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/haikarainen/" name
"/archive/v" version ".tar.gz"))
(method git-fetch)
(uri (git-reference
(url "https://github.com/haikarainen/light")
(commit version)))
(sha256
(base32
"0r5gn6c0jcxknzybl6059dplxv46dpahchqq4gymrs7z8bp0hilp"))
(file-name (string-append name "-" version ".tar.gz"))))
"1qra8yzsga29bxlvq63v1db071a1xdji7i60p4kzrciidm1206js"))))
(build-system gnu-build-system)
(arguments
'(#:tests? #f ; no tests
'(#:tests? #f ; no tests
#:make-flags (list "CC=gcc"
(string-append "PREFIX=" %output))
#:phases
(modify-phases %standard-phases
(delete 'configure)
(delete 'configure) ; no configure script
(add-after 'unpack 'patch-makefile
(lambda _
(substitute* "Makefile" (("chown") "#")))))))
(substitute* "Makefile" (("chown") "#"))
#t)))))
(native-inputs
`(("help2man" ,help2man)))
(home-page "https://haikarainen.github.io/light")
@ -4404,14 +4424,14 @@ available in the kernel Linux.")
(define-public cpuid
(package
(name "cpuid")
(version "20180419")
(version "20180519")
(source (origin
(method url-fetch)
(uri (string-append "http://www.etallen.com/cpuid/cpuid-"
version ".src.tar.gz"))
(sha256
(base32
"0cnxj72pjalsszhn862r6shw64zbrkw0k3mm36fn93bivswjnj12"))))
"16pzwyifc9glpk1hm6bqb5d1a7cw0qnqiamh5sbvqg7j6sz26y4n"))))
(build-system gnu-build-system)
(arguments
'(#:make-flags '("CC=gcc")
@ -4826,3 +4846,26 @@ libpfm4 provides support for the @code{perf_events} interface, which was
introduced in Linux 2.6.31.")
(home-page "http://perfmon2.sourceforge.net/")
(license license:expat)))
(define-public libnfnetlink
(package
(name "libnfnetlink")
(version "1.0.1")
(source (origin
(method url-fetch)
(uri (string-append
"https://www.netfilter.org/projects/libnfnetlink/files/"
"libnfnetlink-" version ".tar.bz2"))
(sha256
(base32
"06mm2x4b01k3m7wnrxblk9j0mybyr4pfz28ml7944xhjx6fy2w7j"))))
(build-system gnu-build-system)
(home-page "https://www.netfilter.org/projects/libnfnetlink/")
(synopsis "Low-level netfilter netlink communication library")
(description
"@code{libnfnetlink} is the low-level library for netfilter related
kernel/userspace communication. It provides a generic messaging
infrastructure for in-kernel netfilter subsystems (such as nfnetlink_log,
nfnetlink_queue, nfnetlink_conntrack) and their respective users and/or
management tools in userspace.")
(license license:gpl2)))

View file

@ -944,18 +944,19 @@ from other CLXes around the net.")
(define-public sbcl-stumpwm
(package
(name "sbcl-stumpwm")
(version "1.0.0")
(version "18.05")
(source (origin
(method url-fetch)
(uri (string-append
"https://github.com/stumpwm/stumpwm/archive/"
version ".tar.gz"))
(sha256
(base32 "1maxp98gh64az3d9vz9br6zdd6rc9fmj2imvax4by85g6kxvdz1i"))
(base32 "1n2gaab3lwgf5r1hmwdcw13dkv9xdd7drn2shx28kfxvhdc9kbb9"))
(file-name (string-append "stumpwm-" version ".tar.gz"))))
(build-system asdf-build-system/sbcl)
(inputs `(("cl-ppcre" ,sbcl-cl-ppcre)
("clx" ,sbcl-clx)))
("clx" ,sbcl-clx)
("alexandria" ,sbcl-alexandria)))
(outputs '("out" "lib"))
(arguments
'(#:phases

View file

@ -86,7 +86,7 @@ staying as close to their API as is reasonable.")
;; mismatch, so run the whole thing.
(delete-file "test-driver")
(delete-file "configure") ;it's read-only
(zero? (system* "autoreconf" "-vfi"))))
(invoke "autoreconf" "-vfi")))
(add-before 'check 'disable-signal-tests
(lambda _
;; See e.g. https://github.com/google/glog/issues/219

View file

@ -47,7 +47,9 @@
#:use-module (gnu packages gcc)
#:use-module (gnu packages image)
#:use-module (gnu packages maths)
#:use-module (gnu packages mpi)
#:use-module (gnu packages ocaml)
#:use-module (gnu packages onc-rpc)
#:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages python)
@ -232,7 +234,7 @@ classification.")
#t))
(add-after 'disable-broken-tests 'autogen
(lambda _
(zero? (system* "bash" "autogen.sh")))))))
(invoke "bash" "autogen.sh"))))))
(inputs
`(("python" ,python-2) ; only Python 2 is supported
("libxml2" ,libxml2)))
@ -666,15 +668,18 @@ and a QP solver.")
;; No test target, so we build and run the unit tests here.
(let ((test-dir (string-append "../dlib-" ,version "/dlib/test")))
(with-directory-excursion test-dir
(and (zero? (system* "make" "-j" (number->string (parallel-job-count))))
(zero? (system* "./dtest" "--runall")))))))
(invoke "make" "-j" (number->string (parallel-job-count)))
(invoke "./dtest" "--runall"))
#t)))
(add-after 'install 'delete-static-library
(lambda* (#:key outputs #:allow-other-keys)
(delete-file (string-append (assoc-ref outputs "out")
"/lib/libdlib.a"))
#t)))))
(native-inputs
`(("pkg-config" ,pkg-config)))
`(("pkg-config" ,pkg-config)
;; For tests.
("libnsl" ,libnsl)))
(inputs
`(("giflib" ,giflib)
("lapack" ,lapack)
@ -725,7 +730,7 @@ computing environments.")
(setenv "HOME" "/tmp")
;; Step out of the source directory just to be sure.
(chdir "..")
(zero? (system* "nosetests" "-v" "sklearn")))))))
(invoke "nosetests" "-v" "sklearn"))))))
(inputs
`(("openblas" ,openblas)))
(native-inputs
@ -786,3 +791,78 @@ main intended application of Autograd is gradient-based optimization.")
(define-public python2-autograd
(package-with-python2 python-autograd))
(define-public lightgbm
(package
(name "lightgbm")
(version "2.0.12")
(source (origin
(method url-fetch)
(uri (string-append
"https://github.com/Microsoft/LightGBM/archive/v"
version ".tar.gz"))
(sha256
(base32
"132zf0yk0545mg72hyzxm102g3hpb6ixx9hnf8zd2k55gas6cjj1"))
(file-name (string-append name "-" version ".tar.gz"))))
(native-inputs
`(("python-pytest" ,python-pytest)
("python-nose" ,python-nose)))
(inputs
`(("openmpi" ,openmpi)))
(propagated-inputs
`(("python-numpy" ,python-numpy)
("python-scipy" ,python-scipy)))
(arguments
`(#:configure-flags
'("-DUSE_MPI=ON")
#:phases
(modify-phases %standard-phases
(replace 'check
(lambda* (#:key outputs #:allow-other-keys)
(with-directory-excursion ,(string-append "../LightGBM-" version)
(invoke "pytest" "tests/c_api_test/test_.py")))))))
(build-system cmake-build-system)
(home-page "https://github.com/Microsoft/LightGBM")
(synopsis "Gradient boosting framework based on decision tree algorithms")
(description "LightGBM is a gradient boosting framework that uses tree
based learning algorithms. It is designed to be distributed and efficient with
the following advantages:
@itemize
@item Faster training speed and higher efficiency
@item Lower memory usage
@item Better accuracy
@item Parallel and GPU learning supported (not enabled in this package)
@item Capable of handling large-scale data
@end itemize\n")
(license license:expat)))
(define-public vowpal-wabbit
;; Language bindings not included.
(package
(name "vowpal-wabbit")
(version "8.5.0")
(source (origin
(method url-fetch)
(uri (string-append
"https://github.com/JohnLangford/vowpal_wabbit/archive/"
version ".tar.gz"))
(sha256
(base32
"0clp2kb7rk5sckhllxjr5a651awf4s8dgzg4659yh4hf5cqnf0gr"))
(file-name (string-append name "-" version ".tar.gz"))))
(inputs
`(("boost" ,boost)
("zlib" ,zlib)))
(arguments
`(#:configure-flags
(list (string-append "--with-boost="
(assoc-ref %build-inputs "boost")))))
(build-system gnu-build-system)
(home-page "https://github.com/JohnLangford/vowpal_wabbit")
(synopsis "Fast machine learning library for online learning")
(description "Vowpal Wabbit is a machine learning system with techniques
such as online, hashing, allreduce, reductions, learning2search, active, and
interactive learning.")
(license license:bsd-3)))

View file

@ -26,6 +26,7 @@
;;; Copyright © 2017 Rene Saavedra <rennes@openmailbox.org>
;;; Copyright © 2018 Pierre Langlois <pierre.langlois@gmx.com>
;;; Copyright © 2018 Alex Vong <alexvong1995@gmail.com>
;;; Copyright © 2018 Gábor Boskovits <boskovits@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -81,6 +82,7 @@
#:use-module (gnu packages m4)
#:use-module (gnu packages ncurses)
#:use-module (gnu packages openldap)
#:use-module (gnu packages onc-rpc)
#:use-module (gnu packages pcre)
#:use-module (gnu packages perl)
#:use-module (gnu packages python)
@ -489,7 +491,7 @@ and corrections. It is based on a Bayesian filter.")
(define-public offlineimap
(package
(name "offlineimap")
(version "7.2.0")
(version "7.2.1")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/OfflineIMAP/offlineimap/"
@ -497,7 +499,7 @@ and corrections. It is based on a Bayesian filter.")
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"1i7pzm1vrj98jcyn1ygsg1yp0gqlsssnc25451icvivysvdwdj5n"))))
"1022xf2w1xax4vx4kzhlfbhaf0b72wkpvrcscvs4q8qk2ja68h8x"))))
(build-system python-build-system)
(native-inputs
`(("asciidoc" ,asciidoc)))
@ -515,7 +517,7 @@ and corrections. It is based on a Bayesian filter.")
(substitute* "docs/Makefile"
;; Prevent xmllint and xsltproc from downloading a DTD file.
(("a2x -v") "a2x --no-xmllint --xsltproc-opts=--nonet -v"))
(zero? (system* "make" "-C" "docs" "man"))))
(invoke "make" "-C" "docs" "man")))
(add-after 'install 'install-documentation
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
@ -761,14 +763,14 @@ invoking @command{notifymuch} from the post-new hook.")
(define-public notmuch
(package
(name "notmuch")
(version "0.26.2")
(version "0.27")
(source (origin
(method url-fetch)
(uri (string-append "https://notmuchmail.org/releases/notmuch-"
version ".tar.gz"))
(sha256
(base32
"0fqf6wwvqlccq9qdnd0mky7fx0kbkczd28blf045s0vsvdjii70h"))))
"0xh8vq2sa7r07xb3n13drc6gdiqhcgl0pj0za5xj43qkiwpikls0"))))
(build-system gnu-build-system)
(arguments
`(#:modules ((guix build gnu-build-system)
@ -793,12 +795,10 @@ invoking @command{notifymuch} from the post-new hook.")
(elisp
(string-append out "/share/emacs/site-lisp/guix.d/"
,name "-" ,version)))
(zero?
(system*
"./configure"
(string-append "--prefix=" out)
(string-append "--emacslispdir=" elisp)
(string-append "--emacsetcdir=" elisp))))))
(invoke "./configure"
(string-append "--prefix=" out)
(string-append "--emacslispdir=" elisp)
(string-append "--emacsetcdir=" elisp)))))
(add-before 'check 'prepare-test-environment
(lambda _
(setenv "TEST_CC" "gcc")
@ -975,7 +975,7 @@ useful features.")
(add-after 'unpack 'autogen
(lambda _
(setenv "NOCONFIGURE" "true")
(zero? (system* "sh" "autogen.sh")))))
(invoke "sh" "autogen.sh"))))
#:configure-flags
'("--disable-static" "--disable-db")))
(home-page "http://www.etpan.org/libetpan.html")
@ -1136,6 +1136,7 @@ delivery.")
("bzip2" ,bzip2)
("xz" ,xz)
("perl" ,perl)
("libnsl" ,libnsl)
("libxt" ,libxt)
("libxaw" ,libxaw)))
(native-inputs
@ -1270,7 +1271,9 @@ It supports mbox/Maildir and its own dbox/mdbox formats.")
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"0rkk10b1bsjz979sc864vpgcdchy7yxwmyv4ik50lar1h6awdnrf"))))
"0rkk10b1bsjz979sc864vpgcdchy7yxwmyv4ik50lar1h6awdnrf"))
(patches
(search-patches "dovecot-trees-support-dovecot-2.3.patch"))))
(build-system gnu-build-system)
(native-inputs
`(("automake" ,automake)
@ -1289,7 +1292,7 @@ It supports mbox/Maildir and its own dbox/mdbox formats.")
(modify-phases %standard-phases
(add-after 'unpack 'autogen
(lambda _
(zero? (system* "sh" "autogen.sh")))))))
(invoke "sh" "autogen.sh"))))))
(home-page "https://0xacab.org/riseuplabs/trees")
(synopsis "NaCL-based Dovecot email storage encryption plugin")
(description
@ -1345,7 +1348,7 @@ using lidsodium sealed boxes.
(modify-phases %standard-phases
(add-after 'unpack 'autogen
(lambda _
(zero? (system* "sh" "autogen.sh")))))))
(invoke "sh" "autogen.sh"))))))
(home-page "https://github.com/LuckyFellow/dovecot-libsodium-plugin")
(synopsis "Libsodium password hashing schemes plugin for Dovecot")
(description
@ -1952,14 +1955,15 @@ define(`confLIBS', `-lresolv')
define(`confINSTALL', `~a/devtools/bin/install.sh')
define(`confDEPEND_TYPE', `CC-M')
define(`confINST_DEP', `')
" (getcwd))))))
" (getcwd))))
#t))
(replace 'build
(lambda _
(and (zero? (system* "sh" "Build"))
(with-directory-excursion "cf/cf"
(begin
(copy-file "generic-linux.mc" "sendmail.mc")
(zero? (system* "sh" "Build" "sendmail.cf")))))))
(invoke "sh" "Build")
(with-directory-excursion "cf/cf"
(copy-file "generic-linux.mc" "sendmail.mc")
(invoke "sh" "Build" "sendmail.cf"))
#t))
(add-before 'install 'pre-install
(lambda _
(let ((out (assoc-ref %outputs "out")))
@ -1968,7 +1972,8 @@ define(`confINST_DEP', `')
(mkdir-p (string-append out "/etc/mail"))
(setenv "DESTDIR" out)
(with-directory-excursion "cf/cf"
(zero? (system* "sh" "Build" "install-cf")))))))
(invoke "sh" "Build" "install-cf"))
#t))))
;; There is no make check. There are some post installation tests, but those
;; require root privileges
#:tests? #f))
@ -1995,7 +2000,9 @@ transfer protocols.")
name "-" version ".tar.gz"))
(sha256
(base32
"10bsfsnlg9d9i6l2izdnxp05s3ri8fvwzqxvx1jmarc852382619"))))
"10bsfsnlg9d9i6l2izdnxp05s3ri8fvwzqxvx1jmarc852382619"))
;; Fixed upstream: <github.com/OpenSMTPD/OpenSMTPD/pull/835>.
(patches (search-patches "opensmtpd-fix-crash.patch"))))
(build-system gnu-build-system)
(inputs
`(("bdb" ,bdb)
@ -2016,17 +2023,24 @@ transfer protocols.")
"--with-path-CAfile=/etc/ssl/certs/ca-certificates.crt")
#:phases
(modify-phases %standard-phases
;; Fix some incorrectly hard-coded external tool file names.
(add-after 'unpack 'patch-FHS-file-names
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "smtpd/smtpctl.c"
(("/bin/cat") (which "cat"))
(("/bin/sh") (which "sh")))
#t))
;; OpenSMTPD provides a single utility smtpctl to control the daemon and
;; the local submission subsystem. To accomodate systems that require
;; historical interfaces such as sendmail, newaliases or makemap, the
;; smtpctl utility can operate in compatibility mode if called with the
;; historical name.
(add-after 'install 'install-compabilitymode
(lambda _
(let* ((out (assoc-ref %outputs "out"))
(add-after 'install 'install-compability-links
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(sbin (string-append out "/sbin/")))
(for-each (lambda (cmd)
(symlink "smtpctl" (string-append sbin cmd)))
(for-each (lambda (command)
(symlink "smtpctl" (string-append sbin command)))
'("makemap" "sendmail" "send-mail"
"newaliases" "mailq")))
#t)))))
@ -2211,12 +2225,10 @@ installation on systems where resources are limited. Its features include:
(modify-phases %standard-phases
(replace 'check
(lambda _
(zero?
(system*
"django-admin"
"test"
"--settings=django_mailman3.tests.settings_test"
"django_mailman3")))))
(invoke "django-admin"
"test"
"--settings=django_mailman3.tests.settings_test"
"django_mailman3"))))
#:python ,python-2))
(inputs
`(("python2-django" ,python2-django)))

View file

@ -3,7 +3,7 @@
;;; Copyright © 2015 David Thompson <davet@gnu.org>
;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2017 Nils Gillmann <ng0@n0.is>
;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;;
;;; This file is part of GNU Guix.
;;;
@ -137,10 +137,9 @@ convert it to structurally valid XHTML (or HTML).")
(replace 'configure
(lambda* (#:key inputs outputs #:allow-other-keys)
(setenv "CC" "gcc")
(zero? (system*
"./configure.sh"
(invoke "./configure.sh"
(string-append "--prefix=" (assoc-ref outputs "out"))
"--shared")))))))
"--shared"))))))
(synopsis "Markdown processing library, written in C")
(description
"Discount is a markdown implementation, written in C. It provides a

View file

@ -294,14 +294,14 @@ semiconductors.")
(define-public gsl
(package
(name "gsl")
(version "2.4")
(version "2.5")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnu/gsl/gsl-"
version ".tar.gz"))
(sha256
(base32
"16yfs5n444s03np1naj6yp1fsysd42kdscxzkg0k2yvfjixx0ijd"))
"1395y9hlhqadn5g9j8q22224fds5sd92jxi9czfavjj24myasq04"))
(patches (search-patches "gsl-test-i686.patch"))))
(build-system gnu-build-system)
(arguments
@ -525,19 +525,6 @@ problems in numerical linear algebra.")
(license (license:non-copyleft "file://LICENSE"
"See LICENSE in the distribution."))))
(define-public lapack-3.5
(package
(inherit lapack)
(version "3.5.0")
(source
(origin
(method url-fetch)
(uri (string-append "http://www.netlib.org/lapack/lapack-"
version ".tgz"))
(sha256
(base32
"0lk3f97i9imqascnlf6wr5mjpyxqcdj73pgj97dj2mgvyg9z1n4s"))))))
(define-public scalapack
(package
(name "scalapack")
@ -3385,7 +3372,8 @@ in finite element programs.")
version "-src.zip"))
(sha256
(base32
"022w8hph7bli5zbpnk3z1qh1c2sl5hm8fw2ccim651ynn0hr7fyz"))))
"022w8hph7bli5zbpnk3z1qh1c2sl5hm8fw2ccim651ynn0hr7fyz"))
(patches (search-patches "flann-cmake-3.11.patch"))))
(build-system cmake-build-system)
(outputs '("out"
"octave")) ;46 MiB .mex file that pulls Octave

File diff suppressed because it is too large Load diff

View file

@ -73,7 +73,7 @@ extensive examples, including parsers for the Javascript and C99 languages.")
(let ((triplet "i686-unknown-linux-gnu"))
(package
(name "mes")
(version "0.14")
(version "0.16")
(source (origin
(method url-fetch)
(uri (string-append "https://gitlab.com/janneke/mes"
@ -81,7 +81,7 @@ extensive examples, including parsers for the Javascript and C99 languages.")
"/mes-" version ".tar.gz"))
(sha256
(base32
"1i23jk61iibjza2s3lka56ry4ma424g2fyk8pjd5bd1dyjd0yrzf"))))
"0c4vz1qw767af5h615055hh8zjwwmwf5mwkb64l0l921zaa9hg2n"))))
(build-system gnu-build-system)
(supported-systems '("i686-linux" "x86_64-linux"))
(propagated-inputs
@ -98,9 +98,7 @@ extensive examples, including parsers for the Javascript and C99 languages.")
'())
("perl" ,perl))) ;build-aux/gitlog-to-changelog
(arguments
`(#:make-flags (list
(string-append "PREFIX=" (assoc-ref %outputs "out")))
#:phases
`(#:phases
(modify-phases %standard-phases
(add-before 'install 'generate-changelog
(lambda _
@ -122,7 +120,7 @@ Guile-] Scheme interpreter prototype in C and a Nyacc-based C compiler in
(define-public mescc-tools
(package
(name "mescc-tools")
(version "0.4")
(version "0.5.1")
(source (origin
(method url-fetch)
(uri (string-append
@ -132,7 +130,7 @@ Guile-] Scheme interpreter prototype in C and a Nyacc-based C compiler in
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"1iwc8xqwzdaqckb4jkkisljrgn8ii4bl7dzk1l2kpv98hsyq9vi1"))))
"0rsxbjc3bg0jl3h7ai4hndxx2iyyk8bvwj9nd3xv2vgz3bmypnah"))))
(build-system gnu-build-system)
(supported-systems '("i686-linux" "x86_64-linux"))
(arguments

View file

@ -22,10 +22,12 @@
(define-module (gnu packages monitoring)
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix git-download)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix build-system perl)
#:use-module (guix build-system python)
#:use-module (guix build-system gnu)
#:use-module (guix build-system go)
#:use-module (gnu packages admin)
#:use-module (gnu packages base)
#:use-module (gnu packages check)
@ -295,3 +297,27 @@ WSGI and the node exporter textfile collector.")
(define-public python2-prometheus-client
(package-with-python2 python-prometheus-client))
(define-public go-github-com-prometheus-node-exporter
(let ((commit "55c32fcf02492fe4946f7ab563547cc5df7fc61e")
(revision "0"))
(package
(name "go-github-com-prometheus-node-exporter")
(version (git-version "0.0.0" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/prometheus/node_exporter.git")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"041b87a0sid23c29swqmi5hw6cxbxvkfj3415jg73cm2pi8wh5s6"))))
(build-system go-build-system)
(arguments
'(#:import-path "github.com/prometheus/node_exporter"))
(synopsis "Prometheus exporter for hardware and OS metrics")
(description "Prometheus exporter for metrics exposed by *NIX kernels,
written in Go with pluggable metric collectors.")
(home-page "https://github.com/prometheus/node_exporter")
(license license:asl2.0))))

View file

@ -276,7 +276,7 @@ information about tracks being played to a scrobbler, such as Libre.FM.")
'(#:phases
(modify-phases %standard-phases
(replace 'check
(lambda _ (zero? (system* "python" "mpd_test.py")))))))
(lambda _ (invoke "python" "mpd_test.py"))))))
(native-inputs `(("python-mock" ,python-mock)))
(home-page "https://github.com/Mic92/python-mpd2")
(synopsis "Python MPD client library")

View file

@ -16,6 +16,7 @@
;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018 nee <nee.git@hidamari.blue>
;;; Copyright © 2018 Stefan Reichör <stefan@xsteve.at>
;;; Copyright © 2018 Pierre Neidhardt <ambrevar@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -41,10 +42,12 @@
#:use-module (guix build-system gnu)
#:use-module (guix build-system ant)
#:use-module (guix build-system cmake)
#:use-module (guix build-system meson)
#:use-module (guix build-system python)
#:use-module (guix build-system scons)
#:use-module (guix build-system glib-or-gtk)
#:use-module (guix build-system waf)
#:use-module (guix build-system trivial)
#:use-module (gnu packages)
#:use-module (gnu packages algebra)
#:use-module (gnu packages apr)
@ -554,14 +557,14 @@ MusePack, Monkey's Audio, and WavPack files.")
(name "extempore")
(version "0.7.0")
(source (origin
(method url-fetch)
(uri (string-append
"https://github.com/digego/extempore/archive/"
version ".tar.gz"))
(method git-fetch)
(uri (git-reference
(url "https://github.com/digego/extempore.git")
(commit version)))
(sha256
(base32
"1wap1mvsicrhlazikf7l8zxg37fir8bmnh9rin28m1rix730vcch"))
(file-name (string-append name "-" version ".tar.gz"))))
"12fsp7zkfxb9kykwq46l88kcbbici9arczrrsl4qn87m6vm5349l"))
(file-name (string-append name "-" version "-checkout"))))
(build-system cmake-build-system)
(arguments
`(;; The default target also includes ahead-of-time compilation of the
@ -918,8 +921,8 @@ Guile.")
(define-public non-sequencer
;; The latest tagged release is three years old and uses a custom build
;; system, so we take the last commit.
(let ((commit "10c31e57291b6e42be53371567a722b62b32d220")
(revision "3"))
(let ((commit "5ae43bb27c42387052a73e5ffc5d33efb9d946a9")
(revision "4"))
(package
(name "non-sequencer")
(version (string-append "1.9.5-" revision "." (string-take commit 7)))
@ -930,7 +933,7 @@ Guile.")
(commit commit)))
(sha256
(base32
"080rha4ffp7qycyg1mqcf4vj0s7z8qfvz6bxm0w29xgg2kkmb3fx"))
"1cljkkyi9dxqpqhx8y6l2ja4zjmlya26m26kqxml8gx08vyvddhx"))
(file-name (string-append name "-" version "-checkout"))))
(build-system waf-build-system)
(arguments
@ -2641,7 +2644,7 @@ of tools for manipulating and accessing your music.")
(define-public milkytracker
(package
(name "milkytracker")
(version "1.01.00")
(version "1.02.00")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/milkytracker/"
@ -2650,7 +2653,7 @@ of tools for manipulating and accessing your music.")
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"1dvnddsnn9c83lz4dlm0cfjpc0m524amfkbalxbswdy0qc8cj1wv"))
"08v0l4ipvvwkwv4ywkc6c8a6xnpkyb02anj36w8q6gikxrs6xjvb"))
(modules '((guix build utils)))
;; Remove non-FSDG compliant sample songs.
(snippet
@ -2683,7 +2686,7 @@ for improved Amiga ProTracker 2/3 compatibility.")
(define-public schismtracker
(package
(name "schismtracker")
(version "20170910")
(version "20180513")
(source (origin
(method url-fetch)
(uri (string-append
@ -2692,7 +2695,7 @@ for improved Amiga ProTracker 2/3 compatibility.")
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"01gfcjngbpv87y9w5jln8k313hycpkb1d617hdy2cdw2hxqzlclz"))
"1yjfd02arb51n0vyv11qgpn6imh7hcqnc3953cbvgwb4cnrswk9f"))
(modules '((guix build utils)))
(snippet
;; Remove use of __DATE__ and __TIME__ for reproducibility.
@ -2706,7 +2709,7 @@ for improved Amiga ProTracker 2/3 compatibility.")
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'autoconf
(lambda _ (zero? (system* "autoreconf" "-vfi"))))
(lambda _ (invoke "autoreconf" "-vfi")))
(add-before 'configure 'link-libm
(lambda _ (setenv "LIBS" "-lm") #t)))))
(native-inputs
@ -3196,7 +3199,7 @@ plugins, a switch trigger, a toggle switch, and a peakmeter.")
(origin
(method git-fetch)
(uri (git-reference
(url "http://git.drobilla.net/ingen.git")
(url "https://git.drobilla.net/ingen.git")
(commit commit)))
(file-name (string-append name "-" version "-checkout"))
(sha256
@ -3257,7 +3260,7 @@ plugins, a switch trigger, a toggle switch, and a peakmeter.")
(native-inputs
`(("pkg-config" ,pkg-config)
("python-pygments" ,python-pygments)))
(home-page "http://drobilla.net/software/ingen")
(home-page "https://drobilla.net/software/ingen")
(synopsis "Modular audio processing system")
(description "Ingen is a modular audio processing system for JACK and
LV2 based systems. Ingen is built around LV2 technology and a strict
@ -3536,7 +3539,10 @@ audio samples and various soft sythesizers. It can receive input from a MIDI ke
`(#:make-flags
`(,(string-append "PREFIX=" (assoc-ref %outputs "out"))
"USE_SYSTEM_FREETYPE=ON"
"DOWNLOAD_SOUNDFONT=OFF")
"DOWNLOAD_SOUNDFONT=OFF"
;; The following is not supported since Qt 5.11. Can be
;; removed in Musescore 2.2.2+.
"BUILD_WEBKIT=OFF")
;; There are tests, but no simple target to run. The command
;; used to run them is:
;;
@ -3548,6 +3554,14 @@ audio samples and various soft sythesizers. It can receive input from a MIDI ke
#:tests? #f
#:phases
(modify-phases %standard-phases
;; Fix Qt 5.11 upgrade. Should be fixed in 2.2.2+, see:
;; <https://github.com/musescore/MuseScore/commit/d10e70415c8e52e2ba9d45de564467e42f66c102>
(add-after 'unpack 'patch-sources
(lambda _
(substitute* "all.h"
(("#include <QRadioButton>") "#include <QRadioButton>
#include <QButtonGroup>"))
#t))
(delete 'configure))))
(inputs
`(("alsa-lib" ,alsa-lib)
@ -3565,7 +3579,6 @@ audio samples and various soft sythesizers. It can receive input from a MIDI ke
("qtdeclarative" ,qtdeclarative)
("qtscript" ,qtscript)
("qtsvg" ,qtsvg)
("qtwebkit" ,qtwebkit)
("qtxmlpatterns" ,qtxmlpatterns)))
(native-inputs
`(("cmake" ,cmake)
@ -3771,32 +3784,43 @@ notation and includes basic support for digital audio.")
(license license:gpl2)))
(define-public patchmatrix
(package
(name "patchmatrix")
(version "0.12.0")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/OpenMusicKontrollers/patchmatrix.git")
(commit version)))
(file-name (string-append "patchmatrix-" version "-checkout"))
(sha256
(base32
"19ivp7h5vq6r1qhmycjxzvrgg7fc4a3v5vb3n4c7afs4z3pj53zi"))))
(build-system cmake-build-system)
(arguments '(#:tests? #f)) ; no test target
(inputs
`(("jack" ,jack-1)
("lv2" ,lv2)
("mesa" ,mesa)))
(native-inputs
`(("pkg-config" ,pkg-config)))
(home-page "https://github.com/OpenMusicKontrollers/patchmatrix")
(synopsis "Simple JACK patch bay")
(description "PatchMatrix is a patch bay for the JACK audio connection
;; There have been no releases for more than a year.
(let ((commit "a0b0b1e791f4574d5abd059cfe1819c71e8b18d5")
(revision "1"))
(package
(name "patchmatrix")
(version (git-version "0.12.0" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/OpenMusicKontrollers/patchmatrix.git")
(commit commit)))
(file-name (string-append "patchmatrix-" version "-checkout"))
(sha256
(base32
"0pph4ra7aci3rbpqvvr564pi16vxrk448bmvp8985cd9lbjlrp3m"))))
(build-system meson-build-system)
(arguments
'(#:tests? #f ; no test target
#:phases
(modify-phases %standard-phases
(add-before 'reset-gzip-timestamps 'make-gzip-archive-writable
(lambda* (#:key outputs #:allow-other-keys)
(map make-file-writable
(find-files (assoc-ref outputs "out") ".*\\.gz$"))
#t)))))
(inputs
`(("jack" ,jack-1)
("lv2" ,lv2)
("mesa" ,mesa)))
(native-inputs
`(("pkg-config" ,pkg-config)))
(home-page "https://github.com/OpenMusicKontrollers/patchmatrix")
(synopsis "Simple JACK patch bay")
(description "PatchMatrix is a patch bay for the JACK audio connection
kit. It provides a patch bay in flow matrix style for audio, MIDI, CV, and
OSC connections.")
(license license:artistic2.0)))
(license license:artistic2.0))))
(define-public sorcer
(package
@ -3994,3 +4018,70 @@ ISRCs and the MCN (=UPC/EAN) from disc.")
mb_client, is a development library geared towards developers who wish to add
MusicBrainz lookup capabilities to their applications.")
(license license:lgpl2.1+)))
(define-public clyrics
(package
(name "clyrics")
(version "0.10")
(source
(origin
(method url-fetch)
(uri (string-append
"https://github.com/trizen/clyrics/archive/"
version ".tar.gz"))
(sha256
(base32
"1l0cg26afnjv8cgk0jbiavbyvq55q1djyigzmi526rpcjjwq9jwn"))
(file-name (string-append name "-" version ".tar.gz"))))
(build-system trivial-build-system)
(native-inputs `(("tar" ,tar)
("gzip" ,gzip)))
(inputs
`(("bash" ,bash) ;for the wrapped program
("perl" ,perl)
("perl-www-mechanize" ,perl-www-mechanize)
("perl-lwp-protocol-https" ,perl-lwp-protocol-https)
;; Required or else LWP will fail with "GET https://www.google.com/ ==>
;; 500 Can't verify SSL peers without knowing which Certificate
;; Authorities to trust".
("perl-mozilla-ca" ,perl-mozilla-ca)))
(arguments
`(#:modules ((guix build utils))
#:builder (begin
(use-modules (guix build utils)
(ice-9 match)
(srfi srfi-26))
(let* ((source (assoc-ref %build-inputs "source"))
(tar (assoc-ref %build-inputs "tar"))
(gzip (assoc-ref %build-inputs "gzip"))
(output (assoc-ref %outputs "out")))
(setenv "PATH"
(string-append
(assoc-ref %build-inputs "gzip") "/bin" ":"
(assoc-ref %build-inputs "bash") "/bin" ":"
(assoc-ref %build-inputs "perl") "/bin" ":"))
(invoke (string-append tar "/bin/tar") "xvf"
source)
(chdir ,(string-append "clyrics-" version))
(patch-shebang "clyrics")
(substitute* "clyrics"
(("/usr/share") output))
(install-file "clyrics" (string-append output "/bin"))
(wrap-program (string-append output "/bin/clyrics")
`("PERL5LIB" ":" =
,(delete
""
(map (match-lambda
(((? (cut string-prefix? "perl-" <>) name) . dir)
(string-append dir "/lib/perl5/site_perl"))
(_ ""))
%build-inputs))))
(copy-recursively "plugins" (string-append output "/clyrics"))
#t))))
(home-page "https://github.com/trizen/clyrics")
(synopsis "Extensible lyrics fetcher")
(description
"Clyrics is an extensible command-line tool to fetch the lyrics of songs.
It can be used in daemon mode along with the Music-on-Console (MOC) and cmus
console music players.")
(license license:gpl3+)))

View file

@ -15,7 +15,7 @@
;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
;;; Copyright © 2017 Leo Famulari <leo@famulari.name>
;;; Copyright © 2017, 2018 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2017 Rutger Helling <rhelling@mykolab.com>
;;; Copyright © 2017, 2018 Rutger Helling <rhelling@mykolab.com>
;;; Copyright © 2017 Gábor Boskovits <boskovits@gmail.com>
;;; Copyright © 2017 Thomas Danckaert <post@thomasdanckaert.be>
;;; Copyright © 2018 Adam Van Ymeren <adam@vany.ca>
@ -56,6 +56,7 @@
#:use-module (gnu packages autotools)
#:use-module (gnu packages base)
#:use-module (gnu packages bison)
#:use-module (gnu packages boost)
#:use-module (gnu packages check)
#:use-module (gnu packages code)
#:use-module (gnu packages compression)
@ -354,14 +355,14 @@ containing both Producer and Consumer support.")
(define-public libndp
(package
(name "libndp")
(version "1.6")
(version "1.7")
(source (origin
(method url-fetch)
(uri (string-append "http://libndp.org/files/"
name "-" version ".tar.gz"))
(sha256
(base32
"03mczwrxqbp54msafxzzyhaazkvjdwm2kipjkrb5xg8kw22glz8c"))))
"1dlinhl39va00v55qygjc9ap77yqf7xvn4rwmvdr49xhzzxhlj1c"))))
(build-system gnu-build-system)
(home-page "http://libndp.org/")
(synopsis "Library for Neighbor Discovery Protocol")
@ -1223,7 +1224,7 @@ gone wild and are suddenly taking up your bandwidth.")
(define-public nzbget
(package
(name "nzbget")
(version "19.1")
(version "20.0")
(source
(origin
(method url-fetch)
@ -1232,7 +1233,7 @@ gone wild and are suddenly taking up your bandwidth.")
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"0y713g7gd4n5chbhr8lv7k50rxkmzysrg13sscxam3s386mmlb1r"))
"0q93aqqyzccn5r9sny38499rmg846qdh9pi2v5kvf9m23v54yk60"))
(modules '((guix build utils)))
(snippet
;; Reported upstream as <https://github.com/nzbget/nzbget/pull/414>.
@ -1349,16 +1350,17 @@ networks.")
(define-public speedtest-cli
(package
(name "speedtest-cli")
(version "2.0.0")
(version "2.0.2")
(source
(origin
(method url-fetch)
(uri (string-append
"https://github.com/sivel/speedtest-cli/archive/v" version ".tar.gz"))
(file-name (string-append name "-" version ".tar.gz"))
(method git-fetch)
(uri (git-reference
(url "https://github.com/sivel/speedtest-cli")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"16kcpba7nmszz2h0fq7qvv6src20syck2wlknaacg69kk88aybbk"))))
"0vv2z37g2kgm2dzkfa4bhri92hs0d1acxi8z66gznsl5148q7sdi"))))
(build-system python-build-system)
(home-page "https://github.com/sivel/speedtest-cli")
(synopsis "Internet bandwidth tester")
@ -1774,7 +1776,7 @@ file for more details.")
`(("zlib" ,zlib)
("crypto++" ,crypto++)
("libpng" ,libpng)
("wxwidgets-gtk2", wxwidgets-gtk2)))
("wxwidgets-gtk2" ,wxwidgets-gtk2)))
(home-page "http://amule.org/")
(synopsis "Peer-to-peer client for the eD2K and Kademlia networks")
(description
@ -1857,3 +1859,79 @@ eight bytes) tools
@end itemize")
;; Either BSD-3 or GPL-2 can be used.
(license (list license:bsd-3 license:gpl2))))
(define-public asio
(package
(name "asio")
(version "1.12.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/chriskohlhoff/asio.git")
(commit (string-join (cons name (string-split version #\.))
"-"))))
(file-name (git-file-name name version))
(sha256
(base32
"04dg8kpgriay7q62mqcq2gl439k5y4mf761zghsd6wfl0farh3mx"))))
(build-system gnu-build-system)
(native-inputs
`(("autoconf" ,autoconf)
("automake" ,automake)
("libtool" ,libtool)))
(inputs
`(("boost" ,boost)
("openssl" ,openssl)))
(arguments
`(#:configure-flags
(list
(string-append "--with-boost=" (assoc-ref %build-inputs "boost"))
(string-append "--with-openssl=" (assoc-ref %build-inputs "openssl")))
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'chdir-to-asio
(lambda _
(chdir "asio")))
(add-before 'configure 'bootstrap
(lambda _
(invoke "sh" "autogen.sh"))))))
(home-page "https://think-async.com/Asio")
(synopsis "C++ library for ASynchronous network I/O")
(description "Asio is a cross-platform C++ library for network and
low-level I/O programming that provides developers with a consistent
asynchronous model using a modern C++ approach.")
(license license:boost1.0)))
(define-public shadowsocks
;; There are some security fixes after the last release.
(let* ((commit "e332ec93e9c90f1cbee676b022bf2c5d5b7b1239")
(revision "0")
(version (git-version "2.8.2" revision commit)))
(package
(name "shadowsocks")
(version version)
(home-page "https://github.com/shadowsocks/shadowsocks")
(source (origin
(method git-fetch)
(uri (git-reference
(url home-page)
(commit commit)))
(sha256
(base32
"1idd9b4f2pnhcpk1bh030hqg5zq25gkwxd53xi3c0cj242w7sp2j"))
(file-name (git-file-name name version))))
(build-system python-build-system)
(synopsis "Fast tunnel proxy that helps you bypass firewalls")
(description
"This package is a fast tunnel proxy that helps you bypass firewalls.
Features:
@itemize
@item TCP & UDP support
@item User management API
@item TCP Fast Open
@item Workers and graceful restart
@item Destination IP blacklist
@end itemize")
(license license:asl2.0))))

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